KR20130099199A - 통신 시스템, 노드, 패킷 전송 방법 및 프로그램을 기록한 컴퓨터 판독가능 기록 매체 - Google Patents
통신 시스템, 노드, 패킷 전송 방법 및 프로그램을 기록한 컴퓨터 판독가능 기록 매체 Download PDFInfo
- Publication number
- KR20130099199A KR20130099199A KR1020137018796A KR20137018796A KR20130099199A KR 20130099199 A KR20130099199 A KR 20130099199A KR 1020137018796 A KR1020137018796 A KR 1020137018796A KR 20137018796 A KR20137018796 A KR 20137018796A KR 20130099199 A KR20130099199 A KR 20130099199A
- Authority
- KR
- South Korea
- Prior art keywords
- address
- packet
- node
- processing
- received packet
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims abstract description 41
- 238000000034 method Methods 0.000 title claims description 33
- 238000012545 processing Methods 0.000 claims abstract description 256
- 230000005540 biological transmission Effects 0.000 claims description 18
- 230000008569 process Effects 0.000 claims description 15
- 230000009471 action Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 238000005111 flow chemistry technique Methods 0.000 description 6
- 238000004590 computer program Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/38—Flow based routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
통신 단말기의 수나 통신 단말기에 의해 이용되는 통신 서비스의 수가 증가하더라도, 노드나 제어 장치에 부과되는 부하가 적게 증가하는 한편, 처리 지연이 적게 생성된다. 통신 시스템의 각 노드는, 각각의 플로우에 속하는 패킷의 전송처와 각각의 플로우를 식별하는 대조 규칙들의 집합을 연관짓는 복수의 처리 규칙(패킷 핸들링 동작)을 유지하고, 상기 처리 규칙들에 따라 수신 패킷을 전송한다. 수신 패킷의 수신처 어드레스가 패킷이 멀티캐스트 대상임을 나타내는 어드레스인 경우에, 노드는, 노드가 유지하는 복수의 처리 규칙을 사용하여, 패킷을 멀티캐스트한다.
Description
[관련 출원에 관한 기재]
본 출원은, 일본에서 2010년 12월 17일 출원된 일본 특허 출원 2010-281473호에 기초하여 우선권을 주장하며, 전 기재 내용은 여기에 참조로 포함된다.
본 발명은, 통신 시스템, 노드, 패킷 전송 방법 및 프로그램에 관한 것이다. 특히, 수신 패킷에 적합한(match) 처리 규칙들의 집합에 따라서, 수신 패킷을 처리하는 노드를 이용해서 통신을 실현하는 통신 시스템, 노드, 패킷 전송 방법, 및 프로그램에 관한 것이다.
특허 문헌 1 및 비특허 문헌 1, 2에 나타나 있는 바와 같이, 최근 오픈 플로우(OpenFlow)로 지칭되는 기술이 제안되어 있다. 오픈 플로우는 통신을 종단간 플로우(end-to-end flow)로서 파악하고, 플로우 단위로(on the flow-by-flow basis) 경로 제어, 장해로부터의 회복, 부하 분산 및 최적화를 수행하는 것이다. 전송 노드로서 동작하는 오픈 플로우 스위치는, 오픈 플로우 컨트롤러와의 통신을 위한 시큐어 채널(secure channel)을 포함하고, 오픈 플로우 컨트롤러로부터 선택적으로 추가(amplified) 또는 재기입되도록 지시되는 플로우 테이블에 따라 동작한다. 플로우 테이블은 플로우 단위로 플로우 엔트리(처리 규칙)의 집합을 정의한다. 각각의 플로우 엔트리는 패킷 헤더와 대조하기 위한 대조 규칙(collation rule)(매칭 룰(matching rule)), 처리 내용을 정의하는 액션(들)(Action 또는 Actions), 및 플로우 통계 정보(Stats)의 집합이다(도 7 참조).
최초의 패킷(first packet)을 수신하면, 일례에서, 오픈 플로우 스위치는, 플로우 테이블로부터, 수신 패킷의 헤더 정보에 적합한 대조 규칙(매칭 룰)을 갖는 엔트리를 검색한다. 검색의 결과로서, 수신 패킷에 적합한 엔트리가 발견되었을 경우, 오픈 플로우 스위치는, 수신 패킷에 대하여, 해당 엔트리의 액션 필드에 기술된 처리 내용을 실시한다. 반대로, 수신 패킷에 적합한 이러한 엔트리가 발견되지 않았을 경우, 오픈 플로우 스위치는, 시큐어 채널을 통해, 오픈 플로우 컨트롤러에 대하여 수신 패킷을 전송하여, 오픈 플로우 컨트롤러에게 수신 패킷의 송신원 및 송신처에 기초한 패킷의 경로의 결정, 즉 처리 규칙의 설정을 요청한다. 오픈 플로우 스위치는 요청에 따르는 플로우 엔트리를 수신해서 플로우 테이블을 갱신한다.
Nick McKeown 외 7명 : "OpenFlow: Enabling Innovation in Campus Networks", [online], [H22(2010)년 11월 22일 검색됨, 인터넷 <URL: http://www.openflowswitch.org/documents/openflow-wp-latest.pdf>
"OpenFlow Switch Specification" Version 1.0.0. (Wire Protocol 0x01), [2010년 11월 22일 검색됨, 인터넷 <URL: http://www.openflowswitch.org/documents/openflow-spec-v1.0.0.pdf>
이하의 분석은, 본 발명에 의해 실시된다.
상기 특허 문헌 1 및 비특허 문헌 1, 2의 기술에서는, 통신은 종단간 플로우로서 파악된다. 따라서, 각 노드에 접속된 통신 단말기의 수나 각각의 통신 단말기에 의해 이용되는 통신 서비스의 수가 증가함에 따라, 플로우의 수에 대응하는 수의 처리 규칙들을 제공할 필요가 있게 된다. 이러한 처리 규칙들은 전술한 플로우 엔트리에 상당한다(equivalent).
반면, 통신 단말기의 수나 각각의 통신 단말기에 의해 이용되는 통신 서비스의 수가 증가하면, 각각의 노드로부터 제어 장치로의, 미지의 패킷에 대한 처리 규칙의 설정 요청의 수 또한 증가한다. 이러한 미지의 패킷들은 전술한 오픈 플로우의 경우에 플로우 테이블에 플로우 엔트리가 없을 경우에 상당한다.
전술한 특허 문헌 1 및 비특허 문헌 1, 2의 기술에서는, 통신 단말기의 수나 각각의 통신 단말기에 의해 이용되는 통신 서비스의 수가 증가함에 따라, 노드나 제어 장치에 부과되는 부하 또한 증가하고, 따라서 처리 지연이 일어날 수 있다는 문제점을 겪는다.
상기 문제는 수신 패킷의 어드레스가 멀티캐스트 어드레스(multicast address)일 경우에도 야기될 수 있다. 그러한 경우에는, 노드에 의해 유지되는 처리 규칙의 수나, 제어 장치에 대한 처리 규칙의 설정 요청의 수가 특히 비약적으로 증가할 수 있다.
본 발명의 제1 양태에서, 각각의 플로우에 속하는 패킷의 전송처와 각각의 플로우를 식별하는 대조 규칙의 집합을 연관짓는(correlate) 복수의 처리 규칙(패킷 핸들링 동작)을 유지하는 노드를 포함하는 통신 시스템이 제공된다. 노드는 처리 규칙에 따라 수신 패킷을 전송한다. 수신 패킷의 수신처 어드레스가 그 수신 패킷이 멀티캐스트 대상임을 나타내는 어드레스인 경우에, 노드는, 노드가 유지하는 복수의 처리 규칙을 이용해서 패킷을 멀티캐스트한다.
본 발명의 제2 양태에서, 각각의 플로우에 속하는 패킷의 전송처와 각각의 플로우를 식별하는 대조 규칙의 집합을 연관짓는 복수의 처리 규칙(패킷 핸들링 동작)을 유지하는 노드가 제공된다. 노드는 처리 규칙에 따라 수신 패킷을 전송한다. 수신 패킷의 수신처 어드레스가 그 수신 패킷이 멀티캐스트 대상임을 나타내는 어드레스인 경우에, 노드는, 노드가 유지하는 복수의 처리 규칙을 이용해서 패킷을 멀티캐스트한다.
본 발명의 제3 양태에서, 각각의 플로우에 속하는 패킷의 전송처와 각각의 플로우를 식별하는 대조 규칙의 집합을 연관짓는 복수의 처리 규칙(패킷 핸들링 동작)을 유지하는 노드에서 패킷을 전송하기 위한 방법이 제공된다. 노드는 처리 규칙에 따라 수신 패킷을 전송한다. 그 방법은, 수신 패킷의 수신처 어드레스가 그 패킷이 멀티캐스트 대상임을 나타내는 어드레스인지의 여부를 확인하는 단계와, 수신 패킷의 수신처 어드레스가 그 수신 패킷이 멀티캐스트 대상임을 나타내는 어드레스인 경우에, 복수의 처리 규칙을 이용해서, 그 패킷을 멀티캐스트-전송하는 단계를 포함한다. 본 방법은, 제어 장치로부터 설정된 처리 규칙에 따라 수신 패킷을 처리하는 노드인, 특정한 기계에 결부되어 있다.
본 발명의 제4 양태에서, 컴퓨터로 하여금, 각각의 플로우에 속하는 패킷의 전송처와 각각의 플로우를 식별하는 대조 규칙의 집합을 연관짓는 복수의 처리 규칙(패킷 핸들링 동작)을 유지하고, 처리 규칙들에 따라 수신 패킷을 전송하는 노드를 구성하게 하고, 수신 패킷의 수신처 어드레스가 그 패킷이 멀티캐스트 대상임을 나타내는 어드레스인지의 여부를 확인하는 처리와, 수신 패킷의 수신처 어드레스가 그 패킷이 멀티캐스트 대상임을 나타내는 어드레스인 경우에, 복수의 처리 규칙을 이용해서, 패킷을 멀티캐스트 전송하는 처리를 수행하게 하는 프로그램이 제공된다. 이 프로그램은, 컴퓨터 판독 가능한 기록 매체 상에 기록될 수 있다. 즉, 본 발명은, 컴퓨터 프로그램 제품으로서 구현될 수 있다.
본 발명에 따르면, 통신 단말기의 수나 통신 단말기에 의해 이용되는 통신 서비스의 수가 증가하더라도, 노드나 제어 장치에 부과된 부하 증대나 처리 지연이 적게 일어날 수 있다.
도 1은 본 발명의 제1 실시예의 구성을 도시하는 개략적인 블록도이다.
도 2는 본 발명의 제1 실시예의 노드의 구성을 도시하는 블록도이다.
도 3은 본 발명의 제1 실시예의 제어 장치에 의해 설정된 경로의 예를 도시하는 개략적인 블록도이다.
도 4는 도 3의 노드(200A)에 설정되는 처리 규칙의 예를 도시하는 도면이다.
도 5는 본 발명의 제1 실시예의 노드의 패킷 수신 시의 동작을 도시하는 흐름도이다.
도 6은 도 5의 처리 규칙 검색 조건을 생성하기 위한 처리(단계 S200)의 세부 사항을 도시하는 흐름도이다.
도 7은 비특허 문헌 2에 기재된 플로우 엔트리의 구성을 도시하는 도면이다.
도 2는 본 발명의 제1 실시예의 노드의 구성을 도시하는 블록도이다.
도 3은 본 발명의 제1 실시예의 제어 장치에 의해 설정된 경로의 예를 도시하는 개략적인 블록도이다.
도 4는 도 3의 노드(200A)에 설정되는 처리 규칙의 예를 도시하는 도면이다.
도 5는 본 발명의 제1 실시예의 노드의 패킷 수신 시의 동작을 도시하는 흐름도이다.
도 6은 도 5의 처리 규칙 검색 조건을 생성하기 위한 처리(단계 S200)의 세부 사항을 도시하는 흐름도이다.
도 7은 비특허 문헌 2에 기재된 플로우 엔트리의 구성을 도시하는 도면이다.
우선, 본 발명의 일 실시예의 개요에 대해서 설명할 것이다. 도면에 대해 언급하는 개요에 사용된 부호는 단지 이해를 돕기 위한 것으로, 본 발명의 범위를 제한하려는 의도는 아니라는 것에 유의하라. 일 실시예에 있어서, 본 발명은, 각각의 플로우에 속하는 패킷의 전송처와 플로우를 식별하는 대조 규칙의 집합을 연관짓는 복수의 처리 규칙을 유지하는 노드를 포함하는 통신 시스템에 의해 구현될 수 있다. 노드는 처리 규칙에 따라 수신 패킷을 전송한다. 구체적으로, 수신 패킷의 수신처 어드레스가 패킷이 멀티캐스트 대상임을 나타낼 때, 노드는, 노드가 유지하는 복수의 처리 규칙을 사용해서 패킷을 멀티캐스트 전송한다.
예를 들면, 3개의 플로우에 대해서 각각의 경로가 이미 설정되어 있는 경우에, 도 3에 도시한 바와 같이, 노드(200A)는, 3개의 플로우 중 어느 것에도 속하지 않고, 그의 수신처 어드레스가 그 패킷이 멀티캐스트 대상임을 나타내는 패킷을 새로 수신했다고 가정한다. 이 경우에, 노드(200A)는, 제어 장치(100A)에게 처리 규칙을 설정하라는 요청을 하지 않고, 노드가 유지하고 있는 처리 규칙을 사용하여, 패킷을 노드들(200B, 200C)에게 멀티캐스트 전송한다.
이상으로부터, 노드에 새로운 처리 규칙을 설정하지 않고 멀티캐스트 전송이 실현될 수 있다. 위를 참조하여, 멀티캐스트 전송을 행함에 있어서, 이하의 실시예에서 상세하게 설명되는 바와 같이, 노드는 그것이 유지하고 있는 처리 규칙의 전부를 사용할 필요는 없으므로, 노드는 필요한 처리 규칙만을 선택할 수 있다는 것이 관찰될 것이다.
[제1 실시예]
이제, 본 발명의 제1 실시예에 대해서 도면을 참조해서 상세하게 설명할 것이다. 도 1은, 본 발명의 통신 시스템에 대한 제1 실시예의 구성을 도시한다.
도 1을 참조하면, 복수의 노드들(200A 내지 200C)과, 노드를 관리하는 제어 장치(100A)가 도시되어 있다. 노드들(200A 내지 200C)에는, 복수의 외부 노드들(300A 내지 300E)이 부착되어 있다.
제어 장치(100A)는, 이러한 노드들(200A 내지 200C)에 대한 처리 규칙을 설정하여, 외부 노드들(300A 내지 300E) 간의 통신을 관리한다. 이러한 처리 규칙은 수신 패킷에 대하여 수행될 처리 내용을 규정한다.
오픈 플로우 스위치에 대한 처리 규칙에 상당하는 플로우 엔트리를 설정하는, 비특허 문헌 1에 따르는 오픈 플로우 컨트롤러가 제어 장치(100A)로서 이용될 수 있다.
노드들(200A 내지 200C) 중 하나가 외부 노드들(300A 내지 300E)을 포함하는 다른 노드들로부터 패킷을 수신할 때, 패킷을 수신한 노드는, 수신 패킷에 대한 처리를 수행하기 위해, 제어 장치(100)로부터 설정된 처리 규칙 중에서, 수신 패킷에 적합한 대조 규칙을 포함하는 처리 규칙을 선택한다.
수신 패킷에 대한 처리 내용은, 노드들(300A 내지 300E)을 포함하는 다른 노드나 제어 장치(100)로 수신 패킷을 전송하는 것을 포함하도록 설정되어 있다. 패킷의 드롭(폐기)이나 헤더 재기입과 같은, 다른 처리 내용 또한 적당하게 설정될 수 있다.
노드들(200A 내지 200C)은 또한, 오픈 플로우 컨트롤러에 의해 설정된, 처리 규칙에 상당하는, 플로우 엔트리에 따라 동작하는 비특허 문헌 1, 2의 오픈 플로우 스위치에, 나중에 설명되는 바와 같은, 멀티캐스트 전송 기능을 추가함으로써 구현될 수 있다.
예를 들어, 외부 노드(300)는, 또 다른 노드(300)와 통신하기 위해 노드들(200A 내지 200C) 중 임의의 것에 부착하는 유저 단말기일 수 있다.
도 2는, 노드들(200A 내지 200C) 각각의 상세 구성을 도시하는 블록도를 묘사한다. 이하의 설명에서, 노드들(200A 내지 200C) 각각은, 노드들을 구별할 필요가 없는 경우에는, '노드(200)'로서 지칭된다. 도 2를 참조하면, 각각의 노드는 처리 규칙 검색 조건 생성부(processing rule retrieving condition producing unit; 201), 처리 규칙 검색부(processing rule retrieving unit; 202), 처리 규칙 기억부(processing rule memory; 203), 처리 규칙 관리부(processing rule management unit; 204), 플로우 처리부(flow processor; 205) 및 제어 장치와 통신하는 통신부(communication unit; 206)를 포함한다.
처리 규칙 검색 조건 생성부(201)는, 수신 패킷 또는 수신 패킷으로부터 추출한 정보에 기초하여, 처리 규칙 검색 조건을 준비한다. 수신 패킷 또는 그로부터 추출한 정보는 처리 규칙 검색부(202)로부터 전달된다. 처리 규칙 검색 조건은, 처리 규칙 기억부(203)로부터, 수신 패킷에 적합한 처리 규칙을 검색하는 처리 규칙 검색부(202)에 의해 생성된다. 그렇게 생성된 처리 규칙 검색 조건은 처리 규칙 검색부(202)로 전달된다.
처리 규칙 검색부(202)는, 외부 노드나 다른 노드로부터 패킷을 수신하면, 처리 규칙 검색 조건 생성부가 처리 규칙 검색 조건을 준비하도록 요청하기 위해, 처리 규칙 검색 조건 생성부(201)로, 수신 패킷 또는 그로부터 추출한 정보를 출력한다.
처리 규칙 검색부(202)는 처리 규칙 검색 조건 생성부(201)로부터 받는 처리 규칙 검색 조건을 이용하여, 처리 규칙 기억부(203)를 검색한다. 처리 규칙 기억부(203)로부터 처리 규칙 검색 조건에 적합한 처리 규칙을 추출할 수 있었을 경우, 처리 규칙 검색부(202)는, 처리 규칙 검색 조건에 적합한 처리 규칙에 정해진 처리 내용(액션)과 수신 패킷을 플로우 처리부(205)에 전달한다
상기 검색의 결과로서, 처리 규칙 검색 조건에 적합한 처리 규칙을 성공적으로 추출할 수 있는 경우, 추출된 처리 규칙의 타임아웃 값이나 통계 정보가 처리 규칙 검색부(202)에 의해 갱신될 수 있다는 점을 유의하라. 타임아웃 값은, 사전 설정된 시간(preset time)동안 적합한 패킷이 수신될 수 없는 처리 규칙의 삭제를 제어하기 위해 이용될 수 있다. 반면, 통계 정보는, 제어 장치(100)가 트래픽 상황을 파악하는 데에 사용될 수 있다.
처리 규칙 기억부(203)는, 노드(200)가 수신 패킷을 처리하는 데에 사용되는 처리 규칙을 유지한다. 이러한 처리 규칙 기억부(203)는, 비특허 문헌 1, 2의 오픈 플로우 스위치의 플로우 테이블에 의해 구현될 수도 있다(도 7 참조).
처리 규칙 관리부(204)는, 통신부(206)를 통해 제어 장치(100)로부터 수신한 지시에 따라, 처리 규칙 기억부(203)에 의해 유지된 처리 규칙들을 추가, 드롭 또는 참조한다. 상술한 바와 같이, 처리 규칙 검색부(202)가 처리 규칙의 타임아웃 값은 물론 통계 정보를 갱신하는 경우에, 처리 규칙 관리부(204)는 타임아웃 처리 규칙을 드롭하거나 통계 정보를 참조하여, 그 결과를 제어 장치(100)에 알린다.
플로우 처리부(205)는 처리 규칙 검색부(202) 또는 통신부(206)를 통해 제어 장치(100)로부터 받는 수신 패킷과 수신 패킷에 대한 처리 내용(액션)에 따라 수신 패킷을 처리한다.
통신부(206)는, 제어 장치(100), 처리 규칙 관리부(204) 및 플로우 처리부(205)와 중계한다.
도 2에 도시된 노드(200)의 각 부(처리 수단)는, 컴퓨터의 하드웨어를 사용하여, 노드(200)를 구성하는 컴퓨터 상에 로딩된, 컴퓨터 프로그램에 의해 구현될 수 있다. 컴퓨터 프로그램은 상기 각 처리 동작을 수행하도록 구성된다.
이하의 설명에서는, 도 3에 도시된 바와 같이, 3개의 플로우에 대한 각 경로가 제어 장치(100A)에 의해 이미 설정되어 있다고 가정한다.
도 4는, 도 3의 노드(200A)에 설정된 처리 규칙의 예를 도시한다. No.1 엔트리는, 도 3의 일점쇄선에 의해 나타낸, 송신원이 외부 노드(300A)이고 수신처가 외부 노드(300B)인 경로를 구현하기 위한 처리 규칙을 도시한다. 도 4의 예에는, 레이어 2의 송신원 어드레스가 외부 노드(300A)의 레이어 2 어드레스이고, 레이어 2의 수신처 어드레스가 외부 노드(300B)의 레이어 2 어드레스이고, 레이어 3의 송신원 어드레스가 외부 노드(300A)의 레이어 3 어드레스이고, 레이어 3의 수신처 어드레스가 외부 노드(300B)의 레이어 3 어드레스인 대조 규칙의 집합이 설정되어 있다. 또한, 대조 규칙에 적합한 패킷을 노드(200B)로 전송하라는 처리 내용이 설정되어 있다.
도 4의 No.2 엔트리는, 도 3의 파선에 의해 나타낸, 송신원이 외부 노드(300A)이고 수신처가 외부 노드(300C)인 경로를 구현하기 위한 처리 규칙을 도시한다. 도 4의 예에는, 레이어 2의 송신원 어드레스가 외부 노드(300A)의 레이어 2 어드레스이고, 레이어 2의 수신처 어드레스가 외부 노드(300C)의 레이어 2 어드레스이고, 레이어 3의 송신원 어드레스가 외부 노드(300A)의 레이어 3 어드레스이고, 레이어 3의 수신처 어드레스가 외부 노드(300C)의 레이어 3 어드레스인 대조 규칙의 집합이 설정되어 있다. 또한, 대조 규칙에 적합한 패킷을 노드(200B)로 전송하라는 처리 내용이 설정되어 있다.
마찬가지로, 도 4의 No.3 엔트리는, 도 3의 실선에 의해 나타낸, 송신원이 외부 노드(300A)이고 수신처가 외부 노드들(300D, 300E)인 경로를 구현하기 위한 처리 규칙을 도시한다. 도 4의 예에는, 레이어 2의 어드레스들이 'don't care'이고, 레이어 3의 송신원 어드레스가 외부 노드(300A)의 레이어 3 어드레스이고, 레이어 3의 수신처 어드레스가 외부 노드들(300D, 300E)의 레이어 3 어드레스를 모두 합친(aggregated) 어드레스인 패킷을 추출하기 위한 대조 규칙의 집합이 설정되어 있다. 또한, 대조 규칙에 적합한 패킷을 노드(200C)로 전송하라는 처리 내용이 설정되어 있다.
또한, 도 4의 대조 규칙들 중 어느 것에도 적합하지 않은 수신 패킷들은, 제어 장치(100A)로 전송되고, 제어 장치에 대해 처리 규칙의 설정 요청이 행해진다. 도 4의 대조 규칙은 단지 본 발명의 이해를 돕기 위한 것이므로, 예로서, 입력 포트 번호(In Port), VLAN ID, 레이어 4의 프로토콜 번호, 레이어 4의 송신원 포트 번호 또는 수신처 포트 번호(TCP/UDP src port 또는 TCP/UDP dst port)등이 설정될 수 있음에 유의하라. 비특허 문헌 2에 언급된 바와 같이, 임의의 선택적인 필드에 와일드카드를 설정할 수 있다.
이하의 설명에서는, 외부 노드들(300A, 300B, 300C)의 레이어 2 어드레스들은 각각 MAC(Media Access Control) 어드레스들 [00:11:22:33:44:AA], [00:11:22:33:44:BB], 및 [00:11:22:33:44:CC]이라고 가정한다.
또한, 외부 노드들(300A, 300B, 300C)의 레이어 3 어드레스들은,각각 IP 어드레스들(IP address) [192.168.0.1], [192.168.0.2], [192.168.0.3]이고, 외부 노드들(300D, 300E)의 레이어 3 어드레스들은 각각 IP 어드레스들 [192.168.0.4] 및 [192.168.0.5]이며, 레이어 3 어드레스들을 집약한 어드레스는 [192.168.0.4/31]이라고 가정한다.
이제, 본 실시예의 노드의 동작에 대해서 설명할 것이다. 도 5 및 도 5의 단계 S200의 세부 사항을 도시하는 도 6을 참조하여, 본 실시예의 동작에 대해 설명할 것이다. 이하의 설명에서는, 도 3 및 도 4에 도시하는 경로와 이에 대응하는 처리 규칙이 제어 장치(100A)로부터 사전에 설정되어 있는 것으로 가정된다는 것에 유의하라.
도 5를 참조하면, 노드(200)가 패킷을 수신할 때, 노드는 처음에, 생성부에게 처리 규칙 검색 조건의 준비를 요청함으로써, 처리 규칙 검색 조건 생성 정보를 처리 규칙 검색 조건 생성부(201)로 출력한다(단계 S100). 처리 규칙 검색 조건 생성 정보는 수신 패킷으로부터 추출하고, 수신 패킷에 적합한 처리 규칙을 검색하기 위해 사용된다.
본 실시예에서는, 다음의 정보:
· 레이어 2의 송신원 어드레스와 레이어 2의 수신처 어드레스;
· 레이어 3의 송신원 어드레스와 레이어 3의 수신처 어드레스; 및
· 레이어 3의 네트워크 어드레스를 식별 가능하게 하는 정보
가 노드(200)의 처리 규칙 검색부(202)로부터 처리 규칙 검색 조건 생성부(201)에게 전달되는 처리 규칙 검색 조건 생성 정보에 포함되는 것으로 가정한다.
프로토콜이, ARP(Address Resolution Protocol)와 같은 레이어 3의 송신원 어드레스와 레이어 3의 수신처 어드레스를 포함하는 프로토콜일 경우, 레이어 3의 송신원 어드레스와 레이어 3의 수신처 어드레스는 프로토콜의 포맷으로부터 획득될 수 있다는 것에 유의하라.
예로서, VLAN ID 필드에 레이어 3의 네트워크 어드레스의 길이가 설정되어 있는 경우, VLAN ID는 레이어 3의 네트워크 어드레스를 식별 가능하게 하는 정보로서 사용될 수 있다. IPv4 헤더나 IPv6 헤더에서, 레이어 3의 네트워크 어드레스의 길이나 레이어 3의 네트워크 어드레스 마스크가 설정되어 있는 옵션 헤더가 존재하는 경우에, 그러한 옵션 헤더 또한 이용될 수 있다. 여기서, VLAN ID 필드에, 레이어 3의 네트워크 어드레스의 길이가 설정되어 있고, 레이어 3의 네트워크 어드레스를 식별 가능하게 하는 정보로서 입력 프레임의 VLAN ID가 추출된다고 가정한다.
그 다음, 노드(200)의 처리 규칙 검색 조건 생성부(201)는, 처리 규칙 검색부(202)로부터 받은 처리 규칙 검색 조건 생성 정보에 기초하여 처리 규칙 검색 조건을 생성한다(단계 S200).
처리 규칙 검색 조건은 처리 규칙 검색 조건 생성부(201)에 의해 다음의 방식으로 생성될 수 있다:
처음에, 노드(200)의 처리 규칙 검색 조건 생성부(201)는, 처리 규칙 검색부(202)로부터 받은 처리 규칙 검색 조건 생성 정보에 포함되는, 레이어 2나 레이어 3의 수신처 어드레스가 링크 로컬 멀티캐스트 어드레스(link local multicast address)인지의 여부를 확인한다(도 6의 단계 S201).
어드레스 표기(notation) 시스템이 IPv4인 경우, 링크 로컬 멀티캐스트 어드레스인 레이어 2나 레이어 3의 수신처 어드레스는, 레이어 2의 수신처 어드레스가 FF:FF:FF:FF:FF:FF의 MAC 어드레스이고 레이어 3의 수신처 어드레스가 255.255.255.255일 경우와, 레이어 2의 수신처 어드레스가 FF:FF:FF:FF:FF:FF의 MAC 어드레스이고 유형이 ARP일 경우를 포함한다. 어드레스 표기 시스템이 IPv6인 경우에는, 링크 로컬 멀티캐스트 어드레스인 레이어 2나 레이어 3의 수신처 어드레스는, 레이어 2의 수신처 어드레스가 25비트의 0000 0001 0000 0000 1001 1110 0으로 시작되는 MAC 어드레스이고, 레이어 3의 수신처 어드레스가 FF02::/16인 경우를 포함한다.
단계 S201에서, 레이어 2나 레이어 3의 수신처 어드레스가 링크 로컬 멀티캐스트 어드레스라고 판정되었을 경우를 가정한다(단계 S201의 예(Yes)). 이 경우, 처리 규칙 검색 조건 생성부(201)는, 레이어 3의 네트워크 어드레스를 식별 가능하게 하는 정보와 필요에 따라 레이어 3의 송신원 어드레스를 사용하여, 수신 패킷의 송신원의 레이어 3 네트워크 어드레스를 추출한다(단계 S202).
예로서, 레이어 3의 네트워크 어드레스를 식별 가능하게 하는 정보로서 VLAN ID에 24가 설정되어 있고, 그러한 경우에 레이어 3의 송신원 어드레스가 노드(200A)의 192.168.0.1인 것을 가정한다. 그 다음, 레이어 3의 송신원 네트워크 어드레스로서 192.168.0.0/24가 추출된다. 유형이 ARP이면, ARP 포맷으로부터 레이어 3의 송신원 어드레스를 추출하기에 충분하다. IPv6의 경우에도 마찬가지로 동일한 것이 적용된다. 레이어 3의 네트워크 어드레스를 식별 가능하게 하는 정보로서, 송신원의 네트워크 어드레스 자체가 존재하는 경우에는, 그러한 송신원의 네트워크 어드레스 자체가 직접적으로 사용될 수 있다는 것에 유의하라.
다음에, 처리 규칙 검색 조건 생성부(201)는, 처리 규칙 검색 조건에 의해, 레이어 2의 수신처 어드레스를 와일드카드 어드레스로서 설정하는 한편, 레이어 3의 수신처 어드레스를 단계 S202에서 추출한 수신 패킷의 송신원의 레이어 3 네트워크 어드레스로서 설정한다(단계 S203).
단계 S201에서, 레이어 2나 레이어 3의 수신처 어드레스가 링크 로컬 멀티캐스트 어드레스가 아니라고 판정되었다고 가정한다(단계 S201의 아니오(No)). 그러한 경우, 처리 규칙 검색 조건 생성부(201)는, 처리 규칙 검색부(202)로부터 받은 정보에 포함되는 레이어 2나 레이어 3의 수신처 어드레스가 다이렉트 멀티캐스트 어드레스(direct multicast address)인지의 여부를 확인한다(단계 S204).
어드레스 표기 시스템이 IPv4인 경우, 다이렉트 멀티캐스트 어드레스인 레이어 2나 레이어 3의 수신처 어드레스는 레이어 2의 수신처 어드레스가 FF:FF:FF:FF:FF:FF의 MAC 어드레스이고 레이어 3의 수신처 어드레스가 255.255.255.255 이외의 것인 경우를 포함한다.
단계 S204에서, 레이어 2나 레이어 3의 수신처 어드레스가 다이렉트 멀티캐스트 어드레스라고 판정되었다고 가정한다(단계 S204의 예(Yes)). 그러한 경우, 처리 규칙 검색 조건 생성부(201)는, 레이어 3의 네트워크 어드레스를 식별 가능하게 하는 위에서 언급한 정보를 사용하고, 또한, 필요에 따라, 레이어 3의 수신처 네트워크 어드레스를 사용하여, 수신 패킷의 수신처의 레이어 3 네트워크 어드레스를 추출한다(단계 S205).
예로서, 레이어 3의 네트워크 어드레스를 식별 가능하게 하는 정보로서 VLAN ID에 24가 설정되어 있고, 레이어 3의 수신처 어드레스가 192.168.0.255인 경우에, 레이어 3의 수신처 네트워크 어드레스로서 192.168.0.0/24가 추출된다. 레이어 3의 네트워크 어드레스를 식별 가능하게 하는 정보로서 네트워크 어드레스 자체가 존재하는 경우에, 수신처의 네트워크 어드레스가 직접적으로 사용될 수 있다.
그 다음, 처리 규칙 검색 조건 생성부(201)는, 처리 규칙 검색 조건으로서, 레이어 2의 수신처 어드레스를 와일드카드 어드레스로서 설정하는 한편, 레이어 3의 수신처 어드레스를 단계 S205에서 추출한 수신 패킷의 레이어 3의 수신처 네트워크 어드레스로서 설정한다(단계 S206).
마지막으로, 처리 규칙 검색 조건 생성부(201)는, 처리 규칙 검색부로부터 받은 처리 규칙 검색 조건 생성 정보를, 단계S203, S206에서 설정되지 않은 처리 규칙 검색 조건인 것으로 직접적으로 설정한다(단계 S207). 그러나, 예로서, ARP가 프로토콜로서 사용되는 경우에, 그러한 프로토콜의 포맷으로부터 레이어 3의 송신원 어드레스나 레이어 3의 수신처 어드레스를 추출해서 정보에 추가한다.
이하의 설명에서는, 단계 S201 또는 S204에서, 수신처 어드레스가 링크 로컬 멀티캐스트 어드레스 또는 다이렉트 멀티캐스트 어드레스로 판정되는 것을 가정한다. 또한, 레이어 2의 송신원 어드레스로서 노드(200A)의 MAC 어드레스00:11:22:33:44:AA가 설정되고, 레이어 2의 수신처 어드레스가 와일드카드이고, 레이어 3의 송신원 어드레스로서 노드(200A)의 IPv4 어드레스 192.168.0.1가 설정되고, 레이어 3의 수신처 어드레스로서 노드(200A)의 네트워크 어드레스 192.168.0.0/24가 설정되는 처리 규칙 검색 조건이 생성되었다고 가정한다.
다시, 도 5를 참조하면, 상술한 바와 같이 생성된 처리 규칙 검색 조건을 처리 규칙 검색 조건 생성부(201)로부터 수신한 처리 규칙 검색부(202)는, 수신된 처리 규칙 검색 조건을 이용하여, 처리 규칙 기억부(203)로부터 처리 규칙 검색 조건에 적합한 처리 규칙을 검색한다(단계 S300). 이 때, 레이어 3의 수신처 어드레스에 관해서는, 처리 규칙 검색 조건의 레이어 3의 수신처 어드레스에 포함되는 수신처 어드레스를 갖는 처리 규칙 전부, 또는 처리 규칙 검색 조건의 레이어 3의 수신처 어드레스를 포함하는 수신처 어드레스를 갖는 처리 규칙 전부가 검색된다(단계 S350의 예(Yes)).
처리 규칙 검색부(202)는, 남은 조건에도 역시 적합한 대조 규칙을 포함하는 처리 규칙의 액션(들)과 수신 패킷의 집합을 플로우 처리부(205)에 전달한다.
도 4의 처리 규칙 중에서 위에서 언급한 처리 규칙 검색 조건에 적합한 처리 규칙이 검색되는 경우에, No.1 및 No.3의 엔트리가 추출된다. 도 4에는 도시되지 않지만, 처리 규칙으로서 192.168.0.0/16의 레이어 3의 수신처 어드레스를 갖는 엔트리가 존재하는 경우에, 그 처리 규칙 또한 추출된다.
플로우 처리부(205)는, 상술한 바와 같이, 처리 규칙 검색부(202)로부터 받은 수신 패킷과 그에 대한 액션(들)에 응답하여 동작하여, 수신 패킷을, 통신부(206)를 통해, 외부 노드(300), 나머지 노드(들)(200) 또는 제어 장치(100A)에 출력하거나, 그 패킷을 드롭한다(단계 S400). 도 4의 처리 규칙으로부터 No.1 및 No.3의 엔트리가 추출되는 경우에, 수신 패킷은, 멀티캐스트 전송에 의해, 처리 규칙의 액션들에 따라 노드들(200B 및 200C)로 출력된다.
반면, 처리 규칙 검색 조건에 적합한 처리 규칙이 처리 규칙 기억부(203)로부터 성공적으로 검색될 수 없는 경우에(단계 S350의 아니오(No)), 패킷에 대한 처리 규칙의 설정 요청이 제어 장치(100A)로 전송된다(단계 S500). 제어 장치(100A)에 의한 처리 규칙의 설정이 완료되면, 재차, 처리 규칙이 검색되어, 상기 설정된 처리 규칙에 따라 패킷 처리가 수행된다(단계 S300, S400).
위에서 설명한 본 실시예에서, 노드(200)의 처리 규칙 기억부(203)에 유지되는 처리 규칙의 수는 감소될 수 있다. 그 이유는, 레이어 2나 레이어 3의 수신처 어드레스가 멀티캐스트 어드레스인 패킷은, 그러한 패킷을 멀티캐스트하기 위한 처리 규칙을 노드(200)에 설정할 필요 없이, 기존의 처리 규칙을 이용해서 전송될 수 있기 때문이다.
도 5의 흐름도에서는, 단계 S500에서 제어 장치(100A)에게 패킷에 대한 처리 규칙의 설정 요청이 행해진다. 그러나, 제어 장치에 대한 처리 규칙의 설정 요청은 행하지 않고, 패킷을 드롭하는 것도 가능하고, 제어 장치(100A)가 처리 규칙의 설정 요청과 관련되어 수신한 패킷을 또 다른 노드에 전송하는 것도 가능하다. 또한, 제어 장치(100A)가 처리 규칙의 설정 요청과 관련되어 수신한 패킷을 종료할 수도 있다.
상술한 실시예에서, 처리 규칙 검색 조건 생성부(201)가 처리 규칙 검색부(202)로부터 처리 규칙 검색 조건 생성 정보를 수신해서 처리 규칙 검색 조건을 생성한다. 그러나, 또한, 처리 규칙 검색 조건 생성부(201)는, 처리 규칙 검색 조건의 일부를 생성하기 위해, 처리 규칙 검색부(202)로부터, 처리 규칙 검색 조건 생성 정보로서, 적어도 레이어 2의 송신원 어드레스, 레이어 2의 수신처 어드레스, 레이어 3의 송신원 어드레스 및 레이어 3의 수신처 어드레스는 물론, 레이어 3의 네트워크 어드레스를 식별 가능하게 하는 정보를 수신하는 것이 가능하다. 상기 송신원 및 수신처 어드레스는 또한, 예를 들어, ARP 포맷으로부터 취득될 수 있는 것들일 수 있다. 그 다음, 처리 규칙 검색 조건 생성부(201)는 처리 규칙 검색부(202)에 의해, 처리 규칙 검색 조건 생성부(201)로부터 수신한 처리 규칙 검색 조건의 일부로서, 처리 규칙 검색 조건 생성 정보에 반영된, 처리 규칙 검색 조건을 생성할 수 있다.
또한, 본 실시예에서, 지연된 패킷 처리, 제어 장치와 노드 간의 네트워크 대역의 압박(compaction), 또는 제어 장치에서의 증대된 처리 부하의 문제가 경감될 수 있다. 그 이유는, 레이어 2나 레이어 3의 수신처 어드레스가 멀티캐스트 어드레스인 패킷을 멀티캐스트 하기 위한 처리 규칙이 노드(200)에 설정될 필요가 없기 때문이다. 또한, 본 실시예에서, 노드(200)에 유지될 수 있는 처리 규칙의 수에 대한 제한으로 인해 처리 규칙이 등록될 수 없거나, 노드(200)가 제어 장치(100A)에게 멀티캐스트 대상인 패킷에 대한 처리 규칙의 설정을 요청해야 하는 상황이 생기지 않을 수 있다.
본 발명의 바람직한 실시예를 설명했지만, 본 발명의 기본적 기술적 사상을 일탈하지 않고, 추가의 변형, 치환, 또는 조정이 행해질 수 있다. 예를 들면, 위에서 설명한 실시예에 나타난 노드의 수는 단지 예시적인 것이므로, 그 노드의 수에 대한 특정한 제한은 없다.
위에서 설명한 실시예는 도 4에 도시된 노드(200A)에 설정되는 처리 규칙의 예에 관한 것이다. 그러나, 레이어 3의 송신원 또는 수신처 어드레스에는, 그것의 프리픽스(prefix)일 수도 있는 네트워크 어드레스를 포함하는 처리 규칙들 또한 미리 설정되어 있을 수 있다.
또한, 노드(200)는 상위에서 언급된 처리 규칙에 등록되어 있는 레이어 3의 어드레스가 그들의 네트워크 어드레스들과 관련되는 테이블을 가질 수 있다. 그러한 경우, 수신 패킷에, '레이어 3의 네트워크 어드레스를 식별 가능하게 하는 정보'가 없는 경우에도, 도 6의 단계 S202 및 S205에 있어서, 상기 테이블을 참조함으로써 위에서 설명한 실시예에서와 마찬가지의 처리가 수행될 수 있다.
또한, 레이어 3의 송신원 또는 수신처 어드레스에, 그들의 프리픽스일 수도 있는 네트워크 어드레스를 포함하는 처리 규칙이 미리 설정되어 있는 경우에, 로컬 브로드캐스트(local broadcast)의 경우에는 도 6의 단계 S202의 처리가 생략될 수 있다. 이 경우, 단계 S203은: '레이어 3의 수신처 어드레스가 수신 패킷의 레이어 3의 송신원 네트워크 어드레스와 동일한 네트워크 어드레스를 갖는 레이어 3의 수신처 어드레스로서 설정되는, 처리 규칙 검색 조건이 생성된다'는 것을 나타낸다.
이 경우, 예를 들어, 처리 규칙 중 선택적인 필드에는, 통상적인 레이어 3의 네트워크 어드레스를 증명하는(testify) 플래그(flag)가 제공될 수 있다. 그렇게 함으로써, 통상적인 레이어 3의 네트워크 어드레스를 갖는 처리 규칙이 쉽게 검색될 수 있다.
유사한 방식으로, 직접 방송(direct broadcast)의 경우에도, 단계 S204의 처리가 생략될 수 있고, 그 다음, 단계 S205의 처리에서 대응하는 변경이 실시될 수 있다.
위에서 설명한 실시예의 설명에서, 도 3에 도시된 바와 같이, 제어 장치(100A)에 의해 3개의 플로우에 대한 각각의 경로가 이미 설정되어 있는 것으로 상정된다. 그러나, 노드에 단지 더 적은 수의 처리 규칙이 설정되어 있는 경우에는, 멀티캐스트 대상인 패킷들에 대해서도, 제어 장치(100A)에게 처리 규칙의 설정을 요청할 수 있다. 또한, 노드에 설정되어 있는 처리 규칙을 파악하는 제어 장치(100A)가, 각각의 노드(200)가 위에서 언급한 멀티캐스트 전송을 수행하기 위해 필요한 처리 규칙을 설정하게 하는 것이 가능하다. 마찬가지로, 제어 장치(100A)가, 개개의 노드(200)에 설정되어 있는 처리 규칙의 내용을 확인하여, 위에서 언급한 미리 설정된 처리 규칙을 이용하여 멀티캐스트 전송을 수행할 것인지 여부에 관해 온오프(on/off) 제어를 실행하게 하는 것이 가능하다.
또한, 루프(loop)에 대처하기 위해, 멀티캐스트 전송을 행하기 전에, 루프 검출용 패킷에 헤더를 재기입하는 것이 가능하다. 그 다음, 재기입된 헤더를 갖는 패킷의 수신의 결과로서 루프가 검출된 경우에는, 해당 패킷을 폐기하는 처리 규칙이 설정될 수 있다.
본 발명의 바람직한 모드들이 다음과 같이 요약될 수 있다:
[모드 1]
위에서 언급한 제1 양태에 따른 통신 시스템.
[모드 2]
노드는 바람직하게는 패킷이 멀티캐스트될 수신처에 적합한 처리 규칙을 추출하는 검색 조건을 생성하는 처리 규칙 검색 조건 생성부(처리 규칙 검색 조건 생성 수단)를 포함한다.
수신 패킷의 수신처 어드레스가 패킷이 멀티캐스트 대상임을 나타내는 경우에, 처리 규칙 검색 조건 생성부에 의해 생성된 검색 조건에 적합한 대조 규칙을 포함하는 처리 규칙이 바람직하게 추출해서 멀티캐스트 전송을 실행한다.
[모드 3]
수신 패킷의 수신처 어드레스가 링크 로컬 멀티캐스트 어드레스일 경우에, 처리 규칙 검색 조건 생성부는 바람직하게는 레이어 3의 수신처 어드레스가 패킷 송신원의 레이어 3의 네트워크 어드레스에 일치하는, 대조 규칙을 포함하는 처리 규칙을 추출하는 검색 조건을 생성한다.
[모드 4]
수신 패킷의 수신처 어드레스가 다이렉트 멀티캐스트 어드레스인 경우에, 처리 규칙 검색 조건 생성부는 바람직하게는 레이어 3의 수신처 어드레스가 수신처의 레이어 3의 네트워크 어드레스에 일치하는, 대조 규칙을 포함하는 처리 규칙을 추출하는 검색 조건을 생성한다.
[모드 5]
위에서 언급한 제2 양태에 따른 노드.
[모드 6]
노드는 바람직하게는 패킷이 멀티캐스트될 수신처에 적합한 처리 규칙을 추출하는 검색 조건을 생성하는 처리 규칙 검색 조건 생성부(처리 규칙 검색 조건 생성 수단)를 포함한다.
수신 패킷의 수신처 어드레스가 패킷이 멀티캐스트 대상임을 나타내는 어드레스인 경우에, 처리 규칙 검색 조건 생성부에 의해 생성된 검색 조건에 적합한 대조 규칙을 포함하는 처리 규칙이 바람직하게 추출되어 멀티캐스트 전송을 실행한다.
[모드 7]
수신 패킷의 수신처 어드레스가 링크 로컬 멀티캐스트 어드레스일 경우에, 처리 규칙 검색 조건 생성부는 바람직하게는 레이어 3의 수신처 어드레스가 패킷 송신원의 레이어 3의 네트워크 어드레스에 일치하는 대조 규칙을 포함하는 처리 규칙을 추출하는 검색 조건을 생성한다.
[모드 8]
수신 패킷의 수신처 어드레스가 다이렉트 멀티캐스트 어드레스인 경우에, 처리 규칙 검색 조건 생성부는 바람직하게는 레이어 3의 수신처 어드레스가 수신처의 레이어 3의 네트워크 어드레스에 일치하는 대조 규칙을 갖는 처리 규칙을 추출하는 검색 조건을 생성한다.
[모드 9]
위에서 언급한 제3 양태에 따른 패킷 전송 방법.
[모드 10]
위에서 언급한 제4 양태에 따른 프로그램.
패킷 전송 방법 및 프로그램은, 모드 1의 통신 시스템과 마찬가지로, 각각의 구성 요소 또는 단계와 관련되어, 모드 2 내지 4와 동일한 방식으로 전개될 수 있다.
위에서 언급한 특허 문헌 및 비특허 문헌의 개시가 여기에 참고로 포함된다. 청구 범위를 포함하는 본 발명의 전체 개시의 전반 내에 있어서, 본 발명의 기본적 기술 사상에 기초하여 특정 실시예 또는 예시의 변경 또는 조정이 가능하다. 또한, 본 발명의 청구 범위의 개념 내에 있어서, 청구항의 요소, 각 실시예 또는 예시의 요소, 또는 도면의 요소를 포함하는, 본 발명의 개시 요소의 다양한 조합, 또는 선택이 가능하다. 즉, 본 발명은, 청구 범위를 포함하는 본 발명의 전체 개시의 전반 및 본 발명의 기술적 사상 내에 있어서, 당업자라면 행할 수 있는 다양한 변형 또는 수정을 포함할 수 있다.
100, 100A: 제어 장치들
200, 200A-200C: 노드들
201: 처리 규칙 검색 조건 생성부
202: 처리 규칙 검색부
203: 처리 규칙 기억부
204: 처리 규칙 관리부
205: 플로우 처리부
206: 제어 장치와의 통신을 위한 통신부
300A-300E: 외부 노드들
200, 200A-200C: 노드들
201: 처리 규칙 검색 조건 생성부
202: 처리 규칙 검색부
203: 처리 규칙 기억부
204: 처리 규칙 관리부
205: 플로우 처리부
206: 제어 장치와의 통신을 위한 통신부
300A-300E: 외부 노드들
Claims (10)
- 통신 시스템으로서,
각각의 플로우에 속하는 패킷의 전송처(forwarding destination)와 각각의 플로우를 식별하는 대조 규칙들(collation rules)의 집합을 상관시키는 복수의 처리 규칙을 유지하며, 상기 처리 규칙들에 따라 수신 패킷을 전송하는 노드
를 포함하고,
상기 수신 패킷의 수신처(destination) 어드레스가, 상기 수신 패킷이 멀티캐스트 대상인 것을 나타내는 어드레스인 경우, 상기 노드는, 상기 노드가 유지하는 상기 복수의 처리 규칙을 이용하여 상기 패킷을 멀티캐스트하는 통신 시스템. - 제1항에 있어서
상기 노드는, 멀티캐스팅의 수신처에 적합한 처리 규칙들을 추출할 검색 조건들을 생성하는 처리 규칙 검색 조건 생성부를 포함하고,
상기 수신 패킷의 수신처 어드레스가, 상기 수신 패킷이 멀티캐스트 대상인 것을 나타내는 어드레스인 경우, 상기 처리 규칙 검색 조건 생성부에 의해 생성된 검색 조건들에 적합한 대조 규칙들을 포함하는 처리 규칙들이 추출되어 멀티캐스트 전송을 실행하는 통신 시스템. - 제1항 또는 제2항에 있어서,
상기 수신 패킷의 수신처 어드레스가 링크 로컬 멀티캐스트 어드레스(link local multicast address)인 경우, 상기 처리 규칙 검색 조건 생성부는, 레이어 3의 수신처 어드레스가 패킷 송신원의 레이어 3 네트워크 어드레스에 일치하는 대조 규칙들을 포함하는 처리 규칙들을 추출할 검색 조건들을 생성하는 통신 시스템. - 제1항 내지 제3항 중 어느 한 항에 있어서,
상기 수신 패킷의 수신처 어드레스가 다이렉트 멀티캐스트 어드레스(direct multicast address)인 경우, 상기 처리 규칙 검색 조건 생성부는, 상기 레이어 3의 수신처 어드레스가 수신처의 레이어 3 네트워크 어드레스에 일치하는 대조 규칙들을 포함하는 처리 규칙들을 추출할 검색 조건들을 생성하는 통신 시스템. - 각각의 플로우에 속하는 패킷의 전송처와 각각의 플로우를 식별하는 대조 규칙들의 집합을 상관시키는 복수의 처리 규칙을 유지하며, 상기 처리 규칙들에 따라 수신 패킷을 전송하는 노드로서,
상기 수신 패킷의 수신처 어드레스가, 상기 패킷이 멀티캐스트 대상인 것을 나타내는 어드레스인 경우, 상기 노드는, 상기 노드가 유지하는 상기 복수의 처리 규칙을 이용하여 상기 패킷을 멀티캐스트하는 노드. - 제5항에 있어서,
멀티캐스팅을 위한 수신처에 적합한 처리 규칙들을 추출할 검색 조건들을 생성하는 처리 규칙 검색 조건 생성부를 포함하고,
상기 수신 패킷의 수신처 어드레스가, 상기 수신 패킷이 멀티캐스트 대상인 것을 나타내는 어드레스인 경우, 상기 처리 규칙 검색 조건 생성부에 의해 생성된 검색 조건들에 적합한 대조 규칙들을 포함하는 처리 규칙들이 추출되어 멀티캐스트 전송을 실행하는 노드. - 제5항 또는 제6항에 있어서,
상기 수신 패킷의 수신처 어드레스가 링크 로컬 멀티캐스트 어드레스인 경우, 상기 처리 규칙 검색 조건 생성부는, 레이어 3의 수신처 어드레스가 패킷 송신원의 레이어 3 네트워크 어드레스에 일치하는 대조 규칙들을 포함하는 처리 규칙들을 추출할 검색 조건들을 생성하는 노드. - 제5항 내지 제7항 중 어느 한 항에 있어서,
상기 수신 패킷의 수신처 어드레스가 다이렉트 멀티캐스트 어드레스인 경우, 상기 처리 규칙 검색 조건 생성부는, 레이어 3의 수신처 어드레스가 수신처의 레이어 3 네트워크 어드레스에 일치하는 대조 규칙들을 포함하는 처리 규칙들을 추출할 검색 조건들을 생성하는 노드. - 각각의 플로우에 속하는 패킷의 전송처와 각각의 플로우를 식별하는 대조 규칙들의 집합을 상관시키는 복수의 처리 규칙을 유지하며, 상기 처리 규칙들에 따라 수신 패킷을 전송하는 노드에서의 패킷 전송 방법으로서,
상기 수신 패킷의 수신처 어드레스가, 상기 수신 패킷이 멀티캐스트 대상인 것을 나타내는 어드레스인지 여부를 확인하는 단계; 및
상기 수신 패킷의 수신처 어드레스가, 상기 수신 패킷이 멀티캐스트 대상인 것을 나타내는 어드레스인 경우, 상기 복수의 처리 규칙을 이용하여 상기 패킷을 멀티캐스트 전송하는 단계
를 포함하는 패킷 전송 방법. - 각각의 플로우에 속하는 패킷의 전송처와 각각의 플로우를 식별하는 대조 규칙들의 집합을 상관시키는 복수의 처리 규칙을 유지하며, 상기 처리 규칙들에 따라 수신 패킷을 전송하는 노드를 구성하는 컴퓨터로 하여금,
상기 수신 패킷의 수신처 어드레스가, 상기 수신 패킷이 멀티캐스트 대상인 것을 나타내는 어드레스인지 여부를 확인하는 처리; 및
상기 패킷의 수신처 어드레스가, 상기 수신 패킷이 멀티캐스트 대상인 것을 나타내는 어드레스인 경우, 상기 노드가 유지하는 상기 복수의 처리 규칙을 이용하여 상기 수신 패킷을 멀티캐스트 전송하는 처리
를 수행하게 하는 프로그램.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010281473 | 2010-12-17 | ||
JPJP-P-2010-281473 | 2010-12-17 | ||
PCT/JP2011/079303 WO2012081721A1 (ja) | 2010-12-17 | 2011-12-19 | 通信システム、ノード、パケット転送方法およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130099199A true KR20130099199A (ko) | 2013-09-05 |
KR101500251B1 KR101500251B1 (ko) | 2015-03-06 |
Family
ID=46244811
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137018796A KR101500251B1 (ko) | 2010-12-17 | 2011-12-19 | 통신 시스템, 노드, 패킷 전송 방법 및 프로그램을 기록한 컴퓨터 판독가능 기록 매체 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20130259044A1 (ko) |
EP (1) | EP2654251A1 (ko) |
JP (2) | JP5534033B2 (ko) |
KR (1) | KR101500251B1 (ko) |
CN (1) | CN103262479B (ko) |
WO (1) | WO2012081721A1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101501242B1 (ko) * | 2014-05-26 | 2015-03-12 | 주식회사 파이오링크 | 오픈플로우에 기반하여 네트워크를 병합하기 위한 방법, 장치 및 컴퓨터 판독 가능한 기록 매체 |
KR101501892B1 (ko) * | 2014-05-26 | 2015-03-12 | 주식회사 파이오링크 | 오픈플로우에 기반하여 서비스에 적합한 네트워크를 선택하기 위한 방법, 장치 및 컴퓨터 판독 가능한 기록 매체 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011512393A (ja) * | 2008-02-22 | 2011-04-21 | アセラ・バイオテクノロジーズ・アーベー | 再狭窄の予防または治療のための化合物および方法 |
GB2532055B (en) * | 2014-11-07 | 2016-12-14 | Ibm | Sticky and transient markers for a packet parser |
WO2016140696A1 (en) * | 2015-03-02 | 2016-09-09 | Hewlett Packard Enterprise Development Lp | Controlling an unknown flow inflow to an sdn controller in a software defined network (sdn) |
CN109379286B (zh) * | 2018-12-25 | 2020-12-01 | 中国科学院沈阳自动化研究所 | 一种基于Handle标识的数据转发系统 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6850531B1 (en) * | 1999-02-23 | 2005-02-01 | Alcatel | Multi-service network switch |
US6791980B1 (en) * | 1999-10-28 | 2004-09-14 | Nortel Networks Ltd | System, device, and method for reducing the number of multicast routes maintained in a multicast routing information base |
JP3610913B2 (ja) * | 2001-02-14 | 2005-01-19 | 日本電気株式会社 | ルータとそのパケット交換方法、及びパケット交換プログラム |
KR100425020B1 (ko) * | 2001-11-26 | 2004-03-27 | 주식회사 케이티프리텔 | 명시적 멀티캐스트의 터널링 서비스 방법 및 장치 |
US7881291B2 (en) * | 2005-05-26 | 2011-02-01 | Alcatel Lucent | Packet classification acceleration using spectral analysis |
JP4772053B2 (ja) * | 2005-08-04 | 2011-09-14 | パナソニック株式会社 | 送信装置および送信レート制御方法 |
CN100596094C (zh) * | 2005-12-31 | 2010-03-24 | 华为技术有限公司 | 多点到多点的业务实现方法及交换设备 |
EP2036283B1 (en) * | 2006-06-27 | 2015-10-21 | Thomson Licensing | Method and apparatus for reliably delivering multicast data |
KR100811890B1 (ko) * | 2006-09-29 | 2008-03-10 | 한국전자통신연구원 | 인터넷 시스템에서 서비스 플로우를 보장하는 애니캐스트라우팅 방법 및 장치 |
US20080189769A1 (en) | 2007-02-01 | 2008-08-07 | Martin Casado | Secure network switching infrastructure |
JP4867806B2 (ja) * | 2007-06-15 | 2012-02-01 | 株式会社日立製作所 | 通信システム、サーバ、制御装置および通信装置 |
JP4742072B2 (ja) * | 2007-06-20 | 2011-08-10 | アラクサラネットワークス株式会社 | シェーピング装置およびルータ装置 |
WO2009089761A1 (fr) * | 2008-01-09 | 2009-07-23 | Huawei Technologies Co., Ltd. | Procédé, système pour la mise en oeuvre d'une commutation de suivi de routage de multidiffusion dans des deuxième et troisième couches, et routeur |
US8270290B2 (en) * | 2008-12-19 | 2012-09-18 | Rockstar Bidco, LP | Resilient attachment to provider link state bridging (PLSB) networks |
JP5408243B2 (ja) * | 2009-03-09 | 2014-02-05 | 日本電気株式会社 | OpenFlow通信システムおよびOpenFlow通信方法 |
US8681668B2 (en) * | 2009-10-09 | 2014-03-25 | Media Patents, S.L. | Methods and apparatus for transmitting multicast traffic in a data network |
CN101699886B (zh) * | 2009-10-20 | 2012-02-08 | 清华大学 | 多连接移动节点在代理移动IPv6中的流绑定方法 |
US8750164B2 (en) * | 2010-07-06 | 2014-06-10 | Nicira, Inc. | Hierarchical managed switch architecture |
CN101883055B (zh) * | 2010-07-19 | 2013-11-20 | 福建星网锐捷网络有限公司 | 路由转发表容量扩展实现方法、装置及交换设备 |
CN101917290B (zh) * | 2010-08-12 | 2012-09-05 | 北京星网锐捷网络技术有限公司 | 标签交换路径故障处理方法、装置及网络设备 |
US9887728B2 (en) * | 2011-02-03 | 2018-02-06 | The Board Of Trustees Of The Leland Stanford Junior University | Single channel full duplex wireless communications |
-
2011
- 2011-12-19 EP EP11848531.7A patent/EP2654251A1/en not_active Withdrawn
- 2011-12-19 CN CN201180060672.6A patent/CN103262479B/zh not_active Expired - Fee Related
- 2011-12-19 WO PCT/JP2011/079303 patent/WO2012081721A1/ja active Application Filing
- 2011-12-19 US US13/994,463 patent/US20130259044A1/en not_active Abandoned
- 2011-12-19 JP JP2012548861A patent/JP5534033B2/ja not_active Expired - Fee Related
- 2011-12-19 KR KR1020137018796A patent/KR101500251B1/ko not_active IP Right Cessation
-
2014
- 2014-04-25 JP JP2014091784A patent/JP5725236B2/ja not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101501242B1 (ko) * | 2014-05-26 | 2015-03-12 | 주식회사 파이오링크 | 오픈플로우에 기반하여 네트워크를 병합하기 위한 방법, 장치 및 컴퓨터 판독 가능한 기록 매체 |
KR101501892B1 (ko) * | 2014-05-26 | 2015-03-12 | 주식회사 파이오링크 | 오픈플로우에 기반하여 서비스에 적합한 네트워크를 선택하기 위한 방법, 장치 및 컴퓨터 판독 가능한 기록 매체 |
Also Published As
Publication number | Publication date |
---|---|
CN103262479B (zh) | 2016-08-10 |
JP5534033B2 (ja) | 2014-06-25 |
US20130259044A1 (en) | 2013-10-03 |
CN103262479A (zh) | 2013-08-21 |
EP2654251A1 (en) | 2013-10-23 |
JPWO2012081721A1 (ja) | 2014-05-22 |
JP5725236B2 (ja) | 2015-05-27 |
KR101500251B1 (ko) | 2015-03-06 |
WO2012081721A1 (ja) | 2012-06-21 |
JP2014161098A (ja) | 2014-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2544417B1 (en) | Communication system, path control apparatus, packet forwarding apparatus and path control method | |
US11134012B2 (en) | Communication system, communication device, controller, and method and program for controlling forwarding path of packet flow | |
US9584568B2 (en) | Signal processing apparatus and signal processing method thereof for implementing a broadcast or a multicast communication | |
US8976697B2 (en) | Network status mapping | |
JP5800019B2 (ja) | 通信経路制御システム、経路制御装置、通信経路制御方法および経路制御プログラム | |
US10645006B2 (en) | Information system, control apparatus, communication method, and program | |
JP6248929B2 (ja) | 通信システム、アクセス制御装置、スイッチ、ネットワーク制御方法及びプログラム | |
US10069648B2 (en) | Communication system, control apparatus, communication control method and program | |
KR101500251B1 (ko) | 통신 시스템, 노드, 패킷 전송 방법 및 프로그램을 기록한 컴퓨터 판독가능 기록 매체 | |
JP5858141B2 (ja) | 制御装置、通信装置、通信システム、通信方法及びプログラム | |
JPWO2014112616A1 (ja) | 制御装置、通信装置、通信システム、スイッチの制御方法及びプログラム | |
US20150256455A1 (en) | Communication system, path information exchange apparatus, communication node, forwarding method for path information and program | |
KR101707355B1 (ko) | 통신 노드, 통신 시스템, 제어 장치, 패킷 전송 방법 및 프로그램 | |
JP2017183959A (ja) | 通信システム、コントローラ、方法およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20180220 Year of fee payment: 4 |
|
LAPS | Lapse due to unpaid annual fee |