FR2825546A1 - Packet switching system for constant matrix throughput feeds least filled destinations first - Google Patents

Packet switching system for constant matrix throughput feeds least filled destinations first Download PDF

Info

Publication number
FR2825546A1
FR2825546A1 FR0107210A FR0107210A FR2825546A1 FR 2825546 A1 FR2825546 A1 FR 2825546A1 FR 0107210 A FR0107210 A FR 0107210A FR 0107210 A FR0107210 A FR 0107210A FR 2825546 A1 FR2825546 A1 FR 2825546A1
Authority
FR
France
Prior art keywords
packets
matrix
queues
notifications
switching system
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.)
Pending
Application number
FR0107210A
Other languages
French (fr)
Inventor
Jean Pierre Daniel An Gauthier
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to FR0107210A priority Critical patent/FR2825546A1/en
Publication of FR2825546A1 publication Critical patent/FR2825546A1/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/201Multicast operation; Broadcast operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L12/5602Bandwidth control in ATM Networks, e.g. leaky bucket
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0478Provisions for broadband connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5629Admission control
    • H04L2012/5631Resource management and allocation
    • H04L2012/5632Bandwidth allocation
    • H04L2012/5635Backpressure, e.g. for ABR
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5679Arbitration or scheduling

Abstract

A packet data switching system has a matrix (100) with source (200) and destination (400) queues with dispatch notification circuits (307) linked by switches (301) to multiplexers (300) with priority stored in memory (302) and read by queue selection circuits (309) to ensure that least filled destination queues are fed first.

Description

<Desc/Clms Page number 1> <Desc / Clms Page number 1>

La présente invention concerne un système de commutation de paquets de données, convenant notamment à un équipement de réseau haut débit de télécommunications, permettant de réguler les flux de données en transit entre ses bornes d'entrée et ses bornes de sortie afin de garantir une qualité de service sur lesdits flux.  The present invention relates to a data packet switching system, particularly suitable for high speed telecommunications network equipment, making it possible to regulate the data flows in transit between its input terminals and its output terminals in order to guarantee quality. of service on said flows.

La maîtrise de la qualité de service, appelée communément QoS (Quality Of Service), est un enjeu majeur pour offrir à l'utilisateur des services multimédias (voix, vidéo, données etc...) fédérés par un unique réseau de télécommunications. Elle peut être décrite simplement par des caractéristiques de transfert entre le point d'entrée et le point de sortie d'un réseau ou d'un équipement de commutation : - Une première grandeur est liée au temps de transmission et s'applique aux services temps-réel. Elle se décompose en un temps fixe majoritairement lié à la vitesse de transmission dans les faisceaux optiques ou électriques et un délai variable (gigue) provoquée par la congestion instantanée des paquets sollicitant les mêmes bornes de sortie des équipements de réseau intermédiaires. Elle doit être maîtrisée afin de pouvoir offrir des services interactifs. Ainsi un temps total de transmission supérieur à quelques centaines de millisecondes rend toute conversation téléphonique désagréable voire impraticable. La gigue est aujourd'hui relativement bien maîtrisée dans les matrices de commutation dans la mesure où quelques valeurs admissibles de gigue sont autorisées, ce qui en pratique satisfait la grande majorité des applications.
Quelques files d'attente servies en sortie selon des priorités fixes permettent d'obtenir des résultats satisfaisants : Plus la gigue permise est restreinte, plus la file d'attente associée aura une priorité élevée.
The control of the quality of service, commonly called QoS (Quality Of Service), is a major issue to offer the user multimedia services (voice, video, data, etc.) federated by a single telecommunications network. It can be described simply by transfer characteristics between the entry point and the exit point of a network or switching equipment: - A first quantity is linked to the transmission time and applies to time services -real. It breaks down into a fixed time mainly related to the transmission speed in the optical or electrical beams and a variable delay (jitter) caused by the instantaneous congestion of the packets requesting the same output terminals of the intermediate network equipment. It must be mastered in order to offer interactive services. Thus a total transmission time greater than a few hundred milliseconds makes any telephone conversation unpleasant or even impractical. Jitter is today relatively well controlled in switching matrices insofar as a few allowable jitter values are authorized, which in practice satisfies the vast majority of applications.
A few queues served as output according to fixed priorities allow satisfactory results to be obtained: The more the jitter allowed, the more the associated queue will have a high priority.

- Une deuxième grandeur est liée à la perte de données, laquelle va se traduire par une dégradation du service offert sur une application temps-réel (altération de la voix ou de la vidéo) et non temps-réel par l'augmentation des retransmissions opérées automatiquement par les couches hautes des protocoles (temps de transfert accrus sur des fichiers). Afin d'en maîtriser les effets, des techniques de destruction contrôlée des paquets dans les files d'attente sont alors utilisées conjointement avec des signaux de prévention de saturation (dits de backpressure). Ces derniers, usuellement émis par les matrices ou coeurs de commutation, agissent en rétroaction sur les files d'attente placées à leurs entrées. - A second magnitude is linked to the loss of data, which will result in a degradation of the service offered on a real-time application (alteration of the voice or video) and not real-time by the increase in retransmissions operated automatically by the upper layers of the protocols (increased transfer times on files). In order to control the effects, techniques for the controlled destruction of packets in queues are then used in conjunction with saturation prevention signals (called backpressure signals). The latter, usually issued by switching dies or cores, act in feedback on the queues placed at their entrances.

Une troisième grandeur est liée au débit garanti par le réseau pour rendre viable ou confortable un service donné. Par exemple, tout intemaute a expérimenté le désagrément provoqué par l'absence d'un service minimum se traduisant par le  A third quantity is linked to the speed guaranteed by the network to make a given service viable or comfortable. For example, any Internet user has experienced the inconvenience caused by the absence of a minimum service, resulting in

<Desc/Clms Page number 2><Desc / Clms Page number 2>

gel pur et simple de sa navigation sur Internet. La maîtrise des débits garantis est problématique, particulièrement lorsque des matrices sont utilisées dans les équipements de commutation.    outright freeze on his Internet browsing. Controlling guaranteed rates is problematic, particularly when dies are used in switching equipment.

Le lecteur pourra se reporter au livre Quality of Service in ATM Networks de Natalie Giroux & Sudhakar Ganti paru en 1998 aux éditions Prentice Hall/USA pour se familiariser avec ces notions de QoS et les principaux types de matrices de commutation. Readers can refer to the book Quality of Service in ATM Networks by Natalie Giroux & Sudhakar Ganti published in 1998 by Prentice Hall / USA to familiarize themselves with these notions of QoS and the main types of switching matrices.

La présente invention a pour but principal de pallier ce problème de maîtrise de débits garantis lorsque des matrices de commutation sont mises en oeuvre et a pour objet un système de commutation, convenant notamment à un équipement de réseau de télécommunications, se caractérisant essentiellement en ce qu'il comprend : w une pluralité de bornes d'entrée pour recevoir des flux de paquets sur lesquels sont imposées des contraintes de débit garanti, une pluralité de bornes de sortie pour émettre lesdits flux sur des conduits propres au réseau de télécommunications, w une matrice de commutation apte à transmettre lesdits paquets de ses ports d'entrée vers ses ports de sortie en fonction d'une information de routage contenue dans l'entête desdits paquets, w des blocs d'exécution des fonctions d'entrée dudit équipement de réseau, notamment chargés de la reconnaissance desdits paquets identifiant lesdits flux et de la fourniture de l'information nécessaire au routage desdits paquets au travers de ladite matrice, une pluralité de files d'attente de source recevant chacune un flux de paquets et placée en amont desdits ports d'entrée de ladite matrice, w une pluralité de files d'attente de destination recevant chacune un flux de paquets issu d'un desdits ports de sortie de ladite matrice, . des blocs d'exécution des fonctions de sortie dudit équipement de réseau, notamment chargés de l'ordonnancement des paquets de données sur chacune des bornes de sortie de sorte que la fréquence d'extraction des paquets desdites files d'attente de destination satisfait la contrainte de débit garanti de chacun des flux, . un système de multiplexage des paquets issus desdites files d'attente de source alimentant lesdits ports d'entrée de la matrice, caractérisé en ce qu'il comporte : w des circuits de génération de notifications signalant la sortie des paquets des files d'attente de destination, lesdites notifications étant affectées d'une information de routage permettant leur acheminement vers les circuits de The main object of the present invention is to overcome this problem of controlling guaranteed bit rates when switching matrices are used and relates to a switching system, suitable in particular for telecommunications network equipment, characterized essentially in that '' it includes: w a plurality of input terminals for receiving packet flows on which are guaranteed flow constraints, a plurality of output terminals for transmitting said flows on conduits specific to the telecommunications network, w a matrix switching capable of transmitting said packets from its input ports to its output ports as a function of routing information contained in the header of said packets, w execution blocks of the input functions of said network equipment, in particular responsible for recognizing said packets identifying said flows and providing the information necessary for ro use of said packets through said matrix, a plurality of source queues each receiving a stream of packets and placed upstream of said input ports of said matrix, w a plurality of destination queues each receiving a packet flow coming from one of said output ports of said matrix,. blocks for executing the output functions of said network equipment, in particular responsible for scheduling the data packets on each of the output terminals so that the frequency of extraction of the packets from said destination queues satisfies the constraint guaranteed flow of each flow,. a system for multiplexing packets from said source queues supplying said input ports of the matrix, characterized in that it comprises: w circuits for generating notifications signaling the output of packets from the queues of destination, said notifications being assigned routing information allowing their routing to the circuits of

<Desc/Clms Page number 3><Desc / Clms Page number 3>

mémorisation et d'une information permettant l'identification de leur file d'attente source avec laquelle elles sont associées de manière biunivoque, des circuits de mémorisation permettant le classement desdites notifications, w des circuits de sélection permettant l'élection des notifications prioritaires et la sélection des files d'attente de source désignées par lesdites notifications, . un circuit de commutation desdites notifications issues desdits circuits de génération vers lesdits circuits de mémorisation, L'invention ne fait pas d'hypothèses sur la structure interne de la matrice de commutation de paquets (communément appelée switchingfabric). Par exemple, celle-ci

Figure img00030001

peut être sans mémoire de paquets interne de type crossbar/wormhole (ce terme peut se traduire en français par trou de vers car le tête du paquet commuté est arrivée dans la file de destination alors que la queue se trouve encore dans la file d'attente de source, évoquant ainsi l'image d'un vers), ou avec mémoire de paquets interne de type store and forward (avec une mémoire interne permettant de tamponner les paquets et disposée sur les entrées ou sur les sorties ou partagée entre les entrées/sorties). storage and information allowing the identification of their source queue with which they are associated in a one-to-one manner, storage circuits allowing the classification of said notifications, w selection circuits allowing the election of priority notifications and the selection of the source queues designated by said notifications,. a circuit for switching said notifications from said generation circuits to said storage circuits. The invention makes no assumptions about the internal structure of the packet switching matrix (commonly called switchingfabric). For example, this
Figure img00030001

can be without internal crossbar / wormhole packet memory (this term can be translated into French by wormhole because the head of the switched packet has arrived in the destination queue while the queue is still in the queue source, thus evoking the image of a worm), or with internal packet memory of the store and forward type (with an internal memory for buffering the packets and arranged on the inputs or on the outputs or shared between the inputs / exits).

L'invention n'a pas pour objet le traitement de flux temps-réel, ces derniers doivent donc bénéficier par exemple de niveaux de priorité supérieure, d'une utilisation conventionnelle sur les matrices. De plus, les paquets manipulés peuvent être, de taille fixe auquel cas ils sont usuellement appelés cellules comme avec le protocole haut débit ATM (Asynchronous Transfert Mode) ou de taille variable auquel cas ils sont appelés trames comme avec les protocoles haut débit IP (Internet Protocol) et IEEE 802. x (Ethernet). Le système de commutation objet de l'invention traite indifféremment cellules et trames de données (comme les matrices les plus récentes). The invention does not relate to the processing of real-time flows, the latter must therefore benefit, for example, from higher priority levels, from conventional use on matrices. In addition, the packets handled can be of fixed size in which case they are usually called cells as with the broadband ATM protocol (Asynchronous Transfer Mode) or of variable size in which case they are called frames as with the broadband IP protocols (Internet Protocol) and IEEE 802. x (Ethernet). The switching system which is the subject of the invention indifferently processes cells and data frames (like the most recent matrices).

Les principes mis en oeuvre pour résoudre le problème sont présentés et une forme de réalisation de l'invention est décrite ci-après à titre d'exemple, en référence aux dessins annexés dans lesquels : - La figure 1 montre l'utilisation conventionnelle d'une matrice de commutation, - la figure 2 montre le schéma d'un système de commutation idéal sans matrice,

Figure img00030002

- la figure 3 donne la méthode utilisée de régulation des flux sur un système de commutation conforme à l'invention, - la figure 4 donne le format du paquet transmis au travers du système de commutation, - la figure 5 présente un exemple de système de commutation conforme à l'invention. The principles used to solve the problem are presented and an embodiment of the invention is described below by way of example, with reference to the accompanying drawings in which: - Figure 1 shows the conventional use of a switching matrix, FIG. 2 shows the diagram of an ideal switching system without matrix,
Figure img00030002

- Figure 3 gives the method used to regulate flows on a switching system according to the invention, - Figure 4 gives the format of the packet transmitted through the switching system, - Figure 5 shows an example of a switching according to the invention.

<Desc/Clms Page number 4><Desc / Clms Page number 4>

L'utilisation conventionnelle de la matrice de commutation est représentée figure 1 : Les paquets arrivent par les bornes d'entrée 5011 K du système pour être identifiés (par flux

Figure img00040001

numérotés FI. K, l Q) par les blocs d'exécution des fonctions d'entrée 5001 K Ces derniers peuvent être en charge d'autres tâches comme le contrôle de trafic ou la gestion des files d'attente d'entrée de réception des paquets. Ces files dites de source 200] K, J Q mémorisent les paquets selon leur flux d'appartenance. Il est à noter que le nombre de files d'attente peut être de plusieurs centaines voire milliers. Les paquets sont ensuite introduits par les multiplexeurs 300 !... K dans la matrice 100 sur ces ports d'entrée 1101 K puis extraits des ports de sortie 120 !... L pour être mis dans des files d'attente de sortie dites de destination 400 !... L, 1. M. Les blocs d'exécution des fonctions de sortie 6001 L ordonnancent alors les paquets issus desdites files d'attente de destination vers les bornes de sortie 601 !... L du système de commutation. Les blocs 6001. L peuvent être en charge d'autres tâches comme le lissage de trafic par exemple. The conventional use of the switching matrix is shown in Figure 1: The packets arrive via the 5011 K input terminals of the system to be identified (by flow
Figure img00040001

numbered FI. K, l Q) by the execution blocks of the input functions 5001 K These can be responsible for other tasks such as traffic control or management of packet reception input queues. These so-called source queues 200] K, JQ store the packets according to their membership flow. It should be noted that the number of queues can be several hundreds or even thousands. The packets are then introduced by the multiplexers 300! ... K into the matrix 100 on these input ports 1101 K then extracted from the output ports 120! ... L to be put in so-called output queues destination 400! ... L, 1. M. The execution blocks of the output functions 6001 L then schedule the packets coming from the said destination queues towards the output terminals 601! ... L of the switching. Blocks 6001. L can be in charge of other tasks like smoothing traffic for example.

Selon l'exemple de la figure 1, le problème posé par la matrice apparaît sur un des ports de sortie en 11 : la convergence de flux 10L. w d'un débit total supérieur à celui du port de sortie provoque une congestion. Même en présence de mécanismes de rétroaction conventionnels pour limiter l'introduction globale de paquets sur les ports d'entrée de matrice pour un port de sortie donné, le dispositif d'ordonnancement de paquets disposé sur chacun des ports de sortie de la matrice est trop spartiate et demeure incapable pondérer cette introduction selon le débit garanti de chacun des flux car sans connaissance précise de leurs contraintes individuelles. Il met en oeuvre généralement quelques priorités fixes avec une priorité tournante sur un même niveau de priorité. Il en découle donc une dégradation de la qualité de service même si les blocs 6001 L possèdent les qualités nécessaires pour assurer un débit garanti sur chaque flux. According to the example of FIG. 1, the problem posed by the matrix appears on one of the output ports at 11: the flow convergence 10L. w a total flow higher than that of the outlet port causes congestion. Even in the presence of conventional feedback mechanisms to limit the overall introduction of packets to the matrix input ports for a given output port, the packet scheduling device disposed on each of the matrix output ports is too spartan and remains unable to balance this introduction according to the guaranteed flow of each flow because without precise knowledge of their individual constraints. It generally implements a few fixed priorities with a rotating priority on the same priority level. This therefore results in a degradation of the quality of service even if the 6001 L blocks have the qualities necessary to ensure a guaranteed throughput on each flow.

La figure 2 montre le schéma d'un système de commutation idéal sans congestion à un seul port de sortie s qui aidera le lecteur à comprendre l'idée fondatrice et sous-jacente de l'invention : On s'attache ici à un flux donné porté par une file d'attente quelconque 700u, v avec u élément de l'ensemble [1... K] des ports d'entrée et v élément de l'ensemble [1... Q] des files d'attente. On observe que la quantité de paquets présents dans cette file d'attente n'est pas une information nécessaire et utile pour garantir un débit sur le flux associé. Une simple valeur booléenne d'absence/présence de paquets dans la file d'attente est suffisante au bloc 600s pour remplir ses objectifs de qualité de service, lequel est averti de l'introduction de paquets dans les files d'attente par le lien 602s. La file d'attente 700u, v peut être décomposée en un couple de files d'attente Figure 2 shows the diagram of an ideal congestion-free switching system with a single output port s which will help the reader to understand the founding and underlying idea of the invention: Here we focus on a given flow carried by any queue 700u, v with u element from the set [1 ... K] of input ports and v element from the set [1 ... Q] of the queues. It is observed that the quantity of packets present in this queue is not necessary and useful information to guarantee a throughput on the associated stream. A simple boolean value of absence / presence of packets in the queue is sufficient for the block 600s to fulfill its quality of service objectives, which is notified of the introduction of packets in the queues by the link 602s . The 700u, v queue can be broken down into a couple of queues

<Desc/Clms Page number 5><Desc / Clms Page number 5>

source/destination (200u, v 4005, t) selon la représentation de la figure 1 avec s élément de l'ensemble [1... L] des ports de sortie et t élément de l'ensemble [1... M] des files d'attente

Figure img00050001

de destination : il en découle que si la file d'attente de destination 4005, t contient toujours au moins un paquet alors la valeur booléenne ( d'absence/présence de paquets dans la file d'attente 4005, t) nécessaire et suffisante au bloc 6005 est maintenue idéalement, on peut donc considérer que l'introduction d'une matrice n'a pas d'incidence sur la qualité de service. source / destination (200u, v 4005, t) according to the representation of figure 1 with s element of the set [1 ... L] of the output ports and t element of the set [1 ... M] queues
Figure img00050001

destination: it follows that if the destination queue 4005, t always contains at least one packet then the Boolean value (absence / presence of packets in the queue 4005, t) necessary and sufficient for the block 6005 is ideally maintained, so we can consider that the introduction of a matrix does not affect the quality of service.

L'objectif principal du système de commutation selon l'invention est de faire de sorte que les files d'attente de destination 4001. L, t.. M soient toujours alimentées et donc dans un état non vide (à moins bien sûr que les files de source associées soient vides), pour cela :

Figure img00050002

1) Toute variation négative-c'est à dire toute sortie de paquet d'une file d'attente de destination 4005, t-est compensée au plus tôt par l'extraction et l'émission d'un paquet de la file d'attente de source 200u, v de la part du multiplexeur 300u. Pour cela un message, appelé notification, est renvoyé au multiplexeur 300u pour provoquer cette opération. Cette action s'oppose à la cause qui la produit, de sorte que les débits garantis sur les flux par les blocs 6001. L en aval de la matrice, se trouvent rétro- propagés à son amont. The main objective of the switching system according to the invention is to ensure that the destination queues 4001. L, t .. M are always supplied and therefore in a non-empty state (unless of course the associated source files are empty), for this:
Figure img00050002

1) Any negative variation - i.e. any packet output from a destination queue 4005, t - is compensated as soon as possible by the extraction and transmission of a packet from the queue 200u, v source waiting from multiplexer 300u. For this a message, called notification, is returned to the multiplexer 300u to cause this operation. This action is opposed to the cause which produces it, so that the guaranteed flows on the flows by the blocks 6001. L downstream of the matrix, are back propagated upstream.

2) Le multiplexeur 300u peut avoir à un instant donné une multitude de notifications à traiter et donc de files d'attente de destination à remplir. Il procède donc à un classement sur les notifications de sorte que les files d'attente de destination les moins remplies se trouvent réapprovisionnées en premier. Pour cela, les notifications portent une information de priorité relative au niveau de remplissage de la file d'attente de destination qu'elles représentent. 2) The multiplexer 300u can have, at a given instant, a multitude of notifications to be processed and therefore destination queues to be filled. It therefore ranks on notifications so that the least crowded destination queues are replenished first. For this, the notifications carry priority information relating to the filling level of the destination queue that they represent.

3) La file d'attente de destination agit comme une mémoire cache et pour des flux à haut débit ou très sporadiques, il peut être nécessaire qu'un nombre assez important de paquets soit provisionné dans celle-ci afin de compenser le délai de réapprovisionnement introduit par le multiplexeur 300u et la matrice 100. Une notification de haute priorité, signalant une file d'attente de destination peu remplie (typiquement vide) est alors interprétée par le multiplexeur 300u par l'émission de plusieurs paquets (typiquement 2) pour la file d'attente de destination considérée. Le nombre de paquets, nécessaire et provisionné dans une file d'attente de destination afin que celle-ci ne soit pas jamais vide, augmente en s'ajustant automatiquement et rapidement de manière dédiée selon chaque flux. A contrario, une notification de 3) The destination queue acts as a cache memory and for high speed or very sporadic flows, it may be necessary that a fairly large number of packets be provisioned in order to compensate for the replenishment delay introduced by the multiplexer 300u and the matrix 100. A high priority notification, signaling an unoccupied destination queue (typically empty) is then interpreted by the multiplexer 300u by the transmission of several packets (typically 2) for the destination queue considered. The number of packets, necessary and provisioned in a destination queue so that it is never empty, increases by adjusting itself automatically and quickly in a dedicated manner according to each flow. Conversely, a notification of

<Desc/Clms Page number 6><Desc / Clms Page number 6>

faible priorité, représentative d'une file d'attente de destination bien remplie, entraîne l'émission d'un seul paquet, action satisfaisante selon 1) La figure 3 donne graphiquement la méthode de régulation qui vient d'être introduite. Les paquets d'un flux donné arrivent dans la file d'attente de source 200u, v (identifiée par v et connectée au port u de la matrice) par le lien 502u. Ils ne sont autorisés à sortir que lorsque l'ordonnanceur 309u active l'extraction et l'émission de ceux-ci grâce à la commande 303u qui active le contacteur 20lu, v représenté ici de manière symbolique.  low priority, representative of a busy destination queue, results in the transmission of a single packet, satisfactory action according to 1) FIG. 3 graphically gives the regulation method which has just been introduced. The packets of a given stream arrive in the source queue 200u, v (identified by v and connected to port u of the matrix) by the link 502u. They are only authorized to exit when the scheduler 309u activates the extraction and the emission of these thanks to the command 303u which activates the contactor 20lu, v shown here symbolically.

Lorsqu'un paquet est extrait de la file d'attente de destination 400s, t (identifiée par t et connectée au port s de la matrice), une notification 23 est retournée vers le jeu de files d'attente de notifications 302u par le biais d'un petit commutateur de notifications 301. La capacité de commutation de ce dernier est plus réduite que celle de la matrice 100 de par la taille des notifications (de l'ordre de 32 éléments binaires) très inférieure à celle des paquets de données (de 400 à 10000 éléments binaires). Cependant cette capacité doit néanmoins être suffisante pour s'affranchir des problèmes de congestion. Toute notification est porteuse d'un niveau de priorité Po. N évalué dynamiquement par le bloc 307s en fonction d'une série de seuils de remplissage placés sur la file de destination 400s, t. Par exemple la priorité P, sera choisie lorsque entre 2'et 2'+'-l paquets sont présents dans ladite file au moment précédant l'extraction. Après son routage par le

Figure img00060001

commutateur de notifications 301 et à sa réception, la notification 23 formée du triplet (u, v, Pi) est classée dans 302u et déposée dans une file d'attente de notifications P, notée 308u, i (Pi est un élément de l'ensemble PO. N des files d'attente de notifications) en fonction de sa priorité Pi de la notification. A chaque file d'attente de notifications correspond un niveau de priorité de notifications. When a packet is extracted from the destination queue 400s, t (identified by t and connected to the port s of the matrix), a notification 23 is returned to the set of notification queues 302u via of a small notification switch 301. The switching capacity of the latter is smaller than that of the matrix 100 due to the size of the notifications (of the order of 32 binary elements) much smaller than that of the data packets ( from 400 to 10,000 binary elements). However, this capacity must nevertheless be sufficient to overcome congestion problems. Any notification carries a priority level Po. N dynamically evaluated by the block 307s as a function of a series of filling thresholds placed on the destination queue 400s, t. For example, priority P will be chosen when between 2 ′ and 2 ′ + ′ - l packets are present in said queue at the time preceding the extraction. After its routing by the
Figure img00060001

notification switch 301 and on receipt, the notification 23 formed of the triplet (u, v, Pi) is classified in 302u and deposited in a queue of notifications P, denoted 308u, i (Pi is an element of the set PO. N of the notification queues) according to its priority Pi of the notification. Each notification queue has a notification priority level.

En sortie, l'ordonnanceur 309u choisit la notification (u, v', Pj) en tête de la file d'attente la plus prioritaire non vide dans le jeu de files d'attente de notifications 302u (Po : plus haute priorité, PN : plus basse priorité) et émet le paquet en tête de la file de source identifiée par v'dès que le port d'entrée de la matrice est disponible. Dans le cas où aucun paquet n'est plus présent dans la file d'attente de source, la notification est détruite ; si de plus, la priorité de la notification dénote l'absence totale de paquets dans la file d'attente de destination (révélée par Po) alors le flux est dit désamorcé et une information booléenne Au, v, propre au flux considéré, est inactivée dans la table d'Amorçage 304u. Si la priorité de la notification est maximale alors que la file d'attente de source n'est pas vide, alors l'ordonnanceur 309u extrait plusieurs paquets At output, the scheduler 309u chooses the notification (u, v ', Pj) at the head of the highest priority queue not empty in the set of notification queues 302u (Po: highest priority, PN : lower priority) and sends the packet at the head of the source queue identified by v 'as soon as the input port of the matrix is available. In the event that no packet is no longer present in the source queue, the notification is destroyed; if in addition, the priority of the notification denotes the total absence of packets in the destination queue (revealed by Po) then the flow is said to be defused and boolean information Au, v, specific to the flow considered, is inactivated in the Priming table 304u. If the priority of the notification is maximum while the source queue is not empty, then the scheduler 309u extracts several packets

<Desc/Clms Page number 7><Desc / Clms Page number 7>

(typiquement 2) en tête de celle-ci et les émet, dans la mesure bien sûr de leur disponibilité.  (typically 2) at the head of it and emits them, to the extent of course of their availability.

Lorsqu'un paquet est introduit dans la file d'attente de source 200u, v alors que celle-ci est vide et Au, v à l'état inactif, Au, v est activé par l'événement 21 et une notification (u, v, Po) est émise vers le jeu de files d'attente 302u sur le lien 22 : Le flux est alors dit amorcé . When a packet is introduced into the source queue 200u, v when the latter is empty and Au, v in the inactive state, Au, v is activated by the event 21 and a notification (u, v, Po) is sent to the queue set 302u on link 22: The flow is then said to have started.

La figure 4 donne un exemple de format de paquet transmis au sein du système de commutation. L'entête 30 contient les champs nécessaires à la commutation du paquet : L'information s renseigne sur le port de sortie de la matrice, t représente l'identifiant de la file d'attente de destination. De la même manière, u renseigne sur le port d'entrée de la matrice et v représente l'identifiant de la file d'attente de source. Le champ Pj du paquet représente le niveau de priorité de la notification qui a déclenché l'émission dudit paquet. Figure 4 gives an example of the packet format transmitted within the switching system. The header 30 contains the fields necessary for switching the packet: The information provides information on the output port of the matrix, t represents the identifier of the destination queue. In the same way, u provides information on the input port of the matrix and v represents the identifier of the source queue. The packet Pj field represents the priority level of the notification which triggered the transmission of said packet.

Enfin le champ 31 contient les données utiles commutées entre les bornes d'entrée et sortie du système. Finally, field 31 contains the useful data switched between the input and output terminals of the system.

Les simulations effectuées montrent que le système de commutation objet de l'invention fonctionne correctement sans disposition particulière de la matrice 100. Selon une caractéristique de l'invention, ledit système peut néanmoins tirer partie des possibilités de celle-ci pour parfaire son efficacité. En ce sens et si la matrice est de type sans mémoire interne, celle-ci ordonnance les paquets en congestion en fonction de la priorité portée par le champ Pj des paquets sur chacun de ses ports de sortie. Cette mesure n'est pas applicable avec des matrices disposant d'une mémoire interne capable de stocker une multitude de paquets. En effet, la priorité des paquets d'un flux est variable et change selon le niveau de remplissage de la file de destination desdits paquets, ces derniers risquent donc d'arriver désordonnés dans ladite file, certains paquets en doublant d'autres dans la matrice. The simulations carried out show that the switching system which is the subject of the invention works correctly without any particular arrangement of the matrix 100. According to a characteristic of the invention, said system can nevertheless take advantage of the possibilities thereof to improve its efficiency. In this sense and if the matrix is of the type without internal memory, the latter orders the packets in congestion according to the priority carried by the field Pj of the packets on each of its output ports. This measure is not applicable with matrices having an internal memory capable of storing a multitude of packets. Indeed, the priority of the packets of a flow is variable and changes according to the filling level of the destination queue of said packets, the latter therefore risk arriving disordered in said queue, certain packets doubling others in the matrix .

Selon une autre caractéristique de l'invention applicable à une matrice dotée d'une mémoire interne, un niveau gradué de saturation interne de ladite matrice disponible sur ses ports d'entrée modifie le comportement du multiplexeur 300u de sorte que celui-ci ignore les files d'attente de notifications de faible priorité lorsque la matrice est congestionnée. Ainsi, l'approvisionnement des files d'attente de destination faiblement remplies se trouve de facto prioritaire dans la matrice. L'élection d'une notification est faite par 309u dans les files d'attente de notifications de priorité supérieure à un seuil fixé dynamiquement en fonction du niveau de saturation de ladite matrice selon la règle According to another characteristic of the invention applicable to a matrix having an internal memory, a graduated level of internal saturation of said matrix available on its input ports modifies the behavior of the multiplexer 300u so that it ignores the queues waiting for low priority notifications when the matrix is congested. Thus, the supply of lightly filled destination queues is de facto a priority in the matrix. The election of a notification is made by 309u in the queues of notifications of priority higher than a threshold fixed dynamically according to the level of saturation of said matrix according to the rule

<Desc/Clms Page number 8><Desc / Clms Page number 8>

suivante : plus la saturation est élevée, plus l'élection est restreinte aux files d'attente de notifications de priorité élevée .  The higher the saturation, the more the election is restricted to queues of high priority notifications.

La figure 5 donne une vue schématique d'un exemple de système de commutation conforme à l'invention. Le commutateur de paquets de données 100 et le commutateur de notifications 301 sont réunis dans une même matrice. Les notifications sont transportées individuellement par des paquets d'un format homogène avec les paquets de données utiles de sorte que la matrice commute indifféremment les deux types d'informations. Il est bien entendu souhaitable que cette matrice traite des paquets de taille variable de sorte que la charge provoquée par les transferts de notification reste négligeable devant celle des paquets de données utiles. FIG. 5 gives a schematic view of an example of a switching system according to the invention. The data packet switch 100 and the notification switch 301 are combined in a single matrix. The notifications are transported individually in packets of a homogeneous format with the payload data packets so that the matrix switches between the two types of information. It is of course desirable for this matrix to process packets of variable size so that the load caused by notification transfers remains negligible compared to that of useful data packets.

Chaque couple de ports d'entrée/sortie de la matrice est connecté à une carte coupleur 900 détaillée ici selon l'indice u supportant les fonctions nécessaires à sa connexion à des conduits 501u/601u propres au réseau de télécommunications. Les blocs fonctions de réseaux 500u/600u pourraient bien sûr gérer individuellement une pluralité desdits conduits. Each pair of input / output ports of the matrix is connected to a coupler card 900 detailed here according to the index u supporting the functions necessary for its connection to conduits 501u / 601u specific to the telecommunications network. The 500u / 600u network function blocks could of course individually manage a plurality of said conduits.

Le multiplexeur 111u à deux entrées permet d'émettre les paquets de données utiles présents en sortie du jeu de files d'attente de source 200u, 1 Q présents sur 112u et les notifications élaborées par 307u et présentées sur 310u vers un même port d'entrée llOu de matrice. Il est souhaitable que les notifications soient prioritaires sur les paquets de données utiles. The 111u multiplexer with two inputs makes it possible to send the useful data packets present at the output of the set of source queues 200u, 1 Q present on 112u and the notifications produced by 307u and presented on 310u to the same port. llOr matrix input. It is desirable that notifications have priority over useful data packets.

D'un même port de sortie 120u de la matrice, les mêmes informations sont démultiplexées par l'élément 121u vers respectivement le bloc 300u pour les notifications via 320u, et le jeu de files d'attente de destination 400u, l... M pour les paquets utiles via 122u. Une valeur booléenne dans l'entête des paquets permet de distinguer s'ils contiennent des données utiles ou des notifications. Bien sûr, des couples de ports d'entrée/sortie distincts pour les notifications et les paquets de données utiles sont également envisageables. From the same output port 120u in the matrix, the same information is demultiplexed by the element 121u to respectively the block 300u for notifications via 320u, and the set of destination queues 400u, l ... M for useful packages via 122u. A boolean value in the header of the packets makes it possible to distinguish whether they contain useful data or notifications. Of course, separate pairs of input / output ports for notifications and useful data packets are also possible.

Le jeu de files d'attente de destination 400u, l M est intégré dans une mémoire dite de destination où un partage dynamique est effectué sur la place allouée à chaque file d'attente car en considérant M files pouvant contenir au maximum H paquets, il est très peu probable que M * H places soient nécessaires pour stocker les paquets dans ladite mémoire. La taille maximale d'une file d'attente peut être évaluée dynamiquement en fonction du taux d'occupation de la mémoire. En considérant F le nombre de places The set of destination queues 400u, l M is integrated into a so-called destination memory where dynamic sharing is carried out on the space allocated to each queue because, considering M queues which can contain at most H packets, it it is very unlikely that M * H places will be needed to store the packets in said memory. The maximum size of a queue can be evaluated dynamically based on the memory usage rate. Considering F the number of places

<Desc/Clms Page number 9> <Desc / Clms Page number 9>

Figure img00090001

restant disponibles dans la mémoire pour recevoir des paquets, la taille maximale de la file d'attente H peut, par exemple, s'exprimer ainsi : H = a * (F-S) où a est un coefficient d'allocation compris entre 0 et 1 (typiquement en l/2n), et S une marge de sécurité liée au fait que des notifications associées à la mémoire peuvent déjà être mémorisées par le multiplexeur 300. Ainsi, plus la place vient à manquer dans la mémoire, plus la taille maximale des files d'attente se réduit ; le partage de la mémoire reste équitable empêchant ainsi que certaines files d'attente ne monopolisent trop la mémoire. Si la taille courante T d'une file d'attente vient à dépasser la taille maximale H, alors aucune notification n'est générée par le bloc 307 ; ce mécanisme permet ainsi de se préserver d'une saturation de la mémoire de destination qui entraînerait une perte de paquets et par conséquent serait préjudiciable à la qualité de service.
Figure img00090001

remaining available in the memory to receive packets, the maximum size of the queue H can, for example, be expressed as follows: H = a * (FS) where a is an allocation coefficient between 0 and 1 (typically in l / 2n), and S a safety margin linked to the fact that notifications associated with the memory can already be memorized by the multiplexer 300. Thus, the more space runs out in memory, the more the maximum size of the queues get reduced; memory sharing remains fair, preventing certain queues from monopolizing memory too much. If the current size T of a queue exceeds the maximum size H, then no notification is generated by block 307; this mechanism thus makes it possible to protect itself from saturation of the destination memory which would cause packet loss and therefore would be detrimental to the quality of service.

Lorsque les paquets de données utiles sont de taille variable, le niveau de remplissage d'une file d'attente de destination ne s'exprime pas seulement en terme de nombre de paquets mais se trouve pondéré par la longueur desdits paquets. Ladite taille T s'exprime alors par la longueur cumulée (par exemple exprimé en nombre d'éléments binaires) des paquets présents dans la file d'attente de destination considérée. Etant donné que la borne de sortie possède un débit D (en éléments binaires par seconde), la provision effectuée dans la file de destination s'exprime par T/D et est homogène à un temps.

Figure img00090002

L'introduction d'une trame de longueur Le dans la file d'attente de destination y se traduit sur Tj par : Tj = Tj + Le. L'extraction d'une trame de longueur Ls dans le file d'attente de destination y se traduit sur Tj par : Tj = Tj-Ls. La priorité de notification est toujours évaluée en fonction de T : par exemple la priorité Pi est choisie lorsque la file d'attente contient entre T=2'*, 6et T= (21+1-1) *, 6 éléments binaires où ss représente un coefficient de quantification (typiquement en 2n). Ces calculs sont homogènes avec des paquets de taille fixe (où Le=Ls= 1) et se présentent alors comme un simple comptage de paquets. When the payload data packets are of variable size, the filling level of a destination queue is not expressed only in terms of number of packets but is weighted by the length of said packets. Said size T is then expressed by the cumulative length (for example expressed in number of binary elements) of the packets present in the destination queue considered. Since the output terminal has a flow D (in binary elements per second), the provision made in the destination queue is expressed by T / D and is homogeneous at one time.
Figure img00090002

The introduction of a frame of length Le in the destination queue there results on Tj by: Tj = Tj + Le. The extraction of a frame of length Ls in the destination queue y results on Tj by: Tj = Tj-Ls. The notification priority is always evaluated as a function of T: for example the priority Pi is chosen when the queue contains between T = 2 '*, 6 and T = (21 + 1-1) *, 6 binary elements where ss represents a quantification coefficient (typically in 2n). These calculations are homogeneous with packets of fixed size (where Le = Ls = 1) and are then presented as a simple counting of packets.

Selon une variante de l'invention où un dispositif d'optimisation-avec lequel l'invention ne doit pas être confondue-est mis en oeuvre dans la matrice (le type crossbar a une charge maximale limitée à 58% sans optimisation), chaque port d'entrée de celle-ci dispose usuellement en amont d'une file d'attente virtuelle pour chacun des ports de sortie, c'est à dire par direction (technique communément appelée VOQ : Virtual Output Queuing ). Le dispositif d'optimisation régit à chaque instant les connexions établies entre ports d'entrée/sortie et peut ainsi éviter que des paquets sur N According to a variant of the invention where an optimization device - with which the invention should not be confused - is implemented in the matrix (the crossbar type has a maximum load limited to 58% without optimization), each port the input port of the latter usually has a virtual queue upstream for each of the output ports, that is to say by direction (technique commonly called VOQ: Virtual Output Queuing). The optimization device governs the connections established between input / output ports at all times and can thus avoid packets on N

<Desc/Clms Page number 10> <Desc / Clms Page number 10>

Figure img00100001

ports d'entrée différents ne sollicitent simultanément la même sortie conduisant à une situation d'attente de N-1 paquets et de blocage sur N-1 entrées. Le lecteur pourra se référer au document < Scheduling Algorithms for Input queued cells switches > ) McKeown, Ph. D. thesis, University of California, Berkeley, May 1995 pour se familiariser avec ces méthodes. Le dispositif d'optimisation est alors utilisé conjointement avec le bloc 300 et fournit à ce dernier le port de sortie de matrice à servir et sur lequel une connexion est réalisée. Le bloc 300 dispose, par port d'entrée u, d'une structure 302u, s de files d'attente de notifications par port de sortie s (soit au total L blocs 302u par entrée u) de sorte que l'élection d'une notification est faite par 309u dans la structure 302u, s relative au port de sortie fourni par le dispositif d'optimisation. Des moyens semblables sont à mettre en oeuvre lorsque la matrice, de type store and forward, fournit des signaux de saturation relatifs à chacun de ses ports de sortie. Dans ce cas, l'élection d'une notification est faite par 309u dans la liste des structures 302u, s (relatives aux ports de sortie non saturés) fournie par le dispositif d'optimisation.
Figure img00100001

Different input ports do not simultaneously request the same output, leading to a waiting situation for N-1 packets and blocking on N-1 inputs. The reader can refer to the document <Scheduling Algorithms for Input queued cells switches>) McKeown, Ph. D. thesis, University of California, Berkeley, May 1995 to familiarize themselves with these methods. The optimization device is then used in conjunction with the block 300 and provides the latter with the matrix output port to be served and to which a connection is made. Block 300 has, by input port u, a structure 302u, s of notification queues by output port s (ie in total L blocks 302u per input u) so that the election of a notification is made by 309u in the structure 302u, s relating to the output port provided by the optimization device. Similar means are to be used when the matrix, of the store and forward type, provides saturation signals relating to each of its output ports. In this case, the election of a notification is made by 309u in the list of structures 302u, s (relating to the unsaturated output ports) provided by the optimization device.

Les processeurs de réseau (Network Processors), traditionnellement micro-programmés pour exécuter les fonctions des blocs 500 et 600, peuvent également prendre en charge le système de multiplexage 300 et 307 spécifique au système de commutation objet de l'invention. Ledit système de multiplexage peut également être intégré à des FPGA (Field Programmable Gates Array) ou à des circuits spécifiques de type ASIC (Application Specific Integrated Circuit).Network processors, traditionally micro-programmed to execute the functions of blocks 500 and 600, can also support the multiplexing system 300 and 307 specific to the switching system object of the invention. Said multiplexing system can also be integrated into FPGAs (Field Programmable Gates Array) or to specific circuits of the ASIC (Application Specific Integrated Circuit) type.

Claims (11)

REVENDICATIONS 1. Système de commutation de paquets de données, convenant notamment à un équipement de réseau haut débit de télécommunications, permettant de réguler les flux de données en transit entre ses bornes d'entrée et ses bornes de sortie afin de garantir un débit sur lesdits flux, et qui se caractérise essentiellement en ce qu'il comprend : . une pluralité de bornes d'entrée (501) pour recevoir des flux de paquets sur lesquels sont imposées des contraintes de débit garanti, w une pluralité de bornes de sortie (601) pour émettre lesdits flux sur des conduits propres au réseau de télécommunications, une matrice de commutation (100) apte à transmettre lesdits paquets de ses ports d'entrée vers ses ports de sortie (120) en fonction d'une information de routage contenue dans l'entête desdits paquets, des blocs d'exécution (500) des fonctions d'entrée dudit équipement de réseau, notamment chargés de la reconnaissance desdits paquets identifiant lesdits flux et de la fourniture de l'information nécessaire au routage desdits paquets au travers de ladite matrice, w une pluralité de files d'attente de source (200) recevant chacune un flux de paquets et placée en amont desdits ports d'entrée de ladite matrice, . une pluralité de files d'attente de destination (400) recevant chacune un flux de paquets issu d'un desdits ports de sortie de ladite matrice, des blocs d'exécution (600) des fonctions de sortie dudit équipement de réseau, notamment chargés de l'ordonnancement des paquets de données sur chacune des bornes de sortie de sorte que la fréquence d'extraction des paquets desdites files d'attente de destination satisfait la contrainte de débit garanti de chacun des flux, w un système de multiplexage des paquets issus desdites files d'attente de source alimentant lesdits ports d'entrée de la matrice, caractérisé en ce qu'il comporte : w des circuits de génération (307) de notifications signalant la sortie des paquets des files d'attente de destination, lesdites notifications étant affectées d'une information de routage permettant leur acheminement vers les circuits de mémorisation et d'une information permettant l'identification de leur file d'attente source avec laquelle elles sont associées de manière biunivoque, 1. Data packet switching system, particularly suitable for high speed telecommunications network equipment, making it possible to regulate the data flows in transit between its input terminals and its output terminals in order to guarantee a flow rate on said flows , and which is essentially characterized in that it comprises:. a plurality of input terminals (501) for receiving packet flows on which are imposed guaranteed bit rate constraints, w a plurality of output terminals (601) for transmitting said flows on conduits specific to the telecommunications network, a switching matrix (100) capable of transmitting said packets from its input ports to its output ports (120) according to routing information contained in the header of said packets, execution blocks (500) of the input functions of said network equipment, in particular responsible for recognizing said packets identifying said flows and providing the information necessary for routing said packets through said matrix, w a plurality of source queues (200 ) each receiving a packet stream and placed upstream of said input ports of said matrix,. a plurality of destination queues (400) each receiving a stream of packets originating from one of said output ports of said matrix, execution blocks (600) of the output functions of said network equipment, in particular responsible for the scheduling of the data packets on each of the output terminals so that the frequency of extraction of the packets from said destination queues satisfies the guaranteed rate constraint of each of the flows, w a system for multiplexing the packets originating from said source queues supplying said input ports of the matrix, characterized in that it comprises: w circuits for generating (307) notifications signaling the output of packets from destination queues, said notifications being assigned routing information allowing their routing to the storage circuits and information allowing the identification of their source queue with which it are associated in a unique way, <Desc/Clms Page number 12><Desc / Clms Page number 12> des circuits de mémorisation (302) permettant le classement desdites notifications dans des files d'attente de notifications, des circuits de sélection (309) permettant l'élection des notifications prioritaires et la sélection des files d'attente de source désignées par lesdites notifications, w un circuit de commutation (301) desdites notifications issues desdits circuits de génération vers lesdits circuits de mémorisation,  storage circuits (302) allowing the classification of said notifications in notification queues, selection circuits (309) allowing the election of priority notifications and the selection of source queues designated by said notifications, w a switching circuit (301) of said notifications from said generation circuits to said storage circuits, 2. Système de commutation selon la revendication 1, caractérisé en ce que une notification est générée consécutivement à l'extraction d'un paquet d'une file d'attente de destination,2. Switching system according to claim 1, characterized in that a notification is generated following the extraction of a packet from a destination queue, 3. Système de commutation selon les revendications 1 et 2, caractérisé en ce la génération d'une notification est inhibée quand le niveau de remplissage maximal de la file d'attente de destination associée est atteint,3. Switching system according to claims 1 and 2, characterized in that the generation of a notification is inhibited when the maximum filling level of the associated destination queue is reached, 4. Système de commutation selon les revendications 1 à 3, caractérisé en ce que les notifications sont porteuses en outre d'une information de priorité liée au niveau de remplissage de leur file d'attente de destination associée, un niveau de remplissage faible conférant une priorité élevée,4. Switching system according to claims 1 to 3, characterized in that the notifications also carry priority information linked to the filling level of their associated destination queue, a low filling level conferring a high priority, 5. Système de commutation selon les revendications 1 à 4, caractérisé en ce que les notifications sont rangées dans des files d'attente selon le niveau de priorité desdites notifications reçues par les circuits de mémorisation,5. Switching system according to claims 1 to 4, characterized in that the notifications are stored in queues according to the priority level of said notifications received by the storage circuits, 6. Système de commutation selon les revendications 1 à 5, caractérisé en ce que un circuit de sélection choisit, pour émettre sur le port d'entrée de matrice sur lequel il est connecté, le paquet en tête de la file d'attente source dont la notification associée est en tête de la file d'attente de notifications non vide la plus prioritaire,6. Switching system according to claims 1 to 5, characterized in that a selection circuit chooses, to transmit on the matrix input port to which it is connected, the packet at the head of the source queue whose the associated notification is at the head of the highest priority non-empty notification queue, 7. Système de commutation selon les revendications 1 à 6, caractérisé en ce que un circuit de sélection émet plusieurs paquets lorsque la priorité de la notification, associée à la file d'attente de source dont ils sont issus, est supérieure à un seuil prédéfini,7. Switching system according to claims 1 to 6, characterized in that a selection circuit transmits several packets when the priority of the notification, associated with the source queue from which they originate, is greater than a predefined threshold. , 8. Système de commutation selon les revendications 1 à 7, caractérisé en ce que un circuit de sélection détruit une notification associée à une file d'attente de source devenue vide,8. Switching system according to claims 1 to 7, characterized in that a selection circuit destroys a notification associated with a source queue that has become empty, 9. Système de commutation selon les revendications 1 à 8 et une première variante, caractérisé en ce que : 9. Switching system according to claims 1 to 8 and a first variant, characterized in that: <Desc/Clms Page number 13><Desc / Clms Page number 13> 'les circuits de mémorisation rangent les notifications par niveau de priorité et de manière supplétive selon les ports de sortie de matrice empruntés par les paquets des files d'attente source auxquelles elles sont associées, 'les circuits de sélection opèrent l'élection des notifications par niveau de priorité sur une liste de ports de sortie de la matrice, ladite liste étant dynamiquement fournie et dédiée par un dispositif d'optimisation à chacun desdits circuits, 'the storage circuits rank the notifications by priority level and additionally according to the matrix output ports used by the packets of the source queues with which they are associated,' the selection circuits operate the election of notifications by priority level on a list of matrix output ports, said list being dynamically provided and dedicated by an optimization device to each of said circuits, 10. Système de commutation selon les revendications 1 à 9 et une deuxième variante applicable à une matrice sans mémoire de paquets, caractérisé en ce que les paquets sont porteurs du niveau de priorité de la notification ayant entraîné leur extraction des files d'attente de source afin que les paquets associés aux files d'attente de destination les moins remplies soient traités prioritairement au sein de ladite matrice,10. Switching system according to claims 1 to 9 and a second variant applicable to a matrix without packet memory, characterized in that the packets carry the priority level of the notification which has led to their extraction from the source queues so that the packets associated with the least filled destination queues are treated as a priority within said matrix, 11. Système de commutation selon les revendications 1 à 9 et une troisième variante applicable à une matrice dotée d'une mémoire de paquets, caractérisé en ce que les circuits de sélection ne prennent en compte dans leur phase d'élection que les files d'attente de notifications de priorité élevée lorsqu'une information de saturation de mémoire est émise par ladite matrice.11. Switching system according to claims 1 to 9 and a third variant applicable to a matrix having a packet memory, characterized in that the selection circuits take into account in their election phase only the queues waiting for notifications of high priority when memory saturation information is emitted by said matrix.
FR0107210A 2001-06-01 2001-06-01 Packet switching system for constant matrix throughput feeds least filled destinations first Pending FR2825546A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR0107210A FR2825546A1 (en) 2001-06-01 2001-06-01 Packet switching system for constant matrix throughput feeds least filled destinations first

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0107210A FR2825546A1 (en) 2001-06-01 2001-06-01 Packet switching system for constant matrix throughput feeds least filled destinations first

Publications (1)

Publication Number Publication Date
FR2825546A1 true FR2825546A1 (en) 2002-12-06

Family

ID=8863873

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0107210A Pending FR2825546A1 (en) 2001-06-01 2001-06-01 Packet switching system for constant matrix throughput feeds least filled destinations first

Country Status (1)

Country Link
FR (1) FR2825546A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0603916A2 (en) * 1992-12-25 1994-06-29 Nec Corporation Packet switching system using idle/busy status of output buffers
WO1999066677A1 (en) * 1998-06-16 1999-12-23 Alcatel Digital traffic switch with credit-based buffer control
US6144635A (en) * 1996-07-18 2000-11-07 Nec Corporation Asynchronous transfer mode exchange system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0603916A2 (en) * 1992-12-25 1994-06-29 Nec Corporation Packet switching system using idle/busy status of output buffers
US6144635A (en) * 1996-07-18 2000-11-07 Nec Corporation Asynchronous transfer mode exchange system
WO1999066677A1 (en) * 1998-06-16 1999-12-23 Alcatel Digital traffic switch with credit-based buffer control

Similar Documents

Publication Publication Date Title
EP2282456B1 (en) Communication network on a chip with service guarantee
US7970888B2 (en) Allocating priority levels in a data flow
EP1327335B1 (en) Prioritising data with flow control
EP0431438A1 (en) Flow control procedure for a broadband integrated services digital telecommunication network, and network to realize the procedure
EP1616414A2 (en) Method and device for controlling data packet traffic at the input of a network
EP1884875A1 (en) System for managing messages transmitted in an interconnection network on a chip
FR2801455A1 (en) METHOD FOR TRANSMITTING DATA STREAMS OVER AN ATM NETWORK, AND DEVICE FOR IMPLEMENTING THE METHOD
US20140126375A1 (en) Data flow control
EP2504960B1 (en) System for controlling the state of load of a physical link between two physical nodes including a plurality of virtual links
EP0771132B1 (en) Device for regulating the flow of ATM cells inside an ATM switch
US7499400B2 (en) Information flow control in a packet network based on variable conceptual packet lengths
EP1172948B1 (en) Resource administrator device for a satellite telecommunication system
EP1770927A1 (en) Packet switching system for telecom network node
FR2825546A1 (en) Packet switching system for constant matrix throughput feeds least filled destinations first
EP1327333B1 (en) Filtering data flows
EP3989494A1 (en) Method for aggregation and control of messages via a restricted bi-directional communication channel
EP2815547B1 (en) Technique for processing a data stream between a server and a client entity
EP0885508B1 (en) Atm cell spacing method and device therefor
US20040022193A1 (en) Policing data based on data load profile
FR2910760A1 (en) METHOD OF OPTIMIZING THE SHARING OF A PLURALITY OF NETWORK RESOURCES BETWEEN A PLURALITY OF APPLICATION FLOWS
FR2898750A1 (en) ARBITRATION MECHANISM DATA COMMUNICATION DEVICE BETWEEN DATA TRANSFER REQUESTS FOR A NODE OF A HIGH-SPEED COMMUNICATION NETWORK
FR2831367A1 (en) Unicast cell transmission time control method for asynchronous communication system, involves determining whether time period of reference copied unicast cell and other cell in queues, is equal to transmission time of concerned queues
EP0942557A1 (en) Multiplexing method for an ATM communication system
EP1039761A1 (en) Method for broadcasting digital data packets through a set of channels
FR2898449A1 (en) DEVICE FOR PICKING DATA PACKETS BY CONSTITUTING DATA SET GROUPS, FOR A NODE OF A VERY HIGH-SPEED COMMUNICATION NETWORK