KR102045444B1 - 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법과 그를 수행하는 노드 장치 - Google Patents

종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법과 그를 수행하는 노드 장치 Download PDF

Info

Publication number
KR102045444B1
KR102045444B1 KR1020180137018A KR20180137018A KR102045444B1 KR 102045444 B1 KR102045444 B1 KR 102045444B1 KR 1020180137018 A KR1020180137018 A KR 1020180137018A KR 20180137018 A KR20180137018 A KR 20180137018A KR 102045444 B1 KR102045444 B1 KR 102045444B1
Authority
KR
South Korea
Prior art keywords
node
path
spanning tree
nodes
slot
Prior art date
Application number
KR1020180137018A
Other languages
English (en)
Other versions
KR20190063388A (ko
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 KR20190063388A publication Critical patent/KR20190063388A/ko
Application granted granted Critical
Publication of KR102045444B1 publication Critical patent/KR102045444B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/121Shortest path evaluation by minimising delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/32Flooding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/48Routing tree calculation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/18End to end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/72Admission control; Resource allocation using reservation actions during connection setup

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법에 관한 것이며, 상기 방법은 (a) 망 내의 제1 노드가 패킷 전송 시작 노드인 경우, 목적지 노드의 주소를 포함하는 경로 검토 요청 메시지를 플러딩을 통해 상기 패킷 전송 시작 노드로부터 상기 목적지 노드까지의 복수의 후보 경로 상의 경로 상 노드들 중 적어도 일부에게 전송하는 단계; (b) 상기 제1 노드가 상기 경로 상 노드들 중 상기 목적지 노드와 이웃하는 목적지 이웃 노드인 경우, 상기 제1 노드가 포함된 후보 경로 상의 이전 이웃 노드로부터 경로 검토 요청 메시지를 수신하고, 경로 검토 요청 메시지를 전달한 이전 이웃 노드에게 경로 검토 요청 메시지에 대한 응답 메시지를 전송하는 단계; (c) 상기 제1 노드가 상기 경로 상 노드들 중 상기 목적지 이웃 노드를 제외한 중간 노드인 경우, 상기 제1 노드가 포함된 후보 경로 상의 이전 이웃 노드로부터 수신한 경로 검토 요청 메시지를 상기 제1 노드가 포함된 후보 경로 상의 다음 이웃 노드에게 전달하고, 다음 이웃 노드로부터 수신한 응답 메시지에 자신의 응답 메시지를 업데이트하여 이전 이웃 노드에게 전달하는 단계; 및 (d) 상기 제1 노드가 응답 메시지를 최종 수신하는 패킷 전송 시작 노드인 경우, 수신한 응답 메시지들에 수록된 상기 복수의 후보 경로별 지연을 비교하여, 상기 복수의 후보 경로 중 종단간 지연 요구치를 만족하는 경로를 종단간 저지연 전송 경로로 선택하는 단계를 포함할 수 있다.

Description

종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법과 그를 수행하는 노드 장치 {METHOD FOR DECISION OF END-TO-END TRANSMIT PATH AND SEARCH OF TRANSMIT SLOT FOR TRANSMITTING END-TO-END LOW-LATENCY DATA AND NODE APPARATUS PERFORMING THE THEORY}
본원은 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법과 그를 수행하는 노드 장치에 관한 것이다. 특히, 본원은 종단간 저지연 전송을 위하여 스패닝 트리와 최단 경로를 혼합하여 사용하는 종단간 전송 경로 및 슬롯 탐색 방법(Hybrid Spanning Tree-Shortest Path, HSTSP)과 그를 수행하는 노드 장치에 관한 것이다.
종단간 전송의 다양한 전송 품질을 보장하기 위하여 종단간 전송 경로와 전송 슬롯을 설정하기 위한 다양한 방법들이 존재하며, 종단간 전송 경로를 선택하는 방법으로는 일예로 최단 경로 선택 방법, 최소 홉수 경로 선택 방법, 트래픽 부하가 작은 경로를 선택하는 방법 등이 있다.
best effort 트래픽이나 QoS(Quality-of-Service) 트래픽 중에서 종단간 전송 지연 요구치가 엄격하지 않은 트래픽의 경우에는 일차적으로 종단간 전송 경로를 적절히 선택함으로써 서비스 요구 품질을 만족시키고자 한다. 이때, 전송 경로 선택에 더해서, 전송 경로상의 노드들에서 여러 트래픽 전달시 트래픽 간 우선순위를 부여하여 차등적으로 전송 순서를 조절함으로써 서비스 요구 품질에 대한 충족도를 높일 수 있다.
한편, 종단간 전송 경로 선택시 전송 경로는 루프-프리(loop-free)가 되어야 하며, 가능한 망내 여러 링크들을 고르게 사용함으로써 트래픽 부하를 망내에 고르게 분배하는 것이 바람직하다.
이더넷(Ethernet) 기술 중 스패닝 트리 프로토콜(Spanning Tree Protocol, STP)에서는 기반망 구조 위에 오버레이 스패닝 트리(overlay spanning tree)를 구성하고 이 스패닝 트리를 통해서 전송 경로를 설정함으로써 loop-free 종단간 전송 경로라는 요구사항을 만족시키고자 한다. 그러나, STP에서는 망내 링크들이 고르게 사용되지 못하는 단점이 있다. 이러한 점을 보완하기 위하여 Shortest-Path Bridging(SPB) 기술이 개발된 바 있다. SPB에서는 종단간 경로 중 최단경로를 선택하며 종단간 비용이 동일한 다중경로를 통해 트래픽 전송이 가능하게 됨에 따라 전송과 망 자원 사용의 효율성이 높아지게 되었다.
한편 종단간 전송 지연에 대한 요구치가 엄격한 경우에는 종단간 전송 경로를 결정하고 예약하는 것 외에 이 전송 경로에서 시간 슬롯까지 예약을 하게 된다. 따라서, 각 노드들은 전송 경로상의 다음 노드와의 링크에서 타임 슬롯을 배타적으로 이 전송 경로를 통해 전달되는 트래픽에 할당함으로써 트래픽의 전송 성능을 높일 수 있다. 하지만 이러한 기술은 초저의 종단간 지연을 보장하고자하는 서비스에 적용시키기에 한계가 있다. 이는 도 1 내지 도 3을 참조하여 보다 쉽게 이해될 수 있다.
도 1은 노드 A(Node A)에서 노드 B(Node B)로 데이터를 전송하는 경우에 노드간 시간 비동기로 인해 최소 패킷 전달 시간이 발생하는 경우의 예를 나타낸 도면이다. 도 2는 시그널링 패킷의 전달 지연과 컷스루(cut-through) 방식의 데이터 패킷 전달 지연의 차이의 예를 나타낸 도면이다. 또한, 도 3은 시간 동기화에 의한 연속된 링크에서의 슬롯 시작 시점이 정확히 조정됨에 따라 전송 지연이 거의 없는 컷스루(cut-through) 전달 방식에 의한 전송이 가능한 경우에 대하여, 다른 노드의 패킷 전송에 의해 전송 지연이 발생하는 경우의 예를 나타낸 도면이다. 이때, 도 1 내지 도 3의 도면 상에서 Tx는 데이터 전송(Transmit Data), Rx는 데이터 수신(Receive Data), link propagation delay는 링크 전파 지연을 나타낸다.
도 1 내지 도 3을 참조하면, 도 1과 같이 종단간 전송 경로를 구성하는 링크들 사이에 시간동기화가 엄밀하지 않는 경우에는 연속된 링크의 시간(time) 슬롯의 시작 시점에서 차이가 날 수 있으며, 최소한 2슬롯만큼의 시간 지연(minimum forwarding latency)이 발생하게 된다. 또한, 도 2와 같이 연속된 링크들에서의 전송 트래픽이 양이 많은 경우에는 전송 슬롯들 사이의 간격 차이로 인해서 시간 지연이 발생하게 된다.
또한, 종단간 전송 자원의 예약을 위해 자원 예약 프로토콜(Resource Reservation Protocol, RSVP)과 같은 프로토콜들이 존재하는데, 이들은 주로 자원 예약을 위한 시그널링 패킷들이 목적지까지 전달되면서 거쳐간 경로상의 노드들의 자원들을 예약한다. 그런데, 이러한 시그널링 패킷들은 각 노드에서 처리되는 시간을 필요로 하지만, 실제 종단간 초저지연을 요구하는 데이터 패킷들의 경우에는 전송시 전송 경로 상의 각 노드들에서 처리되는 시간을 최소화하고자 하기 때문에, 도 3에 도시된 바와 같이 시그널링 패킷의 전달 지연과 데이터 패킷의 전달 지연은 일치할 수가 없다. 구체적으로 노드 A와 노드 C가 노드 B에게 패킷을 전송하는 경우에 노드 C의 패킷 전달로 인해 노드 A의 패킷 전달이 늦어지게 된다. 이에 따르면, 자원 예약에 관한 시그널링 패킷의 종단간 전달 시간을 기준으로 종단간 전송 경로의 자원을 결정하는 것은 정확하지 않게 됨을 확인할 수 있다.
본원의 배경이 되는 기술은 한국공개특허공보 제10-2014-0027161호에 개시되어 있다.
본원은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 초저의 종단간 전송 지연(종단간 초저지연 전송)을 보장할 수 있는 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법과 그를 수행하는 노드 장치를 제공하려는 것을 목적으로 한다.
다만, 본원의 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본원의 제1 측면에 따른 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법은, (a) 망 내의 제1 노드가 패킷 전송 시작 노드인 경우, 목적지 노드의 주소를 포함하는 경로 검토 요청 메시지를 플러딩을 통해 상기 패킷 전송 시작 노드로부터 상기 목적지 노드까지의 복수의 후보 경로 상의 경로 상 노드들 중 적어도 일부에게 전송하는 단계; (b) 상기 제1 노드가 상기 경로 상 노드들 중 상기 목적지 노드와 이웃하는 목적지 이웃 노드인 경우, 상기 제1 노드가 포함된 후보 경로 상의 이전 이웃 노드로부터 경로 검토 요청 메시지를 수신하고, 경로 검토 요청 메시지를 전달한 이전 이웃 노드에게 경로 검토 요청 메시지에 대한 응답 메시지를 전송하는 단계; (c) 상기 제1 노드가 상기 경로 상 노드들 중 상기 목적지 이웃 노드를 제외한 중간 노드인 경우, 상기 제1 노드가 포함된 후보 경로 상의 이전 이웃 노드로부터 수신한 경로 검토 요청 메시지를 상기 제1 노드가 포함된 후보 경로 상의 다음 이웃 노드에게 전달하고, 다음 이웃 노드로부터 수신한 응답 메시지에 자신의 응답 메시지를 업데이트하여 이전 이웃 노드에게 전달하는 단계; 및 (d) 상기 제1 노드가 응답 메시지를 최종 수신하는 패킷 전송 시작 노드인 경우, 수신한 응답 메시지들에 수록된 상기 복수의 후보 경로별 지연을 비교하여, 상기 복수의 후보 경로 중 종단간 지연 요구치를 만족하는 경로를 종단간 저지연 전송 경로로 선택하는 단계를 포함할 수 있다.
상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본원의 제2 측면에 따른 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색을 수행하는 노드 장치는, 망 내의 상기 노드 장치가 패킷 전송 시작 노드인 경우, 목적지 노드의 주소를 포함하는 경로 검토 요청 메시지를 플러딩을 통해 상기 패킷 전송 시작 노드로부터 상기 목적지 노드까지의 복수의 후보 경로 상의 경로 상 노드들 중 적어도 일부에게 전송하는 경로 검토 요청 메시지 전송부; 상기 노드 장치가 상기 경로 상 노드들 중 상기 목적지 노드와 이웃하는 목적지 이웃 노드인 경우, 상기 노드 장치가 포함된 후보 경로 상의 이전 이웃 노드로부터 경로 검토 요청 메시지를 수신하고, 경로 검토 요청 메시지를 전달한 이전 이웃 노드에게 경로 검토 요청 메시지에 대한 응답 메시지를 전송하는 응답 메시지 전송부; 및 상기 노드 장치가 응답 메시지를 최종 수신하는 패킷 전송 시작 노드인 경우, 수신한 응답 메시지들에 수록된 상기 복수의 후보 경로별 지연을 비교하여, 상기 복수의 후보 경로 중 종단간 지연 요구치를 만족하는 경로를 종단간 저지연 전송 경로로 선택하는 경로 선택부를 포함하고, 상기 응답 메시지 전송부는, 상기 노드 장치가 상기 경로 상 노드들 중 상기 목적지 이웃 노드를 제외한 중간 노드인 경우, 상기 노드 장치가 포함된 후보 경로 상의 이전 이웃 노드로부터 수신한 경로 검토 요청 메시지를 상기 노드 장치가 포함된 후보 경로 상의 다음 이웃 노드에게 전달하고, 다음 이웃 노드로부터 수신한 응답 메시지에 자신의 응답 메시지를 업데이트하여 이전 이웃 노드에게 전달할 수 있다.
상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본원의 제3 측면에 따른 컴퓨터 프로그램은, 본원의 제1 측면에 따른 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법을 실행시키기 위하여 기록매체에 저장되는 것일 수 있다.
상술한 과제 해결 수단은 단지 예시적인 것으로서, 본원을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 추가적인 실시예가 존재할 수 있다.
전술한 본원의 과제 해결 수단에 의하면, 복수의 후보 경로 상의 경로 상 노드들 중 적어도 일부에게 경로 검토 요청 메시지를 전송하고, 경로 검토 요청 메시지에 대한 응답으로서 수신한 응답 메시지들에 수록된 복수의 후보 경로별 지연 시간을 비교하여 복수의 후보 경로 중 종단간 지연 요구치를 만족하는 경로를 종단간 저지연 전송 경로로 선택함으로써, 초저의 종단간 전송 지연(종단간 초저지연 전송)을 보장할 수 있다.
본원은 종래에 스패닝 트리에 속한 링크만을 이용하여 패킷을 전송하는 경우 트래픽 부하가 쉽게 커져 전송 슬롯에 대한 대기 시간이 증가하고 이로 인해 종단간 지연 시간이 증가하는 문제를 해소하고자, 스패닝 트리에 속한 링크와 속하지 않는 링크를 모두 이용하여 종단간 전송 경로 설정 및 경로상의 링크에서 전송 슬롯을 탐색(설정)함으로써, 전송 경로가 루프 프리(loop-free)를 만족하면서도 종단간 전송 지연 요구치를 만족시킬 수 있는 종단간 저지연 전송지연이 가능하도록 할 수 있다.
본원은 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법을 제공으로 하여금, 다양한 종단간 전송 지연에 대한 요구치를 만족하면서 망 내 트래픽 부하를 분산시킬 수 있다.
다만, 본원에서 얻을 수 있는 효과는 상기된 바와 같은 효과들로 한정되지 않으며, 또 다른 효과들이 존재할 수 있다.
도 1은 노드 A에서 노드 B로 데이터를 전송하는 경우에 노드간 시간 비동기로 인해 최소 패킷 전달 시간이 발생하는 경우의 예를 나타낸 도면이다.
도 2는 시그널링 패킷의 전달 지연과 컷스루(cut-through) 방식의 데이터 패킷 전달 지연의 차이의 예를 나타낸 도면이다.
도 3은 시간 동기화에 의한 연속된 링크에서의 슬롯 시작 시점이 정확히 조정됨에 따라 전송 지연이 거의 없는 컷스루 전달 방식에 의한 전송이 가능한 경우에 대하여, 다른 노드의 패킷 전송에 의해 전송 지연이 발생하는 경우의 예를 나타낸 도면이다.
도 4는 본원의 일 실시예에 따른 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색을 수행하는 노드 장치의 개략적인 구성을 나타낸 도면이다.
도 5는 본원의 일 실시예에 따른 본 노드 장치에 의해 형성된 스패닝 트리의 예를 나타낸 도면이다.
도 6은 본원의 일 실시예에 따른 본 노드 장치를 통해 형성된 스패닝 트리가 시간 동기화에 의한 연속된 링크에서의 슬롯 시작 시점이 정확히 조정된 스패닝 트리인 경우, 컷스루 전달 방식에 의하여 최소 노드 전송 지연이 발생한 경우의 예를 나타낸 도면이다.
도 7은 본원의 일 실시예에 따른 본 노드 장치에서 응답 메시지의 전송시 고려되는 슬롯 상황 정보를 설명하기 위한 도면이다.
도 8은 본원의 일 실시예에 따른 본 노드 장치에서 종단간 노드 사이의 경로 및 슬롯 설정을 위한 시그널링 메시지들의 흐름을 개략적으로 나타낸 도면이다.
도 9는 본원의 일 실시예에 따른 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법에 대한 동작 흐름도이다.
도 10은 본원의 다른 실시예에 따른 네트워크에서의 스패닝 트리 형성을 위한 노드 장치의 개략적인 구성을 나타낸 도면이다.
도 11은 본원의 일 실시예에 따른 네트워크에서의 스패닝 트리 형성 방법에 대한 개략적인 동작 흐름도이다.
도 12는 본원의 일 실시예에 따른 네트워크에서의 스패닝 트리 형성 방법에 대한 다른 동작 흐름도이다.
아래에서는 첨부한 도면을 참조하여 본원이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본원의 실시예를 상세히 설명한다. 그러나 본원은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본원을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본원 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결" 또는 "간접적으로 연결"되어 있는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부재가 다른 부재 "상에", "상부에", "상단에", "하에", "하부에", "하단에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부분이 어떤 구성 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.
본원은 일예로 유선망에서 초저의 종단간 전송 지연(종단간 초저지연 전송)에 대한 요구치를 만족시킬 수 있는 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법과 그를 수행하는 노드 장치에 관한 것이다. 달리 말해, 본원은 초저의 종단간 전송 지연에 대한 요구치를 만족하는 종단간 전송 경로 및 전송 경로를 구성(형성)하는 각 링크에서의 전송 슬롯을 결정하는 방법과 그를 수행하는 노드 장치에 관한 것이다.
도 4는 본원의 일 실시예에 따른 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색을 수행하는 노드 장치(이하 설명의 편의상 '본 노드 장치(10)'라 함)의 개략적인 구성을 나타낸 도면이다.
도 4를 참조하면, 본 노드 장치(10)는 경로 검토 요청 메시지 전송부(12), 응답 메시지 전송부(13) 및 경로 선택부(14)를 포함할 수 있다. 또한, 본 노드 장치(10)는 후보 경로 선정부(11) 및 데이터 전송부(15)를 포함할 수 있다. 또한, 본 노드 장치(10)는 스패닝 트리 형성부(미도시)를 포함할 수 있다.
본 노드 장치(10)가 적용될 수 있는 망(네트워크, network)은 일예로 이더넷 네트워크, 3GPP(3rd Generation Partnership Project) 네트워크, LTE(Long Term Evolution) 네트워크, WIMAX(World Interoperability for Microwave Access) 네트워크, 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), 블루투스(Bluetooth) 네트워크, NFC(Near Field Communication) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등일 수 있으며, 다만 이에만 한정되는 것은 아니다.
또한, 본 노드 장치(10)는 스위치, 라우터 등을 의미할 수 있으나, 이에만 한정되는 것은 아니다.
본 노드 장치(10)는 스패닝 트리 형성부(미도시)를 통해, 스패닝 트리(Spanning Tree)로서 노드들간의 시간 동기화가 이루어진 망에서 전송 슬롯의 시작 시점들이 조정된 오버레이 스패닝 트리(overlay spanning tree)를 형성(생성, 구축)할 수 있다. 본 노드 장치(10)는 스패닝 트리 형성부(미도시)에 의하여 형성된 스패닝 트리를 이용하여 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색을 수행할 수 있다.
스패닝 트리 형성부(미도시)는 스패닝 트리를 형성(생성, 구축)할 수 있다. 여기서, 스패닝 트리는 스패닝 트리에 속한 노드들 간의 시간 동기화를 통해 슬롯 시작 시점이 정확히 조정된 오버레이 스패닝 트리일 수 있다.
보다 자세하게, 스패닝 트리 형성부(미도시)는 트래픽 부하를 고려한 스패닝 트리를 생성할 수 있으며, 트래픽 부하를 고려하여 생성된 스패닝 트리에 대하여 노드들 간의 시간 동기화를 통해 슬롯 시작 시점을 조정함으로써, 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색을 위한 오버레이 스패닝 트리를 형성(생성, 구축)할 수 있다. 이때, 트래픽 부하를 고려한 스패닝 트리의 생성 방법에 대해서는 후술하여 자세히 설명하기로 하며, 이하에서는 슬롯 시작 시점이 시간 동기화를 통해 조정된 오버레이 스패닝 트리의 형성에 대하여 보다 자세히 설명하기로 한다.
도 5는 본원의 일 실시예에 따른 본 노드 장치(10)에 의해 형성된 스패닝 트리(오버레이 스패닝 트리)의 예를 나타낸 도면이다.
도 5를 참조하면, 스패닝 트리 형성부(미도시)에 의하여 형성되는 스패닝 트리는, 제1 레벨(i)에 속한 노드들의 상향 링크(상향 송신 링크)에서의 슬롯 시작 시점이 모두 하기 수학식 1을 만족하도록 설정되고, 제1 레벨(i)에 속한 노드들의 하향 링크(하향 송신 링크)에서의 슬롯 시작 시점이 모두 하기 수학식 2를 만족하도록 설정되고, 인접한 두 레벨인 제1 레벨(i)과 제2 레벨(i+1)에 속한 노드들의 슬롯 시작 시점의 사이가 하기 수학식 3의 관계를 만족하도록 설정될 수 있다.
[수학식 1]
tu,i + m × ts
[수학식 2]
td,i + m × ts
[수학식 3]
tu,i = tu,i +1 + tp, td,i +1 = td,i + tp
여기서, m은 정수, t s는 한 슬롯의 길이(슬롯 하나의 길이), t p 는 상기 인접한 두 레벨에 대응하는 인접한 두 노드를 잇는 링크(송신 링크)에서의 전파 지연값을 나타낸다. 또한, t u,i 는 제1 레벨(i)에 대응하는 노드의 상향 링크의 길이, t u,i +1 는 제2 레벨(i+1)에 대응하는 노드의 상향 링크의 길이, t d,i 는 제1 레벨(i)에 대응하는 노드의 하향 링크의 길이, t d,i +1 는 제2 레벨(i+1)에 대응하는 노드의 하향 링크의 길이를 나타낸다.
보다 구체적으로, 스패닝 트리 형성부(미도시)는 스패닝 트리(오버레이 스패닝 트리)에서 루트 노드의 레벨을 0 (level 0)으로 결정하고, 루트 노드로부터의 홉 수에 따라 다른 노드들의 레벨을 결정할 수 있다. 여기서, 일예로 한 노드의 입장에서 자기보다 레벨이 낮은, 즉 루트 노드 방향에 존재하는 노드와 연결되는 링크는 상향 링크라 할 수 있고, 그 반대 방향에 존재하는 노드와 연결되는 링크는 하향 링크라 할 수 있다.
이때, 스패닝 트리 형성부(미도시)는 특정 레벨 i에 속한 노드들의 상향 링크에서의 슬롯 시작 시점을 모두 상기 수학식 1(t u,i + m × t s )로 동일하게 설정할 수 있다. 또한, 스패닝 트리 형성부(미도시)는 레벨 i에 속한 노드들의 하향 링크에서의 슬롯 시작 시점을 상기 수학식 2(t d,i + m × t s )로 모두 동일하게 설정할 수 있다. 또한, 스패닝 트리 형성부(미도시)는 인접한 두 레벨 ii+1에 속한 노드들의 슬롯 시작 시점 사이를 상기 수학식 3(t u,i = t u,i +1 + t p , t d,i +1 = t d,i + t p )의 관계를 가지도록 설정할 수 있다. 이에 따르면, 루트 노드에서는 t d, 0 = t u, 1 + t p 으로 변형될 수 있다. 달리 말해, 루트 노드에서의 슬롯 시작 시점인 t d, 0t u, 1 + t p 으로 변형되어 표현될 수 있다.
도 6은 본원의 일 실시예에 따른 본 노드 장치(10)를 통해 형성된 스패닝 트리가 시간 동기화에 의한 연속된 링크에서의 슬롯 시작 시점이 정확히 조정된 스패닝 트리인 경우, 컷스루(cut-through) 전달 방식에 의하여 최소 노드 전송 지연이 발생한 경우의 예를 나타낸 도면이다.
도 6을 참조하면, 스패닝 트리 형성부(미도시)에 의해 형성된 슬롯 시작 시점이 조정된 스패닝 트리에서 이 트리에 속한 링크를 통해 패킷(데이터 패킷)이 전달되는 경우, 전달되는 패킷(데이터 패킷)은 도 6에 도시된 바와 같이 노드에서의 전달 지연 시간이 거의 없는 컷스루(cut-through) 방식으로의 전달이 가능하다. 이러한 경우, 바람직하게는 종단간 전송 지연이 최선의 경우에 데이터 패킷이 거쳐가는 링크의 수와 각 링크에서의 전파 지연값의 곱으로 주어질 수(산출될 수) 있다.
그런데, 실제의 경우에는 종단간 전송 지연이 앞서 설명한 최선의 경우에서의 종단간 전송 지연보다 더 크게 발생할 수 있다. 그 이유들 중의 하나로는 도 2를 참조하여 기술한 바와 같이 다른 트래픽 전송으로 인한 전송 슬롯의 대기 시간이 발생하기 때문이라 할 수 있다. 특히, 스패닝 트리에 속한 링크만을 이용하여 패킷(데이터 패킷)을 전송하는 경우에는 트래픽 부하가 쉽게 커지며, 이에 따라 앞서 언급한 전송 슬롯에 대한 대기 시간이 증가하고, 이로 인해 종단간 지연 시간 또한 증가하게 된다. 따라서, 이러한 문제를 해소하기 위해, 본원은 본 노드 장치(10)로 하여금 스패닝 트리에 속한 링크와 속하지 않는 링크를 모두 이용하여 전송 경로가 루프 프리(loop-free)를 만족하면서도 종단간 전송 지연 요구치를 만족시킬 수 있는 종단간 전송 경로 설정 및 경로상의 링크에서 전송 슬롯을 설정할 수 있는 방법에 대해 제안한다. 구체적인 설명은 다음과 같다.
경로 검토 요청 메시지 전송부(12)는 망 내의 본 노드 장치(10)가 패킷 전송 시작 노드(달리 표현하여, 송신 노드, 소스 노드)인 경우, 목적지 노드의 주소를 포함하는 경로 검토 요청 메시지(Path Check Request Message, 혹은 연결 요청 메시지)를 플러딩(flooding)을 통해 패킷 전송 시작 노드로부터 목적지 노드까지의 복수의 후보 경로 상의 경로 상 노드들 중 적어도 일부에게 전송할 수 있다. 이때, 경로 검토 요청 메시지가 전송되기 이전에, 후보 경로 선정부(11)에 의해 복수의 후보 경로가 선정될 수 있다.
후보 경로 선정부(11)는 망 내의 본 노드 장치(10)가 패킷 전송 시작 노드인 경우, 망의 토폴로지와 스패닝 트리의 토폴로지에 기반하여, 패킷 전송 시작 노드로부터 목적지 노드까지 연결된 스패닝 트리 상의 기본 경로 및 스패닝 트리 외의 패킷 전송 시작 노드로부터 목적지 노드까지 연결된 적어도 하나의 최단 경로를 포함하도록 복수의 후보 경로를 선정할 수 있다.
여기서, 적어도 하나의 최단 경로는 패킷 전송 시작 노드와 목적지 노드 사이의 최단 경로 및 스패닝 트리 상의 기본 경로를 일부 우회하는 트리우회 경로 중 적어도 하나를 포함할 수 있다. 이때, 트리우회 경로는 스패팅 트리 상의 동일 레벨의 노드를 연결하는 우회 경로를 의미할 수 있다. 다시 말해, 트리우회 경로는 스패닝 트리 상의 기본 경로에 대응하는 노드들 중 적어도 일부의 노드가 그와 동일 레벨에 속한 다른 노드로 연결된 형태의 경로를 의미할 수 있다. 즉, 트리우회 경로에는 기본 경로에 대응하는 노드들 중 적어도 일부의 노드 대신, 그와 동일 레벨에 속한 다른 노드가 포함될 수 있다.
경로 검토 요청 메시지 전송부(12)는 본 노드 장치(10)가 패킷(데이터 패킷) 전송을 시작하려는 노드인 패킷 전송 시작 노드인 경우, 경로 검토 요청 메시지를 일예로 플러딩(flooding)을 통해 전송할 수 있다. 여기서, 경로 검토 요청 메시지에는 목적지 노드의 주소가 포함될 수 있다.
이때, 패킷 전송 시작 노드로부터 목적지 노드의 주소를 포함하는 경로 검토 요청 메시지를 수신한 노드는, 루프 프리(loop-free)와 과도한 메시지 플러딩을 방지를 위하여 수신한 경로 검토 요청 메시지를 다음과 같은 규칙성을 가지고 이웃 노드에게 전송할 수 있다. 여기서, 이웃 노드와의 연결 링크는 스패닝 트리에 속한 링크 및 스패닝 트리에 속하지 않은 링크를 포함할 수 있다.
달리 말해, 패킷 전송 시작 노드로부터 목적지 노드의 주소를 포함하는 경로 검토 요청 메시지를 수신한 노드는, 수신한 경로 검토 요청 메시지를 스패닝 트리에 속한 링크 상의 이웃 노드 뿐만 아니라 스패닝 트리에 속하지 않은 링크 상의 이웃 노드로 전송할 수 있다.
여기서, 스패닝 트리에 속한 링크 상의 이웃 노드라 함은, 본 노드 장치(10)가 패킷 전송 시작 노드인 경우, 패킷 전송 시작 노드로부터 목적지 노드까지 연결된 스패닝 트리 상의 기본 경로 상에서 본 노드 장치(10)와 이웃해 있는 이웃 노드(즉, 본 노드 장치와 이웃한 기본 경로 상의 이웃 노드)를 의미할 수 있다. 또한, 스패닝 트리에 속하지 않은 링크 상의 이웃 노드라 함은, 본 노드 장치(10)가 패킷 전송 시작 노드인 경우, 패킷 전송 시작 노드로부터 목적지 노드까지 연결된 적어도 하나의 최단 경로 상에서 본 노드 장치(10)와 이웃해 있는 이웃 노드(즉, 본 노드 장치와 이웃한 적어도 하나의 최단 경로 상의 이웃 노드)를 의미할 수 있다.
이때, 스패닝 트리 상의 노드를 포함한 망 내의 모든 노드들(전체 노드들)은 해당 망의 기본 토폴로지와 스패닝 트리(오버레이 스패닝 트리)의 토폴로지를 알고 있으며, 이에 따라 특정 노드에게 연결되는 스패닝 트리 상의 경로는 모든 노드들이 알 수 있다. 이때, 스패닝 트리 상에서는 목적지 노드까지의 경로가 하나 존재하며, 이는 기본 경로라 지칭될 수 있다. 또한, 망의 기본 토폴로지 정보를 이용하는 경우에는 목적지까지의 최단 경로들을 찾을 수 있다.
달리 표현하면, 후보 경로 선정부(11)는 본 노드 장치(10)가 패킷 전송 시작 노드인 경우, 모든 노드들(전체 노드들)이 기 알고있는 망의 토폴로지와 스패닝 트리의 토폴로지에 기반하여, 패킷 전송 시작 노드로부터 목적지 노드까지 연결된 스패닝 트리 상의 기본 경로와 스패닝 트리 외의 패킷 전송 시작 노드로부터 목적지 노드까지 연결된 적어도 하나의 최단 경로(트리우회 경로 포함)를 선정할 수 있다. 후보 경로 선정부(11)에 의해 복수의 후보 경로가 선정된 이후, 경로 검토 요청 메시지 전송부(12)는 본 노드 장치(10)가 패킷 전송 시작 노드인 경우, 경로 검토 요청 메시지를 일예로 플러딩(flooding)을 통해 패킷 전송 시작 노드로부터 목적지 노드까지 연결된 기본 경로와 적어도 하나의 최단 경로를 포함하는 복수의 후보 경로 상의 경로 상 노드들(경로 상 이웃 노드들) 중 적어도 일부에게 경로 검토 요청 메시지를 전송할 수 있다.
이때, 복수의 후보 경로 상의 경로 상 노드들 중 적어도 일부에게 전송되는 경로 검토 요청 메시지는, 패킷 전송 시작 노드(달리 표현하여, 송신 노드, 소스 노드)가 목적지 노드로 전송하는 경로 검토 요청 메시지(Path Check Request Message)를 의미할 수 있다. 또한, 경로 검토 요청 메시지가 최단 경로를 통해 전송되는 경우에는 플러딩을 통해 경로 검토 요청 메시지의 전송이 이루어질 수 있다.
응답 메시지 전송부(13)는 본 노드 장치(10)가 복수의 후보 경로 상의 경로 상 노드들 중 목적지 노드와 이웃하는 목적지 이웃 노드인 경우, 본 노드 장치(10)가 포함된 후보 경로 상의 이전 이웃 노드로부터 경로 검토 요청 메시지를 수신하고, 경로 검토 요청 메시지를 전달한 이전 이웃 노드에게 경로 검토 요청 메시지에 대한 응답 메시지를 전송할 수 있다. 여기서, 경로 검토 요청 메시지에 대한 응답 메시지는 경로 검토 응답 메시지(Path Check Response Message)라 달리 지칭될 수 있다.
또한, 본원에서 이전 이웃 노드라 함은, 경로 검토 요청 메시지가 전송되는 방향(즉, 패킷 전송 시작 노드에서 목적지 노드로 전송되는 경로 검토 요청 메시지의 전송 방향)을 기준으로, 패킷 전송 시작 노드를 향하여 이웃하는 노드를 의미할 수 있다. 이에 따르면, 이전 이웃 노드는 패킷 전송 시작 노드 방향측 이웃 노드라 달리 표현될 수 있다. 한편, 후술하는 설명에서 다음 이웃 노드라 함은, 경로 검토 요청 메시지가 전송되는 방향(즉, 패킷 전송 시작 노드에서 목적지 노드로 전송되는 경로 검토 요청 메시지의 전송 방향)을 기준으로, 목적지 노드를 향하여 이웃하는 노드를 의미할 수 있다. 이에 따르면, 다음 이웃 노드는 목적지 노드 방향측 이웃 노드라 달리 표현될 수 있다.
따라서, 응답 메시지 전송부(13)는 본 노드 장치(10)가 복수의 후보 경로 상의 경로 상 노드들 중 목적지 노드와 이웃하는 목적지 이웃 노드인 경우, 본 노드 장치(10)가 포함된 후보 경로 상의 이전 이웃 노드(즉, 패킷 전송 시작 노드 방향측 이웃 노드)로부터 경로 검토 요청 메시지를 수신하고, 경로 검토 요청 메시지를 전달한 이전 이웃 노드(즉, 패킷 전송 시작 노드 방향측 이웃 노드)에게 경로 검토 요청 메시지에 대한 응답 메시지를 전송할 수 있다.
또한, 응답 메시지 전송부(13)는, 본 노드 장치(10)가 복수의 후보 경로 상의 경로 상 노드들 중 목적지 이웃 노드를 제외한 중간 노드인 경우, 본 노드 장치(10)가 포함된 후보 경로 상의 이전 이웃 노드(즉, 패킷 전송 시작 노드 방향측 이웃 노드)로부터 수신한 경로 검토 요청 메시지를 본 노드 장치(10)가 포함된 후보 경로 상의 다음 이웃 노드(즉, 목적지 노드 방향측 이웃 노드)에게 전달(전송)하고, 다음 이웃 노드(즉, 목적지 노드 방향측 이웃 노드)로부터 수신한 응답 메시지에 자신의 응답 메시지를 업데이트하여 이전 이웃 노드(즉, 패킷 전송 시작 노드 방향측 이웃 노드)에게 전달(전송)할 수 있다.
다시 말해, 응답 메시지 전송부(13)는, 본 노드 장치(10)가 중간 노드인 경우, 후보 경로 상에서 중간 노드를 기준으로 패킷 전송 시작 노드 방향측에 이웃하여 위치하는 이전 이웃 노드로부터 경로 검토 요청 메시지를 수신하고, 수신된 경로 검토 요청 메시지를 중간 노드를 기준으로 목적지 노드 방향측에 이웃하여 위치하는 다음 이웃 노드에게 전달(전송)할 수 있다. 또한, 응답 메시지 전송부(13)는 본 노드 장치(10)가 중간 노드인 경우, 후보 경로 상에서 중간 노드를 기준으로 목적지 노드 방향측에 이웃하여 위치하는 다음 이웃 노드로부터 수신한 응답 메시지에 자신의 응답 메시지를 업데이트하여 중간 노드를 기준으로 패킷 전송 시작 노드 방향측에 이웃하여 위치하는 이전 이웃 노드에게 전달(전송)할 수 있다.
본원에서 중간 노드라 함은 일예로 복수의 후보 경로 상의 경로 상 노드들 중 패킷 전송 시작 노드와 목적지 노드와 목적지 이웃 노드를 제외한 노드를 의미할 수 있다. 달리 말해, 중간 노드는 복수의 후보 경로 상의 경로 상 노드들 중 패킷 전송 시작 노드와 목적지 이웃 노드 사이에 위치한 노드(중간 노드)들을 의미할 수 있다.
한편, 응답 메시지 전송부(13)에 의해 전송되는 목적지 이웃 노드의 응답 메시지(경로 검토 응답 메시지)는 목적지 이웃 노드의 송신 링크에서 사용 가능한 슬롯의 번호 정보와 사용 가능한 슬롯을 사용할 경우에 목적지 노드까지의 전송 지연 시간 정보를 포함하는 슬롯 상황 정보를 포함할 수 있다. 이때, 슬롯 상황 정보로 고려되는 사용 가능한 슬롯의 번호 정보는 하나의 예시일 뿐, 이에만 한정되는 것은 아니고, 사용중인 슬롯의 번호 정보가 고려될 수 있다. 이러한 사용중인 슬롯의 번호 정보에 의하면 사용중이지 않은 사용 가능한 슬롯의 번호가 유추될 수 있다.
또한, 응답 메시지 전송부(13)에 의해 전달(전송)되는 중간 노드의 응답 메시지(경로 검토 응답 메시지)는 다음 이웃 노드(중간 노드를 기준으로 목적지 노드 방향측 이웃 노드)로부터 수신한 수신한 응답 메시지에 포함된 슬롯 상황 정보에 중간 노드 자신의 슬롯 상황 정보를 결합하여 생성될 수 있다.
달리 말해, 경로 상의 노드들 중 중간 노드들 각각은, 자신이 속한 경로 상에서 자신(중간 노드)의 위치를 기준으로 이전 이웃 노드(즉, 패킷 전송 시작 노드 방향측 이웃 노드)로부터 수신된 요청 메시지를 다음 이웃 노드(즉, 목적지 노드 방향측 이웃 노드)로 전송할 수 있다. 이때, 목적지 노드와 이웃한 목적지 이웃 노드는 이전 이웃 노드로부터 경로 검토 요청 메시지를 수신하면, 수신한 경로 검토 요청 메시지에 대한 응답 메시지(경로 검토 응답 메시지)를 자신에게 경로 검토 요청 메시지를 전송한 노드(즉, 이전 이웃 노드, 목적지 이웃 노드를 기준으로 패킷 전송 시작 노드 방향측 이웃 노드)로 전송할 수 있다. 이때, 목적지 이웃 노드로부터 전송된 응답 메시지(경로 검토 응답 메시지)는 경로 검토 요청 메시지가 전달된 경로를 되짚어가면서 경로 검토 요청 메시지의 전송을 시작한 노드(패킷 전송 시작 노드)에게까지 전달될 수 있다. 달리 말해, 목적지 이웃 노드로부터 전송된 응답 메시지는 목적지 이웃 노드가 속한 경로 상의 중간 노드들을 거쳐 경로 검토 요청 메시지를 처음에 시작한 노드인 패킷 전송 시작 노드에게까지 전달(전송)될 수 있다.
여기서, 응답 메시지를 전달하는 중간 노드들 각각은, 응답 메시지의 전달시 자신의 송신 링크에서 사용 가능한 슬롯 번호(사용 가능한 슬롯의 번호) 정보와 해당 슬롯(즉, 사용 가능한 슬롯)을 사용할 경우에 목적지 노드까지의 전송 지연 시간을 포함하는 슬롯 상황 정보를 응답 메시지에 기록하여 전달할 수 있다. 이때, 사용 가능한 슬롯 중 특정 슬롯을 사용할 경우에 목적지 노드까지의 전송 지연 시간은, 해당 중간 노드가 수신한 응답 메시지(경로 검토 응답 메시지)에 포함된 다음 이웃 노드의 슬롯 상황 정보(달리 말해, 목적지 노드 방향측으로 이웃해있는 다음 이웃 노드의 슬롯별 전송 지연 시간 정보로서, 다음 이웃 노드의 사용 가능한 슬롯별 전송 지연 시간 정보를 의미할 수 있음)에 해당 중간 노드의 링크에서의 슬롯 상황 정보(즉, 사용 가능한 슬롯별 전송 지연 시간 정보)를 결합함으로써 계산될 수 있다.
일예로, 복수의 후보 경로 중 제1 후보 경로 상에, 패킷 전송 시작 노드, 제1 중간 노드, 제2 중간 노드, 제3 중간 노드, 목적지 이웃 노드 및 목적지 노드 순으로 연결되어 있다고 하자. 이때, 본 노드 장치(10)가 제2 중간 노드인 경우, 경로 검토 요청 메시지의 전송 방향(패킷 전송 시작 노드에서 목적지 노드를 향하는 전송 방향)을 고려하여, 제1 중간 노드는 이전 이웃 노드(패킷 전송 시작 노드 방향측 이웃 노드)이고, 제3 중간 노드는 다음 이웃 노드(목적지 노드 방향측 이웃 노드)라 할 수 있다. 여기서, 본 노드 장치(10)가 제2 중간 노드인 경우, 응답 메시지 전송부(13)는, 제3 중간 노드(다음 이웃 노드)로부터 수신한 응답 메시지에 자신(제2 중간 노드)의 응답 메시지를 업데이트하여 이전 이웃 노드(제1 중간 노드)에게 전달할 수 있다.
이때, 제2 중간 노드로부터 제1 중간 노드로 전달되는 응답 메시지에 기록되어 있는 슬롯 상황 정보 중 특정 슬롯(사용 가능한 특정 슬롯)을 사용할 경우에 목적지 노드까지의 전송 지연 시간은, 제2 중간 노드가 제3 중간 노드로부터 수신한 응답 메시지에 포함된 다음 이웃 노드(제3 노드)의 슬롯 상황 정보(사용 가능한 슬롯별 전송 지연 시간 정보)에 해당 노드(제2 중간 노드)의 링크에서의 슬롯 상황 정보(사용 가능한 슬롯별 전송 지연 시간 정보)를 결합함으로써 계산된 것일 수 있다.
도 7은 본원의 일 실시예에 따른 본 노드 장치(10)에서 응답 메시지의 전송시 고려되는 슬롯 상황 정보를 설명하기 위한 도면이다. 달리 말해, 도 7은 응답 메시지를 수신한 노드가 응답 메시지에 포함된 전송 가능 슬롯별 지연 정보(즉, 슬롯 상황 정보)로부터 자신의 전송 가능 슬롯별 지연 정보를 갱신하는 과정을 나타낸 도면이다.
도 7을 참조하면, 일예로 본 노드 장치(10)가 중간 노드(this node)이고, 본 노드 장치(10)가 응답 메시지 전송부(13)를 통해 응답 메시지를 이전 이웃 노드(next node, 패킷 전송 시작 노드 방향측 이웃 노드)로 전송한다고 가정하자. 또한, 도 7(a)와 같이 응답 메시지를 보내는 노드(중간 노드)의 송신 링크(Tx, link of this node)에서의 총 슬롯이 6개가 존재하고, 전체 슬롯 중 1번, 3번 및 4번 슬롯은 비어있고(empty), 2번, 5 번 및 6번 슬롯은 사용중(used)이라 가정하자. 이때, 본 노드 장치(10)의 응답 메시지 전송부(13)는 응답 메시지의 전달(전송)시 자신(중간 노드)의 사용 가능한 슬롯 번호 정보로서 1번, 3번 및 4번 슬롯에 대한 정보를 포함시킬 수(기록할 수) 있다. 다만 이에만 한정되는 것은 아니고, 다른 일예로, 응답 메시지에는 사용중인 슬롯 번호 정보로서 2번, 5번 및 6번 슬롯에 대한 정보가 포함(기록)될 수 있다.
또한, 본 노드 장치(10)의 응답 메시지 전송부(13)는 응답 메시지의 전달(전송)시 사용 가능한 슬롯별 목적지 노드까지의 전송 지연 시간(latency per slot) 정보, 달리 표현하여, 비어있는(empty) 슬롯별 목적지 노드까지의 전송 지연 시간 정보를 응답 메시지에 포함시킬 수 있다.
일예로, 도 7(c)를 참조하면, 응답 메시지를 보내는 해당 노드(일예로 중간 노드)의 사용 가능한 슬롯별 목적지 노드까지의 전송 지연 시간 정보(latency per slot of this node)로는 1슬롯이 8, 3슬롯이 10, 4슬롯이 11인 시간 정보가 포함될 수 있다. 이때, 해당 노드(this node)의 송신 링크의 사용 가능한 슬롯 중 제1 슬롯을 사용할 경우에 목적지 노드까지의 전송 지연 시간이 '8'에 해당하는 전송 지연이 발생함을 의미하고, 사용 가능한 슬롯 중 제3 슬롯을 사용할 경우에 목적지 노드까지의 전송 지연 시간이 '10'에 해당하는 전송 지연이 발생함을 의미하고, 사용 가능한 슬롯 중 제4 슬롯을 사용할 경우에 목적지 노드까지의 전송 지연 시간이 '11'에 해당하는 전송 지연이 발생함을 의미할 수 있다. 전송 지연 시간의 단위는 일예로 마이크로초(μs) 일 수 있으나, 이에 한정되는 것은 아니다.
한편, 도 7(b)를 참조하면, 응답 메시지를 전송하는 중간 노드의 이전 이웃 노드(즉, 중간 노드를 기준으로 한 패킷 전송 시작 노드 방향측 이웃 노드)의 사용 가능한 슬롯별 전송 지연 시간 정보(latency per slot of next node)로는 2슬롯이 7, 4슬롯이 9, 5슬롯이 10인 정보가 포함될 수 있다. 여기서, 사용 가능한 슬롯별 전송 지연 시간 정보는 사용 가능한 슬롯의 변호 정보와 사용 가능한 슬롯당 전송 지연 시간 정보를 포함하는 슬롯 상황 정보라 달리 표현될 수 있다.
또한, 도 7(b)에 도시된 이전 이웃 노드(next node)의 사용 가능한 슬롯 별 전송 지연 시간 정보는, 일예로 이전 이웃 노드가 수신한 응답 메시지에 포함된 중간 노드(this node)의 슬롯별 전송 지연 시간 정보에 자신(이전 이웃 노드, next node)의 링크에서의 사용 가능한 슬롯 정보를 결합함으로써 계산된 정보일 수 있다. 이때, 중간 노드(this node)의 슬롯별 전송 지연 시간 정보라 함은 도 7(a) 및 도 7(c)의 정보를 고려한 중간 노드(this node)의 슬롯 상황 정보라 할 수 있다.
경로 선택부(14)는 본 노드 장치(10)가 응답 메시지를 최종 수신하는 패킷 전송 시작 노드인 경우, 수신한 응답 메시지들에 수록된 복수의 후보 경로별 지연을 비교하여, 복수의 후보 경로 중 종단간 지연 요구치를 만족하는 경로를 종단간 저지연 전송 경로로 선택할 수 있다.
이때, 본 노드 장치(10)가 응답 메시지를 최종 수신하는 패킷 전송 시작 노드인 경우, 본 노드 장치(10)가 수신하는 응답 메시지들은 각각 복수의 경로 중 어느 하나의 경로에 대응되는 응답 메시지일 수 있다.
일예로, 복수의 후보 경로로서 3개의 후보 경로가 존재하고, 3개의 후보 경로에는 스패닝 트리 상의 기본 경로, 제1 최단 경로, 제2 최단 경로 및 제1 트리우회 경로가 포함된다고 가정하자. 또한, 본 노드 장치(10)는 일예로 기본 경로를 통해 제1 응답 메시지를 수신하고, 제1 최단 경로를 통해 제2 응답 메시지를 수신하고, 제2 최단 경로를 통해 제3 응답 메시지를 수신하며, 제1 트리우회 경로를 통해 제4 응답 메시지를 수신했다고 가정하자.
이러한 경우, 제1 응답 메시지는 복수의 경로 중 기본 경로에 대응되는 메시지이고, 제2 응답 메시지는 복수의 경로 중 제1 최단 경로에 대응되는 메시지이고, 제3 응답 메시지는 복수의 경로 중 제2 최단 경로에 대응되는 메시지이고, 제4 응답 메시지는 복수의 경로 중 제1 트리우회 경로에 대응되는 메시지인 것으로 달리 표현될 수 있다.
경로 선택부(14)는 수신된 응답 메시지들에 수록된 복수의 경로별 지연 시간을 비교하여, 복수의 후보 경로 중 최저 종단간 지연 시간을 갖는 경로를 종단간 지연 요구치를 만족하는 종단간 저지연 전송 경로로서 선택할 수 있다.
데이터 전송부(15)는 본 노드 장치(10)가 응답 메시지를 최종 수신하는 패킷 전송 시작 노드인 경우, 경로 선택부(14)에 의해 선택된 종단간 저지연 전송 경로 상의 노드들에게 사용 가능한 슬롯에 대한 예약을 요청하는 예약 메시지(경로 예약 메시지, Path Reservation Message)를 전송할 수 있다. 또한, 데이터 전송부(15)는 전송한 예약 메시지에 대한 확인 메시지(경로 예약 확인 메시지, Path Reservation ACK Message)를 수신하면, 선택된 종단간 저지연 전송 경로를 통해 데이터를 전송함으로써, 종단간 데이터 전송을 수행할 수 있다.
도 8은 본원의 일 실시예에 따른 본 노드 장치(10)에서 종단간 노드 사이의 경로 및 슬롯 설정을 위한 시그널링 메시지들의 흐름을 개략적으로 나타낸 도면이다.
도 8을 참조하면, 본 노드 장치(10)에서 종단간 노드 사이의 경로 및 슬롯 설정(즉, 데이터 전송 경로 설정 및 해당 전송 경로를 통한 데이터 전송시 사용할 슬롯의 설정)을 위해 이용되는 시그널링 메시지들에는, 경로 검토 요청 메시지(Path Check Request Message), 경로 검토 응답 메시지(Path Check Response Message), 경로 예약 메시지(Path Reservation Message) 및 경로 예약 확인 메시지(Path Reservation ACK Message)가 포함될 수 있다.
또한, 도 8에서 일예로 'Source node'는 패킷 전송 시작 노드(달리 말해, 송신 노드)를 의미하고, 'Dest. Node'는 목적지 노드를 의미할 수 있다. 또한, 패킷 전송 시작 노드와 목적지 노드 사이에는 중간 노드 및 목적지 이웃 노드가 포함될 수 있다.
패킷 전송 시작 노드는 목적지 노드로 경로 검토 요청 메시지를 전송할 수 있다. 이후, 목적지 노드의 이웃 노드(즉, 목적지 이웃 노드)는 경로 검토 요청 메시지에 응답하여 경로 검토 응답 메시지를 패킷 전송 시작 노드로 전송할 수 있다. 이후, 패킷 전송 시작 노드는 경로 검토 응답 메시지에 대응하는 경로가 종단간 저지연 전송 경로인 것으로 판단된 경우, 경로 검토 응답 메시지에 대응하는 경로를 통해 경로 예약 메시지를 목적지 노드로 전송할 수 있다. 이후, 목적지 이웃 노드는 경로 예약 메시지에 대한 응답으로서 경로 예약 확인 메시지를 패킷 전송 시작 노드로 전송할 수 있다.
이러한 본 노드 장치(10)는 종래 기술들에서 초저의 종단간 전송 지연을 보장하지 못했던 문제를 해소하기 위해, 슬롯 시작 시점이 시간 동기화를 통해 조정된 오버레이 스패닝 트리를 형성(구성)할 수 있다. 또한, 본 노드 장치(10)는 종단간 전송 경로 설정을 위해, 오버레이 스패닝 트리에 속한 링크들과 속하지 않은 링크들에서 현재 사용중인 시간 슬롯 상황들(즉, 슬롯 상황 정보)을 파악하고, 파악된 정보를 이용하여 최단의 종단간 전송 지연(종단간 저지연 전송 지연)을 제공하는 경로와 이 경로를 구성하는 각 링크들에서의 전송 시간 슬롯을 찾음으로써, 이를 통해서 초저의 종단간 전송 지연을 제공할 수 있다.
달리 말해, 본 노드 장치(10)는 시간동기화를 통해 슬롯 시작 시점들을 적절히 조정하여 전송지연을 최소화한 오버레이 스패닝 트리를 형성(구성)할 수 있으며, 초저 종단간 지연을 요구하는 트래픽에 대한 경로 설정을 형성된 오버레이 스패닝 트리를 이용하여 수행함으로써 초저 종단간 지연 요구치를 만족시킬 수 있다. 또한, 본 노드 장치(10)는 스패닝 트리상의 경로(기본 경로) 외에 최단 경로들(최단 경로와 트리우회 경로를 포함함)에 대해서도 종단간 지연 요구치를 만족시킬 수 있는지 파악하기 위해 최단 경로들에 대해서도 슬롯별 지연시간 정보(슬롯 상황 정보)를 수집할 수 있으며, 수집된 정보를 이용함으로써 종단간 저지연 전송을 위한 종단간 전송 경로를 선택할 수 있다. 더하여, 본 노드 장치(10)는 선택된 종단간 전송 경로(즉, 선택된 종단간 저지연 전송 경로)에 기반하여 선택된 경로 상의 슬롯을 미리 예약함으로써, 다양한 종단간 전송 지연에 대한 요구치를 만족하면서 망 내 트래픽 부하를 분산시킬 수 있다.
다시 말해, 본 노드 장치(10)는 시간 동기화를 통해서 스패닝 트리에서의 노드의 위치에 따라 노드의 슬롯 시작 시점들을 적절히 조정하고 슬롯 시작 시점이 조정된 스패닝 트리 상의 경로를 종단간 저지연 요구치를 만족하기 위해 사용할 수 있다. 또한, 본 노드 장치(10)는 종단간 지연 요구치를 가지는 통신 연결을 위하여, 스패닝 트리 상의 기본 경로와 최단 경로들을 모두 고려하여 종단간 저지연 전송 경로를 설정(선택)할 수 있다. 또한, 본 노드 장치(10)는 전송 슬롯에 따른 목적지 노드까지의 지연값을 메시지의 교환을 통해 파악함으로써 목적지까지의 최저 전송 지연과 해당 경로를 파악할 수 있으며, 해당 경로와 해당 경로 상의 각 링크에서의 전송 슬롯을 예약할 수 있다.
이하에서는 상기에 자세히 설명된 내용을 기반으로, 본원의 동작 흐름을 간단히 살펴보기로 한다.
도 9는 본원의 일 실시예에 따른 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법에 대한 동작 흐름도이다.
도 9에 도시된 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법은 앞서 설명된 본 노드 장치(10)에 의하여 수행될 수 있다. 따라서, 이하 생략된 내용이라고 하더라도 본 노드 장치(10)에 대하여 설명된 내용은 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법에 대한 설명에도 동일하게 적용될 수 있다. 또한, 후술하는 설명에서 제1 노드는 본 노드 장치(10)를 의미할 수 있다.
도 9를 참조하면, 단계S11에서는 망 내의 제1 노드가 패킷 전송 시작 노드인 경우, 목적지 노드의 주소를 포함하는 경로 검토 요청 메시지를 플러딩을 통해 상기 패킷 전송 시작 노드로부터 상기 목적지 노드까지의 복수의 후보 경로 상의 경로 상 노드들 중 적어도 일부에게 전송할 수 있다.
이때, 단계S11에서 제1 노드는, 망의 토폴로지와 스패닝 트리의 토폴로지에 기반하여, 패킷 전송 시작 노드로부터 목적지 노드까지 연결된 스패닝 트리 상의 기본 경로 및 스패닝 트리 외의 패킷 전송 시작 노드로부터 목적지 노드까지 연결된 적어도 하나의 최단 경로를 포함하도록 복수의 후보 경로를 선정할 수 있다.
여기서, 적어도 하나의 최단 경로는, 패킷 전송 시작 노드와 목적지 노드 사이의 최단 경로 및 스패닝 트리 상의 기본 경로를 일부 우회하는 트리우회 경로 중 적어도 하나를 포함할 수 있다.
또한, 스패닝 트리는 스패닝 트리에 속한 노드들 간의 시간 동기화를 통해 슬롯 시작 시점이 조정된 오버레이 스패닝 트리일 수 있다.
또한, 스패닝 트리는 제1 레벨에 속한 노드들의 상향 링크에서의 슬롯 시작 시점이 상기의 수학식 1을 만족하도록 설정되고, 제1 레벨에 속한 노드들의 하향 링크에서의 슬롯 시작 시점이 상기의 수학식 2를 만족하도록 설정되고, 인접한 두 레벨인 제1 레벨과 제2 레벨에 속한 노드들의 슬롯 시작 시점의 사이가 상기의 수학식 3의 관계를 만족하도록 설정될 수 있다. 이때, 수학식 1 내지 수학식 3에 대한 설명은 앞서 설명했으므로, 이하 중복되는 설명은 생략하기로 한다.
다음으로, 단계S12에서는 제1 노드가 경로 상 노드들 중 상기목적지 노드와 이웃하는 목적지 이웃 노드인 경우, 제1 노드가 포함된 후보 경로 상의 이전 이웃 노드로부터 경로 검토 요청 메시지를 수신하고, 경로 검토 요청 메시지를 전달한 이전 이웃 노드에게 경로 검토 요청 메시지에 대한 응답 메시지를 전송할 수 있다.
이때, 단계S12에서, 목적지 이웃 노드의 응답 메시지는 목적지 이웃 노드의 송신 링크에서 사용 가능한 슬롯의 번호 정보와 사용 가능한 슬롯을 사용할 경우에 목적지 노드까지의 전송 지연 시간 정보를 포함하는 슬롯 상황 정보를 포함할 수 있다.
다음으로, 단계S13에서는 제1 노드가 경로 상 노드들 중 목적지 이웃 노드를 제외한 중간 노드인 경우, 제1 노드가 포함된 후보 경로 상의 이전 이웃 노드로부터 수신한 경로 검토 요청 메시지를 제1 노드가 포함된 후보 경로 상의 다음 이웃 노드에게 전달하고, 다음 이웃 노드로부터 수신한 응답 메시지에 자신의 응답 메시지를 업데이트하여 이전 이웃 노드에게 전달할 수 있다.
이때, 단계S13에서 중간 노드의 응답 메시지는 다음 이웃 노드로부터 수신한 응답 메시지에 포함된 슬롯 상황 정보에 중간 노드 자신의 슬롯 상황 정보를 결합하여 생성될 수 있다.
다음으로, 단계S14에서는 제1 노드가 응답 메시지를 최종 수신하는 패킷 전송 시작 노드인 경우, 수신한 응답 메시지들에 수록된 복수의 후보 경로별 지연을 비교하여, 복수의 후보 경로 중 종단간 지연 요구치를 만족하는 경로를 종단간 저지연 전송 경로로 선택할 수 있다.
또한, 도면에 도시되지는 않았으나, 본원의 일 실시예에 따른 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법은, 제1 노드가 응답 메시지를 최종 수신하는 패킷 전송 시작 노드인 경우, 단계S14에서 선택된 종단간 저지연 전송 경로 상의 노드들에게 사용 가능한 슬롯에 대한 예약을 요청하는 예약 메시지를 전송하고, 예약 메시지에 대한 확인 메시지를 수신하면 종단간 저지연 전송 경로를 통해 종단간 데이터 전송을 수행하는 단계를 포함할 수 있다.
상술한 설명에서, 단계 S11 내지 S14은 본원의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.
이하에서는 스패닝 트리 형성부(미도시)에 의하여 형성(생성) 가능한 트래픽 부하를 고려한 스패닝 트리의 생성 방법에 대하여 구체적으로 기술하기로 한다. 본원에서 스패닝 트리의 형성이라 함은 스패닝 트리의 구성, 생성, 구축 등의 넓은 의미로 이해될 수 있다.
도 10은 본원의 다른 실시예에 따른 네트워크에서의 스패닝 트리 형성을 위한 노드 장치(10)의 개략적인 구성을 나타낸 도면이다.
도 10을 참조하면, 본원의 다른 실시예에 따른 네트워크에서의 스패닝 트리 형성을 위한 노드 장치(10)는 수집부(11), 스패닝 트리 생성부(12), 선택부(13) 및 통신부(14)를 포함할 수 있다. 이때, 본원의 다른 실시예에 따른 네트워크에서의 스패닝 트리 형성을 위한 노드 장치(10)는 이하 설명의 편의상 '본 노드 장치(10)'라 하며, 이는 앞서 설명한 본원의 일 실시예에 따른 본 노드 장치(10)와 동일한 노드 장치일 수 있다. 따라서, 이하 생략된 내용이라 하더라도, 앞서 본원의 일 실시예에 따른 본 노드 장치(10)에 대하여 설명된 내용은 이하 본원의 다른 일 실시예에 따른 본 노드 장치(10)에 대한 설명에도 동일하게 적용될 수 있다.
본 노드 장치(10)는 네트워크에서 스패닝 트리를 형성할 수 있다. 이때, 본 노드 장치(10)의 적용이 가능한 네트워크는 일예로 이더넷(Ethernet) 네트워크일 수 있다. 여기서, 이더넷 네트워크는 이하 설명에서 이더넷 기반 망이라 달리 지칭될 수 있다.
또한, 본 노드 장치(10)의 적용이 가능한 네트워크는 이더넷 네트워크로만 한정되는 것은 아니고, 다른 일예로 3GPP(3rd Generation Partnership Project) 네트워크, LTE(Long Term Evolution) 네트워크, WIMAX(World Interoperability for Microwave Access) 네트워크, 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), 블루투스(Bluetooth) 네트워크, NFC(Near Field Communication) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함될 수 있다.
또한, 본 노드 장치(10)는 스위치, 라우터 등을 의미할 수 있으나, 이에만 한정되는 것은 아니다.
수집부(11)는 이더넷 기반 망 내의 노드쌍에 대한 트래픽 부하에 대한 정보를 통신부(14)를 통해 이더넷 기반 망 내의 다른 노드들과 교환(공유)하며 수집할 수 있다. 여기서, 노드쌍에 대한 트래픽 부하에 대한 정보는 노드쌍별 트래픽 부하 정보, 기대 전송 트래픽의 양 등으로 달리 지칭될 수 있다.
스패닝 트리 생성부(12)는 수집부(11)를 통해 수집된 트래픽 부하에 대한 정보를 이용하여 자신을 루트로 하는 스패닝 트리를 생성할 수 있다.
또한, 수집부(11)는 이더넷 기반 망의 토폴로지(Topology)에 대한 정보를 통신부(14)를 통해 이더넷 기반 망 내의 다른 노드들과 교환할 수 있으며, 스패닝 트리 생성부(12)는 자신을 루트로 하는 스패닝 트리의 생성시 이더넷 기반 망의 토폴로지에 대한 정보를 고려할 수 있다. 여기서, 토폴로지는 네트워크의 물리적 연결 형태를 의미하는 것으로서, 일예로, 통신에 참여하고 있는 컴퓨터, 리피터, 라우터, 스위치, 허브와 같은 네트워크 장비들이 어떤 형태로 연결되어 있는지를 의미할 수 있다. 일예로, 망의 토폴로지의 유형으로는 버스형, 링형, 스타형 등이 있으며, 이에만 한정되는 것은 아니다.
선택부(13)는 스패닝 트리 생성부(12)를 통해 생성된 자신을 루트로 하는 스패닝 트리의 정보(즉, 자신을 루트로하는 스패닝 트리 정보)를 통신부(14)를 통해 이웃 노드의 스패닝 트리 정보와 교환하며 비교함으로써 두 스패닝 트리 정보 중 트래픽 부하가 작은 스패닝 트리 정보를 선택할 수 있다. 즉, 선택부(13)는 두 스패닝 트리 정보로서, 본 노드 장치(10) 자신을 루트로 하여 생성한 스패닝 트리 정보와 이웃 노드의 스패닝 트리 정보 중 트래픽 부하가 작은 스패닝 트리 정보를 선택할 수 있다. 이때, 본 노드 장치(10) 자신을 루트로하여 생성된 스패닝 트리 정보와 이웃 노드의 스패닝 트리 정보 중 선택된 트래픽 부하가 작은 스패닝 트리 정보는 이하 설명의 편의상 제1 선택된 스패닝 트리 정보라 하기로 한다. 또한, 이웃 노드의 스패닝 트리 정보는, 구체적으로 이웃 노드가 이웃 노드 자신을 루트로하여 생성한 스패닝 트리의 정보를 의미할 수 있다. 이에 따르면, 이더넷 기반 망 내의 복수의 노드(노드 장치) 각각이 자신을 루트로하는 스패닝 트리를 생성할 수 있다.
이후, 선택부(13)는 선택된 스패닝 트리 정보(즉, 제1 선택된 스패닝 트리 정보)를 통신부(14)를 통해 이웃 노드 외의 다른 주변 노드의 스패닝 트리 정보와 교환하며 비교함으로써 두 스패닝 트리 정보 중 트래픽 부하가 작은 스패닝 트리 정보를 선택할 수 있다. 여기서, 선택된 스패닝 트리 정보(즉, 제1 선택된 스패닝 트리 정보)는 본 노드 장치(10) 자신을 루트로하여 생성한 스패닝 트리 정보와 이웃 노드의 스패닝 트리 정보 중에서 선택된 트래픽 부하가 작은 스패닝 트리 정보를 의미할 수 있다. 또한, 여기서 두 스패닝 트리 정보라 함은 선택된 스패닝 트리 정보(제1 선택된 스패닝 트리 정보)와 다른 주변 노드의 스패닝 트리 정보를 의미할 수 있다. 이때, 제1 선택된 스패닝 트리 정보와 다른 주변 노드의 스패닝 트리 정보 중 선택된 트래픽 부하가 작은 스패닝 트리 정보는 이하 설명의 편의상 제2 선택된 스패닝 트리 정보라 하기로 한다.
또한, 이때 제2 선택된 스패닝 트리 정보의 산출시 고려되는 다른 주변 노드의 스패닝 트리 정보는, 일예로 다른 주변 노드 자신을 루트로하여 생성된 스패닝 트리 정보(즉, 다른 주변 노드의 스패닝 트리 정보)를 의미할 수 있다. 다만, 이에만 한정되는 것은 아니고, 다른 일예로, 제2 선택된 스패닝 트리 정보의 산출시 고려되는 다른 주변 노드의 스패닝 트리 정보는, 다른 주변 노드 자신을 루트로 하여 생성된 다른 주변 노드의 스패닝 트리 정보 및 다른 주변 노드를 기준으로 다른 주변 노드와 이웃한 이웃 노드의 스패닝 트리 정보 중 선택된 트래픽 부하가 작은 스패닝 트리 정보를 의미할 수 있다.
또한, 선택부(13)는 선택된 스패닝 트리 정보의 교환시, 선택된 스패닝 트리 정보를 선택하는데 관여한 노드들의 리스트를 통신부(14)를 통해 다른 주변 노드에 의해 선택된 스패닝 트리 정보를 선택하는데 관여한 노드들의 리스트와 교환할 수 있다.
구체적인 일예로, 제2 선택된 스패닝 트리 정보의 산출시 고려된 다른 주변 노드의 스패닝 트리 정보가 다른 주변 노드 자신을 루트로하여 생성된 스패닝 트리 정보라 가정하자. 이러한 경우, 선택부(13)는 선택된 스패닝 트리 정보로서 제1 선택된 스패닝 트리 정보를 다른 주변 노드와 교환할 때, 선택된 스패닝 트리 정보(제1 선택된 스패닝 트리 정보)를 선택하는데 관여한 노드들의 리스트를 다른 주변 노드와 교환할 수(주고받을 수) 있다.
달리 표현하여, 다른 주변 노드가 다른 주변 노드와 이웃한 이웃 노드 간에 스패닝 트리 정보의 비교를 수행하지 않아 다른 주변 노드 및 다른 주변 노드와 이웃한 이웃 노드 간에 선택된 스패닝 트리 정보가 존재하지 않는 경우, 선택부(13)는 제1 선택된 스패닝 트리 정보 및 제1 선택된 스패닝 트리 정보를 선택하는데 관여한 노드들의 리스트(즉, 본 노드 장치 노드 및 본 노드 장치와 이웃한 이웃 노드를 포함한 리스트)를 다른 주변 노드의 스패닝 트리 정보와 교환할 수 있다. 이러한 교환 이후 선택부(13)에 의하여 비교를 통해 두 스패닝 트리 정보 중 트래픽 부하가 작은 스패닝 트리 정보를 선택하는 과정이 이루어진 경우, 선택된 스패닝 트리 정보를 선택하는데 관여한 노드들의 리스트는 본 노드 장치 및 본 노드 장치와 이웃한 이웃 노드를 포함하는 리스트에서 본 노드 장치, 본 노드 장치와 이웃한 이웃 노드 및 다른 주변 노드를 포함하도록 업데이트될 수 있다.
다른 일예로, 제2 선택된 스패닝 트리 정보의 산출시 고려된 다른 주변 노드의 스패닝 트리 정보가, 다른 주변 노드 자신을 루트로 하여 생성된 다른 주변 노드의 스패닝 트리 정보 및 다른 주변 노드를 기준으로 다른 주변 노드와 이웃한 이웃 노드의 스패닝 트리 정보 중 선택된 트래픽 부하가 작은 스패닝 트리 정보라 가정하자. 이러한 경우, 선택부(13)는 선택된 스패닝 트리 정보로서 제1 선택된 스패닝 트리 정보를 다른 주변 노드와 교환할 때, 선택된 스패닝 트리 정보(제1 선택된 스패닝 트리 정보)를 선택하는데 관여한 노드들의 리스트를 다른 주변 노드에 의해 선택된 스패닝 트리 정보를 선택하는데 관여한 노드들의 리스트와 교환할 수(주고받을 수) 있다.
달리 표현하여, 다른 주변 노드가 다른 주변 노드와 이웃한 이웃 노드 간에 스패닝 트리 정보의 비교를 수행하여 다른 주변 노드 및 다른 주변 노드와 이웃한 이웃 노드 간에 선택된 스패닝 트리 정보가 존재하는 경우, 선택부(13)는 제1 선택된 스패닝 트리 정보와 제1 선택된 스패닝 트리 정보를 선택하는데 관여한 노드들의 리스트(즉, 본 노드 장치 노드 및 본 노드 장치 노드와 이웃한 이웃 노드를 포함한 리스트)를 다른 주변 노드에 의해 선택된 스패닝 트리 정보(즉, 다른 주변 노드 및 다른 주변 노드와 이웃한 이웃 노드 간에 선택된 스패닝 트리 정보)와 다른 주변 노드에 의해 선택된 스패닝 트리 정보를 선택하는데 관여한 노드들의 리스트(즉, 다른 주변 노드 및 다른 주변 노드와 이웃한 이웃 노드를 포함한 리스트)를 교환할 수 있다. 이러한 교환 이후 선택부(13)에 의하여 비교를 통해 두 스패닝 트리 정보 중 트래픽 부하가 작은 스패닝 트리 정보를 선택하는 과정이 이루어진 경우, 선택된 스패닝 트리 정보를 선택하는데 관여한 노드들의 리스트는 본 노드 장치 및 본 노드 장치와 이웃한 이웃 노드를 포함하는 리스트에서 본 노드 장치, 본 노드 장치와 이웃한 이웃 노드, 다른 주변 노드 및 다른 주변 노드와 이웃한 이웃 노드를 포함하도록 업데이트될 수 있다.
이에 따르면, 스패닝 트리 정보 간의 비교가 수행될 때마다, 스패닝 트리 정보 간의 비교에 의하여 선택된 스패닝 트리 정보를 선택하는데 관여한 노드들의 리스트가 업데이트될 수 있다.
선택부(13)는 교환되는 선택된 스패닝 트리 정보를 선택하는데 관여한 노드들의 리스트가 이더넷 기반 망 내의 전체 노드들의 리스트와 동일해질 때까지, 선택된 스패닝 트리 정보를 통신부(14)를 통해 다른 주변 노드의 스패닝 트리 정보와 교환하며 비교함으로써 두 스패닝 트리 정보 중 트래픽 부하가 작은 스패닝 트리 정보를 선택하는 과정을 반복 수행할 수 있다. 여기서, 다른 주변 노드라 함은 제1 선택된 스패닝 트리 정보와 관련된 이웃 노드 및 제2 선택된 스패닝 트리 정보와 관련된 다른 주변 노드 외의 또 다른 주변 노드를 의미할 수 있다.
달리 말해, 선택부(13)는 다른 노드들과의 스패닝 트리 정보 비교시마다 업데이트되는 리스트(즉, 선택된 스패닝 트리 정보를 선택하는데 관여한 노드들의 리스트)가 이더넷 기반 망 내의 전체 노드들의 리스트와 동일해질 때까지, 이더넷 기반 망 내의 다른 노드들과의 스패닝 트리 정보의 교환에 따른 비교 과정을 반복 수행할 수 있다.
이때, 선택부(13)는 자신이 보유한 선택된 스패닝 트리 정보를 선택하는데 관여한 노드들의 리스트가 이더넷 망 내의 전체 노드들의 리스트와 동일해지면, 통신부(14)를 통한 다른 주변 노드와의 스패닝 트리 정보의 교환을 중단할 수 있다.
선택부(13)는 망 내의 전체 노드들의 리스트와 동일해질 때까지 선택된 스패닝 트리 정보의 교환을 반복 수행한 경우, 반복 수행에 의하여 선택된 스패닝 트리 정보에 대응하는 스패닝 트리를 이더넷 기반 망 내의 최적 스패닝 트리로서 결정할 수 있다. 즉, 선택부(13)에 의한 최적 스패닝 트리의 결정으로 하여금, 이더넷 기반 망 내의 전체 노드들 각각의 스패닝 트리 중 유발 트래픽 부하가 가장 작은 스패닝 트리가 결정될 수 있다.
다시 말해, 선택부(13)는 이웃 노드를 루트로 하는 스패닝 트리 정보와 자신을 루트로하는 스패닝 트리 정보를 비교함으로써, 그 중 트래픽 부하가 더 작은 스패닝 트리 정보를 선택할 수 있다. 이후, 선택부(13)는 선택된 스패닝 트리 정보와 상기 선택된 스패닝 트리 정보를 선택하는데 관여한 노드들의 리스트를 다른 주변 노드와 교환하며(주고받으며), 선택된 스패닝 트리 정보와 다른 주변 노드의 스패닝 트리 정보를 비교하여, 그 중 트래픽 부하가 더 작은 스패닝 트리 정보를 선택할 수 있다. 선택부(13)는 이러한 과정을 또 다른 주변 노드들에 대하여 반복 수행할 수 있다. 이때, 이러한 반복 수행은 스패닝 트리 정보의 선택에 관여한 노드들의 리스트가 이더넷 기반 망 내의 전체 노드들의 리스트와 동일해질 때까지 이루어질 수 있다. 이때, 스패닝 트리 정보의 선택에 관여한 노드들의 리스트가 전체 노드들의 리스트와 동일해졌을 때 선택된 스패닝 트리 정보에 대응하는 스패닝 트리는, 이더넷 기반 망 내의 전체 노드들에 의하여 선택된 최소 트래픽을 갖는 스패닝 트리라 할 수 있다. 선택부(13)는 반복 수행에 의하여 선택된 스패닝 트리 정보에 대응하는 스패닝 트리를 이더넷 기반 망 내의 전체 노드들 각각에 의하여 생성된 복수의 스패닝 트리들 중 유발 트래픽 부하가 작은 이더넷 망 내의 최적 스패닝 트리인 것으로 결정할 수 있다.
통신부(14)는 이더넷 망 내의 다른 노드들과의 통신이 이루어지도록 할 수 있다. 통신부(14)는 다른 노드들과 트래픽 부하에 대한 정보, 후술할 망의 토폴로지에 대한 정보, 스패닝 트리 정보, 리스트 정보 등의 교환이 이루어질 수 있도록 할 수 있다.
또한, 본 노드 장치(10)는 위치 변경 여부 결정부(15)를 포함할 수 있다.
위치 변경 여부 결정부(15)는 선택부(13)에 의한 스패닝 트리 정보의 비교가 이더넷 기반 망 내의 전체 노드들에 대하여 이루어짐에 따라 결정된 이더넷 기반 망 내의 최적 스패닝 트리에서 노드의 위치 변경시, 이더넷 기반 망 내의 전체 노드들에 의한 트래픽 부하의 변화량(즉, 전체 트래픽 부하의 변화량)을 고려하여 노드의 위치 변경 여부를 결정할 수 있다. 여기서, 위치 변경 여부의 결정 대상인 노드라 함은 본 노드 장치(10)를 의미할 수 있다.
이때, 위치 변경 여부 결정부(15)는 트래픽 부하의 변화량이 줄어들면 노드(본 노드 장치)의 위치 변화가 수행된 것으로 보아, 최적 스패닝 트리에 대한 탐색을 반복(iteration) 수행할 수 있다.
또한, 위치 변경 여부 결정부(15)는 이더넷 기반 망 내의 전체 노드들에 대한 트래픽 부하의 변화량에 기초하여, 이더넷 기반 망 내의 전체 노드들에 대해 트래픽 부하가 감소하지 않는 것으로 판단되면 최적 스패닝 트리에 대한 탐색의 반복 수행을 중지할 수 있다.
이때, 노드(본 노드 장치)의 위치 변경시 트래픽 부하의 변화량은 하기 수학식 4를 만족할 수 있다.
[수학식 4]
Figure 112018111218715-pat00001
여기서,
Figure 112018111218715-pat00002
는 총 트래픽 부하의 변화량, H는 노드(본 노드 장치)가 연결된 부모 노드의 레벨, K는 노드(본 노드 장치)가 연결될 수 있는 후보 부모 노드의 레벨, Q는 현재 부모 노드와 후보 부모 노드를 모두 포함하는 최소의 서브트리(subtree)의 루트 노드의 레벨을 나타낸다. 또한,
Figure 112018111218715-pat00003
는 현재 부모 노드쪽 서브트리에서 현재 부모 노드와 최소 서브트리의 루트를 잇는 경로상에 있는 h레벨의 노드로 인한 트래픽 부하를 나타내며, 이는 이 h레벨 노드와 그 자손노드들의 총 유발 트래픽 부하에서 h+1레벨 노드와 그 자손노드들로 인한 총 유발 트래픽 부하를 제외한 것일 수 있다. 또한,
Figure 112018111218715-pat00004
는 후보 부모 노드쪽 서브트리에서 후보 부모와 최소 서브트리의 루트를 잇는 경로상에 있는 k 레벨의 노드로 인한 총 유발 트래픽 부하를 나타내며, 이는 이 k 레벨 노드와 그 자손노드들의 총 유발 트래픽 부하에서 k+1 레벨 노드와 그 자손노드들로 인한 총 유발 트래픽 부하를 제외한 것일 수 있다. 또한,
Figure 112018111218715-pat00005
는 최소 서브트리의 루트노드로 인한 트래픽 부하를 나타내며, 이는 이더넷 기반 망 전체의 트래픽 발생량에서 현재 부모 노드쪽과 후보 부모 노드쪽의 자손 노드들에 의한 트래픽 발생량을 제외한 것일 수 있다.
달리 말해, 본 노드 장치(10)에서 루트 노드가 주어진 경우 스패닝 트리의 탐색은 반복(iteration)을 통해 수행될 수 있다. 본 노드 장치(10)는 최적 스패닝 트리에서 노드(본 노드 장치)의 위치 변경시 상기의 수학식 4에 따른 트래픽 부하의 변화량을 고려하여 노드(본 노드 장치)의 위치 변경 여부를 결정할 수 있다. 일예로, 위치 변경 여부 결정부(15)는 트래픽 부하의 변화량이 줄어들면 최적 스패닝 트리에서 노드(본 노드 장치)의 위치 변경이 이루어지도록 위치 변경 여부를 결정할 수 있다.
이때, 최적 스패닝 트리 내의 본 노드 장치(10)의 위치를 기본 망(즉, 이더넷 기반 망)의 가능한 링크를 이용하여 변경시킬 때의 전체 트래픽 부하량은 상기 수학식 4와 같을 수 있다. 달리 표현하여, 최적 스패닝 트리에 속한 어느 하나의 노드(예를 들어 본 노드 장치)의 위치를 변경시킬 때의 전체 트래픽 부하량은 상기 수학식 4와 같을 수 있다. 또한, 일예로, 최적 스패닝 트리 내에 속한 모든 노드에 대하여 상기 수학식 4를 적용시켰을 때 트래픽 부하가 감소하지 않은 것으로 판단되면, 위치 변경 여부 결정부(15)는 최적 스패닝 트리에 대한 탐색이 이루어지지 않도록 최적 스패닝 트리에 대한 탐색의 반복(iteration)을 중지할 수 있다.
한편, 본 노드 장치(10)가 적용되는 네트워크(예를 들어, 이더넷 기반 망) 내에는 복수의 노드(노드 장치)가 포함될 수 있다. 이때, 본 노드 장치(10)에 대하여 설명된 내용은 네트워크 내에 포함된 복수의 노드(노드 장치) 각각에 대해서도 동일 내지 유사하게 이해될 수 있다.
이에 따르면, 본 노드 장치(10)가 포함된 이더넷 기반 망 내의 복수의 노드 장치(10) 각각은, 망 내의 다른 노드들을 목적지로 하는 트래픽을 발생시키게 되며, 이를 고려하여 다른 노드들 각각에 대한 트래픽 부하를 파악할 수 있다. 구체적으로, 복수의 노드 장치(10) 각각은 망의 토폴로지에 대한 정보와 망 내 노드쌍에 대한 트래픽 부하에 대한 정보를 다른 노드들과 서로 교환(공유)할 수 있다. 이러한 본원은 복수의 노드 장치(10) 각각이 서로 간에 공유된 정보로 하여금 트래픽 부하를 최소화하는 스패닝 트리(오버레이 스패닝 트리)가 형성될 수 있도록 할 수 있다. 이때, 복수의 노드 장치(10) 각각은 최소화된 스패닝 트리에 대한 정보를 다른 노드들과 서로 공유할 수 있다.
달리 표현하여, 복수의 노드 장치(10) 각각은, 다른 노드들의 전송쌍에 대한 기대 전송 트래픽의 양과 전체 망의 토폴로지 정보를 수집할 수 있으며, 수집된 정보들로 하여금 스패닝 트리(오버레이 스패닝 트리)의 링크들을 통과하는 전체 트래픽의 양을 최소화하는 스패닝 트리(오버레이 스패닝 트리)를 형성(달리 말해, 최적 스패닝 트리를 결정)할 수 있다.
다시 말해, 본원에서는 이더넷 기반 망에서 스패닝 트리(오버레이 스패닝 트리)를 형성(구성)하기 위해, 각 노드 장치(10)들끼리 가능한 노드쌍에서의 트래픽 부하에 대한 정보를 서로 교환할 수 있다. 또한, 노드 장치(10)들 각각은 트래픽 부하에 대한 정보의 교환을 통해 수집된 트래픽 부하에 대한 정보를 이용하여, 노드 장치(10)들 각각이 자신을 루트로 하는 스패닝 트리를 생성하고, 노드 장치(10)들 각각에 의하여 생성된 스패닝 트리의 정보를 서로 교환하여 비교함으로써 최적 스패닝 트리를 도출할 수 있다.
또한, 최적 스패닝 트리에서 노드의 위치를 변화시킬 때에는 상기의 수학식 4를 통해 예측된 노드의 위치 변경시 트래픽 부하의 변화량을 이용함으로써 노드의 위치 변경 여부를 결정할 수 있다.
한편, 본원의 다른 일 실시예에 따르면 중앙집중식 방식에 의해 최적 스패닝 트리를 형성할 수 있다. 이를 위해, 본원의 다른 일 실시예에서는 중앙 제어기 및 복수의 노드(노드 장치)를 포함할 수 있다. 간단히 설명하면, 중앙집중식 방식에서 중앙 제어기는 망 토폴로지 정보와 노드별 트래픽 정보를 수집하고, 수집된 정보를 이용하여 최저 트래픽 스패닝 트리를 생성할 수 있다. 또한, 중앙 제어기는 각 노드를 루트로 하는 최적 트래픽 스패닝 트리를 찾고, 그 중 가장 트래픽이 작은 스패닝 트리와 루트를 선택할 수 있다. 이후 중앙 제어기는 선택된 트래픽이 가장 작은 스패닝 트리와 루트 관련 정보를 망 내의 전체 노드들과 공유할 수 있다.
이하에서는 상기에 자세히 설명된 내용을 기반으로, 본원의 동작 흐름을 간단히 살펴보기로 한다.
도 11은 본원의 일 실시예에 따른 네트워크에서의 스패닝 트리 형성 방법에 대한 개략적인 동작 흐름도이다.
도 11에 도시된 네트워크에서의 스패닝 트리 형성 방법은 앞서 설명된 본원의 다른 일 실시예에 따른 본 노드 장치(10)에 의하여 수행될 수 있다. 따라서, 이하 생략된 내용이라고 하더라도 본원의 다른 일 실시예에 따른 본 노드 장치(10)에 대하여 설명된 내용은 네트워크에서의 스패닝 트리 형성 방법에 대한 설명에도 동일하게 적용될 수 있다.
도 11을 참조하면, 단계S11에서는 이더넷 기반 망 내의 어느 하나의 노드가, 망 내의 노드쌍에 대한 트래픽 부하에 대한 정보를 통신부를 통해 망 내의 다른 노드들과 교환하며 수집할 수 있다. 이때, 어느 하나의 노드는 앞서 설명된 본 노드 장치(10)를 의미할 수 있다.
다음으로, 단계S12에서는 어느 하나의 노드가, 수집된 트래픽 부하에 대한 정보를 이용하여 자신을 루트로 하는 스패닝 트리를 생성하고, 생성된 자신을 루트로 하는 스패닝 트리 정보를 통신부를 통해 이웃 노드의 스패닝 트리 정보와 교환하며 비교함으로써 두 스패닝 트리 정보 중 트래픽 부하가 작은 스패닝 트리 정보를 선택할 수 있다.
이때, 단계S11에서 어느 하나의 노드는 망의 토폴로지에 대한 정보를 통신부를 통해 망 내의 다른 노드들과 교환할 수 있으며, 단계S12에서 어느 하나의 노드는 자신을 루트로 하는 스패닝 트리의 생성시 망의 토폴로지에 대한 정보를 고려할 수 있다.
다음으로, 단계S13에서는 어느 하나의 노드가, 선택된 스패닝 트리 정보를 통신부를 통해 이웃 노드 외의 다른 주변 노드의 스패닝 트리 정보와 교환하며 비교함으로써 두 스패닝 트리 정보 중 트래픽 부하가 작은 스패닝 트리 정보를 선택할 수 있다.
또한, 단계S13에서 어느 하나의 노드는, 선택된 스패닝 트리 정보의 교환시 선택된 스패닝 트리 정보를 선택하는데 관여한 노드들의 리스트를 통신부를 통해 다른 주변 노드에 의해 선택된 스패닝 트리 정보를 선택하는데 관여한 노드들의 리스트와 교환할 수 있다.
또한, 단계S13은 교환되는 선택된 스패닝 트리 정보를 선택하는데 관여한 노드들의 리스트가 망 내의 전체 노드들의 리스트와 동일해질 때까지 반복 수행될 수 있다.
또한, 단계S13에서 어느 하나의 노드는, 반복 수행에 의하여 선택된 스패닝 트리 정보에 대응하는 스패닝 트리를 망 내의 최적 스패닝 트리로서 결정할 수 있다.
또한, 도면에 도시하지는 않았으나, 본원의 일 실시예에 따른 네트워크에서의 스패닝 트리 형성 방법은 어느 하나의 노드가, 단계S13에서의 스패닝 트리 정보의 비교가 망 내의 전체 노드들에 대하여 이루어짐에 따라 결정된 망 내의 최적 스패닝 트리에서 위치 변경시, 망 내의 전체 노드들에 의한 트래픽 부하의 변화량을 고려하여 어느 하나의 노드의 위치 변경 여부를 결정하는 단계(이하 단계S14라 함)를 포함할 수 있다.
이때, 단계S14에서 어느 하나의 노드는, 트래픽 부하의 변화량이 줄어들면 어느 하나의 노드의 위치 변화가 수행된 것으로 보아 최적 스패닝 트리에 대한 탐색을 반복 수행할 수 있다.
또한, 단계S14에서 어느 하나의 노드는, 망 내의 전체 노드들에 대한 트래픽 부하의 변화량에 기초하여, 망 내의 전체 노드들에 대해 트래픽 부하가 감소하지 않는 것으로 판단되면 최적 스패닝 트리에 대한 탐색의 반복 수행을 중지할 수 있다.
이때, 어느 하나의 노드의 위치 변경시 트래픽 부하의 변화량은 상기의 수학식 4를 만족할 수 있다. 상기 수학식 4에 대한 설명은 앞서 자세히 설명했으므로, 이하 중복되는 설명은 생략하기로 한다.
상술한 설명에서, 단계 S11 내지 S13은 본원의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.
도 12는 본원의 일 실시예에 따른 네트워크에서의 스패닝 트리 형성 방법에 대한 다른 동작 흐름도이다.
도 12에 도시된 네트워크에서의 스패닝 트리 형성 방법은 앞서 설명된 본원의 다른 일 실시예에 따른 본 노드 장치(10)에 의하여 수행될 수 있다. 따라서, 이하 생략된 내용이라고 하더라도 본원의 다른 일 실시예에 따른 본 노드 장치(10)에 대하여 설명된 내용은 네트워크에서의 스패닝 트리 형성 방법에 대한 설명에도 동일하게 적용될 수 있다.
도 12를 참조하면, 단계S21에서는 망 내의 노드쌍별 트래픽 부하 정보(즉, 노드쌍에 대한 트래픽 부하에 대한 정보)를 수집할 수 있다.
다음으로, 단계S22에서는 수집된 트래픽 부하 정보를 이용하여 자신을 루트로 하는 스패닝 트리를 생성할 수 있다.
다음으로, 단계S23에서는 이웃 노드와 스패닝 트리 정보를 교환할 수 있다. 즉, 단계S23에서는 자신을 루트로 하는 스패닝 트리 정보와 이웃 노드의 스패닝 트리 정보를 교환할 수 있다.
다음으로, 단계S24에서는 교환된 스패닝 트리 정보 중 트래픽 부하가 작은 스패닝 트리 정보를 선택할 수 있다. 즉, 단계S24에서는 자신을 루트로 하는 스패닝 트리 정보와 이웃 노드의 스패닝 트리 정보를 비교함으로써 두 스패닝 트리 정보 중 트래픽 부하가 작은 스패닝 트리 정보를 선택할 수 있다.
다음으로, 단계S25에서는 이더넷 기반 망 내의 전체 노드들의 스패닝 트리 정보와의 비교가 이루어졌는지 여부를 판단할 수 있다.
이때, 단계S25에서 전체 노드들의 스패닝 트리 정보(즉, 전체 노드들 각각에 의하여 생성된 모든 스패닝 트리 정보)와의 비교가 이루어지지 않은 것으로 판단된 경우(S25-NO), 단계S23으로 되돌아갈 수 있다. 이때, 단계S23에서는 이웃 노드 외의 다른 주변 노드와 스패닝 트리 정보를 교환할 수 있다. 이후, 단계S24에서는 이전에 선택된 스패닝 트리 정보와 다른 주변 노드의 스패닝 트리 정보 중 트래픽 부하가 작은 스패닝 트리 정보를 선택할 수 있다.
한편, 단계S25에서 전체 노드들의 스패닝 트리 정보와의 비교가 이루어진 것으로 판단된 경우(S25-YES), 단계S26에서는 최적 스패닝 트리를 도출할 수 있다. 이때, 전체 노드들의 스패닝 트리 정보와의 비교가 이루어졌는지에 대한 판단은 교환되는 선택된 스패닝 트리 정보를 선택하는데 관여한 노드들의 리스트가 망 내의 전체 노드들의 리스트와 동일해졌는지로 판단될 수 있다.
상술한 설명에서, 단계 S21 내지 S26은 본원의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.
본원의 일 실시 예에 따른 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법 및 네트워크에서의 스패닝 트리 형성 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
전술한 본원의 설명은 예시를 위한 것이며, 본원이 속하는 기술분야의 통상의 지식을 가진 자는 본원의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본원의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본원의 범위에 포함되는 것으로 해석되어야 한다.
10: 노드 장치
11: 후보 경로 선정부
12: 경로 검토 요청 메시지 전송부
13: 응답 메시지 전송부
14: 경로 선택부
15: 데이터 전송부

Claims (15)

  1. 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법에 있어서,
    (a) 망 내의 제1 노드가 패킷 전송 시작 노드인 경우, 기 알고있는 상기 망의 토폴로지와 스패닝 트리의 토폴로지에 기반하여 상기 패킷 전송 시작 노드로부터 목적지 노드까지의 복수의 후보 경로를 선정하고, 이후 상기 선정된 복수의 후보 경로 상의 경로 상 노드들에게 상기 목적지 노드의 주소를 포함하는 경로 검토 요청 메시지를 플러딩을 통해 전송하는 단계;
    (b) 상기 제1 노드가 상기 경로 상 노드들 중 상기 목적지 노드와 이웃하는 목적지 이웃 노드인 경우, 상기 제1 노드가 포함된 후보 경로 상의 이전 이웃 노드로부터 경로 검토 요청 메시지를 수신하고, 경로 검토 요청 메시지를 전달한 이전 이웃 노드에게 경로 검토 요청 메시지에 대한 응답 메시지를 전송하는 단계;
    (c) 상기 제1 노드가 상기 경로 상 노드들 중 상기 목적지 이웃 노드를 제외한 중간 노드인 경우, 상기 제1 노드가 포함된 후보 경로 상의 이전 이웃 노드로부터 수신한 경로 검토 요청 메시지를 상기 제1 노드가 포함된 후보 경로 상의 다음 이웃 노드에게 전달하고, 다음 이웃 노드로부터 수신한 응답 메시지에 자신의 응답 메시지를 업데이트하여 이전 이웃 노드에게 전달하는 단계; 및
    (d) 상기 제1 노드가 응답 메시지를 최종 수신하는 패킷 전송 시작 노드인 경우, 수신한 응답 메시지들에 수록된 상기 복수의 후보 경로별 지연을 비교하여, 상기 복수의 후보 경로 중 종단간 지연 요구치를 만족하는 경로를 종단간 저지연 전송 경로로 선택하는 단계,
    를 포함하고,
    상기 스패닝 트리는, 상기 스패닝 트리에 속한 노드들 간의 시간 동기화를 통해 제1 레벨에 속한 노드들의 상향 링크에서의 슬롯 시작 시점이 하기 수학식 1을 만족하도록 설정되고, 상기 제1 레벨에 속한 노드들의 하향 링크에서의 슬롯 시작 시점이 하기 수학식 2를 만족하도록 설정되고, 인접한 두 레벨인 제1 레벨과 제2 레벨에 속한 노드들의 슬롯 시작 시점의 사이가 하기 수학식 3의 관계를 만족하도록 설정되는 슬롯 시작 시점이 조정된 오버레이 스패닝 트리이고,
    [수학식 1]
    tu,i + m × ts
    [수학식 2]
    td,i + m × ts
    [수학식 3]
    tu,i = tu,i +1 + tp , td,i +1 = td,i + tp
    여기서, m은 정수, t s는 한 슬롯의 길이, tp 는 상기 인접한 두 레벨에 대응하는 인접한 두 노드를 잇는 링크에서의 전파 지연값, tu,i 는 제1 레벨에 대응하는 노드의 상향 링크의 길이, tu,i +1 는 제2 레벨에 대응하는 노드의 상향 링크의 길이,td,i 는 제1 레벨에 대응하는 노드의 하향 링크의 길이, td,i +1 는 제2 레벨에 대응하는 노드의 하향 링크의 길이를 나타내며,
    상기 선정된 복수의 후보 경로는, 상기 스패닝 트리에 속한 링크와 관련된 경로인 상기 패킷 전송 시작 노드로부터 상기 목적지 노드까지 연결된 상기 스패닝 트리 상의 기본 경로 및 상기 스패닝 트리에 속하지 않은 링크와 관련된 경로인 상기 스패닝 트리 외의 상기 패킷 전송 시작 노드로부터 상기 목적지 노드까지 연결된 적어도 하나의 최단 경로를 포함하고,
    상기 적어도 하나의 최단 경로는, 상기 망의 토폴로지 정보를 이용하여 탐색된 상기 패킷 전송 시작 노드와 상기 목적지 노드 사이의 최단 경로 및 상기 스패닝 트리 상의 기본 경로를 일부 우회하는 트리우회 경로 중 적어도 하나를 포함하고,
    상기 트리우회 경로는 상기 스패닝 트리 상의 기본 경로에 대응하는 노드들 중 적어도 일부의 노드가 그와 동일 레벨에 속한 다른 노드로 연결된 형태의 경로이고,
    상기 (b) 단계에서, 상기 목적지 이웃 노드의 응답 메시지는 상기 목적지 이웃 노드의 송신 링크에서 사용 가능한 슬롯의 번호 정보와 상기 사용 가능한 슬롯을 사용할 경우에 상기 목적지 노드까지의 전송 지연 시간 정보를 포함하는 슬롯 상황 정보를 포함하는 것인, 종단간 전송 경로 및 전송 슬롯 탐색 방법.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    상기 (c) 단계에서, 상기 중간 노드의 응답 메시지는 다음 이웃 노드로부터 수신한 응답 메시지에 포함된 슬롯 상황 정보에 상기 중간 노드 자신의 슬롯 상황 정보를 결합하여 생성되는 것인, 종단간 전송 경로 및 전송 슬롯 탐색 방법.
  5. 제1항에 있어서,
    (e) 상기 제1 노드가 응답 메시지를 최종 수신하는 패킷 전송 시작 노드인 경우, 상기 제1 노드는 상기 (d) 단계에서 선택된 상기 종단간 저지연 전송 경로 상의 노드들에게 사용 가능한 슬롯에 대한 예약을 요청하는 예약 메시지를 전송하고, 상기 예약 메시지에 대한 확인 메시지를 수신하면 종단간 데이터 전송을 수행하는 단계,
    를 더 포함하는 종단간 전송 경로 및 전송 슬롯 탐색 방법.
  6. 삭제
  7. 삭제
  8. 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색을 수행하는 노드 장치에 있어서,
    망 내의 상기 노드 장치가 패킷 전송 시작 노드인 경우, 기 알고있는 상기 망의 토폴로지와 스패닝 트리의 토폴로지에 기반하여 상기 패킷 전송 시작 노드로부터 목적지 노드까지의 복수의 후보 경로를 선정하고, 이후 상기 선정된 복수의 후보 경로 상의 경로 상 노드들에게 상기 목적지 노드의 주소를 포함하는 경로 검토 요청 메시지를 플러딩을 통해 전송하는 경로 검토 요청 메시지 전송부;
    상기 노드 장치가 상기 경로 상 노드들 중 상기 목적지 노드와 이웃하는 목적지 이웃 노드인 경우, 상기 노드 장치가 포함된 후보 경로 상의 이전 이웃 노드로부터 경로 검토 요청 메시지를 수신하고, 경로 검토 요청 메시지를 전달한 이전 이웃 노드에게 경로 검토 요청 메시지에 대한 응답 메시지를 전송하는 응답 메시지 전송부; 및
    상기 노드 장치가 응답 메시지를 최종 수신하는 패킷 전송 시작 노드인 경우, 수신한 응답 메시지들에 수록된 상기 복수의 후보 경로별 지연을 비교하여, 상기 복수의 후보 경로 중 종단간 지연 요구치를 만족하는 경로를 종단간 저지연 전송 경로로 선택하는 경로 선택부를 포함하고,
    상기 응답 메시지 전송부는, 상기 노드 장치가 상기 경로 상 노드들 중 상기 목적지 이웃 노드를 제외한 중간 노드인 경우, 상기 노드 장치가 포함된 후보 경로 상의 이전 이웃 노드로부터 수신한 경로 검토 요청 메시지를 상기 노드 장치가 포함된 후보 경로 상의 다음 이웃 노드에게 전달하고, 다음 이웃 노드로부터 수신한 응답 메시지에 자신의 응답 메시지를 업데이트하여 이전 이웃 노드에게 전달하고,
    상기 스패닝 트리는, 상기 스패닝 트리에 속한 노드들 간의 시간 동기화를 통해 제1 레벨에 속한 노드들의 상향 링크에서의 슬롯 시작 시점이 하기 수학식 4를 만족하도록 설정되고, 상기 제1 레벨에 속한 노드들의 하향 링크에서의 슬롯 시작 시점이 하기 수학식 5를 만족하도록 설정되고, 인접한 두 레벨인 제1 레벨과 제2 레벨에 속한 노드들의 슬롯 시작 시점의 사이가 하기 수학식 6의 관계를 만족하도록 설정되는 슬롯 시작 시점이 조정된 오버레이 스패닝 트리이고,
    [수학식 4]
    tu,i + m × ts
    [수학식 5]
    td,i + m × ts
    [수학식 6]
    tu,i = tu,i +1 + tp , td,i +1 = td,i + tp
    여기서, m은 정수, t s는 한 슬롯의 길이, tp 는 상기 인접한 두 레벨에 대응하는 인접한 두 노드를 잇는 링크에서의 전파 지연값, tu,i 는 제1 레벨에 대응하는 노드의 상향 링크의 길이, tu,i +1 는 제2 레벨에 대응하는 노드의 상향 링크의 길이,td,i 는 제1 레벨에 대응하는 노드의 하향 링크의 길이, td,i +1 는 제2 레벨에 대응하는 노드의 하향 링크의 길이를 나타내며,
    상기 선정된 복수의 후보 경로는, 상기 스패닝 트리에 속한 링크와 관련된 경로인 상기 패킷 전송 시작 노드로부터 상기 목적지 노드까지 연결된 상기 스패닝 트리 상의 기본 경로 및 상기 스패닝 트리에 속하지 않은 링크와 관련된 경로인 상기 스패닝 트리 외의 상기 패킷 전송 시작 노드로부터 상기 목적지 노드까지 연결된 적어도 하나의 최단 경로를 포함하고,
    상기 적어도 하나의 최단 경로는, 상기 망의 토폴로지 정보를 이용하여 탐색된 상기 패킷 전송 시작 노드와 상기 목적지 노드 사이의 최단 경로 및 상기 스패닝 트리 상의 기본 경로를 일부 우회하는 트리우회 경로 중 적어도 하나를 포함하고,
    상기 트리우회 경로는 상기 스패닝 트리 상의 기본 경로에 대응하는 노드들 중 적어도 일부의 노드가 그와 동일 레벨에 속한 다른 노드로 연결된 형태의 경로이고,
    상기 응답 메시지 전송부에 의해 전송되는 상기 목적지 이웃 노드의 응답 메시지는 상기 목적지 이웃 노드의 송신 링크에서 사용 가능한 슬롯의 번호 정보와 상기 사용 가능한 슬롯을 사용할 경우에 상기 목적지 노드까지의 전송 지연 시간 정보를 포함하는 슬롯 상황 정보를 포함하는 것인, 노드 장치.
  9. 삭제
  10. 삭제
  11. 제8항에 있어서,
    상기 응답 메시지 전송부에 의해 전달되는 상기 중간 노드의 응답 메시지는 다음 이웃 노드로부터 수신한 응답 메시지에 포함된 슬롯 상황 정보에 상기 중간 노드 자신의 슬롯 상황 정보를 결합하여 생성되는 것인, 노드 장치.
  12. 제8항에 있어서,
    상기 노드 장치가 응답 메시지를 최종 수신하는 패킷 전송 시작 노드인 경우, 상기 경로 선택부에서 선택된 상기 종단간 저지연 전송 경로 상의 노드들에게 사용 가능한 슬롯에 대한 예약을 요청하는 예약 메시지를 전송하고, 상기 예약 메시지에 대한 확인 메시지를 수신하면 종단간 데이터 전송을 수행하는 데이터 전송부,
    를 더 포함하는 노드 장치.
  13. 삭제
  14. 삭제
  15. 제1항, 제4항 및 제5항 중 어느 한 항의 방법을 컴퓨터에서 실행하기 위한 프로그램을 기록한 컴퓨터에서 판독 가능한 기록매체.
KR1020180137018A 2017-11-29 2018-11-09 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법과 그를 수행하는 노드 장치 KR102045444B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20170161506 2017-11-29
KR1020170161506 2017-11-29

Publications (2)

Publication Number Publication Date
KR20190063388A KR20190063388A (ko) 2019-06-07
KR102045444B1 true KR102045444B1 (ko) 2019-11-15

Family

ID=66850293

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180137018A KR102045444B1 (ko) 2017-11-29 2018-11-09 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법과 그를 수행하는 노드 장치

Country Status (1)

Country Link
KR (1) KR102045444B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022092632A2 (ko) * 2020-10-30 2022-05-05 한국항공대학교산학협력단 종단간 주기적 저지연 트래픽 전송을 위한 오프셋 기반의 전송 경로 및 슬롯 탐색 방법과 그를 수행하는 제어 장치
KR102590563B1 (ko) * 2020-10-30 2023-10-17 한국항공대학교산학협력단 종단간 주기적 저지연 트래픽 전송을 위한 오프셋 기반의 전송 경로 및 슬롯 탐색 방법과 그를 수행하는 제어 장치
CN112311667B (zh) * 2020-11-12 2022-07-08 山东云海国创云计算装备产业创新中心有限公司 一种报文传输方法、装置、设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101694329B1 (ko) * 2016-04-12 2017-01-10 주식회사 주빅스 애드 혹 네트워크에서 데이터를 전송하기 위한 경로 확립 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100973695B1 (ko) * 2008-08-14 2010-08-04 숭실대학교산학협력단 노드 장치 및 스패닝 트리를 이용한 최단 경로 결정 방법
KR101206734B1 (ko) * 2010-12-29 2012-11-30 숭실대학교산학협력단 애드 혹 네트워크에서 우회경로를 고려한 다중경로 라우팅 장치 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101694329B1 (ko) * 2016-04-12 2017-01-10 주식회사 주빅스 애드 혹 네트워크에서 데이터를 전송하기 위한 경로 확립 방법

Also Published As

Publication number Publication date
KR20190063388A (ko) 2019-06-07

Similar Documents

Publication Publication Date Title
CN110139319B (zh) 高动态时延网络传输时延最小化路由方法
Ji et al. SDGR: An SDN-based geographic routing protocol for VANET
JP4714274B2 (ja) 複数の無線を用いて無線通信ネットワークの容量を増加させるためのシステムおよび方法
JP6945897B2 (ja) サービス品質保証に基づく無線メッシュネットワーク日和見ルーティングアルゴリズム
US8064377B2 (en) Method for enhancement of multicasting forwarding protocol in a wireless network
KR102045444B1 (ko) 종단간 저지연 전송을 위한 종단간 전송 경로 및 전송 슬롯 탐색 방법과 그를 수행하는 노드 장치
TW200406106A (en) Multi-channel mobile ad hoc network
JP2006020332A (ja) パケット中継方法、ルータ設定方法及びルータ設定システム
KR101892262B1 (ko) Dodag 구조 기반의 배압 라우팅 방법 및 장치
Wang et al. A multi-path QoS multicast routing protocol with slot assignment for mobile ad hoc networks
US20120163233A1 (en) Method for transmitting routing information and routing apparatus in wireless network
So et al. Routing and channel assignment in multi-channel multi-hop wireless networks with single network interface
Devarajan et al. An enhanced cluster gateway switch routing protocol (ECGSR) for congestion control using AODV algorithm in MANET
Wankhade et al. Ant based techniques for qos routing in mobile ad hoc network: an overview
WO2015048995A1 (en) Integration of cellular and ieee 802.11 networks in vanets
JP4025573B2 (ja) 通信システム及び通信方法
Kone et al. QoS constrained adaptive routing protocol for mobile adhoc networks
KR100992485B1 (ko) 무선 메시 네트워크 장치 및 이를 이용한 라우팅 방법
Becker Qos routing protocols for mobile ad-hoc networks-a survey
Naushad et al. Analyzing link connectivity to ensure faster failure detection for qos routing in manets: A peculiar outline
Jha et al. Improvement of qos performance in manet by qos-tora: A tora based qos routing algorithm
Khasawneh et al. Intra-Domain Handoff Management Scheme for Wireless Mesh. Network
Landmark et al. Routing loops in mobile heterogeneous Ad Hoc networks
KR101381807B1 (ko) 무선 애드혹 네트워크 시스템 및 다중 경로 설정 방법
Sharma et al. Congestion Aware Link Cost Routing for MANETS

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant