JP2017103703A - Network system, control device and program - Google Patents

Network system, control device and program Download PDF

Info

Publication number
JP2017103703A
JP2017103703A JP2015237451A JP2015237451A JP2017103703A JP 2017103703 A JP2017103703 A JP 2017103703A JP 2015237451 A JP2015237451 A JP 2015237451A JP 2015237451 A JP2015237451 A JP 2015237451A JP 2017103703 A JP2017103703 A JP 2017103703A
Authority
JP
Japan
Prior art keywords
service
service function
terminal
user
function
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.)
Granted
Application number
JP2015237451A
Other languages
Japanese (ja)
Other versions
JP6522490B2 (en
Inventor
大 明石
Dai Akashi
大 明石
和 三村
Kazu Mimura
和 三村
矢野 正
Tadashi Yano
正 矢野
浩士 西井
Hiroshi Nishii
浩士 西井
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.)
Alaxala Networks Corp
Original Assignee
Alaxala Networks Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alaxala Networks Corp filed Critical Alaxala Networks Corp
Priority to JP2015237451A priority Critical patent/JP6522490B2/en
Publication of JP2017103703A publication Critical patent/JP2017103703A/en
Application granted granted Critical
Publication of JP6522490B2 publication Critical patent/JP6522490B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a network switch which sets a route which reflects the capability or incapability of the use of a service function, even in a case that a business operator managing the service function is different from a business operator managing a network route.SOLUTION: A control device retains service status management information in which a service, joined by a user, and information indicative of the availability of a service function which provides the service are registered. The control device then acquires from the service function the information indicative of the availability, and based on the information indicative of the availability, updates the service status management information. Based on the service status management information, the control device determines a service function route on which terminal data passes through the service function providing the service joined by the terminal user and available by the terminal.SELECTED DRAWING: Figure 12

Description

本発明は、端末のユーザが加入するサービスに応じて端末のデータがサービスファンクションを経由して転送されるネットワークシステムに関する。   The present invention relates to a network system in which terminal data is transferred via a service function in accordance with a service subscribed by a user of the terminal.

従来、ルータ及びゲートウェイ等の専用ハードウェアで実現されていたネットワークサービスに関する機能を、汎用サーバ上のソフトウェアとして仮想化させるNFV(Network Functions Virtualization)に注目が集まっており、国際的にもETSI(European Telecommunications Standards Institute)を中心に技術検討が進められている。   The network functions virtualization (NFV) that virtualizes functions related to network services that have been realized with dedicated hardware such as routers and gateways as software on general-purpose servers has been attracting attention, and internationally, ETSI (European Telecommunications Standards Institute) is a technology study.

仮想化されたサービスを柔軟に組み合わせてユーザが利用できるようにするためには、適切なサービスに適切な順序でトラフィックを転送させるサービスチェイニング技術が必要であり、標準化団体IETF(Internet Engineering Task Force)等で活発な議論がなされている。   In order to make it possible for users to flexibly combine virtualized services, it is necessary to have service chaining technology that forwards traffic to the appropriate services in the appropriate order, and the IETF (Internet Engineering Task Force) ) Etc., active discussions have been made.

サービスチェイニングの経路を設定する技術として、米国特許出願公開第2008/0177896号明細書(特許文献1)がある。この公報では、「ある実施例では、装置は、(i)サービスクラシファイアーを登録し、サービスクラシファイアにコンテキスト情報を提供し、(ii)複数のサービスを登録するサービスブローカーを含む。サービスブローカーは、サービスクラシファイアからケイパビリティー及びサービスリクエストを受信する。さらに、コンテクスト情報は、サービスヘッダ、到達情報、及びカプセル化を含み、サービスヘッダ及びカプセル化は、サービスクラシファイアーでパケットに付加又は関連付けられる。さらに、サービスクラシファイアーはこの情報をパケットを第1サービスノードにリダイレクトするために用いることができる。」と記載されている(要約参照)。   As a technology for setting a service chaining route, there is US Patent Application Publication No. 2008/0177896 (Patent Document 1). In this publication, “In one embodiment, an apparatus includes a service broker that (i) registers a service classifier, provides context information to the service classifier, and (ii) registers a plurality of services. Receive capabilities and service requests from the service classifier, and the context information includes a service header, arrival information, and an encapsulation, and the service header and encapsulation are added or associated with the packet at the service classifier. The service classifier can use this information to redirect the packet to the first service node "(see summary).

米国特許出願公開第2008/0177896号明細書US Patent Application Publication No. 2008/0177896

サービスチェイニング技術を用いてユーザのユーザ端末にサービスを提供する場合、サービスを提供するサービスファンクションを管理するサービス事業者と、サービスチェイニングの経路を管理するネットワーク事業者とが異なることが想定される。この場合、ユーザ端末のサービスファンクションの利用可否と経路とを一括管理できず、ユーザ端末のサービスファンクションの利用可否を経路に反映することができない。特許文献1に記載された技術では、サービスファンクションの利用可否を考慮して経路が設定されないので、サービスファンクションが利用できない状態で経路が設定されても、当該経路のトラフィックは停止してしまうか、サービスファンクションのリソースを不適切に消費してしまう。   When a service is provided to a user terminal of a user using service chaining technology, it is assumed that the service provider that manages the service function that provides the service and the network provider that manages the service chaining route are different. The In this case, the availability of the service function of the user terminal and the route cannot be collectively managed, and the availability of the service function of the user terminal cannot be reflected on the route. In the technique described in Patent Document 1, since the route is not set in consideration of the availability of the service function, even if the route is set in a state where the service function cannot be used, the traffic of the route stops. Service function resources are consumed inappropriately.

そこで、本発明は、サービスファンクションを管理する事業者とネットワークの経路を管理する事業者とが異なる場合であっても、サービスファンクションの利用可否を反映した経路を設定するネットワークスイッチを提供することを目的とする。   Therefore, the present invention provides a network switch that sets a route that reflects the availability of use of a service function, even when the operator that manages the service function is different from the operator that manages the network route. Objective.

上記課題を解決するために、サービスを提供する少なくとも一つのサービスファンクションと、前記少なくとも一つのサービスファンクションを制御する制御装置とを備えるネットワークシステムであって、端末のデータは、前記端末のユーザが加入するサービスに応じたサービスファンクションを所定の順番で経由する経路に従って転送されることによって、前記ユーザが加入したサービスが当該ユーザの端末に提供され、前記制御装置は、前記ユーザが加入するサービスと、前記サービスを提供するサービスファンクションの利用可否を示す情報とが登録されたサービス状態管理情報を保持し、前記サービスファンクションから利用可否を示す情報を取得し、前記取得した利用可否を示す情報に基づいて、前記サービス状態管理情報を更新し、前記サービス状態管理情報に基づいて、前記端末のユーザが加入するサービスを提供し、かつ前記端末が利用可能なサービスファンクションを前記端末のデータが経由するサービスファンクションの経路を決定し、前記決定した経路に従って、前記端末のデータが転送されることを特徴とする。   In order to solve the above-mentioned problem, a network system comprising at least one service function for providing a service and a control device for controlling the at least one service function, wherein terminal data is subscribed by a user of the terminal. The service function according to the service to be performed is transferred according to a route passing in a predetermined order, whereby the service subscribed to by the user is provided to the terminal of the user, and the control device includes the service subscribed by the user, Information indicating whether or not the service function that provides the service is registered is registered, information indicating whether or not the service function is available is acquired from the service function, and based on the acquired information indicating whether the service is available or not , Update the service status management information And determining a service function path through which the terminal data passes a service function that can be used by the terminal based on the service state management information and that is available to the terminal. According to the route, the data of the terminal is transferred.

本発明によれば、サービスファンクションを管理する事業者とネットワークの経路を管理する事業者とが異なる場合であっても、サービスファンクションの利用可否を反映した経路を設定するネットワークスイッチを提供できる。   According to the present invention, it is possible to provide a network switch that sets a route that reflects whether or not a service function can be used, even when the operator that manages the service function is different from the operator that manages the network route.

上記した以外の課題、構成、及び効果は、以下の実施形態の説明により明らかにされる。   Problems, configurations, and effects other than those described above will be clarified by the following description of embodiments.

本実施例のサービスチェイニングシステムのシステム構成図である。It is a system block diagram of the service chaining system of a present Example. 本実施例のクラシファイアのハードウェア構成図である。It is a hardware block diagram of the classifier of a present Example. 本実施例のコントローラのハードウェア構成図である。It is a hardware block diagram of the controller of a present Example. 本実施例のユーザデータベースの説明図である。It is explanatory drawing of the user database of a present Example. 本実施例のサービス状態管理情報の説明図である。It is explanatory drawing of the service status management information of a present Example. 本実施例のサービス状態確認手順情報の説明図である。It is explanatory drawing of the service status confirmation procedure information of a present Example. 本実施例のサービス経路リストの説明図である。It is explanatory drawing of the service route list of a present Example. 本実施例のクラシファイアが保持するサービス識別テーブルの説明図である。It is explanatory drawing of the service identification table which the classifier of a present Example hold | maintains. 本実施例のフォワーダが保持するサービス転送テーブルの説明図である。It is explanatory drawing of the service transfer table which the forwarder of a present Example hold | maintains. 本実施例のコントローラが実行する経路設定処理のフローチャートである。It is a flowchart of the path | route setting process which the controller of a present Example performs. 本実施例の利用可否取得処理のフローチャートである。It is a flowchart of the availability acquisition process of a present Example. 本実施例のユーザ端末がネットワークに接続する場合の経路設定処理のシーケンス図である。It is a sequence diagram of a path | route setting process in case the user terminal of a present Example connects to a network. 本実施例のサービスファンクションがともに利用できる場合に適用される経路の説明図である。It is explanatory drawing of the path | route applied when the service function of a present Example can be utilized together. 本実施例の一方のサービスファンクションが利用できない場合に適用される経路の説明図である。It is explanatory drawing of the path | route applied when one service function of a present Example cannot be used. 本実施例のサービスファンクションの利用可否を逐次的に取得する場合の経路設定処理のシーケンス図である。It is a sequence diagram of the route setting process when acquiring the availability of the service function of this embodiment sequentially. 本実施例の従属サービスファンクションが従属するサービスファンクションが利用できず、いずれのサービスファンクションにも従属しないサービスファンクションが利用できる場合に設定される経路の説明図である。It is explanatory drawing of the path | route set when the service function which the subordinate service function of a present Example depends cannot be used, and the service function which does not depend on any service function can be used. 本実施例のユーザが加入するサービスを削除する場合の経路設定処理のシーケンス図である。It is a sequence diagram of the path | route setting process in the case of deleting the service which the user of a present Example subscribes. 本実施例の削除時各種情報更新処理のフローチャートである。It is a flowchart of the various information update process at the time of a deletion of a present Example. 本実施例のユーザが加入するサービスに新たなサービスを追加する場合の経路設定処理のシーケンス図である。It is a sequence diagram of the path | route setting process in the case of adding a new service to the service which the user of a present Example subscribes. 本実施例の削除時各種情報更新処理のフローチャートである。It is a flowchart of the various information update process at the time of a deletion of a present Example. 本実施例のユーザ端末のサービスファンクションの利用量が閾値以上となった場合の経路設定処理のシーケンス図である。It is a sequence diagram of a route setting process when the usage-amount of the service function of the user terminal of a present Example becomes more than a threshold value.

本実施例について図1〜図21を用いて説明する。   This embodiment will be described with reference to FIGS.

図1は、本実施例のサービスチェイニングシステムのシステム構成図である。   FIG. 1 is a system configuration diagram of a service chaining system according to this embodiment.

サービスチェイニングシステムは、ユーザ端末10のパケットを適切な順序でサービスファンクション200を経由させ、ユーザが加入するサービスをユーザに提供するシステムである。   The service chaining system is a system that provides a user with a service to which the user subscribes by causing the packets of the user terminal 10 to pass through the service function 200 in an appropriate order.

ユーザ端末10は、アクセス網20を介して加入者収容ルータ(クラシファイア)100に接続される。クラシファイア100は、アクセス網20とコア網30とを接続して、ユーザ端末10のフローを転送するレイヤ3の転送装置である。具体的には、クラシファイア100は、コントローラ(制御装置)300が設定したフロー識別情報に基づいて、ユーザ端末10のフローを識別して、コントローラ300が設定したコア網30内の経路を識別するタグ(サービスタグ)をユーザ端末10のフローに付与して、コア網30に転送する。   The user terminal 10 is connected to a subscriber accommodation router (classifier) 100 via an access network 20. The classifier 100 is a layer 3 transfer device that connects the access network 20 and the core network 30 and transfers the flow of the user terminal 10. Specifically, the classifier 100 identifies the flow of the user terminal 10 based on the flow identification information set by the controller (control device) 300 and identifies the path in the core network 30 set by the controller 300. (Service tag) is assigned to the flow of the user terminal 10 and transferred to the core network 30.

また、クラシファイア100は、ユーザ端末10がネットワークに接続する場合に送信する接続要求のパケットをコントローラ300に転送する。なお、接続要求のパケットは、ユーザ端末10がネットワークに接続するためのユーザ認証をコントローラ300に要求するパケットである。コントローラ300は、クラシファイア100が転送した接続要求を受信した場合、当該接続要求を送信したユーザ端末10のユーザ認証を実行する。そして、コントローラ300は、ユーザ認証が成功した場合、接続要求を送信したユーザ端末10にIPアドレス又はプレフィックスを割り当て、当該IPアドレス又はプレフィックスをユーザ端末10に通知するIPアドレス通知パケットを送信する。クラシファイア100は、コントローラ300から送信されたIPアドレス通知パケットを中継する。   In addition, the classifier 100 transfers a connection request packet to be transmitted to the controller 300 when the user terminal 10 is connected to the network. The connection request packet is a packet that requests the controller 300 for user authentication for the user terminal 10 to connect to the network. When the controller 300 receives the connection request transferred by the classifier 100, the controller 300 performs user authentication of the user terminal 10 that has transmitted the connection request. When the user authentication is successful, the controller 300 assigns an IP address or prefix to the user terminal 10 that has transmitted the connection request, and transmits an IP address notification packet that notifies the user terminal 10 of the IP address or prefix. The classifier 100 relays the IP address notification packet transmitted from the controller 300.

なお、クラシファイア100が接続要求を受信した場合、コントローラ300に転送せずに、クラシファイア100が、当該接続要求を送信したユーザ端末10のユーザ認証を実行し、当該ユーザ端末10にIPアドレス又はプレフィックスを割り当ててもよい。   When the classifier 100 receives a connection request, the classifier 100 performs user authentication of the user terminal 10 that has transmitted the connection request without transferring the connection request to the controller 300, and assigns an IP address or prefix to the user terminal 10. It may be assigned.

コア網30は、図示しない少なくとも一つのルータ兼フォワーダ(フォワーダ)によって構築される。フォワーダは、少なくとも一つのサービスファンクション200に接続される。クラシファイア100が付与したサービスタグに基づいて、適切なサービスファンクション200にユーザ端末10のパケットを転送する。コア網30はインターネット40に接続される。   The core network 30 is constructed by at least one router / forwarder (forwarder) (not shown). The forwarder is connected to at least one service function 200. Based on the service tag assigned by the classifier 100, the packet of the user terminal 10 is transferred to an appropriate service function 200. The core network 30 is connected to the Internet 40.

サービスファンクション200は、フォワーダ又はクラシファイア100に接続され、各種ネットワークアプライアンスで提供されるようなネットワークのサービスを提供する計算機である。サービスファンクション200が提供するサービスの例としては、TCP高速化、圧縮、映像オプティマイザ、Firewall、DPI(Deep Packet Inspection)、及びシェーパ等がある。サービスファンクション200は、専用のネットワークアプライアンス装置であってもよいし、汎用的なサーバであってもよい。サービスファンクション200が汎用的なサーバである場合、サービスファンクション200は、サービスを提供するアプリケーションを実行し、サービスを提供する。また、サービスファンクション200となる汎用的なサーバ上に少なくとも一つの仮想マシンが構築され、各仮想マシン上でアプリケ−ションが実行され、サービスが提供されてもよい。なお、図1では、サービスファンクション200A及び200Bの二つのサービスファンクション200を図示したが、サービスファンクション200の数はこれに限定されない。例えば、サービスファンクション200の数は、サービスの種類の数、及びサービスファンクション200の収容条件に応じて決定される。   The service function 200 is a computer that is connected to the forwarder or classifier 100 and provides a network service as provided by various network appliances. Examples of services provided by the service function 200 include TCP acceleration, compression, video optimizer, Firewall, DPI (Deep Packet Inspection), and shaper. The service function 200 may be a dedicated network appliance device or a general-purpose server. When the service function 200 is a general-purpose server, the service function 200 executes an application that provides a service and provides the service. Further, at least one virtual machine may be constructed on a general-purpose server serving as the service function 200, and an application may be executed on each virtual machine to provide a service. In FIG. 1, two service functions 200, that is, service functions 200A and 200B are illustrated, but the number of service functions 200 is not limited to this. For example, the number of service functions 200 is determined according to the number of types of services and the accommodation conditions of the service functions 200.

コントローラ300は、汎用的な計算機であり、クラシファイア100、コア網30のフォワーダ、及びサービスファンクション200を制御する。コントローラ300は、ユーザ端末10のフローのコア網30内での経路を決定する。ここで、コア網30での経路とは、ユーザ端末10のフローが経由するサービスファンクション200と当該サービスファンクション200の経由順序とを含む。   The controller 300 is a general-purpose computer, and controls the classifier 100, the forwarder of the core network 30, and the service function 200. The controller 300 determines a route in the core network 30 of the flow of the user terminal 10. Here, the route in the core network 30 includes the service function 200 through which the flow of the user terminal 10 passes and the order of passing through the service function 200.

具体的には、コントローラ300は、サービスファンクション200の利用可否を示す情報を取得し、取得したサービスファンクション200の利用可否を示す情報に基づいてユーザ端末10のフローの経路を決定する。なお、サービスファンクション200の利用可否を示す情報は、サービスファンクション200によるユーザ端末10の認証結果、ユーザ端末10がサービスファンクション200の利用量が閾値以上である場合に当該サービスファンクション200から送信される切断通知の受信の有無、及びサービスファンクション200に異常が発生した場合に送信される異常通知の受信の有無等である。   Specifically, the controller 300 acquires information indicating whether or not the service function 200 can be used, and determines a flow path of the user terminal 10 based on the acquired information indicating whether or not the service function 200 can be used. The information indicating whether or not the service function 200 can be used is a disconnection transmitted from the service function 200 when the service function 200 authentication result of the service function 200 indicates that the usage amount of the service function 200 is greater than or equal to the threshold value. The presence / absence of reception of a notification and the presence / absence of reception of an abnormality notification transmitted when an abnormality occurs in the service function 200.

図2は、本実施例のクラシファイア100のハードウェア構成図である。   FIG. 2 is a hardware configuration diagram of the classifier 100 of the present embodiment.

クラシファイア100は、制御カード110とラインカード120とを有する。制御カード110はクラシファイア100を制御し、ユーザ端末10のパケットのフローを識別して、当該パケットにサービスタグを付与する。   The classifier 100 includes a control card 110 and a line card 120. The control card 110 controls the classifier 100, identifies the packet flow of the user terminal 10, and attaches a service tag to the packet.

制御カード110は、転送に必要な情報を生成し、生成した情報をラインカード120に設定して、ラインカード120の動作を制御する。制御カード110はプロセッサ111とメモリ112とを有する。   The control card 110 generates information necessary for transfer, sets the generated information in the line card 120, and controls the operation of the line card 120. The control card 110 has a processor 111 and a memory 112.

プロセッサ111は、各種演算処理を実行する。制御カード110が有する図示しない二次記憶装置は非揮発性の非一時的な記憶媒体であり、各種プログラム及び各種データが記憶される。メモリ112は揮発性の一時的な記憶媒体であり、メモリ112には、二次記憶装置に記憶された各種プログラム(例えば、ラインカード120を制御する制御プログラム等)及び各種データがロードされ、プロセッサ111がメモリ112にロードされた各種プログラムを実行し、メモリ112にロードされた各種データを読み書きする。   The processor 111 executes various arithmetic processes. A secondary storage device (not shown) included in the control card 110 is a non-volatile non-temporary storage medium, and stores various programs and various data. The memory 112 is a volatile temporary storage medium. The memory 112 is loaded with various programs (for example, a control program for controlling the line card 120) and various data stored in the secondary storage device. 111 executes various programs loaded in the memory 112 and reads / writes various data loaded in the memory 112.

ラインカード120は、転送エンジン123と、図示しないネットワークインタフェースとを有する。転送エンジン123は、転送テーブル121とサービス識別テーブル122とを有する。転送テーブル121には、受信したパケットの宛先アドレスと当該パケットの出力先となるネットワークインタフェースとの関係が登録される。サービス識別テーブル122には、受信したパケットのフローを識別するための条件と、当該フローのパケットに適用される経路の識別子と、当該フローのパケットの経由すべきサービスファンクションの残数を示すサービスインデックスと、出力先となるネットワークインタフェースの識別子との関係が登録される。なお、経路の識別子及びサービスインデックスがサービスタグとなる。サービス識別テーブル122の詳細は図8で説明する。   The line card 120 includes a transfer engine 123 and a network interface (not shown). The transfer engine 123 includes a transfer table 121 and a service identification table 122. In the forwarding table 121, the relationship between the destination address of the received packet and the network interface that is the output destination of the packet is registered. The service identification table 122 includes a condition for identifying the flow of the received packet, a path identifier applied to the packet of the flow, and a service index indicating the remaining number of service functions to be passed through the packet of the flow And the identifier of the network interface that is the output destination are registered. The route identifier and the service index are service tags. Details of the service identification table 122 will be described with reference to FIG.

転送エンジン123は、他の装置と接続されるネットワークインタフェースが受信したパケットのヘッダから宛先アドレスを取得する。そして、転送エンジン123は、転送テーブル121において取得した宛先アドレスを検索し、当該宛先アドレスと関連付けられた出力先のネットワークインタフェースを決定する。そして、転送エンジン123は、決定した出力先のネットワークインタフェースからパケットを送信する。   The transfer engine 123 acquires a destination address from the header of a packet received by a network interface connected to another device. Then, the transfer engine 123 searches the destination address acquired in the transfer table 121 and determines an output destination network interface associated with the destination address. Then, the transfer engine 123 transmits a packet from the determined output destination network interface.

また、転送エンジン123は、転送テーブル121の検索処理と並行して、ネットワークインタフェースが受信したパケットに含まれるフローを識別するための条件を検索キーとしてサービス識別テーブル122を検索する。当該条件が登録されたエントリがサービス識別テーブル122に登録されている場合、転送エンジン123は、当該パケットはサービスファンクション200を経由するパケットであると判断して、転送テーブル121の検索結果を利用せず、サービス識別テーブル122のフローを識別するための条件に関連付けられたサービスタグを当該パケットに付与してカプセル化し、サービス識別テーブル122のフローを識別するための条件に関連付けられた出力先となるネットワークインタフェースから送信する。なお、フローを識別するための条件は、例えば、パケットのヘッダの5タプルに登録された情報(宛先アドレス、送信元アドレス、宛先ポート番号、送信元ポート番号、及びプロトコル番号)である。   In parallel with the search process of the transfer table 121, the transfer engine 123 searches the service identification table 122 using a condition for identifying a flow included in a packet received by the network interface as a search key. When the entry in which the condition is registered is registered in the service identification table 122, the transfer engine 123 determines that the packet is a packet that passes through the service function 200, and uses the search result of the transfer table 121. First, a service tag associated with a condition for identifying the flow in the service identification table 122 is attached to the packet and encapsulated, and becomes an output destination associated with the condition for identifying the flow in the service identification table 122. Sent from the network interface. The condition for identifying the flow is, for example, information (destination address, transmission source address, destination port number, transmission source port number, and protocol number) registered in the 5-tuple of the packet header.

次に、コア網30を構築する図示しないフォワーダについて説明する。   Next, a forwarder (not shown) that constructs the core network 30 will be described.

フォワーダは、クラシファイア100と同じ装置構成であるが、フォワーダの転送エンジン123は、サービス識別テーブル122の代わりにサービス転送テーブルを有する。サービス転送テーブルには、パケットに付加されたサービスタグと出力先となるネットワークインタフェースとの関係が登録される。サービス転送テーブルの詳細は図9で説明する。   The forwarder has the same device configuration as the classifier 100, but the forwarder forwarding engine 123 has a service forwarding table instead of the service identification table 122. In the service transfer table, the relationship between the service tag added to the packet and the network interface as the output destination is registered. Details of the service transfer table will be described with reference to FIG.

フォワーダがパケットを受信した場合、転送エンジン123は、転送テーブル121の検索処理と並行して、サービス転送テーブルを検索する。具体的には、転送エンジン123は、受信したパケットに付加されたサービスタグが登録されたエントリがサービス転送テーブルに登録されている場合、当該エントリの出力先となるネットワークインタフェースから受信したパケットを転送する。   When the forwarder receives the packet, the transfer engine 123 searches the service transfer table in parallel with the search process of the transfer table 121. Specifically, the transfer engine 123 transfers the packet received from the network interface that is the output destination of the entry when the entry in which the service tag added to the received packet is registered in the service transfer table. To do.

一方、受信したパケットに付加されたサービスタグが登録されたエントリがサービス転送テーブルに登録されていない場合、転送エンジン123は、転送テーブル121の受信したパケットの宛先アドレスが登録されたエントリの出力先となるネットワークインタフェースから受信したパケットを転送する。   On the other hand, when the entry in which the service tag added to the received packet is registered is not registered in the service transfer table, the transfer engine 123 outputs the output destination of the entry in which the destination address of the received packet in the transfer table 121 is registered. Forward the packet received from the network interface.

なお、フォワーダがパケットをサービスファンクション200に転送し、サービスファンクション200が当該パケットを受信した場合、サービスを提供するための処理を当該パケットに対して実行し、当該処理の実行後のパケットを送信元のフォワーダに送信する。フォワーダは、サービスファンクション200から送信されたパケットが、経由すべき全てのサービスファンクション200を経由していれば、サービスタグを当該パケットから除去する。そして、フォワーダは、サービスタグが除去されたパケットの宛先アドレスと一致する転送テーブル121のエントリの出力先となるネットワークインタフェースから当該パケットを送信する。   When the forwarder transfers the packet to the service function 200 and the service function 200 receives the packet, the process for providing the service is performed on the packet, and the packet after the execution of the process is transmitted to the transmission source To the forwarder. When the packet transmitted from the service function 200 passes through all the service functions 200 to be passed, the forwarder removes the service tag from the packet. Then, the forwarder transmits the packet from the network interface that is the output destination of the entry of the forwarding table 121 that matches the destination address of the packet from which the service tag has been removed.

パケットが経由すべき全てのサービスファンクション200を経由しているか否かの判定には、サービスタグに含まれるサービスインデックスが参照される。サービスインデックスは、経由するサービスファンクション200の残数を示し、サービスファンクション200を経由するたびに値が1減算される。このため、フォワーダは、サービスファンクション200から受信したパケットのサービスタグの値が「0」であれば、当該パケットは経由すべき全てのサービスファンクション200を経由したと判定して、サービスタグを除去する。   The service index included in the service tag is referred to for determining whether or not the packet is routed through all the service functions 200 to be routed. The service index indicates the remaining number of service functions 200 that pass through, and the value is decremented by 1 each time the service function 200 passes through. For this reason, if the value of the service tag of the packet received from the service function 200 is “0”, the forwarder determines that the packet has passed through all the service functions 200 to be passed, and removes the service tag. .

なお、フォワーダとサービスファンクション200とは、図示しないサービスファンクションプロキシを介して接続されてもよい。サービスファンクションプロキシは、フォワーダとサービスファンクション200との間でパケットを中継し、サービスファンクション200がパケットに含まれるサービスタグを識別できない場合又はパケットを処理できない場合、サービスタグの除去又は付与、サービスインデックスの値の減算等をサービスファンクション200に代わりに実行する。   The forwarder and the service function 200 may be connected via a service function proxy (not shown). The service function proxy relays a packet between the forwarder and the service function 200. When the service function 200 cannot identify the service tag included in the packet or cannot process the packet, the service function proxy removes or adds the service tag, A value subtraction or the like is executed instead of the service function 200.

図3は、本実施例のコントローラ300のハードウェア構成図である。   FIG. 3 is a hardware configuration diagram of the controller 300 of this embodiment.

コントローラ300は、汎用的な計算機であり、プロセッサ340とメモリ310と二次記憶装置320とを有する。   The controller 300 is a general-purpose computer and includes a processor 340, a memory 310, and a secondary storage device 320.

プロセッサ340は、各種演算処理を実行する。二次記憶装置320は非揮発性の非一時的な記憶媒体であり、経路設定部341に対応するプログラム、サービス状態管理情報311、サービス状態確認手順情報312、サービス経路リスト313、及びユーザデータベース321等の各種データが記憶される。メモリ310は揮発性の一時的な記憶媒体であり、メモリ310には、二次記憶装置320に記憶された経路設定部341に対応するプログラム、サービス状態管理情報311、サービス状態確認手順情報312、及びサービス経路リスト313がロードされる。プロセッサ340は、メモリ310にロードされた経路設定部341に対応するプログラムを実行し、経路設定部341を実現し、メモリ310にロードされたサービス状態管理情報311、サービス状態確認手順情報312、及びサービス経路リスト313を読み書きする。   The processor 340 executes various arithmetic processes. The secondary storage device 320 is a non-volatile non-transitory storage medium, and includes a program corresponding to the route setting unit 341, service state management information 311, service state confirmation procedure information 312, service route list 313, and user database 321. Etc. are stored. The memory 310 is a volatile temporary storage medium. The memory 310 includes a program corresponding to the path setting unit 341 stored in the secondary storage device 320, service state management information 311, service state check procedure information 312, And the service route list 313 is loaded. The processor 340 executes a program corresponding to the route setting unit 341 loaded into the memory 310 to realize the route setting unit 341, and includes service state management information 311, service state confirmation procedure information 312 loaded into the memory 310, and Read / write the service route list 313.

図3では、二次記憶装置320にユーザデータベース321が記憶され、メモリ310にサービス状態管理情報311、サービス状態確認手順情報312、サービス経路リスト313がロードされ、プロセッサ340が経路設定部341に対応するプログラムを実行して、経路設定部341がプロセッサ340上に実現されている状態を示す。   In FIG. 3, the user database 321 is stored in the secondary storage device 320, service state management information 311, service state confirmation procedure information 312, and service route list 313 are loaded into the memory 310, and the processor 340 corresponds to the route setting unit 341. A state where the path setting unit 341 is implemented on the processor 340 is shown.

まず、コントローラ300が記憶する各種データについて説明する。   First, various data stored in the controller 300 will be described.

ユーザデータベース321には、ユーザ端末10のユーザの識別子とユーザが加入するサービスの識別子との関係が登録される。ユーザデータベース321の詳細は図4で説明する。   In the user database 321, the relationship between the identifier of the user of the user terminal 10 and the identifier of the service to which the user subscribes is registered. Details of the user database 321 will be described with reference to FIG.

サービス状態管理情報311には、ユーザ端末10のユーザごとに、サービスの加入の有無、及びサービスを提供するサービスファンクション200の利用可否を示す情報が登録される。サービス状態管理情報311の詳細は図5で説明する。   In the service status management information 311, information indicating whether or not a service is subscribed and whether or not the service function 200 that provides the service can be used is registered for each user of the user terminal 10. Details of the service status management information 311 will be described with reference to FIG.

サービス状態確認手順情報312には、ユーザ端末10が経由するサービスファンクション200の利用可否の状態の取得順序が登録される。サービス状態確認手順情報312の詳細は図6で説明する。   In the service status confirmation procedure information 312, the acquisition order of the availability status of the service function 200 through which the user terminal 10 passes is registered. Details of the service status confirmation procedure information 312 will be described with reference to FIG.

サービス経路リスト313には、ユーザ端末10のユーザ、及びユーザが加入するサービスを提供するサービスファンクション200の利用可否の組み合わせに応じた経路が登録される。サービス経路リスト313の詳細は図7で説明する。   In the service route list 313, routes corresponding to combinations of the user of the user terminal 10 and the availability of the service function 200 that provides the service to which the user subscribes are registered. Details of the service route list 313 will be described with reference to FIG.

次に、コントローラ300の動作の概略について説明する。   Next, an outline of the operation of the controller 300 will be described.

コントローラ300は、所定のタイミングで、サービス状態確認手順情報312を参照して、サービスファンクション200の利用可否を示す情報を取得する。そして、コントローラ300は、取得したサービスファンクション200の利用可否を示す情報に基づいて、サービス状態管理情報311を更新する。そして、コントローラ300は、更新後のサービス状態管理情報311を参照して、ユーザ端末10のユーザが加入するサービスを提供するサービスファンクション200の利用可否に応じた経路を決定する。そして、コントローラ300は、決定した経路をフォワーダ及びクラシファイア100に通知し、ユーザ端末10のパケットの経路をコア網30に設定する。   The controller 300 refers to the service state confirmation procedure information 312 at a predetermined timing and acquires information indicating whether or not the service function 200 can be used. Then, the controller 300 updates the service state management information 311 based on the acquired information indicating whether the service function 200 can be used. Then, the controller 300 refers to the updated service state management information 311 and determines a route according to the availability of the service function 200 that provides the service to which the user of the user terminal 10 subscribes. Then, the controller 300 notifies the determined route to the forwarder and classifier 100 and sets the packet route of the user terminal 10 in the core network 30.

これによって、コントローラ300がサービスファンクション200の利用可否を取得し、取得したサービスファンクション200の利用可否に応じた経路をコア網30に設定するので、サービスファンクション200を管理する事業者とコア網30を管理する事業者とが異なる場合であっても、サービスファンクション200の利用可否に応じて経路を設定することができる。したがって、利用できないサービスファンクション200があっても、ユーザ端末10のパケットが停止したり、他のサービスファンクション200のリソースを不適切に消費することを防止できる。   As a result, the controller 300 acquires whether or not the service function 200 can be used, and sets a path in the core network 30 according to whether or not the acquired service function 200 is used. Even when the service provider is different, the route can be set according to the availability of the service function 200. Therefore, even if there is a service function 200 that cannot be used, it is possible to prevent the packet of the user terminal 10 from being stopped or inappropriately consuming resources of other service functions 200.

図4は、本実施例のユーザデータベース321の説明図である。   FIG. 4 is an explanatory diagram of the user database 321 of this embodiment.

ユーザデータベース321は、一般にBSS(Business Support System)の形態で保持される。なお、図3では、ユーザデータベース321は、コントローラ300に記憶される例について説明したが、コントローラ300の外部の装置に記憶されてもよい。   The user database 321 is generally held in the form of a BSS (Business Support System). Although the example in which the user database 321 is stored in the controller 300 has been described in FIG. 3, the user database 321 may be stored in a device outside the controller 300.

ユーザデータベース321は、ユーザが加入するサービスを管理するためのものであり、ユーザにどのサービスファンクション200を適用するかを決定するために使用される。   The user database 321 is for managing the service to which the user subscribes, and is used to determine which service function 200 is applied to the user.

ユーザデータベース321は、ユーザID401と加入サービス情報402とを含む。ユーザID401には、ユーザの識別子が登録される。加入サービス情報402には、ユーザが加入するサービスの識別子が登録される。   The user database 321 includes a user ID 401 and subscription service information 402. In the user ID 401, a user identifier is registered. In the subscription service information 402, an identifier of a service to which a user subscribes is registered.

図5は、本実施例のサービス状態管理情報311の説明図である。   FIG. 5 is an explanatory diagram of the service status management information 311 of this embodiment.

サービス状態管理情報311は、ユーザID501、並びにコントローラ300が制御するサービスごとに加入/未加入502及び利用可否503を含む。   The service state management information 311 includes a user ID 501 and a subscription / non-subscription 502 and availability 503 for each service controlled by the controller 300.

ユーザID501には、ユーザの識別子が登録される。加入/未加入502には、ユーザが各サービスに加入しているか否かを示す情報が登録される。加入/未加入502には、コントローラ300がユーザデータベース321を参照して、ユーザが加入するサービスには「加入」が登録され、ユーザが未加入であるサービスには「未加入」が登録される。利用可否503には、各サービスを提供するサービスファンクション200の利用可否を示す情報が登録される。利用可否503に登録される情報は、コントローラ300がサービスファンクション200から利用可否を示す情報を取得した場合に更新される。   In the user ID 501, a user identifier is registered. In the subscription / non-subscription 502, information indicating whether the user has subscribed to each service is registered. In the subscription / non-subscription 502, the controller 300 refers to the user database 321, and “subscription” is registered for the service to which the user subscribes, and “non-subscription” is registered for the service to which the user has not subscribed. . In the availability 503, information indicating availability of the service function 200 that provides each service is registered. Information registered in the availability 503 is updated when the controller 300 acquires information indicating availability from the service function 200.

図6は、本実施例のサービス状態確認手順情報312の説明図である。   FIG. 6 is an explanatory diagram of the service status confirmation procedure information 312 of this embodiment.

サービス状態確認手順情報312は、サービス状態確認契機情報1000と順序リスト1001(1001−1及び1001−2)とを含む。   The service status confirmation procedure information 312 includes service status confirmation trigger information 1000 and an order list 1001 (1001-1 and 1001-2).

サービス状態確認契機情報1000は、ユーザID601と適用サービス一覧602と状態確認契機603と順序リストポインタ604とを含む。   The service status confirmation trigger information 1000 includes a user ID 601, an applicable service list 602, a status confirmation trigger 603, and an order list pointer 604.

ユーザID601にはユーザの識別子が登録される。適用サービス一覧602には、ユーザが加入するサービスの識別子が登録される。状態確認契機603には、適用サービス一覧602に登録された識別子によって識別されるサービスを提供するサービスファンクション200に、他のサービスファンクション200が利用可能である場合にのみ利用可否を示す情報を取得する従属サービスファンクションが含まれるか否かを示す情報が登録される。状態確認契機603には、従属サービスファンクションが含まれない場合、「並列」が登録され、従属サービスファンクションが含まれる場合、「逐次」が登録される。順序リストポインタ604には、順序リスト1001の先頭エントリのポインタが登録される。   The user ID 601 registers a user identifier. In the applied service list 602, identifiers of services to which the user subscribes are registered. The status confirmation trigger 603 acquires information indicating whether or not the service function 200 that provides the service identified by the identifier registered in the applicable service list 602 can be used only when another service function 200 is available. Information indicating whether or not a dependent service function is included is registered. In the status confirmation trigger 603, “parallel” is registered when the dependent service function is not included, and “sequential” is registered when the dependent service function is included. In the order list pointer 604, the pointer of the first entry of the order list 1001 is registered.

順序リスト1001では、少なくとも一つのエントリがリスト形式で接続される。順序リスト1001のエントリには、利用可否を示す情報を取得するサービスファンクション200が提供するサービスの識別子と、当該サービスファンクション200の利用可否を示す情報に応じた次の動作とが登録される。具体的には、エントリには、次のサービスを提供するサービスファンクション200の利用可否を示す情報を取得する場合には、当該次のサービスを提供するサービスファンクション200の次の動作が登録されたエントリのポインタが登録される。また、エントリには、次のサービスファンクション200の利用可否を示す情報を取得しない場合には、その旨を示す情報(「なし」)が登録される。   In the ordered list 1001, at least one entry is connected in a list format. Registered in the entry of the order list 1001 are an identifier of a service provided by the service function 200 that acquires information indicating availability and the next operation according to the information indicating availability of the service function 200. Specifically, in the entry, in the case of acquiring information indicating whether or not the service function 200 that provides the next service can be used, the entry in which the next operation of the service function 200 that provides the next service is registered. Is registered. Further, in the entry, when information indicating whether or not the next service function 200 can be used is not acquired, information indicating that (“none”) is registered.

コントローラ300は、サービスファンクション200の利用可否を示す情報の取得が必要なユーザの識別子と当該ユーザが加入するサービスの識別子とを検索キーとして用いて、サービス状態確認契機情報1000を検索する。検索キーと一致するサービス状態確認契機情報1000のエントリがあれば、コントローラ300は、当該エントリの状態確認契機603及び順序リストポインタ604に従って、サービスファンクション200の利用可否を示す情報を取得する。   The controller 300 searches the service status confirmation trigger information 1000 using the identifier of the user who needs to acquire information indicating whether or not the service function 200 can be used and the identifier of the service to which the user subscribes as search keys. If there is an entry of the service status confirmation trigger information 1000 that matches the search key, the controller 300 acquires information indicating whether the service function 200 can be used according to the status confirmation trigger 603 and the order list pointer 604 of the entry.

図6に示す例では、ユーザの識別子「ユーザ1」と当該ユーザが加入するサービスの識別子「サービスA」及び「サービスD」とを検索キーとした場合、サービス状態確認契機情報1000の1行目のエントリが検索される。サービス状態確認契機情報1000の1行目のエントリの状態確認契機603には「並列」が登録されているので、「ユーザ1」が加入するサービスAを提供するサービスファンクション200及びサービスDを提供するサービスファンクション200は従属サービスファンクションを含まない。このため、コントローラ300は、サービスAを提供するサービスファンクション200の利用可否を示す情報の取得と、サービスDを提供するサービスファンクション200の利用可否を示す情報の取得とを並列して実行する。   In the example shown in FIG. 6, when the user identifier “user 1” and the identifiers “service A” and “service D” of the service to which the user subscribes are used as search keys, the first line of the service status confirmation trigger information 1000 Is searched. Since “Parallel” is registered in the status confirmation trigger 603 of the first line entry of the service status confirmation trigger information 1000, the service function 200 and the service D that provide the service A to which the “user 1” subscribes are provided. Service function 200 does not include dependent service functions. For this reason, the controller 300 executes in parallel the acquisition of information indicating whether or not the service function 200 that provides the service A can be used and the acquisition of information that indicates whether or not the service function 200 that provides the service D can be used.

また、ユーザの識別子「ユーザ2」と当該ユーザが加入するサービスの識別子「サービスA」及び「サービスB」とを検索キーとした場合、サービス状態確認契機情報1000の2行目のエントリが検索される。サービス状態確認契機情報1000の2行目のエントリの状態確認契機603には「逐次」が登録されているので、「ユーザ2」が加入するサービスAを提供するサービスファンクション及びサービスBを提供するサービスファンクション200は従属サービスファンクションを含む。コントローラ300は、サービス状態確認契機情報1000の2行目のエントリの順序リストポインタ604に登録されたポインタが示す順序リスト1001−1のエントリ1011−1を参照して、サービスAを提供するサービスファンクション200の利用可否を示す情報を取得する。サービスAを提供するサービスファンクション200の利用可否を示す情報が利用できないことを示す場合、エントリ1011−1の異常時の次エントリには「なし」が登録されているため、コントローラ300は、サービスBを提供するサービスファンクション200の利用可否を示す情報を取得せず、サービスファンクション200の利用可否を示す情報の取得を終了する。   When the user identifier “user 2” and the service identifiers “service A” and “service B” to which the user subscribes are used as search keys, the entry in the second line of the service status confirmation trigger information 1000 is searched. The Since “sequential” is registered in the status confirmation trigger 603 of the entry on the second line of the service status confirmation trigger information 1000, the service function that provides the service A to which the “user 2” subscribes and the service that provides the service B Function 200 includes subordinate service functions. The controller 300 refers to the entry 1011-1 in the order list 1001-1 indicated by the pointer registered in the order list pointer 604 of the entry in the second line of the service status confirmation trigger information 1000, and provides a service function that provides the service A Information indicating availability of 200 is acquired. If the information indicating whether or not the service function 200 that provides the service A can be used is not available, “none” is registered in the next entry at the time of abnormality of the entry 1011-1. The acquisition of the information indicating whether or not the service function 200 is available is terminated without acquiring the information indicating whether or not the service function 200 providing the service is available.

サービスAを提供するサービスファンクション200の利用可否を示す情報が利用できることを示す場合、コントローラ300は、エントリ1011−1の正常時の次エントリに登録されたポインタが示すエントリ1011−2を参照し、サービスBを提供するサービスファンクション200の利用可否を示す情報を取得する。エントリ1011−2の正常時の次エントリ及び異常時の次エントリには「なし」が登録されているので、せービスBを提供するサービスファンクション200の利用可否を示す情報が利用できることを示す場合であっても、利用できないことを示す場合であっても、コントローラ300は、サービスファンクション200の利用可否を示す情報の取得を終了する。   When indicating that the information indicating whether or not the service function 200 that provides the service A can be used is available, the controller 300 refers to the entry 1011-2 indicated by the pointer registered in the next entry when the entry 1011-1 is normal, Information indicating whether or not the service function 200 providing the service B can be used is acquired. Since “None” is registered in the next entry at the normal time and the next entry at the abnormal time of the entry 1011-2, the information indicating whether the service function 200 providing the service B can be used is used. Even if it exists, even if it is a case where it cannot be used, the controller 300 complete | finishes acquisition of the information which shows the availability of the service function 200. FIG.

順序リスト1001−1には、サービスBを提供するサービスファンクション200がサービスAを提供するサービスファンクション200の従属サービスファンクションであることが登録されている。このため、サービスAを提供するサービスファンクション200の利用可否を示す情報が利用できないことを示す場合、サービスBは提供され得ないので、サービスBを提供するサービスファンクション200の利用可否を示す情報を取得しない。このように、提供され得ないサービスを提供するサービスファンクション200の利用可否を示す情報を取得しないので、コントローラ300及び当該サービスファンクション200の処理負荷を軽減できる。   In the order list 1001-1, it is registered that the service function 200 that provides the service B is a subordinate service function of the service function 200 that provides the service A. Therefore, when the information indicating whether or not the service function 200 that provides the service A is available cannot be used, the service B cannot be provided. Therefore, the information indicating whether or not the service function 200 that provides the service B can be used is acquired. do not do. As described above, since information indicating whether or not the service function 200 that provides a service that cannot be provided is not acquired, the processing load on the controller 300 and the service function 200 can be reduced.

図7は、本実施例のサービス経路リスト313の説明図である。   FIG. 7 is an explanatory diagram of the service route list 313 of this embodiment.

サービス経路リスト313には、各ユーザが加入するサービスを提供するサービスファンクション200の利用可否の組み合わせに応じた経路がユーザごとに登録される。サービス経路リスト313は、ユーザID701、及び少なくとも一つのエントリを含む。サービス経路リスト313に含まれるエントリは、条件702及びサービス経路情報703を含む。   In the service route list 313, a route corresponding to a combination of availability of the service function 200 that provides a service to which each user subscribes is registered for each user. The service route list 313 includes a user ID 701 and at least one entry. The entry included in the service route list 313 includes a condition 702 and service route information 703.

条件702には、同じエントリのサービス経路情報703に登録された経路情報を適用するための条件が登録される。具体的には、条件702には、利用不可であるサービスファンクション200の組み合わせが登録される。サービス経路情報703には、適用する経路情報が登録される。なお、経路情報は、利用不可であるサービスファンクション200を経由しない経路を含むものとする。経路情報は、例えば、サービスファンクションの経由順序と、クラシファイア100又はフォワーダに設定されるサービスタグ及び次ホップの情報とを含む。   In the condition 702, a condition for applying the route information registered in the service route information 703 of the same entry is registered. Specifically, the condition 702 registers a combination of service functions 200 that cannot be used. In the service route information 703, route information to be applied is registered. The route information includes a route that does not pass through the service function 200 that cannot be used. The route information includes, for example, the order of service functions, and the service tag and next hop information set in the classifier 100 or forwarder.

例えば、ユーザIDが「1」であるユーザがサービスA及びサービスBに加入する場合、当該ユーザIDのレコードは、エントリ1〜4を含む。エントリ1には、サービスAを提供するサービスファンクション200及びサービスBを提供するサービスファンクション200が利用可能である場合に適用する経路が登録され、エントリ2には、サービスAを提供するサービスファンクション200が利用不可である場合に適用する経路が登録され、エントリ3には、サービスBを提供するサービスファンクション200が利用不可である場合に適用する経路が登録され、エントリ4の条件702には、サービスAを提供するサービスファンクション200及びサービスBを提供するサービスファンクション200がともに利用不可である場合に適用する経路情報が登録される。   For example, when a user whose user ID is “1” subscribes to service A and service B, the record of the user ID includes entries 1 to 4. In entry 1, a route to be applied when the service function 200 providing service A and the service function 200 providing service B are available is registered, and in entry 2, the service function 200 providing service A is registered. A route to be applied when unavailable is registered, and a route to be applied when the service function 200 providing the service B is unavailable is registered in the entry 3. Route information to be applied when both the service function 200 that provides the service function 200 and the service function 200 that provides the service B are unavailable is registered.

なお、サービス経路リスト313は、ユーザIDとサービスファンクション200の利用可否を示す情報との組み合わせを検索キーとして検索される。   The service route list 313 is searched using a combination of a user ID and information indicating whether or not the service function 200 can be used as a search key.

サービス状態管理情報311、サービス状態確認手順情報312、及びサービス経路リスト313は、運用コマンドが入力された場合に表示され、管理者が確認できるようにしてもよい。また、サービス状態管理情報311、サービス状態確認手順情報312、及びサービス経路リスト313は、管理者によってコンフィグ入力可能な情報であり、CLI(Command Line Interface)又はGUI(Graphical User Interface)等の設定画面を介して設定可能である。   The service state management information 311, service state confirmation procedure information 312, and service route list 313 may be displayed when an operation command is input and can be confirmed by the administrator. The service state management information 311, service state confirmation procedure information 312, and service route list 313 are information that can be input by the administrator, and a setting screen such as CLI (Command Line Interface) or GUI (Graphical User Interface). It can be set via

図8は、本実施例のクラシファイア100が保持するサービス識別テーブル122の説明図である。   FIG. 8 is an explanatory diagram of the service identification table 122 held by the classifier 100 of the present embodiment.

サービス識別テーブル122は、フロー条件801、サービス経路ID802、サービスインデックス803、及び次ホップ804を含む。   The service identification table 122 includes a flow condition 801, a service route ID 802, a service index 803, and a next hop 804.

フロー条件801には、受信したパケットのフローを識別するための条件が登録される。例えば、フロー条件801には、パケットのヘッダの5タプルに登録される情報が条件として登録される。サービス経路ID802には、フロー条件801に登録された条件によって識別されたフローのパケットに適用される経路の識別子が登録される。サービスインデックス803には、クラシファイア100にフロー条件801に登録された条件によって識別されたフローのパケットに付与するサービスタグに含まれるサービスインデックスが登録される。次ホップ804には、フロー条件801に登録された条件によって識別されたフローのパケットの出力先となるネットワークインタフェースの識別子が登録される。   In the flow condition 801, a condition for identifying the flow of the received packet is registered. For example, in the flow condition 801, information registered in the 5-tuple of the packet header is registered as a condition. In the service route ID 802, an identifier of a route applied to the packet of the flow identified by the condition registered in the flow condition 801 is registered. In the service index 803, a service index included in a service tag attached to a packet of a flow identified by the condition registered in the flow condition 801 in the classifier 100 is registered. Registered in the next hop 804 is the identifier of the network interface that is the output destination of the packet of the flow identified by the condition registered in the flow condition 801.

クラシファイア100は、パケットを受信した場合、サービス識別テーブル122のフロー条件801に、受信したパケットの5タプルに登録される情報が登録されたエントリを取得する。そして、クラシファイア100は、取得したエントリに含まれるサービス経路ID802に登録された経路の識別子とサービスインデックス803に登録されたサービスインデックスとを含むサービスタグを受信したパケットに付与することによって、受信したパケットをカプセル化する。そして、クラシファイア100は、取得したエントリの次ホップ804に登録された識別子によって識別されるネットワークインタフェースから、受信したパケットを出力する。   When receiving a packet, the classifier 100 acquires an entry in which information registered in the 5-tuple of the received packet is registered in the flow condition 801 of the service identification table 122. Then, the classifier 100 adds the service tag including the identifier of the route registered in the service route ID 802 included in the acquired entry and the service index registered in the service index 803 to the received packet. Is encapsulated. Then, the classifier 100 outputs the received packet from the network interface identified by the identifier registered in the next hop 804 of the acquired entry.

図9は、本実施例のフォワーダが保持するサービス転送テーブルの説明図である。   FIG. 9 is an explanatory diagram of a service transfer table held by the forwarder of the present embodiment.

サービス転送テーブルは、サービス経路ID901、サービスインデックス902、及び次ホップ903を含む。   The service transfer table includes a service route ID 901, a service index 902, and a next hop 903.

サービス経路ID901には、パケットのサービスタグに含まれる経路の識別子が登録される。サービスインデックス902には、パケットのサービスタグに含まれるサービスインデックスが登録される。次ホップ903には、パケットの出力先となるネットワークインタフェースの識別子が登録される。   In the service route ID 901, the identifier of the route included in the service tag of the packet is registered. In the service index 902, a service index included in the service tag of the packet is registered. In the next hop 903, the identifier of the network interface that is the output destination of the packet is registered.

フォワーダは、パケットを受信した場合、サービス転送テーブルのサービス経路ID901に、受信したパケットのサービスタグに含まれる経路の識別子が登録され、サービスインデックス902に、受信したパケットのサービスタグに含まれるサービスタグが登録されたエントリを取得する。そして、フォワーダは、取得したエントリの次ホップ903に登録された識別子によって識別されるネットワークインタフェースから、受信したパケットを出力する。なお、フォワーダは、パケットを受信してネットワークインタフェースに出力する前に、受信したパケットのサービスインデックスから1を減算する。   When the forwarder receives the packet, the identifier of the route included in the service tag of the received packet is registered in the service route ID 901 of the service transfer table, and the service tag included in the service tag of the received packet in the service index 902 Get the registered entry. Then, the forwarder outputs the received packet from the network interface identified by the identifier registered in the next hop 903 of the acquired entry. The forwarder subtracts 1 from the service index of the received packet before receiving the packet and outputting it to the network interface.

また、受信したパケットのサービスタグと一致するエントリがサービス転送テーブルに存在しない場合、フォワーダは、転送テーブル121を参照し、受信したパケットの宛先IPアドレスに対応する出力先のネットワークインタフェースの識別子を取得し、取得した識別子によって識別されるネットワークインタフェースから、受信したパケットを出力する。   If the entry matching the service tag of the received packet does not exist in the service forwarding table, the forwarder refers to the forwarding table 121 and obtains the identifier of the output destination network interface corresponding to the destination IP address of the received packet. The received packet is output from the network interface identified by the acquired identifier.

次に、コントローラ300の動作について図10を用いて説明する。図10は、本実施例のコントローラ300が実行する経路設定処理のフローチャートである。   Next, the operation of the controller 300 will be described with reference to FIG. FIG. 10 is a flowchart of the path setting process executed by the controller 300 of this embodiment.

コントローラ300の経路設定部341は、ユーザがサービスに新規に加入した場合、ユーザが加入するサービスを変更した場合、前回経路設定処理を実行してから所定時間経過した場合、及びユーザ端末10からネットワークへの接続要求を受信した場合、経路設定処理を実行する。   The route setting unit 341 of the controller 300 is used when the user newly subscribes to the service, when the service to which the user subscribes is changed, when a predetermined time has elapsed since the last time the route setting process was executed, and from the user terminal 10 to the network When a connection request to is received, route setting processing is executed.

まず、経路設定部341は、サービス状態確認手順情報312を参照して、ユーザ端末10がサービスファンクション200の利用可否を示す情報を取得する利用可否取得処理を実行する(1001)。例えば、コントローラ300がユーザ端末10から接続要求を受信した場合、当該ユーザ端末10のユーザが加入するサービスを提供するサービスファンクション200に接続要求を転送し、サービスファンクション200に認証を実行させ、認証結果を、サービスファンクション200の利用可否を示す情報として取得する。また、コントローラ300は、あるユーザ端末10の利用量が閾値以上となったサービスファンクション200から送信される切断通知を利用可否を示す情報として取得する。ステップ1001の利用可否取得処理の詳細については、図11を用いて説明する。   First, the route setting unit 341 refers to the service state confirmation procedure information 312 and executes a use availability acquisition process in which the user terminal 10 acquires information indicating whether the service function 200 can be used (1001). For example, when the controller 300 receives a connection request from the user terminal 10, the controller 300 transfers the connection request to the service function 200 that provides a service to which the user of the user terminal 10 subscribes, causes the service function 200 to execute authentication, and the authentication result Is acquired as information indicating whether or not the service function 200 can be used. In addition, the controller 300 acquires a disconnection notification transmitted from the service function 200 in which the usage amount of a certain user terminal 10 is equal to or greater than a threshold value as information indicating availability. Details of the availability determination processing in step 1001 will be described with reference to FIG.

次に、経路設定部341は、ステップ1001の処理で取得したユーザ端末10のサービスファンクション200の利用可否を示す情報と、サービス状態管理情報311の当該ユーザ端末10のユーザに対応するエントリとを比較して、今回のステップ1001の処理で取得した利用可否を示す情報が前回のステップ1001の処理で取得した利用可否を示す情報と異なるか否かを判定する(1002)。   Next, the path setting unit 341 compares the information indicating whether or not the service function 200 of the user terminal 10 acquired in the process of Step 1001 is available with the entry corresponding to the user of the user terminal 10 in the service status management information 311. Then, it is determined whether or not the information indicating availability that is acquired in the current step 1001 is different from the information indicating availability that is acquired in the previous step 1001 (1002).

ステップ1002の処理で、今回のステップ1001の処理で取得した利用可否を示す情報が前回のステップ1001の処理で取得した利用可否を示す情報と同じであると判定された場合(1002:No)、経路設定部341は、ユーザ端末10に適用する経路を新たに適用せず、経路設定処理を終了する。   When it is determined in the process of step 1002 that the information indicating the availability that is acquired in the current process of step 1001 is the same as the information indicating the availability that is acquired in the previous process of step 1001 (1002: No), The route setting unit 341 ends the route setting process without newly applying a route to be applied to the user terminal 10.

一方、ステップ1002の処理で、今回のステップ1001の処理で取得した利用可否を示す情報が前回のステップ1001の処理で取得した利用可否を示す情報と異なると判定された場合(1002:No)、経路設定部341は、今回のステップ1001の処理で取得した利用可否を示す情報に基づいて、サービス状態管理情報311を更新する(1003)。   On the other hand, when it is determined in the process of step 1002 that the information indicating the availability acquired in the process of step 1001 is different from the information indicating the availability of the process acquired in the previous step 1001 (1002: No), The route setting unit 341 updates the service state management information 311 based on the information indicating the availability obtained in the process of Step 1001 this time (1003).

具体的には、経路設定部341は、サービス状態管理情報311のユーザID501に、今回のステップ1001の処理でサービスファンクション200の利用可否を示す情報を取得したユーザ端末10のユーザの識別子が登録されたエントリを選択する。そして、経路設定部341は、選択したエントリに含まれるサービスから、今回のステップ1001の処理で取得した利用可否を示す情報が前回のステップ1001の処理で取得した利用可否を示す情報と異なるサービスを選択する。そして、経路設定部341は、選択したサービスの利用可否503に、今回のステップ1001の処理で取得した利用可否を示す情報を登録する。   Specifically, in the route setting unit 341, the identifier of the user of the user terminal 10 that has acquired information indicating whether or not the service function 200 can be used in the process of step 1001 is registered in the user ID 501 of the service state management information 311. Select the entry. Then, the route setting unit 341 uses a service that is different from the service information that is obtained in the process of Step 1001 in the information that indicates whether the service is acquired in the process of Step 1001 from the service included in the selected entry. select. Then, the route setting unit 341 registers, in the availability 503 of the selected service, information indicating the availability that is acquired in the current processing of Step 1001.

次に、経路設定部341は、サービス経路リスト313を参照して、ステップ1003の処理でサービス状態管理情報311が更新されたエントリに対応するユーザのユーザ端末10に適用される経路を決定し、決定した経路をフォワーダ及びクラシファイア100に通知して、決定した経路をコア網30に設定して(1004)、経路適用処理を終了する。   Next, the route setting unit 341 refers to the service route list 313, determines a route to be applied to the user terminal 10 of the user corresponding to the entry in which the service state management information 311 is updated in the process of Step 1003, and The determined route is notified to the forwarder and classifier 100, the determined route is set in the core network 30 (1004), and the route application process is terminated.

具体的には、経路設定部341は、ステップ1003の処理でサービス状態管理情報311が更新されたエントリのユーザID501に登録されたユーザの識別子、及び当該エントリの全てのサービスの利用可否503に登録された利用可否を示す情報を取得する。そして、経路設定部341は、サービス経路リスト313のユーザID701に取得したユーザの識別子が登録されたエントリから、条件702に登録された条件が取得した利用可否を示す情報の組み合わせと一致するエントリを選択する。そして、経路設定部341は、選択したエントリのサービス経路情報703に登録された経路情報によって特定される経路を、ステップ1003の処理でサービス状態管理情報311が更新されたエントリに対応するユーザのユーザ端末10に適用される経路として決定する。   Specifically, the route setting unit 341 registers the user identifier registered in the user ID 501 of the entry whose service state management information 311 has been updated in the processing of Step 1003 and the availability of all services in the entry 503. Information indicating whether or not use has been performed is acquired. Then, the route setting unit 341 selects an entry that matches the combination of information indicating the availability that the condition registered in the condition 702 has acquired from the entry in which the user identifier acquired in the user ID 701 of the service route list 313 is registered. select. Then, the route setting unit 341 selects the route specified by the route information registered in the service route information 703 of the selected entry as the user of the user corresponding to the entry for which the service state management information 311 has been updated in the process of Step 1003. It is determined as a route applied to the terminal 10.

以上によって、コントローラ300は、サービスファンクション200の利用可否を示す情報に基づいてユーザ端末10に適用する経路をコア網30に設定することができる。   As described above, the controller 300 can set the route applied to the user terminal 10 in the core network 30 based on the information indicating whether the service function 200 can be used.

図11は、本実施例の利用可否取得処理のフローチャートである。   FIG. 11 is a flowchart of the availability acquisition process according to this embodiment.

まず、経路設定部341は、サービス状態確認手順情報312のサービス状態確認契機情報1000を参照する(1101)。   First, the route setting unit 341 refers to the service status confirmation trigger information 1000 of the service status confirmation procedure information 312 (1101).

次に、経路設定部341は、サービス状態確認契機情報1000のユーザID601に処理対象のユーザの識別子が登録され、かつ、適用サービス一覧602に当該ユーザが加入するサービスの識別子が登録されたエントリ(処理対象のエントリ)の状態確認契機603に並列が登録されているか否かを判定する(1102)。   Next, the route setting unit 341 includes an entry in which the identifier of the user to be processed is registered in the user ID 601 of the service status confirmation trigger information 1000 and the identifier of the service to which the user subscribes is registered in the applicable service list 602 ( It is determined whether or not parallel is registered in the status confirmation trigger 603 of the entry to be processed (1102).

ステップ1102の処理で、サービス状態確認契機情報1000の処理対象のエントリの状態確認契機603に並列が登録されていると判定された場合(1102:Yes)、経路設定部341は、処理対象のユーザが加入する全てのサービスを提供する各サービスファンクション200の利用可否を示す情報を並列して取得し(1103)、利用可否取得処理を終了する。   When it is determined in step 1102 that parallel is registered in the status confirmation trigger 603 of the entry to be processed in the service status confirmation trigger information 1000 (1102: Yes), the route setting unit 341 determines that the user to be processed The information indicating the availability of each service function 200 that provides all services subscribed to is acquired in parallel (1103), and the availability acquisition process is terminated.

一方、ステップ1102の処理で、サービス状態確認契機情報1000の処理対象のエントリの状態確認契機603に並列が登録されていないと判定された場合(1102:No)、すなわち、当該状態確認契機603に逐次が登録されている場合、経路設定部341は、サービス状態確認契機情報1000の処理対象のエントリの順序リストポインタ604に登録されたポインタが示す順序リスト1001の先頭エントリ1011を参照する(1104)。   On the other hand, if it is determined in step 1102 that parallel is not registered in the status confirmation trigger 603 of the entry to be processed in the service status confirmation trigger information 1000 (1102: No), that is, the status confirmation trigger 603 When sequential is registered, the path setting unit 341 refers to the first entry 1011 of the order list 1001 indicated by the pointer registered in the order list pointer 604 of the entry to be processed in the service status confirmation trigger information 1000 (1104). .

次に、経路設定部341は、当該順序リスト1001の末尾のエントリ1011までステップ1105〜1108の処理を繰り返し実行する。   Next, the path setting unit 341 repeatedly executes the processing of steps 1105 to 1108 up to the last entry 1011 of the order list 1001.

まず、経路設定部341は、参照したエントリ1011が示す利用可否を示す情報を取得するサービスを提供するサービスファンクション200の利用可否を示す情報を取得する(1105)。   First, the route setting unit 341 acquires information indicating availability of the service function 200 that provides a service for acquiring information indicating availability of the entry 1011 referred to (1105).

次に、経路設定部341は、ステップ1105の処理で取得したサービスファンクション200が利用可能であるか否かを判定する(1106)。   Next, the path setting unit 341 determines whether or not the service function 200 acquired in the process of Step 1105 is available (1106).

ステップ1106の処理でサービスファンクション200が利用可能であると判定された場合(1106:Yes)、経路設定部341は、正常時の次エントリのポインタが示す次のエントリ1011を参照し(1107)、ステップ1105の処理に戻る。一方、ステップ1106の処理でサービスファンクション200が利用可能でないと判定された場合(1106:No)、経路設定部341は、異常時の次エントリのポインタが示す次のエントリ1011を参照し(1108)、ステップ1105の処理に戻る。   When it is determined in step 1106 that the service function 200 can be used (1106: Yes), the path setting unit 341 refers to the next entry 1011 indicated by the pointer of the next entry at normal time (1107), The processing returns to step 1105. On the other hand, when it is determined in step 1106 that the service function 200 cannot be used (1106: No), the path setting unit 341 refers to the next entry 1011 indicated by the pointer of the next entry at the time of abnormality (1108). The process returns to step 1105.

なお、ステップ1107又は1108の処理で、正常時の次エントリのポインタが「なし」である場合、又は異常時の次エントリのポインタが「なし」である場合、経路設定部341は、順序リスト1001の末尾のエントリ1011までステップ1105〜1108の処理が実行されたと判断し、利用可否取得処理を終了する。   Note that, in the processing of step 1107 or 1108, when the pointer of the next entry at normal time is “none”, or when the pointer of the next entry at abnormal time is “none”, the path setting unit 341 displays the order list 1001. It is determined that the processing in steps 1105 to 1108 has been executed up to the entry 1011 at the end of, and the availability acquisition processing is terminated.

ユーザ端末10がネットワークに接続する場合の当該ユーザ端末10の経路設定処理のシーケンスを図12を用いて説明する。図12は、本実施例のユーザ端末10がネットワークに接続する場合の経路設定処理のシーケンス図である。   A sequence of route setting processing of the user terminal 10 when the user terminal 10 is connected to the network will be described with reference to FIG. FIG. 12 is a sequence diagram of the route setting process when the user terminal 10 of this embodiment connects to the network.

ユーザ端末10のユーザは、サービスファンクション200Aが提供するサービスA、及びサービスファンクション200Dが提供するサービスDに予め契約しており、サービスファンクション200A及び200Dは、ユーザ端末10の認証に必要な情報(例えば、ユーザID、及びパスワード等)を保持しているものとする。   The user of the user terminal 10 has contracted in advance with the service A provided by the service function 200A and the service D provided by the service function 200D, and the service functions 200A and 200D have information necessary for authentication of the user terminal 10 (for example, , User ID, password, etc.).

まず、ユーザ端末10は、ネットワーク(例えば、インターネット40)に接続する場合、認証要求をコントローラ300に送信する(1201)。認証要求は、例えば、ユーザID及びパスワードを含むものとする。   First, when connecting to a network (for example, the Internet 40), the user terminal 10 transmits an authentication request to the controller 300 (1201). The authentication request includes, for example, a user ID and a password.

コントローラ300は、ユーザ端末10から認証要求を認証すると、ネットワークに接続するための認証処理を実行し、サービス状態確認手順情報312を参照して、受信した認証要求をサービスファンクション200A及び200Dに送信する(1202)。図6に示すように、サービスA及びDの状態確認契機603には、並列が登録されているので、ステップ1202の処理では、コントローラ300は、いずれかのサービスファンクション200の利用可否を示す情報の取得を待たずに、サービスファンクション200A及び200Dに認証要求を送信する。   When authenticating the authentication request from the user terminal 10, the controller 300 executes an authentication process for connecting to the network, refers to the service status confirmation procedure information 312, and transmits the received authentication request to the service functions 200A and 200D. (1202). As shown in FIG. 6, since parallel is registered in the status confirmation triggers 603 of services A and D, in the processing of step 1202, the controller 300 stores information indicating whether or not one of the service functions 200 can be used. Without waiting for acquisition, an authentication request is transmitted to the service functions 200A and 200D.

なお、コントローラ300で実行される認証処理は、ユーザ端末10にIPアドレスを割り当てる等のネットワークに接続するための認証処理であり、ユーザ端末10のサービスファンクション200A及び200Dに対する認証処理を含まない。   The authentication process executed by the controller 300 is an authentication process for connecting to a network such as assigning an IP address to the user terminal 10, and does not include an authentication process for the service functions 200A and 200D of the user terminal 10.

サービスファンクション200A及び200Dは、コントローラ300から認証要求を受信した場合、ユーザ端末10の認証処理を実行し、認証結果を応答としてコントローラ300に送信する(1203A及び1203B)。   When the service functions 200A and 200D receive an authentication request from the controller 300, the service functions 200A and 200D execute an authentication process of the user terminal 10 and transmit an authentication result as a response to the controller 300 (1203A and 1203B).

コントローラ300は、サービスファンクション200A及び200Dから認証結果を受信し、受信した認証結果に基づいてサービス状態管理情報311を更新する(1204)。ユーザ端末10がネットワークに接続する場合には、コントローラ300は、サービスファンクション200からの認証結果を利用可否を示す情報として取得する。   The controller 300 receives the authentication result from the service functions 200A and 200D, and updates the service state management information 311 based on the received authentication result (1204). When the user terminal 10 is connected to the network, the controller 300 acquires the authentication result from the service function 200 as information indicating availability.

次に、コントローラ300は、ステップ1202処理の認証処理が成功した場合、認証要求を送信したユーザ端末10にIPアドレスを認証要求の応答として送信し、当該ユーザ端末10にIPアドレスを割り当てる(1205)。なお、ステップ1202の処理の認証処理が失敗した場合、コントローラ300は、その旨を認証要求の応答としてユーザ端末10に送信する。   Next, when the authentication processing in step 1202 is successful, the controller 300 transmits an IP address as a response to the authentication request to the user terminal 10 that has transmitted the authentication request, and assigns the IP address to the user terminal 10 (1205). . If the authentication process of step 1202 fails, the controller 300 transmits a message to that effect to the user terminal 10 as a response to the authentication request.

また、コントローラ300は、ユーザ端末10の認証が成功したサービスファンクション200に、ステップ1205の処理でユーザ端末10に割り当てたIPアドレスをユーザ識別情報として通知する(1206)。ユーザ識別情報は、サービスファンクション200がユーザ端末10のパケットを識別して、サービスを提供するために用いられる。例えば、DPI(Deep Packet Inspection)を提供するサービスファンクションには、ユーザのIPアドレス及びポート番号等の5タプルの情報がユーザ識別情報として通知される。ユーザ識別情報は、サービスファンクション200の形態によって異なるので、これに限定されない。   In addition, the controller 300 notifies the service function 200 that has successfully authenticated the user terminal 10 of the IP address assigned to the user terminal 10 in step 1205 as user identification information (1206). The user identification information is used by the service function 200 to identify the packet of the user terminal 10 and provide a service. For example, a service function that provides DPI (Deep Packet Inspection) is notified of 5-tuple information such as the user's IP address and port number as user identification information. The user identification information differs depending on the form of the service function 200, and is not limited to this.

次に、コントローラ300は、ユーザ端末10のユーザのユーザID、及びステップ1204の処理で取得したサービスファンクション200の利用可否を示す情報を検索キーとして、サービス経路リスト313を検索し、検索キーと一致するエントリのサービス経路情報703に登録された経路情報が示す経路を、当該ユーザ端末10に適用する経路として決定し、当該経路情報をフォワーダ及びクラシファイア100に設定する(1207)。   Next, the controller 300 searches the service route list 313 using the user ID of the user of the user terminal 10 and information indicating whether or not the service function 200 is obtained in the process of step 1204 as a search key, and matches the search key. The route indicated by the route information registered in the service route information 703 of the entry to be entered is determined as a route to be applied to the user terminal 10, and the route information is set in the forwarder and classifier 100 (1207).

以上によって、サービスファンクション200の管理者とコア網30内で適用される経路の管理者とが異なり、コントローラ300とサービスファンクション200とで認証処理が実行される場合であっても、サービスファンクション200の認証結果を反映した経路を適用できる。例えば、ユーザ端末10が契約違反等の理由によってサービスファンクション200Aでの認証が失敗して、サービスファンクション200Aを利用できない場合、コントローラ300は、サービスファンクション200Aを経由せず、サービスファンクション200Dのみを経由する経路を適用する。   As described above, even when the administrator of the service function 200 and the administrator of the route applied in the core network 30 are different and the authentication process is executed between the controller 300 and the service function 200, the service function 200 A route reflecting the authentication result can be applied. For example, when the user terminal 10 fails to authenticate with the service function 200A due to a contract violation or the like and cannot use the service function 200A, the controller 300 does not pass through the service function 200A but passes only through the service function 200D. Apply the route.

なお、図12では、ユーザ端末10のネットワークに接続するための認証処理、及びIPアドレスをユーザ端末10に割り当てる処理をコントローラ300が実行する例について説明したが、例えば外部の図示しない認証サーバが実行してもよいし、クラシファイア100が実行してもよい。この場合、認証サーバ又はクラシファイア100は、認証結果をコントローラ300に通知する必要がある。   In FIG. 12, the example in which the controller 300 executes the authentication process for connecting the user terminal 10 to the network and the process of assigning the IP address to the user terminal 10 has been described. Alternatively, the classifier 100 may execute. In this case, the authentication server or classifier 100 needs to notify the controller 300 of the authentication result.

また、コントローラ300は、ステップ1205の処理でIPアドレスをユーザ端末10に送信したが、例えばプレフィックスの情報をユーザ端末10に送信してもよい。   In addition, the controller 300 transmits the IP address to the user terminal 10 in the process of step 1205. However, for example, the prefix information may be transmitted to the user terminal 10.

また、ステップ1002、1003A、及び1003Bの処理における認証処理では、RADIUS(Remote Authentication Dial In User Service)又はDIAMETERなどの認証機能を有する汎用的なプロトコルを用いてもよい。   In the authentication processing in the processing of steps 1002, 1003A, and 1003B, a general-purpose protocol having an authentication function such as RADIUS (Remote Authentication Dial In User Service) or DIAMETER may be used.

また、ステップ1206の処理では、ユーザ端末10に割り当てたIPアドレスをサービスファンクション200に通知するが、例えば、サービスファンクション200がプレフィックスの情報を用いてパケットを識別し、ユーザ端末10に予めプレフィックスの情報が割り当てられている場合、コントローラ300は、ステップ1205の処理の前にプレフィックスの情報をサービスファンクション200に通知してもよい。   In the process of step 1206, the IP address assigned to the user terminal 10 is notified to the service function 200. For example, the service function 200 identifies the packet using the prefix information and informs the user terminal 10 in advance of the prefix information. Is assigned, the controller 300 may notify the service function 200 of the prefix information before the processing of step 1205.

また、ステップ1205の処理で、コントローラ300は、IPアドレスをユーザ端末10に送信するが、ステップ1202の処理で認証処理が成功してすぐに、IPアドレスをユーザ端末10に送信してもよい。   In the process of step 1205, the controller 300 transmits the IP address to the user terminal 10. However, the controller 300 may transmit the IP address to the user terminal 10 as soon as the authentication process is successful in the process of step 1202.

図12に示す処理で適用される経路の例について図13及び図14を用いて説明する。図13は、本実施例のサービスファンクション200A及び200Dがともに利用できる場合に適用される経路の説明図である。   Examples of routes applied in the process shown in FIG. 12 will be described with reference to FIGS. FIG. 13 is an explanatory diagram of routes applied when the service functions 200A and 200D of the present embodiment can be used together.

サービスファンクション200A及び200Dでユーザ端末10の認証が成功した場合、ユーザ端末10はサービスファンクション200A及び200Dを利用できる。このため、コントローラ300は、図13に示すように、サービスファンクション200A及び200Dを経由する経路を、ユーザ端末10と宛先装置90との間に適用する。   When the user terminal 10 is successfully authenticated by the service functions 200A and 200D, the user terminal 10 can use the service functions 200A and 200D. For this reason, the controller 300 applies a route passing through the service functions 200A and 200D between the user terminal 10 and the destination device 90 as shown in FIG.

図14は、本実施例の一方のサービスファンクション200Aが利用できない場合に適用される経路の説明図である。   FIG. 14 is an explanatory diagram of a route applied when one of the service functions 200A according to the present embodiment cannot be used.

サービスファンクション200Dのみでユーザ端末10の認証が成功し、サービスファンクション200Aでユーザ端末10の認証が失敗した場合、ユーザ端末10はサービスファンクション200Aを利用できない。このため、コントローラ300は、図14に示すように、サービスファンクション200Aを経由せず、サービスファンクション200Dを経由する経路を、ユーザ端末10と宛先装置90との間に適用する。   When the authentication of the user terminal 10 succeeds only with the service function 200D and the authentication of the user terminal 10 fails with the service function 200A, the user terminal 10 cannot use the service function 200A. For this reason, as shown in FIG. 14, the controller 300 applies a route that passes through the service function 200 </ b> D without passing through the service function 200 </ b> A between the user terminal 10 and the destination device 90.

また、サービスファンクション200Aで認証が失敗した場合、サービスファンクション200A及び200Dの両方を経由しない経路を適用する場合、サービス経路リスト313の条件702に、サービスファンクション200Aが提供するサービスAが利用できない旨の条件を登録し、サービス経路情報703に、サービスファンクション200A及び200Dを経由しない経路に関する情報を登録したエントリをサービス経路リスト313に登録すればよい。これによって、例えば、サービスファンクション200Aでパケットに付加したメタデータに対してサービスファンクション200Dが処理を実行する場合等のサービスファンクション200Dがサービスファンクション200Aに従属している場合において、サービスファンクション200Aが利用できず、メタデータを付加できないことが原因で、サービスファンクション200Dが処理を正常に実行できなくなり、パケットが不通となることを防止できる。   In addition, when authentication fails in the service function 200A, when a route that does not pass through both the service functions 200A and 200D is applied, the service A provided by the service function 200A cannot be used in the condition 702 of the service route list 313. It is only necessary to register the conditions in the service route list 313 and register entries in the service route information 703 in which information related to routes that do not pass through the service functions 200A and 200D is registered. Accordingly, for example, when the service function 200D is subordinate to the service function 200A, such as when the service function 200D executes processing on the metadata added to the packet by the service function 200A, the service function 200A can be used. Therefore, it is possible to prevent the service function 200D from executing the process normally and the packet from being interrupted due to the inability to add metadata.

図15は、本実施例のサービスファンクション200の利用可否を示す情報を逐次的に取得する場合の経路設定処理のシーケンス図である。なお、図15では、図12に示す処理と同じ処理は、同じ符号を付与し、説明を省略する。   FIG. 15 is a sequence diagram of the route setting process when information indicating whether or not the service function 200 of this embodiment is available is sequentially acquired. In FIG. 15, the same processes as those shown in FIG.

図6に示すように、サービスA、サービスB及びサービスCの状態確認契機603には、逐次が登録されている。さらに順序リスト1001−2を参照するに、サービスBを提供するサービスファンクション200Bの利用可否を示す情報は、サービスAを提供するサービスファンクション200Aが利用できる場合にのみ取得され、サービスCを提供するサービスファンクション200Cの利用可否を示す情報は、サービスファンクション200Aが利用できない場合であっても、サービスファンクション200Bが利用できない場合であっても取得される。すなわち、サービスファンクション200Bがサービスファンクション200Aの従属サービスファンクションである。   As shown in FIG. 6, sequential is registered in the status confirmation trigger 603 of service A, service B, and service C. Further, referring to the order list 1001-2, the information indicating whether or not the service function 200B that provides the service B can be used is acquired only when the service function 200A that provides the service A can be used, and the service that provides the service C. Information indicating whether or not the function 200C can be used is acquired even when the service function 200A cannot be used or the service function 200B cannot be used. That is, the service function 200B is a subordinate service function of the service function 200A.

なお、ユーザ端末10のユーザの識別子は「3」であり、当該ユーザの加入するサービスはサービスA、サービスB、及びサービスCであるものとする。   It is assumed that the user identifier of the user terminal 10 is “3”, and the services that the user subscribes to are service A, service B, and service C.

ステップ1202Aの処理では、コントローラ300は、ユーザ端末10から接続要求を受信すると、ユーザ端末10がネットワークに接続するための認証処理を実行して、サービス状態確認手順情報312のサービス状態確認契機情報1000を参照する。サービス状態確認契機情報1000のユーザID601に「3」が登録され、適用サービス一覧602にサービスA、サービスB、及びサービスCが登録されたエントリの状態確認契機603に逐次が登録されているので、コントローラ300は、当該エントリの順序リストポインタ604に登録されたポインタが示す順序リスト1001−2の先頭エントリ1011−3を参照する。先頭エントリ1011−3には状態確認をするサービスとしてサービスAが登録されているので、コントローラ300は、サービスAを提供するサービスファンクション200Aに接続要求を送信する。   In the process of step 1202A, when the controller 300 receives a connection request from the user terminal 10, the controller 300 executes an authentication process for the user terminal 10 to connect to the network, and the service status confirmation trigger information 1000 of the service status confirmation procedure information 312. Refer to Since “3” is registered in the user ID 601 of the service status confirmation trigger information 1000 and the status confirmation trigger 603 of the entry in which the service A, service B, and service C are registered in the application service list 602 is sequentially registered. The controller 300 refers to the first entry 1011-3 of the order list 1001-2 indicated by the pointer registered in the order list pointer 604 of the entry. Since the service A is registered as a service for checking the status in the first entry 1011-3, the controller 300 transmits a connection request to the service function 200A that provides the service A.

ステップ1203Aの処理では、サービスファンクション200Aは、接続要求を受信すると、認証処理を実行し、認証処理の結果をコントローラ300に送信する。ここでは、サービスファンクション200Aの認証処理の結果は、認証に失敗したことを示すものとする。   In the process of step 1203A, when the service function 200A receives the connection request, the service function 200A executes the authentication process and transmits the result of the authentication process to the controller 300. Here, it is assumed that the authentication processing result of the service function 200A indicates that the authentication has failed.

コントローラ300は、サービスファンクション200Aから認証が失敗したことを示す認証結果を受信すると、順序リスト1001−2のエントリ1011−3の異常時の次エントリにはエントリ1011−5を示すポインタが登録されているので、エントリ1011−5を参照する。エントリ1011−5にには、状態確認をするサービスとしてサービスCが登録されているので、ステップ1202Bの処理で、コントローラ300は、サービスCを提供するサービスファンクション200Cに接続要求を送信する。   When the controller 300 receives the authentication result indicating that the authentication has failed from the service function 200A, the pointer indicating the entry 1011-5 is registered in the next entry when the entry 1011-3 of the order list 1001-2 is abnormal. Therefore, the entry 1011-5 is referred to. Since the service C is registered as a service for checking the status in the entry 1011-5, the controller 300 transmits a connection request to the service function 200C that provides the service C in the processing of step 1202B.

ステップ1203Bの処理では、サービスファンクション200Cは、接続要求を受信すると、認証処理を実行し、認証処理の結果をコントローラ300に送信する。なお、サービスファンクション200Cの認証は成功したものとする。   In the process of step 1203B, when the service function 200C receives the connection request, the service function 200C executes the authentication process and transmits the result of the authentication process to the controller 300. It is assumed that the service function 200C has been successfully authenticated.

コントローラ300は、サービスファンクション200Cから認証が成功したことを示す認証結果を受信すると、順序リスト1001−2のエントリ1011−5の正常時の次エントリには「なし」が登録されているので、コントローラ300は、順序リスト1001−2の末尾のエントリに到達したと判断して、ステップ1204の処理に進み、サービス状態管理情報311を更新する。   When the controller 300 receives the authentication result indicating that the authentication is successful from the service function 200C, “None” is registered in the next entry when the entry 1011-5 of the order list 1001-2 is normal. 300 determines that the entry at the end of the order list 1001-2 has been reached, proceeds to the processing of step 1204, and updates the service status management information 311.

ステップ1205〜1207の処理は、図12と同じであるので、説明を省略する。   The processing in steps 1205 to 1207 is the same as that in FIG.

以上によって、サービスファンクション200Bが、サービスファンクション200Aによって処理が実行されたパケットに対して処理を実行するような場合、サービスファンクション200Aが利用できない場合、コントローラ300は、サービスファンクション200Bの利用可否を示す情報を取得しないので、コントローラ300及びサービスファンクション200Bの処理負荷を軽減できる。   As described above, when the service function 200B executes processing on a packet processed by the service function 200A, when the service function 200A cannot be used, the controller 300 indicates information indicating whether the service function 200B can be used. Therefore, the processing load on the controller 300 and the service function 200B can be reduced.

図15に示す経路設定処理で設定される経路について図16を用いて説明する。図16は、本実施例の従属サービスファンクション200Bが従属するサービスファンクション200Aが利用できず、いずれのサービスファンクション200にも従属しないサービスファンクション200Cが利用できる場合に設定される経路の説明図である。   The route set by the route setting process shown in FIG. 15 will be described with reference to FIG. FIG. 16 is an explanatory diagram of paths that are set when the service function 200A to which the subordinate service function 200B of the present embodiment is subordinate cannot be used and the service function 200C that is not subordinate to any service function 200 can be used.

図15で説明したように、コントローラ300は、サービスファンクション200Aが利用できない場合、サービスファンクション200Bの利用可否を示す情報を取得しない。これは、サービスファンクション200Bの処理の実行には、サービスファンクション200Aで処理が実行済みであることが条件となるからであり、サービスファンクション200Aが利用できないのであれば、サービスファンクション200Bの利用可否を示す情報の取得は不要であるためである。   As described with reference to FIG. 15, when the service function 200A cannot be used, the controller 300 does not acquire information indicating whether the service function 200B can be used. This is because the processing of the service function 200B requires that the processing has been executed by the service function 200A. If the service function 200A cannot be used, it indicates whether the service function 200B can be used. This is because it is not necessary to acquire information.

このため、コントローラ300は、サービスファンクション200Aが利用できない場合、ユーザが加入するサービスファンクション200Cのみを経由する経路をユーザ端末10と宛先装置90との間に適用する。   For this reason, when the service function 200A cannot be used, the controller 300 applies a route that passes only through the service function 200C to which the user subscribes between the user terminal 10 and the destination device 90.

なお、サービス経路リスト313のユーザID「3」は、条件702にサービスファンクション200Aが提供するサービスが利用できない旨の条件が登録され、サービス経路情報703にはサービスファンクション200Cのみを経由する経路に関する情報が登録されるエントリを含む。   For the user ID “3” in the service route list 313, a condition that the service provided by the service function 200A cannot be used is registered in the condition 702, and information on a route that passes only through the service function 200C is registered in the service route information 703. Contains entries to be registered.

これによって、サービスファンクション200Aの処理を前提とするサービスファンクション200Bに、サービスファンクション200Aで処理が実行されないパケットが流入して、パケットが不通となること等を防止できる。   As a result, it is possible to prevent a packet that is not processed by the service function 200A from flowing into the service function 200B that is premised on the processing of the service function 200A, thereby preventing the packet from being disconnected.

次に、ユーザが加入するサービスを追加又は削除した場合の経路設定処理について図17〜図20を用いて説明する。まず、図17及び図18を用いてユーザが加入するサービスを削除する場合の経路設定処理について説明する。   Next, route setting processing when a service to which a user subscribes is added or deleted will be described with reference to FIGS. First, a route setting process when deleting a service to which a user subscribes will be described with reference to FIGS. 17 and 18.

図17は、本実施例のユーザが加入するサービスを削除する場合の経路設定処理のシーケンス図である。   FIG. 17 is a sequence diagram of route setting processing when a service subscribed to by the user of this embodiment is deleted.

図17では、サービスA、サービスB、及びサービスCに加入するユーザ(ユーザID「3」)がサービスAを削除する場合の処理を例に説明する。   FIG. 17 illustrates an example of processing when a user (user ID “3”) who subscribes to service A, service B, and service C deletes service A.

まず、ユーザID(「3」)のユーザが使用するユーザ端末10は、サービスAを削除する入力を受け付けると、その旨を示す削除通知をコントローラ300に送信する(1701)。   First, when the user terminal 10 used by the user with the user ID (“3”) receives an input for deleting the service A, the user terminal 10 transmits a deletion notification indicating that to the controller 300 (1701).

コントローラ300は、受信した削除通知に基づいて、ユーザデータベース321、サービス状態管理情報311、サービス状態確認手順情報312、及びサービス経路リスト313を更新する削除時各種情報更新処理を実行する(1702)。削除時各種情報更新処理の詳細は図18で説明する。   Based on the received deletion notification, the controller 300 executes various information update processing at the time of deletion for updating the user database 321, the service state management information 311, the service state confirmation procedure information 312 and the service route list 313 (1702). Details of the various information update processing at the time of deletion will be described with reference to FIG.

サービスAにはサービスBが従属するので、サービスAの削除に伴い、サービスBも削除される必要がある。このため、コントローラ300は、サービスAを提供するサービスファンクション200A及びサービスBを提供するサービスファンクション200Bに切断通知を送信する(1703)。   Since service B is subordinate to service A, service B needs to be deleted as service A is deleted. Therefore, the controller 300 transmits a disconnection notification to the service function 200A that provides the service A and the service function 200B that provides the service B (1703).

サービスファンクション200Aは、削除通知を受信すると、受信した削除通知に基づいて応答処理を実行し、受信した削除通知に対する応答を送信する(1704A)。サービスファンクション200Bも、同様に、受信した削除通知に基づいて応答処理を実行し、受信した削除通知に対する応答を送信する(1704B)。   Upon receiving the deletion notification, the service function 200A executes a response process based on the received deletion notification and transmits a response to the received deletion notification (1704A). Similarly, the service function 200B executes a response process based on the received deletion notification and transmits a response to the received deletion notification (1704B).

コントローラ300は、ステップ1702の処理で更新されたサービス状態管理情報311及びサービス経路リスト313に基づいて、経路を決定し、当該経路情報をフォワーダ及びクラシファイア100に設定する(1705)。   The controller 300 determines a route based on the service state management information 311 and the service route list 313 updated in the processing of Step 1702, and sets the route information in the forwarder and classifier 100 (1705).

図18は、本実施例の削除時各種情報更新処理のフローチャートである。   FIG. 18 is a flowchart of various information update processing at the time of deletion according to this embodiment.

まず、コントローラ300は、図示しない従属テーブルを参照し、受信した削除通知が示す削除するサービス(削除指示サービス)に従属する従属サービスが存在するか否かを判定する(1801)。従属テーブルには、サービス間の従属関係が登録され、例えば、サービスBはサービスAに従属することが登録される。   First, the controller 300 refers to a dependency table (not shown) and determines whether there is a dependency service subordinate to the service to be deleted (deletion instruction service) indicated by the received deletion notification (1801). In the dependency table, a dependency relationship between services is registered. For example, service B is registered to be dependent on service A.

ステップ1801の処理で、削除指示サービスに従属する従属サービスが存在すると判定された場合(1801:YES)、コントローラ300は、削除するサービス(削除サービス)を、削除指示サービス及び従属サービスに設定し(1802)、ステップ1804の処理に進む。   If it is determined in step 1801 that there is a dependent service subordinate to the deletion instruction service (1801: YES), the controller 300 sets the deletion instruction service and the subordinate service as the deletion instruction service (deletion service) ( 1802), the process proceeds to step 1804.

一方、ステップ1801の処理で、削除指示サービスに従属する従属サービスが存在しないと判定された場合(1801:NO)、コントローラ300は、削除サービスを削除指示サービスに設定し(1803)、ステップ1804の処理に進む。   On the other hand, if it is determined in step 1801 that there is no dependent service subordinate to the deletion instruction service (1801: NO), the controller 300 sets the deletion service as the deletion instruction service (1803), and the process of step 1804 Proceed to processing.

次に、コントローラ300は、ユーザデータベース321のユーザID401に、削除指示に含まれるユーザの識別子が登録されたエントリの加入サービス情報402から削除サービスの識別子を削除する(1804)。   Next, the controller 300 deletes the deletion service identifier from the subscription service information 402 of the entry in which the user identifier included in the deletion instruction is registered in the user ID 401 of the user database 321 (1804).

次に、コントローラ300は、サービス状態管理情報311のユーザID501に、削除指示に含まれるユーザの識別子が登録されたエントリのうち、削除サービスに対応するエントリの加入/未加入502に「未加入」を登録し、利用可否503に「不可」を登録する(1805)。   Next, the controller 300 “not subscribed” to the subscription / non-subscription 502 of the entry corresponding to the deletion service among the entries in which the user identifier included in the deletion instruction is registered in the user ID 501 of the service state management information 311. And “unavailable” is registered in the availability 503 (1805).

次に、コントローラ300は、サービス状態確認契機情報1000のユーザID601に、削除指示に含まれるユーザの識別子が登録されたエントリの適用サービス一覧602から削除サービスの識別子を削除する(1806)。   Next, the controller 300 deletes the identifier of the deletion service from the applied service list 602 of the entry in which the user identifier included in the deletion instruction is registered in the user ID 601 of the service status confirmation trigger information 1000 (1806).

次に、コントローラ300は、ステップ1806の処理で削除サービスの識別子が削除された後の適用サービス一覧602に登録されたサービスの識別子に従属関係となるサービスの識別子があるか否かを判定する(1807)。具体的には、コントローラ300は、従属テーブルに従属関係が登録されたサービスの識別子の組が当該適用サービス一覧602に登録されているか否かを判定する。   Next, the controller 300 determines whether or not there is a dependent service identifier in the service identifier registered in the applicable service list 602 after the deletion service identifier is deleted in the process of step 1806 ( 1807). Specifically, the controller 300 determines whether or not a set of service identifiers whose dependency relationship is registered in the dependency table is registered in the applicable service list 602.

ステップ1807の処理で、適用サービス一覧602に登録されたサービスの識別子に従属関係となるサービスの識別子がないと判定された場合(1807:NO)、当該適用サービス一覧602に登録されたサービスの識別子によって識別されるサービスを提供するサービスファンクション200の利用可否を示す情報は並列して取得可能であるので、コントローラ300は、サービス状態確認契機情報1000の当該エントリの状態確認契機603に「並列」を登録し、当該エントリの順序リストポインタ604に登録されたポインタが示す先頭エントリから始まる順序リスト1001を削除し、当該エントリの順序リストポインタ604に「なし」を登録する(1808)。   If it is determined in step 1807 that there is no dependent service identifier in the service identifier registered in the applicable service list 602 (1807: NO), the service identifier registered in the applicable service list 602 Since the information indicating the availability of the service function 200 that provides the service identified by can be acquired in parallel, the controller 300 sets “parallel” to the status confirmation trigger 603 of the entry in the service status confirmation trigger information 1000. The order list 1001 starting from the top entry indicated by the pointer registered in the order list pointer 604 of the entry is deleted, and “none” is registered in the order list pointer 604 of the entry (1808).

次に、コントローラ300は、図示しない経路テンプレートを参照し、サービス経路リスト313のユーザID701に削除通知に含まれるユーザの識別子が登録されたレコードに含まれるエントリを更新し(1809)、削除時各種情報更新処理を終了する。経路テンプレートには、ユーザが加入し得るサービスの全てのパターンに対する条件と経路情報とが登録されているものとする。ステップ1809の処理では、コントローラ300は、削除サービスを削除した後のユーザが加入するサービスに対する条件と経路情報とを経路テンプレートから取得し、サービス経路リスト313のレコードに含まれるエントリに取得した条件と経路情報とを登録する。   Next, the controller 300 refers to a route template (not shown) and updates the entry included in the record in which the user identifier included in the deletion notification is registered in the user ID 701 of the service route list 313 (1809). The information update process is terminated. It is assumed that conditions and route information for all patterns of services that a user can subscribe to are registered in the route template. In the processing of step 1809, the controller 300 acquires the condition and route information for the service to which the user subscribes after deleting the deleted service from the route template, and acquires the condition acquired in the entry included in the record of the service route list 313. Register route information.

一方、ステップ1807の処理で、適用サービス一覧602に登録されたサービスの識別子に従属関係となるサービスの識別子があると判定された場合(1807:YES)、当該適用サービス一覧602に登録されたサービスの識別子によって識別されるサービスを提供するサービスファンクション200の利用可否を示す情報は逐次的に取得される必要がある。このため、コントローラ300は、サービス状態確認契機情報1000の当該エントリの状態確認契機603に「逐次」を登録し、当該エントリの順序リストポインタ604に登録されたポインタが示す先頭エントリから始まる順序リスト1001に含まれるエントリのうち削除サービスに対応するエントリを削除し、当該順序リスト1001に含まれる残りのエントリの正常時の次エントリ及び異常時の次エントリを更新する(1810)。正常時の次エントリ及び異常時の次エントリの更新は、サービスの従属関係を考慮して、実行される。   On the other hand, if it is determined in step 1807 that the service identifier registered in the applicable service list 602 has a dependent service identifier (1807: YES), the service registered in the applicable service list 602 is determined. Information indicating whether or not the service function 200 that provides the service identified by the identifier is available needs to be acquired sequentially. Therefore, the controller 300 registers “sequential” in the status confirmation trigger 603 of the entry in the service status confirmation trigger information 1000 and starts from the first entry indicated by the pointer registered in the order list pointer 604 of the entry. The entry corresponding to the deletion service is deleted from the entries included in the list, and the next entry in the normal state and the next entry in the abnormal state of the remaining entries included in the order list 1001 are updated (1810). The update of the next entry in the normal state and the next entry in the abnormal state is executed in consideration of the service dependency.

次に、コントローラ300は、サービス状態確認契機情報1000のエントリの順序リストポインタ604に登録されたポインタが示す先頭エントリが削除されていれば、当該順序リストポインタ604に、ステップ1810の処理で更新された順序リスト1001の先頭エントリを示すポインタを登録し(1811)、ステップ1809の処理に進む。   Next, if the head entry indicated by the pointer registered in the order list pointer 604 of the entry of the service status confirmation trigger information 1000 is deleted, the controller 300 is updated to the order list pointer 604 by the process of step 1810. A pointer indicating the first entry of the ordered list 1001 is registered (1811), and the process proceeds to step 1809.

以上によって、ユーザの加入するサービスが削除された場合であっても、ユーザデータベース321、サービス状態管理情報311、サービス状態確認手順情報312、及びサービス経路リスト313が自動的に更新されるので、管理者が手動でこれらの情報を更新する場合に比べて管理者の手間を低減できる。   As described above, even when the service to which the user subscribes is deleted, the user database 321, the service status management information 311, the service status confirmation procedure information 312, and the service route list 313 are automatically updated. Compared with the case where an administrator manually updates such information, the labor of the administrator can be reduced.

なお、本実施例では、図17に示すステップ1702の処理でコントローラ300が削除時各種情報更新処理を実行して、ユーザデータベース321、サービス状態管理情報311、サービス状態確認手順情報312、及びサービス経路リスト313を更新するものとしたが、管理者がこれらの情報を手動で更新してもよい。   In this embodiment, the controller 300 executes various information update processing at the time of deletion in the processing of step 1702 shown in FIG. 17, and the user database 321, service status management information 311, service status check procedure information 312, and service route Although the list 313 is updated, the administrator may update the information manually.

図19は、本実施例のユーザが加入するサービスに新たなサービスを追加する場合の経路設定処理のシーケンス図である。   FIG. 19 is a sequence diagram of the route setting process when a new service is added to the service to which the user of this embodiment subscribes.

図19では、ユーザ(ユーザID「3」)がサービスCに加入しており、新たにサービスBに加入する場合の処理を例に説明する。   FIG. 19 illustrates an example of processing when a user (user ID “3”) subscribes to service C and newly subscribes to service B.

まず、ユーザID「3」のユーザが使用するユーザ端末10は、サービスBを新たに追加する入力を受け付けると、その旨を追加通知をコントローラ300に送信する(1901)。   First, when the user terminal 10 used by the user with the user ID “3” receives an input for newly adding the service B, the user terminal 10 transmits an addition notification to the controller 300 (1901).

コントローラ300は、受信した追加通知に基づいて、ユーザデータベース321、サービス状態管理情報311、サービス状態確認手順情報312、及びサービス経路リスト313を更新する追加時各種情報更新処理を実行する(1902)。追加時各種情報更新処理の詳細は図20で説明する。   Based on the received addition notification, the controller 300 executes various information update processes at the time of updating the user database 321, the service state management information 311, the service state confirmation procedure information 312 and the service route list 313 (1902). Details of the various information update processing at the time of addition will be described with reference to FIG.

サービスBはサービスAに従属するので、サービスBの追加に伴い、サービスAも追加される必要がある。このため、コントローラ300は、サービスAを提供するサービスファンクション200A及びサービスBを提供するサービスファンクション200Bに追加通知を送信する(1903)。   Since service B depends on service A, service A needs to be added as service B is added. Therefore, the controller 300 transmits an addition notification to the service function 200A that provides the service A and the service function 200B that provides the service B (1903).

サービスファンクション200Aは、追加通知を受信すると、受信した追加通知に基づいて応答処理を実行し、受信した追加通知に対する応答を送信する(1904A)。サービスファンクション200Bも、同様に、受信した追加通知に基づいて応答処理を実行し、受信した追加通知に対する応答を送信する(1904B)。   Upon receiving the additional notification, the service function 200A executes response processing based on the received additional notification and transmits a response to the received additional notification (1904A). Similarly, the service function 200B executes response processing based on the received additional notification and transmits a response to the received additional notification (1904B).

コントローラ300は、ステップ1902の処理で更新されたサービス状態管理情報311及びサービス経路リスト313に基づいて、経路を決定し、当該経路情報をフォワーダ及びクラシファイア100に設定する(1905)。   The controller 300 determines a route based on the service state management information 311 and the service route list 313 updated in the process of Step 1902, and sets the route information in the forwarder and classifier 100 (1905).

図20は、本実施例の削除時各種情報更新処理のフローチャートである。   FIG. 20 is a flowchart of various information update processing at the time of deletion according to this embodiment.

まず、コントローラ300は、図示しない従属テーブルを参照し、受信した追加通知が示す追加するサービス(追加指示サービス)が従属する被従属サービスが存在するか否かを判定する(2001)。   First, the controller 300 refers to a dependency table (not shown), and determines whether there is a dependent service to which the service to be added (addition instruction service) indicated by the received addition notification depends (2001).

ステップ2001の処理で、追加指示サービスが従属する被従属サービスが存在すると判定された場合(2001:YES)、コントローラ300は、ユーザデータベース321を参照し、新たにサービスを追加するユーザの加入済みサービスに当該被従属サービスが存在するか否かを判定する(2002)。具体的には、コントローラ300は、ユーザデータベース321のユーザID401に追加指示に含まれるユーザの識別子が登録されたエントリの加入サービス情報402に追加指示サービスの被従属サービスが登録されているか否かを判定する。   When it is determined in the process of step 2001 that there is a subordinate service to which the add instruction service depends (2001: YES), the controller 300 refers to the user database 321 and subscribes the service to the user who newly adds the service. It is determined whether or not the subordinate service exists (2002). Specifically, the controller 300 determines whether or not the dependent service of the add instruction service is registered in the subscription service information 402 of the entry in which the user identifier included in the add instruction is registered in the user ID 401 of the user database 321. judge.

ステップ2002の処理で、ユーザの加入済みサービスに追加指示サービスが従属する被従属サービスが存在すると判定された場合(2002:YES)、コントローラ300は、追加指示サービスを追加サービスに設定し(2003)、ステップ2005の処理に進む。また、ステップ2001の処理で、追加指示サービスが従属する被従属サービスが存在しないと判定された場合(2001:NO)、ステップ2003の処理で、追加指示サービスが追加サービスに設定される。   If it is determined in step 2002 that there is a dependent service to which the additional instruction service is subordinate to the user's subscribed service (2002: YES), the controller 300 sets the additional instruction service as an additional service (2003). The process proceeds to step 2005. If it is determined in step 2001 that there is no dependent service to which the additional instruction service depends (2001: NO), the additional instruction service is set as an additional service in step 2003.

一方、ステップ2002の処理で、ユーザの加入済みサービスに追加指示サービスが従属する被従属サービスが存在しないと判定された場合(2002:NO)、コントローラ300は、追加指示サービス及び被従属サービスを追加サービスに設定し、ステップ2005の処理に進む。   On the other hand, if it is determined in step 2002 that there is no dependent service to which the additional instruction service is subordinate to the user's subscribed service (2002: NO), the controller 300 adds the additional instruction service and the dependent service. The service is set, and the process proceeds to step 2005.

次に、コントローラ300は、ユーザデータベース321のユーザID401に、追加指示に含まれるユーザの識別子が登録されたエントリの加入サービス情報402に追加サービスの識別子を追加する(2005)。   Next, the controller 300 adds the identifier of the additional service to the subscription service information 402 of the entry in which the identifier of the user included in the addition instruction is registered in the user ID 401 of the user database 321 (2005).

次に、コントローラ300は、サービス状態管理情報311のユーザID501に、追加指示に含まれるユーザの識別子が登録されたエントリのうち、追加サービスに対応するエントリの加入/未加入502に「加入」を登録する(2006)。   Next, the controller 300 sets “subscription” to the subscription / non-subscription 502 of the entry corresponding to the additional service among the entries in which the user identifier included in the addition instruction is registered in the user ID 501 of the service state management information 311. Register (2006).

次に、コントローラ300は、サービス状態確認契機情報1000のユーザID601に、追加指示に含まれるユーザの識別子が登録されたエントリの適用サービス一覧602に追加サービスの識別子を追加する(2007)。   Next, the controller 300 adds the identifier of the additional service to the application service list 602 of the entry in which the identifier of the user included in the addition instruction is registered in the user ID 601 of the service status confirmation trigger information 1000 (2007).

次に、コントローラ300は、ステップ2007の処理で追加サービスの識別子が追加された後の適用サービス一覧602に登録されたサービスの識別子に従属関係となるサービスの識別子があるか否かを判定する(2008)。具体的な処理は、図18に示すステップ1807の処理と同じであるので説明を省略する。   Next, the controller 300 determines whether or not there is a dependent service identifier in the service identifier registered in the applied service list 602 after the additional service identifier is added in the process of step 2007 ( 2008). The specific processing is the same as the processing in step 1807 shown in FIG.

ステップ2008の処理で、適用サービス一覧602に登録されたサービスの識別子に従属関係となるサービスの識別子がないと判定された場合(2008:NO)、サービスが追加される前の適用サービス一覧602に従属関係となるサービスの識別子が登録されておらず、当該エントリの状態確認契機603に「並列」が登録され、順序リストポインタ604に「なし」が登録されているので、ステップ2009の処理に進む。   If it is determined in the process of step 2008 that there is no dependent service identifier in the service identifier registered in the applied service list 602 (2008: NO), the service is registered in the applied service list 602 before the service is added. Since the identifier of the dependent service is not registered, “Parallel” is registered in the status confirmation trigger 603 of the entry, and “None” is registered in the order list pointer 604, the process proceeds to Step 2009. .

ステップ2009の処理では、コントローラ300は、図示しない経路テンプレートを参照し、サービス経路リスト313のユーザID701に追加通知に含まれるユーザの識別子が登録されたレコードに含まれるエントリを更新し(2009)、追加時各種情報更新処理を終了する。なお、ステップ2009の処理の詳細は、図18に示すステップ1809の処理と同じであるので、説明を省略する。   In the process of step 2009, the controller 300 refers to a route template (not shown), updates the entry included in the record in which the user identifier included in the addition notification is registered in the user ID 701 of the service route list 313 (2009), The various information update processing at the time of addition ends. The details of the processing in step 2009 are the same as the processing in step 1809 shown in FIG.

一方、ステップ2008の処理で、適用サービス一覧602に登録されたサービスの識別子に従属関係となるサービスの識別子があると判定された場合(2008:YES)、当該適用サービス一覧602に登録されたサービスの識別子によって識別されるサービスを提供するサービスファンクション200の利用可否を示す情報は逐次的に取得される必要がある。このため、コントローラ300は、サービス状態確認契機情報1000の当該エントリの状態確認契機603に「逐次」を登録し、当該エントリの順序リストポインタ604に登録されたポインタが示す先頭エントリから始まる順序リスト1001に追加サービスのエントリを追加し、追加サービスのエントリに接続されるエントリの正常時の次エントリ及び異常時の次エントリを更新し(2010)、ステップ2009の処理に進む。例えば、追加サービスのエントリは、順序リスト1001の最後のエントリに接続されるように追加されるものとする。この場合、順序リスト1001の最後のエントリの正常時の次エントリ及び異常時の次エントリを、追加サービスのエントリに更新する。   On the other hand, if it is determined in step 2008 that the service identifier registered in the applicable service list 602 has a dependent service identifier (2008: YES), the service registered in the applicable service list 602 is registered. Information indicating whether or not the service function 200 that provides the service identified by the identifier is available needs to be acquired sequentially. Therefore, the controller 300 registers “sequential” in the status confirmation trigger 603 of the entry in the service status confirmation trigger information 1000 and starts from the first entry indicated by the pointer registered in the order list pointer 604 of the entry. The entry of the additional service is added to the entry, the next entry at the time of normality and the next entry at the time of abnormality of the entry connected to the entry of the additional service are updated (2010), and the process proceeds to step 2009. For example, it is assumed that the entry of the additional service is added so as to be connected to the last entry of the order list 1001. In this case, the next entry at the time of normality and the next entry at the time of abnormality of the last entry of the order list 1001 are updated to the entry of the additional service.

以上によって、ユーザの加入するサービスが追加された場合であっても、ユーザデータベース321、サービス状態管理情報311、サービス状態確認手順情報312、及びサービス経路リスト313が自動的に更新されるので、管理者が手動でこれらの情報を更新する場合に比べて管理者の手間を低減できる。   As described above, even when a service to which a user subscribes is added, the user database 321, the service state management information 311, the service state confirmation procedure information 312 and the service route list 313 are automatically updated. Compared with the case where an administrator manually updates such information, the labor of the administrator can be reduced.

図21は、本実施例のユーザ端末10のサービスファンクション200の利用量が閾値以上となった場合の経路設定処理のシーケンス図である。   FIG. 21 is a sequence diagram of the route setting process when the usage amount of the service function 200 of the user terminal 10 according to the present embodiment is equal to or greater than the threshold value.

図21では、サービスファンクション200Aが、ユーザID「3」のユーザ端末10の利用量が閾値以上である場合について説明する。例えば、利用量は、サービスファンクション200Aとユーザ端末10との間で通信したパケットの容量の合計であってもよいし、サービスファンクション200Aとユーザ端末10との間で通信したパケットの数等であってもよい。   FIG. 21 illustrates a case where the usage amount of the user terminal 10 having the user ID “3” is greater than or equal to the threshold value by the service function 200A. For example, the usage amount may be the total capacity of packets communicated between the service function 200A and the user terminal 10, or may be the number of packets communicated between the service function 200A and the user terminal 10. May be.

サービスファンクション200Aは、ユーザ端末10の利用量が閾値以上となったことを検出すると、切断通知をコントローラ300に送信する(2101)。切断通知は、利用量が閾値以上となったユーザ端末10のユーザの識別子と、サービスファンクション200Aが提供するサービスの識別子を含み、サービスファンクション200Aが提供するサービスをユーザ端末10が利用できないことを示す。   When the service function 200A detects that the usage amount of the user terminal 10 is equal to or greater than the threshold, the service function 200A transmits a disconnection notification to the controller 300 (2101). The disconnection notification includes the identifier of the user of the user terminal 10 whose usage amount has exceeded the threshold and the identifier of the service provided by the service function 200A, and indicates that the user terminal 10 cannot use the service provided by the service function 200A. .

コントローラ300は、切断通知を受信すると、受信した切断通知に基づいてサービス状態管理情報311の利用可否503を更新する(2102)。   When receiving the disconnection notification, the controller 300 updates the availability 503 of the service state management information 311 based on the received disconnection notification (2102).

具体的には、コントローラ300は、サービス状態確認手順情報312を参照し、受信した切断通知に含まれるサービスの識別子によって識別されるサービスに従属する従属サービスがあるか否かを判定する。従属サービスがある場合、コントローラ300は、サービス状態管理情報311のユーザID501に、切断通知に含まれるユーザの識別子が登録されたエントリの受信した切断通知に含まれるサービスの識別子に対応する利用可否503に「不可」を登録し、当該エントリの従属サービスの識別子に対応する利用可否503に「不可」を登録する。一方、従属サービスがない場合、コントローラ300は、サービス状態管理情報311のユーザID601に、切断通知に含まれるユーザの識別子が登録されたエントリの受信した切断通知に含まれるサービスの識別子に対応する利用可否503に「不可」を登録する。   Specifically, the controller 300 refers to the service status confirmation procedure information 312 and determines whether there is a dependent service subordinate to the service identified by the service identifier included in the received disconnection notification. When there is a dependent service, the controller 300 determines whether the service ID 503 of the service state management information 311 corresponds to the service identifier included in the received disconnection notification of the entry in which the user identifier included in the disconnection notification is registered. Is registered in the availability 503 corresponding to the subordinate service identifier of the entry. On the other hand, if there is no dependent service, the controller 300 uses the service ID included in the disconnection notification received in the entry in which the user ID 601 of the service state management information 311 is registered with the user identifier included in the disconnection notification. “Unavailable” is registered in the availability 503.

なお、サービスファンクション200Aが提供するサービスAにサービスファンクション200Bが提供するサービスBが従属するので、ユーザID「3」のサービスA及びサービスBの利用可否503に「不可」が登録される。   Since service B provided by service function 200B is subordinated to service A provided by service function 200A, “impossible” is registered in service A of user ID “3” and availability 503 of service B.

次に、コントローラ300は、受信した切断通知の応答処理を実行し、切断通知に対する応答をサービスファンクション200Aに送信する(2103)。   Next, the controller 300 executes response processing for the received disconnection notification, and transmits a response to the disconnection notification to the service function 200A (2103).

次に、コントローラ300は、ユーザ端末10のユーザのユーザID、及びステップ2102の処理で取得したサービスファンクション200の利用可否を示す情報を検索キーとして、サービス経路リスト313を検索し、検索キーと一致するエントリのサービス経路情報703に登録された経路情報が示す経路を、当該ユーザ端末10に適用する経路として決定し、当該経路情報をフォワーダ及びクラシファイア100に設定する(2104)。   Next, the controller 300 searches the service route list 313 using the user ID of the user of the user terminal 10 and the information indicating the availability of the service function 200 acquired in step 2102 as a search key, and matches the search key. The route indicated by the route information registered in the service route information 703 of the entry to be entered is determined as a route to be applied to the user terminal 10, and the route information is set in the forwarder and classifier 100 (2104).

なお、図21では、切断通知は、サービスファンクション200がユーザ端末の利用量が閾値以上となった場合に送信される例について説明したが、サービスファンクション200が異常を検出した場合に送信されてもよい。   In FIG. 21, the example in which the disconnection notification is transmitted when the service function 200 is used when the usage amount of the user terminal is equal to or greater than the threshold has been described, but the disconnection notification may be transmitted when the service function 200 detects an abnormality. Good.

以上によって、サービスファンクション200の管理者と経路の管理者とが異なる場合であっても、サービスファンクション200の利用量が閾値以上となったこと、又はサービスファンクション200で異常が発生したことを経路に反映することができる。   As described above, even when the administrator of the service function 200 is different from the administrator of the route, the route that the usage amount of the service function 200 is equal to or greater than the threshold value or an abnormality has occurred in the service function 200 Can be reflected.

なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることも可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除、及び置換をすることが可能である。   In addition, this invention is not limited to an above-described Example, Various modifications are included. For example, the above-described embodiments have been described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described. Further, a part of the configuration of a certain embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of a certain embodiment. Further, it is possible to add, delete, and replace other configurations for a part of the configuration of each embodiment.

また、各実施例の構成の一部について、他の構成の追加、削除、及び置換をすることが可能である。また、上記の各構成、機能、処理部、処理手段等は、それらの一部または全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。   Further, it is possible to add, delete, and replace other configurations for a part of the configuration of each embodiment. Each of the above-described configurations, functions, processing units, processing means, and the like may be realized by hardware by designing a part or all of them with, for example, an integrated circuit.

また、前記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。   In addition, each of the above-described configurations, functions, and the like may be realized by software by the processor interpreting and executing a program that realizes each function.

各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、IC(Integrated Circuit)カード、SDカード、DVD(Digital Versatile Disc)等の記録媒体に置くことができる。   Information such as programs, tables, and files that realize each function is stored in a memory, a hard disk, a recording device such as an SSD (Solid State Drive), an IC (Integrated Circuit) card, an SD card, a DVD (Digital Versatile Disc), etc. Can be placed on any recording medium.

また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。   Further, the control lines and information lines are those that are considered necessary for the explanation, and not all the control lines and information lines on the product are necessarily shown. Actually, it may be considered that almost all the components are connected to each other.

10 ユーザ端末
20 アクセス網
30 コア網
40 インターネット
90 宛先装置
100 加入者収容ルータ(クラシファイア)
110 制御カード
111 プロセッサ
112 メモリ
120 ラインカード
121 転送テーブル
122 サービス識別テーブル
123 転送エンジン
200 サービスファンクション
300 コントローラ(制御装置)
310 メモリ
311 サービス状態管理情報
312 サービス状態確認手順情報
313 サービス経路リスト
320 二次記憶装置
321 ユーザデータベース
340 プロセッサ
341 経路設定部
1000 サービス状態確認契機情報
DESCRIPTION OF SYMBOLS 10 User terminal 20 Access network 30 Core network 40 Internet 90 Destination apparatus 100 Subscriber accommodation router (classifier)
110 Control Card 111 Processor 112 Memory 120 Line Card 121 Transfer Table 122 Service Identification Table 123 Transfer Engine 200 Service Function 300 Controller (Control Device)
310 Memory 311 Service State Management Information 312 Service State Confirmation Procedure Information 313 Service Route List 320 Secondary Storage Device 321 User Database 340 Processor 341 Route Setting Unit 1000 Service State Confirmation Trigger Information

Claims (11)

サービスを提供する少なくとも一つのサービスファンクションと、前記少なくとも一つのサービスファンクションを制御する制御装置とを備えるネットワークシステムであって、
端末のデータは、前記端末のユーザが加入するサービスに応じたサービスファンクションを所定の順番で経由する経路に従って転送されることによって、前記ユーザが加入したサービスが当該ユーザの端末に提供され、
前記制御装置は、
前記ユーザが加入するサービスと、前記サービスを提供するサービスファンクションの利用可否を示す情報とが登録されたサービス状態管理情報を保持し、
前記サービスファンクションから利用可否を示す情報を取得し、
前記取得した利用可否を示す情報に基づいて、前記サービス状態管理情報を更新し、
前記サービス状態管理情報に基づいて、前記端末のユーザが加入するサービスを提供し、かつ前記端末が利用可能なサービスファンクションを前記端末のデータが経由するサービスファンクションの経路を決定し、
前記決定した経路に従って、前記端末のデータが転送されることを特徴とするネットワークシステム。
A network system comprising at least one service function for providing a service and a control device for controlling the at least one service function,
The data of the terminal is transferred according to a route that passes through a service function according to the service subscribed to by the user of the terminal in a predetermined order, whereby the service subscribed by the user is provided to the terminal of the user,
The controller is
The service that the user subscribes to, and information indicating whether or not the service function that provides the service can be used are stored in the service state management information.
Obtain information indicating availability from the service function,
Updating the service status management information based on the acquired information indicating availability;
Based on the service status management information, providing a service to which the user of the terminal subscribes, and determining a service function path through which the terminal data passes a service function available to the terminal,
A network system, wherein data of the terminal is transferred according to the determined route.
請求項1に記載のネットワークシステムであって、
前記制御装置が取得する前記サービスファンクションの利用可否を示す情報は、当該サービスファンクションによる前記端末の認証結果、前記端末の当該サービスファンクションの利用量が閾値以上となった場合に送信される切断通知の受信の有無、及び当該サービスファンクションが異常状態である場合に送信される異常通知の受信の有無の少なくとも一つを含むことを特徴とするネットワークシステム。
The network system according to claim 1,
Information indicating whether or not the service function can be acquired by the control device includes an authentication result of the terminal by the service function, and a disconnection notification transmitted when the usage amount of the service function of the terminal exceeds a threshold value. A network system comprising at least one of presence / absence of reception and presence / absence of reception of an abnormality notification transmitted when the service function is in an abnormal state.
請求項1に記載のネットワークシステムであって、
前記制御装置は、
前記サービス状態管理情報に基づいて、前記端末のユーザが加入するサービスを提供し、かつ前記端末が利用できないサービスファンクションを選択し、
前記端末のデータが前記選択したサービスファンクションを経由しない前記経路を決定することを特徴とするネットワークシステム。
The network system according to claim 1,
The controller is
Based on the service status management information, providing a service to which the user of the terminal subscribes, and selecting a service function that the terminal cannot use,
The network system according to claim 1, wherein the route in which the data of the terminal does not pass through the selected service function is determined.
請求項1に記載のネットワークシステムであって、
前記端末は、ネットワークに接続する場合、接続要求を送信し、
前記制御装置は、
前記接続要求を受信した場合、前記端末がネットワークに接続するための認証処理を実行し、
前記接続要求を送信した端末のユーザが加入するサービスを提供するサービスファンクションに、前記端末の認証要求を送信し、
前記サービスファンクションは、
前記制御装置から認証要求を受信した場合、前記端末の当該サービスファンクションの認証処理を実行し、
前記サービスファンクションの認証処理の認証結果を前記制御装置に送信し、
前記制御装置は、
前記認証処理の認証結果を前記サービスファンクションの利用可否を示す情報として取得して、前記サービス状態管理情報を更新し、
前記端末がネットワークに接続するための認証処理の認証結果が成功したことを示す場合、前記端末にIPアドレスを割り当て、
前記サービス状態管理情報に基づいて、前記端末のユーザが加入するサービスを提供し、かつ認証が成功したサービスファンクションを経由する前記経路を決定し、
前記端末に割り当てたIPアドレスを前記決定した経路上の前記サービスファンクションに通知することを特徴とするネットワークシステム。
The network system according to claim 1,
When the terminal is connected to the network, it sends a connection request,
The controller is
When the connection request is received, the terminal executes an authentication process for connecting to the network,
Sending the terminal authentication request to a service function that provides a service to which the user of the terminal that sent the connection request subscribes,
The service function is
When an authentication request is received from the control device, the authentication processing of the service function of the terminal is executed,
Sending the authentication result of the service function authentication process to the control device,
The controller is
Obtaining an authentication result of the authentication process as information indicating whether or not the service function can be used, and updating the service state management information;
When the authentication result of the authentication process for connecting the terminal to the network indicates success, an IP address is assigned to the terminal,
Based on the service status management information, providing a service to which the user of the terminal subscribes, and determining the path through a service function that has been successfully authenticated,
A network system, wherein the IP address assigned to the terminal is notified to the service function on the determined route.
請求項1に記載のネットワークシステムであって、
前記サービスファンクションは、前記端末による利用量が閾値以上となった場合、切断通知を前記制御装置に送信し、
前記制御装置は、
前記切断通知を受信した場合、前記受信した切断通知を送信したサービスファンクションを前記端末が利用できないこと示すように前記サービス状態管理情報を更新し、
前記サービス状態管理情報に基づいて、前記切断通知を送信したサービスファンクションを経由しないように前記経路を変更することを特徴とするネットワークシステム。
The network system according to claim 1,
The service function, when the usage amount by the terminal is equal to or greater than a threshold, sends a disconnection notification to the control device,
The controller is
When receiving the disconnection notification, update the service status management information to indicate that the terminal cannot use the service function that transmitted the received disconnection notification,
The network system, wherein the route is changed based on the service state management information so as not to go through the service function that has transmitted the disconnection notification.
請求項1に記載のネットワークシステムであって、
前記端末は、前記ユーザが加入するサービスに変更があった場合、変更後のサービスを通知するための加入サービス変更通知を送信し、
前記制御装置は、
前記加入サービス変更通知を受信した場合、新たに加入したサービスがあるか、削除したサービスがあるかを判定し、
前記新たに加入したサービスがある場合、当該サービスを提供するサービスファンクションの利用可否を示す情報を取得し、
前記新たに加入したサービスと、前記取得した利用可否を示す情報とを前記サービス状態管理情報に登録し、
前記削除したサービスがある場合、前記端末のユーザが当該サービスに加入していないことを示すように、前記サービス状態管理情報を更新し、
前記サービス状態管理情報に基づいて、前記端末の経路を変更することを特徴とするネットワークシステム。
The network system according to claim 1,
When there is a change in the service to which the user subscribes, the terminal transmits a subscription service change notification for notifying the changed service,
The controller is
When the subscription service change notification is received, it is determined whether there is a newly subscribed service or a deleted service,
If there is a newly subscribed service, obtain information indicating whether or not the service function that provides the service is available,
Registering the newly subscribed service and the acquired information indicating availability on the service status management information,
If there is the deleted service, update the service status management information to indicate that the user of the terminal does not subscribe to the service,
A network system, wherein the route of the terminal is changed based on the service state management information.
請求項1に記載のネットワークシステムであって、
前記制御装置が取得する前記サービスファンクションの利用可否を示す情報は、前記サービスファンクションによる前記端末の認証結果を含み、
前記制御装置は、
前記サービスファンクションの認証結果の取得順序が登録されたサービス状態確認手順情報を保持し、
前記サービス状態確認手順情報に基づいて、前記ユーザが加入するサービスを提供するサービスファンクションにおいて、前記認証結果の取得順序を決定し、
前記決定した取得順序に従って、前記サービスファンクションの認証結果を取得することを特徴とするネットワークシステム。
The network system according to claim 1,
Information indicating availability of the service function acquired by the control device includes an authentication result of the terminal by the service function,
The controller is
It holds service status confirmation procedure information in which the acquisition order of the authentication result of the service function is registered,
Based on the service status confirmation procedure information, in the service function that provides the service to which the user subscribes, determine the acquisition order of the authentication results;
A network system, wherein the authentication result of the service function is acquired according to the determined acquisition order.
請求項7に記載のネットワークシステムであって、
前記サービス状態確認手順情報には、前記サービスファンクションが、他のサービスファンクションの認証結果が成功したことを示す場合にのみ認証結果を取得する従属サービスファンクションであるか否かを示す情報が登録され、
前記制御装置は、
前記サービス状態確認手順情報に基づいて、前記ユーザが加入するサービスを提供するサービスファンクションに前記従属サービスファンクションが含まれるか否かを判定し、
前記ユーザが加入するサービスを提供するサービスファンクションに前記従属サービスファンクションが含まれる場合、前記他のサービスファンクションの認証結果を取得し、
前記取得した他のサービスファンクションの認証結果が成功したことを示す場合、前記従属サービスファンクションの認証結果を取得することを特徴とするネットワークシステム。
The network system according to claim 7,
In the service status confirmation procedure information, information indicating whether or not the service function is a subordinate service function that acquires an authentication result only when the authentication result of another service function indicates success is registered,
The controller is
Based on the service status confirmation procedure information, it is determined whether the dependent service function is included in a service function that provides a service to which the user subscribes,
If the dependent service function is included in a service function that provides a service to which the user subscribes, obtain an authentication result of the other service function;
The network system, wherein the authentication result of the subordinate service function is acquired when the acquired authentication result of the other service function indicates success.
請求項8に記載のネットワークシステムであって、
前記制御装置は、前記取得した他のサービスファンクションの認証結果が失敗したことを示す場合、当該他のサービスファンクション及び前記従属サービスファンクションを経由しない経路を設定することを特徴とするネットワークシステム。
The network system according to claim 8, wherein
The network system according to claim 1, wherein when the acquired authentication result of the other service function indicates failure, the control device sets a route that does not pass through the other service function and the dependent service function.
サービスを提供する少なくとも一つのサービスファンクションを制御する制御装置であって、
端末のデータは、前記端末のユーザが加入するサービスに応じたサービスファンクションを所定の順番で経由する経路に従って転送されることによって、前記ユーザが加入したサービスが当該ユーザの端末に提供され、
前記制御装置は、
前記ユーザが加入するサービスと、前記サービスを提供するサービスファンクションの利用可否を示す情報とが登録されたサービス状態管理情報を保持し、
前記サービスファンクションから利用可否を示す情報を取得し、
前記取得した利用可否を示す情報に基づいて、前記サービス状態管理情報を更新し、
前記サービス状態管理情報に基づいて、前記端末のユーザが加入するサービスを提供し、かつ前記端末が利用可能なサービスファンクションを前記端末のデータが経由するサービスファンクションの経路を決定し、
前記決定した経路に従って、前記端末のデータが転送されることを特徴とする制御装置。
A control device for controlling at least one service function for providing a service,
The data of the terminal is transferred according to a route that passes through a service function according to the service subscribed to by the user of the terminal in a predetermined order, whereby the service subscribed by the user is provided to the terminal of the user,
The controller is
The service that the user subscribes to, and information indicating whether or not the service function that provides the service can be used are stored in the service state management information.
Obtain information indicating availability from the service function,
Updating the service status management information based on the acquired information indicating availability;
Based on the service status management information, providing a service to which the user of the terminal subscribes, and determining a service function path through which the terminal data passes a service function available to the terminal,
A control apparatus, wherein data of the terminal is transferred according to the determined route.
サービスを提供する少なくとも一つのサービスファンクションを制御する処理を、制御装置が有するプロセッサに実行させるプログラムであって、
端末のデータは、前記端末のユーザが加入するサービスに応じたサービスファンクションを所定の順番で経由する経路に従って転送されることによって、前記ユーザが加入したサービスが当該ユーザの端末に提供され、
前記制御装置が有するメモリは、前記ユーザが加入するサービスと、前記サービスを提供するサービスファンクションの利用可否を示す情報とが登録されたサービス状態管理情報を保持し、
前記処理では、
前記プロセッサが、前記サービスファンクションから利用可否を示す情報を取得し、
前記プロセッサが、前記取得した利用可否を示す情報に基づいて、前記サービス状態管理情報を更新し、
前記プロセッサが、前記サービス状態管理情報に基づいて、前記端末のユーザが加入するサービスを提供し、かつ前記端末が利用可能なサービスファンクションを前記端末のデータが経由するサービスファンクションの経路を決定し、
前記決定した経路に従って、前記端末のデータが転送されることを特徴とするプログラム。
A program for causing a processor of a control device to execute processing for controlling at least one service function that provides a service,
The data of the terminal is transferred according to a route that passes through a service function according to the service subscribed to by the user of the terminal in a predetermined order, whereby the service subscribed by the user is provided to the terminal of the user,
The memory included in the control device holds service state management information in which a service subscribed to by the user and information indicating availability of a service function that provides the service are registered.
In the process,
The processor acquires information indicating availability from the service function,
The processor updates the service status management information based on the acquired information indicating availability or not,
The processor provides a service to which a user of the terminal subscribes based on the service state management information and determines a service function path through which the terminal data passes a service function available to the terminal;
A program characterized in that data of the terminal is transferred according to the determined route.
JP2015237451A 2015-12-04 2015-12-04 Network system, control device, and program Active JP6522490B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015237451A JP6522490B2 (en) 2015-12-04 2015-12-04 Network system, control device, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015237451A JP6522490B2 (en) 2015-12-04 2015-12-04 Network system, control device, and program

Publications (2)

Publication Number Publication Date
JP2017103703A true JP2017103703A (en) 2017-06-08
JP6522490B2 JP6522490B2 (en) 2019-05-29

Family

ID=59015745

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015237451A Active JP6522490B2 (en) 2015-12-04 2015-12-04 Network system, control device, and program

Country Status (1)

Country Link
JP (1) JP6522490B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017208735A (en) * 2016-05-19 2017-11-24 日本電信電話株式会社 SFC system and SFC control method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015154421A (en) * 2014-02-18 2015-08-24 日本電信電話株式会社 Routing control cooperation system for communication network, and method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015154421A (en) * 2014-02-18 2015-08-24 日本電信電話株式会社 Routing control cooperation system for communication network, and method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017208735A (en) * 2016-05-19 2017-11-24 日本電信電話株式会社 SFC system and SFC control method

Also Published As

Publication number Publication date
JP6522490B2 (en) 2019-05-29

Similar Documents

Publication Publication Date Title
CN111355604B (en) System and method for user customization and automation operations on software defined networks
JP6490205B2 (en) Method, apparatus and system for flow entry configuration
TWI631475B (en) System and method for capability monitoring
US8705514B2 (en) Apparatus for controlling a transfer destination of a packet originating from a virtual machine
US10129152B2 (en) Setting method, server device and service chain system
JP5466723B2 (en) Host providing system and communication control method
JP5920668B2 (en) Security policy enforcement system and security policy enforcement method
JP2014048900A (en) Computer system, and packet transfer method
US20140337471A1 (en) Migration assist system and migration assist method
US20140223511A1 (en) Authentication switch and network system
JP6858328B2 (en) Realization of storage system using personal user device and data distribution device
JPWO2013190737A1 (en) Server system, server, server control method, and server control program
JP2016116184A (en) Network monitoring device and virtual network management method
US10103995B1 (en) System and method for automated policy-based routing
JP2016144186A (en) Communication information controller, relay system, communication information control method, and communication information control program
WO2015027931A1 (en) Method and system for realizing cross-domain remote command
WO2018032499A1 (en) Load balancing method and associated device
JP6289879B2 (en) Communication terminal, communication method and program
JP6522490B2 (en) Network system, control device, and program
JP2014003408A (en) Relay transfer system, path control device and edge device
US20180152346A1 (en) Information processing device, communication control method, and computer-readable recording medium
US11683225B2 (en) Relay device and non-transitory computer readable medium
JP2018156555A (en) Cluster system, update management device for cluster system, update distribution device, update management method, update distribution method and program
WO2014045610A1 (en) Rule setting method and relay system
JP6044218B2 (en) Network switch, network switch control method, and network switch control program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180214

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181211

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190117

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190424

R150 Certificate of patent or registration of utility model

Ref document number: 6522490

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250