(8.3.1)-8.3TCP传输控制协议(8.3.1-8.3.2)学习资料_第1页
(8.3.1)-8.3TCP传输控制协议(8.3.1-8.3.2)学习资料_第2页
(8.3.1)-8.3TCP传输控制协议(8.3.1-8.3.2)学习资料_第3页
(8.3.1)-8.3TCP传输控制协议(8.3.1-8.3.2)学习资料_第4页
(8.3.1)-8.3TCP传输控制协议(8.3.1-8.3.2)学习资料_第5页
已阅读5页,还剩21页未读, 继续免费阅读

下载本文档

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

文档简介

第八章8.3传输控制协议TCPTCP是一个专门为了在不可靠的互联网上提供可靠的端到端字节流通信而设计的传输层协议。它的设计目标是能够动态地适应互联网的固有特性(包括互联网可能存在不同的拓扑、带宽、时延、分组大小和其他参数等),且面对多种差错应有足够的坚定性(robustness)。8.3.1TCP概述TCP与UDP最大的区别是:TCP是面向连接的,而UDP是无连接的。8.3.1TCP概述TCP是面向连接的。进程通信必须经历建立连接、数据传输和释放连接三个阶段。11.TCP的主要特点应用进程间的通信是通过TCP连接来进行的。每条TCP连接有两个端点,只能实现点-点通信。21.TCP的主要特点TCP提供可靠交付的服务。亦即通过TCP连接传输的数据,不存在差错、丢失、重复现象、并能按序到达。31.TCP的主要特点TCP提供全双工通信。在TCP连接两端均设有缓存。41.TCP的主要特点TCP是面向字节流的。“面向字节流”的含义是:TCP把应用程序下传给传输层的数据块看成是一串无结构的字节序列流。51.TCP的主要特点接收方应用程序收到的字节流必须和发送方应用程序发出的字节流完全一样。TCP面向字节流的概念TCP不保证接收方应用程序所收到的数据块和发送方应用程序所发出的数据块具有对应大小的关系。8.3.1TCP概述8.3.2TCP报文段的格式TCP虽然是面向字节流的,但TCP传送的数据单元却是报文段。一个TCP报文段分为首部和数据两部分,而TCP的全部功能都体现在它首部中各字段的作用。TCP报文段首部的前20个字节是固定的,后面有4n字节是根据需要而增加的选项(n是整数)。因此TCP首部的最小长度是20字节。8.3.2TCP报文段的格式TCP首部20字节的固定首部目的端口数据偏移检验和选项(长度可变)源端口序号紧急指针窗口确认号保留FINSYNRSTPSHACKURG填充TCP数据部分TCP首部TCP报文段IP数据部分IP首部发送在前比特0

8

16

24

3132bit源端口和目的端口(各16位)分别填入发送该报文段应用程序的源端口号和接收该报文段的应用程序的目的端口号。8.3.2TCP报文段的格式TCP首部20字节固定首部目的端口数据偏移检验和选项(长度可变)源端口序列号紧急指针窗口确认号保留FINSYNRSTPSHACKURG填充

位0

8

16

24

31

序列号(32位)表示本报文段所发送的字节流第一个字节的序号(除SYN标志被置位的情况外)。8.3.2TCP报文段的格式TCP首部20字节固定首部目的端口数据偏移检验和选项(长度可变)源端口序列号紧急指针窗口确认号保留FINSYNRSTPSHACKURG填充

位0

8

16

24

31确认号(32位)表示期望收到对方的下一个报文段的第一个数据字节的序号。确认号不是已经正确接收到的最后一个字节的序号。8.3.2TCP报文段的格式

位0

8

16

24

31TCP首部20字节固定首部目的端口数据偏移检验和选项(长度可变)源端口序列号紧急指针窗口确认号保留FINSYNRSTPSHACKURG填充数据偏移(4位)又称首部长度。它指出首部的长度(以32位为单位),即数据部分离本报文段的起始处有多远。8.3.2TCP报文段的格式

位0

8

16

24

31TCP首部20字节固定首部目的端口数据偏移检验和选项(长度可变)源端口序列号紧急指针窗口确认号保留FINSYNRSTPSHACKURG填充保留(6位)留待后用,现置为0。8.3.2TCP报文段的格式

位0

8

16

24

31TCP首部20字节固定首部目的端口数据偏移检验和选项(长度可变)源端口序列号紧急指针窗口确认号保留FINSYNRSTPSHACKURG填充紧急URG(1位)表示本报文中数据的紧急程度。当URG=1时,表明紧急指针字段有效,说明本报文具有较高的优先级,应尽快被发送。8.3.2TCP报文段的格式

位0

8

16

24

31TCP首部20字节固定首部目的端口数据偏移检验和选项(长度可变)源端口序列号紧急指针窗口确认号保留FINSYNRSTPSHACKURG填充确认ACK(1位)仅当ACK=1时,确认号字段才有意义。当ACK=0时,确认号字段无效。TCP规定,连接建立后的所有报文段都必须把ACK置为1。8.3.2TCP报文段的格式

位0

8

16

24

31TCP首部20字节固定首部目的端口数据偏移检验和选项(长度可变)源端口序列号紧急指针窗口确认号保留FINSYNRSTPSHACKURG填充推送PSH(1位)当PSH=1时,表示请求接收端的TCP将本报文立即送往应用层,而不是将它缓存起来直到整个缓冲区被填满后再向上交付。8.3.2TCP报文段的格式

位0

8

16

24

31TCP首部目的端口数据偏移检验和选项(长度可变)源端口序列号紧急指针窗口确认号保留FINSYNRSTPSHACKURG填充20字节固定首部复位RST(1位)当RST=1时,表示TCP连接出现严重差错,必须立即释放,而后再重建。该位还可用来拒绝一个非法的报文段或拒绝一个连接请求。8.3.2TCP报文段的格式

位0

8

16

24

31TCP首部目的端口数据偏移检验和选项(长度可变)源端口序列号紧急指针窗口确认号保留FINSYNRSTPSHACKURG填充20字节固定首部同步SYN(1位)该位在连接建立时使用,起着序号同步的作用。当SYN=1,而ACK=0时,表示这是一个连接请求报文段。若对方同意建立连接,则在应答报文段中,设置SYN=1和ACK=1。8.3.2TCP报文段的格式

位0

8

16

24

31TCP首部目的端口数据偏移检验和选项(长度可变)源端口序列号紧急指针窗口确认号保留FINSYNRSTPSHACKURG填充20字节固定首部终止FIN(1位)该位用来释放一个连接。当FIN=1时,表示欲发送的数据已完毕,并要求释放传输连接。8.3.2TCP报文段的格式

位0

8

16

24

31TCP首部目的端口数据偏移检验和选项(长度可变)源端口序列号紧急指针窗口确认号保留FINSYNRSTPSHACKURG填充20字节固定首部窗口(16位)该字段用于流控制。此窗口值通常由接收方确定,指的是发送本报文段的一方的接收窗口(而不是发送窗口)的大小,即从被确认的字节起算,还允许对方发送的字节数,作为发送端设置发送窗口的依据。8.3.2TCP报文段的格式

位0

8

16

24

31TCP首部目的端口数据偏移检验和选项(长度可变)源端口序列号紧急指针窗口确认号保留FINSYNRSTPSHACKURG填充20字节固定首部检验和(16位)该字段的检验范围是整个报文段(包括首部和数据)。在计算检验和时,要在TCP报文段的前面加上一个伪首部(12字节)。校验和计算方法以及出错处理与UDP一样。8.3.2TCP报文段的格式

位0

8

温馨提示

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

最新文档

评论

0/150

提交评论