计算机网络:第九章 运输层要点_第1页
计算机网络:第九章 运输层要点_第2页
计算机网络:第九章 运输层要点_第3页
计算机网络:第九章 运输层要点_第4页
计算机网络:第九章 运输层要点_第5页
已阅读5页,还剩60页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第九章运输层运输层协议概述TCP/IP体系中的运输层用户数据报协议UDP运输控制协议TCP2025/12/221303教研室张来顺运输层协议概述运输层在层次体系结构中的地位运输层网络层应用层用户功能网络功能面向通讯面向信息处理数据链路层物理层2025/12/222303教研室张来顺运输层协议概述传输层传输层OSI上三层OSI上三层OSI下三层OSI下三层用户进程管理通信子网向上提供标准的传输服务向下屏蔽不同的通信子网2025/12/223303教研室张来顺运输层协议概述物理层使链路上能透明地传送比特流;链路层使各条链路能透明地传送无差错的帧(按序,无丢失,不重复)。点到点通信网络层提供路由选择和网络互连。主机间通信运输层提供一条端到端的可靠的通信服务。主机进程间通信主机AAP1AP2AP3N1N2主机BAP4AP5AP62025/12/224303教研室张来顺运输层协议概述严格地讲,两个主机进行通信实际上就是两个主机中的应用进程互相通信;网络层为主机之间提供逻辑通信,IP协议虽然能够把分组送到目的主机,但是无法交付给主机中的应用进程;在网络层,IP数据报首部中的检验和字段,只检验首部是否出现差错而不检查数据部分;因此,在网络层之上,设置一个传输层向它上面的应用层提供通信服务。2025/12/225303教研室张来顺运输层协议概述传输层的功能基本功能:提供端到端(进程-进程)的可靠通信,即向高层用户屏蔽通信子网的细节,提供通用的传输接口。主要功能:把传输地址映射为网络地址把端到端的传输连接复用到网络连接上传输连接管理端到端的顺序控制、差错检测及恢复、分段处理及QoS监测加速数据传送2025/12/226303教研室张来顺运输层协议概述运输层模型运输服务用户运输服务用户应用层抽象机器.....运输服务提供者(运输实体)运输服务访问点TSAP连接端点2025/12/227303教研室张来顺TCP/IP体系中的运输层TCP/IP的运输层2个协议用户数据报协议UDP(UserDatagramProtocol)运输控制协议TCP(TransmissionControlProtocol)与各种网络接口IPUDPTCP应用层2025/12/228303教研室张来顺TCP/IP体系中的运输层UDPUDP是无连接的数据报服务。即UDP不提供可靠交付,但在某些情况下UDP是一种最有效的工作方式。注意UDP用户数据报与IP数据报的区别。IP数据报要经过路由器的存储转发,UDP数据报是在运输层的端到端抽象的逻辑信道中传送的。但这个逻辑信道并不是经过路由器(运输层看不见路由器),UDP数据报只是IP数据报中的数据,因此路由器看不见有用户数据报经过它。2025/12/229303教研室张来顺TCP/IP体系中的运输层TCPTCP提供面向连接的服务。IP层不保证报文正确传输,TCP进行超时、重传控制。报文不一定按顺序到达,TCP进行重新装配。TCP不提供广播或多播服务。注意TCP连接与网络层中虚电路(如X.25所使用的)的不同。TCP报文段是在运输层抽象的端到端逻辑信道中传送,这种信道是可靠的全双工信道。但这样的信道却不知道究竟经过了哪些路由器。而在X.25建立的虚电路所经过的交换结点中,都必须保存X.25虚电路的状态信息。2025/12/2210303教研室张来顺TCP/IP体系中的运输层TCP的功能多路复用多种应用数据TCP同时接收多个应用数据,把它们打包到数据段中传给IPTCP通过端口来实现跟踪记录到达的报文要转发到的应用程序(如端口80:超文本传输协议,http)测试所接收数据的完整性比较TCP头的校验和,如果出现问题就给源主机发一请求,要求其重发一份数据拷贝顺序化乱序接收的数据通过查看TCP头中的序列号域可以完成这个任务2025/12/2211303教研室张来顺TCP/IP体系中的运输层速率-适应的流控流量控制使用的是TCP窗口大小。源和目的机的窗口大小通过TCP头进行通信如果机器的缓冲完全被填满,它就会发送一个有关最后收到数据的应答报文,其中新的窗口大小为0。这样会有效地使发送停止,直到拥塞的机器能清理掉其缓冲定时功能

计时器可以间接地管理网络拥塞,其方法是当超时出现时减慢传输率应答接收没被应答的数据段被认为在传输过程中已丢失,并被重传2025/12/2212303教研室张来顺TCP/IP体系中的运输层端口的概念什么是端口(Port)?端口就是传输层的服务访问点(TSAP),用来区分不同的应用进程,运输层进行复用和分用。UDP和TCP都使用了与应用层接口处的端口与上层的应用进程进行通信。应用层的各种进程是通过相应的端口与传输层实体进行交互。当传输层收到IP层交上来的数据(即TCP报文段或UDP数据报),就要根据其首部中的端口号来决定应当通过哪个端口上交给应当接收此数据的应用进程。2025/12/2213303教研室张来顺TCP/IP体系中的运输层端口在进程中的作用应用进程应用进程应用进程应用进程应用层运输层网络层端口端口…端口端口…端口端口…端口端口…TCP复用UDP复用NSAPNSAPNSAPNSAPUDP分用TCP分用IP复用IP分用IP数据报IP数据报UDP数据报UDP数据报TCP报文段TCP报文段2025/12/2214303教研室张来顺TCP/IP体系中的运输层端口的复用和分用功能端口将应用层的不同进程区分开;使用复用和分用技术,使得运输层和网络层的交互看不见各种应用进程,而只有TCP报文段或UDP数据报;IP层也使用类似的复用和分用技术,因而网络层和数据链路层的交互也只有IP数据报。传输层和应用层的接口上所设置的端口是一个16比特的地址,并用端口号进行标识。端口号分为两类:一类是因特网指派名字和号码公司ICANN负责分配给一些常用的应用层程序(标准服务器端)固定使用的熟知端口,其数值范围为1-1023。另一类则是一般端口,用来随时分配给请求通信的客户进程,其数值范围为1024-65535。2025/12/2215303教研室张来顺TCP/IP体系中的运输层常用熟知端口熟知端口应用程序21,20FTP23TELNET25SMTP53DNS69TFTP80HTTP161SNMP162SNMP(trap)2025/12/2216303教研室张来顺TCP/IP体系中的运输层端口500端口501IP=3A端口500IP=2B端口25IP=5C连接1连接2连接3例:与主机C的SMTP建立三个连接A与C先建立第一个连接,端口500→端口25A与C后建立第二个连接,端口501→端口25同样,B与C建立第三个连接,端口500→端口252025/12/2217303教研室张来顺TCP/IP体系中的运输层端口号与IP地址结合使用为了在通信时不致发生混乱,必须将端口号与主机的IP地址结合在一起使用;TCP使用“连接”作为最基本的抽象,一个连接由它的两个端点来标识,这样的端点称为插口(socket),就是我们常说的“套接字”。插口包括IP地址(32比特)和端口号(16比特),共48比特;插口=(IP地址,端口号)在整个因特网中,在运输层通信的一对插口必须是唯一的;从上例可知:使用面向连接的TCP,就是建立一条端到端的虚连接。形成一对插口(3,501)和(5,25)2025/12/2218303教研室张来顺UDPUDP只在IP的数据报服务之上增加了很少一点功能,就是端口的功能和差错检测的功能。无连接服务,减少了开销和发送数据之前的时延。UDP不使用拥塞控制,也不保证可靠交付,因此主机不需要维持具有许多参数的、复杂的连接状态表。UDP首部字段只有8个字节,比TCP的20字节的首部要短。由于UDP没有拥塞控制,因此网络出现的拥塞不会使源主机的发送效率降低。这些对某些实时应用是很重要的。这些应用,允许丢失一些数据,不允许数据有太大的时延。2025/12/2219303教研室张来顺UDP使用UDP、TCP的应用及应用层协议应用应用层协议运输层协议域名解析DNSUDP文件传送TFTPUDP路由选择协议RIPUDPIP地址配置BOOTP,DHCPUDP网络管理SNMPUDP远程文件服务器NFSUDPIP电话专用协议UDP流式多媒体通信专用协议UDP多播IGMPUDP电子邮件SMTPTCP远程终端接入TELNETTCP万维网HTTPTCP文件传送FTPTCP2025/12/2220303教研室张来顺UDPUDP用户数据报首部格式首部数据UDP伪首部源端口目的端口长度检验和122222源IP地址目的IP地址017UDP长度441122025/12/2221303教研室张来顺UDPUDP报文首部8个字节长度字段为整个报文的总长度校验和采用IP数据报首部的校验方式。对整个UDP报文计算。以16bit为单位,按二进制反码运算求和,得出的结果在求反码即为校验和。计算前校验和字段填“0”。增加伪首部仅计算校验和时使用。伪首部既不向下传递,又不向上移交。校验和既检查了UDP报源和目的端口号,又检查了IP数据报的源和目的地址。伪首部的第四字段值为17,表示IP报传送UDP报文。(协议字段)2025/12/2222303教研室张来顺UDPUDP数据报的封装帧首部IP首部UDP首部UDP首部应用数据应用数据IP首部UDP首部应用数据UDP数据报应用数据2025/12/2223303教研室张来顺UDPUDP应用简单、简短的应用如查询操作、网络管理IPphone,利用UDP快捷的特点UDP以客户/服务器模式方式工作服务端:固定守候在特定port:x,提供服务客户端:动态绑定任意port:n,向服务器的portx发出请求,获得服务响应xServernClient请求(n,x)响应(x,n)2025/12/2224303教研室张来顺TCP高层的许多应用需要传输大量的数据可靠的通信服务无法容忍IP或UDP提供的无可靠性保证的服务各种应用无法保证完全一致的可靠性方法TCP提供通用的、可靠的通信服务提供统一的数据流投递服务接口支持同时双向通信2025/12/2225303教研室张来顺TCP两种通信方法报文流投递和接收的单位为报文可靠性:报文按序接收连续报文流,报文边界接收的报文:大小和顺序严格与发送方相同发送单位:报文,前后报文不能合并接收单位:报文数据流投递和接收的单位为byte可靠性:byte按序接收连续字节流、无边界接收的字节:顺序严格与发送方发送的顺序相同发送单位:数据块或逐字节,前后可合并接收单位:数据块或逐字节2025/12/2226303教研室张来顺TCPTCP可靠性保证采用面向连接的通信方式滑动窗口协议,以提高通信性能捎带应答方式未使用显示确认,减少报文种类TCP只有一种报文格式完成建立、撤除连接数据传输确认、流量控制、窗口滑动2025/12/2227303教研室张来顺TCP

TCP的端口、插点、连接端口号、插口的概念和方式与UDP相同端口(port):TCP/UDP端口统一由Socket管理和分配插口(endpoint):由(IP地址,端口)表示连接TCP上通信双方抽象的虚电路连接每个连接由连接的一对插口标识如:(IP1,port1)和(IP2,port2)标识唯一一个连接2025/12/2228303教研室张来顺TCP共享端口号情况(IP1,Port1)和(IP2,Port2)表示一个连接(IP1,Port1)和(IP2,Port3)表示另一个连接TCP使用连接的一对插口来唯一标识一个连接两个连接只有在这四个值完全相同时,才认为是同一个连接适合C/S模型,服务器在一个端口上提供若干连接TCPTCP应用1应用1应用2应用2TCP应用1应用1应用1应用12025/12/2229303教研室张来顺TCP主动和被动建立连接TCP区分主动建立连接和被动建立连接主动建立连接发起建立连接方,一般是客户方被动建立连接接受建立连接方,一般是服务器方被动建立连接方一般先于主动连接方启动,但不发起连接建立过程,而是在某个端口上等待主动方的连接请求2025/12/2230303教研室张来顺TCP

TCP通信面临的问题较长的网络传输时延(穿越多个网)采用滑动窗口协议(采用停等协议性能非常低)高效利用网络通信资源报文丢失、重复、乱序滑动窗口控制顺序传输时延不定(端点远近差别很大)重传定时的动态确定网络拥塞探测拥塞问题、克服拥塞办法2025/12/2231303教研室张来顺TCP

数据流、报文段和序号

TCP协议是面向字节的切割:根据适合传输的大小对数据流进行切割最大报文段长度<64Kbytes通常:MTU-(IP头+TCP头)复原:用报文段恢复原始数据流的字节顺序序号:排序、查错及数据流复原数据流切割报文段数据流TCP发送报文段数据流复原发送缓冲接收缓冲TCP接收TCP2025/12/2232303教研室张来顺TCP报文序号依据数据流中的字节序号(流序号)报文序号为报文段中第一字节的流序号如:流序号=x,长度=L的报文段,则:报文的序号为x,下一报文序号为x+L序号特点报文的顺序关系数据流的位置,更便于流的复原需较大的序号空间(32bit,4Gbyte)xL2025/12/2233303教研室张来顺TCP例如:在一个报文中,序号为300,而报文中数据有100字节。下一个报文段,其序号为400;200序号:600200数据序号:400100数据序号:300第三组报文第二组报文第一组报文2025/12/2234303教研室张来顺TCPTCP的流量控制TCP采用可变发送窗口的技术进行流量控制,窗口大小的单位是字节。在TCP报文段首部的窗口字段写入的数值就是当前设定的接收窗口数值。发送窗口在连接建立时由双方商定,在通信过程中,接收端可根据自己的资源情况,随时动态地调整自己的接收窗口,并且告诉对方,使对方的发送窗口和自己的接收窗口一致。2025/12/2235303教研室张来顺TCP说明:发送端要发送的数据共9个报文段,每个报文符长100字节,共900个字节;而接收端允许的发送窗口为500字节;在当前情况下,发送方可连续发送5个报文段,而不必收到时确认,(已发送了二个,还可发送三个报文符);1100101200301400401500501600601700701800801900201300接收端许诺的发送窗口已发送并确认已发送未确认可连续发送不可发送2025/12/2236303教研室张来顺TCP利用可变窗口进行流量控制举例主机A向主机B发送数据,双方商定的窗口值是400,每一个报文段为100字节,序号的初始值为1。主机B进行了3次流量控制。主机A主机B序号=1序号=101序号=201确认序号=201窗口=300序号=301序号=401序号=201确认序号=501窗口=200序号=501确认序号=601窗口=0丢弃A还能发送300字节A还能发送200字节允许A再发送300字节A还能发送200字节A还能发送100字节A超时重发,但不能再发送A还能发送100字节允许A再发送200字节不允许A再发送2025/12/2237303教研室张来顺TCP发送窗口发送端在发送数据时,既要考虑到接收方的接收能力,又要使网络不要发生拥塞。发送窗口的确定:发送窗口=Min[通知窗口,拥塞窗口]注:通知窗口:是采用接收端的流量控制窗口,其窗口值放在TCP报文首部中传送给发送端。拥塞窗口:是发送端根据网络拥塞情况得出的窗口值,来自发送端的流量控制。在未发生拥塞的稳定工作状态,二个窗口是一致的。2025/12/2238303教研室张来顺TCPTCP拥塞控制TCP流量控制可变发送窗口(BYTE)TCP拥塞控制当加载到网络上的载荷超过其处理能力时,拥塞便会出现分组丢失而造成超时的原因传输线路的噪声干扰拥塞的路由器丢弃了分组目前互联网上发生的大多数超时现象都是由于拥塞造成的,传输错误造成的分组丢失较少解决拥塞最切实的办法是降低数据传输速率拥塞控制大部分是由TCP完成的。TCP试图通过动态地控制滑动窗口的大小来达到控制拥塞的目的2025/12/2239303教研室张来顺TCP拥塞控制的三种技术慢启动(slow-start)加速递减(multiplicativedecrease)拥塞避免(congestionavoidance)前提条件:通信线路使得分组丢失概率很小(﹤1%),即分组的丢失主要因为拥塞造成的。2025/12/2240303教研室张来顺TCP慢启动(SlowStart)慢启动同时考虑可能造成拥塞的网络容量和接收方容量,取以下两个窗口的最小值作为可以发送的字节数上限通告窗口(OfferedWindow)拥塞窗口(CongestionWindow)拥塞窗口的大小发送方开始时发送一个报文段,然后等待ACK。当收到该ACK时,拥塞窗口从1增加为2,即可以发送两个报文段。当收到这两个报文段的ACK时,拥塞窗口就增加为4。这是一种指数增加的关系拥塞窗口是发送方使用的流量控制,而通告窗口则是接收方使用的流量控制所有的TCP实现都支持慢启动2025/12/2241303教研室张来顺TCP加速递减(MultiplicativeDecrease)每出现一次超时,门限窗口值减半。拥塞避免(CongestionAvoidance)当拥塞窗口增大到门限窗口值时,拥塞窗口的增长将变为线性增长,避免网络再次拥塞2025/12/2242303教研室张来顺TCP实现拥塞控制的步骤当一个连接初始化时,将拥塞窗口设置为1。并设置慢启动的门限窗口值。发送端的发送窗口不能超过拥塞窗口和通知窗口中的最小值,现在假定接收端不进行流量控制(即通知窗口无限大)。发送端若收到了对所有发出的报文段的确认,就在下一次发送时将拥塞窗口加倍。可见拥塞窗口从1开始,按指数规律增长。当拥塞窗口增长到慢启动的门限窗口值时,就改为执行拥塞避免算法,拥塞窗口按线性规律增长。若出现了超时,则将当时的拥塞窗口减半,作为新的门限窗口值,同时拥塞窗口再次变为1。拥塞窗口重新从1开始按指数规律增长,当增长到新的门限窗口值时,拥塞窗口按线性规律增长。当网络又出现了超时,仍重复上述过程。2025/12/2243303教研室张来顺TCP超时门限窗口传输次数拥塞窗口(Kbyte)“加速递减”出现一次超时,门限减半。指数增长“拥塞避免”从指数增长改为线性增长。慢启动从1开始2025/12/2244303教研室张来顺TCP以上讨论可以看出“慢启动”是指每出现一次超时,拥塞窗口都降低到“1”,使报文每慢慢注入回到网络中。“加速递减”是指每出现一次超时,就将门限值减半。“拥塞避免”是指拥塞窗口增大到门限窗口值时,就将拥塞窗口值从指数增长降低为线性增长,避免网络再次出现拥塞。采用这样的流量控制的方法使得TCP的性能有明显的改进。2025/12/2245303教研室张来顺TCPTCP的重发机制TCP的报文重发是根据所设置的定时器决定的。当定时器的重发时间到而还没有收到确认,就要重发这一报文段。TCP采用了一种自适应算法确定超时定时器的重发时间。

2025/12/2246303教研室张来顺TCP每个连接都维持一个变量RTT(当前往返时间的最佳估算值)。发送方的计时器(发送时启动)在达到超时间隔时触发重发机制;若在超时之前收到确认,则测量出往返时间M:修正 RTT=RTT+(1-)M

其中

为一个平滑因子(一般为7/8)修正实际往返时间M同估算值RTT的偏差|RTT-M| D=D+(1-)|RTT-M|

这里的

可能不同前面的

确定当前的超时间隔Timeout=RTT+4D补充算法:对已重发的数据段无需修正RTT,而在传输失败时将超时时间加倍。效果:在网络拥塞或收发双方距离较远时能够自动延长超时间隔,减少不必要的重发;网络较为空闲或双方距离较近时又能迅速减小超时间隔,及时重发出错的段。2025/12/2247303教研室张来顺TCP

TCP报文格式

TCP协议只定义了一种报文格式,建立、拆除连接、传输数据使用同样的报文源端口UGR目的端口ACKPSHRSTSYNFIN序号确认序号保留数据偏移窗口检验和紧急指针选项和填充数据32bitTCP首部20字节2025/12/2248303教研室张来顺TCP源端口和目的端口:各占2个字节,16比特的端口号加上32比特的IP地址,共同构成相当于传输层服务访问点的地址,即“插口”。这些端口可用来将若干高层协议向下复用。序号字段和确认序号字段:序号:占4个字节,是本报文段所发送的数据部分第一个字节的序号。在TCP传送的数据流中,每一个字节都有一个序号。例如,一报文段的序号为300,而数据为100字节,则下一个报文段的序号就是400。确认序号:占4字节,是期望收到对方下次发送的数据的第一个字节的序号,也就是期望收到的下一个报文段的首部中的序号。由于序号字段有32比特长,可以对4GB的数据进行编号,这样就可保证当序号重复使用时,旧序号的数据早已在网络中消失了。2025/12/2249303教研室张来顺TCP数据偏移:占4比特,表示数据开始的地方离TCP报文段的起始处有多远。这实际上就是TCP报文段首部的长度。由于首部长度不固定,因此数据偏移字段是必要的。保留字段:6比特,供今后使用,目前置为0。2025/12/2250303教研室张来顺TCP六个比特的控制字段紧急比特URGent:当URG=1时,表明此报文应尽快传送,而不要按原来的排队顺序来传送。与“紧急指针”字段配合使用,紧急指针指出在本报文段中的紧急数据的最后一个字节的序号,使接收方可以知道紧急数据共有多长。确认比特ACK:只有当ACK=1时,确认序号字段才有意义。急迫比特PSH:当PSH=1时,表明请求远地TCP将本报文段立即传送给其应用层,而不要等到整个缓存都填满了之后再向上交付。复位比特ReSeT:当RST=1时,表明出现严重差错,必须释放连接,然后再重建传输连接。复位比特还用来拒绝一个非法的报文段或拒绝打开一个连接。同步比特SYN:在建立连接时使用,当SYN=1而ACK=0时,表明这是一个连接请求报文段。对方若同意建立连接,在发回的报文段中使SYN=1和ACK=1。因此,SYN=1表示这是一个连接请求或连接接受报文,而ACK的值用来区分是哪一种报文。终止比特FINal:用来释放一个连接,当FIN=1时,表明欲发送的字节串已经发完,并要求释放传输连接。2025/12/2251303教研室张来顺TCP窗口字段窗口Window:占2字节,表示报文段发送方的接收窗口,单位为字节。此窗口告诉对方,“在未收到我的确认时,你能够发送的数据的字节数至多是此窗口的大小。”通知窗口advertisedwindow:接收端根据其接收能力许诺的窗口值,是来自接收端的流量控制。接收端将通知窗口的值放在TCP报文的首部中,传送给对方。拥塞窗口congestionwindow:是发送端根据网络拥塞情况得出的窗口值,是来自发送端的流量控制。2025/12/2252303教研室张来顺TCP检验和字段:检验和字段检验的范围包括首部和数据这两部分。这是一个强制性的字段,由发端计算和存储,由收端进行验证。和UDP用户数据报一样,计算检查和时,在TCP报文段的前面加上12字节的伪首部。伪首部格式同UTP的伪首部,但将伪首部第4字段中的17改为6(TCP的协议号是6),第5字段的长度为TCP长度。选项字段允许每台主机设定能够接受的最大TCP载荷能力(缺省536字节)2025/12/2253303教研室张来顺TCPTCP分节的封装帧首部IP首部TCP首部TCP首部应用数据应用数据应用数据IP首部TCP首部应用数据TCP分段segment2025/12/2254303教研室张来顺TCPTCP的运输连接管理TCP是面向连接的协议,运输连接的建立和释放是每一次面向连接的通信中必不可少的过程。运输连接的管理就是使运输连接的建立和释放都能正常地进行。在连接建立过程中要解决以下三个问题:要使每一方能够确知对方的存在要允许双方协商一些参数(如,最大报文段长度,最大窗口大小,服务质量等)能够对运输实体资源(如缓冲区大小,连接表中的项目等)进行分配2025/12/2255303教研室张来顺TCPTCP的传输连接管理——三次握手技术TCP是面向连接的协议,传输连接的建立和释放是每次通信中必不可少的过程。传输连接的管理就是使传输连接的建立和释放都能正常地进行。TCP连接的建立采用客户/服务器方式。为了确保连接的建立和释放都是可靠的,TCP使用三次握手的方式,其中交换了三个报文。已证明三次握手是在分组丢失、重复和延迟的情况下确保非模糊协定的充要条件。2025/12/2256303教研室张来顺TCP创建一个连接的三次握手TCP使用同步字段SYN来描述用于创建一个连接的三次握手中的报文段;每一端产生一个随机32位序列号;每建立一个新连接,TCP就选择一个新的随机数。三次握手过程客户端向服务器端发送请求建立报文段,SYN=1,ACK=O,发送序号=x服务器端若允许建立连接,向客户端发送确认报文段,SYN=1,ACK=1,发送序号=y,确认序号=x+1客户端再向服务器端发送一确认,SYN=0,ACK=1,确认序号=y+1,序号=x+12025/12/2257303教研室张来顺TCP用三次握手建立TCP连接主机A主机B主动打开被动打开SYN=1,ACK=0,序号=xSYN=0,ACK=1,序号=x+1,确认序号=y+1SYN=1,ACK=1,序号=y,确认序号=x+1确认确认2025/12/2258303教研室张来顺TCP同时发起建立请求主机A主机BSYN=1,ACK=0,序号=xSYN=1,ACK=1,序号=x,确认序号=y+1SYN=1,ACK=0,序号=ySYN=1,ACK=1,序号=x+1,确认序号=y2025/12/2259303教研室张来顺TCP为何使用三次握手当客户端发送一连接请求报文段,没有收到服务器端的确认,认为丢失。客户端再重传一次,得到确认,传输数据,释放连接。然而,客户端第一个请求报文段并每没有丢失,而是延时到这次连接、数据传输、释放连接后才到达服务器端。服务器端认为又一次新的连接,向客户端发一确认。客户端由于并没有发起新的连接,不会发送数据,服务器端会一直等待,造成资源浪费。2025/12/2260303教研室张来顺TCP数据传输发送端接收端Send_Seq=0(0-2047)Ack_Seq=2048,WIN=2048应用进程交付3KAck_Seq=4096,WIN=0向应用进程交付2K空闲缓存4K2KSend_Seq=2048(2048-4095)0Ack_Seq

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论