Apparatus and method for determining a computer network topology
First Claim
1. A method of determining a topology of a computer network including node devices and data-relay devices coupled to one another by a multi-drop line, each data-relay device having at least one port, the method including the steps of:
- acquiring a list of the data-relay devices in the computer network,acquiring a source address table for each at least one port of each data-relay device in the list, the source address table being a compilation of source addresses of packets received from respective node devices and source addresses of management response packets received from other respective data-relay devices on the respective at least one port of the respective data-relay device,selecting a unique ordered pair of different data-relay devices X and Y;
(a) selecting a pair of ports Xi and Yj on the selected different data-relay devices X and Y, respectively, where i represents a specific port of device X and j represents a specific port of device Y;
(b) determining whether the source address table of port Xi includes an entry for device Y and whether the source address table of port Yj includes an entry for device X, and when the answer to both is affirmative, establishing a connection between ports Xi and Yj in the topology; and
(c) repeating the above selecting and determining steps (a) and (b) for each different pair of ports of the data-relay devices X and Y;
(d) for each pair of ports Xi and Yj wherein the source address table of port Yj does not include an entry for device X, determining whether there is some intersection of the entries of the source address tables for port Yr and port Xq where r is not equal to j, and q is not equal to i, and when the answer is affirmative, establishing a connection between port Xi and port Yr in the topology; and
(e) repeating the second determining step (d) for each pair of ports Xi and Yj for which the source address table of port Yr does not include an entry for device X;
(f) repeating the above selecting and determining steps (a)-(e) for each unique ordered pair of different data-relay devices X and Y in the network; and
(g) generating a display of the established connections between the data-relay devices to show the network topology.
7 Assignments
0 Petitions
Accused Products
Abstract
An apparatus and method for determining the topology of a computer network including data-relay devices and node devices, based on a comparison of source adddresses heard by the various data relay-devices. A source address table is compiled for each port of each data-relay device, and for each select pair of ports the addresses in the source tables are compared to determined whether there is an intersection of heard devices. In order to account for directed transmissions which are not heard at every port, further comparison is made of all of the other ports of the device, eliminating the ports for which the intersection is the empty set. From the determined connections, a topology of the network is graphed showing direct and transitive connections. In cases where there is both a direct and transitive connection, the redundant direct connection is eliminated.
122 Citations
29 Claims
-
1. A method of determining a topology of a computer network including node devices and data-relay devices coupled to one another by a multi-drop line, each data-relay device having at least one port, the method including the steps of:
-
acquiring a list of the data-relay devices in the computer network, acquiring a source address table for each at least one port of each data-relay device in the list, the source address table being a compilation of source addresses of packets received from respective node devices and source addresses of management response packets received from other respective data-relay devices on the respective at least one port of the respective data-relay device, selecting a unique ordered pair of different data-relay devices X and Y; (a) selecting a pair of ports Xi and Yj on the selected different data-relay devices X and Y, respectively, where i represents a specific port of device X and j represents a specific port of device Y; (b) determining whether the source address table of port Xi includes an entry for device Y and whether the source address table of port Yj includes an entry for device X, and when the answer to both is affirmative, establishing a connection between ports Xi and Yj in the topology; and (c) repeating the above selecting and determining steps (a) and (b) for each different pair of ports of the data-relay devices X and Y; (d) for each pair of ports Xi and Yj wherein the source address table of port Yj does not include an entry for device X, determining whether there is some intersection of the entries of the source address tables for port Yr and port Xq where r is not equal to j, and q is not equal to i, and when the answer is affirmative, establishing a connection between port Xi and port Yr in the topology; and (e) repeating the second determining step (d) for each pair of ports Xi and Yj for which the source address table of port Yr does not include an entry for device X; (f) repeating the above selecting and determining steps (a)-(e) for each unique ordered pair of different data-relay devices X and Y in the network; and (g) generating a display of the established connections between the data-relay devices to show the network topology. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A system for determining a topology of a computer network having node devices mad data-relay devices coupled to one another by a multi-drop line, means for storing a source address table for an associated port of each data-relay device, the source address table being a compilation of source addresses of packets received from respective node devices and source addresses of management response packets received from other respective data-relay devices on the associated port, the system including:
means for processing the addresses in the source address tables of different pairs of ports of different data-relay devices to determine whether there is a connection between the respective ports, the processing means comprising; means for selecting a unique ordered pair of different data-relay devices X and Y; (a) means for selecting a pair of ports Xi and Yj on the selected different data-relay devices X and Y, respectively, where i represents a specific port of device X and j represents a specific port of device Y; (b) means for determining whether the source address table of port Xi includes an entry for device Y and whether the source address table of port Yj includes an entry for device X, and when the answer to both is affirmative, establishing a connection between ports Xi and Yj in the topology; (c) means for repeating operation of the above selecting and determining means (a) and (b) for each different pair of ports of the data-relay devices X and Y; (d) for each pair of ports Xi and Yj wherein the source address table of port Yj does not include an entry for device X, means for determining whether for all q not equal to i, there is some intersection of the entries of the source address tables for port Xq and port Yr, for all r not equal to j, and when the answer is affirmative, establishing a connection between port Xi and port Yr in the topology; (e) means for repeating operation of the second determining means (d) for each pair of ports Xi and Yj for which the source address table of port Yj does not include an entry for device X; (f) means for repeating operation of the above selecting and determining means (a)-(e) for each unique ordered pair of different data-relay devices X and Y in the network; and (g) means for generating a display of the established connections between the data-relay devices to show the network topology. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
27. A method of determining a topology of a computer network including node devices and data-relay devices coupled to one another by a multi-drop line, each data-relay device having at least one port, each at least one port having associated with it a source address table including source addresses of packets received from respective node devices and source addresses of management response packets received from other respective data-relay devices on the respective port, the method comprising steps of:
-
acquiring a list of data-relay devices; selecting a unique ordered pair of data-relay devices X, Y from the list; for the selected pair of data-relay devices; (a) for each at least one port Xi on device X; (b) determining whether the source address table for port Xi includes an entry for device Y; and (c) when the source address table for port Xi includes an entry for device Y, for each port Yj on device Y; (d) determining whether the source address table for port Yj includes an entry for device X, establishing a connection between ports Xi and Yj ; and (e) when the source address table for port Yj includes an entry for device X, establishing a connection between ports Xi and Yj ; and (f) when no port Yj on device Y has a source address table with an entry for device X, determining whether any source address table of any port Yr other than port Yj intersects with any source address table of any port of device X other than port Xi and when there is an intersection found, establishing a connection between port Xi and port Yr ; and repeating steps (a)-(f) for each unique ordered pair of data-relay devices X, Y; and (g) generating a display of the established connections between the data-relay devices to show the network topology.
-
-
28. A method of determining a topology of a computer network including node devices and data-relay devices coupled to one another by a multi-drop line, each data-relay device having at least one port, each at least one port having associated with it a source address table including source addresses of packets received from respective node devices and source addresses of management response packets received from other respective data-relay devices on the respective port, the method comprising the steps of:
-
selecting a unique ordered pair of first and second data-relay devices; for the selected pair of first and second data-relay devices; (a) for each respective port on the first data-relay device; (b) determining whether the source address table for the respective port on the first data-relay device includes an entry for the second data-relay device; and (c) when the source address table for the respective port on the first data-relay device includes an entry for the second data-relay device, determining, for each respective port on the second data-relay device, whether the source address table for the respective port on the second data-relay device includes an entry for the first data-relay device and when the source address table for the respective port on the second data-relay device includes an entry for the first data-relay device, establishing a connection between the respective port of the first data-relay device and the respective port of the second data-relay device; (d) when the respective port on the first data-relay device includes an entry for the second data-relay device and no port on the second data-relay device has a source address table with an entry for the first data-relay device, determining whether any source address table entries of any of the ports on the second data-relay device intersect with any source address table entries of any of the ports on the first data-relay device except for the respective port on the first data-relay device; and
when such an intersection is found, establishing a connection between the respective port on the second data-relay device and the port on the first data-relay device which has an entry for the second data-relay device in its source address table; andrepeating steps (a)-(d) for each unique ordered pair of first and second data-relay devices; and generating a display of the established connections between the data-relay devices to show the network topology.
-
-
29. A method of determining a topology of a computer network including node devices and data-relay devices coupled to one another by a multi-drop line, each data-relay device having at least one port, each at least one port having associated with it a source address table including source addresses of packets received from respective node devices and source addresses of management response packets received from other respective data-relay devices on the respective port, the method comprising the steps of:
-
selecting a unique ordered pair of first and second data-relay devices; for the selected pair of first and second data-relay devices; (a) determining whether the source address table for a respective port of the first data-relay device includes an entry for the second data-relay device; (b) when the source address table for the respective port of the first data-relay device includes an entry for the second data-relay device; (c) determining whether the source address table for a respective port of the second data-relay device includes an entry for the first data-relay device and, if so, establishing a connection between the respective port of the second data-relay device and the respective part of the first data-relay device; (d) repeating step (c) for each port on the second data-relay device; (e) when no source address table in the second data-relay device has been determined to include an entry for the first data-relay device; (f) determining whether the source address table for a respective port of the second data-relay device intersects with a source address table for any port on the first data-relay device except for the respective port of the first data-relay device determined in step (a) and, if so, establishing a connection between the respective port of the second data-relay device and the respective port of the first data-relay device which has an entry for the second data-relay device in its source address table as determined in step (a); and (g) repeating step (f) for each port on the second data-relay device; (h) repeating steps (a)-(g) for each port on the first data-relay device; and repeating steps (a)-(h) for each unique ordered pair of first and second data-relay devices; and generating a display of the established connection between the data-relay devices to show the network topology.
-
Specification