JP4778453B2 - 通信端末、輻輳制御方法および輻輳制御プログラム - Google Patents

通信端末、輻輳制御方法および輻輳制御プログラム Download PDF

Info

Publication number
JP4778453B2
JP4778453B2 JP2007013611A JP2007013611A JP4778453B2 JP 4778453 B2 JP4778453 B2 JP 4778453B2 JP 2007013611 A JP2007013611 A JP 2007013611A JP 2007013611 A JP2007013611 A JP 2007013611A JP 4778453 B2 JP4778453 B2 JP 4778453B2
Authority
JP
Japan
Prior art keywords
segment
bytes
congestion window
start threshold
slow start
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
JP2007013611A
Other languages
English (en)
Other versions
JP2008182410A (ja
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.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
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 NTT Docomo Inc filed Critical NTT Docomo Inc
Priority to JP2007013611A priority Critical patent/JP4778453B2/ja
Priority to US12/017,702 priority patent/US7808910B2/en
Priority to CN2008100045558A priority patent/CN101232445B/zh
Priority to KR20080006582A priority patent/KR100988683B1/ko
Priority to EP20080001170 priority patent/EP1950904A1/en
Publication of JP2008182410A publication Critical patent/JP2008182410A/ja
Application granted granted Critical
Publication of JP4778453B2 publication Critical patent/JP4778453B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/187Details of sliding window management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は通信端末、輻輳制御方法および輻輳制御プログラムに関し、特に、TCP(Transmission Control Protocol)における輻輳制御方法に適用して好適なものである。
現在、インターネットで幅広く用いられているTCPでは、ネットワークの輻輳を回避するために、セグメントを送信する際に輻輳ウィンドウ(CWND)を利用して輻輳制御が行われている。
一般的にTCPの輻輳制御アルゴリズムでは、パケットロスの発生時に、以下のようにして輻輳ウィンドウの設定が行なわれる。
1.FF(Fast Retransmit&Fast Recovery:高速再送および高速復帰)時
SSTHRESH=(1−b)×CWND
CWND=SSTHRESHに設定する。
2.RTO(Retransmit Timeout:再送タイムアウト)発生時
SSTHRESH=(1−b)×CWND
CWND=1×MSSに設定する。
ただし、MSS(Maximum Segment Size)は送信側が送信することができる最大セグメントサイズである。また、CWND(CONGESTION WINDOW)は、TCPの送信可能サイズを制限するTCPステート変数である。また、SSTHRESH(SLOWSTART THRESHOLD)はスロースタート閾値である。
通常のTCPでは、a=1、b=0.5が利用される。
また、例えば、非特許文献1には、パケットロスが検出された際にAck(Acknowledgement:確認応答)の受信間隔からボトルネックリンクに帯域幅を推定しながら、CWNDおよびSSTHRESHの値を計算することで、パケットロスの発生後にネットワークリソースを有効活用する方法が開示されている。
すなわち、パケットロスが検出された際にCWNDおよびSSTHRESHの値を以下のように計算する。
=d/(t−tk−1) (1)
ただし、tはk番目のAckを受け取った時刻、dはk番目のAckを受け取るまでに受信側に到着が確認されたセグメントのバイト数である。
そして、(1)式のbの移動平均を(2)式のように算出し、(2)式のbをCWNDおよびSSTHRESHの値としてそのまま使用する。
=19/21・bk−1+2/21・(b−bk−1)/2 (2)
L.A.Grieco and S.Mascolo:End−to−End bandwidth Estimation for Congestion Control in Packet Networks,Prc.Quality of Service in Multiservice IP Networks(QoS−IP 2003.(Milano),Februry 2003.
しかしながら、従来のTCPの輻輳制御アルゴリズムでは、セグメントロスを契機としてCWNDを減少させ、輻輳制御が行われる。このため、パケットロスの発生前に、CWNDが十分な大きさになっていない場合には、パケットロスの発生後のCWNDおよびSSTHRESHの大きさがネットワーク帯域に対して十分ではないために、用意されたネットワーク帯域を有効利用することができないという問題があった。
また、非特許文献1に開示された方法では、Ackの受信間隔からCWNDおよびSSTHRESHの値が決定されることから、Ackの受信間隔が正確でないネットワーク上では、パケットロスの発生後のCWNDおよびSSTHRESHの値をネットワークの最適な値に合わせることができないという問題があった。
そこで、本発明の目的は、確認応答の受信間隔が正確でないネットワーク上においても、用意されたネットワーク帯域を有効利用しつつ、ネットワークの輻輳を回避することが可能な通信端末、輻輳制御方法および輻輳制御プログラムを提供することである。
上述した課題を解決するために、請求項1記載の通信端末によれば、受信側から送られる確認応答に基づいて、前記受信側に到着が確認されたセグメントのバイト数を送信側で算出する受信バイト数計算部と、前記受信バイト数計算部にて算出されたセグメントのバイト数に基づいて、パケットロス発生時の輻輳ウィンドウまたはスロースタート閾値を設定する受信バイト数設定部とを備え、前記受信バイト数設定部は、高速再送および高速復帰時には、前記受信バイト数計算部にて算出されたセグメントのバイト数および輻輳ウィンドウの1/2の値のいずれか大きい方をスロースタート閾値に設定するとともに、スロースタート閾値を輻輳ウィンドウに設定し、再送タイムアウト時には、前記受信バイト数計算部にて算出されたセグメントのバイト数および輻輳ウィンドウの1/2の値のいずれか大きい方をスロースタート閾値に設定するとともに、送信側が送信することができる最大セグメントサイズを輻輳ウィンドウに設定することを特徴とする。
また、請求項2記載の通信端末によれば、RTTの最小値を計測する最小時間計測部と、前記最小時間計測部にて計測されたRTTの最小値の期間内に受信側から送られる確認応答に基づいて、前記受信側に到着が確認されたセグメントのバイト数を送信側で算出する受信バイト数計算部と、再送タイムアウトまたは重複確認応答に基づいてパケットロスを検出するロス検出部と、前記受信バイト数計算部にて算出されたセグメントのバイト数に基づいて、前記パケットロス発生時の輻輳ウィンドウまたはスロースタート閾値を設定する受信バイト数設定部とを備え、前記受信バイト数設定部は、高速再送および高速復帰時には、前記受信バイト数計算部にて算出されたセグメントのバイト数および輻輳ウィンドウの1/2の値のいずれか大きい方をスロースタート閾値に設定するとともに、スロースタート閾値を輻輳ウィンドウに設定し、再送タイムアウト時には、前記受信バイト数計算部にて算出されたセグメントのバイト数および輻輳ウィンドウの1/2の値のいずれか大きい方をスロースタート閾値に設定するとともに、送信側が送信することができる最大セグメントサイズを輻輳ウィンドウに設定することを特徴とする。
また、請求項3記載の輻輳制御方法によれば、受信側から送られる確認応答に基づいて、前記受信側に到着が確認されたセグメントのバイト数を送信側で算出するステップと、前記送信側で算出されたセグメントのバイト数に基づいて、パケットロス発生時の輻輳ウィンドウまたはスロースタート閾値を設定するステップと、を含み、前記算出するステップでは、高速再送および高速復帰時には、前記受信バイト数計算部にて算出されたセグメントのバイト数および輻輳ウィンドウの1/2の値のいずれか大きい方をスロースタート閾値に設定するとともに、スロースタート閾値を輻輳ウィンドウに設定し、再送タイムアウト時には、前記受信バイト数計算部にて算出されたセグメントのバイト数および輻輳ウィンドウの1/2の値のいずれか大きい方をスロースタート閾値に設定するとともに、送信側が送信することができる最大セグメントサイズを輻輳ウィンドウに設定することを特徴とする。
また、請求項4記載の輻輳制御プログラムによれば、信側から送られる確認応答に基づいて、前記受信側に到着が確認されたセグメントのバイト数を送信側で算出するステップと、前記送信側で算出されたセグメントのバイト数に基づいて、パケットロス発生時の輻輳ウィンドウまたはスロースタート閾値を設定するステップと、を含み、前記算出するステップでは、高速再送および高速復帰時には、前記受信バイト数計算部にて算出されたセグメントのバイト数および輻輳ウィンドウの1/2の値のいずれか大きい方をスロースタート閾値に設定するとともに、スロースタート閾値を輻輳ウィンドウに設定し、再送タイムアウト時には、前記受信バイト数計算部にて算出されたセグメントのバイト数および輻輳ウィンドウの1/2の値のいずれか大きい方をスロースタート閾値に設定するとともに、送信側が送信することができる最大セグメントサイズを輻輳ウィンドウに設定するステップをコンピュータに実行させることを特徴とする。
以上説明したように、本発明によれば、受信側に到着が確認されたセグメントのバイト数に基づいて、パケットロス発生時の輻輳ウィンドウまたはスロースタート閾値を設定することが可能となり、パケットロスの発生後の輻輳ウィンドウの値またはスロースタート閾値をネットワークの最適な値に合わせることが可能となる。このため、確認応答の受信間隔が正確でないネットワーク上においても、用意されたネットワーク帯域を有効利用しつつ、ネットワークの輻輳を回避することが可能となる。
以下、本発明の実施形態に係る通信端末について図面を参照しながら説明する。
図1は、本発明の一実施形態に係る送信端末の概略構成を示すブロック図である。
図1において、送信端末11には、インターネットなどのネットワークを介して送られたセグメントを受信するセグメント受信部12、RTTの最小値を計測する最小時間計測部13、最小時間計測部13にて計測されたRTTの最小値の期間内に受信側から送られる確認応答に基づいて、前記受信側に到着が確認されたセグメントのバイト数を送信側で算出する受信バイト数計算部14、再送タイムアウトまたは重複確認応答に基づいてパケットロスを検出するロス検出部15、受信バイト数計算部14にて算出されたセグメントのバイト数に基づいて、パケットロス発生時の輻輳ウィンドウまたはスロースタート閾値を設定する受信バイト数設定部16およびインターネットなどのネットワークを介してセグメントを送信するセグメント送信部17が設けられている。
そして、セグメント受信部12は、ネットワークを介して送られたセグメントを受信すると、そのセグメントを最小時間計測部13、受信バイト数計算部14およびロス検出部15に送る。
そして、最小時間計測部13は、TCPにて行われる方法と同様にしてRTTを計測することができる。すなわち、Timestamp Optionが利用可能な場合、最小時間計測部13は、Ackの受信時に、(現在の時刻)−(Timestamp Echo)をRTTとすることができる。
一方、Timestamp Optionが利用できない場合、最小時間計測部13は、Ackの受信時に、(現在の時刻)−(Ackされたセグメントが送信された時刻)をRTTとすることができる。
そして、最小時間計測部13は、セグメントが送信されている間にRTTの計測を継続して行い、RTTの最小値(rtt_min)が計測されるごとにRTTの最小値(rtt_min)を更新しながら、RTTの最小値(rtt_min)を受信セグメントのバイト数(rcv_bytes)の計算期間として用いることができる。
また、ルートの切り替えや受信端末の移動などによってRTTが大きく変化する場合を考慮し、以下の場合にはRTTの最小値(rtt_min)を再設定することもできる。
(1)セグメントの送信が1RTT以上の時間行われなかった場合。
この場合には、1RTTとしては、RTTの最小値(rtt_min)の他に、TCPにおいて、RTTから計算されるRTO(Retransmission Timeout)を利用することができる。
(2)CWNDが初期ウィンドウサイズを下回った場合。
次に、受信バイト数計算部14は、最小時間計測部13にてRTTの最小値(rtt_min)が計測されると、RTTの最小値(rtt_min)の時間内に受信したAckまたはSAck(Selective Acknowledgement)の情報から、受信側に到着が確認された受信セグメントのバイト数(rcv_bytes)を算出する。
図2は、本発明の一実施形態に係る受信セグメントのバイト数の計測方法を示す図である。
図2において、TCP送信側21では、RTTの最小値(rtt_min)の時間内にTCP受信側22から受信したAckの情報から、受信側に到着が確認された受信セグメントのバイト数(rcv_bytes)を算出することができる。
具体的には、受信セグメントのバイト数(rcv_bytes)は、以下のようにして計測することができる。
・SAck Optionがサポートされている場合。
RTTの最小値(rtt_min)の時間内に受け取ったAckによって受信端末に受信が通知された最大のシーケンス番号(rcv_ack)から、計測を開始した際にAckを受信していない先頭セグメントのシーケンス番号(drs_snd_una)を引いた値を利用することができる。
また、セグメントの再送中においては、RTTの最小値(rtt_min)の時間内に再送したセグメントの合計バイト数を考慮するために、受け取ったAckのSAck Optionによって通知されたセグメントの合計のバイト数(sack_end)から、計測を開始した際にSAck Optionによって通知されたセグメントの合計のバイト数(sack_start)を引いた値を最初の値に加える。
すなわち、rcv_bytes=rcv_ack−drs_snd_una+(sack_end−sack_start)となる。
なお、セグメントロスが発生していない場合、sack_endおよびsack_startの双方とも0になるので、rcv_bytes=rcv_ack−drs_snd_unaとなる。また、RTTの最小値(rtt_min)の時間内にセグメントロスが解消された場合、sack_endは0になり、sack_startだけが有効になる。
・SAck Optionがサポートされていない場合。
この場合には、重複Ack(rcv_ackがAckを受信していない最小のセグメント(snd_una)以下のAck)の数を考慮して受信セグメントのバイト数(rcv_bytes)を算出することができる。
すなわち、RTTの最小値(rtt_min)の時間内に最後に受け取ったAckによって受信端末に受信が通知されたシーケンス番号(rcv_ack)から、計測を開始した際にAckを受信していない先頭セグメントのシーケンス番号(drs_snd_una)を引いた値を利用することができる。
また、セグメントの再送中においては、再送したセグメントの合計バイト数を考慮するために、RTTの最小値(rtt_min)の時間内に受信した重複Ackの数×MSS(dack_end)から、計測を開始した際に受信した重複Ackの数×MSS(dack_start)を引いた値を最初の値に加える。
すなわち、rcv_bytes=rcv_ack−drs_snd_una+(dack_end−dack_start)となる。
なお、セグメントロスが発生していない場合、dack_endおよびdack_startの双方とも0になる。
ここで、Ackパスについてもキューイングディレイが発生する場合、状況によっては受信セグメントのバイト数(rcv_bytes)を精度よく計測できないことがある。このため、Ackの送信時刻を用いることによってAckパスのキューイングディレイの影響をなくし、受信セグメントのバイト数(rcv_bytes)を精度よく計測することが可能となる。
図3は、本発明の一実施形態に係る受信セグメントのバイト数の計測方法のその他の例を示す図である。
図3において、AckにおいてTCP送信側21側と同様のTimestamp Optionが付加されている場合、RTTの最小値(rtt_min)の時間内に送信されたAckの送信時刻を参照することにより、受信セグメントのバイト数(rcv_bytes)を計測することができる。ただし、受信側と送信側で用いられているTimestamp Optionの粒度が異なる場合、送信側でAckの送信時刻を補正する必要がある。
図4は、送信側においてAckの送信時刻を補正する例を示す図である。
図4において、tsはセグメントの送信時刻、ts_echoはTimestamp Echoを表す。送信側では、Ackを受信した際に、一定の期間計測を行い、その間に受信したAckのtsとts_echoの増加量を計算し、補正に利用する。図4においては、ts_echoの増加量が60であるに対して、tsの増加量は6なので、rcv_bytesは計測を開始した際のAckの送信時刻にRTTの最小値(rtt_min)の10分の1を加えた時刻までのAckによって算出される。
なお、受信セグメントのバイト数(rcv_bytes)が前回算出された受信セグメントのバイト数(rcv_bytes)より増加した場合には、Ackの受信ごとに値を更新するようにしてもよい。また、受信セグメントのバイト数(rcv_bytes)の増減にかかわらず、RTTの最小値(rtt_min)の期間ごとに常に受信セグメントのバイト数(rcv_bytes)の再計算を行うことができる。また、受信セグメントのバイト数(rcv_bytes)に下限を設けることで、受信セグメントのバイト数(rcv_bytes)に極端に小さな値が設定されるのを防止することができる。
また、図1のロス検出部15は、再送タイムアウト(RTO)または重複確認応答(Duplicate Ack)に基づいてパケットロスを検出する
次に、図1の受信バイト数設定部16は、ロス検出部15にてパケットロスが検出された場合、受信バイト数計算部14にて算出されたセグメントのバイト数(rcv_bytes)に基づいて、パケットロス発生時の輻輳ウィンドウ(CWND)またはスロースタート閾値(SSTHRESH)を設定することができる。
具体的には、受信バイト数設定部16は、パケットロスの発生時に、以下のようにして輻輳ウィンドウ(CWND)またはスロースタート閾値(SSTHRESH)を設定することができる。
1.FF(Fast Retransmit&Fast Recovery:高速再送および高速復帰)時
SSTHRESH=MAX(rcv_bytes,CWND/2)
CWND=SSTHRESHに設定する。
2.RTO(Retransmit Timeout:再送タイムアウト)発生時
SSTHRESH=MAX(rcv_bytes,CWND/2)
CWND=1×MSSに設定する。
ただし、受信セグメントのバイト数(rcv_bytes)が、受信セグメントのバイト数(rcv_bytes)の計測時のCWND+α(定数)以下である場合、ネットワークにパケットが滞留していないにもかかわらず、パケットがロストしていることから、このパケットロスはネットワークの輻輳以外の原因で発生したものと判断し、スロースタート閾値(SSTHRESH)を、ロスを検出する前と同じ値に設定することができる。また、輻輳ウィンドウ(CWND)には、一般的なTCPにて行われる方法と同様な値を用いることができる。
次に、図1のセグメント送信部17は、受信バイト数設定部16にて設定された輻輳ウィンドウ(CWND)およびスロースタート閾値(SSTHRESH)に従ってセグメントを送信する。
なお、最小時間計測部13、受信バイト数計算部14、ロス検出部15および受信バイト数設定部16は、これらの手段で行われる処理を遂行させる命令が記述されたプログラムをコンピュータに実行させることにより実現することができる。
そして、このプログラムをCD−ROMなどの記憶媒体に記憶しておけば、送信端末11のコンピュータに記憶媒体を装着し、そのプログラムをコンピュータにインストールすることにより、最小時間計測部13、受信バイト数計算部14、ロス検出部15および受信バイト数設定部16で行われる処理を実現することができる。また、このプログラムをネットワークを介してダウンロードすることにより、このプログラムを容易に普及させることができる。
また、上述した実施形態では、送信側の受信バイト数計算部14にて計算されたセグメントのバイト数に基づいて、パケットロス発生時の輻輳ウィンドウまたはスロースタート閾値を設定する方法について説明したが、受信側に到着が確認されたセグメントのバイト数の計算を受信側で行い、受信側で計算されたセグメントのバイト数を送信側に伝えることで、パケットロス発生時の輻輳ウィンドウまたはスロースタート閾値を設定するようにしてもよい。
また、上述した実施形態では、受信側に到着が確認されたセグメントのバイト数に基づいて、パケットロス発生時の輻輳ウィンドウまたはスロースタート閾値を送信側で設定する方法について説明したが、受信側に到着が確認されたセグメントのバイト数に基づいて、パケットロス発生時の輻輳ウィンドウまたはスロースタート閾値を受信側で算出し、受信側で計算されたパケットロス発生時の輻輳ウィンドウまたはスロースタート閾値を送信側に伝えることで、パケットロス発生時の輻輳ウィンドウまたはスロースタート閾値を送信側で設定するようにしてもよい。
本発明の一実施形態に係る送信端末の概略構成を示すブロック図である。 本発明の一実施形態に係る受信セグメントのバイト数の計測方法を示す図である。 本発明の一実施形態に係る受信セグメントのバイト数の計測方法のその他の例を示す図である。 送信側においてAckの送信時刻を補正する例を示す図である。
符号の説明
11 送信端末
12 セグメント受信部
13 最小時間計測部
14 受信バイト数計算部
15 ロス検出部
16 受信バイト数設定部
17 セグメント送信部

Claims (4)

  1. 受信側から送られる確認応答に基づいて、前記受信側に到着が確認されたセグメントのバイト数を送信側で算出する受信バイト数計算部と、
    前記受信バイト数計算部にて算出されたセグメントのバイト数に基づいて、パケットロス発生時の輻輳ウィンドウまたはスロースタート閾値を設定する受信バイト数設定部と、を備え、
    前記受信バイト数設定部は、高速再送および高速復帰時には、前記受信バイト数計算部にて算出されたセグメントのバイト数および輻輳ウィンドウの1/2の値のいずれか大きい方をスロースタート閾値に設定するとともに、スロースタート閾値を輻輳ウィンドウに設定し、再送タイムアウト時には、前記受信バイト数計算部にて算出されたセグメントのバイト数および輻輳ウィンドウの1/2の値のいずれか大きい方をスロースタート閾値に設定するとともに、送信側が送信することができる最大セグメントサイズを輻輳ウィンドウに設定することを特徴とする通信端末。
  2. RTTの最小値を計測する最小時間計測部と、
    前記最小時間計測部にて計測されたRTTの最小値の期間内に受信側から送られる確認応答に基づいて、前記受信側に到着が確認されたセグメントのバイト数を送信側で算出する受信バイト数計算部と、
    再送タイムアウトまたは重複確認応答に基づいてパケットロスを検出するロス検出部と、
    前記受信バイト数計算部にて算出されたセグメントのバイト数に基づいて、前記パケットロス発生時の輻輳ウィンドウまたはスロースタート閾値を設定する受信バイト数設定部と、を備え、
    前記受信バイト数設定部は、高速再送および高速復帰時には、前記受信バイト数計算部にて算出されたセグメントのバイト数および輻輳ウィンドウの1/2の値のいずれか大きい方をスロースタート閾値に設定するとともに、スロースタート閾値を輻輳ウィンドウに設定し、再送タイムアウト時には、前記受信バイト数計算部にて算出されたセグメントのバイト数および輻輳ウィンドウの1/2の値のいずれか大きい方をスロースタート閾値に設定するとともに、送信側が送信することができる最大セグメントサイズを輻輳ウィンドウに設定することを特徴とする通信端末。
  3. 受信側から送られる確認応答に基づいて、前記受信側に到着が確認されたセグメントのバイト数を送信側で算出するステップと、
    前記送信側で算出されたセグメントのバイト数に基づいて、パケットロス発生時の輻輳ウィンドウまたはスロースタート閾値を設定するステップと、
    を含み、
    前記算出するステップでは、高速再送および高速復帰時には、前記受信バイト数計算部にて算出されたセグメントのバイト数および輻輳ウィンドウの1/2の値のいずれか大きい方をスロースタート閾値に設定するとともに、スロースタート閾値を輻輳ウィンドウに設定し、再送タイムアウト時には、前記受信バイト数計算部にて算出されたセグメントのバイト数および輻輳ウィンドウの1/2の値のいずれか大きい方をスロースタート閾値に設定するとともに、送信側が送信することができる最大セグメントサイズを輻輳ウィンドウに設定することを特徴とする輻輳制御方法。
  4. 受信側から送られる確認応答に基づいて、前記受信側に到着が確認されたセグメントのバイト数を送信側で算出するステップと、
    前記送信側で算出されたセグメントのバイト数に基づいて、パケットロス発生時の輻輳ウィンドウまたはスロースタート閾値を設定するステップと、
    を含み、
    前記算出するステップでは、高速再送および高速復帰時には、前記受信バイト数計算部にて算出されたセグメントのバイト数および輻輳ウィンドウの1/2の値のいずれか大きい方をスロースタート閾値に設定するとともに、スロースタート閾値を輻輳ウィンドウに設定し、再送タイムアウト時には、前記受信バイト数計算部にて算出されたセグメントのバイト数および輻輳ウィンドウの1/2の値のいずれか大きい方をスロースタート閾値に設定するとともに、送信側が送信することができる最大セグメントサイズを輻輳ウィンドウに設定するステップをコンピュータに実行させることを特徴とする輻輳制御プログラム
JP2007013611A 2007-01-24 2007-01-24 通信端末、輻輳制御方法および輻輳制御プログラム Expired - Fee Related JP4778453B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2007013611A JP4778453B2 (ja) 2007-01-24 2007-01-24 通信端末、輻輳制御方法および輻輳制御プログラム
US12/017,702 US7808910B2 (en) 2007-01-24 2008-01-22 Communication terminal, congestion control method, and congestion control program
CN2008100045558A CN101232445B (zh) 2007-01-24 2008-01-22 通信终端、拥塞控制方法
KR20080006582A KR100988683B1 (ko) 2007-01-24 2008-01-22 통신 단말, 폭주제어 방법, 및 폭주제어 프로그램을 기록한 컴퓨터에 의해 판독 가능한 기록매체
EP20080001170 EP1950904A1 (en) 2007-01-24 2008-01-23 Communication terminal, congestion control method and congestion control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007013611A JP4778453B2 (ja) 2007-01-24 2007-01-24 通信端末、輻輳制御方法および輻輳制御プログラム

Publications (2)

Publication Number Publication Date
JP2008182410A JP2008182410A (ja) 2008-08-07
JP4778453B2 true JP4778453B2 (ja) 2011-09-21

Family

ID=39356560

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007013611A Expired - Fee Related JP4778453B2 (ja) 2007-01-24 2007-01-24 通信端末、輻輳制御方法および輻輳制御プログラム

Country Status (5)

Country Link
US (1) US7808910B2 (ja)
EP (1) EP1950904A1 (ja)
JP (1) JP4778453B2 (ja)
KR (1) KR100988683B1 (ja)
CN (1) CN101232445B (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5018663B2 (ja) * 2008-06-17 2012-09-05 富士通株式会社 遅延時間計測装置、遅延時間計測プログラム、および遅延時間計測方法
CN101488840B (zh) * 2009-02-05 2013-04-17 腾讯科技(深圳)有限公司 一种数据传输的方法和装置
US20110090795A1 (en) * 2009-09-11 2011-04-21 Victor On Kwok Li Differentiation among occurrences of packet reordering, congestive packet loss, or random packet loss in communication networks
BR112012026336A2 (pt) 2010-04-12 2016-09-20 Qualcomm Atheros Inc repetição para comunicação com baixo overhead em uma rede
US8340126B2 (en) 2010-06-07 2012-12-25 Lockheed Martin Corporation Method and apparatus for congestion control
US9178789B2 (en) * 2011-08-19 2015-11-03 Futurewei Technologies, Inc. System and method for transmission control protocol slow-start
US8995263B2 (en) * 2012-05-22 2015-03-31 Marvell World Trade Ltd. Method and apparatus for internal/external memory packet and byte counting
WO2014035960A1 (en) * 2012-08-27 2014-03-06 Akamai Technologies, Inc. Preventing tcp from becoming too conservative too quickly
US9432458B2 (en) 2013-01-09 2016-08-30 Dell Products, Lp System and method for enhancing server media throughput in mismatched networks
CN103209064B (zh) * 2013-04-25 2016-01-13 成都希盟泰克科技发展有限公司 一种基于网络编码的传输控制协议确认机制的改进方法
CN104184794B (zh) * 2013-05-27 2019-01-08 韩国电子通信研究院 数据包大小随机化方法
JP6455135B2 (ja) 2014-12-24 2019-01-23 富士通株式会社 パケット抽出装置、パケット抽出プログラムおよびパケット抽出方法
US9819602B2 (en) 2015-07-27 2017-11-14 Qualcomm Incorporated Efficient datagram segmentation and reassembly for packet-switched networks
CN105049369A (zh) * 2015-08-14 2015-11-11 浙江大学 异构无线网络中基于mptcp的视频传输拥塞控制方法
JP6145190B1 (ja) * 2016-03-02 2017-06-07 チエル株式会社 中継装置、中継方法及び中継プログラム
CN108759920B (zh) * 2018-06-04 2021-08-27 深圳源广安智能科技有限公司 一种基于物联网的仓库安全监测系统
CN110324256B (zh) * 2019-05-13 2022-10-14 西南交通大学 一种流式数据传输控制方法
US11190448B2 (en) * 2019-11-26 2021-11-30 Verizon Patent And Licensing Inc. Transport congestion control optimization based on network context
CN113891172B (zh) * 2021-09-02 2022-10-04 西北工业大学 一种适于无线Mesh网络的基于RTT的自适应码率控制方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100322015B1 (ko) * 1998-12-23 2002-03-08 윤종용 근거리 통신망에서 프레임 구조 가변방법
JP2001298485A (ja) * 2000-04-14 2001-10-26 Fujitsu Ltd トランスポート層におけるデータ転送方法
US7099273B2 (en) 2001-04-12 2006-08-29 Bytemobile, Inc. Data transport acceleration and management within a network communication system
US20030046336A1 (en) * 2001-08-31 2003-03-06 D'annunzio Michael A. Persistent link for broadband mobile platform communicatons systems using proxy servers
JP3855011B2 (ja) * 2002-06-24 2006-12-06 学校法人慶應義塾 通信装置及び移動体通信端末
JP2006005833A (ja) * 2004-06-21 2006-01-05 Kyocera Corp データ通信装置、データ通信方法、データ通信プログラムおよび記録媒体
US8125910B2 (en) * 2004-06-25 2012-02-28 Nec Corporation Communication system
US7656800B2 (en) * 2004-07-30 2010-02-02 Cisco Technology, Inc. Transmission control protocol (TCP)
JP4599554B2 (ja) * 2004-12-15 2010-12-15 広島市 広帯域、高遅延無線ネットワークにおけるtcp輻輳制御方式
JP4147534B2 (ja) * 2005-02-03 2008-09-10 日本電気株式会社 通信装置および通信方法
JP4429982B2 (ja) * 2005-07-04 2010-03-10 日本電信電話株式会社 輻輳制御方法およびその通信端末

Also Published As

Publication number Publication date
CN101232445A (zh) 2008-07-30
KR20080069910A (ko) 2008-07-29
CN101232445B (zh) 2011-01-12
JP2008182410A (ja) 2008-08-07
KR100988683B1 (ko) 2010-10-18
EP1950904A1 (en) 2008-07-30
US20080181109A1 (en) 2008-07-31
US7808910B2 (en) 2010-10-05

Similar Documents

Publication Publication Date Title
JP4778453B2 (ja) 通信端末、輻輳制御方法および輻輳制御プログラム
KR100789034B1 (ko) 검출 방법 및 장치
JP4708978B2 (ja) 高スループットを実現する通信システム、通信端末、セッション中継装置、及び通信プロトコル
US20060209838A1 (en) Method and system for estimating average bandwidth in a communication network based on transmission control protocol
KR20040015009A (ko) Nack-기반 프로토콜에서 적체의 제어를 신뢰할만하고효과적으로 지원하기 위한 방법
KR100912178B1 (ko) 무선 환경에서의 혼잡제어방법 및 기록매체
KR100922472B1 (ko) 통신 단말, 통신 제어 방법 및 통신 제어 프로그램
US11533656B2 (en) Method of traffic and congestion control for a network with quality of service
US7613976B2 (en) Method for setting the retransmission timeout period in a packet switched communication network
EP2922241B1 (en) Methods and apparatus to determine network delay with location independence from retransmission delay and application response time
JP4435817B2 (ja) 通信端末、通信制御方法および通信制御プログラム
JP5387058B2 (ja) 送信装置、送信レート算出方法及び送信レート算出プログラム
JP6011813B2 (ja) 通信装置およびその通信制御方法
EP3108631A1 (en) Buffer bloat control
US7907613B1 (en) Method and apparatus for measuring RTT in a cumulative acknowledgment transmission protocol
Bajeja et al. Performance evaluation of traditional TCP variants in wireless multihop networks
Pujeri et al. Survey of End-to-End TCP Congestion Control Protocols
WO2017061075A1 (ja) 制御システム、可用帯域推定システム、装置、方法およびプログラム
KR20130116394A (ko) 전송 제어 프로토콜의 혼잡 윈도우 제어 방법
Siekkinen T-110.4100 Computer Networks TCP
Mehta et al. Enrichment of ‘SACK’TCP performance by delaying fast recovery
Siekkinen T-110.4100 Tietokoneverkot TCP
Siekkinen User Datagram Protocol (UDP) Transmission Control Protocol (TCP)
JP2005252638A (ja) ネットワーク通信制御方法および装置
Bae et al. An End-to-End Proactive TCP Based on Available Bandwidth Estimation with Congestion Level Index

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090916

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110322

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110412

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110607

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110701

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140708

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140708

Year of fee payment: 3

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D04

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees