WO2010145982A1 - Method and apparatus for congestion control - Google Patents
Method and apparatus for congestion control Download PDFInfo
- Publication number
- WO2010145982A1 WO2010145982A1 PCT/EP2010/058120 EP2010058120W WO2010145982A1 WO 2010145982 A1 WO2010145982 A1 WO 2010145982A1 EP 2010058120 W EP2010058120 W EP 2010058120W WO 2010145982 A1 WO2010145982 A1 WO 2010145982A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- node
- action table
- layers
- control device
- congestion control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/127—Avoiding congestion; Recovering from congestion by using congestion prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/19—Flow control; Congestion control at layers above the network layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/20—Traffic policing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2416—Real-time traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/38—Flow control; Congestion control by adapting coding or compression rate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/72—Admission control; Resource allocation using reservation actions during connection setup
- H04L47/724—Admission control; Resource allocation using reservation actions during connection setup at intermediate nodes, e.g. resource reservation protocol [RSVP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/78—Architectures of resource allocation
- H04L47/781—Centralised allocation of resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/80—Actions related to the user profile or the type of traffic
- H04L47/801—Real time traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/82—Miscellaneous aspects
- H04L47/822—Collecting or measuring resource availability data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/83—Admission control; Resource allocation based on usage prediction
Definitions
- the present invention relates to a method and apparatus for congestion control.
- congestion control is usually performed via Resource Admission Control.
- Such a system checks, either by monitoring the number of ongoing flows of which the characteristics are assumed to be known, or by monitoring the (momentary) bit rate of the aggregate of flows directly, whether or not the new flow of which the characteristics are assumed to be known, will still fit on all the links the flow will travel through. If this check gives a positive answer, the flow is accepted, otherwise the flow is rejected.
- This decision is enforced either at the application level, by not setting up the session, or by a policy enforcer at the edge of the network which blocks the traffic stemming from the rejected flow even if the session would have been set up. In such an architecture the user gets either the video in full quality or is denied the service.
- An alternative way of congestion control is via scalable codecs. Therein each multimedia flow is encoded in layers of decreasing importance.
- a method according to the invention includes the steps of monitoring the amount of incoming flows to this node such that, based upon this amount of incoming flows and on a current number of accepted layers, a next number of accepted layers for entry into said node is determined by consultation of an action table .
- this action table is dynamically adjusted based on observed traffic towards said node.
- the action table may be centrally calculated by a network congestion controller and further communicated to said node, or can be stored locally within the node itself.
- the action table can be updated locally within a node or can be centrally updated by a network congestion controller.
- a communication, between different nodes implementing said method, of the resulting action as determined by consultation of said action table can be performed, such that, in case conflicting actions arise, a further heuristic control for adapting the next number of accepted layers, per node, is executed within said nodes. In this way potentially conflicting situations arising between neighbouring nodes can be solved.
- the present invention relates as well to a congestion control device for implementing the present method and to a network congestion controller for communicating action tables and their updates to certain embodiments of congestion control devices.
- the term 'coupled' used in the claims, should not be interpreted as being limitative to direct connections only.
- the scope of the expression 'a device A coupled to a device B' should not be limited to devices or systems wherein an output of device A is directly connected to an input of device B. It means that there exists a path between an output of A and an input of B which may be a path including other devices or means.
- the term 'comprising' used in the claims, should not be interpreted as being limitative to the means listed thereafter.
- the scope of the expression 'a device comprising means A and B' should not be limited to devices consisting only of components A and B. It means that with respect to the present invention, the only relevant components of the device are A and B.
- Figure 1 shows a high-level architecture for realizing an embodiment of the method
- Fig. 2 shows another high-level architecture for realizing another embodiment of the method
- Fig. 3 shows the principle of scalable layers
- Fig. 4 shows a schematic embodiment of a congestion control device in an embodiment of a node implementation
- Fig. 5a and b show examples of a decision table to be used in some embodiments of congestion control devices
- Fig. 6 shows a first flowchart for implementing an embodiment of the method
- Fig. 7 shows a flowchart for implementing the steps of an enhanced method
- Fig. 8 shows a timing diagram showing the effect of such an enhanced embodiment of the method
- Fig. 9 shows a schematic embodiment of an enhanced version of a congestion control device
- Fig. 10 shows another high-level architecture for realizing a variant embodiment of the method and Fig. 1 1 shows another high-level architecture for realizing another embodiment of the method.
- - A shows another high-level architecture for realizing
- any block diagrams herein represent conceptual views of illustrative circuitry embodying the principles of the invention.
- any flow charts, flow diagrams, state transition diagrams, pseudo code, and the like represent various processes which may be substantially represented in computer readable medium and so executed by a computer or processor, whether or not such computer or processor is explicitly shown.
- An embodiment of the method proposes a new type of congestion control via scalable codecs, referred to as choking-based congestion control.
- This method can be used in a number of networks such as the one which is schematically depicted in Figure 1.
- networks such as the one which is schematically depicted in Figure 1.
- an embodiment of the invention will be explained for use in e.g. a DSL access network, but other embodiments of the invention are possible in all other types of networks, whether fixed or mobile.
- a multimedia server MM is coupled via an intermediate node IM such as a service aggregator to at least one access node.
- IM such as a service aggregator
- AN l 3 of them are depicted, denoted AN l to AN3.
- the number of access nodes can easily be in the range 10 to 100.
- these access nodes can each be coupled to individual users depicted Ul to Un, one access node typically serving 100 to 1000 users.
- at least one of the nodes comprises a congestion control device.
- FIG. 1 an embodiment is depicted in which all nodes are equipped with such a congestion control device, which are denoted CCANl to CCAN3 for the respective congestion control devices in the respective access nodes AN l to AN3, and CCIM for the congestion control device comprised in the intermediate node IM.
- CCANl to CCAN3 for the respective congestion control devices in the respective access nodes AN l to AN3
- CCIM for the congestion control device comprised in the intermediate node IM.
- FIG. 2 Such an embodiment wherein only the intermediate node comprises a congestion control device in accordance to the invention is depicted in Fig. 2 and will be further described into more details in the following paragraphs.
- Scalable video coding is standardized, e.g., in annex G of ITU-T Rec. H.264 "Advanced video coding for generic audiovisual services" and implies that the encoded video flow is built up of a base layer and at least one enhancement layers.
- Many standard codecs e.g. MPEG2, 4 have scalable extensions, but other proprietary schemes can be used as well.
- packet-based transport the bit streams associated with each layer are packetized in such a way that, based on an identifier in the header of each packet, it is known to which layer it belongs to.
- An example may be the DiffServ CodePoint (DSCP) or Type of Service (ToS) byte within the IP header which can be used for this purpose, so to identify to which layer the packet belongs to.
- DSCP DiffServ CodePoint
- ToS Type of Service
- Fig. 3 there is an ordering in the layers that determines the importance of a particular layer: layer 0 is the base layer, being the most important layer, whereas the layer with the highest number, in this case being L, is the least important one.
- a scheduling technique performed by a scheduler in the individual node where it is part of.
- the node IM is depicted comprising a scheduler denoted S.
- This scheduler does not make a distinction between packets of different flows, but discriminates between packets associated with different layers, based on the identifier for identifying this layer.
- Such a scheduling technique may imply that the node comprises an input buffer, denoted B in Fig. 4, but this is not necessary.
- the node further comprises an embodiment of a congestion control device CCIM, which itself comprises a controller C adapted to determine and/or to adjust, at predetermined time slots, e.g. every second, up to which layer I of the L+ l layers the scheduler is adapted to allow an incoming packet to enter the node, e.g. via the buffer B. If up to and including layer I is allowed this means that all packets in the next time slot that have an identifier denoting a layer in the range [0,1] are accepted while the remainder of the incoming packets will be rejected.
- a congestion control device CCIM itself comprises a controller C adapted to determine and/or to adjust, at predetermined time slots, e.g. every second, up to which layer I of the L+ l layers the scheduler is adapted to allow an incoming packet to enter the node, e.g. via the buffer B. If up to and including layer I is allowed this means that all packets in the next time slot that have an identifier denoting a
- an embodiment of the congestion control device will therefore include a controller which will be adapted to determine, at predetermined instances in time t, the value of l(t+ l ) for the next particular time instance t+ 1 , based on the current value of l(t), based on the current number n(t) of incoming flows to the node and based upon a decision table T.
- This controller will thus be able to determine up to which layer I to support in the next time slot t+ 1.
- the controller C is adapted to receive from a monitoring device M, the number n(t) of input flows Fl to Fn to the node ⁇ t time instance t, and to further consult a decision table, denoted T, such as to be able to determine l(t+ l ). This value is provided to the scheduler S, which will accordingly filter the incoming packets, based upon their layer identifier, so that only packets up to layer l(t+ l ) will be allowed to pass through and be buffered at time instance t+ 1.
- This decision table is denoted T in Figure 4. Examples of such a decision table are shown in Figs. 5a and 5b.
- the decision table in fig. 5a has as entry variables the highest layer number l(t), and the total number n(t) of incoming flows to that node. Its last column shows an associated action, as a function of these entries, this action being denoted by either "0", "-" or "+”. An action denoted by "0” means that in the next slot t+ 1 the same number of layers (from 0 up to and including I) will be allowed to enter the buffer.
- An action denoted "-" means that in the next slot t+ 1 , one layer less will be allowed to enter the buffer resulting in that all packets with layer identifiers between and including 0 and 1-1 will be allowed.
- An action denoted "+” means that in the next slot t+ 1 , e.g. one layer more is allowed to enter the buffer resulting in that all packets with layer identifiers between and including layer 0 to layer 1+ 1 are allowed. So when reading the first row on table 5a, this means that, if in the current slot 6 layers are allowed to enter the buffer, while 170 input flows are entering the node in this slot, nothing has to change as far as the number of layers allowed to enter the buffer in the next slot is concerned, so this number remaining 6.
- the second row on this table shows that if in the current slot 6 layers are allowed to enter the buffer while 180 input flows are entering the node in this slot, the number of layers that may enter the buffer for storage in the next slot has to be lowered e.g. by 1 with respect to the current value, corresponding to 5 layers being allowed in the next slot.
- the third row on this table shows that if presently 7 layers are allowed to enter the buffer and the node currently receives 130 input flows, during the next time instance 8 layers will be allowed to enter the buffer. Instead of increasing or decreasing by 1 , these actions "+" or "-" can also mean that in other embodiments e.g. 2 or 3 layers less or more are allowed. Another example of a table is shown in fig. 5b.
- the number n(t) of flows are grouped in bins.
- the action is to decrease the number of accepted layers, e.g. from 6 to 5, in the next slot if there are more than 1 70 flows; (in accordance with the third displayed row on the table), and
- the action is to increase the number of accepted layers, e.g. from 6 to 7, if there are less than 140 flows (in accordance with the first displayed row on the table).
- a " + " action can represent an increase with a predetermined number, which may be larger or equal to 1
- a "-" action represents a decrease with another predetermined number larger or equal than 1 , which may be the same to the predetermined number for increasing, but which can also differ from that.
- such a decision table may be stored locally in the node or in the congestion control device itself.
- Fig. 4 shows an embodiment where this table is stored within the congestion control device CCIM.
- the figure further schematically shows the principle that packets from all flows, but with identifiers up to layer I, will thus be allowed to pass into the buffer.
- the buffer itself does not need to be split up into several sub-buffers pertaining to the different layers, as is suggested by this figure; this is only drawn in order to better illustrate the principles that packets from all flows can pass through, but being filtered based upon their layer number.
- FIG. 6 A flowchart illustrating a detailed embodiment for implementing the different steps of the described method is shown in Fig. 6.
- the method starts with monitoring the number of incoming flows Fl to Fn in the current time slot. This may be performed by a monitoring device M, as shown in Fig. 4. In a next step this number of incoming flows, as well as the current highest allowed layer l(t), are used to determine the appropriate entry in the table, upon which step the resulting action can be read from the table too. These steps can be performed within the controller C.
- the value of l(t+ l ) is adapted, and this value is fed back to the scheduler S, which is adapted to determine from all incoming packets to which layer they belong, and to accordingly pass them through to the buffer in case the layer number is lower or equal to l(t+ l ), or discard them, in case the layer number is larger than l(t+ l ).
- the layer identification of a packet can be found in e.g. the IP header in case this protocol is used for transport. Methods to sort packets based on an identifier in their header are well known to a person skilled in the art and will not be further explained into detail.
- the congestion control device is adapted to regularly update this table, e.g. every 20 minutes for the previous example where the time instances for determining l(t) and l(t+ l ) were of the order of magnitude of seconds. This update can be based on the observed traffic, during an observation period, towards the network node, but this is not necessary.
- the congestion control device CCIM is adapted to model the traffic over a certain period of time, referred to as the observation period, which is thus much longer than the time slots for updating the layer acceptance number. More precisely, it determines some parameters of an a priori chosen traffic model.
- Such a model can be a Markov model, but it can also be another type as will be explained in the next paragraph :
- a method may for instance consist of the following procedure: besides the presently ⁇ ctive decision action table a number of preselected or predetermined alternative decision tables are maintained. These could for instance be obtained by setting the thresholds in binned tables of the type of Fig. 5b to representative sets of values, which may itself be selected based on the principles that only two thresholds are needed per level I in order to completely specify the table, and that tables where the thresholds associated with layer 1+ 1 are higher than the ones associated with layer I, are not logical. So keeping these rules in mind, a set of representative tables can be easily chosen and these will initially be stored within IM or the congestion controller. For each of these alternative decision tables it is then calculated over the observation period what a value function would yield if this alternative action table would be used. Such a value function is for instance given by the following formula (1 ) :
- V[l(t),n(t)] R[l(t),n(t),a(l(t),n(t))] + V[l(t+ l ),n(t+ l )] (1 )
- V[l(t),n(t)] (and V[l(t+ l ),n(t+ l )]) representing the value function when there are I layers accepted and n input flows at time t (and the future value function at time t+ 1 respectively)
- R[l(t),n(t),a(l(t),n(t))] representing an instantaneous reward function a(l(t),n(t)) represents the action taken when there are I layers allowed and n input flows at time t, as given in the decision table
- ⁇ and ⁇ are positive constants with the following interpretations; a being the reward per time unit the operator gets per flow supported, ⁇ being the penalty the operator has to pay per lost packet and ⁇ being the penalty the operator has to pay per quality change.
- ⁇ -G(l(t)) is the reward associated with transporting the flows up to layer I in slot t, e.g., the price a single user is willing to pay to receive a video and the quality corresponding to layer I.
- F is the traffic volume in slot t. For n(t) flows F corresponds to n(t)-l(t) and
- C is the link capacity, i.e., the amount of information that can be transmitted per slot t.
- C can be chosen slightly smaller than the link capacity to better avoid overflow.
- a transition matrix has to be created, which is based on the observation of the traffic.
- Such a transition matrix can contain entries representing the likelihood that the number of flows are increased/decreased from a certain value, indexed by the row of the matrix for this entry, to another value, indexed by the column of the matrix for this entry.
- the transition matrix TRM [n(t),n(t+ l )] is thus built based on the observed difference between the absolute number of flows in a current time slot t and the next time slot t+ 1 .
- the decision table to be used for determining the l(t) can be updated based on e.g. Markov Decision Process theory, hereafter abbreviated by MDP theory, optimizing the average of a value function under the assumption that only three possible actions can be taken as these mentioned in a previous paragraph:
- MDP theory allows to select the optimum action table for a Markov process described by such a transition matrix TRM[n(t),n(t+ 1 )] and a given value function.
- a value function V(l(t),n(t)) may consist of the sum of an instantaneous reward and an expected future value, which itself depends on the transition matrix and the actions taken, as expressed by the following formula (3):
- V[l(t),n(t)] R[l(t),n(t),a(l(t),n(t))] + ⁇ , TRM[n(t),j]-V[l(t+ 1 ),j]
- V[l(t),n(t)] representing the value function when there are I layers accepted and n input flows at time t
- R[l(t),n(t),a(l(t),n(t))] representing an instantaneous reward function
- a(l(t),n(t)) represents the action taken when there are I layers allowed and n input flows at time t, as given in the decision table and ⁇
- CC-G(I (t)) is the reward associated with transporting the flows up to layer I in slot t, e.g., the price users are willing to pay to receive a video and the quality corresponding to layer I.
- F is the traffic volume in slot t.
- F corresponds to n-l and
- C is the link capacity
- a first block shows how the transition matrix TRM is gradually built up, by measuring the number of flows n(t+ l ) within the next time slot and by comparing this with the previously measured number of flows n(t). More precisely, at the beginning all entries of TRM are put to 0. For each of the time slots t, the entry of the TRM matrix on the row with number n(t) and in column with number n(t+ l ) is increased by 1 , in case the measured number of flows is indeed found to change from n(t) to n(t+ l ).
- each entry in the TRM matrix in general contains how many times n(t) input flows, with n(t) being a variable indexing the rows, in the current slot t, were changed into n(t+ l ), with n(t+ l ) representing another variable number indexing the columns, in the next slot.
- the transition matrix is normalized such that all entries of a row are multiplied by the same number resulting in that the sum of the entries of each row is equal to 1.
- This optimum decision table is the decision table that maximizes equations (1 ) given (2), as is explained in Fig. 7. Once this optimum table is found on the basis of this MDP theory, this optimum table will then be installed to be used during the next cycle, as is also shown in Fig. 7. This process of building the transition matrix and determining the optimum decision table may be done every observation period T, with in a preferred embodiment T> >time slot t.
- the period over which the traffic is observed does not need to be equal to T, but can be longer, e.g., 2T, and can be adapted during the course of the process.
- the observation period and the table adaptation period can be different, and each be adjustable during the course of the process.
- an embodiment of such an enhanced controller is adapted to calculate the optimal decision table, for instance using Markov Decision Process (MDP) theory, for each node individually.
- MDP Markov Decision Process
- the optimal decision tables only rely on the current amount of input flows n(t)
- the actions taken do take the likely future evolution of the traffic into account.
- MDP theory allows anticipating the most likely future evolution if the observation period is chosen long enough for all possible events to have occurred and short enough with respect to known diurnal evolutions.
- Fig. 8 shows the evolution of the amount of incoming flows n, as a function of time t. This evolution is depicted by the thick black line.
- This figure also shows a threshold of a (binned) decision table of the type depicted in Fig. 5(b) for one particular value of I.
- a threshold of a (binned) decision table of the type depicted in Fig. 5(b) for one particular value of I.
- I which was thus the highest layer that is allowed to enter the buffer in the current slot t
- the figure illustrates that after observing the traffic over the table adjustment period, denoted "delta adjustment", the new decision table is c ⁇ lcul ⁇ ted and loaded.
- delta adjustment the new decision table is c ⁇ lcul ⁇ ted and loaded.
- the result of the MDP algorithm was thus that, based on this observation, it is safe to increase this threshold.
- this intermediate node in this embodiment, comprises extra processing or other devices, one being denoted TRM, for building up the transition matrix, and anoter device denoted MDP for determining the decision table that yields the best reward according to the reward function given by equations (1 ) and (2), leading to an update of the decision table T.
- TRM extra processing or other devices
- MDP anoter device
- all the method steps can be executed within the controller C too, or on one processing device.
- controllers may be provided through the use of dedicated hardware as well as hardware capable of executing software in association with appropriate software.
- the functions may be provided by a single dedicated processor, by a single shared processor, or by a plurality of individual processors, some of which may be shared.
- processor or “controller” should not be construed to refer exclusively to hardware capable of executing software, and may implicitly include, without limitation, digital signal processor (DSP) hardware, network processor, application specific integrated circuit (ASIC), field programmable gate array (FPGA), read only memory (ROM) for storing software, random access memory (RAM), and non volatile storage.
- DSP digital signal processor
- ASIC application specific integrated circuit
- FPGA field programmable gate array
- ROM read only memory
- RAM random access memory
- non volatile storage Other hardware, conventional and/or custom, may also be included.
- the extension to multiple nodes can thus involve a local decision table per node, associating with each local state l k (t),n k (t) with k representing the index per node, the appropriate action in node k, plus a coordination or tiebreaker strategy.
- a global coordination strategy can be implemented.
- the decision tables per node depend not only on local information, but on global information: and a global, centrally implemented action table will comprise actions associated with each possible combination of (I 1 (t),n ⁇ (t), ...,l k (t),n k (t), ...l ⁇ (t),n ⁇ (t)).
- information needs to be exchanged between the central or global network controller wherein this global action table will be stored, and the individual nodes, so that they each can have their own, different action table for each node.
- a network congestion controller can calculate the possibly tie-broken actions itself and communicate them to the individual nodes or the network congestion controller can relay the decisions of the local nodes to each other such that they can consequently take further decisions on their own, provided that they have access to their own congestion state and provided that they know when a coordination action is needed.
- Such an embodiment with a central or global network congestion controller NC is depicted in Fig. 1 1. It is thus adapted to communicate with all individual congestion control devices within the different nodes. In another embodiment the traffic can be observed via the bit rate on the links instead of measuring the number of flows.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Monitoring And Testing Of Exchanges (AREA)
Abstract
Description
Claims
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012515434A JP5372247B2 (en) | 2009-06-18 | 2010-06-10 | Congestion control method and apparatus |
| KR1020117030123A KR101318020B1 (en) | 2009-06-18 | 2010-06-10 | Method and apparatus for congestion control |
| CN201080026777.5A CN102461091B (en) | 2009-06-18 | 2010-06-10 | For the method and apparatus of congestion control |
| US13/378,901 US8867347B2 (en) | 2009-06-18 | 2010-06-10 | Method and apparatus for congestion control |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP09290462.2 | 2009-06-18 | ||
| EP09290462A EP2264954B1 (en) | 2009-06-18 | 2009-06-18 | Method and apparatus for congestion control |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2010145982A1 true WO2010145982A1 (en) | 2010-12-23 |
Family
ID=41198631
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/EP2010/058120 Ceased WO2010145982A1 (en) | 2009-06-18 | 2010-06-10 | Method and apparatus for congestion control |
Country Status (7)
| Country | Link |
|---|---|
| US (1) | US8867347B2 (en) |
| EP (1) | EP2264954B1 (en) |
| JP (1) | JP5372247B2 (en) |
| KR (1) | KR101318020B1 (en) |
| CN (1) | CN102461091B (en) |
| AT (1) | ATE544270T1 (en) |
| WO (1) | WO2010145982A1 (en) |
Families Citing this family (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8914834B2 (en) | 2011-07-18 | 2014-12-16 | Motorola Solutions, Inc. | Source rate and channel rate matching for scalable video transmission |
| US9201719B2 (en) | 2012-03-16 | 2015-12-01 | Infineon Technologies Ag | Method and system for timeout monitoring |
| US9285865B2 (en) | 2012-06-29 | 2016-03-15 | Oracle International Corporation | Dynamic link scaling based on bandwidth utilization |
| US20140040526A1 (en) * | 2012-07-31 | 2014-02-06 | Bruce J. Chang | Coherent data forwarding when link congestion occurs in a multi-node coherent system |
| EP2811711A1 (en) | 2013-06-05 | 2014-12-10 | Alcatel Lucent | Nodes and methods for use in HAS content distribution systems |
| CN105637820B (en) * | 2014-09-22 | 2019-05-24 | 华为技术有限公司 | A control channel processing method, device and system |
| TWI595795B (en) * | 2015-12-02 | 2017-08-11 | 財團法人工業技術研究院 | Offload determination system for multiple wireless network, server and method thereof |
| CN105791054B (en) * | 2016-04-22 | 2018-10-19 | 西安交通大学 | A kind of autonomous controllable reliable multicast transmission method realized based on flow point class |
| CN111200627A (en) * | 2018-11-20 | 2020-05-26 | 中兴通讯股份有限公司 | A method and device for determining a forwarding port in an information center network |
| US12531806B2 (en) | 2020-12-17 | 2026-01-20 | Intel Corporation | Network interface device with flow control capability |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20010047423A1 (en) * | 1999-12-15 | 2001-11-29 | Huai-Rong Shao | Generalized differentiation methods and arrangements for adaptive multimedia communications |
| US20030067872A1 (en) * | 2001-09-17 | 2003-04-10 | Pulsent Corporation | Flow control method for quality streaming of audio/video/media over packet networks |
| US20030195977A1 (en) * | 2002-04-11 | 2003-10-16 | Tianming Liu | Streaming methods and systems |
| US20040194142A1 (en) * | 1999-12-22 | 2004-09-30 | Zhimei Jiang | Method and system for adaptive transmission of smoothed data over wireless channels |
| WO2006048842A1 (en) * | 2004-11-05 | 2006-05-11 | Koninklijke Philips Electronics N.V. | System and method for transmitting layered video over qos enabled wlans |
Family Cites Families (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH07264197A (en) | 1994-03-18 | 1995-10-13 | Mitsubishi Electric Corp | Cell exchange device |
| US5740533A (en) * | 1996-06-03 | 1998-04-14 | Motorola, Inc. | Congestion control system and method for efficient multi-frequency messaging |
| JP2000175189A (en) * | 1998-12-07 | 2000-06-23 | Univ Tokyo | Moving picture coding method and moving picture coding apparatus used therefor |
| JP3591498B2 (en) | 2001-08-31 | 2004-11-17 | 三菱電機株式会社 | Bandwidth update method |
| CN1493157A (en) | 2001-09-12 | 2004-04-28 | ���µ�����ҵ��ʽ���� | Image encoding method and image decoding method |
| US7499594B2 (en) | 2002-04-15 | 2009-03-03 | At&T Intellectual Property 1, L.P. | Multi-resolution predictive foveation for bandwidth reduction of moving images |
| JP3937337B2 (en) | 2003-08-15 | 2007-06-27 | 日本電信電話株式会社 | Delivery rate control method and system |
| ITBA20030039A1 (en) | 2003-08-29 | 2005-02-28 | Grieco Luigi Alfredo | RATE-BASED CONGESTION CONTROL OF THE ENTERING TRAFFIC |
| US7719978B2 (en) * | 2003-09-12 | 2010-05-18 | Newsouth Innovations Pty Limited | Method for transmitting data over lossy packet-based communication networks |
| CN100488106C (en) * | 2003-10-17 | 2009-05-13 | 中国科学院计算技术研究所 | Adaptive service quality ensuring method in multi-playing environment |
| JP2005204157A (en) | 2004-01-16 | 2005-07-28 | Nippon Telegr & Teleph Corp <Ntt> | Stream filtering system, content distribution system, stream filtering method and program |
| JP2006060448A (en) * | 2004-08-19 | 2006-03-02 | Nippon Telegr & Teleph Corp <Ntt> | Scalable multicast content distribution system and apparatus, rate control method and bandwidth allocation method thereof, program and recording medium thereof |
| US7733868B2 (en) * | 2005-01-26 | 2010-06-08 | Internet Broadcasting Corp. | Layered multicast and fair bandwidth allocation and packet prioritization |
| WO2008032146A2 (en) * | 2006-09-13 | 2008-03-20 | Nokia Corporation | Energy aware early detection |
| EP2031816B1 (en) * | 2007-08-29 | 2012-02-22 | NTT DoCoMo, Inc. | Optimal operation of hierarchical peer-to-peer networks |
-
2009
- 2009-06-18 EP EP09290462A patent/EP2264954B1/en not_active Not-in-force
- 2009-06-18 AT AT09290462T patent/ATE544270T1/en active
-
2010
- 2010-06-10 US US13/378,901 patent/US8867347B2/en not_active Expired - Fee Related
- 2010-06-10 KR KR1020117030123A patent/KR101318020B1/en not_active Expired - Fee Related
- 2010-06-10 WO PCT/EP2010/058120 patent/WO2010145982A1/en not_active Ceased
- 2010-06-10 JP JP2012515434A patent/JP5372247B2/en not_active Expired - Fee Related
- 2010-06-10 CN CN201080026777.5A patent/CN102461091B/en not_active Expired - Fee Related
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20010047423A1 (en) * | 1999-12-15 | 2001-11-29 | Huai-Rong Shao | Generalized differentiation methods and arrangements for adaptive multimedia communications |
| US20040194142A1 (en) * | 1999-12-22 | 2004-09-30 | Zhimei Jiang | Method and system for adaptive transmission of smoothed data over wireless channels |
| US20030067872A1 (en) * | 2001-09-17 | 2003-04-10 | Pulsent Corporation | Flow control method for quality streaming of audio/video/media over packet networks |
| US20030195977A1 (en) * | 2002-04-11 | 2003-10-16 | Tianming Liu | Streaming methods and systems |
| WO2006048842A1 (en) * | 2004-11-05 | 2006-05-11 | Koninklijke Philips Electronics N.V. | System and method for transmitting layered video over qos enabled wlans |
Non-Patent Citations (1)
| Title |
|---|
| COHEN R ET AL: "STREAMING FINE-GRAINED SCALABLE VIDEO OVER PACKET-BASED NETWORKS", GLOBECOM'00. 2000 IEEE GLOBAL TELECOMMUNICATIONS CONFERENCE. SAN FRANCISCO, CA, NOV. 27 - DEC. 1, 2000; [IEEE GLOBAL TELECOMMUNICATIONS CONFERENCE], NEW YORK, NY : IEEE, US, vol. 1, 27 November 2000 (2000-11-27), pages 288 - 292, XP001195579, ISBN: 978-0-7803-6452-3 * |
Also Published As
| Publication number | Publication date |
|---|---|
| US8867347B2 (en) | 2014-10-21 |
| KR101318020B1 (en) | 2013-11-21 |
| JP2012530439A (en) | 2012-11-29 |
| EP2264954A1 (en) | 2010-12-22 |
| KR20120024781A (en) | 2012-03-14 |
| CN102461091A (en) | 2012-05-16 |
| ATE544270T1 (en) | 2012-02-15 |
| JP5372247B2 (en) | 2013-12-18 |
| EP2264954B1 (en) | 2012-02-01 |
| US20120155258A1 (en) | 2012-06-21 |
| CN102461091B (en) | 2015-12-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8867347B2 (en) | Method and apparatus for congestion control | |
| Wan et al. | Adaptive unequal protection for wireless video transmission over IEEE 802.11 e networks | |
| US12568050B2 (en) | Adaptive adjustment method of packet-level transmission priority for delay guarantee in programmable networks | |
| CN101860475A (en) | A method for autonomous queue management based on context awareness | |
| CN106134130A (en) | The system and method estimated for the dynamic effective speed of real-time video flow | |
| WO2008081184A1 (en) | Allocation of network resources | |
| EP2590349A1 (en) | A method for scheduling a scalable video coding stream in a wireless mobile network | |
| Panno et al. | An enhanced joint scheduling scheme for GBR and non-GBR services in 5G RAN | |
| CN120499102A (en) | Deterministic network congestion avoiding flow route scheduling method | |
| CN101414974B (en) | Data flow management method based on communication terminal | |
| US20250337857A1 (en) | Method for processing video calls, device and storage medium | |
| CN106921860B (en) | End-to-end video sending method and device | |
| Coutinho et al. | Dynamic dual-reinforcement-learning routing strategies for quality of experience-aware wireless mesh networking | |
| Zhang et al. | Towards influence of chunk size variation on video streaming in wireless networks | |
| US9319325B2 (en) | Adaptive method and system of regulation of yellow traffic in a network | |
| US8913496B2 (en) | System and method for dynamically policing network traffic based on egress queue status | |
| Wan et al. | Adaptive scheduling for wireless video transmission in high-speed networks | |
| CN117528663A (en) | QoS management method, qoS management device, electronic equipment and storage medium | |
| Magalhaes et al. | A new QoS mapping for streamed MPEG video over a DiffServ domain | |
| CN121151990B (en) | A method for rapid deployment of dynamic networking for portable repeaters | |
| EP4611333A1 (en) | Microservice-aware framework for network-application collaboration | |
| CN119109876A (en) | Data forwarding equipment adjustment method, system and related equipment | |
| Ozu et al. | Adaptive Priority Control Method for ABR Streaming to Reduce Congestion Levels | |
| Porikli et al. | Dynamic bandwidth allocation with optimal number of renegotiations in ATM networks | |
| Milani et al. | Improving quality-of-experience for multiple description video transmission in peer-to-peer networks |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| WWE | Wipo information: entry into national phase |
Ref document number: 201080026777.5 Country of ref document: CN |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 10725097 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 20117030123 Country of ref document: KR Kind code of ref document: A |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2012515434 Country of ref document: JP |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 13378901 Country of ref document: US |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 10725097 Country of ref document: EP Kind code of ref document: A1 |