- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ch7传输层.ppt
第7章 传输层 本章基本要求 主要内容 7.1 运输层协议概述 7.2 端口与插口的概念 7.3 UDP协议 7.4 TCP协议 本章小结 7.1 运输层协议概述 传输层的抽象模型 传输层提供的服务 传输层使用的原语 传输层协议 7.1.1 传输层的抽象模型 传输层为相互通信的应用进程提供逻辑通信 传输层协议和网络层协议的主要区别 7.1.2 传输层实现的基本功能 ① 连接管理:建立连接和释放连接。 ② 流量控制:防止网络拥塞造成数据报的丢失。 ③ 差错检测:传输层的差错检测机制会检测到源点和目的之间的传输完全无错。 ④ 对用户请求的响应:包括对发送和接收数据请求的响应,以及特定请求的响应,如要求更高吞吐率、低延迟或可靠的服务。 ⑤ 建立无连接或面向连接的通信:TCP提供面向连接的传输层服务,UDP则提供无连接的传输层服务。 7.1.3 传输层提供的服务 用户数据报协议 UDP 不需建立连接; 不需要给出任何确认; 不提供可靠交付。 传输控制协议 TCP 提供面向连接的服务; 不支持广播或多播服务; 建立和释放连接,额外增加开销。 传输层向上提供可靠的和不可靠的逻辑通信信道 需要注意的两个问题 传输层的 UDP 用户数据报与网际层的IP数据报的传送方式截然不同。 TCP 报文段的传送对于传输层而言无法知道究竟经过了哪些路由器;路由器也根本不知道上面的传输层是否建立了 TCP 连接。 传输服务原语 用于支持Berkeley UNIX支持的TCP/IP协议的服务原语:Socket原语 SOCKET: BIND: LISTEN ACCPET CONNECT SEND RECV CLOSE TCP通信举例 UDP通信举例 7.2 端口与插口 端口就是运输层服务访问点 TSAP。 端口的作用 使应用层的各种应用进程都能将其数据通过端口向下交付给传输层, 使传输层知道应当将其报文段中的数据向上通过端口交付给应用层相应的进程。 端口用一个 16 bit 端口号进行标志。 端口号只具有本地意义,只是为了标志本计算机应用层中的各进程。 不同计算机上的同一端口未必对应同一进程。 两类端口 熟知端口,其数值一般为 0~1023。当一种新的应用程序出现时,必须为它指派一个熟知端口。 一般端口,用来随时分配给请求通信的客户进程。 插口(socket) TCP 使用“连接”(而不仅仅是“端口”)作为最基本的抽象,同时将 TCP 连接的端点称为插口(socket),或套接字、套接口。 插口和端口、IP 地址的关系 WinSocks函数实现举例 SOCKET Ss,Cs; struct sockaddr_in SA,CA; WORD SPort = 6666; //远程服务器端口 char SIP[16]=; //远程服务器IP地址 connect(Cs,(struct sockaddr *)SA, sizeof(SA)); send(Cs, Buf,strlen(Buf),0); recv(Cs,Msg,strlen(Msg),0); Ss=socket(AF_INET,SOCK_STREAM,0); //创建套接口(流式) SA-sin_family = AF_INET; //TCP/IP协议 SA- -sin_port = htons(SPort); //端口。 SA- -sin_addr.s_addr =inet_addr(SIP); //IP网址。 bind(Ss,(struct sockaddr *) SA,sizeof(SA)); listen(Ss,MAX_CLIENT_NUM); Cs=accept(Ss,(struct sockaddr *)CA,l);//获取客户机主机地址 closesocket(Ss); 7.3 用户数据报协议 UDP 7.3.1 UDP 概述 UDP 只在 IP 的数据报服务之上增加了端口的功能和差错检测的功能。 UDP 的优缺点: 发送数据之前不需要建立连接 UDP 的主机不需要维持复杂的连接状态表。 UDP 用户数据报首部开销小:8个字节。 网络出现的拥塞不会使源主机的发送速率降低。适合实时应用。 不可靠的服务:丢失、失序。 7.3.2 UDP 用户数据报的首部格式 UDP 检验和计算示例 7.4 传输控制协议 TCP 7.4.1 TCP 概述 窗口字段 ( 2 字节),用来控制对方发送的数据量,单位为字节。TCP 连接的一端根据设置的缓存空间大小确定自己的接收窗口大小,然后通知对方以确定对方的发送窗口的上限。 7.4.3 TCP的数据编号与确认 TCP协议是面向字节的。TCP将所要传送的整个报文(这可能包括许多个报文段)看成是一个个字节组成
文档评论(0)