资源预览内容
第1页 / 共65页
第2页 / 共65页
第3页 / 共65页
第4页 / 共65页
第5页 / 共65页
第6页 / 共65页
第7页 / 共65页
第8页 / 共65页
第9页 / 共65页
第10页 / 共65页
亲,该文档总共65页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第九章 运输层运输层协议概述TCP/IP体系中的运输层用户数据报协议UDP运输控制协议TCP2022/5/151303教研室 张来顺运输层协议概述运输层在层次体系结构中的地位运输层网络层应用层用户功能网络功能面向通讯面向信息处理数据链路层物理层2022/5/152303教研室 张来顺运输层协议概述OSI上三层OSI上三层OSI下三层OSI下三层用户进程管理通信子网向上提供标准的传输服务向下屏蔽不同的通信子网2022/5/153303教研室 张来顺运输层协议概述物理层使链路上能透明地传送比特流;链路层使各条链路能透明地传送无差错的帧(按序,无丢失,不重复)。点到点通信网络层提供路由选择和网络互连。主机间通信运输层提供一条端到端的可靠的通信服务。主机进程间通信主机AAP1AP2AP3N1N2主机BAP4AP5AP62022/5/154303教研室 张来顺运输层协议概述严格地讲,两个主机进行通信实际上就是两个主机中的应用进程互相通信;网络层为主机之间提供逻辑通信,IP协议虽然能够把分组送到目的主机,但是无法交付给主机中的应用进程;在网络层,IP数据报首部中的检验和字段,只检验首部是否出现差错而不检查数据部分;因此,在网络层之上,设置一个传输层向它上面的应用层提供通信服务。2022/5/155303教研室 张来顺运输层协议概述传输层的功能基本功能:提供端到端(进程-进程)的可靠通信,即向高层用户屏蔽通信子网的细节,提供通用的传输接口。主要功能:把传输地址映射为网络地址把端到端的传输连接复用到网络连接上传输连接管理端到端的顺序控制、差错检测及恢复、分段处理及QoS监测加速数据传送2022/5/156303教研室 张来顺运输层协议概述n运输层模型运输服务用户运输服务用户 应用层抽象机器. . . .运输服务提供者(运输实体)运输服务访问点TSAP连接端点2022/5/157303教研室 张来顺TCP/IP体系中的运输层TCP/IP的运输层2个协议用户数据报协议UDP(User Datagram Protocol)运输控制协议TCP(Transmission Control Protocol)与各种网络接口IPUDPTCP应用层2022/5/158303教研室 张来顺TCP/IP体系中的运输层UDPUDP是无连接的数据报服务。即UDP不提供可靠交付,但在某些情况下UDP是一种最有效的工作方式。注意UDP用户数据报与IP数据报的区别。IP数据报要经过路由器的存储转发,UDP数据报是在运输层的端到端抽象的逻辑信道中传送的。但这个逻辑信道并不是经过路由器(运输层看不见路由器),UDP数据报只是IP数据报中的数据,因此路由器看不见有用户数据报经过它。2022/5/159303教研室 张来顺TCP/IP体系中的运输层TCPTCP提供面向连接的服务。IP层不保证报文正确传输,TCP进行超时、重传控制。报文不一定按顺序到达,TCP进行重新装配。TCP不提供广播或多播服务。注意TCP连接与网络层中虚电路(如X.25所使用的)的不同。TCP报文段是在运输层抽象的端到端逻辑信道中传送,这种信道是可靠的全双工信道。但这样的信道却不知道究竟经过了哪些路由器。而在X.25 建立的虚电路所经过的交换结点中,都必须保存X.25虚电路的状态信息。2022/5/1510303教研室 张来顺TCP/IP体系中的运输层TCP的功能多路复用多种应用数据TCP同时接收多个应用数据,把它们打包到数据段中传给IPTCP通过端口来实现跟踪记录到达的报文要转发到的应用程序(如端口80:超文本传输协议,http )测试所接收数据的完整性比较TCP头的校验和,如果出现问题就给源主机发一请求,要求其重发一份数据拷贝顺序化乱序接收的数据通过查看TCP头中的序列号域可以完成这个任务2022/5/1511303教研室 张来顺TCP/IP体系中的运输层速率-适应的流控流量控制使用的是TCP窗口大小。源和目的机的窗口大小通过TCP头进行通信如果机器的缓冲完全被填满,它就会发送一个有关最后收到数据的应答报文,其中新的窗口大小为0。这样会有效地使发送停止,直到拥塞的机器能清理掉其缓冲定时功能 计时器可以间接地管理网络拥塞,其方法是当超时出现时减慢传输率应答接收没被应答的数据段被认为在传输过程中已丢失,并被重传2022/5/1512303教研室 张来顺TCP/IP体系中的运输层n端口的概念什么是端口(Port)? 端口就是传输层的服务访问点(TSAP),用来区分不同的应用进程,运输层进行复用和分用。UDP和TCP都使用了与应用层接口处的端口与上层的应用进程进行通信。应用层的各种进程是通过相应的端口与传输层实体进行交互。当传输层收到IP层交上来的数据(即TCP报文段或UDP数据报),就要根据其首部中的端口号来决定应当通过哪个端口上交给应当接收此数据的应用进程。2022/5/1513303教研室 张来顺TCP/IP体系中的运输层端口在进程中的作用应用进程应用进程应用进程应用进程应用层运输层网络层端口端口端口端口端口端口端口端口TCP复用UDP复用NSAPNSAPNSAPNSAPUDP分用TCP分用IP复用IP分用IP数据报IP数据报UDP数据报UDP数据报TCP报文段TCP报文段2022/5/1514303教研室 张来顺TCP/IP体系中的运输层端口的复用和分用功能端口将应用层的不同进程区分开;使用复用和分用技术,使得运输层和网络层的交互看不见各种应用进程,而只有TCP报文段或UDP数据报;IP层也使用类似的复用和分用技术,因而网络层和数据链路层的交互也只有IP数据报。传输层和应用层的接口上所设置的端口是一个16比特的地址,并用端口号进行标识。端口号分为两类:一类是因特网指派名字和号码公司ICANN负责分配给一些常用的应用层程序(标准服务器端)固定使用的熟知端口,其数值范围为1-1023。另一类则是一般端口,用来随时分配给请求通信的客户进程,其数值范围为1024-65535。2022/5/1515303教研室 张来顺TCP/IP体系中的运输层常用熟知端口熟知端口应用程序21,20FTP23TELNET25SMTP53DNS69TFTP80HTTP161SNMP162SNMP(trap)2022/5/1516303教研室 张来顺TCP/IP体系中的运输层端口500端口501IP=131.6.23.13A端口500IP=128.36.1.22B端口25IP=130.42.85.15C连接1连接2连接3例:与主机C的SMTP建立三个连接 A与C先建立第一个连接,端口500端口25 A与C后建立第二个连接,端口501端口25 同样,B与C建立第三个连接,端口500端口252022/5/1517303教研室 张来顺TCP/IP体系中的运输层端口号与IP地址结合使用为了在通信时不致发生混乱,必须将端口号与主机的IP地址结合在一起使用;TCP使用“连接”作为最基本的抽象,一个连接由它的两个端点来标识,这样的端点称为插口(socket),就是我们常说的“套接字”。插口包括IP地址(32比特)和端口号(16比特),共48比特;插口=(IP地址,端口号)在整个因特网中,在运输层通信的一对插口必须是唯一的;从上例可知:使用面向连接的TCP,就是建立一条端到端的虚连接。形成一对插口(131.6.23.13,501)和(130.42.85.15,25)2022/5/1518303教研室 张来顺UDPUDP只在IP的数据报服务之上增加了很少一点功能,就是端口的功能和差错检测的功能。无连接服务,减少了开销和发送数据之前的时延。UDP不使用拥塞控制,也不保证可靠交付,因此主机不需要维持具有许多参数的、复杂的连接状态表。UDP首部字段只有8个字节,比TCP的20字节的首部要短。由于UDP没有拥塞控制,因此网络出现的拥塞不会使源主机的发送效率降低。这些对某些实时应用是很重要的。这些应用,允许丢失一些数据,不允许数据有太大的时延。2022/5/1519303教研室 张来顺UDPn使用UDP、TCP的应用及应用层协议应 用应用层协议运输层协议域名解析DNSUDP文件传送TFTPUDP路由选择协议RIPUDPIP地址配置BOOTP, DHCPUDP网络管理SNMPUDP远程文件服务器NFSUDPIP电话专用协议UDP流式多媒体通信专用协议UDP多播IGMPUDP电子邮件SMTPTCP远程终端接入TELNETTCP万维网HTTPTCP文件传送FTPTCP2022/5/1520303教研室 张来顺UDPnUDP用户数据报首部格式首部数据UDP伪首部 源端口目的端口长度 检验和122222源IP地址 目的IP地址017UDP长度441122022/5/1521303教研室 张来顺UDPnUDP报文首部8个字节n长度字段为整个报文的总长度n校验和采用IP数据报首部的校验方式。对整个UDP报文计算。以16bit为单位,按二进制反码运算求和,得出的结果在求反码即为校验和。计算前校验和字段填“0”。n增加伪首部仅计算校验和时使用。伪首部既不向下传递,又不向上移交。校验和既检查了UDP报源和目的端口号,又检查了IP数据报的源和目的地址。n伪首部的第四字段值为17,表示IP报传送UDP报文。(协议字段)2022/5/1522303教研室 张来顺UDPnUDP数据报的封装 帧首部 IP首部 UDP首部 UDP首部应用数据应用数据 IP首部 UDP首部应用数据UDP数据报应用数据2022/5/1523303教研室 张来顺UDPnUDP应用n简单、简短的应用如查询操作、网络管理IP phone,利用UDP快捷的特点nUDP以客户/服务器模式方式工作服务端:固定守候在特定port:x,提供服务客户端:动态绑定任意port:n,向服务器的port x发出请求,获得服务响应xServernClient请求(n,x)响应(x,n)2022/5/1524303教研室 张来顺TCP高层的许多应用需要传输大量的数据可靠的通信服务无法容忍IP 或 UDP提供的无可靠性保证的服务各种应用无法保证完全一致的可靠性方法TCP提供通用的、可靠的通信服务提供统一的数据流投递服务接口支持同时双向通信2022/5/1525303教研室 张来顺TCP两种通信方法报文流投递和接收的单位为报文可靠性:报文按序接收连续报文流,报文边界接收的报文:大小和顺序严格与发送方相同发送单位:报文,前后报文不能合并接收单位:报文数据流投递和接收的单位为byte可靠性:byte按序接收连续字节流、无边界接收的字节:顺序严格与发送方发送的顺序相同发送单位:数据块或逐字节,前后可合并接收单位:数据块或逐字节2022/5/1526303教研室 张来顺TCPTCP可靠性保证采用面向连接的通信方式滑动窗口协议,以提高通信性能捎带应答方式未使用显示确认,减少报文种类TCP只有一种报文格式完成建立、撤除连接数据传输确认、流量控制、窗口滑动2022/5/1527303教研室 张来顺TCP TCP的端口、插点、连接端口号、插口的概念和方式与UDP相同端口(port):TCP/UDP端口统一由Socket管理和分配插口(end point):由(IP地址,端口)表示连接TCP上通信双方抽象的虚电路连接每个连接由连接的一对插口标识如:(IP1, port1)和(IP2, port2)标识唯一一个连接2022/5/1528303教研室 张来顺TCP共享端口号情况(IP1, Port1) 和 (IP2, Port2)表示一个连接(IP1, Port1) 和 (IP2, Port3)表示另一个连接TCP使用连接的一对插口来唯一标识一个连接两个连接只有在这四个值完全相同时,才认为是同一个连接适合C/S模型,服务器在一个端口上提供若干连接TCPTCP应用1应用1应用2应用2TCP应用1应用1应用1应用12022/5/1529303教研室 张来顺TCP主动和被动建立连接TCP区分主动建立连接和被动建立连接主动建立连接 发起建立连接方,一般是客户方
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号