SlideShare a Scribd company logo
1 of 8
Download to read offline
A Machine Learning Approach to Improve Congestion Control over Wireless
                          Computer Networks

                                 Pierre Geurts, Ibtissam El Khayat, Guy Leduc
                          Department of Electrical Engineering and Computer Science
                                              University of Li` ge
                                                              e
                                    Institut Montefiore - B28 - Sart Tilman
                                             Li` ge 4000 - Belgium
                                                e
                                {geurts, elkhayat, leduc}@montefiore.ulg.ac.be


                         Abstract                                capacities...) that are difficult to appraise. All these factors
                                                                 make the analytical modeling of networks a very difficult (if
   In this paper, we present the application of machine          not impossible) task. Yet, the good behaviour of computer
learning techniques to the improvement of the congestion         networks requires the design of effective control strategies
control of TCP in wired/wireless networks. TCP is sub-           and the rapid adaptation of these strategies to new technolo-
optimal in hybrid wired/wireless networks because it re-         gies. Hence, data mining and machine learning are certainly
acts in the same way to losses due to congestion and losses      tools of choice to improve our understanding of networks
due to link errors. We thus propose to use machine learn-        and to help in the design of control solutions. Furthermore,
ing techniques to build automatically a loss classifier from      as networks are computer based systems, it is quite easy to
a database obtained by simulations of random network             collect the data which are the basis of these methods, either
topologies. For this classifier to be useful in this applica-     from the observation of real networks or from the simula-
tion, it should satisfy both a computational constraint and      tion of artificial ones (e.g. with a network simulator like
a time varying constraint on its misclassification rate on        ns-2[14]).
congestion losses. Several machine learning algorithms              In this paper, we present an application of machine learn-
are compared with these two constraints in mind. The             ing techniques to the improvement of congestion control
best method for this application appears to be decision tree     protocol in hybrid wired/wireless computer networks. Con-
boosting. It outperforms ad hoc classifiers proposed in the       gestion control in computer networks is necessary to share
networking literature and its combination with TCP im-           equitably the available bandwidth between several users and
proves significantly the bandwidth usage over wireless net-       to avoid congestion collapse. Nowadays, most internet traf-
works and does not deteriorate the good behaviour of TCP         fic is carried by TCP that is thus responsible for most con-
over wired networks. This study thus shows the interest of       gestion control. However, this protocol, which has been de-
the application of machine learning techniques for the de-       ployed in the eighties, has been designed for wired networks
sign of protocol in computer networks.                           and hence its congestion control mechanism is not adapted
                                                                 to nowadays networks where wireless links are becoming
                                                                 more common. In this paper, we propose to apply machine
1 Introduction                                                   learning techniques to improve the behaviour of TCP over
                                                                 hybrid wired/wireless networks. The main motivation of
   Computer networks are highly complex systems that             this paper is to illustrate the different problems we faced for
have evolved greatly in the last decade. Nowadays networks       the design of our solution from the machine learning point
combine a large diversity of different technologies (hybrid      of view. The technical details about computer networks may
networks that combines wired, wireless, and satellite links)     be found in [7].
and must respond to a large variety of tasks with very differ-      The paper is structured as follows. In the first section,
ent requirements in terms of quality of service (e.g. e-mail,    we present the very basis of TCP and the drawback of its
videoconference, streaming, peer-to-peer). Furthermore,          congestion control algorithm in the context of wireless net-
the behavior of these networks depend on a large number of       works. We next describe how we propose to solve this
external factors (user behaviours, load of the networks, link    problem with machine learning techniques and what are the
Sender            Receiver         Sender      Receiver
main constraints on the machine learning solution. Sec-                                    P1
                                                                                                                        t1     P
tion 3 describes the database that has been generated for                                           Packet                     1

                                                                                     RTT                         A1     t2     P
this study. Then, Section 4 presents the different machine                                          Ack
                                                                                                                               2
                                                                                                                        t3     P
learning methods, essentially decision tree based methods,                                 P2                                  3
                                                                                                                                                A1    t’
                                                                                                                                                       1
                                                                                           P3                           t4     P
                                                                                                                               4
that have been compared for this problem. Experiments are                                                        A2     t5     P
                                                                                                                 A3            5
described in Section 5. Finally, we end the paper with our                                                                                      A1    t’
                                                                                                                                                       2
                                                                                           P4
conclusions and some future work directions.                                               P5                           t6     P
                                                                                                                               6                A1    t’
                                                                                                                                                       3
                                                                                           P6
                                                                                                                 A4                             A1    t’
                                                                                                                                                       4
                                                                                                                 A5
                                                                                                                 A6
                                                                                           P7                                                         t’
2 TCP over wired/wireless networks                                                         P8
                                                                                           P9
                                                                                                                                                       5

                                                                                           P10                               loss

    TCP, for “Transmission Control Protocol”, is the most                                                               t
widely used protocol in the Internet. More than 90% of the
traffic in nowadays networks is carried by TCP. Its success
lies in its reliable file transfer and its capacity in avoiding                       Figure 1. Congestion control without loss
congestion. In this section, we introduce the very basis of                          (left) and with loss (right)
TCP congestion control and then we describe our proposed
solution to improve its behaviour in the case of wireless net-                    of packets sent during each RTT is exactly equal to the win-
works. These descriptions are very much simplified. Fur-
                                                                                  dow size and hence the instantaneous throughput of TCP is
ther details about congestion control mechanisms in TCP                           equal to (cwnd.size of packets/RT T ). Hence, the additive
may be found in [1].                                                              increase of the window size leads to a linear growth of the
                                                                                  bandwidth occupancy and allows the sender to slowly probe
2.1 TCP congestion control                                                        the available bandwidth.
                                                                                      The right part of Figure 1 shows a scenario where
    A congestion arises in the network when routers are not                       cwnd=5 and the second packet is lost. The receiver knows
able to process the data that arrive to them and this causes                      that a packet has been lost when it receives a packet before
buffer overflows at these routers that result in the loss of                       its predecessors in the sequence order. In this case, it sends
some packets of data. The only solution to relax a conges-                        to the sender the acknowledgment of the last packet it has
tion is to reduce the load of the network. TCP congestion                         received in the sequence. As packets may not be received
protocol is based on the definition of a congestion window                         in order for other reasons than packet loss (e.g. two packets
(denoted cwnd) that controls the rate at which packets are                        may follow different routes), a packet loss is detected only
sent by a sender to a receiver and a mechanism to adapt                           after three duplicate acknowledgments 2 . At the detection
the value of this window size according to the state of the                       of at least three duplicates, the sender divides its conges-
network. The idea is to increase the rate steadily (i.e. ad-                      tion window by a factor 2, starts retransmission of the lost
ditively) when everything works fine and to reduce it more                         packet, and enters in a so-called fast recovery phase. The
abruptly (i.e. multiplicatively) as soon as a loss occurs.                        description of this latter phase is not useful for the compre-
    In TCP, every packet sent from a sender to a receiver                         hension of this paper. Further details may be found in [1].
gives rise to an acknowledgment packet sent in the opposite                           This congestion control mechanism thus makes the hy-
way by the receiver. The congestion window determines the                         pothesis that packet losses are due to buffer overflows and it
maximum number of packets that can wait for an acknowl-                           works fairly well in the case of wired networks where this is
edgment at the sender side at each time. A normal scenario                        indeed the case. However, in wireless links, losses caused
of communication between a sender and a receiver is repre-                        by error in the link (for example by signal fading) are not
sented in the left part of Figure 1, starting with a congestion                   so unlikely. The TCP protocol as described above has no
window of size 1. The sender starts by sending one packet.                        mechanism to distinguish loss caused by a link error from
Then, each time it gets an acknowledgment, it sends a new                         losses caused by a congestion and it reduces systematically
packet. When it gets the acknowledgment of the last packet                        its rate whenever it faces a packet loss. This reduction is not
of the previous group of cwnd packets, it increments cwnd                         justified when there is no congestion and the consequence is
by 1 and then sent two packets in burst instead of one1 . The                     that the throughput of TCP over wireless link is lower than
round-trip-time (RTT) is defined as the time between the                           what it could be. Several studies have highlighted the bad
sending of a packet and the reception of its acknowledg-                          behaviour of TCP over wireless link (e.g. [17]).
ment by the sender. Hence, as seen in Figure 1, the number
                                                                                     2 Packet losses are also detected if after some fixed timeout the sender
   1 Actually, cwnd is initialized by a “slow-start” phase that accelerates       has not received any acknowledgment from the receiver. This type of
the growth of the congestion window to a certain level                            packet loss will not be considered in this paper.


                                                                              2
2.2 Proposed machine learning solution                                      On the other hand, if the receiver is in charge of the clas-
                                                                        sification, the complexity of the classifier will not be an is-
    A straightforward solution to increase the throughput of            sue anymore (providing it remains reasonable) and there is
TCP over wireless links is to prevent it from reducing its              no reason to avoid using the more accurate models. How-
rate when it faces a loss due to a link error as it does when it        ever, in this case, once a loss is classified, the receiver will
faces a congestion. Several approaches have been proposed               need to send the classification result to the sender or at least
in the networking literature (e.g. [2, 15]) that assumes the            a message where it asks the sender not to decrease its rate.
support of the network. The approach adopted in this paper              The problem is that by allowing this kind of exchange, we
is to endow one of the end systems (i.e the sender or the               will open greatly the door to distrusted receivers. Hence, we
receiver) with an algorithm able to determine the cause of a            cannot decide straightforwardly to implement the classifier
packet loss only from information available at this end sys-            at the receiver side.
tem. With such a classifier, the modified protocol will pro-                  This discussion shows that in this application the com-
ceed as follows: each time a loss is detected by a triple du-           putational constraint should be taken into account when se-
plicate, its cause is determined by the classification model.            lecting a model and thus there is an interest even in less
If the loss is classified as due to a congestion, the sender             accurate models for computational efficiency reasons.
proceeds as usual (i.e. it divides its congestion window by
two). Otherwise, it maintains its congestion window con-                2.3.2 Adaptive misclassification costs
stant. The advantage of such end-to-end methods is that
they do not require the support of the networks and hence               Since TCP is so popular in nowadays networks, one impor-
they can be more easily deployed in practice.                           tant constraint that any new protocol should satisfy before
    Several rough classification rules for losses have been              being practically used is that it should be TCP-Friendly ([9],
proposed in the literature based on heuristics or analytical            [13]). A TCP-Friendly protocol is a protocol that, when
derivations (e.g. in Veno [11] or Westwood [16]) but our                sharing the network with TCP, allows this latter to have a
experiment in Section 5.1 will show that these rules do not             throughput similar to the one it would get if it were in com-
classify very well the loss causes in practice. In this pa-             petition with another TCP in similar conditions. This con-
per, we propose to use supervised machine learning tech-                straint ensures that the new protocol would not be unfair
niques to automatically derive a classification model for loss           towards the most widely used protocol on the Internet.
causes. This model will use as inputs statistics computed on                If our classifier misclassifies quite often congestion
packets received by the sender or by the receiver and it will           losses, it will be unfair towards TCP since it will force its
be induced from a database obtained by simulations of ran-              competitor to decrease its rate to avoid the congestion and
dom network topologies.                                                 at the same time it will maintain its congestion window un-
                                                                        changed. Even if it only competes with the same protocol, a
2.3 Constraints on the classifier                                        global misclassification of congestion losses will lead the
                                                                        network to a blackout as nobody will reduce its conges-
   For this application to be practically feasible and use-             tion window. So, for their own benefit and the benefit of
ful, there are several specific constraints that should be               the community, one should not use a classifier that makes
taken into account when choosing a particular classification             many errors on the detection of losses due to congestion.
model. They are discussed below.                                        On the other hand, a classifier that perfectly detects conges-
                                                                        tion losses and misclassifies many link error losses will be
2.3.1 Computational constraint                                          no better than TCP and hence is not worth consideration.
                                                                            The best strategy is thus to determine the maximum ad-
In this application, the computing times to make a predic-              missible error on the classification of congestion losses that
tion and the computer resource needed to store the model                ensures TCP-friendliness and choose a classifier that satis-
are not to be neglected. What we can afford according to                fies this constraint and minimizes errors on the link error
these criteria will depend on which side we decide to put               losses. Actually, we show in [7] that it is possible to derive
the classification algorithm. If the sender is in charge of              analytically an upper bound on the misclassification error
the classification, using a relatively complex classification             that ensures TCP-friendliness. This bound is of the form:
algorithm could be a problem if the sender has a great num-
ber of clients (which is usually the case). So, it could be                                 ErrC ≤ f (RT T, p),                     (1)
desirable to trade some accuracy for more efficiency. Of
course, if the sender has a benefit in providing the highest             where ErrC is the probability of misclassifying a conges-
rate to the receivers, or if it has a few number of clients (e.g.       tion loss as a link error loss, RT T is the round-trip-time,
proxy), it may still prefer to use more accurate classifier at           and p is the actual loss rate, i.e. the percentage of lost pack-
the expense of computational costs.                                     ets whatever the cause. However, RT T and p, and conse-

                                                                    3
quently the bound on ErrC , depend on the particular net-                  practice, the larger the learning sample, the better it is for
work topology and furthermore they may change with time.                   supervised learning algorithms. In our study, we have col-
We thus have two solutions to select a classifier. First, we                lected 35,441 losses (among which 22,426 are due to con-
can determine a conservative value of ErrC such that (1) is                gestion) that correspond to more than one thousand different
satisfied for all reasonable values of RT T and p and then                  random network topologies.
choose a classifier that satisfies this bound on Err . How-
                                                     C                         To generate a random topology, we first select a random
ever, as usually allowing greater error on congestion losses               number of nodes and then choose randomly the presence
will allow to reduce error on link error losses, a better solu-            or the absence of a connection between two nodes and the
tion is to dynamically adapt the classifier such that it always             bandwidths of these connections. Concerning the traffic,
satisfies the constraint for the current (estimated) value of               60% of the flows at least were TCP flows4 and the others
RT T and p. This is the strategy adopted in this paper.                    were chosen randomly among TCP and other types of traffic
   This implies two constraints on the classifier. First, it                proposed by the network simulator ns-2. The senders, the
should be possible to tune the classifier in order to get dif-              receivers, and the duration of each traffic were set randomly.
ferent tradeoffs between the two kinds of error. In prefer-                The number of wireless links, their loss rate, and their place
ence, this tuning should not require to rerun the learning                 in the network were also randomized. Further details about
algorithm or to store several models (corresponding to dif-                our simulations may be found in [7].
ferent error costs) because of the computational constraint.
Second, the model should be as good as possible indepen-                   3.2 Input variables selection
dently of the error costs. This will imply to evaluate our
classifiers using ROC curves (see Section 4.2).                                 The choice of the inputs variables is mainly directed by
                                                                           two constraints. First, of course, it should be possible to
3 Database generation                                                      predict a congestion from the observation of these variables.
                                                                           Second, for our classification models to be practically use-
                                                                           ful, these variables should also be measurable, either at the
    To solve our problem of losses classification, each ob-
                                                                           receiver or at the sender side.
servation < xi , yi > of our learning sample will be an in-
                                                                               At the end system (sender or receiver), the only informa-
put/output pair where the inputs xi are some variables that
                                                                           tion we can measure to predict a congestion is some statis-
describe the state of the network at the occurrence of a loss
                                                                           tics on the packet departure and arrival times. The one-way
and the (discrete) output yi is either C to denote a loss due
                                                                           delay of a packet is the delay between the instant the packet
to a congestion or LE to denote a loss due to a link error.
                                                                           was sent and the instant it is received (e.g. the one-way de-
    To make the model generally applicable, the observa-                   lay of the first packet in right part of Figure 1 is t1 −t1 ). The
tions in the database must be as much as possible represen-                inter-packet time corresponding to a packet is the difference
tative of the conditions under which we will apply the clas-               between the time it is sent and the time the previous packet
sification model. So, the database generation should take                   was sent (e.g. the inter-packet time of the second packet in
into account all the uncertainties we have a priori about the              Figure 1 is t2 − t1 ). These two indicators are certainly influ-
topology of the networks, the user behaviours, and the pro-                enced by the state of congestion of the network and thus we
tocols. The way we generated our observations is described                 believe that it should be possible to predict the occurrence
in Section 3.1. Another important question is the choice of                of a congestion by monitoring these indicators for a number
the input variables which is discussed in Section 3.2.3                    of packets.
                                                                               To define our inputs, we thus compute these two val-
3.1 Simulations                                                            ues for the three packets following the loss and the packet
                                                                           that precedes it. In Figure 1, they are respectively pack-
    The database was generated by simulations with a net-                  ets P3 ,P4 ,P5 , and P1 . Since the absolute value of these
work simulator called ns-2[14]. To generate our observa-                   indicators are highly dependent on the particular network
tions of losses, we have used the following procedure: a net-              topology, it is not a good idea to introduce them as it in the
work topology is generated randomly and then the network                   inputs. Instead, we propose to use as inputs only relative
is simulated during a fixed amount of time, again by gener-                 values of these measures normalized in different ways.
ating the traffic randomly. At the end of the simulation, all                   To this end, we further compute the average, the standard
losses that have occurred within this time interval are col-               deviation, the minimum, and the maximum of the one-way
lected in the database. This procedure is repeated until we                delay and inter-packet time for the packets that are sent dur-
have a sufficient number of observations in the database. In                ing each round-trip-time and we maintain these values at
    3 The    database      is      available     electronically   at          4 We have chosen a particular variant of TCP called Newreno but any

http://www.montefiore.ulg.ac.be/˜geurts/BD-Fifo.dat.gz.                     other version of TCP could be used.


                                                                       4
each time for the last two round-trip-times before the cur-           In our experiments, the value of k has been fixed to its de-
rent time. Our final inputs are then various simple functions          fault value which is equal to the square root of the number
(for example, the ratio) relating these (4 × 2) values at the         of attributes.
occurrence of a loss to the inter-packet times and the one-               Extra-trees[12]. Unlike bagging and random forests,
way delays of the three plus one packets surrounding the              this method generates each tree from the whole learning
loss. All in all, this results in a set of 40 numerical input         sample. During tree growing, the best split is selected
variables.                                                            among k totally random splits, obtained by choosing k in-
                                                                      puts and split thresholds at random. The main advantage
4 Machine learning techniques                                         of this algorithm is its computational efficiency since there
                                                                      is no threshold optimization stage. In the experiments, the
   In this study, we propose to use mainly decision tree              value of k for this method has also been fixed to the square
based algorithms. Indeed, they provide usually very good              root of the number of attributes.
results for classification problems. Furthermore, they are                 Boosting. While in the three preceeding methods the
among the fastest methods when it comes to make a pre-                different trees are built independently of each other, boosted
diction. Nevertheless, we also compare these methods to               trees are built in a sequential way. Each tree of the sequence
neural networks and the k-nearest neighbors. Section 4.1              is grown with the classical induction algorithm (with prun-
briefly describes these algorithms and Section 4.2 explains            ing) but by increasing the weights of the learning sample
ROC curves that are used to evaluate them.                            cases that are misclassified by the previous trees of the se-
                                                                      quence. Furthermore, unlike in previous methods, when
4.1 Algorithms                                                        making a prediction, the votes of the different trees are
                                                                      weighted according to their accuracy on the learning sam-
Decision trees are among the most popular supervised                  ple. In our experiments, we use the original Adaboost algo-
learning algorithms. A decision tree partitions the input             rithm proposed in [10].
space into hyper-rectangular regions where the classifica-                 Usually all these methods improve very much the ac-
tion is constant. The partition is determined recursively by          curacy with respect to a single tree. However, since they
successive binary axis-parallel cuts. The main advantage              require to grow T decision trees, the computing times for
of this method for our application is that pruned trees are           testing and the memory required to store a model is T times
usually quite small and the computation of a prediction that          higher than for a classical decision tree.
consists in a sequence of comparisons is very fast. To build
a decision tree, we have adopted the standard CART algo-
                                                                      Multilayer perceptrons [3] Multilayer perceptrons are a
rithm described in [6] (with cost-complexity pruning by ten-
                                                                      particular family of artificial neural networks. Neural net-
fold cross-validation).
                                                                      works represent a model as the interconnection of several
                                                                      small units called perceptrons that compute a weighted av-
Decision tree ensembles. One drawback of standard re-                 erage of their inputs and send this average through a non
gression trees is that they suffer from a high variance which         linear functions (usually a hyperbolic tangent). This method
sometimes prevents them from being competitive in terms               usually gives more accurate models than decision trees but it
of accuracy with other learning algorithms. Ensemble                  is also much more demanding in terms of computing times
methods are generic techniques that improves a learning al-           and computer resources. In our experiments, we have used
gorithm by learning several models (from the same learning            a Levenberg-Marquard optimization algorithm to learn neu-
sample) and then by aggregating their predictions. In our             ral networks.
experiment, we have used four ensemble methods that have
been proposed for decision trees:
   Bagging [4]. In bagging, each tree of the ensemble is              k-Nearest Neighbors. To make a prediction at some point
built by the CART algorithm (without pruning) but from a              of the input space, the k-NN algorithm simply computes the
bootstrap sample drawn from the original learning sample.             k nearest neighbors of this point in the learning sample (ac-
The predictions of these trees are aggregated by a simple             cording to the euclidian distance) and then outputs the ma-
majority vote.                                                        jority class among the k neighbors. An important drawback
   Random forests[5]. This method is a slight modifica-                of this method for this application is that the computation of
tion of bagging, which improves often both accuracy and               a prediction is quite demanding and furthermore it requires
computational efficiency. In this method, when splitting a             to store the entire learning sample.
node, k variables are selected at random among all input                  Of course, there exist many other learning algorithms
variables, an optimal split threshold is determined for each          that could have been used for our application but we believe
one of these and the best split is selected among these latter.       that these methods already provide interesting results.

                                                                  5
4.2 ROC curves
                                                                         Table 1. Comparison of different ML methods
   One very desirable characteric of the chosen classifier
discussed in Section 2.3.2 is that it should be possible to ad-           Method            AUC      Error (%)    Time (msec)
just its error on congestion losses dynamically. Actually, all              DT             0.9424       8.92          150
classification methods presented in the previous section, not              Bagging          0.9796       6.65          650
only provide a class prediction for each value of the inputs           Random forests      0.9823      6.48           600
x but also provide an estimate of the conditional probabil-              Extra-trees       0.9813       6.91          940
ity of each class, C or LE, given the inputs x. In the two                Boosting         0.9840       6.34          570
class case, the default use of the model is to classify a loss             MLP             0.9761       7.67         1680
                                                    ˆ
as a congestion loss if the probability estimate P (C|x) is                k-NN            0.9541      10.16        316,870
greater than 0.5. However, by using a user defined threshold                Veno            0.7260      34.52           -
Pth different from 0.5, we can change the misclassification               Westwood          0.6627      41.54           -
probability of each class and hence adjust our classifier so
that it satisfies (1).                                                 we only give the results obtained by boosting in Figure 2.
   A natural way to evaluate our models independently of              The value of k for the k nearest neighbors was determined
the value of Pth is to use receiver operating characterisic           by leave-one-out cross-validation (the optimum is k = 7).
(ROC) curves (see [8] for an introduction). A ROC curve               For the MLP, we tried several structures of one and two lay-
plots for every possible value of the threshold Pth the true          ers with a number of neurons going from 10 to 50 neurons
positive rate versus the false positive rate of a given class         in each layer. Table 1 only shows the best result that was
(among two classes). In our case, the true positive rate is           obtained with two layers of 30 neurons.
taken as 1 − ErrC and the false positive rate is the prob-
                                                                          The results are quite good, especially considering the
ability of misclassifying a link error loss, that will be de-
                                                                      diversity of the network topologies represented in the
noted ErrLE . A classifier is thus strictly better for our ap-
                                                                      database. The decision tree has the lowest AUC but it is by
plication than other classifiers if for every possible value of
                                                                      far the fastest method to make a prediction. The k-NN has
ErrC the value of ErrLE is lower than with the other clas-
                                                                      a better AUC than decision tree but its ROC curve is worst
sifiers or, in other words, if its ROC curves lies to the left
                                                                      for small values of ErrC , which is the region of interest
of the ROC curves of other classifiers. While ROC curves
                                                                      of our application. It is also the slowest method in terms
are two-dimensional, a common one-dimensional summary
                                                                      of computing times. MLP improves upon both methods in
of a ROC curve to compare classifiers is the area under the
                                                                      terms of accuracy but it remains below ensemble methods
ROC curve (AUC) which we will also use to rank our packet
                                                                      in terms of accuracy and computing times. All ensemble
loss classifiers. ROC curves and AUC are computed accord-
                                                                      methods are very close but boosting is superior along the
ing to the algorithms presented in [8].
                                                                      two criteria. As it combines pruned trees, it also builds the
                                                                      less complex models.
5 Experiments
                                                                          For comparison, we put also in Table 1 the result ob-
   First, we evaluate classifiers and then we evaluate the             tained on the validation set by two ad-hoc classification
improvement obtained by the enhanced version of TCP with              rules that have been proposed in the networking literature
the best classifier only.                                              in the context of two extensions of TCP for wireless net-
                                                                      works called Veno [11] and Westwood [16]. The results
5.1 Comparison of loss classifiers                                     obtained by these rules are far below the results obtained
                                                                      by machine learning algorithms. This clearly shows the in-
   To make a reliable estimate of the error of each model,            terest of a machine learning approach in the context of this
we have randomly divided the whole database into two                  application, both to improve existing classifiers but also to
parts: a learning set of 25,000 cases and a validation set con-       assess their validity.
taining the remaining 10,441 cases. A classification model                 Another reason to prefer one method over the others that
is built with every method on the learning sample and its             does not appear in Figure 2 is the discretization of the ROC
ROC curve, AUC, and error rate are evaluated on the valida-           curves, i.e. the number of sensible values of Pth . Indeed, in
tion sample. The methods are compared from these criteria             our application, it is highly desirable to be able to finely
in Table 1 and in Figure 2. Since computing times for test-           control the value of ErrC by means of Pth . From this
ing are important for our application, we also give in Table          point of view also, all methods are not equal. Figure 3
1 the time needed to classify the validation set with each            illustrates these differences by drawing Errc versus Pth
method. For ensemble methods, we build T = 25 trees.                  for some methods. Decision tree and k-NN provide only
As the ROC curves of all ensemble methods are very close,             a few sensible values of Pth (about 80 for the pruned tree

                                                                  6
1                                                                                                  Sink 1
                                                                           Sender 1
             0.95
                                                                                                                                    Sender                         11Mb, 0.01ms       Sink
              0.9                                                                                                                            45Mb, 35ms
                                                                                                                                                          BS
 1-ErrC




             0.85
                                                                           Sender n                                  Sink n
              0.8                                       DT
                                                   Boosting
             0.75                                     k-NN
                                                      MLP
              0.7                                                        Figure 4. Two topologies used in our simula-
                      0                                       1
                                                                         tions
                                           ErrLE
                                                                                                 3.5




                                                                             Ratio (TCP-C/TCP)
            Figure 2. Comparison of the ROC curves of                                             3
            different ML methods                                                                 2.5
                                                                                                  2
            100                                                                                                                                       Perfect
                                     DT                                                          1.5                                                    Veno
                          Random forests                                                                                                             Boosting
             80                Boosting                                                           1
                                                                                                       0   0.5   1   1.5      2     2.5       3     3.5        4      4.5         5
                                   MLP
 ErrC (%)




             60                     kNN                                                                                  Packet loss rate (%)
                                                                                                  1
                                                                                                                                                     Boosting
             40                                                                                  0.8                                                    TCP




                                                                             Bw (%)
                                                                                                 0.6
             20
                                                                                                 0.4
              0                                                                                  0.2
                  0                                           1
                                                                                                  0
                                           Pth                                                         0   2     4   6        8     10       12     14         16      18     20
                                                                                                                                  Time (s)
            Figure 3. ErrC versus Pth for different meth-
            ods                                                          Figure 5. Top, the gain in wireless link, bot-
                                                                         tom, TCP-Friendliness
on Figure 3 and 7 for k-NN). MLP on the other hand allows
to control very finely the value of ErrC . From this point             friendliness in the case of wired networks. In this paper,
of view, boosting is also superior to other ensemble meth-            we only describe two simple experiments showing the in-
ods (represented by Random forests in Figure 3). Indeed,              terest of the machine learning solution along these criteria.
other ensemble methods build unpruned trees that provide              A more detailed validation of the protocol may be found in
only 0-1 conditional probability estimates. Hence, if T trees         [7].
are built, there are only T different possible values of Pth .
                                                                      Improvement on wireless links. To illustrate the gain of
Boosting, on the other hand, builds pruned trees that pro-
                                                                      our protocol over wireless link, we simulated the simple hy-
vide finer probability estimates and thus its ErrC curve is
                                                                      brid network illustrated in the left part of Figure 4 with the
much smoother.
                                                                      network simulator ns-2. The first link (Sender to BS) is
   This analysis tells us that boosting is the best candidate
                                                                      wired, and the second part, which connects the base sta-
for our application. Our experiments with the simulated
                                                                      tion to the sink, is wireless. The bottleneck is the wireless
protocol in the next section will thus focus on this method.
                                                                      link, which has a bandwidth equal to 11Mb/s. We compare
5.2 Simulations of the modified protocol                               the ratio between the throughput obtained by the classifier
                                                                      and the one obtained by a standard TCP when we vary the
   We propose to use the boosting classifier in the following          packet loss rate from 0 to 5% over the wireless link. Each
way to improve TCP. Each time a loss occurs, the minimal              simulation is run 50 times. To have some points of compar-
value of Pth such that (1) is satisfied is determined from             ison, we run also simulations with two other classification
the current (estimated) values of RT T and p. Then, the               rules: the classification rule proposed in Veno and, as our
ensemble of trees together with this value of Pth are used            system is simulated, a hypothetic perfect classification rule.
to classify the loss. If the loss is predicted as caused by a         The graph at the top of Figure 5 illustrates the ratio obtained
congestion, TCP works as usual. Otherwise, it maintains its           by TCP enhanced with the three classifiers. A standard TCP
congestion window constant. The correspondence between                would have a ratio of 1 whatever the loss rate over the wire-
ErrC and Pth is obtained on the validation set by inverting           less link. The superiority of boosting over Veno and stan-
the curve in Figure 3.                                                dard TCP is clear. It is also very close to the perfect model.
   The two main criteria to evaluate this protocol are                Its gain with respect to TCP reaches about 300% when the
bandwidth usage in the case of wireless links and TCP-                loss rate is equal to 3%. In other words, the file tranfer with

                                                                  7
our protocol is three times faster than with standard TCP.            selection of the best tradeoff between accuracy and compu-
                                                                      tational efficiency will require to consider the real impact of
TCP-friendliness. To test the behaviour of our protocol
                                                                      a reduction of accuracy on the behaviour of the protocol.
when it competes with another TCP, we use the topology
illustrated in the right part of Figure 4 with n = 2 which
is often used to test the fairness of a new protocol. The             References
experiment consists in running a standard TCP in competi-
tion with our TCP plus the boosting classifier. The bottom              [1] M. Allman, V. Paxson, and W. Stevens. RFC 2581: TCP
graph of Figure 5 illustrates the evolution of the throughput              congestion control, 1999.
obtained by each traffic. This figure shows that the link is             [2] A. Bakre and B. R. Badrinath. I-TCP: Indirect TCP for
fairly shared between the two protocols. The same exper-                   mobile hosts. 15th International Conference on Distributed
                                                                           Computing Systems, 1995.
iment was run with Veno’s classification rules and in this
                                                                       [3] C. Bishop. Neural Networks for Pattern Recognition. Ox-
case, the bandwidth used by Veno was five times higher than                 ford: Oxford University Press, 1995.
that of TCP. This unfairness is not surprising as Veno’s clas-         [4] L. Breiman. Bagging predictors. Machine Learning,
sification rule misclassifies many congestions and, hence, it                24(2):123–140, 1996.
reduces its bandwidth less often than a standard TCP.                  [5] L. Breiman. Random forests. Machine learning, 45:5–32,
                                                                           2001.
6 Conclusions                                                          [6] L. Breiman, J. Friedman, R. Olsen, and C. Stone. Classifi-
                                                                           cation and Regression Trees. Wadsworth International (Cal-
                                                                           ifornia), 1984.
    In this paper, we have presented the application of ma-            [7] I. El Khayat, P. Geurts, and G. Leduc. Classification of
chine learning techniques to the improvement of congestion                 packet loss causes in wired/wireless networks by decision
control protocol in wireless networks. The idea is to en-                  tree boosting. Submitted, 2004.
hance TCP with a loss classifier and to adapt its behaviour             [8] T. Fawcett. Roc graphs: Notes and practical considerations
according to the predictions of this classifier. A particularity            for researchers. Technical report, HP Labs, 2004.
of this application from the machine learning point of view            [9] S. Floyd, M. Handley, J. Padhye, and J. Widmer. Equation-
is the need to adapt dynamically the misclassification costs                based congestion control for unicast applications. In SIG-
of the classifier that requires to evaluate machine learning                COMM 2000, pages 43–56, Stockholm, Sweden, August
algorithms with ROC curves. A database has been gener-                     2000.
                                                                      [10] Y. Freund and R. E. Schapire. A decision-theoretic general-
ated by simulating a thousand random network topologies
                                                                           ization of on-line learning and an application to boosting. In
and several machine learning algorithms have been com-                     Proceedings of the second European Conference on Compu-
pared for this task. Decision tree boosting turns out to be                tational Learning Theory, pages 23–27, 1995.
the best method in terms of accuracy. Its application in the          [11] C. P. Fu and S. C. Liew. TCP veno: TCP enhancement for
context of TCP shows a significant improvement of band-                     transmission over wireless access networks. IEEE (JSAC)
width usage in wireless networks and no deterioration in                   Journal of Selected Areas in Communications, Feb. 2003.
traditional wired networks. Furthermore, the resulting clas-          [12] P. Geurts, D. Ernst, and L. Wehenkel. Extremely randomized
sifier also compares very favorably to existing ad-hoc clas-                trees. Submitted, 2004.
sification rules that have been proposed in the networking             [13] M. Mathis, J. Semke, Mahdavi, and T. Ott. The macroscopic
                                                                           behavior of the TCP congestion avoidance algorithm. ACM
literature. This study thus shows the interest of the applica-
                                                                           Computer Communication Review, 3:67–82, July 1997.
tion of machine learning techniques to help designing new             [14] S. McCanne and S. Floyd. The LBNL Network Simulator.
protocol in computer networks.                                             Lawrence Berkeley Laboratory, 1997.
    There nevertheless remain several possible improve-               [15] C. Parsa and J. J. Garcia-Luna-Aceves. Improving TCP per-
ments. From the point of view of computing times, the                      formance over wireless networks at the link layer. Mob.
model induced by boosting may still be too complex for                     Netw. Appl., 5(1):57–71, 2000.
some practical applications. Several techniques could be              [16] R. Wang, M. Valla, M. Sanadidi, B. Ng, and M. Gerla. Ef-
used to reduce its computational requirement. For exemple,                 ficiency/friendliness tradeoffs in TCP westwood. In In Pro-
we could try to reduce the number of trees in the ensemble                 ceedings of the Seventh IEEE Symposium on Computers and
                                                                           Communications, Taormina, July 2002.
or build smaller trees. As the size of decision trees is pro-
                                                                      [17] G. Xylomenos, G. Polyzos, P. Mahonen, and M. Saaranen.
portional to the size of the learning sample, it is also possi-            TCP performance issues over wireless links. Communica-
ble to use subsampling techniques to reduce the size of our                tions Magazine, IEEE, 39(4):52–58, 2001.
models. Another drawback of our approach is that we have
to store and update continuously about 40 variables based
on different statistics measured on the packets. It would be
desirable to reduce this set of variables as much as possi-
ble for computational efficiency reason. In all cases, the

                                                                  8

More Related Content

What's hot

A New Method for Pitch Tracking and Voicing Decision Based on Spectral Multi-...
A New Method for Pitch Tracking and Voicing Decision Based on Spectral Multi-...A New Method for Pitch Tracking and Voicing Decision Based on Spectral Multi-...
A New Method for Pitch Tracking and Voicing Decision Based on Spectral Multi-...CSCJournals
 
Course plan cnw 2012
Course plan cnw 2012Course plan cnw 2012
Course plan cnw 2012Aviral Kedia
 
A NOVEL APPROACH FOR LOWER POWER DESIGN IN TURBO CODING SYSTEM
A NOVEL APPROACH FOR LOWER POWER DESIGN IN TURBO CODING SYSTEMA NOVEL APPROACH FOR LOWER POWER DESIGN IN TURBO CODING SYSTEM
A NOVEL APPROACH FOR LOWER POWER DESIGN IN TURBO CODING SYSTEMVLSICS Design
 
IRJET-Study of Performance analysis of Wind Tunnel Simulation of Pollutant Di...
IRJET-Study of Performance analysis of Wind Tunnel Simulation of Pollutant Di...IRJET-Study of Performance analysis of Wind Tunnel Simulation of Pollutant Di...
IRJET-Study of Performance analysis of Wind Tunnel Simulation of Pollutant Di...IRJET Journal
 
Parallel random projection using R high performance computing for planted mot...
Parallel random projection using R high performance computing for planted mot...Parallel random projection using R high performance computing for planted mot...
Parallel random projection using R high performance computing for planted mot...TELKOMNIKA JOURNAL
 
Convolutional Neural Network and Feature Transformation for Distant Speech Re...
Convolutional Neural Network and Feature Transformation for Distant Speech Re...Convolutional Neural Network and Feature Transformation for Distant Speech Re...
Convolutional Neural Network and Feature Transformation for Distant Speech Re...IJECEIAES
 
Collective Communications in MPI
 Collective Communications in MPI Collective Communications in MPI
Collective Communications in MPIHanif Durad
 
Limited Data Speaker Verification: Fusion of Features
Limited Data Speaker Verification: Fusion of FeaturesLimited Data Speaker Verification: Fusion of Features
Limited Data Speaker Verification: Fusion of FeaturesIJECEIAES
 
A new channel coding technique to approach the channel capacity
A new channel coding technique to approach the channel capacityA new channel coding technique to approach the channel capacity
A new channel coding technique to approach the channel capacityijwmn
 
Comparative evaluation of bit error rate for different ofdm subcarriers in ra...
Comparative evaluation of bit error rate for different ofdm subcarriers in ra...Comparative evaluation of bit error rate for different ofdm subcarriers in ra...
Comparative evaluation of bit error rate for different ofdm subcarriers in ra...ijmnct
 
Comparison study of 8-PPM, 8-DPIM, and 8-RDH-PIM modulator FPGA hardware desi...
Comparison study of 8-PPM, 8-DPIM, and 8-RDH-PIM modulator FPGA hardware desi...Comparison study of 8-PPM, 8-DPIM, and 8-RDH-PIM modulator FPGA hardware desi...
Comparison study of 8-PPM, 8-DPIM, and 8-RDH-PIM modulator FPGA hardware desi...journalBEEI
 
Chaos Encryption and Coding for Image Transmission over Noisy Channels
Chaos Encryption and Coding for Image Transmission over Noisy ChannelsChaos Encryption and Coding for Image Transmission over Noisy Channels
Chaos Encryption and Coding for Image Transmission over Noisy Channelsiosrjce
 
SPEKER RECOGNITION UNDER LIMITED DATA CODITION
SPEKER RECOGNITION UNDER LIMITED DATA CODITIONSPEKER RECOGNITION UNDER LIMITED DATA CODITION
SPEKER RECOGNITION UNDER LIMITED DATA CODITIONniranjan kumar
 

What's hot (20)

A New Method for Pitch Tracking and Voicing Decision Based on Spectral Multi-...
A New Method for Pitch Tracking and Voicing Decision Based on Spectral Multi-...A New Method for Pitch Tracking and Voicing Decision Based on Spectral Multi-...
A New Method for Pitch Tracking and Voicing Decision Based on Spectral Multi-...
 
Course plan cnw 2012
Course plan cnw 2012Course plan cnw 2012
Course plan cnw 2012
 
A NOVEL APPROACH FOR LOWER POWER DESIGN IN TURBO CODING SYSTEM
A NOVEL APPROACH FOR LOWER POWER DESIGN IN TURBO CODING SYSTEMA NOVEL APPROACH FOR LOWER POWER DESIGN IN TURBO CODING SYSTEM
A NOVEL APPROACH FOR LOWER POWER DESIGN IN TURBO CODING SYSTEM
 
IRJET-Study of Performance analysis of Wind Tunnel Simulation of Pollutant Di...
IRJET-Study of Performance analysis of Wind Tunnel Simulation of Pollutant Di...IRJET-Study of Performance analysis of Wind Tunnel Simulation of Pollutant Di...
IRJET-Study of Performance analysis of Wind Tunnel Simulation of Pollutant Di...
 
Chapter 5 pc
Chapter 5 pcChapter 5 pc
Chapter 5 pc
 
Dvbs2 thesisalleng
Dvbs2 thesisallengDvbs2 thesisalleng
Dvbs2 thesisalleng
 
Parallel random projection using R high performance computing for planted mot...
Parallel random projection using R high performance computing for planted mot...Parallel random projection using R high performance computing for planted mot...
Parallel random projection using R high performance computing for planted mot...
 
Bz25454457
Bz25454457Bz25454457
Bz25454457
 
Convolutional Neural Network and Feature Transformation for Distant Speech Re...
Convolutional Neural Network and Feature Transformation for Distant Speech Re...Convolutional Neural Network and Feature Transformation for Distant Speech Re...
Convolutional Neural Network and Feature Transformation for Distant Speech Re...
 
T04504121126
T04504121126T04504121126
T04504121126
 
Et25897899
Et25897899Et25897899
Et25897899
 
Access Control via Belnap Logic
Access Control via Belnap LogicAccess Control via Belnap Logic
Access Control via Belnap Logic
 
Collective Communications in MPI
 Collective Communications in MPI Collective Communications in MPI
Collective Communications in MPI
 
Limited Data Speaker Verification: Fusion of Features
Limited Data Speaker Verification: Fusion of FeaturesLimited Data Speaker Verification: Fusion of Features
Limited Data Speaker Verification: Fusion of Features
 
A new channel coding technique to approach the channel capacity
A new channel coding technique to approach the channel capacityA new channel coding technique to approach the channel capacity
A new channel coding technique to approach the channel capacity
 
Jb2415831591
Jb2415831591Jb2415831591
Jb2415831591
 
Comparative evaluation of bit error rate for different ofdm subcarriers in ra...
Comparative evaluation of bit error rate for different ofdm subcarriers in ra...Comparative evaluation of bit error rate for different ofdm subcarriers in ra...
Comparative evaluation of bit error rate for different ofdm subcarriers in ra...
 
Comparison study of 8-PPM, 8-DPIM, and 8-RDH-PIM modulator FPGA hardware desi...
Comparison study of 8-PPM, 8-DPIM, and 8-RDH-PIM modulator FPGA hardware desi...Comparison study of 8-PPM, 8-DPIM, and 8-RDH-PIM modulator FPGA hardware desi...
Comparison study of 8-PPM, 8-DPIM, and 8-RDH-PIM modulator FPGA hardware desi...
 
Chaos Encryption and Coding for Image Transmission over Noisy Channels
Chaos Encryption and Coding for Image Transmission over Noisy ChannelsChaos Encryption and Coding for Image Transmission over Noisy Channels
Chaos Encryption and Coding for Image Transmission over Noisy Channels
 
SPEKER RECOGNITION UNDER LIMITED DATA CODITION
SPEKER RECOGNITION UNDER LIMITED DATA CODITIONSPEKER RECOGNITION UNDER LIMITED DATA CODITION
SPEKER RECOGNITION UNDER LIMITED DATA CODITION
 

Viewers also liked

S2bontang 1213032068278452-9
S2bontang 1213032068278452-9S2bontang 1213032068278452-9
S2bontang 1213032068278452-9JAmal ZLluztia
 
S2bontang 1213032068278452-9
S2bontang 1213032068278452-9S2bontang 1213032068278452-9
S2bontang 1213032068278452-9JAmal ZLluztia
 
Portfolio retail lo res
Portfolio retail lo resPortfolio retail lo res
Portfolio retail lo resAmber Duran
 
S2bontang 1213032068278452-9
S2bontang 1213032068278452-9S2bontang 1213032068278452-9
S2bontang 1213032068278452-9JAmal ZLluztia
 
S2bontang 1213032068278452-9
S2bontang 1213032068278452-9S2bontang 1213032068278452-9
S2bontang 1213032068278452-9JAmal ZLluztia
 
S2bontang 1213032068278452-9
S2bontang 1213032068278452-9S2bontang 1213032068278452-9
S2bontang 1213032068278452-9JAmal ZLluztia
 
Slide model pembelajaran
Slide   model pembelajaranSlide   model pembelajaran
Slide model pembelajaranJAmal ZLluztia
 

Viewers also liked (9)

Fatimah
FatimahFatimah
Fatimah
 
S2bontang 1213032068278452-9
S2bontang 1213032068278452-9S2bontang 1213032068278452-9
S2bontang 1213032068278452-9
 
S2bontang 1213032068278452-9
S2bontang 1213032068278452-9S2bontang 1213032068278452-9
S2bontang 1213032068278452-9
 
Portfolio retail lo res
Portfolio retail lo resPortfolio retail lo res
Portfolio retail lo res
 
S2bontang 1213032068278452-9
S2bontang 1213032068278452-9S2bontang 1213032068278452-9
S2bontang 1213032068278452-9
 
S2bontang 1213032068278452-9
S2bontang 1213032068278452-9S2bontang 1213032068278452-9
S2bontang 1213032068278452-9
 
S2bontang 1213032068278452-9
S2bontang 1213032068278452-9S2bontang 1213032068278452-9
S2bontang 1213032068278452-9
 
Slide model pembelajaran
Slide   model pembelajaranSlide   model pembelajaran
Slide model pembelajaran
 
Pronouns
PronounsPronouns
Pronouns
 

Similar to 10.1.1.63.7976

IJSRED-V1I1P2
IJSRED-V1I1P2IJSRED-V1I1P2
IJSRED-V1I1P2IJSRED
 
IRJET - Improving TCP Performance in Wireless Networks
IRJET -  	  Improving TCP Performance in Wireless NetworksIRJET -  	  Improving TCP Performance in Wireless Networks
IRJET - Improving TCP Performance in Wireless NetworksIRJET Journal
 
Improve Convergecasting in Collection Tree Protocol(CTP)
Improve Convergecasting in Collection Tree Protocol(CTP)Improve Convergecasting in Collection Tree Protocol(CTP)
Improve Convergecasting in Collection Tree Protocol(CTP)IRJET Journal
 
Proportional-integral genetic algorithm controller for stability of TCP network
Proportional-integral genetic algorithm controller for stability of TCP network Proportional-integral genetic algorithm controller for stability of TCP network
Proportional-integral genetic algorithm controller for stability of TCP network IJECEIAES
 
A benchmark evaluation for incremental pattern matching in graph transformation
A benchmark evaluation for incremental pattern matching in graph transformationA benchmark evaluation for incremental pattern matching in graph transformation
A benchmark evaluation for incremental pattern matching in graph transformationIstvan Rath
 
00b7d51ed81834e4d7000000
00b7d51ed81834e4d700000000b7d51ed81834e4d7000000
00b7d51ed81834e4d7000000Rahul Jain
 
Review On 2:4 Decoder By Reversible Logic Gates For Low Power Consumption
Review On 2:4 Decoder By Reversible Logic Gates For Low Power ConsumptionReview On 2:4 Decoder By Reversible Logic Gates For Low Power Consumption
Review On 2:4 Decoder By Reversible Logic Gates For Low Power ConsumptionIRJET Journal
 
VEGAS: Better Performance than other TCP Congestion Control Algorithms on MANETs
VEGAS: Better Performance than other TCP Congestion Control Algorithms on MANETsVEGAS: Better Performance than other TCP Congestion Control Algorithms on MANETs
VEGAS: Better Performance than other TCP Congestion Control Algorithms on MANETsCSCJournals
 
Comparative analysis of the performance of various active queue management te...
Comparative analysis of the performance of various active queue management te...Comparative analysis of the performance of various active queue management te...
Comparative analysis of the performance of various active queue management te...IJECEIAES
 
Stable Ethernet TCP/IP Real Time Communication In Industrial Embedded Applica...
Stable Ethernet TCP/IP Real Time Communication In Industrial Embedded Applica...Stable Ethernet TCP/IP Real Time Communication In Industrial Embedded Applica...
Stable Ethernet TCP/IP Real Time Communication In Industrial Embedded Applica...IJRES Journal
 
IRJET- Wavelet Decomposition along with ANN used for Fault Detection
IRJET- Wavelet Decomposition along with ANN used for Fault DetectionIRJET- Wavelet Decomposition along with ANN used for Fault Detection
IRJET- Wavelet Decomposition along with ANN used for Fault DetectionIRJET Journal
 
IRJET- Modeling a New Startup Algorithm for TCP New Reno
IRJET- Modeling a New Startup Algorithm for TCP New RenoIRJET- Modeling a New Startup Algorithm for TCP New Reno
IRJET- Modeling a New Startup Algorithm for TCP New RenoIRJET Journal
 
IRJET - Augmented Tangible Style using 8051 MCU
IRJET -  	  Augmented Tangible Style using 8051 MCUIRJET -  	  Augmented Tangible Style using 8051 MCU
IRJET - Augmented Tangible Style using 8051 MCUIRJET Journal
 
Extending TCP the Major Protocol of Transport Layer
Extending TCP the Major Protocol of Transport LayerExtending TCP the Major Protocol of Transport Layer
Extending TCP the Major Protocol of Transport LayerScientific Review
 
Extending TCP the Major Protocol of Transport Layer
Extending TCP the Major Protocol of Transport LayerExtending TCP the Major Protocol of Transport Layer
Extending TCP the Major Protocol of Transport LayerScientific Review SR
 
IRJET- Simulation Analysis of a New Startup Algorithm for TCP New Reno
IRJET- Simulation Analysis of a New Startup Algorithm for TCP New RenoIRJET- Simulation Analysis of a New Startup Algorithm for TCP New Reno
IRJET- Simulation Analysis of a New Startup Algorithm for TCP New RenoIRJET Journal
 
Marvell Network Telemetry Solutions for Data Center and Enterprise Networks
Marvell Network Telemetry Solutions for Data Center and Enterprise NetworksMarvell Network Telemetry Solutions for Data Center and Enterprise Networks
Marvell Network Telemetry Solutions for Data Center and Enterprise NetworksMarvell
 
PAPR Reduction in OFDM
PAPR Reduction in OFDMPAPR Reduction in OFDM
PAPR Reduction in OFDMIRJET Journal
 

Similar to 10.1.1.63.7976 (20)

70
7070
70
 
IJSRED-V1I1P2
IJSRED-V1I1P2IJSRED-V1I1P2
IJSRED-V1I1P2
 
IRJET - Improving TCP Performance in Wireless Networks
IRJET -  	  Improving TCP Performance in Wireless NetworksIRJET -  	  Improving TCP Performance in Wireless Networks
IRJET - Improving TCP Performance in Wireless Networks
 
Improve Convergecasting in Collection Tree Protocol(CTP)
Improve Convergecasting in Collection Tree Protocol(CTP)Improve Convergecasting in Collection Tree Protocol(CTP)
Improve Convergecasting in Collection Tree Protocol(CTP)
 
Proportional-integral genetic algorithm controller for stability of TCP network
Proportional-integral genetic algorithm controller for stability of TCP network Proportional-integral genetic algorithm controller for stability of TCP network
Proportional-integral genetic algorithm controller for stability of TCP network
 
A benchmark evaluation for incremental pattern matching in graph transformation
A benchmark evaluation for incremental pattern matching in graph transformationA benchmark evaluation for incremental pattern matching in graph transformation
A benchmark evaluation for incremental pattern matching in graph transformation
 
F45013942
F45013942F45013942
F45013942
 
00b7d51ed81834e4d7000000
00b7d51ed81834e4d700000000b7d51ed81834e4d7000000
00b7d51ed81834e4d7000000
 
Review On 2:4 Decoder By Reversible Logic Gates For Low Power Consumption
Review On 2:4 Decoder By Reversible Logic Gates For Low Power ConsumptionReview On 2:4 Decoder By Reversible Logic Gates For Low Power Consumption
Review On 2:4 Decoder By Reversible Logic Gates For Low Power Consumption
 
VEGAS: Better Performance than other TCP Congestion Control Algorithms on MANETs
VEGAS: Better Performance than other TCP Congestion Control Algorithms on MANETsVEGAS: Better Performance than other TCP Congestion Control Algorithms on MANETs
VEGAS: Better Performance than other TCP Congestion Control Algorithms on MANETs
 
Comparative analysis of the performance of various active queue management te...
Comparative analysis of the performance of various active queue management te...Comparative analysis of the performance of various active queue management te...
Comparative analysis of the performance of various active queue management te...
 
Stable Ethernet TCP/IP Real Time Communication In Industrial Embedded Applica...
Stable Ethernet TCP/IP Real Time Communication In Industrial Embedded Applica...Stable Ethernet TCP/IP Real Time Communication In Industrial Embedded Applica...
Stable Ethernet TCP/IP Real Time Communication In Industrial Embedded Applica...
 
IRJET- Wavelet Decomposition along with ANN used for Fault Detection
IRJET- Wavelet Decomposition along with ANN used for Fault DetectionIRJET- Wavelet Decomposition along with ANN used for Fault Detection
IRJET- Wavelet Decomposition along with ANN used for Fault Detection
 
IRJET- Modeling a New Startup Algorithm for TCP New Reno
IRJET- Modeling a New Startup Algorithm for TCP New RenoIRJET- Modeling a New Startup Algorithm for TCP New Reno
IRJET- Modeling a New Startup Algorithm for TCP New Reno
 
IRJET - Augmented Tangible Style using 8051 MCU
IRJET -  	  Augmented Tangible Style using 8051 MCUIRJET -  	  Augmented Tangible Style using 8051 MCU
IRJET - Augmented Tangible Style using 8051 MCU
 
Extending TCP the Major Protocol of Transport Layer
Extending TCP the Major Protocol of Transport LayerExtending TCP the Major Protocol of Transport Layer
Extending TCP the Major Protocol of Transport Layer
 
Extending TCP the Major Protocol of Transport Layer
Extending TCP the Major Protocol of Transport LayerExtending TCP the Major Protocol of Transport Layer
Extending TCP the Major Protocol of Transport Layer
 
IRJET- Simulation Analysis of a New Startup Algorithm for TCP New Reno
IRJET- Simulation Analysis of a New Startup Algorithm for TCP New RenoIRJET- Simulation Analysis of a New Startup Algorithm for TCP New Reno
IRJET- Simulation Analysis of a New Startup Algorithm for TCP New Reno
 
Marvell Network Telemetry Solutions for Data Center and Enterprise Networks
Marvell Network Telemetry Solutions for Data Center and Enterprise NetworksMarvell Network Telemetry Solutions for Data Center and Enterprise Networks
Marvell Network Telemetry Solutions for Data Center and Enterprise Networks
 
PAPR Reduction in OFDM
PAPR Reduction in OFDMPAPR Reduction in OFDM
PAPR Reduction in OFDM
 

Recently uploaded

TEST BANK For An Introduction to Brain and Behavior, 7th Edition by Bryan Kol...
TEST BANK For An Introduction to Brain and Behavior, 7th Edition by Bryan Kol...TEST BANK For An Introduction to Brain and Behavior, 7th Edition by Bryan Kol...
TEST BANK For An Introduction to Brain and Behavior, 7th Edition by Bryan Kol...rightmanforbloodline
 
CFO_SB_Career History_Multi Sector Experience
CFO_SB_Career History_Multi Sector ExperienceCFO_SB_Career History_Multi Sector Experience
CFO_SB_Career History_Multi Sector ExperienceSanjay Bokadia
 
Get To Know About "Lauren Prophet-Bryant''
Get To Know About "Lauren Prophet-Bryant''Get To Know About "Lauren Prophet-Bryant''
Get To Know About "Lauren Prophet-Bryant''Lauren Prophet-Bryant
 
Call Girls Jayanagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jayanagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...Call Girls Jayanagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jayanagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...amitlee9823
 
Presentation on Workplace Politics.ppt..
Presentation on Workplace Politics.ppt..Presentation on Workplace Politics.ppt..
Presentation on Workplace Politics.ppt..Masuk Ahmed
 
Zeeman Effect normal and Anomalous zeeman effect
Zeeman Effect normal and Anomalous zeeman effectZeeman Effect normal and Anomalous zeeman effect
Zeeman Effect normal and Anomalous zeeman effectPriyanshuRawat56
 
Delhi Call Girls South Ex 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls South Ex 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls South Ex 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls South Ex 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Callshivangimorya083
 
Delhi Call Girls South Delhi 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls South Delhi 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls South Delhi 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls South Delhi 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Callshivangimorya083
 
Motilal Oswal Gift City Fund PPT - Apr 2024.pptx
Motilal Oswal Gift City Fund PPT - Apr 2024.pptxMotilal Oswal Gift City Fund PPT - Apr 2024.pptx
Motilal Oswal Gift City Fund PPT - Apr 2024.pptxMaulikVasani1
 
Dubai Call Girls Demons O525547819 Call Girls IN DUbai Natural Big Boody
Dubai Call Girls Demons O525547819 Call Girls IN DUbai Natural Big BoodyDubai Call Girls Demons O525547819 Call Girls IN DUbai Natural Big Boody
Dubai Call Girls Demons O525547819 Call Girls IN DUbai Natural Big Boodykojalkojal131
 
CALL ON ➥8923113531 🔝Call Girls Nishatganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Nishatganj Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Nishatganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Nishatganj Lucknow best sexual serviceanilsa9823
 
Call Girls Bidadi ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Call Girls Bidadi ☎ 7737669865☎ Book Your One night Stand (Bangalore)Call Girls Bidadi ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Call Girls Bidadi ☎ 7737669865☎ Book Your One night Stand (Bangalore)amitlee9823
 
Book Paid Saswad Call Girls Pune 8250192130Low Budget Full Independent High P...
Book Paid Saswad Call Girls Pune 8250192130Low Budget Full Independent High P...Book Paid Saswad Call Girls Pune 8250192130Low Budget Full Independent High P...
Book Paid Saswad Call Girls Pune 8250192130Low Budget Full Independent High P...ranjana rawat
 
Bur Dubai Call Girl Service #$# O56521286O Call Girls In Bur Dubai
Bur Dubai Call Girl Service #$# O56521286O Call Girls In Bur DubaiBur Dubai Call Girl Service #$# O56521286O Call Girls In Bur Dubai
Bur Dubai Call Girl Service #$# O56521286O Call Girls In Bur Dubaiparisharma5056
 
Hyderabad 💫✅💃 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATIS...
Hyderabad 💫✅💃 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATIS...Hyderabad 💫✅💃 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATIS...
Hyderabad 💫✅💃 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATIS...sonalitrivedi431
 
Vip Modals Call Girls (Delhi) Rohini 9711199171✔️ Full night Service for one...
Vip  Modals Call Girls (Delhi) Rohini 9711199171✔️ Full night Service for one...Vip  Modals Call Girls (Delhi) Rohini 9711199171✔️ Full night Service for one...
Vip Modals Call Girls (Delhi) Rohini 9711199171✔️ Full night Service for one...shivangimorya083
 
Nandini Layout Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangal...
Nandini Layout Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangal...Nandini Layout Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangal...
Nandini Layout Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangal...amitlee9823
 
CALL ON ➥8923113531 🔝Call Girls Husainganj Lucknow best Female service 🧳
CALL ON ➥8923113531 🔝Call Girls Husainganj Lucknow best Female service  🧳CALL ON ➥8923113531 🔝Call Girls Husainganj Lucknow best Female service  🧳
CALL ON ➥8923113531 🔝Call Girls Husainganj Lucknow best Female service 🧳anilsa9823
 
Personal Brand Exploration - Fernando Negron
Personal Brand Exploration - Fernando NegronPersonal Brand Exploration - Fernando Negron
Personal Brand Exploration - Fernando Negronnegronf24
 

Recently uploaded (20)

TEST BANK For An Introduction to Brain and Behavior, 7th Edition by Bryan Kol...
TEST BANK For An Introduction to Brain and Behavior, 7th Edition by Bryan Kol...TEST BANK For An Introduction to Brain and Behavior, 7th Edition by Bryan Kol...
TEST BANK For An Introduction to Brain and Behavior, 7th Edition by Bryan Kol...
 
CFO_SB_Career History_Multi Sector Experience
CFO_SB_Career History_Multi Sector ExperienceCFO_SB_Career History_Multi Sector Experience
CFO_SB_Career History_Multi Sector Experience
 
Sensual Moments: +91 9999965857 Independent Call Girls Paharganj Delhi {{ Mon...
Sensual Moments: +91 9999965857 Independent Call Girls Paharganj Delhi {{ Mon...Sensual Moments: +91 9999965857 Independent Call Girls Paharganj Delhi {{ Mon...
Sensual Moments: +91 9999965857 Independent Call Girls Paharganj Delhi {{ Mon...
 
Get To Know About "Lauren Prophet-Bryant''
Get To Know About "Lauren Prophet-Bryant''Get To Know About "Lauren Prophet-Bryant''
Get To Know About "Lauren Prophet-Bryant''
 
Call Girls Jayanagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jayanagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...Call Girls Jayanagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jayanagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
 
Presentation on Workplace Politics.ppt..
Presentation on Workplace Politics.ppt..Presentation on Workplace Politics.ppt..
Presentation on Workplace Politics.ppt..
 
Zeeman Effect normal and Anomalous zeeman effect
Zeeman Effect normal and Anomalous zeeman effectZeeman Effect normal and Anomalous zeeman effect
Zeeman Effect normal and Anomalous zeeman effect
 
Delhi Call Girls South Ex 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls South Ex 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls South Ex 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls South Ex 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
 
Delhi Call Girls South Delhi 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls South Delhi 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls South Delhi 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls South Delhi 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
 
Motilal Oswal Gift City Fund PPT - Apr 2024.pptx
Motilal Oswal Gift City Fund PPT - Apr 2024.pptxMotilal Oswal Gift City Fund PPT - Apr 2024.pptx
Motilal Oswal Gift City Fund PPT - Apr 2024.pptx
 
Dubai Call Girls Demons O525547819 Call Girls IN DUbai Natural Big Boody
Dubai Call Girls Demons O525547819 Call Girls IN DUbai Natural Big BoodyDubai Call Girls Demons O525547819 Call Girls IN DUbai Natural Big Boody
Dubai Call Girls Demons O525547819 Call Girls IN DUbai Natural Big Boody
 
CALL ON ➥8923113531 🔝Call Girls Nishatganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Nishatganj Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Nishatganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Nishatganj Lucknow best sexual service
 
Call Girls Bidadi ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Call Girls Bidadi ☎ 7737669865☎ Book Your One night Stand (Bangalore)Call Girls Bidadi ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Call Girls Bidadi ☎ 7737669865☎ Book Your One night Stand (Bangalore)
 
Book Paid Saswad Call Girls Pune 8250192130Low Budget Full Independent High P...
Book Paid Saswad Call Girls Pune 8250192130Low Budget Full Independent High P...Book Paid Saswad Call Girls Pune 8250192130Low Budget Full Independent High P...
Book Paid Saswad Call Girls Pune 8250192130Low Budget Full Independent High P...
 
Bur Dubai Call Girl Service #$# O56521286O Call Girls In Bur Dubai
Bur Dubai Call Girl Service #$# O56521286O Call Girls In Bur DubaiBur Dubai Call Girl Service #$# O56521286O Call Girls In Bur Dubai
Bur Dubai Call Girl Service #$# O56521286O Call Girls In Bur Dubai
 
Hyderabad 💫✅💃 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATIS...
Hyderabad 💫✅💃 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATIS...Hyderabad 💫✅💃 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATIS...
Hyderabad 💫✅💃 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATIS...
 
Vip Modals Call Girls (Delhi) Rohini 9711199171✔️ Full night Service for one...
Vip  Modals Call Girls (Delhi) Rohini 9711199171✔️ Full night Service for one...Vip  Modals Call Girls (Delhi) Rohini 9711199171✔️ Full night Service for one...
Vip Modals Call Girls (Delhi) Rohini 9711199171✔️ Full night Service for one...
 
Nandini Layout Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangal...
Nandini Layout Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangal...Nandini Layout Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangal...
Nandini Layout Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangal...
 
CALL ON ➥8923113531 🔝Call Girls Husainganj Lucknow best Female service 🧳
CALL ON ➥8923113531 🔝Call Girls Husainganj Lucknow best Female service  🧳CALL ON ➥8923113531 🔝Call Girls Husainganj Lucknow best Female service  🧳
CALL ON ➥8923113531 🔝Call Girls Husainganj Lucknow best Female service 🧳
 
Personal Brand Exploration - Fernando Negron
Personal Brand Exploration - Fernando NegronPersonal Brand Exploration - Fernando Negron
Personal Brand Exploration - Fernando Negron
 

10.1.1.63.7976

  • 1. A Machine Learning Approach to Improve Congestion Control over Wireless Computer Networks Pierre Geurts, Ibtissam El Khayat, Guy Leduc Department of Electrical Engineering and Computer Science University of Li` ge e Institut Montefiore - B28 - Sart Tilman Li` ge 4000 - Belgium e {geurts, elkhayat, leduc}@montefiore.ulg.ac.be Abstract capacities...) that are difficult to appraise. All these factors make the analytical modeling of networks a very difficult (if In this paper, we present the application of machine not impossible) task. Yet, the good behaviour of computer learning techniques to the improvement of the congestion networks requires the design of effective control strategies control of TCP in wired/wireless networks. TCP is sub- and the rapid adaptation of these strategies to new technolo- optimal in hybrid wired/wireless networks because it re- gies. Hence, data mining and machine learning are certainly acts in the same way to losses due to congestion and losses tools of choice to improve our understanding of networks due to link errors. We thus propose to use machine learn- and to help in the design of control solutions. Furthermore, ing techniques to build automatically a loss classifier from as networks are computer based systems, it is quite easy to a database obtained by simulations of random network collect the data which are the basis of these methods, either topologies. For this classifier to be useful in this applica- from the observation of real networks or from the simula- tion, it should satisfy both a computational constraint and tion of artificial ones (e.g. with a network simulator like a time varying constraint on its misclassification rate on ns-2[14]). congestion losses. Several machine learning algorithms In this paper, we present an application of machine learn- are compared with these two constraints in mind. The ing techniques to the improvement of congestion control best method for this application appears to be decision tree protocol in hybrid wired/wireless computer networks. Con- boosting. It outperforms ad hoc classifiers proposed in the gestion control in computer networks is necessary to share networking literature and its combination with TCP im- equitably the available bandwidth between several users and proves significantly the bandwidth usage over wireless net- to avoid congestion collapse. Nowadays, most internet traf- works and does not deteriorate the good behaviour of TCP fic is carried by TCP that is thus responsible for most con- over wired networks. This study thus shows the interest of gestion control. However, this protocol, which has been de- the application of machine learning techniques for the de- ployed in the eighties, has been designed for wired networks sign of protocol in computer networks. and hence its congestion control mechanism is not adapted to nowadays networks where wireless links are becoming more common. In this paper, we propose to apply machine 1 Introduction learning techniques to improve the behaviour of TCP over hybrid wired/wireless networks. The main motivation of Computer networks are highly complex systems that this paper is to illustrate the different problems we faced for have evolved greatly in the last decade. Nowadays networks the design of our solution from the machine learning point combine a large diversity of different technologies (hybrid of view. The technical details about computer networks may networks that combines wired, wireless, and satellite links) be found in [7]. and must respond to a large variety of tasks with very differ- The paper is structured as follows. In the first section, ent requirements in terms of quality of service (e.g. e-mail, we present the very basis of TCP and the drawback of its videoconference, streaming, peer-to-peer). Furthermore, congestion control algorithm in the context of wireless net- the behavior of these networks depend on a large number of works. We next describe how we propose to solve this external factors (user behaviours, load of the networks, link problem with machine learning techniques and what are the
  • 2. Sender Receiver Sender Receiver main constraints on the machine learning solution. Sec- P1 t1 P tion 3 describes the database that has been generated for Packet 1 RTT A1 t2 P this study. Then, Section 4 presents the different machine Ack 2 t3 P learning methods, essentially decision tree based methods, P2 3 A1 t’ 1 P3 t4 P 4 that have been compared for this problem. Experiments are A2 t5 P A3 5 described in Section 5. Finally, we end the paper with our A1 t’ 2 P4 conclusions and some future work directions. P5 t6 P 6 A1 t’ 3 P6 A4 A1 t’ 4 A5 A6 P7 t’ 2 TCP over wired/wireless networks P8 P9 5 P10 loss TCP, for “Transmission Control Protocol”, is the most t widely used protocol in the Internet. More than 90% of the traffic in nowadays networks is carried by TCP. Its success lies in its reliable file transfer and its capacity in avoiding Figure 1. Congestion control without loss congestion. In this section, we introduce the very basis of (left) and with loss (right) TCP congestion control and then we describe our proposed solution to improve its behaviour in the case of wireless net- of packets sent during each RTT is exactly equal to the win- works. These descriptions are very much simplified. Fur- dow size and hence the instantaneous throughput of TCP is ther details about congestion control mechanisms in TCP equal to (cwnd.size of packets/RT T ). Hence, the additive may be found in [1]. increase of the window size leads to a linear growth of the bandwidth occupancy and allows the sender to slowly probe 2.1 TCP congestion control the available bandwidth. The right part of Figure 1 shows a scenario where A congestion arises in the network when routers are not cwnd=5 and the second packet is lost. The receiver knows able to process the data that arrive to them and this causes that a packet has been lost when it receives a packet before buffer overflows at these routers that result in the loss of its predecessors in the sequence order. In this case, it sends some packets of data. The only solution to relax a conges- to the sender the acknowledgment of the last packet it has tion is to reduce the load of the network. TCP congestion received in the sequence. As packets may not be received protocol is based on the definition of a congestion window in order for other reasons than packet loss (e.g. two packets (denoted cwnd) that controls the rate at which packets are may follow different routes), a packet loss is detected only sent by a sender to a receiver and a mechanism to adapt after three duplicate acknowledgments 2 . At the detection the value of this window size according to the state of the of at least three duplicates, the sender divides its conges- network. The idea is to increase the rate steadily (i.e. ad- tion window by a factor 2, starts retransmission of the lost ditively) when everything works fine and to reduce it more packet, and enters in a so-called fast recovery phase. The abruptly (i.e. multiplicatively) as soon as a loss occurs. description of this latter phase is not useful for the compre- In TCP, every packet sent from a sender to a receiver hension of this paper. Further details may be found in [1]. gives rise to an acknowledgment packet sent in the opposite This congestion control mechanism thus makes the hy- way by the receiver. The congestion window determines the pothesis that packet losses are due to buffer overflows and it maximum number of packets that can wait for an acknowl- works fairly well in the case of wired networks where this is edgment at the sender side at each time. A normal scenario indeed the case. However, in wireless links, losses caused of communication between a sender and a receiver is repre- by error in the link (for example by signal fading) are not sented in the left part of Figure 1, starting with a congestion so unlikely. The TCP protocol as described above has no window of size 1. The sender starts by sending one packet. mechanism to distinguish loss caused by a link error from Then, each time it gets an acknowledgment, it sends a new losses caused by a congestion and it reduces systematically packet. When it gets the acknowledgment of the last packet its rate whenever it faces a packet loss. This reduction is not of the previous group of cwnd packets, it increments cwnd justified when there is no congestion and the consequence is by 1 and then sent two packets in burst instead of one1 . The that the throughput of TCP over wireless link is lower than round-trip-time (RTT) is defined as the time between the what it could be. Several studies have highlighted the bad sending of a packet and the reception of its acknowledg- behaviour of TCP over wireless link (e.g. [17]). ment by the sender. Hence, as seen in Figure 1, the number 2 Packet losses are also detected if after some fixed timeout the sender 1 Actually, cwnd is initialized by a “slow-start” phase that accelerates has not received any acknowledgment from the receiver. This type of the growth of the congestion window to a certain level packet loss will not be considered in this paper. 2
  • 3. 2.2 Proposed machine learning solution On the other hand, if the receiver is in charge of the clas- sification, the complexity of the classifier will not be an is- A straightforward solution to increase the throughput of sue anymore (providing it remains reasonable) and there is TCP over wireless links is to prevent it from reducing its no reason to avoid using the more accurate models. How- rate when it faces a loss due to a link error as it does when it ever, in this case, once a loss is classified, the receiver will faces a congestion. Several approaches have been proposed need to send the classification result to the sender or at least in the networking literature (e.g. [2, 15]) that assumes the a message where it asks the sender not to decrease its rate. support of the network. The approach adopted in this paper The problem is that by allowing this kind of exchange, we is to endow one of the end systems (i.e the sender or the will open greatly the door to distrusted receivers. Hence, we receiver) with an algorithm able to determine the cause of a cannot decide straightforwardly to implement the classifier packet loss only from information available at this end sys- at the receiver side. tem. With such a classifier, the modified protocol will pro- This discussion shows that in this application the com- ceed as follows: each time a loss is detected by a triple du- putational constraint should be taken into account when se- plicate, its cause is determined by the classification model. lecting a model and thus there is an interest even in less If the loss is classified as due to a congestion, the sender accurate models for computational efficiency reasons. proceeds as usual (i.e. it divides its congestion window by two). Otherwise, it maintains its congestion window con- 2.3.2 Adaptive misclassification costs stant. The advantage of such end-to-end methods is that they do not require the support of the networks and hence Since TCP is so popular in nowadays networks, one impor- they can be more easily deployed in practice. tant constraint that any new protocol should satisfy before Several rough classification rules for losses have been being practically used is that it should be TCP-Friendly ([9], proposed in the literature based on heuristics or analytical [13]). A TCP-Friendly protocol is a protocol that, when derivations (e.g. in Veno [11] or Westwood [16]) but our sharing the network with TCP, allows this latter to have a experiment in Section 5.1 will show that these rules do not throughput similar to the one it would get if it were in com- classify very well the loss causes in practice. In this pa- petition with another TCP in similar conditions. This con- per, we propose to use supervised machine learning tech- straint ensures that the new protocol would not be unfair niques to automatically derive a classification model for loss towards the most widely used protocol on the Internet. causes. This model will use as inputs statistics computed on If our classifier misclassifies quite often congestion packets received by the sender or by the receiver and it will losses, it will be unfair towards TCP since it will force its be induced from a database obtained by simulations of ran- competitor to decrease its rate to avoid the congestion and dom network topologies. at the same time it will maintain its congestion window un- changed. Even if it only competes with the same protocol, a 2.3 Constraints on the classifier global misclassification of congestion losses will lead the network to a blackout as nobody will reduce its conges- For this application to be practically feasible and use- tion window. So, for their own benefit and the benefit of ful, there are several specific constraints that should be the community, one should not use a classifier that makes taken into account when choosing a particular classification many errors on the detection of losses due to congestion. model. They are discussed below. On the other hand, a classifier that perfectly detects conges- tion losses and misclassifies many link error losses will be 2.3.1 Computational constraint no better than TCP and hence is not worth consideration. The best strategy is thus to determine the maximum ad- In this application, the computing times to make a predic- missible error on the classification of congestion losses that tion and the computer resource needed to store the model ensures TCP-friendliness and choose a classifier that satis- are not to be neglected. What we can afford according to fies this constraint and minimizes errors on the link error these criteria will depend on which side we decide to put losses. Actually, we show in [7] that it is possible to derive the classification algorithm. If the sender is in charge of analytically an upper bound on the misclassification error the classification, using a relatively complex classification that ensures TCP-friendliness. This bound is of the form: algorithm could be a problem if the sender has a great num- ber of clients (which is usually the case). So, it could be ErrC ≤ f (RT T, p), (1) desirable to trade some accuracy for more efficiency. Of course, if the sender has a benefit in providing the highest where ErrC is the probability of misclassifying a conges- rate to the receivers, or if it has a few number of clients (e.g. tion loss as a link error loss, RT T is the round-trip-time, proxy), it may still prefer to use more accurate classifier at and p is the actual loss rate, i.e. the percentage of lost pack- the expense of computational costs. ets whatever the cause. However, RT T and p, and conse- 3
  • 4. quently the bound on ErrC , depend on the particular net- practice, the larger the learning sample, the better it is for work topology and furthermore they may change with time. supervised learning algorithms. In our study, we have col- We thus have two solutions to select a classifier. First, we lected 35,441 losses (among which 22,426 are due to con- can determine a conservative value of ErrC such that (1) is gestion) that correspond to more than one thousand different satisfied for all reasonable values of RT T and p and then random network topologies. choose a classifier that satisfies this bound on Err . How- C To generate a random topology, we first select a random ever, as usually allowing greater error on congestion losses number of nodes and then choose randomly the presence will allow to reduce error on link error losses, a better solu- or the absence of a connection between two nodes and the tion is to dynamically adapt the classifier such that it always bandwidths of these connections. Concerning the traffic, satisfies the constraint for the current (estimated) value of 60% of the flows at least were TCP flows4 and the others RT T and p. This is the strategy adopted in this paper. were chosen randomly among TCP and other types of traffic This implies two constraints on the classifier. First, it proposed by the network simulator ns-2. The senders, the should be possible to tune the classifier in order to get dif- receivers, and the duration of each traffic were set randomly. ferent tradeoffs between the two kinds of error. In prefer- The number of wireless links, their loss rate, and their place ence, this tuning should not require to rerun the learning in the network were also randomized. Further details about algorithm or to store several models (corresponding to dif- our simulations may be found in [7]. ferent error costs) because of the computational constraint. Second, the model should be as good as possible indepen- 3.2 Input variables selection dently of the error costs. This will imply to evaluate our classifiers using ROC curves (see Section 4.2). The choice of the inputs variables is mainly directed by two constraints. First, of course, it should be possible to 3 Database generation predict a congestion from the observation of these variables. Second, for our classification models to be practically use- ful, these variables should also be measurable, either at the To solve our problem of losses classification, each ob- receiver or at the sender side. servation < xi , yi > of our learning sample will be an in- At the end system (sender or receiver), the only informa- put/output pair where the inputs xi are some variables that tion we can measure to predict a congestion is some statis- describe the state of the network at the occurrence of a loss tics on the packet departure and arrival times. The one-way and the (discrete) output yi is either C to denote a loss due delay of a packet is the delay between the instant the packet to a congestion or LE to denote a loss due to a link error. was sent and the instant it is received (e.g. the one-way de- To make the model generally applicable, the observa- lay of the first packet in right part of Figure 1 is t1 −t1 ). The tions in the database must be as much as possible represen- inter-packet time corresponding to a packet is the difference tative of the conditions under which we will apply the clas- between the time it is sent and the time the previous packet sification model. So, the database generation should take was sent (e.g. the inter-packet time of the second packet in into account all the uncertainties we have a priori about the Figure 1 is t2 − t1 ). These two indicators are certainly influ- topology of the networks, the user behaviours, and the pro- enced by the state of congestion of the network and thus we tocols. The way we generated our observations is described believe that it should be possible to predict the occurrence in Section 3.1. Another important question is the choice of of a congestion by monitoring these indicators for a number the input variables which is discussed in Section 3.2.3 of packets. To define our inputs, we thus compute these two val- 3.1 Simulations ues for the three packets following the loss and the packet that precedes it. In Figure 1, they are respectively pack- The database was generated by simulations with a net- ets P3 ,P4 ,P5 , and P1 . Since the absolute value of these work simulator called ns-2[14]. To generate our observa- indicators are highly dependent on the particular network tions of losses, we have used the following procedure: a net- topology, it is not a good idea to introduce them as it in the work topology is generated randomly and then the network inputs. Instead, we propose to use as inputs only relative is simulated during a fixed amount of time, again by gener- values of these measures normalized in different ways. ating the traffic randomly. At the end of the simulation, all To this end, we further compute the average, the standard losses that have occurred within this time interval are col- deviation, the minimum, and the maximum of the one-way lected in the database. This procedure is repeated until we delay and inter-packet time for the packets that are sent dur- have a sufficient number of observations in the database. In ing each round-trip-time and we maintain these values at 3 The database is available electronically at 4 We have chosen a particular variant of TCP called Newreno but any http://www.montefiore.ulg.ac.be/˜geurts/BD-Fifo.dat.gz. other version of TCP could be used. 4
  • 5. each time for the last two round-trip-times before the cur- In our experiments, the value of k has been fixed to its de- rent time. Our final inputs are then various simple functions fault value which is equal to the square root of the number (for example, the ratio) relating these (4 × 2) values at the of attributes. occurrence of a loss to the inter-packet times and the one- Extra-trees[12]. Unlike bagging and random forests, way delays of the three plus one packets surrounding the this method generates each tree from the whole learning loss. All in all, this results in a set of 40 numerical input sample. During tree growing, the best split is selected variables. among k totally random splits, obtained by choosing k in- puts and split thresholds at random. The main advantage 4 Machine learning techniques of this algorithm is its computational efficiency since there is no threshold optimization stage. In the experiments, the In this study, we propose to use mainly decision tree value of k for this method has also been fixed to the square based algorithms. Indeed, they provide usually very good root of the number of attributes. results for classification problems. Furthermore, they are Boosting. While in the three preceeding methods the among the fastest methods when it comes to make a pre- different trees are built independently of each other, boosted diction. Nevertheless, we also compare these methods to trees are built in a sequential way. Each tree of the sequence neural networks and the k-nearest neighbors. Section 4.1 is grown with the classical induction algorithm (with prun- briefly describes these algorithms and Section 4.2 explains ing) but by increasing the weights of the learning sample ROC curves that are used to evaluate them. cases that are misclassified by the previous trees of the se- quence. Furthermore, unlike in previous methods, when 4.1 Algorithms making a prediction, the votes of the different trees are weighted according to their accuracy on the learning sam- Decision trees are among the most popular supervised ple. In our experiments, we use the original Adaboost algo- learning algorithms. A decision tree partitions the input rithm proposed in [10]. space into hyper-rectangular regions where the classifica- Usually all these methods improve very much the ac- tion is constant. The partition is determined recursively by curacy with respect to a single tree. However, since they successive binary axis-parallel cuts. The main advantage require to grow T decision trees, the computing times for of this method for our application is that pruned trees are testing and the memory required to store a model is T times usually quite small and the computation of a prediction that higher than for a classical decision tree. consists in a sequence of comparisons is very fast. To build a decision tree, we have adopted the standard CART algo- Multilayer perceptrons [3] Multilayer perceptrons are a rithm described in [6] (with cost-complexity pruning by ten- particular family of artificial neural networks. Neural net- fold cross-validation). works represent a model as the interconnection of several small units called perceptrons that compute a weighted av- Decision tree ensembles. One drawback of standard re- erage of their inputs and send this average through a non gression trees is that they suffer from a high variance which linear functions (usually a hyperbolic tangent). This method sometimes prevents them from being competitive in terms usually gives more accurate models than decision trees but it of accuracy with other learning algorithms. Ensemble is also much more demanding in terms of computing times methods are generic techniques that improves a learning al- and computer resources. In our experiments, we have used gorithm by learning several models (from the same learning a Levenberg-Marquard optimization algorithm to learn neu- sample) and then by aggregating their predictions. In our ral networks. experiment, we have used four ensemble methods that have been proposed for decision trees: Bagging [4]. In bagging, each tree of the ensemble is k-Nearest Neighbors. To make a prediction at some point built by the CART algorithm (without pruning) but from a of the input space, the k-NN algorithm simply computes the bootstrap sample drawn from the original learning sample. k nearest neighbors of this point in the learning sample (ac- The predictions of these trees are aggregated by a simple cording to the euclidian distance) and then outputs the ma- majority vote. jority class among the k neighbors. An important drawback Random forests[5]. This method is a slight modifica- of this method for this application is that the computation of tion of bagging, which improves often both accuracy and a prediction is quite demanding and furthermore it requires computational efficiency. In this method, when splitting a to store the entire learning sample. node, k variables are selected at random among all input Of course, there exist many other learning algorithms variables, an optimal split threshold is determined for each that could have been used for our application but we believe one of these and the best split is selected among these latter. that these methods already provide interesting results. 5
  • 6. 4.2 ROC curves Table 1. Comparison of different ML methods One very desirable characteric of the chosen classifier discussed in Section 2.3.2 is that it should be possible to ad- Method AUC Error (%) Time (msec) just its error on congestion losses dynamically. Actually, all DT 0.9424 8.92 150 classification methods presented in the previous section, not Bagging 0.9796 6.65 650 only provide a class prediction for each value of the inputs Random forests 0.9823 6.48 600 x but also provide an estimate of the conditional probabil- Extra-trees 0.9813 6.91 940 ity of each class, C or LE, given the inputs x. In the two Boosting 0.9840 6.34 570 class case, the default use of the model is to classify a loss MLP 0.9761 7.67 1680 ˆ as a congestion loss if the probability estimate P (C|x) is k-NN 0.9541 10.16 316,870 greater than 0.5. However, by using a user defined threshold Veno 0.7260 34.52 - Pth different from 0.5, we can change the misclassification Westwood 0.6627 41.54 - probability of each class and hence adjust our classifier so that it satisfies (1). we only give the results obtained by boosting in Figure 2. A natural way to evaluate our models independently of The value of k for the k nearest neighbors was determined the value of Pth is to use receiver operating characterisic by leave-one-out cross-validation (the optimum is k = 7). (ROC) curves (see [8] for an introduction). A ROC curve For the MLP, we tried several structures of one and two lay- plots for every possible value of the threshold Pth the true ers with a number of neurons going from 10 to 50 neurons positive rate versus the false positive rate of a given class in each layer. Table 1 only shows the best result that was (among two classes). In our case, the true positive rate is obtained with two layers of 30 neurons. taken as 1 − ErrC and the false positive rate is the prob- The results are quite good, especially considering the ability of misclassifying a link error loss, that will be de- diversity of the network topologies represented in the noted ErrLE . A classifier is thus strictly better for our ap- database. The decision tree has the lowest AUC but it is by plication than other classifiers if for every possible value of far the fastest method to make a prediction. The k-NN has ErrC the value of ErrLE is lower than with the other clas- a better AUC than decision tree but its ROC curve is worst sifiers or, in other words, if its ROC curves lies to the left for small values of ErrC , which is the region of interest of the ROC curves of other classifiers. While ROC curves of our application. It is also the slowest method in terms are two-dimensional, a common one-dimensional summary of computing times. MLP improves upon both methods in of a ROC curve to compare classifiers is the area under the terms of accuracy but it remains below ensemble methods ROC curve (AUC) which we will also use to rank our packet in terms of accuracy and computing times. All ensemble loss classifiers. ROC curves and AUC are computed accord- methods are very close but boosting is superior along the ing to the algorithms presented in [8]. two criteria. As it combines pruned trees, it also builds the less complex models. 5 Experiments For comparison, we put also in Table 1 the result ob- First, we evaluate classifiers and then we evaluate the tained on the validation set by two ad-hoc classification improvement obtained by the enhanced version of TCP with rules that have been proposed in the networking literature the best classifier only. in the context of two extensions of TCP for wireless net- works called Veno [11] and Westwood [16]. The results 5.1 Comparison of loss classifiers obtained by these rules are far below the results obtained by machine learning algorithms. This clearly shows the in- To make a reliable estimate of the error of each model, terest of a machine learning approach in the context of this we have randomly divided the whole database into two application, both to improve existing classifiers but also to parts: a learning set of 25,000 cases and a validation set con- assess their validity. taining the remaining 10,441 cases. A classification model Another reason to prefer one method over the others that is built with every method on the learning sample and its does not appear in Figure 2 is the discretization of the ROC ROC curve, AUC, and error rate are evaluated on the valida- curves, i.e. the number of sensible values of Pth . Indeed, in tion sample. The methods are compared from these criteria our application, it is highly desirable to be able to finely in Table 1 and in Figure 2. Since computing times for test- control the value of ErrC by means of Pth . From this ing are important for our application, we also give in Table point of view also, all methods are not equal. Figure 3 1 the time needed to classify the validation set with each illustrates these differences by drawing Errc versus Pth method. For ensemble methods, we build T = 25 trees. for some methods. Decision tree and k-NN provide only As the ROC curves of all ensemble methods are very close, a few sensible values of Pth (about 80 for the pruned tree 6
  • 7. 1 Sink 1 Sender 1 0.95 Sender 11Mb, 0.01ms Sink 0.9 45Mb, 35ms BS 1-ErrC 0.85 Sender n Sink n 0.8 DT Boosting 0.75 k-NN MLP 0.7 Figure 4. Two topologies used in our simula- 0 1 tions ErrLE 3.5 Ratio (TCP-C/TCP) Figure 2. Comparison of the ROC curves of 3 different ML methods 2.5 2 100 Perfect DT 1.5 Veno Random forests Boosting 80 Boosting 1 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 MLP ErrC (%) 60 kNN Packet loss rate (%) 1 Boosting 40 0.8 TCP Bw (%) 0.6 20 0.4 0 0.2 0 1 0 Pth 0 2 4 6 8 10 12 14 16 18 20 Time (s) Figure 3. ErrC versus Pth for different meth- ods Figure 5. Top, the gain in wireless link, bot- tom, TCP-Friendliness on Figure 3 and 7 for k-NN). MLP on the other hand allows to control very finely the value of ErrC . From this point friendliness in the case of wired networks. In this paper, of view, boosting is also superior to other ensemble meth- we only describe two simple experiments showing the in- ods (represented by Random forests in Figure 3). Indeed, terest of the machine learning solution along these criteria. other ensemble methods build unpruned trees that provide A more detailed validation of the protocol may be found in only 0-1 conditional probability estimates. Hence, if T trees [7]. are built, there are only T different possible values of Pth . Improvement on wireless links. To illustrate the gain of Boosting, on the other hand, builds pruned trees that pro- our protocol over wireless link, we simulated the simple hy- vide finer probability estimates and thus its ErrC curve is brid network illustrated in the left part of Figure 4 with the much smoother. network simulator ns-2. The first link (Sender to BS) is This analysis tells us that boosting is the best candidate wired, and the second part, which connects the base sta- for our application. Our experiments with the simulated tion to the sink, is wireless. The bottleneck is the wireless protocol in the next section will thus focus on this method. link, which has a bandwidth equal to 11Mb/s. We compare 5.2 Simulations of the modified protocol the ratio between the throughput obtained by the classifier and the one obtained by a standard TCP when we vary the We propose to use the boosting classifier in the following packet loss rate from 0 to 5% over the wireless link. Each way to improve TCP. Each time a loss occurs, the minimal simulation is run 50 times. To have some points of compar- value of Pth such that (1) is satisfied is determined from ison, we run also simulations with two other classification the current (estimated) values of RT T and p. Then, the rules: the classification rule proposed in Veno and, as our ensemble of trees together with this value of Pth are used system is simulated, a hypothetic perfect classification rule. to classify the loss. If the loss is predicted as caused by a The graph at the top of Figure 5 illustrates the ratio obtained congestion, TCP works as usual. Otherwise, it maintains its by TCP enhanced with the three classifiers. A standard TCP congestion window constant. The correspondence between would have a ratio of 1 whatever the loss rate over the wire- ErrC and Pth is obtained on the validation set by inverting less link. The superiority of boosting over Veno and stan- the curve in Figure 3. dard TCP is clear. It is also very close to the perfect model. The two main criteria to evaluate this protocol are Its gain with respect to TCP reaches about 300% when the bandwidth usage in the case of wireless links and TCP- loss rate is equal to 3%. In other words, the file tranfer with 7
  • 8. our protocol is three times faster than with standard TCP. selection of the best tradeoff between accuracy and compu- tational efficiency will require to consider the real impact of TCP-friendliness. To test the behaviour of our protocol a reduction of accuracy on the behaviour of the protocol. when it competes with another TCP, we use the topology illustrated in the right part of Figure 4 with n = 2 which is often used to test the fairness of a new protocol. The References experiment consists in running a standard TCP in competi- tion with our TCP plus the boosting classifier. The bottom [1] M. Allman, V. Paxson, and W. Stevens. RFC 2581: TCP graph of Figure 5 illustrates the evolution of the throughput congestion control, 1999. obtained by each traffic. This figure shows that the link is [2] A. Bakre and B. R. Badrinath. I-TCP: Indirect TCP for fairly shared between the two protocols. The same exper- mobile hosts. 15th International Conference on Distributed Computing Systems, 1995. iment was run with Veno’s classification rules and in this [3] C. Bishop. Neural Networks for Pattern Recognition. Ox- case, the bandwidth used by Veno was five times higher than ford: Oxford University Press, 1995. that of TCP. This unfairness is not surprising as Veno’s clas- [4] L. Breiman. Bagging predictors. Machine Learning, sification rule misclassifies many congestions and, hence, it 24(2):123–140, 1996. reduces its bandwidth less often than a standard TCP. [5] L. Breiman. Random forests. Machine learning, 45:5–32, 2001. 6 Conclusions [6] L. Breiman, J. Friedman, R. Olsen, and C. Stone. Classifi- cation and Regression Trees. Wadsworth International (Cal- ifornia), 1984. In this paper, we have presented the application of ma- [7] I. El Khayat, P. Geurts, and G. Leduc. Classification of chine learning techniques to the improvement of congestion packet loss causes in wired/wireless networks by decision control protocol in wireless networks. The idea is to en- tree boosting. Submitted, 2004. hance TCP with a loss classifier and to adapt its behaviour [8] T. Fawcett. Roc graphs: Notes and practical considerations according to the predictions of this classifier. A particularity for researchers. Technical report, HP Labs, 2004. of this application from the machine learning point of view [9] S. Floyd, M. Handley, J. Padhye, and J. Widmer. Equation- is the need to adapt dynamically the misclassification costs based congestion control for unicast applications. In SIG- of the classifier that requires to evaluate machine learning COMM 2000, pages 43–56, Stockholm, Sweden, August algorithms with ROC curves. A database has been gener- 2000. [10] Y. Freund and R. E. Schapire. A decision-theoretic general- ated by simulating a thousand random network topologies ization of on-line learning and an application to boosting. In and several machine learning algorithms have been com- Proceedings of the second European Conference on Compu- pared for this task. Decision tree boosting turns out to be tational Learning Theory, pages 23–27, 1995. the best method in terms of accuracy. Its application in the [11] C. P. Fu and S. C. Liew. TCP veno: TCP enhancement for context of TCP shows a significant improvement of band- transmission over wireless access networks. IEEE (JSAC) width usage in wireless networks and no deterioration in Journal of Selected Areas in Communications, Feb. 2003. traditional wired networks. Furthermore, the resulting clas- [12] P. Geurts, D. Ernst, and L. Wehenkel. Extremely randomized sifier also compares very favorably to existing ad-hoc clas- trees. Submitted, 2004. sification rules that have been proposed in the networking [13] M. Mathis, J. Semke, Mahdavi, and T. Ott. The macroscopic behavior of the TCP congestion avoidance algorithm. ACM literature. This study thus shows the interest of the applica- Computer Communication Review, 3:67–82, July 1997. tion of machine learning techniques to help designing new [14] S. McCanne and S. Floyd. The LBNL Network Simulator. protocol in computer networks. Lawrence Berkeley Laboratory, 1997. There nevertheless remain several possible improve- [15] C. Parsa and J. J. Garcia-Luna-Aceves. Improving TCP per- ments. From the point of view of computing times, the formance over wireless networks at the link layer. Mob. model induced by boosting may still be too complex for Netw. Appl., 5(1):57–71, 2000. some practical applications. Several techniques could be [16] R. Wang, M. Valla, M. Sanadidi, B. Ng, and M. Gerla. Ef- used to reduce its computational requirement. For exemple, ficiency/friendliness tradeoffs in TCP westwood. In In Pro- we could try to reduce the number of trees in the ensemble ceedings of the Seventh IEEE Symposium on Computers and Communications, Taormina, July 2002. or build smaller trees. As the size of decision trees is pro- [17] G. Xylomenos, G. Polyzos, P. Mahonen, and M. Saaranen. portional to the size of the learning sample, it is also possi- TCP performance issues over wireless links. Communica- ble to use subsampling techniques to reduce the size of our tions Magazine, IEEE, 39(4):52–58, 2001. models. Another drawback of our approach is that we have to store and update continuously about 40 variables based on different statistics measured on the packets. It would be desirable to reduce this set of variables as much as possi- ble for computational efficiency reason. In all cases, the 8