(57)【要約】【課題】負荷分散の高速化を図ること。【解決手段】負荷分散部は、タイマが満了している状態で上りのパケットを受信すると、パケットをコントローラ部に送信し、コントローラ部は、負荷分散部からパケットを受信すると、パケットの振分け先として複数のサービス装置のいずれかを選択し、受信したパケットの発着アドレスおよび発着ポート番号を含むフロー情報と、選択したサービス装置にパケットを送信するためのアクションを規定したアクション情報と、を対応付けたフロールールを、負荷分散部のフロールールテーブルに設定し、負荷分散部は、フロールールが設定されると、タイマを起動し、タイマの起動中に上りのパケットを受信すると、パケットのフロー情報でフロールールテーブルからフロールールを検索し、検索したフロールールのアクション情報を基にパケットを送信し、タイマが満了すると、フロールールを削除する。【選択図】図１Ａ
2014158143.tif 000002
【特許請求の範囲】
【請求項１】
複数のサービス装置と、上りパケットを前記複数のサービス装置のいずれかに振分ける負荷分散装置と、を有してなる負荷分散システムであって、
前記負荷分散装置は、
負荷分散部と、
コントローラ部と、を備え、
前記負荷分散部は、
タイマが満了している状態で上りのパケットを受信すると、該パケットを前記コントローラ部に送信し、
前記コントローラ部は、
前記負荷分散部からパケットを受信すると、該パケットの振分け先として前記複数のサービス装置のいずれかを選択し、
前記負荷分散部から受信したパケットの発着アドレスおよび発着ポート番号を含むフロー情報と、前記選択したサービス装置に該パケットを送信するためのアクションを規定したアクション情報と、を対応付けたフロールールを、前記負荷分散部のフロールールテーブルに設定し、
前記負荷分散部は、
前記コントローラ部からフロールールが設定されると、タイマを起動し、タイマの起動中に上りのパケットを受信すると、該パケットのフロー情報で前記フロールールテーブルからフロールールを検索し、検索したフロールールのアクション情報を基に該パケットを送信し、タイマが満了すると、フロールールを削除する、負荷分散システム。
【請求項２】
前記負荷分散部は、
前記フロールールテーブルへのアクセス中にタイマが満了した場合、タイマを延長する、請求項１に記載の負荷分散システム。
【請求項３】
複数のサービス装置と、上りのパケットを前記複数のサービス装置のいずれかに振分ける第１の負荷分散装置と、下りパケットを前記複数のサービス装置のいずれかに振分ける第２の負荷分散装置と、を有してなる負荷分散システムであって、
コントローラをさらに有し、
前記第１の負荷分散装置は、
タイマが満了している状態で上りのパケットを受信すると、該パケットを前記コントローラに送信し、
前記第２の負荷分散装置は、
タイマが満了している状態で下りのパケットを受信すると、該パケットを前記コントローラに送信し、
前記コントローラは、
前記第１または前記第２の負荷分散装置のいずれかからパケットを受信すると、該パケットの振分け先として前記複数のサービス装置のいずれかを選択し、
前記第１または前記第２の負荷分散装置のいずれかから受信したパケットの発着アドレスおよび発着ポート番号を含むフロー情報と、前記選択したサービス装置に該パケットを送信するためのアクションを規定したアクション情報と、を対応付けたフロールールを、該パケットの送信元の負荷分散装置のフロールールテーブルに設定し、
前記第１の負荷分散装置は、
前記コントローラからフロールールが設定されると、タイマを起動し、タイマの起動中に上りのパケットを受信すると、該パケットのフロー情報で前記フロールールテーブルからフロールールを検索し、検索したフロールールのアクション情報を基に該パケットを送信し、タイマが満了すると、フロールールを削除し、
前記第２の負荷分散装置は、
前記コントローラからフロールールが設定されると、タイマを起動し、タイマの起動中に下りのパケットを受信すると、該パケットのフロー情報で前記フロールールテーブルからフロールールを検索し、検索したフロールールのアクション情報を基に該パケットを送信し、タイマが満了すると、フロールールを削除する、負荷分散システム。
【請求項４】
前記第１および前記第２の負荷分散装置は、
前記フロールールテーブルへのアクセス中にタイマが満了した場合、タイマを延長する、請求項３に記載の負荷分散システム。
【請求項５】
前記コントローラは、
前記第１または前記第２の負荷分散装置から受信したパケットの振分け先を選択すると、該パケットの発着アドレスおよび発着ポート番号と振分け先のサービス装置の識別番号とを対応付けたログを設定ログテーブルに追加し、
前記第１または前記第２の負荷分散装置からＴＣＰのＳＹＮパケットを受信すると、該ＳＹＮパケットの振分け先として別のサービス装置を選択し、
前記第１または前記第２の負荷分散装置からＴＣＰのＳＹＮパケット以外のパケットを受信すると、該パケットの発着アドレスおよび発着ポート番号で前記設定ログテーブルからログを検索すると共に、該パケットの発アドレスおよび発ポート番号と着アドレスおよび着ポート番号とを逆にして前記設定ログテーブルからログを検索し、検索したログのサービス装置を該パケットの振分け先として選択する、請求項３または４に記載の負荷分散システム。
【請求項６】
前記コントローラは、
前記設定ログテーブルにログを追加する際、同一の発着アドレスおよび発着ポート番号を持つログが存在する場合はこれを削除した上で、ログを追加し、
前記設定ログテーブルに追加したログは、予め定められた時間が経過すると削除する、請求項５に記載の負荷分散システム。
【請求項７】
複数のサービス装置と、上りパケットを前記複数のサービス装置のいずれかに振分ける負荷分散装置と、を有してなる負荷分散システムによる負荷分散方法であって、
前記負荷分散装置は、負荷分散部と、コントローラ部と、を備えるものであり、
前記負荷分散部が、タイマが満了している状態で上りのパケットを受信すると、該パケットを前記コントローラに送信し、
前記コントローラ部が、前記負荷分散部からパケットを受信すると、該パケットの振分け先として前記複数のサービス装置のいずれかを選択し、
前記コントローラ部が、前記負荷分散部から受信したパケットの発着アドレスおよび発着ポート番号を含むフロー情報と、前記選択したサービス装置に該パケットを送信するためのアクションを規定したアクション情報と、を対応付けたフロールールを、前記負荷分散部のフロールールテーブルに設定し、
前記負荷分散部が、前記コントローラ部からフロールールが設定されると、タイマを起動しタイマの起動中に上りのパケットを受信すると、該パケットのフロー情報で前記フロールールテーブルからフロールールを検索し、検索したフロールールのアクション情報を基に該パケットを送信し、タイマが満了すると、フロールールを削除する、負荷分散方法。
【請求項８】
複数のサービス装置と、上りのパケットを前記複数のサービス装置のいずれかに振分ける第１の負荷分散装置と、下りパケットを前記複数のサービス装置のいずれかに振分ける第２の負荷分散装置と、を有してなる負荷分散システムによる負荷分散方法であって、
前記負荷分散システムは、コントローラをさらに有するものであり、
前記第１の負荷分散装置が、タイマが満了している状態で上りのパケットを受信すると、該パケットを前記コントローラに送信し、
前記第２の負荷分散装置が、タイマが満了している状態で下りのパケットを受信すると、該パケットを前記コントローラに送信し、
前記コントローラが、前記第１または前記第２の負荷分散装置のいずれかからパケットを受信すると、該パケットの振分け先として前記複数のサービス装置のいずれかを選択し、
前記コントローラが、前記第１または前記第２の負荷分散装置のいずれかから受信したパケットの発着アドレスおよび発着ポート番号を含むフロー情報と、前記選択したサービス装置に該パケットを送信するためのアクションを規定したアクション情報と、を対応付けたフロールールを、該パケットの送信元の負荷分散装置のフロールールテーブルに設定し、
前記第１の負荷分散装置が、前記コントローラからフロールールが設定されると、タイマを起動し、タイマの起動中に上りのパケットを受信すると、該パケットのフロー情報で前記フロールールテーブルからフロールールを検索し、検索したフロールールのアクション情報を基に該パケットを送信し、タイマが満了すると、フロールールを削除し、
前記第２の負荷分散装置が、前記コントローラからフロールールが設定されると、タイマを起動し、タイマの起動中に下りのパケットを受信すると、該パケットのフロー情報で前記フロールールテーブルからフロールールを検索し、検索したフロールールのアクション情報を基に該パケットを送信し、タイマが満了すると、フロールールを削除する、負荷分散方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、負荷分散システムにおいて、セッションの維持と公平な負荷分散を実現するための技術に関する。
【背景技術】
【０００２】
近年、ＩＰ（Internet Protocol）網上でサービスを実現するサーバやＮＷ（Network）サービス装置の負荷分散を行う処理が一般的に行われている。負荷分散装置の一例は、非特許文献１に開示されている。
【０００３】
また、セッション（例：ＴＣＰ（Transmission Control Protocol））を使用するサービスのうち、セッションの終端を前提とするサービスやセッション状態の管理を前提とするサービスの場合、負荷分散を行う際に、セッションを維持することも必要になる。
【０００４】
以下、ＴＣＰを使用するＵＲＬ（Uniform Resource Locator）フィルタリングを例に挙げて、セッション維持が必要な理由について、図１０および図１１を参照して説明する。
【０００５】
図１０は、ＴＣＰセッションを終端するＴＣＰ終端処理を説明するシーケンス図であり、図１１は、ＴＣＰセッションの状態を管理するＴＣＰ状態管理処理を説明するシーケンス図である。
【０００６】
なお、図１０および図１１において、右側は、単方向負荷分散に適用される負荷分散システムのシーケンスを示し、左側は、双方向負荷分散に適用される負荷分散システムのシーケンスを示している。これらシステムの詳細は後述する。
【０００７】
図１０のＴＣＰ終端処理は、ＮＷサービス装置が、ＴＣＰ３ｗａｙハンドシェイク処理を代行し、セッション確立後のパケットについてＵＲＬチェックを行うというシーケンスになる。このシーケンスにおいてＴＣＰセッションの維持が必要な理由は、各パケットが別のＮＷサービス装置に振分けられると、コネクションが確立できないためである。
【０００８】
図１１のＴＣＰ状態管理処理は、ＮＷサービス装置が、ＴＣＰフラグを一時的に保存し、不正なＳＹＮとＡＣＫを受信すれば破棄するというシーケンスになる。このシーケンスにおいてＴＣＰセッションの維持が必要な理由は、一時的にＴＣＰ状態を保存して、シーケンスレベルで不正の是非を判断するため、同一ＴＣＰセッションのパケットは、同一ＮＷサービス装置に振分けられる必要があるためである。
【０００９】
なお、セッション維持が必要な他のサービスとしては、ＮＡＴ（Network Address Translation）、ＮＡＰＴ（Network Address Port Translation）、ＢＡＳ（Broadband Access Server）、ＱｏＳ（Quality of Service）等が挙げられる。
【００１０】
以下、セッション維持が必要なサービスを実現するサーバやＮＷサービス装置の負荷分散を行う既存技術の負荷分散システムについて、具体的に説明する。
・既存技術１
図１２は、既存技術１の負荷分散システムのＮＷ構成を示す図である。
【００１１】
図１２に示すように、既存技術１の負荷分散システムは、クライアント（クライアント端末）１０−１〜１０−３（以下、どのクライアントであるか特定しない時はクライアント１０と称す）と、ＮＷサービス装置２０−０〜２０−２（以下、どのＮＷサービス装置であるか特定しない時はＮＷサービス装置２０と称す）と、クライアント１０からの上りパケットをＮＷサービス装置２０−０〜２０−２のいずれかに振分ける負荷分散装置３０と、を有している。なお、図１２においては、クライアント１０およびＮＷサービス装置２０の数をそれぞれ３個としているが、これに限定されない。
【００１２】
既存技術１では、負荷分散装置３０は、ＮＷサービス装置２０−０〜２０−２に対しセッションを維持しつつ、各ＮＷサービス装置２０−０〜２０−２の負荷状態を考慮して最低負荷のＮＷサービス装置２０へパケットを振分ける。
・既存技術２
図１３は、既存技術２の負荷分散システムのＮＷ構成を示す図である。
【００１３】
図１３に示すように、既存技術２の負荷分散システムは、クライアント１０−１〜１０−３と、ＮＷサービス装置２０−０〜２０−２と、サーバ４０と、クライアント１０−１〜１０−３からの上りパケットをＮＷサービス装置２０−０〜２０−２のいずれかに振分ける負荷分散装置３０−１と、サーバ４０からの下りパケットをＮＷサービス装置２０−０〜２０−２のいずれかに振分ける負荷分散装置３０−２と、を有している。以下、負荷分散装置３０−１，３０−２は、どの負荷分散装置であるか特定しない時は負荷分散装置３０と称す。なお、図１３においては、クライアント１０およびＮＷサービス装置２０の数をそれぞれ３個とし、サーバ４０の数を１個としているが、これに限定されない。
【００１４】
既存技術２では、クライアント１０単位で予め定められたパケットの振分け先を、負荷分散装置３０−１，３０−２に予め登録することで、負荷分散装置３０−１，３０−２は、静的にパケットを振分ける。
【先行技術文献】
【非特許文献】
【００１５】
【非特許文献１】上谷  一、今野  徹、“連載：ロードバランサの本質（1）  パケットフローから負荷分散の基本を理解する  〜NAT／コネクションテーブル／MAT〜”、 2003年2月5日、F5ネットワークス、［2013年1月7日検索］、インターネット＜URL: http://www.atmarkit.co.jp/fnetwork/rensai/lb01/lb01.html＞
【発明の概要】
【発明が解決しようとする課題】
【００１６】
しかしながら、上述した既存技術１，２には以下のような課題がある。
・課題１
既存技術１，２では、負荷分散装置３０は、同一セッションのパケットを同一のＮＷサービス装置２０に振分ける必要があるため、全パケットのセッション情報（例：ＴＣＰフラグ）を見て、セッション状態（例：ＳＹＮ／ＡＣＫ／ＦＩＮ）を管理する必要があるため、負荷分散の高速化を図ることができない。
・課題２
既存技術１は、もともと単方向負荷分散（図１２）用に考案された技術であるため、双方向負荷分散（図１３）に適用した場合、負荷分散装置３０は、セッション維持のために、上りパケットと下りパケットの振分け先のＮＷサービス装置２０を一致させることができない。
【００１７】
既存技術２では、負荷分散装置３０−１，３０−２にパケットの振分け先を予め登録しているため、上りパケットと下りパケットの振分け先のＮＷサービス装置２０を一致させることができるが、柔軟な負荷分散を行うことができない。
【００１８】
ここで、上述した課題１について、既存技術１の負荷分散装置３０の機能ブロックを参照して、具体的に説明する。
【００１９】
図１４は、既存技術１の負荷分散装置３０の機能ブロック図である。
【００２０】
図１４に示すように、既存技術１の負荷分散装置３０は、転送処理部３１と、情報管理部３２と、を有している。転送処理部３１は、パケット受信部３１１と、パケット検索部３１２と、パケット送信部３１３と、記憶部３１４と、を有している。記憶部３１４には、コネクションテーブルが格納されている。情報管理部３２は、装置ＩＤ検索部３２１と、ＮＥＸＴ−ＩＤ検索部３２２と、記憶部３２３と、を有している。記憶部３２３には、ＮＷサービス装置情報テーブルが格納されている。
【００２１】
パケット受信部３１１は、クライアント１０−１〜１０−３からパケットを受信する。
【００２２】
パケット検索部３１２は、まず、パケット受信部３１１が受信した受信パケットからＳＡ（Source Address、発アドレス）、ＤＡ（Destination Address、着アドレス）、ＳＰ（Source Port、発ポート番号）、ＤＰ（Destination Port、着ポート番号）、ＴＣＰフラグを抽出し、ＳＡ、ＤＡ、ＳＰ、ＤＰでコネクションテーブルから該当するエントリを検索する。
【００２３】
コネクションテーブルに該当するエントリが存在した場合、パケット検索部３１２は、コネクションテーブルからＭＡＣアドレスと出先ポートの情報を取得し、受信パケットのＴＣＰフラグとコネクションテーブルの現在のＴＣＰ状態を参照し、コネクションテーブルのＴＣＰ状態の更新またはエントリの削除を行う。
【００２４】
一方、コネクションテーブルに該当するエントリが存在しない場合、パケット検索部３１２は、受信パケットのＴＣＰフラグがＳＹＮであればコネクションテーブルにエントリを追加し、ＭＡＣアドレスと出先ポートの情報を情報管理部３２に要求し、情報管理部３２からＭＡＣアドレスと出先ポートの情報を取得する。
【００２５】
パケット送信部３１３は、パケット検索部３１２が取得したＭＡＣアドレスと出先ポートの情報を基に、ＭＡＣアドレスへの書き換えと出先ポートからのパケットの送信を行う。
【００２６】
装置ＩＤ検索部３２１は、転送処理部３１からＭＡＣアドレスと出先ポートの情報の要求を受けると、Ｎｅｘｔ装置ＩＤでＮＷサービス装置情報テーブルから該当するＭＡＣアドレスと出先ポートの情報を検索し、検索した情報を転送処理部３１へ送信する。
【００２７】
ＮＥＸＴ−ＩＤ検索部３２２は、各ＮＷサービス装置２０の接続セッション数を基に、最低負荷のＮＷサービス装置２０を選択し、選択したＮＷサービス装置２０のＩＤをＮｅｘｔ装置ＩＤとして装置ＩＤ検索部３２１に登録する。
【００２８】
このように、既存技術１では、負荷分散装置３０は、ＴＣＰ状態管理のために、全パケットについてＴＣＰフラグを抽出し、コネクションテーブルを検索し、ＴＣＰフラグとＴＣＰ状態を参照および更新する処理が必要になるため、負荷分散の高速化を図ることができないという課題（課題１）がある。
【００２９】
そこで、本発明の目的は、上述した課題１，２のいずれかを解決することができる負荷分散システム、負荷分散方法を提供することにある。
【課題を解決するための手段】
【００３０】
本発明の第１の負荷分散システムは、
複数のサービス装置と、上りパケットを前記複数のサービス装置のいずれかに振分ける負荷分散装置と、を有してなる負荷分散システムであって、
前記負荷分散装置は、
負荷分散部と、
コントローラ部と、を備え、
前記負荷分散部は、
タイマが満了している状態で上りのパケットを受信すると、該パケットを前記コントローラ部に送信し、
前記コントローラ部は、
前記負荷分散部からパケットを受信すると、該パケットの振分け先として前記複数のサービス装置のいずれかを選択し、
前記負荷分散部から受信したパケットの発着アドレスおよび発着ポート番号を含むフロー情報と、前記選択したサービス装置に該パケットを送信するためのアクションを規定したアクション情報と、を対応付けたフロールールを、前記負荷分散部のフロールールテーブルに設定し、
前記負荷分散部は、
前記コントローラ部からフロールールが設定されると、タイマを起動し、タイマの起動中に上りのパケットを受信すると、該パケットのフロー情報で前記フロールールテーブルからフロールールを検索し、検索したフロールールのアクション情報を基に該パケットを送信し、タイマが満了すると、フロールールを削除する。
【００３１】
本発明の第２の負荷分散システムは、
複数のサービス装置と、上りのパケットを前記複数のサービス装置のいずれかに振分ける第１の負荷分散装置と、下りパケットを前記複数のサービス装置のいずれかに振分ける第２の負荷分散装置と、を有してなる負荷分散システムであって、
コントローラをさらに有し、
前記第１の負荷分散装置は、
タイマが満了している状態で上りのパケットを受信すると、該パケットを前記コントローラに送信し、
前記第２の負荷分散装置は、
タイマが満了している状態で下りのパケットを受信すると、該パケットを前記コントローラに送信し、
前記コントローラは、
前記第１または前記第２の負荷分散装置のいずれかからパケットを受信すると、該パケットの振分け先として前記複数のサービス装置のいずれかを選択し、
前記第１または前記第２の負荷分散装置のいずれかから受信したパケットの発着アドレスおよび発着ポート番号を含むフロー情報と、前記選択したサービス装置に該パケットを送信するためのアクションを規定したアクション情報と、を対応付けたフロールールを、該パケットの送信元の負荷分散装置のフロールールテーブルに設定し、
前記第１の負荷分散装置は、
前記コントローラからフロールールが設定されると、タイマを起動し、タイマの起動中に上りのパケットを受信すると、該パケットのフロー情報で前記フロールールテーブルからフロールールを検索し、検索したフロールールのアクション情報を基に該パケットを送信し、タイマが満了すると、フロールールを削除し、
前記第２の負荷分散装置は、
前記コントローラからフロールールが設定されると、タイマを起動し、タイマの起動中に下りのパケットを受信すると、該パケットのフロー情報で前記フロールールテーブルからフロールールを検索し、検索したフロールールのアクション情報を基に該パケットを送信し、タイマが満了すると、フロールールを削除する。
【００３２】
本発明の第１の負荷分散方法は、
複数のサービス装置と、上りパケットを前記複数のサービス装置のいずれかに振分ける負荷分散装置と、を有してなる負荷分散システムによる負荷分散方法であって、
前記負荷分散装置は、負荷分散部と、コントローラ部と、を備えるものであり、
前記負荷分散部が、タイマが満了している状態で上りのパケットを受信すると、該パケットを前記コントローラに送信し、
前記コントローラ部が、前記負荷分散部からパケットを受信すると、該パケットの振分け先として前記複数のサービス装置のいずれかを選択し、
前記コントローラ部が、前記負荷分散部から受信したパケットの発着アドレスおよび発着ポート番号を含むフロー情報と、前記選択したサービス装置に該パケットを送信するためのアクションを規定したアクション情報と、を対応付けたフロールールを、前記負荷分散部のフロールールテーブルに設定し、
前記負荷分散部が、前記コントローラ部からフロールールが設定されると、タイマを起動しタイマの起動中に上りのパケットを受信すると、該パケットのフロー情報で前記フロールールテーブルからフロールールを検索し、検索したフロールールのアクション情報を基に該パケットを送信し、タイマが満了すると、フロールールを削除する。
【００３３】
本発明の第２の負荷分散方法は、
複数のサービス装置と、上りのパケットを前記複数のサービス装置のいずれかに振分ける第１の負荷分散装置と、下りパケットを前記複数のサービス装置のいずれかに振分ける第２の負荷分散装置と、を有してなる負荷分散システムによる負荷分散方法であって、
前記負荷分散システムは、コントローラをさらに有するものであり、
前記第１の負荷分散装置が、タイマが満了している状態で上りのパケットを受信すると、該パケットを前記コントローラに送信し、
前記第２の負荷分散装置が、タイマが満了している状態で下りのパケットを受信すると、該パケットを前記コントローラに送信し、
前記コントローラが、前記第１または前記第２の負荷分散装置のいずれかからパケットを受信すると、該パケットの振分け先として前記複数のサービス装置のいずれかを選択し、
前記コントローラが、前記第１または前記第２の負荷分散装置のいずれかから受信したパケットの発着アドレスおよび発着ポート番号を含むフロー情報と、前記選択したサービス装置に該パケットを送信するためのアクションを規定したアクション情報と、を対応付けたフロールールを、該パケットの送信元の負荷分散装置のフロールールテーブルに設定し、
前記第１の負荷分散装置が、前記コントローラからフロールールが設定されると、タイマを起動し、タイマの起動中に上りのパケットを受信すると、該パケットのフロー情報で前記フロールールテーブルからフロールールを検索し、検索したフロールールのアクション情報を基に該パケットを送信し、タイマが満了すると、フロールールを削除し、
前記第２の負荷分散装置が、前記コントローラからフロールールが設定されると、タイマを起動し、タイマの起動中に下りのパケットを受信すると、該パケットのフロー情報で前記フロールールテーブルからフロールールを検索し、検索したフロールールのアクション情報を基に該パケットを送信し、タイマが満了すると、フロールールを削除する。
【発明の効果】
【００３４】
本発明によれば、負荷分散部は、タイマ起動中でフロールールが存在する間は、フロールールのアクション情報に基づき、振分け先のサービス装置にパケットを送信し、タイマ満了によりフロールールが存在しなくなったパケットのみ、コントローラ部がセッション情報等を基に、振分け先のサービス装置を選択することになる。負荷分散部によるフロールールテーブルの検索は、ＴＣＡＭ等の検索エンジンで実行できる。
【００３５】
そのため、負荷分散の高速化を図ることができるという効果が得られる。
【図面の簡単な説明】
【００３６】
【図１Ａ】本実施形態の負荷分散システムのＮＷ構成を示す図である。
【図１Ｂ】本実施形態の負荷分散システムのＮＷ構成を示す図である。
【図２】本実施形態の負荷分散システムにおける課題１の解決方法を説明する図である。
【図３】本実施形態の負荷分散システムにおける課題１の解決方法を説明する図である。
【図４】本実施形態の負荷分散システムにおける課題２の解決方法を説明する図である。
【図５】本実施形態のコントローラと負荷分散装置の機能ブロック図である。
【図６】本実施形態のコントローラの動作を説明するフローチャートである。
【図７】本実施例の負荷分散システムのＮＷ構成を示す図である。
【図８】本実施例の負荷分散システムの動作を説明するタイムチャートである。
【図９】本実施例の負荷分散システムの動作を説明するタイムチャートである。
【図１０】ＴＣＰ終端処理を説明するシーケンス図である。
【図１１】ＴＣＰ状態管理処理を説明するシーケンス図である。
【図１２】既存技術１の負荷分散システムのＮＷ構成を示す図である。
【図１３】既存技術２の負荷分散システムのＮＷ構成を示す図である。
【図１４】既存技術１の負荷分散装置の機能ブロック図である。
【発明を実施するための形態】
【００３７】
以下に、本発明を実施するための形態について図面を参照して説明する。
（１）本実施形態の概要
図１Ａおよび図１Ｂは、本実施形態の負荷分散システムのＮＷ構成を示す図である。
【００３８】
なお、図１Ａは、既存技術１に本発明を適用し、課題１を解決するもので、図１Ｂは、既存技術２に本発明を適用し、課題１，２を解決するものである。
【００３９】
図１Ａに示した負荷分散システムは、図１２に示した既存技術１とＮＷ構成自体は同様であるが、負荷分散装置３０の構成が異なる。すなわち、負荷分散装置３０は、負荷分散を行う負荷分散部３２０に加えて、コントローラ部３３０を追加している。
【００４０】
図１Ｂに示した負荷分散システムは、図１３に示した既存技術２に対して、コントローラ５０を追加している。
【００４１】
本実施形態では、課題１に対しては、フロールールタイマー機能を利用して高速にセッション維持処理を行い、課題２に対しては、上りパケットと下りパケットとでコントローラ５０を共通化することにより、柔軟なパケットの振分けを行っても上りパケットと下りパケットについて振分け先のＮＷサービス装置２０を一致させるようにする。
【００４２】
以下では、図１ＢのＮＷ構成を例に挙げて、本実施形態の負荷分散システムについて説明する。
（１−１）課題１の解決方法の概要
まず、課題１の解決方法の概要を説明する。
【００４３】
本実施形態では、図２に示すように、負荷分散装置３０−１，３０−２は、セッション情報（例：ＴＣＰフラグ）を抽出し、抽出したセッション情報（例：ＴＣＰフラグ）とセッション状態（例：ＴＣＰ状態）を参照するセッション状態管理は行わない。
【００４４】
その代わりに、負荷分散装置３０−１，３０−２は、後述するタイマが満了している状態でパケットを受信すると、受信パケットをコントローラ５０に転送し、コントローラ５０は、負荷分散装置３０−１，３０−２にフロールールを設定する。
【００４５】
ここで、フロールールとは、パケットのフロー情報（例：ＤＡ、ＳＡ、ＤＰ、ＳＰ）と、そのパケットを振分け先のＮＷサービス装置２０に送信するためのアクションを規定したアクション情報（ＭＡＣアドレスと出先ポートの情報）と、を対応付けたものである。
【００４６】
負荷分散装置３０−１，３０−２は、フロールールが設定されると、タイマを起動し、タイマが満了するまでは、受信パケットに対して、フロールールのアクション情報に基づくアクション（ＭＡＣアドレスへの書き換えと出先ポートからのパケット送信）を実行する。
【００４７】
ここで、負荷分散装置３０−１とコントローラ５０の動作について、図３のタイムチャートを参照して説明する。
【００４８】
図３に示すように、まず、ステップＡ１において、負荷分散装置３０−１がクライアント１０からＳＹＮパケットを受信したとする。この時点では、タイマが満了しており、フロールールが存在しない状態である。そのため、負荷分散装置３０−１は、ＳＹＮパケットをコントローラ５０に送信する。
【００４９】
次に、ステップＡ２において、コントローラ５０は、負荷分散装置３０−１のフロールールテーブルにフロールールを設定すると共に、タイマ値を設定する。負荷分散装置３０−１は、コントローラ５０により設定されたタイマ値でタイマを起動する。
【００５０】
次に、ステップＡ３において、負荷分散装置３０−１がＦＩＮパケットを受信したとする。この時点では、タイマが起動中であり、フロールールが存在する状態である。そのため、負荷分散装置３０−１は、ＦＩＮパケットをコントローラ５０に送信せず、フロールールのアクション情報に基づくアクションを実行する。
【００５１】
次に、ステップＡ４において、タイマが満了したとする。すると、負荷分散装置３０−１は、フロールールテーブルからフロールールを削除する。
【００５２】
次に、ステップＡ５において、負荷分散装置３０−１がＳＹＮパケットを受信したとする。この時点では、タイマが満了しており、フロールールが存在しない状態である。そのため、負荷分散装置３０−１は、ＳＹＮパケットをコントローラ５０に送信する。
【００５３】
次に、ステップＡ６において、コントローラ５０は、負荷分散装置３０−１のフロールールテーブルにフロールールを設定すると共に、タイマ値を設定する。このとき、コントローラ５０は、ラウンドロビン方式により、別のＮＷサービス装置２０にパケットが転送されるようにフロールールを設定する。
【００５４】
既存技術１，２では、負荷分散装置３０は、全パケットについてＴＣＰフラグを抽出し、セッション状態を管理するため、負荷分散の高速化を図るのが困難であった。
【００５５】
これに対して、本実施形態では、負荷分散装置３０は、全てのパケットのセッション情報（例：ＴＣＰフラグ）を抽出することも、セッション状態（例：ＴＣＰ状態）の管理も行わず、タイマ満了によりフロールールが存在しなくなったパケットのみ、コントローラ５０がセッション情報（例：ＴＣＰフラグ）を見て処理することになる。また、負荷分散装置３０は、フロールールが存在する間は、フロールールのアクション情報に基づき、アクションを実行する。フロールールテーブルの検索は、ＴＣＡＭ（Ternary Content Addressable Memory）等の検索エンジンで実行できる。
【００５６】
そのため、本実施形態では、負荷分散の高速化を図ることができる。
（１−２）課題２の解決方法の概要
次に、課題２の解決方法の概要を説明する。
【００５７】
パケットを動的にＮＷサービス装置２０に振分ける場合、同一セッションの上りパケットと下りパケットについては振分け先のＮＷサービス装置２０を一致させる必要がある。
【００５８】
そこで、本実施形態では、図４に示すように、上りパケットと下りパケットとでコントローラ５０を共通化する。
【００５９】
また、コントローラ５０は、後述の設定ログテーブルでパケットの発アドレス、発ポート番号、着アドレス、および着ポート番号と、そのパケットの振分け先として設定したＮＷサービス装置２０の装置ＩＤ（識別番号）と、を対応付けたログを管理する。
【００６０】
そして、コントローラ５０は、パケットを受信すると、パケットの発着アドレスおよび発着ポート番号で設定ログテーブルからログを検索するだけでなく、発アドレスおよび発ポート番号と、着アドレスおよび着ポート番号と、を逆にして設定ログテーブルからログを検索することも行い、検索したログのＮＷサービス装置２０を振分け先とする。
【００６１】
それにより、コントローラ５０は、上りセッションと下りセッションを認識し、同一セッションの上りパケットと下りパケットを、同一のＮＷサービス装置２０に振分けることができる。
【００６２】
このように、本実施形態では、柔軟なパケットの振分けを行っても、上りパケットと下りパケットを、同一のＮＷサービス装置２０に振分けることが可能となる。
【００６３】
また、レイヤを跨る振分けが可能となるため、柔軟な負荷分散が可能となる。
（２）本実施形態の詳細
以下、本実施形態の詳細な構成および動作について説明する。
（２−１）本実施形態の詳細構成
まず、本実施形態の詳細構成を説明する。
【００６４】
図５は、本実施形態の負荷分散装置３０−１，３０−２およびコントローラ５０の機能ブロック図である。
【００６５】
図５に示すように、本実施形態の負荷分散装置３０−１，３０−２は、転送処理部３１を有している。転送処理部３１は、パケット受信部３１１と、パケット検索部３１２と、パケット送信部３１３と、記憶部３１４と、タイマ３１５と、を有している。記憶部３１４には、フロールールテーブルが格納されている。フロールールテーブルは、図１４のコネクションテーブルからＴＣＰ状態の項目を削除したものに相当する。
【００６６】
本実施形態のコントローラ５０は、ルール設定部５１と、情報処理部５２と、を有している。ルール設定部５１は、設定処理部５１１と、ＴＣＰフラグ判定部５１２と、記憶部５１３と、を有している。記憶部５１３には、設定ログテーブルが格納されている。情報管理部５２は、装置ＩＤ検索部５２１と、ＮＥＸＴ−ＩＤ検索部５２２と、記憶部５２３と、を有している。記憶部５２３には、ＮＷサービス装置情報テーブルが格納されている。
【００６７】
パケット受信部３１１は、パケットを受信する。
【００６８】
パケット検索部３１２は、パケット受信部３１１がパケットを受信すると、まず、タイマ３１５が起動中であるか判断する。
【００６９】
タイマ３１５が起動中である場合、パケット検索部３１２は、受信パケットからＳＡ、ＤＡ、ＳＰ、ＤＰを抽出し、ＳＡ、ＤＡ、ＳＰ、ＤＰでフロールールテーブルからフロールールを検索し、検索したフロールールからＭＡＣアドレスと出先ポートの情報を取得する。
【００７０】
一方、タイマ３１５が満了している場合、パケット検索部３１２は、受信パケットをコントローラ５０に送信する。
【００７１】
この場合、後述のように、コントローラ５０によりフロールールテーブルにフロールールが設定されるため、パケット検索部３１２は、そのフロールールからＭＡＣアドレスと出先ポートの情報を取得する。
【００７２】
また、パケット検索部３１２は、コントローラ５０によりフロールールと共にタイマ値が設定されると、そのタイマ値でタイマ３１５を起動する。
【００７３】
なお、タイマ３１５のタイマ値（すなわち、フロールールの寿命）は予め定めておく（例：２０秒）。タイマ満了時でもフロールールテーブルにアクセスしていることが明らかな場合は、パケット検索部３１２がタイマ３１５を延長するという実装をしても良い。
【００７４】
パケット送信部３１３は、パケット検索部３１２が取得した情報を基に、ＭＡＣアドレスへの書き換えと出先ポートからのパケット送信を行う。
【００７５】
設定処理部５１１は、転送処理部３１からパケットを受信すると、受信パケットからＳＡ、ＤＡ、ＳＰ、ＤＰ、ＴＣＰフラグを抽出するとともに、負荷分散装置３０の識別番号を抽出する。
【００７６】
ＴＣＰフラグ判定部５１２は、ＴＣＰフラグを判定する。
【００７７】
受信パケットがＳＹＮパケットである場合、設定処理部５１１は、ＭＡＣアドレスと出先ポートの情報を情報管理部５２に要求し、情報管理部５２からＭＡＣアドレスと出先ポートの情報を取得する。
【００７８】
一方、受信パケットがＳＹＮパケットでない場合、設定処理部５１１は、ＳＡ、ＤＡ、ＳＰ、ＤＰで設定ログテーブルからログを検索し、ＭＡＣアドレスと出先ポートの情報を取得する。このとき、設定処理部５１１は、ＳＡおよびＳＰとＤＡおよびＤＰとを逆にして設定ログテーブルからログを検索することも行う。詳細には、設定ログテーブルから検索したログの装置ＩＤを指定してＮＷサービス装置情報テーブルを検索し、ＭＡＣアドレスと出先ポートの情報を取得することになる。
【００７９】
そして、設定処理部５１１は、受信パケットのＳＡ、ＤＡ、ＳＰ、ＤＰと取得したＭＡＣアドレスと出先ポートの情報とを対応付けたフロールールを、負荷分散装置３０のフロールールテーブルに設定する。また、設定処理部５１１は、フロールールと共にタイマ値を負荷分散装置３０に設定し、受信パケットを負荷分散装置３０に返す。
【００８０】
また、設定処理部５１１は、負荷分散装置３０に設定したフロールールに基づくログ（すなわち、フロールールを設定したパケットの発着アドレスおよび発着ポート番号とそのパケットの振分け先として選択したＮＷサービス装置２０の装置ＩＤとを対応付けたもの）を、設定ログテーブルに追加する。なお、設定処理部５１１は、追加したログにつき、予め定めた時間（例えば：６０秒）が経過したら、削除する。
【００８１】
装置ＩＤ検索部５２１は、ルール設定部５１からＭＡＣアドレスと出先ポートの情報の要求を受けると、Ｎｅｘｔ装置ＩＤでＮＷサービス装置情報テーブルから該当するＭＡＣアドレスと出先ポートの情報を検索し、検索した情報をルール設定部５１へ送信する。
【００８２】
また、装置ＩＤ検索部５２１は、ルール設定部５１から、装置ＩＤを指定した上で（例：設定ログテーブルから検索したログの装置ＩＤ）ＭＡＣアドレスと出先ポートの情報の要求を受けると、指定された装置ＩＤでＮＷサービス装置情報テーブルから該当するＭＡＣアドレスと出先ポートの情報を検索し、検索した情報をルール設定部５１へ送信する。
【００８３】
ＮＥＸＴ−ＩＤ検索部３２２は、装置ＩＤ検索部５２１がＭＡＣアドレスと出先ポートの情報をルール設定部５１へ送信すると、Ｎｅｘｔ装置ＩＤを＋１（３で割った余りを設定）し、これを装置ＩＤ検索部５２１に登録する。
（２−２）本実施形態の詳細動作
次に、本実施形態の詳細動作を説明する。
【００８４】
図６は、本実施形態のコントローラ５０の動作を説明するフローチャートである。
【００８５】
図６に示すように、ステップＢ１において、負荷分散装置３０からパケットを受信すると、ステップＢ２において、設定処理部５１１は、受信パケットからＳＡ、ＤＡ、ＳＰ、ＤＰ、ＴＣＰフラグを抽出するとともに、負荷分散装置３０の識別番号を抽出する。
【００８６】
次に、ステップＢ３において、ＴＣＰフラグ判定部５１２は、ＴＣＰフラグを基に、受信パケットがＳＹＮパケットであるか否かを判定する。
【００８７】
受信パケットがＳＹＮパケットである場合（ステップＢ３のＹｅｓ）、ステップＢ４において、設定処理部５１１は、ＭＡＣアドレスと出先ポートの情報を情報管理部５２に要求し、装置ＩＤ検索部５２１は、Ｎｅｘｔ装置ＩＤでＮＷサービス装置情報テーブルを検索し、ＭＡＣアドレスと出先ポートの情報をルール設定部５１へ送信する（この場合、Ｎｅｘｔ装置ＩＤのＮＷサービス装置２０が振分け先として選択されたことになる）。また、ＮＥＸＴ−ＩＤ検索部３２２は、Ｎｅｘｔ装置ＩＤを＋１（３で割った余りを設定）する。
【００８８】
一方、受信パケットがＳＹＮパケットでない場合（ステップＢ３のＮｏ）、ステップＢ５において、設定処理部５１１は、ＳＡ、ＤＡ、ＳＰ、ＤＰで設定ログテーブルからログを検索し、検索したログを基にＭＡＣアドレスと出先ポートの情報を取得する（この場合、検索されたログの装置ＩＤのＮＷサービス装置２０が振分け先として選択されたことになる）。このとき、設定処理部５１１は、ＳＡおよびＳＰとＤＡおよびＤＰとを逆にして検索することも行う。
【００８９】
次に、ステップＢ６において、設定処理部５１１は、受信パケットのＳＡ、ＤＡ、ＳＰ、ＤＰと取得したＭＡＣアドレスと出先ポートの情報とを対応付けたフロールールを、負荷分散装置３０のフロールールテーブルに設定する。また、設定処理部５１１は、受信パケットを負荷分散装置３０に返す。
【００９０】
その後、ステップＢ７において、設定処理部５１１は、負荷分散装置３０に設定したフロールールに基づくログを、設定ログテーブルに追加する。このとき、負荷分散装置３０に設定したフロールールと同一のＳＡ、ＤＡ、ＳＰ、ＤＰの情報を持つログが設定ログテーブルに存在する場合がある（例：ＳＡおよびＳＰとＤＡおよびＤＰとを逆にしたログが設定ログテーブルに存在する場合）。この場合、設定処理部５１１は、そのログを削除した上で、新たなログを設定ログテーブルに追加する。
【００９１】
上述したように、本実施形態では、負荷分散装置３０は、全てのパケットのセッション情報（例：ＴＣＰフラグ）を抽出することも、セッション状態（例：ＴＣＰ状態）の管理も行わず、タイマ満了によりフロールールが存在しなくなったパケットのみ、コントローラ５０がセッション情報（例：ＴＣＰフラグ）を見て処理する。また、負荷分散装置３０は、フロールールが存在する間は、フロールールのアクション情報に基づき、アクションを実行する。フロールールテーブルの検索は、ＴＣＡＭ等の検索エンジンで実行できる。
【００９２】
そのため、本実施形態では、負荷分散の高速化を図ることができる。
【００９３】
また、本実施形態では、上りパケットと下りパケットとでコントローラ５０を共通化し、コントローラ５０は、パケットを受信すると、パケットの発着アドレスおよび発着ポート番号で設定ログテーブルからログを検索するだけでなく、発アドレスおよび発ポート番号と着アドレスおよび着ポート番号とを逆にして検索することも行う。それにより、コントローラ５０は、上りセッションと下りセッションを認識し、同一セッションの上りパケットと下りパケットを、同一のＮＷサービス装置２０に振分けることができる。
【００９４】
そのため、柔軟なパケットの振分けを行っても、上りパケットと下りパケットを、同一のＮＷサービス装置２０に振分けることが可能となる。また、レイヤを跨る振分けが可能となるため、柔軟な負荷分散が可能となる。
【実施例】
【００９５】
以下、本実施形態の具体的な実施例について説明する。
【００９６】
図７は、本実施例の負荷分散システムのＮＷ構成を示す図である。
【００９７】
図７に示すように、本実施例の負荷分散システムは、オープンフロー（Openflow）装置（ＯＦＳ：OpenflowSwitch、ＯＦＣ：OpenflowController）を用いた構成になっている。
【００９８】
すなわち、負荷分散装置３０−１，３０−２としてＯＦＳを配置し、コントローラ５０としてＯＦＣを配置している。
【００９９】
図８および図９は、本実施例のＯＦＳおよびＯＦＣの動作を説明するタイムチャートである。なお、図８は、ＴＣＰ処理が２０秒以内である場合のタイムチャートを示し、図９は、ＴＣＰ処理が２０秒よりも長い場合のタイムチャートを示している。
【０１００】
図８および図９に示すように、まず、ステップＣ１において、ＯＦＳ１がＳＹＮパケットを受信したとする。この時点では、タイマが満了しており、フロールールが存在しない状態である。そのため、ＯＦＳ１は、ＳＹＮパケットをＯＦＣに送信する。
【０１０１】
次に、ステップＣ２において、ＯＦＣは、ＯＦＳ１からのパケットがＳＹＮパケットであることを確認し、ラウンドロビン方式で振分け先のＮＷサービス装置２０を選択し、選択したＮＷサービス装置２０にＳＹＮパケットが転送されるようなフロールールを、タイマ値（例：２０秒）と共にＯＦＣ１に設定する（具体的には、宛先ＮＷサービス装置２０のＭＡＣアドレスと出先ポートの情報を含むフロールールをＯＦＣ１に設定する）。ＯＦＳ１は、ＯＦＣにより設定されたタイマ値でタイマを起動する。
【０１０２】
ここで、図８に示すように、ＴＣＰ処理が２０秒以内である場合は、ステップＣ３のＴＣＰ処理は、２０秒以内に行われ、フロールールが存在する状態であるため、ＯＦＳ１は、ステップＣ３のパケット（ＦＩＮパケットやＢＹＥパケット）をＯＦＣに送信しない。また、ステップＣ４のＴＣＰ処理は、２０秒以降に行われ、フロールールが削除された状態であるため、ＯＦＳ１は、ステップＣ４のパケットをＯＦＣに送信する。このパケットは、ＳＹＮパケットであるため、再度ステップＣ１と同様の手順で処理され、ＯＦＣは、ラウンドロビン方式で別のＮＷサービス装置２０を選択する。
【０１０３】
一方、図９に示すように、ＴＣＰ処理が２０秒よりも長い場合は、ステップＣ６のＴＣＰ処理が行われる前に、フローテーブルが削除されるため、ＯＦＳ１は、ステップＣ６のパケットをＯＦＣに送信する。ＯＦＣは、パケットがＳＹＮパケットでない（ＡＣＫパケットなど）こと、そのパケットのログが設定ログテーブルに存在することを確認し、ステップＣ７において、削除されたフロールールと同一のフロールールをＯＦＳ１に再度設定する（すなわち、ＯＦＣは、同一のＮＷサービス装置２０を選択する）。このとき、タイマ値は再び２０秒に設定する。以降の処理は図８と略同様になる。
【０１０４】
なお、上記実施形態および上記実施例では、図１ＢのＮＷ構成を例に挙げて説明した。図１ＡのＮＷ構成にする場合は、負荷分散装置３０の負荷分散部３２０として、図５の転送処理部３１を設け、コントローラ部３３０として、図５のルール設定部５１および情報管理部５２を設ければ良い。ただし、ＮＷサービス装置情報テーブルは図１４に示したものに置き換える。
【０１０５】
この場合も、負荷分散装置３０は、全てのパケットのセッション情報（例：ＴＣＰフラグ）を抽出することも、セッション状態（例：ＴＣＰ状態）の管理も行わず、タイマ満了によりフロールールが存在しなくなったパケットのみ、セッション情報（例：ＴＣＰフラグ）を見て処理することになる。また、負荷分散装置３０は、フロールールが存在する間は、フロールールに従って、パケットに対するアクションを実行するが、フロールールの検索は、ＴＣＡＭ等の検索エンジンで実行できる。そのため、図１ＡのＮＷ構成でも、負荷分散の高速化を図ることができ、課題１は解決できる。
【０１０６】
また、上記実施形態および上記実施例では、フロー情報がＳＡ、ＤＡ、ＳＰ、ＤＰである場合を例に挙げて説明したが、フロー情報は、これに限定されず、オープンフロー（Openflow）で規定されている下記３９個のどのような組み合わせでも成立可能である。
/* OXM Flow match field types for OpenFlow basic class. */
enum oxm_ofb_match_fields [
OFPXMT_OFB_IN_PORT = 0, /* Switch input port. */
OFPXMT_OFB_IN_PHY_PORT = 1, /* Switch physical input port. */
OFPXMT_OFB_METADATA = 2, /* Metadata passed between tables. */
OFPXMT_OFB_ETH_DST = 3, /* Ethernet destination address. */
OFPXMT_OFB_ETH_SRC = 4, /* Ethernet source address. */
OFPXMT_OFB_ETH_TYPE = 5, /* Ethernet frame type. */
OFPXMT_OFB_VLAN_VID = 6, /* VLAN id. */
OFPXMT_OFB_VLAN_PCP = 7, /* VLAN priority. */
OFPXMT_OFB_IP_DSCP = 8, /* IP DSCP (6 bits in ToS field). */
OFPXMT_OFB_IP_ECN = 9, /* IP ECN (2 bits in ToS field). */
OFPXMT_OFB_IP_PROTO = 10, /* IP protocol. */
OFPXMT_OFB_IPV4_SRC = 11, /* IPv4 source address. */
OFPXMT_OFB_IPV4_DST = 12, /* IPv4 destination address. */
OFPXMT_OFB_TCP_SRC = 13, /* TCP source port. */
OFPXMT_OFB_TCP_DST = 14, /* TCP destination port. */
OFPXMT_OFB_UDP_SRC = 15, /* UDP source port. */
OFPXMT_OFB_UDP_DST = 16, /* UDP destination port. */
OFPXMT_OFB_SCTP_SRC = 17, /* SCTP source port. */
OFPXMT_OFB_SCTP_DST = 18, /* SCTP destination port. */
OFPXMT_OFB_ICMPV4_TYPE = 19, /* ICMP type. */
OFPXMT_OFB_ICMPV4_CODE = 20, /* ICMP code. */
OFPXMT_OFB_ARP_OP = 21, /* ARP opcode. */
OFPXMT_OFB_ARP_SPA = 22, /* ARP source IPv4 address. */
OFPXMT_OFB_ARP_TPA = 23, /* ARP target IPv4 address. */
OFPXMT_OFB_ARP_SHA = 24, /* ARP source hardware address. */
OFPXMT_OFB_ARP_THA = 25, /* ARP target hardware address. */
OFPXMT_OFB_IPV6_SRC = 26, /* IPv6 source address. */
OFPXMT_OFB_IPV6_DST = 27, /* IPv6 destination address. */
OFPXMT_OFB_IPV6_FLABEL = 28, /* IPv6 Flow Label */
OFPXMT_OFB_ICMPV6_TYPE = 29, /* ICMPv6 type. */
OFPXMT_OFB_ICMPV6_CODE = 30, /* ICMPv6 code. */
OFPXMT_OFB_IPV6_ND_TARGET = 31, /* Target address for ND. */
OFPXMT_OFB_IPV6_ND_SLL = 32, /* Source link-layer for ND. */
OFPXMT_OFB_IPV6_ND_TLL = 33, /* Target link-layer for ND. */
OFPXMT_OFB_MPLS_LABEL = 34, /* MPLS label. */
OFPXMT_OFB_MPLS_TC = 35, /* MPLS TC. */
OFPXMT_OFP_MPLS_BOS = 36, /* MPLS BoS bit. */
OFPXMT_OFB_PBB_ISID = 37, /* PBB I-SID. */
OFPXMT_OFB_TUNNEL_ID = 38, /* Logical Port Metadata. */
OFPXMT_OFB_IPV6_EXTHDR = 39, /* IPv6 Extension Header pseudo-field */
];
【符号の説明】
【０１０７】
１０−１〜１０−３    クライアント
２０−０〜２０−２    ＮＷサービス装置
３０，３０−１，３０−２    負荷分散装置
３１    転送処理部
３１１    パケット受信部
３１２    パケット検索部
３１３    パケット送信部
３１４    記憶部
３１５    タイマ
３２０    負荷分散部
３３０    コントローラ部
４０    サーバ
５０    コントローラ
５１    ルール設定部
５１１    設定処理部
５１２    ＴＣＰフラグ判定部
５１３    記憶部
５２    情報処理部
５２１    装置ＩＤ検索部
５２２    ＮＥＸＴ−ＩＤ検索部
５２３    記憶部
【図６】
2014158143.tif 000003
【図１０】
2014158143.tif 000004
【図１Ａ】
2014158143.tif 000005
【図１Ｂ】
2014158143.tif 000006
【図２】
2014158143.tif 000007
【図３】
2014158143.tif 000008
【図４】
2014158143.tif 000009
【図５】
2014158143.tif 000010
【図７】
2014158143.tif 000011
【図８】
2014158143.tif 000012
【図９】
2014158143.tif 000013
【図１１】
2014158143.tif 000014
【図１２】
2014158143.tif 000015
【図１３】
2014158143.tif 000016
【図１４】
2014158143.tif 000017