KR20200111118A - 패킷 전송 방법 및 장치 - Google Patents

패킷 전송 방법 및 장치 Download PDF

Info

Publication number
KR20200111118A
KR20200111118A KR1020200033173A KR20200033173A KR20200111118A KR 20200111118 A KR20200111118 A KR 20200111118A KR 1020200033173 A KR1020200033173 A KR 1020200033173A KR 20200033173 A KR20200033173 A KR 20200033173A KR 20200111118 A KR20200111118 A KR 20200111118A
Authority
KR
South Korea
Prior art keywords
packet
path
identifier
transmission
back pressure
Prior art date
Application number
KR1020200033173A
Other languages
English (en)
Other versions
KR102344346B1 (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 KR20200111118A publication Critical patent/KR20200111118A/ko
Application granted granted Critical
Publication of KR102344346B1 publication Critical patent/KR102344346B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/122Avoiding congestion; Recovering from congestion by diverting traffic away from congested entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate 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/36Backward learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/11Identifying congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS

Abstract

본 출원은 패킷 전송 방법 및 장치를 개시한다. 이 방법은, 제1 장치에 의해, 제2 장치로부터 제1 패킷을 수신하는 단계 - 여기서, 제1 패킷은 메인 스케줄링 식별자를 포함하고, 메인 스케줄링 식별자는 제2 장치가 경로를 선택할 권한이 있음을 식별하기 위해 사용됨 -; 상기 제1 장치에 의해, 상기 제1 패킷을 전송하는 데 사용된 제1 경로를 결정하는 단계; 및 제1 장치에 의해, 제1 경로를 사용하여 제2 패킷을 제2 장치로 전송하는 단계 - 여기서 제2 패킷은 추종 식별자를 포함하고, 추종 식별자는 제1 장치 이외의 장치에 의해 선택된 전송 경로를 사용하여 제1 장치가 패킷을 전송함을 식별하는 데 사용됨-을 포함한다. 제2 장치가 제1 장치와 통신할 때, 추종 당사자 역할을 하는 제1 장치는 메인 스케줄링 당사자 역할을 하는 제2 장치에 의해 선택된 전송 경로를 사용하여 패킷을 전송함으로써, 제1 장치 및 제2 장치는 동일한 전송 경로를 사용한다. 이를 통해 복잡한 SD-WAN 경로 선택 시나리오에서 서비스 품질을 보장하면서 두 통신 당사자 간의 양방향 패킷 전송에 동일한 경로를 사용할 수 있다.

Description

패킷 전송 방법 및 장치{PACKET TRANSMISSION METHOD AND APPARATUS}
본 발명은 통신 기술 분야, 특히 패킷 전송 방법 및 장치에 관한 것이다.
광역 네트워크의 소프트웨어 정의 네트워킹(software-defined networking in a wide area network, SD-WAN)은 광역 네트워크(WAN)에서 소프트웨어 정의 네트워킹(SDN) 기술을 적용하여 생성된 새로운 기술이다. 광역 네트워크는 주로 엔터프라이즈 네트워크에 포함된 여러 지사와 데이터 센터를 연결하는 데 사용된다. SD-WAN은 복수의 프로토콜 연결 방식, 예를 들어 멀티 프로토콜 라벨 전환(Multi-protocol Label Switching, MPLS) 네트워크 연결, 인터넷 연결 및 MPLS- 및 인터넷 하이브리드 연결(또한 하이브리드 링크라고도 함)을 지원한다. SD-WAN에서, 통신 주체로서 기능하는 클라이언트는 액세스 장치로서 기능하는 사이트(site)에 연결된다. 사이트는 사이트에 연결된 클라이언트에 대한 베어러 서비스 흐름 패킷을 전달하는 데 사용된다. 패킷 전달 프로세스에서 사이트는 두 통신 당사자의 서비스 흐름에 대한 전송 경로를 선택해야 한다. 사용자 경험을 개선하고 부하 밸런싱을 구현하려면 두 통신 당사자의 클라이언트가 각각 연결된 두 사이트에서 두 통신 당사자에 대해 동일한 전송 경로를 선택하는 것이 보장되어야 한다. 즉, 선택된 전송 경로가 동일하다는 것이 보장되어야 한다.
기존 해결책에서 SDN 제어기는 복수의 사이트에 대해 동일한 경로 선택 정책을 구성한다. 예를 들어, 경로 선택 정책은 2개의 통신 당사자로서 역할을 하는 클라이언트의 식별자와 경로 사이의 대응관계를 포함하여, 2개의 통신 당사자에 연결된 2개의 사이트가 동일한 경로를 선택할 수 있고, 제1 패킷의 경로 선택 결과는 2개의 통신 당사자가 후속 패킷을 전송하는 데 사용된다. 도 1에 도시된 통신 시스템은 사이트 1과 사이트 2를 포함한다. 사이트 1은 IP 주소가 10.10.10.10인 클라이언트와 IP 주소가 10.10.11.11인 클라이언트에 연결되어 있고, 사이트 2는 IP 주소가 10.10.20.20인 클라이언트와 IP 주소가 10.10.21.21인 클라이언트에 연결되어 있다. 사이트 1과 사이트 2는 각각 정책 1과 정책 2를 저장한다. 정책 1은 IP 주소 10.10.10.10과 IP 주소 10.10.20.20 사이의 흐름에 대해 MPLS 링크가 우선적으로 선택되도록 지정한다. 정책 2는 IP 주소 10.10.11.11과 IP 주소 10.10.21.21 사이의 흐름을 위해 인터넷 링크가 우선적으로 선택되도록 지정한다. IP 주소가 10.10.10.10인 클라이언트가 IP 주소가 10.10.20.20인 클라이언트와 통신하는 경우 사이트 1과 사이트 2는 모두 정책 1을 선택한다. 즉, 패킷 전송을 위해 MPLS 링크를 선택한다. 이것은 사이트 1과 사이트 2가 다른 경로를 선택한다는 문제를 피한다. 그러나 이 해결책은 사이트 1과 사이트 2 사이의 간단한 경로 선택 시나리오에만 적용된다. 간단한 경로 선택 시나리오에는 간단한 경로 시나리오 및 간단한 정책 시나리오가 포함되지만 이에 국한되지는 않는다. 간단한 경로 선택 외에도 다른 시나리오에서는 복잡한 경로 선택 해결책이 필요할 수 있다. 예를 들어, 원래 경로 품질이 요구 사항을 충족하지 못하고, 두 사이트의 품질 검출 기간과 정책 새로 고침 기간 사이에 시간 차이가 있고, 두 사이트 중 하나 이상의 경로가 혼잡하고, 서비스 우선순위가 정렬되어야 한다. 전술한 시나리오는 복잡한 경로 선택 시나리오라고도 한다. 복잡한 경로 선택 시나리오에서, 종래 기술에서, 경로 선택 정책에 따라 사이트 1 및 사이트 2에 의해 재선택된 경로가 동일한 것을 보장하는 것은 어렵다. 결과적으로 사이트 1과 사이트 2에서 선택한 경로가 다를 수 있다.
다른 기존 해결책에서, 사이트 1과 사이트 2는 사이트 1과 사이트 2 사이에서 전송된 제1 패킷의 경로 선택 결과를 별도로 기록한다. 예를 들어, 제1 패킷이 사이트 1에 의해 전송되고, 사이트 1 및 사이트 2에 의해 전송된 후속 패킷은 제1 패킷의 경로 선택 결과에 종속된다. 경로를 변경해야 하는 경우 사이트 1이 항상 경로 선택을 담당한다. 그러나 2개의 사이트 사이의 통신 중에 링크 결함, 경로 혼잡 등이 발생하는 경우, 타임 아웃 후에 패킷을 송신하지 못한 사이트가 응답 패킷을 수신할 수 없을 때만 패킷이 송신되지 않았다는 것을 사이트가 알 수 있다. 그런 다음 경로 재선택이 트리거된다. 패킷을 전송하지 못한 사이트가 사이트 2인 경우, 사이트 1은 경로를 다시 선택해야 사이트 2가 계속 패킷을 보낼 수 있다. 이로 인해 심각한 서비스 지연이 발생한다.
SD-WAN 경로 선택 시나리오에서 사이트가 단순한 경로 선택 해결책을 선택하는지 아니면 복잡한 경로 선택 해결책을 선택하는지는 일반적으로 패킷이 속하는 응용 프로그램에 따라 다르다. 요약하자면, 복잡한 SD-WAN 경로 선택 시나리오에서 서비스 품질을 보장하면서 두 통신 당사자 간의 양방향 패킷 전송에 동일한 경로가 사용되도록 보장하기 위한 심층적인 연구가 여전히 필요한다.
본 출원은 복잡한 SD-WAN 경로 선택 시나리오에서 서비스 품질을 보장하면서 동일한 통신 경로가 두 통신 당사자 간의 양방향 패킷 전송에 사용되도록 하는 패킷 전송 방법 및 장치를 제공한다.
제1 측면에 따르면, 본 출원의 실시예는 패킷 전송 방법을 제공한다. 이 방법은, 제1 장치에 의해, 제2 장치로부터 제1 패킷을 수신하는 단계 - 제1 패킷은 메인 스케줄링 식별자를 포함하고, 메인 스케줄링 식별자는 제2 장치가 경로를 선택할 수 있는 권한을 가지고 있음을 식별하는 데 사용됨 -; 제1 장치에 의해, 제1 패킷을 전송하는 데 사용된 제1 경로를 결정하는 단계; 및 제1 장치에 의해, 제1 경로를 사용하여 제2 패킷을 제2 장치로 전송하는 단계 - 제2 패킷은 추종 식별자를 포함하고, 추종 식별자는 제1 장치 이외의 장치에 의해 선택된 전송 경로를 사용하여 제1 장치가 패킷을 전송한다는 것을 식별하는 데 사용됨-을 포함한다.
이 해결책에 기초하여, 메인 스케줄링 당사자인 제2 장치는 경로를 선택할 수 있는 권한을 가지며, 추종 당사자인 제1 장치는 제1 장치 이외의 장치에 의해 선택된 전송 경로를 사용하여 패킷을 전송할 수 있다. 구체적으로, 제2 장치가 제1 장치와 통신할 때, 추종 당사자인 제1 장치는 메인 스케줄링 당사자인 제2 장치에 의해 선택된 전송 경로를 사용하여 패킷을 전송할 수 있어서, 제1 장치 및 제2 장치는 동일한 전송 경로를 사용하여 패킷을 전송한다. 이를 통해 복잡한 SD-WAN 경로 선택 시나리오에서도 서비스 품질을 보장하면서 두 통신 당사자 간의 양방향 패킷 전송에 동일한 경로를 사용할 수 있다.
가능한 설계에서, 제1 패킷은 경로 버전 식별자를 더 포함하고, 경로 버전 식별자는 패킷 송신단에 의해 선택된 경로가 변경되었는지 여부를 식별하는 데 사용되며; 제1 장치에 의해, 제1 경로를 사용하여 제2 패킷을 제2 장치에 전송하는 단계 후에, 패킷 전송 방법이, 제1 장치에 의해, 제2 장치로부터 제3 패킷을 수신하는 단계 - 제3 패킷은 메인 스케줄링 식별자 및 경로 버전 식별자를 포함함 -; 제1 장치가 제3 패킷 내에 운반된 경로 버전 식별자가 제1 패킷 내에 운반된 경로 버전 식별자와 다르다고 결정하면, 제3 패킷을 전송하는 데 사용되는 제2 경로를 결정하는 단계; 및 제1 장치에 의해, 제2 경로를 사용하여 제4 패킷을 제2 장치에 전송하는 단계를 더 포함하고, 제4 패킷은 추종 식별자를 포함한다.
이 설계에 따르면, 추종 당사자인 제1 장치는 제2 장치로부터 제1 패킷을 수신한 후에 제2 장치로부터 제3 패킷을 수신한다. 제1 패킷에 사용된 전송 경로는 제2 장치가 제1 패킷을 전송할 때 제2 장치에 의해 선택된 전송 경로이고, 제3 패킷에 사용되는 전송 경로는 제2 장치가 제3 패킷을 전송할 때 제2 장치에 의해 선택된 전송 경로이다. 따라서, 메인 스케줄링 당사자인 제2 장치에 의해 선택된 경로에 변경이 있는지 여부는 제1 패킷에 사용된 전송 경로와 제3 패킷에 사용된 전송 경로를 비교함으로써 알 수 있다. 이 설계에서, 제1 패킷 및 제3 패킷에 각각 운반된 경로 버전 식별자가 동일한지를 비교를 통해 결정함으로써, 제1 장치는 제2 장치에 의해 선택된 전송 경로에 변경이 있는지 여부를 신속하게 결정할 수 있다. 제1 패킷 및 제3 패킷에 각각 운반된 경로 버전 식별자가 상이한 경우, 이는 제2 장치가 제3 패킷을 전송할 때 경로를 재선택했음을 나타낼 수 있다. 이 경우, 추종 당사자인 제1 장치는 또한 제2 장치에 의해 선택된 새로운 경로를 사용하여 패킷을 전송한다. 이러한 방식으로, 메인 스케줄링 당사자로서 역할을 하는 제2 장치가 전송 경로를 변경한 때, 여전히 동일한 경로가 2개의 통신 당사자 사이의 양방향 패킷 전송에 사용되는 것이 보장될 수 있다.
가능한 설계에서, 제1 장치가 제1 패킷을 전송하는 데 사용된 제1 경로를 결정하는 방식은 다음 방식을 포함할 수 있지만, 이에 제한되지는 않는다. 제1 장치는 제1 패킷으로부터 파싱을 통해 제1 경로를 획득하거나; 또는 제1 장치는 제1 대응관계 및 제1 패킷을 수신하는 데 사용되는 인터페이스 식별자에 기초하여, 제1 패킷을 수신하는 데 사용된 인터페이스 식별자에 대응하는 경로 정보를 결정하고, 결정된 경로 정보에 대응하는 경로를 제1 패킷을 송신하는 데 사용되는 제1 경로로서 사용하며, 제1 대응관계는 인터페이스 식별자와 경로 정보 사이의 대응관계를 포함한다.
가능한 설계에서, 제2 패킷은 역방향 혼잡 배압 식별자를 더 포함하고; 제1 장치가, 제2 장치로부터 제1 패킷을 수신한 후에, 제1 장치가, 제1 장치의 수신 방향의 경로가 혼잡한지 여부를 결정하고; 제1 장치의 수신 방향의 경로가 혼잡한 경우, 제2 패킷에 포함된 역방향 혼잡 배압 식별자를 제1 값으로 설정하거나, 제1 장치의 수신 방향의 경로가 혼잡하지 않은 경우, 제2 패킷에 포함된 역방향 혼잡 배압 식별자를 제2 값으로 설정한다.
이 설계에 따르면, 제1 장치는 전송된 제2 패킷에 역방향 혼잡 배압 식별자를 추가하여, 제1 장치는 제1 장치의 수신 방향이 혼잡한지 여부를 제2 장치에게 적시에 통지할 수 있다.
가능한 설계에서, 제2 패킷은 순방향 혼잡 배압 식별자를 더 포함할 수 있다. 제1 장치가 제1 경로를 사용하여 제2 장치에 제2 패킷을 전송하기 전에, 제1 장치가, 제1 장치의 송신 방향의 경로가 혼잡한지 여부를 결정하고; 제1 장치의 송신 방향의 경로가 혼잡한 경우, 제2 패킷에 포함된 순방향 혼잡 배압 식별자를 제1 값으로 설정하거나, 제1 장치의 송신 방향의 경로가 혼잡하지 않은 경우, 제2 패킷에 포함된 순방향 혼잡 배압 식별자를 제2 값으로 설정한다.
이 설계에 따르면, 제1 장치는 전송되는 제2 패킷에 순방향 혼잡 배압 식별자를 추가하여, 제1 장치가 제1 장치의 송신 방향이 혼잡한지 여부를 제2 장치에게 적시에 통지할 수 있다.
제1 장치와 제2 장치 사이에서 전송되는 임의의 패킷은 역방향 혼잡 배압 식별자 및 순방향 혼잡 배압 식별자 중 하나 또는 둘 모두를 운반할 수 있음을 이해해야 한다. 특정 구현에서, 2개의 식별자를 운반할지 여부는 특정 상황에 따라 다르며, 여기에 제한되지 않는다.
제2 측면에 따르면, 본 출원의 실시예는 패킷 전송 방법을 제공한다. 이 방법은, 제1 장치에 의해, 제2 장치로부터 제1 패킷을 수신하는 단계 - 제1 패킷은 추종 식별자를 포함하고, 추종 식별자는 제2 장치가 제2 장치 이외의 장치에 의해 선택된 전송 경로를 사용하여 패킷을 전송하는 것을 식별하기 위해 사용됨 -; 경로 선택 정책에 기초하여, 제1 장치에 의해, 제2 패킷을 전송하는 데 사용되는 제1 경로를 결정하는 단계; 제1 경로를 사용하여, 제1 장치에 의해, 제2 패킷을 제2 장치로 전송하는 단계 - 제2 패킷은 메인 스케줄링 식별자를 포함하고, 메인 스케줄링 식별자는 제1 장치가 경로를 선택할 권한이 있음을 식별하는 데 사용됨 -을 포함한다.
해결책에 기초하여, 메인 스케줄링 당사자인 제1 장치는 경로를 선택할 수 있는 권한을 가지며, 추종 당사자인 제2 장치는 제2 장치 이외의 장치에 의해 선택된 전송 경로를 사용하여 패킷을 전송할 수 있다. 제1 장치가 제2 장치로부터 제1 패킷을 수신할 때, 제1 장치는 경로 선택 정책에 따라, 제1 패킷에 사용된 전송 경로를 사용하여 제2 패킷을 전송하는 대신, 제2 패킷을 전송할 전송 경로를 선택한다. 구체적으로, 제2 장치가 제1 장치와 통신할 때, 메인 스케줄링 당사자인 제1 장치는 제1 장치에 의해 선택된 전송 경로를 사용하여 패킷을 전송하고, 추종 당사자인 제2 장치는, 제1 장치와 제2 장치가 동일한 전송 경로를 사용하여 패킷을 전송하도록, 메인 스케줄링 당사자로서 역할을 하는 제1 장치에 의해 선택된 전송 경로를 이용하여 패킷을 전송한다. 이러한 방식으로, 복잡한 SD-WAN 경로 선택 시나리오에서도 서비스 품질이 보장되는 동시에 두 통신 당사자 간의 양방향 패킷 전송에 동일한 경로가 사용되도록 보장할 수 있다.
가능한 설계에서, 제1 경로를 사용하여 제1 장치에 의해 제2 패킷을 제2 장치로 전송한 후에, 이 방법은, 제1 장치에 의해, 제2 장치로부터 제3 패킷을 수신하는 단계를 더 포함하고, 여기서 패킷은 추종 식별자를 포함하고, 제3 패킷의 전송 경로는 제1 경로이다.
이 설계에 따르면, 메인 스케줄링 당사자인 제1 장치는 제1 경로를 사용하여 제2 패킷을 전송한다. 메인 스케줄링 식별자를 운반하는 제2 패킷을 수신한 후, 추종 당사자로서 기능하는 제2 장치는 또한 제1 경로를 사용하여 다음 패킷을 전송한다. 구체적으로, 추종 당사자인 제2 장치는 메인 스케줄링 당사자인 제1 장치에 의해 선택된 전송 경로를 사용하여 패킷을 전송한다. 이를 통해 두 통신 당사자 간의 양방향 패킷 전송에 동일한 경로를 사용할 수 있다.
가능한 설계에서, 제1 패킷은 순방향 혼잡 배압 식별자 및/또는 역방향 혼잡 배압 식별자를 더 포함하고; 경로 선택 정책에 기초하여, 제1 장치에 의해, 제2 패킷을 전송하는 데 사용되는 제1 경로를 결정한 후, 이 방법은, 제1 패킷이 미리 설정된 조건을 만족하고, 제1 장치의 수신 방향의 경로 및 제1 장치의 송신 방향의 경로 중 어느 것도 혼잡하지 않으면, 제1 장치에 의해, 경로를 선택할 수 있는 권한을 포기하는 단계 - 미리 설정된 조건은, 제1 패킷에 포함된 순방향 혼잡 배압 식별자가 제1 값이고, 및/또는 제1 패킷에 포함된 역방향 혼잡 배압 식별자가 제1 값이며, 제1 값은 혼잡 발생을 나타내는 데 사용됨 -; 및 제1 장치에 의해, 제1 경로를 사용하여 제2 장치에 제4 패킷을 전송하는 단계 - 제4 패킷은 추종 식별자를 포함하고, 제4 패킷 내에 운반된 순방향 혼잡 배압 식별자 및 역방향 혼잡 배압 식별자는 모두 제2 값이며, 제2 값은 혼잡이 발생하지 않음을 나타내는 데 사용됨 -을 더 포함한다.
이 설계에 따르면, 메인 스케줄링 당사자인 제1 장치가 제2 장치로부터 제1 패킷을 수신한 후, 제1 패킷이 순방향 혼잡 배압 식별자를 포함하면, 제1 장치는 제1 패킷에 포함된 순방향 혼잡 배압 식별자의 값에 기초하여 제2 장치의 송신 방향의 경로가 혼잡인지 여부를 결정할 수 있고, 및/또는 제1 패킷이 역방향 혼잡 배압 식별자를 포함하는 경우, 제1 장치는 제1 패킷에 포함된 역방향 혼잡 배압 식별자의 값에 기초하여, 제2 장치의 수신 방향에서의 경로가 혼잡한지 여부를 결정할 수 있다. 또한, 제1 장치의 수신 방향으로의 경로 또는 제1 장치의 송신 방향으로의 경로 어느 것도 혼잡하지 않고, 제2 장치의 적어도 하나의 방향으로의 경로가 혼잡하지 않으면, 제1 장치는 경로 선택에 대한 권한을 포기하고, 후속하여 전송되는 제4 패킷에 추종 식별자를 추가하여 제2 장치에 통지함으로써, 제2 장치는 제1 장치가 경로를 선택할 수 있는 권한을 포기했고 제2 장치가 경로를 선택하는 권한을 획득할 수 있음을 알 수 있게 한다. 이러한 방식으로, 경로가 혼잡 한 제2 장치는 패킷을 전송할 경로를 선택할 수 있어, 제2 장치에 대한 연속 혼잡을 피할 수 있다.
가능한 설계에서, 제1 장치에 의해 제1 경로를 사용하여 제2 장치에 제4 패킷을 전송한 후에, 이 방법은 제1 장치에 의해 제2 장치로부터 제5 패킷을 수신하는 단계를 더 포함하고, 여기서 제5 패킷은 메인 스케줄링 식별자를 포함하고, 제5 패킷의 전송 경로는 경로 선택 정책에 따라 제2 장치에 의해 선택된 제4 경로이다.
이 설계에 따르면, 제1 장치가 경로를 선택할 수 있는 권한을 포기한 후, 제2 장치는 경로 선택 정책에 따라 전송 경로를 선택하는 메인 스케줄링 당사자로서 기능할 수 있다. 제2 장치는 제2 장치가 메인 스케줄링 당사자가 된다는 것, 즉 제2 장치는 경로를 선택할 수 있는 권한을 갖는다는 것을 제1 장치에게 통지하기 위해 제1 패킷에 메인 스케줄링 식별자를 추가한다. 이에 대응하여, 제1 장치는 제2 장치에 의해 선택된 전송 경로를 사용하여 패킷을 전송하는 추종 당사자로서 기능할 수 있다. 이러한 방식으로, 경로가 혼잡한 제2 장치는 전송 경로를 선택하여, 제2 장치에 대한 연속 혼잡을 피할 수 있다.
가능한 설계에서, 제1 패킷 및 제2 패킷은 각각 경로 버전 식별자를 더 포함하고, 경로 버전 식별자는 패킷 송신단에 의해 선택된 경로에 변경이 있는지를 식별하는 데 사용되며; 제1 장치에 의해, 제2 장치로부터 제1 패킷을 수신하는 단계 후, 그리고 경로 선택 정책에 기초하여, 제1 장치에 의해, 제2 패킷을 전송하는 데 사용되는 제1 경로를 결정하는 단계 전에, 패킷 전송 방법이, 제1 장치가 패킷을 전송하기 위해 사용된 전송 경로를 재선택하기로 결정하면, 제2 패킷에 포함된 경로 버전 식별자를 제3 값으로 설정하는 단계 - 제3 값은 제1 장치에 의해 선택된 경로가 변경됨을 나타내는 데 사용됨 -; 또는 제1 장치가 패킷을 전송하는 데 사용된 전송 경로를 변경하지 않기로 결정하면, 제2 패킷에 포함된 경로 버전 식별자를 제4 값으로 설정하는 단계 - 제4 값은 제1 장치에 의해 선택된 경로가 변경되지 않음을 나타내는 데 사용됨-;를 더 포함한다.
이 설계에 따르면, 제1 패킷을 전송한 후, 메인 스케줄링 당사자인 제1 장치가 패킷을 전송하는 데 사용된 전송 경로를 재선택해야 하는 경우, 제1 장치는 제2 패킷에 값을 갖는 경로 버전 식별자를 추가함으로써 제2 장치가, 적시에, 제1 장치에 의해 선택된 전송 경로에 변경이 있음을 알 수 있게 하거나; 또는 제2 패킷에 그 값이 제1 패킷에 대응하는 값과 같은 경로 버전 식별자를 추가함으로써 제2 장치가 적시에, 제1 장치에 의해 선택된 전송 경로에 변경이 없음을 알 수 있게 한다.
가능한 설계에서, 제2 장치로부터 제1 패킷을 수신하기 전에, 제1 장치는 제어기에 의해 전달된 메인-서브 선택 정책을 더 수신할 수 있고, 제1 장치는 메인-서브 선택 정책에 기초하여, 제1 장치가 경로를 선택할 권한이 있는지를 결정한다. 메인-서브 선택 정책은 다음 정책 중 하나 이상을 포함하지만 이에 제한되지는 않는다: 제1 장치 및 제2 장치에서, 링크 대역폭이 더 작은 장치는 경로를 선택할 수 있는 권한을 가지며; (1) 제1 장치 및 제2 장치 중, 링크 대역폭이 더 작은 장치가 경로를 선택할 수 있는 권한을 가지는 것; (2) 제1 장치 및 제2 장치 중, 분기 라우터 스포크로서 기능하는 장치가 경로를 선택할 수 있는 권한을 가지며, 허브로서 기능하는 장치는 스포크로서 기능하는 장치에 의해 선택된 경로를 따르는 권한을 가지는 것; (3) 제1 장치의 식별자와 스케줄링 허가 사이의 대응관계 및 제2 장치의 식별자와 스케줄링 허가 사이의 대응관계; 및 (4) 제1 장치의 시스템 IP 주소와 스케줄링 허가 사이의 대응관계 및 제2 장치의 시스템 IP 주소와 스케줄링 허가 사이의 대응관계. ;
이 설계에 따르면, 제1 장치가 제2 장치와 통신할 때, 제1 장치는 복수의 시나리오에서, 2개의 통신 당사자 각각의 스케줄링 허가가 메인 스케줄링 당사자인지 또는 후속 당사자인지를 효과적으로 결정할 수 있다.
제3 측면에 따르면, 본 출원의 실시예는 패킷 전송 장치를 제공한다. 이 장치는 제1 측면 또는 제1 측면의 가능한 설계 중 어느 하나에서의 제1 장치를 구현하는 기능을 갖는다. 이 기능은 하드웨어로 구현되거나, 해당 소프트웨어를 실행하여 하드웨어로 구현될 수 있다. 하드웨어 또는 소프트웨어는 기능에 대응하는 하나 이상의 모듈을 포함한다.
가능한 설계에서, 본 장치의 구조는 처리 모듈 및 송수신기 모듈을 포함한다. 처리 모듈은 제1 측면 또는 제1 측면의 설계 중 어느 하나에서 대응하는 방법 단계들을 수행함에 있어서 본 장치를 지원하도록 구성된다. 송수신기 모듈은 본 장치와 다른 통신 장치 사이의 통신을 지원하도록 구성된다. 본 장치는 저장 모듈을 더 포함할 수 있다. 저장 모듈은 처리 모듈에 연결되고, 장치에 필요한 프로그램 명령 및 데이터를 저장한다. 일 예에서, 처리 모듈은 프로세서일 수 있고, 송수신기 모듈은 송수신기 또는 통신 인터페이스일 수 있고, 저장 모듈은 메모리일 수 있다.
제4 측면에 따르면, 본 출원의 실시예는 컴퓨터 판독 가능 저장 매체를 제공한다. 컴퓨터 저장 매체는 컴퓨터 판독 가능 명령어를 저장하고, 컴퓨터가 컴퓨터 판독 가능 명령어를 읽고 실행하는 경우, 컴퓨터는 제1 측면 또는 제1 측면의 가능한 설계 중 어느 하나에 따른 방법을 수행할 수 있다.
제5 측면에 따르면, 본 출원의 실시예는 컴퓨터 프로그램 제품을 제공하고, 컴퓨터가 컴퓨터 프로그램 제품을 읽고 실행하는 경우, 컴퓨터는 제1 측면 또는 제1 측면의 가능한 설계 중 어느 하나를 수행할 수 있다.
제6 측면에 따르면, 본 출원의 실시예는 칩을 제공한다. 칩은 메모리에 연결되고, 메모리에 저장된 소프트웨어 프로그램을 판독 및 실행하여, 제1 측면 또는 제1 측면의 가능한 설계 중 어느 하나에 따른 방법을 구현하도록 구성된다.
제7 측면에 따르면, 본 출원의 실시예는 패킷 전송 장치를 제공한다. 본 장치는 제2 측면 또는 제2 측면의 가능한 설계 중 어느 하나에 따라 제1 장치를 구현하는 기능을 갖는다. 이 기능은 하드웨어로 구현되거나, 해당 소프트웨어를 실행하여 하드웨어로 구현될 수 있다. 하드웨어 또는 소프트웨어는 기능에 대응하는 하나 이상의 모듈을 포함한다.
가능한 설계에서, 본 장치의 구조는 처리 모듈 및 송수신기 모듈을 포함한다. 처리 모듈은 제2 측면 또는 제2 측면의 설계들 중 어느 하나에서 대응하는 방법 단계들을 수행함에 있어서 본 장치를 지원하도록 구성된다. 송수신기 모듈은 본 장치와 다른 통신 장치 사이의 통신을 지원하도록 구성된다. 본 장치는 저장 모듈을 더 포함할 수 있다. 저장 모듈은 처리 모듈에 연결되고, 장치에 필요한 프로그램 명령 및 데이터를 저장한다. 일 예에서, 처리 모듈은 프로세서일 수 있고, 통신 모듈은 송수신기 또는 통신 인터페이스일 수 있고, 저장 모듈은 메모리일 수 있다.
제8 측면에 따르면, 본 출원의 실시예는 컴퓨터 판독 가능 저장 매체를 제공한다. 컴퓨터 저장 매체는 컴퓨터 판독 가능 명령어를 저장하고, 컴퓨터가 컴퓨터 판독 가능 명령어를 읽고 실행하는 경우, 컴퓨터는 제2 측면 또는 제2 측면의 가능한 설계 중 어느 하나에 따른 방법을 수행할 수 있다.
제9 측면에 따르면, 본 출원의 실시예는 컴퓨터 프로그램 제품을 제공하고, 컴퓨터가 컴퓨터 프로그램 제품을 읽고 실행하는 경우, 컴퓨터는 제2 측면 또는 제2 측면의 가능한 설계 중 어느 하나 를 수행할 수 있다.
제10 측면에 따르면, 본 출원의 실시예는 칩을 제공한다. 칩은 메모리에 연결되고, 메모리에 저장된 소프트웨어 프로그램을 판독 및 실행하여, 제2 측면 또는 제2 측면의 가능한 설계 중 어느 하나에 따른 방법을 구현하도록 구성된다.
제11 측면에 따르면, 본 출원의 실시예는 통신 시스템을 제공한다. 통신 시스템은 제1 사이트 장치 및 제2 사이트 장치를 포함한다. 제1 사이트 장치는 제1 측면 또는 제1 측면의 가능한 설계 중 어느 하나에 따라 제1 장치에 의해 수행되는 방법을 수행하도록 구성될 수 있고, 제2 사이트 장치는 제1 장치에 의해 수행되는 방법을 수행하도록 구성될 수 있다. 제2 측면 또는 제2 측면의 가능한 설계 중 어느 하나에 따라 제2 장치에 의해 수행되는 방법을 수행하도록 구성될 수 있다.
도 1은 간단한 시나리오에서 경로의 개략도이다.
도 2는 본 출원의 실시예에 따른 네트워크 아키텍처의 가능한 개략도이다.
도 3은 본 출원의 실시예가 적용될 수 있는 복잡한 시나리오에서의 경로의 개략도이다.
도 4는 본 출원의 실시예에 따른 장치의 개략적인 구조도이다.
도 5는 본 출원의 실시예에 따른 패킷 전송 방법의 개략적인 흐름도이다.
도 6은 본 출원의 실시예에 따른 패킷 캡슐화 포맷의 개략도이다.
도 7은 본 출원의 실시예에 따른 다른 패킷 캡슐화 포맷의 개략도이다.
도 8은 본 출원의 실시예에 따른 다른 패킷 전송 방법의 개략적인 흐름도이다.
도 9a 및 도 9b는 본 출원의 실시예에 따른 다른 패킷 전송 방법의 개략적인 흐름도이다.
도 10은 본 출원의 실시예에 따른 패킷 전송 장치의 개략적인 구조도이다.
도 11은 본 출원의 실시예에 따른 다른 패킷 송신 장치의 개략적인 구조도이다.
본 출원의 설명에서, 달리 언급되지 않는 한, "복수의"는 둘 이상을 의미한다. 본 출원의 설명에서, "제1" 및 "제2"와 같은 용어는 단지 구별 및 설명을 위해 사용되며, 상대적 중요성의 지시 또는 의미, 또는 순서의 지시 또는 의미로 이해되지 않아야 한다.
도 2는 본 출원의 실시예가 적용될 수 있는 통신 시스템 아키텍처의 개략도이다. 통신 시스템 아키텍처는 복수의 장치(사이트라고도 함) 및 복수의 클라이언트, 예를 들어 도 2에 도시된 장치(110), 장치(120) 및 장치(130)를 포함한다. 장치(110), 장치(120) 및 장치(130) 중 임의의 두 개는 연결될 수 있다. 도 2는 단지 예시로서 장치(110)와 장치(120) 사이의 연결 관계를 도시한다.
장치(110), 장치(120) 및 장치(130) 각각은 하나 이상의 클라이언트에 연결될 수 있다. 도 2는 단지 예로서, 장치(110)에 연결된 클라이언트(111) 및 클라이언트(112), 장치(120)에 연결된 클라이언트(121) 및 클라이언트(122) 및 장치(130)에 연결된 클라이언트(131)를 도시한다.
2개의 통신 당사자로서 기능하는 2개의 클라이언트 사이에서 패킷이 전송될 때, 2개의 통신 당사자로서 기능하는 클라이언트에 각각 연결된 장치에 의해 패킷이 전달될 필요가 있다. 두 통신 당사자가 클라이언트(111) 및 클라이언트(121) 인 예를 사용하여, 클라이언트(111)가 클라이언트(121)에게 패킷 A를 전송해야 할 때, 패킷 A가 전송되는 경로는 다음과 같다: 클라이언트(111) -> 장치(110) -> 장치(120) -> 클라이언트(121). 그리고 클라이언트(121)가 클라이언트(111)에게 패킷 B를 보내야할 때, 패킷 B가 전송되는 경로는 다음과 같다: 클라이언트(121) ->장치(120) -> 장치(110) ->클라이언트(111).
장치(110)와 장치(120) 사이에는 복수의 전송 경로가 있을 수 있다. 장치(110)와 장치(120) 사이에 MPLS 1 링크 및 MPLS 2 링크가 있는 예가 사용된다. 도 3에 도시된 바와 같이, 장치(110)와 장치(120) 사이에는 4개의 경로가 존재한다. 경로 1은 서로 반대 방향인 경로 1-1 및 경로 1-2를 포함하며, 여기서 경로 1-1은 장치(110)에 있는 MPLS 1에 연결된 인터페이스로부터 장치(120)에 있고 MPLS 1에 연결된 인터페이스로 향하는 방향이고, 경로 1-2는 장치(120)에 있는 MPLS 1에 연결된 인터페이스로부터 장치(110)에 있는 MPLS 1에 연결된 인터페이스로 향하는 방향이다. 경로 2는 서로 반대 방향인 경로 2-1 및 경로 2-2를 포함하며, 여기서 경로 2-1은 장치(110)에 있는 MPLS 1에 연결된 인터페이스로부터 장치(120)에 있는 MPLS 2에 연결된 인터페이스로 향하는 방향이다. 경로 3은 경로 3-1 및 경로 3-2를 포함하며, 여기서 경로 3-1은 장치(110)에 있는 MPLS 2에 연결된 인터페이스로부터 장치(120)에 있는 MPLS 1에 연결된 인터페이스로 향하는 방향이다. 경로 4는 서로 반대 방향인 경로 4-1 및 경로 4-2를 포함하며, 여기서 경로 4-1는 장치(110)에 있는 MPLS 2에 연결된 인터페이스로부터 장치(120)에 있는 MPLS 2에 연결된 인터페이스로 향하는 방향이다.
장치(110)의 관점에서, 경로 선택 정책은 경로 선택 시퀀스가 경로 1->경로 2 ->경로 3 ->경로 4라는 것이다. 장치(120)의 관점에서, 경로 선택 정책은 경로 선택 시퀀스가 경로 1->경로 3 ->경로 2 ->경로 4라는 것이다. 장치(110)와 장치(120) 사이에서 패킷이 전송될 때, 장치(110)는 패킷을 전송할 경로 1을 우선적으로 선택하고, 장치(120)는 또한 패킷을 전송할 경로 1을 우선적으로 선택한다. 경로 1의 품질이 요구 사항을 충족하지 않는 경우, 장치(110)는 패킷을 전송할 경로 2를 선택하고, 장치(120)는 패킷을 전송할 경로 3을 선택한다. 결과적으로, 장치(110)와 장치(120)는 서로 다른 경로를 사용하여 패킷을 서로에게 전송한다.
장치(110)와 장치(120)가 도 3에 도시된 시나리오에서 서로 다른 경로를 사용하여 서로 패킷을 송신할 수 있는 문제 외에도, 많은 복잡한 SD-WAN 경로 선택 시나리오에서, 동일한 경로가 두 통신 당사자 간의 양방향 패킷 전송에 사용된다 것을 보장하는 것은 어렵다.
복잡한 SD-WAN 경로 선택 시나리오에서 서비스 품질을 보장하면서 두 통신 당사자 간의 양방향 패킷 전송에 동일한 경로가 사용되는 것을 보장하기 위해, 본 출원의 실시예는 패킷 전송 방법을 제공한다. 2개의 통신 당사자들에 연결된 장치들은 메인 스케줄링 당사자 및 추종 당사자이며, 메인 스케줄링 당사자로서 역할을 하는 장치는 경로를 선택할 수 있는 권한을 가지며, 추종 당사자로서 역할을 하는 장치는 메일 스케줄링 당사자로서 역할을 하는 장치에 의해 선택된 경로를 사용하여 패킷을 전송한다.
특정 구현에서, 장치(110)는 메인 스케줄링 당사자로서 기능하거나 서브 스케줄링 당사자(즉, 추종 당사자)로서 기능할 수 있다. 예를 들어, 장치(110)가 장치(120)와 통신할 때, 장치(110)는 메인 스케줄링 당사자로서 기능하고, 장치(120)는 추종 당사자로서 기능한다. 구체적인 통신 프로세스에 대해서는, 도 5에 도시된 이하의 방법 절차를 참조할 수 있다. 다른 예를 들어, 장치(110)가 장치(130)와 통신할 때, 장치(130)는 메인 스케줄링 당사자로서 역할을 하고, 장치(110)는 추종 당사자로서 기능한다. 구체적인 통신 프로세스에 대해서는, 도 8에 표시된 방법 절차를 참조할 수 있다.
도 2에서, 통신 시스템 아키텍처는 제어기(140)를 더 포함한다. 제어기(140)는 장치(110), 장치(120) 및 장치(130)와 개별로 연결된다. 제어기(140)는 경로 선택 정책 및 메인-서브 선택 정책을 포함하지만 이에 제한되지 않는 다양한 유형의 정책 정보를 장치(110), 장치(120) 및 장치(130)로 전달할 수 있다.
도 2에 기초하여, 도 4는 본 출원의 실시예가 적용될 수 있는 장치(400)의 가능한 개략적인 구조도이다.
도 4를 참조하면, 장치(400)는 도 2에 도시된 장치(110), 장치(120) 및 장치(130) 중 어느 하나일 수 있다. 장치(400)는 사이트 연결 관리 모듈, 링크 품질 검출 모듈, 스마트 정책 라우팅(Smart Policy Routing, SPR) 모듈, 제1 전달 모듈 및 제2 전달 모듈을 포함할 수 있다.
사이트 연결 관리 모듈은: 장치(400)와 다른 장치 사이에 링크를 구축하고; 장치(400)의 WAN 측에 연결된 물리적 인터페이스에 대한 정보에 기초하여, 장치(400)와 장치(400)에 연결된 다른 장치 사이의 연결(이하, 링크 또는 경로로 지칭됨) 정보를 구축하고; 연결 정보를 제1 전달 모듈로 전송하고; 링크 품질 검출 모듈에 통지하여 각 경로의 품질을 검출하도록 구성된다.
링크 품질 검출 모듈은 장치(400)와 장치(400)에 연결된 다른 장치 사이의 경로의 품질을 검출하도록 구성된다. 예를 들어, 장치(400)는 장치(410)에 연결되며, 장치(400)와 장치(410) 사이에는 4개의 경로가 존재한다. 이 경우, 링크 품질 검출 모듈은 4개의 경로의 품질을 검출할 필요가 있다. 그리고 링크 품질 검출 모듈은 각 경로의 품질 검출 결과를 사이트 연결 관리 모듈에 전송한다.
SPR 모듈은 애플리케이션의 링크 품질 요구 사항 및 링크의 SLA(Service Level Agreement) 정보를 기반으로 경로 선택 정책을 새로 고친다(refresh). 구체적으로, SPR 모듈은 링크 품질 요구 사항을 충족시키는 경로 선택 정책을 저장하고, 링크 품질 요구 사항을 충족시키지 않는 경로 선택 정책을 삭제한다. 예를 들어 지연 조건을 충족하지 않는 경로 선택 정책을 삭제하거나 패킷 손실, 그리고 링크 품질 요건을 만족하는 경로 선택 정책을 제2 전달 모듈로 전달한다. 예를 들어, 경로 선택 정책은 음성 서비스에 대응하는 애플리케이션에 대해 MPLS 링크가 우선적으로 선택되고 인터넷(Internet, INET) 링크가 두 번째로 선택되는 것이다.
제1 전달 모듈은 사이트 연결 관리 모듈에 의해 전달되는 연결 테이블을 수신하도록 구성되며, 연결 테이블은 다양한 애플리케이션에 대응하는 특정 경로를 포함한다. 예를 들어, 음성 서비스가 속하는 응용 프로그램은 MPLS 1 링크, MPLS 2 링크 또는 INET 링크에 대응한다.
제2 전달 모듈은 SPR 모듈에 의해 전달된 정책 업데이트 정보를 수신하도록 구성된다. 예를 들어, 정책 1은 음성 서비스가 속하는 애플리케이션에 대해 MPLS 링크가 우선적으로 선택되는 것을 포함하고, 정책 1은 데이터 서비스가 속하는 애플리케이션에 대해 INET 링크가 우선적으로 선택되는 것을 포함한다.
장치(400)가 패킷을 수신한 후, 제2 전달 모듈은 패킷이 속하는 애플리케이션에 대응하는 정책을 결정한 다음, 정책에 기초하여, 패킷이 속하는 애플리케이션에 대응하는 특정 경로에 대한 연결 테이블을 검색한다.
도 2에 도시된 장치(110), 장치(120) 및 장치(130) 중 어느 하나는 도 4에 도시된 모듈을 포함할 수 있지만, 이에 제한되지는 않는다.
다음은 본 출원의 실시예들에서 제공되는 패킷 전송 방법을 상세히 설명한다.
실시 형태 1
도 5는 본 출원에 따른 서비스 흐름 처리 방법의 개략적인 흐름도이다. 도 5에 도시된 바와 같이, 이 방법은 다음 단계를 포함할 수 있다.
단계 501: 제2 장치는 제1 패킷을 제1 장치로 전송하는데, 여기서 제1 패킷은 메인 스케줄링 식별자를 포함하고, 메인 스케줄링 식별자는 제2 장치가 경로를 선택할 권한을 가졌음을 식별하는 데 사용된다.
단계 502: 제1 장치는 제2 장치로부터 제1 패킷을 수신하고, 제1 패킷을 전송하는 데 사용되는 제1 경로를 결정한다.
단계 503: 제1 장치는 제1 경로를 사용하여 제2 패킷을 제2 장치로 전송하며, 여기서 제2 패킷은 추종 식별자를 포함하고, 추종 식별자는 제1 장치 이외의 장치에 의해 선택된 전송 경로를 사용하여 제1 장치가 패킷을 전송하는 것을 식별하는 데 사용된다.
본 출원의 본 실시예에서, 메인 스케줄링 당사자인 제2 장치는 경로를 선택할 수 있는 권한을 가지며, 추종 당사자인 제1 장치는 제1 장치 이외의 장치에 의해 선택된 전송 경로를 사용하여 패킷을 전송할 수 있다. 구체적으로, 제2 장치가 제1 장치와 통신할 때, 추종 당사자인 제1 장치는 메인 스케줄링 당사자인 제2 장치에 의해 선택된 전송 경로를 사용하여 패킷을 전송할 수 있으므로, 제1 장치 및 제2 장치는 동일한 전송 경로를 사용하여 패킷을 전송할 수 있다. 이를 통해 복잡한 SD-WAN 경로 선택 시나리오에서도 서비스 품질을 보장하면서 두 통신 당사자 간의 양방향 패킷 전송에 동일한 경로를 사용할 수 있다.
구체적으로, 본 출원의 본 실시예에서, 단계 501가 수행되기 전에, 제2 장치는 먼저 제어기에 의해 전달된 메인-서브 선택 정책을 수신한 다음, 메인-서브 선택 정책에 기초하여, 통신 피어 엔드로서 기능하는 제1 장치 및 제2 장치 중에, 제2 장치가 특정적으로 경로를 선택할 수 있는 권한을 가지며, 제2 장치가 메인 스케줄링 당사자이고, 제1 장치는 추종 당사자인 것으로 결정한다. 대안적으로, 제1 장치가 제어기에 의해 전달된 메인-서브 선택 정책을 수신 한 다음, 메인-서브 선택 정책에 기초하여, 통신 피어 엔드로서 기능하는 제1 장치 및 제2 장치 중에, 제2 장치가 메인 스케줄링 당사자이고, 제1 장치가 추종 당사자인 것으로 결정한다. 따라서, 제2 장치가 제1 장치와 통신할 때, 제2 장치는 패킷을 전송하는 데 사용할 경로를 선택하고, 메인 스케줄링 식별자를 전송되는 패킷에 추가한다. 제1 장치는 제2 장치에 의해 선택된 경로를 사용하여 패킷을 전송하고, 서브 스케줄링 식별자를 전송되는 패킷에 추가한다.
확실히, 단계 501가 수행되기 전에, 대안적으로, 제1 장치와 제2 장치 사이에서 전송된 첫 번째 패킷의 송신단이 두 통신 당사자 중 어느 것이 경로를 선택할 수 있는 권한을 갖는지를 결정할 수 있다. 그리고 첫 번째 패킷의 송신단은 결정된 결과를 송신되는 첫 번째 패킷에 추가한다. 단계 501에서의 제1 패킷은 두 통신 당사자들 사이에서 전송되는 첫 번째 패킷일 수도 있고, 또는 두 통신 당사자들 사이에서 전송된 첫 번째 패킷이 아닐 수도 있음에 유의해야 한다. 제1 패킷이 2개의 통신 당사자들 사이에서 전송된 첫 번째 패킷이 아닌 경우, 이는 제1 패킷이 전송되기 전에 2개의 통신 당사자들 사이에서 적어도 하나의 패킷이 전송됨을 나타낸다.
예를 들어, 제2 장치에 의해 전송된 제1 패킷이 두 통신 당사자 사이에 전송된 첫 번째 패킷이다. 제1 패킷을 전송하기 전에 제2 장치는 메인-서브 선택 정책에 따라 제2 장치가 경로를 선택할 권한이 있는지 확인하면 된다. 그 후, 제1 패킷을 수신한 후, 제1 장치는 제1 패킷에 운반된 메인 스케줄링 식별자에 기초하여, 제2 장치가 메인 스케줄링 당사자고 제1 장치는 추종 당사자인 것을 결정할 수 있다. 그리고 제1 장치는 제1 패킷에 사용된 전송 경로를 사용하여 제2 패킷을 직접 전송할 수 있다.
예를 들어, 제2 장치가 제1 패킷을 전송하기 전에, 제1 장치는 두 장치(제1 장치 및 제2 장치) 사이에서 전송된 첫 번째 패킷을 제2 장치로 이미 전송했다. 이 경우, 첫 번째 패킷을 전송하기 전에, 제1 장치는 먼저 제1 장치가 추종 당사자고 제2 장치가 메인 스케줄링 당사자인 것으로 결정한 후, 제1 장치는 추종 식별자를 첫 번째 패킷에 추가한다.
제2 장치는 첫 번째 패킷을 수신하고, 첫 번째 패킷이 추종 식별자를 운반한다고 결정한다. 이 경우, 제2 장치는 제1 장치가 추종 당사자고 제2 장치가 메인 스케줄링 당사자인 것으로 결정할 수 있다. 따라서, 제2 장치는 어느 경로가 첫 번째 패킷을 전송하기 위해 제1 장치에 의해 사용되었는지를 고려하지 않고, 제1 패킷을 전송할 제1 경로를 자율적으로 선택한다.
전술한 내용에서 언급된 메인-서브 선택 정책은 다음 중 하나 이상을 포함할 수 있다.
제1 정책: 제1 장치와 제2 장치에서 더 작은 링크 대역폭을 가진 장치가 경로를 선택할 수 있는 권한을 가진다. 제1 정책에 기초하여, 더 작은 링크 대역폭을 갖는 장치는 경로를 선택하기 위한 메인 스케줄링 당사자로서 기능할 수 있다. 따라서, 메인 스케줄링 당사자인 장치는 제1 장치 및 제2 장치의 링크 대역폭에 기초하여 적절히 결정될 수 있어서, 링크 대역폭이 더 큰 장치가 경로를 선택할 때 링크가 더 작은 장치에 대해 혼잡이 발생하는 문제를 피할 수 있다.
제2 정책: 제1 장치와 제2 장치에서 브랜치 라우터 스포크(branch router spoke) 역할을 하는 장치는 경로를 선택할 수 있는 권한이 있으며, 허브(hub) 역할을 하는 장치는 스포크 역할을 하는 장치가 선택한 경로를 따른다. 제2 정책에 기초하여, 브랜치 라우터 스포크로서 기능하는 장치는 경로를 선택하기 위한 메인 스케줄링 당사자로서 역할을 할 수 있어서, 허브로서 기능하는 장치가 메인 스케줄링 당사자로서 경로를 선택할 때 혼잡을 초래하는 문제를 피할 수 있다 분기 라우터 스포크 역할을 하는 장치에서 발생한다.
제3 정책: 제1 장치의 식별자와 스케줄링 허가 사이의 대응관계 및 제2 장치의 식별자와 스케줄링 허가 사이의 대응관계가 사용된다. 예를 들어, 제1 장치의 식별자는 ID 1이고 제2 장치의 식별자는 ID 2이다. 제3 정책은 ID 1에 대응하는 장치가 메인 스케줄링 당사자고 ID 2에 대응하는 장치는 추종 당사자인 것으로 가정한다. 이를 기초로, 제1 장치가 경로를 선택할 수 있는 권한을 갖는 것으로 쉽게 결정될 수 있다.
제4 정책: 제1 장치의 시스템 IP 주소와 스케줄링 허가 사이의 대응관계 및 제2 장치의 시스템 IP 주소와 스케줄링 허가 사이의 대응관계가 사용된다. 예를 들어, 제1 장치의 식별자는 시스템 IP 주소 10.10.10.14이고 제2 장치의 식별자는 시스템 IP 주소 10.10.12.16이다. 제4 정책은 시스템 IP 주소 10.10.10.14에 대응하는 장치가 메인 스케줄링 당사자고 시스템 IP 주소 10.10.12.16에 대응하는 장치는 추종 당사자인 것으로 가정한다. 이를 기초로, 제1 장치가 경로를 선택할 수 있는 권한을 갖는 것으로 쉽게 결정될 수 있다.
메인-서브 선택 정책은 전술한 4가지 정책을 포함할 수 있지만 이에 제한되지 않는다는 것을 이해해야 한다. 메인-서브 선택 정책이 복수의 정책의 조합을 포함하는 경우, 복수의 정책에 기초하여 결정된 결과가 충돌할 수 있다. 메인-서브 선택 정책이 제2 정책, 제3 정책 및 제4 정책을 포함하는 예가 사용된다. 제2 정책에 기초하여 결정된 결과 및 제4 정책에 기초하여 결정된 결과는 제1 장치가 경로를 선택할 수 있는 권한을 갖는 것이고, 제3 정책에 기초하여 결정된 결과는 제2 장치가 경로 선택을 위한 권한을 갖는 것이다. 즉, 제3 정책에 기초하여 결정된 결과는 제2 정책 및 제4 정책에 기초하여 결정된 결과와 충돌한다. 이 경우 최종적으로 어떤 결과를 사용해야 하는지 결정될 수 없다.
복수의 정책에 기초하여 결정된 결과가 충돌하는 경우를 피하기 위해, 우선순위 시퀀스는 메인-서브 선택 정책에 포함된 정책에 대해 설정될 수 있다. 예를 들어 우선순위 순서는 제1 정책, 제2 정책, 제4 정책 및 제3 정책의 내림순이다. 메인-서브 선택 정책이 제2 정책, 제3 정책 및 제4 정책을 포함하는 예를 다시 사용한다. 경로를 선택할 권한이 있는 장치는 먼저 제2 정책에 따라 결정된다. 예를 들어, 제1 장치 및 제2 장치 중 어느 것이 브랜치 라우터 스포크로서 기능하고 허브 장치로서 기능하는지를 결정할 수 없는 경우, 경로를 선택할 수 있는 권한을 갖는 장치는 제2 정책에 기초하여 결정될 수 없다. 그러면, 경로를 선택할 권한이 있는 장치는 제4 정책에 기초하여 결정된다. 경로를 선택할 수 있는 권한이 있는 장치가 제4 정책에 기초하여 결정될 수 있다면, 제4 정책에 기초하여 결정된 결과가 사용되며, 제3 정책에 기초하여 어떤 장치가 경로를 선택할 권한이 있는지 결정할 필요가 없다. 우선순위 순서는 특정 구현 시나리오에 기초하여 설정될 수 있고, 구현 시나리오의 변경에 따라 변경될 수 있음에 유의해야 한다. 이것은 여기에서 제한되지 않는다.
단계 502의 특정 구현에서, 제1 장치가 첫 번째 패킷을 전송하는 데 사용된 제1 경로를 결정하는 방식은 다음 방식 중 어느 하나를 포함할 수 있지만 이에 제한되지는 않는다.
방법 1: 제1 패킷은 경로 정보를 전달하고, 제1 장치는 제1 패킷으로부터 파싱을 통해 경로 정보를 획득한 후, 경로 정보에 대응하는 경로, 즉 첫 번째 패킷을 전송하는 데 사용되는 제1 경로를 결정한다.
방법 2: 제1 대응관계는 제1 장치에서 구성되며, 인터페이스 식별자와 경로 정보 사이의 대응관계를 포함한다. 제1 장치는, 제1 대응관계, 및 제1 패킷을 수신하기 위해 사용되는 인터페이스 식별자에 기초하여, 제1 패킷을 수신하는 데 사용되는 인터페이스 식별자에 대응하는 경로 정보를 결정하고, 결정된 경로 정보에 대응하는 경로를 첫 번째 패킷을 전송하는 데 사용되는 제1 경로로서 사용할 수 있다.
선택적으로, 제1 패킷을 전송하는 데 사용된 제1 경로는 메인 스케줄링 당사자로서 기능하는 제2 장치에 의해 선택된다. 또한, 메인 스케줄링 당사자인 제2 장치는 경로 선택 정책에 따라 제1 경로를 선택할 수 있다.
예를 들어, 제1 장치와 제2 장치 사이에는 2개의 경로가 있으며, 2개의 경로는 MPLS 경로와 인터넷 경로이다. 제2 장치는 경로 선택 정책 1 및 경로 선택 정책 2를 저장한다. 경로 선택 정책 1은 음성 서비스가 속하는 애플리케이션에 대해 MPLS 경로가 우선적으로 선택됨을 나타내고, 경로 선택 정책 2는 데이터 서비스가 속하는 애플리케이션에 대해 인터넷 경로가 우선적으로 선택됨을 나타낸다. 제2 장치에 연결된 전화기(A)가 제1 장치에 연결된 전화기(B)와 통신하는 경우, 전화기(A)와 전화기(B) 사이에 음성 서비스가 전송되고 높은 통신 품질이 요구되므로, 제2 장치는 경로 선택 정책 1, 즉 MPLS 경로를 우선적으로 선택한다.
제2 장치는 메인 스케줄링 당사자로서 기능하고 제1 장치는 추종 당사자로서 기능한다. 제1 장치는 제2 장치에 의해 전송된 2개의 패킷을 수신하기 위해 동일한 전송 경로 또는 상이한 전송 경로를 사용할 수 있다. 선택적인 구현에서, 단계 503 이후에, 제2 장치는 제3 패킷을 제1 장치에 더 전송할 수 있고, 여기서 제3 패킷은 메인 스케줄링 식별자를 포함한다. 제1 장치가 제1 패킷을 수신하는 단계 502를 참조하여 설명이 제공된다. 제3 패킷에 사용된 전송 경로가 제1 패킷에 사용된 전송 경로와 다른 경우, 추종 당사자로서 기능하는 제1 장치가 제3 패킷을 수신한 후 패킷을 전송해야 하는 경우, 제1 장치는 제3 패킷에 사용된 전송 경로를 사용하여 다음 패킷을 전송한다.
가능한 구현에서, 제1 장치는 제1 장치가 제2 장치로부터 패킷을 수신할 때마다 수신된 패킷의 전송 경로를 결정할 수 있으므로, 제1 장치는 패킷을 수신한 후 수신된 패킷의 전송 경로를 이용하여 다음 패킷을 전송할 수 있다. 이것은 다음과 같이 이해될 수 있다: 제1 장치가 제1 패킷을 수신할 때, 제1 장치는 제1 패킷을 전송하는 데 사용된 전송 경로를 결정하고; 그리고, 제1 장치가 제3 패킷을 수신할 때, 제1 장치는 제3 패킷을 전송하는 데 사용된 전송 경로를 결정한다.
다른 가능한 구현에서, 제1 패킷 및 제3 패킷 각각은 경로 버전 식별자를 더 포함할 수 있고, 경로 버전 식별자는 패킷 송신단에 의해 선택된 경로가 변경되는지를 식별하는 데 사용된다. 제1 장치가 제3 패킷으로 운반된 경로 버전 식별자가 제1 패킷으로 운반된 경로 버전 식별자와 다르다고 결정하면, 제2 장치가 제3 패킷을 전송하기 전에 전송 경로를 다시 선택한다는 것을 나타낼 수 있다. 이 경우, 제1 장치는 제3 패킷을 전송하는 데 사용된 제2 경로를 결정한 다음, 제2 경로를 이용하여 제2 장치에 제4 패킷을 전송할 수 있으며, 여기서 제4 패킷은 추종 식별자를 포함한다.
추종 당사자인 제1 장치는 제2 장치로부터 제1 패킷을 수신한 후 제2 장치로부터 제3 패킷을 수신하고, 제1 패킷에 사용된 전송 경로를 제3 패킷에 사용된 전송 경로와 비교함으로써 메인 스케줄링 당사자로서 기능하는 제2 장치에 의해 선택된 경로가 변경되었는지 여부를 알 수 있다. 구체적으로, 비교를 통해, 제1 패킷 및 제3 패킷에 각각 운반된 경로 버전 식별자가 동일한지 여부를 결정함으로써, 제1 장치는 제2 장치에 의해 선택된 전송 경로가 변경되었는지 여부를 신속하게 결정할 수 있다. 제1 패킷 및 제3 패킷에 각각 운반된 경로 버전 식별자가 상이한 경우, 이는 제2 장치가 제3 패킷을 전송할 때 경로를 재선택했음을 나타낼 수 있다. 이 경우, 추종 당사자인 제1 장치는 또한 제2 장치에 의해 선택된 새로운 경로를 사용하여 제4 패킷을 전송한다. 이러한 방식으로, 메인 스케줄링 당사자로서 역할을 하는 제2 장치가 전송 경로를 변경할 때, 여전히 동일한 경로가 2개의 통신 당사자 사이의 양방향 패킷 전송에 사용되는 것이 보장될 수 있다. 제1 패킷 및 제3 패킷에 각각 운반된 경로 버전 식별자가 동일한 경우, 이는 제2 장치가 제3 패킷을 전송할 때 경로를 재선택하지 않았음을 나타낼 수 있고, 제1 장치는 제3 패킷에 사용된 전송 경로를 결정할 필요 없이, 제1 패킷에 사용된 경로를 사용하여 여전히 제4 패킷을 전송한다. 이러한 방식으로, 패킷 전달 처리 절차가 가속화될 수 있다.
특정 구현에서, 제1 패킷을 전송한 후 그리고 제3 패킷을 전송하기 전에, 메인 스케줄링 당사자로서 역할을 하는 제2 장치가 경로를 재선택할 필요가 있다고 결정하면, 제2 장치는 제3 패킷에 전달되는 경로 버전 식별자를 제1 패킷에 포함된 경로 버전 식별자의 값과 다른 값으로 설정한다. 예를 들어, 경로 버전 식별자의 값은 경로가 변경될 때마다 1씩 증가될 수 있다. 이러한 방식으로, 제1 장치는 수신된 제3 패킷의 경로 버전 식별자의 값을 수신된 이전 패킷(제1 패킷)의 경로 버전 식별자의 값과 비교함으로써, 제2 장치에 의해 선택된 경로가 변경되었는지 결정할 수 있다.
메인 스케줄링 당사자로서 역할을 하는 제2 장치가 패킷을 전송할 때 전달되는 경로 버전 식별자의 값은 추종 당사자로서 역할을 하는 제1 장치가 패킷을 전송할 때 전달되는 경로 버전 식별자의 값과 무관하다는 점에 유의해야 한다. 다음은 특정 예를 참조하여 설명한다. 예를 들어 두 장치는 교대로 패킷을 전송한다. 특정 프로세스에는 다음 단계가 포함될 수 있다.
단계 1: 제2 장치는 경로 A를 사용하여 두 장치간에 제1 패킷을 전송한다. 여기서 제1 패킷내에 운반된 경로 버전 식별자의 값은 3이다.
단계 2: 제1 패킷을 수신한 후, 제1 장치는 경로 A를 사용하여 두 장치 사이에서 제2 패킷을 제2 장치로 전송하는데, 여기서 제2 패킷내에 운반된 경로 버전 식별자의 값은 2이다.
단계 3: 두 장치간에 제2 수신한 후, 제2 장치는 전송 경로를 변경하지 않고 경로 A를 사용하여 두 장치 사이에서 제3 패킷을 제1 장치로 전송한다. 여기서 제3 패킷내에 운반된 경로 버전 식별자의 값은 3이다.
단계 4: 제3 패킷을 수신한 후, 제1 장치는 전송 경로를 변경하지 않고, 경로 A를 사용하여 두 장치 사이에서 제4 패킷을 제2 장치로 전송하는데, 여기서 제4 패킷내에 운반된 경로 버전 식별자의 값은 제4 패킷은 2이다.
단계 5: 두 장치간에 제4 패킷을 수신한 후 제2 장치는 전송 경로를 변경하고 경로 B를 사용하여 두 장치간에 제5 패킷을 제1 장치로 전송한다. 여기서 제5 패킷내에 운반된 경로 버전 식별자의 값은 4이다.
단계 6: 제5 패킷을 수신한 후, 제1 장치는 또한 전송 경로를 변경하고, 경로 B를 사용하여 두 장치 사이에서 제6 패킷을 제2 장치로 전송하며, 여기서 제6 패킷내에 운반된 경로 버전 식별자의 값은 3이다.
단계 5에서 제2 장치가 전송 경로를 변경할 때, 제5 패킷내에 운반된 경로 버전 식별자의 값은, 단계 3에서 제2 장치에 의해 전송된 제3 패킷 내에 운반된 경로 버전 식별자(즉, 제5 패킷이 제2 장치에 의해 전송된 현재 패킷이고, 제3 패킷이 제2 장치에 의해 전송된 현재 패킷 이전의 패킷일 때)에 기초하여, 제5 패킷내에 운반된 경로 버전 식별자의 값이 변한다는 것을 이해해야 한다. 이에 대응하여, 단계 6에서 제1 장치가 전송 경로를 변경할 때, 제6 패킷내에 운반된 경로 버전 식별자의 값은, 단계 4에서 제1 장치에 의해 전송된 제4 패킷내 운반된 경로 버전 식별자(즉, 제6 패킷이 제1 장치에 의해 전송된 현재 패킷이고, 제4 패킷은 제1 장치에 의해 전송된 현재 패킷의 이전 패킷이다)에 기초하여 제6 패킷내에 운반된 경로 버전 식별자가 변한다.
제1 패킷 및 제3 패킷 이외의 패킷도 또한 경로 버전 식별자를 운반할 수 있음에 유의해야 한다. 예를 들어, 본 출원의 본 실시예에서 제1 패킷, 제4 패킷 및 제1 장치와 제2 장치 사이에 후속하여 전송되는 패킷 각각은 또한 경로 버전 식별자를 전달할 수 있다.
제1 장치와 제2 장치 사이의 통신 프로세스에서, 제1 장치와 제2 장치 중 하나 또는 둘 모두에 대해 혼잡이 발생할 수 있다. 이 경우 링크 품질이 저하되고 사용자 경험이 영향을 받는다. 경로가 혼잡한 장치는 다른 장치에게 혼잡을 적시에 통지하기 위해 패킷에 순방향 혼잡 배압 식별자(forward congestion back pressure identifier) 및/또는 역방향 혼잡 배압 식별자(backward congestion back pressure identifier)를 추가할 수 있다. 순방향 혼잡 배압 식별자는 장치의 송신 방향의 경로가 혼잡한지를 나타내고, 역방향 혼잡 배압 식별자는 장치의 수신 방향의 경로가 혼잡한지를 나타낸다.
가능한 구현에서, 추종 식별자 외에, 제2 패킷은 역방향 혼잡 배압 식별자를 더 포함할 수 있다. 단계 502에서 제2 장치로부터 제1 패킷을 수신한 후, 제1 장치는 제1 장치의 수신 방향으로의 경로가 혼잡했는지 여부를 추가로 결정할 수 있고; 제1 장치의 수신 방향의 경로가 혼잡한 경우, 제2 패킷에 포함된 역방향 혼잡 배압 식별자를 제1 값으로 설정하거나, 제1 장치의 수신 방향의 경로가 혼잡하지 않은 경우, 제2 패킷에 포함된 역방향 혼잡 배압 식별자를 제2 값으로 설정할 수 있다. 따라서, 제1 장치는, 전송된 제2 패킷에 역방향 혼잡 배압 식별자를 추가함으로써, 제1 장치의 수신 방향이 혼잡한지 여부를 제2 장치에게 적시에 통지할 수 있다.
다른 가능한 구현에서, 추종 식별자 외에, 제2 패킷은 순방향 혼잡 배압 식별자를 더 포함할 수 있다. 단계 503 이전에, 제1 장치는 제1 장치의 송신 방향으로의 경로가 혼잡했는지 여부를 추가로 결정할 수 있고; 제1 장치의 송신 방향의 경로가 혼잡한 경우, 제2 패킷에 포함된 순방향 혼잡 배압 식별자를 제1 값으로 설정하거나, 제1 장치의 송신 방향의 경로가 혼잡하지 않은 경우, 제2 패킷에 포함된 순방향 혼잡 배압 식별자를 제2 값으로 설정할 수 있다. 이러한 방식으로, 순방향 혼잡 배압 식별자를 전송된 제2 패킷에 추가함으로써, 제1 장치는 제1 장치의 송신 방향이 혼잡한지 여부를 제2 장치에게 적시에 통지할 수 있다.
혼잡이 제1 장치의 수신 방향에서만 발생하는 경우, 제2 패킷은 역방향 혼잡 배압 식별자만을 운반할 수 있거나, 역방향 혼잡 배압 식별자 및 순방향 혼잡 배압 식별자를 모두 운반할 수 있음에 유의해야 한다. 두 식별자가 모두 운반되는 경우, 역방향 혼잡 배압 식별자는 제1 값으로 설정되어야 하고, 순방향 혼잡 배압 식별자는 제2 값으로 설정되어야 한다. 혼잡이 제1 장치의 송신 방향에서만 발생하면, 제2 패킷은 순방향 혼잡 배압 식별자만을 전달할 수 있거나, 역방향 혼잡 배압 식별자 및 순방향 혼잡 배압 식별자를 모두 운반할 수 있다. 두 식별자가 모두 전달되는 경우, 순방향 혼잡 배압 식별자는 제1 값으로 설정되어야 하고, 역방향 혼잡 배압 식별자는 제2 값으로 설정되어야 한다. 제1 장치의 송신 방향 및 수신 방향 모두에서 혼잡이 발생하면, 제2 패킷은 역방향 혼잡 배압 식별자 및 순방향 혼잡 배압 식별자를 모두 전달할 수 있고, 여기서 정체 혼잡 배압 식별자 및 역방향 혼잡 배압 식별자는 제1 값으로 설정된다.
제1 장치와 제2 장치 사이에서 전송되는 임의의 패킷은 역방향 혼잡 배압 식별자 및/또는 순방향 혼잡 배압 식별자를 전달할 수 있음을 이해해야 한다. 특정 구현에서, 패킷이 두 식별자 중 하나 또는 둘 다를 운반하는지의 여부는 특정 상황에 의존하며, 여기에 제한되지 않는다.
본 출원의 본 실시예에서, 4개의 추가된 식별자, 즉, 메인 스케줄링 식별자 또는 추종 식별자, 경로 버전 식별자, 역방향 혼잡 배압 식별자 및 순방향 혼잡 배압 식별자는 두 가지 방식으로 패킷내에 운반될 수 있다. 메인 스케줄링 식별자 또는 추종 식별자는 1비트를 점유하고, 역방향 혼잡 배압 식별자는 1비트를 점유하고, 순방향 혼잡 배압 식별자는 1비트를 점유하며, 경로 버전 식별자는 4비트를 점유한다.
특정 구현에서, 패킷은 적어도 메인 스케줄링 식별자 또는 추종 식별자를 포함하고, 경로 버전 식별자, 역방향 혼잡 배압 식별자, 및 순방향 혼잡 배압 식별자는 전달하거나 전달하지 않을 수 있다. 이것은 다음과 같이 이해될 수 있다: 패킷은 전술한 4개의 추가된 식별자를 운반할 수 있거나, 전술한 4개의 식별자 중 일부만을 운반할 수 있다. 다음은 패킷이 전술한 4개의 추가된 식별자를 운반하는 예를 사용하여 설명을 제공한다.
4개의 식별자는 복수의 선택적인 방식으로 패킷내에 운반될 수 있다. 이 실시예에서, 2개의 가능한 운반 방식만이 예로서 사용된다. 도 6에 도시된 바와 같이, 오버레이(overlay) 연결의 터널 캡슐화 프로세스, 예를 들어, 일반 라우팅 캡슐화(Generic Routing Encapsulation, GRE) 확장 캡슐화에서, 전술한 4개의 식별자는 확장 캡슐화를 추가함으로써 추가된다. 구체적으로, 전술한 4개의 식별자를 추가하기 위해 종래 기술의 데이터 패킷에서 페이로드(payload) 전에 7비트가 추가될 수 있다. 도 6에 도시된 바와 같이, 추가된 필드(V.)는 경로 버전 식별자(version)을 나타내고; BBP는 역방향 혼잡 배압 식별자(back congestion bit pressure)를 나타내고; FBP는 정체 혼잡 배압 식별자(forwarding congestion bit pressure)를 나타내고; B는 소유권 식별자를 나타내며, 메인 스케줄링 식별자 또는 추종 식별자일 수 있다.
다른 방식으로, 오버레이 캡슐화가 없는 시나리오 또는 중간 장치가 터널 확장 캡슐화를 지원하지 않는 시나리오의 경우, 도 7을 참조할 수 있다. 터널의 내부 패킷의 IP 헤더 또는 IP 헤더의 예비 필드(reserved field)(예: 하나의 사용 가능한 비트가 있는 도 7의 플래그) 또는 공통 필드(예: 2개의 사용 가능한 비트가 있는 서비스 유형)은 전술한 4개의 추가된 식별자를 운반하는 데 사용된다. 종래 기술의 예비 필드는 어떠한 정보도 포함하지 않는다. 예비 필드(reserved field) 또는 비공통 필드(uncommon field)의 총 비트 수가 전술한 4개의 추가된 식별자를 캡슐화하기에 불충분한 경우, 메인 스케줄링 식별자 또는 추종 식별자 및 역방향 혼잡 배압 식별자 및 순방향 혼잡 배압 중 하나 또는 둘 다만이 캡슐화될 수 있다.
실시 형태 2
도 8은 본 출원에 따른 다른 서비스 흐름 처리 방법의 개략적인 흐름도이다. 도 8에 도시된 바와 같이, 이 방법은 다음 단계를 포함할 수 있다.
단계 801: 제2 장치는 제1 패킷을 제1 장치로 전송하는데, 여기서 제1 패킷은 추종 식별자를 포함하고, 추종 식별자는 제2 장치가 제2 장치가 아닌 다른 장치에 의해 선택된 전송 경로를 사용하여 패킷을 전송하는 것을 식별하는 데 사용된다.
단계 802: 제1 장치는 제2 장치로부터 제1 패킷을 수신한다.
단계 803: 제1 장치는 경로 선택 정책에 기초하여 제2 패킷을 전송하는 데 사용되는 제1 경로를 결정한다.
단계 804: 제1 장치는 제1 경로를 사용하여 제2 패킷을 제2 장치로 전송하는데, 여기서 제2 패킷은 메인 스케줄링 식별자를 포함하고, 메인 스케줄링 식별자는 제1 장치가 경로를 선택할 권한이 있음을 식별하는 데 사용된다.
본 출원의 본 실시예에서, 메인 스케줄링 당사자인 제1 장치는 경로를 선택할 수 있는 권한을 가지며, 추종 당사자인 제2 장치는 제2 장치 이외의 장치에 의해 선택된 전송 경로를 사용하여 패킷을 전송할 수 있다. 제1 장치가 제2 장치로부터 제1 패킷을 수신할 때, 제1 장치는 경로 선택 정책에 따라, 제1 패킷에 사용된 전송 경로를 사용하여 제2 패킷을 전송하는 대신, 제2 패킷을 전송할 전송 경로를 선택한다. 구체적으로, 제2 장치가 제1 장치와 통신할 때, 메인 스케줄링 당사자인 제1 장치는 제1 장치에 의해 선택된 전송 경로를 사용하여 패킷을 전송하고, 추종 당사자인 제2 장치는, 제1 장치와 제2 장치가 동일한 전송 경로를 사용하여 패킷을 전송하도록, 메인 스케줄링 당사자로서 역할을 하는 제1 장치에 의해 선택된 전송 경로를 이용하여 패킷을 전송한다. 이를 통해 복잡한 SD-WAN 경로 선택 시나리오에서도 서비스 품질을 보장하면서 두 통신 당사자 간의 양방향 패킷 전송에 동일한 경로를 사용하는 것을 보장할 수 있다.
구체적으로, 본 출원의 본 실시예에서, 단계 801이 수행되기 전에, 제2 장치는 먼저 제어기에 의해 전달된 메인-서브 선택 정책을 수신한 다음, 메인-서브 선택 정책에 기초하여, 통신 피어 엔드로서 기능하는 제1 장치 및 제2 장치 중, 제1 장치가 경로를 선택하는 특권을 가지며, 구체적으로, 제1 장치가 메인 스케줄링 당사자이고, 제2 장치는 추종 당사자임을 결정한다. 대안적으로, 제1 장치는 제어기에 의해 전달된 메인-서브 선택 정책을 수신 한 다음, 메인-서브 선택 정책에 기초하여, 통신 피어 엔드로서 기능하는 제1 장치 및 제2 장치 중, 제1 장치가 메인 스케줄링 당사자이고 제2 장치가 추종 당사자임을 결정한다. 따라서, 제1 장치가 제2 장치와 통신할 때, 제1 장치는 패킷을 전송하는 데 사용된 경로를 선택하고, 메인 스케줄링 식별자를 전송된 패킷에 추가한다. 제2 장치는 제1 장치에 의해 선택된 경로를 사용하여 패킷을 전송하고, 서브 스케줄링 식별자를 전송된 패킷에 추가한다.
확실히, 단계 801이 수행되기 전에, 제1 장치와 제2 장치 사이에서 전송된 첫 번째 패킷의 송신단이 두 통신 당사자 중 어느 것이 경로를 선택할 수 있는 권한을 갖는지를 결정할 수 있다. 그리고 첫 번째 패킷의 송신단은 결정된 결과를 송신되는 첫 번째 패킷에 추가한다. 이것은 다음과 같이 이해될 수 있다: 단계 801에서의 제1 패킷이 제1 장치와 제2 장치 사이에서 전송되는 첫 번째 패킷인 경우, 제2 장치는 어느 장치가 메인 스케줄링 당사자이고 어떤 장치가 추종 당사자인지를 결정할 수 있다. 그 후, 추종 식별자를 운반하는 제1 패킷을 수신한 후, 제1 장치는 제2 장치가 추종 당사자라는 것을 알게 되어, 제1 장치가 메인 스케줄링 당사자인 것으로 결정할 수 있다. 이 경우, 제1 장치는 메인 스케줄링 식별자를 후속적으로 전송되는 제2 패킷에 추가한다.
메인-서브 선택 정책은 다음 중 하나 이상을 포함할 수 있다. 제1 정책: 제1 장치 및 제2 장치 중 링크 대역폭이 더 작은 장치가 경로를 선택할 수 있는 권한을 가진다. 제2 정책: 제1 장치 및 제2 장치 중, 브랜치 라우터 스포크로서 기능하는 장치가 경로를 선택할 수 있는 권한을 가지며, 허브로서 기능하는 장치는 스포크로서 기능하는 장치에 의해 선택된 경로를 따르도록 허가된다. 제3 정책: 제1 장치의 식별자와 스케줄링 허가 사이의 대응관계 및 제2 장치의 식별자와 스케줄링 허가 사이의 대응관계. 제4 정책: 제1 장치의 시스템 IP 주소와 스케줄링 허가 사이의 대응관계 및 제2 장치의 시스템 IP 주소와 스케줄링 허가 사이의 대응관계. 메인-서브 선택 정책은 전술한 4가지 정책을 포함할 수 있지만 이에 제한되지 않는다는 것을 이해해야 한다. 본 출원의 본 실시예에서, 메인-서브 선택 정책의 구체적인 내용에 대해, 실시예 1의 관련 내용에 대한 설명이 참조될 수 있다. 자세한 내용은 여기에 설명되어 있지 않는다.
본 출원의 본 실시예에서, 단계 804에서는, 메인 스케줄링 당사자로서 역할을 하는 제1 장치는 제1 경로를 사용하여 제2 패킷을 전송한다. 메인 스케줄링 식별자를 운반하는 제2 패킷을 수신한 후, 추종 당사자로서 역할을 하는 제2 장치는 또한 제2 패킷을 전송하는 데 사용된 제1 경로를 결정한 후 제1 경로를 사용하여 후속 패킷을 전송한다. 구체적으로, 제2 장치는 제1 장치로 제3 패킷을 전송하는데, 여기서 제3 패킷은 추종 식별자를 포함하고, 제3 패킷의 전송 경로는 제1 경로이다. 이에 대응하여, 제1 장치는 제2 장치로부터 제3 패킷을 수신할 수 있다. 이러한 방식으로, 추종 당사자로서 기능하는 제2 장치는 메인 스케줄링 당사자로서 기능하는 제1 장치에 의해 선택된 전송 경로를 사용하여 패킷을 전송한다. 이를 통해 두 통신 당사자 간의 양방향 패킷 전송에 동일한 경로를 사용할 수 있다.
제1 장치와 제2 장치 사이의 통신 프로세스에서, 제1 장치와 제2 장치 중 하나 또는 둘 모두에 대해 혼잡이 발생할 수 있다. 이 경우 링크 품질이 저하되고 사용자 경험이 영향을 받는다. 경로가 혼잡한 장치는 다른 장치에게 혼잡을 적시에 통지하기 위해 패킷에 순방향 혼잡 배압 식별자 및/또는 역방향 혼잡 배압 식별자를 추가할 수 있다. 순방향 혼잡 배압 식별자는 장치의 송신 방향의 경로가 혼잡한지 여부를 나타내고, 역방향 혼잡 배압 식별자는 장치의 수신 방향으로 경로가 혼잡한지 여부를 나타낸다.
가능한 구현에서, 추종 식별자 외에, 제1 패킷은 순방향 혼잡 배압 식별자 및/또는 역방향 혼잡 배압 식별자를 더 포함할 수 있다. 단계 803 이후에, 제1 패킷이 미리 설정된 조건을 만족하고, 제1 장치의 수신 방향으로의 경로 또는 제1 장치의 송신 방향으로의 경로의 어느 것도 혼잡하지 않으면, 제1 장치는 경로를 선택할 수 있는 권한을 포기한다. 미리 설정된 조건은 다음을 포함한다: 제1 패킷에 포함된 순방향 혼잡 배압 식별자는 제1 값이고, 및/또는 제1 패킷에 포함된 역방향 혼잡 배압 식별자는 제1 값이며, 여기서 제1 값은 정체가 발생함을 나타내는 데 사용된다. 그 후, 제1 장치는 제1 경로를 사용하여 제4 패킷을 제2 장치에 전송하는데, 여기서 제4 패킷은 추종 식별자를 포함하며, 제4 패킷내에 운반된 순방향 혼잡 배압 식별자 및 역방향 혼잡 배압 식별자는 제2 패킷이다. 혼잡이 발생하지 않았음을 나타내는 데 사용된다.
구체적으로, 메인 스케줄링 당사자인 제1 장치가 제2 장치로부터 제1 패킷을 수신한 후, 제1 패킷이 순방향 혼잡 배압 식별자를 포함하면, 제1 장치는 순방향 혼잡 배압 식별자의 값에 기초하여 결정할 수 있다. 제1 패킷에 포함되며, 제2 장치의 송신 방향의 경로가 혼잡한지 여부; 또는 제1 패킷이 역방향 혼잡 배압 식별자를 포함하는 경우, 제1 장치는 제1 패킷에 포함된 역방향 혼잡 배압 식별자의 값에 기초하여, 제2 장치의 수신 방향으로의 경로가 혼잡한지를 결정할 수 있다. 또한, 제1 장치의 수신 방향으로의 경로 또는 제1 장치의 송신 방향으로의 경로가 혼잡하지 않고, 제2 장치의 적어도 하나의 방향으로의 경로가 혼잡하지 않으면, 제1 장치는 경로를 선택하는 권한을 포기하고, 후속하여 전송된 제4 패킷에 추종 식별자를 추가함으로써 제2 장치에 통지함으로써, 제2 장치는 제1 장치가 경로를 선택할 수 있는 권한을 포기하고 제2 장치가 경로를 선택할 수 있음을 알게 된다. 이러한 방식으로, 경로가 혼잡한 제2 장치는 패킷을 전송할 경로를 선택할 수 있어, 제2 장치에 대한 연속적인 혼잡을 피할 수 있다.
또한, 제1 장치가 제1 경로를 사용하여 제4 패킷을 제2 장치에 전송한 후에, 제2 장치는 제4 패킷의 추종 식별자에 기초하여, 제1 장치가 경로를 선택할 수 있는 권한을 포기한 것으로 결정할 수 있다. 이 경우, 제2 장치는 제5 패킷을 제1 장치로 전송하는데, 여기서 제5 패킷은 메인 스케줄링 식별자를 포함하고, 제5 패킷의 전송 경로는 경로 선택 정책에 따라 제2 장치에 의해 선택된 제4 경로이다. 제2 장치는 메인 스케줄링 식별자를 제5 패킷에 추가함으로써, 제2 장치가 메인 스케줄링 당사자가 됨을, 즉 제2 장치가 경로를 선택할 권한이 있음을 제1 장치에 통지할 수 있다. 이에 대응하여, 제1 장치는 제2 장치로부터 제5 패킷을 수신한다. 제2 장치가 메인 스케줄링 당사자가 되었다고 결정한 후, 제1 장치는 제2 장치에 의해 선택된 전송 경로를 사용하여 패킷을 전송하기 위해 추종 당사자로서 기능할 수 있다. 이러한 방식으로, 경로가 혼잡한 제2 장치가 전송 경로를 선택하여, 제2 장치에 대한 연속적인 혼잡을 피할 수 있다.
다른 가능한 구현에서, 단계 803 이후에, 제1 패킷이 미리 설정된 조건을 만족하고, 제1 장치의 수신 방향 및 송신 방향 중 적어도 하나의 경로가 혼잡한 경우, 제1 장치는 경로 선택 권한을 포기하지 않는다. 이는 다음과 같이 이해될 수 있다: 제2 장치의 수신 방향 및 송신 방향 중 적어도 하나의 경로가 혼잡하고, 제1 장치의 수신 방향 및 송신 방향 중 적어도 하나의 경로가 혼잡한 경우 제1 장치는 여전히 경로를 선택할 수 있는 권한을 보유한다. 이것은 제1 장치가 경로를 선택할 수 있는 권한을 포기할 때, 제2 장치가 제1 장치의 방향으로 혼잡을 야기하는 경로를 여전히 선택할 수 있는 문제를 피할 수 있다.
통신 피어 엔드에 의해 사용되는 경로가 변경되는지 여부를 신속하게 결정하기 위해, 본 출원의 본 실시예는 가능한 구현을 제공한다. 제1 패킷 및 제2 패킷은 각각 경로 버전 식별자를 더 포함하고, 경로 버전 식별자는 패킷 송신단에 의해 선택된 경로가 변경되었는지를 식별하는 데 사용된다. 구체적으로, 단계 802 이후 및 단계 803 이전에, 제1 장치가 패킷을 전송하는 데 사용된 전송 경로를 재선택하기로 결정하면, 제1 장치는 제2 패킷에 포함된 경로 버전 식별자를 제3 값으로 설정하거나; 또는 제1 장치가 패킷을 전송하기 위해 사용된 전송 경로를 변경하지 않기로 결정하면, 제1 장치는 제2 패킷에 포함된 경로 버전 식별자를 제4 값으로 설정할 수 있다. 여기서 제3 값은 제1 장치에 의해 선택된 경로가 변경됨을 나타내기 위해 사용되고, 제4 값은 제1 장치에 의해 선택된 경로가 변경되지 않음을 나타내는 데 사용된다. 이러한 방식으로, 제1 패킷을 전송한 후, 메인 스케줄링 당사자인 제1 장치가 패킷을 전송하는 데 사용된 전송 경로를 재선택해야 하는 경우, 제1 장치는 제2 패킷에 그 값이 제1 패킷에 대응하는 값과 상이한 경로 버전 식별자를 추가함으로써, 제2 장치는 적시에, 제1 장치에 의해 선택된 전송 경로가 변경되었다는 것을 알게 되거나; 또는 제1 장치는 제2 패킷에 그 값이 제1 패킷에 대응하는 값과 같은 경로 버전 식별자를 추가함으로써, 제2 장치가 적시에, 제1 장치에 의해 선택된 전송 경로가 변경되지 않음을 알게 된다.
제1 장치와 제2 장치 사이에서 전송되는 임의의 패킷은 역방향 혼잡 배압 식별자 및/또는 순방향 혼잡 배압 식별자를 전달할 수 있음을 이해해야 한다. 특정 구현에서, 패킷이 두 식별자 중 하나 또는 둘 다를 운반하는지의 여부는 특정 상황에 의존하며, 여기에 제한되지 않는다.
본 출원의 본 실시예에서, 4개의 추가된 식별자, 즉, 메인 스케줄링 식별자 또는 추종 식별자, 경로 버전 식별자, 역방향 혼잡 배압 식별자 및 순방향 혼잡 배압 식별자는 두 가지 방식으로 패킷내에 운반될 수 있다. 메인 스케줄링 식별자 또는 추종 식별자는 1비트를 점유하고, 역방향 혼잡 배압 식별자는 1비트를 점유하고, 순방향 혼잡 배압 식별자는 1비트를 점유하며, 경로 버전 식별자는 4비트를 점유한다.
특정 구현에서, 패킷은 적어도 메인 스케줄링 식별자 또는 다음의 식별자를 포함하고, 경로 버전 식별자, 역방향 혼잡 배압 식별자, 및 순방향 혼잡 배압 식별자를 전달하거나 전달하지 않을 수 있다. 이것은 다음과 같이 이해될 수 있다: 패킷은 전술한 4개의 추가된 식별자를 운반하거나, 전술한 4개의 식별자 중 일부만을 운반할 수 있다.
본 출원의 본 실시예에서, 추가된 4개의 식별자의 관련 내용에 대해, 실시 형태 1의 관련 설명이 참조될 수 있다. 자세한 내용은 여기에 설명되어 있지 않는다.
다음은 도 9a 및 도 9b를 참조하여 전술한 패킷 전송 방법의 가능한 구현을 상세히 설명한다.
도 9a 및 도 9b는 본 출원의 실시예에 따른 다른 패킷 전송 방법의 예의 개략적인 흐름도이다. 이 방법에서, 제1 장치는 메인 스케줄링 당사자로서 기능하고, 제2 장치는 추종 당사자로서 기능한다. 두 장치 사이에서 전송되는 패킷내에 운반된 컨텐츠는 [경로 버전 식별자, 역방향 혼잡 배압 식별자, 순방향 혼잡 배압 식별자 및 소유권 식별자]로 표시될 수 있으며, 여기서 소유권 식별자는 메인 스케줄링 식별자이거나 추종 식별자이다. 이 방법에는 다음 단계가 포함된다.
단계 901: 제1 장치는 경로 E를 사용하여 패킷 A를 제2 장치로 전송하는데, 여기서 패킷 A는 [3, 0, 0, 1]을 포함하고, 패킷 A내에 운반된 경로 버전 식별자의 초기 값이 3으로 설정되고, 역방향 혼잡 배압 식별자의 값 및 순방향 혼잡 배압 식별자의 값은 모두 0으로 설정되는데, 이것은 송신 방향의 경로 또는 수신 방향의 경로 어느 것도 혼잡하지 않음을 나타내며, 값이 1인 소유권 식별자는 메인 스케줄링 식별자를 나타낸다.
단계 902: 제2 장치가 패킷 A를 수신하고; 제2 장치의 포트 상태를 확인함으로써, 수신 방향의 경로가 혼잡하다는 것을 발견하고; 전송될 패킷 B 내에 역방향 혼잡 배압 식별자의 값을 1로 설정한다.
단계 903: 제2 장치는 패킷 B를 전송하기 전에 제2 장치의 포트 상태를 확인하여, 송신 방향이 또한 혼잡하다는 것을 발견하고, 전송될 패킷 B 내에 순방향 혼잡 배압 식별자의 값을 1로 설정한다.
단계 904: 제2 장치는 경로 E를 사용하여 패킷 B를 제1 장치로 전송하는데, 여기서 패킷 B는 [4, 1, 1, 0]을 포함하고, 패킷 B 내에 운반된 경로 버전 식별자의 초기 값이 4로 설정되고, 역방향 혼잡 배압 식별자의 값 및 순방향 혼잡 배압 식별자의 값은 둘 다 1로 설정되어, 제2 장치의 송신 방향 및 수신 방향의 경로가 모두 혼잡함을 나타내고, 값이 0인 소유권 식별자는 추종 식별자를 나타낸다.
단계 905: 제1 장치는 제2 장치에 의해 전송된 패킷 B를 수신하고, 값이 1로 설정된 역방향 혼잡 배압 식별자 및 값이 1로 설정된 순방향 혼잡 배압 식별자에 기초하여, 제2 장치의 송신 방향 및 수신 방향 모두의 경로가 혼잡하다고 결정하고; 제1 장치의 송신 방향의 경로 및 제1 장치의 수신 방향의 경로 모두가 혼잡하지 않은 것으로 결정하고; 전송될 패킷 C에서 소유권 식별자의 값을 0으로 설정한다.
단계 906: 제1 장치는 경로 E를 사용하여 패킷 C를 제2 장치로 전송하는데, 여기서 패킷 C는 [3, 0, 0, 0]을 포함하고, 패킷 C 내에 운반되는 경로 버전 식별자의 값은 여전히 3이고, 역방향 혼잡 배압 식별자 및 순방향 혼잡 배압 식별자의 값은 모두 0으로 설정되고, 이것은 제1 장치의 송신 방향의 경로 및 수신 방향의 경로가 혼잡하지 않음을 나타내며, 값이 0인 소유권 식별자는 추종 식별자를 나타낸다.
단계 907: 제2 장치는 패킷 C를 수신하고, 패킷 C에서 값이 0인 소유권 식별자에 기초하여, 제1 장치가 경로를 선택할 수 있는 권한을 포기한 것으로 결정한다.
단계 908: 제2 장치는 메인 스케줄링 당사자가 되고, 경로 선택 정책에 따라, 전송될 패킷 D에 대한 경로로서 경로 F를 선택한다.
단계 909: 제2 장치는 패킷 D를 전송하기 위해 경로 F를 재선택하고, 여기서 패킷 D는 [5, 0, 0, 1]을 운반하고, 패킷 D 내에 운반된 경로 버전 식별자의 값은 5이고, 역방향 혼잡 배압 식별자 및 순방향 혼잡 배압 식별자의 값은 모두 0으로 설정되며, 이것은 제2 장치의 송신 방향의 경로 또는 제2 장치의 수신 방향의 경로가 모두 혼잡하지 않음을 나타내며, 값이 1인 소유권 식별자는 메인 스케줄링 식별자를 나타낸다.
단계 910: 제1 장치가 패킷 D를 수신하고; 패킷 D에서 값이 1인 소유권 식별자에 기초하여, 제2 장치가 메인 스케줄링 당사자가 되는 것으로 결정하고; 패킷 D에 포함된 값이 5인 경로 버전 식별자가 패킷 C에 포함된 값이 3인 경로 버전 식별자와 다르다는 사실에 기초하여, 제2 장치에 의해 선택된 경로가 변경된다.
단계 911: 제1 장치는 패킷 D를 전송하는 데 사용된 경로가 경로 F라고 결정한다.
단계 912: 제1 장치는 경로 F를 사용하여 패킷 E를 제2 장치로 전송하는데, 여기서 패킷 E는 [4, 0, 0, 0]을 전달하고, 패킷 E 내에 운반된 경로 버전 식별자의 값은 4이고, 역방향 혼잡 배압 식별자의 값 및 순방향 혼잡 배압 식별자의 값은 모두 0으로 설정되며, 이것은 제1 장치의 송신 방향의 경로 및 제1 장치의 수신 방향의 경로가 모두 혼잡하지 않음을 나타내며, 값이 0인 소유권 식별자는 추종 식별자를 나타낸다.
동일한 본 발명의 기술적 사상에 기초하여, 본 출원의 실시예는 패킷 전송 장치를 추가로 제공한다. 도 10은 본 출원의 실시예에 따른 패킷 전송 장치의 개략적인 구조도이다. 도 10에 도시된 바와 같이, 패킷 전송 장치(1000)는 송수신기 모듈(1001) 및 처리 모듈(1002)을 포함한다.
송수신기 모듈(1001)은 장치(1000)가 다른 장치 또는 장치(예를 들어, 제2 장치 또는 제어기)와 통신하는 것을 지원하도록 구성된다. 처리 모듈(1002)은 장치(1000)의 동작을 제어 및 관리하도록 구성된다. 장치(1000)는 장치(1000)의 프로그램 코드 및 데이터를 저장하도록 구성된 저장 모듈(1003)을 더 포함할 수 있다.
가능한 설계에서, 송수신기 모듈(1001)은 제2 장치로부터 제1 패킷을 수신하도록 구성되며, 여기서 제1 패킷은 메인 스케줄링 식별자를 포함하고, 메인 스케줄링 식별자는 제2 장치가 경로를 선택할 수 있는 권한을 가지고 있음을 식별하는 데 사용된다. 처리 모듈(1002)은 제1 패킷을 전송하는 데 사용되는 제1 경로를 결정하도록 구성된다. 송수신기 모듈(1001)은 또한 제1 경로를 사용하여 제2 패킷을 제2 장치에 전송하도록 구성되고, 여기서 제2 패킷은 추종 식별자를 포함하고, 추종 식별자는 장치가 자신 이외의 장치에 의해 선택된 전송 경로를 사용하여 패킷을 전송한다는 것을 식별하기 위해 사용된다.
다른 가능한 설계에서, 송수신기 모듈(1001)은 제2 장치로부터 제1 패킷을 수신하도록 구성되며, 여기서 제1 패킷은 메인 스케줄링 식별자를 포함하고, 메인 스케줄링 식별자는 제2 장치가 경로를 선택할 권한이 있음을 식별하는 데 사용된다. 처리 모듈(1002)은 제1 패킷을 전송하는 데 사용되는 제1 경로를 결정하도록 구성된다. 송수신기 모듈(1001)은 또한 제1 경로를 사용하여 제2 패킷을 제2 장치에 전송하도록 구성되고, 여기서 제2 패킷은 추종 식별자를 포함하고, 추종 식별자는 장치가 자신 이외의 장치에 의해 선택된 전송 경로를 사용하여 패킷을 전송한다는 것을 식별하기 위해 사용된다.
본 출원의 본 실시예에서 모듈들로의 분할은 예일 뿐이고, 논리적 기능 분할 일 뿐이며, 실제 구현에서 다른 분할일 수 있다. 또한, 본 출원의 실시예에서의 기능적 모듈은 하나의 프로세서에 통합될 수 있거나, 또는 각각의 모듈이 물리적으로 단독으로 존재할 수 있거나, 둘 이상의 모듈이 하나의 모듈에 통합될 수 있다. 통합 모듈은 하드웨어 형태로 구현되거나 소프트웨어 기능 모듈 형태로 구현될 수 있다.
통합 모듈이 하드웨어 형태로 구현될 때, 도 11에 도시된 바와 같이, 패킷 전송 장치는 프로세서(1102)를 포함할 수 있다. 모듈에 대응하는 물리적 하드웨어는 프로세서(1102)일 수 있다. 프로세서(1102)는 중앙 처리 장치(CPU), 디지털 처리 모듈 등일 수 있다. 패킷 송신 장치는 통신 인터페이스(1101)를 더 포함할 수 있고, 프로세서(1102)는 통신 인터페이스(1101)를 통해 패킷을 수신 및 송신한다. 장치는 프로세서(1102)에 의해 실행되는 프로그램을 저장하도록 구성된 메모리(1103)를 더 포함한다. 메모리(1103)는 비휘발성 메모리, 예를 들어, 하드 디스크 드라이브(HDD) 또는 솔리드 스테이트 드라이브(SSD)일 수 있거나, 또는 휘발성 메모리, 예를 들어 랜덤 액세스 메모리(RAM)일 수 있다. 메모리(113)는 명령 또는 데이터 구조의 형태로 예상 프로그램 코드를 운반 또는 저장하도록 구성될 수 있고 컴퓨터에 액세스 가능한 임의의 다른 매체일 수 있지만, 이에 제한되지는 않는다.
프로세서(1102)는 메모리(1103)에 저장된 프로그램 코드를 실행하도록 구성되고, 구체적으로 도 5에 도시된 실시예의 방법을 수행하거나, 도 8에 도시된 실시예의 방법을 수행하도록 구성된다. 본 출원에서 세부 사항은 여기에 기술되지 않는다.
통신 인터페이스(1101), 프로세서(1102) 및 메모리(1103) 사이의 특정 연결 매체는 본 출원의 본 실시예에서 제한되지 않는다. 본 출원의 본 실시예에서, 도 11에서, 메모리(1103), 프로세서(1102) 및 통신 인터페이스(1101)는 버스(1104)를 사용하여 연결되며, 여기서 버스는 도 11에서 굵은 선으로 표시된다. 다른 구성 요소들 사이의 연결 방식은 단지 모식적으로 표시되지만, 여기에 제한되지 않는다. 버스는 어드레스 버스, 데이터 버스, 제어 버스 등으로 분류될 수 있다. 쉽게 표현할 수 있도록 도 11에서 하나의 굵은 선만 버스를 나타내는 데 사용되지만 이는 하나의 버스 또는 하나의 버스 유형만 있음을 의미하지는 않는다.
본 발명의 실시예는 전술한 프로세서의 실행을 위해 실행되어야 하는 컴퓨터 소프트웨어 명령을 저장하도록 구성된 컴퓨터 판독 가능 저장 매체를 제공하고, 명령은 전술한 프로세서의 실행을 위해 실행되어야하는 프로그램을 포함한다 .
본 출원의 실시예는 명령을 포함하는 컴퓨터 프로그램 제품을 제공한다. 컴퓨터 프로그램 제품이 컴퓨터에서 실행될 때, 컴퓨터는 도 5, 도 8 또는 도 9a 및 도 9b의 패킷 전송 방법을 수행할 수 있다.
본 출원의 실시예는 칩 시스템을 제공한다. 칩 시스템은 도 5, 도 8 또는 도 9a 및 도 9b의 패킷 전송 방법에서 기능을 구현함에 있어서 패킷 전송 장치를 지원하도록 구성된 프로세서를 포함한다. 가능한 설계에서, 칩 시스템은 패킷 전송 장치에 필요한 프로그램 명령 및 데이터를 저장하도록 구성된 메모리를 더 포함한다. 칩 시스템은 칩을 포함하거나, 칩 및 다른 이산 소자를 포함할 수 있다.
통상의 기술자는 본 출원의 실시예가 방법, 시스템 또는 컴퓨터 프로그램 제품으로 제공될 수 있음을 이해해야 한다. 그러므로 본 출원은 하드웨어 전용 실시예, 소프트웨어 전용 실시예, 또는 소프트웨어와 하드웨어의 조합을 갖는 실시예의 형태를 사용할 수 있다. 또한, 본 출원은 컴퓨터 사용 가능한 프로그램 코드를 포함하는 하나 이상의 컴퓨터 이용 가능 저장 매체(자기 디스크 저장 장치, CD-ROM, 광 메모리 등을 포함하지만 이에 제한되지 않음) 상에 구현되는 컴퓨터 프로그램 제품의 형태를 사용할 수 있다.
본 출원은 본 출원에 따른 방법, 장치(시스템) 및 컴퓨터 프로그램 제품의 흐름도 및/또는 블록도를 참조하여 설명된다. 컴퓨터 프로그램 명령은 흐름도 및/또는 블록도에서 각각의 프로세스 및/또는 각 블록을 구현하고 흐름도 및/또는 블록도에서 프로세스 및/또는 블록의 조합을 구현하는 데 사용될 수 있음을 이해해야 한다. 이들 컴퓨터 프로그램 명령은 범용 컴퓨터, 특수 목적 컴퓨터, 내장 프로세서 또는 머신을 생성하기 위한 다른 프로그래머블 데이터 처리 장치의 프로세서에 제공되어, 다른 프로그래머블 데이터 처리 장치의 컴퓨터 또는 프로세서에 의해 실행되는 명령이 흐름도에서의 하나 이상의 프로세스 및/또는 블록도에서의 하나 이상의 블록의 특정 기능을 구현하기 위한 장치를 생성한다.
이들 컴퓨터 프로그램 명령은 대안적으로 컴퓨터 또는 다른 프로그머블 데이터 처리 장치가 특정 방식으로 작동하도록 지시할 수 있는 컴퓨터 판독 가능 메모리에 저장될 수 있어서, 컴퓨터 판독 가능 메모리에 저장된 명령은 명령 장치를 포함하는 아티팩트를 생성할 수 있다. 명령 장치는 흐름도의 하나 이상의 프로세스 및/또는 블록도의 하나 이상의 블록에서 지정된 기능을 구현한다.
이들 컴퓨터 프로그램 명령은 대안적으로 컴퓨터 또는 다른 프로그래머블 데이터 처리 장치에 로딩될 수 있어서, 컴퓨터로 구현되는 처리를 생성하기 위해 일련의 동작 및 단계가 컴퓨터 또는 다른 프로그램 가능 장치에서 수행된다. 따라서, 컴퓨터 또는 다른 프로그램 가능 장치에서 실행되는 명령은 흐름도의 하나 이상의 프로세스 및/또는 블록도의 하나 이상의 블록에서 지정된 기능을 구현하기 위한 단계를 제공한다.
명백히, 통상의 기술자는 본 출원의 범위를 벗어나지 않고 본 출원에 대한 다양한 수정 및 변형을 행할 수 있다. 본 출원은 이러한 변형 및 변형이 본 출원의 청구 범위 및 그와 동등한 기술의 범위 내에있는 한, 본 발명의 이러한 변형 및 변형을 포함하도록 의도된다.

Claims (24)

  1. 패킷 전송 방법에 있어서,
    제1 장치에 의해, 제2 장치로부터 제1 패킷을 수신하는 단계 - 상기 제1 패킷은 메인 스케줄링 식별자를 포함하고, 상기 메인 스케줄링 식별자는 상기 제2 장치가 경로를 선택할 수 있는 권한을 가지고 있음을 식별하는 데 사용됨 -;
    상기 제1 장치에 의해, 상기 제1 패킷을 전송하는 데 사용된 제1 경로를 결정하는 단계; 및
    상기 제1 장치에 의해, 상기 제1 경로를 사용하여 제2 패킷을 상기 제2 장치로 전송하는 단계 - 상기 제2 패킷은 추종 식별자를 포함하고, 상기 추종 식별자는 상기 제1 장치 이외의 장치에 의해 선택된 전송 경로를 사용하여 상기 제1 장치가 패킷을 전송한다는 것을 식별하는 데 사용됨-
    을 포함하는 패킷 전송 방법.
  2. 제1항에 있어서,
    상기 제1 패킷은 경로 버전 식별자를 더 포함하고, 상기 경로 버전 식별자는 패킷 송신단에 의해 선택된 경로가 변경되었는지 여부를 식별하는 데 사용되며;
    상기 제1 장치에 의해, 상기 제1 경로를 사용하여 제2 패킷을 상기 제2 장치에 전송하는 단계 후에, 상기 패킷 전송 방법이,
    상기 제1 장치에 의해, 상기 제2 장치로부터 제3 패킷을 수신하는 단계 - 상기 제3 패킷은 상기 메인 스케줄링 식별자 및 경로 버전 식별자를 포함함 -;
    상기 제1 장치가 상기 제3 패킷 내에 운반된 경로 버전 식별자가 상기 제1 패킷 내에 운반된 경로 버전 식별자와 다르다고 결정하면, 상기 제3 패킷을 전송하는 데 사용되는 제2 경로를 결정하는 단계; 및
    상기 제1 장치에 의해, 상기 제2 경로를 사용하여 제4 패킷을 상기 제2 장치에 전송하는 단계 - 상기 제4 패킷은 추종 식별자를 포함함 -
    를 더 포함하는, 패킷 전송 방법.
  3. 제1항에 있어서,
    상기 제1 장치에 의해, 상기 제1 패킷을 전송하는 데 사용된 제1 경로를 결정하는 단계는,
    상기 제1 장치에 의해, 상기 제1 패킷으로부터 파싱을 통해 상기 제1 경로를 획득하는 단계; 또는
    상기 제1 장치에 의해, 제1 대응관계 및 상기 제1 패킷을 수신하는 데 사용된 인터페이스 식별자에 기초하여, 상기 제1 패킷을 수신하는 데 사용된 인터페이스 식별자에 대응하는 경로 정보를 결정하고, 상기 결정된 경로 정보에 대응하는 경로를 제1 패킷을 전송하기 위해 사용되는 제1 경로로서 이용하는 단계
    를 더 포함하고,
    상기 제1 대응관계는 인터페이스 식별자와 경로 정보 사이의 대응관계로 이루어진, 패킷 전송 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 제2 패킷은 역방향 혼잡 배압 식별자를 더 포함하고;
    상기 제1 장치에 의해, 제2 장치로부터 제1 패킷을 수신하는 단계 후에, 상기 패킷 전송 방법은,
    상기 제1 장치에 의해, 상기 제1 장치의 수신 방향의 경로가 혼잡한지 여부를 결정하는 단계; 및 상기 제1 장치의 수신 방향의 경로가 혼잡한 경우, 제2 패킷에 포함된 역방향 혼잡 배압 식별자를 제1 값으로 설정하거나, 상기 제1 장치의 수신 방향의 경로가 혼잡하지 않은 경우, 제2 패킷에 포함된 역방향 혼잡 배압 식별자를 제2 값으로 설정하는 단계를 더 포함하는,
    패킷 전송 방법.
  5. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 제2 패킷은 순방향 혼잡 배압 식별자를 더 포함하고,
    상기 제1 장치에 의해, 상기 제1 경로를 사용하여 상기 제2 장치에 제2 패킷을 전송하기 전에, 상기 패킷 전송 방법이,
    상기 제1 장치에 의해, 상기 제1 장치의 송신 방향의 경로가 혼잡한지 여부를 결정하는 단계; 및 상기 제1 장치의 송신 방향의 경로가 혼잡한 경우, 제2 패킷에 포함된 순방향 혼잡 배압 식별자를 제1 값으로 설정하거나, 상기 제1 장치의 송신 방향의 경로가 혼잡하지 않은 경우, 제2 패킷에 포함된 순방향 혼잡 배압 식별자를 제2 값으로 설정하는 단계를 더 포함하는,
    패킷 전송 방법.
  6. 패킷 전송 방법에 있어서,
    제1 장치에 의해, 제2 장치로부터 제1 패킷을 수신하는 단계 - 상기 제1 패킷은 추종 식별자를 포함하고, 상기 추종 식별자는 상기 제2 장치가 상기 제2 장치 이외의 장치에 의해 선택된 전송 경로를 사용하여 상기 패킷을 전송하는 것을 식별하기 위해 사용됨 -;
    경로 선택 정책에 기초하여, 상기 제1 장치에 의해, 제2 패킷을 전송하는 데 사용되는 제1 경로를 결정하는 단계;
    상기 제1 경로를 사용하여, 상기 제1 장치에 의해, 상기 제2 패킷을 상기 제2 장치로 전송하는 단계 - 상기 제2 패킷은 메인 스케줄링 식별자를 포함하고, 상기 메인 스케줄링 식별자는 상기 제1 장치가 경로를 선택할 권한이 있음을 식별하는 데 사용됨 -;
    을 포함하는 패킷 전송 방법.
  7. 제6항에 있어서,
    상기 제1 장치에 의해, 상기 제1 경로를 사용하여 상기 제2 패킷을 상기 제2 장치로 전송 한 후에, 상기 패킷 전송 방법은,
    상기 제1 장치에 의해, 상기 제2 장치로부터 제3 패킷을 수신하는 단계를 더 포함하고, 상기 제3 패킷은 추종 식별자를 포함하고, 상기 제3 패킷의 전송 경로는 상기 제1 경로인,
    패킷 전송 방법.
  8. 제6항에 있어서,
    상기 제1 패킷은 순방향 혼잡 배압 식별자 및/또는 역방향 혼잡 배압 식별자를 더 포함하고;
    경로 선택 정책에 기초하여, 상기 제1 장치에 의해, 제2 패킷을 전송하는 데 사용되는 제1 경로를 결정한 후, 상기 패킷 전송 방법은,
    상기 제1 패킷이 미리 설정된 조건을 만족하고, 상기 제1 장치의 수신 방향의 경로 및 상기 제1 장치의 송신 방향의 경로 중 어느 것도 혼잡하지 않으면, 상기 제1 장치에 의해, 상기 경로를 선택할 수 있는 권한을 포기하는 단계 - 상기 미리 설정된 조건은, 상기 제1 패킷에 포함된 순방향 혼잡 배압 식별자가 제1 값이고, 및/또는 상기 제1 패킷에 포함된 역방향 혼잡 배압 식별자가 제1 값이며, 제1 값은 혼잡 발생을 나타내는 데 사용됨 -; 및
    상기 제1 장치에 의해, 상기 제1 경로를 사용하여 상기 제2 장치에 제4 패킷을 전송하는 단계 - 상기 제4 패킷은 추종 식별자를 포함하고, 상기 제4 패킷 내에 운반된 순방향 혼잡 배압 식별자 및 역방향 혼잡 배압 식별자는 모두 제2 값이며, 제2 값은 혼잡이 발생하지 않음을 나타내는 데 사용됨 -;
    을 더 포함하는, 패킷 전송 방법.
  9. 제8항에 있어서,
    상기 제1 장치에 의해, 상기 제1 경로를 사용하여 제4 패킷을 상기 제2 장치에 전송한 후에, 상기 패킷 전송 방법은,
    상기 제1 장치에 의해, 상기 제2 장치로부터 제5 패킷을 수신하는 단계를 더 포함하고,
    상기 제5 패킷은 메인 스케줄링 식별자를 포함하고, 상기 제5 패킷의 전송 경로는 상기 경로 선택 정책에 따라 상기 제2 장치에 의해 선택된 제4 경로인, 패킷 전송 방법.
  10. 제6항에 있어서,
    상기 제1 패킷 및 상기 제2 패킷은 각각 경로 버전 식별자를 더 포함하고, 상기 경로 버전 식별자는 패킷 송신단에 의해 선택된 경로에 변경이 있는지를 식별하는 데 사용되며;
    상기 제1 장치에 의해, 제2 장치로부터 제1 패킷을 수신하는 단계 후, 그리고 상기 경로 선택 정책에 기초하여, 상기 제1 장치에 의해, 제2 패킷을 전송하는 데 사용되는 제1 경로를 결정하는 단계 전에, 상기 패킷 전송 방법이,
    상기 제1 장치가 상기 패킷을 전송하기 위해 사용된 전송 경로를 재선택하기로 결정하면, 상기 제2 패킷에 포함된 경로 버전 식별자를 제3 값으로 설정하는 단계 - 상기 제3 값은 상기 제1 장치에 의해 선택된 경로가 변경됨을 나타내는 데 사용됨 -; 또는
    상기 제1 장치가 상기 패킷을 전송하는 데 사용된 전송 경로를 변경하지 않기로 결정하면, 상기 제2 패킷에 포함된 경로 버전 식별자를 제4 값으로 설정하는 단계 - 상기 제4 값은 상기 제1 장치에 의해 선택된 경로가 변경되지 않음을 나타내는 데 사용됨-;
    를 더 포함하는, 패킷 전송 방법.
  11. 제6항 내지 제10항 중 어느 한 항에 있어서,
    제1 장치가 제2 장치로부터 제1 패킷을 수신하기 전에, 상기 패킷 전송 방법이,
    상기 제1 장치에 의해, 제어기에 의해 전달된 메인-서브 선택 정책을 수신하는 단계; 및
    상기 메인-서브 선택 정책에 기초하여, 상기 제1 장치에 의해, 상기 제1 장치가 경로를 선택할 수 있는 권한을 갖는지 여부를 결정하는 단계
    를 더 포함하고,
    상기 메인-서브 선택 정책은 다음 중 적어도 하나 이상:
    (1) 제1 장치 및 제2 장치 중, 링크 대역폭이 더 작은 장치가 경로를 선택할 수 있는 권한을 가지는 것;
    (2) 제1 장치 및 제2 장치 중, 분기 라우터 스포크로서 기능하는 장치가 경로를 선택할 수 있는 권한을 가지며, 허브로서 기능하는 장치는 스포크로서 기능하는 장치에 의해 선택된 경로를 따르는 권한을 가지는 것;
    (3) 제1 장치의 식별자와 스케줄링 허가 사이의 대응관계 및 제2 장치의 식별자와 스케줄링 허가 사이의 대응관계; 및
    (4) 제1 장치의 시스템 IP 주소와 스케줄링 허가 사이의 대응관계 및 제2 장치의 시스템 IP 주소와 스케줄링 허가 사이의 대응관계
    를 포함하는, 패킷 전송 방법.
  12. 패킷 전송 장치에 있어서,
    제2 장치로부터 제1 패킷을 수신하도록 구성된 송수신기 모듈 - 상기 제1 패킷은 메인 스케줄링 식별자를 포함하고, 상기 메인 스케줄링 식별자는 상기 제2 장치가 경로를 선택할 수 있는 권한을 가지고 있음을 식별하는 데 사용됨-; 및
    상기 제1 패킷을 전송하는 데 사용된 제1 경로를 결정하도록 구성된 처리 모듈
    을 포함하고,
    상기 송수신기 모듈은 또한 제1 경로를 사용하여 제2 패킷을 상기 제2 장치로 전송하도록 구성되고, 상기 제2 패킷은 추종 식별자를 포함하고, 상기 추종 식별자는 상기 패킷 전송 장치가 자신 이외의 장치에 의해 선택된 전송 경로를 사용하여 패킷을 전송하는 것을 식별하는 데 사용되는,
    패킷 전송 장치.
  13. 제12항에 있어서,
    상기 제1 패킷은 경로 버전 식별자를 더 포함하고, 상기 경로 버전 식별자는 패킷 송신단에 의해 선택된 경로에 변경이 있는지를 식별하는 데 사용되며;
    상기 제1 경로를 사용하여 상기 제2 패킷을 상기 제2 장치로 전송한 후, 상기 송수신기 모듈은 상기 제2 장치로부터 제3 패킷을 수신하도록 추가로 구성되며, 상기 제3 패킷은 메인 스케줄링 식별자 및 경로 버전 식별자를 포함하고;
    상기 처리 모듈은 또한, 상기 제3 패킷에 운반된 경로 버전 식별자가 제1 패킷에 운반된 경로 버전 식별자와 상이하다고 결정되면, 상기 제3 패킷을 전송하는 데 사용된 제2 경로를 결정하고;
    상기 송수신기 모듈은 또한 제2 경로를 사용하여 상기 제2 장치에 제4 패킷을 전송하도록 구성되며, 상기 제4 패킷은 추종 식별자를 포함하는,
    패킷 전송 장치.
  14. 제12항에 있어서,
    상기 처리 모듈은 구체적으로,
    상기 제1 패킷으로부터 파싱을 통해 상기 제1 경로를 획득하거나; 또는
    제1 대응관계 및 상기 제1 패킷을 수신하는 데 사용된 인터페이스 식별자에 기초하여, 상기 제1 패킷을 수신하는 데 사용되는 인터페이스 식별자에 대응하는 경로 정보를 결정하고, 상기 결정된 경로 정보에 대응하는 경로를 상기 제1 패킷을 전송하는 데 사용되는 제1 경로로서 사용하도록 구성되고,
    여기서 상기 제1 대응관계는 상기 인터페이스 식별자와 상기 경로 정보 사이의 대응관계를 포함하는,
    패킷 전송 장치.
  15. 제12항 내지 제14항 중 어느 한 항에 있어서,
    상기 제2 패킷은 역방향 혼잡 배압 식별자를 더 포함하고;
    상기 처리 모듈은 또한, 상기 송수신기 모듈이 제2 장치로부터 제1 패킷을 수신한 후, 상기 패킷 전송 장치의 수신 방향의 경로가 혼잡한지 여부를 결정하고, 상기 패킷 전송 장치의 수신 방향의 경로가 혼잡하면, 제2 패킷에 포함된 역방향 혼잡 배압 식별자를 제1 값으로 설정하거나, 상기 패킷 전송 장치의 수신 방향의 경로가 혼잡하지 않으면, 제2 패킷에 포함된 역방향 혼잡 배압 식별자를 제2 값으로 설정하도록 구성된,
    패킷 전송 장치.
  16. 제12항 내지 제14항 중 어느 한 항에 있어서,
    상기 제2 패킷은 순방향 혼잡 배압 식별자를 더 포함하고;
    상기 처리 모듈은, 상기 송수신기 모듈이 상기 제1 경로를 이용하여 상기 제2 장치에 제2 패킷을 전송하기 전에, 상기 패킷 전송 장치의 송신 방향의 경로가 혼잡한지 여부를 결정하고, 상기 패킷 전송 장치의 송신 방향의 경로가 혼잡하면, 제2 패킷에 포함된 순방향 혼잡 배압 식별자를 제1 값으로 설정하거나, 상기 패킷 전송 장치의 수신 방향의 경로가 혼잡하지 않으면, 순방향 혼잡 배압 식별자를 제2 값으로 설정하도록 구성된,
    패킷 전송 장치.
  17. 패킷 전송 장치에 있어서,
    제2 장치로부터 제1 패킷을 수신하도록 구성된 송수신기 모듈 - 상기 제1 패킷은 추종 식별자를 포함하고, 상기 추종 식별자는 상기 제2 장치가 아닌 다른 장치에 의해 선택된 전송 경로를 사용하여 상기 제2 장치가 상기 패킷을 전송하는 것을 식별하는 데 사용됨 -; 및
    경로 선택 정책에 기초하여, 제2 패킷을 전송하는 데 사용되는 제1 경로를 결정하도록 구성된 처리 모듈
    을 포함하고,
    상기 송수신기 모듈은 또한, 제1 경로를 사용하여 제2 패킷을 제2 장치로 전송하도록 구성되고, 상기 제2 패킷은 메인 스케줄링 식별자를 포함하고, 상기 메인 스케줄링 식별자는 상기 패킷 전송 장치가 경로를 선택할 수 있는 권한을 가지고 있음을 식별하는 데 사용되는,
    패킷 전송 장치.
  18. 제17항에 있어서,
    상기 제1 경로를 사용하여 제2 패킷을 제2 장치로 전송한 후, 상기 송수신기 모듈은 상기 제2 장치로부터 제3 패킷을 수신하도록 구성되며, 상기 제3 패킷은 추종 식별자를 포함하고, 상기 제3 패킷의 전송 경로는 제1 경로인,
    패킷 전송 장치.
  19. 제17항에 있어서,
    상기 제1 패킷은 순방향 혼잡 배압 식별자 및/또는 역방향 혼잡 배압 식별자를 더 포함하고;
    경로 선택 정책에 기초하여, 제2 패킷을 전송하기 위해 사용된 제1 경로를 결정한 후에, 상기 처리 모듈은, 제1 패킷이 미리 설정된 조건을 만족하는지, 그리고 상기 패킷 전송 장치의 수신 방향의 경로 및 상기 패킷 전송 장치의 송신 방향의 경로 중 어느 것도 혼잡하지 않으면, 경로를 선택할 수 있는 권한을 포기하도록 구성되고, 상기 미리 설정된 조건은, 상기 제1 패킷에 포함된 순방향 혼잡 배압 식별자가 제1 값이거나, 및/또는 제1 패킷에 포함된 역방향 혼잡 배압 식별자가 제1 값인 것을 포함하고, 상기 제1 값은 혼잡 발생을 나타내는 데 사용되며;
    상기 송수신기 모듈은 또한, 제1 경로를 사용하여 제2 장치에 제4 패킷을 전송하도록 구성되며, 상기 제4 패킷은 추종 식별자를 포함하며, 상기 제4 패킷 내에 운반된 순방향 혼잡 배압 식별자 및 역방향 혼잡 배압 식별자는 모두 제2 값이고, 상기 제2 값은 혼잡이 발생하지 않음을 나타내는 데 사용되는,
    패킷 전송 장치.
  20. 제19항에 있어서,
    상기 제1 경로를 사용하여 상기 제4 패킷을 상기 제2 장치로 전송한 후, 상기 송수신기 모듈은 상기 제2 장치로부터 제5 패킷을 수신하도록 구성되고, 상기 제5 패킷은 메인 스케줄링 식별자를 포함하고, 상기 제5 패킷의 전송 경로는 경로 선택 정책에 따라 상기 제2 장치에 의해 선택된 제4 경로인, 패킷 전송 장치.
  21. 제17항에 있어서,
    상기 제1 패킷 및 상기 제2 패킷은 각각 경로 버전 식별자를 더 포함하고, 상기 경로 버전 식별자는 패킷 송신단에 의해 선택된 경로에 변경이 있는지를 식별하는 데 사용되며;
    상기 송수신기 모듈이 제2 장치로부터 제1 패킷을 수신한 후, 그리고 상기 처리 모듈이 경로 선택 정책에 기초하여 제2 패킷을 전송하는 데 사용되는 제1 경로를 결정하기 전에,
    상기 처리 모듈은, 패킷을 전송하는 데 사용되는 전송 경로를 재선택할 것을 결정하면, 상기 제2 패킷에 포함된 경로 버전 식별자를 제3 값으로 설정하고, 패킷을 전송하는 데 사용되는 전송 경로를 변경하지 않는 것으로 결정하면, 상기 제2 패킷에 포함된 경로 버전 식별자를 제4 값으로 설정하도록 구성되고, 상기 제3 값은 상기 패킷 전송 장치에 의해 선택된 경로에 변경이 있음을 나타내기 위해 사용되고, 상기 제4 값은 상기 패킷 전송 장치에 의해 선택된 경로에 변경이 없음을 나타내기 위해 사용되는,
    패킷 전송 장치.
  22. 제17항 내지 제21항 중 어느 한 항에 있어서,
    상기 제2 장치로부터 상기 제1 패킷을 수신하기 전에, 상기 송수신기 모듈은 제어기에 의해 전달되는 메인-서브 선택 정책을 수신하고;
    상기 처리 모듈은 또한, 상기 메인-서브 선택 정책에 기초하여 상기 패킷 전송 장치가 경로를 선택할 수 있는 권한을 갖는지 여부를 결정하도록 구성되며, 상기 메인-서브 선택 정책은 다음 중 적어도 하나 이상:
    (1) 상기 패킷 전송 장치 및 상기 제2 장치 중, 링크 대역폭이 더 작은 장치가 경로를 선택할 수 있는 권한을 가지는 것;
    (2) 상기 패킷 전송 장치 및 상기 제2 장치 중, 분기 라우터 스포크로서 기능하는 장치가 경로를 선택할 수 있는 권한을 가지며, 허브로서 기능하는 장치는 스포크로서 기능하는 장치에 의해 선택된 경로를 따르는 권한을 가지는 것;
    (3) 상기 패킷 전송 장치의 식별자와 스케줄링 허가 사이의 대응관계 및 상기 제2 장치의 식별자와 스케줄링 허가 사이의 대응관계; 및
    (4) 상기 패킷 전송 장치의 시스템 IP 주소와 스케줄링 허가 사이의 대응관계 및 상기 제2 장치의 시스템 IP 주소와 스케줄링 허가 사이의 대응관계
    를 포함하는, 패킷 전송 장치.
  23. 컴퓨터에 의해 실행될 때, 컴퓨터로 하여금 제1항 내지 제3항 중 어느 한 항에 따른 방법을 수행하게 하는 명령을 포함하는 컴퓨터 판독 가능 저장 매체.
  24. 컴퓨터에 의해 실행될 때, 컴퓨터로 하여금 제6항 내지 제10항 중 어느 한 항에 따른 방법을 수행하게 하는 명령을 포함하는 컴퓨터 판독 가능 저장 매체.
KR1020200033173A 2019-03-18 2020-03-18 패킷 전송 방법 및 장치 KR102344346B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910203885.8 2019-03-18
CN201910203885.8A CN111726293B (zh) 2019-03-18 2019-03-18 一种报文传输方法及装置

Publications (2)

Publication Number Publication Date
KR20200111118A true KR20200111118A (ko) 2020-09-28
KR102344346B1 KR102344346B1 (ko) 2021-12-27

Family

ID=69844615

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200033173A KR102344346B1 (ko) 2019-03-18 2020-03-18 패킷 전송 방법 및 장치

Country Status (7)

Country Link
US (1) US11616724B2 (ko)
EP (2) EP4181477A1 (ko)
JP (1) JP7092813B2 (ko)
KR (1) KR102344346B1 (ko)
CN (1) CN111726293B (ko)
AU (1) AU2020201904B2 (ko)
CA (1) CA3076119C (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11296947B2 (en) 2020-06-29 2022-04-05 Star2Star Communications, LLC SD-WAN device, system, and network
US20220239591A1 (en) * 2021-01-27 2022-07-28 Cisco Technology, Inc. Coordination of sdn underlay and overlay for deterministic traffic
US11552886B2 (en) * 2021-03-09 2023-01-10 Cisco Technology, Inc. Topology optimization in SD-WANs with path downgrading
US11750498B2 (en) * 2021-07-15 2023-09-05 Microsoft Technology Licensing, Llc Guarantying SLA thru edge cloud path orchestration
US11916796B2 (en) * 2021-12-23 2024-02-27 Versa Networks, Inc. End-to-end data packets flow control through an overlay environment of a wide area network

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005354579A (ja) * 2004-06-14 2005-12-22 Fujitsu Ltd パケット中継装置並びに送信元及び宛先アドレスによる経路選択方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6680943B1 (en) * 1999-10-01 2004-01-20 Nortel Networks Limited Establishing bi-directional communication sessions across a communications network
US7298693B1 (en) * 1999-10-21 2007-11-20 Tellabs Operations, Inc. Reverse notification tree for data networks
US7315510B1 (en) * 1999-10-21 2008-01-01 Tellabs Operations, Inc. Method and apparatus for detecting MPLS network failures
JP2004248085A (ja) 2003-02-14 2004-09-02 Kyocera Corp 経路決定方法および経路決定装置
JP3971718B2 (ja) 2003-05-13 2007-09-05 日本電信電話株式会社 冗長パス確立システムおよびユーザノード装置およびノード装置
US8693323B1 (en) * 2004-04-05 2014-04-08 Verizon Business Global Llc System and method for managing communications in an access network
US7706255B1 (en) * 2007-01-29 2010-04-27 Solace Systems, Inc. Communications apparatus with redundant switching or backpressure mechanism
CN101483558B (zh) 2008-01-10 2012-07-04 华为技术有限公司 网络设备接入分组交换网络的方法、系统及装置
CN102571543B (zh) * 2010-12-27 2015-12-16 中兴通讯股份有限公司 一种通信方法、消息处理方法及系统
CN103067220B (zh) * 2012-12-19 2016-02-10 中兴通讯股份有限公司 参数更新情况下双向链路转发检测方法及装置
JP6313140B2 (ja) * 2014-06-30 2018-04-18 株式会社東芝 通信装置及びマルチホッピングネットワーク
CN107517157B (zh) 2016-06-16 2020-09-11 华为技术有限公司 一种路径确定方法、装置和系统
CN107786437B (zh) * 2016-08-24 2020-12-15 华为技术有限公司 报文转发方法及装置
CN112671643B (zh) 2017-03-30 2022-05-13 上海层峰网络科技有限公司 一种基于mpls的sdn业务隔离及选路的装置
US10523539B2 (en) * 2017-06-22 2019-12-31 Nicira, Inc. Method and system of resiliency in cloud-delivered SD-WAN
US10291524B2 (en) * 2017-08-17 2019-05-14 Abb Schweiz Ag Dynamic tunnel establishment in a mesh network
US10778568B2 (en) * 2017-12-05 2020-09-15 Mellanox Technologies, Ltd. Switch-enhanced short loop congestion notification for TCP
US10868755B2 (en) * 2018-12-20 2020-12-15 Cisco Technology, Inc. Implementing bi-directional paths in segment routing networks

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005354579A (ja) * 2004-06-14 2005-12-22 Fujitsu Ltd パケット中継装置並びに送信元及び宛先アドレスによる経路選択方法

Also Published As

Publication number Publication date
CN111726293B (zh) 2021-11-30
EP3713160A1 (en) 2020-09-23
JP2020156088A (ja) 2020-09-24
AU2020201904B2 (en) 2023-05-11
EP4181477A1 (en) 2023-05-17
CA3076119C (en) 2022-10-18
US20200304411A1 (en) 2020-09-24
KR102344346B1 (ko) 2021-12-27
CN111726293A (zh) 2020-09-29
JP7092813B2 (ja) 2022-06-28
CA3076119A1 (en) 2020-09-18
EP3713160B1 (en) 2022-08-31
US11616724B2 (en) 2023-03-28
AU2020201904A1 (en) 2020-10-08

Similar Documents

Publication Publication Date Title
KR102344346B1 (ko) 패킷 전송 방법 및 장치
US11711869B2 (en) Message and system for application function influence on traffic routing
US10432514B2 (en) Multiprotocol label switching traffic engineering tunnel establishing method and device
US11240147B2 (en) Asymmetric routing minimization
US10158558B1 (en) Segment routing of packets according to a multicast distribution tree in a network
CN105657748B (zh) 基于隧道绑定的通信方法和网络设备
KR102478342B1 (ko) 정보 전송 방법 및 장치, 기록 매체 및 전자 장치
CN105471609A (zh) 一种用于配置业务的方法和装置
US20150063122A1 (en) Smart mobility management entity for ue attached relay node
EP4138443A1 (en) Communication method and apparatus
WO2015070383A1 (zh) 一种链路聚合的方法、装置和系统
US11770325B2 (en) Automatically selecting an optimized communication channel for communications with a deflect in an overlay network
CN112822102A (zh) 链路切换方法、装置、设备、系统及存储介质
US11381497B2 (en) Path selection method and device
US8238265B2 (en) Auto-binding SDP RSVP LSP tunnel
EP4165904A1 (en) Access traffic management
CN107018072B (zh) 一种数据帧发送方法和接入设备
CN105765903A (zh) 一种拓扑发现方法及设备
US11606244B2 (en) Longest path first route selection
EP3131344A1 (en) Method and system for discovery of access aggregation points for bonding approaches in a telecommunication network
KR101308089B1 (ko) 고가용성을 지원하기 위한 IPSec VPN 시스템 및 방법
KR20190048324A (ko) 다중 네트워크 기반의 서비스를 제공하는 방법 및 장치
KR20160119012A (ko) 이기종 네트워크 기반 데이터 동시 전송 방법 및 이에 적용되는 장치
CN117178535A (zh) 通过sd-wan中的sd-wan边缘转发节点路由数据包的按需路由网格

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