WO2007101962A1 - Mécanisme de régulation multicouches du débit d'un flux de données tcp dans un réseau haut débit ethernet full duplex - Google Patents

Mécanisme de régulation multicouches du débit d'un flux de données tcp dans un réseau haut débit ethernet full duplex Download PDF

Info

Publication number
WO2007101962A1
WO2007101962A1 PCT/FR2007/050880 FR2007050880W WO2007101962A1 WO 2007101962 A1 WO2007101962 A1 WO 2007101962A1 FR 2007050880 W FR2007050880 W FR 2007050880W WO 2007101962 A1 WO2007101962 A1 WO 2007101962A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
terminal
link layer
congestion state
regulating
Prior art date
Application number
PCT/FR2007/050880
Other languages
English (en)
Inventor
Romain Insler
François ELEOUET
Joël PENHOAT
Original Assignee
France Telecom
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by France Telecom filed Critical France Telecom
Publication of WO2007101962A1 publication Critical patent/WO2007101962A1/fr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • H04L47/266Stopping or restarting the source, e.g. X-on or X-off
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/29Flow control; Congestion control using a combination of thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/324Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/326Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the transport layer [OSI layer 4]

Definitions

  • the field of the invention is that of communication networks in packet mode. It is recalled that a communication network is a heterogeneous structure both in terms of the media used to carry the data (copper pairs, optical fibers, radiofrequencies), the level of available bandwidth, data throughput or even implemented protocols.
  • the heterogeneity of communication networks has the effect of generating congestions on the network.
  • congestions occur when a path carrying packets is composed of segments with different rates. Congestion is an annoying phenomenon because it forces re-transmission of the lost data and significantly slows down the time the data is sent to the destination terminal. It is important to limit this phenomenon in order to improve the quality of service of communication networks.
  • Transmission Control Protocol is an example of a reliable transmission protocol.
  • Figure 1 schematically shows a connection made between two terminals Ti and T 2 using the remote TCP.
  • each terminal is represented with three of its protocol layers: the transport layer, such as the TCP layer, the network layer, as for example the IP layer and the data link layer, such as the MAC layer.
  • the protocol layers shown in the figures correspond to the protocol layers defined by the Open Systems Interconnection (OSI) model.
  • OSI Open Systems Interconnection
  • Intermediate terminals Si and S 2 are also represented. These terminals Si and S 2 are scattered over the network and are, for example, Ethernet switches or routers.
  • the connection established between the two terminals Ti and T 2 by means of the TCP protocol is shown diagrammatically in FIG. 1 by a double arrow A connecting the transport layer of the two terminals.
  • the TCP conventionally comprises a mechanism for regulating the transmission rate of the data according to a state of global congestion of the network, as well as a mechanism for retransmission of the lost data.
  • the TCP protocol perceives congestion via the loss of a packet.
  • the transmission rate of the transmission layer of the transmitting terminal here the terminal T- I
  • Transmission rate control is achieved through a sliding window whose size varies according to the overall congestion state of the network.
  • the transmission window contains the bytes that the transmitting terminal T1 can transmit between two instants tk and tk + i-
  • the various terminals Ti, T 2 , Si, and S 2 scattered over the network and requested to route the data use protocols of transmission rate control of the data link layer.
  • This regulation of the transmission rate is a local regulation since it intervenes between two consecutive terminals on the network such as the terminals T1 and S1.
  • This regulation is represented in FIG. 1 by a double arrow B.
  • An example of a protocol for regulating the data transmission rate at the data link layer is the 802.3x protocol defined by NEEE (Institute of Electrical and Electronics Engineers). Under this name, I 1 IEEE defines in the MAC layer a flow control between two terminals connected to each end of the same full-duplex Ethernet link.
  • a full-duplex Ethernet link is a two-way, simultaneous link using the Ethernet channel management protocol to transmit data between two machines.
  • the terminal S1 fills beyond a threshold called threshold XOFF, it transmits an XOFF frame.
  • This frame stops the transmission of the terminal vis-à-vis, here, the terminal T1.
  • the number of bytes contained in the buffer memory of the terminal S1 then decreases, until reaching a threshold called threshold XON from which the terminal S1 transmits an XON frame to the terminal T1 which reactivates its transmission.
  • FIG. 2 schematically represents a connection made between two remote terminals T 1 and T 2 using a version of the modified TCP protocol adapted to Ethernet networks.
  • the TCP protocol In this modified version of the TCP protocol, presented in the article entitled "A case for queue-to-tail, back pressure-based congestion control for grid network" by Mr. Herbert and P. Vicat-Blanc / Primet, the TCP protocol only understands the mechanism of retransmission of lost data.
  • the mechanism for regulating the data transmission rate of the TCP protocol is suppressed.
  • the only mechanism for regulating the data transmission rate proposed in this embodiment is the control mechanism of the data link layer represented by a double arrow C in FIG. 2. The regulation of the data transmission rate is then a local regulation and no longer global.
  • this method comprises at least one step of determining at least one parameter representative of a congestion state of the data link layer of the terminal, said first regulation of the data rate at said transport layer holding account of said parameter representative of a congestion state of the data link layer.
  • an objective of the invention is to improve the data transmission rate of a terminal implementing:
  • the object of the invention is to propose such a technique that makes it possible to improve the bit rate of a TCP connection for a terminal connected to a full-duplex Ethernet network carrying out a flow control at the level MAC. It applies in particular, but not exclusively, to the case where such a TCP connection transits via a network Ethernet full-duplex, then via any network that can lose packets.
  • the first regulation is based on a variation in the size of a data transmission window, according to two distinct growth phases comprising a first phase during which the size of the transmission window data grows according to a first law of exponential variation, and a second phase during which the size of the data transmission window grows according to a law of linear variation.
  • the solution of the invention introduces a third growth phase of the size of said window during which the size of said window grows according to a second law of exponential coefficient variation. growth greater than the growth coefficient of the first phase.
  • the value of the growth coefficient of the law of variation of the third phase is a function of a state of global congestion of the network.
  • the parameter representing a congestion state of the data link layer corresponds to the maximum amount of bytes that the data link layer can transmit during a determined time interval.
  • the size of the data transmission window is smaller than said parameter, the size of the window of emission of the data follows the second law of exponential variation of the third phase of growth.
  • the variations in the size of the transmission window depend on the data of the congestion state of the data link layer, an optimization of the resources of the transmission terminal is allowed. Indeed, when the global congestion state of the network is such that the regulation at the level of the transport layer allows an increase in the size of the data transmission window, the latter is weighted according to the state of the transmission. congestion of the data link layer. Only data that can be handled by the data link layer are emitted by the transport layer.
  • a parameter representative of an available bandwidth on said network is also evaluated, corresponding to a maximum quantity of bytes that can carry a channel between said terminal and a receiving terminal of said data.
  • This parameter constitutes a threshold conditioning a passage of the size of the transmission window of said first growth phase, when the size is less than said threshold at said second growth phase, when said size is greater than said threshold.
  • the transmission rate of the data takes into account the state of the data link layer thus allowing a better use of the resources. This makes it possible to have a high data transmission rate even when the data link layer is congested.
  • the parameter representative of a congestion state of the data link layer and / or the parameter representative of the bandwidth available on the network are determined recurrently.
  • the time separating two consecutive determinations of the parameter representative of a congestion state of the data link layer and / or the parameter representative of the available bandwidth on the network is a function of said global congestion state. communication network.
  • the determination of these parameters is conditioned by the receipt of a triplet ⁇ XOFF, XON, XOFF ⁇ for the parameter representative of a congestion state of the data link layer and the reception of an acknowledgment by the transport layer of the terminal transmitter for parameter representative of the bandwidth available on the network. According to a characteristic of the invention, it is required that the parameter representative of a congestion state of the data link layer is less than or equal to the parameter representative of the bandwidth available on the network.
  • said transmitting terminal is a TCP server
  • said first regulation is a TCP flow control between said server and a TCP client
  • said second regulation is an 802.3x type flow control performed at the MAC layer of said server, between said server and said client or an intermediate equipment of said network connected to said server by an Ethernet link FuII Duplex.
  • the invention also relates to a data transmission terminal connected to a communication network, comprising first means for regulating the data rate at the transport layer of said transmission terminal as a function of an overall state of congestion of the communication network, second means for regulating the data rate at the data link layer of said terminal transmission according to a congestion state of said data link layer.
  • This terminal further comprises means for determining a parameter representative of a congestion state of said data link layer, said first regulation means taking into account said parameter representative of a congestion state of the link layer of data.
  • the invention further relates to a computer program comprising program code instructions for executing the steps of the method as previously described when said program is executed by a processor.
  • the invention finally relates to a communication system between a server terminal and a client terminal through a communication network, said system also comprising at least one intermediate device located between said client and server terminals, said server terminal comprising first means regulating the data rate at the transport layer of said server terminal, as a function of a global congestion state of the communication network between said server terminal and said client terminal, and second means of regulating the data flow at the level of the data link layer of said server terminal as a function of a congestion state of the data link layer between the server terminal and said intermediate equipment.
  • said server terminal comprises means for determining a parameter representative of a congestion state of said data link layer, and said parameter representative of a congestion state of the data link layer is taken into account. account by the first regulating means of said server terminal.
  • FIG. 1 schematically represents a connection between two remote terminals realized by means of the TCP protocol according to a first prior art
  • FIG. 2 schematically represents a connection between two remote terminals made by means of a modified version of the TCP protocol according to a second prior art
  • FIG. 3 schematically represents a connection between two remote terminals realized by means of a modified version of the TCP protocol according to the invention
  • FIG. 4 diagrammatically represents the operating principle of the data transmission rate regulation mechanism at the data link layer according to the invention
  • FIG. 5 is a diagram representing the three phases of variation of FIG. the size of a data transmission window according to the invention
  • FIG. 6 represents the algorithm for determining the law of variation of the size of a transmission window as a function of the parameter representative of a congestion state of the data link layer as well as the parameter representative of the band. available passerby,
  • FIG. 7 schematically shows the main steps performed by a computer program comprising code instructions for the execution of the method according to the invention.
  • FIG. 3 represents a connection made between two remote terminals Ti, T 2 by means of a reliable transport protocol.
  • this transport protocol is the TCP protocol.
  • the two terminals Ti and T 2 exchange data through a communication network.
  • This exchange is materialized by the different arrows A 1 and B connecting the different terminals together.
  • the terminal Ti is a data transmitting terminal and the terminal T 2 is a data receiving terminal.
  • This communication network may be a wired network, or a radio frequency network.
  • Each terminal Ti, T 2 is represented with three of its protocol layers defined according to the OSI model. The layers represented are the protocol transport, TCP, network, IP and data link, MAC layers.
  • This figure also shows intermediate terminals Si and S 2 as well as their MAC protocol layer. These terminals are for example Ethernet switches, routers or any other network equipment located on the path between terminals T1 and T2.
  • the TCP protocol comprises a mechanism for regulating the transmission rate as a function of a global congestion state of the network as well as a mechanism for retransmission of the lost data as previously described in relation with FIG. 1 of FIG. prior art. This is represented in FIG. 3 by double the arrow A 1 connecting the TCP layers of the two terminals.
  • the data transmission rate at the MAC protocol layer is regulated by means of appropriate control protocols (see FIG. 1).
  • This regulation is shown diagrammatically in FIG. 3 by the double arrows B connecting the MAC layers of two successive terminals, such as Ti and Si.
  • the regulation protocol is the 802.3x protocol.
  • the transmission rate of the MAC layer between the transmitting terminal Ti and the first intermediate terminal Si encountered on the network is regulated by means of a protocol for regulating the transmission speed of the transmission device.
  • data from the MAC layer which is the 802.3x protocol. This protocol may or may not be used between the other terminals, S1, S2, etc. located on the path connecting T1 to T2.
  • the MAC and TCP protocol layers of the transmitter terminal Ti exchange information between themselves. This exchange of information is materialized by a double arrow D in FIG.
  • the exchange of information between the TCP and MAC protocol layers of the transmitting terminal Ti consists of the transmission of data relating to a state of congestion of the MAC layer to the TCP layer. This data is then used by the mechanism for regulating the data transmission rate as a function of a global congestion state of the TCP protocol network. This data is in the form of a parameter representative of a state of congestion of the MAC layer S '.
  • the parameter S ' corresponds to the maximum quantity of bytes N that the MAC layer of the transmitting terminal Ti can transmit during a time interval ⁇ t.
  • the protocol 802.3x which makes it possible to regulate the transmission rate of the data at the local level is implemented as follows: at a time t1 the MAC layer of the transmitting terminal Ti receives information in from the intermediate terminal Si, which is directly consecutive on the network, asking him to stop the sending of data. This information is in the form of an XOFF frame conforming to the 802.3x protocol.
  • the MAC layer of the transmitting terminal Ti receives information from the terminal Si allowing it to send the data.
  • This information is in the form of an XON frame.
  • the time interval ⁇ t corresponds to the time which has elapsed between the instants t1 and t2.
  • buffers of the MAC layer of the transmitting terminal Ti accumulate at most M bytes of data.
  • the quantity N corresponds to the number of bytes of data transmitted on the network by the intermediate terminal Si during the time interval ⁇ t, ie: Rx ⁇ t (EQ1), where R is the flow rate of the network located downstream of the intermediate terminal. If, that is to say the network that connects the terminals Si and S 2 in Figure 3.
  • the MAC layer of the transmitting terminal Ti receives information from the intermediate terminal S1 asking it to stop sending the data. This information is in the form of an XOFF frame.
  • the MAC layer of the transmitting terminal Ti transmits at most M 1 bytes of data to the intermediate terminal Si.
  • N (PxR) x ⁇ t '(EQ2), where P is the bit rate of the Ethernet link Full-Duplex connecting the transmitter terminal Ti to the intermediate terminal S-i.
  • S' (t3) (Pxmin ((t2-11), (t3-12))) / 2 (EQ4)
  • This last equation has two advantageous characteristics: its computation requires less computing power than that of the equation (EQ3), so the processor of the sending terminal is not saturated and can handle other tasks, and it provides a value of the parameter S 'smaller than the number of bytes of data N. Therefore, it minimizes data loss.
  • Equation EQ4 means that the parameter S 'is a function of the time intervals ⁇ t and ⁇ t'.
  • the value of the parameter S ' is updated after each reception by the MAC layer of the transmitting terminal T 1 of a sequence of frames ⁇ XOFF, XON, XOFF ⁇ , this sequence of frames corresponds to the implementation of the 802.3x protocol between the T1 transmitter terminal and the intermediate terminal S1.
  • FIG. 4 shows a buffer M of the data link layer of the intermediate terminal Si involved in the implementation of the local regulation mechanism of the data transmission rate in accordance with the 802.3x protocol.
  • the buffer memory M shown has a low level fill threshold L and a high level fill threshold H.
  • the buffer memory of the intermediate terminal S 1 accumulates the data until the number of bytes corresponding to the accumulated data volume reaches the high level threshold H.
  • the MAC layer of the intermediate terminal S 1 sends an XOFF frame to the MAC layer of the transmitting terminal Ti.
  • the MAC layer of the transmitting terminal stops sending data to the intermediate terminal Si.
  • the MAC layer of the intermediate terminal S 1 sends an XON frame to the MAC layer of the transmitting terminal Ti.
  • the MAC layer of the transmitting terminal Ti resumes the transmission of data to the intermediate terminal Si.
  • This updating of the parameter S ' is a recurrent phenomenon which is a function of a global congestion state of the network.
  • the parameter S ' is updated.
  • the parameter S ' is initialized at infinity when the connection between the transmitting terminal and the receiving terminal is opened and the parameter is positioned. S 'to infinity if it is zero in the equation (EQ4).
  • the parameter representative of a congestion state of the MAC layer S 'determined is transmitted to the transport layer of the transmitting terminal in order to be used by the control mechanism of the data transmission rate according to a global congestion state of the transport protocol network. This corresponds to step E2 of FIG. 7.
  • the regulation of the transmission rate of the data by the TCP protocol is carried out by means of a sliding transmission window whose size F, expressed in bytes, varies according to a state of global congestion of the network.
  • a data transmission window is defined by its size F in bytes but also by its sequence number.
  • FIG. 5 shows the variations of the size F of the data transmission window as a function of the number of acknowledgment messages received by the TCP protocol. Indeed, in order to ensure that data transmitted by the transmitting terminal Ti to the receiving terminal T 2 has been received by the latter, the receiving terminal T 2 transmits to the transmitting terminal T 1 a message of acquittal. If no acknowledgment message is received by the transmitting terminal Ti, the TCP protocol understands that the data has been lost. The TCP protocol then re-transmits the lost data.
  • the size F of the data transmission window follows three distinct growth phases ⁇ , ⁇ n and ⁇ m.
  • Both first growth phases ⁇ i and ⁇ n of the size of the data transmission window F are exponential growth phases
  • the third growth phase ⁇ m, for its part is a linear growth phase.
  • the existence of these different growth phases of the size F of the data transmission window makes it possible to adapt the transmission data transmission rate of the transport layer to a state of global congestion of the network thus allowing a better use of data. resources of the transmitting terminal Ti, as well as a better routing of the data on the network.
  • the size F of the data transmission window is in the first growth phase ⁇ .
  • the size of the data transmission window increases according to a law of exponential variation of growth coefficient ⁇ .
  • the growth coefficient ⁇ varies in an interval [ ⁇ min , ⁇ max ]. For each new window ⁇ is multiplied by 2. When data is lost, that is to say when no acknowledgment from the receiver terminal T 2 is received by the TCP layer, the growth coefficient ⁇ is divided by 2. In a particular embodiment, ⁇ min is 4 and ⁇ max is 32. The transition between the first growth phase ⁇ i and the second growth phase ⁇ n occurs when the size F of the data transmission window reaches a first threshold. This first threshold corresponds to the parameter representative of a congestion state of the MAC layer S '.
  • the size F of the data transmission window increases according to the law of variation of the second phase ⁇ n of growth.
  • This law of variation is an exponential law of coefficient of growth equal to 2.
  • the coefficient ⁇ is always strictly superior to 2.
  • the transition between the second growth phase ⁇ M and the third growth phase ⁇ m occurs when the size F of the data transmission window reaches a second threshold.
  • This second threshold corresponds to the parameter representing the bandwidth available on the network S.
  • the calculation of the parameter S is a function of the bandwidth available on a channel of the network, a channel being a path between the transmitting terminal Ti and the receiving terminal T 2 .
  • the parameter S represents the maximum number of bytes that can carry a channel at time t.
  • the determination of the parameter S corresponds to the step E3 of FIG.
  • the second growth phase ⁇ M of the size F of the data transmission window starts too early.
  • the transmitting terminal T 1 then puts a long period of time before filling the available bandwidth. This duration is even greater than the round-trip delay RTT between the transmitting terminal Ti and the receiving terminal T 2 is large.
  • D (t) corresponds to the rate of the transport layer at time t and rtt (t) corresponds to the round trip delay of the connection established between the transmitting terminal Ti and the receiving terminal T 2 at the instant t.
  • the sequence number of a data transmission window is equal to n.
  • the sequence number of the same data transmission window is equal to m.
  • Equation EQ9 if a minimum value of the RTT is chosen, the data loss will be minimized. Equation EQ9 is written then:
  • S (t) is updated every pxRTT, p being an even number chosen in the interval [p min , p ma ⁇ ] -
  • p min is 1
  • P max is 8.
  • the choice of p is a function of a global congestion state of the network: if data is lost, the value of p is immediately multiplied by 2.
  • the updating of the parameter S is a recurring phenomenon which is a function of a global congestion state of the network.
  • the processes for determining the parameters S 'and S are asynchronous and independent of each other.
  • the parameter S 'stored at the level of the MAC layer is sent to the transport layer. This parameter can be unchanged from the reception of the previous acknowledgment.
  • the parameter S '(t) must be less than or equal to the parameter S (t). This relation must be verified whatever the moment t.
  • the parameter S ' is compared with the parameter S. This corresponds to the step E4 of FIG. 7. If the parameter S' is greater than the parameter S then, the parameter S is replaced. 'by the parameter S according to the following equation:
  • FIG. 6 represents the algorithm for determining the growth phase followed by the size F of a data transmission window. The execution of this algorithm corresponds to step E5 of FIG. 7.
  • step E1 an acknowledgment is received by the transmitting terminal T1 from the receiving terminal T2.
  • step E2 the size F of the transmission window t k -1 is compared with the parameter S '. If the size F of the transmission window is smaller than the parameter S ', the step E20 is executed. The size F of the transmission window t k is then F (tk-i) + ( ⁇ + 1). This corresponds to the first phase of growth ⁇ .
  • step E3 is executed.
  • the size F of the transmission window t k -1 is then compared with the parameter S. If the size F of the transmission window t k -1 is lower than the parameter S, step E 30 is executed. The size F of the transmission window tk is then F (tk-i) +1. This corresponds to the second growth phase ⁇ n. If the size F of the transmission window is greater than the parameter S, step E31 is executed. The size F of the transmission window t k is then F (tk-i) + 1 / F (tk-i) . This corresponds to the third phase of growth ⁇ m.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

L'invention concerne un mécanisme de régulation du débit d'émission de données dans un terminal connecté à un réseau de communication, mettant en oevre une première régulation du débit des données au niveau de la couche transport du terminal en fonction d'un état de congestion global du réseau de communication; et une deuxième régulation du débit des données au niveau de la couche liaison de données du terminal en fonction d'un état de congestion de ladite couche liaison de données. Ledit procédé comporte au moins une étape de détermination d'au moins un paramètre représentatif d'un état de congestion de la couche liaison de données du terminal, ladite première régulation du débit des données au niveau de ladite couche transport tenant compte dudit paramètre représentatif d'un état de congestion de la couche liaison de données.

Description

Mécanisme de régulation multicouches du débit d'un flux de données TCP dans un réseau haut débit Ethernet FuII Duplex
Le domaine de l'invention est celui des réseaux de communication en mode paquets. On rappelle qu'un réseau de communication est une structure hétérogène tant au niveau des supports utilisés pour acheminer les données (paires de cuivre, fibres optiques, radiofréquences), qu'au niveau de la bande passante disponible, du débit des données ou encore des protocoles mis en œuvre.
L'hétérogénéité des réseaux de communication a pour conséquence de générer des congestions sur le réseau. Lorsque le réseau est congestionné, cela signifie que plusieurs trames de données sont entrées en collisions, entraînant la perte des informations qu'elles transportent. Dans les réseaux en mode paquet, les congestions se produisent lorsqu'un chemin véhiculant les paquets est composé de segments ayant des débits différents. Une congestion est un phénomène gênant, car il oblige à réémettre les données perdues et ralentit de manière significative le temps d'acheminement des données vers le terminal destinataire. Il est important de limiter ce phénomène afin d'améliorer la qualité de service des réseaux de communication.
Afin de palier à cet inconvénient, on s'efforce d'utiliser des protocoles de transports fiables, qui sont capables de détecter des congestions sur le réseau et d'adapter leurs procédures d'émission de données en conséquence, tout en s'assurant de la bonne réception des données par le terminal destinataire. Le protocole TCP (Transmission Control Protocol) est un exemple de protocole de transmission fiable. La figure 1 représente de façon schématique une connexion réalisée entre deux terminaux Ti et T2 distants utilisant le protocole TCP. Sur cette figure, chaque terminal est représenté avec trois de ses couches protocolaires : la couche transport, comme par exemple la couche TCP, la couche réseau, comme par exemple la couche IP et la couche liaison de données, comme par exemple la couche MAC. Les couches protocolaires représentées sur les figures correspondent aux couches protocolaires définies par le modèle OSI (Open Systems Interconnection). Des terminaux intermédiaires Si et S2 sont également représentés. Ces terminaux Si et S2 sont disséminés sur le réseau et sont, par exemple, des commutateurs Ethernet ou des routeurs.
La connexion établie entre les deux terminaux Ti et T2 au moyen du protocole TCP est schématisée sur la figure 1 par une double flèche A reliant la couche transport des deux terminaux. Le protocole TCP comprend, classiquement, un mécanisme de régulation du débit d'émission des données en fonction d'un état de congestion global du réseau, ainsi qu'un mécanisme de retransmission des données perdues. Le protocole TCP perçoit une congestion via la perte d'un paquet. Ainsi lorsque le mécanisme de régulation du débit d'émission des données est informé de la survenue d'une congestion, le débit d'émission de la couche transport du terminal émetteur, ici le terminal T-I, est diminué afin d'éviter l'amplification du phénomène de congestion mais également afin d'éviter la perte des données. Le contrôle du débit d'émission est réalisé grâce à une fenêtre glissante dont la taille varie en fonction de l'état de congestion global du réseau. La fenêtre d'émission, contient les octets que le terminal émetteur T1 peut transmettre entre deux instants tk et tk+i-
Néanmoins, si des données ont été perdues, celles-ci sont réémises par le mécanisme de retransmission des données.
De même, afin de réguler le débit d'émission des données sur le réseau, de manière locale, les différents terminaux T-i, T2, S-i, et S2 disséminés sur le réseau et sollicités afin d'acheminer les données utilisent des protocoles de régulation du débit d'émission de la couche liaison de données. Cette régulation du débit d'émission est une régulation locale puisqu'elle intervient entre deux terminaux consécutifs sur le réseau tels que les terminaux T1 et S1. Cette régulation est représentée sur la figure 1 par une double flèche B. Un exemple de protocole permettant de réguler le débit d'émission des données au niveau de la couche liaison de données est le protocole 802.3x défini par NEEE (Institute of Electrical and Electronics Engineers). Sous cette appellation, I1IEEE définit dans la couche MAC un contrôle de flux entre deux terminaux connectés à chaque extrémité d'un même lien Ethernet full-duplex. Un lien Ethernet Full-duplex est un lien bidirectionnel simultané utilisant le protocole de gestion de canal Ethernet pour transmettre des données entre deux machines. Ainsi, lorsque la mémoire tampon d'un premier terminal, ici le terminal S1 par exemple, se remplit au-delà d'un seuil appelé seuil XOFF, celui-ci transmet une trame XOFF. Cette trame stoppe l'émission du terminal en vis-à-vis, ici, le terminal T1. Le nombre d'octets contenus dans la mémoire tampon du terminal S1 diminue alors., jusqu'à atteindre un seuil appelé seuil XON à partir duquel le terminal S1 transmet une trame XON au terminal T1 qui réactive son émission. Bien que l'utilisation du protocole TCP permette d'éviter la perte de données et limite l'amplification des phénomènes de congestions intervenant sur le réseau, une connexion ente deux terminaux telle que décrite à la figure 1 n'offre pas un débit d'émission satisfaisant au regard des volumes de données échangées ainsi que de la demande en bande passante toujours plus grande.
Afin de s'adapter à la demande croissante de bande passante, des réseaux Ethernet sont couramment déployés par les opérateurs en télécommunications en raison de la maturité et du coût de la technologie, les débits proposés allant de 10 Mb/s à 1 Giga bits/s. La figure 2 représente de façon schématique une connexion réalisée entre deux terminaux Ti et T2 distants utilisant une version du protocole TCP modifiée et adaptée aux réseaux Ethernet. Dans cette version modifiée du protocole TCP, présentée dans l'article intitulé « A case for queue-to-queue, back pressure-based congestion control for grid network » de M. Herbert et P. Vicat-Blanc/Primet, le protocole TCP ne comprend plus que le mécanisme de retransmission des données perdues. Dans cette réalisation, le mécanisme de régulation du débit d'émission des données du protocole TCP est supprimé. Le seul mécanisme de régulation du débit d'émission des données proposé dans cette réalisation est le mécanisme de régulation de la couche liaison de données représenté par une double flèche C sur la figure 2. La régulation du débit d'émission des données est alors une régulation locale et non plus globale.
Bien que cette réalisation améliore le débit d'émission des données sur le réseau par rapport à la réalisation de la figure 1 , elle ne fonctionne que pour des réseaux Ethernet full-duplex de bout en bout. Ainsi lorsque les données transitent sur un réseau présentant des variations de bande passante liées aux supports utilisés ou aux différents protocoles utilisés, cette technique n'est pas adaptée. Elle suppose également que chaque segment du chemin transportant le flux de données active le contrôle de flux local. La solution proposée dans le cadre de l'invention ne présente pas ces inconvénients de l'art antérieur. En effet, elle repose sur un procédé de régulation du débit d'émission de données dans un terminal connecté à un réseau de communication, mettant en œuvre une première régulation du débit des données au niveau de la couche transport du terminal en fonction d'un état de congestion global du réseau de communication ; et une deuxième régulation du débit des données au niveau de la couche liaison de données du terminal en fonction d'un état de congestion de ladite couche liaison de données.
Selon l'invention, ce procédé comporte au moins une étape de détermination d'au moins un paramètre représentatif d'un état de congestion de la couche liaison de données du terminal, ladite première régulation du débit des données au niveau de ladite couche transport tenant compte dudit paramètre représentatif d'un état de congestion de la couche liaison de données. De cette manière, on améliore le débit d'émission des données au niveau de la couche transport d'un terminal d'émission en réalisant une interconnexion entre les couches liaison de données et transport de ce terminal. Cette solution n'a jamais été envisagée dans l'art antérieur. En effet, dans l'art antérieur, le débit des données est géré couche protocolaire par couche protocolaire sans se soucier de l'état de congestion des couches inférieures. L'homme du métier a en effet toujours considéré que cela aurait rendu les dialogues entre les différentes couches protocolaires très complexes et aurait, de fait, ralenti l'émission des données sur le réseau. En outre, cette approche couche par couche est préconisée dans les normes. Allant à rencontre de ces préjugés de l'homme du métier, les inventeurs de la présente demande ont, au contraire, constaté que l'interaction entre les couches liaison de données et transport offre une meilleure réactivité et une meilleure adaptabilité à la nature du réseau situé en aval du terminal d'émission, au mécanisme de régulation de l'émission des données.
Plus précisément, un objectif de l'invention est d'améliorer le débit d'émission de données d'un terminal mettant en œuvre :
- une première régulation du débit des données au niveau de sa couche transport, en fonction d'un état de congestion global du réseau,
- une deuxième régulation du débit d'émission des données au niveau de la couche liaison de données, en fonction d'un état de congestion cette dernière, et ce quel que soit le type de réseau auquel il est connecté. Notamment dans un exemple particulier d'application, l'invention a pour objectif de proposer une telle technique qui permette d'améliorer le débit d'une connexion TCP pour un terminal connecté à un réseau Ethernet full-duplex effectuant un contrôle de flux au niveau MAC. Elle s'applique notamment, mais pas exclusivement, au cas où une telle connexion TCP transite via un réseau Ethernet full-duplex, puis via un réseau quelconque pouvant perdre des paquets.
Selon une caractéristique de l'invention, la première régulation repose sur une variation de la taille d'une fenêtre d'émission des données, selon deux phases de croissance distinctes comprenant une première phase au cours de laquelle la taille de la fenêtre d'émission des données croît selon une première loi de variation exponentielle, et une deuxième phase au cours de laquelle la taille de la fenêtre d'émission des données croît selon une loi de variation linéaire. Lorsque ledit paramètre satisfait au moins un critère de non- congestion, la solution de l'invention introduit une troisième phase de croissance de la taille de ladite fenêtre au cours de laquelle la taille de ladite fenêtre croît selon une deuxième loi de variation exponentielle de coefficient de croissance supérieur au coefficient de croissance de la première phase.
En introduisant cette nouvelle phase de croissance rapide de la taille de la fenêtre d'émission lorsque l'état de congestion de la couche liaison de données le permet, on améliore le débit d'émission du terminal et optimise l'utilisation des ressources.
Selon une autre caractéristique de l'invention, la valeur du coefficient de croissance de la loi de variation de la troisième phase est fonction d'un état de congestion global du réseau.
Ceci permet d'adapter la croissance de la taille de la fenêtre d'émission des données à l'état de congestion du réseau. Ainsi, les ressources sont utilisées de façon optimum.
Selon une autre caractéristique de l'invention, le paramètre représentatif d'un état de congestion de la couche liaison de données correspond à la quantité maximale d'octets que la couche liaison de données peut transmettre pendant un intervalle de temps déterminé. Lorsque la taille de la fenêtre d'émission des données est inférieure audit paramètre, la taille de la fenêtre d'émission des données suit la deuxième loi de variation exponentielle de la troisième phase de croissance.
En faisant dépendre les variations de la taille de la fenêtre d'émission des données de l'état de congestion de la couche liaison de données, on permet une optimisation des ressources du terminal d'émission. En effet, lorsque l'état de congestion global du réseau est tel que la régulation au niveau de la couche transport autorise une augmentation de la taille de la fenêtre d'émission des données, celle-ci est pondérée en fonction de l'état de congestion de la couche liaison de données. Seules sont émises par la couche transport les données pouvant être gérées par la couche liaison de données.
Ainsi, on évite un engorgement des mémoires tampons du terminal d'émission.
Selon une caractéristique de l'invention, on évalue également un paramètre représentatif d'une bande passante disponible sur ledit réseau, correspondant à une quantité maximale d'octets que peut transporter un canal entre ledit terminal et un terminal récepteur desdites données. Ce paramètre constitue un seuil conditionnant un passage de la taille de la fenêtre d'émission de ladite première phase de croissance, lorsque la taille est inférieure audit seuil à ladite deuxième phase de croissance, lorsque ladite taille est supérieure audit seuil. Le débit d'émission des données prend en compte l'état de la couche liaison de données permettant ainsi une meilleure utilisation des ressources. Ceci permet d'avoir un débit d'émission des données élevé même lorsque que la couche liaison de données est congestionnée.
Selon une caractéristique de l'invention, le paramètre représentatif d'un état de congestion de la couche liaison de données et/ou le paramètre représentatif de la bande passante disponible sur le réseau sont déterminés de façon récurrente.
Ceci permet d'adapter le débit de la couche transport aux possibilités de la couche liaison de données de façon dynamique. Ainsi, les données sont toujours émises avec un débit optimum en regard des capacités du terminal d'émission et de l'état de congestion du réseau de communication. Ceci permet d'améliorer la réactivité du procédé ainsi qu'une meilleure utilisation des ressources. Selon une caractéristique de l'invention, la durée séparant deux déterminations consécutives du paramètre représentatif d'un état de congestion de la couche liaison de données et/ou du paramètre représentatif de la bande passante disponible sur le réseau est fonction dudit état de congestion global du réseau de communication. La détermination de ces paramètres est conditionnée par la réception d'un triplet {XOFF, XON, XOFF} pour le paramètre représentatif d'un état de congestion de la couche liaison de données et la réception d'un acquittement par la couche transport du terminal émetteur pour paramètre représentatif de la bande passante disponible sur le réseau. Selon une caractéristique de l'invention, on impose que le paramètre représentatif d'un état de congestion de la couche liaison de données soit inférieur ou égal au paramètre représentatif de la bande passante disponible sur le réseau.
Ceci permet d'offrir une interopérabilité entre plusieurs protocoles de transport déjà existants et l'invention. Ainsi, le déploiement de l'invention dans un réseau est facilité.
Selon une autre caractéristique de l'invention, ledit terminal émetteur est un serveur TCP, ladite première régulation est un contrôle de flux TCP entre ledit serveur et un client TCP, et ladite deuxième régulation est un contrôle de flux de type 802.3x réalisé au niveau de la couche MAC dudit serveur, entre ledit serveur et ledit client ou un équipement intermédiaire dudit réseau connecté audit serveur par un lien Ethernet FuII Duplex.
L'invention concerne également un terminal d'émission de données connecté à un réseau de communication, comprenant des premiers moyens de régulation du débit des données au niveau de la couche transport dudit terminal d'émission en fonction d'un état global de congestion du réseau de communication, des seconds moyens de régulation du débit des données au niveau de la couche liaison de données dudit terminal d'émission en fonction d'un état de congestion de ladite couche liaison de données.
Ce terminal comprend, en outre, des moyens de détermination d'un paramètre représentatif d'un état de congestion de ladite couche liaison de données, lesdits premiers moyens de régulation tiennant compte dudit paramètre représentatif d'un état de congestion de la couche liaison de données.
L'invention concerne encore un programme d'ordinateur comprenant des instructions de code de programme pour l'exécution des étapes du procédé tel que décrit précédemment lorsque ledit programme est exécuté par un processeur. L'invention concerne enfin un système de communication entre un terminal serveur et un terminal client au travers d'un réseau de communication, ledit système comprenant également au moins un équipement intermédiaire situé entre lesdits terminaux client et serveur, ledit terminal serveur comprenant des premiers moyens de régulation du débit des données au niveau de la couche transport dudit terminal serveur, en fonction d'un état de congestion global du réseau de communication entre ledit terminal serveur et ledit terminal client, et des seconds moyens de régulation du débit des données au niveau de la couche liaison de données dudit terminal serveur en fonction d'un état de congestion de la couche liaison de données entre le terminal serveur et ledit équipement intermédiaire.
Dans un tel système, ledit terminal serveur comporte des moyens de détermination d'un paramètre représentatif d'un état de congestion de ladite couche liaison de données, et ledit paramètre représentatif d'un état de congestion de la couche liaison de données est pris en compte par les premiers moyens de régulation dudit terminal serveur. D'autres caractéristiques et avantages apparaîtront à la lecture de modes de réalisation préférés décrits en référence aux dessins dans lesquels :
- la figure 1 représente de façon schématique une connexion entre deux terminaux distants réalisée au moyen du protocole TCP selon un premier art antérieur,
- la figure 2 représente de façon schématique une connexion entre deux terminaux distants réalisée au moyen d'une version modifiée du protocole TCP selon un deuxième art antérieur,
- la figure 3 représente de façon schématique une connexion entre deux terminaux distants réalisée au moyen d'une version modifiée du protocole TCP selon l'invention,
- la figure 4 représente de façon schématique le principe de fonctionnement du mécanisme de régulation du débit d'émission des données au niveau de la couche liaisons de données selon l'invention, - la figure 5 est un diagramme représentant les trois phases de variation de la taille d'une fenêtre d'émission des données selon l'invention,
- la figure 6 représente l'algorithme de détermination de la loi de variation de la taille d'une fenêtre d'émission en fonction du paramètre représentatif d'un état de congestion de la couche liaison de données ainsi que du paramètre représentatif de la bande passante disponible,
- la figure 7 représente schématiquement les principales étapes exécutées par un programme d'ordinateur comprenant des instructions de code pour l'exécution du procédé selon l'invention.
La figure 3 représente une connexion réalisée entre deux terminaux distants T-i, T2 au moyen d'un protocole de transport fiable. Dans l'exemple de réalisation décrit ce protocole de transport est le protocole TCP.
Sur cette figure, les deux terminaux Ti et T2 échangent des données au travers d'un réseau de communication. Cet échange est matérialisé par les différentes flèches A1 et B reliant les différents terminaux entre eux. Le terminal Ti est un terminal émetteur de données et le terminal T2 est un terminal récepteur de données. Ce réseau de communication peut être un réseau à support filaire, ou un réseau radiofréquence. Chaque terminal T-i, T2 est représenté avec trois de ses couches protocolaires définies selon le modèle OSI. Les couches représentées sont les couches protocolaires transport, TCP, réseau, IP et liaison de données, MAC. Sur cette figure, sont également représentés des terminaux intermédiaires Si et S2 ainsi que leur couche protocolaire MAC. Ces terminaux sont par exemple des commutateurs Ethernet, des routeurs ou tout autre équipement réseau situés sur le chemin entre les terminaux T1 et T2.
Dans cette réalisation, le protocole TCP comporte un mécanisme de régulation du débit d'émission en fonction d'un état de congestion global du réseau ainsi qu'un mécanisme de retransmission des données perdues comme décrit précédemment en relation avec la figure 1 de l'art antérieur. Ceci est représenté sur la figure 3 par double la flèche A1 reliant les couches TCP des deux terminaux.
De même, le débit d'émission des données au niveau de la couche protocolaire MAC est régulé au moyen de protocoles de régulation adaptés (voir figure 1 ). Cette régulation est schématisée sur la figure 3 par les doubles flèches B reliant les couches MAC de deux terminaux successifs, tels que Ti et Si. Dans l'exemple de réalisation décrit, le protocole de régulation est le protocole 802.3x.
En effet, dans l'exemple décrit ici, le débit d'émission de la couche MAC entre le terminal émetteur Ti et le premier terminal intermédiaire Si rencontré sur le réseau est régulé au moyen d'un protocole de régulation du débit d'émission de données de la couche MAC qui est le protocole 802.3x. Ce protocole peut être ou non utilisé entre les autres terminaux, S1 , S2, etc. situés sur le chemin reliant T1 à T2. Sur la figure 3, on voit également que les couches protocolaires MAC et TCP du terminal émetteur Ti échangent des informations entre elles. Cet échange d'informations est matérialisé par une double flèche D sur la figure 3.
L'échange d'informations entre les couches protocolaires TCP et MAC du terminal émetteur Ti consiste en la transmission de données concernant un état de congestion de la couche MAC à la couche TCP. Ces données sont ensuite utilisées par le mécanisme de régulation du débit d'émission des données en fonction d'un état de congestion global du réseau du protocole TCP. Ces données se présentent sous la forme d'un paramètre représentatif d'un état de congestion de la couche MAC S'.
Les phases de calcul conduisant à la détermination du paramètre représentatif d'un état de congestion de la couche MAC S' sont décrites dans l'exemple particulier où le terminal émetteur Ti est connecté à un terminal intermédiaire Si au moyen d'un lien Ethernet Full-Duplex permettant ainsi l'utilisation du protocole 802.3x. Ces différentes phases de calcul correspondent à l'exécution l'étape E1 telle que représentée à la figure 7.
Le paramètre S' correspond à la quantité maximale d'octets N que la couche MAC du terminal émetteur Ti peut transmettre pendant un intervalle de temps Δt. Afin de déterminer le paramètre S', le protocole 802.3x qui permet de réguler le débit d'émission des données au niveau local est mis en œuvre de la manière suivante : à un instant t1 la couche MAC du terminal émetteur Ti reçoit une information en provenance du terminal intermédiaire S-i, qui lui est directement consécutif sur le réseau, lui demandant de stopper l'envoi des données. Cette information se présente sous la forme d'une trame XOFF conforme au protocole 802.3x.
A un instant t2 la couche MAC du terminal émetteur Ti reçoit une information en provenance du terminal Si lui autorisant l'envoi des données. Cette information se présente sous la forme d'une trame XON. L'intervalle de temps Δt correspond à la durée qui s'est écoulée entre les instants t1 et t2.
Au cours de cet intervalle de temps Δt, des mémoires tampons de la couche MAC du terminal émetteur Ti accumulent au plus M octets de données.
La quantité N correspond au nombre d'octets de données émis sur le réseau par le terminal intermédiaire Si au cours de l'intervalle de temps Δt, soit : RxΔt (EQ1 ), où R est le débit du réseau situé en aval du terminal intermédiaire S-i, c'est-à-dire le réseau qui relie les terminaux Si et S2 sur la figure 3.
A un instant t3, la couche MAC du terminal émetteur Ti reçoit une information en provenance du terminal intermédiaire Si lui demandant de stopper l'envoi des données. Cette information se présente sous la forme d'une trame XOFF. Au cours d'un intervalle de temps Δt1 correspondant à la durée qui s'est écoulée entre les instants t2 et t3, la couche MAC du terminal émetteur Ti transmet au plus M1 octets de données vers le terminal intermédiaire Si.
Ainsi, la quantité d'octets N est telle que N = (PxR)xΔt' (EQ2), où P est le débit du lien Ethernet Full-Duplex reliant le terminal émetteur Ti au terminal intermédiaire S-i.
On déduit des équations EQ1 et EQ2 que : N = (P)/((1/ Δt1) + (1/ Δt) (EQ3). Si Δt > Δt1, alors N > (PxΔt')/2. Si Δt1 > Δt, alors N > (Px Δt)/2.
La valeur du paramètre S' à l'instant t3 est alors : S'(t3) = (Px min((t2- 11 ), (t3- 12)))/2 (EQ4)
Cette dernière équation possède deux caractéristiques avantageuses : son calcul requiert moins de puissance de calcul que celui de l'équation (EQ3), ainsi le processeur du terminal émetteur n'est pas saturé et peut gérer d'autres tâches, et elle permet d'obtenir une valeur du paramètre S' plus petite que le nombre d'octets de données N. Par conséquent, elle minimise les pertes de données.
L'équation EQ4 signifie que le paramètre S' est fonction des intervalles de temps Δt et Δt'. La valeur du paramètre S' est actualisée après chaque réception par la couche MAC du terminal émetteur T1 d'une séquence de trames {XOFF, XON, XOFF}, cette séquence de trames correspond à la mise en œuvre du protocole 802.3x entre le terminal émetteur T1 et le terminal intermédiaire S1. La figure 4 représente une mémoire tampon M de la couche liaisons de données du terminal intermédiaire Si impliquée dans la mise en œuvre du mécanisme de régulation local du débit d'émission des données conformément au protocole 802.3x. La mémoire tampon M représentée présente un seuil de remplissage de niveau bas L et un seuil de remplissage de niveau haut H.
Ainsi lorsque le terminal émetteur Ti émet des données à destination du terminal intermédiaire S-i, la mémoire tampon du terminal intermédiaire Si accumule les données jusqu'à ce que le nombre d'octets correspondant au volume de données accumulées atteigne le seuil de niveau haut H. Lorsque cet événement se produit, la couche MAC du terminal intermédiaire Si émet une trame XOFF à destination de la couche MAC du terminal émetteur T-i. A réception de cette trame XOFF, la couche MAC du terminal émetteur cesse l'envoi de données à destination du terminal intermédiaire Si.
De même, lorsque le nombre d'octets correspondant au volume des données accumulées atteint le seuil de niveau bas L, la couche MAC du terminal intermédiaire Si émet une trame XON à destination de la couche MAC du terminal émetteur T-i. A réception de cette trame XON, la couche MAC du terminal émetteur Ti reprend l'émission de données à destination du terminal intermédiaire S-i. Cette mise à jour du paramètre S' est un phénomène récurrent qui est fonction d'un état de congestion global du réseau.
Ainsi à chaque réception d'une séquence de trames {XOFF, XON, XOFF} par la couche MAC du terminal émetteur T-i, le paramètre S' est mis à jour. Afin d'éviter la survenue d'un mécanisme appelé "famine de la mémoire tampon", on initialise le paramètre S' à l'infini lors de l'ouverture de la connexion entre le terminal émetteur et le terminal récepteur et on positionne le paramètre S' à l'infini si il est nul dans l'équation (EQ4).
Une fois le paramètre représentatif d'un état de congestion de la couche MAC S' déterminé, celui-ci est transmis à la couche transport du terminal émetteur afin d'être utilisé par le mécanisme de régulation du débit d'émission des données en fonction d'un état de congestion global du réseau du protocole de transport. Ceci correspond à l'étape E2 de la figure 7.
La régulation du débit d'émission des données par le protocole TCP est réalisée au moyen d'une fenêtre glissante d'émission dont la taille F, exprimée en octets, varie en fonction d'un état de congestion global du réseau. Une fenêtre d'émission des données est définie par sa taille F en octets mais également par son numéro de séquence.
La figure 5 représente les variations de la taille F de la fenêtre d'émission des données en fonction du nombre de messages d'acquittement reçus par le protocole TCP. En effet, afin de s'assurer que des données émises par le terminal émetteur Ti à destination du terminal récepteur T2 ont bien été reçues par celui-ci, le terminal récepteur T2 émet à destination du terminal émetteur T1 un message d'acquittement. Si aucun message d'acquittement n'est reçu par le terminal émetteur T-i, le protocole TCP comprend que les données ont été perdues. Le protocole TCP procède alors à la réémission des données perdues.
Sur cette figure 5, on voit que la taille F de la fenêtre d'émission des données suit trois phases de croissance distinctes φι, φn et φm. Les deux premières phases de croissance φi et φn de la taille de la fenêtre F d'émission des données sont des phases de croissance exponentielles, la troisième phase de croissance φm, quant à elle, est une phase de croissance linéaire. L'existence de ces différentes phases de croissance de la taille F de la fenêtre d'émission des données permet d'adapter le débit d'émission des données de la couche transport à un état de congestion global du réseau permettant ainsi une meilleure utilisation des ressources du terminal émetteur T-i, ainsi qu'un meilleur acheminement des données sur le réseau.
Ainsi à la création de la connexion entre le terminal émetteur Ti et le terminal récepteur T2, la taille F de la fenêtre d'émission des données se trouve dans la première phase de croissance φι. Au cours de cette phase de croissance, la taille de la fenêtre d'émission des données croît selon une loi de variation exponentielle de coefficient de croissance α.
Le coefficient de croissance α varie dans un intervalle [αmin, αmax]. Pour chaque nouvelle fenêtre α est multiplié par 2. Lorsque des données sont perdues, c'est-à-dire lorsqu'aucun acquittement en provenance du terminal récepteur T2 n'est reçu par la couche TCP, le coefficient de croissance α est divisé par 2. Dans un mode de réalisation particulier, αmin vaut 4 et αmax vaut 32. La transition entre la première phase de croissance φi et la deuxième phase de croissance φn intervient lorsque la taille F de la fenêtre d'émission des données atteint un premier seuil. Ce premier seuil correspond au paramètre représentatif d'un état de congestion de la couche MAC S'.
Lorsque le seuil S' est dépassé, la taille F de la fenêtre d'émission des données croît selon la loi de variation de la deuxième phase φn de croissance. Cette loi de variation est une loi exponentielle de coefficient de croissance égal à 2. Afin de pouvoir distinguer cette deuxième phase de croissance exponentielle de la première précédemment décrite, on impose que le coefficient α soit toujours strictement supérieur à 2. La transition entre la deuxième phase de croissance φM et la troisième phase de croissance φm intervient lorsque la taille F de la fenêtre d'émission des données atteint un deuxième seuil. Ce deuxième seuil correspond à au paramètre représentatif de la bande passante disponible sur le réseau S. Lorsque le seuil S est dépassé, la taille F de la fenêtre d'émission des données croît selon la loi de variation de la troisième phase φMι de croissance. Cette loi de variation est une loi linéaire.
Le calcul du paramètre S est fonction de la bande passante disponible sur un canal du réseau, un canal étant un chemin entre le terminal émetteur Ti et le terminal récepteur T2. Le paramètre S représente le nombre maximal d'octets que peut transporter un canal à l'instant t. La détermination du paramètre S correspond à l'étape E3 de la figure 7.
Lorsque le paramètre représentatif de la bande passante disponible sur le réseau S est trop grand par rapport au volume de données en octets que peut transmettre le canal, une grande partie de celles-ci sont perdues.
Lorsque le paramètre S est trop petit par rapport à la bande passante du canal, la deuxième phase de croissance φM de la taille F de la fenêtre d'émission des données démarre trop tôt. Le terminal émetteur T1 met, alors, une longue période de temps avant de remplir la bande passante disponible. Cette durée est d'autant plus grande que le délai aller-retour RTT entre le terminal émetteur Ti et le terminal récepteur T2 est grand.
Le paramètre S est donné par l'équation EQ6 : S(t) = D(t)xrtt(t) (EQ6).
Dans cette équation, D(t) correspond au débit de la couche transport à l'instant t et rtt(t) correspond au délai aller-retour de la connexion établie entre le terminal émetteur Ti et le terminal récepteur T2 à l'instant t.
A un instant tn, le numéro de séquence d'une fenêtre d'émission des données est égal à n. A un instant tm, le numéro de séquence de la même fenêtre d'émission des données est égal à m.
A l'instant tm, le débit de la connexion entre le terminal émetteur Ti et le terminal récepteur T2 est égal à : D(tm) = (m -n)/(tm -tn) (EQ8).
A chaque RTT, une valeur du paramètre S(t) est obtenue selon l'équation (EQ9) :
S(tm) = D(Un)X rtt(tm) (EQ9)
Dans l'équation EQ9, si l'on choisit une valeur minimale du RTT, les pertes de données seront minimisées. L'équation EQ9 s'écrit alors :
S(tm) = D(Un)X rttmin(tm) (EQ10)
La valeur de S(t) est actualisée tous les pxRTT, p étant un nombre pair choisi dans l'intervalle [pmin, pmaχ]- Dans un mode de réalisation particulier, pmin vaut 1 et Pmaxvaut 8.
Le paramètre vaut alors S(t, p) = 1/px(∑P D(tP)* rttmin(tp)) (EQ11 ).
Le choix de p est fonction d'un état de congestion global du réseau: si des données sont perdues, la valeur de p est immédiatement multipliée par 2.
Lorsque tous les acquittements correspondant aux données envoyées dans une même fenêtre d'émission sont reçus, la valeur de p est divisée par 2. Cela permet de maintenir la réactivité du mécanisme.
La mise à jour du paramètre S est un phénomène récurrent qui est fonction d'un état de congestion global du réseau. Les processus de détermination des paramètres S' et S sont asynchrones et indépendants l'un de l'autre. A chaque réception d'un acquittement par le terminal émetteur T-i, le paramètre S' mémorisé au niveau de la couche MAC est envoyé vers la couche transport. Ce paramètre peut être inchangé depuis la réception de l'acquittement précédent.
Afin de conserver l'interopérabilité entre des versions antérieures des protocoles de transport utilisés dans certains terminaux et l'invention, le paramètre S'(t) doit être inférieur ou égal au paramètre S(t). Cette relation doit être vérifiée quel que soit l'instant t.
Ainsi, à réception de chaque nouvel acquittement, le paramètre S' est comparé au paramètre S. Ceci correspond à l'étape E4 de la figure 7. Si le paramètre S' est plus grand que le paramètre S alors, on remplace le paramètre S' par le paramètre S conformément à l'équation suivante :
S'(t) = min(S'(t), S(t)).
Lorsque le paramètre S' est égal au paramètre S, la deuxième phase de croissance φn est supprimée. Cela signifie qu'il n'y a pas de congestions sur le réseau. La figure 6 représente l'algorithme de détermination de la phase de croissance suivie par la taille F d'une fenêtre d'émission des données. L'exécution de cet algorithme correspond à l'étape E5 de la figure 7.
Au cours d'une étape E1 , un acquittement est reçu par le terminal émetteur T1 en provenance du terminal récepteur T2. Au cours d'une étape E2, on compare la taille F de la fenêtre d'émission tk-i au paramètre S'. Si la taille F de la fenêtre d'émission est inférieure au paramètre S', l'étape E20 est exécutée. La taille F de la fenêtre d'émission tk vaut alors F(tk-i)+(α+1 ). Ceci correspond à la première phase de croissance φι.
Si la taille F de la fenêtre d'émission est supérieure au paramètre S', l'étape E3 est exécutée. On compare alors la taille F de la fenêtre d'émission tk-i au paramètre S. Si la taille F de la fenêtre d'émission tk-i est inférieure au paramètre S, l'étape E30 est exécutée. La taille F de la fenêtre d'émission tk vaut alors F(tk-i)+1. Ceci correspond à la deuxième phase de croissance φn. Si la taille F de la fenêtre d'émission est supérieure au paramètre S, l'étape E31 est exécutée La taille F de la fenêtre d'émission tk vaut alors F(tk-i)+1/F(tk-i). Ceci correspond à la troisième phase de croissance φm.

Claims

REVENDICATIONS
1. Procédé de régulation du débit d'émission de données dans un terminal connecté à un réseau de communication, mettant en œuvre une première régulation du débit des données au niveau de la couche transport du terminal en fonction d'un état de congestion global du réseau de communication ; et une deuxième régulation du débit des données au niveau de la couche liaison de données du terminal en fonction d'un état de congestion de ladite couche liaison de données ; caractérisé en ce que le procédé comporte au moins une étape de détermination d'au moins un paramètre représentatif d'un état de congestion de la couche liaison de données du terminal, et en ce que ladite première régulation du débit des données au niveau de ladite couche transport tient compte dudit paramètre représentatif d'un état de congestion de la couche liaison de données.
2. Procédé de régulation du débit d'émission de données selon la revendication 1 , dans lequel la première régulation repose sur une variation de la taille d'une fenêtre d'émission des données, selon deux phases de croissance distinctes comprenant une première phase au cours de laquelle la taille de la fenêtre d'émission des données croît selon une première loi de variation exponentielle, et une deuxième phase au cours de laquelle la taille de la fenêtre d'émission des données croît selon une loi de variation linéaire, caractérisé en ce que l'on introduit, lorsque ledit paramètre satisfait au moins un critère de non-congestion, une troisième phase de croissance de la taille de ladite fenêtre au cours de laquelle la taille de ladite fenêtre croît selon une deuxième loi de variation exponentielle de coefficient de croissance supérieur au coefficient de croissance de la première phase.
3. Procédé de régulation du débit d'émission de données selon la revendication 2 caractérisé en ce que la valeur du coefficient de croissance de la loi de variation de la troisième phase est fonction d'un état de congestion global du réseau.
4. Procédé de régulation du débit d'émission de données selon l'une des revendications 2 à 3 caractérisé en ce que le paramètre représentatif d'un état de congestion de la couche liaison de données correspond à la quantité maximale d'octets que la couche liaison de données peut transmettre pendant un intervalle de temps déterminé et en ce que lorsque la taille de la fenêtre d'émission des données est inférieure audit paramètre, la taille de la fenêtre d'émission des données suit la deuxième loi de variation exponentielle de la troisième phase de croissance.
5. Procédé de régulation du débit d'émission de données selon l'une quelconque des revendications 1 à 4, caractérisé en ce qu'on évalue également un paramètre représentatif d'une bande passante disponible sur ledit réseau, correspondant à une quantité maximale d'octets que peut transporter un canal entre ledit terminal et un récepteur desdites données, et en ce que ce paramètre constitue un seuil conditionnant un passage de la taille de la fenêtre d'émission de ladite première phase de croissance, lorsque la taille est inférieure audit seuil à ladite deuxième phase de croissance, lorsque ladite taille est supérieure audit seuil.
6. Procédé de régulation du débit d'émission de données selon l'une des revendications précédentes caractérisé en ce que le paramètre représentatif d'un état de congestion de la couche liaison de données et/ou le paramètre représentatif de la bande passante disponible sur le réseau sont déterminés de façon récurrente.
7. Procédé de régulation du débit d'émission de données selon la revendication 6 caractérisé en ce que la durée séparant deux déterminations consécutives du paramètre représentatif d'un état de congestion de la couche liaison de données et/ou du paramètre représentatif de la bande passante disponible sur le réseau est fonction dudit état de congestion global du réseau de communication.
8. Procédé de régulation du débit d'émission de données selon l'une quelconque des revendications précédentes, caractérisé en ce qu'on impose que le paramètre représentatif d'un état de congestion de la couche liaison de données soit inférieur ou égal au paramètre représentatif de la bande passante disponible sur le réseau.
9. Procédé de régulation selon l'une quelconques des revendications 1 à 8, caractérisé en ce que ledit terminal est un serveur TCP, en ce que ladite première régulation est un contrôle de flux TCP entre ledit serveur et un client TCP, et en ce que en ce que ladite deuxième régulation est un contrôle de flux de type 802.3x réalisé au niveau de la couche MAC dudit serveur, entre ledit serveur et ledit client ou un équipement intermédiaire dudit réseau connecté audit serveur par un lien Ethernet FuII Duplex.
10. Terminal d'émission de données connecté à un réseau de communication, comprenant des premiers moyens de régulation du débit des données au niveau de la couche transport dudit terminal d'émission en fonction d'un état global de congestion du réseau de communication, des seconds moyens de régulation du débit des données au niveau de la couche liaison de données dudit terminal d'émission en fonction d'un état de congestion de ladite couche liaison de données, caractérisé en ce qu'il comprend, en outre, des moyens de détermination d'un paramètre représentatif d'un état de congestion de ladite couche liaison de données, et en ce que lesdits premiers moyens de régulation tiennent compte dudit paramètre représentatif d'un état de congestion de la couche liaison de données.
11. Programme d'ordinateur comprenant des instructions de code de programme pour l'exécution des étapes du procédé selon l'une des revendications 1 à 8 lorsque ledit programme est exécuté par un processeur.
12. Système de communication entre un terminal serveur et un terminal client au travers d'un réseau de communication, ledit système comprenant également au moins un équipement intermédiaire situé entre lesdits terminaux client et serveur, ledit terminal serveur comprenant des premiers moyens de régulation du débit des données au niveau de la couche transport dudit terminal serveur, en fonction d'un état de congestion global du réseau de communication entre ledit terminal serveur et ledit terminal client, et des seconds moyens de régulation du débit des données au niveau de la couche liaison de données dudit terminal serveur en fonction d'un état de congestion de la couche liaison de données entre le terminal serveur et ledit équipement intermédiaire caractérisé en ce que ledit terminal serveur comporte des moyens de détermination d'un paramètre représentatif d'un état de congestion de ladite couche liaison de données, et en ce que ledit paramètre représentatif d'un état de congestion de la couche liaison de données est pris en compte par les premiers moyens de régulation dudit terminal serveur.
PCT/FR2007/050880 2006-03-06 2007-03-05 Mécanisme de régulation multicouches du débit d'un flux de données tcp dans un réseau haut débit ethernet full duplex WO2007101962A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0650773A FR2898231A1 (fr) 2006-03-06 2006-03-06 Mecanisme de regulation multicouches du debit d'un flux de donnees tcp dans un reseau haut debit ethernet full duplex
FR0650773 2006-03-06

Publications (1)

Publication Number Publication Date
WO2007101962A1 true WO2007101962A1 (fr) 2007-09-13

Family

ID=37508297

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2007/050880 WO2007101962A1 (fr) 2006-03-06 2007-03-05 Mécanisme de régulation multicouches du débit d'un flux de données tcp dans un réseau haut débit ethernet full duplex

Country Status (2)

Country Link
FR (1) FR2898231A1 (fr)
WO (1) WO2007101962A1 (fr)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997036410A1 (fr) * 1996-03-25 1997-10-02 Nokia Telecommunications Oy Procede de regulation du flux de donnees entre couches d'un protocole de communications par couches
EP0905950B1 (fr) * 1997-09-25 2003-07-09 Sony Corporation Procédé de communication et terminal de communication de données avec protocol de communication de données pour contrôle de flux entre les couches

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997036410A1 (fr) * 1996-03-25 1997-10-02 Nokia Telecommunications Oy Procede de regulation du flux de donnees entre couches d'un protocole de communications par couches
EP0905950B1 (fr) * 1997-09-25 2003-07-09 Sony Corporation Procédé de communication et terminal de communication de données avec protocol de communication de données pour contrôle de flux entre les couches

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
LEE D ET AL: "FLORAX- flow-rate based hop by hop backpressure control for IEEE 802.3X", HIGH SPEED NETWORKS AND MULTIMEDIA COMMUNICATIONS 5TH IEEE INTERNATIONAL CONFERENCE ON JUL. 3-5, 2002, PISCATAWAY, NJ, USA,IEEE, 3 July 2002 (2002-07-03), pages 202 - 207, XP010603024, ISBN: 0-7803-7600-5 *

Also Published As

Publication number Publication date
FR2898231A1 (fr) 2007-09-07

Similar Documents

Publication Publication Date Title
EP1096827B1 (fr) Procédé de mise en conformité à un contrat de trafic d'un flux de paquets d'un réseau de transport de paquets à longueur variable
EP2064853B1 (fr) Procédé d'optimisation du contrôle du trafic dans un réseau de télécommunication par paquets
FR2805112A1 (fr) Procede et unite de controle de flux d'une connexion tcp sur un reseau a debit controle
EP0431438B1 (fr) Procédé de gestion des flux dans un réseau numérique de télécommunication à intégration de services, à large bande, et réseau pour la mise en oeuvre de ce procédé
EP0835010B1 (fr) Système de gestion de trafic et de contrôle d'encombrement pour réseaux à base de paquets
FR2933834A1 (fr) Procede de gestion d'une transmission de flux de donnees sur un canal de transport d'un tunnel, tete de tunnel, produit programme d'ordinateur et moyen de stockage correspondants.
US9363188B2 (en) Cable modem termination system control of cable modem queue length
FR2926939A1 (fr) Procede de transmission de donnees avec anticipation des acquittements, dispositif d'entree, produit programme d'ordinateur et moyen de stockage correspondants
EP3053303B1 (fr) Procede d'abonnement a des flux en provenance de clients multicast
FR2908576A1 (fr) Procede,dispositif et application logicielle d'ordonnancement d'une transmission de paquets d'un flux de donnees
FR2929789A1 (fr) Procede de gestion de mecanismes d'amelioration de transmission de flux de donnees sur un tunnel, produit programme d'ordinateur, moyen de stockage et tete de tunnel correspondants
EP1307016A2 (fr) Procédé de transmission de paquets par l'intermédiaire d'un réseau de télécommunications utilisant le protocole IP
FR2801455A1 (fr) Procede de transmission de flux de donnees sur un reseau atm, et dispositif pour la mise en oeuvre du procede
FR3082386A1 (fr) Adaptation de debit d'une session de communication en voix sur ip
EP2622802A1 (fr) Technique d'obtention par un premier noeud d'une information relative a une congestion d'une route
EP2449727B1 (fr) Dispositif de commande de l'ouverture de sessions, plateforme de service avec un tel dispositif, procédé, programme d'ordinateur et support d'information associés
WO2007101962A1 (fr) Mécanisme de régulation multicouches du débit d'un flux de données tcp dans un réseau haut débit ethernet full duplex
EP3989494A1 (fr) Procede d'agregation et de regulation de messages via un canal de communication bidirectionnel contraint
WO2016203161A1 (fr) Procédé et dispositif de gestion de paquets dans une connexion multi-flux et multi-protocole
EP2815547B1 (fr) Technique de traitement d'un flux de donnees entre un serveur et une entite cliente
WO2020070408A1 (fr) Procédé de préservation d'un débit d'émission de données d'un terminal dans un réseau de communications
FR2935576A1 (fr) Procede de gestion d'une transmission de flux de donnees sur un tunnel multi-canal, tete de tunnel, produit programme d'ordinateur et moyen de stockage correspondants.
FR2826824A1 (fr) Procede et dispositif de construction de trame dans un systeme tdma
Sivarajah Media Transport over the Internet
WO2017093022A1 (fr) Procedes de traitement de paquets de donnees, dispositif, produit programme d'ordinateur, medium de stockage et noeud de reseau correspondants.

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07731697

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07731697

Country of ref document: EP

Kind code of ref document: A1