JP2015149577A - 帯域制御装置 - Google Patents

帯域制御装置 Download PDF

Info

Publication number
JP2015149577A
JP2015149577A JP2014020916A JP2014020916A JP2015149577A JP 2015149577 A JP2015149577 A JP 2015149577A JP 2014020916 A JP2014020916 A JP 2014020916A JP 2014020916 A JP2014020916 A JP 2014020916A JP 2015149577 A JP2015149577 A JP 2015149577A
Authority
JP
Japan
Prior art keywords
bandwidth
virtual node
virtual
priority queue
queue
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.)
Ceased
Application number
JP2014020916A
Other languages
English (en)
Inventor
通貴 奥野
Michitaka Okuno
通貴 奥野
矢野 正
Tadashi Yano
正 矢野
和 三村
Kazu Mimura
和 三村
勇太 武藤
Yuta Muto
勇太 武藤
大介 石井
Daisuke Ishii
大介 石井
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2014020916A priority Critical patent/JP2015149577A/ja
Priority to US14/530,847 priority patent/US20150222561A1/en
Publication of JP2015149577A publication Critical patent/JP2015149577A/ja
Ceased legal-status Critical Current

Links

Images

Classifications

    • 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/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/60Queue scheduling implementing hierarchical scheduling
    • 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/6215Individual queue per QOS, rate or priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6275Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements

Landscapes

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

Abstract

【課題】通信量の急増に応じて、システムダウンを招かずに中継処理サーバの増設を実現すること、中継処理サーバの増設の最中でも優先ユーザに対して品質の良い通信を提供し続けること、中継処理サーバの増減設を繰り返してもシステムダウンを招かず優先ユーザに対して品質の良い通信を提供し続けることが課題である。【解決手段】サーバ装置に備えられた複数の仮想ノードへパケットを送信する帯域制御装置であって、複数の高優先キューおよび複数の低優先キューと、仮想ノード毎に備えられ、複数の高優先キューおよび低優先キューの中で自身に対応付けられた高優先キューおよび低優先キューからパケットを読み出して仮想ノード毎に定められた上限帯域に制限する仮想ノード用帯域制限部と、を有し、仮想ノードの増減設を判断する前記制御サーバから指示に基づき、高優先キューおよび低優先キューと仮想ノード用帯域制限部との対応付けを変更する帯域制御装置。【選択図】 図2

Description

本発明は、通信システム、特に帯域制御装置に関する。
近年、スマートフォンやタブレット端末が急速に普及した結果、モバイルトラフィックが急激に増加している。通信キャリアは、これらのトラフィック量を事前に予測し、必要となるネットワーク装置をモバイルコア網の通信ノード(MME(Mobility Management Entity)、S−GW(Serving GateWay)、P−GW(Public Data Network GateWay)等)として準備する必要がある。
通常、それらのネットワーク装置は、専用ハードウェアで構成されており、調達期間が数ヶ月単位と長い、また、設計や設定・運用性の柔軟性が低い、設備コストが高い、といった課題を抱えている。こうした課題を受け、これらの専用ハードウェアに代わって、汎用サーバに仮想化技術を導入して課題の解決を図ろうとするネットワーク機能仮想化(NFV:Network Functions Virtualization)の概念が、ETSI Industry Specification Groupにより2012年11月に提唱された。NFVの概念を用いると、モバイルコア網の通信ノード(MME、S−GW、P−GW等)を汎用サーバ上の仮想マシンで実現し、通信変動量に応じて中継処理を行う通信ノードを自動的に増減設することが可能となる。
一方で、ノードを自動増設する際、増設が完了するまでには早くても数秒から数分の時間が最低限必要であり、増設が完了する前に大量の通信を受け続ける場合、仮想マシンを稼動させるOSやファームウェアなどが過負荷状況となり、システムがダウンしてしまう恐れがある。
また、本システムを利用しているユーザの通信は、他のユーザの通信が大量に増加する場合、通信ノードの増設が完了するまでに大量のパケットロスが生じてしまう。これは、追加料金を払ってでも品質の良い通信を望むユーザにとっては問題である。
通信変動に応じてシステム中のサーバを増設して過負荷を避けるという観点では、特許文献1において、「クラウド環境において、需要変化に応答してサーバ規模を増減させるオートスケーリング機構を実現する情報処理システム、情報処理装置、スケーリング方法、プログラムおよび記録媒体を提供すること。」が課題として記載されている。その解決手段として、「本情報処理システムは、複数の処理サーバを含む処理サーバ群と、処理サーバ群に代替して応答するための代替サーバと、処理サーバ群にトラフィックを分散するとともに、上記処理サーバ群が過負荷状態となった際に代替サーバにトラフィックを転送するロードバランサとを含む。本情報処理システムは、さらに、上記ロードバランサにより処理サーバ群へ転送される転送量と上記代替サーバへ転送される転送量とに応じて、処理サーバ群の目標規模を演算し、処理サーバ群の現在の規模から目標規模へ増強するため処理サーバ群の処理サーバを準備する。」と記載されている。
特開2012−208781号公報
特許文献1に記載された技術では、ウェブサーバが過負荷になった際に、新規の接続要求を代替サーバへ転送し、その間にウェブサーバの増設を行うことで、ウェブサーバを過剰接続によるダウンから保護している。しかしながら、一般的なモバイル通信を中継処理するサーバへ特許文献1の技術を適用した場合、ユーザが一斉にテキスト参照をやめて、動画参照などの大量のデータ通信を行う状況では、中継サーバにとっては新規接続要求とはならないため、代替サーバへの転送は行われない。その結果、中継サーバの負荷が増えるため、中継サーバの過負荷状態を避けることができず、増設(スケールアウト)完了までにシステムダウンを引き起こしうる。換言すれば、通信量の急増に応じて、システムダウンを招かずに中継処理サーバの増設(スケールアウト)を実現することが課題である。
また、中継処理サーバの増設(スケールアウト)の最中でも、優先ユーザに対して、品質の良い通信を提供し続けることが課題である。
また、中継処理サーバの増減設を繰り返しても、システムダウンを招かず、優先ユーザに対して品質の良い通信を提供し続けることが課題である。
本発明は、上記課題のうち少なくとも一つを解決するための手段を複数含んでいるが、その一例を挙げるならば、
「サーバ装置に備えられた複数の仮想ノードへパケットを送信する帯域制御装置であって、前記帯域制御装置の制御をおこなう制御部と、前記パケットを保持するキューを制御するバッファ部と、を有し、前記バッファ部は、高優先のパケットを保持し、パケット送信量を所定の保証帯域で保証する複数の高優先キューと、低優先のパケットを保持する複数の低優先キューと、前記仮想ノード毎に備えられ、複数の前記高優先キューおよび前記低優先キューの中で自身に対応付けられた高優先キューおよび低優先キューからパケットを読み出して前記仮想ノード毎に定められた上限帯域に制限する仮想ノード用帯域制限部と、を有し、前記仮想ノードの増減設を判断する前記制御サーバから指示を受けた前記制御部からの指示により、前記バッファ部は、前記高優先キューおよび前記低優先キューと前記仮想ノード用帯域制限部との対応付けを変更する」ことを特徴とする帯域制御装置である。
本発明によれば、少なくとも以下いずれかの効果を奏する。本発明によれば、過負荷状況においても、各ノードへの通信流入量を制御するため、システムダウン(ノード群のダウン)を回避することができる。また、優先ユーザの通信に対して、過負荷状況においてもパケットロスを回避し、高品質な通信を提供し続けることができる。また、ノードの増減設を繰り返しても、システムダウンを招かず、優先ユーザに対して品質の良い通信を提供し続けることができる。
モバイルコアシステムの構成例を示す図である。 帯域制御装置の構成例を示す図である。 バッファ管理テーブルの構成例を示す図である。 帯域制御装置の動作フローチャート例を示す図である。 帯域制御装置の構成例(3階層シェーピング)を示す図である。 システムの平常時および増設設定時の処理シーケンス例を示す図である。 帯域制御装置の設定用フローチャート例を示す図である。 帯域制御装置の増減設対応バッファ部の増設対応例を示す図である。 振分けテーブルの増設対応例を示す図である。 システムの減設設定時の処理シーケンス例を示す図である。
以下、本発明の実施形態の例を添付図面に基づき説明する。各図における同一符号は同一物あるいは相当物を示す。説明の都合上、符号に添え字を追加して区別することがある。
本実施例では、通信変動量に応じて通信の中継処理を行う通信ノードを自動的に増減設するシステムを備えるモバイルコア網へ、本実施形態の帯域制御装置を導入してシステムダウンを回避する方法、および、優先ユーザに対して高品質通信の提供を行う方法について説明する。
(システム全体の構成)
図1は、本発明の実施形態によるモバイルコアシステムの構成例を示す。データセンタなどの配信サーバ60が接続されるインターネット50と、ユーザの携帯端末10が通信する無線基地局20が接続されるアクセス網30の間のモバイルコア網相当の位置に、本実施形態のモバイルコアシステムを配置する。モバイルコアシステムは、スイッチ500を介して、モバイル通信の中継処理を行う通信ノードを仮想マシン330上の仮想ノードとして動作させるためのサーバ300、適切な仮想ノードへモバイル通信を振分けるためのロードバランサ200、帯域制御装置100、および、モバイルコアシステムを制御する制御サーバ400を接続した構成である。
図1では、ロードバランサ200と帯域制御装置100は、網(インターネット50、アクセス網30)とサーバ300に対してワンアーム構成で配置しているが、網(インターネット50、アクセス網30)とサーバ300の間に設置するインライン構成で配置してもよい。
(サーバ)
サーバ300は、物理的には1台以上の物理サーバであり、極小規模なシステムを除くと、複数台の物理サーバで構成される。物理サーバ300のCPU311、メモリ312、ストレージ313、NIC(Network Interface Card)314などのハードウェアリソース310を備え、ハードウェアリソース310上で動作する仮想化ソフトウェアのハイパーバイザ320を備え、LinuxなどのOSをゲストOS331とした仮想マシン330を稼動させる。
また、サーバ300で動作する仮想マシン330上の仮想ノードとしては、LTE(Long Term Evolution)の場合、基地局制御装置であるMME、ユーザデータの中継処理を行うS−GWとP−GWを、それぞれ、仮想MME、仮想S−GW、仮想P−GWとして割り当てる。仮想MME、仮想S−GW、仮想P−GWの数は、オペレータが直接指定した数、もしくは、オペレータからの通知される利用ユーザ数、総セッション数、セッションあたりのスループット要求などに基づいて制御サーバ400が決定した数を、制御サーバ400がサーバ300に指示し、初期状態として準備する。図1では、仮想マシン330は、LTEの仮想ノードとして仮想MME332aや仮想S−GW332b、332c、仮想P−GW332d、332eを動作させている様子を示している。
図1では、説明を簡易化するためにサーバ300やロードバランサ200、本実施形態の帯域制御装置100は1台ずつとしているが、それぞれ複数台を用いても構わない。また、ロードバランサ200と帯域制御装置100は一体化した装置を用いても構わない。
(ロードバランサ)
ロードバランサ200は、複数存在する同一機能を備える仮想ノード、例えば、仮想S−GWa333aと仮想S−GWb333bの間の負荷分散や、仮想P−GWa334aと仮想P−GWb334bの間の負荷分散を行うために用いる。図1では、便宜上、仮想S−GWも仮想P−GWも二つずつしか示していないが、実際に運用する際には、数十〜数百、場合によっては数千を超える仮想S−GW333や仮想P−GW334に対して負荷分散を行う。
(帯域制御装置の構成)
帯域制御装置100は、図2に示すように、外部の制御サーバ400と通信して帯域制御装置100内部の制御をおこなう制御部110と、通過パケット量などの指定した通信パケット量の計測を行う統計部111、パケットを保持するバッファを管理するバッファ管理テーブル112、受信パケットのヘッダを解析し、ロードバランサ200と同じ振分けロジックを用いて処理を行うべき仮想ノードの番号の特定と、該当パケットが所属するユーザや通信種類からキュー番号の特定を行うパケットヘッダ解析部120、前記の仮想ノード番号とキュー番号に基づいてパケットを振分ける振分け部130、増減設対応バッファ部140を備える。
増減設対応バッファ部140は、帯域保証したパケット送信を実現する高優先キュー145、ベストエフォートのパケット送信のための低優先キュー146、制御サーバ400から割当要求がない場合は利用しない未使用キュー150、仮想ノード毎に帯域制限を行う仮想ノード用帯域制限部144、増減設対応バッファ部140内のパケットのうちひとつを選択して出力する出力選択部160とを備える。 (帯域制御装置のバッファ管理テーブル)
また、オペレータは、高優先通信の契約を結ぶユーザに関して、図3に示す帯域制御装置100のバッファ管理テーブル112のキュー管理テーブル119へ、保証する帯域を設定する。具体的には、制御サーバ400は、該当ユーザのために未使用キュー150の内のひとつを高優先キュー145として割当て、割当状況を割当済みとして割当状況フィールド191に、割当てたキュー番号をキュー番号フィールド192に、プロトコルや送受信IPアドレスなどで該当通信を区別する通信識別子フィールド193に、該当ユーザを区別するIPアドレスなどの識別子をユーザ識別子フィールド194に、優先度をHIGHとして優先度フィールド195に、保証帯域を保証帯域フィールド196に、キュー長をキュー長フィールド197に、それぞれ記録する。
また、制御サーバ400は、仮想ノード毎の上限帯域を決定し、図3に示す帯域制御装置100のバッファ管理テーブル112の仮想ノード管理テーブル118に記録する。具体的には、仮想ノードに割当てた番号を仮想ノード番号フィールド181に、その仮想ノードの上限帯域を上限帯域フィールド182に記録する。さらに、制御サーバ400は、該当仮想ノードで処理すべきユーザに該当する高優先キュー145の番号と低優先キュー146の番号を接続キューフィールド183に記録する。なお、上限帯域とは、該当仮想ノードに対するパケット送信量の上限を示す。また、接続キューフィールド183は、本例では仮想ノード管理テーブル118内に設けているが、独立させてもよいし、キュー管理テーブル119の中に、接続する仮想ノード番号の情報を記録するフィールドとして設けてもよい。
なお、仮想P−GW334や仮想S−GW333などのデータ転送処理を行う仮想ノードの場合は、上限帯域を指定する上限帯域フィールド182の利用が有効であるが、仮想MME332のような接続処理を行う仮想ノードの場合は、上限帯域フィールド182をトランザクション量の上限を指定するものとして利用するのが好適である。ここで、トランザクション量とは、携帯端末10をモバイル通信網に接続する際に、携帯端末10と仮想MME332の間で複数回のパケットの一連のやり取りがどれだけ行われるかを示す量であり、携帯端末10からの最初の接続要求を示すパケットのみを抽出して、そのパケットの総量(1秒あたり等、一定時間あたりのパケット数)を用いるのが望ましい。
上限帯域フィールド182に記録する値は、様々な決定方法があるが、一例として帯域制御装置100で計測した個別の仮想P−GW334からの出力帯域に対して、同じ仮想P−GW334への入力帯域の比率を算出し、その値が1.0となる値を上限帯域として利用する方法がある。その他、本システムとは別の系で、該当する仮想P−GW334に対して、モバイル網を模擬したダミートラフィックを入力し、仮想P−GW334からの出力帯域に対して、同じ仮想P−GW334への入力帯域の比率を算出し、その値が1.0となる値を上限帯域として利用する方法がある。仮想MME332であれば、接続要求を示すパケットだけを入力し続けて、それに対する返信パケットを生成が正常にできる範囲の最大ケース(1秒間等、一定時間あたりに接続要求パケットをさばける数)を上限帯域(上限トランザクション数)として利用する方法がある。
また、上限帯域フィールド182に記録する値は、一旦記録した後に、定期的に変更してもよい。これは、仮想P−GW334や仮想S−GW333、仮想MME332に到着するパケットの長さや種類の割合が、時々刻々と変化する場合に、適切な上限帯域を再設定するためである。ただし、1時間おきや数時間おきなどのあまりに短い期間で変更するのは、システムが不安定になる恐れがあり、望ましくない。定期的に変更する場合は、1日おき、数日おき、1週間おき、数週間おき、などのある程度長い期間で変更するのが望ましい。
図3の例では、仮想ノード1は上限帯域が1000Mbpsで、通信識別子をS−GWからP−GWへの通信としたキュー1、キュー2、キュー3を接続している。キュー1とキュー2は保証帯域を5Mbpsとした高優先キュー145で、それぞれIPアドレス=10.0.0.1、IP=10.2.1.3をユーザ識別子とし、キュー3は帯域保証を行わない低優先キュー146で高優先キュー145以外のIPアドレスを指定している。
なお、制御サーバ400は、サーバ300で動作する仮想マシン330の上で動作させるアプリケーションとしてもよい。同様に、ロードバランサ200は、サーバ300とは別装置として示したが、ロードバランサ200をサーバ300で動作する仮想マシン330の上で動作させるアプリケーションとしてもよい。同様に、帯域制御装置100は、図1ではサーバ300とは別装置として示したがサーバ300で動作する仮想マシン330の上で動作させるアプリケーションとしても良い。
ただし、ロードバランサ200と帯域制御装置100は、システム上ですべてのパケットが通過する最も負荷の高い部位であるため、過負荷時には仮想マシン330にも過大な負荷がかかり、ロードバランサ200や帯域制御装置100の機能を実行するアプリケーションが稼動しているゲストOS331やそのファームウェアが誤動作を引き起こし、本実施形態で開示した機能を実現できない恐れもある。このため、ロードバランサ200、帯域制御装置100に関しては、サーバ300とは別の専用ハードウェア、もしくは、サーバとして実施する形態が望ましい。
例えば、帯域制御装置100をサーバとして実施する形態の場合、当該サーバは、CPU、メモリ、ストレージ等を有しており、例えば制御部110、統計部111、パケットヘッダ解析部120、振分部130、仮想ノード用帯域制限部144、出力選択部160は、これらの機能を提供するためのソフトウェアプログラムをメモリやストレージ等から読みだしてCPUが実行することにより実現することが可能である。また、バッファ管理テーブル112、高優先キュー145、低優先キュー146、未使用キュー150は、メモリやストレージ等によって実現することが可能である。
(システム全体の動作)
まず、帯域制御装置100を含むシステム全体の平常時の動作について説明する。携帯端末10からの通信は、最初に仮想MMEを介して仮想S−GW、仮想P−GWとインターネットとの間で通信路(トンネル、ベアラ)の確立を行うが、説明を簡易化するため、前記の通信路の確立は完了しているものとする。
本実施形態のモバイルコア網の利用者は、携帯端末10を用いて、最終的には、所望の情報を保持するデータセンタなどの配信サーバ60へアクセスすることによってデータ(ホームページなどのブラウジングする画面や、メールや動画など)をダウンロードする。携帯端末10からのアクセスは、最寄りの無線基地局20を経由して、アクセス網30を通過し、スイッチ500を介して、ロードバランサ200へ転送される。
ロードバランサ200は、携帯端末10からのパケットのヘッダ情報を検査し、モバイル通信の中継処理を行う仮想S−GW333の中の指定したひとつを選択し、該当する仮想S−GW333を示すためのVLANタグなどの識別子をパケットに付与するか、パケットの宛先IPアドレスを置換するかなどしたのち、帯域制御装置100へ転送する。
帯域制御装置100は、後述する手順に従ってパケットをバッファリングしたのち、指定された帯域に従ってパケットを該当する仮想S−GW333に向けて転送する。
仮想S−GW333は、受信したパケットをカプセル化し、スイッチ500へ送信する。スイッチ500は、仮想S−GW333から受信したパケットをロードバランサ200へ転送する。
ロードバランサ200は、受信したパケットのヘッダ情報を検査し、モバイル通信の中継処理を行う仮想P−GW334の中の指定したひとつを選択し、該当する仮想P−GW334を示すためのVLANタグなどの識別子をパケットに付与するか、パケットの宛先IPアドレスを置換するかなどしたのち、帯域制御装置100へ転送する。
帯域制御装置100は、後述する手順に従ってパケットをバッファリングしたのち、指定された帯域に従ってパケットを該当する仮想P−GW334に向けて転送する。
仮想P−GW334は、受信したパケットのカプセルを外し、スイッチ500へ送信する。スイッチ500は、仮想P−GW334から受信したパケットをインターネット50へ送信する。
インターネット50を経由して、指定のデータセンタなどの配信サーバ60に携帯端末10からのパケットが届き、パケットのペイロードの内容に応じて、配信サーバ60は、携帯端末10へ要求されたデータをパケットにして返信する。
配信サーバ60からのパケットは、先に説明した携帯端末10から配信サーバ60へのアクセスとは逆の経路を通って携帯端末10へ届く。すなわち、配信サーバ60からのパケットは、インターネット50を通過し、スイッチ500を介して、ロードバランサ200へ転送される。
ロードバランサ200は、受信したパケットのヘッダ情報を検査し、モバイル通信の中継処理を行う仮想P−GW334の中の指定したひとつを選択し、該当する仮想P−GW334を示すためのVLANタグなどの識別子をパケットに付与するか、パケットの宛先IPアドレスを置換するかなどしたのち、帯域制御装置100へ転送する。
帯域制御装置100は、後述する手順に従ってパケットをバッファリングしたのち、指定された帯域に従ってパケットを該当する仮想P−GW334に向けて転送する。
仮想P−GW334は、受信したパケットをカプセル化し、スイッチ500へ送信する。スイッチ500は、仮想P−GW334から受信したパケットをロードバランサ200へ送信する。
ロードバランサ200は、受信したパケットのヘッダ情報を検査し、モバイル通信の中継処理を行う仮想S−GW333の中の指定したひとつを選択し、該当する仮想S−GW333を示すためのVLANタグなどの識別子をパケットに付与するか、パケットの宛先IPアドレスを置換する等したのち、帯域制御装置100へ転送する。
帯域制御装置100は、後述する手順に従ってパケットをバッファリングしたのち、指定された帯域に従ってパケットを該当する仮想S−GW333に向けて転送する。
仮想S−GW333は、受信したパケットのカプセルを外し、スイッチ500へ送信する。スイッチ500は、仮想S−GW333から受信したパケットをアクセス網30へ送信し、指定された無線基地局20を経由して、携帯端末10へパケットが届く。
(帯域制御装置100の動作)
次に、帯域制御装置100の動作に関して、図2の帯域制御装置100の構成例、図3のバッファ管理テーブル112の構成例、図4の帯域制御装置用フローチャート例を用いて説明する。
帯域制御装置100は、パケットを受信する(図4のステップS800)とパケットヘッダ解析部120で、パケットのヘッダ情報から仮想S−GW333、仮想P−GW334など、どの仮想ノード宛のパケットかを特定するための情報、さらに、該当仮想ノードが仮想P−GWであれば、複数ある仮想P−GW334の中のどの仮想P−GW334宛であるかを特定するための情報、さらに、該当パケットが所属するユーザや通信種類から、保持されるべきキュー番号を特定するための情報を抽出する。便宜上、前記で抽出した情報を検索キーと呼ぶ。
例えば、上り方向の通信(アクセス網30からインターネット50向きの通信)で仮想P−GW334宛であることを特定するためには、仮想S−GW333と仮想P−GW334の間で、例えば、GRE(Generic Routing Encapsulation)トンネルが確立されているはずなので、GREのパケットフォーマットであること、パケットの送信元IPアドレスが仮想S−GW333を示すこと、宛先IPアドレスが仮想P−GW334を示すことを特定すればよい。よって、これらの条件(パケットフォーマット、送信元IPアドレス、宛先IPアドレス)を検索キーとして抽出する。
また、前記の場合、GREのパケットヘッダからGREキーと呼ぶ識別子を、複数ある仮想P−GW334の中のどの仮想P−GW334宛であるかを特定するための検索キーとして抽出する。GREキーは、ユーザを特定するためにも利用できるため、キュー番号を特定するための検索キーとしても抽出する。
振分部130は、パケットと前記の検索キーを受信すると、ロードバランサ200と同じ振分け論理により、どの仮想ノード宛か(例えば仮想P−GW334のいずれ宛か)を決定する(ステップS801)。
例えば、振分け論理にハッシュ関数を利用していれば、検索キーに対してハッシュ関数を適用し、得られた演算結果の番号を所定の一覧表に照らし合わせ、仮想ノード番号として扱うことで、仮想ノードを特定する。例えば、図9の左側に示す振分けテーブル117を備え、ハッシュ関数の結果をハッシュ値フィールド171の値として扱い、該当エントリに対応する仮想ノードフィールド172に書き込まれている値を仮想ノード番号として扱う。
また、振分け論理にハッシュ関数を利用しないテーブルを利用していれば、検索キーをインデックスにしてテーブルを検索し、該当エントリに記載されている仮想ノード番号を読み出すことで仮想ノードを特定する。
また、振分部130は、前述の例ではGREキーを検索キーとしてキュー番号を特定する(ステップS802)。
いずれにしても、振分け部130は、該当パケットが処理されるべき仮想ノード番号とキュー番号を特定すると、増減設対応バッファ部140の該当するキューのバッファ残量を確認し、バッファに空き領域が存在すれば、該当パケットを該当する高優先キュー145、または、低優先キュー146に格納する(ステップS803→ステップS804)。
バッファに空き領域が存在しなかったり、存在していてもRED(Random Early Drop)などのアルゴリズムを適用していたりして、パケットの廃棄条件を満たしていれば、該当パケットを格納せずに廃棄する(ステップS803→ステップS806)
仮想ノード用帯域制限部144は、仮想ノード毎に上限帯域を設定しておき、所定のアルゴリズムに従って保証帯域を提供する高優先キュー145、または、保証帯域は提供しない低優先キュー146からパケットを取り出しつつ、該当仮想ノードが処理できる量のパケットとなるように各仮想ノードへのパケット送信量を調整し、出力選択部160から該当パケットを出力する(ステップS805)。
なお、好ましい実施形態では、パケット取り出しの際には、ラウンドロビン方式で複数ある仮想ノード用帯域制限部144の一つを選択する。また、高優先キュー145と低優先キュー146を設けている場合には、各仮想ノード用帯域制限部144は、高優先キュー145からのパケット取出しを優先する。
別の好ましい実施形態としては、高優先キュー145にパケットがある場合には、常に高優先キュー145からの取り出しを優先するストリクトプライオリティ、高優先キュー145にパケットがあっても、一定の割合で低優先キュー146からの取り出しを行う重み付きラウンドロビンなどのアルゴリズムを適用する。
(帯域制御装置100のキュー)
増減設対応バッファ部140は、初期状態では、複数のキューを未使用キュー150として保持し、制御サーバ400からの指示に従い、該当するユーザの通信に未使用キュー150を高優先キュー145、または、低優先キュー146として割当て、該当する仮想ノード毎に仮想ノード用帯域制限部144を割当て、仮想ノード用帯域制限部144と該当する高優先キュー145、および、低優先キュー146を関連付ける。
なお、別の実施形態としては、高優先キュー145と低優先キュー146のように2レベルの優先キューではなく、複数レベルの優先キューを設け、ユーザ毎に、リアルタイム性を要するVoIP(Voice over IP)やリアルタイム映像は高い優先度のキューに、TCP(Transmission Control Protocol)で運ばれる電子メールやファイル、ウェブブラウジングなどは低い優先度のキューに割当て、ユーザ内での通信の優先順位付けを行っても良い。
なお、ユーザ毎に高優先、低優先を区別しない場合は、該当ユーザの通信をひとつの高優先キュー145、または、低優先キュー146を割当てるか、高優先、低優先の区別をなくしたキューに割当てても良い。
以上で説明したキューの構成は、仮想ノード用帯域制限部144を1階層目、高優先キュー145と低優先キュー146を2階層目、とした場合、2階層のシェーピングを行う形式となる。
また、1個以上の仮想MME332のグループ、1個以上の仮想S−GW333のグループ、1個以上の仮想P−GW334のグループ、として、それぞれの仮想ノード種別毎の合計値としても帯域制限を行う場合は、図5に示すように、1階層目を仮想P−GW334だけ等の仮想ノード種類単位で帯域制限を行う仮想ノード種別用帯域制限部143、2階層目をP−GW334等の個別の仮想ノードで帯域制限を行う仮想ノード用帯域制限部144、3階層目を高優先キュー145と低優先キュー146として、3階層のシェーピングを行う形式となる。
例えば、図1の仮想P−GW334a、仮想P−GW334b全体の帯域制限用に図5の仮想ノード種別用帯域制限部143aを割当て、個別の仮想P−GW334a用の帯域制限に仮想ノード用帯域制限部144aを、仮想P−GW334b用の帯域制限に仮想ノード用帯域制限部144bを割当てる。
また、MVNO(Mobile Virtual Network Operator)を想定し、複数の通信事業者が、本実施形態のシステムを共有利用する場合は、図5の仮想ノード種別用帯域制限部143と出力選択部160の間に、事業者毎の帯域制限部を1階層加えて、全体として4階層のシェーピングを行う形式となる。もしくは、図5の仮想ノード種別用帯域制限部143を、事業者毎の帯域制限部として扱い、3階層のシェーピングを行う形式としても良い。
いずれの形式でも、一番下の階層となる高優先キュー145では最低保証帯域を設定し、通信帯域を保証する。残りの全ての階層では、上限帯域を設定し、該当する事業者のシステムや仮想ノードに対して、指定した以上の通信が流れ込まないことを保証する。
なお、高優先キュー145の保証帯域の合計値は、仮想ノード用帯域制限部144や仮想ノード種別用帯域制限部143の上限帯域を超えない値となるようにする必要がある
(スケールアウトの動作)
次に、図6を用いて、本実施形態で、仮想P−GW334等の仮想ノードを増減する(スケーリングする)際の動作について説明する。帯域制御装置100は、仮想P−GW334や仮想S−GW333などの仮想ノードの種別毎に、該当装置に向けて送信されるものとして帯域制御装置100で受信したパケットの総量(1秒あたり等、一定時間あたりのパケット数とビット数)と、個別の仮想ノード宛として帯域制御装置100で受信したパケットの総量(1秒あたり等、一定時間あたりのパケット数とビット数)の計測を常時行う(ステップS601)。これらの計測結果は、仮想P−GW334や仮想S−GW333などのデータ転送処理を行う仮想ノードの増減設を判断するのに好適である。
また、仮想MME332のような接続処理を行う仮想ノードの増減設を判断するためには、携帯端末10をモバイル通信網に接続する際に、携帯端末10と仮想MME332の間で複数回のパケットのやり取りが行われるため、帯域制御装置100は、仮想MME332宛のパケットのうち、携帯端末10からの最初の接続要求を示すパケットのみを抽出して、そのパケットの総量(1秒あたりのパケット数)を計測して用いるのが好適である。
制御サーバ400は、3秒おきや10秒おき、1分おきなど、あらかじめ指定したタイミングで定期的に帯域制御装置100へ計測読出し要求を通知する(ステップS602)。帯域制御装置100は、これに応える形で計測量通知を行う(ステップS721)。なお、あらかじめ制御サーバ400から計測結果を定期的に通知するタイミングを指定しておき、帯域制御装置100が、能動的に制御サーバ400へ計測結果を通知してもよい。また、帯域制御装置100は、制御サーバ400から指定された条件(トラフィックが急増、急減等)に達するまでは1分おきや10分おきなど、比較的長い時間粒度で計測結果を通知し、指定された条件に達した場合に、3秒おきや10秒おきなど、比較的短い時間粒度で計測結果を通知してもよい。
帯域制御装置100の視点から見ると、図7のフローチャートでステップS700→ステップS720→ステップS721と遷移し、統計部111で計測した計測結果を制御サーバ400に通知する。なお、通知すべき計測内容の設定に関しては、図7のフローチャートでステップS700→ステップS701→ステップS702→ステップS703→ステップS714と遷移し、仮想ノードの増減設トリガ用の計測内容の情報を受信し、制御部110を介して統計部111に対して設定を行う。
制御サーバ400は、計測量通知を受信すると、仮想S−GW333や仮想P−GW334などの仮想ノードの種類毎に過去の計測履歴と最新の計測履歴を勘案し、所定の閾値を超えるなどの増設条件に達するかどうかを判定する。すなわち、必要な仮想ノード数を計算する(図6のステップS603)。増設条件に達しない場合は、システムの構成をそのまま維持する(図6のS600の増減設なしのフローチャートに相当)。増設条件に達した場合、該当する仮想ノードの増設(スケールアウト)を実施する。(図6のS610の増設ありのフローチャートに相当)。
ここでは、仮想P−GW334の増設条件に達した場合の動作について、図6、図7のフローチャートと図8に示す帯域制御装置100内の増減設対応バッファ部140の変更説明図、図9に示す振分けテーブル117の変更説明図を用いて説明する。本例では、高優先通信を契約するユーザの数は増えずに、インターネットライブなどのイベントが生じて、ユーザが一斉に動画視聴を開始し、ユーザあたりのトラフィック量が増加するケースで説明する。
本例では、仮想P−GW334を1台増設する場合について説明するが、2台以上増設する場合も、以下の説明を踏襲することで対応可能である。仮想P−GW334の増設条件に達した場合、制御サーバ400は、サーバ300に対して増加させる仮想P−GW334分の仮想マシン330の準備、および、該当仮想マシン330上での仮想P−GW334プログラムの起動を指示する(図6のステップS611)。また、起動した仮想P−GW334cに対して、既に稼働中の仮想P−GW334a,334bのから、移動する通信セッションのステート情報のコピーを行う(図6のステップS612)。
該当仮想ノード(仮想P−GW334)が起動すると、制御サーバ400は、帯域制御装置100に対して増設した仮想ノード(仮想P−GW334)分のキュー増設設定を通知する(図6のステップS620)。本例では、図8に示すように、高優先キュー145は追加せず、追加した仮想P−GW334分の低優先キュー146cを1本追加する。
帯域制御装置100の視点から見ると、図7のフローチャートでステップS700→ステップS701→ステップS711と遷移し、対象キューの番号、処理内容(追加/削除/更新)、識別子、優先度、キュー長、保証帯域を設定する。図8の例では、帯域制御装置100の制御部110は、制御サーバ400から、追加するキューの番号、 処理内容として「追加」、識別子として「通信識別子(仮想S−GW333から仮想P−GW334であることを示す情報)」、優先度として「低優先」、キュー長として例えば「8Kbyte」、の情報を受信し、バッファ管理テーブル112のキュー管理テーブル119へ記録する。そして、制御部110は、キュー管理テーブル119の内容を増減設対応バッファ部140に対して設定する。なお、設定内容が低優先キューだけであるため保証帯域の設定値は有効な値を受け取らない。
次に、制御サーバ400は、帯域制御装置100に対して増設した仮想ノード(仮想P−GW334)分の仮想ノード増設設定を通知する(図6のステップS621)。本例では、図8に示すように、仮想ノード用帯域制限部144cを追加する。
帯域制御装置100の視点から見ると、図7のフローチャートでステップS700→ステップS701→ステップS702→ステップS712と遷移し、対象仮想ノードの番号、 処理内容(追加/削除/更新)、上限帯域を設定する。図8の例では、帯域制御装置100の制御部110は、制御サーバ400から、追加する仮想ノードの番号、処理内容として「追加」、上限帯域として例えば「1000Mbps」の情報を受信し、バッファ管理テーブル112の仮想ノード管理テーブル118へ記録する。そして、制御部110は、仮想ノード管理テーブル118の内容を増減設対応バッファ部140に対して設定する。
次に、制御サーバ400は、帯域制御装置100に対してキューと仮想ノード(仮想P−GW334)の接続変更(対応付け変更)と振分け変更の設定を通知する(図6のステップS622)。本例では、図8に示すように、高優先キュー145cと高優先キュー145fを仮想ノード用帯域制限部144cに繋ぎ換え、低優先キュー146cも仮想ノード用帯域制限部144cに繋ぐ(つまり、高優先キューおよび低優先キューと仮想ノード用帯域制限部との対応付けを変更する)。また、振分けのための振分けテーブルのエントリ内容を更新することで、増設に対応した振分けを実現する。
帯域制御装置100の視点から見ると、図7のフローチャートでステップS700→ステップS701→ステップS702→ステップS703→ステップS713と遷移し、対象キューと対象仮想ノードの接続変更(対応付け変更)と振分変更を設定する。図8の例では、帯域制御装置100の制御部110は、接続変更として、制御サーバ400から、仮想ノード1(仮想P−GW334a)の仮想ノード用帯域制限部144aから高優先キュー145cを、仮想ノード2(仮想P−GW334b)の仮想ノード用帯域制限部144bから高優先キュー145fを、それぞれ取り除き、仮想ノード3(仮想P−GW334c)の仮想ノード用帯域制限部144cに接続すること、また、低優先キュー146cも仮想ノード用帯域制限部144cに接続することを「対象キューと対象仮想ノードの接続変更」情報として受信し、バッファ管理テーブル112の仮想ノード管理テーブル118の接続キューフィールド183へ記録する。そして、制御部110は、仮想ノード管理テーブル118の内容を増減設対応バッファ部140に対して設定する。
なお、図8に基づいた以上の説明では、高優先キュー145は追加せず、追加した仮想P−GW334分の低優先キュー146cを1本追加する場合の動作に関して説明したが、仮想ノード用帯域制限部144cを追加する際に、高優先キュー145も新規に追加し、これまで、仮想ノード用帯域制限部144a、144bに接続し扱っていた高優先キュー145c、145fの通信セッションを仮想ノード用帯域制限部144c用に新規追加した高優先キュー145で扱うようにしてもよい。この場合、キュー管理テーブル119の該当するキュー番号のエントリをいったん削除するか、無効状態として扱い、新規追加した高優先キューのエントリ情報を追加すればよい。
また、振分変更として、図9の振分けテーブル117の増減設前後の変更図に示すように、振分けにハッシュ関数を用いている場合は、ハッシュ値フィールド171に対する仮想ノード番号フィールド172の値を、増設前は1(仮想P−GW334aに相当)と2(仮想P−GW334bに相当)だけだったものを、増設後は1、2に3(仮想P−GW334cに相当)も加えるように更新する。
以上の制御により、帯域制御装置100の設定変更を終えると、制御サーバ400は、ロードバランサ200に対して振分け情報の再設定を通知する(図6のステップS630)。具体的には、帯域制御装置100の振分変更で説明した図9の振分けテーブル117の設定変更と同等の処理をロードバランサ200に対して実施する。
以上の設定が全て完了すると、仮想P−GW334の増設が完了となり、以後、ロードバランサ200と帯域制御装置100を経由して、2台から3台に増設された仮想P−GW334を利用したモバイル通信の中継処理が行われることになる。
本例では、高優先通信を契約するユーザの数は増えずに、インターネットライブなどのイベントが生じて、ユーザが一斉に動画視聴を開始し、ユーザあたりのトラフィック量が増加するケースで説明したが、ユーザ数が急増して総トラフィック量が増加するケース、両ケースの混在ケースも存在する。これらのケースの場合は、高優先キュー145を新規追加することだけが先に説明したケースとの違いであり、残りの処理は先の説明と同様に行えばよい。
(スケールインの動作)
次に、仮想P−GW334の減設条件に達した場合の動作について、図10、図7のフローチャートと図8に示す帯域制御装置100内の増減設対応バッファ部140の変更説明図、図9に示す振分けテーブル117の変更説明図を用いて説明する。
本例では、高優先通信を契約するユーザの数は増えずに、インターネットライブなどのイベントが終了して、ユーザが一斉に動画視聴を終了し、ユーザあたりのトラフィック量が減少するケースで説明する。
制御サーバ400は、3秒おきや10秒おき、1分おきなど、あらかじめ指定したタイミングで定期的に帯域制御装置100へ計測読出し要求を通知する(図10のステップS602)。帯域制御装置100は、これに応える形で計測量通知を行う(図10のステップS721)。
制御サーバ400は、計測量通知を受信すると、仮想S−GW333や仮想P−GW334などの仮想ノードの種類毎に過去の計測履歴と最新の計測履歴を勘案し、所定の閾値を下回るなどの減設条件に達するかどうかを判定する。すなわち、必要な仮想ノード数を計算する(図10のステップS603)。減設条件に達した場合、該当する仮想ノードの減設(スケールイン)を実施する(図10のS609の減設ありのフローチャートに相当)。
本例では、仮想P−GW334を1台減設する場合について説明するが、2台以上減設する場合も、以下の説明を踏襲することで対応可能である。
制御サーバ400は、サーバ300に対して、減設する仮想P−GW334cから、存在を維持する仮想P−GW334a,334bに対して移動する通信セッションのステート情報のコピーを行う(図10のステップS613)。
続いて、制御サーバ400は、帯域制御装置100に対して、キューと仮想ノード(仮想P−GW334)の接続変更(対応付け変更)と振分け変更の設定を通知する(図10のステップS622)。本例は、図8の逆の例、すなわち、増設後から増設前に戻す例に相当する。このため、高優先キュー145cを仮想ノード用帯域制限部144aに、高優先キュー145fを仮想ノード用帯域制限部144bに、それぞれ繋ぎ換え、低優先キュー146cと仮想ノード用帯域制限部144cの接続を解除する(つまり、高優先キューおよび低優先キューと仮想ノード用帯域制限部との対応付けを変更する)。また、振分けのための振分けテーブルのエントリ内容を更新することで、減設に対応した振分けを実現する。
帯域制御装置100の視点から見ると、図7のフローチャートでステップS700→ステップS701→ステップS702→ステップS703→ステップS713と遷移し、対象キューと対象仮想ノードの接続変更(対応付け変更)と振分変更を設定する。本例では、帯域制御装置100の制御部110は、接続変更として、制御サーバ400から、前述の接続変更の情報を「対象キューと対象仮想ノードの接続変更」情報として受信し、バッファ管理テーブル112の仮想ノード管理テーブル118の接続キューフィールド183へ記録する。そして、制御部110は、仮想ノード管理テーブル118の内容を増減設対応バッファ部140に対して設定する。
なお、図8に基づいた以上の説明では、高優先キュー145cと高優先キュー145fの接続変更する場合の動作に関して説明したが、仮想ノード用帯域制限部144a、144bにおいて追加で扱う高優先キュー145をキュー管理テーブル119に新規追加するか、無効化しておいたものを再度有効化して、仮想ノード用帯域制限部144a、144bに接続して利用するようにしてもよい。
また、この場合の振分変更は、図9の振分けテーブル117の増減設前後の変更図の例の逆の例、すなわち、増設後から増設前に戻す例に相当する。振分けにハッシュ関数を用いている場合は、ハッシュ値フィールド171に対する仮想ノード番号フィールド172の値を、減設前は1(仮想P−GW334aに相当)と2(仮想P−GW334bに相当)と3(仮想P−GW334cに相当)であったところを、減設後は1、2だけに更新する。
次に、制御サーバ400は、帯域制御装置100に対して減設した仮想ノード(仮想P−GW334c)分のキュー減設設定を通知する(図10のステップS623)。本例では、図8に示すように、減設する仮想P−GW334c分の低優先キュー146cを1本削除する。
帯域制御装置100の視点から見ると、図7のフローチャートでステップS700→ステップS701→ステップS711と遷移し、対象キューの番号、処理内容(追加/削除/更新)、識別子、優先度、キュー長、保証帯域を設定する。図8の逆の例では、帯域制御装置100の制御部110は、制御サーバ400から、削除するキューの番号、処理内容として「削除」、識別子として「通信識別子(仮想S−GW333から仮想P−GW334であることを示す情報)」、の情報を受信し、バッファ管理テーブル112のキュー管理テーブル119へ記録する。そして、制御部110は、キュー管理テーブル119の内容を増減設対応バッファ部140に対して設定する。なお、設定内容が削除であるため、優先度と、キュー長、保証帯域の設定値は有効な値を受け取らない。
次に、制御サーバ400は、帯域制御装置100に対して減設した仮想ノード(仮想P−GW334c)分の仮想ノード減設設定を通知する(図10のステップS624)。本例では、図8の逆の例として示すように、仮想ノード用帯域制限部144cを削除する。
帯域制御装置100の視点から見ると、図7のフローチャートでステップS700→ステップS701→ステップS702→ステップS712と遷移し、対象仮想ノードの番号、 処理内容(追加/削除/更新)、上限帯域を設定する。図8の逆の例では、帯域制御装置100の制御部110は、制御サーバ400から、削除する仮想ノードの番号、処理内容として「削除」の情報を受信し、バッファ管理テーブル112の仮想ノード管理テーブル118へ記録する。そして、制御部110は、仮想ノード管理テーブル118の内容を増減設対応バッファ部140に対して設定する。なお、設定内容が削除であるため、上限帯域の設定値は有効な値を受け取らない。
以上の制御により、帯域制御装置100の設定変更を終えると、制御サーバ400は、ロードバランサ200に対して振分け情報の再設定を通知する(図10のステップS630)。具体的には、帯域制御装置100の振分変更で説明した図9の振分けテーブル117の設定変更の逆の変更と同等の処理をロードバランサ200に対して実施する。
これで、減設した仮想ノードである仮想P−GW334cにはパケットが到着しなくなるため、制御サーバ400は、サーバ300に対して該当する仮想ノードの減設設定を行い、仮想P−GW334cを削除する(図10のステップS614)。
以上の設定が全て完了すると、仮想P−GW334cの減設が完了となり、以後、ロードバランサ200と帯域制御装置100を経由して、3台から2台に減設された仮想P−GW334を利用したモバイル通信の中継処理が行われることになる。
本例では、高優先通信を契約するユーザの数は減らずに、インターネットライブなどのイベントが終了して、ユーザが一斉に動画視聴を終了し、ユーザあたりのトラフィック量が減少するケースで説明したが、ユーザ数が急減して総トラフィック量が減少するケース、両ケースの混在ケースも存在する。これらのケースの場合も、先の説明と同様に行えばよい。
(本実施形態でシステムを保護が可能な理由)
以上に説明した本実施形態によれば、帯域制御装置100の増減設対応バッファ部140に設けた仮想ノード用帯域制限部144や仮想ノード種別用帯域制限部143を導入することで、平常時、および、スケールアウトの最中、いずれであっても仮想S−GW333や仮想P−GW334などの仮想ノードには過剰な通信流入がなくなるため、システム保護が可能となる。
(本実施形態で高優先ユーザの通信を保護が可能な理由)
また、本実施形態によれば、帯域制御装置100の増減設対応バッファ部140に高優先キュー145を導入することで、追加料金を払ってでも品質の良い通信を望むユーザの通信に対して、過負荷状況においてもパケットロスを回避し、高品質な通信を提供し続けることができる。
(本実施形態で増減設を繰り返してもシステム保護が可能な理由)
また、本実施形態によれば、仮想P−GW334などの仮想ノードの増減設(スケールアウト、スケールイン)時に、帯域制御装置100の増減設対応バッファ部140のバッファ管理テーブル112を用いて制御して、高優先キュー145と低優先キュー146、仮想ノード用帯域制限部144との接続関係を更新制御することで、仮想ノードの増減設を繰り返しても、システムダウンを招かず、優先ユーザに対して品質の良い通信を提供し続けることができる。
10:携帯端末、20:無線基地局、30:アクセス網、50:インターネット、60:配信サーバ、100:帯域制御装置、110:制御部、111:統計部、112:バッファ管理テーブル、117:振り分けテーブル、118:仮想ノード管理テーブル、119:キュー管理テーブル、120:パケットヘッダ解析部、130:振分部、140:増減設対応バッファ部、143:仮想ノード種別用帯域制限部、144:仮想ノード用帯域制限部、145:高優先キュー、146:低優先キュー、150:未使用キュー、160:出力選択部、200:ロードバランサ、300:サーバ、310:ハードウェアリソース、311:CPU、312:メモリ、313:ストレージ、314:NIC、320:ハイバーバイザ、330:仮想マシン、331:ゲストOS、332:仮想MME、333:仮想S−GW、334:仮想P−GW、400:制御サーバ、500:スイッチ

Claims (17)

  1. サーバ装置に備えられた複数の仮想ノードへパケットを送信する帯域制御装置であって、
    前記帯域制御装置の制御をおこなう制御部と、
    前記パケットを保持するキューを制御するバッファ部と、を有し、
    前記バッファ部は、
    高優先のパケットを保持し、パケット送信量を所定の保証帯域で保証する複数の高優先キューと、
    低優先のパケットを保持する複数の低優先キューと、
    前記仮想ノード毎に備えられ、複数の前記高優先キューおよび前記低優先キューの中で自身に対応付けられた高優先キューおよび低優先キューからパケットを読み出して前記仮想ノード毎に定められた上限帯域に制限する仮想ノード用帯域制限部と、を有し、
    前記仮想ノードの増減設を判断する制御サーバから指示を受けた前記制御部からの指示により、
    前記バッファ部は、前記高優先キューおよび前記低優先キューと前記仮想ノード用帯域制限部との対応付けを変更することを特徴とする帯域制御装置。
  2. 請求項1に記載の帯域制御装置であって、
    前記制御サーバが前記仮想ノードを増設することを判断した場合、前記制御部からの指示により、
    前記バッファ部は、増設された仮想ノード用の新たな仮想ノード用帯域制限部と新たな低優先キューを追加して対応付けるとともに、他の仮想ノード用帯域制限部に対応付けられていた高優先キューを前記新たな仮想ノード用帯域制限部に対応付けるよう変更し、
    前記新たな仮想ノード用帯域制限部は、自身に対応付けられた前記高優先キューおよび前記新たな低優先キューからパケットを読み出して前記増設された仮想ノードに定められた上限帯域に制限することを特徴とする帯域制御装置。
  3. 請求項1に記載の帯域制御装置であって、
    前記制御サーバが前記仮想ノードを増設することを判断した場合、前記制御部からの指示により、
    前記バッファ部は、増設された仮想ノード用の新たな仮想ノード用帯域制限部と新たな高優先キューおよび新たな低優先キューとを追加して対応付けるとともに、他の仮想ノード用帯域制限部に対応付けられていた高優先キューを削除するか無効化し、
    前記新たな仮想ノード用帯域制限部は、前記新たな高優先キューおよび前記新たな低優先キューからパケットを読み出して前記増設された仮想ノードに定められた上限帯域に制限することを特徴とする帯域制御装置。
  4. 請求項1から請求項3のいずれかに記載の帯域制御装置であって、
    前記制御サーバが前記仮想ノードを減設することを判断した場合、前記制御部からの指示により、
    前記バッファ部は、減設される仮想ノード用の仮想ノード用帯域制限部に対応付けられていた高優先キューを他の仮想ノード用帯域制限部に対応付けるよう変更し、減設される仮想ノード用の仮想ノード用帯域制限部に対応付けられていた低優先キューを削除し、減設される仮想ノード用の仮想ノード用帯域制限部を削除することを特徴とする帯域制御装置。
  5. 請求項1から請求項3のいずれかに記載の帯域制御装置であって、
    前記制御サーバが前記仮想ノードを減設することを判断した場合、前記制御部からの指示により、
    前記バッファ部は、減設される仮想ノード用の仮想ノード用帯域制限部に対応付けられていた高優先キューと低優先キューを削除し、かつ、減設される仮想ノード用の仮想ノード用帯域制限部を削除し、前記減設される仮想ノード用の仮想ノード用帯域制限部に対応付けられていた高優先キューに相当する高優先キューを新たに作成し、残った仮想ノード用の仮想ノード用帯域制限部に対応付けることを特徴とする帯域制御装置。
  6. 請求項1から請求項5のいずれかに記載の帯域制御装置であって、
    所定の通信パケット量を計測する統計部と、
    前記バッファ部を管理するためのバッファ管理テーブルと、をさらに有し、
    前記制御部は、
    前記統計部で計測した計測結果を前記制御サーバへ送信し、
    前記制御サーバからの前記指示として、前記高優先キューおよび前記低優先キューの設定情報と、前記仮想ノード用帯域制限部の設定情報と、前記高優先キューおよび前記低優先キューと前記仮想ノード用帯域制限部との間の対応付けを決定する設定情報と、を受信して前記バッファ管理テーブルに記録し、
    前記バッファ管理テーブルに記録した設定内容に基づいて、前記バッファ部に前記対応付けを変更するための指示をすることを特徴とする帯域制御装置
  7. 請求項6に記載の帯域制御装置であって、
    前記制御部は、前記制御サーバから前記計測結果の読出し要求があった場合、または、予め設定した時刻に達した場合に、前記制御サーバへ前記計測結果を送信することを特徴とする帯域制御装置。
  8. 請求項6または請求項7に記載の帯域制御装置であって、
    前記バッファ管理テーブルは、
    前記仮想ノードを識別するための仮想ノード番号と、
    前記仮想ノード毎に定められた上限帯域と、
    前記仮想ノード用帯域制限部に対応付けられたキューを識別するための対応キュー情報と、
    前記バッファ部が備えるキューが前記高優先キューまたは前記低優先キューとして割り当てられているかを識別する割当状況と、
    前記バッファ部が備えるキューを識別するキュー番号と、
    前記キューに格納するパケットの通信を識別するための通信識別子と、
    前記キューに格納するパケットのユーザを識別するためのユーザ識別子と、
    前記キューを前記高優先キューと前記低優先キューのいずれとして扱うか示す優先度と、
    前記高優先キューにおいてパケット送信量を保証するための保証帯域と、
    前記高優先キューまたは前記低優先キューのキュー長と、
    を管理することを特徴とする帯域制御装置。
  9. 請求項6から請求項8のいずれかに記載の帯域制御装置であって、
    前記仮想ノードがデータ転送処理を行う通信ノードである場合、
    前記統計部は、前記帯域制御装置で受信した一定時間あたりのパケットのパケット数、または、ビット数を前記仮想ノード毎に計測したものを前記所定の通信パケット量とし、
    前記仮想ノードが接続処理を行う通信ノードである場合、
    前記統計部は、前記帯域制御装置で受信した一定時間あたりの最初の接続要求を示すパケットのパケット数を前記仮想ノード毎に計測したものを前記所定の通信パケット量とすることを特徴とする帯域制御装置。
  10. 請求項1から請求項9のいずれかに記載の帯域制御装置であって、
    前記上限帯域、および、前記保証帯域は、
    前記仮想ノードがデータ転送処理を行う通信ノードである場合、一定時間あたりのパケットのパケット数、または、ビット数で定められ、
    前記仮想ノードが接続処理を行う通信ノードである場合、一定時間あたりの最初の接続要求を示すパケットのパケット数で定められることを特徴とする帯域制御装置。
  11. 請求項1から請求項10のいずれかに記載の帯域制御装置であって、
    前記上限帯域は、前記制御サーバから定期的に更新されることを特徴とする帯域制御装置。
  12. 請求項1から請求項11のいずれかに記載の帯域制御装置であって、
    前記仮想ノード用帯域制限部は、1階層目の帯域制御として前記上限帯域を使用した上限帯域制御を行い、
    前記高優先キューは、2階層目の帯域制御として前記保証帯域を使用した保証帯域制御を行うことを特徴とする帯域制御装置。
  13. 請求項1から請求項11のいずれかに記載の帯域制御装置であって、
    前記バッファ部は、さらに、仮想ノード種別毎に帯域制御を行う仮想ノード種別用帯域制限部を備え、
    前記仮想ノード種別用帯域制御部は、1階層目の帯域制御として前記仮想ノード種別毎に定められた第2の上限帯域を使用した上限帯域制御を行い、
    前記仮想ノード用帯域制限部は、2階層目の帯域制御として前記上限帯域を使用した上限帯域制御を行い、
    前記高優先キューは、3階層目の帯域制御として前記保証帯域を使用した保証帯域制御を行うことを特徴とする帯域制御装置。
  14. 請求項1から請求項11のいずれかに記載の帯域制御装置であって、
    前記バッファ部は、さらに、通信事業者毎に帯域制御を行う通信事業者用帯域制限部を備え、
    前記通信事業者用帯域制限部は、1階層目の帯域制御として前記通信事業者毎に定められた第3の上限帯域を使用した上限帯域制御を行い、
    前記仮想ノード用帯域制限部は、2階層目の帯域制御として前記上限帯域を使用した上限帯域制御を行い、
    前記高優先キューは、3階層目の帯域制御として前記保証帯域を使用した保証帯域制御を行うことを特徴とする帯域制御装置。
  15. 請求項1から請求項14のいずれかに記載の帯域制御装置であって、さらに、
    受信パケットのヘッダを解析し、処理を行うべき仮想ノード情報と、該当パケットを保持するキュー情報を特定するヘッダ解析部と、
    前記仮想ノード情報と前記キュー情報に基づいてパケットを前記高優先キューおよび前記低優先キューに振分ける振分部と、を有し、
    前記振分部は、前記サーバ装置とネットワークを介して接続され、適切な仮想ノードへモバイル通信を振分けるためのロードバランサと同じ振分アルゴリズムを使用することを特徴とする帯域制御装置。
  16. 請求項1から請求項14のいずれかに記載の帯域制御装置であって、
    前記帯域制御装置は、専用のハードウェアで構成することを特徴とする帯域制御装置。
  17. 請求項1から請求項14のいずれかに記載の帯域制御装置であって、
    前記帯域制御装置は、前記サーバ装置の仮想マシンによって構成することを特徴とする帯域制御装置。
JP2014020916A 2014-02-06 2014-02-06 帯域制御装置 Ceased JP2015149577A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014020916A JP2015149577A (ja) 2014-02-06 2014-02-06 帯域制御装置
US14/530,847 US20150222561A1 (en) 2014-02-06 2014-11-03 Bandwidth control apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014020916A JP2015149577A (ja) 2014-02-06 2014-02-06 帯域制御装置

Publications (1)

Publication Number Publication Date
JP2015149577A true JP2015149577A (ja) 2015-08-20

Family

ID=53755788

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014020916A Ceased JP2015149577A (ja) 2014-02-06 2014-02-06 帯域制御装置

Country Status (2)

Country Link
US (1) US20150222561A1 (ja)
JP (1) JP2015149577A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017037471A (ja) * 2015-08-10 2017-02-16 日本電信電話株式会社 品質制御装置、および、品質制御方法
JP2017097466A (ja) * 2015-11-19 2017-06-01 富士通株式会社 ストレージ制御装置、ストレージ制御方法およびストレージ制御プログラム
WO2019235442A1 (ja) * 2018-06-04 2019-12-12 日本電信電話株式会社 ネットワークシステムおよびネットワーク帯域制御管理方法

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101877595B1 (ko) * 2013-10-28 2018-07-12 주식회사 케이티 서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법
KR101596139B1 (ko) * 2014-05-14 2016-02-19 엘에스산전 주식회사 고전압 직류 송전 시스템의 데이터 처리 장치 및 그 방법
US9930587B2 (en) * 2015-09-18 2018-03-27 Huawei Technologies Co., Ltd. Distributed virtual gateways
US10645528B2 (en) 2015-09-18 2020-05-05 Huawei Technologies Co., Ltd. System and methods for reliable communication with mobility along a predictable route
CN106817432B (zh) * 2015-11-30 2020-09-11 华为技术有限公司 云计算环境下虚拟资源弹性伸展的方法,系统和设备
US10075965B2 (en) * 2016-04-06 2018-09-11 P2 Solutions Limited Apparatus and method for detecting and alleviating unfairness in wireless network
JP6810339B2 (ja) * 2016-08-15 2021-01-06 富士通株式会社 空き帯域測定プログラム、空き帯域測定方法、および空き帯域測定装置
US10178033B2 (en) * 2017-04-11 2019-01-08 International Business Machines Corporation System and method for efficient traffic shaping and quota enforcement in a cluster environment
US11546054B2 (en) * 2020-12-29 2023-01-03 Hughes Network Systems, Llc Utilizing leftover return channel bandwidth in a satellite system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002208952A (ja) * 2001-01-12 2002-07-26 Nec Corp セル送出制御装置
JP2010161546A (ja) * 2009-01-07 2010-07-22 Hitachi Ltd ネットワーク中継装置およびパケット振り分け方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7802000B1 (en) * 2005-08-01 2010-09-21 Vmware Virtual network in server farm
US8537846B2 (en) * 2010-04-27 2013-09-17 Hewlett-Packard Development Company, L.P. Dynamic priority queue level assignment for a network flow
US8537669B2 (en) * 2010-04-27 2013-09-17 Hewlett-Packard Development Company, L.P. Priority queue level optimization for a network flow
US9450873B2 (en) * 2011-06-28 2016-09-20 Microsoft Technology Licensing, Llc Performance isolation for clouds
CA2750345C (en) * 2011-08-24 2013-06-18 Guest Tek Interactive Entertainment Ltd. Method of allocating bandwidth between zones according to user load and bandwidth management system thereof
US9843540B2 (en) * 2013-08-26 2017-12-12 Vmware, Inc. Traffic and load aware dynamic queue management

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002208952A (ja) * 2001-01-12 2002-07-26 Nec Corp セル送出制御装置
JP2010161546A (ja) * 2009-01-07 2010-07-22 Hitachi Ltd ネットワーク中継装置およびパケット振り分け方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017037471A (ja) * 2015-08-10 2017-02-16 日本電信電話株式会社 品質制御装置、および、品質制御方法
JP2017097466A (ja) * 2015-11-19 2017-06-01 富士通株式会社 ストレージ制御装置、ストレージ制御方法およびストレージ制御プログラム
WO2019235442A1 (ja) * 2018-06-04 2019-12-12 日本電信電話株式会社 ネットワークシステムおよびネットワーク帯域制御管理方法
US11245630B2 (en) 2018-06-04 2022-02-08 Nippon Telegraph And Telephone Corporation Network system and network band control management method

Also Published As

Publication number Publication date
US20150222561A1 (en) 2015-08-06

Similar Documents

Publication Publication Date Title
JP2015149577A (ja) 帯域制御装置
KR102317523B1 (ko) 패킷 제어 방법 및 네트워크 기기
US10938727B2 (en) Method and device for offloading processing of data flows
US20150222515A1 (en) Management and orchestration server
US10686725B2 (en) Software defined network (SDN) quality-of-service (QoS)
JPWO2018016043A1 (ja) リソース管理装置、リソース管理方法及びプログラム
Wang et al. Implementation of multipath network virtualization with SDN and NFV
US10362632B2 (en) Architecture for radio access network and evolved packet core
TWI835205B (zh) 5g網路中之封包酬載資料之選擇性壓縮
US11362862B2 (en) Method and system for operating networks with data-plane and control-plane separated network functions
US11540175B2 (en) Smart session load balancer and throttle
JP2012169733A (ja) 通信制御プログラム、情報処理装置およびパケット通信方法
JP2016046575A (ja) トラフィック管理装置及び無線ネットワークシステム
US20160014237A1 (en) Communication device, communication method, and computer-readable recording medium
KR102243263B1 (ko) 가상 랜 게이트웨이 시스템, 제어 평면 게이트웨이의 동작 방법 및 mme의 동작 방법
JP2021507633A (ja) クラウド無線アクセスネットワークにおける負荷分散のための方法および装置
WO2019165855A1 (zh) 一种报文传输的方法及装置
KR102240712B1 (ko) 무선 통신 시스템에서 전송 계층의 속도를 제어하기 위한 장치 및 방법
US20190050306A1 (en) Data redundancy and allocation system
CN108696427A (zh) 一种数据传输方法及装置
US9641441B2 (en) Learning information associated with shaping resources and virtual machines of a cloud computing environment
US10568112B1 (en) Packet processing in a software defined datacenter based on priorities of virtual end points
WO2019074821A1 (en) MOBILE RESOURCE PLANNER
US20210281656A1 (en) Applying application-based policy rules using a programmable application cache
CN116938829A (zh) 一种数据转发方法及相关设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160913

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170110

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170713

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170808

A045 Written measure of dismissal of application [lapsed due to lack of payment]

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20171226