KR101574167B1 - 네트워크 시스템 및 경로 제어 방법 - Google Patents

네트워크 시스템 및 경로 제어 방법 Download PDF

Info

Publication number
KR101574167B1
KR101574167B1 KR1020137018242A KR20137018242A KR101574167B1 KR 101574167 B1 KR101574167 B1 KR 101574167B1 KR 1020137018242 A KR1020137018242 A KR 1020137018242A KR 20137018242 A KR20137018242 A KR 20137018242A KR 101574167 B1 KR101574167 B1 KR 101574167B1
Authority
KR
South Korea
Prior art keywords
terminal
destination
entry
switches
received packet
Prior art date
Application number
KR1020137018242A
Other languages
English (en)
Other versions
KR20130121921A (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 KR20130121921A publication Critical patent/KR20130121921A/ko
Application granted granted Critical
Publication of KR101574167B1 publication Critical patent/KR101574167B1/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/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/52Multiprotocol routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/72Routing based on the source address
    • 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/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2483Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows

Abstract

본 발명은 오픈 플로우 네트워크에서 "프로액티브형(a proactive type)"을 실현하고, 하드웨어(HW)의 성능 문제를 해결한다. 구체적으로, 오픈 플로우 네트워크에서, 복수의 스위치들 각각은, 자신의 플로우 테이블에 등록된 엔트리의 룰에 부합하는 수신 패킷에 대하여, 엔트리에 정의된 액션에 기초하여 동작을 행한다. 컨트롤러는, 복수의 스위치로 이루어지는 네트워크의 물리 토폴로지에 기초하여 계산된 경로에 고유한 식별자가 룰로서 설정되고, 미리 결정된 출력 포트로부터의 출력이 액션으로서 설정되는 엔트리를, 복수의 스위치간에 있어서 통신이 개시되기 전에, 복수의 스위치 각각에 등록한다.

Description

네트워크 시스템 및 경로 제어 방법{NETWORK SYSTEM AND METHOD OF CONTROLLING PATH}
본 발명은, 네트워크 시스템에 관한 것이다. 더욱 구체적으로, 본 발명은 네트워크 시스템의 경로 제어 방법에 관한 것이다.
외부 컨트롤러(컨트롤 플레인(plane))로부터 스위치나 단말기 등(유저 플레인)을 제어하는 방식을 CU(C: 컨트롤 플레인/U: 유저 플레인) 분리형 아키텍처라 부른다. 이러한 CU 분리형 아키텍처에 기초하는 구성을 갖는 네트워크를 CU 분리형 네트워크라 부른다.
CU 분리형 네트워크의 일례로서, 오픈 플로우(OpenFlow) 기술이 적용되는 오픈 플로우 네트워크가 제공된다. 오픈 플로우 기술은 컨트롤러로부터 스위치를 제어함으로써 네트워크의 경로 제어를 행한다. 여기서, 오픈 플로우 네트워크는 일례에 불과하다.
[오픈 플로우 네트워크의 설명]
오픈 플로우 네트워크에서는, OFC(OpenFlow Controller) 등의 컨트롤러가, OFS(OpenFlow Switch) 등의 스위치의 플로우 테이블(flow table)을 조작하는 것에 의해 스위치의 거동(behavior)을 제어한다.
플로우 테이블은, 미리 결정된 매칭 조건(룰)에 부합하는 패킷(통신 데이터)에 대하여 행해야 할 미리 결정된 처리 내용(액션)을 정의한 엔트리(entry)가 등록된 테이블이다. 패킷은, 프레임으로 대체될 수 있다. 룰에 부합하는 패킷 군(패킷 계열)을 플로우(flow)라 부른다.
플로우의 룰은, 패킷의 각 프로토콜 계층의 헤더 영역(field)에 포함되는 수신처 어드레스(DA: Destination Address), 송신원 어드레스(SA: Source Address), 수신처 포트(DP: Destination Port), 송신원 포트(SP: Source Port) 중 임의의 것 또는 모두의 다양한 조합을 이용하는 것에 의해 정의되고, 구별가능하다. 여기서, 상기의 어드레스들은, MAC 어드레스(Media Access Control Address) 및 IP 어드레스(Internet Protocol Address)를 포함한다. 또한, 입구 포트(Ingress Port)의 정보가 플로우의 룰로 사용가능할 수 있다.
플로우의 액션은, 통상적으로, 미리 결정된 전송처에의 패킷 전송이다. 물론, 플로우의 액션으로서, 패킷 파기가 지정될 수 있다.
오픈 플로우 네트워크에서는, 통상적으로, 스위치는, 대응하는 엔트리가 없는 패킷을 수신했을 경우, 컨트롤러에 대하여, 그 패킷에 관한 문의(엔트리 요구)를 송신한다. 통상적으로, 스위치는, 그 패킷에 관한 문의로서, 그 패킷을 컨트롤러에 전송한다.
오픈 플로우 네트워크에서는, 통상적으로, 컨트롤러는, 시큐어 채널(Secure Channel) 접속에 의해, 컨트롤러의 관리하에 있는 스위치들에 접속되어 있다. 컨트롤러의 관리하에 있는 스위치로부터 패킷에 관한 문의를 받았을 경우, 컨트롤러는 그 패킷 군(플로우)의 경로(pass)를 계산하고, 이 경로에 기초하여, 그 스위치의 플로우 테이블에, "그 패킷 군(플로우)을 미리 결정된 전송처에 전송한다"라는 엔트리를 등록한다. 여기서, 컨트롤러는, 그 엔트리를 플로우 테이블에 등록하기 위한 제어 메시지를, 스위치에 송신한다.
오픈 플로우 기술의 상세에 대해서는, 비특허 문헌 1 및 2에 기재되어 있다.
"The OpenFlow Switch Consortium" <http://www.openflowswitch.org/> "OpenFlow Switch Specification Version 1.0.0 (WireProtocol0x01) December 31, 2009" <http://www.openflowswitch.org/documents/openflow-spec-v1.0.0.pdf>
오픈 플로우 기술에 있어서, 스위치의 플로우 테이블에 엔트리를 등록하는 방식은, 크게 "프로액티브형(Proactive type)"과 "리액티브형(Reactive type)"의 2개의 카테고리로 나눌 수 있다.
"프로액티브형"에서는, 컨트롤러가 "사전에"(데이터 통신이 개시되기 전에) 미리 결정된 패킷 군(플로우)의 경로를 계산하고, 스위치의 플로우 테이블에 엔트리를 등록한다. 즉, 여기에서 "프로액티브형"이란 용어는, 컨트롤러가 자발적으로 행하는 "사전 엔트리 등록"을 가리킨다.
"리액티브형"에서는, 컨트롤러가 "스위치로부터 최초의 패킷(1st packet)(대응하는 엔트리가 없는 새로운 패킷)에 관한 문의를 받았을 때에" 그 패킷 군(플로우)의 경로를 계산하고, 스위치의 플로우 테이블에 엔트리를 등록한다. 즉, 여기에서 "리액티브형"이란 용어는, 실제의 데이터 통신시에, 컨트롤러가 스위치로부터의 문의에 응답하여 행하는 "리얼타임 엔트리 등록"을 가리킨다.
오픈 플로우 네트워크에서는, 기본적으로, 컨트롤러가 스위치로부터 최초의 패킷에 관한 문의를 받았을 때에 수신 패킷에 관한 엔트리를 등록하는 "리액티브형"이 주로 이용된다.
그러나, 실제의 하드웨어(HW)에서는, 플로우 테이블의 처리 빈도를 경감해 성능 문제를 해결하기 위해서는, "프로액티브형"이 바람직하다. 예를 들어, 대량의 최초의 패킷이 컨트롤러에 도착해도 컨트롤러가 최초의 패킷들을 처리할 수 있도록 하기 위해서는, "프로액티브형"이 다른 것보다 오히려 바람직하다. 그러나, 실제로는, 완전한 프로액티브형이 적용되면 엔트리수가 방대해지기 때문에, 리액티브형을 부분적으로 적용하여, 엔트리수의 제약을 억제하는 것이 생각된다.
또한, 프로액티브형이 적용되는 경우, 통신이 개시되기 전에 플로우들이 정의되기 때문에, Nimda 등의 바이러스에 의해 생기는 대량 플로우 발생 문제나, 불분명한 패킷에 의해 생기는 부정 액세스(unauthorized access) 등이 회피될 수 있다는 것이 생각된다.
따라서, 오픈 플로우 네트워크에 있어서, "프로액티브형"을 실현하기 위한 구체적인 방식이 요청된다.
본 발명에 따른 네트워크 시스템은, 복수의 스위치 및 컨트롤러를 포함한다. 복수의 스위치 각각은, 자신의 플로우 테이블에 등록된 엔트리의 룰에 부합하는 수신 패킷에 대하여, 엔트리에 정의된 액션에 기초한 동작을 행한다. 컨트롤러는, 복수의 스위치로 이루어지는 네트워크의 물리 토폴로지에 기초하여 계산된 경로에 고유한 식별자가 룰로서 설정되고 미리 결정된 출력 포트로부터의 출력이 액션으로서 설정된 엔트리를, 복수의 스위치간에 있어서 통신이 개시되기 전에, 복수의 스위치 각각에 등록한다.
본 발명에 따른 경로 제어 방법에서는, 복수의 스위치 각각이, 자신의 플로우 테이블에 등록된 엔트리의 룰에 부합하는 수신 패킷에 대하여, 엔트리에 정의된 액션에 기초한 동작을 행한다. 컨트롤러는, 복수의 스위치로 이루어지는 네트워크의 물리 토폴로지에 기초하여 계산된 경로에 고유한 식별자가 룰로서 설정되고 미리 결정된 출력 포트로부터의 출력이 액션으로서 설정된 엔트리를, 복수의 스위치간에 있어서 통신이 개시되기 전에, 복수의 스위치 각각에 등록한다.
본 발명에 따른 프로그램은, 상기의 경로 제어 방법에 있어서의 컨트롤러의 동작을, 컴퓨터에 실행시키기 위한 프로그램이다. 여기서, 본 발명에 따른 프로그램은, 기억 장치나 기억 매체에 저장될 수 있다.
이것은 오픈 플로우 네트워크에 있어서, "프로액티브형"을 실현하고, 하드웨어(HW) 성능 문제를 해결할 수 있다.
도 1은 본 발명에 따른 네트워크 시스템의 구성 예를 도시하는 도면이다.
도 2는 토폴로지 검지 시의 처리를 설명하기 위한 도면이다.
도 3은 스테이션(station) 검지(ARP 요구 이용) 시의 처리를 설명하기 위한 도면이다.
도 4는 스테이션 검지(ARP 응답 이용) 시의 처리를 설명하기 위한 도면이다.
도 5는 엔트리 등록이 완료된 후의 데이터 통신 시의 처리를 설명하기 위한 도면이다.
도 6은 컨트롤러에의 패킷의 문의 시의 처리를 설명하기 위한 도면이다.
본 발명은, CU 분리형 네트워크를 대상으로 삼고 있다. 여기에서는, CU 분리형 네트워크들 중 하나인 오픈 플로우 네트워크가 예로서 설명될 것이다. 그러나, 실제로는, CU 분리형 네트워크들은 오픈 플로우 네트워크로 한정되지 않는다.
<제1 실시예>
이하에, 본 발명의 제1 실시예에 대해서 첨부된 도면을 참조하여 설명한다.
[기본 구성]
도 1에 도시한 바와 같이, 본 발명에 따른 네트워크 시스템은, 스위치들(10) (10-i, i=1∼n: n은 스위치 대수) 및 컨트롤러(20)를 포함한다.
스위치들(10)(10-i, i=1∼n) 및 컨트롤러(20)는, 오픈 플로우 네트워크를 구성한다. 스위치들(10)(10-i, i=1∼n)은, 오픈 플로우 네트워크에 있어서의 노드(node)들이다.
[스위치]
스위치들(10)(10-i, i=1∼n) 각각은, 내부에 플로우 테이블을 포함하고, 컨트롤러(20)에 의해 플로우 테이블에 등록된 엔트리에 기초하여, 패킷을 전송한다.
[컨트롤러]
컨트롤러(20)는, 토폴로지(topology)(네트워크 접속 구성)의 검지를 행하여, 네트워크를 구성하는 스위치들(10)(10-i, i=1∼n)을 검지하고, 각 플로우에 대한 경로를 계산한다. 이에 따라 컨트롤러(20)는, 네트워크를 구성하는 모든 스위치의 식별 정보(스위치 ID, MAC 어드레스 등) 및 스위치들 각각의 접속 구성을 인식하고, 각 스위치의 다음 단의 스위치(next switch)를 특정한다.
여기에서는, 컨트롤러(20)는, 통신이 개시되기 전에, 각 스위치의 스위치 ID(64 비트)와 일대일 대응에 의해 독자적으로 정의된 노드 ID(16 비트)를 상관시킨다(correlate). 여기서, 비트수는 일례에 불과하다. 즉, 컨트롤러(20)는, 각 스위치에 노드 ID를 할당한다. 또한 컨트롤러(20)는, 단말기 접속 가능한 에지 스위치(edge switch)간의 경로를 계산하고, 그 경로 상의 중계용 스위치(relay switch)인 코어 스위치(Core) 각각의 플로우 테이블에, "수신 패킷의 수신처 정보의 영역의 적어도 일부에 미리 결정된 노드 ID가 기재되어 있을 때, 그 수신 패킷을 (미리 결정된 출력 포트로부터) 다음 단의 스위치에 전송한다"를 표시하는 코어 엔트리(중계용 엔트리)를 등록한다. 즉, 코어 스위치는, 매칭 조건(룰)으로서, 수신 패킷의 수신처 정보의 영역에 기재된 노드 ID에 기초하여 전송이 실행될 수 있는지의 가부를 판단한다. 물론, 컨트롤러(20)는, 노드 ID 대신에, 수신 패킷의 수신처 정보의 영역에 기재된 다른 정보를 매칭 조건(룰)으로서 지정할 수 있다.
그런데, 실제로는, 컨트롤러(20)는, 코어 스위치(Core) 각각의 플로우 테이블에, "(노드 ID에 상관없이,) 그 수신 패킷을 (미리 결정된 출력 포트로부터) 다음 단의 스위치에 전송한다"를 표시하는 코어 엔트리를 등록할 수 있다. 이 경우, 코어 스위치(Core)는, 무조건, 수신 패킷을 다음 단의 스위치에 전송한다.
또한 컨트롤러(20)는, 스테이션 검지(단말기 검지)를 행하여, 단말기들(30) (30-j, j=1∼m: m은 단말기 대수)을 검지하고, 단말기들의 수신처 정보(MAC 어드레스 등) 및 접속 구성을 인식하고, 단말기와 유저 ID를 일대일 대응으로 상관시킨다. 즉, 컨트롤러(20)는, 각 단말기에 유저 ID를 할당한다. 여기서, 컨트롤러(20)는, 단말기들(30)(30-j, j=1∼m)에 접속된 에지 스위치들을 검지한다.
또한 컨트롤러(20)는, 통신이 개시되기 전에, 에지 스위치의 플로우 테이블에, "수신 패킷의 수신처 정보의 영역의 적어도 일부에, 그 에지 스위치의 노드 ID와, 제어하의 단말기의 유저 ID가 기재되어 있을 때, 그 수신 패킷의 수신처 정보를 수신처가 그 단말기인 것으로 되돌리고, 그 수신 패킷을 그 단말기에 전송한다"를 표시하는 출구 엔트리(egress entry)(출력용 엔트리)를 등록한다.
여기에서, 제어하의 단말기의 유저 ID가 매칭 조건(룰)인 이유는, 제어하의 복수의 단말기가 존재할 수 있기 때문이다. 또한 에지 스위치의 노드 ID와 단말기의 유저 ID의 조합이 매칭 조건(룰)이기 때문에, 에지 스위치간에서 중복된 유저 ID가 사용될 수 있다. 그러나, 동일한 에지 스위치의 제어하의 각 단말기에 대해서는, 중복된 유저 ID가 사용될 수 없다.
또한 컨트롤러(20)는, 입력측 에지 스위치(Ingress)의 플로우 테이블에, "미리 결정된 패킷을 수신했을 때, 수신처 정보를 검색 키로서 사용하고, 수신 패킷의 수신처 정보의 영역의 적어도 일부에, 출력측 에지 스위치(Egress)의 노드 ID와, 수신처 단말기의 유저 ID를 기재하고, 그 수신 패킷을 다음 단의 스위치에 전송한다"를 표시하는 입구 엔트리(ingress entry)(입력용 엔트리)를 등록한다. 여기에서, 전술한 "미리 결정된 패킷"은, "미리 결정된 매칭 조건(룰)에 부합하는 패킷"으로 대체될 수 있다. 본 발명에서는, 입력측 에지 스위치(Ingress)가 최초로 플로우를 특정하기 때문에, 입구 엔트리는, 일반적인 오픈 플로우와 유사한 패킷 매칭 룰과, 부합하는 패킷에 대한 전술한 액션을 정의한다.
[입구 엔트리 등록 타이밍]
그런데, 컨트롤러(20)가 입력측 에지 스위치의 플로우 테이블에 엔트리를 등록하는 타이밍으로서는, "통신이 개시되기 전"(사전 등록)과, "실제로 통신이 수행될 때"(리얼타임 등록)의 2가지 경우가 생각된다.
"통신이 개시되기 전"(사전 등록)의 경우, 컨트롤러(20)는, 통신이 개시되기 전에, 미리 결정된 패킷의 전송처인 단말기(수신처 후보 단말기)를 사전에 결정한다. 그 다음, 컨트롤러(20)는, 통신이 개시되기 전에, 입력측 에지 스위치일 수 있는 에지 스위치의 플로우 테이블에, "미리 결정된 패킷을 수신했을 때, 수신처 정보를 검색 키로서 사용하고, 수신 패킷의 수신처 정보의 영역의 적어도 일부에, 그 수신처 후보 단말기에 접속된 에지 스위치의 노드 ID와, 수신처 후보 단말기의 유저 ID를 기재하고, 그 수신 패킷을 다음 단의 스위치에 전송한다"를 표시하는 입구 엔트리를 등록한다. 본 실시예에서는, 이 경우에 대해서 설명한다.
"실제로 통신이 수행될 때"(리얼타임 등록)의 경우, 컨트롤러(20)는, 입력측 에지 스위치가 송신원 단말기로부터 패킷을 수신하고 그 다음에 컨트롤러(20)가 그 수신 패킷에 관한 문의를 수신하면, 그 수신 패킷 군(플로우)의 경로를 계산한다. 그 다음, 이 경로에 기초하여, 컨트롤러(20)는 그 입력측 에지 스위치의 플로우 테이블에, "미리 결정된 패킷을 수신했을 때, 수신처 정보를 검색 키로서 사용하고, 수신 패킷의 수신처 정보의 영역의 적어도 일부에, 그 수신처 후보 단말기에 접속된 에지 스위치의 노드 ID와, 수신처 후보 단말기의 유저 ID를 기재하고, 그 수신 패킷을 다음 단의 스위치에 전송한다"를 표시하는 입구 엔트리를 등록한다. 이 경우에 대해서는, 제2 실시예에서 설명한다.
[경로의 지정]
또한 각 스위치의 다음 단에 복수의 스위치가 존재하는 경우(복수의 경로가 존재하는 경우), 컨트롤러(20)는, 각 경로에 대해 용장 ID를 정의한다. 다음 단의 스위치 각각은 각각의 경로 상에 존재하기 때문에, 다음 단의 스위치 각각은 각각의 용장 ID와 상관된다. 컨트롤러(20)는, 코어 스위치(Core)의 플로우 테이블에, "수신 패킷의 수신처 정보의 영역의 적어도 일부에 (미리 결정된 노드 ID와) 용장 ID가 기재되어 있을 때, 그 수신 패킷을 그 용장 ID에 대응하는 다음 단의 스위치에 전송한다"를 표시하는 코어 엔트리를 등록한다. 또한 컨트롤러(20)는, 입력측 에지 스위치의 플로우 테이블에, "미리 결정된 패킷을 수신했을 때, 수신처 정보를 검색 키로서 사용하고, 수신 패킷의 수신처 정보의 영역의 적어도 일부에, 출력측 에지 스위치의 노드 ID, 용장 ID, 및 수신처 단말기의 유저 ID를 기재하고, 그 수신 패킷을 다음 단의 스위치에 전송한다"를 표시하는 입구 엔트리를 등록한다. 용장 ID는, 출력측 에지 스위치의 노드 ID의 일부일 수 있다. 예를 들어, 노드 ID의 영역의 선두 또는 말미(ending)의 몇 비트가, 용장 ID의 영역으로서 사용될 수 있다.
[하드웨어의 예시]
스위치들(10)(10-i, i=1∼n) 각각의 예로서, 네트워크 스위치, 라우터, 프록시(proxy), 게이트웨이, 파이어월(firewall), 로드 밸런서(load balancer), 패킷 셰이퍼(packet shaper), SCADA(Supervisory Control And Data Acquisition), 게이트키퍼(gatekeeper), 기지국(base station), 액세스 포인트(AP: Access Point), 통신 위성(CS: Communication Satellite), 복수의 통신 포트를 갖는 계산기(computing machine) 등이 생각될 수 있다. 또한 스위치들(10)(10-i, i=1∼n) 각각은, 물리 머신 상에 구성된 가상 스위치일 수 있다.
컨트롤러(20) 및 단말기들(30)(30-j, j=1∼m) 각각의 예로서, PC(퍼스널 컴퓨터), 어플라이언스(appliance), 씬(thin) 클라이언트 단말기/서버, 워크스테이션, 메인프레임, 수퍼컴퓨터(supercomputer) 등이 상정될 수 있다. 또한 컨트롤러(20) 및 단말기들(30)(30-j, j=1∼m) 각각은, 물리 머신 상에 구성된 가상 머신(VM)일 수 있다.
그런데, 단말기들(30)(30-j, j=1∼m) 각각은, 휴대 전화기, 스마트폰, 스마트북, 자동차 네비게이션 시스템, 휴대형 비디오 게임기, 가정용 비디오 게임기, 휴대형 음악 플레이어, 핸디 단말기(handy terminal), 개지트(gadget)(전자 기기), 쌍방향 텔레비전, 디지털 튜너, 디지털 레코더, 정보 가전(information home appliance), OA(Office Automation) 기기 등일 수 있다. 또한 단말기들(30)(30-j, j=1∼m) 각각은, 차량, 선박, 및 항공기 등의 이동체에 제공될 수 있다.
여기서는 도시되지 않았지만, 스위치들(10)(10-i, i=1∼n), 컨트롤러(20), 및 단말기들(30)(30-j, j=1∼m) 각각은, 프로그램에 기초하여 구동되어 미리 결정된 처리를 실행하는 프로세서, 그 프로그램 및 각종 데이터를 기억하는 메모리, 및 네트워크에 접속하기 위한 통신 인터페이스에 의해 실현된다.
상기의 프로세서의 예로서, CPU(Central Processing Unit), 마이크로프로세서(microprocessor), 마이크로컨트롤러, 특정 기능을 갖는 IC(Integrated Circuit) 등이 생각될 수 있다.
상기의 메모리의 예로서, RAM(Random Access Memory), ROM(Read Only Memory), EEPROM(Electrically Erasable and Programmable Read Only Memory) 및 플래시 메모리 등의 반도체 기억 장치, HDD(Hard Disk Drive) 및 SSD(Solid State Drive) 등의 보조 기억 장치, DVD(Digital Versatile Disk) 등의 제거가능한 디스크(removable disk)나, SD 메모리 카드(Secure Digital memory card) 등의 기록 매체 등이 생각될 수 있다.
그런데, 상기의 프로세서 및 상기의 메모리는, 통합될 수 있다. 예를 들어, 최근에는, 마이크로컴퓨터 등의 싱글 칩 통합(single chip integration)이 향상되었다. 따라서, 전자 기기에 설치되는 1칩 마이크로컴퓨터가, 프로세서 및 메모리를 포함하고 있는 경우가 생각될 수 있다.
상기의 통신 인터페이스의 예로서, 네트워크 통신에 대응한 기판(마더보드, I/O 기판), 칩 등의 반도체 집적 회로, NIC(Network Interface Card) 등의 네트워크 어댑터 및 유사한 확장 카드, 안테나 등의 통신 장치, 커넥터 등의 통신 포트가 생각될 수 있다.
또한 네트워크의 예로서, 인터넷, LAN(Local Area Network), 무선LAN(Wireless LAN), WAN(Wide Area Network), 백본(Backbone), 케이블 텔레비전(CATV) 회선, 고정 전화망, 휴대 전화망, WiMAX(IEEE 802.16a), 3G(3rd Generation), 전용선(lease line), IrDA(Infrared Data Association), Bluetooth(등록상표), 시리얼 통신 회선, 데이터 버스 등이 생각될 수 있다.
스위치들(10)(10-i, i=1∼n), 컨트롤러(20) 및 단말기들(30)(30-j, j=1∼m) 각각의 내부 구성 요소들은, 모듈, 컴포넌트, 전용 디바이스, 또는 이것들의 활성화(호출) 프로그램일 수 있다.
그러나, 실제로는, 위의 구성들은 이들 예들로 한정되지 않는다.
도 2를 참조하여, 토폴로지 검지 시의 처리에 대해서 설명한다.
컨트롤러(20)는, LLDP(Link Layer Discovery Protocol)를 이용하는 것에 의해, 네트워크의 물리 토폴로지를 검지한다. LLDP는, 제어 프레임들을 송수신하는 것에 의해 정기적으로 인접하는 장치들의 장치 정보를 수집하기 위한 프로토콜이다.
사전에, 관리자 단말기 등은, 스위치들(10)(10-i, i=1∼n) 각각에, 내부/외부 구성(설정 정보)을 설정한다. 또는, 컨트롤러(20)가, 시큐어 채널 접속을 이용함으로써, 제어하에 있는 스위치들(10)(10-i, i=1∼n) 각각에, 내부/외부 구성을 설치(install)할 수 있다.
"내부 구성(inside configuration)"은, 네트워크의 내부와 통신하기 위한 설정 정보이다. "외부 구성(outside configuration)"은, 네트워크의 외부와 통신하기 위한 설정 정보이다.
스위치들(10)(10-i, i=1∼n) 각각은, 내부/외부 구성을, 포트의 스테이터스(status) 정보(PortStat)로서 저장한다. 디폴트(default)로, 스위치들(10)(10-i, i=1∼n) 각각은, 내부 구성을, 포트의 스테이터스 정보(PortStat)로서 저장한다.
사전에 스위치들(10)(10-i, i=1∼n) 각각이 내부/외부의 설정을 갖기 때문에, 컨트롤러(20)는 토폴로지 검지 속도를 증가시킬 수 있다.
컨트롤러(20)는, 토폴로지를 검지하고, 스위치들(10)(10-i, i=1∼n) 각각에 포함된 포트의 스테이터스 정보(PortStat)를 수집하고, 스위치들(10)(10-i, i=1∼n) 각각이 포함하는 포트가 내부 또는 외부인지를 판단한다.
컨트롤러(20)는, 포트의 스테이터스 정보에 있어서, 내부로서 명시적으로 설정되어 있는 포트를, "내부 포트(inside port)"로서 인식한다. 또한, 컨트롤러(20)는, 포트의 스테이터스 정보에 있어서, 외부로서 명시적으로 설정되어 있는 포트를, "외부 포트(outside port)"로서 인식한다.
컨트롤러(20)는, 내부 포트 및 외부 포트로서 명시적으로 설정되어 있지 않은 포트(미설정 포트 등)에 대하여, LLDP의 제어 프레임을 송신한다. 그 다음에, 컨트롤러(20)는, LLDP의 제어 프레임에 대한 응답에 기초하여 네트워크의 물리 토폴로지를 검지하고, 토폴로지 정보를 작성한다.
이 때, 컨트롤러(20)는, 제어하에 있는 스위치들(10)(10-i, i=1∼n) 각각의 스위치 ID를 취득하고, 스위치들(10)(10-i, i=1∼n) 각각의 스위치 ID와, 노드 ID를 상관시킨다. 이 때, 외부 포트를 포함하는 스위치(에지 스위치)의 스위치 ID만이 노드 ID와 상관될 수 있다. 여기에서는, 스위치 ID로서, "DPID: #1∼#6"이 도시된다. 실제로는, "DPID: #1∼#6"을 변경 없이 노드 ID로서 사용할 수 있다.
또한 노드 ID는, 서브 노드 ID 및 용장 ID를 포함한다. 서브 노드 ID는, 스위치를 특정하기 위한 노드 ID의 실질적인 본체이다. 서브 노드 ID는, 그 자체로 스위치를 특정하는 것이 가능한 식별 정보일 수 있다. 또는, 서브 노드 ID는, 용장 ID와 조합됨으로써 스위치를 고유하게 특정하는 것이 가능한 노드 ID를 구성하는 정보일 수 있다. 용장 ID는, 경로를 특정하기 위한 식별 정보이다. 스위치들(10)(10-i, i=1∼n) 각각은, 용장 ID에 기초하여 다음 단의 스위치에 패킷을 전송하기 위한 포트를 결정하고, 그 포트에 수신 패킷을 전송할 수 있다. 실제로는, 용장 ID는, 노드 ID와의 관련성이 유지되고, 용장 ID로서 특정이 가능하면, 다른 영역에 저장될 수 있다.
컨트롤러(20)는, 외부 포트를 포함하는 스위치들(에지 스위치들) 간의 경로를 계산하고, 그 경로 상의 각 코어 스위치(Core)의 플로우 테이블에, "수신 패킷의 수신처 정보의 영역의 적어도 일부에 미리 결정된 노드 ID(외부 포트를 포함하는 에지 스위치의 노드 ID)가 기재되어 있을 때, 그 수신 패킷을 그 경로의 다음 단의 스위치에 전송한다"를 표시하는 코어 엔트리를 등록한다. 즉, 코어 스위치는, 수신 패킷의 수신처 정보의 영역에 기재된 노드 ID를 매칭 조건(룰)으로서 이용함으로써 패킷을 전송할지의 여부를 판단한다. 물론, 컨트롤러(20)는, 수신 패킷의 수신처 정보의 영역에 기재된 다른 정보(VTN ID, 유저 ID 등)를 매칭 조건(룰)으로서 지정할 수 있다.
그런데, 실제로는, 컨트롤러(20)는, 코어 스위치(Core) 각각의 플로우 테이블에, "(노드 ID에 상관없이,) 그 수신 패킷을 (미리 결정된 출력 포트로부터) 다음 단의 스위치에 전송한다"를 표시하는 코어 엔트리를 등록할 수 있다. 이 경우, 코어 스위치(Core)는, 무조건, 수신 패킷을 다음 단의 스위치에 전송한다. 입력측 에지 스위치(Ingress) 및 출력측 에지 스위치(Egress)가 수신 패킷을 전송할지의 여부를 판단한다.
여기에서는, 컨트롤러(20)는, 외부 포트를 포함하는 모든 스위치간의 경로를 계산하고, 그 경로 상의 각 코어 스위치(Core)의 플로우 테이블에, 상기의 코어 엔트리를 등록한다.
[엔트리의 구성예]
이하에, 엔트리의 구성예에 대해서 설명한다.
엔트리는, "Port", "DA"(Destination Address), "SA"(Source Address), "OPort"(Output Port), "Mod"(Modify) 등의 데이터 저장 영역들을 포함한다.
"Port"는, 수신 패킷의 입력 포트를 나타내는 정보의 저장 영역이다. "DA"는, 수신 패킷의 수신처 정보의 저장 영역이다. "SA"는, 수신 패킷의 송신원 정보의 저장 영역이다. "OPort"는, 수신 패킷의 출력 포트를 나타내는 정보의 저장 영역이다. "Mod"는, 수신 패킷에 대하여 행하는 처리를 정의한 정보의 저장 영역이다.
"Port", "DA", 및 "SA"는, 매칭 조건(룰)에 대응한다. 또한 "OPort" 및 "Mod"는, 처리 내용(액션)에 대응한다.
"DA"에 저장된 "ID군"은, "노드 ID", "VTN ID", 및 "유저 ID"와 같은 정보이다. "노드 ID"는, 출력측 에지 스위치가 되는 스위치(외부 포트를 포함하는 노드)를 특정하기 위한 식별 정보의 저장 영역이다. "VTN ID"는, VTN(Virtual Tenant Network) 등의, 외부 포트를 포함하는 스위치들 간의 경로를 통과하는 패킷 군(플로우)이 속하는 VN(Virtual Network)의 식별 정보의 저장 영역이다. "유저 ID"는, 수신처가 되는 단말기(외부 포트를 갖는 스위치에 접속된 또는 접속될 단말기)를 특정하기 위한 유저 ID의 식별 정보의 저장 영역이다. 단말기와 유저 ID를 상관시키는 것은, 이하에 설명하는 "스테이션 검지"를 이용함으로써 실행될 것이다.
[스테이션 검지]
도 3 및 도 4를 참조하여, 스테이션 검지 시의 처리에 대해서 설명한다.
컨트롤러(20)는, 단말기에 의해 어드레스 해결을 위해 송신되는 ARP(Address Resolution Protocol)의 제어 프레임을 이용하여, 스테이션 검지를 행한다.
그런데, ARP의 제어 프레임은 일례에 불과하다. 예를 들어, DHCP(Dynamic Host Configuration Protocol)의 제어 프레임이 이용될 수 있다. 또한, 본 실시예는 제어 프레임으로 한정되지 않는다.
여기에서는, 단말기(30-1) 및 단말기(30-2)를, 각각, "단말기A" 및 "단말기B"라고 한다.
(1) ARP_Req(ARP 요구)를 이용
도 3에 도시한 바와 같이, 단말기A가 단말기B와 통신할 때에, 단말기B의 MAC 어드레스를 모르고, 단말기B의 IP 어드레스를 알고 있을 경우, 단말기A는, 단말기B의 어드레스를 해결하기 위한 ARP_Req(ARP 요구)를 브로드캐스트(broadcast)에 의해 송신한다.
단말기A가 접속된 에지 스위치(10-1)는, 시큐어 채널 접속을 통해, 컨트롤러(20)에 ARP_Req(ARP 요구)를 전송한다. 이 때, 컨트롤러(20)는, ARP 프록시로서 동작한다.
컨트롤러(20)는, 단말기A가 접속된 에지 스위치(10-1)로부터 ARP_Req(ARP 요구)를 수신했을 때, ARP_Req(ARP 요구)의 송신원 정보로부터 단말기A의 MAC 어드레스(및 IP 어드레스)를 취득하고, 단말기A에 유저 ID를 할당한다. 즉, 컨트롤러(20)는, 단말기A의 MAC 어드레스(및 IP 어드레스)를 유저 ID와 상관시킨다.
컨트롤러(20)는, 단말기A가 접속된 에지 스위치(10-1)의 플로우 테이블에, "수신 패킷의 수신처 정보의 영역의 적어도 일부에 (그 에지 스위치의 노드 ID와) 제어하의 단말기A의 유저 ID가 기재되어 있을 때, 그 수신 패킷의 수신처 정보를 수신처가 단말기A의 MAC 어드레스인 것으로 되돌리고, 그 수신 패킷을 단말기A의 MAC 어드레스로 전송한다"를 표시하는 출구 엔트리를 등록한다.
컨트롤러(20)는, ARP 프록시로서, 타겟(target)이 되는 단말기B의 어드레스 해결을 하기 위해서, 시큐어 채널 접속을 통해, 제어하에 있는 스위치들(10)(10-i, i=1∼n) 각각에 대하여, ARP_Req(ARP 요구)를 브로드캐스트에 의해 송신한다. 이 때, ARP_Req(ARP 요구)의 송신원 MAC 어드레스는, 단말기A의 MAC 어드레스이다.
단말기B가 접속된 에지 스위치(10-6)는, 브로드캐스트에 의해 송신된 ARP_Req(ARP 요구)를 단말기B에 전송한다.
여기에서는, 설명의 간략화 때문에, 단말기B만을 수신처 단말기로서 상정하고 있다. 그러나, 다른 수신처 단말기들이 접속된 에지 스위치들에 대해서도, 상기와 마찬가지의 처리가 수행된다.
(2) ARP_Rep(ARP 응답)을 이용
도 4에 도시한 바와 같이, 단말기B는, ARP_Req(ARP 요구)에 대한 응답으로서, 수신처가 단말기A인 ARP_Rep(ARP 응답)을 송신한다.
단말기B가 접속된 에지 스위치(10-6)는, 시큐어 채널 접속을 통해, 컨트롤러(20)에 ARP_Rep(ARP 응답)을 전송한다. 이 때, 컨트롤러(20)는, ARP 프록시로서 동작한다.
컨트롤러(20)는, 단말기B가 접속된 에지 스위치(10-6)로부터 ARP_Rep(ARP 응답)을 수신했을 때, ARP_Rep(ARP 응답)의 송신원 정보로부터 단말기B의 MAC 어드레스(및 IP 어드레스)를 취득하고, 단말기B에 유저 ID를 할당한다. 즉, 컨트롤러(20)는, 단말기B의 MAC 어드레스(및 IP 어드레스)를 유저 ID와 상관시킨다.
컨트롤러(20)는, 단말기B가 접속된 에지 스위치(10-6)의 플로우 테이블에, "수신 패킷의 수신처 정보의 영역의 적어도 일부에 (그 에지 스위치의 노드 ID와) 제어하의 단말기B의 유저 ID가 기재되어 있을 때, 그 수신 패킷의 수신처 정보를 수신처가 단말기B의 MAC 어드레스인 것으로 되돌리고, 그 수신 패킷을 단말기B의 MAC 어드레스로 전송한다"를 표시하는 출구 엔트리를 등록한다.
이 시점에서, 컨트롤러(20)는, 단말기A와 단말기B 사이의 통신이 실행될 수 있다고 판단하고, 단말기A가 접속된 에지 스위치(10-1)의 플로우 테이블에, "수신처가 단말기B인 패킷을 수신했을 경우, 그 수신 패킷의 수신처 정보의 영역의 적어도 일부에, ID군(단말기B가 접속된 에지 스위치의 노드 ID, 그 플로우의 VTN ID, 단말기B의 유저 ID)을 기재하고, 그 수신 패킷을 다음 단의 스위치에 전송한다"를 표시하는 입구 엔트리를 등록할 수 있다. 이 엔트리 등록 방식은 "프로액티브형"(사전에 입구 엔트리를 등록하는 방식)이다.
컨트롤러(20)는, ARP 프록시로서, 단말기A에 ARP_Rep(ARP 응답)을 전송할 때, 시큐어 채널 접속을 통해, 단말기A가 접속된 에지 스위치(10-1)에 대하여, ARP_Rep(ARP 응답)을 송신한다. 이 때, ARP_Rep(ARP 응답)의 송신원MAC 어드레스는, 단말기B의 MAC 어드레스이다.
단말기A가 접속된 에지 스위치(10-1)는, 컨트롤러(20)로부터 수신한 ARP_Rep(ARP 응답)을 단말기A에 전송한다.
단말기A는, ARP_Req(ARP 요구)에 대한 응답으로서 수신한 ARP_Rep(ARP 응답)로부터, 단말기B의 MAC 어드레스를 취득한다.
[엔트리 등록 완료 후의 데이터 통신]
도 5를 참조하여, 엔트리 등록 완료 후의 스위치간에서의 IP 패킷 등의 통신의 처리에 대해서 설명한다.
이 시점에서는, 스위치간의 모든 스위치에 대하여, 필요한 등록은 완료한 것으로 상정한다. 즉, 컨트롤러(20)의 동작은 완료하였다.
단말기A는, 수신처가 되는 단말기B의 MAC 어드레스(및 IP 어드레스)를, 패킷의 수신처 정보의 영역에 기재하고, 수신처가 단말기B인 패킷을 송신한다.
단말기A가 접속된 에지 스위치(10-1)는, 입력 포트(1)에서 수신처가 단말기B인 패킷을 수신하면, 자신의 플로우 테이블에 그 수신 패킷에 부합하는 엔트리가 등록되어 있는지 여부를 확인한다.
자신의 플로우 테이블에, "수신처가 단말기B인 패킷을 수신했을 경우, 그 수신 패킷의 수신처 정보의 영역의 적어도 일부에, ID군(단말기B가 접속된 에지 스위치(10-6)의 노드 ID, 그 플로우의 VTN ID, 단말기B의 유저 ID)을 기재하고, 그 수신 패킷을 다음 단의 스위치에 전송한다"를 표시하는 입구 엔트리가 등록되어 있다. 따라서, 단말기A가 접속된 에지 스위치(10-1)는, 수신 패킷의 수신처 정보의 영역의 적어도 일부에, 그 ID군을 기재하고, 수신 패킷을 다음 단의 스위치에 전송한다. 여기에서는, 에지 스위치(10-1)는, 수신 패킷의 수신처 정보에 기재되어 있는 단말기B의 MAC 어드레스를 ID군으로 변경(수신처 정보를 ID군으로 덮어쓰기)하고, 변경된 패킷(이하, ID화(ID-ized) 패킷이라 함)을, 출력 포트(2)에 전송하고, ID화 패킷을 출력 포트(2)로부터 다음 단의 스위치(10-2)에 전송한다.
에지 스위치(10-2)는, 입력 포트(3)에서 ID화 패킷을 수신하면, 자신의 플로우 테이블에 그 ID화 패킷에 부합하는 엔트리가 등록되어 있는지 여부를 확인한다.
자신의 플로우 테이블에, "수신 패킷의 수신처 정보의 영역의 적어도 일부에 에지 스위치(10-6)의 노드 ID가 기재되어 있을 때, 그 수신 패킷을 (미리 결정된 출력 포트로부터) 다음 단의 스위치에 전송한다"를 표시하는 코어 엔트리가 등록되어 있다. 따라서, 에지 스위치(10-2)는, ID화 패킷을 출력 포트(4)에 전송하고, 그 ID화 패킷을 출력 포트(4)로부터 다음 단의 스위치(10-3)에 전송한다. 여기서, 에지 스위치(10-2)는, ID화 패킷을 출력 포트(4) 또는 출력 포트(5)에 전송할지를, 코어 엔트리의 "OPort"의 값을 기초로 결정한다.
이 때, 에지 스위치(10-2)는, ID화 패킷이 용장 ID를 포함하고 있을 경우, 용장 ID의 값을 검색 키로서 이용하여 ID화 패킷에 대응하는 코어 엔트리를 검색한다.
에지 스위치(10-3)는, 입력 포트(10)에서 ID화 패킷을 수신하면, 자신의 플로우 테이블에 그 ID화 패킷에 부합하는 엔트리가 등록되어 있는지 여부를 확인한다.
자신의 플로우 테이블에, "수신 패킷의 수신처 정보의 영역의 적어도 일부에 에지 스위치(10-6)의 노드 ID가 기재되어 있을 때, 그 수신 패킷을 (미리 결정된 출력 포트로부터) 다음 단의 스위치에 전송한다"를 표시하는 코어 엔트리가 등록되어 있다. 따라서, 에지 스위치(10-3)는, ID화 패킷을 출력 포트(12)에 전송하고, 그 ID화 패킷을 출력 포트(12)로부터 다음 단의 스위치(10-6)에 전송한다.
에지 스위치(10-6)는, 입력 포트(13)에서 ID화 패킷을 수신하면, 자신의 플로우 테이블에 ID화 패킷에 부합하는 엔트리가 등록되어 있는지 여부를 확인한다.
자신의 플로우 테이블에, "수신 패킷의 수신처 정보의 영역의 적어도 일부에 (에지 스위치(10-6)의 노드 ID와) 제어하의 단말기B의 유저 ID가 기재되어 있을 때, 그 수신 패킷의 수신처 정보를 수신처가 단말기B의 MAC 어드레스인 것으로 되돌리고, 그 수신 패킷을 단말기B의 MAC 어드레스로 전송한다"를 표시하는 출구 엔트리가 등록되어 있다. 따라서, 단말기B가 접속된 에지 스위치(10-6)는, ID화 패킷의 수신처 정보의 영역에 기재되어 있는 ID군을, 수신처로서 단말기B의 MAC 어드레스로 변경(수신처 정보를 단말기B의 MAC 어드레스로 덮어쓰기)하고, 변경된 패킷(원래 수신 패킷)을 출력 포트(14)에 전송하고, 그 패킷을 출력 포트(14)로부터 단말기B에 전송한다.
그런데, 상기 설명에서는, 수신처 정보의 영역의 예로서, "MAC 어드레스 영역"이 이용된다. 그러나, "IP 어드레스 영역"이 이용가능할 수 있다. 즉, "수신처 어드레스 영역"이 이용가능할 수 있다.
<제2 실시예>
이하에, 본 발명의 제2 실시예에 대해서 설명한다.
본 실시예에서는 스테이션 검지가 실행될 때가 아니고, 스위치간에서의 IP 패킷 등의 통신이 개시될 때에, 입력측 에지 스위치의 플로우 테이블에 "입구 엔트리"를 등록하는 경우에 대해서 설명한다.
여기에서는, 도 3에 도시된 스테이션 검지(ARP 요구 이용)에 의해, 에지 스위치에 "출구 엔트리"를 등록하는 처리만이 실행되는 상태, 또는, 도 4에 도시된 스테이션 검지(ARP 응답 이용)가 실행될 때에, 에지 스위치에 "입구 엔트리"를 등록하는 처리가 실행되지 않는 상태를 상정하고 있다.
[패킷의 문의]
도 6을 참조하여, 데이터 통신이 개시될 때의 패킷의 문의에 있어서의 처리에 대해서 설명한다.
컨트롤러(20)는, 시큐어 채널 접속을 통해, 제어하에 있는 스위치로부터 수신 패킷에 관한 문의를 받았을 경우에, 응답으로서 입구 엔트리를 등록한다.
우선, 단말기A는, 수신처가 되는 단말기B의 MAC 어드레스(및 IP 어드레스)를, 패킷의 수신처 정보의 영역에 기재하고, 수신처가 단말기B인 패킷을 송신한다.
단말기A가 접속된 에지 스위치(10-1)는, 수신처가 단말기B인 패킷을 수신하면, 자신의 플로우 테이블에 그 패킷에 부합하는 엔트리가 등록되어 있는지 여부를 확인한다. 이 시점에서는, 단말기A가 접속된 에지 스위치(10-1)에서, 그 패킷에 부합하는 엔트리(입구 엔트리)는 등록되어 있지 않다. 따라서, 단말기A가 접속된 에지 스위치(10-1)는, 시큐어 채널 접속을 통해 컨트롤러(20)에 대하여, 수신처가 단말기B인 패킷을 전송한다.
컨트롤러(20)는, 수신처가 단말기B인 패킷의 수신처 정보로부터 단말기B의 MAC 어드레스(및 IP 어드레스)를 취득하고, 컨트롤러(20)가 갖고 있는 토폴로지 정보 및 스테이션 정보로부터, 단말기B의 유저 ID와, 단말기B가 접속된 에지 스위치(10-6)의 노드 ID를 특정한다.
컨트롤러(20)는, 단말기A가 접속된 에지 스위치(10-1)의 플로우 테이블에, "수신처가 단말기B인 패킷을 수신했을 경우, 그 수신 패킷의 수신처 정보의 영역의 적어도 일부에, ID군(단말기B가 접속된 에지 스위치의 노드 ID, 그 플로우의 VTN ID, 단말기B의 유저 ID)을 기재하고, 다음 단의 스위치에 그 수신 패킷을 전송한다"를 표시하는 입구 엔트리를 등록한다. 이 엔트리 등록 방식은 "리액티브형"(최초의 패킷 도착시에 입구 엔트리를 등록하는 방식)이다.
<각 실시예들 간의 관계>
또한, 상기의 각 실시예는, 조합해서 수행될 수 있다. 예를 들어, 본 발명에 따른 네트워크 시스템에서, 제1 실시예에 대응하는 스위치들과, 제2 실시예에 대응하는 스위치들이 혼합될 수 있다. 또한, 복수의 VTN이 존재할 경우, 각 VTN 에 대해 실시예들이 분리될 수 있다.
<부기>
위에 개시된 실시예들의 일부 또는 전부는, 이것으로 한정되지 않지만, 이하의 부기들로서 기재될 수 있다.
[부기 1: 시스템 구성]
네트워크 시스템으로서,
각각이, 자신의 플로우 테이블(flow table)에 등록된 엔트리의 룰에 부합하는 수신 패킷에 대하여, 상기 엔트리에 정의된 액션에 기초한 동작을 행하도록 구성되는 복수의 스위치; 및
상기 복수의 스위치로 이루어지는 네트워크의 물리 토폴로지에 기초하여 계산된 경로에 고유한 식별자가 룰로서 설정되고, 미리 결정된 출력 포트로부터의 출력이 액션으로서 설정되는 엔트리를, 상기 복수의 스위치간에 있어서 통신이 개시되기 전에, 상기 복수의 스위치 각각에 등록하도록 구성되는 컨트롤러
를 포함하는 네트워크 시스템.
[부기 2: Core 엔트리 등록]
부기 1에 있어서, 상기 컨트롤러는,
통신이 개시되기 전의 토폴로지 검지에서, 상기 복수의 스위치 각각에 내부 및 외부의 설정 정보를 설치(install)하고, 상기 각 스위치의 포트 정보를 수집하도록 구성되는 포트 정보 수집부;
상기 각 스위치의 포트 정보에 기초하여, 내부 포트와 외부 포트를 특정하고, 에지 스위치와 코어 스위치를 특정하도록 구성되는 스위치 특정부;
내부 포트 및 외부 포트에 관한 명시적인 설정이 없는 포트에 대하여, 인접 스위치 정보를 수집하기 위한 제어 프레임을 송신하도록 구성되는 제어 프레임 송신부;
상기 제어 프레임에 대한 응답에 기초하여, 네트워크의 물리 토폴로지를 검지하고, 토폴로지 정보를 작성하도록 구성되는 토폴로지 정보 작성부;
상기 각 스위치를, 고유 식별자로서 노드 ID와 상관시키도록 구성되는 노드 ID 할당 처리부; 및
외부 포트를 포함하는 스위치들 간의 경로를 계산하고, 코어 스위치의 플로우 테이블에 중계용 엔트리를 등록하도록 구성되는 중계용 엔트리 등록부를 포함하고, 상기 중계용 엔트리는, 수신 패킷의 수신처 정보의 영역에 에지 스위치의 노드 ID가 기재되어 있을 때, 다음 단의 스위치에 그 수신 패킷을 전송하는 것을 표시하는 네트워크 시스템.
[부기 3: 송신측의 출구 엔트리 등록]
부기 2에 있어서, 상기 컨트롤러는,
통신이 개시되기 전의 스테이션 검지에서, 송신원 단말기로부터의 ARP 요구 에 기초하여, 상기 송신원 단말기의 수신처 정보를 특정하도록 구성되는 송신원 단말기 특정부;
상기 송신원 단말기를, 상기 고유 식별자로서 유저 ID와 상관시키도록 구성되는 송신원 유저 ID 할당 처리부; 및
상기 송신원 단말기가 접속된 에지 스위치의 플로우 테이블에 출력용 엔트리를 등록하도록 구성되는 송신원 단말기 출력용 엔트리 등록부를 포함하고,
상기 출력용 엔트리는, 수신 패킷의 수신처 정보의 영역에 상기 에지 스위치의 노드 ID 및 상기 송신원 단말기의 유저 ID가 기재되어 있을 때, 그 수신 패킷의 수신처 정보의 영역에 상기 송신원 단말기의 수신처 정보를 기재하고, 상기 송신원 단말기에 그 수신 패킷을 전송하는 것을 표시하는 네트워크 시스템.
[부기 4: 수신측의 출구 엔트리 등록]
부기 3에 있어서, 상기 컨트롤러는,
통신이 개시되기 전의 스테이션 검지에서, 수신처 단말기로부터의 ARP 응답 에 기초하여, 상기 수신처 단말기의 수신처 정보를 특정하도록 구성되는 수신처 단말기 특정부;
상기 수신처 단말기에, 상기 고유 식별자로서 유저 ID를 상관시키도록 구성되는 수신처 유저 ID 할당 처리부; 및
상기 수신처 단말기가 접속된 에지 스위치의 플로우 테이블에 출력용 엔트리를 등록하도록 구성되는 수신처 단말기 출력용 엔트리 등록부를 포함하고,
상기 출력용 엔트리는, 수신 패킷의 수신처 정보의 영역에 상기 에지 스위치의 노드 ID 및 상기 수신처 단말기의 유저 ID가 기재되어 있을 때, 그 수신 패킷의 수신처 정보의 영역에 상기 수신처 단말기의 수신처 정보를 기재하고, 상기 수신처 단말기에 그 수신 패킷을 전송하는 것을 표시하는 네트워크 시스템.
[부기 5: 송신측의 입구 엔트리 등록(프로액티브형)]
부기 4에 있어서, 상기 컨트롤러는,
통신이 개시되기 전의 스테이션 검지에서, 상기 수신처 단말기로부터의 ARP 응답에 기초하여, 상기 송신원 단말기와 상기 수신처 단말기 사이의 통신이 수행될 수 있는지 여부를 판단하도록 구성되는 통신 가부 판단부; 및
상기 송신원 단말기가 접속된 에지 스위치의 플로우 테이블에 입력용 엔트리를 등록하도록 구성되는 송신원 단말기 입력용 엔트리 등록부를 포함하고,
상기 입력용 엔트리는, 상기 수신처 단말기로의 패킷을 수신했을 경우, 그 수신 패킷의 수신처 정보의 영역의 적어도 일부에, 상기 수신처 단말기가 접속된 에지 스위치의 노드 ID 및 상기 수신처 단말기의 유저 ID를 기재하고, 다음 단의 스위치에 그 수신 패킷을 전송하는 것을 표시하는 네트워크 시스템.
[부기 6: 송신측의 입구 엔트리 등록(리액티브형)]
부기 4에 있어서, 상기 컨트롤러는,
통신이 개시되었을 때, 송신원 단말기가 접속된 에지 스위치로부터의 패킷의 문의에 기초하여, 상기 송신원 단말기와 상기 수신처 단말기 사이의 통신이 수행될 수 있는지 여부를 판단하도록 구성되는 통신 가부 판단부; 및
상기 송신원 단말기가 접속된 에지 스위치의 플로우 테이블에 입력용 엔트리를 등록하도록 구성되는 송신원 단말기 입력용 엔트리 등록부를 포함하고,
상기 입력용 엔트리는, 상기 수신처 단말기로의 패킷을 수신했을 경우, 그 수신 패킷의 수신처 정보의 영역의 적어도 일부에, 상기 수신처 단말기가 접속된 에지 스위치의 노드 ID와 상기 수신처 단말기의 유저 ID를 기재하고, 다음 단의 스위치에 그 수신 패킷을 전송하는 것을 표시하는 네트워크 시스템.
본 발명은 그의 몇몇 실시예와 결합하여 위에서 설명하였지만, 본 발명은 그의 실시예들로 한정되지 않고, 본 발명의 범위 및 사상을 벗어나지 않고 수정 및 변경될 수 있다는 것이 명백할 것이다.
본 출원은 일본 특허 출원 번호 제2011-005137호에 기초하며 우선권의 이득을 주장하는데, 이 일본 특허 출원은 그 개시 내용이 본원에 참고로 완전히 포함된다.

Claims (24)

  1. 네트워크 시스템으로서,
    각각이, 자신의 플로우 테이블(flow table)에 등록된 엔트리의 룰에 부합하는 수신 패킷에 대하여, 상기 엔트리에 정의된 액션에 기초한 동작을 행하도록 구성되는 복수의 스위치; 및
    상기 복수의 스위치로 이루어지는 네트워크의 물리 토폴로지에 기초하여 계산된 경로에 고유한 식별자가 룰로서 설정되고, 미리 결정된 출력 포트로부터의 출력이 액션으로서 설정되는 엔트리를, 상기 복수의 스위치 사이에서 통신이 개시되기 전에, 상기 복수의 스위치 각각에 등록하도록 구성되는 컨트롤러
    를 포함하고,
    상기 컨트롤러는,
    통신이 개시되기 전의 토폴로지 검지 시에, 네트워크의 물리 토폴로지를 검지하고, 상기 복수의 스위치를 에지 스위치들(edge switches)과 코어 스위치들(core switches)로 분류하는 수단,
    상기 에지 스위치들 각각에 고유 식별자를 할당하는 수단, 및
    상기 에지 스위치들 사이의 경로를 계산하고, 코어 스위치의 플로우 테이블에 중계용 엔트리(relay entry)를 등록하는 수단
    을 포함하고,
    상기 중계용 엔트리는, 수신 패킷의 수신처 정보의 영역에 미리 결정된 에지 스위치의 식별자가 기재되어 있는 경우에 다음 단의 스위치에 상기 수신 패킷을 전송하는 것을 나타내는 네트워크 시스템.
  2. 삭제
  3. 제1항에 있어서,
    상기 컨트롤러는,
    통신이 개시되기 전의 스테이션 검지 시에, 송신원 단말기의 수신처 정보를 특정하는 수단,
    상기 송신원 단말기에 고유 식별자를 할당하는 수단, 및
    상기 송신원 단말기가 접속된 에지 스위치의 플로우 테이블에 출력용 엔트리(output entry)를 등록하는 수단
    을 더 포함하고,
    상기 출력용 엔트리는, 수신 패킷의 수신처 정보의 영역에 상기 에지 스위치의 식별자 및 상기 송신원 단말기의 식별자가 기재되어 있는 경우에 상기 수신 패킷의 수신처 정보의 영역에 상기 송신원 단말기의 수신처 정보를 기재하고, 상기 송신원 단말기에 상기 수신 패킷을 전송하는 것을 나타내는 네트워크 시스템.
  4. 제3항에 있어서,
    상기 컨트롤러는,
    통신이 개시되기 전의 스테이션 검지 시에, 수신처 단말기의 수신처 정보를 특정하는 수단,
    상기 수신처 단말기에 상기 고유 식별자로서 식별자를 할당하는 수단, 및
    상기 수신처 단말기가 접속된 에지 스위치의 플로우 테이블에 출력용 엔트리를 등록하는 수단
    을 더 포함하고,
    상기 출력용 엔트리는, 수신 패킷의 수신처 정보의 영역에 상기 에지 스위치의 식별자 및 상기 수신처 단말기의 식별자가 기재되어 있는 경우에 상기 수신 패킷의 수신처 정보의 영역에 상기 수신처 단말기의 수신처 정보를 기재하고, 상기 수신처 단말기에 상기 수신 패킷을 전송하는 것을 나타내는 네트워크 시스템.
  5. 제4항에 있어서,
    상기 컨트롤러는,
    상기 송신원 단말기와 상기 수신처 단말기 사이의 통신이 수행될 수 있는지 여부를 확인하는 수단, 및
    상기 송신원 단말기와 상기 수신처 단말기 사이의 통신이 수행될 수 있다고 판단하는 경우, 상기 송신원 단말기가 접속된 에지 스위치의 플로우 테이블에 입력용 엔트리(input entry)를 등록하는 수단
    을 더 포함하고,
    상기 입력용 엔트리는, 상기 수신처 단말기로의 패킷을 수신한 경우, 상기 수신 패킷의 수신처 정보의 영역의 적어도 일부에, 상기 수신처 단말기가 접속된 에지 스위치의 식별자 및 상기 수신처 단말기의 식별자를 기재하고, 다음 단의 스위치에 상기 수신 패킷을 전송하는 것을 나타내는 네트워크 시스템.
  6. 제1항 또는 제3항 내지 제5항 중 어느 한 항에 따른 네트워크 시스템에 사용되도록 구성되는 컨트롤러.
  7. 경로 제어 방법(routing method)으로서,
    복수의 스위치 각각에서, 자신의 플로우 테이블에 등록된 엔트리의 룰에 부합하는 수신 패킷에 대하여, 상기 엔트리에 정의된 액션에 기초한 동작을 행하는 단계;
    컨트롤러에서, 상기 복수의 스위치로 이루어지는 네트워크의 물리 토폴로지에 기초하여 계산된 경로에 고유한 식별자가 룰로서 설정되고, 미리 결정된 출력 포트로부터의 출력이 액션으로서 설정되는 엔트리를, 상기 복수의 스위치 사이에서 통신이 개시되기 전에, 상기 복수의 스위치 각각에 등록하는 단계;
    상기 컨트롤러에서,
    통신이 개시되기 전의 토폴로지 검지 시에, 네트워크의 물리 토폴로지를 검지하고, 상기 복수의 스위치를 에지 스위치들과 코어 스위치들로 분류하는 단계;
    상기 에지 스위치들 각각에 고유 식별자를 할당하는 단계; 및
    상기 에지 스위치들 사이의 경로를 계산하고, 코어 스위치의 플로우 테이블에 중계용 엔트리를 등록하는 단계
    를 포함하고,
    상기 중계용 엔트리는, 수신 패킷의 수신처 정보의 영역에 미리 결정된 에지 스위치의 식별자가 기재되어 있는 경우에 다음 단의 스위치에 상기 수신 패킷을 전송하는 것을 나타내는 경로 제어 방법.
  8. 삭제
  9. 제7항에 있어서,
    상기 컨트롤러에서,
    통신이 개시되기 전의 스테이션 검지 시에, 송신원 단말기의 수신처 정보를 특정하는 단계,
    상기 송신원 단말기에 고유 식별자를 할당하는 단계, 및
    상기 송신원 단말기가 접속된 에지 스위치의 플로우 테이블에 출력용 엔트리를 등록하는 단계
    를 더 포함하고,
    상기 출력용 엔트리는, 수신 패킷의 수신처 정보의 영역에 상기 에지 스위치의 식별자 및 상기 송신원 단말기의 식별자가 기재되어 있는 경우에 상기 수신 패킷의 수신처 정보의 영역에 상기 송신원 단말기의 수신처 정보를 기재하고, 상기 송신원 단말기에 상기 수신 패킷을 전송하는 것을 나타내는 경로 제어 방법.
  10. 제9항에 있어서,
    상기 컨트롤러에서,
    통신이 개시되기 전의 스테이션 검지 시에, 수신처 단말기의 수신처 정보를 특정하는 단계,
    상기 수신처 단말기에 상기 고유 식별자로서 식별자를 할당하는 단계, 및
    상기 수신처 단말기가 접속된 에지 스위치의 플로우 테이블에 출력용 엔트리를 등록하는 단계
    를 더 포함하고,
    상기 출력용 엔트리는, 수신 패킷의 수신처 정보의 영역에 상기 에지 스위치의 식별자 및 상기 수신처 단말기의 식별자가 기재되어 있는 경우에 상기 수신 패킷의 수신처 정보의 영역에 상기 수신처 단말기의 수신처 정보를 기재하고, 상기 수신처 단말기에 상기 수신 패킷을 전송하는 것을 나타내는 경로 제어 방법.
  11. 제10항에 있어서,
    상기 컨트롤러에서,
    상기 송신원 단말기와 상기 수신처 단말기 사이의 통신이 수행될 수 있는지 여부를 확인하는 단계, 및
    상기 송신원 단말기와 상기 수신처 단말기 사이의 통신이 수행될 수 있다고 판단하는 경우, 상기 송신원 단말기가 접속된 에지 스위치의 플로우 테이블에 입력용 엔트리를 등록하는 단계
    를 더 포함하고,
    상기 입력용 엔트리는, 상기 수신처 단말기로의 패킷을 수신한 경우, 상기 수신 패킷의 수신처 정보의 영역의 적어도 일부에, 상기 수신처 단말기가 접속된 에지 스위치의 식별자 및 상기 수신처 단말기의 식별자를 기재하고, 다음 단의 스위치에 상기 수신 패킷을 전송하는 것을 나타내는 경로 제어 방법.
  12. 제7항 또는 제9항 내지 제11항 중 어느 한 항에 따른 경로 제어 방법에 있어서의 컨트롤러의 동작을 컴퓨터에 실행시키기 위한 프로그램을 포함하는 기억 매체.
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
KR1020137018242A 2011-01-13 2011-12-27 네트워크 시스템 및 경로 제어 방법 KR101574167B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2011005137 2011-01-13
JPJP-P-2011-005137 2011-01-13
PCT/JP2011/080325 WO2012096131A1 (ja) 2011-01-13 2011-12-27 ネットワークシステム、及び経路制御方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020157010902A Division KR101624474B1 (ko) 2011-01-13 2011-12-27 네트워크 시스템 및 경로 제어 방법

Publications (2)

Publication Number Publication Date
KR20130121921A KR20130121921A (ko) 2013-11-06
KR101574167B1 true KR101574167B1 (ko) 2015-12-03

Family

ID=46507042

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020137018242A KR101574167B1 (ko) 2011-01-13 2011-12-27 네트워크 시스템 및 경로 제어 방법
KR1020167003508A KR20160021309A (ko) 2011-01-13 2011-12-27 네트워크 시스템 및 경로 제어 방법
KR1020157010902A KR101624474B1 (ko) 2011-01-13 2011-12-27 네트워크 시스템 및 경로 제어 방법

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020167003508A KR20160021309A (ko) 2011-01-13 2011-12-27 네트워크 시스템 및 경로 제어 방법
KR1020157010902A KR101624474B1 (ko) 2011-01-13 2011-12-27 네트워크 시스템 및 경로 제어 방법

Country Status (9)

Country Link
US (3) US9787580B2 (ko)
EP (2) EP3461077A1 (ko)
JP (3) JP5585664B2 (ko)
KR (3) KR101574167B1 (ko)
CN (2) CN103329488B (ko)
ES (1) ES2706416T3 (ko)
RU (1) RU2576473C2 (ko)
TW (1) TWI489821B (ko)
WO (1) WO2012096131A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101870146B1 (ko) * 2016-10-12 2018-06-25 아토리서치(주) 리프-스파인 구조의 소프트웨어 정의 네트워킹에서 목적지 기반 패킷 전송 제어 방법 및 장치
WO2018186681A1 (ko) * 2017-04-04 2018-10-11 삼성전자주식회사 소프트웨어 정의 네트워크에서 데이터 패킷의 전송 룰을 설정하기 위한 장치 및 방법

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102938794B (zh) * 2012-11-14 2016-01-13 华为技术有限公司 地址解析协议arp消息转发方法、交换机和控制器
JP6024761B2 (ja) * 2012-11-27 2016-11-16 日本電気株式会社 制御装置、通信システム、通信方法及びプログラム
CN103905577A (zh) * 2012-12-28 2014-07-02 中兴通讯股份有限公司 一种地址解析协议报文的处理方法和系统
US8929356B2 (en) * 2013-02-05 2015-01-06 Anue Systems, Inc. Mobile user identification and tracking for load balancing in packet processing systems
CN103179046B (zh) * 2013-04-15 2016-03-30 昆山天元昌电子有限公司 基于openflow的数据中心流量控制方法及系统
US9210074B2 (en) * 2013-05-03 2015-12-08 Alcatel Lucent Low-cost flow matching in software defined networks without TCAMs
CN104243319B (zh) * 2013-06-06 2018-01-09 新华三技术有限公司 一种邻居发现的方法及装置
CN103346922B (zh) * 2013-07-26 2016-08-10 电子科技大学 基于sdn的确定网络状态的控制器及其确定方法
US10356037B2 (en) * 2013-08-01 2019-07-16 Hewlett Packard Enterprise Development Lp Address resolution rewriting
CN104348727B (zh) * 2013-08-05 2018-05-15 新华三技术有限公司 OpenFlow网络中的流表表项处理方法及设备
US9426060B2 (en) * 2013-08-07 2016-08-23 International Business Machines Corporation Software defined network (SDN) switch clusters having layer-3 distributed router functionality
JPWO2015025845A1 (ja) 2013-08-20 2017-03-02 日本電気株式会社 通信システム、スイッチ、コントローラ、アンシラリデータ管理装置、データ転送方法及びプログラム
JP6417086B2 (ja) * 2013-09-06 2018-10-31 エヌ・ティ・ティ・コミュニケーションズ株式会社 接続制御装置、中継装置、接続制御方法、及びプログラム
CN103458479A (zh) * 2013-09-17 2013-12-18 清华大学 Wsn中基于内容的路由表的数据路由方法及系统
US20150098475A1 (en) * 2013-10-09 2015-04-09 International Business Machines Corporation Host table management in software defined network (sdn) switch clusters having layer-3 distributed router functionality
US10021015B2 (en) 2013-11-20 2018-07-10 Nec Corporation Network control device, network control method, and storage medium
JP6418167B2 (ja) * 2013-11-26 2018-11-07 日本電気株式会社 ネットワーク制御装置、ネットワークシステム、ネットワーク制御方法、および、プログラム
TWI513260B (zh) * 2013-12-13 2015-12-11 Inventec Corp 路由控制方法與裝置
WO2015118811A1 (ja) * 2014-02-10 2015-08-13 日本電気株式会社 通信システム、パケット転送装置、パケット転送方法およびパケット転送用プログラム
CN104954281B (zh) * 2014-03-31 2018-08-03 中国移动通信集团公司 通信方法、系统、资源池管理系统、交换机和控制装置
CN105531967B (zh) * 2014-04-21 2020-06-16 华为技术有限公司 一种报文传输方法、设备及通信系统
EP3136662B1 (en) * 2014-05-30 2018-11-28 Huawei Technologies Co., Ltd. Construction method, device and system for multi-path forwarding rules
WO2015184586A1 (zh) * 2014-06-03 2015-12-10 华为技术有限公司 开放流通信方法、系统、控制器和业务网关
US9774502B2 (en) * 2014-06-25 2017-09-26 Ciena Corporation Systems and methods for combined software defined networking and distributed network control
CA2950206C (en) 2014-06-30 2019-03-05 Huawei Technologies Co., Ltd. Flow entry configuration method, apparatus, and system
US9813301B2 (en) * 2014-08-20 2017-11-07 Nec Corporation Optimization framework for multi-tenant data centers
US9876712B2 (en) * 2014-09-05 2018-01-23 Kt Corporation Method and device for processing address resolution protocol in software-defined networking environment
WO2016090552A1 (zh) * 2014-12-09 2016-06-16 华为技术有限公司 一种自适应流表的处理方法及装置
JP2016116024A (ja) * 2014-12-12 2016-06-23 日立金属株式会社 タグ変換装置
JP6470838B2 (ja) * 2014-12-17 2019-02-13 華為技術有限公司Huawei Technologies Co.,Ltd. ソフトウェア定義型ネットワーキングにおけるデータ転送方法、装置、およびシステム
CN104639438A (zh) * 2015-01-05 2015-05-20 北京交通大学 一种OpenFlow网络中数据流的新标识和控制方法
JP2016181819A (ja) * 2015-03-24 2016-10-13 富士通株式会社 ネットワークの制御装置及び制御方法、並びに、ネットワークスイッチ
JP6525256B2 (ja) * 2015-05-29 2019-06-05 Necプラットフォームズ株式会社 仮想ネットワークシステムおよび仮想ネットワーク経路設定方法
KR101674177B1 (ko) 2015-07-07 2016-11-09 주식회사 케이티 멀티노드간 이더넷 가상연결서비스를 제공하는 트랜스포트 sdn 컨트롤러 및 멀티노드간 이더넷 가상연결서비스 제공 방법
CN106411746A (zh) * 2015-08-03 2017-02-15 上海宽带技术及应用工程研究中心 基于Vlan的SDN网络数据传输系统及方法
US10003537B2 (en) 2015-10-01 2018-06-19 Keysight Technologies Singapore (Holding) Pte Ltd Egress port overload protection for network packet forwarding systems
JP6701779B2 (ja) * 2016-02-15 2020-05-27 株式会社リコー 通信システム
CN109218190B (zh) * 2017-06-29 2020-08-07 华为技术有限公司 一种传输路径的确定方法及节点
KR102001487B1 (ko) * 2017-11-22 2019-07-17 아토리서치(주) 소프트웨어 정의 네트워킹 제어 방법 및 이를 수행하는 컴퓨팅 장치
CN109842558B (zh) * 2017-11-28 2020-09-11 华为技术有限公司 报文转发的方法、控制面网关和用户面网关
PL3531622T3 (pl) * 2018-02-23 2020-06-29 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Sposób obsługi przepływu pakietów w programowalnej sieci komputerowej SDN, produkt programu komputerowego oraz programowalna sieć komputerowa SDN
CN110460456B (zh) * 2018-05-08 2020-10-20 大唐移动通信设备有限公司 一种管理信息库mib同步生成网络拓扑的方法及装置
CN110838979B (zh) * 2018-08-17 2022-02-08 中国电信股份有限公司 流量转发控制方法、装置、系统和计算机可读存储介质
JP2019092233A (ja) * 2019-03-26 2019-06-13 Necプラットフォームズ株式会社 仮想ネットワークシステムおよび仮想ネットワーク経路設定方法
KR102207290B1 (ko) * 2019-04-12 2021-01-25 아토리서치(주) 소프트웨어 정의 네트워크에서 vlan을 지원하는 방법
CN112887741A (zh) * 2021-01-08 2021-06-01 武汉球之道科技有限公司 一种篮球比赛进球视频无线分享系统
CN115134299A (zh) * 2021-03-25 2022-09-30 华为技术有限公司 通信方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008187686A (ja) * 2007-01-31 2008-08-14 Nippon Telegr & Teleph Corp <Ntt> トンネル通信システム、制御装置およびトンネル通信装置
JP2009077219A (ja) * 2007-09-21 2009-04-09 Nec Corp ネットワークシステム、ネットワーク管理装置、通信装置、パス設定方法及びプログラム

Family Cites Families (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2243359A1 (en) 1996-01-31 1997-08-07 Ipsilon Networks, Inc. Improved method and apparatus for dynamically shifting between routing and switching packets in a transmission network
US6876654B1 (en) * 1998-04-10 2005-04-05 Intel Corporation Method and apparatus for multiprotocol switching and routing
US6526052B1 (en) * 1998-12-23 2003-02-25 Enterasys Networks, Inc. Virtual local area networks having rules of precedence
US7200144B2 (en) * 2001-10-18 2007-04-03 Qlogic, Corp. Router and methods using network addresses for virtualization
US20030156541A1 (en) * 2002-02-21 2003-08-21 Zheng Haihong Method and system for reserving resources on an MPLS path
US8050180B2 (en) 2003-10-31 2011-11-01 Brocade Communications Systems, Inc. Network path tracing method
JP3760167B2 (ja) * 2004-02-25 2006-03-29 株式会社日立製作所 通信制御装置、通信ネットワークおよびパケット転送制御情報の更新方法
JP4332079B2 (ja) * 2004-07-01 2009-09-16 株式会社日立製作所 モジュール型パケット通信ノード装置
JP4598462B2 (ja) * 2004-09-16 2010-12-15 富士通株式会社 L2−vpnサービスを提供するプロバイダ網、及びエッジルータ
US7801125B2 (en) 2004-10-22 2010-09-21 Cisco Technology, Inc. Forwarding table reduction and multipath network forwarding
JP4715750B2 (ja) * 2004-11-04 2011-07-06 パナソニック株式会社 マルチインタフェース通信装置、端末、および経路切替方法
US7827402B2 (en) * 2004-12-01 2010-11-02 Cisco Technology, Inc. Method and apparatus for ingress filtering using security group information
JP4680866B2 (ja) * 2006-10-31 2011-05-11 株式会社日立製作所 ゲートウェイ負荷分散機能を備えたパケット転送装置
JP4680942B2 (ja) * 2007-01-18 2011-05-11 株式会社日立製作所 パケット転送装置
US20080189769A1 (en) * 2007-02-01 2008-08-07 Martin Casado Secure network switching infrastructure
US20090063438A1 (en) 2007-08-28 2009-03-05 Iamg, Llc Regulatory compliance data scraping and processing platform
EP2193630B1 (en) 2007-09-26 2015-08-26 Nicira, Inc. Network operating system for managing and securing networks
GB2458154B (en) * 2008-03-07 2012-06-27 Hewlett Packard Development Co Routing across a virtual network
US8261317B2 (en) * 2008-03-27 2012-09-04 Juniper Networks, Inc. Moving security for virtual machines
WO2009138577A1 (fr) 2008-05-16 2009-11-19 Eurecat S.A. Procede de sulfuration ou presulfuration de particules solides d'un catalyseur ou d'un adsorbant
JP5242301B2 (ja) * 2008-09-01 2013-07-24 株式会社東芝 メッセージを転送する装置、出力方法および出力プログラム
US8761152B2 (en) * 2008-10-14 2014-06-24 William Marsh Rice University Method and system for scalable ethernet
JP2010193019A (ja) * 2009-02-16 2010-09-02 Panasonic Corp 通信装置及び通信装置の遠隔起動方法
CN102349268B (zh) 2009-03-09 2015-11-25 日本电气株式会社 OpenFlow通信系统和OpenFlow通信方法
WO2010110235A1 (ja) * 2009-03-26 2010-09-30 日本電気株式会社 経路設定サーバ、経路設定方法、及び経路設定プログラム
KR101460848B1 (ko) 2009-04-01 2014-11-20 니시라, 인크. 가상 스위치를 구현 및 관리하는 방법 및 장치
US9497039B2 (en) * 2009-05-28 2016-11-15 Microsoft Technology Licensing, Llc Agile data center network architecture
US9210065B2 (en) * 2009-06-22 2015-12-08 Alcatel Lucent Providing cloud-based services using dynamic network virtualization
JP4933592B2 (ja) 2009-06-29 2012-05-16 京楽産業.株式会社 遊技機、認証方法、プログラム
CN104065555B (zh) * 2009-09-24 2018-09-18 日本电气株式会社 虚拟服务器间通信识别系统和虚拟服务器间通信识别方法
JP5621778B2 (ja) * 2009-09-25 2014-11-12 日本電気株式会社 コンテンツベーススイッチシステム、及びコンテンツベーススイッチ方法
US8369333B2 (en) * 2009-10-21 2013-02-05 Alcatel Lucent Method and apparatus for transparent cloud computing with a virtualized network infrastructure
JP5392137B2 (ja) * 2010-02-17 2014-01-22 富士通株式会社 通信処理のためのプログラム、コンピュータ及び方法
US8571040B2 (en) * 2010-03-01 2013-10-29 Deutsche Telekom Ag Apparatus, method, manufacture, and system for providing network services from building blocks
US8817629B2 (en) * 2010-03-16 2014-08-26 Deutsche Telekom Ag Method for routing-assisted traffic monitoring
US8504718B2 (en) * 2010-04-28 2013-08-06 Futurewei Technologies, Inc. System and method for a context layer switch
US8503307B2 (en) * 2010-05-10 2013-08-06 Hewlett-Packard Development Company, L.P. Distributing decision making in a centralized flow routing system
US8989187B2 (en) * 2010-06-04 2015-03-24 Coraid, Inc. Method and system of scaling a cloud computing network
US8897134B2 (en) * 2010-06-25 2014-11-25 Telefonaktiebolaget L M Ericsson (Publ) Notifying a controller of a change to a packet forwarding configuration of a network element over a communication channel
US8966040B2 (en) * 2010-07-06 2015-02-24 Nicira, Inc. Use of network information base structure to establish communication between applications
US9680750B2 (en) * 2010-07-06 2017-06-13 Nicira, Inc. Use of tunnels to hide network addresses
CN101917492B (zh) * 2010-08-06 2013-06-05 北京乾唐视联网络科技有限公司 一种新型网的通信方法及系统
US20120099591A1 (en) * 2010-10-26 2012-04-26 Dell Products, Lp System and Method for Scalable Flow Aware Network Architecture for Openflow Based Network Virtualization
CN103181128A (zh) * 2010-10-28 2013-06-26 日本电气株式会社 网络系统和通信业务控制方法
US9001827B2 (en) * 2010-12-17 2015-04-07 Big Switch Networks, Inc. Methods for configuring network switches
US8559335B2 (en) * 2011-01-07 2013-10-15 Jeda Networks, Inc. Methods for creating virtual links between fibre channel over ethernet nodes for converged network adapters

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008187686A (ja) * 2007-01-31 2008-08-14 Nippon Telegr & Teleph Corp <Ntt> トンネル通信システム、制御装置およびトンネル通信装置
JP2009077219A (ja) * 2007-09-21 2009-04-09 Nec Corp ネットワークシステム、ネットワーク管理装置、通信装置、パス設定方法及びプログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101870146B1 (ko) * 2016-10-12 2018-06-25 아토리서치(주) 리프-스파인 구조의 소프트웨어 정의 네트워킹에서 목적지 기반 패킷 전송 제어 방법 및 장치
WO2018186681A1 (ko) * 2017-04-04 2018-10-11 삼성전자주식회사 소프트웨어 정의 네트워크에서 데이터 패킷의 전송 룰을 설정하기 위한 장치 및 방법
KR20180112517A (ko) * 2017-04-04 2018-10-12 삼성전자주식회사 Sdn 제어 장치 및 이의 데이터 패킷의 전송 룰 설정 방법
KR102342734B1 (ko) * 2017-04-04 2021-12-23 삼성전자주식회사 Sdn 제어 장치 및 이의 데이터 패킷의 전송 룰 설정 방법
US11349802B2 (en) 2017-04-04 2022-05-31 Samsung Electronics Co., Ltd. Device and method for setting transmission rules of data packet in software defined network

Also Published As

Publication number Publication date
ES2706416T3 (es) 2019-03-28
KR20130121921A (ko) 2013-11-06
CN103329488B (zh) 2016-05-04
KR20160021309A (ko) 2016-02-24
CN105262683B (zh) 2021-03-30
EP2665229B1 (en) 2018-10-17
EP3461077A1 (en) 2019-03-27
KR20150054006A (ko) 2015-05-19
JP5594551B2 (ja) 2014-09-24
CN105262683A (zh) 2016-01-20
US20130279371A1 (en) 2013-10-24
US10819625B2 (en) 2020-10-27
WO2012096131A1 (ja) 2012-07-19
JPWO2012096131A1 (ja) 2014-06-09
RU2576473C2 (ru) 2016-03-10
JP2014168285A (ja) 2014-09-11
JP5594552B2 (ja) 2014-09-24
US11552885B2 (en) 2023-01-10
TW201246843A (en) 2012-11-16
JP2014168286A (ja) 2014-09-11
KR101624474B1 (ko) 2016-05-26
JP5585664B2 (ja) 2014-09-10
US20210029027A1 (en) 2021-01-28
EP2665229A1 (en) 2013-11-20
US20180041429A1 (en) 2018-02-08
US9787580B2 (en) 2017-10-10
TWI489821B (zh) 2015-06-21
EP2665229A4 (en) 2016-12-07
CN103329488A (zh) 2013-09-25
RU2013132519A (ru) 2015-02-20

Similar Documents

Publication Publication Date Title
KR101574167B1 (ko) 네트워크 시스템 및 경로 제어 방법
US9548933B2 (en) Network system, switch, and methods of network configuration
EP2696537B1 (en) Network system, switch, and connection terminal detection method
JP5610247B2 (ja) ネットワークシステム、及びポリシー経路設定方法
EP2544417B1 (en) Communication system, path control apparatus, packet forwarding apparatus and path control method
WO2012033117A1 (ja) ネットワークシステム、及びネットワーク管理方法
KR101579014B1 (ko) 부하 저감 시스템, 및 부하 저감 방법
WO2012081549A1 (ja) コンピュータシステム、コントローラ、コントローラマネジャ、通信経路解析方法
US9203758B2 (en) Network system, packet processing method and recording medium
JP2009071423A (ja) ネットワークアダプタ

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
A107 Divisional application of patent
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20181121

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20191120

Year of fee payment: 5