907TCPIP网络原理与应用.ppt

上传人:sccc 文档编号:4888508 上传时间:2023-05-21 格式:PPT 页数:65 大小:740.01KB
返回 下载 相关 举报
907TCPIP网络原理与应用.ppt_第1页
第1页 / 共65页
907TCPIP网络原理与应用.ppt_第2页
第2页 / 共65页
907TCPIP网络原理与应用.ppt_第3页
第3页 / 共65页
907TCPIP网络原理与应用.ppt_第4页
第4页 / 共65页
907TCPIP网络原理与应用.ppt_第5页
第5页 / 共65页
点击查看更多>>
资源描述

《907TCPIP网络原理与应用.ppt》由会员分享,可在线阅读,更多相关《907TCPIP网络原理与应用.ppt(65页珍藏版)》请在三一办公上搜索。

1、TCP/IP网络原理与应用之TCP协议介绍1,TCP/IP网络原理与应用,袁巍华中科技大学电信系2011.10,TCP/IP网络原理与应用之TCP协议介绍1,主要内容,TCP协议概述TCP数据编号与确认TCP运输连接管理,TCP/IP网络原理与应用之TCP协议介绍1,TCP协议演进,1975,1980,1985,1990,1982TCP&IPRFC 793&791,1974TCP described byVint Cerf and Bob KahnIn IEEE Trans Comm,1983BSD Unix 4.2supports TCP/IP,1984Nagels algorithmto

2、reduce overheadof small packets;predicts congestion collapse,1987Karns algorithmto better estimate round-trip time,1986Congestion collapseobserved,1988Van Jacobsons algorithmscongestion avoidance and congestion control(most implemented in 4.3BSD Tahoe),19904.3BSD Renofast retransmitdelayed ACKs,1975

3、Three-way handshakeRaymond TomlinsonIn SIGCOMM 75,TCP/IP网络原理与应用之TCP协议介绍1,TCP Through the 1990s,1993,1994,1996,1994ECN(Floyd)Explicit CongestionNotification,1993TCP Vegas(Brakmo et al)real congestion avoidance,1994T/TCP(Braden)TransactionTCP,1996SACK TCP(Floyd et al)Selective Acknowledgement,1996HoeI

4、mproving TCP startup,1996FACK TCP(Mathis et al)extension to SACK,TCP/IP网络原理与应用之TCP协议介绍1,TCP的特点,与UDP的最大区别:TCP是面向连接的,UDP是无连接的TCP提供一种面向连接的、可靠的字节流服务,TCP/IP网络原理与应用之TCP协议介绍1,TCP的特点,面向连接两个使用TCP的应用(通常是一个客户和一个服务器)在彼此交换数据之前必须先建立一个TCP连接可靠应用数据被分割成TCP认为最适合发送的数据块。当TCP发出一个段后,它启动一个定时器,等待目的端确认收到这个报文段。如果不能及时收到一个确认,将重

5、发这个报文段。当TCP收到发自TCP连接另一端的数据,它将发送一个确认。TCP将计算首部和数据的检验和。如果收到段的检验和有差错,T CP将丢弃这个报文段和不确认收到此报文段(希望发端超时并重发)如果必要,TCP将对收到的数据进行重新排序,将收到的数据以正确的顺序交给应用层。既然IP数据报会发生重复,TCP的接收端必须丢弃重复的数据。TCP还能提供流量控制。TCP连接的每一方都有固定大小的缓冲空间。TCP的接收端只允许另一端发送接收端缓冲区所能接纳的数据。这将防止较快主机致使较慢主机的缓冲区溢出。,TCP/IP网络原理与应用之TCP协议介绍1,TCP的特点,字节流两个应用程序通过TCP连接交换

6、8 bit字节构成的字节流。TCP不在字节流中插入记录标识符。我们将这称为字节流服务。如果一方的应用程序先传1 0字节,又传2 0字节,再传5 0字节,连接的另一方将无法了解发方每次发送了多少字节。收方可以分4次接收这8 0个字节,每次接收2 0字节。一端将字节流放到TCP连接上,同样的字节流将出现在T C P连接的另一端。TCP对字节流的内容不作任何解释。TCP不知道传输的数据字节流是二进制数据,还是ASCII字符或者其他类型数据。对字节流的解释由T C P连接双方的应用层解释。,TCP/IP网络原理与应用之TCP协议介绍1,TCP发送报文段,端口,发送 TCP 报文段,TCP,TCP,接收

7、缓存,发送缓存,报文段,报文段,报文段,端口,发送端,接收端,向发送缓存写入数据块,从接收缓存读取数据块,应用进程,应用进程,TCP/IP网络原理与应用之TCP协议介绍1,发送缓存与接收缓存的作用,发送缓存用来暂时存放:发送应用程序传送给发送方 TCP 准备发送的数据;TCP 已发送出但尚未收到确认的数据。接收缓存用来暂时存放:按序到达的、但尚未被接收应用程序读取的数据;不按序到达的数据。,TCP/IP网络原理与应用之TCP协议介绍1,TCP首部,20 字节的固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留

8、,FIN,32 bit,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,TCP 数据部分,TCP 首部,TCP 报文段,IP 数据部分,IP 首部,发送在前,TCP/IP网络原理与应用之TCP协议介绍1,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,源端口和目的端口字段各占 2 字节。端口是运输层与应用层的服务接口。运输层的复用和分用功能都要通过端口才能实现。,TC

9、P/IP网络原理与应用之TCP协议介绍1,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,序号字段占 4 字节。TCP 连接中传送的数据流中的每一个字节都编上一个序号。序号字段的值则指的是本报文段所发送的数据的第一个字节的序号。,TCP/IP网络原理与应用之TCP协议介绍1,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指

10、针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,确认号字段占 4 字节,是期望收到对方的下一个报文段的数据的第一个字节的序号。,TCP/IP网络原理与应用之TCP协议介绍1,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,数据偏移占 4 bit,它指出 TCP 报文段的数据起始处距离 TCP 报文段的起始处有多远。“数据偏移”的

11、单位不是字节而是 32 bit 字(4 字节为计算单位)。,TCP/IP网络原理与应用之TCP协议介绍1,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,保留字段占 6 bit,保留为今后使用,但目前应置为 0。,TCP/IP网络原理与应用之TCP协议介绍1,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确

12、认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,紧急比特 URG 当 URG 1 时,表明紧急指针字段有效。它告诉系统此报文段中有紧急数据,应尽快传送(相当于高优先级的数据)。,TCP/IP网络原理与应用之TCP协议介绍1,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,确认比特 ACK 只有当 ACK 1 时确认号字段才有效。当 ACK 0

13、时,确认号无效。,TCP/IP网络原理与应用之TCP协议介绍1,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,推送比特 PSH(PuSH)接收 TCP 收到推送比特置 1 的报文段,就尽快地交付给接收应用进程,而不再等到整个缓存都填满了后再向上交付。,TCP/IP网络原理与应用之TCP协议介绍1,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端

14、口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,复位比特 RST(ReSeT)当 RST 1 时,表明 TCP 连接中出现严重差错(如由于主机崩溃或其他原因),必须释放连接,然后再重新建立运输连接。,TCP/IP网络原理与应用之TCP协议介绍1,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,同步比特 S

15、YN 同步比特 SYN 置为 1,就表示这是一个连接请求或连接接受报文。,TCP/IP网络原理与应用之TCP协议介绍1,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,终止比特 FIN(FINal)用来释放一个连接。当FIN 1 时,表明此报文段的发送端的数据已发送完毕,并要求释放运输连接。,TCP/IP网络原理与应用之TCP协议介绍1,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验

16、 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,窗口字段 占 2 字节。窗口字段用来控制对方发送的数据量,单位为字节。TCP 连接的一端根据设置的缓存空间大小确定自己的接收窗口大小,然后通知对方以确定对方的发送窗口的上限。,TCP/IP网络原理与应用之TCP协议介绍1,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,AC

17、K,URG,比特 0 8 16 24 31,填 充,检验和 占 2 字节。检验和字段检验的范围包括首部和数据这两部分。在计算检验和时,要在 TCP 报文段的前面加上 12 字节的伪首部。,TCP/IP网络原理与应用之TCP协议介绍1,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,紧急指针字段 占 16 bit。紧急指针指出在本报文段中的紧急数据的最后一个字节的序号。,TCP/IP网络原理与应用之T

18、CP协议介绍1,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,选项字段 长度可变。TCP的一种选项是最大报文段长度 MSS(Maximum Segment Size)。MSS 告诉对方 TCP:“我所能接收的报文段的数据字段的最大长度是 MSS 个字节。”,MSS 是 TCP 报文段中的数据字段的最大长度。数据字段加上 TCP 首部才等于整个的 TCP 报文段。,TCP/IP网络原理与应用之TCP

19、协议介绍1,其他选项,窗口比例选项 占 3 字节,其中有一个字节表示移位值 S。新的窗口值等于TCP 首部中的窗口位数增大到(16+S),相当于把窗口值向左移动 S 位后获得实际的窗口大小。时间戳选项占10 字节,其中最主要的字段时间戳值字段(4 字节)和时间戳回送回答字段(4 字节)。选择确认选项,TCP/IP网络原理与应用之TCP协议介绍1,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,填充字

20、段 这是为了使整个首部长度是 4 字节的整数倍。,TCP/IP网络原理与应用之TCP协议介绍1,TCP 的数据编号与确认,TCP 协议是面向字节的。TCP 将所要传送的报文看成是字节组成的数据流,并使每一个字节对应于一个序号。在连接建立时,双方要商定初始序号。TCP 每次发送的报文段的首部中的序号字段数值表示该报文段中的数据部分的第一个字节的序号。TCP 的确认是对接收到的数据的最高序号表示确认。接收端返回的确认号是已收到的数据的最高序号加 1。因此确认号表示接收端期望下次收到的数据中的第一个数据字节的序号。,TCP/IP网络原理与应用之TCP协议介绍1,TCP发送报文段的时机,TCP有三种基

21、本机制来控制报文段的发送只要发送缓存从发送进程得到的数据达到最大报文段长度MSS字节时就组装TCP报文段并发送发送端的应用进程指明要求发送报文段,即TCP支持的推送(push)操作发送端的一个计时器时间到了,就把当前已有的混存数据组装成TCP报文段发送出去,TCP/IP网络原理与应用之TCP协议介绍1,WinDump对TCP首部中的部分标志位的字符方式,TCP/IP网络原理与应用之TCP协议介绍1,实验观察TCP的2种发送报文段机制,机制一的实验步骤:编写TCP服务器并运行为观察方便,客户端连接后进入睡眠,其进程不向客户端发送数据编写TCP客户端并运行该客户端不停地向服务器发送大量数据使用Wi

22、nDump抓包并分析注意:bigdog为TCP服务器,FATCAT为TCP客户端,TCP/IP网络原理与应用之TCP协议介绍1,机制一代码,服务器代码,TCP/IP网络原理与应用之TCP协议介绍1,机制一代码,客户端代码,TCP/IP网络原理与应用之TCP协议介绍1,机制一现象,注:前三行为三次握手过程,TCP/IP网络原理与应用之TCP协议介绍1,实验观察TCP的发送报文段机制,机制二的实验步骤:编写TCP服务器并运行编写TCP客户端并运行使用WinDump抓包并分析,TCP/IP网络原理与应用之TCP协议介绍1,机制二代码,客户端代码,TCP/IP网络原理与应用之TCP协议介绍1,机制2现

23、象,TCP/IP网络原理与应用之TCP协议介绍1,Nagle算法(1),如何控制TCP发送报文段的时机是一个复杂的问题一个交互式用户使用一条Telnet连接。假设用户只发送一个字符。加上20字节的首部,得到21字节长的TCP报文段。再加上20字节的IP首部,形成41字节的IP数据报。在接收端TCP立即发出确认,构成的数据报是40字节长(假定没有数据)。若用户要求远地主机回送这一字符,则又要发回41字节的IP数据报和40字节的确认IP数据报。这样,用户仅发送一个字符时线路上就需传送总长度为162字节的四个报文段。当线路带宽并不富裕时,这种传送方法的效率不高,TCP/IP网络原理与应用之TCP协议

24、介绍1,Nagle算法(2),算法如下:若发送端应用进程将欲发送的数据逐个字节地发送到发送端的TCP缓存,则发送端就将第一个字符率先发送出去,将后面到达的字符都缓存起来。当发送端收到对第一个字符的确认后,再将缓存中的所有字符装成一个报文段发送出去,同时继续对随后到达的字符进行缓存。只有在收到对前一个报文段的确认后才继续发送下一个报文段当字符到达较快而网络速率较慢时,用这样的方法可以明显地减少所用的网络带宽,TCP/IP网络原理与应用之TCP协议介绍1,关于确认,若发送方在规定的设置时间内没有收到确认,就要将未被确认的报文段重新发送。接收方若收到有差错的报文段,则丢弃此报文段(不发送否认信息)。

25、接收方若收到重复的报文段,也要将其丢弃,但要发回(或稍带发回)确认消息。若收到的报文段无差错,只是未按照序号,如何处理?TCP对此未作明确规定。实现者可以将不按序的报文段丢弃,可以先将其暂存于接收缓存内,待所缺序号的报文段收弃后再一起交给应用层。,TCP/IP网络原理与应用之TCP协议介绍1,乱序的处理,TCP/IP网络原理与应用之TCP协议介绍1,接收确认的延迟,系统即使在连接上没有应发送的数据,也必须对从对方收到的数据进行应答。由于使用的接收确认分组本身不携带应用数据,在某种意义上浪费了网络带宽。为了使这种带宽的浪费减少到最低程度,TCP不要求每个分组到达后立即对其进行接收确认。系统可以延

26、迟片刻发送接收确认分组。或许,在延迟的期间内,该系统的应用也有数据要发送(应用等待对方应答是常事)。倘若如此,该应答数据就能传送最新的接收确认号码,可以完全避免浪费带宽。即使应从该系统发送的数据还没有来到,可能又有来自对方的数据到达。在这种情况下,TCP 能够对收到的全部数据一次性地进行接收确认,这样处理至少能够减少接收确认的分组数。无论在哪种情况下,TCP 都能减少网络的使用带宽。,TCP/IP网络原理与应用之TCP协议介绍1,TCP/IP网络原理与应用之TCP协议介绍1,实验观察确认的延迟,TCP/IP网络原理与应用之TCP协议介绍1,思考确认报文段丢失,在使用TCP传输数据时,如果有一个

27、确认报文段丢失了,一定会引起发送方重传吗?TCP的确认机制使用了累积确认方法如果某个报文段的确认丢失了,它之后的其他报文段确认到达,这时只要该报文段的重传计时器没有超时,就不必重传因此,不一定会引起发送方重传。,TCP/IP网络原理与应用之TCP协议介绍1,TCP 的运输连接管理1.运输连接的三个阶段,运输连接就有三个阶段,即:连接建立、数据传送和连接释放。运输连接的管理就是使运输连接的建立和释放都能正常地进行。连接建立过程中要解决以下三个问题:要使每一方能够确知对方的存在。要允许双方协商一些参数(如最大报文段长度,最大窗口大小,服务质量等)。能够对运输实体资源(如缓存大小,连接表中的项目等)

28、进行分配。,TCP/IP网络原理与应用之TCP协议介绍1,客户服务器方式,TCP 的连接和建立都是采用客户服务器方式。主动发起连接建立的应用进程叫做客户(client)。被动等待连接建立的应用进程叫做服务器(server)。,TCP/IP网络原理与应用之TCP协议介绍1,用三次握手建立 TCP 连接,CLOSED,CLOSED,A,B,客户,服务器,A 的 TCP 向 B 发出连接请求报文段,其首部中的同步位 SYN=1,并选择序号 seq=xSYN不能携带数据,但消耗一个序号,TCP/IP网络原理与应用之TCP协议介绍1,用三次握手建立 TCP 连接,CLOSED,CLOSED,A,B,客户

29、,服务器,B 的 TCP 收到连接请求报文段后,如同意,则 发回确认。B 在确认报文段中应使 SYN=1,使 ACK=1,其确认号ack=x 1,自己选择的序号 seq=y。,TCP/IP网络原理与应用之TCP协议介绍1,CLOSED,CLOSED,A,B,客户,服务器,A 收到此报文段后向 B 给出确认,其 ACK=1,确认号 ack=y 1。若不携带数据则不消耗序号!A 的 TCP 通知上层应用进程,连接已经建立。,TCP/IP网络原理与应用之TCP协议介绍1,CLOSED,CLOSED,A,B,客户,服务器,B 的 TCP 收到主机 A 的确认后,也通知其上层 应用进程:TCP 连接已经

30、建立。,TCP/IP网络原理与应用之TCP协议介绍1,用三次握手建立 TCP 连接的各状态,CLOSED,CLOSED,A,B,客户,服务器,TCP/IP网络原理与应用之TCP协议介绍1,建立 TCP 连接,A 的 TCP 向 B 发出连接请求报文段,其首部中的同步比特 SYN 应置为 1,并选择序号 x。B 的 TCP 收到连接请求报文段后,如同意,则发回确认。B 在确认报文段中应将 SYN 置为 1,其确认号应为 x 1,同时也为自己选择序号 y。A 收到此报文段后,向 B 给出确认,其确认号应为 y 1。A 的 TCP 通知上层应用进程,连接已经建立。当运行服务器进程的主机 B 的 TC

31、P 收到主机 A 的确认后,也通知其上层应用进程,连接已经建立。,TCP/IP网络原理与应用之TCP协议介绍1,CLOSED,数据传送,ESTAB-LISHED,ESTAB-LISHED,A,B,客户,服务器,CLOSED,TCP 的连接释放,数据传输结束后,通信的双方都可释放连接。现在 A 的应用进程先向其 TCP 发出连接释放 报文段,并停止再发送数据,主动关闭 TCP 连接。A 把连接释放报文段首部的 FIN=1,其序号 seq=u,等待 B 的确认。,TCP/IP网络原理与应用之TCP协议介绍1,数据传送,通知应用进程,ESTAB-LISHED,ESTAB-LISHED,A,B,客户,

32、服务器,TCP 的连接释放,B 发出确认,确认号 ack=u 1,而这个报文段自己的序号 seq=v。TCP 服务器进程通知高层应用进程。从 A 到 B 这个方向的连接就释放了,TCP 连接 处于半关闭状态。B 若发送数据,A 仍要接收。,TCP/IP网络原理与应用之TCP协议介绍1,数据传送,ESTAB-LISHED,ESTAB-LISHED,A,B,客户,服务器,数据传送,TCP 的连接释放,若 B 已经没有要向 A 发送的数据,其应用进程就通知 TCP 释放连接。,TCP/IP网络原理与应用之TCP协议介绍1,数据传送,ESTAB-LISHED,ESTAB-LISHED,A,B,客户,服

33、务器,数据传送,TCP 的连接释放,A 收到连接释放报文段后,必须发出确认。,TCP/IP网络原理与应用之TCP协议介绍1,数据传送,ESTAB-LISHED,ESTAB-LISHED,A,B,客户,服务器,数据传送,TCP 的连接释放,在确认报文段中 ACK=1,确认号 ack w 1,自己的序号 seq=u+1。,ACK=1,seq=u+1,ack=w 1,TCP/IP网络原理与应用之TCP协议介绍1,ACK=1,seq=u+1,ack=w 1,FIN=1,ACK=1,seq=w,ack=u 1,FIN-WAIT-1,CLOSE-WAIT,FIN-WAIT-2,LAST-ACK,被动关闭,

34、数据传送,ESTAB-LISHED,ESTAB-LISHED,A,B,客户,服务器,数据传送,CLOSED,5.9.2 TCP 的连接释放,TCP 连接必须经过时间 2MSL 后才真正释放掉。,TCP/IP网络原理与应用之TCP协议介绍1,A 必须等待 2MSL 的时间,第一,为了保证 A 发送的最后一个 ACK 报文段能够到达 B。第二,防止“已失效的连接请求报文段”出现在连接中。A 在发送完最后一个 ACK 报文段后,再经过时间 2MSL,就可以使本连接持续的时间内所产生的所有报文段,都从网络中消失。这样就可以使下一个新的连接中不会出现这种旧的连接请求报文段。,TCP/IP网络原理与应用之

35、TCP协议介绍1,实验观察三次握手,利用WindDump观察三次握手的细节./WinDump.exe-i 2S-t tcp and host telnet,TCP/IP网络原理与应用之TCP协议介绍1,三次握手过程,IP PC-201003101247.2389 202.114.0.248.23:S 942273462:942273462(0)win 65535 IP 202.114.0.248.23 PC-201003101247.2389:S 2471367096:2471367096(0)ack 942273463 win 49640 IP PC-201003101247.2389 20

36、2.114.0.248.23:.ack 2471367097 win 65535IP 202.114.0.248.23 PC-201003101247.2389:P 2471367097:2471367202(105)ack 942273463 win 49640IP PC-201003101247.2389 202.114.0.248.23:.ack 2471367202 win 65430IP 202.114.0.248.23 PC-201003101247.2389:P 2471367202:2471367208(6)ack 942273463 win 49640IP PC-201003

37、101247.2389 202.114.0.248.23:P 942273463:942273466(3)ack 2471367208 win 65424.,TCP/IP网络原理与应用之TCP协议介绍1,实验观察TCP连接释放,IP PC-201003101247.2389 202.114.0.248.23:F 942273469:942273469(0)ack 2471369343 win 65535IP 202.114.0.248.23 PC-201003101247.2389:.ack 942273470 win 49640IP 202.114.0.248.23 PC-201003101

38、247.2389:F 2471369343:2471369343(0)ack 942273470 win 49640IP PC-201003101247.2389 202.114.0.248.23:.ack 2471369344 win 65535,TCP/IP网络原理与应用之TCP协议介绍1,思考两次握手,假定TCP使用两次握手代替三次握手来建立连接,也就是说,不需要第三个报文,行不行?三次握手完成两大功能:让双方做好发送数据的准备工作,就初始序列号进行协商两次握手可能发生死锁。假定A给B发送连接请求报文段,B收到后回送一个连接确认报文段。按两次握手协定,B此时就认为连接已经建立成功。但如果该确认报文段丢失,A将不知道B是否收到请求,也不知B发送的初始序列号。此时,A认为连接没有建立成功,将忽略B发来的任何报文段,只等连接确认报文段。而B在发出的报文段超时后,不断重复发送。从而形成死锁!,TCP/IP网络原理与应用之TCP协议介绍1,谢谢!,袁巍 副教授互联网技术与工程研究中心华中科技大学电子与信息工程系Email:网址:http:/,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号