use simplified models of TCP which don’t always
correspond to real word implementations in all
situations. The paper Floyd and Kohler (2003)
presents that scenarios used in simulations often
include certain assumptions. For example, the flows
of the congested link share a small range of round-
trip times. All assumptions affect simulation results
and evaluations. Some divergences from the reality
are unimportant if they don’t affect the validity of
simulation results. However, we don’t yet
understand which aspects of models affect in a
fundamental way to the system behaviour and which
aspects can be ignored safely.
This study also includes extensive tests, in which
the mechanism is tested against itself. In the
simulation phase, the mechanism was tested against
itself only in a preliminary way. Testing a
mechanism against itself in a comprehensive way is
important, since it is desirable that a control system
like the Internet congestion control is not too
heterogenous. It can be seen, also on the basis of the
results of this study, that it can be used only a few
congestion control mechanisms on the Internet, if we
want to guarantee the desired operation of the
system.
The paper is organized as follows: Section 2
gives the backgrounds for network congestion
control; Section 3 describes our dual-mode
congestion control algorithm; Section 4 shows the
experimental results and Section 5 concludes the
paper.
2 BACKGROUNDS
The principles of Internet congestion control are
introduced in this part. Congestion control is an
extensive research area and things only relevant for
this study are presented here.
2.1 Congestion Control
The background of congestion control is in queuing
theory (Lakshmi and Bindu, 2011). In a packet-
switched network, packets move into queues and out
of queues when these packets traverse through a
network. Because of that, packet-switched networks
are often said to be as the networks of queues. The
goal of congestion control is to avoid a congestion
situation in network elements. So, congestion
control has to adapt the sending rates of senders to
match to the available end-to-end network capacity.
There can be many reasons why networks
become congested. Singh et al. (2008) lists such
kind of reasons: limited memory space, limited
channel bandwidth, limited capacity of the routers,
load of the network, link failure, heterogeneous
bandwidths. TCP/IP networks, such as the Internet,
are especially open to congestions because of their
basic connectionless nature on the network layer. IP
routers don’t support resource reservation in a
normal situation. Instead, packets of variable sizes
are sent by any host at any time. This makes it
difficult to predict traffic patterns and resource
needs. While connectionless networks have their
advantages, robustness against congestion is not one
of them.
The consequences of bad congestion control are
described in Kurose and Ross (2012). One cost of a
congested network is that large queuing delays are
experienced. Queueing delays increase the response
times of web services. For example, Fabian et al.
(2010) presents that the fast download speed of a
website increases visitor loyalty and user
satisfaction. Therefore, if we think a network user’s
point of view, congestion is not a desired situation.
Because of that, the network with user's friendly
properties must implement some kind of congestion
control.
2.2 Congestion Control Mechanisms
for Video Services
The TCP protocol implements congestion control.
Although some video services use TCP to
implement their transport services in a manner that
actually works, TCP is not an ideal protocol for the
use of all video applications. Especially, real-time
video applications are often loss-tolerant and they do
not want to use retransmissions offered by TCP. In
the case of TCP, the bytes after the missing ones can
not be delivered to the application before the
retransmissions of the missing ones. For these
reasons, UDP is often more suitable for the use of
real-time video applications. Unfortunately, UDP
does not implement congestion control.
There are many congestion control algorithms
that are suitable for the use of video services.
LEDDBAT (Shalunov et al., 2012) provides low
priority services by using one-way delay
measurements to estimate the amount of queued data
on the routing path. LEDBAT connections withdraw
from using the bandwidth after the queuing delay
exceeds the predefined target. The most known
proposal for real-time streaming media is TCP
Friendly Rate Control version of DCCP (Floyd et
al., 2008). TFRC is designed for applications that
need a smooth rate. Google Congestion Control for