SE515420C2 - Switching plane selection for packet switch network - Google Patents
Switching plane selection for packet switch networkInfo
- Publication number
- SE515420C2 SE515420C2 SE9300485A SE9300485A SE515420C2 SE 515420 C2 SE515420 C2 SE 515420C2 SE 9300485 A SE9300485 A SE 9300485A SE 9300485 A SE9300485 A SE 9300485A SE 515420 C2 SE515420 C2 SE 515420C2
- Authority
- SE
- Sweden
- Prior art keywords
- selector
- connection
- quality
- plan
- plane
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 29
- 150000001875 compounds Chemical class 0.000 claims 2
- 238000012544 monitoring process Methods 0.000 abstract 1
- 230000005540 biological transmission Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000001174 ascending effect Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000015654 memory Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
Description
20 25 30 35 40 515 420 2 tad förbindelse eller på varje länk mellan en ingång och en utgång hos väljarenheten, därpå varje länk alltså i allmänhet ett flertal samtidiga förbindelser är upprättade. 20 25 30 35 40 515 420 2 or on each link between an input and an output of the selector unit, then each link is thus generally a number of simultaneous connections are established.
Enligt uppfinningen anvisas ett sätt och en paketväljare enligt ovan med ett enkelt och effektivt val av föredraget väljarplan för att hämta datapaket, vilka skall sändas ut från paket- väljaren. De närmare bestämningarna hos uppfinningen framgår av de bifogade patentkraven.According to the invention, a method and a packet selector according to the above are provided with a simple and efficient selection of the preferred selector plan for retrieving data packets, which are to be sent out from the packet selector. The detailed provisions of the invention appear from the appended claims.
Sålunda har en väljare för överföring av datapaket på vanligt sätt ingångar och utgångar och inbördes likadana och parallella väljarplan och den är anordnad att upprätta förbindelser mellan ingångar och utgångar på de parallella väljarplanen. Hos varje utgång för varje väljar- plan och varje upprättad förbindelse finns en buffert rymmande minst ett datapaket. På ut- gången finns en valanordning för att från väljaren välja datapaket från de olika planen, så att en så korrekt datapaketström som möjligt erhålls från utgången. Valanordningen är anordnad att i första hand välja datapaket från ett för tillfället föredraget väljarplan. Vidare finns en kvalitetsbestämmande enhet anordnad vid utgången, eventuellt innefattad i valanordningen, som vid varje tillfälle, t ex när ett datapaket ankommer till utgången, fastställer det föredrag- na planet med hjälp av kvalitetsvärden för varje plan, vilka är bestämda med hjälp av tidigare till utgången ankomna datapaket.Thus, a selector for transmitting data packets in the usual way has inputs and outputs and mutually identical and parallel selector planes and it is arranged to establish connections between inputs and outputs on the parallel selector planes. At each output for each selector plane and each connection established, there is a buffer containing at least one data packet. At the output there is a selection device for selecting data packets from the different planes from the selector, so that as accurate a data packet flow as possible is obtained from the output. The selection device is arranged to primarily select data packets from a currently preferred selection plan. Furthermore, there is a quality determining unit arranged at the exit, possibly included in the selection device, which at each occasion, for example when a data packet arrives at the exit, determines the preferred plane by means of quality values for each plane, which are determined by means of expired data packets.
Vidare föredras, att byte av föredraget väljarplan utförs först när ett annat väljarplan har ett kvalitetsvärde, som är bättre eller högre än det föredragna planets kvalitetsvärde och som avviker från detta med ett belopp, vilket är större än ett förutbestämt värde. Detta åstadkom- mer en hysteres vid valet av föredraget väljarplan, så att föredraget väljarplan inte byts alltför ofta. Detta kan vara fördelaktigt, eftersom härigenom den totala tidsåtgången för byten av plan minskar.Furthermore, it is preferred that the change of the preferred voter plan is performed only when another voter plan has a quality value which is better or higher than the quality value of the preferred plan and which deviates from this by an amount which is greater than a predetermined value. This causes a hysteresis when choosing the preferred voter plan, so that the preferred voter plan is not changed too often. This can be advantageous, as it reduces the total time required to change planes.
Det för tillfället föredragna väljarplanet kan vara gemensamt för alla förbindelser eller också vara specifikt eller individuellt bestämt för varje förbindelse.The currently preferred selector plane may be common to all connections or also be specific or individually determined for each connection.
På motsvarande sätt kan kvalitetsvärdet för varje plan vara detsamma för alla förbindel- ser eller vara specifikt eller individuellt bestämt för den betraktade förbindelsen.Correspondingly, the quality value for each plan can be the same for all connections or be specific or individually determined for the connection considered.
I det senare fallet kan då nya kvalitetsvärden för en viss förbindelse och för väljarplanen bestäms varje gång, som ett datapaket anländer till utgången på den betraktade förbindelsen.In the latter case, then, new quality values for a particular connection and for the dialing plan can be determined each time a data packet arrives at the output of the considered connection.
Kvalitetsvärdet för ett_visst plan och eventuellt för en viss förbindelse bestäms med för- del med ledning av upptäckta felaktigheter i datafält hos tidigare till utgången överförda data- paket på detta plan, eventuellt endast för datapaket överförda på den betraktade förbindelsen.The quality value for a certain plane and possibly for a certain connection is determined with advantage on the basis of detected errors in data fields of previously transmitted data packets on this plane, possibly only for data packets transmitted on the considered connection.
Kvalitetsvärdet för ett visst plan och eventuellt för en viss förbindelse kan med fördel också bestämmas med ledning av felaktigheter i ordningsföljden för tidigare till utgången överförda datapaket på detta plan, eventuellt endast för datapaket överförda på den betraktade förbindelsen. _ Kvalitetsvärdet för ett visst plan och eventuellt för en viss förbindelse kan vidare med fördel ändras med ett bestämt belopp och i en sådan riktning, att kvaliteten blir bättre eller högre för detta plan eventuellt i kombination med förbindelsen varje gång, som ett felfritt datapaket via detta väljarplan och eventuellt tillhörande den betraktade förbindelsen anländer till utgången. 20 25 30 35 40 515 420 3 Kvalitetsvärdet även för de andra planen eventuellt i kombination med den betraktade förbindelsen kan också ändras med ett bestämt belopp och i en sådan riktning, att kvaliteten blir bättre eller högre för dessa plan eventuellt endast i kombination med förbindelsen varje gång, som ett felfritt datapaket via ett väljarplan och i motsvarande fall tillhörande den be- traktade förbindelsen anländer till utgången.The quality value for a certain plane and possibly for a certain connection can advantageously also be determined on the basis of errors in the order of previously transmitted data packets on this plane, possibly only for data packets transmitted on the considered connection. The quality value for a certain plan and possibly for a certain connection can furthermore be advantageously changed by a certain amount and in such a direction that the quality becomes better or higher for this plan possibly in combination with the connection each time, as an error-free data packet via this voter plan and possibly belonging to the contemplated connection arrive at the exit. The quality value also for the other planes possibly in combination with the considered connection can also be changed by a certain amount and in such a direction that the quality becomes better or higher for these planes possibly only in combination with the connection each time, as an error-free data packet arrives at the exit via a voter plan and in a corresponding case belonging to the connection in question.
Kvalitetsvärdet för ett plan eventuellt i kombination med en betraktad förbindelse kan med fördel också ändras med ett bestämt belopp och i en sådan riktning, att kvaliteten blir bättre eller högre för detta plan eventuellt i kombination med förbindelsen varje gång, som ett datapaket via detta väljarplan och i motsvarande fall tillhörande den betraktade förbindelsen anländer i korrekt ordningsföljd till utgången.The quality value of a plane possibly in combination with a considered connection can advantageously also be changed by a certain amount and in such a direction that the quality becomes better or higher for this plane possibly in combination with the connection each time, as a data packet via this selector plane and in the corresponding case belonging to the considered connection arrives in the correct order to the exit.
KORT FIGURBESKRIVNING Uppfmningen skall nu beskrivas i samband med de bifogade ritningama, i vilka - Fig. 1 är en schematisk bild av en väljare med parallella väljarplan, - Fig. 2 schematiskt visar behandlingen av ett datapaket vid ankomsten till paketväljaren, - Fig. 3 schematiskt visar hanteringen av datapaket vid dettas ankomst efter överföring genom en väljare till en utgång hos väljaren, - Pig. 4 visar ett flödesschema för val av aktivt plan, - Fig. 5 visar ett flödesschema för en delrutin vid utvärdering av bästa plan.BRIEF DESCRIPTION OF THE DRAWINGS The invention will now be described in connection with the accompanying drawings, in which - Fig. 1 is a schematic view of a selector with parallel selector planes, - Fig. 2 schematically shows the processing of a data packet on arrival at the packet selector, - Fig. 3 schematically shows the handling of data packets on their arrival after transmission through a selector to an output of the selector, - Pig. Fig. 4 shows a fate diagram for the selection of an active plan, - Fig. 5 shows a fate diagram for a sub-routine when evaluating the best plan.
BESKRIVNING AV FÖREDRAGEN UTFÖRINGSFORM I fig. 1 visas schematiskt uppbyggnaden av en paketväljare 1. Väljarenheten l innefattar ingångar på A-sidan, vilka här representeras av en ingångsenhet 3, och ett antal utgångar på B-sidan, vilka här representeras av en utgångsenhet 5. Ingångsenheten 3 och utgångsenheten 5 är hopkopplingsbara med hjälp av paketväljarens logik (dvs logiken i själva väljarkäman), i vilken elektriska förbindningar eller länkar parallellt upprättas i de n väljarplanen. Ett data- paket, som inkommer på A-sidan och alltså till ingångsenheten 3, ger upphov till n likadana datapaket, som sänds vidare genom de n väljarplanen, där överföringen av dessa likadana datapaket utförs helt oberoende på de olika väljarplanen. Dessa likadana datapaket ankommer sedan till utgångsenheten 5 och i denna utväljs korrekt överförda datapaket och en följd av utgående datapaket åstadkoms, som har en korrekt ordningsföljd för de olika datapaketen. I utgångsenheten 5 utväljs sålunda på något sätt endast ett av de likadana datapaketen, som motsvarar ett inkommande till ingångsenheten 3 inkommet datapaket.DESCRIPTION OF THE PREFERRED EMBODIMENT I fi g. 1 schematically shows the construction of a packet selector 1. The selector unit 1 comprises inputs on the A-side, which are here represented by an input unit 3, and a number of outputs on the B-side, which are here represented by an output unit 5. The input unit 3 and the output unit 5 are interconnectable by means of the packet selector logic (ie the logic in the selector core itself), in which electrical connections or links are established in parallel in the n selector planes. A data packet, which arrives on the A-side and thus to the input unit 3, gives rise to n identical data packets, which are transmitted on through the n selector planes, where the transmission of these identical data packets is carried out completely independently of the different selector planes. These identical data packets then arrive at the output unit 5 and in this correctly transmitted data packets are selected and a sequence of outgoing data packets is produced, which has a correct order for the different data packets. Thus, in the output unit 5 in some way only one of the identical data packets is selected, which corresponds to an incoming data packet received at the input unit 3.
Varje datapaket tillhör vidare en logisk förbindelse, som upprättas genom hela nätet och särskilt genom varje väljare 1, när från början en begäran om att överföra information mottas från en terminal i nätet. i I fig. 2 visas hur datapaketen behandlas på A-sidan, dvs efter ankomsten till ingångsen- heten 3, innan datapaketen utsänds på väljarplanen, som i det här visade fallet är två stycken.Each data packet further belongs to a logical connection, which is established throughout the network and in particular through each selector 1, when from the beginning a request to transmit information is received from a terminal in the network. Fig. 2 shows how the data packets are processed on the A-side, ie after arrival at the input unit 3, before the data packets are transmitted on the selector plane, which in this case is two pieces.
I ett block 7 alstras särskild information, redundansinforrnation eller administrativ inforrna- tion, och tillförs datapaketet, innan detta via en sändningsnod 9 skickas ut på de båda väljar- planen. Nedtill i fig. 2 åskådliggörs utseendet av datapaketet, efter passagen genom blocket 7.In a block 7, special information, redundancy information or administrative information is generated, and the data packet is added, before this is sent out via a transmission node 9 on the two selector planes. At the bottom in fi g. 2 illustrates the appearance of the data packet, after the passage through block 7.
Datapaketet innefattar sålunda den egentliga information, som skall överföras och som är 10 20 25 30 35 40 515 420 4 inrymd i fältet 11, vilket här betecknas "Payload". Dessutom kan det egentliga datapaketet innehålla ett inledande fält 13, här betecknat "Header", som kan innehålla både generell och annan administrativ information rörande datapaket, såsom destinationsadress, ursprungsadress, uppgift om prioritet, kanalnurnmer etc. I blocket 7 för genereringen av den extra informationen för överföringen i väljaren 1 insätts i datapaketet ett fält 15 innehållande ett internt förbindelsenummer, "vc/vp", i ett fält 17 ett sekvensnummer, "CSNcell", och två "IHEC Internal Header Error Check" och "PEC Check". Kontrollsummorna återfinns i block 19 respektive 21 i det färdiga datapaketet. Den kontrollsummor, Payload Error första kontrollsumman i fältet 19 avser sålunda särskilt informationen i de olika administrativa fälten 13, 15, 17 i det färdiga datapaketet, medan kontrollsumman i det andra fältet 21 hänför sig särskilt till datapaketets egentliga inforrnationsinnehåll, Payload, i fältet 11. Det interna förbindelsenumret vc/vp bildas med hjälp av kunskap om till vilken logisk förbindelse data- paketet hör och är unikt för varje sådan logisk förbindelse. Sekvensnumret CSNcell hämtas från ett register eller minne 407 och anger på något enkelt sätt ordningsnumret för datapaketet i den följd av datapaket, som sänds över den upprättade logiska förbindelsen, så att t ex det första datapaketet som sänds över förbindelsen får sekvensnumret 1, det andra sekvensnumret 2, etc. På grund av den i allmänhet begränsade längden hos fältet 17 för sekvensnumret CSNcell och då ofta ett mycket stort antal paket överförs för varje upprättad förbindelse, kommer en stigande följd av sekvensnummer småningom fram till det högsta tal, som inryms i fältet 17, och då påbörjas sekvensnumren från början igen. Sekvensnumren återkommer alltså cykliskt eller modulo det högsta tal, som inryms i fältet 17. I fortsättningen antas en sådan stigande konsekutiv nurnrering modulo något tal gälla för CSNcell.I fortsättningen antas en sådan stigande konsekutiv nurnrering gälla.The data packet thus comprises the actual information which is to be transmitted and which is contained in the field 11, which is here referred to as "Payload". In addition, the actual data packet may contain an introductory field 13, referred to herein as "Header", which may contain both general and other administrative information regarding data packets, such as destination address, source address, priority information, channel number, etc. in block 7 for generating the additional information. for the transmission in the selector 1, a field 15 containing an internal connection number, "vc / vp", is inserted in the data packet, in a field 17 a sequence number, "CSNcell", and two "IHEC Internal Header Error Check" and "PEC Check". The checksums are found in blocks 19 and 21, respectively, in the completed data package. The checksum, Payload Error first checksum in field 19 thus refers in particular to the information in the various administrative fields 13, 15, 17 in the finished data packet, while the checksum in the second field 21 relates in particular to the actual information content of the data packet, Payload, in field 11. The internal connection number vc / vp is formed by means of knowledge of which logical connection the data packet belongs to and is unique for each such logical connection. The sequence number CSNcell is retrieved from a register or memory 407 and simply indicates the serial number of the data packet in the sequence of data packets transmitted over the established logical connection, so that for example the first data packet transmitted over the connection receives the sequence number 1, the second sequence number 2, etc. Due to the generally limited length of the field 17 for the sequence number CSNcell and since often a very large number of packets are transmitted for each established connection, an increasing sequence of sequence numbers eventually reaches the highest number contained in the field 17. , and then the sequence numbers start again from the beginning. The sequence numbers thus return cyclically or modulo the highest number, which is contained in field 17. In the future, such an ascending consecutive numbering modulo any number will apply to CSNcell. In the future, such an ascending consecutive numbering will apply.
På utgångssidan eller B-sidan utförs det förfarande, som schematiskt visas i fig. 3. När sålunda ett datapaket har passerat genom det inre av väljarenheten 1 och speciellt genom ett av dess väljarplan, ankommer datapaketet till kretsar, som tar hand om datapaketet och sedan sänder iväg datapaket på utgången, så att en så korrekt följd av datapaket som möjligt ut- sänds. Först kontrolleras sålunda, såsom visas vid 23, att informationen i datapaketet har överförts korrekt genom väljaren 1 och speciellt att den Kontrollsumma IHEC, som är avsedd för datapaketets administrativa informationsdel, är riktig. Om denna kontrollsumma visar sig vara felaktig, förkastas datapaketet, såsom anges vid 24, eftersom det då kan ha fått fel eti- kett, adresserat, fel ordningsnummer, etc vid överföringen i motsvarande väljarplan. Om emellertid kontrollsumman är korrekt, överförs datapaketet till ett register 25, som inrymmer enbart ett datapaket. Sedan utförs ett särskilt förfarande 27, även betecknat algoritm för val, för urval av det datapaket i ett av registren 25, som skall sändas vidare. Till sin hjälp för bestämning av nedan närmare beskrivna kvalitetsvärden för planen har förfarandet 27 ett annat förfarande eller en enhet 26 för kvalitetsberäkriing och -bestärnriing Valförfarandet i blocket 27 styr en väljande anordning 29, som alltså är kopplad till registren 25 och på order från förfarandet i blocket 27 väljer det lämpliga eller föredragna väljarplanet. Med hjälp av ett här inte beskrivet förfarande överförs datapaket i första hand 15 20 25 30 35 515 420 5 befintliga i eller hämtade från detta föredragna väljarplans register 25 till ett utgångsregister 31 av FIFO-typ, så att en så korrekt utgående ström som möjligt erhålls. Utgångsregistret 31 behöver vara tämligen stort och kunna härbärgera flera datapaket, vilka är klara för sändning.Thus, on the output side or the B side, the procedure shown schematically in Fig. 3 is performed. sends data packets at the output, so that as accurate a sequence of data packets as possible is transmitted. Thus, first, as shown at 23, it is checked that the information in the data packet has been transmitted correctly through the selector 1 and in particular that the checksum IHEC intended for the administrative information part of the data packet is correct. If this checksum turns out to be incorrect, the data packet, as indicated at 24, is rejected, as it may then have received the wrong label, addressee, wrong serial number, etc. during the transfer in the corresponding dialing plan. However, if the checksum is correct, the data packet is transferred to a register 25, which contains only one data packet. Then, a special method 27, also called selection algorithm, is performed for selecting the data packet in one of the registers 25 to be forwarded. To assist in determining the quality values for the plan described in more detail below, the method 27 has another method or a unit 26 for quality calculation and management. The selection procedure in block 27 controls a selecting device 29, which is thus connected to the registers 25 block 27 selects the appropriate or preferred selector plane. By means of a method not described here, data packets primarily in existing or retrieved registers 25 of this preferred selector plane 25 are transferred to an output register 31 of the FIFO type, so that as correct an outgoing current as possible is obtained. . The output register 31 needs to be rather large and be able to accommodate several data packets, which are ready for transmission.
Algoritmen i blocket 27 för val av datapaket använder bl a de ovan nämnda kvalitetsvärdena för varje förbindelse och varje plan eller enbart för varje plan för att vid varje tillfälle utvälja ett föredraget plan.The algorithm in block 27 for selecting data packets uses, among other things, the above-mentioned quality values for each connection and each plane or only for each plane to select a preferred plane at each time.
I det följande skall förfarandet vid val av lämpligt väljarplan beskrivas i samband med programsekvenser skrivna i pseudokod för det fall, att valet utförs både för varje förbindelse och för varje plan. I fortsättningen antas endast två väljarplan finnas i väljaren.In the following, the procedure for selecting the appropriate selector plan will be described in connection with program sequences written in pseudocode in the event that the selection is performed both for each connection and for each plan. In the future, only two electoral plans are assumed in the electorate.
För en förbindelse erfordras för hanteringen på utgången vissa lagrade variabler, vilka lagras i lämpliga minnen eller register visade vid 28 i fig. 3. För varje förbindelse finns sålunda en pekare eller indikator, som anger det för tillfället föredragna väljarplanet, från vilket dataceller i första hand hämtas. Vidare finns för förbindelse och varje väljarplan vari- abler, som innefattar ett kvalitetsvärde och ett värde CSNexp för det förväntade numret på nästa datapaket, som skall ankomma till utgången från väljaren. Kvalitetsvärdet anger, grun- dat på tidigare överföring av datapaket, hur god överföringen är på väljarplanet för den be- traktade förbindelsen. Såsom ett alternativ (detta fall visas ej) skulle kvalitetsvärdet kunna vara detsamma för ett väljarplan och alla aktiva förbindelser. I fortsättningen antas ett lågt kvalitetsvärde ange en god överföring, medan ett högre kvalitetsvärde anger en sämre överfö- ring över det betraktade planet. Vidare finns en variabel "Error_Last_Tirne", som anger om någon felaktighet uppträdde vid mottagandet av ett datapaket förra gången på detta väljarplan, företrädesvis med avseende endast på denna förbindelse, eller i liksom ovan ett annat fall (visas ej) vid mottagning på detta väljarplan totalt sett för alla aktiva förbindelser.For a connection, the storage on the output requires certain stored variables, which are stored in suitable memories or registers shown at 28 in Fig. 3. Thus, for each connection there is a pointer or indicator, which indicates the currently preferred selection plane, from which data cells in the first hand retrieved. Furthermore, for connection and each selector plan, there are variables, which include a quality value and a value CSNexp for the expected number of the next data packet, which must arrive at the output of the selector. The quality value indicates, based on previous transmission of data packets, how good the transmission is at the selector level for the connection in question. As an alternative (this case is not shown), the quality value could be the same for a dialer and all active connections. In the future, a low quality value is assumed to indicate a good transmission, while a higher quality value indicates a poorer transmission over the considered plane. Furthermore, there is a variable "Error_Last_Tirne", which indicates if any error occurred when receiving a data packet last time on this dial plane, preferably with respect to this connection only, or in as above another case (not shown) when receiving on this dial plane in total seen for all active connections.
I fig. 4 visas ett flödesschema för det i detta sammanhang intressanta förfarande, som utförs vid väljarens l utgång, dvs för en del av det vid 29 i fig. 3 antydda förfarandet. Förfa- randet startar i ett block 401 och sedan avgörs i ett block 403, om något datapaket har an- kommit. Om det avgörs, att detta är inte fallet, upprepas avgörandet tills svaret på avgörandet i blocket 403 blir ja och då bestäms i ett block 404 den förbindelse, till vilken det mottagna paket hör. Sedan utförs i ett block 405 ett avgörande, huruvida kvaliteten hos det för tillfället aktiva eller föredragna väljarplanet är tillräckligt bra. Om detta inte är fallet, byts aktivt plan i ett block 407. Villkoret i blocket 405 tillsammans med blocket 407 har ett innehåll, som framgår av följande korta pseudokodsrutin. "delta" är här ett talvärde, som ger avgörandet i blocket 405 en viss hysteres. if quality(current_plane)-delta> quality(standby__plane) then change plane Föredraget plan byts alltså i blocket 405 endast om det för tillfället föredragna planet ("current_plane") har ett kvalitetsvärde ("quality"), som är "delta" sämre än det andra planets ("standby_plane") kvalitet (i det allmänna fallet sämre än kvaliteten hos varje annat plan). 20 25 30 35 515 420 6 Efter testen av kvalitet i blocket 405 och eventuellt byte av plan i blocket 407 utförs i ett block 409 ett förfarande för mätning och värdering av kvaliteten med avseende på sek- vensriktigheten hos datapaketen för det plan, på vilket den mottagna datacellen överfördes.Fig. 4 shows a flow chart for the procedure of interest in this context, which is carried out at the output of the selector 1, ie for a part of the procedure indicated at 29 in Fig. 3. The procedure starts in a block 401 and then is decided in a block 403, if any data packet has arrived. If it is determined that this is not the case, the decision is repeated until the answer to the decision in block 403 is yes and then in a block 404 the connection to which the received packet belongs is determined. Then, in a block 405, a decision is made as to whether the quality of the currently active or preferred selector plane is good enough. If this is not the case, the active plane of a block 407 is changed. "delta" here is a numeric value, which gives the decision in block 405 a certain hysteresis. if quality (current_plane) -delta> quality (standby__plane) then change plane The preferred plan is thus changed in block 405 only if the currently preferred plane ("current_plane") has a quality value ("quality"), which is "delta" worse than the quality of the other plane ("standby_plane") (generally worse than the quality of any other plane). After the test of quality in block 405 and possible change of plane in block 407, a method is performed in a block 409 for measuring and evaluating the quality with respect to the sequence accuracy of the data packets for the plane on which it received data cell was transferred.
Detta förfarande skall närmare beskrivas i samband med flödesschemat i fig. 5 nedan. Efter detta belönas i ett block 411, att ett korrekt datapaket har anlänt, och då minskas kvalitetsvär- det (lägre kvalitetsvärde innebär såsom tidigare en högre kvalitet hos planet ) för det betrak- tade planet med ett värde "CR" (= "Cell Received"), medan kvalitetsvärdet för det andra väljarplanet ökas, dvs försämras med samma värde.This procedure will be described in more detail in connection with the fl fate schedule in fi g. 5 below. After this, in a block 411, it is rewarded that a correct data packet has arrived, and then the quality value is reduced (lower quality value means, as before, a higher quality of the plane) for the considered plane with a value "CR" (= "Cell Received "), while the quality value of the second selector plane is increased, ie deteriorated by the same value.
Efter detta betraktas i ett block 413, huruvida något fel finns i datapaketets fält 11 med den egentliga informationen Payload, genom kontroll av checksumman PEC i fältet 21 för detta. Om datapaketet har fått en markering, att denna checksumma PEC, alltså kontrollsum- man för fåltet Payload, är rättad, ökas (= försämras) kvalitetsvärdet med en storhet "PE" (= "Payload Error"), och detta utförs i ett block 415. Sedan kontrolleras i ett block 417, om just det betraktade datapaketet har levererats vidare till det utgående FIFO-registret 31 (fig. 3) för att sändas ut från väljarenheten 1. Det förfarande, som används för detta, dvs för val av dataceller från i första hand det för tillfället föredragna planet för att bilda en så korrekt från väljaren 1 utgående cellström som möjligt, beskrivs inte här, men kan utföras såsom anges i vår samtidigt ingivna patentansökan med titel "Sätt för hantering av redundanta väljarplan i paketväljare och väljare för utförande av sättet". Om datapaketet är ett datapaket, som alltså sänds vidare i den utgående strömmen av datapaket från väljaren 1, minskas (= förbättras) kvalitetsvärdena för båda väljarplanen med ett värde "CT" (= "Cell Transmitted"). Efter kontrollen i blocket 417 och den eventuella ändringen av kvalitetsvärdena i blocket 419 är hanteringsrutinen slut i ett block 421.After this, in a block 413, it is checked whether there is an error in the data packet field 11 with the actual information Payload, by checking the checksum PEC in the field 21 for this. If the data packet has been marked that this checksum PEC, ie the checksum for the Payload field, has been corrected, the quality value is increased (= deteriorated) by a quantity "PE" (= "Payload Error"), and this is performed in a block 415 Then, in a block 417, it is checked whether the particular data packet in question has been forwarded to the outgoing FIFO register 31 (Fig. 3) to be transmitted from the selector unit 1. The method used for this, i.e. for selecting data cells from primarily the currently preferred plane to form a cell current as accurate as possible emanating from the selector 1 is not described here, but can be performed as stated in our co-pending patent application entitled "Methods for handling redundant selector planes in packet selectors and selectors for execution of the method ". If the data packet is a data packet, which is thus forwarded in the outgoing stream of data packets from selector 1, the quality values for both selector planes are reduced (= improved) by a value "CT" (= "Cell Transmitted"). After the check in block 417 and the possible change of the quality values in block 419, the handling routine is over in a block 421.
Nedan ges i pseudokod den rutin, som utförs i blocket 409 i fig. 4.Below is given in pseudocode the routine, which is performed in block 409 in fi g. 4.
Procedure(csn-test) if CSNcell = CSNexp then GSNexp + + report(OK) if Error-Last-Tirne then report(intruding cell) Error-Last-Time: = false end else if Error-Last-Time then ifCSNcell=CSNexp + 1 then report(single error) else report(double error) end 10 20 25 30 35 515 420 7 CSNexpz=CSNcell + 1 Error-Last-Tirne: = false else if CSNcell=CSNexp + 1 then report(lost cell) CSNexpz=CSNcell + 1 else report(single error) Error-Last-Time: =true end end end I fig. 5 visas ett flödesschema, som motsvarar denna rutin. Rutinen startar i ett block 501, och därefter efterfrågas i ett block 503, om den betraktade cellens sekvensnummer CSNcell är lika med det förväntade sekvensnumret CSNexp för nästa datapaket, som vid utgången från väljaren 1 skall mottas på detta plan för denna förbindelse. Om det avgörs, att överensstämmelse finns, dvs att datapaketets sekvens är korrekt, ökas i ett block 505 värdet CSNexp för det förväntade nästa datapaketets sekvensnummer. Sedan rapporteras värdet "OK" till en enhet, ej visad, för utvärdering av förbindelserna. Härefter avgörs i ett block 507, om något fel har inträffat förra gången vid mottagning av ett datapaket på detta plan, genom att kontrollera den ovan nämnda variabeln "Error-Last-Time". Om fel förelåg förra gången, rapporteras i blocket 509 värdet "intruding cell". Efter blocken 507 och 509 är ma- növerrutinen klar och flödet övergår till ett slutblock 511.Procedure (csn-test) if CSNcell = CSNexp then GSNexp + + report (OK) if Error-Last-Tirne then report (intruding cell) Error-Last-Time: = false end else if Error-Last-Time then ifCSNcell = CSNexp + 1 then report (single error) else report (double error) end 10 20 25 30 35 515 420 7 CSNexpz = CSNcell + 1 Error-Last-Tirne: = false else if CSNcell = CSNexp + 1 then report (lost cell) CSNexpz = CSNcell + 1 else report (single error) Error-Last-Time: = true end end end Fig. 5 shows a fate diagram, which corresponds to this routine. The routine starts in a block 501, and is then requested in a block 503, if the sequence number CSNcell of the viewed cell is equal to the expected sequence number CSNexp for the next data packet, which at the output of the selector 1 is to be received on this plane for this connection. If it is determined that there is a match, ie that the sequence of the data packet is correct, in a block 505 the value CSNexp is increased for the sequence number of the expected next data packet. Then the value "OK" is reported to a device, not shown, for evaluation of the connections. Next, in a block 507, it is determined, if any error has occurred the last time when receiving a data packet on this plane, by checking the above-mentioned variable "Error-Last-Time". If an error occurred last time, the value "intruding cell" is reported in block 509. After blocks 507 and 509, the maneuvering routine is complete and fl fate passes to an end block 511.
Om det i blocket 503 avgjordes, att det betraktade datapaketet inte kommer i rätt sek- vensföljd, avgörs i ett block 513, huruvida fel förelåg förra gången, genom testning av vari- abeln Error-Last-Time. Om fel förelåg förra gången, avgörs i ett block 515, om det betrakta- de datapaketets sekvensnummer möjligen är lika med det förväntade sekvensnumret CSNexp ökat med 1, dvs om ett enda datapaket har borttappats. Om detta avgörs vara fallet, rapporte- ras i blocket 517 värdet "single error". Om detta inte är fallet, rapporteras i stället i ett block 519 "double error". Efter blocken 517 och 519 sätts i ett block 521 det förväntade sekvens- numret CSNexp för detta plan lika med det betraktade datapaketets sekvensnummer CSNcell ökat med 1. Efter detta är rutinen slut i blocket 511.If it was decided in block 503 that the viewed data packet does not come in the correct sequence, it is decided in a block 513 whether an error occurred last time, by testing the variable Error-Last-Time. If an error occurred last time, it is determined in a block 515, whether the sequence number of the data packet viewed is possibly equal to the expected sequence number CSNexp increased by 1, ie whether a single data packet has been lost. If this is determined to be the case, the value "single error" is reported in block 517. If this is not the case, "block error" is reported in block 519 instead. After blocks 517 and 519, in a block 521, the expected sequence number CSNexp for this plane is set equal to the sequence number CSNcell of the considered data packet increased by 1. After this, the routine ends in block 511.
Om det i blocket 513 avgjordes, att inte något fel förelåg förra gången, avgörs i ett block 523, om det betraktade datapaketets sekvensnummer CSNcell är lika med det förvänta- de sekvensnumret ökat med ett, dvs liksom i blocket 515, om ett datapaket har överhoppats.If it was decided in block 513 that there was no error last time, it is decided in a block 523, if the sequence number CSNcell of the viewed data packet is equal to the expected sequence number increased by one, ie as in block 515, if a data packet has been skipped .
Om detta visar sig vara fallet, rapporteras i ett block 525 värdet "lost cell" och vidare sätts det förväntade sekvensnumret CSNexp lika med det betraktade datapaketets sekvensnummer ökat med ett. Om det i blocket 523 avgjordes, att det betraktade datapaketets sekvensnummer inte överensstämmer med sekvensnumret för datapaketet efter det förväntade sekvensnumret, (71 10 15 20 25 30 35 515 420 8 rapporteras i ett block 527 värdet "single error" ._ Efter blocket 525 respektive 527 är rutinen slut i blocket 511.If this proves to be the case, in a block 525 the value "lost cell" is reported and further the expected sequence number CSNexp is set equal to the sequence number of the viewed data packet increased by one. If it was decided in block 523 that the sequence number of the data packet viewed does not correspond to the sequence number of the data packet after the expected sequence number, (71 10 15 20 25 30 35 515 420 8 the value "single error" is reported in a block 527. 527, the routine ends in block 511.
De olika rapporterade värdena "OK", "lost cell", "single error", "double error", "intruding cell" kan i en ej visad utvärderingsenhet tilldelas lämpliga talvärden eller utvärde- ras på annat sätt med hjälp av en mer komplicerad algoritm för modifiering av kvalitetsvärdet för den betraktade förbindelsen. Nedan ges en tabell, som anger de olika möjliga fallen vad beträffar de mottagna datapaketens sekvensnummer och de rapporterade värden, som dessa olika följder av sekvensnummer genererar enligt pseudokodsrutinen ovan och flödesschernat i fig. 5.The various reported values "OK", "lost cell", "single error", "double error", "intruding cell" can in an evaluation unit not shown be assigned appropriate numerical values or evaluated in another way using a more complicated algorithm for modifying the quality value of the considered connection. Below is a table indicating the different possible cases in terms of the sequence numbers of the received data packets and the reported values generated by these different sequences of sequence numbers according to the pseudocode routine above and the flow chart in Fig. 5.
Rapporterade Sekvensnummer CSNcell Förlopp värden k k+1 k+2 k+3 rätt OK, OK, OK k k+2 k+3 k+4 1 förlorat paket lc, OK, OK k k+2 k+4 k+5 2 förlorade paket lc, lc, OK k k+2 k' k'+1 1 förlorat paket, ny sekvens lc, se, OK k k' k+1 k+2 1 felaktigt paket se, ic, OK k k' k+2 k+3 1 felaktigt paket, 1 förlorat se, se, OK paket k k' k'+lk'+2 ny sekvens se, de, OK k k' k" k"+1 1 felaktigt paket, ny sekvens se, de, OK Här står beteckningarna lc för värdet "lost cell", se för "single error", de för "double error", ic för "intruding cell".Reported Sequence numbers CSNcell Sequence values k k + 1 k + 2 k + 3 correct OK, OK, OK k k + 2 k + 3 k + 4 1 lost packet lc, OK, OK k k + 2 k + 4 k + 5 2 lost packages lc, lc, OK k k + 2 k 'k' + 1 1 lost package, new sequence lc, see, OK kk 'k + 1 k + 2 1 incorrect package see, ic, OK kk' k + 2 k +3 1 incorrect package, 1 lost se, se, OK package kk 'k' + lk '+ 2 new sequence se, de, OK kk' k "k" +1 1 incorrect package, new sequence se, de, OK Here the designations lc stand for the value "lost cell", see for "single error", those for "double error", ic for "intruding cell".
I det enklaste fallet tilldelas de olika rapporterade värdena lc, se, de, ic olika talvärden, vilka direkt adderas till kvalitetsvärdet. Ett val som ger ett tämligen bra uppförande hos för- farandet kan vara följande lc=2 ic=5 se=10 de=100 medan det rapporterade värdet OK givetvis inte ger någon ändring av kvalitetsvärdet, dvs OK sätts lika med 0.In the simplest case, the different reported values are assigned lc, se, de, ic different numerical values, which are directly added to the quality value. A choice that gives a fairly good behavior of the procedure can be the following lc = 2 ic = 5 se = 10 de = 100 while the reported value OK of course does not give any change of the quality value, ie OK is set equal to 0.
Motsvarande värden för de i samband med fig. 4 beskrivna öknings- resp minsknings- värdena PE (= Payload Error) och CT (= Cell Transmitted) kan vara PE=2 CT=lCorresponding values for those associated with fi g. 4 increase and decrease values PE (= Payload Error) and CT (= Cell Transmitted) can be PE = 2 CT = l
Claims (22)
Priority Applications (15)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| SE9300485A SE515420C2 (en) | 1993-02-15 | 1993-02-15 | Switching plane selection for packet switch network |
| SE9301805A SE516073C2 (en) | 1993-02-15 | 1993-05-27 | Methods for handling redundant selector planes in packet switches and packet switches for execution of the method |
| MX9401083A MX9401083A (en) | 1993-02-15 | 1994-02-10 | A METHOD FOR HANDLING REDUNDANT SWITCHING PLANS IN PACKAGE SWITCHES AND A PACKAGE SWITCH TO CARRY OUT THE METHOD. |
| JP6517961A JPH08510870A (en) | 1993-02-15 | 1994-02-10 | Redundant switching plane processing method in packet switch and packet switch for implementing this method |
| DE69433473T DE69433473D1 (en) | 1993-02-15 | 1994-02-10 | METHOD FOR TREATING REDUNDANT SWITCHING LEVELS IN PACKAGE SWITCHES AND MEDIATION FOR IMPLEMENTING THE METHOD |
| CA002156051A CA2156051A1 (en) | 1993-02-15 | 1994-02-10 | A method for handling redundant switching planes in packet switches and a packet switch for carrying out the method |
| PCT/SE1994/000109 WO1994018769A1 (en) | 1993-02-15 | 1994-02-10 | A method for handling redundant switching planes in packet switches and a packet switch for carrying out the method |
| CN94191610A CN1120378A (en) | 1993-02-15 | 1994-02-10 | Method for processing redundant switching platform in packet switching equipment and packet switching equipment implementing the method |
| KR1019950703425A KR100296993B1 (en) | 1993-02-15 | 1994-02-10 | How to Handle the Redundant Switching Plane of a Packet Switch and Which Packet Switch Performs This Method |
| EP94907753A EP0683948B1 (en) | 1993-02-15 | 1994-02-10 | A method for handling redundant switching planes in packet switches and a packet switch for carrying out the method |
| BR9406162A BR9406162A (en) | 1993-02-15 | 1994-02-10 | Process of forwarding through the output side of a packet data packet switch on the packet switch and its packet switch |
| AU61193/94A AU696801B2 (en) | 1993-02-15 | 1994-02-10 | A method for handling redundant switching planes in packet switches and a packet switch for carrying out the method |
| US08/196,485 US5485453A (en) | 1993-02-15 | 1994-02-15 | Method for handling redundant switching planes in packet switches and a packet switch for carrying out the method |
| FI953840A FI953840A7 (en) | 1993-02-15 | 1995-08-14 | Method for handling redundant switch planes in packet switches and packet switch for implementing this method |
| NO953186A NO953186L (en) | 1993-02-15 | 1995-08-14 | Process for handling redudant switching planes in packet switches and packet switches for carrying out the method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| SE9300485A SE515420C2 (en) | 1993-02-15 | 1993-02-15 | Switching plane selection for packet switch network |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| SE9300485D0 SE9300485D0 (en) | 1993-02-15 |
| SE9300485L SE9300485L (en) | 1994-08-16 |
| SE515420C2 true SE515420C2 (en) | 2001-07-30 |
Family
ID=20388892
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| SE9300485A SE515420C2 (en) | 1993-02-15 | 1993-02-15 | Switching plane selection for packet switch network |
Country Status (1)
| Country | Link |
|---|---|
| SE (1) | SE515420C2 (en) |
-
1993
- 1993-02-15 SE SE9300485A patent/SE515420C2/en not_active IP Right Cessation
Also Published As
| Publication number | Publication date |
|---|---|
| SE9300485L (en) | 1994-08-16 |
| SE9300485D0 (en) | 1993-02-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| SE516073C2 (en) | Methods for handling redundant selector planes in packet switches and packet switches for execution of the method | |
| CA2069346C (en) | Atm cell error processing system | |
| CA2131080C (en) | Path changing system and method for use in atm communication apparatus | |
| US5394398A (en) | Method and circuit arrangement for the transmission of message cells within an ATM network | |
| US6067286A (en) | Data network switch with fault tolerance | |
| US5450399A (en) | Clad having majority decision address table controller | |
| US6976154B1 (en) | Pipelined processor for examining packet header information | |
| IL124011A (en) | Atm switch | |
| EP0413698A1 (en) | Communication switching system. | |
| JPH04229749A (en) | Method and circuit apparatus for route selection of message packet | |
| EP0858717A1 (en) | Improvements in or relating to an atm switch | |
| US5450397A (en) | Method for handling redundant switching planes in packet switches and a packet switch for carrying out the method | |
| US5199028A (en) | Asynchronous time division network | |
| US5153920A (en) | Method and circuit arrangement for the acceptance and forwarding of message cells transmitted according to an asynchronous transfer mode by an asynchronous transfer mode switching equipment | |
| JPH04229748A (en) | Method and circuit apparatus for route selection of message packet | |
| US5949784A (en) | Forwarding mechanism for multi-destination packets to minimize per packet scheduling overhead in a network forwarding engine | |
| US5504754A (en) | Method and arrangement for the load testing of a switch for cell structured digital data | |
| SE515420C2 (en) | Switching plane selection for packet switch network | |
| JPH08214011A (en) | Method of inserting cell in ATM type flow and apparatus for implementing the same | |
| US6944161B2 (en) | Method and device for assigning cell data units to sequential storage positions of data frames using a pointer position estimation | |
| SE503316C2 (en) | Method for monitoring a memory and circuitry for this | |
| GB2299914A (en) | Data network switch with fault tolerance | |
| CN100438487C (en) | Method and apparatus for data packet switching | |
| US6901054B2 (en) | Method for checking the transfer of data cells in an asynchronous switching arrangement, elementary switching unit and network equipped for such a method | |
| JPH10341240A (en) | Exchange equipment |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| NUG | Patent has lapsed |