JP2009182546A - トラフィックシェーピング機能および装置 - Google Patents

トラフィックシェーピング機能および装置 Download PDF

Info

Publication number
JP2009182546A
JP2009182546A JP2008018490A JP2008018490A JP2009182546A JP 2009182546 A JP2009182546 A JP 2009182546A JP 2008018490 A JP2008018490 A JP 2008018490A JP 2008018490 A JP2008018490 A JP 2008018490A JP 2009182546 A JP2009182546 A JP 2009182546A
Authority
JP
Japan
Prior art keywords
user
traffic
bandwidth
transmission
packet
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
JP2008018490A
Other languages
English (en)
Other versions
JP4881887B2 (ja
Inventor
Hideki Hinosugi
日野杉英樹
Yoshihiko Sakata
阪田善彦
Jun Anzai
安西淳
Ken Kumagai
熊谷健
Shinsuke Nakajima
中島慎介
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.)
Alaxala Networks Corp
Original Assignee
Alaxala Networks Corp
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 Alaxala Networks Corp filed Critical Alaxala Networks Corp
Priority to JP2008018490A priority Critical patent/JP4881887B2/ja
Priority to US12/323,578 priority patent/US7855960B2/en
Publication of JP2009182546A publication Critical patent/JP2009182546A/ja
Priority to US12/947,182 priority patent/US8553543B2/en
Application granted granted Critical
Publication of JP4881887B2 publication Critical patent/JP4881887B2/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/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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2475Traffic characterised by specific attributes, e.g. priority or QoS for supporting traffic characterised by the type of applications
    • 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
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • H04L47/522Dynamic queue service slot or variable bandwidth allocation
    • 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/627Queue scheduling characterised by scheduling criteria for service slots or service orders policing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/253Routing or path finding in a switch fabric using establishment or release of connections between ports
    • H04L49/254Centralised controller, i.e. arbitration or scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/60Software-defined switches
    • H04L49/602Multilayer or multiprotocol switching, e.g. IP switching

Landscapes

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

Abstract

【課題】
Internetトラフィックに対してユーザ間で帯域リソースを公平分配し、リアルタイムトラフィックに対しては廃棄や遅延を極力少なくしつつ、フロー毎にトラフィックのバースト性を平滑化する。帯域制限された仮想閉域網を介して複数の拠点に接続される場合、トラフィックの宛先毎に送信帯域を制限しつつ、リアルタイムトラフィックに対しては廃棄や遅延を極力少なくすること。
【解決手段】
グループ・ユーザ・クラス単位にトラフィックを分類する振り分け部、各ユーザに設定された最大帯域・最低帯域・重みにより利用可能帯域を計算し送信予定時刻を管理する送信時刻処理部を備え、送信予定時刻によるスケジューリング制御部と、ユーザ・グループ・回線の最大帯域によってシェーピングを行なうユーザ・グループ・回線の各最大帯域制御部と、グループ間で優先制御を実施する優先制御処理部とを備える。
【選択図】 図5

Description

本発明は、通信分野におけるトラフィックシェーピング機能および装置に関するものである。
IPネットワークの広帯域が進み、HTTPやFTPなどのInternetトラフィックに加え、電話や放送などのリアルタイム性の高いコンテンツをIPネットアーク上で実現しようという動きが盛んとなりつつある。それらのトラフィックの性質やネットワーク環境によって必要とされるトラフィック制御要件は種々に及んでおり、これらの様々な要求に対応するために可用性を持ったトラフィック制御技術が必要となっている。例えば、HTTPやFTPなどトラフィック(以後、Internetトラフィック)は通信中廃棄が起きても、TCP/IPによる再送処理で通信の完全性を確保可能であるので多少の通信廃棄については寛容であるが、特定ユーザの利用帯域が大きいことによって他ユーザ通信に悪影響を及ぼすことなく、ユーザ間帯域の中立性を確保するような仕組み(最低帯域保証、もしくは、重み均等帯域分配)などの制御が必要となる。一方で、電話や放送などのトラフィック(以後、リアルタイムトラフィック)は、スムーズなコミュニケーションの為に転送遅延を極力排除しつつ、トラフィックがバーストすること(トラフィックを一度に大量に送る事)を防ぐ仕組みを備える必要がある。トラフィックがバーストしてしまうと、トラフィックを受信して再生する機器(電話機やセットトップボックスなど)に大きな受信パケットバッファーを配備する必要があり、機器による接続性などの問題が生じる恐れがあるし、映像配信においてIPマルチキャストが使用された場合はマルチキャストパケットのコピーポイントである中継装置(イーサネット(登録商標)スイッチなど)内にマルチキャストパケットをコピーして一時展開して保持するバッファーの必要サイズが大きくなり、バッファー不足による廃棄や機器コストの増大に繋がる恐れがある。
また、一般的な企業における拠点間接続においては回線速度に応じて料金帯域が異なる契約体系をもつ仮想専用線ネットワーク(広域イーサネット(登録商標)など)を介して拠点間接続を行なうケースが多い。各利用者は通信事業者に対して必要な回線速度を選択して契約を行なって拠点間の通信路を確保する。仮想専用線ネットワークの入り口に位置している通信事業者の中継装置では、利用者の通信帯域を常時監視して契約帯域以上にパケットが流入されてないか監視、超過パケットを廃棄する処理が施されていて、契約帯域を超過したトラフィックに関してはトラフィックの重要度に関係なく通信事業者は廃棄を行なう。利用者は仮想専用線ネットワーク内でのパケット廃棄を回避する為、各拠点において仮想専用線ネットワークとの接続回線上に契約帯域でトラフィックをシェーピングできる中継装置を配備する。複数の拠点に対して接続を行なう場合は、拠点毎にトラフィックをシェーピングできる中継装置を配備する。このような状況下で、リアルタイムトラフィックを扱う場合、拠点毎にトラフィックシェーピングを行ないつつも、リアルタイムトラフィックを低廃棄/低遅延で転送する仕組みが必要となってくる。
トラフィック制御技術についての従来技術として、特許文献1および特許文献2では、高優先クラスと非優先クラスにトラフィックを分類して、高優先トラフィックを常に最優先で送信することによって高優先クラスに分類されたトラフィックについて自装置内で発生する遅延を最小にするトラフィック制御技術について開示されている。特許文献3では複数のユーザ毎に最大帯域・最低帯域を設定してユーザ毎にパケットの送信予定時刻を計算して、その送信予定時刻から各ユーザのトラフィックの送信タイミングをスケジューリングするシェーピング方法について開示されている。特許文献4は高優先クラスの転送遅延を最小化し、高優先クラスのトラフィックを送信した際にパケット長とユーザ情報を低優先クラスのスケジューラー回路に伝達して当該ユーザの送信カウンターを更新することによって高優先クラスと低優先クラスを併せてトラフィックスケジューリングする制御技術について開示されている。
特開2006−211306号公報 特開2005−123919号公報 特開2004−282728号公報 特開2007−013462号公報
IPネットワーク上で高品質な電話や放送などのアプリケーションを実現する為、それぞれのサービス・トラフィック特性およびネットワーク環境に応じて異なったトラフィック制御技術が必要となっている。以下に、要求されるネットワーク要件、即ち本発明が解決すべき課題を記載する。
ネットワーク要件(1)
リアルタイム性が求められるトラフィックに対して廃棄/遅延を極力少なくしつつ、フロー(チャネル)毎に決められた帯域でトラフィックのバースト性を抑えるためのトラフィックシェーピングを実施すること。また、Internetトラフィック(低優先)に対してユーザ間帯域の中立性を確保(最低帯域保証、もしくは、重み均等帯域分配)すること。
上記の課題(ネットワーク要件(1))に対して、特許文献1および特許文献2では、高優先トラフィックが常に優先される構成であるので、高優先トラフィックに対して自装置内で発生する遅延を最小にすることは可能であるが、セッション(キュー)毎にトラフィックバーストを抑えることができないのでネットワークを経由したことによって生じたトラフィックの遅延ゆらぎ(遅延ジッタ)はそのまま伝搬されてしまうという問題が生じる恐れがある。前記のとおりに、フロー毎にバースト性を抑える仕組みがないと、受信再生機やマルチキャストコピーポイントとなる中継装置などにおいてバッファー不足によるパケット廃棄が発生してしまい通信品質の低下に繋がる可能性がある。
また、特許文献3は、複数のユーザ毎に設定された最大帯域・最低帯域により、ユーザ間のパケット送信タイミングをスケジューリングするが、この構成の場合はリアルタイムトラフィックに対して十分な遅延品質を保証する事は困難である。特許文献3は通信が行なわれているトラフィックの種別とは関係なく、ユーザ間の送信スケジューリング処理が行なわれるためである。送信すべきユーザが決定後にユーザ内で優先制御処理などを実施しているため、他ユーザの低優先トラフィックとのスケジューリング処理の競合によって、高優先トラフィックの送信タイミングが遅れてしまう。スケジューリングを行なうユーザ数が多くなると、ユーザ間スケジューリングによる遅延は無視することはできなくなるので、リアルタイムトラフィックに対して十分な遅延品質を提供する事が困難である。
ネットワーク要件(2)
拠点毎にトラフィックシェーピングを行ないつつ、リアルタイム性が求められるトラフィックに対して、廃棄/遅延を極力少なくしつつ、バースト性を抑えるためのトラフィックシェーピングを実施すること。各拠点に対するシェーピング帯域からリアルタイムトラフィックの使用帯域をさし引いた残り帯域をInternetトラフィック(低優先)が利用して通信を行なうこと。
ネットワーク要件(1)との違いは宛先(拠点)毎にトラフィックの帯域制限を行ないつつ、リアルタイムトラフィックの廃棄/遅延を抑えようとする点である。ネットワーク要件(1)では、サービス毎にトラフィックを分類してそれぞれに対してシェーピング・スケジューリング処理を実施するが、ネットワーク要件(2)では、サービス間を合わせた拠点毎の帯域についてトラフィックシェーピングを実施する事が要件となっている。
このような課題(ネットワーク要件(2))に対して、特許文献3は、前記のとおり、高優先トラフィックに対して遅延が劣化する問題が内在しているので、リアルタイムトラフィックに関して、遅延を小さくするのは困難である。また、特許文献4は高優先クラスのパケットの遅延時間を少なくし、高優先クラスと低優先クラスの帯域を合わせたスケジューリングが可能だが、高優先パケットに対して最大帯域を制御する機能がないために、トラフィックの入力状況によっては高優先クラストラフィックが回線帯域を全て占有してしまう可能性があって、その場合には、他の拠点の高優先クラストラフィックの送信も抑制されてしまい、本要件である拠点毎のトラフィックシェーピングが効かないので問題がある。
本発明では、上記課題を解決するトラフィックシェーピング機能および装置を提供する。本発明では、トラフィックシェーピング機能を有するパケット中継装置であって、受信したパケットのヘッダ情報に基づいてグループおよびユーザ単位にトラフィックを分類する振り分け処理部と、前記ユーザ単位に設定された最大帯域および最低帯域および重み情報から、各ユーザの利用可能帯域を計算する計算部と、前記ユーザの前記利用可能帯域に基づいて算出される送信予定時刻を更新し、前記更新した送信予定時刻により、いずれのユーザに振り分けられたパケットを送信すべきかを判断するスケジューリング制御部と、前記ユーザの前記最大帯域に基づいて算出される送信予定時刻を更新し、前記更新した送信予定時刻により、前記ユーザ毎に最大帯域でシェーピングするシェーピング部と、前記グループの優先度に応じて、各グループのパケットの送信を完全優先制御する優先制御処理部とを有することを特徴とするパケット中継装置を提供する。
また、本発明では、トラフィックシェーピング機能を有するパケット中継装置であって、受信したパケットのヘッダ情報に基づいてユーザおよびクラス単位にトラフィックを分類する振り分け処理部と、前記ユーザ単位および前記ユーザの高優先クラス単位に設定された最大帯域および最低帯域および重み情報から、各ユーザおよび各ユーザの高優先クラスに対する利用可能帯域を計算する計算部と、前記ユーザおよび前記ユーザの高優先クラスに対する前記利用可能帯域に基づいて算出される送信予定時刻を更新し、前記更新した送信予定時刻により、いずれのユーザに振り分けられた高優先クラスのパケットを送信すべきかを判断する第1のスケジューリング制御部と、前記ユーザの高優先クラスに対する前記利用可能帯域に基づいて算出される送信予定時刻を更新し、前記更新した当該送信予定時刻により、いずれのユーザに振り分けられた非高優先クラスのパケットを送信すべきかを判断する第2のスケジューリング制御部と、前記ユーザおよび前記ユーザの高優先クラスの前記最大帯域に基づいて算出される送信予定時刻を更新し、前記更新した送信予定時刻により、前記ユーザ毎および前記ユーザのクラス毎に最大帯域でシェーピングするシェーピング部と、前記グループの優先度に応じて、各グループのパケットの送信を完全優先制御する優先制御処理部とを有することを特徴とするパケット中継装置を提供する。
本発明によれば、リアルタイム性が求められるトラフィックに対して廃棄/遅延を極力少なくしつつ、フロー(チャネル)毎に決められた帯域でトラフィックのバースト性を抑えるためのトラフィックシェーピングを実施し、また、Internetトラフィック(低優先)に対してユーザ間帯域の中立性を確保(最低帯域保証、もしくは、重み均等帯域分配)することができる。また、拠点毎にトラフィックシェーピングを行ないつつ、リアルタイム性が求められるトラフィックに対して、廃棄/遅延を極力少なくしつつ、バースト性を抑えるためのトラフィックシェーピングを実施し、各拠点に対するシェーピング帯域からリアルタイムトラフィックの使用帯域をさし引いた残り帯域をInternetトラフィック(低優先)が利用して通信を行なうことができる。
ネットワーク要件(1)を実現するために、本実施形態におけるトラフィックシェーピング装置では、図1に示すようにトラフィックを例えば電話/放送/Internetのサービス毎に高/中/低優先に分類してトラフィックをキューイングする高/中/低優先のユーザキュー101を持ち、各ユーザに設定された最大帯域・最低帯域・重みにより利用可能帯域を計算して、最大帯域・利用可能帯域から求められる送信予定時刻を管理する機能を持つ送信予定時刻計算102と、送信予定時刻計算102より伝達された利用可能帯域の送信予定時刻による利用可能帯域スケジューラー103と、各ユーザの最大帯域の送信予定時刻をチェックして送信予定時刻に達するまで送信を抑止するユーザ最大帯域シェーピング104と、各グループの最大帯域による送信予定時刻をチェックして送信予定時刻に達するまで送信を抑止するグループ帯域シェーピング105と、各グループの送信候補者から優先度の高いグループを優先的に送信する優先制御処理106と、各回線の最大帯域による送信予定時刻をチェックして送信予定時刻に達するまで送信を抑止する回線帯域シェーピング107の仕組みを備える。
図1では、電話トラフィックを高優先グループのユーザキュー、放送トラフィックをフロー(チャネル)毎に中優先グループのユーザキュー、Internetトラフィックは低優先グループのユーザキューに入力している。ユーザの分類としては、例えば、電話トラフィックは全て単一ユーザとして扱い、放送トラフィックはチャネル毎にユーザを分け、InternetトラフィックはHTTPやFTP等のプロトコル毎にユーザを分けて扱うことが考えられる。
このようなパケットスケジューリング方式を用いる事でネットワーク要件(1)を満たす制御技術を提供する事ができる。具体的には、高優先グループとして扱われる電話トラフィックは、優先制御処理106によって他のグループよりも常に優先的に送信される完全優先制御が行われることで廃棄/遅延が極力少なくなるように制御され、更に、グループ帯域シェーピング105aによってバースト性を抑えるためのトラフィックシェーピングを行うことができる。また、中優先・低優先グループとして扱われる放送・Internetトラフィックは、各ユーザに応じた送信予定時刻が管理され、各ユーザのトラフィックは各々の利用可能帯域と最大帯域の送信予定時刻に基づいて送信されるため、ユーザ間帯域の中立性を確保することができる。
また、同図では各グループ間のスケジューリング処理を完全優先制御するが、グループ間の制御を完全優先制御とスケジューリング処理を組み合わせても良い。図2に示すように、2つのグループ間で重み付け公平キューイング(以降、WFQ:Weighted Fair Queuing)を行なうためのWFQスケジューラー201を配置した後に優先制御処理106にて完全優先制御処理を行なっても良い。
WFQは複数のキューが存在する中で、どのキューからパケットを送信するかを、重みによってスケジューリングするアルゴリズムである。それぞれのキュー毎に重み(Weight)を設定し、それぞれの重みに基づいて帯域リソースを分配する。WFQは送信パケット長を考慮して帯域リソースを分配するので帯域リソースを綺麗に分配する事ができる。
また、図3に示すように各ユーザ間のスケジューリング処理においてもWFQ型スケジューリングを用いても良い。WFQスケジューリングを行なうグループの各ユーザに対し、パケット送受信時に各ユーザに設定された重みと送信パケット長によって更新する送信カウンター301と、前記送信カウンターからWFQ型のスケジューリングを行なうWFQスケジューラー302を配置する。
なお、ここでWRR(Weighted Round Robin)型ではなくて、WFQ型のスケジューラーを配備した理由は、WRR型ではパケット長によってユーザ間の帯域を公平に分配することが困難で、パケット長によって特定ユーザにトラフィックが偏ってしまうことや、回線帯域が余っていても通信ができない無駄な未使用帯域が発生したりする問題が発生するためである。WRR型はキュー毎にカウンターを持つ必要がなく仕組みが単純で実装的は簡単であるが、イーサネット(登録商標)のようにパケット毎のパケットサイズが異なる回線インタフェース上において、ユーザ間の帯域リソースの公平性を守ると言う目的を解消するためにはWFQを用いるべきである。
なお、本方式のようにサービスアプリケーション毎にグループを分けてそれぞれのキューにキューイングする本発明の方式をService Adapted Queuing方式(以降、SAQ方式)と呼ぶこととする。なお、図1、図2、図3ではグループ数を3個で説明をしたが必要に応じて任意のグループ数に拡張もしくは縮小して良く、本発明による請求範囲を制限するものではない。
ここで、SAQ方式を用いることの効果について整理する。SAQ方式の効果は、各種サービス毎(電話・放送・Internet)の異なる通信品質の要求に対して、柔軟に対応するトラフィック制御技術を提供することにある。
通信にはリアルタイム性が必要なものや確実性が必要とされるものなど、サービスの種別によって様々な要求が存在する。一般的に、電話はリアルタイム性、放送はリアルタイム性とフロー(チャネル)毎のトラフィックバースト抑制、Internetは確実性と中立性が必要とされる。SAQ方式ではこのような様々な要求に柔軟に対応できるトラフィック制御技術を提供する。
図1のように、音声トラフィックを高優先ユーザキュー101aにマッピング、優先制御処理106によって他グループよりも優先的に送信処理を行なうことでリアルタイム性を確保する。また、放送トラフィックをチャネル単位で中優先ユーザキュー101bにマッピング、利用可能帯域スケジューラー103aによってスケジューリングを行いつつ、ユーザ最大帯域シェーピング104bによってチャネル単位に設定された最大帯域によってバースト性を抑制、優先制御処理106によって高優先トラフィック(音声)の次の優先順位で送信処理を行なう事によってリアルタイム性を確保する。また、Internetトラフィックをユーザ単位で低優先ユーザキュー101cにマッピング、利用可能帯域スケジューラー103bによって送信スケジューリングする事でユーザ毎の送信帯域の公平性および確実性を確保する。また、前記の高/中優先グループのトラフィックが使用しなかった帯域を重みによって帯域分配する(ユーザ最大帯域まで)ことによって低優先グループのユーザ間で帯域リソースを公平性に分配、回線リソースを有効活用することができる。
また、図3のように低優先グループのユーザ間のスケジューリング制御としてWFQスケジューラー302を利用する場合、低優先グループの各ユーザの送信帯域は、高/中優先トラフィックが使用しなかった帯域を各ユーザに設定された重みによって均等に分配することが可能となる。なお、低優先グループの総帯域を制限するグループ帯域シェーピング105cを有効にした場合に、高/中優先トラフィックが使用しなかった帯域が当該グループの最大帯域よりも大きい場合は、当該グループの最大帯域から各ユーザに対する帯域分配を重みによって実施する。
以上により、SAQ方式によるトラフィックシェーピング技術によってトラフィック要件(1)を解決できる。
また、ネットワーク要件(2)を実現するために、本実施形態におけるトラフィックシェーピング装置では、図4に示すようにトラフィックを優先度別にユーザのクラス毎に分類してトラフィックをキューイングする高/低優先のクラスキュー401と(図4においては、高優先クラスに電話が割り当てられ、低優先クラスにInternetが割り当てられている。また、ユーザとは、ネットワーク要件(2)における拠点に相当する。)、高優先クラスキューに対して設定された最大帯域・最低帯域・重みにより利用可能帯域を計算して最大帯域・利用可能帯域から求められる送信予定時刻を管理する機能を持つクラス送信予定時刻計算402と、高/低優先クラスの合計帯域(各ユーザ即ち拠点毎に許容される帯域)に対して設定された最大帯域・最低帯域・重みにより利用可能帯域を計算して最大帯域・利用可能帯域から求められる送信予定時刻を管理するユーザ送信予定時刻計算403と、クラス送信予定時刻計算402またはユーザ送信予定時刻計算403より伝達された利用可能帯域の送信予定時刻による利用可能帯域スケジューラー404と、各ユーザの最大帯域の送信予定時刻をチェックして送信予定時刻に達するまで送信を抑止するユーザ最大帯域シェーピング405と、各グループ(図4では、電話トラフィックを高優先グループとして、Internetトラフィックを低優先グループとして扱っている。)の最大帯域による送信予定時刻をチェックして送信予定時刻に達するまで送信を抑止するグループ帯域シェーピング406と、各グループの送信候補者から優先度の高いグループを優先的に送信する優先制御処理407と、各回線の最大帯域による送信予定時刻をチェックして送信予定時刻に達するまで送信を抑止する回線帯域シェーピング408の仕組みを備える。
図4において点線の矢印で接続されているクラス送信予定時刻計算402とユーザ送信予定時刻計算403はパケット情報のやり取りではなく、高優先クラスキューのパケット送信した分のペナルティーを当該ユーザの送信予定時刻に対して課すための信号のやり取りを意味する。これにより、高優先クラスキューのパケットを送信した分に応じて、低優先クラスキューのパケット送信が抑止されるため、高優先と低優先を含んだユーザ(拠点)毎にトラフィックシェーピングを行うことができ、低優先クラスキューパケットのトラフィックを各拠点に対するシェーピング帯域からリアルタイムトラフィックの使用帯域を差し引いた残りの帯域に制限することが可能となる。
また、高優先グループとして扱われる高優先クラスの電話トラフィックは、優先制御処理407によって他のグループよりも常に優先的に送信される完全優先制御が行われることで廃棄/遅延が極力少なくなるように制御され、更に、グループ帯域シェーピング406aによってバースト性を抑えるためのトラフィックシェーピングを行うことができる。これにより、ネットワーク要件(2)を満たす制御技術を提供する事ができる。
図4では電話とInternetの2種類のトラフィックを分類して各ユーザキューの高優先クラス・低優先クラスの2クラスにマッピングした例であるが、必要に応じてクラス数を拡張してよく、本発明による請求範囲を制限するものではない。また、特許文献3においてユーザキュー内をPQ制御にした時と動作の違い、トラフィックをクラスレベルでグループ分離してグループ間で優先制御を行なうことで、高優先クラスのトラフィックは低優先クラスのトラフィックの影響を一切受けずに低遅延で転送する事が可能となる特徴を有している。ユーザ単位の扱いで考えると、低遅延な完全優先方式を実現しているように見える。本発明によって提供される解決手段をLow Latency Priority Queuing方式(以降、LLPQ方式)と呼ぶこととする。
ここで、LLPQ方式を用いることの効果について整理する。LLPQ方式の効果は、広域イーサネット(登録商標)やIP−VPNなどのWANサービス上で各種サービス毎(電話・放送・Internet)に異なる通信品質の要求に対して、柔軟に対応するトラフィック制御技術を提供することにある。SAQ方式との違いはWANサービス上での適用を想定し、それぞれの拠点宛て毎に送信可能な帯域が制限されていることを前提としている点であり、各種サービス毎に最適なトラフィック制御を提供すると言う目的自体は同じである。
図4のように、音声トラフィックをユーザ単位でそれぞれの高優先クラスキュー401aにマッピング、利用可能帯域スケジューラー404aによって各ユーザの高優先クラスの送信スケジューリングを行ないつつ、ユーザ最大帯域シェーピング405aによって各ユーザの高優先クラスの最大帯域でトラフィックを抑制、優先制御処理407によって低優先クラスのトラフィックよりも優先的に送信処理を行なう事によってリアルタイム性を確保する。
Internetトラフィックをユーザ単位でそれぞれの低優先クラスキュー401bにマッピング、ユーザ送信予定時刻計算403aでは高優先クラスを含むユーザ単位で設定された最大帯域・最低帯域・重みに基づいて送信予定時刻を管理、利用可能帯域スケジューラー404bでは、高優先クラスのトラフィックを含めた拠点毎の送信スケジューリングが可能となり、ユーザ最大帯域シェーピング405bにおいても優先クラスのトラフィックを含めた拠点毎の最大帯域でトラフィック抑止できる。また、低遅延クラスのトラフィックは、高優先クラスのトラフィックが送信を行なった帯域を差し引いた送信帯域を保証しつつ、高優先クラスが使用しなかった帯域を各ユーザの低優先クラス間で帯域リソースを重みによって公平に分配し、回線リソースを有効活用することができる。
なお、高優先クラスに設定された帯域よりも実際の入力帯域が少なかった場合には、高優先クラスのトラフィックで使用されなかった未使用帯域は、当該ユーザの低優先トラフィックが使用することができるため、各ユーザ間での高/低優先クラスの帯域を合算するとユーザ間のトラフィックの中立性は保証される。
以上により、LLPQ方式によるトラフィックシェーピング技術を利用する事によってネットワーク要件(2)を解決できる。
本実施形態におけるトラフィックシェーピング装置を使用する場合、ネットワーク構成およびトラフィック要件などの状況に応じて、SAQ方式とLLPQ方式のうちの最適な方式を選択する必要がある。
本実施形態におけるシェーピング装置の内部ブロック図を図5に示す。なお、本実施形態によって構成されるトラフィックシェーピング機能を有する装置として、回線インタフェース503と、ルーティング処理部502と、スイッチ部501から構成され、少なくとも1つの回線インタフェース503には帯域制御コントローラー504が具備されている。
次に、同図に示す各部位の機能について説明する。
ルーティング処理部502は、回線インタフェース503を介して外部の通信装置からのパケットを受信し、受信パケットの宛先IPアドレスや宛先MACアドレスを参照して出力先の回線インタフェース503を決定するルーティング機能を有する。受信パケットを目的の配送先に送り届けるために、パケットの配送先に関する経路情報が記録されたルーティングテーブルを参照してパケットの送付先情報(この場合は回線インタフェース503)を付与してスイッチ処理部501にパケットを転送する。スイッチ処理部501からパケットを受信した時は、ルーティング処理部502の配下に属する回線インタフェース503にパケットを転送する。
スイッチ処理部501は、ルーティング処理部502によって付与された送付先情報を参照することによって経路を動的に選択する事ができるパケットスイッチング機能を有している。ルーティング処理部502から受け取ったパケットを送付先のルーティングテーブル処理部502に転送する。
回線インタフェース503は外部の通信装置とのパケット送受信を行なう。外部の通信装置からパケットを受信した場合、物理サブレイヤ505を解してルーティング処理部502にパケットを転送し、ルーティング処理部502からパケットを受信した場合は物理サブレイヤ505を解して外部の通信装置にパケットを送出する。物理サブレイヤ505は伝送経路上のデータ表現方式や物理インタフェースの形状など、OSI参照モデルのうち第1層の物理的接続を担う汎用部品である。また、本発明で構成されるトラフィックシェーピング装置では、回線インタフェース503の中で少なくとも1つには帯域制御コントローラー504が具備されている。帯域制御コントローラー504は本発明にかかるトラフィックシェーピング制御を担うキューコンポーネントである。ルーティング処理部502から転送されたパケットは帯域制御コントローラー504を経由する事で帯域制御を行なうことが可能となる。
次に、帯域制御コントローラー504の内部の詳細な処理内容について記載する。帯域制御コントローラー504は、本発明にかかるトラフィックシェーピング方法を実現する処理制御部である。なお、本発明は異なったネットワーク要件を解決するために2種類の解決手段を提供するが処理の多くは共通化が可能なので、2つの解決手段によって処理内容に差分がある場合に限ってその趣旨を記載する。
図6は本発明のトラフィックシェーピング方式におけるキュー構成および処理フローを示すブロック図を示すものである。本発明における帯域制御コントローラー504には、トラフィック振り分け処理部601と、ユーザ送信時刻処理部602と、スケジューリング制御部603と、ユーザ最大帯域制御部604と、グループ最大帯域制御部605と、優先制御処理部606と、回線最大帯域制御部607と送信ユーザ情報抽出部608からなる。2つの解決手段によって処理内容に差分が生じる処理部は、トラフィック振り分け処理部601と、ユーザ送信時刻処理部602と、送信ユーザ情報抽出部608である。また、同図では2系統のグループに分類されているがこのグループは3系統以上に拡張してよく、特許の請求範囲を制限するものではない。
トラフィック振り分け処理部601は、ルーティング処理部から入力されたパケットのL2/L3ヘッダ情報などを参照してパケット毎にグループ単位/ユーザ単位/クラス単位に分類して、当該パケットの受信リクエストとユーザ番号とパケット長情報をユーザ送信時刻処理部602・グループ最大帯域制御部605・回線最大帯域制御部607・送信ユーザ情報抽出部608に転送する機能と、当該パケットのパケットデータをユーザ送信時刻処理部602に転送する機能と有する。
なお、本発明にかかる2つの解決手段によって当該機能によるグループ/ユーザ/クラスへのマッピング方法をかえる必要がある。例えば、同一ユーザ宛てのトラフィックであっても、SAQ方式の場合は図1のようにサービス(電話・放送・Internet)単位にユーザレベルで分離してマッピングを行なうのに対して、LLPQ方式の場合は図4のようにユーザレベルでは分離せず、同一ユーザ(拠点)内の異なるクラスにサービス(電話・Internet)単位にマッピングを行なう。この違いは、LLPQ方式は広域イーサネット(登録商標)などのWANアクセスサービス上での利用を想定したときに宛先毎にトラフィックシェーピングが必要となるためで、同一宛先のトラフィックは同一ユーザとして制御する必要がある。なお、このような振り分け機能自体は外部の処理ブロック(例えば、図5に示したルーティング処理ブロックなど)にて同等の機能を持たせても良い。また、振り分けを行なうグループ数/ユーザ数/クラス数は必要に応じて拡張すべきしても良いし、分類に使用する情報は新たに独自で作成したヘッダ情報などを用いてもよい。
ユーザ送信時刻処理部602は、ユーザ(#1〜n)毎に設けられ、トラフィック振り分け処理部601から入力されたパケットデータを一時的に格納するパケットバッファーと、各ユーザに設定する最大帯域(以降、Peak Frame Rate = PFR)と最低帯域(以降、Minimum Frame Rate = MFR)と余剰帯域の分配比率(Weight)の情報を格納する機能と、PFR/MFR/Weightの値から求められる利用可能帯域(以降、Available Frame Rate=AFR)を計算する機能と、スケジューリング制御部603で利用可能帯域型スケジューリングを用いる際にAFRとPFRによる送信予定時刻であるAOTIME/POTIMEを更新して値を保持する機能と、スケジューリング制御部603でWFQ型スケジューリングを用いる際にWeightによる送信カウンターを更新して値を保持する機能と、各ユーザのAOTIME/POTIMEまたは送信カウンターの情報をスケジューリング制御部603に情報を伝達する機能を有する。
図1〜2との対応では、図6の602aは放送トラフィック(中優先ユーザ)の送信予定時刻計算102b〜c、602bはInternetトラフィック(低優先ユーザ)の送信予定時刻計算102d〜e、#1〜nはユーザ(例えば放送ではチャネル、Internetでは接続端末)を指す。図3との対応では、図6の602aは放送トラフィック(中優先ユーザ)の送信予定時刻計算102b〜c、602bはInternetトラフィック(低優先ユーザ)の送信カウンター301a〜b、#1〜nはユーザ(例えば放送ではチャネル、Internetでは接続端末)を指す。
図4との対応では、602aは電話トラフィック(高優先クラス)のクラス送信予定時刻計算402a〜b、602bは宛先毎(高優先クラスと低優先クラスの帯域合計)のユーザ送信予定時刻計算403a〜b、#1〜nはユーザ(例えば拠点)を指す。
なお、図1〜3において音声キューをマッピングしている高優先ユーザ・グループに対応するものを図6の記載上は省略しているが、グループ数は任意に拡張可能であって本発明の構成を制限するものではないし、図1〜3の高優先ユーザキュー101aのようにグループ内のユーザ数が1個の場合は、グループ内のユーザ間のスケジューリング処理が不要となるため、該当グループにおいてユーザ送信時刻処理部602とスケジューリング制御部603は不要で処理を省略可能となる。
AOTIMEはグループ内のユーザ間でのスケジューリング制御に用いられる送信予定時刻であり、POTIMEはスケジューリング処理後に送信候補者がユーザの最大帯域を超過していないかをチェックする為に設けられる送信予定時刻である。なお、AFRは以下の式によって計算することができる。
AFR = min { PFR ; MFR + { (回線帯域 orグループ帯域) - (MFRの総和) } x Weight / (Weightの総和) }
ここでmin{ ; }は{ }内の;で区切られた値のうちの最低値を値として返す処理を意味している。余剰帯域を分配した結果が、ユーザに設定されたPFRよりも大きい場合にはAFRとしてPFRの値を返すことで、AFRがPFRの値を超過する事を防ぐ。また、上記に示すMFRの総和やWeightの総和は通信を行なっているユーザから計算する。前記処理により、無通信ユーザのMFRは未使用の帯域として他ユーザに分配することが可能となる。なお、各ユーザのMFRを保証する為、全ユーザのMFRの総和は回線帯域の値以下、各グループの配下に属するユーザのMFRの総和はグループ帯域の値以下になるように設定を行なう。回線帯域=1Gbpsなのに全ユーザのMFRの総和が1Gbpsを超えてしまったり、グループ帯域=500Mbpsなのに当該グループ配下のユーザのMFRの総和が500Mbpsを超えてしまったりすると、各ユーザの最低帯域を保証する事が不可能となる。
スケジューリング制御部603で利用可能帯域型スケジューリングを用いる際に必要となるAFRとPFRによる送信予定時刻であるAOTIME/POTIMEの更新処理について記載する。パケット送受信時にAOTIME/POTIMEを以下のように更新する。
パケット受信時のAOTIME/POTIME更新動作
パケット受信時の送信予定時刻の更新処理フローを図7に示す。受信ユーザのパケットバッファーにパケットが溜まっている(ステップ701のno)場合、もしくは、パケットバッファーにパケットが溜まっていない(ステップ701のyes)、かつ、送信予定時刻が“未来”または“現在”である(ステップ702のno)の場合には、送信予定時刻を更新せずに値をそのまま保持する(ステップ704)。また、パケットバッファーにパケットが溜まっておらず(ステップ701のyes)、さらに送信予定時刻が“過去”である(ステップ702のyes)の場合には、送信予定時刻を“現在”に更新して新しい送信予定時刻を保持する(ステップ703)。パケットが存在しない状態での“過去”の送信予定時刻は意味がなく、パケット受信時に現在に戻す必要がある。なお、ここで“未来”/“現在”/“過去”という言葉の概念について説明すると、“過去”とは送信予定時刻を経過して早く送信すべき状態、“現在”とはちょうど今が送信予定時刻である状態、“未来”とは送信予定時刻にまだ達してない状態であることを指している。なお、AOTIMEおよびPOTIMEの更新処理については共通動作を行なう。
パケット送信時のAOTIME/POTIME更新動作
パケット送信時の送信予定時刻の更新処理フローを図8に示す。送信予定時刻の更新の際に必要となる送信パケット長(FBYTE)情報を送信ユーザ情報抽出部608から受信して、当該ユーザのAOTIME/POTIME更新を以下の式で行なう。なお、AFR、PFRは当該ブロック内に格納されているユーザ毎の利用可能帯域と最大帯域のことである。なお、今後の各数式において、下つき文字で記載されたパラメータについては、下つき文字newで記載されているものはパケット送信による更新後の値、下つき文字oldで記載されているものはパケット送信前の更新前の値を示している。
AOTIMEnew = AOTIMEold + AFR x FBYTE
POTIMEnew = POTIMEold + PFR x FBYTE
SAQ方式およびLLPQ方式の2つによるユーザ送信時刻処理部602の送信予定時刻の更新処理フローを図8に示す。SAQ方式の場合(ステップ801でSAQ方式の場合)には一つのパケット送信によって一つのユーザキューの送信予定時刻を再計算する(ステップ805)だけであるが、LLPQ方式(ステップ801でLLPQ方式の場合)で高優先クラスのトラフィックを送信した場合(ステップ802のyes)、送信ユーザ情報抽出部608から当該ユーザの高優先・低優先クラスのユーザ送信時刻処理部602にそれぞれに対して更新命令が与えられて、高優先・低優先クラスの送信予定時刻が更新する(ステップ803)。なお、LLPQ方式で低優先クラスのトラフィックを送信した場合(ステップ802のno)は低優先クラスの送信予定時刻のみを更新する(ステップ804)。
また、本発明にかかるユーザ間の処理は、WFQによるスケジューリング方式を用いても良くその際に必要となる送信カウンターの更新処理について記載する。WFQによるスケジューリングに用いる送信カウンター(CNTIME)と定義すると、パケット送受信時にCNTIMEを以下のように更新する。
パケット受信時のCNTIME更新動作
受信時の更新動作については、前記の“パケット受信時のAOTIME/POTIME更新動作”と同様。但し、送信カウンターは純粋なカウンターであって時間の概念は存在しない。“未来”/“現在”/“過去”を以下のように置き換える。全ユーザの中で有効なカウンターのうちの最小値が“現在”、 有効なカウンターのうちの最小値よりも値が大きい場合を“未来”、有効なカウンターでないものを“過去”とする。
パケット送信時のCNTIME更新動作
送信予定時刻の更新の際に必要となる送信パケット長(FBYTE)情報を送信ユーザ情報抽出部608から受信して、当該ユーザのCNTIME更新を以下の式で行なう。なお、Weightは当該ブロック内に格納されているユーザ毎の重みである。
CNTIMEnew = CNTIMEold + 1 / Weight x FBYTE
スケジューリング制御部603は、利用可能帯域スケジューリング方式もしくはWFQ型スケジューリング方式において、どのユーザを真っ先に送信すべきかどうかをスケジューリングする機能を有する。
図1〜2との対応では、図6の603aは放送トラフィック用の利用可能帯域スケジューラー103a、603bはInternetトラフィック用の利用可能帯域スケジューラー103bを指す。
図3との対応では、図6の603aは放送トラフィック用の利用可能帯域スケジューラー103、603bはInternetトラフィック用のWFQスケジューラー302を指す。
図4との対応では、603aは電話トラフィック用の利用可能帯域スケジューラー404a、603bは宛先毎(電話トラフィックとInternetトラフィックの合計)の利用可能帯域スケジューラー404bを指す。
利用可能帯域スケジューリング方式を用いる場合にはユーザ送信時刻処理部602から各ユーザのAOTIME/POTIMEの情報を受け取り、AOTIMEを用いて送信候補者を選出するスケジューリング処理を実施して、WFQ型スケジューリング方式を用いる場合にはユーザ送信時刻処理部602から各ユーザのCNTIMEの情報を受け取り、CNTIMEを用いて送信候補者を選出するスケジューリング処理を実施する。
各ユーザのAOTIMEまたはCNTIMEにはユーザ毎に次に送信すべきパケットの送信予定時刻が記載されており、AOTIMEまたはCNTIMEがもっとも古い(早く送信すべき状態)ユーザを探す。毎回、全ユーザのAOTIMEまたはCNTIMEを比較して送信候補者と選ぶと処理に時間が掛かってしまうので処理には工夫が必要となる。全ユーザを毎回比較演算すると、ユーザ数が多くなるほどに計算量がn!で増大してしまい計算量が増えてしまう為である。演算量を抑えるため、ユーザの状態変化があった度に、当該ユーザの順序のみを入れ替えるヒープ・ソート計算を行なうことによってスケジューリングにかかる処理を軽減するような処理が必要となる。処理を高速化するためには、一般的に知られているクイックソートやバブルソートなどのヒープ処理などが知られている。なお、高速回線上に本発明に掛かるシェーピング装置を実装する場合にはこのスケジューリング処理を高速に処理させる必要がある。例えば、1Gbps上の回線で本発明にかかる技術を実装しようとした場合、672ns以内のサイクルで送信候補者を見つけだす処理性能を保有することが望ましい。672nsの毎サイクルで送信候補者を選出できないと、回線速度に対して100%のワイヤーレート処理が不可になってしまって、そのことが帯域制御に悪影響を及ぼす危険性が高い為である。当該ブロックによって、送信候補者として選出されたユーザ番号と当該ユーザのPOTIME情報をユーザ最大帯域制御部604に転送する。
ユーザ最大帯域制御部604は、各ユーザに設定された最大帯域を違反していないかどうかを監視する機能を有する。
図1〜3との対応では、図6の604aは放送トラフィック用のユーザ最大帯域シェーピング104b、604bはInternetトラフィック用のユーザ最大帯域シェーピング104cを指す。図4との対応では、604aは電話トラフィック用のユーザ最大帯域シェーピング405a、604bは宛先毎(電話トラフィックとInternetトラフィックの合計)のユーザ最大帯域シェーピング405bを指す。
前記のスケジューリング制御によって選択された送信候補者のユーザ番号とPOTIMEの情報を受け取り、POTIMEをチェックする。POTIMEは“過去”または“現在”であったら当該ユーザの送信トラフィックは送信可能と判断して、送信リクエストと送信ユーザ番号をグループ最大帯域制御部605に通知する。また、POTIMEが“未来”であったら当該ユーザの送信トラフィックは送信不可能と判断して、送信リクエストをグループ帯域制御部に通知しない。
グループ最大帯域制御部605は、グループ毎にパケットバッファーにパケットが何個溜まっているかを記録するパケット数カウンターと、グループ毎に設定された最大帯域であるGFRと当該グループの送信予定時刻であるGOTIMEを保持して帯域違反していないかどうかを監視する機能と、パケット受信時およびパケット送信時にGOTIMEを更新する機能を有する。
図1〜3との対応では、図6の605aは放送トラフィック用のグループ帯域シェーピング105b、605bはInternetトラフィック用のグループ帯域シェーピング105cを指す。図4との対応では、605aは電話トラフィック用のグループ帯域シェーピング406a、605bは宛先毎(電話トラフィックとInternetトラフィックの合計)のグループ帯域シェーピング406bを指す。
最大帯域を違反してないかどうかを監視する処理は、前記のユーザ最大帯域制御部604を介して送信リクエストを受信した際にGOTIMEをチェックして“過去”または“現在”であったら送信可能と判断して送信リクエストと送信ユーザ番号を優先制御処理部606に通知し、“未来”であったら送信不可と判断して送信リクエストを優先制御処理部606に通知しない。パケット数カウンターはトラフィック振り分け処理部601からパケット受信の情報を受け取ると当該カウンターを+1、送信ユーザ情報抽出部608からパケット送信の情報を受け取ると当該カウンターを−1する機能である。パケット数カウンターが1以上であるならば当該グループのパケットが滞留している状態であり、この情報は後述するパケット受信時の送信予定時刻の更新処理で用いる。GOTIMEの更新処理は、パケット受信時に受信リクエストをトラフィック振り分け処理部601から受信すると、当該グループのパケット数カウンターがゼロで、かつ、GOTIME=“過去”の時、GOTIMEを“現在”に更新する。それ以外の条件ではGOTIMEを更新しない。また、パケット送信時には、送信リクエスト・送信ユーザ番号・送信パケット長(FBYTE)を後述する送信ユーザ情報抽出部608から受信し、以下の式で当該グループのGOTIMEを更新する。
GOTIMEnew = GOTIMEold + GFR x FBYTE
優先制御処理部606は、グループ毎に算出された送信候補者のうちにどのグループに属する当該ユーザのトラフィックを選出するべきかを優先処理判定を行なう機能を有し、図1〜3における優先制御処理106、図4における優先制御処理407の役割を担う。
当該ブロックは、前記のグループ最大帯域制御部605から送信リクエストと送信ユーザ番号の情報を受信すると、複数のグループから送信リクエストを受信した場合にはグループの中から最も優先度が高いグループを完全優先制御によって選出して、当該の送信リクエストと送信ユーザ番号を回線最大帯域制御部607に送信する。なお、本発明にかかる優先制御処理として、完全優先制御とWFQを組み合わせた優先制御処理などを用いても良い。
回線最大帯域制御部607は、回線毎にパケットバッファーにパケットが何個溜まっているかを記録するパケット数カウンターと、回線毎に設定された最大帯域であるLFRと回線の送信予定時刻であるLOTIMEを保持して帯域違反していないかどうかを監視する機能と、パケット受信時およびパケット送信時にLOTIMEを更新する機能を有し、図1〜3における回線帯域シェーピング107、図4における回線シェーピング408の役割を担う。
処理の内容自体は、前記のグループ最大帯域制御部605と全く同じである。処理的な違いは前記の優先制御処理部606を介して送信リクエストとユーザ番号を受信することと、送信可能なときに送信リクエストと送信ユーザ番号を送信ユーザ情報抽出部608に伝搬させると言う外部インタフェースの違いのみである。
LOTIMEの更新処理は、パケット受信時に受信リクエストをトラフィック振り分け処理部601から受信すると、当該回線に対してパケットバッファーのパケットカウンターがゼロで、かつ、LOTIME=“過去”の時、LOTIMEを“現在”に更新する。それ以外の条件ではLOTIMEは更新しない。また、パケット送信時には、送信リクエスト・送信ユーザ番号・送信パケット長(FBYTE)を後述する送信ユーザ情報抽出部608から受信し、以下の式で当該回線のLOTIMEを更新する。
LOTIMEnew = LOTIMEold + LFR x FBYTE
送信ユーザ情報抽出部608は、各ユーザの送信トラフィックのパケット長を管理する機能と、パケット送信時に送信予定時刻を更新する際に必要となる送信リクエスト・送信ユーザ番号・送信パケット長の情報をユーザ送信時刻処理部602グループ最大帯域制御部605・回線最大帯域制御部607に展開する機能を有する。
パケット受信時にトラフィック振り分け処理部601から受信リクエストおよび受信ユーザ番号および受信パケット長を受信すると、当該ユーザ番号のパケット長を管理する記録領域にユーザ毎にパケット長を管理する。パケット長情報をユーザ毎に管理する事によって、送信ユーザが決定した際に当該ユーザの送信パケット長を読み出す事が可能となる。また、パケットの送信時には、回線帯域制御部から送信リクエストと送信ユーザ番号を受信すると、パケット受信時に記録した当該ユーザのパケット長の情報を参照して、送信ユーザ番号と送信パケット長と送信予定時刻更新リクエストを各帯域計算部位であるユーザ送信時刻処理部602とグループ最大帯域制御部605と回線最大帯域制御部607に転送する。
なお、SAQ方式およびLLPQの2つの方式によって、送信ユーザ情報抽出部608の振舞いが異なる点として、SAQ方式では送信した当該ユーザの送信予定時刻のみを更新すればよいのであるが、LLPQ方式で高優先クラスのトラフィックを送信したときに、高優先クラスのユーザ送信予定時刻だけではなく、当該ユーザの全体帯域を計算している低優先クラスのユーザ送信予定時刻も更新する必要があるので、高優先・低優先クラスのそれぞれのユーザ送信時刻処理部602に更新リクエストを転送し、低優先クラスのトラフィックを送信したときには、低優先クラスのユーザ送信時刻処理部602に更新リクエストを転送する。
以上、上記処理を実施する事により前記課題を解決するトラフィックシェーピング装置を提供することが可能となる。
なお、図5の回線インタフェース503毎に異なる方式(SAQ方式/LLPQ方式)を採用することも可能であり、その場合には両方式をネットワーク環境等によって使い分けるトラフィックシェーピング装置を提供することが可能となる。
本実施形態におけるトラフィックシェーピング装置のキュー構成例1である。 本実施形態におけるトラフィックシェーピング装置のキュー構成例2である。 本実施形態におけるトラフィックシェーピング装置のキュー構成例3である。 本実施形態におけるトラフィックシェーピング装置のキュー構成例4である。 シェーピング装置のブロック図である。 帯域制御コントローラーのブロック図である。 パケット受信時のユーザ送信予定時刻の更新フローである。 パケット送信時のユーザ送信予定時刻の更新フローである。
符号の説明
101a〜e:高/中/低優先のユーザキュー、102a〜d:送信予定時刻計算、103a〜b:利用可能帯域スケジューラー、104a〜c:ユーザ最大帯域シェーピング、105a〜c:グループ帯域シェーピング、106:優先制御処理、107:回線帯域シェーピング、201: WRRスケジューラー、301a〜b:送信カウンター、302:WFQスケジューラー、401a〜d:高/低優先のクラスキュー、402a〜b:クラス送信予定時刻計算、403a〜b:ユーザ送信予定時刻計算、404a〜b:利用可能帯域スケジューラー、405a〜b:ユーザ最大帯域シェーピング、406a〜b:グループ帯域シェーピング、407:優先制御処理シェーピング、408:回線帯域シェーピング、501:スイッチ部、502:ルーティング処理部、503:回線インタフェース、504:帯域制御コントローラー、505:物理サブレイヤ、601:トラフィック振り分け処理部、602:ユーザ送信時刻処理部、603:スケジューリング制御部、604:ユーザ最大帯域監視部、605:グループ最大帯域制御部、606:優先制御処理部、607:回線帯域制御部、608:送信ユーザ情報抽出部

Claims (5)

  1. トラフィックシェーピング機能を有するパケット中継装置であって、
    受信したパケットのヘッダ情報に基づいてグループおよびユーザ単位にトラフィックを分類する振り分け処理部と、
    前記ユーザ単位に設定された最大帯域および最低帯域および重み情報から、各ユーザの利用可能帯域を計算する計算部と、
    前記ユーザの前記利用可能帯域に基づいて算出される送信予定時刻を更新し、前記更新した送信予定時刻により、いずれのユーザに振り分けられたパケットを送信すべきかを判断するスケジューリング制御部と、
    前記ユーザの前記最大帯域に基づいて算出される送信予定時刻を更新し、前記更新した送信予定時刻により、前記ユーザ毎に最大帯域でシェーピングするシェーピング部と、
    前記グループの優先度に応じて、各グループのパケットの送信を完全優先制御する優先制御処理部とを有することを特徴とするパケット中継装置。
  2. トラフィックシェーピング機能を有するパケット中継装置であって、
    受信したパケットのヘッダ情報に基づいてユーザおよびクラス単位にトラフィックを分類する振り分け処理部と、
    前記ユーザ単位および前記ユーザの高優先クラス単位に設定された最大帯域および最低帯域および重み情報から、各ユーザおよび各ユーザの高優先クラスに対する利用可能帯域を計算する計算部と、
    前記ユーザおよび前記ユーザの高優先クラスに対する前記利用可能帯域に基づいて算出される送信予定時刻を更新し、前記更新した送信予定時刻により、いずれのユーザに振り分けられた高優先クラスのパケットを送信すべきかを判断する第1のスケジューリング制御部と、
    前記ユーザの高優先クラスに対する前記利用可能帯域に基づいて算出される送信予定時刻を更新し、前記更新した当該送信予定時刻により、いずれのユーザに振り分けられた非高優先クラスのパケットを送信すべきかを判断する第2のスケジューリング制御部と、
    前記ユーザおよび前記ユーザの高優先クラスの前記最大帯域に基づいて算出される送信予定時刻を更新し、前記更新した送信予定時刻により、前記ユーザ毎および前記ユーザのクラス毎に最大帯域でシェーピングするシェーピング部と、
    前記グループの優先度に応じて、各グループのパケットの送信を完全優先制御する優先制御処理部とを有することを特徴とするパケット中継装置。
  3. 請求項1または請求項2記載のパケット中継装置であって、
    前記各ユーザに設定された重み情報と送信パケット長から送信カウンターを更新するカウンター更新部と、
    前記各ユーザの送信カウンターによりWFQ型のスケジューリングを行なう第3のスケジューリング制御部とを有することを特徴とするパケット中継装置。
  4. 請求項1乃至請求項3記載のパケット中継装置であって、
    各グループもしくは各回線に設定された最大帯域に基づいて算出される送信予定時刻を更新する更新部と、
    前記更新された送信予定時刻によってグループ毎もしく回線毎に最大帯域で帯域シェーピングする第2のシェーピング部を有することを特徴とするパケット中継装置。
  5. 請求項1乃至請求項4記載のパケット中継装置であって、
    前記優先制御処理部は、グループ間の優先制御処理として、前記完全優先制御とWFQを組み合わせた処理を行なうことを特徴とするパケット中継装置。
JP2008018490A 2008-01-30 2008-01-30 トラフィックシェーピング機能および装置 Active JP4881887B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2008018490A JP4881887B2 (ja) 2008-01-30 2008-01-30 トラフィックシェーピング機能および装置
US12/323,578 US7855960B2 (en) 2008-01-30 2008-11-26 Traffic shaping method and device
US12/947,182 US8553543B2 (en) 2008-01-30 2010-11-16 Traffic shaping method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008018490A JP4881887B2 (ja) 2008-01-30 2008-01-30 トラフィックシェーピング機能および装置

Publications (2)

Publication Number Publication Date
JP2009182546A true JP2009182546A (ja) 2009-08-13
JP4881887B2 JP4881887B2 (ja) 2012-02-22

Family

ID=40899101

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008018490A Active JP4881887B2 (ja) 2008-01-30 2008-01-30 トラフィックシェーピング機能および装置

Country Status (2)

Country Link
US (2) US7855960B2 (ja)
JP (1) JP4881887B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010056819A (ja) * 2008-08-28 2010-03-11 Kddi Corp 拠点間通信のための通信ネットワークシステム、回線接続装置及び帯域制御方法
JP2011170515A (ja) * 2010-02-17 2011-09-01 Kyocera Mita Corp メモリマスタデバイス
US8521176B2 (en) 2011-05-26 2013-08-27 Fujitsu Limited Transmission apparatus and frequency fluctuation compensation method
US8737227B2 (en) 2011-07-25 2014-05-27 Fujitsu Limited Packet transmission device, memory control circuit, and packet transmission method
JP2014225799A (ja) * 2013-05-16 2014-12-04 日本電信電話株式会社 データグラムシェイピング装置及び方法
WO2022254591A1 (ja) * 2021-06-01 2022-12-08 日本電信電話株式会社 帯域制御装置、帯域制御方法、及び帯域制御プログラム

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7965635B1 (en) * 2007-01-31 2011-06-21 Alcatel Lucent Per-class scheduling with rate limiting
JP5625997B2 (ja) * 2011-02-23 2014-11-19 富士通株式会社 通信システムおよび伝送装置
JP5349515B2 (ja) * 2011-03-14 2013-11-20 株式会社東芝 バッファ管理装置、バッファ管理方法及び記憶装置
EP2712131B1 (en) * 2011-05-16 2015-07-22 Huawei Technologies Co., Ltd. Method and network device for transmitting data stream
JP5713107B2 (ja) * 2011-07-27 2015-05-07 富士通株式会社 検証プログラム、情報処理装置および検証方法
US8543748B2 (en) * 2011-09-09 2013-09-24 General Electric Company Fieldbus device control system
CN102740368B (zh) * 2012-06-08 2015-07-08 华为软件技术有限公司 一种带宽调整方法及商业智能系统
US20140047126A1 (en) * 2012-08-10 2014-02-13 International Business Machines Corporation Coordinated enforcement of traffic shaping limits in a network system
CN104348751B (zh) 2013-07-31 2019-03-12 中兴通讯股份有限公司 虚拟输出队列授权管理方法及装置
CN106302231B (zh) * 2015-05-12 2019-06-28 深圳市中兴微电子技术有限公司 数据流队列整形的方法及装置
US9929970B1 (en) 2015-12-03 2018-03-27 Innovium, Inc. Efficient resource tracking
US10218589B1 (en) 2015-12-17 2019-02-26 Innovium, Inc. Efficient resource status reporting apparatuses
US10432429B1 (en) * 2016-02-16 2019-10-01 Innovium, Inc. Efficient traffic management
US10944684B2 (en) * 2017-05-23 2021-03-09 Cable Television Laboratories, Inc. Systems and methods for queue protection
US10523577B2 (en) * 2017-05-23 2019-12-31 Cable Television Laboratories, Inc Systems and methods for low latency DOCSIS queueing and scheduling
CN111782352A (zh) * 2019-11-29 2020-10-16 北京沃东天骏信息技术有限公司 一种业务调度方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002135320A (ja) * 2000-10-27 2002-05-10 Sony Corp 送信装置、通信システムおよび送信方法
JP2004282728A (ja) * 2003-02-25 2004-10-07 Hitachi Ltd トラヒックシェーピング方法及びトラヒックシェーピング装置
JP2005354738A (ja) * 2005-08-08 2005-12-22 Hitachi Ltd Atmセル転送装置

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6546424B1 (en) * 1998-12-03 2003-04-08 Nortel Networks Limited Apparatus and method for analyzing the effect of adding a user group to a computer network
JP3733784B2 (ja) 1999-05-21 2006-01-11 株式会社日立製作所 パケット中継装置
JP2001237876A (ja) * 2000-02-21 2001-08-31 Nec Corp Ip仮想プライベート網の構築方法及びip仮想プライベート網
JP4484317B2 (ja) * 2000-05-17 2010-06-16 株式会社日立製作所 シェーピング装置
US8032653B1 (en) * 2000-09-08 2011-10-04 Juniper Networks, Inc. Guaranteed bandwidth sharing in a traffic shaping system
KR20040000336A (ko) * 2002-06-24 2004-01-03 마츠시타 덴끼 산교 가부시키가이샤 패킷 전송 장치와 그 방법, 트래픽 컨디셔너, 우선 제어기구 및 패킷 셰이퍼
WO2004075568A2 (en) * 2003-02-19 2004-09-02 Fujitsu Limited Method and apparatus for packet scheduling
CN100546301C (zh) * 2003-02-25 2009-09-30 株式会社日立制作所 流量整形方法及流量整形装置
JP4022757B2 (ja) * 2003-03-25 2007-12-19 日本電気株式会社 ネットワーク接続システムとトラフィックシェーピング方法
JP4069818B2 (ja) * 2003-07-17 2008-04-02 株式会社日立製作所 帯域監視方法及び帯域監視機能を備えたパケット転送装置
JP4335619B2 (ja) * 2003-09-04 2009-09-30 株式会社エヌ・ティ・ティ・ドコモ パケット優先制御装置及びその方法
JP3952405B2 (ja) 2003-10-17 2007-08-01 日本電信電話株式会社 IPルータとQoS制御方法およびプログラム
US8379520B2 (en) * 2004-03-03 2013-02-19 Texas Instruments Incorporated Group based packet scheduling algorithm
US7606154B1 (en) * 2004-04-01 2009-10-20 Juniper Networks, Inc. Fair bandwidth allocation based on configurable service classes
FI20045222A0 (fi) * 2004-06-15 2004-06-15 Nokia Corp Verkkolaitteet ja liikenteenmuokkausmenetelmät
KR101050603B1 (ko) * 2004-06-23 2011-07-19 삼성전자주식회사 무선 통신 시스템에서 다중 안테나를 이용한 패킷 데이터송/수신 장치 및 방법
JP4438634B2 (ja) 2005-01-28 2010-03-24 サクサ株式会社 接続装置およびプログラム
JP4447521B2 (ja) 2005-06-29 2010-04-07 三菱電機株式会社 パケットスケジューラおよびパケットスケジューリング方法
US20070002750A1 (en) * 2005-07-01 2007-01-04 Nec Laboratories America, Inc. Generic Real Time Scheduler for Wireless Packet Data Systems
JP4643473B2 (ja) 2006-03-07 2011-03-02 アラクサラネットワークス株式会社 ネットワーク伝送装置
US7830796B2 (en) * 2006-10-18 2010-11-09 Ericsson Ab Method and apparatus for traffic shaping
WO2008058088A1 (en) * 2006-11-03 2008-05-15 Bay Microsystems, Inc. Highly-scalable hardware-based traffic management within a network processor integrated circuit
JP4663761B2 (ja) * 2008-06-20 2011-04-06 アラクサラネットワークス株式会社 パケット中継装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002135320A (ja) * 2000-10-27 2002-05-10 Sony Corp 送信装置、通信システムおよび送信方法
JP2004282728A (ja) * 2003-02-25 2004-10-07 Hitachi Ltd トラヒックシェーピング方法及びトラヒックシェーピング装置
JP2005354738A (ja) * 2005-08-08 2005-12-22 Hitachi Ltd Atmセル転送装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010056819A (ja) * 2008-08-28 2010-03-11 Kddi Corp 拠点間通信のための通信ネットワークシステム、回線接続装置及び帯域制御方法
JP2011170515A (ja) * 2010-02-17 2011-09-01 Kyocera Mita Corp メモリマスタデバイス
US8521176B2 (en) 2011-05-26 2013-08-27 Fujitsu Limited Transmission apparatus and frequency fluctuation compensation method
US8737227B2 (en) 2011-07-25 2014-05-27 Fujitsu Limited Packet transmission device, memory control circuit, and packet transmission method
JP2014225799A (ja) * 2013-05-16 2014-12-04 日本電信電話株式会社 データグラムシェイピング装置及び方法
WO2022254591A1 (ja) * 2021-06-01 2022-12-08 日本電信電話株式会社 帯域制御装置、帯域制御方法、及び帯域制御プログラム

Also Published As

Publication number Publication date
JP4881887B2 (ja) 2012-02-22
US8553543B2 (en) 2013-10-08
US7855960B2 (en) 2010-12-21
US20090190470A1 (en) 2009-07-30
US20110063978A1 (en) 2011-03-17

Similar Documents

Publication Publication Date Title
JP4881887B2 (ja) トラフィックシェーピング機能および装置
US6438135B1 (en) Dynamic weighted round robin queuing
US8917597B2 (en) Providing a quality of service for various classes of service for transfer of electronic data packets
US8064344B2 (en) Flow-based queuing of network traffic
EP1010279B1 (en) Policy based quality of service
US6879561B1 (en) Method and system for wireless packet scheduling with per packet QoS support and link adaptation
US6859438B2 (en) Policy based quality of service
US8184540B1 (en) Packet lifetime-based memory allocation
US6795870B1 (en) Method and system for network processor scheduler
EP1187404A2 (en) Adaptive-weighted packet scheduler for supporting premium service in a communications network
Romanchuk et al. Method for processing multiservice traffic in network node based on adaptive management of buffer resource
WO2020090474A1 (ja) パケット転送装置、方法、及びプログラム
US20050068798A1 (en) Committed access rate (CAR) system architecture
CN108667746B (zh) 一种在深空延时容忍网络中实现业务优先级的方法
US11463370B2 (en) Scalable deterministic services in packet networks
KR100545793B1 (ko) 동적 다중 채널 환경에서의 스케쥴링 방법 및 장치
Kaur et al. Core-stateless guaranteed throughput networks
US7640355B1 (en) Supplemental queue sampling technique for packet scheduling
CN113038530B (zh) 卫星移动通信系统QoS保障的分组业务高效传输方法
Bonald et al. Scheduling network traffic
KR100720917B1 (ko) 멀티미디어 데이터 QoS 보장을 위한 차별적인 능동큐관리방법
KR20010056754A (ko) DiffServ-Enabled 코어형 라우터의복수크래스 서비스품질 제어 방법
JP4104756B2 (ja) 電気通信網においてデータパケットをスケジューリングする方法およびシステム
US7376140B1 (en) System and method for assignment of ATM virtual circuits to queues in a DSLAM
Yang et al. Design and Implementation of Time Aware Buffer for Scheduling Time Sensitive Packets in Deadline Aware Networks

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100421

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100421

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110707

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110802

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110928

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111205

R150 Certificate of patent or registration of utility model

Ref document number: 4881887

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141209

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250