KR102666040B1 - 패킷 포워딩 경로를 결정하는 방법 및 시스템, 그리고 네트워크 노드 - Google Patents
패킷 포워딩 경로를 결정하는 방법 및 시스템, 그리고 네트워크 노드 Download PDFInfo
- Publication number
- KR102666040B1 KR102666040B1 KR1020217029967A KR20217029967A KR102666040B1 KR 102666040 B1 KR102666040 B1 KR 102666040B1 KR 1020217029967 A KR1020217029967 A KR 1020217029967A KR 20217029967 A KR20217029967 A KR 20217029967A KR 102666040 B1 KR102666040 B1 KR 102666040B1
- Authority
- KR
- South Korea
- Prior art keywords
- network node
- segment identifier
- packet
- segment
- forwarding path
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 105
- 238000012545 processing Methods 0.000 claims description 22
- 238000004891 communication Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 18
- 238000013461 design Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 13
- 230000008569 process Effects 0.000 description 13
- 238000004590 computer program Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/56—Routing software
- H04L45/566—Routing instructions carried by the data packet, e.g. active networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/22—Alternate routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/34—Source routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 출원은 패킷 포워딩 경로를 결정하는 방법 및 시스템 그리고 네트워크 노드를 개시한다. 상기 방법은: 제1 네트워크 노드가, 제1 세그먼트 식별자 통고 메시지를 획득하는 단계 - 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자 및 제1 플래그 비트를 포함하고, 제1 세그먼트 식별자는 제2 네트워크 노드에 대응함 -; 제1 네트워크 노드가, 제1 플래그 비트가 패킷이 제2 네트워크 노드를 통해 포워딩될 필요가 있음을 지시하는 것으로 결정하는 단계; 및 제1 네트워크 노드가, 제1 패킷 포워딩 경로를 생성하는 단계 - 제1 패킷 포워딩 경로는 제2 네트워크 노드를 포함함 -를 포함한다. 이 방법에 따르면, 제1 네트워크 노드는 세그먼트 식별자와 조합된 플래그 비트를 사용하여 패킷이 세그먼트 식별자에 대응하는 네트워크 노드를 통해 포워딩될 필요가 있음을 결정함으로써, 네트워크에서 패킷 포워딩 경로가 핵심 노드를 포함함을 보장한다. 이는 핵심 노드를 우회하여 데이터가 포워딩되는 것을 방지하고 네트워크 보안을 보장한다.
Description
본 출원은 2019년 3월 8일에 중국 국가 지적 재산권 관리국에 출원되고 발명의 명칭이 "패킷 포워딩 경로를 결정하는 방법 및 시스템 그리고 네트워크 노드"인 중국 특허 출원 번호 제201910175452.6호에 대한 우선권을 주장하는 바이며, 상기 문헌의 내용은 그 전체로서 원용에 의해 본 명세서에 포함된다.
본 발명은 통신 분야에 관한 것으로, 특히 패킷 포워딩 경로(packet forwarding path)를 결정하는 방법 및 시스템, 그리고 네트워크 노드에 관한 것이다.
세그먼트 라우팅(Segment Routing, SR)은 네트워크에서 데이터 패킷을 포워딩하기 위해 소스 라우팅 개념을 기반으로 설계된 프로토콜이다. 세그먼트 라우팅은 소스 노드에서 데이터 패킷의 포워딩 경로를 명시적으로 지정하는 것을 지원한다. SR은 다중 프로토콜 레이블 전환(Multiple Protocol Label Switch, MPLS) 데이터 평면과 인터넷 프로토콜 버전 6(Internet Protocol Version 6, IPv6) 데이터 평면의 두 데이터 평면에 배포될 수 있다. SR이 MPLS 데이터 평면에 배포될 때, SR을 SR-MPLS라고 한다. SR이 IPv6 데이터 평면에 배포될 때, SR을 IPv6 세그먼트 라우팅(SRv6)이라고 한다.
SR 네트워크가 패킷을 포워딩할 때 SR 네트워크의 진입(ingress) 노드는 패킷을 수신한 후 패킷 포워딩 경로를 계산한다. 여러 중간 노드가 패킷을 순서대로 포워딩하므로, 패킷이 최종적으로 목적지 주소에 도달한다. 방화벽 노드와 같은 일부 핵심(key) 노드가 네트워크에 존재한다. 네트워크 보안을 위해 최소한 일부 데이터는 핵심 노드를 통해 포워딩되어야 한다. 그러나, 종래 기술에서 SR 네트워크 노드는 일반적으로 최단 경로 우선 알고리즘에 의존하여 패킷 포워딩 경로를 계산하고, 패킷이 특정 노드를 확실히 통과한다고 보장할 수 없다.
SR 네트워크에서 패킷 포워딩 경로가 특정 노드를 포함한다고 보장할 수 없는 기술적 문제를 해결하기 위한, 패킷 포워딩 경로를 결정하는 방법 및 시스템, 네트워크 노드 디바이스가 제공된다.
제1 측면에 따르면, 패킷 포워딩 경로를 결정하는 방법이 제공된다. 상기 방법은, 제1 네트워크 노드가, 제1 세그먼트 식별자 통고(advertisement) 메시지를 획득하는 단계 - 상기 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자 및 제1 플래그 비트를 포함하고, 상기 제1 세그먼트 식별자는 제2 네트워크 노드에 대응함 -; 상기 제1 네트워크 노드가, 상기 제1 플래그 비트가 패킷이 상기 제2 네트워크 노드를 통해 포워딩될 필요가 있음을 지시하는 것으로 결정하는 단계; 및 상기 제1 네트워크 노드가, 제1 패킷 포워딩 경로를 생성하는 단계 - 상기 제1 패킷 포워딩 경로는 상기 제2 네트워크 노드를 포함함 - 를 포함한다.
전술한 방법에 따르면, 제1 네트워크 노드가 세그먼트 식별자와 조합된 플래그 비트를 사용하여 패킷이 세그먼트 식별자에 대응하는 네트워크 노드를 통해 포워딩되어야 함을 결정한다. 따라서, 패킷 포워딩 경로가 생성될 때 제2 네트워크 노드가 포워딩 경로에 포함된다. 제2 네트워크 노드는 네트워크의 핵심(key) 노드일 수 있다. 이 방법에 따르면, 생성된 패킷 포워딩 경로가 네트워크에서 핵심 노드를 포함하고 핵심 노드를 우회하여 패킷이 포워딩되는 것을 방지할 수 있다. 예를 들어 핵심 노드가 방화벽일 때, 패킷이 방화벽을 통과할 필요가 있음을 보장한다. 이는 네트워크 보안을 향상시킨다.
가능한 설계에서, 상기 방법은, 상기 제1 네트워크 노드가, 제2 패킷 포워딩 경로를 생성하는 단계 - 상기 제2 패킷 포워딩 경로는 상기 제2 네트워크 노드를 포함하고, 상기 제1 패킷 포워딩 경로는 상기 제2 패킷 포워딩 경로와 상이하며, 상기 제1 패킷 포워딩 경로는 기본(primary) 경로이고, 상기 제2 패킷 포워딩 경로는 상기 제1 패킷 포워딩 경로의 제1 백업(backup) 경로임 - 를 더 포함한다. 제1 네트워크 노드는 기본 경로를 생성할 뿐만 아니라 백업 경로도 생성하고, 백업 경로는 네트워크의 핵심 노드, 즉 제2 네트워크 노드도 포함한다. 백업 경로는 SR 네트워크에서 고속 리라우트(fast reroute, FRR) 경로일 수 있다. 네트워크 노드 또는 링크에 장애가 있을(faulty) 때, FRR 경로를 통해 패킷을 포워딩하여 데이터 보호를 구현한다. 이렇게 하면, 기본 경로에 장애가 있어도 핵심 노드를 우회하지 않고 백업 경로를 통해 데이터가 계속 포워딩된다. 이것은 네트워크 보안을 보장한다.
가능한 설계에서, 상기 방법은, 상기 제1 네트워크 노드가, 세그먼트 리스트를 포함하는 제1 패킷을 수신하는 단계 - 상기 세그먼트 리스트의 최상위(topmost) 세그먼트 식별자는 상기 기본 경로에 대응하는 세그먼트 식별자임 -; 상기 제1 네트워크 노드가, 상기 제2 네트워크 노드가 상기 기본 경로를 통해 도달할 수 없는 것으로 결정하는 단계; 상기 제1 네트워크 노드가, 상기 기본 경로에 대응하면서 또한 상기 세그먼트 리스트에 있는 세그먼트 식별자를 상기 제1 백업 경로에 대응하는 세그먼트 식별자로 대체하여, 제2 패킷을 생성하는 단계; 및 상기 제1 네트워크 노드가, 상기 제2 패킷을 상기 제2 네트워크 노드에 송신하는 단계를 더 포함한다. SR 네트워크에서 세그먼트 리스트는 패킷 포워딩을 가이드하는(guide) 데 사용된다. 세그먼트 리스트의 세그먼트 식별자는 순서대로 명시적인 포워딩 경로를 지정하고, 세그먼트 리스트의 각 세그먼트 식별자는 하나의 네트워크 노드에 대응한다. 최상위 세그먼트 식별자는 다음 홉(next-hop) 네트워크 노드에 대응한다. 기본 경로와 백업 경로 간의 교체는 특히 최상위 세그먼트 식별자 교체를 통해 수행된다.
가능한 설계에서, 상기 방법은, 상기 제1 네트워크 노드가, 포워딩 엔트리(forwarding entry)를 생성하는 단계 - 상기 포워딩 엔트리는 상기 기본 경로에 대응하는 세그먼트 식별자 및 상기 제1 백업 경로에 대응하는 세그먼트 식별자를 포함함 - 를 더 포함한다. 선택적으로 포워딩 엔트리는 제1 네트워크 노드에 저장된다.
가능한 설계에서, 상기 제1 세그먼트 식별자는 상기 제2 네트워크 노드의 노드 세그먼트 식별자이거나; 또는 상기 제1 세그먼트 식별자는 상기 제1 네트워크 노드의 링크의 인접 세그먼트 식별자이고, 상기 제1 네트워크 노드는 상기 링크를 통해 상기 제2 네트워크 노드에 연결된다. 노드 세그먼트 식별자와 링크 세그먼트 식별자는 SR 네트워크에서 두 가지 유형의 세그먼트 식별자 유형이다. 제1 네트워크 노드의 링크의 인접 세그먼트 식별자는 제1 네트워크 노드에 의해 통고되고 링크에 연결된 제2 네트워크 노드에 대응한다, 제1 세그먼트 식별자가 제2 네트워크 노드의 노드 세그먼트 식별자일 때, 제1 네트워크 노드가 제1 세그먼트 식별자 통고 메시지를 획득하는 것은 구체적으로 다음과 같을 수 있다: 제2 네트워크 노드는 제1 세그먼트 식별자 통고 메시지를 생성하고 제1 세그먼트 식별자 통고 메시지를 제1 네트워크 노드에 송신하고, 제1 네트워크 노드는 제2 네트워크 노드에 의해 송신된 제1 세그먼트 식별자 통고 메시지를 수신한다. 제1 세그먼트 식별자가 제1 네트워크 노드의 링크의 인접 세그먼트 식별자일 때, 제1 세그먼트 식별자 통고 메시지는 제1 네트워크 노드에 의해 생성되며, 즉, 제1 네트워크 노드는 제1 세그먼트 식별자 통고 메시지를 획득한다.
가능한 설계에서, 상기 제1 세그먼트 식별자가 상기 제1 네트워크 노드의 링크의 인접 세그먼트 식별자일 때, 상기 방법은, 상기 제1 네트워크 노드가, 컨트롤러에 의해 송신된 제어 메시지를 수신하는 단계 - 상기 제어 메시지는 상기 패킷이 상기 제2 네트워크 노드를 통해 포워딩될 필요가 있음을 지시함 -; 상기 제1 네트워크 노드가, 상기 제1 세그먼트 식별자 및 상기 제1 플래그 비트를 포함하는 상기 제1 세그먼트 식별자 통고 메시지를 생성하는 단계 - 상기 제1 플래그 비트는 상기 패킷이 상기 제2 네트워크 노드를 통해 포워딩될 필요가 있음을 지시하는 데 사용됨 -; 및 상기 제1 네트워크 노드가, 상기 제1 세그먼트 식별자 통고 메시지를 네트워크의 다른 노드에 송신하는 단계를 더 포함한다.
가능한 설계에서, 상기 제1 세그먼트 식별자가 상기 제1 네트워크 노드의 링크의 인접 세그먼트 식별자일 때, 상기 방법은, 상기 제1 네트워크 노드가, 제2 세그먼트 식별자 통고 메시지를 수신하는 단계 - 상기 제2 세그먼트 식별자 통고 메시지는 제2 세그먼트 식별자 및 제2 플래그 비트를 포함하고, 상기 제2 세그먼트 식별자는 상기 제2 네트워크 노드의 노드 세그먼트 식별자임 -; 상기 제1 네트워크 노드가, 상기 제2 플래그 비트가 상기 패킷이 상기 제2 네트워크 노드를 통해 포워딩될 필요가 있음을 지시하는 것으로 결정하는 단계; 상기 제1 네트워크 노드가, 상기 제1 세그먼트 식별자 및 상기 제1 플래그 비트를 포함하는 상기 제1 세그먼트 식별자 통고 메시지를 생성하는 단계 - 상기 제1 플래그 비트는 상기 패킷이 상기 제2 네트워크 노드를 통해 포워딩될 필요가 있음을 지시하는 데 사용됨 -; 및 상기 제1 네트워크 노드가, 상기 제1 세그먼트 식별자 통고 메시지를 네트워크의 다른 노드에 송신하는 단계를 더 포함한다.
세그먼트 식별자 통고 메시지가 인접 세그먼트 식별자를 포함할 때 세그먼트 식별자 통고 메시지의 플래그 비트의 설정 정보는 두 가지 소스를 가진다: 하나는 컨트롤러가 제어 메시지를 송신하는 것이고, 다른 하나는 노드 세그먼트 식별자 통고 메시지에서의 대응하는 플래그 비트가 학습되는 것이다. 두 가지 소스 방식에 따르면, 제1 네트워크 노드는 플래그 비트의 설정 정보를 획득하고 대응하는 플래그 비트를 설정하며, 세그먼트 식별자와 플래그 비트를 조합하여 세그먼트 식별자 통고 메시지를 생성하여, 네트워크에서 핵심 노드를 통해 포워딩될 패킷을 지시한다.
가능한 설계에서, 상기 방법은, 상기 제1 네트워크 노드가, 제3 세그먼트 식별자 통고 메시지를 획득하는 단계 - 상기 제3 세그먼트 식별자 통고 메시지는 제3 세그먼트 식별자 및 제3 플래그 비트를 포함하고, 상기 제3 세그먼트 식별자는 상기 제2 네트워크 노드에 대응함 -; 상기 제1 네트워크 노드가, 상기 제3 플래그 비트가 상기 패킷이 상기 제2 네트워크 노드를 통해 포워딩될 필요가 없음을 지시하는 것으로 결정하는 단계; 상기 제1 네트워크 노드가, 제3 패킷 포워딩 경로를 생성하는 단계 - 상기 제3 패킷 포워딩 경로는 상기 제2 네트워크 노드를 포함하지 않고, 상기 제3 패킷 포워딩 경로는 상기 제1 패킷 포워딩 경로의 제2 백업 경로임 -; 및 상기 제1 네트워크 노드가, 세그먼트 리스트를 포함하는 제1 패킷을 수신하고 - 상기 세그먼트 리스트의 최상위 세그먼트 식별자는 상기 기본 경로에 대응하는 세그먼트 식별자임 -, 상기 제1 네트워크 노드가, 상기 제1 패킷이 제1 유형 패킷인 것으로 결정하며, 상기 제1 네트워크 노드가, 상기 제2 네트워크 노드가 상기 기본 경로를 통해 도달할 수 없는 것으로 결정하고, 상기 기본 경로에 대응하면서 또한 상기 세그먼트 리스트에 있는 세그먼트 식별자를 상기 제1 백업 경로에 대응하는 세그먼트 식별자로 대체하여 제2 패킷을 생성하고, 상기 제1 네트워크 노드가, 상기 제2 패킷을 상기 제2 네트워크 노드에 송신하거나, 또는 상기 제1 네트워크 노드가, 세그먼트 리스트를 포함하는 제3 패킷을 수신하고 - 상기 세그먼트 리스트의 최상위 세그먼트 식별자는 상기 기본 경로에 대응하는 세그먼트 식별자임 -, 상기 제1 네트워크 노드가, 상기 제3 패킷이 제2 유형 패킷인 것으로 결정하며, 상기 제1 네트워크 노드가, 상기 제2 네트워크 노드가 상기 기본 경로를 통해 도달할 수 없는 것으로 결정하고, 상기 기본 경로에 대응하면서 또한 상기 세그먼트 리스트에 있는 세그먼트 식별자를 상기 제2 백업 경로에 대응하는 세그먼트 식별자로 대체하여 제4 패킷을 생성하고, 상기 제1 네트워크 노드가 상기 제4 패킷을 계속해서 포워딩하는 단계를 더 포함한다. 세그먼트 식별자 통고 메시지는 두 가지 유형을 포함할 수 있다. 네트워크 중간 노드의 경우, 한 유형의 세그먼트 식별자 통고 메시지는 백업 경로가 관련 네트워크 노드를 포함할 필요가 있음을 지시하고, 다른 유형의 세그먼트 식별자 통고 메시지는 백업 경로가 관련 네트워크 노드를 포함할 필요가 없음을 지시하므로, 기본 경로에 장애가 있을 때 백업 경로가 선택되어 사용된다. 이는 패킷 포워딩 경로를 유연하게 제한한다.
가능한 설계에서, 상기 방법은, 상기 제1 네트워크 노드가, 제1 패킷을 수신하고, 상기 제1 패킷이 제1 유형 패킷이라고 결정하는 단계; 및 상기 제1 네트워크 노드가, 상기 제1 패킷 포워딩 경로에 대응하는 세그먼트 리스트를 결정하고, 상기 제1 네트워크 노드가 상기 세그먼트 리스트를 상기 제1 패킷에 푸시하여 제2 패킷을 생성하고, 상기 세그먼트 리스트에 기반하여 상기 제2 패킷을 포워딩하는 단계를 더 포함한다.
가능한 설계에서, 상기 제1 네트워크 노드가, 제3 세그먼트 식별자 통고 메시지를 획득하고 - 상기 제3 세그먼트 식별자 통고 메시지는 제3 세그먼트 식별자 및 제3 플래그 비트를 포함하고, 상기 제3 세그먼트 식별자는 상기 제2 네트워크 노드에 대응함 -; 상기 제1 네트워크 노드가, 상기 제3 플래그 비트가 상기 패킷이 상기 제2 네트워크 노드를 통해 포워딩될 필요가 없음을 지시하는 것으로 결정하며; 상기 제1 네트워크 노드가, 제3 패킷 포워딩 경로를 생성하고 - 상기 제3 패킷 포워딩 경로는 상기 제2 네트워크 노드를 포함하지 않음 -; 상기 제1 네트워크 노드가 제3 패킷을 수신하고, 상기 제3 패킷이 제2 유형 패킷인 것으로 결정하며; 상기 제1 네트워크 노드가, 상기 제3 패킷 포워딩 경로에 대응하는 세그먼트 리스트를 결정하고, 상기 제1 네트워크 노드가 상기 세그먼트 리스트를 상기 제3 패킷에 푸시하여 제4 패킷을 생성하고, 상기 세그먼트 리스트에 기반하여 상기 제4 패킷을 포워딩한다. 세그먼트 식별자 통고 메시지는 두 가지 유형을 포함할 수 있다. 네트워크 진입 노드의 경우, 한 유형의 세그먼트 식별자 통고 메시지는 패킷 포워딩 경로가 관련 네트워크 노드를 포함할 필요가 있음을 지시하고 다른 유형의 세그먼트 식별자 통고 메시지는 패킷 포워딩 경로가 관련 네트워크 노드를 포함할 필요가 없음을 지시하므로, 패킷 포워딩 경로를 생성할 때 패킷 포워딩 경로가 선택되어 사용된다. 이는 패킷 포워딩 경로를 유연하게 제한한다.
가능한 설계에서, 상기 제1 유형 패킷의 우선순위가 제1 임계값보다 높거나, 또는 상기 제1 유형 패킷의 보안 요건 레벨(security requirement level)이 제1 임계값보다 높으며, 즉, 상기 제1 유형 패킷은 높은 보안 요건을 가지는 패킷이다.
가능한 설계에서, 상기 제2 유형 패킷의 우선순위가 제2 임계값보다 낮거나, 또는 상기 제2 유형 패킷의 보안 요구 레벨이 제2 임계값보다 낮으며, 즉, 상기 제2 유형 패킷은 낮은 보안 요건을 가지는 패킷이다.
제1 네트워크 노드는 SR 네트워크에서 패킷을 포워딩하기 위한 진입 노드일 수 있다. 이 경우, 제1 네트워크 노드는 수신된 패킷의 유형에 기반하여 서로 다른 포워딩 동작을 수행한다. 금융 패킷과 같이 보안 요건이 높은 패킷의 경우, 핵심 노드를 통해 강제로 패킷을 포워딩할 수 있다. 라이브 비디오 스트리밍 방송 패킷과 같이 보안 요건이 낮은 패킷의 경우, 핵심 노드를 거치지 않고 패킷을 강제로 포워딩할 수 있다. 이러한 방식으로 네트워크 보안 및 네트워크 도달 가능성(reachability)의 요건이 모두 충족된다.
가능한 설계에서, 상기 제2 네트워크 노드는 방화벽(Firewall)이다.
제2 측면에 따르면, 패킷 포워딩 경로를 결정하는 방법이 제공된다. 상기 방법은, 제2 네트워크 노드가, 제1 세그먼트 식별자 통고 메시지를 생성하는 단계 - 상기 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자 및 제1 플래그 비트를 포함하고, 상기 제1 플래그 비트는 패킷 포워딩 경로가 상기 제1 세그먼트 식별자에 대응하는 네트워크 노드를 통해 통과할 필요가 있음을 지시함 -; 및 상기 제2 네트워크 노드가, 상기 제1 세그먼트 식별자 통고 메시지를 제1 네트워크 노드에 송신하는 단계 - 상기 제1 플래그 비트는 상기 제1 네트워크 노드에 의해 생성된 제1 패킷 포워딩 경로가 상기 제1 세그먼트 식별자에 대응하는 네트워크 노드를 통과함을 지시함 - 를 포함한다.
전술한 방법에 따르면, 제2 네트워크 노드는 세그먼트 식별자와 조합된 플래그 비트를 사용하여 제1 네트워크 노드에 의해 생성된 패킷 포워딩 경로가 세그먼트 식별자에 대응하는 네트워크 노드를 통과할 필요가 있음을 지시하여, 패킷 포워딩 경로는 네트워크의 핵심 노드를 포함하는 것을 보정하고, 핵심 노드를 우회하여 데이터가 포워딩되는 것을 방지하며, 네트워크 보안을 보장한다.
가능한 설계에서, 상기 제1 세그먼트 식별자는 상기 제2 네트워크 노드의 노드 세그먼트 식별자이거나; 또는 상기 제1 세그먼트 식별자는 상기 제2 네트워크 노드의 링크의 인접 세그먼트 식별자이고, 상기 제2 네트워크 노드는 상기 링크를 통해 제3 네트워크 노드에 연결되고, 상기 제3 네트워크 노드는 상기 제1 세그먼트 식별자에 대응하는 네트워크 노드이다.
가능한 설계에서, 상기 제1 세그먼트 식별자가 상기 제2 네트워크 노드의 링크의 인접 세그먼트 식별자일 때, 상기 제2 네트워크 노드가, 제1 세그먼트 식별자 통고 메시지를 생성하는 단계는, 상기 제2 네트워크 노드가, 컨트롤러에 의해 송신된 제어 메시지를 수신하는 단계 - 상기 제어 메시지는 상기 패킷 포워딩 경로가 상기 제1 세그먼트 식별자에 대응하는 네트워크 노드를 통과할 필요가 있음을 지시함 -; 및 상기 제2 네트워크 노드가, 상기 제1 세그먼트 식별자 및 상기 제1 플래그 비트를 포함하는 상기 제1 세그먼트 식별자 통고 메시지를 생성하는 단계 - 상기 제1 플래그 비트는 상기 패킷 포워딩 경로가 상기 제2 네트워크 노드를 통과할 필요가 있음을 지시하는 데 사용됨 - 를 포함한다.
가능한 설계에서, 상기 제1 세그먼트 식별자가 상기 제2 네트워크 노드의 링크의 인접 세그먼트 식별자일 때, 상기 제2 네트워크 노드가, 제1 세그먼트 식별자 통고 메시지를 생성하는 단계는, 상기 제2 네트워크 노드가, 제2 세그먼트 식별자 통고 메시지를 수신하는 단계 - 상기 제2 세그먼트 식별자 통고 메시지는 제2 세그먼트 식별자 및 제2 플래그 비트를 포함하고, 상기 제2 세그먼트 식별자는 상기 제3 네트워크 노드의 노드 세그먼트 식별자임 -; 상기 제2 네트워크 노드가, 상기 제2 플래그 비트가 패킷이 상기 제3 네트워크 노드를 통해 포워딩될 필요가 있음을 지시하는 것으로 결정하는 단계; 및 상기 제2 네트워크 노드가, 상기 제1 세그먼트 식별자 및 상기 제1 플래그 비트를 포함하는 상기 제1 세그먼트 식별자 통고 메시지를 생성하는 단계 - 상기 제1 플래그 비트는 상기 패킷 포워딩 경로가 상기 제2 네트워크 노드를 통과할 필요가 있음을 지시하는 데 사용됨 - 를 포함한다.
가능한 설계에서, 상기 방법은, 상기 제2 네트워크 노드가, 제3 세그먼트 식별자 통고 메시지를 생성하는 단계 - 상기 제3 세그먼트 식별자 통고 메시지는 제3 세그먼트 식별자 및 제3 플래그 비트를 포함하고, 상기 제3 플래그 비트는 상기 패킷 포워딩 경로가 상기 제3 세그먼트 식별자에 대응하는 네트워크 노드를 통과할 필요가 없음을 지시하고, 상기 제3 세그먼트 식별자에 대응하는 네트워크 노드는 상기 제1 세그먼트 식별자에 대응하는 네트워크 노드와 동일한 노드임 -; 및 상기 제2 네트워크 노드가, 상기 제3 세그먼트 식별자 통고 메시지를 상기 제1 네트워크 노드에 송신하는 단계 - 상기 제3 플래그 비트는 상기 제1 네트워크 노드에 의해 생성된 제3 패킷 포워딩 경로가 상기 제1 세그먼트 식별자에 대응하는 네트워크 노드를 통과하지 않음을 지시함 - 를 더 포함한다.
제3 측면에 따르면, 패킷 포워딩 경로를 결정하는 방법이 제공된다. 상기 방법은, 제1 네트워크 노드가, 제1 세그먼트 식별자 통고 메시지를 획득하는 단계 - 상기 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자 및 제1 플래그 비트를 포함하고, 상기 제1 세그먼트 식별자는 제2 네트워크 노드에 대응함 -; 상기 제1 네트워크 노드가, 상기 제1 플래그 비트가 패킷이 상기 제2 네트워크 노드를 통해 포워딩될 필요가 없음을 지시하는 것으로 결정하는 단계; 및 상기 제1 네트워크 노드가, 제1 패킷 포워딩 경로를 생성하는 단계 - 상기 제1 패킷 포워딩 경로는 상기 제2 네트워크 노드를 포함하지 않음 - 를 포함한다.
제4 측면에 따르면, 제1 측면 또는 제1 측면의 가능한 구현들 중 어느 하나에서 제1 네트워크 노드에 의해 수행되는 방법을 수행하기 위한 네트워크 노드가 제공된다. 구체적으로, 상기 네트워크 노드는 제1 측면 또는 제1 측면의 가능한 구현들 중 어느 하나의 방법을 수행하도록 구성된 유닛들을 포함한다.
제5 측면에 따르면, 제2 측면 또는 제2 측면의 가능한 구현들 중 어느 하나에서 제2 네트워크 노드에 의해 수행되는 방법을 수행하기 위한 네트워크 노드가 제공된다. 구체적으로, 상기 네트워크 노드는 제2 측면 또는 제2 측면의 가능한 구현들 중 어느 하나의 방법을 수행하도록 구성된 유닛들을 포함한다.
제6 측면에 따르면, 네트워크 노드가 제공된다. 상기 네트워크 노드는 프로세서, 네트워크 인터페이스 및 메모리를 포함한다. 상기 네트워크 인터페이스는 트랜시버일 수 있다. 상기 메모리는 프로그램 코드를 저장하도록 구성될 수 있고, 상기 프로세서는 상기 메모리의 프로그램 코드를 호출하여, 제1 측면 또는 제1 측면의 가능한 구현들 중 어느 하나에 따른 방법을 수행하도록 구성된다. 세부 사항은 여기서 다시 설명하지 않는다.
제7 측면에 따르면, 네트워크 노드가 제공된다. 상기 네트워크 노드는 프로세서, 네트워크 인터페이스 및 메모리를 포함한다. 상기 네트워크 인터페이스는 트랜시버일 수 있다. 상기 메모리는 프로그램 코드를 저장하도록 구성될 수 있고, 상기 프로세서는 상기 메모리의 프로그램 코드를 호출하여, 제2 측면 또는 제2 측면의 가능한 구현들 중 어느 하나에 따른 방법을 수행하도록 구성된다. 세부 사항은 여기서 다시 설명하지 않는다.
제8 측면에 따르면, 네트워크 노드가 제공되며, 상기 네트워크 노드는 복수의 네트워크 노드 중 제1 네트워크 노드이다. 상기 복수의 네트워크 노드는 제2 네트워크 노드를 더 포함하고, 상기 제1 네트워크 노드는 메인 제어 보드 및 인터페이스 보드를 포함한다. 상기 메인 제어 보드는 제1 프로세서 및 제1 메모리를 포함한다. 상기 인터페이스 보드는 제2 프로세서, 제2 메모리 및 인터페이스 카드를 포함한다. 상기 메인 제어 보드와 상기 인터페이스 보드가 결합되어(coupled) 있다.
상기 제1 메모리는 프로그램 코드를 저장하도록 구성될 수 있다. 상기 제1 프로세서는 상기 제1 메모리의 프로그램 코드를 호출하여, 제1 세그먼트 식별자 통고 메시지를 획득하는 작동 - 상기 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자 및 제1 플래그 비트를 포함하고, 상기 제1 세그먼트 식별자는 제2 네트워크 노드에 대응함 -; 상기 제1 플래그 비트가 패킷이 상기 제2 네트워크 노드를 통해 포워딩될 필요가 있음을 지시하는 것으로 결정하는 작동; 및 제1 패킷 포워딩 경로를 생성하는 작동 - 상기 제1 패킷 포워딩 경로는 상기 제2 네트워크 노드를 포함함 - 을 수행하도록 구성된다.
제9 측면에 따르면, 네트워크 노드가 제공되며, 상기 네트워크 노드는 복수의 네트워크 노드 중 제2 네트워크 노드이다. 상기 복수의 네트워크 노드는 제1 네트워크 노드를 더 포함하고, 상기 네트워크 노드는 메인 제어 보드 및 인터페이스 보드를 포함한다. 상기 메인 제어 보드는 제1 프로세서 및 제1 메모리를 포함한다. 상기 인터페이스 보드는 제2 프로세서, 제2 메모리 및 인터페이스 카드를 포함한다. 상기 메인 제어 보드와 상기 인터페이스 보드가 결합되어 있다. 상기 제1 메모리는 프로그램 코드를 저장하도록 구성될 수 있다. 상기 제1 프로세서는 상기 제1 메모리의 프로그램 코드를 호출하여, 제1 세그먼트 식별자 통고 메시지를 생성하는 작동 - 상기 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자 및 제1 플래그 비트를 포함하고, 상기 제1 플래그 비트는 패킷 포워딩 경로가 상기 제1 세그먼트 식별자에 대응하는 네트워크 노드를 통해 통과할 필요가 있음을 지시함 - 을 수행하도록 구성된다.
상기 제2 메모리는 프로그램 코드를 저장하도록 구성될 수 있다. 상기 제2 프로세서는 상기 제1 메모리의 프로그램 코드를 호출하여 상기 인터페이스 카드를 트리거하여, 상기 제1 세그먼트 식별자 통고 메시지를 제1 네트워크 노드에 송신하는 작동 - 상기 제1 플래그 비트는 상기 제1 네트워크 노드에 의해 생성된 제1 패킷 포워딩 경로가 상기 제1 세그먼트 식별자에 대응하는 네트워크 노드를 통과함을 지시함 - 을 수행하도록 구성된다.
가능한 구현에서, 상기 메인 제어 보드와 상기 인터페이스 보드 사이에 인터 프로세스 통신(inter-process communication, IPC) 채널이 구축되고, 상기 메인 제어 보드와 상기 인터페이스 보드는 상기 IPC 채널을 통해 서로 통신한다.
제10 측면에 따르면, 패킷 포워딩 경로를 결정하는 시스템이 제공된다. 상기 시스템은 제4 측면에서 제공되는 네트워크 노드 및 제5 측면에서 제공되는 네트워크 노드를 포함한다. 다르게는, 상기 시스템은 제6 측면에서 제공되는 네트워크 노드 및 제7 측면에서 제공되는 네트워크 노드를 포함한다. 다르게는, 상기 시스템은 제8 측면에서 제공되는 네트워크 노드 및 제9 측면에서 제공되는 네트워크 노드를 포함한다.
제11 측면에 따르면, 컴퓨터 저장 매체가 제공된다. 상기 컴퓨터 저장 매체는 전술한 네트워크 노드에 의해 사용되는 컴퓨터 소프트웨어 명령을 저장하도록 구성되고, 상기 컴퓨터 저장 매체는 전술한 측면을 수행하는 데 사용되는 프로그램을 포함한다.
제12 측면에 따르면, 컴퓨터 프로그램 명령을 포함하는 컴퓨터 프로그램 제품이 제공된다. 상기 컴퓨터 프로그램 제품이 네트워크 노드 상에서 실행될 때, 상기 네트워크 노드는 제1 측면, 제2 측면, 제1 측면의 가능한 구현 또는 제2 측면의 가능한 구현 중 어느 하나에서 제공된 방법을 수행할 수 있다.
본 발명의 기술적 방안을 보다 명확하게 설명하기 위해, 이하에서는 실시예에 사용된 첨부 도면에 대해 간략히 설명한다. 이하의 설명에서 첨부된 도면은 단지 본 발명의 일부 실시예를 도시한 것일 뿐이며, 본 기술 분야의 통상의 지식을 가진 자라면 이러한 첨부 도면으로부터 창의적인 노력 없이도 다른 기술적 솔루션 및 첨부 도면을 도출할 수 있음이 명백하다.
도 1은 본 발명의 실시예에 따른 네트워크 시나리오의 개략도이다.
도 2는 본 발명의 실시예에 따른 패킷 포워딩 경로를 결정하는 방법의 개략적인 흐름도이다.
도 3은 본 발명의 실시예에 따른 패킷 포워딩 경로를 결정하는 방법의 개략적인 흐름도이다.
도 4는 본 발명의 실시예에 따른 패킷 포워딩 경로를 결정하는 방법의 개략적인 흐름도이다.
도 5는 본 발명의 실시예에 따른 네트워크 노드의 개략적인 구조도이다.
도 6은 본 발명의 실시예에 따른 네트워크 노드의 개략적인 구조도이다.
도 7은 본 발명의 실시예에 따른 네트워크 노드의 개략적인 구조도이다.
도 8은 본 발명의 실시예에 따른 네트워크 노드의 개략적인 구조도이다.
도 9는 본 발명의 실시예에 따른 네트워크 노드의 개략적인 구조도이다.
도 10은 본 발명의 실시예에 따른 네트워크 노드의 개략적인 구조도이다.
도 11은 본 발명의 실시예에 따른 네트워크 노드의 개략적인 구조도이다.
도 12는 본 발명의 실시예에 따른 네트워크 노드의 개략적인 구조도이다.
도 13은 본 발명의 실시예에 따른 패킷 포워딩 경로를 결정하는 시스템의 개략도이다.
도 1은 본 발명의 실시예에 따른 네트워크 시나리오의 개략도이다.
도 2는 본 발명의 실시예에 따른 패킷 포워딩 경로를 결정하는 방법의 개략적인 흐름도이다.
도 3은 본 발명의 실시예에 따른 패킷 포워딩 경로를 결정하는 방법의 개략적인 흐름도이다.
도 4는 본 발명의 실시예에 따른 패킷 포워딩 경로를 결정하는 방법의 개략적인 흐름도이다.
도 5는 본 발명의 실시예에 따른 네트워크 노드의 개략적인 구조도이다.
도 6은 본 발명의 실시예에 따른 네트워크 노드의 개략적인 구조도이다.
도 7은 본 발명의 실시예에 따른 네트워크 노드의 개략적인 구조도이다.
도 8은 본 발명의 실시예에 따른 네트워크 노드의 개략적인 구조도이다.
도 9는 본 발명의 실시예에 따른 네트워크 노드의 개략적인 구조도이다.
도 10은 본 발명의 실시예에 따른 네트워크 노드의 개략적인 구조도이다.
도 11은 본 발명의 실시예에 따른 네트워크 노드의 개략적인 구조도이다.
도 12는 본 발명의 실시예에 따른 네트워크 노드의 개략적인 구조도이다.
도 13은 본 발명의 실시예에 따른 패킷 포워딩 경로를 결정하는 시스템의 개략도이다.
다음은 첨부된 도면을 참조하여 본 발명의 실시예를 설명한다.
도 1은 본 발명의 실시예에 따른 가능한 애플리케이션 시나리오를 도시한다. 애플리케이션 시나리오에는 SR 네트워크가 포함된다. SR 네트워크는 네트워크 노드(100), 네트워크 노드(101), 네트워크 노드(102), 네트워크 노드(103), 네트워크 노드(104) 및 네트워크 노드(105)와 같은 여러 네트워크 노드를 포함한다. 네트워크 노드(100)의 세그먼트 식별자(segment identifier)는 1000이고, 네트워크 노드(101)의 세그먼트 식별자는 1001이며, 네트워크 노드(102)의 세그먼트 식별자는 1002이고, 네트워크 노드(103)의 세그먼트 식별자는 1003이며, 네트워크의 노드(104)의 세그먼트 식별자는 1004이고, 네트워크 노드(105)의 세그먼트 식별자는 1005이다. 네트워크 노드(101)와 네트워크 노드(103) 사이의 링크(link)의 세그먼트 식별자는 2013이고, 네트워크 노드(102)와 네트워크 노드(103) 사이의 링크의 세그먼트 식별자는 2023이다. 패킷이 네트워크 노드(100)에서 네트워크 노드(105)로 포워딩될 때, 네트워크 노드(100)는 SR 네트워크에서 진입 노드(ingress node)로 지칭되고, 네트워크 노드(105)는 SR 네트워크에서 출구 노드(egress node)로 지칭된다. 본 발명의 이 실시예에서, 네트워크 노드(100), 네트워크 노드(101), 네트워크 노드(102), 네트워크 노드(104) 및 네트워크 노드(105)는 네트워크에서 라우터 또는 스위치와 같은 포워딩(forwarding) 디바이스이다. 네트워크 노드(103)는 방화벽으로서, 네트워크에서 핵심 노드(key node)로 간주될 수 있다. 데이터 패킷이 SR 네트워크의 네트워크 진입 노드(100)에 도달할 때, 네트워크 노드(100)는 데이터 패킷의 목적지 주소를 파싱하고(parse), 목적지 주소를 기반으로 패킷 포워딩 경로를 계산하며, 패킷 포워딩 경로에 대응하는 세그먼트 리스트(segment list)를 생성한다. 예를 들어, 목적지 주소가 네트워크 노드(105)인 패킷의 경우, 특정 알고리즘 제약 조건에 따른 계산을 통해 패킷 포워딩 경로를 획득하고, 예를 들어 최소 비용(cost) 기반의 계산을 통해 포워딩 경로를 획득하며; 그리고 포워딩 경로는 경로의 비용이 가장 작은 네트워크 노드(101), 네트워크 노드(102) 및 네트워크 노드(104)를 통해 네트워크 노드(105)에 도달한다. 생성된 세그먼트 리스트는 [1001, 1002, 1004, 1005]일 수 있다. 구체적으로, 패킷이 네트워크 노드(100)에서 네트워크 노드(105)로 포워딩되는 프로세스에서, 패킷은 네트워크 노드(101), 네트워크 노드(102), 네트워크 노드(104)를 차례로 거쳐 최종적으로 네트워크 노드(105)에 도달한다. 이 경우, 패킷은 방화벽 노드(103)를 통과하지 못하며, 네트워크 보안 위험이 존재한다.
본 발명의 실시예들은 패킷 포워딩 경로를 결정하는 방법, 및 상기 방법에 기반하여 패킷 포워딩 경로를 결정하는 네트워크 노드 및 시스템을 제공한다. 방법, 네트워크 노드 및 시스템은 동일한 발명 개념을 기반으로 한다. 방법, 네트워크 노드 및 시스템으로 문제를 해결하는 원리는 유사하다. 따라서, 방법, 네트워크 노드 및 시스템의 실시예는 서로를 참조하며, 동일하거나 유사한 내용은 설명하지 않는다.
도 2를 참조하면, 본 발명의 일 실시예는 패킷 포워딩 경로를 결정하는 방법을 제공한다. 이 방법은 다음 단계를 포함한다.
S201: 제1 네트워크 노드가 제1 세그먼트 식별자 통고(advertisement) 메시지를 획득하고, 여기서 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자 및 제1 플래그 비트(flag bit)를 포함하고, 제1 세그먼트 식별자는 제2 네트워크 노드에 대응한다.
일 예에서, 제1 세그먼트 식별자는 노드 세그먼트 식별자이고, 제1 세그먼트 식별자가 제2 네트워크 노드에 대응한다는 것은 제1 세그먼트 식별자가 제2 네트워크 노드의 노드 세그먼트 식별자라는 것을 의미한다. 제1 네트워크 노드가 제1 세그먼트 식별자 통고 메시지를 획득한다는 것은, 제1 네트워크 노드가 제2 네트워크 노드에 의해 송신된 제1 세그먼트 식별자 통고 메시지를 수신하고, 제1 세그먼트 식별자 통고 메시지가 제2 네트워크 노드에 의해 생성된다는 것을 의미한다. 도 1을 참조하면, 제1 네트워크 노드는 네트워크 노드(100)이고, 제2 네트워크 노드는 네트워크 노드(103)이며, 제1 세그먼트 식별자는 네트워크 노드(103)의 노드 세그먼트 식별자(1003)일 수 있고, 제1 세그먼트 식별자(1003)는 제2 네트워크 노드(103)에 대응한다. 네트워크 노드(103)는 세그먼트 식별자(1003) 및 제1 플래그 비트를 포함하는 제1 세그먼트 식별자 통고 메시지를 생성하고, 제1 세그먼트 식별자 통고 메시지를 네트워크 노드(100)에 송신한다. 구체적으로, 제1 세그먼트 식별자 통고 메시지는 먼저 네트워크 노드(103)에 의해 네트워크 노드(101)에 송신된 다음, 네트워크 노드(101)에 의해 네트워크 노드(100)에 송신된다. 네트워크 노드(100)는 제1 세그먼트 식별자 통고 메시지를 획득한다.
일 예에서, 제1 세그먼트 식별자가 노드 세그먼트 식별자일 때, 네트워크 노드는 컨트롤러에 의해 송신된 제어 정보에 기반하여 제1 세그먼트 식별자 통고 메시지를 생성한다. 도 1을 참조하면, 제1 세그먼트 식별자가 네트워크 노드(103)의 노드 세그먼트 식별자(1003)일 때, 제1 세그먼트 식별자 통고 메시지는 네트워크 노드(103)에 의해 생성된다. 네트워크 노드(103)는 컨트롤러에 의해 송신된 제어 메시지를 수신하고, 제어 메시지는 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 있음을 지시한다(indicate). 네트워크 노드(103)는 노드 세그먼트 식별자(1003) 및 제1 플래그 비트를 포함하는 제1 세그먼트 식별자 통고 메시지를 생성한다. 제1 플래그 비트는 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 있음을 지시한다.
일 예에서, 제1 세그먼트 식별자는 인접 세그먼트 식별자이고, 제1 세그먼트 식별자가 제2 네트워크 노드에 대응한다는 것은 제1 세그먼트 식별자가 제2 네트워크 노드에 연결하기 위해 제2 네트워크의 인접 노드에 의해 사용되는 링크의 인접 세그먼트 식별자임을 의미한다. 제1 네트워크 노드가 제1 세그먼트 식별자 통고 메시지를 획득한다는 것은, 제1 네트워크 노드가 제2 네트워크 노드의 인접 노드에 의해 송신된 제1 세그먼트 식별자 통고 메시지를 수신하고, 제1 세그먼트 식별자 통고 메시지가 제2 네트워크 노드의 인접 노드에 의해 생성되는 것을 의미한다. 도 1을 참조하면, 제1 네트워크 노드는 네트워크 노드(100)이고, 제2 네트워크 노드는 네트워크 노드(103)이며, 제1 세그먼트 식별자는 네트워크 노드(103)에 연결하기 위해 네트워크 노드(101)에 의해 사용되는 링크의 인접 세그먼트 식별자(2013)일 수 있으며, 제1 세그먼트 식별자(2013)는 제2 네트워크 노드(103)에 대응한다. 네트워크 노드(101)는 세그먼트 식별자(2013) 및 제1 플래그 비트를 포함하는 제1 세그먼트 식별자 통고 메시지를 생성하고, 제1 세그먼트 식별자 통고 메시지를 네트워크 노드(100)에 송신한다. 네트워크 노드(100)는 제1 세그먼트 식별자 통고 메시지를 수신한다.
일 예에서, 제1 세그먼트 식별자가 인접 세그먼트 식별자일 때, 네트워크 노드는 컨트롤러에 의해 송신된 제어 정보를 기반으로 제1 세그먼트 식별자 통고 메시지를 생성하거나, 네트워크 노드는 노드 세그먼트 식별자 통고 메시지를 기반으로 제1 세그먼트 식별자 통고 메시지를 생성한다. 도 1을 참조하면, 제1 세그먼트 식별자가 네트워크 노드(101)가 네트워크 노드(103)에 연결하기 위해 사용하는 링크(2013)의 인접 세그먼트 식별자일 때, 제1 세그먼트 식별자 통고 메시지는 네트워크 노드(101)에 의해 생성된다. 네트워크 노드(101)는 컨트롤러에 의해 송신된 제어 메시지를 수신할 수 있고, 제어 메시지는 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 있음을 지시한다. 네트워크 노드(101)는 인접 세그먼트 식별자(2013) 및 제1 플래그 비트를 포함하는 제1 세그먼트 식별자 통고 메시지를 생성한다. 제1 플래그 비트는 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 있음을 지시한다. 다르게는, 네트워크 노드(101)는 네트워크 노드(103)에 의해 송신된 제2 세그먼트 식별자 통고 메시지를 수신할 수 있다. 제2 세그먼트 식별자 통고 메시지는 제2 세그먼트 식별자 및 제2 플래그 비트를 포함한다. 제2 세그먼트 식별자는 네트워크 노드(103)의 노드 세그먼트 식별자(1003)이고, 제2 플래그 비트는 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 있음을 지시한다. 네트워크 노드(101)는 제2 플래그 비트가 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 있음을 지시하는 것으로 결정하고, 인접 세그먼트 식별자(2013) 및 제1 플래그 비트를 포함하는 제1 세그먼트 식별자 통고 메시지를 추가로 생성한다. 제1 플래그 비트는 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 있음을 지시한다.
S202: 제1 네트워크 노드는 제1 플래그 비트가 패킷이 제2 네트워크 노드를 통해 포워딩될 필요가 있음을 지시하는 것으로 결정한다.
S203: 제1 네트워크 노드는 제1 패킷 포워딩 경로를 생성하고, 여기서 제1 패킷 포워딩 경로는 제2 네트워크 노드를 포함한다.
도 1에 도시된 애플리케이션 시나리오를 참조하면, 일 예에서, 제1 네트워크 노드는 네트워크 진입 노드(100)이고, 제2 네트워크 노드는 노드(103)일 수 있다. 네트워크 노드(103)는 제1 세그먼트 식별자 통고 메시지를 생성한다. 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자(1003) 및 제1 플래그 비트를 포함하고, 제1 세그먼트 식별자(1003)는 네트워크 노드(103)의 노드 세그먼트 식별자이다. 네트워크 노드(100)는 제1 세그먼트 식별자 통고 메시지를 획득한다. 네트워크 노드(100)는 제1 플래그 비트가 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 있음을 지시하는 것으로 결정한다. 네트워크 노드(100)는 네트워크 노드(103)를 포함하는 제1 패킷 포워딩 경로를 생성한다. 구체적으로, 네트워크 노드(100)는 제1 패킷을 수신하고, 제1 플래그 비트의 지시에 기반하여 네트워크 노드(103)를 포함하는 제1 패킷 포워딩 경로를 생성한다. 예를 들어, 목적지 주소가 네트워크 노드(105)인 제1 패킷의 경우, 제1 패킷 포워딩 경로는 네트워크 노드(101), 네트워크 노드(103) 및 네트워크 노드(104)를 통과하여 네트워크 노드(105)에 도달할 수 있다. 제1 패킷 포워딩 경로는 네트워크 노드(103)를 포함한다. 또한, 네트워크 노드(100)는 제1 패킷 포워딩 경로에 대응하는 세그먼트 리스트(SID 리스트), 구체적으로 [1001, 1003, 1004, 1005]를 결정한다. 네트워크 노드(100)는 세그먼트 리스트를 제1 패킷에 푸시하여(push) 제2 패킷을 생성하고, 제2 패킷을 포워딩한다. 예를 들어, 목적지 주소가 네트워크 노드(105)인 제1 패킷의 경우, 제1 패킷 포워딩 경로는 네트워크 노드(101)와 네트워크 노드(103) 사이의 링크를 통해 네트워크 노드(103)에 도달한 다음, 네트워크 노드(104)를 통해 네트워크 노드(105)에 도달할 수 있다. 제1 패킷 포워딩 경로는 또한 네트워크 노드(103)를 포함한다. 또한, 네트워크 노드(100)는 제1 패킷 포워딩 경로, 구체적으로 [1001, 2013, 1004, 1005]에 대응하는 세그먼트 리스트(SID 리스트)를 결정한다. 네트워크 노드(100)는 세그먼트 리스트를 제1 패킷에 푸시하여 제2 패킷을 생성하고, 제2 패킷을 포워딩한다. 즉, 제1 패킷 포워딩 경로가 제2 네트워크 노드를 포함하면, 제1 패킷 포워딩 경로에 대응하는 세그먼트 리스트는 제2 네트워크 노드에 대응하는 세그먼트 식별자를 포함한다. 제2 네트워크 노드에 대응하는 세그먼트 식별자는 제1 네트워크 노드에 의해 획득된 제1 세그먼트 식별자 통고 메시지에서의 제1 세그먼트 식별자일 수 있거나, 제1 세그먼트 식별자가 아닌 제2 네트워크 노드에 대응하는 다른 세그먼트 식별자일 수 있다. 전술한 설명을 참조하면, 네트워크 노드(100)에 의해 획득된 제1 세그먼트 식별자 통고 메시지의 제1 세그먼트 식별자는 노드 세그먼트 식별자(1003)이다. 제1 패킷 포워딩 경로에 대응하는 세그먼트 리스트에 포함된 세그먼트 식별자는 인접 세그먼트 식별자(2013)일 수 있다. 노드 세그먼트 식별자(1003) 및 인접 세그먼트 식별자(2013)는 모두 제2 네트워크 노드(103)에 대응한다. 이 경우, 제1 패킷은 포워딩 프로세스에서 네트워크의 방화벽 노드를 통과하여 네트워크 보안을 보장한다.
도 1에 도시된 애플리케이션 시나리오를 참조하면, 일 예에서, 제1 네트워크 노드는 네트워크 중간 노드(101)일 수 있고, 제2 네트워크 노드는 네트워크 노드(103)일 수 있다. 네트워크 노드(103)는 제1 세그먼트 식별자 통고 메시지를 생성한다. 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자(1003) 및 제1 플래그 비트를 포함하고, 제1 세그먼트 식별자(1003)는 네트워크 노드(103)의 노드 세그먼트 식별자이다. 네트워크 노드(101)는 제1 세그먼트 식별자 통고 메시지를 획득한다. 네트워크 노드(101)는 제1 플래그 비트가 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 있음을 지시하는 것으로 결정한다. 네트워크 노드(101)는 네트워크 노드(103)를 포함하는 제1 패킷 포워딩 경로를 생성한다. 네트워크 중간 노드로서, 네트워크 노드(101)에 의해 생성된 제1 패킷 포워딩 경로는 다음 홉(hop)에 대한 경로의 세그먼트이며, 패킷을 포워딩하기 위한 완전한 패킷 포워딩 경로의 일부로 사용될 수 있음을 유의한다. 제1 패킷 포워딩 경로는 네트워크 노드(101)와 네트워크 노드(103) 사이의 링크일 수 있고, 링크의 인접 세그먼트 식별자는 [2013]이다. 이 경우, 네트워크 중간 노드(101)에 의해 생성된 제1 패킷 포워딩 경로는 네트워크 보안을 보장하기 위해 네트워크 내의 방화벽 노드를 포함한다.
일 예에서, 제1 네트워크 노드는 포워딩 엔트리(forwarding entry)를 생성하고, 포워딩 엔트리는 기본 경로(primary path)에 대응하는 세그먼트 리스트 및 아웃바운드 인터페이스(outbound interface)를 포함한다. 예를 들어, 제1 네트워크 노드는 도 1의 노드(101)이고, 노드(101)는 포워딩 엔트리를 생성한다. 포워딩 엔트리에 대응하는 다음 홉 노드는 제2 네트워크 노드, 즉 노드(103)이다. 포워딩 엔트리는 기본 경로에 대응하는 세그먼트 리스트 [2013]를 포함하며, 여기서 세그먼트 리스트 [2013]는 백업 경로에 대응하고, [1002, 2023]의 아웃바운드 인터페이스는 인터페이스 2이다. 포워딩 엔트리의 구체적인 형태는 표 1과 같다. 포워딩 엔트리는 제1 네트워크 노드에 저장될 수 있다.
네트워크 노드 103 | 세그먼트 리스트 | 아웃바운드 인터페이스 |
기본 경로 | [2013] | 인터페이스 1 |
도 3을 참조하면, 본 발명의 일 실시예는 패킷 포워딩 경로를 결정하는 방법을 제공한다. 이 방법에서, 제1 패킷 포워딩 경로를 패킷을 포워딩하기 위한 기본 경로로 생성하는 것 이외에, 제1 네트워크 노드는 제2 패킷 포워딩 경로를 추가로 생성한다. 제2 패킷 포워딩 경로는 FRR 백업 경로이다. 패킷을 수신한 후, 제1 패킷 포워딩 경로를 통해 제2 네트워크 노드에 도달할 수 없는 것으로 결정하면, 제1 네트워크 노드는 빠른 재라우팅 기능을 구현하기 위해 제2 패킷 포워딩 경로를 통해 패킷을 송신한다. 이 방법은 다음 단계를 포함한다.
S301: 제1 네트워크 노드는 제1 세그먼트 식별자 통고 메시지를 획득하고, 여기서 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자 및 제1 플래그 비트를 포함하고, 제1 세그먼트 식별자는 제2 네트워크 노드에 대응한다.
S302: 제1 네트워크 노드는 제1 플래그 비트가 패킷이 제2 네트워크 노드를 통해 포워딩될 필요가 있음을 지시하는 것으로 결정한다.
S303: 제1 네트워크 노드는 제1 패킷 포워딩 경로를 생성하고, 여기서 제1 패킷 포워딩 경로는 제2 네트워크 노드를 포함한다.
단계(S301 내지 S303)는 도 2에 도시된 예의 단계(S201 내지 S203)와 유사하며, 세부 사항은 여기에서 다시 설명되지 않는다.
S304: 제1 네트워크 노드가 제2 패킷 포워딩 경로를 생성하고, 여기서 제2 패킷 포워딩 경로는 제2 네트워크 노드를 포함하며, 제1 패킷 포워딩 경로는 제2 패킷 포워딩 경로와 상이하고, 제1 패킷 포워딩 경로는 기본 경로이고, 제2 패킷 포워딩 경로는 제1 패킷 포워딩 경로의 백업 경로이다.
일 예에서, 제1 네트워크 노드는 네트워크 진입 노드이다. 도 1에 도시된 애플리케이션 시나리오를 참조하면, 제1 네트워크 노드는 네트워크 진입 노드(100)이고, 제2 네트워크 노드는 네트워크 노드(103)이다. 제1 네트워크 노드(100)는 제1 세그먼트 식별자 통고 메시지를 획득한다. 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자 및 제1 플래그 비트를 포함하고, 제1 세그먼트 식별자는 네트워크 노드(103)에 대응한다. 네트워크 노드(100)는 제1 플래그 비트가 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 있음을 지시하는 것으로 결정한다. 네트워크 노드(100)는 네트워크 노드(103)를 포함하는 제1 패킷 포워딩 경로를 생성한다. 예를 들어, 목적지 주소가 노드(105)인 제1 패킷의 경우, 제1 패킷 포워딩 경로의 세그먼트 리스트는 [1001, 1003, 1004, 1005]이고 네트워크 노드(103)를 포함한다. 네트워크 노드(100)는 네트워크 노드(103)를 포함하는 제2 패킷 포워딩 경로를 추가로 생성한다. 예를 들어, 목적지 주소가 네트워크 노드(105)인 제1 패킷의 경우, 제2 패킷 포워딩 경로의 세그먼트 리스트는 [1001, 1002, 2023, 1004, 1005]이다. 다시 말해서, 패킷은 네트워크 노드(101)를 통해 네트워크 노드(102)에 도달하고, 네트워크 노드(102)와 네트워크 노드(103) 사이의 링크를 통해 네트워크 노드(103)에 도달한 다음, 네트워크 노드(104)를 통해 네트워크 노드(105)에 도달한다. 또한, 제1 패킷 포워딩 경로는 패킷을 포워딩하기 위한 기본 경로로 사용되며 제2 패킷 포워딩 경로는 기본 경로에 장애가 있을(faulty) 때 FRR 백업 경로로 사용된다. 예를 들어, 네트워크 노드(101)와 네트워크 노드(103) 사이의 링크에 장애가 있을 때, 즉 기본 경로에 장애가 있을 때에도 패킷은 여전히 백업 경로를 통해 포워딩될 수 있다.
일 예에서, 제1 네트워크 노드는 네트워크 중간 노드이다. 제1 네트워크 노드는 세그먼트 리스트를 포함하는 제1 패킷을 수신한다. 세그먼트 리스트의 최상위 세그먼트 식별자(topmost segment identifier)는 기본 경로에 대응하는 세그먼트 식별자이다. 제1 네트워크 노드는 제2 네트워크 노드가 기본 경로를 통해 도달할 수 없는 것으로 결정하고, 기본 경로에 대응하면서 또한 세그먼트 리스트에 있는 세그먼트 식별자를 백업 경로에 대응하는 세그먼트 식별자로 대체하여 제2 패킷을 생성하고, 제2 패킷을 제2 네트워크 노드에 송신한다. 도 1에 도시된 애플리케이션 시나리오를 참조하면, 제1 네트워크 노드는 중간 노드(101)일 수 있고, 제2 네트워크 노드는 네트워크 노드(103)일 수 있다. 제1 네트워크 노드(101)는 제1 세그먼트 식별자 통고 메시지를 획득한다. 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자 및 제1 플래그 비트를 포함하고, 제1 세그먼트 식별자는 네트워크 노드(103)에 대응한다. 제1 세그먼트 식별자는 네트워크 노드(103)의 노드 세그먼트 식별자(1003)일 수 있다. 제1 네트워크 노드(101)가 제1 세그먼트 식별자 통고 메시지를 획득한다는 것은, 네트워크 노드(101)가 네트워크 노드(103)에 의해 송신된 제1 세그먼트 식별자 통고 메시지를 수신한다는 것을 의미한다. 제1 세그먼트 식별자 통고 메시지는 네트워크 노드(103)에 의해 생성된다. 다르게는, 제1 세그먼트 식별자는 네트워크 노드(103)에 연결하기 위해 네트워크 노드(101)에 의해 사용되는 링크의 인접 세그먼트 식별자(2013)일 수 있다. 제1 네트워크 노드(101)가 제1 세그먼트 식별자 통고 메시지를 획득한다는 것은, 네트워크 노드(101)가 제1 세그먼트 식별자 통고 메시지를 생성한다는 것을 의미한다.
네트워크 노드(101)는 제1 플래그 비트가 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 있음을 지시하는 것으로 결정하고, 네트워크 노드(101)는 제1 패킷 포워딩 경로를 생성한다. 제1 포워딩 경로는 네트워크 노드(103)에 대한 경로이다. 제1 패킷 포워딩 경로에 대응하는 세그먼트 리스트는 [2013]일 수 있으며, 네트워크 노드(103)를 포함한다. 네트워크 노드(101)는 제2 패킷 포워딩 경로를 추가로 생성한다. 제2 패킷 포워딩 경로는 또한 네트워크 노드(103)에 대한 경로이다. 제2 패킷 포워딩 경로에 대응하는 세그먼트 리스트는 [1002, 2023]이다. 구체적으로, 제2 패킷 포워딩 경로는 네트워크 노드(101)에서 네트워크 노드(102)로, 그다음 네트워크 노드(102)와 네트워크 노드(103) 사이의 링크에서 네트워크 노드(103)로이다. 제2 패킷 포워딩 경로는 여전히 네트워크 노드(103)를 포함한다. 또한, 제1 패킷 포워딩 경로는 패킷을 포워딩하기 위한 기본 경로로 사용되며, 제2 패킷 포워딩 경로는 기본 경로에 장애가 있을 때 FRR 백업 경로로 사용된다. 예를 들어, 네트워크 노드(101)와 네트워크 노드(103) 사이의 링크에 장애가 있을 때, 즉 기본 경로에 장애가 있을 때에도 패킷은 여전히 백업 경로를 통해 포워딩될 수 있다.
네트워크 노드(101)는 세그먼트 리스트를 포함하는 제1 패킷을 수신한다. 세그먼트 리스트에서 최상위 세그먼트 식별자는 기본 경로에 대응하는 세그먼트 식별자, 즉 [1003]이다. 네트워크 노드(103)가 기본 경로를 통해 도달할 수 없다고 결정할 때, 네트워크 노드(101)는 세그먼트 리스트의 기본 경로에 대응하는 세그먼트 식별자를 백업 경로에 대응하는 세그먼트 식별자로 대체한다. 구체적으로, 네트워크 노드(101)는 제1 패킷의 세그먼트 리스트에서 최상위 세그먼트 식별자 [1003]을 [1002, 2023]으로 대체하고 제2 패킷을 생성한다. 네트워크 노드(101)는 제2 패킷을 네트워크 노드(103)로 포워딩한다.
FRR 백업 경로를 기반으로, 기본 경로에 장애가 있을 때 패킷을 백업 경로로 전환하여 포워딩함으로써 네트워크 신뢰성을 향상시킨다. 또한, 기본 경로와 백업 경로 모두 제2 네트워크 노드, 즉 네트워크의 핵심 노드를 포함하며, 네트워크 보안도 고려된다. 이는 FRR 정책을 사용하여 포워딩된 패킷이 네트워크의 핵심 노드를 계속 통과하게 되는 것을 보장한다.
일 예에서, 제1 네트워크 노드는 포워딩 엔트리를 생성한다. 포워딩 엔트리는 기본 경로에 대응하는 세그먼트 리스트와 아웃바운드 인터페이스, 그리고 백업 경로에 대응하는 세그먼트 리스트와 아웃바운드 인터페이스를 포함한다. 예를 들어, 제1 네트워크 노드는 도 1의 네트워크 노드(101)이며, 네트워크 노드(101)는 포워딩 엔트리를 생성한다. 포워딩 엔트리에 대응하는 다음 홉 노드는 제2 네트워크 노드, 즉 네트워크 노드(103)이다. 포워딩 엔트리는 기본 경로에 대응하는 세그먼트 리스트 [2013]을 포함하며, 여기서 세그먼트 리스트 [2013]의 아웃바운드 인터페이스는 인터페이스 1이고, 세그먼트 리스트[1002, 2023]는 백업 경로에 대응하며, 여기서, 세그먼트 리스트[1002, 2023]의 아웃바운드 인터페이스는 인터페이스 2이다. 포워딩 엔트리의 구체적인 형태는 표 2와 같다. 포워딩 엔트리는 제1 네트워크 노드에 저장될 수 있다.
네트워크 노드 103 | 세그먼트 리스트 | 아웃바운드 인터페이스 |
기본 경로 | [2013] | 인터페이스 1 |
백업 경로 | [1002, 2023] | 인터페이스 2 |
도 4를 참조하면, 본 발명의 실시예는 패킷 포워딩 경로를 결정하는 방법을 제공한다. 이 방법에서, 세그먼트 식별자 통고 메시지는 두 가지 유형을 포함할 수 있다. 한 종류의 세그먼트 식별자 통고 메시지의 플래그 비트는 패킷이 제2 네트워크 노드를 통해 포워딩될 필요가 있음을 지시하고, 다른 유형의 세그먼트 식별자 통고 메시지의 플래그 비트는 패킷이 제2 네트워크 노드를 통해 포워딩될 필요가 없음을 지시한다. 제1 네트워크 노드는 두 가지 유형의 세그먼트 식별자 통고 메시지를 획득하고, 상이한 플래그 비트의 지시에 기반하여 상이한 유형의 패킷에 대한 두 가지 유형의 패킷 포워딩 경로를 생성할 수 있다. 한 유형의 패킷 포워딩 경로는 제2 네트워크 노드를 포함하고 다른 유형의 패킷 포워딩 경로는 제2 네트워크 노드를 포함하지 않는다. 이 방법은 다음 단계를 포함한다.
S401: 제1 네트워크 노드는 제1 세그먼트 식별자 통고 메시지 및 제3 세그먼트 식별자 통고 메시지를 획득하고, 여기서 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자 및 제1 플래그 비트를 포함하며, 제1 세그먼트 식별자는 제2 네트워크 노드에 대응하고, 제3 세그먼트 식별자 통고 메시지는 제3 세그먼트 식별자 및 제3 플래그 비트를 포함하고, 제3 세그먼트 식별자는 제2 네트워크 노드에 대응한다.
S402: 제1 네트워크 노드는 제1 플래그 비트가 패킷이 제2 네트워크 노드를 통해 포워딩될 필요가 있음을 지시하는 것으로 결정하고, 제1 네트워크 노드는 제3 플래그 비트가 패킷이 제2 네트워크 노드를 통해 포워딩될 필요가 없음을 지시하는 것으로 결정한다.
S403: 제1 네트워크 노드가 제1 패킷을 수신하고; 제1 패킷이 제1 유형 패킷이라고 결정할 때, 제1 네트워크 노드는 제1 패킷 포워딩 경로를 생성하며, 여기서 제1 패킷 포워딩 경로는 제2 네트워크 노드를 포함하고; 그리고 제1 패킷이 제2 유형 패킷이라고 결정할 때, 제1 네트워크 노드는 제3 패킷 포워딩 경로를 생성하고, 제3 패킷 포워딩 경로는 제2 네트워크 노드를 포함하지 않는다.
일 예에서, 제1 네트워크 노드는 네트워크 진입 노드일 수 있다. 패킷을 수신할 때 네트워크 진입 노드가 상이한 패킷 유형에 따라 상이한 패킷 포워딩 경로를 생성하므로, 일부 유형의 패킷은 네트워크 핵심 노드를 통해 포워딩되고, 일부 다른 유형의 패킷은 네트워크 핵심 노드를 통해 포워딩되지 않는다. 도 1에 도시된 애플리케이션 시나리오를 참조하면, 제1 네트워크 노드는 네트워크 진입 노드(100)일 수 있고, 제2 네트워크 노드는 네트워크 노드(103)일 수 있다. 네트워크 노드(103)는 2개의 노드 세그먼트 식별자(1003 및 10032)를 갖는다. 제1 세그먼트 식별자는 노드(103)의 노드 세그먼트 식별자(1003)일 수 있고, 제3 세그먼트 식별자는 네트워크 노드(103)의 노드 세그먼트 식별자(10032)일 수 있다. 노드(103)는 2개의 세그먼트 식별자 통고 메시지, 즉 제1 세그먼트 식별자 통고 메시지 및 제3 세그먼트 식별자 통고 메시지를 생성한다. 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자(1003) 및 제1 플래그 비트를 포함하고, 제1 플래그 비트는 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 있음을 지시한다. 제3 세그먼트 식별자 통고 메시지는 제3 세그먼트 식별자(10032)와 제3 플래그 비트를 포함하며, 제3 플래그 비트는 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 없음을 지시한다. 전술한 2개의 세그먼트 식별자 통고 메시지를 생성한 후, 네트워크 노드(103)는 2개의 세그먼트 식별자 통고 메시지를 네트워크 노드(100)에 송신한다. 네트워크 노드(100)는 제1 세그먼트 식별자 통고 메시지 및 제3 세그먼트 식별자 통고 메시지를 수신하고, 제1 플래그 비트가 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 있음을 지시하고, 제3 플래그 비트는 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 없음을 지시하는 것으로 결정한다.
네트워크 진입 노드(100)는 제1 패킷을 수신하고, 제1 패킷이 제1 유형 패킷이라고 결정될 때, 제1 패킷을 포워딩하기 위한 제1 패킷 포워딩 경로를 생성한다. 예를 들어, 목적지 주소가 네트워크 노드(105)인 패킷의 경우, 제1 패킷 포워딩 경로는 패킷이 네트워크 노드(101), 네트워크 노드(103) 및 네트워크 노드(104)를 통해 네트워크 노드(105)에 도달하는 것일 수 있고, 제1 패킷 포워딩 경로는 네트워크 노드(103)를 포함한다. 다시 말해서, 제1 유형 패킷은 방화벽 노드를 통해 포워딩된다. 네트워크 진입 노드(100)는 제1 패킷이 제2 유형 패킷이라고 결정할 때, 제1 패킷을 포워딩하기 위한 제3 패킷 포워딩 경로를 생성한다. 예를 들어, 목적지 주소가 네트워크 노드(105)인 패킷의 경우, 제3 패킷 포워딩 경로는 패킷이 네트워크 노드(101), 네트워크 노드(102) 및 네트워크 노드(104)를 통해 네트워크 노드(105)에 도달하는 것일 수 있고, 제3 패킷 포워딩 경로는 네트워크 노드(103)를 포함하지 않는다. 다시 말해서, 제2 유형 패킷은 방화벽 노드를 통해 포워딩되지 않는다.
일 예에서, 제1 네트워크 노드는 또한 네트워크 중간 노드일 수 있다. 네트워크 중간 노드는 상이한 패킷 유형에 따라 상이한 백업 경로를 생성할 수 있다. 따라서, 기본 경로에 도달할 수 없을 때, 일부 유형의 패킷에 대한 FRR 포워딩은 네트워크 핵심 노드를 통과하고 다른 유형의 패킷에 대한 FRR 포워딩은 네트워크 핵심 노드를 통과하지 않는다. 도 1에 도시된 애플리케이션 시나리오를 참조하면, 제1 네트워크 노드는 네트워크 중간 노드(101)일 수 있고, 제2 네트워크 노드는 네트워크 노드(103)일 수 있다. 네트워크 노드(103)는 2개의 노드 세그먼트 식별자(1003 및 10032)를 갖는다. 제1 세그먼트 식별자는 노드(103)의 노드 세그먼트 식별자(1003)일 수 있고, 제3 세그먼트 식별자는 노드(103)의 노드 세그먼트 식별자(10032)일 수 있다. 네트워크 노드(103)는 2개의 세그먼트 식별자 통고 메시지, 즉 제1 세그먼트 식별자 통고 메시지 및 제3 세그먼트 식별자 통고 메시지를 생성한다. 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자(1003) 및 제1 플래그 비트를 포함하고, 제1 플래그 비트는 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 있음을 지시한다. 제3 세그먼트 식별자 통고 메시지는 제3 세그먼트 식별자(10032)와 제3 플래그 비트를 포함하며, 제3 플래그 비트는 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 없음을 지시한다.
일 예에서, 네트워크 노드(101)는 제1 세그먼트 식별자 통고 메시지 및 제3 세그먼트 식별자 통고 메시지를 수신하고, 제1 플래그 비트가 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 있음을 지시하고, 제3 플래그 비트가 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 없음을 지시하는 것으로 결정한다. 네트워크 노드(101)는 패킷을 포워딩하기 위한 기본 경로로서 제1 패킷 포워딩 경로를 생성한다. 제1 패킷 포워딩 경로에 대응하는 세그먼트 리스트는 [2013]이고, 제1 패킷 포워딩 경로는 네트워크 노드(103)를 포함한다. 네트워크 노드(101)는 제2 패킷 포워딩 경로를 추가로 생성한다. 제2 패킷 포워딩 경로에 대응하는 세그먼트 리스트는 [1002, 2023]이고, 즉 네트워크 노드(101)에서 네트워크 노드(102)로, 그리고 나서 네트워크 노드(102)에서 네트워크 노드(103)로이다. 제2 패킷 포워딩 경로는 여전히 네트워크 노드(103)를 포함한다. 네트워크 노드(101)는 제3 패킷 포워딩 경로를 추가로 생성한다. 제3 패킷 포워딩 경로는 [1002, 1004]이고, 즉 네트워크 노드(101)에서 네트워크 노드(102)로, 그리고 나서 네트워크 노드(102)에서 네트워크 노드(104)로일 수 있다. 제2 패킷 포워딩 경로와 제3 패킷 포워딩 경로는 기본 경로에 장애가 있을 때 FRR 백업 경로로 사용된다. 네트워크 노드(101)는 세그먼트 리스트를 포함하는 제1 패킷을 수신한다. 세그먼트 리스트의 최상위 세그먼트 식별자는 기본 경로에 대응하는 세그먼트 식별자, 즉 [2013]이다. 네트워크 노드(101)는 노드(103)가 기본 경로를 통해 도달할 수 없다고 결정하고, 제1 패킷이 제1 유형 패킷이라고 결정하며, 세그먼트 리스트의 기본 경로에 대응하는 세그먼트 식별자를 제2 패킷 포워딩 경로에 대응하는 세그먼트 식별자로 대체한다. 즉, 네트워크 노드(101)는 세그먼트 리스트의 최상위 세그먼트 식별자 [2013]을 [1002, 2023]으로 대체한다. 교체된 패킷은 제2 패킷이고, 네트워크 노드(101)는 제2 패킷을 네트워크 노드(103)로 포워딩하며, 즉, FRR 경로는 여전히 네트워크 노드(103)를 통과한다. 네트워크 노드(101)는 세그먼트 리스트를 포함하는 제3 패킷을 추가로 수신한다. 세그먼트 리스트에서 최상위 세그먼트 식별자는 기본 경로에 대응하는 세그먼트 식별자, 즉 [1003]이다. 네트워크 노드(101)는 네트워크 노드(103)가 기본 경로를 통해 도달할 수 없다고 결정하고, 제3 패킷이 제2 유형 패킷이라고 결정하며, 세그먼트 리스트의 기본 경로에 대응하는 세그먼트 식별자를 제3 패킷 포워딩 경로에 대응하는 세그먼트 식별자로 교체한다. 구체적으로, 네트워크 노드(101)는 세그먼트 리스트의 최상위 세그먼트 식별자 [2013]를 [1002, 1004]로 대체한다. 교체된 패킷은 제4 패킷이고, 네트워크 노드(101)는 계속해서 제4 패킷을 포워딩하며, 즉 FRR 경로가 네트워크 노드(103)를 통과하지 않는다.
패킷 유형은 보안 요건(security requirement)에 따라 분류될 수 있다. 구체적으로, 제1 유형 패킷은 금융 데이터와 같이 보안 요건이 높은 패킷이다. 제2 유형 패킷은 라이브 비디오 스트리밍 데이터와 같이 보안 요건이 낮은 패킷이다. 일부 패킷은 비교적 높은 보안 요건을 가진다. 예를 들어, 금융 데이터가 방화벽 노드를 거치지 않고 포워딩되면 네트워크 보안 위험이 발생한다. 따라서, 전술한 바와 같이 네트워크 보안을 보호하기 위해 제1 유형 패킷은 제1 플래그 비트의 지시를 참조하여 방화벽 노드를 통해 강제로 포워딩될 수 있다. 방화벽 노드에 장애가 있으면, 제1 유형 패킷에 대해 패킷 폐기 처리를 수행한다. 그러나 일부 다른 패킷은 상대적으로 낮은 보안 요건을 가진다. 예를 들어, 라이브 비디오 스트리밍 데이터의 경우, 방화벽 노드에 장애가 있더라도 사용자는 여전히 라이브 비디오 스트리밍이 영향을 받지 않을 것으로 기대한다. 따라서, 제2 유형 패킷에 대해서는 앞서 설명한 바와 같이 제3 플래그 비트의 지시를 참조하여 네트워크 진입 노드에서 방화벽 노드를 포함하지 않는 포워딩 경로가 생성되거나, 방화벽 노드를 포함하지 않는 백업 경로가 네트워크 중간 노드에서 생성되어, 방화벽 노드에 장애가 있을 때 라이브 비디오 스트리밍이 중단되지 않는 것을 보장한다.
본 발명의 일 실시예는 패킷 포워딩 경로를 결정하는 방법을 제공한다. 이 방법은 한 유형의 세그먼트 식별자 통고 메시지를 포함하고, 세그먼트 식별자 통고 메시지의 플래그 비트는 패킷이 제2 네트워크 노드를 통해 포워딩될 필요가 없음을 지시한다. 제1 네트워크 노드는 세그먼트 식별자 통고 메시지를 획득한다. 생성된 패킷 포워딩 경로는 플래그 비트의 지시에 기반한 제2 네트워크 노드를 포함하지 않는다.
일 예에서, 제1 네트워크 노드는 네트워크 진입 노드일 수 있다. 도 1에 도시된 애플리케이션 시나리오를 참조하면, 제1 네트워크 노드는 네트워크 진입 노드(100)일 수 있고, 제2 네트워크 노드는 네트워크 노드(103)일 수 있다. 네트워크 노드(103)는 제1 세그먼트 식별자 통고 메시지를 생성한다. 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자(1003) 및 제1 플래그 비트를 포함하고, 제1 세그먼트 식별자(1003)는 네트워크 노드(103)의 노드 세그먼트 식별자이다. 네트워크 노드(100)는 제1 세그먼트 식별자 통고 메시지를 획득한다. 네트워크 노드(100)는 제1 플래그 비트가 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 없음을 지시하는 것으로 결정한다. 네트워크 노드(100)는 네트워크 노드(103)를 포함하지 않는 제1 패킷 포워딩 경로를 생성한다. 예를 들어, 목적지 주소가 네트워크 노드(105)인 제1 패킷의 경우, 제1 패킷 포워딩 경로는 네트워크 노드(101), 네트워크 노드(102), 네트워크 노드(104)를 거쳐 네트워크 노드(105)에 도달하며, 여기서 네트워크 노드(103)는 포함되지 않는다.
일 예에서, 제1 네트워크 노드는 네트워크 중간 노드일 수 있다. 도 1에 도시된 애플리케이션 시나리오를 참조하면, 제1 네트워크 노드는 네트워크 중간 노드(101)일 수 있고, 제2 네트워크 노드는 네트워크 노드(103)일 수 있다. 네트워크 노드(103)는 제1 세그먼트 식별자 통고 메시지를 생성한다. 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자(1003) 및 제1 플래그 비트를 포함하고, 제1 세그먼트 식별자(1003)는 네트워크 노드(103)의 노드 세그먼트 식별자이다. 네트워크 노드(101)는 제1 세그먼트 식별자 통고 메시지를 획득한다. 네트워크 노드(101)는 제1 플래그 비트가 패킷이 네트워크 노드(103)를 통해 포워딩될 필요가 없음을 지시하는 것으로 결정한다. 네트워크 노드(101)는 네트워크 노드(103)를 포함하지 않는 제1 패킷 포워딩 경로를 생성한다. 네트워크 중간 노드로서, 네트워크 노드(101)에 의해 생성된 제1 패킷 포워딩 경로는 다음 홉에 대한 중간 경로의 세그먼트이며, 패킷 포워딩을 위해 완전한 패킷 포워딩 경로의 일부로 사용됨을 유의한다. 제1 패킷 포워딩 경로는 네트워크 노드(101)와 네트워크 노드(102) 사이의 링크, 즉 [2012]일 수 있으며, 네트워크 노드(103)를 포함하지 않는다.
도 5는 전술한 실시예에서 제1 네트워크 노드의 가능한 개략적인 구조도이다. 네트워크 노드(500)는 도 2 내지 도 4에 도시된 실시예에서 제1 네트워크 노드의 기능을 구현할 수 있다. 도 5를 참조하면, 네트워크 노드(500)는 획득 유닛(501), 결정 유닛(502) 및 처리 유닛(503)을 포함한다. 이들 유닛은 전술한 방법 예에서 제1 네트워크 노드의 대응하는 기능을 수행할 수 있다. 예를 들어, 획득 유닛(501)은 전술한 방법 실시예에서 제1 네트워크 노드에 의해 수행되는 세그먼트 식별자 통고 메시지 획득을 수행하도록 구성된다. 결정 유닛(502)은 전술한 방법 실시예에서 제1 네트워크 노드에 의해 수행되는 플래그 비트 결정을 수행하도록 구성된다. 처리 유닛(503)은 전술한 방법 실시예에서 제1 네트워크 노드에 의해 수행되는 경로 생성을 수행하도록 구성된다. 예를 들어, 획득 유닛(501)은 제1 세그먼트 식별자 통고 메시지를 획득하도록 구성된다. 결정 유닛(502)은 제1 플래그 비트가 패킷이 제2 네트워크 노드를 통해 포워딩될 필요가 있음을 지시하는 것으로 결정하도록 구성된다. 처리 유닛(503)은 제1 패킷 포워딩 경로를 생성하도록 구성된다. 제1 패킷 포워딩 경로는 제2 네트워크 노드를 포함한다.
일 예에서, 네트워크 노드(500)는 생성 유닛 및 송신 유닛을 더 포함한다. 이들 유닛은 전술한 방법 예에서 제1 네트워크 노드의 대응하는 기능을 수행할 수 있다. 예를 들어, 생성 유닛은 전술한 방법 실시예에서 제1 네트워크 노드에 의해 수행되는 세그먼트 식별자 통고 메시지 생성을 수행하도록 구성된다. 송신 유닛은 전술한 방법 실시예에서 제1 네트워크 노드에 의해 수행되는 세그먼트 식별자 통고 메시지 송신을 수행하도록 구성된다. 예를 들어, 생성 유닛은 제1 세그먼트 식별자 통고 메시지를 생성하도록 구성된다. 송신 유닛은 제1 세그먼트 식별자 통고 메시지를 네트워크의 다른 네트워크 노드에 송신하도록 구성된다.
통합된 유닛을 사용할 때, 도 6은 전술한 실시예에서 제1 네트워크 노드의 다른 가능한 개략적인 구조도이다. 네트워크 노드(600)는 또한 도 2 내지 도 4에 도시된 실시예에서 제1 네트워크 노드의 기능을 구현할 수 있다.
네트워크 노드(600)는 저장 유닛(601), 처리 유닛(602), 및 통신 유닛(603)을 포함한다. 처리 유닛(602)은 제1 네트워크 노드(600)의 동작을 제어 및 관리하도록 구성된다. 예를 들어, 처리 유닛(602)은 도 2의 프로세스 S201, S202, S203, 도 3의 프로세스 S301, S302, S303, S304, 도 4의 프로세스 S401, S402, S403, 및/또는 본 명세서에서 설명된 다른 기술의 프로세스를 수행함에 있어서, 네트워크 노드(600)를 지원하도록 구성된다. 통신 유닛(603)은 네트워크 노드(600)와 다른 네트워크 엔티티 간의 통신, 예를 들어 네트워크 노드(600)와 제2 네트워크 노드 간의 통신을 지원하도록 구성된다. 저장 유닛(601)은 네트워크 노드(600)의 프로그램 코드 및 데이터를 저장하도록 구성된다.
일 예에서, 처리 유닛(602)은 추가로, 세그먼트 식별자 통고 메시지 생성, 세그먼트 식별자 통고 메시지 송신, 및/또는 본 명세서에 설명된 기술에 사용되는 다른 프로세스를 수행함에 있어 네트워크 노드(600)를 지원하도록 구성된다. 통신 유닛(603)은 네트워크 노드(600)가 다른 네트워크 엔티티와 통신하는 것, 예를 들어 네트워크의 다른 네트워크 노드와 통신하는 것을 지원하도록 구성된다.
처리 유닛(602)은 프로세서, 예를 들어, 중앙 처리 유닛(central processing unit, CPU), 범용 프로세서, 디지털 신호 프로세서(digital signal processing, DSP), 특정 애플리케이션 집적 회로(application-specific integrated circuit, ASIC), 필드 프로그램 가능 게이트 어레이((field programmable gate array, FPGA), 또는 다른 프로그램 가능 논리 디바이스, 트랜지스터 논리 디바이스, 하드웨어 구성 요소, 또는 이들의 조합일 수 있다. 처리 유닛(602)은 본 발명의 실시예에 개시된 내용을 참조하여 설명된 다양한 예시적인 논리 블록, 모듈 및 회로를 구현하거나 실행할 수 있다. 프로세서는 컴퓨팅 기능을 구현하는 프로세서의 조합, 예를 들어 하나 이상의 마이크로프로세서의 조합, 또는 DSP와 마이크로프로세서의 조합일 수 있다. 통신 유닛(603)은 트랜시버일 수 있고, 저장 유닛(601)은 메모리일 수 있다.
처리 유닛(602)이 프로세서이고, 통신 유닛(603)이 트랜시버이며, 저장 유닛(601)이 메모리일 때, 본 발명의 실시예에서 제1 네트워크 유닛은 도 7에 도시된 네트워크 노드(700)일 수 있다.
도 7은 전술한 실시예에서 제1 네트워크 노드의 다른 가능한 개략적인 구조도이다. 네트워크 노드(700)는 프로세서(702), 트랜시버(703), 메모리(701), 및 버스(704)를 포함한다. 트랜시버(703), 프로세서(702), 및 메모리(701)는 버스(704)를 통해 상호 연결된다. 버스(704)는 주변기기 구성요소 상호접속(peripheral component interconnect, PCI) 버스, 확장된 산업 표준 아키텍처(extended industry standard architecture, EISA) 버스 등일 수 있다. 버스는 어드레스 버스, 데이터 버스, 제어 버스 등으로 분류될 수 있다. 표현의 용이함을 위해, 도 7에서 버스를 나타내기 위해 오직 하나의 굵은 선이 사용되지만, 이것이 버스가 하나뿐이거나 버스 유형이 하나만 있음을 의미하지는 않는다.
도 8은 전술한 실시예에서 제1 네트워크 노드의 다른 가능한 개략적인 구조도이다. 네트워크 노드(800)는 메인 제어 보드(801) 및 인터페이스 보드(802)를 포함한다. 메인 제어 보드(801)는 프로세서(803) 및 메모리(804)를 포함한다. 인터페이스 보드는 프로세서(805), 메모리(806) 및 인터페이스 카드(807)를 포함한다. 메인 제어 보드(801)와 인터페이스 보드(802)는 결합된다.
이들 하드웨어 디바이스는 도 2 내지 도 4의 방법 예에서 제1 네트워크 노드의 대응하는 기능을 구현할 수 있다. 예를 들어, 메모리(806)는 인터페이스 보드(802)의 프로그램 코드를 저장하도록 구성되고, 프로세서(805)는 메모리(806)의 프로그램 코드를 호출하여, 전술한 방법 실시 예에서 제1 네트워크에 의해 수행되는 다양한 정보 수신 및 송신을 수행하도록 인터페이스 카드(807)를 트리거하도록 구성된다. 메모리(804)는 메인 제어 보드(801)의 프로그램 코드를 저장하도록 구성될 수 있고, 프로세서(803)는 메모리(804)의 프로그램 코드를 호출하여 전술한 방법 실시예에서 제1 네트워크에 의해 수행되는 정보 수신 및 송신 이외의 다른 처리를 수행하도록 구성된다.
예를 들어, 프로세서(805)는 수신을 수행하도록 인터페이스 카드(807)를 트리거하도록 구성된다. 프로세서(803)는 제1 플래그 비트가 패킷이 제2 네트워크 노드를 통해 포워딩될 필요가 있음을 지시하는 것으로 결정하고, 제1 패킷 포워딩 경로를 생성하도록 구성된다. 메모리(804)는 메인 제어 보드(801)의 프로그램 코드 및 데이터를 저장하도록 구성되고, 메모리(806)는 인터페이스 보드(802)의 프로그램 코드 및 데이터를 저장하도록 구성된다.
일 예에서, 프로세서(803)는 추가로, 제1 세그먼트 식별자 통고 메시지를 생성하도록 구성되고, 프로세서(805)는 추가로, 제1 세그먼트 식별자 통고 메시지를 송신하도록 구성된다.
가능한 구현에서, 메인 제어 보드(801)와 인터페이스 보드(802) 사이에 IPC 채널이 구축되고, IPC 채널을 통해 메인 제어 보드(801)와 인터페이스 보드(802) 사이에 통신이 수행된다. 예를 들어, 메인 제어 보드(801)는 IPC 채널을 통해 인터페이스 보드(802)로부터 제1 세그먼트 식별자 통고 메시지를 수신한다.
네트워크 노드(800)는 라우터, 스위치 또는 포워딩 기능을 갖는 네트워크 노드일 수 있다. 네트워크 노드(800)는 전술한 방법 실시예에서 제1 네트워크 노드의 기능을 구현할 수 있다. 특정 실행 단계에 대해서는 전술한 방법 실시예를 참조하고, 세부 사항은 여기에서 다시 설명하지 않는다.
도 9는 전술한 실시예에서 제2 네트워크 노드의 가능한 개략적인 구조도이다. 네트워크 노드(900)는 전술한 실시예에서 제2 네트워크 노드의 기능을 구현할 수 있다. 도 9를 참조하면, 네트워크 노드(900)는 생성 유닛(901) 및 송신 유닛(902)을 포함한다. 이들 유닛은 전술한 방법 예에서 제2 네트워크 노드의 대응하는 기능을 수행할 수 있다. 예를 들어, 생성 유닛(901)은 전술한 방법 실시예에서 제2 네트워크 노드에 의해 수행되는 세그먼트 식별자 통고 메시지 생성을 수행하도록 구성된다. 송신 유닛(902)은 전술한 방법 실시예에서 제2 네트워크 노드에 의해 수행되는 세그먼트 식별자 통고 메시지 송신을 수행하도록 구성된다. 예를 들어, 생성 유닛(901)은 제1 세그먼트 식별자 통고 메시지를 생성하도록 구성된다. 송신 유닛(902)은 제1 세그먼트 식별자 통고 메시지를 제1 네트워크 노드에 송신하도록 구성된다.
통합된 유닛을 사용할 때, 도 10은 전술한 실시예에서 제2 네트워크 노드의 다른 가능한 개략적인 구조도이다. 제2 네트워크 노드는 또한 전술한 실시예에서 제2 네트워크 노드의 기능을 구현할 수 있다.
네트워크 노드(1000)는 저장 유닛(1001), 처리 유닛(1002), 및 통신 유닛(1003)을 포함한다. 처리 유닛(1002)은 제2 네트워크 노드(1000)의 동작을 제어 및 관리하도록 구성된다. 예를 들어, 처리 유닛(1002)은 세그먼트 식별자 통고 메시지 생성, 세그먼트 식별자 통고 메시지 송신, 및/또는 본 명세서에서 설명된 기술에 사용되는 다른 프로세스에서 네트워크 노드(1000)를 지원하도록 구성된다. 통신 유닛(1003)은 네트워크 노드(1000)와 다른 네트워크 엔티티 간의 통신, 예를 들어 네트워크 노드(1000)와 제1 네트워크 노드 간의 통신을 지원하도록 구성된다. 저장 유닛(1001)은 네트워크 노드(1000)의 프로그램 코드 및 데이터를 저장하도록 구성된다.
처리 유닛(1002)은 프로세서일 수 있고, 예를 들어 CPU, 범용 프로세서, DSP, ASIC, FPGA, 또는 다른 프로그래밍 가능 논리 디바이스, 트랜지스터 논리 디바이스, 하드웨어 구성 요소, 또는 이들의 임의의 조합일 수 있다. 처리 유닛(1002)은 본 발명의 실시예에 개시된 내용을 참조하여 설명된 다양한 예시적인 논리 블록, 모듈, 및 회로를 구현하거나 실행할 수 있다. 프로세서는 컴퓨팅 기능을 구현하는 프로세서의 조합, 예를 들어 하나 이상의 마이크로프로세서의 조합, 또는 DSP와 마이크로프로세서의 조합일 수 있다. 통신 유닛(1003)은 트랜시버일 수 있다. 저장 유닛(1001)은 메모리일 수 있다.
처리 유닛(1002)이 프로세서이고, 통신 유닛(1003)이 트랜시버이며, 저장 유닛(1001)이 메모리일 때, 본 발명의 실시예에서 제2 네트워크 노드는 도 11에 도시된 네트워크 노드(1100)일 수 있다.
도 11은 전술한 실시예에서 제2 네트워크 노드의 가능한 개략적인 구조도이다. 네트워크 노드(1100)는 프로세서(1102), 트랜시버(1103), 메모리(1101), 및 버스(1104)를 포함한다. 트랜시버(1103), 프로세서(1102), 및 메모리(1101)는 버스(1104)를 통해 서로 연결된다. 버스(1104)는 PCI 버스, EISA 버스 등일 수 있다. 버스는 어드레스 버스, 데이터 버스, 제어 버스 등으로 분류될 수 있다. 표현의 용이함을 위해, 도 11에서 버스를 나타내기 위해 오직 하나의 굵은 선이 사용되지만, 이것이 버스가 하나뿐이거나 버스 유형이 하나만 있음을 의미하지는 않는다.
도 12는 전술한 실시예에서 제2 네트워크 노드의 가능한 개략적인 구조도이다. 제2 네트워크 노드(1200)는 메인 제어 보드(1201) 및 인터페이스 보드(1202)를 포함한다. 메인 제어 보드(1201)는 프로세서(1203) 및 메모리(1204)를 포함한다. 인터페이스 보드(1202)는 프로세서(1205), 메모리(1206), 및 인터페이스 카드(1207)를 포함한다. 메인 제어 보드(1601)와 인터페이스 보드(1602)는 결합된다.
이러한 하드웨어 디바이스는 전술한 실시예에서 제2 네트워크 노드의 대응하는 기능을 구현할 수 있다. 예를 들어, 메모리(1206)는 인터페이스 보드(1202)의 프로그램 코드를 저장하도록 구성되고, 프로세서(1205)는 메모리(1206)의 프로그램 코드를 호출하여, 전술한 방법 실시예에서 제2 네트워크 노드에 의해 수행되는 다양한 정보 수신 및 송신을 수행하도록 인터페이스 카드(1207)를 트리거하도록 구성된다. 메모리(1204)는 메인 제어 보드(1201)의 프로그램 코드를 저장하도록 구성될 수 있고, 프로세서(1203)는 메모리(1204)의 프로그램 코드를 호출하여 전술한 방법 실시예에서 제2 네트워크 노드에 의해 수행되는 정보 수신 및 송신 이외의 다른 처리를 수행하도록 구성된다. 예를 들어, 프로세서(1203)는 제1 세그먼트 식별자 통고 메시지를 생성하도록 구성되고, 프로세서(1205)는 제1 네트워크 노드에 제1 세그먼트 식별자 통고 메시지를 송신하도록 인터페이스 카드(1207)를 트리거하도록 구성된다.
가능한 구현에서, 메인 제어 보드(1201)와 인터페이스 보드(1202) 사이에 IPC 채널이 구축되고, IPC 채널을 통해 메인 제어 보드(1201)와 인터페이스 보드(1202) 사이에 통신이 수행된다.
네트워크 노드(1200)는 라우터, 스위치 또는 포워딩 기능을 갖는 네트워크 노드일 수 있다. 네트워크 노드(1200)는 전술한 방법 실시예에서 대응하는 네트워크 노드의 기능을 구현할 수 있다. 특정 실행 단계에 대해서는 전술한 방법 실시예를 참조하고, 세부 사항은 여기에서 다시 설명하지 않는다.
도 13을 참조하면, 본 발명의 실시예는 패킷 포워딩 경로를 결정하기 위한 다른 시스템(1300)을 제공한다. 시스템(1300)은 전술한 방법 실시예에서 패킷 포워딩 경로를 결정하는 방법을 구현하도록 구성된다. 시스템(1300)은 제1 네트워크 노드(1301) 및 제2 네트워크 노드(1302)를 포함한다. 제1 네트워크 노드(1301) 및 제2 네트워크 노드(1302)는 각각 전술한 실시예에서 제1 네트워크 노드 및 제2 네트워크 노드의 기능을 구현할 수 있다. 예를 들어, 제1 네트워크 노드(1301)는 도 2의 프로세스 S201, S202, S203, 도 3의 프로세스 S301, S302, S303, S304, 도 4의 프로세스 S401, S402, S403 및/또는 본 명세서에 기술된 기술에 사용되는 다른 프로세스를 수행한다. 제2 네트워크 노드는 세그먼트 식별자 통고 메시지 생성, 세그먼트 식별자 통고 메시지 송신 및/또는 본 명세서에서 기술된 기술에 사용되는 다른 프로세스를 수행한다.
본 발명의 실시예는 전술한 실시예에서 사용된 소프트웨어 명령을 저장하도록 구성된 비휘발성 저장 매체를 더 제공한다. 비휘발성 저장 매체는 전술한 실시예에서 설명한 방법을 수행하기 위한 프로그램을 포함한다. 프로그램이 컴퓨터 또는 네트워크 노드에서 실행될 때, 컴퓨터 또는 네트워크 노드는 전술한 방법 실시예의 방법을 수행하도록 인에이블된다(enabled).
본 발명의 실시예는 컴퓨터 프로그램 명령을 포함하는 컴퓨터 프로그램 제품을 더 제공한다. 컴퓨터 프로그램 제품이 네트워크 노드에서 실행될 때, 네트워크 노드는 전술한 방법 실시예의 방법을 수행하도록 인에이블된다.
본 발명의 실시예에서 제1 네트워크 노드에서 "제1"은 단지 이름 식별자로 사용되며, 순서대로 제1 위치를 나타내지 않는다. "제2" 및 "제3"라는 단어의 경우에도 이 규칙이 적용된다.
위에서 설명된 임의의 디바이스 실시예는 단지 예에 불과하다는 점에 유의해야 한다. 별도의 부분으로 설명된 유닛은 물리적으로 분리되거나 분리되지 않을 수 있으며, 유닛으로 표시된 부분은 물리적 유닛일 수도 있고 아닐 수도 있고, 한 위치에 있을 수도 있고, 복수의 네트워크 유닛에 분산될 수도 있다. 일부 또는 모든 모듈은 실시예의 솔루션의 목적을 달성하기 위한 실제 필요에 따라 선택될 수 있다. 또한, 본 발명에 의해 제공되는 네트워크 노드 실시예의 첨부 도면에서, 모듈 간의 연결 관계는 모듈 간에 통신 연결이 있음을 나타내며, 구체적으로 하나 이상의 통신 버스 또는 신호 케이블로 구현될 수 있다. 당업자는 창의적인 노력 없이도 본 발명의 실시예를 이해하고 구현할 수 있다.
본 발명의 실시예에 개시된 내용과 조합하여 설명된 방법 또는 알고리즘 단계는 하드웨어로 구현될 수도 있고, 소프트웨어 명령을 실행하여 프로세서에 의해 구현될 수도 있다. 소프트웨어 명령은 대응하는 소프트웨어 모듈을 포함할 수 있다. 소프트웨어 모듈은 랜덤 액세스 메모리(random access memory, RAM), 플래시 메모리, 읽기 전용 메모리(read only memory, ROM), 소거 가능한 프로그래머블 읽기 전용 메모리(erasable programmable ROM, EPROM), 전기적으로 소거 가능한 프로그램 가능한 읽기 전용 메모리(Electrically EPROM, EEPROM), 하드 디스크, 제거 가능한 하드 디스크, 콤팩트 디스크, 또는 당업계에 잘 알려진 임의의 다른 형태의 저장 매체에 저장될 수 있다. 예를 들어, 저장 매체는 프로세서에 연결되므로, 프로세서가 저장 매체로부터 정보를 읽거나 저장 매체에 정보를 기록할 수 있다. 물론, 저장 매체는 프로세서의 구성 요소일 수 있다. 프로세서 및 저장 매체는 ASIC에 위치할 수 있다. 또한, ASIC은 네트워크 노드에 위치할 수 있다. 물론, 프로세서와 저장 매체는 네트워크 노드에 개별 구성 요소로 존재할 수 있다.
당업자는 전술한 하나 이상의 예에서, 본 발명의 실시예에서 설명된 기능이 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 조합에 의해 구현될 수 있음을 인식해야 한다. 본 발명이 소프트웨어로 구현되는 경우, 전술한 기능들은 컴퓨터가 판독 가능한 매체에 저장되거나, 컴퓨터가 판독 가능한 매체에서의 하나 이상의 명령 또는 코드로서 송신될 수 있다. 컴퓨터가 판독 가능한 매체는 컴퓨터 저장 매체 및 통신 매체를 포함하고, 통신 매체는 컴퓨터 프로그램이 한 장소에서 다른 장소에 전송될 수 있게 하는 임의의 매체를 포함한다. 저장 매체는 범용 또는 특수 목적 컴퓨터에 액세스할 수 있는 모든 사용 가능한 매체일 수 있다.
본 발명의 목적, 기술적 솔루션 및 이점은 전술한 특정 실시예에서 더 상세히 설명된다. 전술한 설명은 단지 본 발명의 특정 실시예일 뿐, 본 발명의 보호 범위를 제한하려는 의도가 아님을 이해해야 한다. 본 발명의 정신과 원리 내에서 이루어진 임의의 수정, 균등 교체 또는 개선은 본 발명의 보호 범위에 속한다.
Claims (41)
- 패킷 포워딩 경로(packet forwarding path)를 결정하는 방법으로서,
제1 네트워크 노드가, 제1 세그먼트 식별자 통고(advertisement) 메시지를 획득하는 단계 - 상기 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자 및 제1 플래그 비트를 포함하고, 상기 제1 세그먼트 식별자는 제2 네트워크 노드에 대응함 -;
상기 제1 네트워크 노드가, 상기 제1 플래그 비트가 패킷이 상기 제2 네트워크 노드를 통해 포워딩될 필요가 있음을 지시하는 것으로 결정하는 단계; 및
상기 제1 네트워크 노드가, 제1 패킷 포워딩 경로를 획득하는 단계 - 상기 제1 패킷 포워딩 경로는 상기 제2 네트워크 노드를 포함함 -
를 포함하고,
상기 방법은,
상기 제1 네트워크 노드가, 제2 패킷 포워딩 경로를 획득하는 단계 - 상기 제2 패킷 포워딩 경로는 상기 제2 네트워크 노드를 포함하고, 상기 제1 패킷 포워딩 경로는 상기 제2 패킷 포워딩 경로와 상이하며, 상기 제1 패킷 포워딩 경로는 기본(primary) 경로이고, 상기 제2 패킷 포워딩 경로는 상기 제1 패킷 포워딩 경로의 제1 백업(backup) 경로임 -
를 더 포함하고,
상기 방법은,
상기 제1 네트워크 노드가, 제3 세그먼트 식별자 통고 메시지를 획득하는 단계 - 상기 제3 세그먼트 식별자 통고 메시지는 제3 세그먼트 식별자 및 제3 플래그 비트를 포함하고, 상기 제3 세그먼트 식별자는 상기 제2 네트워크 노드에 대응함 -;
상기 제1 네트워크 노드가, 상기 제3 플래그 비트가 상기 패킷이 상기 제2 네트워크 노드를 통해 포워딩될 필요가 없음을 지시하는 것으로 결정하는 단계; 및
상기 제1 네트워크 노드가, 제3 패킷 포워딩 경로를 획득하는 단계 - 상기 제3 패킷 포워딩 경로는 상기 제2 네트워크 노드를 포함하지 않고, 상기 제3 패킷 포워딩 경로는 상기 제1 패킷 포워딩 경로의 제2 백업 경로임 -
를 더 포함하는 방법. - 제1항에 있어서,
상기 방법은,
상기 제1 네트워크 노드가, 세그먼트 리스트를 포함하는 제1 패킷을 수신하는 단계 - 상기 세그먼트 리스트의 최상위(topmost) 세그먼트 식별자는 상기 기본 경로에 대응하는 세그먼트 식별자임 -;
상기 제1 네트워크 노드가, 상기 제2 네트워크 노드가 상기 기본 경로를 통해 도달할 수 없는 것으로 결정하는 단계;
상기 제1 네트워크 노드가, 상기 기본 경로에 대응하면서 또한 상기 세그먼트 리스트에 있는 세그먼트 식별자를 상기 제1 백업 경로에 대응하는 세그먼트 식별자로 대체하여, 제2 패킷을 생성하는 단계; 및
상기 제1 네트워크 노드가, 상기 제2 패킷을 상기 제2 네트워크 노드에 송신하는 단계
를 더 포함하는 방법. - 제1항에 있어서,
상기 방법은,
상기 제1 네트워크 노드가, 포워딩 엔트리(forwarding entry)를 생성하는 단계 - 상기 포워딩 엔트리는 상기 기본 경로에 대응하는 세그먼트 식별자 및 상기 제1 백업 경로에 대응하는 세그먼트 식별자를 포함함 -
를 더 포함하는 방법. - 제1항에 있어서,
상기 방법은,
상기 제1 네트워크 노드가, 세그먼트 리스트를 포함하는 제1 패킷을 수신하고 - 상기 세그먼트 리스트의 최상위 세그먼트 식별자는 상기 기본 경로에 대응하는 세그먼트 식별자임 -, 상기 제1 네트워크 노드가, 상기 제1 패킷이 제1 유형 패킷인 것으로 결정하며, 상기 제1 네트워크 노드가, 상기 제2 네트워크 노드가 상기 기본 경로를 통해 도달할 수 없는 것으로 결정하고, 상기 기본 경로에 대응하면서 또한 상기 세그먼트 리스트에 있는 세그먼트 식별자를 상기 제1 백업 경로에 대응하는 세그먼트 식별자로 대체하여 제2 패킷을 생성하고, 상기 제1 네트워크 노드가, 상기 제2 패킷을 상기 제2 네트워크 노드에 송신하거나, 또는
상기 제1 네트워크 노드가, 세그먼트 리스트를 포함하는 제3 패킷을 수신하고 - 상기 세그먼트 리스트의 최상위 세그먼트 식별자는 상기 기본 경로에 대응하는 세그먼트 식별자임 -, 상기 제1 네트워크 노드가, 상기 제3 패킷이 제2 유형 패킷인 것으로 결정하며, 상기 제1 네트워크 노드가, 상기 제2 네트워크 노드가 상기 기본 경로를 통해 도달할 수 없는 것으로 결정하고, 상기 기본 경로에 대응하면서 또한 상기 세그먼트 리스트에 있는 세그먼트 식별자를 상기 제2 백업 경로에 대응하는 세그먼트 식별자로 대체하여 제4 패킷을 생성하고, 상기 제1 네트워크 노드가 상기 제4 패킷을 계속해서 포워딩하는 단계
를 더 포함하는 방법. - 제1항에 있어서,
상기 방법은,
상기 제1 네트워크 노드가 상기 제1 패킷 포워딩 경로를 획득하기 전에, 상기 제1 네트워크 노드가, 제1 패킷을 수신하고, 상기 제1 패킷이 제1 유형 패킷이라고 결정하는 단계; 및
상기 제1 네트워크 노드가 상기 제1 패킷 포워딩 경로를 획득한 후, 상기 제1 네트워크 노드가, 상기 제1 패킷 포워딩 경로에 대응하는 세그먼트 리스트를 결정하고, 상기 제1 네트워크 노드가 상기 세그먼트 리스트를 상기 제1 패킷에 푸시하여 제2 패킷을 생성하고, 상기 세그먼트 리스트에 기반하여 상기 제2 패킷을 포워딩하는 단계
를 더 포함하는 방법. - 제1항에 있어서,
상기 방법은,
상기 제1 네트워크 노드가, 제3 세그먼트 식별자 통고 메시지를 획득하는 단계 - 상기 제3 세그먼트 식별자 통고 메시지는 제3 세그먼트 식별자 및 제3 플래그 비트를 포함하고, 상기 제3 세그먼트 식별자는 상기 제2 네트워크 노드에 대응함 -;
상기 제1 네트워크 노드가, 상기 제3 플래그 비트가 상기 패킷이 상기 제2 네트워크 노드를 통해 포워딩될 필요가 없음을 지시하는 것으로 결정하는 단계;
상기 제1 네트워크 노드가 제3 패킷을 수신하고, 상기 제3 패킷이 제2 유형 패킷인 것으로 결정하는 단계;
상기 제1 네트워크 노드가, 제3 패킷 포워딩 경로를 획득하는 단계 - 상기 제3 패킷 포워딩 경로는 상기 제2 네트워크 노드를 포함하지 않음 -; 및
상기 제1 네트워크 노드가, 상기 제3 패킷 포워딩 경로에 대응하는 세그먼트 리스트를 결정하고, 상기 제1 네트워크 노드가 상기 세그먼트 리스트를 상기 제3 패킷에 푸시하여 제4 패킷을 생성하고, 상기 세그먼트 리스트에 기반하여 상기 제4 패킷을 포워딩하는 단계
를 더 포함하는 방법. - 제4항에 있어서,
상기 제1 유형 패킷의 우선순위가 제1 임계값보다 높거나, 또는 상기 제1 유형 패킷의 보안 요건 레벨(security requirement level)이 제1 임계값보다 높은, 방법. - 제4항에 있어서,
상기 제2 유형 패킷의 우선순위가 제2 임계값보다 낮거나, 또는 상기 제2 유형 패킷의 보안 요구 레벨이 제2 임계값보다 낮은, 방법. - 제1항 내지 제8항 중 어느 한 항에 있어서,
상기 제2 네트워크 노드는 방화벽인, 방법. - 패킷 포워딩 경로를 결정하는 방법으로서,
제2 네트워크 노드가, 제1 세그먼트 식별자 통고 메시지를 생성하는 단계 - 상기 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자 및 제1 플래그 비트를 포함하고, 상기 제1 플래그 비트는 패킷 포워딩 경로가 상기 제1 세그먼트 식별자에 대응하는 네트워크 노드를 통해 통과할 필요가 있음을 지시함 -; 및
상기 제2 네트워크 노드가, 상기 제1 세그먼트 식별자 통고 메시지를 제1 네트워크 노드에 송신하는 단계 - 상기 제1 플래그 비트는 상기 제1 네트워크 노드에 의해 획득된 제1 패킷 포워딩 경로가 상기 제1 세그먼트 식별자에 대응하는 네트워크 노드를 통과함을 지시함 -
를 포함하고,
상기 방법은,
상기 제2 네트워크 노드가, 제3 세그먼트 식별자 통고 메시지를 생성하는 단계 - 상기 제3 세그먼트 식별자 통고 메시지는 제3 세그먼트 식별자 및 제3 플래그 비트를 포함하고, 상기 제3 플래그 비트는 상기 패킷 포워딩 경로가 상기 제3 세그먼트 식별자에 대응하는 네트워크 노드를 통과할 필요가 없음을 지시하고, 상기 제3 세그먼트 식별자에 대응하는 네트워크 노드는 상기 제1 세그먼트 식별자에 대응하는 네트워크 노드와 동일한 노드임 -; 및
상기 제2 네트워크 노드가, 상기 제3 세그먼트 식별자 통고 메시지를 상기 제1 네트워크 노드에 송신하는 단계 - 상기 제3 플래그 비트는 상기 제1 네트워크 노드에 의해 생성된 제3 패킷 포워딩 경로가 상기 제1 세그먼트 식별자에 대응하는 네트워크 노드를 통과하지 않음을 지시함 -
를 더 포함하는 방법. - 제10항에 있어서,
상기 제2 네트워크 노드는 방화벽인, 방법. - 네트워크 노드로서,
상기 네트워크 노드는 복수의 네트워크 노드에서 제1 네트워크 노드이고, 상기 복수의 네트워크 노드는 제2 네트워크 노드를 더 포함하고, 상기 제1 네트워크 노드는,
제1 세그먼트 식별자 통고 메시지를 획득하도록 - 상기 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자 및 제1 플래그 비트를 포함하고, 상기 제1 세그먼트 식별자는 제2 네트워크 노드에 대응함 - 구성된 획득 유닛;
상기 제1 플래그 비트가 패킷이 상기 제2 네트워크 노드를 통해 포워딩될 필요가 있음을 지시하는 것으로 결정하도록 구성된 결정 유닛; 및
제1 패킷 포워딩 경로를 획득하도록 - 상기 제1 패킷 포워딩 경로는 상기 제2 네트워크 노드를 포함함 - 구성된 처리 유닛
을 포함하고,
상기 획득 유닛이, 제3 세그먼트 식별자 통고 메시지를 획득하도록 더 구성되고, 여기서 상기 제3 세그먼트 식별자 통고 메시지는 제3 세그먼트 식별자 및 제3 플래그 비트를 포함하고, 상기 제3 세그먼트 식별자는 상기 제2 네트워크 노드에 대응하며,
상기 결정 유닛이, 상기 제3 플래그 비트가 상기 패킷이 상기 제2 네트워크 노드를 통해 포워딩될 필요가 없음을 지시하는 것으로 결정하도록 더 구성되고,
상기 획득 유닛이, 제3 패킷 포워딩 경로를 획득하도록 더 구성되고, 여기서 상기 제3 패킷 포워딩 경로는 상기 제2 네트워크 노드를 포함하지 않고, 상기 제3 패킷 포워딩 경로는 상기 제1 패킷 포워딩 경로의 제2 백업 경로인, 네트워크 노드. - 네트워크 노드로서,
상기 네트워크 노드는 복수의 네트워크 노드에서 제2 네트워크 노드이고, 상기 복수의 네트워크 노드는 제1 네트워크 노드를 더 포함하고, 상기 제2 네트워크 노드는,
제1 세그먼트 식별자 통고 메시지를 생성하도록 - 상기 제1 세그먼트 식별자 통고 메시지는 제1 세그먼트 식별자 및 제1 플래그 비트를 포함하고, 상기 제1 플래그 비트는 패킷 포워딩 경로가 상기 제1 세그먼트 식별자에 대응하는 네트워크 노드를 통해 통과할 필요가 있음을 지시함 - 구성된 생성 유닛; 및
상기 제1 세그먼트 식별자 통고 메시지를 상기 제1 네트워크 노드에 송신하도록 - 상기 제1 플래그 비트는 상기 제1 네트워크 노드에 의해 획득된 제1 패킷 포워딩 경로가 상기 제1 세그먼트 식별자에 대응하는 네트워크 노드를 통과함을 지시함 - 구성된 송신 유닛
을 포함하고,
상기 생성 유닛은 제3 세그먼트 식별자 통고 메시지를 생성하도록 더 구성되고, 여기서 상기 제3 세그먼트 식별자 통고 메시지는 제3 세그먼트 식별자 및 제3 플래그 비트를 포함하고, 상기 제3 플래그 비트는 상기 패킷 포워딩 경로가 상기 제3 세그먼트 식별자에 대응하는 네트워크 노드를 통과할 필요가 없음을 나타내고, 상기 제3 세그먼트 식별자에 대응하는 네트워크 노드는 상기 제1 세그먼트 식별자에 대응하는 네트워크 노드와 동일한 노드이며;
상기 송신 유닛은 상기 제3 세그먼트 식별자 통고 메시지를 상기 제1 네트워크 노드에 전송하도록 더 구성되며, 여기서 상기 제3 플래그 비트는 상기 제1 네트워크 노드에 의해 생성된 제3 패킷 포워딩 경로가 상기 제1 세그먼트 식별자에 대응하는 네트워크 노드를 통과하지 않음을 나타내는, 네트워크 노드. - 패킷 포워딩 경로를 결정하는 시스템으로서,
상기 시스템은 제12항에 따른 제1 네트워크 노드 및 제13항에 따른 제2 네트워크 노드를 포함하는 시스템. - 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910175452.6A CN109981458B (zh) | 2019-03-08 | 2019-03-08 | 一种确定报文转发路径的方法、网络节点及系统 |
CN201910175452.6 | 2019-03-08 | ||
PCT/CN2020/076932 WO2020181992A1 (zh) | 2019-03-08 | 2020-02-27 | 一种确定报文转发路径的方法、网络节点及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210127985A KR20210127985A (ko) | 2021-10-25 |
KR102666040B1 true KR102666040B1 (ko) | 2024-05-13 |
Family
ID=67078244
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020217029967A KR102666040B1 (ko) | 2019-03-08 | 2020-02-27 | 패킷 포워딩 경로를 결정하는 방법 및 시스템, 그리고 네트워크 노드 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20210409321A1 (ko) |
EP (1) | EP3920480A4 (ko) |
JP (1) | JP7327876B2 (ko) |
KR (1) | KR102666040B1 (ko) |
CN (2) | CN109981458B (ko) |
WO (1) | WO2020181992A1 (ko) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109981458B (zh) * | 2019-03-08 | 2022-07-26 | 华为技术有限公司 | 一种确定报文转发路径的方法、网络节点及系统 |
CN110535772B (zh) * | 2019-08-27 | 2020-06-16 | 南京中兴软件有限责任公司 | 分段路由流量工程策略的发送及接收方法、装置和网元 |
CN112468396B (zh) * | 2019-09-06 | 2022-05-31 | 华为技术有限公司 | 主机网络性能需求可编程化的方法、设备和系统 |
CN114884873A (zh) * | 2019-09-11 | 2022-08-09 | 华为技术有限公司 | 一种转发路径的确定方法及装置 |
CN112751763A (zh) * | 2019-10-30 | 2021-05-04 | 北京华为数字技术有限公司 | 一种报文转发方法、设备、存储介质及系统 |
WO2021083341A1 (zh) * | 2019-11-01 | 2021-05-06 | 华为技术有限公司 | 一种报文处理的方法、网络节点和系统 |
CN112822104A (zh) * | 2019-11-15 | 2021-05-18 | 华为技术有限公司 | 一种数据报文的处理方法、设备、存储介质及系统 |
CN117640489A (zh) * | 2020-02-21 | 2024-03-01 | 华为技术有限公司 | 一种发送报文的方法、设备及系统 |
CN111541612B (zh) * | 2020-04-21 | 2021-09-21 | 清华大学 | 一种发送、接收方法及其装置 |
CN113691445B (zh) * | 2020-05-18 | 2022-12-02 | 华为技术有限公司 | 报文转发备份路径确定方法及相关设备 |
US12068955B2 (en) | 2020-10-21 | 2024-08-20 | Huawei Technologies Co., Ltd. | Method for controlling traffic forwarding, device, and system |
CN112422426B (zh) * | 2020-10-28 | 2022-06-28 | 中盈优创资讯科技有限公司 | 基于sr的业务处理方法及装置 |
CN114531360A (zh) * | 2020-10-30 | 2022-05-24 | 华为技术有限公司 | 一种语义名称获取方法、装置、设备及存储介质 |
CN114499904A (zh) * | 2020-11-11 | 2022-05-13 | 华为技术有限公司 | 一种报文处理方法及装置 |
CN112243010B (zh) * | 2020-11-13 | 2021-08-06 | 中盈优创资讯科技有限公司 | 一种基于SRv6的流量采集方法、装置、计算机设备及存储介质 |
CN114629834B (zh) * | 2020-11-27 | 2023-06-27 | 华为技术有限公司 | 通信方法及装置 |
CN112688872B (zh) * | 2021-03-22 | 2021-06-29 | 中国人民解放军国防科技大学 | 联合多域系统及基于联合多域系统的低时延路径传输方法 |
CN113079041B (zh) * | 2021-03-24 | 2023-12-05 | 国网上海市电力公司 | 一种业务流传输方法、装置、设备和存储介质 |
CN115622930A (zh) * | 2021-07-15 | 2023-01-17 | 华为技术有限公司 | 一种报文处理方法以及相关装置 |
CN117097661B (zh) * | 2023-10-18 | 2024-02-20 | 苏州元脑智能科技有限公司 | 数据包的转发方法及装置、存储介质、电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160099864A1 (en) * | 2014-10-07 | 2016-04-07 | Cisco Technology, Inc. | Selective service bypass in service function chaining |
US20160173366A1 (en) * | 2014-12-16 | 2016-06-16 | Cisco Technology, Inc. | Node protection for segment routing adjacency segments |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101227248B (zh) * | 2008-01-29 | 2011-05-25 | 中兴通讯股份有限公司 | 业务路径建立方法 |
CN102611569B (zh) * | 2011-12-21 | 2014-12-03 | 华为技术有限公司 | 一种业务部署时显示路径的方法、装置及通信系统 |
US10165093B2 (en) * | 2015-08-31 | 2018-12-25 | Cisco Technology, Inc. | Generating segment routing conduit in service provider network for routing packets |
EP3417578B1 (en) * | 2016-02-15 | 2020-01-01 | Telefonaktiebolaget LM Ericsson (PUBL) | Is-is extensions for flexible path stitching and selection for traffic transiting segment routing and mpls networks |
WO2017141081A1 (en) * | 2016-02-15 | 2017-08-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Techniques for exposing maximum node and/or link segment identifier depth utilizing is-is |
US10164875B2 (en) * | 2016-02-22 | 2018-12-25 | Cisco Technology, Inc. | SR app-segment integration with service function chaining (SFC) header metadata |
US10270691B2 (en) * | 2016-02-29 | 2019-04-23 | Cisco Technology, Inc. | System and method for dataplane-signaled packet capture in a segment routing environment |
US10148560B2 (en) * | 2016-07-28 | 2018-12-04 | Cisco Technology, Inc. | Enhanced error signaling and error handling in a network environment with segment routing |
US11032197B2 (en) * | 2016-09-15 | 2021-06-08 | Cisco Technology, Inc. | Reroute detection in segment routing data plane |
WO2018085857A1 (en) * | 2016-11-07 | 2018-05-11 | Eero Inc. | Systems and methods for enhanced mesh networking |
US10212088B2 (en) * | 2016-11-07 | 2019-02-19 | Cisco Technology, Inc. | Tactical traffic engineering based on segment routing policies |
US10320683B2 (en) * | 2017-01-30 | 2019-06-11 | Cisco Technology, Inc. | Reliable load-balancer using segment routing and real-time application monitoring |
KR102415794B1 (ko) * | 2017-07-14 | 2022-06-30 | 후아웨이 테크놀러지 컴퍼니 리미티드 | Ipv6 터널에 대한 세그먼트 라우팅을 구축하기 위한 방법 |
US10454822B2 (en) * | 2017-07-27 | 2019-10-22 | Cisco Technology, Inc. | Full-path validation in segment routing |
CN108809759A (zh) * | 2018-05-29 | 2018-11-13 | 新华三技术有限公司 | 检测链路状态的方法、装置和路由器 |
WO2020036827A1 (en) * | 2018-08-17 | 2020-02-20 | Futurewei Technologies, Inc. | Advanced preferred path route graph features in a network |
US10812374B2 (en) * | 2018-09-21 | 2020-10-20 | Cisco Technology, Inc. | Segment routing with fast reroute for container networking |
CN109981458B (zh) * | 2019-03-08 | 2022-07-26 | 华为技术有限公司 | 一种确定报文转发路径的方法、网络节点及系统 |
-
2019
- 2019-03-08 CN CN201910175452.6A patent/CN109981458B/zh active Active
- 2019-03-08 CN CN202210867999.4A patent/CN115426306A/zh active Pending
-
2020
- 2020-02-27 JP JP2021548574A patent/JP7327876B2/ja active Active
- 2020-02-27 WO PCT/CN2020/076932 patent/WO2020181992A1/zh unknown
- 2020-02-27 EP EP20769331.8A patent/EP3920480A4/en active Pending
- 2020-02-27 KR KR1020217029967A patent/KR102666040B1/ko active IP Right Grant
-
2021
- 2021-09-08 US US17/469,201 patent/US20210409321A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160099864A1 (en) * | 2014-10-07 | 2016-04-07 | Cisco Technology, Inc. | Selective service bypass in service function chaining |
US20160173366A1 (en) * | 2014-12-16 | 2016-06-16 | Cisco Technology, Inc. | Node protection for segment routing adjacency segments |
Also Published As
Publication number | Publication date |
---|---|
CN109981458B (zh) | 2022-07-26 |
US20210409321A1 (en) | 2021-12-30 |
CN109981458A (zh) | 2019-07-05 |
JP2022523184A (ja) | 2022-04-21 |
WO2020181992A1 (zh) | 2020-09-17 |
JP7327876B2 (ja) | 2023-08-16 |
KR20210127985A (ko) | 2021-10-25 |
CN115426306A (zh) | 2022-12-02 |
EP3920480A4 (en) | 2022-03-30 |
EP3920480A1 (en) | 2021-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102666040B1 (ko) | 패킷 포워딩 경로를 결정하는 방법 및 시스템, 그리고 네트워크 노드 | |
EP3678338B1 (en) | Method for forwarding messages and network device | |
US11336565B2 (en) | Method and node for packet transmission in network | |
EP3429143B1 (en) | Packet forwarding method and apparatus | |
US8451717B2 (en) | Method and apparatus for rapid switchover from primary to standby multicast trees | |
US10103981B2 (en) | BIER forwarding validation | |
US8369211B2 (en) | Network distribution prevention when virtual chassis system undergoes splits and merges | |
US10298499B2 (en) | Technique of operating a network node for load balancing | |
US11943148B2 (en) | Traffic flow processing method and apparatus | |
WO2021232906A1 (zh) | 报文转发备份路径确定方法及相关设备 | |
JP2021534669A (ja) | パケット処理方法およびゲートウェイ・デバイス | |
US20230155921A1 (en) | Multicast packet sending method, apparatus, and system | |
CN114650242A (zh) | 路径故障检测方法、装置、相关设备及存储介质 | |
US20170012869A1 (en) | Forwarding table management in computer networks | |
US11909546B2 (en) | Method and network node for sending and obtaining assert packet | |
CN116648893A (zh) | 位索引显式复制流量工程出口保护 | |
CN114531396A (zh) | 一种以太网虚拟专用网络中的故障回切方法及装置 | |
CN113872843A (zh) | 一种路由生成方法、路由处理方法及装置 | |
WO2022161061A1 (zh) | 一种故障检测方法、网络设备及系统 | |
CN115150320B (zh) | 报文传输方法、装置及系统 | |
CN116193385A (zh) | 信令传输方法、vrrp组网系统、第一网络实体设备及存储介质 | |
CN117997820A (zh) | 一种主备组播业务frr切换的方法和路由设备 | |
CN115225452A (zh) | 转发路径的故障感知方法、装置及系统 | |
CN115134283A (zh) | 一种环网保护方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |