JP6926734B2 - 経路制御装置および経路制御方法 - Google Patents

経路制御装置および経路制御方法 Download PDF

Info

Publication number
JP6926734B2
JP6926734B2 JP2017130095A JP2017130095A JP6926734B2 JP 6926734 B2 JP6926734 B2 JP 6926734B2 JP 2017130095 A JP2017130095 A JP 2017130095A JP 2017130095 A JP2017130095 A JP 2017130095A JP 6926734 B2 JP6926734 B2 JP 6926734B2
Authority
JP
Japan
Prior art keywords
route
traffic flow
token
range
information
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
JP2017130095A
Other languages
English (en)
Other versions
JP2019012982A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017130095A priority Critical patent/JP6926734B2/ja
Priority to US16/021,733 priority patent/US10785147B2/en
Publication of JP2019012982A publication Critical patent/JP2019012982A/ja
Application granted granted Critical
Publication of JP6926734B2 publication Critical patent/JP6926734B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/44Distributed routing

Description

本発明は、トラフィックフローが通過する経路を制御する装置および方法に係わる。
近年、端末からアプリケーションへのアクセス遅延を削減するために、クラウド上ではなくエッジサーバにアプリケーションを配置する構成が実用化されている。この場合、エッジサーバは、トラフィックフローがエッジサーバ内に配置されている1または複数のアプリケーションを通過するように経路制御を実行する。また、エッジサーバは、必要に応じて、そのトラフィックフローをクラウド上に配置されている他のアプリケーション(例えば、業務アプリケーション等)に導く。なお、モバイルネットワークにおいては、エッジサーバは、例えば、基地局の近くに配置される。
図1は、エッジサーバを備えるネットワークの一例を示す。図1に示す例では、組織Aの業務アプリケーション300がクラウド上に配置されている。なお、「組織」は、例えば、企業または法人に相当する。組織Aに属する端末100は、エッジサーバ200に収容されている。なお、エッジサーバ200は、組織Aとは異なる組織Dにより管理および運用されている。エッジサーバ200を管理および運用する組織Dは、例えば、通信キャリア(モバイルネットワークにおいては、携帯電話事業者)に相当する。そして、端末100は、エッジサーバ200を介して業務アプリケーション300にアクセスすることができる。
エッジサーバ200は、複数のアプリケーションを収容できる。図1に示す例では、エッジサーバ200は、組織Aのアプリケーション#1、および組織Bのアプリケーション#2、#3を収容している。また、エッジサーバ200は、経路指定受付部201および経路制御部202を備える。経路指定受付部201は、トラフィックフローの経路を指定する経路指定情報を受け付ける。経路制御部202は、経路指定受付部201が受け付けた経路指定情報に従って、トラフィックフローの経路を制御する。
例えば、端末100から業務アプリケーション300へのアクセスは、以下のポリシを満足することが推奨されるものとする。
(1)アプリケーション#1により事前処理を実行する
(2)アプリケーション#1の前にアプリケーション#2によるセキュリティ処理を実行する
(3)アプリケーション#2の前にアプリケーション#3によるフィルタ処理を実行する
この場合、端末100から業務アプリケーション300へ向かうフローは、順番に、アプリケーション#3、アプリケーション#2、アプリケーション#1を通過するように制御される。
なお、関連する技術は、例えば、特許文献1、2に開示されている。
特開2004−157713号公報 特開2017−41846号公報
上述したネットワークにおいて、エッジサーバ200内でのトラフィックフローの経路は、例えば、端末100から指定される。ただし、端末100は、端末100が属する組織以外の組織のアプリケーションを認識していないことがある。図1に示す例では、端末100は、組織Bのアプリケーション#2、#3を認識していないかも知れない。この場合、アプリケーション#2、#3を通過するトラフィックフローを生成することはできない。
この問題は、例えば、上述したポリシ(2)(3)を事前に端末100に通知しておけば解決され得る。ただし、この場合、セキュリティ対策を行うか否かが端末により判断されることになるので、好ましい運用形態ではない。
また、組織Aの管理者は、通常、組織Bのアプリケーションの構成を把握していない。例えば、組織Aと組織Bとの間で組織Bのセキュリティソフト(ここでは、アプリケーション#2)を使用する契約が結ばれたものとする。ただし、組織Aの管理者は、セキュリティソフトの入力側にフィルタソフト(ここでは、アプリケーション#3)が配置されるべきである旨を知らない。この場合、図1に示す経路を設定することは困難である。
加えて、図1に示す例では、トラフィックフローの宛先は業務アプリケーション300である。すなわち、アプリケーション#1は、トラフィックフローの宛先ではない。この場合、アプリケーション#1は、トラフィックフローの経路を指定する権限を有していない。
このように、従来技術においては、エッジサーバ内でのトラフィックフローの経路の設定が困難なことがある。すなわち、従来技術においては、エッジサーバ内で所望のアプリケーションを通過するトラフィックフローの設定が困難なことがある。
本発明の1つの側面に係わる目的は、トラフィックフローの経路を柔軟に指定できる装置および方法を提供することである。
本発明の1つの態様の経路制御装置は、複数のエンティティを収容するサーバ内でトラフィックフローの経路を制御する。この経路制御装置は、前記サーバ内の所定の範囲において前記トラフィックフローの経路を指定する権限を表す制御情報を発行する発行部と、前記複数のエンティティの中の1つのエンティティから、前記トラフィックフローの経路を指定する経路指定情報および前記制御情報を受信したときに、前記経路指定情報が前記所定の範囲内で経路を指定しているか判定する受付部と、前記経路指定情報が前記所定の範囲内で経路を指定するときに、前記経路指定情報に基づいて前記トラフィックフローの経路を制御する経路制御部と、を備える。
上述の態様によれば、トラフィックフローの経路を柔軟に指定できる。
エッジサーバを備えるネットワークの一例を示す図である。 本発明の実施形態に係わるエッジサーバを含むネットワークの一例を示す図である。 経路を指定する手順の一例を示す図(その1)である。 経路を指定する手順の一例を示す図(その2)である。 図3に示す手順に対応するシーケンス図である。 図4に示す手順に対応するシーケンス図である。 トークンのフォーマットの一例を示す図である。 経路指定情報管理テーブルの例を示す図である。 経路情報テーブルの一例を示す図である。 トークンに基づいてトラフィックフローを処理する方法の一例を示す図である。 図10に示す方法に対応するシーケンス図である。 トークン発行部の処理の一例を示すフローチャートである。 経路指定受付部の処理の一例を示すフローチャートである。 経路制御部の処理の一例を示すフローチャートである。 端末の構成の一例を示す図である。 端末管理装置の構成の一例を示す図である。 エッジサーバの構成の一例を示す図である。 エッジサーバ管理装置の構成の一例を示す図である。 他の実施形態の例を示す図である。
図2は、本発明の実施形態に係わるエッジサーバを含むネットワークの一例を示す。図2に示す例では、組織Aの業務アプリケーション30がクラウド上に配置されている。なお、「組織」は、例えば、企業または法人に相当する。業務アプリケーション30は、サーバコンピュータ(目的サーバ)に実装されている。組織Aに属する端末10は、エッジサーバに接続することができる。図2に示す例では、端末10は、エッジサーバ40に収容される。エッジサーバ40は、組織Aとは異なる組織Dにより管理および運用されている。エッジサーバ40を管理および運用する組織Dは、例えば、通信キャリア(モバイルネットワークにおいては、携帯電話事業者)に相当する。そして、端末10は、エッジサーバ40を介して業務アプリケーション30にアクセスする。なお、以下の記載では、端末10からクラウドへ信号を伝送するリンクを「アップリンク」と呼ぶことがある。クラウドから端末10へ信号を伝送するリンクを「ダウンリンク」と呼ぶことがある。
端末管理装置20は、組織Aに属する端末を管理する。即ち、端末管理装置20は、端末10を含む複数の端末を管理する。例えば、端末管理装置20は、各端末がアクセスする業務アプリケーションを認識している。図2では、端末管理装置20は、端末10が業務アプリケーション30を利用することを認識している。また、端末管理装置20は、トークン要求部21を備える。トークン要求部21は、エッジサーバ管理装置50に対して後述するトークンを要求することができる。
エッジサーバ40は、複数のアプリケーションを収容することができる。図2に示す例では、エッジサーバ40は、組織Aのアプリケーション#1、組織Bのアプリケーション#2、#3、および組織Cのアプリケーション#4、#5を収容している。アプリケーション#1は、業務アプリケーション30の前処理を実行する。アプリケーション#2は、セキュリティ処理を実行する。セキュリティ処理は、例えば、ファイアウォール機能を提供する。アプリケーション#3は、フィルタ処理を実行する。アプリケーション#4は、ログ処理を実行する。ログ処理は、エッジサーバを通過するトラフィックフローを記録する。アプリケーション#5は、キャプチャ処理を実行する。キャプチャ処理は、エッジサーバを通過するトラフィックフロー中のパケットを保存する。
エッジサーバ40は、経路指定受付部41および経路制御部42を備える。経路指定受付部41は、エッジサーバ40内でのトラフィックフローの経路を指定する経路指定情報を受け付ける。このとき、経路指定受付部41は、経路指定情報により指定される経路を許可するか否かを判定する。経路制御部42は、経路指定受付部41が受け付けた経路指定情報に従って、トラフィックフローの経路を制御する。
エッジサーバ管理装置50は、エッジサーバ40を管理する。したがって、エッジサーバ管理装置50は、エッジサーバ40と同様に、組織Dにより運用される。また、エッジサーバ管理装置50は、トークン発行部51を備える。トークン発行部51は、端末管理装置20またはエッジサーバ40からの要求に応じてトークンを発行する。尚、エッジサーバ40およびエッジサーバ管理装置50は、1台のコンピュータで実現してもよいし、複数のコンピュータで実現してもよい。また、エッジサーバ管理装置50は、複数のエッジサーバ40を管理してもよい。
上記構成のコンピューティング環境において、組織Aは、業務アプリケーション30へのアクセスに際して、以下のポリシを有しているものとする。なお、組織Aと組織Bとの間でアプリケーション#2の使用に関する契約が成立しているものとする。すなわち、組織Aにとって、アプリケーション#2は信頼できるソフトウェアである。
(A1)アプリケーション#1により事前処理を実行する。
(A2)アプリケーション#1を実行する前に組織Bのアプリケーション#2によるセキュリティ処理を実行する。
したがって、アプリケーション#1は、ポリシA2を満足するために、アプリケーション#1を通過するトラフィックフローがアプリケーション#1の前にアプリケーション#2を通過することを指定する経路指定情報を生成する機能を備える。
組織Bは、アプリケーション#2の実行に際して、以下のポリシを有しているものとする。なお、組織Bと組織Cとの間でアプリケーション#4の使用に関する契約が成立しているものとする。すなわち、組織Bにとって、アプリケーション#4は信頼できるソフトウェアである。
(B1)アプリケーション#2を実行する前にアプリケーション#3によるフィルタ処理を実行する。
(B2)アプリケーション#3を実行する前に組織Cのアプリケーション#4によるログ処理を実行する。
したがって、アプリケーション#2は、ポリシB1およびB2を満足するために、アプリケーション#2を通過するトラフィックフローがアプリケーション#2の前にアプリケーション#3および#4を通過することを指定する経路指定情報を生成する機能を備える。
組織Cは、アプリケーション#4の実行に際して、以下のポリシを有しているものとする。
(C1)アプリケーション#4を実行する前にアプリケーション#5によるキャプチャ処理を実行する。
したがって、アプリケーション#4は、ポリシC1を満足するために、アプリケーション#4を通過するトラフィックフローがアプリケーション#4の前にアプリケーション#5を通過することを指定する経路指定情報を生成する機能を備える。
上記構成のコンピューティング環境において、エッジサーバ40は、エッジサーバ40に収容される端末のトラフィックフローの経路を制御する。図2に示す例では、エッジサーバ40は、端末10のアップリンクトラフィックフローおよびダウンリンクトラフィックフローを、指定された1または複数のアプリケーションを通過させる。
このとき、エッジサーバ40は、複数のトラフィックフローの中から端末10と業務アプリケーション30との間のトラフィックフローを識別する必要がある。ここで、トラフィックフローは、例えば、IPアドレスおよびL4ポート番号により識別される。但し、例えば、業務アプリケーション30がSaaS(Software as a Service)として提供される場合には、複数の端末が同じ宛先IPアドレスおよび宛先L4ポート番号を使用するので、宛先IPアドレス/宛先L4ポート番号でトラフィックフローを識別することはできない。また、送信元IPアドレスは、端末10がネットワークに接続されるときに端末10に動的に割り当てられる。さらに、送信元L4ポート番号は、トラフィックフローが生成されるときに、未使用のポート番号の中から動的に選択される。したがって、送信元IPアドレスおよび送信元L4ポート番号でトラフィックフローを識別すること困難である。
端末10に対して固定的に設定されている識別情報を使用すれば、エッジサーバ20は端末10のトラフィックフローを識別できるかも知れない。ただし、BYOD(Bring Your Own Device)環境においては、端末10のトラフィックフローは、業務アプリケーション30にアクセスするトラフィックフローだけでなく、私用のトラフィックフローを含む。よって、この場合、端末10から業務アプリケーション30にアクセスするトラフィックフローを識別することは困難である。
そこで、本発明の実施形態に係わる経路制御方法では、「トークン」を用いてトラフィックフローが識別される。トークンは、所定のトラフィックフローに対してエッジサーバ40内での経路を指定するために生成される。そして、このトークンは、端末10が業務アプリケーション30にアクセスする際に、端末10から送信されるパケットに付与される。また、エッジサーバ40は、トークンが付与されたパケットを受信すると、そのトークンに対して指定されている経路を通過するようにそのパケットを処理する。この結果、エッジサーバ40は、端末10と業務アプリケーション30との間のトラフックフローが所望のアプリケーションを通過するように、そのトラフックフローの経路を制御できる。
図3〜図4は、トラフィックフローの経路を指定する手順の一例を示す。また、図5〜図6は、図3〜図4に対応するシーケンス図である。
S1において、端末管理装置20に実装されるトークン要求部21は、エッジサーバ管理装置50に実装されるトークン発行部51に対してトークンを要求する。この例では、トークン要求部21は、端末10のBYOD環境上の端末アプリケーションが送信または受信するトラフィックフローについての経路指定権限を代表するトークンを要求する。したがって、トークン要求部21から要求されるトークン要求は、以下の情報を含む。
・端末ID:端末10
・フローの識別:トークンによる
なお、BYOD環境においては、上述したように、トラフィックフローが設定される前は、パケットのヘッダに格納される要素(アドレス、ポート番号等)によって業務アプリケーション30に係わるトラフィックフローを識別することはできない。よって、「フローの識別」としてトークンを使用する方法が選択される。ただし、トラフィックフローが設定される前に、パケットのヘッダに格納される要素によって業務アプリケーション30に係わるトラフィックフローを識別できるときは、「フローの識別」としてその要素がトークン発行部51に通知されるようにしてもよい。
S2において、トークン発行部51は、トークン要求部21から要求されたトークンを発行(または、生成)する。トークン発行部51により発行されるトークンは、図7に示すように、トークンID、発行元組織ID、発行元エンティティID、発行先エンティティID、発行先組織ID、発行先エンティティID、対象エッジサーバID、対象フロー情報、対象フロー区間情報、発行時刻、有効期間、電子署名を含む。なお、「エンティティ」は、ハードウェアまたはソフトウェアに限定されるものではなく、コンピュータ処理の要素を表す。この実施例では、トークン要求部21、経路指定受付部41、経路制御部42、トークン発行部51は、それぞれ1つのエンティティである。また、各アプリケーションは、それぞれ1つのエンティティである。
トークンIDは、各トークンを識別する。なお、トークンIDは、例えば、シリアル番号により実現される。
発行元組織IDは、トークンを発行する組織を識別する。この例では、トークン発行部51を備えるエッジサーバ管理装置50は、組織Dにより管理されている。よって、発行元組織IDは、組織Dを表す。また、発行元エンティティIDは、トークンを発行するエンティティを識別する。この例では、発行元エンティティIDは、エッジサーバ管理装置50を表す。
発行先組織IDは、トークンの発行先の組織を識別する。即ち、発行先組織IDは、トークンを要求してきた組織を識別する。発行先エンティティIDは、トークンの発行先のエンティティを識別する。即ち、発行先エンティティIDは、トークンを要求してきたエンティティを識別する。例えば、S2においては、端末管理装置20からトークンが要求される。よって、発行先組織IDは組織Aを表し、発行先エンティティIDは端末管理装置20を表す。
対象エッジサーバIDは、トークンが有効なエッジサーバを識別する。なお、トークンが複数のエッジサーバにおいて有効であるときは、そのトークンが有効な範囲が指定される。この場合、複数のエッジサーバは、例えば、ワイルドカードを用いて表される。
対象フロー情報は、トークンの権限が有効なトラフィックフローを表す。この例では、対象フロー情報は、端末ID、5tuple、トークンIDを含む。端末IDは、対象トラフィックフローを送信または受信する端末を表す。5tupleは、IPヘッダに格納される送信元IPアドレス、宛先IPアドレス、送信元L4ポート番号、宛先L4ポート番号、プロトコル番号を表す。5tupleの各要素は、ワイルドカードを用いて表されてもよい。トークンIDは、トークンを識別する。
対象フロー区間情報は、対象トラフィックフローに対して経路指定が許可される区間を表す。発行時刻は、トークンが発行された時刻を表す。有効期間は、トークンの有効期間を表す。電子署名は、「トークンID」から「有効期間」までの各フィールドの値に基づいて計算されるハッシュ値をエッジサーバ管理装置50の秘密鍵で暗号化することにより生成される。
S2において生成されるトークンの主要な要素は、以下の通りである。なお、以下の記載において、「#1」により識別されるトークンを「トークン#1」と呼ぶことがある。
<トークン#1の内容>
・トークンID:#1
・対象フロー情報:トークン#1(端末10)
・対象フロー区間:***
「対象フロー情報:トークン#1」は、トークン#1により識別されるトラフィックフローに対してトークンの権限が有効である状態を表す。「***」は、許可される区間が指定されていない状態を表す。この場合、エッジサーバ40内の全区間において対象トラフィックフローに対して経路指定が許可される。
S3において、トークン発行部51は、S2で生成したトークン#1を表すトークン情報を経路指定受付部41に送信する。トークン情報は、図7に示す「トークンID」から「有効期間」までの各フィールドの値を表す。
S4において、トークン要求部21は、トークン発行部51により発行されたトークン#1を端末10に配布する。端末10において、トークン#1は、BYOD処理部により受信され、不図示のメモリに格納される。
S5において、トークン要求部21は、上述した組織AのポリシA1に基づいて、業務アプリケーション30にアクセスする際に要求されるエンティティにトークン#1を送信する。すなわち、トークン要求部21は、トークン発行部51により発行されたトークン#1をアプリケーション#1に配布する。
S6において、アプリケーション#1は、上述した組織AのポリシA2に基づいて、経路指定情報を生成する。すなわち、「A2:アプリケーション#1を実行する前に組織Bのアプリケーション#2によるセキュリティ処理を実行する」を実現するための経路指定情報が生成される。具体的には、図3に示す経路R#1を指定する経路指定情報が生成される。そして、アプリケーション#1は、生成した経路指定情報を経路指定受付部41に送信する。このとき、アプリケーション#1は、経路指定情報と共にトークン#1を経路指定受付部41に送信する。
S6においてアプリケーション#1から経路指定受付部41に送信される経路指定情報は、例えば、下記のように表される。
<経路指定情報>
・経路:アプリ#2→アプリ#1(UL)
この例では、経路指定情報は、アップリンク上の経路を表す。ただし、トラフィックフローは、通常、アップリンクフローおよびダウンリンクフローから構成される。ダウンリンク上の経路を表すときは、経路指定情報は「アプリ#1→アプリ#2」である。
経路指定受付部41は、経路指定情報により指定される経路がトークン#1により許可されるか否かを判定する。具体的には、トークン#1の「対象フロー区間」により許可される範囲内で経路が指定されているか否かが判定される。この例では、トークン#1は、エッジサーバ40内の全区間において対象トラフィックフローに対して経路指定を許可している。したがって、経路指定受付部41は、アプリケーション#1から受信した経路指定情報を受け付ける。このように、トークンは、エッジサーバ40内の所定の範囲においてトラフィックフローの経路を指定する権限を表す制御情報の一例である。
図8(a)は、経路指定情報管理テーブルの一例を示す。経路指定情報管理テーブルは、経路指定受付部41により生成される。そして、経路指定受付部41は、新たな経路指定情報を受け付けたときに、対応するレコードを経路指定情報管理テーブルに追加する。
「トークンID」は、経路指定情報とともに受信したトークンを識別する。「対象フロー」は、経路指定の対象となるトラフィックフローを表し、経路指定情報とともに受信したトークンから抽出される。「経路」は、受信した経路指定情報により指定される経路を表す。よって、S6においては、下記のレコードが生成される。
・トークンID:トークン#1
・対象フロー:トークン#1により識別されるトラフィックフロー
・経路:アプリ#2→アプリ#1
なお、経路指定受付部41は、S6でアプリケーション#1から受信したトークンの内容を、S3でトークン発行部51から受信したトークン情報と照合してもよい。この照合を行うことにより、経路指定受付部41は、アプリケーション#1から受信したトークン#1が正規のトークンであるか否かを確認できる。すなわち、経路指定受付部41は、不正な経路指定を排除できる。また、経路指定受付部41は、受信したトークンの電子署名を利用して、そのトークンが改ざんされていないことを確認できる。よって、電子署名による確認だけで十分なケースでは、トークン発行部51から経路指定受付部41へトークン情報を送信しなくてもよい。この場合、エッジサーバ40内のメッセージの伝送量が削減される。
上述したS1〜S6により、組織AのポリシA1、A2を満足する経路指定が実現される。すなわち、アプリケーション#2、#1を順番に通過する経路指定が実現される。
ただし、アプリケーション#2は、組織Bにより管理されている。そして、アプリケーション#1は、組織Bのポリシを認識していない。よって、アプリケーション#1は、組織Bに対して経路指定を依頼する。このとき、アプリケーション#1は、組織Aのポリシを満足する範囲内で、組織Bに対して経路指定を依頼する必要がある。そこで、アプリケーション#1は、トークン発行部51に対して、組織Aのポリシを満足する範囲内で経路を指定する権限を代表するトークンを要求する。
S7において、アプリケーション#1は、トークン発行部51に対して、新たなトークンを要求する。このとき、アプリケーション#1は、トークン要求と共にトークン#1をトークン発行部51に送信する。ここで、S7においてアプリケーション#1からトークン発行部51に送信されるトークン要求は、以下の情報を含む。
<トークン要求>
・対象フロー情報:トークン#1(端末10)
・対象フロー区間:***→アプリ#2→アプリ#1(UL)
なお、「***→アプリ#2→アプリ#1」は、アプリケーション#2の入力側で経路を指定する権限を表す。
S8において、トークン発行部51は、アプリケーション#1から要求されたトークンを発行するか否かを判定する。具体的には、トークン発行部51は、要求された経路指定範囲がトークン#1に対して許可されている経路指定範囲の一部であるか否か判定する。この例では、要求された経路指定範囲は「アプリケーション#2の入力側」であり、トークン#1に対して許可されている経路指定範囲は「全区間」である。よって、トークン発行部51は、アプリケーション#1からの要求に対して新たなトークンを生成する。
S8において生成されるトークンの主要な要素は、以下の通りである。なお、以下の記載において、「#2」により識別されるトークンを「トークン#2」と呼ぶことがある。
<トークン#2の内容>
・トークンID:#2
・対象フロー情報:トークン#1(端末10)
・対象フロー区間:***→アプリ#2→アプリ#1(UL)
なお、トークン#2は、トークン#1により識別されるトラフィックフローについて、アプリケーション#2の入力側で経路を指定する権限を表す。そして、トークン発行部51は、生成したトークン#2をアプリケーション#1へ送信する。
S9において、トークン発行部51は、S8で生成したトークン#2を表すトークン情報を経路指定受付部41に送信する。
S10において、アプリケーション#1は、アプリケーション#2にトークン#2を送信する。すなわち、アプリケーション#1は、トークン#2により規定される範囲内で経路を指定する権限をアプリケーション#2に与える。具体的には、アプリケーション#2の入力側で経路を指定する権限がアプリケーション#1からアプリケーション#2に与えられる。
S11において、アプリケーション#2は、上述した組織BのポリシB1、B2に基づいて、経路指定情報を生成する。すなわち、「B1:アプリケーション#2を実行する前にアプリケーション#3によるフィルタ処理を実行する」および「B2:アプリケーション#3を実行する前に組織Cのアプリケーション#4によるログ処理を実行する」を実現するための経路指定情報が生成される。具体的には、図4に示す経路R#2を指定する経路指定情報が生成される。そして、アプリケーション#2は、生成した経路指定情報を経路指定受付部41に送信する。このとき、アプリケーション#2は、経路指定情報と共にトークン#2を経路指定受付部41に送信する。
S11においてアプリケーション#2から経路指定受付部41に送信される経路指定情報は、例えば、下記のように表される。
<経路指定情報>
・経路:アプリ#4→アプリ#3→アプリ#2→アプリ#1(UL)
経路指定受付部41は、アプリケーション#2から受信した経路指定情報を許可するか否かを判定する。具体的には、トークン#2の「対象フロー区間」により許可される範囲内で経路が指定されているか否かが判定される。この例では、トークン#2は、アプリケーション#2の入力側において対象トラフィックフローに対して経路指定を許可する。したがって、経路指定受付部41は、アプリケーション#2から受信した経路指定情報を受け付ける。
経路指定受付部41は、新たな経路指定情報を受け付けたときに、対応するレコードを経路指定情報管理テーブルに追加する。S11においては、図8(a)に示すように、下記のレコードが生成される。
・トークンID:トークン#2
・対象フロー:トークン#1により識別されるトラフィックフロー
・経路:アプリ#4→アプリ#3→アプリ#2→アプリ#1
上述したS7〜S11により、組織BのポリシB1、B2を満足する経路指定が実現される。すなわち、アプリケーション#2を実行する前にアプリケーション#4、#3を順番に通過する経路指定が実現される。
ただし、アプリケーション#4は、組織Cにより管理されている。そして、アプリケーション#2は、組織Cのポリシを認識していない。よって、アプリケーション#2は、組織Cに対して経路指定を依頼する。このとき、アプリケーション#2は、組織Bのポリシを満足する範囲内で、組織Cに対して経路指定を依頼する必要がある。そこで、アプリケーション#2は、トークン発行部51に対して、組織Bのポリシを満足する範囲内で経路を指定する権限を代表するトークンを要求する。
S12において、アプリケーション#2は、トークン発行部51に対して、新たなトークンを要求する。このとき、アプリケーション#2は、トークン要求と共にトークン#2をトークン発行部51に送信する。ここで、S12においてアプリケーション#2からトークン発行部51に送信されるトークン要求は、以下の情報を含む。
<トークン要求>
・対象フロー情報:トークン#1(端末10)
・対象フロー区間:***→アプリ#4→アプリ#3→アプリ#2→アプリ#1(UL)
なお、「***→アプリ#4→アプリ#3→アプリ#2→アプリ#1」は、アプリケーション#4の入力側で経路を指定する権限を表す。
S13において、トークン発行部51は、アプリケーション#2から要求されたトークンを発行するか否かを判定する。具体的には、トークン発行部51は、要求された経路指定範囲がトークン#2に対して許可されている経路指定範囲の一部であるか否かを判定する。この例では、要求された経路指定範囲は「アプリケーション#4の入力側」であり、トークン#2に対して許可されている経路指定範囲は「アプリケーション#2の入力側」である。よって、トークン発行部51は、アプリケーション#2からの要求に対して新たなトークンを生成する。
S13において生成されるトークンの主要な要素は、以下の通りである。尚、以下の記載において、「#3」により識別されるトークンを「トークン#3」と呼ぶことがある。
<トークン#3の内容>
・トークンID:#3
・対象フロー情報:トークン#1(端末10)
・対象フロー区間:***→アプリ#4→アプリ#3→アプリ#2→アプリ#1(UL)
なお、トークン#3は、トークン#1により識別されるトラフィックフローについて、アプリケーション#4の入力側で経路を指定する権限を表す。そして、トークン発行部51は、生成したトークン#3をアプリケーション#2へ送信する。
S14において、トークン発行部51は、S13で生成したトークン#3を表すトークン情報を経路指定受付部41に送信する。
S15において、アプリケーション#2は、アプリケーション#4にトークン#3を送信する。すなわち、アプリケーション#2は、トークン#3により規定される範囲内で経路を指定する権限をアプリケーション#4に与える。具体的には、アプリケーション#4の入力側で経路を指定する権限がアプリケーション#2からアプリケーション#4に与えられる。
S16において、アプリケーション#4は、上述した組織CのポリシC1に基づいて、経路指定情報を生成する。すなわち、「C1:アプリケーション#4を実行する前にアプリケーション#5によるキャプチャ処理を実行する」を実現するための経路指定情報が生成される。そして、アプリケーション#4は、生成した経路指定情報を経路指定受付部41に送信する。このとき、アプリケーション#4は、経路指定情報と共にトークン#3を経路指定受付部41に送信する。
S16においてアプリケーション#4から経路指定受付部41に送信される経路指定情報は、例えば、下記のように表される。
<経路指定情報>
・経路:アプリ#5→アプリ#4→アプリ#3→アプリ#2→アプリ#1(UL)
経路指定受付部41は、アプリケーション#4から受信した経路指定情報を許可するか否かを判定する。具体的には、トークン#3の「対象フロー区間」により許可される範囲内で経路が指定されているか否かが判定される。この例では、トークン#3は、アプリケーション#4の入力側において対象トラフィックフローに対して経路指定を許可する。したがって、経路指定受付部41は、アプリケーション#4から受信した経路指定情報を受け付ける。
経路指定受付部41は、新たな経路指定情報を受け付けたときに、対応するレコードを経路指定情報管理テーブルに追加する。S16においては、図8(a)に示すように、下記のレコードが生成される。
・トークンID:トークン#3
・対象フロー:トークン#1により識別されるトラフィックフロー
・経路:アプリ#5→アプリ#4→アプリ#3→アプリ#2→アプリ#1
上述したS12〜S16により、組織CのポリシC1を満足する経路指定が実現される。すなわち、アプリケーション#4を実行する前にアプリケーション#5を通過する経路指定が実現される。
S17において、経路指定受付部41は、受信した経路指定情報に基づいて、トラフィックフローの経路を決定する。この例では、経路指定受付部41は、S6、S11、S16において経路指定情報を受け付けている。また、経路指定に必要な情報は、図8(a)に示す経路指定情報管理テーブルに記録されている。よって、経路指定受付部41は、経路指定情報管理テーブルに基づいて、トークン#1により識別されるトラフィックフローの経路を決定する。
この例では、S16で受け付けた経路「アプリ#5→アプリ#4→アプリ#3→アプリ#2→アプリ#1」は、S6で受け付けた経路「アプリ#2→アプリ#1」およびS11で受け付けた経路「アプリ#4→アプリ#3→アプリ#2→アプリ#1」を含んでいる。この場合、経路指定受付部41は、S16で受け付けた経路を表す経路情報を経路制御部42に通知する。このとき、経路指定受付部41は、経路情報と共に、対象トラフィックを識別するトークンを経路制御部42に送信する。即ち、S16で受け付けた経路を表す経路情報およびトークン#1が経路指定受付部41から経路制御部42に与えられる。なお、経路指定受付部41は、経路指定に係わる全てのトークン(すなわち、トークン#1〜#3)を経路制御部42に通知してもよい。
経路制御部42は、経路指定受付部41から与えられる経路情報を経路情報テーブルに格納する。経路情報テーブルは、図9に示すように、対象トラフィックフローを識別するトークンに対応づけて「経路」を格納する。この例では、トークン#1に対して「アプリ#5→アプリ#4→アプリ#3→アプリ#2→アプリ#1」が登録されている。また、トークン#5に対して「アプリ#8→アプリ#7→アプリ#6」が登録されている。このように、エッジサーバ40内に格納されるアプリケーションは、トークンに対応づけてグループ化される。
経路制御部42は、経路指定受付部41から与えられる経路情報に基づいて対象トラフィックフローの経路を設定する。この実施例では、端末10からクラウドに向かうアップリンクにおいて、トークン#1により識別されるトラフィックフローに対して以下の経路設定が行われる。
・端末10から送信されるトラフィックフローをアプリケーション#5に導く
・アプリケーション#5により処理されたトラフィックフローをアプリケーション#4に導く
・アプリケーション#4により処理されたトラフィックフローをアプリケーション#3に導く
・アプリケーション#3により処理されたトラフィックフローをアプリケーション#2に導く
・アプリケーション#2により処理されたトラフィックフローをアプリケーション#1に導く
・アプリケーション#1により処理されたトラフィックフローを業務アプリケーション30に導く
このように、エッジサーバ40は、トークンに対してグループ化された1または複数のアプリケーションを通過するように、トークンが付与されたパケットのルーティングを実行する。図9に示す例では、トークン#1が付与されたパケットは、アプリケーション#5、#4、#3、#2、#1を順番に通過するように制御される。また、トークン#5が付与されたパケットは、アプリケーション#8、#7、#6を順番に通過するように制御される。
尚、業務アプリケーション30から端末10に向かうダウンリンクに対しては、アップリンクとは逆の経路が設定される。すなわち、経路制御部42は、ダウンリンクにおいては、トークン#1により識別されるトラフィックフローがアプリケーション#1、#2、#3、#4、#5を順番に通過するように経路設定を行う。
図10は、トークンに基づいてトラフィックフローを処理する方法の一例を示す図である。図11は、図10に示す方法に対応するシーケンス図である。ここでは、端末10から業務アプリケーション30に向かうアップリンクのトラフィックフローについて説明する。
S18において、端末10は、クラウド上に配置されている業務アプリケーション30にアクセスするトラフィックフローを生成する。このトラフィックフローは、例えば、端末10に実装されている端末アプリケーションにより生成される。なお、このトラフィックフローにより伝送される各パケットの宛先アドレスは、業務アプリケーション30を表す。
S19において、端末10は、業務アプリケーション30に向かうトラフィックフローに対して対応するトークンを付与する。具体的には、端末10は、S4において端末管理装置20から受信したトークン#1を、業務アプリケーション30に向かうトラフィックフローに付与する。このとき、トークン#1は、このトラフィックフローにより伝送される各パケットのヘッダ内の所定の領域に書き込まれる。なお、トークンは、例えば、BYODアプリケーションによりトラフィックフローに付与される。
S20において、エッジサーバ40の経路制御部42は、トラフィックフローに付与されているトークンを確認する。そして、端末10から送信されるトラフィックフローにトークン#1が付与されているときは、経路制御部42は、S17で設定された経路に従ってそのトラフィックフローを処理する。即ち、経路制御部42は、このトラフィックフローを、順番に、アプリケーション#5、#4、#3、#2、#1に導く。具体的には、アプリケーション#1による事前処理が実行される前に、このトラフィックフローに対してキャプチャ処理、ログ処理、フィルタ処理、セキュリティ処理が順番に実行される。そして、アプリケーション#1による事前処理が実行された後、エッジサーバ40は、このトラフィックフローを業務アプリケーション30に送信する。
図12は、トークン発行部51の処理の一例を示すフローチャートである。なお、トークン発行部51は、常時、トークン要求を待ち受けている。
S101において、トークン発行部51は、トークン要求を受信する。S102において、トークン発行部51は、トークン要求と共に、先に発行したトークンを受信したか否かを判定する。
先に発行したトークンを受信していないときは、トークン発行部51は、S103において、トークン要求の内容が予め契約されているか否かを判定する。そして、トークン要求の内容が予め契約されているときは、トークン発行部51は、S104において、要求されたトークンを発行する。このとき、トークン発行部51は、発行したトークンの内容を表すトークン情報を経路指定受付部41に通知してもよい。この後、トークン発行部51は、S107において、次のトークン要求を待ち受ける。一方、トークン要求の内容が予め契約されていないときは、トークン発行部51は、S108において、エラーメッセージを出力する。
トークン要求と共に先に発行されたトークンを受信したときは(S102:Yes)、トークン発行部51は、S105において、受信したトークン要求を許可するか否か判定する。具体的には、トークン発行部51は、新たに要求されたトークンの権限の範囲が、先に発行されたトークンの権限の範囲内か否かを判定する。
先に発行されたトークンの権限の範囲内で新たなトークンが要求されたときは、トークン発行部51は、S106において、要求されたトークンを発行する。このとき、トークン発行部51は、新たに発行するトークンの内容を表すトークン情報を経路指定受付部41に通知してもよい。この後、トークン発行部51は、S107において、次のトークン要求を待ち受ける。一方、新たに要求された権限の範囲が、先に発行されたトークンの権限の範囲を超えているときは、トークン発行部51は、S108において、エラーメッセージを出力する。
例えば、組織Aと組織Dとの間で、端末10と業務アプリケーション30との間のトラフィックフローの経路を指定する権限を組織Aが有する旨の契約が結ばれているものとする。この場合、図3に示す例では、トークン発行部51は、端末管理装置20からトークン要求を受信すると、S104でトークンを発行する。また、図4に示す例では、アプリケーション#1から受信するトークン要求により要求される権限の範囲は、トークン#1の権限の範囲内である。よって、トークン発行部51は、アプリケーション#1からトークン要求を受信すると、S106でトークンを発行する。
図13は、経路指定受付部41の処理の一例を示すフローチャートである。経路指定受付部41は、例えば、トークン発行部51からトークン情報を受信したときに処理を開始する。或いは、経路指定受付部41は、経路指定情報を受信したときに処理を開始してもよい。
S111において、経路指定受付部41は、経路指定情報およびトークンを受信する。S112において、経路指定受付部41は、受信したトークンが改ざんされてないかチェックする。このとき、経路指定受付部41は、図7に示す電子署名またはトークン発行部51から受信するトークン情報を利用して改ざんをチェックする。
S113において、経路指定受付部41は、受信したトークンが表す権限の範囲内(すなわち、対象フロー区間内)で経路が指定されているか否かを判定する。そして、受信したトークンが表す対象フロー区間内で経路が指定されていれば、経路指定受付部41は、S114において、経路指定情報により指定される経路を経路指定情報管理テーブルに登録する。一方、受信したトークンが表す対象フロー区間を越えて経路が指定されているときは、経路指定受付部41は、S118において、エラーメッセージを出力する。
S115〜S116において、経路指定受付部41は、新たな経路指定情報を待ち受ける。そして、新たな経路指定情報を受信すると、経路指定受付部41の処理はS112に戻る。一方、新たな経路指定情報を受信することなく所定の待ち時間が経過したときは、経路指定受付部41は、経路指定情報管理テーブルに基づいて、エッジサーバ40内の経路を決定する。経路指定情報管理テーブルに対象トークンに対して複数の経路が登録されているときは、例えば、他のすべての経路を包含する経路が選択される。そして、経路指定受付部41は、S117において、決定した経路を表す経路情報を経路制御部42に通知する。
図14(a)は、トラフィックフローの開始時における経路制御部42の処理の一例を示すフローチャートである。ここでは、端末10が業務アプリケーション30へのアクセスを開始するものとする。
S121において、経路制御部42は、端末10から送信されるトラフィックフローを受信する。S122において、経路制御部42は、そのトラフィックフローに付与されているトークンを検出する。この例では、各パケットのヘッダに「トークン#1」が挿入されているものとする。
S123において、経路制御部42は、対象トラフィックフローから検出したトークンに対応する経路を通過するようにその対象トラフィックフローを処理する。例えば、図3〜図4に示す手順によって図9に示す経路情報テーブルが作成されているものとする。この場合、トークン#1に対して経路「アプリ#5→アプリ#4→アプリ#3→アプリ#2→アプリ#1」が登録されている。したがって、経路制御部42は、対象トラフィックフローを、順番に、アプリケーション#5、#4、#3、#2、#1に導く。
S124において、対象トラフィックフロー中のパケットのヘッダ情報を取得し、トークンに対応づけて経路情報テーブルに記録する。ヘッダ情報は、送信元IPアドレス、送信元ポート番号、宛先IPアドレス、宛先ポート番号のうちの少なくとも1つを含む。
図14(b)は、トラフィックフローが確立された後の経路制御部42の処理の一例を示すフローチャートである。ここでは、図14(a)に示す手順により、経路情報テーブルにおいて、対象トラフィックフローのトークンに対応づけてヘッダ情報が記録されているものとする。S131において、経路制御部42は、トラフィックフローを受信する。このとき、経路制御部42は、トラフィックフロー中のパケットからヘッダ情報を取得する。S132において、経路制御部42は、経路情報テーブルを参照し、対象トラフィックフローから取得したヘッダ情報に対応する経路を通過するようにその対象トラフィックフローを処理する。なお、経路制御部42は、図14(a)に示す処理を実行することなく、図14(b)に示す手順でトラフィックフローを制御してもよい。
図15は、端末10の構成の一例を示す。端末10は、CPU101、メモリ102、ネットワークインタフェース103を備える。CPU101、メモリ102、ネットワークインタフェース103は、バス104に接続されている。
ネットワークインタフェース103は、例えば、LTEインタフェースまたは無線LANインタフェース等により実現される。また、ネットワークインタフェース103は、ルータ等の中継装置を介して、端末管理装置20およびエッジサーバ40と通信を行うことができる。メモリ102は、プログラムを格納することができる。この例では、メモリ102には、BYODアプリケーションプログラムおよび端末アプリケーションプログラムが格納されている。BYODアプリケーションプログラムは、端末アプリケーションが動作する環境を構築する。CPU101は、メモリ102に格納されているプログラムを実行する。なお、トラフィックフローにトークンを付与する処理は、例えば、CPU101がBYODアプリケーションプログラムを実行することで実現される。
図16は、端末管理装置20の構成の一例を示す。端末管理装置20は、CPU201、メモリ202、ネットワークインタフェース203を備える。CPU201、メモリ202、ネットワークインタフェース203は、バス204に接続されている。
ネットワークインタフェース203は、ルータ等の中継装置を介して、端末10およびエッジサーバ40、エッジサーバ管理装置50と通信を行うことができる。メモリ202は、プログラムを格納することができる。この例では、メモリ202には、トークン要求部21の処理を記述したプログラムが格納されている。CPU201は、メモリ202に格納されているプログラムを実行する。なお、トークン要求部21の機能は、メモリ202に格納されているプログラムをCPU201が実行することで実現される。
図17は、エッジサーバ40の構成の一例を示す。エッジサーバ40は、CPU401、メモリ402、ネットワークインタフェース403を備える。CPU401、メモリ402、ネットワークインタフェース403は、バス404に接続されている。なお、エッジサーバ40は、複数のネットワークインタフェース403を備えていてもよい。
ネットワークインタフェース403は、例えば、Ethernet(登録商標)または無線LANインタフェース等により実現される。また、ネットワークインタフェース403は、ルータまたは基地局等の中継装置を介して、端末10、端末管理装置20、エッジサーバ管理装置50、クラウド上の通信機器(例えば、業務アプリケーション30が実装されているコンピュータ)と通信を行うことができる。
メモリ402は、プログラムを格納することができる。この例では、経路指定受付部41の処理を記述したプログラムおよび経路制御部42の処理を記述したプログラムがメモリ402に格納されている。また、メモリ402を利用して仮想マシンが構築され得る。各仮想マシンは、1または複数のアプリケーションが動作する環境を構築する。CPU401は、メモリ402に格納されているプログラムを実行する。なお、経路指定受付部41および経路制御部42の機能は、メモリ402に格納されているプログラムをCPU401が実行することで実現される。例えば、CPU401は、図13に示すフローチャートの処理を記述したプログラムを実行することで経路指定受付部41の機能を提供する。
図18は、エッジサーバ管理装置50の構成の一例を示す。エッジサーバ管理装置50は、CPU501、メモリ502、ネットワークインタフェース503を備える。CPU501、メモリ502、ネットワークインタフェース503は、バス504に接続されている。
ネットワークインタフェース503は、ルータ等の中継装置を介して、端末管理装置20およびエッジサーバ40と通信を行うことができる。メモリ502は、プログラムを格納することができる。この例では、メモリ502には、トークン発行部51の処理を記述したプログラムが格納されている。CPU501は、メモリ502に格納されているプログラムを実行する。なお、トークン発行部51の機能は、メモリ502に格納されているプログラムをCPU501が実行することで実現される。例えば、CPU501は、図12に示すフローチャートの処理を記述したプログラムを実行することでトークン発行部51の機能を提供する。
<バリエーション>
図4に示すS7において、トークン要求中の対象フロー区間は、「アプリケーション#2の入力側(***→アプリ#2)」であってもよい。この場合、S8において発行されるトークン#2の権限の範囲は、「アプリケーション#2の入力側(***→アプリ#2)」である。
同様に、S12において、トークン要求中の対象フロー区間は、「アプリケーション#4の入力側(***→アプリ#4)」であってもよい。この場合、S13において発行されるトークン#3の権限の範囲は、「アプリケーション#4の入力側(***→アプリ#4)」である。
経路指定情報は、与えられたトークンの権限の範囲内の経路のみを記述してもよい。すなわち、S11の経路指定情報は、アプリケーション#2の入力側の経路「アプリ#4→アプリ#3→アプリ#2」のみを記述し、S16の経路指定情報は、アプリケーション#4の入力側の経路「アプリ#5→アプリ#4」のみを記述する。
この場合、経路指定受付部41は、図8(b)に示すように、以下の経路指定情報を受信することになる。
S6:アプリ#2→アプリ#1
S11:アプリ#4→アプリ#3→アプリ#2
S16:アプリ#5→アプリ#4
したがって、経路指定受付部41は、これらの経路を結合することにより、トークン#1に対応するトラフィックフローの経路「アプリ#5→アプリ#4→アプリ#3→アプリ#2→アプリ#1」を決定する。
<他の実施形態>
図2に示す例では、エッジサーバ40から独立してエッジサーバ管理装置50が設けられており、エッジサーバ40は、エッジサーバ管理装置50と連携することにより、トラフィックフローの経路を制御する経路制御装置として動作する。ただし、本発明はこの構成に限定されるものではない。例えば、図19(a)に示すように、エッジサーバ管理装置50の機能(すなわち、トークン発行部51)がエッジサーバ40の中に実装されるようにしてもよい。この場合、トークン発行部51を含むエッジサーバ40は、トラフィックフローの経路を制御する経路制御装置として動作する。
また、図2に示す例では、1台のエッジサーバ40に対して1台のエッジサーバ管理装置50が設けられているが、本発明はこの構成に限定されるものではない。例えば、図19(b)に示すように、複数のエッジサーバ40a〜40nに対して1台のエッジサーバ管理装置50が設けられるようにしてもよい。この場合、各エッジサーバ40a〜40nは、エッジサーバ管理装置50と連携することにより、トラフィックフローの経路を制御する経路制御装置として動作する。
図3〜図4に示す例では、トラフィックフローの経路が複数のエンティティによって指定されるが、本発明はこの構成に限定されるものではない。例えば、1つのエンティティがエッジサーバ40内のすべての経路を指定してもよい。この場合、エッジサーバ40内の全区間に渡って経路を指定する権限を表すトークンが発行される。
上述の実施例では、トラフィックフローの確立前にパケットヘッダから各トラフィックフローを識別できないケースを考慮し、端末10は、トラフィックフローの初出時にそのトラフックフローにトークンを付与する。そして、エッジサーバ40は、トークンに基づいてトラフィックフローの経路を制御する。但し、トラフィックフローの確立前にパケットヘッダから所望のトラフィックフローを識別できるケースでは、エッジサーバ40は、トークンを用いることなくトラフィックフローの経路を制御してもよい。
例えば、アクセスすべき業務アプリケーションの宛先IPアドレス/宛先L4ポート番号によりトラフィックフローが識別されるものとする。この場合、エッジサーバ40は、新たなトークンを要求するときに、トラフィックフローを識別する情報として、その宛先IPアドレス/宛先L4ポート番号をトークン発行部51に通知する。そうすると、トークン中にその宛先IPアドレス/宛先L4ポート番号が設定される。図7に示す例では、宛先IPアドレス/宛先L4ポート番号は、対象フロー情報として設定される。そして、このトークンは、対応する経路情報と共に経路制御部42に与えられる。経路制御部42は、指定された宛先IPアドレス/宛先L4ポート番号に基づいてトラフィックフローの経路を制御できる。よって、端末10は、トラフィックフローにトークンを付与する必要はなく、端末管理装置20は、端末10へトークンを送信する必要はない。
10 端末
20 端末管理装置
21 トークン要求部
30 業務アプリケーション
40 エッジサーバ
41 経路指定受付部
42 経路制御部
50 エッジサーバ管理装置
51 トークン発行部

Claims (5)

  1. 複数のエンティティを収容するサーバ内でトラフィックフローの経路を制御する経路制御装置であって、
    前記複数のエンティティの中のいずれかのエンティティからの要求に応じて、トラフィックフローの経路を指定する権限を表す制御情報を発行する発行部と、
    前記複数のエンティティの中のいずれかのエンティティから受け付ける経路指定情報を許可するか否かを判定する受付部と、
    前記受付部により許可された経路指定情報に基づいてトラフィックフローの経路を制御する経路制御部と、を備え、
    前記発行部は、前記複数のエンティティの中の第1のエンティティから、前記サーバ内の第1の範囲においてトラフィックフローの経路を指定する権限を表す第1の制御情報、および、前記サーバ内の第2の範囲においてトラフィックフローの経路を指定する権限の要求を受信したときに、前記第2の範囲が前記第1の範囲に含まれていれば、前記第2の範囲においてトラフィックフローの経路を指定する権限を表す第2の制御情報を発行すると共に、前記第1のエンティティおよび前記受付部に前記第2の制御情報を送信し、
    前記受付部は、前記複数のエンティティの中の第2のエンティティから、トラフィックフローの経路を指定する経路指定情報を受信したときに、前記経路指定情報が前記第2の制御情報により指定される第2の範囲内で経路を指定していれば、前記経路指定情報を許可する
    ことを特徴とする経路制御装置。
  2. 前記発行部は、前記第2のエンティティから、前記第2の制御情報、および、前記サーバ内の第3の範囲においてトラフィックフローの経路を指定する権限の要求を受信したときに、前記第3の範囲が前記第2の範囲に含まれていれば、前記第3の範囲においてトラフィックフローの経路を指定する権限を表す第3の制御情報を発行すると共に、前記第2のエンティティおよび前記受付部に前記第3の制御情報を送信し、
    前記受付部は、前記複数のエンティティの中の第3のエンティティから、トラフィックフローの経路を指定する第2の経路指定情報を受信したときに、前記第2の経路指定情報が前記第3の制御情報により指定される第3の範囲内で経路を指定していれば、前記第2の経路指定情報を許可する
    ことを特徴とする請求項1に記載の経路制御装置。
  3. 複数のエンティティを収容するエッジサーバ装置であって、
    前記複数のエンティティの中のいずれかのエンティティから受け付ける経路指定情報を許可するか否かを判定する受付部と、
    前記受付部により許可された経路指定情報に基づいてトラフィックフローの経路を制御する経路制御部と、を備え、
    当該エッジサーバ装置は、前記複数のエンティティの中のいずれかのエンティティからの要求に応じて当該エッジサーバ装置内でのトラフィックフローの経路を指定する権限を表す制御情報を発行するエッジサーバ管理装置に接続し、
    前記エッジサーバ管理装置は、前記複数のエンティティの中の第1のエンティティから、当該エッジサーバ装置内の第1の範囲においてトラフィックフローの経路を指定する権限を表す第1の制御情報、および、当該エッジサーバ装置内の第2の範囲においてトラフィックフローの経路を指定する権限の要求を受信したときに、前記第2の範囲が前記第1の範囲に含まれていれば、前記第2の範囲においてトラフィックフローの経路を指定する権限を表す第2の制御情報を発行すると共に、前記第1のエンティティおよび前記受付部に前記第2の制御情報を送信し、
    前記受付部は、前記複数のエンティティの中の第2のエンティティから、トラフィックフローの経路を指定する経路指定情報を受信したときに、前記経路指定情報が前記第2の制御情報により指定される第2の範囲内で経路を指定していれば、前記経路指定情報を許可する
    ことを特徴とするエッジサーバ装置。
  4. 複数のアプリケーションを格納するエッジサーバと、
    前記エッジサーバを介して目的サーバにアクセスする端末と、
    記エッジサーバ内の所定の範囲において前記端末と前記目的サーバとの間のトラフィックフローの経路を指定する権限を表す制御情報を発行するエッジサーバ管理装置と、を備え、
    前記エッジサーバは、
    前記複数のアプリケーションの中のいずれかのアプリケーションから受け付ける経路指定情報を許可するか否かを判定する受付部と、
    前記受付部により許可された経路指定情報に基づいてトラフィックフローの経路を制御する経路制御部と、を含み、
    前記エッジサーバ管理装置は、前記複数のアプリケーションの中の第1のアプリケーションから、前記エッジサーバ内の第1の範囲においてトラフィックフローの経路を指定する権限を表す第1の制御情報、および、前記エッジサーバ内の第2の範囲においてトラフィックフローの経路を指定する権限の要求を受信したときに、前記第2の範囲が前記第1の範囲に含まれていれば、前記第2の範囲においてトラフィックフローの経路を指定する権限を表す第2の制御情報を発行すると共に、前記第1のアプリケーションおよび前記受付部に前記第2の制御情報を送信し
    前記受付部は、前記複数のアプリケーションの中の第2のアプリケーションから、トラフィックフローの経路を指定する経路指定情報を受信したときに、前記経路指定情報が前記第2の制御情報により指定される第2の範囲内で経路を指定していれば、前記経路指定情報を許可し、
    前記経路指定情報が前記受付部により許可されたときは、前記経路制御部は、前記経路指定情報に基づいて前記トラフィックフローの経路を制御する
    ことを特徴とするネットワークシステム。
  5. 複数のエンティティを収容するサーバ内でトラフィックフローの経路を制御する経路制御方法であって、
    前記複数のエンティティの中の第1のエンティティから、前記サーバ内の第1の範囲においてトラフィックフローの経路を指定する権限を表す第1の制御情報、および、前記サーバ内の第2の範囲においてトラフィックフローの経路を指定する権限の要求を受信したときに、前記第2の範囲が前記第1の範囲に含まれていれば、前記第2の範囲においてトラフィックフローの経路を指定する権限を表す第2の制御情報を発行し、
    前記複数のエンティティの中の第2のエンティティから、トラフィックフローの経路を指定する経路指定情報を受信したときに、前記経路指定情報が前記第2の制御情報により指定される第2の範囲内で経路を指定していれば、前記経路指定情報を許可し、
    前記経路指定情報が許可されたときに、前記経路指定情報に基づいて前記トラフィックフローの経路を制御する、
    ことを特徴とする経路制御方法。
JP2017130095A 2017-07-03 2017-07-03 経路制御装置および経路制御方法 Active JP6926734B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017130095A JP6926734B2 (ja) 2017-07-03 2017-07-03 経路制御装置および経路制御方法
US16/021,733 US10785147B2 (en) 2017-07-03 2018-06-28 Device and method for controlling route of traffic flow

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017130095A JP6926734B2 (ja) 2017-07-03 2017-07-03 経路制御装置および経路制御方法

Publications (2)

Publication Number Publication Date
JP2019012982A JP2019012982A (ja) 2019-01-24
JP6926734B2 true JP6926734B2 (ja) 2021-08-25

Family

ID=64739294

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017130095A Active JP6926734B2 (ja) 2017-07-03 2017-07-03 経路制御装置および経路制御方法

Country Status (2)

Country Link
US (1) US10785147B2 (ja)
JP (1) JP6926734B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6640802B2 (ja) * 2017-09-06 2020-02-05 ファナック株式会社 エッジサーバ及びアプリケーションセキュリティ管理システム
EP3881258A4 (en) 2018-11-14 2022-01-12 Visa International Service Association SUPPLY OF TOKENS IN THE CLOUD OF MULTIPLE TOKENS
US11818102B2 (en) * 2021-04-16 2023-11-14 Nokia Technologies Oy Security enhancement on inter-network communication

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3915663B2 (ja) * 2002-11-06 2007-05-16 ソニー株式会社 データ処理システム、情報処理装置、および方法、並びにコンピュータ・プログラム
US9955352B2 (en) * 2009-02-17 2018-04-24 Lookout, Inc. Methods and systems for addressing mobile communications devices that are lost or stolen but not yet reported as such
US9690676B2 (en) * 2013-03-15 2017-06-27 Aerohive Networks, Inc. Assigning network device subnets to perform network activities using network device information
WO2015103338A1 (en) * 2013-12-31 2015-07-09 Lookout, Inc. Cloud-based network security
US9967366B2 (en) * 2015-07-20 2018-05-08 Verizon Patent And Licensing Inc. Internet of things (IoT) API platform
EP3329707A1 (en) * 2015-07-30 2018-06-06 Interdigital Patent Holdings, Inc. Enabling coordinated identity management between an operator-managed mobile-edge platform and an external network
US9660809B2 (en) * 2015-08-07 2017-05-23 Adobe Systems Incorporated Cross-site request forgery defense
JP2017041846A (ja) 2015-08-21 2017-02-23 富士通株式会社 管理装置、制御装置、および、通信システム
US10114732B2 (en) * 2016-01-29 2018-10-30 Ca, Inc. Debugging in-cloud distributed code in live load environment
KR101777389B1 (ko) * 2016-04-05 2017-09-26 한국전자통신연구원 인지 정보 기반 인증 장치 및 방법
US10148668B2 (en) * 2017-01-25 2018-12-04 Ca, Inc. Geolocation-based authentication credentials
WO2018194368A1 (en) * 2017-04-18 2018-10-25 Samsung Electronics Co., Ltd. Method and apparatus for access control in distributed blockchain-based internet of things (iot) network
US10230621B2 (en) * 2017-05-09 2019-03-12 Juniper Networks, Inc. Varying a per-hop-bandwidth constraint in multi-path label switched paths

Also Published As

Publication number Publication date
US20190007306A1 (en) 2019-01-03
JP2019012982A (ja) 2019-01-24
US10785147B2 (en) 2020-09-22

Similar Documents

Publication Publication Date Title
EP3494682B1 (en) Security-on-demand architecture
US8166534B2 (en) Incorporating network connection security levels into firewall rules
JP6526338B2 (ja) アクセス制御リストを動的に生成するための方法およびシステム
EP1540493A1 (en) Managing and controlling user applications with network switches
JP6926734B2 (ja) 経路制御装置および経路制御方法
US10595320B2 (en) Delegating policy through manufacturer usage descriptions
US11558353B2 (en) Method, apparatus, and computer readable medium for providing security service for data center
US20130275620A1 (en) Communication system, control apparatus, communication method, and program
CN112771833A (zh) 向客户端节点分配标识符的方法、记录标识符的方法、对应设备、客户端节点、服务器和计算机程序
JP2013134711A (ja) 医療クラウドシステム
KR101522139B1 (ko) DNS 서버 선별 차단 및 Proxy를 이용한 DNS 주소 변경 방법
KR101387937B1 (ko) 사용자 인증을 통한 네트워크 자원 사용 제어 방법
JP6193147B2 (ja) ファイアウォール装置の制御装置及びプログラム
KR102224454B1 (ko) 네트워크 트래픽 제어 방법, 장치, 시스템 및 컴퓨터 프로그램
TW201721498A (zh) 具安全與功能擴充性的有線區域網路使用者管理系統及方法
US11522913B1 (en) Simplifying networking setup complexity for security agents
US9823944B2 (en) Deployment control device and deployment control method for deploying virtual machine for allowing access
JP5056153B2 (ja) ファイル情報の管理方法及び情報処理装置
US20170331838A1 (en) Methods and computing devices to regulate packets in a software defined network
JP6871108B2 (ja) ファイアウォール装置の制御装置及びプログラム
JP2017085273A (ja) 制御システム、制御装置、制御方法およびプログラム
US10320751B2 (en) DNS server selective block and DNS address modification method using proxy
JP2015082787A (ja) クラウド環境においてセキュアなクレジットカードシステムを実現するための情報処理システムおよびファイアウォール装置
JP2016021621A (ja) 通信システム及び通信方法
US20170208035A1 (en) USER BASED STATELESS IPv6 RA-GUARD

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180803

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200310

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210119

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210319

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20210319

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20210319

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210719

R150 Certificate of patent or registration of utility model

Ref document number: 6926734

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150