The conservation of information, towards an axiomatized modular modeling approach to congestion control
C. Briat, E.A. Yavuz, H. Hjalmarsson, K.H. Johansson, U.T. Jönsson, G. Karlsson, H. Sandberg
aa r X i v : . [ c s . N I] M a r The conservation of information, towards anaxiomatized modular modeling approach tocongestion control
C. Briat, E.A. YavuzH. Hjalmarsson, K.H. Johansson, U.T. J ¨onsson, G. Karlsson, and H. Sandberg
Abstract —We derive a modular fluid-flow network conges-tion control model based on a law of fundamental nature innetworks: the conservation of information. Network elementssuch as queues, users, and transmission channels and networkperformance indicators like sending/acknowledgement rates anddelays are mathematically modelled by applying this law locally.Our contributions are twofold. First, we introduce a modularmetamodel that is sufficiently generic to represent any networktopology. The proposed model is composed of building blocksthat implement mechanisms ignored by the existing ones, whichcan be recovered from exact reduction or approximation ofthis new model. Second, we provide a novel classification ofpreviously proposed models in the literature and show that theyare often not capable of capturing the transient behavior of thenetwork precisely. Numerical results obtained from packet-levelsimulations demonstrate the accuracy of the proposed model.
Index Terms —congestion control modeling; fluid-flow model;queuing model; self-clocking
I. I
NTRODUCTORY DISCUSSIONS
A. The congestion control problem
The congestion problem [1], [2] is inherent to communica-tion networks where capacity of supporting infrastructure thatrelays information is small compared to user demand. Conges-tion is responsible for delay and data loss, which compromisethe efficiency of the overall network. Controlling congestion ishence an important problem for which several algorithms havebeen developed. They mainly rely on the concept of congestionwindow , which is adapted according to a congestion measure .According to the type of congestion measure, two classesof congestion control algorithms may be identified [3], [2].The first and oldest class is loss-based , meaning that thecongestion measure is the packet-loss information. This classis easy to implement but leads to a quite rough controlsince the protocol detects the network congestion only afterprovoking it. In order to control congestion more smoothly andprevent data loss, delay-based algorithms, using for instancethe Round-Trip Time (RTT) information as the congestionmeasure, may be considered instead. They are however moredifficult to implement due to the possible unavailability ofcertain necessary measures, such as queuing delays .The main difficulty in congestion control lies in the factthat, basically, the hosts ignore almost everything about the { cbriat,emreya,hakan.hjalmarsson,gk,kallej,hsan } @kth.se the number ofdesired outstanding packets network: the routes and their capacity, the numbers of routers(hops), the number of users, etc. Hence, protocol designersface the problem of controlling a very large and complexsystem with actually very little information.When designing a protocol, stability of the network iscertainly the most important constraint. Performance criteriacan be additionally considered in order to optimize the networkbehavior. For instance, we may want to use all available band-width ( efficiency ), share it equally between users ( fairness ),and/or be tolerant with respect to unregulated traffic and otherprotocols ( cross-traffic adaptation ).In order to observe/predict the network behavior and va-lidate a protocol, simulations and experiments must usuallybe conducted. NS-2 is a widely accepted open-source event-based simulator dedicated to this purpose. However, as anyother simulator, it does not permit to analyze the stabilityof a network theoretically. Hence constructing mathematicalmodels for networks may play an important role in networkanalysis and protocol design since they potentially allow fora theoretical analysis and an equation-based design of newprotocols. B. Models, approximations and accuracy
Modeling is now ubiquitous. The key idea is to start froma system and arrive at an abstract representation of it, such asone given in terms of a set of mathematical equations. It is notalways necessary that a model represents all characteristics ofa system but only a subset of interest: e.g. a molecular-levelmodel can be irrelevant to portray a river. This gave rise tofluid-mechanics which, although being an idealization of thereality, yields very accurate predictions. A similar idealizationhas been shown to be very useful for the congestion controlproblem through the consideration of fluid-flow models [4].
C. Metamodels and network models
A paragon of network modeling is undoubtedly used in thefield of electrical engineering. It is easy to identify the reasonsfor the success of the theoretical framework:1) Only two universal concepts: current and voltage, gov-erned by simple laws (Kirchhoff’s laws)2) Local description of the elements in terms of thesevariables and additional local concepts (e.g. resistance,etc.)
3) Easy transcription of the electrical network into a topo-logically identical diagram, and vice-versa.4) New models corresponding to new devices may be freelyadded without compromising the existing ones.5) Model predictions fit very well to reality.6) Systematic way of analysis by hand calculations orsimulators.A very important feature is that the principles of modeling anelectrical network is independent of its topology and elements.This is achieved thanks to the structure of the paradigm thatwe refer from now on as a metamodel , which is a model thatconsists of a set of frames, rules, constraints, submodels andtheories applicable and useful for modeling a predefined classof problems. In the case of electrical networks, the metamodelconsists of the concepts of current and voltage, the Kirchhoff’slaws and the local models of electrical elements (resistor, ca-pacitor, transistor, etc.) as well as all the related mathematicaltools. Since networks (like communication networks, electricalnetworks, transportation networks and even social networks)consist of interconnections of several elements, it turns outthat metamodels are then very suitable for describing themsince they also consist of interconnection of concepts, rulesand submodels. Hence metamodels provide, in essence, anelegant scalable and modular way for modeling networks.
D. Motivations and contributions
The main motivation of this work is to give a clear pictureof congestion control modeling problem through derivationof a metamodel having solid mathematical foundations. Weintroduce a modular metamodel that would lead to an inter-esting step forward towards a generic way of providing modelsfor communication networks. This metamodel should thensatisfy the additional constraints on independence of networktopology (scalability) and elements (modularity). It shouldalso provide accurate predictions along with simple graphrepresentation. An underlying difficulty is the presence of sev-eral phenomena at different levels: decision to send a packet,transmission of packets on transmission channels, storage ofpackets in queues and time-varying waiting-time (queuingdelays), congestion window size adaptation, etc. Finding aunified way for representing all these critical phenomena ischallenging.The proposed metamodel is based on a single concept ofinformation conservation, from which models for the networkconstituents (i.e. transmission channels, queues and users)are obtained. This allows to derive new models for networkelements, obtain mathematical proofs for unproved/claimedexisting ones, and invalidate some of them. All importantvariables of the network (sending rates, ACK rates, queue size,etc) are described by explicit formulas, hence computable.Using the proposed metamodel, describing a given topologyis immediate, and performed by simply plugging the modelstogether, so as the actual topology is transcribed into a graphhaving the different network elements located on the edges, asin electrical engineering. It is also proved that existing sendingrate models are either approximation of the proposed sendingrate model, or even exact provided that the network topology satisfies certain structural conditions. Simulations and com-parisons with existing works tend to suggest the relevance,reliability and accuracy of the proposed metamodel. A non-exhaustive summary of related works on congestion controlmodeling is finally made in order to compare congestioncontrol models according to important properties and criteria .The outline of the paper is as follows: Section II intro-duces the particular network graph representation consideredin the paper. Using continuous-time models, such as fluid-flow models, to describe networks is justified and conceptsof universal clock, local discrete-time network element clock,and clock-coupling are defined in section III. Section IVpresents the conservation law of information and we derivethe transmission channel model in section V. In section VI,we develop the model for the FIFO buffer network element.The user model is given in section VII and we summarize theobtained results in a compact form in section VIII. In sectionIX, we consider a network with single buffer/multiple-usertopology to implement the proposed model. We validate ourmodel in section X and related work is given in section XI.Section XII concludes the paper.II. N ETWORKS AND G RAPHS
It is convenient to introduce here the particular networkgraph representation considered in the paper. It is differentfrom the traditional ones [5], [6], [7], [8] since it places allnetwork elements on graph edges, leaving nodes with the roleof connecting points, as in electrical circuits. Four types ofnodes are distinguished: the input nodes u − i , b − j and outputnodes u + i , b + j for user u i and buffer b j respectively. Thesuperscripts have to be understood as a temporal order ofreaction or causality: the data come (-) then leave (+). Wewill denote any edge E of the graph by h x, y i where x and y are the input and output nodes respectively. Moreover, givenany edge E , the input and output nodes are given by β ( E ) and ε ( E ) respectively.According to these definitions, a queue edge is alwaysdenoted by h b − i , b + i i , a user edge by h u − i , u + i i and a trans-mission edge by h b + i , u − j i , h u + i , b − j i or h b + i , b − k i , i = k . Thisis illustrated in Fig. 1. We call a circuit C i the communicationpath of user u i , that is the path connecting its output u + i to itsinput u − i , i.e. C i = h u + i , u − i i . Note that in complex networksthere exist several possible paths but only one of them, theone used for communication, is a circuit. In Fig. 1, the onlypossible circuit is given by C = h u + , b − , b + , u − i .III. F LUID - FLOW IDEALIZATION
In an asynchronous network like the Internet, each el-ement can be considered to have its own local discrete-time clock T i ⊂ R + where T i is countable, governingthe rhythm of protocol decisions and packets transmission.In congestion control, the clocks beat with the rhythms ofacknowledgment reception rates, which are influenced in turnby network congestion; this is referred to as ACK-clocking . The authors are aware of the fact that all the models are certainly notlisted. This is however a first attempt and any suggestion from the reviewersto improve/correct this comparison is welcome. The term self-clocking isalso used but is less explicit. (cid:0)(cid:0)(cid:0)(cid:0)(cid:1)(cid:1)(cid:1)(cid:1) (cid:0)(cid:0)(cid:0)(cid:1)(cid:1)(cid:1)(cid:0)(cid:0)(cid:0)(cid:0)(cid:1)(cid:1)(cid:1)(cid:1) (cid:0)(cid:0)(cid:1)(cid:1)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:1)(cid:1)(cid:1)(cid:1)(cid:1)(cid:1)(cid:1)(cid:1)(cid:1)(cid:1)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:1)(cid:1)(cid:1)(cid:1)(cid:1)(cid:1)(cid:1)(cid:1)(cid:1)(cid:1)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:1)(cid:1)(cid:1)(cid:1)(cid:1)(cid:1)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:1)(cid:1)(cid:1)(cid:1)(cid:1)(cid:1)
PSfrag replacements h b − , b + i b − b + u − u + h u − , u + ih u + , b − i h b + , u − i bℓ ℓ u Fig. 1. Example of graph with 4 edges: one user edge u = h u − , u + i ,one buffer edge b = h b − , b + i and two transmission edge ℓ = h u + , b − i , ℓ = h b + , u − i When several sources send data through the same buffer/path,a flow-coupling takes place leading then to clock-coupling.This clock-coupling arises at a very large-scale and distantsources having their clocks coupled cannot be considered tohave independent behaviors. As a consequence, the sendingrates and acknowledgment rates are hence intimately inter-dependent. Modeling this clock-coupling and the underlyingphenomena is of incredible complexity since the numberof clocks and their interactions grow very quickly with thenetwork complexity, leading then to a very complicated struc-ture for the interrelated local clocks T i , see for example [9,Equations (3.7)].An idea to resolve this complex time-structural problemrelies on the definition of a universal clock T u dictating acommon time to the entire network. This leads us to thefollowing fact: Fact 1.
There exists an ideal universal clock T u embeddingany local clock T i , i.e. ( S i T i ) ⊂ T u . ∴ A natural universal clock is given by S i T i and is a discrete-time clock. It however does not simplify too much the mod-eling problem since it is difficult to write recurrence relationsfor general network topologies [9]. Deriving a metamodelachieving scalability is then unlikely using such a universalclock. A however less natural universal clock T u assimilatedto a clock running over positive real numbers continuously, i.e. T u ≡ R + , is much more promising. This particular universalclock indeed dramatically simplifies the modeling problem,and this motivates its consideration in this paper. Using sucha time-scale, a metamodel can be obtained, resulting thenin a scalable solution in which the network asynchrony iscaptured through appropriate expansions and compressionsof the time-space. Furthermore it enables the use of well-established mathematical tools: real function analysis, integra-tion theory, dynamical systems, delay-differential equations,etc. A conclusion is that continuous-time models may beused to describe networks [10], [4], [11], [12], [6]: these aregenerally referred to as fluid-flow models , emphasizing theconnection with continuum mechanics and more specificallywith fluid-mechanics.Within this framework, it is possible to provide a properdefinition for data flows. Definition 2.
Let us consider a point x in an edge E ofthe network and denote the number of packets having passed through point x between t ∈ T u and t ∈ T u , t ≥ t , by N x ( t, t ) . Then, the flow of data passing through point x isdefined as a function φ : E × T u → R + verifying: N x ( t, t ) = Z tt φ ( x, s ) ds (1) where the integral is a standard one, e.g. the Lebesgue integral. Flows are defined in such a way rather than being thederivative of the number of packets, since the number ofpackets is non-differentiable, i.e. flows may contain diracpulses, steps and so on. It is also interesting to note thatsince the the universal clock embeds all the local clocks, itis possible to recover discrete-time asynchronous models suchas the one in [9] by setting flows to be trains of dirac pulseson S i T i .Using the notation defined in Section II, we can build theflow vectors φ ( x, t ) using the ’ col ’ operator: φ ( x, t ) = η ( x ) col k =1 [ φ k ( x, t )] (2)where x in any input and output node of the network elements,i.e. x can be any u − i , u + i , b − i , b + i . The quantity η ( x ) denotesthe number of flows passing through node x . The conceptof flows of data is hence very close to those of current inelectrical engineering and flow of a liquid in fluid-mechanics.IV. C ONSERVATION LAW OF INFORMATION
The core of the metamodel is the conservation law ofinformation stated in this section. This law allows to improvethe characterization of the elements of the network by notablyclarifying their input/output relationship, enabling then amodular formalism. This conservation law follows from theremark that the quantity of information is preserved in acommunication network: the data can either be in transit,lost or received. Assuming lossless networks, it is possible todetermine the total number of packets in transit in any edge,simply by counting the number of entering packets accordingto a simple rule. When applied to a specific element, thislaw allows to characterize the fact that the information ispreserved from the input to the output. Law of Conservation of Information:
Given any edge E of a network, then for all t ∈ T u , thereexists a time t ( t ) ∈ T u , t ( t ) ≤ t such that P E ( t ) := R E φ ( θ, t ) dθ = R tt ( t ) φ ( β ( E ) , s ) ds = N β ( E ) ( t, t ( t )) (3)The integration over E is an abstract integral which hasto be understood as a flow spatial integration from β ( E ) to ε ( E ) , that is, the number of packets P E ( t ) in the edge E = h β ( E ) , ε ( E ) i at time t . ∴ The above result stated in quite abstract terms just says thatthe number of packets in transit in an edge at a certain time t can be determined by counting the number of entering packets(i.e. integrating the input flow) over the interval [ t ( t ) , t ] , the expressed in bits or packets. PSfrag replacements
Constant propagation delay T Transmission channel h x, y i φ ( x, t ) φ ( y, t )= φ ( x, t − T ) Fig. 2. Transmission channel block lower bound t of the interval depending on the consideredelement, i.e. transmission channel, queue or user. A simpleapplication of the law is given in the next section discussingtransmission channels models.The first benefit of this law is to show that we can inter-changeably use a spatial or a temporal integral to calculatethe quantity of information (number of packets) in an edge.The temporal integral formulation is very convenient to workwith since it requires the knowledge of the input flow only,rather than the flow value on the entire edge for the spatialintegral formulation. This hence allows to discretize the spacedimension by only considering flows at the nodes, simplifyingthen the network representation and the modeling problem.The second benefit lies in the fact that the temporal integralcan be utilized to yield explicit solutions for the output flowsof the different network elements. A very general result isgiven below: Proposition 3.
The input flow φ ( β ( E ) , · ) and the output flow φ ( ε ( E ) , · ) of edge E verify φ ( ε ( E ) , t ) = t ( t ) ′ φ ( β ( E ) , t ( t )) (4) where we assume that t ( t ) is absolutely continuous and t ( t ) ′ is the upper-right Dini derivative of t at t , i.e. t ′ ( t ) = lim sup h ↓ h − ( t ( t + h ) − t ( t )) .Proof: Since N β ( E ) ( t, t ( t )) is the current number ofpackets on edge E at time t , then differentiation with respectto time provides the balance equation [ N β ( E ) ( t, t ( t ))] ′ = φ ( β ( E ) , t ) − t ( t ) ′ φ ( β ( E ) , t ( t )) . Note also that a second valid balance equation is given by [ N β ( E ) ( t, t ( t ))] ′ = φ ( β ( E ) , t ) − φ ( ε ( E ) , t ) . Identifying the right-hand side yields the result.The proposition given above plays a crucial role in themetamodeling problem since it provides an explicit formulaof the output flows. This output flow verifies the conservationof information from the input to the output of the edge E .By integrating the input and output over [0 , ∞ ) the verysame value is obtained. This emphasizes that the output flowis defined in such a way that, as desired, it respects thenatural property of conservation of information. Proposition 3is used repeatedly in the paper in order to provide accurate andexplicit models for transmission channels, queues and users.Applications are given in Sections V, VI-C and VII-D.V. T RANSMISSION C HANNEL M ODEL W ITH C ONSTANT P ROPAGATION D ELAY
The first element-model is derived in this section, namelythe model for lossless transmission channels with constant delay. They exactly behave as transmission lines and a delay-based formulation is provided. The derivation is rather straight-forward but it is a good example of application of Proposi-tion 3.
Result 4.
Given a lossless transmission channel correspond-ing to edge E and having constant propagation delay T > ,the output flow is given by φ ( ε ( E ) , t ) = φ ( β ( E ) , t − T ) . (5) The corresponding module is depicted in Fig. 2.Proof:
According to the conservation law (3), the numberof packets in transit P E ( t ) in the edge E at time t ∈ T u obeys P E ( t ) = Z tt ( t ) φ ( β ( E ) , s ) ds (6)where t ( t ) = t − T since the propagation delay is constant.A packet sent at time t − T will indeed be, at time t , stillin the edge and about to leave. The result follows then fromProposition 3.We are now in a position to introduce transmission channeloperators defining part of the network topology. Definition 5.
The flow vectors φ ( u − , t ) = col i [ φ ( u − i , t )] , φ ( b − , t ) = col i [ φ ( b − i , t )] , φ ( u + , t ) = col i [ φ ( u + i , t )] and φ ( b + , t ) = col i [ φ ( b + i , t )] are related by transmission channeloperators R • , • ∈ { ub, bu, bb } as (cid:20) φ ( u − , t ) φ ( b − , t ) (cid:21) = R (cid:20) φ ( u + , t ) φ ( b + , t ) (cid:21) + D δ ( t ) (7) where R = (cid:20) R ub R bu R bb (cid:21) and D = (cid:20) D b (cid:21) . The matrices R • , • ∈ { ub, bu, bb } correspond to routingmatrices between output and input nodes. For instance, R ub maps flows at user output nodes to flows at buffer input nodes.These matrices essentially consist of constant delay operatorswith delays corresponding to transmission channels. The full-rank input matrix D b drives the vector of cross-traffic flows δ ( t ) to buffer input nodes. VI. FIFO B
UFFER M ODEL
This section is devoted to the very important buffer elementwhich temporarily stores incoming information before pro-cessing it. First, the standard fluid model for queues is recalled[11], [3], [2] and a complete delay-map is characterized. Inorder assign each input flow to its corresponding output flowand solve the output flow separation problem [13], [14], [15],[16], [17], [18], the conservation law is then applied on thestandard queue model, in a similar way as for transmissionchannels. The output separation problem allows us to focuson the accurate description of queues, which captures boththe FIFO behavior and the form of output flows. Some extradiscussions and interpretations of the results are also provided.Finally, a comparison to an existing model for output flows iscarried out and concludes in favor of the proposed one.
A. Queue model
Routers have queues to store incoming packets temporarily.The following integrator model [11] can be proved to be alimit model of a M/M/1 queue when the packet size and thusthe processing time tend to 0 [2], [19].
Definition 6.
The queue dynamics of buffer b i is governed bythe model ˙ q i ( t ) = σ ( b i ) X j =1 φ j ( b − i , t ) − r i ( t ) (8)where the aggregate output rate is defined as r i ( t ) = (cid:26) c i if C i ( t ) P j φ j ( b − i , t ) otherwise . (9)Above, q i , c i and φ j ( b − i , t ) represent the queue size, themaximal output capacity and the flow of type j at the inputrespectively. The condition C i ( t ) is given by C i ( t ) := [ q i ( t ) > ∨ X j φ j ( b − i , t ) > c i . (10)The corresponding queuing delay can be easily deduced usingthe relation τ i ( t ) = q i ( t ) /c i . ∴ The above model can also be refined to capture additionalfeatures such as finite maximal queue length, flow priorities,and multiple output capacities. These extensions are omittedhere since they are straightforward. It is important to stressthat this model is incomplete and useless in this form. First,the output flow is given in aggregate form. This preventsthe modeling of the appropriate routing of each output flow.Second, it does not capture the queue FIFO behavior. Finally,the model does not assign a specific queueing time to eachinput flow. In the following subsection, the conservation law(3) is used in order to confer the FIFO property to the modeland separate the aggregate output flow into distinct flows.
B. Forward and Backward Queuing Delays
The maps defined in this section are very useful for obtain-ing a closed formula for the buffer output flows in SectionVI-C and for RTT in Section VII-C.Let us consider first the buffer model (8) with queueingdelay τ i ( t ) . Assume that the time instants at which packetsenter the queue are chosen as reference times. We may thenbe interested in predicting the packet output time. This leadsto the following definition: Definition 7 (Forward delay operator) . The forward delayoperator f i : T u → T u corresponding to buffer b i mapping,at a flow level, any input-time t to the output-time f i ( t ) isdefined as f i ( t ) := t + τ i ( t ) (11) where τ i ( t ) is the queuing delay of buffer b i . It is easy to see that output-time can be readily computedfrom the knowledge of input-time and queuing delay value.If however, we would like to set the reference time to be the output time, we may ask the question whether it is possibleor not to retrieve the input-time from it. This is equivalent toasking the question of invertibility of the map f i . Result 8 ([17]) . The map f i is invertible if and only if the inputflow of the corresponding buffer is positive almost everywhere. N Hence, provided that there is a nonzero input flow to thebuffer, the input-time corresponding to a given output-time iswell-defined and can be obtained using the backward delayoperator : Definition 9.
The backward delay operator g i : T u → T u corresponding to buffer b i mapping, at a flow level, any output-time t to the input-time g i ( t ) is defined as g i := f − i underthe assumption of Result 8. We also have the following useful results:
Result 10 ([17]) . The functions f i and g i := f − i obey: g ′ i ( t ) = c i η ( b i ) X k =1 φ k ( b − i , g i ( t )) − if C i ( g i ( t ))1 otherwise f ′ i ( t ) = c − i η ( b i ) X k =1 φ k ( b − i , t ) if C i ( g i ( t ))1 otherwise[ τ i ( g i ( t ))] ′ = − c i P η ( b i ) k =1 φ k ( b − i , g i ( t )) if C i ( g i ( t ))1 otherwise where f ′ ( t ) stands for the the upper right Dini derivative of f ( t ) , i.e. f ′ ( t ) = lim sup h ↓ h − ( f ( t + h ) − f ( t )) . N The following technical result allows to simplify the condi-tions involved in hybrid models:
Result 11.
The equivalence C ( g i ( t )) ⇔ C ( t ) holds.Proof: Proof of ⇒ : If the buffer is congested at time g i ( t ) then the buffer will also be congested at time t since thedata entered at time g i ( t ) leave at time t . Proof of ⇐ : Conversely, if there is any data to leave at time t , they must have entered in the queue in the past, i.e. at time g i ( t ) . Equivalence is proved. C. FIFO Buffer Output Flow Separation
In this section, we use the results given above and theconservation law in order to improve the buffer modeling byadding the FIFO characteristics and splitting the aggregateoutput flows into a sum of distinct ones. Without furtherconsideration on the queue type, there exists an infinite numberof ways to separate the aggregate output flow directly fromthe queuing model of Definition 6. When a FIFO queue(i.e. order preserving) is considered, it turns out that theoutput flow separation problem is easily solvable. The FIFOcharacterization and output flow separation problems havebeen fully solved in [17]. In this section, we will simply recall and explain these results, and connect them to the conservationlaw (3).
Result 12 ([17]) . Let us consider the queueing model (8)which we assume to represent a FIFO queue. The output flowcorresponding to the input flow φ ℓ ( b − i , t ) , ℓ ≤ η ( b − i ) is givenby φ ℓ ( b + i , t ) = g ′ i ( t ) φ ℓ ( b − i , g i ( t ))= c i φ ℓ ( b − i , g i ( t )) P η ( b i ) j φ j ( b − i , g i ( t )) if C i ( t ) φ ℓ ( b − i , t ) otherwise (13) Proof:
A proof is available in [17]. A more direct onebased on Proposition 3 is given here. Noting that for buffer b i , we have t ( t ) = g i ( t ) , then using Proposition (3) and theformulas of Result 10, we get equation (13) with the differencethat the condition is C ( g i ( t )) . However, from Result 11, thecondition C ( g i ( t )) is equivalent to C ( t ) and the result follows.The same model has been also proposed in [13], [16] butclaimed without any proof. We have shown above that thismodel is an immediate consequence of the information con-servation law and gives, for the first time, a theoretical prooffor it. This considerably strengthens the trust we may have inthis model. A comparison with packet-level simulations in thenext subsection tends to show its exactness.This model also deserves interpretation: formula (13) saysthat output flows consist of scaling and shifting of the inputflows. The delay accounts for high flow viscosity and capturesthe queue FIFO behavior, at a flow level , while the nonlinearratio expresses the flow coupling at the core of the flow andclock-coupling phenomena, see section III, since each outputflow depends on the corresponding input flow and all theother ones as well. A change in a single flow will affectall the output flows. This model also tells that the outputflow corresponding to the input flow φ ℓ ( b − , t ) is expressedas a (delayed) ratio of the input flow φ ℓ ( b − , t ) to the totalinput flow that entered the buffer at the same time. Hence, theoutput flows are proportional to relative flows modeling the’chance’ of having a packet of certain type served at time t .This ’chance’ is then scaled-up by the maximal output capacityto utilize the available capacity.Operators representing buffers can now be introduced: Definition 13.
The buffer operator B i with η ( b i ) input flowsis defined as B i : φ ( b − i , t ) → φ ( b + i , t ) (14) where the output flows and the buffer state are governed by(8) and (13). Using these operators, we can build a matrix ofoperators B connecting the φ ( b − , t ) ’s to the φ ( b + , t ) ’s as φ ( b + , t ) = B φ ( b − , t ) (15) where B = diag i {B i } . PSfrag replacements
Forward queueing delay τ Backward queueing delay τ ( g ) Queue h b − , b + i φ ( b − , t ) φ ( b + , t ) defined in (13) Fig. 3. Queue/Buffer block
D. Comparison with Another Model
Two main models for buffer output flows have been reportedin the literature on fluid-flow models: the flow-based model[13], [16], [17] described in this paper and the pseudo-queue-based one [14], [15], [18] given by φ ℓ ( b + i , t ) = q ℓi ( t ) c i P k q ki ( t ) if q i ( t ) = 00 otherwise (16)where q ℓi ( t ) is the number of packets of type ℓ in queue i and c i is the maximal output capacity of queue i .Until now, these models have not been confronted to eachothers. In the following, they will be theoretically and exper-imentally compared, and it will be shown that the flow-basedmodel is the only model that faithfully characterizes the actualoutput flows, validating then the proposed conservation-law-based paradigm.
1) Theoretical argumentation:
First, the above model as-sumes that the ’chance’ of having a packet of type ℓ at theoutput at time t is q ℓi ( t ) / P i q ℓi ( t ) . Model (16) then makes nodifference in picking a packet in the middle, at the end or atthe beginning of the queue since only the number of packetsmatters. It is thus unable to capture the FIFO characteristicof the queue since swapping packets in the queue does notmodify the output flow. In contrast, the proposed model doescapture this characteristic through the delay dynamical modeland the delayed nonlinear input-output relationship involvingflows directly: relative variations of the input flows are passedto the output flows after some queueing delay. Note howeverthat both models coincide at equilibrium.Second, since output flows in model (16) are computedfrom the integration of input flows, it turns out that themap from input flows to output flows is a nonlinear low-pass filter with ’bandwidth’ equal to /q ( t ) when q ( t ) > .High frequencies in the input flows are hence filtered out,making the existing model inaccurate for high frequency flows(fast transient), especially when the queue size is large. Notethat the actual buffer behavior does not have any filteringeffect, it just behaves as an ordered tank. On the other hand,the proposed model does not filter out any frequency banddue to its feedthrough structure. It however has a distortioneffect on the input flows due to the nonlinear structure andthe dynamically changing delay, i.e. change of frequency andamplitude. As a result, the queue-based model does not satisfyany conservation law since low-pass filters dissipate energy allover the frequency band, resulting in information loss at themodel level. This is in total contradiction with the actual queue behavior that just stores information and does not dissipateanything. Note however that the flow-based model intrinsicallysatisfies the conservation since the model is derived from it.Last, the proposed model incorporates naturally the queuingdelay in the expression, while for model (16) it is unclearwhich delay to consider, since the order of arrival of data isnot tracked.
2) Case Analysis:
To compare the models, let us considertwo input flows given by φ ( t ) = (1 + β ) c (1 + Sq( ωt )) / ,φ ( t ) = (1 + β ) c (1 − Sq( ωt )) / (17)where c > and ω > are the buffer output capacityand the oscillation of flows. The term β > is a tunableparameter related to the amplitude of the inputs flows andthe function Sq( ωt ) := sign(sin( ωt )) is a square function ofperiod T := 2 π/ω . Since the flows are in phase opposition,they lead to an alternation of packet types in the queue whilepacket populations remain roughly close to each other at anytime. Therefore, the output flows should reflect the actualcontent of the queues and the model should be able to keeptrack of the order of arrival of packets in the queue.The queue-based model (16) predicts the queues q i ( t ) = θ ( t ) q i (0) + Z t θ ( t − s ) φ i ( s ) ds, i = 1 , (18)with θ ( t ) = (cid:18) q (0) q (0) + βct (cid:19) /β from which it is quite difficultto foresee the shape of the output flows. We can however notethat the filtering effect of the convolution operator with kernel θ will deform the input flows, making then the output flowsnot square anymore.When the proposed flow-based model is considered, it isenough to compute the forward and backward delays, andapply the formula for output flows: τ ( t ) = βt + τ (0) ,f ( t ) = (1 + β ) t + τ (0) ,g ( t ) = 11 + β ( t − τ (0)) ,φ ( b + , t ) = c (1 + Sq( ωg ( t ))) / , = c (cid:20) (cid:18) ω β ( t − τ (0)) (cid:19)(cid:21) ,φ ( b + , t ) = c (cid:20) − Sq (cid:18) ω β ( t − τ (0)) (cid:19)(cid:21) . (19)In this case, the predicted output flows have the same shape asthe input flows but with a different frequency and amplitude.The proposed output flow model then exactly captures thecontent of the queue, that is the alternation of blocks of size N ( T ) of type 1 and type 2. It is also immediate to see thatthe number of packets N ( T ) = N i ( T ) , i = 1 , received bythe buffer over one period T is given by N ( T ) := Z T φ ( b + , s ) ds = π ( β + 1) cω . (20)By virtue of the information conservation law, the samenumber of packets is retrieved at the output over the period ( β + 1) T , enlarged due to the limiting output capacity c . It is quite convincing that the flow-based model yields a muchmore coherent picture for this example.
3) Simulation:
For simulation, we choose ω = 2 π (i.e. T = 1 s), β = 1 , c = 100 Mb/s and τ (0) = 0 . The outputflows obtained from the different models are depicted inFig. 4, where we observe the behaviors predicted by the abovecalculations. Notably, the output flows predicted by model(16) tend to slow-down (low pass-filtering effect), decreasealong time and seem to both tend to c/ , which is basicallyunrepresentative of the actual content and output of the queue.We can also notice the decrease of the bandwidth for thequeue-based model as long as the queue grows in size.For comparison with NS-2, which deals with packets ratherthan flows, we integrate (up to an additional constant) theoutput flows predicted by each model to obtain a numberof packets so that the comparison with NS-2 makes sense.The results are depicted in Fig. 5 where we can see thatthe proposed model yields exactly the same results as NS-2 while the queue-based model is unable to track the stair-likecurve returned by NS-2. It is also important to stress that theconsidered scenario is quite convenient for the queue-basedmodel since the input flows contain mostly constant parts (lowfrequency parts). A very fluctuating input flow would be verypenalizing and would make the low-pass filtering effect of thequeue-based model even more apparent. Fig. 4. Comparison of the outputflows predicted by model (13) (top)and model (16) (bottom). Plain: outputflow φ ( b + , t ) , dashed: input flow φ ( b − , t ) Time [sec] P a c k e t s Flow−based modelNS−20 2 4 6 8 10 1202468x 10 Time [sec] P a c k e t s Queue−based modelNS−2
Fig. 5. Comparison with NS-2 simu-lations of the total number of packetscounted at the inputs of the buffersdescribed by the proposed flow basedmodel (8)-(13) and the queue basedmodel (8)-(16).
VII. C
OMPLETE USER MODEL - W
INDOW CONTROL
The derivation of the user model is, partially, still an openquestion and a complete solution, based on the conservationlaw (3), is proposed in this section. We assume that theimplemented congestion control protocol admits a fluid-flowapproximation, for instance interpolating the discrete-timetrajectories of the real protocol [11], [20]. The conservationlaw is then applied over the circuit used by a user to obtainthe so-called ACK-clocking model [21], [22] relating flight-size, user sending rate and RTT together. Several expressionsfor RTT are provided according to the considered referencetime, similarly as for buffers. These results are finally mergedtogether in order to clarify the connection between the flight-size and the user sending rate. The last step concerns thederivation of formulas relating the above variables to usercongestion window size.
A. Protocol model
Here we assume that the congestion control algorithmcan be represented as a continuous-time (hybrid) dynamicalsystem. That is we have the following fact:
Fact 14.
There exist bounded functionals P i , W i and U i suchthat the trajectories ( z i ( t ) , w i ( t )) of the following continuous-time model defined over T u ˙ z i ( t ) = P i ( z i ( t ) , µ i ( t )) w i ( t ) = W i ( z i ( t ) , µ i ( t )) φ i ( u + i , t ) = U i ( w i ( t ) , φ i ( u − i , t )) (21) match the trajectories of the asynchronous protocol (definedon T i ) at points in T u ∩ T i . Above, z i , µ i , φ i ( u − i , · ) and φ i ( u + i , · ) are the state of the protocol, the congestion measure,the acknowledgment flow rate and the user sending flowrespectively. The window size, w i , is considered as the numberof outstanding packets to track and supposed to be (weakly)differentiable. A procedure to solve the above interpolation problem hasbeen first proposed in [11] for TCP and has been adapted toFAST-TCP in [20, Appendix C.].
B. The ACK-Clocking model
The ACK-clocking model [21], [22] is a very important con-sequence of the conservation-law. It characterizes the flight-size ̥ i ( C i , t ) := P C i ( t ) of the user u i at any time t ∈ T u over a circuit C i = h u + i , u − i i . The importance of the ACK-clocking model lies in the semantic; it adds to the modelby relating RTT, flow and flight-size together . With thisresult, it is possible to incorporate a number of important userproperties and mechanisms into the corresponding model. Result 15 (FS-ACK-Clocking) . The (FS)ACK clocking modelis given by ̥ i ( C i , t + RTT i { t } ) = Z C i φ ( θ, t + RTT i { t } ) dθ = t +RTT i { t } Z t φ i ( u + i , s ) ds (22) where RTT i { t } is the RTT of a packet sent at time t by user u i over the circuit C i . N Proof:
Since flight-size is a number of packets in a circuit,it can be cast as a spatial integration over the correspondingcircuit. Thus, according to the conservation-law, it is possibleto convert the spatial integration into a temporal one providedthat we can determine the integration bounds. To obtain them,we use the notion of RTT and suppose that a data sent byuser u i in the circuit C i at time t has a round-trip-time givenby RTT i { t } . This means that the packets sent between t and t + RTT i { t } are unacknowledged at t + RTT i { t } and thus The number of outstanding packets. Note however that in [22] thewindow size is considered instead of the flight-size, which is rather different.To make the distinction, the window-based ACK clocking model is denotedby W-ACK while the fligh-size-based one by FS-ACK. Equivalence holdswhen some conditions, such as ’flight-size ≥ window size’, are met. We willcome back on this in Section VII-E. still in the circuit. Hence, the corresponding temporal integralhas bounds t and t + RTT i { t } . C. Round-Trip-Time Models
The RTT consists of sum of a constant and a time-varyingpart, namely the propagation delays and the queuing delays,which have been characterized in Sections V and VI, respec-tively. By combining these results together, it is immediateto obtain a RTT based forward model on a forward circuitoperator , which considers the packet input time as a reference.To properly define it, let us consider a circuit C with N queues, indexed from 1 to N . The indices and N +1 are usedto denote the input and output nodes of the circuit respectively.Given a packet input time t , the corresponding packet outputtime t C and RTT obey the following formulas based on theforward circuit operator F C . Definition 16.
The forward circuit operator F C : T u → T u of circuit C assigned to any packet at input time t , an output-time t C ( t ) is given by t C ( t ) = F C ( t ) , F C = ∇ − N,N +1 ◦ f N ◦ ∇ − N − ,N ◦ f N − ◦ . . . ◦∇ − , ◦ f ◦ ∇ − , ◦ f ◦ ∇ − , (23) where ∇ i,j is the constant delay operator with delay corre-sponding to the propagation delay between i and j and ◦ thecomposition operator. The corresponding RTT expression isthen given by RTT { t } = t C ( t ) − t = ( F C − Id)( t ) (24) where Id is the identity operator. Formula (23) actually represents the alternation betweenconstant delay operators corresponding to transmission chan-nels delay (the ∇ i ’s) and the queuing delays correspondingto queues (the f i ’s). Example 18 illustrates this formula onthe topology depicted in Fig. 1. The same formulas, albeitexpressed in different ways, have been also obtained in [9,Section 3.3.5] and [22, equations (7d-7f)].Although immediate to obtain, these expressions suffer fromseveral drawbacks. First, operator F C is clearly noncausalsince it requires the knowledge of future information. Second,as pointed out in Section VI-B, the most convenient reference-time to use is the output time. In the user modeling problem, itcoincides with the reception time of acknowledgments and themoment when the user receives the RTT information. Hence,it seems to be more convenient to consider a backward circuitoperator based on the backward delay operator of SectionVI-B. The existence of such an operator is immediatelyinferred from the existence of the backward delay operator. Definition 17.
The backward circuit operator B C : T u T u ofcircuit C assigned to any packet at output time t C , an input-time t ( t c ) is given by B C := F − C ,t ( t C ) = B C ( t C ) , B C = ∇ , ◦ g ◦ ∇ , ◦ g ◦ ∇ , ◦ . . . ◦ g N − ◦ ∇ N − ,N ◦ g N ◦ ∇ N,N +1 . (25) Moreover, the corresponding RTT expression is given by
RTT { t } = t C − t ( t C ) = (Id − B C )( t C ) . (26)It is important to stress that the RTT formula given abovelooks noncausal since the RTT of a packet sent at time t is defined in terms of time t C > t . This is however not aproblem since the RTT information is only available, and thenused, by the user at time t C , when the ACK packet is actuallyreceived. What is important is the causality of the operator B C in order to ensure computability of the RTT at any time. Thisemphasizes once again the relevance of considering outputtimes as references. The example below illustrates the abovediscussions: Example 18.
In the single-user/single-buffer case, the aboveexpressions reduce to t C ( t ) = t + T f + T b + τ ( t + T f ) | {z } Future information t ( t C ) = g ( t C − T b ) | {z } Past information − T f RTT { t } = t C − t = t C − g ( t C − T b ) + T f = T b + T f + τ ( g ( t C − T b )) (27) where T f and T b are the forward and backward propagationdelays corresponding to the constant delay operators ∇ , and ∇ , . Using the backward expression of RTT and the relation F C i ◦ B C i = B C i ◦ F C i = Id , it easy to obtain the followingresult: Result 19.
The flight size obeys ̥ i ( C i , F C i ( t )) = F Ci ( t ) Z t φ ( u + i , s ) ds (28) ̥ i ( C i , t ) = t Z B Ci ( t ) φ ( u + i , s ) ds. (29) ▽ Proof:
This is an immediate consequence of theconservation-law (3) (through the ACK-clocking model) andthe above RTT models.Note that in [22], a model is obtained directly from the W-ACK-clocking applied directly to a selected topology. How-ever, the model is not modular itself since hand calculations areneeded to make it implementable that results unfortunately incomplexity very sensitive to the topology. Hence the objectiveof obtaining a metamodel is not attained. The reason is that theACK-clocking model is used in implicit form while our pro-posed method incorporates solutions of it, yielding an explicitformulation achieving the characteristics of a metamodel, i.e.modularity and scalability.
D. ACK-Clocking Dynamics and User Flow Computation
Since the flight-size expression (29) is exactly of the form(3), then Proposition 3 can be immediately applied to derivean explicit expression for the output flow of a given circuit,that is the flow of received acknowledgments:
Result 20.
Let us consider a circuit C i = h u + i , u − i i . Then, theACK-flow that user u i receives is given by φ ( u − i , t ) = B ′ C i ( t ) φ i ( u + i , B C i ( t )) . (30) ▽ Proof:
The key idea is to remark that ̥ i ( C i , t ) = N u + i ( t, B C i ( t )) . Hence, using Proposition 3 and noting thatthe ACK-flow corresponds to the flow leaving the circuit φ ( u − i , t ) , the result is obtained. Differentiability of B C i ( t ) is inferred from the differentiability of the backward delayoperators.Note that differentiation of (29) yields φ i ( u + i , t ) = ̥ ′ i ( C i , t ) + B ′ C i ( t ) φ i ( u + i , B C i ( t )) (31)meaning that to maintain a constant flight size, i.e. ̥ ′ i ( C i , t ) =0 , the user has to naturally send data at the same rate it receivesACK packets: this is exactly ACK-clocking but expressed ata flow level . By flow integration, we can easily recover the’packet-level ACK-clocking’. A similar expression is reportedin [18], but stated without proof and using the model in(16) to represent the buffer output flows. Once again theproposed methodology allows to provide strong mathematicalfoundations for some existing results. E. User Flow, Flight-Size and Congestion Window Size
We need to clarify the relation between a user congestionwindow size w i ( t ) and its sending rate φ ( u + i , t ) . First, recallthat the congestion window size corresponds to the desiredflight-size, while the flight-size is the current number ofpackets in transit. The window size is then a reference to trackwhile the flight size is the controlled output . The control input is the user sending rate.When the window size increases, the user can immediatelysend a burst of packets to equalize the flight- and window-sizes. In such a case, we can ideally assimilate them tobe equal (and so are their derivatives). The small delaycorresponding to the protocol reaction time can be easilyincorporated in the constant part of the RTT. The problem is,however, slightly more difficult when the congestion windowsize becomes smaller than the flight-size. In such a case, wecan not withdraw packets from the network and the only thingwe can do is to wait for the packets in the network to beacknowledged until, at some point, the flight size becomesequal to the window size. This basically means that therate of decrease of the flight-size is equal to the rate ofreceived acknowledgments (the rate at which data leave thenetwork). Therefore, while positive slope of the flight-size isideally unconstrained from above, the negative slope is lowerbounded. In [9], a rate-limiter is a posteriori added to the This is the main assumption in [22] justifying the use of the W-ACK-clock-ing model. model in order to constrain the negative slope of the flight size.This solution is however difficult to implement in the contextof [9] due to the time-varying nature of the slope lower boundand the lack of any ACK-flow model. Note also that in mostrecent works [18], [22], this problem is automatically excludedby considering that the flight-size is always smaller than thewindow size, and that the window size does not decrease‘too-much’. To the authors’ best knowledge no well-roundedsolution has been provided yet for the problem of congestionwindow size decrease. We provide below an explicit andcomplete solution to this problem, regardless of the rate of thevariation of congestion window size. This is achieved throughan augmentation of the user model and the consideration ofthe flow of ACK packets.PSfrag replacements User h u − , u + i µ ( t ) φ ( u − , t ) defined in (30) φ ( u + , t ) defined in (33) Fig. 6. User block
According to the above discussion, the flight-size must obey ̥ ′ i ( C i , t ) = (cid:26) ˙ w i ( t ) if T i ( t ) − φ ( u − i , t ) otherwise (32)where T i ( t ) is a condition which is true when no lower limiton the rate of variation of the flight-size is imposed and falseotherwise. Result 21.
The flight-size ̥ i ( C i , t ) satisfies (32) if the usersending rate is defined as φ ( u + i , t ) = (cid:26) ˙ w i ( t ) + φ ( u − i , t ) if T i ( t )0 otherwise (33) where T i ( t ) = (cid:0) [ π i ( t ) = 0] ∧ [ ˙ w i ( t ) + φ ( u − i , t ) ≥ (cid:1) and ˙ π i ( t ) = (cid:26) T i ( t )˙ w i ( t ) + φ ( u − i , t ) otherwise . (34) Moreover, this model is the simplest one. N Proof:
The ACK-buffer π i , taking nonpositive values,measures the number of ACK packets to retain in order tobalance the flight- and window-sizes. When the virtual bufferhas negative state, i.e. π i ( t ) < , the arriving ACK-packetshave to be retained until the state reaches 0. Once zero isreached, the user can start sending again until the window sizedecreases too fast, i.e. ˙ w i ( t ) < − φ ( u − i , t ) . Substitution of theuser sending rate defined by (33) and (34) in (31) yields theflight-size behavior (32). To see that the model is minimal, it isenough to remark that both conditions in T i ( t ) are necessary.In order to characterize the ACK-retaining mode, the ACK-buffer (34) has to be adjoined to the protocol model (21),resulting in an augmentation of the state of the user model.The protocol behavior depends on the measurements µ i ( κ t ) which are functions of the overall network state κ t ; this stateis discussed in more detail in Section VIII.We are now in a position to define user operators from (33). Definition 22.
The user operator U i ( w i ) : R + → R + mappingthe ACK-flow φ ( u − i , t ) to the sending flow φ ( u + i , t ) is givenby φ ( u + , t ) = U ( w ) φ ( u − , t ) (35) where U ( w ) = diag i {U i ( w i ) } and U i is given in (21). VIII. G
ENERAL N ETWORK MODEL
Modular and independent models for transmission channels,buffers and users have been developed in Sections V, VI andVII respectively. In this section we summarize the obtainedresults in a compact form involving dynamical systems andoperators, and properties of the model are discussed. Notably,correspondence of the proposed model with existing ones isemphasized/recalled.
A. General model
The general network model takes the form ˙ κ ( t ) = N ( κ t , φ ( u − , t ) , φ ( b − , t )) ̥ i ( C i , t ) = R t B Ci ( t ) φ ( u + i , s ) ds (36)with Φ( t ) = U ( w ) 00 0 0 B R ub R bu R bb Φ( t ) + D b δ ( t ) (37)where Φ( t ) = col( φ ( u + , t ) , φ ( b + , t ) , φ ( u − , t ) , φ ( b − , t )) and κ = col( τ, z, π ) are the flows and the state of the network,respectively. The hybrid models for user and queue dynamicsare described by the nonlinear (discontinuous) functional N obtained from equations (8), (9), (21) and (34). The notation κ t is here to emphasize that the evolution of the networkstate depends on past state values [23]. Note that adjoiningthe flight-size expression is needed to obtain a finite numberof equilibrium points. Indeed, since the user flow is computedfrom the derivative of the flight-size, the equilibrium infor-mation is lost and can only be recovered from the originalexpression of the flight-size. At equilibrium we indeed have ̥ ∗ i = w ∗ i = RTT ∗ i φ ∗ i where RTT ∗ i and φ ∗ i are equilibriumvalues for RTT and the sending flow of user u i , respectively.This model thus takes the form of a descriptor nonlinearhybrid positive time-delay system with state-dependent andconstant delays about which many theoretical questions areopen: well-posedness, existence of solutions, uniqueness ofsolutions, stability of solutions, etc. Note also that in thispaper, we have not discussed about delay-derivative constraintswhose violation may lead to severe well-posedness problems[24], such as nonuniqueness of solutions, existence of small-solutions, stopping solutions, etc. Some simple topologieshave been considered in [17] where it is shown that delay-derivative may exceed one under certain conditions. For themoment, it is unclear whether for arbitrary topologies andunder certain reasonable conditions, the delays perceived bythe users always have derivatives smaller than one. Thisproperty is very suitable for analysis since many theoreticaltools can only been applied when this condition is verified,e.g. Lyapunov-Krasovskii functionals [25] or certain integralquadratic constraints [26]. B. Model Approximations
The proposed framework includes explicit and seeminglyexact expressions for every quantity of interest, but this wasnot historically the case. The sending rate model has alwaysbeen a missing link in past formulations where ad-hoc modelswere considered. It has been recently shown in [9], [22] thatthese flow models are actually approximation of the W-ACK-clocking model, which is turn an approximation of the FS-ACK clocking model considered in this paper. We summarizethese remarks below for completeness.
1) Ratio flow model:
By making the approximation ̥ i ( t ) ≃ w i ( t ) in the FS-ACK-clocking model to get the W-ACK clocking model, we obtain w i ( t ) = Z t B Ci ( t ) φ ( u + i , s ) ds (38)and using the right-square rectangle rule we get the followingexpression for the sending rates φ ( u + i , t ) ≈ w i ( t ) T i + τ ( g i ( t )) (39)which is very similar to the ratio flow model for instanceconsidered in [11], [7], [8].
2) Joint flow model:
The joint flow model reuses the W-ACK-clocking model and by making a first order Taylorexpansion on the implicit expression w i ( t ) − Z F Ci ( t ) t φ ( u + i , s ) ds = 0 (40)we obtain w i ( t ) + ( T i + τ ( t + T fi ))( ˙ w i ( t ) − φ ( u + i , t )) ≈ (41)or equivalently φ ( u + i , t ) ≈ w i ( t ) T i + τ ( t + T fi ) + ˙ w i ( t ) (42)which is exactly the joint flow model considered in [9], [19],[21], [20]. Neglecting the derivative term yields the usual ratiomodel [11], [7], [8].
3) Static model:
The static link model assumes that sendingrates are proportional to the derivative of congestion windowsizes, making the relation between these sizes and queuingdelays static. This model can be obtained by further approxi-mating the ratio model or using linearization and a (0,0) Pad´eapproximation. In Section IX-B, a more general proof for thestatic-link model is provided and it suggests that the staticmodel has a much wider domain of validity, as experimentallyemphasized in [27].IX. T HE S INGLE -B UFFER /M ULTIPLE -U SER T OPOLOGYWITH D ELAY - BASED P ROTOCOLS
The purpose of this section is two-fold: exemplify themodeling technique on a simple topology and prove that whensome conditions on the topology are met, the proposed modelreduces to a model involving a static-link model [27]. Theproposed model hence allows to clarify the status of the static-link model [27] by providing, for the first time, a mathematicalproof for its domain of validity. To this aim, a single-buffer/multiple-user topology con-nected by lossless transmission channels is considered. Theforward and backward propagation delays of user u i aredenoted by T fi and T bi respectively. We propose to use thefollowing generic model of any delay-based congestion controlprotocol as the user model ˙ z i ( t ) = P i ( z i ( t ) , τ ( g i ( t ))) w i ( t ) = W i ( z i ( t ) , τ ( g i ( t ))) (43)where z i , w i ( t ) , T i = T fi + T bi and g i ( t ) = g ( t − T bi ) are thestate of the protocol, the congestion window size, the prop-agation delay and the backward delay operator respectively.The functions P i and W i are defined as in (21). A. Multiple-User/Single-Buffer Topology Model
The general model is given by (36) with (43) and ˙ τ ( t ) = (cid:26) c − σ ( t ) + δ ( t ) − C ( t )0 otherwise˙ π i ( t ) = (cid:26) T i ( t )˙ w i ( t ) + φ ( u − i , t ) otherwise . ̥ i ( t ) = R tg i ( t ) − T fi φ ( u + i , θ ) dθφ ( u + i , t ) = (cid:26) ˙ w i ( t ) + φ ( u − i , t ) if T i ( t )0 otherwise φ ( u − i , t ) = cφ ( u + i ,g i ( t ) − T fi ) cδ ( g i ( t ))+ P j φ ( u + j ,g i ( t ) − T fj ) if C ( t ) φ ( u + i , t − T bi − T fi ) otherwise σ ( t ) = P Ni =1 φ ( u + i , t − T fi ) (44) where δ ( t ) denotes the normalized cross-traffic δ ( t ) ∈ [0 , .The topology of this model is completely describedby (37) with the operators B , U = diag Ni =1 {U i } , R ub = (cid:2) ∇ T b . . . ∇ T bN (cid:3) T , R bb = 0 and R bu = h ∇ T f . . . ∇ T fN i where ∇ d is the constant delay operatorwith delay d > . B. Homogeneous Delays and No-Cross Traffic - The Static-Link Model
As stated in Section VIII-B3, the static-flow model can beobtained using various approximations, which suggest that thestatic-model is only valid locally. This however contradicts theresults reported in [27] where it is emphasized that the staticmodel may yield quite precise results over a wide domain.Note also that the static-link model has been invalidated inmany scenarios, notably some involving very heterogeneousdelays or cross-traffic, see e.g. [9] and examples of Section X.In the following, we show that the static model can be exactwhen some conditions on the network topology are met .Assuming that the propagation delays are homogeneous, i.e. T fi = T f , T bi = T b , i = 1 , . . . , N , and that there is no cross- traffic, i.e. δ ≡ , the model in (44) reduces to ˙ τ ( t ) = (cid:26) c − σ ( t ) − C ( t )0 otherwise˙ π i ( t ) = (cid:26) T i ( t )˙ w i ( t ) + φ ( u − i , t ) otherwise . ̥ i ( t ) = R tg b ( t ) − T f φ ( u + i , θ ) dθφ ( u + i , t ) = (cid:26) ˙ w i ( t ) + φ ( u − i , t ) if T i ( t )0 otherwise φ ( u − i , t ) = ( cφ ( u + i ,g b ( t ) − T f ) P j φ ( u + j ,g b ( t ) − T f ) if C ( t ) φ ( u + i , t − T b − T f ) otherwise σ ( t ) = P Ni =1 φ ( u + i , t − T f ) g b ( t ) = g ( t − T b ) . (45)Assuming further that the buffer is always congested (i.e. C ( t ) holds true for all t ) and all users are active (i.e. the T i ( t ) ’s areall true) we obtain ˙ τ ( t ) = c − X i ˙ w i ( t − T f ) (46)after the substitution of sending flows in queue dynamics.Integrating the above equation from to t we obtain τ ( t ) = c − X i w i ( t − T f ) − T (47)where we assumed τ (0) = 0 and w i (0) = 0 , i = 1 , . . . , N .The additional constant term − T can be determined suchthat the above equation satisfies the equilibrium equation P i w ∗ i ( T + τ ∗ ) = c . Equation (47) is exactly the static model,showing then its exactness for the single-buffer/multiple-usertopology with homogeneous propagation delays and no cross-traffic. This result might be generalizable to the case ofchained buffers and multiple users. The exactness of the staticmodel over more complex topologies is an open question. Thecase of single-buffer with constant cross-traffic may also beanalyzable.Thus, according to the model proposed in (44), the static-link model is exact in the single-link topology whenever • the buffers are permanently congested, i.e. C ( t ) holds truefor all t ≥ ; • the propagation delays are homogeneous, i.e. T fi = T f , T bi = T b , i = 1 , . . . , N ; • the cross-traffic is absent, i.e. δ ≡ ; • the users are not in ACK-retaining mode, i.e. T i ( t ) holdstrue for all i = 1 , . . . , N .Compared to the justification of this model in [22], theproof developed above is much more insightful since no modelapproximation is made, only assumptions on the networktopology. This shows that the static-link model has an ap-plication domain which is much wider than the ratio-link andthe joint-link models, when the conditions on the topologyare met. It is indeed valid in the nonlinear setting and it doesnot result from any approximation, just assumptions on thetopology.This also shows that the proposed metamodel is able toprovide theoretical justifications of a simpler model. Thissupplies a way for deriving proofs for validity domain ofmodels. C. Homogeneous Delays and Cross-Traffic
When cross-traffic is added to the problem, the overall pic-ture changes. The cross-traffic acts as a bandwidth limiter bothin the networking and control terminology. Indeed, a nonzero δ ( t ) reduces the maximal output capacity c , creating then sortof ‘varying-output-capacity’ c (1 − δ ( t )) which reduces thebandwidth perceived by users. Result 23.
In the congested mode, the queue model writes ˙ τ ( t ) = c − P i ˙ w i ( t − T f ) + δ ( t ) − ϕ ( t ) ϕ ( t ) = cδ ( g bf ( t )) cδ ( g bf ( t )) + P j φ j ( u + j , g bf ( t ) − T f ) (48) where g bf ( t ) = g ( t − T b − T f ) and ϕ ( t ) is the output flowat time t corresponding to the cross-traffic. The term ϕ ( t ) isresponsible for the bandwidth reduction.Proof: Since the buffer is always congested and the usersare not in ACK-retaining mode, we have φ i ( u + i , t ) = ˙ w i ( t ) + φ i ( u − i , t ) (49)and φ i ( u − i , t ) = cφ i ( u + i , g b ( t ) − T f ) cδ ( g b ( t )) + P j φ j ( u + j , g b ( t ) − T f ) . (50)Substituting the above expressions in the queue model andnoting that P j φ j ( u − j , t − T f ) + ϕ ( t ) = c yields the result.X. M ODEL V ALIDATION
We consider the scenarios given in [9], [22] to validatethe proposed model. The results obtained via NS-2 havebeen slightly shifted in time so that the congestion windowvariation times match. Unlike [22], the results are not shiftedin amplitude and this causes small discrepancies. If, however,the NS-2 results were shifted vertically so that they matchinitial equilibrium values, then the curves would match almostperfectly.
A. Single-Buffer/Multiple-Users
PSfrag replacements b − b + u − u +1 u − u +2 Fig. 7. Topology of scenarios 1 & 2
In this section, we consider the interconnection of two usersthrough a single resource, as depicted in Fig. 7. The bottleneckhas capacity c = 100 Mb/s and the packet size includingheaders is 1590 bytes. The following scenarios from [9], [22]are considered: • Scenario 1: the congestion window sizes are initially w = 50 and w = 550 packets, at 3s w is increased to150 packets. The propagation delays are T = 3 . ms and T = 117 ms for users 1 and 2 respectively; see Fig. 8. • Scenario 2: the congestion window sizes are initially w = 210 and w = 750 packets, at 5s w is increasedto 300 packets. The propagation delays are T = 10 msand T = 90 ms for users 1 and 2 respectively; see Fig.9. Time [sec] Q u e u e s i ze [ s ec ] Proposed modelRatio link modelStatic link modelJoint link modelNS−2
Fig. 8. Scenario 1: Queue size
Time [sec] Q u e u e s i ze [ s ec ] Proposed modelRatio link modelStatic link modelJoint link modelNS−2
Fig. 9. Scenario 2: Queue size
We can see that our results fit well with the ones obtainedby packet level (NS-2) simulations. Yet, this is not the casefor the ratio-link, static-link, and the joint-link models whenthe transient-state is considered. The obtained results by theproposed model are identical to the results given in [9],[22] and obtained using the W-ACK-clocking model. This isexpected since the W-ACK clocking is an approximation ofthe FS-ACK-clocking model defended in this paper. Note alsothat the approximation condition related to the window sizeincrease is satisfied here.
B. Multiple-Buffers/Multiple-Users
PSfrag replacements b − b +1 b − b +2 u − u +1 u − u +2 u − u +3 δ − δ + Fig. 10. Topology of scenarios 3 to 6 ( δ represents cross-traffic I/O nodes). Here, we consider the case of two buffers interconnectedin series (see Fig. 10) with capacities c = 72 Mb/s and c =180 Mb/s. The packet size including headers is bytes.The link propagation delays are ms for link 1 and msfor link 2. The total round-trip propagation delays are T =120 ms, T = 80 ms and T = 40 ms for sources 1, 2 and 3respectively. Initially, the congestion window sizes are w =1600 packets, w = 1200 packets and w = 5 packets. Thefollowing scenarios from [9], [22] are considered: • Scenario 3: No cross-traffic and the congestion window w is increased by 200 packets at 10s; see Fig. 11. • Scenario 4: No cross-traffic and the congestion window w is increased by 200 packets at 10s; see Fig. 12. Time [sec] Q u e u e s i ze [ s ec ] Time [sec] Q u e u e s i ze [ s ec ] Proposed ModelNS−2
Fig. 11. Scenario 3: queue 1 (top)and queue 2 (bottom)
Time [sec] Q u e u e s i ze [ s ec ] Time [sec] Q u e u e s i ze [ s ec ] Proposed ModelNS−2
Fig. 12. Scenario 4: queue 1 (top)and queue 2 (bottom)
The proposed model is again able to capture the networkbehavior well and it retrieves the previous results reported in[9], [22]. This is again due to the equivalence between theACK-clocking models in this case.We introduce now a constant cross-traffic x c = c / on thefirst link. Initially , we set w = 1200 , w = 1600 , w = 5 and we consider the following scenarios: • Scenario 5: The congestion window w is increased by200 packets at 10s; see Fig. 13. • Scenario 6: The congestion window w is increased by200 packets at 10s; see Fig. 14. Time [sec] Q u e u e [ s ec ] Time [sec] Q u e u e [ s ec ] Proposed ModelNS−2
Fig. 13. Scenario 5: queue 1 (top)and queue 2 (bottom)
Time [sec] Q u e u e [ s ec ] Time [sec] Q u e u e [ s ec ] Proposed ModelNS−2
Fig. 14. Scenario 6: queue 1 (top)and queue 2 (bottom)
The obtained results are identical to the results obtained bythe the NS-2 simulations. Notice the reaction time between themoment at which the congestion window size is increased andthe moment at which the second queue sees the flow variation.This illustrates that the model captures well the communi-cation path and the order of elements (spatial and temporaltopology). These characteristics are not directly visible in thesimulation results given in [22] since the curve steps seem tohave been aligned on the same temporal cursor.Despite of results equivalence, the proposed metamodelenjoys interesting properties such as modularity and scala-bility, that the model reported in [9], [22] lacks. This is animportant improvement over previous models that were notable to cumulate accuracy, scalability, modularity and otherinteresting properties. This will be discussed in more detail inthe next Section.
C. Decreasing the Congestion Window Size
The models proposed in [18], [22] do not capture suddendecreases in the congestion window size that would cause This scenario is actually identical to the one in [22, Section III.B.3], theinitial values for congestion window sizes given in [22] are incorrect. the buffer to empty or become smaller than the actual flight-size, that is, smaller than the number of packets in flight. Theproposed model does capture these phenomena since 1) theFS-ACK-clocking model derived from the conservation lawinvolves the flight-size rather than the congestion window size,unlike in [22]; and 2) the user model implements an ACK-buffer to count the number of packets to remove from thenetwork before starting to send again. Note that the derivationof the user model including the ACK-buffer has been madepossible due to the availability of an explicit expression forthe flow of acknowledgments (30). This makes it computablethrough an explicit solution for the queuing delay and thebuffer output flows [17], [28]. In [9], the decreasing ofcongestion window size is handled by adding a rate limiterto constrain the (negative) slope of the queue size. This ratelimiter is however rather difficult to characterize due to thetime-varying nature of the lower-bound on the slope whichdepends on the received rate of acknowledgment and thenetwork state, the former being unfortunately unavailable inthe framework of the thesis [9].Let us consider the single-user/single-buffer case wherethe total propagation delay is T = 150 ms, the packet sizeincluding headers is bytes and the initial value of thecongestion window size is w = 500 . A t = 5 seconds, thecongestion window size is halved. We consider the followingscenarios • Scenario 7: c = 12 . Mb/s and no cross-traffic; see Fig.15. • Scenario 8: c = 25 Mb/s and half capacity used by cross-traffic; see Fig. 16.
Time [sec] Q u e u e s i ze [ s ec ] Proposed modelJoint & Ratio link modelStatic link modelNS−24.8 5 5.2 5.4 5.6 5.8 6 6.2 6.4 6.6 6.8−300−200−1000100
Time [sec] A C K - bu ff e r π [ P k t ] Fig. 15. Scenario 7: Queue size (top)ACK buffer (bottom)
Time [sec] Q u e u e s i ze [ s ec ] Proposed modelJoint & Ratio link modelStatic link modelNS−24.8 5 5.2 5.4 5.6 5.8 6 6.2 6.4 6.6 6.8−300−200−1000100
Time [sec] A C K - bu ff e r π [ P k t ] Fig. 16. Scenario 8: Queue size (top)ACK buffer (bottom)
We can see that we obtain exactly the same results as NS-2 simulations (and the rate-limiter model reported in [9]).As desired, the ACK-buffer measures (counts) the number ofpackets to remove before starting to send again.XI. R
ELATED W ORK
Despite of being unorthodox, it was to the authors’ pointof view to discuss the related works after presenting theproposed metamodel. Many congestion models have beenproposed in the literature with different formalisms: time-domains, protocols, network topologies and other hypotheses.It is thus quite difficult to compare them directly and give athorough discussion. Yet, we have identified some importantcharacteristics which are summarized in Tables I, II and III.Table I collects global characteristics of a network model such as the time-domain property to indicate whether themodel is in discrete ( DT ) or continuous ( CT ) time, or the modularity property to indicate whether it is modular or not.With delay we indicate that the model considers it either asconstant ( Cst ), time-varying ( TV ), state-dependent ( SD ), orasynchronous ( Async ) discrete-time system whose asynchrony(incorporating delays) depends on the state of the system.
Spatial and temporal topologies denote whether the modelshare the same spatial and time topologies with the actualnetwork, respectively.
Generic indicates the ability of themodel to describe the network for different protocols whereas rate model denotes from which formula the user sending rateis computed. The ratio flow model [11], [14], [7], [15], [8]is given by quotient of the congestion window size and theRTT. The static flow model [27] assumes that the flow isproportional to the derivative of the congestion window sizeand the joint flow model [9], [19], [21], [20] assumes thatthe flow is given by the sum of the ratio-flow model and thecongestion window size derivative.Tables II and III examine the important subparts of themodel, namely the user and buffer models, respectively. It isalso important to mention that none of them has the structureof a metamodel having the precision of the considered one.In Table II, homogeneous and heterogeneous delays denotehow well a model captures the case of homogeneous orheterogeneous propagation delays, whereas cross and bursty traffic denote how well a model captures the presence of crosstraffic and bursty traffic [29], respectively.
Exact indicates thatthe transient-state behavior of a model matches well to theone observed in packet level simulations.
Too fast and tooslow mean that a model converges to steady-state faster orslower, respectively, compared to what is observed in packetlevel simulations.
Faster states a relativity faster convergence,yet not as much as observed when it is too fast . In TableIII, output flows indicates whether it is defined as aggregate ,meaning all input flows are mixed, or split , where the bufferacts as a square MIMO system mapping a given input flow to agiven output flow.
FIFO characterization denotes whether themodel captures the actual content of the queue and the FIFObehavior. With queuing delay model we indicate whether itseffect on input flows are clearly defined.
Frequency filteringeffect denotes whether the model of buffer have a filteringeffect on the input flows to the output flows.
1) Table I: In this model, while the delay is denoted as a function oftime, it is implicitly defined from the state, without further investigation. Anexact delay characterization as a function of the state has been obtained in [17]. The state-dependent delay is implicitly characterized by the ACK-clockingformula and the RTT expression. The modularity of the model could havebeen developed but was not. Modular but not able to represent any topology,essentially due to lack of any output flow model for buffers. This modelingtechnique can be applied to any type of topology, however hand calculations,which result in poor scalability, are necessary. The notion of flow is notdefined in a discrete-time model. The discrete-time model is derived froma continuous-time model using the (FS)ACK-clocking model. The flow isimplicitly defined as the solution of the (W)ACK-clocking model. The flowis computed by solving the (FS)ACK-clocking model explicitly.
2) Table II: This model is the one introduced in [28] and alsoconsidered in the current paper. In the single-buffer case the model is exact. Network Models [30] [7] [11] [31] [27] [9] (DAE) [32] [15] [33] [22] This paper
Characteristics
Time-domain DT CT CT CT CT DT CT Hybrid DT CT HybridDelay Cst Cst TV/SD Cst Cst Async. Cst Cst Async. SD . SDModular Almost Yes No Yes Yes No Yes Almost No Almost YesSpatial topology Yes No Yes No Yes Yes Yes No Yes Yes YesTemporal topology Yes No Yes No Yes Yes Yes Yes Yes Yes YesGeneric Yes No No No No No No No Yes Yes YesRate model No Ratio Ratio Ratio Static (FS)ACK Joint Ratio No (W)ACK (FS)ACK TABLE IM
AIN CHARACTERISTICS OF SOME EXISTING MODELS IN THE LITERATURE . User sending flow models
Static Ratio Joint (W)ACK (FS)ACK+ACK-Buffer Congestion window Characteristics
Increase Homogeneous delays Exact/Too fast Too slow Faster Exact ExactHeterogeneous delays Too fast Too slow Faster Exact ExactCross-traffic Too fast Too slow Faster Exact ExactBursty-traffic Exact/Too fast Too slow Faster Exact ExactDecrease Homogeneous delays Too fast Too slow Too slow Too fast ExactHeterogeneous delays Too fast Too slow Too slow Too fast ExactCross-traffic Too fast Too slow Too slow Too fast Exact
TABLE IIC
OMPARISON OF DIFFERENT USER FLOW MODELS WITH RESPECT TO THE ACCURACY OF ESTIMATED QUEUE SIZES . Buffer descriptions
Aggregate model (8)-(9) Pseudo-queue model [15], [18] Flow model [13], [16], [17]
Characteristics
Output flows Aggregate Split SplitFIFO characterization Lost No Yes Queuing delay model Lost No Yes Frequency filtering effect All-pass/undef. All-pass/Low-pass All-pass TABLE IIIC
OMPARISONS BETWEEN DIFFERENT BUFFER DESCRIPTIONS .It is unclear whether this is also true for the multiple buffer case. In most cases,the model is too fast. Accurate modeling of discontinuity/high slope of thequeue when burst of data arrives at the queue input. The model is usuallytoo fast. It might, however, be possible to refine it to account for constantcross-traffic [19]. Unable to characterize the high slope of the queue due tothe low-pass filtering effect of the resulting queue model, see Section VI-D. Exact in the case of homogeneous delays and single-buffer topology sincethe relation is static and it has an infinite bandwidth; see Section IX-B. Toofast otherwise. Larger bandwidth than the ratio model but still limited sincethe bandwidth reduces as the queue size grows. These models may withdrawpackets from the network by injecting negative flows.
3) Table III: The information is lost since the output flows areaggregate. The output flows are insensitive to content swapping. Theoutput flows are sensitive to any swap of information in the queue. Theexact queuing delay is actually difficult to assign to any output flow due tothe structure of the model for the output flows involving queues. Undefineddue to the aggregate formalism. All-pass when the sum of the input-flowsdoes not exceed the maximal output capacity, otherwise the filtering effect isnot really defined due to the aggregate formalism. All-pass when the sum ofthe input-flows does not exceed the maximal output capacity, otherwise actsas a low-pass filter with bandwidth inversely proportional to the queue size. This is due to the direct-feedthrough structure of the model. The delay andnonlinear formula for the output flows only have a compressing/expandingeffect on time and amplitude.
XII. C
ONCLUSION
This paper presents a modular fluid-flow network conges-tion control model to analyze communication networks witharbitrary topology. This modular metamodel is introduced bymathematically modeling network elements such as queues,users, and transmission channels, and network performanceindicators such as sending/acknowledgement rates and de-lays. It is composed of building blocks that implement localmechanisms, some of which being ignored/unmodeled bysome existing models in the literature. It is shown that theproposed model allows to recover existing models and bringsa formal proof for their validity/invalidity as well as for theirdomain of validity. We present a novel classification of thepreviously proposed models in the literature and we showthat the existing models are often not capable of capturingthe transient behavior of the network precisely. Numericalresults obtained from packet-level simulations demonstrate theaccuracy of the proposed model. We plan to extend our workwith modeling of data loss, such as packet drops, and thetime-out mechanism at the user level.XIII. A
CKNOWLEDGMENT
This work is dedicated to the memory of our colleague Prof.Ulf T. J¨onsson, who unfortunately passed away before he couldsee it completed. R EFERENCES[1] V. Jacobson, “Congestion avoidance and control,”
SIGCOMM Comput.Commun. Rev. , vol. 18, no. 4, pp. 314–329, 1988.[2] R. Srikant,
The Mathematics of Internet Congestion Control . Boston,USA: Birkh¨auser, 2004.[3] S. Low, F. Paganini, and J. C. Doyle, “Internet congestion control,”
IEEEControl Systems Magazine , pp. 28–43, February 2002.[4] D. Mitra, “Stochastic theory of a fluid model of producers and consumerscoupled by a buffer,”
Advances in Applied Probability , vol. 20(3), pp.646–676, 1988.[5] R. Johari and D. Tan, “End-to-end congestion control for the internet:delay and stability,” Statistical Laboratory, University of Cambridge,Technical report, 2000.[6] C. Hollot, V. Misra, D. Towsley, and W. B. Gong, “A control theoreticanalysis of RED,” in , Tel-Aviv, Israel, 2001, pp. 1510–1519.[7] G. Vinnicombe, “On the stability of networks operating TCP-likecongestion control,” in ,2002, pp. 217–222.[8] F. Pagaganini, J. C. Doyle, and S. Low, “A control theoretical look atinternet congestion control,” in
Multidisciplinary Research in Control ,ser. Lecture Notes in Control and Information Sciences, L. Giarr´e andB. Bamieh, Eds. Springer Berlin / Heidelberg, 2003, vol. 289, pp.17–31.[9] K. Jacobsson, “Dynamic modeling of internetcongestion control,” Ph.D. dissertation, KTH Schoolof Electrical Engineering, 2008. [Online]. Available:https://eeweb01.ee.kth.se/upload/publications/reports/2008/TRITA-EE 2008 020.pdf[10] D. V. Lindley, “The theory of queues with a single server,”
MathematicalProceedings of the Cambridge Philosophical Society , vol. 48, pp. 277–289, 1952.[11] V. Misra, W. Gong, and D. Towsley, “Fluid-based analysis of a networkof AQM routers supporting TCP flows with an application to RED,” in
ACM SIGCOMM’00, Stockholm, Sweden , 2000.[12] G. Vinnicombe, “On the stability of end-to-end congestion controlfor the internet,” University of Cambridge, Technical report CUED/F-INFENG/TR 398, 2000.[13] C. Ohta and F. Ishizaki, “Output processes of shaper and switchwith self-similar traffic in ATM networks,”
IEICE Transactions onCommunications , vol. E81-B(10), pp. 1936–1940, 1998.[14] J. Hespanha, S. Bohacek, K. Obraczka, and J. Lee, “Hybrid modelingof TCP congestion control,” in
Hybrid Systems: Computation andControl , ser. Lecture Notes in Computer Science, M. Di Benedetto andA. Sangiovanni-Vincentelli, Eds. Springer Berlin / Heidelberg, 2001,vol. 2034, pp. 291–304.[15] D. F¨arnqvist, K. Strandemar, K. H. Johansson, and J. P. Hespanha,“Hybrid modeling of communication networks using modelica,” in
Proc.of the Radiovetenskap och Kommunikation (RVK) , 2002.[16] Y. Liu, F. L. Presti, V. Misra, D. F. Towsley, and Y. Gu, “Scalable fluidmodels and simulations for large-scale ip networks,”
ACM Trans. Model.Comput. Simul. , vol. 14(3), pp. 305–324, 2004.[17] C. Briat, H. Hjalmarsson, K. H. Johansson, G. Karlsson, U. T. J¨onsson,and H. Sandberg, “Nonlinear state-dependent delay modeling and sta-bility analysis of internet congestion control,” in , 2010, pp. 1484–1491.[18] Y. Zhang, Y. Xiang, S. Liu, and D. Loguinov, “Queuing dynamicsand single-link stability of delay-based window congestion control,”
Computer Networks , vol. 54, pp. 1543–1553, 2010.[19] N. M¨oller, “Window-based congestion control,” Doctoralthesis, KTH, Stockholm, Sweden, 2008. [Online]. Available:https://eeweb01.ee.kth.se/upload/publications/reports/2008/TRITA-EE 2008 001.pdf[20] K. Jacobsson, L. Andrew, A. Tang, S. Low, and H. Hjalmarsson, “Animproved link model for window flow control and its application toFAST TCP,”
IEEE Transactions on Automatic Control , vol. 54(3), pp.551–564, 2009.[21] K. Jacobsson, L. Andrew, A. Tang, K. H. Johansson, H. Hjalmarsson,and S. Low, “ACK-clock dynamics: Modeling the interaction betweenACK-clock and network,” in , Phoenix, Arizona, USA, 2008, pp. 181–185.[22] A. Tang, L. L. H. Andrew, K. Jacobsson, K. H. Johansson, H. Hjal-marsson, and S. H. Low, “Queue dynamics with window flow control,”
IEEE/ACM Transactions on Networking , vol. 18(5), pp. 1422–1435,2010.[23] J. K.Hale and S. M. V. Lunel,
Introduction to Functional DifferentialEquations
Stability of Time-Delay Systems .Birkh¨auser, 2003.[26] C. Kao and A. Rantzer, “Stability analysis of systems with uncertaintime-varying delays,”
Automatica , vol. 43, pp. 959–970, 2007.[27] J. Wang, D. X. Wei, and S. H. Low, “Modelling and stability ofFAST TCP,” in , 2005, pp. 938–948.[28] C. Briat, H. Hjalmarsson, K. H. Johansson, G. Karlsson, U. T. J¨onsson,H. Sandberg, and E. A. Yavuz, “An axiomatic fluid-flow model forcongestion control analysis,” in , Orlando, Florida, USA, 2011, pp. 3122–3129.[29] H. Jiang and C. Dovrolis, “Why is the internet traffic bursty in short timescales?” in
Proceedings of the 2005 ACM SIGMETRICS InternationalConference on Measurement and Modeling of Computer Systems , ser.SIGMETRICS ’05, 2005, pp. 241–252.[30] R. Johari and D. K. Tan, “End-to-end congestion control for the internet -delays and stability,”
IEEE/ACM Transactions on Networking , vol. 19(6),pp. 818–832, 2001.[31] F. Paganini, Z. Wang, J. C. Doyle, and S. Low, “Congestion controlfor high performance, stability, and fairness in general networks,”
IEEE/ACM Transactions on Networking , vol. 13, no. 1, pp. 43–56, 2005.[32] A. Tang, K. Jacobsson, L. L. H. Andrew, and S. H. Low, “An accuratelink model and its application to stability analysis of FAST TCP,”in ,Anchorage, Alaska, USA, 2007, pp. 161–169.[33] R. Shorten, F. Wirth, and D. Leith, “A positive systems model ofTCP-like congestion control: asymptotic results,”
IEEE Transactions onNetworking , vol. 14(3), pp. 616–629, 2006. r X i v : . [ c s . N I] M a r Figure 4: Comparison of the output flows predicted by the proposed flow-basedmodel (top) and the pseudo-queue model (bottom). Plain: output flow φ ( b + , t ),dashed: input flow φ ( b − , t ) 1 Time [sec] P a c k e t s Flow−based modelNS−20 2 4 6 8 10 1202468 x 10 Time [sec] P a c k e t s Queue−based modelNS−2
Figure 5: Comparison with NS-2 simulations of the total number of packetscounted at the inputs of the buffers described by the proposed flow-based modeland the queue-based model. 2 .8 3 3.2 3.4 3.6 3.8 4 4.20.010.0150.020.0250.030.0350.04
Time [sec] Q u e u e s i ze [ s ec ] Proposed modelRatio link modelStatic link modelJoint link modelNS−2
Figure 8: Scenario 1: Queue size
Time [sec] Q u e u e s i ze [ s ec ] Proposed modelRatio link modelStatic link modelJoint link modelNS−2
Figure 9: Scenario 2: Queue size3 .5 10 10.5 11 11.5 12 12.5 130.080.090.10.110.120.13
Time [sec] Q u e u e s i ze [ s ec ] Time [sec] Q u e u e s i ze [ s ec ] Proposed ModelNS−2
Figure 11: Scenario 3: queue 1 (top) and queue 2 (bottom)
Time [sec] Q u e u e s i ze [ s ec ] Time [sec] Q u e u e s i ze [ s ec ] Proposed ModelNS−2
Figure 12: Scenario 4: queue 1 (top) and queue 2 (bottom)4 .5 10 10.5 11 11.5 12 12.5 130.20.220.240.260.280.3
Time [sec] Q u e u e [ s ec ] Time [sec] Q u e u e [ s ec ] Proposed ModelNS−2
Figure 13: Scenario 5: queue 1 (top) and queue 2 (bottom)5 .5 10 10.5 11 11.5 12 12.5 130.20.2050.210.2150.220.225
Time [sec] Q u e u e [ s ec ] Time [sec] Q u e u e [ s ec ] Proposed ModelNS−2
Figure 14: Scenario 6: queue 1 (top) and queue 2 (bottom)6 .8 5 5.2 5.4 5.6 5.8 6 6.2 6.4 6.6 6.800.050.10.150.2
Time [sec] Q u e u e s i ze [ s ec ] Proposed modelJoint & Ratio link modelStatic link modelNS−24.8 5 5.2 5.4 5.6 5.8 6 6.2 6.4 6.6 6.8−300−200−1000100
Time [sec] A C K - bu ff e r π [ P k t ] Figure 15: Scenario 7: Queue size (top) ACK buffer (bottom)
Time [sec] Q u e u e s i ze [ s ec ] Proposed modelJoint & Ratio link modelStatic link modelNS−24.8 5 5.2 5.4 5.6 5.8 6 6.2 6.4 6.6 6.8−300−200−1000100
Time [sec] A C K - bu ff e r π [ P k t ]]