JP7135217B2 - パケットスケジューリング方法、関連するデバイス、およびコンピュータ記憶媒体 - Google Patents

パケットスケジューリング方法、関連するデバイス、およびコンピュータ記憶媒体 Download PDF

Info

Publication number
JP7135217B2
JP7135217B2 JP2021541488A JP2021541488A JP7135217B2 JP 7135217 B2 JP7135217 B2 JP 7135217B2 JP 2021541488 A JP2021541488 A JP 2021541488A JP 2021541488 A JP2021541488 A JP 2021541488A JP 7135217 B2 JP7135217 B2 JP 7135217B2
Authority
JP
Japan
Prior art keywords
packet
amount
tokens
scheduled
access device
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.)
Active
Application number
JP2021541488A
Other languages
English (en)
Other versions
JP2022518227A (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 JP2022518227A publication Critical patent/JP2022518227A/ja
Application granted granted Critical
Publication of JP7135217B2 publication Critical patent/JP7135217B2/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
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • H04L12/2814Exchanging control software or macros for controlling appliance services in a home automation network
    • 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/215Flow control; Congestion control using token-bucket
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • 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/36Flow control; Congestion control by determining packet size, e.g. maximum transfer unit [MTU]
    • 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/628Queue scheduling characterised by scheduling criteria for service slots or service orders based on packet size, e.g. shortest packet first
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2212/00Encapsulation of packets

Landscapes

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

Description

本発明は、通信技術の分野に関し、詳細には、パケットスケジューリング方法、関連するデバイス、およびコンピュータ記憶媒体に関する。
本出願は、その全体が参照により本明細書に組み込まれる、2019年1月31日に中国国家知識産権局で出願され「PACKET SCHEDULING METHOD, RELATED DEVICE, AND COMPUTER STORAGE MEDIUM」と題する中国特許出願第201910104686.1号の優先権を主張する。
電気通信サービスの発展とともに、ネットワーク事業者は、ネットワーク品質を改善するためにより改良された方式でネットワーク帯域幅を分析および管理する必要がある。一般的なブロードバンドアクセスネットワークでは、ユーザ機器は、ネットワークデバイスを使用することによってメトロポリタンエリアバックボーンネットワークのエッジレイヤにおけるアクセスデバイスに接続されることがあり、アクセスデバイスは、ユーザ機器の帯域幅およびネットワークデバイスの帯域幅を管理する。ネットワークデバイスはデジタル加入者回線アクセスマルチプレクサ(digital subscriber line access multiplexer、DSLAM)であり得、アクセスデバイスはブロードバンドリモートアクセスサーバ(broadband remote access server、BRAS)であり得る。
現在、アクセスデバイスがユーザ機器の帯域幅およびネットワークデバイスの帯域幅を管理するとき、ネットワーク側によってユーザ機器に送信された、スケジュールされるべきパケットを受信した後に、アクセスデバイスは、ユーザ機器によって受信されたパケットのパケット長さのみを推定し、次いで、ユーザ機器によって受信されたパケットの推定されたパケット長さに基づいて、スケジュールされるべきパケットをスケジュールする。しかしながら、パケット送信処理において、各デバイスによって受信されるパケットの長さは異なることがある。アクセスデバイスは、ユーザ機器の帯域幅およびネットワークデバイスの帯域幅を管理するために、ユーザ機器によって受信された、スケジュールされるべきパケットの推定されたパケット長さのみに基づいて、スケジュールされるべきパケットをスケジュールする。これは、ユーザ機器上での帯域幅管理の正当性のみを保証することができるが、別のネットワークデバイス上での帯域幅管理の正当性を保証することができない。
本発明の実施形態は、パケットスケジューリング方法および装置、関連するデバイス、ならびにコンピュータ記憶媒体を開示する。帯域幅管理を実施するアクセスデバイスは、スケジュールされるべきパケットの転送経路上の各デバイスによって受信されたパケットのパケット長さを推定し、次いで、各デバイスによって受信されたパケットの推定されたパケット長さに基づいて、スケジュールされるべきパケットをスケジュールし、それにより、アクセスデバイスは、ネットワークにおいて各デバイスの帯域幅をより正確に管理することができる。
第1の態様によれば、本出願の実施形態は、パケットスケジューリング方法を開示し、本方法は、
アクセスデバイスが、スケジュールされるべきパケットを受信することであって、スケジュールされるべきパケットは、ネットワーク側によってユーザ機器に送信されたパケットであることと、
アクセスデバイスが、スケジュールされるべきパケットの実際のパケット長さを取得することであって、実際のパケット長さは、スケジュールされるべきパケットの合計の長さを示すことと、
アクセスデバイスが、スケジュールされるべきパケットに基づいて第1の補償値および第2の補償値を判定することであって、第1の補償値は、スケジュールされるべきパケットが第1のネットワークデバイスによって転送された後の、実際のパケット長さに対する差異の推定値を示し、第2の補償値は、スケジュールされるべきパケットがアクセスデバイスによって転送された後の、実際のパケット長さに対する差異の推定値を示し、第1のネットワークデバイスは、スケジュールされるべきパケットの転送経路上でアクセスデバイスとユーザ機器との間に配置されたネットワークデバイスであることと、
アクセスデバイスが、第1のパケット長さおよび第2のパケット長さを判定することであって、第1のパケット長さの値は、実際のパケット長さの値と第1の補償値との和に等しく、第2のパケット長さの値は、実際のパケット長さの値と第2の補償値との和に等しいことと、
アクセスデバイスが、第1のパケット長さおよび第2のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールすることと、
を含む。
任意選択で、アクセスデバイスが、スケジュールされるべきパケットに基づいて第1の補償値および第2の補償値を判定することは、
アクセスデバイスが、スケジュールされるべきパケットに基づいて、スケジュールされるべきパケットの転送経路を判定することであって、転送経路は、アクセスデバイスの識別子および第1のネットワークデバイスの識別子を含むことと、
アクセスデバイスが、第1のネットワークデバイスの識別子に基づいて第1の補償値を判定し、アクセスデバイスの識別子に基づいて第2の補償値を判定することと、
を特に含む。
任意選択で、アクセスデバイスが、第1のネットワークデバイスの識別子に基づいて第1の補償値を判定し、アクセスデバイスの識別子に基づいて第2の補償値を判定することは、
アクセスデバイスが、第1のネットワークデバイスの識別子に基づいて第1の補償アルゴリズムを判定し、アクセスデバイスの識別子に基づいて第2の補償アルゴリズムを判定することであって、第1の補償アルゴリズムは、第1のネットワークデバイスによって転送されるパケットのパケット長さを補償するために使用され、第2の補償アルゴリズムは、アクセスデバイスによって転送されるパケットのパケット長さを補償するために使用されることと、
アクセスデバイスが、実際のパケット長さおよび第1の補償アルゴリズムに基づいて第1の補償値を判定し、実際のパケット長さおよび第2の補償アルゴリズムに基づいて第2の補償値を判定することと、
を特に含む。
任意選択で、アクセスデバイスが、第1のパケット長さおよび第2のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールすることは、
アクセスデバイスが、ユーザ機器に対応する第1のトークンバケット中の残りのトークンの第1の量を取得することであって、残りのトークンの第1の量は、現在の瞬間における第1のトークンバケット中のトークンの量に等しいことと、
アクセスデバイスが、第1のネットワークデバイスに対応する第2のトークンバケット中の残りのトークンの第2の量を取得することであって、残りのトークンの第2の量は、現在の瞬間における第2のトークンバケット中のトークンの量に等しいことと、
アクセスデバイスが、第1のトークンバケットおよび第1のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールするために使用されるターゲットトークンの第1の量を判定し、第2のトークンバケットおよび第2のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールするために使用されるターゲットトークンの第2の量を判定することと、
アクセスデバイスが、ターゲットトークンの第1の量が残りのトークンの第1の量以下であるかどうか、およびターゲットトークンの第2の量が残りのトークンの第2の量以下であるかどうかを判定することと、
アクセスデバイスが、ターゲットトークンの第1の量が残りのトークンの第1の量以下であり、ターゲットトークンの第2の量が残りのトークンの第2の量以下であると判定したとき、アクセスデバイスが、第1の期間中に、スケジュールされるべきパケットを転送すると判定し、第1のトークンバケットから、ターゲットトークンの第1の量と同じ量であるトークンを差し引き、第2のトークンバケットから、ターゲットトークンの第2の量と同じ量であるトークンを差し引くことと、
を特に含む。
任意選択で、本方法は、アクセスデバイスが、ターゲットトークンの第1の量が残りのトークンの第1の量よりも大きいか、またはターゲットトークンの第2の量が残りのトークンの第2の量よりも大きいと判定したとき、アクセスデバイスが、第1の期間中に、スケジュールされるべきパケットを転送しないと判定することをさらに含む。
任意選択で、ユーザ機器のアクセス帯域幅は、ユーザ機器へアクセスされる合計帯域幅であり、ユーザ機器のアクセス帯域幅は、第1の帯域幅を含み、第1の帯域幅は、ユーザ機器のターゲットネットワークサービスへアクセスされる帯域幅を示すために使用され、第1の帯域幅の値は、ユーザ機器のアクセス帯域幅の値よりも小さく、本方法は、
アクセスデバイスが、ユーザ機器の識別子を判定し、ユーザ機器の識別子に基づいて第3の補償値を判定することであって、第3の補償値は、スケジュールされるべきパケットがユーザ機器によってターゲットネットワークサービスに配信された後の、実際のパケット長さに対する差異の推定値を示すことをさらに含み、
アクセスデバイスが、第1のパケット長さおよび第2のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールすることは、
アクセスデバイスが、実際のパケット長さおよび第3の補償値に基づいて第3のパケット長さを判定することであって、第3のパケット長さの値は、実際のパケット長さの値と第3の補償値との和に等しく、アクセスデバイスは、第1のパケット長さ、第2のパケット長さ、および第3のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールすることを特に含む。
任意選択で、アクセスデバイスが、第1のパケット長さ、第2のパケット長さ、および第3のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールすることは、
アクセスデバイスが、ユーザ機器に対応する第1のトークンバケット中の残りのトークンの第1の量を取得することであって、残りのトークンの第1の量は、現在の瞬間における第1のトークンバケット中のトークンの量に等しいことと、
アクセスデバイスが、第1のネットワークデバイスに対応する第2のトークンバケット中の残りのトークンの第2の量を取得することであって、残りのトークンの第2の量は、現在の瞬間における第2のトークンバケット中のトークンの量に等しいことと、
アクセスデバイスが、ターゲットネットワークサービスに対応する第3のトークンバケット中の残りのトークンの第3の量を取得することであって、残りのトークンの第3の量は、現在の瞬間における第3のトークンバケット中のトークンの量に等しいことと、
アクセスデバイスが、第1のトークンバケットおよび第1のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールするために使用されるターゲットトークンの第1の量を判定し、第2のトークンバケットおよび第2のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールするために使用されるターゲットトークンの第2の量を判定し、第3のトークンバケットおよび第3のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールするために使用されるターゲットトークンの第3の量を判定することと、
アクセスデバイスが、ターゲットトークンの第1の量が残りのトークンの第1の量以下であるかどうか、ターゲットトークンの第2の量が残りのトークンの第2の量以下であるかどうか、およびターゲットトークンの第3の量が残りのトークンの第3の量以下であるかどうかを判定することと、
アクセスデバイスが、ターゲットトークンの第1の量が残りのトークンの第1の量以下であり、ターゲットトークンの第2の量が残りのトークンの第2の量以下であり、ターゲットトークンの第3の量が残りのトークンの第3の量以下であると判定したとき、アクセスデバイスが、スケジュールされるべきパケットを転送すると判定し、第1のトークンバケットから、ターゲットトークンの第1の量と同じ量であるトークンを差し引き、第2のトークンバケットから、ターゲットトークンの第2の量と同じ量であるトークンを差し引き、第3のトークンバケットから、ターゲットトークンの第3の量と同じ量であるトークンを差し引くことと、
を特に含む。
任意選択で、ユーザ機器の識別子に基づいて第3の補償値を判定することは、
アクセスデバイスが、ユーザ機器の識別子に基づいて第3の補償アルゴリズムを判定し、実際のパケット長さおよび第3の補償アルゴリズムに基づいて第3の補償値を判定すること
を特に含む。
任意選択で、第1のネットワークデバイスが、非同期転送モードATMに基づくネットワークデバイスであるとき、第1の補償値は、ATMセルヘッダの長さの値に実際のパケット長さの値とATMセル長さの値との商を掛けたものに等しい。
本出願で提供されるパケットスケジューリング方法に基づいて、帯域幅がネットワーク中で管理される必要がある各デバイスに対応する補償値または補償アルゴリズムが構成されてよく、補償値または補償アルゴリズムは、各デバイスの帯域幅を管理するアクセスデバイスに記憶され得る。スケジュールされるべきパケットを受信した後に、アクセスデバイスは、最初に、スケジュールされるべきパケットの宛先アドレスに基づいて、スケジュールされるべきパケットがアクセスデバイスからユーザ機器へと通過する必要がある1つまたは複数のネットワークデバイスを判定し、次いで、1つまたは複数のデバイス中の各ネットワークデバイスに対応する補償値を探索または計算して、各ネットワークデバイスによって受信された、スケジュールされるべきパケットのパケット長さを推定し、アクセスデバイスは、各ネットワークデバイスによって受信された、スケジュールされるべきパケットのパケット長さの推定された値、および各ネットワークデバイスに対応するトークンバケット中のトークンの量に基づいて、スケジュールされるべきパケットを転送すべきかどうかを判定する。パケット長さ補償は、アクセスデバイスが各ネットワークデバイスの帯域幅をより正確に管理することができるように、スケジュールされるべきパケットの転送経路上の各ネットワークデバイス上で別々に実施される。
第2の態様によれば、本出願の実施形態は、パケット補償装置を開示し、本装置は、
スケジュールされるべきパケットを受信するように構成された、受信機であって、スケジュールされるべきパケットは、ネットワーク側によってユーザ機器に送信されたパケットである、受信機と、
スケジュールされるべきパケットの実際のパケット長さを取得するように構成された、プロセッサであって、実際のパケット長さは、スケジュールされるべきパケットの合計の長さを示す、プロセッサとを含み、
プロセッサは、スケジュールされるべきパケットに基づいて第1の補償値および第2の補償値を判定するようにさらに構成され、第1の補償値は、スケジュールされるべきパケットが第1のネットワークデバイスによって転送された後の、実際のパケット長さに対する差異の推定値を示し、第2の補償値は、スケジュールされるべきパケットが受信機によって転送された後の、実際のパケット長さに対する差異の推定値を示し、第1のネットワークデバイスは、スケジュールされるべきパケットの転送経路上でパケット補償装置とユーザ機器との間に配置されたネットワークデバイスであり、
プロセッサは、第1のパケット長さおよび第2のパケット長さを判定し、第1のパケット長さの値は、実際のパケット長さの値と第1の補償値との和に等しく、第2のパケット長さの値は、実際のパケット長さの値と第2の補償値との和に等しく、第1のパケット長さおよび第2のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールするようにさらに構成される。
任意選択で、プロセッサが、スケジュールされるべきパケットに基づいて第1の補償値および第2の補償値を判定することは、
プロセッサが、スケジュールされるべきパケットに基づいて、スケジュールされるべきパケットの転送経路を判定するように構成され、転送経路が、パケット補償装置の識別子および第1のネットワークデバイスの識別子を含むことと、
プロセッサが、第1のネットワークデバイスの識別子に基づいて第1の補償値を判定し、パケット補償装置の識別子に基づいて第2の補償値を判定するようにさらに構成されることと、
を特に含む。
任意選択で、プロセッサが、第1のネットワークデバイスの識別子に基づいて第1の補償値を判定し、パケット補償装置の識別子に基づいて第2の補償値を判定することは、
プロセッサが、第1のネットワークデバイスの識別子に基づいて第1の補償アルゴリズムを判定し、パケット補償装置の識別子に基づいて第2の補償アルゴリズムを判定するように構成され、第1の補償アルゴリズムが、第1のネットワークデバイスによって転送されるパケットのパケット長さを補償するために使用され、第2の補償アルゴリズムが、パケット補償装置によって転送されるパケットのパケット長さを補償するために使用されることと、
プロセッサが、実際のパケット長さおよび第1の補償アルゴリズムに基づいて第1の補償値を判定し、実際のパケット長さおよび第2の補償アルゴリズムに基づいて第2の補償値を判定するようにさらに構成されることと、
を特に含む。
任意選択で、プロセッサが、第1のパケット長さおよび第2のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールすることは、
プロセッサが、ユーザ機器に対応する第1のトークンバケット中の残りのトークンの第1の量を取得するように構成され、残りのトークンの第1の量が、現在の瞬間における第1のトークンバケット中のトークンの量に等しいことと、
プロセッサが、第1のネットワークデバイスに対応する第2のトークンバケット中の残りのトークンの第2の量を取得するようにさらに構成され、残りのトークンの第2の量が、現在の瞬間における第2のトークンバケット中のトークンの量に等しいことと、
プロセッサが、第1のトークンバケットおよび第1のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールするために使用されるターゲットトークンの第1の量を判定し、第2のトークンバケットおよび第2のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールするために使用されるターゲットトークンの第2の量を判定するようにさらに構成されることと、
プロセッサが、ターゲットトークンの第1の量が残りのトークンの第1の量以下であるかどうか、およびターゲットトークンの第2の量が残りのトークンの第2の量以下であるかどうかを判定するようにさらに構成されることと、
プロセッサが、ターゲットトークンの第1の量が残りのトークンの第1の量以下であり、ターゲットトークンの第2の量が残りのトークンの第2の量以下であると判定したとき、プロセッサが、第1の期間中に、スケジュールされるべきパケットを転送すると判定し、第1のトークンバケットから、ターゲットトークンの第1の量と同じ量であるトークンを差し引き、第2のトークンバケットから、ターゲットトークンの第2の量と同じ量であるトークンを差し引くようにさらに構成されることと、
を特に含む。
任意選択で、プロセッサが、ターゲットトークンの第1の量が残りのトークンの第1の量よりも大きいか、またはターゲットトークンの第2の量が残りのトークンの第2の量よりも大きいと判定したとき、プロセッサは、第1の期間中に、スケジュールされるべきパケットを転送しないと判定するようにさらに構成される。
任意選択で、ユーザ機器のアクセス帯域幅は、ユーザ機器へアクセスされる合計帯域幅であり、ユーザ機器のアクセス帯域幅は、第1の帯域幅を含み、第1の帯域幅は、ユーザ機器のターゲットネットワークサービスへアクセスされる帯域幅を示すために使用され、第1の帯域幅の値は、ユーザ機器のアクセス帯域幅の値よりも小さく、
プロセッサは、ユーザ機器の識別子を判定し、ユーザ機器の識別子に基づいて第3の補償値を判定するようにさらに構成され、第3の補償値は、スケジュールされるべきパケットがユーザ機器によってターゲットネットワークサービスに配信された後の、実際のパケット長さに対する差異の推定値を示し、
プロセッサが、第1のパケット長さおよび第2のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールすることは、
プロセッサが、実際のパケット長さおよび第3の補償値に基づいて第3のパケット長さを判定するように構成され、第3のパケット長さの値が、実際のパケット長さの値と第3の補償値との和に等しく、プロセッサが、第1のパケット長さ、第2のパケット長さ、および第3のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールするように構成されること
を特に含む。
任意選択で、プロセッサが、第1のパケット長さ、第2のパケット長さ、および第3のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールすることは、
プロセッサが、ユーザ機器に対応する第1のトークンバケット中の残りのトークンの第1の量を取得するように構成され、残りのトークンの第1の量が、現在の瞬間における第1のトークンバケット中のトークンの量に等しいことと、
プロセッサが、第1のネットワークデバイスに対応する第2のトークンバケット中の残りのトークンの第2の量を取得するようにさらに構成され、残りのトークンの第2の量が、現在の瞬間における第2のトークンバケット中のトークンの量に等しいことと、
プロセッサが、ターゲットネットワークサービスに対応する第3のトークンバケット中の残りのトークンの第3の量を取得するようにさらに構成され、残りのトークンの第3の量が、現在の瞬間における第3のトークンバケット中のトークンの量に等しいことと、
プロセッサが、第1のトークンバケットおよび第1のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールするために使用されるターゲットトークンの第1の量を判定し、第2のトークンバケットおよび第2のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールするために使用されるターゲットトークンの第2の量を判定し、第3のトークンバケットおよび第3のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールするために使用されるターゲットトークンの第3の量を判定するようにさらに構成されることと、
プロセッサが、ターゲットトークンの第1の量が残りのトークンの第1の量以下であるかどうか、ターゲットトークンの第2の量が残りのトークンの第2の量以下であるかどうか、およびターゲットトークンの第3の量が残りのトークンの第3の量以下であるかどうかを判定するようにさらに構成されることと、
プロセッサが、ターゲットトークンの第1の量が残りのトークンの第1の量以下であり、ターゲットトークンの第2の量が残りのトークンの第2の量以下であり、ターゲットトークンの第3の量が残りのトークンの第3の量以下であると判定したとき、プロセッサが、スケジュールされるべきパケットを転送すると判定し、第1のトークンバケットから、ターゲットトークンの第1の量と同じ量であるトークンを差し引き、第2のトークンバケットから、ターゲットトークンの第2の量と同じ量であるトークンを差し引き、第3のトークンバケットから、ターゲットトークンの第3の量と同じ量であるトークンを差し引くようにさらに構成されることと、
を特に含む。
任意選択で、プロセッサは、ユーザ機器の識別子に基づいて第3の補償アルゴリズムを判定し、実際のパケット長さおよび第3の補償アルゴリズムに基づいて第3の補償値を判定するようにさらに構成される。
任意選択で、第1のネットワークデバイスが、非同期転送モードATMに基づくネットワークデバイスであるとき、第1の補償値は、ATMセルヘッダの長さの値に実際のパケット長さの値とATMセル長さの値との商を掛けたものに等しい。
第3の態様によれば、本出願の実施形態は、プロセッサと、通信インターフェースと、メモリと、を含むネットワークデバイスを提供する。メモリは、命令を記憶するように構成され、プロセッサは、命令を実行するように構成され、通信インターフェースは、データを受信するかまたは送信するように構成される。命令を実行するとき、プロセッサは、第1の態様または第1の態様の任意の可能な実装において説明される方法を実施する。
第4の態様によれば、本出願は、非一時的コンピュータ記憶媒体を提供し、非一時的コンピュータ記憶媒体は、パケットスケジューリングのために使用されるコンピュータプログラムを記憶し、コンピュータプログラムがプロセッサによって実行されるとき、第1の態様または第1の態様の任意の可能な実装において説明される方法が実装される。
本発明の実施形態における技術的解決策についてより明確に説明するために、以下で、実施形態について説明するための添付の図面について簡単に説明する。明らかに、以下の説明における添付の図面は、本発明の実施形態の一部を示し、当業者は、創造的な取り組みなしにこれらの添付の図面から他の図面をなおも導出し得る。
本出願の実施形態によるブロードバンドアクセスネットワークの概略構造図である。 本出願の実施形態によるパケットスケジューリング方法の概略フローチャートである。 本出願の実施形態によるブロードバンドアクセスネットワークの概略構造図である。 本出願の実施形態による別のブロードバンドアクセスネットワークの概略構造図である。 本出願の実施形態によるパケットスケジューリング装置の概略構造図である。 本出願の実施形態によるパケットスケジューリングデバイスの概略構造図である。
以下で、添付の図面を参照しながら本出願の実施形態について説明する。
帯域幅は、ユニット時間内にリンクを通過することができるデータの量であり、ユニットは、ビット毎秒(bit/s)であり、通常、メガビット毎秒(Mbps)によって表される。実際のネットワーク帯域幅管理中に、ユーザのトラフィックは、プリセットされた帯域幅に限定されることがあり、ネットワークデバイスのトラフィックが定格帯域幅を超えるかどうかを判定するために、トークンバケットアルゴリズムが計算のために使用される必要がある。トークンバケットアルゴリズム機構について以下で説明される。図1は、ブロードバンドアクセスネットワークの概略構造図である。ユーザ機器は、第1のネットワークデバイスを使用することによってアクセスデバイスに接続される。アクセスデバイスは、ブロードバンドネットワークのアクセスゲートウェイであり、バックボーンネットワークのエッジレイヤに配置され、ブロードバンドアクセスネットワークデバイスをバックボーンネットワークに接続し、アクセスネットワークデバイスの帯域幅を管理することができる。アクセスデバイスは、帯域幅がアクセスデバイスによって管理される必要がある1つまたは複数のデバイスの各々に対応するトークンバケットを含み、各トークンバケット中の1つのトークンは、対応するデバイスのインターフェースが1ビットのデータまたは1バイトのデータを送信するかまたは受信することを可能にする。本出願のこの実施形態では、1つのトークンが、インターフェースが1バイトのデータを受信することを可能にすることが、説明のための例として使用される。デバイスのインターフェースが1バイトのデータを受信する必要があるとき、デバイスに対応するトークンバケットから1つのトークンが除去される必要がある。デバイスに対応するトークンバケット中のトークンの量が、データを受信するためにデバイスによって除去される必要があるトークンの量よりも小さい場合、デバイスの帯域幅は、デバイスがデータを受信した場合、デバイスのアクセス帯域幅を超える。1つのトークンが、インターフェースが1バイトのデータを受信することを可能にする場合、デバイスのアクセス帯域幅の値は、8×デバイスに対応するトークンバケットに毎秒注入されるトークンの量に等しい。
特に、たとえば、アクセスデバイスは、ユーザ機器のアクセス帯域幅に対して帯域幅管理を実施する。アクセスデバイスは、ユーザ機器に対応する第1のトークンバケット、および第1のネットワークデバイスに対応する第2のトークンバケットを含む。ネットワーク側によってユーザ機器に送信された、スケジュールされるべきパケットを受信したとき、アクセスデバイスは、スケジュールされるべきパケットの実際のパケット長さを取得し、第1のトークンバケットおよび実際のパケット長さに基づいて、スケジュールされるべきパケットを転送するために使用される必要があるターゲットトークンの第1の量を判定し、次いで、第1のトークンバケット中の残りのトークンの第1の量を取得する。ターゲットトークンの第1の量が、第1のトークンバケット中の残りのトークンの第1の量以下である場合、それは、ユーザ機器が、スケジュールされるべきパケットを受信したとき、ユーザ機器の実際の帯域幅がユーザ機器のアクセス帯域幅を超えないことを示し、スケジュールされるべきパケットを転送するとき、アクセスデバイスは、第1のトークンバケットから、実際のパケット長さを送信するために消費される必要があるトークンの量を差し引く。トークンは、トークンバケットから除去されることが可能であるだけでなく、トークンバケットに追加されることも可能であり、ユーザ機器のアクセス帯域幅は、トークンをトークンバケットに追加する速度を制御することによって制御されることが理解されよう。たとえば、ユーザ機器のアクセス帯域幅は、8000bit/sである。1000個のトークンが、ユーザ機器に対応する第1のトークンバケットに毎秒追加され、ユーザ機器に対応する第1のトークンバケット中のトークンの最大量が1000を超えないことが保証される場合、ユーザ機器の実際の帯域幅はユーザ機器のアクセス帯域幅を超えないことが保証されることが可能である。
上記の例では、アクセスデバイスは、アクセスデバイスによって受信された、スケジュールされるべきパケットの実際のパケット長さに基づいて、スケジュールされるべきパケットを転送するときに第1のトークンバケットから差し引かれる必要があるターゲットトークンの第1の量を判定する。たとえば、実際のパケット長さが240バイトである場合、アクセスデバイスは、スケジュールされるべきパケットを転送するときに第1のトークンバケットから240個のトークンを差し引く。しかしながら、パケット送信処理において、異なるデバイスは、ネットワークプロトコルに基づいてパケットに対して異なる処理を実施し、それにより、パケット長さの変化が生じる。たとえば、図1に示されているネットワークにおいて、ユーザ機器のアクセス帯域幅が8000bit/sである場合、第1のネットワークデバイスは、デジタル加入者回線アクセスマルチプレクサ(digital subscriber line access multiplexer、DSLAM)であり、DSLAMは、非同期転送モード(asynchronous transfer mode、ATM)を使用し、スケジュールされるべきパケットがDSLAMに送信されたとき、DSLAMは、スケジュールされるべきパケットを5つの48バイトATMセルにセグメント化し、次いで、長さが5バイトであるセルヘッダを各ATMセル中にカプセル化して、53バイトセルを取得する。上記の240バイトパケットがDSLAMを通過した後に、240×5/48=25バイトが追加される。240バイトのスケジュールされるべきパケットがDSLAMによって転送された後に、ユーザ機器によって受信される、スケジュールされるべきパケットのパケット長さは、265バイトである。ユーザ機器の帯域幅は、ユーザ機器によって受信されるデータの量に基づいて測定される。アクセスデバイスが、ユーザ機器に対応するアクセス帯域幅に基づいて8000ビット(言い換えれば、1000バイト)のデータを毎秒転送する場合、ユーザ機器によって実際に毎秒受信されるデータは、8000ビットを超え、ユーザ機器に対応する実際の帯域幅は、ユーザ機器のアクセス帯域幅を超える。
上記の問題を解決するために、受信された、スケジュールされるべきパケットを転送するとき、アクセスデバイスは、スケジュールされるべきパケットの実際のパケット長さを補償して、スケジュールされるべきパケットのスケジューリング長さを取得する。スケジューリング長さは、ユーザ機器が、スケジュールされるべきパケットを受信するとき、アクセスデバイスによって考慮されるパケット長さであり、具体的には、アクセスデバイスは、受信された、スケジュールされるべきパケットの実際のパケット長さの値に基づいて、特定のバイト長さを加算または減算する。アクセスデバイスは、スケジューリング長さおよび第1のトークンバケット中のトークンの量に基づいて、スケジュールされるべきパケットを転送すべきかどうか判定し、スケジュールされるべきパケットを転送すると判定したとき、第1のトークンバケットから除去される必要があるターゲットトークンの第1の量を判定する。本出願のこの実施形態では、加算または減算されるバイト長さの値は、補償値と呼ばれる。スケジュールされるべきパケットを転送するとき、アクセスデバイスは、ユーザ機器に対応するスケジューリング長さに基づいて、ユーザ機器に対応する第1のトークンバケットからトークンを除去して、ユーザ機器の実際の帯域幅がアクセス帯域幅を超えるのを防止する。たとえば、上記の例では、アクセスデバイスが、長さが240バイトでありユーザ機器に転送される必要があるスケジュールされるべきパケットを受信した後に、アクセスデバイスは、スケジュールされるべきパケットの実際のパケット長さに基づいて25バイトを補償し、ユーザ機器に対応するスケジューリング長さとして265バイトを使用する。スケジュールされるべきパケットを転送するとき、アクセスデバイスは、第1のトークンバケットから、265バイトに対応するトークンを除去する。このようにして、アクセスデバイスによって毎秒送信されるデータが8000ビットよりも小さくなること、およびユーザ機器によって受信されるデータが8000ビットよりも大きくなるのを防止されることが保証され、それにより、ユーザ機器のアクセス帯域幅を管理することが可能になる。受信された、スケジュールされるべきパケットの第1のパケット長さに対してアクセスデバイスによって実施される補償は、スケジュールされるべきパケット、またはスケジュールされるべきパケットの実際のパケット長さを変更しないことに留意されたい。補償値は、受信された第1のパケット長さおよび補償値に基づいて、ユーザ機器に対応するスケジューリング長さを取得するためにアクセスデバイスによって使用されるにすぎず、スケジュールされるべきパケットの実際のパケット長さは変化しない。スケジュールされるべきパケットをスケジュールするとき、アクセスデバイスは、スケジューリング長さに基づいて、実際のパケット長さが240バイトであるパケットを265バイトパケットとしてスケジュールし、したがって、ユーザ機器に対応する第1のトークンバケットから265個のトークンが除去されることが可能である。
現在、ネットワークに対して階層的帯域幅管理を実施するとき、アクセスデバイスは、受信された、スケジュールされるべきパケットに対して、統合されたパケット補償のみを実施することができる。ユーザ機器に対応する補償値を判定した後に、アクセスデバイスは、ユーザ機器に対応する補償値を、スケジュールされるべきパケットの転送経路上でアクセスデバイスとユーザ機器との間に配置された別のデバイスの補償値として使用する。言い換えれば、スケジュールされるべきパケットの転送経路上でアクセスデバイスとユーザ機器との間に配置されたこの別のデバイスの帯域幅管理中に、この別のデバイスの帯域幅は、ユーザ機器に対応するスケジューリング長さに基づいて一様に管理される。たとえば、アクセスデバイスが、240バイトのスケジュールされるべきパケットを受信したとき、アクセスデバイスは、ユーザ機器に対応する第1のトークンバケットに基づいて、スケジュールされるべきパケットをスケジュールするとき、スケジュールされるべきパケットのパケット長さのために25バイトを補償し、第1のネットワークデバイスの帯域幅を管理するとき、アクセスデバイスはまた、第1のネットワークデバイスのスケジューリング長さを265バイトに設定する。この場合、スケジュールされるべきパケットを転送するとき、アクセスデバイスは、ユーザ機器に対応する第1のトークンバケット、および第1のネットワークデバイスに対応する第2のトークンバケットの各々から、265個のトークンを除去する。
しかしながら、ネットワークの階層的帯域幅管理システムでは、アクセスデバイスとユーザ機器との間の異なるデバイスは、異なる帯域幅要件を有する。したがって、アクセスデバイスとユーザ機器との間の異なるデバイスのパケット長さは、階層的帯域幅管理中に別々に補償される必要がある。しかしながら、従来技術では、統合された補償のみが、異なるデバイス上で実施されることが可能であり、したがって、ネットワーク中の異なるデバイスの帯域幅を別々に管理する要件は、満たされることが不可能である。たとえば、図1に示されているシナリオでは、ユーザ機器の帯域幅の正当性を保証するために、第1のネットワークデバイスは、ユーザ機器に対応する補償値に基づいて補償されることのみが可能である。結果的に、第1のネットワークデバイスに対する帯域幅管理は不正確であり、第1のネットワークデバイスの帯域幅は第1のネットワークデバイスのアクセス帯域幅を超えるか、または第1のネットワークデバイスの帯域幅利用が低減される。たとえば、実際のネットワークでは、アクセスデバイスによって転送され、第1のネットワークデバイスによって受信される、スケジュールされるべきパケットのパケット長さは、265バイトではなく、254バイトである。スケジュールされるべきパケットを転送するとき、アクセスデバイスは、第1のネットワークデバイスに対応する第2のトークンバケットから、265個のトークンを除去する。アクセスデバイスによって第2のトークンバケットから除去されるトークンの量は、第1のネットワークデバイスによって実際に受信された、スケジュールされるべきパケットのパケット長さの値よりも大きい。第1のネットワークデバイスのアクセス帯域幅が100Mbpsであり、第1のネットワークデバイスが254バイトのデータを受信したときに第2のトークンバケットから265個のトークンが除去される場合、1秒中に第1のネットワークデバイスによって受信されることが可能なデータの最大量は、100Mbitよりも小さく、結果的に、アクセスデバイスと第1のネットワークデバイスとの間のリンク帯域幅利用が低減され、第1のネットワークデバイスの実際の帯域幅は、第1のネットワークデバイスのアクセス帯域幅よりも小さい。実際のネットワークでは、第1のネットワークデバイスによって実際に受信された、スケジュールされるべきパケットの長さが、265バイトよりも大きく、アクセスデバイスが、第1のネットワークデバイスのスケジューリング長さとして265バイトを使用することによって、第2のトークンバケットから265個のトークンをなおも除去する場合、アクセスデバイスによって第2のトークンバケットから除去されるトークンの量は、第1のネットワークデバイスがデータを受信するときに実際に消費される必要があるトークンの量よりも小さく、結果的に、100Mbitに対応するトークンを使用することによって受信されることが可能なデータは、1000Mbitよりも大きく、第1のネットワークデバイスの実際の帯域幅は、第1のネットワークデバイスのアクセス帯域幅よりも大きいことが理解されよう。上記の分析に基づいて、従来技術では、ユーザ機器の帯域幅の正当性を保証するために設定された補償値は、アクセスデバイスとユーザ機器との間の別のデバイスの補償値として使用され、結果的に、この別のデバイスの実際の帯域幅は、対応するデバイスのアクセス帯域幅よりも小さいかまたはそれを超え、不正確な帯域幅管理を引き起こす。
上記の問題を解決するために、本出願は、パケットスケジューリング方法を提供する。アクセスデバイスは、受信された、スケジュールされるべきパケットの転送経路を判定し、転送経路上の各デバイスに対応する補償値を取得し、各デバイスに対応する補償値と、アクセスデバイスによって受信された、スケジュールされるべきパケットの実際のパケット長さとに基づいて、各デバイスに対応するスケジューリング長さを判定し、最終的に、転送経路上の各デバイスに対応するスケジューリング長さに基づいて、スケジュールされるべきパケットをスケジュールすることができる。
図2は、本出願の実施形態によるパケットスケジューリング方法の概略フローチャートである。本方法は以下のステップを含む。
S102:アクセスデバイスが、スケジュールされるべきパケットを受信し、スケジュールされるべきパケットの実際のパケット長さを取得する。
本出願のこの実施形態では、スケジュールされるべきパケットは、ネットワーク側によってユーザ機器に送信されたパケットである。ネットワーク側によって送信された、スケジュールされるべきパケットを受信した後に、アクセスデバイスは、スケジュールされるべきパケットの実際のパケット長さを取得する必要がある。実際のパケット長さは、スケジュールされるべきパケットの合計の長さを示し、言い換えれば、実際のパケット長さは、ユーザデータの長さ、およびパケットヘッダの長さを含む。
S104:アクセスデバイスが、スケジュールされるべきパケットに基づいて第1の補償値および第2の補償値を判定する。
本出願のこの実施形態では、パケットスケジューリング方法について、図1に示されているシナリオを使用することによってなおも説明される。第1の補償値は、スケジュールされるべきパケットが第1のネットワークデバイスによって転送された後の、実際のパケット長さに対する差異の推定値を示し、第2の補償値は、スケジュールされるべきパケットがアクセスデバイスによって転送された後の、実際のパケット長さに対する差異の推定値を示し、第1のネットワークデバイスは、スケジュールされるべきパケットの転送経路上でアクセスデバイスとユーザ機器との間に配置されたネットワークデバイスである。スケジュールされるべきパケットが、第1のネットワークデバイスによって転送された後に、スケジュールされるべきパケットは、ユーザ機器によって受信され、したがって、第1の補償値は、ユーザ機器によって受信された第1のスケジューリングパケットの長さと実際のパケット長さとの間の差の推定値であり、第2の補償値は、第1のネットワークデバイスによって受信された第2のスケジューリングパケットの長さと実際のパケット長さとの間の差の推定値である。たとえば、アクセスデバイスによって受信された、スケジュールされるべきパケットの実際のパケット長さは、240バイトであり、アクセスデバイスは、DSLAMが、スケジュールされるべきパケットの転送経路上のユーザ機器に接続されると判定する。この場合、アクセスデバイスは、実際のパケット長さに基づく推定およびDSLAMのパケット処理方式を通して、スケジュールされるべきパケットがDSLAMによって処理された後に取得されるパケット長さが25バイトだけ増加すると判定し、アクセスデバイスは、第1の補償値として25を使用する。
本出願のこの実施形態では、アクセスデバイスは、ユーザ機器によって受信された第1のスケジューリングパケットのパケット長さ、および第1のネットワークデバイスによって受信された第2のスケジューリングパケットのパケット長さを直接取得することができず、第1の補償値および第2の補償値を取得することのみによって、ユーザ機器および第1のネットワークデバイスによって受信されたパケットのパケット長さを推定することができることに留意されたい。
本出願のこの実施形態では、アクセスデバイスは、様々なデバイス識別子に対応する補償値を、補償値を計算するための帯域幅管理システムまたは補償アルゴリズムに記憶する。スケジュールされるべきパケットを受信した後に、アクセスデバイスは、受信された、スケジュールされるべきパケットに基づいて、スケジュールされるべきパケットをユーザ機器に転送するための転送経路を取得することであって、転送経路は、アクセスデバイスの識別子および第1のネットワークデバイスの識別子を含む、取得することと、次いで、第1のネットワークデバイスの識別子に基づいて第1の補償値を判定することと、アクセスデバイスの識別子に基づいて第2の補償値を判定することと、を行う。ネットワーク中のデバイスの識別子に基づいて判定される補償値は、転送経路上の次のレベルのデバイスにあるデバイスの帯域幅が管理されるときに必要とされる補償値であることに留意されたい。たとえば、第1のネットワークデバイスの識別子に基づいて判定される第1の補償値は、ユーザ機器の帯域幅が管理されるときに必要とされる補償値であり、アクセスデバイスの識別子に基づいて判定される第2の補償値は、第1のネットワークデバイスの帯域幅が管理されるときに必要とされる補償値である。
特に、第1のネットワークデバイスの識別子は、特定の補償値に対応し得るか、または補償アルゴリズムに対応し得、アクセスデバイスの識別子は、特定の補償値に対応し得るか、または補償アルゴリズムに対応し得る。第1のネットワークデバイスの識別子が特定の補償値に対応する場合、アクセスデバイスは、補償値を第1の補償値として直接使用する。アクセスデバイスの識別子が特定の補償値に対応する場合、アクセスデバイスは、補償値を第2の補償値として直接使用する。アクセスデバイスの識別子および/または第1のネットワークデバイスの識別子が補償アルゴリズムに対応する場合、アクセスデバイスは、補償アルゴリズムに基づいて補償値を計算する。
たとえば、図3は、非対称デジタル加入者回線(asymmetric digital subscriber line、ADSL)を使用するブロードバンドアクセスネットワークの概略図である。図3に示されているシナリオでは、アクセスデバイスはブロードバンドリモートアクセスサーバ(broadband remote access server、BRAS)であり得、第1のネットワークデバイスはDSLAMであり得、DSLAMは、ADSLアクセスネットワークにおいて非同期転送モードを使用する。240バイトのスケジュールされるべきパケットを受信した後に、アクセスデバイスは、スケジュールされるべきパケットが、アクセスデバイスからユーザ機器に送信されるとき、第1のネットワークデバイスおよびアクセスデバイスを通過すると判定し、アクセスデバイスは、DSLAMの識別子に基づいて、DSLAMが補償アルゴリズムに対応すると判定する。DSLAMに対応する補償アルゴリズムは、実際のパケット長さ×5/ATMセル長さである。実際のパケット長さが240バイトであり、ATMセル長さが48バイトである場合、第1のネットワークデバイスの識別子に基づいて判定される第1の補償値は、25である。補償アルゴリズムの原理については、上記の例を参照されたい。詳細について本明細書で説明されない。BRASは、イーサネット送信プロトコルを使用する。スケジュールされるべきパケットを転送する前に、BRASは、20バイトのフレーム間ギャップおよび14バイトのイーサネットフレームヘッダを、スケジュールされるべきパケット中にカプセル化する。20バイトのフレーム間ギャップは、送信中にトークンを消費しない。したがって、第1のネットワークデバイスについて、BRASによって転送され、第1のネットワークデバイスによって受信される、スケジュールされるべきパケットの長さは、254バイトであり、第1のネットワークデバイスに対応する補償値は、14であり、言い換えれば、特定の補償値14が、アクセスデバイスの識別子に基づいて判定される。この場合、14が第2の補償値として使用される。
S106:アクセスデバイスが、第1のパケット長さおよび第2のパケット長さを判定する。
第1のパケット長さは、アクセスデバイスが、実際のパケット長さおよび第1の補償値に基づいて、ユーザ機器によって受信された第1のスケジューリングパケットのパケット長さを推定した後に取得され、第1のパケット長さの値は、実際のパケット長さの値と第1の補償値との和に等しい。第2のパケット長さは、アクセスデバイスが、実際のパケット長さおよび第2の補償値に基づいて、第1のネットワークデバイスによって受信された第2のスケジューリングパケットのパケット長さを推定した後に取得され、第2のパケット長さの値は、実際のパケット長さの値と第2の補償値との和に等しい。たとえば、ステップS104の例では、アクセスデバイスによって受信された、スケジュールされるべきパケットの実際のパケット長さは、240バイトであり、第1の補償値は25であり、第2の補償値は14である。この場合、第1のパケット長さは265バイトであり、第2のパケット長さは254バイトである。
S108:アクセスデバイスが、第1のパケット長さおよび第2のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールする。
本出願のこの実施形態では、アクセスデバイスが、スケジュールされるべきパケットをスケジュールすることは、アクセスデバイスが、第1のパケット長さ、第1のトークンバケット中の残りのトークンの第1の量、第2のパケット長さ、および第2のトークンバケット中の残りのトークンの第2の量に基づいて、スケジュールされるべきパケットを転送すべきかどうかを判定することを意味する。
特に、アクセスデバイスは、最初に、第1のパケット長さに基づいて、スケジュールされるべきパケットを転送するために第1のトークンバケット中のターゲットトークンの第1の量が消費される必要があると判定し、第2のパケット長さに基づいて、スケジュールされるべきパケットを転送するために第2のトークンバケット中のターゲットトークンの第2の量が消費される必要があると判定する。たとえば、第1のパケット長さが265バイトであり、第2のパケット長さが254バイトである場合、アクセスデバイスは、スケジュールされるべきパケットを転送するために第1のトークンバケット中の265個のトークンおよび第2のトークンバケット中の254トークンがアクセスデバイスよって消費される必要があると判定する。
次いで、アクセスデバイスは、第1のトークンバケット中の残りのトークンの第1の量、および第2のトークンバケット中の残りのトークンの第2の量を取得する。残りのトークンの第1の量は、現在の瞬間における第1のトークンバケット中のトークンの量に等しく、残りのトークンの第2の量は、現在の瞬間における第2のトークンバケット中のトークンの量に等しい。
最終的に、アクセスデバイスは、ターゲットトークンの第1の量が残りのトークンの第1の量以下であるかどうか、およびターゲットトークンの第2の量が残りのトークンの第2の量以下であるかどうかを判定する。アクセスデバイスが、ターゲットトークンの第1の量が残りのトークンの第1の量以下であり、ターゲットトークンの第2の量が残りのトークンの第2の量以下であると判定したとき、アクセスデバイスが、第1の期間中に、スケジュールされるべきパケットを転送すると判定し、第1のトークンバケットから、ターゲットトークンの第1の量と同じ量であるトークンを差し引き、第2のトークンバケットから、ターゲットトークンの第2の量と同じ量であるトークンを差し引く。アクセスデバイスが、ターゲットトークンの第1の量が残りのトークンの第1の量よりも大きいか、またはターゲットトークンの第2の量が残りのトークンの第2の量よりも大きいと判定したとき、アクセスデバイスは、第1の期間中に、スケジュールされるべきパケットを転送しないと判定する。
本出願で提供されるパケットスケジューリング方法に基づいて、帯域幅がネットワーク中で管理される必要がある各デバイスに対応する補償値または補償アルゴリズムが構成されてよく、各デバイスのデバイス識別子と補償値または補償アルゴリズムとの間の対応が、各デバイスの帯域幅を管理するアクセスデバイスに記憶され得る。スケジュールされるべきパケットを受信した後に、アクセスデバイスは、最初に、スケジュールされるべきパケットの宛先アドレスに基づいて、スケジュールされるべきパケットがアクセスデバイスからユーザ機器へと通過する必要がある1つまたは複数のネットワークデバイスを判定し、次いで、1つまたは複数のデバイス中の各ネットワークデバイスに対応する補償値を探索または計算して、各ネットワークデバイスによって受信された、スケジュールされるべきパケットのパケット長さを推定し、アクセスデバイスは、各ネットワークデバイスによって受信された、スケジュールされるべきパケットのパケット長さの推定された値、および各ネットワークデバイスに対応するトークンバケット中のトークンの量に基づいて、スケジュールされるべきパケットを転送すべきかどうかを判定する。パケット長さ補償は、アクセスデバイスが各ネットワークデバイスの帯域幅をより正確に管理することができるように、スケジュールされるべきパケットの転送経路上の各ネットワークデバイス上で別々に実施される。
本出願のこの実施形態では、帯域幅管理がユーザ機器のアクセス帯域幅に対して実施されるとき、ユーザ機器のアクセス帯域幅は、ユーザ機器へアクセスされる合計帯域幅であり、合計帯域幅は、ユーザによってサブスクライブされた音声サービスおよびビデオサービスなど、複数のネットワークサービスの合計帯域幅である。ユーザ機器のアクセス帯域幅は、第1の帯域幅を含み、第1の帯域幅は、ユーザ機器へアクセスされるターゲットネットワークサービスの帯域幅を示すために使用され、第1の帯域幅の値は、ユーザ機器のアクセス帯域幅の値よりも小さい。アクセスデバイスによって受信された、すべてのスケジュールされるべきパケットは、ユーザのターゲットネットワークサービスのパケットである。したがって、スケジュールされるべきパケットを受信した後に、アクセスデバイスは、さらに、ターゲットネットワークサービスの帯域幅を管理する必要がある。第1の補償値および第2の補償値を判定すること、第1の補償値および実際のパケット長さに基づいて第1のパケット長さを判定すること、ならびに第2の補償値および実際のパケット長さに基づいて第2の補償値を判定することに加えて、アクセスデバイスは、さらに、ユーザ機器の識別子を判定し、ユーザ機器の識別子に基づいて第3の補償値を判定する必要がある。第3の補償値は、スケジュールされるべきパケットがユーザ機器によってターゲットネットワークサービスに配信された後の、実際のパケット長さに対する差異の推定値を示す。次いで、アクセスデバイスは、実際のパケット長さおよび第3の補償値に基づいて第3のパケット長さを判定し、第3のパケット長さの値は、実際のパケット長さの値と第3の補償値との和に等しい。次いで、アクセスデバイスは、ターゲットネットワークサービスに対応する第3のトークンバケット中の残りのトークンの第3の量と、第3のトークンバケットおよび第3のパケット長さに基づいて、スケジュールされるべきパケットがスケジュールされるときに使用されるターゲットトークンの第3の量とを判定する。残りのトークンの第3の量は、現在の瞬間における第3のトークンバケット中のトークンの量に等しい。最終的に、アクセスデバイスが、ターゲットトークンの第1の量が残りのトークンの第1の量以下であり、ターゲットトークンの第2の量が残りのトークンの第2の量以下であり、ターゲットトークンの第3の量が残りのトークンの第3の量以下であると判定したとき、アクセスデバイスは、スケジュールされるべきパケットを転送すると判定し、第1のトークンバケットから、ターゲットトークンの第1の量と同じ量であるトークンを差し引き、第2のトークンバケットから、ターゲットトークンの第2の量と同じ量であるトークンを差し引き、第3のトークンバケットから、ターゲットトークンの第3の量と同じ量であるトークンを差し引く。
可能な実装において、図4は、光ファイバーアクセスを使用するブロードバンドアクセスネットワークの概略図である。図4では、ユーザ機器は第1のネットワークデバイスに接続され、第1のネットワークデバイスは第2のネットワークデバイスに接続され、第2のネットワークデバイスはアクセスデバイスに接続される。したがって、図4に示されている光ファイバーアクセスネットワークでは、ユーザ機器に転送される必要がある、スケジュールされるべきパケットを受信した後に、アクセスデバイスは、第1のネットワークデバイスの識別子に基づいて第1の補償値を判定し、アクセスデバイスの識別子に基づいて第2の補償値を判定し、ユーザ機器の識別子に基づいて第3の補償値を判定し、第2のネットワークデバイスの識別子に基づいて第4の補償値を判定する必要がある。第1の補償値は、スケジュールされるべきパケットが第1のネットワークデバイスによって転送された後の、ユーザ機器によって受信された第1のスケジューリングパケットのパケット長さの、実際のパケット長さに対する差異の推定値を示し、第2の補償値は、スケジュールされるべきパケットがアクセスデバイスによって転送された後の、第2のネットワークデバイスによって受信された第2のスケジューリングパケットのパケット長さの、実際のパケット長さに対する差異の推定値を示し、第3の補償値は、スケジュールされるべきパケットがユーザ機器によってターゲットネットワークサービスに配信されるときに取得された第3のスケジューリングパケットのパケット長さの、実際のパケット長さに対する差異の推定値を示し、第4の補償値は、スケジュールされるべきパケットが第2のネットワークデバイスによって転送された後の、第1のネットワークデバイスによって受信された第4のスケジューリングパケットのパケット長さの、実際のパケット長さに対する差異の推定値を示す。
可能な実施形態では、図4のアクセスデバイスはBRASであり得、第1のネットワークデバイスはDSLAMであり得、DSLAMデバイスは、光ファイバーアクセスネットワークにおいてインターネットプロトコル(Internet Protocol、IP)を使用し、イーサネットアップリンクインターフェースを提供する必要がある。IPプロトコルを使用し、イーサネットアップリンクインターフェースを提供するDSLAMデバイスは、IP-DSLAMと呼ばれる。第2のネットワークデバイスは、アグリゲーションスイッチなどのアグリゲーションデバイスである。図4に示されているシナリオでは、アクセスデバイスによって判定される第1の補償値は0であり、第2の補償値は8であり、第3の補償値は0であり、第4の補償値は4である。この理由は、光ファイバーアクセスシナリオでは、アグリゲーションスイッチがアクセスデバイスの802.1Qイン802.1Q(802.1Q in 802.1Q、QINQ)インターフェースにアクセスするからである(ここで、802.1Qは、電気電子技術者協会(Institute of Electrical and Electronics Engineers、IEEE)802.1Qプロトコルである)。BRASが、スケジュールされるべきパケットを受信し、スケジュールされるべきパケットが転送されることが可能であると判定したとき、アクセスデバイスは、スケジュールされるべきパケットに、仮想ローカルエリアネットワーク(virtual local area network、VLAN)タグの2つのレイヤを追加し、次いで、スケジュールされるべきパケットをアグリゲーションスイッチに転送する。VLANタグの2つのレイヤ中の内側レイヤタグおよび外側レイヤタグは、各4バイトである。BRASによって受信された、スケジュールされるべきパケットの実際のパケット長さが240バイトである場合、スケジュールされるべきパケットがBRASによって転送された後の、アグリゲーションスイッチによって受信される第2のスケジューリングパケットのパケット長さは、248バイトであり、実際のパケット長さに対する差異の推定値は、8である。言い換えれば、第2の補償値は8である。BRASによって転送された、スケジュールされるべきパケットを受信した後に、アグリゲーションスイッチは、4バイトの外側レイヤVLANタグを取り外す。したがって、スケジュールされるべきパケットがアグリゲーションスイッチによって転送された後の、IP-DSLAMによって受信される第4のスケジューリングパケットのパケット長さは、244バイトであり、実際のパケット長さに対する差異の推定値は、4である。言い換えれば、第4の補償値は4である。アグリゲーションスイッチによって転送された、スケジュールされるべきパケットを受信した後に、IP-DSLAMは、4バイトの内側レイヤVLANタグを取り外す。したがって、スケジュールされるべきパケットがIP-DSLAMによって転送された後の、ユーザ機器によって受信される第1のスケジューリングパケットのパケット長さは、240バイトであり、実際のパケット長さに対する差異の推定値は、0である。言い換えれば、第2の補償値は0である。スケジュールされるべきパケットを受信した後に、ユーザ機器は、パケットを処理するのを停止し、パケットを、対応するターゲットネットワークサービスに直接配信する。したがって、第3の補償値も0である。第1のネットワークデバイス、第2のネットワークデバイス、およびアクセスデバイスの上記のタイプは、例として使用されているにすぎず、特定の限定として理解されることは不可能であることが理解されよう。たとえば、IP-DSLAMは、代替として光回線端末(optical line terminal、OLT)であってよい。
本出願のこの実施形態では、補償値は、ネットワーク中の各デバイスの送信プロトコルに基づいて判定され、補償値は、正、負、または0であり得る。たとえば、図4に示されているシナリオでは、BRASが802.adプロトコルを使用するので、BRASは、スケジュールされるべきパケットに、VLANタグの2つのレイヤを追加する必要があり、したがって、BRASの識別子に基づいて判定される第2の補償値は、4である。別の例では、データを送信するためにネットワーク中でトンネル技術が使用される場合、トンネルの開始ノードは、トンネルプロトコルに基づいて18バイトのフレームヘッダをユーザデータ中にカプセル化し、次いで、トンネルを使用することによってユーザデータをユーザ機器に送信する。トンネル技術を使用することによって送信され、BRASによって受信された、スケジュールされるべきパケットの実際のパケット長さが240バイトであり、トンネルの終了ノードがユーザ機器である場合、ユーザ機器は、トンネルプロトコルに基づいて、カプセル化された18バイトのフレームヘッダを削除し、次いで、ユーザデータを、対応するターゲットネットワークサービスに配信する。言い換えれば、ターゲットネットワークサービスによって受信されたパケットの長さは222バイトであり、ユーザ機器の識別子に基づいて判定された対応する補償値は-18である。パケットが送信処理において各ネットワークデバイスを通過するとき、各ネットワークデバイスによるパケットの修正は、完全に同じではないことが理解されよう。各ネットワークデバイスによるパケットの修正は、限定はされないが、フレーム間ギャップを追加すること、パケットヘッダを追加すること、パケットプリアンブルを追加すること、仮想ローカルエリアネットワークタグを追加すること、フレーム間ギャップを削除すること、パケットヘッダを削除すること、パケットプリアンブルを削除すること、または仮想ローカルエリアネットワークタグを削除すること、のうちのいずれか1つまたは複数を含む。したがって、ネットワークデバイスに対応する補償値は、完全に同じではない。上記の実施形態における補償値は、例として使用されているにすぎず、特定の限定として理解されることは不可能である。
任意選択で、補償値は、ネットワーク中の各デバイスによって使用される送信プロトコルに基づいて判定される。しかしながら、特定のブロードバンドアクセスネットワークでは、各デバイスは、特定の送信プロトコルを使用する。したがって、各デバイスに対応する補償値または補償アルゴリズムが判定される。ブロードバンドアクセスネットワークを確立した後に、ネットワークマネージャは、アクセスデバイスにおいて、各デバイスの識別子、および各デバイスの識別子に対応する補償値または補償アルゴリズムを構成し得る。スケジュールされるべきパケットを受信した後に、アクセスデバイスは、転送経路上の各デバイスに対応する補償値または補償アルゴリズムを判定するために、スケジュールされるべきパケットの転送経路上の各デバイスの識別子のみを取得する必要があり、転送経路上の各デバイスに対応する送信プロトコルを取得する必要はない。
本出願の実施形態における関連するネットワーク装置について、図1から図4に示されている関連する実施形態を参照しながら以下で説明される。図5は、本出願の実施形態による階層的帯域幅管理システム中のパケットスケジューリング装置を示す。装置300は、通信モジュール310、処理モジュール320、および記憶モジュール330を含む。
処理モジュール320は、装置300の行為を制御および管理するように構成され得る。たとえば、処理モジュール320は、図2のステップS104およびステップS106、ならびに/または本出願の方法実施形態において説明される技術の他の内容を実施するように構成される。通信モジュール310は、別のデバイスによって送信されたパケットを受信するか、またはパケットを別のデバイスに送信するように構成される。たとえば、ステップS108において、ターゲットトークンの第1の量が残りのトークンの第1の量以下であり、ターゲットトークンの第2の量が残りのトークンの第2の量以下であると判定されたとき、受信されたパケットは、第1のネットワークデバイスに転送される。
記憶モジュール330は、たとえば、上記の方法実施形態における各デバイスのデバイス識別子と補償値または補償アルゴリズムとの間の対応を記憶している、プログラムコードおよびデータを記憶するように構成される。処理モジュール320は、対応に基づいて、各デバイス識別子に対応する補償値または補償アルゴリズムを発見し、補償アルゴリズムに基づいて、記憶モジュール330に記憶された対応するプログラムコードを呼び出して、各デバイスに対応する補償値を計算する。
処理モジュール320は、プロセッサまたはコントローラであり得、たとえば、中央処理ユニット(central processing unit、CPU)、汎用プロセッサ、デジタル信号プロセッサ(digital signal processing、DSP)、特定用途向け集積回路(application-specific integrated circuit、ASIC)、フィールドプログラマブルゲートアレイ(field programmable gate array、FPGA)または別のプログラマブル論理デバイス、トランジスタ論理デバイス、ハードウェア構成要素、あるいはそれらの任意の組合せであり得る。処理モジュールは、本出願で開示される内容に関して説明される様々な例示的な論理ブロック、モジュール、および回路を実装または実行し得る。プロセッサは、代替として、コンピューティング機能を実装するプロセッサの組合せ、たとえば、1つまたは複数のマイクロプロセッサの組合せ、あるいはDSPとマイクロプロセッサとの組合せであり得る。通信モジュール310は、通信インターフェース、トランシーバ、トランシーバ回路などであり得る。通信インターフェースは、一般的な名前であり、1つまたは複数のインターフェースを含み得る。記憶モジュール330は、記憶機能を提供するように構成されたメモリ、または別のサービスもしくはモジュールであり得る。
特に、装置300が様々な動作を実施する特定の実装については、上記の方法実施形態における特定の動作を参照されたい。詳細について本明細書で説明されない。
図6は、本出願の実施形態によるネットワークデバイスの概略構造図である。ネットワークデバイス400は、少なくとも、プロセッサ410、通信インターフェース420、およびメモリ430を含む。プロセッサ410、通信インターフェース420、およびメモリ430は、バス440を使用することによって互いに接続される。
プロセッサ410は、中央処理ユニット(central processing unit、CPU)などの1つまたは複数の汎用プロセッサ、あるいはCPUとハードウェアチップとの組合せを含み得る。ハードウェアチップは、特定用途向け集積回路(application-specific integrated circuit、ASIC)、プログラマブル論理デバイス(programmable logic device、PLD)、またはそれらの組合せであり得る。PLDは、複合プログラマブル論理デバイス(complex programmable logic device、CPLD)、フィールドプログラマブルゲートアレイ(field-programmable gate array、FPGA)、汎用アレイ論理(generic array logic、GAL)、またはそれらの任意の組合せであり得る。
メモリ430は、ランダムアクセスメモリ(random-access memory、RAM)などの揮発性メモリ(volatile memory)を含み得る。メモリはまた、読取り専用メモリ(read-only memory、ROM)、フラッシュメモリ(flash memory)、ハードディスクドライブ(hard disk drive、HDD)、またはソリッドステートドライブ(solid-state drive、SSD)などの不揮発性メモリ(non-volatile memory)を含み得る。メモリ430はさらに、上記のタイプのメモリの組合せを含み得る。メモリ430は、プロセッサ410が、メモリ430に記憶されたプログラムコードおよびデータを呼び出して、本出願の実施形態における通信モジュールおよび/または処理モジュールの機能を実装するように、プログラムコードおよびデータを記憶するように構成され得る。
プロセッサ410は、メモリ430中の関連する命令を読み取って、以下の動作を実施するように構成される。
プロセッサ410は、スケジュールされるべきパケットを受信するように通信インターフェースを制御し、スケジュールされるべきパケットは、ネットワーク側によってユーザ機器に送信されたパケットである。
プロセッサ410は、スケジュールされるべきパケットの実際のパケット長さを取得し、実際のパケット長さは、スケジュールされるべきパケットの合計の長さを示す。
プロセッサ410は、スケジュールされるべきパケットに基づいて第1の補償値および第2の補償値を判定し、第1の補償値は、スケジュールされるべきパケットが第1のネットワークデバイスによって転送された後の、実際のパケット長さに対する差異の推定値を示し、第2の補償値は、スケジュールされるべきパケットがアクセスデバイスによって転送された後の、実際のパケット長さに対する差異の推定値を示し、第1のネットワークデバイスは、スケジュールされるべきパケットの転送経路上でアクセスデバイスとユーザ機器との間に配置されたネットワークデバイスである。
プロセッサ410は、第1のパケット長さおよび第2のパケット長さを判定し、第1のパケット長さの値は、実際のパケット長さの値と第1の補償値との和に等しく、第2のパケット長さの値は、実際のパケット長さの値と第2の補償値との和に等しい。
プロセッサ410は、第1のパケット長さおよび第2のパケット長さに基づいて、スケジュールされるべきパケットをスケジュールする。
特に、ネットワークデバイスが様々な動作を実施する特定の実装については、上記の方法実施形態における特定の動作を参照されたい。詳細について本明細書で説明されない。
本発明の実施形態は、非一時的コンピュータ記憶媒体をさらに提供する。非一時的コンピュータ記憶媒体は命令を記憶する。命令がプロセッサ上で実行されたとき、上記の方法実施形態における方法ステップが実装され得る。非一時的コンピュータ記憶媒体のプロセッサによって方法ステップを実施する特定の実装については、上記の方法実施形態における特定の動作を参照されたい。詳細について本明細書で説明されない。
上記の実施形態の全部または一部は、ソフトウェア、ハードウェア、またはそれらの任意の組合せを使用することによって実装され得る。実装のためにソフトウェアが使用されるとき、実施形態の全部または一部は、コンピュータプログラム製品の形態で実装され得る。コンピュータプログラム製品は、1つまたは複数のコンピュータ命令を含む。コンピュータプログラム命令がコンピュータ上にロードされ、実行されたとき、本出願の実施形態による手順または機能が、すべてまたは部分的に生成される。コンピュータは、汎用コンピュータ、専用コンピュータ、コンピュータネットワーク、または他のプログラマブル装置であり得る。コンピュータ命令は、コンピュータ可読記憶媒体に記憶され得るか、またはコンピュータ可読記憶媒体から別のコンピュータ可読記憶媒体に送信され得る。たとえば、コンピュータ命令は、ワイヤード(たとえば、同軸ケーブル、光ファイバー、またはデジタル加入者回線(DSL))あるいはワイヤレス(たとえば、赤外線、無線、またはマイクロ波)方式で、ウェブサイト、コンピュータ、サーバ、またはデータセンターから別のウェブサイト、コンピュータ、サーバ、またはデータセンターに送信され得る。コンピュータ可読記憶媒体は、コンピュータによってアクセス可能な任意の使用可能な媒体であり得るか、あるいは1つまたは複数の使用可能な媒体を統合したサーバまたはデータセンターなどのデータ記憶デバイスであり得る。使用可能な媒体は、磁気媒体(たとえば、フロッピーディスク、ハードディスク、または磁気テープ)、光媒体(たとえば、DVD)、あるいは半導体媒体(たとえば、SSD)であり得る。
シーケンス調整、組合せ、または削除が、実際の要件に基づいて、本出願の実施形態における方法中のステップに対して実施されてよい。本出願の実施形態における装置中のモジュールは、実際の要件に基づいて、分割されるか、組み合わされるか、または削除されてよい。
本出願の実施形態について上記で詳細に説明された。本出願の原理および実装について、本明細書では、特定の例を使用することによって説明された。本出願の実施形態に関する説明は、本出願の方法および核心の発案を理解するのを助けるために提供されているにすぎない。加えて、当業者は、本出願の発案に基づいて特定の実装および適用範囲に関して、本出願に変形および修正を施すことができる。したがって、本明細書の内容は、本出願に対する限定として解釈されるものではない。

Claims (15)

  1. アクセスデバイスによって、スケジュールされるべきパケットを受信すること(S102)であって、前記スケジュールされるべきパケットは、ネットワーク側によってユーザ機器に送信されたパケットであることと、
    前記アクセスデバイスによって、前記スケジュールされるべきパケットの実際のパケット長さを取得すること(S102)であって、前記実際のパケット長さは、前記スケジュールされるべきパケットの合計の長さを示すことと、
    前記アクセスデバイスによって、前記スケジュールされるべきパケットに基づいて第1の補償値および第2の補償値を判定すること(S104)であって、前記第1の補償値は、前記スケジュールされるべきパケットが第1のネットワークデバイスによって転送された後の、実際のパケット長さに対する差異の推定値を示し、前記第2の補償値は、前記スケジュールされるべきパケットが前記アクセスデバイスによって転送された後の、前記実際のパケット長さに対する差異の推定値を示し、前記第1のネットワークデバイスは、前記スケジュールされるべきパケットの転送経路上で前記アクセスデバイスと前記ユーザ機器との間に配置されたネットワークデバイスであることと、
    前記アクセスデバイスによって、第1のパケット長さおよび第2のパケット長さを判定すること(S106)であって、前記第1のパケット長さの値は、実際のパケット長さの値と前記第1の補償値との和に等しく、前記第2のパケット長さの値は、前記実際のパケット長さの値と前記第2の補償値との和に等しいことと、
    前記アクセスデバイスによって、前記第1のパケット長さおよび前記第2のパケット長さに基づいて、前記スケジュールされるべきパケットをスケジュールすること(S108)
    を含むパケットスケジューリング方法。
  2. 前記アクセスデバイスによって、前記スケジュールされるべきパケットに基づいて第1の補償値および第2の補償値を判定すること(S104)は、
    前記アクセスデバイスによって、前記スケジュールされるべきパケットに基づいて、前記スケジュールされるべきパケットの前記転送経路を判定することであって、前記転送経路は、前記アクセスデバイスの識別子および前記第1のネットワークデバイスの識別子を含むことと、
    前記アクセスデバイスによって、前記第1のネットワークデバイスの前記識別子に基づいて前記第1の補償値を判定し、前記アクセスデバイスの前記識別子に基づいて前記第2の補償値を判定することと
    を特に含む、請求項1に記載の方法。
  3. 前記アクセスデバイスによって、前記第1のネットワークデバイスの前記識別子に基づいて前記第1の補償値を判定し、前記アクセスデバイスの前記識別子に基づいて前記第2の補償値を判定することは、
    前記アクセスデバイスによって、前記第1のネットワークデバイスの前記識別子に基づいて第1の補償アルゴリズムを判定し、前記アクセスデバイスの前記識別子に基づいて第2の補償アルゴリズムを判定することであって、前記第1の補償アルゴリズムは、前記第1のネットワークデバイスによって転送されるパケットのパケット長さを補償するために使用され、前記第2の補償アルゴリズムは、前記アクセスデバイスによって転送されるパケットのパケット長さを補償するために使用されることと、
    前記アクセスデバイスによって、前記実際のパケット長さおよび前記第1の補償アルゴリズムに基づいて前記第1の補償値を判定し、前記実際のパケット長さおよび前記第2の補償アルゴリズムに基づいて前記第2の補償値を判定することと
    を特に含む、請求項2に記載の方法。
  4. 前記アクセスデバイスによって、前記第1のパケット長さおよび前記第2のパケット長さに基づいて、前記スケジュールされるべきパケットをスケジュールすること(S108)は、
    前記アクセスデバイスによって、前記ユーザ機器に対応する第1のトークンバケット中の残りのトークンの第1の量を取得することであって、前記残りのトークンの第1の量は、現在の瞬間における前記第1のトークンバケット中のトークンの量に等しいことと、
    前記アクセスデバイスによって、前記第1のネットワークデバイスに対応する第2のトークンバケット中の残りのトークンの第2の量を取得することであって、前記残りのトークンの第2の量は、前記現在の瞬間における前記第2のトークンバケット中のトークンの量に等しいことと、
    前記アクセスデバイスによって、前記第1のトークンバケットおよび前記第1のパケット長さに基づいて、前記スケジュールされるべきパケットをスケジュールするために使用されるターゲットトークンの第1の量を判定し、前記第2のトークンバケットおよび前記第2のパケット長さに基づいて、前記スケジュールされるべきパケットをスケジュールするために使用されるターゲットトークンの第2の量を判定することと、
    前記アクセスデバイスによって、前記ターゲットトークンの第1の量が前記残りのトークンの第1の量以下であるかどうか、および前記ターゲットトークンの第2の量が前記残りのトークンの第2の量以下であるかどうかを判定することと、
    前記アクセスデバイスが、前記ターゲットトークンの第1の量が前記残りのトークンの第1の量以下であり、前記ターゲットトークンの第2の量が前記残りのトークンの第2の量以下であると判定したとき、前記アクセスデバイスによって、第1の期間中に、前記スケジュールされるべきパケットを転送すると判定し、前記第1のトークンバケットから、前記ターゲットトークンの第1の量と同じ量であるトークンを差し引き、前記第2のトークンバケットから、前記ターゲットトークンの第2の量と同じ量であるトークンを差し引くことと
    を特に含む、請求項1乃至3のいずれか1項に記載の方法。
  5. 前記アクセスデバイスが、前記ターゲットトークンの第1の量が前記残りのトークンの第1の量よりも大きいか、または前記ターゲットトークンの第2の量が前記残りのトークンの第2の量よりも大きいと判定したとき、前記アクセスデバイスによって、前記第1の期間中に、前記スケジュールされるべきパケットを転送しないと判定することをさらに含む、請求項4に記載の方法。
  6. 前記ユーザ機器のアクセス帯域幅は、前記ユーザ機器へアクセスされる合計帯域幅であり、前記ユーザ機器の前記アクセス帯域幅は、第1の帯域幅を含み、前記第1の帯域幅は、前記ユーザ機器のターゲットネットワークサービスへアクセスされる帯域幅を示すために使用され、前記第1の帯域幅の値は、前記ユーザ機器の前記アクセス帯域幅の値よりも小さく、前記方法は、
    前記アクセスデバイスによって、前記ユーザ機器の識別子を判定し、前記ユーザ機器の前記識別子に基づいて第3の補償値を判定することであって、前記第3の補償値は、前記スケジュールされるべきパケットが前記ユーザ機器によって前記ターゲットネットワークサービスに配信された後の、前記実際のパケット長さに対する差異の推定値を示すことをさらに含み、
    前記アクセスデバイスによって、前記第1のパケット長さおよび前記第2のパケット長さに基づいて、前記スケジュールされるべきパケットをスケジュールすること(S108)は、
    前記アクセスデバイスによって、前記実際のパケット長さおよび前記第3の補償値に基づいて第3のパケット長さを判定することであって、前記第3のパケット長さの値は、前記実際のパケット長さの値と前記第3の補償値との和に等しく、前記アクセスデバイスによって、前記第1のパケット長さ、前記第2のパケット長さ、および前記第3のパケット長さに基づいて、前記スケジュールされるべきパケットをスケジュールすることを特に含む、請求項1乃至3のいずれか1項に記載の方法。
  7. 前記アクセスデバイスによって、前記第1のパケット長さ、前記第2のパケット長さ、および前記第3のパケット長さに基づいて、前記スケジュールされるべきパケットをスケジュールすることは、
    前記アクセスデバイスによって、前記ユーザ機器に対応する第1のトークンバケット中の残りのトークンの第1の量を取得することであって、前記残りのトークンの第1の量は、現在の瞬間における前記第1のトークンバケット中のトークンの量に等しいことと、
    前記アクセスデバイスによって、前記第1のネットワークデバイスに対応する第2のトークンバケット中の残りのトークンの第2の量を取得することであって、前記残りのトークンの第2の量は、前記現在の瞬間における前記第2のトークンバケット中のトークンの量に等しいことと、
    前記アクセスデバイスによって、前記ターゲットネットワークサービスに対応する第3のトークンバケット中の残りのトークンの第3の量を取得することであって、前記残りのトークンの第3の量は、前記現在の瞬間における前記第3のトークンバケット中のトークンの量に等しいことと、
    前記アクセスデバイスによって、前記第1のトークンバケットおよび前記第1のパケット長さに基づいて、前記スケジュールされるべきパケットをスケジュールするために使用されるターゲットトークンの第1の量を判定し、前記第2のトークンバケットおよび前記第2のパケット長さに基づいて、前記スケジュールされるべきパケットをスケジュールするために使用されるターゲットトークンの第2の量を判定し、前記第3のトークンバケットおよび前記第3のパケット長さに基づいて、前記スケジュールされるべきパケットをスケジュールするために使用されるターゲットトークンの第3の量を判定することと、
    前記アクセスデバイスによって、前記ターゲットトークンの第1の量が前記残りのトークンの第1の量以下であるかどうか、前記ターゲットトークンの第2の量が前記残りのトークンの第2の量以下であるかどうか、および前記ターゲットトークンの第3の量が前記残りのトークンの第3の量以下であるかどうかを判定することと、
    前記アクセスデバイスが、前記ターゲットトークンの第1の量が前記残りのトークンの第1の量以下であり、前記ターゲットトークンの第2の量が前記残りのトークンの第2の量以下であり、前記ターゲットトークンの第3の量が前記残りのトークンの第3の量以下であると判定したとき、前記アクセスデバイスによって、前記スケジュールされるべきパケットを転送すると判定し、前記第1のトークンバケットから、前記ターゲットトークンの第1の量と同じ量であるトークンを差し引き、前記第2のトークンバケットから、ターゲットトークンの第2の量と同じ量であるトークンを差し引き、前記第3のトークンバケットから、前記ターゲットトークンの第3の量と同じ量であるトークンを差し引くことと
    を特に含む、請求項6に記載の方法。
  8. 前記ユーザ機器の前記識別子に基づいて第3の補償値を判定することは、
    前記アクセスデバイスによって、前記ユーザ機器の前記識別子に基づいて第3の補償アルゴリズムを判定し、前記実際のパケット長さおよび前記第3の補償アルゴリズムに基づいて前記第3の補償値を判定すること
    を特に含む、請求項6または7に記載の方法。
  9. 前記第1のネットワークデバイスが、非同期転送モードATMに基づくネットワークデバイスであるとき、前記第1の補償値は、ATMセルヘッダの長さの値に前記実際のパケット長さの前記値とATMセル長さの値との商を掛けたものに等しい、請求項1乃至8のいずれか1項に記載の方法。
  10. パケット補償装置であって、
    スケジュールされるべきパケットを受信するように構成された受信機であって、前記スケジュールされるべきパケットは、ネットワーク側によってユーザ機器に送信されたパケットである、受信機と、
    前記スケジュールされるべきパケットの実際のパケット長さを取得するように構成されたプロセッサであって、前記実際のパケット長さは、前記スケジュールされるべきパケットの合計の長さを示す、プロセッサとを含み、
    前記プロセッサは、前記スケジュールされるべきパケットに基づいて第1の補償値および第2の補償値を判定するようにさらに構成され、前記第1の補償値は、前記スケジュールされるべきパケットが第1のネットワークデバイスによって転送された後の、前記実際のパケット長さに対する差異の推定値を示し、前記第2の補償値は、前記スケジュールされるべきパケットが前記受信機によって転送された後の、前記実際のパケット長さに対する差異の推定値を示し、前記第1のネットワークデバイスは、前記スケジュールされるべきパケットの転送経路上で前記パケット補償装置と前記ユーザ機器との間に配置されたネットワークデバイスであり、
    前記プロセッサは、第1のパケット長さおよび第2のパケット長さを判定し、前記第1のパケット長さの値は、前記実際のパケット長さの値と前記第1の補償値との和に等しく、前記第2のパケット長さの値は、前記実際のパケット長さの値と前記第2の補償値との和に等しく、前記第1のパケット長さおよび前記第2のパケット長さに基づいて、前記スケジュールされるべきパケットをスケジュールするようにさらに構成される、パケット補償装置。
  11. 前記プロセッサが、前記スケジュールされるべきパケットに基づいて前記第1の補償値および前記第2の補償値を判定することは、
    前記プロセッサが、前記スケジュールされるべきパケットに基づいて、前記スケジュールされるべきパケットの前記転送経路を判定するように構成され、前記転送経路が、前記パケット補償装置の識別子および前記第1のネットワークデバイスの識別子を含むことと、
    前記プロセッサが、前記第1のネットワークデバイスの前記識別子に基づいて前記第1の補償値を判定し、前記パケット補償装置の前記識別子に基づいて前記第2の補償値を判定するようにさらに構成されることと
    を特に含む、請求項10に記載の装置。
  12. 前記プロセッサが、前記第1のネットワークデバイスの前記識別子に基づいて前記第1の補償値を判定し、前記パケット補償装置の前記識別子に基づいて前記第2の補償値を判定することは、
    前記プロセッサが、前記第1のネットワークデバイスの前記識別子に基づいて第1の補償アルゴリズムを判定し、前記パケット補償装置の前記識別子に基づいて第2の補償アルゴリズムを判定するように構成され、前記第1の補償アルゴリズムが、前記第1のネットワークデバイスによって転送されるパケットのパケット長さを補償するために使用され、前記第2の補償アルゴリズムが、前記パケット補償装置によって転送されるパケットのパケット長さを補償するために使用されることと、
    前記プロセッサが、前記実際のパケット長さおよび前記第1の補償アルゴリズムに基づいて前記第1の補償値を判定し、前記実際のパケット長さおよび前記第2の補償アルゴリズムに基づいて前記第2の補償値を判定するようにさらに構成されることと
    を特に含む、請求項11に記載の装置。
  13. 前記プロセッサが、前記第1のパケット長さおよび前記第2のパケット長さに基づいて、前記スケジュールされるべきパケットをスケジュールすることは、
    前記プロセッサが、前記ユーザ機器に対応する第1のトークンバケット中の残りのトークンの第1の量を取得するように構成され、前記残りのトークンの第1の量が、現在の瞬間における前記第1のトークンバケット中のトークンの量に等しいことと、
    前記プロセッサが、前記第1のネットワークデバイスに対応する第2のトークンバケット中の残りのトークンの第2の量を取得するようにさらに構成され、前記残りのトークンの第2の量が、前記現在の瞬間における前記第2のトークンバケット中のトークンの量に等しいことと、
    前記プロセッサが、前記第1のトークンバケットおよび前記第1のパケット長さに基づいて、前記スケジュールされるべきパケットをスケジュールするために使用されるターゲットトークンの第1の量を判定し、前記第2のトークンバケットおよび前記第2のパケット長さに基づいて、前記スケジュールされるべきパケットをスケジュールするために使用されるターゲットトークンの第2の量を判定するようにさらに構成されることと、
    前記プロセッサが、前記ターゲットトークンの第1の量が前記残りのトークンの第1の量以下であるかどうか、および前記ターゲットトークンの第2の量が前記残りのトークンの第2の量以下であるかどうかを判定するようにさらに構成されることと、
    前記プロセッサが、前記ターゲットトークンの第1の量が前記残りのトークンの第1の量以下であり、前記ターゲットトークンの第2の量が前記残りのトークンの第2の量以下であると判定したとき、前記プロセッサが、第1の期間中に、前記スケジュールされるべきパケットを転送すると判定し、前記第1のトークンバケットから、前記ターゲットトークンの第1の量と同じ量であるトークンを差し引き、前記第2のトークンバケットから、前記ターゲットトークンの第2の量と同じ量であるトークンを差し引くようにさらに構成されることと、
    を特に含む、請求項10乃至12のいずれか1項に記載の装置。
  14. プロセッサと、通信インターフェースと、メモリと、を含むネットワークデバイスであって、前記メモリは、命令を記憶するように構成され、前記プロセッサは、前記命令を実行するように構成され、前記通信インターフェースは、データを受信するかまたは送信するように構成され、前記命令を実行するとき、前記プロセッサは、請求項1乃至9のいずれかによる前記方法を実施する、ネットワークデバイス。
  15. コンピュータプログラムを記憶するコンピュータ記憶媒体であって、前記コンピュータプログラムがプロセッサによって実行されると、請求項1乃至9のいずれかによる前記方法が実施される、コンピュータ記憶媒体。
JP2021541488A 2019-01-31 2019-12-24 パケットスケジューリング方法、関連するデバイス、およびコンピュータ記憶媒体 Active JP7135217B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201910104686.1A CN111510394B (zh) 2019-01-31 2019-01-31 一种报文调度方法、相关设备及计算机存储介质
CN201910104686.1 2019-01-31
PCT/CN2019/127827 WO2020155941A1 (zh) 2019-01-31 2019-12-24 一种报文调度方法、相关设备及计算机存储介质

Publications (2)

Publication Number Publication Date
JP2022518227A JP2022518227A (ja) 2022-03-14
JP7135217B2 true JP7135217B2 (ja) 2022-09-12

Family

ID=71839939

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021541488A Active JP7135217B2 (ja) 2019-01-31 2019-12-24 パケットスケジューリング方法、関連するデバイス、およびコンピュータ記憶媒体

Country Status (6)

Country Link
US (1) US11689465B2 (ja)
EP (1) EP3883191B1 (ja)
JP (1) JP7135217B2 (ja)
KR (1) KR102589955B1 (ja)
CN (1) CN111510394B (ja)
WO (1) WO2020155941A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230120869A1 (en) * 2020-03-05 2023-04-20 Nippon Telegraph And Telephone Corporation Network management systems, edge devices, network management devices, and programs
CN114006862B (zh) * 2021-10-29 2023-10-20 锐捷网络股份有限公司 报文转发方法、装置和设备及计算机存储介质
CN115314446B (zh) * 2022-07-22 2024-05-28 烽火通信科技股份有限公司 一种报文带宽补偿方法、装置及设备

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004107671A1 (ja) 2003-05-27 2004-12-09 Fujitsu Limited 通信装置
WO2004109995A1 (ja) 2003-06-03 2004-12-16 Fujitsu Limited 流量制御方法及びその装置
JP2006262337A (ja) 2005-03-18 2006-09-28 Fujitsu Ltd 帯域制御装置及び帯域制御方法
JP2006333091A (ja) 2005-05-26 2006-12-07 Hitachi Communication Technologies Ltd パケット転送装置及びネットワークシステム
JP2009512280A (ja) 2005-10-07 2009-03-19 アギア システムズ インコーポレーテッド 補完指示ファイルを用いた、rtpエグレスストリーミング装置及び方法
CN101447912A (zh) 2007-11-27 2009-06-03 华为技术有限公司 一种报文调度方法和装置
JP2010518742A (ja) 2007-02-09 2010-05-27 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 制御メッセージと音声ペイロードとを分別する方法及び装置
JP2019517214A (ja) 2016-05-20 2019-06-20 華為技術有限公司Huawei Technologies Co.,Ltd. パケットドメイン内の音声サービスをスケジューリングするための方法および装置

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5758089A (en) * 1995-11-02 1998-05-26 Sun Microsystems, Inc. Method and apparatus for burst transferring ATM packet header and data to a host computer system
JP2946462B1 (ja) * 1998-03-10 1999-09-06 株式会社超高速ネットワーク・コンピュータ技術研究所 パケット・スケジューリング制御方法
US7010607B1 (en) * 1999-09-15 2006-03-07 Hewlett-Packard Development Company, L.P. Method for training a communication link between ports to correct for errors
US7110411B2 (en) * 2002-03-25 2006-09-19 Erlang Technology, Inc. Method and apparatus for WFQ scheduling using a plurality of scheduling queues to provide fairness, high scalability, and low computation complexity
US7765300B2 (en) * 2003-10-06 2010-07-27 Ericsson Ab Protocol for messaging between a centralized broadband remote aggregation server and other devices
WO2006027672A2 (en) * 2004-09-10 2006-03-16 Nortel Networks System and method for adaptive frame size management in a wireless multihop network
CN100421403C (zh) * 2005-06-29 2008-09-24 华为技术有限公司 一种认证接入系统及其认证接入方法
CN100433718C (zh) * 2005-10-31 2008-11-12 华为技术有限公司 保障数据分组业务服务等级的方法及速率限制方法
US7821941B2 (en) * 2006-11-03 2010-10-26 Cisco Technology, Inc. Automatically controlling operation of a BRAS device based on encapsulation information
US8000235B2 (en) * 2008-10-05 2011-08-16 Contextream Ltd. Bandwidth allocation method and apparatus
US8483194B1 (en) * 2009-01-21 2013-07-09 Aerohive Networks, Inc. Airtime-based scheduling
US20110075562A1 (en) * 2009-09-25 2011-03-31 Isaksson Martin Rate Shaping For Wireless Communication Using Token Bucket That Allows Token Debt
CN101873634B (zh) * 2010-06-18 2013-06-05 杭州华三通信技术有限公司 一种基于无线局域网的带宽调度方法和设备
CN102843775B (zh) * 2012-09-11 2015-04-22 福建星网锐捷网络有限公司 调度方法、装置及网络设备
CN103888372B (zh) * 2012-12-21 2017-05-17 中兴通讯股份有限公司 一种流量整形方法和数据处理设备
CN106605371B (zh) * 2015-05-26 2020-01-10 华为技术有限公司 一种调整近场通信nfc中数据包长度的方法、装置及系统
CN109218215B (zh) * 2017-06-29 2021-11-19 华为技术有限公司 一种报文传输的方法和网络设备
CN107896197A (zh) * 2017-10-23 2018-04-10 深圳市楠菲微电子有限公司 通信设备中测量转发速率的方法和装置、存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004107671A1 (ja) 2003-05-27 2004-12-09 Fujitsu Limited 通信装置
WO2004109995A1 (ja) 2003-06-03 2004-12-16 Fujitsu Limited 流量制御方法及びその装置
JP2006262337A (ja) 2005-03-18 2006-09-28 Fujitsu Ltd 帯域制御装置及び帯域制御方法
JP2006333091A (ja) 2005-05-26 2006-12-07 Hitachi Communication Technologies Ltd パケット転送装置及びネットワークシステム
JP2009512280A (ja) 2005-10-07 2009-03-19 アギア システムズ インコーポレーテッド 補完指示ファイルを用いた、rtpエグレスストリーミング装置及び方法
JP2010518742A (ja) 2007-02-09 2010-05-27 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 制御メッセージと音声ペイロードとを分別する方法及び装置
CN101447912A (zh) 2007-11-27 2009-06-03 华为技术有限公司 一种报文调度方法和装置
JP2019517214A (ja) 2016-05-20 2019-06-20 華為技術有限公司Huawei Technologies Co.,Ltd. パケットドメイン内の音声サービスをスケジューリングするための方法および装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
西村 和人 ほか,超高速スケジューリングアーキテクチャの提案,電子情報通信学会技術研究報告 Vol.113 No.6,日本,一般社団法人電子情報通信学会 The Institute of Electronics,Information and Communication Engineers,2013年04月11日,pp.7-12

Also Published As

Publication number Publication date
JP2022518227A (ja) 2022-03-14
CN111510394B (zh) 2022-04-12
US11689465B2 (en) 2023-06-27
EP3883191A4 (en) 2022-03-16
CN111510394A (zh) 2020-08-07
EP3883191B1 (en) 2024-07-10
EP3883191A1 (en) 2021-09-22
KR102589955B1 (ko) 2023-10-13
WO2020155941A1 (zh) 2020-08-06
US20210359949A1 (en) 2021-11-18
KR20210094083A (ko) 2021-07-28

Similar Documents

Publication Publication Date Title
JP7135217B2 (ja) パケットスケジューリング方法、関連するデバイス、およびコンピュータ記憶媒体
KR102579059B1 (ko) 패킷 처리 방법 및 장치, 기기, 그리고 시스템
EP1585261B1 (en) Apparatus and method for processing labeled flows in a communications access network
KR101445470B1 (ko) L2 이더넷 노드로의 통신 가용 전송 네트워크 대역폭
JP5462954B2 (ja) パケットロス検出方法及び装置、並びにルータ
US11296924B2 (en) Communication method, communications device, and storage medium
KR101990235B1 (ko) 패킷 교환 네트워크 내의 네트워크 노드에 있어서의 트래픽 관리를 위한 방법 및 네트워크 노드
CN111371634B (zh) 一种通信方法、装置及系统
EP3994848A1 (en) Transporting mtnc-id over srv6-header for 5g transport
EP2681871A1 (en) In-service throughput testing in distributed router/switch architectures
EP3678332B1 (en) Method and system for determining quality of service
CN113055293B (zh) 软件定义广域网中的选路方法及装置、通信系统
CN112787952B (zh) 一种业务流量调整方法及装置
US8848716B2 (en) Termination of a pseudowires on multiple line cards
US7843942B2 (en) Node and fair rate calculating method
US20100329245A1 (en) Transparent Mapping of Cell Streams to Packet Services
US20050281267A1 (en) ATM switching protocol
CN114598636A (zh) 流量调度方法、设备及系统
US8976812B2 (en) Communication apparatus and band control method
WO2023206165A1 (zh) 组播数据报文发送的方法、装置、设备和存储介质
JP2012165319A (ja) 伝送装置及び伝送網システム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210803

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210716

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210716

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220715

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220831

R150 Certificate of patent or registration of utility model

Ref document number: 7135217

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150