KR20010082312A - 네트워크 토폴로지를 결정하는 방법 및 시스템 - Google Patents

네트워크 토폴로지를 결정하는 방법 및 시스템 Download PDF

Info

Publication number
KR20010082312A
KR20010082312A KR1020017006516A KR20017006516A KR20010082312A KR 20010082312 A KR20010082312 A KR 20010082312A KR 1020017006516 A KR1020017006516 A KR 1020017006516A KR 20017006516 A KR20017006516 A KR 20017006516A KR 20010082312 A KR20010082312 A KR 20010082312A
Authority
KR
South Korea
Prior art keywords
node
message
link
topology
output port
Prior art date
Application number
KR1020017006516A
Other languages
English (en)
Inventor
마그너스 다니엘슨
마티아스 홀름룬드
스테판 테시에르
Original Assignee
추후보정
네트 인사이트 에이비
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 추후보정, 네트 인사이트 에이비 filed Critical 추후보정
Publication of KR20010082312A publication Critical patent/KR20010082312A/ko

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

본 발명은 단방향 접속을 통하여 상호 접속된 네크워크 노드의 토폴로지를 결정하는 방법 및 시스템에 관한 것이다. 본 발명을 따르면, 상기 네크워크의 네크워크 루프는 상기 노드들 사이에서 메세지 포워딩을 사용하여 결정되며, 그 결과 상기 네크워크 루프와 연관된 정보는 상기 네트워크내의 노드에 할당된다.

Description

네트워크 토폴로지를 결정하는 방법 및 시스템 {METHODS AND SYSTEMS FOR DETERMINING NETWORK TOPOLOGY}
통신 네트워크는 워크 스테이션, 전화기, 데이터 저장 장치, 프린터, 서버, 스위치, 라우터, 허브등과 같은 다수의 상호 접속 요소 또는 노드를 포함하는 데이터 처리 시스템이다. 노드의 포트는 접속에 의해 상호 접속되며, 상기 접속시에 다른 노드에서 포트로부터 메세지를 수신하거나, 다른 노드에서 포트로 메세지를 전송함으로써 통신한다.
메세지를 전송하거나 목적하는 수신기에 할당된 채널을 셋업하는 방법과 같은, 네트워크의 선택된 목적지에 도달하는 방법을 노드에 알려주기 위해, 네크워크 또는 적어도 네트워크의 로컬부의 구조 또는 구성으로서 참조되는 토폴로지를 노드로 하여금 알게할 필요가 있다. 이 정보는 메뉴얼 구성을 사용하여 네크워크의 하나 이상의 노드에 제공되거나, 자동화된 서로 다른 방식을 이용하여 제공될 수 있으며, 상기 방식은 자신의 네트워크 토폴로지를 조작하는 네크워크의 노드를 갖는 다.
각각의 노드에 네크워크 토폴로지의 정보를 제공하는 한가지 방식은 예를 들어 미국 특허 번호 제 5,654,958 호(Natarajan)에 개시된 바와 같이 중심 소스가 네크워크의 다른 모든 노드에 네크워크의 맵을 제공하게 되는 중앙 집중식안을 사용하는 것이다. 이 솔루션의 단점은 네트워크 토폴로지의 각각의 변화가 중앙 소스의 주의를 일으키며, 만일 이러한 변화가 다른 노드의 주의를 끌어 자동으로 중앙 소스 및 네크워크 노드 사이의 시그널링 오버헤드를 추가한다면, 중앙 소스에 의해 어드레싱된다는 것이다. 또한 만일 중앙 소스가 다운된다면, 네트워크 토포롤지의 업데이팅인 일시적으로 사용할 수 없게 된다.
네크워크 토폴로지에 대한 정보를 각각의 노드에 공급하는 다른 방법은 로컬 네트워크에 연관된 정보를 포함하는 메세지가 네트워크의 노드들 사이에서 변경되는 분산안을 사용하는 것이다. 수신된 토폴로지 메세지를 기초로, 각각의 노드는 네크워크 자신의 맵 또는 적어도 이의 로컬부의 맵을 생성 및 유지할 것이다.
미국 특허 번호 제 5,682,479 호(Newhall등)에는 상기 솔루션의 예가 개시되어 있으며, 본 문서에서 각각의 네트워크 노드는 여러 지정된 방향으로 네크워크를 통하여 벡터 라우팅된 패킷을 전송하도록 배치된다. 상기 각각의 패킷은 그 방식과 함께 네크워크 토폴로지에 대한 정보를 수집한다. 이 패킷은 다음으로 수집된 정보와 함께 시작 노드에 복귀한다.
미국 특허 번호 제 5,506,838 호(Flanagan)에는 소위 전개 패킷들이 네크워크내의 링크로부터 링크로 포워딩되어 네크워크 토폴로지에서의 네크워크 노드에 대하여 알려주는 유사한 솔루션이 개시되어 있다.
다른 예로서 미국 특허 번호 제 5,732,086 호(Sonchyay등)에는 그 이웃을 가지는 각각의 노드 변경 메세지에 의하여 네크워크의 재구성 가능 토폴로지를 결정하는 방법에 대하여 개시하고 있다.
또 다른 예로서 미국 특허 출원 번호 GB 2,133,952 호에는 다중 링 링크 토폴로지에서 접속된 네크워크 노드의 토폴로지를 지원하는 방법이 개시되어 있다.
상술한 종래 기술의 단점은 미리 결정된 타입의 링크를 이용하여 각각의 노드가 상호 접속되는 한계를 가지는 것이며, 상기의 타입은 예를 들면 네크워크의 노드들이 링 링크만으로 접속되거나 또는 이를 요구하는 양방향 점대점 접속을 통하여 상호 접속되는 것을 요구한다. 상기의 한계는 각 계획안의 디자인을 단순화시키는 장점을 가지지만, 또한 계획안에 대한 응용성을 제한하는 부정적인 효과도 가진다.
여러 개의 서로 다른 종류의 링크 타입이 존재하는 네트워크에서는 네트워크 토폴로지를 자동으로 결정하는 작업은 더욱 어렵다. 예를 들어 소위 DTM(다이나믹 동기 전송 모드) 네크워크에서, 포트들은 점대점 링크(두개의 단방향 점대점 접속), 단일 링 링크(하나의 단방향 링 링크에 의해 각각 형성됨), 듀얼 링 링크(두개의 단방향 링 링크에 의해 각각 형성됨), 또는 듀얼 버스 링크(두개의 단방향 버스 링크에 의해 각각 형성됨)를 형성하기 위해 단방향 접속을 통하여(전통적으로 광섬유) 접속되며, 뒤쪽의 세개 링크 타입은 다중 액세스 공유 링크이다.
따라서 본 발명의 목적은 여러 종류의 링크 타입이 네크워크에 존재할 수 있으며 양방향 점대점 접속만을 따르지는 않는 네크워크 토폴로지를 결정하는 단순한 분산 계획안을 제공하는 것이다.
다른 목적은 네트워크 토폴로지를 결정하기 위해 네트워크안에서 전송되는 메세지의 양이 작게 유지되는 계획안을 제공하는 것이다.
본 발명은 단방향 접속에 의하여 상호 접속된 포트를 가지는 네트워크 노드의 재구성 가능한 토폴로지를 결정하는 방법 및 시스템에 관한 것이다. 본 발명은 특히 여러 개의 서로 다른 종류의 토폴로지가 네트워크내에서 허용되는 네트워크 환경에서 이용될 수 있다.
도 1a-1c는 서로 다른 종류의 링크 타입을 기초로 하는 네크워크를 도시한다.
도 2는 본 발명의 실시예를 따르는 토폴로지 전개 처리과정의 흐름도를 도시한다.
도 3-5는 도 2에 도시된 바와 같이 토폴로지 전개 처리과정을 따르는 네크워크의 노드 사이에서 메세지를 교환하는 방법을 도시한다.
도 6은 본 발명의 다른 실시예를 따르는 토폴로지 전개과정에 관한 흐름도를 도시한다.
도 7a-7c는 도 6에 도시된 예시적인 토폴로지 전개 처리과정을 따르는 네크워크의 노드 사이에서 메세지를 교환하는 방법을 도시한다.
도 8a는 예시적인 네크워크 노드의 성분들의 블록도이다.
도 8b 및 8c는 도 8a의 노드의 메모리에 저장된 토포롤지 정보를 도시한다.
본 발명에 따라, 단방향 접속에 의하여 상호 접속된 포트를 가지는 네트워크 노드내의 루프는 메세지 포워딩을 사용하여 결정된다. 상기 루프를 결정함으로써 획득된 정보는 네크워크의 노드에 할당된다.
따라서 본 발명은 네크워크 루프와 관련하는 네크워크에 대한 아이디어(적어도 네트워크 토폴로지가 결정되었을 때)를 기초하며, 토폴로지를 결정하고 식별하며, 상기 루프를 기초로 해당 정보를 할당한다.
바람직한 실시예에 따라, 네크워크의 노드는 소위 토폴로지 전개 메세지 또는 프로브 메세지로서 참조되는 메세지를 출력 포트로부터 전송할 것이며, 다음으로 입력 포트에서 상기 메세지의 포워딩 또는 응답 버젼의 수신을 결정하여 네트워크 루프의 존재를 나타낼 수 있다. 게다가, 토폴로지 전개 메세지를 수신하는 네트워크의 각 노드는 바람직하게 출력 포트의 적어도 하나에, 전형적으로는 이 모두에 상기 메세지를 포워딩 또는 응답하도록 배치된다.
바람직하게, 각각의 또는 적어도 다수의 네트워크 노드는 이러한 종류의 메세지를 전송 및 검색하도록 배치될 것이다. 게다가, 바람직하게 네트워크의 모든노드는 상기 메세지에 포워딩 또는 응답하도록 배치될 것이다.
본 발명에서 이해되는 바와 같이, 분산 제어 기능이 통합된 대부분의 네트워크에서, 심지어 여러 종류의 링크 타입이 동일 네트워크에서 존재할 수 있는 네크워크에서, 제 1 노드 및 제 2 노드 사이의 단방향 접속은 일반적으로 제 2 노드로부터 제 1 노드로 여러 종류의 통신 노드가 존재하는 경우 유효한 링크 또는 토폴로지의 일부를 형성할 것이다. 즉, 이론적인 도면을 보면 제 1 노드에서 제 2 노드로 그리고 다시 제 1 노드로 복귀하는 루프를 형성하는 라인을 단방향 접속/링크의 방향으로 하는 것이 가능하다.
루프를 결정함에 따라, 이에 포함된 정보는 네크워크의 노드, 전형적으로는 상기 네크워크 루프의 적어도 일부를 형성하는 노드에 할당되지만 또한 네크워크의 다른 노드, 즉 상기 루프의 일부를 형성하지 않는 노드가 가능하다. 일 실시예에 따라, 이는 상기 네크워크 루프의 일부를 형성하는 것이 어떤 노드이며 어떤 포트인지에 대한 정보를 할당하는 것을 포함하며, 상기 정보의 생성 및 할당은 바람직하게 메세지 포워딩을 사용하여 수행된다. 다른 실시예에 따라, 이는 유효한 접속이 존재하는 이웃 노드를 알려주는 것을 포함한다.
이상적으로, 하나의 단일하고 상당히 작은 메세지를 이용하여 전송 및 포워딩/응답하는 것은 네크워크 루프를 결정하기에 충분할 것이다. 유리하게, 상기의 루프는 심지어 네트워크 보다 특정해서는 이와 같은 루프가 다수의 점대점 접속을 포함할지라도 결정될 것이며, 상기의 접속은 어떤 경우에 있어서 종래 기술에 있어서는 불가능했던 양방향 접속을 가지지 않는다.
바람직한 실시예에 따라, 두개 이상의 출력 포트를 가지지만 아직까지는 특정 네트워크의 일부분으로서 상기 출력 포트중 어떤 것인지가 결정되지 않은 노드가 각각의 출력 포트로부터 두개 이상의 개별 메세지를 전송하도록 배치되며, 각각의 메세지는 이의 전송에 사용되는 각각의 출력 포트(때로 "응답 포트"로서 참조됨)를 식별하며, 따라서 상기 네크워크 루프의 일부를 형성하는 상기 노드의 두개 이상의 출력 포트중 어느 것인지를 연속적으로 결정할 수 있다. 예를 들어, 두개 이상의 서로 다른 메세지를 전송하는 것은 토폴로지 전개 메세지(프로브 메세지)의 수신에 의해 초기화될 수 있거나 전송 노드 자체에 의하여 초기화될 수 있다.
네크워크의 노드에 의해 수행된 단계들로서 표현하는 경우, 상기 실시예의 특정 예는 다음과 같은 단계들을 포함한다. 즉, 제 1 노드의 출력 포트로부터 메세지를 전송하는 단계; 제 2 노드의 출력 포트에서 포워딩 버젼으로서 상기 메세지를 수신하는 단계; 상기 제 2 노드의 각각의 두개 이상의 출력 포트로부터 상기 메세지의 두개 이상의 수정된 버젼(포워드 버젼 또는 응답 버젼)을 전송하는 단계를 포함하며, 상기 수정된 버젼은 이의 전송을 위해 사용된 개별 출력 포트를 식별하며; 상기 제 1 노드에서 상기 메세지의 상기 수정된 버젼중 적어도 하나를 수신하는 단계를 포함하며, 따라서 상기 네크워크 루프의 일부를 형성하는 상기 두개 이상의 출력 포트중 하나를 식별하며; 상기 제 1 노드로부터 상기 제 2 노드로 메세지를 전송하는 단계를 포함하며, 상기 메세지는 상기 네크워크 루프의 일부를 형성하는 상기 제 2 노드의 출력 포트를 식별한다.
주목할 만한 점은, 제 2 노드에서의 여러 포트들이 제 1 메세지의 송신자로다시 돌아가는 경로를 제공할 수 있다는 것이다. 예를 들어, 만일 제 1 노드 및 제 2 노드가 모두 동일한 듀얼 링 링크에 접속되었다면, 제 2 노드로부터 제 1 노드로의 전개 경로가 존재할 것이며, 하나는 접속시 전송된 제 1 메세지가 접속되는 출력 포트와 동일한 단방향 링을 따르며, 다른 하나는 다른 단방향 링을 따르는 반대 방향이다. 그러나 만일 두개의 노드가 동일한 단일 링 링크 또는 듀얼 버스 링크의 일부를 형성한다면, 제 2 노드의 단지 일 포트만이 시작 노드로 다시 복귀하는 경로를 제공할 것이다(다른 링크를 가로 지르는 어떠한 경로도 가능하지 않다.).
또한 주목할 만한 점은, 결정된 응답 포트는 응답 노드가 일반적으로 시작 노드에 데이터를 전송하기 위해 사용되는 포트가 될 필요는 없다는 것이다. 이는 단순히 응답 노드가 시작 노드의 위로 제어 메세지, 특히 프로브된 접속에 관한 제어 메세지(또는 접속에 의해 그 일부가 형성되는 링크)를 전송하는데 일반적으로 사용되는 포트중 하나를 선택하는 것이다.
따라서 본 발명의 장점은 제 1 노드가 접속에 의해 그 일부가 형성되는 링크의 종류를 알지못한 채 제 2 노드로의 유효 접속이 존재하는 것을 결정할 수 있다는 것이다. 유사하게, 제 2 노드는 유효 접속에 대한 정보를 획득할 수 있으며, 제 1 노드에 도달하는 방법이나 메세지 교환에 관련된 링크의 정확한 타입을 알지못한 채 제 1 노드로의 응답이 가능하다.
본 발명의 다른 실시예를 따르면, 단방향 접속에 의해 그 일부가 형성되는, 다중 액세스 링크에 접속된 노드에 대한 정보를 제공하는 링크 토폴로지 메세지는링크의 일 노드로부터 다른 노드로 전달되고, 각각의 노드는 링크의 아랫쪽 노드에 도달하기 위해 링크의 일부를 형성하는 출력 포트/접속을 이용하며, 또한 링크의 위쪽 노드에 도달하기 위해 응답 포트(전형적으로 상술한 계획안을 이용하여 식별되며 , 토폴로지 메세지를 포함하는 실제 링크의 일부이거나 그렇지 않은)를 이용한다.
본 발명의 다른 실시예를 따르면, 결정된 네크워크의 일부를 형성하는 포트 및 노드에 관한 정보는 메세지 포워딩을 사용하여 생성된다. 예를 들어 수신된 토폴로지 전개 메세지 또는 이의 포워딩 또는 응답 버젼에 대한 각각의 노드 포워딩 또는 응답은 포워딩/응답 노드, 전형적으로는 상기 메세지로의 출력 포트의 식별에 관련된 정보를 포함할 것이다. 상기 방식으로 형성된 루프 정보는 다음으로 바람직하게 메세지 포워딩을 이용하여 상기 루프를 형성하는 노드에 분산될 수 있다.
본 명세서에 사용된 것처럼, 인터페이스는 일반적으로 노드의 입력 포트 및 출력 포트에 의해 정의된다. 노드가 다중 액세스 링 또는 버스 링크에 접속되었을 때, 동일한 인터페이스의 입력 포트 및 출력 포트를 사용하여 링크에 접속된다. 유사하게, 동일한 인터페이스에 접속된 두개의 접속은 일반적으로 양방향 점대점 링크, 단방향 버스 링크 또는 단방향 링 링크와 같은 동일 링크의 일부를 형성하기 위해 본 명세서에서 고려된다. 주목할 만한 점은, 단방향 단일 버스 링크는 일반적으로 이와 같기 때문에(즉, 만일 임의의 다른 접속이 부족하다면) 무효 링크를 형성하는 것으로 보아야 한다. 왜냐하면 만일 다른 접속/링크들이 확장된 토폴로지(예를 들면 단일 버스 링크를 단일 링 링크로 복귀시키는 듀얼 버스 링크)를 형성하기 위해 추가되지 않는다면, 아랫쪽 노드가 링크의 위쪽 노드에 메세지를 전송할 필요가 없기 때문이다.
본 발명은 여러 네크워크 타입에 이용될 수 있지만, 기본적으로 상술한 이유로 인해 특히 링, 버스외에 점대점 링크와 같은 여러 종류의 링크 타입을 가능하게 하는 DTM 네크워크와 같은 네트워크에서 유리하다. DTM 네크워크에서의 보다 많은 정보는 예를 들면 "The DTM Gigabit Network", Christer Bohm, Per Lindgren, Lars Ramfelt, 및 Peter Sjoedin, 고속 네트워킹 저널, 3(2): 109-126, 및 "Multi-gigabit networking based on DTM", Lars Gauffin, Lars Haekansson, 및 Bjoern Pehrson, 컴퓨터 네크워크 및 ISDN 시스템, 24(2):119-139, 4월 1992에 개시되어 있다.
상기 루프를 결정하며 루프의 일부를 형성하는, 적어도 하나의 노드에 포함된 토폴로지 정보를 할당하는 네크워크 루프에 관련된 네크워크를 검색하는 솔루션은 진보성을 포함하는 진보적인 아이디어를 명백하게 형성한다.
본 발명은 도면을 참조로 이하에서 상세하게 설명된다.
도 1a-1c는 서로 다른 종류의 링크 타입을 기초로 하는 네크워크의 동작이 가능한 노드(10,20,30)를 도시한다. 도시된 바와 같이, 노드(10)는 두개의 노드를 포함하며, 하나는 출력 포트(11) 및 입력 포트(12)를 가지고, 다른 하나는 출력 포트(13) 및 입력 포트(14)를 가진다. 유사한 인터페이스 및 포트가 노드(20,30)에 존재한다.
도 1a에서, 노드(10,20,30)는 상호 접속된 듀얼 버스 링크를 형성하기 위해 단방향 접속(101,102,103,104)을 통하여 상호접속된다.
상기 접속(101,102)은 모두 제 1 단방향 버스 상호접속 노드(10,20,30)를 형성하며, 노드 10은 버스의 헤드부로서 동작하며 노드 30은 종결부로서 동작한다. 접속 103 및 104는 노드(10-30)를 상호 접속하는 제 2 단방향 버스를 형성하며, 노드 30은 이 경우 헤드부로서 동작하며, 노드 310은 종결부로서 동작한다. 접속 101-104에 의해 형성된 버스 링크는 더블 버스 링크를 형성한다. 또한 노드(10),노드 10의 출력 포트 11로부터 노드 20의 입력 포트 22로의 접속(101), 노드(20), 및 노드 20의 출력 포트 22로부터 노드 10의 입력 포트 14로의 접속(104)는 모두 반원형 점선 화살표에 지시된 바와 같이 네크워크 루프를 형성하는 것으로 도시된다. 유사하게, 노드(20), 노드 20으로부터 노드 30으로의 접속(102), 노드(30) 및 노드(30)으로부터 노드(20)으로의 접속(103)은 모두 다른 네크워크 루프(32)를 형성하는 것으로 도시된다. 따라서 더블 버스 링크는 세개의 연속적인 네크워크 루프(31-33)에 의해 구축되는 것으로 도시된다. 유사하게, 상기 제 2 더블 버스 링크는 두개의 연속적인 네크워크 루프(34,35)에 의해 구축될 것이다.
도 1b에서, 노드(10,20,30)는 링 링크를 형성하기 위해 단방향 접속(105,106,107)를 통하여 상호접속된다. 이 경우, 링 토폴로지는 도면의 중앙에서 반원형 점선 화살표에 의해 지시된 바와 같이 모두 세개의 노드를 포함하는 하나의 네트워크 루프를 형성하는 것으로 도시된다.
도 1a 및 1b에 도시된 바와 같이, 다중 액세스 공유 링크를 형성하도록 접속되었을 때, 노드는 전형적으로 단일 인터페이스의 출력 및 입력 포트를 사용하여 링크에 접속된다.
세개의 예에서처럼, 도 1c에서, 노드(10,20,30)는 두개의 양방향 점대점 링크열을 형성하기위해 단방향으로 상호접속되며, 노드의 인터페이스의 두 포트는 다르 노드의 인터페이스의 두포트에 상호접속된다. 그러나 단방향 점대점 링크를 형성하는 접속은 반원형 점선 화살표로 도시된 바와 같이 작은 네트워크 루프를 형성하는 것으로 도시된다.
본 발명의 실시예를 따르는 토폴로지 전개 처리과정의 흐름도는 도 2를 참조로 기술될 것이다. 주지한 바와 같이, 상기 토폴로지 전개 알고리즘의 주 목적은 도 1a-1c에 도시된 종류의 네트워크 루프 존재를 결정하며, 각각의 네트워크 루프의 일부를 형성하는 노드와 연관된 정보를 제공하는 것이다.
도 2를 참조로, 토폴로지 전개 알고리즘은 로프 탐색 단계(S10), 매스터 선언 단계(S20), 스플릿-포인트 감소 단계(S30), 루프 리스트 구축 단계(S40), 루프 리스트 할당 단계(S50) 및 라우트 테이블 계산 단계(S60)를 포함한다. 도 2의 각각의 단계는 도 3-5에 도시된 네크워크를 참조로 기술될 것이며, 상기 네크워크는 여섯개의 노드(10,20,30,40,50,60)을 포함한다. 이 예에서는 단순하게 단지 하나의 노드(10)는 입력 포트(12) 및 출력 포트(11)에 의해 정의된 인터페이스를 가지며, 노드(20,30,50,60)는 각각 하나의 해당 인터페이스를 가지는 반면, 노드(40)는 두개의 인터페이스를 포함하는 것으로 가정하고, 그 하나는 출력 포트(41)과 입력 포트(2)로서 정의되고, 나머지는 출력 포트(43) 및 입력 포트(44)로서 정의된다.
도 3-5에 도시된 바와 같이, 노드(10)의 출력 포트(11)는 노드(20)의 입력 포트(22)에 단방향 접속을 통하여 접속되고, 노드(20)의 출력 포트(21)는 노드(30)의 입력 포트(32)에 단방향 접속을 통하여 접속되며, 노드(30)의 출력 포트(31)는 노드(40)의 입력 포트(42)에 단방향 접속을 통하여 접속되며, 노드(40)의 출력 포트(41)는 노드(10)의 입력 포트(12)에 단방향 접속을 통하여 접속되며, 이 모두는 제 1 단일 링 링크를 형성한다. 게다가 노드(40)의 출력 포트(43)는 노드(50)의 입력 포트(52)에 단방향 접속을 통하여 접속되며, 노드(50)의 출력 포트(51)는 노드(60)의 입력 포트(62)에 단방향 접속을 통하여 접속되며, 노드(60)의 출력 포트(61)는 노드(40)의 입력 포트(44)에 단방향 접속을 통하여 접속되며, 이 모두는 제 2 단일 링 링크를 형성한다.
본 발명의 바람직한 실시예를 따르는 도 2의 토폴로지 전개 알고리즘의 루프 탐색 단계(S10)의 예가 도 3을 참조로 기술될 것이다. 루프 탐색 단계(S10)동안, 네크워크의 노드는 네크워크 토폴로지에서 루프의 존재를 탐색하는데 사용되는 소위 프로브 메세지를 전송할 것이다. 노드는 이미 결정된 루프의 일부가 아닌 모든 출력 포트에서 프로브 메세지를 전송한다. 노드가 프로브 메세지를 생성할 때, 각각의 메세지는 프로브 메세지 생성을 식별하며, 즉 메세지가 예를 들면 출력 포트의 유일 MAC 어드레스로부터 전송되는 출력 포트를 식별하는 유일한 식별성이 제공된다. 네크워크 노드는 모든 출력 포트에서 수신된 프로브 메세지를 포워딩하도록 배치된다. 프로브 메세지를 포워딩할 때, 수신된 프로브 메세지의 내용은 전송된 메세지로 맵핑된다. 즉, 포워딩된 프로브 메세지의 내용은 기본적으로 수신된 프로브 메세지의 내용의 복사본이 될 것이며, 따라서 프로브 메세지를 생성한 노드의 출력 포트를 식별한다. 프로브 메세지의 할당은 프로브 메세지가 포워딩된 홉의 수를 제한하는 홉-카운트 메카니즘에 의해 제한된다. (도시된 예에서는 단순함을 위해, 메세지가 이동하는 홉수가 네개로 세팅된 것으로 가정한다.)
노드가 자신의 프로브 메세지중 하나를 다른 노드로부터 수신하였을 때, 루프가 존재하는지를 결정할 것이며, 상기의 새로운 루트중 일부를 형성하는 입력 포트 및 출력 포트중 하나를 알게 될 것이다. 노드는 다음으로 새로운 루프에 대한소위 빌드-업 매스터가 될 것이며, 새로운 로프에 대해 계속적으로 매서터 선언을 할 것이다.
도 3ㅇ에 도시된 예에서, 노드(10)는 그 출력 포트(11)에서 노드(20)로 프로브 메세지 PR(11)을 전송하며, 상기 프로브 메세지는 프로브 메세지의 생성을 식별한다. 노드(20)은 다음으로 프로브 메세지에서 지시된 홉-카운트를 1만큼 증가시켜서 출력 포트(21)에서 노드(30)으로 프로브 메세지를 포워딩한다. 노드(30)는 출력 포트(31)에서 노드(40)으로 프로브 메세지를 포워딩한다. 노드(40)은 두개의 출력 포트를 가지기 때문에, 출력 포트(41)에서 노드(10)으로 프로브 메세지를 포워딩하며 또한 출력 포트(43)에서 노드(50)으로 프로브 메세지를 포워딩한다. 노드(50)은 출력 포트(51)에서 노드(60)으로 프로브 메세지를 포워딩한다. 허가된 홉의 최대수에 도달하였기 때문에, 노드(60)은 프로브 메세지를 포워딩하지 않도록 결정할 것이다. 그러나 동시에 노드(10)은 입력 포트(12)에서 노드(40)으로부터의 자신의 프로브 메세지를 수신할 것이며, 따라서 새로운 루프가 존재하며, 출력 포트(11) 및 입력 포트(12)가 상기 새로운 루프의 일부라는 것을 결정할 것이다. 노드(10)는 빌드-업 매스터의 역할을 담당할 것이며 매스터 선언 단계를 계속할 것이다.
토폴로지 전개 알고리즘의 매스터 전개 단계(S20)에서, 노드가 도3을 참조로 개시된 프로브 메세지를 사용하여 새로운 루프의 존재를 결정하였을 때, 새로운 루프에 대한 빌드-업 매스터의 역할을 담당할 것이다. 다른 노드가 루프의 존재를 알게 하도록, 빌드-업 매스터는 새로운 루프의 일부로서 이전에 식별된 출력 포트에서 소위 매스터 선언 메세지(도시되지 않음)를 전송할 것이다. 매스터 선언 메세지는 프로브 메세지로서 동일한 역할에 의해 포워딩되며, 두개의 목적을 수행한다. 제 1 목적은 다른 노드에 새로운 루프의 존재를 알려주는 것이며, 새로운 루프, 전형적으로 상술한 MAC 어드레스에 식별자를 할당하는 것이다. 상기 루프 식별자는 새로운 루프를 포함하는 모든 연속 메세지에 포함되며, 여러 루프들이 서로 다른 새로운 루프로서 참도된 메세지로 믹스되지 않으면서 동시에 발견되도록 한다. 매스터 선언 메세지를 수신할 때, 다른 노드는 새로운 루프에 대한 소위 빌드-업 슬레이브가 되며, 자동으로 입력 포트중 어느 것이 루프의 일부가 되는가를 안다. 매스터 선언 매세지의 두번째 목적은 빌드-업 매스터 중재를 위한 메카니즘을 제공하는 것이다. 만일 두개의 노드가 동시에 자신의 프로브 메세지를 수신한다면, 모두 빌드-업 매스터의 역할을 담당할 것이다. 상기 바람직한 실시예에서, 이는 빌드-업 매스터의 MAC 어드레스를 기초로 선행 메카니즘에 의해 해결된다. 만일 빌드-업 매스터가 높은 MAC 어드레스오 함께 노드로부터 (현재 빌드-업 매스터가 되려는 입력 포트에서) 매스터 선언 메세지를 수신한다면, 적어도 일시적으로 중단하며 대신 빌드-업 슬레이브가 된다. 만일 빌드-업 매스터가 낮은 MAC 어드레스와 함께 노드로부터 매스터 선언 메세지를 수신한다면, 매스터 선언 메세지는 포워딩되지 않는다.
빌드-업 매스타가 결국 자신의 매스터 선언 메세지를 수신한 경우, 새로운 루프의 다른 모드 노드가 빌드-업 매스터가 되며, 새로운 루프의 유일한 빌드-업 매스터라는 것을 안다.
본 발명의 바람직한 실시예를 따르는 토폴로지 전개 알로기즘의 스플릿-포인트 감소 단계(S30)는 도 4a 및 4b를 참조로 기술될 것이다. 소위 스플릿-포인트 노드는 이 경우 노드(40)에서 두개 이상의 접속된 출력 포트를 가지는 노드이다. 노드가 프로브 메세지 또는 매스터 선언 메세지를 포워딩할 때, 새로운 루프의 일부가 어떤 포트인지 알지 못하기 때문에 모든 출력 포트에서 메세지를 포워딩하여야 한다. 스플릿-포인트 감소 단계의 목적은 새로운 루프의 일부를 형성하는 스플릿-포인트 노드의 출력 포트중 하나를 결정하는 것이다.
스플릿-포인트 감소 단계는 빌드-업 매스터에 의해 시작되며, 프로브 및 매스터 선언 메세지가 이전에 전송된 출력 포트에서 소위 스플릿-포인트 선언 메세지를 전송할 것이다. 스플릿-포인트 선언 메세지에는 전송된 출력 포트의 식별자가 제공된다.
스플릿-포인트 선언 메세지는 다음 규칙을 따라 포워딩된다. 즉, 만일 포워딩 노드가 단지 하나의 출력 포트를 가지거나 새로운 루프의 일분인 출력 포트를 이미 안다면(즉, 상술한 바와 같이 이미 "해결되었다면"), 스플릿-포인트 선언 메세지는 정확한(또는 단지 하나의) 출력 포트를 통하여 변경되지 않은 버젼에서 포워딩된다. 도한, 노드는 고려중인 스플릿-포인트 노드이다. 다음으로 모든 출ㄹ겨 포트에서 수신된 스플릿-포인트 선언 메세지 대신에 자신의 새로운 스플릿-포인트 선언 메세지를 전송한다. 게다가 각각의 새로운 스플릿-포인트 선언 메세지는 전송된 출력 포트의 식별자를 포함한다.
벌드-업 매스터가 다른 노드의 출력 포트에 대한 식별자와 함께 스플릿-포인트 메세지를 수신하였을 때, 출력 포트는 새로운 루프의 일부라는 것을 안다. 빌드-업 매스터는 스플릿-포인트 노드에 출력 포트를 식별하는 소위 스플릿-포인트 감소 메세지를 전송함으로써 이를 보고한다. 스플릿-포인트 감소 메세지는 프로브 및 매스터 선언 매세지와 동일한 방식으로 포워딩된다. 스플릿-포인트 노드는 출력 포트중 하나를 식별하는 스플릿-포인트 감소 메세지를 수신한다. 이는 포트가 새로운 루프의 일부라는 것을 안다. 스플릿-포인트는 해결되었으며, 스플릿-포인트 감소 메세지는 포워딩될 필요가 없다. 결과적으로 다음 스플릿-포인트 선언 메세지가 노드에서 수신되었을 때 새로운 루프에 대한 현재 결정된 출력 포트에서 변경되지 않은채 포워딩된다.
게다가, 스플릿-포인트 노드가 새로운 루프의 일부인 출력 포트에 대하여 알려주었을 때, 다른 모든 출력 포트에 소위 릴리스 브랜치 메세지를 전송한다. 이는 루프의 일부가 아니며, 대신 다른 루프를 설정하기 위해 루프에 대한 모든 프로토콜 상태를 제거할 수 있는 포트들의 아랫쪽에 있는 빌드-업 슬레이브에 알려주기 위해 실행된다.
스플릿-포인트 감소 메세지를 전송한 바로 후에, 빌드-업 매스터는 다음 스플릿-포인트 노드를 발견하기 위해 새로운 스플릿-포인트 선언 메세지를 전송한다. 스플릿-포인트 감소 단계는 빌드-업 매스터의 입력 포트에 가장 가까운 스플릿-포인트로부터 시작하며 빌드-업 매스터의 출력 포트에서 다시 자신의 방식을 실시하는 시간에 스플릿-포인트를 감소시킴으로써 연속된다.
빌드-업 매스터가 최종으로 자신의 스플릿-포인트 선언 메세지중 하나를 수신하였을 때, 루프에는 더 이상의 스플릿-포인트가 없다는 것을 안다. 루프의 일부를 형성하는 모든 노드는 루프의 일부인 포트를 알며, 새로운 루프에 대한 모든 메세지는 루프에 포함된 노드에만 전송된다. 그러나 각각의 노드만이 자신의 포트에 대한 정보를 가지기 때문에, 즉, 어떠한 노드도 새로운 루프의 모든 노드에 대한 완전한 인식을 가지지 못한다(매우 단순한 토폴로지는 제외). 따라서 빌드-업 매스터는 계속적으로 소위 루프 리스트 빌드업 단계를 실시할 수 있다.
도 5a 및 5b에 도시된 예에서, 빌드-업 매스트 노드(10)는 스플릿-포인트 선언 메세지 SPA(11)를 출력 포트(11)에서 노드(20)로 전송함으로써 시작한다. 스플릿-포인트 선언 메세지 SPA(11)에는 전송된 출력 포트(11)의 식별자가 제공된다. 메세지 SPA(11)는 노드(20) 및 노드(30)에 의해 노드(40)으로 포워딩된다. 그러나 노드(40)이 두개의 접속된 출력 포트를 가지기 때문에, 노드(40)는 각각의 출력 포트에서 자신의 새로운 스플릿-포인트 선언 메세지 SPA(410) 및 SPA(43)을 전송하며, 각각이 메세지는 전송된 출력 포트를 식별한다. 빌드-업 매스터 노드(10)는 도 5a의 노드(40)로부터 메세지 SPA(43)를 수신할 때, 식별된 출력 포트(41)가 새로운 루프의 일부라는 것을 안다. 도 5b에 도시된 바와 같이, 매스터 노드(10)는 스플릿-포인트 노드(40)에 출력 포트(41)를 식별하는 스플릿-포인트 감소 메세지 SPR(41)을 전송함으로써 이 사실을 알려주며, 상기 메세지는 이전의 메세지와 같은 방식으로 전송/포워딩된다. 노드(40)가 그 출력 포트(41)를 인식하는 스플릿-포인트 감소 메세지 SPR(41)를 수신할 때, 포트(41)는 새로운 루프의 일부라는 것을 안다. 노드(40)는 다음으로 나머지 출력 포트(43)에서 릴리스 브랜치 메세지 RB를전송한다. 노드(50,60)가 릴리스 브랜치 메세지(PB)를 수신할 때, 빌드-업 슬레이브가 되는 것을 중지하며, 다른 루프를 탐색하기 시작한다. 스플릿-포인트 감소 메세지 SPR(41)를 전송한 바로 후에, 빌드-업 매스터(10)는 새로운 스플릿-포인트 선언 메세지(도시되지 않음)를 전송한다. 스플릿 포인트 선언 메세지가 매스터 노드(10)로 다시 포워딩될 것이다. 매스터 노드(10)는 루프에 더이상의 스플릿-포인트가 존재하지 않는다고 결정할 것이다.
본 발명의 바람직한 실시예를 따르는 토폴로지 전개 알고리즘의 루트 리스트 빌드-업 단계의 예가 도 5를 참조로 개시되어 있다. 루프 리스트 빌드-업 위상동안에 빌드-업 매스터는 메세지 포워딩을 사용하여 새로운 루프의 일부가 되는 로트 및 노드에 대한 정보를 수집한다. 빌드-업 매스터는 새로운 루프의 출력 포트에서 빈 루프 리스트(도 6의 LB)를 전송함으로써 루프 리스트 빌드-업 단계를 시작한다. 빌드-업 매스터의 입력 포트를 향하는 루프 경로의 각각의 빌드-업 슬레이브는 루프 리스트에 자신을 추가하며 새로운 루프 리스트를 다음 노드에 포워딩한다. 루프 리스트가 빌드-업 매스터에 다시 도달할 때, 벌드-업 매스터는 자신을 루프 리스트의 말단에 추가한다. 루프 리스트 빌드-업 위상은 현재 종료되며, 빌드-업 매스터는 루프의 토폴로지에 대한 완전한 인식을 갖는다. 다음으로 루프 리스트 할당 단계로 이동할 수 있다.
루프 리스트 할당 단계동안, 빌드-업 매스터는 메세지 포워딩을 사용하여 루프의 토폴로지에 대하여 새로운 루프의 일부를 형성하는 모드 노드에 알려준다. 동일한 메세지 포맷이 루프 리스트 빌드-업 위상동안 사용되었던 리스트를 할당하는데 사용된다. 빌드-업 매스터는 새로운 루프가 설정되었던 출력포트에 리스트 LD를 전송한다. 할당시에 루프 리스트를 수신하는 각각의 빌드-업 슬레이브 노드는 리스트가 도달하는 동일한 루프에 속하는 출력 포트에 리스트를 포워딩하여야 한다. 루프 리스트를 생성하는 빌드-업 매스터는 리스트가 생성된 출력 포트와 동일한 루프에 속하는 입력 포트를 통하여 다시 리스트가 돌아오는 것을 확실히 하여야 한다. 만일 루프 리스트가 구성된 시간 간격내에 도달하지 않거나, 에러가 루프 리스트 할당동안 노드에 의하여 탐색되는 경우, 리스트는 다시 생성된다.
빌드-업 매스터가 전송될 때 완전하고 충분한 루프 리스트를 수신한다면, 빌드-업 매스터로서 동작하는 것을 중지할 것이며, 새로운 루프가 고려되고 루프 상태가 완전하게 구축될 것이다. 따라서, 빌드-업 슬레이브가 완전하고 정확한 루프 리스트를 수신하였을 때, 루프가 고려되며 루프 상태가 완전하게 설정될 것이다. (새롭게 중지된)빌드-업 매스터 및 슬레이브는 다음으로 라우팅 테이블 계산 단계로 연속된다.
라우팅 테이블 계산 단계에서, 노드가 새로운 루프 리스트를 수신하였을 때, 유효한 이용가능 루프를 기초로 업데이트된 라우트 테이블을 계산하는데 이를 이용할 것이다. 라우트 테이블은 각각의 도달가능한 노드에 대하여 하나의 아이템을 포함할 것이다. 각각의 아이템은 전형적으로 목적지의 입력 인터페이스의 MAC 어드레스 및 목적지에 도달하는데 사용될 수 있는 출력 포트를 포함한다.
예를 들어, 선택적인 실시예에 따라, 루프 탐색 단계, 스플릿-포인트 감소 단계 및 루프 리스트 빌드-업 단계는 하나의 단일 단계로 통합되며, 루프 탐색 메세지를 핸들링하기 위한 규칙은 스플릿-포인트 및 루프 리스트 빌드-업 특성을 포함할 것이다. 상기 계획의 이점은 네크워크의 노드들 사이에서 전송되는 메세지양을 제한하는 것이다. 한편, 이것은 메세지 크기 및 처리과정을 증가시킨다.
본 발명의 다른 실시예를 따르는 토폴로지 전개 처리과정의 흐름도는 현재 도 6을 참조로 기술될 것이다. 상기 토폴로지 전개 알고리즘의 주요 목적은 도 1a-1c에 표시된 종류의 네크워크 루프를 검출함으로써 유효 접속/링크의 존재를 결정하고, 각각의 링크의 일부를 형성하는 하나 이상의 노드에 연관된 정보를 제공하는 것이다.
도 6을 참조로, 토폴로지 전개 알고리즘은 루프 탐색 단계(S110), 링크 선언 단계(S120), 링크 리스트 할당 단계(S130), 및 라우트 테이블 계산 단계(S140)를 포함한다. 이 처리과정은 도 7a-7c에 도시된 네크워크를 참조로 상세하게 설명될 것이며, 상기 네트워크는 듀얼 버스 링크를 형성하기 위해 접속된 세개의 노드(10,20,30)를 포함한다. 이는 도 1a를 참조로 상술한 네트워크와 유사하다. 이 경우의 설명은 네크워크의 노드에 의해 취해진 액션을 결정하는 토폴로지를 예시할 것이며, 각각의 액션은 액션을 일으키는 이벤트에 연관되어 기술된다. 전형적으로 하기의 설명은 각각의 노드에서 하나 이상의 제어 기능에 의해 기술될 것이다.
도 6의 루프 탐색 단계(S110)에서, 각각의 노드는 어떠한 유효 접속도 존재하지 않는 모든 출력 포트에서 소위 프로브 메세지를 규칙적으로 전송할 것이다. 각각의 프로브 메세지에는, 메세지가 예를 들어 포트의 유일한 MAC 어드레스를 사용하여 전송된 출력 포트를 식별하며, 따라서 메세지가 전송되는 링크를 간접적으로 식별하는, 링크 식별자가 제공될 것이다. 이는 전송되는 출력 포트(11)의 식별을 포함하는 도 7a의 프로브 메세지 PR(11)에 의해 도시되어 있다. 프로브 메세지의 목적은 유효 접속이 프로브 메세지가 전송된 출력 포트에 대하여 설정되었는가를 발견하는 것이다. 프로브 메세지는 상기 실시예에서 단지 이웃 노드로 전송되며, 다른 노드에 도달하기 위해 포워딩되지는 않는다. 그 이유는 다음과 같다. 이는 토폴로지 전개가 각각의 노드로 하여금 아랫쪽의 이웃 노드를 전개시키도록 하는 것을 기초로 하기 때문이다. 그러나 이 계획은 프로브 메세지가 하나 이상의 홉을 포워딩하도록 함으로써 각각의 노드가 아랫쪽 노드를 전개하도록 변경될 수 있다.
노드가 프로브 메세지를 수신할 때, 모든 출력 포트에 대한 프로브 응답을 전송함으로써 이에 대하여 응답할 것이다. 각각의 프로브 응답에 대하여, 프로브 응답 메세지가 전송되는 출력 포트를 식별하는 응답 포트 식별자외에 프로브 메세지의 링크 식별자를 포함할 것이다. 이는 노드(20)가 프로브 메세지 PR(11)를 수신한 결과로서 전송하는 두개의 응답들인 PRR(11:21) 및 PRR(11:23)에 의해 도 7a에 도시되어 있으며, 각각의 응답은 응답이 전송되는 각각의 출력 포트(21,23)의 식별(21,23)외에 프로브 메세지를 식별하는 식별(11)을 포함한다. 프로브 메세지가 수신된 입력 포트와 동일한 인터페이스의 일부를 형성하는 출력 포트로부터 전송되는 프로브 응답의 경우, 소위 "바이패스 모드"에서 전송된 응답을 식별하는 플래그를 포함한다. 상기 플래그를 포함하는 이유는 이하에서 기술될 것이다. 서로다른 여러 토폴로지가 네크워크에서 가능하기 때문에, 모든 출력 포트에서 프로브 응답을 전송하는 이유는 프로브 메세지를 전송하는 노드로 다시 돌아가는 경로를 제공하는 하나 이상의 출력 포트를 먼저 밝히는 방법을 노드가 가지지 못하기 때문이다.
노드가 프로브 응답을 수신할 때, 먼저 프로브 응답 메세지에 포함된 링크 식별자를 사용하여 프로브 응답이 프로브 메세지에 응답하는지를 결정할 것이며, 노드 자신이 가지는 상기 프로브 메세지는 전송자이며, 이는 프로브 응답 메세지에 포함된 링크 식별자가 노드의 출력 포트를 식별하는 경우에 그러하다. 만일 응답이 아니오라면, 노드는 수신될 때와 동일한 인터페이스의 출력 포트에 대한 프로브 응답을 포워딩할 것이다. 모든 출력 포트에서 프로브 응답을 포워딩하지 않는 이유는 만일 노드가 의도한 수신자가 아니라면, 가능한 토폴로지가 주어진 의도된 수신가로 다시 돌아가는 경로는 메세지가 수신된 동일한 단방향 링크를 따라야 한다. 그러나 프로브 응답이 모든 출력 포트로 포워딩되는 실시예가 실시될 수 있지만, 어떤 종류의 메카니즘이 바람직하게 메세지가 네크워크내에서 영원히 포워딩되는 것을 피하기 위해 추가될 것이다.
만일 노드가 프로브 응답에 포함된 링크 식별자를 이용하여 수신된 프로브 응답이 노드의 출력 포트로부터 전송된 프로브 메세지에 대한 응답이라는 것을 결정하면, 링크 식별자에 의해 식별된 출력 포트로부터, 즉 프로브 메세지가 원천적으로 전송되는 포트(이 경우에는 포트 23)로부터 프로브 응답의 응답 포트 식별자 및 링크 식별자를 포함하는 링크 탐색된 메세지를 전송함으로써 도 6의 링크 선언단계(S120)을 시작할 것이다. 이는 프로브 메세지 PR(11)이 이전에 전송된 것과 동일한 포트에서 링크 탐색 메세지 LD(11:23)를 전송하는 시작 노드(10)에 의해 도 7b에 도시되어 있다. 만일 응답이 예이고 프로브 응답이 소위 "바이패스 모드"에서 전송된 응답을 식별하는 플래그를 포함한다면, 노드는 링크 탐색된 메세지에서 수신기가 링크 토폴로지 메세지를 시작하지 않는 것을 식별하는 플래그를 포함할 것이다. 그 이유는 이하에서 설명된다.
노드가 링크 탐색된 메세지를 수신하였을 때, a) 링크 탐색된 메세지가 수신된 입력 포트에서 위쪽 노드로부터 유효 접속/링크가 존재할 것이며; b) 위쪽 이웃 노드는 링크 탐색된 메세지에 포함된 링크 식별자를 이용하여 상기 링크에 대한 출력 포트를 식별할 것이며; c) 링크 탐색된 메세지에 포함된 응답 포트 식별자를 이용하여 접속/링크에 관련된 위쪽 이웃 노드에 제어 메세지를 전송할 때 사용되는 출력 포트가 어떤 것인지를 결정할 것이며; d) 위쪽 이웃 노드에 도달하기 위해 응답 포트로부터 링크 탐색된 인식 메세지를 전송할 것이며, 상기 링크 탐색된 인식 메세지는 도 7b에 메세지 ACK(11)에 의해 도시된 바와 같이 링크 식별자를 포함한다. 게다가 만일 링크 탐색된 메세지가 수신기가 링크 토폴로지 메세지를 생성하지 않는것을 실별하는 플래그를 포함하지 않는다면, 응답 포트로부터 링크의 위쪽 이웃 노드에 링크 토폴로지 메세지를 전송할 것이다(생성할 것이다.). 상기 링크 토폴로지 메세지는 ⅰ) 링크 식별자, ⅱ) 노드가 알고 있는한 링크 식별자에 의해 식별된 링크에 접속된 노드의 저장 리스트, 및 ⅲ) 위쪽에 할당된 리스트가 되는 리스트를 지정하는 플래그를 포함한다. 이는 미리 결정된 응답 포트(23)를 이용하여, 노드(20)에 의해 노드(10)에 전송되는 링크 토폴로지 메세지 LT(11:20,30)에 의해 도 7c에 도시되어 있으며, 도 6의 링크 할당 단계(S130)를 도시한다. 결과적으로, 링크 탐색된 메세지의 수신은 메세지가 수신된 입력 포트로부터 위쪽에 하나 이상의 노드를 포함하는 링크가 존재하는 것을 노드에 알려준다. 위쪽 노드에 노드가 자신에 대한 것과 가능한 다른 아랫쪽 노드를 가지는 임의의 존재 정보를 제공하기 위해, 응답 포트를 이용하여 위쪽 방향으로 링크 토폴로지 메세지를 전송한다. 예를 들어, 만일 노드(20,30) 사이의 링크 세그먼트(20-30)가 노드(10,20) 사이의 접속을 설정하기 전에 존재한다면, 노드는 새로운 접속(10-20)과 관련된 링크 탐색 메세지를 수신한 후에 노드 리스트(20-30)를 위쪽으로 전송할 것이며, 따라서 위쪽 노드에 새로운 접속의 공지된 아랫쪽 토폴로지를 알려준다.
유사하게, 프로브 메세지의 원 전송자가 아랫쪽 노드의 응답 포트로부터 전송된 링크 탐색된 인식 메세지를 수신하였을 때, 유효 접속이 링크 탐색된 인식 메세지에 포함된 링크 식별자에 의해 식별된 출력 포트로부터 존재할 것이다. 새로운 접속의 위쪽에 있는 공지된 토폴로지에 대한 새로운 접속을 통하여 액세스할 수 있는 아래쪽 노드를 알려주기 위해, 상기 출력 포트로부터 링크의 아랫쪽 이웃 노드에 링크 토폴로지 노드를 전송(생성)할 것이다. 상기 링크 토폴로지 메세지는 ⅰ) 링크 식별자, ⅱ) 시작 노드가 아는한, 링크 식별자에 의해 식별되고 링크에 접속된 노드의 저장된 리스트 및 ⅲ) 아래쪽에 할당된 리스트가 되는 리스트를 지정하는 플래그를 포함한다. 이는 만일 링크 세그멘트(20-30)가 접속(10-20)의 설정 이전에 존재한다면, 노드(10)는 새로운 접속(10-20)에 관한 링크 탐색된 메세지를 수신한 후에 아랫쪽에 노드 리스트(10)를 전송할 것이다. 따라서 새로운 접속의 위쪽에 공지된 토폴로지에 대하여 아랫쪽의 노드에 알려줄 것이다.
링크 토폴로지 메세지의 목적은 메세지들이 새로운 토폴로지의 링크의 각각의 노드를 업데이트 시키는데 사용되기 위해 위쪽/아랫쪽 방향으로 포워딩되어야 한다는 것이다. 주목할 것은, 만일 새롭게 설정된/탐색된 접속이 단일 링크를 닫는다면, 응답 포트를 사용하여 링크를 따르는 위쪽과 아랫쪽으로 제 2 링크 토폴로지 메세지를 전송할 필요가 없으며, 이는 아랫쪽 메세지가 매우 효과적으로 링크의 모든 노드에 포워딩될 것이기 때문이며, "바이패스"(프로브 응답에서)를 위한 상술한 플래그 및 링크 탐색된 메세지의 해당 플래그를 포함하는 이유이고, 이에 따라서 상술한 바와 같이 임의의 링크 토폴로지 메세지를 위쪽으로 전송하지 않도록 링크 탐색된 메세지의 수신기에 지시한다.
결과적으로 링크 토폴로지 메세지를 수신할 때, 노드는 노드에서 이미 저장된 토폴로지 정보와 비교하여 메세지에 포함된 링크 식별자에 의해 식별된 링크의 토폴로지에 대한 새로운 정보를 제공할 수 있는가를 결정할 것이다. 만일 응답이 예라면, 노드는 링크에 접속된 노드를 지정하는 저장된 리스트를 업데이트할 것이다. 또한 만일 응답이 예이고 링크 토폴로지 메세지에 저장된 플래그가 이를 아랫쪽에 할당된 리스크로서 정의한다면, 링크 할당된 메세지가 수신된 입력 포트와 동일한 인터페이스에 할당된 출력 포트에서 유사한 링크 토폴로지 메세지를 전송할 것이다. 그리고 이것은 ⅰ) 상기 출력 포트를 식별하는 링크 식별자, ⅱ) 노드의 업데이트된 리스트, 및 ⅲ) 아랫쪽에 할당된 리스트가 되는 리스트를 지정하는 플래그를 포함할 것이다. 상술한 예를 살펴보면, 노드(20)가 노드(10)에 공지된 토폴로지(10)를 식별하는 노드(10)로부터 아랫쪽 토폴로지 메세지를 수신할 때, 노드 C는 완전히 공지된 링크가 노드(10,20.30)를 포함하며(노드(30)의 존재는 이미 노드(20)에 공지되어 있는 것으로 가정한다.), 메세지 LT에 의해 도시된 바와 같이 아랫쪽 이웃 노드(30)에 대한 상기 토폴로지 정보(10-20-30)와 함께 링크 토폴로지 메세지를 전송할 것이라는 것에 대하여 업데이트할 것이다.
선택적으로, 만일 수신된 토폴로지 정보가 새로우며 링크 토폴로지 메세지에 제공된 플래그가 이것을 위쪽에 할당된 리스트로서 정의한다면, 노드는 위쪽 이웃 노드에 응답 포트에 대한 유사한 링크 토폴로지 메세지를 전송할 ㄱ서이며, 이는 ⅰ) 시작 노드에 대한 포트/링크를 식별하기 위하여 위쪽 이웃 노드에 의해 사용되는 링크 식별자, ⅱ) 노드의 업데이트된 리스트, 및 ⅲ) 위쪽에 할당된 리스트가 되는 리스트를 지정하는 플래그를 포함한다.
그러나 만일 수신된 링크 토폴로지 메세지가 노드에 이미 저장된 토폴로지 정보와 비교하여 새로운 정보를 제공하지 않는다면, 임의의 해당 링크 토폴로지 메세지를 전송하지 않을것이며, 따라서 링/루프에서 영원히 순환하는 것으로부터 새로운 링크 토폴로지 정보/메세지를 정지시킨다.
주목할 만한 점은, 선택적인 실시예에서, 아랫쪽/위쪽 토폴로지 정보에 할당된 토폴로지 정보가 명백하게 노드를 식별하는 토폴로지 메세지에 대한 대안 도는 추가로서 인터페이스를 식별하는 정보, 링크의 토폴로지를 식별하는 포트등을 포함한다. 이는 또한 제 1 어드레싱된 다른 링크의 토폴로지에 대한 정보를 포함할 수있다.
게다가 각각의 노드는 유효 접속이 존재하는 모든 출력 포트에서 식별 메세지(도시되지 않음)를 규칙적으로 전송할 것이다. 메세지를 식별하는 각각의 프로브 메세지에는 메세지가 전송된 출력 포트를 식별하는 링크 식별자가 제공될 것이다. 식별 메세지의 목적은 이미 유효한 것으로 결정된 접속이 식별 메세지가 전송된 포트로부터 여전히 존재하는가를 식별하는 것이다. 식별 메세지를 수신할 때, 노드는 식별 메세지에 포함된 링크 식별자와 연관된 응답 포트에 대한 식별 인식 메세지를 전송할 것이다. 위쪽 노드는 특정 시간내에 식별 인식 메세지가 수신할 것이라는 것을 기대할 것이다. 만일 메세지가 시간내에 수신되지 않는다면, 접속이 더 이상 유효하지 않다고 결정할 것이며, 따라서 잃어버린 접속에 대한 이슈로서 링크에 대한 위쪽 노드를 알려주기 위해 (위쪽 이웃 노드에 응답 포트를 사용하여) 위쪽 방향으로 새로운 링크 토폴로지 메세지를 생성할 것이다.
도 7은 상술한 네크워크에서 사용된 노드의 일반적인 성분을 예시한 블록도이다. 노드는 입력 포트(112) 및 출력 포트(111)에 의해 정의된 제 1 인터페이스외에 입력 포트(114) 및 출력 포트(113)에 의해 정의된 제 2 인터페이스를 포함할 것이다. 두개의 인터페이스는 노드의 제어 프로세서(116) 및 인터페이스로/로부터 인터페이스 사이에서 데이터의 스위칭을 제공하는 스위치 코어(115)에 접속된다. 게다가, 각각의 인터페이스는 전형적으로 그 입력 포트로부터 그 출력 포트에 바이패싱/스위칭 데이터를 위한 수단이 제공될 것이다. 제어 프로세서는 전형적으로 상술한 제어 기능을 제공하며, 이 기능은 상술한 종류의 전송 및 수신된 메세지를취급하고 토폴로지 정보를 저장하는 메모리(117)를 업데이트하기 위해 메세지의 정보를 이용한다. 그러나 상기의 제어 기능 및 메모리는 노드에 집중될 필요가 없으며, 노드의 모든 인터페이스에 대한 토폴로지 전개 동작을 취급한다. 제어 기능 및/또는 메모리 저장은 여러 병행 제어 기능을 실행할 수 있으며, 그 각각은 각각의 노드의 인터페이스와 관련하여 동작한다.
최종적으로, 도 8b 및 8c는 도 7a-7c를 참조로 설명된 접속의 존재를 결정한 후에 각각 노드(10,20)에서 발견된 내용으로 예시되어 있는 도 8a의 메모리(117)에서 발견된 종류의 엔트리를 도시한다. 도시된 바와 같이, 포트(11)로부터 포트(22)로의 새로운 접속이 검출되고 토폴로지 정보가 할당된 후에, 노드(10)의 메모리는 도 8b에 도시된 바와 같이 포트(11)가 접속된 링크(링크 ID)가 노드(10,20,30)을 포함하는지를 지시한다. 노드(10)는 링크의 가장 위쪽 노드이기 때문에, 위쪽 노드에 어떠한 응답 포트도 존재하지 않는다. 유사하게 노드(20)의 메모리는 도 8c에 도시된 바와 같이 포트(21)이 접속된 링크가 노드(10,20,30)을 포함하며, 노드(20)이 위쪽 이웃 노드(10)에 도달하기 위해 응답 포트로서 자신의 포트(23)을 이용할 수 있는지를 나타낸다.
당업자는 상술한 단계들을 변경할 수 있다. 게다가 이 단계들은 본 발명의 사상내에서 추가 또는 제외될 수 있다.
진보적인 아이디어를 기초로, 규정을 다루는 많은 다른 토폴로지 메세지가 사용될 수 있으며, 예를 들면, 언제 어떻게 프로브 메세지를 전송하는지 언제 어떻게 새로운 접속을 참고하는지등을 결정한다. 본 발명의 사상은 상술한 실시예에제한되지 않는다.
따라서 본 발명을 실제로 구현하는 방법에 대한 결정은 일반적으로 네크워크내에서 전송된 메세지의 양, 메세지 크기, 메세지 처리량, 각 노드에서의 상태 변경/유지등과 같은 측면에서 네크워크 타입이 얼마나 긍정적이거나 부정적으로 영향받게 할것인가에 달려있다.

Claims (41)

  1. 단방향 접속을 통하여 상호 접속된 네크워크 노드의 토폴로지를 결정하는 방법으로서:
    상기 노드들 사이에서 메세지 포워딩을 이용하여 상기 네트워크내의 네트워크 루프의 존재를 결정하는 단계; 및
    상기 네트워크내의 상기 네트워크 루프의 존재와 연관된 정보를 할당하는 단계를 포함하는 방법.
  2. 제 1 항에 있어서, 상기 네크워크 루프의 존재를 결정하는 단계는:
    제 1 노드의 출력 포트로부터 메세지를 전송하는 단계; 및
    상기 제 1 노드의 출력 포트에서 상기 메세지의 포워딩/응답 버젼을 수신하는 단계를 포함하는 것을 특징으로 하는 방법.
  3. 제 1 항 또는 제 2 항에 있어서, 상기 네크워크 루프의 존재를 결정하는 단계는 노드의 입력 포트에서 메세지를 수신하며 노드의 하나 이상의 출력 포트에서 상기 메세지를 포워딩하는 단계를 포함하는 것을 특징으로 하는 방법.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서, 상기 네크워크 루프의 존재에 대한 정보를 할당하는 단계는 상기 정보를 할당하기 위해 메세지 포워딩을 이용하는 단계를 포함하는 것을 특징으로 하는 방법.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서, 상기 정보는 상기 네트워크 루프의 일부를 형성하는 노드에 대한 정보를 포함하는 것을 특징으로 하는 방법.
  6. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서, 상기 정보는 상기 네트워크 루프의 일부를 형성하는 포트에 대한 정보를 포함하는 것을 특징으로 하는 방법.
  7. 제 1 항 내지 제 6 항 중 어느 한 항에 있어서,
    노드의 각각의 두개 이상의 출력 포트로부터 두개 이상의 메세지를 전송하는 단계를 포함하는데, 상기 각각의 메세지는 전송을 위해 각각의 출력 포트를 식별하며; 그리고
    상기 두개 이상의 메세지중 하나와 관련된 메세지를 수신하는 단계를 포함하며, 이에 따라 상기 네트워크 루프의 일부를 형성하는 상기 노드의 두개 이상의 출력 포트중 하나를 식별하는 단계를 포함하는 것을 특징으로 하는 방법.
  8. 제 1 항 내지 제 7 항 중 어느 한 항에 있어서,
    제 1 노드의 출력 포트로부터 메세지를 전송하는 단계;
    제 2 노드의 입력 포트에서 상기의 메세지 또는 포워딩된 버젼의 메세지를 수신하는 단계;
    상기 제 2 노드의 두개 이상의 각각의 출력 포트로부터 상기 메세지의 두개 이상의 변경된 버젼을 전송하는 단계를 포함하는데, 상기 각각의 변경된 버젼은 전송을 위해 사용된 각각의 출력 포트를 식별하며; 및
    상기 제 1 노드로부터 상기 제 2 노드에 메세지를 전송하는 단계를 포함하며, 상기 메세지는 상기 네트워크 루프의 일부를 형성하는 상기 제 2 노드의 출력 포트를 식별하는 것을 특징으로 하는 방법.
  9. 제 1 항 내지 제 8 항 중 어느 한 항에 있어서, 메세지를 포워딩하는 단계는 상기 메세지에 포워딩 노드의 식별에 관한 정보를 포함하는 단계를 포함하는 것을 특징으로 하는 방법.
  10. 제 1 항 내지 제 9 항 중 어느 한 항에 있어서, 메세지를 포워딩하는 단계는 상기 메세지가 상기 메세지로부터 전송된 출력 포트의 식별에 관한 정보를 포함하는 단계를 포함하는 것을 특징으로 하는 방법.
  11. 단방향 접속을 통하여 상호접속된 네크워크 노드의 토폴로지를 결정하는 시스템으로서,
    입력 포트에서 상기 메세지의 포워딩/응답 버전의 수신을 결정함으로써 상기 네트워크내의 네크워크 루프의 존재를 결정하기 위해, 상기 결정의 결과로서 상기 네트워크내의 노드에 대한 상기 네트워크 루프의 존재와 연관된 정보를 할당하기위해, 출력 포트로부터 메세지를 전송하도록 배치된 제 1 노드를 포함하는 것을 특징으로 하는 시스템.
  12. 제 11 항에 있어서, 하나 이상의 제 2 노드는 입력 포트에서 상기 메세지를 수신할 때 하나 이상의 출력 포트에서 상기 메세지를 포워딩하도록 배치되는 것을 특징으로 하는 시스템.
  13. 제 11 항 또는 제 12 항에 있어서, 상기 노드들은 메세지 포워딩에 의해 상기 네트워크 루프의 존재에 대한 상기 정보를 할당하도록 배치되는 것을 특징으로 하는 시스템.
  14. 제 11 항 내지 제 13 항 중 어느 한 항에 있어서, 두개 이상의 출력 포트를 가지는 노드는 각각의 출력 포트로부터 두개 이상의 개별 메세지를 전송하도록 배치되며, 각각의 메세지는 전송을 위해 사용된 각각의 출력 포트를 식별하며, 따라서 상기 네트워크 루프의 일부를 형성하는 상기 노드의 둘 이상의 출력 포트중 하나를 연속적으로 결정할 수 있는 것을 특징으로 하는 시스템.
  15. 제 11 항 내지 제 14 항 중 어느 한 항에 있어서,
    제 1 메세지를 전송하는 제 1 노드; 및
    상기와 같거나 포워딩 버젼인 메세지를 수신하며, 각각의 두개 이상의 출력포트로부터 상기 메세지의 두개 이상의 변경된 버젼을 전송하는 제 2 노드를 포함하는데, 상기 변경된 버젼은 전송을 위해 사용된 각각의 출력 포트를 식별하며,
    상기 제 1 노드는 상기 제 1 노드에서 상기 메세지의 변경된 버젼중 하나의 수신을 결정함으로써 상기 네크워크 루프의 일부를 형성하는 상기 제 2 노드의 상기 두개 이상의 출력 포트중 하나를 식별하도록 배치되며, 그 결과로서 상기 제1 노드로부터 상기 제 2 노드로 메세지를 전송할 수 있고, 상기 메세지는 상기 네크워크 루프의 일부를 형성하는 상기 제 2 노드의 출력 포트를 식별하는 것을 특징으로 하는 시스템.
  16. 통신 네트워크에서 노드의 적어도 로컬하게 재구성가능한 토폴로지를 결정하는 방법으로서, 각각의 노드는 하나 이상의 인터페이스를 포함하며, 각각의 인터페이스는 단방향 접속을 통하여 다른 노드에 접속할 수 있는 입력 포트 및 출력 포트에 의해 정의되며, 노드는 이웃 노드로서 참조되는 단방향 접속을 통하여 다른 노드에 직접적으로 접속된 방법에 있어서,
    시작 노드의 출력 포트로부터 프로브 메세지를 전송하는 단계를 포함하는데, 상기 프로브 메세지는 전송된 출력 포트를 식별하는 정보가 제공되며,
    상기 시작 노드의 입력 포트에서 프로브 응답을 수신하는데, 상기 각각의 프로브 응답은 프로브 응답을 식별하는 정보외에 이에 대한 응답인 프로브 메세지를 식별하는 정보를 포함하며,
    수신된 프로브 응답이 초기 노드의 출력 포트로부터 이전에 수신된 프로브메세지를 식별하는지를 결정하며, 만일 그렇다면, 상기 출력 포트로부터 링크 검출된 메세지의 전송을 일으킴으로써, 시작 노드의 출력 포트로부터 이웃 노드에 유효한 접속이 존재하는지를 결정하는 단계를 포함하며, 상기 링크 검출된 메세지는 프로브 응답을 식별하는 정보가 제공되며, 따라서 상기 접속이 존재하는 것을 이웃 노드에 알려주며, 프로브 응답을 식별하는 상기 정보의 규정에 의해, 상기 이웃 노드가 상기 접속에 관련된 시작 노드에 대한 정보를 전송하기 위해 사용될 수 있는 출력 포트를 결정할 수 있는 방법.
  17. 제 16 항에 있어서,
    임의의 두개의 단방향 접속이 동일한 링크의 일부를 형성하기 위해 동일한 인터페이스에 접속되며,
    상기 시작 노드의 각각의 인터페이스에 대하여, 시작 노드가 알고있는한 상기 인터페이스와 동일한 링크에 접속된 노드를 식별하는 토폴로지 정보를 저장하는 단계; 및
    만일 시작 노드의 출력 포트로부터 다른 노드에 새로운 유효 접속이 존재한다는 것이 결정되면 상기 출력 포트로부터 링크 토폴로지 메세지를 전송하는 단계를 포함하며, 시작 노드가 알고있는한, 상기 접속에 의해 일부가 형성되는 링크에 접속된 노드를 식별하는 토폴로지 정보외에, 상기 접속을 식별하는 정보가 상기 링크 토폴로지 메세지에 제공되는 것을 특징으로 하는 방법.
  18. 제 16 항 또는 제 17 항에 있어서, 만일 프로브 응답이 시작 노드의 출력 포트로부터 이전에 전송된 프로브 메세지를 식별하지 않았음을 결정하였다면, 수신된 프로브 응답을 다른 노드에 포워딩하는 단계를 포함하는 것을 특징으로 하는 방법.
  19. 제 18 항에 있어서, 만일 수신된 프로브 응답이 시작 노드의 출력 포트로부터 이전에 전송된 프로브 메세지를 식별하지 않았음을 결정하였다면, 상기 프로브 응답은 프로브 응답이 수신된 출력 포트와 동일한 인터페이스의 포트인 출력 포트에만 포워딩되는 것을 특징으로 하는 방법.
  20. 제 16 항 내지 제 19 항 중 어느 한 항에 있어서, 상기 프로브 메세지는 시작 노드로부터 그 이웃 노드로만 전송되는 것을 특징으로 하는 방법.
  21. 제 16 항 내지 제 20 항 중 어느 한 항에 있어서,
    노드의 출력 포트에서 프로브 메세지를 수신하는 단계를 포함하는데, 상기 프로브 메세지는 프로브 메세지를 식별하는 정보를 포함하며; 및
    각각의 수신된 프로브 메세지에 대하여, 노드의 모든 출력 포트에 관한 프로브 응답을 전송하는 단계를 포함하며, 각각의 프로브 응답은 프로브 응답이 전송된 출력 포트를 식별하는 정보외에 프로브 메세지를 식별하는 것을 특징으로 하는 방법.
  22. 제 21 항에 있어서, 각각의 수신된 메세지에 대하여 모든 출력 포트에서 프로브 응답을 전송하는 단계는, 상기 프로브 메세지가 수신된 입력 포트와 동일한 인터페이스의 일부인 출력 포트에서 전송된 프로브 응답에서, 프로브 메세지가 수신된 것과 동일한 인터페이스로부터 프로브 응답이 전송되는 것을 식별하는 정보를 포함하는 것을 특징으로 하는 방법.
  23. 제 21 항 내지 제 22 항 중 어느 한 항에 있어서,
    노드의 입력 포트에서 링크 탐색된 메세지를 수신하는 단계를 포함하는데, 그 각각은 출력 포트에게 링크 검출된 메세지의 전송을 유도하는 프로브 응답이 전송되었음을 식별하는 정보를 포함하며;
    링크 검출된 메세지가 수신된 유효 접속이 이웃 노드로부터 입력 포트에 존재함을 결정하며, 또한 링크 탐색된 메세지에서 식별된 상기 출력 포트가 상기 접속에 관련된 이웃 노드에 정보를 전송하기 위해 사용될 수 있는 것을 나타내는 정보를 저장하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  24. 제 23 항에 있어서,
    임의의 두개의 단방향 접속은 동일 링크의 일부를 형성하기 위해 동일 인터페이스에 접속되며,
    상기 시작 노드의 각각의 인터페이스에 대하여, 시작 노드가 알고있는한 상기 인터페이스와 동일한 링크에 접속된 노드를 식별하는 토폴로지 정보를 저장하는단계; 및
    만일 이웃 노드로부터 입력 포트에 링크 탐색된 메세지가 수신된 유효 접속이 존재한다는 것이 결정되면, 상기 링크 탐색된 메세지에서 식별된 출력 포트의 링크 토폴로지 메세지를 전송하는 단계를 포함하며, 상기 링크 토폴로지 메세지는 시작 노드가 알고있는한, 상기 접속에 의해 일부가 형성되는 링크에 접속된 노드를 식별하는 토폴로지 정보외에, 토폴로지 메세지가 연관된 접속을 식별하는 정보를 포함하는 것을 특징으로 하는 방법.
  25. 제 24 항에 있어서, 만일 이웃 노드로부터 입력 포트에 링크 탐색된 메세지가 수신된 유효 접속이 존재한다는 것이 결정되었을 때 링크 토폴로지 메세지를 전송하는 단계는, 단지 상기 탐색된 메세지가, 수신된 링크 탐색된 메세지의 결과로서 어떠한 링크 토폴로지 메세지도 전송되지 않는다는 것을 나타내지 않을 때만, 실행되는 것을 특징으로 하는 방법.
  26. 통신 네트워크의 노드들 사이에서 토폴로지 정보를 로컬하게 할당하는 방법으로서, 상기 각각의 노드는 하나 이상의 인터페이스를 포함하며, 각각의 인터페이스는 단방향 접속을 통하여 다른 노드에 접속될 수 있는 입력 포트 및 출력 포트에 의해 정의되고, 임의의 두개의 단방향 접속은 동일 링크의 일부를 형성하기 위해 동일 인터페이스에 접속되며, 노드는 단방향 접속을 통하여 이웃 노드로서 참조되는 다른 노드에 직접적으로 접속되는 방법에 있어서, 상기 방법은:
    노드의 각각의 인터페이스에 대하여, 노드가 알고있는한, 인터페이스와 동일한 링크에 접속된 노드를 식별하는 토폴로지 정보외에 상기 링크의 위쪽 이웃 노드에 토폴로지 정보를 전송하기위해 사용되는 노드의 제안된 출력 포트를 식별하는 정보를 저장하는 단계;
    노드의 입력 포트에서 링크 토폴로지 메세지를 수신하는 단계를 포함하는데, 각각의 메세지는 상기 링크에 접속된 노드를 식별하는 토폴로지 정보외에 포함된 링크를 식별하는 정보를 포함하며;
    각각의 수신된 링크 토폴로지 메세지에 대하여, 수신된 링크 토폴로지 메세지에 의해 제공된 토폴로지 정보에 따라 저장된 토폴로지 정보를 업데이트하는 단계; 및
    각각의 수신된 링크 토폴로지 메세지에 대하여, 만일 수신된 링크 토폴로지 메세지가 참조되는 링크에서 위쪽 이웃 노드에 의해 수신된 링크 토폴로지 메세지가 수신되었거나, 또는 만일 상기 링크에서 위쪽의 이웃 노드에 토폴로지 정보를 전송하는데 사용되는 상기의 제안된 출력 포트로부터, 수신된 토폴로지 메세지가 상기 링크에서 아랫쪽 이웃 노드에 의해 전송되었다면, 수신된 링크 토폴로지 메세지가 수신된 인터페이스의 출력 포트로부터 링크 토폴로지 메세지를 전송하는 단계를 포함하며, 전송된 토폴로지 메세지는 노드가 알고있는한 상기 링크에 접속된 노드를 식별하는 토폴로지 정보외에 포함된 링크를 식별하는 정보를 포함하는 것을 특징으로 하는 방법.
  27. 제 26 항에 있어서, 상기 업데이팅 단계는 만일 상기 수신된 토폴로지 메세지에서 제공된 토폴로지 정보가 토폴로지 메세지가 포함된 링크에 관련된, 이미 저장된 토폴로지 정보와 비교하여 새로운 것일때만 실행되는 것을 특징으로 하는 방법.
  28. 제 26 항 또는 제 27 항에 있어서, 상기 전송 단계는 수신된 링크 토폴로지 메세지가 토폴로지 정보가 포함된 링크에 대한, 이미 저장된 토폴로지 정보와 비교하여 새로운 토폴로지 정보를 제공할 때만 실행되는 것을 특징으로 하는 방법.
  29. 제 26 항 내지 제 28 항 중 어느 한 항에 있어서, 상기 전송 단계에서 전송된 링크 토폴로지 메세지에 포함된 토폴로지 정보는 수신된 링크 토폴로지 메세지에 의해 제공된 누산 토폴로지 정보 및 수신된 링크 토폴로지 메세지의 수신이전에 서브젝트 링크에 관련되어 저장된 토폴로지 정보를 반영하기 위해 선택되는 것을 특징으로 하는 방법.
  30. 통신 네트워크에서 노드의 적어도 로컬하게 재구성가능한 토폴로지를 결정하는 시스템으로서, 각각의 노드는 하나 이상의 인터페이스를 포함하며, 각각의 인터페이스는 단방향 접속을 통하여 다른 노드에 접속할 수 있는 입력 포트 및 출력 포트에 의해 정의되며, 노드는 이웃 노드로서 참조되는 단방향 접속을 통하여 다른 노드에 직접적으로 접속되며, 시작 노드는:
    시작 노드의 출력 포트로부터 프로브 메세지를 송신하는 송신기 수단을 포함하는데, 상기 프로브 메세지는 전송된 출력 포트를 식별하는 정보가 제공되며,
    상기 시작 노드의 입력 포트에서 프로브 응답을 수신하는 수신기 수단을 포함하는데, 상기 각각의 프로브 응답은 프로브 응답을 식별하는 정보외에 이에 대한 응답인 프로브 메세지를 식별하는 정보를 포함하며,
    수신된 프로브 응답이 초기 노드의 출력 포트로부터 이전에 수신된 프로브 메세지를 식별하는지를 결정하며, 만일 그렇다면, 상기 출력 포트로부터 링크 검출된 메세지의 전송을 일으킴으로써, 시작 노드의 출력 포트로부터 이웃 노드에 유효한 접속이 존재하는지를 결정하는 로직 수단을 포함하며, 상기 링크 검출된 메세지는 프로브 응답을 식별하는 정보가 제공되며, 따라서 상기 접속이 존재하는 것을 이웃 노드에 알려주며, 프로브 응답을 식별하는 상기 정보의 규정에 의해, 상기 이웃 노드가 상기 접속에 관련된 시작 노드에 대한 정보를 전송하기 위해 사용될 수 있는 출력 포트를 결정할 수 있는 시스템.
  31. 제 30 항에 있어서,
    임의의 두개의 단방향 접속은 동일 링크의 일부를 형성하기 위해 동일 인터페이스에 접속되며,
    상기 시작 노드의 각각의 인터페이스에 대하여, 시작 노드가 알고있는한 상기 인터페이스와 동일한 링크에 접속된 노드를 식별하는 토폴로지 정보를 저장하는 메모리 수단; 및
    만일 시작 노드의 출력 포트로부터 다른 노드에 유효 접속이 존재한다는 것이 결정되면, 상기 출력 포트로부터 링크 토폴로지 메세지의 전송을 유도하도록 배치된 로직 수단을 포함하며, 상기 링크 토폴로지 메세지는 시작 노드가 알고있는한, 상기 접속에 의해 일부가 형성되는 링크에 접속된 노드를 식별하는 토폴로지 정보외에, 상기 접속을 식별하는 정보가 제공되는 것을 특징으로 하는 시스템.
  32. 제 30 항 또는 제 31 항에 있어서, 상기 로직 수단은, 만일 수신된 프로브 응답이 시작 노드의 출력 포트로부터 이전에 전송된 프로브 메세지를 식별하지 않음을 결정하는 경우, 다른 노드에 프로브 응답의 포워딩을 유도하도록 배치되는 것을 특징으로 하는 시스템.
  33. 제 32 항에 있어서, 상기 로직 수단은, 만일 수신된 프로브 응답이 시작 노드의 출력 포트로부터 이전에 전송된 프로브 메세지를 식별하지 않음을 결정하는 경우, 프로브 응답이 수신된 입력 포트와 동일한 인터페이스의 일부를 형성하는 출력 포트에서만 상기 프로브 응답의 포워딩을 유도하도록 배치되는 것을 특징으로 하는 시스템.
  34. 제 30 항 내지 제 33 항 중 어느 한 항에 있어서, 상기 프로브 메세지는 시작 노드로부터 그 이웃 노드에만 전송되는 것을 특징으로 하는 시스템.
  35. 제 30 항 내지 제 34 항 중 어느 한 항에 있어서, 프로브 메세지가 노드의 입력 포트에서 수신되었을 때, 상기 프로브 메세지는 프로브 메세지를 식별하는 정보를 포함하며, 상기 로직 수단은 노드의 각각의 출력 포트에서 프로브 응답의 전송을 유도하도록 배치되며, 각각의 프로브 응답은 프로브 응답이 전송된 출력 포트를 식별하는 정보외에 프로브 메세지를 식별하는 정보가 제공되는 것을 특징으로 하는 시스템.
  36. 제 35 항에 있어서, 링크 탐색된 메세지가 노드의 입력 포트에서 수신되었을 때, 상기 메세지는 링크 탐색된 메세지의 전송을 유도하는 프로브 응답이 전송된 출력 포트를 식별하는 정보를 포함하며, 이때 상기 로직 수단은, 링크 탐색된 메세지가 수신된 유효 접속이 이웃 노드로부터 입력 포트에 존재하는가를 결정하기 위해, 그리고 상기 링크 탐색된 메세지에서 식별된 상기의 출력 포트가 상기 접속과 연관된 이웃 노드에 대한 정보를 전송하는 사용되는 것을 나타내는 정보를 상기 메모리 수단에 저장하도록, 배치되는 것을 특징으로 하는 시스템.
  37. 제 36 항에 있어서,
    임의의 두개의 단방향 접속은 동일 링크의 일부를 형성하도록 동일 인터페이스에 접속되며, 상기 로직 수단은, 이웃 노드로부터 링크 탐색된 메세지가 수신된 입력 포트에 새로운 유효 접속이 존재한다는 것이 결정되었을 때, 상기 링크 탐색된 메세지에서 식별된 출력 포트로부터 링크 토폴로지 메세지를 전송하도록, 배치되며, 상기 링크 토폴로지 메세지는 시작 노드가 알고있는한, 상기 접속에 의해 일부가 형성되는 링크에 접속된 노드를 식별하는 토폴로지 정보외에, 상기 접속을 식별하는 정보를 포함하는 것을 특징으로 하는 시스템.
  38. 통신 네트워크의 노드들 사이에서 토폴로지 정보를 로컬하게 할당하는 시스템으로서, 상기 각각의 노드는 하나 이상의 인터페이스를 포함하며, 각각의 인터페이스는 단방향 접속을 통하여 다른 노드에 접속될 수 있는 입력 포트 및 출력 포트에 의해 정의되고, 임의의 두개의 단방향 접속은 동일 링크의 일부를 형성하기 위해 동일 인터페이스에 접속되며, 노드는 단방향 접속을 통하여 이웃 노드로서 참조되는 다른 노드에 직접적으로 접속되는 시스템에 있어서, 상기 노드는:
    노드의 각각의 인터페이스에 대하여, 노드가 알고있는한, 인터페이스와 동일한 링크에 접속된 노드를 식별하는 토폴로지 정보외에 상기 링크의 위쪽 이웃 노드에 토폴로지 정보를 전송하기위해 사용되는 노드의 제안된 출력 포트를 식별하는 정보를 저장하는 메모리 수단;
    노드의 입력 포트에서 링크 토폴로지 메세지를 수신하는 수신기 수단을 포함하는데, 각각의 메세지는 상기 링크에 접속된 노드를 식별하는 토폴로지 정보외에 포함된 링크를 식별하는 정보를 포함하며;
    노드의 출력 포트로부터 링크 토폴로지 메세지를 송신하는 송신기 수단을 포함하는데, 상기 각각의 메세지는, 노드가 알고있는한, 상기 링크에 접속된 노드를 식별하는 토폴로지 정보외에 포함된 링크를 식별하는 정보를 포함하며,
    만일 수신된 링크 토폴로지 메세지가 참조되는 링크에서 위쪽 이웃 노드에 의해 수신된 링크 토폴로지 메세지가 수신되었거나, 또는 만일 상기 링크에서 위쪽의 이웃 노드에 토폴로지 정보를 전송하는데 사용되는 상기의 제안된 출력 포트로부터, 수신된 토폴로지 메세지가 상기 링크에서 아랫쪽 이웃 노드에 의해 전송되었다면, 수신된 링크 토폴로지 메세지에 의해 제공된 토폴로지 정보에 따라 상기 메모리 수단에 저장된 토폴로지 정보를 업데이트하며, 그리고 각각의 수신된 링크 토폴로지 메세지에 대하여, 수신된 링크 토폴로지 메세지가 수신된 인터페이스의 출력 포트로부터 링크 토폴로지 메세지를 전송하도록 하는 로직 수단을 포함하는 것을 특징으로 하는 시스템.
  39. 제 38 항에 있어서, 상기 로직 수단은 수신된 토폴로지 메세지에서 제공된 토폴로지 정보가 토폴로지 메세지가 이미 저장된 토폴로지 정보와 비교하여 새로운 것일때만 상기 메모리 수단에 저장된 토폴로지 정보를 업데이트시키도록 배치되는 것을 특징으로 하는 시스템.
  40. 제 38 항 또는 제 39 항에 있어서, 상기 로직 수단은 수신된 링크 토폴로지 메세지가 토폴로지 정보가 포함된 링크에 대한, 이미 저장된 토폴로지 정보와 비교하여 새로운 토폴로지 정보를 제공할 때만 링크 토폴로지 메세지의 전송을 유도하도록 배치되는 것을 특징으로 하는 시스템.
  41. 제 38 항 내지 제 40 항 중 어느 한 항에 있어서, 수신된 링크 토폴로지 메세지에 의해 제공된 누산 토폴로지 정보 및 수신된 링크 토폴로지 메세지의 수신이전에 서브젝트 링크에 관련되어 이미 저장된 토폴로지 정보를 반영하기 위해, 링크 토폴로지 메세지의 수신의 결과로서, 상기 노드로부터 전송되는 토폴로지 메세지에 토폴로지 정보가 포함되도록, 상기 로직 수단이 토폴로지 정보를 선택하도록 배치되는 것을 특징으로 하는 시스템.
KR1020017006516A 1998-11-24 1999-11-23 네트워크 토폴로지를 결정하는 방법 및 시스템 KR20010082312A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
SE9804023-1 1998-11-24
SE9804023A SE514430C2 (sv) 1998-11-24 1998-11-24 Förfarande och system för bestämning av nättopologi
PCT/SE1999/002169 WO2000031925A1 (en) 1998-11-24 1999-11-23 Methods and systems for determining network topology

Publications (1)

Publication Number Publication Date
KR20010082312A true KR20010082312A (ko) 2001-08-29

Family

ID=20413394

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020017006516A KR20010082312A (ko) 1998-11-24 1999-11-23 네트워크 토폴로지를 결정하는 방법 및 시스템

Country Status (6)

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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100975297B1 (ko) * 2002-05-31 2010-08-12 코닌클리케 필립스 일렉트로닉스 엔.브이. 네트워크에서의 통신 경로 결정 및 구성

Families Citing this family (16)

* 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
KR100975163B1 (ko) * 2002-04-08 2010-08-10 에어마그네트, 인코포레이티드 무선 근거리 통신망을 모니터링하는 방법 및 시스템
US7206288B2 (en) * 2002-06-12 2007-04-17 Cisco Technology, Inc. Methods and apparatus for characterizing a route in fibre channel fabric
CN1321530C (zh) * 2005-04-12 2007-06-13 四川汇源科技发展股份有限公司 用于确定有线电视hfc网络拓扑结构的方法
WO2007073627A1 (fr) * 2005-12-29 2007-07-05 Zte Corporation Procede permettant de retransmettre rapidement un message et systeme correspondant
CN101064631A (zh) * 2006-04-25 2007-10-31 华为技术有限公司 拓扑结构扫描方法和扫描系统
CN101399757B (zh) 2007-09-25 2011-02-02 华为技术有限公司 跟踪时钟源的方法和装置
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 (zh) * 2020-12-21 2023-04-07 深圳云天励飞技术股份有限公司 一种网络连接装置和网络系统
CN114221859B (zh) * 2022-01-06 2023-12-01 烽火通信科技股份有限公司 一种租户网络物理链路连通性拓扑生成方法及系统

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 (nl) * 1982-12-22 1983-06-22 Bell Telephone Mfg Communicatiestelsel met meerdere ringen
JPH0767112B2 (ja) * 1983-12-23 1995-07-19 株式会社日立製作所 通信ネツトワ−クシステム
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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100975297B1 (ko) * 2002-05-31 2010-08-12 코닌클리케 필립스 일렉트로닉스 엔.브이. 네트워크에서의 통신 경로 결정 및 구성

Also Published As

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

Similar Documents

Publication Publication Date Title
KR20010082312A (ko) 네트워크 토폴로지를 결정하는 방법 및 시스템
CA2220469C (en) Failure restoration system suitable for a large-scale network
US4864559A (en) Method of multicast message distribution
US6021113A (en) Distributed precomputation of network signal paths with table-based link capacity control
US5079767A (en) Method of multicast message distribution
US5805593A (en) Routing method for setting up a service between an origination node and a destination node in a connection-communications network
EP1011230B1 (en) Method and network node for enhanced routing and reservation protocol
US6130875A (en) Hybrid centralized/distributed precomputation of network signal paths
US6073248A (en) Distributed precomputation of signal paths in an optical network
US7366112B2 (en) Communication network control system, control method, node and program
US5805924A (en) Method and apparatus for configuring fabrics within a fibre channel system
US6151304A (en) Distributed precomputation of network signal paths with improved performance through parallelization
EP1263173A1 (en) An adaptive path discovery process for routing data packets in a multinode network
JPH06202969A (ja) ネットワークにおけるコンピュータ及びその運用方法
JPH10512426A (ja) Atm交換網における呼の経路指定
JPH10501935A (ja) ローカルに構成されたルーチング・テーブルを使用したパケット通信網においてパケットをルーチングする方法およびシステム
JP4648251B2 (ja) ネットワーク中継システム、ネットワーク中継システムの制御方法、および、ネットワーク中継システムにおける管理装置
NZ315056A (en) Determining an additional route in a fully or partly meshed communications network of nodes, comprising sending a route-finder signature from a node to a neighbouring node
US7133402B2 (en) Link identifier assignment system in connection-oriented communication network
JPH0662029A (ja) 通信ネットワーク・システム
US6765908B1 (en) System and method for transferring packets in a “connectionless” network
KR19990036307A (ko) 노드 통신망의 추가 루트 결정 방법 및 사용 노드
KR20000026058A (ko) 계층망 구조상에서의 최적 경로 선택 라우팅방법2
KR100281683B1 (ko) 비동기전송모드 교환시스템의 동적 라우팅 기반 호 경로 설정방법 및 재설정방법
US20030235154A1 (en) Flood signaling architecture and process for provisioning communication paths

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid