CA1240022A - Self-routing packets with stage address identifying fields - Google Patents

Self-routing packets with stage address identifying fields

Info

Publication number
CA1240022A
CA1240022A CA000496459A CA496459A CA1240022A CA 1240022 A CA1240022 A CA 1240022A CA 000496459 A CA000496459 A CA 000496459A CA 496459 A CA496459 A CA 496459A CA 1240022 A CA1240022 A CA 1240022A
Authority
CA
Canada
Prior art keywords
broadcast
stage
packet
identification information
routing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
CA000496459A
Other languages
French (fr)
Inventor
Gottfried W.R. Luderer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AT&T Corp
Original Assignee
American Telephone and Telegraph Co Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by American Telephone and Telegraph Co Inc filed Critical American Telephone and Telegraph Co Inc
Application granted granted Critical
Publication of CA1240022A publication Critical patent/CA1240022A/en
Expired legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/201Multicast operation; Broadcast operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/15Interconnection of switching modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports

Abstract

SELF-ROUTING PACKETS WITH STAGE
ADDRESS IDENTIFYING FIELDS
Abstract A multi-stage packet switching network comprising a plurality of packet switch nodes for communicating broadcast and non-broadcast packets each comprising stage identification information and sets of routing information.
Each node responsive to receipt of one of the packets for decoding the stage identification information to determine if the packet is a broadcast or a non-broadcast packet. If a broadcast packet has been received, the switch node transmits this packet to the next sequential stage on all output links interconnecting the switch node to the next sequential stage. If the packet is of the non-broadcast type, the switch node decodes the stage identification field to determine which of the sets of the routing information is to be used for routing the non-broadcast packet to the next sequential stage. Before routing the non-broadcast packet to the next sequential stage, the switch node increments the stage identification field. The switch node contains the necessary circuits for performing the incrementing of the stage identification field of a non-broadcast packet and for bypassing the adder circuit for a non-stage identification information portions of the packet and for bypassing the adder circuit for stage identification field of the broadcast packet.

Description

SELF-ROUTING P~CKETS WIT~l STAGE
ADDRESS IDENTIFYING FIELDS

Technical Field This invention relates to a method for the communication of packets through a self-routing packet switching system. In particular, the invention relates to the utilization of the rou-ting information contained within packets being communicated through the packet switching system~
Background of the Invention The advantages of using a network comprising switching elements which route packets of data through the network on the basis of an address contained within the packet are known. Such networks are commonly called binary routing networks. A specific example is the butterfly or banyan network. In this type of network, there exists only one unique path between any two network terminations. The network comprises a plurality of stages each having a number of switch nodes. The stages are interconnected by means of links. Each switch node, upon receipt of a packet, is responsive to contents of an address field to properly route the packet to the next stage via an interconnecting link. One such system of this type was disclosed in the U. S. patent 4,~91,945 and is illustrated in FIGS. 1 and 2 which show an illustrative packet switchin~ system having a plurality of local offices 102V
103, 108, and 109, and a plurality of toll offices 104 through 107 serving a pluralit~ of customers such as customers 100 or 110. Call setup and call reply packets are utilized by the customers in order to set up a logical path through the different packet switching networks~ The system works using two different types of packets for the communication of data. Trunk packets are utilized for the transmission of information on high-speed digital trunks such as trunk 113 between trunk controllers 131 and 140.

, . .

The transfer of information between trunk controllers through a packet swikching network is via switch packets such as communication between trunk controllers 130 and 131 via packet switching network 116~ A switch packet comprises the trunk packet plus additional information necessary for routing the packet through the packet switching network. A trunk controller is responsive to a trunk packet to form the switch packet and, in particular, to insert into the destination trunk controller field of the switch packet the address necessary to route the packet through the packet switching network. The necessary logical-to-physical address translation is stored in the trunk con-troller by an associated central processor such as central processor 1~5 in response to the call setup and call reply packets.
A prior art switch packet is illustrated in FIG. 4. As the switch packet of FIG. 4 is routed through switching network 116, each sta~e in the network rotates the contents of the destination trunk controller field to the left by 2 bits. This positions the destination trunk controller address so that the next stage can respond to the two most significant bits. For example, FIG. 5 illustrates the switch packet oE FIG. ~ after it has been transferred through the first stage.
Whereas the scheme of rotating the address field allows the next sequential stage to immediately respond to the address, it suffers from the problem of not allowing the use of broadcast packets (those which are sent to all nodes) and requires complex circuitry for performing the address rotation.
Summary of the Invention In an illus-trative method and structural embodiment, a departure in the art is achieved by a switch node within a switching stage utilizing a stage identifier field within a packet to designate which of a plurality of sets of routing inEormation is to be used withln a particular s-tage or determining the communication path to , ., -- 3 ~

the next sequential stage. Before the packet is communicated to the next sequential stage, the s-tage identiEier ~ield is incremented by one so that the next subsequent stage may select another set of routing information.
The structural embodiment comprises a multistage packet switching network having a plurality of stages, each comprising a plurality of switch nodes The switch nodes are responsive to broadcast and non-broadcast packets each having sets of route address inEormation and stage identification informa-tion for communicating these packets to a switch node in the next sequential stage. Each node is responsive to non-broadcast packets for routing the latter to the next sequential stage in response to the stage identification information and a set of the routing informationO The node is further responsive to a broadcast packet for routing this packet to a plurality of switch nodes in the next sequential stage.
Advantageously, the switch node is responsive to the stage identiication information of a non-broadcast packet to generate designating signals, and a circuit within the switch node is responsive to the designating signals Eor selecting a set of routing information signals. The node is then responsive to the selected routing information signals for communicating the non-broadcast packet to the next sequential stage. In addition, in response to the absence of the designating signals, another circuit within the switch node transmits the packet to a plurality of switch nodes in the next sequential stage.
Advantageously, before communicating the non-broadcast packet to the next stage, the switch node updates the stage identification information so that the receiving node in the next sequential stage can select another set oE
routing information. The updating is performed by a circuit which adds a one to the stage identification information of a non-broadcast packet, and a data selection ~4~æ

circui-t that either selects the incremented stage identification information of the non-broadcast packet or the unmodified stage identification information of the broadcast packet.
An illustrative method routes broadcast and non-broadcast packets by selecting a set of route address information designated by stage identification information in each of the packets. The routing is performed by switch nodes each having a plurality of input control circuits each connected to one of a plurality of input links and a plurality of output control circuits each connected to one of a plurality of output links with intra-links connecting each of the input control circuits to an individual one of the output control circuits. The method comprises the steps of routing one of the non-broadcast packets to one of the output control circuits via one oE the intra-links in response to stage identification information and a set of routing information contained within the non-broadcast packet and routing a broadcast packet to all of the output control circuits in response to the stage identification information of the broadcast packet.
In addition! the method further comprises the steps of decodiny the stage identification information of the non-broadcast packet in order to generate signals designating one of a plurality of sets of routing information signals in the packet; and on the basis of the designating signals, selecting the designated set of routing information signals, for communicating the non-broadcast packet to the next se~uential stage. Also, the stage identification information of the non-broadcast packet is incremented by one, thereby updating the stage identificatior1 information to facilitate the routing of the non-broadcast paclcet by the next sequential stage.
~n illustrative method routes a packet Erom an input terminal of a switching network to a group of output terminals of the switching network~ The packet comprises routing information and stage identification information -~ s -that indicates broadcast and non-broadcast type routing.
If the stage identification information indicates non-broadcast routing, the stage identification information also designates a set of the routing information to be utilized by a receiving node to route the packet to the node of the next se~uen-tial stage. The method comprises the steps of routing the packet to a switch node of the next sequential stage selected by a set of routing information identi~ied by the stage identification information, updating the stage identification information, communicating the updated packet b~ the switch node of the next stage to all switch nodes of the next sequential downstream switching stage connected to the switch node of the next step upon the stage identification information having been updated to indicate a broadcast type routing, and transferring copies o the updated packet by all of the switch nodes of the downstream stage to the group of output terminals.
Brief Descri tion of the Drawing P
In general, system elements, when first introduced on a figure, are each designated with a number that uses the figure number as the most significant digits of the element number.
FIGS. 1 and 2 are block diagrams of a prior art packet switching system in which a switch node~ in accordance with this invention, may be utilized, FIG. 3 is a block diagram of a packet switching network utilizing the switch node of this invention;
FIGS. ~ and 5 illustrate a prior art packet format;
FIGS. 6, 7, and ~ illustrate packet formats for utilization with the present invention;
FIG. 9 illustrates a switch node, in accordance with the present invention;
FIG. 10 illustrates the input control block of the switch node illustrated in FIG. 9; and FIG. 11 illustrates the adder circuit 1006 o inpu-t control 900 as illustrated in FIG~ 10.
FIG. 12 illustrates the combination of FIGS. 1 and 2.
Detailed Description An illustrati~e packet is shown in FI5. 6, which utilizes a stage identifier field within the switch packet to designate certain address bits within a destination trunk controller field of the switch packet. These address bits of the destination trunk controller field ~hould be used for routing the packet through the switch node to the next sequential stage. sefore routing the switch packet to the next sequential stage, the switch node increments the stage identi~ier field by one so that the next subsequent switch node will utilize difEerent address bits of the destination trunk controller field for designating the routing of the switch packet. In addition, if the stage identiEier field contains all "1's" indicating a broadcast type packet, the switch node automatically transfers this packet to all of the nodes o-f the next stage to which the switch node is interconnected. This broadcast capability can be used in two ways. First, the capability allows a packet entering any input terminal of the switching network to be rou~ed to every output terminal of the network.
Second, a packet can be routed to a se~uential group of output terminals from an input terminal.
As will be described later in greater detail, each node illustrated in FIG. 3 is designed in accordance with the node design illustrated in FIGS. 9 and 10. If the latter node design is utilized in FIG. 3, the switch nodes of FIG. 3 are responsive to the packet illustrated in FIG~ 6 in the following manner. Network 116, as illustrated in FIG. 3, comprises three stages of switch nodes. The first stage comprises nodes 300-0 through 300-15, the second stage comprises switch nodes 301-0 through 301-15, and the third stage comprises switch nodes 302-0 through 302-15. Transmission throu~h the network is from left to right. Each swi-tch node is, in reality, a packet switch. ~ach packet switch has four inputs and is capable of buffering one packet on each input. The packets received on any input are transmittable on any of the four output terminals of the pac]cet switch.
After receipt of a packet on an input terminal, the address contained in that packet is used to determine which output terminal should be used to transmit the packet. In the case of a broadcast packet, the packet is transmitted out on all of the output terminals. Only the ~ bits of the address field contained within the destination trunk controller field, as designated by the contents of the stage identifier field! are used -to select the output terminal for a particular switch node. For example, switch node 300-12 transmits the packet on link 305 if the designated bits in binary notation are equal to zero, on link 306 if the designated bits in binary notation are e~ual to one, on link 307 if the designated bits in binary notation are equal to two~ and on link 308, if the designated bits in binary notation are equal to three.
Each node properly increments the stage identifier field so that the receiving switch node in the next stage selects the correct bits in order to determine which output terminal should be used to transmit the packet at ~hat stage.
The operation of switching network 116 J as illustrated in FIG. 3, can be better understood by considering the example of switching the packet illustrated in FIG. 6 through the network from trunk controller 131 to trunk controller 130. The packet shown in FIG. 6 is initially formed by trunk controller 131 from a trunk packet received from trunk 118. This switch packet is formed from the original packet by removing the flags and stuffed bits~ and then adding new fields of start bit, packet length, destination trunk controller, stage identifier, source trunk controller/ control, arrival time, and a new CRC field. Upon receiving the packet illustrate~
in FIG. 6, switch node 300-15 examines the two most ~2~
~ 8 significant bits in response to the stage identiEier bits being equal to "00" and selects link 316 to transmit the packet shown in FIGo 7~ sefore switch node 300-15 starts to transmlt the packet via link 316, switch node 300-15 5 increments the stage identifier field by one, resulting in the packet shown in FIG. 7. Upon receiving the packet fro~n switch node 300-15, switch node 301-15 examines the two middle bits of the destination trunk controller field r in response to the stage identifier field containing a "01", 10 and selects output 317 to transmit the packet out. seEore transmitting the packet, switch node 301-15 performs an increment operation on the stage identifier field resulting in the packet shown in FIG. 8. Upon receiving the packet of FI(;. 8, switch node 302-12 responds to the destination 15 trunk controller field by transmitting the packet to trunk controller 130 via conductor 135 since the stage ident,ifier field contains a "10". Switch node 302-12 also perEorms the increment operation on the stage identifier field.
Upon receiving the packet illustrated in FIG. 8, trunk 20 controller 130 forms a new trunk packet by stripping off the informatlon relating to the switch packet and then retransmitting this new trunk packet on trunk 117.
The operation of switching network 116, as illustrated in FIG. 3, will now be further explained with 25 respect to the utilization of the broadcast capability.
A packet can be transmitted from trunk controller 131 to all of the output l.inks 132 to 136 by inserting a "11" into the stage identiEier field before transmission of the packet to switchiny network 116. Sw:itch node 300-15 is 30 responsive to the stage identifier field containing "11" to transmit copies of the packet on output links 31S, and 322 through 324. This results in the packet being transmitted to switch nodes 301-12 through 301-15. Each of the switch nodes 301-12 through 301-15 is responsive to the stage 35 identifier bits beiny equal to "11" to transmit additional
2~
g copies of the packet on the links attached to the outputs of the latter switch nodes. This results in the packet being transmitted to all of the switch nodes 302-0 through 302-15 that comprise the third stage of switching network 116. All of the switch nodes of the third stage are responsive to the stage identi~ier bits being equal to "11" to transmit the packet to all of the trunk controllers attached to the third stage such as trunk controller 130 or 131.
The operation of swltching network 116 in transmitting a packet Erom one input link to a group of output links is now illustrated by the following example.
In order for trunk controller 131 to transmit a packet to output links 132 through 135, the destination trunk controller field contains "xxxx11" where the "x" indicates a don't care binary state and the stage identifier field contains 'l10". In response to receipt of this packet via link 133, switch node 300-15 selects from the destination trunk controller field "11" as designated by the stage 20 identifier field containing "10". Switch node 300-15 transmits this packet via link 316 to switch node 301-15 after incrementing the stage identifier field to 'll 1 I~, Since the stage identifier field contains "11" indicating a broadcast packet, switsh node 301-15 transmi~s the packet 25 to switching nodes 302-12 through 302-15 via the appropriate links. Since the stage identifier Eield contains ~'11", switch node 301-15 does not increment the stage identiEier field be~ore transmi-tting it to the previously mentioned switch nodes. Switch nodes 302-12 30 through 302-15 are responsive to the received paclcets having switch identiEier fields e~ual to "11" to transmit these packets on all of the output links connected to the latter switch nodes. This results in copies of the packet being transmitte~ on the output link~ 132 through 135.
Switch node 300-15 is illustrated in greater detail in FIG. 9. The other switch nodes are identical in design to switch node 300-15. ~he switch node consists of four input controls ~hich can transmit information to any one o~ four output controls. The inpu~ controls 900 through 903 are connected to the output controls 90~
through 907 via cables. ~or example, input control 900 is connected to output control 907 via cable 908. Cable 90~
comprises three conductors, 909, 910, and 911. The other interconnecting cables in FIG. 9 are identical in design to cable 908.
Assuming that a pac~et is not a broadcast packet, when input control 900 receives a packet to transmit to output control 907, it transmits a request signal over conductor 910 to output control 907. Input control 900 continuously transmits this request signal until the entire packet has been transmitted to output control 307. When output control 907 is free to receive in~ormation from input conkrol 900, output control 907 transmits a grant signal via conductor 911 to input control 900. Upon receipt oE the grant signal, input control 900 commences to transmit the packet to output control 907 via conductor 909. In the case of a broadcast packet, input control 900 transmits request signals to output control 904 through 907 and waits un-til a grant signal is received back from each oF the output controls before commencing trans~nission of the broadcast packet to all of the output controls simultaneously over the appropriate cables.
For example, the non-broadcast pac~et shown in FIG. 6 would be transmitted through switch node 300-15, as illustrated in FIG. 9, in the Eollowing manner. When input control 900 recognizes the start bit, i-t has already received not only the start bit, but also the address field and the stage identifier field bits. Input control 900 decodes the two most significant bits oE the network address Eield in response to the contents oE the stage identiEier Eield containing a "00" and determines tha-t the packet is to be transmitted to output control 907 via cable 908. Input control 900 requests permisslon to start transmission via conductor 910; and when output control 907 returns the grant signal via conductor 911, input control 900 starts the transmission of the packet to output control 907 via cable 908. Before transmitting the stage identifier Eield, input control 900 increments this field by one so that the contents of the stage identifier field transmitted are those shown in FIG. 7. Upon receipt of the start bit of the packet, output control 907 starts to transmit this packet out on link 316.
Input control 900 of FIG. 9 is shown in greater detail in FIG. 10. Input circuit 1010 receives the information from input terminal 315 and transmits to trunk controller l31 of FIG. 1 the link open signal via input terminal 315 under control of controller 1004. The function of the link open signal is explained in greater detail in the Prior Art. Input shift register 1000 is used to detect the start bit, that indicates the beginning of a packet. In addition, input shift register 1000 is used to extract the network packet length field, which is saved in length register 1002, and to extract the stage identifier bits that are used to control data selector 1030. In response to the latter bits, data selector 1030 selects the proper address bits from the destination trunk controller ~ield and these bits are subsequently stored in address register 1001. Buffer shift register 1003 is capable of buffering one complete packet. ~uffer shift register 1003 provides an output after each 6~ bits of storage. These outputs can be selected by data selector 1005, under control of controller 1004, to bypass unused portions of the buffer shift register 1003. This bypassin~ is done when it is not necessary to buffer a whole packet before transmission of the packet can start to the output circuit and is done to speed up the transfer of a packet through input control 900. Adder circuit 1006 performs the previously mentioned incrementing oE the stage identifier field before this field is transmitted with the remainder of the packet to the selected output control.
Multiplexer 1007, under control of controller 1004, selects on which of the cables 908, 912, 913, or 914 the data is to be transmitted.
The operation of input control 900 will now be Eurther explained by using the previous example which dealt with the transmission oE the packet shown in FIG. 6. Input shift register 1000 is continuously being clocked by system clock 1~1 via conductor 1011. As data is received via input terminal 315, i-t is clocked through input shift register 1000. Once the start bit reaches bit position 15 of input register 1000, controller 1004 detects this bit and transmits a signal on conductor 1013. Prior to the transmission oE this signal, data selector 1030 is responsive to the contents of bit positions 5 and 6 to select the two most significant bits of the destination controller field, "11"; and then, the output of data selector 1030 is strobed into address register 1001 by the signal on conductor 1013. Data selector 1030 selects the most significant bits since the contents of the stage identifier field are "00".
Controller 1004 transmits a re~uest via conductor 910 to output control 907 since the selected address bits indicate that the packet is to be transmitted to this output control. While this request is being made, data is being shifted from the input shift register 1000 to buffer shiEt register 1003 which has a number of output terminals. These output terminals are connected to different bit positions within buffer shift register 1003.
When controller 1004 receives a grant signal from output control 907 via conductor 911, controller 1004 determines at which output of the buffer shift register 1003, the start bit of the packet is approaching within buffer register 1003. This is done so that the transmission of the packet to output control 907 can start as soon as possible. On the basis of this determination, controller 1004 controls data selector 1005 to select the designated output of buffer sh.iEt regis~er 1003. The control information is transmitted to data selector 1005 ~ 13 -via cable 1017. Data selector 1005 transmits the da-ta from the selected output oE buffer shi~t register 1003 to adder circuit 100~ via conductor 101~. Before transmission of the data, controller 1004 initializes adder circuit 1006 by transmitting the start of the packet signal ~7ia conductor 1019. Controller 1004 then uses the packet lenqth inEormation stored in length register 1002, which it reads via cable 1020 to determine when the end of the packet has entered the input shift register. When this occurs and the transmission has started from shift register 1003, controller 1004 transmits the link open signal via conductor 1015. The link open signal indicates that input control 900 is now ready to receive another packet. The use of the link open signal is explained in greater detail in the U. S. Patent in the section dealing with the output control circuit.
Now, consider the situation where the packet received by input control 900 is a broadcast packet. Input shi~t register 1000 is continuously being clocked by the system clock via conductor ~011. Once the start b~t reaches bit position 15 of input shift register 1000, broadcast decoder 1031 detects the presence o~ all ones in the stage identifier field and transmits a signal to controller 1004 via conductor 1032. In response to the latter signal and the start bit, controller 1004 transmits requests via conductors 910, 912, 913, and 914. While these requests are being made, data is once again shifted from input shift re~ister l000 to buffer shift register l003. When the grant signals are received back from the output controllers, controller 1004 properly conditions multiple~er 1007 so that the data is shifted out to all four of the output controls connected to the four output cables oE input control 900. Controller 1004 does not transmit the signal on conductor 1019 to adder 1006, thus disabling the latter from incrementing the stage identifier field.
Adder circuit 1006 is illustrated in greater ~2~

detail in FIG. 11. The purpose of circuit 1006 is to serially increment the stage identifier field by one. The addition is necessary so that the next input control decodes the correct 2 bits of the destination trunk controller field. Control circuit 1108 controls the overall operatior of adder circuit 1006. When the stage identifier field is not present in the data being communicated via conductor 1016, control circuit 1108 conditions data selector 1107 via conductor 1109, such that the information communicated via conductor 1016 is -transmitted directly to multiplexer 1007 via conductor 1018. When the stage identifier field first becomes present on conductor 1016, controller 1004 of FIG. 10 transmits a signal on conductor 1019 to control circuit 1108. In response to the latter signal, control circuit 1108 initializes flip-flops 1102 and 1103 by resetting flip-flop 1102 and presetting flip-flop 1103.
Control circuit 1108 then supplies the proper clock information to these flip-flops via conductor 1105 and conditions data selector 1107 to transmit the output of flip-flop 1102 to multiplexer 1007 via conductor 1018.
Flip-flop 1102 is utilized for buffering the results of the additions performed by exclusive OR gate 1101 for transmission to multiplexer 1007 of FIG. 10 ~ia data selector 1107. AND gate 1104 determines whether or not a carry has occurred on the present serial addition and stores this fact in flip-flop 1103. Since flip-flop 1103 is initially set to a "1", this results in the stage identifier field being incremented by one. As each bit of the stage identifier field is serial]y received on conductor 1016, exclusive OR gate 1101 adds this bit to the contents of the carry in flip-flop 1103 and the result will be stored in flip-flop 1102 and transmitted via data selector 1107 to multiplexer 1007 via conductor 1018.
It is to be understood that the above-described embodiment is merely illustrative of the principles of this invention; other arrangements may be devised by those skilled in the art without departing from the spirit and scope of this invention.

Claims (14)

Claims
1. A multi-stage packet switching network for switching packets each comprising routing information and having switching stages each comprising a plurality of switch nodes, comprising:
each of said packets further comprising stage identification information indicating broadcast and non-broadcast type ones of said packets;
said routing information comprising groups of signals with each group corresponding to one stage of said network;
each of said nodes comprises means for decoding said stage identification information of one of said non-broadcast packets to generate signals designating one of said groups of routing information signals upon said stage identification information indicating a non-broadcast packet;
means responsive to said designating signals for selecting the designated one of said groups of routing information signals;
means responsive to the selected group of routing informating signals for communicating said packet to a switch node or said next sequential stage; and means responsive to a stage identification information of a broadcast one of said packets for routing said broadcast packet to a plurality of switch nodes in said next sequential stage.
2. The network of claim 1 wherein said nodes each further comprise a means for incrementing said stage identification information upon said stage identification information indicating said one of said non-braodcast packets thereby properly conditioning said stage identification information of said one of said non-broadcast packets for said node of said next sequential stage.
3. The switching network of claim 2 wherein said incrementing means comprises means for adding a one to said stage identification information of said one of said non-broadcast packets;
means for gating said stage identification information of said one of said broadcast packets and said stage identification information of said one of said non-broadcast packets incremented by one;
said broadcast packet routing means comprises means for generating a broadcast signal upon receipt of said one of said broadcast packets; and said gating means responsive to said broadcast signal for selecting said one of said broadcast packets.
4. A switch node for switching broadcast and non-broadcast packets each comprising sets of route address information and stage identification information and said switch node connected to a plurality of input and output links, said switch node comprising:
a plurality of input control means each connected to one of said input links;
a plurality of output control means each connected to one of said output links;
intra-links connecting each of said input control means to all of said output control means;
each of said input control means responsive to one of said non-broadcast packets for routing said one of said non-broadcast packets to one of said output control means in response to said stage identification information indicating one of said sets of said routing information via one of said intra-links; and each of said input control means further responsive to said identification information indicating one of said broadcast packets for routing said one of said broadcast packets to all of said output control means via said intra-links.
5. The switch node of claim 4 wherein said input control means comprises means for decoding said stage identification information of said non broadcast packet to generate signals designating one of said sets of routing d information signals;
means responsive to said designating signals for selecting one of said sets of routing information signals;
and means responsive to the selected set of routing information signals for communicating said one of said non-broadcast packets to said next sequential stage via one of said output control means one of said output links.
6. The switch node of claim 5 wherein said input control means further comprises means for routing said one of said broadcast packets upon the absence of said designating signals being generated by said decoding means.
7. The switch node of claim 6 further comprises means for incrementing said stage identification information of said one of said non-broadcast packets thereby updating said stage identification information for utilization by the receiving switch node of said next sequential stage.
8. The switch node of claim 7 wherein said incrementing means comprises means for adding a one to said stage identification information of said one of said non-broadcast packets;
means for selecting said stage identification information of said broadcast packet and said stage identification information of said one of said non-broadcast packets incremented by one;
means for generating a broadcast signal upon receipt of said one of said broadcast packets; and said selecting means further responsive to said broadcast signal for selecting said stage identification information of said one of said broadcast packets.
9. A method of routing broadcast and non-broadcast packets and selecting a set of route address information determined by stage identification information in each of said packets by a switch node comprising a plurality of input control means each connected to one of a plurality of input links, a plurality of output control means each connected to one of a plurality of output links, intra-links connecting each of said input control means to all of said output control means, comprising the steps of:
routing one of said non-broadcast packets to one of said output control means via one of said intra-links in response to said stage identification information indicating one of said sets of said routing information;
and routing one of said broadcast packets to all of said output control means in response to said stage identification information indicating said one of said broadcast packets is of the broadcast packet type.
10. The method of claim 9 wherein said step of routing said one of said non-broadcast packets further comprises the step of decoding said stage identification information of said one of said non-broadcast packets to generate signals designating said one of said sets of routing information signals;
selecting one of said sets of routing information signals in response to said designating signals; and communicating said one of said non-broadcast packets to said next sequential stage via one of said output control means and one of said output links in response to the selected set of routing information signals.
11. The method of claim 10 further comprising the step of incrementing said stage identification information of said one of said non-broadcast packets thereby updating said stage identification information for utilization by the receiving switch node of said next sequential stage.
12. The method of claim 11 wherein said incrementing step comprises the steps of adding a one to said stage identification information of said non-broadcast packet;
generating a broadcast signal upon receipt of said broadcast packet; and selecting said stage identification information of said broadcast packet in response to said broadcast signal and said stage identification information of said non-broadcast packet incremented by one upon the absence of said broadcast signal.
13. A method of routing a packet from an input terminal of a switching network to a group of output terminals of said switching network, said packet comprising routing information and stage identification information indicating broadcast and non-broadcast type routing and said stage identification information further designating a set of said routing information upon said stage identification information indicating non-broadcast routing and said switching network having switching stages each comprising a plurality of switch nodes, comprising the steps of:
routing said packet by a receiving switch node to a switch node of the next stage selected by the set of routing information identified by said stage identification information;
updating said stage identification information;
communicating the updated packet by said switch node of said next stage to all switch nodes of a downstream switching stage connected to said switch node of said next stage upon said stage identification field having been updated to indicate a broadcast type routing; and transferring said updated packet by all of said switch nodes of said downstream stage to said group of output terminals in response to said stage identification field indicating said broadcast type routing.
14. The method of claim 3 wherein said step of updating comprises the step of incrementing said stage identification information.
CA000496459A 1984-11-30 1985-11-28 Self-routing packets with stage address identifying fields Expired CA1240022A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/676,650 US4651318A (en) 1984-11-30 1984-11-30 Self-routing packets with stage address identifying fields
US676,650 1984-11-30

Publications (1)

Publication Number Publication Date
CA1240022A true CA1240022A (en) 1988-08-02

Family

ID=24715384

Family Applications (1)

Application Number Title Priority Date Filing Date
CA000496459A Expired CA1240022A (en) 1984-11-30 1985-11-28 Self-routing packets with stage address identifying fields

Country Status (8)

Country Link
US (1) US4651318A (en)
EP (1) EP0203990B1 (en)
JP (1) JP2530313B2 (en)
KR (1) KR930011483B1 (en)
CA (1) CA1240022A (en)
DE (1) DE3579455D1 (en)
ES (1) ES8608947A1 (en)
WO (1) WO1986003355A1 (en)

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5031094A (en) * 1984-12-14 1991-07-09 Alcatel Usa Corp. Switch controller
US4984151A (en) * 1985-03-01 1991-01-08 Advanced Micro Devices, Inc. Flexible, next-address generation microprogram sequencer
GB8511758D0 (en) * 1985-05-09 1985-06-19 Emi Ltd Data communications systems
US4701906A (en) * 1985-06-27 1987-10-20 American Telephone And Telegraph Company, At&T Bell Laboratories Packet switching network with multiple packet destinations
CA1265227A (en) * 1985-07-08 1990-01-30 Reginhard Pospischil Method for monitoring and controlling the traffic in digital transmission networks
FR2594615B1 (en) * 1986-02-20 1988-06-17 France Etat DEVICE FOR DEMULTIPLEXING PACKETS OF A MAC / PACKET BROADCASTING SIGNAL
US4780873A (en) * 1986-05-19 1988-10-25 General Electric Company Circuit switching network with routing nodes
US5230073A (en) * 1986-07-21 1993-07-20 Bell Communications Research, Inc. System and method for accessing and updating a continuously broadcasted stored database
US5230079A (en) * 1986-09-18 1993-07-20 Digital Equipment Corporation Massively parallel array processing system with processors selectively accessing memory module locations using address in microword or in address register
US5146606A (en) * 1986-09-18 1992-09-08 Digital Equipment Corporation Systems for interconnecting and configuring plurality of memory elements by control of mode signals
US4985832A (en) * 1986-09-18 1991-01-15 Digital Equipment Corporation SIMD array processing system with routing networks having plurality of switching stages to transfer messages among processors
IT1196791B (en) * 1986-11-18 1988-11-25 Cselt Centro Studi Lab Telecom SWITCHING ELEMENT FOR MULTI-STAGE INTERCONNECTION NETWORKS SELF-SLIDING TO PACKAGE SWITCHING
US4740954A (en) * 1986-12-31 1988-04-26 Bell Communications Research, Inc. Multicast routing algorithm
CA1297567C (en) * 1987-02-06 1992-03-17 Kazuo Hajikano Self routing-switching system
FR2611411B1 (en) * 1987-02-27 1989-04-21 Francois Joel HYBRID TIME MULTIPLEX SWITCHING SYSTEM
US4894822A (en) * 1987-11-24 1990-01-16 AT&T Information Systems American Telephone and Telegraph Company Fast packetized data delivery for digital networks
JP2659421B2 (en) * 1988-02-17 1997-09-30 日本電信電話株式会社 Self-routing channel
JP2550642B2 (en) * 1988-03-04 1996-11-06 日本電気株式会社 Packet frame transmission method
SE462361B (en) * 1988-03-30 1990-06-11 Ellemtel Utvecklings Ab PAKETDATAVAELJARE
US4899333A (en) * 1988-03-31 1990-02-06 American Telephone And Telegraph Company At&T Bell Laboratories Architecture of the control of a high performance packet switching distribution network
GB8824972D0 (en) * 1988-10-25 1988-11-30 Plessey Telecomm Time division switch
DE58907901D1 (en) * 1989-03-03 1994-07-21 Siemens Ag Method and circuit arrangement for forwarding message packets transmitted on feeder lines via a packet switching device.
US5153877A (en) * 1989-04-21 1992-10-06 Kabushiki Kaisha Toshiba Packet network with communication resource allocation and call set up control of higher quality of service
US5088091A (en) * 1989-06-22 1992-02-11 Digital Equipment Corporation High-speed mesh connected local area network
US5179558A (en) * 1989-06-22 1993-01-12 Digital Equipment Corporation Routing apparatus and method for high-speed mesh connected local area network
GB8915135D0 (en) * 1989-06-30 1989-08-23 Inmos Ltd Message routing
GB8915137D0 (en) * 1989-06-30 1989-08-23 Inmos Ltd Message routing
US5422881A (en) * 1989-06-30 1995-06-06 Inmos Limited Message encoding
US5001702A (en) * 1989-09-26 1991-03-19 At&T Bell Laboratories Packet switching network for multiple packet types
US4991171A (en) * 1989-09-26 1991-02-05 At&T Bell Laboratories Broadcast packet switch network
US5313590A (en) * 1990-01-05 1994-05-17 Maspar Computer Corporation System having fixedly priorized and grouped by positions I/O lines for interconnecting router elements in plurality of stages within parrallel computer
WO1991014326A2 (en) * 1990-03-05 1991-09-19 Massachusetts Institute Of Technology Switching networks with expansive and/or dispersive logical clusters for message routing
DE69014598T2 (en) * 1990-03-14 1995-06-01 Alcatel Nv Arrangement for routing a communication switching element.
DE69014597T2 (en) * 1990-03-14 1995-06-01 Alcatel Nv Communication switching module.
FR2659819B1 (en) * 1990-03-14 1992-05-29 Alcatel Nv SELF - ROUTING MULTI - PATH SWITCHING NETWORK FOR SWITCHING ASYNCHRONOUS MULTIPLEXED TIME CELLS.
US5132965A (en) * 1990-05-03 1992-07-21 Pacific Bell Nonblocking parallel banyan network
JP2677703B2 (en) * 1990-08-20 1997-11-17 富士通株式会社 MSSR speech path switch stage number setting method
SE467079B (en) * 1990-09-19 1992-05-18 Ellemtel Utvecklings Ab SETTING AND DEVICE FOR ADDRESSING IN A PACKAGE
CA2098110A1 (en) * 1990-12-12 1992-06-12 Gary J. Anido Multicasting in fps switch
US5321813A (en) * 1991-05-01 1994-06-14 Teradata Corporation Reconfigurable, fault tolerant, multistage interconnect network and protocol
ES2068485T3 (en) * 1991-07-22 1995-04-16 Alcatel Nv TELECOMMUNICATION SYSTEM TO TRANSMIT CELLS THROUGH SWITCHING NODES INTERCONNECTED BY GROUPS OF TRANSMISSION LINKS.
US5216668A (en) * 1991-08-19 1993-06-01 Pacific Bell Modulated nonblocking parallel banyan network
SE515275C2 (en) * 1992-12-14 2001-07-09 Ericsson Telefon Ab L M packet data network
US5574860A (en) * 1993-03-11 1996-11-12 Digital Equipment Corporation Method of neighbor discovery over a multiaccess nonbroadcast medium
US7058067B1 (en) 1995-03-13 2006-06-06 Cisco Technology, Inc. Distributed interactive multimedia system architecture
US5838683A (en) 1995-03-13 1998-11-17 Selsius Systems Inc. Distributed interactive multimedia system architecture
US5684800A (en) * 1995-11-15 1997-11-04 Cabletron Systems, Inc. Method for establishing restricted broadcast groups in a switched network
IT1280494B1 (en) * 1995-11-29 1998-01-20 Cselt Centro Studi Lab Telecom PROCEDURE FOR EXPANDING THE CAPACITY OF SWITCHING ELEMENTS AND RELATIVE SWITCHING STAGE.
FI103312B1 (en) * 1996-11-06 1999-05-31 Nokia Telecommunications Oy Switching matrix
US5940367A (en) * 1996-11-06 1999-08-17 Pluris, Inc. Fault-tolerant butterfly switch
US6031843A (en) * 1996-11-21 2000-02-29 Alcatel Data Networks Inc. Digital communications switching fabric
US6044438A (en) * 1997-07-10 2000-03-28 International Business Machiness Corporation Memory controller for controlling memory accesses across networks in distributed shared memory processing systems
US6212179B1 (en) * 1998-02-27 2001-04-03 Lockheed Martin Corporation Single-type fabric card networks and method of implementing same
US6412002B1 (en) 1999-11-15 2002-06-25 Ncr Corporation Method and apparatus for selecting nodes in configuring massively parallel systems
US6519697B1 (en) 1999-11-15 2003-02-11 Ncr Corporation Method and apparatus for coordinating the configuration of massively parallel systems
US6745240B1 (en) 1999-11-15 2004-06-01 Ncr Corporation Method and apparatus for configuring massively parallel systems
US6418526B1 (en) 1999-11-15 2002-07-09 Ncr Corporation Method and apparatus for synchronizing nodes in massively parallel systems
US6567406B1 (en) 1999-12-10 2003-05-20 Tropic Networks Inc. Method of labeling data units with a domain field
US20030189923A1 (en) * 2002-04-05 2003-10-09 Gagnon Ronald J. Data switching process
US7738385B2 (en) * 2004-11-30 2010-06-15 Broadcom Corporation Mirroring of data in a network device
US20070253426A1 (en) * 2006-04-28 2007-11-01 International Business Machines Corporation Reliable global broadcasting in a multistage network
US7962717B2 (en) * 2007-03-14 2011-06-14 Xmos Limited Message routing scheme

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2246144A1 (en) * 1973-09-28 1975-04-25 Labo Cent Telecommunicat Switching and transmission cct. for digital signals - transmits over network with two-directional junction lines
CH591190A5 (en) * 1975-04-25 1977-09-15 Hasler Ag
US4399531A (en) * 1980-09-29 1983-08-16 Rockwell International Corporation Distributed digital data communications network
EP0097351A3 (en) * 1982-06-21 1986-02-26 Nec Corporation Router unit and routing network for determining an output port by detecting a part of an input packet
US4491945A (en) * 1982-06-25 1985-01-01 At&T Bell Laboratories Fast packet switch
US4488288A (en) * 1982-06-25 1984-12-11 At&T Bell Laboratories End-to-end information memory arrangement in a line controller
FR2538934A1 (en) * 1982-12-30 1984-07-06 Flonic Sa Device for checking the authenticity of coins
FR2538984A1 (en) * 1982-12-30 1984-07-06 Devault Michel SWITCH FOR MULTIDEBIT DIGITAL NETWORK WITH ASYNCHRONOUS TIME SWITCH ADAPTED TO VIDEOCOMMUTATIONS

Also Published As

Publication number Publication date
WO1986003355A1 (en) 1986-06-05
ES549448A0 (en) 1986-10-01
JP2530313B2 (en) 1996-09-04
US4651318A (en) 1987-03-17
ES8608947A1 (en) 1986-10-01
EP0203990B1 (en) 1990-08-29
EP0203990A1 (en) 1986-12-10
DE3579455D1 (en) 1990-10-04
JPS62501045A (en) 1987-04-23
KR930011483B1 (en) 1993-12-08

Similar Documents

Publication Publication Date Title
CA1240022A (en) Self-routing packets with stage address identifying fields
EP0112340B1 (en) End-to-end information memory arrangement in a line controller
EP0226632B1 (en) A packet switching network with multiple packet destinations
EP0849917B1 (en) Switching system
JP3577188B2 (en) Buffering of multicast cells in multistage networks
JP2788577B2 (en) Frame conversion method and apparatus
US7647472B2 (en) High speed and high throughput digital communications processor with efficient cooperation between programmable processing components
EP0112337B1 (en) Fast packet switching system
EP0420492B1 (en) packet switching network for multiple packet types
EP0516042B1 (en) ATM cell error processing system
US5577037A (en) Method of processing inclusively STM signals and ATM signals and switching system employing the same
EP0406842A2 (en) Packet switch network for communication using packet having virtual connection identifier VCI
EP0268259A2 (en) Switching element for self-routing multistage packet-switching interconnection networks
WO1984000265A1 (en) Fast packet switch
KR100633755B1 (en) Digital communications processor
EP0683949B1 (en) A method for handling redundant switching planes in packet switches and a switch for carrying out the method
CA1233225A (en) Trunk for packet switching
US6324164B1 (en) Asynchronous transfer mode (A.T.M.) protocol adapter for a high speed cell switching system
EP0849973B1 (en) Switching system comprising distributed elements allowing attachment to line adapters, and having multicasting capabilities
US6738389B1 (en) Circuit and method for performing partial parallel data transfer in a communications system
JPH08331137A (en) Smds exchange
US6320858B1 (en) Asynchronous transfer mode switch with logical multicasting
KR970002748B1 (en) Inner cell generator in atm switch
JPH0382243A (en) Cell time sequence recovery device
JPH08305649A (en) Multi cast method and exchange switch

Legal Events

Date Code Title Description
MKEX Expiry