KR102621953B1 - 패킷 검출 방법 및 제1 네트워크 장치 - Google Patents

패킷 검출 방법 및 제1 네트워크 장치 Download PDF

Info

Publication number
KR102621953B1
KR102621953B1 KR1020210046902A KR20210046902A KR102621953B1 KR 102621953 B1 KR102621953 B1 KR 102621953B1 KR 1020210046902 A KR1020210046902 A KR 1020210046902A KR 20210046902 A KR20210046902 A KR 20210046902A KR 102621953 B1 KR102621953 B1 KR 102621953B1
Authority
KR
South Korea
Prior art keywords
bier
network device
packet
bfr
information
Prior art date
Application number
KR1020210046902A
Other languages
English (en)
Other versions
KR20210127098A (ko
Inventor
징롱 시에
양 시아
수에송 젱
Original Assignee
후아웨이 테크놀러지 컴퍼니 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 후아웨이 테크놀러지 컴퍼니 리미티드 filed Critical 후아웨이 테크놀러지 컴퍼니 리미티드
Publication of KR20210127098A publication Critical patent/KR20210127098A/ko
Application granted granted Critical
Publication of KR102621953B1 publication Critical patent/KR102621953B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • 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/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/069Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • 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
    • 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/34Source routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1491Countermeasures against malicious traffic using deception as countermeasure, e.g. honeypots, honeynets, decoys or entrapment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2212/00Encapsulation of packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • Environmental & Geological Engineering (AREA)
  • Virology (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 출원은 패킷 검출 방법을 제공한다. 이 방법은, 제1 네트워크 장치에 의해, BIER(bit index explicit replication) 패킷을 획득하는 단계 - BIER 패킷은 트랩 정보를 포함하고, 트랩 정보는 BIER 패킷이 유효한 BIER 패킷인지 여부를 나타내는 데 사용됨 - 와, 제1 네트워크 장치에 의해, 트랩 정보가 유효한지 여부를 판단하는 단계와, 제1 네트워크 장치에 의해, 제1 네트워크 장치가 트랩 정보가 유효하다고 판단한 경우에 BIER 패킷이 유효하지 않은 BIER 패킷이라고 판정하는 단계를 포함한다. 본 출원에 제공된 기술적 해법에 따르면, 유효하지 않은 BIER 패킷이 검출될 수 있어, BIER 패킷 포워딩 프로세스에서의 보안 또는 BIER 패킷 캡슐화의 정확도를 향상시킬 수 있다.

Description

패킷 검출 방법 및 제1 네트워크 장치{PACKET DETECTION METHOD AND FIRST NETWORK DEVICE}
본 출원은 네트워크 통신 분야에 관한 것으로, 보다 구체적으로는 패킷 검출 방법 및 제1 네트워크 장치에 관한 것이다.
인터넷 프로토콜(internet protocol, IP) 멀티캐스트 기술은 IP 네트워크 상에서 효율적인 포인트-투-멀티포인트(point-to-multipoint) 데이터 전송을 구현함으로써, 네트워크 대역폭을 효과적으로 절약하고 네트워크 부하를 감소시킨다. 따라서, 멀티캐스트 데이터 포워딩 경로를 구성하는 새로운 기술이 업계에 제시되고 있는데, 이를 비트 인덱스 명시적 복제(bit index explicit replication, BIER) 기술이라고 한다. 이 기술은 멀티캐스트 분산 트리를 구성할 필요가 없는 새로운 멀티캐스트 기술 아키텍처를 제안한다.
관련 기술적 해법에서, BIER 패킷은 일부 보안 메커니즘이 결여되어 있다. 따라서, 유효하지 않은 BIER 패킷이 BIER 도메인에서 대량으로 복제되어 멀티캐스트 트래픽을 수신할 필요가 없는 장치로 전송될 수 있다. 이는 링크 대역폭 낭비를 초래하고, 심지어 링크에서 서비스 거부(denial of service, DoS)를 일으킨다.
본 출원에서 제공되는 패킷 검출 방법 및 제1 네트워크 장치에 따르면, 유효하지 않은 BIER 패킷을 검출할 수 있어, BIER 패킷 포워딩 프로세스의 보안 또는 BIER 패킷 캡슐화의 정확도를 향상시킬 수 있다.
제1 양태에 따르면, 패킷 검출 방법이 제공된다. 이 방법은, 제1 네트워크 장치가 비트 인덱스 명시적 복제(BIER) 패킷을 획득하는 것을 포함하며, BIER 패킷은 트랩(trap) 정보를 포함하고, 트랩 정보는 BIER 패킷이 유효한 BIER 패킷인지 여부를 나타내는 데 사용된다. 제1 네트워크 장치는 트랩 정보가 유효한지 여부를 판단한다. 제1 네트워크 장치가 트랩 정보가 유효하다고 판단할 경우, 제1 네트워크 장치는 BIER 패킷이 유효하지 않은 BIER 패킷이라고 결정한다.
전술한 기술적 해법에서, BIER 패킷을 획득한 후에, 제1 네트워크 장치는 BIER 패킷 내의 트랩 정보가 유효한지 여부에 기초하여, BIER 패킷이 유효한 BIER 패킷인지 여부를 판단할 수 있다. 이런 방식으로, 한편으로는, 공격자가 BIER 패킷을 변조하면, BIER 패킷의 트랩 정보가 유효해진다. 제1 네트워크 장치는, BIER 패킷을 악의적으로 변조하는 행위를 검출하거나, 또는 BIER 패킷을 악의적으로 변조하는 행위를 검출할 확률을 높여, BIER 패킷 포워딩 프로세스의 보안을 강화할 수 있다. 다른 한편으로, BIER 도메인의 네트워크 장치가 BIER 패킷의 패킷 헤더 정보를 캡슐화할 때 장애 또는 에러가 발생하는 경우, 이 경우는 본 출원에서 제공하는 방법을 사용하여 검출될 수 있어, BIER 패킷 캡슐화의 정확도를 높일 수 있다.
또한, 본 출원의 이 실시예에서 제공되는 해법에서, 유효하지 않은 BIER 패킷이 식별되고, 유효하지 않은 장치가 추가로 잠겨질 수도 있으며, 또는 BIER 패킷을 포워딩하고 처리하는 네트워크 장치에 결함이 있는지 여부가 판정될 수도 있다.
가능한 구현예에서, BIER 패킷은 비트 스트링(BitString)을 포함하고, BitString은 트랩 정보를 포함한다.
다른 가능한 구현예에서, 트랩 정보는 1 비트이다.
또 다른 가능한 구현예에서, 트랩 정보는 복수의 비트를 포함한다.
가능한 구현예에서, 복수의 비트 중 적어도 2개는 서로 인접하지 않는다.
전술한 기술적 해법에서, 복수의 비트 중 적어도 2개는 서로 인접하지 않게 설정되어, 복수의 트랩이 BIER 패킷에 설정된다. 이는 BIER 패킷 캡슐화의 정확도를 향상시키거나 또는 BIER 패킷을 악의적으로 변조하는 동작을 감지할 확률을 높인다.
또 다른 가능한 구현예에서, 복수의 비트 중 적어도 2개는 서로 인접한다.
또 다른 가능한 구현예에서, 제1 네트워크 장치가 트랩 정보가 유효하다고 판단할 경우, 제1 네트워크 장치는 BIER 패킷이 유효하지 않은 BIER 패킷이라고 결정하는 것은, 제1 네트워크 장치가 복수의 비트 중 어느 한 비트가 유효하다고 판단하는 경우에 제1 네트워크 장치가 BIER 패킷이 유효하지 않은 BIER 패킷이라고 결정하는 것을 포함한다.
또 다른 가능한 구현예에서, 이 방법은, 제1 네트워크 장치가 복수의 비트 모두가 유효하지 않다고 판단하는 경우, 제1 네트워크 장치가 BIER 패킷이 유효한 BIER 패킷이라고 판정하는 것을 더 포함한다.
또 다른 가능한 구현예에서, 이 방법은, 제1 네트워크 장치가 제2 네트워크 장치에 의해 플러딩된 BIER 정보를 수신하는 것을 더 포함하며, 여기서 제2 네트워크 장치는 BIER 도메인의 중간 포워딩 장치이고, BIER 도메인은 제1 네트워크 장치를 포함하며, BIER 정보는 제2 네트워크 장치의 비트 포워딩 라우터 식별자(BFR-ID)를 포함하고, BFR-ID는 제2 네트워크 장치가 BIER 도메인의 에지 포워딩 장치임을 나타내는 데 사용된다.
또 다른 가능한 구현예에서, 이 방법은, 제1 네트워크 장치가 트랩 정보가 유효한지 여부를 판단하기 전에, 제1 네트워크 장치가 BIER 패킷 내의 트랩 정보를 나타내는 제어 메시지를 수신하는 것을 더 포함한다. 제1 네트워크 장치는 제어 메시지에 기초하여 BIER 패킷 내의 트랩 정보를 획득한다.
또 다른 가능한 구현예에서, 이 방법은 제1 네트워크 장치가 트랩 정보를 포함하는 제1 엔트리를 생성하는 것을 더 포함하되, 여기서 제1 엔트리는 트랩 정보가 유효한 경우에 경보를 전송하거나 또는 로그 정보를 기록하도록 지시하고, 제1 네트워크 장치가 트랩 정보가 유효하다고 판단한 경우에 경보를 전송하거나 또는 로그 정보를 기록한다.
제2 양태에 따르면, 제1 네트워크 장치가 제공된다. 제1 네트워크 장치는,
비트 인덱스 명시적 복제(BIER) 패킷을 획득하도록 구성된 획득 모듈 - BIER 패킷은 트랩 정보를 포함하고, 트랩 정보는 BIER 패킷이 유효한 BIER 패킷인지 여부를 나타내는 데 사용됨 - 과,
트랩 정보가 유효한지 여부를 판단하도록 구성된 결정 모듈을 포함하되,
여기서 결정 모듈은 또한 트랩 정보가 유효하다고 판단되는 경우에, BIER 패킷이 유효하지 않은 BIER 패킷이라고 결정하도록 구성된다.
가능한 구현예에서, BIER 패킷은 비트 스트링(BitString)을 포함하고, 비트 스트링은 트랩 정보를 포함한다.
또 다른 가능한 구현예에서, 트랩 정보는 복수의 비트를 포함한다.
가능한 구현예에서, 복수의 비트 중 적어도 2개는 서로 인접하지 않는다.
또 다른 가능한 구현예에서, 결정 모듈은 구체적으로 복수의 비트 중 어느 하나가 유효하다고 판단될 경우에 BIER 패킷이 유효하지 않은 BIER 패킷이라고 결정하도록 구성된다.
또 다른 가능한 구현예에서, 결정 모듈은 또한 복수의 비트가 모두 유효하지 않다고 판단되는 경우에 BIER 패킷이 유효한 BIER 패킷이라고 판정하도록 구성된다.
또 다른 가능한 구현예에서, 획득 모듈은 또한 제2 네트워크 장치에 의해 플러딩된 BIER 정보를 수신하도록 구성되며, 여기서 제2 네트워크 장치는 BIER 도메인의 중간 포워딩 장치이고, BIER 도메인은 제1 네트워크 장치를 포함하며, BIER 정보는 제2 네트워크 장치의 비트 포워딩 라우터 식별자(BFR-ID)를 포함하고, BFR-ID는 제2 네트워크 장치가 BIER 도메인의 에지 포워딩 장치임을 나타내는 데 사용된다.
또 다른 가능한 구현예에서, 획득 모듈은 또한 제어 메시지를 수신하도록 구성되며, 여기서 제어 메시지는 BIER 패킷의 트랩 정보를 나타내고, 제어 메시지에 기초하여 BIER 패킷의 트랩 정보를 획득한다.
또 다른 가능한 구현예에서, 제1 네트워크 장치는 제1 엔트리를 생성하도록 구성된 생성 모듈을 더 포함하며, 여기서 제1 엔트리는 트랩 정보를 포함하고, 제1 엔트리는 트랩 정보가 유효한 경우에 경보를 전송하거나 로그 정보를 기록하도록 지시하며,
결정 모듈은 또한 트랩 정보가 유효하다고 판단될 경우에 경보를 전송하거나 로그 정보를 기록하도록 구성된다.
제2 양태 및 제2 양태의 임의의 가능한 구현예의 유익한 효과는 제1 양태 및 제1 양태의 임의의 가능한 구현예의 유익한 효과에 대응한다. 세부사항은 여기서 다시 설명하지 않는다.
제3 양태에 따르면, 제1 네트워크 장치가 제공된다. 제1 네트워크 장치는 전술한 방법에서 제1 네트워크 장치의 동작을 구현하는 기능을 갖는다. 이 기능은 하드웨어에 기초하여 구현될 수도 있고, 대응하는 소프트웨어를 실행하는 하드웨어에 기초하여 구현될 수도 있다. 하드웨어 또는 소프트웨어는 전술한 기능에 대응하는 하나 이상의 모듈을 포함한다.
가능한 설계에서, 제1 네트워크 장치의 구조는 프로세서 및 인터페이스를 포함한다. 프로세서는 전술한 방법의 대응하는 기능을 수행할 때 제1 네트워크 장치를 지원하도록 구성된다. 인터페이스는 BIER 패킷을 획득할 때 제1 네트워크 장치를 지원하도록 구성되거나, 또는 제1 네트워크 장치와 제2 네트워크 장치 사이의 통신을 지원하고 제2 네트워크 장치에 의해 플러딩된 BIER 정보를 수신하도록 구성되거나, 또는 제어 메시지 수신을 지원하도록 구성된다. 제1 네트워크 장치는 메모리를 더 포함한다. 메모리는 프로세서에 연결되도록 구성되며, 메모리는 제1 네트워크 장치에 필요한 데이터 및 프로그램 명령어를 저장한다.
또 다른 가능한 설계에서, 제1 네트워크 장치는 프로세서, 송신기, 수신기, 랜덤 액세스 메모리, 판독 전용 메모리 및 버스를 포함한다. 프로세서는 버스를 통해 송신기, 수신기, 랜덤 액세스 메모리, 및 판독 전용 메모리에 각각 연결된다. 제1 네트워크 장치가 실행되어야 할 때, 기본 입력/출력 시스템의 부트로더 또는 판독 전용 메모리에 내장되는 임베디드 시스템을 사용하여 시스템을 부팅하여 시작하고, 제1 네트워크 장치를 부팅하여 정상 실행 상태에 진입한다. 정상 실행 상태에 진입한 후, 제1 네트워크 장치는 랜덤 액세스 메모리에서 애플리케이션 프로그램 및 운영 체제를 실행하며, 프로세서는 제1 양태 또는 제1 양태의 가능한 구현예들 중 어느 하나의 방법을 수행한다.
제4 양태에 따르면, 제1 네트워크 장치가 제공된다. 제1 네트워크 장치는 메인 컨트롤 보드 및 인터페이스 보드를 포함하고, 스위칭 보드를 더 포함할 수 있다. 제1 네트워크 장치는 제1 양태 또는 제1 양태의 가능한 구현예들 중 어느 하나의 방법을 수행하도록 구성된다. 구체적으로, 제1 네트워크 장치는 제1 양태 또는 제1 양태의 가능한 구현예들 중 어느 하나의 방법을 수행하도록 구성된다.
제5 양태에 따르면, 제1 네트워크 장치가 제공된다. 제1 네트워크 장치는 제어기 및 제1 포워딩 서브디바이스를 포함한다. 제1 포워딩 서브디바이스는 인터페이스 보드를 포함하고, 스위칭 보드를 더 포함할 수 있다. 제1 포워딩 서브디바이스는 제4 양태의 인터페이스 보드의 함수를 수행하도록 구성되고, 또한 제4 양태의 스위칭 보드의 기능을 수행할 수 있다. 제어기는 수신기, 프로세서, 송신기, 랜덤 액세스 메모리, 판독 전용 메모리 및 버스를 포함한다. 프로세서는 버스를 통해 수신기, 송신기, 랜덤 액세스 메모리, 및 판독 전용 메모리에 각각 연결된다. 제어기가 실행되어야 할 때, 기본 입력/출력 시스템의 부트로더 또는 판독 전용 메모리에 내장되는 임베디드 시스템을 사용하여 시스템을 부팅하여 시작하고, 제어기를 부팅하여 정상 실행 상태에 진입한다. 제어기가 정상 실행 상태에 진입한 후, 애플리케이션 프로그램 및 운영 체제가 랜덤 액세스 메모리에서 실행되어, 프로세서가 제4 양태에서 메인 컨트롤 보드의 기능을 수행할 수 있게 한다.
실제 응용에서, 제1 네트워크 장치는 임의의 수의 인터페이스, 프로세서 또는 메모리를 포함할 수 있다는 것을 이해할 수 있다.
제6 양태에 따르면, 컴퓨터 프로그램 제품이 제공된다. 컴퓨터 프로그램 제품은 컴퓨터 프로그램 코드를 포함하고, 컴퓨터 프로그램 코드가 컴퓨터에서 실행될 경우에, 컴퓨터는 제1 양태 또는 제1 양태의 가능한 구현예들 중 어느 하나에 따른 방법을 수행할 수 있게 된다.
제7 양태에 따르면, 컴퓨터 판독가능 매체가 제공된다. 컴퓨터 판독가능 매체는 컴퓨터 프로그램 코드를 저장하고, 컴퓨터 프로그램 코드가 컴퓨터에서 실행될 경우에, 컴퓨터는 제1 양태 또는 제1 양태의 가능한 구현예들 중 어느 하나에 따른 방법을 수행할 수 있게 된다. 이들 컴퓨터 판독 가능 저장 장치는, 판독 전용 메모리(read-only memory, ROM), 프로그램 가능 ROM(programmable ROM, PROM), 삭제 가능 PROM(erasable PROM, EPROM), 플래시 메모리, 전기 EPROM(electrically EPROM, EEPROM) 및 하드 드라이브(hard drive) 중 하나 이상을 포함하지만 이들로 제한되지는 않는다.
제8 양태에 따르면, 칩이 제공된다. 칩은 프로세서 및 데이터 인터페이스를 포함하고, 프로세서는, 데이터 인터페이스를 사용하여, 메모리에 저장된 명령어를 판독하여, 제1 양태 또는 제1 양태의 가능한 구현예들 중 어느 하나에 따른 방법을 수행한다. 특정 구현 프로세스에서, 칩은 중앙 처리 장치(central processing unit, CPU), 마이크로 컨트롤러 장치(micro controller unit, MCU), 마이크로 프로세싱 장치(micro processing unit, MPU), 디지털 신호 처리(digital signal processing, DSP), 시스템 온 칩(system on chip, SoC), 주문형 집적 회로(application-specific integrated circuit, ASIC), 필드 프로그래밍 가능 게이트 어레이(field programmable gate array, FPGA) 또는 프로그래밍 가능 로직 장치(programmable logic device, PLD)의 형태로 구현될 수 있다.
제9 양태에 따르면, 시스템이 제공된다. 시스템은 전술한 제1 네트워크 장치를 포함한다.
도 1은 본 출원의 일 실시예에 따른 BIER 기술의 개략적인 네트워킹 다이어그램이다.
도 2는 본 출원의 일 실시예에 따른, 가능한 BIER 헤더 포맷의 개략도이다.
도 3은 다른 가능한 BIER 헤더 포맷의 개략적인 블록도이다.
도 4는 BIER 기술에 기초하여 BIER 포워딩 테이블을 생성하고 BIER 패킷을 포워딩하는 프로세스를 도시한 것이다.
도 5는 본 출원의 일 실시예에 따른 BIERv6 캡슐화의 가능한 패킷 포맷의 개략도이다.
도 6은 본 출원의 일 실시예에 따른 인터 예측 방법의 개략적인 흐름도이다.
도 7은 본 출원의 일 실시예에 따른 패킷 검출 시나리오의 개략도이다.
도 8은 본 출원의 일 실시예에 따른 다른 패킷 검출 시나리오의 개략도이다.
도 9는 본 출원의 일 실시예에 따른 또 다른 패킷 검출 시나리오의 개략도이다.
도 10은 본 출원의 일 실시예에 따른 제1 네트워크 장치(1000)의 개략적인 구조도이다.
도 11은 본 출원의 일 실시예에 따른 제1 네트워크 장치(2000)의 개략적인 구조도이다.
도 12는 본 출원의 일 실시예에 따른 다른 제1 네트워크 장치(2100)의 하드웨어의 개략적인 구조도이다.
다음은 첨부 도면을 참조하여 본 출원의 기술적 해법을 설명한다.
본 출원에서는 복수의 장치, 구성요소, 모듈 등을 포함하는 시스템의 설명을 통해 모든 양태, 실시예 또는 특징을 제시한다. 각각의 시스템은 다른 장치, 구성요소, 모듈 등을 포함할 수 있고/있거나 첨부 도면을 참조하여 설명하는 모든 장치, 구성요소, 모듈 등을 포함하지는 않을 수도 있다는 것을 이해해야 한다. 또한, 이들 해법의 조합을 사용할 수도 있다.
또한, 본 출원의 실시예들에서, "예를 들어", "~와 같은"과 같은 용어는 예, 예시 또는 설명을 제시하기 위해 사용된다. 본 출원에서 "예"로 기술된 어떠한 실시예 또는 설계 방식도 다른 실시예 또는 설계 방식보다 더 바람직하거나 더 많은 이점을 갖는 것으로 설명되어서는 안 된다. 정확히는 "예를 들어"라는 표현은 개념을 특정 방식으로 표현하는 데 사용된다.
본 출원의 실시예에서, "대응" 및 "상응"이란 표현은 때론 동일한 의미로 사용될 수 있다. 이들 용어로 표현되는 의미는, 차이점을 강조하지 않는 경우에는 일관된다는 점에 유의해야 한다.
본 출원의 실시예에서 설명된 네트워크 아키텍처 및 서비스 시나리오는 본 출원의 실시예에서의 기술적 해법을 보다 명확하게 설명하기 위한 것이며, 본 출원의 실시예에서 제공되는 기술적 해법에 대한 제한을 두는 것은 아니다. 당업자는, 네트워크 아키텍처의 진화 및 새로운 서비스 시나리오의 출현으로, 본 출원의 실시예에서 제공되는 기술적 해법이 유사한 기술 문제에도 적용될 수 있다는 것을 알 수 있을 것이다.
본 명세서에 기술된 "일 실시예", "일부 실시예" 등의 언급은, 본 출원의 하나 이상의 실시예가 이들 실시예를 참조하여 기술된 특정 특징, 구조 또는 특성을 포함함을 나타낸다. 따라서, 본 명세서에서 "일 실시예에서", "일부 실시예에서", "일부 다른 실시예에서" 및 "다른 실시예에서"와 같이 상이한 부분에서 나타나는 문구들은, 반드시 동일한 실시예를 언급하는 것을 의미하지는 않고, 대신에, 특별히 강조되지 않는 한, "실시예들 중 하나 이상이지만 전부는 아닌 것"을 의미한다. 용어 "포함하다", "갖다" 및 이들의 변형은 모두, 달리 특별히 강조하지 않는 한, "포함하지만 이에 제한되지 않음"을 의미한다.
본 출원에서 "적어도 하나"는 하나 이상을 의미하고, "복수의"는 둘 이상을 의미한다. "및/또는"이란 용어는 관련 객체들 사이의 연관 관계를 나타내며, 세 관계를 나타낼 수 있다. 예를 들면, 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) 네트워크를 통해 복수의 수신자에게 데이터를 동시에 효율적으로 전송하는 데이터 전송 모드이다. 멀티캐스트 소스는 네트워크의 링크를 통해 멀티캐스트 그룹의 멀티캐스트 그룹 멤버에게 멀티캐스트 스트림을 송신하고, 멀티캐스트 그룹의 각 멀티캐스트 그룹 멤버는 멀티캐스트 스트림을 수신할 수 있다. 멀티캐스트 전송 모드는 멀티캐스트 소스와 멀티캐스트 그룹 멤버 사이의 포인트-투-멀티포인트(point-to-multipoint) 접속을 구현한다. 멀티캐스트 스트림은 각 네트워크 링크에서 한 번만 전송되면 되고, 멀티캐스트 스트림은 링크의 브랜치가 존재할 때만 복제된다. 따라서, 멀티캐스트 전송 모드는 데이터 전송 효율을 높이고, 백본 네트워크에서 혼잡 가능성을 줄인다.
인터넷 프로토콜(internet protocol, IP) 멀티캐스트 기술은 IP 네트워크 상에서 효율적인 포인트-투-멀티포인트(point-to-multipoint) 데이터 전송을 구현함으로써, 네트워크 대역폭을 효과적으로 절약하고 네트워크 부하를 감소시킨다. 따라서, 인터넷 프로토콜 멀티캐스트 기술은 실시간 데이터 전송, 멀티미디어 회의, 데이터 복사, 인터랙티브 프로토콜 텔레비전(IPTV), 게임, 시뮬레이션과 같이 다양한 측면에서 널리 사용되고 있다. 멀티캐스트 기술은 멀티캐스트 프로토콜을 사용하여 제어 플레인 멀티캐스트 트리를 구성한 다음, 멀티캐스트 트리를 사용하여 네트워크 플레인을 논리 트리와 유사한 구조로 만들고, 멀티캐스트 포인트-투-멀티포인트 데이터 전달을 구현한다. 분산 트리를 구성하는 핵심이 있는 각 중간 노드는 복잡한 멀티캐스트 전달 정보 상태를 유지해야 한다. 네트워크 규모가 커지고 멀티캐스트 데이터 트래픽이 증가함에 따라, 이 멀티캐스트 기술은 점점 더 높은 비용과 운영 및 유지 관리 문제에 직면한다.
따라서, 멀티캐스트 데이터 포워딩 경로를 구성하는 새로운 기술이 업계에 제시되고 있으며, 이를 비트 인덱스 명시적 복제(bit index explicit replication, BIER) 기술이라고 한다. 이 기술은 멀티캐스트 분산 트리를 구성할 필요가 없는 멀티캐스트 기술 아키텍처를 제안한다. 도 1에 도시된 바와 같이, BIER 기술을 지원하는 라우터를 비트 포워딩 라우터(Bit-forwarding router, BFR)라고 하며, BFR은 BIER 패킷을 수신하고 전송할 수 있다. 하나 이상의 BFR을 포함하는 멀티캐스트 포워딩 도메인을 BIER 도메인(BIER domain)이라고 한다. BIER 도메인 진입시에, 원본 멀티캐스트 데이터 패킷에 대해 BIER 캡슐화를 수행하는 BFR을 비트 포워딩 진입 라우터(bit forwarding ingress router, BFIR)라고 한다. BIER 도메인의 진출시에, BIER 패킷으로부터 원본 멀티캐스트 데이터 패킷을 획득하기 위해 역 캡슐화를 수행하는 BFR을 비트 포워딩 진출 라우터(bit forwarding egress router, BFER)라고 한다. BIER 도메인에서 BFIR 및 BFER는 BIER 도메인에서 에지 BFR로 지칭될 수 있음을 이해해야 한다.
이해를 쉽게 할 수 있도록, 이하에서는 도 2 내지 도 5를 참조하여 BIER 관련 기술을 상세히 설명한다.
BIER 도메인에서, 전체 BIER 서브도메인(sub-domain, SD) 내 에지 BFR에 대해 전역적으로 고유한 비트 위치(bit position) 식별자가 구성될 수 있다. 예를 들어, 각 에지 BFR에 대한 값이 BFR 식별자(BFR identifier, BFR ID)로서 구성된다. 예를 들어, BFR ID는 1 내지 256까지의 범위의 값일 수 있다. BIER 도메인의 모든 BFR ID는 하나의 비트 스트링(BitString)을 형성한다.
본 출원의 이 실시예에서, 원본 멀티캐스트 데이터 패킷이 BIER 도메인에서 전송될 때, 특정 BIER 헤더가 추가적으로 캡슐화될 필요가 있다. BIER 헤더는 BitString을 사용하여 원본 멀티캐스트 데이터 패킷의 모든 목적지 노드를 표시한다. BIER 도메인 내의 BFR은 비트 인덱스 포워딩 테이블(bit index forwarding table, BIFT)과 BIER 헤더로 운반된 BitString에 기초하여 포워딩을 수행하여, 원본 멀티캐스트 데이터 패킷이 모든 목적지 주소로 전송될 수 있도록 한다.
본 출원에서 원본 멀티캐스트 데이터 패킷의 목적지 노드는 복수의 BFER의 세트일 수 있다는 점에 유의해야 한다. 설명을 쉽게 하기 위해, 원본 멀티캐스트 데이터 패킷이 전송되어야 하는 복수의 BFER의 세트는 아래에서 목적지 노드로 지칭된다.
BIER 헤더 뒤의 원본 멀티캐스트 데이터 패킷은 인터넷 프로토콜 버전 6(internet protocol version 6, IPv6) 멀티캐스트 패킷일 수도 있고, 또는 인터넷 프로토콜 버전 4(internet protocol version 4, IPv4) 멀티캐스트 패킷일 수도 있음을 이해해야 한다. 이는 본 출원에서 특별히 제한되지 않는다.
복수의 캡슐화 타입이 있을 수 있다. 이는 본 출원에서 특별히 제한되지 않는다. 예를 들어, BIER 패킷은 멀티프로토콜 레이블 스위칭(multi-protocol label switching, MPLS)을 사용하여 캡슐화될 수 있으며, 이러한 캡슐화를 BIER-MPLS 캡슐화라고도 한다. 다른 예로서, BIER 패킷은 인터넷 프로토콜 버전 6(internet protocol version 6, IPv6)에 기초하여 캡슐화될 수 있으며, 이러한 캡슐화를 BIERv6 캡슐화라고도 한다.
다음은 도 2 내지 도 4를 참조하여 BIER-MPLS 캡슐화 관련 기술을 상세히 설명한다.
BIER 헤더가 비트 스트링(BitString) 필드를 포함한다면, BIER 헤더 포맷은 본 출원의 이 실시예에서 특별히 제한되지 않는다. 도 2 및 도 3을 참조하여, 다음은 두 가지 가능한 BIER 헤더 포맷을 각각 자세히 설명한다.
도 2는 가능한 BIER 헤더 포맷의 개략적인 블록도이다. 도 2에 도시된 바와 같이, BIER 헤더는 20 비트 길이의 비트 인덱스 포워딩 테이블 식별자(bit index forwarding table identifier, BIFT ID) 필드, 비트 스트링 길이(BitString length, BSL) 필드, 및 길이가 64 비트(8 바이트)인 다른 필드, 예컨대, BIER 헤더 뒤의 원본 멀티캐스트 데이터 패킷의 필드들인 트래픽 클래스(traffic class, TC) 필드, 스택(stack, S) 필드, TTL(Time to Live) 필드, 엔트로피(entropy) 필드, 버전(version, Ver) 필드, 프로토 필드 등을 포함할 수 있지만, 이들로 한정되지는 않는다.
다음은 BIER 헤더 내의 필드들을 자세히 설명한다.
(1) BIFT ID 필드
BIFT ID 필드의 길이는 20 비트이다. BIER-멀티프로토콜 레이블 스위칭(multi protocol label switching, MPLS) 캡슐화 하에서, BIFT ID 필드는 MPLS 레이블(label, L)이다. MPLS 레이블은 BIER 레이블이라 하며, TC/S/TTL 필드와 같이, BIFT ID 필드 다음의 필드들은 표준 레이블 인코딩 포맷이다. TC/S/TTL 필드와 같은 필드는 이하에서 별도로 설명하며, 여기서는 자세한 사항을 설명하지 않는다.
BIFT ID는 BIFT-id일 수 있으며, 서브도메인(sub-domain, SD)/비트 스트링 길이(BitString length, BSL)/세트 식별자(set identifier, SI)의 조합을 포함할 수 있다. 상이한 BIFT ID는 상이한 SD/BSL/SI의 조합에 대응할 수 있다.
상이한 BIFT ID는 상이한 조합의 SD/BSL/SI에 매핑될 수 있음을 이해해야 한다. 도 2의 BIER 헤더 포맷은 SD/BSL/SI 필드를 직접 포함하지 않는다. SD, BSL, 및 SI는 3개의 암시적 필드이고, SD/BSL/SI의 값은 BIFT ID 필드에 기초하여 매핑을 통해 얻어져야 한다.
1. 서브도메인(sub-domain, SD)
하나의 BIER은 실제 서비스 시나리오의 요건에 기초하여 여러 서브도메인들(SDs)로 분할 및 구성되어, 내부 게이트웨이 프로토콜(interior gateway protocol, IGP) 멀티토폴로지와 같은 특징을 지원할 수 있다. 각각의 BIER 도메인은 적어도 하나의 서브도메인, 즉, 디폴트 서브도메인 0을 포함할 필요가 있다. BIER 도메인이 복수의 서브도메인으로 분할될 경우, BIER 도메인 내 각 BFR은 모든 서브도메인으로 구성될 필요가 있다. 예를 들어, BIER 도메인 내 각 BFR에 하나의 서브도메인 0이 구성될 수 있으며, 시스템 기본 토폴로지가 사용된다. 그런 다음 하나의 서브도메인 1이 구성되고 멀티캐스트 토폴로지가 사용된다.
각 서브 도메인(SD)은 서브 도메인 식별자(sub-domain identifier, SD-ID)로 표현된다. 예를 들어, SD-ID 값의 범위는 0에서 255까지이고 길이는 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. 비트 스트링 길이(BitString length, BSL)
BSL은 BIER 헤더에 포함된 BitString의 길이이다. 복수의 BSL 타입이 있을 수 있다. 이는 본 출원에서 특별히 제한되지 않는다. BSL의 최소 길이는 64 비트이다. BSL의 길이는 연속적으로 128 비트, 256 비트, 512 비트, 1024 비트 또는 2048 비트 일 수 있다. BSL의 최대 길이는 4096 비트이다. 특히, 패킷에서 식별을 위해 4 비트가 사용된다. 예를 들어, BSL의 길이가 64 비트인 경우, 0001은 패킷에서 식별을 위해 사용되고, BSL의 길이가 128 비트인 경우, 0010이 패킷에서 식별을 위해 사용되며, BSL의 길이가 512 비트인 경우, 0100이 패킷에서 식별을 위해 사용되고, BSL의 길이가 1024 비트인 경우, 0101이 패킷에서 식별을 위해 사용된다.
3. 세트 식별자(set identifier, SI)
네트워크에서 BFER 노드의 수량이 256개를 초과하면, 이러한 상황에 적응하 기 위해, BIER 캡슐화는 하나의 BitString을 포함할 뿐만 아니라 하나의 세트 식별자(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> 정보는 다음 기능을 갖는데, 즉, BIER 패킷 헤더 내 BitString의 길이가 BSL을 통해 획득되어 전체 BIER 패킷의 길이를 얻는다. BSL 및 SI 정보를 통해 BitString이 1 내지 256 범위의 BFR-ID를 나타내는지 아니면 257 내지 512 범위의 BFR-ID를 나타내는지 알 수 있다. SD 정보에 기초하여 대응하는 포워딩 테이블을 찾을 수 있다.
(2) 비트 스트링(BitString) 필드
BitString의 각 비트는 에지 BFR을 식별하는 데 사용된다. 예를 들어, BitString의 최하위 비트(가장 오른쪽 비트)는 BFR-ID가 1인 BFER를 식별하는 데 사용된다. BitString의 오른쪽에서 왼쪽으로 두 번째 비트는 BFR-ID가 2인 BFER를 식별하는 데 사용된다. 포워딩 플레인에 의한 포워딩에 의존하는 포워딩 엔트리에서, 패킷이 BFER로 전송되는 것은 패킷의 BitString에 기초하여 결정된다. BIER 도메인의 BFR이 BIER를 포함하는 패킷 헤더를 수신할 경우, BFR은 BIER 헤더로 운반된 BitString 및 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 비트이고, BIFT ID는 세트 1(BFR ID가 257 내지 512인 256개의 에지 BFR 세트를 포함함)에 속한다.
(3) 트래픽 타입(traffic clasts, TC) 필드
트래픽 타입(traffic clasts, TC) 필드는 패킷의 우선순위를 식별하기 위해 사용된다.
(4) 스택(stack, S) 필드
S는 스택의 바닥에 있는 마크이다. BIER 패킷 헤더에서, 마크의 값은 1이다. 즉, MPLS 레이블은 전체 레이블 스택의 맨 아래 레이블이다.
(5) 버전(version, Ver) 필드
버전 필드의 길이는 4비트이고, 버전 필드는 IP 버전 번호를 식별하는데 사용된다. 4의 값은 IPv4를 나타내고, 6의 값은 IPv6을 나타낸다.
(6) 엔트로피(entropy) 필드
하나의 트래픽에 속하는 복수의 패킷의 엔트로피는 동일하며, 상이한 트래픽에 속하는 복수의 패킷의 엔트로피는 상이하다. 패킷이 포워딩될 때, 상이한 트래픽은 엔트로피에 기초하여 상이한 링크에 분산될 수 있고, 복수의 패킷의 동일 트래픽이 동일 링크를 통해 포워딩된다.
(7) 프로토 필드
프로토(proto) 필드는 BIER 패킷 헤더 후의 페이로드 포맷을 식별하는데 사용된다. 예를 들어, 4 및 6의 값은 각각 IPv4 패킷 및 IPv6 패킷을 나타낸다. 2의 값은 업스트림 할당 레이블의 MPLS 패킷을 나타내고, BIER을 통한 멀티캐스트 가상 사설망(multicast virtual private network, MVPN)에 사용되는 프로토 값이다. 업스트림 할당 레이블을 사용하는 이유는, 멀티캐스트가 포인트-투-멀티포인트 전송이기 때문이며, 송신단 공급자 에지(provider edge, PE) 장치는 고유 레이블을 할당하고, 제어 플레인을 통해 수신단 PE 장치에 고유 레이블을 송신할 수 있으며, 데이터 패킷은 송신단 PE 장치에 의해 할당된 레이블을 사용하고 수신단 PE 장치에서 식별된다. 수신단 PE 장치의 경우, 레이블은 수신단 PE 장치에 의해 할당되지 않고 송신단 PE 장치에 의해 할당되며, 업스트림 할당 레이블이라고 한다.
(8) 니버(nibber) 필드
니버 필드의 길이는 4비트이며 0101의 고정값을 갖는다. 이 필드는 BIER, IPv4, 및 IPv6과 같은 MPLS에 의해 운반된 서비스들을 구별하는데 사용된다. MPLS 캡슐화 및 포워딩 동안, 레이블 스택 후의 IPv4 또는 IPv6 헤더가 ECMP를 지원하는지 확인된다.
(9) BFIR-id 필드
BFIR-id 필드는 BFIR의 BFR-ID를 식별하는 데 사용된다. BFIR 노드는 서브도메인을 사용하여 BIER 패킷을 캡슐화하고 송신하며, BFIR-id 필드는 서브도메인 내 노드의 BFR-ID를 기록하는 데 사용된다.
(10) BitString 필드
비트 스트링 필드는 BIER 패킷의 목적지 노드 세트의 문자열이다.
도 3은 다른 가능한 BIER 헤더 포맷의 개략적인 블록도이다. 도 2에 도시된 BIER 헤더 포맷과 비교하여, 도 3에 도시된 BIER 헤더 포맷은 BIFT-ID 필드를 포함하지 않고, SD 필드, BSL 필드, 및 SI 필드의 3개의 필드를 포함한다. 즉, 도 3에 도시된 BIER 헤더 포맷은 SD 필드, BSL 필드, 및 SI 필드의 3개의 필드를 직접 포함하고, SD/BSL/SI 필드의 값은 BIFT ID 필드로부터 매핑될 필요가 없다.
도 3에 도시된 BIER 헤더에 포함된 필드는 도 2에 도시된 BIER 헤더에 포함된 필드와 유사한 점에 유의해야 한다. 도 3에 도시된 BIER 헤더 포맷 내의 필드에 대한 구체적인 설명은 도 2의 설명을 참고하라. 세부사항은 여기서 다시 설명하지 않는다.
도 4에 대한 다음 설명은 BIER 기술에 기초하여 BIER 포워딩 테이블을 생성하고 BIER 패킷을 포워딩하는 프로세스를 상세히 설명한다.
도 4에 도시된 BIER 도메인은 노드 A 내지 노드 F를 포함한다. 노드 A, 노드 D, 노드 E, 및 노드 F는 BIER 도메인 내의 에지 BFR이고, 노드 B 및 노드 C는 BIER 중간 포워딩 노드이다. 구체적으로, 노드 A는 BIER 도메인의 입구에 위치하고, 원본 멀티캐스트 데이터 패킷에 대해 BIER 캡슐화를 수행하는 것을 담당한다. 노드 A는 도 1의 BFIR에 대응한다. 노드 D, 노드 E, 및 노드 F는 BIER 도메인의 출구에 위치하며, 역 캡슐화를 수행하여 BIER 패킷으로부터 원본 멀티캐스트 데이터 패킷을 획득하는 것을 담당한다. 노드 D, 노드 E, 및 노드 F는 도 1의 BFIR에 대응한다.
본 출원의 이 실시예에서, 고유 BFR-ID가 BIER 도메인 내 에지 BFR에 할당될 수 있다. 예를 들어, 도 4에서, 노드 A, 노드 D, 노드 E, 및 노드 F에 대해 구성된 BFR-ID는 각각 4, 1, 2, 및 3이다. BFR-ID는 노드 B 및 노드 C와 같이, 중간 포워딩을 수행하는 BFR에는 할당되지 않는다.
본 출원의 실시예에서, "ID" 및 "id"는 때론 같은 의미로 사용될 수 있다. 이들 용어로 표현되는 의미는, 차이점을 강조하지 않는 경우에는 일관된다는 점에 유의해야 한다. 본 출원에서 BFR-ID는 도 4의 id에 대응한다.
데이터 트래픽의 BIER 헤더에서 캡슐화된 BitString은 데이터 트래픽의 모든 목적지 노드를 표시한다. 예를 들어, BFR-ID가 1인 노드 D에 대응하는 BitString은 0001이고, BFR-ID가 2인 노드 F에 대응하는 BitString은 0010이며, BFR-ID가 3인 노드 E에 대응하는 BitString은 0100이며, BFR-ID가 4인 노드 A의 BitString은 1000이다.
각 BIER 도메인 내 에지 BFR에 할당된 BFR-ID의 값은 라우팅 프로토콜에 따라 BIER 도메인 내 다른 BFR로 플러딩될 수 있고, 플러딩된 BIER 정보는 에지 BFR의 캡슐화 정보 및 IP 어드레스를 더 포함한다. 예를 들어, 노드 A의 플러딩된 BIER 정보는 노드 A의 BIFT-id 및 IP 어드레스를 전달한다. BIER 도메인 내의 BFR(예컨대, 도 4의 노드 F)은 플러딩된 BIER 정보에 기초하여 BIFT 엔트리를 생성할 수 있고, 도 4의 노드 F가 BIER 패킷을 수신한 후에, 생성된 BIFT 엔트리에 기초하여 BIER 패킷이 목적지 노드로 포워딩된다.
노드 A에 대해, BIER 패킷이 BFR-ID가 제각기 1, 2, 및 3인 BFER로 송신되어야 하는 경우, BIER 패킷은 노드 A의 이웃(노드 B)으로 전송되어야 하고, BFR-ID가 4인 에지 BFR은 노드 A 자체이다. 따라서, 노드 A에 의해 생성된 BIFT 엔트리는 다음과 같다.
포워딩 엔트리 1: 이웃 (Nbr) = B, 및 포워딩 비트 마스크(forwarding bit mask, FBM) = 0111; 및
포워딩 엔트리 2: Nbr* = A, 및 FBM = 1000.
포워딩 엔트리 1은, BIER 패킷 내 BitString에서 우측에서 좌측으로 제1 비트, 제2 비트, 및 제3 비트 중 어느 하나가 1인 경우, BIER 패킷은 노드 A의 이웃(노드 B)으로 송신된다. Nbr = B는 노드 A의 이웃이 노드 B임을 나타낸다.
포워딩 엔트리 2는, BIER 패킷 내 BitString에서 우측에서 좌측으로 제4 비트가 1인 경우, BIER 패킷은 노드 A로 송신됨을 나타낸다. 노드 A 자체에 있어서, 노드 A는 BIER 헤더를 제거하고, 원본 멀티캐스트 데이터 패킷 내의 정보에 기초하여 포워딩을 수행한다. 전술한 포워딩 엔트리 2에서, *는 Nbr을 노드 자체로서 식별하는 데 사용된다는 점에 유의해야 한다. 예를 들어, 노드 A의 경우 Nbr* = A는 노드 A의 이웃 노드가 노드 A 자체임을 나타낸다. 이와 유사하게, 도 4의 다른 노드도 다른 노드 그 자체의 이웃 노드에 기초하여 BIFT 엔트리를 생성할 수 있다. 다른 노드에 의해 생성된 BIFT 엔트리에 대해서는 도 4를 참조하라. 세부사항은 여기서 다시 설명하지 않는다.
원본 멀티캐스트 데이터 패킷을 수신한 후, BIER 도메인의 입구에 있는 BFIR인 노드 A는 원본 멀티캐스트 데이터 패킷 이전에 BIER 헤더를 캡슐화한다. 설명을 쉽게 하기 위해, BIER 도메인의 입구에 있는 BFIR인 노드 A를 간략히 진입 노드 A로 지칭함을 이해해야 한다. 예를 들어, 원본 멀티캐스트 데이터 패킷을 수신한 후, 진입 노드 A는 경계 게이트웨이 프로토콜 BGP 메시지를 사용하여 플러딩된 BFR-ID에 기초하여 원본 멀티캐스트 데이터 패킷의 목적지 노드를 알 수 있다. 예를 들어, 원본 멀티캐스트 데이터 패킷의 수신자는 BFR-ID가 3인 목적지 노드 E, BFR-ID가 2인 목적지 노드 F, BFR-ID가 1인 목적지 노드 D이다. 진입 노드 A는 BIER 헤더의 BitString을 0111로 캡슐화하고, 포워딩 엔트리 1에 기초하여 캡슐화된 BIER 패킷을 인접 노드 B로 포워딩한다. BIER 패킷을 수신한 후, 노드 B는, 0111인 BitString 및 BIFT 엔트리에 기초하여, BIER 패킷이 노드 C와 노드 E로 각각 전송되어야 하는지 판단한다. BIER 패킷을 노드 C로 전송할 경우, 노드 B는 BIER 헤더 내 BitString(0111) 및 BIFT 엔트리 내 Nbr = C에 대응하는 FBM 필드에 대해 AND 연산을 수행할 수 있다. 본 출원의 이 실시예에서, AND 연산의 결과는 0011이다. 따라서, 노드 B는 BIER 헤더 내 BitString을 0011로 수정하고 0011을 노드 C로 전송할 수 있다. 이와 유사하게, BIER 패킷을 노드 E로 전송할 경우, 노드 B는 BIER 헤더 내 BitString을 0100으로 수정할 수 있다. BIER 패킷을 수신한 후, 노드 E는 BitString 0100에 기초하여, BIER 패킷이 이웃 노드 E로 전송되어야 한다고 판단한다. 노드 E는 포워딩 테이블 내의 식별자 *에 기초하여 이웃 노드 E가 노드 E 자신이라고 판단하기 때문에, BIER 도메인 내의 진출 BFER로서의 노드 E는 역 캡슐화를 수행하여 BIER 패킷으로부터 원본 멀티캐스트 데이터 패킷을 획득하고, 내부의 원본 멀티캐스트 데이터 패킷 내의 정보에 기초하여 포워딩을 수행한다.
BIER-MPLS 캡슐화 동안, BIER 헤더의 처음 32 비트는 MPLS 레이블 코드이고, 처음 32 비트 중 처음 20 비트는 MPLS 레이블 값이다. MPLS 레이블 값은 포워딩 프로세스에서 변경된다. 예를 들어, 수신 노드 A가 노드 B로 패킷을 전송할 때, 노드 B의 MPLS 레이블 값은 캡슐화되어야 한다. 노드 B가 노드 C에 패킷을 전송할 때, 노드 C의 MPLS 레이블 값은 캡슐화되어야 한다. 본 출원의 이 실시예에서, 노드 A/노드 B/노드 C/노드 D/노드 E/노드 F에 의해 할당된 MPLS 레이블 값은 각각 100/200/300/400/500/600이고, 이들 MPLS 레이블 값은 BIER 캡슐화 정보로 전달되고 라우팅 프로토콜에 따라 BIER 도메인의 다른 BFR로 플러딩되어야 하며, 그러면 노드 A가 노드 B의 MPLS 레이블 값을 알 수 있다. BIER 정보를 나타내는 MPLS 레이블을 BIER 레이블이라고도 한다.
본 출원의 이 실시예에서, 에지 BFR에 의해 구성된 비트 위치는 내부 게이트웨이 프로토콜(interior gateway protocol, IGP) 또는 경계 게이트웨이 프로토콜(border gateway protocol, BGP)을 사용하여 미리 BIER 도메인에 플러딩되며, 따라서, BIER 도메인의 각 BFR은 BIER 도메인에서 원본 멀티캐스트 데이터 패킷의 포워딩을 안내하기 위한 비트 인덱스 포워딩 테이블(bit index forwarding table, BIFT)을 형성한다. IGP 또는 BGP와 함께 BIER 도메인에 플러드된 정보를 BIER 정보라고 한다. BIER 헤더로 캡슐화된 BIER 패킷을 수신할 경우, BFR은 BIFT 엔트리에 기초하여 BIER 패킷을 목적지 노드로 포워딩한다.
본 출원의 이 실시예에서, 내부 게이트웨이 프로토콜 IGP는 개방형 최단 경로 우선(Open Shortest Path First, OSPF) 프로토콜, 중간 시스템-중간 시스템(intermediate system to intermediate system, ISIS) 프로토콜 등을 포함하지만 이에 한정되지는 않는다.
BIER 도메인(BIER domain)은, BIER 정보가 IGP 또는 BGP를 이용하여 플러딩될 수 있고, BIFT 엔트리가 생성될 수 있는 네트워크 영역을 의미함을 이해해야 한다. BIER 도메인은 BFIR 및 BFER을 포함한다. BIER 정보는 각 에지 BFR의 BFR ID를 포함할 수 있지만 이에 제한되지는 않는다. 예를 들어, IGP가 배포되고 BIER 정보가 자율 시스템(autonomous system, AS) 도메인에 플러딩된다. AS 도메인은 BIER 도메인(BIER domain)이다.
일반적으로, 대규모 네트워크는 복수의 도메인으로 분할된다. 예를 들어, 네트워크는 상이한 관리 도메인에 따라 상이한 AS로 분할될 수 있다. AS의 경계는 자율 시스템 경계 라우터(autonomous system border router, ASBR)일 수 있다. IGP가 배포될 수 있으며 BIER 정보가 다른 AS에 플러딩된다. BGP가 복수의 AS들 사이에 배치되었지만 BIER 정보가 플러딩되지 않은 경우, 복수의 AS는 상이한 BIER 도메인(BIER domain)일 수 있다.
다음은 도 5를 참조하여 BIERv6 캡슐화 관련 기술을 상세히 설명한다.
BIERv6 캡슐화는 네이티브 IPv6 및 BIER의 장점을 결합하여 형성된 해법임을 이해해야 한다. BIERv6 캡슐화의 패킷 포맷은 IPv6 헤더 + BIER 헤더 + 원본 멀티캐스트 데이터 패킷이다. BIER 헤더는 IPv6 확장 헤더에 포함될 수 있으며, 원본 멀티캐스트 데이터 패킷은 외부 IPv6 헤더의 페이로드(payload)로 사용된다.
이러한 캡슐화 하에서, IPv6 헤더 및 BIER 헤더를 포함하는 IPv6 확장 헤더는 함께 내부 원본 멀티캐스트 데이터 패킷의 외부 패킷 헤더를 형성한다. 내부 원본 멀티캐스트 데이터 패킷의 외부 패킷 헤더는 본 출원의 이 실시예에서 BIERv6 헤더라고도 한다.
BIER 헤더를 포함하는 IPv6 확장 헤더는 본 출원의 이 실시예에서 특별히 제한되지 않는다. 예를 들어, IPv6 확장 헤더는 목적지 옵션 헤더(destination option header, DOH)일 수 있다. 다른 예로, IPv6 확장 헤더는 라우팅 헤더(routing header, HR)일 수도 있다.
도 5는 가능한 BIERv6 캡슐화의 개략적인 블록도이다. 도 5를 참조하면, BIER 헤더는 IPv6 확장 헤더, 예컨대 DOH에 위치할 수 있다.
DOH는 타입, 길이 및 값(type length value, TLV) 포맷이며, 여기서 BIER 헤더는 DOH의 옵션 TLV에서 옵션 데이터로 사용됨을 이해해야 한다. 옵션 TLV의 옵션 타입은 옵션 데이터의 포맷을 나타낸다. 옵션 TLV의 옵션 길이는 옵션 데이터의 길이를 나타낸다.
BIERv6 캡슐화 동안, DOH의 BIER 헤더 포맷은, BIER 헤더가 BitString 필드를 포함할 경우, 본 출원의 이 실시예에서 특별히 제한되지 않는다는 점에 유의해야 한다. BIER 헤더 포맷은 도 2에 도시된 포맷, 도 2에 도시된 포맷 또는 다른 포맷일 수 있다. 예를 들어, BIERv6 캡슐화에서, BIER 헤더가 비트 인덱스 명시적 복제에 사용되는 비트 문자열(BitString)을 포함하는 한, BIER 헤더에서 프로토 필드, DSCP 필드 등을 추가로 삭제할 수 있다. BIER 헤더 포맷에 대한 구체적인 설명은 도 2 또는 도 3의 설명을 참조한다. 세부사항은 여기서 다시 설명하지 않는다.
다음은 외부 IPv6 헤더 내의 필드들을 자세히 설명한다.
버전(version, Ver) 필드는 IP 버전 번호를 나타내고 6의 값은 IPv6을 나타낸다.
트래픽 클래스(traffic class, TC) 필드는 패킷의 우선순위를 나타낸다.
플로우 레이블(flow label, FL) 필드는 하나의 트래픽에 속하는 복수의 패킷에 동일한 플로우 레이블 값을 레이블링하고, 상이한 트래픽에 속하는 복수의 패킷에 또 다른 플로우 레이블 값을 레이블링하는데 사용될 수 있다. 패킷이 포워딩될 때, 상이한 트래픽은 플로우 레이블에 기초하여 상이한 링크에 분산될 수 있고, 복수의 패킷의 동일 트래픽이 동일 링크를 통해 포워딩된다.
페이로드 길이(payload length, PL) 필드는 패킷의 길이를 나타낸다.
다음 헤더(Next Header, NH) 필드는 패킷의 다음 헤더의 타입을 나타내는데, 예를 들면 IPv6 확장 헤더를 나타낼 수 있다.
홉 리미트(Hop Limit, HL) 필드는 패킷의 홉 한도를 나타낸다.
소스 주소(source address, SA) 필드는 패킷의 소스 주소를 나타낸다.
목적지 주소(destination address, DA) 필드는 패킷의 목적지 주소를 나타낸다.
도 4에 도시된 BIER 도메인이 예로서 사용된다. 노드 A는 IPv6 네트워크의 진입 노드로서 사용된다. 멀티캐스트 데이터 패킷을 수신한 후, 노드 A는 BIERv6 헤더 뒤에 패킷을 캡슐화한다. 즉, 외부 IPv6 헤더와 BIER 헤더를 포함하는 IPv6 확장 헤더 뒤에, 캡슐화된 BIERv6 패킷이 획득된다. Ipv6 확장 헤더에 포함된 BIER 패킷 헤더는 목적지 노드 세트를 나타내는 BitString을 운반한다.
노드 A는 BIER 패킷 헤더의 BIER 패킷 헤더 및 BitString 정보에 기초하여 캡슐화된 BIERv6 패킷을 노드 B로 전송한다. 전송 동안, IPv6 패킷 헤더의 목적지 주소 필드는 노드 B의 유니캐스트 주소(예컨대, B::100)를 사용한다. 노드 B는 BIER 패킷 헤더와 BIER 패킷 헤더의 BitString 정보에 기초하여 노드 C와 노드 E로 패킷을 전송한다. 전송 동안, IPv6 헤더의 목적지 주소 필드는 노드 C의 유니캐스트 주소(예컨대, C::100)와 노드 E의 유니캐스트 주소(예컨대, E::100)를 사용한다. 이와 유사하게, 노드 C는 BIER 패킷 헤더와 BIER 패킷 헤더의 BitString 정보에 기초하여 노드 D와 노드 F로 패킷을 전송한다. 전송 동안, IPv6 헤더의 목적지 주소 필드는 노드 D의 유니캐스트 주소(예컨대, D::100)와 노드 F의 유니캐스트 주소(예컨대, F::100)를 사용한다.
네트워크 보안이 점점 더 중요해짐에 따라 유효하지 않은 패킷에 대한 검출이 점점 더 중요해지고 있다. 가능한 경우, BIER 패킷을 포워딩하는 프로세스에서 BIER 패킷은 공격자로부터의 공격에 취약하여, BIER 패킷은 유효하지 않은 BIER 패킷이 된다. 도 1에 도시된 네트워크 아키텍처가 예로서 사용된다. BIER 패킷을 포워딩하는 프로세스에서, BIER 패킷의 패킷 헤더 정보 내의 BitString 필드가 변경된다. 예를 들어, 공격자는 링크를 공격자의 장치에 BFIR1과 BFR 사이의 링크를 연결하여 이 링크를 공격할 수 있다. 예를 들어, 공격자는 BFIR1에 의해 전송된 BIER 패킷을 수신한 후, BIER 패킷의 포워딩 프로세스에서 모든 변수 필드(BitString)를 1로 설정한 다음, 변조된 BIER 패킷을 BFR로 전송한다. 또 다른 예로, 공격자는 BFIR1 노드를 공격한다. 예를 들어, 구성이 BFIR1 노드에서 수정된다. 그 결과, 멀티캐스트 패킷을 캡슐화할 때, BFIR1 노드는 모든 BitString 필드를 1로 설정한 다음, 변조된 BIER 패킷을 BFR로 전송한다. 또 다른 예로, BFIR1 노드가 BitString을 캡슐화할 때 에러가 발생한다. BIER 패킷은 유효하지 않은 패킷이라고 할 수 있으며, 유효하지 않은 BIER 패킷은 멀티캐스트 트래픽이 BIER 도메인에서 대량으로 복제되도록 할 수 있으며, 멀티캐스트 트래픽이 멀티캐스트 트래픽을 수신할 필요가 없는 장치로 전송된다. 이는 링크 대역폭 낭비를 초래하고, 심지어 링크에서 서비스 거부(denial of service, DoS)를 일으킨다.
본 출원의 실시예들에서 제공되는 패킷 검출 방법에 따르면, 유효하지 않은 BIER 패킷을 검출할 수 있어, BIER 패킷 포워딩 프로세스의 보안 또는 BIER 패킷 캡슐화의 정확도를 향상시킬 수 있다.
도 6은 본 출원의 일 실시예에 따른 패킷 검출 방법의 개략적인 흐름도이다. 도 6을 참조하면, 이 방법은 단계 610 내지 630을 포함할 수 있다. 다음은 단계 610 내지 단계 630을 별도로 상세히 설명한다.
단계 610: 제1 네트워크 장치가 BIER 패킷을 획득하며, 여기서 BIER 패킷은 트랩 정보를 포함한다.
본 출원의 이 실시예에서, 제1 네트워크 장치는 BIER 도메인의 진입 노드, 예컨대, 도 1에 도시된 BFIR 1 또는 BFIR 2일 수도 있고, 예를 들어, 도 1에 도시된 BFR, BFER 1 또는 BFER 2와 같은 BIER 도메인의 다른 포워딩 노드일 수 있다.
제1 네트워크 장치가 BIER 도메인의 진입 노드인 예가 사용된다. 제1 네트워크 장치가 BIER 패킷을 획득한다는 것은 제1 네트워크 장치가 제1 네트워크 장치에 의해 생성된 BIER 패킷을 획득하는 것으로 이해될 수 있다. 구체적으로, 진입 노드로서, 제1 네트워크 장치는 멀티캐스트 데이터 패킷을 수신할 수 있고, 멀티캐스트 데이터 패킷을 캡슐화하여 BIER 패킷을 획득할 수 있으며, 제1 네트워크 장치에 의해 생성된 BIER 패킷을 획득할 수 있다.
제1 네트워크 장치가 BIER 도메인의 또 다른 포워딩 노드인 예가 사용된다. 제1 네트워크 장치가 BIER 패킷을 획득한다는 것은, 제1 네트워크 장치가 다른 노드에 의해 전송된 BIER 패킷을 수신하는 것으로 이해될 수 있다.
본 출원의 이 실시예에서, BIER 패킷은 트랩 정보를 포함할 수 있고, 트랩 정보는 BIER 패킷이 유효한 BIER 패킷인지 여부를 나타내기 위해 사용된다. 가능한 구현예에서, BIER 패킷의 BitString 필드는 트랩 정보를 포함한다. 예를 들어, 트랩 정보는 하나 이상의 비트를 포함한다.
본 출원의 이 실시예에서, 트랩 정보는 예를 들어 BIER 패킷의 포워딩 프로세스에서 사용되지 않는 정보일 수 있음을 이해해야 한다. 예를 들어, BitString에서 사용되지 않는 비트가 트랩 정보로 사용된다. 이런 방식으로, 트랩 정보가 BIER 패킷에 설정된다. 일 구현예에서, 공격자가 트랩 정보를 수정할 경우, 공격자가 BIER 패킷을 악의적으로 변조하는 동작을 모니터링할 수 있다. 다른 구현예에서, BIER 패킷이 네트워크 장치에 의해 잘못 캡슐화되는 경우, 트랩 정보가 수정되었는지 여부를 확인하면, BIER 도메인의 네트워크 장치가 BIER 패킷의 패킷 헤더 정보를 캡슐화할 때 발생하는 부정확하거나 잘못된 동작을 추가로 검출할 수 있다.
구체적으로, 예를 들어, 트랩 정보는 하나 이상의 비트를 포함한다. 본 출원의 본 실시예에서, BIER 패킷의 패킷 헤더 정보의 BitString에서 사용되지 않는 비트는 트랩 또는 허니팟(honeypot)으로 선택될 수 있다. 비트는 BFR-id에 대응한다. 예를 들어, 하나의 BIER 도메인 또는 하나의 BIERv6 도메인에서, 100개의 라우터가 BFER 노드로 사용되며, 수신된 BIER 패킷을 역 캡슐화하고 역 캡슐화된 BIER 패킷을 100개의 라우터에 연결된 멀티캐스트 수신기로 전송해야 한다. 이들 라우터는 (Sub-domain = 0, BSL = 256, SI = 0)의 BFR-id 범위로 계획된다. BFR-id는 1 내지 100이다. 이 경우 BFR-id = 101은 트랩 BFR-id로 구성될 수 있다. 또는, BFR-id = 101 내지 256이 모두 트랩 BFR-id로 구성될 수 있다. 또는, BIER 도메인에서 (Sub-domain = 0, BSL = 256, SI = 0) 및 (Sub-domain = 0, BSL = 256, SI = 1)이 구성될 수 있으며, BFR-id = 101 내지 512는 모두 트랩 BFR-id로 구성된다. 이들 트랩 BFR-id는 전술한 트랩 정보에 대응할 수 있다.
트랩 정보가 복수의 비트를 포함하는 예가 사용된다는 점에 유의해야 한다. 복수의 비트 중 적어도 2개는 서로 인접할 수도 있고, 인접하지 않을 수도 있다. 이는 본 출원에서 특별히 제한되지 않는다. 복수의 비트 중 적어도 2개가 서로 인접하지 않도록 설정되면, BIER 패킷 내에 복수의 트랩을 설정하여, BIER 패킷 캡슐화의 정확도를 높이거나 또는 BIER 패킷을 악의적으로 변조하는 동작을 검출할 확률을 높일 수 있다.
본 출원의 이 실시예에서, 트랩 BFR-id는 제1 네트워크 장치를 보호하기 위해 제1 네트워크 장치에 구성될 수 있다. 선택적으로, 트랩 BFR-id는 복수 또는 심지어 모든 네트워크 장치를 보호하기 위해, 복수 또는 심지어 모든 네트워크 장치에 추가로 구성될 수 있다.
복수의 특정 구성 모드가 있으며, 이는 본 출원에서 특별히 제한되지 않는다. 가능한 구현예에서, 특정 구성 모드는 관리자에 의한 수동 구성일 수 있다. 다른 가능한 구현예에서, 특정 구성 모드는 네트워크 관리 장치에 의한 통합 구성 전달일 수 있다. 예를 들어, 제1 네트워크 장치는 보안 채널을 통해 네트워크 관리 장치에 의해 통합적으로 전달되는 제어 메시지를 수신한다. 보안 채널은 보안 셸(Secure Shell, SSH) 채널 또는 전송 계층 보안(transport layer secure, TLS) 채널일 수 있다. 제어 메시지는 커맨드 라인 메시지 또는 네트워크 구성(network configuration, Netconf) 프로토콜 메시지일 수 있다. 적어도 하나의 구성된 트랩 비트는 제어 메시지에서 하나의 비트 포워딩 라우터 식별자 BFR-id 값에 의해 식별될 수 있으며, 여기서 BFR-id는 트랩 BFR-id라고도 한다.
SSH는 네트워크 프로토콜이고, 주로 장치들 사이의 보안 연결 및 상호 작용에 사용되며, 주로 장치들 사이의 암호화된 전송에 사용된다는 점을 이해해야 한다.
단계 620: 제1 네트워크 장치가 트랩 정보가 유효한지 여부를 판단한다.
BIER 패킷을 획득한 후, 제1 네트워크 장치는 BIER 패킷의 트랩 정보가 유효한지 여부를 판단할 수 있다. 구체적으로, 예를 들어, 트랩 정보는 하나 이상의 비트를 포함한다. 비트 값이 1이면 해당 비트가 유효한 것으로 이해할 수 있다. 비트 값이 0이면 해당 비트가 유효하지 않은 것으로 이해할 수 있다.
구체적으로, 단계 610의 예를 참조하면, 구성된 트랩 BFR-id가 BFR-id 101 내지 BFR-id 256인 예가 사용된다. 제1 네트워크 장치는 BitString 필드에서 BFR-id 101 내지 BFR-id 256의 비트가 유효한지 여부를 판단할 수 있다.
선택적으로, 단계 620 이전에, 제1 네트워크 장치는 제어 메시지를 더 수신할 수 있으며, 여기서 제어 메시지는 BIER 패킷의 트랩 정보를 결정하거나 검증하기 위해 제1 네트워크 장치에 의해 사용된다.
단계 630: 제1 네트워크 장치가 트랩 정보가 유효하다고 판단할 경우, 제1 네트워크 장치는 BIER 패킷이 유효하지 않은 BIER 패킷이라고 결정한다.
본 출원의 이 실시예에서, 예를 들어, 트랩 정보는 복수의 비트를 포함한다. 복수의 비트 중 어느 하나가 유효하면, BIER 패킷은 유효하지 않은 BIER 패킷이라고 결정할 수 있다. 즉, 복수의 비트 중 어느 하나의 값이 1이면, 이는 BIER 패킷이 악의적으로 변조되거나 부정확하게 캡슐화되었음을 나타내며, BIER 패킷은 유효하지 않은 BIER 패킷이다.
구체적으로, 단계 610의 예를 참조하면, 구성된 트랩 BFR-id가 BFR-id 101 내지 BFR-id 256인 예가 사용된다. 제1 네트워크 장치가 BitString 필드의 BFR-id 101 내지 BFR-id 256의 임의의 비트 값이 1이라고 판단하면, 이는 BIER 패킷이 악의적으로 변조되었거나 잘못 캡슐화되었음을 나타내며, BIER 패킷은 유효하지 않은 BIER 패킷이다.
선택적으로, BIER 패킷이 유효하지 않은 BIER 패킷이라고 결정한 후, 제1 네트워크 장치는 유효하지 않은 BIER 패킷을 추가로 처리할 수 있는데, 예를 들어, 로그 정보를 기록하거나 경보를 전송할 수 있어, 관리자가 포워딩된 BIER 패킷이 유효하지 않은 패킷임을 발견할 수 있으며, 이로써 BIER 패킷 포워딩 프로세스에서의 보안 또는 BIER 패킷 캡슐화의 정확도가 향상될 수 있다. 구체적으로, 가능한 구현예에서, 제1 네트워크 장치는 제1 엔트리를 생성할 수 있고, 여기서 제1 엔트리는 트랩 정보를 포함하고, 제1 엔트리는 BIER 패킷을 처리하도록, 예를 들어, 트랩 정보가 유효할 경우, 경보를 전송하거나 또는 로그 정보를 기록하도록 지시한다.
선택적으로, 일부 실시예에서, 예를 들어 트랩 정보는 복수의 비트를 포함한다. 복수의 비트가 모두 유효하지 않은 경우, 제1 네트워크 장치는 BIER 패킷이 유효 BIER 패킷이라고 판단할 수 있다. 즉, 복수의 비트의 값들 각각이 0이면, 이는 BIER 패킷이 악의적으로 변조되거나 부정확하게 캡슐화되지 않았음을 나타내며, BIER 패킷은 유효한 BIER 패킷이다.
구체적으로, 단계 610의 예를 참조하면, 구성된 트랩 BFR-id가 BFR-id 101 내지 BFR-id 256인 예가 사용된다. 제1 네트워크 장치가 BitString 필드의 BFR-id 101 내지 BFR-id 256의 모든 비트 값이 0이라고 판단하면, 이는 BIER 패킷이 악의적으로 변조되거나 잘못 캡슐화되지 않았음을 나타내며, BIER 패킷은 유효한 BIER 패킷이다.
본 출원의 이 실시예에서, BIER 패킷이 유효한 BIER 패킷이라고 판단하면, 제1 네트워크 장치는 BIER 패킷을 포워딩할 수 있다. 구체적으로, 단계 610의 예를 참조하면, BIER 패킷의 패킷 헤더 정보 내의 BitString은 복수의 원본 비트를 포함한다. 예를 들어, BFR-id는 각각 1 내지 100이고, 이들 비트는 트래픽의 모든 목적지 노드를 표시한다. BIER 도메인의 BFR은, 예를 들어 각각 1 내지 100 인 BFR-id가 유효한지 여부와 같이 BitString의 복수의 원본 비트에 기초하여 BIER 패킷을 포워딩할 수 있다. 자세한 BIER 패킷 포워딩 프로세스에 대해서는, 도 4의 설명을 참조하라. 세부사항은 여기서 다시 설명하지 않는다.
전술한 기술적 해법에서, 트랩 정보가 설정될 수 있으며, 트랩 정보가 유효한지 여부를 판단함으로써, BIER 패킷이 유효한 BIER 패킷인지 여부가 판정된다. 이런 방식으로, 공격자가 BIER 패킷을 변조하면, BIER 패킷의 트랩 정보가 유효하다. 제1 네트워크 장치는, BIER 패킷을 악의적으로 변조하는 행위를 검출하거나, 또는 BIER 패킷을 악의적으로 변조하는 행위를 검출할 확률을 높여, BIER 패킷 포워딩 프로세스의 보안을 강화할 수 있다. 한편, BIER 도메인의 네트워크 장치가 BIER 패킷의 패킷 헤더 정보를 캡슐화할 때 장애 또는 에러가 발생하면, 이 경우는 본 출원에서 제공하는 방법을 사용하여 검출될 수 있어, BIER 패킷 캡슐화의 정확도를 높일 수 있다.
또한, 본 출원의 이 실시예에서 제공되는 해법에서, 유효하지 않은 BIER 패킷이 식별되어, 유효하지 않은 장치가 추가로 잠길 수도 있고, 또는 BIER 패킷을 포워딩하고 처리하는 네트워크 장치에 결함이 있는지 여부가 판정될 수도 있다.
선택적으로, 일부 실시예에서, 공격자가 전술한 설정된 트랩 정보를 회피하여, BIER 패킷을 악의적으로 변조하는 동작을 검출할 수 없거나 BIER 패킷을 악의적으로 변조하는 행동을 검출할 확률이 감소하는 것을 방지하기 위해, 본 출원에서는 전술한 설정된 트랩 정보(예컨대, 트랩 BFR-id)가 BIER 도메인에서 플러딩될 수 있다.
구체적으로, 하나의 유효한 BFR-id가 하나 이상의 중간 포워딩 장치에 구성될 수 있다(예컨대, 장치는 실제로 BFIR로 사용되지도 BFER로도 사용되지도 않는다). 유효한 BFR-id는 중간 포워딩 장치가 BIER 도메인 내의 BFIR 또는 BFER 도메인임을 나타낸다. 유효한 BFR-id는 IGP 또는 BGP를 통해 BIER 도메인에서 플러딩된다. 또한 유효한 BFR-id는 트랩 BFR-id로 구성된다. 일부 고수준의 공격자의 경우(예컨대, 공격자가 BFIR 노드를 손상시키고 BIER 라우팅 테이블을 확인한 경우), 이 공격자는 어느 BFR-id가 IGP 또는 BGP에 의해 플러딩된 BFR-id인지를 확인하고 플러딩된 BFR-id에 기초하여 변조를 수행할 수 있다. 예를 들어, 모든 플러딩된 BFR-id에 대응하는 패킷의 비트 열 내의 비트가 1로 변조되고, 플러딩되지 않은 다른 BFR-id에 대응하는 비트는 트랩을 피하기 위해 변조되지 않는다. 그러나, 트랩 BFR-id가 각각 하나 이상의 중간 포워딩 장치에 대해 구성되고 플러딩되면, 공격자가 플러딩된 BFR-id를 변조하더라도 동작을 검출할 수 있으므로, BIER 패킷을 악의적으로 변조하는 동작을 검출할 가능성이 높아진다.
하나 이상의 중간 포워딩 장치가 유효한 BFR-id를 플러딩하는 프로세스는, 도 4의 라우팅 프로토콜에 따라 에지 BFR이 BIER 도메인 내의 다른 BFR로 플러딩하는 프로세스와 유사함을 이해해야 한다. 세부사항은 도 4의 설명을 참조하라. 세부사항은 여기서 다시 설명하지 않는다.
도 7 내지 도 9를 참조하면, 다음은 하나 이상의 중간 포워딩 장치에 의해 플러딩된 트랩 BFR-id의 특정 구현예를 상세하게 설명한다. 도 7 내지 도 9는, 본 출원의 실시예를 이 예에 도시된 특정 값 또는 특정 시나리오로 제한하는 대신, 당업자가 본 출원의 실시예를 이해하도록 돕기 위한 것일 뿐이다. 당업자는 도 7 내지 도 9에 도시된 예에 따라 다양한 등가의 수정 또는 변경을 할 수 있으며, 이러한 수정 및 변경은 또한 본 출원의 실시예의 범위에 속한다.
도 7은 본 출원의 일 실시예에 따른 패킷 검출 시나리오의 개략도이다. 도 7을 참조하면, BIER 도메인(예컨대, 영역(area) 0)의 BFER 노드는 PE1 내지 PE30을 포함하고, PE1 내지 PE30의 BFR-id는 각각 1 내지 30이다. BFIR 노드는 PE256을 포함하며, PE256의 BFR-id는 256이다.
BIER 도메인은 하나 이상의 영역(area)으로 분할될 수 있으며, 여기서 영역 0은 BIER 도메인의 하나의 영역일 수 있음을 이해해야 한다.
예를 들어, BFR-id 31 내지 BFR-id 255는 모두 트랩 BFR-id로 설정될 수 있으며, BFR-id 31 내지 255는 모두 BIER 도메인(예컨대, 영역 0)의 각 장치에서 트랩 BFR-id로 구성된다. 이 구성은 공격자가 볼 수 없도록 암호화된 방식으로 저장될 수 있음을 이해해야 한다. 즉, 여기서 암호화된 방식으로 저장된 BFR-id는 트랩 BFR-id이다. 예를 들어, 암호화된 방식으로 저장된 BFR-id 31 내지 BFR-id 255는 트랩 BFR-id이다.
도 7을 참조하면, P31 노드와 P32 노드는 중간 포워딩 노드이다. 본 출원의 이 실시예에서, BFR-id 31은 또한 P31 노드에 대해 구성될 수 있고, BFR-id 32는 또한 P32 노드에 대해 구성될 수 있으며, BFR-id 31 및 BFR-id 32는 네트워크에서 플러딩된다. P31 노드에 대해 구성된 BFR-id 31과 P32 노드에 대해 구성된 BFR-id 32는 암호화된 방식으로 저장될 필요가 없다는 점에 유의해야 한다. 즉, 본 출원의 이 실시예에서, 여기서 암호화된 방식으로 저장된 BFR-id가 트랩 BFR-id라는 것에 기초하여, 트랩 BFR-id 및 정상 BFR-id의 일부 또는 전부가 BIER 도메인에 플러딩되는 것으로 구별되지 않을 수 있다.
일부 고수준의 공격자의 경우(예컨대, 공격자가 BFIR 노드를 손상시키고 BIER 라우팅 테이블을 확인한 경우), 이 공격자는 어느 BFR-id가 IGP 또는 BGP에 의해 플러딩된 BFR-id인지를 확인하고 플러딩된 BFR-id에 기초하여 변조를 수행할 수 있다. 예를 들어, 모든 플러딩된 BFR-id에 대응하는 패킷의 비트 열 내의 비트가 1로 변조되고, 플러딩되지 않은 다른 BFR-id에 대응하는 비트는 트랩을 피하기 위해 변조되지 않는다. 그러나, 트랩 BFR-id가 각각 하나 이상의 중간 포워딩 장치에 대해 구성되고 플러딩되면, 공격자가 플러딩된 BFR-id를 변조하더라도 동작을 검출할 수 있으므로, BIER 패킷을 악의적으로 변조하는 동작을 검출할 가능성이 높아진다.
도 8은 본 출원의 일 실시예에 따른 또 다른 패킷 검출 시나리오의 개략도이다. 도 8을 참조하면, BIER 도메인은, 예컨대 영역 0, 영역 1 및 영역 2와 같은 복수의 영역을 포함할 수 있다. 영역 1의 BFER 노드는 PE1 내지 PE30을 포함하고, PE1 내지 PE30의 BFR-id는 각각 1 내지 30이다. 영역 2의 BFER 노드는 PE1 내지 PE30을 포함하고, PE1 내지 PE30의 BFR-id는 각각 1 내지 30이다. 다른 영역의 경계는 영역 경계 라우터(area border router, ABR)이고, ABR은 영역 0, 영역 1 및 영역 2에 속한다.
여기서 영역 0, 영역 1 및 영역 2는 BIER 도메인의 세 영역일 수 있음을 이해해야 한다. 도 8에 도시된 BIER 도메인은 복수의 영역(area)을 포함할 수 있다는 것에 유의해야 한다. 설명을 쉽게 하기 위해, BIER 도메인이 세 영역을 포함하는 예를 사용하여 설명한다.
예를 들어, BFR-id 31 내지 BFR-id 60 및 BFR-id 91 내지 BFR-id 120은 모두 트랩 BFR-id로 설정될 수 있으며, BFR-id 31 내지 BFR- id 60 및 BFR-id 91 내지 BFR-id 120은 모두 BIER 도메인(예컨대, 영역 0, 영역 1 및 영역 2)의 각 장치에서 트랩 BFR-id로 구성된다. 이 구성은 공격자가 볼 수 없도록 암호화된 방식으로 저장될 수 있음을 이해해야 한다. 즉, 여기서 암호화된 방식으로 저장된 BFR-id는 트랩 BFR-id이다. 예를 들어, 암호화된 방식으로 저장된 BFR-id 31 내지 BFR-id 60 및 BFR-id 91 내지 BFR-id 120이 트랩 BFR-id이다.
도 8에 도시된 바와 같이, IGP에 복수의 영역이 있는 경우, ABR은 1에서 30까지의 BFR-id의 범위와 61에서 90까지의 다른 BFR-id의 범위를 영역 0에 광고할 수 있다. 본 출원의 이 실시예에서, BFR-id 31 내지 BFR-id 60 및 BFR-id 91 내지 BFR-id 120이 모두 트랩 BFR-id로 설정되며, ABR은 BFR-id 1 내지 은 BFR-id 120의 범위를 영역 0에 광고할 수 있다. 즉, 본 출원의 이 실시예에서, 여기서 암호화된 방식으로 저장된 BFR-id가 트랩 BFR-id라는 것에 기초하여, 트랩 BFR-id 및 정상 BFR-id의 일부 또는 전부가 BIER 도메인에 플러딩되는 것으로 구별되지 않을 수 있다.
일부 고수준의 공격자의 경우(예컨대, 공격자가 BFIR 노드를 손상시키고 BIER 라우팅 테이블을 확인한 경우), 이 공격자는 어느 BFR-id가 IGP 또는 BGP에 의해 플러딩된 BFR-id인지를 확인하고 플러딩된 BFR-id에 기초하여 변조를 수행할 수 있다. 예를 들어, 모든 플러딩된 BFR-id에 대응하는 패킷의 비트 열 내의 비트가 1로 변조되고, 플러딩되지 않은 다른 BFR-id에 대응하는 비트는 트랩을 피하기 위해 변조되지 않는다. 그러나, 트랩 BFR-id가 각각 하나 이상의 중간 포워딩 장치에 대해 구성되고 플러딩되면, 공격자가 플러딩된 BFR-id를 변조하더라도 동작을 검출할 수 있으므로, BIER 패킷을 악의적으로 변조하는 동작을 검출할 가능성이 높아진다.
도 9는 본 출원의 일 실시예에 따른 또 다른 패킷 검출 시나리오의 개략도이다. 일반적으로, 대규모 네트워크는 복수의 도메인으로 분할된다. 예를 들어, BIER 도메인은 서로 다른 관리 도메인에 기초하여 상이한 자율 시스템(autonomous system, AS) 도메인으로 분할된다. 예를 들어, 도 9는 AS0, AS1 및 AS2를 포함한다. AS1의 BFER 노드는 PE1 내지 PE30을 포함하고, PE1 내지 PE30의 BFR-id는 각각 1 내지 30이다. AS2의 BFER 노드는 PE61 내지 PE90을 포함하고, PE61 내지 PE90의 BFR-id는 각각 61 내지 90이다.
본 출원의 이 실시예에서, BIER 도메인은 복수의 AS 도메인으로 분할될 수 있음에 유의해야 한다. 설명을 쉽게 하기 위해, 도 9에서는 BIER 도메인이 세 영역을 포함하는 예를 사용하여 설명한다.
AS 도메인의 경계는 자율 시스템 경계 라우터(autonomous system border router, ASBR)일 수 있음을 이해해야 한다. 예를 들어, 도 9에서, AS0의 경계 노드는 ASBR1이고, AS1의 경계 노드는 ASBR2이며, AS2의 경계 노드는 ASBR3이다. ASBR1, ASBR2 및 ASBR3은 서로 연결된다.
본 출원의 이 실시예에서, 복수의 AS 도메인이 하나의 BIER 도메인으로 구성될 수 있다는 것을 또한 이해해야 한다. 예를 들어, 복수의 AS 도메인은 정적 구성을 통해 하나의 BIER 도메인으로 구성된다. IGP가 배포될 수 있으며 BIER 정보는 BIER 도메인의 다른 AS에 플러딩된다.
도 9를 참조하면, 크로스 AS 도메인 시나리오에서, 각 AS 도메인의 경계 노드는 정적으로 구성될 수 있다. 예를 들어, ASBR1에서 BFR-id 1 내지 BFR-id 30의 다음 홉은 ASBR2(BFR-id 1 내지 BFR-id 30 다음 홉 ASBR2)로 구성된다. 예를 들어, ASBR1에서 BFR-id 61 내지 BFR-id 90의 다음 홉은 ASBR3(BFR-id 61 내지 BFR-id 90 다음 홉 ASBR3)으로 구성된다. PE256에서 BFR-id 1 내지 BFR-id 30 및 BFR-id 61 내지 BFR-id 90의 다음 홉은 ASBR1(BFR-id 1 내지 BFR-id 30 및 BFR -id 61 내지 BFR-id 90 다음 홉 ASBR1)로 구성된다.
예를 들어, BFR-id 31 내지 BFR-id 60 및 BFR-id 91 내지 BFR-id 120은 모두 트랩 BFR-id로 설정될 수 있으며, BFR-id 31 내지 BFR- id 60 및 BFR-id 91 내지 BFR-id 120은 모두 BIER 도메인(예컨대, AS0, AS1 및 AS2)의 각 장치에서 트랩 BFR-id로 구성된다.
구체적으로, 도 5를 참조하면, 트랩 BFR-id를 설정하기 위해, 한편으로는 다음 구성을 수행할 수 있다. PE256 및 ASBR1의 트랩 BFR-id는 BFR-id 31 내지 BFR-id 60 및 BFR-id 91 내지 BFR-id 120으로 구성된다. 이 구성은 공격자는 볼 수 없도록 암호화된 방식으로 저장될 수 있다. 이 구성은 공격자가 볼 수 없도록 암호화된 방식으로 저장될 수 있음을 이해해야 한다. 즉, 여기서 암호화된 방식으로 저장된 BFR-id는 트랩 BFR-id이다. 예를 들어, 암호화된 방식으로 저장된 BFR-id 31 내지 BFR-id 255는 트랩 BFR-id이다. 반면에, 이들 트랩 BFR-id와 정상 BFR-id는 구분없이 구성될 수 있으며, 공격자가 볼 수 있도록 암호화되지 않은 방식으로 저장된다. 예를 들어, 이들 트랩 BFR-id와 정상 BFR-id는 하나의 BFR-id 범위에서 구성될 수 있다. 예를 들어, ASBR1에서 BFR-id 1 내지 BFR-id 60의 다음 홉은 ASBR2(BFR-id 1 내지 BFR-id 60 다음 홉 ASBR2)로 구성된다. BFR-id 31 내지 BFR-id 60은 트랩 BFR-id이다. ASBR1에서 BFR-id 61 내지 BFR-id 120의 다음 홉은 ASBR3(BFR-id 61 내지 BFR-id 120 다음 홉 ASBR3)으로 구성된다. BFR-id 91 내지 BFR-id 120은 트랩 BFR-id이다. PE256에서 BFR-id 1 내지 BFR-id 120의 다음 홉은 ASBR1(BFR-id 1 내지 BFR-id 120 다음 홉 ASBR1)로 구성된다. BFR-id 31 내지 BFR-id 60 및 BFR-id 91 내지 BFR-id 120은 트랩 BFR-id이다.
공격자는 2, 3, 4의 구성에 기초하여, BFR-id 31 내지 BFR-id 60 또는 BFR-id 91 냐자 BFR-id 120의 비트 1에 대해 DoS 공격을 수행할 수 있다. 그러나, 트랩 BFR-id의 처리가 트리거되어 공격을 노출한다. 이는 BIER 패킷을 악의적으로 변조하는 동작을 검출할 수 있거나 또는 BIER 패킷을 악의적으로 변조하는 동작을 감지할 확률을 높일 수 있다.
이상은 도 1 내지 9를 참조하여 본 출원의 실시예들에서의 패킷 검출 방법을 상세히 설명하였다. 다음은 도 10 내지 12를 참조하여 본 출원의 장치 실시예를 상세히 설명한다. 방법 실시예의 설명은 장치 실시예의 설명에 대응한다는 것을 이해해야 한다. 따라서, 구체적으로 설명되지 않은 부분에 대해서는 전술한 방법 실시예를 참조하라.
도 10은 본 출원의 일 실시예에 따른 제1 네트워크 장치(1000)의 개략적인 구조도이다. 도 10에 도시된 제1 네트워크 장치(1000)는 전술한 실시예의 방법에서 제1 네트워크 장치에 의해 수행된 대응 단계를 수행할 수 있다. 도 10에 도시된 바와 같이, 제1 네트워크 장치(1000)는 획득 모듈(1010) 및 결정 모듈(1020)을 포함한다.
획득 모듈(1010)은 비트 인덱스 명시적 복제(BIER) 패킷을 획득하도록 구성되며, 여기서 BIER 패킷은 트랩 정보를 포함하고, 트랩 정보는 BIER 패킷이 유효한 BIER 패킷인지 여부를 나타내는 데 사용된다.
결정 모듈(1020)은 트랩 정보가 유효한지 여부를 판단하도록 구성된다.
결정 모듈(1020)은 또한 트랩 정보가 유효하다고 판단될 때, BIER 패킷이 유효하지 않은 BIER 패킷이라고 결정하도록 구성된다.
선택적으로, BIER 패킷은 비트 스트링(BitString)을 포함하고, 비트 스트링은 트랩 정보를 포함한다.
선택적으로, 트랩 정보는 복수의 비트를 포함한다.
선택적으로, 복수의 비트 중 적어도 2개는 서로 인접하지 않는다.
선택적으로, 결정 모듈(1020)은 구체적으로 복수의 비트 중 어느 하나가 유효하다고 판단될 경우 BIER 패킷이 유효하지 않은 BIER 패킷이라고 결정하도록 구성된다.
선택적으로, 결정 모듈(1020)은 또한 복수의 비트가 모두 유효하지 않다고 판단될 때 BIER 패킷이 유효한 BIER 패킷이라고 판정하도록 구성된다.
선택적으로, 획득 모듈(1010)은 또한 제2 네트워크 장치에 의해 플러딩된 BIER 정보를 수신하도록 구성되며, 여기서 제2 네트워크 장치는 BIER 도메인의 중간 포워딩 장치이고, BIER 도메인은 제1 네트워크 장치를 포함하고, BIER 정보는 제2 네트워크 장치의 비트 포워딩 라우터 식별자(BFR-ID)를 포함하며, BFR-ID는 제2 네트워크 장치가 BIER 도메인의 에지 포워딩 장치임을 나타내는 데 사용된다.
선택적으로, 획득 모듈(1010)은 또한 제어 메시지를 수신하도록 구성되며, 여기서 제어 메시지는 BIER 패킷의 트랩 정보를 나타내고, 제어 메시지에 기초하여 BIER 패킷의 트랩 정보를 획득 또는 판단 또는 검증한다.
선택적으로, 제1 네트워크 장치(1000)는 제1 엔트리를 생성하도록 구성된 생성 모듈(1030)을 더 포함하며, 여기서 제1 엔트리는 트랩 정보를 포함하고, 제1 엔트리는 트랩 정보가 유효한 경우에 경보를 전송하거나 로그 정보를 기록하도록 지시한다.
결정 모듈(1020)은 또한 트랩 정보가 유효하다고 판단될 경우, 경보를 전송하거나 로그 정보를 기록하도록 구성된다.
도 11은 본 출원의 일 실시예에 따른 제1 네트워크 장치(2000)의 하드웨어의 개략적인 구조도이다. 도 11에 도시된 제1 네트워크 장치(2000)는 전술한 실시예의 방법에서 제1 네트워크 장치에 의해 수행된 대응 단계를 수행할 수 있다.
도 11에 도시된 바와 같이, 제1 네트워크 장치(2000)는 프로세서(2001), 메모리(2002), 인터페이스(2003) 및 버스(2004)를 포함한다. 인터페이스(2003)는 무선 또는 유선 방식으로 구현될 수 있으며, 특히 네트워크 어댑터일 수 있다. 프로세서(2001), 메모리(2002) 및 인터페이스(2003)는 버스(2004)를 사용하여 연결된다.
인터페이스(2003)는 구체적으로 송신기 및 수신기를 포함할 수 있으며, 제1 네트워크 장치가 전술한 수신 및 송신을 구현하도록 구성된다. 예를 들어, 인터페이스(2003)는 비트 인덱스 명시적 복제(BIER) 패킷을 획득하도록 구성된다.
프로세서(2001)는 전술한 실시예에서 제1 네트워크 장치에 의해 수행되는 처리를 수행하도록 구성된다. 예를 들어, 프로세서는 트랩 정보가 유효한지 여부를 판정하도록 구성되고, 또한 트랩 정보가 유효하다고 판단될 때 BIER 패킷이 유효하지 않은 BIER 패킷이라고 결정하도록 구성되며, 본 명세서에 설명된 기술의 다른 프로세스에 사용된다. 메모리(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)는 방법 실시예에서 제1 네트워크 장치(2000)의 처리 프로세스를 완료하기 위해, RAM에서 애플리케이션 프로그램 및 운영 체제를 실행한다.
도 11은 단지 제1 네트워크 장치(2000)의 단순화된 설계도이다. 실제 응용에서, 제1 네트워크 장치는 임의의 수의 인터페이스, 프로세서 또는 메모리를 포함할 수 있다.
도 12는 본 출원의 일 실시예에 따른 또 다른 제1 네트워크 장치(2100)의 하드웨어의 개략적인 구조도이다. 도 12에 도시된 제1 네트워크 장치(2100)는 전술한 실시예의 방법에서 제1 네트워크 장치에 의해 수행된 대응 단계를 수행할 수 있다.
도 12에 도시된 바와 같이, 제1 네트워크 장치(2100)는 메인 컨트롤 보드(2110), 인터페이스 보드(2130), 스위칭 보드(2120) 및 인터페이스 보드(2140)를 포함한다. 메인 컨트롤 보드(2110), 인터페이스 보드(2130, 2140), 스위칭 보드(2120)는 인터워킹을 위해 시스템 버스를 통해 시스템 백보드에 연결된다. 메인 컨트롤 보드(2110)는 시스템 관리, 장치 유지 보수 및 프로토콜 처리와 같은 기능을 완료하도록 구성된다. 스위칭 보드(2120)는 인터페이스 보드들(인터페이스 보드는 라인 카드 또는 서비스 보드라고도 함) 사이에서 데이터를 교환하도록 구성된다. 인터페이스 보드(2130, 2140)는 다양한 서비스 인터페이스(예컨대, POS 인터페이스, GE 인터페이스, ATM 인터페이스)를 제공하고 데이터 패킷을 포워딩하도록 구성된다.
인터페이스 보드(2130)는 중앙 처리 장치(2131), 포워딩 입력 메모리(2134), 물리적 인터페이스 카드(2133) 및 네트워크 프로세서(2132)를 포함할 수 있다. 중앙 처리 장치(2131)는, 인터페이스 보드를 제어 및 관리하고, 메인 컨트롤 보드의 중앙 처리 장치와 통신하도록 구성된다. 포워딩 엔트리 메모리(2134)는 엔트리, 예를 들어 전술한 포워딩 엔트리를 저장하도록 구성된다. 물리적 인터페이스 카드(2133)는 트래픽을 수신하고 전송하도록 구성된다.
인터페이스 보드(2140) 상의 동작은 본 출원의 이 실시예에서 인터페이스 보드(2130) 상의 동작과 일치한다는 것을 이해해야 한다. 간단히 하기 위해, 세부사항은 설명하지 않는다. 본 실시예의 제1 네트워크 장치(2100)는 전술한 방법 실시예의 기능 및/또는 다양한 구현 단계에 대응할 수 있음을 이해해야 한다. 세부사항은 본 명세서에서 설명하지 않는다.
또한, 하나 이상의 메인 컨트롤 보드가 있을 수 있다는 점에 유의해야 한다. 메인 컨트롤 보드가 복수 개 있는 경우, 1차 메인 컨트롤 보드와 2차 메인 컨트롤 보드가 포함될 수 있다. 하나 이상의 인터페이스 보드가 있을 수 있다. 더 강력한 데이터 처리 능력을 가진 제1 네트워크 장치는 더 많은 인터페이스 보드를 제공한다. 인터페이스 보드에는 하나 이상의 물리적 인터페이스 카드가 있을 수도 있다. 스위칭 보드가 없을 수도 있고 하나 이상의 스위칭 보드가 있을 수도 있다. 스위칭 보드가 복수인 경우, 부하 공유 및 중복 백업을 함께 구현할 수 있다. 중앙 집중식 포워딩 아키텍처에서, 제1 네트워크 장치에는 스위칭 보드가 필요하지 않을 수 있다. 인터페이스 보드는 전체 시스템의 서비스 데이터를 처리하는 기능을 제공한다. 분산 포워딩 아키텍처에서, 제1 네트워크 장치는 적어도 하나의 스위칭 보드를 가질 수 있다. 다수의 인터페이스 보드 사이의 데이터는 스위칭 보드를 통해 교환되어 대용량 데이터 교환 및 처리 능력을 제공한다. 따라서, 분산 아키텍처에서 제1 네트워크 장치의 데이터 액세스 및 처리 능력은 중앙 집중식 아키텍처의 장치보다 우수하다. 사용되는 특정 아키텍처는 특정 네트워킹 배포 시나리오에 의존한다. 이것은 여기에 제한되지 않는다.
본 출원의 실시예는 또한 컴퓨터 판독 가능 매체를 제공한다. 컴퓨터 판독 가능 매체는 프로그램 코드를 저장한다. 컴퓨터 프로그램 코드가 컴퓨터에서 실행될 때, 컴퓨터는 전술한 양태들 중 어느 하나에 따른 방법을 수행할 수 있다. 이들 컴퓨터 판독 가능 저장 장치는, 판독 전용 메모리(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 processing, DSP), 시스템 온 칩(system on chip, SoC), 주문형 집적 회로(application-specific integrated circuit, ASIC), 필드 프로그래밍 가능 게이트 어레이(field programmable gate array, FPGA) 또는 프로그래밍 가능 로직 장치(programmable logic device, PLD)의 형태로 구현될 수 있다.
본 출원의 실시예는 또한 컴퓨터 프로그램 제품을 제공한다. 컴퓨터 프로그램 제품은 제1 네트워크 장치에 적용되고, 컴퓨터 프로그램 제품은 일련의 명령어를 포함한다. 명령어가 실행되면, 전술한 양태에 따른 방법에서 제1 네트워크 장치의 동작이 수행된다.
전술한 프로세스의 순번은 본 출원의 다양한 실시예에서 실행 순서를 의미하는 것이 아님을 이해해야 한다. 프로세스의 실행 순서는 프로세스의 기능 및 내부 논리에 따라 결정되어야 하며, 본 출원의 실시예의 구현 프로세스에 대한 어떠한 제한으로 해석되어서는 안 된다.
당업자는, 본 명세서에 개시된 실시예에 기술된 예와 결합하여, 유닛들 및 알고리즘 단계들이 전자 하드웨어 또는 컴퓨터 소프트웨어와 전자 하드웨어의 조합에 의해 구현될 수 있음을 알 수 있을 것이다. 이들 기능이 하드웨어 또는 소프트웨어에 의해 수행되는지 여부는 기술적 해법의 특정한 응용 및 설계 요건에 의존한다. 당업자는 각각의 특정 응용에 대해 설명한 기능을 구현하기 위해 다른 방법을 사용할 수 있지만, 그 구현이 본 출원의 범위를 벗어나는 것으로 간주되어서는 안 된다.
당업자는, 설명을 편리하고 간략하게 하기 위해, 전술한 시스템, 장치 및 유닛의 세부적인 작업 프로세스는 전술한 방법 실시예의 대응하는 프로세스를 참조하며, 그 세부사항은 여기서 다시 설명되지 않는다는 것을 명확하게 이해할 수 있을 것이다.
본 출원에서 제공되는 여러 실시예에서, 개시된 시스템, 장치 및 방법은 다른 방식으로 구현될 수 있음을 이해해야 한다. 예를 들어, 설명된 장치 실시예는 단지 예일 뿐이다. 예를 들어, 유닛 분할은 단지 논리적 기능 분할이며 실제 구현에서는 다른 분할일 수 있다. 예를 들어, 복수의 유닛 또는 구성요소가 다른 시스템에 결합되거나 통합될 수도 있고, 일부 기능이 무시되거나 수행되지 않을 수도 있다. 또한, 표시되거나 논의된 상호 결합 또는 직접 결합 또는 통신 연결은 일부 인터페이스를 사용하여 구현될 수 있다. 장치들 또는 유닛들 사이의 간접 결합 또는 통신 연결은 전자적 형태, 기계적 형태 또는 다른 형태로 구현될 수 있다.
별개의 부분으로 기술된 유닛들이 물리적으로 분리될 수도 있고 그렇지 않을 수도 있으며, 유닛들로 표시되는 부분들은 물리적 유닛일 수도 있고 아닐 수도 있으며, 한 위치에 위치할 수도 있고, 또는 복수의 네트워크 유닛에 분산될 수도 있다. 유닛들 중 일부 또는 전부는 실시예들의 해법의 목적을 달성하기 위한 실제 요건에 기초하여 선택될 수 있다.
또한, 본 출원의 실시예에서 기능 유닛은 하나의 처리 유닛에 통합될 수도 있고, 또는 각각의 유닛이 물리적으로 단독으로 존재하거나, 또는 둘 이상의 유닛이 하나의 유닛으로 통합될 수도 있다.
이들 기능이 소프트웨어 기능 유닛의 형태로 구현되어 독립적인 제품으로 판매 또는 사용되는 경우, 이들 기능은 컴퓨터 판독 가능한 저장 매체에 저장될 수 있다. 이러한 이해를 바탕으로, 본 출원의 기술적 해법, 또는 종래 기술에 기여하는 부분, 또는 기술적 해법의 일부는 소프트웨어 제품의 형태로 구현될 수 있다. 컴퓨터 소프트웨어 제품은 저장 매체에 저장되고, 컴퓨터 장치(개인용 컴퓨터, 서버 또는 네트워크 장치일 수 있음)로 하여금 본 출원의 실시예에서 설명된 방법의 단계들 전부 또는 일부를 수행하도록 지시하기 위한 여러 명령어를 포함한다. 전술한 저장 매체는 USB 플래시 드라이브, 이동식 하드 디스크, 판독 전용 메모리(read-only memory: ROM), 랜덤 액세스 메모리(read-only memory: RAM), 자기 디스크 또는 광 디스크와 같은 프로그램 코드를 저장할 수 있는 임의의 매체를 포함한다.
전술한 설명은 본 출원의 특정 구현일뿐이며, 본 출원의 보호 범위를 제한하려는 것은 아니다. 본 출원에 개시된 기술적 범위 내에서 당업자에 의해 용이하게 파악되는 임의의 변형 또는 대체는 본 출원의 보호 범위 내에 속한다. 따라서, 본 출원의 보호 범위는 청구범위의 보호 범위에 따른다.

Claims (20)

  1. 패킷 검출 방법으로서,
    제1 네트워크 장치에 의해, 비트 인덱스 명시적 복제(BIER) 패킷을 획득하는 단계 - 상기 BIER 패킷은 트랩(trap) 정보를 포함하고, 상기 트랩 정보는 상기 BIER 패킷이 유효한 BIER 패킷인지 여부를 검출하는 데 사용되고, 상기 트랩 정보는 에지 비트 포워딩 라우터(BFR)를 식별하는 데 사용되지 않음 - 와,
    상기 제1 네트워크 장치에 의해, 상기 트랩 정보가 유효한지 여부를 판단하는 단계와,
    상기 제1 네트워크 장치가 상기 트랩 정보가 유효하다고 판단하는 경우, 상기 제1 네트워크 장치에 의해, 상기 BIER 패킷이 유효하지 않은 BIER 패킷이라고 결정하는 단계를 포함하는,
    방법.
  2. 제1항에 있어서,
    상기 BIER 패킷은 비트 스트링(BitString)을 포함하고, 상기 BitString은 상기 트랩 정보를 포함하는,
    방법.
  3. 제2항에 있어서,
    상기 트랩 정보는 복수의 비트를 포함하는,
    방법.
  4. 제3항에 있어서,
    상기 복수의 비트 중 적어도 2개의 비트는 서로 인접하지 않는,
    방법.
  5. 제3항에 있어서,
    상기 제1 네트워크 장치가 상기 트랩 정보가 유효하다고 판단하는 경우, 상기 제1 네트워크 장치에 의해, 상기 BIER 패킷이 유효하지 않은 BIER 패킷이라고 결정하는 단계는,
    상기 제1 네트워크 장치에 의해, 상기 제1 네트워크 장치가 상기 복수의 비트 중 어느 한 비트가 유효하다고 판단하는 경우, 상기 BIER 패킷이 유효하지 않은 BIER 패킷이라고 결정하는 단계를 포함하는,
    방법.
  6. 제3항에 있어서,
    상기 제1 네트워크 장치가 상기 복수의 비트 모두가 유효하지 않다고 판단하는 경우, 상기 제1 네트워크 장치에 의해, 상기 BIER 패킷이 유효한 BIER 패킷이라고 판정하는 단계를 더 포함하는,
    방법.
  7. 제1항에 있어서,
    상기 제1 네트워크 장치에 의해, 제2 네트워크 장치에 의해 플러딩된 BIER 정보를 수신하는 단계를 더 포함하되, 상기 제2 네트워크 장치는 BIER 도메인의 중간 포워딩 장치이고, 상기 BIER 도메인은 상기 제1 네트워크 장치를 포함하며, 상기 BIER 정보는 상기 제2 네트워크 장치의 비트 포워딩 라우터 식별자(BFR-ID)를 포함하고, 상기 BFR-ID는 상기 제2 네트워크 장치가 상기 BIER 도메인 내의 에지 포워딩 장치임을 나타내는 데 사용되는,
    방법.
  8. 제1항에 있어서,
    상기 제1 네트워크 장치에 의해, 상기 트랩 정보가 유효한지 여부를 판단하는 단계 전에,
    상기 제1 네트워크 장치에 의해, 제어 메시지를 수신하는 단계 - 상기 제어 메시지는 상기 BIER 패킷 내의 상기 트랩 정보를 나타냄 - 와,
    상기 제1 네트워크 장치에 의해, 상기 제어 메시지에 기초하여 상기 BIER 패킷 내의 상기 트랩 정보를 획득하는 단계를 더 포함하는,
    방법.
  9. 제1항에 있어서,
    상기 제1 네트워크 장치에 의해, 상기 트랩 정보를 포함하는 제1 엔트리를 생성하는 단계 - 상기 제1 엔트리는 상기 트랩 정보가 유효한 경우에 경보를 전송하거나 또는 로그 정보를 기록하도록 지시함 - 와,
    상기 제1 네트워크 장치가 상기 트랩 정보가 유효하다고 판단하는 경우에 상기 경보를 전송하거나 또는 상기 로그 정보를 기록하는 단계를 더 포함하는,
    방법.
  10. 제1 네트워크 장치로서,
    비트 인덱스 명시적 복제(BIER) 패킷을 획득하도록 구성된 획득 모듈 - 상기 BIER 패킷은 트랩 정보를 포함하고, 상기 트랩 정보는 상기 BIER 패킷이 유효한 BIER 패킷인지 여부를 검출하는 데 사용되고, 상기 트랩 정보는 에지 비트 포워딩 라우터(BFR)를 식별하는 데 사용되지 않음 - 과,
    상기 트랩 정보가 유효한지 여부를 판단하도록 구성된 결정 모듈을 포함하되,
    상기 결정 모듈은 또한 상기 트랩 정보가 유효하다고 판단되는 경우에, 상기 BIER 패킷이 유효하지 않은 BIER 패킷이라고 결정하도록 구성되는,
    제1 네트워크 장치.
  11. 제10항에 있어서,
    상기 BIER 패킷은 비트 스트링(BitString)을 포함하고, 상기 비트 스트링은 트랩 정보를 포함하는,
    제1 네트워크 장치.
  12. 제11항에 있어서,
    상기 트랩 정보는 복수의 비트를 포함하는,
    제1 네트워크 장치.
  13. 제12항에 있어서,
    상기 복수의 비트 중 적어도 2개의 비트는 서로 인접하지 않는,
    제1 네트워크 장치.
  14. 제12항 또는 제13항에 있어서,
    상기 결정 모듈은 또한,
    상기 복수의 비트 중 어느 한 비트가 유효하다고 판단되는 경우, 상기 BIER 패킷이 유효하지 않은 BIER 패킷이라고 결정하도록 구성되는,
    제1 네트워크 장치.
  15. 제12항 또는 제13항에 있어서,
    상기 결정 모듈은 또한,
    상기 복수의 비트 모두가 유효하지 않다고 판단되는 경우, 상기 BIER 패킷이 유효한 BIER 패킷이라고 판정하도록 구성되는,
    제1 네트워크 장치.
  16. 제10항 내지 제13항 중 어느 한 항에 있어서,
    상기 획득 모듈은 또한,
    제2 네트워크 장치에 의해 플러딩된 BIER 정보를 수신하도록 구성되되, 상기 제2 네트워크 장치는 BIER 도메인의 중간 포워딩 장치이고, 상기 BIER 도메인은 상기 제1 네트워크 장치를 포함하며, 상기 BIER 정보는 상기 제2 네트워크 장치의 비트 포워딩 라우터 식별자(BFR-ID)를 포함하고, 상기 BFR-ID는 상기 제2 네트워크 장치가 상기 BIER 도메인 내의 에지 포워딩 장치임을 나타내는 데 사용되는,
    제1 네트워크 장치.
  17. 제10항 내지 제13항 중 어느 한 항에 있어서,
    상기 획득 모듈은 또한,
    제어 메시지를 수신하고 - 상기 제어 메시지는 상기 BIER 패킷 내의 상기 트랩 정보를 나타냄 - ,
    상기 제어 메시지에 기초하여 상기 BIER 패킷 내의 상기 트랩 정보를 획득하도록 구성되는,
    제1 네트워크 장치.
  18. 제10항 내지 제13항 중 어느 한 항에 있어서,
    상기 트랩 정보를 포함하는 제1 엔트리를 생성하도록 구성된 생성 모듈을 더 포함하되, 상기 제1 엔트리는 상기 트랩 정보가 유효한 경우에 경보를 전송하거나 또는 로그 정보를 기록하도록 지시하며,
    상기 결정 모듈은 또한 상기 트랩 정보가 유효하다고 판단될 경우에 상기 경보를 전송하거나 상기 로그 정보를 기록하도록 구성되는,
    제1 네트워크 장치.
  19. 제1 네트워크 장치로서,
    프로세서 및 메모리를 포함하되, 상기 메모리는 프로그램을 저장하도록 구성되고, 상기 프로세서는 상기 메모리로부터 상기 프로그램을 호출하고 상기 프로그램을 실행하여 제1항 내지 제9항 중 어느 한 항에 따른 방법을 수행하도록 구성되는,
    제1 네트워크 장치.
  20. 컴퓨터 프로그램을 포함하는 컴퓨터 판독가능 저장 매체로서,
    상기 컴퓨터 프로그램은 컴퓨터 상에서 실행될 때, 상기 컴퓨터가 제1항 내지 제9항 중 어느 한 항에 따른 방법을 수행할 수 있게 하는,
    컴퓨터 판독가능 저장 매체.
KR1020210046902A 2020-04-13 2021-04-12 패킷 검출 방법 및 제1 네트워크 장치 KR102621953B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010287690.9A CN113542188B (zh) 2020-04-13 2020-04-13 报文检测的方法以及第一网络设备
CN202010287690.9 2020-04-13

Publications (2)

Publication Number Publication Date
KR20210127098A KR20210127098A (ko) 2021-10-21
KR102621953B1 true KR102621953B1 (ko) 2024-01-05

Family

ID=75529732

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210046902A KR102621953B1 (ko) 2020-04-13 2021-04-12 패킷 검출 방법 및 제1 네트워크 장치

Country Status (5)

Country Link
US (1) US20210320929A1 (ko)
EP (1) EP3896924A1 (ko)
JP (1) JP7322088B2 (ko)
KR (1) KR102621953B1 (ko)
CN (1) CN113542188B (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11451468B2 (en) * 2021-01-28 2022-09-20 Cisco Technology, Inc. Management framework for BIER in-band traffic accounting and path monitoring

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018530969A (ja) 2015-10-12 2018-10-18 中興通訊股▲ふん▼有限公司Zte Corporation ビットインデックス付きエクスプリシットレプリケーションを実現する方法及びビット転送ルータ
JP2020109916A (ja) 2019-01-07 2020-07-16 日本電信電話株式会社 通信装置、マルチキャスト転送システム、および、マルチキャスト転送方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3731111B2 (ja) * 2001-02-23 2006-01-05 三菱電機株式会社 侵入検出装置およびシステムならびにルータ
JP2007208575A (ja) * 2006-02-01 2007-08-16 Alaxala Networks Corp 不正トラフィック管理装置およびシステム
CN104040966B (zh) * 2012-11-09 2017-04-26 华为技术有限公司 处理报文的方法、转发面装置及网络设备
US9571897B2 (en) * 2013-09-17 2017-02-14 Cisco Technology, Inc. Bit indexed explicit replication for professional media networks
CN111934944A (zh) * 2014-12-30 2020-11-13 华为技术有限公司 位转发入口路由器、位转发路由器及操作管理维护检测方法
US10341221B2 (en) * 2015-02-26 2019-07-02 Cisco Technology, Inc. Traffic engineering for bit indexed explicit replication
CN106341327A (zh) * 2015-07-08 2017-01-18 中兴通讯股份有限公司 一种bier报文的传输方法及系统
US10142227B2 (en) * 2016-01-28 2018-11-27 Cisco Technology, Inc. Bit indexed explicit replication for deterministic network data plane
US10637675B2 (en) * 2016-11-09 2020-04-28 Cisco Technology, Inc. Area-specific broadcasting using bit indexed explicit replication
US10225187B2 (en) * 2017-03-22 2019-03-05 Cisco Technology, Inc. System and method for providing a bit indexed service chain
CN109921987B (zh) * 2017-12-13 2022-01-21 中兴通讯股份有限公司 一种bier-te网络检测方法、装置及系统
US10587495B2 (en) * 2018-03-21 2020-03-10 Nokia Solutions And Networks Oy Hierarchical bit indexed replication of multicast packets
CN110391977B (zh) * 2018-04-18 2021-11-09 中兴通讯股份有限公司 一种网络故障保护的方法、系统和存储介质
CN110768946A (zh) * 2019-08-13 2020-02-07 中国电力科学研究院有限公司 一种基于布隆过滤器的工控网络入侵检测系统及方法
US11025689B1 (en) * 2019-11-15 2021-06-01 Nokia Solutions And Networks Oy Multicast support
CN113162855B (zh) * 2020-01-22 2022-12-27 华为技术有限公司 组播报文检测方法、网络设备和系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018530969A (ja) 2015-10-12 2018-10-18 中興通訊股▲ふん▼有限公司Zte Corporation ビットインデックス付きエクスプリシットレプリケーションを実現する方法及びビット転送ルータ
JP2020109916A (ja) 2019-01-07 2020-07-16 日本電信電話株式会社 通信装置、マルチキャスト転送システム、および、マルチキャスト転送方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
IJ Wijnands et al., Multicast Using Bit Index Explicit Replication (BIER), RFC8279, IETF (2017.11.30)*
IJ Wijnandset al., Encapsulation for Bit Index Explicit Replication (BIER) inMPLS and Non-MPLS Networks, RFC8296, IETF. (2018.01.31.)*

Also Published As

Publication number Publication date
EP3896924A1 (en) 2021-10-20
US20210320929A1 (en) 2021-10-14
CN113542188A (zh) 2021-10-22
JP7322088B2 (ja) 2023-08-07
CN113542188B (zh) 2023-04-18
JP2021170772A (ja) 2021-10-28
KR20210127098A (ko) 2021-10-21

Similar Documents

Publication Publication Date Title
CN110784411B (zh) 建立bier转发表项的方法、装置和系统
CN109861926B (zh) 报文的发送、处理方法、装置、节点、处理系统和介质
CN112189323B (zh) 使用安全分段标识符进行分段路由
WO2019105462A1 (zh) 报文的发送、处理方法及装置,pe节点,节点
US7127523B2 (en) Spanning tree protocol traffic in a transparent LAN
US20230283554A1 (en) BIER Packet Forwarding Method, Device, and System
WO2022001152A1 (zh) 信息通告、报文转发、报文消除方法、装置、设备和介质
CN112737954B (zh) 报文处理方法、装置、系统、设备及存储介质
CN113746753A (zh) BIERv6报文转发的方法、设备以及系统
KR102621953B1 (ko) 패킷 검출 방법 및 제1 네트워크 장치
WO2021244108A1 (zh) Bier组播流量的统计方法、设备以及系统
US11855888B2 (en) Packet verification method, device, and system
WO2021254454A1 (zh) Bier oam检测的方法、设备以及系统
JP7119170B2 (ja) Bierv6パケット転送方法、デバイス、およびシステム
WO2023213216A1 (zh) 一种报文处理的方法及相关设备
Rijhsinghani et al. Definitions of Managed Objects for Routing Bridges (RBridges)
Rijhsinghani et al. RFC 6850: Definitions of Managed Objects for Routing Bridges (RBridges)

Legal Events

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