Dynamic Management Of 802.11 Based Network Buffer CHAPTER 1 INTRODUCTION Wireless networks face a number of fundamental issues that do not arise in wired networks. This project demonstrates that the use of fixed size buffers in 802.11 networks inevitably leads to either undesirable channel under-utilization or unnecessary high delays. In communication networks, buffers are used to accommodate short-term packet bursts so as to mitigate packet drops and to maintain high link efficiency. Packets are queued if too many packets arrive in a sufficiently short interval of time during which a network device lacks the capacity to process all of them immediately. This project presents two dynamic buffer sizing algorithms that achieve high throughput while maintaining low delay across a wide range of network conditions. This project focuses on dynamically varying the size of network buffer to achieve throughput while maintaining low delay across the network. Sizing wired buffers is to set buffer sizes to be the product of the bandwidth and the average delay of the flows utilizing this link, namely the Bandwidth-Delay Product (BDP). However, the sizing of buffers in wireless networks (especially those based on IEEE 802.11/802.11e) appears to have received very little attention within the networking Dept. of CS&E, BTLITM, Bangalore. 1
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Dynamic Management Of 802.11 Based Network Buffer
CHAPTER 1
INTRODUCTION
Wireless networks face a number of fundamental issues that do not arise in wired
networks. This project demonstrates that the use of fixed size buffers in 802.11 networks
inevitably leads to either undesirable channel under-utilization or unnecessary high
delays. In communication networks, buffers are used to accommodate short-term packet
bursts so as to mitigate packet drops and to maintain high link efficiency. Packets are
queued if too many packets arrive in a sufficiently short interval of time during which a
network device lacks the capacity to process all of them immediately. This project
presents two dynamic buffer sizing algorithms that achieve high throughput while
maintaining low delay across a wide range of network conditions. This project focuses on
dynamically varying the size of network buffer to achieve throughput while maintaining
low delay across the network.
Sizing wired buffers is to set buffer sizes to be the product of the bandwidth and
the average delay of the flows utilizing this link, namely the Bandwidth-Delay Product
(BDP). However, the sizing of buffers in wireless networks (especially those based on
IEEE 802.11/802.11e) appears to have received very little attention within the networking
community. In this project we consider this problem and propose solutions for it.
Consequently, the buffering requirements at each station would also differ,
depending on the number of other active stations in the WLAN. In addition to variations
in the mean service time, the distribution of packet service times is also strongly
dependent on the WLAN offered load. This directly affects the burstiness of
transmissions and hence buffering requirements. Second, wireless stations dynamically
adjust the physical transmission rate/modulation used in order to regulate noncongestive
channel losses. This rate adaptation, whereby the transmit rate may change by a factor of
50 or more (e.g. from 1 to 54 Mb/s in 802.11a/g), may induce large and rapid variations
in required buffer sizes. Third, the ongoing 802.11n standards process proposes to
improve throughput efficiency by the use of large frames formed by aggregation of
multiple packets. This acts to couple throughput efficiency and buffer sizing in a new way
Dept. of CS&E, BTLITM, Bangalore. 1
Dynamic Management Of 802.11 Based Network Buffer
since the latter directly affects the availability of sufficient packets for aggregation into
large frames.
1.1 PURPOSE
The key consideration from the observations is that there exists no fixed buffer
size capable of ensuring both high throughput efficiency and reasonable delay across the
range of physical rates and offered loads experienced by modern WLANs.[2] Any fixed
choice of buffer size necessarily carries the cost of significantly reduced throughput
efficiency and/or excessive queuing delays. This leads naturally therefore to the
consideration of adaptive approaches to buffer sizing, which dynamically adjust the
buffer size in response to changing network conditions to ensure both high utilization of
the wireless link while avoiding unnecessarily long queuing delays.
It follows from these observations that, among other things, there does not exist a
fixed buffer size that can be used for sizing buffers in WLANs. This leads naturally to
consideration of dynamic buffer-sizing strategies that adapt to changing conditions.
1.2 SCOPE
Wireless communication in 802.11 networks is time-varying in nature, i.e., the
mean service time and the distribution of service time at a wireless station vary in time.
The variations are primarily due to (i) changes in the number of active wireless stations
and their load (i.e. offered load on the WLAN) and (ii) changes in the physical transmit
rate used (i.e. in response to changing radio channel conditions)
The following are the scope of the project.
1) Based on traffic load conditions, we propose two new algorithms and emulate
them on the LAN network;
2) Check the buffer occupancy and the throughput of the proposed solution.
Dept. of CS&E, BTLITM, Bangalore. 2
Dynamic Management Of 802.11 Based Network Buffer
1.3 ORGANISATION OF THE REPORT
Chapter 2: gives overall description of literature survey, description and flaws in
the existing system.
Chapter 3: discusses system analysis, the modules description and the system
requirements.
Chapter 4: discusses system architectures, flow chart and overall design of the
system.
Chapter 5: explains the class diagram, data flow diagram and sequence diagram
implemented.
Chapter 6: gives the details of implementation of the model designed.
Chapter 7: gives unit testing of algorithms, integration testing and the system
validation testing.
Chapter 8: gives the details of results and snapshots.
Chapter 9: finally concludes with the future enhancement by giving a brief
summary of the entire work.
CHAPTER 2
Dept. of CS&E, BTLITM, Bangalore. 3
Dynamic Management Of 802.11 Based Network Buffer
LITERATURE SURVEY
Literature survey is mainly carried out in order to analyze the background of the
current project which helps to find out flaws in the existing system & guides on which
unsolved problems we can workout. So, the following topics not only illustrate the
background of the project but also uncover the problems and flaws which motivated to
propose solutions and work on this project.
2.1 DYNAMICS OF TCP'S CONGESTION CONTROL
ALGORITHM
All Internet routers contain buffers to hold packets during times of congestion.
Today, the size of the buffers is determined by the dynamics of TCP's congestion control
algorithm. In particular, the goal is to make sure that when a link is congested, it is busy
100% of the time; which is equivalent to making sure its buffer never goes empty.
A widely used rule-of-thumb states that each link needs a buffer of size B = RTT
* C, where RTT is the average round-trip time of a flow passing across the link, and C is
the data rate of the link. For example, a 10 GB/s router line card needs approximately
250ms * 10 GB/s = 2.5Gbits of buffers; and the amount of buffering grows linearly with
the line-rate. Such large buffers are challenging for router manufacturers, who must use
large, slow, off-chip DRAMs. And queuing delays can be long, have high variance, and
may destabilize the congestion control algorithms.
The classical rule of thumb for sizing wired buffers is to set buffer sizes to be the
product of the bandwidth and the average delay of the flows utilizing this link, namely the
Bandwidth-Delay Product (BDP)[4]. Surprisingly, however the sizing of buffers in
wireless networks (especially those based on 802.11/802.11e) appears to have received
very little attention within the networking community. Exceptions include the recent work
in On Buffer Sizing for Voice in 802.11 WLANs relating to buffer sizing for voice traffic
in 802.11e WLANs, work in Understanding TCP fairness over Wireless LAN which
considers the impact of buffer sizing on TCP upload/download fairness, and work in
Dept. of CS&E, BTLITM, Bangalore. 4
Dynamic Management Of 802.11 Based Network Buffer
Impact of 802.11e EDCA on mixed TCP-based applications which is related to 802.11e
parameter settings.
2.2 DISTRIBUTED COORDINATED FUNCTION OF IEEE
802.11
IEEE 802.11a/b/g WLANs all share a common MAC algorithm called the
Distributed Coordinated Function (DCF)[3] which is a CSMA/CA based algorithm. On
detecting the wireless medium to be idle for a period DIFS, each wireless station
initializes a backoff counter to a random number selected uniformly from the interval [0,
CW-1] where CW is the contention window. Time is slotted and the backoff Counter is
decremented each slot that the medium is idle. An important feature is that the countdown
halts when the medium is detected busy and only resumes after the medium is idle again
for a period DIFS. On the counter reaching zero, a station transmits a packet. If a collision
occurs (two or more stations transmit simultaneously), CW is doubled and the process
repeated. On a successful transmission, CW is reset to the value CWmin and a new
countdown starts.
The basic 802.11 MAC layer uses the distributed coordination function (DCF) to
share the medium between multiple stations. DCF relies on CSMA/CA and optional
802.11 RTS/CTS to share the medium between stations. This has several limitations:
If many stations attempt to communicate at the same time, many collisions will
occur which will lower the available bandwidth and possibly lead to congestive
collapse.
There are no Quality of Service (QoS) guarantees. In particular, there is no notion
of high or low priority traffic.
Once a station "wins" access to the medium, it may keep the medium for as long
Input Packet sent to listening port and algorithm configured is
ALT
Expected Output handlePacket on ALT with Packet must be called
Actual Output handlePacket on ALT with Packet is called
Result PASS
7.3.3 VALIDATION TESTING
Here the testing validates the software function in a manner that is reasonably
expected by the customer.
Dept. of CS&E, BTLITM, Bangalore. 46
Dynamic Management Of 802.11 Based Network Buffer
Table 7.12: Validation testing of buffer usage and packet lost for BDP configuration
Test case ID 12
Description Testing BDP
Input From Data sender send 100 packets and in router BDP is
configured
Expected Output The buffer usage at every time and the packet lost must be
displayed
Actual Output The buffer usage at every time and the packet lost is
displayed
Result PASS
Table 7.13: Validation testing of buffer usage and packet lost for eBDP
configuration
Test case ID 13
Description Testing eBDP
Input From Data sender send 100 packets and in router eBDP is
configured
Expected Output The buffer usage at every time and the packet lost must be
displayed
Actual Output The buffer usage at every time and the packet lost is
displayed
Result PASS
Dept. of CS&E, BTLITM, Bangalore. 47
Dynamic Management Of 802.11 Based Network Buffer
Table 7.14: Validation testing of buffer usage and packet lost for ALT configuration
Test case ID 14
Description Testing ALT
Input From Data sender send 100 packets and in router ALT is
configured
Expected Output The buffer usage at every time and the packet lost must be
displayed
Actual Output The buffer usage at every time and the packet lost is
displayed
Result PASS
Dept. of CS&E, BTLITM, Bangalore. 48
Dynamic Management Of 802.11 Based Network Buffer
CHAPTER 8
RESULTS AND SNAPSHOTS
8.1 BDP ALGORITHM
8.1.1 ROUTER GUI
Figure 8.1: Router starting GUI with BDP selected.
This router GUI snapshot consists of four main tabs
Router Configuration
View Statistics
Router Log
Buffer Occupancy
Dept. of CS&E, BTLITM, Bangalore. 49
Dynamic Management Of 802.11 Based Network Buffer
In the above router configuration tab initial router configuring values should be
given to start the router. The router listening port, bandwidth, average delay values must
be entered to initially configure the router. The radio buttons in the configuration tab are
used to select one of the three algorithms to start the router. This project consists of one
static algorithm BDP for demonstrating the buffer problem in the router for wired local
area network buffers, to set buffer sizes to be the product of the bandwidth and the
average delay of the flows utilizing the link, namely the Bandwidth-Delay Product
(BDP). The project also consists of two dynamic algorithms eBDP and ALT for solving
the buffer problem in the wireless network.
8.1.2 ROUTER LOG FOR BDP ALGORITHM
Figure 8.2: Router log for BDP algorithm.
When the Bandwidth-Delay Product (BDP) algorithm is selected, the above router log tab
initially displays the size of the network buffer. Since the values are 1MB bandwidth and
average delay is 2s the Bandwidth-Delay Product algorithms queue size is 20. When the
Dept. of CS&E, BTLITM, Bangalore. 50
Dynamic Management Of 802.11 Based Network Buffer
router is started with the configuration values, the router starts and it starts waiting for
packets from the sender as shown in the above snapshot.
8.1.3 DATA SENDERS GUI
Figure 8.3: Data senders GUI showing configuration.
The data sender GUI consists of two main tabs
Sender configuration tab.
Sender’s log.
The sender configuration tab consists of three text box input entries i.e. Listen
port, router port and the router IP address. It also consists of three GUI buttons one is for
configuring the data sender with IP address, receiving and sending ports. And other two
button for start data transfer and stop data transfer.
Dept. of CS&E, BTLITM, Bangalore. 51
Dynamic Management Of 802.11 Based Network Buffer
8.1.4 ROUTER GUI SHOWING STATISTICS
Figure 8.4: Router GUI showing statistics.
The View Statistics tab of the router GUI is shown in the above snapshot. This tab
consists of view stat button to display the statistics of
number of packets received
number of packets dropped
In this project, the data sender module continuously sends the data packet chunks
to the router. The router starts processing each incoming packets at the router port in the
mean while if the processing unit is busy, it stores the incoming packet in the buffer. In
the above snapshot since Bandwidth-Delay Product (BDP) algorithm is selected so the
buffer size is set to 20 and the buffer size is fixed. So the packet dropped increases and
the RTTs reported by the program were hugely increased as shown in the above snapshot.
Dept. of CS&E, BTLITM, Bangalore. 52
Dynamic Management Of 802.11 Based Network Buffer
8.1.5 ROUTER GUI SHOWING DROPPED PACKETS
Figure 8.5: Router GUI showing dropped packets.
In the above View Statistics tab of the router GUI the packet drop increased
gradually. As the number of packets received increased, number of packets dropped also
increased. Since the above snap shot is running with BDP algorithm, the buffer size is not
varied so the packet drop is high. So the packet dropped increases and the RTTs reported
by the program were hugely increased as shown in the above snapshot. Also the total
throughput of overall wireless transmission decreased.
Dept. of CS&E, BTLITM, Bangalore. 53
Dynamic Management Of 802.11 Based Network Buffer
8.1.6 ROUTER’S VIEW STAT SHOWING DROPPED PACKETS
Figure 8.6: Router’s view stat showing dropped packets.
When more than one data sender module continuously sends the data packet to the
router. The router starts processing each incoming packets at the router port in the mean
while if the processing unit is busy, it stores the incoming packet in the buffer. In the
above snapshot the router receiving data chunk from three simultaneous sending data
sender systems so the packet loss gradually increasing.
Dept. of CS&E, BTLITM, Bangalore. 54
Dynamic Management Of 802.11 Based Network Buffer
8.1.7 BUFFER OCCUPANCY FOR BDP ALGORITHM
Figure 8.7: Router’s buffer occupancy for BDP algorithm.
The Buffer occupancy tab of the router GUI is shown in the above snapshot. This
tab consists of view occupancy button to display buffer occupancy in graphical
representation. The buffer occupancy graph considers the value of buffer size versus time
to plot the graph. When the Bandwidth-Delay Product (BDP) algorithm is selected the
size of buffer is constant always. When more than one data senders starts sending the
data, the buffer occupancy will be always high i.e. 20 as shown in the above graphical
representation. When number of data senders increases, the buffer will be always full and
the packet dropped increases and the RTTs reported by the program were hugely
increases.
Dept. of CS&E, BTLITM, Bangalore. 55
Dynamic Management Of 802.11 Based Network Buffer
8.2 eBDP ALGORITHM
8.2.1 ROUTER STARTING GUI WITH eBDP SELECTED
Figure 8.8: Router starting GUI with eBDP selected.
In the above router configuration tab initial router configuring values should be
given to start the router. The radio buttons in the configuration tab are used to select one
of the three algorithms. To test the buffer occupancy eBDP is selected and the router is
started with the configuration values. The eBDP algorithm selects a buffer size of
approximate potential exists to lower the buffer size without loss of throughput. However,
using large buffers can lead to high queuing delays, and to ensure low delays the buffer
should be as small as possible. We would therefore like to operate with the smallest
buffer size that ensures sufficiently high link utilization.
Dept. of CS&E, BTLITM, Bangalore. 56
Dynamic Management Of 802.11 Based Network Buffer
8.2.2 QUEUE SIZE FOR eBDP
Figure 8.9: Router GUI showing queue size for eBDP.
In eBDP algorithm, for each outgoing packet, the service time Tserv is calculated
according to the Tserv, buffer size is calculated dynamically as shown in the above snap
shot. In the above queue size log initially queue size is set to 30, if the service time for
each processed packet is increased the queue size starts increasing. Dynamically
calculating buffer size Based on the Tserv overcomes packet drops and increases the
overall performance of wireless LAN networks.
Dept. of CS&E, BTLITM, Bangalore. 57
Dynamic Management Of 802.11 Based Network Buffer
8.2.3 DROPPED PACKETS FOR eBDP
Figure 8.10: Router GUI showing dropped packets for eBDP.
Initially the queue size is set to 30, if the service time for each processed packet is
increased the queue size starts increasing. Dynamically calculating buffer size Based on
the Tserv overcomes packet drops and increases the overall performance of wireless LAN
networks. In the above snapshot the number of packets dropped become very less
compared to the packet drop of BDP algorithm as shown in the above snap shot.
Dept. of CS&E, BTLITM, Bangalore. 58
Dynamic Management Of 802.11 Based Network Buffer
8.2.4 DROPPED PACKETS FOR eBDP
Figure 8.11: Router GUI showing dropped packets for eBDP with minimum packet
loss.
In the BDP algorithm when 16000 packets are received it dropped nearly 300
packets which drop off overall performance of wireless LAN networks. But when
compared to BDP, the eBDP algorithm when 16000 packets are received it dropped
nearly 20 packets hence dynamically calculating buffer size Based on the Tserv
overcomes packet drops and increases the overall performance of wireless LAN
networks.
Dept. of CS&E, BTLITM, Bangalore. 59
Dynamic Management Of 802.11 Based Network Buffer
8.2.5 BUFFER OCCUPANCY FOR eBDP
Figure 8.12: Router’s buffer occupancy for eBDP algorithm.
The Buffer occupancy tab of the router GUI is shown in the above snapshot. This
tab consists of view occupancy button to display buffer occupancy in graphical
representation. The buffer occupancy graph considers the value of buffer size versus time
to plot the graph. When eBDP algorithm is selected the size of buffer varies according to
the load. When more than one data senders starts sending the data, the buffer occupancy
will continuously change according to the no of transmitters. When number of data
senders increases, the buffer size dynamically varied.
Dept. of CS&E, BTLITM, Bangalore. 60
Dynamic Management Of 802.11 Based Network Buffer
8.3 ALT (ADAPTIVE LIMIT TUNING) ALGORITHM
8.3.1 ROUTER STARTING GUI WITH ALT SELECTED
Figure 8.13: Router starting GUI with ALT selected
In the above snapshot the ALT algorithm is selected, using of large buffers can
lead to high queuing delays, and to ensure low delays the buffer should be as small as
possible. Therefore to operate with the smallest buffer size that ensures sufficiently high
link utilization. By observing the buffer occupancy over an interval of time. If the buffer
rarely empties, decrease the buffer size. This algorithm uses some minimum and
maximum range value for buffer size. Based on the network load the algorithm
dynamically sets the size between min and max value. The router GUI is shown above
and started with ALT algorithm.
Dept. of CS&E, BTLITM, Bangalore. 61
Dynamic Management Of 802.11 Based Network Buffer
8.3.2 QUEUE SIZE FOR ALT ALGORITHM
Figure 8.14: Router GUI showing queue size for ALT algorithm.
Using large buffers can lead to high queuing delays, and to ensure low delays the
buffer should be as small as possible. Therefore to operate with the smallest buffer size
that ensures sufficiently high link utilization the ALT is used. In above cases of ALT
algorithm buffer maximum size is taken. If the data is not received at the router module
the buffer size decreases which potentially improves the throughput. ALT algorithm
chooses some minimum and maximum values. If there are more data senders sending data
chunk continuously, the buffer size increases if not it keep on decreasing. It decreases and
increases based on data packets.
Dept. of CS&E, BTLITM, Bangalore. 62
Dynamic Management Of 802.11 Based Network Buffer
8.3.3 PACKETS DROPPED NIL FOR ALT
Figure 8.15: Router GUI showing dropped packets nil for ALT.
The View Statistics tab of the router GUI initiated with ALT algorithm is shown
in the above snapshot. The view stat button display the number of packets received and
number of packets dropped for ALT algorithm. The router starts processing each
incoming packets at the router port in the mean while if the processing unit is busy, it
varies the size of the buffer and stores the incoming packet in the buffer..The ALT
algorithm moderates packet drops and maintains high link efficiency across the wireless
network. In the above snapshot using ALT algorithm packets are not dropped and high
throughput is achieved.
Dept. of CS&E, BTLITM, Bangalore. 63
Dynamic Management Of 802.11 Based Network Buffer
8.3.4 BUFFER OCCUPANCY FOR ALT ALGORITHM
Figure 8.16: Router’s buffer occupancy for ALT algorithm.
In ALT algorithm initially the buffer size is set to some value. In the above
snapshot the value is 50. The maximum size of the buffer was initially 50; when data
sender is idle the buffer size starts decreasing to reduce high queuing delay. Up to
sometime very less data is received at the router so the buffer size decreases, after that
when too many data senders starts sending data packets the size of the buffer increases.
Here the number of packets dropped is very less. The buffer occupancy shown above is
observed when more data senders sending the packets.
Dept. of CS&E, BTLITM, Bangalore. 64
Dynamic Management Of 802.11 Based Network Buffer
8.4 THROUGHPUT
Figure 8.17: Throughput of all the three algorithms.
In the Buffer occupancy tab of the router GUI throughput button is to display
buffer occupancy in graphical representation. The throughput graph considers the value of
throughput versus pause time to plot the graph. When router is stopped, it considers the
overall parameters for the entire three algorithms and displays the throughput. When
more than one data sender starts sending the data, the buffer occupancy will continuously
change and the throughput of ALT algorithm is superior compared to other two
algorithms.
Dept. of CS&E, BTLITM, Bangalore. 65
Dynamic Management Of 802.11 Based Network Buffer
CHAPTER 9
CONCLUSION AND FUTURE WORK
9.1 CONCLUSION
The key conclusion from these observations is that there exists no fixed buffer
size capable of ensuring both high throughput efficiency and reasonable delay across the
range of physical rates and offered loads experienced by modern WLANs. Any fixed
choice of buffer size necessarily carries the cost of significantly reduced throughput
efficiency and/or excessive queuing delays.
This leads naturally therefore to the consideration of adaptive approaches to buffer
sizing, which dynamically adjust the buffer size in response to changing network
conditions to ensure both high utilization of the wireless link while avoiding
unnecessarily long queuing delays.
9.2 FUTURE ENHANCEMENTS
Currently we treat all the packets belong to same QOS. But in real time some
packets are of much importance indicated by the QOS marker in the IP header. So we
have to fine tune our algorithms for the packets coming with different QOS requirements.
Dept. of CS&E, BTLITM, Bangalore. 66
Dynamic Management Of 802.11 Based Network Buffer
REFERENCES
[1] A. Lakshmikantha, R. Srikant, and C. Beck, “Impact of File Arrivals and Departures on Buffer Sizing in Core Routers,” in Proc. of Infocom, Apr. 2008..
[2] A. Dhamdher and C. Dovrolis, “Open Issues in Router Buffer Sizing,” in Computer Communication Review, Jan. 2006.
[3] M. Thottan, and M. C. Weigle, “Impact of 802.11e EDCA on mixed TCP-based applications,” in Proc. of IEEE WICON 2006 [4] Online, madwifi-project.org.
[4] R. Prasad, C. Dovrolis, and M. Thottan, “Router Buffer Sizing Revisited: The role of the input/output capacity ratio,” IEEE/ACM Transactions on Networking, to appear.
[5] T. Li and D. Leith, “Adaptive Buffer Sizing for TCP Flows in 802.11e WLANs,” Chinacom 2008..
[6] S. Pilosof, et. al., “Understanding TCP fairness over Wireless LAN,” in Proc. of IEEE INFOCOM 2003..
[7] M. Enachescu, Y. Ganjali, A. Goel, N. McKeown, and T. Roughgarden, “Routers with Very Small Buffers,” in Proc. of INFOCOM, Dec. 2006.
[8] D. Y. Eun and X. Wang, “Achieving 100% Throughput in TCP/AQM Under Aggressive Packet Marking With Small Buffer,” IEEE/ACM Transactions on Networking, vol. 16, no. 4, pp. 945 - 956, Aug. 2008.
[9] C. Kellett, R. Shorten, and D. Leith, “Sizing Internet Router Buffers, Active Queue Management, and the Lur’e Problem,” in Proc. of IEEE CDC, 2006.
Dept. of CS&E, BTLITM, Bangalore. 67
Dynamic Management Of 802.11 Based Network Buffer
APPENDIX-A
GLOSSARY
BDP Bandwidth-Delay Product
DCF Distributed Coordinated Function
EDCA Enhanced Distributed Channel Access
MAC Medium Access Control
TXOP Transmission Opportunity
AIFS Arbitration Inter-frame Space
AC Access Category
AP Access Point
AIMD Additive-increase and multiplicative-decrease