chapter3传输层.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章 传输层 3.1 概述及传输层服务 3.3 UDP 3.4 可靠数据传输 原理 3.5 TCP 3.6 拥塞控制 原理 3.7 TCP 拥塞控制 3.1 传输层服务 传输层协议运行在不同的主机上 发送方: 将应用层报文分为段,传递给网络层 接收方:将“段”重组为报文,传递给应用层 TCP and UDP 3.1.1 Transport vs. network layer 一个家庭的例子:12个孩子给另外12个孩子写信 进程 =孩子 应用报文 = 信封里的信件 主机 = 家 传输层协议 = Ann 和 Bill 网络层协议 = 邮政服务 3.1.1 传输层和网络层的关系 网络层: 主机之间的逻辑通信 传输层: 进程之间的逻辑通信 依赖网络层服务,同时也促进网络层服务 3.1.2 Internet 传输层概述 可靠的,按序传送 :TCP 拥塞控制 流量控制 建立连接 不可靠,无序传输: UDP 不能实现的服务: 延迟保证 带宽保证 3.3 UDP: User Datagram Protocol 尽最大努力传送服务, UDP 数据段可能会: 丢失 向应用层传送乱序的数据 无连接: 在 UDP发送方和接收方之间没有握手机制 每个UDP段都独立处理 为什么需要UDP? 不需要建立连接(建立连接会增加延迟) 简单:在发送方和接收方不需要维护连接信息 段头部信息小(无效载荷少,提高传输效率) 没有拥塞控制:可以任意传送突发的大量数据 3.3 UDP 通常用于流式多媒体数据 允许丢失 对传输速率敏感 其他使用UDP的应用 DNS SNMP 简单网络管理协议 在UDP上实现可靠传输: 在应用层增加可靠性 由应用层进行错误恢复! 3.3 UDP校验和 发送方: 源端口 + 目的端口 + 长度 = A (0101) 校验和= A(1010) 发送方将校验和写进UDP报头 接收方: 源端口+目的端口+长度+校验和 = 11…1 ?(1111) 不是 – 检测出错 是 – 未检测出错. 3.4 可靠数据传输原理 3.4.1 构造一个可靠数据传输协议 1. rdt1.0 : 理想的可靠信道 2. rdt2.0 : 有比特错误的信道 3. rdt3.0 : 有比特错误并且会丢失的信道 3.4.2 流水线式可靠数据传输原理 3.4.3 退后N帧协议 (GBN) 3.4.4 选择性重传 (SR) 3.4.1 开始构造一个 rdt 协议 3.4.1 构造可靠数据传输协议(rdt) 1. rdt1.0:基于理想信道 2. rdt2.0:基于有比特错误的信道的 3. rdt3.0:基于会丢失且会出错的信道 3.4.1 构造可靠数据传输协议(rdt) 3.4.1 构造可靠数据传输协议(rdt) 构造发送方和接收方的可靠协议 只考虑单向数据传输 (控制信息双向传输) 使用有限状态自动机(FSM)描述发送方和接收方 3.4.1 Rdt1.0 底层是非常可靠的信道 没有比特错误 没有分组丢失 发送方和接收方的行为: 发送方将数据发送给底层信道 接收方从底层信道接收数据 3.4.1 Rdt2.0 有比特错误的信道 Q : 怎样从错误中恢复: 确认(ACKs): 接收方告诉发送方分组正确接收 否定确认 (NAKs): 接收方告诉发送方分组出错 发送方接收到否定确认后重新传送分组 rdt2.0: FSM 描述 rdt2.0: 运行 (正确时) rdt2.0: 运行(出错时) 3.4.1 Rdt3.0(rdt2.0的缺陷)! 如果 ACK/NAK 丢失呢? 发送方只是重传: 可能重复,产生复本 处理重复问题: 发送方在每个分组上添加序列号 如果ACK/NAK丢失,发送方重传当前分组 接收方丢弃重复的分组(不向上层递交) rdt3.0 运行(正确时) rdt3.0 运行(丢失分组/ACK) rdt3.0 (过早超时) 3.4.2 流水线协议 例: 链路带宽R=1 Gbps, 传播延迟RTT=15 ms, 分组长度L=1KB 流水线Pipelining:提高效率 3.4.2 流水线协议 流水线: 连续发送多个分组,不需要等 序列号范围要增大 在发送和接收方要能够缓存分组 3.4.2流水线协议 Q : 如果分组出现错误,怎么处理其他正确的分组 ? 重传错误分组之后的所有分组--退后N帧协议 (GBN) 仅仅重传错误分组--选择性重传协议SR 3.4.3 Go-Back-N 接收方: ACK-only: 给当前正确按序接收到的序号最大的分组发送ACK 可能会产生重复的ACK 只需要记住“期待接收的序号”(除此之外都丢弃并发送ACK) 乱序的分组: 丢弃 (不缓存) - 不需要接收方缓冲区!

文档评论(0)

awang118 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档