前のページに戻る(ファイル形式: Eric's Markdown)

RTO(再送タイマのタイムアウト)

理論

初回算出

G = Clock Granularity(クロック粒度) - HardwareとKernel依存 K = 4 RTT = ACKが返るまでの時間(Window-Size毎に1Packetサンプリング) SRTT = RTT RTTV = RTT/2 RTO = SRTT + max(G, K * RTT)

G = 100 K = 4 RTT = 0.3 (300ms) RTO = 0.3 + max(0.01, 4 * 0.3 /2 ) = 0.9 -> 1 (1以下は繰り上げ)

2回目以降

G = Clock Granularity(クロック粒度) - HardwareとKernel依存 K = 4 a = 0.125 = 1/8 b = 0.250 = 1/4 RTT = ACKが返るまでの時間(Window-Size毎に1Packetサンプリング) SRTT = SRTT*(1-a) + a * RTT RTTV = RTTV*(1-b) + b * | SRTT - RTT | RTO = SRTT + max(G, K * RTT)

再送タイマ期限切れの場合

RTO = RTO*2

実装

Linux