A METHOD FOR HANDLING REDUNDANT SWITCHING PLANES IN PACKET SWITCHES AND A PACKET SWITCH FOR CARRYING OUT THE METHOD

Abstract: A switch (1) for the transfer of data packets comprises in the conventional way input ports (3) and output ports (5) and parallel switching planes, which are identical to each other. The switch (1) establishes connections between input ports (3) and output ports (5) through the parallel switching planes. In each output port (5) there is for each switching plane and each established connection a buffer (25) accommodating at least one data packet. In the output port there is in addition a logical selection device (29) for selecting data packets from the switch (1) and from the different planes in such a way that a data packet stream, which is as correct as possible, is obtained from the output port, and it selects in the first place data packets from a switching plane, which is the preferred plane at each instant. The selection device (29) comprises a quality determining unit, which at each occasion determines the preferred plane by means of quality values for each plane. These quality values are determined by means of an evaluation of data packets, which have arrived earlier to the output port.

Description: A method for handling redundant switching planes in packet switches and a packet switch for carrying out the method TECHNICAL FIELD The invention is related to a method for handling parallel and independent switching planes in a packet switch and a packet switch by means of which the method can be performed. BACKGROUND OF THE INVENTION In order that a switch in a network for the transfer of data packets, for instance an ATM-network, will be able to satisfy the requirement of a high reliability, some form of redundancy is required, that is that some parts of the hardware of the switch are made as double or multiple units, which perform exactly the same operations and operate in parallelity to each other. A common way of providing this redundancy is by means of parallel and independent switching planes. The transfer of data packets in a packet switch may be incurred with errors, so that for instance individual data packets disappear, will be wrongly addressed or that bit errors appear in the data packet. These errors can then be detected, when the data packet is to be forwarded from the packet switch. If several switching planes are provided, the task thus is to grasp and forward, at the output port of the packet switch, only the data packets transferred without errors and also monitor that the data packets are forwarded in a correct sequential order. In packet networks and particularly ATM-networks it is, to some extent, in addition permitted that data packets are lost or discarded. For instance, the buffers necessary for the handling of the statistical multiplexing in a packet switch can be filled, whereafter data packets arriving to the buffer may be lost. Having a redundancy in the switch, for instance with parallel switching planes, this means that the same data packet in the different planes is not available at the same time at the output port of the switch, where the redundancy is terminated, that is in the connection point of the parallel switching planes. These different errors can, as has been observed above, be SUBSTITUTE SHEET detected when the data packets leave the individual switching planes to be forwarded from the packet switch. The reliability and the communication quality can here be improved and the forwarding made quicker by selecting "the best switching plane" according to some algorithm, i.e. data packets are selected first from that switching plane which in some respect can be considered to have the best communication quality. A change of the preferred switching plane must in this case be performed in a controlled way such that, due to the possibly varying communication velocity on the different planes, data packets are not lost or unnecessarily doubled in such a change of preferred plane. PRIOR ART The European patent application EP-A1 0 381 334 discloses the handling of asynchronous, redundant digital data messages. Several parallel and equivalent communication channels are each one connected to an own buffer. The various data messages which have been received in an arbitrary order are sorted and a majority choice is performed to determine the channels which have correct data messages. In the European patent application EP-Al 0 453 607 a packet switch is disclosed having redundant switching planes. For each output port of the switch there is an evaluation unit, which receives data packets from the different switching planes and in the common way selects data packets having no errors but also selects preferably or in the first place data packets from that switching plane on which the data packets are communicated in the most slow way. For each connection there is at the output side a counter provided for each one of the switching planes where the counter for a plane, on which a packet has been correctly transferred, is increased by a fixed amount and the counters for the other planes are decreased by another smaller amount. The preferred plane from which packets will be chosen in the first place is the plane having the lowest value in its associated counter. SUBSTITUTESHEET SUMMARY OF THE INVENTION It is a purpose of the invention to provide a method and a packet switch according to what has been said above having a simple and efficient choice of a preferred switching plane for accessing those data packets which are to be forwarded from the packet switch, permitting that an outgoing data packet stream is as correct as is possible or reasonable. It is a further purpose of the invention to provide a method and a packet switch according to what has been said above comprising, in the determination of quality of the different switching planes, a detailed evaluation of the stream of data packets passing through the switch allowing an improved choice of a preferred switching plane for accessing those data packets which are to be forwarded from the packet switch. According to the invention a method and a packet switch are provided achieving the purposes mentioned. The detailed characteristics and the scope of the invention appear from the appended patent claims. Thus, statistics is collected for the data packets which have been transferred on each switching plane. From this statistics at each instant that switching plane is determined having the best communication quality. Data packets are selected in the first place from this plane until some other switching plane is judged to be better. The choice of a switching plane can be performed either for each packet communicated through the switch to an output unit or port, for each established connection or on each link between an input unit or port and an output unit or port of the switch unit, where on each link thus generally multiple simultaneous connections may be established. Thus, a switch.for the transfer of data packets in the common way has input units and output units and switching planes which are identical and parallel to each other. The switch may advantageously be arranged to establish several logical connections between input units and output units on the parallel switching planes. In each output port there is, for each switching plane and possibly in combination with each input unit or port of the switch or with each established connection, a buffer accommodating at least one data packet. In the output unit or port there is a selection device to select from the switch, data packets from the different planes in such a way, that a data packet stream which is as correct as possible is obtained from the output port or resembles as closely as possible the stream of data packets incoming to the switch. The selection device is arranged, in the first place, to select data packets from one, at each instant preferred switching plane. Further there is a quality determining unit provided at the output port, possibly comprised in the selection device, which at each instant, for instance when a data packet arrives to the output port, determines the preferred plane by means of quality values of each plane, which in turn are determined by means of data packets arrived previously to that output port. Further, it is preferred that the change of a preferred switching plane is not performed until another switching plane has a quality value which is better or higher than the quality value of the preferred plane and which deviates therefrom by an amount which is better or higher than a predetermined value. This will provide a hysteresis in the choice of a preferred switching plane, such that the preferred switching plane is not changed too often. This may be advantageous since hereby the total time consumption of the changes of the preferred switching plane will be reduced. The currently preferred switching plane can be common to all connections or also be specifically or individually determined for each input port to the switch or for each connection. In the corresponding way the quality value of each plane may be the same for all connections and input ports or be specifically or individually determined for a considered input port or a considered connection. In the latter cases then, new quality values for a particular input port or connection and for the switching planes can be SUBSTITUTE SHEET determined each time when a data packet arrives to the output port from the considered input port or on the considered connection respectively. The quality value of particular plane and possibly in combination with a particular input port or a particular connection is advantageously determined guided by detected errors in data fields within data packets which have been transferred earlier to the output port on this plane, possibly only for data packets communicated from the considered input port or the considered connection respectively. Therefore, there is at each output port error checking units evaluating check sums in data packets communicated through the switch. The quality value of a particular plane and possibly of a particular input port or connection respectively can advantageously also be determined guided by errors in the sequential order of data packets previously communicated on this plane to the output port, possibly only for data packets communicated from the considered input port or on the considered connection respectively. Since normally a sequential number is added to the data packet in the transfer thereof in a packet switch, the sequential number may be transferred from the buffer at the output port to the quality determination unit for evaluation of the sequential correctness of the packet. The quality value of a particular plane and possibly also of a particular input port or a particular connection respectively can further advantageously, by the quality determining unit be changed with a certain amount and in such a direction, that the quality will be better or higher for this plane possibly in combination with the connection, at each time when a correct data packet arrives to the output port through this switching plane and possibly from the considered input port or belonging to the considered connection respectively. The quality value also for the other planes, possibly in combination with the considered input port or the connection respectively, can also, by the quality determining unit be , SUBSTITUTE SHEET changed with a certain amount and in such a direction that the quality will be worse or lower for these planes possibly only in combination with the input port or the connection respectively, at each time when a correct data packet, through a switching plane and in the corresponding cases from the corresponding input port or belonging to the considered connection respectively arrives to the output port. The quality value of a plane possibly in combination with a considered input port or connection, can advantageously be changed with a certain amount and in such a direction that the quality will be better or higher for this plane, possibly in combination with the input port or the connection respectively, at each time when a data packet, through this switching plane and in the corresponding cases from the considered input port or belonging to the considered connection respectively, arrives in a correct sequential order to the output port. When only two switching planes are provided, the quality value of each plane may be substituted by a common quality value. Positive or high values for this common quality value can then indicate, that the communication is best on a first one of the two switching planes, while negative or low values indicate that the communication is best on the second switching plane. Hysteresis is then obtained in the corresponding way as above, such that errors in a single data packets not will cause a change of plane. The selection device can in this case also comprise the quality determining unit and can further, advantageously be divided into one selection device for the first plane and one selection device for the second plane, which will operate substantially independently of each other and only have access to a common memory, where information is stored in regard of the switching plane which is preferred at each instant and the common quality value. Such a division can give a quicker handling of the data packets in order to obtain a good output stream of data packets and it may also, with some modification, be used in the more complicated selection methods described above. The division SUBSTITUTESHEET will, however, become particularly efficient when using a quality value common to the two planes. BRIEF DESCRIPTION OF THE DRAWINGS The invention will now be described with reference to the accompanying drawings, on which - Fig. 1 is a schematic picture of a switch having parallel switching planes, - Fig. 2 is a schematic picture of a switch where all data packets are taken from only one plane, - Fig. 3 is a schematic picture of a switch, where all data packets from a particular input port always are taken from only one switching plane, - Fig. 4 schematically shows the handling of a data packet at the arrival to a packet switch, - Fig. 5 schematically illustrates the handling of data packets at the arrival thereof to an output port of a switch after the transfer through the switch, - Fig. 6 shows a flow diagram for the choice of an active plane, - Fig. 7 shows a flow diagram of a subroutine in the evaluation of the best plane, - Fig. 8 schematically illustrates an alternative handling of data packets at an output port, - Fig. 9 schematically illustrates a packet counter utilized in the handling according to Fig. 8, - Fig. 10 shows the format of a data packet transferred through the switch, - Fig. 11 shows an alternative format of a data packet having control information for a forced control of the handling at the output port, - Figs. 12 and 13 illustrate flow diagrams of logical procedures which are performed at the output port in the embodiment according to Fig. 8 without and with respectively, a forced control of the handling of data packets at the output port, - Fig. 14 shows a flow diagram illustrating the handling of a data packet at the arrival thereof to a packet switch. DESCRIPTION OF PREFERRED EMBODIMENTS In Fig. 1 the construction of a packet switch 1 is schematically SUBSTITUTESHEET illustrated. The switch unit 1 comprises inputs at the input side or side A, which are here represented by an input unit or input port 3, and a number of output ports at the output side or side B, which are here represented by an output unit or output port 5. The input unit 3 and output unit 5 are connectable by means of logic of the packet switch, that is the logic circuits inside the switch core, wherein electrical connections or links are established in parallel on n multiple switching planes. A data packet which arrives to side A and thus to the input unit 3, generates n identical data packets which are forwarded on the n switching planes, where the communication of these identical data packets are performed totally independently of each other on the different switching planes. These identical data packets then arrive to the output unit 5 and therein correctly transferred data packets are selected and a sequence or stream of output data packets is created having a correct sequential order of the different data packets. In the output unit 5 thus is selected, in some way, only one of the transferred identical data packets corresponding to an incoming data packet, which has previously arrived to the input unit 3. In Fig. 2 a switch is illustrated having two switching planes which are numbered 1, 2, and two input ports 3^ and 3 2 and an output port 5. In the case illustrated here, switching plane No. 1, is active, i.e. a selection procedure present in the output port 5 selects in the first place data packets which have been communicated on plane No. 1. This is true for all data packets independently of the input port, on which they have arrived to the switch. This selection method may then be indicated as "selection per link". The switching plane, which has been determined to be the best one by means of some election criterion, is set to be active. This choice procedure can very simply be performed in the logical circuits of the output unit, but the disadvantage of this "choice per link" naturally is that single errors in a switching plane, for instance at some intermediate point, through which only some data packets pass, will result in a change of active switching plane in spite of the fact that this switching plane may give a correct transfer of other data packets. SUBSTITUTE SHEET Another possibility eliminating this disadvantage is illustrated in Fig. 3 for a packet switch 1 having input units 3^, ••♦• 3 n , two switching planes having Nos. 1, 2 and output units 5 , 5 m . For a particular considered output unit, for data packets arrived to the switch at a particular input port 3^, in this case data packets are selected in the first place from one of the two planes. This choice procedure can be indicated as "choice per path". In order to perform the method some identification is required of the input port on which the data packet has arrived to the switch 1. In the case illustrated in the Figure this may be achieved by arranging that in each input port 3^, .... 3 n , the order or logical number 1, ..., n of the input port is inserted in the data packet or added thereto. This number is then used by logic circuits in the output port, to which the data packet is communicated inside the switch, for the choice of a preferred plane for the considered input unit, and the number is here also removed from the data packet. The switching plane 1 can thus be the preferred plane for a certain input and the switching plane 2 for other inputs. Another possibility for the choice of a preferred redundant plane is given by utilizing information, which conventionally already exists inside or in any case will be added to and inserted in a data packet when it arrives to an input port of the switch, and which is required for the identification of the data packet. Only this case will be considered hereinafter and more specifically the fact is utilized that each data packet belongs to or is associated with a logic connection. Such a logic connection is established through the whole packet switching network (not shown in the Figures) , and in particular through each switch 1, when initially a request of the communication of information is received from a terminal (not shown) in the network. This choice procedure may then be indicated as "choice per connection". A modification of the normal procedure at the arrival of the data packet to the switch is thus not required in this case. In Fig. 4 the handling or processing of the data packets at the incoming side A is schematically illustrated, in a normal SUBSTITUTE SHEET transfer through a packet switching network, i.e. after arrival of a packet to an input unit 3 of a switch 1, before the data packets are issued on the switching planes, which in the case illustrated here are two. In the following it will also always be assumed that there only two switching planes having the order numbers 1 and 2. In a processing unit 7 particular information is generated, redundancy information and/or administrative information, and it is added to or inserted in a data packet, before it is transmitted simultaneously into the two switching planes Noε. 1 and 2 through a transmission node 9. The generation unit 7 stores and reads required information for its operation from a memory 10 comprising various data fields. In Fig. 10 the configuration of the data packets is illustrated, after the passage through the generating and processing unit 7. The data packet thus comprises the proper or real information which is to be transmitted through the whole switching network from a source terminal (not shown) to a destination terminal (not shown) and which is located in a field 11, here called "Payload". In addition, the original or real data packet may contain an initial field 13, here indicated as "Header", which can contain both general and other administrative information in regard of the data packet, such as the address of the destination terminal, the address of the source terminal, i.e. the origin address, information relating to priority, channel number, etc. In the unit 7 for the generation of the extra information required for the transfer of a data packet inside the switch 1 a field 15 is inserted in the data packet containing an internal connection number, called "VPI/VCI", in a field 17 a sequential number, "CSNcell", and two check sums, "IHEC" = "Internal Header Error Check" and "PEC" = "Payload Error Check". The check sums are found in fields 19 and 21 respectively in the completed data packet. The first check sum "IHEC" in the field 19 is thus related in particular to the information comprised in the various administrative fields 13, 15, 17 in the complete data packet, while the check sum "PEC" in the second field 21 is related particularly to the real or original information SUBSTITUTESHEET contents of the data packet, "Payload", in the field 11. The internal connection number "VPI/VCI" may in the unit 7 be obtained from information of a logical connection to which the data packet belongs, and this number is unique for each such logical connection. The sequential number "CSNcell" is taken from a field or register in a table or list 47 in the memory 10 (see Fig. 4) and indicates in some simple way, for each logical connection number "VPI/VCI", the sequential order of the data packet in the stream of data packets which is transmitted over the established logical connection, such that for instance the first data packet being sent on a connection is given the sequential number 1, the second one the sequential number 2, etc. Owing to the generally limited length of the field 17 provided for the sequential number "CSNcell" and since often a very large number of packets are transferred for each connection, an increasing sequence of sequential numbers will after some time inevitably achieve the highest number which can be accommodated in the field 17. Then the sequential numbers are restarted from the beginning. The sequential numbers will thus return cyclically, modulo the highest number which can be represented in the field 17. In the following such an increasing, consecutive numbering modulo some number is supposed to be valid for the sequential numbers "CSNcell". The connection number "VPI/VCI" in the field 15 can in certain cases also be inserted in the data packet before arrival of the packet to the switch 1. In Fig. 14 a flow diagram is shown for the handling of data packets in the input unit 3 of the switch 1. The diagram starts in a block 1401 and after that in a block 1403 it is decided, if a new data packet has arrived. If it is not the case, the block 1403 is repeated again and again, until a data packet has arrived to the input unit 3. Then the extra internal information is generated which is necessary for the simultaneous transmission of the data packet 21 on the multitude of redundancy planes, as is indicated at 7 in Fig. 4 and in a block 1405 in Fig. 14. It means, as has been indicated above, that the SUBSTITUTESHEET logical connection to which the data packet belongs is determined and the corresponding internal connection number "VPI/VCI" is found or generated, that the internal sequential number "CSNcell" of the data packet is set equal to the next current sequential number "CSNnextA" for this connection which is taken from a field associated with this connection in the list or table 47 (Fig. 4). After that the contents "CSNnextA" in the field in the list 47 is increased to the number of the next data packet, i.e. in the case treated here generally increased by the number 1 and considering that the sequence order of the sequential numbers is modulo some number. At last in the block 1405 the check sums "IHEC" and "PEC" are calculated, as has been indicated above. In a block 1409 then these new fields are inserted in the data packet. In a block 1411 the data packet modified hereby is copied, transferred to suitable registers (not shown, associated with the node 9) for the different switching planes and are transmitted on these. The routine is then terminated and the program flow returns to the block 1403 to decide if any new data packet has arrived to side A. At the output side or side B of the switch 1, in an output unit 5 the data packets are processed by a procedure performed by various units which are schematically illustrated in Fig. 5. When data packets have passed through the interior of the switch unit 1, on the different switching planes, the data packets arrive to redundancy terminating circuits, i.e. circuits which process the transferred data packets and select data packets to be forwarded from the output unit 5, such that a stream of data packets is forwarded in which the sequential order of the individual packets is as correct as possible and also the proper information field in each packet is as correct as possible. First it is checked by a unit 23, as is indicated in Fig. 5, that the information in the data packet has been communicated correctly through the switch 1 and in particular that the check sum "IHEC", which is intended for the administrative portion of the data packet, is correct. If this check sum "IHEC" proves to SUBSTITUTE SHEET be incorrect, the data packet is discarded, as is indicated at 24, since it then can have been given a wrong label, wrong addresses, a wrong sequential number, etc. in the communication on the corresponding switching plane. Also the check sum "PEC" related to the real information contents of the data packet in the field "Payload" is calculated and is corrected, if necessary. In a possible correction of this check sum an indication thereof is inserted in the data packet. However, if the check sum "IHEC" for the administrative fields of the data packet is correct, the data packet is transferred to a register 25 which is configured to store only one data packet. Then a special procedure is performed in a selection unit 27 performing a selection algorithm, for selection of the register 25 from which the data packet is to be forwarded from the output unit 5 and the entire switch 1. In a determination of quality values of the planes, which will be described more closely hereinafter, the logic selection unit 27 comprises a unit 26 for the calculation of these quality values. From the registers 25 the selection procedure performed by the selection unit 27 receives various information relating to the stored data packet such as its connection number "VPI/VCI" and its sequential number "CSNcell". The selection unit 27 controls a switching or selecting device 29, which is connected to the registers 25 to select the data packet therefrom, that is to select data packets from a suitable or preferred switching plane. By means not described here, data packets which are located in or taken from the register 25 of this preferred switching plane, are transferred to a FIFO-type output register 31, in such a way that an output stream is obtained which is as correct as possible. The output register 31 must be rather large and should be able to accommodate several data packets which are ready to be forwarded from the switch 1. The algorithm performed by the unit 27 for selection of data packets uses among other variables the above mentioned quality values for each connection and each plane or only for each plane to elect a plane preferred at each instant. SUBSTITUTESHEET If it can be presupposed that the copies of the same data packet which are communicated on the two planes, arrives to the output 5 approximately simultaneously, i.e. approximately at the same time are stored in the respective registers 25, no resequencing of the communicated data packets or other complicated logic is required for achieving the best possible forwarded sequence of data packets. If for instance a data packet having a particular sequential number "CSNcell" is not found among the packets transmitted over a particular plane, such a logic would be able to try to find this packet among the data packets transmitted on the other plane. It would require a buffer storage for several data packets for each plane at the output port. Such a solution is described in the simultaneous patent application having the title "A method for handling redundant switching planes in packet switches and a switch for carrying out the method", corresponding to the Swedish patent application SE A 9300484-4, filed 15 February 1993 in the name of Ellemtel Utvecklings AB, which is incorporated herein as a reference. However, in the selection procedure of data packets as described therein, data packets are also always selected in the first place from one of the redundant planes. A choice of this preferred plane can be performed in the way described below. For the handling at the output side some stored variables are required for each currently established connection. They are stored in appropriate data fields in memories or registers indicated at 28 in Fig. 5. For each connection, as specified by the contents of the field "VPI/VCI" in the data packet, there is thus a pointer or indicator "current_plane" indicating the switching plane preferred at the current instant, from which data packets are taken in the first place. Further, there is, specifically for a considered connection and for each switching plane a few variables, comprising a quality value "quality" and a value "CSNexp" for the expected sequential number of the next data packet which is to arrive to the output side of the switch. The quality value indicates, based on the earlier communication of data packets, how good the communication is on the switching plane for the considered connection. As alternatives (these SUBSTITUTE SHEET cases are not shown) the quality value can be the same for one switching plane and all active connections ("choice per link") or for each connection from a particular input port ("choice per path") in a manner in line with the discussion above. In the following it is assumed, for facilitating the description, that a low quality value indicates a good communication while a high quality value indicates a worse communication on the considered plane. Further, there is a variable "Error_Last_Time", also stored in the memory 28 for each combination of connection number and switching plane, which indicates if some error occurred at the reception of a data packet the last time on this switching plane, preferably in regard of only this connection, or as above "per link" or "per path" in other cases (not shown) what would mean that fewer data fields are required in the memory 28 for this variable. In the other cases thus the variable would be valid for reception of packets on this switching plane totally for all active connections or from only a particular input port respectively. In the following a procedure for among other things choice of a preferred, best switching plane, performed by the selection unit 27 and in particular by the quality unit 26 will be described with reference to flow diagrams and program sequences written in pseudocode for the case where the choice is performed both for each connection and for each plane. In the following, as above, only two switching planes No. 1 and No. 2 are assumed to be arranged in the switch 1. In Fig. 6 a flow diagram is illustrated for the procedure here of interest which is performed at the output side of the switch 1, i.e. for a portion of the procedures performed in the selection unit 27 and in particular the quality unit 26 of Fig. 5. The procedure starts in a block 401 and then in a block 403 it is determined if any data packet has arrived to either one of the registers 25. If it is decided that it is not the case, the decision is repeated until the reply to the decision in the block 403 is yes, and then in a block 404 the connection, i.e. SUBSTITUTESHEET specifically the number in the field "VCI/VPI", is determined, to which the received packet belongs, by reading this information through lines shown in Fig. 5, from the corresponding register 25. Then a decision is performed in a block 405 whether the quality of the currently active or preferred switching plane is sufficiently good. If it is not the case, the active plane is changed in a block 407. The condition of the block 405 together with the block 407 is apparent from the following short pseudocode routine, "delta" is here a number value providing an hysteresis to the decision of the block 405. if quality(current_plane) - delta > quality(standby_plane) ) then change plane The preferred plane is thus changed in the block 407 only if the currently preferred plane (indicated by the variable "current_plane") has a quality value ("quality"), which is an amount "delta" worse than the quality of the other plane (indicated by the variable "standby_plane") (in the general case for more than two redundant planes, not as good as the quality of each other plane). After the test of quality in the block 405 and a possible change of planes in the block 407 a procedure is performed in a block 409 for the measurement and evaluation of the quality in regard of sequential correctness of the data packets earlier and now transmitted on the plane on which the received data cell was transferred. This procedure will be more closely described with reference to the flow diagram of Fig. 7 hereinafter. After this, it is rewarded in a block 411 that a correct data packet has arrived and then the quality value is decremented (a lower quality value means as earlier a higher quality of the plane) for the considered plane by a value "CR" (= "Cell Received"), while the quality value of the other switching plane is incremented, i.e. made worse by the same value "CR". If there would be arranged more than two switching planes, the decrement value for the quality value of the plane on which the packet has arrived could suitably differ from the increment value for the other planes, e.g. the latter value can be smaller than the SUBSTITUTESHEET decrement value. After this it is considered in a block 413, whether there is any error in the data packet field 11 carrying the proper information "Payload", by checking an indication inside the packet if this check sum "PEC", i.e. the check sum related to the field "Payload", has been corrected. If it is true, the quality value is increased (= made worse) by an amount "PE" (= "Payload Error"), and it is performed in a block 415. Then it is checked in a block 417 if the considered data packet has been transferred to the output FIFO register 31 (Fig. 5) to be forwarded from the switch unit 1. If the data packet is a data packet, which thus is forwarded in the output stream of data packets from the switch 1, the quality values of the two switching planes are reduced (= improved) by a value "CT" (= "Cell Transmitted"). After the check in the block 417 and the possible change of the quality values in the block 419 the handling procedure is terminated in a block 421. Below is given in pseudocode the routine performed in the block 409 in Fig. 6. Procedure(csn_test) Begin if(CSNcell = CSNexp) then CSNexp=CSNexp + 1 report(OK) if(Error_Last_Time) then report(intruding cell) Error_Last_Time:=false endif else if(Error_Last_Time) then if(CSNcell=CSNexp + 1) then report(single error) else report(double error) endif SUBSTITUTE SHEET CSNexp:=CSNcell + 1 Error_Last_Time:=false else if(CSNcell=CSNexp + 1) then report(lost cell) CSNexp:=CSNcell + 1 else report(single error) Error_Last_Time:=true endif endif endif end In Fig. 7 a flow diagram is illustrated corresponding to this routine. The routine starts in a block 501 and thereafter it is asked in a block 503 whether the sequence number "CSNcell" of the considered cell is equal to the expected sequential number "CSNexp" of the next data packet, which, at the output side of the switch 1, is to be received on this plane for this connection. If it is decided that there is an agreement, i.e. that the data packet arrives in a correct sequential order, in a block 501 the value "CSNexp" of the expected sequential number of the next data packet is increased. Then the value "OK" is reported to a unit, not shown, for an evaluation of the connections. After that it is decided in a block 507 if any error has occurred the last time at the reception of a data packet in this plane, by checking the variable "Error_Last_Time" mentioned above. If there was an error the last time, the value "intruding cell" is reported in a block 509 to the evaluation unit. After the blocks 507 and 509 the handling routine is terminated and the program flow is transferred to an end block 511. If it was decided in the block 503, that the considered data packet does not have the correct sequential order, it is decided in a block 513 whether an error was present the last time, by testing the variable "Error_Last_Time". If there was an error the last time, it is decided in a block 515 if the sequential SUBSTITUTESHEET number "CSNcell" of the considered data packet possibly could be equal to the expected sequential number "CSNexp" increased by one, i.e. if a single data packet has been lost. If it is decided to be true, the value "single error" is in a block 517 reported to the evaluation unit. If it is not the case, instead in a block 519 "double error" is reported. After the blocks 517 and 519, in a block 521 the expected sequential number "CSNexp" valid for this connection and this plane is made equal to the sequential number "CSNcell" of the considered data packet increased by one. After this the routine is terminated in the end block 511. If it was decided in the block 513, that there was no error the previous time, it is decided in a block 523 if the sequential number "CSNcell" of the considered data packet is equal to the expected sequential number "CSNexp" increased by one, i.e. like in the block 515, if a single data packet has been skipped. If it proves to be the case, in a block 525 the value "lost cell" is reported to the evaluation unit and further, the expected sequential number "CSNexp" is set to be equal to the sequential number "CSNcell" of the considered data packet increased by one. If it was decided in the block 523 that the sequential number "CSNcell" of the considered data packet does not agree with the sequential number of the data packet after the expected sequential number, in a block 527 the value "single error" is reported to the evaluation unit. After the blocks 525 and 527 respectively the routine is terminated in the block 511. The various reported values "OK", "lost cell", "single error", "double error", "intruding cell" can in a not shown evaluation unit be assigned suitable number values or be evaluated in some other way by means of a more complicated algorithm for the modification of the quality value of the considered connection. Below a table is shown indicating the various possible cases in regard of the sequential numbers of the received data packets and the reported values which these various sequences of sequential numbers will generate according to the pseudo code routine above and the flow diagram of Fig. 5. SUBSTITUTESHEET Situation Reported Values correct OK, OK, OK 1 lost packet lc, OK, OK 2 lost packets lc, lc, OK 1 lost packet, new sequence lc, se, OK 1 incorrect packet εe, ic, OK 1 incorrect packet, 1 lost packet se, se, OK new sequence se, de, OK 1 incorrect packet, new sequence se, de, OK Here the designations "lc" stand for the value "lost cell", "se" for "single error", "de" for "double error", "ic" for "intruding cell". In the simplest case the various reported values "lc", "se", "de", "ic" are assigned different number values which are directly added to the quality value. A choice giving a rather good performance of the procedure can be the following while the reported value "OK" naturally does not give any change of the quality value, i.e. "OK" is set equal to 0. The corresponding values for the decrement and increment values "PE" (= Payload Error) and "CT" (= Cell Transmitted) described with reference to Fig. 6 can be PE = 2 CT = 1 and the balancing increment and decrement value "CR" (= Cell Received) may be set equal to 1. In a simplified procedure, which only can be applied for the SUBSTITUTESHEET case with two switching planes, there is only one quality value calculated which is used to indicate the quality of the two planes and in this case is called "Packet_Counter". The handling of the data packets at the output side is in this case illustrated in Fig. 8. Here it is decided in the units 23 for the testing of check sums of a data packet, whether the check sums "IHEC" and "PEC" are correct and signals indicating the result of the test are transmitted on lines to logic units 33, one logic unit 33 being provided for each redundancy plane. The registers 25 may in this case accommodate for instance maximally two data packets and from a data packet stored in a register 25 the connection number "VPI/VCI" of the packet is read and transmitted on a line to the corresponding logic unit 33. The two logic units 33 read data from a common memory 35 corresponding to the memories 28 in Fig. 5. When a logic unit wants to write or read data from the common memory 35, the logic unit sends a signal on a line to an access unit 37, which, controlled by suitable synchronizing pulses, monitors that only one logic unit at each instant will have access to the memory 35. In the memory 35, for each connection given by the number in the field "VPI/VCI", the common quality value "Packet_Counter" is stored and in the shape of a variable "Active_Plane" an indication of the plane which is currently active. In its other parts the processing at the output side according to Fig. 8 coincides with the processing as illustrated in Fig. 5, except a special function which will be described in detail hereinafter. The common quality value "Packet__Counter" is illustrated graphically in Fig. 9. For each received correct data packet from plane 1 the variable "Packet counter" is incremented by one unit and for each received data packet from plane 2 the value of "Packet_Counter" is decremented one step. Initially the variable "Packet_Counter" has the value zero and it may further for instance be assumed that then packets are taken from a plane 1. Then perhaps the value of "Packet_Counter" decreases and thus will have a successively larger negative value. When it is lower SUBSTITUTE SHEET than a negative threshold value "Threshold_Plane_l", plane 2 will instead be active. After this perhaps again the value of "Packet_Counter" will increase to be higher than a positive value "Threshold_Plane_2" and then plane 1 will be active again. The hysteresis is given by the difference of the threshold values "Threshold_Plane_l" and"Threshold_Plane_l", which corresponds to the constant "delta" mentioned above. In the logic unit 33 for the handling of data packets from plane 1 a procedure is performed which appears from the following program segment written in pseudocode and is also illustrated in the flow diagram in Fig. 12. Process_Logic_Plane_l Begin if(IHEC_error) then :For an error in "Discard the packet" :IHEC the packet is :always to be :discarded. else if(Active_Plane == 1) then :If the plane 1 is "Accept the packet" :active, the packet :is to be allowed to :pass. else :Plane 2 active if(Packet_Counter > :Check if change of Threεhold_Plane_2) then :plane is to be made . "Accept the packet" :Change of plane is Active Plane:=1 :to be performed and :then the packet is tallowed to pass. else :When plane 2 is "Discard the packet" :active and a change endif :is not made, the endif :packet is discarded. if(PEC_error) then Packet_Counter:=Packet_Counter :The packet counter else :is increased only SUBSTITUTE SHEET Packet__Counter : = for correct packets. Packet_Counter + 1 endif endif end The corresponding routine for the logic unit 33 for the plane No. 2 is obtained by swapping the plane numbers and by the fact that "Packet_Counter" is decreased instead of increased. In the corresponding flow diagram in Fig. 12 the procedure starts in a start block 1201, whereafter it is decided in a block 1203 whether the check sum IHEC of the present data packet iε incorrect. If this is the case, the packet is always discarded in a block 1205 and the procedure is terminated in an end block 1207. However, if the check sum is determined to be correct, it is determined in a block 1209, whether the currently active plane is plane 1, i.e. the plane to which the illustrated procedure applies. If it iε the case, the data packet is allowed to pass to the output buffer 31 in a block 1211. If it was decided in the block 1209, that plane 1 is not active, then plane 2 must be active and then it is to be tested whether a change of active plane is to be performed. It is made in a block 1213, where it is determined if the value of the variable "Packet_Counter" is larger than or equal to the constant threshold vale "Threshold__Plane_2". If it is decided not to be the case, no change of plane iε to be performed and then the data packet is discarded in a block 1215. When instead the reply to the comparison is yes, a plane change is to be performed and then in a block 1217 the packet iε first allowed to pasε to the output buffer 31 and then the active plane iε εet to be plane No. 1. Then it iε performed in a block 1219, to which the procedure continueε alεo from the blocks 1211 and 1215, a test if the check sum "PEC" for the data packet is incorrect. If it is the case, nothing more iε to be performed and the procedure is terminated in the end block 1207. If instead the check sum is SUBSTITUTESHEET decided to be correct, the data packet is obviously correctly transmitted through the switch and therefore in a block 1221 the value of "Packet_Counter" iε increaεed. Then the procedure is terminated in the block 1207. The logical circuits handling the termination of the communication of data packets on the redundant switching planes, have the task of determining, departing from two packet streams, those packetε which are allowed to be forwarded. In some cases it may however be necesεary to let a εuperior proceεεor force a control of the redundancy termination. An example of εuch a caεe iε when performing installation work or updates in a working system. By forcing the redundancy termination to select packets from a particular switching plane, work may be performed on the other plane. The forced control can be performed by providing each packet with two bits A, B, informing the logical circuitε at the output εide on the plane, from which the packetε are to be taken. Theεe two bitε can be added at the input to the εwitch 1 in the unit 7 (Fig. 4) for generation of redundancy information. The format of the data packet at itε passage on the redundant planes may then be as illuεtrated in Fig. 11. Here there iε an extra control byte 39, containing the bitε A, B. The control bitε A, B can be coded according to the following table: Bit: A B 0 0 : Handled by the general redundancy procedure 0 1 : Packetε are only taken from plane 2. All packets from plane 1 are discarded 1 0 : Packets are only taken from plane 1, all packets from plane 2 are discarded 1 1 : All packets from the two planes are allowed to paεs Since the plane choice bits A, B are carried by all packets communicated through the switch 1, an arbitrary connection may be unconditionally controlled by a superior processor. SUBSTITUTESHEET Control signalling from the two switching planes is an example when a forced control of the redundancy termination advantageously can be used. When the switching plane 1 wants to transmit control signals to the processor, it sets the plane choice bits A, B to 1 and 0 respectively. The redundancy termination will then handle these packets in a special way according to the above. The switching plane B sets the plane choice bits A, B to 0, 1 respectively to ensure that its packetε will be allowed to paεε through the redundancy termination. The redundancy termination by means of the plane choice bits are suitably performed directly before the general termination and a posεible embodiment iε illuεtrated in Fig. 8. The plane choice bits A, B are taken from the data packet in the register 25, and they form input signals to a simple logic network. From the register 25 receiving data packets communicated on plane 1, thus the A bit iε directly fed to the output logic 33 of this plane and signals when being high or set (= 1), that the data packet in the register 25 is to be forwarded and be directly transferred to the output buffer 31. Further the A bit is fed after inversion to one input of an AND-gate 39 and the B-bit without inversion to the other input of the AND-gate 39. On the output terminal of the AND-gate 39 a signal is then obtained which is fed to the output logic 39 indicating that the data packet is to be discarded without any more testing. For the register 25 receiving packets from plane 2 the logical network is similar except for the fact that the plane choice bits A, B are inverted in their meaning. If none of the two signals from this logic, i.e. that none of the direct A bit and the output signal from the AND-gate 39 is active or equal to one, the normal redundancy termination is to be performed, as has been deεcribed earlier. As an alternative to the method that the plane choice bits are carried by each data packet communicated through the switch, these bits or other control flags may be stored in the memory 28, cf. Fig. 5, for each connection and each plane. In the processing of a communicated data packet at the output side of the switch then these flags are read and may as above decide the TESHEET handling of the data packet. These stored plane choice flags can be placed in the memory 28 by some εuitable logical routine performed in the selection device 27 and are not described in more detail here. Below is given in pεeudocode the logical procedure performed by the logic 33 for plane 1 compriεing the above discusεed forced control according to Fig. 8. Process_Logic_Plane_l Begin if(Plane_Select==Plane_l) then :Forced control of "Accept the packet" :termination by meanε endif :of plane choice bitε if(Plane_Select==Plane_l&2) then "Accept the packet" endif if(Plane_Select==Plane_2) then "Diεcard the packet" elεe Begin if(IHEC_error) then :For errors in IHEC "Discard the packet" :the packet is to be :always discarded. else :If plane 1 is active if(Active_Plane(n)==l) then :the packet is to be "Accept the packet" :allowed to pass. else :Plane 2 active: if(Packet_Counter(n) > :Check if change of Threshold_Plane 2) then :planes iε to be :made. "Accept the packet" :Change of plane is Active Plane(n):=l :to be made and then :the packet is : llowed to pasε. elεe :When plane 2 is "Discard the packet" :active and a change SUBSTITUTESHEET endif :is not made the endif :packet iε discarded. if(PEC_error) then Packet_Counter(n) := ;The packet counter Packet_Counter(n) :is increaεed only else ;for correct packets. Packet__Counter(n) := Packet_Counter(n) + 1 endif endif end end The corresponding procedure for the logic of handling of data packets from plane 2 is given by the following pseudo code routine: Procesε_Logic_Plane_2 Begin if(Plane_Select==Plane_2) then :Forced control of "Accept the packet" termination by means endif :plane choice bits if(Plane_Select==Plane_l&2) then :A, B. "Accept the packet" endif if(Plane_Select==Plane_l) then "Discard the packet" else Begin if(IHEC_error) then :For errors in IHEC "Discard the packet" :the packet is always :to be diεcarded. else :If plane 1 iε if(Active_Plane(n)==2) then :active the packet iε "Accept the packet" tallowed to paεε. elεe :Plane 2 active; SUBSTITUTESHEET if(Packet_Counter(n) > :Test if change of Threεhold__Plane_l) then :plane iε to be :performed. "Accept the packet' :Change of plane is Active_Plane(n) :=2 :to be performed and :then the packet iε :allowed to pass. else :When plane 2 iε "Discard the packet" :active and a change endif :iε not made, the endif :packet is discarded. if(PEC_error) then Packet_Counter(n) := :The packet counter Packet_Counter(n) :is decreased only else :for correct packets, Packet_Counter(n) := Packet_Counter(n) - 1 endif endif end end In these routines the variable "Plane_Select" is used as a collective designation of the two plane choice bits A, B. Further, n signifies the connection number of the data packet given by the contents of the field "VPI/VCI". For each connection there iε then a variable "Active_Plane(n)", pointing to the currently active εwitching plane. The packet counter "Packet_Counter(n)" will then also be particular for each connection and dependent on n. In order to agree with the first routine above for plane 1 the flow diagram in Fig. 12 must be modified somewhat, as is illustrated in Fig. 13. Some variables are to be made dependant on the connection number of the data packet and further the forced control is illuεtrated. The blocks 1301 - 1321 in Fig. 13 thus coincide esεentially with the blockε 1201 - 1221 in Fig. 12. Between the εtart block 1301 and the block 1303 a sequence SUBSTITUTESHEET is inserted starting with a block 1351, in which it is determined if bit A of the data packet is εet. If it iε decided to be the caεe, the packet iε alwayε allowed to paεε in a block 1353, whereafter the procedure iε terminated in the end block 1307. If bit A iε not set, it is decided in a block 1355 whether bit B iε εet. If it iε the caεe, the packet iε alwayε discarded in a block 1357, after which the procedure is terminated in the block 1307. If inεtead bit B iε decided not to be set in the block 1355 - and then bit A not set either - the procedure continues to the block 1303, which coincides with the block 1203 in Fig. 12. The blocks 1309, 1313, 1317, 1321 correspond to the blocks 1209, 1213, 1217, 1221 but apply in the respective cases only for "this connection", i.e. the connection to which the processed data packet belongs. SUBSTITUTE SHEET

Claims: CLAIMS 1. A method for forwarding, from an output side of a data packet switch, data packets in the packet switch, the packet switch comprising - an input side with input units for receiving data packets arriving to the switch, - an output side with output units for forwarding data packets from the switch, - at least two switching planes which are identical to and parallel to each other, and the packet switch being arranged in such a way that - data packets arriving in a sequential order to an input unit of the switch are transferred to an output unit on each one of the switching planes, and - at an output unit of the switch data packets are selected among data packetε tranεferred on the εwitching planeε in such a way that a stream of data packets iε forwarded from the output unit, the forwarded εtream reεembling aε cloεely aε possible a stream of data packets which arrive in a sequential order to the switch and are transferred to the output unit, - at the output unit data packets in the first place are selected from a currently preferred εwitching plane, and - thiε switching plane is chosen by means of quality values of each switching plane, - a good or high quality value a switching plane signalling that the transmiεεion of data packetε on the plane functionε without any eεεential errorε, characterized in that this preferred switching plane at each inεtant iε choεen by means of quality values of each plane which have been determined by means of data packets arrived earlier to the output unit. 2. A method according to claim 1, characterized in - that the quality value of a switching plane is determined by SUBSTITUTE SHEET means of characteristics or properties of data packets transferred to the output side on this plane, - these characteristics or properties being derivable only from the streamε of packets arriving to the output side on the different switching planes, - where these characteristics or properties include the sequential order of data packets transferred to the output unit and/or the correctness of at least one data field inside each packet. 3. A method according to claim 1, characterized in that the quality value of a switching plane is made worse or lower when there is an incorrectness associated with a data packet, transferred on that switching plane and received by an output unit. 4. A method according to claim 3, characterized in that an incorrectness associated with a data packet, received by an output unit, includes the sequential order of the data packet in the stream of data packets transferred to the output unit and/or the correctnesε of at least one data field inside each packet. 5. A method according to claim 1, characterized in that in choosing the preferred switching plane the quality values of the switching planeε are compared to each other, their relative εizeε determining the choice. 6. A method according to claim 1, characterized in that in chooεing a new preferred εwitching plane - the quality valueε of the switching planes are compared to each other, and - another plane is chosen be the preferred switching plane, if the quality value of this plane is better or higher by a predetermined amount than the quality value of a currently preferred switching plane. 7. A method according to claim 1, characterized in that if a packet transferred to an output unit is correctly received by the output unit, the quality value of the switching plane, on SUBSTITUTE SHEET which the packet has been transmitted to the output unit, is made better, i.e. given a higher or better value signalling that the transmiεεion on the plane iε good, and the quality valueε of the other switching planes is made worse, i.e. are given lower or worse values. 8. A method according to claim 1, characterized in that the choice of a preferred switching plane is performed each time when a data packet arrives to an output unit. 9. A method according to claim 1, characterized in that a change of the preferred switching plane is not performed until another switching plane has a quality value which is better and higher than the quality value of the preferred plane and which deviates therefrom by an amount which is larger than the predetermined value. 10. A method according to claim 1, characterized in that a currently preferred switching plane for an output unit of the εwitch is specifically or individually determined for all data packets originating from the same input unit of the switch. 11. A method according to claim 10, characterized in that the quality values are specific or individual for all data packets originating from the same input unit of the εwitch. 12. A method according to claim 1 in the case where each data packet communicated through the switch belongs to an establiεhed connection, characterized in that at an output unit the currently preferred switching plane is specifically or individually determined for a considered connection. 13. A method according to claim 12, characterized in that the quality values are specifically or individually determined for the considered connection. 14. A method according to claim 13, characterized in that new quality values for a particular connection and for the switching plane are determined each time when a data packet arrives to the SUBSTITUTESHEET output unit on the considered connection. 15. A method according to claim 1 in the case when the εwitch has only two switching planes, a first and a second switching plane, characterized in that at an output unit a quality value common to the two planes iε used, such that a good or high quality value indicates that the transfer of data packets is better on the first plane than on the second plane, while a bad or low quality value indicates, that the transfer is better on the second plane than on the first plane. 16. A method according to claim 15, characterized in that the common quality value is increased one step for the correct transfer of a data packet to the output unit on the first plane and that the common quality value is decreased one step for the correct transfer of a data packet to the output unit of the second plane. 17. A method according to claim 16, characterized in that the first plane is the preferred plane, when the common quality value is better or higher than a first threshold value, and that the εecond plane is the preferred plane, when the common quality value is worse or lower than a second threshold value, where the first threshold value is better or higher than the second threshold value. 18. A method according to claim 19, characterized in that when the first plane is the preferred plane and the common quality value is changed to a value worse or lower than the second threshold value, the second plane will instead be the preferred plane, while when the second plane is the preferred plane and the common quality value is given a value better or higher than the third threshold value, the first plane instead will be the preferred plane. 19. A data packet switch for the transfer of data packets, compriεing - an input side with at least one input unit for reception of data packets arriving to the switch, SUBSTITUTE SHEET - an output side with at least one output unit, - forwarding means in the at least one output unit for forwarding data packetε from output unit and the switch, - at least two switching planes, which are identical to and parallel to each other, - connection establishing means arranged to establish a connection between an input unit and an output unit on the parallel εwitching planeε, for the transfer of a data packet arrived to the input unit to the output unit, - a buffer at an output unit for each switching plane for εtoring at least one data packet, - a selection device at the output unit being arranged for selecting data packetε transferred from an output unit to the output unit on the at least two switching planes, the selection being made in such a way, that a stream of data packets is forwarded from the forwarding means in the output unit, the forwarded stream resembling as closely as possible a stream of data packets which arrive to the input unit and are transferred to the output unit, - a pointer at the output unit connected to the selection device and indicating a currently preferred switching plane, - the selection device selecting data packetε in the firεt place tranεferred on the εwitching plane indicated by the pointer, - quality value εtoring meanε connected to the εelection device at the output unit for each εwitching plane, - means at the output unit for setting the pointer to indicate a preferred switching plane depending on quality values in the quality value storing means, characterized in a quality determining unit at the output unit, to repeatedly determine quality values stored in the quality storing meanε, the quality valueε being determined by meanε of data packetε arrived earlier to the output. 20. A εwitch according to claim 19, characterized in - evaluation means connected to the quality determining unit to evaluate characteristics or properties of data packets arrived SUBSTITUTE SHEET to the output side on this plane, - these characteristics or properties being derivable only from the εtreamε of packetε arriving to the output εide on the at leaεt two switching planes, - the evaluation means comprising - - means for determining the correctnesε of a εequential order in which data packets tranεferred to the output unit and/or - - meanε for determining the correctneεε of at leaεt one data field inεide each packet arrived to the output unit. 21. A εwitch according to claim 19, characterized in that the quality determining unit iε arranged to store a quality value of a switching plane which is worεe or lower than a previouεly εtored quality value when there iε an incorrectneεε aεεociated with a data packet, tranεferred on that εwitching plane and received by the output unit. 22. A switch according to claim 21, characterized in - means connected to the quality determining means for determining the correctnesε of a sequential order in whieh data packets are transferred to and received by the output unit, and - transferring means in a buffer in an output unit which are connected to the sequential order correctneεε determining means to transfer a sequential number of a data packet stored in the buffer. 23. A switch according to claim 21, characterized in - means connected to the quality determining means in an output unit for determining the correctnesε of at least one data field inside each packet arrived to the output unit, and - transferring means in a buffer in an output unit which are connected to the data field correctneεs determining meanε to tranεfer the contents of the data field in a data packet stored in the buffer. 24. A switch according to claim 19, characterized in - comparison means connected to the pointer setting meanε to compare the relative εizeε of quality values stored in the quality εtoring means to each other, - in εetting the pointer to indicate a εwitching plane the pointer setting means being arranged to make the pointer indicate a switching plane dependent on a result of the comparison made by the comparison means. 25. A switch according to claim 19, characterized in - comparison means connected to the pointer setting meanε to compare the relative sizes of quality values stored in the quality storing means to each other, - in εetting the pointer to indicate a switching plane the pointer setting means being arranged to make the pointer indicate a preferred switching plane if a result of the comparison made by the comparison means indicates that the quality value stored in the quality storing means for this plane is better or higher by a predetermined amount than the quality value stored in the quality storing means for a switching plane, which the pointer currently or previously indicates. 26. A switch according to claim 19, characterized in - signalling meanε in the buffer and connected to the εelection device to give a εignal to the selection device each time when a data packet arrives to the output unit, - the selection device being arranged, when receiving the signal, to activate the pointer setting device to set the pointer to indicate a preferred switching plane. 27. A switch according to claim 19, characterized in - that the buffer in an output unit for a switching plane compriseε a buffer for each input unit of the εwitch, thiε buffer being arranged to store at least one data packet, and - that the quality storing means at an output unit for a εwitching plane compriεeε meanε for εtoring a quality value for each input unit of the εwitch. 28. A εwitch according to claim 27, characterized in - that the pointer at an output unit compriεes a pointer for each input unit of the switch, and - that the εelection device iε arranged to εelect data packets arrived to an input unit of the switch in the first place which SUBSTITUTE SHEET have been tranεferred on the switching plane indicated by the pointer for this input unit. 29. A switch according to claim 19, where the connection establishing means are arranged to establish several logical connections between an input unit and an output unit on the parallel switching planes, such that data packets arriving to the switch, belonging to an information message and which are to be transferred through the switch from an input unit to an output unit, will be asεigned such a logical connection, characterized in - that the buffer in an output unit for a switching plane compriseε a buffer for each logical connection from the input unitε to thiε output unit of the εwitch, thiε buffer being arranged to εtore at leaεt one data packet, and - that the quality εtoring meanε at an output unit for a switching plane compriseε means for storing a quality value for each such logical connection of the switch. 30. A εwitch according to claim 29, characterized in - that the pointer at an output unit compriεes a pointer for each logical connection from the input units to this output unit of the switch, and - that the εelection device iε arranged to εelect data packetε belonging to such a logical connection in the first place which have been transferred on the switching plane indicated by the pointer for this logical connection. 31. A switch according to claim 30, characterized in - εignalling meanε in the bufferε for the εwitching planeε and for each logical connection from the input unitε to thiε output unit of the εwitch, the signalling means being connected to the εelection device to give a εignal to the εelection device each time when a data packet arriveε to the output unit on the εwitching plane and logical connection aεεociated with the buffer, - the εelection device being arranged, when receiving the εignal, to activate the pointer setting device to set the pointer for the logical connection of the received data packet SUBSTITUTESHEET to indicate a preferred switching plane. 32. A switch according to claim 19, characterized in - meanε connected to the quality determining means in an output unit for determining the correctness of a data packet arrived to the output unit, - signal generating means in the correctness determining means, connected to the quality determining means in the output unit, for providing a signal, relating to the result of the determination of the correctness made by the correctnesε determining meanε, to the quality determining unit, and - the quality determining unit being arranged to store, depending on this signal, a new quality value for the switching plane, on which the received data packet has arrived, where the new quality value is a change of a previouε quality value εtored in the quality value storing means for this switching plane, by a certain amount and in εuch a direction, that the quality value will be better or higher for thiε plane, each time when the received εignal indicateε that a correct data packet haε arrived to the output unit tranεferred on this switching plane. 33. A switch according to claim 32, characterized in that the quality determining unit is arranged to store, depending on the signal from the signal generating means in the correctness determining means, new quality values also for the other switching planes, each time when the received signal indicates that a correct data packet has arrived to the output unit transferred on a switching plane, where the new quality values are changes of corresponding earlier quality value stored in the quality storing means for these other switching planes, by a certain amount and in such a direction, that the quality values will be worse or lower for these other planes. 34. A switch according to claim 19 in the case where the switch has only two switching planes, a first and a second switching plane, characterized in - that the quality storing means in an output unit comprise a memory means for storing a quality value common to the two switching planes, SUBSTITUTESHEET - a high or good quality value εtored in the quality memory meanε indicating that the tranεfer of data packetε is better on the first plane than on the second plane, and a low or bad quality value stored in the quality memory means indicating that the transfer is better on the second plane than on the first plane. 35. A switch according to claim 34, characterized in - means connected to the quality determining means in an output unit for determining the correctness of a data packet arrived to the output unit, - signal generating means in the correctness determining means, connected to the quality determining means in the output unit, for providing a signal, relating to the result of the determination of the correctneεε made by the correctneεε determining meanε, to the quality determining unit, and - the quality determining unit being arranged to εtore, depending on thiε εignal, a new common quality value in the common quality value memory meanε, the new common quality value being a change by one εtep of a previouε common quality value to a higher and better common quality value and indicating a better tranεfer on the firεt switching plane, when the signal indicates a correct transfer of a data packet, which is transferred to the output on the first plane, and a change by one step of the previous common quality value to a lower or worse common quality value and indicating a better transfer on the second switching plane, when the signal indicates a correct transfer of a data packet, which is transferred to the output on the second plane. 36. A switch according to one of claims 34 - 35, characterized in - threshold value εtoring means in an output unit for storing a first threshold value and a εecond threshold value, the first threshold value being higher or better than the second threshold value, - comparison means in the pointer setting means in the output unit for comparing the common quality value εtored the common quality memory means to the threshold values stored in the threεhold value storing means, SUBSTITUTESHEET - the pointer setting means in the output unit being arranged, dependant on the result of the comparison made by the comparison meanε, to εet the pointer to indicate the firεt plane as the preferred plane, when the common quality value is higher or better than the first threεhold value, and to set the pointer to indicate the second plane as the preferred plane, when the common quality value iε lower or worse than the εecond threshold value. 37. A switch according to claim 36, that the pointer setting means in the output unit are arranged, dependent on the result of the comparison made by the comparison means, to change the pointer to indicate the second plane as the preferred plane, when the pointer indicates that the first plane is the preferred plane and when the result of the comparison indicates that the common quality value stored in the memory means iε lower or worse than the second threshold value, and to change the pointer to indicate the first plane as the preferred plan, when the pointer indicates that the second plane is the preferred plane and when the result of the comparison indicates that the common quality value is higher or better than the first threshold value. 38. A switch according to claim 19, in the case where all data packetε transferred to an output unit have control information contained therein in regard of the procesεing of the packet, characterized in - meanε at each buffer at the output unit arranged to extract the control information from a data packet εtored in the buffer and to output this information to the selection device of the output unit, - the selection device being arranged, depending on the received control information, either to - - forward the packet, - - discard the packet, or to - - select data packets in the first place transferred on the switching plane indicated by the pointer, the selection in the latter case being made in εuch a way, that a εtream of data packetε iε forwarded from the forwarding means in the output SUBSTITUTESHEET unit, the forwarded εtream resembling as cloεely aε poεεible a εtream of data packetε which arrive to the input unit and are tranεferred to the output unit. SUBSTITUTESHEET

Inventors: BERGHAGER HANS ARNE PETER, LARSSON LEIF MIKAEL, WAHLMAN JAN STEFAN ROBERT, BERGHAGER, HANS, ARNE, PETER, LARSSON, LEIF, MIKAEL, WAHLMAN, JAN, STEFAN, ROBERT
Applicants: ERICSSON TELEFON AB L M, TELEFONAKTIEBOLAGET L M ERICSSON
Application year: 1994
Main classification: H04L12
IPC codes: H04L12, H04Q3, H04Q11