KR20100137546A - 노드 장치, 노드 장치가 실행하는 방법 및 컴퓨터 판독가능한 기록 매체 - Google Patents

노드 장치, 노드 장치가 실행하는 방법 및 컴퓨터 판독가능한 기록 매체 Download PDF

Info

Publication number
KR20100137546A
KR20100137546A KR20107023884A KR20107023884A KR20100137546A KR 20100137546 A KR20100137546 A KR 20100137546A KR 20107023884 A KR20107023884 A KR 20107023884A KR 20107023884 A KR20107023884 A KR 20107023884A KR 20100137546 A KR20100137546 A KR 20100137546A
Authority
KR
South Korea
Prior art keywords
node
frame
destination
information
weighting
Prior art date
Application number
KR20107023884A
Other languages
English (en)
Other versions
KR101212838B1 (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 KR20100137546A publication Critical patent/KR20100137546A/ko
Application granted granted Critical
Publication of KR101212838B1 publication Critical patent/KR101212838B1/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/54Organization of routing tables
    • 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/02Topology update or discovery
    • H04L45/021Ensuring consistency of routing table updates, e.g. by using epoch numbers
    • 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
    • H04L45/026Details of "hello" or keep-alive messages
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/24Radio transmission systems, i.e. using radiation field for communication between two or more posts
    • H04B7/26Radio transmission systems, i.e. using radiation field for communication between two or more posts at least one of which is mobile
    • H04B7/2603Arrangements for wireless physical layer control
    • H04B7/2606Arrangements for base station coverage control, e.g. by using relays in tunnels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • H04W40/12Communication route or path selection, e.g. power-based or shortest path routing based on transmission quality or channel quality

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Radio Relay Systems (AREA)

Abstract

간이한 구조이며, 네트워크에 부하를 걸지 않고, 자율적으로 적절한 경로를 선택할 수 있는 노드 장치/프로그램을 제공한다. 통신 네트워크 중 노드 장치(1)에 있어서, FID 관리 테이블(5)에 프레임을 일의로 식별하는 FID와 프레임의 송출 목적지 노드에 관한 정보를 저장하고, 가중 테이블(7)에 프레임의 최종 수신 목적지 노드 다, 프레임을 중계하기 위해 송출 목적지로 하는 타노드에 대한 가중 정보를 저장한다. 자노드 앞으로 송신된 프레임을 수신하면, 수신한 프레임의 FID가 FID 관리 테이블(5)에 저장되어 있는 경우에는, FID와 대응된 송출 목적지 노드에 대한 데이터를 갱신한다. 프레임 수신 수단에 의해 수신한 프레임의 FID가, FID 관리 테이블(5)에 저장되어 있지 않은 경우에는, 프레임의 수신 목적지 노드에 해당하는 가중 테이블(5)을 참조하여, 프레임을 중계하기 위한 수신 목적지로 하는 타노드를 결정한다.

Description

노드 장치 및 프로그램{NODE DEVICE AND PROGRAM}
본 발명은 복수의 노드를 포함하는 네트워크에서의, 경로 선택 가능한 장치/프로그램에 관한 것이다.
네트워크 장치에 대해서는, 지금까지 매우 많은 연구가 이루어졌다. 가장 보급되어 있는 것은, IP(Internet Protocol) 네트워크를 이용한 네트워크 장치이다. 또한, 복수의 프로토콜이나 네트워크를 수용하는 것을 목적으로 한 MPLS(Multi Protocol Labeled Switching)는 자동적으로 경로를 작성하는 기구를 갖는 네트워크 장치이다. 또한, 애드혹 알고리즘의 대표예로서 AODV(Ad-hoc On-Demand Vector)나 OLSR(Optimized Link State Routing)이 있다.
IP 네트워크 장치에서는, IP 어드레스에 따라 라우팅을 결정한다. IP 어드레스 자체가 트리 구조를 갖기 때문에, IP 어드레스의 상위로부터 합치하는 IP 네트워크를 관리하는 네트워크 장치에 전송함으로써, 최종적으로 목표로 하는 단말에 프레임을 전송할 수 있다. 라우팅은 IP 어드레스 체계에 의해 결정되어 있다. 어느 네트워크 장치인지 어느 IP 네트워크를 관리하고 있는지는, 라우팅 테이블에 의해 규정된다. 라우팅 테이블은 주로 수동으로 설정되는 경우도 많지만, RIP(Routing Information Protocol)에 의해 자동적으로 갱신되는 경우도 있다. RIP이란 네트워크 장치가 관리하는 IP 네트워크를 주위에 브로드캐스트하고, 네트워크 장치가 서로 관리하는 IP 네트워크를 확인하는 방식이다.
MPLS에서는 네트워크가 LSR(Label Switch Router)로 지칭되는 네트워크 장치 사이와 외부 네트워크로 분리된다. 외부 네트워크로부터의 프레임은, 에지 노드로 지칭되는 외부 네트워크와 내부 네트워크의 양쪽에 걸친 네트워크 장치에 의해 내부 네트워크에 포함된다. 이 때, 외부 프레임의 선두에는 라벨이 삽입된다. 각 LSR은, 각각이 라벨 전송 테이블을 갖는다. 라벨 전송 테이블은, 입력 프레임의 라벨과 출력 프레임의 라벨 및 수신 목적지를 유지한다. LSR은 입력되는 프레임의 라벨을 취출하고, 해당하는 라벨을 라벨 전송 테이블로부터 발견하여, 출력 프레임의 라벨에 재기록하며, 해당하는 수신 목적지에 송출한다. 라벨 전송 테이블의 LDP(Label Distribution Protocol)에 의해 행해진다. LDP는 우선 RIP 등에 의해 라우팅 테이블을 작성하고, 이것에 라벨을 부가하며, 인접 노드 사이에서 서로 통지하는 프로토콜이다.
AODV는 경로 검색에 브로드캐스트를 이용하여, 다른 통신 노드 장치가 브로드캐스트를 반복하여 원하는 노드 장치에의 경로를 발견하는 방법이다. 통신 노드 장치는, 목표로 하는 경로를 발견하기 위해 주위에 「Route Request(RREQ)」라는 프레임을 송출한다. 이 프레임에는, 검색 목표의 통신 노드 ID가 명기되어 있다. 주위의 통신 노드 장치는, 자신을 검색하지 않는 경우는, 새롭게 RREQ 프레임을 작성하여, 주위에의 브로드캐스트를 반복하여 행한다. 이 때 각 통신 노드 장치는, 송신원의 메시지가, 인접하는 어느 통신 노드 장치로부터 수신된 것인지를 기록한다. RREQ 메시지가 원하는 통신 노드 장치에 도달했을 때, 그 원하는 통신 노드 장치는 「Route Reply(RREP)」 프레임을 작성하고, 송신원의 노드에 대하여, RREQ 프레임이 보내져 온 경로를 찾아가도록 하여 RREP 프레임을 송신한다. 이와 같이 하여, 쌍방향의 통신 경로가 작성되어 있다.
OLSR(Optimized Link State Routing)에서는, 통신 노드 장치끼리가 정기적으로 프레임을 교환함으로써, 네트워크 전체를 파악하고, 원하는 통신 노드까지의 경로를 검출하는 방식을 채용하고 있다. 통신 노드 장치는, 주기적으로 HELLO(헬로) 프레임을 송출하고, 서로 그 존재를 통지한다. 통신 상대가 되는 통신 노드 장치의 존재가 판명되었을 때 다음에 효율적으로 네트워크 전체에 프레임을 분배하기 위한 플러딩용 패스를 생성한다. 이것을 MPR(Multi Point Relay)로 지칭한다. MPR에 의해, 각 통신 노드 장치로부터 효율적으로 프레임을 네트워크 전체에 브로드캐스트할 수 있다. 다음에 이 MPR을 이용하여, 경로 작성 메시지인 TC(Topology Control) 프레임을 노드 장치끼리가 서로 분배함으로써, 전체 노드 장치가 네트워크 토폴로지를 알 수 있다. 프레임을, 목표로 하는 통신 노드 장치에 보내기 위해서는, 송출원이 되는 통신 노드 장치 자신이 알고 있는 네트워크 토폴로지를 참조하여, 보내야 하는 인접 통신 노드 장치에 프레임을 맡긴다. 인접 노드 장치도 마찬가지로 처리를 행하여, 최종적으로 목표 노드 장치에 프레임을 보낸다.
애드혹 무선 통신 네트워크에 관해서는, 공지의 기술로서, 각 노드가 헬로 메시지로서 자노드의 존재를 통지하는 정보와, 자노드까지의 라우트 메트릭을 포함한 정보를 방송하고, 상기 헬로 메시지를 수신한 타노드는, 수신한 라우트 메트릭에 헬로 메시지를 방송해 온 노드와 자노드 사이의 라우트를 위한 라우트 메트릭을 추가하며, 상기 추가 후의 라우트 메트릭을 사용하는 기술에 대해서 제공되어 있다(예컨대 특허문헌 1). 여기서의 라우트 메트릭은 홉 수, 링크 품질 등의 인자에 의해 산출되는, 송신원과 수신 목적지와의 비용을 나타내는 값이다.
일본 특허 공표 제2006-526937호 공보
IP 네트워크 장치나 MPLS에서는, 전제로서 어드레스에 의해 네트워크 자체가 구조를 가지고 있는 것을 이용하고 있다. IP 어드레스가 트리 구조이기 때문에, 어드레스가 상위로부터 매치되어 가는 방향을 선택함으로써 경로가 결정된다. 또한 이들은 유선 접속을 전제로 하고 있다. 2개의 통신 단말 사이에서 유선 접속은 안정된 통신을 할 수 있고, 접속되어 있지 않은 통신기기는 프레임을 수신하는 경우는 없기 때문에, 단순히 통신기의 홉 수만으로 정할 수 있다.
그러나 무선 통신을 전제로 했을 때, 이들 방식으로는 통신 품질이 좋은 경로 작성은 어렵다. 무선 통신에서는, 통신 품질은 유선 통신과 비교한 경우에 좋지 않으며, 통신과는 직접 관계되지 않는 다른 통신 단말에도 영향을 부여한다. 또한 통신 품질은 거리나 주위 환경의 의존성도 높고, 시간적 변화도 수반한다. 이러한 환경하에서 상기 프로토콜을 실시한 경우, 홉 수만으로 결정하면, 알고리즘이 먼 통신 단말을 경유하고자 하는 경우가 있을 수 있다. 그러나, 거리가 멀면 그 만큼 통신 품질도 좋지 않기 때문에 매우 품질이 좋지 않은 경로를 작성해 버린다.
AODV는 경로 작성시에 네트워크에 부하를 건다. 통신 단말 수가 적은 경우는 문제없지만, 통신 단말 수가 많아져 통신량이 증가한 경우 네트워크에의 부하가 높아져 버린다. 그 결과, 통신이 이미 확립되어 있는 통신 노드 장치에도 영향을 부여하여, 링크 절단을 일으킬 가능성이 높고, 결과적으로 통신할 수 있는 노드 장치는 매우 적어져 그 대부분이 경로 확립을 할 수 없게 된다. 또한, 전술한 바와 같이 홉 수를 베이스로 하고 있기 때문에 통신 품질이 좋지 않은 경로를 작성해 버리는 경우도 생각할 수 있다.
OLSR에서는, 전체 노드 장치가 네트워크 토폴로지를 알아야 한다. 이 때문에 스케일에 한계가 생긴다. 또한, 전체 노드 장치의 토폴로지가 판명되는 시간이 필요해진다.
전술한 바와 같이, 유·무선을 막론하고, 네트워크에서는, 통신량이나 주위의 환경 영향에 의해 노드 장치 사이의 통신 품질이 변화하는 경우가 있고, 특히 무선에서는 변화가 크다. 이 때문에, 매우 많은 노드 장치를 포함한 네트워크를 생각한 경우, 네트워크를 통괄하는 서버를 설치하고, 상기 서버에 의해 네트워크를 관리하는 것은 실용적이지 않다. 그 이유는 노드 장치의 개수가 많기 때문에 서버로부터 제어 지시를 송신하는 것만으로도 대단한 부하가 되어 버리기 때문이다. 그래서, 매우 많은 노드 장치로부터 네트워크가 만들어지고 있는 경우에는, 각 노드 장치가 자율적으로 경로 선택이나 사활 감시 등의 동작을 하는 것이 요구된다.
그런데, 각 노드 장치가 자율적으로 동작하는 것을 생각한 경우, 전술한 바와 같이 통신 품질은 변화하기 때문에, 어떤 노드 장치에 송신 프레임을 중계할 때에는, 현시점에서 유효한 경로를 각 노드 장치가 파악해 두어야 한다. 예컨대 고정적인 구조를 갖는 네트워크나 일반적인 검색 방법인 이진 트리 탐색 등의 방법에서는, 네트워크나 트리의 전체 상을 처음부터 알고 있기 때문에, 어디까지 경로를 탐색했는지를 용이하게 판별 가능한 것에 대하여, 본원이 대상으로 하는 노드 장치 사이의 링크가 변화되어 가는 네트워크에서, 각 노드 장치는, 주위의 노드 장치 끝에 어떠한 노드 장치가 링크되어 있는지를 모르기 때문에, 어디까지 경로를 탐색했는지를 알기 위한 구조가 필요해진다.
본 발명에서는, 간이한 구조이며, 네트워크에 부하를 걸지 않고, 자율적으로 적절한 경로를 선택할 수 있는 노드 장치/프로그램을 제공한다.
본 발명의 실시형태에 따른 노드 장치는, 복수의 노드 장치를 포함하는 네트워크 중, 노드 장치에 있어서, 자노드가 송신한 프레임의 정보로서, 프레임을 일의로 식별하기 위한 식별 정보와 상기 프레임의 송출 목적지 노드에 관한 정보를 저장하는 식별 정보 관리 테이블과, 프레임의 최종 수신 목적지 노드마다, 프레임을 중계하기 위해 송출 목적지로 하는 타노드에 대한 가중 정보를 저장하는 수신 목적지 노드별 가중 테이블과, 타노드로부터 자노드 앞으로 송신된 프레임을 수신하는 프레임 수신 수단과, 상기 프레임 수신 수단에 의해 수신한 상기 프레임의 식별 정보가, 상기 식별 정보 관리 테이블에 저장되어 있는 경우에, 상기 식별 정보와 대응시켜 저장되어 있는 상기 송출 목적지 노드에 대해서, 상기 프레임의 최종 수신 목적지에 대응하는 상기 수신 목적지 노드별 가중 테이블의 데이터를 갱신하는 수신 목적지 노드별 가중 테이블 갱신 수단과, 상기 프레임 수신 수단에 의해 수신한 상기 프레임의 식별 정보가, 상기 식별 정보 관리 테이블에 저장되어 있지 않은 경우에, 상기 프레임의 최종 수신 목적지 노드에 해당하는 상기 수신 목적지 노드별 가중 테이블을 참조하여, 상기 프레임을 중계하기 위한 송출 목적지로 하는 타노드를 결정하는 프레임 송출 목적지 결정 수단을 포함한다.
타노드로부터 프레임을 수신하면, 수신 목적지 노드별 가중 테이블을 참조하여, 전송해야 하는 노드를 결정한다. 전송 목적지의 노드를 가중값에 따라 결정하고, 또한 타노드에의 프레임의 전송 여부에 따라 가중값이 갱신된다. 노드 장치는 자율적으로 경로를 학습할 수 있다.
상기 수신 목적지 노드별 가중 테이블 갱신 수단은, 상기 프레임 수신 수단에 의해 수신한 상기 프레임의 식별 정보가, 상기 식별 정보 관리 테이블에 저장되어 있는 경우에, 상기 식별 정보와 대응시켜 저장되어 있는 상기 송출 목적지 노드에 대해서, 상기 프레임의 최종 수신 목적지에 대응하는 상기 수신 목적지 노드별 가중 테이블의 상기 송출 목적지 노드에 대한 가중을, 우선도가 낮아지도록 갱신하여도 좋다.
더 나아가서는, 자노드 주위에 존재하는 타노드에 관한 정보를 저장하는 인접 노드 관리 테이블과, 헬로 메시지로서, 자노드의 존재를 알리는 정보와, 상기 인접 노드 관리 테이블로부터 판독한 정보로서, 주위의 경로에 관한 정보를 송신하는 헬로 메시지 송신 수단과, 타노드로부터 송신된 헬로 메시지를 수신하는 헬로 메시지 수신 수단과, 상기 헬로 메시지 수신 수단에 의해 수신한 헬로 메시지의 송출원 노드에 관한 정보에 기초하여, 상기 인접 노드 관리 테이블을 갱신하는 인접 노드 관리 테이블 갱신 수단을 더 포함하고, 상기 인접 노드 관리 테이블에 있어서, 미리 정해진 상태가 된 제1 노드를 검출한 경우에, 상기 수신 목적지 노드별 가중 테이블 갱신 수단은, 상기 수신 목적지 노드별 가중 테이블의 송출 목적지 노드가 상기 제1 노드인 데이터를 우선도가 낮아지도록 갱신하여도 좋다.
본 발명의 실시형태에 따른 노드 장치에 의하면, 노드 장치 사이의 링크가 변화하는 네트워크에서도, 각 노드 장치는, 보유하는 가중값에 관한 정보를 참조하여 전송 목적지의 노드를 결정하고, 가중값에 관한 정보를 갱신한다. 이에 의해, 네트워크 전체를 파악하지 못해도, 자율적으로 최적의 경로를 학습하여 통신할 수 있다.
도 1은 통신 시스템의 전체 개념도이다.
도 2는 본 발명의 실시형태에 따른 노드 장치의 개략도이다.
도 3은 본 발명의 실시형태에 따른 노드 장치의 상세한 모식도이다.
도 4는 인접 노드 관리 테이블의 구조를 도시하는 도면이다.
도 5는 프레임의 포맷예이다.
도 6은 도 5의 프레임의 포맷예의 설명이다.
도 7은 인접 노드 관리 테이블에 기초하는 데이터 전송 처리를 설명하는 도면이다.
도 8은 프레임의 전송 결과에 의해 가중값에 관한 정보를 조작하는 처리를 설명하는 도면이다.
도 9는 FID 관리 테이블의 예를 도시하는 도면이다.
도 10은 본 발명의 실시형태에 따른 노드 장치의 데이터 프레임 수신시의 처리를 도시한 개략적인 제1 흐름도이다.
도 11은 본 발명의 실시형태에 따른 노드 장치의 데이터 프레임 수신시의 처리를 도시한 개략적인 제2 흐름도이다.
도 12는 헬로 헤더의 포맷을 도시하는 도면이다.
도 13은 본 발명의 실시형태에 따른 노드 장치에 있어서, 지연에 의해 통신 품질을 계측하는 방법을 설명하는 도면이다.
도 14는 헬로 헤더를 포함한 헬로 프레임의 상세한 포맷을 도시하는 도면이다.
도 15는 가중 테이블의 구조를 상세히 설명하는 도면이다.
도 16은 본 발명의 실시형태에 따른 노드 장치의 프레임 수신시의 처리를 도시한 상세한 제1 흐름도이다.
도 17은 본 발명의 실시형태에 따른 노드 장치의 프레임 수신시의 처리를 도시한 상세한 제2 흐름도이다.
도 18은 본 발명의 실시형태에 따른 노드 장치의 프레임 수신시의 처리를 도시한 상세한 제3 흐름도이다
도 19는 본 발명의 실시형태에 따른 노드 장치의 프레임 수신시의 처리를 도시한 상세한 제4 흐름도이다.
도 20은 본 발명의 실시형태에 따른 노드 장치의 프레임 수신시의 처리를 도시한 상세한 제5 흐름도이다.
도 21은 본 발명의 실시형태에 따른 노드 장치의 프레임 수신시의 처리를 도시한 상세한 제6 흐름도이다.
도 22는 헬로 프레임의 교환 시퀀스를 도시하는 도면이다.
도 23은 본 발명의 실시형태에 따른 노드 장치 또는 프로그램을 실시할 수 있는 하드웨어를 도시하는 개요도이다.
이하, 본 발명의 적합한 실시형태에 대해서, 도면을 참조하여 상세히 설명한다.
우선, 본 명세서에서의 용어에 대해서 설명한다.
「프레임」이란 프로토콜이 취급하는 데이터 단위를 가리킨다. 「프레임」에는, 예컨대 「헬로 프레임」「데이터 프레임」이 포함되지만, 이들에 한정되지는 않는다.
「헬로 프레임(HELLO 프레임)」이란 본 발명의 실시형태에 따른 노드 장치가, 별도의 노드 장치에 대하여 서로의 존재·상태의 확인을 위해 송출하는 특별한 프레임을 가리킨다.
「데이터 프레임」이란, 네트워크가(시작 노드로부터 목적지 노드에) 전송하고자 하는 데이터를 가리킨다. 또한 물론 본 발명의 실시형태에 따른 노드 장치는, 「헬로 프레임」과 「데이터 프레임」을 식별하기 위한 적절한 수단을 가질 수 있다.
「Local Destination(LD)」란 어떤 노드 장치를 주체로 하여 봤을 때, 다음에 프레임을 전달해야 하는 인접 노드 장치를 나타내는 수신 목적지 노드 ID를 가리킨다. 또한 본 명세서에서는 LD를, 「로컬 수신 목적지 어드레스」로 지칭하는 경우도 있다.
「Local Source(LS)」란 LD에 프레임을 보내는 그 직접적인 송신원이 되는 노드 장치(즉, LD에 있어서의 자노드 장치)를 나타낸 노드 ID를 가리킨다. 또한 본 명세서에서는 LS를, 「로컬 차출 어드레스」로 지칭하는 경우도 있다.
「Global Destination(GD)」이란 데이터 프레임의 네트워크에 걸친 일련의 전파에 관한 최종적인 수신 목적지가 되는 노드 ID를 가리킨다. 또한 본 명세서에서는 GD를, 「글로벌 수신 목적지 어드레스」로 지칭하는 경우도 있다.
「Global Source(GS)」란 데이터 프레임의 네트워크에 걸친 일련의 전파에 관한 최초의 송신원인 노드 ID를 가리킨다. 또한 본 명세서에서는 GS를, 「글로벌 차출 어드레스」로 지칭하는 경우도 있다.
「프레임 ID(FID)」란 각 프레임이 갖는 고유의 식별 정보이다. FID로서는 예컨대 일련의 번호를 이용할 수 있지만, 이것에 한정되지는 않는다.
「가중값」이란 본 발명의 실시형태에 따른 프레임 전파 경로 선택에 있어서 고려되는 값이다. 가중값으로서는, 복로(復路) 링크 가중값, 왕로(往路) 링크 가중값, 쌍방향 링크 가중값, 경로 품질 가중값, 복로 품질 가중값, 링크간 도달 가중값이 본 명세서에 예시되어 있지만, 이들에 한정되지는 않는다. 또한 본 명세서의 기재에 있어서 「가중값」 또는 「가중값에 관한 정보」라고 할 때에는, 어떠한 종류의 가중값을 이용하여 산정한 값을 가리키는 경우도 있는 것으로 해석되어야 한다.
「복로 링크 가중값」이란, 복로를 오는 프레임에 관한 가중값이다. 또한, 어떤 노드 장치를 주체로 하여 생각할 때, 그 노드 장치가 별도의 인접하는 노드 장치로부터 프레임을 받는 것으로 하면, 그 프레임은 「복로」를 통과하게 된다.
「왕로 링크 가중값」이란, 왕로를 가는 프레임에 관한 가중값이다. 또한, 어떤 노드 장치를 주체로 하여 생각할 때, 그 노드 장치가 별도의 인접하는 노드 장치에 프레임을 보내는 것으로 하면, 그 프레임은 「왕로」를 통과하게 된다.
「쌍방향 링크 가중값」이란, 전술한 왕로 링크 가중값과 복로 링크 가중값을 조합하여 산출하는 가중값이다. 본 발명의 실시형태에서는, 「복로 링크 가중값」「왕로 링크 가중값」「쌍방향 링크 가중값」은 뒤에 상술하는 인접 노드 관리 테이블을 포함할 수 있는 데이터이다. 그러나 다른 실시형태에서는, 이외의 조합을 포함하여도 상관없다.
「경로 품질 가중값」이란, GD까지의 경로상에서의 지연을 수치화한 것을 가리킨다.
「복로 품질 가중값」이란, 상대가 되는 노드 장치로부터 자노드 장치에 이르는 방향에의 통신 품질을 수치화한 것을 가리킨다.
「링크간 도달 가중값」이란, 프레임의 링크 사이에서의 전송의 여부를 수치화한 값이다. 본 발명의 실시형태에서는, 「경로 품질 가중값」「복로 품질 가중값」「링크간 도달 가중값」은, 뒤에 상술하는 가중 테이블을 포함할 수 있는 데이터이다. 그러나 다른 실시형태에서는, 이외의 조합을 포함하여도 상관없다.
도 1은 통신 시스템의 전체 개념도이다. 도 1에 도시하는 바와 같이, 네트워크에는 노드 장치(a, b, …, s, t)가 서로 접속되어 포함되어 있다. 본 통신 시스템에 있어서는, 시작 노드[도 1의 예에서는 노드 장치 b]로부터 목적지 노드[도 1의 예에서는 노드 장치 t]에 정보를 전달함에 있어서, 각 노드 장치가 중계기로서 동작한다.
각 노드 장치는, 각각 고유의 식별 정보(ID, Identification)를 보유한다. 각 노드 장치에 할당된 ID를, 이하 노드 ID로 한다. 각 노드 장치는, 서로 인접해 있는 노드 장치나 네트워크 전체에 대해서는 파악하고 있지 않다. 초기 상태에 있어서는, 서로의 링크는 존재하고 있지 않고, 각 노드 장치는, 자신 이외의 노드 장치에 대해서는 그 존재·상태를 파악하고 있지 않다.
그래서, 도 1에 도시하는 통신 시스템에 있어서 시작 노드{b}로부터 목적지 노드{t}에 정보를 전달하기 위해서는, 우선 네트워크를 구축해야 한다. 네트워크를 구축하는 절차는, 이하와 같다.
우선 행해지는 것은, 주위의 노드 장치의 검출이다. 어떤 노드 장치는, 자신의 존재를 인근에 존재하는 노드 장치에 주기적으로 통지한다. 인근 노드 장치에의 통지에는, 경로 작성에 관련된 정보가 수반되어 있다. 각 노드 장치는, 통지를 수신하면, 주위의 노드 장치에 대한 리스트를 작성하여, 자장치 주위의 노드 장치의 존재를 파악할 수 있다.
주위의 노드 장치를 검출한 노드 장치는, 작성한 리스트에 기초하여, 자신이 정보를 전송하는 상대가 되어야 하는 노드 장치를 결정하여, 그 노드 장치에 정보를 전송한다.
어떤 노드 장치가, 정보를 전송해야 하는 노드 장치를 결정함에 있어서, 주위에 존재하는 복수의 노드 장치 중 어느 노드 장치에 정보를 맡기면, 목적으로 하는 목적지 노드에 정보를 도달시킬 수 있을지에 대해서는, 이 시점에서 아직 이 노드 장치는 인식하지 못한다. 따라서, 본 실시형태에 따른 노드 장치에는, 주위의 노드 장치 중 어디에 우선적으로 정보를 전송할 것인지를 나타내는 가중 테이블을 작성하고, 가중 테이블에 저장되어 있는 가중값에 관한 정보에 따라서, 정보의 전송 대상이 되어야 하는 노드 장치를 결정한다.
이하, 본 실시형태에 따른 노드 장치에 대해서, 구체적으로 설명한다.
도 2는 본 실시형태에 따른 노드 장치의 개략도이다. 도 2에 대략적인 개요를 도시하는 노드 장치(1)는, 프레임 처리부(2), 링크 관리부(3), 라우팅 결정부(4), FID(프레임 ID) 관리 테이블(5), 인접 노드 관리 테이블(6), 및 가중 테이블(7)을 갖는다. 도 2에는 명시되어 있지 않지만, 상기 기술 분야에서 이미 알려져 있는 어떠한 종류의 기억 장치(예컨대, DRAM 또는 플래시 메모리)가, FID(프레임 ID) 관리 테이블(5), 인접 노드 관리 테이블(6), 및 가중 테이블(7)을 데이터 테이블로서 저장할 수 있다.
프레임 처리부(2)는 노드 장치(1)에 인접하는 노드 장치와의 사이에서 교환되는 데이터 프레임을 처리한다. 프레임 처리부(2)는 또한, 데이터 프레임을 수신한 경우에, 기억 장치(도 2에는 도시 생략)에 액세스하여 FID 관리 테이블(5)(청구항의 식별 정보 관리 테이블에 상당)을 이용하여, 루프의 발생을 검출한다.
링크 관리부(3)는 기억 장치(도 2에는 도시 생략)에 액세스하여 인접 노드 관리 테이블(6)을 이용하여, 인접하는 노드 장치의 사활(死活) 및 링크 강도를 관리한다.
라우팅 결정부(4)는, 기억 장치(도 2에는 도시 생략)에 액세스하여 가중 테이블(7)(청구항의 수신 목적지 노드별 가중 테이블에 상당)을 참조하여, 프레임을 다음에 어느 인접 노드 장치에 전송할 것인지를 결정한다. 가중 테이블(7)은, 프레임의 최종적인 수신 목적지[즉, Global Destination(GD)]마다 작성된다.
또한, 도 1에 도시하는 네트워크를 구축하는 복수의 노드 장치 각각은, 각각이 도 2에 도시하는 바와 같은 구조를 취하지만, 이하의 설명에서는, 다른 노드 장치와 구별하여, 자노드 장치에 대해서 부호 「1」 또는 「1a」를 붙여 설명하고 있다. 또한, 각 노드 장치는, 무선에 의해 접속되어 있어도 좋고, 유선에 의해 접속되어 있어도 상관없다. 가능하면, 무선과 유선이 혼재한 네트워크에 본 발명의 실시형태에 따른 장치 또는 프로그램을 적용할 수 있는 것도, 본 발명의 실시형태에서는 상정되어 있다.
도 3은 실시형태에 따른 노드 장치를 더 설명하기 위한, 보다 상세한 모식도이다. 또한 참조 번호에 단 접미사 "a"는, 동일한 번호의 구성 요소(element)와 같거나 또는 유사한 구성 요소를 가리키고 있는 것에 유의해야 한다. 또한 본 명세서에서는, 예컨대 어떤 장치 XXX와 장치 XXXa가 모두 실시형태에 포섭될 수 있다. 또한 참조 번호의 접미사를 생략하여, 접미사가 없는 것과 있는 것을 포괄하는 개념을 가리키는 경우도 있다. 예컨대 장치 XXX로 표기했을 때, 모순이 생기지 않는 한, 장치 XXXa도 포함하고 있는 것으로 해석된다.
도 3의 노드 장치(1a)는, 프레임 처리부(2a), 링크 관리부(3a), 라우팅 결정부(4a), FID 관리 테이블(5a), 인접 노드 관리 테이블(6a), 가중 테이블(7a), 수신부(10), 송신부(20)를 갖는다. 또한, FID 관리 테이블(5a), 인접 노드 관리 테이블(6a), 및 가중 테이블(7a)은 임의의 적절한 기억 장치에 저장할 수 있다. 그리고 그 기억 장치를 노드 장치(1a)의 내부에 수용할 수도 있고, 외부에 설치하는 것도 가능하다. 또한, 이러한 기억 장치는, 각 노드 장치마다 단일의 것이어도 좋고, 복수개 존재하여도 좋다.
전술한 LS에 대응하는 노드 장치(1a)가, 수신부(10)로써 프레임(데이터 프레임 및 헬로 프레임을 포함)을 수신하면, 프레임 분기 처리부(12)가 프레임의 종별을 식별하여, 그 종별에 따라 처리를 분기시킨다. 상세한 내용은 후술하지만, 프레임 분기 처리부(12)는, 프레임에 첨부된 그 프레임의 종별을 나타내기 위한 식별자를 이용할 수 있다.
수신된 프레임이 헬로 프레임이었던 경우에는, 프레임 분기 처리부(12)가, 프레임을 링크 관리부(3a)에 전달한다. 링크 관리부(3a)는, 인접 노드 관리 테이블(6a)을 저장한 기억 장치에 액세스하여, 인접하는 노드 장치의 사활 및 링크 강도를 관리한다. 그리고 링크 관리부(3a)는, 루프가 검출된 경우에, 가중 테이블(7a)을 저장한 기억 장치에 액세스하여, 가중값에 관한 정보를 등록 또는 갱신한다(상세한 내용은 후술함).
수신된 프레임이 데이터 프레임이었던 경우에는, 프레임 분기 처리부(12)가, 프레임을 프레임 처리부(2a)에 전달한다. 프레임 처리부(2a)는, FID 관리 테이블(5a)을 저장한 기억 장치에 액세스하여, FID, LD, 및 GS에 관한 정보를 관리한다. 그리고 프레임 처리부(2a)는 프레임을 라우팅 결정부(4a)에 전달한다. 또한 프레임 처리부(2a)는, 루프가 검출된 경우에는, 가중 테이블(7a)을 저장한 기억 장치에 액세스하여, 가중값에 관한 정보를 등록 또는 갱신한다(상세한 내용은 후술함).
라우팅 결정부(4a)는, 가중 테이블(7a)을 저장한 기억 장치에 액세스하여 가중값에 관한 정보를 얻은 뒤에, 프레임을 어느 노드 장치에 송신할지를 결정한다. 그리고, 송신부(20)에 프레임을 전달한다.
송신부(20)는 라우팅 결정부(4a)로부터 받은 프레임을 다른 노드 장치에 송신함에 있어서, 송신 처리부(22)로 하여금 FID 관리 테이블(5a)을 저장한 기억 장치에 액세스하여, FID와 LD 및 GS에 관한 정보를 등록·갱신한다.
본 발명의 실시형태에서는, 전술한 바와 같이, 인접 노드 장치 관리 테이블, FID(프레임 ID) 관리 테이블, 가중 테이블이라는 테이블을 사용한다. 우선, 인접 노드 장치 관리 테이블에 대한 설명을 행한다.
도 4는 인접 노드 관리 테이블(6 또는 6a)의 구조를 도시하는 도면이다. 인접 노드 관리 테이블(6 또는 6a)은, 노드 ID, 최종 갱신 시간 및 링크 강도를 포함한다.
노드 ID는 네트워크를 구축하는 노드 장치를 식별하기 위해 각 노드 장치에 할당된 식별 정보이다.
최종 갱신 시간은 각 노드 ID가 나타내는 노드 장치에 대해서, 마지막으로 정보가 갱신된 일시 정보이다. 구체적으로는 예컨대, 최종 갱신 시간으로서 링크 강도가 갱신된 일시 정보를 저장할 수 있다.
링크 강도는, 노드 장치(1 또는 1a)가, 인접하는 노드 장치로부터 수신한 헬로 프레임에 포함되는 링크 강도에 기초하여 산출되어, 적절한 기억 장치에 저장된다. 링크 강도는 예컨대, 전파 강도나 프레임 도달율을 이용하여 산출할 수 있다. 링크 강도는 예컨대, 쌍방향 링크 가중값에 대응하고 있다.
전술한 바와 같이, 우선, 사전에 네트워크를 구축하기 위해, 인접 노드 사이에서 통지용 프레임(헬로 프레임)이 교환된다. 그리고 도 2에 도시하는 인접 노드 관리 테이블(6) 또는 도 3에 도시하는 인접 노드 관리 테이블(6a), 및 도 2에 도시하는 가중 테이블(7) 또는 도 3에 도시하는 가중 테이블(7a)이, 각 노드 장치에서 작성된다. 도 1의 설명에서도 설명한 바와 같이, 본 실시형태에 따른 노드 장치(1)에 있어서는, 네트워크 토폴로지를 파악할 필요는 없다.
인접 노드 관리 테이블(6 또는 6a)이 작성되면, 인접 노드 관리 테이블(6 또는 6a)에 대응하는 정보가 저장되어 있는 인접 노드 중, 프레임을 전송해야 하는 노드 장치를 결정한다. 프레임을 전송해야 하는 노드 장치를 결정할 때에 참조되는 가중 테이블(7)은, 프레임을 인접 노드 장치로부터 수신한 후의 처리로써 갱신된다.
도 5 및 도 6은 프레임의 포맷예이다. 도 5에 도시하는 프레임은, 인접 노드의 수신 목적지 노드(Local Destination)에 대한 노드 ID(LD), 인접 노드의 송신원 노드(Local Source)에 대한 노드 ID(LS), 수신 목적지 노드(Global Destination)에 대한 노드 ID(GD), 송신원 노드(Global Source)에 대한 노드 ID(GS), 프레임 ID(FID), 프레임 타입(TYPE), 데이터 길이(DATALEN), 및 데이터 본체(DATA)를 포함한다.
LD에는 노드 장치(1)의 인접 노드 중, 프레임을 전송하는 수신 목적지 노드의 노드 ID가 저장된다.
LS에는 LD가 되는 인접 노드 장치에 프레임을 전송하는 송신원의 노드 장치의 노드 ID가 저장된다. 예컨대 LD가 노드 장치(1)에 인접하는 노드 장치 중 어느 하나의 노드 ID였다면, LS는 그 노드 장치(1)의 노드 ID가 된다.
GD에는 프레임 본래의 수신 목적지의 노드 ID가 저장되고, GS에는, 프레임 본래의 송신원의 노드 ID가 저장된다.
프레임 ID는 프레임을 식별하기 위한 식별 정보가 저장된다.
프레임 타입에는, 그 프레임의 종류를 나타내는 정보가 저장된다. 프레임의 종류로서는, 예컨대 데이터 프레임이나, 헬로 프레임 등이 있지만, 이들에 한정되지는 않는다.
데이터 길이에는, 데이터 본체의 길이(데이터 길이, 또는 프레임 사이즈라고도 지칭함)가 저장된다.
데이터 본체에는, 네트워크를 전파하는 대상인 데이터가 저장된다.
또한 여기에 나타낸 포맷은 어디까지나 일례인 것에 유의해야 한다. 본 발명의 별도의 실시형태에서는, 이것과는 상이한 포맷을 사용할 수도 있고, 그 별도의 실시형태는 본 발명의 범위에 포섭될 수 있다.
도 7은 어떤 실시형태에 따른, 인접 노드 관리 테이블(6 또는 6a)에 기초하는 프레임 전송 처리를 설명하는 도면이다. 이 중, 도 7의 (a)는 인접 노드 장치마다 가중값의 개요를 도시하는 도면이고, 도 7의 (b)는, 인접 노드 관리 테이블(6 또는 6a)의 간단한 예를 도시하는 도면이다.
이 실시형태에 따른 노드(1 또는 1a)는, 인접하는 노드 장치 중 어느 하나로부터 프레임을 수신하면, 프레임의 송신원 즉, LS인 노드 장치 이외 중, 가중값에 관한 정보를 감안하여 보다 우선도가 높은 노드 장치에, 그 프레임을 전송한다. 노드 장치(1 또는 1a)는, 인접 노드 장치의 각각에 대하여 링크 번호를 붙이고 있고, 이것에 의해 각 인접 노드 장치를 식별하고 있다.
또한, 이 실시형태에 있어서는, 가중값에 관한 정보(예컨대 쌍방향 링크 가중값 등)로서 이용하는 값을, 0 이상 1 이하의 범위로서 설정한다. 이 값이 작을수록, 우선도가 높은 것으로서 취급한다. 가중값에 관한 정보 초기값으로서 예컨대 0.5를 설정해 두고, 그 후의 프레임 전송의 여부나 루프 검출의 유무 등에 따라서 변경해 갈 수 있다.
가중값에 관한 정보의 설정 및 갱신은, 후술하는 가중값 조작 함수(예컨대 링크 강도를 고려한 함수)에 의해 행한다. 가중값 조작 함수는, 네트워크 전체의 동작에 영향을 주기 때문에, 네트워크의 용도에 따라 변경해야 할 것이다.
도 7의 (a)에 있어서는, 링크 번호 i의 인접 노드 장치로부터 프레임을 수신한 경우의, 가중값에 관한 정보에 의한 전송 목적지 노드 장치의 결정 방법을 도시하고 있다.
링크 번호 i의 인접 노드 장치로부터 전송된 프레임을 수신하면, 노드 장치(1 또는 1a)는, 보유하는 인접 노드 관리 테이블(6 또는 6a) 중, GD의 노드 장치에 대응하는 가중 테이블을 참조한다. 그리고, 가중값에 관한 정보를 근거로 가장 우선도가 높고, 링크 번호가 「i」 이외인 인접 노드 장치에 대하여, 수신한 프레임이 전송되게 된다.
도 7의 (b)에 도시하는 바와 같이, 인접 노드 관리 테이블(6 또는 6a)에서는, 인접 노드 장치마다 할당되는 링크 번호와, 링크 번호에 대응시킨 인접 노드 장치의 가중값을 저장한다. 또한, 링크 번호는 노드 ID로 대용하는 것도 가능하다. 노드 장치(1 또는 1a)는, 링크 번호 i의 인접 노드 장치로부터 수신한 프레임에 따라서, 인접 노드 관리 테이블(6 또는 6a)을 갱신하고, 가중값에 관한 정보를 조작한다.
도 8은 데이터의 전송 결과에 의해 가중값을 조작하는 처리를 설명하는 도면이다.
도 8에 도시하는 예에서는, 가중값에 관한 정보로서, 인접 노드 장치(A, B, C, D)에 대하여 각각, 링크 번호(1, 2, 3, 4) 및 가중값(w1, w2, w3, w4)을 설정한다.
또한, 예컨대 노드 장치 사이의 통신이 무선인 경우에는, 통신시에서의 환경이나 노드 장치 사이의 거리 등이 통신 품질에 영향을 미치는 경우가 있고, 노드 장치 사이의 통신이 유선인 경우에는, 예컨대 트래픽량이 통신 품질에 영향을 미치는 경우가 있다. 그 영향을 고려하여, 여기서는 가중값의 초기값을 0.5로 하고, 그 값의 범위를 0 이상 1 이하로 하고 있지만, 이것은 어디까지나 일례로서, 그 이외의 값을 취할 수 있는 가중값을 이용하는 실시형태를 상정할 수 있다. 또한, 이 실시형태에서는, 가중값이 작을(0에 가까울)수록 우선도가 높은 것으로 하고 있지만, 이것도 또한 일례이다. 그 이외의 우선도의 결정 방법(예컨대 가중값이 클수록 우선도가 높은 결정 방법)을 한 실시형태도 또한 상정되어 있다.
또한, 가중 테이블에는, 프레임을 전송할 때에 우선적으로 전송해야 하는 인접 노드 장치와, 그 이외의 노드 장치를 나타내는 정보를 저장하여도 좋다. 예컨대 플래그 등을 준비해 두고, 프레임 전송의 여부에 따라 값을 가중 테이블에 설정하는 것도 가능하다.
노드 장치(1 또는 1a)는, 지금까지 인접 노드 장치에 프레임을 전송한 결과에 따라 가중값에 관한 정보(예컨대, 쌍방향 링크 가중값)를 조작한다. 우선, 각 가중값의 대소 관계가 w1<w2<w3<w4인 것으로 한다. 즉, 인접 노드 장치 A에 대한 우선도가 가장 높고, 인접 노드 장치 D에 대한 우선도가 가장 낮은 것으로 가정한다.
이러한 경우에 노드 장치(1 또는 1a)가 프레임을 인접 노드 장치(A~D) 이외의 인접 노드 장치 i로부터 수신하면, 노드 장치(1 또는 1a)는, 가장 우선도가 높은 인접 노드 장치 A부터 순서대로 프레임을 전송하고자 한다. 인접 노드 장치 A에의 데이터 전송에 실패하면, 다음에 우선도가 높은 노드 장치 B에 데이터를 전송한다.
최종적으로, 인접 노드 장치 A 및 B 모두에 대해서도 데이터 전송이 실패하고, 인접 노드 장치 C에 대해서는 데이터 전송이 성공했다고 하면, 노드 장치(1 또는 1a)는, 인접 노드 장치 A, B에 대해서는 가중값을 최대(최악값)로 하고, 우선도를 최저로 설정한다. 그리고, 인접 노드 장치 C에 대한 가중값이 감소하여, 우선도가 높게 설정된다.
다음번 이후의 데이터 프레임 전송에 있어서는, 이와 같이 하여 갱신된 가중값의 관계(w3<w4<w1=w2)에 기초하여, 프레임 전송 목적지(LD)를 결정하고, 가장 우선도가 높은 인접 노드 장치 C부터 프레임의 전송을 시도하게 된다.
다음에, 루프의 발생을 검출하는 방법에 대해서 설명한다.
도 9는 FID 관리 테이블(5 또는 5a)의 구성의 일례를 도시하는 도면이다. 도 9에 도시한 실시형태에 있어서는, FID 관리 테이블(5 또는 5a)은 예컨대, FIFO(First In First Out)형 버퍼이다. FID 관리 테이블(5 또는 5a)에는, 프레임 ID(FID), 송신원 노드 GS의 노드 ID, 전송 목적지 노드 LD의 노드 ID, 및 송신원 노드 LS의 노드 ID가 포함된다. FID, GS/LD/LS의 노드 ID의 정의에 대해서는, 도 6에 도시하는 데이터 프레임의 각각 대응하는 필드와 같다.
노드 장치(1 또는 1a)는, 인접 노드 장치로부터 프레임을 수신하면, 프레임의 FID 및 GS의 필드의 값과, FID 관리 테이블(5 또는 5a)에 저장되어 있는 레코드를 비교한다. 비교한 결과, 수신한 프레임과 동일한 FID 및 GS를 갖는 레코드가 FID 관리 테이블(5)에 저장되어 있던 경우는, 노드 장치(1 또는 1a)는, 그 프레임이 과거에 한번 수신한 프레임과 동일한 프레임인 것으로 판단하여, 「루프가 발생했다」나, 「도중 경로의 차단에 의해 복귀가 발생했다」로 간주한다. 루프 또는 복귀의 발생이 검출된 경우에는, 가중 테이블(7 또는 7a)을 갱신하고, 그 프레임의 LS의 노드 ID에 대응하는 가중값에 관한 정보에, 최악값(이 실시형태에서는 최대의 값)을 설정한다.
한편, 동일한 FID 및 GS를 갖는 레코드가 존재하지 않은 경우에는, 노드 장치(1 또는 1a)가, 수신한 프레임으로부터 FID, GS, LD, 및 LS의 각 필드로부터 값을 취출하여, FID 관리 테이블(5)에 1레코드 등록한다.
계속해서, 노드 장치가 데이터 프레임을 수신했을 때에 행하는 처리에 관해서, 한층 더 상세히 설명해 간다.
도 10 및 도 11은 어떤 실시형태에 따른 노드 장치(1 또는 1a)의 데이터 프레임 수신시의 처리를 도시하는 흐름도이다.
우선, 단계 S1에서, 초기화 처리를 실행한다. 단계 S1의 초기화 처리에 있어서, 예컨대 무선으로 인접 노드 장치와 통신을 행하는 경우에는, 사용 주파수를 맞추는 처리나, 변조 방식을 결정하는 처리 등을 실행한다. 또한, 단계 S1의 초기화 처리는, 노드 장치(1 또는 1a)를 네트워크에 설치했을 때에만 실행된다.
단계 S2에서는, 데이터 프레임의 수신을 대기한다. 단계 S2에서, 데이터 프레임을 수신하면, 단계 S3으로 진행하여, LD의 필드에 저장되어 있는 노드 ID가 자장치의 노드 ID인지의 여부를 판정한다. LD에 자장치 이외의 노드 ID가 저장되어 있던 경우에는, 단계 S2에 복귀하여 계속 대기한다.
또한, 단계 S1의 처리와 단계 S2의 처리 사이에는, 전술한 바와 같이, 헬로 프레임에 의한 네트워크 구축 처리도 행해지고 있지만, 헬로 프레임의 송수신에 대해서는 도 10 및 도 11에 도시하는 처리와는 상이한 스레드에 의해 실행되기 때문에, 여기서는 설명을 생략한다.
단계 S3에서, LD의 필드에 자장치의 노드 ID가 저장되어 있는 것으로 판정되면, 단계 S4로 진행한다.
단계 S4에서는, GD의 필드에 저장되어 있는 노드 ID는, 자장치의 노드 ID인지의 여부를 판정한다. 단계 S4에 있어서, GD의 필드에, 자장치의 노드 ID가 저장되어 있는 것으로 판정된 경우는, 즉 네트워크에 걸친 일련의 데이터 전파의 종착점이 자노드 장치였다는 것이다. 따라서 흐름은 단계 S10으로 진행하여, 수신한 데이터 프레임을(상위층에서) 처리하고, 일련의 처리를 종료한다.
단계 S4에 있어서, GD의 필드에 저장되어 있는 노드 ID가, 자장치 이외의 노드 ID인 것으로 판정되면, 흐름은 단계 S5에 진행한다. 그리고, 단계 S5에서, FID 관리 테이블(5)에, 수신한 데이터 프레임의 FID 및 GS와 각각 일치하는 FID 및 GS의 조합을 갖는 레코드가, 존재하는지의 여부를 판정한다.
단계 S5에 있어서, FID 관리 테이블(5)에 데이터 프레임의 FID 및 GS와 일치하는 레코드가 존재한 것으로 판정되면, 흐름은 단계 S6으로 진행한다. 단계 S6에서는, FID 관리 테이블(5) 중, FID 및 GS가 모두 데이터 프레임의 FID 및 GS와 일치하는 것으로 판정된 레코드로부터, LD를 취출한다. 그리고, 단계 S7에서, 데이터 프레임의 GD에 대응하는 가중 테이블(7 또는 7a)에 대해서, 단계 S6에 있어서 취출한 LD와 일치하는 노드 ID를 갖는 레코드에 대해서 갱신을 행한다. 예컨대 이 실시형태에서는, 항 Last로서 FID 관리 테이블에서 마지막에 FID를 갖는 프레임을 송출한 노드 ID를 설정하고 있다. 그리고 이 항 Last에 대응하는 가중값에 관한 정보가, 우선도가 가장 낮은 최악값(예컨대 1.0)이 되도록 변경할 수 있다. 가중 테이블(7 또는 7a)을 갱신하면, 도 11의 기호 (A)로 진행한다.
한편, 단계 S5에 있어서, FID 관리 테이블(5)에 일치하는 FID 및 GS는 존재하지 않는 것으로 판정되면, 흐름은 단계 S8로 진행한다. 단계 S8에서는, 데이터 프레임의 GD에 대응하는 가중 테이블(7 또는 7a)이 존재하는지의 여부를 판정한다.
단계 S8에 있어서, 데이터 프레임의 GD가 나타내는 노드 장치에 대한 가중 테이블(7 또는 7a)이 존재하지 않는 것으로 판정되면, 흐름은 단계 S9로 진행한다. 그리고, 단계 S9에서는, 데이터 프레임의 GD에 대한 가중 테이블(7 또는 7a)을 작성하고, 그 후 흐름은 도 11의 기호 (A)로 진행한다.
또한 다른 실시형태에서는, 단계 S9로써, 예컨대 도 5에 도시하는 인접 노드 관리 테이블(6 또는 6a)의 링크 강도를 참조하여 가중 테이블을 작성하여도 좋다.
단계 S8에 있어서, 데이터 프레임의 GD가 나타내는 노드 장치에 대한 가중 테이블(7 또는 7a)이 존재하는 것으로 판정된 경우에는, 특별히 처리를 행하지 않고, 도 11의 기호 (A)로 진행한다.
도 11에 도시하는 처리에 있어서는, 우선 기호 (A)로부터 단계 S11로 진행하여, 가중 테이블(7 또는 7a)로부터 가장 우선도가 높은 평가값에 대응하는 노드 ID를 취득한다. 그리고 단계 S12에서, 취득한 노드 ID에 대응하는 적절한 노드 장치를 발견할 수 있는지의 여부를 판정한다.
단계 S12에 있어서, 적절한 노드 장치를 발견할 수 있었던 것으로 판정된 경우에는, 흐름은 단계 S13으로 진행하여, 단계 S11에서 취득한 노드 ID에 대하여 데이터 프레임을 전송한다.
그리고, 단계 S14에서는, 전송한 데이터 프레임에 포함되는 데이터에 기초하여, FID 관리 테이블(5)에 프레임의 FID 및 GS와, LD와, LS를 추가한다.
계속해서 단계 S15에서, 데이터 프레임의 전송이 성공했는지의 여부를 전송 목적지 노드 장치로부터의 응답에 의해 판단한다. 예컨대 전송 목적지 노드 장치로부터 ack 신호를 수신한 경우에는 전송이 성공한 것으로 판정하고, 미리 정해진 시간이 경과해도 ack 신호를 수신하지 않은 경우에는 실패한 것으로 판정하도록 할 수 있다. 성공한 것으로 판정된 경우에는, 단계 S16에서, 데이터 프레임의 GD가 나타내는 노드 장치에 대한 가중 테이블(7 또는 7a)에 대해서, 전송 목적지의 노드 장치에 대한 노드 ID에 대응하는 평가값을 조작하여 우선도를 높이고, 도 10의 기호 (B)로 복귀한다.
한편, 단계 S15에 있어서, 데이터 프레임의 전송이 실패한 것으로 판정된 경우에는, 단계 S17에서, 전송 목적지의 노드 장치에 대한 노드 ID에 대응하는 평가값을 조작하여 우선도를 낮추고, 단계 S11로 복귀한다.
이후에는, 데이터 프레임의 전송이 성공하거나, 가중 테이블에 적절한 노드 ID가 존재하지 않게 될 때까지, 단계 S11 이후의 처리를 반복한다.
단계 S12에 있어서, 가중 테이블(7 또는 7a)로부터 적절한 노드 장치(노드 ID)를 발견할 수 없는 것으로 판정된 경우에는, 단계 S18에 진행하여, 수신한 데이터 프레임을 LS가 나타내는 노드 장치에 전송하고, 도 10의 기호 (B)로 복귀한다.
이상 설명한 바와 같이, 본 실시형태에 따른 노드 장치(1 또는 1a)에 의하면, 데이터 프레임을 전송할 때에, 보유하는 가중 테이블(7 또는 7a)을 참조하여 우선적으로 데이터 전송해야 하는 노드 장치를 판단하고, 데이터 전송의 여부에 의해 가중값에 관한 정보(예컨대, 평가값)를 갱신한다. 가중값에 관한 정보에 따라 우선적으로 프레임을 전송해야 하는 노드 장치를 판단함으로써, 루프의 발생에 수반하는 데이터 프레임의 복귀나, 네트워크 상태의 변화에 의해 지금까지 통신 가능했던 경로가 차단되었을 때의 데이터 프레임의 복귀를 검출하고, 그것을 근거로 경로를 우회하여 최적 경로로 통신을 계속하는 것이 가능해진다. 또한 전술한 바와 같이, 가중 테이블(7 또는 7a)은 GD마다 작성될 수 있는 것이지만, 여기서는 어디까지나 일례로서, 알기 쉽게 하기 위해 하나의 가중 테이블만을 생각하고 있는 것에 유의해야 한다.
그런데, 도 1에 도시하는 통신 시스템에 있어서는, 각 노드 장치가 네트워크의 상태를 감시하고 있다. 이하, 본 실시형태에 따른 노드 장치에 의한 네트워크의 감시 방법에 대해서 설명한다.
전술한 바와 같이, 각 노드 장치는 헬로 프레임에 다른 노드 장치로부터 수신한 전파의 통신 품질에 관계된 정보를 포함하여 송신하고 있다. 노드 장치는, 다른 노드 장치로부터 수신한 헬로 프레임을 참조하여, 인접 노드 장치의 통신 품질을 산출하고, 도 5에 도시하는 인접 노드 관리 테이블(6 또는 6a)에 산출한 통신 품질에 관한 정보를 유지한다. 어떤 실시형태에 있어서는, 지연 및 홉 수에 의해 통신 품질을 결정한다.
도 12는 헬로 프레임 중 미리 정해진 영역에 저장되는 헬로 헤더의 포맷을 도시하는 도면이다. 도 12에 도시하는 바와 같이, 헬로 헤더는 글로벌 수신 목적지 어드레스(즉 GD), 홉 수(h), 경로 품질 가중값(d), 복로 품질 가중값, 및 노드 타입을 포함한다.
글로벌 수신 목적지 어드레스(GD)는 예컨대, 도 12에 도시하는 헬로 헤더를 포함하는 헬로 프레임의 최초의 송신원(GS)인 노드 장치가 갖는, 가중 테이블(7)에 대응하는 글로벌 수신 목적지 어드레스(GD)의 정보이다.
홉 수(h)는 예컨대, 이 헬로 프레임의 송신원으로부터 최종 목적지(GD)인 노드 장치까지의 홉 수의 정보이다.
경로 품질 가중값(d)은 GD까지의 경로상에서의 지연으로부터 구한 값이 저장된다.
복로 품질 가중값은 상대의 노드 장치(여기서는, 헬로 프레임을 송신한 노드 장치)로부터 자노드 장치에 이르는 방향의 통신 품질에 기초하여 구한 값이 저장된다.
노드 타입에는 게이트웨이, 중계기, 및 단말 등의 종류가 정의된다.
헬로 헤더에 저장되는 정보 중, 경로 품질 가중값(d)을 구하는 방법에 대해서, 도 13을 참조하여 더 구체적으로 설명해 간다.
도 13은 본 실시형태에 따른 노드 장치(1 또는 1a)에서, 지연에 의해 통신 품질을 계측하는 방법을 설명하는 개념도이다. 「발생원」의 노드 장치는, 정기적으로 헬로 프레임을 외부를 향해 송출하고 있다. 도 13중에 타원형으로 도시하고 있는 하프톤 부분은, 발생원 노드 장치가 송신하는 헬로 프레임을 수신할 수 있는 범위를 나타내고 있다. 노드 장치(a 및 b)는, 발생원의 노드 장치로부터 순차 송출되는 헬로 프레임을 수신하고, 하나의 프레임을 수신한 후 다음 프레임을 수신할 때까지 소요되는 시간을 계측한다. 이하, 다음 프레임을 수신할 때까지 소요되는 시간을, 「수신 주기」라고도 칭한다.
도 13에 있어서, 노드 장치(a 및 b)에서의 수신 주기와 수신 횟수와의 관계를 도면중의 그래프(종축은 출현 횟수, 횡축은 수신 간격)에 나타낸다. 도시하는 바와 같이, 각 노드 장치에서의 수신 주기와 수신 횟수와의 관계는, 일반적으로, 정규 분포가 된다.
그리고, 일반적으로, 발생원의 노드 장치로부터의 거리가 비교적 먼 노드 장치 b에서는, 프레임 손실이 발생하기 쉬워진다. 따라서, 노드 장치 b에서는, 노드 장치 a보다 프레임 손실에 의한 프레임의 수신 누락이 발생하기 쉬워지고, 다음의 프레임을 수신할 때까지의 시간이 길어지는 경향이 있다. 이것으로부터, 본 발명에 따른 어떤 실시형태에 있어서는, 수신 주기(T)가 큰 것을, 지연이 큰 것인 것으로 간주하여, 수신 주기(T)에 의해 통신 품질을 구하고 있다.
수신 주기에 의해 통신 품질을 구하는 방법을 설명한다. 우선, 어떤 시각(t)에 헬로 프레임을 수신하고, 다음에 시각이 t+t1에 헬로 프레임을 수신한 것으로 한다. 이 경우, 수신 주기 T=t1이다. 미리 정해진 기간에 관측된 수신 주기의 집합을 T{t1, t2, …, tn|n∈N}[ti(i=1, 2, …, n)은 각 시점에서의 관측값]로 한다. 이 경우의 관측된 수신 주기에 기초하는 표준 편차(l)는, 이하의 식 (1)로 나타낸다. 또한 식 중
Figure pct00001
는, 수신 주기의 관측값의 평균값이다.
Figure pct00002
(1)
상기 식 (1)에 의해 얻어지는 표준 편차를, 복로 링크 가중값으로 하여, 인접 노드 관리 테이블(6 또는 6a)의 미리 정해진 필드(도시 생략)에 저장한다. 또한, 식 (1)로 구한 복로 링크 가중값을, 헬로 프레임에 저장하여 상대의 노드 장치에 송신하면, 상대의 노드 장치는, 수신한 정보로부터 왕로 링크 가중값을 얻을 수 있다. 이와 같이, 서로 상대의 노드 장치로부터 수신한 헬로 프레임에 의해 자장치 내에서 복로 링크 가중값을 구하고, 구한 복로 링크 가중값을 이번에는 헬로 프레임에 포함시켜 상대의 노드 장치와 교환함으로써, 왕로 링크 가중값을 얻을 수 있는 것이다.
취득한 왕로 링크 가중값 및 복로 링크 가중값으로부터, 쌍방향 링크 가중값을 산출함에 있어서는, 상기 기술분야에서 적절하게 되는 여러 가지의 방법을 사용할 수 있다. 그 일례로서, 쌍방향 링크 가중값은, 이하의 식 (2)로 산출할 수 있다.
(쌍방향 링크 가중값)=
[{(왕로 링크 가중값)+1}{(복로 링크 가중값)+1}-1]1/2 (2)
도 14는 본 발명의 어떤 실시형태가 애드혹 네트워크에서 사용 가능한, 헬로 헤더를 포함한 헬로 프레임의 상세한 포맷을 상세히 설명하기 위한 도면이다. 또한, 본 발명의 별도의 실시형태에서는, 이것과는 상이한 포맷을 사용할 수 있고, 그 별도의 실시형태는 본 발명의 범위에 포섭될 수 있다.
도 14에 도시한 프레임은, 대략적으로는, 애드혹 헤더와, 압축 헤더와, 페이로드로 나눠진다.
이 실시형태에 있어서는, 애드혹 헤더는, "로컬 수신 목적지 어드레스"(LD)와, "로컬 차출 어드레스"(LS)와, 프레임의 종별을 나타내는 "프레임 타입"과, 압축 후의 프레임의 사이즈를 나타내는 "프레임 사이즈"라는 필드를 갖고 있다.
압축 헤더는, 페이로드의 압축 방법을 나타내는 "압축 타입"과, 압축 전의 프레임의 사이즈를 나타내는 "프레임 사이즈"라는 필드를 갖고 있다. 각 노드 장치는, 이 압축 타입을 고려하여, 적절히 페이로드를 신장시킬 수 있다.
또한, 페이로드에는, 헬로 메시지 헤더와, 1개 이상의 헬로 헤더와, 서명을 나타내는 해쉬가 압축되어 포함되어 있다. 또한, 이 실시형태에 따른 프레임으로 압축을 행하고 있는 것은 프레임의 사이즈를 경감하여 통신 대역을 절약한다는 효과를 얻기 때문이다. 물론, 압축을 하지 않고 데이터를 갖는 프레임도 또한, 본 발명의 다른 실시형태에 포섭되어 있다.
페이로드에 포함되는 헬로 메시지 헤더에는, 서비스의 종별을 나타내는 "서비스 타입"과, 페이로드 내의 분할 상황을 나타내는 "분할 정보"와, 페이로드가 포함하는 헬로 헤더의 개수를 나타내는 "헬로 헤더 수"와, 노드 장치의 ID를 나타내는 "장치 ID"와, 암호화된 정보를 복호화하기 위한 "액세스키"라는 필드가 포함된다. 또한 이 "장치 ID"라는 필드에는, 도 22에 관련하여 후술하는 헬로 요구의 송신원인 노드 장치의 ID를 저장할 수 있다.
그리고 페이로드에 포함되는 1개 이상의 헬로 헤더는, "글로벌 차출 어드레스"(GS)와, 게이트웨이(GW)의 정보에 대한 홉 수를 나타내는 "GW 정보 홉 수"와, 전술한 "경로 품질 가중값"(d) 및 "복로 품질 가중값"이라는 필드를 포함하고 있다.
또한 앞서 설명한 필드의 종류 및 순서은 어디까지나 예에 불과하다. 본 발명의 다른 실시형태에 있어서는, 전술한 필드와 그 이외의 당업자가 적절한 것으로 생각하는 임의의 필드를, 임의의 적절한 순서로 각 헤더 내에 배치할 수 있다.
도 15는 가중 테이블(7 또는 7a)의 구조를 더 상세히 설명하는 도면이다. 도 15에 도시하는 가중 테이블(7 또는 7a)은, 글로벌 수신 목적지 어드레스(GD), 로컬 수신 목적지 어드레스(LD), 홉 수(h), 링크간 도달 가중값(w), 경로 품질 가중값(d), 및 평가값(E)을 포함한다. 또한 도 15에는 도시하고 있지 않지만, 가중 테이블(7 또는 7a)은 이 외의 정보를 포함하여도 좋고, 예컨대 데이터를 갱신한 시간 정보를 나타내는 최종 갱신 시간의 데이터를 포함하여도 좋다. 전술한 바와 같이, 이러한 가중 테이블은, 각각의 노드 장치가 갖는 것이다.
글로벌 수신 목적지 어드레스(GD)에는, 수신한 헬로 프레임(여기서는, 노드 장치를 기동한 후, 도 16~도 21에 관련시켜 후술하는 헬로 프레임 수신 처리가 복수회 행해진 것으로서, 그 어느 하나의 수신 처리에 있어서 수신한 헬로 프레임이라는 의미로서 해석되어야 한다)의 헬로 헤더 내의 글로벌 수신 목적지 어드레스(GD)의 필드에 나타나는 데이터가 저장된다.
로컬 수신 목적지 어드레스(LD)에는, 수신한 헬로 프레임에 포함되어 있는 로컬 차출 어드레스(LS)에 나타나는 데이터가 저장된다. 즉, 이 헬로 프레임을 수신한 노드 장치를 주체로 하여 생각했을 때, 수신한 헬로 프레임의 LS가, 다음에 별도의 프레임을 송신할 때의 LD 후보가 된다는 것이다.
홉 수(h)는 이 가중 테이블을 갖는 노드 장치로부터 GD까지의 홉 수가 저장되는 데이터이다. 즉, 수신한 헬로 프레임의 헬로 헤더 내의 홉 수에 나타나는 값에 1을 가산한 값이 저장된다.
노드 타입은 노드의 종류를 정의하는 데이터로서, 수신한 헬로 프레임의 헬로 헤더 내의 노드 타입에 나타나는 데이터가 저장된다.
링크간 도달 가중값(w)은, 데이터 프레임의 링크 사이에서의 전송의 여부를 수치화한 것이다. 이 실시형태에서는, 링크간 도달 가중값(w)으로서, 수신한 헬로 프레임의 헬로 헤더 내의 복로 품질 가중값에 기초하여 산출된 데이터가 저장된다.
경로 품질 가중값(d)은, 도 12 및 도 13을 참조하여 설명한 바와 같이, 헬로 프레임의 수신 주기의 분산에 기초하여 산출되는 값이다.
평가값(E)은 수신한 헬로 프레임의 헬로 헤더 내의 상기 홉 수(h), 링크간 도달 가중값(w), 및 경로 품질 가중값(d)을 이용하여 산출한, 종합적인 경로 평가 정보가 저장된다.
본 기술분야에서는, 홉 수(h)가 늘어남에 따라 지수 함수적으로 통신 불안 정도가 높아지는(작업 처리량이 저하되는) 것이 경험적으로 알려져 있다. 이것을 근거로, 예컨대 평가값(E)을 이하의 식 (3)으로 나타낼 수 있다.
Figure pct00003
(3)
전술한 식 (3)을 이용하는 것 이외에도, 적절히 평가값(E)을 도출하는 방법을 이용하여도 좋고, 그러한 방법은 본 발명의 실시형태군에 포섭될 수 있다. 본 발명의 다른 실시형태에 있어서는, 홉 수(h), 경로 품질 가중값(d), 링크간 도달 가중값(w), 수신 신호 강도, 또는 그 외의 상기 기술분야로서 적절한 것으로 생각되는 임의의 파라미터 중 적어도 일종을 사용하여, 적절히 평가값(E)을 도출할 수 있다. 예컨대 E=d+h+5w+20/r이라는 식을 사용하여 평가값(E)을 산출하여도 좋다[여기서 d는 경로 품질 가중값, h는 홉 수, w는 링크간 도달 가중값, r은 최신의 헬로 프레임을 수신했을 때의 수신 신호(전력) 강도임].
또한, 상기 링크간 도달 가중값(w)을 정의하여, 데이터 전송이 실패한 경우에는 w=w+1, 성공한 경우에는 w=w-1(예컨대 0를 최소값으로 함)로 하고, w를 상기 식 (3)과 같이 함으로써, 데이터 전송시의 인접 노드 미세 조정을 할 수 있다.
이와 같이, 본 실시형태에 따른 노드 장치(1 또는 1a)는, 다른 노드 장치로부터의 헬로 프레임의 수신 상황에 기초하여, 네트워크의 상태를 감시할 수 있다.
도 16 내지 도 21은, 본 발명의 실시형태에 따른 노드 장치의 헬로 프레임 수신시의 처리를 도시한 상세한 흐름도이다. 이하, 이들의 도면에 걸쳐 흐름을 설명해 간다. 이하에 본 발명의 실시형태에 따른 노드 장치의 처리를 대략적으로 진술한다.
(i) 단계 S1600 내지 S1614에 있어서, 인접 노드 관리 테이블을 갱신한다.
(ii) 단계 S1700 내지 S1710'에 있어서, 헬로 프레임의 헬로 헤더를 이용하여 헬로 헤더의 GD마다, 자노드 장치가 갖는 가중 테이블에 등록되어 있는 헬로 프레임의 송신원(LS)의 평가값을 갱신한다.
(iii) 단계 S1850 내지 S1700'에 있어서, GD가 헬로 송신원(LS)인 자노드 장치가 갖는 가중 테이블의 평가값을 갱신한다.
(iv) 단계 S2000 내지 S2010'에 있어서, 자노드 장치가 갖는 가중 테이블에 헬로 프레임의 송신원(LS)이 등록되어 있지 않은 경우에 새롭게 등록하고, 자노드 장치가 갖는 가중 테이블에 헬로 헤더의 GD가 등록되어 있지 않는 경우에 새롭게 등록한다.
이 실시형태에 따른 흐름은 우선, 도 16에서, 시점을 두는 노드 장치(자노드 장치)에 헬로 프레임이 수신된 곳부터 시작된다.
단계 S1600 내지 S1614에 있어서, 헬로(HELLO) 프레임의 송신원(LS)에 대응하는 인접 노드 관리 테이블의 레코드에서의 가중값에 관한 정보를 갱신한다.
단계 S1600에서는, 헬로 프레임을 수용한 노드 장치가, 그 노드 장치가 갖는 인접 노드 관리 테이블 중에 헬로 프레임의 송신원(LS)의 노드 장치에 해당하는 레코드가 존재하는지를 확인하기 위해 검색을 행한다. 이 검색에 있어서는, 이 LS로부터의 전(前)회의 헬로 프레임 수신 시각 및 이번 헬로 프레임 수신 시각을 비교한다. 이렇게 함으로써, 수신 시각의 역전이 일어나지 않는지를 확인하여 LS의 "스푸핑"(즉, LS를 속여 보내는 프레임)이 없는지를 판단하는 것도 가능해진다.
단계 S1602에서, 검색에 의해 헬로 프레임의 송신원(LS)이 인접 노드 관리 테이블 내에 없는 것을 알았으면, 흐름은 단계 S1604로 진행한다. 그리고, 인접 노드 관리 테이블에 LS를 신규로 추가하고, 복로 링크 가중값의 초기값을 설정한다. 단계 S1602에서, 검색에 의해 헬로 프레임의 송신원(LS)이 인접 노드 관리 테이블 내에 있는 것을 알았으면, 흐름은 단계 S1606으로 진행한다. 그리고, 인접 노드 관리 테이블 중에서의 LS에 해당하는 레코드로써, 복로 링크 가중값의 값을 갱신한다.
그 후의 단계 S1608에서는, 헬로 프레임 내의 헬로 헤더에, 자노드 장치의 정보(ID 등)가 포함되어 있는지를 검색한다. 이 때에, LS가 갖는 노드 사이의 링크 품질 정보(즉, LS로부터의 복로 링크 가중값)를 참조한다. 그리고 단계 S1610에서 자노드 장치의 정보가 존재하는 것을 안 경우에, 흐름은 단계 S1612로 진행하여, 인접 노드 장치에 관한 왕로 링크 가중값을 계산한다.
그 후의 단계 S1614에서는, 인접 노드 장치에 관한 쌍방향 링크 가중값을 산출한다. 그리고 도 17의 기호 (I)로 진행한다.
도 17의 단계 S1700에서는, 우선 자노드 장치가 갖는 가중 테이블의 레코드 1개마다에 대한 반복 처리(루프 처리)를 시작한다. 그리고 단계 S1710에서 또한, 헬로 프레임에 포함되는 헬로 헤더 1개마다 반복 처리를 네스팅한다.
단계 S1712에서는, 가중 테이블의 GD와, 헬로 프레임 내의 헬로 헤더의 GD[즉, 원래는 헬로 프레임의 송신원(LS)이 갖는 가중 테이블에 포함되어 있었던 것]가 일치하는지를 판정한다.
단계 S1714에서 가중 테이블의 GD와 헬로 헤더의 GD가 일치하지 않으면, 흐름은 도 17의 기호 (IV)로 건너뛰어, 단계 S1710'에서 하나의 반복 사이클을 끝낸다. 단계 S1714에서 가중 테이블의 GD와 헬로 헤더의 GD가 일치한다면, 흐름은 단계 S1716으로 진행한다.
단계 S1716에서는, 헬로 프레임의 송신원(LS)에 대응하는 가중 테이블에, 자노드 장치가 프레임을 보내는 수신 목적지가 되는 LD 후보가 존재하는지를 검색한다.
단계 S1718에서, 수신 목적지가 되는 LD 후보(수신 목적지 LD 후보)가 존재했다면, 단계 S1720에서 가중 테이블 중 수신 목적지 LD 후보에 대한 레코드로, 홉 수(h)를, 헬로 헤더의 홉 수+1로 하여 갱신한다. 그리고 단계 S1722에서, 이 헬로 프레임에 관한 경로 품질 가중값(d)을 산출하여, 수신 목적지 LD 후보에 관한 경로 품질 가중값(d)을 갱신한다. 또한 여기서 말하는 헬로 프레임에 관한 경로 품질 가중값(d)이란 예컨대, 헬로 프레임의 송신원으로부터 관찰된 경로 품질 가중값과, 헬로 프레임의 수신 주기의 분산으로부터 얻어지는 복로 품질 가중값으로부터 산출되는 경로 전체(또는 경로 전체의 적어도 일부분)에서의 쌍방향 링크 가중값을, 가산 또는 어떠한 연산을 실시한 값이, 즉 경로 품질 가중값이 된다. 이것은 요컨대, 어떤 노드 장치에 있어서, 수신한 헬로 프레임에 관한 경로 품질 가중값(d)이, 가중 테이블의 경로 품질 가중값(d)에 가해지고, 그렇게 하여 얻어진 갱신된 경로 품질 가중값(d)이, 이번에 송신되는 헬로 프레임에 수용된 경로 품질 가중값이 되어, 다음 노드 장치에 송신된다는 것이다. 단적으로 말하면, 헬로 헤더마다의 쌍방향 링크 가중값의 적산이, 가중 테이블의 경로 품질 가중값(d)이 되는 것으로 생각하여도 좋다. 이 실시형태에 있어서는, 일련의 반복 처리 S1710~S1710' 또는 반복 처리 S1700~S1700' 사이에 얻어지는 각각의 쌍방향 링크 가중값을 적산하여, 반복 처리의 대상이 되어 있던 가중 테이블의 경로 품질 가중값(d)을 산출할 수 있다. 그리고 그 후에 도 18의 기호 (II)로 흐름을 진행시킨다.
단계 S1824에서는, 수신 목적지 LD 후보에 관한 수신 전력(또한, 도 15에서는 수신 전력에 대한 필드는 생략)을, 이 헬로 프레임을 수신했을 때의 수신 전력으로 하여 갱신한다. 단계 S1826에서는, 이 헬로 프레임에 관한 평가값(E)을 전술한 바와 같이 산출하여, 수신 목적지 LD 후보에 관한 평가값(E)을 갱신한다. 그 후에 단계 S1828에서, 수신 목적지 LD 후보에 관한 에이징 카운터(가중 테이블의 유효 기간을 설정하기 위한 수단)를 리셋한다. 그리고 흐름은 단계 S1840에 진행하여, 수신 목적지 LD 후보를 평가값의 순으로 정렬하고, 우선도적으로 바람직한 후보를 좁힐 수 있다. 그리고 단계 S1710'에서 하나의 반복 사이클이 완료된다.
한편, 단계 S1718에서, 수신 목적지가 되는 LD 후보가 존재하지 않은 경우에는, 우선 그 헬로 프레임의 송신원(LS)을, 가중 테이블에 수신 목적지가 되는 LD 후보로서 신규 등록을 하고, 흐름은 단계 S1730으로 진행한다. 단계 S1730에서 그 새로운 수신 목적지 LD 후보에 대한 레코드로, 홉 수(h)를, 헬로 헤더의 홉 수+1로 하여 갱신한다. 그리고 단계 S1732에서, 이 헬로 프레임에 관한 경로 품질 가중값(d)을 산출하여, 수신 목적지 LD 후보에 관한 경로 품질 가중값(d)을 갱신한다. 그 후에 도 18의 기호 (III)으로 흐름을 진행시킨다. 단계 S1834에서는, 수신 목적지 LD 후보에 관한 수신 전력을, 이 헬로 프레임을 수신했을 때의 수신 전력으로 하여 갱신한다. 단계 S1836에서는, 이 헬로 프레임에 관한 평가값(E)을 전술한 바와 같이 산출하여, 수신 목적지 LD 후보에 관한 평가값(E)을 갱신한다. 그 후에 단계 S1838에서, 수신 목적지 LD 후보에 관한 에이징 카운터를 리셋한다. 그리고 흐름은 단계 S1840으로 진행하여, 수신 목적지 LD 후보를 평가값의 순으로 정렬하고, 단계 S1710'에서 하나의 반복 사이클이 완료된다.
반복 처리 S1710~S1710'가 거의 완료되었을 때, 흐름은 단계 S1850으로 진행한다.
단계 S1850에서는, 반복 처리 S1710~S1710'에서의 처리로써 헬로 헤더를 이용한 수신 목적지 LD 후보의 갱신이 있었는지, 즉 단계 S1714부터 S1716까지 한번이라도 진행했는지를 확인한다. 갱신이 있었던 경우에는, 흐름은 도 19의 기호 (VII)로 건너뛰어, 단계 S1700'에서 하나의 반복 사이클을 마친다. 갱신이 없는 경우에는, 흐름은 단계 S1852로 진행한다. 단계 S1852에서는, 헬로 프레임의 송신원인 노드 장치(LS)에 대응하는 값이, (도 15에 도시한 바와 같은) 가중 테이블의 GD에 대응하는지를 판정한다. 이 실시형태에서는 이와 같이 하여, 라우팅을 평가하고 있다.
헬로 프레임의 송신원인 노드 장치(LS)가, 가중 테이블의 GD와 일치하지 않은 경우에는, 흐름은 도 19의 기호 (VI)로 건너뛰어, 단계 S1930에서 수신 목적지 LD 후보를 평가값순으로 정렬한다. 그리고 단계 S1700'으로써 하나의 반복 사이클을 마친다.
헬로 프레임의 송신원인 노드 장치(LS)가, 가중 테이블의 GD와 일치한 경우에는, 흐름은 단계 S1854로 진행한다. 그리고, 헬로 프레임의 송신원(LS)에 대응하는 가중 테이블에, 인접 노드의 후보가 존재하는지를 검색한다. 그리고 도 19의 기호 (V)를 사이에 두고 단계 S1900에서, 수신 목적지 LD 후보가 있는 경우에는 흐름은 단계 S1910으로 진행한다. 단계 S1910에서는, 이 헬로 프레임에 관한 경로 품질 가중값(d)을 계산하여, 그 수신 목적지 LD 후보에 관한 경로 품질 가중값(d)을 갱신한다. 단계 S1912에서는, 수신 목적지 LD 후보에 관한 수신 전력을, 이 헬로 프레임을 수신했을 때의 수신 전력으로 하여 갱신한다. 단계 S1914에서, 이 헬로 프레임에 관한 평가값(E)을 전술한 바와 같이 산출하여, 수신 목적지 LD 후보에 관한 평가값(E)을 갱신한다. 그 후에 단계 S1916에서, 수신 목적지 LD 후보에 관한 에이징 카운터를 리셋한다. 또한 지폭(紙幅)의 관계에 있어서 생략했지만, 수신 목적지 LD 후보가 복수 존재하는 경우에는 단계 S1910 내지 단계 S1916을 그 개수만큼 반복할 수도 있다. 그리고 흐름은 단계 S1930으로 진행하여, 수신 목적지 LD 후보를 평가값의 순으로 정렬하고, 단계 S1700'로써 하나의 반복 사이클이 완료된다.
한편, 단계 S1900에서 수신 목적지 LD 후보가 없는 경우에 흐름은 단계 S1920으로 진행한다. 단계 S1920에서는, 새로운 수신 목적지 LD 후보의 홉 수를 초기값(여기서는 1)으로 설정한다. 단계 S1922에서는, 수신 목적지 LD 후보의 링크간 도달 가중값(w)에 초기값(예컨대 0.5)을 설정한다. 단계 S1924에서는, 이 헬로 프레임에 관한 경로 품질 가중값(d)을 계산하여, 그 수신 목적지 LD 후보에 관한 경로 품질 가중값(d)을 갱신한다. 단계 S1926에서는, 수신 목적지 LD 후보에 관한 수신 전력을, 이 헬로 프레임을 수신했을 때의 수신 전력으로 하여 갱신한다. 단계 S1928에서는, 이 헬로 프레임에 관한 평가값(E)을 전술한 바와 같이 산출하여, 수신 목적지 LD 후보에 관한 평가값(E)을 갱신한다. 그 후에 단계 S1929에서, 수신 목적지 LD 후보에 관한 에이징 카운터를 리셋한다. 그리고 흐름은 단계 S1930으로 진행하여, 수신 목적지 LD 후보를 평가값의 순으로 정렬하고, 단계 S1700'에서 하나의 반복 사이클이 완료된다.
반복 처리 S1700~S1700'이 거의 완료되었을 때, 흐름은 기호 (VIII)를 사이에 두고 도 20의 단계 S2000으로 진행한다.
단계 S2000에서는, 헬로 프레임의 송신원인 노드 장치(LS)에 대응하는(그 LS가 GD로 되어 있는) 엔트리가, 자노드 장치가 갖는 가중 테이블(군) 중에 존재하는지를 확인한다. 가중 테이블에 해당 엔트리가 존재한 경우에는, 흐름은 단계 S2010으로 건너뛴다. 가중 테이블에 해당 엔트리가 존재하지 않은 경우에는, 흐름은 단계 S2001로 진행한다.
단계 S2001에서는, 그 LS를 GD로 한 새로운 가중 테이블을 작성한다. 단계 S2002에서는, 새로운 수신 목적지 LD 후보의 홉 수를 초기값(여기서는 1)으로 설정한다. 단계 S2003에서는, 수신 목적지 LD 후보의 링크간 도달 가중값(w)에 초기값(예컨대 0.5)을 설정한다. 단계 S2004에서는, 이 헬로 프레임에 관한 경로 품질 가중값(d)을 계산하여, 그 수신 목적지 LD 후보에 관한 경로 품질 가중값(d)을 갱신한다. 단계 S2005에서는, 수신 목적지 LD 후보에 관한 수신 전력을, 이 헬로 프레임을 수신했을 때의 수신 전력으로 하여 갱신한다. 단계 S2006에서는, 이 헬로 프레임에 관한 평가값(E)을 전술한 바와 같이 산출하여, 수신 목적지 LD 후보에 관한 평가값(E)을 갱신한다. 그 후에 단계 S2007에서, 수신 목적지 LD 후보에 관한 에이징 카운터를 리셋한다. 그 후에 흐름은 단계 S2010으로 진행한다.
단계 S2010에서는, 헬로 프레임에 포함되는 헬로 헤더 1개마다 반복 처리를 시작한다.
기호 (IX)를 사이에 두고 도 21의 단계 S2100에서는, 헬로 헤더의 GD가, 자노드 장치가 갖는 가중 테이블에 존재하는지를 확인한다. 가중 테이블에 해당 엔트리가 존재한 경우에는, 흐름은 단계 S2010'로 건너뛰어, 하나의 반복 사이클이 완료된다. 가중 테이블에 해당 엔트리가 존재하지 않은 경우에는, 흐름은 단계 S2101로 진행한다.
단계 S2101에서는, 그 헬로 헤더의 GD에 대응한 새로운 가중 테이블을 작성하고, 그 테이블에, 헬로 프레임이 갖는 애드혹 헤더의 LS를 필드 LD의 값으로서 갖는 엔트리를 작성한다. 단계 S2102에서는, 새로운 수신 목적지 LD 후보의 홉 수(h)를, 헬로 헤더의 홉 수+1로서 설정한다. 단계 S2103에서는, 수신 목적지 LD 후보의 링크간 도달 가중값(w)에 초기값(예컨대 0.5)을 설정한다. 단계 S2104에서는, 이 헬로 헤더에 관한 경로 품질 가중값(d)을 사용하고 경로 품질 가중값(d)을 재계산하여, 그 수신 목적지 LD 후보에 관한 경로 품질 가중값(d)을 초기화한다. 단계 S2105에서는, 수신 목적지 LD 후보에 관한 수신 전력을, 이 헬로 프레임을 수신했을 때의 수신 전력으로 하여 갱신한다. 단계 S2106에서는, 이 헬로 헤더에 관한 평가값(E)을 산출하여, 수신 목적지 LD 후보에 관한 평가값(E)을 갱신한다. 그 후에 단계 S2107에서, 수신 목적지 LD 후보에 관한 에이징 카운터를 리셋한다. 그 후에 흐름은 단계 S2010'로 진행하고, 하나의 반복 사이클이 완료된다.
그리고 반복 처리 S2010~S2010'가 거의 완료되면, 일련의 흐름은 종료한다.
도 22는, 헬로 프레임의 교환 시퀀스를 도시하는 도면이다. 각 노드 장치는, 헬로 프레임을 인근의 노드 장치를 향해 브로드캐스트 송신한다. 헬로 프레임에는, 각 노드까지의 경로 중에서 최적으로 판정된 링크 정보가 포함되어 있다. 각 노드 장치는, 헬로 프레임을 수신하면, 보유하는 인접 노드 관리 테이블(6 또는 6a) 및 가중 테이블(7 또는 7a)과 비교하여, 각 노드 장치에 대한 가중값에 관한 정보를 작성 및 갱신해 간다. 또한, 인접 노드 관리 테이블(6 또는 6a)을 참조하여, 헬로 프레임의 링크 정보를 갱신한다. 이 동작을 각 노드 장치가 복수회 반복함으로써, 노드 장치는, 다른 노드 장치 각각까지의 라우팅을 가능하게 하는 링크 목적지 정보를 복수개 갖는 것이 가능해진다.
어떤 실시형태에 있어서는, 노드 장치(1 또는 1a)가, 특정한 노드 장치로부터 지금까지 수신되고 있던 헬로 프레임을 미리 정해진 기간 내(예컨대, 30분 이내)에 수신할 수 없게 된 경우에, 그 특정한 노드 장치를, 통신 불능 상태에 있는 것으로 간주하여, 그 취지를 게이트웨이 장치에 통지할 수 있다. 또한, 수신한 헬로 프레임의 내용으로부터 판단한 후에, 이상이 검출되면 그 취지를 게이트웨이 장치에 통지할 수도 있다. 더 나아가서는 인접 노드 관리 테이블(6 또는 6a)을 참조하여, 어떤 노드 장치에 대해서 이상이 검출된 경우에는, 상기 가중 테이블(7 또는 7a)이 대응하는 가중값을 갱신하고, 그 노드 장치에 대한 우선도를 낮게 하여도 좋다.
또한 어떤 실시형태에서는, 도 22에 도시하는 바와 같이, 게이트웨이 장치와의 사이에서 헬로 프레임을 송수신함으로써, 게이트웨이 장치의 사활 감시를 행할 수도 있다.
노드 장치 사이에서의 상태 감시에 대해서는, 미리 정해진 시간 내에 상대의 노드 장치로부터 헬로 프레임을 수신하지 않는 경우에는, 상대의 노드 장치에 대하여 헬로 프레임 발생 요구를 송신하고, 상대의 노드 장치로부터 헬로 프레임을 수신하는지의 여부에 의해, 상대의 노드 장치의 상태를 감시하는 구조를 취해도 좋다.
어떤 실시형태에서는, 전술한 바와 같이 하여 각 노드 장치에서 네트워크를 감시하고, 헬로 프레임에 그 헬로 프레임이 통과한 경로상의 노드 장치에 대한 정보를 부가해 가며, 서버로 집계함으로써, 네트워크를 더 감시할 수 있다.
본 발명의 실시형태에 따라서, 헬로 프레임을 이용하여 각 노드 장치가 네트워크를 감시함으로써, 네트워크 감시용 프레임을 별도 유통시킬 필요가 없고, 유통 프레임 수를 억제할 수 있다. 또한, 인접 노드 장치로 송수신하는 헬로 프레임을 이용하여 네트워크 감시를 행하는 것에 의해, 센터에서 네트워크 감시용 프레임을 송신하여 그 응답에 의해 상태를 감시하는 경우와 비교하여, 턴어라운드를 작게 억제한 실시간에 가까운 감시가 가능해진다.
도 23은, 본 발명의 실시형태에 따른 노드 장치 또는 프로그램을 실시할 수 있는 하드웨어를 도시하는 개요도이다.
도 23에는 우선, 각종 계산 처리를 담당하는 마이크로프로세서유닛(MPU) (2300)이 도시되어 있다. 마이크로프로세서유닛(2300)은, 유선 물리층 처리부(PHY)(2312)와 MII(Media Independent Interface)/MDIO(Management Data Input/Output) 인터페이스(2310)를 통해 통신 가능하게 접속되어 있다(또한 "MII/MDIO"란, 「MII 또는 MDIO」를 의미함). MII와 MDIO는 모두, 물리층과 MAC 부층(Media Access Control sublayer) 사이의 인터페이스이다. 또한 마이크로프로세서(2300)는, 시각의 계측 등을 담당하는 타이머 IC(2322)와, I2C(Inter-Integrated Circuit)/PIO(Parallel Input/Output) 버스(2320)를 통해 통신 가능하게 접속되어 있다(또한 "I2C/PIO"란, 「I2C 또는 PIO」를 의미함). 추가로 마이크로프로세서(2300)는, 기억 수단인 동적 랜덤 액세스 메모리(DRAM)(2332) 및 플래시 메모리(2334), 및 네트워크 인터페이스인 무선 LAN 처리부(2336)와, PCI(Peripheral Component Interconnect) 버스(2330)를 통해 통신 가능하게 접속되어 있다. 물론, 상기 기술분야의 상식에 비춰, 여기에 예시한 규격·종류 이외의 장치를 적절하게 사용하여도 상관없다.
MPU(2300)는 비휘발성 기억 장치의 일종인 플래시 메모리(2334)상에 저장된 펌웨어 등의 여러 가지의 프로그램을, DRAM(2332)상에 로드하여 실행함으로써, 여러 가지 처리를 실행할 수 있다. MPU(2300)는 예컨대, 전술한 각종 처리를 노드 장치(1)에 실행시키기 위한 펌웨어 프로그램 등, 여러 가지의 프로그램을 실행할 수 있다.
또한, DRAM(2332)은 프레임의 송신 버퍼 및 수신 버퍼로서도 사용할 수 있다. 플래시 메모리(2334)는, 전술한 바와 같이 펌웨어 프로그램 등을 저장할 수 있다. 또한, 플래시 메모리(2334)에는, 노드 장치(1 또는 1a) 자신에게 고유한 정보(예컨대, 노드 ID나 MAC 어드레스)도 저장할 수 있다.
유선 PHY 처리부(2312)는, 유선 접속에서의 물리층을 처리하는 회로이다. 또한 무선 LAN 처리부(2336)는 무선 LAN 접속에서의 물리층을 처리하는 하드웨어이다. 무선 LAN 처리부(2336)는, 예컨대 안테나, ADC(Analog-to-Digital Converter), DAC(Digital-to-Analog Converter), 변조기, 복조기 등을 포함할 수 있고, 물리층과 MAC 부층을 처리한다. 따라서, 본 실시형태에서는, 노드 장치(1 또는 1a)가, 유선 통신과 무선 통신 양쪽 모두를 행할 수 있다. 물론 노드 장치(1 또는 1a)가, 유선 통신 또는 무선 통신의 한쪽만을 행하는 실시형태도 가능하다.
타이머 IC(2322)는, 설정된 시간이 경과할 때까지 카운트업 동작을 행하고, 설정된 시간이 경과하면 인터럽트 신호를 출력하는 회로이다.
또한, 전술한 실시형태에서는, 노드 장치에 대해서 주로 설명했지만, 상기한 방법을 컴퓨터에 실행시키는 제어 프로그램도, 본 발명의 실시형태의 일례에 포함된다. 상기 제어 프로그램은, 자기 디스크, 광자기 디스크, 비휘발성의 반도체 메모리, 광디스크 등의, 컴퓨터 판독 가능한 기억 매체에 저장되어 제공되고, 컴퓨터에 로드되며, 컴퓨터에 의해 실행되어도 좋다.
상기 제어 프로그램을 실행하는 컴퓨터는, 도시하지 않는 노드 장치에 내장 또는 접속되고, 상기 도시하지 않는 노드 장치가 상기 실시형태의 노드 장치(1 또는 1a)와 마찬가지로 동작하도록, 상기 제어 프로그램에 따라 상기 도시하지 않는 노드 장치를 제어한다. 예컨대 상기 실시형태를 별도의 관점에서 보면, 노드 장치(1 또는 1a)의 내장 컴퓨터인 MPU(2300)는, 플래시 메모리(2334)에 저장된 제어 프로그램에 따라 노드 장치(1 또는 1a)를 제어하고, 상기 각 처리를 노드 장치(1 또는 1a)에 행하게 하고 있는 것으로 간주된다.
이상 설명한 바와 같이, 상기 실시형태에 따른 노드 장치에 의하면, 대규모 통신 네트워크에 적용하는 경우라도, 각 노드 장치가 인접 노드 장치로부터 수신한 정보에 의해 경로의 최적화를 행하는 것이나 네트워크를 감시하는 것이 가능해진다.
또한, 본 실시형태에서는 각종 데이터에 대해서, 이해하기 쉽도록 테이블 형식의 예를 개시했지만, 이 예에 한정되지 않고, 데이터를 대응시켜 관리할 수 있는 XML이나 트리 구조 등 다른 관리 형식을 채용하여도 좋다.

Claims (7)

  1. 복수의 노드 장치를 포함하는 네트워크 중, 노드 장치에 있어서,
    자(自)노드가 송신한 프레임의 정보로서, 프레임을 일의로 식별하기 위한 식별 정보와 상기 프레임의 송출 목적지 노드에 관한 정보를 저장하는 식별 정보 관리 테이블과,
    프레임의 최종 수신 목적지 노드마다, 프레임을 중계하기 위해 송출 목적지로 하는 타(他)노드에 대한 가중 정보를 저장하는 수신 목적지 노드별 가중 테이블과,
    타노드로부터 자노드 앞으로 송신된 프레임을 수신하는 프레임 수신 수단과,
    상기 프레임 수신 수단에 의해 수신한 상기 프레임의 식별 정보가, 상기 식별 정보 관리 테이블에 저장되어 있는 경우에, 상기 식별 정보와 대응시켜 저장되어 있는 상기 송출 목적지 노드에 대해서, 상기 프레임의 최종 수신 목적지에 대응하는 상기 수신 목적지 노드별 가중 테이블의 데이터를 갱신하는 수신 목적지 노드별 가중 테이블 갱신 수단과,
    상기 프레임 수신 수단에 의해 수신한 상기 프레임의 식별 정보가, 상기 식별 정보 관리 테이블에 저장되어 있지 않은 경우에, 상기 프레임의 최종 수신 목적지 노드에 해당하는 상기 수신 목적지 노드별 가중 테이블을 참조하여, 상기 프레임을 중계하기 위한 송출 목적지로 하는 타노드를 결정하는 프레임 송출 목적지 결정 수단
    을 포함하는 것을 특징으로 하는 노드 장치.
  2. 제1항에 있어서, 상기 수신 목적지 노드별 가중 테이블 갱신 수단은, 상기 프레임 수신 수단에 의해 수신한 상기 프레임의 식별 정보가, 상기 식별 정보 관리 테이블에 저장되어 있는 경우에, 상기 식별 정보와 대응시켜 저장되어 있는 상기 송출 목적지 노드에 대해서, 상기 프레임의 최종 수신 목적지에 대응하는 상기 수신 목적지 노드별 가중 테이블의 상기 송출 목적지 노드에 대한 가중을, 우선도가 낮아지도록 갱신하는 것을 특징으로 하는 노드 장치.
  3. 제2항에 있어서, 자노드 주위에 존재하는 타노드에 관한 정보를 저장하는 인접 노드 관리 테이블과,
    헬로(hello) 메시지로서, 자노드의 존재를 알리는 정보와, 상기 인접 노드 관리 테이블로부터 판독한 정보로서, 주위의 경로에 관한 정보를 송신하는 헬로 메시지 송신 수단과,
    타노드로부터의 송신된 헬로 메시지를 수신하는 헬로 메시지 수신 수단과,
    상기 헬로 메시지 수신 수단에 의해 수신한 헬로 메시지의 송출원 노드에 관한 정보에 기초하여, 상기 인접 노드 관리 테이블을 갱신하는 인접 노드 관리 테이블 갱신 수단
    을 더 포함하고,
    상기 인접 노드 관리 테이블에 있어서, 미리 정해진 상태가 된 제1 노드를 검출한 경우에, 상기 수신 목적지 노드별 가중 테이블 갱신 수단은, 상기 수신 목적지 노드별 가중 테이블의 송출 목적지 노드가 상기 제1 노드인 데이터를 우선도가 낮아지도록 갱신하는 것을 특징으로 하는 노드 장치.
  4. 제3항에 있어서, 상기 인접 노드 관리 테이블 갱신 수단은, 상기 헬로 메시지 수신 수단이 수신하는 송신원 노드마다의 헬로 메시지의 수신 간격에 기초하여 결정한, 상기 송출원 노드에 관한 상태에 의해, 상기 인접 노드 관리 테이블을 갱신하는 것을 특징으로 하는 노드 장치.
  5. 복수의 노드 장치를 포함하는 네트워크 중, 노드 장치에 있어서 사용되는 프로그램으로서,
    자노드가 송신한 프레임의 정보로서, 프레임을 일의로 식별하기 위한 식별 정보와 상기 프레임의 송출 목적지 노드에 관한 정보를 식별 정보 관리 테이블에 저장하고,
    프레임의 최종 수신 목적지 노드마다, 프레임을 중계하기 위해 송출 목적지로 하는 타노드에 대한 가중 정보를 수신 목적지 노드별 가중 테이블에 저장하며,
    타노드로부터 자노드 앞으로 송신된 프레임을 수신하고,
    상기 수신한 상기 프레임의 식별 정보가, 상기 식별 정보 관리 테이블에 저장되어 있는 경우에, 상기 식별 정보와 대응시켜 저장되어 있는 상기 송출 목적지 노드에 대해서, 상기 프레임의 최종 수신 목적지에 대응하는 상기 수신 목적지 노드별 가중 테이블의 데이터를 갱신하며,
    상기 수신한 상기 프레임의 식별 정보가, 상기 식별 정보 관리 테이블에 저장되어 있지 않은 경우에, 상기 프레임의 최종 수신 목적지 노드에 해당하는 상기 수신 목적지 노드별 가중 테이블을 참조하여, 상기 프레임을 중계하기 위한 송출 목적지로 하는 타노드를 결정하는,
    처리를 컴퓨터에 실행시키는 것을 특징으로 하는 프로그램.
  6. 복수의 노드 장치를 포함한 네트워크 중, 노드 장치에 있어서,
    하나 이상의 상대 노드로부터 자노드 앞으로 송신된 프레임을 수신하는, 프레임 수신 수단;
    상기 자노드로부터 상기 하나 이상의 상대 노드의 각각에 송신하는 프레임의 통신 품질에 관한 제1 정보,
    상기 하나 이상의 상대 노드의 각각으로부터 상기 자노드에 송신되는 프레임의 통신 품질에 관한 제2 정보, 및
    상기 제1 정보와 상기 제2 정보로부터 산출되는, 쌍방향의 통신 품질에 관한 제3 정보를
    포함한 테이블을 저장하는 기억 수단;
    상기 테이블에 기초하여, 상기 하나 이상의 상대 노드의 각각에 관한 우선도를 나타내는 평가값을 정하는 우선도 판정 수단; 및
    상기 평가값을 이용하여, 상기 하나 이상의 상대 노드 중 가장 우선도가 높은 노드에 프레임을 송신하는 프레임 송신 수단을 포함하는 것을 특징으로 하는 노드 장치.
  7. 제6항에 있어서, 상기 프레임 수신 수단이 수신한, 상기 하나 이상의 상대 노드로부터 상기 자노드 앞으로 송신된 헬로 프레임에 기초하여, 상기 우선도 판정 수단이 상기 평가값을 정하고,
    상기 하나 이상의 상대 노드 중 어느 하나로부터 상기 자노드 앞으로 보내진 데이터 프레임을, 상기 프레임 수신 수단이 수신하며,
    상기 프레임 송신 수단이, 상기 평가값을 이용하여, 상기 데이터 프레임을 상기 하나 이상의 상대 노드 중 적절한 노드에 송신하는 것을 특징으로 하는 노드 장치.
KR1020107023884A 2008-04-25 2009-04-27 노드 장치, 노드 장치가 실행하는 방법 및 컴퓨터 판독가능한 기록 매체 KR101212838B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008115023 2008-04-25
JPJP-P-2008-115023 2008-04-25

Publications (2)

Publication Number Publication Date
KR20100137546A true KR20100137546A (ko) 2010-12-30
KR101212838B1 KR101212838B1 (ko) 2012-12-14

Family

ID=41216659

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107023884A KR101212838B1 (ko) 2008-04-25 2009-04-27 노드 장치, 노드 장치가 실행하는 방법 및 컴퓨터 판독가능한 기록 매체

Country Status (10)

Country Link
US (1) US8817616B2 (ko)
EP (1) EP2273732B1 (ko)
JP (3) JP4888598B2 (ko)
KR (1) KR101212838B1 (ko)
CN (2) CN102017543B (ko)
AU (1) AU2009239253B2 (ko)
BR (1) BRPI0911155A2 (ko)
CA (1) CA2721911C (ko)
RU (1) RU2457627C2 (ko)
WO (1) WO2009130918A1 (ko)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102792737B (zh) * 2010-02-23 2015-03-25 国立大学法人九州大学 通信系统、从节点、路由构建方法及程序
WO2011121675A1 (ja) * 2010-03-31 2011-10-06 富士通株式会社 データ通信装置および方法
JP5477462B2 (ja) * 2010-03-31 2014-04-23 富士通株式会社 ノード装置およびデータ送信方法
ES2528024T3 (es) * 2010-07-07 2015-02-03 Panasonic Corporation Repetidor, sistema de lectura de contador inalámbrico automatizado provisto de este, y procedimiento de retransmisión
US11026169B2 (en) 2010-11-09 2021-06-01 Qualcomm Incorporated Physical layer power save facility
US9992738B2 (en) * 2010-11-17 2018-06-05 Qualcomm Incorporated Physical layer power save facility with random offset
JP5750973B2 (ja) 2011-03-29 2015-07-22 富士通株式会社 通信方法および通信装置
WO2012131960A1 (ja) * 2011-03-30 2012-10-04 富士通株式会社 通信装置、経路探索方法および経路探索プログラム
WO2013054425A1 (ja) 2011-10-13 2013-04-18 富士通株式会社 ノード装置および通信方法
JP5692404B2 (ja) * 2011-11-01 2015-04-01 富士通株式会社 送信制御方法および送信制御装置
JP5939262B2 (ja) 2011-12-12 2016-06-22 富士通株式会社 送信制御方法、ノードおよび送信制御プログラム
JP6036841B2 (ja) 2012-10-31 2016-11-30 富士通株式会社 通信制御方法、ネットワークシステム、および通信装置
WO2014073040A1 (ja) * 2012-11-06 2014-05-15 富士通株式会社 ネットワーク装置および送信プログラム
JP5958293B2 (ja) * 2012-11-14 2016-07-27 富士通株式会社 通信方法、通信プログラム、および、ノード装置
US9170969B2 (en) 2013-01-20 2015-10-27 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Cached PHY register data access
JP2016136651A (ja) * 2013-05-20 2016-07-28 パナソニック株式会社 無線通信機器および無線通信方法
KR101465138B1 (ko) * 2013-05-22 2014-11-26 한국과학기술원 온디멘드 방식의 모바일 애드혹 네트워크 라우팅에서의 헬로 패킷 스케줄링 방법 및 연결 제어 방법
US9553710B2 (en) * 2013-10-31 2017-01-24 Electronics And Telecommunications Research Institute Methods and an apparatus for carrier aggregation
JP6171868B2 (ja) * 2013-11-11 2017-08-02 富士通株式会社 ノード装置、経路入れ替え方法、及び、プログラム
JP5770256B2 (ja) * 2013-12-12 2015-08-26 インテル・コーポレーション 群知能を利用する大規模分散型システムにおける情報ルーティングのために枠組みを利用するシステムおよび方法
CN104243549A (zh) * 2014-07-24 2014-12-24 北京天公瑞丰科技有限公司 基于TG-Inwicos的配电自动化通信方法与装置
US9553829B2 (en) * 2014-11-13 2017-01-24 Cavium, Inc. Apparatus and method for fast search table update in a network switch
CN104486809B (zh) * 2014-12-26 2018-05-18 陈晨 一种无线局域网路由方法
JP6459558B2 (ja) * 2015-01-27 2019-01-30 富士通株式会社 無線通信装置、無線通信方法、および無線通信プログラム
JP6523845B2 (ja) * 2015-07-21 2019-06-05 矢崎総業株式会社 車両用通信システム
CN105357744B (zh) * 2015-08-31 2017-03-01 厦门纵行信息科技有限公司 一种随机接入中继器、中继系统及其中继方法
CN106603404A (zh) * 2015-10-15 2017-04-26 富士通株式会社 无线体域网中2跳扩展转发节点的选举装置、方法和系统
WO2017145390A1 (ja) * 2016-02-26 2017-08-31 富士通株式会社 データ転送プログラム、データ転送装置およびデータ転送方法
US10516606B2 (en) 2017-07-12 2019-12-24 Micron Technology, Inc. System for optimizing routing of communication between devices and resource reallocation in a network
US10511353B2 (en) * 2017-07-12 2019-12-17 Micron Technology, Inc. System for optimizing routing of communication between devices and resource reallocation in a network
US20190253357A1 (en) * 2018-10-15 2019-08-15 Intel Corporation Load balancing based on packet processing loads
CN109275171B (zh) * 2018-10-17 2022-07-12 珠海云洲智能科技股份有限公司 无线自组网通信方法和装置
US10869256B2 (en) * 2018-12-18 2020-12-15 Sony Corporation Multi-hop routing protocol with backup routes in WLAN networks
WO2020150349A1 (en) * 2019-01-15 2020-07-23 Loud-Hailer, Inc. Device presence method and system for mesh network management

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02109445A (ja) 1988-10-19 1990-04-23 Nippon Telegr & Teleph Corp <Ntt> パケット識別方法
US7327683B2 (en) * 2000-03-16 2008-02-05 Sri International Method and apparatus for disseminating topology information and for discovering new neighboring nodes
JP2002171283A (ja) * 2000-11-14 2002-06-14 Lucent Technol Inc パケットネットワークのノードで使用される方法と装置
RU2233473C2 (ru) * 2000-12-22 2004-07-27 Самсунг Электроникс Ко., Лтд. Устройство и способ выполнения высокоскоростного поиска маршрутов протокола интернет и управления таблицами маршрутизации/пересылки
JP3575435B2 (ja) 2001-03-09 2004-10-13 日本電気株式会社 電話システム及び電話接続監視方法
JP2003273964A (ja) 2002-03-15 2003-09-26 Ntt Docomo Inc 通信システム、通信制御方法及びルータ
US7515600B1 (en) * 2003-01-28 2009-04-07 Cisco Technology, Inc. Synchronizing portions of a database with different databases on different nodes of a network
WO2004114690A1 (en) 2003-06-05 2004-12-29 Meshnetworks, Inc. Optimal routing in ad hac wireless communication network
US7701858B2 (en) 2003-07-17 2010-04-20 Sensicast Systems Method and apparatus for wireless communication in a mesh network
US8031720B2 (en) * 2004-02-18 2011-10-04 Ntt Docomo, Inc. Packet transfer system, radio base station, and packet transfer route optimization method
JP4201270B2 (ja) 2004-02-19 2008-12-24 日本電信電話株式会社 ブリッジ装置とループ検出方法およびプログラム
JP4378192B2 (ja) * 2004-03-05 2009-12-02 富士通株式会社 通信端末、通信プログラムおよび通信プログラムを記録したコンピュータ読み取り可能な記録媒体
JP3972338B2 (ja) * 2004-03-09 2007-09-05 株式会社シンクチューブ 移動通信装置及び移動通信プログラム
JP4312655B2 (ja) * 2004-05-11 2009-08-12 株式会社神戸製鋼所 無線ネットワーク通信システム,及びこのシステムに用いられる発信元の無線端末,及び無線通信経路のルーティング方法
US7475158B2 (en) 2004-05-28 2009-01-06 International Business Machines Corporation Method for enabling a wireless sensor network by mote communication
JP4010341B2 (ja) 2004-07-27 2007-11-21 松下電工株式会社 通信ルートの構築方法及び通信端末
KR100873771B1 (ko) 2005-03-31 2008-12-15 가부시키가이샤 고쿠사이 덴키 츠신 기소 기주츠 겐큐쇼 무선장치
JP2006340165A (ja) 2005-06-03 2006-12-14 Hitachi Communication Technologies Ltd 通信経路切替制御システム及びルータ装置
JP4656310B2 (ja) 2005-07-07 2011-03-23 日本電気株式会社 スケジューリング方法及び移動通信システム
JP4635840B2 (ja) 2005-11-16 2011-02-23 横河電機株式会社 無線機器及びネットワークシステム
US7633882B2 (en) * 2006-02-02 2009-12-15 Eaton Corporation Ad-hoc network and method employing globally optimized routes for packets
US9043487B2 (en) * 2006-04-18 2015-05-26 Cisco Technology, Inc. Dynamically configuring and verifying routing information of broadcast networks using link state protocols in a computer network
US7756017B2 (en) * 2006-09-08 2010-07-13 The Uwm Research Foundation, Inc. System and method for scheduling routing table calculation in link state routing protocols
JP4853869B2 (ja) * 2006-09-29 2012-01-11 株式会社国際電気通信基礎技術研究所 無線装置、それにおける隠れ端末の検出方法および通信制御方法
US7940776B2 (en) * 2007-06-13 2011-05-10 Cisco Technology, Inc. Fast re-routing in distance vector routing protocol networks
US8089884B2 (en) * 2008-04-07 2012-01-03 Itt Manufacturing Enterprises, Inc. Method and apparatus for early warning of congestion in Ad-Hoc wireless networks

Also Published As

Publication number Publication date
CN103457849A (zh) 2013-12-18
CA2721911A1 (en) 2009-10-29
JP2012050128A (ja) 2012-03-08
US20110141932A1 (en) 2011-06-16
RU2010144792A (ru) 2012-05-27
JP5182409B2 (ja) 2013-04-17
EP2273732A4 (en) 2013-01-23
KR101212838B1 (ko) 2012-12-14
JPWO2009130918A1 (ja) 2011-08-11
WO2009130918A1 (ja) 2009-10-29
CN102017543B (zh) 2015-11-25
CN102017543A (zh) 2011-04-13
JP2013085295A (ja) 2013-05-09
JP5569604B2 (ja) 2014-08-13
RU2457627C2 (ru) 2012-07-27
US8817616B2 (en) 2014-08-26
AU2009239253A1 (en) 2009-10-29
AU2009239253B2 (en) 2014-05-29
EP2273732A1 (en) 2011-01-12
CA2721911C (en) 2015-11-24
JP4888598B2 (ja) 2012-02-29
EP2273732B1 (en) 2018-03-21
CN103457849B (zh) 2016-08-24
BRPI0911155A2 (pt) 2015-10-06

Similar Documents

Publication Publication Date Title
KR101212838B1 (ko) 노드 장치, 노드 장치가 실행하는 방법 및 컴퓨터 판독가능한 기록 매체
US8780760B2 (en) Determining associations in a mesh network
CA2691453C (en) Method and system for providing network and routing protocols for utility services
US8755336B2 (en) Wireless device which can improve stability in wireless communications and wireless network using the same
JP4023681B2 (ja) マルチホップ無線通信システムおよびその経路選択方法
US20070127379A1 (en) Method and system for improving a wireless communication route
US20120173758A1 (en) Method and system for providing network and routing protocols for utility services
KR20100051693A (ko) 유틸리티 스마트-그리드 네트워크 내의 라우팅 방법 및 시스템
US20150055506A1 (en) Hybrid mesh network
WO2005091576A1 (ja) 無線通信装置および経路探索方法
US20120155322A1 (en) Method And Apparatus For Network Node Discovery
JP2008118351A (ja) 無線通信システム
JP6191411B2 (ja) ノード装置、制御プログラム、及びノード装置の動作方法
JPWO2013129670A1 (ja) 端末、経路生成方法および経路生成プログラム
US20130201970A1 (en) Wireless communication system, wireless communication control method, and wireless communication device
AU2013204999B2 (en) Node device and program
KR20170081904A (ko) 네트워크의 운용 방법 및 네트워크 장치
KR20100039774A (ko) 애드혹 네트워크에서 링크 신뢰 지역에 기반한 라우팅 방법및 장치
JP5904579B2 (ja) 通信システム、通信制御方法、ノード装置、ノード装置制御方法、及び、ノード装置制御プログラム
JP2015076862A (ja) 端末装置、情報端末装置、マルチホップ無線システムおよび通信方法

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20151118

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161123

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee