JP6751059B2 - Communication system and flow control method - Google Patents
Communication system and flow control method Download PDFInfo
- Publication number
- JP6751059B2 JP6751059B2 JP2017147495A JP2017147495A JP6751059B2 JP 6751059 B2 JP6751059 B2 JP 6751059B2 JP 2017147495 A JP2017147495 A JP 2017147495A JP 2017147495 A JP2017147495 A JP 2017147495A JP 6751059 B2 JP6751059 B2 JP 6751059B2
- Authority
- JP
- Japan
- Prior art keywords
- flow
- dpi device
- information
- input
- dpi
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
本発明は、通信システムに関し、より詳細には、DPI (Deep Packet Inspection)装置に関する。 The present invention relates to a communication system, and more particularly to a DPI (Deep Packet Inspection) device.
ISP (Internet Service Provider)では、ユーザの要求に応じた通信サービスの提供のため、DPI装置の活用が検討されている。DPI装置は、一般にISP網内にインラインで集約配備されている。 ISPs (Internet Service Providers) are considering using DPI devices to provide communication services in response to user requests. DPI devices are generally integrated and deployed inline within the ISP network.
特に、アプリケーションを意識したサービス(例えば、特定のアプリケーションをゼロレーティングする)が検討されているが、この場合、図1に示されるように、DPI装置においてアプリケーションを識別及び制御するため、上り/下り双方向フローは同一のDPI装置を経由させる必要がある。 In particular, an application-aware service (for example, zero-rating a specific application) is being considered. In this case, however, in order to identify and control the application in the DPI device, as shown in FIG. Bidirectional flows must go through the same DPI device.
ISPでは、隣接するISPとの間で、複数の伝送リンクを構築することで冗長化とトラフィックの分散を行っている。一般に、マルチリンク接続のISP間では、経路制御プロトコルとしてBGP (Border Gateway Protocol)が利用されている。 ISPs make redundancy and distribute traffic by constructing multiple transmission links with adjacent ISPs. Generally, BGP (Border Gateway Protocol) is used as a routing control protocol between ISPs with multilink connection.
BGPでは、自AS (Autonomous System)内のリソース(伝送路帯域・各装置での処理)を節約するため、ホットポテトルーティングが採用されている。ホットポテトルーティングとは、外部ASにパケットを転送する場合に、AS内部においてネットワーク構成上、当該外部ASに最も近いAS出口にあるルータへパケットを転送するルーティングである。 In BGP, hot potato routing is adopted in order to save resources (transmission path bandwidth, processing in each device) in its own AS (Autonomous System). The hot potato routing is a routing for transferring a packet to an external AS when the packet is transferred to the router at the AS exit closest to the external AS due to the network configuration inside the AS.
ホットポテトルーティングによると、図2に示されるように、上り/下り方向で経路が異なる「非対称トラフィック」が発生する可能性がある。すなわち、ホットポテトルーティングによって、上りのフローはISP#1のルータ#1とISP#2のルータ#2との間のリンクを経由する一方、下りのフローはISP#2のルータ#4とISP#1のルータ#3との間のリンクを経由することになる。このため、上りフロー及び下りフローはそれぞれ異なるDPI装置#1、#2に入力されることになり、双方向フローを入力する必要のあるアプリケーションを識別した制御を行うことができなくなる。
According to hot potato routing, as shown in FIG. 2, there is a possibility that “asymmetric traffic” with different routes in the up/down direction occurs. That is, with hot potato routing, the upstream flow goes through the link between the
一方、このような非対称トラフィックに対して、双方向フローを同一のDPI装置に入力してDPI装置においてアプリケーションの識別及び制御を実現するため、Cluster方式とState Share方式との2つの方式がある。Cluster方式は、図3に示されるように、上りフローが経由したDPI装置に下りフローを転送することによって、同一のDPI装置において識別及び制御を行うというものである。他方、State Share方式は、図4に示されるように、上りフローと下りフローが経由するDPI装置の間でフロー情報(5tuple、TCPシーケンス番号等)と適用されるポリシー情報を共有することによって、識別及び制御を行うというものである。 On the other hand, for such asymmetric traffic, there are two methods, a Cluster method and a State Share method, in order to input a bidirectional flow to the same DPI device and realize application identification and control in the DPI device. As shown in FIG. 3, the Cluster method is to identify and control the same DPI device by transferring the downstream flow to the DPI device through which the upstream flow has passed. On the other hand, in the State Share method, as shown in FIG. 4, by sharing the flow information (5 tuple, TCP sequence number, etc.) and the applied policy information between the DPI devices through which the upstream flow and the downstream flow pass, It is to identify and control.
Cluster方式の具体的な処理フローについて、図5に示されるように、ステップS11において、フローXの上りがDPI装置#1を経由してサーバに転送される。このとき、DPI装置#1では、フローXの上りの先頭の数パケット(例えば、4〜20パケット)などの上りフロー情報(5tuple、TCPシーケンス番号等)が保持される。ステップS12において、フローXの下りがホットポテトルーティングに従ってDPI装置#2に転送される。DPI装置#2は、フローXの上りフロー情報を有しないため、ステップS13において全てのDPI装置に対してフローXの上りフロー情報に対する問い合わせをブロードキャストする。ステップS14において、フローXの上りフロー情報を保持するDPI装置#1が、受信した問い合わせに応答して、問い合わせ元のDPI装置#2にフローXの上りフロー情報を通知する。ステップS15において、DPI装置#2は、DPI装置#1からフローXの上りフロー情報を受信すると、受信した下りフローをDPI装置#1に転送する。ステップS16において、DPI装置#1は、保持している上りフロー情報とDPI装置#2から転送された下りフローから、フローXのアプリケーションを識別して双方向フローXを制御する。
Regarding the specific processing flow of the Cluster method, as shown in FIG. 5, in step S11, the upstream of the flow X is transferred to the server via the
他方、State Share方式の具体的な処理フローについて、図6に示されるように、ステップS21において、フローXの上りがDPI装置#1を経由してサーバに転送される。このとき、DPI装置#1では、フローXの上りの先頭の数パケット(例えば、4〜20パケット)などの上りフロー情報(5tuple、TCPシーケンス番号等)が保持される。ステップS22において、フローXの下りがホットポテトルーティングに従ってDPI装置#2に転送される。DPI装置#2は、フローXの上りフロー情報を有しないため、ステップS23において全てのDPI装置に対してフローXの上りフロー情報に対する問い合わせをブロードキャストすると共に、フローXの下りの先頭の数パケット(例えば、4〜20パケット)などの下りフロー情報を保持する。ステップS24において、フローXの上りフロー情報を保持するDPI装置#1が、受信した問い合わせに応答して、問い合わせ元のDPI装置#2にフローXの上りフロー情報を通知する。ステップS25において、DPI装置#2は、DPI装置#1からフローXの上りフロー情報を受信すると、保持している下りフロー情報をDPI装置#1に通知する。ステップS26において、DPI装置#1は、保持している上りフロー情報とDPI装置#2から送信された下りフロー情報から、フローXのアプリケーションを識別し、アプリケーション識別結果と適用ポリシー情報をDPI装置#2に通知すると共に、フローXの上りを制御する。ステップS27において、DPI装置#2は、DPI装置#1からアプリケーション識別結果と適用ポリシー情報を受信すると、フローXの下りを制御する。
On the other hand, regarding the specific processing flow of the State Share method, as shown in FIG. 6, in step S21, the upstream of the flow X is transferred to the server via the
図7に示されるように、Cluster方式は、TCP (Transmission Control Protocol)やUDP(User Datagram Protocol)に限定されず全てのケースに適用可能である一方、全ての非対称下りフローがDPI装置間で転送されるため、DPI装置間のトラフィック量が増加する。なお、ISP網内のバックボーントラフィックの非対称トラフィックの割合について、約80%という観測データがある。また、制御対象外フローについても、フローXの上りが経由したDPI装置に転送されるため、転送遅延が発生する。他方、State Share方式は、双方向(上り/下り)フローを同一のDPI装置に入力しなければならないアプリケーションには適用できず、適用範囲が限定される。なお、ISP網内の全フローに対するTCPの割合は50%程度であり、トラフィック量は70%程度という観測データがある。 As shown in FIG. 7, the Cluster method is applicable to all cases without being limited to TCP (Transmission Control Protocol) and UDP (User Datagram Protocol), while all asymmetric downlink flows are transferred between DPI devices. As a result, the amount of traffic between DPI devices increases. It should be noted that there is observed data of about 80% of the ratio of backbone traffic to asymmetric traffic within the ISP network. Further, the non-controlled flow is also transferred to the DPI device through which the upstream of the flow X has passed, so a transfer delay occurs. On the other hand, the State Share method cannot be applied to applications in which bidirectional (upstream/downstream) flows must be input to the same DPI device, and its application range is limited. It should be noted that there is observation data that the ratio of TCP to all the flows in the ISP network is about 50%, and the traffic volume is about 70%.
上記問題点を鑑み、本発明の課題は、フロー種別に応じた効率的なフロー制御を実現するDPI装置を提供することである。 In view of the above problems, an object of the present invention is to provide a DPI device that realizes efficient flow control according to the flow type.
上記課題を解決するため、本発明の一態様は、複数のDPI装置を含む通信システムであって、各DPI装置は、入力フローに関する情報を管理するフロー判定部と、前記入力フローに適用されるポリシー情報と前記入力フローに関する情報とに基づきフロー制御を実行するフロー識別・制御部と、を有し、前記入力フローがTCP以外であり、双方向で同一のDPI装置で処理される必要があって、かつ、下りフローに適用されるポリシー情報がある場合、前記フロー識別・制御部は、前記下りフローを対応する上りフローが入力したDPI装置に転送する通信システムに関する。
In order to solve the above problems, one aspect of the present invention is a communication system including a plurality of DPI devices, each DPI device being applied to the input flow and a flow determination unit that manages information related to the input flow. A flow identification/control unit that executes flow control based on policy information and information about the input flow, and the input flow is other than TCP and needs to be processed bidirectionally by the same DPI device. In addition, when there is policy information applied to the downlink flow, the flow identification/control unit relates to a communication system that transfers the downlink flow to the DPI device input by the corresponding uplink flow .
本発明によると、フロー種別に応じた効率的なフロー制御を実現するDPI装置を提供することができる。 According to the present invention, it is possible to provide a DPI device that realizes efficient flow control according to a flow type.
以下、図面に基づいて本発明の実施の形態を説明する。 Embodiments of the present invention will be described below with reference to the drawings.
後述される実施例では、複数のDPI装置を有する通信システムが開示される。以下の実施例による通信システムでは、制御対象の上りフローと下りフローが異なるDPI装置に入力されると、入力フローがTCPの場合、State Share方式が適用され、入力フローがTCP以外の場合、Cluster方式が適用される。すなわち、図8に示されるように、制御対象の入力フローに対して、DPI装置#2への入力フローがTCP以外である場合、DPI装置#2は、Cluster方式に従って入力フローをDPI装置#1に転送し、DPI装置#2への入力フローがTCPである場合、DPI装置#2は、State Share方式に従ってDPI装置#1とフロー情報とポリシー情報を共有する。
In the embodiments described below, a communication system having a plurality of DPI devices is disclosed. In the communication system according to the following example, when the upstream flow and the downstream flow to be controlled are input to different DPI devices, if the input flow is TCP, the State Share method is applied, and if the input flow is other than TCP, the Cluster Method is applied. That is, as shown in FIG. 8, when the input flow to the
これにより、従来のCluster方式と比較して、双方向(上り/下り)フローを同一のDPI装置に入れなくてもよいアプリケーションの場合や制御対象外フローの場合には、上りフローが経由したDPI装置に下りフローを転送する必要がないため、DPI装置間を流れるトラフィック量を削減することができる。また、制御対象外フローについては、上りフローが経由したDPI装置に下りフローが転送されないため、制御対象外フローについては経路変更に伴う転送遅延が発生しない。他方、従来のSate Share方式と比較して、双方向(上り/下り)フローを同一のDPI装置に入れなければならないアプリケーションの場合にも適用可能であるため、本実施例は適用領域がより広い。 As a result, compared to the conventional Cluster method, in the case of an application that does not require bidirectional (upstream/downstream) flows to be put in the same DPI device or in the case of non-controlled flows, the DPI that the upstream flow passes Since it is not necessary to transfer the downstream flow to the device, the amount of traffic flowing between the DPI devices can be reduced. Further, as for the non-controlled flow, the downstream flow is not transferred to the DPI device through which the upstream flow passes, so that the non-controlled flow does not cause a transfer delay due to the route change. On the other hand, as compared with the conventional Sate Share method, the present embodiment can be applied to the case where the bidirectional (upstream/downstream) flows have to be put in the same DPI device, so that the present embodiment has a wider application area. ..
図9を参照して、本発明の一実施例によるDPI装置を説明する。図9は、本発明の一実施例によるDPI装置の構成を示すブロック図である。 A DPI device according to an embodiment of the present invention will be described with reference to FIG. FIG. 9 is a block diagram showing the configuration of a DPI device according to an embodiment of the present invention.
図9に示されるように、通信システム10は、複数のDPI装置100(DPI装置#1、DPI装置#2、・・・)及びPCRF(Policy and Charging Rule Function)装置200を有する。典型的には、通信システム10はISPなどのASであり、PCRF装置200は制御対象フローに適用されるポリシーを管理するポリシー管理装置である。DPI装置100は、PCRF装置200によって管理されるポリシーに従ってユーザとコンテンツ事業者のサーバとの間でやりとりされるデータやパケットのフローを制御する。
As shown in FIG. 9, the communication system 10 includes a plurality of DPI devices 100 (
DPI装置100は、典型的には、サーバにより実現されてもよく、例えば、バスを介し相互接続されるドライブ装置、補助記憶装置、メモリ装置、プロセッサ、インタフェース装置及び通信装置から構成される。DPI装置100における後述される各種機能及び処理を実現するプログラムを含む各種コンピュータプログラムは、CD−ROM(Compact Disk−Read Only Memory)、DVD(Digital Versatile Disk)、フラッシュメモリなどの記録媒体によって提供されてもよい。プログラムを記憶した記録媒体がドライブ装置にセットされると、プログラムが記録媒体からドライブ装置を介して補助記憶装置にインストールされる。但し、プログラムのインストールは必ずしも記録媒体により行う必要はなく、ネットワークなどを介し何れかの外部装置からダウンロードするようにしてもよい。補助記憶装置は、インストールされたプログラムを格納すると共に、必要なファイルやデータなどを格納する。メモリ装置は、プログラムの起動指示があった場合に、補助記憶装置からプログラムやデータを読み出して格納する。プロセッサは、メモリ装置に格納されたプログラムやプログラムを実行するのに必要なパラメータなどの各種データに従って、後述されるようなDPI装置100の各種機能及び処理を実行する。インタフェース装置は、ネットワーク又は外部装置に接続するための通信インタフェースとして用いられる。通信装置は、インターネットなどのネットワークと通信するための各種通信処理を実行する。
The
しかしながら、DPI装置100は、上述したハードウェア構成に限定されるものでなく、他の何れか適切なハードウェア構成により実現されてもよい。
However, the
以下の実施例では、DPI装置#1に上りフローが入り、DPI装置#2に下りフローが入るとされる。また、DPI装置100に入力するフローについて、Import-IFから入るフローを「上りフロー」とし、Export-IFから入るフローを「下りフロー」としている。
In the following embodiment, it is assumed that the
DPI装置100は、フロー判定部110及びフロー識別・制御部120を有する。
The
フロー判定部110は、入力したフローに関する情報を管理する。具体的には、フロー判定部110は、DPI装置100に入力したフローについて、当該フローの先頭の数パケットの情報(5tuple等)をフロー情報として識別フローテーブルに保持する。また、フロー判定部110は、フロー情報と共に、当該フローのフロー方向(上り/下り)及び/又は制御対象フローであるか否かを示す制御フラグを識別フローテーブルに登録する。フロー判定部110は、入力したフローが識別フローテーブルに登録されているか判定し、当該フローが識別フローテーブルに登録されていない場合には、入力したフローを識別フローテーブルに登録することによって、入力済みのフローに関する情報を管理する。
The
フロー識別・制御部120は、入力したフローに適用されるポリシー情報と入力したフローに関する情報とに基づきフロー制御を実行する。具体的には、フロー識別・制御部120は、DPI装置100に入力したフローについて、当該フローが制御対象フローであるかPCRF装置200に問い合わせ、入力したフローが制御対象フローである場合、当該フローの先頭の数パケットの情報(5tuple等)をフロー情報として制御フローテーブルに保持する。また、フロー識別・制御部120は、適用されるポリシー情報(例えば、10Mのレートリミットが適用されている、URLフィルタリングが適用されているなど)を制御内容として制御フローテーブルに保持する。
The flow identification/
次に、実施例1によるDPI装置#1, #2において実行される処理フローを説明する。
Next, a processing flow executed in the
DPI装置#1による上りフローの処理について、フローXがDPI装置#1に入力すると、フロー判定部110は、識別フローテーブルを参照して当該フローが新規フローであるか、又は既存フローであるか判定し、新規フローである場合、フローXに関する情報を識別フローテーブルに登録する。例えば、フロー判定部110は、フローXの先頭の数パケット(例えば、4〜20パケット)の情報(5tuple等)を示すフロー情報、フロー方向などを保持する。
Regarding the processing of the upstream flow by the
また、フローXが入力すると、フロー識別・制御部120は、PCRF装置200に対して、フローXに適用されるポリシー情報があるか問い合わせる。PCRF装置200は、例えば、予め保持するフロー制御設定情報などに基づきフローXに適用されるポリシー情報があるか判定し、適用されるポリシー情報がある場合、送信元のDPI装置#1にフローXに適用されるポリシー情報を通知する。フロー識別・制御部120は、受信したポリシー情報(例えば、10Mのレートリミットが適用されている、URLフィルタリングが適用されているなど)と共に、当該フローの先頭の数パケットの情報(5tuple等)をフロー情報として制御フローテーブルに保持する。また、フロー識別・制御部120は、フロー判定部110の識別フローテーブルのフローXの制御フラグ(例えば、1:制御対象、0:制御対象外)を設定する。
When the flow X is input, the flow identification/
一方、DPI装置#2による下りフローの処理について、フローXがDPI装置#2に入力すると、フロー判定部110は、識別フローテーブルを参照して当該フローが新規フローであるか、又は既存フローであるか判定し、新規フローである場合、フローXに関する情報を識別フローテーブルに登録する。例えば、フロー判定部110は、フローXの先頭の数パケット(例えば、4〜20パケット)の情報(5tuple等)を示すフロー情報、フロー方向などを保持する。また、フロー判定部110は、識別フローテーブルを参照して、下りフローXに対応する上りフローXに関するフロー情報(5tuple等)が登録されているか判定する。上りフロー情報が識別フローテーブルにない場合、フロー判定部110は、当該フローXが双方向で同一のDPI装置100においてアプリケーションを識別する必要があるか判定し、判定結果に応じて以下の異なる処理フローを実行する。具体的には、フロー判定部110は、入力フローXの種別に応じて、当該フローXが双方向で同一のDPI装置100においてアプリケーションを識別する必要があると判定できる。例えば、入力フローがTCPである場合、フロー判定部110は、当該フローXが双方向で同一のDPI装置100において処理される必要がないと判定し、他方、入力フローがTCP以外である場合、フロー判定部110は、当該フローXが双方向で同一のDPI装置100において処理される必要があると判定してもよい。
On the other hand, regarding the processing of the downstream flow by the
まず、双方向フローXが同一のDPI装置100に入力しなければならないアプリケーションに関するものであるケースについて説明する。
First, a case where the bidirectional flow X is related to an application that must be input to the
DPI装置#2は、全てのDPI装置100に対して、フローXの上りフロー情報の問い合わせをブロードキャストする。
The
ブロードキャストされた問い合わせを受信すると、DPI装置#1のフロー判定部110は、識別フローテーブルを参照して、フローXに関する上り方向のフロー情報があるか判断する。識別フローテーブルにフローXに関する上り方向のフロー情報を検出すると、フロー判定部110は更に、識別フローテーブルにおけるフローXの制御フラグを確認し、フローXに対して適用されるポリシー情報があるか、すなわち、フローXが制御対象フローであるか判断する。フローXが制御対象フローである場合、フロー判定部110は、問い合わせ元のDPI装置#2にフローXのフロー情報(5tuple等)を通知する。他方、フローXが制御対象フローでない場合、フロー判定部110は、問い合わせ元のDPI装置#2にNull値を通知する。
Upon receiving the broadcasted inquiry, the
DPI装置#1からフローXのフロー情報を受信すると、DPI装置#2のフロー識別・制御部120は、下りフローXをDPI装置#1に転送する。DPI装置#1のフロー識別・制御部120は、制御フローテーブルのフローXの上りフロー情報と、DPI装置#2から転送されたフローXの下りフロー情報からアプリケーションを識別し、双方向フローXを制御する。
When receiving the flow information of the flow X from the
他方、DPI装置#1からNull値を受信すると、DPI装置#2のフロー判定部110は、識別フローテーブルにフローXに関する情報を登録する。同様に、フロー識別・制御部120は、制御フローテーブルにフローXに関する情報を登録すると共に、本来の宛先にフローXを転送する。
On the other hand, when receiving a Null value from the
他方、双方向フローXが同一のDPI装置100に入力しなくてもよいアプリケーションに関するものであるケースについて説明する。
On the other hand, a case where the bidirectional flow X is related to an application that does not need to be input to the
DPI装置#2は、全てのDPI装置100に対して、フローXの上りフロー情報の問い合わせをブロードキャストする。
The
ブロードキャストされた問い合わせを受信すると、DPI装置#1のフロー判定部110は、識別フローテーブルを参照して、フローXに関する上り方向のフロー情報があるか判断する。識別フローテーブルにフローXに関する上り方向のフロー情報を検出すると、フロー判定部110は更に、識別フローテーブルにおけるフローXの制御フラグを確認し、フローXに対して適用されるポリシー情報があるか、すなわち、フローXが制御対象フローであるか判断する。フローXが制御対象フローである場合、フロー判定部110は、問い合わせ元のDPI装置#2にフローXのフロー情報(5tuple等)を通知する。他方、フローXが制御対象フローでない場合、フロー判定部110は、問い合わせ元のDPI装置#2にNull値を通知する。
Upon receiving the broadcasted inquiry, the
DPI装置#1からフローXのフロー情報を受信すると、DPI装置#2のフロー識別・制御部120は、フローXの下りパケットの先頭の数パケット(4〜20など)のフロー情報をDPI装置#1に通知する。他方、DPI装置#1からNull値を受信すると、DPI装置#2のフロー判定部110は、保持している先頭の数パケットの情報を破棄すると共に、識別フローテーブルにフローXに関するフロー情報を登録する。同様に、フロー識別・制御部120は、制御フローテーブルにフローXに関する情報を登録すると共に、本来の宛先にフローXを転送する。
Upon receiving the flow information of the flow X from the
DPI装置#1のフロー識別・制御部120は、DPI装置#2から通知されたフロー情報と制御フローテーブルのフローXの上りフロー情報からアプリケーションを識別し、アプリケーション識別結果と適用されるポリシー情報をDPI装置#2に通知する。
The flow identification/
DPI装置#1からアプリケーション識別結果と適用されるポリシー情報を受信すると、DPI装置#2のフロー識別・制御部120は、ポリシー情報に従って下りフローXを制御する。
When receiving the application identification result and the applied policy information from the
また、上りフロー情報がある場合、DPI装置#1、#2のフロー識別・制御部120は、制御フローテーブルに基づきフロー制御を実行する。
If there is upstream flow information, the flow identification/
次に、実施例2によるDPI装置#1、#2において実行される処理フローを説明する。実施例2では、DPI装置100にフローが入力した際、入力IFの情報だけで、当該フローが上りフロー又は下りフローであるか判別できないケースに適用可能である。
Next, a processing flow executed in the
DPI装置#1によるフローの処理について、フローXがDPI装置#1に入力すると、フロー判定部110は、識別フローテーブルを参照して当該フローが新規フローであるか、又は既存フローであるか判定し、新規フローである場合、フローXに関する情報を識別フローテーブルに登録する。例えば、フロー判定部110は、フローXの先頭の数パケット(例えば、4〜20パケット)の情報(5tuple等)を示すフロー情報、フロー方向などを保持する。このとき、フロー方向を判定するため、フロー判定部110は、全てのDPI装置100に対して、フローXのフロー情報の問い合わせをブロードキャストする。何れかのDPI装置100から応答を受信すると、フロー判定部110は、フローXは上りフローであると判定し、何れのDPI装置100からも応答を受信できなかった場合、フロー判定部110は、フローXは下りフローであると判定し、判定結果をフロー方向として登録する。
Regarding the processing of the flow by the
また、フローXが入力すると、フロー識別・制御部120は、PCRF装置200に対して、フローXに適用されるポリシー情報があるか問い合わせる。PCRF装置200は、例えば、予め保持するフロー制御設定情報などに基づきフローXに適用されるポリシー情報があるか判定し、適用されるポリシー情報がある場合、送信元のDPI装置#1にポリシー情報を通知する。フロー識別・制御部120は、受信したポリシー情報(例えば、10Mのレートリミットが適用されている、URLフィルタリングが適用されているなど)と共に、当該フローの先頭の数パケットの情報(5tuple等)をフロー情報として制御フローテーブルに保持する。また、フロー識別・制御部120は、フロー判定部110の識別フローテーブルのフローXの制御フラグ(例えば、1:制御対象、0:制御対象外)を設定する。
When the flow X is input, the flow identification/
一方、DPI装置#2によるフローの処理について、フローXがDPI装置#2に入力すると、フロー判定部110は、識別フローテーブルを参照して当該フローが新規フローであるか、又は既存フローであるか判定し、新規フローである場合、フローXに関する情報を識別フローテーブルに登録する。例えば、フロー判定部110は、フローXの先頭の数パケット(例えば、4〜20パケット)の情報(5tuple等)を示すフロー情報、フロー方向などを保持する。このとき、フロー方向を判定するため、フロー判定部110は、全てのDPI装置100に対して、フローXのフロー情報の問い合わせをブロードキャストする。何れかのDPI装置100から応答を受信すると、フロー判定部110は、フローXは下りフローであると判定し、何れのDPI装置100からも応答を受信できなかった場合、フロー判定部110は、フローXは上りフローであると判定し、判定結果をフロー方向として登録する。
On the other hand, regarding the processing of the flow by the
また、フロー判定部110は、識別フローテーブルを参照して、下りフローXに対応する上りフローXに関するフロー情報(5tuple等)が登録されているか判定する。上りフロー情報が識別フローテーブルにない場合、フロー判定部110は、当該フローXが双方向で同一のDPI装置100においてアプリケーションを識別する必要があるか判定し、判定結果に応じて以下の異なる処理フローを実行する。具体的には、フロー判定部110は、入力フローXの種別に応じて、当該フローXが双方向で同一のDPI装置100においてアプリケーションを識別する必要があると判定できる。例えば、入力フローがTCPである場合、フロー判定部110は、当該フローXが双方向で同一のDPI装置100において処理される必要がないと判定し、他方、入力フローがTCP以外である場合、フロー判定部110は、当該フローXが双方向で同一のDPI装置100において処理される必要があると判定してもよい。
Further, the
まず、双方向フローXが同一のDPI装置100に入力しなければならないアプリケーションに関するものであるケースについて説明する。
First, a case where the bidirectional flow X is related to an application that must be input to the
DPI装置#2は、全てのDPI装置100に対して、フローXの上りフロー情報の問い合わせをブロードキャストする。
The
ブロードキャストされた問い合わせを受信すると、DPI装置#1のフロー判定部110は、識別フローテーブルを参照して、フローXに関する上り方向のフロー情報があるか判断する。識別フローテーブルにフローXに関する上り方向のフロー情報を検出すると、フロー判定部110は更に、識別フローテーブルにおけるフローXの制御フラグを確認し、フローXに対して適用されるポリシー情報があるか、すなわち、フローXが制御対象フローであるか判断する。フローXが制御対象フローである場合、フロー判定部110は、問い合わせ元のDPI装置#2にフローXのフロー情報(5tuple等)を通知する。他方、フローXが制御対象フローでない場合、フロー判定部110は、問い合わせ元のDPI装置#2にNull値を通知する。
Upon receiving the broadcasted inquiry, the
DPI装置#1からフローXのフロー情報を受信すると、DPI装置#2のフロー識別・制御部120は、下りフローXをDPI装置#1に転送する。DPI装置#1のフロー識別・制御部120は、制御フローテーブルのフローXの上りフロー情報と、DPI装置#2から転送されたフローXの下りフロー情報からアプリケーションを識別し、双方向フローXを制御する。
When receiving the flow information of the flow X from the
他方、DPI装置#1からNull値を受信すると、DPI装置#2のフロー判定部110は、識別フローテーブルにフローXに関する情報を登録する。同様に、フロー識別・制御部120は、制御フローテーブルにフローXに関する情報を登録すると共に、本来の宛先にフローXを転送する。
On the other hand, when receiving a Null value from the
他方、双方向フローXが同一のDPI装置100に入力しなくてもよいアプリケーションに関するものであるケースについて説明する。
On the other hand, a case where the bidirectional flow X is related to an application that does not need to be input to the
DPI装置#2は、全てのDPI装置100に対して、フローXの上りフロー情報の問い合わせをブロードキャストする。
The
ブロードキャストされた問い合わせを受信すると、DPI装置#1のフロー判定部110は、識別フローテーブルを参照して、フローXに関する上り方向のフロー情報があるか判断する。識別フローテーブルにフローXに関する上り方向のフロー情報を検出すると、フロー判定部110は更に、識別フローテーブルにおけるフローXの制御フラグを確認し、フローXに対して適用されるポリシー情報があるか、すなわち、フローXが制御対象フローであるか判断する。フローXが制御対象フローである場合、フロー判定部110は、問い合わせ元のDPI装置#2にフローXのフロー情報(5tuple等)を通知する。他方、フローXが制御対象フローでない場合、フロー判定部110は、問い合わせ元のDPI装置#2にNull値を通知する。
Upon receiving the broadcasted inquiry, the
DPI装置#1からフローXのフロー情報を受信すると、DPI装置#2のフロー識別・制御部120は、フローXの下りパケットの先頭の数パケット(4〜20など)のフロー情報をDPI装置#1に通知する。他方、DPI装置#1からNull値を受信すると、DPI装置#2のフロー判定部110は、保持している先頭の数パケットの情報を破棄すると共に、識別フローテーブルにフローXに関するフロー情報を登録する。同様に、フロー識別・制御部120は、制御フローテーブルにフローXに関する情報を登録すると共に、本来の宛先にフローXを転送する。
Upon receiving the flow information of the flow X from the
DPI装置#1のフロー識別・制御部120は、DPI装置#2から通知されたフロー情報と制御フローテーブルのフローXの上りフロー情報からアプリケーションを識別し、アプリケーション識別結果と適用されるポリシー情報をDPI装置#2に通知する。
The flow identification/
DPI装置#1からアプリケーション識別結果と適用されるポリシー情報を受信すると、DPI装置#2のフロー識別・制御部120は、ポリシー情報に従って下りフローXを制御する。
When receiving the application identification result and the applied policy information from the
また、上りフロー情報がある場合、DPI装置#1、#2のフロー識別・制御部120は、制御フローテーブルに基づきフロー制御を実行する。
If there is upstream flow information, the flow identification/
以上、本発明の実施例について詳述したが、本発明は上述した特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。 Although the examples of the present invention have been described above in detail, the present invention is not limited to the specific embodiments described above, and various modifications are possible within the scope of the gist of the present invention described in the claims. -Can be changed.
10 通信システム
100 DPI装置
110 フロー判定部
120 フロー識別・制御部
200 PCRF装置
10
Claims (6)
各DPI装置は、
入力フローに関する情報を管理するフロー判定部と、
前記入力フローに適用されるポリシー情報と前記入力フローに関する情報とに基づきフロー制御を実行するフロー識別・制御部と、
を有し、
前記入力フローがTCP以外であり、双方向で同一のDPI装置で処理される必要があって、かつ、下りフローに適用されるポリシー情報がある場合、前記フロー識別・制御部は、前記下りフローを対応する上りフローが入力したDPI装置に転送する通信システム。 A communication system including a plurality of DPI devices,
Each DPI device
A flow determination unit that manages information about the input flow,
A flow identification/control unit that executes flow control based on policy information applied to the input flow and information about the input flow;
Have
If the input flow is other than TCP, it needs to be processed by the same DPI device in both directions, and if there is policy information applied to the downlink flow, the flow identification/control unit, the downlink flow A communication system that transfers the data to the DPI device input by the corresponding upstream flow .
前記フロー識別・制御部は、前記入力フローに関するフロー情報及び制御内容を有する制御フローテーブルを有する、請求項1乃至3何れか一項記載の通信システム。 The flow determination unit has an identification flow table having flow information regarding the input flow, flow direction, and control suitability information,
The communication system according to any one of claims 1 to 3 , wherein the flow identification/control unit has a control flow table having flow information and control content regarding the input flow.
入力フローを受信するステップと、
前記入力フローが双方向で同一のDPI装置で処理される必要があるか判定するステップと、
前記入力フローに適用されるポリシー情報があるか判定するステップと、
前記入力フローがTCP以外であり、双方向で同一のDPI装置で処理される必要があって、かつ、下りフローに適用されるポリシー情報がある場合、前記下りフローを対応する上りフローが入力したDPI装置に転送するステップと、
を有する方法。 A flow control method executed by a communication system including a plurality of DPI devices,
Receiving an input flow,
Determining whether the input flow needs to be processed in the same DPI device in both directions,
Determining whether there is policy information applied to the input flow,
If the input flow is other than TCP, needs to be processed bidirectionally by the same DPI device, and there is policy information applied to the downlink flow, the downlink flow is input by the corresponding uplink flow. Transferring to a DPI device ,
A method having.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017147495A JP6751059B2 (en) | 2017-07-31 | 2017-07-31 | Communication system and flow control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017147495A JP6751059B2 (en) | 2017-07-31 | 2017-07-31 | Communication system and flow control method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019029818A JP2019029818A (en) | 2019-02-21 |
JP6751059B2 true JP6751059B2 (en) | 2020-09-02 |
Family
ID=65478845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017147495A Active JP6751059B2 (en) | 2017-07-31 | 2017-07-31 | Communication system and flow control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6751059B2 (en) |
-
2017
- 2017-07-31 JP JP2017147495A patent/JP6751059B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2019029818A (en) | 2019-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11444872B2 (en) | Method and system of application-aware routing with crowdsourcing | |
US10263882B2 (en) | Dynamically influencing route re-distribution between an exterior gateway protocol and an interior gateway protocol | |
US20210377162A1 (en) | Malleable routing for data packets | |
US9270598B1 (en) | Congestion control using congestion prefix information in a named data networking environment | |
CA2595254C (en) | Hardware-based messaging appliance | |
US9754297B1 (en) | Network routing metering | |
US9942153B2 (en) | Multiple persistant load balancer system | |
US9509631B2 (en) | Quality of service (QoS) for information centric networks | |
US7751318B2 (en) | Method and system for computing AS-disjoint inter-AS traffic engineering-label switched paths (TE-LSPS) | |
CN102137005A (en) | Method, device and system for forwarding date in communication system | |
CN113395212B (en) | Network device, method of operating the same, and non-transitory computer readable medium | |
US11601358B2 (en) | Cross datacenter communication using a mesh gateway | |
US20150127837A1 (en) | Relay apparatus and data transfer method | |
Alotaibi et al. | Multidomain SDN‐Based Gateways and Border Gateway Protocol | |
RU2675212C1 (en) | Adaptive load balancing during package processing | |
EP3020163B1 (en) | Interworking between first protocol entity of stream reservation protocol and second protocol entity of routing protocol | |
JP6751059B2 (en) | Communication system and flow control method | |
US20230291679A1 (en) | Dynamic use of a packet recovery mechanism to avoid congestion along a network path | |
US20080298366A1 (en) | Agnostic Network Architecture | |
WO2016173233A1 (en) | Routing control method, device and system | |
KR101145389B1 (en) | Scalable centralized network architecture with de-centralization of network control and network switching apparatus therefor | |
Kido et al. | A development of real-time failover inter-domain routing framework using software-defined networking | |
US10320889B2 (en) | Processing incoming transactions based on resource utilization status of backend systems in an appliance cluster | |
JP2004040723A (en) | Access service network construction system and access service network construction method | |
JP5582506B2 (en) | Packet cache control method and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190619 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200515 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200602 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200730 |
|
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: 20200811 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200813 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6751059 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |