GPRS011TCPIP特性及应用

上传人:宝路 文档编号:47981375 上传时间:2018-07-07 格式:PPTX 页数:28 大小:1.25MB
返回 下载 相关 举报
GPRS011TCPIP特性及应用_第1页
第1页 / 共28页
GPRS011TCPIP特性及应用_第2页
第2页 / 共28页
GPRS011TCPIP特性及应用_第3页
第3页 / 共28页
GPRS011TCPIP特性及应用_第4页
第4页 / 共28页
GPRS011TCPIP特性及应用_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《GPRS011TCPIP特性及应用》由会员分享,可在线阅读,更多相关《GPRS011TCPIP特性及应用(28页珍藏版)》请在金锄头文库上搜索。

1、Guangzhou HANTELE Communication Co.LTDTCP/IP特性及应用 GPRS-011课堂纪律2.上课应带上笔和笔记本,做好笔记3.精神饱满,积极参与课堂学习和讨论4.不迟到、不早退,请假需与讲师说明1.手机必须处于静音状态,原则上尽量不使用电话课程目标通过对课程的学习,您将能够学到:1. TCP实现的主要机制原理2. TCP实现的主要参数介绍3. TCP在现网中的应用1. TCP实现的主要机制原理2. TCP实现的主要参数介绍3. TCP在现网中的应用目录延迟应答机制延迟应答机制产生的背景:减少报文重传数量和 ACK 数量能有效提高无线自组网中 TCP 的传输性

2、能。在RFC1122 中,提出了延迟ACK策略来减少ACK数量(TCP_DA)。接收方收到一个报文后,等待TcpDelAckTicks Timer(默认200 ms),这期间若有回送数据报文就捎带ACK,如果收到 TcpAckFrequency 个连续的数据报文或等待超时则发送 1 个独立ACK。延迟ACK的应用虽然减少了ACK数量,但非及时的确认有时会影响发送方的发送效率,限制了TCP在启动阶段的数据率增加。另外,延迟ACK会影响RTT的正确估计,对TCP整体性能造成一定影响。有关 Delay ACK的详细内容参阅: RFC 1122: Requirements for Internet H

3、osts - Communication Layers.SACK选择性应答机制+-+-+| Kind=5 | Length |+-+-+-+-+| Left Edge of 1st Block |+-+-+-+-+| Right Edge of 1st Block |+-+-+-+-+| |/ . . . /| |+-+-+-+-+| Left Edge of nth Block |+-+-+-+-+| Right Edge of nth Block |+-+-+-+-+SACK选项 选项类型: 5 选项长度: 可变,但整个TCP选项长度不超过40字节,实际最多不超过4组边界值。 当选择了时间

4、戳选项时,SACK不能超过3组边界值。该选项参数告诉对方已经接收到并缓存的不连续的数据块,注意都是已经接收的,发送方可根据此信息检查究竟是哪个块丢失,从而发送相应的数据块。 * Left Edge of Block 不连续块的第一个数据的序列号。 * Right Edge of Block 不连续块的最后一个数据的序列号之后的序列号。表示(Left Edge - 1)和(Right Edge)处序列号的数据没能接收到。 SACK主要作用:通过SACK选项可以使TCP发送方只发送丢失的数据而不用发送后续全部数据,提高了数据的传输效率。SACK选择性应答机制携带SACK的响应信息Tcp.ac kL

5、eft Edge Right Edge 接收方发起携带SACK的响应消息,该消息携带重要字段:ACK number、Left Edge、Right Edge。其中ACK Number表示告知发送方“我已收到在此序列号之前所有的数据包。”Left Edge和Right Edge有两种情况,表达意思也不一样。1、当Right EdgeTcp.ack时,告知发送方“我收到ACK序列号之前所有的数据包和L-R序列号之间的数据包”,发送方收到这样的ACK包,即可判断接收方在当前时刻没有收到ACK序列号到Left Edge之间的数据包。可能出现乱序或者丢包。慢启动机制当新建连接时,cwnd初始化为1或2个

6、最大报文段(MSS)大小,发送端开始按照拥塞窗口大小发送数据,每当有一个报文段被确认,cwnd就增加1个MSS大小。使用慢开始算法后,每经过一个窗口发送轮次,拥塞窗口 cwnd 就加倍。注:一个发送轮次指把拥塞窗口 cwnd 所允许发送的报文段都连续发送出去,并收到了对已发送的最后一个字节的确认。这样cwnd的值就随着发送窗口发送轮次呈指数级增长,事实上,慢启动的速度一点也不慢,只是它的起点比较低一点而已。可以简单计算下:开始 - cwnd = 1经过1个发送轮次后 - cwnd = 2*1 = 2经过2个发送轮次后 - cwnd = 2*2= 4经过3个发送轮次后 - cwnd = 4*2

7、= 8如果带宽为W,那么经过RTT*log2W时间可占满带宽。拥塞避免机制从慢启动可以看到,cwnd可以很快的增长上来,从而最大程度利用网络带宽资源,但是cwnd不能一直这样无限增长下去,一定需要某个限制。TCP使用了一个叫慢启动门限(ssthresh)的变量,当cwnd超过该值后,慢启动过程结束,进入拥塞避免阶段。对于大多数TCP实现来说,ssthresh的值是65536(同样以字节计算)。拥塞避免的主要思想是加法增大,也就是cwnd的值不再指数级往上升,开始加法增加。此时当窗口中所有的报文段都被确认时,cwnd的大小加1,cwnd的值就随着发送轮次开始线性增加,这样就可以避免增长过快导致网

8、络拥塞,慢慢的增加调整到网络的最佳值。慢开始门限 ssthresh 的用法如下:当 cwnd ssthresh 时,停止使用慢开始算法而改用拥塞避免算法。当 cwnd = ssthresh 时,既可使用慢开始算法,也可使用拥塞避免算法。当发生超时重传时,采取如下算法:Ssthresh设置为当前Cwnd的一半,并且至少为两个MSS单元大小。即Ssthresh=Max(Cwnd/2(Ssthresh=2*MSS))Cwnd重新初始化。慢启动拥塞避免超时重传上图是一个FTP上传事件的Cwnd变化趋势图,可以明显看到慢启动过程中Cwnd以指数形式增长,在拥塞避免阶段改为线性增长。超时重传将被TCP进程

9、认为TCP连接已拥塞崩溃,将重新开始数据传输,即重新进入慢启动状态。慢启动与拥塞避免实例快重传机制快重传算法首先要求接收方每收到一个失序的报文段后就立即发出重复确认。这样做可以让发送方及早知道有报文段没有到达接收方。发送方只要一连收到(Tcp_Dupack_Fast_Retransmit Default=3)个重复确认就应当立即重传对方尚未收到的报文段。不难看出,快重传并非取消重传计时器,而是在某些情况下可更早地重传丢失的报文段。快恢复机制当发送端收到连续三个重复的确认时,就执行“乘法减小”算法,把慢启动门限 ssthresh 减半。但接下去不执行慢启动算法。由于发送方现在认为网络很可能没有发

10、生拥塞,因此现在不执行慢启动算法,即拥塞窗口 cwnd 现在不设置为 1,而是设置为慢启动门限 ssthresh 减半后+3*MSS的数值,然后开始执行拥塞避免算法(“加法增大”),使拥塞窗口缓慢地线性增大。从连续收到三个重复的确认转入快恢复“乘法减小”拥塞避免 “加法增大”242468101214161820220048121620拥塞窗口 cwnd收到 3 个重复的确认 执行快重传算法慢启动拥塞避免 “加法增大”Cwnd=24/2+3=15超时重传机制T C P提供可靠的运输层。它使用的方法之一就是确认从另一端收到的数据。但数据和确认都有可能会丢失。T C P通过在发送时设置一个定时器来解

11、决这种问题。如果当定时器溢出时还没有收到确认,它就重传该数据。对任何实现而言,关键之处就在于超时和重传的策略,即怎样决定超时间隔和如何确定重传的频率。当发生超时重传时,重新开始慢启动状态,采取如下算法:Ssthresh设置为当前Cwnd的一半,并且至少为两个MSS单元大小。即Ssthresh=Max(Cwnd/2(Ssthresh=2*MSS))Cwnd重新初始化。小节(标题字体32号,黑体)2.正文采用24号字体,宋体,但根据具体情况可灵活调整(行间距1.5倍)1.目标或章节总结可以采用表框的形式1. TCP实现的主要机制原理2. TCP实现的主要参数介绍3. TCP在现网中的应用目录参数介

12、绍KeepAliveTimeKeepAliveTime 值控制 TCP/IP 尝试验证空闲连接是否完好的频率。如果这段时间内没有活动,则会发送保持活动信号。启动 regedit 命令,浏览至 HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters 注册表子键,然后创建或设置名为 KeepAliveTime 的新 REG_DWORD 值。为该值设置适当的毫秒数。TcpMaxDataRetranmissionTcpMaxDataRetranmission 值定义了 TCP/IP 通过现有连接重新发送未返回应答的数据段的次数。

13、缺省情况下,Windows 会重新发送未返回应答的数据段 5 次。启动 regedit 命令,浏览至 HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters 注册表子键,然后创建或设置名为 TcpMaxDataRetransmissions 的新 REG_DWORD 值。参数介绍TcpAckFrequencyTcpAckFrequency 值确定了 TCP/IP 发送应答消息的频率。缺省情况下,Windows 使用值 2(每隔一个分段应答一次)。该值的有效范围是 0 到 255,其中 0 表示使用缺省值(2)。启动 re

14、gedit 命令,浏览至 HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParametersInterfacesAdapterId 注册表子键(其中 AdaperId 表示将受影响的网络适配器),然后创建或设置名为 TcpAckFrequency 的新 REG_DWORD 值。TcpDelAckTicks 项: TcpipParametersInterfacesinterface 数值类型: REG_DWORD - 数字 有效范围: 0-6 默认值: 2(200 毫秒) 说明:指定每个接口上延迟 ACK 计时器所使用 100 毫秒间

15、隔的个数。默认情况下,延迟 ACK 计时器为 200 毫秒。将该数值设置为 0,将禁用延迟确认,计算机就会立即确认所收到的每个数据包。 参数介绍Tcp1323Opts 项: TcpipParameters 数值类型: REG_DWORD - 数字(标志) 有效范围: 0、1、2、3 0(禁用 RFC 1323 选项)1(仅启用窗口缩放)2(仅启用时间戳)3(两个选项均启用) 默认值: 没有数值;默认行为如下所示:除非要求提供,否则不要启用选项。 GlobalMaxTcpWindowSize 项: TcpipParameters 数值类型: REG_DWORD - 字节数 有效范围: 0-0x3FFFFFFF(十进制为 1073741823;但是当连接到其它支持 RFC 1323 窗口缩放的系统时,可以获得大于 64 KB 的数值,它在本文的 TCP 部分进行了讨论。另外,必须使用 Tcp1323Opts 注册表参数

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号