Title: 802'11: QualityofService
1802.11 Quality-of-Service
- Reference Quality-of-service in ad hoc carrier
sense multiple access wireless networks
Sobrinho, J.L. Krishnakumar, A.S. IEEE Journal
on Selected Areas in Communications, Volume 17
Issue 8, Aug. 1999 Page(s) 1353 1368
(802.11QoS-1.pdf)
2Introduction
- Packet collisions are intrinsic to CSMA
- Hidden nodes
- Two transmitting nodes outside the sensing range
of each other may interfere at a common receiver - Many flavors of CSMA
- Nodes that participate in a collision schedule
the retransmission of their packets to a random
time in the future, in the hope of avoiding
another collision - This strategy does not provide QoS guarantees for
real-time traffic support
3Related Works
- MACA Protocol ? CSMA/CA
- Multiple Access Collision Avoidance
- RTS minipacket CTS minipacket
- In the environments without hidden nodes, MACA
may improve the throughput of the network over
that attained with CSMA because collisions
involve only short RTS minipackets rather than
normal data packets as in CSMA - MACA also alleviates the hidden nodes problem
because the CTS sent by the destination also
serves to inhibit the nodes in the neighborhood
4Related Works (cont)
- FAMA protocol
- Floor Acquisition Multiple Access
- Includes several variants of MACA, one of which
is immune to hidden nodes - Have not been designed for QoS
- Control minipackets are subject to collisions
- Retransmissions are randomly scheduled
5Related Works (cont)
- GAMA protocol
- Group Allocation Multiple Access
- Attempt to provide QoS guarantees to real-time
traffic in a distributed wireless environment - In GAMA, there is a contention period where nodes
use an RTS-CTS dialog to explicitly reserve
bandwidth in the ensuing contention-free period - A packet transmitted in the contention-free
period may maintain the reservation for the next
cycle - The scheme is developed for wireless networks
where all nodes can sense and receive the
communications from their peers
6Related Works (cont)
- MACA/PR
- MACA/packet reservation protocol
- Similar to GAMA, but an acknowledge follows every
packet sent in contention-free periods to inform
the nodes in the neighborhood of the receiver
whether or not another packet is expected in the
next contention-free cycle - Summary for these QoS protocols
- These schemes deviate from pure carrier sensing
methods in that every node has to construct
channel state information based on reservation
requests carried in packets sent into the channel
7Black-Burst (BB) Contention
- Features
- 1. Distributed and is based only on carrier
sensing. It gives priority access to real-time
traffic and ensure collision-free transmission of
real-time packets - 2. When operated in an Ad Hoc wireless LAN, it
further guarantees bounded real-time delays - 3. Can be overlaid on current CSMA
implementation, with only minor modifications
required to the real-time transceivers - The random retransmission scheme is turned off,
and in substitution, the possibility of sending
BBs is provided
8Carrier Sense Wireless Network
- Characteristics
- 1. The range at which a node can sense carrier
from a given transmitter is different and
typically larger than the range at which
receivers are willing to accept a packet from
that same transmitter - 2. Carrier from a transmitter can usually be
sensed at a range beyond the range in which the
transmitter may cause interference
9Carrier Sense Wireless Network (cont)
- Three different types of links
- 1. Communication link
- Node i has a communication link with node j, if
and only if in the course of time, it has packets
to send to node j - 2. Interfering link
- Node i has a interfering link with node j, if and
only if any packet transmission with destination
j that overlaps in time at j with a transmission
from i is lost. - The lost packets are said to have collided with
the transmission from i. - 3. Sensing link
- Node i has a sensing link with node j, if and
only if a transmission by node i prevents node j
from starting a new transmission, i.e. node i
inhibits node j.
10Carrier Sense Wireless Network (cont)
- GC (N, LC) communication graph
- GI (N, LI) interference graph
- GS (N, LS) sensing graph
- If node i has a communication link with node j,
then i and j also have an interfering link
between them - An interfering link is also a sensing link, but
not conversely. LI Ì LS GI is a spanning
sub-graph of GS - Any node has an interfering and sensing link with
itself - Since whenever a node transmits, it cannot
simultaneously receive or start another
transmission
11Carrier Sense Wireless Network (cont)
- Path delay
- Associated with each sensing link to account for
the propagation delay separating nodes, the
turn-around time of the wireless transceivers,
and the sensing delay - Denoted by tij
- tij gt 0, and tik tkj gt tij , for ik, kj, ij ÃŽ
LS - Let t max (tij)
12Carrier Sense Wireless Network (cont)
- NI(i)
- The nodes that are neighbors of i (i included) in
the interfering graph - NS(i)
- The nodes that are neighbors of i (i included) in
the sensing graph - Hidden nodes from i ? j NI(j) Ç (N NS(i))
- In a wireless network without hidden nodes
- We have NI (j) Ì NS(i) for every i j Î LC
13Carrier Sense Wireless Network (cont)
14Carrier Sense Wireless Network (cont)
- Wireless LAN
- GI GS, all nodes can sense each others
transmissions - 802.11 three interframe spacing
- tshort, tmed, tlong
- tmed gt 2t tshort, tlong gt 2t tmed
- A node learns of the success or failure of its
transmission through a positive ACK scheme - The recipient of a correctly received packet
sends back an acknowledgement minipacket within
an interval of length tshort
15BB Contention Basic idea
- Basic idea
- 1. Real-time nodes contend for access to the
channel after a medium interframe spacing of
length tmed, rather than after the long
interframe spacing of length tlong, used by data
node. - Thus, real-time nodes as a group have priority
over data nodes - 2. Instead of sending their packets when the
channel becomes idle for tmed, real-time nodes
first sort their access rights by jamming the
channel with pulses of energy, denominated BBs - The length of a BB transmitted by a real-time
node is an increasing function of the contention
delay experienced by the node, measured from the
instant when an attempt to access the channel has
been scheduled until the transmission of its BB
16BB Contention Basic idea (cont)
- Length of black slot tbslot
- Not smaller than the max. round-trip path delay
2t - Idea we would like the BBs sent by distinct
real-time nodes when the channel becomes idle for
tmed to differ by at least one black slot ? the
node with longest BBs wins the access right to
the channel - 3. Following each BB transmission, a node senses
the channel for an observation interval of length
tobs to determine without ambiguity whether its
BB was the longest of the contending BBs
17BB Contention Basic idea (cont)
- 4. The winning node will transmit its real-time
packet successfully and schedule the next
transmission attempt - 5. The nodes that lost the BB contention wait for
the channel to once again become idle or tmed, at
which time they send new longer BBs - In summary
- Once the first real-time packet of a session is
successfully transmitted, the mechanism ensures
that succeeding real-time packets are also
transmitted without collision - Real-time node appear to access a dynamic TDM
transmission structure without explicit slot
assignment or slot synchronization
18BB Contention
- Assumption
- Every real-time packet transmission lasts at
least a certain time tpkt , tpkt gt 2t - At the beginning of a session, a real-time node
uses conventional CSMA/CA rules, possibly with a
more expedited retx algorithm, to convey its
first pkt until it is successful - Real-time nodes only schedule their next
transmission attempts to a time tsch in the
future when they start a packet transmission - tsch is the same for all nodes
19BB Contention (cont)
- The length b of the BB sent by the node
- Is a direct function of the contention delay it
incurred, dcont -
- Where tbslot is the length of a black slot
- tunit is the unit of time used to convert
contention delays into an integral of black
slots
20BB Contention (cont)
- Correct operation of the scheme requires that
tunit lt tpkt - After exhausting its BB transmission, the node
waits for an observation interval tobs, the
length of which has to satisfy tobs lt tbslot and
tobs lt tmed - To see if any other node transmitted a longer BB,
implying that it would have been waiting longer
for access to the channel - If the channel is perceived idle after tobs, then
the node (successfully) transmits its packet - If the channel is busy during the observation
interval, the node waits again for the channel to
be idle for tmed and repeats the algorithm
21BB Contention (cont)
- Explanation
- The start of packet transmission from different
nodes are shifted in time by at least tpkt - Since it is only when a node initiates the
transmission of a packet that it schedules its
next transmission attempt to a time tsch in the
future, the contention delays of different nodes
will likewise differ by at least tpkt - Taking tunit lt tpkt, the BBs of different nodes
differ by at least one black slot, and thus every
BB contention period produces a unique winner - The winner is the node that has been waiting the
longest for access to the channel
22BB Contention (cont)
- The observation interval tobs cannot last longer
than the black slot time, tobs lt tbslot, so that
a node always recognizes when its BB is shorter
than that of another contending node - tobs also has to be shorter than tmed (tobs lt
tmed) to prevent real-time nodes from sending
BBs by the time that a real-time packet
transmission is expected. - Overall, the BB contention scheme gives priority
to real-time traffic, enforces a round-robin
discipline among real-time nodes, and results in
bounded access delays to real-time packets
23BB Contention (cont)
24BB Contention (cont)
- Extension different BW requirements
- 1. Packets of different sizes
- 2. Different scheduling intervals (two phases)
- As long as the set of values allowed for the
scheduling interval tsch is finite and small - Real-time nodes first sort their access rights
based on contention delays as before (1st phase) - However, it is now possible for two nodes with
different scheduling intervals to compute BBs
with the same number of black slots - Hence, real-time node contends again with a new
BB (2nd phase), the length of which univocally
identifies the scheduling interval being used by
the node
25Correctness of BB Contention
- Proposition 1
- Any real-time packet that contends with BBs does
not collide with either data packets or real-time
packets that start a session - Proposition 2
- Real-time packets that contend with BBs do not
collide with one another or with BBs - Proposition 3
- A real-time node that sees the channel idle for
tmed after a medium busy condition will access
the channel to transmit a BB and will prevent
neighboring data nodes from transmitting a packet - Proposition 4
- A real-time node that sees the channel idle for
tmed after a medium busy condition will access
the channel to transmit a BB and will exclude
from contention any neighboring real-time nodes
that have a smaller number of black slots in
their BBs
26BB Contention (cont)
27Chaining
- Idea
- The number of real-time nodes contending for
access to the channel can be reduced by grouping
real-time packet transmissions into chains - A chain is a sequence of real-time packets where
each packet invites the next for transmission - To supporting chains
- Each real-time packet is endowed with two new
fields - A send node ID (SID) contains the identity of
the node transmitting the packet - A next node ID (NID) contains the identity of
the node invited to transmit next
28Chaining (cont)
- Setting of SID and NID
- The SID field is set to NIL (empty field) in the
first and last packets of a session - A real-time node relies on the round-robin
discipline enforced by BB contention to choose a
temporary ID to be used during a session - After sending the 1st packet of a session, a
real-time node observes the channel during the
ensuing round to determine the identity of all
other active sessions - Therefore, by the time it transmits its 2nd
packet, it is able to choose a unique identifier
for itself which it keeps for the duration of the
session - The NID field is NIL at every packet that is at
the tail of a chain
29Chaining (cont)
- Invitation
- A node has to respond within an interval of
length tshort to an invitation from another
real-time node in order to ensure that the
real-time packets comprising a chain are
transmitted in sequence without being disturbed
by either BBs or data packet transmission - The dynamics of chain creation and segregation
are achieved through a distributed algorithm
running at each node - Two basic operations on chains
- splitting concatenation
30Chaining (cont)
- Splitting
- Occurs when a node ends a session and leaves the
chain to which it belongs, possibly dividing it
into two new chains - It may also occur when a packet is corrupted,
e.g. due to link outage - Since real-time nodes are always prepared to
contend with BBs at every scheduled access
attempt, even when they are part of a chain, an
abrupt break in a chain does not deprive them of
their access rights to the channel - It only reduces the efficiency with which the
channel is used.
31Chaining (cont)
- Concatenation
- Occurs when two distinct chains are merged into a
longer one for the purposes of efficiency - It is up to the tail node of a chain to decide
whether or not to pull toward itself the next
chain the comes onto the channel - The tail node monitors the channel during a round
- It first identifies the candidate node to be
invited in the next round by looking for the
first packet with an SID field not NIL - At the end of the round, when the tail node
finally transmits another real-time packet, the
tail node invites the candidate node immediately
after sending its real-time packet
32BB Contention (cont)
33Simulation Parameters
34Simulation Results
35Simulation Results (cont)
36Simulation Results (cont)
37Simulation Results (cont)
Total
CSMA/CA
38Simulation Results (cont)
BB Contend
39Simulation Results (cont)
- Table IV
- Max. packet delay and percentage of real-time
packets that exceed that delay under CSMA/CA, for
a total load of 0.544
40Simulation Results (cont)
41Simulation Results (cont)
- Discussion from Figures 9 10 11
- 1. For BB contention, we confirm that the maximum
real-time delay is typically small, even at
network loads as high as 0.672 (Fig. 10) - 2. Under CSMA/CA, the average data packet delay
increases as we trade data load for real-time
load (Fig. 11) - With BBs, the average data packet delay does not
increase as much as with CSMA/CA (Fig. 11) - As we trade data for real-time load, a larger
volume of traffic gets priority over data, but
the new traffic is efficiently served through BB
contention
42Simulation Results (cont)
Chaining provides a moderate improvement in data
delay performance (but not significant)