KR20160124161A - 네트워크 제어 방법, 네트워크 시스템, 장치, 및 프로그램 - Google Patents

네트워크 제어 방법, 네트워크 시스템, 장치, 및 프로그램 Download PDF

Info

Publication number
KR20160124161A
KR20160124161A KR1020167025476A KR20167025476A KR20160124161A KR 20160124161 A KR20160124161 A KR 20160124161A KR 1020167025476 A KR1020167025476 A KR 1020167025476A KR 20167025476 A KR20167025476 A KR 20167025476A KR 20160124161 A KR20160124161 A KR 20160124161A
Authority
KR
South Korea
Prior art keywords
packet
information
action
user information
switch
Prior art date
Application number
KR1020167025476A
Other languages
English (en)
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 KR20160124161A publication Critical patent/KR20160124161A/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/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/34Source 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/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
    • H04L45/745Address table lookup; Address filtering
    • H04L45/7452Multiple parallel or consecutive lookup operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • 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/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • H04L12/4645Details on frame tagging
    • 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/308Route determination based on user's profile, e.g. premium users

Landscapes

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

Abstract

본 발명은, 네트워크로의/로부터의 입구/출구에서의 동작이 테이블 검색 결과에 대한 액션으로서 구현되는 경우, 요구되는 액션 패턴을 감소시킴으로써 수용될 액션 리소스를 증가시키는 것을 가능하게 만든다. 패킷에 관한 미리 결정된 정보가 테이블의 엔트리로서 검색 키에 매칭되는지에 대한 검색이 수행되고, 매칭된 검색 키에 대응하는 액션에 의해 규정된 동작이 수행되는 테이블로서, 네트워크 출구 정보와 유저 정보의 패킷의 매핑에 있어서 서로 상이한, 적어도 제1 및 제2 테이블을 포함하는 복수 단 테이블이 스위치에 준비되고, 입력된 제1 패킷에 대하여 제1 테이블이 검색되고, 제1 테이블 내의 검색 키가 매칭되는 경우에, 제1 패킷에서 제1 테이블 내의 검색 키에 대응하는 액션과 연관된 동작이 수행되어 제1 패킷을 제2 패킷으로 변환하고, 제2 패킷은 제2 테이블에 공급되고, 제2 패킷에 대하여 제2 테이블이 검색되고, 제2 테이블 내의 검색 키가 매칭되는 경우에, 제2 패킷에서 제2 테이블 내의 검색 키에 대응하는 액션과 연관된 동작이 수행되어 제2 패킷을 제3 패킷으로 변환한다.

Description

네트워크 제어 방법, 네트워크 시스템, 장치, 및 프로그램{NETWORK CONTROL METHOD, NETWORK SYSTEM, DEVICE, AND PROGRAM}
[관련 출원에 관한 기재]
본 발명은 2014년 2월 19일 출원된 일본 특허 출원 번호 제2014-029906호에 기초하여 그 우선권을 주장하고, 그 전체 기재 내용은 본 명세서에 참고로서 도입된다.
본 발명은, 네트워크 제어 방법, 네트워크 시스템, 장치, 및 프로그램에 관한 것이다.
관련 기술의 네트워크 시스템에서는, 네트워크의 입구와 출구에 각각 위치하는 스위치의 각각에 있어서의 액션은, 단일 테이블의 검색 결과에 대한 액션(Action)으로서 구현된다. 즉, 상기 각각의 스위치는 입력된 패킷에 대하여, 검색 키, 액션, 등을 각각 포함하는 엔트리를 갖는 테이블을 검색하고, 해당 패킷의 헤더 정보와 매칭(match)하는 키에 대응하는 액션 란에 규정된 동작을 수행한다.
상기 스위치에서의 테이블은, {검색 키, 액션, 및 통계 정보}의 3종 정보를 각각 포함하는 엔트리들을 포함한다. 특별히 제한되지 않지만, {검색 키, 액션, 및 통계 정보}의 개요는 이하와 같다.
검색 키 레이어 1(L1) 내지 레이어 4(L4)에 대한 임의의 헤더 정보의 조합을 이용하여 매칭이 가능하다:
Ingress port(스위치의 물리 포트 번호:L1)/Src MAC(송신처 MAC(Media Acess Conrtrol) 어드레스:L2)/Dst Mac(수신처 MAC 어드레스:L2)/Ether type(이더넷(등록 상표)의 종별:L2)/VLAN ID(Virtual Local Area Network ID:L2)/VLAN priority(VLAN PCP(Priority Code Point)의 값(CoS(Class Of Service)):L2)/Src IP(송신원 IP(Internet Protocol)어드레스:L3)/Dst IP(수신처 IP 어드레스:L3)/IP protocol(IP 프로토콜 종별)/IP ToS(상위 6비트)(IP의 ToS(Type Of Service:1바이트)의 정보)/Src Port(TCP(Transmission Control Protocol)/UDP(User Datagram Protocol)의 송신원 포트 번호:L4)/Dst Port(TCP/UDP의 수신처 포트 번호:L4)
액션 패킷의 중계/폐기, 헤더 정보의 재기입, 등이 가능하다:
Forward(물리 포트로부터의 출력)/All(입력 포트 이외의 임의의 포트로부터의 출력)/Controller(컨트롤러로의 출력)/Local(자신의 장치의 로컬 스택 수신으로의 출력)/Table(OpenFlow Table의 내용에 따른 출력)/In_port(입력 포트로부터의 출력)/Normal(레거시 Table의 내용을 이용한 출력)/Flood(입력 포트, 및 Spanning Tree의 블럭 포트 이외의 임의의 포트로부터의 출력)Drop(패킷의 폐기)/Modify-Field(패킷 헤더 정보의 재기입: VLAN ID, Vlan priority, Src MAC, Dst MAC, Src IP, Dst IP, IP ToS, Src Port, 및 Dst Port는 재기입 가능하다)
통계 정보 테이블마다, 플로우마다, 물리 포트마다, 및 큐(Queue)마다 각종 통계가 취득 가능하다
테이블의 참조에 기초하는 패킷 헤더의 변환으로서, 특허문헌 1은, IP-over-ATM(Asynchronous Transfer Mode) 스위치 내부에서 설정되는 각각의 내부 패스를 하드웨어에 의해 자율적으로 제어하는 구성을 개시한다. 수신처 정보 검출 수단에 의해 검출된 수신처 정보와 입력원 정보와의 조합에 기초하여, 입력측 각각의 서브 유닛에 있어서의 내부 변환 수단은 내부 패스 테이블로부터 대응하는 내부 패스 식별자를 포함하는 정보를 검색한다. 내부 변환 수단은 이 정보(대응하는 내부 패스 식별자를 포함)를 사용하여 일련의 ATM 셀에 포함되는 헤더를 변환하고 이 변환된 헤더를 스위치 회로에 제공한다. 출력측 각각의 서브 유닛에 있어서, 변환 관리 수단은 각각의 노드 간 패스에 관한 정보에 기초하여 헤더 변환 테이블을 작성하고 이 헤더 변환 테이블을 헤더 변환 수단에 의한 헤더 변환 처리에 사용한다.
복수의 테이블을 구비한 구성으로서, 예를 들어 특허문헌 2에는, 입력 패킷을 라우팅 처리부에서 특정한 출력 회선에 전송하는 패킷 전송 장치에 있어서, 라우팅 정보 테이블이 복수의 서브 테이블로 구성되는 구성을 개시하고 있다. 각각의 서브 테이블이 라우팅 정보를 나타내는 제1 형식의 엔트리를 포함한다. 서브 테이블 중 적어도 하나가, 제1 형식의 엔트리 이외에, 참고로 해야 할 별도의 서브 테이블을 지정하는 제2 형식의 엔트리를 포함한다. 라우팅 처리부가 입력 회선 인터페이스에서 지정된 서브 테이블를 참조하고, 제2 형식의 엔트리가 검색된 경우에, 해당 엔트리가 지정한 별도의 서브 테이블를 참조함으로써, 상기 입력 패킷의 라우팅과 헤더 변환을 실행한다.
또한, 다단으로 배열된 복수의 테이블을 구비한 구성으로서, 특허문헌 3에는, 헤더 추출 및 검색법 판정부가 어드레스 검색 지시에 응답하여, 패킷의 헤더 정보로부터 검색 키를 생성하는 구성을 개시한다. 이러한 구성에서는, 다단 테이블 검색부가 검색 키를 이용하여 복수의 어드레스 정보 테이블을 검색하여 내부 헤더의 존재를 검출한 경우, 헤더 추출 및 검색법 판정부에 내부 헤더 추출 지시를 송신한다. 다단 테이블 검색부는 검색 키를 이용하여 어드레스 정보 테이블 중 대응하는 하나를 검색하여 헤더 추가 또는 삭제에 대한 정보를 헤더 변환부에 송신한다. 헤더 변환부는 패킷에 대하여 헤더 추가 또는 삭제의 처리를 행하고 패킷 송신부에 패킷 송출 지시를 송신한다.
특허문헌 4에는, 포워딩 테이블, 어드레스 변환 테이블, 및 라우팅 정보 테이블을 구비하는 네트워크 노드 장치가 개시되어 있다. 하나의 메모리 어드레스는, 수신 패킷의 수신처 어드레스를 검색 키로서 이용하여, 포워딩 테이블로부터 검색되고, 라우팅 정보는 어드레스 변환 테이블에 의한 변환에 의해 얻어진 엔트리 어드레스에 기초하여, 라우팅 정보 테이블로부터 검색된다.
특허문헌 5에는, 패킷 헤더 부분의 내용을 재기입하는 복수의 테이블을 구비한 라벨 변환 회로를 구비하는 자기 라우팅형 교환기가 개시되어 있다.
일본 특허 공개 제2002-271370호 공보 일본 특허 공개 제2003-051843호 공보 일본 특허 공개 제2003-152782호 공보 일본 특허 공개 제2005-333220호 공보 일본 특허 공개(평)03-091452호 공보
이하에 관련 기술의 분석이 주어진다.
예를 들어, 가상화된 네트워크에서는, 제어될 관리 네트워크의 입구/출구에서 이하의 패킷 변환이 행해진다.
<입구>: 오리지널 패킷(입구에서 수신된 패킷)은 이하의 정보를 갖는 형식으로 변환된다:
ㆍ네트워크의 출구 정보;
ㆍ패킷의 글로벌 유저 정보; 및
ㆍ패킷의 오리지널 정보.
<출구>: 입구에서 변환된 패킷은 원래의 형식으로 복원되어 외부에 출력된다.
여기서, 로컬 유저 정보란, 1대의 스위치에서 폐쇄된 정보, 예를 들어 VLAN ID가 있다. 글로벌 유저 정보란, 네트워크 전체에서 공유되는 유일한 정보, 예를 들어 VXLAN(Virtual eXtensible Local Area network)에 대한 VNI(VXLAN Network Identifier)를 의미한다. VXLAN은, 오리지날 이더넷(상표명) 프레임을 도 20에 나타낸 바와 같이, VXLAN 헤더로 캡슐화(“encapsulate”, “encap”으로도 약기됨: 헤더를 부가하는 것)함으로써, L3 네트워크 위에 논리적인 L2 네트워크(VXLAN Overlay Segment)를 구축(터널 통신에 의한 오버레이)하는 프로토콜이다. 각각의 논리 네트워크를 식별하기 위해서는 VXLAN 헤더에 포함되는 24비트의 ID인 VNI(또는 “VXLAN Segment ID”라고도 함)가 사용된다. 하이퍼바이저(hypervisor) 등에 실장되는 가상 스위치 등의 VTEP(VXLAN Tunnel Endpoint) 사이에서 터널링함으로써, L3 네트워크의 경계를 초과하여 L2 네트워크가 구축될 수 있다. UDP 캡슐화에 의해 부가되는 UDP 헤더는 송신원 포트 번호, 수신처 포트 번호, 길이, 및 체크썸(checksum)을 포함한다(이러한 송신원 포트 번호는 Inner 헤더의 특정한 필드의 값에 기초하여, 해싱(hashing)에 의해 계산됨). 부가되는 IP 헤더는 송신원 IP 어드레스(Source IP address) 및 수신처 IP 어드레스(Destination IP address)를 포함한다.
특별히 제한되지 않지만, 이하에서는, VXLAN을 이용하여 설명한다. 예를 들어, VXLAN에서는, 관리 네트워크의 입구 및 출구 각각에서 이하의 변환이 수행된다.
관리 네트워크의 입구에서는, 다음의 아이템의 정보를 갖는 캡슐화(encap)가 수행된다:
ㆍ네트워크의 출구 정보: Outer_DstIP(아우터 수신처 IP 어드레스: Outer_DstIP: Outer Destination IP address);
ㆍ패킷의 글로벌 유저 정보: VNI
ㆍ패킷의 오리지널 정보: UDP 패킷(도 2의 UDP 참조).
관리 네트워크의 출구에서는, 입구에서 부가된 Outer 정보(Outer 헤더)가 디캡슐화(“decapsulate”는 “decap2”로도 약기되고, 이는 캡슐화에 의해 부가된 헤더가 삭제되는 것을 의미함)되어, 패킷을 원래의 형식으로 복원한다(네트워크에 따라서는, 글로벌 유저 정보는 로컬 유저 정보로 복원될 필요가 있음).
VXLAN의 예에서와 같이, 입구에서의 변환이 단일 테이블의 액션에 따라 행해지는 경우, 액션 패턴은 다음과 같이 주어진다:
(관리 네트워크의 출구 정보 아이템) × (패킷의 유저 정보 아이템).
예를 들어, 관리 네트워크의 출구 정보 아이템의 수 = 100이고, 패킷의 유저 정보 아이템의 수 = 4K(K는 kilo의 약자: 1024)로 가정하는 경우에는, 필요한 액션 리소스의 수는, 100 × 4K가 된다. 즉, 각각의 글로벌 유저에 대하여 100개의 출구에 패킷을 출력 가능하게 하는 액션이 필요하다. 따라서, 유저의 수가 4K인 경우, 100 × 4K의 액션 리소스(단일 테이블의 액션 엔트리의 수)를 보유할 필요가 있다.
또한, 관리 네트워크의 출구에서도, 글로벌 유저 정보가 로컬 유저 정보로 복원될 경우에, 상기와 유사한 문제가 발생할 수 있다. 출구에서의 변환이 단일 테이블의 액션에 따라 수행되는 경우, 액션 패턴은 다음과 같이 주어진다:
(최종 출구 정보 아이템) × (유저 정보 아이템).
이상과 같이, 단일 테이블에 많은 액션 리소스를 수용하는 것이 필요해진다. 그 결과, 테이블을 기억하기 위한 기억 장치의 용량이 증대하여, 회로 면적 및 소비 전력의 증대, 및 검색 키 매칭에 대한 처리 성능의 관점에서도 문제가 발생한다.
따라서 본 발명은 상기 문제점을 감안하여 창안된다. 본 발명의 목적은 네트워크의 입구/출구에서의 동작이 테이블 검색에 의해 얻어진 액션으로서 구현 가능할 때 필요한 액션 패턴을 감소할 수 있고 액션 리소스의 수용을 확장할 수 있는 방법, 시스템, 및 장치를 제공하는 것이다.
본 발명의 한 양태(제1 양태)에 의하면, 다음을 포함하는 네트워크 제어 방법이 제공된다:
적어도 제1 테이블 및 제2 테이블을 포함하고 네트워크의 출구 정보와 유저 정보의 패킷에 대한 매핑에 있어서 서로 다른 복수 단의 테이블을 스위치 내에 준비하는 단계 - 상기 테이블은 패킷의 미리 결정된 정보가 상기 테이블의 엔트리의 검색 키와 매칭하고 있는지 여부가 검색되어, 매칭된 상기 검색 키에 대응하는 액션에 규정된 동작이 행하여짐 -;
수신된 제1 패킷에 대하여 상기 제1 테이블을 검색하고, 상기 제1 패킷을 상기 제1 테이블의 검색 키와 매칭한 경우에, 상기 제1 패킷에 대하여 상기 제1 테이블의 상기 검색 키에 대응하는 액션에 따른 동작을 실시하여 상기 제1 패킷을 제2 패킷으로 변환하고, 상기 제2 패킷을 상기 제2 테이블에 공급하는 단계; 및
상기 제2 패킷에 대하여 상기 제2 테이블을 검색하고, 상기 제2 패킷을 상기 제2 테이블의 상기 검색 키에 매칭한 경우에, 상기 제2 패킷에 대하여 상기 제2 테이블의 상기 검색 키에 대응하는 액션에 따른 동작을 실시하여 상기 제2 패킷을 제3 패킷으로 변환하는 단계.
본 발명의 다른 양태(제2 양태)에 의하면, 적어도 제1 테이블 및 제2 테이블을 포함하고 네트워크의 출구 정보와 유저 정보의 패킷에 대한 매핑에 있어서 서로 다른 복수 단의 테이블 - 상기 테이블은 패킷의 미리 결정된 정보가 상기 테이블의 엔트리의 검색 키와 매칭하고 있는지 여부가 검색되어, 매칭된 상기 검색 키에 대응하는 액션에 규정된 동작이 행하여짐 -을 포함하는 적어도 하나의 스위치를 포함하는 네트워크 시스템이 제공되는데,
여기서, 상기 스위치는, 수신된 제1 패킷에 대하여 상기 제1 테이블을 검색하고, 제1 패킷을 상기 제1 테이블의 검색 키와 매칭한 경우에 상기 제1 패킷에 대하여 상기 제1 테이블의 검색 키에 대응하는 액션에 따른 동작을 실시하여 상기 제1 패킷을 제2 패킷으로 변환하고, 상기 제2 패킷을 상기 제2 테이블에 공급하고,
여기서, 상기 스위치는, 상기 제2 패킷에 대하여 상기 제2 테이블을 검색하고, 상기 제2 패킷을 상기 제2 테이블의 검색 키와 매칭한 경우에, 상기 제2 패킷에 대하여 상기 제2 테이블의 검색 키에 대응하는 액션에 따른 동작을 실시하여 상기 제2 패킷을 제3 패킷으로 변환한다.
본 발명의 또 다른 양태(제3 양태)에 의하면, 네트워크의 출구 정보와 유저 정보의 패킷에 대한 매핑에 있어서 서로 다른 적어도 제1 테이블 및 제2 테이블을 포함하는 복수 단의 테이블을 포함하는 스위치 장치가 제공되는데, 여기서 상기 패킷의 미리 결정된 정보가 상기 테이블의 엔트리의 검색 키와 매칭하고 있는지 여부의 검색이 행해지고, 매칭한 검색 키에 대응하는 액션에 규정된 동작이 행하여지며; 여기서,
상기 스위치 장치는, 수신된 제1 패킷에 대하여 상기 제1 테이블을 검색하고, 상기 제1 테이블의 검색 키에 매칭한 경우에 상기 제1 패킷에 대하여 상기 제1 테이블의 상기 검색 키에 대응하는 액션에 따른 동작을 실시하여 상기 제1 패킷을 제2 패킷으로 변환하고, 상기 제2 패킷을 상기 제2 테이블에 공급하고,
상기 제2 패킷에 대하여 상기 제2 테이블을 검색하고, 상기 제2 테이블의 검색 키에 매칭한 경우에 상기 제2 패킷에 대하여 상기 제2 테이블의 상기 검색 키에 대응하는 액션에 따른 동작을 실시하여 상기 제2 패킷을 제3 패킷으로 변환한다.
본 발명의 또 다른 양태(제4 양태)에 의하면, 네트워크의 출구 정보와 유저 정보의 패킷에 대한 매핑에 있어서 서로 다른 적어도 제1 테이블 및 제2 테이블을 포함하는 복수 단의 테이블 - 상기 테이블은 패킷의 미리 결정된 정보가 상기 테이블의 엔트리의 검색 키와 매칭하고 있는지 여부가 검색되어, 매칭한 상기 검색 키에 대응하는 액션에 규정된 동작이 행하여짐 -을 포함하는 스위치에 프로그램이 제공되고, 상기 프로그램은 상기 스위치로 하여금 다음을 포함하는 처리를 수행하게 하는데,
수신된 제1 패킷에 대하여 상기 제1 테이블을 검색하고, 상기 제1 패킷을 상기 제1 테이블의 검색 키에 매칭한 경우에 상기 제1 패킷에 대하여 상기 제1 테이블의 상기 검색 키에 대응하는 액션에 따른 동작을 실시하여 상기 제1 패킷을 제2 패킷으로 변환하고,
상기 제2 패킷에 대하여 상기 제2 테이블을 검색하고, 상기 제2 패킷을 상기 제2 테이블의 검색 키에 매칭한 경우에 상기 제2 패킷에 대하여 상기 제2 테이블의 상기 검색 키에 대응하는 액션에 따른 동작을 실시하여 상기 제2 패킷을 제3 패킷으로 변환한다.
또 다른 양태(제5 양태)에 의하면, 제4 양태에 따른 프로그램을 기억한 메모리 또는 자기/광 기억 디바이스 등의 컴퓨터 판독가능 기억 매체가 제공된다.
본 발명에 따르면, 네트워크의 입구/출구에서의 액션이 테이블의 검색 결과에 대한 액션으로서 구현될 때, 필요한 액션 패턴의 수가 감소될 수 있고 액션 리소스의 수용이 확장될 수 있다.
도 1은 본 발명의 일 실시예의 입구 스위치의 테이블 구성을 예시하는 도면이다.
도 2는 본 발명의 일 실시예의 입구 스위치의 테이블의 제1 모드를 예시하는 도면이다.
도 3은 본 발명의 일 실시예의 입구 스위치의 테이블의 제2 모드를 예시하는 도면이다.
도 4는 본 발명의 일 실시예의 입구 스위치의 테이블의 제3 모드를 예시하는 도면이다.
도 5는 본 발명의 일 실시예의 입구 스위치의 테이블의 제4 모드를 예시하는 도면이다.
도 6은 본 발명의 일 실시예의 입구 스위치의 테이블의 제1 내지 제4 모드 간의 대비를 예시하는 도면이다.
도 7은 도 2의 제1 모드의 테이블 1-1의 상세를 개략적으로 설명하는 도면이다.
도 8은 도 4의 제3 모드의 테이블 1-2의 상세한 예를 개략적으로 설명하는 도면이다.
도 9는 도 2의 제1 모드의 테이블 2-1의 상세한 예를 개략적으로 설명하는 도면이다.
도 10은 도 3의 제2 모드의 테이블 2-2의 상세한 예를 개략적으로 설명하는 도면이다.
도 11은 도 4의 제3 모드의 테이블 2-3의 상세한 예를 개략적으로 설명하는 도면이다.
도 12는 도 5의 제4 모드의 테이블 2-4의 상세한 예를 개략적으로 설명하는 도면이다.
도 13은 도 4의 제3 모드의 테이블 3의 상세한 예를 개략적으로 설명하는 도면이다.
도 14는 본 발명의 일 실시예의 출구 스위치의 테이블 구성을 개략적으로 예시하는 도면이다.
도 15는 도 14의 테이블 4의 상세한 예를 개략적으로 설명하는 도면이다.
도 16은 도 14의 테이블 5의 상세한 예를 개략적으로 설명하는 도면이다.
도 17은 도 14의 테이블 6의 상세한 예를 개략적으로 설명하는 도면이다.
도 18은 본 발명의 일 실시예의 입구 스위치의 테이블 구성을 예시하는 도면이다.
도 19는 본 발명의 일 실시예의 출구 스위치의 테이블 구성을 예시하는 도면이다.
도 20은 VXLAN의 패킷 포맷의 개념을 설명하는 도면이다.
본 발명의 실시예에 대하여 이하에 설명한다. 우선, 본 발명의 기본 개념에 대하여 설명한다. 전술한 바와 같이, 종래의 관련 기술에서는, 네트워크의 입구/출구에서의 액션은 스위치의 단일 테이블의 검색 결과에 대한 액션으로서 구현된다.
이에 반하여, 본 발명에 따르면, 네트워크의 입구/출구에서 행하여지는 처리(액션)은, 복수 단의 테이블의 검색 결과에 대한 액션으로서 구현된다. 그 결과, 액션의 수용에 대한 조건의 확장이 구현될 수 있다. 보다 상세하게는, 본 발명에 따르면, 패킷의 미리 결정된 정보가 테이블의 엔트리 검색 키와 매칭하고 있는지 여부의 검색이 행해지고, 매칭한 검색 키에 대응하는 액션에 의해 규정된 동작이 행하여지는 테이블로서, 스위치 내에 복수 단의 테이블이 제공된다. 테이블은 네트워크 출구 정보와 유저 정보의 패킷에 대한 매핑에 있어서 서로 다른 적어도 제1 테이블 및 제2 테이블(예를 들어, 도 5의 (123 및 130))을 포함한다.
수신된 제1 패킷에 대하여 상기 제1 테이블이 검색된다. 상기 제1 패킷을 상기 제1 테이블의 검색 키에 매칭한 경우에, 제1 패킷에 대하여 상기 제1 테이블의 상기 검색 키에 대응하는 액션에 따른 동작을 실시하여 제1 패킷을 제2 패킷으로 변환한다. 그 다음 상기 제2 패킷은 상기 제2 테이블에 공급된다. 상기 제2 패킷을 상기 제2 테이블의 검색 키에 매칭한 경우에, 상기 제2 패킷에 대하여, 상기 제2 테이블의 상기 검색 키에 대응하는 액션에 따른 동작을 실시하여 상기 제2 패킷을 제3 패킷으로 변환한다.
네트워크의 입구 측의 스위치에 있어서, 제1 테이블에 따라, 상기 제1 패킷의 로컬 유저 정보를 글로벌 유저 정보에 매핑하고, 상기 제2 테이블에 따라 상기 제2 패킷의 정보로부터 수신처 정보에 매핑을 행하고, 상기 제2 테이블의 후단에 배열된 제3 테이블에 따라 상기 제3 패킷의 수신처 정보에 의해 출력을 결정하는 것으로 구성될 수 있다.
네트워크의 출구 측의 스위치에 있어서, 제1 패킷의 아우터 정보가 제1 테이블에 따라 상기 아우터 정보를 참조함으로써 디캡슐화되어 제2 패킷을 출력하고;
(A) 상기 제2 테이블에 따라, 상기 제2 패킷의 글로벌 유저 정보가 로컬 유저 정보에 매핑되고;
상기 제2 테이블의 후단에 배열된 제3 테이블에 따라, 출력을 위해, 상기 제2 패킷의 정보에 기초하여 최종 수신처가 결정되고; 또는,
상기 (A)와는 반대 순서로,
(B) 제3 테이블에 따라, 상기 제2 패킷의 글로벌 유저 정보에 기초하여 수신처가 결정되고;
그 다음에, 상기 제2 테이블에 따라, 상기 제2 패킷의 글로벌 유저 정보가 로컬 유저로 변환되는 것으로 구성될 수 있다.
레이어 2(L2) 상에서는, 데이터 전송의 단위인 PDU(Protocol Data Unit)는 프레임으로서 지칭되고, 반면에 레이어 3(L3) 상에서는, PDU는 패킷으로서 지칭된다. 본 명세서에서는, PDU는 프레임과 패킷 간을 특별히 구별할 필요가 없는 경우 외에는 패킷으로서 표기된다.
입구에서의 변환이 복수 테이블에서의 액션에 따라 수행되는 경우, 액션 패턴은 다음과 같이 주어진다:
(네트워크의 출구 정보 아이템) + (패킷의 유저 정보 아이템).
네트워크의 출구 정보 아이템의 수 = 100이고, 패킷의 유저 정보 아이템의 수 = 4K(K=1024)로 가정하는 경우, 필요한 액션 리소스의 수는 100 + 4K이다.
테이블이 2개의 스테이지로 구성되는 경우, 전단 및 후단의 한쪽 테이블은 100 액션 리소스를 구비할 수 있고, 전단 및 후단의 다른 쪽 테이블은 4K의 액션 리소스를 구비할 수 있다. 즉, 종래의 관련 기술의 경우에서의 액션 리소스의 수(테이블의 엔트리의 수 = 100 × 4K)는 약 80분의 1로 감소된다.
이러한 점에 대하여, 예를 들어 도 5를 참조하여, 설명된다. 테이블 1-2(123)에서는 패킷의 헤더 정보의 키를 엔트리의 검색 키와 매칭(Hit)한 경우, 대응하는 액션은 로컬 유저 정보를 글로벌 유저 정보로 변환하는 동작이 된다. 후단의 테이블 2-4(130)에 대한 액션은 네트워크의 출구 정보의 변환이다. 테이블 1-2(123)로부터의 각각의 글로벌 유저 정보에 대하여, 100개의 아이템의 네트워크(관리 네트워크) 출구 정보의 변환을 테이블 2-4(130)를 이용하여 행한다. 글로벌 유저의 수가 4K(K=1024)인 경우, 글로벌 유저의 네트워크의 출구 정보의 변환 액션을 공유할 수 있다. 따라서, 테이블 1-2(123)에서 필요로 하는 4K의 액션 리소스의 수를 가지면 충분하고, 테이블 2-4(130)에서 필요로 하는 100의 액션 리소스의 수를 가지면 충분하다. 따라서, 테이블 1-2(123) 및 테이블 2-4(130)에서 필요한 액션 리소스의 전체 수는, 4K + 100이 된다.
본 발명에 따르면, 출구에서도 글로벌 유저 정보를 로컬 유저 정보로 복원하는 경우, 출구에서도 상기 입구에서의 방법과 동일한 방법이 적용된다. 따라서, 액션 패턴은 다음과 같이 주어진다:
(최종 출구 정보 아이템) + (유저 정보 아이템).
<제1 실시예>
도 1은, 본 발명의 제1 실시예의 네트워크의 구성 예를 예시하는 도면이다. 도 1을 참조하면, 네트워크(103)는 네트워크(103)의 에지에 위치한 입구 스위치(102) 및 출구 스위치(106)와 네트워크(103)의 코어에 위치한 중계 스위치(105)인 2종의 스위치를 구비하고 있다. 입구 스위치(102) 및 출구 스위치(106)는 네트워크(103)의 에지에 배치되어, 네트워크(103)의 외부의 통신 노드(도시하지 않음) 등에 각각 접속되고, “에지 스위치(edge switch)”라고도 한다. 중계 스위치(105)는 네트워크(103)의 내부(예를 들어, 중심부)에서의 데이터 전송 및 중계에 사용되는 스위치이며, “코어 스위치(core switch)”라고도 한다.
입력 패킷(101)은, 네트워크(103) 외부의 통신 노드 등(도시하지 않음)으로부터 네트워크(103)에 유입하는 패킷이며, 출력 패킷(107)은 네트워크(103)로부터 외부에 출력되는 패킷이다. 입력 패킷(101)은 네트워크(103)의 내부에서는 중계 패킷(104)의 형식으로 전송된다.
입구 스위치(102) 및 출구 스위치(106) 각각은 동작을 테이블의 검색 결과에 대한 액션으로서 구현한다. 입구 스위치(102) 및 출구 스위치(106) 각각은 테이블을 기억 및 유지하도록 구성된 기억 유닛(메모리 유닛)과, 제어 및 처리 유닛(도시하지 않음)을 구비하고 있다. 입력 포트로부터 공급된 패킷에 대하여, 기억 유닛에 기억된 각각의 테이블이 검색되고, 패킷의 헤더의 미리 결정된 정보(키 정보)가 테이블의 엔트리의 검색 키와 매칭되는 경우, 제어 및 처리 유닛은 검색 키에 대응하는 액션란에 규정된 동작을 실행한다. 입구 스위치(102) 및 출구 스위치(106)의 각각의 스위치에 있어서의 제어 및 처리 유닛의 동작은 스위치에 포함되는 CPU(Central Processing Unit)(프로세서)에 의해 구현되도록 구성된 프로세서에 의해 실행될 수 있다.
본 실시예에서의 입구 스위치(102)는, 테이블의 사용 모드에 따라 4개의 모드로 분류된다. 보다 구체적으로는, 입구 스위치(102)는, 예를 들어, 도 2, 도 3, 도 4, 및 도 5에 예시한 것과 같이 입구 스위치들로 분류된다.
도 2 및 도 3 각각을 참조하면, 입구 스위치(102)에 있어서, 각각의 테이블의 전단에 패킷 파서(패킷 해석기)가 제공되어 있다. 즉, 각각의 테이블에서의 검색 결과에 대한 액션을 실행하기 전 단계에서, 패킷의 파싱(해석)이 행하여진다. 여기서, 입력한 패킷에 관하여, 예를 들어, 패킷 파서는 이더넷(등록 상표) 프레임의 해석, 패킷의 종류 판별, MAC 어드레스 또는 IP 어드레스 등과 같은 헤더 태그 필드(header tag field) 값의 참조, 등에 사용된다. 본 실시예에 있어서, 패킷 파서에는 임의의 공지된 구성이 사용된다. 한편, 도 4 및 도 5 각각에서의 입구 스위치(102)의 입력 포트(108)의 직후에만 도시하지 않은 패킷 파서가 제공되어 있다.
도 4의 테이블 1-2(123)에서의 액션(125)은 다음의 동작을 포함한다:
(1) 로컬 유저 정보를 글로벌 유저 정보에 재기입하는 단계, 및
(2) 글로벌 유저 정보를 일시 정보(126)로서 일시 기억하는 단계. 이러한 배열에 의해, 후단의 테이블 2-3(127)에서는, 전단에서 일시 기억된 글로벌 유저 정보는 일시 정보(126)를 이용하여 핸드 오버된다.
<입구 스위치(102)의 제1 모드>
도 2는, 입구 스위치(102)의 제1 모드의 구성을 개략적으로 예시하고 있다. 도 2를 참조하면, 입구 스위치(102)는 입력 패킷(101)의 입력용 인터페이스로서 및 출력 패킷인 중계 패킷(104)의 출력 인터페이스로서 입력 포트(108) 및 출력 포트(119)를 각각 포함한다. 입구 스위치(102)는 내부에,
ㆍ입력 패킷(101)의 로컬 유저 정보를 글로벌 유저에 매핑(Mapping)하는 테이블 1-1(109);
ㆍ패킷(112)의 어드레스 정보와 글로벌 유저 정보를 이용하여 패킷을 캡슐화(encap)하는 테이블 2-1(113); 및
ㆍ캡슐화(encap) 패킷(104)의 수신처 정보에 의해, 패킷(104)의 출력처를 결정하는 테이블 3(116)을 포함한다. 패킷의 캡슐화(encap)란, 패킷의 헤더와 페이로드 전체를 다른 레이어의 페이로드 부분으로서, 별도의 레이어의 헤더를 새롭게 추가하고, 해당 별도의 레이어의 패킷 구조에 원래의 패킷을 감싸는 것을 의미한다.
테이블 1-1(109)의 엔트리의 검색 키(Key)((110))는, (1) 로컬 유저 정보이다. 검색 키(Key)((110))에 대응하는 액션(Action)(111)(검색 키(Key)(110)와 연관된 엔트리에 대응하고, 패킷의 헤더 정보가 검색 키(Key)(110)와 매칭한 경우에 입구 스위치(102)에서 실행되는 동작을 규정한 액션)은,
(1) 로컬 유저 정보를 글로벌 유저 정보에 재기입하는 동작이다.
테이블 2-1(113)의 엔트리의 검색 키(114)는,
(1) 패킷 어드레스 정보; 및
(2) 글로벌 유저 정보를 포함한다. 검색 키(114)에 대응하는 액션(115)은,
(1) 수신처 정보 헤더를 추가(encap)하는 동작이다.
테이블 3(116)의 엔트리의 검색 키(117)는,
(1) 수신처 정보(테이블 2-1(113)의 액션(115)에 의한 동작에 의해 추가된 수신처 정보)이다.
검색 키(117)에 대응하는 액션(118)은,
(1) 출력처를 결정하는 동작이다.
패킷(112)은, 테이블 1-1(109)에 따라 입력 패킷(101)을 변환하여 얻은 패킷이다.
중계 패킷(104)은, 테이블 2-1(113)에 따라 캡슐화(encap)된 패킷이다.
<입구 스위치(102)의 제2 모드>
도 3은, 도 1의 입구 스위치(102)의 제2 모드의 구성을 예시하는 도면이다. 도 3을 참조하면, 도 2의 테이블 2-1(113)과 상이하고, 테이블 2-2(120)의 액션(122)은,
(1) 수신처 정보 헤더를 추가(encap)하고,
(2) 패킷 출력처를 결정하는 동작이다. 이로 인해, 도 3에서는, 도 2의 테이블 3(116)이 삭제되어 있다(불필요). 즉, 제2 모드의 테이블 2-2(120)에 따라, 제1 모드의 테이블 2-1(113)과 테이블 3(116)의 액션을 함께 실행한다.
테이블 2-2(120)의 엔트리의 검색 키(121)는,
(1) 패킷 어드레스 정보; 및
(2) 글로벌 유저 정보를 포함한다.
검색 키(121)에 대응하는 액션(122)은,
(1) 수신처 정보 헤더를 추가(encap)하고; 및(또한)
(2) 출력처를 결정하는 동작이다.
<입구 스위치(102)의 제3 모드>
도 4는, 도 1의 입구 스위치(102)의 제3 모드의 구성을 예시하는 도면이다. 도 4를 참조하면, 캡슐화(encap)를 위한 테이블의 사용 방법에 따라, 글로벌 유저 정보를 갖는 패킷(112)의 캡슐화(encap)를 위한 테이블의 검색 키는, 도 2의 테이블 2-1(113)에서와 같이, 글로벌 유저 정보 그 자체일 필요는 없다. 예를 들어, 별도의 형식으로 일시적으로 기억된 글로벌 유저 정보를 검색 키로서 이용하여 검색하는 것도 가능하다.
도 4의 제3 모드의 테이블 1-2(123)에 있어서, 액션(125)에 따라, 다음의 액션이 수행된다:
(1) 로컬 유저 정보를 글로벌 유저 정보에 재기입할 때,
(2) 글로벌 유저 정보를 일시 정보(126)의 형식으로 일시 기억할 필요가 있다.
도 4의 테이블 1-2(123)의 액션(125)은,
(1) 입력 패킷(101)을 글로벌 유저 정보를 갖는 패킷(112)에 재기입하고; 및(또한)
(2) 글로벌 유저 정보를 일시 정보(126)의 형식으로 일시 기억하여 이 정보(126)를 테이블 2-3(127)에 전송하는 동작이다.
테이블 1-2(123)의 엔트리의 검색 키(124)는,
(1) 로컬 유저 정보이다.
검색 키(124)에 대응하는 액션(125)은,
(1) 로컬 유저 정보를 글로벌 유저 정보에 재기입하고;
(2) 글로벌 유저 정보를 일시 기억하는 동작이다.
테이블 2-3(127)의 엔트리의 검색 키(128)는,
(1) 패킷 어드레스 정보; 및
(2) 일시 기억된 글로벌 유저 정보를 포함한다.
검색 키(128)에 대응하는 액션(129)은,
(1) 수신처 정보 헤더를 추가하는(encap) 동작이다.
<입구 스위치(102)의 제4 모드>
도 5는, 도 1의 입구 스위치(102)의 제4 모드의 구성을 예시하는 도면이다. 도 5를 참조하면, 전술한 도 4와의 차이는, 제4 모드에서, 테이블 2-4(130)의 액션(132)이,
(1) 수신처 정보 헤더를 추가하고;
(2) 패킷 출력처를 결정하는 동작이다.
도 5의 구성에서는, 제3 모드의 도 4의 테이블 3(116)은 삭제되어 있다(불필요).
도 3에서는, 테이블 2-2(120)의 엔트리의 검색 키는,
(1) 패킷 어드레스 정보; 및
(2) 글로벌 유저 정보를 포함한다.
도 5에서는, 테이블 2-4(130)의 검색 키(131)는,
(1) 패킷 어드레스 정보; 및
(2) 일시 기억된 글로벌 유저 정보를 포함한다.
도 5를 참조하면, 테이블 1-2(123)의 액션(125)에 따라,
(1) 입력 패킷(101)은, 글로벌 유저 정보를 갖는 패킷(112)에 재기입되고;
(2) 글로벌 유저 정보는 일시 정보(126)의 형식으로 기억되어, 테이블 2-4(130)에 전송된다.
테이블 1-2(123)의 엔트리의 검색 키(124)는,
(1) 로컬 유저 정보이다.
검색 키(124)에 대응하는 액션(125)은,
(1) 로컬 유저 정보를 글로벌 유저 정보에 재기입하고;
(2) 글로벌 유저 정보를 일시 기억하는 동작이다.
테이블 2-4(130)의 엔트리의 검색 키(131)는,
(1) 패킷 어드레스 정보; 및
(2) 일시 기억된 글로벌 유저 정보를 포함한다.
검색 키(131)에 대응하는 액션(132)은,
(1) 수신처 정보 헤더를 추가(encap)하고; 및(또한)
(2) 출력처를 결정하는 동작이다.
<입구 스위치의 테이블 구조>
도 6은, 도 1의 입구 스위치(102)의 테이블 구조에 대해서, 전술한 제1 모드 내지 제4 모드의 각각의 테이블(테이블 1-1 및 1-2, 테이블 2-1 내지 2-4, 및 테이블 3)의 키 및 액션을 요약한 것이다.
<도 2의 제1 모드의 테이블 1-1의 예>
도 7은, 도 2의 제1 모드의 테이블 1-1(109)의 상세를 예시하는 도면이다. 도 7을 참조하면, 부호(133)에 나타낸 바와 같이, 입력 패킷(101)은,
ㆍ어드레스 정보;
ㆍ로컬 유저 정보; 및
ㆍ데이터(DATA)를 포함한다. 부호(134)에 나타낸 바와 같이, 테이블 1-1(109)의 출력 패킷(112)은,
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
테이블 1-1(109)의 엔트리의 검색 키(110)는,
(1) 로컬 유저 정보이다.
대응하는 액션(111)은,
(1) 로컬 유저 정보를 글로벌 유저 정보에 재기입하는 동작이다.
입구 스위치(102)에 있어서, 입력 패킷(101)의 로컬 유저 정보를 검색 키로서 사용하여 테이블 1-1(109)을 검색하고, 테이블 1-1(109)의 로컬 유저 정보와 매칭한 경우, 액션(111)에 따라 입력 패킷(101)의 로컬 유저 정보를 글로벌 유저 정보에 재기입하고, 결과적인 패킷을 패킷(112)으로서 출력한다.
<도 4의 제3 모드의 테이블 1-2의 예>
도 8은, 도 4의 제3 모드의 테이블 1-2(123)의 상세한 예를 개략적으로 설명하는 도면이다. 도 8을 참조하면, 테이블 1-2(123)의 액션(125)은,
(1) 로컬 유저 정보를 글로벌 유저 정보에 재기입하고;
(2) 글로벌 유저 정보를 일시 기억하는 동작이다.
도 8에서 참조 부호(126)는, 도시하지 않은 기억부 등에 일시 기억된 정보(일시 정보)를 나타낸다. 일시 기억된 일시 정보(126)는, 액션(125)에 따라 로컬 유저 정보를 변환하여 얻은 글로벌 유저 정보(135)가 된다.
<도 2의 제1 모드의 테이블 2-1의 예>
도 9는 도 3의 제1 모드의 입구 스위치(102)의 테이블 2-1(113)의 상세 예를 개략적으로 나타내는 도면이다. 도 2 및 도 7의 테이블 1-1(109)로부터 수신한 패킷(112)에는, 테이블 2-1(113)의 액션(115)에 따라, 수신처 정보 헤더가 추가되고(encap), 결과적인 패킷은 중계 패킷(104)이 된다. 부호(136)에 나타낸 바와 같이, 중계 패킷(104)은,
ㆍ수신처 정보(헤더);
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다. 테이블 2-1(113)의 출력처는, 테이블 3(116)이다.
<도 3의 제2 모드의 테이블 2-2의 예>
도 10은, 도 3의 제2 모드의 입구 스위치(102)의 테이블 2-2(120)의 상세 예를 개략적으로 나타내는 도면이다. 도 10을 참조하면, 테이블 2-2(120)의 액션(122)은,
(1) 수신된 패킷(112)에 수신처 정보 헤더를 추가하고(encap);
(2) 출력처를 결정하는 동작이다. 이로 인해, 제2 모드에서는, 도 2의 테이블 3이 제거된다. 테이블 2-2(120)의 출력처는, 도 3의 출력 포트(119)이다.
<도 4의 제3 모드의 테이블 2-3의 예>
도 11은, 도 4의 입구 스위치(102)의 제3 모드의 테이블 2-3(127)의 상세 예를 개략적으로 나타내는 도면이다. 도 11을 참조하면, 테이블 2-3(127)은, 도 8의 테이블 1-2(123)로부터,
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함하는 패킷(112), 및 글로벌 유저 정보를 포함하는 일시 정보(126)를 수신한다.
테이블 2-3(127)의 엔트리의 검색 키(128)는,
(1) 패킷 어드레스 정보; 및
(2) 일시 기억된 글로벌 유저 정보를 포함한다.
대응하는 액션(129)은,
(1) 수신처 정보 헤더를 추가하는 동작이다.
부호(136)에 나타낸 바와 같이, 중계 패킷(104)은,
ㆍ수신처 정보(헤더);
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
테이블 2-3(127)의 출력처는 테이블 3(116)이다.
<도 5의 제4 모드의 테이블 2-4의 예>
도 12는, 도 5의 제4 모드의 입구 스위치(102)의 테이블 2-4(130)의 상세 예를 개략적으로 나타내는 도면이다. 도 12를 참조하면, 테이블 2-4(130)의 입력 패킷(112), 출력 패킷(104), 및 일시 정보(126)는, 도 11과 동일하다.
테이블 2-4(130)의 액션(132)은,
(1) 수신처 정보 헤더를 추가하고(encap);
(2) 출력처를 결정하는 동작이다.
이로 인해, 도 11의 테이블 2-3(127)의 출력처인 테이블 3(도 4의 (116))이 제거된다. 테이블 2-4(130)의 출력처는 출력 포트(119)가 된다(도 5).
<도 4의 제3 모드의 테이블 3의 예>
도 13은, 도 4의 제3 모드의 입구 스위치(102)의 테이블 3(116)의 상세 예를 개략적으로 나타내는 도면이다. 테이블 3(116)에 있어서, 입력 패킷과 출력 패킷은 각각 중계 패킷(104)이다. 테이블 3(116)에 있어서, 검색 키(117)는 중계 패킷(104)의 내용(참조 부호(136))의 수신처 정보이며, 액션(118)은 패킷 출력처를 결정하는 동작이다. 출력처는 출력 포트(119)가 된다.
<도 1의 출구 스위치(106)의 구성 예>
도 14는, 도 1의 출구 스위치(106)의 구성을 예시하는 도면이다. 도 14를 참조하면, 출구 스위치(106)는 중계 패킷(104)의 입력 인터페이스 및 출력 인터페이스로서, 입력 포트(137) 및 출력 포트(147)를 포함한다. 출구 스위치(106)는 내부에(입력 포트(137)와 출력 포트(147) 사이에),
ㆍ수신처 정보에 따라, 수신처 정보 헤더를 디캡슐화하는(decap) 테이블 4(138);
ㆍ글로벌 유저 정보를 로컬 유저에 매핑(Mapping)하는 테이블 5(141); 및
ㆍ패킷 어드레스 정보와 로컬 유저 정보에 의해, 패킷 출력처를 결정하는 테이블 6(144)을 포함한다.
테이블 4(138)의 엔트리의 검색 키(139)는,
(1) 수신처 정보이다.
검색 키(139)에 대응하는 액션(140)은,
(1) 수신처 정보 헤더를 디캡슐화하는(decap) 동작이다.
테이블 5(141)의 엔트리의 검색 키(142)는,
(1) 글로벌 유저 정보이다.
검색 키(142)에 대응하는 액션(143)은,
(1) 글로벌 유저 정보를 로컬 유저 정보에 재기입하는 동작이다.
테이블 6(144)의 검색 키(145)는,
(1) 패킷 어드레스 정보; 및
(2) 로컬 유저 정보를 포함한다.
검색 키(145)에 대응하는 액션(146)은,
(1) 출력처를 결정하는 동작이다.
패킷(112)은, 테이블 4(138)의 액션(140)에 따라 수신처 정보 헤더가 중계 패킷(104)으로부터 디캡슐화(decap)된 패킷이다.
출력 패킷(107)은, 테이블 5(141)에 따라 패킷(112)의 글로벌 유저 정보가 로컬 유저 정보에 재기입된 패킷이다.
<도 14의 출구 스위치(106)의 테이블 4의 예>
도 15는, 도 14의 출구 스위치(106)의 테이블 4(138)의 상세 예를 개략적으로 나타내는 도면이다. 도 15를 참조하면, 참조 부호(136)에 나타낸 바와 같이, 중계 패킷(104)의 내용은,
ㆍ수신처 정보;
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다. 부호(134)에 나타낸 바와 같이, 패킷(112)의 내용은,
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
테이블 4(138)의 엔트리의 검색 키(139)는,
(1) 수신처 정보이다.
대응하는 액션(140)은,
(1) 수신처 정보 헤더를 디캡슐화하는(decap) 동작이다.
테이블 4(138)의 출력처는 테이블 5(141)이다.
<도 14의 출구 스위치(106)의 테이블 5의 예>
도 16은, 도 14의 출구 스위치(106)의 테이블 5(141)의 상세 예를 개략적으로 나타내는 도면이다. 패킷(112)의 내용은, 부호(134)로 나타낸 바와 같이,
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다. 출력 패킷(107)의 내용은, 부호(148)로 나타낸 바와 같이,
ㆍ어드레스 정보;
ㆍ로컬 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
테이블 4(141)의 엔트리의 검색 키(142)는,
(1) 글로벌 유저 정보이다.
액션(143)은,
(1) 글로벌 유저 정보를 로컬 유저 정보에 매핑(Mapping)하는 동작이다.
테이블 5(141)의 출력처는 테이블 6(144)이다.
<도 14의 출구 스위치(106)의 테이블 6의 예>
도 17은, 도 14의 출구 스위치(106)의 상세 예를 개략적으로 나타내는 도면이다. 입력/출력 패킷(107)의 내용은, 부호(148)로 나타낸 바와 같이,
ㆍ어드레스 정보;
ㆍ로컬 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
테이블 6(144)의 엔트리의 검색 키(145)는,
(1) 패킷 어드레스 정보; 및
(2) 로컬 유저 정보를 포함한다. 대응하는 액션(146)은,
(1) 출력처를 결정하는 동작이다.
테이블 6(144)의 출력처는 출력 포트이다.
다음은, 상술한 테이블 구성에 대하여 실시예의 동작을 설명한다. 패킷이 네트워크 내에서 처리되는 흐름에 대하여 설명한다. 네트워크(103)의 에지에 위치한 스위치는, 입구 스위치(102) 및 출구 스위치(106)이며, 네트워크의 코어에 위치한 스위치는 중계 스위치(105)이다.
<입구 스위치(102)>
입구 스위치(102)는, 오리지널 정보를 갖는 입력 패킷(101)을 다음의 정보를 갖는 중계 패킷(104)으로 변환한다;
ㆍ네트워크의 출구 정보;
ㆍ패킷의 글로벌 유저 정보; 및
ㆍ패킷의 오리지널 정보. 그 다음, 입구 스위치(102)는 중계 패킷(104)을 중계 스위치(105)에 출력한다.
<중계 스위치(105)>
중계 스위치(105)는 중계 패킷(104)의 네트워크의 출구 정보를 검색하여, 중계 패킷(104)을 출구 스위치(106)에 전송한다.
<출구 스위치(106)>
중계 패킷(104)이 출구 스위치(106)에 도달하면, 출구 스위치(106)는, 패킷이 출구 스위치(106) 자체에 어드레스되는 지를 체크한다. 패킷이 출구 스위치(106) 자체에 어드레스되는 경우, 출구 스위치는 먼저 네트워크의 출구 정보, 즉, 수신처 정보 헤더를 제거한다. 그 다음, 글로벌 유저 정보는 출구 스위치(106)의 로컬 유저 정보에 재기입된다. 마지막으로, 출구 스위치(106)는 출력처를 결정하여 중계 패킷(104)을 출력한다. 전술한 바와 같이, 입구 스위치(102)는 스위치의 테이블의 사용 모드에 따라 4개의 모드로 분류된다.
<제1 모드의 입구 스위치(102)의 동작>
도 2의 제1 모드의 입구 스위치(102)의 동작에 대하여 설명한다. 도 2를 참조하면, 입구 스위치(102)에 있어서, 입력 패킷(101)은 입력 포트(108)를 경유하여 테이블 1-1(109)에 도달한다. 입력 패킷(101)의 로컬 유저 정보를 키로서 이용하여, 테이블 1-1(109)이 검색된다. 테이블 1-1(109)의 엔트리의 검색 키(110)가 히트(Hit)이면, 이러한 엔트리의 액션(111)이 실행된다. 즉, 액션(111)에 따라, 로컬 유저 정보를 글로벌 유저 정보에 재기입하는 동작을 행함으로써, 입력 패킷(101)은 패킷(112)에 재기입된다. 재기입에 의해 얻어진 패킷(112)은, 테이블 2-1(113)에 전송된다.
패킷(112)의 헤더의 다음 정보를 키로서 이용하여, 테이블 2-1(113)이 검색된다:
ㆍ어드레스 정보; 및
ㆍ글로벌 유저 정보.
테이블 2-1(113)의 엔트리의 검색 키(114)가 히트(Hit)이면, 이러한 엔트리의 액션(115)이 실행된다. 즉, 액션(115)에 따라, 패킷의 수신처 정보 헤더가 패킷(112)에 추가된다(encap).
수신처 정보 헤더가 추가된 패킷은 중계 패킷(104)이 된다. 중계 패킷(104)은 테이블 3(116)에 전송된다.
중계 패킷(104)의 수신처 정보를 키로서 이용하여, 테이블 3(116)이 검색된다. 테이블 3(116)의 엔트리의 검색 키(117)가 히트(Hit)이면, 이러한 엔트리의 액션(118)이 실행되어, 출력처가 결정된다. 중계 패킷(104)은 출력 포트(119)로부터 출력된다.
<제2 모드의 입구 스위치(102)의 동작>
이어서, 도 3의 제2 모드의 입구 스위치(102)의 동작에 대하여 설명한다. 도 3을 참조하면, 입구 스위치(102)에 있어서, 입력 패킷(101)은 입력 포트(108)를 경유하여 테이블 1-1(109)에 전송된다. 입력 패킷(101)의 로컬 유저 정보를 키로서 사용하여 테이블 1-1(109)이 검색된다. 테이블 1-1(109)의 엔트리의 검색 키(110)가 히트(Hit)이면, 이러한 엔트리의 액션(111)이 실행된다. 즉, 액션(111)에 따라, 로컬 유저 정보를 글로벌 유저 정보에 재기입하는 동작을 행함으로써, 입력 패킷(101)은 패킷(112)에 재기입된다. 재기입에 의해 얻어진 패킷(112)은 테이블 2-2(120)에 전송된다.
패킷(112)의 헤더의 다음 정보를 키로서 사용하여, 테이블 2-2(120)이 검색된다:
ㆍ어드레스 정보; 및
ㆍ글로벌 유저 정보. 테이블 2-2(120)의 엔트리의 키(121)가 히트(Hit)이면, 이러한 엔트리의 액션(122)이 실행된다. 즉, 액션(122)을 따라, 패킷의 수신처 정보 헤더가 패킷(112)에 추가된다. 또한, 출력처가 결정된다. 수신처 정보 헤더가 추가된 패킷은 중계 패킷(104)이 된다.
중계 패킷(104)은 출력 포트(119)로부터 출력된다.
<제3 모드의 입구 스위치(102)의 동작>
이어서, 도 4의 제3 모드의 입구 스위치(102)의 동작에 대하여 설명한다. 도 4를 참조하면, 입구 스위치(102)에 있어서, 입력 패킷(101)은 입력 포트(108)를 경유하여 테이블 1-2(123)에 전송된다. 입력 패킷(101)의 로컬 유저 정보를 키로서 사용하여, 테이블 1-2(123)이 검색된다. 테이블 1-2(123)의 엔트리의 검색 키(124)가 히트(Hit)이면, 이러한 엔트리의 액션(125)이 실행된다. 즉, 액션(125)에 따라, 로컬 유저 정보를 글로벌 유저 정보에 재기입하는 동작을 행함으로써, 입력 패킷(101)은 패킷(112)에 재기입된다. 또한, 글로벌 유저 정보는 일시 정보(126)로서 일시 기억된다. 재기입에 의해 얻어진 패킷(112) 및 일시 정보(126)는 테이블 2-3(127)에 전송된다.
패킷(112)의 헤더의 다음 정보를 키로서 사용하여, 테이블 2-3(127)이 검색된다:
ㆍ어드레스 정보; 및
ㆍ일시 정보(126)로서 일시 기억된 글로벌 유저 정보. 테이블 2-3(127)의 엔트리의 키(128)가 히트(Hit)이면, 이러한 엔트리의 액션(129)이 실행된다. 즉, 액션(129)에 따라 패킷의 수신처 정보 헤더가 패킷(112)에 추가된다. 수신처 정보 헤더가 추가된 패킷은 중계 패킷(104)이 된다. 중계 패킷(104)은 테이블 3(116)에 전송된다.
중계 패킷(104)의 수신처 정보를 키로서 사용하여, 테이블 3(116)이 검색된다. 테이블 3(116)의 엔트리의 키(117)가 히트(Hit)이면, 이러한 엔트리의 액션(118)이 실행된다. 즉, 액션(118)에 따라, 출력처가 결정된다. 중계 패킷(104)은, 출력 포트(119)로부터 출력된다.
<제4 모드의 입구 스위치(102)의 동작>
이어서, 도 5의 제4 모드의 입구 스위치(102)의 동작에 대하여 설명한다. 도 5를 참조하면, 입구 스위치(102)에 있어서, 입력 패킷(101)은 입력 포트(108)를 경유하여 테이블 1-2(123)에 전송된다. 입력 패킷(101)의 로컬 유저 정보를 키로서 사용하여, 테이블 1-2(123)이 검색된다. 테이블 1-2(123)의 엔트리의 검색 키(124)가 히트(Hit)이면, 이러한 엔트리의 액션(125)이 실행된다. 즉, 액션(125)에 따라, 로컬 유저 정보를 글로벌 유저 정보에 재기입하는 동작을 행함으로써, 입력 패킷(101)은 패킷(112)에 재기입된다. 글로벌 유저 정보는 일시 정보(126)로서 일시 기억된다.
재기입에 의해 얻어진 패킷(112) 및 일시 정보(126)는, 테이블 2-4(130)에 전송된다. 다음 정보를 키로서 사용하여, 테이블 2-4(130)이 검색된다:
ㆍ패킷(112)의 어드레스 정보; 및
ㆍ일시 정보(126)로서 일시 기억된 글로벌 유저 정보. 테이블 2-4(130)의 엔트리의 키(131)가 히트(Hit)이면, 이러한 엔트리의 액션(132)이 실행된다. 즉, 액션(132)에 따라, 패킷의 수신처 정보 헤더가 패킷(112)에 추가된다. 또한, 출력처가 결정된다.
수신처 정보 헤더가 추가된 패킷은 중계 패킷(104)이 된다.
중계 패킷(104)은 출력 포트(119)로부터 출력된다.
<제1 모드 내지 제4 모드의 입구 스위치의 테이블 구성>
도 6의 제1 모드 내지 제4 모드의 입구 스위치의 테이블 구성의 요약에 대하여 설명한다.
로컬 유저 정보가 글로벌 유저 정보에 재기입된 후에 글로벌 유저 정보가 일시 기억될 지 여부에 따라, 테이블 1(테이블 1-1, 1-2)은 2개의 패턴으로 분류된다.
도 2의 테이블 1-1(109)은, 글로벌 유저 정보가 일시 정보로서 기억되지 않은 패턴이다. 도 4의 테이블 1-2(123)는 글로벌 유저 정보가 일시 정보로서 기억되는 패턴이다.
테이블 2는 4개의 패턴으로 분류된다.
테이블 2의 검색 키는, 테이블 1-1 및 1-2에 대응하여, 2개의 패턴으로 분류된다. 테이블 2의 액션은, 출력처가 결정될 지의 여부에 따라, 2개의 패턴으로 분류된다.
각각의 테이블 2의 검색 키는, 글로벌 유저 정보를 일시 정보로서 기억하지 않는 경우, 패킷의 글로벌 유저 정보가 된다. 도 2의 테이블 2-1(113)과 테이블 2-2(120)의 검색 키는 이러한 패턴에 따른다.
글로벌 유저 정보를 일시 정보(126)로서 기억하는 경우, 각각의 테이블 2의 검색 키는 패킷의 글로벌 유저 정보가 아니라, 기억된 일시 정보의 글로벌 유저 정보가 된다. 도 4의 테이블 2-3(127)과 도 5의 테이블 2-4(130)의 검색 키는 이러한 패턴에 따른다.
도 2의 테이블 2-1(113)과 도 4의 테이블 2-3(127)의 경우에, 각각의 테이블 2의 액션은, 단지 수신처 정보 헤더를 추가하는 동작이다. 그 다음, 제1 모드와 제3 모드에서는, 테이블 3(116)이 필요하다.
도 3의 테이블 2-2(120)와 도 5의 테이블 2-4(130)의 경우, 액션은,
(1) 패킷에 수신처 정보 헤더를 추가하는 동작; 및
(2) 출력처를 결정하는 동작을 포함한다. 따라서, 제2 모드와 제4 모드에서는, 도 1 및 도 3의 테이블 3(116)은 불필요하다.
<도 7의 테이블 1-1에 관한 동작>
도 7의 테이블 1-1(109)(제1 모드 및 제2 모드 각각의 입구 스위치(102)의 테이블 1)에 관한 동작에 대하여 설명한다. 도 7의 입력 패킷(101)의 내용(133)은,
ㆍ어드레스 정보;
ㆍ로컬 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
입력 패킷(101)의 로컬 유저 정보를 키로서 사용하여, 테이블 1-1(109)이 검색된다. 테이블 1-1(109)의 엔트리의 키(110)가 히트(Hit)이면, 이러한 엔트리의 액션(111)이 실행된다. 즉, 액션(111)에 따라, 로컬 유저 정보를 글로벌 유저 정보에 재기입하는 동작을 행함으로써, 입력 패킷(101)은 패킷(112)에 재기입된다.
재기입된 패킷(112)의 내용(134)은,
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
패킷(112)은, 테이블 2-1(113) 또는 테이블 2-2(120)에 전송된다.
<도 8의 테이블 1-2에 관한 동작>
이어서, 도 8의 테이블 1-2(123)(제3 모드 및 제4 모드 각각의 입구 스위치(102)의 테이블 1)에 관한 동작에 대하여 설명한다. 도 8을 참조하면, 입력 패킷(101)의 내용(133)은,
ㆍ어드레스 정보;
ㆍ로컬 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
입력 패킷(101)의 로컬 유저 정보를 키로서 사용하여, 테이블 1-2(123)이 검색된다. 테이블 1-2(123)의 엔트리의 키(124)가 히트(Hit)이면, 이러한 엔트리의 액션(125)이 실행된다. 즉, 액션(125)에 따라, 로컬 유저 정보를 글로벌 유저 정보에 재기입하는 동작을 행함으로써, 입력 패킷(101)은 패킷(112)에 재기입된다. 글로벌 유저 정보는 일시 정보(126)의 형식으로 일시 기억된다.
재기입에 의해 얻어진 패킷(112)의 내용(134)은,
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
일시 정보(126)의 내용(135)은 글로벌 유저 정보를 포함한다.
패킷(112) 및 일시 정보(126)는, 테이블 2-3(127) 또는 테이블 2-4(130)에 전송된다.
<도 9의 테이블 2-1에 관한 동작>
도 9의 테이블 2-1(113)(제1 모드의 입구 스위치(102)의 테이블 2)에 관한 동작에 대하여 설명한다. 도 9를 참조하면, 테이블 1-1(109)로부터 공급된 패킷(112)의 내용은, 부호(134)에 나타낸 바와 같이,
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다. 패킷(112)의 다음 정보를 키로서 사용하여, 테이블 2-1(113)이 검색된다:
ㆍ어드레스 정보; 및
ㆍ글로벌 유저 정보. 테이블 2-1(113)의 엔트리의 키(114)가 히트(Hit)이면, 이러한 엔트리의 액션(115)이 실행된다. 즉, 액션(115)에 따라, 패킷의 수신처 정보 헤더가 패킷(112)에 추가된다(encap). 수신처 정보 헤더가 추가된 패킷은, 중계 패킷(104)이 된다.
중계 패킷(104)의 내용(136)은,
ㆍ수신처 정보(수신처 정보 헤더);
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
중계 패킷(104)은 테이블 3(116)에 전송된다.
<도 10의 테이블 2-2에 관한 동작>
이어서, 도 10의 테이블 2-2(120)(제2 모드의 입구 스위치(102)의 테이블 2)에 관한 동작에 대하여 설명한다. 테이블 1-1(109)로부터 공급된 패킷(112)의 내용은, 부호(134)로 나타낸 바와 같이,
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다. 패킷(112)의 다음 정보를 키로서 사용하여, 테이블 2-2(120)이 검색된다:
(1) 어드레스 정보; 및
(2) 글로벌 유저 정보.
테이블 2-2(120)의 엔트리의 키(121)가 히트(Hit)이면, 이러한 엔트리의 액션(122)이 실행된다. 즉, 액션(122)에 따라, 수신처 정보 헤더가 패킷(112)에 추가된다(encap). 또한, 출력처가 결정된다.
수신처 정보 헤더가 추가된 패킷은 중계 패킷(104)이 된다.
중계 패킷(104)의 내용(136)은,
ㆍ수신처 정보;
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
중계 패킷(104)은 출력 포트(119)로부터 출력된다.
<도 11의 테이블 2-3에 관한 동작>
이어서, 도 11의 테이블 2-3(127)(제3 모드의 입구 스위치(102)의 테이블 2)에 관한 동작에 대하여 설명한다. 테이블 1-2(123)로부터 공급된 패킷(112)의 내용은, 부호(134)로 나타낸 바와 같이,
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
일시 정보(126)의 내용(135)은, 글로벌 유저 정보를 포함한다.
다음 정보를 키로서 사용하여, 테이블 2-3(127)이 검색된다:
(1) 패킷(112)의 어드레스 정보; 및
(2) 일시 정보(126)로서 일시 기억된 글로벌 유저 정보.
테이블 2-3(127)의 엔트리의 키(128)가 히트(Hit)이면, 이러한 엔트리의 액션(129)이 실행된다. 이 경우, 패킷의 수신처 정보 헤더가 패킷(112)에 추가된다.
수신처 정보 헤더가 추가된 패킷은, 중계 패킷(104)이 된다.
중계 패킷(104)의 내용(136)은,
ㆍ수신처 정보;
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다. 중계 패킷(104)은 테이블 3(116)에 전송된다.
<도 12의 테이블 2-4에 관한 동작>
이어서, 도 12의 테이블 2-4(130)(제4 모드의 입구 스위치(102)의 테이블 2)에 관한 동작에 대하여 설명한다. 테이블 1-2(123)로부터 공급된 패킷(112)의 내용은, 부호(134)로 나타낸 바와 같이,
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
일시 정보(126)의 내용(135)은, 글로벌 유저 정보를 포함한다.
다음 정보를 키로서 사용하여, 테이블 2-4(130)이 검색된다:
(1) 패킷(112)의 어드레스 정보; 및
(2) 일시 정보(126)로서 일시 기억된 글로벌 유저 정보.
테이블 2-4(130)의 엔트리의 키(131)가 히트(Hit)이면, 이러한 엔트리의 액션(132)이 실행된다. 즉, 액션(132)에 따라, 패킷의 수신처 정보 헤더가 패킷(112)에 추가된다.
또한, 출력처가 결정된다.
수신처 정보 헤더가 추가된 패킷은, 중계 패킷(104)이 된다. 중계 패킷(104)의 내용(136)은,
ㆍ수신처 정보;
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
중계 패킷(104)은, 출력 포트(119)로부터 출력된다.
<도 13의 테이블 3에 관한 동작>
이어서, 도 13의 테이블 3(116)(제1 모드 및 제3 모드 각각의 입구 스위치(102)의 테이블 3)에 관한 동작에 대하여 설명한다. 테이블 2-1(113) 또는 테이블 2-3(127)로부터 공급된 중계 패킷(104)의 내용(136)은,
ㆍ수신처 정보;
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
중계 패킷(104)의 수신처 정보를 키로서 사용하여, 테이블 3(116)이 검색된다. 테이블 3(116)의 엔트리의 키(117)가 히트(Hit)이면, 이러한 엔트리의 액션(118)이 실행된다. 액션(118)에 따라, 출력처가 결정된다. 중계 패킷(104)은 출력 포트(119)로부터 출력된다.
<도 14의 출구 스위치(106)>
이어서, 도 14의 출구 스위치(106)에 대하여 설명한다. 도 14를 참조하면, 출구 스위치(106)에 있어서, 중계 패킷(104)은 입력 포트(137)를 경유하여 테이블 4(138)에 전송된다.
중계 패킷(104)의 수신처 정보를 키로서 사용하여, 출구 스위치(106)의 테이블 4(138)이 검색된다. 테이블 4(138)의 엔트리의 키(139)가 히트(Hit)이면, 이러한 엔트리의 액션(140)이 실행된다. 즉, 액션(140)을 따라, 중계 패킷(104)의 수신처 정보 헤더가 디캡슐화되어(decap), 결과적인 패킷은 패킷(112)이 된다. 패킷(112)은, 테이블 5에 전송된다.
패킷(112)의 글로벌 유저 정보를 키로서 사용하여, 출구 스위치(106)의 테이블 5(141)이 검색된다. 테이블 5(141)의 엔트리의 키(142)가 히트(Hit)이면, 이러한 엔트리의 액션(143)이 실행된다. 즉, 액션(143)에 따라, 패킷(112)의 글로벌 유저 정보는 출구 스위치(106)의 로컬 유저 정보에 재기입된다.
재기입에 의해 얻어진 패킷은, 출력 패킷(107)이 된다.
출력 패킷(107)은, 테이블 6(144)에 전송된다.
출력 패킷(107)의 다음 정보를 키로서 사용하여, 출구 스위치(106)의 테이블 6(144)이 검색된다:
(1) 어드레스 정보; 및
(2) 로컬 유저 정보.
테이블 6(144)의 엔트리의 키(145)가 히트(Hit)이면, 이러한 엔트리의 액션(146)이 실행된다. 즉, 액션(146)을 따라, 출력처가 결정된다. 출력 패킷(107)은 출력 포트(147)로부터 출력된다.
입력 패킷의 로컬 유저 정보는 출력 패킷의 로컬 유저 정보와 동일하지 않을 수 있다. 각각의 스위치에서 로컬 유저 정보는 상이하다. 따라서, 입구 스위치와 출구 스위치가 동일한 스위치인 경우, 이들 2개의 아이템의 로컬 유저 정보는 동일하다. 입구 스위치와 출구 스위치가 동일한 스위치가 아닐 경우, 이들 2개의 아이템의 로컬 유저 정보는 상이하다.
<도 15의 테이블 4에 관한 동작>
이어서, 도 15의 테이블 4(138)(출구 스위치(106)의 테이블 4)에 관한 동작에 대하여 설명한다.
입력 포트로부터 공급된 중계 패킷(104)의 내용(136)은,
ㆍ수신처 정보;
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
중계 패킷(104)의 수신처 정보를 키로서 사용하여, 테이블 4(138)이 검색된다. 테이블 4(138)의 엔트리의 키(139)가 히트(Hit)이면, 출구 스위치(106)는 이러한 엔트리의 액션(140)을 실행한다. 액션(140)에 따라, 중계 패킷(104)의 수신처 정보 헤더가 디캡슐화되어, 결과적인 패킷은 패킷(112)이 된다. 패킷(112)의 내용은, 참조 부호(134)에 나타낸 바와 같이,
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
패킷(112)은 테이블 5에 전송된다.
<도 16의 테이블 5에 관한 동작>
도 16의 테이블 5(141)(출구 스위치(106)의 테이블 5)에 관한 동작에 대하여 설명한다. 테이블 4로부터 공급된 패킷(112)의 내용은, 참조 부호(134)로 나타낸 바와 같이,
ㆍ어드레스 정보;
ㆍ글로벌 유저 정보; 및
ㆍ데이터(DATA)를 포함한다. 패킷(112)의 글로벌 유저 정보를 키로서 사용하여, 테이블 5(141)이 검색된다. 테이블 5(141)의 엔트리의 키(142)가 히트(Hit)이면, 이러한 엔트리의 액션(143)이 실행된다. 즉, 액션(143)을 따라, 글로벌 유저 정보를 출구 스위치(106)의 로컬 유저 정보에 재기입함으로써, 패킷(112)은 출력 패킷(107)에 재기입된다. 재기입에 의해 얻어진 출력 패킷(107)의 내용(148)은,
ㆍ어드레스 정보;
ㆍ로컬 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
출력 패킷(107)은 테이블 6에 전송된다.
<도 17의 테이블 6에 관한 동작>
도 17의 테이블 6(144)(출구 스위치(106)의 테이블 6)에 관한 동작에 대하여 설명한다. 테이블 5(141)로부터 공급된 출력 패킷(107)의 내용은, 부호(148)로 나타낸 바와 같이,
ㆍ어드레스 정보;
ㆍ로컬 유저 정보; 및
ㆍ데이터(DATA)를 포함한다.
출력 패킷(107)의 다음 정보를 키로서 사용하여, 테이블 6(144)이 검색된다:
(1) 어드레스 정보; 및
(2) 로컬 유저 정보.
테이블 6(144)의 엔트리의 키(145)가 히트(Hit)이면, 이러한 엔트리의 액션(146)이 실행된다. 액션(146)을 따라, 출력 패킷(107)의 출력처가 결정된다.
출력 패킷(107)은 출력 포트(147)로부터 출력된다.
상기 제1 모드 내지 제4 모드 중 어느 하나에서, 네트워크의 입구/출구에서의 액션이 테이블의 검색 결과에 대한 액션으로서 구현되면, 필요한 액션 패턴의 수가 감소될 수 있고, 액션의 수용이 확장될 수 있다.
<제2 실시예>
본 발명의 제2 실시예에 대하여 설명한다. 도 18은, 본 발명의 제2 실시예의 입구 스위치의 구성을 예시하는 도면이다. 도 18을 참조하면, 입구 스위치(160)는 입력 패킷(149)의 입력 및 출력 인터페이스로서, 입력 포트(150) 및 출력 포트(159)를 갖는다. 입력 패킷(149)의 내용은 참조 부호(161)로 나타난다(입력 패킷(149)은 DST_MAC, SRC_MAC, VLAN_ID, DST_IP, SRC_IP, UDP, 및 DATA를 포함한다). 패킷(154)은, Outer_VID(Outer_VLAN_ID)와 Inner_VID(Inner_VLAN_ID)를 갖고 있는 QinQ 패킷이다. QinQ는, 또 다른 VLAN 태그를 통신 사업자의 네트워크 내에 부여함으로써 유저를 식별하는 방식이다. 패킷(154)의 내용은 참조 부호(162)로 나타난다(패킷(154)은, DST_MAC, SRC_MAC, Outer_VID, Inner_VID, VAN_ID, DST_IP, SRC_IP, UDP, 및 DATA를 포함한다). 중계 패킷(165)은, MPLS(Multi Protocol Label Switching) 헤더가 추가된 QinQ 패킷이다. 중계 패킷(165)의 내용은 참조 부호(163)로 나타난다(중계 패킷(165)은, DST_MAC_1, SRC_MAC_1, VLAN_ID_1, MPLS_Label, DST_MAC, SRC_MAC, Outer_VID, Inner_VID, VLAN_ID, DST_IP, SRC_IP, UDP, 및 DATA를 포함한다). 중계 패킷(165)의 내용(163)에 있어서, DST_MAC_1, SRC_MAC_1, VLAN_ID_1, 및 MPLS_Label은 MPLS 헤더를 형성한다.
테이블 1(151)의 검색 키(152)는,
(1) VLAN_ID이다.
검색 키(152)에 대응하는 액션(153)은,
(1) VLAN_ID를 Outer_VID에 재기입하고;
(2) Inner_VID를 추가하고;
(3) VLAN_ID를 다른 일시 정보(155)로서 기억하는 동작이다.
테이블 2(156)의 검색 키(157)는,
(1) DST_MAC; 및
(2) 일시 정보(VLAN_ID)를 포함한다.
검색 키(157)에 대응하는 액션(158)은,
(1) MPLS L2VPN을 PUSH하여, Shim 헤더를 추가(encap)하고;
(2) 포트 번호(Port_num)를 결정하는 동작이다.
L2-VPN은, 예를 들어, 프로바이더(provider)가 고객 사이트 사이의 레이어 2 접속을 제공하는 VPN이다.
PUSH는, MPLS 네트워크의 입구에 위치한 LER에 의해 라벨링하여 포워딩을 수행하는 동작을 의미한다.
Shim 헤더는, 데이터 링크 헤더와 IP 헤더 사이에 제공되어 라벨을 포함하는 20비트의 MPLS 헤더(MPLS Label 헤더)이다.
도 19는, 제2 실시예의 출구 스위치(178)의 구성을 예시하는 도면이다. 도 19를 참조하면, 출구 스위치(178)는 출구 스위치(178)에 공급되는 패킷인 중계 패킷(165)의 입력 및 출력 인터페이스로서, 입력 포트(180) 및 출력 포트(177)를 갖는다. 수신된 중계 패킷은 MPLS 헤더가 추가된 QinQ 패킷이다. 중계 패킷(165)의 내용은 참조 부호(163)로 나타낸다(중계 패킷(165)은, DST_MAC_1, SRC_MAC_1, VLAN_ID_1, MPLS_Labl, DST_MAC, SRC_MAC, Outer_VID, Inner_VID, VLAN_ID, DST_IP, SRC_IP, UDP, 및 DATA를 포함한다). 이들 중, DST_MAC_1, SRC_MAC_1, VLAN_ID_1, 및 MPLS_Label은 MPLS 헤더를 형성한다.
패킷(154)은 Outer_VID와 Inner_VID를 포함하는 QinQ 패킷이다. 패킷(154)의 내용은 참조 부호(162)로 나타낸다(패킷(154)은, DST_MAC, SRC_MAC, Outer_VID, Inner_VID, VLAN_ID, DST_IP, SRC_IP, UDP, 및 DATA를 포함한다).
패킷(173)은 출력 패킷이다. 패킷(173)의 내용은 참조 부호(179)로 나타낸다(패킷(173)은, DST_MAC, SRC_MAC, VLAN_ID, DST_IP, SRC_IP, UDP, 및 DATA를 포함한다).
테이블 4(166)의 검색 키((167))는,
(1) DST_MAC_1; 및
(2) VLAN_ID_1을 포함한다.
검색 키((167))에 대응하는 액션(168)은,
(1) 패킷(165)의 MPLS 헤더를 디캡슐화하는(decap) 동작이다.
테이블 5(170)의 검색 키(171)는,
(1) Outer_VID(아우터 정보: 자신에 어드레스된 패킷); 및
(2) Inner_VID를 포함한다.
검색 키(171)에 대응하는 액션(172)은,
(1) Outer_VID를 VLAN_ID_2에 재기입하고 Inner_VID를 제거하는 동작이다.
테이블 6(174)의 검색 키(175)는,
(1) 수신처 MA 어드레스(DST_MAC); 및
(2) VLAN_ID_2를 포함한다.
검색 키(175)에 대응하는 액션(176)은,
(1) 출력의 포트 번호 PORT_NUM을 결정하는 동작이다.
<입구 스위치(160)의 동작>
도 18에 나타낸 입구 스위치(160)의 동작에 대하여 설명한다. 입구 스위치(160)에 있어서, 입력 패킷(149)은, 입력 포트(150)를 경유하여, 테이블 1(151)에 전송된다. 입력 패킷(149)의 VLAN_ID가 테이블 1(151)의 엔트리의 검색 키(152)를 히트(Hit)하면, 이러한 엔트리의 액션(153)이 실행된다. 먼저, 패킷(149)의 VLAN_ID가 Outer_VID에 재기입된다.
이어서, Inner_VID가 추가된다. 마지막으로, VLAN_ID가 일시 정보(155)의 형식으로 기억된다. 테이블 1(151)의 액션(153)을 따라 재기입에 의해 얻어진 패킷(154)은 일시 정보(155)와 함께 테이블 2(156)에 전송된다.
패킷(154)과 일시 정보(155)가 테이블 2(156)의 엔트리의 검색 키(157)를 히트하면, 이러한 엔트리의 액션(158)이 실행된다.
액션(158)에 따라, MPLS L2VPN이 PUSH되어 Shim 헤더를 패킷(154)에 추가한다.
중계 패킷(165)의 출력 포트 번호가 결정된다.
마지막으로, 중계 패킷(165)은 지정된 출력 포트로부터 출력된다.
<출구 스위치(178)의 동작>
이어서, 도 19에 나타낸 출구 스위치(178)의 동작에 대하여 설명한다. 출구 스위치(178)에 있어서, 중계 패킷(165)은, 출구 스위치(178)의 입력 포트(180)를 경유하여, 테이블 4(166)에 전송된다. 중계 패킷(165)의 헤더 정보(DST_MAC_1, VLAN_ID_1)가 테이블 4(166)의 엔트리의 검색 키((167)를 히트(Hit)하면, 이러한 엔트리의 액션(168)이 실행된다.
액션(168)에 따라, 중계 패킷(165)으로부터, MPLS Shim 헤더가 디캡슐화되어(decap), 결과적인 패킷은 패킷(154)이 된다.
패킷(154)의 Outer_VID와 Inner_VID가, 테이블 5(170)의 엔트리의 검색 키(171)를 히트(Hit)하면, 대응하는 액션(172)에 따라, Outer_VID는 VLAN_ID_2에 재기입되고, Inner_VID는 제거된다.
패킷(154)은 테이블 5(170)에 따라 출력 패킷(173)으로 변환된다.
키로서 사용된 DST_MAC와 VLAN_ID_2가, 테이블 6(174)의 검색 키(175)를 히트(Hit)하면, 액션(176)을 따라, 출력 패킷(173)의 DST_MAC와 VLAN_ID_2를 보고, 출력 포트 번호 PORT-NUM이 결정된다.
마지막으로, 테이블 6(174)의 액션(176)에 따라 변환에 의해 얻어진 출력 패킷(173)은 출력 포트(177)로부터 출력된다.
제2 실시예에서도, 네트워크의 입구/출구에서의 액션이 테이블의 검색 결과에 대한 액션으로서 구현되면, 필요한 액션 패턴의 수가 감소될 수 있고, 액션의 수용이 확장될 수 있다.
특별히 제한되지 않지만, 상기 실시예 각각에 있어서, 입구 스위치 및 출구 스위치는, 예를 들어, OFS(Openflow Switch)로서 당연히 구성될 수 있다.
상기 특허문헌의 각각의 개시 내용은 본 명세서에 참고로서 도입된다. 본 발명의 전체 개시 내용(청구 범위를 포함함)의 범위 내에 있어서, 본 발명의 기본적 기술 사상에 기초하여, 각각의 실시예 및 각각의 예의 변경 및 조정이 가능하다. 본 발명의 청구범위 내에 있어서 다양한 개시 요소(각각의 청구항의 각각의 요소, 각각의 예의 각각의 요소, 각각의 도면의 각각의 요소, 등을 포함함)의 다양한 조합 내지 선택이 가능하다. 즉, 본 발명은, 청구범위를 포함하는 전체 개시 내용 및 기술적 사상에 따라 본 기술 분야의 숙련자라면 이룰 수 있는 각종 변형 및 수정을 포함하는 것은 물론이다.
101: 입력 패킷
102: 입구 스위치
103: 네트워크
104: 중계 패킷
105: 중계 스위치
106: 출구 스위치
107: 출력 패킷
108: 입력 포트
109: 테이블 1-1
110: 키
111: 액션
112: 패킷
113: 테이블2-1
114: 키
115: 액션
116: 테이블 3
117: 키
118: 액션
119: 출력 포트
120: 테이블 2-2
121: 키
122: 액션
123: 테이블 1-2
124: 키
125: 액션
126: 일시 정보
127: 테이블 2-3
128: 키
129: 액션
130: 테이블 2-4
131: 키
132: 액션
133: 패킷 101의 내용
134: 패킷 112의 내용
135: 일시 정보의 내용
136: 패킷 104의 내용
137: 입력 포트
138: 테이블 4
139: 키
140: 액션
141: 테이블 5
142: 테이블 5의 키
143: 테이블 5의 액션
144: 테이블 6
145: 테이블 6의 키
146: 테이블 6의 액션
147: 출력 포트
148: 패킷 107의 내용
149: 입력 패킷
150: 입력 포트
151: 테이블 1
152: 테이블 1의 키
153: 테이블 1의 액션
154: 패킷
155: 일시 정보
156: 테이블 2
157: 테이블 2의 키
158: 테이블 2의 액션
159: 출력 포트
160: 입구 스위치
161: 패킷 149의 내용
162: 패킷 154의 내용
163: 중계 패킷 165의 내용
165: 중계 패킷
166: 테이블 4
167: 검색 키
168: 액션
170: 테이블 5
171: 검색 키
172: 액션
173: 패킷
174: 테이블 6
175: 검색 키
176: 액션
177: 출력 포트
178: 출구 스위치
179: 패킷 173의 내용
180: 입력 포트

Claims (10)

  1. 네트워크 제어 방법으로서,
    네트워크의 출구 정보와 유저 정보의 패킷에 대한 매핑에 있어서 서로 상이한, 적어도 제1 테이블 및 제2 테이블을 포함하는 복수 단의 테이블을 스위치 내에 준비하는 단계 - 상기 테이블에서, 패킷의 미리 결정된 정보가 상기 테이블 내의 엔트리의 검색 키에 매칭되는지 여부를 검색하여, 매칭된 상기 검색 키에 대응하는 액션에서 규정된 동작을 수행함 -;
    수신된 제1 패킷에 대하여 상기 제1 테이블을 검색하고, 상기 제1 패킷이 상기 제1 테이블 내의 검색 키에 매칭되는 경우에, 상기 제1 테이블 내의 상기 검색 키에 대응하는 액션에 따른 동작을 상기 제1 패킷에 적용하여, 상기 제1 패킷을 제2 패킷으로 변환하고, 상기 제2 패킷을 상기 제2 테이블에 공급하는 단계; 및
    상기 제2 패킷에 대하여 상기 제2 테이블을 검색하고, 상기 제2 패킷이 상기 제2 테이블 내의 검색 키에 매칭되는 경우에, 상기 제2 테이블 내의 상기 검색 키에 대응하는 액션에 따른 동작을 상기 제2 패킷에 적용하여, 상기 제2 패킷을 제3 패킷으로 변환하는 단계
    를 포함하는 네트워크 제어 방법.
  2. 제1항에 있어서,
    상기 네트워크의 입구 측의 스위치에서,
    상기 제1 테이블에 따라, 상기 제1 패킷의 로컬 유저 정보를 글로벌 유저 정보에 매핑하는 단계;
    상기 제2 테이블에 따라, 상기 제2 패킷의 정보로부터 수신처 정보로 매핑하는 단계; 및
    상기 제2 테이블에 후속하는 단에 제공되는 제3 테이블에 따라, 상기 제3 패킷의 수신처 정보에 기초하여 출력을 결정하는 단계를 포함하는 네트워크 제어 방법.
  3. 제1항에 있어서,
    상기 네트워크의 출구 측의 스위치에서,
    상기 제2 패킷을 출력하기 위해, 상기 제1 테이블 내의 아우터 정보를 참조하여 상기 제1 패킷의 상기 아우터 정보를 디캡슐화하는 단계;
    (A) 상기 제2 테이블에 따라, 상기 제2 패킷의 글로벌 유저 정보를 로컬 유저 정보에 매핑하는 단계; 및
    상기 제2 테이블에 후속하는 단의 제3 테이블을 이용하여, 상기 제2 패킷의 정보에 기초하여 출력을 위한 최종 수신처를 결정하는 단계; 또는
    (A)와는 역순으로,
    (B) 상기 제3 테이블에 따라, 상기 제2 패킷의 글로벌 유저 정보를 이용하여 수신처를 결정하는 단계; 및
    이어서, 상기 제2 테이블에 따라, 상기 제2 패킷의 글로벌 유저 정보를 로컬 유저로 변환하는 단계를 포함하는 네트워크 제어 방법.
  4. 제2항 또는 제3항에 있어서,
    글로벌 유저 정보는 상기 제1 테이블과 상기 제2 테이블 사이에서 핸드오버되는, 네트워크 제어 방법.
  5. 제3항에 있어서,
    입구 측의 스위치에서 상기 제2 테이블과 상기 제3 테이블 내의 액션들을 하나의 테이블로 통합하여, 상기 하나의 테이블 내의 액션들이 동시에 실행되는 것을 가능하게 하는 단계를 포함하는 네트워크 제어 방법.
  6. 네트워크 시스템으로서,
    네트워크의 출구 정보와 유저 정보의 패킷에 대한 매핑에 있어서 상이한, 적어도 제1 테이블 및 제2 테이블을 포함하는 복수 단의 테이블을 구비한 적어도 하나의 스위치
    를 포함하고, 상기 테이블에서, 패킷의 미리 결정된 정보가 상기 테이블 내의 엔트리의 검색 키에 매칭되는지 여부를 검색하여, 매칭된 상기 검색 키에 대응하는 액션에서 규정된 동작을 수행하며,
    상기 스위치는, 수신된 제1 패킷에 대하여 상기 제1 테이블을 검색하고, 상기 제1 패킷이 상기 제1 테이블의 검색 키에 매칭되는 경우에, 상기 제1 테이블의 상기 검색 키에 대응하는 액션에 따른 동작을 상기 제1 패킷에 적용하여 상기 제1 패킷을 제2 패킷으로 변환하고, 상기 제2 패킷을 상기 제2 테이블에 공급하고,
    상기 스위치는, 상기 제2 패킷에 대하여 상기 제2 테이블을 검색하고, 상기 제2 패킷이 상기 제2 테이블의 검색 키에 매칭되는 경우에, 상기 제2 테이블의 상기 검색 키에 대응하는 액션에 따른 동작을 상기 제2 패킷에 적용하여 상기 제2 패킷을 제3 패킷으로 변환하는, 네트워크 시스템.
  7. 제6항에 있어서,
    상기 네트워크의 입구 측의 스위치는,
    상기 제1 테이블에 따라, 로컬 유저 정보의 글로벌 유저 정보에 대한 매핑을 수행하고,
    상기 제2 테이블에 따라, 상기 제2 패킷의 정보로부터 수신처 정보로의 매핑을 수행하고,
    상기 제2 테이블에 후속하는 단의 제3 테이블에 따라, 상기 제3 패킷의 수신처 정보에 기초하여 출력을 결정하는, 네트워크 시스템.
  8. 제6항에 있어서,
    상기 네트워크의 출구 측에 제공된 스위치는,
    상기 제2 패킷을 출력하기 위해, 상기 제1 테이블에 따라, 아우터 정보를 참조하여 상기 제1 패킷의 상기 아우터 정보를 디캡슐화하고;
    (A) 상기 제2 테이블에 따라, 상기 제2 패킷의 글로벌 유저 정보의 로컬 유저 정보로의 매핑을 수행하고;
    상기 제2 테이블에 후속하는 단의 제3 테이블에 따라, 상기 제2 패킷의 상기 정보에 기초하여 출력을 위한 최종 수신처를 결정하거나; 또는
    (A)와는 역순으로,
    (B) 상기 제3 테이블에 따라, 상기 제2 패킷의 글로벌 유저 정보에 기초하여 수신처를 결정하고;
    이어서, 상기 제2 테이블에 따라, 상기 제2 패킷의 글로벌 유저 정보를 로컬 유저로 변환하는, 네트워크 시스템.
  9. 스위치 장치로서,
    네트워크의 출구 정보와 유저 정보의 패킷에 대한 매핑에 있어서 상이한, 적어도 제1 테이블 및 제2 테이블을 포함하는 복수 단의 테이블 - 상기 테이블에서, 패킷의 미리 결정된 정보가 상기 테이블 내의 엔트리의 검색 키에 매칭되는지 여부를 검색하여, 매칭된 상기 검색 키에 대응하는 액션에서 규정된 동작을 수행함 - 을 포함하며,
    상기 스위치는,
    수신된 제1 패킷에 대하여 상기 제1 테이블을 검색하고, 상기 제1 패킷이 상기 제1 테이블의 검색 키에 매칭되는 경우에, 상기 제1 테이블의 상기 검색 키에 대응하는 액션에 따른 동작을 상기 제1 패킷에 적용하여 상기 제1 패킷을 제2 패킷으로 변환하고, 상기 제2 패킷을 상기 제2 테이블에 공급하고,
    상기 제2 패킷에 대하여 상기 제2 테이블을 검색하고, 상기 제2 패킷이 상기 제2 테이블의 검색 키에 매칭되는 경우에, 상기 제2 테이블의 상기 검색 키에 대응하는 액션에 따른 동작을 상기 제2 패킷에 적용하여 상기 제2 패킷을 제3 패킷으로 변환하는, 스위치 장치.
  10. 네트워크의 출구 정보와 유저 정보의 패킷에 대한 매핑에 있어서 상이한, 적어도 제1 테이블 및 제2 테이블을 포함하는 복수 단의 테이블을 포함하는 스위치를 위한 프로그램 - 상기 테이블에서, 패킷의 미리 결정된 정보가 상기 테이블 내의 엔트리의 검색 키에 매칭되는지 여부를 검색하여, 매칭된 상기 검색 키에 대응하는 액션에서 규정된 동작을 수행함 - 으로서,
    상기 프로그램은, 상기 스위치로 하여금,
    수신된 제1 패킷에 대하여 상기 제1 테이블을 검색하고, 상기 제1 패킷이 상기 제1 테이블의 검색 키에 매칭되는 경우에, 상기 제1 테이블의 상기 검색 키에 대응하는 액션에 따른 동작을 상기 제1 패킷에 적용하여 상기 제1 패킷을 제2 패킷으로 변환하는 단계; 및
    상기 제2 패킷에 대하여 상기 제2 테이블을 검색하고, 상기 제2 패킷이 상기 제2 테이블의 검색 키에 매칭되는 경우에, 상기 제2 테이블의 상기 검색 키에 대응하는 액션에 따른 동작을 상기 제2 패킷에 적용하여 상기 제2 패킷을 제3 패킷으로 변환하는 단계를 포함하는 처리를 수행하게 하는, 프로그램.
KR1020167025476A 2014-02-19 2015-02-18 네트워크 제어 방법, 네트워크 시스템, 장치, 및 프로그램 KR20160124161A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2014029906 2014-02-19
JPJP-P-2014-029906 2014-02-19
PCT/JP2015/054372 WO2015125801A1 (ja) 2014-02-19 2015-02-18 ネットワーク制御方法、ネットワークシステムと装置及びプログラム

Publications (1)

Publication Number Publication Date
KR20160124161A true KR20160124161A (ko) 2016-10-26

Family

ID=53878301

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167025476A KR20160124161A (ko) 2014-02-19 2015-02-18 네트워크 제어 방법, 네트워크 시스템, 장치, 및 프로그램

Country Status (7)

Country Link
US (1) US10097458B2 (ko)
EP (1) EP3110085A4 (ko)
JP (1) JP6369532B2 (ko)
KR (1) KR20160124161A (ko)
CN (1) CN106416148A (ko)
RU (1) RU2016137133A (ko)
WO (1) WO2015125801A1 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104243302B (zh) * 2013-06-20 2018-03-16 华为技术有限公司 业务路由报文处理方法、装置及网络系统
JP6369532B2 (ja) * 2014-02-19 2018-08-08 日本電気株式会社 ネットワーク制御方法、ネットワークシステムと装置及びプログラム
US10015048B2 (en) 2014-12-27 2018-07-03 Intel Corporation Programmable protocol parser for NIC classification and queue assignments
US9825862B2 (en) * 2015-08-26 2017-11-21 Barefoot Networks, Inc. Packet header field extraction
US9912774B2 (en) 2015-12-22 2018-03-06 Intel Corporation Accelerated network packet processing
US11405335B2 (en) * 2017-01-13 2022-08-02 Nicira, Inc. Managing network traffic in virtual switches based on logical port identifiers
US10419366B1 (en) 2017-01-31 2019-09-17 Barefoot Networks, Inc. Mechanism for communicating to remote control plane from forwarding element
US10516728B2 (en) 2017-03-10 2019-12-24 Microsoft Technology Licensing, Llc Virtual filtering platform in distributed computing systems
US10694006B1 (en) 2017-04-23 2020-06-23 Barefoot Networks, Inc. Generation of descriptive data for packet fields
US11503141B1 (en) 2017-07-23 2022-11-15 Barefoot Networks, Inc. Stateful processing unit with min/max capability
US10594630B1 (en) 2017-09-28 2020-03-17 Barefoot Networks, Inc. Expansion of packet data within processing pipeline
JP6674007B1 (ja) * 2018-11-05 2020-04-01 住友電気工業株式会社 車載通信装置、通信制御方法および通信制御プログラム
JPWO2023021635A1 (ko) * 2021-08-18 2023-02-23

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0391452A (ja) 1989-09-04 1991-04-17 Matsushita Electric Ind Co Ltd 豆腐用豆乳製造機
JP2002271370A (ja) 2001-03-06 2002-09-20 Fujitsu Ltd IPoverATMスイッチおよびIPoverATMネットワークシステム
JP2003051843A (ja) 2001-08-06 2003-02-21 Hitachi Ltd パケット転送装置およびルーティング制御装置
JP2003152782A (ja) 2001-11-16 2003-05-23 Nec Corp パケットの宛先検索システム
JP2005333220A (ja) 2004-05-18 2005-12-02 Hitachi Ltd ネットワークノード装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2624834B2 (ja) 1989-06-16 1997-06-25 株式会社日立製作所 ラベル変換回路
EP2030419B1 (en) 2006-06-07 2017-07-19 QUALCOMM Incorporated Efficient over the air address methods and apparatus
WO2012111222A1 (ja) 2011-02-17 2012-08-23 日本電気株式会社 ネットワークシステム、及びネットワークフロー追跡方法
US9608908B2 (en) * 2011-03-29 2017-03-28 Nec Corporation Network system and VLAN tag data acquiring method
US8971338B2 (en) 2012-01-09 2015-03-03 Telefonaktiebolaget L M Ericsson (Publ) Expanding network functionalities for openflow based split-architecture networks
RU2595888C2 (ru) 2012-03-19 2016-08-27 Нек Корпорейшн Узел связи, способ обработки пакетов и программа
EP2849397A4 (en) 2012-05-09 2015-12-23 Nec Corp COMMUNICATION SYSTEM, CONTROL DEVICE, COMMUNICATION PROCESS AND PROGRAM
RU2581558C1 (ru) * 2012-10-10 2016-04-20 Нек Корпорейшн Узел связи, система связи, устройство управления, способ пересылки пакета и программа
EP2938028B1 (en) * 2012-12-19 2019-12-11 Nec Corporation Communication node, control device, method for managing control information entries, and program
US20140229945A1 (en) * 2013-02-12 2014-08-14 Contextream Ltd. Network control using software defined flow mapping and virtualized network functions
CN103428094B (zh) * 2013-08-12 2016-08-17 杭州华三通信技术有限公司 开放流OpenFlow系统中的报文转发方法及装置
JP6369532B2 (ja) * 2014-02-19 2018-08-08 日本電気株式会社 ネットワーク制御方法、ネットワークシステムと装置及びプログラム
WO2015133448A1 (ja) * 2014-03-04 2015-09-11 日本電気株式会社 パケット処理装置、パケット処理方法およびプログラム
WO2015156832A1 (en) * 2014-04-08 2015-10-15 Hewlett Packard Development Company, L.P. Pipeline table identification
US20160006663A1 (en) * 2014-07-02 2016-01-07 Telefonaktiebolaget L M Ericsson (Publ) Method and system for compressing forward state of a data network
WO2016008934A1 (en) * 2014-07-15 2016-01-21 Nec Europe Ltd. Method and network device for handling packets in a network by means of forwarding tables
US10735315B2 (en) * 2016-03-30 2020-08-04 Nec Corporation Method of forwarding packet flows in a network and network system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0391452A (ja) 1989-09-04 1991-04-17 Matsushita Electric Ind Co Ltd 豆腐用豆乳製造機
JP2002271370A (ja) 2001-03-06 2002-09-20 Fujitsu Ltd IPoverATMスイッチおよびIPoverATMネットワークシステム
JP2003051843A (ja) 2001-08-06 2003-02-21 Hitachi Ltd パケット転送装置およびルーティング制御装置
JP2003152782A (ja) 2001-11-16 2003-05-23 Nec Corp パケットの宛先検索システム
JP2005333220A (ja) 2004-05-18 2005-12-02 Hitachi Ltd ネットワークノード装置

Also Published As

Publication number Publication date
JPWO2015125801A1 (ja) 2017-03-30
US10097458B2 (en) 2018-10-09
JP6369532B2 (ja) 2018-08-08
RU2016137133A (ru) 2018-03-22
CN106416148A (zh) 2017-02-15
RU2016137133A3 (ko) 2018-03-22
EP3110085A1 (en) 2016-12-28
US20170085479A1 (en) 2017-03-23
EP3110085A4 (en) 2017-10-25
WO2015125801A1 (ja) 2015-08-27

Similar Documents

Publication Publication Date Title
KR20160124161A (ko) 네트워크 제어 방법, 네트워크 시스템, 장치, 및 프로그램
US11240065B2 (en) NSH encapsulation for traffic steering
US9455935B2 (en) Remote port mirroring
US9608908B2 (en) Network system and VLAN tag data acquiring method
EP3014819B1 (en) Method for packet tunneling through software defined network method of intelligently controlling flow of a packet through software defined network and system
CN102238083B (zh) 用于适配分组处理流水线的系统和方法
US10237377B2 (en) Packet rewriting apparatus, control apparatus, communication system, packet transmission method and program
JP6426879B2 (ja) データパケット転送
US9774532B2 (en) Information processing system, information processing apparatus and control method of information processing system
CN104092595B (zh) 基于802.1br的虚拟化系统中的报文处理方法及装置
US9686137B2 (en) Method and system for identifying an outgoing interface using openflow protocol
US9667440B2 (en) Method and system for identifying an incoming interface using openflow protocol
US9847940B2 (en) Control method, packet processing device, and storage medium
CN105634901B (zh) 基于cas vxlan的mac地址信息同步方法及装置
CN101160853A (zh) 一种数据包传输方法及数据网络系统、网络节点
CN106506315B (zh) 一种报文转发的透明配置方法
CN107529352B (zh) 用于软件定义的数据中心网络的协议独立的可编程交换机(pips)
EP2958296B1 (en) A method of using a unique packet identifier to identify structure of a packet and an apparatus thereof
US20120106555A1 (en) Low latency carrier class switch-router
CN111092772B (zh) 一种网络业务处理方法、装置及系统
WO2016188366A1 (en) Network communication
US9467306B2 (en) Switching device and relay system
US20180183625A1 (en) Communication node, control apparatus, communication system, communication method and program
CN117478458A (zh) 一种报文处理方法、装置及网络设备

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application