第4-2讲差错控制技术分析.ppt

  1. 1、本文档共50页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4-2讲差错控制技术分析

* * * * * * * 当错误多项式能给生成多项式正除时就检测不出错误。 * * * * * 伪首部包含源和目的地址及协议号,首部包含源和目的端口,构成一对套接字,检验包括头部和数据 * * * * * * * * * * * * * * * * * * * * * * * * * -* 差错控制技术 二、计时器(Timer) -* 计时器 为什么需要计时器? 如果携带确认信息的确认PDU或数据PDU丢失,则发送方无法知道发送的PDU的接收情况。 这将导致: 对于可靠通信协议而言,占用发送方缓存 由于流量控制而不能发送新的PDU 发送方一直处于等待状态,死锁 计时器:检测确认PDU或重传请求信号的丢失 -* 计时器(续) 计时器的超时值如何设置? 是一个非常复杂和难解决的问题,依赖于住返时间(RTT) RTT与网络负载和路由选择策略有很大的关系,通常情况下是一个动态变化的量 动态估计往返时间和重传计时器定时值的算法 Mills算法(Mills, 1983) Edge算法(Edge, 1984) Karn和Patridge的算法(Karn and Patridge, 1987) Jacobson/Karel的算法(Jacobson, 1988) 如果超时计时器的超时值设置不当,会导致 过短,导致连续大量的数据重传,严重情况下将加剧网络拥塞,甚至出现拥塞崩溃 如果超时值设置太长,出现数据丢失而得不到及时纠正,则会降低协议的性能 -* 计时器(续) 为了差错控制的目的,一个协议中往往存在多个计时器(续) TCP协议: 重传计时器:控制丢失的或丢弃的报文段 冻结计时器:一条连接一个冻结计时器。当发送端的TCP收到一个窗口大小为零(让发送端停止发送)的确认时,就启动冻结计时器。 保活计时器:在某些实现中,用来防止在两个TCP端点之间的连接长期处于空闲 时间等待计时器:在连接终止期间使用。当TCP关闭一个连接时,它并不认为这个连接马上就真正关闭。在时间等待期间中,连接还处于一种中间过渡状态。 -* 计时器:思考题 5 请以TCP为例,详细讨论在设置计时器的超时值时应考虑哪些问题。 -* 差错控制技术 三、重传(Retransmit) -* 重传 指发送者重传由确认所指出的数据PDU或重传计时器超时未收到确认的数据PDU。 基于滑动窗口的重传方法: 回退n帧(Go-back-N) 接收方直接丢弃所有不按序到达的数据PDU。 发送方从第一个否定确认或超时时所指序号的数据PDU开始,重传所有后续数据PDU。 选择重传(selective repeat) 发送方只重传否定确认、选择确认和计时器超时指出的那些数据PDU -* 重传(续) 实际协议中的重传机制比较复杂,主要是计时器的超时间隔很难确定。 TCP的重传机制 重传机制是TCP中最重要和最复杂的问题之一。TCP每发送一个报文段,就设置一次计时器。只要计时器设置的重传时间到而还没有收到确认,就要重传这一报文段。 TCP的下层往往是一个互连网环境。发送的报文段可能只经过一个高速率的局域网,也可能经过多个低速率的广域网,并且数据报所选择的路由也可能会发生变化 需要一种动态自适应算法 -* 差错控制技术 四、序号(Sequence Number) -* 序号 为什么需要序号? 为了检测数据PDU的重复、失序和丢失,需要对数据PDU进行无二义性的编号,该编号称为数据PDU的序号 编号通常是按照请求服务者传递SDU的次序进行的。这些SDU被放入PDU中进行传输。 序号有三种不同的产生方式: SDU序号:对每个SDU都编上序号,从SDU序号得到PDU的序号。如果该SDU被携带在多个数据PDU中时,还应附加一个SDU数据块号 PDU序号:对PDU连续编号,不管它们携带的SDU数据量。 字节序号:一个SDU的每个字节都编号,PDU的序号来自于它所携带的SDU的第1个字节的序号或最后1个字节的序号。 -* 序号(续) 一个重要的问题:如何防止序号重复? 使用非常大的序号空间。这个序号空间大到使得在数据单元从这一端传送到另一端的最大可能的迟延时间L内,所有从源点发送出去的新的数据单元都具有不同的序号。在开始一个新的连接时,可以使数据单元的起始序号为上次连接中最后使用过的序号加1。 每次连接开始数据单元都使用同样的起始序号,但必须使新的连接推迟开始,如至少在上次的连接释放后推迟时间L。 赋给每个连接一个标号,或者称为连接序号。对于一个给定连接中的每一个数据单元都附上连接序号。当新建一个连接时,就换上一个新的序号(如socket)。 -* 序号(续) 序号空间的大小与信道特点、确认方法、流量控制方法和PDU数据字段长度有关 如果信道的质量比较好,则序号空间要求比较大,

文档评论(0)

wbjsn + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档