Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
60 views283 pages

Thesis 2016 Chen

Sistemas
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
60 views283 pages

Thesis 2016 Chen

Sistemas
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 283

Discrete-time Queueing Model for Responsive

Network Traffic and Bottleneck Queues

by

Zhenyu Chen

A Doctoral Thesis

Submitted in partial fulfilment


of the requirements for the award of

Doctor of Philosophy
of
Loughborough University

1st December 2015

Copyright 2015 Zhenyu Chen


Abstract

The Internet has been more and more intensively used in recent years. Al-
though network infrastructure has been regularly upgraded, and the ability
to manage heavy traffic greatly increased, especially on the core networks,
congestion never ceases to appear, as the amount of traffic that flow on the
Internet seems to be increasing at an even faster rate. Thus, congestion con-
trol mechanisms play a vital role in the functioning of the Internet. Active
Queue Management (AQM) is a popular type of congestion control mech-
anism that is implemented on gateways (most notably routers), which can
predict and avoid the congestion before it happens. When properly con-
figured, AQMs can effectively reduce the congestion, and alleviate some of
the problems such as global synchronisation and unfairness to bursty traffic.
However, there are still many problems regarding AQMs. Most of the
AQM schemes are quite sensitive to their parameters setting, and these para-
meters may be heavily dependent on the network traffic profile, which the
administrator may not have intensive knowledge of, and is likely to change
over time. When poorly configured, many AQMs perform no better than
the basic drop-tail queue. There is currently no effective method to com-
pare the performance of these AQM algorithms, caused by the parameter
configuration problem.
In this research, the aim is to propose a new analytical model, which
mainly uses discrete-time queueing theory. A novel transient modification to
the conventional equilibrium-based method is proposed, and it is utilised to
further develop a dynamic interactive model of responsive traffic and bottle-
neck queues. Using step-by-step analysis, it represents the bursty traffic and

2
oscillating queue length behaviour in practical network more accurately. It
also provides an effective way of predicting the behaviour of a TCP-AQM
system, allowing easier parameter optimisation for AQM schemes. Numer-
ical solution using MATLAB and software simulation using NS-2 are used to
extensively validate the proposed models, theories and conclusions.

Keyword: Queueing Theory, Discrete-time Queue, Transient Behaviour,


Responsive Traffic Source, Active Queue Management, Tandem Queueing
Networks
Acknowledgements

I want to thank Dr Lin Guan for being a very patient and helpful supervisor
for this research in the past few years, and Dr Olaf Maennel for offering my
some help on some TCP related challenges, as well as kindly be my first and
second year reviewer. Dr Paul Bell, who was my third year reviewer, offered
me some insightful help, regarding my ability of presenting my research to
others. I would also like to thank Dr Vasilis Michopoulos to offering me his
valuable PhD experience, which greatly help me to adapt to this new style
of research and study in my first year. Dr Peter Bull, who is my acting
supervisor while Dr Lin Guan was on leave, offered great help during my
third year of research, especially on the subjects of research methodology,
thesis chapter construction, as well as language improvement in general.
I would like to extend my gratitude to the supporting staff in the Com-
puter Science Department for their help in facilitating my research. I would
like to thank Mr Gurbinder Samra for his assistance in computer equipments
and software management, Mr Jeff Pitchers for his help in maintaining on
the virtual Linux server, which I used to run various experiments, Mr Kip
Sahnsi and Mr Richard Mee for help with computer equipments, especially
for trying to restore data on a hard drive of a crashed computer. I would like
to thank Ms Christine Bagley and Mrs Judith Poulton for their help in their
respective administrative jobs. I would like to thank Ms Jo McOuat for her
help with my conference trips.
Finally, I would like to thank my family members for their unwavering
support, as well as keeping me motivated during this unforgettable journey.

4
Publications

Zhenyu Chen, Lin Guan, Peter Bull. The Time-dependent Behaviour of the
Discrete-time M/M/1/J Queue in Communication Network Systems, In Pro-
ceeding of 29th Annual UK Performance Engineering Workshop (UKPEW
2013), Loughborough, UK, July 4, 2013

Zhenyu Chen, Lin Guan, Peter Bull. Dynamic Arrival Process for TCP Using
a Novel Time-dependent Statistical Calculation Approach, In Proceeding of
2014 IEEE International Conference on Future Internet of Things and Cloud
(FiCloud), Barcelona, Spain, August 27-29, 2014

Submitted:

Zhenyu Chen, Lin Guan, Xingang Wang. Interactive Behaviour Between Dy-
namic Arrival Process of Complex Traffic Source and the Bottleneck Queue,
ACM Transactions on Modelling and Performance Evaluation of Computing
Systems (submitted)

Zhenyu Chen, Lin Guan, Xingang Wang, Jinting Wang. Interactive Beha-
viour Between Dynamic Arrival Process of a Complex Traffic Source and
Tandem Queueing Networks, Performance Evaluation (submitted)

5
Contents

1 Introduction 16
1.1 Aims and objectives . . . . . . . . . . . . . . . . . . . . . . . 18
1.2 Original contributions . . . . . . . . . . . . . . . . . . . . . . 20
1.3 Outline of the thesis . . . . . . . . . . . . . . . . . . . . . . . 21

2 An Overview of AQM Research 24


2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.2 Network delay overview . . . . . . . . . . . . . . . . . . . . . . 25
2.3 Passive queue management . . . . . . . . . . . . . . . . . . . . 28
2.4 Active queue management . . . . . . . . . . . . . . . . . . . . 30
2.4.1 Queue-based . . . . . . . . . . . . . . . . . . . . . . . . 31
2.4.2 Rate-based . . . . . . . . . . . . . . . . . . . . . . . . 38
2.4.3 Load-based . . . . . . . . . . . . . . . . . . . . . . . . 41
2.4.4 Combined indicator . . . . . . . . . . . . . . . . . . . . 43
2.4.5 Control theory approach . . . . . . . . . . . . . . . . . 48
2.5 Application and implementation of AQM . . . . . . . . . . . . 50
2.6 Summary and discussion . . . . . . . . . . . . . . . . . . . . . 52

3 Conventional Method and Queueing Model for Network Per-


formance Modelling 56

6
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.2 Classification and characteristics . . . . . . . . . . . . . . . . . 58
3.2.1 Continuous-time and Discrete-time queueing model . . 61
3.2.2 Markov process and Markov chain . . . . . . . . . . . . 62
3.3 Performance measures and Little’s result . . . . . . . . . . . . 65
3.4 Geo/Geo/1 queue . . . . . . . . . . . . . . . . . . . . . . . . . 66
3.5 Time slot definition . . . . . . . . . . . . . . . . . . . . . . . . 71
3.6 Geo/Geo/1/J queue with classic RED drop . . . . . . . . . . . 73
3.7 MATLAB numerical solutions and analysis . . . . . . . . . . . 77
3.8 Queueing networks . . . . . . . . . . . . . . . . . . . . . . . . 82
3.9 Summary and discussion . . . . . . . . . . . . . . . . . . . . . 85

4 Transient Modification for the Conventional Discrete-time


Queueing Method 88
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
4.2 Limitations of the conventional method . . . . . . . . . . . . . 89
4.3 Detailed demonstration of the proposed modification . . . . . 92
4.4 Validation with numerical solution . . . . . . . . . . . . . . . 97
4.5 Case study: transient behaviour of Geo/Geo/1/J queue . . . . 100
4.6 Summary and discussion . . . . . . . . . . . . . . . . . . . . . 101

5 Dynamic Interactive Behaviour Between the Responsive Traffic


Source and the Bottleneck Queue 103
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
5.2 Dynamic model for responsive traffic source . . . . . . . . . . 107
5.2.1 Time slot synchronisation . . . . . . . . . . . . . . . . 109
5.2.2 Statistical analysis of congestion window . . . . . . . . 111
5.3 MATLAB numerical solution . . . . . . . . . . . . . . . . . . . 124
5.4 NS-2 simulation comparison . . . . . . . . . . . . . . . . . . . 133
5.5 Evaluation with different parameters . . . . . . . . . . . . . . 139
5.5.1 Buffer size . . . . . . . . . . . . . . . . . . . . . . . . . 140
5.5.2 Arrival rate . . . . . . . . . . . . . . . . . . . . . . . . 142
5.5.3 Departure rate . . . . . . . . . . . . . . . . . . . . . . 144
5.6 Summary and discussion . . . . . . . . . . . . . . . . . . . . . 146

6 Multi-source Extension for the Proposed Model 148


6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
6.2 Mathematical derivation for multi-source variant . . . . . . . . 149
6.3 MATLAB numerical solution . . . . . . . . . . . . . . . . . . . 160
6.4 NS-2 Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . 166
6.5 Complex traffic model with multiple responsive and unrespons-
ive sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
6.5.1 Extension with large number of sources . . . . . . . . . 171
6.5.2 Evaluation for the complex traffic source . . . . . . . . 178
6.5.3 Comparison with various parameters . . . . . . . . . . 185
6.6 Summary and discussion . . . . . . . . . . . . . . . . . . . . . 190

7 Active Drop Extension for the Proposed Model 191


7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
7.2 Mathematical derivation for active drop model . . . . . . . . . 193
7.3 MATLAB numerical solution . . . . . . . . . . . . . . . . . . . 197
7.4 NS-2 simulation . . . . . . . . . . . . . . . . . . . . . . . . . . 203
7.5 Statistical analysis for dropping action feedback . . . . . . . . 208
7.5.1 Single source active drop feedback analysis . . . . . . . 209
7.5.2 Complex source active drop feedback analysis . . . . . 218
7.6 Active drop optimisation . . . . . . . . . . . . . . . . . . . . . 221
7.7 Summary and discussion . . . . . . . . . . . . . . . . . . . . . 226

8 Multiple-queue Extension for the Proposed Model 227


8.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
8.2 Conventional method for tandem queueing networks . . . . . . 229
8.2.1 Exact solution . . . . . . . . . . . . . . . . . . . . . . . 230
8.2.2 Decomposition . . . . . . . . . . . . . . . . . . . . . . 231
8.3 Mathematical derivation for tandem queueing networks . . . . 234
8.3.1 Time slot synchronisation for multiple queues . . . . . 236
8.3.2 Interaction between dynamic multi-source arrival pro-
cess and tandem queueing networks . . . . . . . . . . . 238
8.4 MATLAB numerical solution . . . . . . . . . . . . . . . . . . . 243
8.5 NS-2 simulation . . . . . . . . . . . . . . . . . . . . . . . . . . 249
8.6 Evaluation of larger scale scenarios with varying parameters . 254
8.6.1 Varying arrival rate . . . . . . . . . . . . . . . . . . . . 256
8.6.2 Varying service rate . . . . . . . . . . . . . . . . . . . . 261
8.7 Summary and discussion . . . . . . . . . . . . . . . . . . . . . 264

9 Conclusions and Future Work 266


9.1 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
9.2 Future work . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269

References 271
List of Figures

2.1 Drop Rate Comparison between RED and Gentle RED . . . . 38

3.1 State Transition Diagram for a Geo/Geo/1 Queue . . . . . . . 68


3.2 Centre Observation . . . . . . . . . . . . . . . . . . . . . . . . 72
3.3 Edge Observation . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.4 State Transition Diagram for a Geo/Geo/1/J RED Queue . . 74
3.5 Queue Length distribution in scenario 1 . . . . . . . . . . . . . 78
3.6 Observed arrival rate in scenario 1 . . . . . . . . . . . . . . . . 78
3.7 Distribution with α = 0.18, β = 0.2 . . . . . . . . . . . . . . . 81

4.1 The Queue Approaching Equilibrium . . . . . . . . . . . . . . 99


4.2 A queue with same arrival and service rate . . . . . . . . . . . 100
4.3 Queueing delays with different arrival rate . . . . . . . . . . . 101

5.1 Various delays in a connection . . . . . . . . . . . . . . . . . . 110


5.2 Events leading to timeout detection . . . . . . . . . . . . . . . 116
5.3 Mean Queue Length MATLAB . . . . . . . . . . . . . . . . . 129
5.4 Average Delay MATLAB . . . . . . . . . . . . . . . . . . . . . 130
5.5 Normalised Throughput MATLAB . . . . . . . . . . . . . . . 131
5.6 Average Drop Rate MATLAB . . . . . . . . . . . . . . . . . . 132
5.7 NS-2 Topology . . . . . . . . . . . . . . . . . . . . . . . . . . 134

10
5.8 Instantaneous Queue Length NS-2 . . . . . . . . . . . . . . . . 135
5.9 Instantaneous Delay NS-2 . . . . . . . . . . . . . . . . . . . . 136
5.10 Instantaneous Throughput NS-2 . . . . . . . . . . . . . . . . . 137
5.11 Drop Rate NS-2 . . . . . . . . . . . . . . . . . . . . . . . . . . 138

6.1 Mean Queue Length MATLAB . . . . . . . . . . . . . . . . . 164


6.2 Average Delay MATLAB . . . . . . . . . . . . . . . . . . . . . 165
6.3 Normalised Throughput MATLAB . . . . . . . . . . . . . . . 166
6.4 Average Drop Rate MATLAB . . . . . . . . . . . . . . . . . . 167
6.5 NS-2 Topology . . . . . . . . . . . . . . . . . . . . . . . . . . 168
6.6 Instantaneous Queue Length NS-2 . . . . . . . . . . . . . . . . 169
6.7 Instantaneous Delay NS-2 . . . . . . . . . . . . . . . . . . . . 170
6.8 Instantaneous Throughput NS-2 . . . . . . . . . . . . . . . . . 171
6.9 Drop Rate NS-2 . . . . . . . . . . . . . . . . . . . . . . . . . . 172
6.10 State Transition Diagram for a M an /M/1 Queue . . . . . . . . 173
6.11 NS-2 Topology for Active Drop Simulation . . . . . . . . . . . 178
6.12 Mean Queue Length MATLAB . . . . . . . . . . . . . . . . . 180
6.13 Average Delay MATLAB . . . . . . . . . . . . . . . . . . . . . 180
6.14 Normalised Throughput MATLAB . . . . . . . . . . . . . . . 181
6.15 Average Drop Rate MATLAB . . . . . . . . . . . . . . . . . . 181
6.16 Instantaneous Queue Length NS-2 . . . . . . . . . . . . . . . . 182
6.17 Instantaneous Delay NS-2 . . . . . . . . . . . . . . . . . . . . 182
6.18 Instantaneous Throughput NS-2 . . . . . . . . . . . . . . . . . 183
6.19 Drop Rate NS-2 . . . . . . . . . . . . . . . . . . . . . . . . . . 183

7.1 Mean Queue Length MATLAB . . . . . . . . . . . . . . . . . 200


7.2 Average Delay MATLAB . . . . . . . . . . . . . . . . . . . . . 201
7.3 Normalised Throughput MATLAB . . . . . . . . . . . . . . . 202
7.4 Average Drop Rate MATLAB . . . . . . . . . . . . . . . . . . 203
7.5 NS-2 Topology for Active Drop Simulation . . . . . . . . . . . 204
7.6 Instantaneous Queue Length NS-2 . . . . . . . . . . . . . . . . 205
7.7 Instantaneous Delay NS-2 . . . . . . . . . . . . . . . . . . . . 206
7.8 Instantaneous Throughput NS-2 . . . . . . . . . . . . . . . . . 207
7.9 Drop Rate NS-2 . . . . . . . . . . . . . . . . . . . . . . . . . . 208
7.10 Mean Queue Length . . . . . . . . . . . . . . . . . . . . . . . 224
7.11 Average Drop Rate . . . . . . . . . . . . . . . . . . . . . . . . 224
7.12 Normalised Throughput . . . . . . . . . . . . . . . . . . . . . 225
7.13 Average Drop Rate . . . . . . . . . . . . . . . . . . . . . . . . 225

8.1 A typical tandem queueing networks . . . . . . . . . . . . . . 229


8.2 Tandem queueing networks decomposition . . . . . . . . . . . 232
8.3 Mean Queue Length MATLAB . . . . . . . . . . . . . . . . . 247
8.4 Average Delay MATLAB . . . . . . . . . . . . . . . . . . . . . 248
8.5 Normalised Throughput MATLAB . . . . . . . . . . . . . . . 249
8.6 Average Drop Rate MATLAB . . . . . . . . . . . . . . . . . . 250
8.7 NS-2 Topology for Tandem Simulation . . . . . . . . . . . . . 251
8.8 Instantaneous Queue Length NS-2 . . . . . . . . . . . . . . . . 252
8.9 Instantaneous Delay NS-2 . . . . . . . . . . . . . . . . . . . . 253
8.10 Instantaneous Throughput NS-2 . . . . . . . . . . . . . . . . . 254
8.11 Drop Rate NS-2 . . . . . . . . . . . . . . . . . . . . . . . . . . 255
List of Tables

4.1 Data for State Probability Distribution with Different Methods 98

5.1 Data for Various Buffer Size . . . . . . . . . . . . . . . . . . . 140


5.2 Data for Various Arrival Rate . . . . . . . . . . . . . . . . . . 143
5.3 Data for Various Departure Rate . . . . . . . . . . . . . . . . 145

6.1 Data for Complex Source . . . . . . . . . . . . . . . . . . . . . 179


6.2 Data for Various Buffer Size . . . . . . . . . . . . . . . . . . . 186
6.3 Data for Various Arrival Rate . . . . . . . . . . . . . . . . . . 188
6.4 Data for Various Departure Rate . . . . . . . . . . . . . . . . 189

7.1 Finding Targeted Arrival Rate . . . . . . . . . . . . . . . . . . 222


7.2 Data for Optimisation Comparison . . . . . . . . . . . . . . . 223

8.1 Data for 4Mbps Arrival and 1 to 1.4Mbps Departure . . . . . 257


8.2 Data for 2Mbps Arrival and 1 to 1.4Mbps Departure . . . . . 259
8.3 Data for 8Mbps Arrival and 1 to 1.4Mbps Departure . . . . . 260
8.4 Data for 4Mbps Arrival and 2 to 2.4Mbps Departure . . . . . 262
8.5 Data for 4Mbps Arrival and 0.5 to 0.9Mbps Departure . . . . 263

13
Glossary of Acronyms

ACK Acknowledgement
AIMD Additive Increase Multiplicative Decrease
AQM Active Queue Management
AVQ Adaptive Virtual Queue
bps bits per second
CBR Constant Bit Rate
CWND Congestion Window
DSL Digital Subscriber Line
DT Drop Tail
E2E End-to-End
EAS Early Arrival System
EWMA Exponential Weighted Moving Average
FCFS First Come First Serve
ECN Explicit Congestion Notification
FIFO First In First Out
GREEN Generalised Random Early Evasion Network
IEEE Institute of Electrical and Electronic Engineering
IETF Internet Engineering Task Force
IP Internet Protocol
ISP Internet Service Provider
kbps kilo bits per second

14
15

LAN Local Area Network


LAS Late Arrival System
MAC Medium Access Control
MATLAB MATrix LABoratory
Mbps Mega bits per second
MMPP Markov Modulated Poisson Process
MSE Mean Square Error
MSS Maximal Segment Size
MTU Maximal Transmission Unit
NS-2 Network Simulator 2
PD Proportional Derivative
PI Proportional Integral
pgf Probability Generating Function
pmf Probability Mass Function
QoS Quality of Service
RED Random Early Detection
REM Random Exponential Marking
RTT Round Trip Time
SCV Squared Coefficient of Variation
SFED Selective Fair Early Detection
TCP Transmission Control Protocol
UDP User Datagram Protocol
VBR Variable Bit Rate
WAN Wide Area Network
WLAN Wireless LAN
WRED Weighted Random Early Detection
Chapter 1

Introduction

As we enter the 21st century, computers connected to the Internet have


become an essential part of many people’s daily life. The Internet in its cur-
rent form is actually a collective of many different networks of different sizes
and configurations, and physically located in different geographical location
around the world. Starting as a United States Department of Defence fun-
ded research project, the world’s first operational packet switching network,
known as the ARPANET (Advanced Research Projects Agency Network),
only connected a handful of US Universities. As time went by, more and
more countries and organisations established their own networks, and many
of them were later connected to the ARPANET. It was later renamed as NS-
FNET (National Science Foundation Network), and eventually became the
Internet. Within only about 40 years of its first appearance, this collective
of networks has become one of the greatest inventions of the entire human
history, and it was estimated that more than 97% of all telecommunicated
information was carried over the Internet [57].
However, there are still many problems that sometimes deteriorate the
user experience of the Internet. One of them is network congestion. Network
congestion occurs when the total demand for a particular network resource,
for example, link bandwidth, exceeds the capacity of the resource [64]. Res-
ults of network congestion may include high delay (latency) in data transfers,

16
CHAPTER 1. INTRODUCTION 17

wasted bandwidth resources due to packet losses, and in extreme cases even
congestion collapse, for which there is essentially no data transfer through
the network for a period of time, and the throughput of the network drops
to zero and the response time increases dramatically.
As a result, it is imperative that network congestion has to be quickly
resolved, or preferably avoided completely. The most important congestion
control mechanism in the network is achieved by the use of Transmission
Control Protocol (TCP) [2] at the end-systems. Surveys such as [81] show
that TCP traffic flows are the single largest portion of the current Internet
traffic. TCP is a transport layer protocol that provides reliable data trans-
mission and congestion control at an end-to-end level. When TCP starts a
new transmitting session, the transmission rate is relatively slow at the begin-
ning. If no congestion is detected, and all packets are successfully delivered
within the acceptable time, TCP increases the transmission window size,
which leads to a faster transmission rate. This continues, and the transmis-
sion rate gradually reaches the maximal value that the network can handle
(along with many other traffic sources) [67].
Currently in the Internet, the most commonly used versions of TCP im-
plementations detect congestion only after packets have been dropped, indic-
ated by the duplication of Acknowledgement packet (ACK). In some imple-
mentations of TCP, Explicit Congestion Notification (ECN) is also enabled
by default, and can detect congestion if the received packet has its Conges-
tion Encountered (CE) flag marked [42]. In either way, without additional
form of congestion notification, the basic congestion avoidance feature of the
TCP can never prevent the network congestion, as there is no congestion
notification until the congestion has already occurred.
At the same time, while the TCP attempts to transmit data packets as
fast as possible to keep the link utilisation rate high, this would also cause the
queue length at the bottleneck queue high as the arriving rate getting close or
even exceeding the departure rate at the queue. Having large queues that are
full much of the time within the gateways is clearly undesirable, as it would
significantly increase the latency in the network. Therefore, with increasingly
CHAPTER 1. INTRODUCTION 18

high-speed networks, it is eminent to have additional mechanisms that keep


throughput high while maintaining a small queue size.
Active Queue Management (AQM) is a technique that is designed to re-
solve this issue. It attempts to inform the TCP traffic source about the
impending congestion before it occurs by randomly dropping or marking the
ECN flag (in supporting networks) of the packet. Different types of AQM pre-
dict congestion and drop/mark packets in different manners. When properly
configured, AQMs can effectively reduce the probability of congestion failure,
as well as alleviate problems such as global synchronisation and unfairness to
bursty traffic. However, this proves to be a challenging task, as most of the
AQM schemes are quite sensitive to the parameter setting, and these para-
meters may be heavily dependent on the time-variant network traffic profile
of which the bottleneck router administrator may not have extensive know-
ledge at the time of configuration [120][9]. When poorly configured, many
AQMs do not perform significantly better than the basic drop-tail queue
[89]. However, by using the method of performance modelling with queueing
theory, it is possible to develop a feasible method to perform a more precise
analysis and to achieve better optimisation.

1.1 Aims and objectives


Many AQM schemes are developed using a heuristic approach [72]. While
they may perform acceptably well especially when compared to drop-tail
queues, many of their parameters must be manually and correctly configured
according to differing network conditions [100]. The effects of these paramet-
ers are usually not thoroughly analysed, and without proper configuration,
they may drive the system into instability, causing low resource utilisation
[80]. Since there is currently no cohesive and generic mathematical formula
to support the optimal tuning of the parameters, discrete event simulation,
such as Network Simulator (NS-2), is crucial to the validation of these heur-
istic designs [72]. Unfortunately, this also results in enormous amount of
simulation experiments having to be performed with different parameter con-
CHAPTER 1. INTRODUCTION 19

figurations in order to determine the optimal values. It is inefficient at best,


and close to impossible for some AQM schemes with a large amount of para-
meters.
Some other AQM schemes are developed using a theoretical design ap-
proach. In order to achieve the primary purpose of congestion control, the
AQM algorithms should work with responsive source algorithms, most not-
ably TCP; thus, the AQM algorithms cannot be developed in isolation and
must incorporate the specific characteristics of the source algorithm [98].
Therefore, it is typical for theoretical approach in AQM design to first develop
or utilise an existing TCP model, most notably the fluid model [110][93], and
then control theory can be applied for the design. However, there are lim-
itations to the current TCP models. For mathematical simplicity and prac-
ticability, the development of the fluid model usually begins by linearising
the non-linear TCP system around an operating point and assuming that
the system is time-invariant [58]. TCP is essentially non-stationary due to
the frequent change of network conditions. This limits the accuracy of the
TCP modelling, and consequently degrades the precision for the theoretical
design.
Queueing theory can be used to assist the analysis of congestion control
with AQM. There is much research that aims to extend the fundamental
Geo/Geo/1 (discrete-time M/M/1) queueing model [105][5]. Most of the
work focuses on replacing the basic arrival and departure model with a
more complicated and more accurate one [118][47]. Almost all of the de-
rived models still utilise a similar method for calculation, which assumes
the queueing system is in a steady state - equilibrium, and solves the balance
equations to acquire the steady state probability distribution for the queueing
system[84][7]. However, requiring a steady state is a significant limitation for
this model, since a typical practical network system is unlikely to remain in
this state, due to the burstiness nature of the Internet traffic [94].
Therefore, the aims of this research are to combine the heuristic and
theoretical approach for designing and analysing AQM schemes by utilising
queueing theory, which has to be modified to better represent the dynamic
CHAPTER 1. INTRODUCTION 20

nature of the practical network systems. A set of mathematical models is


proposed, which is mainly based on the discrete-time queueing theory, to rep-
resent the dynamic interaction between the responsive traffic source (namely,
TCP) and the bottleneck queue, which can have AQM scheme activated.
With sufficient modification, it provides an effective way of calculating the
behaviour and performance of a TCP-AQM system, and is even extended
to multiple-source multiple-queue network system. Using the proposed new
methods and models, it allows to analyse the network behaviour without the
conventional equilibrium assumption in queueing theory, thus allowing ac-
curate prediction of performance measures even with a heavily bursty traffic
source and oscillating queueing behaviour. Extensive numerical solutions
and software simulations will be performed to validate the effectiveness of
the new methods and models.

1.2 Original contributions


After an extensive and thorough review of current research on the aspects of
AQM and performance modelling with queueing theory, a new modification
to the conventional queueing method, and subsequently, a new model for the
dynamic interactive TCP-AQM system, are proposed. Numerical solutions
are performed, as well as equivalent software simulations, so that their results
can be compared and analysed, in order to validate these new methods and
models. Finally, extensions to the model are performed in three relevant
areas: multiple source extension, active drop extension, and tandem queue
extension. Each of these extensions provides new research methods in the
respective area, which lead to the development of additional useful methods
and models. The contribution of this thesis can be summarised as:

• analyses the limitation of the current AQM research and performance


modelling with discrete-time queueing theory under a heavily bursty
traffic profile

• proposes a new transient modification to the conventional queueing


CHAPTER 1. INTRODUCTION 21

method

• develops a novel dynamic interactive model with the responsive source


and the bottleneck queue. The source responds to the network conges-
tion feedback, and increases and decreases transmission rate accord-
ingly, to represent the responsive AIMD behaviour of TCP

• presents a complex traffic source model which represents the multiple


network bursty responsive traffic source in addition to unresponsive
traffic source more precisely, and it can be used as arrival source for
any queueing model, by using the demonstrated probability generation
function (pgf ) calculation method for Poisson Binomial distribution

• extends the model with active dropping queueing management schemes,


and perform statistical analysis of dropping feedback; in addition, a
feasible method to obtain optimal AQM dropping rate and parameter
optimisation is proposed

• extends the model to tandem queueing networks to analyse scenarios


with heavy bursty traffic in which the single bottleneck queue assump-
tion is no longer valid

• performs extensive validation of all methods and models, by numerous


MATLAB numerical solutions and NS-2 simulation experiments, with
their results compared and analysed. The results show close match,
and prove the accuracy and effectiveness of the proposed methods and
models

1.3 Outline of the thesis


The remaining chapters of this thesis is structured as follows:

• In Chapter 2, background of the current research regarding AQM is


analysed in detail, where the challenge for improving congestion control
with AQM is summarised.
CHAPTER 1. INTRODUCTION 22

• In Chapter 3, the conventional discrete-time queueing/dropping method


is reviewed, and its effectiveness towards the objectives of this research
evaluated.

• In Chapter 4, a new transient modification to the conventional discrete-


time queueing model is introduced, which overcomes the requiring-
equilibrium-assumption limitations and creates a new approach for this
research.

• In Chapter 5, a novel dynamic interactive model that represents the re-


sponsive AIMD TCP behaviour is developed and evaluated thoroughly
by comparing multiple results from equivalent MATLAB numerical
solutions and NS-2 simulations.

• In Chapter 6, multiple-source extension is performed for the model,


and the complex traffic source model is proposed. The single source
model is extended, initially into two sources, and eventually to a much
larger scale, with improved Poisson Binomial modelling and calculation
method, in addition to the compatibility with the presence of non-
responsive UDP-like traffic source.

• In Chapter 7, the active-drop extension is performed for the model,


which provides additional insight towards AQM dropping function ana-
lysis and parameter optimisation. It utilises the complex traffic source
developed in Chapter 6, and the model is now capable of more accur-
ate representation of practical network scenarios with multiple network
users and bottleneck gateway where the AQM control trying to main-
taining a optimal network performance.

• In Chapter 8, multiple-queue tandem extension of the proposed inter-


active model is introduced, and the performance is analysed. Possib-
ility of multiple bottleneck queue is considered, and the relationship
between the performance measures of different queue can be easily ob-
tained with this extension. This also demonstrates the adaptability of
CHAPTER 1. INTRODUCTION 23

the proposed transient modification and models, showing its potential


for extension under different requirements.

• In Chapter 9, the work of this research is concluded, and possible future


work in listed.
Chapter 2

An Overview of AQM Research

2.1 Introduction
This chapter presents a comprehensive literature review on the current re-
search related to network congestion control utilising Active Queue Man-
agement (AQM) Schemes. Their research methodologies, advantages and
drawbacks are summarised. With these summaries, motivations and contri-
butions of this thesis are further explained.
In the absence of explicit feedback from the gateway (such as the usage
of Explicit Congestion Notification — ECN), transport-layer protocols at
the end terminal could only recognise network congestion with a limited set
of methods, such as estimating bottleneck gateway service time, analysing
changes in throughput and/or changes in end-to-end delay, detecting packet
drops, etc. Nevertheless, as the result of the time-variant nature of con-
nections, the traffic patterns, the lack of knowledge regarding the number
of congested gateways, the possibilities of routing changes and some other
difficulties, the perspective for an individual connection is relatively limited
in order to distinguishing propagation delay from persistent queueing delay
[45].
By comparison, a more effective place to detect congestion is the gateway
itself, especially the bottleneck gateway. The gateway can reliably distinguish
between propagation delay and persistent queueing delay, and has a unified

24
CHAPTER 2. LITERATURE REVIEW 25

view of the queueing behaviour over time. In addition, a gateway is likely to


be shared by many active connections with a wide variety of round trip times,
tolerances of delay, throughput requirements, etc., thus, decisions about the
duration and magnitude of transient congestion to be allowed at the gateway
are best made by the gateway itself [14].
The remaining content of this chapter is organised as follows: Section
2.2 reviews the general characteristics of network delay, and the reason for
identifying queueing delay as the primary targets to control end-to-end delay
is illustrated; Section 2.3 introduces the basic passive queue management
schemes, as a comparison to the advanced active ones; Section 2.4 performs
a comprehensive review on the current research about active queue manage-
ment, and the advantages/drawbacks of different AQM implementations, as
well as research methods widely utilised this area, are compared and sum-
marised; Section 2.6 concludes this chapter by summarising the limitations
of current research, challenges and opportunities, while further explaining
the contribution of this thesis.

2.2 Network delay overview


In data communication networks, host machines, such as computers, are
interconnected by a systems of communication links. The interconnected
system of links, excluding the host machines, is known as a network. The
host machines run application programmes that require movement of data
between different host machines. The primary purpose of a network is data
transfer between host machines which are possibly geographically distant.
The total number of core data links in most network is very small in compar-
ison with the number of host machines [31]. In case of a common Ethernet
local area network that usually utilises the bus network topology, only one
of many host machines can be allowed to successfully transmit data over the
broadcast medium at any given time, and other host machines must wait
until the medium is idle in order to avoid collision. As a result, the network
communication is required to be very efficient. Otherwise, with the increase
CHAPTER 2. LITERATURE REVIEW 26

of overall data movement, queueing is unavoidable and will keep accumu-


lating [119]. The long queues in turns requires a larger buffer in order to
accommodates data packets in waiting. This would eventually becomes im-
practical, even in a scenario where large network delay is tolerable, as no
buffer would be large enough to accommodate a large waiting queue which
keeps increasing in length [78].
Due to the working principle of the network, which heavily depends on the
multiplexing technique allowing multiple host machines to access a shared
medium, as well as the uncontrolled development of computer networks, the
Quality of Service (QoS) has become one of the most critical parts in network
performance evaluation [48].
One of the key components, and also a heavily experienced aspect in
maintaining acceptable QoS is the end-to-end network delay. Network delay
refers to the time delay experienced by a packet that travels from a source
to a destination. Network delay metrics are closely connected to many other
performance measures, such as bandwidth, jitter, and packet loss [112]. End-
to-end delay can generally be categorised into four different types:

• Processing Delay (dproc ):This mostly includes the time required for a
host machine to check for bit-level error that may occur to the packet
during transmission, and the time required to check for packet’s next
destination. Processing delay varies depending on the processing load
and the network devices’ processing speed of each individual host ma-
chine. In high-speed routers, processing delays is typically in the order
of microseconds.

• Propagation Delay (dprop ): This includes the time required for a packet
to be transmitted or propagated over the communication medium from
one end to the other. It is calculated as the distance d between two
nodes divided by the propagation speed s of the medium, as shown in
the following equation

d
dprop = (2.1)
s
CHAPTER 2. LITERATURE REVIEW 27

This type of delay varies mostly depends on the medium distance


between the two communicating host machines, as well as the type
of the propagation medium involved. It could be as short as a few
microseconds in between a local network, up to about a few hundreds
of microseconds. However, over a selected connection link, it is usually
a fixed value, as d and s in the previous equation remains constant, so
would be dprop .

• Transmission Delay (dtrans ): This includes the time required to push a


packet into a communication medium from the transmitting buffer of
the host machine. It generally depends on the length of the packet and
the hardware speed. It can be calculated as packet length N in bits
divided by the transmission rate R in bits per second of the network
interface, as shown in the following equation

N
dtrans = (2.2)
R

This type of delay is generally a very small value in the most common
communication system. It is usually also a relatively fixed value, under
the assumption that packets of the same size are transmitted by the
host machine.

• Queueing Delay (dqueue ): This includes the waiting time for a packet
in a queue before it is processed and transmitted. Traffic intensity,
congestion, system throughput, processing load and processing speed
are major causes of queuing delay.

A practical connection between two end host machines can usually be


divided into n physically directly connecting link. The delay between each
directly connected system is the sum of all four delay components listed
above, and the overall end-to-end delay between these two end host machines
is the sum of all the delays from each link. This can be represented with the
CHAPTER 2. LITERATURE REVIEW 28

following equation
n
X
de2e = (dproc(i) + dprop(i) + dtrans(i) + dqueue(i) ) (2.3)
(i=1)

These different components of network delay can be described as stochastic


delay components and deterministic delay components. Propagation and
transmission delay are generally classified as deterministic delay component,
as they are normally not run-time tunable. Magnitudes of these components
vary heavily based on hardware design, medium type, transceiver capacity,
distance between nodes, packet size, etc. Most importantly, these delay com-
ponents could be easily derived or estimated. On the contrary, the stochastic
delay components: queuing delay and processing delay, are harder to be es-
timated as there are many factors that may cause the variation [78].
In general, queueing delay is the most important delay component for
most delay control research that is not hardware oriented. Unlike determin-
istic delay components, which is normally a consistent value for each packet,
queueing delay may vary greatly even for packets that are transmitted in
close succession chronologically. Comparing to the other type of stochastic
delay component, processing delay, queueing delay is usually numerically lar-
ger, and more time-variant due to the characteristics of traffic arrival rate
[56].

2.3 Passive queue management


Queue management algorithm is a congestion control mechanism, by deciding
whether to enqueue or drop arriving packets based on the current queue state
or additional QoS constraints. Congestion is guaranteed to occur if traffic
arrives into network nodes is faster and more than the network nodes can
handle over a long time. At this point, queuing delay is large and future
packets must be dropped. Queuing delay is proportional to backlogs of a
queue in a network node. The longer the backlogs in a queue, the longer
a packet must wait while residing in the buffer of the node. Therefore, a
CHAPTER 2. LITERATURE REVIEW 29

proper queue management must constrain the queue length in order to limit
the queueing delay [31].
Each router or other network node has an interface queue (IFQ) that
holds data packets scheduled to go out on that network interface. Before the
introduction of AQM, the mostly used queue management is known as drop-
tail queue (DT). It is one of the first schemes that has been proposed in the
area of queue management [22]. It follows a simple and intuitive discipline:
arriving packet is allowed into the queue as long as the current queue length
is shorter than the fixed maximal length threshold; arrival packet is dropped
otherwise. In other words, data packets are dropped only if a queue is full.
Although this scheme has been widely used in the Internet for many years,
this mechanism results in large queuing delay if the queue size is large. In
addition, this kind of queue has two other major limits: the tendency to
penalise bursty flows [97], and causing global synchronisation between flows
[107].
Comparing with traffic flows more constant bit rate in nature, packets
transmitted by bursty flows usually concentrated in separated smaller time
periods. If during this period the queue happens to be considered full, it
would mean much higher percentage of packets dropped for flow. This may
result in a higher packets dropping probability for a burst flow of a very low
average throughput than a steady flow of much higher throughput. This is
considered to be unfair to bursty flows [46].
As for global synchronisation, due to the nature of bursty traffic, it is
much more likely to exceed the maximal length of the queue, even with a
relatively low average flow rate. When the network traffic is heavy, and the
queue length reaches maximal, the following arriving traffic, which contains
many different TCP flows, will be dropped at the same time, resulting the
transmit rate decreasing action of all affecting TCP sources, all of them will
slow-start at a similar rate, during which period the network will be relatively
idle. After that, all these flows will increase speed at a similar rate, which
will likely to cause the congestion again, and the synchronised oscillating
cycle continues [42].
There are two other passive queue management schemes with similar
CHAPTER 2. LITERATURE REVIEW 30

methodology as the drop-tail queue. They are commonly referred as drop-


head and random drop schemes [22]. In the drop-head scheme, the queue
length is defined in the same way as drop-tail but once the queue is full,
instead of dropping the newly arrived packets, the first packet of the queue
is dropped to make room for a single arriving packet. In the random drop
scheme, once the queue is full, one packet randomly selected from the queue
will be dropped for every new arriving packet. Generally speaking, these
two schemes are not used as commonly as the drop-tail queue. While they
may seem to be able to alleviate the bursty flow fairness issue to a certain
degree, there are no improvement on the global synchronisation issue. Also,
there are concerns [40][54] about the theoretical justification for these two
less obvious dropping selection options, which also raised the question about
the issue with fairness to different flows.
The definition of Passive Queue Management [30] mainly refers to the
passive nature of these schemes. Of all three schemes mentioned here, the
preferred queue length is a predefined value. While a properly selected queue
length value may result in an acceptable performance, none of these schemes
are able to adjust to a different traffic profile without human intervention,
which is an issue as different traffic profile may require greatly different queue
length value for these schemes to perform on a consistently good level.

2.4 Active queue management


Active Queue Management (AQM) schemes, in comparison, generally oper-
ate actively to manage the network queue length based on certain criteria
and feedback from the network in order to keep the average queue length low,
which would result in smaller queueing delay [14]. Many typical schemes in
this category achieve this goal by explicitly inform the end-system protocols
such as TCP in order to assist it in congestion control, using the method
of probabilistically dropping or marking packets before the queue overflows
[45]. The probability of the dropping or marking is usually derived from net-
work performance indicator which the scheme choose to target; as a result,
CHAPTER 2. LITERATURE REVIEW 31

the dropping probability usually varies with the network performance. With
this method, devices running these schemes are able to “actively” manage
the queue, which is indicated by the name of their classification.
There are a number of ways to classify and compare different AQM
schemes. Based on their mechanism of operation, namely, the type of conges-
tion indicator used, AQM schemes can be classified into five broad categories:
queue-based, rate-based, load-based, packet-loss-based or a combination of
these [102][24]. The average (usually exponential weighted moving average
(EWMA)) or instantaneous samples were used as the congestion indicator.
There are some proposals that update the EWMA on each packet arrival,
whereas others perform the update at constant, predetermined intervals. For
a queue-based scheme, the dropping probability is derived from the instant-
aneous or average queue length. The core of this type of schemes is to keep
the queue length in a relatively stable and desirable state [55][79]. The aim of
rate-based AQM is to keep the packet arrival rate at the queue at a targeted
optimal value, usually at some preferred percentage of the link capacity. By
this method, queue length is indirectly controlled [87]. For a load-based
scheme, dropping probability usually depends on the scheme’s capability of
accurately predicting the link utilisation (traffic load). It usually aggress-
ive dropping or marking data packets when the link utilisation exceeds the
desired level and less aggressive when it is below this level [77]. This type
of schemes generally focus less about the queue length than the previous
types, but more on the balanced relationship between arrival rate and de-
parture rate of the links in question. Finally, there are some schemes employ
a combination of these different indicators [33][8], in hopes of maximising
the advantages of both queue length based and load rate based mechanisms,
namely the low delay and high throughput.

2.4.1 Queue-based
• Classic RED

First introduced by Floyd, S. and Jacobson, V. in 1993, Random Early Detec-


tion (RED) [45] is one of the most influential, popularly studied and success-
CHAPTER 2. LITERATURE REVIEW 32

ful AQM scheme. It establishes a relatively easy but effective way to achieve
the goal of queue length based AQM. It inspired many later research, and it
has been used as a framework for many other studies and new AQM schemes.
Classic RED works as follow: the queue length (q) is constantly mon-
itored; an average queue length (avg) is calculated based on a weight para-
meter (wq ) of instant queue length and average queue length of last calcula-
tion (avg 0 ). The function used for the calculation is

avg = (1 − wq )avg 0 + wq q (2.4)

When the average queue length is low and smaller than the lower threshold
(thmin ), all incoming packets are accepted and allowed into the queue; when
the average queue length exceeds the lower threshold (thmin ) but not the
upper threshold (thmax ), incoming packets will be dropped with a linear
probability based on the relationship between average queue length, a para-
meter that defines the maximal dropping rate (pmax ) and the upper and lower
thresholds (thmax , thmin ); when the average queue length exceeds the upper
threshold, all incoming packets will be dropped. The dropping probability
function can be written as:

 0
 avg < thmin ;
avg−thmin
pd = th −th
pmax thmin ≤ avg ≤ thmax ; (2.5)
 max min

1 avg > thmax .

RED has been shown to be effective to counter against both the global syn-
chronisation problem and the burst-bias problem [85]. However, the perform-
ance of RED is still a heated on-going debate. Most researchers acknowledged
that RED gateway shows some advantages over drop-tail gateway but it is
not perfect, mainly due to one or more of the following problems:

• RED performance is highly sensitive to its parameter settings [38][99][41];


In RED, at least 4 parameters, namely, upper threshold (thmax ), lower
threshold (thmin ), maximum packet dropping probability (pmax ) and
weighting factor (wq ) have to be set properly. In fact, in cases where
CHAPTER 2. LITERATURE REVIEW 33

these parameters do not match network conditions, the performance of


the RED gateway can even be worse than that of a traditional drop-tail
gateway [15];

• RED performance is sensitive to the number of competing sources/flows


[121][59]; this is a problem in a large scale practical network as the
information on sources/flows is likely unknown to the queue manager;
this also means that classic RED cannot accommodate any flow control
scheme unless modified;

• RED performance is sensitive to the packet size [92]; this is particularly


serious when working in packet mode instead of bit mode;

• Severe queue oscillation is observed while using RED when the traffic
load changes [13]; severe oscillation usually indicates varying perform-
ance level, and more importantly, a lower link utilisation ratio.

Despite these difficulties with classic RED, its prowess and potential still
mostly overshadow them. As a result, it has been extensively analysed,
extended, or modified in many different ways. Some of the most influential,
innovative and popular ones are introduced in the following paragraphs.

• Gentle-RED

One of the problems of the classic RED is relatively low throughput. The
packet dropping probability directly jumps to 1 when the average queue size
is greater than the upper threshold (thmax ). This was later considered to
be too aggressive and cause some instability of the system related to the
discontinuity of the drop function [44]. The dropping probability of arrival
packets when the average queue length is just under the upper threshold
(thmax ) would be close to the maximal dropping rate pmax , which is usually a
value smaller than 0.2. However, if the average queue length increase a little
just enough to exceed the upper threshold (thmax ), this dropping probability
for the newly arrival packets would suddenly become 1. This discontinued
aggressive drop causes a decreased link utilisation ratio.
CHAPTER 2. LITERATURE REVIEW 34

To make things worse, due to the way average queue length is calcu-
lated and the heavier proportion of previous queue length (as wq is usually
a value smaller than 0.2), even if the overall transmission rate has already
been slowed down enough due to previous drops and the instantaneous queue
length is already decreasing, the average queue length calculation may still
indicate a value exceeds the upper threshold, and thus, overaggressive drop-
ping action is taken. As a result, the transmission rate decreases even further
and further, and eventually, the average queue length will get below the up-
per threshold and allowing new arriving packet inside the queue. But due to
the previous heavy drop, the transmission rate is usually extremely low at
this point, thus the link will be idle. Idle link with a heavy TCP traffic and
classic RED queue is quite easily observed.
With this consideration, a gentle version of RED (GRED) was proposed
[44] by the original researcher group not long after the initial RED was an-
nounced. In GRED, the packet dropping probability increases linearly from
pmax to 1 when avg increases from thmax to 2thmax . The dropping probability
of GRED can be discribed as:



 0 avg < thmin ;
 avg−thmin p

thmin ≤ avg ≤ thmax ;
thmax −thmin max
pd = avg−thmax
(2.6)


 thmax
(1 − p max ) + p max thmax < avg < 2thmax ;

 1 avg > thmax .

Although this seems only a very minor modification to the classic RED al-
gorithm, the effectiveness is rather noticeable. As a result, this concept can
be identified in almost every version of the later RED modification proposal,
even though many of them have made drastic change over the classic scheme.

• Adaptive RED

It was showed by Feng etc. [37] that the effectiveness of dropping packets
to control source rate is affected by the number of sources. As a result,
combining with the sensitive to the parameters issue of RED, there is no
single set of RED parameters that can work well under different congestion
CHAPTER 2. LITERATURE REVIEW 35

scenarios. Therefore, they proposed the adaptive RED (ARED) scheme,


which adapts the pmax value based on the traffic load.
In principle, ARED observes the average queue length to determine whether
the current parameter setting is too aggressive. The gateway running this
scheme changes the dropping probability, according to the average queue
length and determine how aggressive the previous setting is. It can be ob-
served that the average queue oscillates around thmax if the current parameter
setting is too conservative, and otherwise oscillates around thmin or even less
if the current parameter setting is too aggressive. ARED provide certain level
of self-tuning ability comparing to the classic RED, which in a way partly
ease the sensitive-parameter problem.
Floyd also acknowledged that the effectiveness (average queue size) of
the classic RED is sensitive to the level of congestion as well as the RED
parameter settings [41]. A new adaptive RED scheme was then introduced,
which is partially based on ARED.
The Floyd’s version of ARED can be described with the following pseudo
CHAPTER 2. LITERATURE REVIEW 36

code:

every interval seconds:


if (avg > target and pmax ≤ 0.5)
increase pmax :
pmax = pmax + a;
elseif (avg < target and pmax ≥ 0.01)
decrease pmax :
pmax = pmax × b;
variables:
avg : average queue size
fixed parameters:
interval : time; 0.5 seconds
target : target for avg;
[thmin + 0.4 × (thmax − thmin ), thmin + 0.6 × (thmax − thmin )].
a: increment; min(0.01, pmax /4)
b: decrese factor; 0.9

By adapting RED parameter pmax automatically in response to varying traffic


conditions, ARED has the potential to better keep the average queue size
within the targeted range, which is usually considered to be (thmax +th
2
min )
.
This provides a partially effective simple mechanism to alleviate parameter
sensitivity issue, especially under unknown network scenarios. However,
ARED uses default network parameters such as a default round-trip time
to determine many parameters (most importantly, pmax ), and these network
parameters may vary significantly over time. So ARED cannot entirely solve
the sensitivity issue of RED parameters from network scenarios [37]. Its
performance may also degrade under some more heavily oscillated network
conditions.
CHAPTER 2. LITERATURE REVIEW 37

• Non-linear RED

The classic RED (and its gentle and adaptive modification) uses a linear
function to calculate the dropping probability between thresholds. Some
researchers proposed to substitute this dropping function with a specially
designed non-linear function, and the rest of the classic RED algorithm re-
mains unchanged. One of such examples is the modification proposed by
Zhou etc. [120] in which they use a non-linear quadric function to calculate
the dropping probability. Its underlying idea is that with their proposed
non-linear packet dropping function, the packet dropping rate is gentler than
classic RED at light traffic load but more aggressive at heavy load. As a res-
ult, at light traffic load, connecting flows is encouraged by the relatively low
dropping rate of NL-RED to operate at a higher transmitting rate so that
the queue length of the gateway can be in an appropriate range of average
queue sizes which represent a higher throughput and better resource utiliz-
ation. When the load is heavy and the average queue size approaches the
maximum threshold thmax — an indicator that the queue size may soon get
out of preferred range, the relatively higher dropping rate of NL-RED gives
a more aggressive feedback to the connecting flows which in turns allows the
queue length to quickly return into the more appropriate state.
In their version of non-linear RED, when average queue length exceeds the
minimum threshold, NLRED uses the nonlinear quadratic that they designed
to drop packets, and the dropping probability function can be described as:

 0

2
avg < thmin ;
avg−thmin
pd = thmax −thmin
pmax thmin ≤ avg ≤ thmax ; (2.7)

1 avg > thmax .

By using software simulation (NS-2), they believed that their new algorithm
shows advantage over the classic one in turns of less sensitive to parameter
settings, average queue size more predictable and higher throughput potential
[120]. Another advantage of this kind of modification is their relatively small
change against the classic RED, thus inherent its simplicity, and should be an
easy modification for gateways that already running on or compatible with
CHAPTER 2. LITERATURE REVIEW 38

classic RED.
The difference between classic RED, with gentle modification and a non-
linear dropping function is better demonstrated in Figure 2.1

RED
Gentle
Non−linear
1
drop rate

pmax

min max 2*max


weighted average queue length

Figure 2.1: Drop Rate Comparison between RED and Gentle RED

2.4.2 Rate-based
• GREEN

This proactive queue-management algorithm, Generalised Random Early


Evasion Network (GREEN), uses flow parameters and the knowledge of TCP
end-host behaviour to intelligently mark packets to drop packets intelligently,
thus preventing congestion from ever occurring and ensuring a higher degree
of fairness between flows [39]. It determines the packet dropping probability
based on an analytic model developed by [88] for the steady state behaviour
CHAPTER 2. LITERATURE REVIEW 39

of TCP. The dropping probability function can be represented as


 2
c×s×N
pd = (2.8)
R × RT T

where pd is the packet drop probability, c is a constant that depends on how


the Acknowledgement packets is transmitted, s is the maximum segment
size in the network, RT T is the Round Trip Time of the flow, R is the
transmission rate of the exiting link, and N is the number of active flows at
the queue which has had at least one packet in the queue during a certain
time-interval.
An improvement of this algorithm is that other than those parameters
that can be determined or estimated by the router, there are no parameters
that need to be tuned to achieve optimal performance in a given scenario.
In addition, both the number of flows N and the Round Trip Time RT T of
each flow are taken into consideration during the calculation of the congestion
notification probabilities; thus, marking probability in GREEN is generally
different for each flow as it depends on flow specific characteristics.

• SFED

This algorithm, Selective Fair Early Detection (SFED) [66], attempts to


provide fair bandwidth allocation for different flows and can be adjusted
to assign priorities to flow aggregates as in a differentiated services frame-
work. SFED maintains a token bucket for every flow or aggregate flows,
and the rate at which tokens are removed from its bucket is proportional to
the incoming rate of the flow. The occupancy of the bucket is then used as
the determination for probability of dropping/marking a packet. It uses the
height of token buckets to represent the burst length it can accommodate for
each corresponding flow, thus alleviates the unduly punishment for bursty
flows.
In addition, SFED can be adapted into a priority-less system where all the
heights of all buckets are the same. The sum of bucket heights is proportional
to the buffer size. When a new flow is added, all bucket heights are reduced
CHAPTER 2. LITERATURE REVIEW 40

to accommodate the new token bucket; Otherwise, the height of all the other
token buckets are increased when a flow becomes inactive. The dropping
probability function can be represented as
 xi

 0 λ1 < LN
< 1;
x
  

 λ1 − L i xi
pd = pmax λ1 −λ2 N
λ2 < LN
< λ1 ; (2.9)
x
  
 λ1 − L i xi
 pmax + (1 − pmax )


λ2
N
0< LN
< λ2 .

where xi is the bucket occupancy of ith token bucket, N is the number of


flows or buckets in the system, LN is the maximum height of each bucket.
λ1 and λ2 are occupancy ratio thresholds.
SFED attempts to achieve early detection and congestion notification for
the adaptive source. The token bucket mechanism also keeps record of the
bandwidth used by its corresponding flow in the recent past, thus enhancing
its capability in a priority system.

• Rb-RIO

This algorithm, Rate-based RIO (Rb-RIO) [25], is a rate based modification


of RIO, which is essentially simultaneously deploying two parallel instances
of RED, on for the “In” packet and another for the “Out” packet [28].
Rb-RIO supports three priority classes. A weighted average arrival rate
is maintained for each class (EARi , where i = 4, 2, 1 in descending order of
priority). If the sum of the estimated arrival rate for all three classes (TEAR)
is less than the service rate then all packets are accepted into the queue. But
if not, and the sum of the estimated arrival rates for the two higher priority
classes is less than the service rate (SR), accept all packets belonging to those
classes, but drop packets belonging to the lowest class with probability

T EAR − SR
pd1 = (2.10)
EAR1

If however, the sum of the estimated arrival rates for the two higher priority
classes is greater than the service rate but the estimated arrival rate of the
CHAPTER 2. LITERATURE REVIEW 41

highest priority class is less than the service rate, all packets for the highest
priority class are accepted, the packets of the second-highest priority class
are dropped with probability

EAR2 + EAR3 − SR
pd2 = (2.11)
EAR2

but all packets of the lowest priority are dropped. Finally, if the estimated
arrival rate of the highest priority class is greater than the service rate, all
packets of the lower priority classes are dropped with probability one, but
the packets of the highest priority are dropped with probability

EAR2 − SR
pd3 = (2.12)
EAR3

Rb-RIO attempts to improve fairness over Drop-Tail and RED, while sig-
nificantly improving MPEG video frame loss as perceived by the user, while
improving. It also identifies how Rb-RIO can be configured to outperform
Drop-Tail and RED on traffic with both TCP and video streams.

2.4.3 Load-based
• AVQ

This algorithm, Adaptive Virtual Queue (AVQ) [77], maintains a virtual


queue which has less capacity than the actual link capacity. Packets allowed
to enqueue are also added to the virtual queue. As soon as the virtual queue
buffer overflows, packets in the real queue begin to get dropped. Through
the parameters used, the virtual link capacity can be adjusted in order to
achieve the desired utilisation.
The core mechanism of AVQ can be described with the following sudo-
CHAPTER 2. LITERATURE REVIEW 42

code:

V Q = max(V Q − R(t − s), 0) /* Update Virtual Queue Size */


if V Q + b > B
mark or drop packet in the real queue
else
V Q = V Q + b /* Update Virtual Queue Size */
endif
R = max(min(R + α ∗ γ ∗ R(t − s), R) − a ∗ b, 0)
/* Update Virtual Capacity */
s=t /* Update last packet arrival time */

where R is the capacity of a link, B is the buffer size, b is the number of bytes
in current packet, α is the smoothing parameter, γ is the desired utilisation
of the link, R is the virtual queue capacity, t is the current time, s is the
arrival time of previous packet, V Q is the number of bytes currently in the
virtual queue.
AVQ attempts to achieve stability of the system in the presence of feed-
back delays, as well as the ability to maintain small queue lengths and its
robustness in the presence of extremely short flows. It is also design in a way
that can be easily implemented within only a few lines of code.

• YELLOW

This algorithm, YELLOW [87], uses the load factor (link utilization) as a
main merit to manage congestion. To improve congestion control perform-
ance, a queue control function (QCF) is introduced as a secondary merit,
providing an early controlling queuing delay maintaining the main load merit.
It attempts to predict incipient congestion timely and accurately with con-
trolled queuing delays, stability, and robustness to variation in traffic load.
CHAPTER 2. LITERATURE REVIEW 43

The QCF is described by


  
 max QDLF, γαqref q > qref ;
(α−1)q+qref
f (q) = γβq
(2.13)
ref xi

(β−1)q+qref
0< LN
< λ2 .

where q is the queue length, qref is the reference queue length, QDLF is
the queue drain limit factor, γ is the link utilisation rate, α and β are two
parameters providing the trade-off between responsiveness and stability of
the algorithm.
YELLOW algorithm uses load factor as the congestion indicator, which
is calculated by

link input rate


z= (2.14)
f (q)R

where f (q)R is the calculated available virtual link capacity. The dropping
probability function is given as a recursive form:

z∆
 p+
 R
z ≥ 1 + δ;

pd = p− zR
z < 1; (2.15)

p otherwise.

where p is the previous value of pd .


The scheme requires that the routers periodically monitor their load on
each link and determine a load factor, the available capacity and the queue
length. This information is used to alert the incipient congestion in ad-
vance and calculate the packet marking probability. TCP sources adjust
their sending rate to respond the network calculated information using ECN
mechanism.

2.4.4 Combined indicator


• REM

RED measures congestion by average queue length, as a result, its perform-


ance measure, such as delay or throughput, is bind with the congestion meas-
CHAPTER 2. LITERATURE REVIEW 44

ure [8]. Since the average queue size reflects the change in traffic load, unless
the parameter is perfectly set, it is difficult for RED to maintain perform-
ance within the target zone regardless of the number of users. This algorithm,
Random Exponential Marking (REM), on the other hand, aims to achieve
high throughput, low loss rate and low queuing delay under varying traffic
loads by independently using congestion measure and the performance meas-
ure.
Congestion measure represents the excess demand for bandwidth or re-
source. The key of REM is to determine the marking probability by using
price as congestion measure. Price is based on rate mismatch and queue
mismatch. Rate mismatch is a measurement of things such as difference
between input rate and link capacity, while queue mismatch is a measure-
ment of things such as difference between queue size and target. With both
of them, price reflects not only current congestion but also the change in
congestion. At a queue l, the price pricel (t) is updated in every period t as
follows:

pricel (t + 1) = [pricel (t) + γ(αl (ql (t) − qref,l ) + xl (t) − Cl (t))] (2.16)

Where xl (t) is the aggregate input rate at queue l, Cl (t) is the available
bandwidth at queue l. The constant αl is a small positive number. It can
be set individually at each queue to trade off utilization and queuing delay
during transient period. The constant γ is a small positive number. It
controls the responsiveness of REM to changes in network scenarios.
If the target queue size qref,l is not zero and there are packets in the
buffer, then xl (t) − Cl (t) is change of queue size in time. In this case, it can
be substituted by ql (t + 1) − ql (t). Thus the price is updated based only on
the current and previous queue sizes as follows

pricel (t + 1) = [pricel (t) + γ(ql (t + 1) − (1 − αl )ql (t) − αl qref,1 )] (2.17)


CHAPTER 2. LITERATURE REVIEW 45

Then, REM can use the following exponential marking policy

pl (t) = 1 − φ−pricel (t) (2.18)

to calculate the marking probability, where φ > 1 is a constant. If an


incoming packet is not marked by any upstream queue, its marking probabil-
ity is exponential increasing in the current price. So the end-to-end marking
probability is calculated by the sum of link prices along the path as follows

L
Y X
1 − (1 − pl (t)) = 1 − φ−Σl pricel (t) ≈ (loge φ pricel (t)) (2.19)
l=1 l

It can be seem that the end-to-end marking probability is an exponential


function of the sum of individual congestion along the path.
REM uses a price based on queue mismatch and rate mismatch as its
congestion. The measurement of rate mismatch is a form of a proportional
function, and the measurement of queue mismatch is a form of an integral
function that can remove static-state errors independent on network scen-
arios. Thus, REM can stabilize the queue at a target queue size in a wide
range of varying network scenarios. The exponential marking policy that
REM adopts can make use of the sum of prices along a path to calculate the
end-to-end marking probability. However, this makes its computing workload
is relative high, and may cause an increasing queueing delay, even high loss
rate if the target queue size is set very small. This is because the oscillations
of the queue size would become severe as round-trip time or link capacity
increase. REM is designed for the ECN environment. It does not work well if
networks are dominated by dropping packets. Also, there are four paramet-
ers f , a, g, qref that need to be set properly in REM, so the sensitivity issue
cause by various parameters required may cause the increasing difficulty in
its implementation and operation [8].
CHAPTER 2. LITERATURE REVIEW 46

• BLUE

BLUE aims to reduce packet loss rate and buffer size requirement in a simpler
way, rather than constant tuning of its parameters to achieve acceptable
performance under varying network conditions, like the classic RED. The
key idea behind BLUE is to perform queue management directly based on
packet loss and link utilization rather than on the instantaneous or average
queue size [37].
BLUE directly uses packet loss and link utilization as congestion measure
to set marking probability. In principle, BLUE maintains a single probab-
ility p, which it uses to mark (or drop) packets when they are queued. If
the queue is continually dropping packets due to the buffer overflow, BLUE
increments, thus increasing the rate at which it sends back congestion noti-
fication. Conversely, if the queue becomes empty or if the link is idle, BLUE
decreases its marking probability. This effectively allows BLUE to learn the
correct rate that it needs to send back congestion notification. The use of the
threshold provides room to accommodate transient bursts. The algorithm of
BLUE is described as follows

upon packet loss (or q > threshold ) event:


if ((tnow − tlast ) > f reeze time)
p = min(1, p + δ1 );
tlast = tnow ;
upon empty queue (or link idle) event:
if ((tnow − tlast ) > f reeze time)
p = max(0, p − δ2 );

where δ1 and δ2 are increment and decrement respectively, f reeze time


is the minimum time interval between two successive updates of the marking
probability p, and threshold specifies the queue size above which the marking
probability should be updated. The use of f reeze time allows the changes in
CHAPTER 2. LITERATURE REVIEW 47

the marking probability to take effect before the value is updated again, and
it can also be used to control the responsiveness of the algorithm when dealing
with changing traffic rate. It should be set based on the effective round-trip
times of connections sharing the link in order to allow any changes in the
marking probability to reflect back on to the end sources before additional
changes are made, and should be randomized to avoid global synchronization.
δ1 needs to be set much greater than δ2 . This is because link idle occurs
when congestion management is either too conservative or too aggressive,
but packet loss occurs only when congestion management is too conservative.
Also, the event of traffic overflow is usually considered to be a much worse
scenario than relatively low throughput. By weighting heavily against packet
loss, BLUE can quickly respond to a significant increase in traffic load. On
the other hand, δ1 and δ2 should be set in conjunction with f reeze time to
allow p to be able to range from 0 to 1 in an order of minutes for links where
extremely large changes in load occur only in such a short time.
BLUE can use a smaller buffer size to keep lower loss rate than RED. How-
ever, BLUE has a relatively sluggish response because many steps (f reeze time)
are needed in order to correct p to get its optimal value and to stabilize the
queue. In addition, BLUE has difficulty in stabilizing the queue under vari-
ous round-trip times and link capacity [37]. If δ1 and δ2 are set to a relatively
large value in order to achieve a faster stabilizing process, and δ1 is set to
be much larger than δ2 as suggested, then after a packet loss event, BLUE
will increase the packet dropping probability relatively large, which produces
a continuous packet dropping. As a result, it leads TCP into timeout, and
reduces the link utilization rather seriously. The same dilemma exists for the
setting of the f reeze time parameters. If the f reeze time is too small, it will
result in p changing too frequently, which makes the congestion management
very radical; on the other hand, if the f reeze time is too big, which means
the changing of p is very slow, and makes the congestion management very
conservative.
CHAPTER 2. LITERATURE REVIEW 48

2.4.5 Control theory approach


• Proportional Integral

In ARED, the parameter pmax is adapted using an additive increase multi-


plicative decrease policy in order to keep the average queue length within
a target range. Also, it is designed not just to keep the average queue size
between thmin and thmax , but to keep the average queue size within a target
range halfway between thmin and thmax . As a result, some scholars believed
that its performance can still be improved if a more methodological manner
is used to adapt the dropping probability pmax .
Hollot etc. proposed to use Proportional Integral (PI) controller as an
AQM algorithm [60][59], which has the form

Z t
p(t) = kp e(t) + ki e(t) (2.20)
0

where p(t) is the packet dropping/marking probability,

e(t) = q(t) − qref (2.21)

is queue length error, q(t) is the instantaneous queue length, qref is the
target queue length, kp and ki are proportional coefficient and integral coef-
ficient, respectively. In the implementation of the algorithm, drop probab-
ility is calculated periodically, namely drop probability is recalculated every
fixed-length sampling interval of size ∆T So, the PI AQM algorithm can be
expressed in a discrete form as follows

p(k) = p(k − 1) + kp (e(k) − e(k − 1)) + ki e(k) (2.22)

where k is the time index representing the kth sampling time.


PI can increase the responsiveness and eliminate the stable state error.
A PI controller can improve the response time by removing the low-pass fil-
CHAPTER 2. LITERATURE REVIEW 49

ter of RED that results in sluggish response of the system. In addition, the
integral part can eliminate the steady-state error and make the queue con-
verge to its reference value. It calculates the packet drop probability directly
and thus provides faster responses than RED. On the other hand, removing
the threshold of RED may results in a higher loss rate. This is why the PI
controller performs better with ECN than without ECN. It seems that the
sampling interval corresponding to changed scenarios is not as severe as that
of RED, but in order to guarantee the stability of the TCP-AQM system and
maintain a stable queue length over a wide range of network dynamics, the
PI controllers with fixed-gain parameters are set for the worst case scenario,
namely, they are set quite conservatively. However, this causes sluggish re-
sponse when the network traffic conditions change. This also means that the
choice of its parameters is still the result of a trade-off between fast response
and stability of the system under extensively varying network conditions,
thus parameter setting is sensitive and difficult configuration under different
environments.

• Proportional Derivative

A Proportional-Derivative (PD) controller was added to the original RED


AQM, in [106], in order to improve the performance of RED, Hence the name
PD-RED. The RED parameter Pmax was adapted which the authors believed
would more systematically improve queue length stabilisation attempted by
Adaptive RED (ARED) [41]. The error signal during sampling interval i is
given by

e(i) = q(i) − qref (2.23)

where q is the average queue length during sampling interval i, qref is the
target queue length. The PD controller algorithm follows:

e(i) e(i) − e(i − 1)


Pmax (i) = Pmax (i − 1) + Kp + Kd (2.24)
B B
CHAPTER 2. LITERATURE REVIEW 50

where Kp , Kd , B are the parameters of proportional gain, derivative gain,


buffer limit, respectively.
Using the NS-2 simulator, the author claims that this new variant of RED
scheme, namely, PD-RED, which is based on control theory fundamentals,
“performs better than Adaptive RED in most cases”[106].

2.5 Application and implementation of


AQM
AQM schemes can increase the performance of the network under appro-
priate parameter setting. Despite the difficulty for this procedure, they are
widely implemented and supported on the commercial routers. Most of the
important commercial router manufacturers, such as CISCO or Juniper, has
implement RED-like AQM scheme into their product. CISCO routers, for
example, implemented a modified version of RED which is called WRED
[27]. Cisco IOS QoS setup includes an implementation of RED that, when
configured, controls when the router drops packets. If Weighted Random
Early Detection (WRED) is not configured, the router uses the cruder de-
fault drop-tail packet drop mechanism.
WRED combines the capabilities of the RED algorithm with IP Preced-
ence to provide for preferential traffic handling of higher priority packets.
WRED can selectively discard lower priority traffic when the interface be-
gins to get congested and provide differentiated performance characterist-
ics for different classes of service. IP Precedence governs which packets are
dropped-traffic that is at a lower precedence has a higher drop rate and there-
fore is more likely to be throttled back. If interfaces are configured to use the
RSVP (Resource Reservation Protocol) feature, WRED will choose packets
from other flows to drop rather than the RSVP flows. If WRED is configured
to ignore IP Precedence when making drop decisions, a non-weighted RED
behaviour can also be achieved.
Other than the weighted profile, WRED work exactly the same as the
classic RED. It will allow the administrator to setting a minimal a maximal
CHAPTER 2. LITERATURE REVIEW 51

threshold, for each service profile is needed, so the router will understand
when to apply the linear dropping function. pmax is replaced by mark probab-
ility denominator, which is the fraction of packets dropped when the average
queue depth is at the maximum threshold. It is the reverse of pmax in value.
When the average queue length is greater than the maximum threshold for
one service profile, all the incoming packets of this profile will be dropped.
The router also allows the administrator to change some parameters in
a slightly modified version of the average queue length calculation formula.
When the parameter is set, the router will automatically calculate the average
queue length using the following formula:

average = (old average × (1 − 2−n )) + (current queue size × 2−n ) (2.25)

where n is the exponential weight factor, a user-configurable value, with


the default value of 9. For a higher value of n, the previous average weights
more and becomes more important. The average queue size is unlikely to
change very quickly in this case, avoiding drastic swings in size, and in turn
smooth out the traffic turbulence with better handling of bursty traffic [27].
The WRED process will be slow to start dropping packets, but it may con-
tinue dropping packets for a time after the actual queue size has fallen below
the minimum threshold. The slow-moving average will accommodate tem-
porary bursts in traffic. For a lower value of n, the previous average weights
less and becomes less important. The average queue size closely tracks the
current queue size. While this may result in fluctuation with changing traffic
levels, the responsiveness is increase. A less bursty traffic profile will benefit
with this setup most.
WRED makes early detection of congestion possible and provides for
multiple classes of traffic for these routers, and it also protects against global
synchronization. For these reasons, CISCO advises that WRED to be con-
figured on any output interface where congestion is expected to occur.
CHAPTER 2. LITERATURE REVIEW 52

2.6 Summary and discussion


AQM is a very popular research area, and there is much new research about
the evaluation or modification proposal of the existed AQM schemes every
year. Most of the research focuses on several aspects, such as modifying and
validating a better version of the dropping probability function, or increase
the robustness of the algorithm by making it less parameter sensitive so that
it may work better under various network scenarios.
Classic RED is still by far the most popular AQM schemes, due to its
simplicity, significant improvement over drop-tail queue in optimal configur-
ation, as it being the earlier well-known AQM scheme. It is used as a base of
research for almost all AQM research that is not utilising control theory ex-
clusively. Although it is a queue-based algorithm, its influence can be easily
observed in AQM schemes in other categories as well.
Based on the information on the previous related work that covered in this
chapter, it is not difficult to reach the conclusion that most of the difficulties
with the RED-like AQM scheme can be trace back to these two problems:
effectiveness of the dropping probability function [121][59] and the optimisa-
tion of parameter setting [38][99]. Thus, most of the researches are focusing
on solve them. The reason for the difficulty of setting dropping probability
is that most of the current AQM actually rely on the responsive behaviour
of the TCP to the dropped packets or congestion marking. As the number of
TCP flows, the ratio of the TCP traffic within the entire traffic, and the way
each individual TCP handles the lost packet event or notification are all at
least partially unknown to the gateway from where the AQM actually works
[89].
It is the similar for the difficulty of parameter sensitivity, as with all these
network environment change, a gateway which the AQM works on may face
drastic different networks which may require completely different configur-
ation, and a set of parameter of dropping function may work perfectly fine
in some of them, but fail in the others [75]. To make things worse, the net-
work profile are usually time-variant [65], which means that the an effective
algorithm has to either perform well using a single parameter configuration
CHAPTER 2. LITERATURE REVIEW 53

under variant traffic patter, or it parameter can adaptively self-configured


[41]. It is no wonder that even after almost 20 years after its first appear-
ance, these problem which was realized in the very beginning, are still both-
ering the community, despite years and years of research by many talented
scholars.
By analysing the related research on AQM, one can also realize that many
of their methodology are actually quite similar. Many of them used statistical
analysis to state a problem facing a version of an older protocol (classic
(G)RED [45][44], Active RED [41], etc.), with the data gathered from either
simulation (most likely, NS-2), or some real world samples (very rare). Then
a modified version will be proposed and its performance verified by almost
always using software simulation (NS-2) by comparing the measurements
with the older protocol. Some of the researches involve some theoretical
design approach such as classic control theory, while many others simply
uses the heuristic approach where the design is basically “intuitive”, and the
effective is only validated by simulation results.
The problem with this approach is that while simulation software such
as NS-2 are very powerful and effective tools, when conducting the verifica-
tion, one needs to set all the variables for the testing network profile, thus
already ignored perhaps the most important difficulties for the AQM, as the
network profile is already known. Also, in almost all of these researches, the
parameter setting of the AQM used for the simulation are not thoroughly
analysed. By using the inappropriate parameters, the performance of them
can experience significant deterioration as the system is quickly driven into
instability, causing fluctuating queueing behaviour, low link utilisation, and
not even the lower queueing delay is guaranteed.
There are many different types of AQM algorithms proposed by different
scholars, and each of them claims to be better than the classic algorithms.
However, there is actually no effective way of comparing the performance
between these new algorithms. Good sets of parameters and network scen-
arios needs to be determined for each algorithm in order to do a proper
comparison. Sadly, it is almost impossible to make sure these settings are
on a similar level for each algorithm. This means that if unintentionally the
CHAPTER 2. LITERATURE REVIEW 54

best parameter is selected for one algorithm, and a parameter that only 60%
effective is selected for another, then it is really not reasonable to reach the
conclusion that the first one works better than the second one.
Beside this, only a handful of work, notably those using control theory
design approach, thoroughly considered the reaction of the TCP, comparing
the large number of total researches. AQM is ’active’, and it is designed
to predict and avoid the congestion before it happens. As a result, the
dropping behaviour in AQM is not a mean to directly prevent the queue
size reaching the maximal size, but a mean to send the notification, control
the incoming traffic flows, and try to maintain the queueing delay within
the most preferable range. For those works that actually considered TCP
reaction, they are generally limited by the accuracy current TCP models,
most notably the fluid model [110][93]. Significant simplifications are made
during the development of common fluid models, usually by linearising the
non-linear TCP system around an operating point and assuming that the
system is time-invariant [58]. TCP is essentially non-stationary due to the
frequent change of network conditions. This limits the accuracy of the TCP
modelling, and consequently degrades the precision for the theoretical design
utilising this approach.
As there is currently no efficient way of calculating the best parameter
setting for different AQM schemes, even under a known network environment,
one can only continuously try different sets of parameters and comparing the
performance. This is not only time-consuming, but also very unlikely to
actually find the best setting because each parameter in the set can change
individually, thus vast number of parameter combination needs to be tested.
Also, the test is usually performed by software simulation, which is also a
time-consuming process since the proper test needs to be run on the correct
setup for enough long time duration so that generalized result can be reached.
By using the discrete-time queueing model, it is possible to find a math-
ematical way of calculating these parameters and analysing the behaviour of
specific AQM scheme directly, instead of waiting for the lengthy simulation
and checking the complex result of numerous instances of simulation tests,
which in many cases is difficult to reach a definitive conclusion. The con-
CHAPTER 2. LITERATURE REVIEW 55

ventional discrete-time queueing method is reviewed in the next chapter to


determine its efficiency in representing the TCP-AQM network system.
Chapter 3

Conventional Method and


Queueing Model for Network
Performance Modelling

3.1 Introduction
This chapter presents a review of the conventional queueing model for net-
work performance modelling. Relevant theories, useful background inform-
ation, and the conventional equilibrium-based calculation method are intro-
duced, which is followed by a classic RED queue modelled and analysed
using one of the most typical queueing models in order to demonstrate the
advantage and drawback of the conventional model and methods.
A model of a physical system is a mathematically precise representation
of the interaction of several variables and functions governing the original
system [31]. It would be desirable that the mathematical representation du-
plicates the operations of the original system as closely as the understanding
of the system and mathematics permitted. At the same time, this mathemat-
ical representation should also be simple enough to allow analysing and eval-
uating the required performance characteristics. As a result, in most cases,
these precise mathematical models are approximations of the real character-
istics of the systems which are modelled [17].

56
CHAPTER 3. CONVENTIONAL METHOD 57

It is common practice to use queueing theory for investigating problems in


the performance modelling of communication and computer networks. This
theory originated in 1917 when Danish engineer A.K. Erlang probabilist-
ically analysed the behaviour of queueing systems, which exhibited certain
performance features of telephone exchanges [18]. Since then, researchers
around the world have been progressively developing it, particularly over the
last twenty years as they targeted much of the application towards digital
computer and communication systems performance modelling [74].
Applications of probability theory and stochastic process are the basis
of queueing analysis [52]. Many of computer networks’ diverse performance
measures are statistical averages. In a practical system of digital communic-
ation networks, there are many random factors that affect the performance,
and a certain scenario with a particular parameter configuration may lead to
different results on multiple instances. Thus, it is a common practice to run
multiple simulations or hardware-based testbed experiments with the same
parameters just to eliminate these random factors. This would result in even
larger quantity of simulations or experiments to be performed where differ-
ent parameter configurations are required to be evaluated. On the contrary,
with the probability theory and queueing theory, as the probability distribu-
tion derived from the mathematical equations are generally not influenced
by these random factors, a single calculation represents the weighted aver-
age, which is the equivalent of a sufficiently large amount of simulations or
experimentation performed [34].
Generally speaking, queueing theory involves the mathematical techniques
for analysing the flow of objects through a certain network. There are re-
strictions at one or more locations in this network on the times or rates at
which the objects are permitted to pass. A object that cannot immediately
pass some restrictions is stored in some real or virtual queue, and is not im-
mediately disappeared or disintegrated. As long as there are objects waiting
in the queue, the network facility is kept at the operational state, and en-
able the waiting objects to pass as rapidly as the restriction will permit [96].
When applying to the study of a packet switch network, the object is the
data packet, the network system that they flow through is usually a network
CHAPTER 3. CONVENTIONAL METHOD 58

of routers, and the queues are the waiting buffers on these routers. By using
appropriate stochastic processes to represent the behaviour of data packets
enqueue, being processed by the device, and dequeue, the performance of the
system, such as queueing delay and throughput, can be estimated [74].
The remaining content of this chapter is organised as follows: Section 3.2
presents various classifications of queueing model, based on different aspects
of their characteristics; Section 3.3 defines the performance measures in a
queueing system, and studies some important theories about their relation-
ship; Section 3.4 reviews the conventional method of analysing the funda-
mental Geo/Geo/1 queue; Section 3.5 makes detailed demonstration for the
definition of discrete-time time slot used in this research; Section 3.6 analyses
a Bernoulli/RED queue with the conventional method, and uses MATLAB
numerical solution to evaluate the modelling result in Section 3.7; Section
3.8 performs a review of the current research on larger scale queueing net-
works, especially the tandem queueing network; Section 3.9 concludes the
chapter by summarising the research method, advantages and limitation of
the conventional discrete-time queueing method.

3.2 Classification and characteristics


A queueing model is characterized by:

• The arrival process of the customers. The most basic model usually
assumes that the interarrival times are independent and have a common
distribution. In many practical situations, customers arrival rate can
be roughly represented by a Poisson process (exponential interarrival
times) for a Continuous-time system, or equivalently a Bernoulli process
for a Discrete-time system [90]. Customers may arrive one by one, or
in batches, which is the inspiration of many batched traffic arriving
process model.

• The behaviour of customers. In many scenarios, customers may be con-


sidered patient and willing to wait (for a infinite long time). Computer
CHAPTER 3. CONVENTIONAL METHOD 59

network modelling generally fits into this category as data packets in-
side a waiting buffer do not spontaneously leave the queue. However,
in some other applications, customers may be impatient and will leave
after exceeding certain amount of waiting time. One such example
would be when the customer are human individuals and they are wait-
ing inside a queue for a optional service.

• The service times. Similar to the customer arriving process, it is usually


assumed that the service time is independent and identically distrib-
uted, and that it is independent of the interarrival times in the most
basic model. In many common practical situations, the service times
can be considered deterministic (predefined value(s), non-random) or
exponentially distributed (a typical stochastic process). It may also
be more generalised, and be determined by multiple factors, such as
current or weighted queue length, time of the day, etc.

• The service discipline. Customers can be served one by one or in batch,


and there are many possibilities for the order in which they enter ser-
vice, including

– first come first served (first in first out), which means in order of
their arrival;
– random order;
– last come first served (last in first out), which means in a stack-like
service system;
– priorities, weighted service with different profile classes, such as
VIP customers receive prioritised service in a bank;
– processor sharing, which can be some kind of multiplexing mech-
anism.

• The service capacity (the number of services). It may be a single service


queue like a basic single processor router, or a multiple services queue,
such as in a bank when multiple cashiers are working at the same time.
CHAPTER 3. CONVENTIONAL METHOD 60

• The waiting room, or the capacity of the queue. There can be a limit-
ation for the size of the buffer (waiting room), which will in turn limit
the number of customers allowed in the system. In a computer network
queueing model, as the size of the device’s memory buffer is limited,
there can never be more packet inside the waiting queue that exceeds
that limit.

• The population of customer. There can also be a limitation for the


customer population. In most system, this parameter is consider to
be infinite as the population is usually much larger compare to the
queue size and the arrival rate/service rate. This generally results in
the arrival process being independent from the population pool [103].

Because of the relatively large quantity of defining characteristic for a queueing


system, Kendall introduced a shorthand notation to characterise a range of
these queueing models [71]. Initially, it is a three-part code, written as a/b/c.
The first letter specifies the interarrival time distribution (or the arrival pro-
cess) and the second one specifies the service time distribution (or the depar-
ture process). For example, the letter M is used for any stochastic process
with an exponential distribution (M stands for Markovian or Memory-less),
and letter D is used for a deterministic process where the interarrival or
service time is either a single fixed value, or a set of predefined value in a
certain order. For a more generalised random distribution which cannot be
described as Markovian or memory-less, the letter G is used. The third and
last letter in the notation system specifies the number of servers.
With this notation, it is possible to represent a specific type of queueing
network system relatively easy, such as M/M/1, M/M/c, M/G/1, G/M/1,
etc. The three-letter notation is also known as the basic model, in which
customers arrive one by one and they are always allowed to enter the system,
there is always room, there are no priority rules and customers are served
in order of arrival. When one of these assumptions does not hold, the basic
notation can be extended with extra letter(s) to cover other queueing models.
The most extended version of the notation consists of six letters: a/b/c/K/N/D
[71]. The first three letters follow the definition and order of those in the ori-
CHAPTER 3. CONVENTIONAL METHOD 61

ginal three-letter version. The fourth letter, K, is the capacity of the queue.
It is assumed that “K = ∞” if K is absent in the notation. The fifth letter,
N, is the size of the population of customers. It is also assumed to be of in-
finite if omitted. The final letter, D, is the queueing discipline. The default
value for this is FIFO (first in first out).

3.2.1 Continuous-time and Discrete-time queueing


model
A queueing system may be modelled either as a continuous time queue or
a discrete time queue, depending on the outstanding special properties of
the physical system been modelled, as well as the focus of the research.
In a continuous time queueing model, time is represented as a continuous
variables, and each time point is of infinitely small size, and at any given
point of time, at most 1 activity, or event, can happen. The counterpart of
a continuous-time model is a discrete-time model, which divides time into a
succession of equal intervals or slots of finite size. As in a discrete time model,
other stochastic processes must be represented with discrete models as well,
such as interarrival times and service time, so the Poisson process, which
is popularly used in a continuous time model needs to be substituted with
its discrete equivalent — Bernoulli process, and the exponential distribution
to be substituted with geometric distribution. As a result, the M/M/1 in
discrete time model is usually presented as Geo/Geo/1, where Geo stands
for the geometric distribution property of both interarrival and service time
[12].
An interesting observation is that the majority of the literature related to
queueing systems is dedicated mainly to continuous-time systems, contrary
to the developments in the practical world, where computers and commu-
nications are actually becoming more and more digital, or in other words,
discrete, in turns of many of their hardware working mechanism [105]. The
reason behind the relatively lack of research for discrete-time systems com-
paring to their continuous-time counterparts appears to be partially due to
the fact that continuous-time queues can be more straightforward to model
CHAPTER 3. CONVENTIONAL METHOD 62

than the equivalent discrete-time ones. Because of the definition, only a


single event (packet arrival/departure) can occur at any given moment in
a continuous-time system, whereas in discrete-time systems, the basic time
unit (a time slot) is of finite size. Consequently, the possibility of multiple
events taking place in any time unit must not be ignored. On the other hand,
the simplifications that are brought by discrete-time modelling and analys-
ing of a digital system can outweigh the extra complexities mentioned before,
in comparison with a continuous-time approach[74]. In many situations, it
would seem that discrete-time approaches of modelling and analysis are far
more suitable for a digital systems [116].
In this research, discrete-time queueing model is selected for not only the
above mentioned reason, but also due to the fact that some of the technique
involved in this research actually take advantage of the special properties of
the discrete-time model, which may be otherwise difficult to process with a
continuous-time assumption.

3.2.2 Markov process and Markov chain


In general, there are two types of process models that are used to describe the
arrival and departure process in a queueing system — deterministic process
and stochastic process [68][115].
With a deterministic process, a system involving it has no randomness
observed in the development of future states of that system. When using it
to describe the arrival or departure process of a queueing system, a determ-
inistic model will always produce the same output, which could be either
a fixed number, or a set of predefined numbers in a fixed order, given the
starting condition or the initial state of the system is the same. An arrival or
departure process may be precisely represented with a deterministic model
if all the relevant factors can be captured, and their behaviour, interaction
and influence to the outcome correctly comprehended. This, however, is not
always possible, or not cost effective.
A stochastic process, on the other hand, is a collection of random vari-
ables, and the development of future states of system that involve a stochastic
CHAPTER 3. CONVENTIONAL METHOD 63

process has random outcomes [35]. There is always a certain degree of in-
determinacy in such system, so that even if the starting condition or the
initial state of the system is known, there are multiple, sometimes infinitely
many directions in which it may evolve. A generic stochastic process can
be very abstract and very complicated. In certain instances, it may be very
difficult to describe a generic stochastic process with a analysable mathemat-
ical model. However, many practical systems involving some part which can
be well modelled by considerably more simple class of stochastic processes,
which is called Markov process. It is named after the Mathematician Andrei
Andreyovich Markov, who originally defined and studied this property [116].
A Markov process is a special type of stochastic process which has the
so called Markov property, or memoryless property. It means that only the
most recent known observation affects the future distributions, while the
earlier observations do not [36]. If X = (X(t), t ∈ T ) is a stochastic process,
and T is a totally ordered index set of time, then

Let t > tk > tk−1 > · · · > tk−m


if P [X(t) ≤ x(t)|X(tk ) = x(tk ), X(tk−1 ) = x(tk−1 ),
· · · , X(tk−m ) = x(tk−m )]
=P [X(t) ≤ x(t)|X(tk ) = x(tk )],
X(t) is a Markov process. (3.1)

If a stochastic process has Markov property, and can be describe as a Markov


process, then the analytical procedure could be greatly simplified. The devel-
opment of future states for a system involving Markov process only depends
on the current state, and the history which it evolved into the current state,
which in some cases may be very complex or difficult to analyse, is irrelevant.
If the set of states of a Markov process is countable (either finite or
infinite), the stochastic process is called a Markov chain[74]. It can be defined
as a sequence of random variables X1 , X2 , X3 , · · · with a countable set of
possible values of Xi that forms the state space of the chain, and has the
Markov property that the probability of moving to next state depends only
CHAPTER 3. CONVENTIONAL METHOD 64

on the present state and not on the previous states.


If the transition probabilities of a Markov chain are completely invariant
to the parameter values, the Markov chain is said to be homogeneous. In a
simple computer network scenario consisting of a Constant Bit Rate (CBR)
traffic source and a intermediate node with steady packet forward speed, if
using a discrete-time model to represent such system, a homogeneous Markov
chain can model the queue length process of the node with high precision. In
such model, the packet arrival rate is not changed overtime due to the type
of traffic source, and so is the packet departure rate due to the characterist-
ics of the service mechanism. As a result, the transition probability of the
queue length process is invariant to all parameter values, which satisfies the
definition of homogeneous Markov chain.
However, with a more complex model, such as if the variant traffic intens-
ity of peak hours and idle hours are considered during the modelling process,
the transition probability is likely to change over the time values. In this
condition, the Markov chain is said to be inhomogeneous, or heterogeneous.
In many practical Markov chains, the system transit into or out of certain
states at some particular interval. In many cases, each state is repeatedly
visited. This is more likely to be true for those with a finite set of states.
Generally speaking, the number of time slots between successive visits to a
particular state can be represented as a random variable. In many properly
designed systems, no matter which state it initially starts with, eventually, all
other state can be reached, and the chain settles into repeatedly visiting (with
random number of tine slots between successive visits) all desired states.
However, in some improperly designed practical systems, the chain may get
stuck in a state or a subset of states where it cannot get out of, and other
states in the chain are never reached.
In a Markov chain, starting from any state, at a particular slot, if every
other state as well as itself can be reached, each in a finite number of trans-
itions, and each with a non-zero probability, then this Markov chain is said
to be irreducible. Otherwise, it is called reducible. [74]
In a homogeneous and irreducible discrete-time Markov chain, starting
from a particular state A, the probability of returning to itself (state A) for
CHAPTER 3. CONVENTIONAL METHOD 65

the first time is positive only after certain numbers of time slots, written as
i1 , · · · , in . If these set of positive integers i1 , · · · , in has the highest common
factor m and m > 1, then state A is a periodic state with period m. If m = 1,
then the state is aperiodic. For an irreducible Markov chain, if one state is
periodic with a period of m, then all other states are also periodic with
the same period value. The similar statement is also true for an irreducible
Markov chain with an aperiodic state. [31]
Another relevant definition regarding Markov chain is transient and recur-
rent states. In a chain, starting from state A, if the probability of eventually
returning to itself is less than one, then state A is call a transient state.
Otherwise, if the probability is exactly one, it is called a recurrent state.
In an irreducible chain, all states share the same transient/recurrent status,
and the chain with transient/recurrent states is called a transient/recurrent
chain. For any discrete-time Markov chain, exactly one of the following three
statements is true:

1. all the states are transient;

2. all the states are null recurrent, which means that it requires an infinite
amount of time slots before any state is revisited the first time;

3. all the states are positive recurrent, which means that time slots re-
quired for the first revisit to be a finite value.

3.3 Performance measures and Little’s


result
When modelling with computer network queueing system, two main perform-
ance measures are usually concerned: the waiting time and the throughput,
which are given the symbols W and S, respectively [74].
The waiting time W of a queueing system is defined as the time interval
from when an arbitrary customer enters the system to the time that customer
leaves, including the time spent in service. A variant of this is the queueing
time Q which is defined as the time interval from when an arbitrary customer
CHAPTER 3. CONVENTIONAL METHOD 66

enters the system to the time the customer leaves, excluding the time spent
in service. In a queueing model with stochastic arrival or departure process,
this is usually calculated as the mean waiting time, which is also usually
written as W .
The throughput S of a queueing system is defined as the number of cus-
tomers passing through the system per time unit (time slot). A variant of
this is the normalised throughput, which is usually given the same symbol S,
is defined as the number of customers passing through the system per mean
customer service time.
A secondary performance measure is the probability of blocking, Pb , which
is defined as the fraction of customers that arrive to find no waiting room
available to accommodate them. Clearly, this measure requires the waiting
room in the system to be finite, as it would otherwise be meaningless.
One of the most important and useful performance measures in any
queueing system is the mean waiting time, as it corresponds to the queueing
delay in a model for computer network. Little’s result [86] specifies a relation
between the mean waiting time W , the mean arrival rate of customers into
the systems λ and the mean number of customers stored in the system L, as

L = λW (3.2)

Since L is often easy to calculate, and λ is usually specified, then Little’s


result gives a simple way of calculating the mean waiting time of any queueing
system, and furthermore, this calculation depends only on mean value and
not on distributions [116].

3.4 Geo/Geo/1 queue


The continuous-time M/M/1 queue and its discrete-time counterpart Geo/Geo/1
queue is one of the most basic types of queue. However, it has a very im-
portant role in this and many other researches, as it may be developed into a
much more complicated one that a specific research requires, and the result of
CHAPTER 3. CONVENTIONAL METHOD 67

this queue is usually the basic form of others as well. More importantly, the
equilibrium-based method demonstrated with Geo/Geo/1 queue is essential
for the conventional queueing method.
In a homogeneous Geo/Geo/1 queue, arrivals form an independent Bernoulli
process, with an ∈ {0, 1}, n = 1, 2, 3, · · · ,, specifying either a customer ar-
rived in that time slot or not, and there is unlimited waiting room. The
queueing discipline is first-in first-out (FIFO). Let the probability of an ar-
rival in a slot be α and the probability of a departure in a slot be β. Using
the conventional method, assuming that the queueing system is in equilib-
rium (where the states probability distribution is stationary), then the state
transition diagram is shown in Figure 3.1, and the queue length process
{xn , n = 0, 1, 2, · · · } (where subscript n represents the number of packet in-
side the queue) is a Markov chain with infinite state space. It is not difficult
to show that this Markov chain is irreducible, aperiodic and positive recur-
rent, and thus has a unique stationary probability distribution, provided that
the mean rate of arrival per slot α is strictly less than the mean rate at which
packets can be served per slot β [116]. This should be intuitively obvious in
that if α > β, the queue length process will become unstable and the number
of customers in the system will build up to infinity, and the chain become
transient as longer numbered states can no longer be reached. If α = β, it
would seems that the queue may still remain stable and not toward infinity.
With α = β, this would mean that the service must never be inactive, and
only then it may keep up with the arrival, and statistically, the queue length
may only remain, never reduce. However, consider that in any queueing sys-
tem, the service of the queue is not active when the queue is empty. This
translate to the utilisation of the queue is strictly smaller than one. The lost
of service power leads to the increasing queue length, which is not possible to
reduce. Eventually, the queue length has not way to reduce, but is possible
to increase, and it will still build up to infinity, although the rate at which
the queue length is increasing is also infinitely small, and the chain is null
recurrent. From now on, and in this chapter, only the positive recurrent
chain which means α < β will be discussed.
Balance equation represents the characteristics that probability of trans-
CHAPTER 3. CONVENTIONAL METHOD 68

Figure 3.1: State Transition Diagram for a Geo/Geo/1 Queue

iting into any state is equal to the probability of transiting out of that state
when the system is at equilibrium. Under the assumption that α < β, balance
equations of the discrete-time M/M/1 queue can be expressed as follows:

Π0 = Π0 (1 − α) + Π1 [(1 − α)β] (3.3)


Π1 = Π0 α + Π1 [αβ + (1 − α)(1 − β)] + Π2 [(1 − α)β] (3.4)
Π2 = Π1 [α(1 − β)] + Π2 [αβ + (1 − α)(1 − β)] + Π3 [(1 − α)β] (3.5)

in general,

Πk = Πk−1 [α(1 − β)] + Πk [αβ + (1 − α)(1 − β)] + Πk+1 [(1 − α)β]


k = 2, 3, 4, · · ·
(3.6)

Πi represents the probability of the queue to be in state i. Solving these


equations recursively,

α
Π1 = Π0 (3.7)
β(1 − α)
α2 (1 − β)
Π2 = Π0 2 (3.8)
β (1 − α)2
α3 (1 − β)2
Π3 = Π0 3 (3.9)
β (1 − α)3

or in general,

αk (1 − β)k−1
Πk = Π0 , k = 1, 2, 3, · · · (3.10)
β k (1 − α)k
CHAPTER 3. CONVENTIONAL METHOD 69

writing

α(1 − β)
γ= (3.11)
β(1 − α)

then

γk
Πk = Π0 , k = 1, 2, 3, · · · (3.12)
1−β

using the normalising equation



X
Πk = 1 (3.13)
k=0

then equations give


 ∞ 
1 X k
Π0 1 + γ =1 (3.14)
1 − β k=1

thus Π0 is obtained as

(1 − β)(1 − γ)
Π0 = (3.15)
1 − β(1 − γ)

the final result for the equilibrium distribution is thus obtained from 3.12
and 3.15 as

(1 − γ)γ k
Πk = , k = 1, 2, 3, · · · (3.16)
1 − β(1 − γ)

The mean normalised throughput of this queue is given by the fraction of


time the server is busy, which is

X
S= Πk = 1 − Π0 (3.17)
k=1
CHAPTER 3. CONVENTIONAL METHOD 70

substituting for Π0 from Equation (3.15) then

γ
S= (3.18)
1 − β(1 − γ)

substituting for γ from Equation (3.11) then

α
S= (3.19)
β

This normalised quantity is in units of customers per mean customer service


time. For throughput in a slot,

S=α (3.20)

This means that with the α < β restriction and the system in equilibrium,
the mean rate per slot at which customers pass through the system is equal
to the mean rate of customer arrivals per slot.
The mean waiting time can be found directly from Little’s result as

P
kΠk
k=0
W = (3.21)
α

This gives

hX
k−1
i γ(1 − γ)
W = kγ
k=1
[1 − β(1 − γ)]α
γ
=
α(1 − γ)[1 − β(1 − γ)]
1
= (3.22)
(1 − γ)β

Normalising to mean customer service time, then

1
W = (3.23)
1−γ

This method to calculate throughput and waiting time is the same for any
CHAPTER 3. CONVENTIONAL METHOD 71

queue, as long as it is in the equilibrium state. Depends on the different


expression of the distribution, the final results will be different, but they
will not contain distribution, only the mean value that is decided by α, β,
and maybe some other characteristic parameter of the queue, such as the
dropping probability for a queue with enabled RED mechanism.

3.5 Time slot definition


Among the majority of research regarding discrete-time network queueing
models, the time slot definition method known as Early Arrival System (EAS)
is used [31]. In this type of slot definition, all the possible arrival events occur
at the beginning of every time slot, just after the edge of the slot, while all
the possible departure events occur at the end of every time slot, just before
the edge of the beginning of the next slot. In a EAS system, a packet that
arrives at the time that the queue is empty may receive service in that same
slot. Thus, the waiting time for those packet is zero time slot. The other
typical type of slot definition method is known as Late Arrival System (LAS).
In comparison with EAS system, as the name suggests, the only difference
is the order switch of arrival and departure event in every time slot. As a
result, in a LAS system, packet arrives in the queue at any given moment
requires at least one time slot waiting in the queue before receiving service.
The selection of EAS over LAS in this research is rather common among the
study with computer network, as in a digital network system, the customer
departure service, which usually representing hardware of network device
processing packet inside its buffer, cannot become active until a packet has
arrived in the queue. In other words, this model is more consistent with the
movement of data in digital system than the alternative.
In the analysis of discrete time queueing systems, the chronological details
of the activities that taken place within a slot is unimportant. Within each
time slot of a finite size, all arrivals that fall inside the boundary of the time
slot will be treated as equivalent arrivals at the beginning of the time slot,
and the similar is done for all departures at the end of the time slot.
CHAPTER 3. CONVENTIONAL METHOD 72

There are two logical choices for observations the customer behaviour
within a time slot. One is at the edge between different slots, and the other
is at the centre of the slot. However, there are different observational results
in customer numbers between these two methods. At the slot edge, any
departure is guaranteed to have completely left the system, and no arrivals
have begun entering the system. At the slot centre, the result in reverse can
be observed. Consequently, the state transition probabilities are different
with these two observations.
Considering a simple Geo/Geo/1/2 queue, with the arrival rate of α and
the service rate of β. If observed at the centre of the slot, the state transition
diagram will be showed in Figure 3.2

Figure 3.2: Centre Observation

However, if the same system is observed at the slot edge, the transition
diagram will become as in Figure 3.3

Figure 3.3: Edge Observation

If given example values to α,β such as 0.3 and 0.6 respectively, then the
transition probability matrix for centre observation is given by:
 
0.70 0.30 0.00
p1 = 0.42 0.46 0.12 (3.24)
 

0.00 0.42 0.58


CHAPTER 3. CONVENTIONAL METHOD 73

while the transition probability matrix for edge observation is given by:
 
0.88 0.12 0.00
p2 = 0.42 0.46 0.12 (3.25)
 

0.00 0.60 0.40

The queueing model of the previous section uses the centre observation, as
is all the other models in this research unless specified otherwise.

3.6 Geo/Geo/1/J queue with classic RED


drop
In order to analyse the effect of the RED drop directly on the queue status us-
ing the conventional equilibrium-based queueing method, the basic Geo/Geo/1
queue needs to be modified. The independent Bernoulli process is still used
as the arrival model here at the moment, so that the source is constant bit
rate (CBR) in nature, and there is reaction to the dropping event.
In the most common configuration, RED at the bottleneck gateway queue
drops the incoming arrival packets before they can enter the buffer queue,
if certain dropping criteria is met. Therefore, from the perspective of the
queue, even if the incoming traffic arrival rate stays the same, the rate at
which packets enter the queue will be slowed due to the dropping action.
To represent this mechanism with a conventional queueing model, a reduced
arrival rate is used in states where active drop is taking effect.
The new modified queue is similar to the basic Geo/Geo/1 queue, but has
a finite waiting room J and a changing arrival rate after the lower threshold,
configured by the RED parameters. This is used to represent the possible
dropping operation by the RED algorithm before the arrival packets may
enter the queue. Outside the influence of the RED, the arriving process
is still a simple Bernoulli process, with a “constant” arrival rate of α, and
the “varying observed arrival rate” here is actually the probability of packet
enter the queue, after varied RED dropping rate has been applied for each
different queue length state. As the equilibrium states are discussed here,
CHAPTER 3. CONVENTIONAL METHOD 74

the state probability distribution of the network is stable, and the previous
queue length that used to calculate average queue length will always equal to
current queue length, thus, current queue length is the average queue length,
and can be directly used to calculate the dropping probability. Due to the
classic RED policy of 100% drop rate after the upper threshold, it is obvious
that the queue length will never be longer than thmax + 1, providing that
the thmax + 1 is smaller than the waiting room buffer size B, which is to be
expected for a reasonable RED parameter configuration.
Writing lower threshold L and upper threshold J, then according to the
policy of the classic RED, when the average queue length is larger than L,
dropping action begins. At the state of L, based on the classic RED dropping
probability calculation formula

avg − thmin L−L


pd = pmax = pmax (3.26)
thmax − thmin J −L

it will be 0, and the arrival rate will not change; for any states between L
(excluded) andJ (included), the dropping rate follow the above formula, and
has a value between 0 (excluded) and pmax (included). In classic RED setup,
pmax should be a value smaller than 1, thus, in the state J, the arrival rate
is small but not 0. However, after thmax , the drop rate is set at 1 constantly,
thus, J+1 is the last possible state, and the arrival rate at this state is 0.
The state transition diagram can be drawn as in Figure 3.4.

Figure 3.4: State Transition Diagram for a Geo/Geo/1/J RED Queue


CHAPTER 3. CONVENTIONAL METHOD 75

The queue length process is a Markov chain with a finite state space. It
is irreducible, aperiodic and positive recurrent and clearly satisfies the con-
ditions to have a unique stationary probability distribution, which is arrival
rate is always smaller than departure rate. The balance equation of this
queue is expressed as follows:

Π0 = Π0 (1 − α) + Π1 [(1 − α)β] (3.27)


Π1 = Π0 α + Π1 [αβ + (1 − α)(1 − β)] + Π2 [(1 − α)β] (3.28)
Π2 = Π1 [α(1 − β)] + Π2 [αβ + (1 − α)(1 − β)]
+ Π3 [(1 − α)β] (3.29)
ΠL = ΠL−1 [α(1 − β)] + ΠL [αβ + (1 − α)(1 − β)]
+ ΠL+1 [(1 − αL+1 )β] (3.30)
ΠJ+1 = ΠJ [αJ (1 − β)] + ΠJ+1 [αJ+1 β + (1 − αJ+1 )(1 − β)] (3.31)

Based on the queue definition and RED dropping function, there is

k−L
αk = α(1 − pk ) = α(1 − pmax ),
J −L
k = L + 1, L + 2, L + 3, · · · , J (3.32)

again, solving the equations recursively, then there are

αk (1 − β)k−1
Πk = Π0 k , k = 1, 2, 3, · · · , L (3.33)
β (1 − α)k
αL+1 (1 − β)L
ΠL+1 = Π0 L+1 (3.34)
β (1 − α)L (1 − αL+1 )
αL+1 αL+1 (1 − β)L+1
ΠL+2 = Π0 L+2 (3.35)
β (1 − α)L (1 − αL+1 )(1 − αL+2 )
αL+1 αL+1 αL+2 (1 − β)L+2
ΠL+3 = Π0 L+3 (3.36)
β (1 − α)L (1 − αL+1 )(1 − αL+2 )(1 − αL+3 )
CHAPTER 3. CONVENTIONAL METHOD 76

so in general,



 Π0 k=0
 αk (1−β)k−1



 Π0 β k (1−α)k
k ∈ [1, L]
L+1 L
Πk = Π0 β L+1α(1−α)(1−β)
L (1−α
L+1 )
k =L+1 (3.37)
αL+1 αL+1 (1−β)L+1

Π0 β L+2 (1−α)L (1−αL+1 )(1−αL+2 ) k =L+2




 Π αL+1 αL+1 ···αk−1 (1−β)L+2

k ∈ [L + 3, J + 1]

0 β k (1−α)L (1−αL+1 )···(1−αk )

the normalising equation now becomes

j+1
X
Πk = 1 (3.38)
k=0

j+1
X
Πk = Π0 + (Π1 + · · · + ΠL ) + (ΠL+1 + · · · + ΠJ+1 ) = 1 (3.39)
k=0

using the expression from 3.37, then

L
γk
P
αL+1 (1 − β)L
Π0 + Π0 k=1 + Π0
1−β (1 − α)L (1 − αL+1 )(1 − αL+2 ) · · · (1 − αJ+1 )
[(1 − αL+2 )(1 − αL+3 ) · · · β J−L + αL+1 (1 − αL+3 ) · · · β J−L−1 (1 − β)
+ · · · + αL+1 αL+2 · · · αJ (1 − β)J−L ] = 1 (3.40)

All the coefficient of Π0 in Equation (3.40) are β and αi , which can be cal-
culated directly by using the dropping probability function and the original
α. The equation is relatively complex, as the arriving rates of every state
between the two thresholds are different than each other. However, con-
siderable patterns can be identified. Thus, it is possible to use a computer
programme to easily solve this calculation. Some MATLAB functions are
created for this purpose, which will be used for numerical solution validation
in Section 3.7.
CHAPTER 3. CONVENTIONAL METHOD 77

3.7 MATLAB numerical solutions and


analysis
The MATLAB numerical solutions here is mainly for the verification of the
mathematical equation that deduced in the previous section. Because of the
complexity of the mathematical expression, it is very difficult to calculate
the value of Π0 manually, not to mention to get the entire distribution by
calculating other state value that depends on the value of Π0 , or analyse
the behaviour of the queueing system, which depends on the value of the
distribution itself. However, by using a computer programme (MATLAB in
this case), this is no longer an obstacle.
The main function here is for the calculation of the Πi distribution. Some
other functions can then take Πi as an input and calculate performance
measures such as throughput or waiting time. The verification begins with
a small and relatively easy scenario, which should be relatively easier to
decide that whether the equation from Section 3.6 is accurate. Assuming
a queueing system with α = 0.1, β = 0.2, the classic RED is applied to
the queue, with the parameter setting as thmin = 5, thmax = 8, pmax = 0.2
(referred as scenario 1 later on), then by using the calculation programme
and MATLAB plotting tool, the state probability distribution of this scenario
is show in Figure 3.5.
It is clear from Figure 3.5 that because the arrival rate α is smaller than
the service rate β, the distribution weighs heavily on the small numbered
states. With the current RED parameter setting, the observed arrival rate
(packet enqueue rate) after dropping is displayed in Figure 3.6.
As is shown in Figure 3.6, because no drop happens in the states that
the queue length is smaller than the thmin = L = 5, the queue arrival rate
before this threshold remain the same as source arrival rate α. The queue
arrival rate becomes gradually smaller after this threshold, and become 0
after exceeding the upper threshold thmax = J = 8. The mean normalised
throughput is represented as the fraction of time when the queue is not empty,
CHAPTER 3. CONVENTIONAL METHOD 78

0.7

0.6

0.5
Probability

0.4

0.3

0.2

0.1

0
0 1 2 3 4 5 6 7 8 9
State (Πk)

Figure 3.5: Queue Length distribution in scenario 1


0.12

0.1

0.08
Rate

0.06

0.04

0.02

0
0 1 2 3 4 5 6 7 8 9
αk

Figure 3.6: Observed arrival rate in scenario 1

thus can be directly calculated from

J
X
S= Πk = 1 − Π0 ≈ 0.4995 (3.41)
k=1

The mean normalised waiting time can be solved using Little’s equation, then
CHAPTER 3. CONVENTIONAL METHOD 79

J
P
β kΠk
k=0
W = ≈ 1.7845 (3.42)
α

Comparing to the basic Geo/Geo/1 queue with the same α and β using the
equations from Section 3.4,

α
S= = 0.5 (3.43)
β

and

1
W = = 1.8. (3.44)
1−γ

This means that at a low traffic rate and a low pmax setting in RED para-
meter, only very few packet are actually affected by drop, because of the
very low probability that the queue length actually get over the thmin ,thus,
probabilistically speaking, the pd remains as a number very close to 0 during
the experiment.
As it was demonstrated that states before thmin has the following rela-
tionship with each other

α(1 − β)
Πk+1 =Πk
β(1 − α)
=Πk γ, k = 1, 2, 3, · · · , L − 1 (3.45)

under the assumption that α < β,

α(1 − β) − β(1 − α) = α − β < 0


which means α(1 − β) < β(1 − α)
α(1 − β)
since γ =
β(1 − α)

this means that γ is always a value smaller than 1. Together with Equation
CHAPTER 3. CONVENTIONAL METHOD 80

(3.45), the result is

∀k ∈ [2, J − 1], Πk+1 < Πk (3.46)

As for the distribution relationship within range between thmin and thmin ,
because the RED active dropping operation is applied here, which means
that the actual arrival rate will be even smaller than before, and the previous
conclusion in Equation (3.46) remains. As for their relationship between Π0
and Π1 , because

α
Π1 = Π0 (3.47)
β(1 − α)

and

α − β(1 − α) = α − β + αβ = (1 + β)α − β (3.48)

β
this means that in the situation of α > 1−β , Π1 will be greater than Π0 , thus
becoming the highest value in the distribution. Another scenario is designed
to verified this conclusion. Assuming that a queue with α = 0.18, β =
β
0.2, thmin = 5, thmax = 8, pmax = 0.2 (notice that α = 0.18 > 1+β = 0.2
1.2

1.667), then the distribution is shown in Figure 3.7
It is obvious that the probability that the queue in larger queue length
states is much greater than the previous one. For this queueing system, the
mean normalised throughput becomes

S = 1 − Π0 = 0.8537, (3.49)

and the normalised waiting time becomes



P
β kΠk
k=0
W = ≈ 3.6832 (3.50)
α

For comparison, in a Geo/Geo/1 queue with same parameters α and β, the


mean normalised throughput and the normalised waiting time are 0.9 and
CHAPTER 3. CONVENTIONAL METHOD 81

0.18

0.16

0.14

0.12
Probability

0.1

0.08

0.06

0.04

0.02
0 1 2 3 4 5 6 7 8 9
State (Πk)

Figure 3.7: Distribution with α = 0.18, β = 0.2

8.2 respectively. The difference here between the two groups of values is
because of the RED active dropping mechanism, and the difference is already
quite significant, especially for the mean waiting time, which represents the
queueing delay in a equivalent network system. The reason for the basic
Geo/Geo/1 has a much larger waiting time value is because of its queue is
modelled as with infinite size, and thus the possibility of a very large queue
means the possibility of a very large waiting time, which will significantly
bring up the weighted waiting time as a result, just like long queue will
usually cause large network delay in real computer communication network.
The results from these two scenarios lead to the following conclusions: the
higher arrival rate α is, relative to the service rate β, the higher probability
the system will be in a larger queue length state. In addition, when α gets
close to β, the overall dropping probability of the queueing system increase,
and this increase is very dramatic when α becomes very close to β.
Unfortunately, the conventional equilibrium-based queueing method can-
not be used to analyse the performance of a queueing system if the queue is
not expected to reach equilibrium state, or the parameter variation is signi-
ficant and the queue never converge on the equilibrium state. This can be
observed even with a basic Geometric arrival process, if the parameter α is
CHAPTER 3. CONVENTIONAL METHOD 82

configured to be greater or equal than β, or α changes frequently before the


queue may converge on the equilibrium state.

3.8 Queueing networks


In a practical computer network, there are usually multiple routers working
correspondingly. If a significant slow link between these routers or slow
service rate at one of them can be identified and it remains for the duration
of a connection session, then the associate waiting queue can be considered
the bottleneck queue for this instance, and it can generally be analysed in
isolation to understand the performance measures of the system. However,
in many other scenarios, this may not be possible, and all of the queues have
to be analysed, as generally called a queueing networks [69].
Multiple queues may forms queueing networks in different fashions. The
two most fundamental form for this formation is: two queues line up one
behind the other, which is called a tandem queue, or two queues works beside
one another, which is called a parallel queue [31]. Other complex queueing
networks are all composed of these two fundamental formations.
In this research, only tandem queueing networks is considered, as it rep-
resents a more predominant features in the practical network systems as data
packets is forwarded one hop after another. As the word tandem refers (an
arrangement of several objects that are lined up one behind the other and
are all going to the same destination), a tandem queue is a type of queueing
networks where several queues line up one after another, and with the traffic
going from one end of the network to the other.
Jackson network [63] was widely considered to be the first significant
development in the theory of networks of queues [109]. A network of m
interconnected queues is known as a Jackson network if it meets the following
conditions:

• All jobs at each node are served on a first-in, first-out basis. In other
words, there is no priority in serving the jobs.

• All jobs at each node belong to a single “category”. Jobs must follow
CHAPTER 3. CONVENTIONAL METHOD 83

the same service-time distribution and the same routing mechanism.


The product form conclusion requires all the arrival processes are Pois-
son process

The most important conclusion of the Jackson network is the product-


form solutions for the equilibrium distribution which is particularly simple
to compute [63]. If a vector of independent random variables (Y1 , Y2 , · · · , YJ )
where each Yi has a Probability Mass Function (PMF) of

λni
p(Yi = n) = p(Yi = 0) · (3.51)
Mi (n)

where
n
Y
Mi (n) = µi (j) (3.52)
J=1

If

X λni
<∞ (3.53)
n=1
Mi (n)

which requires p(Yi ) is well defined as


!−1
X λni
p(Yi = 0) = 1+ (3.54)
n=1
Mi (n)

then the equilibrium distribution of the open Jackson network has the fol-
lowing product form:

j
Y
π(X) = p(Yi = Xi ), where X ∈ Z+j (3.55)
i=1

This conclusion makes the equilibrium distribution of a Jackson network


relatively easy to obtain as the PMF function for each node (Poisson distri-
bution) is simple [23]. It has inspired much research attempting to generalise
and apply the ideas of the this theory to search for similar product-form
CHAPTER 3. CONVENTIONAL METHOD 84

solutions in other networks.


One important extension for the Jackson network is its generalisation.
The product-form conclusion of Jackson network requires all arrival process
to be represented as Poisson process. This limits its application in many
practical scenarios where Poisson process is not considered precise. In a
generalised Jackson network, allows renewal arrival processes [26] that need
not be Poisson processes. However, this general form generally does not have
a product-form stationary distribution, so approximations are required. It
has been shown that the queue-length process of an open generalised Jackson
network can be approximated by a reflected Brownian motion [73][61][62]
Another notable extension in this area is the Gordon-Newell theorem [50]
which describes a finite population of jobs travel around a closed network
that also have a product-form solution. In the original Jackson network, the
network is an open network, and jobs can enter or depart from the network.
In a closed network, jobs can neither enter nor depart from the network [11].
Jackson’s theorem of product-form distribution cannot be applied to closed
networks, mostly because the queue length at a node in the closed network
is limited by the population of the network, where it is assumed to infinite
in an open network. The Gordon-Newell theorem calculates the open net-
work solution and then eliminates the infeasible states by renormalising the
probabilities [29]. Buzen’s algorithm or mean value analysis can be used to
calculate the normalising constant, largely alleviate the complication brought
by having to enumerate the whole state space [21].
It can be observed that while there are many differences between the ana-
lysis methodology of queueing networks and earlier isolated queue, mostly
due to the larger scale and the interdependency, conventional method of
seeking equilibrium distribution is dominant in either field. While the equi-
librium distribution describes the state that the system eventually converges
regardless of its initial state [91], there are generally conditions that have to
be satisfied, in order for this to become determinable.
CHAPTER 3. CONVENTIONAL METHOD 85

3.9 Summary and discussion


By its definition, AQM is ‘active’, which means that it is designed to actively
and dynamically predict and avoid the network congestion before it happens.
The dropping/marking behaviour in AQM is not a method to directly prevent
the instantaneous queue size from reaching the maximal size. Instead, it is a
mean to send congestion notifications to TCP congestion control mechanism,
thus manipulate and reshape the incoming traffic rate in the future, and try
to maintain the queue size within the most desirable and acceptable range.
From the results of the MATLAB numerical solution that showed in the
previous section, it is clear that in cases of α < β, the system has the highest
probability in state 0 and state 1, and the smaller queue length states actually
include the majority of the distribution accumulation. This happens to be
true even if the α are very close to β, in which case the state 1 has a higher
probability than state 0. As RED will only affect the states with larger
number, which happen to have a relatively low distribution probability, this
means that only very few packets are affected and dropped by the RED
mechanism in this traffic condition. It is possible to make α > β in this
case. A practical example is a CBR/UDP traffic source keep sending traffic
to a gateway at a rate faster than the gateway can handle. In this case, the
queue is expected to be full most of the time. As the dropping probability
is constantly 1 after thmax , the RED actually act no different than the basic
drop-tail queue after this point. What really makes RED an active queue
management scheme is the linear random drop happened before reaching the
upper threshold, but the source needs to be responsive (namely, as TCP) to
those events so that it can actually be effective.
In the dynamic interaction of TCP and RED, when a gateway with RED
drops a packet, TCP source will react to this after the timeout period has
been reached, or duplicated acknowledgement packets from the destination
has already confirmed the loss. It will assume that congestion has occurred
in the connecting network, thus reduce the transmitting window in a certain
way, and slowly begin to increase the speed if packet lost no longer continues.
In the queueing model, this dynamic event can be represented by dividing
CHAPTER 3. CONVENTIONAL METHOD 86

it into many small time periods. If the time period is small enough com-
paring to the processing speed of network interface, then without the upper
layer’s control, the packet transmission process can be easily represented by
a memoryless process, and the basic model introduced in this chapter can be
still used. When every time period ends, it may have a probability to trans-
form into different states, which is determined by the state where the upper
layer protocol is currently. In practical TCP/RED system, this is mostly
determined by the congestion window size. By stochastic representation of
congestion window size based on queueing performance of previous time slots,
performance over a large number of time slots with varying parameters can
be precisely calculated.
Consider a scenario with a single TCP source sending to through a RED
gateway. In the first time period, TCP sending packets very slowly, and the
queue is likely to be relatively empty. This can be represented by a queueing
model where α  β, and the distribution will weigh heavily on state 0. The
higher numbered states that within dropping range has a probability very
close to zero. When this time period is over, most likely, it will jump into
a different state where TCP transmitting packets at a faster rate, where a
balancing model with more probability density on the higher numbered states
can be established. With each transmission rate increase, the chance that a
packet been dropped during the period will increase, and so does the change
that it will change into a lower speed in the following time period. Putting all
these time periods together, each of them represented by different parameters,
then it actually represents the dynamic behaviour of the TCP/RED during
the entire time, and performance can be calculated.
By simply change the active dropping probability calculation method, this
model can be easily modified to other AQM schemes that drops packet with
a certain dropping function. Other schemes, which uses adaptive measures,
is actually using different dropping function (caused by changes of other
parameters such as the threshold or pmax ) in different time period, so by
using their according function during different time period, this model can
also apply to them as well.
When the traffic flow contains more than one TCP source, or even some
CHAPTER 3. CONVENTIONAL METHOD 87

other non-responsive sources, a similar model can also be applied. Every


packet dropping will only affect the specific traffic flow, and based on the
composition of the traffic, it may be TCP flow packet or a non-responsive
one, and their respective possibility can be calculated.
Chapter 4

Transient Modification for the


Conventional Discrete-time
Queueing Method

4.1 Introduction
This chapter presents the analysis on the drawback and limitation of the
conventional discrete-time modelling and calculation method in a practical
dynamic network scenario. A new modelling and calculation method is
demonstrated in detail, which is validated by results comparison with the
conventional method in a typical queueing scenario.
Considering a Geo/Geo/1 queue (discrete-time M/M/1 queue) to be the
most basic and fundamental model of the discrete-time queueing family, there
is much research that aims to extend the queueing model [105][5]. Most of
the extension efforts focuses on replacing the basic arrival and departure
model with a more complicated and more accurate ones[118][47]. Almost
all of the derived models still use a similar method for calculation, which
assumes the queueing system is in the equilibrium state and solves the balance
equations to acquire the queue length state probability distribution for the
queueing system. However, requiring the equilibrium assumption is a severe
limitation for this method, since the practical network system is unlikely to

88
CHAPTER 4. PROPOSED TRANSIENT MODIFICATION 89

be stabilised in this state. As a result, a new modification of the conventional


method is proposed which does not require the equilibrium assumption for
the calculation of the queue length state probability distribution.
There is other research of seemingly similar topics such as [51][82][117].
Most of them, however, focus on continuous-time queueing systems rather
than discrete-time queueing systems which are the focus of this thesis. Much
of the current research also focuses on the mathematical properties of the
transient behaviour of the queueing system, such as the convergence rate
[70][6] or transient probabilities [53][76], while this chapter introduces a re-
latively simple modification the the conventional method which allows the
performance of the queueing system be obtained before the equilibrium state
is reached. This modification is utilised in the research of dynamic network
behaviour in Chapter 5 where its simplicity as well as time-variant nature is
crucial.
The remaining content of this chapter is organised as follows: Section 4.2
performs analysis on the conventional equilibrium method where its limita-
tion on dynamic network scenarios is indicated; Section 4.3 presents detailed
derivation and demonstration of the proposed modification to the conven-
tional method; Section 4.4 presents validation for the proposed transient
method by comparing its calculation result with the conventional method
under a typical queueing scenario, which show close match between them;
Section 4.5 demonstrates the advantages of the proposed method by ana-
lysing scenarios that cannot usually be calculated using the conventional
method; Section 4.6 concludes this chapter by summarising the motivation
and advantages of the proposed modification, the accuracy of which is valid-
ated by well-matched results comparison with the conventional method.

4.2 Limitations of the conventional method


In the conventional method, equilibrium state is required. It is usually arbit-
rarily assumed to be possible to reach and referenced several times through-
out the calculation process. In order to reach this state, for an irreducible,
CHAPTER 4. PROPOSED TRANSIENT MODIFICATION 90

aperiodic and positive recurrent discrete-time Geo/Geo/1 Markov chain, the


mean arrival rate α strictly less than the mean departure rate β is required
[116]. However, in the practical network system, if the burstiness of the TCP
traffic is considered, the maximal possible arrival rate is very likely to be
greater than the mean service rate[56], at least during some of the time slots.
As it is extremely unlikely that many network users peak their net-
work traffic at the exact same time, in order to keep the utilisation of the
bandwidth resource at a reasonably high level, the bandwidth and maximal
throughput of a core link is usually configured to be smaller than the sum
of all the edge links that it connects to [97]. A traffic source sending data
packet through TCP recognises the congestion if it detects a loss event over
this connection and responds by decreasing transmission speed. As a result,
over the entire duration of the connection, the overall mean traffic arrival
rate is still less than the mean service rate.
Observing this dynamic behaviour in a greater detail, it is highly probable
that the global arrival rate is greater than the departure rate during some
portion of time following with an increase of queue length, and then the global
arrival rate is smaller than the departure rate during some other portion of
time following with a decrease of queue length [107]. Even if the arrival rate
at each stage is memoryless and can be precisely represented by a Bernoulli
process, due to the changing parameter which prevents the queue converging
on the equilibrium, this behaviour has to be ignored or overlooked.
The discrete-time queueing model does not limit only to the equilibrium
states, but the conventional analysis and calculation method presented in
Chapter 3 does. The original form for the balance equations of (3.3) to (3.6)
can be written as

X
Πk = Πi pik , (4.1)
i=0

where pik is the transition probability from state i to state k. For a Geo/Geo/1/J
CHAPTER 4. PROPOSED TRANSIENT MODIFICATION 91

queue with a finite queue capacity J, this becomes

J
X
Πk = Πi pik , (4.2)
i=0

and this, in turn, is a special form of equation

J
X
Πk (t + 1) = Πi (t)pik (4.3)
i=0

where variables t + 1 and t represent the time slot index. This equation is
known as the Chapman-Kolmogorov equation, named after the British sci-
entist Sydney Chapman and the Russian mathematician Andrey Nikolaevich
Kolmogorov[31]. When the system is in equilibrium state, state probability
distribution from different time slots are the identical, thus the time slot
index t + 1 or t is no longer relevant in the equation. Replacing both hand
sides of the Chapman-Kolmogorov equation with a common equilibrium state
probability Πk , and it can be rewritten as a similar form presented in Chapter
3. When the system is not in equilibrium state, a set of equations with a
similar formality with the balance equations can still be written, where the
state probability distribution for the queue in the next time slot would be
derived from the distribution values in the current time slot.
Based on the type of the queue used in the modelling, certain states of
the system can only be reached by transiting from a limited number of states
from the previous time slot, with a probability that is positive and usually cal-
culable. For example, in a Geo/Geo/1/J queue, state 0 can only be reached
by transiting from state 0 or 1 from the previous time slot, with the prob-
ability of no departure no arrival and one departure no arrival respectively.
In this way, the summation operation in the original Chapman-Kolmogorov
equation can be simplified as transitions with non-positive probability can
CHAPTER 4. PROPOSED TRANSIENT MODIFICATION 92

be ignored. The new set of equation can be written as

Π0 (t + 1) =Π0 (t)(1 − α) + Π1 (t)(1 − α)β


Π1 (t + 1) =Π0 (t)α + Π1 (t)[αβ
+(1−α)(1 − β)] + Π2 (t)(1 − α)β
..
.
Πk (t + 1) =Πk−1 (t)α(1 − β) + Πk (t)[αβ
+(1−α)(1 − β)] + Πk+1 (t)(1 − α)β,
k = 2, 3, 4, · · · , J − 1 (4.4)

Because the number of unknown state variables is increased now, it is no


longer possible to solve this set of equations by simply using the normalise
equation. However, this set of equations does provide a way to calculate
the state probability distribution of the system in the next time slot, given
the current state probability distribution of the system is determinable. It
also means that it is possible to calculate the states probability distribution
recursively as long as a starting time slot with a known state probability
distribution can be found. Because of the fact that it is always possible to
start the calculation from the empty queue state (which is a known state as
the system is 100% in state 0), it is possible to use this method to calculate
the state distribution of the system from any given time after this point.

4.3 Detailed demonstration of the proposed


modification
Use the new method to calculate a typical homogeneous Geo/Geo/1/J queue
mentioned in Chapter 3. In order to use the proposed method to calculate
the state probability distribution for the queue in a time slot which has
not yet (or may never) reached the equilibrium state, a previous time slot
with an obtainable state probability distribution must be identified. In most
practical system, particularly in the computer network, the initial state of
CHAPTER 4. PROPOSED TRANSIENT MODIFICATION 93

the queue is likely to be empty, as the hardware for storing data packet in the
queueing buffer generally losses any information inside when powering down.
The empty-queue initial state has a defined state probability distribution
(Π0 = 1). Starting from an empty queue state, and because at most 1 arrival
can occur in each time slot, it would be relatively straightforward to calculate
the state probability distribution for the few time slots at the beginning since
there are less possible states and transition with positive probability at this
point. The notation of Πi (j) will be used in the following demonstration
to represent the probability of the system in state i at time slot j. Let the
probability of an arrival in a slot be α and the probability of a departure
in a slot be β. The state probability distribution for slot 1, observed at the
centre of that slot with EAS, is

Π0 (1) = Π0 (0)(1 − α) = 1 − α
Π1 (1) = Π0 (0)α = α (4.5)

the state probability distribution for time slot 2 is

Π0 (2) = Π0 (1)(1 − α) + Π1 (1)[(1 − α)β]


Π1 (2) = Π0 (1)α + Π1 (1)[αβ + (1 − α)(1 − β)]
Π2 (2) = Π1 (1)[α(1 − β)] (4.6)

the state probability distribution for time slot 3 is

Π0 (3) = Π0 (2)(1 − α) + Π1 (2)[(1 − α)β]


Π1 (3) = Π0 (2)α + Π1 (2)[αβ + (1 − α)(1 − β)]
Π2 (3) = Π1 (2)α + Π2 (2)[αβ + (1 − α)(1 − β)]
Π3 (3) = Π2 (2)[α(1 − β)] (4.7)

and it would be similar for the slots afterwards. After the Jth slot, as the
probabilities for the queue in all possible states (Π0 , Π1 , · · · , ΠJ ) are now
CHAPTER 4. PROPOSED TRANSIENT MODIFICATION 94

positive, the equations would be in form of following

Π0 (t + 1) =Π0 (t)(1 − α) + Π1 (t)[(1 − α)β]


Πk (t + 1) =Π(k−1) (t)[α(1 − β)]
+ Πk (t)[αβ + (1 − α)(1 − β)]
+ Πk+1 (t)[(1 − α)β],
k = 2, 3, · · · , J − 1
ΠJ (t + 1) =Π(J−1) (t)[α(1 − β)] + ΠJ (t)[αβ + (1 − β)],
t>J (4.8)

in general, it can be written as

P (t) =P (t − 1)p(t − 1) = P (t − 2)p(t − 2)p(t − 1)


=P (0)p(1)p(2) · · · p(t − 2)p(t − 1) (4.9)

where P (t) is the state probability distribution of the queue at time slot
t [Π1 , Π2 , · · · , ΠJ ], and p(t) is the state transition matrix for the queue at
time slot t. For a homogeneous Geo/Geo/1/J queue with arrival rate α and
departure rate β, p(t) always equals to
 
1−α α 0 ··· 0
 
β(1 − α) αβ + (1 − α)(1 − β) α(1 − β) ··· 0 
 
p=
 0 β(1 − α) αβ + (1 − α)(1 − β) ··· 0 

 .
.. .
.. .. .. .. 

 . . . 

0 0 0 ··· αβ + (1 − β)
(4.10)

In this special case, the state probability distribution k time slots after the
queue is empty can be represented as

P (k) = P (0)pk = pk (4.11)


CHAPTER 4. PROPOSED TRANSIENT MODIFICATION 95

where p is the homogeneous state transition matrix for the queue, which is
represented in 4.10. This is a special form for the so called n-step transition
probabilities equation [31].
With Equation (4.9), there is no special requirements needed, such as the
equilibrium assumption which limits the efficiency of conventional method
in a dynamic scenario. More importantly, the state transition matrix for
each time slot does not require to be the same value. Even using the same
Geo/Geo/1/J model, it is possible to simply vary the arrival and/or depar-
ture rate parameter(s) α and β in each time slot, and the calculation is still
straightforward. This property allows the development of a dynamic inter-
active model to represent the TCP-AQM source-queue dynamic interactivity
in Chapter 5.
As all of the other important performance measures of a queueing net-
work, such as throughput, mean queue length, delay, can be calculated dir-
ectly using the state probability distribution, which is explained in Section
3.3, it is reasonable to consider that obtaining the state probability distribu-
tion to be the single most important objective during the calculation phase.
With the proposed method which may work with a queue not in equilibrium
state, all the other performance measures can still be calculated using state
probability distribution exactly the same way if α is no greater than β, and it
has a unique stationary probability distribution, as demonstrated in Chapter
3. In case of α > β, a slight change is needed for the calculation of delay.
Little’s Law is used for the calculation of delay, and is usually written as

L = λW (4.12)

in which L is queue length, λ is the arrival rate of customers, and W is the


mean waiting time customers spend in the queueing system.
Little’s Law in form Equation (4.12) requires the equilibrium states[74],
as it depicts the arrival rate as the key elements, and it requires all arriving
customer to receive service and not leaving the queue before that. However,
a conclusion with a similar format can also be reached in a more generic
case. If arrival rate α is greater than departure rate β, the time which
CHAPTER 4. PROPOSED TRANSIENT MODIFICATION 96

customer spend waiting in the queue is obviously subjected to the service


rate, rather than the arrival rate in Little’s Law. With a mean queue length
of L, statistically speaking, every new customer will find L more customers
waiting in the queue as itself enters the queue. In this case, service rate β
is also the rate that the first customer in the queue receive the service and
leaves the queue while the rest of the customers moves to a forward position
in the queue. As a result, every customer will need to wait a total of

L
W = (4.13)
β

inside the queueing system.


With additional analysis, it can be concluded that Equation (4.12) and
(4.13) can actually be combined into a single and more generic form. No
matter how many customer there is in already waiting inside the queue,
when a new customer enters the queue, it must always wait until they have
all left through the service. There is a measure that represent the rate at
which customer passing through the system, throughput S. In discrete-time
queueing system, throughput S can always been calculated using

S = (1 − Π0 )β (4.14)

this calculation does not require equilibrium state. As a result, the waiting
time for a customer can always be represented as

L L
W = = (4.15)
S (1 − Π0 )β

In a Geo/Geo/1, or any type of queue with a infinite capacity, if the arrival


rate is smaller than the departure rate, throughput S = α (or any other
representation of arrival rate in a different model with a different arrival pro-
cess), and it becomes the same form as the original Little’s Law. Otherwise,
in a Geo/Geo/1/J queue where α > β, the queue is constantly full after the
initial phase, which means Π0 = 0, the it becomes the same form as Equation
(4.13).
CHAPTER 4. PROPOSED TRANSIENT MODIFICATION 97

4.4 Validation with numerical solution


As the proposed method is not subjected to the relationship of α and β
in any way, it is capable of calculating any queueing system which can be
calculated using the conventional equilibrium method. Since the two methods
use rather different approach, and the conventional equilibrium method is
generally accepted by the research community, a matching result from two
different calculations should validate the proposed method significantly.
Consider a conventional Geo/Geo/1/J queue (discrete-time M/M/1/J
queue), with the parameter of α = 0.4, β = 0.8 and J = 15. Using the
proposed method and starting the calculation from a known state of empty
queue (actually this can be any known state, e.g. with any random state
probability distribution, but empty queue is the most logical choose and it
has meaningful practical representation), which means

Π0 (0) = 1 (4.16)

Calculating the next slot, there is

Π0 (1) = Π0 (0)(1 − α) = 0.6


Π1 (1) = Π0 (0)α = 0.4 (4.17)

State probability distribution for time slot 2 can be derived from that of time
slot 1, which means

Π0 (2) = Π0 (1)(1 − α) + Π1 (1)[(1 − α)β]


= 0.552
Π1 (2) = Π0 (1)α + Π1 (1)[αβ + (1 − α)(1 − β)]
= 0.416
Π2 (2) = Π1 (1)[α(1 − β)]
= 0.032 (4.18)
CHAPTER 4. PROPOSED TRANSIENT MODIFICATION 98

Π0 Π1 Π2 Π3 Π4
Proposed Method (20th slot) 0.5002 0.4167 0.0693 0.0115 0.0019
Conventional Method (equilibrium) 0.5 0.4167 0.0694 0.0116 0.001

Table 4.1: Data for State Probability Distribution with Different Methods

Calculating for time slot 3, there is

Π0 (3) = Π0 (2)(1 − α) + Π1 (2)[(1 − α)β]


= 0.5309
Π1 (3) = Π0 (2)α + Π1 (2)[αβ + (1 − α)(1 − β)] + Π2 (2)[(1 − α)β]
= 0.4192
Π2 (3) = Π1 (2)[α(1 − β)] + Π2 (2)[αβ + (1 − α)(1 − β)] + Π3 (2)[(1 − α)β]
= 0.0474
Π3 (3) = Π2 (2)[α(1 − β)]
= 0.0026 (4.19)

Keep calculating to 20th slot, and the result of the first 5 states (Π0 to Π4 )
is presented in the first data row in table 4.1. As in this case α is much
smaller than β, the probability that the queueing system in large length is
very small, and that is the reason the probability of any state after the first
few ones will be a very small number.
Now comparing this result with that of the conventional method. Ac-
cording to the equations 3.15 and 3.16, at equilibrium state, probability for
the first 5 states (Π0 to Π4 ) is presented in the second data row of table
4.1. It is clear that even starting at an empty queue state and only after
20 time slots (20 possible arrival and departure events) the result calculated
by 2 different method are already extremely close to each other. The small
different between the two is due to the fact that the queueing system has not
yet reach the equilibrium state at 20th time slot, after 20 possible arrival and
departure events, but it is already very close with the equilibrium probability
CHAPTER 4. PROPOSED TRANSIENT MODIFICATION 99

distribution. It should be intuitively obvious that after a sufficient amount


of time slots, the queueing system will enter a state which has almost the
identical state probability distribution with that in the equilibrium state and
their difference is no longer noticeable without an extremely large precision
comparison. This result is also summarized in Figure 4.1.

0.7
2nd slot
4th slot
0.6 8th slot
steady state
Probability Distribution

0.5

0.4

0.3

0.2

0.1

0
0 5 10 15
State

Figure 4.1: The Queue Approaching Equilibrium

In this figure, the semi-doted line with triangle marking represents the
state probability distribution for the queue at equilibrium state, and the three
other lines represent the state probability distribution before equilibrium, at
2nd, 4th, 8th time slot respectively. As the probabilities for the system
in high numbered states are very small during all of the time due to the
relationship between parameters, the difference is more observable from the
lower numbered states. As more and more time slot pass by, the data points
get close to the balance distribution, and eventually the difference is hardly
noticeable.
CHAPTER 4. PROPOSED TRANSIENT MODIFICATION 100

4.5 Case study: transient behaviour of


Geo/Geo/1/J queue
As the proposed method is no longer require α < β, it is now possible to
explore some of the scenarios which is not possible to analysis using the
conventional equilibrium state calculation method. Figure 4.2 shows the
change of states probability distribution when α = β = 0.4.

0.25
20th slot
40th slot
60th slot
80th slot
0.2
800th slot
Probability Distribution

0.15

0.1

0.05

0
0 5 10 15
State (Πk)

Figure 4.2: A queue with same arrival and service rate

It can be observed that as the number of time slot increases, so does the
probability of the system in high length states increase, until finally all of
the non-empty states have a same probability. If this is a Geo/Geo/1 queue
which has no upper limit, it means that the queue length will eventually
build up to infinity. This agrees with the null recurrent characteristic which
has been briefly discussed in Chapter 3.
In the next experiment, average queueing delays of Geo/Geo/1/J queues
with same service rate (β = 0.6) but different arrival rate (α = {0.2, 0.4, 0.6, 0.8})
are compared and the result is shown in Figure 4.3.
As is shown in this figure, when α = 0.2 and 0.4, the queueing delays
CHAPTER 4. PROPOSED TRANSIENT MODIFICATION 101

16

α=0.2
14 α=0.4
α=0.6
α=0.8
12

10
delay(slot)

0
0 5 10 15 20 25 30 35 40
slot

Figure 4.3: Queueing delays with different arrival rate

stay the same after roughly about 20 time slots, which means that both
queues have reached the equilibrium state (more precisely, are extremely
close to reaching the equilibrium state), and with a doubled arrival rate, the
queueing system with α = 0.4 has a higher queueing delay than its α = 0.2
counterpart. It can also be observed a slight increase of queueing delay time
for the α = 0.4 line, where the α = 0.2 line is almost horizontal after that
time slot. This means that the α = 0.4 scenario require longer to reach the
equilibrium state than the α = 0.2 one. In case of α = β = 0.6, the queueing
delay keeps rising, but the increasing rate is becoming much slower as time
goes by. However, this is not the case for the α = 0.8 queue, as the queueing
delay keeps rising at apparently a fixed rate before the queue is completely
full.

4.6 Summary and discussion


In this chapter, a new method for calculating the performance of a discrete-
time queueing model is proposed and demonstrated in detail. It is intended
CHAPTER 4. PROPOSED TRANSIENT MODIFICATION 102

to overcome the limitation of the conventional method of requiring the equi-


librium status for the queueing system, by performing step by step analysis of
the system. According to the conclusions reached in this chapter, assuming
equilibrium may not always be feasible in a practical network system. By
using the proposed calculation method, new research possibilities emerge so
that the dynamic interactive behaviour of the network can be studied with
increased accuracy.
However, as the new method works in a recursive way, heavy calculation
and computation is required for studying the behaviour over a long duration.
In comparison, the conventional method will only need to solve a single set
of equations for the calculation. As a result, this new method is not cost
efficient when compared to the conventional one if the dynamic and transient
behaviour of the network is considered negligible.
Chapter 5

Dynamic Interactive Behaviour


Between the Responsive Traffic
Source and the Bottleneck
Queue

5.1 Introduction
This chapter presents a dynamic arrival process which behaves like a TCP
traffic source and interacts with the bottleneck queue. The dynamic and
responsive behaviour of a typical TCP traffic source is thoroughly analysed,
and a new model is proposed utilising the transient characteristics of the
extension for the conventional queueing method presented in Chapter 4.
One of the most important reasons for the difficulty of representing the
Internet traffic with a stochastic source model is that these models are usually
based on steady state analysis [94]. In a practical network system with
dynamic traffic flows, steady state, or equilibrium, is often not an appropriate
assumption. This is particularly important if the research objective is to use
queueing model to analyse AQM performance, as one of the main purposes
of AQM is to manage the burstiness of the traffic, and burstiness usually
indicates an unsteady packet transmission process. However, if the proposed

103
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 104

modification to the conventional method introduced in Chapter 4 is used, it


is possible to perform step-by-step analysis on the source, and establish a
dynamic model.
The principle idea behind the conventional method trying to obtain the
state probability distribution at the equilibrium state is that in many prac-
tical system, it is the eventual status of the system that people usually care
about. Conventional equilibrium state method is great for this task when
the parameters of the queueing system remain unchanged long enough so
that it can reach the equilibrium state (assuming that its parameters allow
this). However, when this is not the case, using the conventional equilibrium
state method is no longer effective. The transient modification introduced in
Chapter 4, however, does not suffer from the same limitation.
In a practical network system, especially when involving commercial In-
ternet connections, it is highly likely that the core routers in the system
would become the bottleneck for the connection. Physically speaking, local
link connections are generally cheaper and faster, while the core links are
much more expensive for the same amount of throughput. This is unavoid-
able due to the fact that local link connections have much shorter distance,
and the corresponding technology involved make sure of its high speed, high
reliability and relatively low cost. For example, the WiFi[83] connection in-
side many residential houses and public areas, the Ethernet[104]-based LAN
connection in many office buildings. Because of the much shorter distance,
these technologies allow more communication channels, and the shorter dis-
tance usually means less interference in the communication channels as well.
Both of these facts allow a faster communication speed. The local area also
means fewer traffic requirement at the same time, which greatly reduce the
likelihood for collision. Nowadays, most commercial versions of local link
speed are higher than 100Mbps, with Ethernet easily exceeding 1Gbps. The
WAN connection speed, however, are generally much slower. It is generally
over a much longer distance than the local connections. In telecommunica-
tion, a general rule is that longer distance equals higher expense. In practical
scenarios, it means that either a cheaper link with a reduced transmission
rate, or a much more expensive link with a similar transmission rate. The
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 105

typical technology involved here are various versions of DSL[20], various ver-
sions of T-carrier[32], coaxial cable[19], and more recently, optical fibre[108].
Except for optical fibre, which is still quite expensive despite its rapid devel-
opment, the popular version of all other technology only offer no more than
10Mbps of connection speed, which is much slower than the local connection
speed.
Due to the fact that the traffic profile of many network based applica-
tions are bursty in nature, most commonly, web browser with its underlining
HTTP protocol, only in a small fraction of time the bandwidth resource
would be utilised. Considering that if a client terminal only use the network
resource 1% of the time, a core router with the same network bandwidth as
the terminal client can easily serve 10 such clients, with the probability that
any of the two requiring network service at the exact same time, such may
result in congestion, can be calculated by

P =1−P
100 × 99 × 98 × · · · × 91
=1−
10010
≈ 1 − 0.6282
= 0.3718 = 37.18% (5.1)

While this seems to be a large enough probability, the majority of the collision
considered here are only two within ten users collide on a single instance, and
under the assumption of the core bandwidth are the same as that of every
user, which is not a likely scenario in a practical network system. With this
justification in mind, it can be easily concluded that a core link can easily
accommodate bursty users with several times larger combined bandwidth by
simply employ a small buffer with the capacity larger than 2 or 3 (which
allows data packets from 2 or 3 user arriving at approximately the same time
without the side effect of collision). This is another important reason why the
core link bandwidth are generally much smaller compared to the combined
user bandwidth. Under those configurations, the system should still be able
to provide a mostly congestion-free network service for the users the majority
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 106

of time.
However, because the combined user bandwidth is larger, there is the
possibility of congestion, especially during peak traffic hours where more
users are likely to require network resources at a similar time. In these
scenarios, it is likely that too many traffic sources will transmitting packets
too fast and overwhelming the service capability, and the queue length and
queueing delay will increase, until finally loss event, either by active dropping
on an AQM enabled device, or due to the actual congestion where all the
mechanisms failed to prevent it from happening.
As TCP traffic is the single largest portion of the Internet traffic [81][57],
and the fact that it is the only type of traffic that responds to the congestion
feedback from AQM or any drop-tail gateway, it is crucial to construct a
dynamic interactive model of a single TCP traffic source which interacts
with the feedback from the queue.
The remaining content of this chapter is organised as follows: Section
5.2 performs detailed study of dynamic behaviour between the TCP traffic
source and the bottleneck queue, and presents an interactive model utilising
the new transient modification introduced in Chapter 4; Section 5.3 performs
MATLAB numerical solution to a typical scenario between a TCP source and
a bottleneck queue using the step-by-step analysis of the queueing system;
Section 5.4 performs NS-2 simulation using equivalent parameter configur-
ation with the previous MATLAB numerical solution, and their results is
compared with similarities and differences explained; Section 5.5 performs
additional evaluation of the proposed model with numerous scenarios with
varying parameters; Finally, Section 5.6 concludes the chapter by summar-
ising the characteristics of the proposed dynamic interactive model, as well
as the well-matched results from MATLAB numerical solutions and NS-2
simulations.
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 107

5.2 Dynamic model for responsive traffic


source
While many more complex mathematical models have been proposed to rep-
resent Internet traffic, most of them actually focus on the burstiness and cor-
relation features of traffic source itself, such as the superposition of MMPP
[95]. Few of them actually considered the dynamic interaction between the
source and the queue, most prominently, the Additive Increase Multiplicative
Decrease (AIMD) feature of TCP, which is a dominant feature in the practical
network systems. There is also research that aims to develop advanced model
for TCP, most notably, the fluid model [110][93], which takes the dropping
event into consideration. However, most of them fail to establish an extens-
ive queueing model of the bottleneck queue to analyse the probability of the
dropping events, instead relying on some form of approximation or simpli-
fication that rarely represents the dynamic interaction between the source
and the queue. The model proposed in this chapter also aims to address this
issue.
TCP employs flow control and congestion avoidance features. It increases
the sizes of flow control window and congestion window in order to transmit
data packets as fast as possible and keep the bandwidth resource utilisation
rate high, while avoiding congestion by decreasing the window sizes when
loss events are detected [2]. Under the assumption that the queue and gate-
way been modelled here is the bottleneck of the TCP connection, then the
transmission rate, which is directly affected by the two window sizes, has a
direct relationship with the throughput performance of that queue and gate-
way [10]. The TCP source transmission rate changes over time, thus can not
be easily modelled by a simple equilibrium model. However, if calculating
using the proposed recursive method, then within each time slot which is
usually a relatively short duration, it is reasonable to represent the source
with a simple transient model. It can even be represented accurately enough
with the basic memory-less Bernoulli process with varying parameters, if the
time slot is of a similar size of the time required for transmitting each packet.
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 108

In the network architecture, transport layer is responsible for the control


of transmission speed. When there is no speed limitation from the transport
layer, the transmission would proceed as fast as the link and physical layer
can handle, which is predetermined by the physical environment and link
layer protocol involved. The hardware system has a generally fixed internal
working clock cycle, and on average it would take the same amount of time to
process and transmit data packets of the same size, with some variation due
to unforeseeable internal physical and external environmental reasons[101].
The packet time interval for this is mostly memoryless and could be very
well modelled by a conventional Bernoulli process. However, the involvement
transport layer protocol (TCP, namely) makes the lower layers not always in
the “active transmission stage”. Instead, when the TCP source detects that
the flow control or congestion window is full, it stops passing segments down
to the lower layers , and the transmission procedure stops completely with no
data packets being processed. It may still process and transmit some control
packets though, but the size of those are generally much smaller than typical
data packets, thus, it makes very little impact to the congestion status of the
connection. This “idle stage” can still be represented by a Bernoulli model,
albeit with a non-positive data packet transmission probability. Modelling
both states with a same model can greatly simplify the eventual calculation
process, as it would only be the parameter changing from different time slots,
and not the entire arrival process.
In this case, the complicated TCP source dynamic behaviour can be rep-
resented by a simple Bernoulli process in each time slot, with varying para-
meters, as long as it can be determined which state it is currently in. For
example, a TCP source of the course of an active transmission connection
may be model with α = 0 when either window is full and the source is
waiting for the acknowledgement packets, and α = 0.8 when none of the
window is full and the source is transmitting at a constant speed which is
predetermined by the physical link configuration. Modelling in this way is an
even better representation of the working process in the physical hardware
and controlling software protocol comparing to many others where the model
just transit arbitrarily from one state to another with no or few justification.
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 109

5.2.1 Time slot synchronisation


In the physical computer network system, aside from the queueing delay at
the bottleneck gateway, there are other kinds of delay. This would mean that
when the traffic source begins to transmit data packet, certain delay can be
observed until it reaches the bottleneck queue and attempts to enter the
buffer. If the buffer is not full at this time, and no active drop mechanism
is employed or it fails to meet the dropping criteria of the specific AQM
algorithm, then it can successfully enter the queue, and would eventually
depart through the service, and move forwards towards the destination. After
the hardware and software at the destination terminal receive and process the
packet, acknowledgement packet is send back at the source, which requires to
travel all the way through the network again. When the source receives the
ACK, it may respond by changing its congestion window size accordingly,
and possibly transmit more packets as previous packets have been identified
as successfully received and free up the occupied space in the congestion
window. This behaviour means that there is a observable delay between the
activities in the queue and the traffic source responds.
In the conventional queueing method where the traffic source is not re-
sponsive to the queueing activities, all the critical events of the system hap-
pens at the queue, and the time of those events can be easily identify by the
unique discrete-time time slot in a discrete-time queueing model. However,
as it would be demonstrated here, similar method can also be used in this
research where critical events occur at different location of the system where
delay is observable between different parts, and a single set of time slot can
identify all of them.
The time slot definition in the new model system is identical to that of
the conventional model: fixed small finite sizes of time through which events
occur at the queue. Most important observable delay of a connection can be
represented in Figure 5.1.
In Figure 5.1, a TCP traffic source is transmitting data packet through
the bottleneck gateway, and its waiting buffer queue is shown in the middle.
Assuming the packet is not dropped, it departs the queue through the service
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 110

Figure 5.1: Various delays in a connection

and reach the destination which sends an ACK back to the source. It would
take t1 for the packet to reach the queue after it was transmitted by the
source, and it needs to wait d before departing the queue, followed by t2 to
reach the destination. After this, it would take t3 for the ACK to eventually
return to the traffic source. Assuming all delay are represented with time slot,
the round-trip time for this packet can be represented as D = t1 + d + t2 + t3 .
If the packet reaches the queue at time slot i, from the perspective of
the queue, the packet must have been transmitted a number of time slots
before i. It is not necessary for the queue to have the exact information of
when this particular packet was transmitted. If for some reason the incoming
packet must be dropped, then this event would take d + t2 + t3 before it was
detected by the source if the packet following packet is not dropped so that
duplicate ACK may be detected. After the source responded to the loss event,
the newly transmitted packet requires an additional t1 time slots before it
reaches the queue. This means that any event happens in the queue needs at
least RTT (D) time slot before the observed arrival rate at the queue changes
as a response. Similarly for the source, as any changes in RTT or duplicate
ACK must wait at least RTT time slot before it may be detected. This leads
to the conclusion that the individual values of t1 , t2 , t3 does not matter, only
their sum (RTT) does.
For the following research, all time slot index are that observed at the
queue, as the performance measures of the bottleneck queue are the focus of
the research, and the queueing delay can only be observed at the queue, while
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 111

the source cannot differentiate queueing delay from other kinds of delay.

5.2.2 Statistical analysis of congestion window


The model represents the size of congestion and flow control windows (which
directly affect the transmission rate) probabilistically. In each time slot, the
source may be in either one of the transmission stage, active or idle. Trans-
mission stage is determined by the probabilistically calculated window size,
and the transmission rate in each state can be directly derived from the link
specification. From the perspective of the bottleneck queue, the arrival rate
during the active transmission stage is associated with the link bandwidth
between the source and the bottleneck gateway, and is zero during the idle
state. The departure rate is associated with the link bandwidth between the
bottleneck gateway and the destination, assuming that the hardware pro-
cessing speed is always much faster than the link speed, which is usually a
valid assumption in modern computer network systems. It is a logic choice
to make the link bandwidth between the source and the bottleneck gateway
greater than the link bandwidth between the bottleneck gateway and the
destination, which means the arrival rate in the active transmitting state to
be greater than the departure rate. It would be pointless to study queueing
theory for AQM and congestion control if this is not the case, as congestion
is not likely to occur [67]. It is also a valid representation of the practical
network system, which has been analysed in Section 5.1.
As the local transmission speed of the traffic source is relatively fast,
combined with the congestion avoidance feature employed by the TCP source,
it can be observed that a source alternating between the “active transmission
stage” and the “idle stage”. It is also relatively easy to deduce that the faster
local transmission speed of the source is comparing to the bottleneck queue
departing rate, the longer it needs to stay in the “idle stage”. If the active
transmission rate is ten times faster than that of departing rate, overall, with
congestion feedback, the source needs to be in “idle stage” more or less nine
times longer than it is in “active transmission stage”, so that the local link
is only utilised at approximately 10% capacity while the bottleneck queue
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 112

remains busy.
In a modern computer network system, it is highly likely that the system
processing speed is faster than the network transmitting speed. This means
that the transmission stage that a source is in is determined by its congestion
window size, and the stage in turn determine the higher level packet arrival
rate for the bottleneck queue. This makes congestion window size modelling
one of the most critical components. Assuming the congestion window size of
a TCP source with the following specification (modelled after the TCP-Reno
[4]):
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 113

·At the start of the connection, the window size will be s number of
packets.
·During the slow-start stage and when window size is smaller than
the slow start threshold SSth , it increases the window size by 1
with every ACK received, effectively doubled with every round-
trip time (RTT)
·When window size exceeds SSth , it enters congestion avoidance
stage, and the window size is increased by 1 packet for every
RTT.
·After a timeout event is detected, it sets SSth to half of current
window size, and sets window size to 1 and re-enters the slow
start stage.
·After a triple duplicate ACK event is detected, it performs a fast
recovery. If any missing ack is detected during fast recovery [3],
it will be considered a timeout event and the source responds
accordingly.
·If the maximal window size smax is reached, the window size will no
longer increase, but will still be cut in half if a loss event is
detected.
(5.2)

Let the arrival rate of active transmission stages be α, and considering a


new connection is starting and all the handshake protocols have completed,
then the source enters active transmission stage, starting to transmit at rate
α until s packets have been sent while no acknowledgement packets would
be received. This would take

s
t1 = (5.3)
α
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 114

time slots. At this point, according to the specification of TCP, the source
stops the transmission and wait for acknowledgement packets from the des-
tination. The duration of this depends on the round-trip time (RTT) of the
data packets. Because of the assumption that the queue and gateway under
this study is the bottleneck of the connection, and only its performance is
inside the scope of research at the moment, it is reasonable to divide the
round-trip time into two different parts: queueing delay at this gateway d1 ,
and all the other delays, such as propagation delay, processing delay, trans-
mission delay, and queueing delay at other gateways d0 . As the performance
issue of the bottleneck gateway is the only focus here, it is logical to assume
them d0 to be time-invariant during the whole connection. Representing all
of the other delays with d0 , then the round-trip time can be represented as
D = d1 + d0 , where d1 here is the queueing delay of the first packets in the
bottleneck queue in question, which can be easily derived by calculating the
state probability distribution using the modified method proposed in Chapter
4.
Assuming there is no loss in other places of the connection (which can
be easily modify it to be a fixed positive value as well, but for simple initial
demonstration of the new dynamic TCP model this is not necessary and may
cause unnecessary complication) and the basic drop-tail queue management
scheme is deployed, acknowledgement packet for the first data packet arrives
at the source d1 + d0 time slot after it was transmitted, at which point the
congestion window size increases and this source returns to the active trans-
mission stage. This behaviour with slow start during the early stage of the
connection is relatively straightforward, as the queue starts from an empty
state and the window sizes are relatively small at this point. After several
time slots, the probability of the full queue capacity becomes positive, which
means that the arriving packets are dropped if the buffer is full at that mo-
ment. As the probability of the each packet been transmitted in a certain
time slot can be determined by the active transmission rate and its transmis-
sion stage, it is possible to represent the probability of the acknowledgement
of this packet arriving back at the source in d1 + d0 time slot after this one
by αpnot dropped assuming that time slot is in active transmission stage. The
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 115

pnot dropped here can be easily calculated by

pd = 1 − pd = 1 − (pf + pa ) (5.4)

where pd = pnot dropped , pd is the overall probability that a packet is dropped


before entering the queue, pf is the probability of the queueing buffer being
full at the time of the packet arrival, and in the discrete-time queueing model
with a buffer size J, the probability that the queue being full pf can be derived
from the state distribution of the queue in that time slot as ΠJ . Finally, pa is
the probability of a packet dropped by active dropping mechanism of AQM
during that time slot. In the event of a drop-tail queue is used, the pa is
simply a constant 0.
With the probability of the source receiving the acknowledgement packets
in a certain time slot calculated, all that remains to determine the perform-
ance of the connection is to manage in representing the transmission window
size, or more specifically, the congestion window size, which is affected by
whether or not the acknowledgement packets are received on time. Based on
the possible actions of TCP congestion window changes listed in (5.2), all of
them happen over at least one RTT. As the window size is represented prob-
abilistically, in each RTT, there is a possibility of either no loss event of any
kind, in which case the window size remains (or increases by a specified size
if an ACK is received and smax has not been reached yet), or some form of
loss event is detected, in which case the window size decreases by a specified
size. The congestion window size can be represented recursively as

S(T +1) = S(T ) + pdc SDV + pic SIV (5.5)

where pdc and pic are the probability for congestion window size decrease
and increase, respectively, SDV and SIV are the congestion window size de-
creasing and increasing value respectively, should the appropriate condition
is satisfied. S(T +1) and S(T ) are statistical congestion window size, where
{T, T + 1, · · · } are batches of time slots divided by RTT. These batches are
of similar size if the RTT of the packets are not oscillating heavily and no
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 116

loss event of any kind are detected. However, the loss event may be detec-
ted at any random point inside or on the edge of a time slots batch, which
will end this batch immediately and change the congestion window size, and
restart the RTT count. According to the TCP specification defined in this
model, congestion window size increases by 1 MSS for every RTT with no
loss event of any form. RTT is represented by di + d0 . This leads to the
following conclusions:

SIV = Spkt (5.6)


pic = αpd = α[1 − (ΠJ + pa )] (5.7)

This is for congestion avoidance. During slow start,

SIV = ST (5.8)

In TCP Reno, loss event is triggered by either triple duplicate ACKs, or


timeout. In order for the source to detect duplicate ACKs, a packet must be
dropped at the queue (or underwent extreme reorder, which is very unlikely
in the scenario that all packets go through the same queue with FIFO discip-
line, and is thus ignored for the following analysis), and packet with larger
sequence number must be successfully received and the destination acknow-
ledge them with a duplicate ACK. If all the subsequent packet are lost, then
no ACK, duplicate or not, would be received, and thus the source will detect
a timeout and skip the fast recovery phase. One of the possibilities that leads
to timeout (no duplicate ACK received) is illustrated in Figure 5.2.

Figure 5.2: Events leading to timeout detection


CHAPTER 5. DYNAMIC INTERACTIVE MODEL 117

In this figure, the horizontal axis with evenly space small ticks represents
the discrete-time time slot in the model. Above the time slot axis, the “1”
and “0” represents the source is in the “active transmission stage” and “idle
stage”, respectively. The “a” and “d” just above and below the time slot axis
depict the packet arrival and packet drop in that time slot. Departure is not
shown here. As mentioned before, for either the most common AQM imple-
mentation or the basic drop-tail scheme, arriving packets are only dropped
before they may enter the queue. If the queueing is at full capacity, or the
specific AQM active dropping criteria is satisfied, the packet is dropped im-
mediately as it attempts to enter the waiting queue. Thus, as it can be
observed in the figure, all dropping event happens immediately after the ar-
rival event, and in the same time slot. For the same reason, all packets that
have successfully enter the waiting queue are guaranteed to eventually re-
ceive the service and leave the queue. In this particular scenario, this would
represent an ACK would eventually be received by the source. Below the
dropping event indicator is the timer at the source for the timeout event. It
corresponds with the first dropped packet (assumed to be the first packet lost
in recent time slots), which is right after the source received the duplicated
ACK for the previous packet.
In this scenario, it is assumed that all subsequent packets up to timeout
are dropped. In reality, up to two packets may not be dropped, thus, the
source would received only up to two duplicate ACKs before the timeout
timer signal that event. The probability for triple duplicate ACKs can be
calculated as the following:

pi =pd p≥3 received


=pd (1 − p≤2 received ) (5.9)

where

p≤2 received = p2 received + p1 received + p0 received (5.10)

From Figure 5.2 shown above, it can be observed that from the time slot
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 118

when the initial drop happens to the time slot which corresponds to when
the internal timer of the traffic source detects a timeout event, the number of
time slots equals to 2RT T , thus can be represented as 2(di +d0 ). For p0 received ,
which is the probability that none of the packet following the initial drop is
able to reach the destination and result in duplicate ACK being sent back to
the source, it can be calculated as the following in this scenario

p0 received =pe (t + 1)pe (t + 2)pe (t + 3) · · · pe (t + 2RT T )


2RT
YT
= pe (t + i)
i=1
2(dt +d0 )
Y
= [α(t + i)ΠJ (t + i) + (1 − α(t + i))] (5.11)
i=1

where pe (t + 1) are the probability that no packet from the source enter the
queue in the time slot following the initial drop, and α(t + i) is the observed
arrival rate at the queue in that time slot i, ΠJ (t + i) are the probability that
the queue is full (in maximal queue capacity state J) in that same time slot
i. Writing

2(dt +d0 )
Y
δ = p0 received = [α(t + i)ΠJ (t + i) + (1 − α(t + i)] (5.12)
i=1

then the probability that only one of the packet following the initial drop
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 119

reaches the destination can be calculated as

p1 received =(1 − pe (t + 1))pe (t + 2)pe (t + 3) · · · pe (t + 2RT T )


+ pe (t + 1)(1 − pe (t + 2))pe (t + 3) · · · pe (t + 2RT T )
+ pe (t + 1)pe (t + 2)(1 − pe (t + 3)) · · · pe (t + 2RT T )
..
.
+ pe (t + 1)pe (t + 2)pe (t + 3) · · · (1 − pe (t + 2RT T ))
δα(t + 1)(1 − ΠJ (t + 1)) δα(t + 2)(1 − ΠJ (t + 2))
= +
α(t + 1)ΠJ (t + 1) + (1 − α(t + 1)) α(t + 2)ΠJ (t + 2) + (1 − α(t + 2))
δα(t + 2RT T )(1 − ΠJ (t + 2RT T ))
+ ··· +
α(t + 2RT T )ΠJ (t + 2RT T ) + (1 − α(t + 2RT T ))
2RT T
X δα(t + k)(1 − ΠJ (t + k))
=
k=1
α(t + k)ΠJ (t + k) + (1 − α(t + k))
2(dQ 0
t +d )
2(dt
X +d0 ) [α(t + i)ΠJ (t + i) + (1 − α(t + i))]α(t + k)(1 − ΠJ (t + k))
i=1
=
k=1
α(t + k)ΠJ (t + k) + (1 − α(t + k))
(5.13)

Similarly, the probability that only two of the packets following the initial
drop reaches the destination can be calculated as
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 120

p2 received
= (1 − pe (t + 1))(1 − pe (t + 2))pe (t + 3)pe (t + 4) · · · pe (t + 2RT T )
+ (1 − pe (t + 1))pe (t + 2)(1 − pe (t + 3))pe (t + 4) · · · pe (t + 2RT T )
+ (1 − pe (t + 1))pe (t + 2)pe (t + 3)(1 − pe (t + 4)) · · · pe (t + 2RT T )
..
.
+ (1 − pe (t + 1))pe (t + 2)pe (t + 3)pe (t + 4) · · · (1 − pe (t + 2RT T ))
+ pe (t + 1)(1 − pe (t + 2))(1 − pe (t + 3))pe (t + 4) · · · pe (t + 2RT T )
+ pe (t + 1)(1 − pe (t + 2))pe (t + 3)(1 − pe (t + 4)) · · · pe (t + 2RT T )
..
.
+ pe (t + 1)pe (t + 2)pe (t + 3) · · · (1 − pe (t + 2RT T − 1))(1 − pe (t + 2RT T ))
2RT
XT δα(t + 1)(1 − ΠJ (t + 1))α(t + k)(1 − ΠJ (t + k))
=
k=2
[α(t + 1)ΠJ (t + 1) + (1 − α(t + 1))][α(t + k)ΠJ (t + k) + (1 − α(t + k))]
2RT
XT δα(t + 2)(1 − ΠJ (t + 2))α(t + k)(1 − ΠJ (t + k))
+
k=3
[α(t + 2)ΠJ (t + 2) + (1 − α(t + 2))][α(t + k)ΠJ (t + k) + (1 − α(t + k))]
..
.
2RT
XT δα(t + 2RT T − 1)(1 − ΠJ(t+2RT T −1) )α(t + k)(1 − ΠJ (t + k))
+
k=2RT T
[α(t + 2RT T − 1)ΠJ(t+2RT T −1) + (1 − α(t + 2RT T − 1))][α(t + k)ΠJ (t + k) + (1 − α(t + k))]
2RT
XT 2RT
XT δα(t + m − 1)(1 − ΠJ (t + m − 1))α(t + k)(1 − ΠJ (t + k))
=
m=2 k=m
[α(t + m − 1)ΠJ (t + m − 1) + (1 − α(t + m − 1))][α(t + k)ΠJ (t + k) + (1 − α(t + k))]
(5.14)

From Figure 5.2, it can be deduced that during the time from the initial
packet drop to the time slot when timeout is detected at the traffic source,
the source goes through at least two full “idle stage” and at least one full
“active transmission stage”, if the initial drop happens in the middle of an
“active transmission stage”, or two full “active transmission stage” if that
initial drop happens at the edge of one. This is due to the fact that without
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 121

a dropping event detected, the congestion window size of the source can only
change every RTT, thus, the duration of an “active transmission stage” and
the following “idle stage” is the same as that of a RTT. Analysing the form
of Equation (5.11), each factor represents the probability that packet from
that particular traffic source do not enter the queue. It is the addition of
a packet arrives the queue from the source and subsequently dropped due
to full capacity, and no packet arrives at all. During the “idle stage”, the
observed arrival rate α ≡ 0, thus that probability

pe(idle) = α(idle) ΠJ(idle) + (1 − α(idle) ) = 0 × ΠJ(idle) + 1 = 1 (5.15)

During the “active transmission stage”, the observed arrival rate 0 < α < 1.
In order for the factors corresponding this stage to be reasonably large, the
value for “ΠJ ” must remain high. However, due to the service of the queue is
still active during the “idle stage” while the arrival rate is zero, packets depart
and freeing up space in the queueing buffer. The queue would no longer be in
full capacity. As soon as the system returns to “active transmission stage”,
a packet arrivals the queue, and it will be able to enter the queue, eventually
resulting in the duplicated ACK being detected. The probability that in all
of the following x time slots no packet arrives can be calculated as (1 − α)x .
From the analysis in the previous paragraph, it can be deduced that the
power index x ≥ RT T . Under the assumptions in this model that the active
transmission rate is larger than the service departure rate and RTT is not very
small for a common for a modern system, this would means p0 received → 0.
Similar conclusion can be drawn for Equations (5.13) and (5.14).
With a closer look at this system, under the drop-tail queueing manage-
ment scheme, the only possible dropping in the system occurs if the maximal
queueing capacity is reached and a new packet arrives. This leads to the
conclusion that dropping probability is 100% for any incoming packet if the
current maximal queueing capacity is reached. Consider the assumption that
the arrival rate during active transmission stage is greater than that of de-
parture rate, the queue length increases when the traffic burst entering the
queue at a faster rate than they are leaving. If the congestion window size is
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 122

large enough, which means that this burst of traffic is long enough that the
maximal queueing capacity can be reached, then all the exceeding packets
in that burst would be lost. For example, if the active transmission rate of
a source is four times larger than that of service rate, then after the queue
is full, 75% of the remaining packets in the same burst would be dropping,
while the other 25% of them would enters the queue as packets depart from
the queue through service and thus freeing up additional waiting space. This
would mean that in a single TCP source model, unless the RTT is very small
which means that the timeout (usually 2RTT) would be reached very fast,
which is not likely in a practical modern internet connection model as long fat
network [67] are consider one of its common characteristics, there is always
a way for 3 data packets to go through thus allowing the triple duplicate
ACKs to be detected, given there is large enough amount of data waiting to
be transmitted.
In this case, it is logical to assume that every loss event is a triple duplicate
ACKs event. In every time slot, the source would react with the probability
of

pdc = pd = ΠJ + pa (5.16)

and changing the congestion window size

S(T )
SDV = − (5.17)
2

while setting the new slow start threshold

S(T )
SSth = (5.18)
2

Then, it will retransmit the missing packet, pause the transmission and wait
for its ACK. Slow start would only be require if this one times out as well. For
the retransmitted packet to timeout, it must be either dropped, or its RTT
must increase to double of the previous RTT value. In a drop-tail queue,
packets are only dropped if the maximal queue capacity is already reached.
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 123

This would mean that the queueing delay is already at its maximal possible
value for the previous packet whose RTT is used to determine whether the
retransmitted packet timeout. Under the assumption that all other delay
contributing to RTT is fixed, it is not possible for the retransmitted packet
to have a RTT value which is two times larger than the previous RTT. As
a result, this retransmitted packet must be dropped if the source detects
its timeout, which means that there is a probability of pd = ΠJ that the
retransmission leads to a timeout, and thus the source re-enters the slow
start stage.
With the window size defined, the transmission status (either the source
is in the “active transmission stage” or the “idle stage”) during each time
slot can be calculated by comparing the sum of the size of un-acknowledged
packets and the current congestion window size, and thus the model for
an entire TCP connection becomes a combination of many stages, each of
that stage can be represented by a simple Geo/Geo/1/J queueing model
with different parameters (most importantly, α), and the transitions between
different stages are determined by the status of the congestion window size,
which is in turn affected by the performance measure (namely, the packet
drop rate) of the queue, quite similar to the way TCP source behaves in
practical systems. In this way, the model is able to capture the Additive
Increase Multiplicative Decrease (AIMD) characteristics of a dynamic TCP
source behaviour while still be simple enough to for calculation and analysis
with the modified queueing model proposed in Chapter 4.
Finally, with this model, it is possible to obtain the statistical perform-
ance measures of the system at every time point by using the generalised
Little’s Result presented in Chapter 4 as Equation (4.15) and throughput
as (1 − Π0 )β, while the dropping rate is already used during the calculation
of congestion window size by pd = ΠJ + pa . All three of the performance
measures require the state probability distribution of the queue at the time
slot, which can be obtain by the generic state probability distribution calcu-
lation equation presented in Chapter 4 as Equation (4.9). Although it is a
dynamic model, every time slot is still a basic Geo/Geo/1/J queue only with
a varying α value. Thus, all of the state transition matrix used in Equation
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 124

(4.9) can still be presented with matrix (4.10). The α value is determined by
the different transmission stages in which the source is in at the particular
time slot, which is in turn derived by comparing the sum of the size of trans-
mitted and n-acknowledged packets with the congestion window size which
is calculated in Equations (5.5), (5.6), (5.7), (5.8), (5.17), (5.16) and (5.18).
In order to validate this new proposed model, and further demonstrate its
calculation process, MATLAB numerical solution is performed based on the
equations deduced here. Then this result is compared to NS-2 [1] simulation
with the identical scenario parameters.

5.3 MATLAB numerical solution


In this section and the following Section 5.4, only one instance of the numer-
ical solution and NS-2 simulation is performed. They are only intended to
be a demonstration for conducting MATLAB numerical solution and NS-2
simulation with equivalent parameter so that their results can be compared
reasonably. Comparison between more groups of MATLAB numerical solu-
tions and NS-2 simulations is presented in Section 5.5.
In most of the research utilising the conventional queueing theory and
method, the results from the mathematical derivations remain in the the-
oretical realm. The parameters of the arrival and departure process are
represented with probability and the performance measures are generally
represented with the unit of time slots, which makes them very difficult to
be compared with those of practical systems. In the practical system, ar-
rival/departure rate are often measured with “bits per seconds” (bps) or its
derivatives, such as M bps or even faster Gbps, and performance measures
are generally represented more practical unit, such as seconds (s) or micro-
seconds (ms) for delay, M bps (or other derivatives) for throughput. Only
the dropping rate are with the same form in both theoretical model and the
physical systems, and thus can be easily compared. This lack of comparison
method limits the effectiveness of improving the network experience with
mathematical analysis.
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 125

One of the major reason for the difficulty with performance measure com-
parison is that with discrete-time queueing model, the size of the time slot
is not generally associated with the physical time unit seconds (s) or mil-
liseconds (ms). Most of the performance measures, with the exception of
dropping probability, depends on the size of the time slot. The throughput
and waiting time in discrete-time queueing model are both associated with
the unit of time slot, which means that with the identical physical system,
if different sizes of time slot are selected during two different modelling pro-
cess, the throughput and waiting time value calculated would be different.
Assuming the time slot size of the first model is two times as large as that
of the second one, then the numerical value for both throughput and waiting
time for the first model would be only half of that for the second model in
units of time slot. Dropping rate is represented as a probability value, not
generally associated with units of time slot, but for a dynamic model where
dropping rate is variant over time, a time slot value which can be easily con-
verted into the physical time unit of seconds (s) or microseconds (ms) is also
crucial so that the calculated dropping probability within the mathematical
model can be compared with that measured in the physical system.
For the above mention reasons, in order to identify a better way to com-
pare the theoretical calculation result with the physical one, the first step
must be the definition of size of time slot. As this model is used to represent
a measurable duration of TCP connection activity instead of an unspecified
duration as in the conventional equilibrium state calculation method, time
slot must have a specific value, which will in turn affect the entire calculation
process. The size of the time slot must be determined carefully, as a bigger
value can make the calculation significantly less complex, while a smaller
value can provide extra accuracy, up to a point where it is already smaller
than the size of hardware time clock. As the simple Bernoulli process is used
to model the arrival process, the time slot value must be sufficiently small so
that the dynamic behaviour of TCP traffic source, including the transmission
speed increase and decrease in response to the dropping event in the queue,
can be accurately modelled by Bernoulli process inside each time slot.
A reasonable choice would be making both α and β a value of smaller than
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 126

1. Physically, it would represent a time slot with a size that is no larger than
the time required for the source hardware to transmit a single data packet
during the “active transmission stage” while also no larger than the time
required for the bottleneck service hardware to processing and forwarding a
single data packet. In this way, the maximal arriving packets and maximal
departing packets in every time slot is both one, and thus it would become
extremely similar to the basic Geo/Geo/1/J queue. As the size time slot
is small enough, as long as the source is in the “active transmission stage”,
the behaviour of this system can be very well modelled by the Geo/Geo/1/J
queue. When the condition of congestion window size dictates that the source
enters the “idle stage”, the same Geo/Geo/1/J queueing model can simply
change the arrival rate parameter α into zero, and it would still be a accurate
representation of the physical system.
As the arrival rate α varied almost constantly, it would be more logical to
define the size of the time slot base on the processing speed and bandwidth
of the link leaving the gateway while preventing the calculated arrival rate
during active transmission stage exceeding 1. In practice, a appropriate value
can be assigned to β first based on the relative bandwidth value of incoming
and exiting link, then the time represented by each time slot can be calculated
by

β × Spkt
Ts = (5.19)
B

where Ts is the physical time represented by each time slot, Spkt is the packet
size, and B is the exiting bandwidth of the bottleneck gateway (assuming it
is smaller than the physical processing rate of service, which is highly likely
in the modern practical network system). As the gateway which the model
represents are most likely to be routers in practical systems which is a network
layer device, IP packet size should be used in this equation. For simplicity
reason, IP packet size is fixed to the maximal value that can be inserted in a
single Ethernet frame in a regular Ethernet network, as many LAN doesn’t
support segmentation of IP packet. It is also reasonable to assume that
this is also the maximal segment size (MSS) used in the congestion window
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 127

calculation process for the TCP source, as it is a common practise to assign


MSS value to fit in the payload of the lower layer protocols. The size of
header is much smaller comparing to a full sized data payload, thus would
be ignored to avoid the unnecessary complication.
A set of MATLAB functions have been written, partially based on the
Geo/Geo/1/J generic calculation functions used in Chapter 4, as the time-
variant heterogeneous Geo/Geo/1/J queue calculation is a fundamental com-
ponent of this model. Some of these functions calculate the delay, through-
put, mean queue length, as well as other desired relevant information of a
TCP connection, by taking the parameters such as entering link bandwidth,
exiting link bandwidth, queueing buffer size, scheduling discipline, sum of all
other delay in the connection, duration of the experiments. With the size
of time slot defined and associated with the physical time unit, these para-
meters can then be converted into the equivalent parameters in the modified
queueing modelling, specified as follow:

• Assigning appropriate values for arrival and departure process para-


meter α and β based on the relative value of entering and exiting link
bandwidth so both of them are between 0 and 1. For example, if the
entering link bandwidth is 20 MB/s and exiting link bandwidth is 10
MB/s, then 0.8 and 0.4 would be an acceptable choice for α and β
respectively.

• Determine the physical time Ts represented by each discrete time slot


by using Equation (5.19).

• Calculate the total number of discrete time slot nt in this experiment


instance by

Te
nt = (5.20)
Ts

where Te is the duration of the experiment. This can be used to de-


termine if the experiment has reach the end.

• Calculate other factors for delay of the connection in unit of time slot
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 128

Ds0 by

D0
Ds0 = (5.21)
Ts

where D0 is all other delays contributing to the RTT. It is a parameter


that needs to be specified before the experiment. This is combined with
the queueing delay calculated for each packet and used to determine
how long the acknowledgement can get back to the TCP source after
the packet has been sent.

After the parameter conversion, the programme starts to calculate the con-
nection and the queueing behaviour of the bottleneck gateway slot by slot,
using functions similar to the ones in Chapter 4. However, beside the queue
length process calculation, the programme now keeps records of every packet
that has been transmitted, and put them into a transmission window, so
that it can be compared with the congestion window and determine whether
or not it has been exceeded. This determines which transmission stage the
source will be in during the following time slot. A record of every packet
that has departed from the queue or dropped in the queueing process due to
various reasons is also kept by the programme to represent the transmission
and receive of acknowledgement, respectively. Because of the delays from
the queue D, and other factors represented as Ds0 , a packet that was trans-
mitted on time slot i will receive its acknowledgement at i + D + Ds0 time
slot assuming it is not dropped. When acknowledgement packet arrives, the
corresponding packet will be considered as successfully transmitted and re-
ceived, so that it will be removed from the transmission window and allowing
additional un-acknowledged packet to be transmitted. The state distribution
of the queue in every time slot during the experiment are also recorded so that
the performance measures such as mean queue length, delay and throughput
can be calculated for each slot based on the state of the queue during that
time. Additionally, the programme will keep assessing the network situation
and calculate the statistical congestion window size based on Equation (5.5),
(5.6), (5.7), (5.8), (5.17), (5.16) and (5.18).
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 129

In this particular experiment, parameters used by the programme are


2Mbps for the entering link bandwidth, 1Mbps exiting link bandwidth, 200ms
delay from all other factors, and the experiment duration is 60 seconds. The
queueing discipline is first in first out and there are no other queueing man-
agement schemes other than the basic drop-tail queue with a maximal buffer
capacity of 20 packets. The maximal congestion window size for TCP source
is 65535 bytes, and the packet size is 1500 bytes. The initial transmission
window size is 3000 bytes (2 packets). Some of the parameter values, espe-
cially the packet size and window size, are selected so that they are easily
comparable with a similarly configured NS-2 simulation.
First the mean queue length is calculated and presented in Figure 5.3.

18

16

14
Mean Queue Length (packets)

12

10

0
0 10 20 30 40 50 60
Time (s)

Figure 5.3: Mean Queue Length MATLAB

The mean queue length in this figure is calculated by 20


P
i=0 iΠi in every
slot. As it can be observed in the figure, the mean queue length of the model
starts at zero, which represents the empty queue that the connection star-
ted with, then the mean queue length increases rapidly, which corresponds
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 130

to the slow-start stage when the transmitting window size increases expo-
nentially. Upon closer investigation, the value of mean queue length peaks
at the beginning of the experimentation, corresponding to about the 220th
time slot, when it almost reaches the maximal buffer size 20, before starting
to decrease. This represents that it is most likely that the first packet loss
event has been detected, while the source decrease its congestion window size
while perform the fast recovery. During most of the time, the TCP source
increases and decreases the congestion window size as it is receiving correct
ACK or duplicate ACKs. As a result, the mean queue length also fluctuates
within a certain range. The average queue length of the entire duration of
this experiment is 9.6787.
After the mean queue length of this experiment is calculated from state
distribution of the queue, the queueing delay is calculated and presented in
Figure 5.4.

200
Average Queueing Delay (ms)

150

100

50

0
0 10 20 30 40 50 60
Time (s)

Figure 5.4: Average Delay MATLAB

In queueing theory performance modelling, delay or wait time of a cus-


CHAPTER 5. DYNAMIC INTERACTIVE MODEL 131

tomer in a queue is calculated with the generic Little’s Result/Law using


the mean queue length. As a result, these two are directly related, so the
result of the delay shares most of the features of the mean queue length pro-
cess. Although delay is like second-hand data in this sense, it is much easier
to be experienced and measured in a practical system, and it is also much
easier to compare the value of delay calculated here with the delay value from
that of NS-2 simulation. The average queueing delay for the connection is
123.5741ms.
Following the average delay, throughput of this connection is calculated
and presented in Figure 5.5.

0.9

0.8
Normalised Throughput (Mbps)

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0
0 10 20 30 40 50 60
Time (s)

Figure 5.5: Normalised Throughput MATLAB

The throughput is another performance measurement that can be easily


experienced and measured in a practical system, and it is relatively easy to
be compared with simulation result as well. In queueing theory performance
modelling, throughput is calculated by (1 − Π0 )β. (1 − Π0 ) represents the
probability that the system is not empty, and in other words, the rate that
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 132

the service is utilised. In these experiments, as a 100% utilised gateway


represents a throughput of 1Mbps, the actually throughput of the connection
can be calculated by (1−Π0 )×1M bps. The average throughput for the entire
experiment is 0.9327Mbps.
It can be observed that this system represented by our model has a rel-
atively high throughput, achieving at more than 93% of the maximal value,
at the cost of a moderately high delay.
Finally, the average dropping rate of the system is calculated and presen-
ted in Figure 5.6.

0.35

0.3

0.25
Average Drop Rate

0.2

0.15

0.1

0.05

0
0 10 20 30 40 50 60
Time (s)

Figure 5.6: Average Drop Rate MATLAB

As mentioned in previous chapters, dropping is the most important tool


of common AQM algorithm. Thus, being able to calculated dropping rate
from the model is very important. In queueing model of a drop-tail system,
dropping probability is simply the probability that the queue is at its maximal
capacity, represented by ΠJ , or Π20 in this scenario. If the queue has a very
high probability in its full capacity state, then any arrival packets is very
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 133

likely to be dropped during that time. However, in order for a actual packet
dropping event, an arrival is needed. Thus, the final representation of a
packet dropped in any time slot is αΠJ . As it has been discussed during the
queue length paragraph before, it is statistical highly likely that the queue
length is high during the time that congestion window is already very large
and the first packet loss event is about to be detected by the source. During
this time, the queue also has the highest possible of being in the full capacity
state. As a result, the dropping rate is at its highest value during around
220th time slot. After this, because the congestion window is increasing much
slower, and decreasing very fast if a loss event is detected, probability of queue
being full is much less likely. Overall, the average dropping probability value
of the entire experiment is 0.45%.

5.4 NS-2 simulation comparison


One of the main difficulties in this evaluation is to properly set the para-
meters in both instances so they can represent the same system or two close
enough ones. With the parameter selection process performed in the MAT-
LAB experiment and conversion between practical system parameters to the
queueing modelling parameters such as bandwidth into arrival and depar-
ture rate α and β, it would be much easier to create a similar NS-2 scenario.
As all the performance measurements calculated from MATLAB numerical
solution has already been converted into units used in NS-2 simulation and
practical system, the comparison would become much more straightforward.
In this particular scenario, the topology of NS-2 simulation scenario is
presented in Figure 5.7.
N1 is the TCP source using the “Reno” version of TCP [4], with a max-
imal transmission window size of 65535 bytes, R1 is the bottleneck router,
and N2 is a TCP traffic sink and will send an acknowledgement packet to
N1 for every successfully received TCP packet. The link between N1 and R1
has a bandwidth of 2Mbps and a propagation delay of 20 ms, while the link
between R1 and N2 has a bandwidth of 1Mbps and a propagation delay of
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 134

Figure 5.7: NS-2 Topology

80ms. If the processing delay and transmission delay are considered negligible
is this case, this type of connection setup provides a 200ms round-trip delay
other than the queueing delay, identical to our assumption in the MATLAB
experiment. The queue in R1 utilises the drop-tail scheme, and the buffer size
is 20 packets. All data packets in the simulation are 1500 bytes in size. The
connection simulation runs for 60 seconds, and the queue length, queueing
delay, throughput is captured through NS-2 build-in script functions.
The instantaneous queue length presented in Figure 5.8 is captured through
the queue monitor function in the NS-2 scenario TCL script.
It checks the number of packets inside the queue of R1 frequently (in
this case, every 0.05 second) and record the data into a file on the hard
drive. It can be easily concluded that the TCP source behaved the way it is
expected. Because the maximal buffer size of the queue is 20, the packet size
is 1500 byte, they represent 30000 byte in buffer which is smaller than the
maximal congestion window size of N1 which is 65535 bytes. As a result, the
maximal window size will never be reached, and the connection will never
reach a steady state. This figure may seem to have a little bit different shape
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 135

20

18

16

14
Queue Length (packets)

12

10

0
0 10 20 30 40 50 60
Time (s)

Figure 5.8: Instantaneous Queue Length NS-2

than that of the MATLAB figure. The reason for this is because the queue
length measured here is instantaneous queue length, and the one calculated
in previous section is mean queue length, which is a weighted expectation
value of different instances. Despite this, the average queue length of this
NS-2 experiment over 60 seconds is 9.6592 which is very close to MATLAB
average of 9.5669. The approximately less than 1% difference between then is
partially because of the occasionality of a single instance of a connection, and
also due to some necessary assumption made during the the TCP behaviour
modelled process, such as completely ignore the probability of any initial
drop leads to a timeout.
The instantaneous delay of this TCP connection simulation is presented
in Figure 5.9.
This value is captured by using the awk script to analyse the simulation
trace file which contains every single event in the simulation. The script will
locate the time stamps of every packet arriving at node R1 queue, comparing
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 136

250

200
Queueing Delay (ms)

150

100

50

0
0 10 20 30 40 50 60
Time (s)

Figure 5.9: Instantaneous Delay NS-2

them with the time stamps of they leaving node R1 queue. Considering that
the link speed is relatively low and the processing and transmitting delay is
negligible, this time difference will be the instantaneous queueing delay at
node R1 for each packet. Overall, the instantaneous delay share most of the
property of instantaneous queue length, same as the relationship between the
mean queue length and average queueing delay in the equivalent MATLAB
experiment. This value here has a average of 127.1405ms over the 60 seconds.
It has a similar very small difference with the average in MATLAB which is
123.5741ms.
Following the delay figure, the throughput of the connection is presented
in Figure 5.10.
This performance is measured by a function in the simulation scenario
TCL script, similar to the way of instantaneous queue length measurement.
The function checks regularly (in this case, every 0.05 second) how many
packets have passed through the queue in question. Multiplied by the size
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 137

1.2

1
Throughput (Mbps)

0.8

0.6

0.4

0.2

0
0 10 20 30 40 50 60
Time (s)

Figure 5.10: Instantaneous Throughput NS-2

of each packet, then the result is the throughput of the queue, and thus,
the throughput of this connection. It is worth mentioning that while it may
seem erroneous that some data point is above 1.2Mbps as the link capacity
is only 1Mbps. This is because the way this value is calculated. Packets
on both edges of the 0.05 time slot may be considered inside the slot while
they are only partially inside, and the majority of them actually located in
other time slot. This will cause certain slot to be considered with higher
number of packets passing through, which causes the spike point in the fig-
ure. The average throughput value of the entire simulation of 60 seconds
is 0.9356Mbps, very similar to that of MATLAB calculation which has an
average of 0.9327Mbps.
Finally, the packet dropping figure is presented in 5.11.
Due to the characteristics of the drop-tail queue, the dropping rate in a
physical system can only be 0 or 1, where as long as the queue is not at its
full capacity state, any arrival packet is accepted, thus the dropping rate of
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 138

0.8
Drop Rate

0.6

0.4

0.2

0
0 10 20 30 40 50 60
Time (s)

Figure 5.11: Drop Rate NS-2

0, and all new arrival packets are dropping if the queue is at its full capacity
state. Compare this figure with that of queue length, it can be observed
that all dropping corresponding exactly with the time where queue length is
at its highest possible value. Of all the transmitted data packets, the rate
of which are dropped is 0.31%. It seems a little small comparing to the
MATLAB value of 0.45%, but this is mostly due to the fact that only very
few number of packets has been dropped in the short time of 60 seconds,
and the sample space is very small for such a small probability event to be
correctly compared to its statistical value.
Generally speaking, this instance of NS-2 simulation has a relatively close
performance measurements to the MATLAB calculation of the model with
equivalent parameters. The differences experienced here are considered the
difference of a single instance over a statistical result which would hopefully
be alleviated by performing more instances of simulation and calculation,
and difference between some TCP technical details of the TCP used in the
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 139

NS-2 simulation and in the model.

5.5 Evaluation with different parameters


In this section, more groups of experiments and simulations with different
parameters will be performed. In each group, one MATLAB numerical solu-
tion will be calculated, as the model utilises the statistical calculation ap-
proach, and same parameter will always generate the same result, no matter
how many time it is performed. Several NS-2 simulations will also be per-
formed in every group. The goal is to minimize the difference between the
deterministic result of NS-2 simulation and the statistical result of MATLAB
calculation. The experiments and simulations are divided into three different
groups, varying the buffer size (queueing capacity), arrival rate (entering link
bandwidth), departure rate (exiting link bandwidth) one at a time. All the
results from NS-2 simulations are the average value of 5 different instances.
As a discrete-event simulator, under the default configuration, NS-2 is
deterministic, and the simulation result for a certain parameter configuration
is same for every run. This is not a problem for the single-source model, as
there is no possible transmission collision in a wired single-source network,
and with drop-tail queue management scheme used, the entire behaviour
from transport layer and above is deterministic.
There are, however, some random behaviour at the lower layers, as NS-
2 is capable of simulating noisy channels, and the packet transmitting at
different time over the same channel may take different amount of time to be
successfully received. This means that variability can be achieved by starting
connection at different simulation time. However, this variation is at a much
smaller scale (usually smaller than 0.1ms in simulation time) comparing to
that at higher layer (usually at 100-200ms in simulation time, depending on
the RTT).
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 140

Buffer Size 10 20 30 40 50
Method Mean Queue Length (packets)
MATLAB 2.147593 9.566885 24.593914 24.641096 24.642103
NS2 2.170407 9.659185 24.688279 24.688279 24.688279
Method Average Queueing Delay (ms)
MATLAB 29.909851 123.573614 317.742117 318.351921 318.364713
NS2 38.085 127.14 307.31 307.31 307.31
Method Average Throughput (Mbps)
MATLAB 0.701372 0.932729 0.985815 0.986427 0.986503
NS2 0.703771 0.935629 0.987039 0.987039 0.987039
Method Average Drop Rate
MATLAB 0.014239 0.004435 0.000502 0.000118 0.000019
NS2 0.009513 0.003055 0 0 0

Table 5.1: Data for Various Buffer Size

5.5.1 Buffer size


In this group, the buffer size of the queue is changed between 10, 20, 30, 40,
50, while all other parameters remain the same as in the previous demon-
strative scenario, which are 2Mbps arrival rate, 1Mbps departure rate, 200ms
delay from all other factors, 60 seconds experiment duration, first in first out
queueing discipline, drop-tail queue, 65535 bytes maximal window size for
TCP source, 1500 bytes packet size and 3000 bytes (2 packets) initial trans-
mission window size. The results are presented in table 5.1.
When the buffer size varies, queue length is the first to be affected. It
would be intuitively obvious that when the maximal buffer size decreases,
so will the average queue length, as the dropping event will happen much
sooner for TCP source. Lower queue length means smaller queueing delay.
However, as the queue are now more likely to be empty, the service utilisation
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 141

rate also decreases, and this is directly linked to the throughput, which also
decreases in this case. This can be observed from the first two columns of
data sets in table 5.1.
When the buffer size increases, however, similar conclusion may not be
draw directly in reverse. In this case, because the maximal window size of
the TCP source is 65535 byte, and the size of each packet is 1500 byte, this
means there can be no more than 43 ( 655351500
= 43.679) packets in the wire and
buffer altogether even with the maximal window size reached. The result is
when the buffer size is 30, the queue length will reach a stable value at 26. As
there is no loss at all, the entire connection will be a steady flow of 1Mbps for
about 59s of the simulation. It can be observed that the performance with
buffer size 40 is almost exactly the same as buffer size 30, as it is confirmed
again with the 50 buffer size results.
In all four types of performance measures, the delay from two different
methods appears to more different than any others. This is mainly because
that in MATLAB numerical solution, delay is calculated using the generic
Little’s Law, derived directly from queue length, while in NS-2, delay is
calculated by subtracting the departing time with arriving time for packets
that are not dropped. However, packets that not dropped are not evenly
distributed over time, and the numerical solution one is calculated for every
time slot, and time slot is fixed size. However, the most important fact is
that despite in some of the scenario the different is larger, the increasing and
decreasing trend are the same and they match the expectation.
Overall, the result from simulation and calculation matches very well in
all the scenario. Difference is slightly larger with 10 buffer size set, as with
the very small buffer size, the result of queue length from NS-2 simulation
oscillates heavily, thus difference between statistic calculation from queueing
theory and deterministic simulation result become greater. It would be ex-
pected that if the buffer size is set to 2 (which is not very reasonable but still
possible) this difference will become even greater. Difference is much smaller
with 30, 40 and 50 buffer size, as all of them reach a steady connection status
with very little dynamic behaviour. Another difference is the absence of drop
in NS-2 simulations at buffer size 30 to 50, while the small but positive values
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 142

for MATLAB numerical solution. It is easy to explain for NS-2 simulations,


as discussed before, the maximal window size simply doesn’t allow the queue
length to increase beyond 26 packets, thus no drop would be observed. In
MATLAB numerical solution, because queueing theory is used, and in these
scenarios, they are represented with a queue with an arrival rate very close
to departure rate. However, according to the analysis of queueing behaviour
performed in Chapter 3, even under the condition that arrival rate is much
smaller than departure rate, the probability that the queue is full is posit-
ive, albeit extremely small. The queue is positive recurrent, thus starting
from any state, the probability that the queue transit into any state from
that state is positive within a finite transitions. Thus, there is a very small
dropping rate observed from the numerical solution result. This may seem
to contradict the maximal window size limitation analysed before. As the
service is modelled as a stochastic process, there is a positive but extremely
small probability that the next departure time is extremely large, thus effect-
ively stopping the packets from departing from the queue, and the already
transmitted packet may overwhelm the queue thus resulting the drop.

5.5.2 Arrival rate


In this group, the effect of different arrival rates is analysed. The arrival
rate (entering link bandwidth) value is changed between 1.5Mbps, 2Mbps,
2.5Mbps, 3Mbps, 3.5Mbps and 4Mbps while the buffer size remains at 20,
as do all the other parameters, which are 1Mbps departure rate, 200ms
delay from all other factors, 60 seconds experiment duration, first in first
out queueing discipline, drop-tail queue, 65535 bytes maximal window size
for TCP source, 1500 bytes packet size and 3000 bytes (2 packets) initial
transmission window size. The results are presented in Table 5.2.
The difference between the first two arrival rate is quite significant, and
the four after that is much more gradual. With the 1.5Mbps arrival rate,
it could take relatively long for the queue to reach the maximal capacity
state, and once in that state, several successive packet loss may result in
greatly decreased transmitting speed. It would explain the much smaller
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 143

Arrival Rate 1.5 2 2.5 3 3.5 4


Method Mean Queue Length (packets)
MATLAB 6.657955 9.566885 9.689258 9.743174 9.793494 9.84376
NS2 6.715711 9.659185 9.792186 9.856193 9.911887 9.967581
Method Average Queueing Delay (ms)
MATLAB 86.405306 123.573614 124.723025 125.127368 125.656916 126.009034
NS2 103.398 127.14 128.694 129.486 130.223 130.778
Method Average Throughput (Mbps)
MATLAB 0.797397 0.932729 0.933051 0.932965 0.933024 0.933287
NS2 0.799628 0.935629 0.936243 0.936448 0.936653 0.937063
Method Average Drop Rate
MATLAB 0.006098 0.004435 0.00457 0.004708 0.004775 0.004842
NS2 0.004336 0.003055 0.003053 0.003053 0.003052 0.003051

Table 5.2: Data for Various Arrival Rate


CHAPTER 5. DYNAMIC INTERACTIVE MODEL 144

mean queue length as well as other lower throughput. With the arrival rate
increasing beyond 2Mbps, because the arrival rate is large enough relatively
to the service rate, the queue length can increase steadily. The maximal
buffer size are the same for all of these scenarios, which means their queue
length are just different sets of linear increase from 0 to 20 then back to 0
at a slightly differed rate. Observing from the NS-2 performance figures in
previous sections, and according to rudimentary mathematical knowledge,
they should share a similar average value around 10 which is half of the
maximal queue length value. It can also be predicted that with this linear
growing mechanism, it is extremely unlikely that average queue length can
be much larger than 10.
Overall, the 2 groups of data match quite well with each other, with it
better on the higher arrival rate end. There are still some difference with
delay on the low arrival rate end, but it mostly diminished at the high arrival
rate end. With higher arrival rate, the traffic source simply has to spend a
larger ratio of time in its “idle stage” instead of “active transmission stage”.
Ultimately, the congestion window size increasing speed depends on RTT,
as during congestion avoidance stage, window size can only increase 1 MSS
for every RTT. According to the analysis from Section 5.2 this chapter, the
congestion window size is the deciding factor for the transmission speed,
which is the arrival rate of the queue. As the RTT from other source is the
same for all experiments, the overall RTT is also going to be very similar due
to the similarity of queue length in all higher rate scenarios.

5.5.3 Departure rate


In this final group of experiments, the service rate (exiting link bandwidth)
is changed between 0.4Mbps, 0.7Mbps, 1Mbps, 1.3Mbps, 1.6Mbps, 1.9Mbps
while all the other parameters remain the same as the previous sections,
which are 2Mbps arrival rate, 200ms delay from all other factors, 60 seconds
experiment duration, first in first out queueing discipline, drop-tail queue,
65535 bytes maximal window size for TCP source, 1500 bytes packet size
and 3000 bytes (2 packets) initial transmission window size. The results are
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 145

Departure Rate 0.4 0.7 1 1.3 1.6 1.9


Method Mean Queue Length (packets)
MATLAB 12.006248 9.868864 9.566885 8.502326 14.693816 9.738211
NS2 12.139651 9.7937 9.659185 8.580216 14.82128 9.817955
Method Average Queueing Delay (ms)
MATLAB 366.871775 197.639670 123.573614 85.837938 112.837549 63.145629
NS2 379.101 203.932 127.14 88.188 115.76 64.688
Method Average Throughput (Mbps)
MATLAB 0.391656 0.661037 0.932729 1.195498 1.571708 1.865301
NS2 0.393057 0.663299 0.935629 1.199029 1.576105 1.870228
Method Average Drop Rate
MATLAB 0.01722 0.011102 0.004435 0.002194 0.000059 0.000012
NS2 0.011334 0.007417 0.003055 0.001535 0 0

Table 5.3: Data for Various Departure Rate

presented in table 5.3.


The result of various departure rates turns out to be much more complic-
ated than that of various arrival rate. Although from left to right in the table,
the departure rate of the queue increased at a same interval, the other per-
formance measures do not share this trend at all. This is mainly because the
system are in different status with different departure rates. From 0.4Mbps to
1.3Mbps departure rate, it can be observed that the queue length decreases,
as does the queueing delay and drop rate while the throughput increase nu-
merically. However, the numerical value of throughput is greatly affect by the
increasing service rate. The utilisation rate actually decreases if divide the
throughput value with the exiting link bandwidth value of those scenarios.
These four sets of data share many similarity with the increasing arrival rate
experiment before, only in the reverse order. As for 1.6Mbps and 1.9Mbps,
the zero drop from NS-2 simulation is the indication that maximal window
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 146

size has limit the future increase of transmission speed, and thus a steady
flow are reached. In these two scenarios, the exiting bandwidth is much
higher, and with its delay remains the same, it bandwidth-delay product is
much higher, and eventually resulting that the queue length cannot increase
more.
Another major difference of this group comparing to the others are, with
various departure rate, the queueing delay with the same queue length is
different. In the first group of scenarios with 0.4Mbps departing rate, the
queueing delay is even higher than that in the buffer size experiments when
the buffer size is increased over 30 packets. This also explains that why both
the third group of scenarios with 1Mbps departure rate and the last group
of scenarios with 1.9Mbps departure rate has a similar average queue length
of around 9.6 packets, but their queueing delay values are vastly different.
Overall, the values from numerical solutions match well with those from
NS-2 simulations. This, along with two previous groups of scenarios with
various buffer sizes and various arrival rates, provide potent validation for
the proposed modification to the conventional equilibrium-based method and
dynamic interactive model of TCP-Queue.

5.6 Summary and discussion


In this chapter, a new dynamic interactive model with a traffic source rep-
resenting the responsive AIMD behaviour of TCP source is designed and
demonstrated in detail. This model is able to represent the dynamic beha-
viour of a single TCP source interacting with a bottleneck gateway, without
using a complicated steady-state oriented source model. A statistical inter-
active system between traffic source, gateway queue, and traffic destination
(which responds the incoming packets with acknowledgement packets) is de-
veloped, and is evaluated by performing MATLAB numerical solutions and
comparing with the NS-2 simulation of equivalent scenarios.
As this model system utilised the transient modification of queueing
model that developed in Chapter 4, it is able to model a TCP connection
CHAPTER 5. DYNAMIC INTERACTIVE MODEL 147

behaviour during any time period, rather than the conventional method that
ignore all of the stages where arrival rate is larger than the service rate, which
is more than likely to happen in a practical network system, and assuming
the system can somehow reach the equilibrium state and perform analysis
based on that.
The model system has been evaluated quite extensively, with very prom-
ising result. However, at this point, the model only represents a single TCP
source, and no active queue management scheme is present in the queue
rather than the basic drop-tail mechanism. Some crucial extensions of this
model will be introduce within the Chapter 6, 7 and 8.
Chapter 6

Multi-source Extension for the


Proposed Model

6.1 Introduction
This chapter presents the multiple-source extension for the proposed dynamic
interactive model. The relationship between different responsive sources con-
necting to their respective destination through a common bottleneck queue
is analysed statistically, after which a two-source basic extension is validated
with MATLAB numerical solutions and NS-2 simulations. It is then further
extended to include a larger amount of sources, including non-responsive
traffic sources similar to the UDP traffic in the practical network.
In Chapter 5, a dynamic interactive model representing the responsive
AIMD behaviour of TCP source is designed and its performance evaluated
by comparing the MATLAB numerical solution of the model and NS-2 sim-
ulation of equivalent parameters. According to the results of experiments
performed, the results from two different method match very well with each
other in a basic single source scenario with a drop-tail queue.
However, in a practical network system, especially if studying the AQMs
is the goal, only being able to model and analyse a single TCP source is
far from adequate. It is most unlikely that any gateway queue under the
scope of this study is operating only to receive data packets originated from

148
CHAPTER 6. MULTI-SOURCE EXTENSION 149

a single TCP source. Rarely would any single TCP source may overwhelm
the gateway which is generally fast and powerful in the modern system. As
a result, it is reasonable to derive the multi-source extension of the basic
version of the model. With a sufficiently large number of TCP traffic sources
and other unresponsive traffic sources connecting through a single queue,
the model would be a good representation of Internet traffic profile in the
practical system.
The remaining content of this chapter is organised as follows: Section 6.2
presents the mathematical derivation process for the multi-source extension;
Section 6.3 performs a demonstration of MATLAB numerical solution im-
plementation and calculation process; Section 6.4 compares NS-2 simulation
of an equivalent scenario and analyses the results; Section 6.5 introduces the
model with larger number of different types of sources, with a more soph-
isticated and elegant modelling and calculation approach; Finally, Section
6.6 concludes the chapter by summarising the efforts of the multiple-source
extension, reiterates the contributions.

6.2 Mathematical derivation for


multi-source variant
Consider a scenario in which 2 TCP sources with the same parameters and
specifications. They are connected through a single gateway to the same des-
tination. Each TCP will form an interactive relationship with the destination
through the gateway connection after the handshake protocols are completed
while effectively remain independent from each other. This is because of the
lacking information of any other traffic source at each terminal, and also one
of the main reason why AQM at the gateway is crucial in preventing conges-
tion and alleviate global synchronisation. As in a regular TCP specification,
traffic source can gather no information on the activities of any other traffic
source utilising the connecting links, the interactive relationship between this
source, the gateway and the destination are almost the same as if no other
traffic is present. When a TCP traffic source detects a loss event, it does
CHAPTER 6. MULTI-SOURCE EXTENSION 150

not have enough information to determine whether it is caused by its own


apparently overwhelmingly fast transmitting rate, or less network resource is
available to itself for some other reason, such as consumed by another TCP
traffic source connecting through the same gateway. In other words, none of
the TCP source has any information on the available network resource other
than the assumption based on the successfulness of the packet transmission.
The TCP always responds in the same way when triple duplicate ACKs or
timeout is detected: decreasing the congestion window size (or re-enter slow
start), consequently, slowing down the transmission rate.
From the prospective of gateway queue, however, it has all the informa-
tion about the congestion; unfortunately, in a standard TCP specification,
it has no way of informing the TCP traffic source of such information, other
than artificially actively dropping a fraction of the packets. This is actually
the core mechanism utilised by almost every AQM schemes. Most of the
differences between them are merely the condition for packet dropping and
the aggressiveness of the dropping.
In the model introduced in the Chapter 5, when only a single traffic
source contribute to the packets in the queue, every packet dropped by the
gateway belongs to that traffic source, and thus, it will receive the congestion
information due to detecting a loss event and respond to it accordingly. With
two traffic sources connecting through a same gateway, however, packets
inside the queue are from different sources. When a packet is dropped, only
the TCP traffic source which transmitted that particular packet may detect
and in return respond to this loss event. It should be intuitively obvious
that the probability of any packet belongs to a particular traffic source is the
ratio of all the packets from this source in the queue at this moment to the
total number of the packets in the queue at this exact moment. However,
this may be relatively difficult to calculate as information is needed for the
arrival event from any source for an extended period of time in order for
packets from different source to be accumulated in the queue, and their ratio
be obtained.
Fortunately, in a drop-tail queue and most of the AQM extensions as
well, packet will be dropped before it may enter the queue if the queue is
CHAPTER 6. MULTI-SOURCE EXTENSION 151

already full at the point of its arrival or it meets the active dropping criteria
determined by AQM configuration. This means that once the “ownership”
ratio of packets is determined by the time they enters the queue, it will not
change any more until they are processed by the service and exit the queue.
Thus, calculating the probability that a packets originated from a particular
traffic source is as simple as comparing the transmission rate ratio between
the competing traffic source at the time this packet attempts to enter the
queue. If all traffic source can be modelled with a Bernoulli model , then
there is

α(t, i)
p(t, i) = P
n (6.1)
α(t, k)
k=1

where p(t, i) is the probability that a packets originated from a traffic source
i in time slot t, α(t, i), α(t, k) are arrival rate for traffic source i and k in time
slot t specifically, and n is the total number of traffic sources connecting to
this bottleneck gateway. According to the analysis performed in the Section
5.2, dropped packet always leads to the detection of a loss event, either a
triple duplicate ACKs or a timeout, depending on the network condition
after the drop. As a result, p(t, i) is also the probability of that traffic source
i will detect and respond to the loss event that occurs in time slot t, if that
packet is dropped by the queue, either because of the full buffer, or by the
active dropping mechanism.
As there are more than one traffic sources that transmitting data packets
through the bottleneck gateway queue in question, it is necessary to differen-
tiate certain variables between different source. At the same time, the model
remains time-variant, thus, it is heterogeneous in nature, and the parameters
may vary over the time slot. Thus, variables are followed by two additional
subscripts such as α(t, i), which represents the probability of the packet from
traffic source i arrives at the queue in time slot t.
In a scenario where two TCP sources with the same parameters and
specifications are connected through a single drop-tail gateway to the same
destination, assume both sources start to transmit at the same time, and
CHAPTER 6. MULTI-SOURCE EXTENSION 152

the queue is empty. In a practical system, both sources will start transmit
slowly in the slow start stage, and due to the identical specification, they
gradually increase their transmission rate at the same pace. Comparing with
a scenario of only a single traffic source with identical specification, the com-
bined transmission rate from the two traffic sources would increase twice
as fast. If it takes the time of t for a single source to approach the max-
imal network capacity, detecting the first loss event and entering congestion
avoidance stage, then it would take approximately 2t with two sources assum-
ing the slow start threshold SSth is either larger than the bandwidth delay
product (in both scenarios the sources are in slow start stage when conges-
tion happens), or smaller than half of the bandwidth delay product (in both
scenarios the sources are in congestion avoidance stage when congestion hap-
pens). When approaching this point, with the increasing transmission rate
from both sources, the combined traffic arrival rate will gradually approach
and eventually exceed the service rate of the gateway, which means that more
and more packets queue up in the buffer, and eventually the buffer will be
full, and the very next incoming packets will be dropped as soon as it reaches
and attempts to enter the queue.
As the two sources have the same parameters and specifications, the trans-
mission rates of the two sources at this moment are the same. According to
Equation (6.1), there is an equal chance that this first packet dropped was
transmitted from either sources. At this point, after detecting this loss event
either by triple duplicate ACKs or timeout, only the source that transmit-
ted this packet will respond to this event, decreasing the congestion window
size, and depending on the type of the loss event, either enters congestion
avoidance and perform fast recovery, or enters the slow start stage. At the
same time, the other source remains unaffected by this drop and continues
to increase its transmission rate due to the increased congestion window. It
is possible that this can last as long as another 2t , so long as packets from
this source is “lucky” enough to not be dropped (all packet drops are from
only one traffic source). However, in this case, as the similar packet ratio
from both sources is exactly the same, the possibility that packets from one
source do not get “picked” and dropped for a consecutively n times will be
CHAPTER 6. MULTI-SOURCE EXTENSION 153

( 21 )n , and it drops rapidly below 1% for only six “picks”. In reality, it is even
less likely, as the transmission speed from one traffic source is decreasing due
to frequently being dropped, according to Equation (6.1), the traffic ratio of
the traffic source that has not been dropped keeps increasing, and thus, the
probability of it been dropped increases with time.
After this point, both sources detect loss event associated with their trans-
mitted packets, and respond to those events accordingly. Separately, they
continue to slowly increase transmission rate when the network utilisation is
low enough and no drop happens, and decrease rate when network resource is
close to full utilisation and drop event is detected. This is still true even with
two traffic source with different parameters and active transmission rate, as
there is a very high probability that the high speed source detect its loss
event first due to the high percentage of packets and more likely be “picked”
and dropped, and as it decreasing speed, the previous low speed source will
gradually become the new relatively high speed source, and thus its packet
percentage goes up and is likely to detect its own loss event and enters the
speed decreasing stage shortly after. In this sense, a small scale of “global
synchronisation” can be observed with an only two sources scenario.
Now using the similar step-by-step analysis approach introduced in Chapter
5 to represent this observation. In this case, the standard TCP model as es-
tablished in Section 5.2 would be used, and the two TCP sources have the
same parameters except their active transmission rate. Let the arrival rate of
two TCP traffic sources when working independently in active transmitting
states be α(a, 1) and α(a, 2), assuming

α(a, 1) > α(a, 2) > 0 (6.2)

and

α(a, 1) + α(a, 2) < 1 (6.3)

and considering a new connection is starting and all the handshake protocols
have been completed, then both sources enter active transmitting state at the
CHAPTER 6. MULTI-SOURCE EXTENSION 154

same time, starting to transmit at the rate α(a, 1) and α(a, 2) until s packets
have been sent with no acknowledgement packets received. This would take

s
t1 = (6.4)
α(a, 1)

time slots for source 1, and

s
t2 = (6.5)
α(a, 2)

time slots for source 2. After reaching this point, according to the specific-
ation of TCP, both of the traffic sources stop the transmission and wait for
acknowledgement packets from the destination, with source 1 slightly earlier
than source 2 due to faster transmission rate during the “active transmission
stage”. The duration of this waiting period depends on the round-trip time
(RTT) of the connections. Similarly as before, the round-trip time can be
divided into two different parts: queueing delay at this gateway for packet
i: di , and all the other delays, such as propagation delay, processing delay,
transmission delay, and queueing delay at other gateways d0 . As only the
single bottleneck queue is studied here, it is reasonable to assume that all
other delay D0 remaining a fixed value during the whole time. The round-
trip time can be represented as d = di + d0 , where di can be derived after
the state probability distribution is calculated. As the two sources share the
same gateway, the queueing delay at each time slot is the same for both of
them. As it has been assumed that all other parameters are the same for the
two sources except for the active transmission rate, as the result, they will
have the same round-trip time (RTT) in this scenario.
In the practical network, unless flow control is considered, most of the
gateway systems do not distinguish packets from different traffic source. The
most important advantage when different packets origination is ignored is
that it can save a huge amount of processing power due to less complex
calculation requirements. The biggest drawback of that is concern for fairness
and the loss ability of micromanage different flows. There are many studies
[113] argue about the concern when certain extremely fast connection and
CHAPTER 6. MULTI-SOURCE EXTENSION 155

aggressive TCP configuration deprive the network resources from the others.
However, in most non-extreme case, the packets ratio in the traffic link can
ensure fairness as their possibility of encountering full buffer or been dropped
are proportional, and the higher percentage of traffic one source contribute,
the more it will be affected by queue management schemes. Sources that are
not responsive to queue management schemes, such as any UDP traffic, will
be discussed in Section 6.5 of this chapter.
Similar to the situation in the practical network, when using stochastic
modelling tool to study multiple TCP sources interaction, ignoring different
packet origination at the queue side can avoid a large amount of complexity
and still achieve adequate result. In this scenario, the packets in the queue
are considered to be uniform, such as P P P P P P P , instead of consisting of
packets of two distinct types (origins), such as ABAABBA. In this model,
each packet in the queue has a certain probability of being originated from
any traffic source, which can be derived by the packet ratio from different
traffic sources, which is in turn derived from the transmission rate ratio
of sources at that moment, presented in Equation (6.1). In this way, the
selective response to its own loss event for the traffic source can be represented
without considering the seemingly endless possibility of different types of
packets arriving in various orders.
Assuming there is no loss in other places of the connection, and the basic
drop-tail queue management scheme is deployed, acknowledgement packets
for the first packet, no matter which source it originates from, arrives at
that particular source d1 + d0 time slot after it was initially transmitted, at
which point the congestion window size is doubled and this source resumes
to active transmission stage. The queue is relatively empty at this early
stage, and both of the sources begin the handshakes protocols and data
packet transmission at the same time statistically. With little to no chance
that their data packets collide and are dropped due to full queue capacity,
their transmission cycle (from “active transmission stage” to “idle stage” and
start again) are mostly synchronised. This behaviour with slow start during
the early stage of the connection is relatively straightforward, as the queue
starts from an empty state and the window sizes are relatively small at this
CHAPTER 6. MULTI-SOURCE EXTENSION 156

point. After several cycles, the probability of the full queue capacity becomes
positive, which means that the arriving packets are dropped if the buffer is
full at that moment. The probability of the a packet been transmitted by its
source i in a certain time slot can be determined by the active transmission
rate of that source i and the transmission status of source i. Similarly, it is
possible to represent the probability of the acknowledgement of any packet
arriving back at its source (may or may not be source i) in d1 + d0 time
slot after this one by αpnot dropped assuming that in that time slot the source
that transmitted this packet is in active transmission stage, where α is the
overall observed packet arrival rate from the perspective of the queue. The
pnot dropped here can be easily calculated by

pd = 1 − pd = 1 − (pf + pa ) (6.6)

where pd = pnot dropped , pd is the overall probability that a packet is dropped


before entering the queue, pf is the probability of the queueing buffer being
full at the time of the packet arrival, and in the discrete-time queueing model
with a buffer size J, the probability that the queue being full pf can be derived
from the state distribution of the queue in that time slot as ΠJ . Finally, pa is
the probability of a packet dropped by active dropping mechanism of AQM
during that time slot. In the event of a drop-tail queue is used, however,
such as in this scenario, the pa is simply a constant 0.
Equation (6.6) originated from the analysis with the single TCP source
model in the previous chapter. In a multi-source scenario, this equation only
represent the probability that an acknowledgement packet reach any of the
source during a certain time slot, but not specifying which source transmitted
that packets d1 + d0 time slot ago, and receive the acknowledgement packet
for that in this time slot. The probability of a packet in the queue originated
from a certain traffic source equals to the transmission rate ratio of them at
CHAPTER 6. MULTI-SOURCE EXTENSION 157

that time. In this two-source scenario, this can be represented as

α(t, 1)
p(t, 1) =
α(t, 1) + α(t, 2)
α(t, 2)
p(t, 2) = (6.7)
α(t, 1) + α(t, 2)

Where (t, 1), (t, 2) represents the value for source 1 and source 2 in time slot
t, respectively.
Similar to the modelling process of the single source model illustrated,
with the probability of both sources receiving the acknowledgement packets in
a certain time slot calculated, all that remains to determine the performance
of the system is managing to represent the transmission window size, or
more precisely, the congestion window size, which is affected by whether or
not the acknowledgement packets is received in time, for both of the traffic
sources, respectively. The congestion windows still behave similarly in the
previous list (5.2), and the congestion window can be represented recursively
over batches of time slots with size of RTT (which may be overridden by
dropping events) as

S(T + 1, 1) =S(T, 1) + pdc (T, 1)SDV (T, 1)


+pic (T, 1)SIV (T, 1)
S(T + 1, 2) =S(T, 2) + pdc (T, 2)SDV (T, 2)
+pic (T, 2)SIV (T, 2) (6.8)

where the (1) (2) parameters describe the different variables for source 1
and 2, respectively. For SDV (T, 1), SIV (T, 1) and SDV (T, 2), SIV (T 2), with
the assumption that both of the traffic sources have the same specification
except the active transmission rate, they would be in the same form as the
single source variant. The pdc (T, 1), pic (T, 1) and pdc (T, 2), pic (T, 2) are the
congestion window decrease and increase probability for traffic source 1 and
2, respectively. Considering that the packet ratio can be derived from the
transmission rate ratio, demonstrated previously with Equation (6.7), they
will only be a fraction of the value if a single traffic source was to transmit all
CHAPTER 6. MULTI-SOURCE EXTENSION 158

the packets and detect all the loss event. In the event of congestion window
increase, the behaviour with multiple traffic source would be identical with
that of a single source, and according the analysis in the Section 5.2, as well
as Equation (6.7) in this chapter, there is

pic = αpd = α[1 − (ΠJ + pa )] (6.9)


pic (T, k) = p(T, k)α(T )pic = α(T, k)[1 − (ΠJ + pa )] (6.10)
SIV (T, k) = Spkt (6.11)

for congestion avoidance, and

SIV (T, k) = S(T, i) (6.12)

for slow start.


When only a single traffic source is transmitting to a queue with basic
drop-tail management scheme, all loss event can be considered a triple du-
plicate ACKs event. This is mainly due to the fact that no matter how large
the proportion of packets that follow the initial dropped packet was lost due
to the full queue capacity in a drop-tail queue, enough packets (more than
three) can still enter the queue and eventually reach the queue within the
time that is shorter than timeout value (usually 2 × RTT) and their ACKs
return to the source for it to detect the triple duplicate ACKs event instead
of timeout event. With multiple traffic source transmitting packets over a
same bottleneck queue, however, it is possible that all the newly freed space
in the mostly full queue is occupied by the other traffic source(s) so that no
following packet can reach the destination. Under this condition, no ACK,
duplicate or not, is received by the source at all. Eventually, it will detect
the timeout event instead of the triple duplicate, and skip the fast recovery
[3] phase and directly re-initiate slow start.
During the illustration of synchronisation between the source, it has been
shown that it is extremely unlikely that a particular source monopolises all
the network resource, even with a different active transmission rate para-
meter. As a result, in a drop-tail queue, either single source or multiple
CHAPTER 6. MULTI-SOURCE EXTENSION 159

sources, the probability that the initial packet drop leads to timeout event
detected by the queue is negligible for the calculation of performance meas-
ures of the queue. However, the probability that during fast recovery phase,
the retransmitted packet was dropped and thus cause the source re-initiate
the slow start cannot be ignore. Similar to the single scenario, it depends on
the dropping probability and queueing status when the retransmitted packet
arrive.
Thus, the congestion window size changes when a loss event, which stat-
istically speaking is almost always a triple duplicate ACKs event, can be
identified. In every time slot, the source would react with the probability of

pdc =pd = P iJ + pa (6.13)


pdc (T, k) =p(T, k)α(T )pdc = α(T, k)(ΠJ + pa ) (6.14)

and changing the congestion window size

S(T, k)
SDV (T, k) = − (6.15)
2

while setting the new slow start threshold

S(T, k)
SSth = (6.16)
2

With the window size of both sources defined, the transmission status (either
the source is in the “active transmission stage” or the “idle stage”) during
each time slot can be calculated by comparing the sum of the size of un-
acknowledged packets and the current congestion window size, similar to
that in the single source variant. Thus, the model for these two TCP con-
nection become two independent sets of combination of many stages, each
of that stage can be represented by a simple Geo/Geo/1/J queueing model
with different parameters (most importantly, α), and the transitions between
different stages are determined by the status of the congestion window size,
which is in turn affected by the performance measure (namely, the packet
dropping rate) of the queue affecting independently on two sources, quite
CHAPTER 6. MULTI-SOURCE EXTENSION 160

similar to the way TCP source behaves in practical systems.


In order to validate this new important extension of the proposed model,
and further demonstrate it along the way, MATLAB numerical solution is
performed based on the equations deduced here. Then this result is compared
to NS-2 [1] simulation with equivalent system parameters.

6.3 MATLAB numerical solution


In this section, an instance of the experiment calculation of numerical solution
is performed to further demonstrate the new multi-source extension for the
dynamic interactive dynamic model. Following this section, NS-2 simulation
of a scenario with equivalent parameter setting is also performed in order to
compare with the results calculated by MATLAB numerical solution of the
model in Section 6.4. More thorough evaluation with different parameters is
performed later along with the complex source extension in Section 6.5.
Several new MATLAB functions have been written or extended. As differ-
ent traffic sources in the connection behave independently from each other,
function that describe the source behaviour are a composition of multiple
single-source version ones. The other parts are mostly based on the single-
source calculation method presented in the previous chapter, as the queueing
behaviour with multiple source shares most of the traits from single-sourced
version, as it can be observed in the derivation process demonstrated in the
previous section. Similar to the previous single-source version, selection of
the size of the time slot has critical effect on the calculation process, as while
it also inherited the trade-off between calculation accuracy and computation
complexity, with more than one traffic source with different active transmis-
sion speed. For the simple two-source scenario which will be demonstrated
in the following paragraphs, it is logical to assume that all of these repres-
entations of active transmission rates α(a,k) must be within the range of 0
Pn
to 1 and the maximal overall incoming traffic rate α(a,k) must also fall
k=1
within that range, so that the final model can be correctly represented by
the Geo/Geo/1/J queue in each time slot. It would be more logical to define
CHAPTER 6. MULTI-SOURCE EXTENSION 161

the size of the time slot base on the processing speed and bandwidth of the
link leaving the gateway while preventing the calculated overall arrival rate
P n
α(a,k) during active transmission stage exceeding 1, as the arrival rate
k=1
α(t,k) varied almost constantly.
The first step of the modelling calculation is identical to the single source
calculation. An appropriate probability value needs to be assigned to the
service rate β first based on the relative bandwidth value of incoming and
exiting link, then the time represented by each time slot can be calculated
by

β × Spkt
Ts = (6.17)
B

where Ts is the physical time in seconds (s) or microseconds (ms) represented


by each time slot, Spkt is the packet size, and B is the exiting bandwidth of
the bottleneck gateway. IP packet size should be used in this equation for
the same reason that has been stated in the single-source numerical solution
demonstration.
The multi-source version of MATLAB functions that used in this exper-
iment calculate the delay, throughput, mean queue length, as well as other
desired relevant information of all the involving TCP connections, by tak-
ing the parameters such as entering link bandwidth, exiting link bandwidth,
queueing buffer size, scheduling discipline, sum of all other delay in the con-
nections, duration of the experiments, etc. Similar to those in the single-
source MATLAB numerical solution, these parameters are converted to the
equivalent parameters in the modified queueing modelling, specified as follow

• Assigning appropriate values for the departure process parameter β and


arrival process parameters during active transmission stage for multiple
sources α(a,k) , k = 1, 2, 3, · · · , n based on the relative value of entering
and exiting link bandwidth so all of them are between 0 and 1, as well as
n
P
the maximal overall incoming traffic arrival rate α(a,k) . For example,
k=1
if the entering link bandwidth is 15 MB/s for link 1 and 5MB/s for link
2 and exiting link bandwidth is 10 MB/s, then α1 = 0.6, α2 = 0.2 and
CHAPTER 6. MULTI-SOURCE EXTENSION 162

β = 0.4 would be an acceptable choice.

• Determine the physical time represented by each discrete time slot Ts


by using Equation (6.17).

• Calculate the total number of discrete time slot n in this experiment


instance by

T
nt = (6.18)
Ts

where T is the duration of the experiment. This can be used to de-


termine if the experiment has reach the end.

• Calculate other factors for delay of the connection in unit of time slot
Ds0 by

D0
Ds0 = (6.19)
Ts

where D0 is all other delays contributing to the RTT. It is a parameter


that needs to be specified before the experiment. This is combined with
the queueing delay calculated for each packet and used to determine
how long the acknowledgement can get back to the TCP source after
the packet has been sent.

After the parameter conversion, the programme starts to calculate the con-
nection and the queueing behaviour of the gateway based on the combined
traffic arrival rate from all involving TCP traffic sources and other relevant
parameters slot by slot, using functions similar to the ones used in Chapter
4 and Chapter 5. However, because of multiple traffic sources in the system,
beside the queue length process calculation, the programme now keeps re-
cords of packet transmission probability for each traffic source in any time
slot and put them into many independent transmission window, so that they
can be compared with the congestion window of each source and determine
whether or not any particular source’s congestion window has been exceeded.
This way, it can determine which transmission stage any of the source will
CHAPTER 6. MULTI-SOURCE EXTENSION 163

be in during the following time slot. Records of every packet from different
sources that has departed from the queue or dropped in the queueing process
due to various reasons are also kept by the programme, sorted by their origin-
ating sources, to represent the transmission and receive of acknowledgement,
respectively. Because of the delays from the queue D, and other factors rep-
resented as Ds0 , a packet that was transmitted on time slot i will receive its
acknowledgement at i + D + Ds0 time slot assuming it is not dropped. As
the packets on the queueing side are not distinguished by their origination,
the probability that packets from each source enters the queue, and thus
eventually reach their destination and lead to ACK packet coming back to
the source, can be simply calculated by the production of the arrival rate
from that source and the dropping probability of the queue at that time, as
shown in Equation (6.10). As the queue is the bottleneck for all of the TCP
connections, its speed determines the overall ACK receiving speed of all the
sources. The overall rate that ACK packet arrives at any traffic source is the
same as that of packet from any source depart from the queue, which can be
calculated as the throughput of the queue as (1 − Π0 )β, assuming that there
is no other drop in the connections.
In this particular multi-source experiment performed here, parameters
used by the programme are 1Mbps for both of the entering link bandwidth,
1Mbps for the bandwidth of exiting link, 200ms delay from all other factors,
and the experiment duration is 60 seconds. The queueing discipline is first
in first out and there are no other queueing management schemes other than
the basic drop-tail queue with a maximal buffer capacity of 20 packets. The
maximal congestion window sizes for both TCP sources are 65535 bytes, and
the packet size is 1500 bytes. The initial transmission window size is 3000
byte (2 packets). Some of the parameter values, especially the packet size and
window size, are selected so that they are easily comparable with a similarly
configured NS-2 simulation.
First the mean queue length is calculated and presented in Figure 6.1.
Comparing with the single source demonstration performed in Section
5.3, even though the sum of transmission rate of both source is exactly the
same as that single traffic source in the previous demonstration, it would
CHAPTER 6. MULTI-SOURCE EXTENSION 164

20

18

16

14
Mean Queue Length (packets)

12

10

0
0 10 20 30 40 50 60
Time (s)

Figure 6.1: Mean Queue Length MATLAB

take roughly half of the time for the queue to be full in this two-source
scenario. This is a confirmation of the analysis performed earlier in Section
6.2 regarding the behaviour of multiple source. During most of the time,
both of the TCP sources increase and decrease their congestion window sizes
as it is receiving correct ACK or duplicate ACKs. As a result, the mean
queue length of the queue in question also fluctuates within a certain range.
The average queue length of the entire duration of this experiment is 9.2472.
After the mean queue length of this experiment is calculated from state
probability distribution of the queue, the queueing delay is calculated and
presented in Figure 6.2.
Similarly to what has been demonstrated during the single source ex-
periment, delay or wait time of a customer (specifically, packet, in case of
computer network) in a queue is derived with the generic Little’s Result/Law
from the mean queue length. As a result, these two are directly related, so
the result of the delay shares most of the features of the mean queue length
CHAPTER 6. MULTI-SOURCE EXTENSION 165

200
Average Queueing Delay (ms)

150

100

50

0
0 10 20 30 40 50 60
Time (s)

Figure 6.2: Average Delay MATLAB

process. The average queueing delay for the whole experiment is 112.3837ms.
Following the average queueing delay, throughput of the bottleneck queue
is calculated and presented in Figure 6.3.
In these experiments, as a 100% utilised exiting link represents a through-
put of 1Mbps, the actually throughput of the connection can be calculated
by (1 − Π0 ) × 1M bps. The average throughput for the entire experiment is
0.9086Mbps.
Finally, the average dropping rate of the system is also calculated and
presented in Figure 6.4.
The average drop rate for the entire experiment duration is 1.71%, which
is much higher than the value in the single source demonstration. Heavy
traffic oscillation is a main contributing factor for this. Comparing the drop
rate with the mean queue length and delay figures before, it can be observed
that they are mostly synchronised in terms of increasing and decreasing trend.
Because a drop-tail queue is used in this scenario, which means that the
CHAPTER 6. MULTI-SOURCE EXTENSION 166

0.9

0.8
Normalised Throughput (Mbps)

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0
0 10 20 30 40 50 60
Time (s)

Figure 6.3: Normalised Throughput MATLAB

dropping probability is directly derived from the probability that the queue
is in its maximal capacity state, the only source of packet drop in the system.
Similar to that of single source demonstration, the probability of a packet
dropped in the system is the combination of two independent event: packet
arrives and the queue is at its maximal capacity state. As a result, it is
calculated by αi,t ΠJ .
It can be observed that the performance of the system represented by the
proposed extension of model shows expected result according the the analysis
performed above.

6.4 NS-2 Simulation


Now NS-2 simulation of an equivalent scenario will be perform to compare
the results with that from MATLAB numerical solution of the model. In this
particular scenario, the topology of NS-2 simulation scenario is presented in
CHAPTER 6. MULTI-SOURCE EXTENSION 167

0.3

0.25
Average Drop Rate

0.2

0.15

0.1

0.05

0
0 10 20 30 40 50 60
Time (s)

Figure 6.4: Average Drop Rate MATLAB

Figure 6.5.
Both N1 and N3 are TCP sources using the “Reno” version of TCP [4],
with a maximal transmission window size of 65535 bytes, R1 is the bottleneck
router, and N2 is a TCP traffic sink and will send an acknowledgement packet
to N1 and N3 respectively for every successfully received TCP packet from
that source. The link between N1 and R1 has a bandwidth of 1Mbps and a
propagation delay of 20 ms, the link between N3 and R1 has a bandwidth of
1Mbps and a propagation delay of 20ms, while the link between R1 and N2
has a bandwidth of 1Mbps and a propagation delay of 80ms. If the processing
delay and transmission delay are considered negligible is this case, this type of
connection setup provides a 200ms round-trip delay other than the queueing
delay, identical to our assumption in the MATLAB experiment. The queue
in R1 utilises the drop-tail scheme, and the buffer size is 20 packets, same
as that in the numerical solution before. All data packets in the simulation
are 1500 bytes in size. The connection simulation runs for 60 seconds, and
CHAPTER 6. MULTI-SOURCE EXTENSION 168

Figure 6.5: NS-2 Topology

the queue length, queueing delay, throughput, drop rate is captured through
NS-2 build-in script functions.
The instantaneous queue length presented in Figure 6.6 is captured through
the queue monitor function in the NS-2 scenario TCL script.
The average queue length of this NS-2 experiment over 60 seconds is
8.7390 which is reasonably close to the MATLAB average of 9.2472. The
larger difference between then than that from single-source demonstration is
mostly due to the heavier oscillation of the traffic profile here, and oscillation
leads to larger possible discrepancy between an individual instance and the
weighted expectation value of statistical calculation.
The instantaneous delay of this TCP connection simulation is presented
in Figure 6.7.
The average queueing delay in this scenario is 119.4321ms. It has a small
difference with the average in MATLAB which is 112.3837ms. While it may
initial appear strange that the delay from NS-2 simulation is larger than that
of numerical solution, while the queue length is smaller.
Following the delay figure, the throughput of the connection is presented
CHAPTER 6. MULTI-SOURCE EXTENSION 169

20

18

16

14
Queue Length (packets)

12

10

0
0 10 20 30 40 50 60
Time (s)

Figure 6.6: Instantaneous Queue Length NS-2

in Figure 6.8.
The average throughput value of the entire simulation of 60 seconds is
0.8988Mbps, very similar to that of MATLAB numerical solution which has
an average of 0.9086Mbps.
Finally, the packet dropping figure is presented in 6.9.
Due to the characteristics of the drop-tail queue, the dropping rate in a
physical system can only be 0 or 1, where as long as the queue is not at its
full capacity state, any arrival packet is accepted, thus the dropping rate of
0, and all new arrival packets are dropping if the queue is at its full capacity
state. Compare this figure with that of queue length, it can be observed that
all dropping corresponding exactly with the time where queue length is at
its highest possible value. The overall packet drop rate is 1.53%, which is
relatively close to the MATLAB numerical solution result of 1.71%.
Generally speaking, this instance of NS-2 simulation has a relatively close
performance measurements to the MATLAB calculation of the model with
CHAPTER 6. MULTI-SOURCE EXTENSION 170

250

200
Queueing Delay (ms)

150

100

50

0
0 10 20 30 40 50 60
Time (s)

Figure 6.7: Instantaneous Delay NS-2

equivalent parameters, and all reasons of noticeable difference can be well ex-
plained. Comparing with the single source demonstration, the queue length
and delay average values are slightly smaller, so does the average throughput.
All of these are expected, and can be explained as the much higher overall
congestion window size increase and decrease speed, which reflects a heavier
oscillated traffic profile. Among the four performance measures under eval-
uation, there is generally a greater difference in the drop rate between the
numerical solutions and simulation. NS-2 delay value is based on individual
packets, while the one in the numerical solution is calculated using the gen-
eric Little’s Law, derived directly from queue length. In this scenario with
heavily oscillating traffic profile, packet is not evenly distributed over time,
while numerical calculated delay is for every time slot, and evenly distributed
over time as the time slots are of fixed size. Imagine at some point where
queue length is very high, but at the same time, no arriving packets enters
the queue, this would not be reflected by the NS-2 delay calculation method.
CHAPTER 6. MULTI-SOURCE EXTENSION 171

1.2

1
Throughput (Mbps)

0.8

0.6

0.4

0.2

0
0 10 20 30 40 50 60
Time (s)

Figure 6.8: Instantaneous Throughput NS-2

On the other hand, the numerical calculation matter calculate queueing delay
in every time slot, no matter how many packets may arrive. This leads to
potential numerical difference even with an identical system status.

6.5 Complex traffic model with multiple


responsive and unresponsive sources
6.5.1 Extension with large number of sources
In Section 6.2, analysis has been performed in order to incorporate multiple
TCP traffic source represented with the dynamic interactive model, to repres-
ent the complex network traffic. In the demonstration before, for the purpose
of clear illustration, only two traffic sources with identical configuration are
involved. With their performance evaluated, the next logical step would be
incorporate larger numbers of traffic sources with different configurations and
CHAPTER 6. MULTI-SOURCE EXTENSION 172

0.8
Drop Rate

0.6

0.4

0.2

0
0 10 20 30 40 50 60
Time (s)

Figure 6.9: Drop Rate NS-2

even unresponsive traffic sources, representing the UDP traffic, to model a


more complex Internet traffic profile.
In the practical network system, it is most likely that the bottleneck
routers on the core network have a much higher service rate comparing to
the traffic transmission rate of individual network users, and only because of
the huge number of network users connecting through the same core routers
and a large potion of the users actively transmitting packets at the similar
time, severe congestion may be observed.
To precisely reflect this situation, it is logical to construct a system model
with large number of traffic sources, each of them has a much smaller nu-
merical arrival rate comparing to that of the service rate of the core router.
Under this condition, large numbers of data packets may arrive at the same
time, and however fast the service rate is, in a single service model, only one
packet can depart the queue at a time and the rest of them have to wait
inside the queue if possible. The maximal one arrival, maximal one depar-
CHAPTER 6. MULTI-SOURCE EXTENSION 173

ture model previous used can still represent this characteristics, however, the
size of time slot must be sufficiently small comparing to the interval of the
packet within each batched arrivals. Extremely small window size increase
the computational cost significantly, in addition, with the small window size,
the probability of various events occur within the small time frame is very
small and has a numerical value close to zero. Thus, it would be very difficult
to keep the precision when the probability value very small or very large are
heavily involved.
An alternative solution is to use a multiple arrival model. The size of
the time slot can be defined as similar to the service rate to keep the one
departure model effective. Queueing model like this is usually labelled as
M an /M/1 model [116], and it is sometimes used in conjunction with the
conventional equilibrium state method. The queue length state transitional
diagram can be drawn as in Figure 6.10.

Figure 6.10: State Transition Diagram for a M an /M/1 Queue

where pi(k) , k = {1, 2, 3, · · · , n} is the probability that the queue length


increases k, pr is the probability that queue length remains, and pd is the
probability that queue length decrease.
According to the assumptions, pd and pr could be represented easily. As
there is only one possible departure in any time slot, while multiple possible
arrival, in order for queue length to decrease, all possible arrival events must
not happen while the departure event happen. Assuming the probability
that packet arrives from each source to be α1 , α2 , α3 , · · · , αn , and probability
CHAPTER 6. MULTI-SOURCE EXTENSION 174

that packet depart from the queue in a time slot to be β, this means

pd =β(1 − α1 )(1 − α2 )(1 − α3 ) · · · (1 − αn )


n
Y
=β (1 − αk ) (6.20)
k=1

where n is the total number of traffic sources transmitting through this queue.
In order for queue length to remains over the time length, there can be either
one arrival and one departure, or no arrival and no departure. This translates
to

pr =p0a0d + p1a1d
Yn
p0a0d =(1 − β) (1 − αk )
k=1

p1a1d =β[α1 (1 − α2 )(1 − α3 ) · · · (1 − αn )


+ (1 − α1 )α2 (1 − α3 ) · · · (1 − αn )
..
.
+ (1 − α1 )(1 − α2 )(1 − α3 ) · · · αn ]
n
Q
X k=1(1 − αk )
n α i
=β (6.21)
i=1
1 − αi

As for the probability that queue length increase to a certain higher valued
state, all of them can be either no departure and that many packets arrive,
or one departure and one extra many packets arrive. If α1 = α2 = α3 =
· · · = αn = α, this arrival can be described as a binomial distribution [111],
and its probability can be easily deduced as

pi (k) =pka0d + p(k+1)a1d


 
n k
pka0d =(1 − β) α (1 − αn−k )
k
 
n
p(k+1)a1d =β αk+1 (1 − αn−k−1 ) (6.22)
k+1
CHAPTER 6. MULTI-SOURCE EXTENSION 175

If all the arrival rates are different, it becomes the so-called Poisson binomial
distribution [114]. The probability mass function (pmf) of having k success-
ful trials out of a total of n with the Poisson binomial distribution can be
generally written as
X Y Y
P (K = k) = pi (1 − pj ) (6.23)
A∈Xk i∈A j∈Ac

where Xk is the set of all subsets of k integers that can be selected from
{1, 2, 3, · · · , n}, and Ac is the complement of A.
Although the above Equations of (6.23) gives a precise solution for the
Probability Mass Function (pmf ) required, it is practically infeasible to
compute even if the number n is of moderate size, as the set Xk contains
n!/[(n − k)!k!] elements. Fortunately, it is still possible to use Probability
Generating Function (pgf ) to calculate even with a larger number of sources.
As in the model, in every time slot, each arrival process can be con-
sidered to satisfy a Bernoulli distribution, and because individual TCP traffic
source is oblivious about any other sources even though they are connec-
tion through the same queue, each of the Bernoulli distribution describing
each source can be considered independent. Let Xi ∼ Bernoulli(pi ), where
i = {1, 2, 3, · · · , n} with the pgf of

pgf = E[z Xi ] (6.24)

As each of the distribution is Bernoulli, there is

pgf = E[z Xi ] = q + pz = (1 − p) + pz (6.25)


n
P
Let S = Xi denote the sum of n such independent random arrival process,
i=1
CHAPTER 6. MULTI-SOURCE EXTENSION 176

then, the pgf for the sum S of n can be described as

pgf S =E[tS ]
=E[tX1 ]E[tX2 ]E[tX3 ] · · · E[tXn ]
Yn
= [(1 − pi ) + pi z] (6.26)
i=1

The probability of k packets arrives in a time slot are given by the pmf , and
according to the properties of pgf function, pmf can also be recovered by
taking derivatives of pgf .
In this way, the probability that k packets arrives in a time slot can be
calculated by

Gk (0) dk pgf S
pka = = |z=0 (6.27)
k! k!dz k

This would produces the exact symbolic solution for the required probab-
ility as a function of the pi . In the model, pi is determined by the arrival
rate of source i in that particular time slot, which is determined by other
related factors such as congestion window size and their active transmission
rate. Because of the relatively simple form of Bernoulli distribution pgf ,
it is not very computationally expensive as long as the number of source is
manageable.
Thus, the state transition probability for queue length increase k from
normal state is

pi (k) =pka0d + p(k+1)a1d


dk pgf S
=(1 − β) |z=0
k!dz k
d(k+1) pgf S
+β |z=0 (6.28)
(k + 1)!dz (k+1)

As the model utilises the early arrival system (EAS) and centre observation
CHAPTER 6. MULTI-SOURCE EXTENSION 177

mode, the state transitional probability starting from state 0 is

dk pgf S
pi(k)f irst =pka = |z=0
k!dz k
n
Y
pr f irst = (1 − αi ) (6.29)
i=1

Similarly, let the maximal queue capacity to be J, then the state transitional
probability starting from state J is

dpgf S
pr last =(1 − β) + β |z=0
dz
n
Y
pd last =β (1 − αi ) (6.30)
i=1

With the state transitional probability originating from every possible state
defined, the state transitional matrix P can be easily generated as
 
pr f irst pi(1)f irst pi(2)f irst pi(2)f irst · · · pi(J−1)f irst pi(J)f irst
 
 pd
 pr pi(1) pi(2) ··· pi(J−2) pi(J−1)  
 0
P = pd pr pi(1) ··· pi(J−3) pi(J−2)  
 . .. .. .. .. .. .. 
 .. . . . . . . 
 
0 0 0 0 ··· pd last pr last
(6.31)

This way, the state probability distribution of queue length during any suc-
cessive time slot, and therefore, any performance measures derived from state
probability distribution can be derived using Equation (4.9), presented in
Chapter 4.
It is also necessary to include some background traffic that is unresponsive
to the dropping action performed in the queue, simulating traffic which do
not normally control the transmission speed based on the dropping event in
the network, such as that originated from UDP source. This can be easily
done by adding a traffic source that is always in “active transmission stage”.
A basic Geometric arrival process would satisfy this task with ease.
CHAPTER 6. MULTI-SOURCE EXTENSION 178

6.5.2 Evaluation for the complex traffic source


Using a similar approach as in Section 6.3, a scenario which includes a much
more complexed traffic source would be evaluated with MATLAB numer-
ical solution using the above mentioned method, and compared with NS-2
simulation with equivalent parameters.
The topology of NS-2 simulation scenario is presented in Figure 6.11.

Figure 6.11: NS-2 Topology for Active Drop Simulation

There are 18 nodes, which are numbered as 0 to 17 in the topology graph,


using the “Reno” version of TCP [4], with a maximal transmission window
size of 65535 bytes. Node 18 is an UDP source with CBR traffic which sim-
ulates the portion of unresponsive traffic within a common Internet traffic
profile. R1 is the bottleneck router, and N20 is the destination of all traffic
sources, with various TCP traffic sink and UDP traffic sink. It will send an
acknowledgement packet to the corresponding TCP source for every success-
fully received TCP packet. The sum of the active transmission rate of those
TCP traffic sources are 3.6Mbps, with each of them valued from 0.12Mbps to
CHAPTER 6. MULTI-SOURCE EXTENSION 179

Method Mean Queue Average Queueing Average Through- Average Drop


Length (packets) Delay (ms) Put (Mbps) Rate (%)
MATLAB 24.3658 292.5818 0.9991 7.7231
NS2 23.9551 295.7691 0.9940 7.2262

Table 6.1: Data for Complex Source

0.28Mbps with an increment of 0.01Mbps with another one valued 0.2Mbps


(there are two sources with the value of 0.2Mbps). The UDP source is send-
ing with CBR traffic of 0.4Mbps. With those parameters, the ratio between
the responsive TCP traffic and unresponsive UDP traffic is 9:1, which is ap-
proximately the same as that in the practical network system [57]. All the
link from traffic sources to R1 have the delay of 20 ms. The link between
R1 and N20 has a bandwidth of 1Mbps and a propagation delay of 80ms.
This makes the RTT from all the delay factors (which can be simplified as
all propagation delay) aside from the queueing delay to be 200ms. All data
packets in the simulation are 1500 bytes in size. The size of data packets ori-
ginated from the unresponsive UDP-like source is configured to be the same
as those from normal TCP sources, so that they would not be distinguished
at the queue based on their sizes. The initial transmission window size is
3000 bytes (2 packets). The connection simulation runs for 60 seconds.
The results of MATLAB numerical solution and corresponding NS-2 sim-
ulations are presented in Figures 6.12 to 6.15 and 6.16 to 6.19, and the
comparison of their average value is presented in Table 6.1.
As it can be observed from these results, in this scenario with a large
number of traffic sources, both responsive TCP-like source, and unrespons-
ive UDP-like source, the range at which queue length variant is not very
significant. The presence of unresponsive UDP-like source ensures that the
queue length and the throughput never decrease below the value that it alone
can provide. With many TCP sources with similar specification sharing a
same bottleneck queue which results in almost identical RTT for all of them,
the congestion window size increase and decease speed for all of them are
CHAPTER 6. MULTI-SOURCE EXTENSION 180

30

25
Mean Queue Length (packets)

20

15

10

0
0 10 20 30 40 50 60
Time (s)

Figure 6.12: Mean Queue Length MATLAB

350

300
Average Queueing Delay (ms)

250

200

150

100

50

0
0 10 20 30 40 50 60
Time (s)

Figure 6.13: Average Delay MATLAB


CHAPTER 6. MULTI-SOURCE EXTENSION 181

0.9

0.8
Normalised Throughput (Mbps)

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0
0 10 20 30 40 50 60
Time (s)

Figure 6.14: Normalised Throughput MATLAB

0.3

0.25

0.2
Average Drop Rate

0.15

0.1

0.05

0
0 10 20 30 40 50 60
Time (s)

Figure 6.15: Average Drop Rate MATLAB


CHAPTER 6. MULTI-SOURCE EXTENSION 182

30

25
Queue Length (packets)

20

15

10

0
0 10 20 30 40 50 60
Time (s)

Figure 6.16: Instantaneous Queue Length NS-2

350

300

250
Queueing Delay (ms)

200

150

100

50

0
0 10 20 30 40 50 60
Time (s)

Figure 6.17: Instantaneous Delay NS-2


CHAPTER 6. MULTI-SOURCE EXTENSION 183

1.2

1
Throughput (Mbps)

0.8

0.6

0.4

0.2

0
0 10 20 30 40 50 60
Time (s)

Figure 6.18: Instantaneous Throughput NS-2

0.8
Drop Rate

0.6

0.4

0.2

0
0 10 20 30 40 50 60
Time (s)

Figure 6.19: Drop Rate NS-2


CHAPTER 6. MULTI-SOURCE EXTENSION 184

mostly the same, which would result in all responsive TCP-like source would
increase and decrease their transmission rate at a similar rate. From the per-
spective of the queue, the overall arrival rate would increase and decrease over
the time slot at a much faster rate than that with only one or a few sources.
As it is widely known, with a drop-tail queueing management scheme, it is
impossible to avoid synchronisation between the traffic sources. This can be
perfectly observed in this scenario, where the queue length and other related
performance measures oscillate, increases and decreases many times in the
short 60 seconds of experiments.
In the NS-2 figures, this can be clearly observed as the instantaneous
queue length and resultant queueing delay increases to the higher point and
decreases to a very lower level shortly after that. Similarly, in the MATLAB
numerical solution figures, several points where the statistical value signific-
antly lower than the average can be observed periodically. The throughput
values gathered from both method indicate a very high utilisation percent-
age. Only certain points where queue length experience severe oscillation
do the utilisation rate fall under 100%. This is because the combined ar-
rival rate is much higher than that of the departure rate, and at the same
time, the queue length is sufficiently large, so that even with the arrival rate
during some time period experiences heavy decrease, it would only drop to
partially full, and rarely becomes empty. According to the characteristics of
the single service queue, as long as the queue is not completely empty, the
service would be fully utilised during that time. The constant background
traffic which would single-handedly guaranteed a 50% link utilisation also
greatly contribute to this.
In the average value comparison presented in the Table 6.1, the MATLAB
numerical solution of the complex traffic model achieves a very close overall
performance measures in all aspects comparing to the NS-2 simulation of the
equivalent scenarios.
CHAPTER 6. MULTI-SOURCE EXTENSION 185

6.5.3 Comparison with various parameters


In this section, more groups of MATLAB numerical solutions and NS-2 sim-
ulations with different parameters are performed. In each group, one MAT-
LAB numerical solution will be calculated, as the model produces the statist-
ical result. Several NS-2 simulations will also be performed in every group.
The goal is to minimise the difference between the deterministic result of
NS-2 simulation and the statistical result of MATLAB calculation. The ex-
periments and simulations are divided into three groups, varying the buffer
size (queueing capacity), overall arrival rate (entering link bandwidth), de-
parture rate (exiting link bandwidth) one at a time. All the results from
NS-2 simulations are the average value of five different instances.
In a multiple-source scenario, depending on the type of physical medium
used, the link layer requires various channel multiplexing techniques, so that
all possible collisions between transmission from different sources can be
avoided. In most of the link layer protocols, this is achieved by waiting a
random amount of time after the collision is detected (such as the CSMA/CD
in Ethernet), or even before the transmission of any data packet (such as the
contention window in Wireless Sensor Network).
This randomness is simulated in NS-2, but not considered in the proposed
model, so that average result from multiple NS-2 needs to be used to better
validate the proposed model. However, this variation is at a much smaller
scale (usually smaller than 0.1ms in simulation time), as most form of delay is
much smaller in a local conflicting channel due to much shorter transmission
distance. In comparison, variance in delay at higher layer is usually at 100-
200ms in simulation time, depending on the RTT, as in the scenarios used
in this research the core bottleneck also contributes the majority of delay.

• Buffer size

In this group, the buffer size of the queue is changed between 20, 30, 40, 50,
while all other parameters remain the same as in the previous demonstrative
scenario. The results are presented in Table 6.2.
When the buffer size varies, queue length is the first to be affected. It
CHAPTER 6. MULTI-SOURCE EXTENSION 186

Buffer Size 20 30 40 50
Method Mean Queue Length (packets)
MATLAB 12.4266 24.3658 29.9699 36.7924
NS2 11.7380 23.9551 29.2252 35.9327
Method Average Queueing Delay (ms)
MATLAB 149.2167 292.5818 359.8756 441.7985
NS2 144.9269 295.7691 360.8383 443.6534
Method Average Throughput (Mbps)
MATLAB 0.9092 0.9991 0.9994 0.9997
NS2 0.9044 0.9940 0.9979 0.9985
Method Average Drop Rate
MATLAB 0.096539 0.077231 0.073370 0.067191
NS2 0.089605 0.072262 0.067926 0.061420

Table 6.2: Data for Various Buffer Size


CHAPTER 6. MULTI-SOURCE EXTENSION 187

would be intuitively obvious that when the maximal buffer size increases,
so will the average queue length, as the dropping event will happen much
later for the TCP sources. Higher queue length means larger queueing delay.
However, as the queue are now less likely to be empty, the service utilisation
rate also increases, and this is directly linked to the throughput, in which an
increasing trend can also be observed. Overall, the results from simulation
matches very well in all of the scenarios.

• Arrival rate

In this group, the effect of different arrival rates is analysed. The overall
combined arrival rate (entering link bandwidth) of all the traffic sources is
changed between 2Mbps, 3Mbps, 4Mbps, 5Mbps and 6Mbps, with bandwidth
ratio of the traffic sources unmodified. All other parameters remains as that
in the demonstrative scenario. The results are presented in Table 6.3.
With the increasing overall arrival rate, a steady increasing trend of queue
length can be observed, as well as other associated performance measures,
such as queueing delay and throughput. The dropping rate also increases
as a direct result of heavier traffic load on the bottleneck gateway. Overall,
the two groups of data match quite well with each other. At higher overall
arrival rate, the traffic sources simply have to spend a larger ratio of time in
its “idle stage” instead of “active transmission stage’. Ultimately, the con-
gestion window size increasing speed depends on RTT, as during congestion
avoidance stage, window size can only increase one MSS for every RTT. Ac-
cording to the analysis performed in section 3, the congestion window size is
the deciding factor for the transmission speed, which is the arrival rate of the
queue. As the combined RTT from other sources is the same for all experi-
ments, the overall RTT is also going to be very similar due to the similarity
of queue length in all higher rate scenarios.

• Departure rate

In this final group of experiments, the service rate (exiting link bandwidth)
is changed between 0.4Mbps, 0.7Mbps, 1Mbps, 1.3Mbps and 1.6Mbps, while
CHAPTER 6. MULTI-SOURCE EXTENSION 188

Arrival Rate 2 3 4 5 6
Method Mean Queue Length (packets)
MATLAB 23.1475 23.6348 24.3658 25.0968 25.5841
NS2 22.2782 22.9969 23.9551 24.9133 25.6320
Method Average Queueing Delay (ms)
MATLAB 277.9527 283.8043 292.5818 301.3593 307.2109
NS2 275.0653 283.9383 295.7691 307.5999 316.4729
Method Average Throughput (Mbps)
MATLAB 0.9691 0.9891 0.9991 0.9994 0.9994
NS2 0.9541 0.9741 0.9940 0.9558 0.9558
Method Average Drop Rate
MATLAB 0.073369 0.074914 0.077231 0.079548 0.081093
NS2 0.067204 0.069372 0.072262 0.075152 0.077320

Table 6.3: Data for Various Arrival Rate


CHAPTER 6. MULTI-SOURCE EXTENSION 189

Departure Rate 0.4 0.7 1 1.3 1.6


Method Mean Queue Length (packets)
MATLAB 26.1932 25.4623 24.3658 24.0003 23.5130
NS2 26.2308 25.2726 23.9551 23.3562 22.6376
Method Average Queueing Delay (ms)
MATLAB 314.5254 305.7480 292.5818 288.1931 282.3414
NS2 323.8672 312.0364 295.7691 288.3749 279.5018
Method Average Throughput (Mbps)
MATLAB 0.9993 0.9991 0.9991 0.9841 0.9641
NS2 0.9958 0.9958 0.9940 0.9691 0.9392
Method Average Drop Rate
MATLAB 0.083023 0.080706 0.077231 0.076073 0.074528
NS2 0.079126 0.076236 0.072262 0.070455 0.068288

Table 6.4: Data for Various Departure Rate

all other parameters remain the same as the previous demonstrative scenario.
The results are represented in Table 6.4.
With the increasing departure rate, and generally decreasing trend of
queue length, as well as other associated performance measures, namely,
queueing delay and throughput. The dropping rate also decreases slightly.
There is a similar trend in reverse that was observed in the increasing overall
arrival rate scenarios. It can be concluded that the values from numerical
solutions match well with those from NS-2 simulations. This, along with buf-
fer sizes and arrival rates groups, provide potent validation for the proposed
calculation method and dynamic traffic source model.
CHAPTER 6. MULTI-SOURCE EXTENSION 190

6.6 Summary and discussion


In this chapter, a crucial extension to the dynamic interactive queueing model
with responsive source, the multiple sources extension, is introduced. Math-
ematical derivation for this extension is performed based on statistical ana-
lysis of the interaction between competing sources system. Implementation
and calculation details of MATLAB numerical solution is presented, and the
result for that is the compared to NS-2 simulation of equivalent scenario.
Finally, more complex model with multiple traffic sources of both responsive
TCP-like and unresponsive UDP-like members are explored, and compared
extensively with NS-2 simulations as well.
In both cases, results for the MATLAB numerical solution which is im-
plemented based on the mathematical derivation for the model match well
with the NS-2 simulation of corresponding equivalent scenarios. With the
more complex and elegant modelling and calculating method introduced for
large-scale multiple sources model, many important aspects of practical net-
work traffic profile can now be effectively represented by the extended model.
It can be concluded that the multi-source extension is valid considering the
matching performance with NS-2 simulation, as well as the more complex
model. With this extensions, the dynamic interactive queueing model is
now able to better represent practical system with complex traffic composi-
tion, which could be invaluable to the active dropping extension research in
Chapter 7 and multiple-queue extension research in Chapter 8.
Chapter 7

Active Drop Extension for the


Proposed Model

7.1 Introduction
This chapter presents the active-drop extension for the proposed dynamic
interactive model. The stochastic representation of active drop behaviour is
demonstrated, followed by the validation with MATLAB numerical solutions
and NS-2 simulations. Additionally, analysis is performed regarding the effect
of active drop on the change of traffic rate on responsive traffic sources,
which offers additional insight into the optimisation of AQM parameters for
different traffic profiles.
In all of the scenarios presented in earlier chapters, both MATLAB nu-
merical solutions and NS-2 simulations, only the basic drop-tail passive queue
management scheme is used. According to the investigation performed on
the current research and practical utilisation situation in Section 2.4 and
Section 2.5, drop-tail scheme provides poor performance under a heavy-load
network scenario, and thus can no longer satisfy the requirements for an es-
sential core router or even regional traffic hubs. Instead, different versions of
AQM schemes are widely used.
Although it has been widely agreed that AQM algorithms, such as classic
RED, have the potential to greatly reduce the queueing delay while main-

191
CHAPTER 7. ACTIVE DROP EXTENSION 192

taining relatively high throughput, as well as alleviate global synchronisation


and prejudice against bursty traffic, there are still many challenges to ensure
the effectiveness of the AQM algorithms [89]. Queueing theory has not been
widely used in the research of this area, partially due to the conventional
equilibrium-based method not as effective in cases where the queue length
dynamic behaviour and oscillation requires extensive analysis.
In Chapter 6, an extended dynamic interactive queueing model with mul-
tiple responsive and unresponsive traffic sources has been introduced. It is
mathematically derived from the statistical analysis of the system, then im-
plemented and evaluated by closely matched results from MATLAB numer-
ical solution as well as NS-2 simulations of the equivalent scenarios. With
this extension, especially the complex traffic model introduced in Section
6.5, it is possible to use this to better represent the complex real world traffic
generated by different types of network applications with sufficient accuracy.
The remaining content of this chapter is organised as follows: Section 7.2
performs statistical analysis for queueing system that employs active drop-
ping algorithm, based on the drop-tail versions derived in earlier Chapters 5
and 6; Section 7.3 performs MATLAB numerical solution to a typical model
for gateway with classic RED algorithm activated; Section 7.4 performs NS-2
simulation using equivalent parameter configuration with the previous MAT-
LAB numerical solution, and their results is compared and discrepancies
explained; Section 7.5 performs statistical analysis on the effect of active
dropping on the responsive traffic sources, and proposes a novel AQM para-
meter optimisation method based on these results; Section 7.6 performs a
case study on a typical parameter optimisation with classic RED, and the
improvement is validated with MATLAB numerical solution; Finally, Sec-
tion 7.7 concludes the chapter by summarising the statistical analysis and
dynamic model for bottleneck queue with AQM algorithms and reiterates
the contributions.
CHAPTER 7. ACTIVE DROP EXTENSION 193

7.2 Mathematical derivation for active drop


model
The drop-tail queue management scheme, used in all the model and exper-
iment so far, is the most basic queue management scheme. In many cases,
either in theoretical modelling area or on practical network applications,
drop-tail scheme is usually the “default” option. It is usually selected when
modelling a network queue, as long as the queueing management scheme is
not focused in the research, due to its simplicity comparing to even the most
basic active queue management scheme as well as mostly adequate and steady
performance. On most network devices, drop-tail queue will be automatic-
ally used if no active queue management scheme is selected, as it is usually
hardware implemented natively on all devices, and most network operators
are familiar with it.
Despite these reasons, the drop-tail scheme has some critical issues that
impedes its large scale deployment on practical network systems where per-
formance such as delay is highly concerned, or any network with heavy traffic
load. One of these issues is the TCP response to network congestion, as it
is not possible for the widely used, general implementations of TCPs to con-
trol their transmission rate and avoid congestion until the congestion failure
has already happened in the network. In addition, due to all kinds of net-
work delay, significant amount of time (comparing to the transmission and
processing speed of hardware, which has increased exponentially in the past
decades) would have passed until the TCP traffic source may respond to the
loss event in any way.
Additionally, before the loss event is detected, the TCP source usually is
still in the “active transmission stage” and the congestion window is still in-
creasing as a result of positive ACK feedbacks from the previous transmitted
packets. Thus, when the congestion happens, usually a large amount of pack-
ets needs to be discarded before the traffic source receives the notification.
As long as this passive reactive interaction and the feedback delay remains,
network congestion seems inevitable unless the network bandwidth and ser-
CHAPTER 7. ACTIVE DROP EXTENSION 194

vice capacity is much larger than the network resource requirement, enough
to manage heaviest possible traffic. This, however, would usually lead to a
very low bandwidth and service utilisation rate, due to the burstiness nature
of most Internet traffic.
One of another major issues of the drop-tail schemes is the so called
“global synchronisation” phenomenon, which is briefly simulated and dis-
cussed during the derivation process for 2-source traffic model.
This phenomenon is easily observed by the gateways and core routers,
but almost impossible to detect by the TCP sources connecting through
edge network independently due to lack of the information on the entire
network. At the same time, core routers and gateways have no easy method
to “inform” TCP sources of this situation.
The introduction of active queue management schemes greatly alleviate
these issues. With active dropping, core routers and gateways are now in
possession of an efficient tool to “inform” the edge traffic source of the net-
work situation, and is able to reshape the network traffic for better per-
formance. Although almost 20 years has passed since the original random
early detection (RED) was announced, and many researchers have proposed
modifications, even criticism to the algorithm, it is still considered to be one
of the most important AQM schemes, and has become the building block
of many newer modifications. In this section, classic RED will be analysed
and integrated into the dynamic TCP and transient queueing model. As the
principle for most AQMs which utilise the active drop is mostly the same,
the only main difference is the method dropping probability is determined.
After the classic RED algorithm is integrated into the model, it can then be
easily modified to represent many other types of AQM algorithms as well.
The core mechanism of classic RED has been briefly mentioned in earlier
chapters. In this section, the change to the interaction between TCP source
and queue will be analysed with the help of newly developed transient meth-
ods. When the drop-tail queue is used, packets are only dropped if a fixed
threshold of queue length is reached, and this threshold is not possible to ex-
ceed, as all packets are immediately dropped beyond this point. In queueing
theory, this means that the probability of packet being dropped pd is the
CHAPTER 7. ACTIVE DROP EXTENSION 195

same as pf ull , which translates to ΠJ , for a queue with the capacity of J


packets. While it is possible that the physical hardware has a larger buffer
size, the absolute dropping from drop-tail management scheme renders this
irrelevant as this additional space may never be utilised.
With active drop configured, however, there is going to be another pos-
itive possibility event that a packet may be dropped: meeting the active
dropping criteria, which can be represented as

pd =pa + (1 − pa ) × pf
=pa + (1 − pa ) × ΠJ (7.1)

With classic RED, this means that checking the weighted queue length with

avg = (1 − wq )avg 0 + wq q (7.2)

and calculates with a linear dropping function



 0
 avg < thmin ;
avg−thmin
pd = thmax −thmin
maxp thmin ≤ avg ≤ thmax ; (7.3)

1 avg > thmax .

As a transient discrete-time queue is used in the model, calculation of weighted


queue length is straightforward, as it is basically the cumulative result of
the mean queue length of several previous time slots. Because the queue
J
P
length is calculated from state probability distribution of the queue iΠi ,
i=0
they are actually mean queue length, which can be considered the statistical
queue length of numerous instances of queue length experiments. Thus, the
weighted queue length calculated with mean queue length is also a statistical
value, the same goes to dropping probability, which is calculated using this
mean weighted queue length.
The proposed dynamic interactive model uses a time-variant system. In
other words, it represents a queueing system of which the state distribution
CHAPTER 7. ACTIVE DROP EXTENSION 196

changes through time and the equilibrium state may not have been reached.
As a result, the mean queue length in each time slot may be different from the
previous one or the next one, which can be observed from numerous experi-
ments performed in Chapter 5 and 6. Thus, weighted calculation function is
still required in the model.
Most aspects of the active drop model would be similar to the versions
already introduced in the previous chapters. Comparing with a queueing
system with a basic drop-tail queue, the active dropping function only results
in additional dropping probability that allows random packet loss before the
queue reach certain capacity limit, which is represented and calculated as ΠJ .
The active dropping has obvious effect on the probability that packets enter
the queue, which can be easily calculated by add the new active dropping
with ΠJ , and has already been written in many previous equations such
as Equation (5.4), (5.7) and (6.10). However, the most significant changes
is the probability for fast recovery and re-initiate slow start phase. The
conclusion from previous analysis with fast recovery probability in Equation
(5.9), (5.10), (5.11), (5.13), (5.14), and their multi-source variants are all
drawn under the drop-tail assumption.
As it can be observed from the derivation process of the single-source
version of the model, the overall dropping probability of the queue is simply
replaced as the probability that the queue is in full capacity state, and no
other form of dropping probability is considered. It has been concluded for
both the single-source and multi-source version that the probability of ini-
tial drop of packet leads to the timeout event is extremely small and can be
neglected during the calculation of queueing performance measures. With
fast recovery, the lost packet would be immediately retransmitted after that
triple duplicate ACKs is received. However, under the drop-tail queue man-
agement scheme, by the time that retransmitted packet reach the queue, due
to the result of accumulated queue length from the fast transmission rate
leading to the loss, the queue is highly likely in the almost full state. As a
result, the probability that this retransmitted packet is lost is also very high,
leading to the source detecting timeout for the fast recovery, and re-initiate
the slow start.
CHAPTER 7. ACTIVE DROP EXTENSION 197

With AQM, however, under a well-parameterised scenario, the early dropped


packets would result in the queue with much lower probability to be in the
high queue length states. Thus, the packet dropped under AQM queue is very
likely due to the active dropping mechanism instead of the full queueing ca-
pacity. The dropping probability of AQM is generally a relatively small value
under normal working condition; thus, the probability that the subsequent
packets are consistently dropped are very unlikely, resulting in a even smaller
probability that the initial drop leads to the timeout event. The same goes to
the retransmitted packet during the fast recovery. Thus, unlike the drop-tail
scenario, where the fast recovery is very likely to fail due to a timeout and the
source needs to re-initiate the slow start, in the AQM scenario, the source
is more likely to perform a successful fast recovery, thus the source would
not require to re-initiate the slow start, and the transmission rate from the
source would experience much less oscillation than the drop-tail one.

7.3 MATLAB numerical solution


In this section, an instance of the MATLAB numerical solution is performed
to further demonstrate the new active drop extension (with classic RED) for
the extended interactive dynamic TCP and discrete-time queueing model. In
Section 7.4, NS-2 simulation of an equivalent scenario is also performed in
order to compare with the result calculated by MATLAB numerical solution
of the model.
Several MATLAB function extensions have been modified or newly writ-
ten, mostly based on the previous multi-source version. The complex traffic
with multiple responsive TCP-like sources as well as low level of unresponsive
UDP-like source is used to simulate the bursty Internet traffic. Similar to
the multi-source version, the first step is to assign an appropriate value to
the departure rate β based on the relative bandwidth value of incoming and
exiting link, then the time represented by each time slot can be calculated.
The active-drop version of MATLAB functions that used in this experi-
ment calculates the delay, throughput, mean queue length, active drop prob-
CHAPTER 7. ACTIVE DROP EXTENSION 198

ability, as well as other desired relevant information of the TCP connection,


by taking the parameters such as entering link bandwidth, exiting link band-
width, queueing buffer size, scheduling discipline, sum of all other delay in
the connection, duration of the experiments, etc. With the size of time
slot defined and associated with the physical time unit seconds (s) or mi-
croseconds (ms) using the Equation (5.19), these parameters can then be
converted into the equivalent parameters in the modified queueing model,
similar to that in the drop-tail versions of numerical solution.
After the parameter conversion, the programme starts to calculate the
connection and the queueing behaviour of the bottleneck gateway based on
the traffic arrival rate from the TCP traffic source and other relevant para-
meters slot by slot, using functions similar to the ones used in Chapter 4,
5 and 6. However, because of the deployment of the active dropping mech-
anism on the queue, the dropping rate is no longer the same as before. It
uses to equal simply to the probability that the queue is full, which is the
case for any drop-tail queue, represented in queueing theory as ΠJ , where
J is the maximal buffer size. As the active dropping activities are usually
the interests of study when an active queueing management scheme utilising
active dropping is deployed on a queue, the programme will now record the
active dropping rate at each time slot, which is crucial for further study with
AQM dropping function analysis. Parameters used to determine the active
dropping rate is also recorded during each time slot. In this way, it is possible
for future analysis on the parameter optimisation.
In this particular active-drop experiment performed here, the complex
traffic source is used, with the parameters of 4Mbps for the combining enter-
ing link bandwidth, which includes 18 TCP traffic sources of various active
transmission rate. The sum of the active transmission rate of those TCP
traffic sources are 3.6Mbps, with each of them valued from 0.12Mbps to
0.28Mbps with an increment of 0.01Mbps with another one valued 0.2Mbps
(there are two sources with the value of 0.2Mbps). Beside these, there is a
background traffic of consistently 0.4Mbps transmitting through the queue,
which simulates the unresponsive UDP-like sources. With those parameters,
the ratio between the responsive TCP traffic and unresponsive UDP traffic is
CHAPTER 7. ACTIVE DROP EXTENSION 199

9:1, which is approximately the same as that in the practical network system
[57]. The exiting link bandwidth for the bottleneck queue is 1Mbps, and there
is 200ms delay from all other factors which contributing to packet RTT, apart
from the queueing delay at the bottleneck queue. The experiment duration
is 60 seconds.
The queueing discipline for the bottleneck queue is first in first out and
there is a classic version of RED configured with the upper, lower threshold of
15 and 5 respectively. The maximal dropping rate at high threshold is 10%.
This parameter configuration follows the recommendation from Floyd [43],
which is considered to be generally efficient. The “gentle” modification of
the RED is not applied, which means that the algorithm drops any incoming
packets once the calculated weighted average queue length is larger than the
upper threshold, 15 in this case. The maximal buffer size of 30 IP packets.
The maximal window size for all of the TCP source is 65535 bytes, and the
packet size is 1500 bytes. The initial transmission window size is 3000 byte
(2 packets). Some of the parameter values, especially the packet size and
window size, are selected so that they are easily comparable with a similarly
configured NS-2 simulation.
First the mean queue length is calculated and presented in Figure 7.1.
Examining the figure more closely, it can be observed that the mean
queue length reaches a peak at about the 40th time slot, before starting to
decrease. This represents that it is most likely that many of the TCP traffic
sources will enter the congestion avoidance stage around this time due to a
loss event has been detected. Notice that unlike that can be observed with a
drop-tail queue, this “peak” queue length does not reach the buffer size limit,
which is 30 packets in this case, but rather, the packet loss happened earlier,
around with about 15 packets. This is consistent with the upper threshold
of 15 packets in the RED configuration. In the congestion avoidance stage,
the TCP sources increase and decrease the window size as it is receiving or
missing acknowledgement for the packets that have been transmitted. As a
result, the mean queue length of the queue in question also fluctuates but
ultimately remains within a relatively steady range. Due to the presence
of the active dropping mechanism, the average queue length of the entire
CHAPTER 7. ACTIVE DROP EXTENSION 200

14

12
Mean Queue Length (packets)

10

0
0 10 20 30 40 50 60
Time (s)

Figure 7.1: Mean Queue Length MATLAB

duration of this experiment is only 5.1782. It is a much smaller value com-


paring to that from any drop-tail queue experiment with a similar arrival
and departure rate, which is 23.9551 an equivalent scenario.
After the mean queue length of this experiment is calculated from state
probability distribution of the queue, the queueing delay is calculated and
presented in Figure 7.2.
It has an average of 75.5684ms. Similar to that of mean queue length,
the average delay is much lower than any drop-tail queue experiment per-
formed before, which as the delay of 295.7691ms, due to the presence of active
dropping mechanism.
Following the average queueing delay, throughput of the queue is calcu-
lated and presented in Figure 7.3.
In this experiment, as a 100% utilised gateway represents a throughput
of 1Mbps, the actual throughput of the connection can be calculated by
(1 − Π0 ) × 1M bps. The average throughput for the entire experiment is
CHAPTER 7. ACTIVE DROP EXTENSION 201

180

160

140
Average Queueing Delay (ms)

120

100

80

60

40

20

0
0 10 20 30 40 50 60
Time (s)

Figure 7.2: Average Delay MATLAB

0.9739Mbps. This is a very high link utilisation rate, comparing to the


drop-tail version of complex traffic queue experiment, which is only slightly
higher at 0.9940Mbps. Considering the significant reduction of delay and
queue length, and the fact that the high utilisation of drop-tail experiment is
mostly the result of high CBR traffic, this indicates that the random dropping
greatly alleviates the “global synchronisation” between the 18 TCP traffic
sources which contributing to the burstiness of the complex traffic source
model.
Finally, the average dropping rate of the system is also calculated and
presented in Figure 7.4.
The average drop rate for the entire experiment duration is 10.4333%
which is much higher than the values in any of the drop-tail version. This
is mainly due to the fact that the traffic is very heavy for this bottleneck to
manage. As it can be observed from the mean queue length data, presented
in Figure 7.1, the probability that the queue is in a state that with a positive
CHAPTER 7. ACTIVE DROP EXTENSION 202

0.9

0.8
Normalised Throughput (Mbps)

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0
0 10 20 30 40 50 60
Time (s)

Figure 7.3: Normalised Throughput MATLAB

probability of active drop is relatively high. In addition, there is the heavy


UDP traffic which is not responsive to the active dropping mechanism. As
a result, more packets need to be actively dropped in order to manage the
incoming traffic and maintain the queue length within the targeted range,
for some of the dropped packets are UDP packet whose source would not
decrease the overall traffic arrival rate.
It can be observed that the performance of the system represented by our
model matches logical expectation and is easy to explain. The queue length
and delay is much smaller comparing to all of the drop-tail experiments per-
formed in earlier chapters due to the implemented active queue management
scheme: classic RED. It randomly drops packet before the buffer is full, thus
manage the TCP transmission speed, preventing heavy congestion as well
as limiting the average queue length and delay. The increase of through-
put is also the indicator that the synchronisation phenomenon between TCP
traffic sources is greatly alleviated. The drawback is easily observed with
CHAPTER 7. ACTIVE DROP EXTENSION 203

0.6

0.5
Average Drop Rate

0.4

0.3

0.2

0.1

0
0 10 20 30 40 50 60
Time (s)

Figure 7.4: Average Drop Rate MATLAB

the sharply increased packet drop rate. That is one of the main reasons why
balancing and managing trade-offs between more aggressive drop and smal-
ler queueing delay is extremely important when deploying active dropping
algorithms on a bottleneck queue with heavy traffic load.

7.4 NS-2 simulation


Now NS-2 simulation of an equivalent scenario will be perform to compare
the result with the that from MATLAB numerical solution of the model. In
this particular scenario, the topology of NS-2 simulation scenario is presented
in Figure 7.5.
There are 18 nodes, which are numbered as 0 to 17 in the topology graph,
using the “Reno” version of TCP [4], with a maximal transmission window
size of 65535 bytes. Node 18 is an UDP source with CBR traffic which sim-
ulates the portion of unresponsive traffic within a common Internet traffic
CHAPTER 7. ACTIVE DROP EXTENSION 204

Figure 7.5: NS-2 Topology for Active Drop Simulation

profile. R1 is the bottleneck router, and N20 is the destination of all traffic
sources, with various TCP traffic sink and UDP traffic sink. It will send an
acknowledgement packet to the corresponding TCP source for every success-
fully received TCP packet. The sum of the active transmission rate of those
TCP traffic sources are 3.6Mbps, with each of them valued from 0.12Mbps to
0.28Mbps with an increment of 0.01Mbps with another one valued 0.2Mbps
(there are two sources with the value of 0.2Mbps). The UDP source is send-
ing with CBR traffic of 0.4Mbps. With those parameters, the ratio between
the responsive TCP traffic and unresponsive UDP traffic is 9:1, which is ap-
proximately the same as that in the practical network system [57]. All the
link from traffic sources to R1 have the delay of 20 ms. The link between
R1 and N20 has a bandwidth of 1Mbps and a propagation delay of 80ms.
This makes the RTT from all the delay factors (which can be simplified as
all propagation delay) aside from the queueing delay to be 200ms, equalling
to that from the numerical solution. The queue in R1 utilises the classic
CHAPTER 7. ACTIVE DROP EXTENSION 205

RED scheme, which has been already implemented into NS-2, and it has
been configured to has the upper, lower threshold, maximal drop probability
and queue weight of 15, 5, 10% and 0.002 respectively, same as that in the
MATLAB calculation. All data packets in the simulation are 1500 bytes in
size. The connection simulation runs for 60 seconds, and the queue length,
queueing delay, throughput, drop rate is captured through NS-2 build-in
script functions.
The instantaneous queue length presented in Figure 7.6 is captured through
the queue monitor function in the NS-2 scenario TCL script.

18

16

14
Queue Length (packets)

12

10

0
0 10 20 30 40 50 60
Time (s)

Figure 7.6: Instantaneous Queue Length NS-2

As it can be clearly observed from this figure, the queue length fluctuates
through time, but largely stayed within the lower end of the queue length
space. The fluctuation of queue length is still quite significant. This would
indicate that the current parameters of RED is not likely to be the most
optimised ones. The average queue length of this NS-2 experiment is 5.0490,
which is reasonably close to the MATLAB average of 5.1782, considering this
CHAPTER 7. ACTIVE DROP EXTENSION 206

is only one instance over the statistical calculation of the stochastic model.
The instantaneous delay of this TCP connection simulation is presented
in Figure 7.7.

200

150
Queueing Delay (ms)

100

50

0
0 10 20 30 40 50 60
Time (s)

Figure 7.7: Instantaneous Delay NS-2

The average queueing delay in this scenario is 79.8703ms. It has a small


difference with the average in MATLAB which is 75.5684ms.
Following the delay figure, the throughput of the connection is presented
in Figure 7.8.
This performance is also measured by a function in the simulation scen-
ario TCL script, same as that in the older versions of experiments. The av-
erage throughput value of the entire simulation of 60 seconds is 0.9703Mbps,
very similar to that of MATLAB numerical solution which has an average
of 0.9739Mbps. It is relatively steady, and higher than the drop-tail ver-
sion of complex source experiment, indicating the alleviated synchronisation
between TCP sources.
Finally, the packet dropping is presented in Figure 7.9.
CHAPTER 7. ACTIVE DROP EXTENSION 207

1.2

1
Throughput (Mbps)

0.8

0.6

0.4

0.2

0
0 10 20 30 40 50 60
Time (s)

Figure 7.8: Instantaneous Throughput NS-2

This drop rate data is also captured by using another awk script file to
analyse the simulation trace file. As the queue length has never exceeded
the upper threshold of RED parameter, which is smaller than the queue size,
all drop are active drop, performed by RED. As a result, all data point at
the y marker 1 indicates packet drop at that time, against all packets that
successfully reach the destination, which is at the y marker 0. Compare this
figure with that of queue length, it can be observed that packet are dropped
much more frequently slightly after the time when the queue length is at
a very high level. The overall packet drop rate is 10.9855%, which closely
matches to the MATLAB numerical solution result performed in Section 7.3
with 10.4333%.
Generally speaking, this instance of NS-2 simulation has a relatively close
performance measures to the MATLAB calculation of the model with equi-
valent parameters, and all reasons of noticeable discrepancies can be well
explained. The most important factors for them can be considered the dif-
CHAPTER 7. ACTIVE DROP EXTENSION 208

0.8
Drop Rate

0.6

0.4

0.2

0
0 10 20 30 40 50 60
Time (s)

Figure 7.9: Drop Rate NS-2

ference of a single instance over a statistical result, which would be alleviated


by performing more instances of simulation and calculation. Comparing to
all the experiment results gathered from drop-tail queue, there is a signific-
ant reduction in queue length, delay, as well as throughput in comparison
with scenarios with identical traffic input. These are achieved by the active
dropping mechanism, which inevitably increases the dropping rate, which is
clearly observed in the results. The fluctuating in queue length and delay
is also greatly reduced, which can mainly be contributed to RED algorithm
alleviated the synchronisation problems between different flows.

7.5 Statistical analysis for dropping action


feedback
When the active dropping AQM algorithm determines that the queue length
is larger than a desirable value, it starts to actively and randomly drop in-
CHAPTER 7. ACTIVE DROP EXTENSION 209

coming arrival packets based on a probability calculated by a certain function


defined by this particular algorithm and current parameter configuration. In
case of the classic RED algorithm, this is when the weighted queue length,
calculated by Equation (7.2), is larger than the lower threshold, and the
probability is calculated by Equation (7.3).
The purpose of active drop is not exactly the same as the purpose of
passive drop in the basic drop-tail queue management scheme. In a drop-
tail queue, the dropping action is more like a hardware or software block
implemented so that the buffer (for hardware limitation) or desired queue size
(for software limitation) would never be exceeded. In these cases, purpose
for the drop is directly for lowering the current instantaneous queue size. It
means that if the hardware or software determines that the recent arrival
packets would exceeding the maximal queue size by 10 packets, should all of
them are allowed into the queue, it will have to drop all of these 10 packets.
The active drop, however, is more often a form of indirect action to lower
the future queue size, instead of the current queue size. If the AQM algorithm
wishes to lower the queue size by a half, it does not need to drop half of
the incoming arrival packets. Instead, it only requires to drop a selective
amount (varies from algorithm to algorithm, and is usually much fewer than
50%) of the incoming packets, and use the dropping as a method to inform
the responsive traffic source (mostly TCP traffic source) to slow down its
transmission rate. In other words, in case of active drop for the purpose
of managing queue size, one packet dropped has the potential of decreasing
the future incoming traffic at a much higher degree. As a result, in order to
determine the best dropping probability, analysis of traffic source feedback
response is necessary.

7.5.1 Single source active drop feedback analysis


Consider a single TCP traffic source interacting with a bottleneck queue
with active dropping. When a packet is dropped at the queue, the TCP
source detects this event in two ways: duplicate acknowledgement or timeout.
The source does not actually have the information on whether the missing
CHAPTER 7. ACTIVE DROP EXTENSION 210

acknowledgement from that dropped packet is due to a loss in the network, or


this packet is simply delayed and its acknowledgement packet may come later.
As a result, it can only make prediction based on the information available
from network feedback, which comes in form of (duplicate) acknowledgement
or its absence. Most TCP treat timeout as a loss event, while treat three
duplicate acknowledgement as a different kind of loss event which is usually
considered to be a lower severity indication, and the network is less likely to
be experiencing congestion failure.
In TCP Reno used in this research, which is popular in practical net-
work systems in forms of many derivations, responses to the timeout event
and triple duplicate acknowledgement event are different. If three duplic-
ate acknowledgements are received, with no flow control window changes on
the receiver’s side is advertised, TCP Reno will halve the congestion win-
dow size, set the slow start threshold equal to the new congestion window
size, perform a fast retransmit. This action allow the retransmission of the
missing packets immediately without waiting for its timeout, and enter the
Fast Recovery phase, during which time it waits for the acknowledgement of
the entire transmission window rather than going directly to slow-start state.
With a timeout event, however, slow start is immediately initiated, and the
slow start threshold is set to half the current congestion window size, before
the congestion window size is reduced to 1 MSS.
When a packet is actively dropped, and the following packets are not,
then the TCP source will detect triple duplicate acknowledgements. This is
highly probable when the queue length first increases to be larger than the
lower threshold, as the dropping probability is likely to be very low at this
point. With a Reno-like configuration, the traffic source responds by imme-
diately retransmit that dropped packet while waiting for acknowledgements
and decreasing the congestion window by a half of the current value. Due to
the very low active dropping probability, it is highly likely that at this point
no following packet is dropped either actively or passively, and the traffic
source will resume normal active transmission, with its congestion window
increasing additively. With the changes of the source congestion window,
from the perspective of queue and with the purpose of managing queue size,
CHAPTER 7. ACTIVE DROP EXTENSION 211

the active drop of that previous packet effectively slow down the source trans-
mission rate by about 50%. However, this decrease of traffic arrival rate can
only be observed at the bottleneck queue after approximately RTT time has
passed.
Additionally, due to the delayed feedback effect, at the time that the TCP
traffic source responds to the loss event caused by the active dropping, its
congestion window size has become larger than when this active dropping ac-
tion happens (assuming the maximal window size is not reached). Therefore,
when the congestion window is decreased by 50% of the size at that moment,
effectively, it has decreased less than a half comparing to the congestion win-
dow size corresponding to the traffic arrival rate when the drop happened.
It is logical to assume that the maximal window size is not a restriction in
the previous analysis, as this is under the general condition of the queue
length first exceed the lower threshold, and the queue length is still relat-
ively small, which means that the average speed of the bursty traffic barely
begin to become larger than the service speed. If the maximal window size
is already reached, then this traffic source won’t transmit faster than this,
thus even without the active queue management, traffic of this intensity is
unlikely to overwhelm the bottleneck queue. All of the experiment scenario
in this research assume that the bursty traffic source is intensive enough to
overwhelm the bottleneck queue if uncontrolled.
Let the delay from all other factors other than the queueing delay in the
bottleneck queue be d0 , then, statistically, RTT (in time slots) for packets
enter the queue during time slot i can be represented as

RT T = di + d0 (7.4)

where di is the queueing delay during time slot i, which can be calculated
using Equation (4.15) presented in Chapter 4. If all other delay factors from
the traffic source to the bottleneck queue is t1 , then according to the analysis
performed before, when a packet is dropped, either actively due to AQM
mechanism or passively due to full queue capacity, then this loss event would
CHAPTER 7. ACTIVE DROP EXTENSION 212

be detected by the traffic source after

t2 = RT T − t1 = di + d0 − t1 (7.5)

in form of duplicated ACK from the following packet as it returns back to


the source. Should the traffic source react immediately after receiving this
duplicated ACK, with a modified congestion window size, packets transmit-
ted after this time would have a smaller “active transmission stage” rate
which is determined by the congestion window size, according to the analysis
performed in Chapter 5. From the perspective of the bottleneck queue that
dropped the original packet, this new transmission rate would be observed
as a smaller arrival rate after t1 , which is the time needed for packet to reach
the queue after been transmitted. Under the assumption that all other delay
factor remains a fixed value during the experiment process, which is logical
if the behaviour of bottleneck queue is the research focus, then t1 does not
change value over time. As a result, t2 + t1 = di + d0 = RT T is responsive
delay in this scenario.
However, most TCP sources recognise lose event similar to the ‘Reno’
method, which only responds after three duplicated ACKs have been re-
ceived. Therefore, the actual responsive delay, in addition to the RTT cal-
culated above, is the time required for three more packet successfully reach
the destination and their corresponding ACKs came back to the source. If
the packet is dropped in time slot i, then all the following three packet must
have left the queue after time slot i + di . In a single source scenario, with no
other dropping possibility after the initial drop when entering the bottleneck
queue, all the packet that have left the queue is guaranteed to reach the des-
tination which would transmit appropriate ACK. This rate is equal to the
throughput value at that particular time. Writing tri to be the throughput
in time slot i, the statistically, the additional time slot required for three
duplicate ACKs is the smallest in integer value δt satisfying

δt
X
tri+di +k ≥ 3 (7.6)
k=1
CHAPTER 7. ACTIVE DROP EXTENSION 213

With the timeout in most form of TCP configured as double RTT amount,
the δt value calculated in Equation (7.6) is only meaningful if it is smal-
ler than RTT, as one RTT has already pass since this dropped packet was
transmitted. Otherwise, the traffic source will simply recognise the timeout
as a severe congestion indicator, and respond accordingly, mostly involving
a much step decreasing of immediate packet transmission rate.
For the purpose of managing queue length into the targeted optimal range,
the queue management scheme needs to determine the intensity of current
arrival traffic rate. Using the conventional queueing theory method with a
basic homogeneous Geo/Geo/1/J queue, it is possible to calculate the arrival
rate which would generate the queue length process with the mean queue
length within the targeted optimal range. This can then compared to the
current overall traffic arrival rate, and whether or not it needs to decrease
can then be decided.
In the proposed dynamic interactive TCP model, the single bursty traffic
is described using an on-off model with the transition between different trans-
mission state determined by the congestion window size. This is an improve-
ment over other on-off model where the transition probability between differ-
ent transmission state is usually predetermined, as the proposed model can
easily represent the responsive behaviour of congestion window size over the
events of receiving ACKs and duplicated ACKs. With the bursting speed,
which is described as “active transmission stage” in the proposed model,
usually defined and remained the same value, the arrival rate of such bursty
traffic forms a determinable relationship with the queueing behaviour which
determines the ACK receiving rate. As a result, it is possible to examine and
predict the bursting traffic using purely information available to the bottle-
neck queue, and comparing the bursting traffic overall arrival rate with the
optimal arrival rate.
From the perspective of the bottleneck queue, the bursting arrival rate for
the traffic can be easily captured. Using the proposed model, this is the same
as the transmission rate for “active transmission stage”. It is relatively easy
for the bottleneck queue to determine whether a batch of arriving packets
is transmitted during the “active transmission stage”. If the connection is
CHAPTER 7. ACTIVE DROP EXTENSION 214

newly established and the queue is in empty state, then the traffic will always
arrive in exponentially increased batch sizes, as the TCP traffic source always
begin the transmission in “slow start” stage, during which time it increases
its congestion window size by 1 MSS for every successfully received ACK,
effectively double it for every RTT. The first two packets can always be used
for this determination of bursting rate, as it is guaranteed that the source
does not need to wait for any time in order to transmit the second packet.
If the arrival interval for them is ∆i (second), then the bursting rate can be
represented as

Ts
αa = (7.7)
∆i

where Ts is the physical time represented by each time slot. With this in-
formation, then the queue can determine if the traffic source is in the “active
transmission stage” by simply compare the current arrival rate with this peak
bursting rate.
In the single source scenario, as the source may only be “active trans-
mission stage”, during which it transmits packets in the peak bursting rate
calculated above, or the “idle stage”, during which it transmits packets at
the rate of zero, then the overall transmission rate over a period of time can
be predicted with

α o = α a pa (7.8)

where pa is the probability that the source is in the “active transmission


stage”. This probability can be derived from the congestion window size.
If the source has a large enough current congestion window size, that even
continuously stays in the “active transmission stage” and transmitting pack-
ets at the peak bursting rate cannot fill it, then it would never enters the “idle
stage”, as even without the ACK confirming successfully received packet and
freeing up the more space as unacknowledged packet count decrease, there
is still available free size to transmit more packet. This corresponds to a pa
value of 1, and the source becomes a non-bursting steady CBR-like source.
CHAPTER 7. ACTIVE DROP EXTENSION 215

In order for this to be observed, the required current congestion window size
is

B × RT T
Smax = (7.9)
Spkt

where B is the bursting bandwidth. For any window size greater than Smax ,
no different will be observed, as the traffic source is already bursting at
highest possible rate.
It is worth mentioning that from the perspective of bottleneck queue,
the bursting bandwidth B and the peak bursting rate αa are not necessarily
determine by the immediate local link bandwidth from the traffic source. For
example, if a home PC is connecting to the home gateway with a 100Mbps
Ethernet link, and the gateway is connected with the ISP core router with a
20Mbps coaxial cable, then if the ISP core router is the bottleneck routers,
from its perspective, even if traffic sources on the home PC is bursting at the
rate of 100Mbps, the observed bursting bandwidth is actually 20Mbps.
Representing the bursting bandwidth B with known variables in the
model, there is

αa × Spkt
B= (7.10)
Ts

Then combining Equation (7.9) and (7.10), the minimal window size for
non-bursting arrival Smax can be derived with all known variables from the
model. If the window size is smaller than Smax , then the traffic source has to
spend time in “idle stage” and wait for ACK to decrease the unacknowledged
packet count, thus allowing active transmission to resume. As the traffic
source always bursts at the rate of B, if the current window size is S, then
before receiving ACK and with no unacknowledged packet, a traffic source
can burst for

S
tb =
B
STs
= (7.11)
αa
CHAPTER 7. ACTIVE DROP EXTENSION 216

The ratio of tb and non-bursting minimal time of RTT is the probability that
the source is in the “active transmission stage” pa , thus

tb
pa =
RT T
S
= (7.12)
αa (di + d0 )

This equation, combined with Equation (7.8), and the overall transmission
rate prediction over a period of time can be written as

S
αo = (7.13)
di + d0

In Equation (7.13), di + d0 is RTT represented in units of time slot. di is the


queueing delay at time slot i, which is accessible to the bottleneck queue.
d0 is all other delay factors. While not directly accessible to the queue,
in a single queue scenario where any other factors for delay is assumed to
be a fixed value over time, it is logical to provide it to the queue, as part
of the configuration process. Alternatively, the bottleneck queue may also
estimate this value with relative accuracy by analysing the rate at which the
size of bursting packet increase during the slow start stage (time required to
observe a doubled bursting packet size indicates one unit of RTT), or the
rate at which the source responds to the dropping event (the time difference
between the dropping event and new traffic arrival rate after the response to
that is approximately one unit of RTT).
With the Equation (7.13), as well as the knowledge of congestion window
increase and decrease mechanism, it is possible for the bottleneck to increase
or decrease is active dropping probability, so that the change in S would result
in a more favourable αo value, and the queue length are more likely to be in
the targeted optimal range. TCP source would only be in “slow start” stage
at the beginning or the connection, or after a timeout event is detected for
the “Reno” type variant. The “slow start” at the beginning of the connection
is relatively short, if the connection is maintained for at least several seconds.
Timeout event, on the other hand, suggests severe congestion in the network,
CHAPTER 7. ACTIVE DROP EXTENSION 217

and is responded by a sharp decrease in transmission rate. This is undesirable


for maintaining a steady queue length and is also unlikely to happen if a good
queue management scheme is configured. Thus, in the following congestion
window size analysis, only the behaviour during “congestion control” stage
is considered.
If the current congestion window size for the traffic source is S, and no
drop of any form occurs, then after RTT, it would increase 1 MSS. The new
overall transmission rate would become

S0 S+1
αo0 = 0
= (7.14)
di + d di + d0

and the change of overall transmission would be

1
∆αo = αo0 − αo = (7.15)
di + d0

If a packet is dropped at the beginning of that RTT, then by its end, the
new overall transmission rate would become

S0 S+1
αo0 = = (7.16)
di + d0 2(di + d0 )

As a result, if the packet dropping probability at the beginning of that RTT


is pd , then probabilistically speaking, the new overall transmission rate would
be

S+1 S+1
αo0 =(1 − pd ) 0
+ pd
di + d 2(di + d0 )
(2 − pd )(S + 1)
=
2(di + d0 )
(2 − pd )(αo (di + d0 ) + 1)
= (7.17)
2(di + d0 )

With is equation, it is possible for the bottleneck queue to predict the overall
transmission rate RTT time slot later with the current overall transmission
rate αo and packet dropping probability pd . The current overall transmission
rate αo here can be estimated by the bottleneck queue. Estimated over a
CHAPTER 7. ACTIVE DROP EXTENSION 218

longer period of time, the overall traffic arrival rate αo allows larger amount of
burstiness, and the prediction of traffic rate changes would be more accurate.

7.5.2 Complex source active drop feedback analysis


The active drop interaction between a single source and the bottleneck queue
is quite straightforward, as any drop would guaranteed a change in the traffic
arrival rate. However, in most practical network systems, the single source
condition is rarely satisfied. As the core bottleneck routers are the most
likely practical equivalents to the models in this research, it is most likely
that a large number of traffic sources with different parameters are connected
through it. In addition, even if during some time that the network is relatively
idle and there is actually only one traffic source connecting and transmitting
at that moment, it is actually very difficult for the bottleneck queue to detect
this without spending extra processing time and power to perform additional
packet analysis.
Fortunately, due to the independent nature between different traffic sources,
the feedback interaction of complex sources can be derived from the single
source analysis results. If the bottleneck queue does not discriminate data
packets by its source and destination, or its encapsulated transport layer pro-
tocol, then every data packet that attempts to enter the queue has the same
probability to be dropped by the active dropping mechanism, assuming the
dropping rate has not changed during this time. As it has been thoroughly
discussed in the multiple source derivation process, the probability that an
ACK is for a specific responsive traffic source is the same as the data packet
ratio from that traffic source after it has already enters the bottleneck queue.
Similarly, if a data packet is dropped by the active dropping mechanism, the
probability that each responsive traffic source would detect this loss event
due to it being the origination of the data packet and thus reducing the con-
gestion window size is the same as this data packet ratio, which equals to the
transmission rate ratio between traffic sources at the time that data packet
is transmitted.
According to Equation (6.1) and Equation (7.17), if the packet dropping
CHAPTER 7. ACTIVE DROP EXTENSION 219

probability at the beginning of a RTT is pd , then probabilistically speaking,


the new overall transmission rate at the end of that RTT would be
n
X
αo0 = αo0 (k)
k=1
n
X p(i, k)(2 − pd )(αo (k)(di + d0 ) + 1)
=
k=1
2(di + d0 )
n
X α(i, k)(2 − pd )(αo (k)(di + d0 ) + 1)
= P n (7.18)
k=1 2(di + d0 ) α(i, l)
l=1

In this equation, n is the number of responsive traffic source, α(i, k) is the


transmission rate of source k at for packet that arrivals at the edge of queue
during time slot i, and αo (k) is the overall data packet arrival rate from
source k. All of the variable is easily calculable in numerical solution, thus
predicting the complex traffic respond to the specific active dropping rate pd .
Thus, the bottleneck queue may determine the optimal active dropping rate
that results in the overall complex traffic arrival rate changes to a value that
makes the queue length to more likely to transit into the targeted range. If
there is unresponsive UDP traffic, then its rate can be simply added to the
new overall transmission rate, as the dropping would not affect it anyway.
In a practical network, the deterministic equivalent of Equation (7.18) can
be deduced. In the practical system, when a packet is actively dropped by
the bottleneck queue with the probability pd , it can easily gather information
on this packet which contains its source address. Identifying this source as
Source n, then in response to this, only this source would increase or decrease
its congestion window size (if it is a TCP source) based on the dropping
probability, and all other responsive sources would remain their congestion
window size as no data packet from them have entered the queue at that
CHAPTER 7. ACTIVE DROP EXTENSION 220

exact moment. This means that


n
X
Ao0 = Ao0 (k)
k=1
n−1
X (S(n) + 1)Spkt (S(n) + 1)Spkt
= Ao (k) + pd + (1 − pd )
k=1
2RT Tn RT Tn
n−1
X Ao (n) Spkt Spkt
= Ao (k) + pd ( + ) + (1 − pd )(Ao (n) + )
k=1
2 2RT Tn RT Tn
n−1
X pd (2 − pd )Spkt
= Ao (k) + (1 − )Ao (n) +
k=1
2 2RT T
n
X pd pd Spkt
= Ao (k) − Ao (n) + (1 − )
k=1
2 2 RT T
pd pd Spkt
=Ao − Ao (n) + (1 − ) (7.19)
2 2 RT T

From Equation (7.19), it can be concluded that the amount of decrease or


increase that future overall traffic arrival rate depends on the dropping rate.
The change of overall traffic arrival rate can be represented as

∆Ao =Ao0 − Ao
pd Spkt pd
=(1 − ) − Ao (n)
2 RT T 2

2(Spkt − ∆Ao RT T )
pd = (7.20)
Spkt + Ao (n)RT T

In a special case, the dropping probability required for maintaining the same
overall traffic arrival rate can be calculated as

2Spkt
pd = (7.21)
Spkt + Ao (n)RT T

In Equation (7.19), (7.20) and (7.21), Spkt is the size of data packet, which
is easily accessible information for the queue. RT T is the round trip time,
specifically, that for the traffic source whose packet has just been dropped by
CHAPTER 7. ACTIVE DROP EXTENSION 221

the active dropping mechanism. It can be estimated with a similar method


that has been introduced in the single source feedback analysis. Ao (n) is the
overall traffic arrival rate of Source n when it transmitted the packet that has
just reached the queue. The bottleneck queue can estimate the overall traffic
arrival rate for any specific traffic source by analysing the source address in
data packets over a period of RT T . In this way, burstiness of the traffic can
be allowed, and the prejudice against bursty traffic over a more steady traffic
is largely alleviated.
With all variables in Equation (7.20) and (7.21) directly accessible by
the queue, or can be derived or estimated from the accessible information,
the bottleneck queue can calculate and predict the effect of the current act-
ive dropping rate pd has over future traffic arrival rate. A dropping rate
greater than the value calculated from Equation (7.21) would decrease the
future traffic arrival rate, while a dropping rate smaller than this value would
increase the future traffic arrival rate.
The Equation (7.19), (7.20) and (7.21) also provide a practical method
for parameter configuration optimisation for many existing AQM schemes.
Given a targeted queue length and by analysing the current traffic profile,
the required dropping rate to decrease or increase the traffic rate may be
calculated for different traffic arrival rates. These data points can then be
used to calculate the parameters for that AQM using its dropping function
equation. For a algorithm such as the classic RED, which has a relatively
easy form of linear dropping function, fewer data points is required for the
determination of parameters.

7.6 Active drop optimisation


In this section, MATLAB numerical solution is performed to find the optimal
active drop rate, in order to maintain the mean queue length as close and
steady as possible to the targeted queue length. Equations derived in the
previous section is used for this calculation. The optimal active drop rate is
then used for a dynamic connection calculation, using the proposed dynamic
CHAPTER 7. ACTIVE DROP EXTENSION 222

α β Capacity Mean Queue Length


0.751 0.8 30 3.8104
0.752 0.8 30 3.8783
0.753 0.8 30 3.9490
0.7537 0.8 30 4.0002
0.754 0.8 30 4.0226
0.755 0.8 30 4.0991

Table 7.1: Finding Targeted Arrival Rate

interactive model, to demonstrate the improved performance measures.


In this particular scenario, a network configuration similar to that used
in the MATLAB numerical solution and NS-2 simulation earlier in Section
7.3 and 7.4 is used. The targeted mean queue length is 4 packets. Using the
conventional steady-state method demonstrated in Chapter 3, the targeted
arrival rate αo that results in the equilibrium mean queue length of 4 can be
calculated.
While it is not easy to calculate the targeted arrival rate αo directly
from the targeted mean queue length of 4, one can reverse the process by
calculate specific arrival rate and comparing the mean queue length result
with the targeted value. As the mean queue length increase as the arrival
rate increase, the approximate targeted arrival rate can be identified with
only a few attempts. This procedure is presented in Table 7.1.
With the bursty complex traffic source connecting to the bottleneck queue,
in order to maintain a steady mean queue length that is close to the targeted
queue length of 4 packets, an optimised active dropping probability pd needs
to be calculated, so that the overall traffic arrival rate stays close to the
targeted αo which is approximately 0.7537. According to equations in the
previous section, the equilibrium dropping rate can be calculated as

2Spkt
pd = ≈ 9.77% (7.22)
Spkt + Ao (n)RT T
CHAPTER 7. ACTIVE DROP EXTENSION 223

Mean Queue Average Queueing Average Through- Average Drop


Length (packets) Delay (ms) Put (Mbps) Rate (%)
Optimised 4.0176 54.1486 0.9727 9.9418
Classic RED 5.1782 75.5684 0.9739 10.4333
NS-2 5.0490 79.8703 0.9703 10.9855

Table 7.2: Data for Optimisation Comparison

Similarly, the optimal drop rate before the equilibrium state can be calcu-
lated, and then used as the active drop rate during the connection calculation.
The results is presented in figures 7.10 to 7.13, and the comparison between
the optimised dropping performance and the classic RED with default para-
meter configuration is presented in Table 7.2.
As it can be observed from the performance measures using the optimised
active drop rate, the mean queue length stayed relatively steady and close
to the targeted value of 4 packets. Similarly, the average queueing delay and
throughput are also more steady comparing to the classic RED equivalent.
The average drop rate is actually lower than the comparing value, as more
precise and targeted active dropping result in a more favourable traffic ar-
rival rate, which is overall closer to the calculated targeted traffic arrival rate
presented in Table 7.1. There is a slight drop in the throughput, which is a
direct consequence of a lower overall traffic arrival rate. However, the differ-
ence is negligible, as it can be observed in the third data column, considering
the much more significant performance improvement in other areas.
In practical systems, the effectiveness of this optimisation method greatly
depends on the precision of the estimated RT T and Ao0 (n). The significant
optimisation improvement observed in the previous scenario is achieved due
to the facts that all these variable are accurately accessible to the bottle-
neck queue in the numerical solution, which is indicated by the very steady
queue length under the complex traffic source which is actually very bursty
in nature, as it can be observed by many other experiments with both numer-
ical solutions and NS-2 simulations. This would be much harder to achieve
CHAPTER 7. ACTIVE DROP EXTENSION 224

10

8
Mean Queue Length (packets)

0
0 10 20 30 40 50 60
Time (s)

Figure 7.10: Mean Queue Length

140

120
Average Queueing Delay (ms)

100

80

60

40

20

0
0 10 20 30 40 50 60
Time (s)

Figure 7.11: Average Drop Rate


CHAPTER 7. ACTIVE DROP EXTENSION 225

0.9

0.8
Normalised Throughput (Mbps)

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0
0 10 20 30 40 50 60
Time (s)

Figure 7.12: Normalised Throughput

0.45

0.4

0.35

0.3
Average Drop Rate

0.25

0.2

0.15

0.1

0.05

0
0 10 20 30 40 50 60
Time (s)

Figure 7.13: Average Drop Rate


CHAPTER 7. ACTIVE DROP EXTENSION 226

as in a practical scenario the RT T and Ao0 (n) may be variant over time.

7.7 Summary and discussion


In this chapter, another crucial extensions to the dynamic interactive queueing
model with responsive traffic source, the active dropping extension, is intro-
duced. Mathematical derivation for this extension is performed based on
statistical analysis of the interactive system. Implementation and calcula-
tion details of MATLAB numerical solution is covered, and the result for
that is the compared to NS-2 simulation of an equivalent scenario. Following
this, statistical analysis of active dropping is performed, which presented new
method to calculate the relationship between the active drop rate and the
response of traffic arrival rate. Finally, drop rate optimisation is introduced
and demonstrated by comparing the optimised performance measures with
the classic RED of default parameter configuration.
Results for the MATLAB numerical solution which is implemented based
on the mathematical derivation for the model match well with the NS-2
simulation of corresponding equivalent scenarios. The following simulation
in Section 7.6 results show a significant improvement to maintaining a steady
mean queue length close to a targeted value using the proposed drop rate
optimisation method. It can be concluded that the active drop extension is
valid considering the matching performance with NS-2 simulation, and the
proposed drop rate optimisation method is useful for the purpose of AQM
parameter optimisation.
Chapter 8

Multiple-queue Extension for


the Proposed Model

8.1 Introduction
In this chapter, the tandem queueing networks is studied using the dynamic
interactive queueing model. It utilises the transient queueing model proposed
in Chapter 4 and the complex traffic source model proposed in Chapter 6,
and presents a multiple-source multiple-queue interactive model which allows
performance measure calculation before the queue reaches equilibrium.
In all of the scenarios presented in earlier chapters, both MATLAB nu-
merical solutions and NS-2 simulations, only one queue was considered to be
the bottleneck of the connection, and targeted as the research object. While
this is an efficient way to simplify the model and analysis several particu-
lar elements of the queue, such as modelling the complex multiple-TCP and
UDP network traffic, or ascertain the relationship between active dropping
function used by AQM schemes and calculate the performance measures of
the system, an important yet not necessary valid assumption is made: there
is only one queue with variable performance in question, and the effect of the
performance measures from the other queues are negligible or maintaining
at the same values during the experiments. As it can be observed from the
derivation process in previous chapters, it is generally assumed that variable

227
CHAPTER 8. MULTI-QUEUE EXTENSION 228

queueing delay and packet drop rate is only allowed in the single bottleneck
queue, while delays from any other queue is considered to be a fixed value
and the drop from them is non-existent.
In most practical system, however, this single bottleneck queue assump-
tion is not always appropriate. As most of the networks are smaller autonom-
ous systems connecting together, it is possible to observe bottleneck queueing
behaviour at different locations. With a bursty traffic profile, it is also pos-
sible that the primary bottleneck queue of a connection changes over time.
Furthermore, as using queueing theory to studying AQM performance in a
practical environment is one of the key motivations in this research, being
able to analysis multiple queues is crucial, as the effect of multiple AQM run-
ning on different nodes could be accumulative. Packets actively dropped by
any queue will result in the change of congestion windows, thus the optimal
dropping rate for each queue is different than that in a single bottleneck
queue scenario. Some algorithms, notably REM, are actually designed to
work with a network of queues, where each step along the connection the
queue drops packet in particular ways so that the collective dropping effect
may shape the traffic into a more desirable profile [8].
Queueing networks have already been proposed as a research area for
some time now. Specifically, for tandem queueing networks, which is mod-
elled in this chapter, describes queues line up one behind the other. There
are already some calculation methods which can perform certain analysis, as
described in the following Section 8.2. However, these methods are all based
on the conventional queueing calculation method with equilibrium require-
ment. This requires all queues in the tandem queueing networks satisfying
the conditions to reach the equilibrium, which is a poor assumption for core
network routers with heavy bursty traffic. With the proposed dynamic in-
teractive method, this is no longer required, and thus can perform analysis
on scenarios where queue length oscillates heavily over time.
The remaining content of this chapter is organised as follows: Section
8.2 describes the tandem queueing networks that is modelled in this chapter,
and introduces the two conventional method to analysis tandem queues that
utilises the equilibrium-based method; Section 8.3 performs statistical ana-
CHAPTER 8. MULTI-QUEUE EXTENSION 229

lysis for the tandem queues using the transient queueing method and ex-
tends the dynamic interactive model to represent the tandem queues; Sec-
tion 8.4 performs MATLAB numerical solution to a typical small scale tan-
dem queueing networks, and analyses the calculated performance measures;
Section 8.5 performs NS-2 simulation using equivalent parameter configur-
ation with the previous MATLAB numerical solution, and their results is
compared with similarities and discrepancies explained; Section 8.6 performs
additional evaluation of the proposed model with large scale scenarios and
varying parameters; Finally, Section 8.7 concludes the chapter by summar-
ising the statistical analysis and dynamic model for the tandem queues and
reiterates the contributions.

8.2 Conventional method for tandem


queueing networks
Queueing networks is defined as a large system formed by two or more queues
connected by customer routing(s) [31]. In this system, noticeable queueing
behaviour can be observed at many different nodes, and the outgoing traffic
of any node may become the incoming traffic of another node. As the word
tandem refers (an arrangement of several objects that are lined up one behind
the other and are all going to the same destination), a tandem queue is a
type of queueing networks where several queues line up one after another,
and with the traffic going from one end of the network to the other.

Figure 8.1: A typical tandem queueing networks


CHAPTER 8. MULTI-QUEUE EXTENSION 230

Based on the conventional steady state/equilibrium queueing method,


there are two methods generally used to research the performance issue of
the tandem networks: exact solution approach and decomposition approach.

8.2.1 Exact solution


In the exact solution approach, the system is generally treating as a single
entity. Each state of each queue in the system is considered equally unique
and irreplaceable, and the exact solution can be “ obtained by solving nu-
merically the global balance equations of the tandem networks” [16].
With this method and under its assumptions, denote p(n1 , · · · , ni , ni+1 , · · · , nK )
the stationary state probability of the tandem networks, and considering the
service rate at node i as a function of number of users at nodes i and i + 1,
namely, µi (ni , ni+1 ), the balance equation for the entire networks can be
written as
K−1
X
{λ(n1 ) + µ1 (n1 , ni+1 ) + µ(nK )}
i=1

p(n1 , · · · , ni , ni+1 , · · · , nK )
=λ(n1 − 1)p(n1 − 1, · · · , ni , ni+1 , · · · , nK )
+ µK (nK + 1)p(n1 , · · · , ni , ni+1 , · · · , nK + 1)
K−1
X
+ µi (ni + 1, ni+1 − 1)
i=1

× p(n1 , · · · , ni + 1, ni+1 − 1, · · · , nK ) (8.1)

where it is assumed that p(n1 , · · · , ni , ni+1 , · · · , nK ) = 0 for impossible states.


At the same time, if a pair of nodes, i and i + 1 is considered, denote
p(ni , ni+1 ) to be the stationary joint probability distribution for the number
of users at these two nodes, then p(ni , ni+1 ) is a marginal probability derived
from p(n1 , · · · , ni , ni+1 , · · · , nK ) by summing over all nj for j = 1, · · · , i −
CHAPTER 8. MULTI-QUEUE EXTENSION 231

1, i + 2, · · · , K as

Mj
X X
p(ni , ni+1 ) = p(n1 , · · · , ni , ni+1 , · · · , nK ) (8.2)
j6=i,i+1 nj =0

Performing this summation on the balance equations of the networks, writ-


ing p(n1 , · · · , nK )Prob{n1 , · · · , nK |ni , ni+1 } · p(ni , ni+1 ), there is from this
equation, leaving out the impossible terms, and

Mj

P P
µi−1 (ni , ni+1 )Prob{n1 , · · · , nK |ni , ni+1 },




j6=i,i+1 nj =0
ai (ni , ni+1 ) =

 i = 2, · · · , K − 1.


λ(ni ), i = 1.

(8.3)

and

Mj

P P
µi+1 (ni+1 , ni+2 )Prob{n1 , · · · , nK |ni , ni+1 },




j6=i,i+1 nj =0
ui+1 (ni , ni+1 ) =

 i = 2, · · · , K − 2.


µK (ni+1 ), i = K − 1.

(8.4)

If there is no blocking in the networks, meaning that there is no chance that


incoming packet is dropped (with infinite queueing capacity), this approx-
imation deduction method holds exactly, so that an exact solution can be
produced. However, this approximation is considered generally good, even
in the presence of noticeable blocking.

8.2.2 Decomposition
On the contrary, in the decomposition method, the other general method
based on the conventional steady state/equilibrium queueing method, the
network system is considered to be the composition of several subsystems,
CHAPTER 8. MULTI-QUEUE EXTENSION 232

and each of these subsystems are analysed and there performance issues
solved one by one, and thus the performance of the entire system can be
derived from there [49].
A typical tandem Geo/Geo/1/J queues with that k queues lined up one
after another is showed in Figure 8.1. J is a finite buffer size (and in this
demonstrative case, same for all of the queues), including the customer that is
currently under service, and k is the number of nodes that form this tandem
networks of queues. When a packet arrives at a queue, it will only enter the
queue if the buffer is not full, and will be dropped if the buffer is full. In
other words, an ordinary drop-tail queueing scheme is activated for all of the
queues. The service discipline is FIFO.

Figure 8.2: Tandem queueing networks decomposition

If the decomposition method is used to analyse this model, then the key
for the solution is to determine the departure processes of the queues inside
the system, as the departure process of a node is effectively the arriving
CHAPTER 8. MULTI-QUEUE EXTENSION 233

process for the next node. In this fashion, the end-to-end performance matrix
from the incoming node of the tandem queueing networks to the outgoing
node can be calculated and analysed. The principle idea of decomposition is
to decompose the system into several subsystems, ideally to the individual
queue, thus the subsequent calculation process would be much easier for
a single queue. As can be observed from Figure 8.2, the system can be
divided into k independent subsystems (basic single queue in this case) and
the departure of the previous node forms the arriving process of this node
as no other traffic is coming into the system aside from the original income
from the first node. In this scenario, the queueing model for every subsystem
(queue) is a Geo/Geo/1/J model, the departure process is the same as the
arriving process (Bernoulli process).
For a tandem queueing networks composed exclusively of Geo/Geo/1/J
queue, the throughput for Queue 1 can be calculated with

S1 = (1 − Π0 ) × β1 (8.5)

this is the outgoing process of Queue 1. According to the decomposition


method, this is also the arrival process for Queue 2, so for Queue 2, the
arrival rate is

α2 = S1 = (1 − Π0 ) × β1 (8.6)

and for Queue 3 which directly follows Queue 2, the arrival rate can be
represented in a similar fashion

α3 = S2 = (1 − Π00 ) × β2 (8.7)

and it would be same for any queue that follows. The Π00 here merely indicates
that the distribution of Queue 2 is used here, different from the one of Queue
1.
In this research, the decomposition method is selected, as the transient
calculation method, as well as the dynamic multi-source complex traffic ar-
rival model would be utilised. Considerate efforts have already been made
CHAPTER 8. MULTI-QUEUE EXTENSION 234

in Chapters 5 and 6 to incorporate the transient calculation method and the


dynamic traffic arrival model, so it would be much easier to extend which
into tandem networks, if each queue in the tandem networks can be analysed
separately.

8.3 Mathematical derivation for tandem


queueing networks
One of the main reasons to study queueing networks instead of the individual
queue is that in some scenarios the traffic loads on multiple queues are sim-
ultaneously high, and effectively there are more than one queue that could
potentially be the bottleneck of the system. As one of the main motivation
for proposing the dynamic interactive queueing model, being able to success-
fully analyse the scenarios where incoming traffic rate is potentially larger
than the outgoing service rate is just as important for the tandem extension
of the model.
Consider a tandem queueing networks with 2 Queue. Configuring both
queues with identical parameters appears to be a logical initial step. If this
queueing system is connected with a heavy TCP traffic that offers higher
maximal bursting speed than the service rate of the two queues, then the
bottleneck behaviour similar to what has been experimented on during the
previous chapters can be observed at the first queue. As the TCP traffic
source steadily increases transmission rate, the queue length in the first queue
also increases. After the incoming traffic arrival rate getting close, and even-
tually exceeding the service rate, the queue length increase at a fast rate.
Consider no active dropping is activated, then when the buffer size is finally
full due to the increasing queue length, packets will be dropped, and even-
tually the traffic source will decrease its transmission rate. Thus a typical
dynamic TCP/Gateway behaviour can be observed.
However, the same cannot be extended to Queue 2. As for Queue 2,

α2 = S1 = (1 − Π0 ) × β1 (8.8)
CHAPTER 8. MULTI-QUEUE EXTENSION 235

with a responsive traffic source and the incoming traffic rate could poten-
tially dropped to be slower than the service rate, the Π0 remains a positive
value, which means that the incoming rate of Queue 2 α2 is always smal-
ler than the service rate of Queue 1 β1 . Due to the previous assumption of
identical queue parameters, which leads to β1 = β2 . This means that for
Queue 2, the incoming traffic rate is always smaller than the service rate.
This would be a scenario which can be solved with the conventional steady
state queueing method, thus, there is no reason to use the computationally
expensive transient queueing method.
The same conclusion can be draw if β2 > β1 . The case of β2 < β1 is best
for using the dynamic model in a tandem queueing system. In this scenario,
as long as the throughput from queue one is high enough, the arrival rate for
Queue 2 can potentially be higher than the departure rate, and the transient
queueing model can be used to calculate both queue.
With a proper parameter setting, in a scenario where α1 > β1 > β2 ,
it is possible to observe bottleneck queueing behaviour occurring at both
Queue 1 and Queue 2. During the active transmission period of the traffic
source, due to the large active transmission rate comparing to the service
rate of the first queue, an intense queue length increase can be observed at
queue 1. During this time, Queue 1 can be considered the bottleneck of
this connection. As packets are dropped at Queue 1, the transmission rate
decreases, and eventually, it may enter a speed which is smaller than the
service rate of Queue 1 which is still larger than that of Queue 2. During
this time, queue length from queue 1 is expected to decrease due to smaller
arrival rate. However, an intense queue length increase can be observed at
Queue 2 due to large arrival rate from the output of Queue 1, Queue 2 will
become the bottleneck of the connection.
A system only required more complicated performance analysis like the
tandem queueing networks analysis, if no single queue can be identified as
constantly been the bottleneck of the connection. Otherwise, the perform-
ance of the connection is only closely related by that bottleneck queue, and a
single queue model analysis would be sufficient. In order to observe signific-
ant queueing build up in all of the queue in the tandem networks, it requires
CHAPTER 8. MULTI-QUEUE EXTENSION 236

∀i, α1 > βi > βi+1 , (8.9)

where i ∈ N , and N is the set of all queues in the tandem networks. In


the following derivation process, this is assumed to be the case. When us-
ing responsive traffic source as arriving process, such as using the complex
traffic source developed in Chapter 6, it is also helpful if the service rate dif-
ference between the preceding queue and the succeeding queue is very small.
Otherwise, with a dramatically different service rate, significant queueing
behaviour can only be the queue with the smallest service rate, as the over-
all traffic arrival rate would only be as fast as the the ACK packet receiving
rate, which is limited by the bottleneck queue. In other queues, as the arrival
rate is much smaller than the departure rate, the queueing behaviour is very
limited.

8.3.1 Time slot synchronisation for multiple queues


Time slot synchronisation issue among the traffic source, the bottleneck
queue and the destination was discussed in Chapter 5. It was concluded
that the RTT value of the entire connection is much more important to the
modelling process of the system than the individual delay values between
then. This leads to the method of identifying all time slot index as packet
attempts to enter the queue, as the performance measures of the bottleneck
queue are the focus of the research, and not the detailed behaviour of traffic
sources or the destination (they are merely the means to obtain the perform-
ance measures of the bottleneck queue).
In case of a tandem queueing networks, however, this may be more com-
plicated. The performance measures of all queues are the focus of the study
here, which means that important events such as packet arrival, departure or
drop concerning each queue need to be associated with an accurate time slot
index. In a practical network system with tandem queue, a packet may enter
one queue at time t, departs at time t + 0.05s, then enters another queue
CHAPTER 8. MULTI-QUEUE EXTENSION 237

later at time t + 2s. However, if only the queues in the tandem networks
is considered to be the subject of research, the delay on the connecting link
between them may be logically assumed to be of a fixed value over the course
of the experiment. Under this condition, it is possible to use the same time
slot index to describe events in each queue. For the same data packet, there
is a physical time difference for the moments it enters a queue in any tandem
networks (assuming that it is not dropped for any reason during the queueing
process all of the preceding queue), which can be written as

i−1
X
∆Ti = (dk + d0k(k+1) ) (8.10)
k=1

where ∆Ti describes the physical time difference between Queue i and the
first queue in the tandem networks Queue 1, dk is the queueing delay in Queue
k, and d0k(k+1) is the all other delay (mostly transmission delay) between
Queue k and the following queue in the tandem networks Queue (k + 1).
Assuming all other delay between two adjacent queues in the tandem net-
works to be a fixed value over the course of the modelling and experimenta-
tion is logical and similar to the assumption made in Chapter 5 regarding all
other factor contributing to the RTT of the packet, as only the performance
measures of the bottleneck queue(s) are the research focus. If the order in
which the queues form the tandem networks also does not change, which is
i−1
P 0
generally a valid assumption for the core network router, then the dk(k+1)
k=1
part in Equation (8.10) can be consider invariant over time for any queue in
question.
In this case, all other delays between queues in the tandem networks may
be ignored for the purpose of time slot index identification. Same amount
of delay needs to be added in other places of the connection, so that the
overall RTT for the connection remains the same, which may be crucial to
the modelling of TCP like traffic sources. This would mean that

i−1
X
∆Ti0 = dk (8.11)
k=1
CHAPTER 8. MULTI-QUEUE EXTENSION 238

where ∆Ti0 is the revised time difference which is only affected by the sum
of queueing delay from all the queue preceding to this one. This would be
expected to be different over time as the dynamic behaviour of the TCP
traffic source leads to a dynamic mean queue length.
In the following modelling process, the time slot index of the entire tan-
dem queueing networks is defined as the same as the time slot index of the
first queue in the system.

8.3.2 Interaction between dynamic multi-source


arrival process and tandem queueing networks
When attaching a dynamic multi-source complex arrival process to a tandem
queueing networks, dynamic queue length behaviour can be expected, espe-
cially in the first few queues. Using the decomposition method, for the first
queue, its behaviour is very similar to that studied in Section 6.5. The only
major difference is that packet has the probability of being dropped by later
queue in the tandem networks.
Considering a tandem queueing networks of with N queues, all of them
are modelled to have the exponentially distributed service time. When the
connections are established, at the first queue, the Poisson binomial ar-
rival/Bernoulli departure heterogeneous queueing behaviour can be observed.
According to the detailed analysis of this behaviour performed in Section 6.5,
the state transitional matrix P can be generated as
 
pr f irst pi(1)f irst pi(2)f irst pi(2)f irst · · · pi(J−1)f irst pi(J)f irst
 
 pd
 pr pi(1) pi(2) ··· pi(J−2) pi(J−1)  
 0
P = pd pr pi(1) ··· pi(J−3) pi(J−2)  
 . .. .. .. .. .. .. 
 .. . . . . . . 
 
0 0 0 0 ··· pd last pr last
(8.12)

where pd represents the probability that the queue length decrease by one,
which is the only decreasing transition with a positive probability in a mul-
CHAPTER 8. MULTI-QUEUE EXTENSION 239

tiple arrival single service model, pr represents the probability that the queue
length remains the same after a transition period, and pi(k) is the probability
that the queue length increase by k. The occasional f irst and last subscript
is the indication that special probability calculation for first (queue length
zero) and last (queue length full) state is required.
Additionally, for each of the probability represented in the matrix, there
is

dk pgf S
pi (k) =(1 − β) |z=0
k!dz k
d(k+1) pgf S
+β |z=0 (8.13)
(k + 1)!dz (k+1)

for k increase transition probability,


n
Y
pr =(1 − β) (1 − αk )
k=1
n
Q
n
X αi (1 − αk )
k=1
+β (8.14)
i=1
1 − αi

for remain transition probability,


n
Y
pd =β (1 − αk ) (8.15)
k=1

for decrease transition probability. For EAS system with centre observation
mode, there is

dk pgf S
pi(k)f irst = |z=0
k!dz k
Yn
pr f irst = (1 − αi ) (8.16)
i=1
CHAPTER 8. MULTI-QUEUE EXTENSION 240

for the special first state transition probability, and

dpgf S
pr last =(1 − β) + β |z=0
dz
n
Y
pd last =β (1 − αi ) (8.17)
i=1

for the special last state transition probability.


For the second queue in the tandem networks, the arrival process is the
same as the departure process of the first queue, which is a Bernoulli process.
As all the queues are represented by single service model, which means that
all of the arrival processes for any queue after the first one in the tandem
system can be represented by single source models. As a result, no complex
Poisson binomial arrival process can be observed after Queue 1. However, if
Expression (8.9) is true, then none of the remaining queues can be simplified
as a basic homogeneous Geo/Geo/1/J queue. For this second queue, as
the service rate of the preceding queue β1 is larger than the service rate of
this queue β2 , if the preceding queue is not empty, then its service would
be fully engaged and utilised. During this period, the service utilisation of
the preceding queue is full, and can be described as “active service stage”,
which would lead to the fast arrival of packet at the second queue with
a Bernoulli process of probability parameter β1 , and queue length increase
may be observed at the second queue.
Eventually, however, traffic sources which was transmitting to Queue 1
would enter the “idle stage”, as none of the TCP sources can transmit data
packet faster than they can receive ACK from the destination. The arrival
rate of ACK is determined by the slowest rate in the connection, and in
case of this tandem networks, is the last queue: Queue n, which happens to
be the one with the slowest service rate βn . Without more arrival packets,
Queue 1 would become empty, as its service rate is faster than βn . Without
any packet inside the queue, the service of Queue 1 becomes idle, so does
the arrival process for Queue 2. This can be described as the “idle service
stage”.
This on-off Bernoulli arrival and departure queue is extremely similar
CHAPTER 8. MULTI-QUEUE EXTENSION 241

to the single dynamic TCP source queueing model, which was discussed in
great detail in Chapter 5. Both of them are memory-less process regulated by
high level mechanism, namely, the congestion window mechanism of the TCP
sources, which is not a memory-less process. In this sense, it is appropriate
to utilise the model developed in Chapter 5 to represent each of the queue
in the system.
When a complex multi-source connection is established through this tan-
dem networks with its destinations, bursty traffic would arrive at Queue 1
and attempt to enter the queue. This is identified as time slot 1, as it is
the first batch of data packet in the experiment. Using the state transitional
matrix P demonstrated in Matrix 8.12 and Equations 8.13 8.14 8.15 8.16
8.17, the average queueing delay and dropping probability during this time
slot for Queue 1 can be derived, and is represented as d1(1) and p1(1) . The
first subscript number indicates the queue index, and the second one indic-
ates the time slot index. During this first time slot, however, none of the
other queue has any data packets in their waiting queue, due to the empty-
queue initial condition. As the EAS with centre observation method is used
in the modelling process, it is not possible to observe any arrival at Queue 2
during the observation of time slot 1, as the possible departure process from
the preceding queue has yet to occur.
At the observation time of time slot 2, the state probability distribution
for Queue 1 changes, transiting from that of the previous time slot depend-
ing on the probabilities in the state transitional matrix, and the new average
queueing delay and dropping probability d1(2) and p1(2) can be derived. As
there is possible departure process from Queue 1, and it is assumed that
there is no other delay between the queues, which means that the departure
process from the preceding queue is immediately considered the arrival pro-
cess for the following queue. As a result, arrival can be observed at Queue 2
during the observation for this time slot. Due to the geometrically distrib-
uted service time of the preceding queue, Queue 2 can be represented with
both geometrically distributed arrival and geometrically distributed depar-
ture, with the parameters of S1(1) for arrival and β2 for departure where S1(1)
is the throughput from the preceding queue Queue 1 from the time slot 1,
CHAPTER 8. MULTI-QUEUE EXTENSION 242

and the average queueing delay and dropping probability during this time
slot for Queue 2 can be derived, and is represented as d2(2) and p2(2) .
The reason for using the throughput from the previous time slot as the
arrival for the current time slot is because in the early arrival system (EAS),
any possible arrival process happens just after the slot edge, and any possible
departure process happens right before the slot edge. With centre observation
method, when the observation occurs, the departure in the current time slot
cannot be observed. Between two adjacent observations, only the departure
process occurred right before the edge of the previous time slot may be
observed.
Similarly, at time slot i (i < N ), the first arrival process can be observed
at Queue i, as the departure process of its preceding queue Queue (i −
1) from time slot (i − 1) becomes its arrival process, and all its relevant
performance measures can be derived. Eventually, packet arrival reaches the
last queue in the tandem networks Queue N . As it is assumed that there
is no other delay over the connection, which means that the throughput for
Queue N also represents the overall rate at which all destination received data
packets, and is also the overall rate at which ACK packets are transmitted
back to the source. When these ACK packets eventually returned to its
corresponding source, the traffic sources will modify their congestion window
sizes correspondingly. This is process is identical to any single queue scenario,
and has been thoroughly discussed in Chapter 5 and 6.
Over the course of experiment, the complex traffic changes its overall
transmission rate and all of the relevant performance measures can be derived
from the queue length state probability distribution of the previous time
slot as well as the throughput of preceding queue of previous time slot as
parameter, with the first queue derived its performance measures directly
from the queue length state probability distribution of previous time slot
and the status of the complex traffic source. As a result, the performance
measures of all queues can be derived over time slot and each other, and
the performance for the connections can be derived from the combination of
them as well.
In order to validate this new important extension of the proposed model,
CHAPTER 8. MULTI-QUEUE EXTENSION 243

and further demonstrate it along the way, MATLAB numerical solution is


performed based on the equations deduced here. Then this result is compared
to NS-2 [1] simulation with similar system parameters.

8.4 MATLAB numerical solution


In this subsection, a specialised instance of the experiment calculation of
numerical solution is performed to further demonstrate the new multi-queue
tandem extension for the dynamic interactive model. Following this section,
NS-2 simulation of a scenario with equivalent parameter setting is also per-
formed in order to compare with the results calculated by MATLAB numer-
ical solution of the model. More thorough evaluation with different paramet-
ers is performed later along with a larger amount of networks scale, presented
in Section 8.6.
Several new MATLAB function extensions has been written, based on
the single-source single-queue and complex-source single-queue versions used
in Chapter 5 and 6. As there are multiple queues with different parameters
in the connection, performance measures for each individual queue over the
course of experiment need to be captured in order to derive the performance
for the entire connection. Similar to the previously developed single-queue
versions, selection of the size of the time slot has critical effect on the cal-
culation process, as in order to observe significant queueing behaviour for
all of the involving queue, certain relation between the departure rate of the
tandem queues has to be satisfied, which is demonstrated in Section 8.3, and
a good slot size needs to be determined to facilitate this. In this section,
a simple two-queue scenario is used for demonstration. This is the minimal
scale for a tandem queueing networks, and it is selected so that more detailed
analysis on each queue may be performed and easily presented. It would be
much easier to increase the scale after the extension from single-queue to
multi-queue is validated.
The first step of the modelling calculation is identical to the single queue
calculation. Appropriate probability values need to be assigned first to the
CHAPTER 8. MULTI-QUEUE EXTENSION 244

service rate β1 and β2 of both queues based on the relative bandwidth value
of incoming and exiting links. It is most preferable to set both service rate
to be a large enough value that is at the same time smaller than 1. After
this step the time represented by each time slot can be calculated by

β1 × Spkt
Ts = (8.18)
B1

where Ts is the physical time in seconds (s) or microseconds (ms) represented


by each time slot, Spkt is the packet size, and B1 is the exiting bandwidth of
the first queue. IP packet size should be used in this equation for the same
reason that has been stated in the single-queue numerical solution demon-
stration.
The multi-queue version of MATLAB functions that used in this exper-
iment calculate the delay, throughput, mean queue length, as well as other
desired relevant information of all the involving TCP connections and all in-
termediate queues, by taking the parameters such as entering link bandwidth,
exiting link bandwidth, queueing buffer size, scheduling discipline, sum of all
other delay in the connections, duration of the experiments, etc. Similar to
those in the single-queue MATLAB numerical solution, these parameters are
converted to the equivalent parameters in the modified queueing modelling,
specified as follow

• Assigning appropriate values for the departure process parameter βi


and arrival process parameters during active transmission stage for
multiple sources α(a,k) , k = 1, 2, 3, · · · , n based on the relative value
of entering and exiting link bandwidth so all of the βi are between 0
and 1. For example, if the overall entering link bandwidth is 20 MB/s,
exiting link bandwidth is 15 MB/s is Queue 1 and 10 MB/s for Queue
2, then α = 0.8, β1 = 0.6, β2 = 0.4 would be a reasonable choice.

• Determine the physical time represented by each discrete time slot Ts


by using Equation (8.18).

• Calculate the total number of discrete time slot n in this experiment


CHAPTER 8. MULTI-QUEUE EXTENSION 245

instance by

T
nt = (8.19)
Ts

where T is the duration of the experiment. This can be used to de-


termine if the experiment has reach the end.

• Calculate other factors for delay of the connection in unit of time slot
Ds0 by

D0
Ds0 = (8.20)
Ts

where D0 is all other delays contributing the RTT. It is a parameter


that needs to be specified before the experiment. This is combined with
the queueing delay calculated for each packet and used to determine
how long the acknowledgement can get back to the TCP source after
the packet has been sent.

After the parameter conversion, the programme starts to calculate the con-
nection and the queueing behaviour of each queue based on the overall traffic
arrival rate from all involving TCP traffic sources (for Queue 1) or through-
put rate of the preceding queue (for any other queue) and other relevant
parameters slot by slot, using functions similar to the ones used in Chapter
4, Chapter 5 and Chapter 6. However, because of multiple possible bottle-
neck queues in the system, the programme now keeps records of the queue
length process and performance measures such as mean queue length, aver-
age queueing delay, normalised throughput, average dropping probability for
all of the queue, so that the performance for the entire connections may be
derived later.
In this particular multi-queue experiment performed here, the complex
traffic source is used, with the parameters of 4Mbps for the combining enter-
ing link bandwidth, which includes 18 TCP traffic sources of various active
transmission rate. The sum of the active transmission rate of those TCP
traffic sources are 3.6Mbps, with each of them valued from 0.12Mbps to
CHAPTER 8. MULTI-QUEUE EXTENSION 246

0.28Mbps with an increment of 0.01Mbps with another one valued 0.2Mbps


(there are two sources with the value of 0.2Mbps). Beside these, there is a
background traffic of consistently 0.4Mbps transmitting through the queue,
which simulates the unresponsive UDP-like sources. With those parameters,
the ratio between the responsive TCP traffic and unresponsive UDP traffic is
9:1, which is approximately the same as that in the practical network system
[57]. The exiting link bandwidth for Queue 1 is 1.1Mbps, and the exiting
link bandwidth for Queue 2 is 1Mbps. The delay from all other factors other
than the queueing delay in these two queues is 200ms. The experiment dur-
ation is 60 seconds, the queueing discipline is first in first out with drop-tail
queue and a maximal buffer capacity of 30 packets. The maximal congestion
window sizes for all TCP sources are 65535 bytes, and all data packets are
1500 bytes in size. The size of data packets originated from the unresponsive
UDP-like source is configured to be the same as those from normal TCP
sources, so that they would not experience different behaviour at the queue
based on their sizes. The initial transmission window size is 3000 bytes (2
packets). Some of the parameter values, especially the packet size and win-
dow size, are selected so that they are easily comparable with a similarly
configured NS-2 simulation.
First the mean queue length for both queues is calculated and presented
in Figure 8.3.
Examining the figure more closely, it can be observed that the mean queue
length for Queue 1 peaks at the beginning of the experiment, when it almost
reaches the maximal buffer size of 30 packets, before starting to decrease.
This is due to the fact that Queue 1 has a slightly larger service rate than
Queue 2, making Queue 2 to be the main bottleneck queue during the more
steady phase of the connection. The overall rate at which ACKs return to
the sources is restricted by the service rate of Queue 2, which is slightly less
than the service rate of Queue 1. There is still significant queueing behaviour
observed at Queue 1, which is caused by the burstiness of the traffic source,
as well as the fact that the difference between the service rate of Queue 1
and Queue 2 is very small. As for Queue 2, it can be observed that the mean
queue length is generally very high, often almost reaching the queue size
CHAPTER 8. MULTI-QUEUE EXTENSION 247

Queue 1
Queue 2
30

25
Mean Queue Length (packets)

20

15

10

0
0 10 20 30 40 50 60
Time (s)

Figure 8.3: Mean Queue Length MATLAB

limitation. This is expected and can be easily deduced by the analysis for
Queue 1. The average queue length of the entire duration of this experiment
is 10.9654 for Queue 1 and 20.9582 for Queue 2.
After the mean queue length of this experiment is calculated from state
probability distribution of the queue, the queueing delay is calculated and
presented in Figure 8.4.
The average queueing delay for the whole experiment is 131.6073ms for
Queue 1, and 251.6275ms for Queue 2.
Following the average queueing delay, throughput of the tandem queues
is calculated and presented in Figure 8.5.
In these experiments, as a 100% utilised exiting link represents a through-
put of 1.1Mbps for Queue 1 and 1Mbps for Queue 2, the actually throughput
of the connection can be calculated by (1−Π0 )×1.1M bps or (1−Π0 )×1M bps.
The average throughput for the entire experiment is 1.0394Mbps for Queue
1, and 0.9998Mbps for Queue 2. It can be observed that Queue 1 has a
CHAPTER 8. MULTI-QUEUE EXTENSION 248

400
Queue 1
Queue 2
350

300
Average Queueing Delay (ms)

250

200

150

100

50

0
0 10 20 30 40 50 60
Time (s)

Figure 8.4: Average Delay MATLAB

higher throughput value although a lower utilisation rate. This is expected


as Queue 2 is the bottleneck for the connection most of the time.
Finally, the average dropping rate of the system is also calculated and
presented in Figure 8.6.
The average drop rate for the entire experiment duration is 1.1388% for
Queue 1 and 5.7596% for Queue 2. The drop from Queue 1 is mainly the
result of the bursty nature of the complex traffic source, while the drop from
Queue 2 is mainly the result of it being the bottleneck queue of the connection
most of the time. Because a drop-tail queue is used in this scenario, which
means that the dropping probability is directly derived from the probability
that the queue is in its maximal capacity state, the only source of packet
drop in the system, and the probability of a packet dropped in the system is
the combination of two independent event: packet arrives and the queue is
at its maximal capacity state. As a result, it is calculated by αi,t ΠJ .
It can be observed that the performance of the tandem networks sys-
CHAPTER 8. MULTI-QUEUE EXTENSION 249

1.2
Queue 1
Queue 2

1
Normalised Throughput (Mbps)

0.8

0.6

0.4

0.2

0
0 10 20 30 40 50 60
Time (s)

Figure 8.5: Normalised Throughput MATLAB

tem represented by the proposed extension of model shows expected result


according the the analysis performed in Section 8.3.

8.5 NS-2 simulation


Now NS-2 simulation of an equivalent scenario will be perform to compare
the results with the that from MATLAB numerical solution of the model. In
this particular scenario, the topology of NS-2 simulation scenario is presented
in Figure 8.7.
There are 18 nodes, which are numbered as 0 to 17 in the topology graph,
using the “Reno” version of TCP [4], with a maximal transmission window
size of 65535 bytes. Node 18 is an UDP source with CBR traffic which sim-
ulates the portion of unresponsive traffic within a common Internet traffic
profile. R1 and R2 is the bottleneck routers that forms the tandem queueing
networks, and N21 is the destination of all traffic sources, with various TCP
CHAPTER 8. MULTI-QUEUE EXTENSION 250

Queue 1
0.25 Queue 2

0.2
Average Drop Rate

0.15

0.1

0.05

0
0 10 20 30 40 50 60
Time (s)

Figure 8.6: Average Drop Rate MATLAB

traffic sink and UDP traffic sink. It will send an acknowledgement packet to
the corresponding TCP source for every successfully received TCP packet.
The sum of the active transmission rate of those TCP traffic sources are
3.6Mbps, with each of them valued from 0.12Mbps to 0.28Mbps with an in-
crement of 0.01Mbps with another one valued 0.2Mbps (there are two sources
with the value of 0.2Mbps). The UDP source is sending with CBR traffic
of 0.4Mbps. With those parameters, the ratio between the responsive TCP
traffic and unresponsive UDP traffic is 9:1, which is approximately the same
as that in the practical network system [57]. All the link from traffic sources
to R1 have the delay of 10 ms. The link bandwidth between R1 and R2 has
a bandwidth of 1.1Mbps and a propagation delay of 10 ms, while the link
between R2 and N21 has a bandwidth of 1Mbps and a propagation delay of
80ms. This makes the RTT from all the delay factors (which can be simplified
as all propagation delay) aside from the queueing delay within the tandem
queues to be 200ms, equalling to that from MATLAB numerical solution.
CHAPTER 8. MULTI-QUEUE EXTENSION 251

Figure 8.7: NS-2 Topology for Tandem Simulation

Both queues in R1 and R2 utilises the drop-tail scheme, and the buffer sizes
for them are 30 packets, same as those in the numerical solution. All data
packets in the simulation are 1500 bytes in size. The connection simulation
runs for 60 seconds, and the queue length, queueing delay, throughput, drop
rate is captured through NS-2 build-in script functions.
The instantaneous queue length presented in Figure 8.8 is captured through
the queue monitor function in the NS-2 scenario TCL script.
As it can be clearly observed from this figure, the queue length for both
queue fluctuate through time, with that from R2 much larger than R1 in
general. Traffic spikes always pass through R1 first, before all that remains
may enter the queue of R2, which is indicated by a similar increasing and
decreasing trend and observable delay for the peaking of queue size between
R1 and R2. Due to the fact that R1 has a slightly larger service rate than
R2, the latter is the bottleneck for the connection most of the time. This
results in the fact that queue length for R1 frequently drop to an almost
empty level, which queue length for R2 rarely drops below 10 packets for
CHAPTER 8. MULTI-QUEUE EXTENSION 252

Queue 1
30 Queue 2

25
Queue Length (packets)

20

15

10

0
0 10 20 30 40 50 60
Time (s)

Figure 8.8: Instantaneous Queue Length NS-2

most of the time. The average queue length of this NS-2 experiment over 60
seconds is 11.4372 for R1 and 20.4539 for R2, which is reasonably close to
the MATLAB average of 10.9654 and 20.9582, considering this is only one
instance over the statistical calculation of the stochastic model.
The instantaneous delay of this TCP connection simulation is presented
in Figure 8.9.
The average queueing delay in this scenario is 125.3466ms for R1 and
274.3006ms for R2. It has a small difference with the average in MATLAB
which is 131.6073ms and 251.6275ms.
Following the delay figure, the throughput of the connection is presented
in Figure 8.10.
The average throughput value of the entire simulation of 60 seconds is
1.0342Mbps for R1 and 0.9949Mbps for R2, very similar to that of MATLAB
numerical solution which has an average of 1.0394Mbps and 0.9998Mbps.
Finally, the packet dropping figure is presented in 8.11.
CHAPTER 8. MULTI-QUEUE EXTENSION 253

400
Queue 1
Queue 2
350

300
Queueing Delay (ms)

250

200

150

100

50

0
0 10 20 30 40 50 60
Time (s)

Figure 8.9: Instantaneous Delay NS-2

Due to the characteristics of the drop-tail queue, the dropping rate in a


physical system can only be 0 or 1, where as long as the queue is not at its
full capacity state, any arrival packet is accepted, thus the dropping rate of
0, and all new arrival packets are dropping if the queue is at its full capacity
state. Compare this figure with that of queue length, it can be observed
that all dropping corresponding exactly with the time where queue length is
at its highest possible value. As R2 is the bottleneck of the connection for
most of the time, overall drop rate is much higher for R2 comparing to that
of R1. The overall packet drop rate is 1.0196% for R1 and 5.20% for R2,
which closely matches to the MATLAB numerical solution result performed
in Section 8.4 with 1.1388% and 5.7596%.
Generally speaking, this instance of NS-2 simulation has a relatively close
performance measurements to the MATLAB calculation of the model with
equivalent parameters, and all reasons of noticeable difference can be well ex-
plained. There is observable queueing behaviour at both queue, even though
CHAPTER 8. MULTI-QUEUE EXTENSION 254

1.4
Queue 1
Queue 2
1.2

1
Throughput (Mbps)

0.8

0.6

0.4

0.2

0
0 10 20 30 40 50 60
Time (s)

Figure 8.10: Instantaneous Throughput NS-2

only R2 is considered bottleneck most of the time, which also confirms the
analysis performed in Section 8.3 regarding the relationship between the ser-
vice rate of queues in tandem networks.

8.6 Evaluation of larger scale scenarios with


varying parameters
In this section, a larger scale of tandem networks would be used, as well as
with varying different parameters. In each group, one MATLAB numerical
solution will be calculated, as the model utilises the statistical calculation
approach, and same parameter will always generate the same result, no mat-
ter how many time it is performed. Several NS-2 simulations will also be
performed in every group. The goal is to minimize the difference between
the deterministic result of NS-2 simulation and the statistical result of MAT-
LAB calculation. All the results from NS-2 simulations are the average value
CHAPTER 8. MULTI-QUEUE EXTENSION 255

Queue 1
Queue 2
1

0.8
Drop Rate

0.6

0.4

0.2

0
0 10 20 30 40 50 60
Time (s)

Figure 8.11: Drop Rate NS-2

of 5 difference instances. Experiments and comparison are organised in two


groups, with the overall traffic arrival varying in the first group, and the
service rate for every queue in the tandem networks varying in the second
group.
The tandem scenarios in this section has the first queue receiving data
packets from multiple traffic sources. Thus, various channel multiplexing
techniques are required at the link layer, so that all possible collisions between
transmission from different sources can be avoided. This randomness is sim-
ulated in NS-2, and the variability can be achieved by starting the actual
connection transmission at different simulation time. However, this lower
level behaviour is not considered in the proposed model, so that average
result from multiple NS-2 runs is required to better validate the proposed
model.
Generally speaking, this low level variation is at a much smaller scale
(usually smaller than 0.1ms in simulation time), as most form of delay is
CHAPTER 8. MULTI-QUEUE EXTENSION 256

much smaller in a local conflicting channel due to much shorter transmission


distance. In comparison, variance in delay at higher layer is usually at 100-
200ms in simulation time, depending on the RTT, as in the scenarios used
in this research the core bottleneck also contributes the majority of delay.

8.6.1 Varying arrival rate


In the first group, the effect of different arrival rates is analysed. Experi-
ments are performed on a Tandem networks with five queues. In this first
scenario, the complex traffic source, similar to that used in the previous
demonstrative scenario, is connected to Queue 1, with the overall peak ar-
rival rate of 4Mbps. The service rates of each queue in the tandem networks
are 1.4Mbps, 1.3Mbps, 1.2Mbps, 1.1Mbps and 1Mbps, from the direction
of source to destination. With a much larger expected queueing delay, the
maximal congestion window size for any TCP source is set to 1MB, which is
a popular default configuration in modern computer systems. This is done
to prevent the maximal congestion window size being reached early on in
the experiments and preventing a better observation of significant queueing
behaviour in the network. The results and comparisons is presented in Table
8.1.
In this table, as well as all the following table of similar contents in the
later part of this section, data in the “Queue Length” column is measured in
packets, which represents mean queue length in the numerical solution, and
instantaneous queue length in NS-2 simulation; data in the “Delay” column
is measured in ms, which is the average queueing delay calculated by Little’s
law equation in the numerical solution, and instantaneous queueing delay
captured by trace file analysis in NS-2 simulation; data in the “Through-
put” column is measured in Mbps, which is calculated using the normalised
throughput equation in the numerical solution, and captured by TCL script
in NS-2 simulation; finally, data in the “Drop Rate” column is measured in
percentage (%) value, and is calculated by full queue probability in the nu-
merical solution and dividing dropped packets against total packet count in
NS-2 simulation.
CHAPTER 8. MULTI-QUEUE EXTENSION 257

Performance Queue Length Delay Throughput Drop Rate


Queue 1
MATLAB 1.5658 18.2423 1.0432 1.027494
NS2 1.6135 18.9214 1.0510 1.078271
Queue 2
MATLAB 1.0742 13.1212 1.0404 0.039107
NS2 1.1064 12.9201 1.0506 0.038941
Queue 3
MATLAB 2.2708 26.9425 1.0385 0.095233
NS2 2.2161 26.3240 1.0489 0.097409
Queue 4
MATLAB 7.3464 100.4112 1.0334 0.397558
NS2 7.5769 97.3989 1.0440 0.380711
Queue 5
MATLAB 23.3775 277.5435 0.9765 4.104351
NS2 23.1854 284.5329 0.9949 4.238959

Table 8.1: Data for 4Mbps Arrival and 1 to 1.4Mbps Departure


CHAPTER 8. MULTI-QUEUE EXTENSION 258

As it can be observed clearly in this table, Queue 5 is the bottleneck


queue for most of the time. This is indicated by the much higher average
queue length, queueing delay as well as packet dropping rate. After Queue
5, Queue 1 has the highest packet dropping rate. This is the result of the
bursty nature of complex traffic source. The link utilisations for all queue are
relatively high. As the departure process of the preceding queue is the arrival
process of the succeeding queue, and the departure process of all queues in the
tandem networks is geometrically distributed, there is much less burstiness in
the queues starting from Queue 2. This results in the much steadier queueing
process with few packet loss in Queue 2 and Queue 3. The increasing queue
length and the packet drop rate in Queue 4 are due to the fact that is service
rate is only slightly larger than that of the bottleneck queue, which is very
similar to that of R1 in the previous demonstrative scenario.
In the second and third scenario, similar topology is used, with only the
overall traffic arrival rate from the complex source is changed to 2Mbps (for
the second one) and 8Mbps (for the third one). All traffic sources making
up that complex source is scale equally, so that the peak transmission ratio
between them remains. The results is presented in Table 8.2 and Table 8.3
In the second scenario, with a lower overall traffic arrival rate, a significant
decrease of packet drop rate can be observed at Queue 1. This is expected
due to the much smaller peak traffic arrival rate. As a result, even during the
time periods that most traffic source is in “active transmission stage”, queue
length in Queue 1 is increasing at a much slower pace, and it is more likely
that the overall traffic arrival rate decreases as more traffic source is reverted
back to “idle stage” before dropping in Queue 1 happens, as the response to
the packet loss event as the result of the bottleneck drop instead.
In the third scenario, with a much higher overall traffic rate, a significant
increase of packet drop rate can be observed at Queue 1. Similar to the
changes in the second scenario, this is the result of much heavier bursty
traffic arrival, which can potentially fully occupy the buffer of Queue 1 very
fast. In both the second and the third scenario, changes at Queue 2 and
Queue 3 is the least significant in all of the queue in the tandem networks.
This is due to the fact that the throughput from the preceding queue has not
CHAPTER 8. MULTI-QUEUE EXTENSION 259

Performance Queue Length Delay Throughput Drop Rate


Queue 1
MATLAB 1.2988 15.4691 1.0392 0.917599
NS2 1.2666 15.1772 1.0442 0.877146
Queue 2
MATLAB 1.0020 11.8368 1.0230 0.036195
NS2 1.0047 11.5711 1.0349 0.034657
Queue 3
MATLAB 1.8877 24.9203 1.0169 0.084884
NS2 1.9661 23.9964 1.0257 0.086208
Queue 4
MATLAB 6.1225 76.0727 1.0082 0.342363
NS2 6.0945 77.3110 1.0156 0.336797
Queue 5
MATLAB 16.5994 201.2032 0.9655 3.759821
NS2 16.4179 197.7340 0.9782 3.856197

Table 8.2: Data for 2Mbps Arrival and 1 to 1.4Mbps Departure


CHAPTER 8. MULTI-QUEUE EXTENSION 260

Performance Queue Length Delay Throughput Drop Rate


Queue 1
MATLAB 6.5507 73.0995 1.0489 4.254050
NS2 6.4139 76.0070 1.0517 4.361991
Queue 2
MATLAB 1.2874 15.8726 1.0411 0.043977
NS2 1.3186 15.6692 1.0429 0.046258
Queue 3
MATLAB 2.7581 32.7940 1.0361 0.122705
NS2 2.7048 32.0262 1.0381 0.117145
Queue 4
MATLAB 8.9061 118.9382 1.0246 0.458103
NS2 9.1854 118.7580 1.0183 0.451911
Queue 5
MATLAB 25.9766 322.6094 0.9988 4.373125
NS2 25.2879 314.1844 0.9874 4.570887

Table 8.3: Data for 8Mbps Arrival and 1 to 1.4Mbps Departure


CHAPTER 8. MULTI-QUEUE EXTENSION 261

changed dramatically, and with a only slightly changed arrival process for
them, there is also only a slight degree of change in the resulting queueing
behaviours. There is a larger change for Queue 4, as its service rate is barely
larger than Queue 5, and can be considered having the second most important
bottleneck effect on the connection. This, along with the changes for Queue
5 is expected and can be easily explained with the relationship between a
bottleneck queue and heavy traffic source.

8.6.2 Varying service rate


In the second group, the effect of different service rate is analysed. Network
topology is the same as the first scenario, with complex traffic source bursting
at 4Mbps. In the fourth and the fifth scenarios, the service rates of each
queue in the tandem networks is changed into from 2.4Mbps to 2Mbps in the
former case and 0.9Mbps to 0.5Mbps in the latter case. The service rates still
maintains a 0.1Mbps decreasing from each preceding queue to the succeeding
one, with the one directly connected with the complex traffic possessing the
highest service rate, and is identified as Queue 1. The results are presented
in Table 8.4 and Table 8.5.
The results from the fourth scenario is relatively similar to that from the
second scenario. However, with almost doubled service rates for each queue,
while the queue length is comparable, the queueing delay is much lower,
and the throughput is much higher. With the increased service rate, similar
amount of packets require much less time to pass through the queue, which is
indicated by both the lower delay and higher throughput. For the fifth scen-
ario, it is relatively similar to the third scenario. However, unlike the heavily
increase dropping rate for Queue 1 observed in the third scenario, it is only
slightly elevated in comparison. Although the peak traffic is both very heavy
for the tandem queue, in the final scenario, as the bottleneck bandwidth is
0.5Mbps, which only slightly larger than the unresponsive portion of traffic
from the complex traffic source, which constantly transmits at the rate of
0.4Mbps. As a result, there is very few available network resource left for the
remaining 18 TCP sources. Thus, the burstiness level from the traffic source
CHAPTER 8. MULTI-QUEUE EXTENSION 262

Performance Queue Length Delay Throughput Drop Rate


Queue 1
MATLAB 1.3882 8.0258 2.0296 0.769437
NS2 1.3680 8.0991 2.3248 0.747532
Queue 2
MATLAB 1.0136 6.0735 2.2108 0.030700
NS2 0.9886 5.9348 2.2210 0.030696
Queue 3
MATLAB 2.0837 12.8630 2.1688 0.075700
NS2 2.0745 12.2963 2.2105 0.077675
Queue 4
MATLAB 7.1585 45.7569 2.0870 0.297561
NS2 7.0928 46.1955 2.0972 0.304652
Queue 5
MATLAB 20.5386 119.2699 1.9763 3.965952
NS2 21.1222 120.6068 1.9940 3.788255

Table 8.4: Data for 4Mbps Arrival and 2 to 2.4Mbps Departure


CHAPTER 8. MULTI-QUEUE EXTENSION 263

Performance Queue Length Delay Throughput Drop Rate


Queue 1
MATLAB 3.9860 45.4100 0.5267 2.621768
NS2 4.0642 47.1012 0.5291 2.712841
Queue 2
MATLAB 1.2061 13.9153 0.5174 0.043149
NS2 1.2276 14.1883 0.5259 0.042972
Queue 3
MATLAB 2.4998 29.4647 0.5165 0.114019
NS2 2.4435 28.6185 0.5257 0.108907
Queue 4
MATLAB 8.1324 111.9701 0.5097 0.410140
NS2 8.3457 108.2414 0.5135 0.421060
Queue 5
MATLAB 27.4084 345.5991 0.4904 5.128826
NS2 28.2406 342.0772 0.4983 5.091952

Table 8.5: Data for 4Mbps Arrival and 0.5 to 0.9Mbps Departure
CHAPTER 8. MULTI-QUEUE EXTENSION 264

is much less comparing to that in the third scenario, and with a smoother
traffic, the packet dropping rate from Queue 1 is also lower.
Most importantly, the results from MATLAB numerical solution and NS-
2 simulation are closely matched in most scenarios, which validates the ana-
lysis of tandem queueing behaviour, as well as the extension of tandem queue
for the interactive behaviour between dynamic arrival process of complex
traffic source and bottleneck queue(s).

8.7 Summary and discussion


In this chapter, last of the extensions to the dynamic interactive queueing
model with responsive traffic source, the multiple queue tandem extension, is
introduced. Mathematical derivation for each extension is performed based
on statistical analysis of the interactive system. Implementation and calcu-
lation details of MATLAB numerical solution is covered, and the result for
that is the compared to NS-2 simulation of equivalent scenario. Finally, a
larger scale of scenarios are modelled, its performance measures calculated
using the MATLAB numerical solution, and compared with NS-2 simulations
as well.
In both the 2 queue tandem scenario and the larger scale scenarios in
Section 8.6, results for the MATLAB numerical solution which is implemen-
ted based on the mathematical derivation for the model match well with
the NS-2 simulation of corresponding equivalent scenarios. With more than
one potential bottleneck queue is considered, and is able to modelled and
calculated using the proposed model, many important features of practical
network traffic profile can now be more effectively represented and analysed.
It can be concluded that the multi-queue tandem extension is valid consider-
ing the matching performance with NS-2 simulation. With this extensions,
the proposed dynamic interactive model is now able to represent practical
system with many hops of potentially heavy congested gateways, which may
be valuable to the optimisation efforts for may larger scale network sys-
tem. It also demonstrates great adaptability and extension potential for the
CHAPTER 8. MULTI-QUEUE EXTENSION 265

proposed transient modification and dynamic interactive model, in order to


analyse different systems.
Chapter 9

Conclusions and Future Work

This thesis focuses on research of dynamic interactive behaviour between re-


sponsive traffic sources and the bottleneck queue. In this chapter, a summary
of work completed is given in Section 9.1, and potential improvements to the
current work is described in Section 9.2

9.1 Conclusions
With the development of computer and network technology, increasing amount
of people use the computer network for various activities, and significant por-
tion of telecommunicated information are transmitted over the Internet. As
the need for congestion-free and low-delayed network rises, so does the ne-
cessity for effective mechanisms that prevent congestion and alleviate delay.
Active Queue Management (AQM) is a popular method for decreasing the
probability of congestion failure and reducing queueing delay in the network.
Most AQM schemes achieve this by probabilistically dropping or marking
data packets arriving at a gateway queue. This action sends useful congestion
feedback to the traffic source, and if the source is responsive to such feed-
back, such as TCP, then it can modify the transmission rate, and hopefully,
congestion would be prevented, or queueing delay be reduced. It is generally
agreed that AQM schemes are effective when properly configured according
to the current incoming traffic profile and network condition. Unfortunately,

266
CHAPTER 9. CONCLUSIONS AND FUTURE WORK 267

there is currently no effective way of optimising said AQM parameter con-


figuration. If the parameter configuration is poor, the performance of many
AQM schemes suffer, even causing instability in the system.
Without using generic and efficient mathematical tools to find the appro-
priate parameter configuration, simulation experiments must be performed
to determine the effectiveness of a particular set of configuration. This results
in enormous amount of simulation experiments have to be performed with
different parameter configurations in order to determine the optimal values.
It is inefficient at best, and close to impossible for some AQM schemes with
a large amount of parameters. While it has been utilised to analyse the
performance of communication network for a long time, the current discrete-
time queueing method with conventional equilibrium-based method is in-
effective if the performance measures of queues before reaching the steady
state needs to be predicted and analysed. Thus it is not efficient for the
performance modelling and analysis of network scenarios with bursty traffic
and heavily oscillating queue. This limitation also results in the majority of
AQM schemes are designed using a heuristic approach, and time-consuming
simulation validation approach is commonly used other than a theoretical
approach.
This thesis proposes a transient modification to the conventional method,
and designs a dynamic interactive model of responsive traffic sources and the
bottleneck queue, which can efficiently and accurately represent the bursty
and oscillating network behaviour in practical network systems.
Following the review of current AQM research in Chapter 2 and conven-
tional discrete-time queue in Chapter 3, the limitation of the equilibrium-
based method is thoroughly analysed in Chapter 4. A new transient modi-
fication to the conventional method is proposed. By no longer requiring the
assumption for the system converging on the equilibrium state, it performs
step-by-step analysis on the system, thus making it effective to capture the
transient behaviour of the system. It is validated by results comparison with
the equilibrium method under a typical homogeneous Geo/Geo/1/J queue,
which shows its accuracy.
Utilising this modification, a dynamic interactive model for the respons-
CHAPTER 9. CONCLUSIONS AND FUTURE WORK 268

ive source and the bottleneck queue is developed in Chapter 5. The traffic
source in the proposed model increases and decreases its transmission rate
by responding to the performance feedback of the bottleneck queue. It is a
model to better represents the responsive Additive Increase Multiplicative
Decrease (AIMD) characteristics of TCP congestion window size. The ac-
curacy of the proposed model is validated by extensive results comparison
between MATLAB numerical solutions and NS-2 simulation experiments.
The proposed dynamic interactive model is then extended in various dir-
ections. First of all, the multiple-source extension is presented in Chapter
6. With the increased number of traffic sources in the arrival process, and
the time-variant nature of the proposed method, a batched arrival process is
introduced, in the form of Poisson Binomial distribution. An elegant method
of calculating the probability mass function (pmf ) of the complicated Pois-
son Binomial distribution utilising the probability generating function (pgf )
is presented. This allows a much larger number of sources to be repres-
ented, even with unresponsive source representing the UDP traffic. Similar
extensive validation with MATLAB numerical solutions and NS-2 simulation
experiments is performed, which shows the effectiveness of the new extension.
In Chapter 7, the proposed dynamic interactive model is further extended
with an active dropping mechanism implemented. AQM dropping function
and parameter optimisation is introduced, by perform a statistic analysis on
the dropping behaviour. Utilising the proposed model, traffic transmission
rate can be more accurately predicted as a response to the previous drop-
ping behaviour on the bottleneck queue. This allows the optimal dropping
probability to be determined, which allows the optimisation of parameter
configuration.
Finally, another extension for the proposed dynamic interactive model
is presented in Chapter 8, in form of tandem queueing networks. Using the
decomposition method and with the proposed model, the dynamic behaviour
of tandem queueing networks can be analysed. This allows the performance
modelling of a network system where bottleneck queues cannot be isolated.
This also demonstrates the adaptability and strong extension potential for
the proposed model, in order to fulfil various requirements.
CHAPTER 9. CONCLUSIONS AND FUTURE WORK 269

9.2 Future work


There is still room to improve the proposed transient modification to the
conventional method and the dynamic interactive model. A list of potential
extensions and recommendations for future work is presented in this section,
based on the discussions from the previous chapters.

• The recursive calculation process may be simplified. Due to the time-


variant and step-by-step nature of the proposed modification, more
calculation steps are required to determine the performance measures
of the system. While this produces the time-variant performance for
a dynamic interactive model, which is invaluable to the analysis of a
bursty and oscillating system, attempts should be made to reduce the
increased calculation cost, such as finding a periodic characteristics
under a certain condition;

• Time slots with indeterminable performance may be supported. Cur-


rently using the recursive method, every time slots must have a determ-
inable arrival and departure process. Additional modification may be
made so that even with some indeterminable time slot, the performance
of future time slot may still be obtained;

• Statistical characteristics of the proposed arrival process consisting of


multiple responsive and unresponsive traffic sources may be presented.
Statistical property, such as autocorrelation or square coefficient of vari-
ation, is commonly used to demonstrate that the stochastic process rep-
resents important characteristics of Internet traffic, such as long range
dependency, self-similarity and burstiness. Due to the proposed model
consists of a memoryless lower-layer process representing the transmis-
sion, regulated by the non-memoryless higher-layer process representing
the congestion window, it cannot be calculated conventionally;

• A more detailed parameter optimisation for AQM may be developed.


Currently, only an effective method to obtain optimal dropping probab-
ility is presented. For AQM schemes such as RED with fewer paramet-
CHAPTER 9. CONCLUSIONS AND FUTURE WORK 270

ers and easier linear dropping function, it is relatively easy to deduce


the optimised parameter that leads to the optimal dropping probability.
For other schemes with more complicated dropping function or more
parameters, this may be much more difficult. A generalised method
may be developed for this purpose;

• AQM schemes may be implemented into the tandem network extension


of the proposed model. Currently, only the drop-tail queue is used,
in order to avoid complication caused by parameter configuration of
multiple instances of AQM;

• Other form of large scale queueing network, such as multiple-service


queue or parallel queue, may be analysed by extending the proposed
dynamic interactive model.
References

[1] The network simulator - ns-2. http://www.isi.edu/nsnam/ns/.

[2] Rfc: 793, transmission control protocol.


http://www.ietf.org/rfc/rfc793.txt, September 1981.

[3] Rfc: 2001, TCP slow start, congestion avoidance, fast retransmit, and
fast recovery algorithms. http://tools.ietf.org/html/rfc2001, January
1997.

[4] Rfc: 6582, the newreno modification to TCP’s fast recovery algorithm.
http://www.rfc-editor.org/rfc/rfc6582.txt, April 2012.

[5] J.R. Artalejo and O. Hernndez-Lerma. Performance analysis and op-


timal control of the Geo/Geo/c queue. Performance Evaluation, pages
15–39, 2003.

[6] Søren Asmussen and Jozef L Teugels. Convergence rates for M/G/1
queues and ruin problems with heavy tails. Journal of applied probab-
ility, pages 1181–1190, 1996.

[7] I. Atencia and P. Moreno. The discrete-time Geo/Geo/1 queue with


negative customers and disasters. Computers and Operations Research,
pages 1537–1548, 2004.

[8] S. Athuraliya, V. H. Li, S. H. Low, and Q. Yin. REM: Active queue


management. IEEE Network, 15:48–53, 2001.

271
REFERENCES 272

[9] J. Aweya, M. Ouellette, and D.Y. Montuno. An optimization-oriented


view of random early detection. Computer Communications, 24:1170–
1187, 2001.

[10] Deepak Bansal, Hari Balakrishnan, Sally Floyd, and Scott Shenker.
Dynamic behavior of slowly-responsive congestion control algorithm.
In SIGCOMM, 2001.

[11] Dimitri P Bertsekas, Robert G Gallager, and Pierre Humblet. Data


networks, volume 2. Prentice-Hall International New Jersey, 1992.

[12] Kadaba Bharath-kumar. Discrete-time queueing systems and their net-


works. Communications, IEEE Transactions on, 28(2):260–263, 1980.

[13] T. Bonald, M. May, and J.C. Bolot. Analytic evaluation of RED per-
formance. In Nineteenth Annual Joint Conference of the IEEE Com-
puter and Communications Societies (INFOCOM-2000), Tel Aviv, Is-
rael, pages 1415–1424, March 2000.

[14] B. Braden, D. Clark, J. Crowcroft, B. Davie, S. Deering, D. Estrin,


S. Floyd, V. Jacobson, G. Minshall, C. Partridge, L. Peterson, K. Ra-
makrishnan, S. Shenker, J. Wroclawski, and L. Zhang. Rfc 2309 -
recommendations on queue management and congestion avoidance in
the internet. http://www.rfc-base.org/rfc-2309.html, 1998.

[15] C. Brandauer, G. Iannaccone, and C. Diot. Comparison of tail drop


and active queue management performance for bulk-data and web-like
internet traffic. In Sixth IEEE Symposium on Computers and Commu-
nications (ISCC’01), Hammamet, Tunisia, pages 122–129, July 2001.

[16] Alexandre Brandwajn and Yung-Li Lily Jow. An approximation


method for tandem queues with blocking. Operations Research, (1):73–
83, 1988.

[17] Alberto Bressan and Benedetto Piccoli. Introduction to the mathem-


atical theory of control, volume 2. American institute of mathematical
sciences Springfield, 2007.
REFERENCES 273

[18] E Brockmeyer, HL Halstrm, Arne Jensen, and Agner Krarup Erlang.


The life and works of ak erlang. 1948.

[19] Martin J. Van Der Burgt. Coaxial Cables and Applications. Belden.

[20] Dave Burstein. DSL. John Wiley and Sons, 2002.

[21] Jeffrey P Buzen. Computational algorithms for closed queueing


networks with exponential servers. Communications of the ACM,
16(9):527–531, 1973.

[22] K. Chan, R. Sahita, S. Hahn, and K. McCloghrie. Rfc 3317


- differentiated services quality of service policy information base.
http://www.rfc-base.org/rfc-3317.html, 2003.

[23] Hong Chen and David D Yao. Fundamentals of queueing networks:


Performance, asymptotics, and optimization, volume 46. Springer Sci-
ence & Business Media, 2013.

[24] K Chitra and G Padamavathi. Classification and performance


of AQM-based schemes for congestion avoidance. arXiv preprint
arXiv:1005.4262, 2010.

[25] Jae Chung and Mark Claypool. Rate-based active queue management
with priority classes for better video transmission. In Computers and
Communications, 2002. Proceedings. ISCC 2002. Seventh International
Symposium on, pages 99–105. IEEE, 2002.

[26] Erhan Cinlar. Markov renewal theory. Advances in Applied Probability,


1(2):123–187, 1969.

[27] CISCO. Weighted random early detection (WRED).


http://www.cisco.com/en/US/docs/ios/11-2/feature/guide/wred-
gs.html.

[28] David D Clark and Wenjia Fang. Explicit allocation of best-effort


packet delivery service. Networking, IEEE/ACM Transactions on,
6(4):362–373, 1998.
REFERENCES 274

[29] Hans Daduna. Burke’s theorem on passage times in gordon-newell


networks. Advances in applied probability, pages 867–886, 1984.

[30] Arash Dana and Ahmad Malekloo. Performance comparison between


active and passive queue management. IJCSI, page 18, 2010.

[31] G. R. Dattatreya. Performance Analysis of Queueing and Computer


Networks. CRC Press, 2008.

[32] J. R. Davis and A. K. Reilly. T-carrier characterization program over-


view. Bell System Technical Journal.

[33] Xidong Deng, Sungwon Yi, George Kesidis, and Chita R Das. Sta-
bilized virtual buffer (SVB)-an active queue management scheme for
internet quality-of-service. In Global Telecommunications Conference,
2002. GLOBECOM’02. IEEE, volume 2, pages 1628–1632. IEEE, 2002.

[34] Wilfrid Joseph Dixon, Frank Jones Massey, et al. Introduction to stat-
istical analysis, volume 344. McGraw-Hill New York, 1969.

[35] Joseph L Doob. Stochastic processes, volume 101. New York Wiley,
1953.

[36] Rick Durrett. Probability: theory and examples. Cambridge university


press, 2010.

[37] W. Feng, D. Kandlur, and D. Saha. Blue: An alternative approach to


active queue management. In 11th International Workshop on Network
and Operating Systems Support for Digital Audio and Video (NOSS-
DAV ’01), Port Jefferson, NY, USA, June 2001.

[38] W.C. Feng, D.D. Kandlur, and D. Saha. A self-configuring RED gate-
way. In Eighteenth Annual Joint Conference of the IEEE Computer
and Communications Societies, (INFOCOM’99), New York, NY, USA,
pages 1320–1328, March 1999.
REFERENCES 275

[39] Wu-chun Feng, Apu Kapadia, and Sunil Thulasidasan. GREEN: pro-
active queue management over a best-effort network. In Global Tele-
communications Conference, 2002. GLOBECOM’02. IEEE, volume 2,
pages 1774–1778. IEEE, 2002.

[40] Victor Firoiu and Marty Borden. A study of active queue manage-
ment for congestion control. In INFOCOM 2000. Nineteenth Annual
Joint Conference of the IEEE Computer and Communications Societ-
ies. Proceedings. IEEE, volume 3, pages 1435–1444. IEEE, 2000.

[41] S. Floyd, R. Gummadi, and S. Shenker. Adaptive RED: An algorithm


for increasing the robustness of RED’s active queue management.
http://www.icir.org/floyd/papers/adaptiveRed.pdf, 2001.

[42] Sally Floyd. TCP and explicit congestion notification. ACM SIG-
COMM Computer Communication Review, 24(5):8–23, 1994.

[43] Sally Floyd. RED: Discussions of setting parameters.


http://www.icir.org/floyd/REDparameters.txt, November 1997.

[44] Sally Floyd. Recommendation on using the ”gentle” variant of RED.


http://www.icir.org/floyd/red/gentle.html, March 2000.

[45] Sally Floyd and Van Jacobson. Random early detection gateways for
congestion avoidance. IEEE/ACM Transactions on Networking, Au-
gust 1993.

[46] Sally Floyd and Eddie Kohler. Internet research needs better mod-
els. ACM SIGCOMM Computer Communication Review, 33(1):29–34,
2003.

[47] S. W. Fuhrmann and Robert B. Cooper. Stochastic decompositions


in the M/G/1 queue with generalized vacations. Operations Research,
33:1117–1129, 1985.
REFERENCES 276

[48] Silvano Gai and Keith McCloghrie. Method and apparatus for defin-
ing and implementing high-level quality of service policies in computer
networks, December 26 2000. US Patent 6,167,445.

[49] Stanley B. Gershwin. An efficient decomposition method for the ap-


proximate evaluation of tandem queues with finite storage space and
blocking. Operations Research, (2):291–305, 1987.

[50] William J Gordon and Gordon F Newell. Closed queuing systems with
exponential servers. Operations research, 15(2):254–265, 1967.

[51] Boris L. Granovsky and A. Zeifman. Nonstationary queues: Estimation


of the rate of convergence. Queueing Systems, 46:363–388, 2004.

[52] Donald Gross and Carl Harris. Fundamentals of queueing theory. 1998.

[53] Donald Gross and Douglas R Miller. The randomization technique as


a modeling tool and solution procedure for transient Markov processes.
Operations Research, 32(2):343–361, 1984.

[54] Liang Guo and Ibrahim Matta. The war between mice and elephants.
In Network Protocols, 2001. Ninth International Conference on, pages
180–188. IEEE, 2001.

[55] Huaizhong Han, CV Hollot, Yossi Chait, and Vishal Misra. TCP net-
works stabilized by buffer-based AQMs. In INFOCOM 2004. Twenty-
third AnnualJoint Conference of the IEEE Computer and Communic-
ations Societies, volume 2, pages 964–974. IEEE, 2004.

[56] Mahbub Hassan and Raj Jain. High Performance TCP/IP Networking.
Pearson Education, 2004.

[57] Martin Hilbert and Priscila Lopez. The world’s technological ca-
pacity to store, communicate and compute information. Science,
332(6025):60–65, June 2011.
REFERENCES 277

[58] C. Hollot, V. Misra, Don Towsley, and W. Gong. A control theoretic


analysis of RED. In 20th Annual Joint Conference of the IEEE Com-
puter and Communications Society (IEEE INFOCOM 2001), pages
1510–1519, 2001.

[59] C.V. Hollot, V. Misra, and D. Towsley. Analysis and design of control-
lers for AQM routers supporting TCP flows. IEEE Transactions on
Automatic Control, 49:945–959, 2002.

[60] C.V. Hollot, V. Misra, D. Towsley, and W. Gong. On designing im-


proved controllers for AQM routers supporting TCP flows. In IEEE
INFOCOM, pages 1726–1734, 2001.

[61] Donald L Iglehart and Ward Whitt. Multiple channel queues in heavy
traffic. i. Advances in Applied Probability, 2(1):150–177, 1970.

[62] Donald L Iglehart and Ward Whitt. Multiple channel queues in heavy
traffic. ii: Sequences, networks, and batches. Advances in Applied Prob-
ability, 2(2):355–369, 1970.

[63] James R Jackson. Jobshop-like queueing systems. Management science,


10(1):131–142, 1963.

[64] R. Jain. Congestion control in computer networks: Issues and trends.


IEEE Network, (3):24–30, 1990.

[65] Raj Jain, Shawn Routhier, et al. Packet trains–measurements and a


new model for computer network traffic. Selected Areas in Communic-
ations, IEEE Journal on, 4(6):986–995, 1986.

[66] Abhinav Kamra, Sundeep Kapila, Varun Khurana, Vikas Yadav, Ra-
jeev Shorey, Huzur Saran, and Sandeep Juneja. SFED: a rate control
based active queue management discipline. IBM India Research Labor-
atory Research Report, 2000.
REFERENCES 278

[67] Dina Katabi, Mark Handley, and Charlie Rohrs. Congestion control for
high bandwidth-delay product networks. In SIGCOMM, pages 89–102,
2002.

[68] A. B. Katok and B. Hasselblatt. Introduction to the Modern Theory of


Dynamical Systems. Cambridge University Press, 1999.

[69] FRANK P Kelly. Networks of queues. Advances in Applied Probability,


pages 416–432, 1976.

[70] W David Kelton and Averill M Law. The transient behavior of the
M/M/s queue, with implications for steady-state simulation. Opera-
tions Research, 33(2):378–396, 1985.

[71] David G. Kendall. Stochastic processes occurring in the theory of


queues and their analysis by the method of the embedded Markov
chain. Annals of Mathematical Statistics, 24:338–354, 1953.

[72] K. Kim, A. Tang, and S. Low. Design of AQM in supporting TCP based
on the well-known aimd model. In IEEE Global Telecommunications
Conference (GLOBECOM 03), pages 3226–3230, 2003.

[73] JFC Kingman. On queues in heavy traffic. Journal of the Royal Stat-
istical Society. Series B (Methodological), pages 383–392, 1962.

[74] Leonard Kleinrock. Queueing systems. Wiley-Interscience, 1975.

[75] Jahon Koo, Byunghun Song, Kwangsue Chung, Hyukjoon Lee, and
Hyunkook Kahng. MRED: a new approach to random early detection.
In Information Networking, 2001. Proceedings. 15th International Con-
ference on, pages 347–352. IEEE, 2001.

[76] B Krishna Kumar and D Arivudainambi. Transient solution of an


M/M/1 queue with catastrophes. Computers & Mathematics with ap-
plications, 40(10):1233–1240, 2000.
REFERENCES 279

[77] Srisankar Kunniyur and Rayadurgam Srikant. Analysis and design


of an adaptive virtual queue (AVQ) algorithm for active queue man-
agement. In ACM SIGCOMM Computer Communication Review,
volume 31, pages 123–134. ACM, 2001.

[78] James F. Kurose and Keith Ross. Computer Networking: A Top-Down


Approach. Addison-Wesley Pearson Education, Inc., 6th edition, 2012.

[79] Minseok Kwon and Sonia Fahmy. Comparison of load-based and queue-
based active queue management algorithms. In ITCom 2002: The
Convergence of Information Technologies and Communications, pages
35–46. International Society for Optics and Photonics, 2002.

[80] L. Le, J. Aikat, K. Jeffay, and F. Smith. The effects of active queue
management on web performance. In 9th International Symposium on
Computers and Communications (ISCC 2004), pages 748–754, 2004.

[81] DongJin Lee, Brian E. Carpenter, and Nevil Brown lee. Observations of
udp to TCP ratio and port numbers. In Fifth International Conference
on Internet Monitoring and Protection (ICIMP 2010), Barcelona, May
2010.

[82] P. Leguesdron, J. Pellaumail, G. Rubino, and B. Sericola. Transient


analysis of the M/M/1 queue. Advances in Applied Probability, 25:702–
713, 1993.

[83] Wolter Lemstra, Vic Hayes, and John Groenewegen. The innovation
journey of Wi-Fi: the road to global success. Cambridge University
Press, 2010.

[84] J. H. Li and N. S. Tian. Analysis of the discrete time Geo/Geo/1 queue


with single working vacation. Quality Technology and Quantitative
Management, pages 77–89, 2008.

[85] Dong Lin and Robert Morris. Dynamics of random early detection. In
SIGCOMM ’97, Cannes, France, pages 127–137, 1997.
REFERENCES 280

[86] John DC Little. A proof for the queuing formula: L= λ w. Operations


research, 9(3):383–387, 1961.

[87] Chengnian Long, Bin Zhao, Xinping Guan, and Jun Yang. The yellow
active queue management algorithm. Computer Networks, 47(4):525–
550, 2005.

[88] M Mathis, J Semke, J Mahdavi, and T Ott. The macroscopic behaviour


of the TCP congestion control algorithm. ACM Computer Communic-
ation Review.–July, 1997.

[89] Michael May, Jean Bolot, Christophe Diot, and Bryan Lyles. Reasons
not to deploy RED. In Quality of Service, 1999. IWQoS’99. 1999
Seventh International Workshop on, pages 260–262. IEEE, 1999.

[90] Jyotiprasad Medhi. Stochastic models in queueing theory. Academic


Press, 2002.

[91] Sean P Meyn and Richard L Tweedie. Markov chains and stochastic
stability. Springer Science & Business Media, 2012.

[92] V. Misra, W.B. Gong, and D. Towsley. Fluid-based analysis of a net-


work of AQM routers supporting TCP flows with an application to
RED. ACM SIGCOMM Computer Communication Review, 30:151–
160, 2000.

[93] Vishal Misra, Wei-Bo Gong, and Don Towsley. Fluid-based analysis of
a network of AQM routers supporting TCP flows with an application
to RED. In ACM SIGCOMM, pages 151–160, 2000.

[94] Ahmed M. Mohammed and Adel F. Agamy. A survey on the common


network traffic sources models. International Journal of Computer Net-
works (IJCN), pages 103–115, 2011.

[95] L. Muscariello, M. Mellia, M. Meo, M. A. Marsan, and R. L. Cigno.


Markov models of internet traffic and a new hierarchical mmpp model.
Computer Communications, pages 1835–1851, 2005.
REFERENCES 281

[96] C Newell. Applications of queueing theory, volume 4. Springer Science


& Business Media, 2013.

[97] L.A. Olawoyin, N. Faruk, and L.A. Akanbi. Queue management in


network performance analysis. International Journal of Science and
Technology, December 2011.

[98] S. Oruganti and M. Devetsikiotis. Analyzing robust active queue man-


agement schemes: a comparative study of predictors and controllers. In
IEEE International Conference on Communications, pages 1531–1536,
2003.

[99] T.J. Ott, T.V. Lakshman, and L.H. Wong. SRED: stabilized RED. In
Eighteenth Annual Joint Conference of the Ieee Computer and Com-
munications Societies, (INFOCOM’99), New York, NY, USA, pages
1346–1355, March 1999.

[100] R. Pletka, M. Waldvogel, and S. Mannal. Purple: Predictive active


queue management utilizing congestion information. In 28th Annual
IEEE International Conference on Local COmputer Networks (LCN
2003), pages 21–30, 2003.

[101] Brien M. Posey. Networking Basics: Part 1 - Networking Hardware.


TechGenix Ltd, 2006.

[102] Seungwan Ryu, Christopher Rump, and Chunming Qiao. Advances


in active queue management (AQM) based TCP congestion control.
Telecommunication Systems, 25(3-4):317–351, 2004.

[103] Thomas L Saaty. Elements of queueing theory, volume 423. McGraw-


Hill New York, 1961.

[104] Charles E. Spurgeon. Ethernet: The Definitive Guide. O’Reilly Media,


2000.

[105] Shaler Stidham. Analysis, design, and control of queueing systems.


Operations Research, 50:197–216, 2002.
REFERENCES 282

[106] Jinsheng Sun, King-Tim Ko, Guanrong Chen, Sammy Chan, and
Moshe Zukerman. Pd-RED: to improve the performance of RED. IEEE
Communications letters, 7(8):406–408, 2003.

[107] Tim Szigeti and Christina Hattingh. End-to-End QoS Network Design:
Quality of Service in LANs, WANs, and VPNs. Cisco Press, November
2004.

[108] K. Thyagarajan and Ajoy K. Ghatak. Fiber Optic Essentials. Wiley-


Interscience.

[109] Nico M Van Dijk. Queueing networks and product forms: a systems
approach, volume 4. John Wiley & Son Limited, 1993.

[110] Nicky van Foreest, Michel Mandjes, and Werner Scheinhardt. Analysis
of a feedback fluid model for heterogeneous TCP sources. Stochastic
Models, (3):299–324, 2003.

[111] G. P. Wadsworth. Introduction to probability and random variables.


McGraw-Hill, 1960.

[112] J. Wang, M. Zhou, and Y. Li. Survey on the end-to-end internet delay
measurements.

[113] Ping Wang, Hong Chen, Xiaoping Yang, and Xiaohui Lu. Active queue
management of delay network based on constrained model predictive
control. In Chinese Control and Decision Conference (CCDC), pages
814–818, 2011.

[114] Y. H. Wang. On the number of successes in independent trials. Stat-


istica Sinica, pages 295–312, 1993.

[115] S. Wiggins. Introduction to Applied Nonlinear Dynamical Systems and


Chaos. Springer-Verlag, 2003.

[116] Michael E. Woodward. Communication and computer networks: mod-


elling with discrete-time queues. London Pentech, 1993.
REFERENCES 283

[117] Dave Worthington and A. Wall. Using the discrete time modelling ap-
proach to evaluate the time-dependent behaviour of queueing systems.
Journal of the Operational Research Society, pages 777–788, 1999.

[118] Yong Xiong and Zhiyong Bu. Density evolution method for discrete
feedback fractal M/M/1 traffic models. In 2005 International Confer-
ence on Communications, Circuits and Systems, May 2005.

[119] Cui-Qing Yang and Alapati VS Reddy. A taxonomy for congestion con-
trol algorithms in packet switching networks. Network, IEEE, 9(4):34–
45, 1995.

[120] Kaiyu Zhou, Kwan L. Yeung, and Victor O.K. Li. Nonlinear RED:
A simple yet efficient active queue management scheme. Computer
Networks, 50:3784–3794, 2006.

[121] L. Zhu and N. Ansari. Local stability of a new adaptive queue man-
agement (AQM) scheme. IEEE Communications Letters, 8:406–408,
2004.

You might also like