JP2020532194A - パケット制御方法およびネットワーク装置 - Google Patents

パケット制御方法およびネットワーク装置 Download PDF

Info

Publication number
JP2020532194A
JP2020532194A JP2020509427A JP2020509427A JP2020532194A JP 2020532194 A JP2020532194 A JP 2020532194A JP 2020509427 A JP2020509427 A JP 2020509427A JP 2020509427 A JP2020509427 A JP 2020509427A JP 2020532194 A JP2020532194 A JP 2020532194A
Authority
JP
Japan
Prior art keywords
packet
flow
congestion
priority
mark
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
JP2020509427A
Other languages
English (en)
Other versions
JP6938766B2 (ja
Inventor
利 沈
利 沈
合文 ▲鄭▼
合文 ▲鄭▼
洪 周
洪 周
▲農▼▲達▼ 胡
▲農▼▲達▼ 胡
翔 于
翔 于
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 JP2020532194A publication Critical patent/JP2020532194A/ja
Application granted granted Critical
Publication of JP6938766B2 publication Critical patent/JP6938766B2/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
    • 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
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • 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/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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/129Avoiding congestion; Recovering from congestion at the destination endpoint, e.g. reservation of terminal resources or buffer space
    • 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/17Interaction among intermediate nodes, e.g. hop by hop
    • 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
    • H04L47/2458Modification of priorities while in transit
    • 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
    • H04L47/2483Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows
    • 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/28Flow control; Congestion control in relation to timing considerations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6275Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority

Landscapes

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

Abstract

本出願は、パケット制御方法およびネットワークデバイスを提供する。本方法は、輻輳状態の変化を引き起こすパケットフローを検出するステップと、輻輳分離メッセージを生成するステップであって、輻輳分離メッセージが、パケットフロー内のパケットの優先度を変更するために使用され、輻輳分離メッセージが、パケットフローの記述情報を含む、ステップと、輻輳分離メッセージを少なくとも1つのノードに送信するステップとを含む。本出願で提供される方法およびネットワークデバイスなどによれば、輻輳状態が変化するとき、輻輳状態の変化を引き起こすパケットフローが識別され得、別のノードは、別のパケットフローの送信に影響を与えることなく、パケットフロー内のパケットの優先度を変更するように命令され得る。したがって、輻輳によって引き起こされるパケット損失が回避され得、輻輳の分離がないことによって引き起こされる行頭ブロッキングがかなりの程度回避され得、これにより、輻輳の拡散が回避される。

Description

本出願は、2017年8月18日に中国特許庁に提出された、「パケット制御方法およびネットワーク装置」と題された中国特許出願第201710713089.X号の優先権を主張し、その全体は、参照によりここに組み込まれる。
本出願は、ネットワーク通信分野に関し、特に、パケット制御方法およびネットワーク装置に関する。
高性能コンピューティング、人工知能、および分散記憶などのより多くのサービスが超低遅延データセンタに依存するにつれて、データセンタ内のノード間のデータ送信遅延に対するユーザ要求も増加している。実際の使用において、輻輳によって引き起こされるパケット損失は、サービスのパフォーマンスに影響を及ぼす重要な要因である。
輻輳によって引き起こされるパケット損失を低減するために、優先度ベースフロー制御(priority−based flow control、PFC)メカニズムが、データセンタ内のノード間のデータ送信プロセスに導入され得る。PFCメカニズムが導入された後、上流ノードは、送信されるサービスの優先度に基づいて、各送信されるサービスに対応するパケットフローの優先度を決定し得、その場合、送信されるサービスのより高い優先度は、送信されるサービスに対応するパケットフローのより高い優先度を示す。パケットフローの優先度を決定した後、上流ノードは、異なる送信キューを使用して異なるパケットフローを下流ノードに送信し得、その場合、各キューは、同じ優先度のパケットフローを送信するために使用され、異なるキューは、異なる優先度のパケットフローを送信するために使用される。これに対応して、複数のキャッシュキューが、下流ノードで設定され得る。これに対応して、各キャッシュキューは、同じ優先度のパケットフローに使用され、異なるキャッシュキューは、異なる優先度のパケットフローをキャッシュするために使用され得る。キャッシュキューにキャッシュされたデータが、事前に設定された水平ラインを超えた場合、言い換えれば、輻輳が発生する可能性がある場合、下流ノードは、キャッシュキューに対応する優先度のパケットフローの送信を一時停止するように上流ノードに要求するために、バックプレッシャ信号を上流ノードに送信し得、これにより、輻輳は回避される。
しかしながら、データセンタでは、1つの下流ノードは、少なくとも1つの上流ノードを有し得、上流ノードによって送信される異なるタイプのパケットフローは、同じ優先度を有し得、同じ優先度のパケットフローのデータ量は異なり得る。PFCメカニズムが導入された後、同じ優先度の複数のパケットフローのパケットフローのデータ量が過度に大きい場合、キャッシュキューにキャッシュされるデータが、事前に設定された水平ラインを超える可能性があり、したがって、下流ノードが、バックプレッシャ信号を上流ノードに送信する可能性がある。この場合、下流ノードによってプレッシャ信号を上流ノードに送信すると、すべての上流ノードは、その優先度のすべてのパケットフローの送信を一時停止する。したがって、上流ノードは、ブロッキングを引き起こさない、比較的少ないデータ量を有するパケットフローの送信も一時停止し、比較的少ないデータ量を有するパケットフローは、行頭ブロッキング(head of line blocking、HOLB)という深刻な問題を抱える。行頭ブロッキングは、輻輳の拡散を引き起こし、ネットワーク全体のパフォーマンスに大きな影響を与える。
本出願は、行頭ブロッキングを低減し、それにより輻輳の拡散を低減するために、パケット制御方法およびデバイスを提供する。
第1の態様によれば、本出願は、輻輳状態の変化を引き起こすパケットフローを検出するステップと、輻輳分離メッセージを生成するステップであって、輻輳分離メッセージが、パケットフロー内のパケットの優先度を変更するために使用され、輻輳分離メッセージが、パケットフローの記述情報を含む、ステップと、輻輳分離メッセージを少なくとも1つのノードに送信するステップとを含むパケット制御方法を提供する。
第1の態様に関連して、第1の態様の第1の可能な実施態様では、輻輳分離メッセージを少なくとも1つのノードに送信するステップは、パケットフローを送信する上流ノードに輻輳分離メッセージを送信するステップを含む。
第1の態様または第1の態様の第1の可能な実施態様に関連して、第1の態様の第2の可能な実施態様では、輻輳分離メッセージは、パケットフロー内のパケットのスケジューリング優先度を下げるようにノードに命令するために特に使用される。
第1の態様または第1の態様の第1もしくは第2の可能な実施態様のいずれか1つに関連して、第1の態様の第3の可能な実施態様では、輻輳分離メッセージは、イーサタイプが事前定義されたタイプであるパケットである。
第1の態様または第1の態様の第1から第3の可能な実施態様のいずれか1つに関連して、第1の態様の第4の可能な実施態様では、パケットフローに対応し、かつフローテーブル内にあるエントリの輻輳マーク項目のコンテンツが、第1のマークに設定され、輻輳マーク項目が、輻輳マーク項目が属するエントリに対応するパケットフローが輻輳フローであるかどうかを記録するために使用され、第1のマークが、輻輳マーク項目が属するエントリに対応するパケットフローが輻輳フローであることを示すために使用される。
第1の態様の第4の可能な実施態様に関連して、第1の態様の第5の可能な実施態様では、本方法は、エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内にパケットフロー内のパケットが受信されなかった場合に、マーク項目を第2のマークに設定するステップであって、第2のマークが、マーク項目が属するエントリに対応するパケットフローが非輻輳フローであることを示すために使用され、タイムスタンプ項目が、パケットフロー内のパケットが最後に受信された時点を記録するために使用される、ステップをさらに含む。
第1の態様の第4の可能な実施態様に関連して、第1の態様の第6の可能な実施態様では、本方法は、第1のパケットを受信するステップと、第1のパケットフローに対応し、かつフローテーブル内にあるエントリの輻輳マーク項目のコンテンツが第1のマークである場合に、第1のパケットの優先度が第2のパケットの優先度と異なるように、第1のパケットのスケジューリング優先度を変更するステップであって、第2のパケットおよび第1のパケットの両方が、第1のパケットフローに属し、第1のパケットが、輻輳マーク項目のコンテンツが第1のマークに設定された後に受信されるパケットであり、第2のパケットが、輻輳マーク項目のコンテンツが第1のマークに設定される前に受信されるパケットである、ステップとをさらに含む。
第1の態様または第1の態様の第1から第3の可能な実施態様のいずれか1つに関連して、第1の態様の第7の可能な実施態様では、パケットフローに対応するエントリが、輻輳フローフローテーブルに追加される。
第1の態様の第7の可能な実施態様に関連して、第1の態様の第8の可能な実施態様では、本方法は、エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内にパケットフロー内のパケットが受信されなかった場合に、パケットフローに対応するエントリを削除するステップであって、タイムスタンプ項目が、パケットフロー内のパケットが最後に受信された時点を記録するために使用される、ステップをさらに含む。
第1の態様の第7の可能な実施態様に関連して、第1の態様の第9の可能な実施態様では、第3のパケットが受信され、第2のパケットフローに対応するエントリが輻輳フローフローテーブル内に存在する場合に、第3のパケットの優先度が第4のパケットの優先度と異なるように、第3のパケットのスケジューリング優先度が変更され、第4のパケットおよび第3のパケットの両方が、第2のパケットフローに属し、第3のパケットが、第2のパケットフローに対応するエントリが輻輳フローフローテーブルに追加された後に受信されるパケットであり、第4のパケットが、第2のパケットフローに対応するエントリが輻輳フローフローテーブルに追加される前に受信されるパケットである。
第2の態様によれば、本出願は、輻輳分離メッセージを受信するステップであって、輻輳分離メッセージが、記述情報を含む、ステップと、記述情報によって示されるパケットフロー内のパケットの優先度を変更するステップとを含む別のパケット制御方法をさらに提供する。
第2の態様に関連して、第2の態様の第1の可能な実施態様では、記述情報によって示されるパケットフロー内のパケットの優先度を変更するステップは、パケットフロー内のパケットのスケジューリング優先度を下げるステップを含む。
第2の態様の第1の可能な実施態様に関連して、第2の態様の第2の可能な実施態様では、パケットフロー内のパケットのスケジューリング優先度を下げるステップは、パケットフロー内のパケットの優先度指示フィールドのコンテンツを変更するステップであって、変更後のコンテンツに対応するスケジューリング優先度が変更前のコンテンツに対応するスケジューリング優先度よりも低くなる、ステップ、または低優先度の処理キューに入るようにパケットフロー内のパケットを制御するステップであって、低優先度の処理キューのスケジューリング優先度が、パケットフロー内のパケットの優先度指示フィールドのコンテンツに対応するスケジューリング優先度よりも低い、ステップを含む。
第2の態様の第1の可能な実施態様に関連して、第2の態様の第3の可能な実施態様では、本方法は、パケットフローに対応し、かつフローテーブル内にあるエントリの輻輳マーク項目のコンテンツを第1のマークに設定するステップであって、輻輳マーク項目が、輻輳マーク項目が属するエントリに対応するパケットフローが輻輳フローであるかどうかを記録するために使用され、第1のマークが、輻輳マーク項目が属するエントリに対応するパケットフローが輻輳フローであることを示すために使用される、ステップをさらに含む。
第2の態様の第3の可能な実施態様に関連して、第2の態様の第4の可能な実施態様では、本方法は、エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内にパケットフロー内のパケットが受信されなかった場合に、マーク項目を第2のマークに設定するステップであって、第2のマークが、マーク項目が属するエントリに対応するパケットフローが非輻輳フローであることを示すために使用され、タイムスタンプ項目が、パケットフロー内のパケットが最後に受信された時点を記録するために使用される、ステップをさらに含む。
第2の態様の第3の可能な実施態様に関連して、第2の態様の第5の可能な実施態様では、本方法は、第1のパケットを取得するステップと、第1のパケットフローに対応し、かつフローテーブル内にあるエントリの輻輳マーク項目のコンテンツが第1のマークである場合に、第1のパケットの優先度が第2のパケットの優先度と異なるように、第1のパケットのスケジューリング優先度を変更するステップであって、第2のパケットおよび第1のパケットの両方が、第1のパケットフローに属し、第1のパケットが、輻輳マーク項目のコンテンツが第1のマークに設定された後に取得されるパケットであり、第2のパケットが、輻輳マーク項目のコンテンツが第1のマークに設定される前に取得されるパケットである、ステップとをさらに含む。
第2の態様に関連して、第2の態様の第6の可能な実施態様では、輻輳分離メッセージを受信するステップの後に、本方法は、パケットフローに対応するエントリを輻輳フローフローテーブルに追加するステップをさらに含む。
第2の態様の第6の可能な実施態様に関連して、第2の態様の第7の可能な実施態様では、本方法は、エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内にパケットフロー内のパケットが受信されなかった場合に、パケットフローに対応するエントリを削除するステップであって、タイムスタンプ項目が、パケットフロー内のパケットが最後に受信された時点を記録するために使用される、ステップをさらに含む。
第2の態様の第6の可能な実施態様に関連して、第2の態様の第8の可能な実施態様では、本方法は、第3のパケットを取得するステップと、第2のパケットフローに対応するエントリが輻輳フローフローテーブル内に存在する場合に、第3のパケットの優先度が第4のパケットの優先度と異なるように、第3のパケットのスケジューリング優先度を変更するステップであって、第4のパケットおよび第3のパケットの両方が、第2のパケットフローに属し、第3のパケットが、第2のパケットフローに対応するエントリが輻輳フローフローテーブルに追加された後に取得されるパケットであり、第4のパケットが、第2のパケットフローに対応するエントリが輻輳フローフローテーブルに追加される前に取得されるパケットである、ステップとをさらに含む。
第3の態様によれば、本出願は、ネットワークデバイスをさらに提供する。このデバイスは、第1の態様または第1の態様の実施態様のいずれか1つの方法を実行するように構成されたユニットモジュールを含む。このユニットモジュールによって実施される機能は、プロセッサによって実施されてもよいし、またはプロセッサおよびプロセッサによって制御されるネットワークデバイスコンポーネントによって実施されてもよい。
第4の態様によれば、本出願は、別のネットワークデバイスをさらに提供する。このデバイスは、第2の態様または第2の態様の実施態様のいずれか1つの方法を実行するように構成されたユニットモジュールを含む。このユニットモジュールによって実施される機能は、プロセッサによって実施されてもよいし、またはプロセッサおよびプロセッサによって制御されるネットワークデバイスコンポーネントによって実施されてもよい。
第5の態様によれば、本出願は、命令を含むコンピュータ可読記憶媒体をさらに提供する。命令がコンピュータ上で実行されるとき、コンピュータは、第1の態様または第1の態様の実施態様のいずれか1つの方法を実行し得る。
第6の態様によれば、本出願は、命令を含む別のコンピュータ可読記憶媒体をさらに提供する。命令がコンピュータ上で実行されるとき、コンピュータは、第2の態様または第2の態様の実施態様のいずれか1つの方法を実行し得る。
第7の態様によれば、本出願は、命令を含むコンピュータプログラム製品をさらに提供する。命令がコンピュータ上で実行されるとき、コンピュータは、第1の態様または第1の態様の実施態様のいずれか1つの方法を実行し得る。
第8の態様によれば、本出願は、命令を含む別のコンピュータプログラム製品をさらに提供する。命令がコンピュータ上で実行されるとき、コンピュータは、第2の態様または第2の態様の実施態様のいずれか1つの方法を実行し得る。
第9の態様によれば、本出願は、ネットワークシステムであって、ネットワークシステムが、少なくとも2つのノードを含み得る、ネットワークシステムをさらに提供する。あるノードは、第2の態様または第2の態様の実施態様のいずれか1つの方法を実行するように構成され、および/または別のノードは、第2の態様または第2の態様の実施態様のいずれか1つの方法を実行するように構成される。
本出願で提供される方法およびネットワーク装置などによれば、輻輳状態の変化を引き起こすパケットフローが識別された後に、パケットフロー内のパケットの優先度が変更され得、これにより、行頭ブロッキングの可能性が大幅に低減される。
本出願によるネットワークシステムの一実施形態の概略構造図である。 本出願によるネットワークシステムの別の実施形態の概略構造図である。 本出願による輻輳分離メッセージの概略構造図である。 本出願による輻輳分離メッセージの概略構造図である。 本出願によるパケット制御方法の一実施形態の概略フローチャートである。 本出願によるパケット制御方法の別の実施形態の概略フローチャートである。 本出願によるパケット制御方法のさらに別の実施形態の概略フローチャートである。 本出願によるパケット制御方法のさらに別の実施形態の概略フローチャートである。 本出願によるネットワークデバイスの一実施形態の概略構造図である。 本出願によるネットワークデバイスの別の実施形態の概略構造図である。 本出願によるネットワークデバイスのさらに別の実施形態の概略構造図である。
本出願の実施形態におけるネットワークシステムは、CLOSアーキテクチャ、Meshアーキテクチャ、もしくはTorusアーキテクチャなどのネットワークアーキテクチャを使用するデータセンタであってもよいし、または前述のアーキテクチャを使用する別の非データセンタネットワークであってもよい。これは本出願では限定されない。説明を簡単にするために、以下では、説明の例としてCLOSアーキテクチャのデータセンタのみを使用する。
CLOSアーキテクチャのデータセンタは、様々なサービスを提供するサーバ(server)を含み得る。サーバに加えて、CLOSアーキテクチャのデータセンタは、TORスイッチまたはSPINEスイッチなど、複数の異なるタイプのスイッチを含む。TORスイッチは、サーバとSPINEスイッチとの間のリンクに配置され得る。TORスイッチのアップリンクポートは、SPINEスイッチに接続するために使用され、TORスイッチのダウンリンクポートは、サーバに接続するために使用される。各TORスイッチは、複数のアップリンクポートを使用して複数のSPINEスイッチに接続され得る。各サーバも、少なくとも1つのネットワークインタフェースカードを使用して少なくとも1つのTORスイッチに接続され得る。
データセンタが、サイズ的に比較的大きく、比較的多数のサーバおよびTORスイッチを含む場合、AGGスイッチが、TORスイッチとSPINEスイッチとの間のリンクにさらに配置され得る。AGGスイッチのダウンリンクポートは、少なくとも1つのTORスイッチに接続するために使用され、AGGスイッチのアップリンクポートは、少なくとも1つのSPINEに接続するために使用される。図1に示されているように、TORスイッチのアップリンクポートがSPINEスイッチに接続されている場合、データセンタは、2段のCLOSネットワークである。図2に示されているように、TORスイッチのアップリンクポートがAGGスイッチに接続されている場合、データセンタは、3段のCLOSネットワークである。
本出願の実施形態におけるノードは、ステーション(station)と呼ばれる場合もあり、前述のサーバまたは任意のタイプのスイッチなどのデバイスを含み得るし、またはデータセンタネットワークまたは別の非データセンタネットワーク内のデバイスを含み得る。このデバイスは、スイッチ、ルータ、ネットワークインタフェースカード、または別のデバイスであり得る。
本出願の実施形態では、輻輳分離メッセージ(congestion isolation packet、CIP)は、メッセージを受信するノードに、メッセージによって示されるパケットフロー内のパケットの優先度を変更するように命令するために使用され得る情報である。すなわち、輻輳分離メッセージは、メッセージを受信するノードに、パケットフロー内のパケットの優先度を変更するように命令するために使用され得る。パケットフローは、輻輳分離メッセージに含まれる記述情報または別の情報によって示される。
記述情報は、パケットフローを判定するために使用され得る情報または情報の組み合わせである。記述情報を使用することによって、ノードは、記述情報に対応する1つのパケットフローのみを判定し得る。例えば、パケットフローは、パケットフローの送信元IP、宛先IP、プロトコル番号、送信元ポート番号、および宛先ポート番号を含む5タプル(5−tuple)であり得るか、または、3タプルまたは別のタイプの情報もしくは情報の組み合わせであり得る。例えば、VXLANなどのOverlayネットワークでは、異なるテナントのパケットフローは、同じ5タプルを有し得る。したがって、パケットフローは、5タプルを使用することによっては一意に判定され得ない。この場合、VNI(VXLAN Network Identifier)も、フローの記述情報として使用される必要があり、言い換えれば、6タプルが、パケットフローを一意に判定するために使用される。これは本出願では限定されない。
輻輳分離メッセージの宛先MACアドレスは、輻輳分離メッセージを受信するノードのMACアドレスであり、輻輳分離メッセージの送信元MACアドレスは、輻輳分離メッセージを送信するノードのMACアドレスであり、輻輳分離メッセージのイーサタイプは、パケットが輻輳分離メッセージであることを示すために使用される事前定義されたタイプ、例えば0x8809であり得る。フローの記述情報は、輻輳分離メッセージのIPヘッダおよびトランスポート層ヘッダに含まれ得る。処理論理を簡素化するために、輻輳分離メッセージのIPヘッダおよびトランスポート層ヘッダは、標準フォーマットであり得る、言い換えれば、パケットフロー内のパケットと同じフォーマットを有し得る。輻輳分離メッセージの作成中に、パケットフロー内のパケットのIPヘッダおよびトランスポート層ヘッダがコピーされ得、パケットフロー内のパケットのコピーされたIPヘッダおよびトランスポート層ヘッダのためにイーサネット(登録商標)ヘッダがカプセル化され、パケットは、64バイトの最小イーサネット(登録商標)パケット長に達するようにパディングされる。例えば、輻輳分離メッセージのフォーマットは、図3に示されているものであり得る。輻輳分離メッセージは、代わりに、別のフォーマットであってもよいし、または別の方法で作成されてもよいことに留意されたい。本出願が、Infinibandネットワークなどの別の非イーサネット(登録商標)ネットワークに適用されるとき、メッセージは、パケットフローの記述情報が含まれる場合、自己定義のInfinibandプロトコルタイプのメッセージである。これは本出願では限定されない。例えば、輻輳分離メッセージのフォーマットは、代わりに、図4に示されているものであり得る。
本出願の実施形態では、輻輳フローを記録するためだけに使用される輻輳フローフローテーブルが、各ノードで設定され得、輻輳状態の変化を引き起こすパケットフローが、輻輳フローフローテーブルのエントリを使用して記録される。輻輳状態の変化を引き起こすパケットフローは、輻輳フローを含み得るが、これに限定されない。パケットフローに対応するエントリが輻輳フローフローテーブル内に存在する場合、それは、パケットフローが輻輳状態の変化を引き起こすパケットフローであることを示す。パケットフローに対応するエントリが輻輳フローフローテーブルに存在しない場合、それは、パケットフローが輻輳状態の変化を引き起こすパケットフローではないことを示す。エントリは、タイムスタンプ項目を含み得、タイムスタンプ項目は、パケットフロー内のパケットが最後に受信された時点を記録するために使用される。
代わりに、各ノードは、輻輳状態の変化を引き起こすパケットフローを記録するために既存のフローテーブルの各エントリに輻輳マーク項目を設定し得る。輻輳マーク項目は、異なるコンテンツを使用して、輻輳マーク項目が属するエントリに対応するパケットフローが輻輳フローであるかどうかを記録するために使用され得る。輻輳マーク項目のコンテンツは、第1のマークまたは第2のマークであり得る。第1のマークは、輻輳マーク項目が属するエントリに対応するパケットフローが輻輳フローであることを示すために使用され、第2のマークは、輻輳マーク項目が属するエントリに対応するパケットフローが輻輳フローではないことを示すために使用される。輻輳マーク項目に加えて、タイムスタンプ項目も、フローテーブルの各エントリに設定され得る。
本出願の実施形態では、送信キュー、転送キュー、およびキャッシュキューなどの異なるタイプの処理キューがあり得る。同じキュー内のパケットの優先度が同じであり、異なるキュー内のパケットの優先度が異なる場合もあるし、またはいくつかの異なるキュー内のパケットの優先度が同じ場合もある。例えば、処理キューは、上流ノードによって送信されたパケットをキャッシュするために使用される8つのキャッシュキューのいずれか1つである場合もあるし、またはキャッシュキュー内のサブキューのいずれか1つである場合もある。
以下では、添付の図面を参照して、本出願におけるパケット制御方法を説明する。
図5は、本出願によるパケット制御方法の一実施形態の概略フローチャートである。本実施形態の方法は、任意のノードによって実行され得る。図5に示されているように、本方法は、以下のステップを含み得る。
ステップ501:輻輳状態の変化を引き起こすパケットフローを検出する。
輻輳状態の変化を引き起こすパケットフローは、現在のノードの処理キュー輻輳を引き起こす、もしくは輻輳を引き起こし得るパケットフローであり得るか、または現在のノードの上流ノードまたは下流ノードなどの別のノードの処理キューに輻輳を引き起こす、もしくは輻輳を引き起こし得るパケットフローであり得る。輻輳している、または輻輳し得る異なるノードに応じて、輻輳状態の変化を引き起こすパケットフローを判定する特定の方法は異なる。現在のノードの輻輳フローが判定されるべき例では、シングルウォーターラインメカニズムまたはデュアルウォーターラインメカニズムが、パケットフローが輻輳フローであるかどうかを判定するために使用され得る。
シングルウォーターラインメカニズムが、輻輳フローを判定するために使用されるとき、パケットフロー内のパケットが処理キューに追加された後に、処理キュー内で処理を待つパケットの量が、事前に設定されたウォーターラインを超えた場合、そのパケットフローは輻輳フローであると判定され得、そうでなければ、そのパケットフローは輻輳フローではないと判定される。
デュアルウォーターラインメカニズムが、輻輳フローを判定するために使用されるとき、パケットフロー内のパケットが処理キューに追加された後に、処理キュー内で処理を待つパケットの量が、事前に設定された高いウォーターラインを超えた場合、そのパケットフローは輻輳フローであると判定され得る。処理キュー内で処理を待つパケットの量が、事前に設定された低いウォーターラインを超えているが、事前に設定された高いウォーターラインを超えていない場合、確率に基づいて、そのパケットフローが輻輳フローであるかどうかが判定され得る。この確率は、事前に設定された値に変数を掛けることによって得られ得る。この変数は、事前に設定された低いウォーターラインを引いた事前に設定された高いウォーターラインで差を割ることによって得られる値であり得、この差は、現在のキューのデータ量から事前に設定された低いウォーターラインを差し引くことによって得られる。処理キュー内で処理を待つパケットの量が、事前に設定された低いウォーターラインを超えていない場合、そのパケットフローは輻輳フローではない。
輻輳状態の変化を引き起こすパケットフローは、現在のノードの処理キューに輻輳を引き起こす、もしくは輻輳を引き起こし得るパケットフローであり得るか、または現在のノードの下流ノードまたは下流ノードの下流ノードなどの別のノードの処理キューに輻輳を引き起こす、もしくは輻輳を引き起こし得るパケットフローであり得る。輻輳している、または輻輳し得る異なるノードに応じて、輻輳状態の変化を引き起こすパケットフローを判定する特定の方法は異なる。例えば、パケットフローが、現在のノードの下流ノードの輻輳状態の変化を引き起こす場合、下流ノードは、輻輳分離メッセージを現在のノードに送信し得、現在のノードは、輻輳分離メッセージ内の記述情報に基づいてパケットフローを判定し得る。ここでは同様の方法は説明されない。
ステップ502:輻輳分離メッセージを生成する。
パケットフローを検出した後、現在のノードは、輻輳分離メッセージを作成し得る。輻輳分離メッセージは、パケットフロー内のパケットの優先度を変更するために使用される。概して、輻輳分離メッセージは、メッセージを受信するノードに、パケットフロー内のパケットのスケジューリング優先度を下げるように命令するために使用される。輻輳分離メッセージの作成方法については、前述の説明を参照されたい。ここでは詳細は再度説明されない。
ステップ503:輻輳分離メッセージを少なくとも1つのノードに送信する。
輻輳分離メッセージを生成した後、現在のノードは、輻輳分離メッセージを少なくとも1つのノードに送信し得る。少なくとも1つのノードは、パケットフローを現在のノードに送信する上流ノードを含み得、この場合、現在のノードは、パケットフローを送信する上流ノードに輻輳分離メッセージを送信し得る。輻輳分離メッセージを受信した後、上流ネットワークノードは、輻輳フロー分離を実施するためにパケットフローの優先度を変更し得る。
本出願で提供される方法によれば、輻輳状態が変化するとき、現在のノードは、輻輳状態の変化を引き起こすパケットフローを識別し、別のパケットフローの送信に影響を与えることなく、パケットフロー内のパケットの優先度を変更するように別のノードに命令し得る。したがって、輻輳によって引き起こされるパケット損失が回避され得、輻輳の分離がないことによって引き起こされる行頭ブロッキングがかなりの程度回避され得、これにより、輻輳の拡散が回避される。
輻輳を回避するためにパケットのスケジューリング優先度を変更するために、現在のノードは、輻輳分離メッセージを送信する必要があるだけでなく、現在のノードで、輻輳状態の変化を引き起こすパケットフロー内のパケットを分離する必要もあり、これにより、変更されていない優先度に対応する、現在のノードまたは下流ノードのキューが輻輳し続けることが防止される。
現在のノードは、輻輳状態の変化を引き起こすパケットフロー内のパケットを分離するために、変更後のコンテンツに対応するスケジューリング優先度が変更前のコンテンツに対応するスケジューリング優先度よりも低くなるように、パケットフロー内のパケットの優先度指示フィールドのコンテンツを変更し得るか、または低優先度の処理キューに入るようにパケットフロー内のパケットを制御し得、その場合、低優先度の処理キューのスケジューリング優先度は、パケットフロー内のパケットの優先度指示フィールドのコンテンツに対応するスケジューリング優先度よりも低い。低優先度のキューは、所定の優先度のキューであり得、第1の優先度のキューは、現在のノードの複数の処理キューの中で最も低い優先度を有する1つのキュー、または最も低い優先度を有するいくつかのキューのうちの1つ以上であり得る。変更後のコンテンツに対応するスケジューリング優先度が変更前のコンテンツに対応するスケジューリング優先度よりも低くなるように、パケットフロー内のパケットの優先度指示フィールドのコンテンツを変更することは、パケットの優先度フィールドのコンテンツを変更することによって実施され得るし、またはパケットの優先度を示すために使用される他の情報を変更することによって実施され得る。例えば、優先度フィールドのコンテンツは、元のコンテンツによって示される優先度よりも低い優先度を有する新しいコンテンツに変更され得る、言い換えれば、変更後のコンテンツに対応するスケジューリング優先度は、変更前のコンテンツに対応するスケジューリング優先度よりも低くされる。
パケットフロー内のパケットのスケジューリング優先度を下げることは、パケットフロー内にあり、かつ処理キューに追加されていないパケットの優先度のみを下げることであり得るか、またはパケットフロー内にあり、かつ処理キューに追加されていないパケットの優先度およびパケットフロー内にあり、かつ処理キューに追加されているが処理されていないパケットの優先度の両方を下げることであり得る。同様に、低優先度の処理キューのスケジューリング優先度が、パケットフロー内のパケットの優先度指示フィールドのコンテンツに対応するスケジューリング優先度よりも低い場合に、低優先度の処理キューに入るようにパケットフロー内のパケットを制御することは、低優先度の処理キューのスケジューリング優先度が、パケットフロー内のパケットの優先度指示フィールドのコンテンツに対応するスケジューリング優先度よりも低い場合に、低優先度の処理キューに入るようにパケットフロー内のパケットのみを制御することであり得るか、または、低優先度の処理キューのスケジューリング優先度が、パケットフロー内のパケットの優先度指示フィールドのコンテンツに対応するスケジューリング優先度よりも低い場合に、低優先度の処理キューに入るようにパケットフロー内のパケットを制御し、パケットフロー内にあり、かつ処理キューに追加されているが処理されていないパケットを低優先度の処理キューにスケジューリングすることであり得る。
以下では、変更後のコンテンツに対応するスケジューリング優先度が変更前のコンテンツに対応するスケジューリング優先度よりも低くなるように、パケットフロー内のパケットの優先度指示フィールドのコンテンツを変更する特定の方法を説明する。ここでは、以下の実施形態が、変更後のコンテンツに対応するスケジューリング優先度が変更前のコンテンツに対応するスケジューリング優先度よりも低くなるように、パケットフロー内のパケットの優先度指示フィールドのコンテンツを変更する単なる任意選択の方法であり、別の実施態様に対する制限を構成するものではないことに留意されたい。異なるフローテーブルを使用してパケットフローを記録する異なる方法に応じて、現在のノードによってパケットフロー内のパケットのスケジューリング優先度を下げる特定の実施態様も異なる。
図6は、本出願によるパケット制御方法の別の実施形態の概略フローチャートである。図6に示されているように、ステップ501の後、すなわち、輻輳状態の変化を引き起こすパケットフローが検出された後、本方法は、以下のステップをさらに含み得る。
ステップ504:パケットフローに対応し、かつフローテーブル内にあるエントリの輻輳マーク項目のコンテンツを第1のマークに設定する。
データフロー内のパケットの優先度の復元を容易にするために、輻輳マーク項目のコンテンツを第1のマークに設定することに加えて、パケットフローに対応するエントリのタイムスタンプ項目のコンテンツが、パケットフロー内のパケットが最後に受信された時点に設定され得る。
ステップ505:第1のパケットを受信する。
第1のパケットは、現在のノードの任意の上流ノードによって送信されるパケットであり得る。
ステップ506:第1のパケットフローに対応し、かつフローテーブル内にあるエントリの輻輳マーク項目のコンテンツが第1のマークである場合、第1のパケットのスケジューリング優先度を変更する。
第1のパケットを受信した後、現在のノードは、第1のパケットが属する第1のパケットフローを判定し、次に、第1のパケットフローが輻輳状態の変化を引き起こすパケットフローとして記録されているかどうかを検出し得る。第1のパケットフローが、輻輳状態の変化を引き起こすパケットフローとして記録されている場合、第1のパケットのスケジューリング優先度が変更される。具体的には、本実施形態では、第1のパケットフローに対応し、かつフローテーブル内にあるエントリの輻輳マーク項目のコンテンツが第1のマークである場合、それは、第1のパケットフローが輻輳状態の変化を引き起こすパケットフローであり、したがって、第1のパケットのスケジューリング優先度が変更される必要があることを示す。
現在のノードは、第1のパケットの優先度が第2のパケットの優先度と異なるように、第1のパケットの優先度を変更し得、これにより、現在のノードで輻輳フロー分離が実施される。第2のパケットおよび第1のパケットの両方が、第1のパケットフローに属し、第1のパケットは、輻輳マーク項目のコンテンツが第1のマークに設定された後に受信されるパケットであり、第2のパケットは、輻輳マーク項目のコンテンツが第1のマークに設定される前に受信されるパケットである。ここでは、第1のパケットのスケジューリング優先度を変更することは、通常、第1のパケットの優先度を下げることであり得ることに留意されたい。
第1のパケットのスケジューリング優先度を変更する複数の特定の実施態様があり得る。特定の実施態様は、通常、現在のノードが、変更後のコンテンツに対応するスケジューリング優先度が変更前のコンテンツに対応するスケジューリング優先度よりも低くなるように、パケットフロー内のパケットの優先度指示フィールドのコンテンツを変更すること、または、低優先度の処理キューのスケジューリング優先度が、パケットフロー内のパケットの優先度指示フィールドのコンテンツに対応するスケジューリング優先度よりも低い場合に、低優先度の処理キューに入るようにパケットフロー内のパケットを制御することを含み得る。
例えば、第1のパケットを処理キューに追加する前に、現在のノードは、第1のパケットの優先度を示すために使用され、かつ第1のパケット内にあるコンテンツを変更し得る、例えば、指示情報に従って第1のパケットが追加される処理キューが、第2のパケットが追加される処理キューと異なるように、第1のパケットの優先度フィールドのコンテンツを変更し、それにより第1のパケットの優先度を変更し得る。代わりに、現在のノードは、第2のパケットが追加されるキューとは異なる優先度のキューに追加されるように第1のパケットを直接制御し、それにより第1のパケットの優先度を変更してもよい。
ここでは、ステップ502の後、本方法は、エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内にパケットフロー内のパケットが受信されなかった場合に、マーク項目を第2のマークに設定することをさらに含み得ることに留意されたい。
エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内にパケットフロー内のパケットが受信されなかった場合、それは、パケットフロー内のパケットが減少し、パケットフローがもはや輻輳フローと見なされ得ないことを示す。したがって、現在のノードは、パケットフロー内のパケットがその後受信されるときに、パケットフロー内のパケットの優先度が復元され得るように、マーク項目を第2のマークに設定し得る。所定の期間は、フローテーブルをクリアする期間より長くされ得ない。
本実施形態では、現在のノードで輻輳フロー分離が実施され得る。
図7は、本出願によるパケット制御方法の別の実施形態の概略フローチャートである。図7に示されているように、ステップ501の後、すなわち、輻輳状態の変化を引き起こすパケットフローが検出された後、本方法は、以下のステップをさらに含み得る。
ステップ507:パケットフローに対応するエントリを輻輳フローフローテーブルに追加する。
データフロー内のパケットの優先度の復元を容易にするために、エントリを輻輳フローフローテーブルに追加することに加えて、エントリのタイムスタンプ項目のコンテンツが、パケットフロー内のパケットが最後に受信された時点に設定され得る。
ステップ508:第3のパケットを受信する。
第3のパケットは、現在のノードの任意の上流ノードによって送信されるパケットであり得る。
ステップ509:第2のパケットフローに対応するエントリが輻輳フローフローテーブル内に存在する場合、第3のパケットのスケジューリング優先度を変更する。
第2のパケットフローに対応するエントリが輻輳フローフローテーブル内に存在する場合、それは、第2のパケットフローが輻輳状態の変化を引き起こすパケットフローであり、したがって、第2のパケットの優先度が変更される必要があることを示す。
現在のノードは、第1のパケットの優先度が第2のパケットの優先度と異なるように、第3のパケットの優先度を変更し得、第4のパケットおよび第3のパケットの両方は、第2のパケットフローに属し、第3のパケットは、第2のパケットフローに対応するエントリが輻輳フローフローテーブルに追加された後に受信されるパケットであり、第4のパケットは、第2のパケットフローに対応するエントリが輻輳フローフローテーブルに追加される前に受信されるパケットである。
第3のパケットのスケジューリング優先度を変更する特定の実施態様は、第1のパケットの優先度を変更する方法と同様である。ここでは詳細は再度説明されない。
ここでは、ステップ507の後、本方法は、エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内にパケットフロー内のパケットが取得されなかった場合に、パケットフローに対応するエントリを削除することをさらに含み得ることに留意されたい。
エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内にパケットフロー内のパケットが受信されなかった場合、それは、パケットフロー内のパケットが減少し、パケットフローがもはや輻輳フローと見なされ得ないことを示す。したがって、パケットフローに対応し、かつ輻輳フローフローテーブル内にあるエントリが、パケットフロー内のパケットの優先度を復元するために削除され得る。
本実施形態では、現在のノードで輻輳フロー分離も実施され得る。
輻輳によって引き起こされるパケット損失を回避するために、輻輳フロー分離は、現在のノードで実施されることに加えて、上流ノードで実施される必要がある。
図8は、本出願によるパケット制御方法の別の実施形態の概略フローチャートである。本実施形態に示されている方法は、上流ネットワークノードによって実行され得る。
ステップ801:輻輳分離メッセージを受信し、輻輳分離メッセージは記述情報を含む。
上流ノードは、前述の実施形態で現在のノードによって送信される輻輳分離メッセージを受信し得る。輻輳分離メッセージの関連する内容については、前述の実施形態を参照されたい。ここでは詳細は再度説明されない。
輻輳分離メッセージを受信した後、上流ノードはさらに、パケットフローに対応し、かつフローテーブル内にあるエントリの輻輳マーク項目のコンテンツを第1のマークに設定し得るか、またはパケットフローに対応するエントリを輻輳フローフローテーブルに追加し得る。特定の方法については、前述の実施形態を参照されたい。ここでは詳細は再度説明されない。
ステップ802:記述情報によって示されるパケットフロー内のパケットの優先度を変更する。
輻輳分離メッセージを受信した後、上流ノードは、最初に、記述情報に基づいて、記述情報によって示されるパケットフローを判定し、次に、記述情報によって示されるパケットフロー内のパケットの優先度を変更し得る。パケットフローには輻輳フローがしばしば存在するため、記述情報によって示されるパケットフロー内のパケットの優先度を変更することは、通常、パケットフロー内のパケットのスケジューリング優先度を下げることである。現在のノードと同様に、上流ノードは、以下の方法で、すなわち、変更後のコンテンツに対応するスケジューリング優先度が変更前のコンテンツに対応するスケジューリング優先度よりも低くなるように、パケットフロー内のパケットの優先度指示フィールドのコンテンツを変更するか、または、低優先度の処理キューのスケジューリング優先度が、パケットフロー内のパケットの優先度指示フィールドのコンテンツに対応するスケジューリング優先度よりも低い場合に、低優先度の処理キューに入るようにパケットフロー内のパケットを制御することで、パケットフロー内のパケットのスケジューリング優先度を下げ得る。パケットフローを記録する異なる方法に応じて、上流ノードによってパケットフロー内のパケットの優先度を変更する方法も異なる。
パケットを取得した後、上流ノードは、パケットが属するパケットフローが、輻輳状態の変化を引き起こすパケットフローとして記録されているパケットフローであるかどうかを検出し得る。パケットフローが、輻輳状態の変化を引き起こすパケットフローとして記録されている場合、パケットの優先度が変更される。パケットは、別のノードによって上流ノードに送信され得るか、または上流ノードによって生成され得る。
一実施態様では、上流ノードは、最初に第1のパケットを取得し、第1のパケットを取得した後、上流ノードは、第1のパケットが属する第1のパケットフローを判定し得る。第1のパケットフローに対応し、かつフローテーブル内にあるエントリの輻輳マーク項目のコンテンツが第1のマークである場合、第1のパケットのスケジューリング優先度が変更される。第1のパケットの優先度を変更する特定の実施態様については、前述の説明を参照されたい。ここでは詳細は再度説明されない。
別の実施態様では、上流ノードは、最初に第3のパケットを取得し、第3のパケットを取得した後、上流ノードは、第3のパケットが属する第3のパケットフローを判定し得る。第2のパケットフローに対応するエントリが輻輳フローフローテーブル内に存在する場合、第2のパケットの優先度が変更される。第3のパケットの優先度を変更する特定の実施態様については、前述の説明を参照されたい。ここでは詳細は再度説明されない。
記述情報によって示されるパケットフロー内のパケットは、別のノードによって上流ノードに送信され得る。したがって、上流ノードが輻輳分離メッセージを受信した後、上流ノードが、記述情報によって示されるパケットフロー内のパケットが別のノードによって上流ノードに送信されたことを検出した場合、上流ノードは、輻輳分離メッセージをそのノードにさらに送信し得る。輻輳分離メッセージの方法およびノードが輻輳分離メッセージを受信した後の方法については、前述の説明を参照されたい。ここでは詳細は再度説明されない。
前述の実施形態で提供されている方法に対応して、本出願は、対応するネットワークデバイスをさらに提供する。
図9は、本出願によるネットワークデバイスの一実施形態の概略構造図である。ネットワークデバイスは、前述の実施形態におけるノードに配置されてもよいし、またはノードであってもよい。
図9に示されているように、ネットワークデバイスは、輻輳状態の変化を引き起こすパケットフローを検出し、輻輳分離メッセージを生成し、輻輳分離メッセージが、パケットフロー内のパケットの優先度を変更するために使用され、輻輳分離メッセージが、パケットフローの記述情報を含む、ように構成された処理ユニット901と、輻輳分離メッセージを少なくとも1つのノードに送信するように構成された送信ユニット902とを含み得る。
任意選択で、送信ユニット902は、パケットフローを送信する上流ノードに輻輳分離メッセージを送信し、輻輳分離メッセージが、パケットフロー内のパケットのスケジューリング優先度を下げるようにノードに命令すために特に使用される、ように特に構成される。
任意選択で、輻輳分離メッセージは、イーサタイプが事前定義されたタイプであるパケットである。
任意選択で、処理ユニット901は、パケットフロー内のパケットのスケジューリング優先度を下げるようにさらに構成される。
任意選択で、処理デバイスは、パケットフロー内のパケットの優先度指示フィールドのコンテンツを変更し、変更後のコンテンツに対応するスケジューリング優先度が変更前のコンテンツに対応するスケジューリング優先度よりも低くなる、ように、または低優先度の処理キューに入るようにパケットフロー内のパケットを制御し、低優先度の処理キューのスケジューリング優先度が、パケットフロー内のパケットの優先度指示フィールドのコンテンツに対応するスケジューリング優先度よりも低い、ように特に構成される。
任意選択で、処理ユニット901は、パケットフローに対応し、かつフローテーブル内にあるエントリの輻輳マーク項目のコンテンツを第1のマークに設定し、輻輳マーク項目が、輻輳マーク項目が属するエントリに対応するパケットフローが輻輳フローであるかどうかを記録するために使用され、第1のマークが、輻輳マーク項目が属するエントリに対応するパケットフローが輻輳フローであることを示すために使用される、ようにさらに構成される。
任意選択で、処理ユニット901は、エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内にパケットフロー内のパケットが受信されなかった場合に、マーク項目を第2のマークに設定し、第2のマークが、マーク項目が属するエントリに対応するパケットフローが非輻輳フローであることを示すために使用され、タイムスタンプ項目が、パケットフロー内のパケットが最後に受信された時点を記録するために使用される、ようにさらに構成される。
任意選択で、ネットワークデバイスは、第1のパケットを受信するように構成された受信ユニットをさらに含む。処理ユニット901は、第1のパケットフローに対応し、かつフローテーブル内にあるエントリの輻輳マーク項目のコンテンツが第1のマークである場合に、第1のパケットの優先度が第2のパケットの優先度と異なるように、第1のパケットのスケジューリング優先度を変更し、第2のパケットおよび第1のパケットの両方が、第1のパケットフローに属し、第1のパケットが、輻輳マーク項目のコンテンツが第1のマークに設定された後に受信されるパケットであり、第2のパケットが、輻輳マーク項目のコンテンツが第1のマークに設定される前に受信されるパケットである、ようにさらに構成される。
任意選択で、本デバイスは、第1のパケットを受信するように構成された受信ユニットをさらに含む。処理ユニット901は、第1のパケットフローに対応し、かつフローテーブル内にあるエントリの輻輳マーク項目のコンテンツが第1のマークである場合に、第1のパケットの優先度が第2のパケットの優先度と異なるように、第1のパケットのスケジューリング優先度を変更し、第2のパケットおよび第1のパケットの両方が、第1のパケットフローに属し、第1のパケットが、輻輳マーク項目のコンテンツが第1のマークに設定された後に受信されるパケットであり、第2のパケットが、輻輳マーク項目のコンテンツが第1のマークに設定される前に受信されるパケットである、ようにさらに構成される。
任意選択で、処理ユニット901は、パケットフローに対応するエントリを輻輳フローフローテーブルに追加するようにさらに構成される。
任意選択で、処理ユニット901は、エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内にパケットフロー内のパケットが受信されなかった場合に、パケットフローに対応するエントリを削除し、タイムスタンプ項目が、パケットフロー内のパケットが最後に受信された時点を記録するために使用される、ようにさらに構成される。
任意選択で、本デバイスは、第3のパケットを受信するように構成された受信ユニットをさらに含む。処理ユニット901は、第2のパケットフローに対応するエントリが輻輳フローフローテーブル内に存在する場合に、第3のパケットの優先度が第4のパケットの優先度と異なるように、第3のパケットのスケジューリング優先度を変更し、第4のパケットおよび第3のパケットの両方が、第2のパケットフローに属し、第3のパケットが、第2のパケットフローに対応するエントリが輻輳フローフローテーブルに追加された後に受信されるパケットであり、第4のパケットが、第2のパケットフローに対応するエントリが輻輳フローフローテーブルに追加される前に受信されるパケットである、ようにさらに構成される。
図10は、本出願によるネットワークデバイスの一実施形態の概略構造図である。ネットワークデバイスは、前述の実施形態におけるノードに配置されてもよいし、またはノードであってもよい。
図10に示されているように、ネットワークデバイスは、輻輳分離メッセージを受信し、輻輳分離メッセージが、記述情報を含む、ように構成された受信ユニット1001と、記述情報によって示されるパケットフロー内のパケットの優先度を変更するように構成された処理ユニット1002とを含み得る。
任意選択で、処理ユニット1002は、パケットフロー内のパケットのスケジューリング優先度を下げるようにさらに構成される。
任意選択で、処理ユニット1002は、パケットフロー内のパケットの優先度指示フィールドのコンテンツを変更し、変更後のコンテンツに対応するスケジューリング優先度が変更前のコンテンツに対応するスケジューリング優先度よりも低くなる、ように、または低優先度の処理キューに入るようにパケットフロー内のパケットを制御し、低優先度の処理キューのスケジューリング優先度が、パケットフロー内のパケットの優先度指示フィールドのコンテンツに対応するスケジューリング優先度よりも低い、ようにさらに構成される。
任意選択で、処理ユニット1002は、パケットフローに対応し、かつフローテーブル内にあるエントリの輻輳マーク項目のコンテンツを第1のマークに設定し、輻輳マーク項目が、輻輳マーク項目が属するエントリに対応するパケットフローが輻輳フローであるかどうかを記録するために使用され、第1のマークが、輻輳マーク項目が属するエントリに対応するパケットフローが輻輳フローであることを示すために使用される、ようにさらに構成される。
任意選択で、処理ユニット1002は、エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内にパケットフロー内のパケットが受信されなかった場合に、マーク項目を第2のマークに設定し、第2のマークが、マーク項目が属するエントリに対応するパケットフローが非輻輳フローであることを示すために使用され、タイムスタンプ項目が、パケットフロー内のパケットが最後に受信された時点を記録するために使用される、ようにさらに構成される。
任意選択で、本デバイスは、第1のパケットを取得するようにさらに構成された受信ユニット1001をさらに含む。処理ユニット1002は、第1のパケットフローに対応し、かつフローテーブル内にあるエントリの輻輳マーク項目のコンテンツが第1のマークである場合に、第1のパケットの優先度が第2のパケットの優先度と異なるように、第1のパケットのスケジューリング優先度を変更し、第2のパケットおよび第1のパケットの両方が、第1のパケットフローに属し、第1のパケットが、輻輳マーク項目のコンテンツが第1のマークに設定された後に取得されるパケットであり、第2のパケットが、輻輳マーク項目のコンテンツが第1のマークに設定される前に取得されるパケットである、ようにさらに構成される。
任意選択で、処理ユニット1002は、パケットフローに対応するエントリを輻輳フローフローテーブルに追加するようにさらに構成される。
任意選択で、処理ユニット1002は、エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内にパケットフロー内のパケットが受信されなかった場合に、パケットフローに対応するエントリを削除し、タイムスタンプ項目が、パケットフロー内のパケットが最後に受信された時点を記録するために使用される、ようにさらに構成される。
任意選択で、受信ユニット1001は、第3のパケットを取得するようにさらに構成される。処理ユニット1002は、第2のパケットフローに対応するエントリが輻輳フローフローテーブル内に存在する場合に、第3のパケットの優先度が第4のパケットの優先度と異なるように、第3のパケットのスケジューリング優先度を変更し、第4のパケットおよび第3のパケットの両方が、第2のパケットフローに属し、第3のパケットが、第2のパケットフローに対応するエントリが輻輳フローフローテーブルに追加された後に取得されるパケットであり、第4のパケットが、第2のパケットフローに対応するエントリが輻輳フローフローテーブルに追加される前に取得されるパケットである、ようにさらに構成される。
図11は、本出願によるネットワークデバイスのさらに別の実施形態の概略構造図である。図11に示されているように、ネットワークデバイスは、プロセッサ1101を含み得、メモリ1102および通信モジュール1103をさらに含み得る。
本デバイスの制御センタとして、プロセッサ1101は、様々なインタフェースおよび配線を使用して本デバイス全体の様々な部分に接続され、メモリ1102に記憶されているソフトウェアプログラムおよび/またはモジュールを動作させまたは実行し、メモリ1102に記憶されているデータを呼び出すことによって、本デバイスの様々な機能および/またはデータ処理を実行する。プロセッサ1101は、中央処理装置(central processing unit、CPU)、ネットワークプロセッサ(network processor、NP)、またはCPUとNPとの組み合わせであり得る。プロセッサ1101は、ハードウェアチップをさらに含み得る。ハードウェアチップは、特定用途向け集積回路(application−specific integrated circuit、ASIC)、プログラマブル論理デバイス(programmable logic device、PLD)、またはこれらの組み合わせであり得る。PLDは、複合プログラマブル論理デバイス(complex programmable logic device、CPLD)、フィールドプログラマブルゲートアレイ(field−programmable gate array、FPGA)、汎用アレイ論理(generic array logic、GAL)、またはこれらの任意の組み合わせであり得る。
メモリ1102は、揮発性メモリ(volatile memory)、例えばランダムアクセスメモリ(random access memory、RAM)を含み得るし、または不揮発性メモリ(non−volatile memory)、例えばフラッシュメモリ(flash memory)、ハードディスク(hard disk drive、HDD)、またはソリッドステートドライブ(solid−state drive、SSD)を含み得る。メモリは、前述のタイプのメモリの組み合わせをさらに含み得る。メモリ1102は、命令、プログラム、またはコードを記憶し得、本デバイスのプロセッサ1101は、プログラムまたはコードを実行することによって本デバイスの機能を実施し得る。
通信モジュール1103は、本デバイスと別のデバイスとの間の通信を実施するように構成され得る。本出願の実施形態では、通信モジュール1103は、本デバイスがイーサネット(登録商標)を介して別のデバイスと通信し得るようにイーサネット(登録商標)ポートを提供するよう構成されたモジュールであり得る。例えば、本デバイスがサーバである場合、通信モジュール1103は、ネットワークインタフェースカードであり得る。
プロセッサ1101は、輻輳状態の変化を引き起こすパケットフローを検出し、輻輳分離メッセージを生成し、輻輳分離メッセージが、パケットフロー内のパケットの優先度を変更するために使用され、輻輳分離メッセージが、パケットフローの記述情報を含み、輻輳分離メッセージを少なくとも1つのノードに送信するように構成され得る。代わりに、プロセッサ1101は、受信された輻輳分離メッセージに含まれる記述情報に基づいて、記述情報によって示されるパケットフロー内のパケットの優先度を変更するように構成され得る。プロセッサ1101によって実施される機能またはプロセッサ1101によって実行される方法のステップについては、前述の実施形態を参照されたい。ここでは詳細は再度説明されない。
ここでは、前述の実施形態の全部または一部は、ソフトウェア、ハードウェア、ファームウェア、またはこれらの任意の組み合わせによって実施され得ることに留意されたい。ソフトウェアが実施形態を実施するために使用される場合、実施形態の全部または一部は、コンピュータプログラム製品の形態で実施され得る。コンピュータプログラム製品は、1つ以上のコンピュータ命令を含む。コンピュータプログラム命令がコンピュータ上でロードされて実行されると、本出願の前述の実施形態による手順または機能の全部または一部が生成される。コンピュータは、汎用コンピュータ、専用コンピュータ、コンピュータネットワーク、または別のプログラマブル装置であり得る。コンピュータ命令は、コンピュータ可読記憶媒体に記憶され得るし、またはあるコンピュータ可読記憶媒体から別のコンピュータ可読記憶媒体に送信され得る。例えば、コンピュータ命令は、有線方式、例えば同軸ケーブル、光ファイバ、もしくはデジタル加入者回線(DSL)で、またはワイヤレス方式、例えば赤外線、無線、またはマイクロ波で、あるウェブサイト、コンピュータ、サーバ、またはデータセンタから別のウェブサイト、コンピュータ、サーバ、またはデータセンタに送信され得る。コンピュータ可読記憶媒体は、コンピュータによってアクセス可能な任意の使用可能な媒体、または1つ以上の使用可能な媒体を組み込んだ、サーバもしくはデータセンタなどのデータ記憶デバイスであり得る。使用可能な媒体は、フロッピー(登録商標)ディスク、ハードディスク、もしくは磁気テープなどの磁気媒体、DVDなどの光学媒体、またはソリッドステートドライブ(solid state disk、SSD)などの半導体媒体などであり得る。
本明細書の実施形態における同じまたは同様の部分については、相互参照されたい。とりわけ、ネットワーク装置およびデバイスに関連する実施形態は、基本的に方法の実施形態と同様であり、したがって簡単に説明されている。関連する部分については、方法の実施形態の説明を参照されたい。
上で説明された本出願の実施態様は、本出願の保護範囲を限定することを意図されていない。
901 処理ユニット
902 送信ユニット
1001 受信ユニット
1002 処理ユニット
1101 プロセッサ
1102 メモリ
1103 通信モジュール
第2のパケットフローに対応するエントリが輻輳フローフローテーブル内に存在する場合、それは、第2のパケットフローが輻輳状態の変化を引き起こすパケットフローであり、したがって、第3のパケットの優先度が変更される必要があることを示す。
現在のノードは、第3のパケットの優先度が第4のパケットの優先度と異なるように、第3のパケットの優先度を変更し得、第4のパケットおよび第3のパケットの両方は、第2のパケットフローに属し、第3のパケットは、第2のパケットフローに対応するエントリが輻輳フローフローテーブルに追加された後に受信されるパケットであり、第4のパケットは、第2のパケットフローに対応するエントリが輻輳フローフローテーブルに追加される前に受信されるパケットである。
別の実施態様では、上流ノードは、最初に第3のパケットを取得し、第3のパケットを取得した後、上流ノードは、第3のパケットが属する第2のパケットフローを判定し得る。第2のパケットフローに対応するエントリが輻輳フローフローテーブル内に存在する場合、第3のパケットの優先度が変更される。第3のパケットの優先度を変更する特定の実施態様については、前述の説明を参照されたい。ここでは詳細は再度説明されない。

Claims (41)

  1. 輻輳状態の変化を引き起こすパケットフローを検出するステップと、
    輻輳分離メッセージを生成するステップであって、前記輻輳分離メッセージが、前記パケットフロー内のパケットの優先度を変更するために使用され、前記輻輳分離メッセージが、前記パケットフローの記述情報を含む、ステップと、
    前記輻輳分離メッセージを少なくとも1つのノードに送信するステップと
    を含む、パケット制御方法。
  2. 前記輻輳分離メッセージを少なくとも1つのノードに送信する前記ステップが、
    前記パケットフローを送信する上流ノードに前記輻輳分離メッセージを送信するステップであって、前記輻輳分離メッセージが、前記パケットフロー内の前記パケットのスケジューリング優先度を下げるように前記ノードに命令すために特に使用される、ステップ
    を含む、請求項1に記載の方法。
  3. 前記パケットフロー内の前記パケットの前記スケジューリング優先度を下げるステップ
    をさらに含む、請求項1または2に記載の方法。
  4. 前記パケットフロー内の前記パケットの前記スケジューリング優先度を下げる前記ステップが、
    前記パケットフロー内の前記パケットの優先度指示フィールドのコンテンツを変更するステップであって、変更後のコンテンツに対応するスケジューリング優先度が変更前の前記コンテンツに対応するスケジューリング優先度よりも低くなる、ステップ、または
    低優先度の処理キューに入るように前記パケットフロー内の前記パケットを制御するステップであって、前記低優先度の処理キューのスケジューリング優先度が、前記パケットフロー内の前記パケットの優先度指示フィールドのコンテンツに対応するスケジューリング優先度よりも低い、ステップ
    を含む、請求項3に記載の方法。
  5. 前記パケットフローに対応し、かつフローテーブル内にあるエントリの輻輳マーク項目のコンテンツを第1のマークに設定するステップであって、前記輻輳マーク項目が、前記輻輳マーク項目が属するエントリに対応するパケットフローが輻輳フローであるかどうかを記録するために使用され、前記第1のマークが、前記輻輳マーク項目が属する前記エントリに対応する前記パケットフローが輻輳フローであることを示すために使用される、ステップ
    をさらに含む、請求項1から4のいずれか一項に記載の方法。
  6. 前記エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内に前記パケットフロー内のパケットが受信されなかった場合に、前記マーク項目を第2のマークに設定するステップであって、前記第2のマークが、前記マーク項目が属する前記エントリに対応する前記パケットフローが非輻輳フローであることを示すために使用され、前記タイムスタンプ項目が、前記パケットフロー内のパケットが最後に受信された時点を記録するために使用される、ステップ
    をさらに含む、請求項7に記載の方法。
  7. 第1のパケットを受信するステップと、
    第1のパケットフローに対応し、かつ前記フローテーブル内にあるエントリの輻輳マーク項目のコンテンツが前記第1のマークである場合に、前記第1のパケットの優先度が第2のパケットの優先度と異なるように、前記第1のパケットのスケジューリング優先度を変更するステップであって、前記第2のパケットおよび前記第1のパケットの両方が、前記第1のパケットフローに属し、前記第1のパケットが、前記輻輳マーク項目の前記コンテンツが前記第1のマークに設定された後に受信されるパケットであり、前記第2のパケットが、前記輻輳マーク項目の前記コンテンツが前記第1のマークに設定される前に受信されるパケットである、ステップと
    をさらに含む、請求項5に記載の方法。
  8. 前記パケットフローに対応するエントリを輻輳フローフローテーブルに追加するステップ
    をさらに含む、請求項1から4のいずれか一項に記載の方法。
  9. 前記エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内に前記パケットフロー内のパケットが受信されなかった場合に、前記パケットフローに対応する前記エントリを削除するステップであって、前記タイムスタンプ項目が、前記パケットフロー内のパケットが最後に受信された時点を記録するために使用される、ステップ
    をさらに含む、請求項8に記載の方法。
  10. 第3のパケットを受信するステップと、
    第2のパケットフローに対応するエントリが前記輻輳フローフローテーブル内に存在する場合に、前記第3のパケットの優先度が第4のパケットの優先度と異なるように、前記第3のパケットのスケジューリング優先度を変更するステップであって、前記第4のパケットおよび前記第3のパケットの両方が、前記第2のパケットフローに属し、前記第3のパケットが、前記第2のパケットフローに対応する前記エントリが前記輻輳フローフローテーブルに追加された後に受信されるパケットであり、前記第4のパケットが、前記第2のパケットフローに対応する前記エントリが前記輻輳フローフローテーブルに追加される前に受信されるパケットである、ステップと
    をさらに含む、請求項8に記載の方法。
  11. 輻輳分離メッセージを受信するステップであって、前記輻輳分離メッセージが、記述情報を含む、ステップと、
    前記記述情報によって示されるパケットフロー内のパケットの優先度を変更するステップと
    を含む、パケット制御方法。
  12. 前記記述情報によって示されるパケットフロー内のパケットの優先度を変更する前記ステップが、
    前記パケットフロー内の前記パケットのスケジューリング優先度を下げるステップ
    を含む、請求項11に記載の方法。
  13. 前記パケットフロー内の前記パケットのスケジューリング優先度を下げる前記ステップが、
    前記パケットフロー内の前記パケットの優先度指示フィールドのコンテンツを変更するステップであって、変更後のコンテンツに対応するスケジューリング優先度が変更前の前記コンテンツに対応するスケジューリング優先度よりも低くなる、ステップ、または
    低優先度の処理キューに入るように前記パケットフロー内の前記パケットを制御するステップであって、前記低優先度の処理キューのスケジューリング優先度が、前記パケットフロー内の前記パケットの優先度指示フィールドのコンテンツに対応するスケジューリング優先度よりも低い、ステップ
    を含む、請求項12に記載の方法。
  14. 輻輳分離メッセージを受信する前記ステップの後に、
    前記パケットフローに対応し、かつフローテーブル内にあるエントリの輻輳マーク項目のコンテンツを第1のマークに設定するステップであって、前記輻輳マーク項目が、前記輻輳マーク項目が属するエントリに対応するパケットフローが輻輳フローであるかどうかを記録するために使用され、前記第1のマークが、前記輻輳マーク項目が属する前記エントリに対応する前記パケットフローが輻輳フローであることを示すために使用される、ステップ
    をさらに含む、請求項11から13のいずれか一項に記載の方法。
  15. 前記エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内に前記パケットフロー内のパケットが受信されなかった場合に、前記マーク項目を第2のマークに設定するステップであって、前記第2のマークが、前記マーク項目が属する前記エントリに対応する前記パケットフローが非輻輳フローであることを示すために使用され、前記タイムスタンプ項目が、前記パケットフロー内のパケットが最後に受信された時点を記録するために使用される、ステップ
    をさらに含む、請求項14に記載の方法。
  16. 第1のパケットを取得するステップと、
    第1のパケットフローに対応し、かつ前記フローテーブル内にあるエントリの輻輳マーク項目のコンテンツが前記第1のマークである場合に、前記第1のパケットの優先度が第2のパケットの優先度と異なるように、前記第1のパケットのスケジューリング優先度を変更するステップであって、前記第2のパケットおよび前記第1のパケットの両方が、前記第1のパケットフローに属し、前記第1のパケットが、前記輻輳マーク項目の前記コンテンツが前記第1のマークに設定された後に取得されるパケットであり、前記第2のパケットが、前記輻輳マーク項目の前記コンテンツが前記第1のマークに設定される前に取得されるパケットである、ステップと
    をさらに含む、請求項14に記載の方法。
  17. 輻輳分離メッセージを受信する前記ステップの後に、
    前記パケットフローに対応するエントリを輻輳フローフローテーブルに追加するステップ
    をさらに含む、請求項11から13のいずれか一項に記載の方法。
  18. 前記エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内に前記パケットフロー内のパケットが受信されなかった場合に、前記パケットフローに対応する前記エントリを削除するステップであって、前記タイムスタンプ項目が、前記パケットフロー内のパケットが最後に受信された時点を記録するために使用される、ステップ
    をさらに含む、請求項17に記載の方法。
  19. 第3のパケットを取得するステップと、
    第2のパケットフローに対応するエントリが前記輻輳フローフローテーブル内に存在する場合に、前記第3のパケットの優先度が前記第4のパケットの優先度と異なるように、前記第3のパケットのスケジューリング優先度を変更するステップであって、前記第4のパケットおよび前記第3のパケットの両方が、前記第2のパケットフローに属し、前記第3のパケットが、前記第2のパケットフローに対応する前記エントリが前記輻輳フローフローテーブルに追加された後に取得されるパケットであり、前記第4のパケットが、前記第2のパケットフローに対応する前記エントリが前記輻輳フローフローテーブルに追加される前に取得されるパケットである、ステップと
    をさらに含む、請求項17に記載の方法。
  20. 輻輳状態の変化を引き起こすパケットフローを検出し、輻輳分離メッセージを生成するように構成された処理ユニットであって、前記輻輳分離メッセージが、前記パケットフロー内のパケットの優先度を変更するために使用され、前記輻輳分離メッセージが、前記パケットフローの記述情報を含む、処理ユニットと、
    前記輻輳分離メッセージを少なくとも1つのノードに送信するように構成された送信ユニットと
    を備える、ネットワークデバイス。
  21. 前記送信ユニットが、前記パケットフローを送信する上流ノードに前記輻輳分離メッセージを送信し、前記輻輳分離メッセージが、前記パケットフロー内の前記パケットのスケジューリング優先度を下げるように前記ノードに命令すために特に使用される、ように特に構成されている、
    請求項20に記載のデバイス。
  22. 前記処理ユニットが、前記パケットフロー内の前記パケットの前記スケジューリング優先度を下げるようにさらに構成されている、
    請求項20または21に記載のデバイス。
  23. 前記処理デバイスが、前記パケットフロー内の前記パケットの優先度指示フィールドのコンテンツを変更し、変更後のコンテンツに対応するスケジューリング優先度が変更前の前記コンテンツに対応するスケジューリング優先度よりも低くなる、ように、または低優先度の処理キューに入るように前記パケットフロー内の前記パケットを制御し、前記低優先度の処理キューのスケジューリング優先度が、前記パケットフロー内の前記パケットの優先度指示フィールドのコンテンツに対応するスケジューリング優先度よりも低い、ように特に構成されている、
    請求項22に記載のデバイス。
  24. 前記処理ユニットが、前記パケットフローに対応し、かつフローテーブル内にあるエントリの輻輳マーク項目のコンテンツを第1のマークに設定し、前記輻輳マーク項目が、前記輻輳マーク項目が属するエントリに対応するパケットフローが輻輳フローであるかどうかを記録するために使用され、前記第1のマークが、前記輻輳マーク項目が属する前記エントリに対応する前記パケットフローが輻輳フローであることを示すために使用される、ようにさらに構成されている、
    請求項20から23のいずれか一項に記載のデバイス。
  25. 前記処理ユニットが、前記エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内に前記パケットフロー内のパケットが受信されなかった場合に、前記マーク項目を第2のマークに設定し、前記第2のマークが、前記マーク項目が属する前記エントリに対応する前記パケットフローが非輻輳フローであることを示すために使用され、前記タイムスタンプ項目が、前記パケットフロー内のパケットが最後に受信された時点を記録するために使用される、ようにさらに構成されている、
    請求項24に記載のデバイス。
  26. 第1のパケットを受信するように構成された受信ユニット
    をさらに備え、
    前記処理ユニットが、第1のパケットフローに対応し、かつ前記フローテーブル内にあるエントリの輻輳マーク項目のコンテンツが前記第1のマークである場合に、前記第1のパケットの優先度が第2のパケットの優先度と異なるように、前記第1のパケットのスケジューリング優先度を変更し、前記第2のパケットおよび前記第1のパケットの両方が、前記第1のパケットフローに属し、前記第1のパケットが、前記輻輳マーク項目の前記コンテンツが前記第1のマークに設定された後に受信されるパケットであり、前記第2のパケットが、前記輻輳マーク項目の前記コンテンツが前記第1のマークに設定される前に受信されるパケットである、ようにさらに構成されている、請求項24に記載のデバイス。
  27. 前記処理ユニットが、前記パケットフローに対応するエントリを輻輳フローフローテーブルに追加するようにさらに構成されている、
    請求項20から23のいずれか一項に記載のデバイス。
  28. 前記処理ユニットが、前記エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内に前記パケットフロー内のパケットが受信されなかった場合に、前記パケットフローに対応する前記エントリを削除し、前記タイムスタンプ項目が、前記パケットフロー内のパケットが最後に受信された時点を記録するために使用される、ようにさらに構成されている、
    請求項27に記載のデバイス。
  29. 第3のパケットを受信するように構成された受信ユニット
    をさらに備え、
    前記処理ユニットが、第2のパケットフローに対応するエントリが前記輻輳フローフローテーブル内に存在する場合に、前記第3のパケットの優先度が前記第4のパケットの優先度と異なるように、前記第3のパケットのスケジューリング優先度を変更し、前記第4のパケットおよび前記第3のパケットの両方が、前記第2のパケットフローに属し、前記第3のパケットが、前記第2のパケットフローに対応する前記エントリが前記輻輳フローフローテーブルに追加された後に受信されるパケットであり、前記第4のパケットが、前記第2のパケットフローに対応する前記エントリが前記輻輳フローフローテーブルに追加される前に受信されるパケットである、ようにさらに構成されている、請求項27に記載のデバイス。
  30. 輻輳分離メッセージを受信するように構成された受信ユニットであって、前記輻輳分離メッセージが、記述情報を含む、受信ユニットと、
    前記記述情報によって示されるパケットフロー内のパケットの優先度を変更するように構成された処理ユニットと
    を備える、ネットワークデバイス。
  31. 前記処理ユニットが、前記パケットフロー内の前記パケットのスケジューリング優先度を下げるようにさらに構成されている、
    請求項30に記載のデバイス。
  32. 前記処理ユニットが、前記パケットフロー内の前記パケットの優先度指示フィールドのコンテンツを変更し、変更後のコンテンツに対応するスケジューリング優先度が変更前の前記コンテンツに対応するスケジューリング優先度よりも低くなる、ように、または低優先度の処理キューに入るように前記パケットフロー内の前記パケットを制御し、前記低優先度の処理キューのスケジューリング優先度が、前記パケットフロー内の前記パケットの優先度指示フィールドのコンテンツに対応するスケジューリング優先度よりも低い、ようにさらに構成されている、
    請求項31に記載のデバイス。
  33. 前記処理ユニットが、前記パケットフローに対応し、かつフローテーブル内にあるエントリの輻輳マーク項目のコンテンツを第1のマークに設定し、前記輻輳マーク項目が、前記輻輳マーク項目が属するエントリに対応するパケットフローが輻輳フローであるかどうかを記録するために使用され、前記第1のマークが、前記輻輳マーク項目が属する前記エントリに対応する前記パケットフローが輻輳フローであることを示すために使用される、ようにさらに構成されている、
    請求項30から32のいずれか一項に記載のデバイス。
  34. 前記処理ユニットが、前記エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内に前記パケットフロー内のパケットが受信されなかった場合に、前記マーク項目を第2のマークに設定し、前記第2のマークが、前記マーク項目が属する前記エントリに対応する前記パケットフローが非輻輳フローであることを示すために使用され、前記タイムスタンプ項目が、前記パケットフロー内のパケットが最後に受信された時点を記録するために使用される、ようにさらに構成されている、
    請求項33に記載のデバイス。
  35. 第1のパケットを取得するようにさらに構成された前記受信ユニット
    をさらに備え、
    前記処理ユニットが、第1のパケットフローに対応し、かつ前記フローテーブル内にあるエントリの輻輳マーク項目のコンテンツが前記第1のマークである場合に、前記第1のパケットの優先度が第2のパケットの優先度と異なるように、前記第1のパケットのスケジューリング優先度を変更し、前記第2のパケットおよび前記第1のパケットの両方が、前記第1のパケットフローに属し、前記第1のパケットが、前記輻輳マーク項目の前記コンテンツが前記第1のマークに設定された後に取得されるパケットであり、前記第2のパケットが、前記輻輳マーク項目の前記コンテンツが前記第1のマークに設定される前に取得されるパケットである、ようにさらに構成されている、請求項33に記載のデバイス。
  36. 前記処理ユニットが、前記パケットフローに対応するエントリを輻輳フローフローテーブルに追加するようにさらに構成されている、
    請求項32から34のいずれか一項に記載のデバイス。
  37. 前記処理ユニットが、前記エントリのタイムスタンプ項目によって記録された時点から始まる所定の期間内に前記パケットフロー内のパケットが受信されなかった場合に、前記パケットフローに対応する前記エントリを削除し、前記タイムスタンプ項目が、前記パケットフロー内のパケットが最後に受信された時点を記録するために使用される、ようにさらに構成されている、
    請求項36に記載のデバイス。
  38. 第3のパケットを取得するようにさらに構成された前記受信ユニット
    をさらに備え、
    前記処理ユニットが、第2のパケットフローに対応するエントリが前記輻輳フローフローテーブル内に存在する場合に、前記第3のパケットの優先度が前記第4のパケットの優先度と異なるように、前記第3のパケットのスケジューリング優先度を変更し、前記第4のパケットおよび前記第3のパケットの両方が、前記第2のパケットフローに属し、前記第3のパケットが、前記第2のパケットフローに対応する前記エントリが前記輻輳フローフローテーブルに追加された後に取得されるパケットであり、前記第4のパケットが、前記第2のパケットフローに対応する前記エントリが前記輻輳フローフローテーブルに追加される前に取得されるパケットである、ようにさらに構成されている、請求項36に記載のデバイス。
  39. 命令を含み、前記命令がコンピュータ上で実行されたとき、前記コンピュータが、請求項1から10のいずれか一項に記載の方法を実行するか、または前記コンピュータが、請求項11から19のいずれか一項に記載の方法を実行する、コンピュータ可読記憶媒体。
  40. コンピュータプログラム製品であって、前記コンピュータプログラム製品がコンピュータ上で実行されたとき、前記コンピュータが、請求項1から10のいずれか一項に記載の方法を実行するか、または前記コンピュータが、請求項11から19のいずれか一項に記載の方法を実行する、コンピュータプログラム製品。
  41. メモリと、プロセッサと、前記プロセッサ上で実行され得る、前記メモリに記憶されたコンピュータプログラムとを含む通信デバイスであって、前記プロセッサが、請求項1から10のいずれか一項に記載の方法を実施するか、または請求項11から19のいずれか一項に記載の方法を実施するために前記プログラムを実行する、通信デバイス。
JP2020509427A 2017-08-18 2018-06-28 パケット制御方法およびネットワーク装置 Active JP6938766B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201710713089.XA CN109412964B (zh) 2017-08-18 2017-08-18 报文控制方法及网络装置
CN201710713089.X 2017-08-18
PCT/CN2018/093298 WO2019033857A1 (zh) 2017-08-18 2018-06-28 报文控制方法及网络装置

Publications (2)

Publication Number Publication Date
JP2020532194A true JP2020532194A (ja) 2020-11-05
JP6938766B2 JP6938766B2 (ja) 2021-09-22

Family

ID=65361997

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020509427A Active JP6938766B2 (ja) 2017-08-18 2018-06-28 パケット制御方法およびネットワーク装置

Country Status (6)

Country Link
US (2) US11190449B2 (ja)
EP (2) EP4325803A3 (ja)
JP (1) JP6938766B2 (ja)
KR (1) KR102317523B1 (ja)
CN (1) CN109412964B (ja)
WO (1) WO2019033857A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023105615A1 (ja) * 2021-12-07 2023-06-15 日本電信電話株式会社 コンピューティングシステム

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10454714B2 (en) 2013-07-10 2019-10-22 Nicira, Inc. Method and system of overlay flow control
US10135789B2 (en) 2015-04-13 2018-11-20 Nicira, Inc. Method and system of establishing a virtual private network in a cloud service for branch networking
US10498652B2 (en) 2015-04-13 2019-12-03 Nicira, Inc. Method and system of application-aware routing with crowdsourcing
US10992568B2 (en) 2017-01-31 2021-04-27 Vmware, Inc. High performance software-defined core network
US20180219765A1 (en) 2017-01-31 2018-08-02 Waltz Networks Method and Apparatus for Network Traffic Control Optimization
US20200036624A1 (en) 2017-01-31 2020-01-30 The Mode Group High performance software-defined core network
US11706127B2 (en) 2017-01-31 2023-07-18 Vmware, Inc. High performance software-defined core network
US10523539B2 (en) 2017-06-22 2019-12-31 Nicira, Inc. Method and system of resiliency in cloud-delivered SD-WAN
US10999100B2 (en) 2017-10-02 2021-05-04 Vmware, Inc. Identifying multiple nodes in a virtual network defined over a set of public clouds to connect to an external SAAS provider
US10686625B2 (en) 2017-10-02 2020-06-16 Vmware, Inc. Defining and distributing routes for a virtual network
US11115480B2 (en) 2017-10-02 2021-09-07 Vmware, Inc. Layer four optimization for a virtual network defined over public cloud
US11223514B2 (en) 2017-11-09 2022-01-11 Nicira, Inc. Method and system of a dynamic high-availability mode based on current wide area network connectivity
US11349761B2 (en) * 2019-03-08 2022-05-31 Hewlett Packard Enterprise Development Lp Cost effective congestion isolation for lossless ethernet
CN112054964B (zh) * 2019-06-05 2023-11-28 中兴通讯股份有限公司 队列拥塞控制方法、装置、设备及存储介质
CN112187556B (zh) * 2019-07-01 2023-12-08 华为技术有限公司 一种拥塞测量方法、网络节点
US10999137B2 (en) 2019-08-27 2021-05-04 Vmware, Inc. Providing recommendations for implementing virtual networks
US11044190B2 (en) 2019-10-28 2021-06-22 Vmware, Inc. Managing forwarding elements at edge nodes connected to a virtual network
CN113037640A (zh) * 2019-12-09 2021-06-25 华为技术有限公司 数据转发方法、数据缓存方法、装置和相关设备
US11394640B2 (en) 2019-12-12 2022-07-19 Vmware, Inc. Collecting and analyzing data regarding flows associated with DPI parameters
US11489783B2 (en) 2019-12-12 2022-11-01 Vmware, Inc. Performing deep packet inspection in a software defined wide area network
CN111131061B (zh) * 2019-12-30 2022-07-08 中国联合网络通信集团有限公司 一种数据传输方法及网络设备
US11606712B2 (en) 2020-01-24 2023-03-14 Vmware, Inc. Dynamically assigning service classes for a QOS aware network link
CN113726671B (zh) * 2020-05-26 2023-06-30 华为技术有限公司 一种网络拥塞控制方法及相关产品
US11245641B2 (en) 2020-07-02 2022-02-08 Vmware, Inc. Methods and apparatus for application aware hub clustering techniques for a hyper scale SD-WAN
CN111526097B (zh) * 2020-07-03 2020-10-30 新华三半导体技术有限公司 一种报文调度方法、装置及网络芯片
US11363124B2 (en) 2020-07-30 2022-06-14 Vmware, Inc. Zero copy socket splicing
CN114095448A (zh) * 2020-08-05 2022-02-25 华为技术有限公司 一种拥塞流的处理方法及设备
JP7482724B2 (ja) 2020-09-09 2024-05-14 株式会社Lixil 便器装置
US11575591B2 (en) 2020-11-17 2023-02-07 Vmware, Inc. Autonomous distributed forwarding plane traceability based anomaly detection in application traffic for hyper-scale SD-WAN
US11575600B2 (en) 2020-11-24 2023-02-07 Vmware, Inc. Tunnel-less SD-WAN
KR102600204B1 (ko) 2020-12-01 2023-11-10 한국전자통신연구원 Gen-Z 인터페이스 기반의 혼잡 제어 방법 및 장치
US11929903B2 (en) 2020-12-29 2024-03-12 VMware LLC Emulating packet flows to assess network links for SD-WAN
US11792127B2 (en) 2021-01-18 2023-10-17 Vmware, Inc. Network-aware load balancing
US11979325B2 (en) 2021-01-28 2024-05-07 VMware LLC Dynamic SD-WAN hub cluster scaling with machine learning
US11381499B1 (en) 2021-05-03 2022-07-05 Vmware, Inc. Routing meshes for facilitating routing through an SD-WAN
US11729065B2 (en) 2021-05-06 2023-08-15 Vmware, Inc. Methods for application defined virtual network service among multiple transport in SD-WAN
CN115473851A (zh) * 2021-05-25 2022-12-13 华为技术有限公司 数据流的处理方法、网络节点和系统
US11489720B1 (en) 2021-06-18 2022-11-01 Vmware, Inc. Method and apparatus to evaluate resource elements and public clouds for deploying tenant deployable elements based on harvested performance metrics
US11943146B2 (en) 2021-10-01 2024-03-26 VMware LLC Traffic prioritization in SD-WAN
US11909815B2 (en) 2022-06-06 2024-02-20 VMware LLC Routing based on geolocation costs

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000183965A (ja) * 1998-12-15 2000-06-30 Toshiba Corp パケットスイッチ及びパケット交換方法
CN1426198A (zh) * 2001-12-12 2003-06-25 富士通株式会社 用于经由网际协议的话音网络的拥塞控制系统
JP2007067885A (ja) * 2005-08-31 2007-03-15 Nippon Telegr & Teleph Corp <Ntt> データフレーム処理装置および方法
JP2016501475A (ja) * 2012-11-15 2016-01-18 コンパス・エレクトロ−オプティカル・システムズ・リミテッド 受動相互接続及び分散型スイッチレススイッチングを行うルータ
WO2017117252A1 (en) * 2015-12-28 2017-07-06 Amazon Technologies, Inc. Multi-path transport design

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6094435A (en) * 1997-06-30 2000-07-25 Sun Microsystems, Inc. System and method for a quality of service in a multi-layer network element
US7239636B2 (en) 2001-07-23 2007-07-03 Broadcom Corporation Multiple virtual channels for use in network devices
RU2407246C2 (ru) * 2005-12-02 2010-12-20 Телефонактиеболагет Л М Эрикссон (Пабл) Способ и устройство выделения ширины полосы в системе беспроводной связи
CN101325803B (zh) * 2007-07-12 2011-06-22 中兴通讯股份有限公司 编解码选择和指配方法
CN101299716B (zh) * 2008-04-25 2011-04-06 华为技术有限公司 业务数据发送的方法、装置及系统
CN101997766B (zh) * 2009-08-31 2012-09-05 中兴通讯股份有限公司 一种基于优先级的令牌桶限速的方法及系统
CN102025617B (zh) * 2010-11-26 2015-04-01 中兴通讯股份有限公司 以太网拥塞控制方法及装置
US8717893B2 (en) * 2010-11-29 2014-05-06 Verizon Patent And Licensing Inc. Network stabilizer
CN102123444B (zh) * 2010-12-31 2014-04-16 华为技术有限公司 异系统之间共享传输带宽的方法及设备、系统
JP5710418B2 (ja) * 2011-08-08 2015-04-30 アラクサラネットワークス株式会社 パケット中継装置、及び方法
WO2013158115A1 (en) * 2012-04-20 2013-10-24 Hewlett-Packard Development Company, L.P. Controlling data rates of data flows based on information indicating congestion
US9438527B2 (en) * 2012-05-24 2016-09-06 Marvell World Trade Ltd. Flexible queues in a network switch
CN103997465B (zh) * 2014-05-27 2018-02-23 华为技术有限公司 一种生成cnm的方法及设备
US10003544B2 (en) * 2014-12-11 2018-06-19 Futurewei Technologies, Inc. Method and apparatus for priority flow and congestion control in ethernet network
CN104661260B (zh) * 2015-01-20 2018-07-20 中南大学 一种QoS感知和负载均衡的无线Mesh智能电网路由方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000183965A (ja) * 1998-12-15 2000-06-30 Toshiba Corp パケットスイッチ及びパケット交換方法
US20040066743A1 (en) * 1998-12-15 2004-04-08 Kabushiki Kaisha Toshiba Packet switch and packet switching method using priority control based on congestion status within packet switch
CN1426198A (zh) * 2001-12-12 2003-06-25 富士通株式会社 用于经由网际协议的话音网络的拥塞控制系统
JP2003179636A (ja) * 2001-12-12 2003-06-27 Fujitsu Ltd VoIPネットワークの輻輳制御システム
JP2007067885A (ja) * 2005-08-31 2007-03-15 Nippon Telegr & Teleph Corp <Ntt> データフレーム処理装置および方法
JP2016501475A (ja) * 2012-11-15 2016-01-18 コンパス・エレクトロ−オプティカル・システムズ・リミテッド 受動相互接続及び分散型スイッチレススイッチングを行うルータ
WO2017117252A1 (en) * 2015-12-28 2017-07-06 Amazon Technologies, Inc. Multi-path transport design

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023105615A1 (ja) * 2021-12-07 2023-06-15 日本電信電話株式会社 コンピューティングシステム

Also Published As

Publication number Publication date
WO2019033857A1 (zh) 2019-02-21
US20200186471A1 (en) 2020-06-11
KR102317523B1 (ko) 2021-10-25
KR20200037405A (ko) 2020-04-08
US11190449B2 (en) 2021-11-30
CN109412964A (zh) 2019-03-01
EP3661137B1 (en) 2023-10-04
EP3661137A1 (en) 2020-06-03
CN109412964B (zh) 2022-04-29
EP4325803A3 (en) 2024-04-10
EP4325803A2 (en) 2024-02-21
EP3661137A4 (en) 2020-06-10
JP6938766B2 (ja) 2021-09-22
US11646967B2 (en) 2023-05-09
US20220070098A1 (en) 2022-03-03

Similar Documents

Publication Publication Date Title
JP6938766B2 (ja) パケット制御方法およびネットワーク装置
US8396067B2 (en) Address learning method and address learning switch
US11032205B2 (en) Flow control method and switching device
CN106134138B (zh) 一种拥塞控制的方法、设备和系统
CN111800351B (zh) 由交换机进行的拥塞通知分组生成
CN107342906B (zh) 一种大象流的检测方法、设备及系统
US20050276230A1 (en) Communication statistic information collection apparatus
US20220303217A1 (en) Data Forwarding Method, Data Buffering Method, Apparatus, and Related Device
WO2014141006A1 (en) Scalable flow and congestion control in a network
WO2019072072A1 (zh) 一种拥塞流识别方法及网络设备
WO2021098425A1 (zh) 配置业务的服务质量策略方法、装置和计算设备
KR20220006606A (ko) 메시지 처리 방법 및 관련 장치
WO2022028342A1 (zh) 一种拥塞流的处理方法及设备
CN109818879A (zh) 流量控制方法及装置
GB2462060A (en) Emulated LAN (ELAN) including specifying ports of a service member set and flooding a packet to the permitted members of the set.
JP2014022761A (ja) ネットワークシステム、情報中継装置、及びパケット配信方法
WO2011097859A1 (zh) 一种实现灵活qinq的方法及装置
JP2018107584A (ja) ネットワーク装置及びその制御方法
WO2019165855A1 (zh) 一种报文传输的方法及装置
CN113114578B (zh) 一种流量拥塞隔离方法、装置和系统
WO2021026740A1 (zh) 流量均衡方法、网络设备及电子设备
EP3806411A1 (en) Message control method and node device
WO2017211211A1 (zh) 一种报文转发的方法及装置
US20170155543A1 (en) Control apparatus, communication system, and control method
EP2107724A1 (en) Improved MAC address learning

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200421

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200421

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210312

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210405

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210705

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: 20210802

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210901

R150 Certificate of patent or registration of utility model

Ref document number: 6938766

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150