JP2020156088A - パケット伝送方法及び装置 - Google Patents

パケット伝送方法及び装置 Download PDF

Info

Publication number
JP2020156088A
JP2020156088A JP2020046976A JP2020046976A JP2020156088A JP 2020156088 A JP2020156088 A JP 2020156088A JP 2020046976 A JP2020046976 A JP 2020046976A JP 2020046976 A JP2020046976 A JP 2020046976A JP 2020156088 A JP2020156088 A JP 2020156088A
Authority
JP
Japan
Prior art keywords
packet
route
identifier
value
authority
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2020046976A
Other languages
English (en)
Other versions
JP7092813B2 (ja
Inventor
ターン,プオンホーァ
Tang Penghe
ファーン,ヨーンローン
Yonglong Fang
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of JP2020156088A publication Critical patent/JP2020156088A/ja
Application granted granted Critical
Publication of JP7092813B2 publication Critical patent/JP7092813B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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

Landscapes

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

Abstract

【課題】同じ経路が2つの通信事業者の間の双方向パケット伝送に使用されることを確保するパケット伝送方法を提供する。【解決手段】方法において、第1のデバイスが、第2のデバイスから第1のパケットを受信するステップを有する。第1のパケットは、主スケジューリング識別子を含む。主スケジューリング識別子は、第2のデバイスが経路を選択する権限を有することを識別するために使用される。さらに、第1のデバイスは、第1のパケットを伝送するために使用される第1の経路を決定し、第1の経路を使用することにより第2のパケットを第2のデバイスに送信するステップを有する。第2のパケットは、フォロー識別子を含む。フォロー識別子は、第1のデバイスが第1のデバイス以外のデバイスにより選択された伝送経路を使用することによりパケットを送信することを識別するために使用される。【選択図】図5

Description

本発明は、通信技術の分野に関し、特にパケット伝送方法及び装置に関する。
広域ネットワークにおけるソフトウェア定義ネットワーキング(software-defined networking in a wide area network, SD-WAN)は、広域ネットワーク(WAN)におけるソフトウェア定義ネットワーク(SDN)技術の適用に基づいて生成された新たな技術である。広域ネットワークは、エンタープライズネットワークに含まれるいくつかの支社及びデータセンタを接続するために主に使用される。SD-WANは、複数の接続方式、例えば、マルチプロトコルラベルスイッチング(multi-protocol label switching, MPLS)ネットワーク接続、インターネット(Internet)接続、MPLS及びInternetのハイブリッド接続(hybrid-linkとも呼ばれる)をサポートする。SD-WANでは、通信主体として機能するクライアントは、アクセスデバイスとして機能するサイト(site)に接続される。サイトは、サイトに接続されたクライアントのためのベアラサービスフローパケットを転送するために使用される。パケット転送プロセスにおいて、サイトは2つの通信当事者のサービスフローのための伝送経路を選択する必要がある。ユーザ体験を改善して負荷分散を実現するために、2つの通信当事者のクライアントがそれぞれ接続される2つのサイトは、同じ伝送経路が2つの通信当事者に対して選択されることを確保する、すなわち、選択された伝送経路が同じであることを確保する必要がある。
既存の解決策では、SDNコントローラは、複数のサイトに対して同じ経路選択ポリシーを構成する。例えば、経路選択ポリシーは、2つの通信当事者として機能するクライアントの識別子と経路との間の対応関係を含み、それにより、2つの通信当事者に接続された2つのサイトは、同じ経路を選択でき、2つの通信当事者の間で伝送される第1のパケットの経路選択結果は、以降のパケットを伝送するために使用される。図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は、MPLSリンクがIPアドレス10.10.10.10とIPアドレス10.10.20.20との間のフローに対して優先的に選択されることを指定する。ポリシー2は、Internetリンクが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との間の簡単な経路選択シナリオのみに当てはまる。簡単な経路選択シナリオは、簡単な経路シナリオと簡単なポリシーシナリオとを含むが、これらに限定されない。簡単な経路選択に加えて、複雑な経路選択解決策が、他のシナリオにおいて必要とされる可能性があり、例えば、元の経路品質が要件を満たさず、2つのサイトの品質検出周期及びポリシーリフレッシュ周期の間に時間差が存在し、2つのサイトのうち少なくとも1つの経路が輻輳しており、サービス優先度がソートされる必要がある。上記のシナリオはまた、複雑な経路選択シナリオとも呼ばれる。複雑な経路選択シナリオにおいて、従来技術では、経路選択ポリシーに従ってサイト1及びサイト2により再選択された経路が同じであることを確保することは困難である。その結果、サイト1及びサイト2により選択された経路が異なる可能性がある。
他の既存の解決策では、サイト1及びサイト2は、サイト1とサイト2との間で伝送される第1のパケットの経路選択結果を別々に記録する。例えば、第1のパケットはサイト1により送信され、サイト1及びサイト2により送信される以降のパケットは、第1のパケットの経路選択結果に従う。経路が変更される必要がある場合、サイト1は、常に経路選択に責任がある。しかし、2つのサイトの間の通信中にリンク障害、経路輻輳等が発生した場合、パケットを送信するのに失敗したサイトがタイムアウトの後に応答パケットを受信しないときにのみ、サイトは、パケットが送信されるのに失敗したことを知ることができる。次いで、経路再選択がトリガされる。パケットを送信するのに失敗したサイトがサイト2である場合、サイト1は経路を再選択する必要があり、それにより、サイト2はパケットを送信し続けることができる。これは深刻なサービス遅延を引き起こす。
SD-WAN経路選択シナリオにおいて、サイトが簡単な経路選択解決策を選択するか複雑な経路選択解決策を選択するかは、通常では、パケットが属するアプリケーションに依存する。要するに、複雑なSD-WAN経路選択シナリオにおいてサービス品質を確保しつつ、同じ経路が2つの通信当事者の間の双方向パケット伝送に使用されることを確保するために、更に踏み込んだ研究が依然として必要とされる。
この出願は、複雑なSD-WAN経路選択シナリオにおいてサービス品質を確保しつつ、同じ経路が2つの通信当事者の間の双方向パケット伝送に使用されることを確保するためのパケット伝送方法及び装置を提供する。
第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経路選択シナリオであっても、サービス品質を確保しつつ、同じ経路が2つの通信当事者の間の双方向パケット伝送に使用されることを確保できる。
可能な設計では、第1のパケットは、経路バージョン識別子を更に含んでもよく、経路バージョン識別子は、パケット伝送端により選択された経路が変化するか否かを識別するために使用され、第1のデバイスにより、第1の経路を使用することにより第2のパケットを第2のデバイスに送信した後に、当該方法は、第1のデバイスにより、第2のデバイスから第3のパケットを受信するステップであり、第3のパケットは、主スケジューリング識別子と経路バージョン識別子とを含む、ステップと、第3のパケットで搬送される経路バージョン識別子が第1のパケットで搬送される経路バージョン識別子と異なると第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のパケットは、逆方向輻輳バックプレッシャー識別子を更に含んでもよく、第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のデバイスにより選択された伝送経路を使用することによりパケットを送信してもよく、それにより、第1のデバイス及び第2のデバイスは、同じ伝送経路を使用することによりパケットを送信する。このように、複雑なSD-WAN経路選択シナリオであっても、サービス品質が確保されつつ、同じ経路が2つの通信当事者の間の双方向パケット伝送に使用されることが依然として確保できる。
可能な設計では、第1のデバイスにより、第1の経路を使用することにより第2のパケットを第2のデバイスに送信した後に、当該方法は、第1のデバイスにより、第2のデバイスから第3のパケットを受信するステップであり、第3のパケットは、フォロー識別子を含み、第3のパケットの伝送経路は、第1の経路である、ステップを更に含む。
この設計によれば、主スケジューリング当事者として機能する第1のデバイスは、第1の経路を使用することにより第2のパケットを送信する。主スケジューリング識別子を搬送する第2のパケットを受信した後に、フォロー当事者として機能する第2のデバイスもまた、次のパケットを送信するために、第1の経路を使用する。具体的には、フォロー当事者として機能する第2のデバイスは、主スケジューリング当事者として機能する第1のデバイスにより選択された伝送経路を使用することによりパケットを送信する。これは、同じ経路が2つの通信当事者の間の双方向パケット伝送に使用されることを効果的に確保できる。
可能な設計では、第1のパケットは、順方向輻輳バックプレッシャー識別子及び/又は逆方向輻輳バックプレッシャー識別子を更に含み、第1のデバイスが、経路選択ポリシーに基づいて、第2のパケットを送信するために使用される第1の経路を決定した後に、当該方法は、第1のパケットが予め設定された条件を満たしており、第1のデバイスの受信方向の経路も第1のデバイスの送信方向の経路も輻輳していないと決定された場合、第1のデバイスにより、経路を選択する権限を放棄するステップであり、予め設定された条件は、第1のパケットに含まれる順方向輻輳バックプレッシャー識別子が第1の値であること、及び/又は、第1のパケットに含まれる逆方向輻輳バックプレッシャー識別子が第1の値であることを含み、第1の値は、輻輳が発生していることを示すために使用される、ステップと、第1のデバイスにより、第1の経路を使用することにより第4のパケットを第2のデバイスに送信するステップであり、第4のパケットは、フォロー識別子を含み、第4のパケットで搬送される順方向輻輳バックプレッシャー識別子及び逆方向輻輳バックプレッシャー識別子の双方は第2の値であり、第2の値は、輻輳が発生していないことを示すために使用される、ステップとを更に含む。
この設計によれば、主スケジューリング当事者として機能する第1のデバイスが第2のデバイスから第1のパケットを受信した後に、第1のパケットが順方向輻輳バックプレッシャー識別子を含む場合、第1のデバイスは、第1のパケットに含まれる順方向輻輳バックプレッシャー識別子の値に基づいて、第2のデバイスの送信方向の経路が輻輳しているか否かを決定してもよく、及び/又は、第1のパケットが逆方向輻輳バックプレッシャー識別子を含む場合、第1のデバイスは、第1のパケットに含まれる逆方向輻輳バックプレッシャー識別子の値に基づいて、第2のデバイスの受信方向の経路が輻輳しているか否かを決定してもよい。さらに、第1のデバイスの受信方向の経路も第1のデバイスの送信方向の経路も輻輳しておらず、第2のデバイスの少なくとも1つの方向の経路が輻輳しているとき、第1のデバイスは、経路を選択する権限を放棄し、フォロー識別子を以降に送信される第4のパケットに追加することにより第2のデバイスに通知し、それにより、第2のデバイスは、第1のデバイスが経路を選択する権限を放棄していることを習得でき、第2のデバイスは、経路を選択する権限を取得できる。このように、経路が輻輳している第2のデバイスは、パケットを伝送するための経路を選択でき、それにより、第2のデバイスについて連続的な輻輳が回避できる。
可能な設計では、第1のデバイスにより、第1の経路を使用することにより第4のパケットを第2のデバイスに送信した後に、当該方法は、第1のデバイスにより、第2のデバイスから第5のパケットを受信するステップであり、第5のパケットは、主スケジューリング識別子を含み、第5のパケットの伝送経路は、経路選択ポリシーに従って第2のデバイスにより選択された第4の経路である、ステップを更に含む。
この設計によれば、第1のデバイスが経路を選択する権限を放棄した後に、第2のデバイスは、経路選択ポリシーに従って伝送経路を選択するための主スケジューリング当事者として機能することができる。第2のデバイスは、第2のデバイスが主スケジューリング当事者になること、すなわち、第2のデバイスが経路を選択する権限を有することを第1のデバイスに通知するために、主スケジューリング識別子を第5のパケットに追加する。対応して、第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のデバイスは、値が第1のパケットに対応する値と異なる経路バージョン識別子を第2のパケットに追加してもよく、それにより、第2のデバイスは、第1のデバイスにより選択された伝送経路が変化することを適時に習得でき、或いは、値が第1のパケットに対応する値と同じである経路バージョン識別子を第2のパケットに追加してもよく、それにより、第2のデバイスは、第1のデバイスにより選択された伝送経路が変化しないことを適時に習得できる。
可能な設計では、第2のデバイスから第1のパケットを受信する前に、第1のデバイスは、コントローラにより配信された主従選択ポリシーを更に受信してもよく、第1のデバイスは、主従選択ポリシーに基づいて、第1のデバイスが経路を選択する権限を有するか否かを決定する。主従選択ポリシーは、以下のポリシー、すなわち、第1のデバイス及び第2のデバイスの中で、より小さいリンク帯域幅を有するデバイスが経路を選択する権限を有することと、第1のデバイス及び第2のデバイスの中で、ブランチルータSpokeとして機能するデバイスが経路を選択する権限を有し、Hubとして機能するデバイスがSpokeとして機能するデバイスにより選択された経路に従う権限を有することと、第1のデバイスの識別子とスケジューリング権限との間の対応関係及び第2のデバイスの識別子とスケジューリング権限との間の対応関係と、第1のデバイスのシステムIPアドレスとスケジューリング権限との間の対応関係及び第2のデバイスのシステムIPアドレスとスケジューリング権限との間の対応関係とのうち1つ以上を含むが、これらに限定されない。
この設計によれば、第1のデバイスが第2のデバイスと通信するとき、第1のデバイスは、複数のシナリオにおいて、2つの通信当事者のそれぞれのスケジューリング権限が主スケジューリング当事者であるかフォロー当事者であるかを効果的に決定できる。
第3の態様によれば、この出願の実施形態は、パケット伝送装置を提供する。当該装置は、第1の態様又は第1の態様の可能な設計のうちいずれか1つにおいて、第1のデバイスを実現する機能を有する。機能は、ハードウェアにより実現されてもよく、或いは、対応するソフトウェアを実行することによりハードウェアにより実現されてもよい。ハードウェア又はソフトウェアは、機能に対応する1つ以上のモジュールを含む。
可能な設計では、当該装置の構造は、処理モジュールとトランシーバモジュールとを含む。処理モジュールは、第1の態様又は第1の態様の設計のうちいずれか1つにおいて対応する方法のステップを実行する際に当該装置をサポートするように構成される。トランシーバモジュールは、当該装置と他の通信デバイスとの間の通信をサポートするように構成される。当該装置は、記憶モジュールを更に含んでもよい。記憶モジュールは、処理モジュールに結合され、当該装置に必要なプログラム命令及びデータを記憶する。一例では、処理モジュールはプロセッサもよく、トランシーバモジュールはトランシーバ又は通信インタフェースでもよく、記憶モジュールはメモリでもよい。
第4の態様によれば、この出願の実施形態は、コンピュータ読み取り可能記憶媒体を提供する。コンピュータ記憶媒体は、コンピュータ読み取り可能命令を記憶し、コンピュータがコンピュータ読み取り可能命令を読み取って実行したとき、コンピュータは、第1の態様又は第1の態様の可能な設計のうちいずれか1つによる方法を実行することが可能になる。
第5の態様によれば、この出願の実施形態は、コンピュータプログラムプロダクトを提供し、コンピュータがコンピュータプログラムプロダクトを読み取って実行したとき、コンピュータは、第1の態様又は第1の態様の可能な設計のうちいずれか1つによる方法を実行することが可能になる。
第6の態様によれば、この出願の実施形態は、チップを提供する。チップは、メモリに接続され、メモリに記憶されたソフトウェアプログラムを読み取って実行し、第1の態様又は第1の態様の可能な設計のうちいずれか1つによる方法を実現するように構成される。
第7の態様によれば、この出願の実施形態は、パケット伝送装置を提供する。当該装置は、第2の態様又は第2の態様の可能な設計のうちいずれか1つに従って、第1のデバイスを実現する機能を有する。機能は、ハードウェアにより実現されてもよく、或いは、対応するソフトウェアを実行することによりハードウェアにより実現されてもよい。ハードウェア又はソフトウェアは、機能に対応する1つ以上のモジュールを含む。
可能な設計では、当該装置の構造は、処理モジュールとトランシーバモジュールとを含む。処理モジュールは、第2の態様又は第2の態様の設計のうちいずれか1つにおいて対応する方法のステップを実行する際に当該装置をサポートするように構成される。トランシーバモジュールは、当該装置と他の通信デバイスとの間の通信をサポートするように構成される。当該装置は、記憶モジュールを更に含んでもよい。記憶モジュールは、処理モジュールに結合され、当該装置に必要なプログラム命令及びデータを記憶する。一例では、処理モジュールはプロセッサもよく、通信モジュールはトランシーバ又は通信インタフェースでもよく、記憶モジュールはメモリでもよい。
第8の態様によれば、この出願の実施形態は、コンピュータ読み取り可能記憶媒体を提供する。コンピュータ記憶媒体は、コンピュータ読み取り可能命令を記憶し、コンピュータがコンピュータ読み取り可能命令を読み取って実行したとき、コンピュータは、第2の態様又は第2の態様の可能な設計のうちいずれか1つによる方法を実行することが可能になる。
第9の態様によれば、この出願の実施形態は、コンピュータプログラムプロダクトを提供し、コンピュータがコンピュータプログラムプロダクトを読み取って実行したとき、コンピュータは、第2の態様又は第2の態様の可能な設計のうちいずれか1つによる方法を実行することが可能になる。
第10の態様によれば、この出願の実施形態は、チップを提供する。チップは、メモリに接続され、メモリに記憶されたソフトウェアプログラムを読み取って実行し、第2の態様又は第2の態様の可能な設計のうちいずれか1つによる方法を実現するように構成される。
第11の態様によれば、この出願の実施形態は、通信システムを提供する。通信システムは、第1のサイトデバイスと第2のサイトデバイスとを含む。第1のサイトデバイスは、第1の態様又は第1の態様の可能な設計のうちいずれか1つに従って、第1のデバイスにより実行される方法を実行するように構成されてもよく、第2のサイトデバイスは、第2の態様又は第2の態様の可能な設計のうちいずれか1つに従って、第1のデバイスにより実行される方法を実行するように構成されてもよい。
簡単なシナリオにおける経路の概略図である。 この出願の実施形態によるネットワークアーキテクチャの可能な概略図である。 この出願の実施形態が適用可能な複雑なシナリオにおける経路の概略図である。 この出願の実施形態によるデバイスの概略構造図である。 この出願の実施形態によるパケット伝送方法の概略フローチャートである。 この出願の実施形態によるパケットカプセル化フォーマットの概略図である。 この出願の実施形態による他のパケットカプセル化フォーマットの概略図である。 この出願の実施形態による他のパケット伝送方法の概略フローチャートである。 この出願の実施形態による他のパケット伝送方法の概略フローチャートである。 この出願の実施形態による他のパケット伝送方法の概略フローチャートである。 この出願の実施形態によるパケット伝送装置の概略構造図である。 この出願の実施形態による他のパケット伝送装置の概略構造図である。
この出願の説明において、別段の記載がない限り、「複数」は、2つ以上を意味する。この出願の説明において、「第1」及び「第2」のような用語は、単に区別及び説明のために使用されており、相対的重要度の指示若しくは暗示又は順序の指示若しくは暗示として理解されないものとする。
図2は、この出願の実施形態が適用可能な通信システムアーキテクチャの概略図である。通信システムアーキテクチャは、複数のデバイス(サイトとも呼ばれてもよい)と、複数のクライアント、例えば、図2に示すデバイス110、デバイス120及びデバイス130とを含む。デバイス110、デバイス120及びデバイス130のうちいずれか2つは接続されてもよい。図2は、単なる一例として、デバイス110とデバイス120との間の接続関係を示す。
デバイス110、デバイス120及びデバイス130のそれぞれは、1つ以上のクライアントに接続されてもよい。図2は、単なる一例として、デバイス110に接続されたクライアント111及びクライアント112と、デバイス120に接続されたクライアント121及びクライアント122と、デバイス130に接続されたクライアント131とを示す。
2つの通信当事者として機能する2つのクライアントの間でパケットが伝送されるとき、パケットは、2つの通信当事者として機能するクライアントにそれぞれ接続されたデバイスにより転送される必要がある。2つの通信当事者がクライアント111及びクライアント121である例を使用すると、クライアント111がパケットAをクライアント121に送信する必要があるとき、パケットAが伝送される経路は、クライアント111->デバイス110->デバイス120->クライアント121であり、クライアント121がパケットBをクライアント111に送信する必要があるとき、パケットBが伝送される経路は、クライアント121->デバイス120->デバイス110->クライアント111である。
デバイス110とデバイス120との間に複数の伝送経路が存在してもよい。デバイス110とデバイス120との間にMPLS1リンク及びMPLS2リンクが存在する例が使用される。図3に示すように、デバイス110とデバイス120との間に4つの経路が存在する。経路1は、反対方向にあるpath1-1及びpath1-2を含み、path1-1は、デバイス110内にあり且つMPLS1に接続されたインタフェースから、デバイス120内にあり且つMPLS1に接続されたインタフェースへの方向であり、path1-2は、デバイス120内にあり且つMPLS1に接続されたインタフェースから、デバイス110内にあり且つMPLS1に接続されたインタフェースへの方向である。経路2は、反対方向にあるpath2-1及びpath2-2を含み、path2-1は、デバイス110内にあり且つMPLS1に接続されたインタフェースから、デバイス120内にあり且つMPLS2に接続されたインタフェースへの方向である。経路3は、反対方向にあるpath3-1及びpath3-2を含み、path3-1は、デバイス110内にあり且つMPLS2に接続されたインタフェースから、デバイス120内にあり且つMPLS1に接続されたインタフェースへの方向である。経路4は、反対方向にあるpath4-1及びpath4-2を含み、path4-1は、デバイス110内にあり且つMPLS2に接続されたインタフェースから、デバイス120内にあり且つMPLS2に接続されたインタフェースへの方向である。
デバイス110の観点からは、経路選択ポリシーは、経路選択順序がPath1->Path2->Path3->Path4であるというものである。デバイス120の観点からは、経路選択ポリシーは、経路選択順序がPath1->Path3->Path2->Path4であるというものである。デバイス110とデバイス120との間でパケットが伝送されるとき、デバイス110は、パケットを送信するためにPath1を優先的に選択し、デバイス120もまた、パケットを送信するためにPath1を優先的に選択する。Path1の品質がいくつかの場合に要件を満たさない場合、デバイス110は、パケットを送信するためにPath2を選択し、デバイス120は、パケットを送信するためにPath3を選択する。その結果、デバイス110及びデバイス120は、異なる経路を使用することにより互いにパケットを送信する。
図3に示すシナリオにおいて、デバイス110及びデバイス120が異なる経路を使用することにより互いにパケットを送信する可能性があるという問題に加えて、多くの複雑なSD-WAN経路選択シナリオにおいて、同じ経路が2つの通信当事者の間の双方向パケット伝送に使用されることを確保することも困難である。
複雑なSD-WAN経路選択シナリオにおいてサービス品質を確保しつつ、同じ経路が2つの通信当事者の間の双方向パケット伝送に使用されることを確保するために、この出願の実施形態は、パケット伝送方法を提供する。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のうちいずれか1つでもよい。デバイス400は、サイト接続管理モジュールと、リンク品質検出モジュールと、スマートポリシールーティング(smart policy routing, SPR)モジュールと、第1の転送モジュールと、第2の転送モジュールとを含んでもよい。
サイト接続管理モジュールは、デバイス400と他のデバイスとの間のリンクを確立し、デバイス400のWAN側に接続された物理インタフェースに関する情報に基づいて、デバイス400とデバイス400に接続された他のデバイスとの間の接続(以下ではリンク又は経路と呼ばれる)情報を確立し、次いで、接続情報を第1の転送モジュールに送信し、各経路の品質を検出するようにリンク品質検出モジュールに通知するように構成される。
リンク品質検出モジュールは、デバイス400とデバイス400に接続された他のデバイスとの間の経路の品質を検出するように構成される。例えば、デバイス400はデバイス410に接続され、デバイス400とデバイス410との間に4つの経路が存在する。この場合、リンク品質検出モジュールは、4つの経路の品質を検出する必要がある。次いで、リンク品質検出モジュールは、各経路の品質検出結果をサイト接続管理モジュールに送信する。
SPRモジュールは、アプリケーションのリンク品質要件と、リンクのサービスレベルアグリーメント(service level agreement, SLA)情報とに基づいて、経路選択ポリシーをリフレッシュする。SPRモジュールは、リンク品質要件を満たす経路選択ポリシーを記憶し、リンク品質要件を満たさない経路選択ポリシーを削除し、例えば、遅延又はパケットロスの条件を満たさない経路選択ポリシーを削除し、次いで、リンク品質要件を満たす経路選択ポリシーを第2の転送モジュールに配信する。例えば、経路選択ポリシーは、音声サービスに対応するアプリケーションに対してMPLSリンクが優先的に選択され、インターネット(Internet, INET)リンクが次に選択されるというものである。
第1の転送モジュールは、サイト接続管理モジュールにより配信された接続テーブルを受信するように構成され、接続テーブルは、様々なアプリケーションに対応する具体的な経路を含む。例えば、音声サービスが属するアプリケーションは、MPLS1リンク、MPLS2リンク又はINETリンクに対応する。
第2の転送モジュールは、SPRモジュールにより配信されたポリシー更新情報を受信するように構成される。例えば、ポリシー1は、音声サービスが属するアプリケーションに対してMPLSリンクが優先的に選択されることを含み、ポリシー1は、データサービスが属するアプリケーションに対してINETリンクが優先的に選択されることを含む。
デバイス400がパケットを受信した後に、第2の転送モジュールは、パケットが属するアプリケーションに対応するポリシーを決定し、次いで、第2の転送モジュールは、ポリシーに基づいて、パケットが属するアプリケーションに対応する具体的な経路を求めて接続テーブルを検索する。
図2に示すデバイス110、デバイス120及びデバイス130のうちいずれか1つは、図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経路選択シナリオであっても、サービス品質を確保しつつ、同じ経路が2つの通信当事者の間の双方向パケット伝送に使用されることを確保できる。
この出願のこの実施形態では、ステップ501が実行される前に、第2のデバイスは、まず、コントローラにより配信された主従選択ポリシーを受信し、次いで、主従選択ポリシーに基づいて、通信ピア端として機能する第1のデバイス及び第2のデバイスの中で、第2のデバイスが経路を選択する権限を有し、具体的には、第2のデバイスが主スケジューリング当事者であり、第1のデバイスがフォロー当事者であると決定してもよい。代替として、第1のデバイスは、コントローラにより配信された主従選択ポリシーを受信し、次いで、主従選択ポリシーに基づいて、通信ピア端として機能する第1のデバイス及び第2のデバイスの中で、第2のデバイスが主スケジューリング当事者であり、第1のデバイスがフォロー当事者であると決定してもよいことが理解されるべきである。したがって、第2のデバイスが第1のデバイスと通信するとき、第2のデバイスは、パケットを送信するために使用される経路を選択し、主スケジューリング識別子を、送信されるパケットに追加する。第1のデバイスは、第2のデバイスにより選択された経路を使用することによりパケットを送信し、従スケジューリング識別子を、送信されるパケットに追加する。
明らかに、ステップ501が実行される前に、代替として、第1のデバイスと第2のデバイスとの間で伝送される第1のパケットの伝送端は、2つの通信当事者のうちどちらが経路を選択する権限を有するかを決定してもよい。次いで、第1のパケットの伝送端は、決定された結果を、送信される第1のパケットに追加する。ステップ501における第1のパケットは、2つの通信当事者の間で伝送される第1のパケットでもよく、或いは、2つの通信当事者の間で伝送される第1のパケットでなくてもよい点に留意すべきである。第1のパケットが2つの通信当事者の間で伝送される第1のパケットでない場合、これは、第1のパケットが伝送される前に、少なくとも1つのパケットが2つの通信当事者の間で伝送されることを示す。
例えば、第2のデバイスにより送信される第1のパケットは、2つの通信当事者の間で伝送される第1のパケットである。第1のパケットを送信する前に、第2のデバイスは、主従選択ポリシーに基づいて、第2のデバイスが経路を選択する権限を有すると決定しさえすればよい。次いで、第1のパケットを受信した後に、第1のデバイスは、第1のパケットで搬送される主スケジューリング識別子に基づいて、第2のデバイスが主スケジューリング当事者であり、第1のデバイスがフォロー当事者であると決定できる。次いで、第1のデバイスは、第1のパケットに使用される伝送経路を使用することにより第2のパケットを直接送信できる。
例えば、第2のデバイスが第1のパケットを送信する前に、第1のデバイスは、2つのデバイス(第1のデバイス及び第2のデバイス)の間で伝送される第1のパケットを第2のデバイスに送信している。この場合、第1のパケットを送信する前に、第1のデバイスは、まず、第1のデバイスがフォロー当事者であり、第2のデバイスが主スケジューリング当事者であると決定し、次いで、第1のデバイスは、フォロー識別子を第1のパケットに追加する。第2のデバイスは、第1のパケットを受信し、第1のパケットがフォロー識別子を搬送すると決定する。この場合、第2のデバイスは、第1のデバイスがフォロー当事者であり、第2のデバイスが主スケジューリング当事者であると決定できる。したがって、第2のデバイスは、どちらの経路が第1のパケットを送信するために第1のデバイスにより使用されるかを考慮しなくてもよく、第1のパケットを送信するための第1の経路を自律的に選択する。
上記の内容で言及した主従選択ポリシーは、以下のもののうち1つ以上を含んでもよい。
第1のポリシー:第1のデバイス及び第2のデバイスの中で、より小さいリンク帯域幅を有するデバイスが経路を選択する権限を有する。第1のポリシーに基づいて、より小さいリンク帯域幅を有するデバイスは、経路を選択するための主スケジューリング当事者として機能してもよい。したがって、どちらのデバイスが主スケジューリング当事者であるかは、第1のデバイス及び第2のデバイスのリンク帯域幅に基づいて適切に決定でき、それにより、より大きいリンク帯域幅を有するデバイスが経路を選択するときに、より小さいリンクを有するデバイスについて輻輳が発生するという問題を回避する。
第2のポリシー:第1のデバイス及び第2のデバイスの中で、ブランチルータSpokeとして機能するデバイスが経路を選択する権限を有し、Hubとして機能するデバイスがSpokeとして機能するデバイスにより選択された経路に従う権限を有する。第2のポリシーに基づいて、ブランチルータSpokeとして機能するデバイスは、経路を選択するための主スケジューリング当事者として機能してもよく、それにより、Hubとして機能するデバイスが主スケジューリング当事者として経路を選択したとき、ブランチルータSpokeとして機能するデバイスについて輻輳が発生するという問題を回避する。
第3のポリシー:第1のデバイスの識別子とスケジューリング権限との間の対応関係及び第2のデバイスの識別子とスケジューリング権限との間の対応関係が使用される。例えば、第1のデバイスの識別子はID1であり、第2のデバイスの識別子はID2である。第3のポリシーは、ID1に対応するデバイスが主スケジューリング当事者であり、ID2に対応するデバイスがフォロー当事者であることを含むと仮定する。これに基づいて、第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のデバイスのうちどちらがブランチルータSpokeとして機能するか且つどちらがHubデバイスとして機能するかが決定できない場合、どちらのデバイスが経路を選択する権限を有するかは、第2のポリシーに基づいて決定できない。次いで、どちらのデバイスが経路を選択する権限を有するかは、第4のポリシーに基づいて決定される。どちらのデバイスが経路を選択する権限を有するかが第4のポリシーに基づいて決定できる場合、第4のポリシーに基づいて決定された結果が使用され、第3のポリシーに基づいて、どちらのデバイスが経路を選択する権限を有するかを決定する必要はない。優先順位は、具体的な実現シナリオに基づいて設定されてもよく、実現シナリオの変更によって変化してもよい点に留意すべきである。これは、ここでは限定されない。
ステップ502の具体的な実現方式では、第1のデバイスが第1のパケットを伝送するために使用される第1の経路を決定する方式は、以下の方式のうちいずれか1つを含んでもよいが、これらに限定されない。
方式1:第1のパケットは、経路情報を搬送し、第1のデバイスは、第1のパケットから解析を通じて経路情報を取得し、次いで、経路情報に対応する経路、すなわち、第1のパケットを伝送するために使用される第1の経路を決定する。
方式2:第1の対応関係が第1のデバイスにおいて構成され、インタフェース識別子と経路情報との間の対応関係を含む。第1のデバイスは、第1の対応関係と、第1のパケットを受信するために使用されるインタフェース識別子とに基づいて、第1のパケットを受信するために使用されるインタフェース識別子に対応する経路情報を決定し、第1のパケットを伝送するために使用される第1の経路として、決定された経路情報に対応する経路を使用してもよい。
任意選択で、第1のパケットを伝送するために使用される第1の経路は、主スケジューリング当事者として機能する第2のデバイスにより選択される。さらに、主スケジューリング当事者として機能する第2のデバイスは、経路選択ポリシーに従って第1の経路を選択してもよい。
例えば、第1のデバイスと第2のデバイスとの間に2つの経路が存在し、2つの経路はMPLS経路及びInternet経路である。第2のデバイスは、経路選択ポリシー1及び経路選択ポリシー2を記憶する。経路選択ポリシー1は、音声サービスが属するアプリケーションに対してMPLS経路が優先的に選択されることを示し、経路選択ポリシー2は、データサービスが属するアプリケーションに対してInternet経路が優先的に選択されることを示す。第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のパケットはそれぞれ、経路バージョン識別子を更に含んでもよく、経路バージョン識別子は、パケット伝送端により選択された経路が変化するか否かを識別するために使用される。第3のパケットで搬送される経路バージョン識別子が第1のパケットで搬送される経路バージョン識別子と異なると第1のデバイスが決定した場合、これは、第2のデバイスが第3のパケットを送信する前に伝送経路を再選択したことを示してもよい。この場合、第1のデバイスは、第3のパケットを伝送するために使用される第2の経路を決定し、次いで、第2の経路を使用することにより第4のパケットを第2のデバイスに送信してもよく、第4のパケットは、フォロー識別子を含む。
フォロー当事者として機能する第1のデバイスは、第2のデバイスから第1のパケットを受信した後に、第2のデバイスから第3のパケットを受信し、第1のパケットに使用される伝送経路と第3のパケットに使用される伝送経路とを比較することにより、主スケジューリング当事者として機能する第2のデバイスにより選択された経路が変化するか否かを習得してもよいことが習得できる。第1のパケット及び第3のパケットでそれぞれ搬送される経路バージョン識別子が同じであるか否かを、比較を通じて決定することにより、第1のデバイスは、第2のデバイスにより選択された伝送経路が変化するか否かを迅速に決定できる。第1のパケット及び第3のパケットでそれぞれ搬送される経路バージョン識別子が異なる場合、これは、第2のデバイスが第3のパケットを送信するときに経路を再選択したことを示してもよい。この場合、フォロー当事者として機能する第1のデバイスはまた、第4のパケットを送信するために、第2のデバイスにより選択された新たな経路を使用する。このように、主スケジューリング当事者として機能する第2のデバイスが伝送経路を変更したとき、同じ経路が2つの通信当事者の間の双方向パケット伝送に使用されることを依然として確保できる。第1のパケット及び第3のパケットでそれぞれ搬送される経路バージョン識別子が同じである場合、これは、第2のデバイスが第3のパケットを送信するときに経路を再選択していないことを示してもよく、第1のデバイスは、第3のパケットに使用される伝送経路を決定する必要がなく、依然として第1のパケットに使用される経路を使用することにより第4のパケットを送信してもよい。このように、パケット転送処理手順が高速化できる。
具体的な実現方式では、第1のパケットを送信した後、且つ、第3のパケットを送信する前に、主スケジューリング当事者として機能する第2のデバイスが、経路が再選択される必要があると決定した場合、第2のデバイスは、第3のパケットで搬送される経路バージョン識別子を、第1のパケットで搬送される経路バージョン識別子の値と異なる値に設定する。例えば、経路バージョン識別子の値は、経路が変化する毎に1だけ増加してもよい。このように、第1のデバイスは、受信した第3のパケット内の経路バージョン識別子の値と受信した前のパケット(第1のパケット)内の経路バージョン識別子の値とを比較することにより、第2のデバイスにより選択された経路が変化するか否かを決定できる。
主スケジューリング当事者として機能する第2のデバイスがパケットを送信するときに搬送される経路バージョン識別子の値は、フォロー当事者として機能する第1のデバイスがパケットを送信するときに搬送される経路バージョン識別子の値とは独立している点に留意すべきである。以下に、具体的な例を参照して説明を提供する。例えば、2つのデバイスは順にパケットを送信する。具体的なプロセスは、以下のステップを含む。
ステップ1:第2のデバイスは、経路Aを使用することにより2つのデバイスの間の第1のパケットを送信し、第1のパケットで搬送される経路バージョン識別子の値は3である。
ステップ2:第1のパケットを受信した後に、第1のデバイスは、経路Aを使用することにより2つのデバイスの間の第2のパケットを第2のデバイスに送信し、第2のパケットで搬送される経路バージョン識別子の値は2である。
ステップ3:2つのデバイスの間の第2のパケットを受信した後に、第2のデバイスは、伝送経路を変更せず、依然として経路Aを使用することにより2つのデバイスの間の第3のパケットを第1のデバイスに送信し、第3のパケットで搬送される経路バージョン識別子の値は3である。
ステップ4:第3のパケットを受信した後に、第1のデバイスは、伝送経路を変更せず、経路Aを使用することにより2つのデバイスの間の第4のパケットを第2のデバイスに送信し、第4のパケットで搬送される経路バージョン識別子の値は2である。
ステップ5:2つのデバイスの間の第4のパケットを受信した後に、第2のデバイスは、伝送経路を変更し、経路Bを使用することにより2つのデバイスの間の第5のパケットを第1のデバイスに送信し、第5のパケットで搬送される経路バージョン識別子の値は4である。
ステップ6:第5のパケットを受信した後に、第1のデバイスもまた、伝送経路を変更し、経路Bを使用することにより2つのデバイスの間の第6のパケットを第2のデバイスに送信し、第6のパケットで搬送される経路バージョン識別子の値は3である。
ステップ5において第2のデバイスが伝送経路を変更するとき、第5のパケットで搬送される経路バージョン識別子の値は、ステップ3において第2のデバイスにより送信された第3のパケット(すなわち、第5のパケットが第2のデバイスにより送信される現在のパケットであるとき、第3のパケットは、第2のデバイスにより送信される現在のパケットの前のパケットである)で搬送される経路バージョン識別子に基づいて変化することが理解されるべきである。対応して、ステップ6において第1のデバイスが伝送経路を変更するとき、第6のパケットで搬送される経路バージョン識別子の値は、ステップ4において第1のデバイスにより送信された第4のパケット(すなわち、第6のパケットが第1のデバイスにより送信される現在のパケットであるとき、第4のパケットは、第1のデバイスにより送信される現在のパケットの前のパケットである)で搬送される経路バージョン識別子に基づいて変化する。
第1のパケット及び第3のパケット以外のパケットもまた、経路バージョン識別子を搬送してもよい点に留意すべきである。例えば、第1のパケット、第4のパケット及びこの出願のこの実施形態において第1のデバイスと第2のデバイスとの間で以降に伝送されるパケットのそれぞれもまた、経路バージョン識別子を搬送してもよい。
第1のデバイスと第2のデバイスとの間の通信プロセスにおいて、第1のデバイス及び第2のデバイスの一方又は双方について輻輳が発生する可能性がある。この場合、リンク品質が低下し、ユーザ体験が影響を受ける。経路が輻輳しているデバイスは、輻輳を他のデバイスに適時に通知するために、順方向輻輳バックプレッシャー識別子及び/又は逆方向輻輳バックプレッシャー識別子をパケットに追加してもよい。順方向輻輳バックプレッシャー識別子は、デバイスの送信方向の経路が輻輳しているか否かを示し、逆方向輻輳バックプレッシャー識別子は、デバイスの受信方向の経路が輻輳しているか否かを示す。
可能な実現方式では、フォロー識別子に加えて、第2のパケットは、逆方向輻輳バックプレッシャー識別子を更に含んでもよい。ステップ502において第2のデバイスから第1のパケットを受信した後に、第1のデバイスは、第1のデバイスの受信方向の経路が輻輳しているか否かを更に決定し、第1のデバイスの受信方向の経路が輻輳している場合、第2のパケットに含まれる逆方向輻輳バックプレッシャー識別子を第1の値に設定してもよく、或いは、第1のデバイスの受信方向の経路が輻輳していない場合、第2のパケットに含まれる逆方向輻輳バックプレッシャー識別子を第2の値に設定してもよい。したがって、逆方向輻輳バックプレッシャー識別子を、送信される第2のパケットに追加することにより、第1のデバイスは、第1のデバイスの受信方向が輻輳しているか否かを第2のデバイスに適時に通知できる。
可能な実現方式では、フォロー識別子に加えて、第2のパケットは、順方向輻輳バックプレッシャー識別子を更に含んでもよい。ステップ503の前に、第1のデバイスは、第1のデバイスの送信方向の経路が輻輳しているか否かを更に決定し、第1のデバイスの送信方向の経路が輻輳している場合、第2のパケットに含まれる順方向輻輳バックプレッシャー識別子を第1の値に設定してもよく、或いは、第1のデバイスの送信方向の経路が輻輳していない場合、第2のパケットに含まれる順方向輻輳バックプレッシャー識別子を第2の値に設定してもよい。このように、順方向輻輳バックプレッシャー識別子を、送信される第2のパケットに追加することにより、第1のデバイスは、第1のデバイスの送信方向が輻輳しているか否かを第2のデバイスに適時に通知できる。
輻輳が第1のデバイスの受信方向のみに発生する場合、第2のパケットは、逆方向輻輳バックプレッシャー識別子のみを搬送してもよく、或いは、逆方向輻輳バックプレッシャー識別子及び順方向輻輳バックプレッシャー識別子の双方を搬送してもよい点に留意すべきである。2つの識別子の双方が搬送される場合、逆方向輻輳バックプレッシャー識別子は、第1の値に設定される必要があり、順方向輻輳バックプレッシャー識別子は、第2の値に設定される必要がある。輻輳が第1のデバイスの送信方向のみに発生する場合、第2のパケットは、順方向輻輳バックプレッシャー識別子のみを搬送してもよく、或いは、逆方向輻輳バックプレッシャー識別子及び順方向輻輳バックプレッシャー識別子の双方を搬送してもよい。識別子の双方が搬送される場合、順方向輻輳バックプレッシャー識別子は、第1の値に設定される必要があり、逆方向輻輳バックプレッシャー識別子は、第2の値に設定される必要がある。輻輳が第1のデバイスの送信方向及び受信方向の双方に発生する場合、第2のパケットは、逆方向輻輳バックプレッシャー識別子及び順方向輻輳バックプレッシャー識別子の双方を搬送してもよく、順方向輻輳バックプレッシャー識別子及び逆方向輻輳バックプレッシャー識別子の双方は、第1の値に設定される。
第1のデバイスと第2のデバイスとの間で伝送されるいずれかのパケットは、逆方向輻輳バックプレッシャー識別子及び/又は順方向輻輳バックプレッシャー識別子を搬送してもよいことが理解されるべきである。具体的な実現方式では、パケットが2つの識別子の一方を搬送するか双方を搬送するかは、特定の状況に依存し、ここでは限定されない。
この出願のこの実施形態では、4つの追加の識別子、すなわち、主スケジューリング識別子又はフォロー識別子、経路バージョン識別子、逆方向輻輳バックプレッシャー識別子及び順方向輻輳バックプレッシャー識別子は、2つの方式で、パケットで搬送されてもよい。主スケジューリング識別子又はフォロー識別子は1bitを占有し、逆方向輻輳バックプレッシャー識別子は1bitを占有し、順方向輻輳バックプレッシャー識別子は1bitを占有し、経路バージョン識別子は4bitを占有する。
具体的な実現方式では、パケットは、少なくとも主スケジューリング識別子又はフォロー識別子を含み、経路バージョン識別子、逆方向輻輳バックプレッシャー識別子及び順方向輻輳バックプレッシャー識別子を搬送してもよく或いは搬送しなくてもよい。これは以下のように理解されてもよい。パケットは、上記の4つの追加の識別子を搬送してもよく、或いは、上記の4つの識別子のうちいくつかのみを搬送してもよい。以下に、パケットが上記の4つの追加の識別子を搬送する例を使用することにより説明を提供する。
4つの識別子は、複数の任意選択の方式で、パケットで搬送されてもよい。この実施形態では、2つの可能な搬送方式のみが例として使用される。1つの方式では、図6に示すように、オーバレイ(Overlay)接続のトンネルカプセル化プロセス、例えば、汎用ルーティングカプセル化(Generic Routing Encapsulation, GRE)拡張カプセル化において、上記の4つの識別子が、拡張カプセル化フィールドを追加することにより追加される。上記の4つの識別子を追加するために、従来技術におけるデータパケット内のペイロード(payload)の前に7bitが追加されてもよい。図6に示すように、追加のフィールドV.は、経路バージョン識別子versionを示し、BBPは、逆方向輻輳バックプレッシャー識別子back congestion bit pressureを示し、FBPは、順方向輻輳バックプレッシャー識別子forwarding congestion bit pressureを示し、Bは、所有者識別子を示し、主スケジューリング識別子又はフォロー識別子でもよい。
他の方式では、Overlayカプセル化のないシナリオ、又は中間デバイスがトンネル拡張カプセル化をサポートしないシナリオについては、図7に参照が行われてもよい。IPヘッダ又はトンネルの内部パケットのIPヘッダ内の予備フィールド(例えば、1つの利用可能なビットを有する図7におけるFlags)又は非常用フィールド(例えば、2つの利用可能なビットを有する図7におけるtype of service)は、上記の4つの追加の識別子を搬送するために使用される。従来技術における予備フィールドは、如何なる情報も含まない。予備フィールド又は非常用フィールドのビットの総数が上記の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のデバイスにより選択された伝送経路を使用することによりパケットを送信してもよく、それにより、第1のデバイス及び第2のデバイスは、同じ伝送経路を使用することによりパケットを送信する。これは、複雑なSD-WAN経路選択シナリオであっても、サービス品質を確保しつつ、同じ経路が2つの通信当事者の間の双方向パケット伝送に使用されることを確保できる。
この出願のこの実施形態では、ステップ801が実行される前に、第2のデバイスは、まず、コントローラにより配信された主従選択ポリシーを受信し、次いで、主従選択ポリシーに基づいて、通信ピア端として機能する第1のデバイス及び第2のデバイスの中で、第1のデバイスが経路を選択する権限を有し、具体的には、第1のデバイスが主スケジューリング当事者であり、第2のデバイスがフォロー当事者であると決定してもよい。代替として、第1のデバイスは、コントローラにより配信された主従選択ポリシーを受信し、次いで、主従選択ポリシーに基づいて、通信ピア端として機能する第1のデバイス及び第2のデバイスの中で、第1のデバイスが主スケジューリング当事者であり、第2のデバイスがフォロー当事者であると決定してもよいことが理解されるべきである。したがって、第1のデバイスが第2のデバイスと通信するとき、第1のデバイスは、パケットを送信するために使用される経路を選択し、主スケジューリング識別子を、送信されるパケットに追加する。第2のデバイスは、第1のデバイスにより選択された経路を使用することによりパケットを送信し、従スケジューリング識別子を、送信されるパケットに追加する。
明らかに、ステップ801が実行される前に、第1のデバイスと第2のデバイスとの間で伝送される第1のパケットの伝送端は、2つの通信当事者のうちどちらが経路を選択する権限を有するかを決定してもよい。次いで、第1のパケットの伝送端は、決定された結果を、送信される第1のパケットに追加する。これは以下のように理解されてもよい。ステップ801における第1のパケットが第1のデバイスと第2のデバイスとの間で伝送される第1のパケットである場合、第2のデバイスは、どちらのデバイスが主スケジューリング当事者であり、どちらのデバイスがフォロー当事者であるかを決定してもよい。次いで、フォロー識別子を搬送する第1のパケットを受信した後に、第1のデバイスは、第2のデバイスがフォロー当事者であることを習得し、したがって、第1のデバイスが主スケジューリング当事者であると決定できる。この場合、第1のデバイスは、主スケジューリング識別子を、以降に送信される第2のパケットに追加する。
主従選択ポリシーは、以下のもの、すなわち、第1のデバイス及び第2のデバイスの中で、より小さいリンク帯域幅を有するデバイスが経路を選択する権限を有するという第1のポリシー、第1のデバイス及び第2のデバイスの中で、ブランチルータSpokeとして機能するデバイスが経路を選択する権限を有し、Hubとして機能するデバイスがSpokeとして機能するデバイスにより選択された経路に従う権限を有するという第2のポリシー、第1のデバイスの識別子とスケジューリング権限との間の対応関係及び第2のデバイスの識別子とスケジューリング権限との間の対応関係である第3のポリシー、並びに、第1のデバイスのシステムIPアドレスとスケジューリング権限との間の対応関係及び第2のデバイスのシステムIPアドレスとスケジューリング権限との間の対応関係である第4のポリシーのうち1つ以上を含んでもよい。主従選択ポリシーは、上記の4つのポリシーを含んでもよいが、これらに限定されないことが理解されるべきである。この出願のこの実施形態では、主従選択ポリシーの具体的な内容について、実施形態1における関連する内容の説明に参照が行われてもよい。詳細はここでは説明しない。
この出願のこの実施形態では、ステップ804において、主スケジューリング当事者として機能する第1のデバイスは、第1の経路を使用することにより第2のパケットを送信する。主スケジューリング識別子を搬送する第2のパケットを受信した後に、フォロー当事者として機能する第2のデバイスもまた、第2のパケットを伝送するために使用される第1の経路を決定した後に、次のパケットを送信するために、第1の経路を使用する。具体的には、第2のデバイスは、第3のパケットを第1のデバイスに送信し、第3のパケットはフォロー識別子を含み、第3のパケットの伝送経路は第1の経路である。対応して、第1のデバイスは、第2のデバイスから第3のパケットを受信してもよい。このように、フォロー当事者として機能する第2のデバイスは、主スケジューリング当事者として機能する第1のデバイスにより選択された伝送経路を使用することによりパケットを送信する。これは、同じ経路が2つの通信当事者の間の双方向パケット伝送に使用されることを効果的に確保できる。
第1のデバイスと第2のデバイスとの間の通信プロセスにおいて、第1のデバイス及び第2のデバイスの一方又は双方について輻輳が発生する可能性がある。この場合、リンク品質が低下し、ユーザ体験が影響を受ける。経路が輻輳しているデバイスは、輻輳を他のデバイスに適時に通知するために、順方向輻輳バックプレッシャー識別子及び/又は逆方向輻輳バックプレッシャー識別子をパケットに追加してもよい。順方向輻輳バックプレッシャー識別子は、デバイスの送信方向の経路が輻輳しているか否かを示し、逆方向輻輳バックプレッシャー識別子は、デバイスの受信方向の経路が輻輳しているか否かを示す。
可能な実現方式では、フォロー識別子に加えて、第1のパケットは、順方向輻輳バックプレッシャー識別子及び/逆方向バックプレッシャー識別子を更に含んでもよい。ステップ803の後に、第1のパケットが予め設定された条件を満たしており、第1のデバイスの受信方向の経路も第1のデバイスの送信方向の経路も輻輳していない場合、第1のデバイスは、経路を選択する権限を放棄する。予め設定された条件は、第1のパケットに含まれる順方向輻輳バックプレッシャー識別子が第1の値であること、及び/又は、第1のパケットに含まれる逆方向輻輳バックプレッシャー識別子が第1の値であることを含み、第1の値は、輻輳が発生していることを示すために使用される。次いで、第1のデバイスは、第1の経路を使用することにより第4のパケットを第2のデバイスに送信し、第4のパケットは、フォロー識別子を含み、第4のパケットで搬送される順方向輻輳バックプレッシャー識別子及び逆方向輻輳バックプレッシャー識別子の双方は第2の値であり、第2の値は、輻輳が発生していないことを示すために使用される。
主スケジューリング当事者として機能する第1のデバイスが第2のデバイスから第1のパケットを受信した後に、第1のパケットが順方向輻輳バックプレッシャー識別子を含む場合、第1のデバイスは、第1のパケットに含まれる順方向輻輳バックプレッシャー識別子の値に基づいて、第2のデバイスの送信方向の経路が輻輳しているか否かを決定してもよく、或いは、第1のパケットが逆方向輻輳バックプレッシャー識別子を含む場合、第1のデバイスは、第1のパケットに含まれる逆方向輻輳バックプレッシャー識別子の値に基づいて、第2のデバイスの受信方向の経路が輻輳しているか否かを決定してもよい。さらに、第1のデバイスの受信方向の経路も第1のデバイスの送信方向の経路も輻輳しておらず、第2のデバイスの少なくとも1つの方向の経路が輻輳しているとき、第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つの経路が輻輳している場合、第1のデバイスは、経路を選択する権限を放棄しない。これは以下のように理解されてもよい。第2のデバイスの受信方向及び送信方向のうち少なくとも1つの経路が輻輳しており、第1のデバイスの受信方向及び送信方向のうち少なくとも1つの経路が輻輳している場合、第1のデバイスは、依然として経路を選択する権限を留保する。これは、第1のデバイスが経路を選択する権限を放棄するとき、第2のデバイスが依然として第1のデバイスの方向に輻輳を引き起こす経路を選択する可能性があるという問題を回避できる。
通信ピア端により使用される経路が変化するか否かを迅速に決定するために、この出願のこの実施形態は、可能な実現方式を提供する。第1のパケット及び第2のパケットはそれぞれ、経路バージョン識別子を更に含み、経路バージョン識別子は、パケット伝送端により選択された経路が変化するか否かを識別するために使用される。ステップ802の後、且つ、ステップ803の前に、第1のデバイスがパケットを送信するために使用される伝送経路を再選択することを決定した場合、第1のデバイスは、第2のパケットに含まれる経路バージョン識別子を第3の値に設定し、第3の値は、第1のデバイスにより選択された経路が変化することを示すために使用され、或いは、第1のデバイスがパケットを送信するために使用される伝送経路を変更しないことを決定した場合、第1のデバイスは、第2のパケットに含まれる経路バージョン識別子を第4の値に設定し、第4の値は、第1のデバイスにより選択された経路が変化しないことを示すために使用される。このように、第1のパケットを送信した後に、主スケジューリング当事者として機能する第1のデバイスがパケットを送信するために使用される伝送経路を再選択する必要がある場合、第1のデバイスは、値が第1のパケットに対応する値と異なる経路バージョン識別子を第2のパケットに追加してもよく、それにより、第2のデバイスは、第1のデバイスにより選択された伝送経路が変化することを適時に習得でき、或いは、値が第1のパケットに対応する値と同じである経路バージョン識別子を第2のパケットに追加してもよく、それにより、第2のデバイスは、第1のデバイスにより選択された伝送経路が変化しないことを適時に習得できる。
第1のデバイスと第2のデバイスとの間で伝送されるいずれかのパケットは、逆方向輻輳バックプレッシャー識別子及び/又は順方向輻輳バックプレッシャー識別子を搬送してもよいことが理解されるべきである。具体的な実現方式では、パケットが2つの識別子の一方を搬送するか双方を搬送するかは、特定の状況に依存し、ここでは限定されない。
この出願のこの実施形態では、4つの追加の識別子、すなわち、主スケジューリング識別子又はフォロー識別子、経路バージョン識別子、逆方向輻輳バックプレッシャー識別子及び順方向輻輳バックプレッシャー識別子は、2つの方式で、パケットで搬送されてもよい。主スケジューリング識別子又はフォロー識別子は1bitを占有し、逆方向輻輳バックプレッシャー識別子は1bitを占有し、順方向輻輳バックプレッシャー識別子は1bitを占有し、経路バージョン識別子は4bitを占有する。
具体的な実現方式では、パケットは、少なくとも主スケジューリング識別子又はフォロー識別子を含み、経路バージョン識別子、逆方向輻輳バックプレッシャー識別子及び順方向輻輳バックプレッシャー識別子を搬送してもよく或いは搬送しなくてもよい。これは以下のように理解されてもよい。パケットは、上記の4つの追加の識別子を搬送してもよく、或いは、上記の4つの識別子のうちいくつかのみを搬送してもよい。
この出願のこの実施形態では、4つの追加の識別子の関連する内容については、実施形態1における関連する説明に参照が行われてもよい。詳細はここでは説明しない。
以下に、図9A及び図9Bを参照して、上記のパケット伝送方法の可能な実現方式について詳細に説明する。
図9A及び図9Bは、この出願の実施形態による他のパケット伝送方法の一例の概略フローチャートである。当該方法では、第1のデバイスは主スケジューリング当事者として機能し、第2のデバイスはフォロー当事者として機能する。2つのデバイスの間で伝送されるパケットで搬送される内容は、[経路バージョン識別子、逆方向輻輳バックプレッシャー識別子、順方向輻輳バックプレッシャー識別子及び所有者識別子]として示されてもよく、所有者識別子は、主スケジューリング識別子又はフォロー識別子である。当該方法は以下のステップを含む。
ステップ901:第1のデバイスは、経路Eを使用することによりパケットAを第2のデバイスに送信し、パケットAは[3,0,0,1]を含み、パケットAで搬送される経路バージョン識別子の初期値は3に設定され、逆方向輻輳バックプレッシャー識別子の値及び順方向輻輳バックプレッシャー識別子の値は共に0に設定され、第1のデバイスの送信方向の経路も受信方向の経路も輻輳していないことを示し、値が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を受信し、パケットB内で、値が1に設定された逆方向輻輳バックプレッシャー識別子と、値が1に設定された順方向輻輳バックプレッシャー識別子とに基づいて、第2のデバイスの送信方向及び受信方向の双方の経路が輻輳していると決定し、第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は、他のデバイス又は装置(例えば、第2のデバイス又はコントローラ)と通信する際に装置1000をサポートするように構成される。処理モジュール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のパケットは、フォロー識別子を含み、フォロー識別子は、当該装置が当該装置以外のデバイスにより選択された伝送経路を使用することによりパケットを送信することを識別するために使用される。
この出願のこの実施形態におけるモジュールへの分割は一例であり、単なる論理的な機能分割であり、実際の実現方式では他の分割でもよい。さらに、この出願の実施形態における機能モジュールは1つのプロセッサに統合されてもよく、或いは、モジュールのそれぞれが物理的に単独で存在してもよく、或いは、2つ以上のモジュールが1つのモジュールに統合されてもよい。統合されたモジュールは、ハードウェアの形式で実現されてもよく、或いは、ソフトウェア機能モジュールの形式で実現されてもよい。
図11に示すように、統合されたモジュールがハードウェアの形式で実現され得るとき、パケット伝送装置はプロセッサ1102を含んでもよい。モジュールに対応する物理ハードウェアはプロセッサ1102でもよい。プロセッサ1102は、中央処理装置(英語:central processing unit, 略称CPU)、デジタル処理モジュール等でもよい。パケット伝送装置は、通信インタフェース1101を更に含んでもよく、プロセッサ1102は、通信インタフェース1101を通じてパケットを受信及び送信する。当該装置は、プロセッサ1102により実行されるプログラムを記憶するように構成されたメモリ1103を更に含む。メモリ1103は、不揮発性メモリ、例えば、ハードディスクドライブ(英語:hard disk drive, 略称HDD)又はソリッドステートドライブ(英語:solid-state drive, 略称SSD)でもよく、或いは、揮発性メモリ(英語:volatile memory)、例えば、ランダムアクセスメモリ(英語:random-access memory, 略称RAM)でもよい。メモリ113は、命令又はデータ構造の形式で想定されるプログラムコードを搬送又は記憶するように構成でき且つコンピュータにアクセス可能ないずれかの他の媒体であるが、これに限定されない。
プロセッサ1102は、メモリ1103に記憶されたプログラムコードを実行するように構成され、図5に示す実施形態における方法を実行するように、或いは、図8に示す実施形態における方法を実行するように構成される。この出願では、詳細はここでは説明しない。
通信インタフェース1101とプロセッサ1102とメモリ1103との間の具体的な接続媒体は、この出願のこの実施形態では限定されない。この出願のこの実施形態では、図11において、メモリ1103、プロセッサ1102及び通信インタフェース1101は、バス1104を使用することにより接続され、バスは、図11において太線により表される。他のコンポーネントの間の接続方式は、単に概略的に記載されており、ここでは限定されない。バスは、アドレスバス、データバス、制御バス等に分類されてもよい。表現を容易にするために、図11におけるバスを表すために1つの太線のみが使用されるが、これは、1つのみのバス又は1つのタイプのバスのみが存在することを意味するものではない。
本発明の実施形態は、上記のプロセッサの実行のために実行される必要があるコンピュータソフトウェア命令を記憶するように構成されたコンピュータ読み取り可能記憶媒体を更に提供し、命令は、上記のプロセッサの実行のために実行される必要があるプログラムを含む。
この出願の実施形態は、命令を含むコンピュータプログラムプロダクトを提供する。コンピュータプログラムプロダクトがコンピュータ上で実行されたとき、コンピュータは、図5、図8、又は図9A及び図9Bにおけるパケット伝送方法を実行することが可能になる。
この出願の実施形態は、チップシステムを提供する。チップシステムは、図5、図8、又は図9A及び図9Bにおけるパケット伝送方法における機能を実現する際に、パケット伝送装置をサポートするように構成されたプロセッサを含む。可能な設計では、チップシステムは、パケット伝送装置に必要なプログラム命令及びデータを記憶するように構成されたメモリを更に含む。チップシステムは、チップを含んでもよく、或いは、チップ及び他の個別部品を含んでもよい。
当業者は、この出願の実施形態が、方法、システム又はコンピュータプログラムプロダクトとして提供されてもよいことを理解すべきである。したがって、この出願は、ハードウェアのみの実施形態、ソフトウェアのみの実施形態、又はソフトウェアとハードウェアとの組み合わせを有する実施形態の形式を使用してもよい。さらに、この出願は、コンピュータ使用可能プログラムコードを含む1つ以上のコンピュータ使用可能記憶媒体(磁気ディスクストレージ、CD-ROM、光メモリ等を含むが、これらに限定されない)上に実現されたコンピュータプログラムプロダクトの形式を使用してもよい。
この出願は、この出願による方法、デバイス(システム)及びコンピュータプログラムプロダクトのフローチャート及び/又はブロック図を参照して記載されている。コンピュータプログラム命令は、フローチャート及び/又はブロック図内の各プロセス及び/又は各ブロックと、フローチャート及び/又はブロック図内のプロセス及び/又はブロックの組み合わせを実現するために使用されてもよいことが理解されるべきである。これらのコンピュータプログラム命令は、マシンを生成するために、汎用コンピュータ、専用コンピュータ、埋め込みプロセッサ又は他のプログラム可能データ処理デバイスのプロセッサに提供されてもよく、それにより、コンピュータ又は他のプログラム可能データ処理デバイスのプロセッサにより実行される命令は、フローチャート内の1つ以上のプロセス及び/又はブロック図内の1つ以上のブロックにおいて、指定の機能を実現するための装置を生成する。
これらのコンピュータプログラム命令は、代替として、コンピュータ又は他のプログラム可能データ処理デバイスに対して特定の方式で動作するように命令できるコンピュータ読み取り可能メモリに記憶されてもよく、それにより、コンピュータ読み取り可能メモリに記憶された命令は、命令装置を含むアーチファクトを生成する。命令装置は、フローチャート内の1つ以上のプロセス及び/又はブロック図内の1つ以上のブロックにおいて、指定の機能を実現する。
これらのコンピュータプログラム命令は、代替として、コンピュータ又は他のプログラム可能データ処理デバイスにロードされてもよく、それにより、コンピュータで実現される処理を生成するように、一連の操作及びステップがコンピュータ又は他のプログラム可能デバイス上で実行される。したがって、コンピュータ又は他のプログラム可能デバイス上で実行される命令は、フローチャート内の1つ以上のプロセス及び/又はブロック図内の1つ以上のブロックにおいて、指定の機能を実現するためのステップを提供する。
明らかに、当業者は、この出願の範囲から逸脱することなく、この出願に様々な修正及び変更を加えることができる。この出願は、これらの修正及び変更がこの出願の特許請求の範囲及びその等価な技術の範囲内に入る限り、この出願のこれらの修正及び変更をカバーすることを意図する。

Claims (23)

  1. パケット伝送方法であって、当該方法は、
    第1のデバイスにより、第2のデバイスから第1のパケットを受信するステップであり、前記第1のパケットは、主スケジューリング識別子を含み、前記主スケジューリング識別子は、前記第2のデバイスが経路を選択する権限を有することを識別するために使用される、ステップと、
    前記第1のデバイスにより、前記第1のパケットを伝送するために使用される第1の経路を決定するステップと、
    前記第1のデバイスにより、前記第1の経路を使用することにより第2のパケットを前記第2のデバイスに送信するステップであり、前記第2のパケットは、フォロー識別子を含み、前記フォロー識別子は、前記第1のデバイスが前記第1のデバイス以外のデバイスにより選択された伝送経路を使用することによりパケットを送信することを識別するために使用される、ステップと
    を含む方法。
  2. 前記第1のパケットは、経路バージョン識別子を更に含み、
    前記経路バージョン識別子は、パケット伝送端により選択された経路が変化するか否かを識別するために使用され、
    前記第1のデバイスにより、前記第1の経路を使用することにより第2のパケットを前記第2のデバイスに送信した後に、当該方法は、
    前記第1のデバイスにより、前記第2のデバイスから第3のパケットを受信するステップであり、前記第3のパケットは、前記主スケジューリング識別子と経路バージョン識別子とを含む、ステップと、
    前記第3のパケットで搬送される前記経路バージョン識別子が前記第1のパケットで搬送される前記経路バージョン識別子と異なると前記第1のデバイスが決定した場合、前記第3のパケットを伝送するために使用される第2の経路を決定するステップと、
    前記第1のデバイスにより、前記第2の経路を使用することにより第4のパケットを前記第2のデバイスに送信するステップであり、前記第4のパケットは、前記フォロー識別子を含む、ステップと
    を更に含む、請求項1に記載の方法。
  3. 前記第1のデバイスにより、前記第1のパケットを伝送するために使用される第1の経路を決定するステップは、
    前記第1のデバイスにより、前記第1のパケットから解析を通じて前記第1の経路を取得するステップ、又は、
    前記第1のデバイスにより、第1の対応関係と、前記第1のパケットを受信するために使用されるインタフェース識別子とに基づいて、前記第1のパケットを受信するために使用される前記インタフェース識別子に対応する経路情報を決定し、前記第1のパケットを伝送するために使用される前記第1の経路として、前記決定された経路情報に対応する経路を使用するステップであり、前記第1の対応関係は、前記インタフェース識別子と前記経路情報との間の対応関係を含む、ステップ
    を含む、請求項1に記載の方法。
  4. 前記第2のパケットは、逆方向輻輳バックプレッシャー識別子を更に含み、
    第1のデバイスにより、第2のデバイスから第1のパケットを受信した後に、当該方法は、
    前記第1のデバイスにより、前記第1のデバイスの受信方向の経路が輻輳しているか否かを決定し、前記第1のデバイスの前記受信方向の前記経路が輻輳している場合、前記第2のパケットに含まれる前記逆方向輻輳バックプレッシャー識別子を第1の値に設定するか、或いは、前記第1のデバイスの前記受信方向の前記経路が輻輳していない場合、前記第2のパケットに含まれる前記逆方向輻輳バックプレッシャー識別子を第2の値に設定するステップを更に含む、請求項1乃至3のうちいずれか1項に記載の方法。
  5. 前記第2のパケットは、順方向輻輳バックプレッシャー識別子を更に含み、
    前記第1のデバイスにより、前記第1の経路を使用することにより第2のパケットを前記第2のデバイスに送信する前に、当該方法は、
    前記第1のデバイスにより、前記第1のデバイスの送信方向の経路が輻輳しているか否かを決定し、前記第1のデバイスの前記送信方向の前記経路が輻輳している場合、前記第2のパケットに含まれる前記順方向輻輳バックプレッシャー識別子を前記第1の値に設定するか、或いは、前記第1のデバイスの前記送信方向の前記経路が輻輳していない場合、前記第2のパケットに含まれる前記順方向輻輳バックプレッシャー識別子を前記第2の値に設定するステップを更に含む、請求項1乃至4のうちいずれか1項に記載の方法。
  6. パケット伝送方法であって、当該方法は、
    第1のデバイスにより、第2のデバイスから第1のパケットを受信するステップであり、前記第1のパケットは、フォロー識別子を含み、前記フォロー識別子は、前記第2のデバイスが前記第2のデバイス以外のデバイスにより選択された伝送経路を使用することにより前記パケットを送信することを識別するために使用される、ステップと、
    前記第1のデバイスにより、経路選択ポリシーに基づいて、第2のパケットを送信するために使用される第1の経路を決定するステップと、
    前記第1のデバイスにより、前記第1の経路を使用することにより前記第2のパケットを前記第2のデバイスに送信するステップであり、前記第2のパケットは、主スケジューリング識別子を含み、前記主スケジューリング識別子は、前記第1のデバイスが経路を選択する権限を有することを識別するために使用される、ステップと
    を含む方法。
  7. 前記第1のデバイスにより、前記第1の経路を使用することにより前記第2のパケットを前記第2のデバイスに送信した後に、当該方法は、
    前記第1のデバイスにより、前記第2のデバイスから第3のパケットを受信するステップであり、前記第3のパケットは、前記フォロー識別子を含み、前記第3のパケットの伝送経路は、前記第1の経路である、ステップを更に含む、請求項6に記載の方法。
  8. 前記第1のパケットは、順方向輻輳バックプレッシャー識別子及び/又は逆方向輻輳バックプレッシャー識別子を更に含み、
    前記第1のデバイスにより、経路選択ポリシーに基づいて、第2のパケットを送信するために使用される第1の経路を決定した後に、当該方法は、
    前記第1のパケットが予め設定された条件を満たしており、前記第1のデバイスの受信方向の経路も前記第1のデバイスの送信方向の経路も輻輳していない場合、前記第1のデバイスにより、経路を選択する前記権限を放棄するステップであり、前記予め設定された条件は、前記第1のパケットに含まれる前記順方向輻輳バックプレッシャー識別子が第1の値であること、及び/又は、前記第1のパケットに含まれる前記逆方向輻輳バックプレッシャー識別子が前記第1の値であることを含み、前記第1の値は、輻輳が発生していることを示すために使用される、ステップと、
    前記第1のデバイスにより、前記第1の経路を使用することにより第4のパケットを前記第2のデバイスに送信するステップであり、前記第4のパケットは、前記フォロー識別子を含み、前記第4のパケットで搬送される順方向輻輳バックプレッシャー識別子及び逆方向輻輳バックプレッシャー識別子の双方は第2の値であり、前記第2の値は、輻輳が発生していないことを示すために使用される、ステップと
    を更に含む請求項6に記載の方法。
  9. 前記第1のデバイスにより、前記第1の経路を使用することにより第4のパケットを前記第2のデバイスに送信した後に、当該方法は、
    前記第1のデバイスにより、前記第2のデバイスから第5のパケットを受信するステップであり、前記第5のパケットは、主スケジューリング識別子を含み、前記第5のパケットの伝送経路は、前記経路選択ポリシーに従って前記第2のデバイスにより選択された第4の経路である、ステップを更に含む、請求項8に記載の方法。
  10. 前記第1のパケット及び前記第2のパケットはそれぞれ、経路バージョン識別子を更に含み、前記経路バージョン識別子は、パケット伝送端により選択された経路が変化するか否かを識別するために使用され、
    第1のデバイスにより、第2のデバイスから第1のパケットを受信した後、且つ、前記第1のデバイスにより、経路選択ポリシーに基づいて、第2のパケットを送信するために使用される第1の経路を決定する前に、当該方法は、
    前記第1のデバイスが前記パケットを送信するために使用される伝送経路を再選択することを決定した場合、前記第2のパケットに含まれる経路バージョン識別子を第3の値に設定するステップであり、前記第3の値は、前記第1のデバイスにより選択された前記経路が変化することを示すために使用される、ステップ、又は、
    前記第1のデバイスが前記パケットを送信するために使用される伝送経路を変更しないことを決定した場合、前記第2のパケットに含まれる経路バージョン識別子を第4の値に設定するステップであり、前記第4の値は、前記第1のデバイスにより選択された前記経路が変化しないことを示すために使用される、ステップ
    を更に含む、請求項6に記載の方法。
  11. 第1のデバイスにより、第2のデバイスから第1のパケットを受信する前に、当該方法は、
    前記第1のデバイスにより、コントローラにより配信された主従選択ポリシーを受信するステップと、
    前記第1のデバイスにより、前記主従選択ポリシーに基づいて、前記第1のデバイスが経路を選択する前記権限を有するか否かを決定するステップであり、前記主従選択ポリシーは、以下のもの、すなわち、
    前記第1のデバイス及び前記第2のデバイスの中で、より小さいリンク帯域幅を有するデバイスが経路を選択する前記権限を有することと、
    前記第1のデバイス及び前記第2のデバイスの中で、ブランチルータSpokeとして機能するデバイスが経路を選択する前記権限を有し、Hubとして機能するデバイスが前記Spokeとして機能する前記デバイスにより選択された前記経路に従う権限を有することと、
    前記第1のデバイスの識別子とスケジューリング権限との間の対応関係及び前記第2のデバイスの識別子とスケジューリング権限との間の対応関係と、
    前記第1のデバイスのシステムIPアドレスとスケジューリング権限との間の対応関係及び前記第2のデバイスのシステムIPアドレスとスケジューリング権限との間の対応関係と
    のうち少なくとも1つ以上を含む、ステップと
    を更に含む、請求項6乃至10のうちいずれか1項に記載の方法。
  12. パケット伝送装置であって、当該装置は、
    第2のデバイスから第1のパケットを受信するように構成されたトランシーバモジュールであり、前記第1のパケットは、主スケジューリング識別子を含み、前記主スケジューリング識別子は、前記第2のデバイスが経路を選択する権限を有することを識別するために使用される、トランシーバモジュールと、
    前記第1のパケットを伝送するために使用される第1の経路を決定するように構成された処理モジュールと
    を含み、
    前記トランシーバモジュールは、前記第1の経路を使用することにより第2のパケットを前記第2のデバイスに送信するように更に構成され、前記第2のパケットは、フォロー識別子を含み、前記フォロー識別子は、当該装置が当該装置以外のデバイスにより選択された伝送経路を使用することにより前記パケットを送信することを識別するために使用される、装置。
  13. 前記第1のパケットは、経路バージョン識別子を更に含み、
    前記経路バージョン識別子は、パケット伝送端により選択された経路が変化するか否かを識別するために使用され、
    前記第1の経路を使用することにより前記第2のパケットを前記第2のデバイスに送信した後に、前記トランシーバモジュールは、前記第2のデバイスから第3のパケットを受信するように更に構成され、前記第3のパケットは、前記主スケジューリング識別子と経路バージョン識別子とを含み、
    前記処理モジュールは、前記第3のパケットで搬送される前記経路バージョン識別子が前記第1のパケットで搬送される前記経路バージョン識別子と異なると決定された場合、前記第3のパケットを伝送するために使用される第2の経路を決定するように更に構成され、
    前記トランシーバモジュールは、前記第2の経路を使用することにより第4のパケットを前記第2のデバイスに送信するように更に構成され、前記第4のパケットは、前記フォロー識別子を含む、請求項12に記載の装置。
  14. 前記処理モジュールは、
    前記第1のパケットから解析を通じて前記第1の経路を取得するように構成されるか、或いは、
    第1の対応関係と、前記第1のパケットを受信するために使用されるインタフェース識別子とに基づいて、前記第1のパケットを受信するために使用される前記インタフェース識別子に対応する経路情報を決定し、前記第1のパケットを伝送するために使用される前記第1の経路として、前記決定された経路情報に対応する経路を使用するように構成され、前記第1の対応関係は、前記インタフェース識別子と前記経路情報との間の対応関係を含む、請求項12に記載の装置。
  15. 前記第2のパケットは、逆方向輻輳バックプレッシャー識別子を更に含み、
    前記処理モジュールは、前記トランシーバモジュールが前記第2のデバイスから前記第1のパケットを受信した後に、当該装置の受信方向の経路が輻輳しているか否かを決定し、当該装置の前記受信方向の前記経路が輻輳している場合、前記第2のパケットに含まれる前記逆方向輻輳バックプレッシャー識別子を第1の値に設定するか、或いは、当該装置の前記受信方向の前記経路が輻輳していない場合、前記第2のパケットに含まれる前記逆方向輻輳バックプレッシャー識別子を第2の値に設定するように更に構成される、請求項12乃至14のうちいずれか1項に記載の装置。
  16. 前記第2のパケットは、順方向輻輳バックプレッシャー識別子を更に含み、
    前記処理モジュールは、前記トランシーバモジュールが前記第1の経路を使用することにより前記第2のパケットを前記第2のデバイスに送信する前に、当該装置の送信方向の経路が輻輳しているか否かを決定し、当該装置の前記送信方向の前記経路が輻輳している場合、前記第2のパケットに含まれる前記順方向輻輳バックプレッシャー識別子を前記第1の値に設定するか、或いは、当該装置の前記受信方向の前記経路が輻輳していない場合、前記第2のパケットに含まれる前記順方向輻輳バックプレッシャー識別子を前記第2の値に設定するように更に構成される、請求項12乃至15のうちいずれか1項に記載の装置。
  17. パケット伝送装置であって、当該装置は、
    第2のデバイスから第1のパケットを受信するように構成されたトランシーバモジュールであり、前記第1のパケットは、フォロー識別子を含み、前記フォロー識別子は、前記第2のデバイスが前記第2のデバイス以外のデバイスにより選択された伝送経路を使用することにより前記パケットを送信することを識別するために使用される、トランシーバモジュールと、
    経路選択ポリシーに基づいて、第2のパケットを送信するために使用される第1の経路を決定するように構成された処理モジュールと
    を含み、
    前記トランシーバモジュールは、前記第1の経路を使用することにより前記第2のパケットを前記第2のデバイスに送信するように更に構成され、前記第2のパケットは、主スケジューリング識別子を含み、前記主スケジューリング識別子は、当該装置が経路を選択する権限を有することを識別するために使用される、装置。
  18. 前記第1の経路を使用することにより前記第2のパケットを前記第2のデバイスに送信した後に、前記トランシーバモジュールは、前記第2のデバイスから第3のパケットを受信するように更に構成され、前記第3のパケットは、前記フォロー識別子を含み、前記第3のパケットの伝送経路は、前記第1の経路である、請求項17に記載の装置。
  19. 前記第1のパケットは、順方向輻輳バックプレッシャー識別子及び/又は逆方向輻輳バックプレッシャー識別子を更に含み、
    前記経路選択ポリシーに基づいて、前記第2のパケットを送信するために使用される前記第1の経路を決定した後に、前記処理モジュールは、前記第1のパケットが予め設定された条件を満たしており、当該装置の受信方向の経路も当該装置の送信方向の経路も輻輳していない場合、経路を選択する前記権限を放棄するように更に構成され、前記予め設定された条件は、前記第1のパケットに含まれる前記順方向輻輳バックプレッシャー識別子が第1の値であること、及び/又は、前記第1のパケットに含まれる前記逆方向輻輳バックプレッシャー識別子が前記第1の値であることを含み、前記第1の値は、輻輳が発生していることを示すために使用され、
    前記トランシーバモジュールは、前記第1の経路を使用することにより第4のパケットを前記第2のデバイスに送信するように更に構成され、前記第4のパケットは、前記フォロー識別子を含み、前記第4のパケットで搬送される順方向輻輳バックプレッシャー識別子及び逆方向輻輳バックプレッシャー識別子の双方は第2の値であり、前記第2の値は、輻輳が発生していないことを示すために使用される、請求項17に記載の装置。
  20. 前記第1の経路を使用することにより前記第4のパケットを前記第2のデバイスに送信した後に、前記トランシーバモジュールは、前記第2のデバイスから第5のパケットを受信するように更に構成され、前記第5のパケットは、主スケジューリング識別子を含み、前記第5のパケットの伝送経路は、前記経路選択ポリシーに従って前記第2のデバイスにより選択された第4の経路である、請求項19に記載の装置。
  21. 前記第1のパケット及び前記第2のパケットはそれぞれ、経路バージョン識別子を更に含み、前記経路バージョン識別子は、パケット伝送端により選択された経路が変化するか否かを識別するために使用され、
    前記トランシーバモジュールが前記第2のデバイスから第1のパケットを受信した後、且つ、前記処理モジュールが、前記経路選択ポリシーに基づいて、前記第2のパケットを送信するために使用される前記第1の経路を決定する前に、前記処理モジュールは、前記パケットを送信するために使用される伝送経路を再選択することを決定した場合、前記第2のパケットに含まれる経路バージョン識別子を第3の値に設定し、前記第3の値は、当該装置により選択された前記経路が変化することを示すために使用されるか、或いは、前記パケットを送信するために使用される伝送経路を変更しないことを決定した場合、前記第2のパケットに含まれる経路バージョン識別子を第4の値に設定し、前記第4の値は、当該装置により選択された前記経路が変化しないことを示すために使用される、ように更に構成される、請求項17に記載の装置。
  22. 前記第2のデバイスから前記第1のパケットを受信する前に、前記トランシーバモジュールは、コントローラにより配信された主従選択ポリシーを受信するように更に構成され、
    前記処理モジュールは、前記主従選択ポリシーに基づいて、当該装置が経路を選択する前記権限を有するか否かを決定するように更に構成され、前記主従選択ポリシーは、以下のもの、すなわち、
    当該装置及び前記第2のデバイスの中で、より小さいリンク帯域幅を有するデバイスが経路を選択する前記権限を有することと、
    当該装置及び前記第2のデバイスの中で、ブランチルータSpokeとして機能するデバイスが経路を選択する前記権限を有し、Hubとして機能するデバイスが前記Spokeとして機能する前記デバイスにより選択された前記経路に従う権限を有することと、
    当該装置の識別子とスケジューリング権限との間の対応関係及び前記第2のデバイスの識別子とスケジューリング権限との間の対応関係と、
    当該装置のシステムIPアドレスとスケジューリング権限との間の対応関係及び前記第2のデバイスのシステムIPアドレスとスケジューリング権限との間の対応関係と
    のうち少なくとも1つ以上を含む、請求項17乃至21のうちいずれか1項に記載の装置。
  23. コンピュータにより実行されたとき、前記コンピュータに請求項1乃至11のうちいずれか1項に記載の方法を実行させる命令を含むコンピュータ読み取り可能記憶媒体。
JP2020046976A 2019-03-18 2020-03-17 パケット伝送方法及び装置 Active JP7092813B2 (ja)

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
JP2020156088A true JP2020156088A (ja) 2020-09-24
JP7092813B2 JP7092813B2 (ja) 2022-06-28

Family

ID=69844615

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020046976A Active JP7092813B2 (ja) 2019-03-18 2020-03-17 パケット伝送方法及び装置

Country Status (7)

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

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
US7315510B1 (en) * 1999-10-21 2008-01-01 Tellabs Operations, Inc. Method and apparatus for detecting MPLS network failures
US7298693B1 (en) * 1999-10-21 2007-11-20 Tellabs Operations, Inc. Reverse notification tree for data networks
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 株式会社東芝 通信装置及びマルチホッピングネットワーク
CN112134725A (zh) 2016-06-16 2020-12-25 华为技术有限公司 一种路径确定方法、装置和系统
CN107786437B (zh) * 2016-08-24 2020-12-15 华为技术有限公司 报文转发方法及装置
CN112671644B (zh) 2017-03-30 2022-05-10 上海层峰网络科技有限公司 一种基于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
EP3713160A1 (en) 2020-09-23
CN111726293A (zh) 2020-09-29
US11616724B2 (en) 2023-03-28
JP7092813B2 (ja) 2022-06-28
KR102344346B1 (ko) 2021-12-27
CA3076119C (en) 2022-10-18
US20200304411A1 (en) 2020-09-24
KR20200111118A (ko) 2020-09-28
EP3713160B1 (en) 2022-08-31
CA3076119A1 (en) 2020-09-18
AU2020201904A1 (en) 2020-10-08
EP4181477A1 (en) 2023-05-17
CN111726293B (zh) 2021-11-30
AU2020201904B2 (en) 2023-05-11

Similar Documents

Publication Publication Date Title
JP7092813B2 (ja) パケット伝送方法及び装置
US10542076B2 (en) Cloud service control and management architecture expanded to interface the network stratum
US10158558B1 (en) Segment routing of packets according to a multicast distribution tree in a network
AU2020437137B2 (en) Application workload routing and interworking for network defined edge routing
EP3414874B1 (en) Border gateway protocol for communication among software defined network controllers
US9769067B2 (en) Multiprotocol label switching traffic engineering tunnel establishing method and device
KR101473783B1 (ko) 터널링을 이용한 다이나믹 서비스 체이닝 제어 방법 및 장치
US8462636B2 (en) Systems and methods for communication of management traffic over link aggregation group interface for a network element with distributed architecture
CN105471609A (zh) 一种用于配置业务的方法和装置
EP2911355B1 (en) Method and device for flow path negotiation in link aggregation group
KR20120036903A (ko) 링크 애그리게이션 방법 및 노드
US20210297891A1 (en) Application workload routing and interworking for network defined edge routing
CN112187649A (zh) 一种报文转发方法、报文处理方法及装置
US10666562B2 (en) Network path computation method, apparatus, and system
KR101478944B1 (ko) 복수의 컨트롤러를 구비한 소프트웨어 정의 네트워크에서 스위치 접속 변경 방법
US11381497B2 (en) Path selection method and device
CN107018072B (zh) 一种数据帧发送方法和接入设备
CN105765903A (zh) 一种拓扑发现方法及设备
CN117499065A (zh) 隧道切换方法、系统、设备、存储介质和计算机程序产品

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200512

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200512

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210526

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210608

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210907

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220201

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220426

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220517

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220616

R150 Certificate of patent or registration of utility model

Ref document number: 7092813

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150