KR101562726B1 - 통신 경로 제어 시스템, 및 통신 경로 제어 방법 - Google Patents

통신 경로 제어 시스템, 및 통신 경로 제어 방법 Download PDF

Info

Publication number
KR101562726B1
KR101562726B1 KR1020137031775A KR20137031775A KR101562726B1 KR 101562726 B1 KR101562726 B1 KR 101562726B1 KR 1020137031775 A KR1020137031775 A KR 1020137031775A KR 20137031775 A KR20137031775 A KR 20137031775A KR 101562726 B1 KR101562726 B1 KR 101562726B1
Authority
KR
South Korea
Prior art keywords
switch
controller
switches
communication
internal
Prior art date
Application number
KR1020137031775A
Other languages
English (en)
Other versions
KR20140014263A (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 KR20140014263A publication Critical patent/KR20140014263A/ko
Application granted granted Critical
Publication of KR101562726B1 publication Critical patent/KR101562726B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers

Landscapes

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

Abstract

본 발명은 오픈플로우 네트워크와 통상 네트워크 사이의 경계에서, 컨트롤러와의 통신 장애가 발생할 때, 경로가 적절하게 스위칭되지 않는다는 과제를 해결한다. 본 발명에 있어서, 컨트롤러는 복수의 내부 스위치 각각의 플로우 테이블을 갱신하여 복수의 내부 스위치에 의해 형성되는 경로를 최적의 경로가 되도록 한다. 복수의 내부 스위치 중 내부 스위치 A는 외부 스위치와 최적 경로를 형성하여 활성 시스템의 내부 스위치가 된다. 복수의 내부 스위치 중 내부 스위치 B는 외부 스위치와 용장 경로를 형성하여 대기 시스템의 내부 스위치가 된다. 내부 스위치 A는, 컨트롤러와 내부 스위치 A 간의 접속이 불가능하다고 감지되면, 외부 스위치와 접속하는 포트의 링크다운을 실행한다. 외부 스위치는, 내부 스위치 A와 접속하는 포트의 링크-다운이 감지되면, 활성 시스템의 내부 스위치 A로 보내지던 트래픽을 대기 시스템의 내부 스위치 B로 중계하도록 경로를 스위칭한다.

Description

통신 경로 제어 시스템, 및 통신 경로 제어 방법{COMMUNICATION PATH CONTROL SYSTEM, AND COMMUNICATION PATH CONTROL METHOD}
본 발명은 통신 경로 제어 시스템에 관한 것으로, 더 구체적으로는, 스위치 노드의 통신 경로를 제어하는 통신 경로 제어 시스템에 관한 것이다.
종래의 네트워크 장치들에서는, 외부로부터 부하 분산 및 편중 등의 유연성 있는 제어를 수행할 수 없다는 문제가 있다. 이 때문에, 네트워크의 규모가 커지면, 시스템의 거동의 파악과 개선이 곤란해지고, 설계 및 구성 변경에 많은 비용이 필요하다는 문제들이 있다.
이러한 과제를 해결하기 위한 기술로서, 네트워크 장치의 패킷 전송 기능과 경로 제어 기능을 서로 분리하는 수단이 고려되고 있다. 예를 들면, 패킷 전송 기능을 네트워크 장치가 담당하고, 제어 기능을 네트워크 장치의 외부에 분리된 제어 장치가 담당하도록 구분함으로써, 제어 장치가 패킷의 전송을 집중해서 관리할 수 있어서, 유연성이 높은 네트워크를 구축하는 것이 가능하게 된다.
[CD 분리형 네트워크의 설명]
기능을 분리한 집중 관리형 네트워크들 중 하나로서, 컨트롤 플레인 측의 제어 장치로부터 데이터 플레인 측의 노드 장치를 제어하는 CD(C: 컨트롤 플레인/D: 데이터 플레인) 분리형 네트워크가 제안되어 있다.
CD 분리형 네트워크의 일 예로서, 컨트롤러가 스위치를 제어해서 네트워크의 경로 제어를 행하는 오픈플로우(OpenFlow) 기술을 이용하는 오픈플로우 네트워크가 있다. 오픈플로우 기술의 상세에 대해서는 비특허 문헌 1에 기재되어 있다. 오픈플로우 네트워크는 일 예에 불과하다는 것을 유의한다.
[오픈플로우 네트워크의 설명]
오픈플로우 네트워크에서는, 제어 장치에 상당하는 오픈플로우 컨트롤러(OFC: OpenFlow Controller)가, 노드 장치에 상당하는 오픈플로우 스위치(OFS: OpenFlow Switch)의 경로 제어에 관한 플로우 테이블(Flow table)을 조작함으로써 오픈플로우 스위치(OFS)의 거동을 제어한다.
이하, 설명의 간략화를 위해, 오픈플로우 컨트롤러(OFC)를 "컨트롤러"라고 일컫고, 오픈플로우 스위치(OFS)를 "스위치"라고 일컫는다.
컨트롤러와 스위치는 전용선, 또는 SSL(SecureSocketLayer) 등에 의해 보호되는 통신로로서 기능하는 "시큐어 채널(Secure Channel)"이라고 일컬어지는 제어 채널(제어용 통신 채널)을 통해 서로 접속된다. 컨트롤러와 스위치는 제어 채널을 통해, 오픈플로우 프로토콜(OpenFlow Protocol)에 따라(준거하여) 제어 메시지인 오픈플로우 메시지(OpenFlow Message)를 송신 및 수신한다.
오픈플로우 네트워크에 있어서의 스위치들은 오픈플로우 네트워크에 배치되고 컨트롤러에 의해 제어되는 에지 스위치 및 코어 스위치를 나타낸다. 오픈플로우 네트워크에 있어서, 입력측 에지 스위치(Ingress)에서의 패킷의 수신으로부터 출력측 에지 스위치(Egress)에서의 송신까지의 패킷의 일련의 흐름을 플로우라고 일컫는다. 오픈플로우 네트워크에 있어서, 통신은 엔드-투-엔드(E2E: End to End)의 플로우로서 취급된다. 그리고, 플로우 단위로 경로 제어, 장애 회복, 부하 분산, 및 최적화가 수행된다.
패킷을 프레임(frame)이라고 일컬을 수도 있다. 패킷과 프레임 간의 차이는 프로토콜에서 취급되는 데이터의 단위(PDU: Protocol Data Unit(프로토콜 데이터 단위))의 차이에 불과하다. 패킷은 "TCP/IP"(Transmission Control Protocol/Internet Protocol: 전송 제어 프로토콜/인터넷 프로토콜)의 PDU이다. 한편, 프레임은 "이더넷(Ethernet)(등록 상표)"의 PDU이다.
플로우 테이블은 플로우 엔트리(Flow entries)의 집합이다. 각각의 플로우 엔트리는, 플로우로서 취급되는 패킷을 특정하기 위한 판별 조건(룰)과, 패킷이 룰에 매치한 경우의 횟수를 나타내는 통계 정보와, 패킷에 대하여 행해야 할 처리 내용(액션)의 조합을 정의한다.
플로우 엔트리의 룰은, 패킷의 헤더 영역(필드)에 포함되는 각 프로토콜 계층들의 정보의 일부 또는 모두를 이용한 다양한 조합에 기초하여 정의되고, 구별될 수 있다. 각 프로토콜 계층들의 정보의 예로서, 송신처 어드레스(Destination Address), 송신원 어드레스(Source Address), 송신처 포트(Destination Port), 및 송신원 포트(Source Port) 등이 고려된다. 또한, 상기의 어드레스에는, MAC 어드레스(Media Access Control Address: 미디어 액세스 제어 어드레스) 및 IP 어드레스(Internet Protocol Address: 인터넷 프로토콜 어드레스)가 포함될 수 있다. 또한, 전술한 것 외에, 입력 포트(Ingress Port)의 정보도 플로우 엔트리의 룰에 사용될 수 있다. 또한, 플로우 엔트리의 룰로서, 플로우로서 취급되는 패킷의 헤더 영역의 값들의 일부(또는 전부)를 정규 표현이나 와일드 카드(wild card) "*" 등을 이용하여 나타내는 표현을 설정하는 것도 가능하다.
플로우 엔트리의 액션은 "특정한 포트에 출력", "폐기", 또는 "헤더의 재기입" 등의 동작을 나타낸다. 예를 들면, 스위치는, 플로우 엔트리의 액션에 출력 포트의 식별 정보(출력 포트 번호 등)가 나타내져 있으면, 그 식별 정보에 해당하는 포트에 패킷을 출력하고, 출력 포트의 식별 정보가 나타내져 있지 않으면, 패킷을 폐기한다. 또는, 스위치는, 플로우 엔트리의 액션에 헤더 정보가 나타내져 있으면, 그 헤더 정보에 기초하여 패킷의 헤더를 재기입한다.
스위치는 플로우 엔트리의 룰에 매치하는 패킷 군(패킷 계열)에 대하여 플로우 엔트리의 액션을 실행한다. 구체적으로, 스위치는 패킷을 수신할 때, 플로우 테이블로부터, 수신 패킷의 헤더 정보에 매치하는 룰을 갖는 플로우 엔트리를 검색한다. 검색의 결과로서, 수신 패킷의 헤더 정보에 매치하는 룰을 갖는 플로우 엔트리가 발견되면, 스위치는 그 플로우 엔트리의 통계 정보를 갱신하고, 수신 패킷에 대하여, 그 플로우 엔트리의 액션으로서 지정된 동작을 실행한다. 한편, 검색의 결과로서, 수신 패킷의 헤더 정보에 매치하는 룰을 갖는 플로우 엔트리가 발견되지 않는다면, 스위치는 수신 패킷을 최초의 패킷이라고 판단하고, 제어 채널을 통해 오픈플로우 네트워크의 컨트롤러에 수신 패킷(또는 그의 카피)을 전송하고, 수신 패킷의 송신원 및 송신처(데스티네이션 어드레스) 등에 기초한 패킷의 경로 계산을 요구하고, 그 후 응답으로서 플로우 엔트리의 설정용 메시지를 수신하고, 그에 따라 플로우 테이블을 갱신한다.
플로우 테이블에는, 낮은 우선도에서, 모든 패킷의 헤더 정보에 매치하는 룰을 갖는 디폴트 엔트리가 등록되어 있다는 것을 유의한다. 수신 패킷에 매치하는 플로우 엔트리가 다른 엔트리들 중에서 발견되지 않으면, 수신 패킷은 이 디폴트 엔트리에 매치한다. 디폴트 엔트리의 액션은 "컨트롤러에 수신 패킷에 관한 문의 정보의 송신"이다.
[종래의 오픈플로우 네트워크의 예시]
도 1을 참조하여, 종래의 오픈플로우 네트워크에 대해서 설명한다. 여기에서는, 내부 스위치의 개수가 4개일 경우를 예로서 설명한다.
도 1에 도시된 바와 같이, 종래의 오픈플로우 네트워크는 내부 스위치(1 내지 4), 컨트롤러(5), 외부 스위치(6), 단말기(7), 및 서버(8)를 포함한다.
내부 스위치는 오픈플로우 네트워크에 배치되어 컨트롤러에 의해 제어되는 에지 스위치 및 코어 스위치를 의미한다. 외부 스위치는 오픈플로우 네트워크의 외측(오픈플로우 네트워크 외의 네트워크)에 위치하고 컨트롤러에 의해 제어되지 않는 스위치를 의미한다.
내부 스위치(1 내지 4) 각각은 오픈플로우 프로토콜에 준거한 제어 메시지를 송신 및 수신하기 위한 시큐어 채널(Secure Channel)을 통해 컨트롤러(5)와 접속된다. 내부 스위치(1)는 외부 스위치(6)와 접속된다. 내부 스위치(2)는 내부 스위치(1)의 용장 경로(redundant route)(예비 경로 또는 우회 경로)로서 외부 스위치(6)와 접속된다. 내부 스위치(3)는 내부 스위치(1) 및 서버(8) 등과 접속된다. 내부 스위치(4)는 내부 스위치(2) 및 서버(8) 등과 접속된다. 컨트롤러(5)는 내부 스위치(1 내지 4)의 경로를 제어하고, 최적 경로를 설정한다. 외부 스위치(6)는 단말기(7)와 접속된다. 단말기(7)는 외부 스위치(6) 및 내부 스위치(1 내지 4)를 통해 서버(8)와 통신을 행한다. 외부 스위치(6) 및 단말기(7)는 둘 다 오픈플로우 네트워크의 외측에 존재하는 외부 통신 장치들에 상당한다.
[종래의 오픈플로우 네트워크의 과제]
종래의 오픈플로우 네트워크는 다음과 같은 과제가 있다.
제1 과제는 다음과 같다. 컨트롤러와 내부 스위치(1) 간의 통신이 불가능해질 때, 내부 스위치(1)는 통신이 끊어지기 전의 경로 정보에 기초하여 통신을 계속한다. 따라서, 실제의 통신이 컨트롤러에 의한 제어에 매치되지 않으므로, 통신 제어가 불가능해진다.
제2 과제는 다음과 같다. 내부 스위치(1)와 컨트롤러 간의 통신을 수행할 수 없을 때, 내부 스위치와 외부 스위치에는 새로운 경로 설정을 확립할 수 없다.
즉, 오픈플로우 네트워크 등의 CD 분리형 네트워크에서는, 내부 스위치와 컨트롤러 간에 통신 장애가 발생할 때, 컨트롤러는 컨트롤러와 통신할 수 없는 내부 스위치를 경로 제어의 대상으로부터 제거하고, 다른 내부 스위치를 이용해서 경로선택을 행하도록 스위칭한다. 그러나, 외부 스위치는 그 통신 장애를 검출할 수 없었고 그에 대처할 수 없었다.
즉, 장애가 발생한 내부 스위치와 접속되는 외부 스위치로부터의 트래픽에 대해서는, 장애 발생 전의 경로 정보에 따라 경로 제어를 행한다. 따라서, 컨트롤러와의 통신이 복구될 때까지 최적의 경로 제어가 수행될 수 없다. 여기서, 트래픽은 네트워크상에 전송하는 디지털 데이터(패킷)를 의미한다.
"OpenFlow Switch Specification, Version 1.0.0", [online], December 31, 2009, [2011년 5월 16일 검색], 인터넷(URL : http://www.openflowswitch.org/documents/openflow-spec-v1.0.0.pdf)
본 발명의 목적은 CD 분리형 네트워크상에서 내부 스위치와 컨트롤러 간의 통신에 장애가 발생할 때, CD 분리형 네트워크에 배치된 내부 스위치에 있어서, CD 분리형 네트워크의 외측에 존재하는 외부 통신 장치와의 접속에 사용되는 포트(VLAN 포트, 물리 포트 등)의 링크-다운(link-down)을 실행함으로써, 외부로부터의 용장 경로로의 스위칭을 가능하게 하는 통신 경로 제어 시스템을 제공하는 것이다.
본 발명의 양태에 따르면, 통신 경로 제어 시스템은, 네트워크에 배치된 복수의 스위치; 상기 복수의 스위치 각각에 대한 경로 제어를 실행하도록 구성된 컨트롤러; 및 상기 네트워크의 외측에 존재하고, 상기 복수의 스위치 중 활성 스위치와 접속하도록 구성된 외부 통신 장치를 포함한다. 상기 활성 스위치는, 상기 컨트롤러와의 통신 타임아웃이 검지될 때, 상기 외부 통신 장치와의 접속에 사용되는 포트의 링크-다운을 실행하도록 구성된다. 상기 컨트롤러는, 상기 활성 스위치와의 통신 타임아웃이 검지될 때, 상기 활성 스위치를 상기 네트워크로부터 분리하고, 상기 복수의 스위치 중 대기 스위치를 경유하는 경로로 스위칭하도록 경로 제어를 실행하도록 구성된다. 상기 외부 통신 장치는, 상기 활성 스위치와의 접속에 사용되는 포트의 링크-다운이 검지될 때, 전에 상기 활성 스위치에 송신되고 있었던 트래픽을, 상기 대기 스위치 또는 상기 네트워크의 외측에 존재하는 스위치 중 어느 하나에 송신하도록 구성된다.
본 발명의 양태에 따르면, 통신 경로 제어 방법에 있어서, 컨트롤러가 복수의 스위치 각각에 대한 경로 제어를 실행한다. 상기 네트워크의 외측에 존재하는 외부 통신 장치가 상기 복수의 스위치 중 활성 스위치와 접속한다. 상기 활성 스위치가, 상기 컨트롤러와의 통신 타임아웃이 검지될 때, 상기 외부 통신 장치와의 접속에 사용되는 포트의 링크-다운을 실행한다. 상기 컨트롤러가, 상기 활성 스위치와의 통신 타임아웃이 검지될 때, 상기 활성 스위치를 상기 네트워크로부터 분리하고, 상기 복수의 스위치 중 대기 스위치를 경유하는 경로로 스위칭하도록 경로 제어를 실행한다. 상기 외부 통신 장치가, 상기 활성 스위치와의 접속에 사용되는 포트의 링크-다운이 검지될 때, 전에 상기 활성 스위치에 송신되고 있었던 트래픽을, 상기 대기 스위치 또는 상기 네트워크의 외측에 존재하는 스위치 중 어느 하나에 송신한다.
본 발명의 양태에 있어서, 프로그램은 상기 통신 경로 제어 방법의 처리를 상기 스위치, 컨트롤러, 또는 외부 통신 장치로서 사용되는 컴퓨터(스위치 및 서버 등일 수 있음)에게 실행시킨다. 또한, 본 발명에 따른 프로그램은 저장 장치 또는 저장 매체에 저장될 수 있다.
상기에 있어서, 내부 스위치와 컨트롤러 간의 통신에 장애가 발생할 때, 내부 스위치와 외부 통신 장치 둘 다에 대해 현재의 경로가 용장 경로로 스위칭될 수 있다.
도 1은 종래의 오픈플로우 네트워크의 구성예에 대해서 설명하기 위한 도면이다.
도 2는 본 발명의 제1 실시예에 따른 통신 경로 제어 시스템의 구성예에 대해서 설명하기 위한 도면이다.
도 3은 본 발명의 제1 실시예에 따른 통신 경로 제어 시스템의 동작에 대해서 설명하기 위한 도면이다.
도 4는 본 발명의 제1 실시예에 따른 내부 스위치의 구성예에 대해서 설명하기 위한 도면이다.
도 5는 본 발명의 제1 실시예에 따른 컨트롤러의 구성예에 대해서 설명하기 위한 도면이다.
도 6은 본 발명의 제1 실시예에 따른 외부 스위치의 구성예에 대해서 설명하기 위한 도면이다.
도 7은 본 발명의 제2 실시예에 따른 통신 경로 제어 시스템의 구성예에 대해서 설명하기 위한 도면이다.
본 발명의 대상은 CD 분리형 네트워크이다. 여기에서는, CD 분리형 네트워크들 중 하나인 오픈플로우 네트워크를 예로서 설명한다. 그러나, 실제로, 본 발명은 오픈플로우 네트워크에 한정되지 않는다.
<제1 실시예>
이하, 본 발명의 제1 실시예에 대해서 첨부 도면을 참조하여 설명한다.
[시스템 구성]
도 2에 도시된 바와 같이, 본 발명의 제1 실시예에 따른 통신 경로 제어 시스템은 내부 스위치(10)(10-i, i=1 내지 n: n은 임의의 수), 컨트롤러(20), 외부 스위치(30), 단말기(40), 및 서버(50)를 포함한다.
내부 스위치(10)(10-i, i=1 내지 n)는 오픈플로우 네트워크에 배치된 에지 스위치 또는 코어 스위치이다.
여기에서는, 내부 스위치(10)(10-i, i=1 내지 n)가 4개일 경우를 예로서 설명한다. 내부 스위치(10-1 내지 10-4) 각각은 오픈플로우 프로토콜에 준거한 제어 메시지를 송신 및 수신하기 위한 시큐어 채널(Secure Channel)을 통해 컨트롤러(20)와 접속된다. 내부 스위치(10-1)는 외부 스위치(30)와 접속된다. 내부 스위치(10-2)는 내부 스위치(10-1)의 용장 경로로서 외부 스위치(30)와 접속된다. 즉, 내부 스위치(10-1)는 활성 시스템(메인 시스템, 실제 시스템)이고, 내부 스위치(10-2)는 대기 시스템(서브 그룹, 예비 그룹)으로서 작용한다. 내부 스위치(10-3)는 내부 스위치(10-1) 및 서버(50) 등과 접속된다. 내부 스위치(10-4)는 내부 스위치(10-2) 및 서버(50) 등과 접속된다. 그러나, 실제로는, 내부 스위치(10-1 내지 10-4) 각각이 서로 접속될 수 있다. 도 1에 실선으로 도시된 접속은 최적 경로와 용장 경로의 예들을 나타낸 것에 불과하다.
컨트롤러(20)는 내부 스위치(10-1 내지 10-4)의 경로를 제어하고, 최적 경로를 설정한다.
외부 스위치(30)는 오픈플로우 네트워크의 외측에 존재하는 스위치이다. 외부 스위치(30)는 단말기(40)와 접속된다.
단말기(40)는 외부 스위치(30) 및 내부 스위치(10-1 내지 10-4)를 통해 서버(50)와 통신을 행한다.
외부 스위치(30) 및 단말기(40)는 둘 다 오픈플로우 네트워크의 외측에 존재하는 외부 통신 장치들에 상당한다.
여기에서, 외부 스위치(30)는 링크 어그리게이션(link aggregation) 등을 이용해서 내부 스위치(10-1) 및 내부 스위치(10-2)와 접속되어 용장 경로를 형성한다. 여기에서, 링크 어그리게이션은 복수의 회선을 가상적으로 1개의 회선으로서 취급함으로써 통신 속도 및 내고장성을 향상시키는 기술을 나타낸다.
또한, 컨트롤러(20)는 외부 스위치(30)의 경로를 직접 제어할 수 없다.
[장애 발생시의 동작]
하기에서는 도 3을 참조하여 내부 스위치(10-1)의 장애 발생시의 동작에 대해서 설명한다.
(1) 단계 S101
내부 스위치(10-1)는 컨트롤러(20)와의 통신 타임아웃을 검지할 때, 외부 스위치(30)와의 접속에 사용되는 포트(VLAN 포트, 물리 포트 등)의 링크-다운을 실행한다. 또한, 내부 스위치(10-1)는 외부 스위치(30)와의 접속에 사용되는 포트와 마찬가지로, 내부 스위치들 간의 접속에 사용되는 포트의 링크-다운을 실행하도록 구성될 수 있다.
통신 타임아웃은 데이터 전송 등에 시간이 지나치게 걸릴 때, 그것을 도중에 중단하고 종료하는 것을 나타낸다. 링크-다운은 통신의 제2층인 데이터 링크층에서 통신을 행할 수 없는 상태를 가리킨다. 즉, 링크-다운의 실행은 하드웨어 제어/소프트웨어 제어에 의해 수행되는 전자적/물리적 포트의 폐쇄, 또는 해당 포트로부터의 신호 출력의 정지 등에 의해, 링크를 단절함으로써, 통신이 불가능하게 되는 상태를 가리킨다.
(2) 단계 S102
컨트롤러(20)는 내부 스위치(10-1)와의 통신 타임아웃을 검지할 때, 내부 스위치(10-1)를 경유하지 않는 최적 경로를 계산하고, 경로의 스위칭을 행하기 위해 플로우 테이블을 갱신하고, 그 후 내부 스위치(10-1)를 오픈플로우 네트워크로부터 분리하고, 또한 내부 스위치(10-2 내지 10-4)에 대하여, 내부 스위치(10-1)를 경유하지 않는 최적 경로를 설정한다.
플로우 테이블의 갱신 동작은 내부 스위치(10)(10-i, i=1 내지 n)의 플로우 테이블에 대하여, 플로우 엔트리의 신규 등록/변경/삭제 등을 실행하는 것을 가리킨다. 컨트롤러(20)는 내부 스위치(10)(10-i, i=1 내지 n) 각각에 제어 메시지를 송신해서 플로우 테이블을 갱신하고, 내부 스위치(10)(10-i, i=1 내지 n) 각각의 트래픽의 출력 포트 및 송신처에 관한 정보를 변경한다.
(3) 단계 S103
외부 스위치(30)는 내부 스위치(10-1)와의 접속에 사용되는 포트의 링크-다운을 검지하고, 전에 내부 스위치(10-1)에 전송되고 있었던 트래픽을 내부 스위치(10-2)에 전송하도록 경로를 스위칭한다. 실제로, 외부 스위치(30)는 전에 내부 스위치(10-1)에 전송되고 있었던 트래픽을, 다른 네트워크상의 스위치에 전송하도록 경로를 스위칭할 수 있다는 것을 유의한다. 다른 네트워크상의 스위치의 예로서, 다른 오픈플로우 네트워크에 배치된 내부 스위치(컨트롤러(20)와는 상이한 컨트롤러에 의해 경로가 제어되는 내부 스위치), 또는 다른 외부 스위치 등이 고려된다.
[내부 스위치의 동작의 상세]
내부 스위치의 동작(도 3의 단계 S101)의 상세에 대해서 설명한다.
내부 스위치(10-1)는 긴급용 테이블(Emergency table)에, 링크-다운이 실행되는 포트를 미리 등록한다. 여기에서, 내부 스위치(10-1)는 긴급용 테이블에, 링크-다운이 실행되는 포트로서, 외부 스위치(30)와의 접속에 사용되는 포트를 미리 등록한다. 내부 스위치(10-1)는 컨트롤러(20)로부터의 제어에 따라 긴급용 테이블에 포트를 등록하도록 설계될 수 있다는 것을 유의한다.
내부 스위치(10-1)는 컨트롤러(20)와의 통신 타임아웃을 검지할 때, 컨트롤러(20) 자체 또는 컨트롤러(20)와의 통신 회선에서의 장애 발생을 판단하고, 긴급용 테이블을 참조한 후, 미리 등록된 포트의 존재 또는 부재를 확인한다.
내부 스위치(10-1)는 미리 등록된 포트가 있다면, 그 포트의 링크-다운을 실행한다. 반대로, 내부 스위치(10-1)는 미리 등록된 포트가 없다면, 포트의 링크-다운을 실행하지 않는다.
실제로, 내부 스위치(10-1)는, 미리 등록된 포트가 있다면, 미리 등록된 포트가 외부 스위치(30)와의 접속에 사용되는 포트인지 여부를 확인하도록 설계될 수 있다는 것을 유의한다. 예를 들면, 내부 스위치(10-1)는 미리 등록된 포트를 확인하고, 미리 등록된 포트가 외부 스위치(30)와의 접속에 사용중인지 여부를 확인한다.
이 예에서, 미리 등록된 포트가 외부 스위치(30)와의 접속에 사용되는 포트라면, 내부 스위치(10-1)는 그 포트의 링크-다운을 실행한다. 반대로, 미리 등록된 포트가 있더라도, 미리 등록된 포트가 외부 스위치(30)와의 접속에 사용되는 포트가 아니라면, 내부 스위치(10-1)는 그 포트의 링크-다운을 실행하지 않는다.
또한, 내부 스위치(10-1)는 플로우 테이블을 참조하고, 외부 스위치(30)로의 또는 외부 스위치(30)로부터의 트래픽의 전송 경로를 나타내는 경로 정보(플로우 엔트리 등)를 제거(클리어)한다. 예를 들면, 내부 스위치(10-1)는 플로우 테이블을 초기화한다.
경로 정보의 소거(플로우 테이블의 초기화 등)는, 외부 스위치(30)와 현재 접속되어 있는 경로의 소거를 회피하기 위해, 포트의 링크-다운의 실행에 관한 처리가 완료된 후에 수행되는 것이 바람직하다는 것을 유의한다.
또한, 내부 스위치(10-1)는 필요에 따라 내부 스위치(10-2) 내지 내부 스위치(10-4)와의 접속에 사용되는 포트의 링크-다운을 실행할 수 있다. 예를 들면, 내부 스위치(10-1)는 긴급용 테이블에, 링크-다운이 실행되는 포트로서, 내부 스위치(10-2) 내지 내부 스위치(10-4)와의 접속에 사용되는 포트를 미리 등록해 둠으로써 내부 스위치(10-2) 내지 내부 스위치(10-4)와의 접속에 사용되는 포트의 링크-다운을 실행할 수 있다.
상기의 예에서, 내부 스위치(10-2) 내지 내부 스위치(10-4) 각각은, 그들 각각이 내부 스위치(10-1)와의 접속에 사용되는 포트의 링크-다운을 검지할 때, 자체의 장치와 컨트롤러(20) 간의 접속 상태를 확인하고, 자체의 장치와 컨트롤러(20) 간의 접속 상태가 정상이면, 컨트롤러(20)에 경로 제어를 요구해서 새로운 최적 경로를 설정하도록 설계될 수 있다. 내부 스위치(10-2) 내지 내부 스위치(10-4) 각각은, 자체의 장치와 컨트롤러(20) 간의 접속 상태가 정상이 아니면, 그 결과, 컨트롤러(20)와의 통신 타임아웃을 검지한다. 따라서, 내부 스위치(10-1)에 전술한 바와 마찬가지의 처리를 실행하게 된다.
[컨트롤러의 동작의 상세]
컨트롤러의 동작(도 3의 단계 S102)의 상세에 대해서 설명한다.
컨트롤러(20)는, 내부 스위치(10-1)와의 통신 타임아웃을 검지할 때, 내부 스위치(10-1) 자체 또는 내부 스위치(10-1)와의 통신 회선에서의 장애 발생을 판단하고, 내부 스위치(10-1)를 경유하지 않는 최적 경로를 계산한다.
컨트롤러(20)는 경로의 스위칭을 행하기 위해 플로우 테이블을 갱신하고, 내부 스위치(10-1)를 네트워크로부터 분리한 후, 내부 스위치(10-2) 내지 내부 스위치(10-4)에 대하여 최적 경로를 설정한다. 이때, 내부 스위치(10-2) 내지 내부 스위치(10-4)는 컨트롤러(20)로부터의 최적 경로의 설정에 따라 플로우 테이블에, 트래픽을 최적 경로를 통해 전송한다는 취지를 나타내는 플로우 엔트리를 등록하고, 최적 경로로의 트래픽 전송을 개시한다.
[외부 스위치의 동작의 상세]
외부 스위치의 동작(도 3의 단계 S101)의 상세에 대해서 설명한다.
외부 스위치(30)는, 내부 스위치(10-1)와의 접속에 사용되는 포트의 링크-다운을 검지할 때, 전에 내부 스위치(10-1)에 전송되고 있었던 트래픽을 다른 스위치(내부 스위치(10-2), 또는 다른 네트워크상의 스위치)에 전송하도록 경로를 스위칭하고, 트래픽 전송을 개시한다.
예를 들면, 외부 스위치(30)는 트래픽의 출력 포트를, 내부 스위치(10-1)와의 접속에 사용되는 포트로부터, 다른 스위치와의 접속에 사용되는 포트로 스위칭한다.
외부 스위치(30)가 내부 스위치(10-1)와의 접속에 사용되는 포트의 링크-다운을 검지할 때, 외부 스위치(30)는 내부 스위치(10-1)와의 접속을 재시도하도록 설계될 수 있다는 것을 유의한다. 단계 S101과 같이, 내부 스위치(10-1)에 의해 처리되는 링크-다운일 경우, 내부 스위치(10-1)는 컨트롤러(20)로부터의 제어를 받고 있지 않고, 플로우 테이블이 초기화된다. 그러나, 그것은 정상적으로 가동중이기 때문에, 초기 설정(디폴트)의 경로 정보가 있다면, 그 경로 정보에 기초하여 트래픽을 전송할 수 있다.
이 경우, 외부 스위치(30)는, 내부 스위치(10-1)와의 재접속이 불가능하다면 (예를 들면, 소정의 횟수의 재접속 요구에도 응답이 없음), 전에 내부 스위치(10-1)에 전송되고 있었던 트래픽을 다른 스위치에 전송하도록 경로를 스위칭한 후, 트래픽 전송을 개시한다.
[내부 스위치의 구성]
하기에서는 도 4를 참조하여 내부 스위치의 구성예에 대해서 설명한다.
내부 스위치(10)(10-i, i=1 내지 n) 각각은 플로우 테이블 관리부(11), 전송 처리부(12), 통신 타임아웃 검지부(13), 및 링크-다운 실행부(14)를 구비한다.
플로우 테이블 관리부(11)는 컨트롤러(20)로부터 시큐어 채널을 통해 오픈플로우 프로토콜에 준거한 제어 메시지를 수신하고, 제어 메시지의 내용에 기초하여 자체 장치의 플로우 테이블에 플로우 엔트리를 등록한다.
전송 처리부(12)는 자체 장치의 플로우 테이블에 등록된 플로우 엔트리에 따라 수신 패킷을 처리한다.
통신 타임아웃 검지부(13)는 컨트롤러(20)와 접속된 시큐어 채널을 감시하고, 컨트롤러(20)와의 통신 타임아웃을 검지한다.
링크-다운 실행부(14)는, 자체의 장치에 외부 스위치(30)와의 접속에 사용되는 포트가 존재한다면, 컨트롤러(20)와의 통신 타임아웃이 검지될 때, 외부 스위치(30)와의 접속에 사용되는 포트의 링크-다운을 실행한다.
[컨트롤러의 구성]
하기에서는 도 5를 참조하여 컨트롤러의 구성예에 대해서 설명한다.
컨트롤러(20)는 최적 경로 계산부(21), 경로 제어부(22), 및 통신 타임아웃 검지부(23)를 구비한다.
최적 경로 계산부(21)는 토폴로지(topology) 정보 등에 기초하여, 내부 스위치(10)(10-i, i=1 내지 n) 중 일부를 경유하는 최적 경로를 계산한다. 최적 경로 계산부(21)는, 현재의 경로상에 위치하는 내부 스위치들 중 적어도 1개의 내부 스위치와의 통신 타임아웃이 검지될 때, 통신 타임아웃이 검지된 내부 스위치를 경유하지 않고, 다른 내부 스위치를 경유하는 최적 경로를 계산한다.
경로 제어부(22)는 내부 스위치(10)(10-i, i=1 내지 n) 중, 계산된 최적 경로상의 내부 스위치들에, 시큐어 채널을 통해 오픈플로우 프로토콜에 준거한 제어 메시지를 송신하고 플로우 테이블을 설정한다. 경로 제어부(22)는, 통신 타임아웃이 검지되어 최적 경로가 계산될 때, 내부 스위치(10)(10-i, i=1 내지 n)의 플로우 테이블의 설정을 변경함으로써, 통신 타임아웃이 검지된 내부 스위치를 오픈플로우 네트워크로부터 분리하고, 통신 타임아웃이 검지된 내부 스위치를 경유하는 현재의 경로로부터, 다른 내부 스위치를 경유하는 최적 경로로 스위칭되도록 다른 내부 스위치를 설정한다.
통신 타임아웃 검지부(23)는 내부 스위치(10)(10-i, i=1 내지 n) 각각과 접속된 시큐어 채널을 감시하고, 내부 스위치(10)(10-i, i=1 내지 n) 각각에 있어서의 통신 타임아웃을 검지한다.
[외부 스위치의 구성]
하기에서는 도 6을 참조하여 외부 스위치의 구성예에 대해서 설명한다.
외부 스위치(30)는 전송 처리부(31), 링크-다운 검지부(32), 및 경로 전환부(33)를 구비한다.
전송 처리부(31)는 내부 스위치(10)(10-i, i=1 내지 n) 중 하나와 접속되는 자체 장치의 포트를 통해 접속처의 내부 스위치에 트래픽을 전송한다.
링크-다운 검지부(32)는 내부 스위치(10)(10-i, i=1 내지 n) 중 하나와 접속되는 자체 장치의 포트의 링크-다운을 검지한다.
경로 전환부(33)는 내부 스위치(10)(10-i, i=1 내지 n) 중, 전에 통신 타임아웃이 검지된 내부 스위치에 전송되고 있었던 트래픽을 다른 내부 스위치에 전송하도록 경로를 스위칭한다. 예를 들면, 경로 전환부(33)는 통신 타임아웃이 검지된 내부 스위치와 접속되는 자체 장치의 포트를 폐쇄해서 무효화하고, 다른 내부 스위치와 접속되는 자체 장치의 포트를 개방해서 유효화한다. 또는, 경로 전환부(33)는 신호 출력용 포트를, 통신 타임아웃이 검지된 내부 스위치와 접속되는 자체 장치의 포트로부터, 다른 스위치와 접속되는 자체 장치의 포트로 스위칭한다.
[본 실시예의 효과]
본 실시예에서는, 내부 스위치로부터 외부 스위치로의 링크를 다운시키므로, 내부 스위치를 네트워크로부터 분리할 수 있다.
또한, 본 실시예에서는, 내부 스위치와 컨트롤러 간의 통신이 불가능하게 될 때, 컨트롤러에 의해 제어될 수 없는 내부 스위치가 네트워크로부터 분리된다. 따라서, 컨트롤 플레인과 데이터 플레인의 상태들 간의 불일치를 회피하는 것이 가능하다.
또한, 본 실시예에서는, 네트워크로부터 분리된 내부 스위치와 다른 내부 스위치 사이에 포트의 링크-다운이 실행되지 않는다. 따라서, 다른 내부 스위치를 통해 그 내부 스위치에 로그인(login)하고, 그 문제를 해석하는 것이 가능하다.
또한, 본 실시예에서는, 외부 스위치로의 링크만을 다운시킨다. 따라서, 컨트롤러의 장애 발생시에도, 내부 네트워크에서는 통신을 수행할 수 있다.
<제2 실시예>
하기에서는 본 발명의 제2 실시예에 대해서 설명한다.
본 발명의 제2 실시예로서, 내부 스위치가 무선 액세스(무선 접속)의 기능을 갖는 경우에 대해서 설명한다.
[시스템 구성]
도 7에 도시된 바와 같이, 본 발명의 제2 실시예에 따른 통신 경로 제어 시스템은 내부 스위치(10)(10-i, i=1 내지 n), 컨트롤러(20), 단말기(40), 서버(50), 및 무선기(60)(60-j, j=1 내지 m: m은 임의의 수임)를 구비한다.
내부 스위치(10)(10-i, i=1 내지 n), 컨트롤러(20), 단말기(40), 및 서버(50)에 대해서는 기본적으로, 도 2에 도시된 제1 실시예의 것들과 동일하다.
무선기(60)(60-j, j=1 내지 m) 각각은 무선 액세스에 의해 단말기(40)와 접속하고, 유선 또는 무선 통신 중 임의의 것을 통해 내부 스위치(10)(10-i, i=1 내지 n)와 접속한다.
또한, 무선기(60)(60-j, j=1 내지 m) 각각은 내부 스위치(10)(10-i, i=1 내지 n)와 마찬가지로, 시큐어 채널을 통해 컨트롤러(20)와 접속되어 있다. 무선기(60-1)는 내부 스위치(10-3)와 접속한다. 무선기(60-2)는 무선기(60-1)의 용장 경로인 내부 스위치(10-4)와 접속한다.
즉, 무선기(60)(60-j, j=1 내지 m) 각각이 외부 스위치(30)와 접속하는 것 대신에 무선 액세스에 의해 단말기(40)와 직접 접속된다는 점을 제외하면, 무선기(60)(60-j, j=1 내지 m) 각각은 제1 실시예에서 설명한 내부 스위치(10)(10-i, i=1 내지 n)와 마찬가지이다.
무선기(60)(60-j, j=1 내지 m) 각각은 오픈플로우 네트워크에 배치된 에지 스위치에 상당한다.
[본 실시예의 상세]
단말기(40)는 무선기(60-1)에 대하여 접속을 요구하고, 무선 액세스에 의해 접속한다.
무선기(60-1)는 컨트롤러(20)로부터의 경로 제어(자체 장치의 플로우 테이블)에 따라 접속처인 내부 스위치(10)(10-i, i=1 내지 n) 중 하나에, 그 내부 스위치와 접속된 자체 장치의 포트를 통해 트래픽을 전송한다.
무선기(60-1)가 컨트롤러(20)와의 통신을 행할 수 없을 때, 무선기(60-1)는 단말기(40)에의 무선 액세스에 있어서 신호 전송의 보류(전파의 송신의 정지)를 실행한다. 이 "전파의 보류의 실행"은 다른 실시예들에 있어서의 "링크-다운의 실행"에 상당한다.
단말기(40)는 무선 액세스에 의한 무선기(60-1)와의 접속이 단절되기 때문에, 무선 액세스에 의해 무선기(60-2)와 접속한다.
[본 실시예의 효과]
본 실시예에서는, 무선 액세스를 네트워크의 경로 제어와 링크시킨다. 따라서, 경로 제어와 링크된 무선 액세스에 의해 전파 자원을 포함한 리소스(resource)를 유효하게 활용할 수 있다.
<각 실시예들 간의 관계>
전술한 실시예들은 그들 중 임의의 것을 조합하여 실시될 수 있다는 것을 유의한다.
<하드웨어의 예시>
하기에서는 본 발명에 따른 네트워크 시스템을 실현하기 위해 구체적인 하드웨어의 예에 대해서 설명한다.
내부 스위치(10)(10-i, i=1 내지 n), 외부 스위치(30), 및 무선기(60)(60-j, j=1 내지 m)의 예로서, 네트워크 스위치, 라우터(router), 프록시(proxy), 게이트웨이(gateway), 파이어월(firewall), 부하 평형기(load balancer)(부하 분산 장치), 대역 제어 장치(packet shaper: 패킷 성형기), 시큐리티 감시 제어 장치(SCADA: Supervisory Control And Data Acquisition(감시 제어 및 데이터 취득)), 게이트키퍼(gatekeeper), 기지국, 액세스 포인트(AP: Access Point), 통신 위성(CS: Communication Satellite), 또는 복수의 통신 포트 등을 갖는 계산기 등이 고려될 수 있다.
컨트롤러(20), 단말기(40), 및 서버(50)의 예로서, PC(personal computer: 퍼스널 컴퓨터), 어플라이언스(appliance), 박형 클라이언트 단말기/서버, 워크스테이션, 메인프레임, 및 수퍼컴퓨터 등의 컴퓨터들을 가정한다. 단말기(40)의 다른 예로서, IP 전화기, 모바일 전화기, 스마트 폰, 스마트 북, 카 네비게이션(car navigation)(카 네비게이션 시스템), 휴대형 영상 게임기, 비휴대형 게임 콘솔, 휴대형 음악 플레이어, 핸디 단말기, 가젯(gadget)(전자 장치), 쌍방향 텔레비전, 디지털 튜너, 디지털 리코더, 정보 가전(information home appliance), OA(Office Automation: 사무 자동화) 장치, 가게 앞 단말기, 고기능성 복사기, 및 디지털 사이니지(digital signage)(전자 게시판) 등이 고려될 수 있다. 컨트롤러(20), 단말기(40), 및 서버(50)는 중계 장치 또는 주변 장치일 수 있다는 것을 유의한다.
또한, 내부 스위치(10)(10-i, i=1 내지 n), 컨트롤러(20), 외부 스위치(30), 단말기(40), 서버(50), 및 무선기(60)(60-j, j=1 내지 m) 각각은 계산기 등에 탑재되는 확장 보드, 또는 물리적 머신 상에 구축된 가상 머신(VM: Virtual Machine)일 수 있다.
또한, 내부 스위치(10)(10-i, i=1 내지 n), 컨트롤러(20), 외부 스위치(30), 단말기(40), 서버(50), 및 무선기(60)(60-j, j=1 내지 m) 각각은 차량, 선박, 또는 항공기 등의 운송 수단에 탑재될 수 있다.
도면에는 도시되지 않았지만, 내부 스위치(10)(10-i, i=1 내지 n), 컨트롤러(20), 외부 스위치(30), 단말기(40), 서버(50), 및 무선기(60)(60-j, j=1 내지 m) 각각은, 프로그램에 기초하여 구동되어 소정의 처리를 실행하는 프로세서, 프로그램 및 각종 데이터를 저장하는 메모리, 및 네트워크와의 통신에 이용되는 인터페이스에 의해 실현된다.
상기의 프로세서의 예로서, CPU(Central Processing Unit: 중앙 처리 유닛), 네트워크 프로세서(NP: Network Processor), 마이크로프로세서, 마이크로컨트롤러, 또는 전용의 기능을 갖는 반도체 집적 회로(LSI: Large Scale Integration(대규모 집적 회로)) 등이 고려될 수 있다.
상기의 메모리의 예로서, 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: 디지털 다기능 디스크) 등의 탈착가능 디스크, 또는 SD 메모리 카드(Secure Digital memory card: 시큐어 디지털 메모리 카드) 등의 저장 매체(미디어) 등이 고려될 수 있다. 또한, 버퍼 또는 레지스터 등도 이용될 수 있다. 또는, 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, WAN(Wide Area Network: 광역 통신망), 백본(backbone), 케이블 텔레비전(CATV) 회선, 고정 전화망, 모바일 전화망, WiMAX(IEEE 802.16a), 3G(제3 세대), 전용 회선(lease line: 임대 회선), IrDA(Infrared Data Association: 적외선 데이터 통신 협회), Bluetooth(등록 상표), 시리얼 통신 회선, 또는 데이터 버스 등이 고려될 수 있다.
내부 스위치(10)(10-i, i=1 내지 n), 컨트롤러(20), 외부 스위치(30), 단말기(40), 서버(50), 및 무선기(60)(60-j, j=1 내지 m) 각각의 내부 구성 요소는 모듈, 컴포넌트, 또는 전용 장치, 또는 그것들을 기동(호출)하는 프로그램일 수도 있다는 것을 유의한다.
그러나, 실제로, 그것들은 그러한 예들에 한정되지 않는다.
<본 발명의 특징>
이상 설명한 바와 같이, 본 발명은 오픈플로우 네트워크에 의해 나타내지는 CD 분리형 네트워크를 대상으로 삼고 있다. 오픈플로우 네트워크는 단지 일 예를 나타낸다는 것을 유의한다. 실제로, 본 발명은 "오픈플로우 기술을 사용한 플로우 테이블의 갱신 작업" 이외의 수단에 의해 경로 제어를 실행하는 네트워크를 대상으로 할 수도 있다.
본 발명은 CD 분리형 네트워크와 일반적인 네트워크 간의 경계에서, 통신 장애가 발생할 때, 경로의 우회 작업이 적절하게 스위칭되지 않는다는 문제를 해소하는 것이 가능하다는 것을 특징으로 한다.
본 발명에서는, CD 분리형 네트워크의 경계에서의 포트 셧다운을 실행함으로써 경로를 우회한다.
컨트롤러는 복수의 내부 스위치 각각에 대하여 플로우 테이블을 갱신하고, 복수의 내부 스위치에 의해 형성되는 경로를 최적으로 만든다.
복수의 내부 스위치 중, 내부 스위치 A는 외부 스위치와 최적 경로를 형성하고, 활성 시스템의 내부 스위치로서 기능한다. 복수의 내부 스위치 중, 내부 스위치 B는 외부 스위치와 함께 용장 경로를 형성하고, 대기 시스템의 내부 스위치로서 기능한다.
내부 스위치 A에 장애가 발생할 때, 컨트롤러는 복수의 내부 스위치 각각에 대한 플로우 테이블을 갱신한다. 따라서, 경로는 내부 스위치 A를 경유하는 경로로부터 내부 스위치 B를 경유하는 경로로 스위칭된다.
컨트롤러에서의 장애 발생 등에 의해, 컨트롤러와 내부 스위치 A와의 접속이 단절될 때, 내부 스위치 A는 컨트롤러에 의해 제어될 수 없다. 따라서, 플로우 테이블의 갱신에 의해 경로의 추가/삭제(경로의 스위칭)가 실행될 수 없다.
내부 스위치 A는, 컨트롤러와 내부 스위치 A가 서로 접속될 수 없다는 것을 검지할 때, 외부 스위치와 접속하는 포트의 링크-다운을 실행한다.
외부 스위치는, 내부 스위치 A와 접속하는 포트의 링크-다운을 검지할 때, 경로의 스위칭을 행하고, 활성 시스템의 내부 스위치 A로의 트래픽을, 대기 내부 스위치 B로 전송한다.
이렇게 하여, 본원 발명에서는, 컨트롤러와의 통신 장애가 발생한 내부 스위치에 있어서, 접속되는 외부 스위치로의 링크를 다운시킨다. 따라서, 정상적인 운용이 불가능하다는 사실을 외부에 보고할 수 있기 때문에, 정상적으로 운용될 수 있는 스위치를 경유하는 경로로 스위칭하는 것이 가능하다.
<부기>
전술한 실시예들의 일부 또는 전부는 하기의 부기와 같이 기재될 수 있다. 그러나, 그들은 하기에 기재된 예들에 한정되지 않는다.
(부기 1)
통신 경로 제어 시스템으로서,
네트워크에 배치된 복수의 스위치;
패킷들을 플로우로서 일률적으로 제어하기 위한 룰과 액션이 정의된 플로우 엔트리를, 상기 복수의 스위치의 플로우 테이블들 각각에 설정하는 컨트롤러; 및
상기 네트워크의 외측에 위치하고, 상기 복수의 스위치 중 활성 시스템의 스위치와 접속하는 외부 통신 장치들을 포함하고,
상기 활성 시스템의 스위치는, 상기 컨트롤러와의 통신 타임아웃을 검지할 때, 상기 외부 통신 장치와의 접속에 사용되는 포트의 링크-다운을 실행하고,
상기 컨트롤러는, 상기 활성 시스템의 스위치와의 통신 타임아웃을 검지할 때, 상기 활성 시스템의 스위치를 상기 네트워크로부터 분리하고, 상기 복수의 스위치 중 대기 시스템의 스위치를 경유하는 경로로 스위칭하는 경로 제어를 실행하고,
상기 외부 통신 장치는, 상기 활성 시스템의 스위치와의 접속에 사용되는 포트의 링크-다운을 검지할 때, 전에 상기 활성 시스템의 스위치에 송신되고 있었던 트래픽을, 상기 대기 시스템의 스위치 및 상기 네트워크의 외측에 존재하는 스위치 중 하나에 송신하는, 통신 경로 제어 시스템.
(부기 2)
부기 1에 기재된 통신 경로 제어 시스템이며,
링크-다운이 실시되는 포트를 미리 결정하고, 상기 컨트롤러와의 통신 타임아웃이 검지될 때, 미리 결정된 포트의 존재 또는 부재를 확인하고, 미리 결정된 포트가 있다면, 그 포트의 링크-다운을 실행하는, 통신 경로 제어 시스템.
(부기 3)
부기 1 또는 2에 기재된 통신 경로 제어 시스템이며,
상기 활성 시스템의 스위치는 상기 복수의 스위치 각각과 상호 접속되어 있고, 상기 컨트롤러와의 통신 타임아웃을 검지할 때, 상기 복수의 스위치 각각과의 접속에 사용되는 포트의 링크-다운을 실행하고,
상기 복수의 스위치 각각은, 상기 활성 시스템의 스위치와의 접속에 사용되는 포트의 링크-다운을 검지할 때, 상기 컨트롤러와의 접속 상태를 확인하고, 상기 컨트롤러와의 접속 상태가 정상이면, 상기 컨트롤러에 대하여 경로 제어를 요구해서 새로운 최적 경로를 설정하고, 상기 컨트롤러와의 접속 상태가 정상이 아니면, 상기 컨트롤러와의 통신 타임아웃을 검지하는, 통신 경로 제어 시스템.
(부기 4)
부기 1 내지 3 중 어느 하나에 기재된 통신 경로 제어 시스템이며,
상기 활성 시스템의 스위치가 무선 액세스로 상기 외부 통신 장치와 접속될 때, 상기 활성 시스템의 스위치는, 상기 컨트롤러와의 통신 타임아웃을 검지할 때, 신호 송신의 정지를 실행하고, 상기 외부 통신 장치와의 접속에 사용되는 포트의 링크-다운을 실행하는, 통신 경로 제어 시스템.
<비고>
이상, 본 발명의 몇몇 실시예들을 상세히 설명했다. 그러나, 실제로, 본 발명은 전술한 실시예들에 한정되지 않고, 본 발명의 요지를 일탈하지 않는 범위 내의 변경을 적용하는 경우에도 그것은 본 발명에 포함된다.
본 출원은 일본 특허 출원 번호 제2011-120115호에 기초한 우선권을 주장하며, 그 개시 내용은 이 인용에 의해 본 출원에 포괄된다.

Claims (10)

  1. 통신 경로 제어 시스템으로서,
    네트워크에 배치된 복수의 스위치;
    상기 복수의 스위치 각각에 대한 경로 제어를 실행하도록 구성된 컨트롤러; 및
    상기 네트워크의 외측에 존재하고, 상기 복수의 스위치 중 활성 스위치(active switch)와 접속하도록 구성된 외부 통신 장치
    를 포함하고,
    상기 활성 스위치는, 상기 컨트롤러와의 통신 타임아웃이 검지되는 경우, 상기 외부 통신 장치와의 접속에 사용되는 포트의 링크-다운(link-down)을 실행하도록 구성되고,
    상기 컨트롤러는, 상기 활성 스위치와의 통신 타임아웃이 검지되는 경우, 상기 활성 스위치를 상기 네트워크로부터 분리하고, 상기 복수의 스위치 중 대기 스위치(standby switch)를 경유하는 경로로 스위칭하도록 경로 제어를 실행하도록 구성되고,
    상기 외부 통신 장치는, 상기 활성 스위치와의 접속에 사용되는 포트의 링크-다운이 검지되는 경우, 이전에 상기 활성 스위치에 송신되고 있었던 트래픽을, 상기 대기 스위치 또는 상기 네트워크의 외측에 존재하는 스위치 중 어느 하나에 송신하도록 구성되는, 통신 경로 제어 시스템.
  2. 제1항에 있어서,
    상기 활성 스위치는, 링크-다운이 실행되는 포트를 미리 결정하고, 상기 컨트롤러와의 통신 타임아웃이 검지되는 경우, 미리 결정된 포트의 존재 유무를 확인하고, 미리 결정된 포트가 존재하는 경우, 상기 포트의 링크-다운을 실행하도록 구성되는, 통신 경로 제어 시스템.
  3. 제1항에 있어서,
    상기 활성 스위치는 상기 복수의 스위치 각각과 서로 접속되고, 상기 컨트롤러와의 통신 타임아웃이 검지되는 경우, 상기 복수의 스위치 각각과의 접속에 사용되는 포트의 링크-다운을 실행하도록 구성되고,
    상기 복수의 스위치 각각은, 상기 활성 스위치와의 접속에 사용되는 포트의 링크-다운이 검지되는 경우, 상기 컨트롤러와의 접속 상태를 확인하고, 상기 컨트롤러와의 접속 상태가 정상이면, 상기 컨트롤러에 대해 경로 제어를 요구하여 새로운 최적 경로를 설정하고, 상기 컨트롤러와의 접속 상태가 정상이 아니면, 상기 컨트롤러와의 통신 타임아웃을 검지하도록 구성되는, 통신 경로 제어 시스템.
  4. 제1항에 있어서,
    상기 활성 스위치는, 상기 외부 통신 장치와 무선 액세스에 의해 접속하는 경우, 상기 컨트롤러와의 통신 타임아웃이 검지되는 때에 신호 송신의 정지를 실행함으로써, 상기 외부 통신 장치와의 접속에 사용되는 포트의 링크-다운을 실행하도록 구성되는, 통신 경로 제어 시스템.
  5. 제1항 내지 제4항 중 어느 한 항에 따른 통신 경로 제어 시스템에서 스위치, 컨트롤러, 또는 외부 통신 장치로서 사용되는 컴퓨터.
  6. 통신 경로 제어 방법으로서,
    컨트롤러가, 복수의 스위치 각각에 대한 경로 제어를 실행하는 단계;
    네트워크의 외측에 존재하는 외부 통신 장치가, 상기 복수의 스위치 중 활성 스위치와 접속하는 단계;
    상기 활성 스위치가, 상기 컨트롤러와의 통신 타임아웃이 검지되는 경우, 상기 외부 통신 장치와의 접속에 사용되는 포트의 링크-다운을 실행하는 단계;
    상기 컨트롤러가, 상기 활성 스위치와의 통신 타임아웃이 검지되는 경우, 상기 활성 스위치를 상기 네트워크로부터 분리하고, 상기 복수의 스위치 중 대기 스위치를 경유하는 경로로 스위칭하도록 경로 제어를 실행하는 단계; 및
    상기 외부 통신 장치가, 상기 활성 스위치와의 접속에 사용되는 포트의 링크-다운이 검지되는 경우, 이전에 상기 활성 스위치에 송신되고 있었던 트래픽을, 상기 대기 스위치 또는 상기 네트워크의 외측에 존재하는 스위치 중 어느 하나에 송신하는 단계
    를 포함하는, 통신 경로 제어 방법.
  7. 제6항에 있어서,
    상기 활성 스위치가, 링크-다운이 실행되는 포트를 미리 결정하고, 상기 컨트롤러와의 통신 타임아웃이 검지되는 경우, 미리 결정된 포트의 존재 유무를 확인하는 단계; 및
    상기 활성 스위치가, 미리 결정된 포트가 존재하는 경우, 상기 포트의 링크-다운을 실행하는 단계
    를 더 포함하는, 통신 경로 제어 방법.
  8. 제6항에 있어서,
    상기 활성 스위치가, 상기 복수의 스위치 각각과 서로 접속하는 단계;
    상기 활성 스위치가, 상기 컨트롤러와의 통신 타임아웃이 검지되는 경우, 상기 복수의 스위치 각각과의 접속에 사용되는 포트의 링크-다운을 실행하는 단계;
    상기 복수의 스위치 각각이, 상기 활성 스위치와의 접속에 사용되는 포트의 링크-다운이 검지되는 경우, 상기 컨트롤러와의 접속 상태를 확인하는 단계;
    상기 복수의 스위치 각각이, 상기 컨트롤러와의 접속 상태가 정상이면, 상기 컨트롤러에 대해 경로 제어를 요구하여 새로운 최적 경로를 설정하는 단계; 및
    상기 복수의 스위치 각각이, 상기 컨트롤러와의 접속 상태가 정상이 아니면, 상기 컨트롤러와의 통신 타임아웃을 검지하는 단계
    를 더 포함하는, 통신 경로 제어 방법.
  9. 제6항에 있어서,
    상기 활성 스위치가, 상기 외부 통신 장치와 무선 액세스에 의해 접속하는 경우, 상기 컨트롤러와의 통신 타임아웃이 검지되는 때에 신호 송신의 정지를 실행함으로써, 상기 외부 통신 장치와의 접속에 사용되는 포트의 링크-다운을 실행하는 단계를 더 포함하는, 통신 경로 제어 방법.
  10. 컴퓨터에 의해 실행될 때, 제6항에 기재된 스위치, 컨트롤러, 또는 외부 통신 장치 중 어느 하나에 사용되는 상기 컴퓨터가 제6항 내지 제9항 중 어느 한 항에 따른 통신 경로 제어 방법을 수행하도록 하는 프로그램을 저장한 비일시적 컴퓨터 판독가능 매체.
KR1020137031775A 2011-05-30 2012-05-29 통신 경로 제어 시스템, 및 통신 경로 제어 방법 KR101562726B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2011-120115 2011-05-30
JP2011120115 2011-05-30
PCT/JP2012/063817 WO2012165446A1 (ja) 2011-05-30 2012-05-29 通信経路制御システム、及び通信経路制御方法

Publications (2)

Publication Number Publication Date
KR20140014263A KR20140014263A (ko) 2014-02-05
KR101562726B1 true KR101562726B1 (ko) 2015-10-22

Family

ID=47259300

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137031775A KR101562726B1 (ko) 2011-05-30 2012-05-29 통신 경로 제어 시스템, 및 통신 경로 제어 방법

Country Status (7)

Country Link
US (1) US10554585B2 (ko)
EP (1) EP2717520B1 (ko)
JP (1) JP5660211B2 (ko)
KR (1) KR101562726B1 (ko)
CN (1) CN103621027B (ko)
RU (1) RU2562760C2 (ko)
WO (1) WO2012165446A1 (ko)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5503762B1 (ja) * 2013-02-19 2014-05-28 三菱電機インフォメーションシステムズ株式会社 オープンフローネットワークシステム
US9628376B2 (en) 2013-02-26 2017-04-18 Nec Corporation Communication system, switch, controller, method for constructing a control channel and program
CN104243196B (zh) 2013-06-21 2019-03-12 中兴通讯股份有限公司 一种sdn架构下的虚拟网络映射保护方法及系统
CN103391296B (zh) * 2013-07-29 2016-08-24 北京华为数字技术有限公司 一种控制器、转发器及通道建立方法和系统
US20150055623A1 (en) 2013-08-23 2015-02-26 Samsung Electronics Co., Ltd. MOBILE SOFTWARE DEFINED NETWORKING (MobiSDN)
US9374308B2 (en) * 2013-08-30 2016-06-21 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Openflow switch mode transition processing
JP6111974B2 (ja) * 2013-10-22 2017-04-12 富士通株式会社 転送装置、制御装置、および、転送方法
CN103888313B (zh) * 2014-03-11 2017-04-12 浙江大学 一种预测流表项的最优超时时间的方法
CN104954271B (zh) * 2014-03-26 2018-11-30 国际商业机器公司 Sdn网络中的数据包处理方法和装置
US9491031B2 (en) * 2014-05-06 2016-11-08 At&T Intellectual Property I, L.P. Devices, methods, and computer readable storage devices for collecting information and sharing information associated with session flows between communication devices and servers
JP6395867B2 (ja) 2014-06-03 2018-09-26 華為技術有限公司Huawei Technologies Co.,Ltd. OpenFlow通信方法及びシステム、制御部、並びにサービスゲートウェイ
US9935900B2 (en) 2014-10-16 2018-04-03 Electronics And Telecommunications Research Institute Method for providing protection switching service in virtual tenant network and controller therefor
CN104301146A (zh) * 2014-10-23 2015-01-21 杭州华三通信技术有限公司 软件定义网络中的链路切换方法和装置
US10374946B2 (en) * 2015-03-16 2019-08-06 Dell Products L.P. Centralized wireless network management system
CN105338331B (zh) * 2015-12-16 2018-08-24 武汉微创光电股份有限公司 一种非压缩视频监控系统及故障恢复方法
JP2017168988A (ja) * 2016-03-15 2017-09-21 株式会社リコー 通信装置、通信システム及び通信方法
CN106302265B (zh) * 2016-07-21 2019-08-06 新华三技术有限公司 报文转发方法及装置
CN107070791A (zh) * 2016-12-29 2017-08-18 北京邮电大学 一种sdn网络系统及其数据传输方法
CN113630314B (zh) * 2020-05-09 2022-09-16 北京金山云网络技术有限公司 混合云专线接入网络的灾备方法及装置
US12074782B2 (en) 2020-08-11 2024-08-27 Hewlett Packard Enterprise Development Lp System and method for eliminating data loss in a virtually aggregated network
CN117979334B (zh) * 2024-03-28 2024-07-26 青岛儒海船舶工程有限公司 一种数字化船舶的全船网络系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006352544A (ja) * 2005-06-16 2006-12-28 Kddi Corp レイヤ2ネットワークの冗長化システム
JP2008227558A (ja) * 2005-06-24 2008-09-25 Yaskawa Electric Corp ネットワークアダプタ、通信端末、通信経路分配方法およびそのプログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0700229B1 (en) * 1994-08-22 2006-06-28 Fujitsu Limited Connectionless communications system, test method, and intra-station control system
US6934248B1 (en) * 2000-07-20 2005-08-23 Nortel Networks Limited Apparatus and method for optical communication protection
JP3580250B2 (ja) * 2000-12-22 2004-10-20 株式会社デンソー 無線通信システム、ネットワークおよび無線通信システムに用いられる移動端末
US7313089B2 (en) * 2001-12-21 2007-12-25 Agere Systems Inc. Method and apparatus for switching between active and standby switch fabrics with no loss of data
US7656790B2 (en) * 2004-06-28 2010-02-02 Hewlett-Packard Development Company, L.P. Handling link failures with re-tagging
RU2332803C2 (ru) * 2005-11-17 2008-08-27 Общество с ограниченной ответственностью "ХитТелеком" Коммуникационная система
US8457121B1 (en) * 2006-08-01 2013-06-04 Hewlett-Packard Development Company, L.P. Heterogeneous network switch system
US8159935B1 (en) * 2009-01-12 2012-04-17 Shoretel, Inc. Failover system and method for IP telephony
JP2011120115A (ja) 2009-12-04 2011-06-16 Canon Inc 画像処理装置及びその制御方法
EP2572473B1 (en) * 2010-05-19 2014-02-26 Telefonaktiebolaget L M Ericsson (PUBL) Methods and apparatus for use in an openflow network
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
JP2006352544A (ja) * 2005-06-16 2006-12-28 Kddi Corp レイヤ2ネットワークの冗長化システム
JP2008227558A (ja) * 2005-06-24 2008-09-25 Yaskawa Electric Corp ネットワークアダプタ、通信端末、通信経路分配方法およびそのプログラム

Also Published As

Publication number Publication date
CN103621027B (zh) 2016-06-29
RU2013157203A (ru) 2015-07-10
EP2717520B1 (en) 2016-03-02
US10554585B2 (en) 2020-02-04
EP2717520A4 (en) 2014-11-19
KR20140014263A (ko) 2014-02-05
JPWO2012165446A1 (ja) 2015-02-23
EP2717520A1 (en) 2014-04-09
RU2562760C2 (ru) 2015-09-10
JP5660211B2 (ja) 2015-01-28
US20140133492A1 (en) 2014-05-15
CN103621027A (zh) 2014-03-05
WO2012165446A1 (ja) 2012-12-06

Similar Documents

Publication Publication Date Title
KR101562726B1 (ko) 통신 경로 제어 시스템, 및 통신 경로 제어 방법
EP2562970B1 (en) Switch, and flow table control method
KR101501397B1 (ko) 네트워크 시스템, 스위치 및 접속 단말기 검지 방법
US9548933B2 (en) Network system, switch, and methods of network configuration
JP5846221B2 (ja) ネットワークシステム、及びトポロジー管理方法
JP5610247B2 (ja) ネットワークシステム、及びポリシー経路設定方法
US20160182307A1 (en) Network system and network managing method
KR101579014B1 (ko) 부하 저감 시스템, 및 부하 저감 방법
US9008080B1 (en) Systems and methods for controlling switches to monitor network traffic
WO2016014344A1 (en) Systems and methods for performing uninterrupted network upgrades with controllers
JP2015511074A (ja) 通信のためのシステム及び方法
US20160205033A1 (en) Pool element status information synchronization method, pool register, and pool element
JP5966488B2 (ja) ネットワークシステム、スイッチ、及び通信遅延短縮方法
US20160012008A1 (en) Communication system, control apparatus, communication method, and program
JP2013197627A (ja) データ処理装置、データ送受信装置、及びデータ送受信制御方法
US11245644B2 (en) Automatic multi-chassis link aggregation configuration
JP2013115733A (ja) ネットワークシステム、及びネットワーク制御方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee