JP6553563B2 - ゲートウェイルータ、通信システム、トラヒックフロー制御方法及びプログラム - Google Patents

ゲートウェイルータ、通信システム、トラヒックフロー制御方法及びプログラム Download PDF

Info

Publication number
JP6553563B2
JP6553563B2 JP2016171600A JP2016171600A JP6553563B2 JP 6553563 B2 JP6553563 B2 JP 6553563B2 JP 2016171600 A JP2016171600 A JP 2016171600A JP 2016171600 A JP2016171600 A JP 2016171600A JP 6553563 B2 JP6553563 B2 JP 6553563B2
Authority
JP
Japan
Prior art keywords
buffer
edge router
router
users
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.)
Active
Application number
JP2016171600A
Other languages
English (en)
Other versions
JP2018037974A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2016171600A priority Critical patent/JP6553563B2/ja
Publication of JP2018037974A publication Critical patent/JP2018037974A/ja
Application granted granted Critical
Publication of JP6553563B2 publication Critical patent/JP6553563B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、ゲートウェイルータ、通信システム、トラヒックフロー制御方法及びプログラムに関し、特に、集約拠点において公平制御を実施するためのゲートウェイルータ、通信システム、トラヒックフロー制御方法及びプログラムに関する。
より効率的なサービス提供のため、従来ではエッジ部に配備されていたサービス機能を切り離し、遠隔のDC(データセンタ)などに集約的に配備する方式が検討されている。
図1は、サービス機能を集約拠点に配備する方式を示す概略図である。サービス機能の集約拠点であるDCには、サービス機能を実現するためのサーバ群が集約的に配備される。各ユーザ端末からのトラヒックはER(エッジルータ)で振り分けられ、サービス機能による処理が必要なトラヒックは集約拠点に転送される。サービス機能による処理が不要なトラヒックは直接インターネットへ転送される。
集約拠点に転送されるトラヒックは、特定のサービス機能の処理が必要なもののみであり、通常時の帯域は多くないと想定されるが、複数の拠点からトラヒックが集まるため、各ERからのトラヒック量が一斉に増加する場合に備え、集約拠点のGWR(ゲートウェイルータ)で帯域制御を行えることが望ましい。
ネットワークノードによって帯域を確保して通信品質を保証する方式として、IntServ(Integrated Services)とDiffServ(Differentiated Services)などの方式がある(非特許文献1及び2参照)。また、IntServとDiffServを組み合わせて公平制御を行うことも検討されている(非特許文献3参照)。
通信キャリアのBE(Best Effort)サービスでは、ヘビーユーザによる帯域占有を防ぐため、ルータ装置に収容されるユーザに対して個別にバッファを割り当て、ユーザごとの設定帯域に応じて順番にパケットを送出することでユーザ間の公平性を確保している。
図2は、従来技術のユーザ間の公平制御を示す概略図である。図2(1)はユーザ間の公平制御を実施しない場合を示しており、ユーザ1〜3のパケットは同じバッファに入れられる。このとき、FIFO(First-In First-Out)では、到着順にパケットがバッファを占有するため、トラヒック量の少ないユーザのパケットが破棄される可能性がある。その結果、ヘビーユーザが帯域を占有してしまう可能性がある。図2(2)はユーザ間の公平制御を実施する場合を示しており、ユーザ1〜3に対して個別にバッファを割り当て、ラウンドロビンなどで各バッファから順番にパケットを出力する。その結果、各ユーザに一定の帯域が保証される。
RFC1633, "Integrated Service in the Internet Architecture", July 1994, インターネット(URL:https://tools.ietf.org/html/rfc1633), 2016年8月4日検索 RFC2122, "Specification of Guaranteed Quality of Service", September 1997, インターネット(URL:https://tools.ietf.org/html/rfc2212), 2016年8月4日検索 特許庁, "IntServ/RSVPとDiffServを組み合わせた場合の制御", インターネット(URL:https://www.jpo.go.jp/shiryou/s_sonota/hyoujun_gijutsu/bidirectional_video/132_09.htm), 2016年8月4日検索
図1から分かるように、集約拠点のGWRには、全国に配備されたERからトラヒックが送信される。GWRはユーザ間での帯域の公平性を確保するために公平制御を行う必要があるが、現状では、ユーザごとのバッファ/ポリサーの設定はSO(サービスオペレータ)により静的に行われる(事前設定される)。しかしながら、エッジルータでは1台当たり数千〜数万のユーザを収容する可能性があるため、集約拠点では集約されるユーザ数が膨大になり、ハードウェア性能の観点(バッファ容量、ポリサー数の不足など)から、全ユーザに対して静的にバッファ/ポリサーを設定することが困難であるという課題がある。
GWRにおいて、ユーザごとにではなく、ERごとにバッファ/ポリサーを用意する方法も考えられる。しかし、この方法ではERを利用しているユーザ数に応じて公平性が損なわれてしまう可能性がある。
図3は、GWRにおいてERごとにバッファ/ポリサーを用意する場合の課題を示す概略図である。ここで、エッジルータER1にはユーザ1〜3が収容され、エッジルータER2にはユーザ4が収容される場合を想定する。ER1及びER2において、図2に示すようなユーザ間の公平制御が実施され、GWRにおいて、ERごとに用意されたバッファ/ポリサーでER間の公平制御が実施される。しかし、ER間の公平制御では、ERごとのユーザ収容率に応じて使用できる帯域に差分が生じる。ユーザ1〜3を収容するER1のパケットはバッファからドロップする可能性が高くなり、ユーザ4のみを収容するER2のパケットはバッファからドロップする可能性は低くなる。その結果、収容されているユーザ数が少ないERからのパケットが多く出力され、公平性が損なわれる。
特に、大規模キャリア網ではルータ1台に収容されるユーザ数は数千〜数万に上り、ER間でのユーザ数の差分は数百〜数千となる可能性があるため、ユーザ1人あたりに割り当てられる帯域の差分が大きくなる。
このような解決を解決するため、本発明は、集約拠点のGWR(転送装置)においてユーザ間の公平性を向上させることを目的とする。
本発明の一形態に係るゲートウェイルータは、
ユーザ別に設定されたバッファを有するエッジルータからのパケットを宛先に転送するゲートウェイルータであって、
エッジルータ別に、エッジルータの収容ユーザ数に応じて所定の関係式からバッファを動的に設定するバッファ制御部と、
エッジルータから受信したパケットを当該エッジルータに対応するバッファへ振り分ける振分部と、
を有することを特徴とする。
また、本発明の一形態に係る通信システムは、
ユーザ別に設定されたバッファを有するエッジルータと、エッジルータからのパケットを宛先に転送するゲートウェイルータとを有する通信システムであって、
前記エッジルータは、
当該エッジルータの収容ユーザ数に応じて所定の関係式から当該エッジルータの収容ユーザをグルーピングし、当該エッジルータと前記ゲートウェイルータとの間にグループごとにトンネルを設定することにより、或いはグループごとに識別子を付与することにより、当該エッジルータのバッファから出力されたパケットを振り分ける振分部を有し、
前記ゲートウェイルータは、
前記設定されたトンネル又は前記付与された識別子に応じてバッファを動的に設定するバッファ制御部と、
エッジルータから受信したパケットを、当該パケットが通過したトンネル又は当該パケットに付与された識別子に対応するバッファへ振り分ける振分部と、
を有することを特徴とする。
また、本発明の一形態に係るトラヒックフロー制御方法は、
ユーザ別に設定されたバッファを有するエッジルータからのパケットを宛先に転送するゲートウェイルータにおけるトラヒックフロー制御方法であって、
エッジルータ別に、エッジルータの収容ユーザ数に応じて所定の関係式からバッファを動的に設定するステップと、
エッジルータから受信したパケットを当該エッジルータに対応するバッファへ振り分けるステップと、
を有することを特徴とする。
また、本発明の一形態に係るトラヒックフロー制御方法は、
ユーザ別に設定されたバッファを有するエッジルータと、エッジルータからのパケットを宛先に転送するゲートウェイルータとを有する通信システムにおけるトラヒックフロー制御方法であって、
前記エッジルータにおいて、当該エッジルータの収容ユーザ数に応じて所定の関係式から当該エッジルータの収容ユーザをグルーピングし、当該エッジルータと前記ゲートウェイルータとの間にグループごとにトンネルを設定することにより、或いはグループごとに識別子を付与することにより、当該エッジルータのバッファから出力されたパケットを振り分けるステップと、
前記ゲートウェイルータにおいて、前記設定されたトンネル又は前記付与された識別子に応じてバッファを動的に設定するステップと、
前記ゲートウェイルータにおいて、エッジルータから受信したパケットを、当該パケットが通過したトンネル又は当該パケットに付与された識別子に対応するバッファへ振り分けるステップと、
を有することを特徴とする。
また、本発明の一形態に係るプログラムは、
ユーザ別に設定されたバッファを有するエッジルータからのパケットを宛先に転送するゲートウェイルータとして、コンピュータを機能させるためのプログラムであって、当該コンピュータを、
エッジルータ別に、エッジルータの収容ユーザ数に応じて所定の関係式からバッファを動的に設定するバッファ制御手段、及び
エッジルータから受信したパケットを当該エッジルータに対応するバッファへ振り分ける振分手段、
として機能させることを特徴とする。
また、本発明の一形態に係るプログラムは、
ユーザ別に設定されたバッファを有するエッジルータからのパケットを宛先に転送するゲートウェイルータとして、コンピュータを機能させるためのプログラムであって、当該コンピュータを、
エッジルータにおいて当該エッジルータの収容ユーザ数に応じて所定の関係式から当該エッジルータの収容ユーザをグルーピングし、当該エッジルータと前記ゲートウェイルータとの間にグループごとにトンネルを設定することにより、或いはグループごとに識別子を付与することにより、当該エッジルータのバッファから出力されて振り分けられたパケットを受信する受信手段、
前記設定されたトンネル又は前記付与された識別子に応じてバッファを動的に設定するバッファ制御手段、及び
エッジルータから受信したパケットを、当該パケットが通過したトンネル又は当該パケットに付与された識別子に対応するバッファへ振り分ける振分手段、
として機能させることを特徴とする。
本発明によれば、集約拠点のGWR(転送装置)においてユーザ間の公平性を向上させることが可能になる。
サービス機能を集約拠点に配備する方式を示す概略図 従来技術のユーザ間の公平制御を示す概略図 GWRにおいてERごとにバッファ/ポリサーを用意する場合の課題を示す概略図 本発明の実施例に係る公平制御の概略図 本発明の実施例1に係る公平制御の概略図 本発明の実施例1に係るトラヒックフローの制御を示すフローチャート 本発明の実施例2に係る公平制御の概略図 本発明の実施例2に係るトラヒックフローの制御を示すフローチャート(その1) 本発明の実施例2に係るトラヒックフローの制御を示すフローチャート(その2) 本発明の実施例3に係る公平制御の概略図 本発明の実施例3に係るトラヒックフローの制御を示すフローチャート(その1) 本発明の実施例3に係るトラヒックフローの制御を示すフローチャート(その2)
以下、図面を参照して本発明の実施例について説明する。
本発明の実施例では、ER(エッジルータ)とGWR(ゲートウェイルータ)とを有する通信システムについて説明する。ERはユーザを収容する装置であり、ユーザからのパケットを適切な宛先に転送するルータ装置である。GWRはサービス機能の集約拠点などに配置され、ERから転送されたパケットを宛先のサービス機能提供サーバなどに転送するルータ装置である。このような通信システムにおいてユーザ間の公平制御を実現するために、ERにおいてユーザ別にバッファを設定することでユーザ間の公平制御を実施し、更に、GWRにおいてERからのパケットを宛先に転送する際に、ER別にERの収容ユーザ数に応じてバッファ/ポリサーを設定することで、公平制御を実施する。なお、GWRは受信したパケットをバッファに一時的に格納するが、バッファ容量には制限があるため、ポリサーにおいて、バッファに格納できないパケットを破棄する。以下の説明では、バッファとポリサーの組み合わせをバッファ/ポリサーと記述する。
図4は、本発明の実施例に係る公平制御の概略図である。本実施例では、一段階目(ER)の公平制御によるパケットの順序性を活用し、二段階目(GWR)で荒目にトラヒックの振り分けを行っても、(ある程度)ユーザ間の公平性を確保できることに着目する。
ERではユーザ間で公平制御を実施する。GWRへ到着するトラヒックは、ERで公平制御されているため、単位時間に受信する同一ERの各ユーザのパケット数におけるバラつきが小さくなる。したがって、同一ERごとにユーザをグルーピングし、グループごとにバッファを割り当てても、バッファに入るユーザのパケット数は均等に近くなると考えられる。
このような公平制御を実現するため、GWRは、通信を行っているユーザ数と各ユーザへ割り当てているバッファ/ポリサーを管理し、各バッファへ割り当てられるユーザ数に偏りが発生しないようにユーザをグルーピングしてバッファ/ポリサーへの振り分けを制御する。なお、ユーザのグルーピングはERにおいて行われ、GWRは、ERにおけるグルーピングに基づいてバッファ/ポリサーへの振り分けを制御してもよい。バッファ/ポリサーへ収容できるユーザ数が上限に達している際には、GWRは動的にバッファ/ポリサーを生成・設定する。
1つのバッファ/ポリサーへ割り当てられるユーザ数の上限値xは、集約拠点のGWRに接続するERの内、収容ユーザ数が最も少ないもののユーザ数以下の数値とし、次の条件を満たすものとする。GWRに設定するバッファ/ポリサー数をy、その最大数をymaxとする。各ER(ER1、ER2・・・)の収容ユーザ数をa1、a2・・・としたときの各ERの全ユーザを格納するために必要なバッファ/ポリサー数をb1、b2・・・とする(例:x=90、a1=200のとき、b1=3となる)。このとき、以下の式を満たす。
Figure 0006553563
すなわち、xはGWRに接続するERの収容ユーザ数の最小値以下の数値とし、当該数値で各ERの収容ユーザ数a1、a2・・・を除した数の和が、GWRに設定可能なバッファ数ymaxを超えないように設定される。なお、xは小さい方が公平性は向上するため、上記の式を満たす範囲内で、xで各ERの収容ユーザ数a1、a2・・・を除した数の和をできるだけ大きい値とすることが好ましい。
このように、ER別に、ERの収容ユーザ数に応じてGWRに複数のバッファを動的に設定する。ここで、収容ユーザ数が多いほど、設定されるバッファ数は多くなる。そして、ERから受信した各ユーザのパケットを適切なバッファに振り分けることで、ユーザ間の公平性を(ある程度)担保する。
各ユーザのパケットを適切なバッファに振り分ける手段として、以下の実施例について詳細に説明する。
(実施例1)5-tupleやVLAN(Virtual Local Area Network)情報など、通信を行っているユーザの識別情報をGWRで記録する。パケット受信時に、そのユーザ識別情報が既に登録済みかを判断し、登録が必要な場合は新規ユーザとして認識する。GWRは新規ユーザにバッファを動的に割り当てる。
(実施例2)ERが持つバッファ/ポリサーをグルーピングし、グループごとにER-GWR間のトンネルを作成する。GWRはトンネル単位でバッファ/ポリサーを用意し、トンネルごとに振り分けを行う。
(実施例3)ERが持つバッファ/ポリサーをグルーピングし、グループごとに異なる識別子をパケットに付与してGWRへ転送する。GWRは識別子を参照してバッファ/ポリサーへの振り分けを行う。
<実施例1>
実施例1では、GWR単独で振り分けを行う具体例について説明する。実施例1では、GWRにおいて、バッファはER別に設定され、ERからのトラヒックフローは、ER別に設定されたバッファ/ポリサーに割り当てるものとする。すなわち、異なるERからのトラヒックフローが同一のバッファ/ポリサーに入ることはない。
図5は、本発明の実施例1に係る公平制御の概略図である。本発明の実施例に係るGWRは、振分機能部101と、振分管理部103と、バッファ/ポリサー制御部105とを有する。
振分機能部101は、ERから受信したパケットを当該ERに対応するバッファへ振り分ける。具体的には、振分機能部101は、ERから受信したパケットを送信元ユーザに基づいてグルーピングして、グループごとにバッファを振り分ける。振分管理部103は、振分機能部101からの問い合わせに対して振り分け先のバッファを指示する。また、振分管理部103は、必要に応じてバッファ/ポリサー制御部105へバッファ/ポリサーの作成を指示する。バッファ/ポリサー制御部105は、ERの収容ユーザ数に応じて上記の関係式(数1)からバッファ/ポリサーを動的に設定する。なお、図5は、GWRにおける機能構成の一例を示しており、例えば、振分機能部101と振分管理部103が1つの機能部として実現されてもよい。
次に、図5及び6を参照して、実施例1におけるトラヒックフローの制御手順を示す。図6は、本発明の実施例1に係るトラヒックフローの制御を示すフローチャートである。
GWRは、5-tupleやVLAN情報など、通信を行っているユーザの識別情報と、当該トラヒックフローの送信元ER情報を記憶する。パケット受信時に、そのユーザ識別情報が既に登録済みかを判断し、登録がない場合は新規ユーザとして認識する(図6のSTEP151、図5のSTEP101)。既に登録済みである場合、振分機能部101は既に振り分けたバッファ/ポリサーへトラヒックフローを振り分ける(図6のSTEP163)。
GWRは振分機能部101でトラヒックフローを識別し、新規の通信を受信した際には振分管理部103へいずれのバッファへ振り分けるかを問い合わせる(図6のSTEP153、図5のSTEP103)。振分管理部103は振分対象となる(送信元ERに割り当てられている)バッファ/ポリサーの中に、許容ユーザ数が上限に達していないものがあるか判断し(図6のSTEP155)、上限に達していないバッファ/ポリサーがある場合、いずれかのバッファ(例えば、最も空いているバッファ)を選択し、振分機能部101へ振り分け先のバッファを指示する(図6のSTEP161)。
振分対象となる(送信元ERに割り当てられている)全てのバッファ/ポリサーが許容ユーザ数に達している場合は、振分管理部103はバッファ/ポリサー制御部105へバッファ/ポリサーの生成を指示し(図6のSTEP157、図5のSTEP105)、バッファ/ポリサー制御部105はバッファ/ポリサーを生成・設定する(図6のSTEP159、図5のSTEP107)。振分管理部103は新たに生成されたバッファ/ポリサーを振り分け先として指示する(図6のSTEP161)。
振分機能部101にて、ユーザのトラヒックフローが適切なバッファへ振り分けられる(図6のSTEP163、図5のSTEP109)。
次に図5においてユーザ7が通信を開始した場合のバッファ割り当ての具体例について説明する。
ER1、ER2に収容されるユーザ数a1、a2はスタティックに設定され、a1=4、a2=3とする。ER1では4ユーザが、ER2では3ユーザの内、2ユーザが通信を行っている。
バッファに収容する最大ユーザ数xを2とすると、ER1とER2に用意されるバッファ数b1、b2はそれぞれ2となる(b1=4/2=2, b2=3/2≒2)。
ER1にはバッファ1とバッファ2が設定され、ユーザ1とユーザ2がバッファ1に、ユーザ3とユーザ4がバッファ2に割り当てられている。同様に、ER2にはバッファ3とバッファnが設定され、ユーザ5とユーザ6はバッファ3に割り当てられている。なお、ER2において2ユーザしか通信を行っていないときには、バッファnは使用されず、リソースが予約されている状態となる。
ユーザ7が通信を開始したとき、バッファ3には既に収容最大ユーザ数x(=2)のユーザが割り当てられているため、バッファnが新規に作成・設定され、ユーザ7がバッファnに割り当てられる。
このように、バッファ/ポリサー制御部105は、ER別に、ERの収容ユーザ数に応じて所定の関係式からGWRに1以上のバッファを動的に設定する。ここで、収容ユーザ数が多いほど、設定されるバッファ数は多くなる。そして、ERから受信した各ユーザのパケットを適切なバッファに振り分けることで、ユーザ間の公平性を(ある程度)担保することができる。
GWRに設定するバッファ数yは、上記の所定の関係式(数1)を満たす前提で、ymaxに近いほど、バッファ間の収容ユーザ数のバラつきが小さくなり、公平性が高くなる。また、予め必要な数のバッファを設定し、新規ユーザの通信を認識すると、その時点で最も収容ユーザ数が少ないバッファを選択し、新規ユーザをそのバッファに割り当てることで、バッファ間でのユーザ数のバラつきを抑えることが可能になる。
<実施例2>
実施例2では、ERとGWRが連携して振り分けを行う具体例について説明する。実施例2では、ERにおいて、収容ユーザ数に応じて所定の関係式(数1)から収容ユーザをグルーピングし、グループごとにER-GWR間のトンネルを作成する。GWRにおいて、バッファはトンネル別に設定され、ERからのトラヒックフローは、トンネル別に設定されたバッファ/ポリサーに割り当てるものとする。
図7は、本発明の実施例2に係る公平制御の概略図である。本発明の実施例に係るERは、トンネル振分部201を有する。また、GWRは、振分機能部101と、振分管理部103と、バッファ/ポリサー制御部105とを有する。
トンネル振分部201は、ERの収容ユーザ数に応じて上記の関係式(数1)からERとGWRとの間に1以上の適切な数のトンネルを設定し、ERのバッファから出力されたパケットをいずれかのトンネルへ振り分ける。振分機能部101は、ERからトンネルを介して受信したパケットを当該パケットが通過したトンネルに対応するバッファへ振り分ける。振分管理部103は、振分機能部101からの問い合わせに対して振り分け先のバッファを指示する。また、振分管理部103は、必要に応じてバッファ/ポリサー制御部105へバッファ/ポリサーの作成を指示する。バッファ/ポリサー制御部105は、設定されたトンネルに応じてバッファ/ポリサーを動的に設定する。なお、図7は、ER及びGWRにおける機能構成の一例を示しており、例えば、振分機能部101と振分管理部103が1つの機能部として実現されてもよい。
次に、図7〜9を参照して、実施例2におけるトラヒックフローの制御手順を示す。図8及び図9は、本発明の実施例2に係るトラヒックフローの制御を示すフローチャートである。図8は、動的にトンネルを生成する例を示すが、予め収容ユーザ数に応じてERとGWRとの間にトンネルが設定されてもよい。
ERは、5-tupleやVLAN情報など、通信を行っているユーザの識別情報を記憶する。パケット受信時に、そのユーザ識別情報が既にグルーピング済みかを判断し、グルーピングが必要な場合は新規ユーザとして認識する(図8のSTEP231、図7のSTEP201)。既にグルーピング済みである場合、トンネル振分部201は既に振り分けたトンネルへトラヒックフローを振り分ける(図8のSTEP241、図7のSTEP203)。
ERはトンネル振分部201でトラヒックフローを識別し、新規の通信を受信した際には振分対象となるグループの中に、許容ユーザ数が上限に達していないものがあるか判断し(図8のSTEP233)、上限に達していないグループがある場合、いずれかのグループ(例えば、最も空いているグループ)を選択する(図8のSTEP239)。
振分対象となる全てのグループが許容ユーザ数に達している場合は、トンネル振分部201は新規グループを作成し、新規の通信を行うユーザを当該グループに設定し(図8のSTEP235)、新規にトンネルを構築する(図8のSTEP237)。
トンネル振分部201にて、ユーザのトラヒックフローが適切なトンネルへ振り分けられる(図8のSTEP241、図7のSTEP203)。
このように、ERはユーザごとに個別のバッファ/ポリサーを持ち、これらのバッファ/ポリサーは一定数ごとにグルーピングされ、各ユーザのトラヒックフローはグループごとに個別のトンネルでGWRへ転送される。
GWRは振分機能部101において、受信ポートやトンネルIDなどによりトンネルを判別し、まだ振り分けていないトラヒックフローである場合は新規トンネルとして認識する(図9のSTEP251)。既に振り分けている場合、振分機能部101は既に振り分けたバッファ/ポリサーへトラヒックフローを振り分ける(図9のSTE261、図7のSTEP205)。
振分機能部101で新規トンネルと判別された場合には、振分管理部103へいずれのバッファへ振り分けるかを問い合わせる(図9のSTEP253)。新規トンネルに対してバッファ/ポリサーが生成されていない場合、振分管理部103はバッファ/ポリサー制御部105へバッファ/ポリサーの生成を指示し(図9のSTEP255)、バッファ/ポリサー制御部105はバッファ/ポリサーを生成・設定する(図9のSTEP259、図7のSTEP207)。振分管理部103は新たに生成されたバッファ/ポリサーを振り分け先として指示する(図9のSTEP259)。
振分機能部101にて、トンネル経由で受信したトラヒックフローが適切なバッファへ振り分けられる(図9のSTEP261、図7のSTEP205)。
次に図7においてユーザ7が通信を開始した場合のバッファ割り当ての具体例について説明する。
ER1、ER2に収容されるユーザ数a1、a2はスタティックに設定され、a1=4、a2=3とする。ER1では4ユーザが、ER2では3ユーザの内、2ユーザが通信を行っている。
バッファに収容する最大ユーザ数xを2とすると、ER1とER2に用意されるバッファ数b1、b2はそれぞれ2となる(b1=4/2=2, b2=3/2≒2)。
ER1にはバッファAとバッファBが設定され、ER2にはバッファCとバッファDが設定される。各ERでは、割り当てるバッファごとにユーザをグルーピングし、グループごとに個別のトンネルでGWRへトラヒックを転送する。1つのグループに収容するユーザ数はx以下であり、本実施例では、ユーザ1及びユーザ2をバッファAに、ユーザ3及びユーザ4をバッファBに、ユーザ5及びユーザ7をバッファCに、ユーザ6をバッファDにグルーピングしている。GWRはトンネル単位で、対応するバッファへトラヒックを振り分ける。なお、新規トンネルが張られた際には、GWRにおいて新規のバッファが追加される。
このように、トンネル振分部201は、ERの収容ユーザ数に応じて所定の関係式から1以上のトンネルを設定する。ここで、収容ユーザ数が多いほど、設定されるトンネルの数は多くなる。そして、GWRでは、トンネルを介して受信した各ユーザのパケットを適切なバッファに振り分けることで、ユーザ間の公平性を(ある程度)担保することができる。実施例2では、トンネル単位の制御となるためトンネル管理の負荷が増加するが、実施例1と比べてスケール性が高い。
設定するトンネルの数、すなわち、GWRに設定するバッファ数yは、上記の所定の関係式(数1)を満たす前提で、ymaxに近いほど、バッファ間の収容ユーザ数のバラつきが小さくなり、公平性が高くなる。また、予め必要な数のバッファを設定し、新規トンネルを認識すると、その時点で最も収容ユーザ数が少ないバッファを選択し、新規トンネルをそのバッファに割り当てることで、バッファ間でのユーザ数のバラつきを抑えることが可能になる。なお、図8に示すように、通信を行っているユーザを動的にグルーピングすることもできるが、この場合、新規に作成したグループに割り当てられるユーザ数が小さくなるため、公平性が損なわれる可能性がある。
<実施例3>
実施例3では、ERとGWRが連携して振り分けを行う具体例について説明する。実施例3では、ERにおいて、収容ユーザ数に応じて所定の関係式(数1)から収容ユーザをグルーピングし、グループごとに異なる識別子をパケットに付与してGWRへ転送する。GWRにおいて、バッファは識別子別に設定され、ERからのトラヒックフローは、識別子別に設定されたバッファ/ポリサーに割り当てるものとする。
図10は、本発明の実施例3に係る公平制御の概略図である。本発明の実施例に係るERは、識別子付与部251を有する。また、GWRは、振分機能部101と、振分管理部103と、バッファ/ポリサー制御部105とを有する。
識別子付与部251は、ERの収容ユーザ数に応じて上記の関係式(数1)からERのバッファから出力されたパケットに識別子を付与する。振分機能部101は、ERから受信したパケットを当該パケットに付与された識別子に対応するバッファへ振り分ける。振分管理部103は、振分機能部101からの問い合わせに対して振り分け先のバッファを指示する。また、振分管理部103は、必要に応じてバッファ/ポリサー制御部105へバッファ/ポリサーの作成を指示する。バッファ/ポリサー制御部105は、付与された識別子に応じてバッファ/ポリサーを動的に設定する。なお、図10は、ER及びGWRにおける機能構成の一例を示しており、例えば、振分機能部101と振分管理部103が1つの機能部として実現されてもよい。
次に、図10〜図12を参照して、実施例3におけるトラヒックフローの制御手順を示す。図11及び図12は、本発明の実施例3に係るトラヒックフローの制御を示すフローチャートである。図11は、動的に識別子を付与する例を示すが、予め収容ユーザ数に応じて識別子が設定されてもよい。
ERは、5-tupleやVLAN情報など、通信を行っているユーザの識別情報を記憶する。パケット受信時に、そのユーザ識別情報が既にグルーピング済みかを判断し、グルーピングが必要な場合は新規ユーザとして認識する(図11のSTEP331、図10のSTEP301)。既にグルーピング済みである場合、識別子付与部251は既に付与した識別子をパケットに付与する(図11のSTEP341、図10のSTEP303)。
ERは識別子付与部251でトラヒックフローを識別し、新規の通信を受信した際には振分対象となるグループの中に、許容ユーザ数が上限に達していないものがあるか判断し(図11のSTEP333)、上限に達していないグループがある場合、いずれかのグループ(例えば、最も空いているグループ)を選択する(図11のSTEP339)。
振分対象となる全てのグループが許容ユーザ数に達している場合は、識別子付与部251は新規グループを作成し、新規の通信を行うユーザを当該グループに設定し(図11のSTEP335)、新規に識別子を付与する(図11のSTEP337)。
識別子付与部251にて、ユーザのパケットに対して適切な識別子が付与される(図11のSTEP341、図10のSTEP303)。
このように、ERはユーザごとに個別のバッファ/ポリサーを持ち、これらのバッファ/ポリサーは一定数ごとにグルーピングされ、各ユーザのパケットはグループごとに異なる識別子が付与されてGWRへ転送される。
GWRは振分機能部101において、ERにおいて付与された識別子を判別し、まだ振り分けていないトラヒックフローである場合は新規識別子として認識する(図12のSTEP351)。既に振り分けている場合、振分機能部101は既に振り分けたバッファ/ポリサーへトラヒックフローを振り分ける(図12のSTE361、図10のSTEP305)。
振分機能部101で新規識別子と判別された場合には、振分管理部103へいずれのバッファへ振り分けるかを問い合わせる(図12のSTEP353)。新規識別子に対してバッファ/ポリサーが生成されていない場合、振分管理部103はバッファ/ポリサー制御部105へバッファ/ポリサーの生成を指示し(図12のSTEP355)、バッファ/ポリサー制御部105はバッファ/ポリサーを生成・設定する(図12のSTEP359、図10のSTEP307)。振分管理部103は新たに生成されたバッファ/ポリサーを振り分け先として指示する(図12のSTEP359)。
振分機能部101にて、識別子が付与されたパケットが適切なバッファへ振り分けられる(図12のSTEP361、図10のSTEP305)。ここで、ERにおいて付与された識別子は除去される。
次に図10においてユーザ7が通信を開始した場合のバッファ割り当ての具体例について説明する。
ER1、ER2に収容されるユーザ数a1、a2はスタティックに設定され、a1=4、a2=3とする。ER1では4ユーザが、ER2では3ユーザの内、2ユーザが通信を行っている。
バッファに収容する最大ユーザ数xを2とすると、ER1とER2に用意されるバッファ数b1、b2はそれぞれ2となる(b1=4/2=2, b2=3/2≒2)。
ER1にはバッファAとバッファBが設定され、ER2にはバッファCとバッファDが設定される。各ERでは、割り当てるバッファごとにユーザをグルーピングし、グループごとに異なる識別子を付与しGWRへトラヒックを転送する。1つのグループに収容するユーザ数はx以下であり、本実施例では、ユーザ1及びユーザ2をバッファAに、ユーザ3及びユーザ4をバッファBに、ユーザ5及びユーザ7をバッファCに、ユーザ6をバッファDにグルーピングしている。GWRは識別子を読み取り、対応するバッファへトラヒックを振り分ける。なお、新規識別子を持つトラヒックを受信した際には、GWRにおいて新規のバッファが追加される。
このように、識別子付与部251は、ERの収容ユーザ数に応じて所定の関係式から1以上の識別子を付与する。ここで、収容ユーザ数が多いほど、設定される識別子の数は多くなる。そして、GWRでは、識別子を読み取って受信した各ユーザのパケットを適切なバッファに振り分けることで、ユーザ間の公平性を(ある程度)担保することができる。実施例3では、識別子単位の制御となるため識別子を付与する機構がERに必要となり、識別子を読み取ってトラヒックを振り分ける機構と識別子を除去する機構がGWRに必要となるが、実施例1と比べてスケール性が高い。
設定する識別子の数、すなわち、GWRに設定するバッファ数yは、上記の所定の関係式(数1)を満たす前提で、ymaxに近いほど、バッファ間の収容ユーザ数のバラつきが小さくなり、公平性が高くなる。また、予め必要な数のバッファを設定し、新規識別子を認識すると、その時点で最も収容ユーザ数が少ないバッファを選択し、新規識別子をそのバッファに割り当てることで、バッファ間でのユーザ数のバラつきを抑えることが可能になる。なお、図11に示すように、通信を行っているユーザを動的にグルーピングすることもできるが、この場合、新規に作成したグループに割り当てられるユーザ数が小さくなるため、公平性が損なわれる可能性がある。
<本発明の実施例の効果>
以上のように、本発明の実施例によれば、膨大な数のユーザが収容される集約拠点のGWRにおいてバッファやポリサーなどのハードウェアリソースを過剰に追加することなくユーザ間の公平性を向上させることが可能になる。また、同時に接続するユーザ数に応じて動的にバッファ/ポリサーを生成・設定し、割り振ることで、バッファ/ポリサーリソースの使用効率を向上できる。
また、ユーザ数に応じてフローを均等にバッファ/ポリサーへ割り当てることで、GWRの1つのバッファ/ポリサー当たりに収容されるユーザ数の差分を抑制可能となる。なお、GWRにおいて1つのポリサーを複数人で共有することになるが、ERにより一段階目の公平制御が行われているため、同じER内のユーザ同士であれば、公平性が損なわれない。その結果、GWRにおいて各ユーザが使用できる帯域の差分を小さくすることができ、ユーザ間の公平性を向上させることが可能になる。
<補足>
説明の便宜上、本発明の実施例に係るER及びGWRは機能的なブロック図を用いて説明しているが、本発明の実施例に係るER及びGWRは、ハードウェア、ソフトウェア又はそれらの組み合わせで実現されてもよい。例えば、ER及びGWRの各機能部は、記憶装置又はメモリ装置に格納されているデータやプログラムをCPU(Central Processing Unit)が実行することによって実現されてもよい。また、本発明の実施例は、コンピュータに対して本発明の実施例に係るER及びGWRの機能を実現させるプログラム、コンピュータに対して本発明の実施例に係る方法の各手順を実行させるプログラム等により、実現されてもよい。更に、各機能部が必要に応じて組み合わせて使用されてもよい。また、本発明の実施例に係る方法は、実施例に示す順序と異なる順序で実施されてもよい。
以上、集約拠点のGWR(転送装置)においてユーザ間の公平性を向上させるための手法について説明したが、本発明は、上記の実施例に限定されることなく、特許請求の範囲内において、種々の変更・応用が可能である。
101 振分機能部
103 振分管理部
105 バッファ/ポリサー制御部
201 トンネル振分部
251 識別子付与部

Claims (8)

  1. ユーザ別に設定されたバッファを有するエッジルータからのパケットを宛先に転送するゲートウェイルータであって、
    エッジルータ別に、エッジルータの収容ユーザ数に応じて所定の関係式からバッファを動的に設定するバッファ制御部と、
    エッジルータから受信したパケットを当該エッジルータに対応するバッファへ振り分ける振分部と、
    を有するゲートウェイルータ。
  2. 前記所定の関係式による1つのバッファ当たりのユーザ数の上限値は、前記ゲートウェイルータに接続するエッジルータの収容ユーザ数の最小値以下の数値とし、当該数値で各エッジルータの収容ユーザ数を除した数の和が、前記ゲートウェイルータに設定可能なバッファ数を超えないように設定される、請求項1に記載のゲートウェイルータ。
  3. 前記バッファ制御部は、通信を行っているユーザに対してバッファを設定する、請求項1に記載のゲートウェイルータ。
  4. ユーザ別に設定されたバッファを有するエッジルータと、エッジルータからのパケットを宛先に転送するゲートウェイルータとを有する通信システムであって、
    前記エッジルータは、
    当該エッジルータの収容ユーザ数に応じて所定の関係式から当該エッジルータの収容ユーザをグルーピングし、当該エッジルータと前記ゲートウェイルータとの間にグループごとにトンネルを設定することにより、或いはグループごとに識別子を付与することにより、当該エッジルータのバッファから出力されたパケットを振り分ける振分部を有し、
    前記ゲートウェイルータは、
    前記設定されたトンネル又は前記付与された識別子に応じてバッファを動的に設定するバッファ制御部と、
    エッジルータから受信したパケットを、当該パケットが通過したトンネル又は当該パケットに付与された識別子に対応するバッファへ振り分ける振分部と、
    を有する通信システム。
  5. ユーザ別に設定されたバッファを有するエッジルータからのパケットを宛先に転送するゲートウェイルータにおけるトラヒックフロー制御方法であって、
    エッジルータ別に、エッジルータの収容ユーザ数に応じて所定の関係式からバッファを動的に設定するステップと、
    エッジルータから受信したパケットを当該エッジルータに対応するバッファへ振り分けるステップと、
    を有するトラヒックフロー制御方法。
  6. ユーザ別に設定されたバッファを有するエッジルータと、エッジルータからのパケットを宛先に転送するゲートウェイルータとを有する通信システムにおけるトラヒックフロー制御方法であって、
    前記エッジルータにおいて、当該エッジルータの収容ユーザ数に応じて所定の関係式から当該エッジルータの収容ユーザをグルーピングし、当該エッジルータと前記ゲートウェイルータとの間にグループごとにトンネルを設定することにより、或いはグループごとに識別子を付与することにより、当該エッジルータのバッファから出力されたパケットを振り分けるステップと、
    前記ゲートウェイルータにおいて、前記設定されたトンネル又は前記付与された識別子に応じてバッファを動的に設定するステップと、
    前記ゲートウェイルータにおいて、エッジルータから受信したパケットを、当該パケットが通過したトンネル又は当該パケットに付与された識別子に対応するバッファへ振り分けるステップと、
    を有するトラヒックフロー制御方法。
  7. ユーザ別に設定されたバッファを有するエッジルータからのパケットを宛先に転送するゲートウェイルータとして、コンピュータを機能させるためのプログラムであって、当該コンピュータを、
    エッジルータ別に、エッジルータの収容ユーザ数に応じて所定の関係式からバッファを動的に設定するバッファ制御手段、及び
    エッジルータから受信したパケットを当該エッジルータに対応するバッファへ振り分ける振分手段、
    として機能させるプログラム。
  8. ユーザ別に設定されたバッファを有するエッジルータからのパケットを宛先に転送するゲートウェイルータとして、コンピュータを機能させるためのプログラムであって、当該コンピュータを、
    エッジルータにおいて当該エッジルータの収容ユーザ数に応じて所定の関係式から当該エッジルータの収容ユーザをグルーピングし、当該エッジルータと前記ゲートウェイルータとの間にグループごとにトンネルを設定することにより、或いはグループごとに識別子を付与することにより、当該エッジルータのバッファから出力されて振り分けられたパケットを受信する受信手段、
    前記設定されたトンネル又は前記付与された識別子に応じてバッファを動的に設定するバッファ制御手段、及び
    エッジルータから受信したパケットを、当該パケットが通過したトンネル又は当該パケットに付与された識別子に対応するバッファへ振り分ける振分手段、
    として機能させるプログラム。
JP2016171600A 2016-09-02 2016-09-02 ゲートウェイルータ、通信システム、トラヒックフロー制御方法及びプログラム Active JP6553563B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016171600A JP6553563B2 (ja) 2016-09-02 2016-09-02 ゲートウェイルータ、通信システム、トラヒックフロー制御方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016171600A JP6553563B2 (ja) 2016-09-02 2016-09-02 ゲートウェイルータ、通信システム、トラヒックフロー制御方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2018037974A JP2018037974A (ja) 2018-03-08
JP6553563B2 true JP6553563B2 (ja) 2019-07-31

Family

ID=61567699

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016171600A Active JP6553563B2 (ja) 2016-09-02 2016-09-02 ゲートウェイルータ、通信システム、トラヒックフロー制御方法及びプログラム

Country Status (1)

Country Link
JP (1) JP6553563B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7052631B2 (ja) * 2018-08-10 2022-04-12 株式会社オートネットワーク技術研究所 車載通信装置、通信プログラム及びメッセージ送信方法
WO2024038606A1 (ja) * 2022-08-19 2024-02-22 日本電信電話株式会社 通信制御システム、通信制御方法および通信制御プログラム

Also Published As

Publication number Publication date
JP2018037974A (ja) 2018-03-08

Similar Documents

Publication Publication Date Title
JP6558483B2 (ja) 通信装置とシステムと方法並びに割り当て装置とプログラム
US7701849B1 (en) Flow-based queuing of network traffic
JP4966371B2 (ja) 無線ベアラにサービスをマッピングし、重み値に応じて無線ベアラに帯域を割り当てる方法
JP7288980B2 (ja) 仮想サービスネットワークにおけるサービス品質
JP4663761B2 (ja) パケット中継装置
JP6920472B2 (ja) Cgnの転送・制御分離
US20100278189A1 (en) Methods and Apparatus for Providing Dynamic Data Flow Queues
US20120213210A1 (en) QUALITY OF SERVICE (QoS) FOR SATELLITE COMMUNICATIONS NETWORK
US10063478B2 (en) Switching device and control method of switching device
US20190260812A1 (en) Allocating capacity of a network connection to data streams based on type
JP6553563B2 (ja) ゲートウェイルータ、通信システム、トラヒックフロー制御方法及びプログラム
CN104348753B (zh) 数据包转发方法以及数据包转发装置
US10382582B1 (en) Hierarchical network traffic scheduling using dynamic node weighting
CN111970149B (zh) 一种基于硬件防火墙qos的共享带宽实现方法
KR20120055947A (ko) 가입자 인지 플로우별 QoS 제공 방법 및 장치
JP4744479B2 (ja) 優先制御システム、優先設定制御システム、及び優先制御方法
WO2019235442A1 (ja) ネットワークシステムおよびネットワーク帯域制御管理方法
JP2002305538A (ja) 通信品質制御方法、サーバ及びネットワークシステム
JP5757540B2 (ja) 通信システム、ネットワーク制御装置およびそのプログラム、並びに通信方法
WO2023238303A1 (ja) 転送装置、転送方法及び転送プログラム
US7602716B1 (en) Load sharing on DOCSIS
Gennaoui et al. Investigation and comparison of MPLS QoS solution and differentiated services QoS solutions
JP6178743B2 (ja) トラヒックフロー割当方法および装置
Diwan et al. Optimal allocation of rates in guaranteed service networks
Sankar et al. FLOW BASED ALGORITHM FOR DYNAMIC BUFFER ALLOCATION

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180903

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190617

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190704

R150 Certificate of patent or registration of utility model

Ref document number: 6553563

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150