WO1997023099A2 - Method and apparatus for tracking connection-oriented communications configurations - Google Patents

Method and apparatus for tracking connection-oriented communications configurations Download PDF

Info

Publication number
WO1997023099A2
WO1997023099A2 PCT/US1996/019021 US9619021W WO9723099A2 WO 1997023099 A2 WO1997023099 A2 WO 1997023099A2 US 9619021 W US9619021 W US 9619021W WO 9723099 A2 WO9723099 A2 WO 9723099A2
Authority
WO
WIPO (PCT)
Prior art keywords
port
transition
transition table
neighbor
ofthe
Prior art date
Application number
PCT/US1996/019021
Other languages
French (fr)
Other versions
WO1997023099A3 (en
Inventor
Wallace Matthews
Vick Vaishnavi
Original Assignee
Cabletron Systems, 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 Cabletron Systems, Inc. filed Critical Cabletron Systems, Inc.
Priority to AT96941501T priority Critical patent/ATE198686T1/en
Priority to EP96941501A priority patent/EP0865698B1/en
Priority to DE69611542T priority patent/DE69611542T2/en
Priority to AU10625/97A priority patent/AU699509B2/en
Publication of WO1997023099A2 publication Critical patent/WO1997023099A2/en
Publication of WO1997023099A3 publication Critical patent/WO1997023099A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/22Arrangements for supervision, monitoring or testing
    • H04M3/2254Arrangements for supervision, monitoring or testing in networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/0016Arrangements providing connection between exchanges
    • H04Q3/0062Provisions for network management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13544Indexing scheme relating to selecting arrangements in general and for multiplex systems modeling or simulation, particularly of networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13545Indexing scheme relating to selecting arrangements in general and for multiplex systems monitoring of signaling messages, intelligent network

Definitions

  • This invention relates generally to communications networks, and more particularly to monitoring and tracking connection configurations within connection-oriented communications networks.
  • Communications networks provide a capability for one device, referred to as a source, to transmit data to another device, referred to as a destination.
  • a source a device that transmits data to another device
  • a destination a device that transmits data to another device
  • connection-oriented communications a logical association is established between the source and the destination, so that several separate groups of data may be sent along the same path that is defined by the logical association. This is distinguished from connectionless communications, in which the source transmits data to the destination in an unplanned fashion and without prior coordination.
  • connectionless communications each frame of data is transmitted from the source to the destination in a manner independent from the manner in which other frames are transmitted from the source to the destination.
  • Bridges and routers are commonly used in connectionless communications.
  • connection establishment the first time a source has data to be sent to a destination, a logical association, also called the connection or a path, is established between the source and the destination.
  • the connection defines elements and connections between the elements, for example, switches between the source and the destination, and the ports of the switches through which the data will pass from the source to the destination.
  • a switch and other devices similar in operation to a switch, may be referred to as a node, intermediate system, interface message processor, or gateway.
  • a port is an interface on a switch or similar device that provides a physical communication path to other devices, for example to other ports of other switches.
  • connections There may be a large number of connections which represents a very large and complex amount of connection information for a central authority to monitor. Additionally, some connections may fail, due to electrical problems or physical or logical removal of any ofthe elements which make up the connection. For example, a switch may be removed for maintenance or to achieve a more advantageous physical arrangement for other connections. It would thus be desirable to provide a monitoring capability for tracking connections in a connection-oriented communications network.
  • a network is monitored for reports indicative of a connection state among ports of a communications network.
  • Certain ports are designated as being in a transition (e.g., new connections being made or old connections being broken), and a transition table is created for each transition.
  • the transition table includes locations (the intersection of a row and column, where a value is stored) that directly relate the connectivity of a first port with respect to a second port, as well as locations that relate the connectivity of other ports.
  • the contents ofthe transition table are evaluated to determine the likely configuration ofthe communications network.
  • State machines may be used to resolve conflicting data within the transition table, by providing a likely connection output based upon different entries within the transition table.
  • a voting scheme may also be used to evaluate the outputs ofthe state machines and update the transition table when appropriate, and the updated transition table may also be evaluated.
  • a method for tracking a configuration of a plurality of ports of a communications network.
  • the method comprises the steps of determining whether any of the plurality of ports are in a transition with respect to the configuration ofthe plurality of ports, collecting data associated with the transition, and analyzing the data associated with the transition to determine the configuration ofthe plurality of ports.
  • the step of collecting data may include receiving a report that includes an indication that a reporting port either has a connection or has lost a connection with respect to a neighbor port.
  • the method may include waiting a predetermined amount of time prior to analyzing the data.
  • the step of collecting data may also include entering information from the report into a transition table that is associated with one ofthe reporting port and the neighbor port.
  • the transition table may include locations populated with one of at least three different states.
  • the step of analyzing may include determining a likelihood of a connection between the reporting port and the neighbor port based upon locations ofthe transition table that either do or do not directly relate to the reporting port and the neighbor port.
  • the step of analyzing may include providing a first number of votes based upon data within the locations ofthe transition table that directly relate to the reporting port and the neighbor port, providing a second number of votes based upon data within the locations ofthe transition table that do not directly relate to the reporting port and the neighbor port, and evaluating the votes to determine a likelihood of a connection between the reporting port and the neighbor port. Additionally, data within the locations ofthe transition table that directly relate to the reporting port and the neighbor port may be updated based upon the votes to provide updated data, and the likelihood of a connection between the reporting port and the neighbor port may be determined based upon the updated data.
  • a new transition table may be created. Additionally, a merged transition table may be created by merging a first transition table associated with the reporting port with a second transition table associated with the neighbor port.
  • Another aspect ofthe invention is directed to an apparatus for tracking a configuration of a plurality of ports of a communications network, comprising means for determining whether any ofthe plurality of ports are in a transition with respect to the configuration ofthe plurality of ports, means for collecting data associated with the transition, and means for analyzing the data associated with the transition to determine the configuration ofthe plurality of ports.
  • Another embodiment ofthe invention is directed to an apparatus for tracking a configuration of a plurality of ports of a communications network.
  • the apparatus comprises an event stream filter that provides data associated with at least one transition ofthe communications network, at least one transition table, each of which corresponds to a respective one ofthe at least one transition ofthe communications network, and a transition manager that provides a link list indicative ofthe configuration of the plurality of ports based upon the data of the at least one transition table.
  • Fig. 1 illustrates a network having connection-oriented communications, which is monitored by a topology manager
  • Fig. 2 shows the operation ofthe topology manager illustrated in Fig. 1 ;
  • Fig. 3 A illustrates a state matrix used to monitor the configuration of a network
  • Fig. 3B shows an example of a network topology represented by the state matrix of Fig. 3A;
  • Fig. 3C is a representation ofthe connections of the network topology of Fig. 3B;
  • Fig. 4 depicts an event stream resulting from a transition of a network from the topology illustrated in Fig. 3B;
  • Fig. 5A illustrates a state matrix resulting from the event stream of Fig. 4;
  • Fig. 5B shows a network topology that is a result of the transition of the event stream of Fig. 4;
  • Fig. 5C is a representation ofthe connections ofthe network topology of Fig. 5B;
  • Fig. 6 illustrates an embodiment of a topology manager in accordance with an embodiment ofthe invention
  • Fig. 7 is a flow diagram of a process performed by a topology manager
  • Fig. 8 is a state diagram showing states of a transition table resulting from receipt of an event stream by the topology manager of Fig. 6;
  • Fig. 9 shows detail ofthe creation and maintenance of a transition table in accordance with one embodiment ofthe topology manager of Fig. 6;
  • Fig. 10A is a flow diagram showing one embodiment of a transition analysis function
  • Fig. 1 OB is a flow diagram of another embodiment ofthe transition analysis function
  • Fig. 1 1 shows detail ofthe trend analysis performed to evaluate and update locations of a transition table
  • Figs 12, 13, and 14 illustrate state machines used to provide votes regarding possible connections based upon data of a transition table
  • Fig. 15 shows steps of a method for evaluating the votes generated by the state machines of Figs. 12, 13, and 14; and Fig. 16 shows a flow diagram for an embodiment ofthe trend analysis iteration step of
  • Fig. 17 A illustrates an example transition table prior to trend analysis
  • Fig. 17B illustrates the transition table of Fig. 17A subsequent to trend analysis.
  • a representation that provides a virtual (i.e., logical) portrayal ofthe connections within a network may be developed and maintained.
  • the term "link" refers to a model, which may be contained within a representation of a network, of a connection between one port and at least one other port.
  • a link may refer to a connection between a first port and a second port.
  • Such a connection may be a simple connection such as a single wire, or a more complex connection such as an ETHERNET cable and associated local area network protocol layers.
  • the connection may include switches or hubs along with local area networks and other devices.
  • the topology manager 10 which maintains a model of a connection-oriented network, and in particular a model ofthe current configuration ofthe elements ofthe network 12.
  • the topology manger 10 receives an event stream 14 from several ports A-F. These ports A-F may be connected via a network 12, which may contain several individual connections among the ports A-F.
  • the event stream 14 includes reports (i.e., messages) which provide information indicative of current and past connections among the ports A-F ofthe network.
  • the reports include a new neighbor report and a lost neighbor report. Each of these reports includes a reporting port and is made with respect to a neighbor port.
  • these reports are actually generated by a switch or another device which contains the reporting port, or from a source, destination, or other nodes within the network.
  • the report may be considered as being generated by the reporting port itself, so that the phrase "port A generates a report” actually means "a device on the network provides a report with port A included as the reporting port.”
  • a new neighbor report is an indication that the reporting port has been connected to the neighbor port.
  • the report "nn.Y" generated by port X represents a new neighbor report from reporting port X with respect to new neighbor Y.
  • a lost neighbor report is an indication that a particular connection that once existed has been lost between the reporting port and the neighbor port.
  • the report "ln.Y" generated by port X represents a lost neighbor report from reporting port X with respect to lost neighbor Y.
  • Another type of report is a lost all neighbors report ("la"), which is indicative that a reporting port has been disconnected from all other ports.
  • a lost all neighbors report may be considered as a plurality of individual lost neighbor reports. It is not necessary to have reports of exactly these types, as long as some information indicative of a change or a current status ofthe port connections is provided.
  • the topology manager 10 receives reports (step 22), generally in the form of an event stream 14, from the ports A-F ofthe network to be monitored by the topology manager 10.
  • the topology manager 10 then builds a state matrix from the reports ofthe event stream 14 (step 24), and determines the connections ofthe network 12 from the contents ofthe state matrix (step 26).
  • a description of a state matrix and the relationship between connections will be described with respect to Figs 3A-C and 5A-C.
  • Fig. 3 A shows a state matrix 32 used to monitor the configuration ofthe network that includes six ports A-F.
  • Fig. 3B shows the six ports A-F, as well as a first connection (link X) between port A and port B, and a second connection (link Y) between port C and port D.
  • Port E and port F are shown as having no connection in Fig. 3B.
  • the values filled into the locations of each row ofthe state matrix 32 are made as a result of reports made by a reporting port with respect to a neighbor ports. For example, the entries within row 321 of state matrix 32 show that port A is connected to port B (designated "1"), but is not connected to ports C, D, and E (designated "0").
  • Rows 323, 324, 325 and 326 show similar information regarding the connections of ports C, D, E and F.
  • the upper left to lower right diagonal ofthe state matrix 32 is an identity vector (designated '-"), which typically has no significance because it would represent a port's connection to itself.
  • a system such as a topology manager 10 may determine the current connections ofthe network 12, for example by reading across each row to determine which ports are connected to which other ports.
  • the information of each row may be confirmed by information of another row.
  • the indication of row 321 that port A is connected to port B may be confirmed by the indication of row 322 that port B is connected to port A.
  • Such connections may be described in terms such as shown in Fig. 3C.
  • Fig 3C is an object representation ofthe links X and Y ofthe network 12.
  • Fig. 4 depicts an event stream, including reports from ports A, B, C, D, E, and F, which may be made in response to a network 12 transitioning from a topology as shown in Fig. 3B to a topology as shown in Fig. 5B.
  • port D has been disconnected from port C
  • port D has been connected to the connection that includes ports A and B
  • ports E and F have been connected together.
  • Port A has reported "nn.D” 41 ("new neighbor D"), indicative that port D is a new neighbor of port A.
  • Port B has similarly reported “nn.D” 42, indicative that port D is a new neighbor of port B.
  • Port C has reported “la” 43 ("lost all neighbors”), indicative that port C has lost all neighbors, and now has no connection.
  • Port D has reported "ln.C” 44 (“lost neighbor C"), indicative that port D has lost the connection with port C, and "nn.A”45 and “nn.B” 46 indicative ofthe new connections to ports A and B.
  • ports E and F have reported their new connection, with reports, “nn.F” 47 and "nn.E” 48 respectively.
  • Fig. 5B represents the network connection configuration which caused the ports A-F to make the reports shown in Fig. 4.
  • ports A, B, and D are connected together, port C is not connected to any other port, and port E is connected to port F.
  • Fig. 5A shows state matrix 32 which has been updated to show the new configuration as a result of receiving the reports 41-48 shown in Fig. 4.
  • the information of one row of the state matrix 32 confirms the connection information of another row.
  • the state matrix 32 contains contradictory or conflicting information. There may be several reasons for this contradictory information, for example lost communications from the reporting ports, faults within the ports causing inaccurate reports, a transition in process, or reports received out of order. If a port sends a report but the report is lost, then the reporting port column ofthe state matrix 32 will not be updated. For example, if report 42 from port B of Fig. 4 were lost, then the state matrix 32 would not have updated row 322 to show that port B is connected to port D.
  • contradictory information may also be contained within the state matrix 32 if faulty information is provided. For example, there may be a fault within port B so that port B either reported bad information or no new information at all.
  • a state matrix 32 may contain contradictory information simply because the network is in a transition.
  • the reports 41-48 of Fig. 4 will not all arrive at the topology manger 10 at precisely the same time, nor would the results of the reports be entered into the state matrix 32 at precisely the same time.
  • the state matrix 32 will contain contradictory information. For example, this would be the case if the report 42 had not arrived, but all other reports had arrived.
  • the delay in reports may be due to communication or processing delays, or due to a situation in which the network 12 is being reconfigured in response to other reconfigurations. For example, the connection from port D to ports A and B may have been created because the connection between port D and port C was lost. In such an instance, the reports from the involved elements would not have been generated at the same time.
  • Another cause of contradictory information may be the order in which reports ofthe event stream 14 are received by the topology manager 10. If a report from a previous transition is received following a report from a later transition, the state matrix 32 will overwrite the report from the later transition with the report from the previous transition, even though the later transition occurred after the previous transition.
  • One approach to manage potentially contradictory information within a state matrix 32 is to delay a certain amount of time before making any decisions from the state matrix 32, regarding the configuration of a network 12. However, this approach is only effective if ultimately the appropriate reports arrive that negates the contradictory information. If the contradictory information was the result of a lost message, the appropriate report may never arrive.
  • Fig. 6 shows a topology manager 60 that receives the event stream 14.
  • the topology manager 60 includes an event stream filter 602 that receives the event stream 14.
  • the topology manager also includes a reconfiguration manager 604, discovery controller 606, transition controller 608, and transition manager 610.
  • One embodiment of the transition manager 610 is also shown in Fig. 6, which includes a transition timer 618, transition analyzer 620, transition table manager 622, and transition table merger 624.
  • the transition analyzer 620 is also connected to a missing lost all module 626, an isolated ports module 628, and a trend analysis module 630.
  • the trend analysis module is connected to a direct state machine 632, an inference state machine 634 to be used when there are two links anticipated, and an inference state machine 636 to be used when there are more than two links anticipated.
  • the topology manager 60 may be implemented as a software module, for example an object-oriented software module.
  • link X.ports [A,B,C]
  • X is an instantiation of a class called link, and contains individual objects A, B, and C.
  • Such an approach may be useful for maintaining relationships (connections) between the ports of a network, as well as maintaining attributes (data) ofthe ports.
  • the different sub-elements ofthe topology manager 60 are implemented as software on a floppy disk or hard drive, which controls a computer, for example a general purpose computer such as a workstation, a mainframe or a personal computer, to perform steps ofthe disclosed processes.
  • a general purpose computer such as a workstation, a mainframe or a personal computer
  • Such a general purpose computer may be connected to the network in order to receive reports, and may provide commands to devices on the network in order to control the network configuration.
  • the sub-elements ofthe topology manager 60 may be implemented as special purpose electronic hardware. Additionally, in either a hardware or software embodiment, the functions performed by the different elements within the topology manager 60 may be combined in different arrangements.
  • the topology manager 60 receives reports from ports (step 70). As mentioned earlier, the reports may be included within the event stream 14. As a result ofthe reports received in step 70, a transition table is created and maintained for each transition (step 72). Generally, the topology manager 60 will initiate a transition as a result of receiving a report that is indicative of one port reporting a change, for example a new neighbor port or a lost neighbor port. Additionally, when it is deemed appropriate, each transition is analyzed (step 74) in order to determine the current connections. In general, the transition will be resolved to be one of four states.
  • the resolution determined as a result of step 74, may include a link list 616 which takes the form ofthe lists of Figs. 3C and 5C.
  • the appropriate circuits ofthe network 12 may be reconfigured by reconfiguration manager 604 in order that the network 12 conforms with the current connections.
  • Fig. 8 shows a state diagram for an embodiment ofthe invention in which each location within a transition matrix 612 may be one of seven different states; this is one aspect ofthe invention which facilitates tracking connection configurations in the presence of potential contradictory information. These states are shown in the legend of Fig. 8 as follows:
  • State 1 confirmed connected, and state 0, confirmed not connected, are similar to the "1 " and "0" entries within a state matrix 32.
  • State 4 is an undetermined state, which typically represents a situation in which there is no information regarding a possible connection.
  • States 3 and 6 may be used to represent, for example, that some prior information is indicative of either a connection (state 6) or a lack of a connection (state 3), but confirmation has not been received. From state 3, a report can cause a change of state to either state 1 confirmed connected, or state 5 capture not connected. From state 5, an additional report can cause the state to be changed to state 0 confirmed not connected. From state 6, a report can cause a change of state to either state 0 confirmed not connected, or state 2 capture connected. From state 2, an additional report can cause the state to be changed to state 1 confirmed connected.
  • Fig. 8 also shows the transitions between the different states that are made by the transition table manager 622 as a result ofthe topology manager 60 receiving reports regarding a relationship between two ports, for example the "nn" and "In” reports in Fig. 8. For example, if a particular location ofthe transition table 612a that represents reporting Port A with respect to neighbor Port B, is currently in state 4, undetermined, and then the topology manager 60 receives a "nn" from port A with respect to port B, then the particular location ofthe transition table 612a will be changed from a "4" to a "1 ", indicating that port A believes that port A is connected to port B.
  • the state diagram of Fig. 8 shows similar transitions for other information received based upon a previous state.
  • Initialization rules may be applied in order to initialize each location of a transition table 612.
  • One example of such a rule is that each location may be initialized to state 4, undetermined.
  • a topology manager 60 may have other information, perhaps manually entered by a user, regarding the potential state of each connection within a network 12, so that some locations may be initialized to either state 6 assumed connected, or state 3 assumed not connected.
  • a report is received from a reporting port regarding a neighbor port.
  • the transition table manager 622 determines whether either the reporting port or the neighbor port is currently involved in a transition 612a, ...612n. If not, then in step 84 a new transition table 612 is created, and the information from the report is entered into the new transition table 612 in step 86.
  • a timer is set, so that an analysis of a transition may be triggered when no reports regarding that transition have been received for a certain amount of time. The lack of reports being received for a certain amount of time may be indicative that the transition has been completed.
  • the transition timer 618 may be used for this purpose.
  • a predetermined time of 90 seconds is used as a value for the transition timer 618, which allows for reception ofthe reports associated with a topology change.
  • a different predetermined time could be used depending upon the number of switches in a network, or on other network characteristics.
  • step 90 it is determined whether both ports are involved in different transitions. If so, then both timers for the different transitions are stopped (step 96), the transition table merger 624 is invoked to merge the two transition tables of the different transitions, (step 98), the report is entered into the resulting merged transition table (step 98), and the timer for the merged transition table is reset and started (step 99).
  • the timer for the relevant transition is stopped (step 92), the report is entered into the relevant transition table (step 93), and the timer is reset to the initial value and restarted (step 94). Because the timer of a particular transition is reset when a relevant report for that transition is received, the timer typically times out only when a certain amount of time has passed in which no relevant reports have been received for that particular transition.
  • the transition analyzer 620 is triggered (step 102) when the transition timer 618 for a particular transition times out (step 100). Accordingly, the total number of reported events is compared to the expected number for the transition under analysis (step 104). If there are a sufficient number of reported events (step 106), then trend analysis is performed to create a new transition table with conflicts resolved (step 108). If necessary, the trend analysis may be further iterated (step 130). If there are not a sufficient number of events, then it is likely that the timer is too short, or there is some other type of faulty termination (step 136).
  • discovery is invoked in which the devices having the ports involved in the transition under analysis (step 138), and the results of the discovery may be used to determine the current connections (step 139).
  • Discovery in this context, refers to querying the appropriate devices or ports directly to obtain information regarding their connectivity. From either step 130 or step 139, the process continues to step 132, in which the relevant devices (also referred to as circuits) ofthe network are reconfigured to conform with the current connections. In step 134, the transition is terminated.
  • Fig. 10B Another embodiment of the transition analyzer 620 is shown in Fig. 10B. As shown in Fig. 10B, the analysis may be triggered without regard to the total number of expected reports, and trend analysis may be performed whenever the transition timer times out (step 100).
  • Fig. 1 1 shows detail of one embodiment ofthe trend analysis (step 108). For a given port X to port Y connection, the trend analysis is initiated (step 110). The flow diagram of Fig. 1 1 may then be repeated for each port combination in the transition table. There are two "direct" locations within the transition table 612 with respect to port X and port Y, location X-Y and location Y-X. From the data in each of these locations, an implication may be created with respect to whether the ports X and Y are connected. For example, if both locations are confirmed not connected (0), then it is relatively certain that there is not a connection between ports X and Y. Other combinations may also be indicative ofthe actual status, as shown in Fig.
  • step 1 12 shows detail of one embodiment ofthe direct state machine 632.
  • the X-Y and Y-X values with in the transition table are input to the direct state machine, and the direct state machine 632 returns a result, either confirmed not connected, confirmed connected, or undetermined (step 112). From the results returned from the direct state machine 632, the status ofthe possible port X-portY connection may be resolved.
  • Fig. 13 shows the inference state machine 634, used when it is known that there are no more than two links.
  • Fig. 14 shows the inference state machine 636 that may be used when it is known or anticipated that there are more than two links.
  • More than two links may be known or anticipated as a result of a transition having already accumulated a certain number of links prior to a beginning ofthe transition being analyzed. Additionally, interim results ofthe trend analysis may be monitored to determine whether there is an indication that more than two links may be anticipated.
  • One manner in which to achieve this is to build connectivity sets which represent potential links, during trend analysis. These connectivity sets may be referred to as segments. If more than two segments exist during the trend analysis, it may be determined that more than two links are involved.
  • the appropriate inference state machine 634, 636 may be used together with other relevant locations ofthe transition table, to create a resulting inference for connection between port A and port B.
  • the other relevant locations ofthe transition table are typically the locations which represent an intersection between either the reporting port and another port, or between the neighbor port and another port. However, certain locations may be deemed to be not relevant by the isolated ports module 628.
  • an isolated port is one that has no indication of being connected to other ports, such as a port that has recently provided a "lost all" report.
  • a voting scheme is used as a result ofthe direct analysis (step 1 12) and the inference analysis (step 116).
  • this voting scheme two votes are provided for one of the three states (connected, not connected, or undetermined) as a result ofthe direct analysis (step 112), and a single vote for each relevant location is provided for one ofthe three states as a result of the inference analysis (step 116).
  • the votes are then evaluated and the X-Y and Y-X locations of the transition table are updated accordingly (step 118). If desired, the trend analysis may be further iterated to resolve any remaining ambiguities (step 1 19).
  • Fig. 15 shows one approach to performing the vote evaluation of step 118.
  • step 120 the process is started.
  • step 121 it is determined whether the number of yes votes (connected) is greater than the number of no votes (not connected). If so, the process continues to step 122, where it is determined whether the yes votes represent a majority of all votes with respect to the port A, port B pair. If so, then the X-Y and Y-X locations are updated to a confirmed connected (1) state in step 123. If there are not more yes votes than no votes (step 121), then it is determined whether the number of no votes is greater than the number of yes votes (step 124). If so, then in step 125 it is determined whether the no votes represent a majority of all votes.
  • step 126 the X-Y and Y-X locations are updated to a confirmed not connected (0) state in step 126. If there are an equal number of yes votes and no votes, or if the number of yes votes or the number of no votes does not represent a majority ofthe votes, then it may be because there is a significant amount of uncertainty in the analysis. Accordingly, in step 128 the X-Y and Y-X locations are both updated to an undetermined (4) state.
  • Fig. 16 shows a process flow diagram for one embodiment of trend analysis iteration step
  • step 150 it is determined whether the yes votes are consistent with the no votes. If there are no inconsistencies, then no further iteration is performed. If there are inconsistencies, then it is determined whether there are a significant number of high majority yes votes (step 152). The significant number may be a predetermined number or percentage, for example more than 50% of all votes. If there are a significant number of high majority yes votes, then selected low majority votes may be changed (step 154), and the process returned to step 150. For example, it may be desirable to first change the lowest majority votes, and further iterate the process.
  • an unplaced port may selected.
  • An unplaced port is one which does not belong to a link following the vote evaluation of step 1 18.
  • Potential ending links (a source or destination of a connection) for the unplaced port are determined in step 158 and an excluded ports list is built from the potential ending links for which a no vote existed in the transition table (step 160).
  • Step 162 iterates the building of excluded ports lists for other unplaced ports.
  • step 164 the excluded ports lists are compared to determine unplaced ports which have the same excluded ports lists. Those ports with similar excluded ports lists are merged into a new link, and the transition table is updated accordingly (step 164).
  • the yes votes may then be evaluated again (step 150) to determine whether further iteration is required. Accordingly, the topology manager 60 is able to effectively determine the network configuration in the presence of a significant amount of conflicting information.
  • Fig 17A illustrates an example of a transition table 612, for a newly-created connection among ports A,B, and C, prior to trend analysis.
  • the topology manager 60 in this example has received reports that port A is connected to both port B and port C, and that port C is connected to port A.
  • port A may have generated reports "nn.B” and "nn.c”
  • port C may have generated report "nn.A.”
  • No reports have been received yet from port B, and the report "nn.B" has not yet been received from port C.
  • the transition table 612 of Fig. 17A would appear as shown in Fig. 17B.
  • the direct state machine 632 is used to provide two votes with respect to the connection status of each pair of ports.
  • the entry in location A-B is a "1 "
  • the entry in location B-A is a "6”
  • the direct A-B connection result is two votes for confirmed connected "1 ".
  • the indirect state machine 634 is used to provide a single vote with respect to the connection status ofthe AB port pair.
  • the entry in location C-A is a "1 " and the entry in location C-B is a "6”
  • the indirect A-B connection result is one more vote for confirmed connected "1 ". Therefore, the entry in location B-A has been changed from a "6" in Fig. 17A to a "1 " in Fig. 17B. Similar changes are made to the other locations of Fig. 17B and as a result, the ambiguities associated with the incomplete status of Fig. 17A have been resolved.
  • a transition table may be created for each transition among ports of a communications network, based upon reports received from elements ofthe communications network.
  • the transition table includes locations that directly relate the connectivity of a first port with respect to a second port, as well as locations that relate the connectivity of other ports.
  • the contents ofthe transition table are evaluated to determine the likely configuration of the communications network, even in the presence of contradictory or incomplete data.
  • State machines may be used to resolve contradictory data within the transition table, by providing a likely connection output based upon different entries within the transition table.
  • a voting scheme may also be used to evaluate the outputs of the state machines and update the transition table when appropriate, and the updated transition table may also be evaluated.

Abstract

A network is monitored for reports indicative of a connection state among ports of a communications network. Certain ports are designated as being in a transition, and a transition table is created for each transition. The transition table includes locations that directly relate the connectivity of a first port with respect to a second port, as well as locations that relate the connectivity of other ports. The contents of the transition table are evaluated to determine the likely configuration of the communications network. State machines may be used to resolve conflicting data within the transition table, by providing a likely connection output based upon different entries within the transition table. A voting scheme is used to evaluate the outputs of the state machines and update the transition table when appropriate, and the updated transition table may also be evaluated.

Description

METHOD AND APPARATUS FOR TRACKING CONNECTION-ORIENTED COMMUNICATIONS CONFIGURATIONS
BACKGROUND OF THE INVENTION
1. Field ofthe Invention
This invention relates generally to communications networks, and more particularly to monitoring and tracking connection configurations within connection-oriented communications networks.
2. Discussion ofthe Related Art
Communications networks provide a capability for one device, referred to as a source, to transmit data to another device, referred to as a destination. Among the conventional types of communications are connection-oriented communications and connectionless communications. In connection-oriented communications, a logical association is established between the source and the destination, so that several separate groups of data may be sent along the same path that is defined by the logical association. This is distinguished from connectionless communications, in which the source transmits data to the destination in an unplanned fashion and without prior coordination. In connectionless communications, each frame of data is transmitted from the source to the destination in a manner independent from the manner in which other frames are transmitted from the source to the destination. Bridges and routers are commonly used in connectionless communications.
Three phases generally occur during connection-oriented communications, including connection establishment, data transfer, and connection termination. These three phases together are commonly called a session, which may be monitored and controlled by a central authority. In the connection establishment phase, the first time a source has data to be sent to a destination, a logical association, also called the connection or a path, is established between the source and the destination. The connection defines elements and connections between the elements, for example, switches between the source and the destination, and the ports of the switches through which the data will pass from the source to the destination.
A switch, and other devices similar in operation to a switch, may be referred to as a node, intermediate system, interface message processor, or gateway. A port is an interface on a switch or similar device that provides a physical communication path to other devices, for example to other ports of other switches. During the data transfer phase, data is transmitted from the source to the destination along the connection, which includes the port-to-port connections of the switches. After a certain amount of time, or at the occurrence of a certain event, the session enters the connection termination phase, in which the connection is terminated, and the elements which made up the connection are freed to support other connections.
There may be a large number of connections which represents a very large and complex amount of connection information for a central authority to monitor. Additionally, some connections may fail, due to electrical problems or physical or logical removal of any ofthe elements which make up the connection. For example, a switch may be removed for maintenance or to achieve a more advantageous physical arrangement for other connections. It would thus be desirable to provide a monitoring capability for tracking connections in a connection-oriented communications network.
SUMMARY OF THE INVENTION According to several aspects ofthe present invention, a network is monitored for reports indicative of a connection state among ports of a communications network. Certain ports are designated as being in a transition (e.g., new connections being made or old connections being broken), and a transition table is created for each transition. The transition table includes locations (the intersection of a row and column, where a value is stored) that directly relate the connectivity of a first port with respect to a second port, as well as locations that relate the connectivity of other ports. The contents ofthe transition table are evaluated to determine the likely configuration ofthe communications network. State machines may be used to resolve conflicting data within the transition table, by providing a likely connection output based upon different entries within the transition table. A voting scheme may also be used to evaluate the outputs ofthe state machines and update the transition table when appropriate, and the updated transition table may also be evaluated.
In one embodiment, a method is provided for tracking a configuration of a plurality of ports of a communications network. The method comprises the steps of determining whether any of the plurality of ports are in a transition with respect to the configuration ofthe plurality of ports, collecting data associated with the transition, and analyzing the data associated with the transition to determine the configuration ofthe plurality of ports. The step of collecting data may include receiving a report that includes an indication that a reporting port either has a connection or has lost a connection with respect to a neighbor port. The method may include waiting a predetermined amount of time prior to analyzing the data.
The step of collecting data may also include entering information from the report into a transition table that is associated with one ofthe reporting port and the neighbor port. The transition table may include locations populated with one of at least three different states. Additionally, the step of analyzing may include determining a likelihood of a connection between the reporting port and the neighbor port based upon locations ofthe transition table that either do or do not directly relate to the reporting port and the neighbor port.
The step of analyzing may include providing a first number of votes based upon data within the locations ofthe transition table that directly relate to the reporting port and the neighbor port, providing a second number of votes based upon data within the locations ofthe transition table that do not directly relate to the reporting port and the neighbor port, and evaluating the votes to determine a likelihood of a connection between the reporting port and the neighbor port. Additionally, data within the locations ofthe transition table that directly relate to the reporting port and the neighbor port may be updated based upon the votes to provide updated data, and the likelihood of a connection between the reporting port and the neighbor port may be determined based upon the updated data.
When a transition table associated with at least one ofthe reporting port and the neighbor port does not already exist, a new transition table may be created. Additionally, a merged transition table may be created by merging a first transition table associated with the reporting port with a second transition table associated with the neighbor port.
Another aspect ofthe invention is directed to an apparatus for tracking a configuration of a plurality of ports of a communications network, comprising means for determining whether any ofthe plurality of ports are in a transition with respect to the configuration ofthe plurality of ports, means for collecting data associated with the transition, and means for analyzing the data associated with the transition to determine the configuration ofthe plurality of ports.
Another embodiment ofthe invention is directed to an apparatus for tracking a configuration of a plurality of ports of a communications network. The apparatus comprises an event stream filter that provides data associated with at least one transition ofthe communications network, at least one transition table, each of which corresponds to a respective one ofthe at least one transition ofthe communications network, and a transition manager that provides a link list indicative ofthe configuration of the plurality of ports based upon the data of the at least one transition table.
BRIEF DESCRIPTION OF THE DRAWINGS Other features and advantages of the present invention shall appear from the following description of an exemplary embodiment, said description being made with reference to the appended drawings, of which:
Fig. 1 illustrates a network having connection-oriented communications, which is monitored by a topology manager; Fig. 2 shows the operation ofthe topology manager illustrated in Fig. 1 ;
Fig. 3 A illustrates a state matrix used to monitor the configuration of a network; Fig. 3B shows an example of a network topology represented by the state matrix of Fig. 3A;
Fig. 3C is a representation ofthe connections of the network topology of Fig. 3B; Fig. 4 depicts an event stream resulting from a transition of a network from the topology illustrated in Fig. 3B;
Fig. 5A illustrates a state matrix resulting from the event stream of Fig. 4; Fig. 5B shows a network topology that is a result of the transition of the event stream of Fig. 4; Fig. 5C is a representation ofthe connections ofthe network topology of Fig. 5B;
Fig. 6 illustrates an embodiment of a topology manager in accordance with an embodiment ofthe invention;
Fig. 7 is a flow diagram of a process performed by a topology manager; Fig. 8 is a state diagram showing states of a transition table resulting from receipt of an event stream by the topology manager of Fig. 6;
Fig. 9 shows detail ofthe creation and maintenance of a transition table in accordance with one embodiment ofthe topology manager of Fig. 6;
Fig. 10A is a flow diagram showing one embodiment of a transition analysis function; Fig. 1 OB is a flow diagram of another embodiment ofthe transition analysis function; Fig. 1 1 shows detail ofthe trend analysis performed to evaluate and update locations of a transition table; Figs 12, 13, and 14 illustrate state machines used to provide votes regarding possible connections based upon data of a transition table;
Fig. 15 shows steps of a method for evaluating the votes generated by the state machines of Figs. 12, 13, and 14; and Fig. 16 shows a flow diagram for an embodiment ofthe trend analysis iteration step of
Fig. 11 ;
Fig. 17 A illustrates an example transition table prior to trend analysis; and
Fig. 17B illustrates the transition table of Fig. 17A subsequent to trend analysis.
DETAILED DESCRIPTION
In order to provide a monitoring capability to track connections of a connection-oriented communications network, a representation that provides a virtual (i.e., logical) portrayal ofthe connections within a network may be developed and maintained. Within this disclosure, the term "link" refers to a model, which may be contained within a representation of a network, of a connection between one port and at least one other port. For example, a link may refer to a connection between a first port and a second port. Such a connection may be a simple connection such as a single wire, or a more complex connection such as an ETHERNET cable and associated local area network protocol layers. Additionally, the connection may include switches or hubs along with local area networks and other devices. Fig. 1 shows a topology manager 10 which maintains a model of a connection-oriented network, and in particular a model ofthe current configuration ofthe elements ofthe network 12. As shown in Fig. 1, the topology manger 10 receives an event stream 14 from several ports A-F. These ports A-F may be connected via a network 12, which may contain several individual connections among the ports A-F. The event stream 14 includes reports (i.e., messages) which provide information indicative of current and past connections among the ports A-F ofthe network. In one embodiment ofthe invention, the reports include a new neighbor report and a lost neighbor report. Each of these reports includes a reporting port and is made with respect to a neighbor port. Typically, these reports are actually generated by a switch or another device which contains the reporting port, or from a source, destination, or other nodes within the network. For the purposes of this disclosure the report may be considered as being generated by the reporting port itself, so that the phrase "port A generates a report" actually means "a device on the network provides a report with port A included as the reporting port." A new neighbor report is an indication that the reporting port has been connected to the neighbor port. The report "nn.Y" generated by port X represents a new neighbor report from reporting port X with respect to new neighbor Y. A lost neighbor report is an indication that a particular connection that once existed has been lost between the reporting port and the neighbor port. The report "ln.Y" generated by port X represents a lost neighbor report from reporting port X with respect to lost neighbor Y. Another type of report is a lost all neighbors report ("la"), which is indicative that a reporting port has been disconnected from all other ports. For the purposes of this disclosure, a lost all neighbors report may be considered as a plurality of individual lost neighbor reports. It is not necessary to have reports of exactly these types, as long as some information indicative of a change or a current status ofthe port connections is provided.
As shown in Fig. 2, the topology manager 10 receives reports (step 22), generally in the form of an event stream 14, from the ports A-F ofthe network to be monitored by the topology manager 10. The topology manager 10 then builds a state matrix from the reports ofthe event stream 14 (step 24), and determines the connections ofthe network 12 from the contents ofthe state matrix (step 26). A description of a state matrix and the relationship between connections will be described with respect to Figs 3A-C and 5A-C.
Fig. 3 A shows a state matrix 32 used to monitor the configuration ofthe network that includes six ports A-F. Fig. 3B shows the six ports A-F, as well as a first connection (link X) between port A and port B, and a second connection (link Y) between port C and port D. Port E and port F are shown as having no connection in Fig. 3B. The values filled into the locations of each row ofthe state matrix 32 are made as a result of reports made by a reporting port with respect to a neighbor ports. For example, the entries within row 321 of state matrix 32 show that port A is connected to port B (designated "1"), but is not connected to ports C, D, and E (designated "0"). The entries within row 322 indicate that port B is connected to port A, but not to ports C, D, and E. Rows 323, 324, 325 and 326 show similar information regarding the connections of ports C, D, E and F. The upper left to lower right diagonal ofthe state matrix 32 is an identity vector (designated '-"), which typically has no significance because it would represent a port's connection to itself.
From the data contained within a state matrix 32, a system such as a topology manager 10 may determine the current connections ofthe network 12, for example by reading across each row to determine which ports are connected to which other ports. The information of each row may be confirmed by information of another row. For example, the indication of row 321 that port A is connected to port B may be confirmed by the indication of row 322 that port B is connected to port A. Such connections may be described in terms such as shown in Fig. 3C. Fig 3C is an object representation ofthe links X and Y ofthe network 12. The term X.ports = [A,B] is indicative that port A and port B are included in link X. The term Y.ports = [C,D] is indicative that port C and port D are included in link X.
When the network 12 undergoes a transition, for example new connections being made or old connections being broken, then the ports will provide reports in the event stream 14, from which the topology manager 10 may update the state matrix 32, and in turn determine the status ofthe links ofthe network 12. Fig. 4 depicts an event stream, including reports from ports A, B, C, D, E, and F, which may be made in response to a network 12 transitioning from a topology as shown in Fig. 3B to a topology as shown in Fig. 5B. In particular, in this example, port D has been disconnected from port C, port D has been connected to the connection that includes ports A and B, and ports E and F have been connected together. Port A has reported "nn.D" 41 ("new neighbor D"), indicative that port D is a new neighbor of port A. Port B has similarly reported "nn.D" 42, indicative that port D is a new neighbor of port B. Port C has reported "la" 43 ("lost all neighbors"), indicative that port C has lost all neighbors, and now has no connection. Port D has reported "ln.C" 44 ("lost neighbor C"), indicative that port D has lost the connection with port C, and "nn.A"45 and "nn.B" 46 indicative ofthe new connections to ports A and B. Finally, ports E and F have reported their new connection, with reports, "nn.F" 47 and "nn.E" 48 respectively.
Fig. 5B represents the network connection configuration which caused the ports A-F to make the reports shown in Fig. 4. As shown in Fig. 5B, ports A, B, and D are connected together, port C is not connected to any other port, and port E is connected to port F. Fig. 5A shows state matrix 32 which has been updated to show the new configuration as a result of receiving the reports 41-48 shown in Fig. 4. Finally, Fig. 5C shows terms which the topology manager may use to describe the new connection arrangement, ln particular, Fig. 5C shows X.ports = [A,B,D] and Z.ports = [E,F].
As shown in Figs. 3 A and 5 A, it is possible that the information of one row of the state matrix 32 confirms the connection information of another row. However, it is also possible that the state matrix 32 contains contradictory or conflicting information. There may be several reasons for this contradictory information, for example lost communications from the reporting ports, faults within the ports causing inaccurate reports, a transition in process, or reports received out of order. If a port sends a report but the report is lost, then the reporting port column ofthe state matrix 32 will not be updated. For example, if report 42 from port B of Fig. 4 were lost, then the state matrix 32 would not have updated row 322 to show that port B is connected to port D. ln contrast, such a connection would have been indicated by the report 46 from port D, and row 324 ofthe state matrix 32 would have been updated to show that port B is connected to port D. The state matrix 32 would thus contain contradictory information, because row 322 and row 324 would indicate different topologies with respect to a possible connection between port B and port D.
As mentioned above, contradictory information may also be contained within the state matrix 32 if faulty information is provided. For example, there may be a fault within port B so that port B either reported bad information or no new information at all.
Additionally, a state matrix 32 may contain contradictory information simply because the network is in a transition. Typically, the reports 41-48 of Fig. 4 will not all arrive at the topology manger 10 at precisely the same time, nor would the results of the reports be entered into the state matrix 32 at precisely the same time. Thus, if some but not all ofthe reports have been received, the state matrix 32 will contain contradictory information. For example, this would be the case if the report 42 had not arrived, but all other reports had arrived. The delay in reports may be due to communication or processing delays, or due to a situation in which the network 12 is being reconfigured in response to other reconfigurations. For example, the connection from port D to ports A and B may have been created because the connection between port D and port C was lost. In such an instance, the reports from the involved elements would not have been generated at the same time.
Another cause of contradictory information may be the order in which reports ofthe event stream 14 are received by the topology manager 10. If a report from a previous transition is received following a report from a later transition, the state matrix 32 will overwrite the report from the later transition with the report from the previous transition, even though the later transition occurred after the previous transition.
One approach to manage potentially contradictory information within a state matrix 32 is to delay a certain amount of time before making any decisions from the state matrix 32, regarding the configuration of a network 12. However, this approach is only effective if ultimately the appropriate reports arrive that negates the contradictory information. If the contradictory information was the result of a lost message, the appropriate report may never arrive.
Another approach to manage potentially contradictory information is an embodiment of this invention, as shown in Fig. 6. Fig. 6 shows a topology manager 60 that receives the event stream 14. The topology manager 60 includes an event stream filter 602 that receives the event stream 14. The topology manager also includes a reconfiguration manager 604, discovery controller 606, transition controller 608, and transition manager 610. Also connected to the transition manger 610, and available to the other elements ofthe topology manger 60, are transition tables 612a, 612b, ... 612n, port dictionary 614, and link list 616. One embodiment of the transition manager 610 is also shown in Fig. 6, which includes a transition timer 618, transition analyzer 620, transition table manager 622, and transition table merger 624. The transition analyzer 620 is also connected to a missing lost all module 626, an isolated ports module 628, and a trend analysis module 630. The trend analysis module is connected to a direct state machine 632, an inference state machine 634 to be used when there are two links anticipated, and an inference state machine 636 to be used when there are more than two links anticipated.
The topology manager 60 may be implemented as a software module, for example an object-oriented software module. For example, the link list 616 may include an object representation "link X.ports = [A,B,C]" for a connection called "X" that includes ports A, B, and C. In object-oriented terminology, this would mean that X is an instantiation of a class called link, and contains individual objects A, B, and C. Such an approach may be useful for maintaining relationships (connections) between the ports of a network, as well as maintaining attributes (data) ofthe ports.
Additionally, in one embodiment, the different sub-elements ofthe topology manager 60 are implemented as software on a floppy disk or hard drive, which controls a computer, for example a general purpose computer such as a workstation, a mainframe or a personal computer, to perform steps ofthe disclosed processes. Such a general purpose computer may be connected to the network in order to receive reports, and may provide commands to devices on the network in order to control the network configuration. Alternatively, the sub-elements ofthe topology manager 60 may be implemented as special purpose electronic hardware. Additionally, in either a hardware or software embodiment, the functions performed by the different elements within the topology manager 60 may be combined in different arrangements.
Operation ofthe topology manager 60 is depicted in Fig. 7. As shown in Fig. 7, the topology manager receives reports from ports (step 70). As mentioned earlier, the reports may be included within the event stream 14. As a result ofthe reports received in step 70, a transition table is created and maintained for each transition (step 72). Generally, the topology manager 60 will initiate a transition as a result of receiving a report that is indicative of one port reporting a change, for example a new neighbor port or a lost neighbor port. Additionally, when it is deemed appropriate, each transition is analyzed (step 74) in order to determine the current connections. In general, the transition will be resolved to be one of four states. These four states include one or more ports being isolated from a link, a link having been partitioned, multiple links having been merged into a single link, or a number of links having been moved from a previous link to a successor link. The resolution, determined as a result of step 74, may include a link list 616 which takes the form ofthe lists of Figs. 3C and 5C. As a result of the resolution in which current connections are determined, the appropriate circuits ofthe network 12 may be reconfigured by reconfiguration manager 604 in order that the network 12 conforms with the current connections.
Fig. 8 shows a state diagram for an embodiment ofthe invention in which each location within a transition matrix 612 may be one of seven different states; this is one aspect ofthe invention which facilitates tracking connection configurations in the presence of potential contradictory information. These states are shown in the legend of Fig. 8 as follows:
0: Confirmed Not Connected
1 : Confirmed Connected
2: Capture Connected 3 : Assumed Not Connected
4: Undetermined
5 : Capture Not Connected
6: Assumed Connected
State 1, confirmed connected, and state 0, confirmed not connected, are similar to the "1 " and "0" entries within a state matrix 32. State 4 is an undetermined state, which typically represents a situation in which there is no information regarding a possible connection. States 3 and 6 may be used to represent, for example, that some prior information is indicative of either a connection (state 6) or a lack of a connection (state 3), but confirmation has not been received. From state 3, a report can cause a change of state to either state 1 confirmed connected, or state 5 capture not connected. From state 5, an additional report can cause the state to be changed to state 0 confirmed not connected. From state 6, a report can cause a change of state to either state 0 confirmed not connected, or state 2 capture connected. From state 2, an additional report can cause the state to be changed to state 1 confirmed connected.
Fig. 8 also shows the transitions between the different states that are made by the transition table manager 622 as a result ofthe topology manager 60 receiving reports regarding a relationship between two ports, for example the "nn" and "In" reports in Fig. 8. For example, if a particular location ofthe transition table 612a that represents reporting Port A with respect to neighbor Port B, is currently in state 4, undetermined, and then the topology manager 60 receives a "nn" from port A with respect to port B, then the particular location ofthe transition table 612a will be changed from a "4" to a "1 ", indicating that port A believes that port A is connected to port B. The state diagram of Fig. 8 shows similar transitions for other information received based upon a previous state. Initialization rules may be applied in order to initialize each location of a transition table 612. One example of such a rule is that each location may be initialized to state 4, undetermined. However, a topology manager 60 may have other information, perhaps manually entered by a user, regarding the potential state of each connection within a network 12, so that some locations may be initialized to either state 6 assumed connected, or state 3 assumed not connected.
An example of operation ofthe transition table manager 622 is depicted in Fig. 9. In step 80, a report is received from a reporting port regarding a neighbor port. The transition table manager 622 determines whether either the reporting port or the neighbor port is currently involved in a transition 612a, ...612n. If not, then in step 84 a new transition table 612 is created, and the information from the report is entered into the new transition table 612 in step 86. In step 88, a timer is set, so that an analysis of a transition may be triggered when no reports regarding that transition have been received for a certain amount of time. The lack of reports being received for a certain amount of time may be indicative that the transition has been completed. The transition timer 618 may be used for this purpose. In one embodiment, a predetermined time of 90 seconds is used as a value for the transition timer 618, which allows for reception ofthe reports associated with a topology change. Alternatively, a different predetermined time could be used depending upon the number of switches in a network, or on other network characteristics.
If either port is involved in a transition, then in step 90 it is determined whether both ports are involved in different transitions. If so, then both timers for the different transitions are stopped (step 96), the transition table merger 624 is invoked to merge the two transition tables of the different transitions, (step 98), the report is entered into the resulting merged transition table (step 98), and the timer for the merged transition table is reset and started (step 99).
If both ports are not involved in different transitions, the timer for the relevant transition is stopped (step 92), the report is entered into the relevant transition table (step 93), and the timer is reset to the initial value and restarted (step 94). Because the timer of a particular transition is reset when a relevant report for that transition is received, the timer typically times out only when a certain amount of time has passed in which no relevant reports have been received for that particular transition.
Operation of one embodiment of the transition analyzer 620 is shown in Fig. 10A. The transition analyzer 620 is triggered (step 102) when the transition timer 618 for a particular transition times out (step 100). Accordingly, the total number of reported events is compared to the expected number for the transition under analysis (step 104). If there are a sufficient number of reported events (step 106), then trend analysis is performed to create a new transition table with conflicts resolved (step 108). If necessary, the trend analysis may be further iterated (step 130). If there are not a sufficient number of events, then it is likely that the timer is too short, or there is some other type of faulty termination (step 136). Accordingly, discovery is invoked in which the devices having the ports involved in the transition under analysis (step 138), and the results of the discovery may be used to determine the current connections (step 139). Discovery, in this context, refers to querying the appropriate devices or ports directly to obtain information regarding their connectivity. From either step 130 or step 139, the process continues to step 132, in which the relevant devices (also referred to as circuits) ofthe network are reconfigured to conform with the current connections. In step 134, the transition is terminated.
Another embodiment of the transition analyzer 620 is shown in Fig. 10B. As shown in Fig. 10B, the analysis may be triggered without regard to the total number of expected reports, and trend analysis may be performed whenever the transition timer times out (step 100).
Fig. 1 1 shows detail of one embodiment ofthe trend analysis (step 108). For a given port X to port Y connection, the trend analysis is initiated (step 110). The flow diagram of Fig. 1 1 may then be repeated for each port combination in the transition table. There are two "direct" locations within the transition table 612 with respect to port X and port Y, location X-Y and location Y-X. From the data in each of these locations, an implication may be created with respect to whether the ports X and Y are connected. For example, if both locations are confirmed not connected (0), then it is relatively certain that there is not a connection between ports X and Y. Other combinations may also be indicative ofthe actual status, as shown in Fig. 12, which shows detail of one embodiment ofthe direct state machine 632. In step 1 12, the X-Y and Y-X values with in the transition table are input to the direct state machine, and the direct state machine 632 returns a result, either confirmed not connected, confirmed connected, or undetermined (step 112). From the results returned from the direct state machine 632, the status ofthe possible port X-portY connection may be resolved.
Additionally, other locations of the transition table may be used to infer a result with respect to the connectivity of port X and port Y. For example, if port Z is connected to port A and port Z is also connected to port B, it may be inferred that port A is connected to port B. Also, if port Z is not connected to port A and port Z is connected to port B, it may be inferred that port A is not connected to port B. Moreover, if it is known that there are only two links in total, then if port Z is not connected to port A and port Z is not connected to port B, then it may be inferred that port A is connected to port B. If, however, there may be three or more links, then no information is gained. Fig. 13 shows the inference state machine 634, used when it is known that there are no more than two links. Fig. 14 shows the inference state machine 636 that may be used when it is known or anticipated that there are more than two links.
More than two links may be known or anticipated as a result of a transition having already accumulated a certain number of links prior to a beginning ofthe transition being analyzed. Additionally, interim results ofthe trend analysis may be monitored to determine whether there is an indication that more than two links may be anticipated. One manner in which to achieve this is to build connectivity sets which represent potential links, during trend analysis. These connectivity sets may be referred to as segments. If more than two segments exist during the trend analysis, it may be determined that more than two links are involved.
Accordingly, it is possible to perform a first portion of the trend analysis using inference state machine 634 for two links, and a second portion ofthe same trend analysis using inference state machine 636 for more than two links. After it is determined whether more than two links are anticipated (step 114), then the appropriate inference state machine 634, 636 may be used together with other relevant locations ofthe transition table, to create a resulting inference for connection between port A and port B. The other relevant locations ofthe transition table are typically the locations which represent an intersection between either the reporting port and another port, or between the neighbor port and another port. However, certain locations may be deemed to be not relevant by the isolated ports module 628. Generally, an isolated port is one that has no indication of being connected to other ports, such as a port that has recently provided a "lost all" report.
In one embodiment, specifically represented in Fig. 11, a voting scheme is used as a result ofthe direct analysis (step 1 12) and the inference analysis (step 116). In this voting scheme, two votes are provided for one of the three states (connected, not connected, or undetermined) as a result ofthe direct analysis (step 112), and a single vote for each relevant location is provided for one ofthe three states as a result of the inference analysis (step 116). The votes are then evaluated and the X-Y and Y-X locations of the transition table are updated accordingly (step 118). If desired, the trend analysis may be further iterated to resolve any remaining ambiguities (step 1 19).
Fig. 15 shows one approach to performing the vote evaluation of step 118. In step 120, the process is started. In step 121, it is determined whether the number of yes votes (connected) is greater than the number of no votes (not connected). If so, the process continues to step 122, where it is determined whether the yes votes represent a majority of all votes with respect to the port A, port B pair. If so, then the X-Y and Y-X locations are updated to a confirmed connected (1) state in step 123. If there are not more yes votes than no votes (step 121), then it is determined whether the number of no votes is greater than the number of yes votes (step 124). If so, then in step 125 it is determined whether the no votes represent a majority of all votes. If so, then the X-Y and Y-X locations are updated to a confirmed not connected (0) state in step 126. If there are an equal number of yes votes and no votes, or if the number of yes votes or the number of no votes does not represent a majority ofthe votes, then it may be because there is a significant amount of uncertainty in the analysis. Accordingly, in step 128 the X-Y and Y-X locations are both updated to an undetermined (4) state. Fig. 16 shows a process flow diagram for one embodiment of trend analysis iteration step
119 of Fig. 11. In step 150, it is determined whether the yes votes are consistent with the no votes. If there are no inconsistencies, then no further iteration is performed. If there are inconsistencies, then it is determined whether there are a significant number of high majority yes votes (step 152). The significant number may be a predetermined number or percentage, for example more than 50% of all votes. If there are a significant number of high majority yes votes, then selected low majority votes may be changed (step 154), and the process returned to step 150. For example, it may be desirable to first change the lowest majority votes, and further iterate the process.
If there are not a significant number of high majority yes votes, then in step 156 an unplaced port may selected. An unplaced port is one which does not belong to a link following the vote evaluation of step 1 18. Potential ending links (a source or destination of a connection) for the unplaced port are determined in step 158 and an excluded ports list is built from the potential ending links for which a no vote existed in the transition table (step 160). Step 162 iterates the building of excluded ports lists for other unplaced ports. Then, in step 164, the excluded ports lists are compared to determine unplaced ports which have the same excluded ports lists. Those ports with similar excluded ports lists are merged into a new link, and the transition table is updated accordingly (step 164). The yes votes may then be evaluated again (step 150) to determine whether further iteration is required. Accordingly, the topology manager 60 is able to effectively determine the network configuration in the presence of a significant amount of conflicting information.
Fig 17A illustrates an example of a transition table 612, for a newly-created connection among ports A,B, and C, prior to trend analysis. As indicated by the contents ofthe transition table 612, the topology manager 60 in this example has received reports that port A is connected to both port B and port C, and that port C is connected to port A. For example, port A may have generated reports "nn.B" and "nn.c," and port C may have generated report "nn.A." No reports have been received yet from port B, and the report "nn.B" has not yet been received from port C. Subsequent to trend analysis, the transition table 612 of Fig. 17A would appear as shown in Fig. 17B. In particular, in accordance with step 112 of Fig. 1 1 , the direct state machine 632 is used to provide two votes with respect to the connection status of each pair of ports. The entry in location A-B is a "1 ", and the entry in location B-A is a "6", so the direct A-B connection result is two votes for confirmed connected "1 ". Additionally, in accordance with step 1 16, the indirect state machine 634 is used to provide a single vote with respect to the connection status ofthe AB port pair. In particular, because the entry in location C-A is a "1 " and the entry in location C-B is a "6", the indirect A-B connection result is one more vote for confirmed connected "1 ". Therefore, the entry in location B-A has been changed from a "6" in Fig. 17A to a "1 " in Fig. 17B. Similar changes are made to the other locations of Fig. 17B and as a result, the ambiguities associated with the incomplete status of Fig. 17A have been resolved.
As described above, a transition table may be created for each transition among ports of a communications network, based upon reports received from elements ofthe communications network. The transition table includes locations that directly relate the connectivity of a first port with respect to a second port, as well as locations that relate the connectivity of other ports. The contents ofthe transition table are evaluated to determine the likely configuration of the communications network, even in the presence of contradictory or incomplete data. State machines may be used to resolve contradictory data within the transition table, by providing a likely connection output based upon different entries within the transition table. A voting scheme may also be used to evaluate the outputs of the state machines and update the transition table when appropriate, and the updated transition table may also be evaluated.
Having thus described at least one embodiment ofthe invention, various alterations, modifications, and improvements will readily occur to those skilled in the art. Such alterations, modifications, and improvements are intended to be within the spirit and scope ofthe invention. Accordingly, the foregoing description is by way of example only, and not intended to be limiting. The invention is limited only as defined in the following claims and the equivalents thereto.

Claims

1. An apparatus for tracking a configuration of a plurality of ports of a communications network, comprising: an event stream filter having an input that receives a plurality of reports from the communications network, and an output that provides data associated with at least one transition of the communications network; at least one transition table, each of which corresponds to a respective one of the at least one transition ofthe communications network; and a transition manager, having an input that receives data of the at least one transition table, and an output that provides a link list indicative of the configuration of the plurality of ports based upon the data of the at least one transition table.
2. The apparatus of claim 1 , wherein the transition manager includes: a state machine having an input that receives data from locations of a first table of the at least one transition table that directly relates to a first port and a second port of the communications network, and an output that provides an indication of whether the first port is connected to the second port; and a transition analyzer, having a first input that receives data of the first transition table, a second input that receives the output of the state machine, and an output that represents a likelihood of a connection between the first port and the second port.
3. The apparatus of claim 1 , wherein the transition manager includes: a state machine having an input that receives data from locations of a first table of the at least one transition table that do not directly relate to a first port and a second port of the communications network, and an output that provides an indication of whether the first port is connected to the second port; and a transition analyzer, having a first input that receives data of the first transition table, a second input that receives the output of the state machine, and an output that represents a likelihood of a connection between the first port and the second port.
4. The apparatus of claim 1 , wherein the transition manager includes a transition analyzer that creates votes regarding a possible connection between a first port and a second port of the communications network based upon the at least one transition table, the transition analyzer evaluating the votes to determine a likelihood of a connection between the first port and the second port.
5. The apparatus of claim 4, wherein the transition analyzer includes means for updating data within the at least one transition table based upon the votes to provide updated data, the transition analyzer evaluating the updated data to determine the likelihood of a connection between the first port and the second port.
6. The apparatus of claim 1 , wherein the transition manager includes a transition table manager having an output that creates a new transition table when the at least one transition table does not include an existing transition table that is associated with a port of the communications network included in one of plurality of reports.
7. The apparatus of claim 1 , wherein: the at least one transition table includes a first transition table associated with a first port included in one of the plurality of reports, and a second transition table associated with a second port included in the one of the plurality of reports; and the transition manager includes a transition table merger having an output creates a merged transition table by merging the first transition table with the second transition table.
8. The apparatus of claim 1 , wherein: the at least one transition table includes a plurality of locations, each of the plurality of locations containing a state value that represents a connection state of a first port of the communications network with respect to a second port of the communications network; and each of the plurality of locations is populated with one of at least three states.
9. The apparatus of claim 8, wherein the at least three states includes: a first state indicative of a confirmed connection between the first port and the second port; a second state indicative of a confirmed lack of a connection between the first port and the second port; and at least one third state indicative of an uncertainty with respect to a possible connection between the first port and the second port.
10. The apparatus of claim 1 , wherein the transition manager includes a transition timer having an output that triggers initiating a transition analysis of a selected transition by the transition manager following a predetermined amount of time from when a report associated with the selected transition was received by the event stream filter.
1 1. A method for tracking a configuration of a plurality of ports of a communications network, comprising the steps of:
(a) determining whether any ofthe plurality of ports are involved in a transition with respect to the configuration ofthe plurality of ports;
(b) collecting data associated with the transition; and
(c) analyzing the data associated with the transition to determine the configuration of the plurality of ports.
12. The method of claim 1 1 , wherein step (b) includes receiving a report that includes an indication that a reporting port of the communications network has a particular connection state with respect to a neighbor port of the communications network.
13. The method of claim 12, wherein: step (b) includes entering information from the report into a transition table associated with one ofthe reporting port and the neighbor port; and step (c) includes analyzing the transition table.
14. The method of claim 13, wherein the step of analyzing includes determining a likelihood of a connection between the reporting port and the neighbor port based upon data within locations of the transition table that directly relate to the reporting port and the neighbor port.
15. The method of claim 13, wherein the step of analyzing includes determining a likelihood of a connection between the reporting port and the neighbor port based upon locations ofthe transition table that do not directly relate to the reporting port and the neighbor port.
16. The method of claim 13, wherein the step of analyzing includes the steps of: providing a first number of votes based upon data within the locations of the transition table that directly relate to the reporting port and the neighbor port; providing a second number of votes based upon data within the locations of the transition table that do not directly relate to the reporting port and the neighbor port; and evaluating the first number of votes and the second number of votes to determine a likelihood of a connection between the reporting port and the neighbor port.
17. The method of claim 16, wherein the step of evaluating includes the steps of: updating the data within the locations of the transition table that directly relate to the reporting port and the neighbor port based upon the first number of votes and the second number of votes to provide updated data; and determining the likelihood of a connection between the reporting port and the neighbor port based upon the updated data.
18. The method of claim 12, wherein: step (b) includes creating a transition table containing the data associated with the transition when a previous transition table associated with at least one of the reporting port and the neighbor port does not previously exist; and step (c) includes analyzing the transition table.
19. The method of claim 18, wherein step (b) includes creating a transition table having locations populated with one of at least three states including a state indicative of uncertainty.
20. The method of claim 12, wherein: step (b) includes creating a merged transition table by merging a first transition table associated with the reporting port with a second transition table associated with the neighbor port; and step (c) includes analyzing the merged transition table.
21. The method of claim 12, wherein the step of receiving the report includes receiving a new neighbor report that includes an indication that a reporting port ofthe communications network has a connection to a neighbor port ofthe communications network.
22. The method of claim 12, wherein the step of receiving the report includes receiving a lost neighbor report that includes an indication that a reporting port ofthe communications network has lost a connection with a neighbor port of the communications network.
23. The method of claim 11, wherein step (c) includes waiting a predetermined amount of time subsequent to step (b) prior to analyzing the data associated with the transition.
24. An apparatus for tracking a configuration of a plurality of ports of a communications network, the apparatus comprising: first means for determining whether any ofthe plurality of ports are involved in a transition with respect to the configuration of the plurality of ports; second means for collecting data associated with the transition; and third means for analyzing the data associated with the transition to determine the configuration ofthe plurality of ports.
25. The apparatus of claim 24, wherein the second means includes means for receiving a report that includes an indication that a reporting port ofthe communications network has a particular connection state with respect to a neighbor port ofthe communications network.
26. The apparatus of claim 25, wherein: the second means includes means for entering information from the report into a transition table associated with one of the reporting port and the neighbor port; and the third means includes means for analyzing the transition table.
27. The apparatus of claim 26, wherein the means for analyzing includes means for determining a likelihood of a connection between the reporting port and the neighbor port based upon data within locations of the transition table that directly relate to the reporting port and the neighbor port.
28. The apparatus of claim 26, wherein the means for analyzing includes means for determining a likelihood of a connection between the reporting port and the neighbor port based upon locations of the transition table that do not directly relate to the reporting port and the neighbor port.
29. The apparatus of claim 26, wherein the means for analyzing includes: means for providing a first number of votes based upon data within the locations ofthe transition table that directly relate to the reporting port and the neighbor port; means for providing a second number of votes based upon data within the locations ofthe transition table that do not directly relate to the reporting port and the neighbor port; and means for evaluating the first number of votes and the second number of votes to determine a likelihood of a connection between the reporting port and the neighbor port.
30. The apparatus of claim 29, wherein the means for evaluating includes: means for updating the data within the locations ofthe transition table that directly relate to the reporting port and the neighbor port based upon the first number of votes and the second number of votes to provide updated data; and means for determining the likelihood of a connection between the reporting port and the neighbor port based upon the updated data.
31. The apparatus of claim 25, wherein: the second means includes means for creating a transition table containing the data associated with the transition when a previous transition table associated with at least one ofthe reporting port and the neighbor port does not previously exist; and the third means includes means for analyzing the transition table.
32. The apparatus of claim 31, wherein the second means includes means for creating a transition table having locations populated with one of at least three states including a state indicative of uncertainty.
33. The apparatus of claim 25, wherein: the second means includes means for creating a merged transition table by merging a first transition table associated with the reporting port with a second transition table associated with the neighbor port; and the third means includes means for analyzing the merged transition table.
34. The apparatus of claim 25, wherein the report includes an indication that a reporting port of the communications network has a connection to a neighbor port ofthe communications network.
35. The apparatus of claim 25, wherein the report includes an indication that a reporting port ofthe communications network has lost a connection with a neighbor port ofthe communications network.
36. The apparatus of claim 24, further comprising means for triggering the third means a predetermined amount of time subsequent to the second means collecting the data associated with the transition.
PCT/US1996/019021 1995-12-04 1996-11-26 Method and apparatus for tracking connection-oriented communications configurations WO1997023099A2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
AT96941501T ATE198686T1 (en) 1995-12-04 1996-11-26 METHOD AND DEVICE FOR TRACKING A CONNECTION-ORIENTED COMMUNICATION CONFIGURATION
EP96941501A EP0865698B1 (en) 1995-12-04 1996-11-26 Method and apparatus for tracking connection-oriented communications configurations
DE69611542T DE69611542T2 (en) 1995-12-04 1996-11-26 METHOD AND DEVICE FOR DETERMINING CONNECTION-ORIENTED COMMUNICATION FIGURES
AU10625/97A AU699509B2 (en) 1995-12-04 1996-11-26 Method and apparatus for tracking connection-oriented communications configurations

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/566,978 1995-12-04
US08/566,978 US5793362A (en) 1995-12-04 1995-12-04 Configurations tracking system using transition manager to evaluate votes to determine possible connections between ports in a communications network in accordance with transition tables

Publications (2)

Publication Number Publication Date
WO1997023099A2 true WO1997023099A2 (en) 1997-06-26
WO1997023099A3 WO1997023099A3 (en) 1997-08-28

Family

ID=24265250

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1996/019021 WO1997023099A2 (en) 1995-12-04 1996-11-26 Method and apparatus for tracking connection-oriented communications configurations

Country Status (6)

Country Link
US (2) US5793362A (en)
EP (1) EP0865698B1 (en)
AT (1) ATE198686T1 (en)
AU (1) AU699509B2 (en)
DE (1) DE69611542T2 (en)
WO (1) WO1997023099A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6308174B1 (en) 1998-05-05 2001-10-23 Nortel Networks Limited Method and apparatus for managing a communications network by storing management information about two or more configuration states of the network

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5872928A (en) * 1995-02-24 1999-02-16 Cabletron Systems, Inc. Method and apparatus for defining and enforcing policies for configuration management in communications networks
US5968122A (en) * 1997-03-31 1999-10-19 Alcatel Alsthom Compagnie Generale D'electricite Method for propagating between views of connection object status in network
US8127042B1 (en) * 1998-01-21 2012-02-28 Ciena Corporation Data driven connection rule/constraint engine applied to trail management
EP0874497B1 (en) * 1998-03-04 1999-11-10 Hewlett-Packard Company Network topology mapping
JPH11282658A (en) * 1998-03-31 1999-10-15 Fujitsu Ltd Interactive software constructing/driving device
US6282175B1 (en) * 1998-04-23 2001-08-28 Hewlett-Packard Company Method for tracking configuration changes in networks of computer systems through historical monitoring of configuration status of devices on the network.
US6243744B1 (en) * 1998-05-26 2001-06-05 Compaq Computer Corporation Computer network cluster generation indicator
US6108702A (en) 1998-12-02 2000-08-22 Micromuse, Inc. Method and apparatus for determining accurate topology features of a network
US6810259B1 (en) 1999-12-16 2004-10-26 Utstarcom Inc. Location update protocol
US6694362B1 (en) * 2000-01-03 2004-02-17 Micromuse Inc. Method and system for network event impact analysis and correlation with network administrators, management policies and procedures
FR2805945B1 (en) * 2000-03-01 2002-05-03 Inst Nat Rech Inf Automat IMPROVED MONITORING AND SIMULATION OF COMPLEX SYSTEMS, ESPECIALLY MECHANISMS AND CONTROLS OF FLOWS AND CONGESTIONS IN COMMUNICATION NETWORKS
US7237138B2 (en) * 2000-05-05 2007-06-26 Computer Associates Think, Inc. Systems and methods for diagnosing faults in computer networks
US7752024B2 (en) * 2000-05-05 2010-07-06 Computer Associates Think, Inc. Systems and methods for constructing multi-layer topological models of computer networks
AU2001261275A1 (en) * 2000-05-05 2001-11-20 Aprisma Management Technologies, Inc. Systems and methods for isolating faults in computer networks
AU2001261258A1 (en) * 2000-05-05 2001-11-20 Aprisma Management Technologies, Inc. Help desk systems and methods for use with communications networks
US7500143B2 (en) * 2000-05-05 2009-03-03 Computer Associates Think, Inc. Systems and methods for managing and analyzing faults in computer networks
US20050157654A1 (en) * 2000-10-12 2005-07-21 Farrell Craig A. Apparatus and method for automated discovery and monitoring of relationships between network elements
US7000011B1 (en) * 2000-11-06 2006-02-14 Hewlett-Packard Development Company, Lp. Designing interconnect fabrics
US7383191B1 (en) 2000-11-28 2008-06-03 International Business Machines Corporation Method and system for predicting causes of network service outages using time domain correlation
JP3977059B2 (en) * 2000-12-22 2007-09-19 キヤノン株式会社 Information processing apparatus, method, and control program
US6966015B2 (en) * 2001-03-22 2005-11-15 Micromuse, Ltd. Method and system for reducing false alarms in network fault management systems
US6744739B2 (en) * 2001-05-18 2004-06-01 Micromuse Inc. Method and system for determining network characteristics using routing protocols
US7043727B2 (en) * 2001-06-08 2006-05-09 Micromuse Ltd. Method and system for efficient distribution of network event data
US7516208B1 (en) 2001-07-20 2009-04-07 International Business Machines Corporation Event database management method and system for network event reporting system
US20050286685A1 (en) * 2001-08-10 2005-12-29 Nikola Vukovljak System and method for testing multiple dial-up points in a communications network
US7099941B1 (en) * 2001-09-14 2006-08-29 Bellsouth Intellectual Property Corporation Obtaining and displaying logical port information
US7363368B2 (en) 2001-12-24 2008-04-22 International Business Machines Corporation System and method for transaction recording and playback
US6934290B2 (en) * 2002-01-25 2005-08-23 Telcordia Technologies, Inc. Determining connection information for a network
US20030145294A1 (en) * 2002-01-25 2003-07-31 Ward Julie Ann Verifying interconnect fabric designs
US9009004B2 (en) * 2002-01-31 2015-04-14 Hewlett-Packasrd Development Comany, L.P. Generating interconnect fabric requirements
EP1398907B1 (en) 2002-09-10 2010-12-08 Siemens Aktiengesellschaft Method of control of transmission resource in a packetized network when topology changes occur
US20040156321A1 (en) * 2003-01-31 2004-08-12 Michael Walker Anthony Paul Method of determining a mesh in a computer network
GB0410151D0 (en) * 2004-05-07 2004-06-09 Zeus Technology Ltd Load balancing & traffic management
US20050265359A1 (en) * 2004-05-13 2005-12-01 Drew Julie W Optimizing switch port assignments
US7870246B1 (en) * 2005-08-30 2011-01-11 Mcafee, Inc. System, method, and computer program product for platform-independent port discovery
GB2433675B (en) * 2005-12-22 2008-05-07 Cramer Systems Ltd Communications circuit design
JP2008123493A (en) * 2006-10-16 2008-05-29 Hitachi Ltd Computer management server in remote access environment
US8042119B2 (en) * 2007-05-14 2011-10-18 Teradata Us, Inc. States matrix for workload management simplification
US10028165B2 (en) 2009-09-01 2018-07-17 Zte Corporation Reverse link reliability through re-assembling multiple partially decoded connectionless frames in wireless communication networks
US10172072B2 (en) * 2009-09-01 2019-01-01 Zte Corporation Connectionless modes for wireless machine to machine communications in wireless communication networks

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0204959A1 (en) * 1985-06-10 1986-12-17 International Business Machines Corporation Automatic update of topology in a hybrid network
EP0221360A2 (en) * 1985-11-04 1987-05-13 International Business Machines Corporation Digital data message transmission networks and the establishing of communication paths therein
EP0352041A2 (en) * 1988-07-20 1990-01-24 Racal-Milgo Limited Methods of and networks for information communication

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4513411A (en) * 1982-09-01 1985-04-23 At&T Bell Laboratories Transmission of status report of equipment in a digital transmission network
US4817080A (en) * 1987-02-24 1989-03-28 Digital Equipment Corporation Distributed local-area-network monitoring system
US4827411A (en) * 1987-06-15 1989-05-02 International Business Machines Corporation Method of maintaining a topology database
US5049873A (en) * 1988-01-29 1991-09-17 Network Equipment Technologies, Inc. Communications network state and topology monitor
DE3813581A1 (en) * 1988-04-22 1989-11-02 Philips Patentverwaltung INTERMITTED TELECOMMUNICATION NETWORK
US5101348A (en) * 1988-06-23 1992-03-31 International Business Machines Corporation Method of reducing the amount of information included in topology database update messages in a data communications network
CA2017974C (en) * 1989-08-07 1998-06-16 Richard Alan Becker Dynamic graphical analysis of network data
US5226120A (en) * 1990-05-21 1993-07-06 Synoptics Communications, Inc. Apparatus and method of monitoring the status of a local area network
JP3160017B2 (en) * 1991-08-28 2001-04-23 株式会社日立製作所 Network management display device
US5319633A (en) * 1992-08-17 1994-06-07 International Business Machines Corporation Enhanced serial network topology generation algorithm
US5481674A (en) * 1994-06-20 1996-01-02 Mahavadi; Manohar R. Method and apparatus mapping the physical topology of EDDI networks
US5513171A (en) * 1994-07-26 1996-04-30 At&T Corp. Arrangement for dynamically deriving a telephone network management database from telephone network data

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0204959A1 (en) * 1985-06-10 1986-12-17 International Business Machines Corporation Automatic update of topology in a hybrid network
EP0221360A2 (en) * 1985-11-04 1987-05-13 International Business Machines Corporation Digital data message transmission networks and the establishing of communication paths therein
EP0352041A2 (en) * 1988-07-20 1990-01-24 Racal-Milgo Limited Methods of and networks for information communication

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
COMPUTER COMMUNICATIONS REVIEW, vol. 19, no. 4, 1 September 1989, pages 212-223, XP000133125 GARCIA-LUNA-ACEVES J J: "A UNIFIED APPROACH TO LOOP-FREE ROUTING USING DISTANCE VECTORS OR LINK STATES" *
COMPUTER NETWORKS AND ISDN SYSTEMS, vol. 12, no. 3, 1 January 1986, pages 147-158, XP002014584 JAFFE J M ET AL: "SUBTLE DESIGN ISSUES IN THE IMPLEMENTATION OF DISTRIBUTED, DYNAMIC ROUTING ALGORITHMS" *
IEEE INFOCOM 1993, vol. 3, 28 March 1993 - 1 April 1993, SAN FRANCISCO, pages 1004-1013, XP000419661 RUTENBURG V ET AL: "HOW TO EXTRACT MAXIMUM INFORMATION FROM EVENT-DRIVEN TOPOLOGY UPDATES" *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6308174B1 (en) 1998-05-05 2001-10-23 Nortel Networks Limited Method and apparatus for managing a communications network by storing management information about two or more configuration states of the network

Also Published As

Publication number Publication date
ATE198686T1 (en) 2001-01-15
AU1062597A (en) 1997-07-14
AU699509B2 (en) 1998-12-03
US5793362A (en) 1998-08-11
US20020032760A1 (en) 2002-03-14
WO1997023099A3 (en) 1997-08-28
EP0865698B1 (en) 2001-01-10
DE69611542D1 (en) 2001-02-15
EP0865698A2 (en) 1998-09-23
DE69611542T2 (en) 2001-08-23

Similar Documents

Publication Publication Date Title
US5793362A (en) Configurations tracking system using transition manager to evaluate votes to determine possible connections between ports in a communications network in accordance with transition tables
US5822305A (en) Port-link configuration tracking method and apparatus
US5504921A (en) Network management system using model-based intelligence
US5559955A (en) Method and apparatus for monitoring the status of non-pollable device in a computer network
US7733789B1 (en) Remote monitoring of switch network
US5751933A (en) System for determining the status of an entity in a computer network
US5261044A (en) Network management system using multifunction icons for information display
US5295244A (en) Network management system using interconnected hierarchies to represent different network dimensions in multiple display views
US6115743A (en) Interface system for integrated monitoring and management of network devices in a telecommunication network
CA2343370C (en) Root cause analysis in a distributed network management architecture
EP1234407B1 (en) Network event correlation system using protocol models
JPH09504913A (en) Method and apparatus for determining network topology
US7337209B1 (en) Large-scale network management using distributed autonomous agents
WO1993010495A1 (en) Method and apparatus for monitoring the status of non-pollable devices in a computer network
Bosch et al. Network Management in Heterogeneous Networks for Factory Automation
Wu et al. Knowledge-based network operations
Wooding et al. Knowledge-based systems in network management
Etkin et al. Crises in network evolution: three case studies and one proposed solution
Takura et al. Stepwise Refinement of Communications Service Specifications for Conforming to a Functional Model
JPH11331162A (en) Method and system for analyzing performance of managing system network

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CZ DE DK EE ES FI GB GE HU IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK TJ TM TR TT UA UG UZ VN AM AZ BY KG KZ MD RU TJ TM

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): KE LS MW SD SZ UG AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
AK Designated states

Kind code of ref document: A3

Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CZ DE DK EE ES FI GB GE HU IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK TJ TM TR TT UA UG UZ VN AM AZ BY KG KZ MD RU TJ TM

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): KE LS MW SD SZ UG AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 1996941501

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: JP

Ref document number: 97522820

Format of ref document f/p: F

WWP Wipo information: published in national office

Ref document number: 1996941501

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

WWG Wipo information: grant in national office

Ref document number: 1996941501

Country of ref document: EP