JP5440200B2 - Relay device and bandwidth control method - Google Patents

Relay device and bandwidth control method Download PDF

Info

Publication number
JP5440200B2
JP5440200B2 JP2010009375A JP2010009375A JP5440200B2 JP 5440200 B2 JP5440200 B2 JP 5440200B2 JP 2010009375 A JP2010009375 A JP 2010009375A JP 2010009375 A JP2010009375 A JP 2010009375A JP 5440200 B2 JP5440200 B2 JP 5440200B2
Authority
JP
Japan
Prior art keywords
session
unit
network
bandwidth
communication
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.)
Expired - Fee Related
Application number
JP2010009375A
Other languages
Japanese (ja)
Other versions
JP2011151490A (en
Inventor
治 下國
Original Assignee
富士通株式会社
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 富士通株式会社 filed Critical 富士通株式会社
Priority to JP2010009375A priority Critical patent/JP5440200B2/en
Publication of JP2011151490A publication Critical patent/JP2011151490A/en
Application granted granted Critical
Publication of JP5440200B2 publication Critical patent/JP5440200B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、帯域制御技術に関する。   The present invention relates to a bandwidth control technique.
遠隔の各拠点間をネットワークで結んだ通信システムはWAN(Wide Area Network)
通信システムなどと呼ばれる。以降、このような遠隔の各拠点間を結ぶネットワークをWAN、WAN回線等と表記する。このようなWAN通信システムには、WAN回線の高速化又は最適化を行うネットワーク機器が存在する。WAN回線の高速化又は最適化は、VPN(Virtual Private Network)ルータ、WAN高速化装置、WAN最適化装置等のよ
うに、各拠点のネットワークをWANに接続させる各ネットワーク機器でそれぞれ実現される。
A wide area network (WAN) is a communication system that connects remote locations with a network.
It is called a communication system. Hereinafter, such a network connecting remote bases is referred to as a WAN, a WAN line, or the like. In such a WAN communication system, there is a network device that speeds up or optimizes a WAN line. The speed-up or optimization of the WAN line is realized by each network device that connects each base network to the WAN, such as a VPN (Virtual Private Network) router, a WAN speed-up device, and a WAN optimization device.
このようなネットワーク機器では、WAN回線の帯域制御が行われる。例えば、ネットワーク機器内でのバッファフル等によりリンクの輻輳が検出された場合には、高速化が要求される通信に他の通信よりも優先的に帯域を割り当てるといった優先帯域制御が行われる。   In such a network device, bandwidth control of the WAN line is performed. For example, when link congestion is detected due to buffer full or the like in the network device, priority band control is performed such that a band is preferentially allocated to a communication requiring high speed over other communication.
特開2008−5078号公報JP 2008-5078 A 特開2007−243300号公報JP 2007-243300 A
一般的に、上述したようなWANは、インターネット等のように、エッジノードメーカ等にとって管理外のブラックボックス網であることが多い。このようなブラックボックス網では、網内で輻輳が起こり、拠点間の通信に必要な帯域が得られない場合がある。このような問題を回避するには、RSVP(Resource Reservation Protocol)や優先制御等
がブラックボックス網に含まれるルータ等の各中継装置に実装されている必要がある。しかしながら、ブラックボックス網内は各利用者が管理できないため、ブラックボックス網内に含まれる各中継装置の実装機能に依存することができない場合が多い。
Generally, a WAN as described above is often a black box network that is not managed by an edge node manufacturer or the like, such as the Internet. In such a black box network, congestion may occur in the network, and a band necessary for communication between bases may not be obtained. In order to avoid such a problem, it is necessary that RSVP (Resource Reservation Protocol), priority control, and the like are implemented in each relay device such as a router included in the black box network. However, since each user cannot manage the inside of the black box network, it often cannot depend on the mounting function of each relay device included in the black box network.
これにより、上述のような従来のエッジノードは、ブラックボックス網のような特定網に含まれる複数の中継装置をそれぞれ繋ぐ各リンクのうち、自身と直接接続されないリンクにおける輻輳を検出することができない。このように従来のエッジノードでは、特定網内の輻輳に対応するための帯域制御を実行することができないという問題点がある。   As a result, the conventional edge node as described above cannot detect congestion in a link that is not directly connected to itself among each link that connects a plurality of relay devices included in a specific network such as a black box network. . As described above, the conventional edge node has a problem in that it cannot execute the bandwidth control to cope with the congestion in the specific network.
本発明の一態様に係る目的は、このような問題点に鑑み、特定網内の輻輳を回避する帯域制御技術を提供することにある。   In view of such a problem, an object according to one aspect of the present invention is to provide a bandwidth control technique that avoids congestion in a specific network.
本発明の各態様では、上述した課題を解決するために、それぞれ以下の構成を採用する。   Each aspect of the present invention employs the following configurations in order to solve the above-described problems.
第1の態様は、第1網から第2網へパケットの中継を行う中継装置に関する。第1の態様に係る中継装置は、第1網から第2網へ中継される各パケットに設定されている少なくとも宛先アドレス及び送信元アドレスでそれぞれ特定される複数の通信単位のうち、輻輳
の生じた通信単位を検出する輻輳検出手段と、当該複数の通信単位のうち、上記輻輳検出手段で検出された輻輳の生じた通信単位との間で第2網内の少なくとも1つの特定リンクを共有する他の通信単位を特定する特定手段と、当該複数の通信単位のうち、上記特定手段により特定された他の通信単位及び上記輻輳の生じた通信単位の第2網への送信帯域を制限する帯域制御手段と、を備える。
A 1st aspect is related with the relay apparatus which relays a packet from a 1st network to a 2nd network. The relay device according to the first aspect generates congestion among a plurality of communication units specified by at least a destination address and a transmission source address set in each packet relayed from the first network to the second network. The at least one specific link in the second network is shared between the congestion detection unit that detects the communication unit and the communication unit in which congestion is detected detected by the congestion detection unit among the plurality of communication units. A specifying unit for specifying another communication unit, and a band for limiting a transmission band to the second network of the other communication unit specified by the specifying unit and the communication unit in which congestion occurs among the plurality of communication units. Control means.
本発明の別態様としては、以上の構成を実現する方法であってもよいし、コンピュータに以上の構成を実現させるプログラムであってもよいし、このようなプログラムを記録したコンピュータが読み取り可能な記録媒体であってもよい。   Another aspect of the present invention may be a method for realizing the above configuration, a program for causing a computer to realize the above configuration, or a computer that records such a program. It may be a recording medium.
上記各態様によれば、特定網内の輻輳を回避する帯域制御技術を提供することができる。   According to each aspect described above, it is possible to provide a bandwidth control technique that avoids congestion in a specific network.
WAN通信システムの概略構成を示す図。The figure which shows schematic structure of a WAN communication system. 実施例1におけるエッジノード10の概略構成を示すブロック図。1 is a block diagram showing a schematic configuration of an edge node 10 in Embodiment 1. FIG. 実施例1におけるセッション管理テーブルの例を示す図。FIG. 6 is a diagram illustrating an example of a session management table in the first embodiment. ルート情報テーブル26の例を示す図。The figure which shows the example of the route information table. リンク集合テーブル27の例を示す図。The figure which shows the example of the link set table 27. FIG. 実施例1における帯域制御装置の動作例を示すフローチャート。6 is a flowchart illustrating an operation example of the bandwidth control apparatus according to the first embodiment. 実施例1における帯域制御装置の動作例を示すフローチャート。6 is a flowchart illustrating an operation example of the bandwidth control apparatus according to the first embodiment. 実施例2におけるエッジノード10の概略構成を示すブロック図。FIG. 5 is a block diagram illustrating a schematic configuration of an edge node 10 according to a second embodiment. 実施例2におけるセッション管理テーブルの例を示す図。FIG. 10 is a diagram illustrating an example of a session management table in the second embodiment. 共有セッショングループを示すイメージ図。The image figure which shows a shared session group. 共有セッションテーブル73の例を示す図。The figure which shows the example of the shared session table 73. FIG. 実施例2における共有セッショングループの検査の動作例を示すフローチャート。10 is a flowchart illustrating an operation example of inspection of a shared session group in the second embodiment. 実施例2における送信帯域制御の動作例を示すフローチャート。9 is a flowchart illustrating an operation example of transmission band control in the second embodiment.
以下、一実施形態としての帯域制御装置について具体例を挙げ説明する。実施形態としての帯域制御装置は、各拠点間をWAN経由で接続するエッジノードとして作用する。以降、本実施形態における帯域制御装置をエッジノードとも表記する。   Hereinafter, a specific example of the bandwidth control device as one embodiment will be described. The bandwidth control apparatus as an embodiment acts as an edge node that connects bases via a WAN. Hereinafter, the bandwidth control device in this embodiment is also referred to as an edge node.
本実施形態は、WANの意味を限定するものではなく、WANはルータ等の複数の中継装置を含むネットワークであればよい。本実施形態におけるエッジノードによれば、当該WANがエッジノード提供者にとって管理外のネットワークであったとしても適用可能でる。以下に挙げた各実施例はそれぞれ例示であり、本実施形態は以下の各実施例の構成に限定されない。
This embodiment does not limit the meaning of WAN, and WAN may be a network including a plurality of relay devices such as routers. According to the edge node in the present embodiment, even Ru Oh applicable as the WAN was unmanaged network to edge node provider. Each example given below is an example, and the present embodiment is not limited to the configuration of each example below.
以下、実施形態としての帯域制御装置(エッジノード)の第1実施例について説明する。   Hereinafter, a first example of the bandwidth control device (edge node) as the embodiment will be described.
[システム構成]
図1は、WAN通信システムの概略構成を示す図である。WAN通信システムは、WAN1を介してそれぞれ接続される拠点網2、3及び4を含む。WAN1は、例えば、インターネット等の公衆網である。各拠点網は、例えば、拠点A、拠点B及び拠点Cにそれぞれ設けられたLAN(Local Area Network)である。
[System configuration]
FIG. 1 is a diagram showing a schematic configuration of a WAN communication system. The WAN communication system includes base networks 2, 3 and 4 that are respectively connected via the WAN1. The WAN 1 is a public network such as the Internet, for example. Each base network is, for example, a LAN (Local Area Network) provided in each of the base A, the base B, and the base C.
実施例1におけるエッジノード10は、拠点網2とWAN1との境界に配置され、拠点網2をWAN1に接続する。実施例1におけるエッジノード10は、拠点網2からWAN1に向けて送出される通信の帯域幅を制御し、WAN1から各拠点に向けて送出される通信を特に限定するものではない。よって、実施例1におけるエッジノード10で帯域制御されてWAN方向に送出されたパケットを受信する他のエッジノード8及び9は一般的な中継装置でよい。このため、実施例1では、拠点網3及び4をWAN1に接続するエッジノード8及び9は一般的なルータとする。なお、エッジノード8及び9についても実施例1におけるエッジノードを用いるようにしてもよい。   The edge node 10 according to the first embodiment is arranged at the boundary between the base network 2 and the WAN 1 and connects the base network 2 to the WAN 1. The edge node 10 in the first embodiment controls the bandwidth of communication transmitted from the base network 2 to the WAN 1 and does not particularly limit communication transmitted from the WAN 1 to each base. Therefore, the other edge nodes 8 and 9 that receive packets whose bandwidth is controlled by the edge node 10 in the first embodiment and are transmitted in the WAN direction may be general relay apparatuses. Therefore, in the first embodiment, the edge nodes 8 and 9 that connect the base networks 3 and 4 to the WAN 1 are general routers. Note that the edge nodes in the first embodiment may be used for the edge nodes 8 and 9 as well.
[装置構成]
図2は、実施例1におけるエッジノード10の概略構成を示すブロック図である。実施例1におけるエッジノード10は、図2に示すように、拠点側受信部11、セッション解析部12、セッション管理テーブル13、セッションキュー14、出力制御器15、WAN側送信部16、WAN側受信部21、パケット解析部22、経路探索部23、応答確認処理部24、帯域制御部25、ルート情報テーブル26、リンク集合テーブル27、拠点側送信部28等を含む。これら各処理部は、ソフトウェアの構成要素、又はハードウェアの構成要素、若しくはこれらの組み合わせとしてそれぞれ実現される([その他]の項参照)。
[Device configuration]
FIG. 2 is a block diagram illustrating a schematic configuration of the edge node 10 according to the first embodiment. As shown in FIG. 2, the edge node 10 according to the first embodiment includes a base side receiving unit 11, a session analyzing unit 12, a session management table 13, a session queue 14, an output controller 15, a WAN side transmitting unit 16, and a WAN side receiving. Section 21, packet analysis section 22, route search section 23, response confirmation processing section 24, bandwidth control section 25, route information table 26, link set table 27, base side transmission section 28, and the like. Each of these processing units is realized as a software component, a hardware component, or a combination thereof (see [Others]).
拠点側受信部11及び拠点側送信部28は、拠点網2との通信インタフェースとして動作する。拠点側受信部11は、拠点網2からのパケットを受信する。拠点側受信部11は、受信されたパケットがWAN1に向けて送出すべきと判断すると、このパケットの受信をセッション解析部12へ通知する。拠点側送信部28は、WAN1からのパケットをパケット解析部22から受けると、そのパケットを拠点網2へ送信する。   The site-side receiving unit 11 and the site-side transmitting unit 28 operate as a communication interface with the site network 2. The site-side receiving unit 11 receives a packet from the site network 2. If the site side receiving unit 11 determines that the received packet should be sent to the WAN 1, the site side receiving unit 11 notifies the session analyzing unit 12 of reception of this packet. When receiving the packet from WAN 1 from the packet analysis unit 22, the site side transmission unit 28 transmits the packet to the site network 2.
セッション解析部12は、拠点側受信部11で受信されたパケットを解析する。具体的には、セッション解析部12は、受信されたパケットから、宛先IP(Internet Protocol)アドレス、送信元IPアドレス、プロトコルデータ、サービスタイプ、宛先ポート番
号、送信元ポート番号、シーケンス番号、パケット長、コードビット等を抽出する。
The session analysis unit 12 analyzes the packet received by the base side reception unit 11. Specifically, the session analysis unit 12 determines the destination IP (Internet Protocol) address, source IP address, protocol data, service type, destination port number, source port number, sequence number, packet length from the received packet. Extract code bits and the like.
セッション解析部12は、抽出された、宛先IPアドレス、送信元IPアドレス、宛先ポート番号、送信元ポート番号に基づいて、そのパケットが属するセッションを識別する。ここで用いるセッションとは、宛先IPアドレス、送信元IPアドレス、宛先ポート番号及び送信元ポート番号で特定される通信単位を示す。よって、例えば、1つのTCP(Transmission Control Protocol)コネクションは1つのセッションに対応する。UDP
(User Datagram Protocol)でやりとりされるパケットも1つのセッションを構成する。
The session analysis unit 12 identifies the session to which the packet belongs based on the extracted destination IP address, source IP address, destination port number, and source port number. The session used here indicates a communication unit specified by a destination IP address, a source IP address, a destination port number, and a source port number. Thus, for example, one TCP (Transmission Control Protocol) connection corresponds to one session. UDP
Packets exchanged by (User Datagram Protocol) also constitute one session.
セッション解析部12は、受信パケットが属するセッションを識別し終えると、そのパケットを、識別されたセッションに対応するセッションキューに入れる。   When session analysis unit 12 finishes identifying the session to which the received packet belongs, session analysis unit 12 places the packet in the session queue corresponding to the identified session.
また、セッション解析部12は、受信パケットに応じて識別されたセッションをセッション管理テーブル13で管理する。図3は、実施例1におけるセッション管理テーブルの例を示す図である。セッション管理テーブル13には、各セッションについて、セッションID(Identification)、セッション特定情報、状態、輻輳検出用情報、ルート情報、速度情報、キュー情報等が格納される。   In addition, the session analysis unit 12 manages the session identified according to the received packet with the session management table 13. FIG. 3 is a diagram illustrating an example of a session management table in the first embodiment. The session management table 13 stores, for each session, a session ID (Identification), session identification information, state, congestion detection information, route information, speed information, queue information, and the like.
セッションIDは、各セッションをエッジノード10内で識別するためにセッション解析部12により付される識別情報である。セッション特定情報は、各セッションを特定するための宛先IPアドレス、送信元IPアドレス、宛先ポート番号及び送信元ポート番号
を含む。セッション解析部12は、受信パケットから抽出された宛先IPアドレス、送信元IPアドレス、宛先ポート番号及び送信元ポート番号がセッション特定情報としてセッション管理テーブル13に格納されていない場合に、新たなセッションIDを生成する。セッション解析部12は、この新たなセッションID、受信パケットから抽出された宛先IPアドレス、送信元IPアドレス、宛先ポート番号及び送信元ポート番号が設定された新たなレコードをセッション管理テーブル13に追加する。
The session ID is identification information given by the session analysis unit 12 in order to identify each session within the edge node 10. The session specifying information includes a destination IP address, a source IP address, a destination port number, and a source port number for specifying each session. When the destination IP address, source IP address, destination port number, and source port number extracted from the received packet are not stored in the session management table 13 as session identification information, the session analysis unit 12 Is generated. The session analysis unit 12 adds a new record in which the new session ID, the destination IP address extracted from the received packet, the source IP address, the destination port number, and the source port number are set to the session management table 13. .
セッション解析部12は、受信パケットから抽出されたプロトコルデータがTCPを示す場合には、同様に抽出されたコードビットに応じて、セッション管理テーブル13内の状態フィールドを更新する。例えば、コードビットのSYN(Synchronize)フラグがセ
ットされている場合には、状態フィールドにSYNが受信されたことを示す値(SYN_RCVD)が設定される。また、コードビットのFINフラグがセットされている場合には、状態フィールドにFINパケット待ち状態を示す値(FIN_WAIT)が設定される。状態フィールドにFIN_WAITが設定されているセッションが存在した場合に、パケット解析部22によりそのセッションのFINパケットが受信されたと判定されると、セッション管理テーブル13からそのセッションのレコードが削除される。
When the protocol data extracted from the received packet indicates TCP, the session analysis unit 12 updates the status field in the session management table 13 according to the similarly extracted code bit. For example, when the SYN (Synchronize) flag of the code bit is set, a value (SYN_RCVD) indicating that SYN is received is set in the status field. When the FIN flag of the code bit is set, a value (FIN_WAIT) indicating a FIN packet waiting state is set in the status field. If there is a session in which FIN_WAIT is set in the status field, if the packet analysis unit 22 determines that the FIN packet of the session has been received, the record of the session is deleted from the session management table 13.
輻輳検出用情報は、TCPにおける応答確認パケット(以降、ACKパケットと表記する)を用いた輻輳検出で利用される情報である。輻輳検出用情報は、最新送出時間、最大送出シーケンス番号、最小未確認応答シーケンス番号、平均RTT(Round Trip Time)
、RTT平均偏差を含む。最新送出時間は、拠点網2から受信されたパケットをWAN1へ送出した時間を示す。実施例1では、セッション解析部12が、受信パケットをセッションキューに入れた際に、そのときの時間情報を最新送出時間として設定する。
The congestion detection information is information used in congestion detection using a response confirmation packet (hereinafter referred to as an ACK packet) in TCP. Congestion detection information includes latest transmission time, maximum transmission sequence number, minimum unacknowledged response sequence number, and average RTT (Round Trip Time)
, Including RTT mean deviation. The latest transmission time indicates the time when the packet received from the base network 2 is transmitted to the WAN 1. In the first embodiment, when the session analysis unit 12 puts a received packet into the session queue, the time information at that time is set as the latest transmission time.
最大送出シーケンス番号は、エッジノード10がWAN1へ送出したパケットに関する、同一セッション中で最大のシーケンス番号を示す。セッション解析部12は、セッション管理テーブル13における該当セッションを示すレコードに設定されている最大送出シーケンス番号よりも、受信パケットから抽出されたシーケンス番号が大きい場合に、その抽出されたシーケンス番号をセッション管理テーブル13に反映させる。   The maximum transmission sequence number indicates the maximum sequence number in the same session regarding the packet transmitted from the edge node 10 to WAN1. When the sequence number extracted from the received packet is larger than the maximum transmission sequence number set in the record indicating the session in the session management table 13, the session analysis unit 12 performs session management on the extracted sequence number. This is reflected in the table 13.
最小未確認応答シーケンス番号、平均RTT(Round Trip Time)及びRTT平均偏差
は、応答確認処理部24によりそれぞれ更新される。ルート情報フィールドには、ルート情報テーブル26のそのセッションに関するレコードへのポインタが格納される。ルート情報テーブル26は経路探索部23により管理されるため、このルート情報フィールドも経路探索部23により更新される。
The minimum unconfirmed response sequence number, average RTT (Round Trip Time), and RTT average deviation are updated by the response confirmation processing unit 24, respectively. In the route information field, a pointer to a record related to the session in the route information table 26 is stored. Since the route information table 26 is managed by the route search unit 23, this route information field is also updated by the route search unit 23.
速度情報は、各セッションを帯域制御するために利用される情報である。速度情報は、優先順位、実績送信帯域幅等を含む。セッション解析部12は、セッション管理テーブル13に新たなセッションのレコードを追加する際に、そのセッションの優先順位を決める。セッション解析部12は、この決定された優先順位を当該優先順位フィールドに格納する。セッションの優先順位は、例えば、受信パケットから抽出されたサービスタイプやポート番号から決定される。   The speed information is information used for bandwidth control of each session. The speed information includes priority order, actual transmission bandwidth, and the like. When adding a new session record to the session management table 13, the session analysis unit 12 determines the priority of the session. The session analysis unit 12 stores the determined priority in the priority field. The priority of the session is determined from, for example, the service type and port number extracted from the received packet.
実績送信帯域幅は、対象セッションについて、エッジノード10からWAN1へ送出された単位時間当りのデータ量を示す。セッション解析部12は、セッションキューに入れたパケットのパケット長を累積し、この累積値を単位時間(例えば10ミリ秒(ms))で除算した値を最新データとして取得する。セッション解析部12は、この最新データと、セッション管理テーブル13の実績送信帯域幅フィールドに既に格納されているデータとの加重平均を取ることにより得られた値で実績送信帯域幅フィールドを更新する。   The actual transmission bandwidth indicates the amount of data per unit time transmitted from the edge node 10 to the WAN 1 for the target session. The session analysis unit 12 accumulates the packet lengths of the packets placed in the session queue, and acquires a value obtained by dividing the accumulated value by a unit time (for example, 10 milliseconds (ms)) as the latest data. The session analysis unit 12 updates the actual transmission bandwidth field with a value obtained by taking a weighted average of the latest data and the data already stored in the actual transmission bandwidth field of the session management table 13.
キュー情報フィールドには、対象セッションのパケットがキューイングされるセッションキューへのポインタが格納される。セッション解析部12は、パケットをセッションキューに入れると、そのセッションキューへのポインタをキュー情報フィールドに格納する。   The queue information field stores a pointer to a session queue in which packets of the target session are queued. When the session analysis unit 12 puts the packet in the session queue, the session analysis unit 12 stores a pointer to the session queue in the queue information field.
セッションキュー14は、セッション毎にそれぞれ設けられ、WAN1へ送出するためのパケットを一時格納するバッファである。上述したように、拠点網2から受信されたパケットがセッション解析部12で識別されたセッションに対応するセッションキューに格納される。   The session queue 14 is a buffer that is provided for each session and temporarily stores packets to be sent to the WAN 1. As described above, the packet received from the base network 2 is stored in the session queue corresponding to the session identified by the session analysis unit 12.
出力制御器15は、各セッションキュー14を所定の順番で選択し、選択されたセッションキュー14に格納されているパケットをFIFO(First-IN First-OUT)で抽出し、抽出されたパケットをWAN側送信部16へ送る。出力制御器15は、帯域制御部25からの優先制御の指示を受けた場合には、その指示に応じてパケットの抽出とパケットの廃棄を行う。この優先制御の詳細については後述する。   The output controller 15 selects each session queue 14 in a predetermined order, extracts the packet stored in the selected session queue 14 by FIFO (First-IN First-OUT), and extracts the extracted packet as WAN. To the side transmitter 16. When receiving an instruction for priority control from the bandwidth controller 25, the output controller 15 extracts a packet and discards the packet in accordance with the instruction. Details of this priority control will be described later.
WAN側送信部16及びWAN側受信部21は、WAN1との通信インタフェースとして動作する。WAN側送信部16は、出力制御器15により抽出されたパケットをWAN1へ送出する。WAN側受信部21は、WAN1からのパケットを受信し、受信されたパケットをパケット解析部22へ送る。   The WAN side transmission unit 16 and the WAN side reception unit 21 operate as a communication interface with the WAN 1. The WAN side transmission unit 16 sends the packet extracted by the output controller 15 to the WAN 1. The WAN side receiving unit 21 receives a packet from the WAN 1 and sends the received packet to the packet analyzing unit 22.
パケット解析部22は、WAN側受信部21で受信されたパケットを解析する。パケット解析部22は、受信パケットがACKパケットである場合には、ACKパケットが受信されたことを応答確認処理部24へ通知する。パケット解析部22は、受信パケットがICMP(Internet Control Message Protocol)の時間超過(Time Exceeded)メッセージ(以降、単に時間超過メッセージと表記する)である場合には、時間超過メッセージが受信されたことを経路探索部23に通知する。パケット解析部22は、WAN側受信部21で受信されたパケットを拠点網2へ送出するように拠点側送信部28へ指示する。   The packet analysis unit 22 analyzes the packet received by the WAN side reception unit 21. When the received packet is an ACK packet, the packet analysis unit 22 notifies the response confirmation processing unit 24 that the ACK packet has been received. When the received packet is an ICMP (Internet Control Message Protocol) Time Exceeded message (hereinafter simply referred to as an “time exceeded message”), the packet analysis unit 22 confirms that the time exceeded message has been received. The route search unit 23 is notified. The packet analysis unit 22 instructs the base side transmission unit 28 to transmit the packet received by the WAN side reception unit 21 to the base network 2.
経路探索部23は、定期的に、セッション管理テーブル13に格納される各セッションの経路情報をそれぞれ収集する。各セッションの経路情報としては、経路上の各中継装置(ルータ等)の情報が収集される。経路探索部23は、新たなセッションが発生したことによりセッション管理テーブル13に新たなレコードが追加された際、及び、帯域制御部25から指示を受けた場合等にも、同様に、セッションの経路情報を取得する。   The route search unit 23 periodically collects route information of each session stored in the session management table 13. As the route information of each session, information of each relay device (router or the like) on the route is collected. Similarly, when a new record is added to the session management table 13 due to the occurrence of a new session, and when an instruction is received from the bandwidth control unit 25, the route search unit 23 also receives a session route. Get information.
セッションの経路情報は、例えば、tracerouteと呼ばれるコマンドと同様に、ICMPの時間超過メッセージを用いて収集される。経路探索部23は、IPヘッダの生存時間(TTL)フィールドを1から順に更新しながら、セッション管理テーブル13に格納されるセッションの宛先IPアドレスを宛先とする経路探索のための所定IPパケットを順次送信する。経路探索部23は、パケット解析部22から時間超過メッセージの受信の通知を受けると、この時間超過メッセージを解析することにより経路情報を取得する。   The route information of the session is collected using an ICMP time exceeded message, for example, in the same manner as a command called “traceroute”. The route search unit 23 sequentially updates predetermined lifetime IP packets for route search with the destination IP address of the session stored in the session management table 13 as the destination while updating the lifetime (TTL) field of the IP header in order from 1. Send. When the route search unit 23 receives a notification of reception of the time excess message from the packet analysis unit 22, the route search unit 23 analyzes the time excess message to acquire route information.
経路探索部23は、このように収集された経路情報をルート情報テーブル26を用いて管理する。経路探索部23は、新たな宛先IPアドレスに関する経路情報を収集した際には、ルート情報テーブル26に新たなレコードを追加すると共に、その新たなレコードへのポインタ情報を上述のセッション管理テーブル13のルート情報フィールドに格納する。   The route search unit 23 manages the route information collected in this way using the route information table 26. When the route search unit 23 collects route information related to a new destination IP address, it adds a new record to the route information table 26, and stores pointer information for the new record in the session management table 13 described above. Store in the route information field.
図4は、ルート情報テーブル26の例を示す図である。ルート情報テーブル26には、
宛先IPアドレス毎に、エッジルータ10からその宛先IPアドレスまでの間に経由される各ルータのIPアドレス、平均RTT、RTT平均偏差がそれぞれ格納される。経路探索部23は、受信された各時間超過メッセージから当該宛先IPアドレスまでに経由する各ルータのIPアドレスをそれぞれ取得し、取得されたIPアドレスをルート情報テーブル26に格納する。
FIG. 4 is a diagram illustrating an example of the route information table 26. In the route information table 26,
For each destination IP address, the IP address, average RTT, and RTT average deviation of each router that passes between the edge router 10 and the destination IP address are stored. The route search unit 23 acquires the IP address of each router that passes from the received time excess message to the destination IP address, and stores the acquired IP address in the route information table 26.
また、経路探索部23は、経路探索のためのIPパケットの送信時間から時間超過メッセージの受信時間までのレスポンス時間(RTT)を各ルータについてそれぞれ計測する。経路探索部23は、計測された各ルータのRTTと既にルート情報テーブル26に格納されている各ルータのRTTとの重み付け平均を算出し、算出された値でルート情報テーブル26の平均RTTフィールドを更新する。重み付け平均は、以下の式で示すことができる。   Further, the route search unit 23 measures the response time (RTT) from the transmission time of the IP packet for route search to the reception time of the overtime message for each router. The route search unit 23 calculates a weighted average between the measured RTT of each router and the RTT of each router already stored in the route information table 26, and calculates the average RTT field of the route information table 26 with the calculated value. Update. The weighted average can be expressed by the following equation.
今回の平均RTT=1/n×(今回計測されたRTT+(n−1)×前回の平均RTT)
重み付け係数nは、例えば、8に設定される。なお、経路探索部23は、同じTTL値が設定された経路探索のための所定IPパケットを複数回送信することにより、同一ルータから複数回時間超過メッセージを受信するようにしてもよい。経路探索部23は、複数回受信された時間超過メッセージにより各ルータのRTTの平均を算出するようにしてもよい。
Current average RTT = 1 / n × (currently measured RTT + (n−1) × previous average RTT)
The weighting coefficient n is set to 8, for example. Note that the route search unit 23 may receive a time excess message a plurality of times from the same router by transmitting a predetermined IP packet for a route search in which the same TTL value is set a plurality of times. The route search unit 23 may calculate the average RTT of each router based on the time excess message received a plurality of times.
経路探索部23は、平均RTTを更新する際に、その平均RTTと既にルート情報テーブル26に格納されている平均RTTとを用いてRTT平均偏差を以下の式を用いて算出する。   When the average RTT is updated, the route search unit 23 calculates the RTT average deviation using the average RTT and the average RTT already stored in the route information table 26 using the following formula.
今回のRTT平均偏差=1/m×(|今回の平均RTT−既存の平均RTT|+(m−1)×前回のRTT平均偏差)
重み付け係数mは、例えば、4に設定される。経路探索部23は、取得されたRTT平均偏差をルート情報テーブル26のRTT平均偏差フィールドに格納する。
Current RTT average deviation = 1 / m × (| Current RTT−Existing average RTT | + (m−1) × Previous RTT average deviation)
The weighting coefficient m is set to 4, for example. The route search unit 23 stores the acquired RTT average deviation in the RTT average deviation field of the route information table 26.
経路探索部23は、ルート情報テーブル26に新たな宛先IPアドレスのレコードを追加した際に、リンク集合テーブル27を更新する。また、セッション解析部12は、新たなセッションの発生を検出した場合に、リンク集合テーブル27を更新する。   The route search unit 23 updates the link set table 27 when a new destination IP address record is added to the route information table 26. Further, the session analysis unit 12 updates the link set table 27 when detecting the occurrence of a new session.
図5は、リンク集合テーブル27の例を示す図である。リンク集合テーブル27は、ルート情報テーブル26に格納される各経路に含まれるリンクの情報を格納する。ここでのリンクとはルータ間の接続を示すため、リンク集合テーブル27の各レコードには、2つの隣接するルータのIPアドレスとそのリンクを利用するセッションIDのリストがそれぞれ格納される。ルート情報テーブル26の情報により隣接するルータの各IPアドレスが取得される。そのリンクを利用するセッションのセッションIDは、セッション管理テーブル13のルート情報フィールドに格納されるポインタに基づいて当該セッション管理テーブル13から抽出される。   FIG. 5 is a diagram illustrating an example of the link set table 27. The link set table 27 stores link information included in each route stored in the route information table 26. Since the link here indicates a connection between routers, each record of the link set table 27 stores a list of IP addresses of two adjacent routers and a session ID using the link. Each IP address of the adjacent router is acquired from the information in the route information table 26. The session ID of the session using the link is extracted from the session management table 13 based on the pointer stored in the route information field of the session management table 13.
応答確認処理部24は、パケット解析部22からACKパケットの受信の通知を受けると、セッション管理テーブル13における最小未確認応答シーケンス番号、平均RTT、RTT平均偏差を更新する。最小未確認応答シーケンス番号フィールドには、WAN1から未だ受信されていないACKパケットにおける同一セッション中の最小のシーケンス番号が格納される。   When receiving a notification of reception of the ACK packet from the packet analysis unit 22, the response confirmation processing unit 24 updates the minimum unconfirmed response sequence number, the average RTT, and the RTT average deviation in the session management table 13. The minimum unacknowledged response sequence number field stores the minimum sequence number in the same session in the ACK packet that has not yet been received from WAN1.
平均RTTフィールドには、或るパケットが送信されてからこのパケットのACKパケ
ットが受信されるまでの時間(往復応答時間)の重み付け平均された値が格納される。実施例1では、応答確認処理部24が、ACKパケットを受信した時間とそのACKパケットに設定されているタイムスタンプとの差(時間)と、セッション管理テーブル13に既に格納されている平均RTTとを重み付け平均した値を平均RTTとして格納する。重み付け平均は、上述した式で示すことができる。
The average RTT field stores a weighted average value of time (round-trip response time) from when a packet is transmitted until the ACK packet of this packet is received. In the first embodiment, the response confirmation processing unit 24 receives the difference (time) between the time when the ACK packet is received and the time stamp set in the ACK packet, and the average RTT already stored in the session management table 13. Is stored as an average RTT. The weighted average can be expressed by the above-described formula.
通常、ACKパケットのタイムスタンプには、確認応答の対象となるパケットに設定されていたタイムスタンプと同一データが設定される。よって、厳密には、送信元ノードがパケットを送信した時間(タイムスタンプ)とそのパケットに対するACKパケットがエッジノード10で受信された時間との差がRTTとして取得される。   Normally, the same data as the time stamp set in the packet to be acknowledged is set in the time stamp of the ACK packet. Therefore, strictly speaking, the difference between the time (time stamp) at which the transmission source node transmitted the packet and the time at which the ACK packet for the packet is received at the edge node 10 is acquired as the RTT.
RTT平均偏差フィールドには、平均RTTの平均偏差が格納される。応答確認処理部24は、平均RTTを新たに算出すると、この新たな平均RTTを用いて、RTT平均偏差を上述の式を用いて算出する。   The average deviation of the average RTT is stored in the RTT average deviation field. When the response confirmation processing unit 24 newly calculates the average RTT, the response confirmation processing unit 24 calculates the RTT average deviation using the above-described equation using the new average RTT.
応答確認処理部24は、セッション管理テーブル13における最小未確認応答シーケンス番号、平均RTT、RTT平均偏差を更新すると、このセッション管理テーブル13に基づいて各セッションにおいて輻輳が発生しているか否かを判定する。具体的には、応答確認処理部24は、RTTの増大やパケットロス率から輻輳の発生を検出する。   When the response confirmation processing unit 24 updates the minimum unconfirmed response sequence number, the average RTT, and the RTT average deviation in the session management table 13, it determines whether congestion has occurred in each session based on the session management table 13. . Specifically, the response confirmation processing unit 24 detects the occurrence of congestion from the increase in RTT and the packet loss rate.
或る回線で輻輳が発生すると、その回線に接続しているルータのバッファにパケットが蓄積され、最終的には、バッファが溢れてパケットロスが生じる。これにより、RTTの増大は輻輳の前兆を示し、ACKパケットの不達はパケットロスの発生を示す。しかし、ネットワークの状況(長距離か短距離か)や状態(品質)によりRTTの取り得る値の幅が大きいため、RTT増大の判定は困難である。   When congestion occurs in a certain line, packets are accumulated in a buffer of a router connected to the line, and eventually the buffer overflows and packet loss occurs. As a result, an increase in RTT indicates a sign of congestion, and a non-delivery of an ACK packet indicates the occurrence of a packet loss. However, since the range of values that the RTT can take is large depending on the network status (long distance or short distance) and the state (quality), it is difficult to determine the increase in RTT.
そこで、応答確認処理部24は、RTTの平均偏差を用いて、以下のような条件を満たす場合にRTTの増大を判定する。なお、所定係数kは、例えば、2に設定される。平均偏差を用いることにより、正常時におけるRTTの取り得る値の幅を考慮した上でのRTTの増大を検出することができる。   Therefore, the response confirmation processing unit 24 uses the average deviation of the RTT to determine an increase in the RTT when the following condition is satisfied. The predetermined coefficient k is set to 2, for example. By using the average deviation, it is possible to detect an increase in the RTT in consideration of the range of values that the RTT can take in the normal state.
今回計測されたRTT>今回の平均RTT+今回のRTT平均偏差×所定係数k
また、応答確認処理部24は、或るパケットをWAN1へ送出してから以下の式で示されるパケットロス判定時間経ってもACKパケットが受信されない場合に、パケットロスを判定する。応答確認処理部24は、パケットロス判定によりパケットロス率を取得する。パケットロス率は、所定単位時間内に発生したパケットロス回数として算出される。応答確認処理部24は、算出されたパケットロス率が所定閾値よりも大きい場合に、パケットロス率の増大と判断する。この所定閾値はシミュレーション等により適切値に設定され、予め調整可能にメモリ等に保持される。
RTT measured this time> Current average RTT + Current RTT average deviation × Predetermined coefficient k
In addition, the response confirmation processing unit 24 determines a packet loss when an ACK packet is not received even after a packet loss determination time indicated by the following equation after a certain packet is sent to the WAN 1. The response confirmation processing unit 24 acquires the packet loss rate by packet loss determination. The packet loss rate is calculated as the number of packet losses that occurred within a predetermined unit time. The response confirmation processing unit 24 determines that the packet loss rate is increased when the calculated packet loss rate is larger than a predetermined threshold. This predetermined threshold is set to an appropriate value by simulation or the like, and is held in a memory or the like so as to be adjustable in advance.
パケットロス判定時間=平均RTT+2×RTT平均偏差×所定係数k
応答確認処理部24は、上述のようにRTTの増大が検出され、かつ、パケットロス率の増大が検出された場合に、該当セッションの輻輳が生じたと判定する。応答確認処理部24は、輻輳発生が検出された場合、輻輳が生じているセッションを示すセッションIDと共に輻輳発生を帯域制御部25に通知する。
Packet loss judgment time = average RTT + 2 × RTT average deviation × predetermined coefficient k
The response confirmation processing unit 24 determines that congestion of the corresponding session has occurred when an increase in RTT is detected as described above and an increase in the packet loss rate is detected. When the occurrence of congestion is detected, the response confirmation processing unit 24 notifies the bandwidth control unit 25 of the occurrence of congestion together with a session ID indicating a session in which congestion has occurred.
帯域制御部25は、セッションIDと共にセッションの輻輳発生の通知を受けると、そのセッションの経路上のボトルネックリンクを検出する。ここで、ボトルネックリンクとは、そのセッションに輻輳を生じさせている可能性の高いリンクを意味する。帯域制御部25は、リンク集合テーブル27とセッション管理テーブル13とを用いて、検出された
ボトルネックリンクをその経路上に含むセッションを特定する。帯域制御部25は、セッション管理テーブル13に格納される情報に基づいて、特定された全セッションの実績送信帯域幅を合計し、この合計送信帯域幅から目標送信帯域幅を決定する。帯域制御部25は、ボトルネックリンクをその経路上に含むセッションで利用される帯域幅がその目標送信帯域幅となるように出力制御器15を制御する。この制御では、優先順位が高いセッションのパケットが優先的に目標送信帯域幅内でセッションキュー14からWAN1へ送出するために取り出され、目標送信帯域幅を超えるパケットがセッションキュー14から廃棄される。帯域制御部25の詳細処理については、動作例の項において後述する。
When the bandwidth control unit 25 receives a notification of occurrence of congestion of a session together with the session ID, the bandwidth control unit 25 detects a bottleneck link on the route of the session. Here, the bottleneck link means a link that is highly likely to cause congestion in the session. The bandwidth control unit 25 uses the link set table 27 and the session management table 13 to specify a session that includes the detected bottleneck link on the route. Based on the information stored in the session management table 13, the bandwidth control unit 25 adds up the actual transmission bandwidths of all the specified sessions, and determines the target transmission bandwidth from the total transmission bandwidth. The bandwidth control unit 25 controls the output controller 15 so that the bandwidth used in the session including the bottleneck link on the route becomes the target transmission bandwidth. In this control, a packet of a session having a high priority is taken out preferentially within the target transmission bandwidth for transmission from the session queue 14 to the WAN 1, and a packet exceeding the target transmission bandwidth is discarded from the session queue 14. Detailed processing of the bandwidth control unit 25 will be described later in the section of the operation example.
[動作例]
以下、実施例1における帯域制御装置の動作例について図6A及び図6Bを用いて説明する。図6A及び図6Bは、実施例1における帯域制御装置の動作例を示すフローチャートである。
[Operation example]
Hereinafter, an operation example of the bandwidth control apparatus according to the first embodiment will be described with reference to FIGS. 6A and 6B. 6A and 6B are flowcharts illustrating an operation example of the bandwidth control apparatus according to the first embodiment.
応答確認処理部24は、セッション管理テーブル13に基づいて、各セッションにおける輻輳の発生を監視している。応答確認処理部24は、WAN1から受信されたACKパケットに応じて、セッション管理テーブル13における最小未確認応答シーケンス番号、平均RTT、RTT平均偏差を更新すると共に、各セッションについてのRTTが増大しているか否かを監視している。また、応答確認処理部24は、セッション管理テーブル13の最新送出時間とパケットロス判定時間とを用いて、各セッションについてACKパケットの不達を監視し、結果、パケットロス率が増大しているか否かを判定する。   The response confirmation processing unit 24 monitors the occurrence of congestion in each session based on the session management table 13. In response to the ACK packet received from WAN1, the response confirmation processing unit 24 updates the minimum unconfirmed response sequence number, the average RTT, and the RTT average deviation in the session management table 13, and whether the RTT for each session has increased. It is monitoring whether or not. In addition, the response confirmation processing unit 24 monitors the non-delivery of the ACK packet for each session using the latest transmission time and the packet loss determination time of the session management table 13, and as a result, whether or not the packet loss rate has increased. Determine whether.
応答確認処理部24は、RTTが増大しており、かつ、パケットロス率が増大しているセッションを検出した場合に、そのセッションに輻輳が発生したと判断する(S61)。応答確認処理部24は、輻輳の発生したセッションを検出すると、そのセッションを識別するセッションIDと共に輻輳発生を帯域制御部25に通知する。   When the response confirmation processing unit 24 detects a session in which the RTT has increased and the packet loss rate has increased, the response confirmation processing unit 24 determines that congestion has occurred in the session (S61). When the response confirmation processing unit 24 detects a session in which congestion occurs, the response confirmation processing unit 24 notifies the bandwidth control unit 25 of the occurrence of congestion together with a session ID for identifying the session.
帯域制御部25は、セッションIDと共にセッションの輻輳発生の通知を受けると、そのセッションの経路上のボトルネックリンクを調べるためにその輻輳が発生したセッションの経路情報を新たに収集するように経路探索部23に指示する。   When the bandwidth control unit 25 receives the notification of the occurrence of the congestion of the session together with the session ID, the route search so as to newly collect the route information of the session in which the congestion has occurred in order to check the bottleneck link on the route of the session. The unit 23 is instructed.
経路探索部23は、帯域制御部25から指示に応じて、そのセッションIDに対応する宛先IPアドレスをセッション管理テーブル13から抽出し、この宛先IPアドレスまでの経路情報を収集する(S62)。この収集処理により、経路探索部23は、宛先IPアドレスまでの間に経由されるルータ情報(R(i);iはルータ数)とRTT情報(M(i);各ルータR(i)のRTT)とを取得する。経路探索部23は、取得されたルータ情報及びRTT情報を帯域制御部25へ送る。   The route search unit 23 extracts a destination IP address corresponding to the session ID from the session management table 13 according to an instruction from the bandwidth control unit 25, and collects route information up to this destination IP address (S62). As a result of this collection processing, the route search unit 23 obtains router information (R (i); i is the number of routers) and RTT information (M (i); each router R (i) passed to the destination IP address. RTT). The route search unit 23 sends the acquired router information and RTT information to the bandwidth control unit 25.
帯域制御部25は、経路探索部23からルータ情報及びRTT情報を受けると、当該セッションIDに対応するルート情報テーブルへのポインタをセッション管理テーブル13から抽出する。帯域制御部25は、この抽出されたポインタで示される経路情報をルート情報テーブル26から抽出する(S63)。即ち、輻輳発生セッションの宛先IPアドレスに関する経路情報がルート情報テーブル26から抽出される。この抽出された経路情報には、宛先IPアドレスまでの間に経由されるルータ情報(R(i);iはルータ数)と、平均RTT情報(A(i);各ルータR(i)の平均RTT)とRTT平均偏差情報(D(i);各ルータR(i)のRTT平均偏差)とが含まれる。   When receiving the router information and the RTT information from the route search unit 23, the bandwidth control unit 25 extracts a pointer to the route information table corresponding to the session ID from the session management table 13. The bandwidth controller 25 extracts the route information indicated by the extracted pointer from the route information table 26 (S63). That is, route information related to the destination IP address of the congestion occurrence session is extracted from the route information table 26. The extracted route information includes router information (R (i); i is the number of routers) passed to the destination IP address and average RTT information (A (i); each router R (i). Average RTT) and RTT average deviation information (D (i); RTT average deviation of each router R (i)).
帯域制御部25は、経路探索部23から送られた新たな経路情報と、ルート情報テーブル26から抽出された既存の経路情報と、を用いて、輻輳が発生したセッションの経路上のボトルネックリンクを検出する(S64)。具体的には、帯域制御部25は、まず、輻
輳が発生したセッションの経路上のルータ(R(i))のうち、新たに収集されたRTT(M(i))がこれまでの平均RTT(A(i))と比較して著しく相違するルータを抽出する。例えば、ルータ(R(i))のうち、|A(i)−M(i)|/D(i)で得られる値が最大となるルータ(R(x);i=x)が特定される。次に、帯域制御部25は、ルート情報テーブル26から取得された経路情報に含まれるホップ情報に基づいて、宛先から離れる方向でそのルータ(R(x))と隣接するルータ(R(x−1))を特定する。結果、帯域制御部25は、ルータ(R(x))とルータ(R(x−1))との間のリンクをボトルネックリンクとして検出する。
The bandwidth control unit 25 uses the new route information sent from the route search unit 23 and the existing route information extracted from the route information table 26, and the bottleneck link on the route of the session in which congestion occurs. Is detected (S64). Specifically, the bandwidth control unit 25 first determines that the newly collected RTT (M (i)) among the routers (R (i)) on the route of the session in which the congestion has occurred is the average RTT so far. A router that is significantly different from (A (i)) is extracted. For example, among the routers (R (i)), the router (R (x); i = x) having the maximum value obtained by | A (i) −M (i) | / D (i) is specified. The Next, the bandwidth control unit 25, based on the hop information included in the route information acquired from the route information table 26, the router (R (x−) adjacent to the router (R (x)) in the direction away from the destination. 1)) is specified. As a result, the bandwidth control unit 25 detects the link between the router (R (x)) and the router (R (x−1)) as a bottleneck link.
帯域制御部25は、検出されたボトルネックリンク(R(x−1)、R(x))をその経路上に含むセッションを特定する(S65)。具体的には、帯域制御部25は、ルータ(R(x−1))とルータ(R(x))との組で示されるレコードをリンク集合テーブル27から抽出し、このレコードに含まれるセッションIDのリスト(セッションの集合(S))を抽出する。   The bandwidth control unit 25 specifies a session including the detected bottleneck link (R (x-1), R (x)) on the route (S65). Specifically, the bandwidth control unit 25 extracts a record indicated by a pair of the router (R (x−1)) and the router (R (x)) from the link set table 27, and the session included in this record A list of IDs (a set of sessions (S)) is extracted.
帯域制御部25は、抽出されたセッションの集合(S)の実績送信帯域幅の合計を算出する(S66)。具体的には、帯域制御部25は、抽出された各セッションIDに対応する実績送信帯域幅をセッション管理テーブル13からそれぞれ抽出し、この抽出された各実績送信帯域幅を合計する。   The bandwidth control unit 25 calculates the sum of the actual transmission bandwidths of the extracted set of sessions (S) (S66). Specifically, the bandwidth control unit 25 extracts the actual transmission bandwidth corresponding to each extracted session ID from the session management table 13, and totals the extracted actual transmission bandwidths.
帯域制御部25は、この合計された実績送信帯域幅から目標送信帯域幅を決定する(S67)。例えば、帯域制御部25は、合計された実績送信帯域幅に所定の係数(例えば0.5)を乗算した結果を目標送信帯域幅に決定する。帯域制御部25は、この目標送信帯域幅に実績送信帯域幅の算出に利用された単位時間(例えば10(ms))を乗算することにより目標送信データ量を決定する(S68)。   The bandwidth control unit 25 determines a target transmission bandwidth from the totaled actual transmission bandwidth (S67). For example, the bandwidth control unit 25 determines the result of multiplying the total actual transmission bandwidth by a predetermined coefficient (for example, 0.5) as the target transmission bandwidth. The bandwidth control unit 25 determines the target transmission data amount by multiplying the target transmission bandwidth by a unit time (for example, 10 (ms)) used for calculation of the actual transmission bandwidth (S68).
帯域制御部25は、セッションの集合(S)をセッション管理テーブル13に格納される優先順位の高い順に並べ替える(S70)。続いて、帯域制御部25は、セッションの集合(S)から最高優先度のセッションを示すセッションIDを抽出し、この抽出されたセッションIDをセッションの集合(S)から削除する(S71)。   The bandwidth control unit 25 rearranges the set of sessions (S) in descending order of priority stored in the session management table 13 (S70). Subsequently, the bandwidth control unit 25 extracts the session ID indicating the highest priority session from the session set (S), and deletes the extracted session ID from the session set (S) (S71).
帯域制御部25は、この抽出されたセッションIDに対応するセッションキューへのポインタをセッション管理テーブル13から抽出し、この抽出されたポインタにより特定されるセッションキュー14のパケットを送出するように出力制御器15へ指示する。この指示に応じて、セッションキュー14の先頭パケットがWAN1へ送出され、セッションキュー14から削除される(S72)。   The bandwidth control unit 25 extracts a pointer to the session queue corresponding to the extracted session ID from the session management table 13, and performs output control so as to send a packet of the session queue 14 specified by the extracted pointer. Instruct the device 15. In response to this instruction, the head packet of the session queue 14 is sent to the WAN 1 and deleted from the session queue 14 (S72).
帯域制御部25は、送出されたパケットのパケット長を出力制御器15から受け、このパケット長を累積する(S73)。帯域制御部25は、累積されたパケット長が目標送信データ量よりも大きいか否かを判定する(S74)。帯域制御部25は、累積されたパケット長が目標送信データ量を超えた場合には(S74;YES)、特定されているセッションキュー14に残留しているパケット、及び、その他のセッションの集合(S)に含まれる全セッションのセッションキュー14に残留しているパケットを各セッションキュー14からそれぞれ廃棄する(S75)。   The bandwidth controller 25 receives the packet length of the transmitted packet from the output controller 15 and accumulates this packet length (S73). The bandwidth control unit 25 determines whether or not the accumulated packet length is larger than the target transmission data amount (S74). When the accumulated packet length exceeds the target transmission data amount (S74; YES), the bandwidth control unit 25 collects the packets remaining in the specified session queue 14 and other sessions ( Packets remaining in the session queues 14 of all sessions included in S) are discarded from each session queue 14 (S75).
これにより、実施例1における帯域制御装置10によれば、管理不可能なWAN1を含むエッジノード10から宛先端末までのネットワークにおけるボトルネックリンクを検出することができ、かつ、ボトルネックリンクを利用する全セッションの送信帯域幅を制限することができる。結果、実施例1によれば、セッションの輻輳を解消させることができる。   Thereby, according to the bandwidth control apparatus 10 in the first embodiment, the bottleneck link in the network from the edge node 10 including the unmanageable WAN 1 to the destination terminal can be detected, and the bottleneck link is used. The transmission bandwidth of all sessions can be limited. As a result, according to the first embodiment, it is possible to eliminate session congestion.
なお、帯域制御部25は、累積されたパケット長が目標送信データ量以下である場合には(S74;NO)、特定されているセッションキュー14にパケットが残留しているか否かを判定する(S76)。   When the accumulated packet length is equal to or less than the target transmission data amount (S74; NO), the bandwidth control unit 25 determines whether or not a packet remains in the specified session queue 14 ( S76).
帯域制御部25は、パケットが残留している場合には(S76;NO)、その特定されているセッションキュー14から更にパケットを送出するように出力制御器15へ指示する。この指示に応じて、セッションキュー14から更にパケットがWAN1へ送出される(S72)。一方で、帯域制御部25は、特定されているセッションキュー14にパケットがなくなった場合には(S76;YES)、当該セッションの集合(S)から新たに優先度の高いセッションを示すセッションIDを抽出する(S71)。以降、帯域制御部25は、この新たに抽出されたセッションについて、上述のようなパケット送信処理を行う(S72)。   If the packet remains (S76; NO), the bandwidth control unit 25 instructs the output controller 15 to further send the packet from the specified session queue 14. In response to this instruction, further packets are sent from the session queue 14 to the WAN 1 (S72). On the other hand, when there are no more packets in the specified session queue 14 (S76; YES), the bandwidth control unit 25 newly obtains a session ID indicating a session with a higher priority from the set of sessions (S). Extract (S71). Thereafter, the bandwidth control unit 25 performs the packet transmission process as described above for the newly extracted session (S72).
帯域制御部25は、順次、送出されたパケットのパケット長を累積し(S73)、累積されたパケット長が目標送信データ量以下となるまでパケット送信処理を繰り返す。累積されたパケット長が目標送信データ量以下となる前に、当該セッションの集合(S)に残留するセッションがなくなった場合には(S77;YES)、帯域制御部25は、その他のセッションのパケットを順次送出するように、出力制御器15へ指示する(S78)。以降、通常通り、各セッションのパケットが順次WAN1へ送出される。   The bandwidth control unit 25 sequentially accumulates the packet lengths of the transmitted packets (S73), and repeats the packet transmission process until the accumulated packet length becomes equal to or less than the target transmission data amount. If there is no remaining session in the set of sessions (S) before the accumulated packet length becomes equal to or less than the target transmission data amount (S77; YES), the bandwidth control unit 25 determines the packets of other sessions. Are sequentially sent to the output controller 15 (S78). Thereafter, as usual, packets for each session are sequentially transmitted to WAN1.
〈実施例1の作用及び効果〉
上述したとおり、実施例1における帯域制御装置10では、拠点網2からWAN1方向へ送出すべきパケットが解析されることにより、当該帯域制御装置10で中継される各セッションがセッション管理テーブル13を用いてそれぞれ管理される。各セッションで通信されるパケットは、セッション毎に設けられたセッションキュー14にそれぞれ格納され、各セッションの優先順位等に応じて出力制御器15によりセッションキュー14から順次取り出され、WAN1へ送出される。
<Operation and Effect of Example 1>
As described above, in the bandwidth control device 10 according to the first embodiment, each session relayed by the bandwidth control device 10 uses the session management table 13 by analyzing a packet to be transmitted from the base network 2 in the direction of WAN1. Are managed individually. Packets communicated in each session are respectively stored in a session queue 14 provided for each session, are sequentially taken out from the session queue 14 by the output controller 15 according to the priority order of each session, and sent to the WAN 1. .
応答確認処理部24では、ACKパケットが監視されることにより、各セッションに関し、往復遅延時間、往復遅延時間の重み付け平均された値(平均RTT)、この重み付け平均された応答遅延時間の平均偏差(RTT平均偏差)が取得され、結果として、RTTの増大が検出される。   The response confirmation processing unit 24 monitors the ACK packet, and for each session, the round trip delay time, the weighted average value of the round trip delay time (average RTT), and the average deviation of the weighted average response delay time ( RTT average deviation) is obtained and, as a result, an increase in RTT is detected.
RTTの取り得る値の幅は大きいことからRTT増大の判定は困難であるところ、実施例1における帯域制御装置10によれば、平均偏差を用いることによりRTT増大に基づく正確な輻輳検出を行うことができる。   Since the range of values that RTT can take is large, it is difficult to determine the increase in RTT. However, according to the bandwidth control device 10 in the first embodiment, accurate congestion detection based on the increase in RTT is performed by using the average deviation. Can do.
更に、応答確認処理部24では、ACKパケットの不達が監視されることにより、パケットロス率が取得され、パケットロス率が所定閾値より大きい場合にパケットロス率の増大が検出される。最終的に、RTTの増大及びパケットロス率の増大により、セッションの輻輳が検出される。   Further, the response confirmation processing unit 24 monitors the non-delivery of the ACK packet to obtain the packet loss rate, and detects an increase in the packet loss rate when the packet loss rate is greater than a predetermined threshold. Eventually, session congestion is detected by an increase in RTT and an increase in packet loss rate.
セッションの輻輳が検出されると、このセッションの宛先IPアドレスまでの経路情報がICMPの時間超過メッセージを用いて収集される。結果、この収集された経路情報に含まれるルータ情報及び各ルータのRTTに基づいて、そのセッションの経路上の輻輳を生じさせているリンクがボトルネックリンクとして検出される。   When session congestion is detected, route information to the destination IP address of this session is collected using an ICMP time exceeded message. As a result, based on the router information included in the collected route information and the RTT of each router, a link causing congestion on the route of the session is detected as a bottleneck link.
このように、実施例1によれば、ICMPの時間超過メッセージにより各セッションの経路情報が取得されるため、例え、WAN1が管理外のブラックボックス網であったとし
ても、正確にボトルネックリンクを検出することができる。
As described above, according to the first embodiment, since the route information of each session is acquired by the ICMP time exceeded message, even if WAN1 is an unmanaged black box network, the bottleneck link is accurately set. Can be detected.
また、実施例1では、宛先IPアドレスまでに経由されるルータ情報及び各ルータまでのRTT情報(平均RTT及びRTT平均偏差)がルート情報テーブル26で管理される。また、このルート情報テーブル26に基づいて隣接ルータの組み合わせにより各リンクの情報、及び、各リンクを利用するセッション情報がそれぞれリンク集合テーブル27により管理される。   In the first embodiment, the route information table 26 manages router information passed to the destination IP address and RTT information (average RTT and RTT average deviation) to each router. Further, based on the route information table 26, information of each link and session information using each link are managed by the link set table 27 by a combination of adjacent routers.
これにより、実施例1によれば、ボトルネックリンクが検出された場合に、即座に、そのボトルネックリンクを経路上に含むセッションの集合を取得することができる。この抽出されたセッション集合は、ボトルネックリンクを共有するセッション群であるため、各々の通信が輻輳を生じさせている一因となっている。そこで、この抽出されたセッション群の通信が送信帯域制限される。   Thus, according to the first embodiment, when a bottleneck link is detected, a set of sessions including the bottleneck link on the route can be acquired immediately. Since the extracted session set is a session group sharing the bottleneck link, each communication is a cause of congestion. Therefore, transmission of the extracted session group is limited in transmission bandwidth.
従って、実施例1によれば、或るセッションの輻輳が検出された場合に早急にその原因となっている通信を正確に特定し、原因となる通信のみを対象として輻輳を解消させる帯域制御を行うことができる。実施例1によれば、例え、WAN1が公衆網のような管理対象外のブラックボックス網であったとしてもそのブラックボックス網内の輻輳を回避することができる。   Therefore, according to the first embodiment, when congestion of a certain session is detected, it is possible to quickly specify the communication that is the cause, and to perform bandwidth control that eliminates the congestion only for the cause communication. It can be carried out. According to the first embodiment, even if the WAN 1 is a black box network that is not a management target such as a public network, congestion in the black box network can be avoided.
以下、実施例2における帯域制御装置(エッジノード)について説明する。先に説明した実施例1では、ICMPの時間超過メッセージを用いて各セッションの経路探索が行われ、ボトルネックリンクが検出されていた。実施例2におけるエッジノードは、ICMPの時間超過メッセージを用いず、セッションの帯域制御によりWAN内の輻輳を回避する。実施例2におけるエッジノードを含むWAN通信システムのシステム構成は、図1に示す実施例1と同様とする。以下に説明する実施例2の構成は例示であり、本実施形態は以下の構成に限定されなるものではない。   Hereinafter, the bandwidth control device (edge node) in the second embodiment will be described. In the first embodiment described above, the route search of each session is performed using the ICMP time exceeded message, and the bottleneck link is detected. The edge node in the second embodiment avoids congestion in the WAN by controlling the bandwidth of the session without using the ICMP time exceeded message. The system configuration of the WAN communication system including the edge node in the second embodiment is the same as that of the first embodiment shown in FIG. The configuration of Example 2 described below is an exemplification, and the present embodiment is not limited to the following configuration.
〔装置構成〕
図7は、実施例2におけるエッジノード10の概略構成を示すブロック図である。実施例2におけるエッジノード10は、図7に示すように、実施例1における、経路探索部23、ルート情報テーブル26、及びリンク集合テーブル27に替え、共有検査部71、検査通信部72、及び共有セッションテーブル73を有する。以下、実施例1と異なる点を中心に、各処理部について説明する。
〔Device configuration〕
FIG. 7 is a block diagram illustrating a schematic configuration of the edge node 10 according to the second embodiment. As illustrated in FIG. 7, the edge node 10 in the second embodiment is replaced with the route search unit 23, the route information table 26, and the link set table 27 in the first embodiment, instead of the shared inspection unit 71, the inspection communication unit 72, and A shared session table 73 is included. Hereinafter, each processing unit will be described with a focus on differences from the first embodiment.
セッション解析部12は、新たなセッションを検出した場合、この新たなセッションを示すレコードをセッション管理テーブル13に追加すると共に、共有検査部71にその新たなセッションについての情報を通知する。セッション解析部12は、この通知に応じて、共有検査部71から共有セッションテーブル73へのポインタを受け、このポインタをセッション管理テーブル13の該当レコードの共有情報フィールドに格納する。   When the session analysis unit 12 detects a new session, the session analysis unit 12 adds a record indicating the new session to the session management table 13 and notifies the shared inspection unit 71 of information about the new session. In response to this notification, the session analysis unit 12 receives a pointer to the shared session table 73 from the shared inspection unit 71 and stores this pointer in the shared information field of the corresponding record of the session management table 13.
図8は、実施例2におけるセッション管理テーブルの例を示す図である。図8に示すように、実施例2におけるセッション管理テーブル13は、実施例1における、ルート情報フィールドに替え、共有情報フィールドを有する。共有情報フィールドには、後述する共有セッションテーブル73におけるそのセッションが含まれる共有セッショングループを示すレコードへのポインタが格納される。   FIG. 8 is a diagram illustrating an example of a session management table in the second embodiment. As shown in FIG. 8, the session management table 13 in the second embodiment has a shared information field instead of the route information field in the first embodiment. In the shared information field, a pointer to a record indicating a shared session group including the session in the shared session table 73 described later is stored.
共有検査部71は、セッション解析部12からの指示により、新たに検出されたセッション(以降、新規セッションと表記する)とWAN1内でボトルネックリンクとなり得る
リンクを共有する他のセッションを検査する。WAN1内のボトルネックリンクとなり得るリンクを共有するセッションの集合を共有セッショングループと表記する。
In accordance with an instruction from the session analysis unit 12, the shared inspection unit 71 inspects a newly detected session (hereinafter referred to as a new session) and another session that shares a link that can become a bottleneck link in the WAN 1. A set of sessions sharing a link that can be a bottleneck link in WAN 1 is referred to as a shared session group.
図9は、共有セッショングループを示すイメージ図である。WAN1内には、ルータ等のような複数の中継装置92、93、94及び95が存在する。各中継装置間は、所定の物理帯域幅を持つリンク97、98及び99でそれぞれ接続されている。各リンクは、各セッションを実現するための通信に利用される。リンク97にとっては、セッション91(#2)、91(#3)及び91(#4)が共有セッションとなる。また、リンク98にとっては、セッション91(#2)及び91(#3)が共有セッションとなる。   FIG. 9 is an image diagram showing a shared session group. Within the WAN 1, there are a plurality of relay apparatuses 92, 93, 94 and 95 such as routers. Each relay apparatus is connected by links 97, 98 and 99 having a predetermined physical bandwidth. Each link is used for communication for realizing each session. For link 97, sessions 91 (# 2), 91 (# 3), and 91 (# 4) are shared sessions. For link 98, sessions 91 (# 2) and 91 (# 3) are shared sessions.
ところで、図9では、各リンク97、98及び99を示す各ブロックはその物理帯域幅に応じた大きさでそれぞれ示される。図9の例では、リンク98は物理帯域幅が他のリンクより小さく、かつ、端末90(#2)及び90(#3)のセッション91(#2)及び91(#3)を通している。このような状態で、もし、リンク98に他のセッションが割り当てられた場合、リンク98がボトルネックリンクとなり、輻輳が生じる可能性が高い。ところが、リンク97は、3つのセッション91(#2)、91(#3)及び91(#4)で共有されているものの、物理帯域幅が他のリンクよりも大きいため、他のセッションが追加されたとしても輻輳が生じない可能性もある。図9の例によれば、共有検査部71は、リンク98のようなボトルネックリンクとなり得るリンクを共有するセッション91(#2)及び91(#3)を共有セッショングループと決める。   By the way, in FIG. 9, each block showing each link 97, 98 and 99 is shown in a size corresponding to its physical bandwidth. In the example of FIG. 9, the link 98 has a smaller physical bandwidth than the other links, and passes through the sessions 91 (# 2) and 91 (# 3) of the terminals 90 (# 2) and 90 (# 3). In this state, if another session is assigned to the link 98, the link 98 becomes a bottleneck link, and congestion is likely to occur. However, although the link 97 is shared by the three sessions 91 (# 2), 91 (# 3), and 91 (# 4), the physical bandwidth is larger than the other links, so other sessions are added. Even if it is done, there is a possibility that congestion will not occur. According to the example of FIG. 9, the shared inspection unit 71 determines sessions 91 (# 2) and 91 (# 3) that share a link that can be a bottleneck link such as the link 98 as a shared session group.
共有検査部71により決定された共有セッショングループについての情報は共有セッションテーブル73に格納される。図10は、共有セッションテーブル73の例を示す図である。共有セッションテーブル73の各レコードには、各共有セッショングループについての情報として、ボトルネックリンクとなり得るリンクを共有するセッションのセッションIDのリストがそれぞれ格納される。更に、各レコードでは、各セッションIDがその優先順位毎に区分けされて格納される。共有セッションテーブル73における各セッションの優先順位は、セッション管理テーブル13に格納される優先順位が利用される。各レコードでは、そのグループに含まれる全セッションのうち最高優先順位を持つセッションの1つが代表セッション(図10の下線が引かれたセッション)に設定される。また、各レコードでは、そのグループの最高優先順位がそれぞれ設定される。   Information on the shared session group determined by the shared inspection unit 71 is stored in the shared session table 73. FIG. 10 is a diagram illustrating an example of the shared session table 73. Each record of the shared session table 73 stores, as information about each shared session group, a list of session IDs of sessions sharing a link that can be a bottleneck link. Furthermore, in each record, each session ID is classified and stored for each priority. As the priority order of each session in the shared session table 73, the priority order stored in the session management table 13 is used. In each record, one of the sessions having the highest priority among all sessions included in the group is set as the representative session (the session underlined in FIG. 10). In each record, the highest priority of the group is set.
共有検査部71は、新規セッションの情報を得ると、その新規セッションが共有セッションテーブル73に格納されるいずれの共有セッショングループに属するかを検査する。この検査手法の概念を以下に説明し、詳細については動作例の項において説明する。共有検査部71は、共有セッショングループの代表セッションの送信帯域幅を所定帯域幅小さくし、新規セッションの送信帯域幅をその所定帯域幅分大きくするような送信帯域制御を帯域制御部25に指示する。   When the shared inspection unit 71 obtains information on a new session, it checks which shared session group the new session belongs to is stored in the shared session table 73. The concept of this inspection method will be described below, and the details will be described in the operation example section. The shared inspection unit 71 instructs the bandwidth control unit 25 to perform transmission bandwidth control that reduces the transmission bandwidth of the representative session of the shared session group by a predetermined bandwidth and increases the transmission bandwidth of the new session by the predetermined bandwidth. .
共有検査部71は、この送信帯域制御の開始から所定時間経過後、新規セッションについてRTTの増大及びパケットロス率の増大が生じた場合、その新規セッションがその代表セッションとボトルネックリンクとなり得るリンクを共有しないと判定する。一方で、共有検査部71は、送信帯域制御の開始から所定時間経過しても新規セッションについてRTTの増大等が生じない場合、その新規セッションがその代表セッションとボトルネックリンクとなり得るリンクを共有する、即ち、その代表セッションと同じ共有セッショングループに属すると判定する。当該所定時間は、例えば、RTTの2倍の時間が利用される。共有検査部71は、この判定結果に応じて、共有セッションテーブル73における同じ共有セッショングループを示すレコードにその新規セッションのセッションIDを含める。   When a predetermined time elapses from the start of the transmission bandwidth control and the RTT increases and the packet loss rate increases for the new session, the shared inspection unit 71 sets a link that can be a bottleneck link with the representative session. Determine not to share. On the other hand, if the RTT does not increase for a new session even after a predetermined time has elapsed from the start of transmission bandwidth control, the shared inspection unit 71 shares a link that can be a bottleneck link with the representative session. That is, it is determined that it belongs to the same shared session group as the representative session. As the predetermined time, for example, a time twice as long as RTT is used. In accordance with this determination result, the shared inspection unit 71 includes the session ID of the new session in a record indicating the same shared session group in the shared session table 73.
以下、共有セッショングループに属するか否かの上記判定手法の根拠について説明する。図9の例において、セッション91(#2)が新規セッションであり、セッション91(#3)が代表セッションであると仮定する。この場合、例えば、共有検査部71は、セッション91(#2)の送信帯域幅を100(Mbps)増やし、セッション91(#3)の送信帯域幅を100(Mbps)減らすような送信帯域制御を帯域制御部25に指示する。この例では、セッション91(#2)及び91(#3)の合計送信帯域幅は制御前と制御後とで変わらないため、RTTの増大等が生じない。すなわち、セッション91(#2)及び91(#3)はボトルネックリンク98を共有する同一共有セッショングループと判定することができる。   Hereinafter, the basis of the above determination method for determining whether or not the session belongs to the shared session group will be described. In the example of FIG. 9, it is assumed that session 91 (# 2) is a new session and session 91 (# 3) is a representative session. In this case, for example, the shared inspection unit 71 performs transmission bandwidth control such that the transmission bandwidth of the session 91 (# 2) is increased by 100 (Mbps) and the transmission bandwidth of the session 91 (# 3) is reduced by 100 (Mbps). The bandwidth control unit 25 is instructed. In this example, since the total transmission bandwidth of the sessions 91 (# 2) and 91 (# 3) does not change before and after the control, an increase in RTT does not occur. That is, the sessions 91 (# 2) and 91 (# 3) can be determined as the same shared session group sharing the bottleneck link 98.
一方、セッション91(#2)が新規セッションであり、セッション91(#4)が代表セッションである場合には、送信帯域制御後のセッション91(#2)及び91(#3)の合計送信帯域幅は、制御前よりも100(Mbps)増加することになる。この例では、リンク98で輻輳が生じ、RTTの増大等が発生する。すなわち、セッション91(#2)及び91(#4)はボトルネックリンク98を共有せず、同一共有セッショングループに属さないと判定することができる。   On the other hand, when session 91 (# 2) is a new session and session 91 (# 4) is a representative session, the total transmission bandwidth of sessions 91 (# 2) and 91 (# 3) after transmission bandwidth control The width will increase by 100 (Mbps) from before the control. In this example, congestion occurs in the link 98, and an increase in RTT occurs. That is, it can be determined that the sessions 91 (# 2) and 91 (# 4) do not share the bottleneck link 98 and do not belong to the same shared session group.
つまり、共有検査部71は、送信帯域制御前と送信帯域制御後とで合計送信帯域幅が変わらないか所定帯域幅分増えてしまうかをRTTの増加等で検出することで、共有セッショングループを検査する。ここで、所定帯域幅は、シミュレーション等を繰り返すことにより最適な値に設定されればよく、例えば、新規セッションの実績送信帯域幅の0.5倍の帯域幅に設定される。   That is, the shared inspection unit 71 detects whether the total transmission bandwidth does not change before transmission bandwidth control and after transmission bandwidth control or increases by a predetermined bandwidth by increasing the RTT, etc. inspect. Here, the predetermined bandwidth may be set to an optimum value by repeating simulation or the like. For example, the predetermined bandwidth is set to 0.5 times the actual transmission bandwidth of the new session.
上述のような送信帯域制御に関しては、共有検査部71は、具体的には、新規セッション及び代表セッションの各送信帯域幅を検査用帯域幅として指定することにより、帯域制御部25にその送信帯域制御を依頼する。帯域制御部25は、この指定に基づいて、新規セッション及び代表セッションの各送信帯域幅が検査用帯域幅となるように、出力制御器15を制御する。帯域制御部25は、セッション管理テーブル13の実績送信帯域幅フィールドを監視し、代表セッションの実績送信帯域幅が指定の検査用帯域幅を越えた場合に、代表セッションが格納されるセッションキュー14からの取り出しを停止するよう出力制御器15に指示する。一方で、帯域制御部25は、新規セッションの実績送信帯域幅が指定の検査用帯域幅より小さい場合には、検査通信部72に検査用のダミーパケットを指定の検査用帯域幅に満たない量分送信するように指示する。   Regarding the transmission bandwidth control as described above, the shared inspection unit 71 specifically designates the transmission bandwidths of the new session and the representative session as the inspection bandwidths, thereby allowing the bandwidth control unit 25 to transmit the transmission bandwidths. Request control. Based on this designation, the bandwidth control unit 25 controls the output controller 15 so that the transmission bandwidths of the new session and the representative session become the inspection bandwidth. The bandwidth control unit 25 monitors the actual transmission bandwidth field of the session management table 13, and when the actual transmission bandwidth of the representative session exceeds the designated inspection bandwidth, the bandwidth control unit 25 starts from the session queue 14 in which the representative session is stored. The output controller 15 is instructed to stop taking out. On the other hand, when the actual transmission bandwidth of the new session is smaller than the designated inspection bandwidth, the bandwidth control unit 25 causes the inspection communication unit 72 to include an inspection dummy packet that is less than the designated inspection bandwidth. Instruct to send minutes.
また、帯域制御部25は、応答確認処理部24から輻輳の発生の通知を受けた場合の処理が実施例1と異なる。帯域制御部25は、輻輳発生の通知を受けると、共有セッションテーブル73からその通知の対象となるセッションIDを含む共有セッショングループについての情報を抽出する。帯域制御部25は、抽出された共有セッショングループを帯域幅制限対象として、実施例1と同様の手法によりその共有セッショングループに含まれるセッションの送信帯域幅を制限する。   Further, the bandwidth control unit 25 is different from the first embodiment in the processing when receiving a notification of occurrence of congestion from the response confirmation processing unit 24. When the bandwidth control unit 25 receives the notification of occurrence of congestion, the bandwidth control unit 25 extracts information on the shared session group including the session ID to be notified from the shared session table 73. The bandwidth control unit 25 limits the transmission bandwidth of a session included in the shared session group using the extracted shared session group as a bandwidth limitation target by the same method as in the first embodiment.
上述のような共有セッショングループの検査中においては、セッション管理テーブル13にはその検査対象である新規セッションを示すレコードが格納されているが、共有セッションテーブル73にはその新規セッションを示すセッションIDが格納されていない。帯域制御部25は、輻輳発生の通知の対象となるセッションIDが共有セッションテーブル73に含まれていない場合には、共有セッショングループの検査中と判断し、このセッションIDと共に輻輳の発生を共有検査部71に通知する。   During the inspection of the shared session group as described above, the session management table 13 stores a record indicating the new session to be inspected, but the shared session table 73 has a session ID indicating the new session. Not stored. If the session ID to be notified of congestion occurrence is not included in the shared session table 73, the bandwidth control unit 25 determines that the shared session group is being inspected, and the occurrence of congestion together with this session ID is shared. Notification to the unit 71.
検査通信部72は、帯域制御部25からの指示により、指定された帯域幅分の検査用ダミーパケットを生成し、出力制御器15へ送る。以降、この検査用ダミーパケットを単に
検査パケットと表記する。検査パケットには、例えば、宛先ポート番号フィールドに廃棄(DISCARD)ポート(ポート番号=9)が設定され、宛先IPアドレスフィールドに当該
新たなセッションの宛先IPアドレスが設定されたUDPの廃棄パケットが利用される。
The inspection communication unit 72 generates an inspection dummy packet for the designated bandwidth in accordance with an instruction from the bandwidth control unit 25 and sends the inspection dummy packet to the output controller 15. Hereinafter, this inspection dummy packet is simply referred to as an inspection packet. The inspection packet uses, for example, a UDP discard packet in which a discard (DISCARD) port (port number = 9) is set in the destination port number field and the destination IP address of the new session is set in the destination IP address field. Is done.
[動作例]
以下、実施例2における帯域制御装置の動作例について図11及び図12を用いて説明する。
[Operation example]
Hereinafter, an operation example of the bandwidth control apparatus according to the second embodiment will be described with reference to FIGS. 11 and 12.
図11は、実施例2における共有セッショングループの検査の動作例を示すフローチャートである。セッション解析部12は、拠点側受信部11で受信されたパケットの解析結果に基づいて、この受信パケットに応じて識別されたセッションがセッション管理テーブル13で既に管理されているか否かを判定する。セッション解析部12は、当該セッションがセッション管理テーブル13に未だ格納されていない場合、当該セッションが新規セッションであると判定する(S101)。図11では、このセッション解析部12で検出された新規セッションを新規セッション(i)と表記している。セッション解析部12は、この新規セッションを示すレコードをセッション管理テーブル13に追加すると共に、共有検査部71にその新規セッションについての情報を通知する。   FIG. 11 is a flowchart illustrating an operation example of the shared session group inspection according to the second embodiment. The session analysis unit 12 determines whether or not the session identified according to the received packet is already managed in the session management table 13 based on the analysis result of the packet received by the base side reception unit 11. When the session is not yet stored in the session management table 13, the session analysis unit 12 determines that the session is a new session (S101). In FIG. 11, the new session detected by the session analysis unit 12 is represented as a new session (i). The session analysis unit 12 adds a record indicating the new session to the session management table 13 and notifies the shared inspection unit 71 of information about the new session.
共有検査部71は、新規セッションの情報を得ると、共有セッションテーブル73に格納されるレコードのうち優先度が高い共有セッショングループを示すレコードから順に選択する(S102)。共有検査部71は、選択された共有セッショングループの代表セッションを共有セッションテーブル73から抽出する(S103)。図11では、この抽出された代表セッションを代表セッション(j)と表記している。   When the shared inspection unit 71 obtains information on the new session, the shared inspection unit 71 selects the records stored in the shared session table 73 in order from the record indicating the shared session group having the highest priority (S102). The shared inspection unit 71 extracts the representative session of the selected shared session group from the shared session table 73 (S103). In FIG. 11, this extracted representative session is represented as a representative session (j).
共有検査部71は、新規セッション(i)と代表セッション(j)とがボトルネックリンクとなり得るリンクを共有しているか否かを以下のように検査する。共有検査部71は、代表セッション(j)の検査用帯域幅(J)と、新規セッション(i)の検査用帯域幅(I)と、を決定する。具体的には、共有検査部71は、代表セッション(j)の実績送信帯域幅から新規セッション(i)の実績送信帯域幅に検査係数を乗算した値を減算した値を代表セッション(j)の検査用帯域幅(J)に決定する(S104)。図11の例では、検査係数を0.5に設定する。共有検査部71は、新規セッション(i)の実績送信帯域幅に新規セッション(i)の実績送信帯域幅に検査係数を乗算した値を加算した値を新規セッション(i)の検査用帯域幅(I)に決定する(S105)。各セッションの実績送信帯域幅は、セッション管理テーブル13の該当レコードの実績送信帯域幅フィールドからそれぞれ抽出される。   The sharing checking unit 71 checks whether the new session (i) and the representative session (j) share a link that can be a bottleneck link as follows. The shared inspection unit 71 determines the inspection bandwidth (J) of the representative session (j) and the inspection bandwidth (I) of the new session (i). Specifically, the shared inspection unit 71 subtracts a value obtained by subtracting a value obtained by multiplying the actual transmission bandwidth of the new session (i) by the inspection coefficient from the actual transmission bandwidth of the representative session (j). The inspection bandwidth (J) is determined (S104). In the example of FIG. 11, the inspection coefficient is set to 0.5. The shared inspection unit 71 adds a value obtained by adding a value obtained by multiplying the actual transmission bandwidth of the new session (i) to the actual transmission bandwidth of the new session (i) to the inspection bandwidth ( I) is determined (S105). The actual transmission bandwidth of each session is extracted from the actual transmission bandwidth field of the corresponding record in the session management table 13.
共有検査部71は、新規セッション(i)及び代表セッション(j)の各検査用帯域幅(I)及び(J)と共に、送信帯域制御要求を帯域制御部25に送る(S106)。帯域制御部25は、新規セッション(i)及び代表セッション(j)がそれぞれ各検査用帯域幅(I)及び(J)で送信されるように出力制御器15を制御する。具体的には、帯域制御部25は、セッション管理テーブル13に格納される代表セッション(j)の実績送信帯域幅が検査用帯域幅(J)を越える場合には、代表セッション(j)が格納されるセッションキュー14からの取り出しを停止するよう出力制御器15に指示する。これにより、帯域幅が制限された代表セッション(j)のパケットは、検査用帯域幅(J)を超えないようにセクションキュー14から取り出され、送信される。   The shared inspection unit 71 sends a transmission bandwidth control request to the bandwidth control unit 25 together with the inspection bandwidths (I) and (J) of the new session (i) and the representative session (j) (S106). The bandwidth control unit 25 controls the output controller 15 so that the new session (i) and the representative session (j) are transmitted with the inspection bandwidths (I) and (J), respectively. Specifically, the bandwidth control unit 25 stores the representative session (j) when the actual transmission bandwidth of the representative session (j) stored in the session management table 13 exceeds the inspection bandwidth (J). The output controller 15 is instructed to stop the removal from the session queue 14 to be executed. Thereby, the packet of the representative session (j) whose bandwidth is limited is taken out from the section queue 14 and transmitted so as not to exceed the inspection bandwidth (J).
一方で、帯域制御部25は、新規セッション(i)の実績送信帯域幅が検査用帯域幅(H)より小さい場合には(S107;YES)、検査用帯域幅(H)から実績送信帯域幅を引いた帯域幅の情報と共に、検査パケットの送信を検査通信部72に依頼する。   On the other hand, when the actual transmission bandwidth of the new session (i) is smaller than the inspection bandwidth (H) (S107; YES), the bandwidth control unit 25 calculates the actual transmission bandwidth from the inspection bandwidth (H). The inspection communication unit 72 is requested to transmit the inspection packet together with the bandwidth information obtained by subtracting.
検査通信部72は、帯域制御部25からの依頼により、新規セッション(i)と同一宛先のUDPの廃棄パケットを生成し、その廃棄パケットを検査用帯域幅に満たない量分、出力制御器15へ送る(S108)。   In response to a request from the bandwidth control unit 25, the inspection communication unit 72 generates a UDP discard packet having the same destination as that of the new session (i), and the output controller 15 outputs an amount of the discarded packet that does not satisfy the inspection bandwidth. (S108).
応答確認処理部24は、セッション管理テーブル13に基づいて実施例1と同様にRTTの増大やパケットロス率を監視することにより、各セッションにおいて輻輳が発生しているか否かを判定する。帯域制御部25は、応答確認処理部24から輻輳発生の通知を受けると、共有セッションテーブル73にその通知の対象となるセッションIDが格納されているか否かを判定する。このセッションIDが新規セッション(i)のセッションIDである場合には、このセッションIDは共有セッションテーブル73には格納されていない。この場合、帯域制御部25は、共有セッショングループ検査中と判断し、新規セッション(i)のセッションIDと共に、輻輳発生の通知を共有検査部71に送る。   The response confirmation processing unit 24 determines whether congestion has occurred in each session by monitoring the RTT increase and the packet loss rate based on the session management table 13 as in the first embodiment. When the bandwidth control unit 25 receives a notification of the occurrence of congestion from the response confirmation processing unit 24, the bandwidth control unit 25 determines whether or not the shared session table 73 stores a session ID that is a target of the notification. When this session ID is the session ID of the new session (i), this session ID is not stored in the shared session table 73. In this case, the bandwidth control unit 25 determines that the shared session group check is in progress, and sends a congestion occurrence notification to the shared check unit 71 together with the session ID of the new session (i).
共有検査部71は、この輻輳発生の通知及びセッションIDを受けると、そのセッションIDの共有セッショングループ検査の開始から所定時間(2×RTT時間)経過しているか否かを判定する。共有検査部71は、検査の開始から所定時間経過している場合には、新規セッション(i)で輻輳発生と判断し(S110;YES)、新規セッション(i)と代表セッション(j)とは同一共有セッショングループに属さないと判定する(S112)。   When receiving the notification of occurrence of congestion and the session ID, the shared inspection unit 71 determines whether or not a predetermined time (2 × RTT time) has elapsed since the start of the shared session group inspection for the session ID. If a predetermined time has elapsed from the start of the inspection, the shared inspection unit 71 determines that congestion has occurred in the new session (i) (S110; YES), and the new session (i) and the representative session (j) are It is determined that they do not belong to the same shared session group (S112).
一方で、共有検査部71は、検査の開始から所定時間経過しても輻輳発生の通知を受領しない場合には、新規セッション(i)で輻輳発生しないと判断する(S110)。共有検査部71は、新規セッション(i)で輻輳発生しないと判断すると(S110;NO)、新規セッション(i)と代表セッション(j)とは同一共有セッショングループに属すると判定する(S111)。   On the other hand, if the shared inspection unit 71 does not receive a notification of occurrence of congestion even after a predetermined time has elapsed from the start of the inspection, it determines that congestion does not occur in the new session (i) (S110). When the shared inspection unit 71 determines that congestion does not occur in the new session (i) (S110; NO), it determines that the new session (i) and the representative session (j) belong to the same shared session group (S111).
共有検査部71は、新規セッション(i)と代表セッション(j)とは同一共有セッショングループに属すると判定すると、共有セッションテーブル73におけるその代表セッション(j)が属する共有セッショングループのレコードに、新規セッション(i)のセッションIDを追加する。共有検査部71は、共有セッションテーブル73に他の共有セッショングループの存在を確認する(S113)。共有検査部71は、他の共有セッショングループがない場合には(S113;NO)、処理を終了する。一方で、共有検査部71は、他の共有セッショングループがある場合には(S113;YES)、共有セッションテーブル73から次に優先度が高い共有セッショングループを示すレコードを選択する(S102)。以降、新たに選択された共有セッショングループについて上述と同様の処理が実行される。   When the shared inspection unit 71 determines that the new session (i) and the representative session (j) belong to the same shared session group, the shared inspection unit 71 adds a new record to the shared session group record to which the representative session (j) belongs. Add a session ID for session (i). The shared inspection unit 71 confirms the presence of another shared session group in the shared session table 73 (S113). If there is no other shared session group (S113; NO), the shared inspection unit 71 ends the process. On the other hand, when there is another shared session group (S113; YES), the shared inspection unit 71 selects a record indicating the shared session group with the next highest priority from the shared session table 73 (S102). Thereafter, the same processing as described above is executed for the newly selected shared session group.
図12は、実施例2における送信帯域制御の動作例を示すフローチャートである。実施例2における送信帯域制御は、図6A及び図6Bに示す実施例1と、セッションの集合(S)の取得の仕方が異なり、その他の処理は実施例1と同様である。   FIG. 12 is a flowchart illustrating an operation example of transmission bandwidth control in the second embodiment. The transmission bandwidth control in the second embodiment is different from the first embodiment shown in FIGS. 6A and 6B in the way of acquiring a set of sessions (S), and other processes are the same as those in the first embodiment.
実施例1と同様に、応答確認処理部24においてセッションの輻輳発生が検出される(S61)。帯域制御部25は、セッションIDと共にセッションの輻輳発生の通知を受けると、セッション管理テーブル13の共有情報フィールドに格納されている共有セッションテーブルへのポインタを取得する。帯域制御部25は、この取得されたポインタにより共有セッションテーブル73の該当レコードを特定する。この特定されたレコードは、対象セッションが含まれる共有セッショングループを示すレコードである。   As in the first embodiment, the response confirmation processing unit 24 detects the occurrence of session congestion (S61). When the bandwidth control unit 25 receives a notification of occurrence of session congestion together with the session ID, the bandwidth control unit 25 acquires a pointer to the shared session table stored in the shared information field of the session management table 13. The bandwidth control unit 25 identifies the corresponding record in the shared session table 73 using the acquired pointer. This specified record is a record indicating a shared session group including the target session.
帯域制御部25は、共有セッションテーブル73において特定されたレコードに含まれるセッションの集合(S)を主とする(S122)。以降、実施例1と同様の手法により
、送信帯域制御が実行される(S66以降)。
The bandwidth control unit 25 mainly uses a set of sessions (S) included in the record specified in the shared session table 73 (S122). Thereafter, transmission band control is executed by the same method as in the first embodiment (S66 and after).
〈実施例2の作用及び効果〉
実施例2における帯域制御装置10では、拠点網2からWAN1方向へ送出すべきパケットを解析することにより、新規セッションが検出されると、共有検査部71によりこの新規セッションとWAN1内でボトルネックリンクとなり得るリンクを共有する他のセッションが検査される。この検査では、ICMPの時間超過メッセージを用いることなく、セッションの帯域制御によりWAN1内のボトルネックリンクとなり得るリンクを共有するセッションの集合が特定される。
<Operation and Effect of Example 2>
In the bandwidth control apparatus 10 according to the second embodiment, when a new session is detected by analyzing a packet to be transmitted from the base network 2 in the WAN1 direction, the shared inspection unit 71 causes a bottleneck link in the new session and WAN1. Other sessions sharing possible links are examined. In this inspection, a set of sessions sharing a link that can be a bottleneck link in the WAN 1 is specified by controlling the bandwidth of the session without using an ICMP time exceeded message.
これにより、実施例2によれば、ICMPの時間超過メッセージに対応しない中継装置がWAN1内に含まれていた場合であっても、ボトルネックリンクとなり得るリンクを共有するセッションの集合を適切に特定することができる。   Thus, according to the second embodiment, even if the WAN 1 includes a relay device that does not support the ICMP time over message, a set of sessions sharing a link that can be a bottleneck link is appropriately identified. can do.
また、実施例2では、新規セッションが検出された際にその新規セッションとボトルネックリンクとなり得るリンクを共有するセッションの集合が、取得され、共有セッションテーブル73に格納される。   In the second embodiment, when a new session is detected, a set of sessions sharing a link that can be a bottleneck link with the new session is acquired and stored in the shared session table 73.
これにより、実施例2によれば、輻輳が発生したセッションが検出された場合に早急にその原因となっている通信を正確に特定し、原因となる通信のみを対象として輻輳を解消させる帯域制御を行うことができる。実施例2によれば、例え、WAN1が公衆網のような管理対象外のブラックボックス網であり、かつ、WAN1内の中継装置がICMPの時間超過メッセージに対応していない場合であったとしても、WAN1内の輻輳を回避することができる。   Thus, according to the second embodiment, when a session in which congestion has occurred is detected, the communication that causes it quickly is accurately identified, and the bandwidth control that eliminates the congestion only for the cause communication It can be performed. According to the second embodiment, even if WAN1 is an unmanaged black box network such as a public network and the relay device in WAN1 does not support the ICMP time over message. , Congestion in WAN 1 can be avoided.
[補足]
上述の実施例1及び2では、応答確認処理部24がACKパケットを監視することで、輻輳の発生したセッションを特定していた。つまり、応答確認処理部24において輻輳発生を検出し得るセッションはTCPセッションである。ところが、セッション管理テーブル13、ルート情報テーブル26、リンク集合テーブル27、及び共有セッションテーブル73で管理されるセッションは、TCPセッションに限定されない。これにより、輻輳発生が検出されたTCPセッションとボトルネックリンクを共有するTCPセッション以外のセッション(例えばUDPセッション)も当然に送信帯域幅が制限される対象となり得る。また、実施例2では、新規セッションがTCP以外のセッションである場合であっても、帯域制御により共有セッショングループの検査が行われる。
[Supplement]
In the above-described first and second embodiments, the response confirmation processing unit 24 monitors the ACK packet to identify a session in which congestion has occurred. That is, the session that can detect the occurrence of congestion in the response confirmation processing unit 24 is a TCP session. However, the sessions managed by the session management table 13, the route information table 26, the link set table 27, and the shared session table 73 are not limited to TCP sessions. Accordingly, a session other than a TCP session that shares a bottleneck link with a TCP session in which congestion has been detected (for example, a UDP session) can naturally be a target whose transmission bandwidth is limited. In the second embodiment, the shared session group is inspected by bandwidth control even when the new session is a session other than TCP.
[その他]
〈ハードウェアの構成要素(Component)及びソフトウェアの構成要素(Component)について〉
ハードウェアの構成要素とは、ハードウェア回路であり、例えば、フィールド・プログラマブル・ゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、ゲートアレイ、論理ゲートの組み合わせ、信号処理回路、アナログ回路等がある。
[Others]
<About hardware components (Component) and software components (Component)>
A hardware component is a hardware circuit, for example, a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a gate array, a combination of logic gates, a signal processing circuit, an analog circuit, etc. There is.
ソフトウェアの構成要素とは、ソフトウェアとして上記処理を実現する部品(断片)であり、そのソフトウェアを実現する言語、開発環境等を限定する概念ではない。ソフトウェアの構成要素としては、例えば、タスク、プロセス、スレッド、ドライバ、ファームウェア、データベース、テーブル、関数、プロシジャ、サブルーチン、プログラムコードの所定の部分、データ構造、配列、変数、パラメータ等がある。これらソフトウェアの構成要素は、コンピュータ内において、1又は複数のメモリ上で実現されるか、或いは、1又は複数のメモリ上のデータが1又は複数のプロセッサ(例えば、CPU(Central Proces
sing Unit)、DSP(Digital Signal Processor)等)で実行されることにより実現さ
れる。
A software component is a component (fragment) that realizes the above processing as software, and is not a concept that limits a language, a development environment, and the like that realize the software. Examples of software components include tasks, processes, threads, drivers, firmware, databases, tables, functions, procedures, subroutines, predetermined portions of program code, data structures, arrays, variables, parameters, and the like. These software components are realized in one or a plurality of memories in a computer, or data in one or a plurality of memories is stored in one or a plurality of processors (for example, a CPU (Central Processes).
sing Unit), DSP (Digital Signal Processor), etc.).
なお、上述の各実施形態は、上記各処理部の実現手法を限定するものではない。上記各処理部は、上記ハードウェアの構成要素又はソフトウェアの構成要素若しくはこれらの組み合わせとして、本技術分野の通常の技術者において実現可能な手法により構成されていればよい。   In addition, each above-mentioned embodiment does not limit the realization method of each said process part. Each processing unit may be configured as a hardware component, a software component, or a combination thereof by a method that can be realized by a normal engineer in this technical field.
〈付記〉
以上の本実施形態に関し、更に以下の付記を開示する。各項に開示される態様は、必要に応じて可能な限り組み合わせることができる。
(付記1)
第1網から第2網へパケットの中継を行う中継装置において、
前記第1網から前記第2網へ中継される各パケットに設定されている少なくとも宛先アドレス及び送信元アドレスでそれぞれ特定される複数の通信単位のうち、輻輳の生じた通信単位を検出する輻輳検出手段と、
前記複数の通信単位のうち、前記輻輳検出手段で検出された輻輳の生じた通信単位との間で前記第2網内の少なくとも1つの特定リンクを共有する他の通信単位を特定する特定手段と、
前記複数の通信単位のうち、前記特定手段により特定された他の通信単位及び前記輻輳の生じた通信単位の前記第2網への送信帯域を制限する帯域制御手段と、
を備えることを特徴とする中継装置。
(付記2)
前記輻輳の生じた通信単位の経路情報を収集する収集手段と、
前記収集手段により収集された経路情報に応じて、前記輻輳の生じた通信単位の経路に含まれるボトルネックリンクを検出する検出手段と、
を更に備え、
前記特定手段は、前記検出手段により検出されたボトルネックリンクを前記少なくとも1つの特定リンクとして共有する他の通信単位を特定する、
ことを特徴とする付記1に記載の中継装置。
(付記3)
前記収集手段は、前記複数の通信単位の宛先アドレス毎の経路情報をそれぞれ収集し、
前記特定手段は、前記収集手段により収集された前記複数の通信単位の経路情報に基づいて、該経路情報に含まれるリンク毎に該リンクを利用する通信単位の集合情報をそれぞれ記憶する記憶手段を含む、
ことを特徴とする付記1又は2に記載の中継装置。
(付記4)
前記輻輳検出手段は、往復遅延時間の平均値及び往復遅延時間の平均偏差を用いて各通信単位の往復遅延時間が増大しているか否かを判定し、輻輳の生じたセッションを特定するために該往復遅延時間の増大の判定結果を用いることを特徴とする付記1から3のいずれか1つに記載の中継装置。
(付記5)
前記複数の通信単位のうちの2つの通信単位において、一方の通信単位の送信帯域幅を所定帯域幅分増やし、かつ、他方の通信単位の送信帯域幅を該所定帯域幅分減らすような帯域制御を前記帯域制御手段に実行させ、該帯域制御の後の該一方の通信単位の通信状態に応じて、該一方の通信単位と該他方の通信単位とが前記第2網内の少なくとも1つの特定リンクを共有するか否かを判定する判定手段、
を更に備えることを特徴とする付記1に記載の中継装置。
(付記6)
前記判定手段による判定結果に基づいて、前記第2網内において少なくとも1つの特定
リンクを共有する通信単位の集合に関する情報を記憶する記憶手段、
を更に備える付記5に記載の中継装置。
(付記7)
第1網から第2網へパケットの中継を行う中継装置で実行される帯域制御方法において、
前記第1網から前記第2網へ中継される各パケットに設定されている少なくとも宛先アドレス及び送信元アドレスでそれぞれ特定される複数の通信単位のうち、輻輳の生じた通信単位を検出するステップと、
前記複数の通信単位のうち、前記検出された輻輳の生じた通信単位との間で前記第2網内の少なくとも1つの特定リンクを共有する他の通信単位を特定するステップと、
前記複数の通信単位のうち、前記特定された他の通信単位及び前記輻輳の生じた通信単位の前記第2網への送信帯域を制限するステップと、
を含むことを特徴とする帯域制御方法。
<Appendix>
Regarding the above-described embodiment, the following additional notes are disclosed. The aspects disclosed in each section can be combined as much as possible as necessary.
(Appendix 1)
In a relay device that relays packets from the first network to the second network,
Congestion detection for detecting a communication unit in which congestion occurs among a plurality of communication units specified by at least a destination address and a transmission source address set in each packet relayed from the first network to the second network Means,
A specifying unit that specifies, among the plurality of communication units, another communication unit that shares at least one specific link in the second network with the communication unit in which congestion is detected detected by the congestion detection unit; ,
Band control means for limiting the transmission band to the second network of the other communication units specified by the specifying means and the communication units in which the congestion occurs among the plurality of communication units;
A relay device comprising:
(Appendix 2)
A collecting means for collecting route information of the communication unit in which the congestion occurs;
Detecting means for detecting a bottleneck link included in the path of the communication unit in which the congestion occurs, according to the path information collected by the collecting means;
Further comprising
The specifying unit specifies another communication unit that shares the bottleneck link detected by the detecting unit as the at least one specific link;
The relay device according to Supplementary Note 1, wherein:
(Appendix 3)
The collection means collects route information for each destination address of the plurality of communication units,
The specifying means includes storage means for storing, on the basis of the path information of the plurality of communication units collected by the collecting means, each set of communication units using the link for each link included in the path information. Including,
The relay device according to appendix 1 or 2, characterized in that.
(Appendix 4)
The congestion detection means determines whether or not the round trip delay time of each communication unit has increased using the average value of the round trip delay time and the average deviation of the round trip delay time, and identifies the session in which the congestion has occurred The relay apparatus according to any one of appendices 1 to 3, wherein the determination result of the increase in the round-trip delay time is used.
(Appendix 5)
Band control for increasing the transmission bandwidth of one communication unit by a predetermined bandwidth and reducing the transmission bandwidth of the other communication unit by the predetermined bandwidth in two communication units of the plurality of communication units And the one communication unit and the other communication unit are at least one specified in the second network according to a communication state of the one communication unit after the band control. Determining means for determining whether or not to share the link;
The relay device according to appendix 1, further comprising:
(Appendix 6)
Storage means for storing information on a set of communication units sharing at least one specific link in the second network based on a determination result by the determination means;
The relay device according to appendix 5, further comprising:
(Appendix 7)
In a bandwidth control method executed by a relay device that relays packets from the first network to the second network,
Detecting a communication unit in which congestion occurs among a plurality of communication units respectively specified by at least a destination address and a source address set in each packet relayed from the first network to the second network; ,
Identifying another communication unit sharing at least one specific link in the second network with the detected communication unit among the plurality of communication units;
Limiting the transmission bandwidth to the second network of the identified other communication unit and the communication unit in which the congestion has occurred among the plurality of communication units;
A bandwidth control method comprising:
1 WAN
2、3、4 拠点網
10 帯域制御装置(エッジノード)
11 拠点側受信部
12 セッション解析部
13 セッション管理テーブル
14 セッションキュー
15 出力制御器
16 WAN側送信部
21 WAN側受信部
22 パケット解析部
23 経路探索部
24 応答確認処理部
25 帯域制御部
26 ルート情報テーブル
27 リンク集合テーブル
28 拠点側送信部
71 共有検査部
72 検査通信部
73 共有セッションテーブル
1 WAN
2, 3, 4 Base network 10 Bandwidth control device (edge node)
DESCRIPTION OF SYMBOLS 11 Base side receiving part 12 Session analysis part 13 Session management table 14 Session queue 15 Output controller 16 WAN side transmission part 21 WAN side receiving part 22 Packet analysis part 23 Path search part 24 Response confirmation processing part 25 Band control part 26 Route information Table 27 Link set table 28 Base side transmission unit 71 Shared inspection unit 72 Inspection communication unit 73 Shared session table

Claims (4)

  1. 第1網から第2網へパケットの中継を行う中継装置において、
    前記第1網から前記第2網へ中継される各パケットに設定されている少なくとも宛先アドレス及び送信元アドレスでそれぞれ特定される複数の通信単位のうち、輻輳の生じた通信単位を検出する輻輳検出手段と、
    前記複数の通信単位のうち、前記輻輳検出手段で検出された輻輳の生じた通信単位との間で前記第2網内の少なくとも1つの特定リンクを共有する他の通信単位を特定する特定手段と、
    前記複数の通信単位のうち、前記特定手段により特定された他の通信単位及び前記輻輳の生じた通信単位の前記第2網への送信帯域を制限する帯域制御手段と、
    前記複数の通信単位のうちの2つの通信単位において、一方の通信単位の送信帯域幅を所定帯域幅分増やし、かつ、他方の通信単位の送信帯域幅を該所定帯域幅分減らすような帯域制御を前記帯域制御手段に実行させ、該帯域制御の後の該一方の通信単位の通信状態に応じて、該一方の通信単位と該他方の通信単位とが前記第2網内の少なくとも1つの特定リンクを共有するか否かを判定する判定手段と、
    を備えることを特徴とする中継装置。
    In a relay device that relays packets from the first network to the second network,
    Congestion detection for detecting a communication unit in which congestion occurs among a plurality of communication units specified by at least a destination address and a transmission source address set in each packet relayed from the first network to the second network Means,
    A specifying unit that specifies, among the plurality of communication units, another communication unit that shares at least one specific link in the second network with the communication unit in which congestion is detected detected by the congestion detection unit; ,
    Band control means for limiting the transmission band to the second network of the other communication units specified by the specifying means and the communication units in which the congestion occurs among the plurality of communication units;
    Band control for increasing the transmission bandwidth of one communication unit by a predetermined bandwidth and reducing the transmission bandwidth of the other communication unit by the predetermined bandwidth in two communication units of the plurality of communication units And the one communication unit and the other communication unit are at least one specified in the second network according to a communication state of the one communication unit after the band control. Determining means for determining whether or not to share the link;
    A relay device comprising:
  2. 前記輻輳の生じた通信単位の経路情報を収集する収集手段と、
    前記収集手段により収集された経路情報に応じて、前記輻輳の生じた通信単位の経路に含まれるボトルネックリンクを検出する検出手段と、
    を更に備え、
    前記特定手段は、前記検出手段により検出されたボトルネックリンクを前記少なくとも1つの特定リンクとして共有する他の通信単位を特定する、
    ことを特徴とする請求項1に記載の中継装置。
    A collecting means for collecting route information of the communication unit in which the congestion occurs;
    Detecting means for detecting a bottleneck link included in the path of the communication unit in which the congestion occurs, according to the path information collected by the collecting means;
    Further comprising
    The specifying unit specifies another communication unit that shares the bottleneck link detected by the detecting unit as the at least one specific link;
    The relay apparatus according to claim 1.
  3. 前記収集手段は、前記複数の通信単位の宛先アドレス毎の経路情報をそれぞれ収集し、
    前記特定手段は、前記収集手段により収集された前記複数の通信単位の経路情報に基づいて、該経路情報に含まれるリンク毎に該リンクを利用する通信単位の集合情報をそれぞれ記憶する記憶手段を含む、
    ことを特徴とする請求項2に記載の中継装置。
    The collection means collects route information for each destination address of the plurality of communication units,
    The specifying means includes storage means for storing, on the basis of the path information of the plurality of communication units collected by the collecting means, each set of communication units using the link for each link included in the path information. Including,
    The relay apparatus according to claim 2 .
  4. 第1網から第2網へパケットの中継を行う中継装置で実行される帯域制御方法において、
    前記第1網から前記第2網へ中継される各パケットに設定されている少なくとも宛先アドレス及び送信元アドレスでそれぞれ特定される複数の通信単位のうち、輻輳の生じた通信単位を検出するステップと、
    前記複数の通信単位のうち、前記検出された輻輳の生じた通信単位との間で前記第2網内の少なくとも1つの特定リンクを共有する他の通信単位を特定するステップと、
    前記複数の通信単位のうち、前記特定された他の通信単位及び前記輻輳の生じた通信単位の前記第2網への送信帯域を制限するステップと、
    前記複数の通信単位のうちの2つの通信単位において、一方の通信単位の送信帯域幅を所定帯域幅分増やし、かつ、他方の通信単位の送信帯域幅を該所定帯域幅分減らすような帯域制御を実行させ、該帯域制御の後の該一方の通信単位の通信状態に応じて、該一方の通信単位と該他方の通信単位とが前記第2網内の少なくとも1つの特定リンクを共有するか否かを判定するステップと、
    を含むことを特徴とする帯域制御方法。
    In a bandwidth control method executed by a relay device that relays packets from the first network to the second network,
    Detecting a communication unit in which congestion occurs among a plurality of communication units respectively specified by at least a destination address and a source address set in each packet relayed from the first network to the second network; ,
    Identifying another communication unit sharing at least one specific link in the second network with the detected communication unit among the plurality of communication units;
    Limiting the transmission bandwidth to the second network of the identified other communication unit and the communication unit in which the congestion has occurred among the plurality of communication units;
    Band control for increasing the transmission bandwidth of one communication unit by a predetermined bandwidth and reducing the transmission bandwidth of the other communication unit by the predetermined bandwidth in two communication units of the plurality of communication units Whether the one communication unit and the other communication unit share at least one specific link in the second network according to the communication state of the one communication unit after the bandwidth control. Determining whether or not,
    A bandwidth control method comprising:
JP2010009375A 2010-01-19 2010-01-19 Relay device and bandwidth control method Expired - Fee Related JP5440200B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010009375A JP5440200B2 (en) 2010-01-19 2010-01-19 Relay device and bandwidth control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010009375A JP5440200B2 (en) 2010-01-19 2010-01-19 Relay device and bandwidth control method

Publications (2)

Publication Number Publication Date
JP2011151490A JP2011151490A (en) 2011-08-04
JP5440200B2 true JP5440200B2 (en) 2014-03-12

Family

ID=44538111

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010009375A Expired - Fee Related JP5440200B2 (en) 2010-01-19 2010-01-19 Relay device and bandwidth control method

Country Status (1)

Country Link
JP (1) JP5440200B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9013995B2 (en) * 2012-05-04 2015-04-21 Telefonaktiebolaget L M Ericsson (Publ) Congestion control in packet data networking
JP2015002397A (en) * 2013-06-14 2015-01-05 株式会社日立製作所 Communication device, communication system, and communication method

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0720134B2 (en) * 1987-10-12 1995-03-06 日本電信電話株式会社 Congestion control method
JPH06350640A (en) * 1993-06-14 1994-12-22 Nippon Telegr & Teleph Corp <Ntt> Congestion noticing system for store and forward exchange network
JP3715922B2 (en) * 2001-12-28 2005-11-16 日本電信電話株式会社 Edge-type packet transfer device, packet transfer network, and transfer restriction method
JP4464256B2 (en) * 2004-11-18 2010-05-19 三菱電機株式会社 Network host monitoring device
JP2006174156A (en) * 2004-12-16 2006-06-29 Nippon Telegr & Teleph Corp <Ntt> Network congestion scale determining method and system
JP4676204B2 (en) * 2005-01-12 2011-04-27 富士通株式会社 Communication system and communication terminal device
JP4244940B2 (en) * 2005-02-24 2009-03-25 日本電気株式会社 Network quality degradation location estimation apparatus, quality degradation location estimation method, and quality degradation location estimation program
JP4692406B2 (en) * 2006-06-21 2011-06-01 日本電気株式会社 RELAY COMMUNICATION SYSTEM, RELAY APPARATUS, SESSION BAND CONTROL METHOD USED FOR THEM AND PROGRAM
JP4382830B2 (en) * 2007-03-16 2009-12-16 富士通株式会社 Packet transfer device

Also Published As

Publication number Publication date
JP2011151490A (en) 2011-08-04

Similar Documents

Publication Publication Date Title
JP6553196B2 (en) Traffic flow monitoring
US9391895B2 (en) Network system and switching method thereof
JP5300076B2 (en) Computer system and computer system monitoring method
JP4122232B2 (en) System and method for guaranteeing network service level for intelligent distribution
US20050232227A1 (en) Method and apparatus for characterizing an end-to-end path of a packet-based network
JP2004040793A (en) METHOD FOR ESTIMATING QoS AND COMMUNICATION DEVICE
EP2760182B1 (en) Data communication apparatus, data transmission method, and computer system
US8687507B2 (en) Method, arrangement and system for monitoring a data path in a communication network
JP5673663B2 (en) Loop detection apparatus, system, method and program
EP3295612B1 (en) Uplink performance management
WO2012029422A1 (en) Communication quality monitoring system, communication quality monitoring method, and storage medium
JP3953999B2 (en) Congestion detection apparatus, congestion detection method and program for TCP traffic
JP5440200B2 (en) Relay device and bandwidth control method
JP6014932B2 (en) Network device, performance control method, and network system
JP2010130329A (en) Communication apparatus and relay apparatus
US11050652B2 (en) Link fault isolation using latencies
US8249085B2 (en) Relay apparatus and relay method
JP5625992B2 (en) Quality estimation apparatus, quality estimation method and program
US20140086091A1 (en) Method, apparatus, and system for analyzing network transmission characteristic
JP4165828B2 (en) Communication network, network control server, traffic control method, and program
US20130121192A1 (en) Measuring message stream quality across networks
JP4766703B2 (en) Edge node and bandwidth control method
KR20070061142A (en) Method of traffic control in peer-to-peer network system and peer-to-peer network system
JP2017103653A (en) Communication quality deterioration detection system, communication quality deterioration detection method, and program
JP2006042262A (en) Traffic control method by relay system for base of vpn

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121005

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130718

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130730

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130913

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131202

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees