KR101613640B1 - 패킷 포워딩 - Google Patents

패킷 포워딩 Download PDF

Info

Publication number
KR101613640B1
KR101613640B1 KR1020157036020A KR20157036020A KR101613640B1 KR 101613640 B1 KR101613640 B1 KR 101613640B1 KR 1020157036020 A KR1020157036020 A KR 1020157036020A KR 20157036020 A KR20157036020 A KR 20157036020A KR 101613640 B1 KR101613640 B1 KR 101613640B1
Authority
KR
South Korea
Prior art keywords
gateway
mac address
packet
trill
path
Prior art date
Application number
KR1020157036020A
Other languages
English (en)
Other versions
KR20160003327A (ko
Inventor
샤오펑 양
유빙 송
루이창 가오
시린 장
Original Assignee
항조우 에이치3씨 테크놀로지스 코., 엘티디.
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 항조우 에이치3씨 테크놀로지스 코., 엘티디. filed Critical 항조우 에이치3씨 테크놀로지스 코., 엘티디.
Publication of KR20160003327A publication Critical patent/KR20160003327A/ko
Application granted granted Critical
Publication of KR101613640B1 publication Critical patent/KR101613640B1/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/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2596Translation of addresses of the same type other than IP, e.g. translation from MAC to MAC addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/122Shortest path evaluation by minimising distances, e.g. by selecting a route with minimum of number of hops
    • 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/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/66Layer 2 routing, e.g. in Ethernet based MAN's
    • 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

Landscapes

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

Abstract

게이트웨이로의 다수의 TRILL 경로로부터 ECMP들이 선택된다. 목적지 MAC 어드레스가 게이트웨이의 MAC 어드레스인 수신된 이더넷 패킷의 소스 MAC 어드레스가 로컬 MAC 어드레스로 대체된다. ECMP들로부터 경로가 선택되고, 소스 MAC 어드레스가 대체된 이더넷 패킷이 선택된 경로를 통해 전송된다.

Description

패킷 포워딩{PACKET FORWARDING}
본 발명은 패킷 포워딩에 관한 것이다.
초대형 계층 2(very large layer, VLL2) 네트워킹 기술이 데이터 센터(DC) 네트워크에 구현되어 왔다. 다수 링크의 투명 상호접속(transparent interconnection of lots of link, TRILL) 및 최단 경로 브릿징(shortest path bridging, SPB)과 같은 VLL2 네트워킹 기술이 개발되어 왔고, 상이한 표준 기구들에 의하여 표준화되어 왔다. TRILL 프로토콜은 인터넷 엔지니어링 태스크 포스(IETF)에 의하여 정의된 계층-2 네트워크 기술이다. TRILL 프로토콜은 계층-3 라우팅 기술을 계층-2 네트워크 내에 채택하는 중간 시스템-중간 시스템(IS-IS) 연결을 도입한다. 따라서, 계층-2 네트워크의 단순성 및 유연성은, 계층-3 네트워크의 안정성, 확장가능성 및 높은 성능과 결합될 수도 있다.
본원에 개시된 실시예와 관련된 배경기술은 중국 특허출원공개 제103220215호(2013. 7. 24.) 및 중국 특허출원공개 제102368727호(2012. 3. 7.)에 기재되어 있다.
본 개시물의 특징들은 예에 의하여 예시되고 다음 도면(들)으로 제한되지 않으며, 도면에서 유사한 도면 부호는 유사한 구성 요소를 표시한다:
도 1은 본 개시물의 일 예에 따르는 패킷 포워딩 프로세서를 예시하는 흐름도이다.
도 2는 본 개시물의 일 예에 따르는 데이터 센터 내의 계층-2 네트워크를 예시하는 도면이다.
도 3은 본 개시물의 다른 예에 따르는 데이터 센터 내의 계층-2 네트워크를 예시하는 도면이다.
도 4는 본 개시물의 일 예에 따르는 패킷 포워딩 장치의 구성을 예시하는 도면이다.
도 5는 본 개시물의 다른 예에 따르는 패킷 포워딩 장치의 구성을 예시하는 도면이다.
간결성과 예시를 위하여, 본 개시물은 주로 그 예를 참조하여 설명된다. 다음의 설명에서, 다수의 특정 세부사항들이 본 개시물의 완전한 이해를 제공하기 위하여 언급된다. 그러나, 본 개시물이 이러한 특정 세부사항들로 한정되지 않고 실시될 수도 있다는 것이 명백할 것이다. 다른 경우에, 몇몇 방법 및 구성은 본 개시물을 불필요하게 모호하게 하는 것을 막기 위하여 상세히 설명되지 않았다. 본 개시물 전체에서, "하나(a)" 및 "하나의(an)"라는 용어는 특정 구성 요소 중 적어도 하나를 나타내도록 의도된다. 본 명세서에서 사용될 때, "포함한다"라는 용어는 포함하지만 그것으로 한정되지는 않는다는 것을 의미하고, "포함하고 있다"라는 용어는 포함하고 있지만 그것으로 한정되지는 않는다는 것을 의미한다. "기초하여"라는 용어는 적어도 부분적으로 기초한다는 것을 의미한다.
도 1은 본 개시물의 일 예에 따르는 패킷 포워딩 프로세서를 예시하는 흐름도이다. 패킷 포워딩 프로세스는 다음 블록들을 포함한다.
블록 101에서, 동일-비용 다중경로 라우팅(Equal-Cost Multipath Routings; ECMPs)이 게이트웨이로의 다수의 TRILL 경로로부터 선택된다.
블록 102에서, 그의 목적지 MAC 어드레스가 게이트웨이의 MAC 어드레스인 수신된 이더넷 패킷의 소스 MAC 어드레스가 로컬 MAC 어드레스로 대체된다.
블록 103에서, 한 경로가 ECMP들 중에서 선택되고, 그의 소스 MAC 어드레스가 대체된 이더넷 패킷이 선택된 경로를 통해서 송신된다.
도 1에 도시되는 패킷 포워딩 프로세스에 따르면, 게이트웨이까지의 다수의 TRILL 경로로부터 선택된 ECMP들은 게이트웨이로 패킷을 송신하는 과정에서 공유할 수도 있다.
도 2는 본 개시물의 일 예에 따르는 데이터 센터 내의 TRILL 네트워크를 예시하는 도면이다.
도 2에 도시된 바와 같이, TRILL 네트워크(200)는 게이트웨이 라우팅 브릿지(Routing Bridges; RBs)(231 내지 234) 및 비-게이트웨이 RB들(221 내지 226)을 포함한다. 게이트웨이 RB들(231 내지 234)의 각각은 계층-3 포워딩 능력을 가진다.
가상 라우터(230)는 RB들(231 내지 234)로 구성된다. TRILL 네트워크(200)의 VLAN1에 대하여, 가상 라우터(230)에는 가상 IP1 및 가상 MAC1이 지정되는데, 이것은 VLAN1의 게이트웨이의 IP 어드레스 및 MAC 어드레스 각각으로서 사용된다. TRILL 네트워크(200)의 VLAN2에 대하여, 가상 라우터(230)에는 가상 IP2 및 가상 MAC2가 지정되는데, 이것은 VLAN2의 게이트웨이의 IP 어드레스 및 MAC 어드레스로서 사용된다. RB들(231 내지 234)은 HSRP(Hot Standby Router Protocol) 또는 VRRP(Virtual Router Redundancy Protocol)에 따라서 가상 라우터(230)를 구성할 수도 있다. RB(231)는 가상 라우터(230)의 일차 디바이스로부터 선택될 수도 있다. RB(231)는 VLAN1의 게이트웨이의 IP 어드레스 또는 VLAN2의 게이트웨이의 IP 어드레스에 대한 어드레스 결정 프로토콜(Address Resolution Protocol; ARP) 요청 패킷에 대응하는 ARP 응답 패킷을 송출할 수도 있다.
RB들(231 내지 234)은 모두 액티브 상태를 유지하며 VLAN1 및 VLAN2의 게이트웨이로서 사용된다.
VLAN1에 속하는 종단국의 게이트웨이의 IP 어드레스는 가상 IP1으로 설정되고, VLAN2에 속하는 종단국의 게이트웨이의 IP 어드레스는 가상 IP2로 설정된다.
RB들(231 내지 234)의 각각은 TRILL 네트워크(200) 내의 VLAN1 의 게이트웨이 정보 및 VLAN2의 게이트웨이 정보를 광고한다(advertise). RB들(231 내지 234)의 각각에 의하여 광고된 게이트웨이 정보는 게이트웨이의 MAC 어드레스를 표시하기 위한 정보 및 게이트웨이로서 사용될 현재 RB를 표시하기 위한 정보를 포함할 수도 있다. 따라서, TRILL 네트워크(200) 내의 모든 RB들은, 가상 MAC1이 VLAN1의 게이트웨이 MAC 어드레스이고, 가상 MAC2가 VLAN2 가상 VLAN2의 게이트웨이 MAC 어드레스이며, VLAN1 의 게이트웨이 및 VLAN2 의 게이트웨이가 RB들(231 내지 234)에 의하여 구현된다는 것을 알게 될 수도 있다. RB들(231 내지 234)의 각각에 의하여 게이트웨이 정보를 광고하기 위한 방법은 본 개시물에서 한정되지 않는다. 일 예에서, RB들(231 내지 234)의 각각은 TRILL 네트워크(200)에서 TRILL 멀티캐스트 트리를 통하여 종래의 프로토콜 패킷을 송신할 수도 있고, 게이트웨이 정보는 종래의 프로토콜 패킷의 미정의 필드 내에 포함될 수도 있다. 다른 예에서, RB들(231 내지 234)의 각각은 TRILL 네트워크(200)에서 TRILL 멀티캐스트 트리를 통하여 자기-정의(self-defined) 게이트웨이 광고 메시지를 송신할 수도 있고, 게이트웨이 정보는 게이트웨이 광고 메시지 내에 포함될 수도 있다. 따라서, 자기-정의 게이트웨이 광고 메시지의 프로토콜 타입이 TRILL 네트워크(200) 내의 모든 RB들에 의하여 인식될 수 있다는 것이 보장되어야 한다.
RB(221)는 RB(221)로부터 VLAN1의 게이트웨이로 가는 TRILL 경로(RB들(231 내지 234) 포함)를 TRILL 네트워크(200)의 토폴로지에 따라서 계산한다. 그러면, 도 1의 블록 101의 방법에 대응하는 특정한 예에서, RB(221)는 VLAN1의 게이트웨이로의 ECMP들인 홉(hop)의 개수가 가장 적은 TRILL 경로를 선택한다.
도 2에서, VLAN1의 게이트웨이로 향하는, RB(221)에 의하여 선택된 ECMP들은 RB(221)로부터 RB(231)까지의 경로, RB(221)로부터 RB(232)까지의 경로, RB(221)로부터 RB(233)까지의 경로 및 RB(221)로부터 RB(234)까지의 경로를 포함한다. RB(221)에 의하여 선택된, VLAN2의 게이트웨이로 향하는 ECMP들은 VLAN1의 게이트웨이로 향하는 ECMP들과 동일하다.
RB들(222 내지 226)은 VLAN1의 게이트웨이까지의 ECMP들 및 VLAN2의 게이트웨이까지의 ECMP들을 동일한 원리에 기초하여 선택할 수도 있다.
VLAN1에 속하는 종단국(152)은 RB(222)에 연결되고, VLAN2에 속하는 종단국(153)은 RB(223)에 연결된다.
종단국(152)이 가상 IP1에 대응하는 MAC 어드레스를 찾지 않으면, 종단국(152)은 가상 IP1에 대한 ARP 요청 패킷을 생성한다. ARP 요청 패킷에서, 타겟 IP 어드레스는 가상 IP1이고, 송신자 IP 어드레스는 IP152이며, 송신자 MAC 어드레스는 MAC152이고, 소스 MAC 어드레스는 MAC152이며, 목적지 MAC 어드레스는 전부 F MAC 어드레스(all F MAC address)이고, 즉, 목적지 MAC 어드레스는 브로드캐스트 어드레스이다. 종단국(152)은 가상 IP1에 대한 ARP 요청 패킷을 송신한다.
RB(222)는 종단국(152)으로부터 ARP 요청 패킷을 수신하고, VLAN1, MAC152(소스 MAC 어드레스) 및 APR 요청 패킷을 수신하는 포트에 기초하여 MAC 어드레스 엔트리를 학습한다. RB(222)는 캡슐화 ARP 요청 패킷을 TRILL-캡슐화(TRILL-encapsulated) ARP 요청 패킷 내에 캡슐화한다. TRILL-캡슐화 ARP 요청 패킷에서, TRILL 헤더의 유입 닉네임 및 유출 닉네임은 각각 nickname222(RB222의 닉네임) 및 분배 트리의 루트의 닉네임이다. ARP 요청 패킷을 송신하기 위한 분배 트리는 유출 닉네임에 의하여 특정되었다. TRILL-캡슐화 ARP 요청 패킷의 외부 이더넷 헤더의 소스 MAC 어드레스 및 목적지 MAC 어드레스는 각각 RB(222)의 TRILL 인터페이스의 MAC 어드레스 및 모든-R브릿지(RBridges) 멀티캐스트 어드레스이다.
RB들(221 및 223 내지 226)은 수신 TRILL-캡슐화 ARP 요청 패킷을 수신하고, MAC 어드레스 엔트리를 nickname222, VLAN1 및 MAC152(내부 소스 MAC 어드레스)에 기초하여 학습한다. RB들(221 및 223 내지 226)은 외부 이더넷 헤더 및 TRILL 헤더를 제거하고, ARP 요청 패킷을 VLAN1과 연관된 포트를 통해서 브로드캐스트한다.
RB들(231 내지 234)은 TRILL-캡슐화 ARP 요청 패킷을 수신하고, MAC 어드레스 엔트리를 nickname222, VLAN1(내부 VLAN ID) 및 MAC152에 기초하여 학습하며, IP152의 ARP 엔트리를 TRILL-캡슐화 ARP 요청 패킷을 수신하는 포트, MAC152(송신자 MAC 어드레스), VLAN 1 및 IP152(송신자 IP 어드레스)에 기초하여 학습한다.
RB(231)는 수신된 ARP 요청 패킷에 의하여 요청된 가상 IP1 에 대한 ARP 응답 패킷을 생성한다. ARP 응답 패킷에서, 타겟 IP 어드레스는 IP152이고, 타겟 MAC 어드레스는 MAC152이며, 송신자 IP 어드레스는 가상 IP1이고, 송신자 MAC 어드레스는 가상 MAC1이며, 소스 MAC 어드레스는 MAC2312이고 목적지 MAC 어드레스는 MAC152이다. RB(231)는, 가상 MAC1을 ARP 응답 패킷의 소스 MAC 어드레스로 설정하는 것이 아니라, RB(231)의 VLAN1 의 가상 스위칭 인터페이스(VSI)의 제 2 MAC 어드레스(MAC2312)를 ARP 응답 패킷의 소스 MAC 어드레스로 설정한다. 이러한 방식으로, 다른 RB들은 수신된 ARP 응답 패킷 내의 소스 MAC 어드레스에 기초하여 가상 MAC1 의 엔트리를, 즉, VLAN1의 게이트웨이의 MAC 어드레스 엔트리를 학습할 수 없을 수도 있다.
RB(231)는 MAC152의 학습된 엔트리에 기초하여 ARP 응답 패킷을 TRILL-캡슐화 ARP 응답 패킷 내에 캡슐화한다. TRILL-캡슐화 ARP 응답 패킷에서, 유입 닉네임은 nickname231이고, 유출 닉네임은 nickname222이며, 외부 이더넷 헤더의 외부 소스 MAC 어드레스 및 외부 목적지 MAC 어드레스는 각각 RB(231)의 TRILL 인터페이스의 MAC 어드레스 및 다음-홉 RB의 TRILL 인터페이스의 MAC 어드레스이다. TRILL 네트워크(200)에서, 유니캐스트 TRILL 패킷의 외부 소스 MAC 어드레스 및 외부 목적지 MAC 어드레스는 홉 단위로 수정된다. 유니캐스트 TRILL 패킷의 외부 소스 MAC 어드레스 및 외부 목적지 MAC 어드레스는 유니캐스트 TRILL 패킷을 송신하는 각각의-홉 RB 및 유출 닉네임으로의 다음-홉 RB를 나타낸다. 도 2에서, RB(231)는 TRILL-캡슐화 ARP 응답 패킷을 RB(222)로 송신한다.
RB(222)는 TRILL-캡슐화 ARP 응답 패킷을 수신하고, 외부 목적지 MAC 어드레스 및 유출 닉네임이 각각 RB(222)의 TRILL 인터페이스의 MAC 어드레스 및 RB(222)의 닉네임이라고 결정하며, 외부 이더넷 헤더 및 TRILL 헤더를 제거하고, MAC 어드레스 테이블 내의 목적지 MAC 어드레스(MAC152)와 매칭하는 엔트리를 찾으며, 전송 ARP 응답 패킷을 종단국(152)으로 송신한다.
종단국(152)은 ARP 응답 패킷을 수신하고, 가상 IP1의 ARP 엔트리를 학습한다. 가상 IP1의 ARP 엔트리에 기초하여, 종단국(152)은 그 목적지 IP 어드레스가 IP153인 IP 패킷을 그 목적지 MAC 어드레스가 가상 MAC1인 이더넷 패킷 내에 캡슐화하고, 캡슐화된 이더넷 패킷을 송신한다. 즉, 종단국(152)에 의하여 송신된 이더넷 패킷에서, 목적지 MAC 어드레스는 가상 MAC1이고, 소스 MAC 어드레스는 MAC152이다.
RB(222)는 그 목적지 MAC 어드레스가 가상 MAC1인 이더넷 패킷을 종단국(152)으로부터 수신하고 소스 MAC 어드레스를 MAC222로 대체한다. 이것은, 게이트웨이의 MAC 어드레스가 로컬 MAC 어드레스로 대체되는 도 2의 방법 블록 102의 특정한 예이다. 그러면 RB(222)는 경로를 선택하고 이더넷 패킷을 도 2의 방법 블록 103에서 위에서 설명된 바와 같이 선택된 경로를 통하여 송신한다. 예를 들어, RB는 VLAN1의 게이트웨이로 향하는 ECMP들 중에서 RB(222)로부터 RB(233)까지의 경로를 선택하고, 그 소스 MAC 어드레스가 대체된 이더넷 패킷을 RB(233)로 송신할 수도 있다. 이러한 방식으로, TRILL 네트워크에서는, 그 목적지가 VLAN1의 게이트웨이 MAC 어드레스인 이더넷 패킷이 TRILL 패킷 내에 캡슐화되지 않고 ECMP들 중 하나를 통해서 VLAN1 게이트웨이로 송신된다. VLAN1 게이트웨이는 게이트웨이 RB들(231 내지 234)에 의하여 구현된다. 이더넷 패킷이 VLAN1 게이트웨이로 송신되기 이전에 TRILL 패킷 내에 캡슐화되지 않기 때문에, 게이트웨이 RB들(231 내지 234)은 그 목적지 MAC 어드레스가 게이트웨이의 MAC 어드레스인 이더넷 패킷을 수신할 경우, 계층-3 포워딩 이전에 캡슐화를 해제하는 TRILL을 구현할 필요가 없을 수도 있다. RB(222)가 속하는 VLAN1의 VSI의 MAC 어드레스는 MAC222이고, RB(222)에 지정된 로컬 MAC 어드레스이다.
도 2에서, RB(222) 및 다른 비-게이트웨이 RB들에서, VLAN1 의 VSI 및 VLAN2 의 VSI는 상이한 IP 어드레스와 동일한 MAC 어드레스를 가지거나 상이한 MAC 어드레스를 가진다.
RB(222)는 수신된 이더넷 패킷의 5-투플(tuple)에 기초하여 HASH 값을 계산하고, ECMP들 중에서 HASH 값에 대응하는 경로를 선택하며, 선택된 경로를 통해서 이더넷 패킷을 RB(233)로 송신할 수도 있다. RB(222)는 이더넷 패킷의 소스 MAC 어드레스를 수정하여 RB들(231 내지 233)이 MAC152의 학습된 엔트리 내의 유출 닉네임(nickname222)을 수정하는 것을 방지한다. 따라서, RB(231 내지 233) 내의 MAC(152)의 학습된 엔트리는 빈번하게 수정되지 않을 것이다.
RB(233)는 그 목적지 MAC 어드레스가 가상 MAC1인 이더넷 패킷을 수신하고, 소스 MAC 어드레스(MAC222)의 엔트리를 학습한다.
RB(233)는 그 목적지 MAC 어드레스가 가상 MAC1인 이더넷 헤더를 제거하고, 목적지 IP 어드레스(IP153)에 따라서 다운스트림 계층-3 포워딩을 수행한다. 만일 RB(233)가 목적지 IP 어드레스(IP153)에 대응하는 ARP 엔트리를 발견하지 않으면, RB(233)는 그 목적지 IP 어드레스가 IP153인 IP 패킷을 캐싱하고, IP 어드레스(IP153)와 연관된 MAC 어드레스를 요청하기 위한 ARP 요청 패킷을 생성한다. ARP 요청 패킷에서, 송신자 IP 어드레스는 IP2332이고, 송신자 MAC 어드레스는 MAC2331이며, 타겟 IP 어드레스는 IP153이고, 소스 MAC 어드레스는 MAC2331이며, 목적지 MAC 어드레스는 전부 F MAC 어드레스이고, VLAN ID는 VLAN2이다.
도 2에서는, 게이트웨이 RB(233) 상의 VLAN1의 VSI 및 VLAN2의 VSI가 각각 상이한 IP 어드레스 IP2331 및 IP2332를 가지지만, 게이트웨이 RB(233) 상의 이러한 두 VSI는 동일한 제1 MAC 어드레스 MAC2331과 동일한 제2 MAC 어드레스 MAC2332를 가진다. 다른 예로서, 게이트웨이 RB(233)과 다른 게이트웨이 RB들에 대해, VLAN1의 VSI 및 VLAN2의 VSI가 상이한 IP 어드레스와 상이한 제1 MAC 어드레스 및 상이한 제2 MAC 어드레스를 가진다.
RB(233)은, RB(233) 상의 VLAN2의 VSI의 제1 MAC 어드레스 MAC2331을, IP 어드레스 IP153과 연관된 MAC 어드레스를 요청하는 ARP 요청 패킷의 송신자 MAC 어드레스 및 소스 MAC 어드레스로 설정하고, RB(233) 상의 VLAN2의 VSI의 IP 어드레스를 ARP 요청 패킷의 송신자 IP 어드레스로 설정한다. 이런 식으로, 다른 RB들은 수신된 ARP 요청 패킷의 소스 MAC 어드레스에 기초하여 가상 MAC2의 엔트리(즉, VLAN2 게이트웨이의 MAC 어드레스)를 알 수 없고, 이에 의해 종단국이 ARP 요청 패킷의 송신자 MAC 어드레스 및 송신자 IP 어드레스에 기초하여 게이트웨이의 ARP 엔트리를 알지 못하게 한다. 따라서, RB(233)는 가상 MAC2를 ARP 요청 패킷의 송신자 MAC 어드레스 및 소스 MAC 어드레스로 설정하지 않고, 또한 가상 IP2를 ARP 요청 패킷의 타겟 IP 어드레스로 설정하지 않는다. 단지 RB(231)만이 각각의 게이트웨이의 IP 어드레스에 대해 ARP 요청 패킷에 대응하는 MAC 어드레스를 송신할 수 있다.
RB(233)은 ARP 요청 패킷을 TRILL-캡슐화 ARP 요청 패킷으로 캡슐화한다. TRILL-캡슐화 ARP 요청 패킷에서, 인그레스 닉네임(ingress nickname)과 이그레스 닉네임(egress nickname)은 각각 nickname233 및 분배 트리의 루트의 닉네임이고, 외부 소스 MAC 어드레스 및 외부 목적지 MAC 어드레스는 각각 RB(233)의 TRILL 인터페이스의 MAC 어드레스 및 All-RBridges 멀티캐스트 어드레스이다.
RB(221-226)는 TRILL-캡슐화 ARP 요청 패킷을 수신하고 nickname233, VLAN2 및 MAC2331에 기초하여 MAC 어드레스 엔트리를 알게 된다. RB(221-226)는 외부 이더넷 헤더 및 TRILL 헤더를 제거하고, VLAN2와 연관된 포트를 통하여 ARP 요청 패킷을 브로드캐스팅한다.
종단국(153)은 ARP 요청 패킷을 수신하고, IP2332의 ARP 엔트리를 알게 되며, IP153에 대한 ARP 요청 패킷에 대해 ARP 응답 패킷을 생성하고, IP2332의 ARP 엔트리에 따라 ARP 응답 패킷을 발송한다. 종단국(153)에 의해 생성된 ARP 응답 패킷에서, 송신인 IP 어드레스 및 송신인 MAC 어드레스는 각각 IP153 및 MAC153이고, 타겟 IP 어드레스 및 타겟 MAC 어드레스는 각각 IP2332 및 MAC2331이고, 소스 MAC 어드레스 및 목적지 MAC 어드레스는 각각 MAC153 및 MAC2331이다.
RB(223)는 ARP 응답 패킷을 수신하고, VLAN2, 소스 MAC 어드레스(MAC153)과 ARP 응답 패킷을 수신하는 포트에 기초하여 MAC 어드레스 엔트리를 알게 된다.
목적지 MAC 어드레스(MAC2331)에 매칭되는 MAC 어드레스 엔트리를 찾은 후에, RB(223)는 ARP 응답 패킷을 TRILL-캡슐화 ARP 응답 패킷으로 캡슐화한다. TRILL-캡슐화 ARP 응답 패킷에서, TRILL 헤더의 인그레스 닉네임과 이그레스 닉네임은 각각 nickname223 및 nickname233 이고, 외부 소스 MAC 어드레스 및 외부 목적지 MAC 어드레스는 RB(223)의 TRILL 인터페이스의 MAC 어드레스 및 RB(233)의 TRILL 인터페이스의 MAC 어드레스이다.
따라서, ARP 응답 패킷에서 이더넷 헤더의 목적지 MAC 어드레스, 소스 MAC 어드레스 및 VLAN ID는 TRILL-캡슐화 ARP 응답 패킷에서 내부 목적지 MAC 어드레스, 내부 소스 MAC 어드레스 및 내부 VLAN ID이다. RB(223)는 TRILL-캡슐화 ARP 응답 패킷을 RB(233)에 송신한다.
RB(223)는 외부 목적지 MAC 어드레스에 따라 TRILL-캡슐화 ARP 응답 패킷을 RB(233)에 송신한다.
RB(233)는 TRILL-캡슐화 ARP 응답 패킷을 수신하고, nickname223, 내부 소스 MAC 어드레스 및 내부 VLAN ID에 기초하여 MAC 어드레스 엔트리를 알게 되며, TRILL-캡슐화 ARP 응답 패킷을 수신하는 포트, 내부 VLAN ID, 송신자 IP 어드레스(IP153) 및 송신자 MAC 어드레스(MAC153)에 기초하여 IP153의 ARP 엔트리를 알게 된다.
RB(233)는 목적지 IP 어드레스가 IP153인 IP 패킷을, 목적지 IP 어드레스(IP153)의 ARP 엔트리에서 MAC2331, MAC153 및 VLAN2에 기초하여 이더넷 패킷으로 캡슐화하고, 목적지 IP 어드레스(IP153)의 ARP 엔트리에서 이그레스 포트를 통해 이더넷 패킷을 발송한다. 다운스트림 계층-3 포워딩을 수행할 때, RB(233)는 IP 패킷을 이더넷 패킷으로 캡슐화하고, TRILL 캡슐화의 구현 없이 이더넷 패킷을 발송한다.
RB(223)가 TRILL 네트워크(200)에서 유니캐스트 경로를 통해 TRILL-캡슐화 ARP 응답 패킷을 RB(233)에 송신하므로, RB(233)는 최단 경로인 TRILL 경로 상의 포트로부터 TRILL-캡슐화 ARP 응답 패킷을 수신한다. 그러므로, RB(233)가 목적지 IP 어드레스(IP153)의 ARP 엔트리에서 이그레스 포트를 통해 이더넷 패킷을 발송할 때, 패킷은 최단 경로를 통해 포워딩될 것이다.
RB(223)는 목적지 MAC 어드레스가 MAC153인 이더넷 패킷을 수신하고, MAC153에 매칭되는 엔트리를 찾아내며, 이더넷 패킷을 종단국(153)에 송신한다.
RB(231-234)가 데이터 센터의 외부 네트워크로부터 이더넷 패킷/IP 패킷을 수신하고 목적지 IP 어드레스에 따라 다운스트림 계층-3 포워딩을 수행하기로 결정할 때, IP 패킷은 상기 방법에 따라 이더넷 패킷으로 캡슐화될 수 있고, 이러한 이더넷 패킷이 발송된다.
이제 이상상황 처리에 대해 설명한다.
RB(221-226)는 게이트웨이 RB(231-234)와 RB(221-226)를 연결하는 업링크를 체크한다. RB(223)는 장애 업링크(failed uplink)를 검출하며, 이러한 장애 업링크는 RB(223)와 RB(233) 간의 경로 상에 위치한다. RB(223)와 RB(233) 간의 경로는 RB(223)로부터 VLAN1 게이트웨이 및 VLAN2 게이트웨이로의 ECMP 중의 하나이다. RB(223)는 ECMP로부터 VLAN1 및 VLAN2까지 장애 업링크가 위치하는 경로를 삭제한다.
RB(231-234)는 외부 네트워크를 연결하는 업링크 및 RB(221-226)와 RB(231-234)를 연결하는 다운링크를 체크한다. RB(233)는 장애 다운링크를 검출하며, 이러한 장애 다운링크 상의 물리적 포트와 연관된 ARP 엔트리를 삭제한다. 이러한 예에서는 RB(233)가 IP153의 ARP 엔트리를 삭제한다.
RB(233)에 의해 수신된 이더넷 패킷의 목적지 IP 어드레스가 IP153일 때, RB(233)는 IP153에 대해 ARP 요청 패킷을 생성하고, ARP 요청 패킷을 TRILL-캡슐화 ARP 요청 패킷으로 캡슐화한다.
RB(221-226)는 TRILL-캡슐화 ARP 요청 패킷을 수신하고, 외부 이더넷 헤더 및 TRILL 헤더를 제거하며, VLAN2와 연관된 포트를 통해 ARP 요청 패킷을 브로드캐스팅한다.
종단국(153)은 ARP 요청 패킷을 수신하고, IP2332의 ARP 엔트리를 찾아내며, IP153에 대한 ARP 요청 패킷에 대해 ARP 응답 패킷을 생성하고, IP2332의 ARP 엔트리에 따라 ARP 응답 패킷을 발송한다.
RB(223)는 ARP 응답 패킷을 수신하고, 목적지 MAC 어드레스(MAC2331)에 매칭되는 MAC 어드레스 엔트리를 찾아내며, ARP 응답 패킷을 TRILL-캡슐화 ARP 응답 패킷으로 캡슐화한다. TRILL-캡슐화 ARP 응답 패킷에서, TRILL 헤더의 인그레스 닉네임 및 이그레스 닉네임은 각각 nickname223 및 nickname233이고, 외부 이더넷 헤더의 소스 MAC 어드레스 및 목적지 MAC 어드레스는 각각 RB(223)의 TRILL 인터페이스의 MAC 어드레스 및 RB(232)의 TRILL 인터페이스의 MAC 어드레스이다.
RB(223)는 TRILL-캡슐화 ARP 응답 패킷을 넥스트-홉(next-hop) RB(232)에 송신한다. RB(232)는 TRILL-캡슐화 ARP 응답 패킷을 수신하고, nickname223, 내부 VLAN ID 및 내부 소스 MAC 어드레스에 기초하여 MAC153과 연관된 MAC 어드레스 엔트리를 알게 되며, 이그레스 nickname233에 기초하여 외부 소스 MAC 어드레스 및 외부 목적지 MAC 어드레스를 수정하고, TRILL-캡슐화 ARP 응답 패킷을 넥스트-홉 RB(222)에 송신한다.
RB(222)는 TRILL-캡슐화 ARP 응답 패킷을 수신하고, nickname223, 내부 VLAN ID 및 내부 소스 MAC 어드레스에 기초하여 MAC153과 연관된 MAC 어드레스 엔트리를 알게 되며, TRILL-캡슐화 ARP 응답 패킷을 넥스트-홉 RB(232)에 송신한다.
RB(233)는 TRILL-캡슐화 ARP 응답 패킷을 수신하고, nickname223, 내부 VLAN ID 및 내부 소스 MAC 어드레스에 기초하여 MAC153과 연관된 MAC 어드레스 엔트리를 알게 되며, TRILL-캡슐화 ARP 응답 패킷을 수신하는 포트, 내부 VLAN ID, 송신자 IP 어드레스(IP153) 및 송신자 MAC 어드레스(MAC153)에 기초하여 IP153의 ARP 엔트리를 알게 된다.
RB(233)는 목적지 IP 어드레스(IP153)의 ARP 엔트리 및 MAC2331에 기초하여 이더넷 헤더를 생성한다. 이더넷 헤더에서, 소스 MAC 어드레스는 MAC2331이고, 목적지 MAC 어드레스는 MAC153이며, VLAN ID는 VLAN2이다. RB(233)는 목적지 IP 어드레스가 IP153인 IP 패킷에 이더넷 헤더를 부가하여 이더넷 패킷을 생성하고, 목적지 IP 어드레스(IP153)의 ARP 엔트리에서 이그레스 포트를 통해 이더넷 패킷을 발송한다.
RB(223)는 목적지 MAC 어드레스가 MAC153인 이더넷 패킷을 RB(222)에 송신한다. 이런 식으로, RB(223)이 다운스트림 계층-3 포워딩을 수행할 때, 송신되는 것은 TRILL 패킷 대신에 이더넷 패킷이다.
포워딩 칩이 충분한 처리 능력을 가지지 못하는 네트워크 장치에 대해서는, TRILL 역캡슐화 직후에 계층-3 포워딩을 수행할 수 없다. 이러한 네트워크 장치가 게이트웨이 RB들에서 사용될 때, 이러한 장치는 TRILL 패킷으로부터 역캡슐화된 이더넷 유니캐스트 프레임을 그것의 루프백-인터페이스에 먼저 송신해야 하고 그 다음에 루프백-인터페이스에서 수신된 이더넷 유니캐스트 프레임에 기초하여 계층-3 포워딩을 수행한다. 그러나, 이러한 네트워크 장치 상에서 이용가능한 사용자 인터페이스는, 일부 사용자 인터페이스가 루프백-인터페이스로 구성되기 때문에 줄어들게 되며, 이러한 네트워크 장치의 계층-3 포워딩 능력은 루프백-인터페이스의 수에 의해 제한될 수 있다.
상기 예시들에서, 비-게이트웨이 RB(221-226)는 TRILL 네트워크 토폴로지에 기초하여 게이트웨이 RB(231-234)를 향하는 ECMP를 계산하고, 이러한 ECMP를 통해 게이트웨이 RB들에 계층-3 포워딩될 필요가 있는 이더넷 유니캐스트 프레임을 송신한다. 따라서, 게이트웨이 RB(231-234)는 계층-3 포워딩을 수행하기 전에 TRILL 역캡슐화를, 그리고 계층-3 포워딩을 수행한 후에 TRILL 캡슐화를 구현할 필요가 없다. 게이트웨이 RB(231-234)의 계층-3 포워딩 능력은 영향을 받지 않을 수 있다.
RB(222)는 목적지 MAC 어드레스가 MAC153인 이더넷 패킷을 수신하고, MAC 테이블에서 MAC153에 매칭되는 엔트리를 찾아내며, MAC153에 매칭되는 엔트리에 기초하여 이더넷 패킷을 TRILL-캡슐화 이더넷 패킷으로 캡슐화한다. TRILL-캡슐화 이더넷 패킷에서, TRILL 헤더의 인그레스 닉네임 및 이그레스 닉네임은 각각 nickname222 및 nickname223이고, 외부 소스 MAC 어드레스 및 외부 목적지 MAC 어드레스는 RB(222)의 TRILL 인터페이스의 MAC 어드레스 및 RB(232)의 TRILL 인터페이스의 MAC 어드레스이다. RB(222)는 TRILL-캡슐화 이더넷 패킷을 넥스트-홉 RB(232)에 송신한다.
RB(232)는 TRILL-캡슐화 이더넷 패킷을 수신하고, 외부 소스 MAC 어드레스와 외부 목적지 MAC 어드레스를 각각 RB(232)의 TRILL-인터페이스의 MAC 어드레스와 RB(223)의 TRILL-인터페이스의 MAC 어드레스로 대체하며, TRILL-캡슐화 이더넷 패킷을 넥스트-홉 RB(223)에 송신한다.
RB(223)는 TRILL-캡슐화 이더넷 패킷을 수신하고, 외부 이더넷 헤더 및 TRILL 헤더를 제거하며, MAC 테이블에서 MAC153에 매칭되는 엔트리를 찾아내고, 이더넷 패킷을 종단국(153)에 송신한다.
RB(222 및 223)에 의해 수신된 이더넷 패킷의 목적지 MAC 어드레스가 게이트웨이의 MAC 어드레스가 아닌 경우, 통상의 계층-2 포워딩 처리가 이더넷 패킷에 대해 수행된다.
종단국(153)에 의한 가상 IP2에 대응하는 가상 MAC2에 대한 요청의 프로세스는 종단국(152)에 의한 가상 IP1에 대응하는 가상 MAC1에 대한 요청의 프로세스와 동일하다.
RB(231)는 가상 IP2에 대한 ARP 요청 패킷에 대해 ARP 응답 패킷을 생성하고, 가상 MAC2 및 MAC2312를 각각 송신자 MAC 어드레스 및 소스 MAC 어드레스로 설정한다.
가상 IP2의 습득된 ARP 엔트리에 기초하여, 종단국(153)은 계층-3 포워딩이 수행될 IP 패킷에 대해 캡슐화 및 포워딩을 수행한다. RB(223)는 목적지 MAC 어드레스가 가상 MAC2인 이더넷 패킷을 수신하고, 소스 MAC 어드레스를 RB(223) 상의 VLAN2의 VSI의 MAC 어드레스(MAC223)로 대체하며, 소스 MAC 어드레스가 대체되고 목적지 MAC 어드레스가 VLAN2의 게이트웨이의 MAC 어드레스인 이더넷 패킷을 포워딩하기 위해 RB(223)로부터 RB(232)까지의 경로를 선택한다. RB(223)로부터 RB(232)까지의 선택된 경로는 RB(223)로부터 게이트웨이 RB(231-234)로의 ECMP 중 하나이다. 따라서, ECMP는 VLAN2의 게이트웨이로의 이더넷 패킷의 송신을 공유할 수 있다.
RB(233)의 모든 업링크가 장애 상태임을 검출하는 경우, RB(233)는 RB(233)의 모든 업링크가 장애 상태라는 정보를 TRILL 네트워크(200)의 다른 RB들에 광고(advertise)한다. RB(221)는 ECMP로부터 VLAN1 게이트웨이 및 VLAN2 게이트웨이까지 RB(221)와 RB(233) 간의 경로를 삭제한다. 각각의 RB(222-226)는 또한 동일한 처리를 수행하며, 즉 ECMP로부터 VLAN1 게이트웨이 및 VLAN2 게이트웨이까지 현재 RB와 RB(233) 간의 경로를 삭제한다.
이러한 예에서는, 다운스트림 계층-3 포워딩의 수행을 통해 게이트웨이 RB에 의해 전송된 최초 패킷은 항상 이더넷 패킷이다. 비-게이트웨이 RB에 의해 수신된 이더넷 패킷의 목적지 MAC 어드레스가 게이트웨이의 MAC 어드레스가 아닌 경우, 이더넷 패킷에 통상의 계층-2 포워딩 방법에 따라 수행된다.
도 3은 본 개시내용의 다른 예에 따른 데이터 센터 내의 계층-2 네트워크를 예시하는 도면이다.
도 3에 도시된 바와 같이, TRILL-네트워크(300)는 게이트웨이 RB(341-342) 및 비-게이트웨이 RB(331-334 및 321-326)를 포함한다. 각각의 게이트웨이 RB(341-342)는 계층-3 포워딩 능력을 가진다.
가상 라우터(340)는 RB(341-342)로 구성된다. TRILL 네트워크(300)의 VLAN10에 대해서, 가상 라우터(340)에 가상 IP3 및 가상 MAC3가 할당되고, 이는 각각 VLAN10의 게이트웨이의 IP 어드레스 및 MAC 어드레스로 이용된다. TRILL 네트워크(300)의 VLAN20에 대해서, 가상 라우터(340)에 가상 IP4 및 가상 MAC4가 할당되고, 이는 각각 VLAN20의 게이트웨이의 IP 어드레스 및 MAC 어드레스로 이용된다.
RB(341-342)는 HSRP 또는 VRRP에 따라 가상 라우터(340)를 구성할 수 있다. RB(341)는 가상 라우터(340)의 1차 디바이스로 선택될 수 있다. RB(341)는 가상 IP3 또는 가상 IP4에 대한 ARP 요청 패킷에 대응하는 ARP 응답 패킷을 송신할 수 있다. RB(341-342) 양자 모두는 활성 상태로 유지되며 VLAN10 및 VLAN20의 게이트웨이로서 이용된다.
VLAN10에 속하는 종단국의 게이트웨이의 IP 어드레스는 가상 IP3로 설정되고, VLAN20에 속하는 종단국의 게이트웨이의 IP 어드레스는 가상 IP4로 설정된다.
TRILL 네트워크(300)의 모든 RB들은, VLAN10의 게이트웨이와 VLAN20의 게이트웨이가 각각 가상 MAC3 및 가상 MAC4이며 VLAN10의 게이트웨이와 VLAN20의 게이트웨이가 RB(341 및 342)임을 알고 있다.
각각의 RB(341-342)는 TRILL 네트워크(300)에서 VLAN10의 게이트웨이 정보 및 VLAN20의 게이트웨이 정보를 광고한다. 각각의 RB(341-342)에 의해 광고된 게이트웨이 정보는, 게이트웨이의 MAC 어드레스를 나타내기 위한 정보 및 게이트웨이로서 이용될 현재 RB를 나타내기 위한 정보를 포함할 수 있다. 따라서, TRILL 네트워크(300) 내의 모든 RB들은, 가상 MAC3이 VLAN10의 게이트웨이 MAC 어드레스이고, 가상 MAC4가 VLAN20의 게이트웨이 MAC 어드레스이며, VLAN10의 게이트웨이와 VLAN20의 게이트웨이가 RB(341-342)에 의해 구현된다는 점을 알 수 있다.
예를 들어, 각각의 RB(341-342)는 TRILL 멀티캐스트 트리를 통해 TRILL 네트워크(300) 내에서 기존의 프로토콜 패킷을 송신할 수 있고, 게이트웨이 정보는 이러한 기존의 프로토콜 패킷의 미정의된 필드에 포함될 수 있다. 다른 예로서, 각각의 RB(341-342)는 TRILL 멀티캐스트 트리를 통해 TRILL 네트워크(300) 내에서 자체 정의된 게이트웨이 광고 메시지를 송신할 수 있고, 게이트웨이 정보는 이러한 게이트웨이 광고 메시지에 포함될 수 있다. 따라서, 자체 정의된 게이트웨이 광고 메시지의 프로토콜 타입은 TRILL 네트워크(300) 내의 모든 RB들에 의해 인식될 수 있어야 한다.
RB(321)는 TRILL 네트워크(300)의 토폴로지에 따라 VLAN10의 게이트웨이(RB(342-342)를 포함)와 RB(321) 사이의 TRILL 경로를 계산하고, 최소한의 수의 홉을 갖는 TRILL 경로를 VLAN10의 게이트웨이로의 ECMP로 선택한다.
RB(321)는 TRILL 네트워크(300)의 토폴로지에 따라 VLAN20의 게이트웨이와 RB(321) 사이의 TRILL 경로를 계산하고, 최소한의 수의 홉을 갖는 TRILL 경로를 VLAN20의 게이트웨이로의 ECMP로 선택한다.
도 3에서, VNAN10의 게이트웨이로 RB(321)에 의해 선택된 ECMP들은 RB(321)과 RB(341) 사이에 네 개의 ECMP를 포함하고, ECMP 상의 전송 RB들은 각각 RB(321-334)이다. VNAN10의 게이트웨이로 RB(321)에 의해 선택된 ECMP들은 RB(321)과 RB(342) 사이에 네 개의 ECMP를 더 포함하고, ECMP 상의 전송 RB들은 각각 RB(321-334)이다. VNAN20의 게이트웨이로 RB(321)에 의해 선택된 ECMP들은 VNAN10의 게이트웨이로의 ECMP들과 같다.
같은 원리에 기초하여 RB(322-326)는 VLAN10의 게이트웨이로의 ECMP들과 VLAN20의 게이트웨이로의 ECMP 을 선택할 수 있다.
도 3에서, VLAN10의 게이트웨이로 RB(331)에 의해 선택된 ECMP들과 VLAN20의 게이트웨이로 RB(331)에 의해 선택된 ECMP들은 RB(331)과RB(341) 사이에 경로를 포함하고, RB(331)과RB(342) 사이에 경로를 포함한다.
VLAN10에 속한 종단국(352)은 RB(322)에 연결되고, VLAN20에 속하는 종단국(353)은 RB(323)에 연결된다.
만일 종단국(352)이 가상 IP3에 대응하는 MAC 어드레스를 찾지 못하면, 종단국(352)은 가상 IP3에 대한 ARP 요청 패킷(ARP request packet)을 생성한다. 상기 ARP 요구 패킷에서, 타겟 IP 어드레스는 가상 IP3이고, 송신자 IP 어드레스는 IP352이고, 송신자 MAC 어드레스는 MAC352이고, ARP 요구 패킷의 이더넷 헤더의 소스 MAC 어드레스와 목적지 MAC 어드레스는 각각 상기 MAC352와 전부 F MAC 어드레스이다. 상기 종단국(352)는 가상 IP3에 대한 ARP 요청 패킷을 RB(322)로 보낸다.
RB(322)는 종단국(352)으로부터 ARP 요청 패킷을 수신하고, VLAN10, ARP 요청 패킷의 소스 MAC 어드레스 및 ARP 요청 패킷을 수신하는 포트에 기초하여 MAC352의 엔트리를 습득한다. RB(322)는 ARP 요청 패킷을 TRILL-캡슐화 ARP 요청 패킷으로 캡슐화해서, 상기 TRILL-캡슐화 ARP 요청 패킷을 TRILL 네트워크(300)에서 브로드캐스트를 한다.
RB들(321 및 323-326)이 상기 TRILL-캡슐화 ARP 요청 패킷을 수신하고, 닉네임322, VLAN10 and MAC352에 기초하여 MAC 어드레스 엔트리를 습득한다. RB들(321 및 323-326)은 외부 이더넷 헤더와 TRILL 헤더를 제거하고, VLAN10에 연결된 포트를 통해 ARP 요청 패킷을 브로드캐스트한다.
전송 RB로 이용되고 있는 RB들(331-341)이 인그레스 닉네임(ingress nickname), 내부 목적지 MAC 어드레스 및 내부 VLAN ID에 기초하여 MAC352의 MAC 어드레스 엔트리를 습득하여, TRILL 네트워크(300)에서 이그레스 닉네임에 기초하여 TRILL-캡슐화 ARP 요청 패킷을 포워딩한다.
RB(341 및 342)들은 TRILL-캡슐화 ARP 요청 패킷을 수신하고, 닉네임322, VLAN10 및 MAC352에 기초하여 MAC 어드레스 엔트리를 습득하고, TRILL-캡슐화 ARP 요청 패킷을 수신하는 포트, MAC352(송신자 MAC 어드레스), 내부 VLAN ID 및 IP352 (송신자 IP 어드레스)에 기초하여 IP352의 ARP 엔트리를 습득한다.
RB(341)은 ARP 요청 패킷에 대한 APR 응답 패킷을 생성한다. APR 응답 패킷에서, 타겟 IP 어드레스는 IP352 이고, 타겟 MAC 어드레스는 MAC352이고, 송신자 IP 어드레스는 상기 가상 IP3이고, 송신자 MAC 어드레스는 상기 가상 MAC3이다. RB(341)는 ARP 응답 패킷에서 이더넷 헤더의 목적지 MAC 어드레스와 소스 MAC 어드레스를 RB(341)과 MAC(352) 상의 VLAN10의 VSI의 제2 MAC 어드레스 MAC3412로 설정한다. RB(341)은 ARP 응답 패킷을 TRILL-캡슐화 ARP 응답 패킷으로 캡슐화한다.
도 3에서, RB(341) 상의 VLAN10의 VSI의 IP 어드레스와 RB(341) 상의 VLAN20의 VSI의 IP 어드레스는 각각 IP3411과 IP3412이지만, 상기 두 개의 VSI는 동일한 제1 MAC 어드레스 MAC3411와 동일한 MAC 어드레스 MAC3412를 갖는다. 게이트웨이 RB(342) 상의 VLAN10의 VSI와 게이트웨이 RB(342) 상의 VLAN20의 VSI는 서로 다른 IP 어드레스를 갖지만, 동일한 제1 MAC 어드레스 와 동일한 제2 MAC 어드레스를 갖는다. 다른 예에서는, 게이트웨이 RB(341) 상의 상기 두 개의 VSI는 서로 다른 제1 MAC 어드레스 와 서로 다른 제2 MAC 어드레스를 가지며, 게이트웨이 RB(342) 상의 상기 두 개의 VSI는 서로 다른 제1 MAC 어드레스 와 서로 다른 제2 MAC 어드레스를 갖는다.
RB(341)은 습득한 MAC 어드레스 엔트리에 따라 인그레스 닉네임을 닉네임341로 설정하고, 이그레스 닉네임을 닉네임322으로 설정하며, 또한, 외부 소스 MAC 어드레스와 외부 목적지 MAC 어드레스를 RB(341)의 TRILL 인터페이스의 MAC 어드레스와 넥스트-홉(next-hop) RB(332)의 TRILL 인터페이스의 MAC 어드레스로 각각 설정한다. 도 3에서, 상기 RB(341)는 TRILL-캡슐화 APR 응답 패킷을 RB(332)로 보낸다.
상기 RB(342)는 TRILL-캡슐화 APR 응답 패킷을 수신하고, 인그레스 닉네임, 내부 목적지 MAC 어드레스 및 내부 VLAN ID에 기초하여 MAC3412의 MAC 어드레스 엔트리를 습득하고, 외부 소스 MAC 어드레스와 외부 목적지 MAC 어드레스를 수정하여, TRILL-캡슐화 APR 응답 패킷을 RB(322)로 보낸다.
RB(322)는 TRILL-캡슐화 APR 응답 패킷을 수신하고, 외부 MAC와 이그레스 닉네임이 각각 RB(322)의 TRILL 인터페이스의 MAC 어드레스와 닉네임이라고 결정하고, 외부 이더넷 헤더와 TRILL 헤더를 제거하고, MAC 테이블에서 목적지 MAC 어드레스MAC(352)에 매칭되는 엔트리를 찾아서 ARP 응답 패킷을 종단국(352)로 보낸다.
종단국(352)은 ARP 응답 패킷을 수신하고, 가상 IP3의 ARP 엔트리를 습득하고, 목적지 IP 어드레스가 IP353인 IP 패킷을 목적지 MAC 어드레스가 가상 IP3의 ARP 엔트리에 기초하여 가상 MAC3인 이더넷 패킷으로 캡슐화하고, 이 이더넷 패킷을 내보낸다. 즉, 종단국(352)에 의해 송신된 이더넷 패킷에서, 목적지 MAC 어드레스는 상기 가상 MAC3이고, 소스 MAC 어드레스는 MAC 352이다.
RB(322)는 종단국(352)로부터 목적지 MAC 어드레스가 가상 MAC3인 이더넷 패킷을 수신하여, 소스 MAC 어드레스를 MAC322로 교체하고, ECMP로부터 VLAN10의 게이트웨이에 이르는 경로(예를 들어, RB(322)RB(332)RB(341)인 경로)를 선택하여, 소스 MAC 어드레스가 교체된 이더넷 패킷을 전송한다. RB(322)는 상기 소스 MAC 어드레스를 수정해서 넥스트-홉 RB 또는 게이트웨이가 MAC352, 즉 닉네임322 의 습득된 엔트리에서의 이그레스 포트를 수정하지 못하도록 한다.
RB(332)는 목적지 MAC 어드레스가 가상 MAC3인 이더넷 패킷을 수신하고, 소스 MAC 어드레스를 MAC332로 교체하고, ECMP로부터 VLAN10의 게이트웨이에 이르는 경로(예를 들어, RB(322)로부터 RB(341)까지의 경로)를 선택하여, 소스 MAC 어드레스가 교체된 이더넷 패킷을 전송한다. RB(322)는 상기 소스 MAC 어드레스를 수정해서 게이트웨이가 MAC352의 습득된 엔트리에서의 이그레스 포트를 수정하지 못하도록 한다.
도 3에서, 비-게이트웨이(RB(321-326) 및 RB(331-334)) 상에서, VLAN10의 VSI 및 VLAN2의 VSI가 서로 다른 IP 어드레스를 갖지만, 동일한 MAC 어드레스를 갖거나 또는 서로 다른 MAC 어드레스를 갖는다.
이러한 방식으로, RB들(322 및 332)은 VLAN10 게이트웨이로의 ECMP들을 활용하여 VLAN10 게이트웨이로의 이더넷 패킷의 전송을 공유한다. RB들(322 및 332)은 VLAN10로 전송된 이더넷 패킷을 TRILL 패킷 안으로 캡슐화할 필요가 없다. 따라서, VLAN10의 게이트웨이는 TRILL 패킷을 디캡슐화 하지 않고 계층-3 포워딩을 수행할 수 있다.
RB들(322 및 332)는 수신된 이더넷 패킷의 파이브-튜플(five-tuple)에 따라 해시값을 계산하고, 상기 ECMP로부터 상기 해시값에 따라 경로를 선택한다. RB(341)은 목적지 MAC 어드레스가 가상 MAC3인 이더넷 패킷을 수신하고, 소스 MAC 어드레스 MAC332의 MAC 어드레스 엔트리를 습득한다.
RB(341)은 목적지 MAC 어드레스가 가상 MAC3인 이더넷 패킷의 이더넷 헤더를 제거하고, 목적지 IP 어드레스가 목적지 IP 어드레스 IP353에 따른 IP353인 IP 패킷 상에서 다운스트림 계층-3 포워딩을 수행하기로 결정한다.
만일 RB(341)가 목적지 IP 어드레스 IP353을 찾지 못하면, RB(341)는 목적지 IP 주조가 IP353인 IP 패킷을 캐쉬하여, IP353에 대한 ARP 요청 패킷을 생성한다. 상기 ARP 요청 패킷에서, 송신자 IP 어드레스는 RB(341) 상의 VLAN20의 VSI의 IP 어드레스 IP3412이고, 송신자 MAC 어드레스는 RB(341) 상의 VLAN20의 VSI의 제1 MAC 어드레스 MAC3411이며, 타겟 IP 어드레스는 IP352이다. APR 요청 패킷 내의 이더넷 헤더의 VLAN ID, 소스 MAC 어드레스 및 목적지 MAC 어드레스는 각각 VLAN20, MAC3411 및 전부 F MAC 어드레스이다.
RB(341)은 APR 요청 패킷을 TRILL-캡슐화 ARP 요청 패킷 안으로 캡슐화하고, TRILL 네트워크(300)에서 TRILL-캡슐화 ARP 요청 패킷을 브로드캐스트한다.
RB(331-334)들은 TRILL-캡슐화 ARP 요청 패킷을 수신하고, 인그레스 닉네임, VLAN20 및 MAC3411에 기초하여 MAC 어드레스 엔트리를 습득한다. RB(331-334)는 이그레스 닉네임에 따라 TRILL-캡슐화 ARP 요청 패킷을 포워딩한다.
RB(321-326)들은 TRILL-캡슐화 ARP 요청 패킷을 수신하고, 인그레스 닉네임, VLAN20 및 MAC3411에 기초하여 MAC 어드레스 엔트리를 습득한다. RB(321-326)들은 TRILL-캡슐화 ARP 요청 패킷의 TRILL 헤더와 외부 이더넷 헤더를 제거하고, VLAN20에 연결된 포트를 통해 ARP 요청 패킷을 브로드캐스트한다.
종단국(353)은 ARP 요청 패킷을 수신하고, IP3412의 ARP 엔트리를 습득하고, IP353에 대한 ARP 요청 패킷에 대응하는 ARP 응답 패킷을 생성하여, IP3412의 ARP 엔트리에 따라 ARP 응답 패킷을 전송한다. 종단국(353)에 의해 생성된 ARP 응답 패킷에서, 송신자 IP 어드레스 및 송신자 MAC 어드레스는 각각 IP353와 MAC353이고, 타겟 IP 어드레스와 타켓 MAC 어드레스는 각각 IP3412와 MAC3411이며, 소스 MAC 어드레스와 목적지 MAC 어드레스는 각각 MAC353와 MAC3411이다.
RB(323)은 ARP 응답 패킷을 수신하고, VLAN20, 소스 MAC 어드레스 MAC353 및 ARP 응답 패킷을 수신하는 포트에 기초하여 MAC 어드레스 엔트리를 습득한다.
RB(323)는 MAC 어드레스 MAC3411와 매칭되는 엔트리를 찾고, ARP 응답 패킷을 TRILL-캡슐화 ARP 응답 패킷 내로 캡슐화한다. TRILL-캡슐화 ARP 응답 패킷에서, TRILL 헤더의 인그레스 닉네임 및 이그레스 닉네임은 각각 닉네임323 및 닉네임341이고, 이더넷 헤더의 외측 소스 MAC 어드레스 및 외측 목적지 MAC 어드레스는 RB(323)의 TRILL 인터페이스의 MAC 어드레스와 넥스트-홉 RB(332)의 TRILL 인터페이스의 MAC 어드레스이다. RB(323)은 외측 목적지 MAC 어드레스에 기초하여 TRILL-캡슐화 ARP 응답 패킷을 넥스트-홉 RB(332)에 전송한다.
RB(323)는 TRILL-캡슐화 ARP 응답 패킷을 수신하고, 인그레스 닉네임(323), MAC353 및 VLAN20에 기초하여 MAC 어드레스 엔트리를 습득하고, 외측 소스 MAC 어드레스와 외측 목적지 MAC 어드레스를 수정하여, TRILL-캡슐화 ARP 응답 패킷을 RB(341)로 보낸다.
RB(341)은 TRILL-캡슐화 ARP 응답 패킷을 수신하고, 인그레스 닉네임323, MAC353 및 VLAN20에 기초하여 MAC 어드레스 엔트리를 습득하고, TRILL-캡슐화 ARP 응답 패킷을 수신하는 포트, VLAN20, IP353 및 MAC353 에 기초하여 IP353의 ARP 엔트리를 습득한다.
RB(341)은 MAC3411, MAC353 및 VLAN20에 기초하여 이더넷 헤더를 생성하고, 이 이더넷 헤더를 목적지 IP 어드레스가 IP353인 IP 패킷에 부가하여, IP353의 ARP 엔트리 내의 이그레스 포트를 통해 이더넷 패킷을 내보낸다.
RB(332)는 이더넷 패킷을 수신하고, MAC353에 매칭되는 엔트리를 찾아서, 이 이더넷 패킷을 TRILL-캡슐화 이더넷 패킷 안으로 캡슐화하고, 이 TRILL-캡슐화 이더넷 패킷을 RB(323)에 송신한다.
RB(323)은 TRILL-캡슐화 이더넷 패킷을 수신하고, 외측 이더넷 패킷과 TRILL 헤더를 제거하고, MAC353에 매칭되는 엔트리를 찾아서 TRILL-캡슐화 이더넷 패킷을 RB(353)에 보낸다.
이하, 이상상황 프로세싱에 대해 기술한다.
RB(321-326 및 331-334)들은 업링크를 체크한다.
RB(321)는 장애 업링크를 검출하고, 장애 업링크는 RB(321) RB(332) RB(341)의 경로 및 RB(321) RB(332) RB(342)의 경로 상에 위치한다. RB(321)는 ECMP로부터 VLAN10 게이트웨이 및 VLAN20 게이트웨이를 향하는 상기 장애 업링크가 위치한 두 개의 경로를 검출한다.
RB(321-326 및 331-334)는 목적지 MAC 어드레스가 VLAN10의 게이트웨이 MAC 어드레스 또는 VLAN20의 게이트웨이 MAC 어드레스인 패킷을 ECMP들을 통해 RB(341)로 보낸다.
도 3에 도시된 TRILL 네트워크(300)은, 한 개의 게이트웨이 RB가 TRILL 네트워크(300) 내의 각각의 VLAN의 게이트웨이로 사용되어도, RB(321-326)들은 여전히 각각의 VLAN의 게이트웨이에 대한 ECMP들을 사용하여 각각의 VLAN로의 이더넷 패킷의 전송을 공유할 수 있고, 또한, 수신된 이더넷 패킷을 TRILL-캡슐화 이더넷 패킷 내로 캡슐화할 필요는 없다. RB(331-334)도 또한 수신된 이더넷 패킷을 TRILL-캡슐화 이더넷 패킷으로 캡슐화할 필요가 없다. RB(332)는 장애 업링크를 검출하고, 상기 장애 업링크는 RB(332)와 RB(341) 사이의 경로 상에 위치하며, RB(332)로부터 VLAN10 및 VLAN20까지의 ECMP들 중의 하나이다. RB(332)는 상기 ECMP들로부터 VLAN10 및 VLAN20까지에서 상기 장애 업링크가 위치하는 경로를 검출한다.
RB(341)와 RB(342)의 각각은 업링크와 다운링크를 체크한다. RB(341)은 RB(332)에 연결된 다운링크가 장애 상태인지를 검출하고, 장애 다운링크의 물질적인 포트와 연결된 IP353의 ARP 엔트리를 검출한다.
RB(341)에 의해 수신된 이더넷 패킷의 목적지 IP 어드레스가 IP353일 때, RB(341)은 IP353에 대한 ARP 요청 패킷을 재전송하고, 수신된 TRILL-캡슐화 ARP 응답 패킷에 기초하여 IP353의 ARP 엔트리를 다시 습득하고, 목적지 IP 어드레스가 IP353인 IP 패킷을 습득된 ARP 엔트리에 따라 이더넷 패킷 내로 캡슐화하여 이더넷 패킷을 내보낸다.
종단국(353)에 의한 VLAN20의 게이트웨이의 MAC 어드레스 대한 요청의 처리는 종단국(352)에 의한 VLAN10의 게이트웨이의 MAC 어드레스에 대한 요청의 처리와 동일하다.
RB(341)의 모든 업링크가 장애 상태라고 검출된 때에는, RB(341)는 RB(341)의 모든 업링크가 TRILL 네트워크(300)에서 장애가 있다는 정보를 알린다. 각각의 RB(321-326)는 ECMP들로부터 VLAN10 및 VLAN20까지 현재의 RB 와 RB(341) 사이의 경로를 삭제한다. 각각의 RB(331-334)도 동일한 프로세싱을 수행한다. 즉, ECMP들로부터 현재의 RB 와 RB(341) 사이의 경로를 삭제한다.
도 2 및 3에 도시된 예로부터 알 수 있는 바와 같이, 데이터 센터의 비-게이트웨이 RB가 목적지 MAC 어드레스가 게이트웨이의 MAC 어드레스인 이더넷 패킷을 수신할 때, 비-게이트웨이 RB는 소스 MAC 어드레스를 로컬 MAC 어드레스로 대체하고, 소스 MAC 어드레스가 대체되고 목적지 MAC 어드레스가 ECMP들을 통한 게이트웨이로의 게이트웨이 MAC 어드레스인 이더넷 패킷을 포워딩한다. 이러한 방식으로 비-게이트웨이 RB들은 게이트웨이 RB들에게 이더넷 패킷을 전송할 수 있고, TRILL-캡슐화 이더넷 패킷 내로 이더넷 패킷을 캡슐화하지 않고 계층-3 포워딩이 수행된다.
도 4는 본원의 실시예에 따른 패킷 포워딩 장치의 구조를 도시하는 도면이다. 패킷 포워딩 장치는 다음의 모듈을 포함한다.
경로 선택 모듈(401)이 게이트웨이로의 다수의 TRILL 경로로부터 ECMP를 선택할 수 있다.
패킷 포워딩 모듈(402)이, 목적지 MAC 어드레스가 게이트웨이의 MAC 어드레스인 수신된 이더넷 패킷의 소스 MAC 어드레스를 로컬 MAC 어드레스로 대체하고, ECMP로부터 경로를 선택하고, 소스 MAC 어드레스가 대체되었던 이더넷 패킷을 선택된 경로를 통해 전송할 수 있다.
경로 체크 모듈(403)이 업링크를 체크하고, 업링크의 상태를 경로 선택 모듈(401)에 전송한다.
장애 업링크가 하나의 ECMP에 위치한다고 결정하는 때에, 경로 선택 모듈(401)이 ECMP로부터 장애 업링크가 위치하는 경로를 삭제할 수 있다.
패킷 포워딩 모듈(402)은 게이트웨이의 MAC 어드레스 및 게이트웨이로 사용되는 하나 이상의 게이트웨이 RB를 획득할 수 있다.
경로 선택 모듈(401)이 각각의 게이트웨이 RB로의 다수의 TRILL 경로를 계산하고, 각각의 게이트웨이 RB로의 다수의 TRILL 경로로부터 최소 개수의 홉을 갖는 하나 이상의 경로를 ECMP로서 선택한다.
경로 선택 모듈(401)이 업링크가 장애 상태인 게이트웨이 RB를 획득하고, ECMP가 업링크가 장애 상태인 게이트웨이 RB로의 경로를 포함하는지 여부를 결정할 수 있다. ECMP가 업링크가 장애 상태인 게이트웨이 RB로의 경로를 포함한다고 결정하는 때에, 경로 선택 모듈(401)은 ECMP로부터 업링크가 장애 상태인 게이트웨이 RB로의 경로를 삭제한다.
본원의 실시예에 의해 제공된 패킷 포워딩 장치는 게이트웨이에 패킷의 전송에서 공유하는 게이트웨이로의 다수의 TRILL 경로로서 ECMP를 사용할 수 있고, 게이트웨이에 전송된 패킷을 TRILL-캡슐화 이더넷 패킷으로 캡슐화할 필요가 없다.
도 5는 본원의 또 다른 실시예에 따른 패킷 포워딩 장치의 구조를 도시하는 도면이다. 도 5에서, 패킷 포워딩 장치는 적어도, 메모리(501), 메모리(501)와 통신하는 프로세서(502) 및 패킷 포워딩 칩(503)을 포함한다. 메모리(501), 프로세서(502) 및 패킷 포워딩 칩(503)은 버스를 통해 접속된다. 메모리(501)는 예컨대 프로세서(502)에 의해 실행되는 머신 판독가능 명령을 저장한다. 머신 판독가능 명령은 예컨대 경로 선택 명령을 포함한다. 메모리(501)는 예컨대 비일시적 컴퓨터 저장 판독가능 매체이다. 경로 선택 명령은 메모리(501) 내에 저장된 머신-판독가능 명령일 수 있다. 프로세서(502)는 메모리(501) 내에 저장된 머신-판독가능 명령을 실행할 수 있다.
경로 선택 명령은 게이트웨이로의 다수의 TRILL 경로로부터 ECMP를 선택하도록 한다. 패킷 포워딩 칩(503)이 목적지 MAC 어드레스가 게이트웨이의 MAC 어드레스인 수신된 이더넷 패킷의 소스 MAC 어드레스를 로컬 MAC 어드레스로 대체하고, ECMP로부터 경로를 선택하고, 소스 MAC 어드레스가 대체된 이더넷 패킷을 선택된 경로를 통해 전송한다.
패킷 포워딩 장치는 또한, 링크를 체크하는 경로 체킹 명령을 포함하며, 경로 선택 명령으로 업링크의 상태를 전송한다. 장애 업링크가 하나의 ECMP 상에 위치한다고 결정하는 때에, 경로 선택 명령은 ECMP로부터 장애 업링크가 위치하는 경로를 삭제하게 할 것이다.
패킷 포워딩 칩(503)은 게이트웨이로서 사용되는 하나 이상의 게이트웨이 RB 및 게이트웨이의 MAC 어드레스를 획득할 수 있다. 경로 선택 명령은 각각의 게이트웨이 RB로의 다수의 TRILL 경로를 계산하고, 각각의 게이트웨이 RB로의 다수의 TRILL 경로로부터 최소 개수의 홉을 갖는 하나 이상의 경로를 ECMP로서 선택하게 할 수 있다.
경로 선택 명령은 업링크가 장애 상태인 게이트웨이 RB를 획득하고, ECMP가 업링크가 장애 상태인 게이트웨이 RB로의 경로를 포함하는지 여부를 결정하도록 한다. ECMP가 업링크가 장애 상태인 게이트웨이 RB로의 경로를 포함한다고 결정하는 때에, 경로 선택 명령은 ECMP로부터 업링크가 실피된 게이트웨이 RB로의 경로를 삭제하도록 한다.
본원에 개시된 전체를 통하여 구체적으로 기재되었다 할지라도, 본원의 대표적인 실시예가 출원의 넓은 범위를 넘어 사용되며, 전술한 것으로만 의도되지 않으며, 한정하여 구성되는 것은 아니고, 본원 개시의 측면의 일례로서 제안하는 것이다.
본 명세서에서 기술되고 도시된 것은 그것의 변형 중 일부와 함께 예시이다. 본 명세서에 사용된 용어, 상세한 설명 및 도면은 오직 예시로서 기재되며 한정을 의미하지 않는다. 본원의 주체의 정신 및 범위 내에서 다양한 변형이 가능하며, 다음의 청구범위, 및 그 등가물에 의해 한정되는 것을 의도하는 것은 아니다. 반대 지시가 없는 한 모든 용어는 청구범위의 최대로 넓은 합리적 범위 내에서 의미가 있다.

Claims (8)

  1. 패킷 포워딩 장치에서의 패킷 포워딩 방법으로서,
    경로 선택 모듈에 의해, 게이트웨이로의 다수의 TRILL(Transparent Interconnection of Lots of Links) 경로로부터 ECMP(Equal-Cost Multipath Routing)들을 선택하는 단계;
    패킷 포워딩 모듈에 의해, 목적지 MAC 어드레스가 게이트웨이의 MAC 어드레스인 수신된 이더넷 패킷의 소스 MAC 어드레스를 로컬 MAC 어드레스로 대체하는 단계; 및
    상기 패킷 포워딩 모듈에 의해, 상기 ECMP들로부터 경로를 선택하고, 소스 MAC 어드레스가 대체된 이더넷 패킷을 선택된 경로를 통해 전송하는 단계
    를 포함하는,
    패킷 포워딩 방법.
  2. 제1항에 있어서,
    상기 소스 MAC 어드레스가 대체된 이더넷 패킷을 선택된 경로를 통해 전송하는 단계 이후에,
    경로 체킹 모듈에 의해, 업링크를 체크하는 단계; 및
    상기 경로 체킹 모듈에 의해, 장애 업링크가 상기 ECMP들 중 하나에 위치한다고 검출되는 때에, 상기 ECMP들로부터 상기 장애 업링크가 위치하는 경로를 삭제하는 단계를 더 포함하는, 패킷 포워딩 방법.
  3. 제1항에 있어서,
    상기 게이트웨이로의 다수의 TRILL 경로로부터 ECMP들을 선택하는 단계 이후에, 상기 패킷 포워딩 모듈에 의해, 게이트웨이로서 사용되는 하나 이상의 게이트웨이 RB(Routing Bridge)를 획득하는 단계를 더 포함하고,
    상기 게이트웨이로의 다수의 TRILL 경로로부터 ECMP들을 선택하는 단계는,
    각각의 게이트웨이 RB로의 다수의 TRILL 경로를 계산하는 단계; 및
    각각의 게이트웨이 RB로의 다수의 TRILL 경로로부터 최소 개수의 홉(hop)을 갖는 하나 이상의 경로를 ECMP로서 선택하는 단계를 포함하는, 패킷 포워딩 방법.
  4. 제3항에 있어서,
    상기 소스 MAC 어드레스가 대체된 이더넷 패킷을 선택된 경로를 통해 전송하는 단계 이후에,
    상기 경로 선택 모듈에 의해, 업링크가 장애 상태인 게이트웨이 RB를 획득하는 단계;
    상기 경로 선택 모듈에 의해, 상기 ECMP들이 상기 업링크가 장애 상태인 게이트웨이 RB로의 경로를 포함하는지 여부를 결정하는 단계; 및
    상기 ECMP들이 상기 업링크가 장애 상태인 게이트웨이 RB로의 경로를 포함한다고 결정되는 때에, 상기 경로 선택 모듈에 의해, 상기 ECMP들로부터 상기 업링크가 장애 상태인 게이트웨이 RB로의 경로를 삭제하는 단계를 더 포함하는, 패킷 포워딩 방법.
  5. 패킷 포워딩 장치로서,
    게이트웨이로의 다수의 TRILL(Transparent Interconnection of Lots of Links) 경로로부터 ECMP(Equal-Cost Multipath Routing)들을 선택하는 경로 선택 모듈; 및
    목적지 MAC 어드레스가 게이트웨이의 MAC 어드레스인 수신된 이더넷 패킷의 소스 MAC 어드레스를 로컬 MAC 어드레스로 대체하고, 상기 ECMP들로부터 경로를 선택하고, 소스 MAC 어드레스가 대체된 이더넷 패킷을 선택된 경로를 통해 전송하는 패킷 포워딩 모듈
    을 포함하는,
    패킷 포워딩 장치.
  6. 제5항에 있어서,
    업링크를 체크하고, 업링크의 상태를 상기 경로 선택 모듈에 전송하는 경로 체킹 모듈을 더 포함하고,
    상기 경로 선택 모듈은 장애 업링크가 상기 ECMP들 중 하나에 위치한다고 결정되는 때에, 상기 ECMP들로부터 상기 장애 업링크가 위치하는 경로를 삭제하는, 패킷 포워딩 장치.
  7. 제5항에 있어서,
    상기 패킷 포워딩 모듈은 상기 게이트웨이의 MAC 어드레스 및 상기 게이트웨이로서 사용되는 하나 이상의 게이트웨이 RB(Routing Bridge)를 획득하고,
    상기 경로 선택 모듈은 각각의 게이트웨이 RB로의 다수의 TRILL 경로를 계산하고, 각각의 게이트웨이 RB로의 다수의 TRILL 경로로부터 최소 개수의 홉을 갖는 하나 이상의 경로를 ECMP로서 선택하는, 패킷 포워딩 장치.
  8. 제7항에 있어서,
    상기 경로 선택 모듈은 또한 업링크가 장애 상태인 게이트웨이 RB를 획득하고, 상기 ECMP들이 상기 업링크가 장애 상태인 게이트웨이 RB로의 경로를 포함하는지 여부를 결정하고,
    상기 ECMP들이 상기 업링크가 장애 상태인 게이트웨이 RB로의 경로를 포함한다고 결정되는 때에, 상기 경로 선택 모듈은 상기 ECMP들로부터 상기 업링크가 장애 상태인 게이트웨이 RB로의 경로를 삭제하는, 패킷 포워딩 장치.
KR1020157036020A 2013-08-02 2014-08-01 패킷 포워딩 KR101613640B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201310334013.8 2013-08-02
CN201310334013.8A CN104348717B (zh) 2013-08-02 2013-08-02 报文转发方法和装置
PCT/CN2014/083521 WO2015014311A1 (en) 2013-08-02 2014-08-01 Packet forwarding

Publications (2)

Publication Number Publication Date
KR20160003327A KR20160003327A (ko) 2016-01-08
KR101613640B1 true KR101613640B1 (ko) 2016-04-19

Family

ID=52431024

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157036020A KR101613640B1 (ko) 2013-08-02 2014-08-01 패킷 포워딩

Country Status (5)

Country Link
US (1) US20160142287A1 (ko)
EP (1) EP3028434B1 (ko)
KR (1) KR101613640B1 (ko)
CN (1) CN104348717B (ko)
WO (1) WO2015014311A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10033693B2 (en) 2013-10-01 2018-07-24 Nicira, Inc. Distributed identity-based firewalls
US10324746B2 (en) 2015-11-03 2019-06-18 Nicira, Inc. Extended context delivery for context-based authorization
US10802857B2 (en) 2016-12-22 2020-10-13 Nicira, Inc. Collecting and processing contextual attributes on a host
CN109302346B (zh) * 2018-10-25 2020-09-18 网宿科技股份有限公司 一种传输数据流量的方法和装置
CN109831365B (zh) * 2018-12-27 2021-04-20 山东电力工程咨询院有限公司 组播式协议精准负荷控制系统及以太网通信流构建方法
WO2020214139A1 (en) * 2019-04-15 2020-10-22 Hewlett Packard Enterprise Development Lp Dynamic client balancing between branch gateways
US11539718B2 (en) 2020-01-10 2022-12-27 Vmware, Inc. Efficiently performing intrusion detection
US11570239B2 (en) * 2020-04-20 2023-01-31 Cisco Technology, Inc. Distributed resilient load-balancing for multipath transport protocols
US11108728B1 (en) * 2020-07-24 2021-08-31 Vmware, Inc. Fast distribution of port identifiers for rule processing
CN113472647B (zh) * 2021-06-11 2023-07-14 新华三信息安全技术有限公司 一种报文转发方法及装置
CN115550873A (zh) * 2021-06-30 2022-12-30 华为技术有限公司 通信方法和通信装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102368727A (zh) 2011-09-14 2012-03-07 杭州华三通信技术有限公司 跨ip网络的trill网络通信方法、系统和设备

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6944168B2 (en) * 2001-05-04 2005-09-13 Slt Logic Llc System and method for providing transformation of multi-protocol packets in a data stream
US8761022B2 (en) * 2007-12-26 2014-06-24 Rockstar Consortium Us Lp Tie-breaking in shortest path determination
US9338083B2 (en) * 2007-12-28 2016-05-10 At&T Intellectual Property I, Lp ECMP path tracing in an MPLS enabled network
US8611352B2 (en) * 2010-04-20 2013-12-17 Marvell World Trade Ltd. System and method for adapting a packet processing pipeline
US8499093B2 (en) * 2010-05-14 2013-07-30 Extreme Networks, Inc. Methods, systems, and computer readable media for stateless load balancing of network traffic flows
US10033650B2 (en) * 2010-06-08 2018-07-24 Brocade Communication Systems Llc Preserving quality of service across trill networks
US8711703B2 (en) * 2010-10-29 2014-04-29 Telefonaktiebolaget L M Ericsson (Publ) Load balancing in shortest-path-bridging networks
US8634297B2 (en) * 2010-11-01 2014-01-21 Cisco Technology, Inc. Probing specific customer flow in layer-2 multipath networks
CN102075360A (zh) * 2011-01-19 2011-05-25 中国人民解放军信息工程大学 基于聚合等价类的网络故障分布式处理方法
CN102684985B (zh) * 2011-03-17 2017-03-29 中兴通讯股份有限公司 一种多链接互连网络分域互连的方法和系统
US8755383B2 (en) * 2011-03-21 2014-06-17 Avaya, Inc. Usage of masked ethernet addresses between transparent interconnect of lots of links (TRILL) routing bridges
US9270572B2 (en) * 2011-05-02 2016-02-23 Brocade Communications Systems Inc. Layer-3 support in TRILL networks
CN102185782B (zh) * 2011-05-17 2014-04-02 福建星网锐捷网络有限公司 多链接透明传输互连网络的数据发送方法及其装置
CN102891764B (zh) * 2011-07-22 2017-10-10 中兴通讯股份有限公司 一种路由网桥维护信息的方法及系统
US9699117B2 (en) * 2011-11-08 2017-07-04 Brocade Communications Systems, Inc. Integrated fibre channel support in an ethernet fabric switch
US8717944B2 (en) * 2012-08-23 2014-05-06 Cisco Technology, Inc. TRILL optimal forwarding and traffic engineered multipathing in cloud switching
CN103259727B (zh) * 2012-08-31 2016-12-28 杭州华三通信技术有限公司 一种报文转发方法及设备
JP5958293B2 (ja) * 2012-11-14 2016-07-27 富士通株式会社 通信方法、通信プログラム、および、ノード装置
CN103078804B (zh) * 2012-12-28 2015-07-22 福建星网锐捷网络有限公司 等价多路径表处理方法、装置及网络设备
CN103220215B (zh) * 2013-04-25 2015-10-07 杭州华三通信技术有限公司 TRILL网络中FCoE报文的转发方法和装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102368727A (zh) 2011-09-14 2012-03-07 杭州华三通信技术有限公司 跨ip网络的trill网络通信方法、系统和设备

Also Published As

Publication number Publication date
WO2015014311A1 (en) 2015-02-05
EP3028434A1 (en) 2016-06-08
CN104348717A (zh) 2015-02-11
CN104348717B (zh) 2018-05-11
EP3028434A4 (en) 2016-11-23
EP3028434B1 (en) 2018-06-13
KR20160003327A (ko) 2016-01-08
US20160142287A1 (en) 2016-05-19

Similar Documents

Publication Publication Date Title
KR101613640B1 (ko) 패킷 포워딩
US20200296025A1 (en) Route Processing Method and Apparatus, and Data Transmission Method and Apparatus
US10305696B2 (en) Group bundling priority dissemination through link-state routing protocol in a network environment
US10050877B2 (en) Packet forwarding method and apparatus
US8995444B2 (en) Method and system for extending routing domain to non-routing end stations
US20150023352A1 (en) Implement equal cost multiple path of trill network
US10397023B2 (en) Packet forwarding
US20120163164A1 (en) Method and system for remote load balancing in high-availability networks
US9019976B2 (en) Redundant host connection in a routed network
US9036637B2 (en) Message transmission in virtual private networks
US8694664B2 (en) Active-active multi-homing support for overlay transport protocol
US10110465B2 (en) Distributed HSRP gateway in VxLAN flood and learn environment with faster convergence
US8902794B2 (en) System and method for providing N-way link-state routing redundancy without peer links in a network environment
Eastlake 3rd et al. Routing bridges (rbridges): Adjacency
WO2013000326A1 (zh) 多链接透明互连网络中数据的传输方法及系统
CN105530189B (zh) Trill网络中转发报文的方法和路由桥
CN116886663A (zh) 基于rfc 8317的e-tree实现方式、装置和通信设备
WO2014026584A1 (zh) Trill网络互联方法、系统及设备
Eastlake 3rd et al. Transparent Interconnection of Lots of Links (TRILL): Adjacency
Hao et al. Transparent Interconnection of Lots of Links (TRILL) Distributed Layer 3 Gateway
Eastlake 3rd et al. RFC 6327: Routing Bridges (RBridges): Adjacency

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant