Data communication method and apparatus using multiple physical data links
First Claim
1. A method of conveying information via a plurality of logical channels from a source to a destination having multiple physical links interposed therebetween, said method comprisingpacketizing said information into a plurality of packets each including therein a definition of one of said logical channels and a definition of a logical channel sequence number with respect to the defined logical channel,transmitting said plurality of packets over said links in such manner that ones of the packets defining the same logical channel are transmittable over different ones of said links,separating a plurality of packets received on said links, according to logical channels defined therein, andcommunicating said separated packets to said destination in a defined ordered sequence according to logical channel sequence numbers defined therein, andwherein said communicating step comprises communicating said separated packets receivable from said links in an ordered sequence different from said defined ordered sequence.
1 Assignment
0 Petitions
Accused Products
Abstract
A multi-link interprocessor communication protocol that allows a pair of processors to increase the speed of their communication by using multiple physical links in parallel. When a message is sent from one processor to another, the message is packetized into smaller segments and loaded onto the available physical links according to a simple algorithm. The individual packets are received at the other end, their accurate transmission verified, and the received packets are then reassembled in the proper order. Packets of one or more messages to the same destination can go over the same physical link, or over different physical links; that is, there is no association of any message to any particular physical communication link. Packets received out of order on a per logical channel basis are stored until a correct sequence of packets is received after which their transmission to the message destination is effected. The reordering of packets is accomplished using a multi-link header advantageously comprising only a single byte.
-
Citations
32 Claims
-
1. A method of conveying information via a plurality of logical channels from a source to a destination having multiple physical links interposed therebetween, said method comprising
packetizing said information into a plurality of packets each including therein a definition of one of said logical channels and a definition of a logical channel sequence number with respect to the defined logical channel, transmitting said plurality of packets over said links in such manner that ones of the packets defining the same logical channel are transmittable over different ones of said links, separating a plurality of packets received on said links, according to logical channels defined therein, and communicating said separated packets to said destination in a defined ordered sequence according to logical channel sequence numbers defined therein, and wherein said communicating step comprises communicating said separated packets receivable from said links in an ordered sequence different from said defined ordered sequence.
-
3. A method for the transmission of an information message via a plurality of logical channels from a source having multiple physical links extended therefrom, said method comprising
packetizing said information message into a plurality of packets each including therein a definition of one of said logical channels and a definition of a logical channel sequence number with respect to the defined logical channel, and assigning said plurality of packets for transmission over said links in such manner that ones of the packets defining the same logical channel are transmittable over different ones of said links.
-
4. A method of processing packetized information received in a plurality of logical channels on multiple physical links, said method comprising
separating packets received from said links according to logical channels defined within said received packets, and ordering said separated packets in a defined sequence according to logical channel sequence numbers within said separated packets.
-
6. A method of conveying information from a source to a destination having multiple physical links interposed therebetween, said method comprising
assigning a message to be transmitted by said source, to one of a plurality of logical channels, packetizing said message into a plurality of packets each having a header defining the logical channel assigned to said message, adding a second header defining a logical channel sequence number to each of the packets of said message, transmitting the packets of said message over said links in such manner that ones of the packets of said message are transmittable over different ones of said links, monitoring each of said links for the receipt of packets, transmitting to said destination, each of the packets of said message received on said links in sequence on a per logical channel basis as defined by the logical channel sequence numbers included in those packets, storing any packets of said message received on said links out of sequence on a per logical channel basis as defined by the logical channel sequence numbers included in those packets, and transmitting to said destination any previously stored packets of said message which, from a given packet of said message transmitted to said destination, complete a consecutive sequence of packets of said message.
-
11. In a multi-layer communication system having a plurality of logical channels and having multiple physical communication links, said system comprising at the transmitting end
a packet layer for dividing source information into packets each defining one of said logical channels, and multiple link layers each associated with one of said links for receiving packets from said transmitting end packet layer and enclosing the received packets in frames for transmission over the associated link; - and
said system comprising at the receiving end multiple link layers each associated with one of said links for receiving frames from the associated link and extracting packets therefrom and, a packet layer for receiving packets from said receiving end link layers to reform said source information at the receiving end, a method of conveying said source information comprising including a logical channel sequence number in each packet passed from said transmitting end packet layer to said transmitting end link layers and ordering on a per logical channel basis based on logical channel sequence numbers, the packets passed from said receiving end link layers to said receiving end packet layer. - View Dependent Claims (12, 13)
- and
-
14. An arrangement for conveying information via a plurality of logical channels from a source to a destination having multiple physical links interposed therebetween, said arrangement comprising
means for packetizing said information into a plurality of packets each including therein a definition of one of said logical channels and a definition of a logical channel sequence number with respect to the defined logical channel, means for transmitting said plurality of packets over said links with ones of the packets defining the same logical channel being transmittable over different ones of said links, means for receiving a plurality of packets on said links, means for separating said received packets according to the logical channels defined therein, and means cooperating with said separating means for ordering the separated packets according to the logical channel sequence numbers defined therein.
-
17. An arrangement for the transmission of information via a plurality of logical channels from a source having multiple physical links extended therefrom, said arrangement comprising
means for packetizing said information into a plurality of packets each including therein a definition of one of said logical channels and a definition of a logical channel sequence number with respect to the defined logical channel and means for assigning said plurality of packets for transmission over said links in such manner that ones of the packets defining the same logical channel are transmittable over different ones of said links.
-
18. An arrangement for processing packetized information received in a plurality of logical channels on multiple physical links, said arrangement comprising
means for separating packets received from said links according to logical channels defined within said received packets, and means for ordering said separated packets in a defined sequence according to logical channel sequence numbers defined within said separated packets.
-
21. A switching arrangement comprising
first switching means comprising first means for establishing switched-connections between a first plurality of ports and between said first plurality of ports and at least one outlet connected to an inter-module connection arrangement, and first control means for controlling said first establishing means, second switching means comprising second means for establishing switched-connections between a second plurality of ports and between said second plurality of ports and at least one outlet connected to said intermodule connection arrangement, and second control means for controlling said second establishing means, and a plurality of physical links interconnecting said first and second control means wherein said first switching means further comprises means for packetizing information into a plurality of packets each including therein a definition of one of a plurality of logical channels and a definition of a logical channel sequence number with respect to the defined logical channel, means for transmitting said plurality of packets over said links with ones of the packets defining the same logical channel being transmittable over different ones of said links, and wherein said second switching means further comprises means for receiving a plurality of packets on said links, and means for separating said received packets according to the logical channels defined therein, and wherein said second control means is responsive to packets received in at least one of said logical channels for controlling said second establishing means.
-
23. A program-controlled digital switching system having a plurality of remote switching modules and having an inter-processor packetized communication arrangement for communication among said remote switching modules used for conveying information via a plurality of logical channels from one remote switching module to another remote switching module having multiple physical data links interposed therebetween, said arrangement comprising in said one remote switching module,
means for packetizing said information into a plurality of packets each including therein a definition of one of said logical channels and a definition of a logical channel sequence number with respect to the defined logical channel, and said arrangement comprising in said another remote switching module, means for receiving a plurality of packets on said links, means for separating said received packets according to the logical channels defined therein and means cooperating with said separating means for ordering the separated packets according to the logical channel sequence numbers defined therein.
-
24. A method of processing a plurality of packets for transmission over multiple physical data links comprising
assigning said plurality of packets for transmission over said links, wherein each of said plurality of packets includes therein a definition of one of said logical channels and a definition of a logical channel sequence number with respect to the defined logical channel, and communicating said assigned packets to selectable ones of said links.
-
25. A method of conveying units of information from a source to a destination having multiple physical links interposed therebetween, said method comprising
packetizing said units of information into a plurality of packets each including therein a definition of a unit identification and a definition of a packet sequence number with respect to the defined unit identification, transmitting said plurality of packets over said links in such manner that ones of the packets included in the same unit of information are transmittable over different ones of said links, separating a plurality of packets received on said links, according to the unit identifications defined therein, and communicating said separated packets to said destination in a defined ordered sequence according to packet sequence numbers defined therein, and wherein said communicating step comprises communicating said separated packets receivable from said links in an ordered sequence different from said defined ordered sequence.
-
27. A method for the transmission of units of information from a source having multiple physical links extended therefrom, said method comprising
packetizing said units of information into a plurality of packets each including therein a definition of a unit identification and a definition of a packet sequence number with respect to the defined unit identification, and assigning said plurality of packets for transmission over said links in such manner that ones of the packets included in the same unit of information are transmittable over different ones of said links.
-
28. A method of processing packetized information received on multiple physical links, said method comprising
separating packets received from said links according to unit identifications defined within said received packets, and ordering said separated packets in a defined sequence according to packet sequence numbers within said separated packets.
-
30. An arrangement for conveying units of information from a source to a destination having multiple physical links interposed therebetween, said arrangement comprising
means for packetizing said units of information into a plurality of packets each including therein a definition of a unit identification and a definition of a packet sequence number with respect to the defined unit identification, means for transmitting said plurality of packets over said links with ones of the packets included in the same unit of information being transmittable over different ones of said links, means for receiving a plurality of packets on said links, means for separating said received packets according to the unit identifications defined therein, and means cooperating with said separating means for ordering the separated packets according to the packet sequence numbers defined therein.
-
31. An arrangement for the transmission of units of information from a source having multiple physical links extended therefrom, said arrangement comprising
means for packetizing said units of information into a plurality of packets each including therein a definition of a unit identification and a definition of a packet sequence number with respect to the defined unit identification and means for assigning said plurality of packets for transmission over said links in such manner that ones of the packets included in the same unit of information are transmittable over different ones of said links.
-
32. An arrangement for processing packetized information received on multiple physical links, said arrangement comprising
means for separating packets received from said links according to unit identifications defined within said received packets, and means for ordering said separated packets in a defined sequence according to packet sequence numbers defined within said separated packets.
Specification