SE514430C2 - Method and system for determining network topology - Google Patents

Method and system for determining network topology

Info

Publication number
SE514430C2
SE514430C2 SE9804023A SE9804023A SE514430C2 SE 514430 C2 SE514430 C2 SE 514430C2 SE 9804023 A SE9804023 A SE 9804023A SE 9804023 A SE9804023 A SE 9804023A SE 514430 C2 SE514430 C2 SE 514430C2
Authority
SE
Sweden
Prior art keywords
node
message
network
loop
nodes
Prior art date
Application number
SE9804023A
Other languages
Swedish (sv)
Other versions
SE9804023D0 (en
SE9804023L (en
Inventor
Magnus Danielsson
Original Assignee
Net Insight Ab
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 Net Insight Ab filed Critical Net Insight Ab
Priority to SE9804023A priority Critical patent/SE514430C2/en
Publication of SE9804023D0 publication Critical patent/SE9804023D0/en
Priority to KR1020017006516A priority patent/KR20010082312A/en
Priority to AU20117/00A priority patent/AU2011700A/en
Priority to EP99963744A priority patent/EP1127430A1/en
Priority to JP2000584644A priority patent/JP2002531003A/en
Priority to PCT/SE1999/002169 priority patent/WO2000031925A1/en
Publication of SE9804023L publication Critical patent/SE9804023L/en
Publication of SE514430C2 publication Critical patent/SE514430C2/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/427Loop networks with decentralised control
    • H04L12/43Loop networks with decentralised control with synchronous transmission, e.g. time division multiplex [TDM], slotted rings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4637Interconnected ring systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/423Loop networks with centralised control, e.g. polling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/26Route discovery packet

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

The present invention relates to a method and a system for determining the topology of a network of nodes that are interconnected via unidirectional connections. According to the invention, the existence of a network loop within said network is determined using message forwarding among said nodes, and, as a result, information related to the existence of said network loop is distributed to nodes within said network.

Description

514 430 nätets lokala topologi utväxlas mellan nätets noder. 514 430 the local topology of the network is exchanged between the nodes of the network.

Baserat på mottagna meddelanden kommer varje nod att skapa och spara sin egen karta över nätet, eller åtmin- stone over en del därav. Ett exempel på en sedan lösning har beskrivits i US 5,682,479 nod i nätet är anordnad att sända vektor-routade paket (Newhall et al.), där varje över nätet i olika specificerade riktningar, där varje paket samlar information om nätets topologi längs sin väg. Paketen returneras därefter till den originerande noden med den insamlade informationen.Based on received messages, each node will create and save its own map over the network, or at least part of it. An example of a since solution has been described in US 5,682,479 node in the network is arranged to send vector-routed packets (Newhall et al.), Where each over the network in different specified directions, where each packet collects information about the topology of the network along its path. The packets are then returned to the original node with the collected information.

Som ett annat exempel på känd teknik beskriver US 5,506,838 sänds från en eller flera källnoder till andra (Flanagan) en lösning där så kallade utforskar~ paket noder i nätet och på så sätt informerar nätets nod om nätets topologi. âyften med uppfinningen En nackdel med de senare två exemplen på känd teknik är att metodena betraktar nätet i termer av dubbelriktade anslutningar, var och en typiskt innefattande två enkel- riktade punkt-till-punkt-anslutningar. Om exempelvis någon punkt-till-punkt-anslutning mellan två noder i nätet saknar dubbelriktad konnektivitet, kan delar av nätets topologi bli omöjlig att fastställa. Beräkningen av routingtabeller och liknande kan dessutom resultera i suboptimerade lösningar.As another example of the prior art, US 5,506,838 transmits from one or more source nodes to others (Flanagan) describes a solution where so-called explorer ~ packet nodes in the network and thus inform the network node about the topology of the network. OBJECTS OF THE INVENTION A disadvantage of the latter two examples of the prior art is that the methods consider the network in terms of bidirectional connections, each typically comprising two unidirectional point-to-point connections. For example, if any point-to-point connection between two nodes in the network lacks bidirectional connectivity, parts of the network topology may become impossible to determine. The calculation of routing tables and the like can also result in sub-optimized solutions.

Ett syfte med uppfinningen är därför att skapa en distribuerad metod för att fastställa nättopologi.An object of the invention is therefore to create a distributed method for determining network topology.

Ett annat syfte med uppfinningen är att skapa en metod som inte behöver förlita sig enbart på dubbelriktad punkt-till~punkt-konnektivitet.Another object of the invention is to create a method which does not have to rely solely on bidirectional point-to-point connectivity.

Ytterligare ett syfte med uppfinningen är att skapa en metod där mängden meddelanden som sänds i nätet i syfte att fastställa dess topologi hålls nere. lO 15 20 25 30 35 514 450 Redogörelse för uppfinningen Ovan nämnda och andra syften med uppfinningen uppnås med ett förfarande och ett system i enlighet med de bifogade patentkraven.A further object of the invention is to create a method in which the amount of messages sent in the network for the purpose of determining its topology is kept down. Disclosure of the Invention The above and other objects of the invention are achieved by a method and a system in accordance with the appended claims.

Uppfinningen tillhandahåller således ett förfarande och ett system för fastställande av topologin hos ett nät av noder som är sammankopplade via enkelriktade anslut- ningar. Enligt uppfinningen fastställs förekomsten av en nätloop inom nämnda nät genom utnyttjande av vidaresänd- ning ("forwarding") av meddelanden bland nätets noder.The invention thus provides a method and a system for determining the topology of a network of nodes which are interconnected via unidirectional connections. According to the invention, the presence of a network loop within said network is determined by utilizing forwarding of messages among the nodes of the network.

Information relaterande till förekomsten av nämnda nätloop distribueras därefter till noder inom nätet.Information related to the existence of said network loop is then distributed to nodes within the network.

Uppfinningen är således baserad på iden att betrakta nätet i termer av nätloopar (åtminstone vid bestämning av nätets topologi), och att fastställa och distribuera information relaterande till förekomsten av sådana loopar.The invention is thus based on the idea of considering the network in terms of network loops (at least in determining the topology of the network), and of determining and distributing information related to the existence of such loops.

Enligt en föredragen utföringsform sänder en nod i nätet ett meddelande från en utport, vilket nedan ibland benämns topologiutforskarmeddelande, och fastställer senare mottagande av en vidaresänd version av nämnda meddelande vid en inport, vilket därmed markerar före- komsten av en nätloop. Varje nod i nätet som mottar ett topologiutforskarmeddelande är dessutom företrädesvis anordnad att sända meddelandet vidare på åtminstone en, typiskt samtliga, av sina utportar.According to a preferred embodiment, a node in the network sends a message from an output port, which is sometimes referred to hereinafter as a topology explorer message, and later determines receipt of a forwarded version of said message at an input port, thereby marking the presence of a network loop. In addition, each node in the network that receives a topology explorer message is preferably arranged to forward the message to at least one, typically all, of its ports.

Var och en, eller åtminstone ett flertal, av nätets noder är företrädesvis anordnade att sända ut och detek- tera meddelanden av detta slag. Dessutom är företrädesvis samtliga noder i nätet anordnade att vidaresända sådana meddelanden.Each, or at least a plurality, of the nodes of the network are preferably arranged to send out and detect messages of this kind. In addition, preferably all nodes in the network are arranged to forward such messages.

Efter att förekomsten av en sådan loop fastställts, distribueras information relaterande därtill till noder i nätet, typiskt till noder som bildar åtminstone en del av nämnda nätloop och/eller till andra noder i nätet, dvs noder som inte bildar del av nämnda loop. Sådan informa- tion inkluderar typiskt information relaterande till *J C) l5 20 30 514 430 vilka noder, och vilka portar därav, som bildar del av nämnda nätloop. Alstring och distribution av sådan infor- mation sker företrädesvis också genom utnyttjande av vidaresändning av meddelanden.After the existence of such a loop is determined, information related thereto is distributed to nodes in the network, typically to nodes which form at least a part of said network loop and / or to other nodes in the network, i.e. nodes which do not form part of said loop. Such information typically includes information relating to which nodes, and which ports thereof, form part of said network loop. Generation and distribution of such information preferably also takes place through the use of forwarding of messages.

På fördelaktig sätt kommer sändning och vidaresänd- ning av ett enda och förhållandevis litet meddelande vara tillräckligt för fastställande av förekomsten av en nät- loop. En sådan loop kommer dessutom att upptäckas även om nätet, och mer specifikt loopen som sådan, kan innefatta ett antal punkt-till-punkt-anslutningar som saknar dubbelriktad konnektivitet, vilket i vissa fall av känd teknik skulle vara omöjligt. 5,506,838 en metod som utnyttjar vidaresändning av meddelanden, varvid Som jämförelse beskriver ovan nämnda US varje nod som mottar så kallade utforskarpaket kommer att avgöra huruvida informationen i dessa redan tidigare har mottagits. Om informationen är ny, kommer den mottagande noden att registrera paketets information, modifiera paketet för att identifiera sig själv, och sända paketet vidare till andra noder. Om dock informationen redan tidigare mottagits, termineras vidaresändning av paketet för att förhindra onödig sändning av meddelanden. När ett paket innehåller information som tidigare mottagits görs således inget fastställande av förekomsten av en nätloop eller distribution av information som relaterar till nämnda nätloop till noder som bildar del av loopen, såsom uppfinningen föreslår. Ingen nytta dras av den erhållna informationen, annat än i syfte att helt enkelt förhindra ytterligare vidaresänding av meddelandet.Advantageously, the transmission and retransmission of a single and relatively small message will be sufficient to determine the existence of a network loop. In addition, such a loop will be detected even if the network, and more specifically the loop as such, may include a number of point-to-point connections that lack bidirectional connectivity, which in some cases of prior art would be impossible. No. 5,506,838 discloses a method utilizing forwarding of messages, wherein For comparison, the above-mentioned US describes each node receiving so-called explorer packets will determine whether the information in these has already been received previously. If the information is new, the receiving node will record the packet information, modify the packet to identify itself, and forward the packet to other nodes. However, if the information has already been received, forwarding of the packet is terminated to prevent unnecessary transmission of messages. Thus, when a packet contains information previously received, no determination is made of the existence of a network loop or distribution of information relating to said network loop to nodes forming part of the loop, as the invention proposes. No use is made of the information obtained, except for the purpose of simply preventing further forwarding of the message.

En nod som har två eller fler utportar, och som ännu inte har lyckats fastställa vilken av sina utportar som bildar del av en specifik nätloop, är enligt en utför- ingsform av uppfinningen anordnad att sända två eller fler respektive meddelanden från respektive utportar, där varje meddelande identifierar den respektive utport som det sänds från och på så sätt möjliggör senare bestämning av vilken av de två eller fler av nodens utportar som lO l5 20 25 35 514 450 bildar del av en nätloop. Exempelvis kan sändning av sådana två eller fler olika meddelanden initieras av mottagandet av ett topologiutforskarmeddelande eller initieras av den sändande noden själv. Dessa meddelanden kan då senare användas, exempelvis vid den sändande noden eller vid en annan nod som bildar del av nätloopen och som har mottagit nämnda meddelande, eller en vidaresänd version därav, för att identifiera den port som bildar del av den aktuella nätloopen. Fördelen med detta för- farande är att det med en enkel och effektiv mekanism eliminerar osäkerheter avseende vilken port som bildar del av vilken loop.A node which has two or more outputs, and which has not yet succeeded in determining which of its outputs forms part of a specific network loop, is according to an embodiment of the invention arranged to send two or more respective messages from the respective outputs, where each message identifies the respective output port from which it is transmitted and thus enables later determination of which of the two or more of the node's outputs that form part of a network loop. For example, transmission of such two or more different messages may be initiated by the reception of a topology explorer message or initiated by the transmitting node itself. These messages can then be used later, for example at the transmitting node or at another node which forms part of the network loop and which has received said message, or a forwarded version thereof, in order to identify the port which forms part of the current network loop. The advantage of this procedure is that with a simple and efficient mechanism it eliminates uncertainties regarding which gate forms part of which loop.

Uttryckt i termer av steg som utförs av nätets noder innefattar ett specifikt exempel på ovan nämnda utför- ingsform stegen: att sända ett meddelande från en utport på en första nod; att motta nämnda meddelande, som sådant eller i en vidaresänd version, vid en inport på en andra nod; att sända två eller fler modifierade versioner av nämnda meddelande från två eller fler respektive utportar på nämnda andra nod, vilka modifierad versioner var och en identifierar den respektive utport som används för sändning därav; att motta en av nämnda modifierade ver- sioner av nämnda meddelande vid nämnda första nod, pä så sätt identifierande vilken av nämnda tvâ eller fler ut- portar som bildar del av nämnda nätloop; och att sända ett meddelande från nämnda första nod till nämnda andra nod, identifierande den utport på nämnda andra nod som bildar del av nämnda nätloop.Expressed in terms of steps performed by the nodes of the network, a specific example of the above-mentioned embodiment comprises the steps of: sending a message from an output port on a first node; receiving said message, as such or in a forwarded version, at an input on a second node; sending two or more modified versions of said message from two or more respective ports on said second node, each modified version identifying the respective port used for transmission thereof; receiving one of said modified versions of said message at said first node, thereby identifying which of said two or more outputs forms part of said network loop; and sending a message from said first node to said second node, identifying the output port on said second node which forms part of said network loop.

Information avseende vilka noder, och företrädesvis även vilka portar därav, som bildar del av en fastställd nätloop alstras på ett föredraget sätt med utnyttjande av vidaresändning av meddelanden. Varje nod som mottar ett topologiutforskarmeddelande, eller motsvarande, kommer att sända nämnda meddelande vidare och kommer samtidigt att i meddelandet inkludera information relaterande till identiteten på den vidaresändande noden, och typiskt även nodens utport. Den loopinformation som alstras pà detta 15 20 25 30 35 514 430 sätt kan därefter distribueras till de noder som bildar nämnda loop, företrädesvis också med utnyttjande av meddelandevidaresändning.Information regarding which nodes, and preferably also which ports thereof, form part of a determined network loop is generated in a preferred manner using forwarding of messages. Each node receiving a topology explorer message, or equivalent, will forward said message and will at the same time include in the message information related to the identity of the forwarding node, and typically also the node's output port. The loop information generated in this way can then be distributed to the nodes forming said loop, preferably also using message forwarding.

Sammanfattningsvis bildar lösningen att betrakta nätet i termer av nätloopar, att fastställa förekomsten av sådana loopar, och att distribuera information relate- rande till sådana loopar, åtminstone till noder som bildar del av sådana loopar, en tydlig uppfinningside med tydlig uppfinningshöjd.In summary, the solution of considering the network in terms of network loops, of determining the existence of such loops, and of distributing information relating to such loops, at least to nodes forming part of such loops, forms a clear inventive idea with a clear inventive step.

Ovan nämnda och andra aspekter, särdrag och detaljer med avseende på uppfinningen kommer att framgå ytterlig- are av följande beskrivning av en föredragen utförings- form därav.The above-mentioned and other aspects, features and details with respect to the invention will become further apparent from the following description of a preferred embodiment thereof.

Kortfattad beskrivning av ritningarna En exemplifierande föredragen utföringsform av upp- finningen kommer nu att beskrivas med hänvisning till de bifogade ritningarna, på vilka: figurer la och lb schematiskt visar respektive nät- topologier; figur 2 schematiskt visar ett flödesschema över en algoritm för upptäckt av nättopologi enligt en föredragen utföringsform av uppfinningen; och figurer 3-7 schematiskt visar ett exemplifierande nät och utväxlingen av meddelanden mellan noder i nätet enligt den exemplifierande algoritm för upptäckt av nät- topologi som visas i Figur 2.Brief Description of the Drawings An exemplary preferred embodiment of the invention will now be described with reference to the accompanying drawings, in which: Figures 1a and 1b schematically show the respective network topologies; Figure 2 schematically shows a flow chart of an algorithm for detecting network topology according to a preferred embodiment of the invention; and Figures 3-7 schematically show an exemplary network and the exchange of messages between nodes in the network according to the exemplary algorithm for detecting network topology shown in Figure 2.

Detaljerad beskrivning av en föredragen utföringsform I figur la visas ett enkelt nät innefattande tre noder l, 2 och 3 sammankopplade via enkelriktade anslut- ningar 4, 5, 6 och 7. Anslutningarna 4 och 7 bildar en nätloop innefattande noderna 1 och 2, och anslutningarna 5 och 6 bildar en annan nätloop innefattande noderna 2 och 3, såsom markeras med halvcirkulära, streckade pilar.Detailed description of a preferred embodiment Figure 1a shows a simple network comprising three nodes 1, 2 and 3 connected via unidirectional connections 4, 5, 6 and 7. The connections 4 and 7 form a network loop comprising the nodes 1 and 2, and the connections 5 and 6 form another network loop comprising nodes 2 and 3, as marked by semicircular, dashed arrows.

Anslutningarna 4, 5, 6 och 7 kan dessutom sägas bilda en övergripande nätloop, dvs loopen från nöden l via anslut- 10 l5 20 25 30 35 514 430 ningen 4 till noden 2, via anslutningen 5 till nöden 3, via anslutningen 6 till noden 2, och via anslutningen 7 tillbaka till noden l, vilket dock ej markeras specifikt i figur la. Även om det går att definiera en sådan loop, kommer beskrivningen nedan att primärt inriktas på upp- täckten av de minsta möjliga nätloopar som varje nod bildar del av. Såsom framgår av figur la bildar dessutom var och en av de markerade nätlooparna i själva verket en dubbelriktad anslutning som sammankopplar respektive noder.The connections 4, 5, 6 and 7 can also be said to form an overall network loop, ie the loop from the emergency 1 via the connection 4 to the node 2, via the connection 5 to the emergency 3, via the connection 6 to the node 2, and via the connection 7 back to the node 1, which, however, is not specifically marked in figure 1a. Although it is possible to define such a loop, the description below will primarily focus on the discovery of the smallest possible network loops that each node forms part of. In addition, as can be seen from Figure 1a, each of the marked network loops in fact forms a bidirectional connection which interconnects the respective nodes.

I figur lb visas ett annat enkelt nät innefattande fyra noder 10, 20, 30 och 40 som är sammankopplade via enkelriktade anslutningar till att bilda en ringtopologi.Figure 1b shows another simple network comprising four nodes 10, 20, 30 and 40 which are connected via unidirectional connections to form a ring topology.

I detta fall bildar ringtopologin en nätloop som inne- fattar samtliga fyra noder, såsom markeras med den halv- cirkulära streckade pilen i figurens mitt.In this case, the ring topology forms a network loop that includes all four nodes, as marked by the semicircular dashed arrow in the middle of the figure.

Ett flödesschema över ett exempel på en algoritm för upptäckt av topologi enligt en föredragen utföringsform av uppfinningen kommer nu att beskrivas med hänvisning till figur 2. Huvudsyftet med denna algoritm är att fastställa förekomsten av nätloopar av det slag som markerats i figurerna la och lb och att förse de noder som bildar del av respektive nätloop med motsvarande information.A flow chart of an example of a topology detection algorithm according to a preferred embodiment of the invention will now be described with reference to Figure 2. The main object of this algorithm is to determine the presence of network loops of the type marked in Figures 1a and 1b and that provide the nodes that form part of each network loop with corresponding information.

Med hänvisning till figur 2 innefattar algoritmen för upptäckt av nättopologi ett loopdetekteringssteg S10, ett masterutropssteg S20, ett vägskälsreduceringssteg S30, ett steg S40 för uppbyggnad av en looplista, ett steg S50 för distribution av looplistan, och ett steg S60 för beräkning av routingtabell.Referring to Figure 2, the network topology detection algorithm includes a loop detection step S10, a master exclamation step S20, a crossroads reduction step S30, a loop list building step S40, a loop list distribution step S50, and a routing table calculation step S60.

Vart och ett av stegen i figur 2 kommer nu att beskrivas med hänvisning till ett exemplifierande nät som visas i figurerna 3-7, vilket nät innefattar sex noder l0, 20, 30, 40, 50 och 60. Noden l0 har två utportar ll och l3 och två inportar l2 och 14. Var och en av de övriga noderna har också två utportar och två inportar som betecknas på motsvarande sätt. l0 l5 20 25 30 35 514 430 Nodens 10 utport ll är ansluten via en enkelriktad anslutning till nodens 20 inport 22, nodens 20 utport 21 är ansluten via en enkelriktad anslutning till nodens 30 inport 32, nodens 30 utport 31 är ansluten via en enkel- riktad anslutning till nodens 40 inport 42, och nodens 40 utport 41 är ansluten via en enkelriktad anslutning till nodens 10 inport 12, såsom visas i figurerna 3-7. Dess- utom är nodens 40 utport 43 ansluten via en enkelriktad anslutning till nodens 50 inport 52, nodens 50 utport 51 ansluten via en enkelriktad anslutning till nodens 60 inport 22, och nodens 60 utport 61 ansluten via en enkel- riktad anslutning till nodens 40 inport 44. Det antas i detta exempel att övriga inportar och utportar ej är anslutna till andra noder.Each of the steps in Figure 2 will now be described with reference to an exemplary network shown in Figures 3-7, which network comprises six nodes 10, 20, 30, 40, 50 and 60. The node 10 has two outputs 11 and l3 and two inputs l2 and 14. Each of the other nodes also has two outputs and two inputs designated in a corresponding manner. l5 l5 20 25 30 35 514 430 The node 10 outlet of the node 10 is connected via a unidirectional connection to the inlet 22 of the node 20, the outlet 21 of the node 20 is connected via an inlet 32 of the node 30, the outlet 31 of the node 30 is connected via a single directional connection to the input port 42 of the node 40, and the output port 41 of the node 40 is connected via a unidirectional connection to the input port 12 of the node 10, as shown in Figures 3-7. In addition, the node 43 output port 43 is connected via a unidirectional connection to the node 50 input 52, the node 50 output port 51 is connected via a unidirectional connection to the node 60 input port 22, and the node 60 output port 61 is connected via a unidirectional connection to the node 40 input port. 44. It is assumed in this example that the other inputs and outputs are not connected to other nodes.

Ett exempel på loopdetekteringssteget S10 hos algo- ritmen for topologiupptäckt i figur 2 enligt den fore- dragna utforingsformen av uppfinningen kommer nu att beskrivas med hänvisning till figur 3. Under loopdetekte- ringssteget S10 kommer nätets noder att sända ut så kallade probmeddelanden som används for att detektera förekomsten av loopar i nätet. En nod sänder ut prob- meddelanden från samtliga utportar som inte bildar del av loopar vars existens redan fastställts. När en nod skapar probmeddelanden förses varje meddelande med en unik iden- tifikation som identifierar probmeddelandets ursprung, dvs som identifierar den utport som meddelandet sänds från, exempelvis utportens unika MAC-adress. Nätets noder är anordnade att sända mottagna probmeddelanden vidare på samtliga utportar. När en nod sänder vidare ett prob- meddelande, mappas det mottagna meddelandets innehåll till det meddelande som sänds. Det vidaresända prob- meddelandets innehåll kommer således att i all väsent- lighet vara en kopia av det mottagna probmeddelandets innehåll, och kommer således att identifiera utporten på den nod som ursprungligen sände ut probmeddelandet. Dis- tributionen av probmeddelanden är begränsad av en hopp- räknande mekanism som begränsar det antal hopp som ett 10 15 20 25 30 35 514 430 probmeddelande kan sändas vidare. För enkelhets skull antas det i det illustrerade exemplet att antalet hopp som ett meddelande får lov att färdas är satt till fyra.An example of the loop detection step S10 of the topology detection algorithm in Figure 2 according to the preferred embodiment of the invention will now be described with reference to Figure 3. During the loop detection step S10, the network nodes will send out so-called probe messages used to detect the presence of loops in the network. A node sends probe messages from all outputs that do not form part of loops whose existence has already been determined. When a node creates probe messages, each message is provided with a unique identification that identifies the origin of the probe message, ie that identifies the output port from which the message is sent, for example the output's unique MAC address. The nodes of the network are arranged to forward received probe messages to all output ports. When a node forwards a probe message, the contents of the received message are mapped to the message being sent. The contents of the forwarded probe message will thus be essentially a copy of the contents of the received probe message, and will thus identify the output port of the node that originally sent the probe message. The distribution of probe messages is limited by a hop counting mechanism which limits the number of hops a probe message can be forwarded. For the sake of simplicity, it is assumed in the illustrated example that the number of jumps that a message is allowed to travel is set to four.

När en nod mottar ett av sina egna probmeddelanden från en annan nod, kommer den att fastställa att en loop existerar, och den kommer då att veta vilken inport som bildar del av denna nya loop. Noden övergår då till att arbeta som en så kallad uppbyggnadsmaster för den nya loopen och fortsätter till masterutropssteget för den nya loopen.When a node receives one of its own probe messages from another node, it will determine that a loop exists, and it will then know which input forms part of this new loop. The node then transitions to work as a so-called build-up master for the new loop and continues to the master call stage for the new loop.

I det exempel som visas i figur 3 sänder noden 10 ett probmeddelande PR(11) 20, vilket probmeddelande identifierar probmeddelandets från sin utport 11 till noden ursprung. Noden 20 sänder sen vidare probmeddelande från sin utport 21 till noden 30, efter att ha stegat upp det hopp-räknetal som ingår i probmeddelandet med ett (1).In the example shown in Figure 3, the node 10 sends a probe message PR (11) 20, which probe message identifies the probe message from its output port 11 to the node origin. The node 20 then forwards the probe message from its output port 21 to the node 30, after having incremented the hop count included in the probe message by one (1).

Noden 30 sänder probmeddelandet vidare från sin utport 31 till noden 40. den vidare meddelandet såväl på utporten 41 till nod 10, Eftersom noden 40 har två utportar, sänder som på utporten 43 till noden 50. Noden 50 kommer där- efter att sända vidare probmeddelandet från sin utport 51 till noden 60. Eftersom meddelandet nu färdats det maxi- mala antalet tillåtna hopp, kommer noden 60 inte att sända probmeddelandet vidare. Samtidigt kommer emellertid noden 10 att ha mottagit sitt eget probmeddelande från noden 40 via inporten 12 och kommer därför att fastställa att en nätloop existerar och att utporten 11 och inporten 12 bildar del av denna nya loop. Noden 10 kommer då att anta rollen som masternod och fortsätter till master- utropssteget.The node 30 forwards the probe message from its output port 31 to the node 40. it forwards the message both on the output port 41 to node 10, since the node 40 has two outputs, as on the output port 43 to the node 50. The node 50 will then forward the probe message from its output port 51 to the node 60. Since the message has now traveled the maximum number of jumps allowed, the node 60 will not forward the probe message. At the same time, however, the node 10 will have received its own probe message from the node 40 via the input port 12 and will therefore determine that a network loop exists and that the output port 11 and the input port 12 form part of this new loop. Node 10 will then assume the role of master node and proceed to the master exclamation stage.

En exempel på masterutropssteget S20 hos algoritmen för upptäck av nättopologi enligt en föredragen utför- ingsform av uppfinningen kommer nu att beskriva med hän- visning till figur 4. När en nod har fastställt förekoms- ten av en ny loop med utnyttjande av probmeddelanden såsom beskrivits med hänvisning till figur 3, kommer den att anta rollen som masternod för den nya loopen. För att 10 15 20 25 30 514 450 ”i 10 informera andra noder om förekomsten av den nya loopen, sänder masternoden ut ett så kallat masterutropsmeddel- ande på den utport som tidigare identifierades såsom bildande del av den nya loopen.An example of the master exclamation step S20 of the network topology detection algorithm according to a preferred embodiment of the invention will now be described with reference to Figure 4. When a node has determined the occurrence of a new loop using probe messages as described by referring to Figure 3, it will assume the role of master node for the new loop. In order to inform other nodes of the existence of the new loop, the master node sends out a so-called master call message on the output port that was previously identified as forming part of the new loop.

Masterutropsmeddelandet sänds vidare enligt samma regler som probmeddelanden och tjänar två syften. Det första syftet är att informera andra noder om förekomsten om en ny loop och att ange en identifierare för den nya loopen, vilket typiskt är den MAC-adress som nämnts ovan.The master call message is forwarded according to the same rules as probe messages and serves two purposes. The first purpose is to inform other nodes of the existence of a new loop and to specify an identifier for the new loop, which is typically the MAC address mentioned above.

Denna loopidentifierare ingår i alla efterföljande med- delanden avseende den nya loopen och möjliggör hantering av flera loopar samtidigt utan risk för sammanblandning av meddelanden som hänför sig till olika loopar. Noder som mottar ett masterutrop blir så-kallade uppbyggnade- slavar för den nya loopen och vet automatiskt vilken av sina inportar som bildar del av den nya loopen. Det andra syftet med masterutropet är att det tillhandahåller en mekanism för val av masternod. Om två noder samtidigt mottar sina egna probmeddelanden, kommer de båda att för~ söka anta rollen som masternod. I den föredragna utför- ingsformen löses detta genom en urvalsmekanism som baseras på nodernas MAC-adresser. Om en masternod mottar ett masterutrop (på den inport för vilken den för när- varande försöker bli masternod) från en nod med en högre MAC-adress, backar den, åtminstone tillfälligt, till att arbeta som slavnod istället. Om en maseternod mottar ett masterutrop från en nod med lägre MAC-adress, sänds masterutropet inte vidare.This loop identifier is included in all subsequent messages regarding the new loop and enables the handling of several loops at the same time without the risk of confusion of messages relating to different loops. Nodes that receive a master call become so-called build-up slaves for the new loop and automatically know which of their inputs forms part of the new loop. The second purpose of the master call is to provide a master node selection mechanism. If two nodes simultaneously receive their own probe messages, they will both try to assume the role of master node. In the preferred embodiment, this is solved by a selection mechanism based on the MAC addresses of the nodes. If a master node receives a master call (on the input for which it is currently trying to become the master node) from a node with a higher MAC address, it backs up, at least temporarily, to work as a slave node instead. If a mace node receives a master call from a node with a lower MAC address, the master call is not forwarded.

När masternoden slutligen mottar sitt eget master- utrop, vet den att alla andra noder på den nya loopen nu arbetar som slavnoder och att den själv är den enda masternoden för den nya loopen. Masternoden fortsätter då till vägskälsreduceringssteget_ I det exempel som visas i figur 4 sänder noden 10, i egenskap av masternod, ut ett masterutrop MA(ll) från sin utport ll till nod 20, vilket masterutrop identifierar meddelandets ursprung och därför även bildar en unik l0 15 20 25 30 35 514 450 ll loopidentifierare. Detta meddelande vidaresänds därefter på ett liknande sätt som det probmeddelande som beskri- vits med hänvisning till figur 3. Eftersom noden 40 har två utportar, kommer den att sända vidare masterutropet på båda sina utportar. Allteftersom var och en av noderna 20, 30, 40, 50 och 60 mottar masterutropet MA(ll), kommer de att anta rollen som slavnoder. När noden 10 mottar sitt eget masterutrop från noden 40 via inporten 12, vet den att samtliga andra noder på nätloopen nu arbetar som slavnoder, och den kommer därför att gå vidare till vägskälsreduceringssteget.When the master node finally receives its own master exclamation, it knows that all other nodes on the new loop are now working as slave nodes and that it itself is the only master node for the new loop. The master node then proceeds to the crossroads reduction step. 20 25 30 35 514 450 ll loop identifier. This message is then forwarded in a similar manner to the probe message described with reference to Figure 3. Since the node 40 has two output ports, it will forward the master exclamation on both of its output ports. As each of the nodes 20, 30, 40, 50 and 60 receives the master exclamation MA (II), they will assume the role of slave nodes. When the node 10 receives its own master call from the node 40 via the input port 12, it knows that all the other nodes on the network loop are now operating as slave nodes, and it will therefore proceed to the crossroads reduction step.

Ett exempel på vägskälsreduceringssteget S30 i figur 2 hos algoritmen för upptäck av nättopologi enligt den föredragna utföringsformen av uppfinningen kommer nu att beskriva med hänvisning till figurer Sa-5c. En så kallad vägskälsnod är en nod som har två eller fler anslutna ut- portar. När en nod sänder vidare ett probmeddelande eller ett masterutropsmeddelande, gör den detta från samtliga sina utportar, eftersom den inte vet vilken port som bildar del av den nya loopen. Målet med vägskälsreduce- ringssteget är att fastställa vilken av vägskälnodens utportar som bildar del av den nya loopen.An example of the cross-sectional reduction step S30 in Fig. 2 of the network topology detection algorithm according to the preferred embodiment of the invention will now be described with reference to Figs. Sa-5c. A so-called crossroads node is a node that has two or more connected outputs. When a node forwards a probe message or a master call message, it does so from all of its output ports, because it does not know which port forms part of the new loop. The goal of the crossroads reduction step is to determine which of the crossroads node's outputs forms part of the new loop.

Vägskälsreduceringssteget inleds av masternoden som sänder ut ett så kallat vägskälsutrop från den utport som noden tidigare sände probmeddelandet och masterutrops- meddelandet från. Vägskälsutropet förses med en identi- fierare som identifierar den utport som det sänds från.The cross-country reduction step is initiated by the master node, which sends out a so-called cross-country call from the exit from which the node previously sent the probe message and the master call message. The crossroads call is provided with an identifier that identifies the exit port from which it is sent.

Vägskälsutrop sänds vidare enligt följande regel: Om den vidaresändande noden endast har en enda utport, eller om den redan vet vilken utport som bildar del av den nya loop (dvs den har redan "löst" vägskälsfràgan), sänder noden vidare vägskälsutropet i omodifierad form via den rätta (eller enda) utporten. I annat fall anses noden vara en vägskälsnod. Den sänder då ut sina egna vägskäls- utrop, istället för det mottagna vägskälsutropet, från samtliga sina utportar. Varje nytt vägskälsutrop inne- 20 25 30 35 514 430 12 håller en identifierare som identifierar den utport som det sänds från.Crossroads exclamation is forwarded according to the following rule: If the forwarding node has only a single exit, or if it already knows which exit forms part of the new loop (ie it has already "solved" the crossroads issue), the node forwards the crossroads exclamation in unmodified form via the correct (or only) exit. Otherwise, the node is considered a crossroads node. It then sends out its own crossroads calls, instead of the received crossroads call, from all its ports. Each new junction call contains an identifier that identifies the output port from which it is transmitted.

När masternoden mottar ett vägskälsutrop med en identifierare som identifierar en utport på en annan nöd, vet den att denna utport bildar del av den nya loopen.When the master node receives a crossroads call with an identifier identifying an output port on another emergency, it knows that this output port forms part of the new loop.

Masternoden informerar därför vägskälsnoden om detta genom att sända ut ett så kallat vägskälsreducerings- meddelande som identifierar denna utport. Vägskälsreduce- ringsmeddelandet sänds vidare på samma sätt som prob- och masterutropsmeddelanden. När en vägskälsnod mottar ett vägskälsreduceringsmeddelande som identifierar en av nodens utportar, vet den att denna port bildar del av den nya loopen. Vägskälet har nu "lösts", och vägskälsreduce- ringmeddelandet behöver inte sändas vidare. När nästa vägskälsutrop mottas av nöden, sänder den därför detta vidare i omodifierad form från den nu fastställda ut- porten för den nya loopen.The master node therefore informs the crossroads node about this by sending out a so-called crossroads reduction message which identifies this output port. The cross-country reduction message is forwarded in the same way as probe and master call messages. When a crossroads node receives a crossroads reduction message identifying one of the node's outputs, it knows that this port forms part of the new loop. The crossroads has now been "solved", and the crossroads reduction message does not need to be forwarded. When the next crossroads call is received by the emergency, it therefore forwards this in unmodified form from the now established output for the new loop.

När en vägskälsnod har informerats om vilken av sina utportar som bildar del av den nya loopen, sänder den ut ett så kallat frigör meddelande på samtliga andra ut- portar. Detta görs för att informera slavnoder nedströms de portar som inte bildar del av loopen om att de nu kan avlägsna alla prötokolltillstånd ("states") för loopen och istället försöka detektera andra loopar.When a crossroads node has been informed of which of its outputs forms part of the new loop, it sends out a so-called free message on all other outputs. This is done to inform slave nodes downstream of the gates that do not form part of the loop that they can now remove all protocol states ("states") for the loop and instead try to detect other loops.

Omedelbart efter att ha sänt ut ett vägskälsreduce- ringmeddelande, sänder masternoden ut ett nytt vägskäls- utrop för att finna nästa vägskälsnod. Vägskälsreduce- ringssteget fortsätter på detta sätt att reducera, eller lösa, vägskäl ett i taget med början på vägskälet närmast masternodens inport.Immediately after sending a crossroads reduction message, the master node sends out a new crossroads call to find the next crossroads node. The crossroads reduction step continues in this way to reduce, or solve, crossroads one at a time starting at the crossroads closest to the master node's input.

När masternoden slutligen mottar ett av sina egna fler olösta vägskäl på loopen. Samtliga noder som bildar del vägskälsutrop, vet den att det inte existerar några av loopen vet nu vilken av sina utportar som bildar del av loopen, och samtliga meddelanden avseende den nya loppen sänds i fortsättningen därför endast vidare till noder som ingår i loopen. Än så länge har emellertid 10 |_| (j) 20 25 30 35 514 430 13 varje nod endast information om sina egna portar, dvs ingen nod har komplett kunskap om samtliga noder på den nya loopen (förutom i fallet med väldigt enkla topolo- gier). Masternoden fortsätter därför till det så kallade looplistauppbyggnadssteget.When the master node finally receives one of its own more unresolved crossroads on the loop. All nodes that form part of the crossroads exclamation, it knows that none of the loops exist now knows which of its outputs forms part of the loop, and all messages regarding the new race are in future sent only to nodes included in the loop. So far, however, 10 | _ | (j) 20 25 30 35 514 430 13 each node only information about its own ports, ie no node has complete knowledge of all nodes on the new loop (except in the case of very simple topologies). The master node therefore continues to the so-called loop list building step.

I det exempel som visas i figurer 5a-5c börjar masternoden 10 med att sända ut ett vägskälsutrop SPA(l1) från utporten ll till noden 20. Vägskälsutropet SPA(11) är försett med en identifierare som identifierar utporten 11 som det sänds från. Utropet SPA(ll) noderna 20 och 30 till noden 40. Eftersom noden 40 har sänds vidare av två anslutna utportar, sänder noden 40 ut sina egna nya vägskälsutrop SPA(4l) och SPA(43) från sina egna respek- tive utportar, där varje utrop identifierar den utport som det sänds från. När masternoden 10 mottar utropet SPA(41) fierade utporten 41 bildar del av den nya loopen. Såsom från noden 40 i figur 5a, vet den att den identi- visas i figur 5b informerar därför masternoden 10 väg- skälsnoden 40 om detta genom att sända ut ett vägskäls- reduceringsmeddelande SPR(41) som identifierar utporten 41, vilket meddelande sänds vidare på samma sätt som de föregående meddelandena. När noden 40 mottar vägskäls- reduceringsmeddelandet SPR(41) som identifierar utporten 41, vet den att porten 41 bildar del av den nya loopen.In the example shown in Figures 5a-5c, the master node 10 begins by transmitting a cross-country call SPA (11) from the output port 11 to the node 20. The cross-country call SPA (11) is provided with an identifier identifying the output port 11 from which it is transmitted. The exclamation point SPA (II) the nodes 20 and 30 to the node 40. Since the node 40 has been forwarded by two connected outputs, the node 40 sends out its own new crossroads exclamations SPA (41) and SPA (43) from its own respective outputs, where each exclamation point identifies the exit port from which it is sent. When the master node 10 receives the exclamation point SPA (41), the output port 41 forms part of the new loop. As from the node 40 in Figure 5a, it knows that it is identified in Figure 5b. in the same way as the previous messages. When the node 40 receives the crossroads reduction message SPR (41) identifying the output port 41, it knows that the port 41 forms part of the new loop.

Noden 40 sänder då ut ett frigör-meddelande RB på den kvarvarande utporten 43. När noderna 50 och 60 sen mottar frigör-meddelandet RB, slutar de att arbeta som uppbygg- nadsslavar och kan börja söka efter andra loopar. Direkt efter att ha sänt vägskälsreduceringsmeddelandet SPR(41) sänder masternoden 10 ut ett nytt vägskälsutrop SPA(1l), såsom visas i Fig. 5c. Eftersom vägskälet vid noden 40 nu har "lösts", kommer det nya vägskälsutropet SPA(11) att sändas vidare hela vägen tillbaka till masternoden 10.Node 40 then sends a release message RB to the remaining output port 43. When nodes 50 and 60 then receive the release message RB, they stop working as build-up slaves and can start searching for other loops. Immediately after sending the cross-country reduction message SPR (41), the master node 10 sends out a new cross-country call SPA (11), as shown in Fig. 5c. Since the crossroads at node 40 has now been "solved", the new crossroads call SPA (11) will be forwarded all the way back to the master node 10.

Masternoden 10 kommer därför att fastställa att det inte finns några fler vägskäl hos loopen.The master node 10 will therefore determine that there are no more crossroads at the loop.

Ett exempel på steget S40 för uppbyggnad av loop- lista hos algoritmen för upptäck av nättopologi enligt |_\ CD 20 25 30 35 514 430 14 den föredragna utföringsformen av uppfinningen kommer nu att beskriva med hänvisning till figur 6. Under lopp- listauppbyggnadsfasen samlar masternoden in information om vilka noder, och vilka portar därav, som bildar del av den nya loopen genom utnyttjande av meddelandevidaresänd- ning. Masternoden initierar looplistauppbyggnadssteget (LB i den utport som tillhör den nya loopen. Varje slavnod genom att sända ut en tom looplista figur 6) från längs loopens väg till masternodens inport lägger till sig själv i looplistan och sänder den nya looplistan vidare till nästa nod. När looplistan när masternoden lägger mastern till sig själv till slutet av listan.An example of the loop list building step S40 of the network topology detection algorithm according to the preferred embodiment of the invention will now be described with reference to Figure 6. During the loop list building phase, the master node collects enter information about which nodes, and which ports thereof, form part of the new loop by using message forwarding. The master node initiates the loop list building step (LB in the output port belonging to the new loop. Each slave node by sending out an empty loop list figure 6) from along the loop path to the master node input adds itself to the loop list and forwards the new loop list to the next node. When the loop list reaches the master node, the master adds itself to the end of the list.

Looplistauppbyggnadssteget är nu avklarat och masternoden har fullständig kännedom om loopens topologi. Den kan då gå vidare till steget för distribution av looplistan.The loop list building step is now completed and the master node has complete knowledge of the loop topology. It can then proceed to the step of distributing the loop list.

Ett exempel på steget för distribution av looplistan hos algoritmen för upptäck av nättopologi enligt den föredragna utföringsformen av uppfinningen kommer nu att beskriva med hänvisning till figur 7. Under detta steg informerar masternoden samtliga noder som bildar del av den nya loopen om loopens topologi genom utnyttjande av meddelandevidaresändning. Samma meddelandeformat används för att distribuera looplistan som det format som använ- des under listans uppbyggnadsfas. Masternoden sänder listan från den utport som tillhör den nya loopen. Varje slavnod som mottar en looplista under distribution sänder vidare listan via den utport som tillhör samma loop som den inport som listan mottogs på. Masternoden, som ur- sprungligen sände ut looplistan, övervakar att listan kommer tillbaka via den inport som tillhör samma loop som den utport som listan sändes på. Om looplistan inte mottas inom ett förutbestämt tidsintervall, eller om ett fel detekteras av noden under looplistans distribution, sänds listan ut en gång till.An example of the step of distributing the loop list of the network topology detection algorithm according to the preferred embodiment of the invention will now be described with reference to Figure 7. During this step, the master node informs all nodes forming part of the new loop about the loop topology using message forwarding. The same message format is used to distribute the loop list as the format used during the list's construction phase. The master node sends the list from the output port belonging to the new loop. Each slave node that receives a loop list during distribution forwards the list via the output port that belongs to the same loop as the input port on which the list was received. The master node, which originally sent out the loop list, monitors that the list returns via the input port that belongs to the same loop as the output port on which the list was sent. If the loop list is not received within a predetermined time interval, or if an error is detected by the node during the distribution of the loop list, the list is sent out again.

När masternoden har mottagit den hela och korrekta looplistan i samma skick som den sändes ut i, kommer den att sluta arbeta som masternod och betrakta den nya 10 l5 20 25 30 35 514 430 15 loopen uppe och loopens tillstånd som klarlagt. När en slavnod har mottagit den hela och korrekta looplistan, kommer den på motsvarande sätt att sluta arbeta som slavnod och betrakta loopen som uppe och loopens till- stånd som klarlagt. De tidigare master- och slavnoderna fortsätter då till steget att beräkna routingtabellen.When the master node has received the complete and correct loop list in the same condition in which it was sent out, it will stop working as a master node and consider the new loop up and the condition of the loop as clarified. When a slave node has received the complete and correct loop list, it will correspondingly stop working as a slave node and consider the loop as up and the condition of the loop as cleared. The previous master and slave nodes then proceed to the step of calculating the routing table.

När en nod har mottagit och accepterat en ny loop- lista, kommer den i routingtabellberäkningssteget att använda den nya looplistan för att räkna fram en upp- daterad routingtabell baserat på de tillgängliga loopar som anses vara giltiga. Routingtabellen kommer att inne- hålla ett objekt för varje nåbar nod. Varje objekt iden- tifierar den utport som måste användas for att nå en destination samt MAC-adressen for destinationens inport.Once a node has received and accepted a new loop list, it will use the new loop list in the routing table calculation step to calculate an updated routing table based on the available loops that are considered valid. The routing table will contain an object for each reachable node. Each object identifies the output port that must be used to reach a destination and the MAC address of the destination input port.

Såsom inses av fackmannen kan ovan nämnda steg för- ändras, modifieras och/eller integreras med varandra.As will be appreciated by those skilled in the art, the above steps may be altered, modified and / or integrated with each other.

Dessutom kan steg läggas till eller tas bort baserat på önskad funktionalitet inom ramen for uppfinningens skyddsomfång, vilket definieras av de bifogade patent- kraven.In addition, steps may be added or removed based on the desired functionality within the scope of the invention, which is defined by the appended claims.

Exempelvis kan loopdetekteringssteget, vägskälsredu- ceringssteget och looplistauppbyggnadssteget enligt en alternativ utöringsform integreras till ett enda steg, varvid reglerna för hantering av loopdetekteringsmeddel- anden kan inkludera särdrag för reducering av vägskäl och uppbyggnad av looplista. En fördel med ett sådant till- vägagångssätt är att det minskar mängden meddelanden som sänds mellan noder i nätet. Å andra sidan kan det öka meddelandenas storlek och mängden meddelandebehandling hos noderna.For example, the loop detection step, the crossroads reduction step and the loop list building step according to an alternative embodiment can be integrated into a single step, whereby the rules for handling loop detection messages may include features for reducing crossroads and building a loop list. An advantage of such an approach is that it reduces the amount of messages sent between nodes in the network. On the other hand, it can increase the size of the messages and the amount of message processing at the nodes.

Enligt ett annat exempel kan andra sätt att begränsa vidaresändning av meddelanden än att utnyttja en enkel hopp-räknande mekanism användas.According to another example, other means of restricting forwarding of messages than using a simple hop counting mechanism can be used.

Baserat på uppfinningsidén kan många olika regler för hantering av topologimeddelanden användas, exempelvis för att bestämma hur och när en nod skall bli uppbygg- _nadsmaster, hur och när probmeddelanden skall sändas, hur lO 514 430 }._| CW och när nya loopar skall eftersokas, och så vidare, och uppfinningens skyddomfång är självfallet inte begränsat till den specifika utforingsform som beskrivits i detalj ovan.Based on the concept of the invention, many different rules for handling topology messages can be used, for example to determine how and when a node is to become the structure master, how and when probe messages are to be sent, how to 1014 430}. CW and when new loops are to be sought, and so on, and the scope of the invention is of course not limited to the specific embodiment described in detail above.

Beslut avseende hur uppfinningen skall realiseras och implementeras kommer således typiskt att bero av hur den specifika nättypen påverkas positivt eller negativt av aspekter såsom mängden meddelanden som sänds i nätet, meddelandenas storlek, mängden processande av meddelande, "states") och så bevarande av tillstànd ( i varje nod, vidare.Decisions regarding how the invention is to be realized and implemented will thus typically depend on how the specific network type is positively or negatively affected by aspects such as the amount of messages sent in the network, the size of the messages, the amount of processing of messages, states and the preservation of state ( in each node, further.

Claims (15)

10 15 20 25 30 35 514 450 17 PÄTENTKRAV10 15 20 25 30 35 514 450 17 CLAIMS 1. l. Ett förfarande för att fastställa topologin hos ett nät av noder som är sammankopplade via enkelriktade anslutningar, vilken metod innefattar stegen: att fastställa förekomsten av en nätloop inom nämnda nät med utnyttjande av vidaresändning av meddelanden bland nämnda noder; och att distribuera information relaterande till före- komsten av nämnda nätloop inom nämnda nät.A method of determining the topology of a network of nodes interconnected via unidirectional connections, the method comprising the steps of: determining the presence of a network loop within said network using forwarding of messages among said nodes; and distributing information related to the existence of said network loop within said network. 2. Ett förfarande enligt krav l, varvid steget att fastställa förekomsten av en nätloop innefattar stegen: att sända ett meddelande från en utport på en första nod; och att motta en vidaresänd version av meddelandet vid en inport på nämnda första nod.A method according to claim 1, wherein the step of determining the presence of a network loop comprises the steps of: sending a message from an output port on a first node; and receiving a forwarded version of the message at an input on said first node. 3. Ett förfarande enligt krav 1 eller 2, varvid steget att fastställa förekomsten av en nätloop inne- fattar steget att motta ett meddelande vid en inport på en nod och att sända meddelandet vidare från en eller flera av nodens utportar,A method according to claim 1 or 2, wherein the step of determining the presence of a network loop comprises the step of receiving a message at an input port on a node and transmitting the message from one or more of the node outputs, 4. Ett förfarande enligt något föregående krav, varvid steget att distribuera information relaterande till förekomsten av nämnda nätloop innefattar att använda vidaresändning av meddelanden för att distribuera nämnda information.A method according to any preceding claim, wherein the step of distributing information related to the existence of said network loop comprises using forwarding of messages to distribute said information. 5. Ett förfarande enligt något föregående krav, varvid nämnda information innefattar information om vilka noder som bildar del av nämnda nätloop.A method according to any preceding claim, wherein said information comprises information about which nodes form part of said network loop. 6. Ett förfarande enligt något föregående krav, varvid nämnda information innefattar information om vilka portar som bildar del av nämnda nätloop. 10 ,_| UI 20 35 514 430 l8A method according to any preceding claim, wherein said information comprises information about which ports form part of said network loop. 10, _ | UI 20 35 514 430 l8 7. Ett förfarande enligt något föregående krav, innefattande stegen: att sända två eller fler meddelanden från respektive två eller fler utportar på en nod, vilka vart och ett identifierar den respektive utport som används för sändning därav; och att motta ett meddelande som hänför sig till ett av nämnda två eller fler meddelanden, på så sätt identifie- rande vilken av nämnda två eller fler utportar på nämnda nod som bildar del av nämnda nätloop.A method according to any preceding claim, comprising the steps of: sending two or more messages from the respective two or more outputs on a node, each of which identifies the respective output port used for transmission thereof; and receiving a message relating to one of said two or more messages, thus identifying which of said two or more ports on said node forms part of said network loop. 8. Ett förfarande enligt något föregående krav, innefattande stegen: att sända ett meddelande från en utport på en första nod; att motta nämnda meddelande, som sådant eller i en vidaresänd version, vid en inport på en andra nod; att sända två eller fler modifierade versioner av nämnda meddelande från två eller fler respektive utportar på nämnda andra nod, vilka modifierad versioner var och en identifierar den respektive utport som används för sändning därav; att motta en av nämnda modifierade versioner av nämnda meddelande vid nämnda första nod, på så sätt identifierande vilken av nämnda två eller fler utportar som bildar del av nämnda nätloop; och att sända ett meddelande från nämnda första nod till nämnda andra nod, identifierande den utport på nämnda andra nod som bildar del av nämnda nätloop.A method according to any preceding claim, comprising the steps of: sending a message from an output port on a first node; receiving said message, as such or in a forwarded version, at an input on a second node; sending two or more modified versions of said message from two or more respective ports on said second node, each modified version identifying the respective port used for transmission thereof; receiving one of said modified versions of said message at said first node, thus identifying which of said two or more outputs forms part of said network loop; and sending a message from said first node to said second node, identifying the output port on said second node which forms part of said network loop. 9. Ett förfarande enligt något föregående krav, varvid vidaresändning av ett meddelande innefattar steget att i meddelandet inkludera information relaterande till identiteten på den vidaresändande nöden. 10 15 20 25 30 35 5-14 450 19A method according to any preceding claim, wherein forwarding a message comprises the step of including in the message information related to the identity of the forwarding emergency. 10 15 20 25 30 35 5-14 450 19 10. Ett förfarande enligt något föregående krav, varvid vidaresändning av ett meddelande innefattar steget att i meddelandet inkludera information relaterande till identiteten på den utport från vilken nämnda meddelande sänds.A method according to any preceding claim, wherein forwarding a message comprises the step of including in the message information related to the identity of the port from which said message is sent. 11. Ett system för fastställande av topologin hos ett nät av noder som är sammankopplade via enkelriktade anslutningar, innefattande en första nod som är anordnad att sända ett meddelande från an av sina utportar, att fastställa förekomsten av en nätloop inom nämnda nät genom att fastställa mottagande av en vidaresänd version av nämnda meddelande vid en av sina inportar, och att som en följd av detta distribuera information relaterande till förekomsten av nämnda nätloop till noder inom nämnda nät.A system for determining the topology of a network of nodes interconnected via unidirectional connections, comprising a first node arranged to send a message from one of its ports, to determine the presence of a network loop within said network by determining reception of a forwarded version of said message at one of its inputs, and as a result distributing information related to the existence of said network loop to nodes within said network. 12. Ett system enligt krav 11, innefattande en eller flera andra noder som är anordnade att vidaresända nämnda meddelande på en eller flera av sina utportar vid motta- gande av nämnda meddelande på en av sina inportar.A system according to claim 11, comprising one or more other nodes arranged to forward said message on one or more of their outputs upon receipt of said message on one of their inputs. 13. Ett system enligt krav 11 eller 12, varvid nämnda noder är anordnade att distribuera nämnda informa- tion relaterande till förekomsten av nämnda nätloop genom utnyttjande av vidaresändning av meddelanden.A system according to claim 11 or 12, wherein said nodes are arranged to distribute said information related to the existence of said network loop by utilizing forwarding of messages. 14. Ett system enligt något av kraven ll-13, varvid en nod som har två eller fler utportar är anordnad att sända två eller fler respektive meddelanden från respek- tive utportar, vilka meddelanden vart och ett identifie- rar den respektive utport som meddelandet sänds från och på så sätt möjliggör senare fastställande av vilken av nämnda två eller fler utportar på nämnda nöd som bildar del av nämnda nätloop. 10 15 514 450 20A system according to any one of claims 11-13, wherein a node having two or more ports is arranged to send two or more respective messages from respective ports, each message identifying the respective port to which the message is sent. from and in this way enables later determination of which of said two or more outputs on said distress forms part of said network loop. 10 15 514 450 20 15. Ett system enligt något av kraven ll-14, inne- fattande: den första noden anordnad att sända ett först meddel- ande; en andra nod anordnad att motta nämnda meddelande, som sådant eller i en vidaresänd version, och att sända två eller fler modifierade versioner av nämnda meddelande från två eller fler respektive utportar, vilka modifie- rade versioner var och en identifierar den respektive utport som används for sändning därav, varvid nämnda först nod är anordnad att identifiera vilken av nämnda två eller fler utportar på nämnda andra nod som bildar del av nämnda nätloop genom att fastställa mottagande av en av nämnda modifierade versioner av nämnda meddelande vid nämnda första nod och att som följd därav sända ett meddelande till nämnda andra nod identi- fierande den utport på nämnda andra nod som bildar del av nämnda nätloop.A system according to any one of claims 11-14, comprising: the first node arranged to send a first message; a second node arranged to receive said message, as such or in a forwarded version, and to send two or more modified versions of said message from two or more respective output ports, each modified version identifying the respective output port used for transmitting thereof, said first node being arranged to identify which of said two or more outputs on said second node forms part of said network loop by determining reception of one of said modified versions of said message at said first node and as a consequence send a message to said second node identifying the output port of said second node which forms part of said network loop.
SE9804023A 1998-11-24 1998-11-24 Method and system for determining network topology SE514430C2 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
SE9804023A SE514430C2 (en) 1998-11-24 1998-11-24 Method and system for determining network topology
KR1020017006516A KR20010082312A (en) 1998-11-24 1999-11-23 Methods and systems for determining network topology
AU20117/00A AU2011700A (en) 1998-11-24 1999-11-23 Methods and systems for determining network topology
EP99963744A EP1127430A1 (en) 1998-11-24 1999-11-23 Methods and systems for determining network topology
JP2000584644A JP2002531003A (en) 1998-11-24 1999-11-23 Method and system for determining network topology
PCT/SE1999/002169 WO2000031925A1 (en) 1998-11-24 1999-11-23 Methods and systems for determining network topology

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SE9804023A SE514430C2 (en) 1998-11-24 1998-11-24 Method and system for determining network topology

Publications (3)

Publication Number Publication Date
SE9804023D0 SE9804023D0 (en) 1998-11-24
SE9804023L SE9804023L (en) 2000-06-06
SE514430C2 true SE514430C2 (en) 2001-02-26

Family

ID=20413394

Family Applications (1)

Application Number Title Priority Date Filing Date
SE9804023A SE514430C2 (en) 1998-11-24 1998-11-24 Method and system for determining network topology

Country Status (6)

Country Link
EP (1) EP1127430A1 (en)
JP (1) JP2002531003A (en)
KR (1) KR20010082312A (en)
AU (1) AU2011700A (en)
SE (1) SE514430C2 (en)
WO (1) WO2000031925A1 (en)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7406034B1 (en) 2002-04-01 2008-07-29 Cisco Technology, Inc. Methods and apparatus for fibre channel frame delivery
US7616637B1 (en) 2002-04-01 2009-11-10 Cisco Technology, Inc. Label switching in fibre channel networks
WO2003088547A2 (en) * 2002-04-08 2003-10-23 Airmagnet, Inc. Monitoring a local area network
US8605623B2 (en) 2002-05-31 2013-12-10 Koninklijke Philips N.V. Determining and configuring a communication path in a network
US7206288B2 (en) * 2002-06-12 2007-04-17 Cisco Technology, Inc. Methods and apparatus for characterizing a route in fibre channel fabric
CN1321530C (en) * 2005-04-12 2007-06-13 四川汇源科技发展股份有限公司 Method in use for determining topological structure of cable TV HFC network
WO2007073627A1 (en) * 2005-12-29 2007-07-05 Zte Corporation A method for fast forwarding message and a system thereof
CN101064631A (en) * 2006-04-25 2007-10-31 华为技术有限公司 Method and system for scanning topological structure
CN101399757B (en) 2007-09-25 2011-02-02 华为技术有限公司 Method and device for tracing time clock source
US7940029B2 (en) 2008-07-02 2011-05-10 American Superconductor Corporation Static VAR corrector
US10861504B2 (en) 2017-10-05 2020-12-08 Advanced Micro Devices, Inc. Dynamic control of multi-region fabric
US10558591B2 (en) 2017-10-09 2020-02-11 Advanced Micro Devices, Inc. Method and apparatus for in-band priority adjustment forwarding in a communication fabric
US11196657B2 (en) * 2017-12-21 2021-12-07 Advanced Micro Devices, Inc. Self identifying interconnect topology
US11507522B2 (en) 2019-12-06 2022-11-22 Advanced Micro Devices, Inc. Memory request priority assignment techniques for parallel processors
US11223575B2 (en) 2019-12-23 2022-01-11 Advanced Micro Devices, Inc. Re-purposing byte enables as clock enables for power savings
CN112671890B (en) * 2020-12-21 2023-04-07 深圳云天励飞技术股份有限公司 Network connection device and network system
CN114221859B (en) * 2022-01-06 2023-12-01 烽火通信科技股份有限公司 Tenant network physical link connectivity topology generation method and system

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4287592A (en) * 1979-05-23 1981-09-01 Burroughs Corporation Method and apparatus for interfacing stations in a multiloop communications system
BE895438A (en) * 1982-12-22 1983-06-22 Bell Telephone Mfg COMMUNICATION SYSTEM WITH MULTIPLE RINGS
JPH0767112B2 (en) * 1983-12-23 1995-07-19 株式会社日立製作所 Communication network system
US5440540A (en) * 1992-03-26 1995-08-08 Kremer; Wilhelm Ring interworking between a bidirectional line-switched ring transmission system and another ring transmission system
US5732086A (en) * 1995-09-21 1998-03-24 International Business Machines Corporation System and method for determining the topology of a reconfigurable multi-nodal network
AUPN573795A0 (en) * 1995-10-02 1995-10-26 Telefonaktiebolaget Lm Ericsson (Publ) Transmitting data between multiple computer processors
GB9601692D0 (en) * 1996-01-27 1996-03-27 Newbridge Networks Corp Network with ring architecture

Also Published As

Publication number Publication date
AU2011700A (en) 2000-06-13
JP2002531003A (en) 2002-09-17
WO2000031925A1 (en) 2000-06-02
EP1127430A1 (en) 2001-08-29
KR20010082312A (en) 2001-08-29
SE9804023D0 (en) 1998-11-24
SE9804023L (en) 2000-06-06

Similar Documents

Publication Publication Date Title
SE514430C2 (en) Method and system for determining network topology
US20200389392A1 (en) Packet Sending Method, Router, and Service Switching Entity
US7805537B2 (en) Method and apparatus for flooding link state packets to achieve faster convergence
US6304575B1 (en) Token ring spanning tree protocol
EP2880826B1 (en) Label distribution and route installation in a loop-free routing topology using routing arcs
US6628661B1 (en) Spanning tree recovery in computer networks
EP2883334B1 (en) Techniques for flooding optimization for link state protocols in a network topology
US8625466B2 (en) Multi-card network device appearing as single entity in spanning tree network
JP2001251343A (en) Label switch network system
JP5191494B2 (en) Method for calculating spanning tree based on link state advertisement (LSA), bridge and computer network
EP3364611B1 (en) Software-defined-networking table-entry generation and packet forwarding
WO2016206620A1 (en) Message forwarding
EP3934183A1 (en) Service function chain sfc-based communication method, and apparatus
JPH02149039A (en) Multi-cast-message distribution system
JP2010517351A (en) Method and apparatus for network tree management
EP3136662B1 (en) Construction method, device and system for multi-path forwarding rules
US9590890B2 (en) Transfer apparatus, server, and route changing method
JP2007142609A (en) Path routing setting system and method thereof, and node and program used therefor
CN106230717B (en) Route obtaining method and device in cluster system
US6973028B1 (en) SONET ring map generation method and system
EP4113917A1 (en) Controller, network system, and flow management method
CN112840623B (en) Data message transmission method and node
JP2011066536A (en) Route control device
WO2023082706A1 (en) System and method for processing message, and network apparatus
WO2022213830A1 (en) Method and apparatus for determining path

Legal Events

Date Code Title Description
NUG Patent has lapsed