计算机网络之探赜索隐
本讲主题
TCP可靠数据传输
计算机网络之探赜索隐 2
TCP可靠数据传输概述
TCP在IP层提供的不可靠服 触发重传的事件
务基础上实现可靠数据传输 超时
服务 收到重复ACK
流水线机制 渐进式
累积确认 暂不考虑重复ACK
TCP使用单一重传定时器 暂不考虑流量控制
暂不考虑拥塞控制
计算机网络之探赜索隐 3
TCP RTT和超时
问题:如何设置定时器的超 问题:如何估计RTT?
时时间? SampleRTT: 测量从段发出去
大于RTT 到收到ACK 的时间
但是RTT是变化的 忽略重传
过短: SampleRTT变化
不必要的重传 测量多个SampleRTT,求平均值
过长: ,形成RTT的估计值
EstimatedRTT
对段丢失时间反应
EstimatedRTT = (1- )*EstimatedRTT + *SampleRTT
指数加权移动平均
典型值:0.125
计算机网络之探赜索隐 4
TCP RTT和超时
定时器超时时间的设置:
EstimatedRTT + “安全边界”
EstimatedRTT变化大较大的边界
测量RTT的变化值: SampleRTT与EstimatedRTT的差值
DevRTT = (1- )*DevRTT +
*|SampleRTT-EstimatedRTT|
(typically, = 0.25)
定时器超时时间的设置:
TimeoutInterval = EstimatedRTT + 4*DevRTT
计算机网络之探赜索隐 5
TCP发送方事件
从应用层收到数据 超时
创建Segment 重传引起超时的Segment
序列号是Segm