JP2020031339A - コントローラ、システム、および、制御方法 - Google Patents
コントローラ、システム、および、制御方法 Download PDFInfo
- Publication number
- JP2020031339A JP2020031339A JP2018155842A JP2018155842A JP2020031339A JP 2020031339 A JP2020031339 A JP 2020031339A JP 2018155842 A JP2018155842 A JP 2018155842A JP 2018155842 A JP2018155842 A JP 2018155842A JP 2020031339 A JP2020031339 A JP 2020031339A
- Authority
- JP
- Japan
- Prior art keywords
- int
- flow
- assigned
- information
- switch
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/02—Capturing of monitoring data
- H04L43/026—Capturing of monitoring data using flow identification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/302—Route determination based on requested QoS
- H04L45/306—Route determination based on the nature of the carried application
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【課題】INT-IDの枯渇を防止し、監視フロー数の増加を可能とする。【解決手段】コントローラ10のINT-ID割り当て部12は、フローに対するINT-IDの割当要求を受け付けた場合、当該フローの5tuple情報と、ネットワークの全経路の経路情報を格納する経路情報DB13とを参照して、INT-IDの割当対象のフローの経路を計算する。そして、INT-ID割り当て部12は、計算した経路が、INT-IDを割り当て済みのいずれのフローの経路とも交わらない場合、ID情報DB14に示される割り当て済みのINT-IDの中から、当該INT-IDの割当対象のフローに割り当てるINT-IDを選択する。【選択図】図2
Description
本発明は、コントローラ、システム、および、制御方法に関する。
In‐band Network Telemetry (INT、非特許文献1参照)は、データセンタネットワーク等において送受信されるパケットのパケットヘッダにメタデータを挿入することでパケットごとにネットワーク状態を収集可能なフレームワークである。例えば、分散アーキテクチャやチェイニング技術を実装したネットワークに、上記のINTを用いることでアプリケーション単位でのフロー情報の可視化が可能となる。
複数のフロー経路をとりえるようなファブリック(各スイッチにより構成されるトポロジ)においてINTを実施するためには、各スイッチにINTメタデータのエントリを登録する必要がある。例えば、ファブリックの各スイッチがマイクロフロー(5tupleで定義されるフロー)単位でINTを実施するためには、各スイッチに監視対象のマイクロフローに付与したINT-IDに対応するエントリを登録する必要がある。
In‐band Network Telemetry(INT)、[平成30年7月30日検索]、インターネット<URL:https://p4.org/assets/INT-current-spec.pdf>
ここで、INTにおける監視対象のフローの種類数が増加した場合、当該フローに割り当てるINT-IDが枯渇してしまうおそれがある。そこで、本発明は、INT-IDの枯渇を防止し、監視フロー数の増加を可能とすることを課題とする。
前記した課題を解決するため、本発明は、受信したフローのパケットに、当該フローに対応するINT-IDを埋め込む第1のスイッチと、受信したフローのパケットに埋め込まれたINT-IDに基づく処理を実行する第2のスイッチとを制御するコントローラであって、前記フローに割り当て済みのINT-IDを示したID情報を記憶する記憶部と、前記第1のスイッチから、前記INT-IDの割当対象のフローの5tuple情報を含むINT-IDの割当要求を受け付けた場合、前記割当要求に含まれるINT-IDの割当対象のフローの5tuple情報と、前記第1のスイッチおよび前記第2のスイッチを含むネットワークの全経路の経路情報とを参照して、前記INT-IDの割当対象のフローの経路を計算する経路計算部と、前記計算した経路が、前記ID情報に示されるINT-IDを割り当て済みのいずれかのフローの経路と交わるか否かを判定する判定部と、前記判定部により、前記INT-IDの割当対象のフローの経路が、前記INT-IDを割り当て済みのいずれのフローの経路とも交わらないと判定された場合、前記ID情報に示される割り当て済みのINT-IDの中から、前記INT-IDの割当対象のフローに割り当てるINT-IDを選択するINT-ID選択部と、前記INT-IDの割当対象のフローを中継する前記第1のスイッチに、前記選択した当該フローのINT-IDを通知する通知部と、を備えることを特徴とする。
本発明によれば、INT-IDの枯渇を防止し、監視フロー数の増加を可能とすることができる。
以下、図面を参照しながら、本発明を実施するための形態(実施形態)について説明する。本発明は、以下に説明する実施形態に限定されない。
[システムの構成例]
まず、図1を用いて本実施形態のコントローラを含むシステムの構成例を説明する。システムは、ファブリック構成をとり、コントローラ10と、Border leaf(第1のスイッチ)20と、leaf(第2のスイッチ)30とを備える。Border leaf20およびleaf30の台数は、図1に示す台数に限定されない。また、システムは、例えば、leaf30から送られた情報を集計する集計サーバ40、フローによるデータ通信により様々なアプリケーションサービスを提供するサーバ等を含んでいてもよい。
まず、図1を用いて本実施形態のコントローラを含むシステムの構成例を説明する。システムは、ファブリック構成をとり、コントローラ10と、Border leaf(第1のスイッチ)20と、leaf(第2のスイッチ)30とを備える。Border leaf20およびleaf30の台数は、図1に示す台数に限定されない。また、システムは、例えば、leaf30から送られた情報を集計する集計サーバ40、フローによるデータ通信により様々なアプリケーションサービスを提供するサーバ等を含んでいてもよい。
コントローラ10は、Border leaf20およびleaf30を制御する。また、コントローラ10は、Border leaf20およびleaf30上を中継するフローに割り当てるINT-IDを選択する。コントローラ10は、制御部11と、INT-ID割り当て部12と、経路情報DB(データベース)13と、ID情報DB14とを備える。
このコントローラ10は、フローにINT-IDを割り当てる際、経路が交わらないフローについて同じINT-IDを割り当てる。例えば、図2に示すように、既に、フロー201に対しINT-ID「100」が割り当て済みである場合、コントローラ10は、INT-IDの割当対象のフロー202の経路を計算し、計算したフロー202の経路がフロー201の経路と交わらない場合、フロー202にフロー201と同じINT-ID「100」を割り当てる。
このようにコントローラ10は、INT-IDを各フローに割り当てる際、互いに交わらない経路のフローに同じINT-IDを割り当てる。よって、システムは、INTに用いるINT-IDのID空間を効率よく利用できるので、INT-IDの枯渇を防止することができる。その結果、INTにおける監視フロー数の増加を可能とすることができる。
また、上記のBorder leaf20およびleaf30それぞれが必要以上に多くのINT-IDに関するエントリを持つ必要がなくなるので、Border leaf20およびleaf30がエントリを保持するのに必要なメモリ量を低減することができる。このコントローラ10の詳細は、図2を用いて後記する。
図1の説明に戻る。Border leaf20は、ネットワーク(Border leaf20およびleaf30により構成されるネットワーク)の境界に設置され、フローを中継するスイッチである。このBorder leaf20は、例えば、監視対象のフローを受信すると、当該フローのパケットに当該フローに割り当てられたINT-IDを埋め込み、leaf30へ転送する。
leaf30は、フローを中継するスイッチである。このLeaf30は、例えば、受信したフローのパケットに埋め込まれたINT-IDに基づき、INTに関する処理を行う。一例を挙げると、leaf30は、受信したフローのパケットに埋め込まれたINT-IDに基づき、INT-IDごとのフローのパケットのカウントを行う。そして、leaf30は、INT-IDごとのフローのパケットのカウントの結果を集計サーバ40へ送信する。
集計サーバ40は、各leaf30から送信された各INT-IDのフローの情報を集計する。例えば、集計サーバ40は、各leaf30から送信されたフローのパケットのカウントの結果をINT-IDごとに集計する。これにより、集計サーバ40は、例えば、各フローのパケットロス、パケットの順序逆転等をアプリケーション単位で把握することができる。
[コントローラ]
図2を用いて、コントローラ10を詳細に説明する。コントローラ10は、前記したとおり、制御部11と、INT-ID割り当て部12と、経路情報DB13と、ID情報DB14とを備える。なお、経路情報DB13およびID情報DB14は、例えば、コントローラ10の備える記憶部(図示省略)に装備される。この経路情報DB13およびID情報DB14は、コントローラ10の外部の装置に装備されてもよい。
図2を用いて、コントローラ10を詳細に説明する。コントローラ10は、前記したとおり、制御部11と、INT-ID割り当て部12と、経路情報DB13と、ID情報DB14とを備える。なお、経路情報DB13およびID情報DB14は、例えば、コントローラ10の備える記憶部(図示省略)に装備される。この経路情報DB13およびID情報DB14は、コントローラ10の外部の装置に装備されてもよい。
制御部11は、コントローラ10全体の制御を司る。例えば、制御部11は、Border leaf20からフローの5tuple情報を含む当該フローへのINT-IDの割り当て要求を受信すると、INT-ID割り当て部12に対し、INT-IDの割り当てを依頼する。
一例を挙げると、制御部11は、Border leaf20から、当該Border leaf20にINT-IDの割り当てのトリガーとなるフローの到着した旨の情報と、当該フローの5tuple情報とを受信すると、INT-ID割り当て部12に対し、当該フローの5tuple情報を含むINT-IDの割り当て依頼を出力する。その後、制御部11は、INT-ID割り当て部12から、当該フローに割り当てたINT-IDを受け取ると、当該INT-IDをBorder leaf20へ通知する。また、制御部11は、当該フローに割り当てたINT-IDをleaf30へ通知する。
INT-ID割り当て部12は、制御部11からの依頼に基づき、フローにINT-IDを割り当てる。このINT-ID割り当て部12は、経路計算部121と、判定部122と、INT-ID選択部123とを備える。
経路計算部121は、経路情報DB13に記憶されるネットワークの経路情報を参照して、フローの経路を計算する。例えば、経路計算部121は、制御部11からフロー(INT-ID割当対象のフロー)の5tuple情報を含む当該フローへのINT-IDの割り当て依頼を受信すると、当該フローの5tuple情報と、経路情報DB13に記憶される経路情報とを参照して、当該フローの経路を計算する。
判定部122は、経路計算部121により計算された、INT-ID割当対象のフローの経路が、INT-IDを割り当て済みのいずれかのフローの経路と交わるか否かを判定する。例えば、判定部122は、経路情報DB13から、INT-IDを割り当て済みのフローの経路情報を読み出すと、経路計算部121により計算されたINT-ID割当対象のフローの経路が、INT-IDを割り当て済みのいずれかのフローの経路と交わるか否かを判定する。
INT-ID選択部123は、フローに割り当てるINT-IDを選択する。例えば、INT-ID選択部123は、判定部122により、INT-IDの割当対象のフローの経路が、INT-IDを割り当て済みのいずれのフローの経路とも交わらないと判定された場合、ID情報DB14に示される割り当て済みのINT-IDの中から、INT-IDの割当対象のフローに割り当てるINT-IDを選択する。そして、INT-ID選択部123は、選択したINT-IDを制御部11へ出力する。
一例を挙げると、判定部122が、INT-IDを割り当て済みのフロー201の経路と、INT-IDの割当対象のフロー202の経路とが交わらないと判定した場合、INT-ID選択部123は、フロー202に割り当てるINT-IDとして、フロー201に割り当てたINT-IDと同じINT-ID(100)を選択する。そして、INT-ID選択部123は選択したINT-ID(100)を制御部11へ出力する。
一方、判定部122により、INT-IDの割当対象のフローの経路が、INT-IDを割り当て済みのいずれかのフローの経路と交わると判定された場合、INT-ID選択部123は、ID情報DB14に示される割り当て済みのINT-ID以外のINT-IDの中から、INT-IDの割当要求の対象のフローに割り当てるINT-IDを選択する。そして、INT-ID選択部123は、選択したINT-IDを制御部11へ出力する。また、INT-ID選択部123は、選択したINT-ID(つまり、割り当て済みのINT-ID)をID情報DB14に記録する。
また、INT-ID選択部123は、当該フローに割り当てるINT-IDを選択すると、選択したINT-IDと当該INT-IDが割り当てられたフローの識別情報(例えば、5tuple情報)とを対応付けた情報を、経路情報DB13に格納する。
経路情報DB13は、Border leaf20およびleaf30を含むネットワークの全経路の経路情報を格納する。また、ID情報DB14は、割り当て済みのINT-IDを格納する。
[Border leaf]
Border leaf20は、INT-ID割当要求部21と、INT-IDテーブル22とを備える。INT-ID割当要求部21は、コントローラ10にフローのINT-IDの割当要求を送信する。例えば、INT-ID割当要求部21は、INT-IDの割当対象となるフローの5tuple情報を含むINT-IDの割当要求をコントローラ10へ送信する。その後、INT-ID割当要求部21は、コントローラ10から当該フローに割り当てるINT-IDを受信すると、受信したINT-IDをINT-IDテーブル22に追加する。
Border leaf20は、INT-ID割当要求部21と、INT-IDテーブル22とを備える。INT-ID割当要求部21は、コントローラ10にフローのINT-IDの割当要求を送信する。例えば、INT-ID割当要求部21は、INT-IDの割当対象となるフローの5tuple情報を含むINT-IDの割当要求をコントローラ10へ送信する。その後、INT-ID割当要求部21は、コントローラ10から当該フローに割り当てるINT-IDを受信すると、受信したINT-IDをINT-IDテーブル22に追加する。
INT-IDテーブル22は、フローごとに当該フローに割り当てられたINT-IDを示した情報である。例えば、INT-IDテーブル22は、以下の表1に示すように、フローの5tuple情報(src IP(送信元IPアドレス)、dst IP(宛先IPアドレス)、src port(送信元ポート番号)、dst port(宛先ポート番号)およびprotocol(プロトコル))の組み合わせごとに、当該5tuple情報を持つフローに割り当てられたINT-IDを示した情報である。
このINT-IDテーブル22は、Border leaf20が、例えば、監視対象のフローにINT-IDを挿入する際に参照される。
[leaf]
Leaf30は、受信したフローのINT-IDに対応する処理を実行する。例えば、まず、leaf30は、コントローラ10から、各フローに割り当てたINT-IDを受信すると、これを集計情報31(表2参照)のエントリとして登録しておく。その後、leaf30が、集計情報31に登録されたINT-IDを持つフローを受信すると、当該INT-IDのフローのパケットをカウントし、集計情報31に記録する。そして、leaf30は、カウントの結果が記録された集計情報31を集計サーバ40へ送信する。
Leaf30は、受信したフローのINT-IDに対応する処理を実行する。例えば、まず、leaf30は、コントローラ10から、各フローに割り当てたINT-IDを受信すると、これを集計情報31(表2参照)のエントリとして登録しておく。その後、leaf30が、集計情報31に登録されたINT-IDを持つフローを受信すると、当該INT-IDのフローのパケットをカウントし、集計情報31に記録する。そして、leaf30は、カウントの結果が記録された集計情報31を集計サーバ40へ送信する。
集計情報31は、例えば、以下の表2に示すように、INT-IDごとに、当該INT-IDを持つフローのパケットのカウントの結果(seq num counter)を記録した情報である。
[処理手順の例]
次に、図3および図4を用いて、システムの処理手順の例を説明する。
次に、図3および図4を用いて、システムの処理手順の例を説明する。
まず、システムの管理者が、INT-IDの取得開始をBorder leaf20に設定する(図3のS1)。ここでのINT-IDの取得開始の設定は、システムの管理者からBorder leaf20へのINT-IDの取得開始の指示入力でもよいし、Border leaf20に対するINT-IDの取得開始のトリガーとなるトリガーフローの設定であってもよい。
ここで、Border leaf20におけるINT-IDの取得開始のトリガーがトリガーフローの受信である場合、Border leaf20が当該トリガーフローを受信すると、INT-ID割当要求部21は、トリガーフローの到着と、当該トリガーフローの5tuple情報とをコントローラ10へ通知する(S2)。当該通知を受けたコントローラ10の制御部11は、INT-ID割り当て部12に対し、当該フローの5tuple情報を含むINT-IDの割り当て依頼を出力する(S3:INT-IDの割り当てを依頼)。INT-IDの割り当て依頼を受けたINT-ID割り当て部12は、制御部11経由で経路情報DB13の経路情報を読み出す。
図4の説明に移る。図3のS3の後、INT-ID割り当て部12は、経路情報DB13の経路情報を参照して、経路計算を行い、互いの経路が交わらないフローに同じINT-IDを割り当てる(図4のS4)。
つまり、S4において、経路計算部121は、INT-IDの割当対象のフローの5tuple情報と、経路情報DB13に記憶される経路情報とを参照して、INT-IDの割当対象のフローの経路を計算する。そして、判定部122は、INT-IDの割当対象のフローの経路が、経路情報DB13に記憶されるINT-IDを割り当て済みのいずれのフローの経路とも交わらないと判定した場合、INT-ID選択部123は、ID情報DB14に示される割り当て済みのINT-IDの中から、INT-IDの割当要求の対象のフローに割り当てるINT-IDを選択する。そして、INT-ID選択部123は、選択したINT-IDを制御部11へ出力する。
一方、判定部122は、INT-IDの割当対象のフローの経路が、経路情報DB13に記憶されるINT-IDを割り当て済みのいずれかのフローの経路と交わると判定した場合、INT-ID選択部123は、ID情報DB14に示される割り当て済みのINT-ID以外のINT-IDの中から、INT-IDの割当要求の対象のフローに割り当てるINT-IDを選択する。そして、INT-ID選択部123は、選択したINT-IDを制御部11へ出力する。
S4の後、制御部11は、S4で割り当てたINT-IDをBorder leaf20へ通知する(S5)。そして、Border leaf20のINT-ID割当要求部21は、コントローラ10から通知されたINT-IDをINT-IDテーブル22に追加する。その後、Border leaf20は、当該INT-IDテーブル22に基づき、受信したフローのパケットにINT-IDを挿入する。
また、制御部11は、S4で割り当てたINT-IDをleaf30へ通知し、leaf30は、通知されたINT-IDを集計情報31に追加する。その後、leaf30は、受信したフローのINT-IDに基づくINTの処理を実行する。例えば、leaf30は、受信したフローのINT-IDごとに、当該INT-IDを持つフローのパケットのカウントを行い、カウントの結果を集計情報31に記録する。
このようにシステムは、INT-IDを各フローに割り当てる際、互いに交わらない経路のフローに同じINT-IDを割り当てる。よって、システムは、INTに用いるINT-IDのID空間を効率よく利用できるので、INT-IDの枯渇を防止することができる。その結果、INTにおける監視フロー数の増加を可能とすることができる。
また、上記のBorder leaf20およびleaf30それぞれが、必要以上に多くのINT-IDに関するエントリを持つ必要がなくなるので、Border leaf20およびleaf30がエントリを保持するのに必要なメモリ量を低減することができる。
[その他の実施形態]
なお、システムは、IP(Internet Protocol)電話等の通信に用いられるフローを対象に上記のINT-IDの割当を行ってもよい。この場合の実施形態を、図5および図6を用いて説明する。
なお、システムは、IP(Internet Protocol)電話等の通信に用いられるフローを対象に上記のINT-IDの割当を行ってもよい。この場合の実施形態を、図5および図6を用いて説明する。
例えば、Border leaf20は、IP電話等の通信のセッション開始プロトコルであるSIP(Session Initiation Protocol)のフローを検出する検出部23を備える。そして、コントローラ10のINT-ID割り当て部12は、いずれかのBorder leaf20においてSIPのフローを検出すると、当該SIPのフローの受信後に開始されるMEDIAフローの経路を計算し、当該MEDIAフローに割り当てるINT-IDを選択する。
まず、システムの管理者は、Border leaf20の検出部23にINT-IDの取得開始のトリガーフローを設定する(図5のS11)。例えば、管理者は、INT-IDの取得開始のトリガーとなるSIPのフローに関する情報をBorder leaf20の検出部23に設定する。その後、Border leaf20の検出部23がINT-IDの取得開始のトリガーとなるSIPのフローのパケット(SIPパケット)の到着を検出すると、INT-ID割当要求部21は、SIPパケットの検出をコントローラ10へ通知する(S12)。具体的には、INT-ID割当要求部21は、SIPパケットに含まれるSIP情報を含むINT-IDの割り当て要求をコントローラ10へ通知する。当該通知を受けたコントローラ10の制御部11は、INT-ID割り当て部12に対し、当該フローのSIP情報を含むINT-ID割当依頼を出力する(S13:INT-IDの割り当てを依頼)。そして、INT-ID割り当て部12は、制御部11経由で経路情報DB13の経路情報を読み出す。
図6の説明に移る。図5のS13の後、INT-ID割り当て部12は、経路情報DB13の経路情報とSIP情報とを参照して、MEDIAフローの経路を特定する。そして、INT-ID割り当て部12は、互いの経路が交わらないフローに同じINT-IDを割り当てる(図6のS14)。
つまり、経路計算部121は、SIP情報と、経路情報DB13に記憶される経路情報とを参照して、上記のSIPのフローの後に開始されるMEDIAフローの経路を計算する。そして、判定部122は、MEDIAフローの経路が、INT-IDを割り当て済みのいずれのフローの経路とも交わらないと判定した場合、INT-ID選択部123は、ID情報DB14に示される割り当て済みのINT-IDの中から、当該MEDIAフローに割り当てるINT-IDを選択する。そして、INT-ID選択部123は、選択したINT-IDを制御部11へ出力する。一方、判定部122が当該MEDIAフローの経路は、INT-IDを割り当て済みのいずれかのフローの経路と交わると判定した場合、INT-ID選択部123は、ID情報DB14に示される割り当て済みのINT-ID以外のINT-IDの中から、当該MEDHIAフローに割り当てるINT-IDを選択する。そして、INT-ID選択部123は、選択したINT-IDを制御部11へ出力する。
S14の後、制御部11は、S14で割り当てられたINT-IDを、当該MEDIAフローの経路のBorder leaf20へ通知する(S15)。そして、当該Border leaf20のINT-ID割当要求部21は、コントローラ10から通知されたINT-IDをINT-IDテーブル22に追加する。その後、Border leaf20は、当該INT-IDテーブル22に基づき、受信したMEDIAフローのパケットにINT-IDを挿入する。
また、制御部11は、S14で割り当てたINT-IDをleaf30へ通知し、leaf30は、通知されたINT-IDを集計情報31に追加する。その後、leaf30は、受信したフローのINT-IDに基づくINTを開始する(S16)。例えば、leaf30は、受信したMEDIAフローのパケットについて、INT-IDごとにパケットの到着順を集計情報31に記録する。そして、leaf30は、当該集計情報31を集計サーバ40へ送信する。その後、集計サーバ40が各leaf30から送信されたMEDIAフローのパケットの到着順を確認することで、各MEDIAフローのUDPパケットの順序の逆転を把握することができる。
このようにすることで、システムは、INT-IDをIP電話の通信のMEDIAフローに割り当てる場合においても、互いに交わらない経路のフローに同じINT-IDを割り当てるので、INT-IDのID空間を効率よく利用できる。その結果、INTに用いるINT-IDの枯渇を防止することができる。また、上記のBorder leaf20およびleaf30それぞれが、必要以上に多くのINT-IDに関するエントリを持つ必要がなくなる。
[プログラム]
また、上記の実施形態で述べたコントローラ10の機能を実現するプログラムを所望の情報処理装置(コンピュータ)にインストールすることによって実装できる。例えば、パッケージソフトウェアやオンラインソフトウェアとして提供される上記のプログラムを情報処理装置に実行させることにより、情報処理装置をコントローラ10として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータ、ラック搭載型のサーバコンピュータ等が含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistants)等がその範疇に含まれる。また、コントローラ10を、クラウドサーバに実装してもよい。
また、上記の実施形態で述べたコントローラ10の機能を実現するプログラムを所望の情報処理装置(コンピュータ)にインストールすることによって実装できる。例えば、パッケージソフトウェアやオンラインソフトウェアとして提供される上記のプログラムを情報処理装置に実行させることにより、情報処理装置をコントローラ10として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータ、ラック搭載型のサーバコンピュータ等が含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistants)等がその範疇に含まれる。また、コントローラ10を、クラウドサーバに実装してもよい。
図7を用いて、上記のプログラム(制御プログラム)を実行するコンピュータの一例を説明する。図7に示すように、コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有する。これらの各部は、バス1080によって接続される。
メモリ1010は、ROM(Read Only Memory)1011およびRAM(Random Access Memory)1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。ディスクドライブ1100には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース1050には、例えば、マウス1110およびキーボード1120が接続される。ビデオアダプタ1060には、例えば、ディスプレイ1130が接続される。
ここで、図7に示すように、ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093およびプログラムデータ1094を記憶する。前記した実施形態で説明した各種データや情報は、例えばハードディスクドライブ1090やメモリ1010に記憶される。
そして、CPU1020が、ハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した各手順を実行する。
なお、上記の制御プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、上記のプログラムに係るプログラムモジュール1093やプログラムデータ1094は、LANやWAN(Wide Area Network)等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
10 コントローラ
11 INT-ID割り当て部
12 制御部
13 経路情報DB
14 ID情報DB
20 Border leaf
21 INT-ID割当要求部
22 INT-IDテーブル
23 検出部
30 leaf
31 集計情報
40 集計サーバ
121 経路計算部
122 判定部
123 INT-ID選択部
11 INT-ID割り当て部
12 制御部
13 経路情報DB
14 ID情報DB
20 Border leaf
21 INT-ID割当要求部
22 INT-IDテーブル
23 検出部
30 leaf
31 集計情報
40 集計サーバ
121 経路計算部
122 判定部
123 INT-ID選択部
Claims (5)
- 受信したフローのパケットに、当該フローに対応するINT-IDを埋め込む第1のスイッチと、受信したフローのパケットに埋め込まれたINT-IDに基づく処理を実行する第2のスイッチとを制御するコントローラであって、
前記フローに割り当て済みのINT-IDを示したID情報を記憶する記憶部と、
前記第1のスイッチから、前記INT-IDの割当対象のフローの5tuple情報を含むINT-IDの割当要求を受け付けた場合、前記割当要求に含まれるINT-IDの割当対象のフローの5tuple情報と、前記第1のスイッチおよび前記第2のスイッチを含むネットワークの全経路の経路情報とを参照して、前記INT-IDの割当対象のフローの経路を計算する経路計算部と、
前記計算した経路が、前記ID情報に示されるINT-IDを割り当て済みのいずれかのフローの経路と交わるか否かを判定する判定部と、
前記判定部により、前記INT-IDの割当対象のフローの経路が、前記INT-IDを割り当て済みのいずれのフローの経路とも交わらないと判定された場合、前記ID情報に示される割り当て済みのINT-IDの中から、前記INT-IDの割当対象のフローに割り当てるINT-IDを選択するINT-ID選択部と、
前記INT-IDの割当対象のフローを中継する前記第1のスイッチに、前記選択した当該フローのINT-IDを通知する通知部と、
を備えることを特徴とするコントローラ。 - 前記INT-ID選択部は、
前記判定部により、前記INT-IDの割当対象のフローの経路が、前記INT-IDを割り当て済みのいずれかのフローの経路と交わると判定された場合、前記ID情報に示される割り当て済みのINT-ID以外のINT-IDを、前記INT-IDの割当対象のフローに割り当てるINT-IDとして選択する
ことを特徴とする請求項1に記載のコントローラ。 - 前記INT-ID選択部は、さらに、
前記INT-IDの割当対象のフローに割り当てたINT-IDを、前記ID情報に追加する
ことを特徴とする請求項1に記載のコントローラ。 - 受信したフローのパケットに、当該フローに対応するINT-IDを埋め込む第1のスイッチと、受信したフローのパケットに埋め込まれたINT-IDに基づく処理を実行する第2のスイッチと、前記第1のスイッチおよび前記第2のスイッチを制御するコントローラとを備えるシステムであって、
前記コントローラは、
前記フローに割り当て済みのINT-IDを示したID情報を記憶する記憶部と、
前記第1のスイッチから、前記INT-IDの割当対象のフローの5tuple情報の通知を受け付けた場合、前記INT-IDの割当対象のフローの5tuple情報と、前記第1のスイッチおよび前記第2のスイッチを含むネットワークの全経路の経路情報とを参照して、前記INT-IDの割当対象のフローの経路を計算する経路計算部と、
前記計算した経路が、前記ID情報に示されるINT-IDを割り当て済みのいずれかのフローの経路と交わるか否かを判定する判定部と、
前記判定部により、前記INT-IDの割当対象のフローの経路が、前記INT-IDを割り当て済みのいずれのフローの経路とも交わらないと判定された場合、前記ID情報に示される割り当て済みのINT-IDの中から、前記INT-IDの割当対象のフローに割り当てるINT-IDを選択するINT-ID選択部と、
前記INT-IDの割当対象のフローを中継する前記第1のスイッチに、前記選択した当該フローのINT-IDを通知する通知部と、
を備え、
前記第1のスイッチは、
前記INT-IDの割当要求を出力するトリガーとなるフローを検出する検出部と、
前記検出部によりトリガーとなるフローが検出された場合、前記コントローラへ前記フローの5tuple情報を含むINT-IDの割当要求を送信するINT-ID割当要求部と
を備えることを特徴とするシステム。 - 受信したフローのパケットに、当該フローに対応するINT-IDを埋め込む第1のスイッチと、受信したフローのパケットに埋め込まれたINT-IDに基づく処理を実行する第2のスイッチとを制御するコントローラにより実行される制御方法であって、
前記第1のスイッチから、前記INT-IDの割当対象のフローの5tuple情報を含むINT-IDの割当要求を受け付けた場合、前記割当要求に含まれるINT-IDの割当対象のフローの5tuple情報と、前記第1のスイッチおよび前記第2のスイッチを含むネットワークの全経路の経路情報とを参照して、前記INT-IDの割当対象のフローの経路を計算する経路計算ステップと、
前記計算した経路が、前記フローに割り当て済みのINT-IDを示したID情報に示されるINT-IDを割り当て済みのいずれかのフローの経路と交わるか否かを判定する判定ステップと、
前記判定ステップにより、前記INT-IDの割当対象のフローの経路が、前記INT-IDを割り当て済みのいずれのフローの経路とも交わらないと判定された場合、前記ID情報に示される割り当て済みのINT-IDの中から、前記INT-IDの割当対象のフローに割り当てるINT-IDを選択するINT-ID選択ステップと、
前記INT-IDの割当対象のフローを中継する前記第1のスイッチに、前記選択した当該フローのINT-IDを通知する通知ステップと、
を含んだことを特徴とする制御方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018155842A JP2020031339A (ja) | 2018-08-22 | 2018-08-22 | コントローラ、システム、および、制御方法 |
PCT/JP2019/032712 WO2020040226A1 (ja) | 2018-08-22 | 2019-08-21 | コントローラ、システム、および、制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018155842A JP2020031339A (ja) | 2018-08-22 | 2018-08-22 | コントローラ、システム、および、制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2020031339A true JP2020031339A (ja) | 2020-02-27 |
Family
ID=69592085
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018155842A Pending JP2020031339A (ja) | 2018-08-22 | 2018-08-22 | コントローラ、システム、および、制御方法 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2020031339A (ja) |
WO (1) | WO2020040226A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113242142A (zh) * | 2021-04-13 | 2021-08-10 | 清华大学 | 带内网络遥测方法、装置、电子设备及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8310942B2 (en) * | 2010-08-27 | 2012-11-13 | Ixia | Flow statistics aggregation |
KR101529950B1 (ko) * | 2010-12-01 | 2015-06-18 | 닛본 덴끼 가부시끼가이샤 | 통신 시스템, 정보 처리 장치, 통신 노드, 통신 방법, 및 프로그램을 기록한 컴퓨터 판독가능한 기록 매체 |
-
2018
- 2018-08-22 JP JP2018155842A patent/JP2020031339A/ja active Pending
-
2019
- 2019-08-21 WO PCT/JP2019/032712 patent/WO2020040226A1/ja active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113242142A (zh) * | 2021-04-13 | 2021-08-10 | 清华大学 | 带内网络遥测方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2020040226A1 (ja) | 2020-02-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9992273B2 (en) | Intelligent load balancer selection in a multi-load balancer environment | |
EP3629554B1 (en) | Method, apparatus, and system for load balancing of service chain | |
EP3128422A1 (en) | Application scaling management method and apparatus | |
JP4190455B2 (ja) | 負荷分散装置及びプログラム | |
JP2009175889A (ja) | 帯域制御機能を有する負荷分散装置およびその設定方法 | |
JP5757325B2 (ja) | 仮想デスクトップシステム、ネットワーク処理装置、管理方法、及び管理プログラム | |
EP3113539A1 (en) | Load balancing user plane traffic in a telecommunication network | |
JP2016149698A (ja) | パケット通信装置およびパケット受信処理方法 | |
EP2938028B1 (en) | Communication node, control device, method for managing control information entries, and program | |
WO2019033891A1 (zh) | 一种基于rdma的网络流量确定方法及装置 | |
WO2020040226A1 (ja) | コントローラ、システム、および、制御方法 | |
US20150312143A1 (en) | Communication node, control apparatus, communication system, packet processing method, communication node controlling method and program | |
WO2016051335A1 (en) | Algorithm for faster convergence through affinity override | |
US10728171B2 (en) | Governing bare metal guests | |
US11451470B2 (en) | Systems and methods for data service request classification and routing | |
CN108199965B (zh) | Flow spec表项下发方法、网络设备、控制器及自治系统 | |
CN110365742B (zh) | 多活负载均衡应用创建方法、装置、计算机设备及存储介质 | |
JP6829156B2 (ja) | ネットワーク負荷分散装置および方法 | |
EP3975513A1 (en) | Accelerated network traffic sampling using an accelerated line card | |
CN111447282A (zh) | 用于确定传输路径的方法和装置 | |
JP6310406B2 (ja) | タグ割当サーバ、タグ割当方法およびタグ割当プログラム | |
TW201605210A (zh) | 路由器及其資源分配方法 | |
CN108536535A (zh) | 一种dns服务器及其线程控制方法和装置 | |
TWI664842B (zh) | 網路封包智能處理系統及其方法 | |
WO2020248363A1 (zh) | 服务器负载均衡方法及相关设备 |