KR101501397B1 - 네트워크 시스템, 스위치 및 접속 단말기 검지 방법 - Google Patents

네트워크 시스템, 스위치 및 접속 단말기 검지 방법 Download PDF

Info

Publication number
KR101501397B1
KR101501397B1 KR1020137025960A KR20137025960A KR101501397B1 KR 101501397 B1 KR101501397 B1 KR 101501397B1 KR 1020137025960 A KR1020137025960 A KR 1020137025960A KR 20137025960 A KR20137025960 A KR 20137025960A KR 101501397 B1 KR101501397 B1 KR 101501397B1
Authority
KR
South Korea
Prior art keywords
packet
mac address
information
terminal
controller
Prior art date
Application number
KR1020137025960A
Other languages
English (en)
Other versions
KR20130126730A (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 KR20130126730A publication Critical patent/KR20130126730A/ko
Application granted granted Critical
Publication of KR101501397B1 publication Critical patent/KR101501397B1/ko

Links

Images

Classifications

    • 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/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/253Routing or path finding in a switch fabric using establishment or release of connections between ports
    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

오픈플로우 네트워크에서, 단말기로부터 전송된 패킷의 송신원 MAC 어드레스(Source MAC)와 포트 번호(port 정보)만을 사용하여, 노드 장치 그룹에 접속되어 있는 단말기에 어느 노드 장치의 어느 포트 번호가 접속되어 있는지가 특정된다. 구체적으로는, 노드 장치가 단말기로부터 노드 장치에 보내진 패킷의 포트 번호와 송신원 MAC 어드레스(Source MAC) 정보 쌍과, 전단 검색 테이블에 유지된 포트 번호와 MAC 어드레스 정보 쌍을 비교해서, 부합(일치)을 확인한다. 부합(일치)하지 않는 경우, 노드 장치는 오버플로우의 문의 정보(Packet-in) 기능을 이용하여 컨트롤러에 통지한다. 또한, 노드 장치는 패킷의 수신처 MAC 어드레스(Destination MAC) 정보와, 후단 검색 테이블에 유지된 MAC 어드레스 정보를 비교해서, 부합(일치)을 확인한다.

Description

네트워크 시스템, 스위치 및 접속 단말기 검지 방법{NETWORK SYSTEM, SWITCH, AND CONNECTION TERMINAL DETECTION METHOD}
본 발명은 네트워크 시스템에 관한 것으로, 특히 스위치에 접속된 단말기를 검지하는 네트워크 시스템에 관한 것이다.
종래의 네트워크 장치는 외부로부터 부하 밸런싱이나 바이어싱 등, 유연한 제어를 할 수 없다고 하는 문제가 있었다. 이 때문에, 네트워크의 규모가 커지면, 시스템의 동작을 모니터링하고 개선하기가 어려워지므로, 설계 및 구성의 변경에는 많은 비용이 필요하다.
이러한 과제를 해결하기 위한 기술로서, 네트워크 장치의 패킷 전송 기능과 경로 제어 기능을 분리하는 방법이 제안되어 있다. 예를 들면, 네트워크 장치가 패킷 전송 기능을 담당하고, 네트워크 장치로부터 분리되어 외부에 제공된 컨트롤러가 제어 기능을 담당하는 경우, 이는 컨트롤러가 패킷의 전송을 집중해서 관리할 수 있게 하여, 유연한 네트워크를 구축할 수 있게 한다.
[CD 분리형 네트워크의 설명]
기능을 분리한 네트워크의 하나로서, 컨트롤 플레인 측에 제공된 컨트롤러가 데이터 플레인 측에 제공된 노드 장치를 제어하는 CD(C:컨트롤 플레인/D:데이터 플레인) 분리형 네트워크가 제안되어 있다.
CD 분리형 네트워크의 일례로서, 컨트롤러로부터 스위치를 제어해서 네트워크의 경로 제어를 달성하는 오픈플로우(OpenFlow) 기술을 이용하는 오픈플로우 네트워크를 들 수 있다. 오픈플로우 기술의 상세에 대해서는, 비특허 문헌 1에 기재되어 있다. 오픈플로우 네트워크는 일례에 불과하다는 점에 유의해야 한다.
[오픈플로우 네트워크의 설명]
오픈플로우 네트워크에서는, 오픈플로우 컨트롤러(OFC: OpenFlow Controller) 등의 컨트롤러가, 오픈플로우 스위치(OFS: OpenFlow Switch) 등의 노드 장치의 플로우 테이블(flow table)을 조작함으로써 노드 장치의 동작을 제어하는데, 여기에서 플로우 테이블은 경로 제어에 관련되어 있다.
컨트롤러와 노드 장치는 전용선 또는 SSL(Secure Socket Layer)에 의해 보호된 통신선인 "시큐어 채널(Secure Channel)"이라 불리는 제어 채널(제어용의 통신 채널)을 통해 접속되어 있다. 컨트롤러와 노드 장치는 제어 채널을 통해서, 오픈플로우 프로토콜(OpenFlow Protocol)을 준수(또는 지원)하는 제어 메시지인 오픈플로우 메시지(OpenFlow Message)를 송수신한다.
오픈플로우 네트워크에 있어서의 노드 장치는 오픈플로우 네트워크에 제공되어, 컨트롤러의 제어하에 있는 에지 스위치 및 코어 스위치를 의미한다. 오픈플로우 네트워크에 있어서의 입구측(Ingress) 에지 스위치에서의 패킷의 수신으로부터 출구측(Egress) 에지 스위치에서의 출력까지의 패킷의 일련의 진행을 "플로우(Flow)"라고 한다. 오픈플로우 네트워크에서는, 통신은 각각 엔드-투-엔드(E2E: End to End) 플로우로서 인식되고, 플로우 단위로 경로 제어, 장해 회복, 부하 밸런싱 및 최적화가 달성된다.
프레임은 패킷 대신 사용될 수 있다. 패킷과 프레임 간의 차이는 프로토콜이 취급하는 데이터 단위(즉, 프로토콜 데이터 단위(PDU))의 차이에 불과하다. 패킷은 "TCP/IP"(Transmission Control Protocol/Internet Protocol)의 PDU이다. 한편, 프레임은 "이더넷(Ethernet)"(등록상표)의 PDU이다.
플로우 테이블은 플로우로서 취급하는 패킷을 특정하기 위한 식별 조건(또는 룰)과, 패킷이 룰에 일치(match)한 횟수를 나타내는 통계 정보와, 패킷에 대하여 행해질 처리(또는 액션) 내용의 세트를 각각 정의하는 플로우 엔트리(Flow entry)의 집합이다.
플로우 엔트리의 룰은 패킷의 헤더 영역(또는 필드)에 포함되는 각 프로토콜 계층의 정보의 임의의 것 또는 모두를 이용한 다양한 조합에 의해 정의되어, 서로 구별가능하다. 각 프로토콜 계층의 정보의 가능한 예는 수신처 어드레스(Destination Address), 송신원 어드레스(Source Address), 수신처 포트(Destination Port) 및 송신원 포트(Source Port)를 포함할 수 있다. 상기의 어드레스는 MAC 어드레스(Media Access Control Address)와 IP 어드레스(Internet Protocol Address)를 포함하는 것을 이해해야 한다. 또한, 상기 언급한 것 외에, 입구 포트(Ingress Port)의 정보도, 플로우 엔트리의 룰로서 사용가능하다. 또한, 플로우로서 취급하는 패킷의 헤더 영역의 값의 일부(또는 전부)를, 정규 표현이나 와일드 카드 "*" 등을 이용하여 나타내는 표현이 플로우 엔트리의 룰로서 설정될 수도 있다는 점에 유의해야 한다.
플로우 엔트리의 액션은 "특정한 포트로의 출력", "폐기", 및 "헤더의 재기입" 등의 동작을 나타낸다. 예를 들면, 플로우 엔트리의 액션에 식별 정보(출력 포트 번호 등)이 나타내져 있으면, 노드 장치는 관련된 포트에 패킷을 출력하고; 출력 포트의 식별 정보가 나타내지지 않으면, 노드 장치는 패킷을 폐기한다. 다른 예에서, 플로우 엔트리의 액션에 헤더 정보가 나타내져 있으면, 노드 장치는 해당 헤더 정보에 기초하여 패킷의 헤더를 재기입한다.
노드 장치는 플로우 엔트리의 룰에 일치하는 패킷의 그룹(일련의 패킷)에 대하여, 플로우 엔트리의 액션을 실행한다. 구체적으로는, 노드 장치는 패킷을 수신하면, 플로우 테이블에서 수신 패킷의 헤더 정보에 일치하는 룰을 갖는 플로우 엔트리를 검색한다. 수신 패킷의 헤더 정보에 일치하는 룰을 갖는 플로우 엔트리를 성공적으로 발견하였을 경우, 노드 장치는 해당 플로우 엔트리의 통계 정보를 갱신하고, 수신 패킷에 대하여 해당 플로우 엔트리의 액션으로서 지정된 동작을 실행한다. 수신 패킷의 헤더 정보에 일치하는 룰을 갖는 플로우 엔트리가 발견되지 않았을 경우, 노드 장치는 해당 수신 패킷을 제1 패킷으로서 판단하고, 오픈플로우 네트워크에 있어서의 컨트롤러에 수신 패킷(또는 그 카피)을 전송하고, 수신 패킷의 송신원과 수신처에 기초한 패킷 경로 산출을 요구하고, 응답으로서 플로우 엔트리의 설정용 메시지를 수신하고, 플로우 테이블을 갱신한다.
모든 패킷의 헤더 정보에 일치하는 룰을 갖는 디폴트 엔트리가 플로우 테이블 내에 낮은 우선도로 등록되어 있다는 점에 유의해야 한다. 수신 패킷에 일치하는 다른 플로우 엔트리가 발견되지 않았을 경우, 수신 패킷은 디폴트 엔트리에 일치한다. 디폴트 엔트리의 액션은 "컨트롤러에의 해당 수신 패킷의 문의 정보의 송신"으로서 정의된다.
2011년 3월 23일 검색, "OpenFlow Switch Specification, Version 1.0.0", [online], December 31, 2009, <URL:http://www.openflowswitch.org/documents/openflow-spec-v1.0.0.pdf>
대규모 네트워크에 있어서, 현재의 플로우 테이블의 사용 방법에서의 낮은 효율성으로 인해, 리소스가 부족하게 될 가능성이 있다.
또한, 기존의 기술에서는, 스위치가 ARP 등의 브로드캐스트 패킷을 이용해서 단말기 위치 정보(네트워크 상의 단말기의 현재 위치를 나타내는 정보)를 취득하기 때문에, 스위치는 브로드캐스트 패킷이 발송되지 않았을 시에는 단말기 위치 정보를 취득할 수 없다.
본 발명에서는, 단말기로부터 노드 장치로 패킷이 보내졌을 때, 노드 장치는 2개의 아이템인, 해당 노드 장치가 유지하고 있는 MAC 어드레스 정보 및 그 MAC 어드레스 정보에 결부되어 있는 포트 번호를, 전송될 패킷의 송신원 MAC 어드레스 정보 및 포트 번호와 비교한다.
상기의 비교의 결과로서 일치하는 정보가 없는 경우에는, 노드 장치는 컨트롤러에 문의 정보(Packet-in)를 송신하고, 단말기의 위치 정보가 컨트롤러에서 관리되며; 이 정보는 컨트롤러로부터 노드 장치에 등록된다. 문의 정보(Packet-in)는 오픈플로우 메시지 중의 하나이다.
비교에 있어서의 기술로서는, L2 러닝(learning) 기능과 마찬가지의 로직을 이용해서 비교하는 것이 바람직할 수 있다.
본 발명에 따른 네트워크 시스템은, 스위치; 및 패킷을 플로우로서 일률적으로 제어하기 위한 룰과 액션을 정의하는 플로우 엔트리를, 해당 스위치의 플로우 테이블에 설정하는 컨트롤러를 포함한다. 해당 스위치는 단말기로부터 패킷을 수신했을 때, 해당 패킷의 송신원 MAC 어드레스 정보와 포트 번호의 세트를 해당 컨트롤러에 통지한다. 해당 컨트롤러는 해당 스위치로부터의 통지에 기초하여 해당 패킷의 송신원인 단말기의 네트워크 상의 현재 위치를 인식한다.
본 발명에 따른 스위치는, 단말기로부터 패킷을 수신했을 때, 해당 패킷의 송신원인 단말기의 네트워크 상의 현재 위치 정보로서, 해당 패킷의 송신원 MAC 어드레스 정보와 포트 번호의 세트를 컨트롤러에 통지하는 수단; 및 해당 컨트롤러로부터의 제어에 따라서, 해당 패킷을 플로우로서 일률적으로 제어하기 위한 룰과 액션을 정의하는 플로우 엔트리를, 해당 스위치의 플로우 테이블에 설정하는 수단을 포함한다.
본 발명에 따른 접속 단말기 검지 방법에서는, 컨트롤러가, 패킷을 플로우로서 일률적으로 제어하기 위한 룰과 액션을 정의하는 플로우 엔트리를, 스위치의 플로우 테이블에 설정한다. 해당 스위치가, 단말기로부터 패킷을 수신했을 때, 해당 패킷의 송신원 MAC 어드레스 정보와 포트 번호의 세트를 해당 컨트롤러에 통지한다. 해당 컨트롤러가, 해당 스위치로부터의 통지에 기초하여 해당 패킷의 송신원인 단말기의 네트워크 상의 현재 위치를 인식한다.
본 발명에 따른 프로그램은, 스위치로 하여금, 패킷을 수신했을 때, 해당 패킷의 송신원인 단말기의 네트워크 상의 현재 위치 정보로서, 해당 패킷의 송신원 MAC 어드레스 정보와 포트 번호의 세트를 컨트롤러에 통지하는 단계; 및 해당 컨트롤러로부터의 제어에 따라서, 해당 패킷을 플로우로서 일률적으로 제어하기 위한 룰과 액션을 정의하는 플로우 엔트리를, 해당 스위치의 플로우 테이블에 설정하는 단계를 실행시키기 위한 프로그램이다. 본 발명에 따른 프로그램은 기억 장치나 기록 매체에 저장될 수 있다는 점에 유의해야 한다.
본 발명은 단말기로부터 전송되어 오는 패킷의 송신원 MAC 어드레스와 포트 번호(port 정보)만을 이용해서, 노드 장치 그룹에 접속되어 있는 단말기가, 어느 노드 장치의 어느 포트에 접속되어 있는지를 특정한다. 또한, 이 단말기 접속 정보를 컨트롤러가 관리함으로써, 단말기 위치를 고려한 경로 제어가 달성된다.
도 1은 본 발명의 제1 실시 형태에 따른 네트워크 시스템의 구성 예를 도시하는 도면이다.
도 2는 제1 실시 형태에 따른 노드 장치의 내부 구성에 대해서 설명하기 위한 도면이다.
도 3은 제1 실시 형태에 있어서의 단말기 위치 정보의 비교 내용의 상세에 대해서 설명하기 위한 도면이다.
도 4는 단말기 위치 정보 관리 테이블을 설명하기 위한 도면이다.
도 5는 제1 실시 형태를 이용한 시스템의 구성 예를 도시하는 도면이다.
도 6은 제1 실시 형태에 있어서의 접속 단말기 검지 처리를 설명하기 위한 플로우차트이다.
도 7은 본 발명의 제2 실시 형태에 따른 네트워크 시스템의 구성 예를 도시하는 도면이다.
도 8은 제2 실시 형태에 따른 노드 장치의 내부 구성에 대해서 설명하기 위한 도면이다.
도 9는 제2 실시 형태를 이용한 시스템의 구성 예를 도시하는 도면이다.
도 10은 본 발명의 제3 실시 형태에 따른 노드 장치의 내부 구성에 대해서 설명하기 위한 도면이다.
도 11은 제3 실시 형태에 있어서의 단말기 위치 정보의 비교 내용의 상세에 대해서 설명하기 위한 도면이다.
본 발명은 CD 분리형 네트워크에 관한 것이다. 여기에서는, CD 분리형 네트워크의 하나인 오픈플로우 네트워크를 예로 들어 설명한다. 실제 구현은 오픈플로우 네트워크에 한정되지 않는다는 점에 유의해야 한다.
<제1 실시 형태>
이하에, 본 발명의 제1 실시 형태에 대해서 첨부된 도면을 참조하여 설명한다.
[시스템 구성]
도 1을 참조하여, 본 발명의 제1 실시 형태에 따른 네트워크 시스템의 구성예에 대해서 설명한다.
본 발명의 제1 실시 형태에 따른 네트워크 시스템은 단말기(10)(10-i, i=1 내지 n: n은 임의 수), 노드 장치(20)(20-j, j=1 내지 m: m은 임의 수) 및 컨트롤러(30)를 포함한다.
[단말기의 상세]
단말기(10)(10-i, i=1 내지 n) 각각은 노드 장치(20)(20-j, j=1 내지 m)에 접속 가능한 단말기이다.
이 실시 형태에서, 패킷(50)은 단말기(10-1)로부터 노드 장치(20-1 및 20-2)를 통해서 단말기(10-2)로 전송된다.
단말기(10-1)는 패킷을 송출하는 송신원 단말기 "A"이다. 반면에, 단말기(10-2)는 패킷을 수신하는 수신처 단말기 "B"이다. 패킷(50)은 "수신처 B와 송신원 A의 패킷"이다.
"수신처 B"는 수신처가 단말기 B이고, 단말기 B의 MAC 어드레스가 수신처 MAC 어드레스로 지정되어 있는 것을 의미한다. "송신원 A"는 송신원이 단말기 A이고, 단말기 A의 MAC 어드레스가 송신원 MAC 어드레스로 지정되어 있는 것을 의미한다.
단말기(10)(10-i, i=1 내지 n) 각각은 오픈플로우 네트워크 외부의(오픈플로우를 지원하지 않는) 네트워크 장치일 수 있다는 점에 유의해야 한다.
[노드 장치의 상세]
노드 장치(20)(20-j, j=1 내지 m) 각각은 네트워크에 배치된 노드 장치이다. 노드 장치(20)(20-j, j=1 내지 m) 각각은 오픈플로우 네트워크에서는 오픈플로우 스위치(OFS)로서 동작한다. 노드 장치(20)(20-j, j=1 내지 m) 각각은 수신한 패킷을, 자신의 플로우 테이블에 등록된 플로우 엔트리를 따라서 전송한다.
노드 장치(20)(20-j, j=1 내지 m) 각각은 단말기 위치 정보 비교기(21)와, 플로우 테이블 비교기(22)를 포함한다.
단말기 위치 정보 비교기(21)는 MAC 어드레스 정보와 포트 번호를 이용해서 단말기 위치 정보 비교를 행한다. 구체적으로는, 단말기 위치 정보 비교기(21)는 MAC 어드레스 정보와 포트 번호를 유지하고, 그 내부에 유지하고 있는 MAC 어드레스 정보와 포트 번호의 세트와, 전송될 패킷의 송신원 MAC 어드레스 정보와 포트 번호의 세트를 비교한다. 이 실시 형태에서, 단말기 위치 정보 비교기(21)는 L2(레이어 2) 기능 블록, 즉 L2 블록이다.
플로우 테이블 비교기(22)는 통상의 노드 장치에 의해 행해지는 플로우 테이블과 플로우 정보와의 비교를 행한다.
[컨트롤러의 상세]
컨트롤러(30)는 네트워크에 배치된 노드 장치를 제어 및 관리한다. 컨트롤러(30)는 오픈플로우 네트워크에서 오픈플로우 컨트롤러(OFC)로서 동작한다. 컨트롤러(30)는 노드 장치(20-1 및 20-2)를 검지했을 때, 네트워크 내의 접속 상태를 나타내는 토폴로지(topology) 정보에 기초하여 패킷 전송 경로를 산출하고, 해당 경로에 관련되는 노드 장치의 플로우 테이블에 플로우 엔트리를 등록한다. 이에 따라, 컨트롤러(30)는 노드 장치(20-1)와 노드 장치(20-2) 사이의 경로 제어를 행한다.
컨트롤러(30)는 단말기 위치 정보 관리 테이블(31)을 갖는다.
[패킷의 상세]
패킷(50)은 노드 장치(20)(20-j, j=1 내지 m)에 전송되는 패킷이다.
문의 정보(Packet-in)(51)는 컨트롤러(30)에 경로 제어를 요구하는(또는 패킷(50)의 전송 경로에 대해 문의하는) 제어 메시지이다. 문의 정보(Packet-in)(51)의 데이터 형식 및 내용은 통상의 플로우 테이블 검색에 있어서 불일치(mismatch)가 발생했을 때 컨트롤러에 송신된 문의 정보(Packet-in)와 동일하고; 식별하기 위한 정보(또는 플래그)에는 문의 정보(Packet-in)(51)가 부여되어 있다.
예를 들면, 단말기 위치 정보 비교기(21)는 패킷(50)을 수신했을 때, 단말기 위치 정보 비교기(21)에 보유하고 있는 MAC 어드레스 정보와 해당 MAC 어드레스 정보에 결부되어 있는 포트 번호를, 전송될 패킷(50)의 송신원 MAC 어드레스 정보와 포트 번호의 세트와 비교하고, 불일치가 발생할 경우에, 패킷(50)에 기초하여 문의 정보(Packet-in)(51)를 생성하여, 이 문의 정보(Packet-in)(51)를 컨트롤러(30)에 전송한다.
문의 정보(Packet-in)(52)는 컨트롤러(30)에 경로 제어를 요구하는(또는 패킷(50)의 전송 경로에 대해 문의하는) 제어 메시지이다. 문의 정보(Packet-in)(52)와 통상의 문의 정보(Packet-in) 간의 차이는 식별하기 위한 정보(또는 플래그)가 다르다는 것뿐이고; 문의 정보(Packet-in)(52)의 데이터 형식 및 내용은 기본적으로 통상의 문의 정보(Packet-in)와 같다.
예를 들면, 플로우 테이블 비교기(22)는 플로우 테이블의 플로우 엔트리에 저장되어 있는 MAC 어드레스 정보와, 전송될 패킷(50)의 수신처 MAC 어드레스 정보를 비교하고, 불일치가 발생할 경우에, 패킷(50)에 기초하여 문의 정보(Packet-in)(52)를 생성하고, 이 문의 정보(Packet-in)(52)를 컨트롤러(30)에 전송한다.
이 실시 형태에서, 컨트롤러(30)는 노드 장치가 접속되어 있는 접속 포트를 내측 포트(23)로 정의한다. 또한, 컨트롤러(30)는 노드 장치와 단말기가 접속되어 있는 노드 장치 측의 접속 포트를 외측 포트(24)로 정의한다.
컨트롤러(30)는 노드 장치(20-1)로부터 수신된 문의 정보(Packet-in)(51)의 내용에 기초하여, 노드 장치(20-1)에 새로 접속되는 단말기(10-1)를 인식한다. 구체적으로는, 컨트롤러(30)는 문의 정보(Packet-in)(51)의 내용으로부터, 단말기(10-1)의 MAC 어드레스 정보와, 단말기(10-1)에 접속된 포트의 포트 번호를 취득하고, 단말기 위치 정보 관리 테이블(31)을 갱신한다. 단말기(10-1)에 접속된 포트는 당연히 외측 포트(24)라는 점에 유의해야 한다.
컨트롤러(30)는 단말기 위치 정보 관리 테이블(31)의 내용에 기초하여, 수신한 패킷에 대해 노드 장치(20)(20-j, j=1 내지 m) 각각의 테이블을 재기입한다.
[노드 장치의 내부 구성]
도 2를 참조하여, 본 실시 형태에 있어서의 각각의 노드 장치(20)(20-j, j=1 내지 m)의 내부 구성에 대해서 설명한다.
노드 장치(20)(20-j, j=1 내지 m) 각각은 단말기 위치 정보 비교기(21)와 플로우 테이블 비교기(22)를 포함한다.
단말기 위치 정보 비교기(21)는 MAC 및 포트 정보(단말기 위치 정보) 테이블(211)을 갖는다.
MAC 및 포트 정보 테이블(211)은 노드 장치(20)(20-j, j=1 내지 m)가 보유하는 MAC 어드레스 정보와 이 MAC 어드레스 정보에 결부되어 있는 포트 번호를 내부에 저장한다. 이 실시 형태에서, MAC 및 포트 정보 테이블(211)은 플로우 테이블(221) 이전에 검색되는 전단 검색 테이블로서 사용된다. MAC 및 포트 정보 테이블(211)은 MAC 어드레스 정보와 포트 번호의 세트에 의해 판별 조건(또는 룰)을 정의하는 플로우 테이블의 일종이라고 할 수 있다는 점에 유의해야 한다.
플로우 테이블 비교기(22)는 플로우 테이블(221)을 갖는다.
플로우 테이블(221)은 오픈플로우 네트워크에 있어서의 플로우 테이블이다. 이 실시 형태에서는, 플로우 테이블(221)은 MAC 및 포트 정보 테이블(211)의 이후에 검색되는 후단 검색 테이블이다.
이 실시 형태에서는, 단말기 위치 정보 비교기(21)가 단말기 위치 정보의 검색을 행하기 때문에, 플로우 테이블(221)에는 수신처 MAC 어드레스에 의해서만 판별 조건(또는 룰)을 정의하는 플로우 엔트리가 등록되기만 하면 된다.
이는 각각의 플로우 테이블(221)에 등록된 플로우 엔트리의 정보를 대폭 삭감할 수 있게 한다.
[단말기 위치 정보 비교 내용]
도 3을 참조하여, 단말기 위치 정보의 비교 내용의 상세에 대해서 설명한다.
단말기 위치 정보 비교기(21)가 유지하고 있는 MAC 및 포트 정보 테이블(211)은 MAC 어드레스 정보(2111)와 포트 번호(2112)를 저장하는 영역(또는 필드)을 포함한다.
패킷(50)은 헤더 영역에, 송신원 MAC 어드레스 정보(501)와 포트 번호(502)를 저장하는 영역을 갖는다.
노드 장치(20-1)에 패킷이 유입했을 때, 노드 장치(20-1)는 MAC 및 포트 정보 테이블(211)의 내용과 패킷(50)의 내용을 비교한다.
이 동작에서, 노드 장치(20-1)는 MAC 및 포트 정보 테이블(211)에 저장되어 있는 MAC 어드레스 정보(2111)와 해당 MAC 어드레스 정보(2111)에 결부되어 있는 포트 번호(2112)의 세트와, 패킷(50)이 보유하고 있는 송신원 MAC 어드레스 정보(501)와 포트 번호(502)의 세트를, 포트마다 그리고 MAC마다 비교한다.
노드 장치(20-1)는 비교의 결과로서, MAC 및 포트 정보 테이블(211)의 내용이 패킷(50)의 내용과 일치하면, 플로우 테이블 비교를 행한다.
노드 장치(20-1)는 비교의 결과로서, MAC 및 포트 정보 테이블(211)의 내용과 패킷(50)의 내용이 일치하지 않으면, L2 러닝 기능을 기동한다.
즉, MAC 및 포트 정보 테이블(211)은 단말기 위치 정보로서, 노드 장치(20-1)에 접속되어 있는 단말기의 MAC 어드레스 정보와, 해당 단말기에 접속되어 있는 포트의 포트 번호의 세트(들)를 유지하는 테이블로서 사용된다.
본 실시 형태에서는, 컨트롤러(30)는 이러한 비교의 불일치에 따라 발생하는 문의 정보(Packet-in)(51)의 수신에 응답하여, 패킷(50)을 수신하는 포트의 속성이 외측 포트뿐만 아니라, 입구 포트(Ingress Port)라고 판단할 수 있다.
또한, 컨트롤러(30)는 패킷(50)의 송신원 MAC 어드레스 정보(501)와 포트 번호(502)인 2 종류의 정보에만 기초하여 단말기 위치 정보를 관리할 수 있다.
[단말기 위치 정보]
도 4를 참조하여, 컨트롤러(30)가 포함하는 단말기 위치 정보 관리 테이블(31)의 예에 대해서 설명한다.
단말기 위치 정보 관리 테이블(31)은 노드 장치 정보(311), 단말기 MAC 정보(312) 및 포트 번호(313)를 저장하는 영역을 갖는다.
노드 장치 정보(311)는 단말기에 접속되어 있는 노드 장치의 식별 정보가 기입되는 영역이다.
단말기 MAC 정보(312)는 단말기의 MAC 어드레스(송신원 MAC 어드레스)의 정보가 기입되는 영역이다.
포트 번호(313)는 단말기에 접속되어 있는 노드 장치의 포트 번호가 기입되는 영역이다.
여기에서는 단말기 위치 정보 비교의 결과가 불일치할 경우에 발생하는 문의 정보(Packet-in)(51)가 컨트롤러(30)에 의해 관리되는 일례를 나타낸다.
컨트롤러(30)는 노드 장치(20-1)로부터 문의 정보(Packet-in)(51)를 수신하고, 문의 정보(Packet-in)(51)의 내용에 기초하여, 단말기 위치 정보 관리 테이블(31)에 단말기의 정보를 등록한다.
이 동작에서, 컨트롤러(30)는 문의 정보(Packet-in)(51)의 내용에 기초하여, 노드 장치 정보(311)에, 단말기에 접속되어 있는 노드 장치의 식별 정보를 기입하고, 단말기 MAC 정보(312)에, 단말기의 송신원 MAC 어드레스 정보를 기입하고, 포트 번호(313)에, 단말기에 접속되어 있는 노드 장치의 포트 번호를 기입한다.
[본 실시 형태를 이용한 시스템의 구성]
도 5를 참조하여, 본 실시 형태를 이용한 시스템의 구성예에 대해서 설명한다.
노드 장치(20)(20-j, j=1 내지 m) 각각은 어떤 브로드캐스트 패킷도 전송하지 않았고, 플로우 테이블(221) 내에는 아무것도 기입되지 않은 것으로 가정한다.
이 시스템은 단말기(10-1, 10-2, 10-3, 10-4), 노드 장치(20-1, 20-2, 20-3, 20-4) 및 컨트롤러(30)를 포함한다.
단말기(10-1, 10-2, 10-3, 10-4)는 도 1에 나타낸 단말기(10)(10-i, i=1 내지 n)에 상당한다는 점에 유의해야 한다.
노드 장치(20-1, 20-2, 20-3 및 20-4)는 도 1에 나타내는 노드 장치(20)(20-j, j=1 내지 m)에 상당한다는 점에 유의해야 한다.
컨트롤러(30)는 노드 장치(20-1, 20-2, 20-3 및 20-4)를 관리한다.
컨트롤러(30)는 단말기 위치 정보 관리 테이블(31)을 갖는다.
컨트롤러(30)는 노드 장치가 접속되어 있는 접속 포트를 내측 포트(23)로 정의하고, 노드 장치와 단말기가 접속되어 있는 노드 장치 측의 접속 포트를 외측 포트(24)로 정의한다.
노드 장치(20-1)는 포트 1에서 단말기(10-1)에 접속되고, 포트 2에서 단말기(10-3)에 접속되어 있다.
노드 장치(20-2)는 포트 1에서 단말기(10-2)에 접속되고, 포트 2에서 단말기(10-4)에 접속되어 있다.
노드 장치(20-1 및 20-2) 각각에 있어서, 포트 1 및 포트 2는 둘 다 외측 포트이다.
이 예에서, 컨트롤러(30)는 노드 장치가 접속되어 있는 위치를 특정하고, 이 특정된 위치를 내측 포트(23)로 정의하고, 이 특정된 위치를 관리 정보로서 관리한다.
이 관리 정보에 기초하여, 컨트롤러(30)는 내측 포트(23)에 대해 행해진 단말기 위치 정보 비교가 불일치의 결과를 야기할 때 발생하는 문의 정보(Packet-in)를 억제한다.
예를 들면, 컨트롤러(30)는 노드 장치(20-1)의 MAC 및 포트 정보 테이블(211)에, 내측 포트(23)의 포트 번호와 와일드 카드 등을 이용한 전 MAC 어드레스 정보의 세트를 등록하도록 구성될 수 있다. 이 경우, 노드 장치(20-1)는 내측 포트(23)에서 수신된 패킷에 대해서는 송신원 MAC 어드레스 정보와 관계없이, 무조건 플로우 테이블 비교기(22)의 처리로 스위칭된다.
컨트롤러(30)는 노드 장치(20-1)의 MAC 및 포트 정보 테이블(211)이 플로우 테이블의 일종일 경우, 가장 낮은 우선 순위에서, 외측 포트(24)의 포트 번호와 와일드 카드 등을 이용한 전 MAC 어드레스 정보의 세트를 룰로서 정의하고 컨트롤러(30)에 문의 정보를 전송하는 것을 액션으로서 정의하는 플로우 엔트리를 등록할 수 있다. 외측 포트(24)에서 수신된 패킷의 송신원 MAC 어드레스 정보가 등록되어 있지 않은 경우, 이는 상기의 플로우 엔트리만이 등록되어 있는 것을 의미하기 때문에, 노드 장치(20-1)는 현재의 패킷의 정보를 문의 정보(Packet-in)에 저장하고, 컨트롤러(30)에 문의 정보(Packet-in)를 전송한다.
이 예에서, 노드 장치(20-1)에 접속되어 있는 단말기(10-1)로부터 노드 장치(20-2)에 접속되어 있는 단말기(10-4)로 패킷이 전송되면, 노드 장치(20-1)는 단말기(10-1)로부터 외측 포트(24)를 통해서 유입해 온 패킷에 대하여 단말기 위치 정보 비교를 행하고; 단말기 위치 정보 비교의 결과가 불일치했을 때, 노드 장치(20-1)는 해당 패킷의 정보를 문의 정보(Packet-in)에 저장하고, 컨트롤러(30)에 문의 정보(Packet-in)를 전송한다.
컨트롤러(30)는 전송된 문의 정보(Packet-in)의 정보에 기초하여, 단말기 위치 정보 관리 테이블(31)에 단말기(10-1)의 정보를 등록하고, 단말기(10-1)의 위치(MAC 어드레스 정보와 포트 번호의 세트)를 포함하는 플로우 엔트리를 노드 장치(20-1)의 플로우 테이블(221)에 등록한다.
단말기(10-1)로부터 다른 패킷이 송신되면, 해당 패킷은 외측 포트(24)를 통해서 노드 장치(20-1)에 유입한다.
노드 장치(20-1)는 단말기(10-1)의 위치 정보가 등록되어 있는 플로우 테이블을 이미 갖고 있으므로, 단말기 위치 정보 비교의 결과는 일치한다. 그 다음, 노드 장치(20-1)는 플로우 테이블(221)을 검색하고, 일치한 플로우 엔트리가 있으면, 일치한 플로우 엔트리에 정의된 액션에 따라, 패킷을 노드 장치(20-2)에 전송한다.
이 동작에서, 노드 장치 간의 전송에 대해서도, 단말기 위치 정보 비교가 행해지지만; 컨트롤러(30)는 각 노드 장치의 내측 포트 관리를 행하여, 문의 정보(Packet-in)의 발생을 억제한다. 즉, 노드 장치 간의 전송에 대해서는 단말기 위치 정보 비교에 있어서 문의 정보(Packet-in)가 발생하지 않는다.
노드 장치(20-2)는 단말기 위치 정보 비교 및 플로우 테이블 비교의 결과로서, 수신된 패킷을 단말기(10-4)에 전송한다.
[접속 단말기 검지 처리]
도 6을 참조하여, 본 실시 형태에 따른 접속 단말기 검지 처리시의 동작에 대해서 설명한다.
(1) 단계 S101
우선, 컨트롤러(30)는 기존의 경로 제어에 기초하여 노드 장치의 접속 포트를 산출하고, 노드 장치들이 접속되어 있는 접속 포트를 내측 포트(23)로 정의하고, 노드 장치와 단말기가 접속되어 있는 노드 장치 측의 접속 포트를 외측 포트(24)로 정의하여, 노드 장치 간의 접속 포트와 노드 장치와 단말기 간의 접속 포트를 구별할 수 있게 한다. 그 다음, 노드 장치(20)(20-j, j=1 내지 m) 각각은 통상의 동작을 개시한다.
(2) 단계 S102
단말기(10-1)로부터 단말기(10-2)로 패킷(50)을 전송하는 경우, 노드 장치(20-1)의 단말기 위치 정보 비교기(21)는 도 3에 나타내는 비교 방법에 의해, 단말기 위치 정보 비교기(21)에 있는 MAC 및 포트 정보 테이블(211)과 패킷(50)을 비교하여, MAC 및 포트 정보 테이블(211)의 내용과 패킷(50)의 내용이 일치하는지를 확인한다. 구체적으로는, 단말기 위치 정보 비교기(21)는 MAC 및 포트 정보 테이블(211)에 저장되어 있는 MAC 어드레스 정보와 이 MAC 어드레스 정보에 결부되어 있는 포트 번호의 세트와, 단말기(10-1)로부터 수신된 패킷의 송신원 MAC 어드레스 정보와 포트 번호를 비교하여, 이들이 서로 일치하는지를 확인한다.
(3) 단계 S103
단말기 위치 정보 비교기(21)는 비교의 결과 일치할 경우, 플로우 테이블 비교기(22)에 패킷(50)을 전송한다.
(4) 단계 S104
단말기 위치 정보 비교기(21)는 비교의 결과 불일치할 경우, 문의 정보(Packet-in)(51)에 패킷(50)의 정보를 통합하고, 컨트롤러(30)에 문의 정보(Packet-in)(51)를 송신한다. 이 동작에서, 단말기 위치 정보 비교기(21)는 패킷(50)을 일시적으로 저장할 수 있다.
(5) 단계 S105
컨트롤러(30)는 이러한 문의 정보(Packet-in)(51)에 통합되어 있는 패킷(50)의 정보에 기초하여, 단말기 위치 정보 관리 테이블(31)에, 단말기(10-1)가 어느 노드 장치의 어느 포트에 접속되어 있는지를 나타내는 정보를 등록한다.
(6) 단계 S106
또한, 컨트롤러(30)는 단말기 위치 정보 관리 테이블(31)의 단말기 위치 정보에 기초하여, MAC 어드레스 정보와 포트 번호의 새로운 세트를, 노드 장치(20-1)의 MAC 및 포트 정보 테이블(211)에 등록한다. 이 예에서, 컨트롤러(30)는 등록이 완료된 경우, 문의 정보(Packet-in)(51)에 통합된 패킷(50)의 정보에 기초하여, 원래의 헤더 정보인 채로, 노드 장치(20-1)에 패킷(50)을 송신한다. 등록이 행해지지 않은 경우, 패킷(50)은 노드 장치(20-1)에 송신되지 않을 수 있다.
(7) 단계 S107
단말기 위치 정보 비교기(21)는 상기의 등록에 응답하여, 패킷(50)을 플로우 테이블 비교기(22)에 전송한다. 이 예에서, 단말기 위치 정보 비교기(21)는 컨트롤러(30)로부터 수신된 패킷(50)을 플로우 테이블 비교기(22)에 전송한다. 단말기 위치 정보 비교기(21)가 패킷(50)을 일시적으로 저장하고 있을 경우, 단말기 위치 정보 비교기(21)는 컨트롤러(30)로부터의 등록에 응답하여, 일시적으로 저장된 패킷(50)을 플로우 테이블 비교기(22)에 전송할 수 있다는 점에 유의해야 한다. 이 경우, 단말기 위치 정보 비교기(21)는 상기의 등록이 실행되지 않으면, 소정 기간 경과 후, 일시적으로 저장된 패킷(50)을 파기할 수 있다.
(8) 단계 S108
단말기 위치 정보 비교기(21)로부터 패킷(50)을 수신하면, 플로우 테이블 비교기(22)는 그 안에 포함된 플로우 테이블(221)을 검색하여, 플로우 테이블(221) 내의 임의의 플로우 엔트리가 패킷(50)과 일치하는지를 확인한다. 구체적으로는, 플로우 테이블 비교기(22)는 플로우 테이블(221)의 각 플로우 엔트리에 저장되어 있는 MAC 어드레스 정보와, 단말기(10-1)로부터 수신한 패킷의 수신처 MAC 어드레스 정보를 비교하여, 수신된 패킷의 수신처 MAC 어드레스 정보가 플로우 테이블(221)의 임의의 플로우 엔트리와 일치하는지를 확인한다. 실제 구현에서, 플로우 테이블 비교기(22)는 플로우 테이블(221)의 각 플로우 엔트리에 저장되어 있는 "MAC 어드레스 정보와 포트 번호의 세트"와, 단말기(10-1)로부터 수신한 패킷의 "수신처 MAC 어드레스 정보와 출력 포트 번호의 세트"를 비교하여, 수신한 패킷의 수신처 MAC 어드레스 정보와 출력 포트 번호의 세트가 플로우 테이블(221)의 임의의 플로우 엔트리와 일치하는지를 확인한다는 점에 유의해야 한다.
(9) 단계 S109
플로우 테이블 비교기(22)는 비교의 결과 플로우 테이블(221)의 임의의 플로우 엔트리와 일치할 경우, 일치한 플로우 엔트리의 액션에 따라, 패킷(50)을 내측 포트(23)에 출력하고, 패킷(50)을 단말기(10-2)에 전송한다.
(10) 단계 S110
플로우 테이블 비교기(22)는 비교의 결과 플로우 테이블(221)의 임의의 플로우 엔트리와 일치하지 않을 경우, 문의 정보(Packet-in)(52)에 패킷(50)의 정보를 통합하고, 컨트롤러(30)에 문의 정보(Packet-in)(52)를 송신한다. 이 동작에서, 플로우 테이블 비교기(22)는 패킷(50)을 일시적으로 저장할 수 있다.
(11) 단계 S111
컨트롤러(30)는 이러한 문의 정보(Packet-in)(52)에 통합되어 있는 패킷(50)의 정보에 기초하여, 전송 경로를 산출하고, 경로 상의 노드 장치(20)(20-j, j=1 내지 m) 각각의 플로우 테이블(221)에, 패킷(50)의 수신처 MAC 어드레스 정보와, 해당 패킷(50)을 소정의 내측 포트(23)에 전송하는 오더를 나타내는 플로우 엔트리를 등록한다. 컨트롤러(30)는 문의 정보(Packet-in)(52)에 통합된 패킷(50)의 정보에 기초하여, 노드 장치(20-1)에 패킷(50)을 송신할 수 있다.
(12) 단계 S112
플로우 테이블 비교기(22)는 플로우 테이블(221)에 등록된 플로우 엔트리의 액션에 따라, 패킷(50)을 내측 포트(23)에 출력하여, 이 패킷(50)을 단말기(10-2)에 전송한다. 이 동작에서, 플로우 테이블 비교기(22)는 컨트롤러(30)로부터 수신한 패킷(50), 또는 그 안에 일시적으로 저장하고 있는 패킷(50)을, 내측 포트(23)에 출력하여, 이 패킷(50)을 단말기(10-2)에 전송한다. 플로우 테이블 비교기(22)는 상기의 플로우 엔트리 등록이 행해지지 않으면, 소정 기간 경과 후, 일시적으로 저장하고 있는 패킷(50)을 파기할 수 있다는 점에 유의해야 한다.
[본 실시 형태의 특징]
본 실시 형태에서는 노드 장치가, 그 안에 보유하고 있는 MAC 어드레스 정보와 이 MAC 어드레스 정보에 결부되어 있는 포트 번호와, 패킷의 송신원 MAC 어드레스 정보와 포트 번호를 비교해서, 이들이 일치하지 않을 경우에는 문의 정보(Packet-in)를 컨트롤러에 송신한다.
컨트롤러는 이러한 문의 정보(Packet-in)로부터의 단말기의 위치를 축적하고, 단말기 위치를 포함한 플로우 엔트리를, 노드 장치의 플로우 테이블에 등록한다.
따라서, 노드 장치에 접속되어 있는 단말기의 위치는 단지 패킷의 송신원 MAC 어드레스 정보와 포트 번호에 기초하여 특정될 수 있다.
이는, 단말기가 이동하더라도, 컨트롤러에 의해 단말기의 위치를 특정할 수 있게 한다.
또한, 본 실시 형태에서는, 단말기 위치가 특정될 수 있고, 컨트롤러가 단말기 정보에 기초하여 경로를 선택할 수 있어, 경로를 유연하게 선택할 수 있게 한다.
또한, 본 실시 형태에서는, 컨트롤러가, 단말기 위치 정보 비교의 결과 불일치할 경우에 발생하는 문의 정보(Packet-in)의 정보로부터 단말기 위치 정보를 관리하고, 그 관리하고 있는 정보를 경로 선택의 기초로서 사용할 수 있다.
<제2 실시 형태>
이하에, 본 발명의 제2 실시 형태에 대해서 설명한다. 본 발명의 제2 실시 형태에서는, 단말기 위치 정보 비교의 결과 불일치할 경우에, 문의 정보(Packet-in)의 발생과 상관없이, 통상대로 오픈플로우 전송 처리가 행해진다.
[시스템 구성]
도 7을 참조하여, 본 발명의 제2 실시 형태에 따른 네트워크 시스템의 구성예에 대해서 설명한다.
본 발명의 제2 실시 형태에 따른 네트워크 시스템은 단말기(10)(10-i, i=1 내지 n), 노드 장치(20)(20-j, j=1 내지 m) 및 컨트롤러(30)를 포함한다.
단말기(10)(10-i, i=1 내지 n), 노드 장치(20)(20-j, j=1 내지 m) 및 컨트롤러(30)는 기본적으로, 도 1에 나타내는 것과 동일하다.
본 실시 형태에서는, 노드 장치(20-1)의 단말기 위치 정보 비교기(21)는 단말기 위치 정보의 비교 결과 불일치할 때, 패킷(50)(수신처 B와 송신원 A의 패킷)을 카피하고, 카피한 패킷(53)을 통합한 문의 정보(Packet-in)(51)를 생성한다.
우선, 컨트롤러(30)는 기존의 경로 제어에 기초하여 노드 장치의 접속 포트를 산출하고, 그 접속 포트를 내측 포트(23)로 정의한다. 이에 따라 컨트롤러(30)는 노드 장치들이 접속되는 접속 포트에서 단말기 위치 정보의 비교 결과 불일치할 경우에도 문의 정보(Packet-in)(51)의 발생을 억제한다. 그 다음, 노드 장치(20)(20-j, j=1 내지 m) 각각은 통상의 동작을 개시한다.
단말기(10-1)로부터 단말기(10-2)로 패킷(50)을 전송하는 경우, 노드 장치(20-1)는 단말기(10-1)로부터 수신한 패킷에 대해 단말기 위치 정보 비교를 행하고; 단말기 위치 정보의 비교 결과 불일치할 경우, 노드 장치(20-1)는 저장될 패킷(50)(수신처 B와 송신원 A의 패킷)을 카피하고, 카피한 패킷을 통합한 문의 정보(Packet-in)(51)를 생성한다.
컨트롤러(30)는 이러한 문의 정보(Packet-in)(51)에 통합된 패킷(50)의 정보에 기초하여, 단말기 위치 정보 관리 테이블(31)에, 단말기(10-1)가 어느 노드 장치의 어느 포트에 접속되어 있는지를 나타내는 정보를 등록한다.
컨트롤러(30)는 단말기 위치 정보 관리 테이블(31)에 기초하여, 수신한 패킷에 대해 노드 장치(20-1)의 플로우 테이블(221)을 재기입한다.
본 실시 형태에서는, 컨트롤러(30)는, 문의 정보(Packet-in)(51)에 응답하여, 컨트롤러(30)는 MAC 및 포트 정보 테이블(211)을 갱신하지 않고, 플로우 테이블(221)을 갱신하고 있다는 점에 유의한다. 즉, 컨트롤러(30)는 MAC 어드레스 정보와 포트 번호의 세트를 포함하는 플로우 엔트리를 플로우 테이블(221)에 등록한다.
노드 장치(20-1)의 단말기 위치 정보 비교기(21)는 단말기 위치 정보 비교가 끝난 후, 플로우 테이블(221)을 검색하고, 플로우 테이블(221) 내의 임의의 플로우 엔트리가 패킷(50)의 내용과 일치하면, 컨트롤러(30)의 전송 경로를 따라, 단말기(10-2)에 패킷(50)을 전송한다.
노드 장치(20-1)의 플로우 테이블 비교기(22)는 플로우 테이블을 검색하고, 그 결과 플로우 테이블과 불일치하면, 컨트롤러(30)에 송신되는 문의 정보(Packet-in)(52)를 발생시킨다.
이렇게, 본 실시 형태에서는, 노드 장치(20-1)는 단말기 위치 정보 비교의 결과 일치하거나 불일치하거나 상관없이, 패킷(50)을 수신했을 때에, 무조건 플로우 테이블(221)을 검색하고, 패킷(50)의 전송 처리를 행한다.
구체적으로는, 컨트롤러(30)로 문의 정보(Packet-in)(51)를 송신하는 경우, 노드 장치(20-1)의 단말기 위치 정보 비교기(21)는 패킷(50)(수신처 B와 송신원 A의 패킷)을 카피하고, 카피한 패킷(53)을 통합한 문의 정보(Packet-in)(51)를 컨트롤러(30)에 송신한다. 이 처리와 동시에 또는 병행하여, 노드 장치(20-1)는 패킷(50)을 플로우 테이블 비교기(22)에 전송한다.
[노드 장치의 내부 구성]
도 8을 참조하여, 본 실시 형태에 있어서의 각각의 노드 장치(20)(20-j, j=1 내지 m)의 내부 구성에 대해서 설명한다.
각각의 노드 장치(20)(20-j, j=1 내지 m)의 내부 구성은 기본적으로 도 2에 나타내는 것과 동일하다.
도 8에서는, 노드 장치(20)(20-j, j=1 내지 m)는 단말기 위치 정보 비교의 결과 불일치할 경우, 문의 정보(Packet-in)(51)가 발생하더라도, 통상대로 오픈플로우 전송 처리를 행한다.
단말기 위치 정보 비교기(21)는 MAC 및 포트 정보 테이블(211)의 내용과 패킷(50)의 내용을 비교한다.
MAC 및 포트 정보 테이블(211)의 내용이 패킷(50)의 내용과 일치하지 않을 경우, 단말기 위치 정보 비교기(21)는 패킷(50)을 카피하고, 카피한 패킷(53)을 통합한 문의 정보(Packet-in)(51)를 생성하고, 컨트롤러(30)에 문의 정보(Packet-in)(51)를 송신한다.
단말기 위치 정보 비교기(21)가 MAC 및 포트 정보 테이블(211)의 내용과 패킷(50)의 내용의 비교를 완료하면, 비교의 결과에 관계없이, 절차는 플로우 테이블 비교기(22)의 처리로 이행한다.
플로우 테이블 비교기(22)는 플로우 테이블(221)의 검색을 행하고, 플로우 테이블(221)의 내용과 패킷(50)의 내용을 비교한다.
플로우 테이블 비교기(22)는 플로우 테이블(221) 내의 임의의 플로우 엔트리가 패킷(50)의 내용과 일치할 경우, 일치한 플로우 엔트리의 액션에 따라서, 패킷(50)을 전송한다.
플로우 테이블 비교기(22)는 플로우 테이블(221) 내의 어떤 플로우 엔트리도 패킷(50)의 내용과 일치하지 않을 경우에는, 컨트롤러(30)에 문의 정보(Packet-in)(52)를 송신한다.
[본 실시 형태를 이용한 시스템의 구성]
도 9를 참조하여, 본 실시 형태를 이용한 시스템의 구성예에 대해서 설명한다.
노드 장치(20)(20-j, j=1 내지 m) 각각은 어떤 브로드캐스트 패킷도 전송하지 않았고, 플로우 테이블(221) 내에 아무것도 기입되지 않은 것으로 가정한다.
이 시스템은 단말기(10-1, 10-2, 10-3, 10-4), 노드 장치(20-1, 20-2, 20-3, 20-4) 및 컨트롤러(30)를 포함한다.
단말기(10-1, 10-2, 10-3 및 10-4)는 도 7에 나타내는 단말기(10)(10-i, i=1 내지 n)에 상당한다는 점에 유의해야 한다.
또한 노드 장치(20-1, 20-2, 20-3 및 20-4)는 도 7에 나타내는 노드 장치(20)(20-j, j=1 내지 m)에 상당한다는 점에 유의해야 한다.
컨트롤러(30)는 노드 장치(20-1, 20-2, 20-3 및 20-4)를 관리하고 있다.
컨트롤러(30)는 단말기 위치 정보 관리 테이블(31)을 갖는다.
컨트롤러(30)는 노드 장치들이 접속되는 접속 포트를 내측 포트(23)로 정의하고, 노드 장치와 단말기가 접속되는 노드 장치 측의 접속 포트를 외측 포트(24)로 정의한다.
노드 장치(20-1)는 포트 1에서 단말기(10-1)에 접속되고, 포트 2에서 단말기(10-3)에 접속되어 있다.
노드 장치(20-2)는 포트 1에서 단말기(10-2)에 접속되고, 포트 2에서 단말기(10-4)에 접속되어 있다.
노드 장치(20-1 및 20-2) 각각에 있어서, 포트 1 및 포트 2는 둘 다 외측 포트이다.
이 예에서는, 컨트롤러(30)는 노드 장치들이 접속되어 있는 위치를 특정하고, 이 특정된 위치를 내측 포트(23)로 정의해서, 이 특정된 위치를 관리한다.
컨트롤러(30)는 이러한 관리된 정보에 기초하여, 노드 장치(20-1)의 내측 포트(23)의 포트 번호를 MAC 및 포트 정보 테이블(211)에 등록하는 것을 방지하고; 컨트롤러(30)는 내측 포트(23)에서 수신한 패킷이 단말기 위치 정보 비교의 대상이 되지 않는 것을 결정함으로써 문의 정보(Packet-in)의 발생을 억제한다.
이하에, 노드 장치(20-1)에 접속되어 있는 단말기(10-1)로부터, 노드 장치(20-2)에 접속되어 있는 단말기(10-4)로 패킷을 전송하는 경우에 대해서 설명한다.
단말기(10-1)로부터 외측 포트(24)를 통해서 유입해 온 패킷(50)에 대한 단말기 위치 정보 비교의 결과 불일치할 경우, 노드 장치(20-1)는 패킷(50)을 문의 정보(Packet-in)(51)에 통합하고, 컨트롤러(30)에 문의 정보(Packet-in)(51)를 송신한다.
노드 장치(20-1)로부터 문의 정보(Packet-in)(51)를 수신했을 경우, 컨트롤러(30)는 문의 정보(Packet-in)(51)의 내용에 기초하여, 단말기 위치 정보 관리 테이블(31)에 단말기(10-1)의 정보를 등록한다.
또한, 컨트롤러(30)는 문의 정보(Packet-in)(51)의 내용에 기초하여, 패킷 전송 경로를 산출하고, 해당 경로에 관련되는 각각의 노드 장치(20)(20-j, j=1 내지 m)의 플로우 테이블(221)에 플로우 엔트리의 등록을 행한다.
이 동작에서, 컨트롤러(30)는 노드 장치(20-1)의 플로우 테이블(221)뿐만 아니라, 컨트롤러(30)에 접속되어 있는 복수의 노드 장치(20)(20-j, j=1 내지 m) 각각에 대하여, 플로우 변경 정보(FlowMod-Add)를 송신하고, 각 노드 장치(20)의 플로우 테이블(221)에, 단말기 위치 정보에 기초한 플로우 엔트리를 등록한다. 플로우 변경 정보(FlowMod-Add)는 오픈플로우 메시지의 일종이다.
구체적으로는, 컨트롤러(30)는 컨트롤러(30)에 접속되어 있는 복수의 노드 장치(노드 장치(20-2, 20-3 및 20-4))에 플로우 변경 정보(FlowMod-Add)(54)를 송신함으로써, 각 노드 장치(20)의 플로우 테이블(221)에, 노드 장치(20-1)에 접속되어 있는 단말기(10-1)의 위치(단말기 위치 정보)를 포함하는 플로우 엔트리를 등록(갱신 또는 반영)한다. 플로우 변경 정보(FlowMod-Add)(54)는 노드 장치(20-2, 20-3 및 20-4) 각각에 대한 플로우 테이블(221)로의 플로우 엔트리 등록을 달성하기 위한 제어 메시지이다.
상기 등록의 완료 후, 컨트롤러(30)는 플로우 변경 정보(FlowMod-Add)(55)를 노드 장치(20-1)에 송신함으로써, 노드 장치(20-1)의 플로우 테이블(221)에, 단말기(10-1)의 위치(단말기 위치 정보)를 포함하는 플로우 엔트리를 등록한다. 플로우 변경 정보(FlowMod-Add)(55)는 노드 장치(20-1)에 대한 플로우 테이블(221)로의 플로우 엔트리 등록을 달성하기 위한 제어 메시지이다.
그 다음, 단말기(10-1)가 다른 패킷(50)을 송신하면, 패킷(50)은 외측 포트(24)를 통해서 노드 장치(20-1)에 유입한다.
단말기(10-1)의 위치 정보를 갖는 플로우 엔트리가 이미 노드 장치(20-1)의 플로우 테이블(221)에 등록되어 있으므로, 단말기 위치 정보 비교의 결과 패킷(50)과 플로우 엔트리가 일치하고, 플로우 테이블의 검색의 결과 일치하면, 패킷(50)은 컨트롤러(30)의 경로 제어를 따라 노드 장치(20-2)에 전송된다.
이 동작에서, 단말기 위치 정보 비교가 노드 장치 간의 전송에 대해서 행해지지만, 컨트롤러(30)는 각 노드 장치의 내측 포트 관리를 행함으로써 문의 정보(Packet-in)의 발생을 억제한다. 즉, 컨트롤러(30)는 노드 장치 간의 전송에 대해서는 단말기 위치 정보 비교에 있어서 문의 정보(Packet-in)의 발생을 방지한다.
노드 장치(20-2)는 플로우 테이블 비교의 결과로서, 전송된 패킷을 단말기(10-4)에 전송한다.
<제3 실시 형태>
이하에, 본 발명의 제3 실시 형태에 대해서 설명한다. 본 발명의 제3 실시 형태에서는, 플로우 테이블 비교를 행하지 않고도, 단말기 위치 정보 비교만으로 오픈플로우 전송이 달성된다. 구체적으로는, MAC 및 포트 정보 테이블을 사용해서 단말기 위치 정보 비교를 행한 다음, MAC 및 포트 정보 테이블을 다시 사용해서 수신처 비교를 행하여, 오픈플로우 전송을 달성한다.
[노드 장치의 내부 구성]
도 10을 참조하여, 본 실시 형태에 있어서의 노드 장치(20)(20-i, i=1 내지 n)의 내부 구성에 대해서 설명한다.
노드 장치(20)(20-i, i=1 내지 n)는 패킷(50)을 수신했을 경우, 단말기 위치 정보 비교를 행하고, 단말기 위치 정보 비교 결과 일치할 경우, 이미 비교에 사용한 MAC 및 포트 정보 테이블(211)을 다시 사용해서, 패킷 전송을 달성한다.
예를 들면, 노드 장치(20)(20-i, i=1 내지 n)는 단말기 위치 정보 비교의 결과 일치할 경우, 비교에 사용한 MAC 및 포트 정보 테이블(211)의 MAC 어드레스 정보와, 패킷의 수신처 MAC 어드레스를 다시 비교하고; 일치하면, 노드 장치(20)는 패킷 전송을 행한다.
또한, 일치하지 않을 경우, 노드 장치(20)(20-i, i=1 내지 n)는 문의 정보(Packet-in)(51)를 발생시킨다.
예를 들면, 노드 장치(20)(20-i, i=1 내지 n)는 단말기 위치 정보 비교의 결과 불일치할 경우, 문의 정보(Packet-in)(51)를 생성하고, 컨트롤러(30)에 문의 정보(Packet-in)(51)를 송신한다.
컨트롤러(30)는 문의 정보(Packet-in)(51)의 내용에 기초하여, 컨트롤러(30)에 접속되어 있는 복수의 노드 장치(20)(20-j, j=1 내지 m) 각각에, 플로우 변경 정보(FlowMod-Add)(56)를 송신함으로써 각 노드 장치(20)의 MAC 및 포트 정보 테이블(211)을 갱신한다. 플로우 변경 정보(FlowMod-Add)(56)는 각 노드 장치(20)에 대한 MAC 및 포트 정보 테이블(211)의 갱신에 사용되는 제어 메시지이다.
[단말기 위치 정보 비교 내용]
도 11을 참조하여, MAC 및 포트 정보 테이블과 패킷의 수신처 MAC 어드레스와의 비교 내용의 상세에 대해서 설명한다.
단말기 위치 정보 비교기(21)는 단말기 위치 정보 비교를 행한 후에, 다시 MAC 및 포트 정보 테이블(211)과 패킷(50)을 비교한다.
구체적으로는, 단말기 위치 정보 비교기(21)는 MAC 및 포트 정보 테이블(211)에 저장되어 있는 MAC 어드레스 정보(2111)와 해당 MAC 어드레스 정보(2111)에 결부되어 있는 포트 번호(2112)의 세트와, 패킷(50)이 보유하고 있는 송신원 MAC 어드레스 정보(501)와 포트 번호(502)를, 포트마다 그리고 MAC마다 비교한다.
비교의 결과, MAC 어드레스 정보(2111)와 포트 번호(2112)의 세트가, 송신원 MAC 어드레스 정보(501)와 포트 번호(502)의 세트와 일치하는 경우, 단말기 위치 정보 비교기(21)는 단말기 위치 정보 비교에 사용되는 송신원 MAC 어드레스 정보(501)와 포트 번호(502)를 사용하지 않고, MAC 및 포트 정보 테이블(211)의 MAC 어드레스 정보(2111)와, 패킷(50)의 수신처 MAC 어드레스 정보(503)를 비교한다.
이러한 비교 결과 일치할 경우, 단말기 위치 정보 비교기(21)는 MAC 및 포트 정보 테이블(211)에 있어서 MAC 어드레스 정보(2111)에 결부되어 있는 포트 번호(2112)를 출력 포트로서 사용하여, 패킷(50)을 전송한다.
<각 실시 형태의 관계>
상기의 각 실시 형태는 조합해서 실시할 수 있다는 점에 유의해야 한다.
<하드웨어의 예시>
이하에, 본 발명에 따른 네트워크 시스템을 실현하기 위해 사용되는 구체적인 하드웨어의 예에 대해서 설명한다.
단말기 및 컨트롤러의 예로서는, PC(퍼스널 컴퓨터), 어플라이언스(appliance), 씬 클라이언트 서버, 워크스테이션, 메인 프레임, 수퍼 컴퓨터 등의 컴퓨터를 포함할 수 있다고 상정한다. 단말기의 다른 예는, IP 전화기, 휴대 전화기, 스마트 폰, 스마트 북, 카 내비게이션 시스템, 휴대형 게임기, 가정용 게임기, 휴대형 뮤직 플레이어, 휴대용 통신 단말기(handy terminal), 가젯(전자 장치), 쌍방향 텔레비전, 디지털 튜너, 디지털 리코더, 정보 가전, 사무 자동화 장비, 상점용 단말기(shop terminals), 고기능 복사기, 디지털 사이니지(Digital Signage) 등을 포함할 수 있다. 또한, 단말기 및 컨트롤러는 트랜스폰더(transponder)나 주변 장치일 수 있다는 점에 유의해야 한다.
노드 장치의 가능한 예는, 네트워크 스위치, 라우터, 프록시, 게이트웨이, 파이어월, 부하 분산 장치(load balancer), 대역 제어 장치(packet shaper), 시큐러티 모니터 컨트롤러(SCADA: Supervisory Control and Data Acquisition), 게이트키퍼(gatekeeper), 기지국(base station), 액세스 포인트(AP: Access Point), 통신 위성(CS: Communication Satellite), 및 복수의 통신 포트를 갖는 컴퓨터 등을 포함할 수 있다.
단말기, 노드 장치 및 컨트롤러는 확장 보드나, 물리 머신 위에 구축된 가상 머신(VM: Virtual Machine)일 수 있다. 단말기, 노드 장치 및 컨트롤러는 차량, 선박 및 항공기 등의 이동체 위에 탑재될 수 있다.
도면에는 나타내지 않았지만, 단말기, 노드 장치 및 컨트롤러 각각은 프로그램에 기초하여 구동해서 소정의 처리를 실행하는 프로세서와, 해당 프로그램 및 각종 데이터를 저장하는 메모리와, 네트워크와의 통신에 이용되는 인터페이스에 의해 실현된다.
상기의 프로세서의 가능한 예는, CPU(Central Processing Unit), 마이크로프로세서, 마이크로콘트롤러 및 전용 반도체 집적 회로(IC) 등을 포함할 수 있다.
상기의 메모리의 가능한 예는, 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) 등의 기억 매체 등을 포함할 수 있다. 상기 메모리는 버퍼(buffer)나 레지스터(register)일 수 있다. 대신, 메모리는 DAS(Direct Attached Storage), FC-SAN(Fiber Channel-Storage Area Network), NAS(Network Attached Storage), IP-SAN(IP-Storage Area Network) 등을 이용한 기억 장치일 수 있다.
상기의 프로세서 및 메모리는 일체화될 수 있다. 예를 들면, 최근에는 마이크로컴퓨터 등의 원-칩화가 대중화되고 있다. 따라서, 한가지 가능한 구현으로서, 전자 장치 등에 탑재되는 원-칩 마이크로컴퓨터가, 상기의 프로세서 및 메모리를 구비할 수 있다.
상기의 인터페이스의 가능한 예로서는, 네트워크 통신에 적합한 보드(마더보드 및 I/O 보드), 칩 등의 반도체 집적 회로, NIC(Network Interface Card) 등의 네트워크 어댑터, 유사한 확장 카드, 안테나 등의 통신 장치, 및 커넥터 등의 통신 포트 등이 있을 수 있다.
네트워크의 가능한 예로서는, 인터넷, LAN(Local Area Network), 무선 LAN(Wireless LAN), WAN(Wide Area Network), 백본(Backbone), 케이블 텔레비전(CATV) 회선, 고정 전화망, 휴대 전화망, WiMAX(IEEE 802.16a), 3G(third Generation), 전용선(lease line), IrDA(Infrared Data Association), 블루투스(등록 상표), 시리얼 통신 회선, 데이터 버스 등이 있을 수 있다.
단말기, 노드 장치 및 컨트롤러 각각의 내부 구성 요소는 각각 모듈, 컴포넌트, 전용 디바이스 또는 기동(호출) 프로그램일 수 있다는 점에 유의해야 한다.
실제 구현은 이들 예에 한정되지 않는다는 점에 유의해야 한다.
<요약>
이상과 같이, 본 발명은 오픈플로우(OpenFlow) 기능을 사용해서, 스위치에 접속된 단말기를 검지하는 네트워크 시스템에 관한 것이다.
본 발명에서, 노드 장치는 단말기로부터 노드 장치로 송신된 패킷의 송신원 MAC 어드레스 정보와 포트 번호의 세트와, 전단 검색 테이블(MAC 및 포트 정보 테이블)에 유지되어 있는 MAC 어드레스 정보와 포트 번호의 세트를 비교하여, 이들이 서로 일치하는지를 확인한다.
이러한 비교 결과 일치하지 않을 경우, 노드 장치는 오픈플로우의 문의 정보(Packet-in) 기능을 이용해서, 패킷이 보유하고 있는 송신원 MAC 어드레스 정보와 포트 번호의 세트를 컨트롤러에 통지한다. 또한, 노드 장치는 필요에 따라서, 전단 검색 테이블을 갱신한다.
컨트롤러에 걸리는 부하를 걱정하지 않는 것이라면, 노드 장치는 모든 패킷이 보유하고 있는 송신원 MAC 어드레스 정보와 포트 번호의 세트를 컨트롤러에 무조건 통지할 수 있다.
또한, 노드 장치는 패킷의 수신처 MAC 어드레스 정보와, 후단 검색 테이블(플로우 테이블)에 유지되어 있는 MAC 어드레스 정보의 세트(들)를 비교하여, 이들이 서로 일치하는지를 확인한다. 실제 구현에 있어서, 노드 장치는 패킷의 수신처 MAC 어드레스와 포트 번호의 세트와, 후단 검색 테이블에 유지되어 있는 MAC 어드레스 정보의 세트(들)를 비교하여, 이들이 서로 일치하는지를 확인할 수 있다는 점에 유의해야 한다.
이러한 비교 결과 일치하지 않을 경우, 노드 장치는 오픈플로우의 문의 정보(Packet-in) 기능을 이용해서, 해당 패킷에 대해 수행될 액션에 관해서 문의한다. 또한, 노드 장치는 필요에 따라서, 후단 검색 테이블을 갱신한다.
전단 검색 테이블과 후단 검색 테이블로서 공동 테이블이 이용된다는 점에 유의해야 한다.
이는, 단말기로부터 전송되어 온 패킷의 송신원 MAC 어드레스 정보와 포트 번호에만 기초하여, 노드 장치의 그룹에 접속되어 있는 단말기가 어느 노드 장치의 어느 포트에 접속되어 있는지 특정할 수 있게 한다.
또한, 이러한 단말기 접속 정보를 컨트롤러에 의해 관리함으로써, 단말기 위치를 고려한 경로 제어가 달성될 수 있다.
또한, 후단 검색 테이블(플로우 테이블)의 데이터 내용은 축퇴(degenerate)될 수 있다.
본 발명에서, 단말기 위치 정보 비교가 단말기 이동 검지를 위해 행해지고, 단말기 위치 정보 비교의 결과 불일치할 경우, 이를 계기로 패킷을 통합한 문의 정보(Packet-in)가 생성되고; 이 문의 정보(Packet-in)는 컨트롤러에 전송된다.
또한, 단말기 위치 정보 비교 결과 불일치할 때, 전송되어 온 패킷은 카피되고, 이 카피된 패킷은 문의 정보(Packet-in)에 통합되며; 이 문의 정보(Packet-in)는 컨트롤러에 전송된다.
또한, 단말기 위치 정보 비교의 결과 불일치할 경우에 응답하여 발생하는 문의 정보(Packet-in)는 플로우 테이블 검색의 실패에 응답하여 발생하는 문의 정보(Packet-in)와 구별된다.
또한, 본 발명에서, 노드 장치는 문의 정보(Packet-in)를 생성해서, 노드 장치에 접속되어 있는 단말기 위치를 컨트롤러에 통지한다. 이에 따라, 컨트롤러는 노드 장치의 문의 정보(Packet-in)에 기초하여, 노드 장치에 접속되는 단말기의 위치 정보를 취득할 수 있다.
또한, 포트의 속성에 따라, 단말기 위치 정보의 통지를 행한다. 예를 들면, 노드 장치들이 접속되어 있는 접속 포트에 내측 포트의 속성을 부여하고, 노드 장치와 단말기가 접속되어 있는 노드 장치 측의 접속 포트에 외측 포트의 속성을 부여하며; 이는 단말기 위치 정보 비교의 결과 불일치할 때 발생하는 문의 정보(Packet-in)의 발생을 억제한다.
또한, 본 발명에서는 단말기 위치 정보 비교를 행한다. 예를 들면, 노드 장치가 보유하고 있는 MAC 어드레스 정보와 포트 번호의 세트(들)는 각각 패킷의 송신원 MAC 어드레스 정보와 포트 번호의 세트와 비교된다.
또한, MAC 및 포트 정보 테이블 전송이 행해진다. 예를 들면, MAC 및 포트 정보 테이블은 패킷의 수신처 MAC 어드레스와 비교되고, MAC 및 포트 정보 테이블이 패킷의 수신처 MAC 어드레스와 일치할 경우, 패킷은 MAC 및 포트 정보 테이블 내의 MAC 어드레스 정보에 결부되어 있는 포트에 전송된다.
본질적으로는, 본 발명은 유입하는 플로우에 대하여, 단말기 위치 정보 비교(송신원 MAC 어드레스와 포트 번호의 세트(들)를 이용한 비교)에 의해 송신원 단말기로부터 패킷이 수신되어야 하는지의 여부를 판정하고, 플로우 테이블 검색(수신처 MAC 어드레스를 이용한 비교)에 의해 수신처 단말기로 패킷이 전송되어야 하는지의 여부를 판정한다.
<비고>
이상, 본 발명의 실시 형태를 상술하고 있지만, 본 발명은 상기의 실시 형태에 한정되는 것으로 해석되지 않고; 본 발명의 요지를 일탈하지 않는 범위에서의 변경이 있어도 본 발명에 포함된다.
본 출원은 일본 출원 번호 제2011-082765호에 기초하는 우선권을 주장하는 것이며, 일본 출원 번호 제2011-082765호에 있어서의 개시 내용은 인용에 의해 본 출원에 통합된다.

Claims (14)

  1. 네트워크 시스템으로서,
    스위치; 및
    패킷을 플로우로서 일률적으로 제어하기 위한 룰과 액션을 정의하는 플로우 엔트리를, 상기 스위치의 플로우 테이블에 설정하는 컨트롤러
    를 포함하고,
    상기 스위치는 단말기로부터 패킷을 수신했을 때, 상기 패킷의 송신원 MAC 어드레스 정보와 포트 번호의 세트를 상기 컨트롤러에 통지하고,
    상기 컨트롤러는 상기 스위치로부터의 통지에 기초하여, 상기 패킷의 송신원인 상기 단말기의 네트워크 상의 현재 위치를 인식하고, 상기 송신원 MAC 어드레스와 상기 포트 번호에 기초하여, 상기 스위치에 상기 플로우 엔트리를 설정하는 네트워크 시스템.
  2. 제1항에 있어서, 상기 스위치는,
    상기 스위치가 보유하고 있는 MAC 어드레스 정보와 포트 번호의 세트(들)와, 상기 패킷의 송신원 MAC 어드레스 정보와 포트 번호의 세트를 비교하고, 일치하지 않을 경우, 상기 패킷에 기초하는 제1 문의 패킷을 생성하여 상기 컨트롤러에 상기 제1 문의 패킷을 송신하는 수단; 및
    상기 스위치가 보유하고 있는 상기 MAC 어드레스 정보와, 상기 패킷의 수신처 MAC 어드레스 정보를 비교하고, 일치하지 않을 경우, 상기 패킷에 기초하는 제2 문의 패킷을 생성하여 상기 컨트롤러에 상기 제2 문의 패킷을 송신하는 수단
    을 포함하고,
    상기 컨트롤러는,
    상기 제1 문의 패킷의 내용에 기초하여, 상기 단말기의 MAC 어드레스 정보와 상기 단말기에 접속된 포트를 나타내는 포트 번호를 관리하는 수단; 및
    상기 제1 및 제2 문의 패킷의 내용에 기초하여, 상기 스위치가 보유하고 있는 정보를 갱신하는 수단
    을 포함하는 네트워크 시스템.
  3. 제2항에 있어서, 상기 스위치는,
    상기 스위치가 보유하고 있는 상기 MAC 어드레스 정보와 포트 번호의 세트(들)와, 상기 패킷의 상기 송신원 MAC 어드레스 정보와 포트 번호의 상기 세트를 비교하고, 일치하는 경우, 상기 스위치가 보유하고 있는 상기 MAC 어드레스 정보와, 상기 패킷의 수신처 MAC 어드레스 정보를 비교하는 수단; 및
    상기 스위치가 보유하고 있는 상기 MAC 어드레스 정보와, 상기 패킷의 상기 수신처 MAC 어드레스 정보를 비교하고, 일치하는 경우, 상기 패킷을 전송하는 수단
    을 더 포함하는 네트워크 시스템.
  4. 스위치로서,
    단말기로부터 패킷을 수신했을 때, 상기 패킷의 송신원인 상기 단말기의 네트워크 상의 현재 위치 정보로서, 상기 패킷의 송신원 MAC 어드레스 정보와 포트 번호의 세트를, 컨트롤러에 통지하는 수단; 및
    상기 송신원 MAC 어드레스와 상기 포트 번호에 기초하여 상기 컨트롤러가 결정한 플로우 엔트리를 수신하고, 상기 패킷을 플로우로서 일률적으로 제어하기 위한 룰과 액션을 정의하는 상기 플로우 엔트리를, 자신의 플로우 테이블에 설정하는 수단
    을 포함하는 스위치.
  5. 제4항에 있어서,
    보유하고 있는 MAC 어드레스 정보와 포트 번호의 세트(들)와, 상기 패킷의 송신원 MAC 어드레스 정보와 포트 번호의 세트를 비교하고, 일치하지 않을 경우, 상기 패킷에 기초하는 제1 문의 패킷을 생성하여 상기 컨트롤러에 상기 제1 문의 패킷을 송신하는 수단; 및
    보유하고 있는 MAC 어드레스 정보와, 상기 패킷의 수신처 MAC 어드레스 정보를 비교하고, 일치하지 않을 경우, 상기 패킷에 기초하는 제2 문의 패킷을 생성하여 상기 컨트롤러에 상기 제2 문의 패킷을 송신하는 수단
    을 더 포함하는 스위치.
  6. 제5항에 있어서,
    보유하고 있는 상기 MAC 어드레스 정보와 포트 번호의 상기 세트(들)와, 상기 패킷의 상기 송신원 MAC 어드레스 정보와 포트 번호의 상기 세트를 비교하고, 일치하는 경우, 보유하고 있는 MAC 어드레스 정보와, 상기 패킷의 수신처 MAC 어드레스 정보를 비교하는 수단; 및
    보유하고 있는 상기 MAC 어드레스 정보와, 상기 패킷의 상기 수신처 MAC 어드레스 정보를 비교하고, 일치하는 경우, 상기 패킷을 전송하는 수단
    을 더 포함하는 스위치.
  7. 접속 단말기 검지 방법으로서,
    스위치가 단말기로부터 패킷을 수신했을 때, 상기 패킷의 송신원 MAC 어드레스 정보와 포트 번호의 세트를 컨트롤러에 통지하는 단계; 및
    상기 컨트롤러가, 상기 스위치로부터의 통지에 기초하여, 상기 패킷의 송신원인 상기 단말기의 네트워크 상의 현재 위치를 인식하고, 상기 송신원 MAC 어드레스와 상기 포트 번호에 기초하여, 패킷을 플로우로서 일률적으로 제어하기 위한 룰과 액션을 정의하는 플로우 엔트리를 상기 스위치에 설정하는 단계
    를 포함하는 접속 단말기 검지 방법.
  8. 스위치로 하여금,
    단말기로부터 패킷을 수신했을 때, 상기 패킷의 송신원인 상기 단말기의 네트워크 상의 현재 위치 정보로서, 상기 패킷의 송신원 MAC 어드레스 정보와 포트 번호의 세트를, 컨트롤러에 통지하는 단계; 및
    상기 송신원 MAC 어드레스 정보와 상기 포트 번호에 기초하여 상기 컨트롤러가 결정한 플로우 엔트리를 수신하고, 상기 패킷을 플로우로서 일률적으로 제어하기 위한 룰과 액션을 정의하는 상기 플로우 엔트리를, 자신의 플로우 테이블에 설정하는 단계
    를 실행시키도록 하는 프로그램을 저장하는 기록 매체.
  9. 제8항에 있어서, 상기 프로그램은 상기 스위치로 하여금,
    보유하고 있는 MAC 어드레스 정보와 포트 번호의 세트(들)와, 상기 패킷의 송신원 MAC 어드레스 정보와 포트 번호의 세트를 비교하고, 일치하지 않을 경우, 상기 패킷에 기초하는 제1 문의 패킷을 생성하여 상기 컨트롤러에 상기 제1 문의 패킷을 송신하는 단계; 및
    보유하고 있는 MAC 어드레스 정보와, 상기 패킷의 수신처 MAC 어드레스 정보를 비교하고, 일치하지 않을 경우, 상기 패킷에 기초하는 제2 문의 패킷을 생성하여 상기 컨트롤러에 상기 제2 문의 패킷을 송신하는 단계
    를 더 실행시키도록 하는 기록 매체.
  10. 제9항에 있어서, 상기 프로그램은 상기 스위치로 하여금,
    보유하고 있는 상기 MAC 어드레스 정보와 포트 번호의 상기 세트(들)와, 상기 패킷의 상기 송신원 MAC 어드레스 정보와 포트 번호의 상기 세트를 비교하고, 일치하는 경우, 보유하고 있는 MAC 어드레스 정보와, 상기 패킷의 수신처 MAC 어드레스 정보를 비교하는 단계; 및
    보유하고 있는 MAC 어드레스 정보와, 상기 패킷의 수신처 MAC 어드레스 정보를 비교하고, 일치하는 경우, 상기 패킷을 전송하는 단계
    를 더 실행시키도록 하는 기록 매체.
  11. 스위치로서,
    단말기로부터 송신된 패킷의 송신원 어드레스와 상기 패킷의 수신 포트를 컨트롤러에 통지하는 제1 수단; 및
    상기 송신원 어드레스와 상기 수신 포트에 기초하여 상기 컨트롤러가 결정한 제어 정보를 수신하고, 패킷 플로우의 식별 조건과 상기 식별 조건에 대응하는 패킷 처리 룰을 포함하는 상기 제어 정보에 따라서 패킷을 전송하는 제2 수단
    을 포함하는 것을 특징으로 하는 스위치.
  12. 제11항에 있어서,
    상기 제1 수단은 상기 단말기로부터 송신된 패킷의 송신원 어드레스와 상기 패킷의 수신 포트를 관리하고, 수신 패킷의 송신원 어드레스가 상기 관리된 송신원 어드레스와 일치하지 않는 경우, 상기 패킷의 송신원 어드레스와 상기 수신 포트를 상기 컨트롤러에 통지하는 스위치.
  13. 통신 방법으로서,
    단말기로부터 송신된 패킷의 송신원 어드레스와 상기 패킷의 수신 포트를 컨트롤러에 통지하고,
    상기 송신원 어드레스와 상기 수신 포트에 기초하여 상기 컨트롤러가 결정한 제어 정보를 수신하고, 패킷 플로우의 식별 조건과 상기 식별 조건에 대응하는 패킷 처리 룰을 포함하는 상기 제어 정보에 따라서 패킷을 전송하는 것을 특징으로 하는 통신 방법.
  14. 제13항에 있어서,
    상기 단말기로부터 송신된 패킷의 송신원 어드레스와 상기 패킷의 수신 포트를 관리하고,
    수신 패킷의 송신원 어드레스가 상기 관리된 송신원 어드레스와 일치하지 않는 경우, 상기 패킷의 송신원 어드레스와 상기 수신 포트를 상기 컨트롤러에 통지하는 것을 특징으로 하는 통신 방법.
KR1020137025960A 2011-04-04 2012-03-28 네트워크 시스템, 스위치 및 접속 단말기 검지 방법 KR101501397B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2011-082765 2011-04-04
JP2011082765 2011-04-04
PCT/JP2012/058150 WO2012137646A1 (ja) 2011-04-04 2012-03-28 ネットワークシステム、スイッチ、及び接続端末検知方法

Publications (2)

Publication Number Publication Date
KR20130126730A KR20130126730A (ko) 2013-11-20
KR101501397B1 true KR101501397B1 (ko) 2015-03-12

Family

ID=46969047

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137025960A KR101501397B1 (ko) 2011-04-04 2012-03-28 네트워크 시스템, 스위치 및 접속 단말기 검지 방법

Country Status (10)

Country Link
US (1) US9444743B2 (ko)
EP (1) EP2696537B1 (ko)
JP (1) JP5652630B2 (ko)
KR (1) KR101501397B1 (ko)
CN (1) CN103477593B (ko)
BR (1) BR112013025528A2 (ko)
CA (1) CA2832019A1 (ko)
ES (1) ES2607106T3 (ko)
RU (1) RU2583745C2 (ko)
WO (1) WO2012137646A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101926987B1 (ko) * 2017-07-11 2018-12-07 사단법인 엑시콘산학공동연구소 반도체 메모리 디바이스를 테스트 하기 위한 테스트 시스템 및 방법

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9191327B2 (en) 2011-02-10 2015-11-17 Varmour Networks, Inc. Distributed service processing of network gateways using virtual machines
US10333827B2 (en) * 2012-04-11 2019-06-25 Varmour Networks, Inc. Adaptive session forwarding following virtual machine migration detection
JP6175766B2 (ja) * 2012-12-25 2017-08-09 日本電気株式会社 通信ノード、制御装置、通信システム、エントリ集約方法及びプログラム
CN103905577A (zh) * 2012-12-28 2014-07-02 中兴通讯股份有限公司 一种地址解析协议报文的处理方法和系统
US9270618B2 (en) 2013-02-28 2016-02-23 International Business Machines Corporation Source routing with fabric switches in an ethernet fabric network
CN103209121B (zh) * 2013-03-15 2019-02-01 中兴通讯股份有限公司 基于开放流协议的控制面设备的发现处理方法及装置
CN104113474B (zh) * 2013-04-22 2017-08-29 华为技术有限公司 转发路径的生成方法、控制器和系统
EP3012736A4 (en) * 2013-07-15 2016-07-27 Huawei Tech Co Ltd METHOD, DEVICE AND SYSTEM FOR PROCESSING DATA FLOWS
CN103501246A (zh) * 2013-09-27 2014-01-08 迈普通信技术股份有限公司 查找终端设备的上联采集设备和上联端口的方法及装置
JP6260285B2 (ja) * 2014-01-10 2018-01-17 富士通株式会社 制御装置および転送制御方法
US10091238B2 (en) 2014-02-11 2018-10-02 Varmour Networks, Inc. Deception using distributed threat detection
US9973472B2 (en) 2015-04-02 2018-05-15 Varmour Networks, Inc. Methods and systems for orchestrating physical and virtual switches to enforce security boundaries
US10264025B2 (en) 2016-06-24 2019-04-16 Varmour Networks, Inc. Security policy generation for virtualization, bare-metal server, and cloud computing environments
US9680708B2 (en) 2014-03-14 2017-06-13 Veritas Technologies Method and apparatus for cloud resource delivery
US20150341377A1 (en) * 2014-03-14 2015-11-26 Avni Networks Inc. Method and apparatus to provide real-time cloud security
US9439131B2 (en) 2014-05-13 2016-09-06 Adtran, Inc. Detecting and disabling rogue access points in a network
CN104079506B (zh) * 2014-07-18 2017-02-15 国家电网公司 一种基于地理位置信息的交换机端口三层管理架构及其应用
CN104301446B (zh) * 2014-08-08 2019-04-09 新华三技术有限公司 一种报文处理方法、交换机设备及系统
CN104219150B (zh) * 2014-09-03 2018-03-16 新华三技术有限公司 流表下发方法及装置
CN104283738B (zh) * 2014-10-11 2018-07-17 新华三技术有限公司 一种链路检测方法及设备
CN104320340A (zh) * 2014-10-21 2015-01-28 杭州华三通信技术有限公司 软件定义网络中学习源mac地址的方法和装置
US10193929B2 (en) 2015-03-13 2019-01-29 Varmour Networks, Inc. Methods and systems for improving analytics in distributed networks
US9294442B1 (en) 2015-03-30 2016-03-22 Varmour Networks, Inc. System and method for threat-driven security policy controls
US9380027B1 (en) 2015-03-30 2016-06-28 Varmour Networks, Inc. Conditional declarative policies
US10009381B2 (en) 2015-03-30 2018-06-26 Varmour Networks, Inc. System and method for threat-driven security policy controls
US9525697B2 (en) 2015-04-02 2016-12-20 Varmour Networks, Inc. Delivering security functions to distributed networks
CN104869125B (zh) * 2015-06-09 2020-04-17 上海斐讯数据通信技术有限公司 基于sdn的动态防mac地址欺骗方法
CN104917640B (zh) * 2015-06-12 2017-11-24 国家电网公司 一种与接入点对应的交换机端口的定位方法
US10187218B2 (en) * 2015-09-15 2019-01-22 Google Llc Systems and methods for processing packets in a computer network
US10191758B2 (en) 2015-12-09 2019-01-29 Varmour Networks, Inc. Directing data traffic between intra-server virtual machines
US9680852B1 (en) 2016-01-29 2017-06-13 Varmour Networks, Inc. Recursive multi-layer examination for computer network security remediation
US9762599B2 (en) 2016-01-29 2017-09-12 Varmour Networks, Inc. Multi-node affinity-based examination for computer network security remediation
US9521115B1 (en) 2016-03-24 2016-12-13 Varmour Networks, Inc. Security policy generation using container metadata
US10755334B2 (en) 2016-06-30 2020-08-25 Varmour Networks, Inc. Systems and methods for continually scoring and segmenting open opportunities using client data and product predictors
US10560407B2 (en) * 2016-10-06 2020-02-11 Sap Se Payload description for computer messaging
KR20180056895A (ko) * 2016-11-21 2018-05-30 고려대학교 산학협력단 Sdn의 방화벽 응용의 검증시스템 및 그 검증방법
US11290493B2 (en) 2019-05-31 2022-03-29 Varmour Networks, Inc. Template-driven intent-based security
US11863580B2 (en) 2019-05-31 2024-01-02 Varmour Networks, Inc. Modeling application dependencies to identify operational risk
US11310284B2 (en) 2019-05-31 2022-04-19 Varmour Networks, Inc. Validation of cloud security policies
US11290494B2 (en) 2019-05-31 2022-03-29 Varmour Networks, Inc. Reliability prediction for cloud security policies
US11711374B2 (en) 2019-05-31 2023-07-25 Varmour Networks, Inc. Systems and methods for understanding identity and organizational access to applications within an enterprise environment
US11575563B2 (en) 2019-05-31 2023-02-07 Varmour Networks, Inc. Cloud security management
CN111107021A (zh) * 2019-11-22 2020-05-05 广东工业大学 一种信息流路径的确定方法、装置、设备和存储介质
CN111555981A (zh) * 2020-04-03 2020-08-18 深圳震有科技股份有限公司 一种数据传输方法、交换机及存储介质
CN111726305B (zh) * 2020-06-18 2021-03-16 广州市品高软件股份有限公司 一种面向虚拟机的多级流表管控方法及系统
US11818152B2 (en) 2020-12-23 2023-11-14 Varmour Networks, Inc. Modeling topic-based message-oriented middleware within a security system
US11876817B2 (en) 2020-12-23 2024-01-16 Varmour Networks, Inc. Modeling queue-based message-oriented middleware relationships in a security system
US11777978B2 (en) 2021-01-29 2023-10-03 Varmour Networks, Inc. Methods and systems for accurately assessing application access risk
US11734316B2 (en) 2021-07-08 2023-08-22 Varmour Networks, Inc. Relationship-based search in a computing environment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003324468A (ja) * 2002-05-08 2003-11-14 Hitachi Ltd データ転送システム及びノード装置
JP2009239625A (ja) * 2008-03-27 2009-10-15 Fujitsu Ltd ユーザ現在地検索装置、ユーザ現在地検索システム、ユーザ現在地検索方法、およびコンピュータプログラム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7453801B2 (en) * 2001-11-08 2008-11-18 Qualcomm Incorporated Admission control and resource allocation in a communication system supporting application flows having quality of service requirements
KR100425745B1 (ko) * 2001-11-24 2004-04-06 엘지전자 주식회사 패킷의 헤더압축을 지원하는 통신 시스템에서 패킷의전송방법
JP2004153775A (ja) * 2002-09-03 2004-05-27 Ntt Docomo Inc 送受信制御装置、送受信制御方法および送受信制御プログラム
JP2007318432A (ja) 2006-05-25 2007-12-06 Kyowa Exeo Corp ネットワーク端末位置情報取得方法およびシステム
EP1976195B1 (en) * 2007-03-30 2014-05-07 Alcatel-Lucent Method and apparatus for Mac address learning
EP2193630B1 (en) * 2007-09-26 2015-08-26 Nicira, Inc. Network operating system for managing and securing networks
JP2009094832A (ja) 2007-10-10 2009-04-30 Nec Access Technica Ltd マルチキャストデータ配信装置、その配信方法およびその配信制御プログラム
GB2461955A (en) * 2008-07-25 2010-01-27 Gnodal Ltd Ethernet bridge or router employing a distributed MAC address table
CN102349268B (zh) 2009-03-09 2015-11-25 日本电气株式会社 OpenFlow通信系统和OpenFlow通信方法
JP2011082765A (ja) 2009-10-06 2011-04-21 Hitachi Chem Co Ltd 電子機器、送受信部間の接続方法及びフィルム状配線
EP3720062A1 (en) 2009-10-07 2020-10-07 NEC Corporation Information system, control server, virtual network management method, and program
WO2011144495A1 (en) * 2010-05-19 2011-11-24 Telefonaktiebolaget L M Ericsson (Publ) Methods and apparatus for use in an openflow 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
US8619546B2 (en) * 2010-08-17 2013-12-31 Alcatel Lucent Method and apparatus for coping with link failures in central control plane architectures
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
US9001827B2 (en) * 2010-12-17 2015-04-07 Big Switch Networks, Inc. Methods for configuring network switches

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003324468A (ja) * 2002-05-08 2003-11-14 Hitachi Ltd データ転送システム及びノード装置
JP2009239625A (ja) * 2008-03-27 2009-10-15 Fujitsu Ltd ユーザ現在地検索装置、ユーザ現在地検索システム、ユーザ現在地検索方法、およびコンピュータプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101926987B1 (ko) * 2017-07-11 2018-12-07 사단법인 엑시콘산학공동연구소 반도체 메모리 디바이스를 테스트 하기 위한 테스트 시스템 및 방법

Also Published As

Publication number Publication date
US20140022894A1 (en) 2014-01-23
JPWO2012137646A1 (ja) 2014-07-28
CA2832019A1 (en) 2012-10-11
JP5652630B2 (ja) 2015-01-14
KR20130126730A (ko) 2013-11-20
CN103477593B (zh) 2017-03-29
WO2012137646A1 (ja) 2012-10-11
EP2696537A1 (en) 2014-02-12
US9444743B2 (en) 2016-09-13
RU2013148947A (ru) 2015-05-10
EP2696537B1 (en) 2016-09-28
EP2696537A4 (en) 2014-09-03
CN103477593A (zh) 2013-12-25
ES2607106T3 (es) 2017-03-29
RU2583745C2 (ru) 2016-05-10
BR112013025528A2 (pt) 2016-12-27

Similar Documents

Publication Publication Date Title
KR101501397B1 (ko) 네트워크 시스템, 스위치 및 접속 단말기 검지 방법
US9548933B2 (en) Network system, switch, and methods of network configuration
US10623314B2 (en) Switch system, and monitoring centralized control method
EP2562970B1 (en) Switch, and flow table control method
JP5610247B2 (ja) ネットワークシステム、及びポリシー経路設定方法
KR101464900B1 (ko) 네트워크 시스템 및 네트워크 관리 방법
CN105262683B (zh) 网络系统和路由控制方法
US9246815B2 (en) Load reducing system and load reducing method
KR101562726B1 (ko) 통신 경로 제어 시스템, 및 통신 경로 제어 방법
CN104081731A (zh) 网络系统以及管理拓扑的方法
US9203758B2 (en) Network system, packet processing method and recording medium

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