KR20230101903A - Bier 패킷 포워딩 방법, 디바이스 및 시스템 - Google Patents

Bier 패킷 포워딩 방법, 디바이스 및 시스템 Download PDF

Info

Publication number
KR20230101903A
KR20230101903A KR1020237019574A KR20237019574A KR20230101903A KR 20230101903 A KR20230101903 A KR 20230101903A KR 1020237019574 A KR1020237019574 A KR 1020237019574A KR 20237019574 A KR20237019574 A KR 20237019574A KR 20230101903 A KR20230101903 A KR 20230101903A
Authority
KR
South Korea
Prior art keywords
bier
network device
packet
service identifier
header
Prior art date
Application number
KR1020237019574A
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 KR20230101903A publication Critical patent/KR20230101903A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/12Arrangements for remote connection or disconnection of substations or of equipment thereof
    • 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/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical 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/16Multipoint 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/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/74Address processing for 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/74Address processing for routing
    • H04L45/741Routing in networks with a plurality of addressing schemes, e.g. with both IPv4 and IPv6
    • 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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/201Multicast operation; Broadcast operation

Landscapes

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

Abstract

본 출원은 BIER 패킷 포워딩 방법, 디바이스 및 시스템을 제공한다. 방법은 다음을 포함한다: 제1 네트워크 디바이스가 제2 네트워크 디바이스에 의해 송신된 BIER 패킷을 수신하고, 여기서 BIER 패킷은 IPv6 헤더, BIER 헤더 및 멀티캐스트 패킷을 포함하고, IPv6 헤더의 목적지 주소 또는 BIER 헤더의 제1 필드는 서비스 식별자를 전달하며 서비스 식별자는 가상 사설망(VPN) 인스턴스를 식별한다. 제1 네트워크 디바이스는 서비스 식별자 및 제1 대응관계에 기초하여 VRF 테이블을 결정하고, 여기서 제1 대응관계는 서비스 식별자와 VRF 테이블 간의 대응관계를 포함한다. 제1 네트워크 디바이스는 VRF 테이블에 기초하여 VRF 테이블의 제1 고객 에지(CE) 디바이스로 멀티캐스트 패킷을 송신한다. 본원에서 제공하는 기술 솔루션에 따르면 출구 에지 디바이스가 VPN 인스턴스를 식별할 때 구현이 비교적 간단할 수 있다.

Description

BIER 패킷 포워딩 방법, 디바이스 및 시스템
본 출원은 2020년 11월 11일에 출원된 "BIER PACKET FORWARDING METHOD, DEVICE, AND SYSTEM"이라는 제목의 중국 특허 출원 번호 202011250272.9에 대한 우선권을 주장하며, 그 전체 내용이 참조로 여기에 포함된다.
기술 분야
본 출원은 네트워크 통신 분야에 관한 것으로, 보다 상세하게는 패킷 포워딩 방법, 디바이스 및 시스템에 관한 것이다.
인터넷 프로토콜(internet protocol, IP) 멀티캐스트 기술은 IP 네트워크에서 효율적인 점대다점(point-to-multipoint) 데이터 전송을 구현하여 네트워크 대역폭을 효과적으로 줄이고 네트워크 부하를 감소시킬 수 있다. 따라서 멀티캐스트 패킷 포워딩 경로를 구성하기 위한 새로운 기술이 업계에서 제안되고 있으며 이를 비트 인덱스 명시적 복제(bit index explicit replication, BIER) 기술이라고 한다. 이 기술은 멀티캐스트 분배 트리를 구성할 필요가 없는 새로운 멀티캐스트 기술 아키텍처를 제안한다.
BIER 패킷을 수신한 후, BIER 도메인의 출구 디바이스(egress device)는 멀티캐스트 패킷이 속한 가상 사설망(virtual private network, VPN) 인스턴스를 결정해야 하며, VPN 인스턴스에 기초하여 VPN 인스턴스에 대응하는 가상 경로 포워딩(virtual route forwarding, VRF) 테이블을 결정하고, 원본 멀티캐스트 패킷의 정보(예: 원본 멀티캐스트 패킷의 목적지 주소) 및 VRF 테이블에 기초하여 VRF 테이블의 다음 홉(hop)으로 멀티캐스트 패킷을 전달한다.
관련 기술 솔루션에서, 서비스 식별자(VPN 인스턴스를 식별함)는 MPLS 레이블에 포함된다. BIER 패킷에는 하나의 MPLS 레이블 계층이 포함되어 있기 때문에 네트워크 차원의 MPLS 제거를 구현할 수 없으며, 이는 디바이스에 대해 더 복잡해진다.
다른 관련 기술 솔루션에서, 외부 인터넷 프로토콜 버전 6(internet protocol version 6, IPv6) 헤더에서 상이한 소스 주소(source address, SA)를 사용하여 상이한 VPN 인스턴스를 식별한다. 소스 IPv6 주소를 사용하여 VPN 인스턴스를 식별하는 경우 VPN 인스턴스 식별에 필요한 소스 IPv6 주소를 관리 및 할당해야 한다.
본 출원은 BIER 패킷 포워딩 방법, 디바이스 및 시스템을 제공하므로, 출구 에지 디바이스가 VPN 인스턴스를 식별할 때 구현이 비교적 간단할 수 있다.
제1 측면에 따르면, 패킷 포워딩 방법이 제공된다. 방법은 다음을 포함한다: 제1 네트워크 디바이스가, 제2 네트워크 디바이스에 의해 송신된 BIER 패킷을 수신하고, 여기서 BIER 패킷은 인터넷 프로토콜 버전 6(IPv6) 헤더, 비트 인덱스 명시적 복제(BIER) 헤더 및 멀티캐스트 패킷을 포함하며, IPv6 헤더의 목적지 주소 또는 BIER 헤더의 제1 필드는 서비스 식별자를 전달하고 서비스 식별자는 가상 사설망(VPN) 인스턴스를 식별한다. 제1 네트워크 디바이스는, 서비스 식별자 및 서비스 식별자와 VRF(virtual route forwarding) 테이블 간의 대응관계를 포함하는 제1 대응관계에 기초하여 VRF 테이블을 결정한다. 제1 네트워크 디바이스는 VRF 테이블에 기초하여 VRF 테이블의 제1 고객 에지(CE) 디바이스로 멀티캐스트 패킷을 송신한다.
전술한 기술 솔루션에서, IPv6 헤더의 목적지 주소 또는 BIER 패킷의 BIER 헤더의 제1 필드는 서비스 식별자를 전달하므로 VPN 인스턴스를 식별하는 데 필요한 소스 IPv6 주소가 관리 및 할당되며, 추가 MPLS 레이블 계층도 추가할 필요가 없다. 따라서 구현이 비교적 간단하고 디바이스 구현 복잡성이 줄어든다.
가능한 구현에서, 서비스 식별자는 IPv6 헤더의 목적지 주소의 일부 비트에 실리고, 목적지 주소는 BIER 패킷에 대한 BIER 포워딩 수행을 지시한다.
다른 가능한 구현에서, 목적지 주소의 일부 비트는 목적지 주소의 인수 부분이다.
다른 가능한 구현에서, BIER 헤더의 제1 필드는 차등 서비스 코드 포인트(DSCP) 필드, 비트 포워딩 입구 라우터 식별자(BFIR-id) 필드 및 프로토콜(proto) 필드 중 하나 이상 또는 이들의 조합이다.
다른 가능한 구현에서, 방법은 다음을 더 포함한다: 제1 네트워크 디바이스가 서비스 식별자와 VRF 테이블 사이의 대응관계를 포함하는 컨트롤 패킷을 수신한다. 제1 네트워크 디바이스가 서비스 식별자와 VRF 테이블 간의 대응관계를 저장한다.
다른 가능한 구현에서, 제1 네트워크 디바이스는 IPv6 헤더의 소스 주소, 서비스 식별자 및 제1 대응관계에 기초하여 VRF 테이블을 결정한다.
제2 측면에 따르면, BIER(bit index explicit replication) 패킷 포워딩 방법이 제공된다. 이 방법은 다음을 포함한다: 제2 네트워크 디바이스가 멀티캐스트 패킷을 획득한다. 제2 네트워크 디바이스는 멀티캐스트 패킷이 속한 VPN(virtual private network) 인스턴스에 기초하여 멀티캐스트 패킷을 캡슐화하여 BIER 패킷을 획득하고, 여기서 BIER 패킷은 IPv6(internet protocol version 6) 헤더, BIER(bit index explicit replication) 헤더 및 멀티캐스트 패킷을 포함하고, IPv6 헤더의 목적지 주소 또는 BIER 헤더의 제1 필드는 서비스 식별자를 전달하고 서비스 식별자는 VPN 인스턴스를 식별한다. 제2 네트워크 디바이스는 BIER 패킷을 제1 네트워크 디바이스로 송신한다.
다른 가능한 구현에서, 서비스 식별자는 IPv6 헤더의 목적지 주소의 일부 비트에 실리고, 목적지 주소는 BIER 패킷에 대해 BIER 포워딩을 수행할 제1 네트워크 디바이스를 나타낸다.
다른 가능한 구현에서, 목적지 주소의 일부 비트는 목적지 주소의 인수 부분이다.
다른 가능한 구현에서, BIER 헤더의 제1 필드는 DSCP(differentiated services code point) 필드, BFIR-id(bit forwarding ingress router identifier) 필드 및 프로토콜(proto) 필드 중 어느 하나 또는 이들의 조합이다.
다른 가능한 구현에서, 방법은 다음을 더 포함한다: 제2 네트워크 디바이스에 의해 서비스 식별자를 VPN 인스턴스에 할당한다. 제2 네트워크 디바이스에 의해 제1 대응관계를 설정하고, 여기서 제1 대응관계는 서비스 식별자와 VPN 인스턴스에 대응하는 VRF 테이블 간의 대응관계를 포함한다.
또 다른 가능한 구현에서, 방법은 다음을 더 포함한다: 제2 네트워크 디바이스가 컨트롤 패킷을 제1 네트워크 디바이스로 송신하고, 여기서 컨트롤 패킷은 서비스 식별자와 VRF 테이블 간의 대응관계를 포함한다.
또 다른 가능한 구현에서, 컨트롤 패킷은 경계 게이트웨이 프로토콜(BGP) 패킷이다.
제2 측면 및 제2 측면의 가능한 구현 중 어느 하나의 유익한 효과는 제1 측면 및 제1 측면의 가능한 구현 중 어느 하나의 유익한 효과에 대응한다. 세부사항이 여기에 다시 기술되지 않는다.
제3 측면에 따르면 제1 네트워크 디바이스가 제공되며, 이는 수신 모듈, 처리 모듈 및 송신 모듈을 포함한다.
수신 모듈은 제2 네트워크 디바이스에 의해 송신된 BIER 패킷을 수신하도록 구성되고, 여기서 BIER 패킷은 인터넷 프로토콜 버전 6(IPv6) 헤더, 비트 인덱스 명시적 복제(BIER) 헤더 및 멀티캐스트 패킷을 포함하고, IPv6 헤더의 목적지 주소 또는 BIER 헤더의 제1 필드는 서비스 식별자를 전달하며 서비스 식별자는 가상 사설망(VPN) 인스턴스를 식별한다.
처리 모듈은 서비스 식별자 및 제1 대응관계에 기초하여 VRF(virtual route forwarding) 테이블을 결정하도록 구성되고, 여기서 제1 대응관계는 서비스 식별자와 VRF 테이블 간의 대응관계를 포함한다.
송신 모듈은 VRF 테이블에 기초하여 VRF 테이블의 제1 고객 에지(CE) 디바이스에 멀티캐스트 패킷을 송신하도록 구성된다.
가능한 구현에서, 서비스 식별자는 IPv6 헤더의 목적지 주소의 일부 비트에 실리고, 목적지 주소는 BIER 패킷에 대한 BIER 포워딩을 수행할 것을 나타낸다.
다른 가능한 구현에서, 목적지 주소의 일부 비트는 목적지 주소의 인수 부분이다.
다른 가능한 구현에서, BIER 헤더의 제1 필드는 DSCP(differentiated services code point) 필드, BFIR-id(bit forwarding ingress router identifier) 필드, BFIR-id(bit forwarding ingress router identifier) 필드 및 프로토콜(proto) 필드 중 어느 하나 또는 이들의 조합이다.
또 다른 가능한 구현에서, 수신 모듈은 컨트롤 패킷을 수신하도록 더 구성되고, 여기서상기 컨트롤 패킷은 서비스 식별자와 VRF 테이블 간의 대응관계를 포함하며, 처리 모듈은 서비스 식별자와 VRF 테이블 간의 대응관계를 저장하도록 더 구성된다.
또 다른 가능한 구현에서, 제1 대응관계는 소스 주소를 더 포함하고, 프로세싱 모듈은 구체적으로 IPv6 헤더의 소스 주소, 서비스 식별자 및 제1 대응관계에 기초하여 VRF 테이블을 결정하도록 구성된다.
제4 측면에 따라, 제2 네트워크 디바이스가 제공되고, 이는 수신 모듈, 처리 모듈 및 송신 모듈을 포함한다.
수신 모듈은 멀티캐스트 패킷을 획득하도록 구성된다.
처리 모듈은 BIER 패킷을 획득하기 위해 멀티캐스트 패킷이 속하는 VPN(virtual private network) 인스턴스에 기초하여 멀티캐스트 패킷을 캡슐화하도록 구성되고, 여기서, BIER 패킷은 IPv6 헤더, BIER 헤더 및 멀티캐스트 패킷을 포함하고, IPv6 헤더의 목적지 주소 또는 BIER 헤더의 제1 필드는 서비스 식별자를 전달하고 서비스 식별자는 VPN 인스턴스를 식별한다.
송신 모듈은 BIER 패킷을 제1 네트워크 디바이스에 송신하도록 구성된다.
가능한 구현에서, 서비스 식별자는 IPv6 헤더의 목적지 주소의 일부 비트에 실리고, 목적지 주소는 제1 네트워크 디바이스가 BIER 패킷에 대해 BIER 포워딩을 수행하도록 나타낸다.
다른 가능한 구현에서, 목적지 주소의 일부 비트는 목적지 주소의 인수 부분이다.
다른 가능한 구현에서, BIER 헤더의 제1 필드는 DSCP(differentiated services code point) 필드, BFIR-id(bit forwarding ingress router identifier) 필드 및 프로토콜(proto) 필드 중 어느 하나 또는 이들의 조합이다.
다른 가능한 구현에서, 처리 모듈은, 서비스 식별자를 VPN 인스턴스에 할당하고, 제1 대응관계를 설정하도록 더 구성되고, 여기서 제1 대응관계는 서비스 식별자와 VPN 인스턴스에 대응하는 VRF 테이블 간의 대응관계를 포함한다.
다른 가능한 구현에서, 송신 모듈은, 컨트롤 패킷을 제1 네트워크 디바이스에 송신하도록 더 구성되고, 컨트롤 패킷은 서비스 식별자와 VRF 테이블 간의 대응관계를 포함한다.
다른 가능한 구현에서, 컨트롤 패킷은 경계 게이트웨이 프로토콜(BGP) 패킷이다.
제5 측면에 따라, 제1 네트워크 디바이스가 제공된다. 제1 네트워크 디바이스는 전술한 방법으로 제1 네트워크 디바이스의 동작을 구현하는 기능을 갖는다. 이러한 기능은 하드웨어 기반으로 구현될 수도 있고 대응하는 소프트웨어를 실행하는 하드웨어 기반으로 구현될 수도 있다. 하드웨어 또는 소프트웨어는 전술한 기능에 대응하는 하나 이상의 모듈을 포함한다.
가능한 설계에서, 제1 네트워크 디바이스의 구조는 프로세서 및 인터페이스를 포함한다. 프로세서는 전술한 방법에서 대응하는 기능을 수행함에 있어서 제1 네트워크 디바이스를 지원하도록 구성된다. 인터페이스는 제2 네트워크 디바이스에 의해 송신된 BIER 패킷을 수신할 때 제1 네트워크 디바이스를 지원하도록 구성되거나, VRF 테이블에 기초하여 멀티캐스트 패킷을 VRF 테이블의 제1 고객 에지(CE) 디바이스로 송신할 시에 제1 네트워크 디바이스를 지원하도록 구성된다.
제1 네트워크 디바이스는 메모리를 더 포함할 수 있다. 메모리는 프로세서에 연결될 수 있으며, 제1 네트워크 디바이스에 필요한 프로그램 명령어 및 데이터를 저장할 수 있다.
다른 가능한 설계에서, 제1 네트워크 디바이스는 프로세서, 송신기, 수신기, 랜덤 액세스 메모리, 판독 전용 메모리 및 버스를 포함한다. 프로세서는 버스를 통해 송신기, 수신기, 랜덤 액세스 메모리 및 판독 전용 메모리에 별도로 연결된다. 제1 네트워크 디바이스를 실행해야 하는 경우 기본 입/출력 시스템 또는 판독 전용 메모리에 내장된 임베디드 시스템의 부트로더를 사용하여 시스템을 시작시키도록 부팅하여 제1 네트워크 디바이스를 부팅하여 정상 실행 상태로 진입하게 한다. 정상 실행 상태에 들어간 후, 제1 네트워크 디바이스는 랜덤 액세스 메모리에서 애플리케이션 및 운영 체제를 실행하고 이로써 프로세서는 제1 측면 또는 제1 측면의 가능한 구현 중 어느 하나에 따른 방법을 수행한다.
제6 측면에 따르면, 제1 네트워크 디바이스가 제공된다. 제1네트워크 디바이스는 메인 컨트롤 보드와 인터페이스 보드를 포함하며, 스위칭 보드를 더 포함할 수 있다. 제1 네트워크 디바이스는 제1 측면 또는 제1 측면의 가능한 구현 중 어느 하나에 따른 방법을 수행하도록 구성된다. 구체적으로, 제1 네트워크 디바이스는 제1 측면 또는 제1 측면의 가능한 구현 중 어느 하나에 따른 방법을 수행하도록 구성된 모듈을 포함한다.
제7 측면에 따르면, 제1 네트워크 디바이스가 제공된다. 제1 네트워크 디바이스는 컨트롤 모듈 및 제1 포워딩 서브 디바이스를 포함한다. 제1 포워딩 서브 디바이스는 인터페이스 보드를 포함하며, 스위칭 보드를 더 포함할 수 있다. 제1 포워딩 서브 디바이스는 제6 측면의 인터페이스 보드의 기능을 수행하도록 구성되고, 제6 측면의 스위칭 보드의 기능을 더 수행할 수 있다. 컨트롤 모듈은 수신기, 프로세서, 송신기, 랜덤 액세스 메모리, 판독 전용 메모리 및 버스를 포함한다. 프로세서는 버스를 통해 수신기, 송신기, 랜덤 액세스 메모리 및 판독 전용 메모리에 별도로 연결된다. 컨트롤 모듈을 실행해야 하는 경우 기본 입/출력 시스템 또는 판독 전용 메모리에 내장된 임베디드 시스템의 부트로더를 사용하여 시스템을 시작하도록 부팅하여 컨트롤 모듈을 부팅시켜 정상적인 실행 상태 진입시킨다. 정상 실행 상태에 들어간 후 컨트롤 모듈은 랜덤 액세스 메모리에서 애플리케이션 및 운영 체제를 실행하므로 프로세서가 제6 측면에서 메인 컨트롤 보드의 기능을 수행한다.
제1 네트워크 디바이스는 실제 응용 동안 임의의 수의 인터페이스, 프로세서 또는 메모리를 포함할 수 있음을 이해할 수 있다.
제8 측면에 따르면, 제2 네트워크 디바이스가 제공된다. 제2 네트워크 디바이스는 전술한 방법으로 제2 네트워크 디바이스의 동작을 구현하는 기능을 갖는다. 이러한 기능은 하드웨어 기반으로 구현될 수도 있거나, 대응하는 소프트웨어를 실행하는 하드웨어 기반으로 구현될 수도 있다. 하드웨어 또는 소프트웨어는 전술한 기능에 대응하는 하나 이상의 모듈을 포함한다.
가능한 설계에서, 제2 네트워크 디바이스의 구조는 프로세서 및 인터페이스를 포함한다. 프로세서는 전술한 방법에서 대응하는 기능을 수행함에 있어서 제2 네트워크 디바이스를 지원하도록 구성된다. 인터페이스는 멀티캐스트 패킷을 획득할 시 제2 네트워크 디바이스를 지원하도록 구성되거나, BIER 패킷을 제1 네트워크 디바이스로 송신할 시 제2 네트워크 디바이스를 지원하도록 구성된다.
제2 네트워크 디바이스는 메모리를 더 포함할 수 있다. 메모리는 프로세서에 결합될 수 있고, 제2 네트워크 디바이스에 필요한 프로그램 명령어 및 데이터를 저장할 수 있다.
다른 가능한 설계에서, 제2 네트워크 디바이스는 프로세서, 송신기, 수신기, 랜덤 액세스 메모리, 판독 전용 메모리 및 버스를 포함한다. 프로세서는 버스를 통해 송신기, 수신기, 랜덤 액세스 메모리 및 판독 전용 메모리에 별도로 연결된다. 제2 네트워크 디바이스를 실행해야 하는 경우 기본 입/출력 시스템 또는 판독 전용 메모리에 내장된 임베디드 시스템의 부트로더를 사용하여 시스템을 시작하도록 부팅하고 제2 네트워크 디바이스를 부팅하여 정상 실행 상태로 진입한다. 정상 실행 상태에 들어간 후, 제2 네트워크 디바이스는 랜덤 액세스 메모리에서 애플리케이션 및 운영 체제를 실행하므로 프로세서는 제2 측면 또는 제2 측면의 가능한 구현 중 어느 하나에 따른 방법을 수행한다.
제9 측면에 따르면, 제2 네트워크 디바이스가 제공된다. 제2 네트워크 디바이스는 메인 컨트롤 보드와 인터페이스 보드를 포함하며, 스위칭 보드를 더 포함할 수 있다. 제2 네트워크 디바이스는 제2 측면 또는 제2 측면의 가능한 구현 중 어느 하나에 따른 방법을 수행하도록 구성된다. 구체적으로, 제2 네트워크 디바이스는 제2 측면 또는 제2 측면의 가능한 구현 중 어느 하나에 따른 방법을 수행하도록 구성된 모듈을 포함한다.
제10 측면에 따르면, 제2 네트워크 디바이스가 제공된다. 제2 네트워크 디바이스는 컨트롤 모듈 및 제1 포워딩 서브 디바이스를 포함한다. 제1 포워딩 서브 디바이스는 인터페이스 보드를 포함하며, 스위칭 보드를 더 포함할 수 있다. 제1 포워딩 서브 디바이스는 제9 측면의 인터페이스 보드의 기능을 수행하도록 구성되고, 제9 측면의 스위칭 보드의 기능을 더 수행할 수 있다. 컨트롤 모듈은 수신기, 프로세서, 송신기, 랜덤 액세스 메모리, 판독 전용 메모리 및 버스를 포함한다. 프로세서는 버스를 통해 수신기, 송신기, 랜덤 액세스 메모리 및 판독 전용 메모리에 별도로 연결된다. 컨트롤 모듈을 실행해야 하는 경우 기본 입/출력 시스템 또는 판독 전용 메모리에 내장된 임베디드 시스템의 부트로더를 사용하여 시스템을 시작하도록 부팅하고 컨트롤 모듈을 부팅하여 정상 실행 상태로 진입한다. 정상 실행 상태에 들어간 후 컨트롤 모듈은 랜덤 액세스 메모리에서 애플리케이션 및 운영 체제를 실행하므로 프로세서는 제9 측면에서 메인 컨트롤 보드의 기능을 수행한다.
제2 네트워크 디바이스는 실제 응용 동안 임의의 수의 인터페이스, 프로세서 또는 메모리를 포함할 수 있음을 이해할 수 있다.
제11 측면에 따르면, 컴퓨터 프로그램 제품이 제공된다. 컴퓨터 프로그램 제품은 컴퓨터 프로그램 코드를 포함한다. 컴퓨터 프로그램 코드가 컴퓨터에서 실행되는 경우, 컴퓨터는 제1 측면 또는 제1 측면의 가능한 구현 중 어느 하나에 따른 방법을 수행할 수 있다.
제12 측면에 따르면, 컴퓨터 프로그램 제품이 제공된다. 컴퓨터 프로그램 제품은 컴퓨터 프로그램 코드를 포함한다. 컴퓨터 프로그램 코드가 컴퓨터에서 실행되는 경우, 컴퓨터는 제2 측면 또는 제2 측면의 가능한 구현 중 어느 하나에 따른 방법을 수행할 수 있다.
제13 측면에 따르면, 컴퓨터 판독가능 매체가 제공된다. 컴퓨터 판독 가능 매체는 프로그램 코드를 저장한다. 컴퓨터 프로그램 코드가 컴퓨터에서 실행되는 경우, 컴퓨터는 제1 측면 또는 제1 측면의 가능한 구현 중 어느 하나에 따른 방법을 수행할 수 있다. 컴퓨터 판독 가능 매체는 다음 중 하나 이상을 포함하지만 이에 제한되지 않는다: 판독 전용 메모리(read-only memory, ROM), 프로그램 가능 ROM(programmable ROM, PROM), 소거 가능 PROM(erasable PROM, EPROM), 플래시 메모리, 전기적로 EPROM(electrically EPROM, EEPROM) 및 하드 드라이브(hard drive).
제14 측면에 따르면, 컴퓨터 판독가능 매체가 제공된다. 컴퓨터 판독 가능 매체는 프로그램 코드를 저장한다. 컴퓨터 프로그램 코드가 컴퓨터에서 실행되는 경우, 컴퓨터는 제2 측면 또는 제2 측면의 가능한 구현 중 어느 하나에 따른 방법을 수행할 수 있다. 컴퓨터 판독 가능 매체는 다음 중 하나 이상을 포함하지만 이에 제한되지 않는다: 판독 전용 메모리(read-only memory, ROM), 프로그램 가능 ROM(programmable ROM, PROM), 소거 가능 PROM(erasable PROM, EPROM), 플래시 메모리, 전기적 EPROM(electrically EPROM, EEPROM) 및 하드 드라이브(hard drive).
제15 측면에 따르면, 칩이 제공된다. 칩은 프로세서 및 데이터 인터페이스를 포함하고, 프로세서는 데이터 인터페이스를 사용해서, 메모리에 저장된 명령어를 판독하여 제1 측면 또는 제1 측면의 가능한 구현예들 중 어느 하나에 따른 방법을 수행한다. 구체적인 구현 프로세스에 있어서, 칩은 중앙 처리 유닛(central processing unit, CPU), 마이크로 컨트롤러 유닛(micro controller unit, MCU), 마이크로 처리 유닛(micro processing unit, MPU), 디지털 신호 프로세서(digital signal processor, DSP), 시스템-온-칩(system-on-a-chip, SoC), 주문형 집적 회로(application-specific integrated circuit, ASIC), 필드 프로그램 가능 게이트 어레이(field programmable gate array, FPGA), 또는 프로그램 가능 논리 디바이스(programmable logic device, PLD)의 형태로 구현될 수 있다.
제16 측면에 따르면, 칩이 제공된다. 칩은 프로세서 및 데이터 인터페이스를 포함하고 프로세서는 데이터 인터페이스를 통해, 메모리에 저장된 명령어를 판독하여 제2 측면 또는 제2 측면의 가능한 구현예들 중 어느 하나에 따른 방법을 수행한다. 구체적인 구현 프로세스에 있어서, 칩은 중앙 처리 유닛(central processing unit, CPU), 마이크로 컨트롤러 유닛(micro controller unit, MCU), 마이크로 처리 유닛(micro processing unit, MPU), 디지털 신호 프로세서(digital signal processor, DSP), 시스템-온-칩(system-on-a-chip, SoC), 주문형 집적 회로(application-specific integrated circuit, ASIC), 필드 프로그램 가능 게이트 어레이(field programmable gate array, FPGA), 또는 프로그램 가능 논리 디바이스(programmable logic device, PLD)의 형태로 구현될 수 있다.
제17 측면에 따르면, 시스템이 제공된다. 시스템은 위의 제1 네트워크 디바이스 및 제2 디바이스를 포함한다.
도 1은 본원의 실시예에 따른 BIER 기술의 개략적인 네트워킹 다이어그램이다.
도 2는 본원의 실시예에 따른 BIERv6 캡슐화에서 가능한 패킷 포맷의 개략도이다.
도 3은 본원의 실시예에 따른 가능한 BIER 헤더 포맷의 개략도이다.
도 4는 다른 가능한 BIER 헤더 포맷의 개략적인 블록도이다.
도 5는 BIER 기술에 기초하여 BIER 포워딩 테이블을 구축하고 BIERv6 패킷을 포워딩하는 프로세스를 나타낸다.
도 6은 본원의 실시예에 따른 BIER 패킷 포워딩 방법의 개략적인 흐름도이다.
도 7은 본원의 실시예에 따른 다른 BIER 패킷 포워딩 방법의 개략적인 흐름도이다.
도 8은 본원의 실시예에 따른 제1 네트워크 디바이스(800)의 구조의 개략도이다.
도 9는 본원의 실시예에 따른 제2 네트워크 디바이스(900)의 구조의 개략도이다.
도 10은 본원의 실시예에 따른 제1 네트워크 디바이스(2000)의 하드웨어 구조의 개략도이다.
도 11은 본원의 실시예에 따른 다른 제1 네트워크 디바이스(2100)의 하드웨어 구조의 개략도이다.
도 12는 본원의 실시예에 따른 제2 네트워크 디바이스(2200)의 하드웨어 구조의 개략도이다. 그리고
도 13은 본원의 실시예에 따른 다른 제2 네트워크 디바이스(2300)의 하드웨어 구조의 개략도이다.
다음은 첨부된 도면을 참조하여 본 출원의 기술 솔루션을 설명한다.
모든 측면, 실시예 또는 특징은 복수의 디바이스, 컴포넌트, 모듈 등을 포함하는 시스템에 기초하여 본 출원에 제시된다. 각각의 시스템은 다른 디바이스, 컴포넌트, 모듈 등을 포함할 수 있고/있거나 첨부된 도면을 참조하여 논의된 모든 디바이스, 컴포넌트, 모듈 등을 포함하지 않을 수 있음을 이해해야 한다. 또한, 이러한 솔루션의 조합을 추가로 사용할 수 있다.
또한, 본원의 실시예에서 "예를 들어" 및 "~와 같은"과 같은 용어는 예, 예시 또는 설명을 제공하는 것을 나타낸다. 본 출원에서 "예(example)"로 기술된 실시예 또는 설계 방식은 다른 실시예 또는 설계 방식보다 더 바람직하거나 더 많은 이점을 갖는 것으로 설명되어서는 안 된다. 특히 "예"라는 용어는 특정 방식으로 개념을 나타낸다.
본원의 실시예들에서, "대응하는(corresponding, relevant)" 및 "상응하는(corresponding)"은 때때로 상호 교환될 수 있다. 차이점이 강조되지 않는 한 용어에 의해 표현된 의미는 일관성이 있다는 점에 유의해야 한다.
본원의 실시예에서 설명된 네트워크 아키텍처 및 서비스 시나리오는 본원의 실시예의 기술 솔루션을 보다 명확하게 설명하기 위한 것이며, 본원의 실시예에서 제공되는 기술 솔루션에 대한 제한을 구성하지 않는다. 당업자는 네트워크 아키텍처가 진화하고 새로운 서비스 시나리오가 출현함에 따라 본원의 실시예에서 제공되는 기술 솔루션이 유사한 기술 문제에도 적용될 수 있음을 알 수 있다.
본 명세서에서 설명된 "실시예", "일부 실시예" 등의 언급은 본 출원의 하나 이상의 실시예가 실시예를 참조하여 설명된 특정한 특징, 구조 또는 특성을 포함함을 나타낸다. 따라서, 본 명세서의 상이한 위치에 나타나는 "실시예에서", "일부 실시예에서", "일부 다른 실시예에서" 및 "다른 실시예에서"와 같은 진술은 반드시 동일한 실시예를 지칭하는 것을 의미하지 않는다. 대신, 다른 방식으로 달리 구체적으로 강조되지 않는 한, 해당 진술은 "모든 실시예는 아니지만 하나 이상의 실시예"을 의미한다. 용어 "포함하다", "가지다" 및 이들의 변형은 모두 다른 방식으로 특별히 강조되지 않는 한 "포함하지만 이에 제한되지 않음"을 의미한다.
본 출원에서 "적어도 하나"는 하나 이상을 의미하고, "복수"는 둘 이상을 의미한다. 또한, "및/또는(and/or)"은 연관된 객체들 간의 연관 관계를 기술하며 세 가지 관계가 존재할 수 있음을 나타낸다. 예를 들어, A 및/또는 B는 다음 세 가지 경우를 나타낼 수 있다: A만 존재하고, A와 B가 모두 존재하며, B만 존재하는 경우, 여기서 A와 B는 단수 또는 복수일 수 있다. 문자 "/"는 일반적으로 연관된 개체 간의 "또는" 관계를 나타낸다. 또한, "다음 엔트리(개) 중 적어도 하나" 또는 이와 유사한 표현은 이러한 엔트리의 임의의 조합을 의미하며, 단수 엔트리(개) 또는 복수 엔트리(개)의 임의의 조합을 포함한다. 예를 들어, a, b 또는 c 중 적어도 하나는 a, b, c, a 및 b, a 및 c, b 및 c, 또는 a, b 및 c를 나타낼 수 있으며, 여기서 a, b 및 c는 단수이거나 복수일 수 있다.
멀티캐스트(multicast)는 전송 제어 프로토콜(transmission control protocol, TCP)/인터넷 프로토콜(internet protocol, IP) 네트워크에서 하나의 멀티캐스트 주소를 사용하여 동시에 복수의 수신자에게 효율적으로 데이터를 전송하는 데이터 전송 방식이다. 멀티캐스트 소스는 네트워크의 링크를 통해 멀티캐스트 그룹의 멀티캐스트 그룹 구성원에게 멀티캐스트 트래픽을 보내고, 멀티캐스트 그룹의 각 멀티캐스트 그룹 구성원은 멀티캐스트 트래픽을 수신할 수 있다. 멀티캐스트 전송 모드는 멀티캐스트 소스와 멀티캐스트 그룹 구성원 간의 점대다점 데이터 연결을 구현한다. 멀티캐스트 트래픽은 각 네트워크 링크에서 한 번만 전송하면 되며 멀티캐스트 복제는 링크에 분기가 있는 경우에만 수행된다. 따라서 멀티캐스트 전송 모드는 데이터 전송 효율을 향상시키고 백본 네트워크의 혼잡 가능성을 줄인다
인터넷 프로토콜(internet protocol, IP) 멀티캐스트 기술은 IP 네트워크에서 효율적인 점대다점 데이터 전송을 구현하여 네트워크 대역폭을 효과적으로 줄이고 네트워크 부하를 줄일 수 있다. 따라서 IP 멀티캐스트 기술은 실시간 데이터 전송, 멀티미디어 회의, 데이터 복사, 인터넷 프로토콜 텔레비전(internet protocol television, IPTV), 게임, 시뮬레이션 등 다양한 분야에서 널리 사용되고 있다. 멀티캐스트 기술에서는, 멀티캐스트 프로토콜을 이용하여 컨트롤 플레인에 멀티캐스트 트리가 구성되고, 멀티캐스트 트리를 이용하여 네트워크 플레인의 로직을 트리 형태로 만들어 멀티캐스트 점대다점 데이터 포워딩을 구현한다. 배포 트리 구성을 코어로 사용하는 각 중간 디바이스는 복잡한 멀티캐스트 포워딩 정보 상태를 유지해야 한다. 네트워크 규모가 확장되고 멀티캐스트 패킷의 트래픽이 증가함에 따라 이러한 멀티캐스트 기술은 점점 더 높은 비용과 운영 및 유지 관리 문제에 직면해 있다.
따라서, 멀티캐스트 패킷 포워딩 경로를 구성하기 위한 새로운 기술이 업계에서 제안되고 있으며, 이를 비트 인덱스 명시적 복제(bit index explicit replication, BIER) 기술이라고 한다. 이 기술은 멀티캐스트 분배 트리를 구성할 필요가 없는 멀티캐스트 기술 아키텍처를 제안한다. 도 1에 도시된 바와 같이, BIER 기술을 지원하는 라우터를 비트 포워딩 라우터(Bit forwarding router, BFR)라고 한다. 사용자 멀티캐스트 패킷에 대해 BIER 캡슐화를 수행하는 BFR을 비트 포워딩 입구 라우터(bit forwarding ingress router, BFIR)라고 한다. BIER 패킷으로부터 디캡슐레이션을 통해 사용자 멀티캐스트 패킷을 획득하는 BFR을 비트 포워딩 출구 라우터(bit forwarding egress router, BFER)라고 한다. 하나 이상의 BFIR, 하나 이상의 BFR 및 하나 이상의 BFER로 형성된 멀티캐스트 포워딩 도메인을 BIER 도메인(BIER domain)이라고 한다. BFIR은 BIER 도메인의 입구에 위치하며, BIER 패킷을 포워딩하는 입구 노드로서 BIER 패킷을 캡슐화하는 역할을 한다. BFR은 BIER 도메인의 중간에 위치하며 BIER 패킷을 포워딩하는 중간 노드로서 BIER 패킷을 포워딩하는 역할을 한다. BFER은 BIER 도메인의 출구에 위치하며 BIER 패킷을 포워딩하는 출구 노드로서 BIER 패킷의 캡슐화 해제를 담당한다.
BIER 도메인의 BFIR 및 BFER은 BIER 도메인의 에지 BFR로도 지칭될 수 있음을 이해해야 한다.
이해를 돕기 위해 이하에서는 도 2 내지 도 5을 참조하여 관련 BIER 기술에 대해 상세히 설명한다.
BIER 도메인에서, BIER 서브 도메인(sub-domain, SD) 전체에서 전역적으로 고유한 비트 위치(bit position) 식별자가 에지 BFR에 대해 구성될 수 있다. 일례로 각 에지 BFR에 대해 BFR 식별자(BFR identifier, BFR ID)로서 값이 구성된다. 예를 들어, BFR ID는 1부터 256까지의 값일 수 있다. BIER 도메인의 모든 BFR ID는 비트 스트링(bit string)을 이룬다.
본 출원의 본 실시예에서, 원본 멀티캐스트 패킷이 BIER 도메인에서 전송될 때, 특정 BIER 헤더가 추가로 캡슐화될 필요가 있다. BIER 헤더에는 원본 멀티캐스트 패킷의 모든 목적지 디바이스가 비트 스트링을 사용하여 표시된다. BIER 도메인의 BFR은, 원본 멀티캐스트 패킷이 모든 목적지 주소로 송신될 수 있게 보장하도록 비트 인덱스 포워딩 테이블(bit index forwarding table, BIFT) 및 BIER 헤더에 포함된 비트 스트링에 기초하여 포워딩을 수행할 수 있다.
BIER 헤더 다음에 오는 원본 멀티캐스트 패킷은 인터넷 프로토콜 버전 6(internet protocol version 6, IPv6) 멀티캐스트 패킷이거나 인터넷 프로토콜 버전 4(internet protocol version 4, IPv4) 멀티캐스트 패킷일 수 있음을 이해해야 한다. 이는 본 출원에서 특별히 제한되지 않는다.
다양한 유형의 BIER 캡슐화가 있을 수 있다. 이는 본 출원에서 특별히 제한되지 않는다. 예에서, BIER 패킷은 다중 프로토콜 레이블 스위칭(multiprotocol label switching, MPLS)을 통해 캡슐화될 수 있으며, 이러한 유형의 캡슐화를 BIER-MPLS 캡슐화라고 할 수 있다. 다른 예로, BIER 패킷은 인터넷 프로토콜 버전 6(internet protocol version 6, IPv6)에 기초하여 캡슐화될 수 있으며, 이러한 유형의 캡슐화를 BIERv6 캡슐화라고 할 수 있다.
다음은 도 2를 참조하여 관련 BIERv6 캡슐화 기술에 대해 상세히 설명한다.
예를 들어, BIERv6 캡슐화에서의 패킷 포맷은 IPv6 헤더 + BIER 헤더 + 원본 멀티캐스트 패킷이다. BIER 헤더는 IPv6 확장 헤더에 포함될 수 있으며, 원본 멀티캐스트 패킷은 외부 IPv6 헤더의 페이로드(payload)로 사용된다.
이러한 캡슐화에서, IPv6 헤더와 BIER 헤더를 포함하는 IPv6 확장 헤더는 공동으로 내부 원본 멀티캐스트 패킷의 외부 패킷 헤더를 형성하고, 외부 패킷 헤더는 본원의 이 실시예에서 BIERv6 헤더로 지칭될 수도 있다.
BIER 헤더를 포함하는 IPv6 확장 헤더는 본원의 실시예에서 특별히 제한되지 않는다. 예를 들어, IPv6 확장 헤더는 목적지 옵션 헤더(destination options header, DOH)일 수 있다. 다른 예로, IPv6 확장 헤더는 라우팅 헤더(routing header, RH)일 수 있다.
도 2는 가능한 BIERv6 캡슐화의 개략적인 블록도이다. 도 2에 도시된 바와 같이, BIER 헤더는 IPv6 확장 헤더, 예를 들어 DOH에 위치할 수 있다.
DOH의 옵션은 유형-길이-값(type-length-value, TLV) 포맷임을 이해해야 한다. BIER 헤더는 DOH의 옵션 TLV에서 옵션 데이터로 사용된다. 옵션 TLV의 옵션 유형은 옵션 TLV의 포맷을 식별한다. 옵션 TLV의 옵션 길이는 옵션 TLV의 길이를 식별한다.
BIERv6 캡슐화에서, BIER 헤더가 비트 스트링(bit string) 필드를 포함한다면, 본원의 이 실시예에서 DOH 내의 BIER 헤더의 포맷은 특별히 제한되지 않는다는 점에 유의해야 한다. 다음은 도 3 및 4를 각각 참조하여 두 가지 가능한 BIER 헤더 포맷을 상세히 설명한다.
도 3은 가능한 BIER 헤더 포맷의 개략적인 블록도이다. 도 3에 도시된 바와 같이, BIER 헤더는 길이가 20비트인 비트 인덱스 포워딩 테이블 식별자(bit index forwarding table identifier, BIFT ID), 비트 스트링 길이(bit string length, BSL) 및 64비트(8바이트)의 길이를 갖는 다른 필드(예를 들어, BIER 헤더 다음에 오는 원본 멀티캐스트 패킷의 트래픽 클래스(traffic class, TC), 스택(stack, S), TTL(Time to Live) 필드, 엔트로피(entropy) 필드, 버전(version, Ver) 필드, 니블(nibble) 필드, 프로토콜(protocol, proto) 필드, 운영 관리 및 유지(operation management and maintenance, OAM) 필드 , 예약(reserved, Rsv) 필드 및 차등 서비스 코드 포인트(differentiated services code point, DSCP) 필드를 포함할 수 있으나 이에 한정되지 않는다.
BIER 헤더의 필드는 아래에서 별도로 자세히 설명한다.
(1) BIFT ID 필드
BIFT ID 필드는 20비트의 길이를 가지며, BIER-MPLS 캡슐화에서 다중 프로토콜 레이블 스위칭(multiprotocol label switching, MPLS) 레이블(label, L)이다. MPLS 레이블은 BIER 레이블로 지칭될 수 있다. BIER 레이블 다음의 TC/S/TTL 필드와 같은 필드에는 표준 레이블 코딩 포맷이 있다. TC/S/TTL 필드와 같은 필드는 아래에서 별도로 설명하며, 여기서는 상세한 설명을 생략한다.
BIFT ID는 BIFT-id일 수 있으며, 서브 도메인(sub-domain, SD)/비트 스트링 길이(bit string length, BSL)/세트 식별자(set identifier, SI)의 조합을 포함할 수 있다. 상이한 BIFT ID는 SD/BSL/SI의 상이한 조합에 대응할 수 있다.
서로 다른 BIFT ID가 SD/BSL/SI의 서로 다른 조합에 매핑될 수 있음을 이해해야 한다. 도 2에 도시된 BIER 헤더 포맷은, SD/BSL/SI 필드를 직접 포함하지 않는다. SD 필드, BSL 필드, SI 필드는 3개의 implicit 필드로, BIFT ID 필드에 기초하여 한 매핑을 통해 SD/BSL/SI 값을 획득해야 한다.
1. 서브 도메인(sub-domain, SD)
하나의 BIER 도메인은 서로 다른 서브 도메인 SD로 구분될 수 있으며, 서브 도메인 SD는 실제 서비스 시나리오의 요구 사항에 따라 구성되어 내부 게이트웨이 프로토콜(interior gateway protocol, IGP)의 다중 토폴로지 기능 등을 지원한다. 각각의 BIER 도메인은 적어도 하나의 서브 도메인, 즉 기본 서브 도메인 0을 포함해야 한다. BIER 도메인을 여러 개의 서브 도메인으로 나눌 때 BIER 도메인의 각 BFR 라우터에 대해 모든 서브 도메인을 구성해야 한다. 예를 들어, BIER 도메인의 각 BFR 라우터에 대해, 서브도메인 0을 구성할 수 있고 시스템의 기본 토폴로지를 사용하며, 이후에 서브도메인 1이 구성될 수 있고 멀티캐스트 토폴로지가 사용된다.
각각의 서브도메인 SD는 서브도메인 식별자(sub-domain identifier, SD-ID)로 표현된다. 예를 들어, SD-ID의 값은 [0-255]이고 SD-ID의 길이는 8비트이다. 일례로, BIER 도메인은 서로 다른 가상 사설망(virtual private network, VPN)에 기초하여 서로 다른 SD로 구성될 수 있으며, 서로 다른 VPN은 서로 다른 SD를 사용하도록 설정될 수 있다. 예를 들어 VPN 1은 SD 0을 사용하고 VPN 2는 SD 1을 사용한다.
복수의 VPN이 대안적으로 동일한 SD를 사용할 수 있다는 점에 유의해야 한다. BIER 도메인의 서로 다른 SD는 하나의 내부 게이트웨이 프로토콜(interior gateway protocol, IGP) 프로세스 또는 토폴로지에 있거나, 하나의 IGP 프로세스 또는 토폴로지에 있지 않을 수 있다. 이것은 본원의 실시예에서 특별히 제한되지 않는다.
2. 비트 스트링 길이(bit string length, BSL)
BSL은 BIER 헤더에 포함된 비트 스트링의 길이이다. 다양한 유형의 BSL이 있을 수 있다. 이것은 본원의 실시예에서 특별히 제한되지 않는다. 가장 작은 BSL은 64비트이다. BSL은 대안적으로 128비트, 256비트, 512비트, 1024비트 또는 2048비트일 수 있다. 가장 큰 BSL은 4096비트이다. 구체적으로, BSL은 패킷에서 4비트로 식별된다. 예를 들어, BSL이 64비트인 경우 BSL은 패킷에서 0001로 식별되고, BSL이 128비트인 경우 BSL은 패킷에서 0010으로 식별되며, BSL이 512비트인 경우 BSL은 패킷에서 0100으로 식별되며, BSL이 1024비트일 때 BSL은 패킷에서 0101로 식별되는 등이다.
3. 세트 식별자(set identifier, SI)
네트워크에서 BFER 디바이스의 수량이 256보다 큰 경우, 이러한 사례를 적용하기 위해 BIER 캡슐화에는 비트 스트링뿐만 아니라 세트 식별자(set identifier, SI)도 포함된다. SI는 더 큰 규모의 네트워크 주소 지정을 지원하기 위해 BIER 디바이스의 수를 서로 다른 복수의 간격으로 나누는 데 사용된다.
SI는 네트워크에서 복수의 에지 BFR을 포함하거나 구성된 BFR ID를 포함하는 세트로 이해될 수 있다. 예를 들어, BSL은 256비트이지만 네트워크에 256개 이상의 에지 BFR이 있거나 256개 이상의 구성된 BFR ID가 있다. 이 경우 이러한 에지 BFR 또는 BFR ID는 서로 다른 세트로 분류되어야 한다. 예를 들어, BFR ID 범위가 1 내지 256인 256개의 에지 BFR은 세트 0(세트 인덱스가 0이거나 SI가 0임)이고, BFR ID 범위가 257 내지 512인 256개의 에지 BFR은 세트 1(세트 인덱스가 1이거나 SI가 1임)이다.
BIER 패킷을 수신한 후, BIER 도메인의 BFR은 BIER 헤더의 BIFT ID에 기초하여 BIER 패킷이 속한 특정 SD, 사용된 BSL 및 세트를 구성하고 패킷이 속하는 BSL의 특정 SI를 결정할 수 있다.
몇 가지 가능한 BIFT ID로 표현되는 SD/BSL/SI의 대응하는 조합이 아래에 열거되어 있다:
BIFT ID = 1: SD 0, BSL 256, SI 0에 해당//SD 0/BSL 256/SI 0과 동일;
BIFT ID = 2: SD 0, BSL 256, SI 1에 해당 //SD 0/BSL 256/SI 1과 동일;
BIFT ID = 3: SD 0, BSL 256, SI 2에 해당 //SD 0/BSL 256/SI 2과 동일;
BIFT ID = 4: SD 0, BSL 256, SI 3에 해당 //SD 0/BSL 256/SI 3과 동일;
BIFT ID = 5: SD 0, BSL 512, SI 0에 해당//SD 0/BSL 512/SI 0과 동일;
BIFT ID = 6: SD 0, BSL 512, SI 1에 해당 //SD 0/BSL 512/SI 1과 동일;
BIFT ID = 7: SD 1, BSL 256, SI 0에 해당//SD 1/BSL 256/SI 0과 동일;
BIFT ID = 8: SD 1, BSL 256, SI 1에 해당 //SD 1/BSL 256/SI 1과 동일;
BIFT ID = 9: SD 1, BSL 256, SI 2에 해당 //SD 1/BSL 256/SI 2과 동일;
BIFT ID = 10: SD 1, BSL 256, SI 3에 해당 //SD 1/BSL 256/SI 3과 동일;
BIFT ID = 11: SD 1, BSL 512, SI 0에 해당//SD 1/BSL 512/SI 0과 동일; 및
BIFT ID = 12: SD 1, BSL 512, SI 1에 해당 //SD 1/BSL 512/SI 1과 동일.
BIFT ID 필드의 값은 삼중항 <SD, BSL, SI>에 해당함을 유의해야 한다. BIFT-id 필드에 기초하여 고유한 <SD, BSL, SI> 정보를 얻을 수 있다. <SD, BSL, SI> 정보는 다음과 같은 기능을 갖는다: BSL에 기초하여 BIER 패킷 헤더의 비트 스트링 길이를 구하여 전체 BIER 패킷 헤더의 길이를 알 수 있다. 비트 스트링이 1에서 256까지의 BFR-ID를 나타내는지 또는 257에서 512까지의 BFR-ID를 나타내는지는 BSL 및 SI 정보에 기초하여 학습될 수 있다. 해당 포워딩 테이블은 SD에 대한 정보에 기초하여 찾을 수 있다.
(2) 비트 스트링(bit string) 필드
비트 스트링의 각 비트는 에지 BFR을 식별한다. 예를 들어, 비트 스트링의 하위 비트(가장 오른쪽)에 있는 비트는 BFR-ID가 1인 BFER을 식별한다. 비트 스트링의 오른쪽에서 왼쪽으로 두 번째 비트는 BFR-ID가 2인 BFER을 식별한다. 포워딩 플레인에 의해 수행되는 포워딩이 기반이 되는 포워딩 엔트리의 경우, 패킷이 송신될 여러 특정 BFER은 패킷의 비트 스트링에 기초하여 결정된다. BIER 패킷 헤더를 포함하는 BIER 패킷을 수신하면 BIER 도메인의 BFR은 BIER 헤더에 실린 비트 스트링과 BIFT ID에 기초하여 BIER 패킷을 전달한다.
비트의 값 1은 패킷이 BFR-ID에 의해 표현된 BFER 디바이스로 송신될 필요가 있음을 나타내고, 비트의 값 0은 패킷이 BFR-ID로 표시되는 BFER 디바이스에 송신될 필요가 없음을 나타낸다는 점에 유의해야 한다.
예를 들어, BIFT ID = 2. BIER 패킷을 수신한 후, BFR은 BIER 헤더의 BIFT ID에 기초하여 BIER 패킷이 SD 0에 속하고, BIER 헤더에서 사용되는 BSL이 256비트이며, BFR ID는 세트 1(BFR ID 범위가 257 내지 512인 256개의 에지 BFR을 포함하는 세트)에 속한다.
(3) 전송 클래스(트래픽 클래스, TC) 필드
트래픽 클래스 필드는 패킷의 우선순위를 식별한다.
(4) 스택(stack, S)
S는 스택 바닥 플래그이다. 플래그의 값은 BIER 패킷 헤더에서 1이다. 즉, MPLS 레이블은 전체 레이블 스택의 스택 하단 레이블이다.
(5) 버전(version, Ver) 필드
버전 필드는 4비트의 길이를 가지며 IP 버전 번호이다. 값 4는 IPv4를 나타내고 값 6은 IPv6을 나타낸다.
(6) 엔트로피(entropy) 필드
엔트로피 필드는 로드 공유에 사용된다. BIER 포워딩 중에 등가 부하 공유가 수행될 수 있다. 이 경우 부하 공유 시, 동일한 엔트로피와 동일한 비트 스트링을 갖는 두 개의 BIER 패킷에 대해 동일한 경로를 선택해야 한다. 즉, 동일한 트래픽의 복수의 패킷은 동일한 엔트로피를 가지며, 상이한 트래픽의 복수의 패킷은 서로 다른 엔트로피를 갖는다. 패킷일 때 포워딩되는 경우, 엔트로피에 따라 서로 다른 트래픽이 서로 다른 링크에서 공유될 수 있으며, 동일한 트래픽의 복수의 패킷이 동일한 링크를 통과한다.
서로 다른 엔트로피가 서로 다른 트래픽을 식별하도록 보장하기 위해, 엔트로피를 할당할 때 BFIR 디바이스는 서로 다른 트래픽에 기초하여 서로 다른 엔트로피 레이블을 할당해야 하며 엔트로피는 반복될 수 없다.
(7) 프로토콜(protocol, proto) 필드
프로토콜 필드는 BIER 패킷 헤더 다음에 오는 페이로드(payload) 포맷을 식별한다. 예를 들어 값 4와 값 6은 각각 IPv4 패킷과 IPv6 패킷을 나타낸다. 값 2는 업스트림 할당 레이블이 있는 MPLS 패킷을 나타내며, BIER을 통해 멀티캐스트 가상 사설망(multicast virtual private network, MVPN)에서 사용되는 프로토 값이다. 업스트림 레이블을 사용하는 이유는 다음과 같다: 멀티캐스트는 점대다점 송신이다. 송신단의 공급자 에지(provider edge, PE) 디바이스는 제어 평면에서, 고유한 레이블을 할당하고 고유한 레이블을 수신단의 PE 디바이스로 보낼 수 있다. 송신단 PE 디바이스가 할당한 레이블은 데이터 패킷에서 사용되며, 수신단의 PE 디바이스에 의해 식별된다. 레이블은 수신단의 PE 디바이스가 할당하는 것이 아니라 송신단의 PE 디바이스가 할당하므로 상향 레이블이라고 한다.
(8) 니블(nibble)
니블 필드는 고정된 4비트 값 0101을 갖는다. 이 필드는 MPLS를 통해 전달되는 서비스를 구분하고 BIER, IPv4 및 IPv6를 구분하는 데 사용된다. 이는 MPLS 캡슐화 및 전달 중에 ECMP를 지원하기 위해 레이블 스택 다음의 IPv4 또는 IPv6 헤더가 때때로 확인되기 때문이다.
(9) BFIR-id
BFIR-id 필드는 BFIR의 BFR-ID를 나타낸다. BFIR 디바이스가 서브 도메인에서 BIER 패킷을 캡슐화하고 송신하는 경우 BFIR-id 필드는 서브 도메인에 있는 디바이스의 BFR-ID로 채워야 한다. BFIR-id는 멀티캐스트 흐름을 고유하게 결정하기 위해 멀티캐스트 흐름이 송신되는 특정 BFIR을 식별할 수 있다.
(10) 비트 스트링
비트 스트링 필드는 BIER 패킷의 목적지 디바이스 세트의 문자열을 나타낸다.
도 4는 다른 가능한 BIER 헤더 포맷의 개략적인 블록도이다. 도 3에 도시된 BIER 헤더 포맷과 비교하면, 도 4에 도시된 BIER 헤더 포맷은 BIFT-ID 필드를 포함하지 않고, SD 필드, BSL 필드 및 SI 필드의 3개의 필드를 포함한다. 즉, 도 4에 도시된 BIER 헤더 포맷은 도 4는 SD 필드, BSL 필드, SI 필드의 3개 필드를 직접 포함하며, BIFT ID 필드로부터 매핑을 통해 SD/BSL/SI 값을 획득할 필요는 없다.
도 3에 도시된 BIER 헤더 포맷에 포함된 필드는 도 2에 도시된 BIER 헤더 포맷에 포함된 필드 유사하다는 점에 유의해야 한다. 도 3에 도시된 BIER 헤더 포맷의 필드와 관련된 구체적인 설명은 도 2의 설명을 참조한다. 자세한 내용은 여기서 다시 설명하지 않는다.
외부 IPv6 헤더에 포함된 필드에 대해서는 이하에 상세히 설명한다.
버전(version, Ver) 필드: 버전 필드는 IP 버전 번호이며, 버전 필드의 값 6은 IPv6을 나타낸다.
트래픽 클래스(traffic class, TC) 필드: 트래픽 클래스 필드는 패킷의 우선순위를 식별한다.
플로우 레이블(flow label, FL) 필드: 동일한 트래픽의 복수의 패킷을 레이블링하기 위해 동일한 플로우 레이블이 사용될 수 있고, 상이한 트래픽의 복수의 패킷을 레이블링하기 위해 다른 플로우 레이블 값이 사용될 수 있다. 패킷이 포워딩될 때, 플로우 레이블에 따라 서로 다른 트래픽이 서로 다른 링크에서 공유될 수 있으며, 동일한 트래픽의 복수의 패킷이 동일한 링크를 통과한다. 즉, 흐름 레이블은 실시간 트래픽을 구분하기 위해 사용되며, 서로 다른 흐름 레이블은 서로 다른 데이터 흐름을 결정할 수 있다. 이러한 방식으로 BIER 도메인의 네트워크 디바이스는 흐름 레이블 필드에 기초하여 서로 다른 데이터 흐름을 보다 효율적으로 구분할 수 있다.
페이로드 길이(payload length, PL) 필드: 페이로드 길이 필드는 패킷의 길이를 나타낸다.
넥스트 헤더(next Header, NH) 필드: 넥스트 헤더 필드는 패킷의 넥스트 헤더의 종류를 나타내며, 예를 들어 IPv6 확장 헤더를 나타낼 수 있다.
홉 제한(hop Limit, HL) 필드: 홉 제한 필드는 패킷의 양에 대한 제한을 나타낸다.
소스 주소(source address, SA) 필드: 소스 주소 필드는 패킷의 소스 주소를 식별한다.
목적지 주소(destination address, DA) 필드: 목적지 주소 필드는 패킷의 목적지 주소를 식별한다.
다음은 BIER 기술에 기초하여 BIER 포워딩 테이블을 설정하고 BIER 패킷을 포워딩하는 프로세스를 구체적으로 설명하기 위해 도 5를 예로 들어 설명한다.
도 5에 도시된 BIER 도메인은 디바이스 A 내지 디바이스 F를 포함할 수 있다. 디바이스 A, 디바이스 D, 디바이스 E와 디바이스 F는 BIER 도메인의 에지 BFR이고, 디바이스 B와 디바이스 C는 BIER 중간 포워딩 디바이스이다. 구체적으로, 디바이스 A는 BIER 도메인의 입구에 위치하고, 원본의 멀티캐스트 패킷에 대한 BIER 캡슐화를 담당하며, 도 1의 BFIR에 해당한다. 디바이스 D, 디바이스 E, 디바이스 F는 BIER 도메인의 출구에 위치하며, BIER 패킷에서 디캡슐화를 통해 원본의 멀티캐스트 패킷을 얻는 역할을 하며, 도 1의 BFIR에 해당한다.
본원의 이 실시예에서, 고유한 BFR-ID는 각각의 BIER 도메인에서 에지 BFR에 할당될 수 있다. 예를 들어, 도 5에서, 디바이스 A, 디바이스 D, 디바이스 E, 디바이스 F에 설정된 BFR-ID는 각각 4, 1, 3, 2이다. 중간 포워딩 BFR(예를 들엉, 디바이스 B와 디바이스 C)에는 BFR-ID가 할당되지 않는다.
본원의 실시예에서, "ID" 및 "id"는 때때로 호환될 수 있음을 유의해야 한다. 차이점이 강조되지 않는 한 용어에 의해 표현된 의미는 일관성이 있다는 점에 유의해야 한다. 본 출원에서 BFR-ID는 도 5의 id를 의미할 수 있다.
IPv6 네트워크의 입구(ingress device)로 기능할 때, 멀티캐스트 소스(source, SRC)로부터 사용자 멀티캐스트 패킷을 수신한 후, 디바이스 A는 사용자 멀티캐스트 패킷을 BIERv6 헤더(즉, BIER 헤더를 포함하는 IPv6 확장 헤더 및 외부 IPv6 헤더)로 캡슐화하여 캡슐화된 BIERv6 패킷을 획득한다. IPv6 확장 헤더에 포함된 BIER 패킷 헤더는 목적지 디바이스 세트를 나타내는 비트 스트링을 전달한다.
BIER 헤더에서 트래픽의 모든 목적지 디바이스는 캡슐화된 비트 스트링을 사용하여 표시된다. 예를 들어, BFR-ID가 1인 디바이스 D에 해당하는 비트 스트링은 0001이고, BFR-ID가 2인 디바이스 F에 해당하는 비트 스트링은 0010이며, BFR-ID가 3인 디바이스 E에 해당하는 비트 스트링은 0100이고, BFR-ID가 4인 디바이스 A에 해당하는 비트 스트링은 1000이다.
BIER 도메인의 각 에지 BFR에 할당된 BFR-ID 값은 라우팅 프로토콜에 따라 BIER 도메인의 다른 BFR에 플러딩될 수 있음을 이해해야 한다. 플러딩된 BIER 정보는 에지 BFR의 IP 주소와 캡슐화 정보(encapsulation information)를 더 포함한다. 예를 들어, 디바이스 A의 플러딩된 BIER 정보는 디바이스 A의 IP 주소와 BIFT-id를 전달한다. BIER 도메인의 BFR(예를 들어, 도 5의 디바이스 F)은 플러딩된 BIER 정보에 기반하여 BIFT 엔트리를 설정할 수 있어, 도 5의 디바이스 F는 BIER 패킷을 수신한 후 설정된 BIFT 엔트리에 기초하여 BIER 패킷을 목적지 디바이스로 전달한다.
디바이스 A가 BFR-ID가 각각 1, 2, 3인 BFER에게 BIER 패킷을 송신해야 하는 경우, 디바이스 A는 먼저 BIER 패킷을 디바이스 A의 이웃(디바이스 B)에게 송신해야 한다. BFR-ID가 4인 에지 BFR은 디바이스 A이다. 디바이스 A에 의해 설정된 BIFT 엔트리는 다음과 같다:
forwarding entry 1: 이웃 (neighbor, Nbr) = B, 및 포워딩 비트 마스크 (forwarding bit mask, FBM) = 0111; 및
forwarding entry 2: Nbr* = A, 및 FBM = 1000.
포워딩 엔트리 1은 BIER 패킷의 비트 스트링의 오른쪽에서 왼쪽으로 제1 비트, 두 번째 비트, 세 번째 비트 중 어느 하나가 1일 때 BIER 패킷이 디바이스 A의 이웃(디바이스 B)에게 송신되는 것을 나타내고, 여기서 Nbr = B는 디바이스 A의 이웃이 디바이스 B임을 나타낸다.
포워딩 엔트리 2는 BIER 패킷에서 비트 스트링의 오른쪽에서 왼쪽으로 네 번째 비트가 1일 때 BIER 패킷이 디바이스 A로 송신되는 것을 나타낸다. 디바이스 A는 디바이스 A이므로, 디바이스는 A는 BIER 헤더를 제거하고 원본 멀티캐스트 패킷의 정보에 기초하여 포워딩을 수행한다. 포워딩 엔트리 2에서 *는 디바이스의 Nbr이 해당 디바이스임을 식별한다는 점에 유의해야 한다. 예를 들어, 디바이스 A에 대해 Nbr* = A는 디바이스 A의 주변 디바이스가 디바이스 A임을 나타낸다. 유사하게 도 5의 다른 디바이스는 또한 다른 디바이스의 이웃 디바이스에 기초하여 BIFT 엔트리를 설정할 수 있다. 다른 디바이스에 의해 설정된 BIFT 엔트리에 대해서는 도 5를 참조한다. 자세한 내용은 여기서 다시 설명하지 않는다.
원본 멀티캐스트 패킷을 수신한 후, BIER 도메인에서 진입 BFIR로 사용되는 디바이스 A는 원본 멀티캐스트 패킷 전에 BIER 헤더를 캡슐화한다. 설명의 용이함을 위해 디바이스 A는 아래에서 간략하게 입구 디바이스 A로 지칭된다는 것을 이해해야 한다. 예를 들어, 원본 멀티캐스트 패킷을 수신한 후, 입구 디바이스 A는 경계 게이트웨이 프로토콜(BGP) 메시지를 사용하여 플러딩된 BFR-ID에 기초하여 원본 멀티캐스트 패킷의 목적지 디바이스를 알 수 있다.
예를 들어, 원본 멀티캐스트 패킷의 수신자는 BFR-ID가 3인 목적지 디바이스 E, BFR-ID가 3인 목적지 디바이스 F 및 BFR-ID가 1인 목적지 디바이스 D이다. 입구 디바이스 A는 BIER 헤더의 비트 스트링을 0111로 캡슐화하고 캡슐화된 BIER 패킷을 포워딩 엔트리 1에 기초하여 이웃 디바이스 B로 전달한다. 송신 중 , IPv6 헤더의 목적지 주소 필드에 디바이스 B의 유니캐스트 주소(예를 들어, B::100)가 사용될 수 있다.
BIER 패킷을 수신한 후, 디바이스 B는 비트 스트링 0111 및 BIFT 엔트리에 기초하여 BIER 패킷이 디바이스 C 및 디바이스 E로 송신될 필요가 있다고 결정한다. 예를 들어, BIER 패킷을 디바이스 C에 송신할 때, 디바이스 B는 BIER 헤더의 비트 스트링(0111)과 BIFT 엔트리의 Nbr = C에 해당하는 FBM 필드에 대해 AND 연산을 수행할 수 있다. 본원의 이 실시예에서, AND 결과는 0011이다. 따라서 디바이스 B는 BIER 헤더의 비트 스트링을 0011로 수정하고, BIER 패킷을 디바이스 C로 보낼 수 있다. 보내는 동안 디바이스 C의 유니캐스트 주소(예, C::100)는 IPv6 헤더의 목적지 주소 필드에 사용될 수 있다. 또 다른 예로, 디바이스 B가 디바이스 E에게 BIER 패킷을 보낼 때, BIER 헤더의 비트 스트링은 0100으로 수정될 수 있다. 송신 중에, 디바이스 E의 유니캐스트 주소(예, E::100)는 IPv6 헤더의 목적지 주소 필드에 사용될 수 있다.
디바이스 E의 경우, 포워딩 테이블의 식별자 *에 기초하여 디바이스 E는, 이웃 디바이스 E가 디바이스 E라고 결정하기 때문에, BIER 도메인에서 출구 BFER로 사용되는 디바이스 E는 원본 멀티캐스트 패킷을 BIER 패킷에서 디캡슐레이션을 통해 획득하고 내부 원본 멀티캐스트 패킷의 정보(예: 원본 멀티캐스트 패킷의 목적지 주소)에 기초하여 멀티캐스트 패킷을 고객 에지 1(customer edge, CE 1)로 전달한다.
마찬가지로, 디바이스 C는 BIER 패킷 헤더 및 BIER 패킷 헤더의 비트 스트링에 대한 정보에 기초하여 디바이스 D 및 디바이스 F로 패킷을 송신한다. 송신 시, IPv6 헤더의 목적지 주소 필드에는 디바이스 D의 유니캐스트 주소(예: D::100)와 디바이스 F의 유니캐스트 주소(예: D::100)가 사용될 수 있다.
디바이스 D의 경우, 포워딩 테이블의 식별자 *에 기초하여 디바이스 D가 이웃 디바이스 D가 디바이스 D라고 결정하기 때문에, BIER 도메인에서 출구 BFER로 사용되는 디바이스 D는 BIER 패킷에서 디캡슐레이션을 통해 원본 멀티캐스트 패킷을 획득하고 내부 원본 멀티캐스트 패킷의 정보(예: 원본 멀티캐스트 패킷의 목적지 주소)에 기초하여 멀티캐스트 패킷을 CE 2로 전달한다.
디바이스 F의 경우, 포워딩 테이블의 식별자 *에 기초하여 디바이스 F가 이웃 디바이스 F가 디바이스 F라고 결정하기 때문에, BIER 도메인에서 출구 BFER로 사용되는 디바이스 F는 BIER 패킷에서 디캡슐레이션을 통해 원본 멀티캐스트 패킷을 획득하고 내부 원본 멀티캐스트 패킷의 정보(예: 원본 멀티캐스트 패킷의 목적지 주소)에 기초하여 멀티캐스트 패킷을 CE 3으로 전달한다.
구체적으로, BIER 패킷을 수신한 후, 디바이스 E와 같은 BIER 도메인의 출구 BFER은 멀티캐스트 패킷이 속하는 VPN 인스턴스를 결정할 필요가 있고, VPN 인스턴스에 기초하여 PN 인스턴스에 대응하는 가상 경로 포워딩(virtual route forwarding, VRF) 표을 결정하며, 원본 멀티캐스트 패킷의 정보(예: 원본 멀티캐스트 패킷의 목적지 주소) 및 VRF 테이블에 기반하여 VRF 테이블의 넥스트 홉(예, CE 1)으로 멀티캐스트 패킷을 전달한다.
VPN은 공유망에 사설망을 구축하는 기술이며, 사설망 경로는 공중망에서 보이지 않는다는 것을 이해해야 한다. 따라서 사설 네트워크 경로는 VRF 테이블에 저장될 수 있다.
포워딩 플레인에서 서비스 식별자는 VPN 서비스 식별자로도 지칭될 수 있으며 VPN 인스턴스를 식별한다는 것을 추가로 이해해야 한다.
종래 기술 솔루션에서, 서비스 식별자는 MPLS 레이블에 포함되며, 서비스 식별자는 VPN 레이블이라고도 지칭될 수 있다. 즉, BIER 헤더의 프로토(Proto) 필드 값이 2이면 BIER 헤더 뒤에 오는 패킷이 VPN 레이블 + IP 패킷임을 나타낸다. VPN 레이블은 길이가 4바이트인 MPLS 레이블이며 모바일 가상 사설망(Mmobile virtual private network, MVPN)을 식별한다. 특히, 컨트롤 플레인에서 BFIR은 VPN 레이블을 생성하고, VPN 레이블 값을 VRF 식별자와 연결하고, 정보를 BFIR-ID와 함께 BFER로 송신한다. VPN 레이블 값과 VRF 식별자를 수신한 후, BFER은 VPN 레이블 값과 VRF 식별자를 해당 VRF와 연결한다. 데이터 플레인에서 MVPN에 의해 전달될 필요가 있는 패킷을 수신한 후, BFIR은 BIER 헤더와 해당 VPN 레이블을 캡슐화한다. BIER 헤더와 VPN 레이블로 캡슐화된 패킷을 수신하면 BFER은 VPN 레이블에 기초하여 패킷을 해당 VRF 테이블과 매칭시키고 VRF 테이블에 기초하여 패킷을 전달한다.
전술한 기술 솔루션에서, BIER 패킷이 하나의 MPLS 레이블 계층을 포함하기 때문에, 네트워크 전반에 걸친 MPLS 제거가 구현될 수 없으며, 이는 디바이스에 대해 더 복잡해 진다.
다른 종래 기술 솔루션에서, VPN 인스턴스는 BIERv6 헤더의 소스 주소(source address, SA)를 사용하여 식별된다. 즉, 하나의 BFIR(즉, ingress edge node)은 복수의 소스 IPv6 주소를 할당할 수 있으며, 서로 다른 소스 IPv6 주소는 서로 다른 VPN 인스턴스를 나타낸다. 컨트롤 플레인에서 BFIR은 서로 다른 VPN 인스턴스에 대해 Src.DT라고 하는 서로 다른 소스 IPv6 주소를 생성하고, 소스 IPv6 주소를 VRF 인스턴스와 연결하며, 소스 IPv6 주소와 VRF 인스턴스 간의 통신(correspondence)를 BFER로 송신한다. 소스 IPv6 주소와 VRF 인스턴스 간의 통신 수신한 후, BFER은 소스 IPv6 주소와 VRF 인스턴스를 해당 VRF와 연관시킨다. 데이터 플레인에서 MVPN에 의해 전달되어야 하는 패킷을 수신할 때 BFIR은 BIERv6 헤더를 캡슐화하고 BIERv6 헤더의 소스 주소 SA를 사용하여 VPN 인스턴스를 식별한다. BIERv6 헤더로 캡슐화된 패킷을 수신하면 BFER은 BIERv6 헤더에서 SA를 식별하고, SA가 식별한 VPN 인스턴스에 기초하여 해당 VRF 테이블을 결정하며, VRF 테이블에 기초하여 패킷을 전달한다.
상술한 종래의 기술 솔루션에서는 BIERv6 헤더의 소스 IPv6 주소를 이용하여 VPN 인스턴스를 식별하는 경우, VPN 인스턴스를 식별하기 위해 필요한 소스 IPv6 주소를 관리 및 할당할 필요가 있다.
이를 고려하여, 본원의 실시예는 BIER 패킷 포워딩 방법을 제공한다. VPN 서비스 식별자를 전달하기 위해 BIER 패킷에서 적절한 필드가 선택된다. 따라서 출구 에지 노드가 VPN 인스턴스를 식별할 때, VPN 인스턴스를 식별하는 데 필요한 소스 IPv6 주소를 관리 및 할당할 필요가 없으므로 구현이 비교적 간단한다.
도 6은 본원의 실시예에 따른 BIER 패킷 포워딩 방법의 개략적인 흐름도이다. 도 6에 도시된 바와 같이, 방법은 610 단계 내지 630 단계를 포함할 수 있다. 이하에서는 610 단계 내지 630 단계를 참조하여 상세하게 설명한다.
단계 610: 제1 네트워크 디바이스는 제2 네트워크 디바이스에 의해 송신된 BIER 패킷을 수신하며, 여기서 BIER 패킷은 IPv6 헤더, BIER 헤더 및 멀티캐스트 패킷을 포함하고, IPv6 헤더의 목적지 주소 또는 BIER 헤더의 제1 패킷은 서비스 식별자를 전달한다.
예에서, 제1 네트워크 디바이스는 도 5의 출구 디바이스(예를 들어, 디바이스 D, 디바이스 E, 또는 디바이스 F)에 대응할 수 있고, 제2 네트워크 디바이스는 도 5에서 입구 디바이스(예를 들어, 디바이스 A)에 해당할 수 있다.
IPv6 헤더의 목적지 주소 또는 BIER 패킷의 BIER 헤더의 제1 필드에 포함된 서비스 식별자는 가상 사설망(VPN) 인스턴스를 식별한다. 서비스 식별자는 VPN 서비스 식별자라고도 할 수 있음을 이해해야 한다.
가능한 구현예에서, 예를 들어, BIER 패킷의 IPv6 헤더의 목적지 주소는 서비스 식별자를 전달한다. 목적지 주소는 BIER 패킷에서 BIER 포워딩을 수행할 것을 나타낸다. 서비스 식별자는 목적지 주소의 일부 비트에 실릴 수 있으며, 예를 들어 목적지 주소의 인수(Argument) 부분에 실릴 수 있다.
다음은 구현을 상세히 설명한다.
세그먼트 라우팅(segment routing, SR)은 네트워크에서 동작 명령어를 나타내기 위해 패킷 내의 세그먼트 아이덴티티(segment identity, segment ID)를 사용한다. 예를 들어 IPv6를 통한 세그먼트 라우팅(IPv6, SRv6을 통한 세그먼트 라우팅)에서 IPv6 주소는 SRv6 SID로 사용되며 SRv6 SID에 프로그래밍된다. 즉, 128비트 SRv6 SID는 위치(Locator), 기능(Function) 및 Argument(Argument)의 세 부분으로 나뉜다. 로케이터는 라우팅 및 주소 지정에 사용된다. 기능은 해당 동작 명령어를 나타낸다. 인수는 명령어를 실행하는 데 필요한 매개변수를 전달하는 데 사용된다.
BIERv6은 IPv6 데이터 플레인에서 BIER 포워딩을 구현하는 기술이며, BIER 포워딩을 수행할 디바이스를 나타내기 위해 특별한 IPv6 목적지 주소(End.BIER라고 함)를 사용한다. End.BIER은 IPv6 헤더의 목적지 주소 DA 필드에 캡슐화되어 있으며 특별한 표시 기능을 가진 SRv6 SID이고 로컬에서 BIER 포워딩을 수행할 디바이스를 나타낸다.
BIER 패킷의 목적지 주소에 사용되는 IPv6 주소는 공통 IPv6 주소가 아니라 End.BIER로 지칭되는, BIER 패킷 처리에 사용되는 특정 IPv6 주소임을 이해해야 한다. BFR 라우터가 End.BIER의 주소를 구성한 후, 포워딩 정보 베이스(forwarding information base, FIB)에 해당 주소의 128비트 마스크를 갖는 포워딩 엔트리가 생성되고, 포워딩 엔트리는 해당 주소를 End.BIER로 식별한다. 라우터는 IPv6 패킷을 수신하면 먼저 목적지 주소에 기초하여 FIB를 검색한다. FIB에서 찾은 결과가 End.BIER의 주소이면 라우터는 End.BIER에 고유한 조치를 수행하며, 즉, IPv6 확장 패킷 헤더의 BIER 패킷 헤더를 계속 처리한다. 그렇지 않고 결과가 공통 IPv6 목적지 주소인 경우, FIB에서 찾은 결과는 패킷이 로컬 라우터로 송신되고 목적지 옵션 확장 헤더를 포함하는 IPv6 패킷임을 나타낸다. 이 경우 처리를 위해 패킷을 CPU로 보낼 수 있으며 데이터 평면 처리를 수행할 수 없다.
본원의 이 실시예에서, End.BIER는 BIER 포워딩을 수행하는 것을 나타낼 수 있을 뿐만 아니라 VPN 관련 파라미터, 예를 들어 VPN 서비스 식별자를 전달할 수 있도록 확장될 수 있다. 구체적으로 End.BIER는 Locator, Function, Argument의 세 부분으로 나눌 수 있다. Locator 및 Function 필드는 BIER 전달 동작을 나타내고 Argument 필드는 VPN 서비스 식별자를 전달한다.
Argument 필드의 길이는 본원의 이 실시예에서 구체적으로 제한되지 않고 실제 요구 사항에 따라 정의될 수 있음에 유의해야 한다. 예를 들어, VPN 서비스 식별자가 20비트의 MPLS 레이블 값이라면 Argument 필드의 길이는 20비트로 정의될 수 있다.
다른 가능한 구현예에서, 예를 들어, BIER 패킷의 제1 필드는 서비스 식별자를 운반한다. 제1 필드는 차등 서비스 코드 포인트(DSCP) 필드, 비트 포워딩 입구 라우터 식별자(BFIR-id) 필드 및 프로토콜 프로토 필드의 임의의 하나 또는 조합일 수 있다. 구체적으로, VPN 서비스 식별자는 BIER 헤더의 하나의 필드를 이용하여 실을 수도 있고, VPN 서비스 식별자는 BIER 헤더의 복수의 필드를 이용하여 실을 수도 있다. 이는 본 출원에서 특별히 제한되지 않는다.
본원의 이 실시예에서, BIER 헤더에서 VPN 서비스 식별자를 운반하는 필드는 DSCP 필드, proto 필드 및 BFIR-id 필드를 포함할 수 있지만 이에 제한되지 않는다.
단계 620: 제1 네트워크 디바이스는 서비스 식별자 및 제1 대응관계(correspondence)에 기초하여 VRF 테이블을 결정하며, 여기서 제1 대응관계는 서비스 식별자와 VRF 테이블 간의 대응관계를 포함한다.
서비스 식별자를 획득한 후, 제1 네트워크 디바이스는 제1 대응관계 및 서비스 식별자에 기초하여 대응하는 VRF 테이블을 결정할 수 있다. 제1 대응관계는 서비스 식별자와 VRF 테이블 간의 대응관계를 포함한다.
620 단계 전에, 방법은 다음을 더 포함한다: 제1 네트워크 디바이스는 서비스 식별자와 VRF 테이블 간의 제1 대응관계를 결정한다. 복수의 특정 구현이 있다. 다음에서 서로 다른 구현에 대해 별도로 자세히 설명한다.
가능한 구현에서, 제1 네트워크 디바이스는 VRF 인스턴스에 대한 대응하는 서비스 식별자를 로컬로 생성할 수 있고, 서비스 식별자와 VRF 인스턴스에 대응하는 VRF 테이블 간의 대응관계를 저장할 수 있다. 이 구현에서, 제1 네트워크 디바이스는 VRF 인스턴스에 대해 로컬로 생성된 대응하는 서비스 식별자를 제2 네트워크 디바이스에 더 송신할 수 있다. 따라서, 제2 네트워크 디바이스는 멀티캐스트 패킷을 수신한 후, 멀티캐스트 패킷이 속한 VRF 인스턴스에 기초하여 VRF 인스턴스에 대응하는 서비스 식별자를 BIER 패킷으로 캡슐화할 수 있다. 구체적인 캡슐화 방식에 대해서는 610 단계의 설명을 참조한다. 세부 사항은 여기에서 다시 설명하지 않는다.
다른 가능한 구현에서, 제1 네트워크 디바이스는 컨트롤 패킷을 수신하고, 여기서 컨트롤 패킷은 서비스 식별자와 VRF 테이블 간의 대응관계를 포함하고; 제1 네트워크 디바이스는 대응관계를 저장한다.
단계 630: 제1 네트워크 디바이스는 VRF 테이블에 기초하여 VRF 테이블의 제1 고객 에지(CE) 디바이스에 멀티캐스트 패킷을 송신한다.
출구 디바이스로서, 제1 네트워크 디바이스는 내부 멀티캐스트 패킷을 획득하기 위해 BIER 패킷을 디캡슐화할 수 있고, 멀티캐스트 패킷의 목적지 주소 및 결정된 VRF 테이블에 기초하여 멀티캐스트 패킷을 전달할 수 있다.
구체적으로, VRF 테이블은 복수의 VRF 엔트리를 포함할 수 있고, 각각의 VRF 엔트리는 목적지 주소에 대한 다음 홉을 포함한다. 제1 네트워크 디바이스는 멀티캐스트 패킷의 목적지 주소에 기초하여 VRF 테이블의 VRF 엔트리를 결정할 수 있고, 멀티캐스트 패킷을 VRF 엔트리의 다음 홉(예를 들어, 제1 CE 디바이스)으로 전송할 수 있다.
전술한 기술 솔루션에서, IPv6 헤더의 목적지 주소 또는 BIER 패킷의 BIER 헤더의 제1 필드는 서비스 식별자를 전달하므로, VPN 인스턴스를 식별하는 데 필요한 소스 IPv6 주소가 관리 및 할당되며 추가 MPLS 레이블 계층도 추가할 필요가 없다. 따라서 구현이 비교적 간단하고 디바이스 구현 복잡성이 줄어든다.
다음은 도 5에 도시된 BIER 도메인을 예로써 사용하여 도 7을 참조하여 구체적으로 본원의 실시예에서 제공되는 BIER 패킷 포워딩 방법의 구체적인 구현 프로세스를 설명한다.
도 7의 예는 당업자가 본원의 이 실시예를 이해하는 것을 돕기 위한 것일 뿐이며, 본원의 이 실시예를 예에서 특정 값 또는 특정 시나리오로 제한하려는 것은 아니다. 본 기술 분야의 통상의 지식을 가진 자라면 이하의 도 7에 제공된 예를 바탕으로 등가적인 다양한 변형 또는 변경이 가능함은 자명하며, 그러한 수정이나 변경도 본원의 이 실시예의 범위에 속한다.
도 7은 본원의 이 실시예에 따른 다른 BIER 패킷 포워딩 방법의 개략적인 흐름도이다. 도 7에 도시된 바와 같이, 방법은 710 단계 내지 750 단계를 포함할 수 있다. 이하에서는 710 단계 내지 750 단계를 별도로 상세히 설명한다.
단계 710: BIER 도메인의 입구 디바이스는 VPN 서비스 식별자와 VRF 사이의 매핑 관계를 결정하고 저장한다.
예를 들어, 디바이스 A는 BIER 도메인에서 입구 디바이스로 사용된다. 디바이스 A는 VPN에 해당하는 VPN 서비스 식별자를 생성하고 VPN 서비스 식별자와 VRF 테이블 간의 매핑 관계를 생성해야 한다.
예에서, VPN 서비스 식별자는 20비트 MPLS 레이블 값일 수 있고, VPN 서비스 식별자는 입구 에지 노드 및 출구 에지 노드 상의 하나의 VRF 테이블에 고유하게 대응할 수 있다. 예를 들어, 입구 에지 노드와 출구 에지 노드 모두 VPN 서비스 식별자(100)를 사용하여 VRF1 표을 나타낸다. 또 다른 예를 들어, 입구 에지 노드와 출구 에지 노드 모두 VPN 서비스 식별자(101)를 사용하여 VRF2 표을 나타낸다.
예에서, VPN 서비스 식별자는 글로벌 식별자일 수 있다. 전역 식별자는 전역적으로 고유하고, 즉, 서로 다른 멀티캐스트 그룹에 서로 다른 VPN 서비스 식별자가 사용된다.
BFIR 1은 VPN 서비스 식별자와 VRF 테이블 간의 매핑 관계를 국부적으로 저장할 수 있다. 예에서 다음은 표 1을 사용하여 가능한 매핑 관계를 나열한다.
VPN 서비스 식별자와 VRF 테이블 간의 매핑 관계
VPN 서비스 식별자 VRF 테이블
100 VRF 1
101 VRF 2
102 VRF 3
선택적으로, VPN 서비스 식별자가 로컬 식별자인 경우, 상이한 멀티캐스트 그룹에 대해, 유입 노드 또는 유출 노드가 상이한 경우, 동일한 VPN 서비스 식별자가 사용될 수 있다. 이 구현에서 BFER은 소스 IPv6 주소, VPN 서비스 식별자 및 VRF 테이블 간의 매핑 관계를 저장해야 한다.단계 720: BIER 도메인의 출구 디바이스는 VPN 서비스 식별자와 VRF 테이블 사이의 매핑 관계를 결정하고 저장한다.
예를 들어, BIER 도메인의 출구 디바이스는 디바이스 E이다. 디바이스 E가 VPN 서비스 식별자와 VRF 테이블 간의 매핑 관계를 결정하는 복수의 구현이 있다. 이는 본 출원에서 특별히 제한되지 않는다. 다음은 몇 가지 가능한 구현을 나열한다.
가능한 구현에서, VPN 서비스 식별자와 VRF 테이블 간의 매핑 관계는 디바이스 E에서 구성될 수 있다. 예를 들어, VPN 서비스 식별자는 글로벌 식별자이고, 표 1에 표시된 VPN 서비스 식별자와 VRF 테이블 간의 매핑 관계가 구성된다. 또 다른 예로, VPN 서비스 식별자는 로컬 식별자이며, 표 2와 같은 매핑 관계가 구성된다.
소스 IPv6 주소, VPN 서비스 식별자 및 VRF 테이블 간의 매핑 관계
소스 IPv6 주소 VPN 서비스 식별자 VRF 테이블
주소 1 100 VRF 1
주소 1 101 VRF 2
주소 1 102 VRF 3
다른 가능한 구현에서, VPN 서비스 식별자와 VRF 테이블 간의 매핑 관계를 결정한 후, BIER 도메인의 입구 디바이스는 컨트롤 패킷을 사용하여 매핑 관계를 디바이스 E에 알릴 수 있다. 예를 들어, VPN 서비스 식별자는 전역 식별자이고, 디바이스 E는 컨트롤 패킷을 사용하여 VPN 서비스 식별자와 VRF 테이블 간의 매핑 관계를 수신하고, 표 1에 표시된 VPN 서비스 식별자와 VRF 테이블 간의 매핑 관계를 로컬에 저장한다. 예를 들어, VPN 서비스 식별자는 로컬 식별자이고, BIER 도메인의 입구 디바이스에 의해 디바이스 E로 송신된 컨트롤 패킷은 BIER 도메인의 입구 디바이스의 IPv6 주소를 더 포함하고, 디바이스 E는 표 2에 표시된 소스 IPv6 주소(BFIR 1의 IPv6 주소), VPN 서비스 식별자 및 VRF 테이블 사이의 매핑 관계를 로컬에 저장한다. 일 예에서, 컨트롤 패킷은 경계 게이트웨이 프로토콜(border gateway protocol, BGP) 패킷일 수 있고, BIER 도메인의 입구 디바이스는 디바이스 E에게 VPN 서비스 식별자와 VRF 테이블 사이의 매핑 관계를 BGP 패킷을 사용하여 통지할 수 있다.
단계 730: BIER 도메인의 입구 디바이스는 BIER 패킷을 캡슐화하고, BIER 패킷을 BFR로 송신한다.
예를 들어, 디바이스 A는 BIER 도메인에서 입구 디바이스로 사용된다. 멀티캐스트 패킷을 수신한 후, 디바이스 A는 멀티캐스트 패킷이 속한 VPN 인스턴스에 기초하여 멀티캐스트 패킷에 BIER 캡슐화를 수행하여 BIER 패킷을 획득한다. BIER 패킷은 IPv6 헤더, BIER 헤더 및 내부 멀티캐스트를 포함한다.
BIER 패킷은 VPN 서비스 식별자를 전달할 수 있고, VPN 서비스 식별자는 전술한 VPN 인스턴스를 식별한다. 다수의 특정 구현이 있다. 이는 본 출원에서 특별히 제한되지 않는다. 가능한 구현에서, VPN 서비스 식별자는 IPv6 헤더의 목적지 주소 DA를 사용하여 전달될 수 있다. 다른 가능한 구현에서, VPN 서비스 식별자는 대안적으로 BIER 헤더의 필드를 사용하여 전달될 수 있다.
목적지 주소 DA가 VPN 서비스 식별자를 전달하는 구현에서, 각각의 BIER 포워딩 디바이스는 End.BIER의 IPv6 주소에서 Argument 필드를 예약할 필요가 있다. 구체적으로, BIER 포워딩에 사용되는 End.BIER을 구성할 때 Argument 필드를 나타내도록 주소 블록이 구성될 수 있다.
Argument 필드가 20비트 VPN 서비스 식별자를 전달하는 예는 도 7에 도시된 BIER 포워딩 노드에서 예약된 Argument 필드의 구성을 설명하기 위해 아래에서 사용된다:
디바이스 A의 구성: end-bier 2001:db8:1000::/108 인수 20;
디바이스 B의 구성: end-bier 2001:db8:1001::/108 인수 20;
디바이스 C의 구성: end-bier 2001:db8:2000::/108 인수 20; 및
디바이스 E의 구성: end-bier 2001:db8:3000::/108 인수 20.
여기서 end-bier는 BIER 포워딩에 사용되는 IPv6 주소(End.BIER)를 나타낸다. 또한 2001:db8:1000::/108은 마스크 길이가 108인 IPv6 주소 블록(End.BIER)이며 인수 20은 주소 블록의 하위 20비트가 Argument 필드를 나타냄을 표시한다.
본원의 이 실시예에서, End.BIER의 Argument 필드가 VPN 서비스 식별자를 전달할 때, 및 VPN 서비스 식별자가 변경될 때, Argument 필드가 변경되고 디바이스의 IPv6 주소(End.BIER)도 변경된다는 점에 유의해야 한다.
예를 들어, VPN 서비스 식별자는 100이고, 디바이스 A에 의해 디바이스 B로 송신되는 BIER 패킷에서 IPv6 헤더의 목적지 주소 DA는 주소 2001:db8:1001::64를 사용한다. 여기서 64는 16진수로 10진수 표기법으로 100에 해당하고 즉, VPN 서비스 식별자는 100이다.
다른 예를 들어, VPN 서비스 식별자는 101이고, 디바이스 A에 의해 디바이스 B로 송신된 BIER 패킷에서 IPv6 헤더의 목적지 주소 DA는 주소 2001:db8:1001::65를 사용한다. 여기서 65는 16진수로 10진수 표기법으로 101에 해당하고, 즉, VPN 서비스 식별자는 101이다.
BIER 헤더의 필드가 VPN 서비스 식별자를 전달하는 구현에서, 각각의 BIER 포워딩 디바이스는 End.BIER의 IPv6 주소에서 Argument 필드를 예약할 필요가 없다. 도 5에 도시된 각 BIER 포워딩 노드는 5는 BIER 포워딩에 사용되는 IPv6 주소(End.BIER)를 구성할 때 주소를 구성할 수 있다.
디바이스 A의 구성: end-bier 2001:db8:1000::1234;
디바이스 B의 구성: end-bier 2001:db8:1001::1234;
디바이스 C의 구성: end-bier 2001:db8:2000::1234; 및
디바이스 E의 구성: end-bier 2001:db8:3000::1234.
여기서 end-bier는 BIER 포워딩에 사용되는 IPv6 주소(End.BIER)를 나타낸다. 이 예제 구성에서, 각 노드에는 완전한 128비트 IPv6 주소가 제공된다.
이 구현에서, BIER 헤더의 필드는 VPN 서비스 식별자를 전달하고 디바이스의 IPv6 주소(End.BIER)는 변경되지 않는다.
예를 들어, VPN 서비스 식별자는 100이고, 디바이스 A에 의해 디바이스 B로 송신되는 BIER 패킷에서 IPv6 헤더의 목적지 주소 DA는 주소 2001:db8:1001::1234를 사용한다. 여기서 이 경우, VPN 서비스 식별자(100)는 본 실시예의 방법에 따른 BIER 헤더의 필드에 캡슐화된다. 그런 다음 디바이스 B는 패킷을 복제하고 패킷을 디바이스 C와 디바이스 D로 송신한다. 이에 따라 디바이스 C와 디바이스 D의 주소는 2001:db8:2000::1234 및 2001:db8:3000::1234으로 캡슐화된다. 이 경우 BIER 헤더의 필드에 있는 VPN 서비스 식별자(100)는 변경되지 않고 유지된다.
다른 예를 들어, VPN 서비스 식별자는 101이고, 디바이스 A에 의해 디바이스 B로 송신된 BIER 패킷에서 IPv6 헤더의 목적지 주소 DA는 주소 2001:db8:1001::1234를 사용한다. 이 경우, VPN 서비스 식별자(101)는 본 실시예의 방법에 따라 BIER 헤더의 필드에 캡슐화된다. 그런 다음 디바이스 B는 패킷을 복제하고 패킷을 디바이스 C와 디바이스 D로 송신한다. 이에 따라 디바이스 C와 디바이스 D의 주소는 2001:db8:2000::1234 및 2001:db8:3000으로 캡슐화된다. :1234. 이 경우 BIER 헤더의 필드에 있는 VPN 서비스 식별자(101)는 변경되지 않는다.
단계 740: BFR은 수신된 BIER 패킷을 BIER 도메인의 출구 디바이스로 송신한다.
BIER 패킷을 수신한 후, BFR은 BIER 도메인의 출구 디바이스에 BIER 패킷을 보낼 수 있다.
예를 들어, VPN 서비스 식별자는 100이다. BFR에 의해 디바이스 E로 송신되는 BIER 패킷의 IPv6 헤더의 목적지 주소 DA는 주소 2001:db8:3000::64를 사용한다. 여기서 64는 16진수로 10진수 표기법으로 100에 해당한다. 즉, VPN 서비스 식별자는 100이다.
예를 들어, VPN 서비스 식별자는 101이다. BFR에 의해 디바이스 E로 송신되는 BIER 패킷의 IPv6 헤더의 목적지 주소 DA는 주소 2001:db8:3000::65를 사용한다. 여기서 65는 16진수로 10진수 표기법으로 101에 해당하고, 즉, VPN 서비스 식별자는 101이다.
단계 750: BIER 도메인의 출구 디바이스는 BIER 패킷을 수신하고, 해당 VRF 테이블을 검색하여 패킷을 전달한다.
BIER 패킷을 수신한 후, BIER 도메인의 출구 디바이스는 BIER 패킷으로부터 VPN 서비스 식별자를 획득할 수 있다. 예에서, VPN 서비스 식별자는 BIER 헤더의 필드에 포함되며, BIER 도메인의 출구 디바이스는 BIER 헤더의 필드에서 VPN 서비스 식별자를 획득할 수 있다. 또 다른 예에서, VPN 서비스 식별자는 IPv6 헤더의 목적지 주소 DA에 포함되며, BIER 도메인의 출구 디바이스는 DA로부터 VPN 서비스 식별자를 획득할 수 있다.
VPN 서비스 식별자를 획득한 후, BIER 도메인의 출구 디바이스는 로컬에 저장된 VPN 서비스 식별자와 VRF 테이블 사이의 매핑 관계에 기초하여 대응하는 VRF 테이블을 결정할 수 있고, VRF 테이블에 기초하여 멀티캐스트 패킷을 포워딩할 수 있다 .
예를 들어, 디바이스 E는 BIER 도메인에서 출구 디바이스로 사용되고, 디바이스 E가 획득한 VPN 서비스 식별자는 100이고, 이는 VRF1 테이블에 해당하는 표 1에 나타낸 매핑 관계에 기초하여 결정될 수 있다. 디바이스 E는 멀티캐스트 패킷의 목적지 주소에 기초하여 VRF 테이블의 특정 VRF 엔트리를 결정하고 멀티캐스트 패킷을 VRF 엔트리의 다음 홉(예를 들어, 특정 제1 CE 디바이스)으로 송신할 수 있다.
전술한 기술 솔루션에서, VPN 서비스 식별자는 BIER에 의해 캡슐화된 IPv6 목적지 주소 또는 BIER에 의해 캡슐화된 BIER 헤더의 일부 필드를 사용하여 전달되며, 출구 에지 노드는 Pv6 목적지 주소 또는 BIER 헤더의 필드 일부를 판독하여 VPN 서비스 식별자를 획득하기만 하면 된다. 이는 기존의 기술 솔루션에서 VPN 인스 턴스를 식별하기 위해 소스 IPv6 주소를 사용하는 데 필요한 소스 IPv6 주소의 관리 및 할당을 방지한다.
도 1 내지 도 7을 참조하면, 전술한 내용은 본원의 실시예에서 제공되는 BIER 패킷 포워딩 방법을 상세히 설명한다. 다음은 도 8 내지 도 13을 참조하여 본 출원의 장치 실시예를 상세히 설명한다. 방법 실시예의 설명은 장치 실시예의 설명에 대응한다는 것을 이해해야 한다. 따라서, 구체적으로 설명하지 않은 부분에 대해서는 전술한 방법 실시예의 설명을 참조한다.
도 8은 본원의 실시예에 따른 제1 네트워크 디바이스(800)의 구조의 개략도이다. 도 8에 도시된 제1 네트워크 디바이스(800)는 전술한 실시예의 방법에서 제1 네트워크 디바이스에 의해 수행된 상응하는 단계를 수행할 수 있다. 도 8에 도시된 바와 같이, 제1ㅍ네트워크 디바이스(800)는 수신 모듈(810), 처리 모듈(820) 및 송신 모듈(830)을 포함한다.
수신 모듈(810)은 제2 네트워크 디바이스에 의해 송신된 BIER 패킷을 수신하도록 구성되며, BIER 패킷은 인터넷 프로토콜 버전 6 IPv6 헤더, 비트 인덱스 명시적 복제 BIER 헤더 및 멀티캐스트 패킷, IPv6 헤더의 목적지 주소 또는 BIER 헤더의 제1 필드는 서비스 식별자를 전달하며 서비스 식별자는 가상 사설망(VPN) 인스턴스를 식별한다.
처리 모듈(820)은 서비스 식별자 및 제1 대응관계에 기초하여 가상 경로 포워딩(VRF) 테이블을 결정하도록 구성되고, 여기서 제1 대응관계는 서비스 식별자와 VRF 테이블 간의 대응관계를 포함한다.
송신 모듈(830)은 VRF 테이블에 기초하여 VRF 테이블의 제1 고객 에지(CE) 디바이스에 멀티캐스트 패킷을 송신하도록 구성된다.
선택적으로, 서비스 식별자는 IPv6 헤더의 목적지 주소의 일부 비트에 포함되며, 목적지 주소는 BIER 패킷에 대한 BIER 포워딩을 수행하도록 지시한다.
선택적으로, 목적지 주소의 비트 부분은 목적지 주소의 인수 부분이다.
다른 가능한 구현에서, BIER 헤더의 제1 필드는 다음 필드 중 임의의 하나 또는 이들의 조합이다: 차등 서비스 코드 포인트(DSCP) 필드, 비트 포워딩 입구 라우터 식별자(BFIR-id) 필드 및 프로토콜 프로토콜 필드.
선택적으로, 수신 모듈(810)은 컨트롤 패킷을 수신하도록 더 구성되며, 여기서 컨트롤 패킷은 서비스 식별자와 VRF 테이블 간의 대응관계를 포함하고; 처리 모듈(820)은 서비스 식별자와 VRF 테이블 간의 대응관계를 저장하도록 추가로 구성된다.
선택적으로, 제1 대응관계는 소스 주소를 더 포함하고; 처리 모듈(820)은 구체적으로 IPv6 헤더의 소스 주소, 서비스 식별자 및 제1 대응관계에 기초하여 VRF 테이블을 결정하도록 구성된다.
도 9는 본원의 실시예에 따른 제2 네트워크 디바이스(900)의 구조의 개략도이다. 도 9에 도시된 제2 네트워크 디바이스(900)는 전술한 실시예의 방법에서 제2 네트워크 디바이스에 의해 수행된 상응하는 단계를 수행할 수 있다. 도 9에 도시된 바와 같이, 제2 네트워크 디바이스(900)는 수신 모듈(910), 처리 모듈(920) 및 송신 모듈(930)을 포함한다.
수신 모듈(910)은 멀티캐스트 패킷을 획득하도록 구성된다.
처리 모듈(920)은 BIER 패킷을 획득하기 위해 멀티캐스트 패킷이 속하는 가상 사설망(VPN) 인스턴스에 기초하여 멀티캐스트 패킷을 캡슐화하도록 구성되며, BIER 패킷은 인터넷 프로토콜 버전 6 IPv6 헤더, 비트 인덱스 명시적 복제(BIER) 헤더 및 멀티캐스트 패킷, IPv6 헤더의 목적지 주소 또는 BIER 헤더의 제1 필드는 서비스 식별자를 전달하며, 서비스 식별자는 VPN 인스턴스를 식별한다.
송신 모듈(930)은 BIER 패킷을 제1 네트워크 디바이스에 송신하도록 구성된다.
선택적으로, 서비스 식별자는 IPv6 헤더의 목적지 주소의 일부 비트에 포함되며, 목적지 주소는 BIER 패킷에서 BIER 포워딩을 수행할 제1 네트워크 디바이스를 나타낸다.
선택적으로, 목적지 주소의 비트 부분은 목적지 주소의 인수 부분이다.
선택적으로, BIER 헤더의 제1 필드는 다음 필드들 중 임의의 하나 또는 이들의 조합이다: 차등 서비스 코드 포인트(DSCP) 필드, 비트 포워딩 입구 라우터 식별자(BFIR-id) 필드, 및 프로토콜 프로토 필드.
선택적으로, 처리 모듈(920)은 서비스 식별자를 VPN 인스턴스에 할당하고; 제1 대응관계를 설정하며, 여기서 제1 대응관계는 서비스 식별자와 VPN 인스턴스에 대응하는 VRF 테이블 간의 대응관계를 포함한다.
선택적으로, 송신 모듈(930)은 컨트롤 패킷을 제1 네트워크 디바이스에 송신하도록 추가로 구성되며, 컨트롤 패킷은 서비스 식별자와 VRF 테이블 사이의 대응관계를 포함한다.
선택적으로, 컨트롤 패킷은 경계 게이트웨이 프로토콜(BGP) 패킷이다.
도 10은 본원의 실시예에 따른 제1 네트워크 디바이스(2000)의 하드웨어 구조의 개략도이다. 도 10에 도시된 제1 네트워크 디바이스(2000)는 전술한 실시예의 방법에서 제1 네트워크 디바이스에 의해 수행되는 대응하는 단계를 수행할 수 있다.
도 10에 도시된 바와 같이, 제1 네트워크 디바이스(2000)는 프로세서(2001), 메모리(2002), 인터페이스(2003) 및 버스(2004)를 포함한다. 인터페이스(2003)는 무선 또는 유선 방식으로 구현될 수 있으며, 구체적으로 네트워크 어댑터일 수 있다. 프로세서(2001), 메모리(2002) 및 인터페이스(2003)는 버스(2004)를 통해 연결된다.
인터페이스(2003)는 구체적으로 송신기 및 수신기를 포함할 수 있고, 제1 네트워크 디바이스가 전술한 수신 및 송신을 구현하는 것을 가능하게 하도록 구성된다. 예를 들어, 인터페이스(2003)는 제2 네트워크 디바이스에 의해 송신된 BIER 패킷을 수신하도록 구성되거나 VRF 테이블에 기초한 VRF 테이블의 제1 고객 에지(CE) 디바이스로 멀티캐스트 패킷을 송신하도록 구성된다.
프로세서(2001)는 전술한 실시예에서 제1 네트워크 디바이스에 의해 수행되는 처리를 수행하도록 구성된다. 예를 들어, 프로세서(2001)는 서비스 식별자 및 제1 대응관계에 기초하여 가상 경로 포워딩(VRF)을 결정하도록 구성되고; 및/또는 본 명세서에 기술된 기술의 다른 프로세스를 수행하도록 구성된다. 메모리(2002)는 운영 체제(20021) 및 애플리케이션(20022)을 포함하고, 프로그램, 코드 또는 명령어를 저장하도록 구성된다. 프로세서 또는 하드웨어 디바이스가 프로그램, 코드 또는 명령어를 실행할 때, 방법 실시예의 제1 네트워크 디바이스와 관련된 처리 프로세스가 완료될 수 있다. 선택적으로, 메모리(2002)는 판독 전용 메모리(read-only memory, ROM) 및 랜덤 액세스 메모리(random access memory, RAM)를 포함할 수 있다. ROM은 기본 입/출력 시스템(basic input/output system, BIOS) 또는 임베디드 시스템을 포함하고, RAM은 애플리케이션 및 운영 체제를 포함한다. 제1 네트워크 디바이스(2000)가 실행될 필요가 있을 때, BIOS 내의 부트로더 또는 ROM에 내장된 임베디드 시스템은 시스템을 시작하도록 부팅하여 제1 네트워크 디바이스(2000)를 부팅하여 정상 실행 상태로 진입시키는 데 사용된다. 정상 실행 상태에 진입한 후, 제1 네트워크 디바이스(2000)는 RAM에서 애플리케이션 및 운영 체제를 실행하여 방법 실시예에서 제1 네트워크 디바이스(2000)의 처리 프로세스를 완료한다.
도 10은 단지 제1 네트워크 디바이스(2000)의 단순화된 설계를 도시한다. 제1 네트워크 디바이스는 실제 적용 동안 임의의 양의 인터페이스, 프로세서 또는 메모리를 포함할 수 있다.
도 11은 본원의 실시예에 따른 다른 제1 네트워크 디바이스(2100)의 하드웨어 구조의 개략도이다. 도 11에 도시된 제1 네트워크 디바이스(2100)는 전술한 실시예의 방법에서 제1 네트워크 디바이스에 의해 수행되는 상응하는 단계를 수행할 수 있다.
도 11에 도시된 바와 같이, 제1 네트워크 디바이스(2100)는 메인 제어 보드(2110), 인터페이스 보드(2130), 스위칭 보드(2120) 및 인터페이스 보드(2140)를 포함한다. 메인 제어 보드(2110), 인터페이스 보드(2130), 인터페이스 보드(2140) 및 스위칭 보드(2120)는 연동을 위해 시스템 버스를 통해 시스템 백플레인에 연결된다. 메인 제어 보드(2110)는 시스템 관리, 디바이스 유지 및 프로토콜 처리와 같은 기능을 완료하도록 구성된다. 스위칭 보드(2120)는 인터페이스 보드(인터페이스 보드는 라인 카드 또는 서비스 보드라고도 함) 사이에서 데이터를 교환하도록 구성된다. 인터페이스 보드(2130) 및 인터페이스 보드(2140)는 다양한 서비스 인터페이스(POS 인터페이스, GE 인터페이스, ATM 인터페이스 등)를 제공하고, 데이터 패킷을 포워딩하도록 구성된다.
인터페이스 보드(2130)는 중앙 처리 유닛(2131), 포워딩 엔트리 메모리(2134), 물리적 인터페이스 카드(2133) 및 네트워크 프로세서(2132)를 포함할 수 있다. 중앙 처리 유닛(2131)은 인터페이스 보드를 제어 및 관리하고, 메인 컨트롤 보드의 중앙 처리 유닛과 통신한다. 포워딩 엔트리 메모리(2134)는 엔트리, 예를 들어 전술한 BIFT를 저장하도록 구성된다. 물리적 인터페이스 카드(2133)는 트래픽을 수신 및 송신하도록 구성된다.
인터페이스 보드(2140) 상의 동작은 본원의 이 실시예에서 인터페이스 보드(2130) 상의 동작과 일치한다는 것을 이해해야 한다. 간결함을 위해 자세한 내용은 다시 설명하지 않는다.
이 실시예의 제1 네트워크 디바이스(2100)는 방법 실시예의 기능 및/또는 다양한 구현 단계에 대응할 수 있음을 이해해야 한다. 자세한 내용은 여기서 다시 설명하지 않는다.
또한, 하나 이상의 메인 컨트롤 보드가 있을 수 있다는 점에 유의해야 한다. 메인 컨트롤 보드가 복수 개인 경우, 메인 컨트롤 보드는 액티브 메인 컨트롤 보드와 스탠바이 메인 컨트롤 보드를 포함할 수 있다. 하나 이상의 인터페이스 보드가 있을 수 있다. 더 강력한 데이터 처리 능력을 가진 제1 네트워크 디바이스는 더 많은 인터페이스 보드를 제공한다. 또한, 인터페이스 보드에 하나 이상의 물리적 인터페이스 카드가 있을 수도 있다. 스위칭 보드가 없거나 하나 이상의 스위칭 보드가 있을 수 있다. 복수의 스위칭 보드가 있는 경우 로드 밸런싱 및 이중화 백업을 함께 구현할 수 있다. 중앙집중식 포워딩 아키텍처에서, 제1 네트워크 디바이스는 스위칭 보드를 포함하지 않을 수 있으며, 인터페이스 보드는 전체 시스템의 서비스 데이터 처리 기능을 담당한다. 분산 포워딩 구조에서. 제1 네트워크 디바이스는 적어도 하나의 스위칭 보드를 포함할 수 있고, 스위칭 보드를 이용하여 복수의 인터페이스 보드 사이의 데이터 교환을 구현할 수 있으며, 대용량 데이터 교환 및 처리 기능을 제공한다. 따라서 분산 아키텍처의 제1 네트워크 디바이스의 데이터 액세스 및 처리 기능은 중앙 집중식 아키텍처의 디바이스보다 강력하다. 사용할 특정 아키텍처는 특정 네트워킹 배포 시나리오에 따라 다르다. 이것은 여기에서 제한되지 않는다.
도 12는 본원의 실시예에 따른 제2 네트워크 디바이스(2200)의 하드웨어 구조의 개략도이다. 도 12에 도시된 제2 네트워크 디바이스(2200)는 전술한 실시예의 방법에서 제2 네트워크 디바이스에 의해 수행된 상응하는 단계를 수행할 수 있다.
도 12에 도시된 바와 같이, 제2 네트워크 디바이스(2200)는 프로세서(2201), 메모리(2202), 인터페이스(2203) 및 버스(2204)를 포함한다. 인터페이스(2203)는 무선 또는 유선 방식으로 구현될 수 있으며, 구체적으로 네트워크 어댑터일 수 있다. 프로세서(2201), 메모리(2202) 및 인터페이스(2203)는 버스(2204)를 통해 연결된다.
인터페이스(2203)는 구체적으로 송신기 및 수신기를 포함할 수 있고, 멀티캐스트 패킷을 획득하고; BIER 패킷을 제1 네트워크 디바이스로 전송하도록 구성된다. 프로세서(2201)는 전술한 실시예에서 제2 네트워크 디바이스에 의해 수행되는 처리를 수행하도록 구성된다. 예를 들어, 프로세서(2201)는 BIER 패킷을 획득하기 위해 멀티캐스트 패킷이 속하는 가상 사설망(VPN) 인스턴스에 기초하여 멀티캐스트 패킷을 캡슐화하도록 구성되고/되거나 본 명세서에 기술된 기술의 다른 프로세스를 수행하도록 구성된다. 메모리(2202)는 운영 체제(22021) 및 애플리케이션(22022)을 포함하고, 프로그램, 코드 또는 명령어를 저장하도록 구성된다. 프로세서 또는 하드웨어 디바이스가 프로그램, 코드 또는 명령어를 실행할 때, 방법 실시예에서 제2 네트워크 디바이스와 관련된 처리 프로세스가 완료될 수 있다. 선택적으로, 메모리(2202)는 판독 전용 메모리(read-only memory, ROM) 및 랜덤 액세스 메모리(random access memory, RAM)를 포함할 수 있다. ROM은 기본 입/출력 시스템(basic input/output system, BIOS) 또는 임베디드 시스템을 포함하고, RAM은 애플리케이션 및 운영 체제를 포함한다. 제2 네트워크 디바이스(2200)가 실행될 필요가 있을 때, BIOS 내의 부트로더 또는 ROM에 내장된 내장형 시스템은 시작하도록 시스템을 부팅하여, 제2 네트워크 디바이스(2200)를 부팅하여 정상 실행 상태로 진입하도록 하는 데 사용된다. 정상 실행 상태에 들어간 후, 제2 네트워크 디바이스(2200)는 방법 실시예에서 제2 네트워크 디바이스(2200)의 처리 프로세스를 완료하기 위해 RAM에서 애플리케이션 및 운영 체제를 실행한다.
도 12는 단지 제2 네트워크 디바이스(2200)의 단순화된 설계를 도시한다. 제2 네트워크 디바이스는 실제 응용 동안 임의의 양의 인터페이스, 프로세서 또는 메모리를 포함할 수 있다.
도 13은 본원의 실시예에 따른 다른 제2 네트워크 디바이스(2300)의 하드웨어 구조의 개략도이다. 도 13에 도시된 제2 네트워크 디바이스(2300)는 전술한 실시예의 방법에서 제2 네트워크 디바이스에 의해 수행되는 대응 단계를 수행할 수 있다.
도 13에 도시된 바와 같이, 제2 네트워크 디바이스(2300)는 메인 제어 보드(2310), 인터페이스 보드(2330), 스위칭 보드(2320) 및 인터페이스 보드(2340)를 포함한다. 메인 제어 보드(2310), 인터페이스 보드(2330), 인터페이스 보드(2340) 및 스위칭 보드(2320)는 연동을 위해 시스템 버스를 통해 시스템 백플레인에 연결된다. 메인 제어 보드(2310)는 시스템 관리, 디바이스 유지 및 프로토콜 처리와 같은 기능을 완료하도록 구성된다. 스위칭 보드(2320)는 인터페이스 보드(인터페이스 보드는 라인 카드 또는 서비스 보드라고도 함) 사이에서 데이터를 교환하도록 구성된다. 인터페이스 보드(2330) 및 인터페이스 보드(2340)는 다양한 서비스 인터페이스(POS 인터페이스, GE 인터페이스, ATM 인터페이스 등)를 제공하고, 데이터 패킷을 포워딩하도록 구성된다.
인터페이스 보드(2330)는 중앙 처리 유닛(2331), 포워딩 엔트리 메모리(2334), 물리적 인터페이스 카드(2333) 및 네트워크 프로세서(2332)를 포함할 수 있다. 중앙 처리 유닛(2331)은 인터페이스 보드를 제어 및 관리하고, 메인 컨트롤 보드의 중앙 처리 유닛와 통신한다. 포워딩 엔트리 메모리(2334)는 엔트리, 예를 들어 전술한 BIFT를 저장하도록 구성된다. 물리적 인터페이스 카드(2133)는 트래픽을 수신 및 송신하도록 구성된다.
인터페이스 보드(2340) 상의 동작은 본원의 이 실시예에서 인터페이스 보드(2330) 상의 동작과 일치한다는 것을 이해해야 한다. 간결함을 위해 자세한 내용은 다시 설명하지 않는다. 이 실시예에서 제2 네트워크 디바이스(2300)는 기능 및/또는 방법 실시예의 다양한 구현 단계에 대응할 수 있음을 이해해야 한다. 자세한 내용은 여기서 다시 설명하지 않는다.
또한, 하나 이상의 메인 컨트롤 보드가 있을 수 있다는 점에 유의해야 한다. 메인 컨트롤 보드가 복수 개인 경우, 메인 컨트롤 보드는 액티브 메인 컨트롤 보드와 스탠바이 메인 컨트롤 보드를 포함할 수 있다. 하나 이상의 인터페이스 보드가 있을 수 있다. 더 강력한 데이터 처리 능력을 가진 제2 네트워크 디바이스는 더 많은 인터페이스 보드를 제공한다. 인터페이스 보드에 하나 이상의 물리적 인터페이스 카드가 있을 수도 있다. 스위칭 보드가 없거나 하나 이상의 스위칭 보드가 있을 수 있다. 복수의 스위칭 보드가 있는 경우, 로드 밸런싱 및 이중화 백업을 함께 구현할 수 있다. 중앙 집중형 포워딩 아키텍처에서, 제2 네트워크 디바이스는 스위칭 보드를 포함하지 않을 수 있으며 인터페이스 보드는 전체 시스템의 서비스 데이터 처리 기능을 담당한다. 분산 포워딩 아키텍처에서 제2 네트워크 디바이스는 적어도 하나의 스위칭 보드를 포함할 수 있으며, 스위칭 보드를 사용하여 복수의 인터페이스 보드 간의 데이터 교환을 구현하고, 대용량 데이터 교환 및 처리 능력을 제공할 수 있다. 따라서 분산 아키텍처의 제2 네트워크 디바이스의 데이터 액세스 및 처리 기능은 중앙 집중식 아키텍처의 디바이스보다 더 강력하다. 사용할 특정 아키텍처는 특정 네트워킹 배포 시나리오에 따라 다르다. 이것은 여기에 제한되지 않는다.
본원의 실시예는 컴퓨터 판독가능 매체를 추가로 제공한다. 컴퓨터 판독 가능 매체는 프로그램 코드를 저장한다. 컴퓨터 프로그램 코드가 컴퓨터에서 실행되는 경우, 컴퓨터는 제1 네트워크 디바이스에 의해 수행되는 방법을 수행하도록 인에이블될 수 있다. 컴퓨터 판독 가능 매체는 다음 중 하나 이상을 포함하지만 이에 제한되지 않는다: 판독 전용 메모리(read-only memory, ROM), 프로그램 가능 ROM(programmable ROM, PROM), 소거 가능 PROM(erasable PROM, EPROM), 플래시 메모리, 전기적 EPROM(electrically EPROM, EEPROM) 및 하드 드라이브(hard drive).
본원의 실시예는 컴퓨터 판독가능 매체를 추가로 제공한다. 컴퓨터 판독 가능 매체는 프로그램 코드를 저장한다. 컴퓨터 프로그램 코드가 컴퓨터에서 실행되는 경우 컴퓨터는 제2 네트워크 디바이스에 의해 수행되는 방법을 수행할 수 있다. 컴퓨터 판독가능 매체는 다음 중 하나 이상을 포함하지만 이에 제한되지 않는다: 판독 전용 메모리(read-only memory, ROM), 프로그램 가능 ROM(programmable ROM, PROM), 소거 가능 PROM(erasable PROM, EPROM), 플래시 메모리, 전기적 EPROM(electrically EPROM, EEPROM) 및 하드 드라이브(hard drive).
본원의 실시예는 제1 네트워크 디바이스에 적용되는 칩 시스템을 더 제공한다. 칩 시스템은 적어도 하나의 프로세서, 적어도 하나의 메모리 및 인터페이스 회로를 포함한다. 인터페이스 회로는 칩 시스템과 외부 간의 정보 교환을 담당한다. 적어도 하나의 메모리, 인터페이스 회로 및 적어도 하나의 프로세서는 라인을 통해 연결된다. 적어도 하나의 메모리는 명령어를 저장한다. 명령어는 적어도 하나의 프로세서에 의해 실행되어 전술한 측면의 방법에서 제1 네트워크 디바이스의 동작을 수행한다.
구체적인 구현 과정에서, 칩은 중앙 처리 유닛(central processing unit, CPU), 마이크로 컨트롤러 유닛(micro controller unit, MCU), 마이크로 프로세싱 유닛(micro processing unit, MPU), 디지털 신호 프로세서(digital signal processor, DSP), 시스템 온 칩(system-on-a-chip, SoC), 주문형 집적 회로(application-specific integrated circuit, ASIC), 필드 프로그래머블 게이트 어레이(field programmable gate array, FPGA), 또는 프로그래머블 로직 디바이스(programmable logic device, PLD)의 형태로 구현될 수 있다.
본원의 실시예는 제2 네트워크 디바이스에 적용되는 또 다른 칩 시스템을 더 제공한다. 칩 시스템은 적어도 하나의 프로세서, 적어도 하나의 메모리 및 인터페이스 회로를 포함한다. 인터페이스 회로는 칩 시스템과 외부 간의 정보 교환을 담당한다. 적어도 하나의 메모리, 인터페이스 회로 및 적어도 하나의 프로세서는 라인을 통해 연결된다. 적어도 하나의 메모리는 명령어를 저장한다. 명령어는 적어도 하나의 프로세서에 의해 실행되어 전술한 측면의 방법에서 제2 네트워크 디바이스의 동작을 수행한다.
구체적인 구현 프로셋에서, 칩은 중앙 처리 유닛(central processing unit, CPU), 마이크로 컨트롤러 유닛(micro controller unit, MCU), 마이크로 프로세싱 유닛(micro processing unit, MPU), 디지털 신호 프로세서(digital signal processor, DSP), 시스템 온 칩(system-on-a-chip, SoC), 주문형 집적 회로(application-specific integrated circuit, ASIC), 필드 프로그래밍 가능한 게이트 어레이(field programmable gate array, FPGA) 또는 프로그래머블 로직 디바이스(programmable logic device, PLD))의 형태로 구현될 수 있다.
본원의 실시예는 컴퓨터 프로그램 제품을 더 제공한다. 컴퓨터 프로그램 제품은 제1 네트워크 디바이스에 적용되고, 컴퓨터 프로그램 제품은 일련의 명령어를 포함한다. 명령어의 실행시에, 전술한 측면들에 따른 방법들에서 제1 네트워크 디바이스의 동작이 수행된다.
본원의 실시예는 컴퓨터 프로그램 제품을 더 제공한다. 컴퓨터 프로그램 제품은 제2 디바이스 그룹에 적용된다. 컴퓨터 프로그램 제품은 일련의 명령어를 포함한다. 명령어의 실행시에, 전술한 측면들에 따른 방법들에서 제2 디바이스 그룹의 동작이 수행된다.
전술한 프로세스들의 시퀀스 번호들은 본원의 다양한 실시예들에서 실행 순서를 의미하는 것이 아님을 이해해야 한다. 프로세스들의 실행 순서는 프로세스들의 기능 및 내부 로직에 기초하여 결정되어야 하고, 본원의 실시예들의 구현 프로세스들에 대한 어떠한 제한으로서 해석되지 않아야 한다.
당업자라면, 본 명세서에 개시된 실시예들에서 설명되는 실시예들과 조합하여, 유닛들 및 알고리즘 단계들이 전자 하드웨어에 의해, 또는 컴퓨터 소프트웨어와 전자 하드웨어의 조합에 의해 구현될 수 있음을 인식하고 있을 것이다. 기능들이 하드웨어에 의해 또는 소프트웨어에 의해 수행되는지의 여부는 기술적인 해법의 특정 용례 및 설계 제약에 의존한다. 당업자라면, 각각의 특정 용례에 대하여 설명된 기능들을 구현하기 위해 상이한 방법들을 사용할 수 있을 것이지만, 해당 구현은 본원의 범위를 벗어나는 것으로 간주되지 않아야 한다.
당업라자면, 편리하고 간략한 설명을 위해, 전술한 시스템, 디바이스 및 유닛의 상세한 작업 프로세스에 대하여, 전술한 방법 실시예에서의 상응하는 프로세스를 참조할 것임을 명확하게 이해할 수 있다. 본 명세서에서는 세부 내용을 다시 설명하지 않는다.
본원에서 제공되는 몇몇 실시예들에 있어서는, 개시된 시스템, 디바이스 및 방법이 다른 방식들로 구현될 수 있음을 이해해야 한다. 예를 들어, 설명된 디바이스 실시예는 단지 예시일 뿐이다. 예를 들어, 유닛들로의 분할은 단지 논리적인 기능 분할일 뿐이며, 실제 구현 동안 다른 분할일 수 있다. 예를 들어, 복수의 유닛 또는 컴포넌트가 다른 시스템에 결합 또는 통합될 수 있거나, 일부 특징은 무시되거나 수행되지 않을 수도 있다. 또한, 표시 또는 논의된 상호 결합 또는 직접 결합 또는 통신 연결은 몇몇 인터페이스를 통해 구현될 수 있다. 디바이스들 또는 유닛들 간의 간접 결합 또는 통신 연결은 전자적, 기계적, 또는 그 밖의 형태로 구현될 수 있다.
개별 컴포넌트들로서 설명된 유닛들은 물리적으로 분리될 수도, 또는 그렇지 않을 수도 있고, 유닛으로서 표시된 컴포넌트들은 물리적 유닛일 수도, 또는 그렇지 않을 수도 있으며, 즉 한 곳에 배치될 수 있거나, 또는 복수의 네트워크 유닛에 분포될 수도 있다. 유닛들의 일부 또는 전부는 실시예들의 해법의 목적을 달성하기 위해 실제 요건에 따라 선택될 수 있다.
또한, 본원의 실시예들에서의 기능 유닛들은 하나의 처리 유닛에 통합될 수 있거나, 해당 유닛들 각각은 물리적으로 단독으로 존재할 수 있거나, 또는 2 개 이상의 유닛이 하나의 유닛으로 통합된다.
기능들이 소프트웨어 기능 유닛의 형태로 구현되고 독립적인 제품으로서 판매 또는 사용되는 경우, 해당 기능들은 컴퓨터-판독 가능 저장 매체에 저장될 수 있다. 이러한 이해에 기초하여, 본질적으로 본원의 기술적인 해법, 또는 선행 기술에 기여하는 부분, 또는 기술적인 해법의 일부는 소프트웨어 제품의 형태로 구현될 수 있다. 컴퓨터 소프트웨어 제품은 저장 매체에 저장되고, 컴퓨터 디바이스(개인용 컴퓨터, 서버, 또는 네트워크 디바이스 등일 수 있음)에 본원의 실시예들에서 설명되는 방법들의 단계들의 전부 또는 일부를 수행하라고 나타내는 몇몇 명령어를 포함한다. 전술한 저장 매체는 프로그램 코드를 저장할 수 있는 임의의 매체 (예를 들어, USB 플래시 드라이브, 착탈식 하드 디스크, 리드 온리 메모리(read only memory, ROM), 랜덤 액세스 메모리(random access memory, RAM), 자기 디스크, 또는 광 디스크)를 포함한다.
전술한 설명은 단지 본원의 구체적인 구현예들이지, 본원의 보호 범위를 제한하려는 것은 아니다. 본원에 개시되는 기술적인 범위 내에서 당업자가 쉽게 알 수 있는 임의의 변형 또는 대체는 본원의 보호 범위에 속할 것이다. 따라서, 본원의 보호 범위는 청구항들의 보호 범위를 따르는 것으로 한다.

Claims (31)

  1. 비트 인덱스 명시적 복제(bit index explicit replication, BIER) 패킷 포워딩 방법으로서,
    제1 네트워크 디바이스에 의해, 제2 네트워크 디바이스에 의해 송신된 BIER 패킷을 수신하는 단계 - 상기 BIER 패킷은 인터넷 프로토콜 버전 6(IPv6) 헤더, 비트 인덱스 명시적 복제(BIER) 헤더 및 멀티캐스트 패킷을 포함하고, 상기 IPv6 헤더의 목적지 주소 또는 상기 BIER 헤더의 제1 필드는 서비스 식별자를 전달하고 상기 서비스 식별자는 가상 사설망(VPN) 인스턴스를 식별함 - 와,
    상기 제1 네트워크 디바이스에 의해, 상기 서비스 식별자 및 상기 서비스 식별자와 VRF(virtual route forwarding) 테이블 간의 대응관계를 포함하는 제1 대응관계에 기초하여 상기 VRF 테이블을 결정하는 단계와,
    상기 제1 네트워크 디바이스에 의해, 상기 VRF 테이블에 기초하여 상기 VRF 테이블의 제1 고객 에지(CE) 디바이스로 상기 멀티캐스트 패킷을 송신하는 단계를 포함하는,
    방법.
  2. 제1항에 있어서,
    상기 서비스 식별자는 상기 IPv6 헤더의 상기 목적지 주소의 일부 비트에 실리고, 상기 목적지 주소는 상기 BIER 패킷에 대한 BIER 포워딩 수행을 나타내는,
    방법.
  3. 제2항에 있어서,
    상기 목적지 주소의 일부 비트는 상기 목적지 주소의 인수(argument) 부분인,
    방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 BIER 헤더의 제1 필드는 차등 서비스 코드 포인트(DSCP) 필드, 비트 포워딩 입구 라우터 식별자(BFIR-id) 필드 및 프로토콜(proto) 필드 중 하나 이상 또는 이들의 조합인,
    방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 제1 네트워크 디바이스에 의해, 상기 서비스 식별자와 상기 VRF 테이블 사이의 대응관계를 포함하는 컨트롤 패킷을 수신하는 단계와,
    상기 제1 네트워크 디바이스에 의해 상기 서비스 식별자와 상기 VRF 테이블 간의 대응관계를 저장하는 단계를 더 포함하는,
    방법.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서,
    상기 제1 대응관계는 소스 주소를 더 포함하고,
    상기 제1 네트워크 디바이스에 의해, 상기 서비스 식별자 및 제1 대응관계에 기초하여 가상 경로 포워딩(VRF) 테이블을 결정하는 단계는,
    상기 제1 네트워크 디바이스에 의해 IPv6 헤더의 소스 주소, 상기 서비스 식별자 및 상기 제1 대응관계에 기초하여 상기 VRF 테이블을 결정하는 것을 포함하는,
    방법.
  7. BIER(bit index explicit replication) 패킷 포워딩 방법으로서,
    상기 제2 네트워크 디바이스에 의해, 멀티캐스트 패킷을 획득하는 단계와,
    상기 제2 네트워크 디바이스에 의해, 상기 멀티캐스트 패킷이 속한 VPN(virtual private network) 인스턴스에 기초하여 상기 멀티캐스트 패킷을 캡슐화하여 BIER 패킷을 획득하는 단계 - 상기 BIER 패킷은 IPv6(internet protocol version 6) 헤더, BIER(bit index explicit replication) 헤더 및 멀티캐스트 패킷을 포함하고, 상기 IPv6 헤더의 목적지 주소 또는 상기 BIER 헤더의 제1 필드는 서비스 식별자를 전달하고 상기 서비스 식별자는 VPN 인스턴스를 식별함 - 와,
    상기 제2 네트워크 디바이스에 의해 상기 BIER 패킷을 제1 네트워크 디바이스로 송신하는 단계
    를 포함하는,
    방법.
  8. 제7항에 있어서,
    상기 서비스 식별자는 상기 IPv6 헤더의 상기 목적지 주소의 일부 비트에 실리고, 상기 목적지 주소는 상기 BIER 패킷에 대해 BIER 포워딩을 수행할 상기 제1 네트워크 디바이스를 나타내는,
    방법.
  9. 제8항에 있어서,
    상기 목적지 주소의 일부 비트는 상기 목적지 주소의 인수 부분인,
    방법.
  10. 제7항 내지 제9항 중 어느 한 항에 있어서,
    상기 BIER 헤더의 상기 제1 필드는 DSCP(differentiated services code point) 필드, BFIR-id(bit forwarding ingress router identifier) 필드 및 프로토콜(proto) 필드 중 어느 하나 또는 이들의 조합인,
    방법.
  11. 제7항 내지 제10항 중 어느 한 항에 있어서,
    상기 제2 네트워크 디바이스에 의해 상기 서비스 식별자를 상기 VPN 인스턴스에 할당하는 단계와,
    상기 제2 네트워크 디바이스에 의해 제1 대응관계를 설정하는 단계 - 상기 제1 대응관계는 상기 서비스 식별자와 상기 VPN 인스턴스에 대응하는 VRF 테이블 간의 대응관계를 포함함 - 를 더 포함하는,
    방법.
  12. 제11항에 있어서,
    상기 제2 네트워크 디바이스에 의해, 컨트롤 패킷을 상기 제1 네트워크 디바이스로 송신하는 단계 - 상기 컨트롤 패킷은 상기 서비스 식별자와 상기 VRF 테이블 간의 대응관계를 포함함 - 를 더 포함하는,
    방법.
  13. 제12항에 있어서,
    상기 컨트롤 패킷은 경계 게이트웨이 프로토콜(BGP) 패킷인,
    방법.
  14. 제1 네트워크 디바이스로서,
    제2 네트워크 디바이스에 의해 송신된 BIER 패킷을 수신하도록 구성된 수신 모듈 - 상기 BIER 패킷은 인터넷 프로토콜 버전 6(IPv6) 헤더, 비트 인덱스 명시적 복제(BIER) 헤더 및 멀티캐스트 패킷을 포함하고, 상기 IPv6 헤더의 목적지 주소 또는 상기 BIER 헤더의 제1 필드는 서비스 식별자를 전달하며 상기 서비스 식별자는 가상 사설망(VPN) 인스턴스를 식별함 - 과,
    상기 서비스 식별자 및 제1 대응관계에 기초하여 VRF(virtual route forwarding) 테이블을 결정하도록 구성되는 처리 모듈 - 상기 제1 대응관계는 상기 서비스 식별자와 상기 VRF 테이블 간의 대응관계를 포함함 - , 및
    상기 VRF 테이블에 기초하여 상기 VRF 테이블의 제1 고객 에지(CE) 디바이스에 상기 멀티캐스트 패킷을 송신하도록 구성되는 송신 모듈을 포함하는,
    제1 네트워크 디바이스.
  15. 제14항에 있어서,
    상기 서비스 식별자는 IPv6 헤더의 목적지 주소의 일부 비트에 실리고, 목적지 주소는 BIER 패킷에 대한 BIER 포워딩을 수행할 것을 나타내는,
    제1 네트워크 디바이스.
  16. 제15항에 있어서,
    상기 목적지 주소의 일부 비트는 상기 목적지 주소의 인수 부분인,
    제1 네트워크 디바이스.
  17. 제14항 내지 제16항 중 어느 한 항에 있어서,
    상기 BIER 헤더의 제1 필드는 DSCP(differentiated services code point) 필드, BFIR-id(bit forwarding ingress router identifier) 필드 및 프로토콜(proto) 필드 중 어느 하나 또는 이들의 조합인,
    제1 네트워크 디바이스.
  18. 제14항 내지 제17항 중 어느 한 항에 있어서,
    상기 수신 모듈은 컨트롤 패킷을 수신하도록 더 구성되고, 상기 컨트롤 패킷은 상기 서비스 식별자와 상기 VRF 테이블 간의 대응관계를 포함하며,
    상기 처리 모듈은 상기 서비스 식별자와 상기 VRF 테이블 간의 대응관계를 저장하도록 더 구성되는,
    제1 네트워크 디바이스.
  19. 제14항 내지 제18항 중 어느 한 항에 있어서,
    상기 제1 대응관계는 소스 주소를 더 포함하고,
    상기 프로세싱 모듈은 구체적으로 상기 IPv6 헤더의 소스 주소, 상기 서비스 식별자 및 상기 제1 대응관계에 기초하여 상기 VRF 테이블을 결정하도록 구성되는,
    제1 네트워크 디바이스.
  20. 제2 네트워크 디바이스로서,
    멀티캐스트 패킷을 획득하도록 구성된 수신 모듈과,
    BIER 패킷을 획득하기 위해 상기 멀티캐스트 패킷이 속하는 VPN(virtual private network) 인스턴스에 기초하여 상기 멀티캐스트 패킷을 캡슐화하도록 더 구성되는 처리 모듈 - 상기 BIER 패킷은 IPv6 헤더, BIER 헤더 및 멀티캐스트 패킷을 포함하고, 상기 IPv6 헤더의 목적지 주소 또는 상기 BIER 헤더의 제1 필드는 서비스 식별자를 전달하고 상기 서비스 식별자는 VPN 인스턴스를 식별함 - 과,
    상기 BIER 패킷을 제1 네트워크 디바이스에 송신하도록 구성된 송신 모듈을 포함하는,
    제2 네트워크 디바이스.
  21. 제20항에 있어서,
    상기 서비스 식별자는 상기 IPv6 헤더의 목적지 주소의 일부 비트에 실리고, 상기 목적지 주소는 상기 제1 네트워크 디바이스가 상기 BIER 패킷에 대해 BIER 포워딩을 수행하도록 나타내는,
    제2 네트워크 디바이스.
  22. 제21항에 있어서,
    상기 목적지 주소의 일부 비트는 상기 목적지 주소의 인수 부분인,
    제2 네트워크 디바이스.
  23. 제20항 내지 제22항 중 어느 한 항에 있어서,
    상기 BIER 헤더의 제1 필드는 DSCP(differentiated services code point) 필드, BFIR-id(bit forwarding ingress router identifier) 필드 및 프로토콜(proto) 필드 중 어느 하나 또는 이들의 조합인,
    제2 네트워크 디바이스.
  24. 제20항 내지 제23항 중 어느 한 항에 있어서,
    상기 처리 모듈은,
    상기 서비스 식별자를 상기 VPN 인스턴스에 할당하고,
    제1 대응관계를 설정하도록 더 구성되고,
    상기 제1 대응관계는 상기 서비스 식별자와 상기 VPN 인스턴스에 대응하는 VRF 테이블 간의 대응관계를 포함하는,
    제2 네트워크 디바이스.
  25. 제24항에 있어서,
    상기 송신 모듈은,
    컨트롤 패킷을 상기 제1 네트워크 디바이스에 송신하도록 더 구성되고,
    상기 컨트롤 패킷은 상기 서비스 식별자와 상기 VRF 테이블 간의 대응관계를 포함하는,
    제2 네트워크 디바이스.
  26. 제25항에 있어서,
    상기 컨트롤 패킷은 경계 게이트웨이 프로토콜(BGP) 패킷인,
    제2 네트워크 디바이스.
  27. 프로세서 및 메모리를 포함하는 제1 네트워크 디바이스로서,
    상기 메모리는 프로그램을 저장하도록 구성되고,
    상기 프로세서는 상기 메모리로부터 상기 프로그램을 호출하고 상기 프로그램을 실행하여 제1항 내지 제6항 중 어느 한 항에 따른 방법을 수행하도록 구성되는,
    제1 네트워크 디바이스.
  28. 프로세서 및 메모리를 포함하는 제2 네트워크 디바이스로서,
    상기 메모리는 프로그램을 저장하도록 구성되고,
    상기 프로세서는 상기 메모리로부터 상기 프로그램을 호출하고 상기 프로그램을 실행하여 제7항 내지 제13항 중 어느 한 항에 따른 방법을 수행하도록 구성되는,
    제2 네트워크 디바이스.
  29. BIER 패킷 포워딩 시스템으로서,
    제14항 내지 제19항 중 어느 한 항에 따른 제1 네트워크 디바이스 및 제20항 내지 제26항 중 어느 한 항에 따른 제2 네트워크 디바이스를 포함하는,
    BIER 패킷 포워딩 시스템.
  30. 컴퓨터 프로그램 또는 코드를 포함하는 컴퓨터 판독 가능 저장 매체로서,
    상기 컴퓨터 프로그램 또는 상기 코드가 컴퓨터에서 실행되는 경우 상기 컴퓨터는 제1항 내지 제6항 중 어느 한 항에 따른 방법을 수행할 수 있는,
    컴퓨터 판독 가능 저장 매체.
  31. 컴퓨터 프로그램 또는 코드를 포함하는 컴퓨터 판독 가능 저장 매체로서,
    상기 컴퓨터 프로그램 또는 상기 코드가 컴퓨터에서 실행되는 경우 상기 컴퓨터는 제7항 내지 제13항 중 어느 한 항에 따른 방법을 수행할 수 있는,
    컴퓨터 판독 가능 저장 매체.
KR1020237019574A 2020-07-21 2021-11-08 Bier 패킷 포워딩 방법, 디바이스 및 시스템 KR20230101903A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN202010702525 2020-07-21
CN202011250272.9 2020-11-11
CN202011250272.9A CN114095305A (zh) 2020-07-21 2020-11-11 Bier报文转发的方法、设备以及系统
PCT/CN2021/129377 WO2022100554A1 (zh) 2020-07-21 2021-11-08 Bier报文转发的方法、设备以及系统

Publications (1)

Publication Number Publication Date
KR20230101903A true KR20230101903A (ko) 2023-07-06

Family

ID=80295832

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020237019574A KR20230101903A (ko) 2020-07-21 2021-11-08 Bier 패킷 포워딩 방법, 디바이스 및 시스템

Country Status (6)

Country Link
US (1) US20230283554A1 (ko)
EP (1) EP4231597A4 (ko)
JP (1) JP2023549797A (ko)
KR (1) KR20230101903A (ko)
CN (1) CN114095305A (ko)
WO (1) WO2022100554A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11705983B2 (en) * 2021-03-22 2023-07-18 Cisco Technology, Inc. Efficient BIER forwarding over varying BSL domain using header stitching
CN114978985B (zh) * 2022-05-20 2024-08-06 中国电信股份有限公司 一种报文处理方法、装置、电子设备及存储介质
CN115118655B (zh) * 2022-06-21 2023-12-12 阿里巴巴(中国)有限公司 跨网络报文转发方法、装置、电子设备及可读存储介质
CN115314436B (zh) * 2022-07-11 2023-05-23 烽火通信科技股份有限公司 一种bier报文转发方法及装置
WO2024016869A1 (zh) * 2022-07-21 2024-01-25 华为技术有限公司 一种组播配置方法及装置
CN115442294B (zh) * 2022-07-29 2023-10-31 中盈优创资讯科技有限公司 一种基于bier和ipv 6组播的文件分发方法及装置
CN117768063A (zh) * 2022-09-15 2024-03-26 中兴通讯股份有限公司 信息通告方法、网络设备和计算机可读存储介质
CN117749700A (zh) * 2022-09-22 2024-03-22 华为技术有限公司 对应关系的获取方法、参数通告方法、装置、设备及介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106656524A (zh) * 2015-10-30 2017-05-10 中兴通讯股份有限公司 一种bier控制信息的传输方法、装置和系统
CN111865898B (zh) * 2016-03-21 2023-07-21 华为技术有限公司 基于流规则协议的通信方法、设备和系统
WO2018193285A1 (en) * 2017-04-17 2018-10-25 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for enabling a scalable multicast virtual private network service across a multicast label distribution protocol network using in-band signaling
CN113595913B (zh) * 2018-11-02 2023-02-14 华为技术有限公司 报文转发的方法、发送报文的装置和接收报文的装置
CN111669330B (zh) * 2019-03-08 2022-04-05 华为技术有限公司 一种bier报文的发送方法和装置
CN113726667B (zh) * 2019-09-23 2022-11-18 华为技术有限公司 一种反向路径转发rpf检查方法及装置
CN110891022B (zh) * 2019-11-20 2021-11-16 Ut斯达康通讯有限公司 基于SRv6的虚拟子网标识符发布方法和装置
CN112491706B (zh) * 2020-07-31 2024-07-23 中兴通讯股份有限公司 数据报文的处理方法及装置、存储介质、电子装置

Also Published As

Publication number Publication date
CN114095305A (zh) 2022-02-25
JP2023549797A (ja) 2023-11-29
WO2022100554A1 (zh) 2022-05-19
EP4231597A1 (en) 2023-08-23
EP4231597A4 (en) 2024-03-13
US20230283554A1 (en) 2023-09-07

Similar Documents

Publication Publication Date Title
CN110784411B (zh) 建立bier转发表项的方法、装置和系统
KR20230101903A (ko) Bier 패킷 포워딩 방법, 디바이스 및 시스템
US11991012B2 (en) Packet forwarding method, packet sending apparatus, and packet receiving apparatus
US11902049B2 (en) BIER packet sending method and apparatus
CN109861924B (zh) 报文的发送、处理方法及装置,pe节点,节点
CN113114576B (zh) 报文发送的方法、设备和系统
CN110474829B (zh) 传输报文的方法和装置
US11870681B2 (en) Bier multicast traffic statistics collection method, device, and system
US20220200820A1 (en) Packet Sending Method and Apparatus
CN108306825B (zh) 一种等价转发表项生成方法和vtep设备
CN112822097B (zh) 报文转发的方法、第一网络设备以及第一设备组
US20230318974A1 (en) BIER Packet Forwarding Method, Device, and System
US20220337521A1 (en) Packet Sending Method, Device and System
JP7273125B2 (ja) BIERv6パケットを送信するための方法および第1のネットワークデバイス
WO2021254454A1 (zh) Bier oam检测的方法、设备以及系统
CN113285878B (zh) 负载分担的方法、第一网络设备
WO2023125774A1 (zh) 一种vxlan报文传输方法、网络设备及系统
CN115460140A (zh) 网络互通方法及装置