- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章 传输层 传输层是整个协议层次的核心,它提供端到端的可靠数据传输 传输层的位置 介于通信子网和资源子网之间,对高层用户屏蔽了通信的细节 弥补了通信子网所提供服务的差异和不足,提供端到端之间的无差错保证 传输层工作的简繁取决于通信子网提供服务的程度 传输层提供的服务 面向连接的服务:通信可靠对数据有校验和重发 面向非连接的服务:对数据无校验和重发,通信速率高 传输服务原语 传输服务原语是应用程序和传输服务之间的接口 TPDU 传输协议数据单元 Berkeley Sockets Socket Programming Example:Internet File Server Client code using sockets. Socket Programming Example:Internet File Server (2) Server code using sockets. 传输协议的要素 寻址 连接建立 释放连接 流量控制和缓冲策略 多路复用 崩溃的恢复 寻址 两个程序要建立连接时必须指明对方是哪一个应用程序,这个标记称为传输层地址,也称为传输服务访问点TSAP 在TCP协议中即TCP的端口号 网络层地址称为网络服务访问点NSAP(Network Service Access Point)在IP协议中即IP地址 TSAP NSAP 初始连接协议,由进程服务器代理转接多种不同的服务请求 建立连接 连接的建立:需要解决网络上的延迟与丢失引起的重复分组 常用的方法:三次握手 三次握手 释放连接 非对称释放 一方中止连接则连接即告中断 对称释放 A提出中止请求,B同意即中止 非对称释放 突然释放连接将造成数据丢失 对称释放 a) 三次握手释放连接 b) 最后的确认丢失,定时器超时自动放弃连接 对称释放(2) c) 应答丢失,发送端重发DR d) 应答丢失,重发的DR也丢失 消除半接通连接的方法 当第一个DR和所有N次重发都丢失的情况下,协议失败 解决方法:如果在一段时间内没有收到任何TPDU,连接便自动释放。 需要设定时器,定时发送伪TPDU以保持连接 如连续丢失很多伪TPDU,释放连接 流量控制和缓冲策略 流量控制是发送方和接收方之间的传输速率上的匹配 为使没有得到确认的TPDU在超时后的重发,通常必须在缓冲区中暂存 缓冲区方案 a) 固定大小缓冲区链表 b) 可变长缓冲区链表 c) 一个大的循环缓冲区 传输层的滑动窗口 在确认中给出缓存大小 多路复用 向上多路复用:多个传输层的连接公用一个网络层的连接,将提高网络层连接的利用率 向下多路复用:一个传输层的连接通过多个网络层连接来发送,可增加其有效带宽传送,速率将得到提高 崩溃的恢复 网络崩溃的恢复 数据报子网:如果传输层对丢失的TPDU留有副本,可以通过重发来解决 虚电路子网:必须重新建立连接并询问远端的传输实体,哪些TPDU已经收到,没有收到的则必须重发 主机崩溃的恢复 服务器崩溃然后很快重新起动,所有连接登记表都已经初始化 重新连接后客户端可能处于两种状态之一 S1—有一个未被确认的TPDU S0—没有未被确认的TPDU 在一般情况下,远端服务器的传输实体在接收到一个客户端的TPDU后先发送一个确认,当确认发生后又对应用进程执行一个写操作,如存盘或交上层,向输出流写一个TPDU和发送一个确认是两个不同的而又不可分的事件,但两者不能同时进行 确认和写操作的问题 发送确认然后再进行写操作,中间发生崩溃 此时客户端将收到这个确认,当崩溃恢复声明到达时,它处于状态S0,客户端将因此不再重发,因为它错以为那个TPDU已经到达服务器端,客户端的这种决定会导致丢失一个TPDU 先进行写操作然后再发送确认,中间发生崩溃 设想已经完成了写操作,但在确认发出前系统发生了崩溃,此时客户端将处于状态S1,并因此重传数据,从而会导致在服务器应用进程的输出流上出现一个无法检测的重复的TPDU 无论怎样对发送方和接收方的协议进行编程,总是存在协议不能正确地从故障中恢复的情况 传输层无法彻底解决该问题将由高一层协议处理 Internet传输协议 TCP和UDP都是Internet提供的传输层协议 TCP(RFC 793)是面向连接的 UDP(RFC 768)是面向非连接的 TCP提供的服务 面向连接(Connection Orientation) 端到端的服务(End-to-End Communication) 完全可靠性服务(Complete Reliability) 全双工服务(Full Duplex Communication) 流接口(Stream Interface) 可靠的连接建立(Reliable Connection Startup) 完美的连接终止(Gracefu
您可能关注的文档
最近下载
- 基于Java的企业多媒体管理系统的设计与实现.doc VIP
- 《康复评定技术》课件——言语与吞咽功能评定.pptx VIP
- 2024浙江金华开放大学招聘教师8人笔试备考题库及答案解析.docx VIP
- 凯里市气候舒适度特征分析.pdf VIP
- 建筑起重机械移交使用书.docx VIP
- 五年级上册语文素材-第1-8单元习作范文汇总 人教部编版.doc VIP
- 大学生职业规划大赛《针灸推拿学专业》生涯发展展示PPT.pptx
- 亚朵酒店品牌手册.docx VIP
- 弹性力学-河南理工大学-中国大学MOOC慕课答案.pdf VIP
- 2025年中国邮政集团工作人员招聘考试笔试试题(含答案).docx VIP
原创力文档


文档评论(0)