根据报文格式来理解TCP协议

    TCP协议规定了在不同主机间进行可靠数据流传输的通用方法,如 连接建立与释放、报文编号、收到数据报后的确认、流量控制、发送超时等等。靠死记硬背来学习这些东西,没过几天就又忘记了。我发现根据TCP报文格式来了解掌握这些知识,效果还是不错的。看到下面这张图(此图来源于网络),就能回忆起关于TCP协议的大部分东西:

tcp

(该图来源于网络)

Source Port,Destination Port:源端口号,目标端口号。IP实现了点到点的数据通信,而TCP实现的是端到端的通信。通信端用一个IP与端口号来唯一标识。(其实端口号就是用来标识同一主机中的不同进程。)IP协议负责将数据传输到目标主机,而TCP可以根据数据报中的端口号,将数据交给相应的程序进行处理。

Sequence Number:发送序列号。IP实现点到点的通信,这种通信是不可靠的。IP数据报可能会丢失或乱序到达目标主机,而TCP提供一种可靠的通信方式。它通过对发送的数据报进行编号(准确的说应该是对数据流进行编号)来实现可靠通信。如:应用程序发送2048个字节数据到目标主机,TCP协议首先将这些数据报打包成一个一个的数据报,然后对其进行编号。假设每个数据报携带的数据的长度是100个字节,第一个数据报的编号是1, 那么第二个数据报的编号就是101,第三个的编号是201,以此类推。

Acknowledgment Number: 确认序号。对于发送端来讲,这个序号表示下一个tcp报文的起始序号,对于接收端来讲,表示下一个希望接收到报文的序号。

Data Offset:该字段占用4个字节,用来表示报文首部的长度,单位是4byte。例如:0x05 表示 报文的首部长度是 5 * 4 = 20个字节。

Reserved:该字段占用6个字节,作为保留字段,暂时没有什么用处。

后面是六个标识位(uaprsf,记得每个单词的首字母):

  1. URG(ent): 如果该位置为1,表示该报文比较紧急,要赶紧传输。
  2. ACK:确认序号。跟上面的Acknowledgment Number有点关系。只有该位置为1时,Acknowledgment Number才有效。
  3. PSH:push,推。表示接收到接到报文后,要赶紧传递给应用层。
  4. RST: reset,重置连接。
  5. SYN: 同步。在创建连接的时候,用到该标识位。
  6. FIN:终止。在释放连接的时候,用到该标识位。

Window:滑动窗口的大小。用于通信双方的流量控制。为了保证通信的可靠性,TCP对报文进行编号,然后发送。接收到接到报文后,要向发送方进行确认。一般情况下,发送方不是在收到确认消息之后才发下一个报文,这些网络的利用率太低,而是在没有收到确认消息时,可以发送的数据是有个最大上限。

Checksum:对报文进行校验。如果校验失败,就丢弃该报文。

Urgent Pointer:智能针针。具体我还不清楚,网上一些资料的解释是:指向后面是优先数据的字节。

Options:选项。当前tcp只定义了一个选项:最大报文段长度。它用于告诉通信的另一方,当前协议框缓冲区所能接收到报文段的最大长度。

Padding:填充段。确保报文头的长度能为32整除。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 网络协议报文格式大全中文图文说明.chm 是一个包含网络协议报文格式的详细资料的文件。该文件以CHM格式呈现,CHM是一种微软开发的帮助文件格式,可以整合文字、图像、链接和其他多媒体元素,用于提供用户友好的信息展示。 这个文件包含了各种网络协议报文格式网络协议是用于在网络中传输数据的规则和标准。协议报文格式网络中数据包的组织形式,包括了包头、包体以及其他必要的字段。这些报文格式是不同协议所定义的,例如TCP/IP协议、HTTP协议、FTP协议等。 通过网络协议报文格式大全,用户可以了解到不同协议报文的结构和各个字段的含义。对于网络管理员、网络工程师和开发人员来说,这个文件是一个重要的参考资料。在网络故障排除、协议分析和网络应用开发过程中,熟悉报文格式可以快速定位问题和编写相应的处理程序。 该资料还提供了图文说明,即以图形和文字相结合的方式展示报文格式。图像可以直观地显示报文部分的内容和关系,文字则进一步解释了各个字段的作用和取值范围。这种图文结合的形式能够更好地帮助用户理解和记忆网络协议报文格式。 总之,网络协议报文格式大全中文图文说明.chm 是一个包含网络协议报文格式和图文解释的CHM帮助文件。用户可以通过该文件了解不同协议报文的结构,对于网络管理和开发非常有帮助。 ### 回答2: 网络协议报文格式大全中文图文说明.chm是一个CHM格式的文件,内容详细介绍了网络协议报文的格式。网络协议报文是计算机网络中数据传输的基本单位,它包含了数据的头部和载荷部分。协议报文的格式规定了报文中各个部分的顺序、大小和含义,以便于发送方和接收方能够正确解析和处理数据。 这个CHM文件中的图文说明,通过具体的示意图和文字描述,展示了各类网络协议报文的格式。这些协议可以包括TCP/IP协议、HTTP协议、FTP协议、SMTP协议等等。每个协议都有自己的报文格式,通过示例报文,我们可以清晰地看到不同报文格式中各个字段的位置、长度、类型和用途。 比如在TCP/IP协议中,一个TCP报文的格式可能包括源端口号、目的端口号、序列号、确认号、窗口大小等字段。在HTTP协议中,一个HTTP报文的格式可能包括请求行、请求头部和请求体,或者响应行、响应头部和响应体。这些字段和部分的含义在文件中都有详细的解释和图解说明。 阅读这个CHM文件可以帮助我们更好地理解各种网络协议报文格式,从而能够更准确地进行数据传输和解析。通过对不同协议报文格式理解,我们可以更好地进行网络通信的开发、维护和故障排查。 ### 回答3: 网络协议报文格式大全中文图文说明.chm是一个包含了网络协议报文格式的中文图文说明文件,以CHM格式进行存储和展示。 网络协议是计算机网络中用于数据传输和通信的规则和约定,而网络协议报文格式则指的是在网络通信过程中,数据包的结构以及其中各个字段的含义和使用规则。理解和掌握网络协议报文格式对于网络通信的设计、实现和故障排除非常重要。 这个CHM文件中的中文图文说明内容,主要包括了各种常见网络协议报文格式,例如TCP、UDP、IP、HTTP等。每种协议报文格式都会详细解释和展示,包括报文的头部、标识字段、数据字段等,以及各个字段的作用和取值范围。 通过这个CHM文件,用户可以方便地了解和查找各种网络协议报文格式,从而更好地理解和应用网络协议。这对于网络开发人员、网络管理员以及网络安全人员都是非常有帮助的。 总之,网络协议报文格式大全中文图文说明.chm是一个非常有用的网络协议学习工具,它提供了中文图文的解释和展示,帮助用户理解和掌握各种网络协议报文格式

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值