JP5448793B2 - Communication equipment - Google Patents

Communication equipment Download PDF

Info

Publication number
JP5448793B2
JP5448793B2 JP2009293404A JP2009293404A JP5448793B2 JP 5448793 B2 JP5448793 B2 JP 5448793B2 JP 2009293404 A JP2009293404 A JP 2009293404A JP 2009293404 A JP2009293404 A JP 2009293404A JP 5448793 B2 JP5448793 B2 JP 5448793B2
Authority
JP
Japan
Prior art keywords
throughput
congestion
unit
token
external network
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
JP2009293404A
Other languages
Japanese (ja)
Other versions
JP2011135369A (en
Inventor
延之 白岩
永麗 ▲シュウ▼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kyocera Corp
Original Assignee
Kyocera Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kyocera Corp filed Critical Kyocera Corp
Priority to JP2009293404A priority Critical patent/JP5448793B2/en
Publication of JP2011135369A publication Critical patent/JP2011135369A/en
Application granted granted Critical
Publication of JP5448793B2 publication Critical patent/JP5448793B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、端末に接続され、トークンバケット方式で当該端末からのデータパケットを外部ネットワークへ送出する通信機器に関する。   The present invention relates to a communication device that is connected to a terminal and transmits a data packet from the terminal to an external network by a token bucket method.

従来、PC(Personal Computer)等の端末に接続されて無線通信を行う通信機器が知られている。また、このような通信機器において、ネットワークのリソースを使いすぎないように、通信速度(スループット)を制御するトークンバケットと呼ばれる方式がある。   2. Description of the Related Art Conventionally, communication devices that are connected to a terminal such as a PC (Personal Computer) and perform wireless communication are known. In such a communication device, there is a method called a token bucket that controls a communication speed (throughput) so as not to use excessive network resources.

トークンバケット機構は、入力されたパケットを蓄積するパケットバッファと、トークンを蓄積するトークンバッファ(トークンバケット)とを備える。トークンバッファに規定量のトークンが溜まるとパケットバッファからパケットが出力され、トークンバッファのトークンが減少する。このように、外部ネットワークへ出力されるパケットのスループットは、単位時間当たりにトークンバッファにトークンが補充される量(トークンレート)によって制御される。このトークンレートは、所定のパラメータとネットワーク環境によって動的に変化し、ネットワークが混雑している時は低く、空いている時は高く調整される。   The token bucket mechanism includes a packet buffer that accumulates input packets and a token buffer (token bucket) that accumulates tokens. When a predetermined amount of tokens accumulates in the token buffer, packets are output from the packet buffer, and the token buffer tokens decrease. In this way, the throughput of packets output to the external network is controlled by the amount of tokens replenished in the token buffer per unit time (token rate). This token rate dynamically changes depending on predetermined parameters and the network environment, and is adjusted to be low when the network is congested and high when the network is free.

例えば、特許文献1では、トークンの増減状態に基づく所定のタイミングで、パケットのスループットに基づいてトークンレートを算出する方法が提案されている。   For example, Patent Document 1 proposes a method of calculating a token rate based on packet throughput at a predetermined timing based on token increase / decrease states.

また、TCP(Transmission Control Protocol)の輻輳制御方法の1つにECN(Explicit Congestion Notification)がある。ECNは、ルータが輻輳を検出し、輻輳情報をTCP送信者に通知することで、TCP送信者が送信速度を制限して輻輳を回避する方法である。   One of the congestion control methods of TCP (Transmission Control Protocol) is ECN (Explicit Congestion Notification). ECN is a method for avoiding congestion by limiting the transmission speed by allowing the TCP sender to detect congestion and notifying the TCP sender of congestion information.

特開2007−221529号公報JP 2007-221529 A

ところで、通信機器がトークンバケット方式を採用している場合、端末側(TCP送信者)でECNによる輻輳回避処理が行われると、端末から通信機器へのパケットの入力スループットが低下する。しかしながら、特許文献1の方法によれば、トークンの増減状態に基づく所定のタイミングで計算を行い、また、計算結果も、輻輳回避による変化後の入力スループットそのものに基づくトークンレートとならない場合があった。   By the way, when the communication device adopts the token bucket method, when the congestion avoiding process by ECN is performed on the terminal side (TCP sender), the input throughput of packets from the terminal to the communication device decreases. However, according to the method of Patent Document 1, the calculation is performed at a predetermined timing based on the increase / decrease state of the token, and the calculation result may not be the token rate based on the input throughput itself after the change due to congestion avoidance. .

したがって、特許文献1の方法では、輻輳回避による入力スループットの低下がトークンレートへ反映されるまでに遅延が生じ、さらに、変化後の入力スループットそのものが利用されないことにより、出力スループットを十分に制御できなかった。   Therefore, in the method of Patent Document 1, there is a delay until the decrease in input throughput due to congestion avoidance is reflected in the token rate, and the output throughput after change is not used, so that the output throughput can be sufficiently controlled. There wasn't.

その結果、例えば、輻輳発生時にパケットバッファにパケットが溜まっていると、ECNによる輻輳回避とは関係なく、このパケットが送信され、輻輳状態の外部ネットワークにより破棄される場合があった。   As a result, for example, if packets are accumulated in the packet buffer when congestion occurs, this packet may be transmitted and discarded by the congested external network regardless of congestion avoidance by ECN.

本発明は、輻輳発生時にも、遅延なくデータパケットの出力スループットを制御できる通信機器を提供することを目的とする。   An object of the present invention is to provide a communication device capable of controlling the output throughput of data packets without delay even when congestion occurs.

本発明に係る通信機器は、外部機器に接続されるインタフェース部を有し、トークンバケット方式で当該インタフェース部から入力されるデータを外部ネットワークへ送出する通信機器であって、前記外部ネットワークから受信した情報を参照し、当該外部ネットワークにおける輻輳の発生の有無を判定する判定部と、前記インタフェース部からのデータの入力スループットを検出するスループット検出部と、前記判定部により前記輻輳の発生が無いと判定された場合、前記スループット検出部により検出された前記入力スループットの統計値に基づいて、前記トークンバケット方式におけるトークンレートを決定し、前記判定部により前記輻輳の発生が有ると判定された場合、当該判定直後の入力スループットに基づいて前記トークンレートを決定する決定部と、を備える。
また、前記判定部は、前記外部ネットワークから受信したパケットのヘッダ情報を参照し、当該外部ネットワークにおける輻輳の発生を示すデータの有無を判定することにより、当該外部ネットワークにおける輻輳の発生の有無を判定することが好ましい。
Communication device according to the present invention is a communication device for transmitting an interface section connected to an external device, the data inputted from the interface unit in the token bucket scheme to the external network, received from the external network and with reference to the information, a determining section whether the occurrence of congestion in the external network, and throughput detection unit for detecting an input throughput of data from the interface unit, the congestion by the determination unit If it is determined that there is no occur, based on the statistical value of the detected said input throughput by the throughput detection unit, determines a token rate before Symbol token bucket scheme, occurrence of the congestion by the determination unit If it is determined that there is, the token rate is determined based on the input throughput immediately after the determination. And a determination unit for determining a.
In addition, the determination unit determines whether or not congestion has occurred in the external network by referring to header information of a packet received from the external network and determining whether or not there is data indicating the occurrence of congestion in the external network. It is preferable to do.

また、前記決定部は、前記統計値として、前記入力スループットの指数平滑化平均値を算出することが好ましい。
また、前記決定部は、前記判定部により前記輻輳の発生が有ると判定された場合、前記指数平滑化平均値を、当該判定直後の入力スループットに書き換えることが好ましい。
Moreover, it is preferable that the determination unit calculates an exponential smoothed average value of the input throughput as the statistical value.
In addition, when the determination unit determines that the congestion occurs, the determination unit preferably rewrites the exponential smoothed average value to the input throughput immediately after the determination.

また、前記決定部は、前記統計値として、所定期間における最大スループット又は最終スループットを算出することが好ましい。Further, it is preferable that the determination unit calculates a maximum throughput or a final throughput in a predetermined period as the statistical value.

本発明に係る通信機器は、外部機器から入力されるデータを外部ネットワークへ出力する通信機器であって、前記外部ネットワークにおける輻輳の発生の有無を判定する判定部と、前記外部機器から入力されるデータの入力スループットを検出するスループット検出部と、前記判定部により前記輻輳の発生が有ると判定された場合、当該判定直後の入力スループットに基づいてデータを外部ネットワークへ出力するスループットを制御する制御部と、を備える。A communication device according to the present invention is a communication device that outputs data input from an external device to an external network, and a determination unit that determines whether or not congestion has occurred in the external network, and is input from the external device A throughput detection unit that detects the input throughput of data, and a control unit that controls the throughput of outputting data to an external network based on the input throughput immediately after the determination when the determination unit determines that the congestion occurs And comprising.

本発明によれば、輻輳発生時にも、遅延なくデータパケットの出力スループットを制御できる。   According to the present invention, the output throughput of data packets can be controlled without delay even when congestion occurs.

本発明の実施形態に係るPCカードの機能構成を示すブロック図である。It is a block diagram which shows the function structure of the PC card which concerns on embodiment of this invention. 本発明の実施形態に係るトークンバケット機構における上りデータフローの構成を示すブロック図である。It is a block diagram which shows the structure of the upstream data flow in the token bucket mechanism which concerns on embodiment of this invention. 本発明の実施形態に係るECNによる輻輳制御のシーケンス図である。It is a sequence diagram of congestion control by ECN according to an embodiment of the present invention. 本発明の実施形態に係る指数平滑化平均値の時間遷移の例を示す図である。It is a figure which shows the example of the time transition of the exponential smoothing average value which concerns on embodiment of this invention. 本発明の実施形態に係るスループットの監視処理を示すフローチャートである。It is a flowchart which shows the monitoring process of the throughput which concerns on embodiment of this invention. 本発明の実施形態に係るトークンレートの決定処理を示すフローチャートである。It is a flowchart which shows the determination process of the token rate which concerns on embodiment of this invention.

以下、本発明の実施形態の一例について説明する。なお、本実施形態では、通信機器の一例として、PC2(端末)に接続されるPCカード1を説明する。なお、通信機器は、PCカード1の他、携帯電話機、PHS(登録商標;Personal Handy phone System)、USB端末、車載通信モジュール、自動販売機用通信モジュール等、外部端末に接続されて無線データ通信機能を提供する様々な通信機器であってよい。   Hereinafter, an example of an embodiment of the present invention will be described. In the present embodiment, a PC card 1 connected to a PC 2 (terminal) will be described as an example of a communication device. In addition to the PC card 1, the communication device is connected to an external terminal such as a mobile phone, a PHS (registered trademark), a USB terminal, an in-vehicle communication module, a vending machine communication module, or the like for wireless data communication. It may be various communication devices that provide functions.

図1は、本実施形態に係るPCカード1の機能構成を示すブロック図である。
PCカード1は、制御部10と、記憶部20と、インタフェース部30と、通信部40と、トークンバケット機構50とを備える。
FIG. 1 is a block diagram showing a functional configuration of the PC card 1 according to the present embodiment.
The PC card 1 includes a control unit 10, a storage unit 20, an interface unit 30, a communication unit 40, and a token bucket mechanism 50.

制御部10は、PCカード1の全体を制御しており、例えば、インタフェース部30、通信部40、トークンバケット機構50等に対して所定の制御を行う。また、制御部10は、インタフェース部30や通信部40等から入力を受け付けて、各種処理を実行する。そして、制御部10は、処理実行の際には、記憶部20を制御し、各種プログラム及びデータの読み出し、並びにデータの書き込みを行う。   The control unit 10 controls the entire PC card 1, and performs predetermined control on the interface unit 30, the communication unit 40, the token bucket mechanism 50, and the like, for example. In addition, the control unit 10 receives input from the interface unit 30, the communication unit 40, and the like, and executes various processes. And the control part 10 controls the memory | storage part 20 in the case of a process execution, reads various programs and data, and writes data.

さらに、制御部10は、スループット検出部11と、トークン検出部12と、判定部13と、決定部14とを備える。そして、制御部10は、通信状況に応じて、トークンバケット機構50におけるトークンレートを決定し、PC2の通信速度を制御する。なお、制御部10が備える各部の機能は後述する。   Further, the control unit 10 includes a throughput detection unit 11, a token detection unit 12, a determination unit 13, and a determination unit 14. And the control part 10 determines the token rate in the token bucket mechanism 50 according to a communication condition, and controls the communication speed of PC2. In addition, the function of each part with which the control part 10 is provided is mentioned later.

記憶部20は、例えば、ワーキングメモリを含み、制御部10による演算処理に利用される。また、本実施形態では、後述の処理を実行するプログラムや各種データ等が記憶される。なお、記憶部20は、着脱可能な外部メモリを兼ねていてもよい。   The storage unit 20 includes, for example, a working memory and is used for arithmetic processing by the control unit 10. Further, in the present embodiment, a program for executing processing to be described later, various data, and the like are stored. The storage unit 20 may also serve as a removable external memory.

インタフェース部30は、PC2とデータパケットの送受信を行うインタフェースであり、PC2から受信したパケットをトークンバケット機構50へ入力し、トークンバケット機構50から出力されたパケットをPC2へ送信する。   The interface unit 30 is an interface that transmits and receives data packets to and from the PC 2. The interface unit 30 inputs a packet received from the PC 2 to the token bucket mechanism 50 and transmits a packet output from the token bucket mechanism 50 to the PC 2.

通信部40は、所定の周波数帯(例えば、2GHz帯や800MHz帯等)で外部装置(基地局)と通信を行う。そして、通信部40は、アンテナ41より受信した信号を復調処理し、処理後の信号をトークンバケット機構50に供給し、また、トークンバケット機構50から供給された信号を変調処理し、アンテナ41から外部装置に送信する。   The communication unit 40 communicates with an external device (base station) in a predetermined frequency band (for example, 2 GHz band or 800 MHz band). The communication unit 40 demodulates the signal received from the antenna 41, supplies the processed signal to the token bucket mechanism 50, modulates the signal supplied from the token bucket mechanism 50, and Send to external device.

トークンバケット機構50は、PC2から外部ネットワーク(基地局)への上りデータフローと、外部ネットワーク(基地局)からPC2への下りデータフローとのパケットのスループットを制御する。   The token bucket mechanism 50 controls the packet throughput of the upstream data flow from the PC 2 to the external network (base station) and the downstream data flow from the external network (base station) to the PC 2.

図2は、本実施形態に係るトークンバケット機構50における上りデータフローの構成を示すブロック図である。   FIG. 2 is a block diagram showing the configuration of the upstream data flow in the token bucket mechanism 50 according to this embodiment.

まず、PC2からの入力パケットは、パケットバッファ51に蓄えられる。また、一定(例えば、30msec)間隔で、トークンバッファ52にトークンが追加される。   First, input packets from the PC 2 are stored in the packet buffer 51. Further, tokens are added to the token buffer 52 at regular intervals (for example, 30 msec).

トークンバケット機構50は、充分な量のトークンがトークンバッファ52にあれば、パケットバッファ51に蓄えられているパケットを外部ネットワークへ出力し、トークンバッファ52のトークンを減少させる。また、トークンバッファ52のトークンがなくなると、トークンが溜まるまでパケットは出力されず、パケットバッファ51に溜まり続ける。   If there is a sufficient amount of tokens in the token buffer 52, the token bucket mechanism 50 outputs the packets stored in the packet buffer 51 to the external network, and decreases the tokens in the token buffer 52. Further, when there are no more tokens in the token buffer 52, packets are not output until the tokens are accumulated, and continue to accumulate in the packet buffer 51.

なお、トークンバケット機構50における下りデータフローの構成も同様であり、図2の「PC2からの入力」は「ネットワークからの入力」と読み替えられ、「ネットワークへの出力」は「PC2への出力」と読み替えられる。   The configuration of the downstream data flow in the token bucket mechanism 50 is the same, and “input from PC 2” in FIG. 2 is read as “input from network”, and “output to network” is “output to PC 2”. Is read as

図1に戻り、本実施形態に係る制御部10の各部の機能を詳述する。
スループット検出部11は、インタフェース部30を通過するPC2からのデータパケットの、トークンバケット機構50への入力スループットを検出する。そして、検出された入力スループットは、決定部14へ通知される。
Returning to FIG. 1, the function of each part of the control part 10 which concerns on this embodiment is explained in full detail.
The throughput detector 11 detects the input throughput of the data packet from the PC 2 that passes through the interface unit 30 to the token bucket mechanism 50. Then, the detected input throughput is notified to the determination unit 14.

トークン検出部12は、トークンバッファ52に保持されているトークン量の推移を検出する。具体的には、トークン検出部12は、トークンバッファ52に保持されたトークンの増加が所定時間以上継続したこと、及びトークンの減少状態からトークンの枯渇状態へ遷移したことを検出する。そして、検出結果は、決定部14へ通知される。   The token detection unit 12 detects a change in the token amount held in the token buffer 52. Specifically, the token detection unit 12 detects that the increase in the token held in the token buffer 52 has continued for a predetermined time or more and that the token has shifted from the token decrease state to the token depletion state. Then, the detection result is notified to the determination unit 14.

判定部13は、通信部40により外部ネットワークから受信したパケットのTCPヘッダ(ヘッダ情報)を参照し、外部ネットワークにおける輻輳の発生を示すデータ(後述のECEフラグ)の有無を判定する。   The determination unit 13 refers to the TCP header (header information) of the packet received from the external network by the communication unit 40 and determines the presence / absence of data indicating the occurrence of congestion in the external network (an ECE flag described later).

ここで、ECNによる輻輳制御について説明する。
図3は、本実施形態に係るECNによる輻輳制御のシーケンス図である。この例では、ルータを介して、TCP送信者(例えば、PC2)とTCP受信者とが通信を行っている。
Here, the congestion control by ECN will be described.
FIG. 3 is a sequence diagram of congestion control by ECN according to the present embodiment. In this example, a TCP sender (for example, PC2) and a TCP receiver communicate with each other via a router.

ルータは、転送待ちのパケットを蓄積しておくバッファの使用量が一定の閾値を超えると、ネットワークが輻輳していると判断する。ルータは、ネットワークが輻輳していると判断すると、パケットのIPヘッダのToSフィールドに、輻輳を経験していることを示すCEフラグを立てて、パケットをTCP受信者へ転送する(ステップS1)。   The router determines that the network is congested when the amount of use of the buffer for storing packets waiting for transfer exceeds a certain threshold. When the router determines that the network is congested, it sets a CE flag indicating that it is experiencing congestion in the ToS field of the IP header of the packet, and forwards the packet to the TCP receiver (step S1).

TCP受信者は、IPヘッダにCEフラグが立っているパケットを受信した場合、TCPヘッダのECE(ECN−Echo)フラグを立ててTCP送信者に確認応答パケット(Ack)を送信する。これは、TCP送信者からTCPヘッダのCWR(Congestion Window Reduced)フラグが立っているパケットを受信するまで続けられる(ステップS2)。   When the TCP receiver receives a packet in which the CE flag is set in the IP header, the TCP receiver sets an ECE (ECN-Echo) flag in the TCP header and transmits an acknowledgment packet (Ack) to the TCP sender. This is continued until a packet having a CWR (Congestion Window Reduced) flag in the TCP header is received from the TCP sender (step S2).

TCP送信者は、TCPヘッダにECEフラグが立っているパケットを受信した場合、輻輳が発生していると判断する。そして、TCP送信者は、輻輳ウィンドウサイズをスロースタートの閾値まで減少させて送信レートを下げ、以降に送信するパケットのTCPヘッダにCWRフラグを立てて送信する(ステップS3)。   When a TCP sender receives a packet with an ECE flag set in the TCP header, the TCP sender determines that congestion has occurred. Then, the TCP sender reduces the congestion window size to the slow start threshold value to lower the transmission rate, and sets the CWR flag in the TCP header of the packet to be transmitted after that (step S3).

TCP受信者は、TCPヘッダにCWRフラグが立っているパケットを受信すると、確認応答パケットにECEフラグを立てることを停止する(ステップS4)。   When the TCP receiver receives a packet having the CWR flag set in the TCP header, the TCP receiver stops setting the ECE flag in the acknowledgment packet (step S4).

判定部13は、外部ネットワークにおける輻輳の発生を示すデータとして、ステップS2におけるTCPヘッダのECEフラグの有無を判定する。   The determination unit 13 determines whether there is an ECE flag in the TCP header in step S2 as data indicating the occurrence of congestion in the external network.

決定部14は、判定部13により輻輳の発生を示すデータとしてのECEフラグが無いと判定された場合、スループット検出部11により検出された入力スループットの統計値に基づいてトークンバッファ52のトークンレートを決定する。一方、決定部14は、判定部13によりECEフラグが有ると判定された場合、この判定直後の入力スループットに基づいてトークンレートを決定する。   When the determination unit 13 determines that there is no ECE flag as data indicating the occurrence of congestion, the determination unit 14 determines the token rate of the token buffer 52 based on the statistical value of the input throughput detected by the throughput detection unit 11. decide. On the other hand, when the determination unit 13 determines that the ECE flag is present, the determination unit 14 determines the token rate based on the input throughput immediately after the determination.

具体的には、決定部14は、例えば、以下の計算方法(1)又は(2)により、トークンレートを決定する。   Specifically, the determination unit 14 determines the token rate by the following calculation method (1) or (2), for example.

(1)簡易計算の場合
決定部14は、上記の統計値として、トークンの減少状態が終了した時点でのスループット、又はトークン減少状態での最大スループットを取得し、この取得したスループットに許容係数を乗じた値を、更新後のトークンレートとして決定する。
なお、入力スループットに対してトークンレートに許容する割合を許容係数と呼び、許容係数は、予め設定され、記憶部20に記憶されているものとする。
(1) In the case of simple calculation The determination unit 14 acquires, as the above statistical value, the throughput at the time when the token reduction state ends or the maximum throughput in the token reduction state, and sets an allowable coefficient for the acquired throughput. The multiplied value is determined as the updated token rate.
It is assumed that the ratio allowed for the token rate with respect to the input throughput is called an allowable coefficient, and the allowable coefficient is set in advance and stored in the storage unit 20.

また、決定部14は、上記の統計値として、トークンの増加状態が始まった時点から一定時間が経過した時のスループット、又はこの間の最大スループットを取得し、この取得したスループットに許容係数を乗じた値を、更新後のトークンレートとして決定する。   Further, the determination unit 14 obtains, as the above statistical value, the throughput when a certain time has elapsed from the time when the token increase state started, or the maximum throughput during this time, and multiplies the obtained throughput by an allowable coefficient. The value is determined as the updated token rate.

ここで、判定部13によりECEフラグが有ると判定された場合、判定された時点で、決定部14は、この判定直後の入力スループットに許容係数を乗じた値を、更新後のトークンレートとして決定する。   Here, when the determination unit 13 determines that the ECE flag is present, at the time of determination, the determination unit 14 determines a value obtained by multiplying the input throughput immediately after the determination by the allowable coefficient as the updated token rate. To do.

(2)指数平滑化平均処理の場合
決定部14は、トークンの減少状態中に定期的にサンプリングしたスループットに対して指数平滑化平均処理を行う。決定部14は、トークンの減少状態が終了した時点で、指数平滑化平均処理後の最大値又は最後の値を上記の統計値として取得し、この取得した統計値に許容係数を乗じた値を、更新後のトークンレートとして決定する。
(2) In the case of exponential smoothing averaging process The determination unit 14 performs exponential smoothing averaging process on the throughput periodically sampled during the token reduction state. When the token reduction state ends, the determination unit 14 acquires the maximum value or the last value after the exponential smoothing averaging process as the above statistical value, and multiplies the acquired statistical value by an allowable coefficient. Determined as the updated token rate.

ここで、スループットのn番目のサンプル値Xが時刻tで得られたとすると、指数平滑化平均処理後の値Aは、
=(1−C)An−1+CX
C=1−exp(−1/T)Δt
Δt=t−tn−1
として求められる。なお、Tは任意の定数である。
また、得られた指数平滑化平均値(A)は、記憶部20に記憶されることとしてよい。
Here, if the n-th sample value X n throughput is obtained at time t n, the values A n after exponential smoothing averaging process,
A n = (1-C) A n-1 + CX n
C = 1−exp (−1 / T) Δt
Δt = t n −t n−1
As required. T is an arbitrary constant.
Further, the obtained exponential smoothed average value (A n ) may be stored in the storage unit 20.

また、決定部14は、トークンの増加状態中に定期的にサンプリングしたスループットに対して指数平滑化平均処理を行う。決定部14は、トークンの増加状態が始まった時点から一定時間が経過した時点で、指数平滑化平均処理後の最大値又は最後の値を上記の統計値として取得し、この取得した統計値に許容係数を乗じた値を、更新後のトークンレートとして決定する。   Further, the determination unit 14 performs exponential smoothing averaging processing on the throughput periodically sampled during the token increase state. The determination unit 14 acquires the maximum value or the last value after the exponential smoothing averaging process as the above statistical value when a certain time has elapsed from the time when the token increase state starts, and the acquired statistical value A value obtained by multiplying the allowable coefficient is determined as the updated token rate.

ここで、判定部13によりECEフラグが有ると判定された場合、判定された時点で、決定部14は、記憶部20に記憶されている指数平滑化平均値(A)を、この判定直後の入力スループットに書き換える。そして、決定部14は、書き換えられた指数平滑化平均値(A)に許容係数を乗じた値を、更新後のトークンレートとして決定する。 Here, when it is determined by the determination unit 13 that the ECE flag is present, at the time of determination, the determination unit 14 determines the exponential smoothed average value (A n ) stored in the storage unit 20 immediately after this determination. Rewrite to the input throughput of. Then, the determination unit 14 determines a value obtained by multiplying the rewritten exponential smoothed average value (A n ) by an allowable coefficient as the updated token rate.

図4は、本実施形態に係る指数平滑化平均値の時間遷移の例を示す図である。
外部ネットワークに輻輳が発生していない場合には、指数平滑化平均値は、図中のAで示される曲線を遷移する。この場合は、急激なスループットの変動があったとしても、過去のスループットがならされ、計算値は滑らかに変動する。
FIG. 4 is a diagram illustrating an example of temporal transition of the exponential smoothed average value according to the present embodiment.
When there is no congestion in the external network, the exponential smoothing average value transitions the curve indicated by A in the figure. In this case, even if there is a sudden change in throughput, the past throughput is smoothed, and the calculated value changes smoothly.

一方、外部ネットワークに輻輳が発生し、時刻tにおいて判定部13によりECEフラグが有ると判定された場合、指数平滑化平均値は、図中のBで示される曲線を遷移する。この場合、指数平滑化平均値は時刻t1で急激に変動するが、決定部14は、輻輳回避のために変更された現在のスループットに対応したトークンレートを決定することができる。その後、曲線Bは、時間の経過と共に曲線Aに漸近していく。 On the other hand, congestion occurs in the external network, when it is determined that the ECE flag exists by the determination unit 13 at time t 1, the exponential smoothing average, transitions curve indicated by B in FIG. In this case, the exponential smoothing average value changes rapidly at time t1, but the determination unit 14 can determine the token rate corresponding to the current throughput changed for avoiding congestion. Thereafter, the curve B gradually approaches the curve A with time.

さらに、記憶部20には、予め最大トークンレートと最小トークンレートとが記憶されていることが望ましい。この場合、決定部14は、上述の(1)及び(2)のいずれの計算方法であっても、最大トークンレートを上回ったときには最大トークンレートを、最小トークンレートを下回ったときには最小トークンレートを、更新後のトークンレートとして決定する。   Furthermore, it is desirable that the storage unit 20 stores a maximum token rate and a minimum token rate in advance. In this case, the determination unit 14 determines the maximum token rate when the maximum token rate is exceeded and the minimum token rate when the maximum token rate is exceeded, regardless of the calculation methods (1) and (2) described above. Determined as the updated token rate.

以下、指数平滑化平均スループットを用いた制御部10の処理の流れを説明する。
図5は、本実施形態に係るスループットの監視処理を示すフローチャートである。
Hereinafter, the processing flow of the control unit 10 using the exponential smoothing average throughput will be described.
FIG. 5 is a flowchart showing throughput monitoring processing according to the present embodiment.

ステップS1において、制御部10(スループット検出部11)は、トークンバケット機構50へのPC2からの入力スループットを検出する。   In step S <b> 1, the control unit 10 (throughput detection unit 11) detects the input throughput from the PC 2 to the token bucket mechanism 50.

ステップS2において、制御部10(決定部14)は、ステップS1で検出した入力スループットと、記憶部20に記憶されている前回算出された値とを用いて、指数平滑化平均スループットを算出する。   In step S <b> 2, the control unit 10 (determination unit 14) calculates an exponential smoothed average throughput using the input throughput detected in step S <b> 1 and the previously calculated value stored in the storage unit 20.

ステップS3において、制御部10は、ステップS1で検出された現在の入力スループット、及びステップS2で算出された指数平滑化平均スループットを、記憶部20に記憶する。   In step S3, the control unit 10 stores the current input throughput detected in step S1 and the exponential smoothed average throughput calculated in step S2 in the storage unit 20.

ステップS4において、制御部10は、通信の終了等、所定のイベントの有無を検出し、監視処理を終了するか否かを判定する。制御部10は、この判定がYESの場合、処理を終了し、判定がNOの場合、処理をステップS1に戻して監視処理を継続する。   In step S4, the control unit 10 detects the presence or absence of a predetermined event such as the end of communication, and determines whether or not to end the monitoring process. If this determination is YES, the control unit 10 ends the process. If the determination is NO, the control unit 10 returns the process to step S1 and continues the monitoring process.

図6は、本実施形態に係るトークンレートの決定処理を示すフローチャートである。
ステップS11において、制御部10(判定部13)は、通信部40により外部ネットワークから受信したパケットのTCPヘッダを参照し、ECEフラグの有無、すなわち輻輳を回避中であるか否かを判定する。制御部10は、この判定がYESの場合、処理をステップS12に移し、判定がNOの場合、処理をステップS13に移す。
FIG. 6 is a flowchart showing token rate determination processing according to the present embodiment.
In step S11, the control unit 10 (determination unit 13) refers to the TCP header of the packet received from the external network by the communication unit 40, and determines the presence or absence of the ECE flag, that is, whether or not congestion is being avoided. If this determination is YES, the control unit 10 moves the process to step S12. If the determination is NO, the control unit 10 moves the process to step S13.

ステップS12において、制御部10(決定部14)は、輻輳回避のためPC2からの入力スループットが抑制されていると判断し、スループットの監視処理(図5)により記憶部20に記憶されている指数平滑化平均スループットを、現在の入力スループットで書き換える。   In step S12, the control unit 10 (determination unit 14) determines that the input throughput from the PC 2 is suppressed to avoid congestion, and the index stored in the storage unit 20 by the throughput monitoring process (FIG. 5). Rewrite the smoothed average throughput with the current input throughput.

ステップS13において、制御部10(決定部14)は、トークンレートの決定タイミングであるか否かを判定する。具体的には、制御部10は、トークン検出部12により、トークンバッファ52に保持されたトークンの増加が所定時間以上継続したこと、又はトークンの減少状態からトークンの枯渇状態へ遷移したことが検出されたか否かを判定する。制御部10は、この判定がYESの場合、処理をステップS14に移し、判定がNOの場合、処理をステップS11に戻す。   In step S13, the control unit 10 (determination unit 14) determines whether or not it is a token rate determination timing. Specifically, the control unit 10 detects that the token detection unit 12 has continued to increase the number of tokens held in the token buffer 52 for a predetermined time or has transitioned from a token depletion state to a token depletion state. It is determined whether or not it has been done. When this determination is YES, the control unit 10 moves the process to step S14, and when the determination is NO, the control unit 10 returns the process to step S11.

ステップS14において、制御部10(決定部14)は、記憶部20に記憶されている指数平滑化平均スループットに基づいて、トークンレートを算出して決定する。   In step S <b> 14, the control unit 10 (determination unit 14) calculates and determines a token rate based on the exponential smoothed average throughput stored in the storage unit 20.

ステップS15において、制御部10は、通信の終了等、所定のイベントの有無を検出し、スループットの決定処理を終了するか否かを判定する。制御部10は、この判定がYESの場合、処理を終了し、判定がNOの場合、処理をステップS11に戻して処理を継続する。   In step S15, the control unit 10 detects the presence or absence of a predetermined event such as the end of communication, and determines whether or not to end the throughput determination process. If this determination is YES, the control unit 10 ends the process. If the determination is NO, the control unit 10 returns the process to step S11 and continues the process.

以上のように、本実施形態によれば、ECNの輻輳回避動作がトークンバケット機構50により遅延されるのを抑制できる。したがって、PCカード1は、外部ネットワークに輻輳が発生した時にも、遅延なくデータパケットの出力スループットを制御できる。   As described above, according to the present embodiment, the ECN congestion avoidance operation can be prevented from being delayed by the token bucket mechanism 50. Therefore, the PC card 1 can control the output throughput of data packets without delay even when congestion occurs in the external network.

また、PCカード1は、指数平滑化平均スループットを利用する場合には、輻輳発生時にのみ、この指数平滑化平均スループットを現在の値にリセットしてトークンレートを決定する。その後、PCカード1は、輻輳制御の完了を監視することなく、定期的に更新される指数平滑化平均スループットを用いて、通常のタイミングでトークンレートを決定することができる。   Further, when using the exponential smoothed average throughput, the PC card 1 determines the token rate by resetting the exponential smoothed average throughput to the current value only when congestion occurs. Thereafter, the PC card 1 can determine the token rate at a normal timing by using the exponentially smoothed average throughput that is periodically updated without monitoring the completion of the congestion control.

以上、好適な実施形態について説明したが、本発明は前述した実施形態に限定されることなく種々の形態で実施することができる。また、前述の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、前述のものに限定されない。   As mentioned above, although preferred embodiment was described, this invention can be implemented with a various form, without being limited to embodiment mentioned above. In addition, the effects described in the above-described embodiments are merely a list of the most preferable effects resulting from the present invention, and the effects according to the present invention are not limited to those described above.

上述の実施形態では、トークンレートの決定処理において、輻輳を回避中であるか否かの判定(ステップS11)を定常的に繰り返しているが、これには限られない。指数平滑化平均スループットを現在の値にリセット(ステップS12)し、トークンレートを算出(ステップS13)した後は、ステップS13で次のタイミングとなるまでは、輻輳回避中の判定(ステップS11)を省略してもよい。   In the above-described embodiment, the determination of whether or not congestion is being avoided (step S11) is regularly repeated in the token rate determination process, but is not limited thereto. After the exponential smoothing average throughput is reset to the current value (step S12) and the token rate is calculated (step S13), the judgment (step S11) during congestion avoidance is made until the next timing in step S13. It may be omitted.

また、上述の実施形態では、ECNの輻輳回避処理により入力スループットが変動した場合を説明したが、この他の原因で入力スループットが大きく変動する場合もある。制御部10は、この入力スループットの変動量を監視し、所定の変動閾値を超える変動があった場合に、この変動のタイミングで、変動後の入力スループットに基づいてトークンレートを決定してもよい。このことにより、制御部10は、入力スループットの変動を迅速にトークンレートへ反映できる。   In the above-described embodiment, the case where the input throughput varies due to the ECN congestion avoidance process has been described. However, the input throughput may vary greatly due to other reasons. The control unit 10 may monitor the amount of fluctuation of the input throughput, and may determine the token rate based on the input throughput after the fluctuation at the timing of the fluctuation when there is a fluctuation exceeding a predetermined fluctuation threshold. . As a result, the control unit 10 can quickly reflect the fluctuation of the input throughput on the token rate.

1 PCカード(通信機器)
2 PC(端末)
10 制御部
11 スループット検出部
12 トークン検出部
13 判定部
14 決定部
20 記憶部
30 インタフェース部
40 通信部
41 アンテナ
50 トークンバケット機構
51 パケットバッファ
52 トークンバッファ
1 PC card (communication equipment)
2 PC (terminal)
DESCRIPTION OF SYMBOLS 10 Control part 11 Throughput detection part 12 Token detection part 13 Determination part 14 Determination part 20 Storage part 30 Interface part 40 Communication part 41 Antenna 50 Token bucket mechanism 51 Packet buffer 52 Token buffer

Claims (6)

外部機器に接続されるインタフェース部を有し、トークンバケット方式で当該インタフェース部から入力されるデータを外部ネットワークへ送出する通信機器であって、
前記外部ネットワークから受信した情報を参照し、当該外部ネットワークにおける輻輳の発生の有無を判定する判定部と、
前記インタフェース部からのデータの入力スループットを検出するスループット検出部と、
前記判定部により前記輻輳の発生が無いと判定された場合、前記スループット検出部により検出された前記入力スループットの統計値に基づいて、前記トークンバケット方式におけるトークンレートを決定し、前記判定部により前記輻輳の発生が有ると判定された場合、当該判定直後の入力スループットに基づいて前記トークンレートを決定する決定部と、を備える通信機器。
And an interface section connected to an external device, a communication device for transmitting the data inputted from the interface unit in the token bucket scheme to the external network,
Said with reference to the information received from the external network, determining unit whether the occurrence of congestion in the external network,
And throughput detection unit for detecting an input throughput of data from the interface unit,
If it is determined that there is no occurrence of the congestion by the determination unit, based on the statistics of the input throughput detected by the throughput detection unit, determines a token rate before Symbol token bucket scheme, the determination unit communication device and a determination unit configured to determine the token rate based on an input throughput immediately after the case of occurrence of congestion is determined that there, the determination by.
前記判定部は、前記外部ネットワークから受信したパケットのヘッダ情報を参照し、当該外部ネットワークにおける輻輳の発生を示すデータの有無を判定することにより、当該外部ネットワークにおける輻輳の発生の有無を判定する請求項1に記載の通信機器。The determination unit determines whether or not congestion has occurred in the external network by referring to header information of a packet received from the external network and determining whether or not there is data indicating the occurrence of congestion in the external network. Item 2. The communication device according to Item 1. 前記決定部は、前記統計値として、前記入力スループットの指数平滑化平均値を算出する請求項1又は2に記載の通信機器。 The determining unit, as the statistical value, the communication apparatus according to claim 1 or 2 for calculating the exponential smoothing average value of said input throughput. 前記決定部は、前記判定部により前記輻輳の発生が有ると判定された場合、前記指数平滑化平均値を、当該判定直後の入力スループットに書き換える請求項に記載の通信機器。 The determination unit is configured when it is determined that the occurrence of the congestion is present by judging unit, a communication device according to claim 3 in which the exponential smoothing average, rewrites the input throughput immediately after the determination. 前記決定部は、前記統計値として、所定期間における最大スループット又は最終スループットを算出する請求項1又は2に記載の通信機器。 The determining unit, as the statistical value, the communication apparatus according to claim 1 or 2 calculates the maximum throughput or final throughput in a predetermined period. 外部機器から入力されるデータを外部ネットワークへ出力する通信機器であって、  A communication device that outputs data input from an external device to an external network,
前記外部ネットワークにおける輻輳の発生の有無を判定する判定部と、  A determination unit for determining whether or not congestion occurs in the external network;
前記外部機器から入力されるデータの入力スループットを検出するスループット検出部と、  A throughput detector that detects an input throughput of data input from the external device;
前記判定部により前記輻輳の発生が有ると判定された場合、当該判定直後の入力スループットに基づいてデータを外部ネットワークへ出力するスループットを制御する制御部と、を備える通信機器。  A communication device comprising: a control unit that controls a throughput for outputting data to an external network based on an input throughput immediately after the determination when the determination unit determines that the congestion occurs.
JP2009293404A 2009-12-24 2009-12-24 Communication equipment Expired - Fee Related JP5448793B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009293404A JP5448793B2 (en) 2009-12-24 2009-12-24 Communication equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009293404A JP5448793B2 (en) 2009-12-24 2009-12-24 Communication equipment

Publications (2)

Publication Number Publication Date
JP2011135369A JP2011135369A (en) 2011-07-07
JP5448793B2 true JP5448793B2 (en) 2014-03-19

Family

ID=44347621

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009293404A Expired - Fee Related JP5448793B2 (en) 2009-12-24 2009-12-24 Communication equipment

Country Status (1)

Country Link
JP (1) JP5448793B2 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004007230A (en) * 2002-05-31 2004-01-08 Logic Corp Communication band control system
JP2006279784A (en) * 2005-03-30 2006-10-12 Fujitsu Ltd Edge switch
JP4577230B2 (en) * 2006-02-17 2010-11-10 Kddi株式会社 Traffic control apparatus, method, and program using token bucket
JP4577279B2 (en) * 2006-06-21 2010-11-10 Kddi株式会社 Traffic control apparatus, method, and program using token bucket

Also Published As

Publication number Publication date
JP2011135369A (en) 2011-07-07

Similar Documents

Publication Publication Date Title
CN107171969B (en) Data transmission method, device and system
EP3758315B1 (en) Congestion control method and network device
JP4147534B2 (en) Communication apparatus and communication method
EP3135009B1 (en) Method and apparatus for network congestion control based on transmission rate gradients
US8837279B2 (en) Technique for improving congestion control
CN106331717B (en) Video code rate self-adapting regulation method and sending ending equipment
KR102350504B1 (en) Apparatus and method for controlling downlink throughput in communication system
EP2884707B1 (en) Method for controlling buffering of packets in a communication network
US7787379B2 (en) Integrated flow control
CN106789718A (en) The jamming control method of data transfer, equipment, server and programmable device
EP2586235B1 (en) Method and arrangement for detecting congestion in a communications network
CN107800638B (en) Congestion control method and device
CN110677355A (en) Packet loss coping method and device, electronic equipment and storage medium
US20080291833A1 (en) Method for buffer control for network device
EP2887591A1 (en) Packet congestion processing method and apparatus
CN111385218B (en) Packet loss and flow control method for overload of message queue, storage medium and equipment
WO2024001763A1 (en) Data transmission processing method and device, storage medium, and electronic device
JP2009278532A (en) Transmission apparatus and congestion control method
JP5448793B2 (en) Communication equipment
JP4849270B2 (en) Computer equipment
Wang et al. Refined design of random early detection gateways
WO2017192342A1 (en) Initial and periodic slowdowns for background connections
US7855954B2 (en) Speculative credit data flow control
JP2014112779A (en) Data transmission controller, data transmission control method, and computer program
JP2004104417A (en) Data repeater and repeat data control method, and computer program

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20120803

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130816

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130827

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131025

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131224

R150 Certificate of patent or registration of utility model

Ref document number: 5448793

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees