TCP协议中的保留位、偏移位、控制位

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TCP协议中的保留位、偏移位、控制位相关的知识,希望对你有一定的参考价值。

参考技术A 1.TCP保留位:用于以后的扩用。

2.TCP的偏移位:用于表示TCP所传输的数据部分应该从TCP包的哪个位开始计算。

3.TCP报文段首部的6个控制位:URG、ACK、PSH、RST、SYN、FIN;下面将对这6个控制位做详细解释。

1)紧急URG(URGent) 

    当URG=1时,表明紧急指针字段有效。它告诉系统此报文段中有紧急数据,应尽快传送(相当于高优先级的数据),而不要按原来的排队顺序来传送。

    当URG置1时,发送应用进程就告诉发送方的TCP有紧急数据要传送。于是发送方TCP就把紧急数据插入到本报文段数据的最前面,而在紧急数据后面的数据仍是普通数据。这时要与手不中紧急指针(Urgent Pointer)字段配合使用。  

2)确认ACK(ACKnowledgment)

    仅当ACK=1时确认号字段才有效。当ACK=0时,确认号无效。TCP规定,在连接建立后所有传送的报文段都必须把ACK置1。

3)推送PSH(PuSH)

    当两个应用进程进行交互式的通信时,有时在一端的应用进程希望在键入一个命令后立即就能够收到对方的响应。这种情况下,TCP就可以使用推送(push)操作。这时,发送方TCP把PSH置1,并立即创建一个报文段发送出去。接收方TCP收到PSH=1的报文段,就尽快的(即“推送”向前)交付接收应用进程,而不再等到整个缓存都填满了后再向上交付。

4)复位RST(ReSeT)

    当RST=1时,表明TCP连接中出现严重差错,必须释放连接,然后再重新建立运输连接。RST置1还用来拒绝一个非法的报文段或拒绝打开一个连接。RST也可称为重建位或重复位。

5)同步SYN(SYNchronization)

    在连接建立时用来同步序号。当SYN=1而ACK=0时,表明这是一个连接请求报文段。对方若同意建立连接,则应在响应的报文段中使SYN=1和ACK=1。因此,SYN置1就表示这是一个连接请求或连接接受报文。

6)终止FIN(FINis)

    用来释放一个连接。当FIN=1时,表明此报文段的发送方的数据已发送完毕,并要求释放运输连接。

2021.2.28软考网络工程师-TCP,UDP协议

TCP协议-传输控制协议

  • 传输控制协议,面向字节流顺序、可靠、全双工、可变滑动窗口

  • 协议号为6

  • 结构

绿色为固定部分(20字节),橙色为可变部分(40字节),共60字节

源端口16

目标端口16位(0-1023端口为保留端口,1024-65535为可用端口)

发送顺序号

接收顺序号

偏置值

保留

URG

紧急

ACK

应答顺序号

PSH

推进功能

RST

复位

SYN

建立同步

FIN

释放连接

窗口

校验和

紧急指针

任选项+补丁

用户数据











  • 常用端口号

20、21文件传输协议

25 SMTP简单邮件发送协议

110 POP3

  • TCP三次握手

1、Client:SYN=1,SEQ=x,Server:ACK=1,ACK=x+1

2、Server:SYN=1,SEQ=Y,Client:ACK=1,ACK=Y+1

3、Client:SEQ=x+1,Server=接收ACK

 

  • TCP四次挥手

1、Client:FIN=1,SEQ=x,Server:接收FIN,ACK=1,ACK=x+1,SEQ=y

2、Client:接收ACK

3、Server:FIN=1,SEQ=z,ACK=x+1,Client:接收FIN+ACK,ACK=z+1,SEQ=x+1

4、Server:接收ACK

 

  • TCP拥塞控制:当报文到达速率大于转发速率时,会产生拥塞

解决拥塞的方法:

1、重传计时器:在一定时间内没有接收到确认,就重发

2、慢启动:发送方在接收到确认之前逐步扩大窗口大小,到达门限阈值后,再次回到1,重新开始慢启动

3、拥塞避免(在阈值后发生):窗口到达门限阈值后,进入拥塞避免阶段,采用+1的方式增大窗口,发生拥塞后,门限阈值减半

4、快速重传:当发送端接收到3个重复的ACK就开始重传,不等计时器

5、可变滑动窗口

6、选择重发ARQ

 

UDP协议

  • 无连接的、不可靠的、不保证顺序的、无差错流控机制

  • 协议号为17

  • 结构

源端口

目的端口

UDP总长度

校验和

数据

 

TCP支持数据传输、UDP支持音视频传输

 

 

SMTP简单邮件传输协议(邮件上传)

将邮件上传到服务器,采用TCP25端口,采用Client/Server工作方式,仅传送ASCII文本

 

POP3邮局协议

将邮件下载到客户机,采用TCP110端口,采用Client/Server工作方式,当用户从服务器读取邮件后,服务器删除该邮件

 

S/MIME多用途互联网邮件扩展协议

负责将多媒体邮件安全上传至服务器,包括文本、图像、音频、视频以及其他应用程序专用的数据

 

IMAP4互联网消息访问协议

提供摘要浏览,选择下载,采用TCP143端口,C/S工作方式,当用户从服务器下载邮件后,服务器仍会保存该邮件

 

PGP电子邮件加密协议

加密、鉴别、签名和压缩等技术,使用IDEA128位加密数据,RSA加密密钥,MD5认证

 

PEM增强保密邮件协议

使用多种加密方式提供机密性、认证和信息完整性的因特网电子邮件协议,采用每个报文一次一密方法加密

 

FTP文件传输协议

TCP20端口-数据连接;TCP21端口-控制连接,C/S工作方式

主动模式(默认)

被动模式

https://www.cnblogs.com/mawanglin2008/articles/3607767.html

 

远程登录协议Telnet

TCP/IP终端仿真协议,登录到远程主机上操作,采用TCP23端口,C/S工作方式

 

HTTP超文本传输协议

万维网服务器提供多媒体信息,TCP80端口,B/S工作方式,统一资源定位器URL

超文本标记语言HTML


以上是关于TCP协议中的保留位、偏移位、控制位的主要内容,如果未能解决你的问题,请参考以下文章

TCP协议传输数据的时候进行了分片,用wireshark抓包,能否在最后一个分片中找到一个分片传输结束的标志位

TCP解析

TCP解析

TCP协议 十大特性详解(上)

TCP协议

TCP协议