Method and apparatus for interfacing stations in a multiloop communications system
First Claim
1. A method of transmitting data from a first station of a communications system to a second station of said communications system, said communications system including a plurality of interconnected communications loops, each of said loops including a ring-connected set of nodes providing data flow unidirectionally from one node to the next, each of said nodes being capable of passing data through itself along its loop, extracting data from its loop or injecting data into its loop, a first subset of each of said loop'"'"'s set of nodes being local nodes which interface a station to said loop, a second subset of each of said loop'"'"'s set of nodes being gateway nodes which interface to another of said gateway nodes, each of said stations having associated with it a logical address unique within said communications system, each of said nodes having associated with it a functional address unique within each of said node'"'"'s respective loop, said method of comprising the steps of:
- a. translating the logical address of said second station into a second station functional address, said second station functional address specifying the functional address of the local node j to which said second station interfaces if said local node j is on the same loop as the local node i to which said first station interfaces, otherwise said second station functional address specifying the functional address of a gateway node r on the loop node i is on;
a (1). forming a packet of data at the local node i, said packet including an address field and at least one information field, said address field including said second station functional address, said information fields including the logical address of said second station;
b. transmitting to the loop connected to the current packet forming node said formed packet;
c. receiving said formed packet at the node on said loop downline from the current transmitting node;
d. accepting said received packet at said receiving node if the received packet'"'"'s second station functional address matches the functional address associated with said receiving node and said receiving node is a local node;
e. if the received packet'"'"'s second station functional address matches the functional address of the receiving node and the receiving node is one of said loops gateway nodes, transmitting the information fields of said received packet to the gateway node connected to said receiving node andh. receiving the information fields of said received packet at the gateway node connected to said receiving node,h (1). translating the received information field corresponding to the logical address of said second station into a corresponding functional address, said corresponding functional address specifying the functional address of the local node j to which said second station interfaces if said local node j is on the same loop as said connected gateway node, otherwise said corresponding functional address specifying the functional address of one of said gateway nodes on the loop connected to said connected gateway node,i. forming a second packet at the connected gateway node, said second packet including an address field and at least one information field, the address field of said second packet including as its second station functional address the corresponding functional address, the information fields of said second packet including the logical address of said second station, andj. repeating steps b through f; and
f. repeating steps b through e if the received packet'"'"'s functional address does not match the functional address of the receiving node.
2 Assignments
0 Petitions
Accused Products
Abstract
A multiloop communications system and a method of routing data between stations is disclosed. The communications system has a plurality of interconnected communications loops, each of the loops including a ring-connected set of nodes providing data flow unidirectionally from one node to the next, each of the nodes being capable of passing data through itself along its loop, extracting data from its loop or injecting data into its loop. A first subset of each loop'"'"'s set of nodes are local nodes which interface a station to its respective loop. A second subset of each loop'"'"'s set of nodes are gateway nodes which interface to a gateway node of another of the loops. Each of the stations has a logical address unique within the system and each of the nodes has a functional address unique within each node'"'"'s respective loop. A first station transmits data to a second station via the first station'"'"'s local node, the local node forming a packet including the functional address of a node providing a route to the second station and further including the logical address of the second station. If the path to the second station includes a transfer to another loop, the gateway node on the transmitting loop transfers the logical address of the second station to the gateway node of the receiving loop. The gateway node of the receiving loop forms a new packet of data utilizing the logical address of the second station and a table which specifies the functional address of the route to be taken to second station. The system and method additionally provides for alternate routing in the case when the most direct path between the transmitting and receiving stations is inoperative.
203 Citations
41 Claims
-
1. A method of transmitting data from a first station of a communications system to a second station of said communications system, said communications system including a plurality of interconnected communications loops, each of said loops including a ring-connected set of nodes providing data flow unidirectionally from one node to the next, each of said nodes being capable of passing data through itself along its loop, extracting data from its loop or injecting data into its loop, a first subset of each of said loop'"'"'s set of nodes being local nodes which interface a station to said loop, a second subset of each of said loop'"'"'s set of nodes being gateway nodes which interface to another of said gateway nodes, each of said stations having associated with it a logical address unique within said communications system, each of said nodes having associated with it a functional address unique within each of said node'"'"'s respective loop, said method of comprising the steps of:
-
a. translating the logical address of said second station into a second station functional address, said second station functional address specifying the functional address of the local node j to which said second station interfaces if said local node j is on the same loop as the local node i to which said first station interfaces, otherwise said second station functional address specifying the functional address of a gateway node r on the loop node i is on; a (1). forming a packet of data at the local node i, said packet including an address field and at least one information field, said address field including said second station functional address, said information fields including the logical address of said second station; b. transmitting to the loop connected to the current packet forming node said formed packet; c. receiving said formed packet at the node on said loop downline from the current transmitting node; d. accepting said received packet at said receiving node if the received packet'"'"'s second station functional address matches the functional address associated with said receiving node and said receiving node is a local node; e. if the received packet'"'"'s second station functional address matches the functional address of the receiving node and the receiving node is one of said loops gateway nodes, transmitting the information fields of said received packet to the gateway node connected to said receiving node and h. receiving the information fields of said received packet at the gateway node connected to said receiving node, h (1). translating the received information field corresponding to the logical address of said second station into a corresponding functional address, said corresponding functional address specifying the functional address of the local node j to which said second station interfaces if said local node j is on the same loop as said connected gateway node, otherwise said corresponding functional address specifying the functional address of one of said gateway nodes on the loop connected to said connected gateway node, i. forming a second packet at the connected gateway node, said second packet including an address field and at least one information field, the address field of said second packet including as its second station functional address the corresponding functional address, the information fields of said second packet including the logical address of said second station, and j. repeating steps b through f; and f. repeating steps b through e if the received packet'"'"'s functional address does not match the functional address of the receiving node. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of transmitting data from a first station of a communications system to a second station of said communications system, said communications system including a plurality of interconnected communications loops, each of said loops including a ring-connected set of nodes providing data flow unidirectionally from one node to the next, each of said nodes being capable of passing data through itself along its loop, extracting data from its loop or injecting data into its loop, a first subset of each of said loop'"'"'s set of nodes being local nodes which interface a station to said loop, a second subset of each of said loop'"'"'s set of nodes being gateway nodes which interface to a gateway node of another of said plurality of loops, each of said stations having associated with it a logical address unique within said communications system, each of said nodes having associated with it a functional address unique within each of said node'"'"'s respective loop, said method comprising the steps of:
-
a. forming a packet of data at the local node i of the loop to which said first station interfaces, said packet including an address field and at least one information field, said address field specifying the functional address of the local node j to which said second station interfaces if said local node j is on the same loop as said local node i, otherwise said address field specifying the functional address of a gateway node r on the loop node i is on, said information fields including the logical address of said second station; b. transmitting to the loop connected to the current packet forming node said formed packet; c. receiving said formed packet at the node on said loop downline from the current transmitting node; d. if the received packet'"'"'s functional address matches the functional address associated with said receiving node and said receiving node is a local node, d (1). accepting said received packet at said receiving node, d (2). node i waiting for a predetermined period of time to receive a third packet from said node j acknowledging that the packet transmitted from said first station to said second station was received, d (3). in the absence of said node i receiving said third packet within said predetermined period of time, forming a fifth packet at said node i, said fifth packet including an address field and a plurality of information fields, said fifth packet'"'"'s address field specifying the functional address of one of said nodes on the loop that said node i is on that provides an alternate path to said node j, said fifth packet'"'"'s information fields specifying at least the logical addresses of said second station and an indication that an alternate path is being utilized, and d (4). returning to step b; e. if the received packet'"'"'s functional address matches the functional address of the receiving node and the receiving node is one of said loop'"'"'s gateway nodes, transmitting the information fields of said received packet to the gateway node connected to said receiving node; and f. if the received packet'"'"'s functional address does not match the functional address of the receiving node, returning to step b. - View Dependent Claims (10, 11)
-
-
12. A method of transmitting data from a first station of a communications system to a second station of said communications system, said communications system including a plurality of interconnected communications loops, each of said loops including a ring-connected set of nodes providing data flow unidirectionally from one node to the next, each of said nodes being capable of passing data through itself along its loop, extracting data from its loop or injecting data into its loop, a first subset of each of said loop'"'"'s set of nodes being local nodes which interface a station to said loop, a second subset of each of said loop'"'"'s set of nodes being gateway nodes which interface to a gateway node of another of said plurality of loops, each of said stations having associated with it a logical address unique within said communications system, each of said nodes having associated with it a functional address unique within each of said node'"'"'s respective loop, said method comprising the steps of;
-
a. forming a packet of data at the local node i to which said first station interfaces, said packet including an address field and at least one information field, said address field specifying the functional address of the local node j to which said second station interfaces if said local node j is on the same loop as said local node i, otherwise said address field specifying the functional address of a gateway node r on the loop node i is on, said information fields including the logical address of said first and second stations; b. transmitting to the loop connected to the current packet forming node said formed packet; c. receiving said formed packet at the node on said loop downline from the current transmitting node; d. if the received packet'"'"'s functional address matches the functional address associated with said receiving node and said receiving node is a local node, accepting said received packet at said receiving node, and d (1). determining whether the received packet included an information field indicating that alternate routing was used for transmitting said received packet from said first station to said second station; e. if the received packet'"'"'s functional address matches the functional address of the receiving node and the receiving node is one of said loop'"'"'s gateway nodes, transmitting the information fields of said received packet to the gateway node connected to said receiving node; and f. returning to step b if the received packet'"'"'s functional address does not match the functional address of the receiving node. - View Dependent Claims (13, 14, 15)
-
-
16. A method of transmitting data from a first station of a communications system to a second station of said communications system, said communications system including a plurality of interconnected communications loops, each of said loops including a ring-connected set of nodes providing data flow unidirectionally from one node to the next, each of said nodes being capable of passing data through itself along its loop, extracting data from its loop or injecting data into its loop, a first subset of each of said loop'"'"'s set of nodes being local nodes which interface a station to said loop, a second subset of each of said loop'"'"'s set of nodes being gateway nodes which interface to a gateway node of another of said plurality of loops, each of said stations having associated with it a logical address unique within said communications system, each of said nodes having associated with it a functional address unique within each of said node'"'"'s respective loop, said method comprising the steps of:
-
a. forming a packet of data at the local node i of the loop to which said first station interfaces, said packet including an address field and at least one information field, said address field specifying the functional address of the local node j to which said second station interfaces if said local node j is on the same loop as said local node i, otherwise said address field specifying the functional address of a gateway node r on the loop node i is on, said information fields including the logical address of said second station; b. transmitting to the loop connected to the current packet forming node said formed packet; c. receiving said formed packet at the node on said loop downline from the current transmitting node; d. if the received packet'"'"'s functional address matches the functional address associated with said receiving node and said receiving node is a local node, accepting said received packet at said receiving node and d (1). determining whether the received packet included an information field indicating that alternate routing was used for transmitting said received packet from said first station to said second station; d (2). forming a third packet at the local node j, said third packet including an address field and a plurality of information fields, said third packet'"'"'s address field specifying the functional address of said local node i if said local node j is on the same loop as said local node i, otherwise said third packet'"'"'s address field specifying the functional address of a gateway node s on the same loop as said local node j, said third packet'"'"'s information fields specifying at least the logical address of said first station, the logical address of said second station and an indication that the packet of data transmitted by said first station was received by the second station, and d (3). returning to step b; e. if the received packet'"'"'s functional address matches the functional address of the receiving node and the receiving node is one of said loop'"'"'s gateway nodes, transmitting the information fields of said received packet to the gateway node connected to said receiving node, and e (1). receiving the information fields of said received packet at the gatway node connected to said receiving node; e (2). forming a second packet at the connected gateway node utilizing the received information fields, the address field of said second packet specifying the functional address of the local node j to which said second station interfaces if said local node j is on the same loop as said connected gateway node, otherwise the address field of said second packet specifying the functional address of one of said gateway nodes on the loop connected to said connected gateway node, and e (3). returning to step b; and f. returning to step b if the received packet'"'"'s functional address does not match the functional address of the receiving node. - View Dependent Claims (17)
-
-
18. A method of transmitting data from a first station of a communications system to a second station of said communications system, said communications system including a plurality of interconnected communications loops, each of said loops including a ring-connected set of nodes providing data flow unidirectionally from one node to the next, each of said nodes being capable of passing data through itself along its loop, extracting data from its loop or injecting data into its loop, a first subset of each of said loop'"'"'s set of nodes being local nodes which interface a station to said loop, a second subset of each of said loop'"'"'s set of nodes being gateway nodes which interface to a gateway node of another of said plurality of loops, each of said stations having associated with it a logical address unique within said communications system, each of said nodes having associated with it a functional address unique within each of said node'"'"'s respective loop, said method comprising the steps of:
-
a. forming a packet of data at the local node i of the loop to which said first station interfaces, said packet including an address field and at least one information field, said address field specifying the functional address of the local node j to which said second station interfaces if said local node j is on the same loop as said local node i, otherwise said address field specifying the functional address of a gateway node r on said loop node i is on, said information fields including the logical address of said second station; b. transmitting to the loop connected to the current packet forming node said formed packet; c. receiving said formed packet at the node on said loop downline from the current transmitting node; d. if the received packet'"'"'s functional address matches the functional address associated with said receiving node and said receiving node is a local node, accepting said received packet at said receiving node and d (1). node j performing a longitudinal parity check on at least one information field of said received packet, d (2). forming a sixth packet at the local node j, said sixth packet including an address field and a plurality of information fields, said sixth packet'"'"'s address field specifying the functional address of said local node i if said local node j is on the same loop as said local node i, otherwise said sixth packet'"'"'s address field specifying the functional address of a gateway node'"'"'s on the same loop as said second station, said information fields specifying at least the logical address of said first station, the logical address of said second station and an indication of the result of said longitudinal parity check, d (3). node i waiting for a predetermined period of time after transmitting the packet formed in said step a to receive said sixth packet from said node j, d (4). upon receipt of said sixth packet by said node i and in response to said sixth packet indicating an incorrect longitudinal parity check, forming a seventh packet at said node i, said seventh packet including an address field and a plurality of information fields, said seventh packet'"'"'s address field specifying the functional address of one of the nodes on the loop that said node i is on that provides an alternate path to said node j, said seventh packet'"'"'s information fields specifying at least the logical address of said second station and an indication that an alternate path is being utilized, and d (5). returning to step b; e. if the received packet'"'"'s functional address matches the functional address of the receiving node and the receiving node is one of said loop'"'"'s gateway nodes, transmitting the information fields of said received packet to the gateway node connected to said receiving node; and f. returning to step b if the received packet'"'"'s functional address does not match the functional address of the receiving node. - View Dependent Claims (19)
-
-
20. A communications system for routing packets of data from any first of a plurality of stations to any second other of said plurality of stations, each of said plurality of stations having associated with it a logical address unique within said communications system, said communications system comprising:
-
a plurality of communications loops, each of said plurality of communications loops for circulating data; and a plurality of sets of nodal means, each of said sets of nodal means connected to one of said plurality of communications loops, each of said nodal means having associated with it a functional address unique within its respective set of nodal means, each of said nodal means for passing data through itself along its respective loops, extracting data from its respective loop and injecting data into its respective loop, each of said nodal means further including means for translating a logical address into a corresponding functional address, the corresponding functional address identifying a nodal means providing a route to the station with the respective logical address, each of said logical address translating means including translation table means providing primary and alternate routing information for an associated subset of said plurality of logical addresses, a first subset of each of said sets of nodal means being further characterized as local nodal means, each of said local nodal means for interfacing one of said plurality of stations to that local nodal means respective loop, and a second subset of each of said sets of nodal means being further characterized as gateway nodal means, each of said gateway nodal means for transferring data between its respective loop and another of said gateway nodal means. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33)
-
-
34. A communications system for routing packets of data from any first of a plurality of stations to any second other of said plurality of stations, each of said plurality of stations having associated with it a logical address unique within said communications system, said communications system comprising:
-
a plurality of communications loops, each of said plurality of communications loops for circulating data; and a plurality of sets of nodal means, each of said sets of nodal means connected to one of said plurality of communications loops, each of said nodal means having associated with it a functional address unique within its respective set of nodal means, each of said nodal means for passing data through itself along its respective loop, extracting data from its respective loop and injecting data into its respective loop, a first subset of each of said sets of nodal means being further characterized as local nodal means, each of said local nodal means for interfacing one of said plurality of stations to that local nodal means respective loop, and a second subset of each of said sets of nodal means being further characterized as gateway nodal means, each of said gateway nodal means for transferring data between its respective loop and another of said gateway nodal means, each of said local nodal means including means for receiving data from its respective station, means for forming a packet from said received data and means for transmitting said formed packet of data onto its respective loop, wherein said packet formed from said received data includes at least one address field and at least one information field, said address field specifying and functional address of one of the nodal means on its respective loop that provides a first path to the local nodal means j to which said second station interfaces, one of said information fields specifying the logical address of said second station, each of said local nodal means further including detection means, responsive to not receiving an acknowledgment packet from said second station with a predetermined time after transmitting a packet to said second station, said detection means for forming a second packet of data and transmitting said second packet onto its respective loop, said second packet including at least one address field, said second packet'"'"'s address field specifying the functional address of one of said nodal means on the loop that said first station is on that provides an alternate path to the local nodal means j to which said second station interfaces. - View Dependent Claims (35, 36, 37, 38, 39, 40, 41)
-
Specification