`
hz_chenwenbiao
  • 浏览: 1007751 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

TCP报文格式详解(转)

阅读更多

转自:http://blog.csdn.net/LYG105504/archive/2010/11/14/6008725.aspx

TCP协议只定义了一种报文格式

     建立、拆除连接、传输数据使用同样的报文


 TCP报文格式

TCP报文段首部(20个字节)

 源端口和目的端口:各占2个字节,16比特的端口号加上32比特的IP地址,共同构成相当于传输层服务访问点的地址,即“插口”;

 这些端口可用来将若干高层协议向下复用;

序号字段和确认序号字段:

 序号:占4个字节,是本报文段所发送的数据部分第一个字节的序号。在TCP传送的数据流中,每一个字节都有一个序号。例如,一报文段的序号为300,而起数据供100字节,则下一个报文段的序号就是400;

 确认序号:占4字节,是期望收到对方下次发送的数据的第一个字节的序号,也就是期望收到的下一个报文段的首部中的序号;

 由于序号字段有32比特长,可以对4GB的数据进行编号,这样就可保证当序号重复使用时,旧序号的数据早已在网络中消失了;

数据偏移字段

 数据偏移:占4比特,表示数据开始的地方离TCP报文段的起始处有多远。这实际上就是TCP报文段首部的长度。由于首部长度不固定,因此数据偏移字段是必要的。

 保留字段: 6比特,供今后使用,目前置为0。

6个比特的控制字段

 紧急比特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时,表明欲发送的字节串已经发完,并要求释放传输连接;

窗口字段

 窗口Window:占2字节,表示报文段发送方的接收窗口,单位为字节。此窗口告诉对方,“在未收到我的确认时,你能够发送的数据的字节数至多是此窗口的大小。”

 通知窗口advertised window:接收端根据其接收能力许诺的窗口值,是来自接收端的流量控制。接收端将通知窗口的值放在TCP报文的首部中,传送给对方。

 拥塞窗口congestion window:是发送端根据网络拥塞情况得出的窗口值,是来自发送端的流量控制。

 检验和覆盖了整个的TCP报文段:TCP首部和TCP数据。这是一个强制性的字段,由发端计算和存储,由收端进行验证。

选项字段允许每台主机设定能够接受的最大TCP载荷能力(缺省536字节) 。


TCP分节的封装

 TCP的数据编号与确认

数据流、报文段和序号

 TCP通信的动作

     切割:根据适合传输的大小对数据流进行切割

         最大报文段长度<64Kbytes

         通常:MTU-(IP头+TCP头)

     复原:用报文段恢复原始数据流的字节顺序

     序号:排序、查错及数据流复原


 TCP数据流的切割与复原

报文序号

 依据数据流中的字节序号(流序号)

 报文序号为报文段中第一字节的流序号

    如:流序号=x,长度=L的报文段,则:

          报文的序号为x,下一报文序号为x+L

 序号特点

   报文的顺序关系

   数据流的位置,更便于流的复原

   需较大的序号空间(32bit,4Gbyte)

 例如:在一个报文中,序号为300,而报文中数据有100字节。

下一个报文符,其序号为400;


报文序号

分享到:
评论

相关推荐

    关于IP报文格式的详解

    关于 IP 报文格式的详解 IP 报文格式是计算机网络中的一种基本协议,用于在不同的网络之间传输数据。IP 报文格式由头部和载荷两部分组成。头部部分包含了源IP地址、目标IP地址、报文长度、协议类型、生存时间等信息...

    tcp-ip详解卷1:协议.TCP-IP详解卷2:TCP-IP详解卷3:TCP事务协议,HTTP,NNTP和UNIX域协议

    HTTP协议详细讲解了请求方法、状态码、报文格式等内容,对于理解网页工作原理和开发Web应用极其重要。 通过阅读这套书籍,读者不仅可以掌握TCP/IP协议的基本原理,还能了解到实际网络环境中的各种挑战和解决方案。...

    IP报文格式详解

    ### IP报文格式详解 在深入探讨IP报文格式之前,我们先来了解IP协议的基本概念。IP(Internet Protocol)是互联网的核心协议之一,负责在不同的网络之间进行数据包的传输。IPv4作为当前最广泛使用的版本,其报文...

    IGMP协议概述-基本原理和报文格式

    #### 四、IGMP报文格式 **1. IGMPv1报文格式** - **版本字段**(4 bits):标识协议版本。 - **类型字段**(4 bits):区分成员查询与成员报告。 - **校验和字段**(16 bits):确保报文的完整性。 - **组地址字段...

    报文格式大全详解查询

    本文将深入探讨"报文格式大全详解查询"这一主题,涵盖协议框图、协议详解、协议栈、网络协议以及交换机协议报文等相关知识。 首先,我们要理解什么是报文。在网络通信中,报文是信息的基本传递单元,它包含了发送者...

    以太网协议报文格式归纳详解

    "以太网协议报文格式归纳详解" 本文档将详细介绍以太网协议报文格式的结构和组成部分,包括IP、TCP、UDP等协议的报文格式。 以太网协议报文格式是一个复杂的结构,它包含了多种类型的帧格式,每种帧格式都有其特定...

    TCP-IP详解卷2:实现.pdf

    ### TCP-IP详解卷2:实现.pdf #### 经典TCP/IP卷2 **TCP/IP**(Transmission Control Protocol/Internet Protocol)是互联网的核心协议之一,它定义了数据在网络中的传输方式以及路由寻址机制。本章节将从给定文档...

    tcp/ip详解第一卷

    《TCP/IP详解》第一卷是关于网络通信协议TCP/IP的经典入门教材,由W. Richard Stevens撰写。该书深入浅出地讲解了TCP/IP协议族,是网络工程师和相关技术人员必备的参考资料之一。TCP/IP协议族是现代互联网通信的基础...

    TCP/IP详解 卷1完整版

    14.3 DNS的报文格式 144 14.3.1 DNS查询报文中的问题部分 146 14.3.2 DNS响应报文中的资源记录部分 147 14.4 一个简单的例子 147 14.5 指针查询 150 14.5.1 举例 151 14.5.2 主机名检查 151 14.6 资源记录 152 14.7 ...

    网络协议报文格式大全详解与抓包图

    网络协议报文格式大全详解与抓包图提供了全面的洞察,帮助我们理解数据在网络中如何传输和解析。本篇文章将深入探讨网络协议报文的结构、重要协议的报文格式以及如何通过抓包工具进行分析。 首先,我们要了解网络...

    TCP-IP详解卷1、卷2、卷3 .pdf

    书中详细解释了这些协议的工作机制、报文格式、交互过程,还包含了丰富的实例分析和实验指导,帮助读者理解和掌握网络通信的基础。 卷2《实现》则侧重于TCP/IP协议在实际操作系统中的实现,包括Unix系统的实现细节...

    MODBUSTCP详解.zip_modbus_modbus 报文格式_modbusTCP_readitt_tcp

    MODBUSTCP协议的详细报文格式说明,为使用人员提供标准modbus协议说明。

    86-TCP报文格式.mp4

    Web协议详解与抓包实战

    计算机网络课件:4_7_3 TCP协议的报文格式.pptx

    《TCP协议的报文格式详解》 TCP(Transmission Control Protocol,传输控制协议)是计算机网络中传输层的重要协议,以其可靠性和流量控制机制而闻名。本篇将详细解析TCP报文的格式,帮助读者深入理解TCP协议的工作...

    TCP/IP详解 卷1 中文版 pdf格式

    《TCP/IP详解 卷1:协议》是网络通信领域...《TCP/IP详解 卷1:协议》不仅涵盖了以上基础概念,还深入探讨了TCP/IP协议的实现细节,包括报文结构、错误处理、选项和扩展等,是学习和理解TCP/IP协议体系结构的宝贵资源。

    TCP/IP详解 卷1:协议--源代码

    14.3 DNS的报文格式 144 14.3.1 DNS查询报文中的问题部分 146 14.3.2 DNS响应报文中的资源记录部分 147 14.4 一个简单的例子 147 14.5 指针查询 150 14.5.1 举例 151 14.5.2 主机名检查 151 14.6 ...

    协议分析系列:史上最强网络协议报文格式大全中文图文说明【华为】.zip

    《网络协议解析:华为史上最全报文格式详解》 网络通信是现代信息技术的重要基石,而协议则是网络通信的“语言”。本资料集是华为公司推出的一份详尽的网络协议报文格式大全,旨在帮助读者深入理解网络协议的运行...

    TCP/IP详解卷一

    《TCP/IP详解卷一》是理解互联网通信协议基础的重要书籍,涵盖了网络通信的核心概念和技术。以下是对标题和描述中涉及的知识点的详细说明: 1. **概述**:这部分通常会介绍TCP/IP模型的四层结构——应用层、传输层...

    IP tcp UDP协议详解

    TCP报文段是TCP协议进行数据传输的基本单位,格式见下图:TCP报文段=首部+数据。 TCP报文段的首部中包括源端口、目的端口、序号、确认号、数据偏移、保留、标志、窗口、校验和和紧急指针等字段。这些字段的解释如下...

    HTTP报文格式介绍

    ### HTTP报文格式详解 #### 一、HTTP协议概述 HTTP协议(Hypertext Transfer Protocol——超文本传输协议)是一种应用层协议,主要用于从万维网服务器传输超文本到本地浏览器等应用程序。它是一个基于请求与响应...

Global site tag (gtag.js) - Google Analytics