JP5518549B2 - 輻輳制御装置及び輻輳制御方法 - Google Patents
輻輳制御装置及び輻輳制御方法 Download PDFInfo
- Publication number
- JP5518549B2 JP5518549B2 JP2010088476A JP2010088476A JP5518549B2 JP 5518549 B2 JP5518549 B2 JP 5518549B2 JP 2010088476 A JP2010088476 A JP 2010088476A JP 2010088476 A JP2010088476 A JP 2010088476A JP 5518549 B2 JP5518549 B2 JP 5518549B2
- Authority
- JP
- Japan
- Prior art keywords
- window size
- packet
- flow
- size information
- packets
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
そこで、大部分のアプリケーションで転送用プロトコルとして用いられているTCPは、設備容量内にトラフィックを抑制するために、通信速度を抑制する輻輳制御の機能を備えている。即ち、通信経路内のノードにおいて輻輳が発生してパケットが廃棄された場合、送信元のTCPがそれを検出し、一度に送信できるパケット数を決めるウィンドウサイズを減少させることにより、ネットワークへのパケット送出速度を抑制して輻輳を解消するものである。
フローA、Bはパケットが廃棄された後、そろってウィンドウサイズを減少させるため、これらは速度が低下するものの、それを埋め合わせるように、フローC、Dは速度を増加させるので、全体として通信効率の低下は起こらない。また、フローA、Bはその後、そろってウィンドウサイズを増加させることとなるが、このときバッファ内のパケット量は減少しておらず、RTTも低下していないため、ウィンドウサイズの増加は緩やかになる。加えて、そろって増加するフロー数も少ないため、再び輻輳に陥ることは無い。このため、TCP同期が発生せず、通信効率の低下が回避できる。
本発明は、かかる課題に鑑みてなされたものであり、送信側のTCPにおいて、ウィンドウサイズ分のパケット群の中で、先頭パケットに、現時点のウィンドウサイズを情報として付加して、輻輳中のノードでは、先頭パケットに付加されたウィンドウサイズの情報を検出して、この情報を用いて、ウィンドウサイズ分のパケット群のうち、なるべく先頭に近いパケットを含むフローを選択して、このフローのパケットを連続的に廃棄することにより、効果を安定的・効率的に生じさせることができると共に、通信速度が大きく低下するフロー数を常に最小限にすることができる輻輳制御装置及び輻輳制御方法を提供することを目的とする。
TCPでは、送信側が、受信側からの確認応答パケットの返信を待たずに、一度に送付するパケット数は、ウィンドウサイズ分だけである。そのため、一つのフローにつき、廃棄されるパケット数は、最大でもウィンドウサイズ分である。この廃棄されるパケット数は、到達するウィンドウサイズ分のパケット群の中のどの位置から廃棄を開始するかによって異なってくる。すなわち、パケット群の最初の方であれば、最大でウィンドウサイズ分のパケット数が廃棄されるが、パケット群の最後の方であれば、最小で1パケットとなる。即ち、一つのフローにつき、最大限のパケット数を廃棄するためには、到達するウィンドウサイズ分のパケット群の中で、なるべく最初の方のパケットから廃棄する必要がある。そこで本発明では、送信側のTCPにおいて、ウィンドウサイズ分のパケット群の中で、先頭パケットに、現時点のウィンドウサイズを情報として付加して、輻輳中のノードでは、先頭パケットに付加されたウィンドウサイズの情報を検出して、この情報を用いて、ウィンドウサイズ分のパケット群のうち、最も多くパケット数が残されているフローを選択して、このフローのパケットを連続的に廃棄する。これにより、パケット廃棄するフロー数を最小限とし、パケット廃棄しないフロー数を最大限とすることができる。
様々な都合により、送信側のTCPでウィンドウサイズの情報を付加することができない場合がある。そのような場合、新たに張り直すTCPにおいて先頭パケットにウィンドウサイズの情報を付加する。これにより、送信側のTCPでウィンドウサイズの情報を付加することができない場合でも、新たなTCPでウィンドウサイズの情報を付加することができる。
輻輳中のノードでは、先頭パケットに付加されたウィンドウサイズ情報を検出するが、そのウィンドウサイズ情報を付加したまま送信すると、受信側で不具合が出ないとも限らない。そこで本発明では、検出した後は消去することで、受信側に何ら影響を与えないようにする。
請求項1と同様の作用効果を奏する。
また、送信側・受信側のTCPには何ら変更を加えず、ネットワーク中のノードの機能だけで対処することができるため、運用面や経済面における様々な現実的事情により、送信側・受信側のTCPを変更できない場合にも適用でき、実導入面で有利である。
即ち、TCPでは、送信側が、受信側からの確認応答パケット(以下、ACKという)の返信を待たずに、一度に送付するパケット数は、ウィンドウサイズ分だけである。そのため、一つのフローにつき、廃棄されるパケット数は、最大でもウィンドウサイズ分である。この廃棄されるパケット数は、到達するウィンドウサイズ分のパケット群の中のどの位置から廃棄を開始するかによって異なってくる。すなわち、パケット群の最初の方であれば、最大でウィンドウサイズ分のパケット数が廃棄されるが、パケット群の最後の方であれば、最小で1パケットとなる。即ち、一つのフローにつき、最大限のパケット数を廃棄するためには、到達するウィンドウサイズ分のパケット群の中で、なるべく最初の方のパケットから廃棄する必要がある。そこで本発明では、送信側のTCPにおいて、ウィンドウサイズ分のパケット群の中で、先頭パケットに、現時点のウィンドウサイズを情報として付加して、輻輳中のノードでは、先頭パケットに付加されたウィンドウサイズの情報を検出して、この情報の中から最大のウィンドウサイズを含むフローを選択して、このフローの先頭パケットを除いた全てのパケットを廃棄する。これにより、パケット廃棄するフロー数を最小限とし、パケット廃棄しないフロー数を最大限とすることができる(詳細は図3で説明する)。
特定のフローにパケット廃棄を集中させることで、その他のフローがパケット廃棄されずに済むようになり、TCP同期の回避という効果を生むというものである。そのため、パケット廃棄するフロー数を最小限とし、パケット廃棄しないフロー数を最大限とすることが、効果を安定的、効率的に生じさせるために必要である。このことは、パケット廃棄するフローについては、RTO(Retransmission Time Out)の動作となり、通信速度が大きく低下してしまうという観点からも必要である(RTOとは、ウィンドウサイズ内で複数のパケット廃棄が発生した場合に、輻輳の度合いが大きいと判断し、送信側にて数秒間待ってからウィンドウサイズを1パケットまで減少させて再送を開始するというTCPの動作である)。しかし、従来の方法は、このような機能を持っていない。そのため、その時々で効果がばらついて安定せず、効果が低いときには、通信速度が大きく低下するフローも無駄に多く発生してしまうという課題があった。
それに対して本発明では、一つのフローにつき、最大限のパケットを廃棄することに取り組む。これにより、最小限のフロー数で、必要な廃棄パケット数を確保することができる。よって、パケット廃棄するフロー数を最小限とし、パケット廃棄しないフロー数を最大限とすることができる。
TCP通信では、送信側が受信側からの確認応答パケット(以下、ACKという)の返信を待たずに、一度に送付するパケット数は、ウィンドウサイズ分だけである。そのため、一つのフローにつき、廃棄されるパケット数は、最大でもウィンドウサイズ分である。この廃棄されるパケット数は、到達するウィンドウサイズ分のパケット群の中のどの位置から廃棄を開始するかによって異なってくる。即ち、パケット群の最初の方であれば、最大でウィンドウサイズ分のパケット数が廃棄されるが、パケット群の最後の方であれば、最小で1パケットとなる。
立ち返って、一つのフローにつき、最大限のパケット数を廃棄するためには、到達するウィンドウサイズ分のパケット群の中で、なるべく最初の方のパケットから廃棄する必要がある。しかし、ネットワーク中のノードは、到達したパケットがウィンドウサイズ分のパケット群の中で、どの位置にあるかを判別する機能を持っていない(パケットの順番はシーケンス番号から判別できるものの、ウィンドウサイズの端がどこなのか判別できない)。
この情報を付加するには、例えば、TCPヘッダのウィンドウサイズ・フィールドや、IPヘッダのオプション・フィールドなどを利用すればよい(前者は、通常、ACKで用いられている。つまり、受信側から送信側に対して、現状の受信バッファの空き容量を通知し、スライディング・ウィンドウ方式でパケットを受け取るために用いられている。後者は、通常、使用されていない)。
また、様々な都合により、送信側のTCPで情報を付加することができない場合は、例えば、エッジノード9にて、送信側に対しては疑似ACKを返信し、受信側に対しては新たにTCPを張り直すようにした上で、新たに張り直すTCPで先頭パケットにこの情報を付加すればよい。
ここで、バッファが一杯になり、パケットを廃棄しなければならなくなったとする。本発明では、到着するパケットから廃棄するのではなく、現時点でバッファに蓄積されているパケットの中から、より変数Nが大きいパケットを含むフローを選択し、廃棄していく。以上により、一つのフローにつき、最大限のパケットを廃棄することができるようになる。この結果、パケット廃棄するフロー数を最小限とし、パケット廃棄しないフロー数を最大限とすることができる。
Claims (4)
- TCP同期現象を回避する輻輳制御装置であって、
ウィンドウサイズ分のパケット群の中で、先頭のパケットに現時点のウィンドウサイズを情報として付加するウィンドウサイズ付加手段と、
前記先頭パケットに付加されたウィンドウサイズの情報を検出するウィンドウサイズ情報検出手段と、
該ウィンドウサイズ情報検出手段により検出されたウィンドウサイズ情報を用いて、ウィンドウサイズ分のパケット群のうち、最も多くパケット数が残されているフローを選択するフロー選択手段と、
該フロー選択手段により選択されたフローのパケットを連続的に廃棄するパケット廃棄手段と、
前記各手段を制御する制御手段と、を備えたことを特徴とする輻輳制御装置。 - 前記制御手段は、送信側のTCPで前記ウィンドウサイズの情報を付加することができない場合、エッジノードにて前記送信側に対しては擬似ACKを返信し、受信側に対しては新たなTCPを張り直すようにした上で、新たに張り直すTCPにおいて先頭パケットに該ウィンドウサイズの情報を付加することを特徴とする請求項1に記載の輻輳制御装置。
- 前記制御手段は、前記ウィンドウサイズ情報検出手段によりウィンドウサイズの情報を検出したことを認識すると、該ウィンドウサイズの情報を消去することを特徴とする請求項1又は2に記載の輻輳制御装置。
- ウィンドウサイズ付加手段、ウィンドウサイズ情報検出手段、フロー選択手段、パケット廃棄手段、及び制御手段を備えた輻輳制御装置の輻輳制御方法であって、
前記ウィンドウサイズ付加手段が、ウィンドウサイズ分のパケット群の中で、先頭のパケットに現時点のウィンドウサイズを情報として付加するステップと、
前記ウィンドウサイズ情報検出手段が、前記先頭パケットに付加されたウィンドウサイズの情報を検出するステップと、
前記フロー選択手段が、前記ウィンドウサイズ情報検出手段により解析されたウィンドウサイズの情報の中から最大のウィンドウサイズを含むフローを選択するステップと、
前記パケット廃棄手段が、前記フロー選択手段により選択されたフローの先頭パケット以外のパケットを廃棄するステップと、
前記制御手段が、前記各手段を制御するステップと、
を備えたことを特徴とする輻輳制御装置の輻輳制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010088476A JP5518549B2 (ja) | 2010-04-07 | 2010-04-07 | 輻輳制御装置及び輻輳制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010088476A JP5518549B2 (ja) | 2010-04-07 | 2010-04-07 | 輻輳制御装置及び輻輳制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011223186A JP2011223186A (ja) | 2011-11-04 |
JP5518549B2 true JP5518549B2 (ja) | 2014-06-11 |
Family
ID=45039619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010088476A Active JP5518549B2 (ja) | 2010-04-07 | 2010-04-07 | 輻輳制御装置及び輻輳制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5518549B2 (ja) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11187031A (ja) * | 1997-12-19 | 1999-07-09 | Fujitsu Ltd | Atm交換機 |
JP4838739B2 (ja) * | 2007-02-02 | 2011-12-14 | 財団法人電力中央研究所 | ルータのバッファ管理方法並びにその管理方法を用いたルータ |
JP5518534B2 (ja) * | 2010-03-15 | 2014-06-11 | 中国電力株式会社 | 輻輳制御装置及び輻輳制御方法 |
-
2010
- 2010-04-07 JP JP2010088476A patent/JP5518549B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2011223186A (ja) | 2011-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10237153B2 (en) | Packet retransmission method and apparatus | |
CN110661723B (zh) | 一种数据传输方法、计算设备、网络设备及数据传输系统 | |
Zhang et al. | A Transport Layer Approach for Improving End-to-End Performance and Robustness Using Redundant Paths. | |
JP5544430B2 (ja) | 通信装置および通信システム | |
US9350672B2 (en) | Performance enhancement and congestion control of multipath protocol packets in a heterogeneous network environment with multipath transport protocols | |
WO2018210117A1 (zh) | 一种拥塞控制方法、网络设备及其网络接口控制器 | |
US9843525B2 (en) | Apparatus and method | |
US20210211937A1 (en) | Data Transmission Method, Apparatus, and System | |
US9577791B2 (en) | Notification by network element of packet drops | |
CN107852371B (zh) | 数据分组网络 | |
WO2014092779A1 (en) | Notification by network element of packet drops | |
JP2006261873A (ja) | パケット転送装置およびその転送制御方式 | |
JP4911223B2 (ja) | 中継装置および端末装置 | |
CN111224888A (zh) | 发送报文的方法及报文转发设备 | |
JP5506591B2 (ja) | 通信システム及び通信品質制御方法 | |
Natarajan et al. | Concurrent multipath transfer using transport layer multihoming: Performance under network failures | |
JP2008118281A (ja) | 通信装置 | |
Le et al. | Reliable user datagram protocol for airborne network | |
Lane et al. | Best-effort network layer packet reordering in support of multipath overlay packet dispersion | |
JP5518549B2 (ja) | 輻輳制御装置及び輻輳制御方法 | |
Ayar et al. | A transparent reordering robust TCP proxy to allow per-packet load balancing in core networks | |
JP5518534B2 (ja) | 輻輳制御装置及び輻輳制御方法 | |
Jungmaier et al. | On SCTP multi-homing performance | |
US20140369189A1 (en) | Method of controlling packet transmission in network system and network system transmitting packet using pseudo-tcp agent | |
Raza et al. | Persistent packet reordering attack in TCP based Ad hoc wireless networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130122 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130911 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20131008 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20131203 |
|
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: 20140401 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140402 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5518549 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |