什么是TCP协议?

TCP协议是传输控制协议,位于应用程序层和网络层之间,用于提供可靠的流传递服务,即以字节流的形式传递数据,也以字节流的形式接收数据。TCP使用确认机制检查数据的安全和声音到达,在发送方执行多路复用,并在接收方进行多路分解。为了实现面向连接的功能,TCP使用三个阶段,如连接建立,数据传输和连接终止。

了解TCP协议

它被认为是面向连接的协议,这意味着建立并维持连接,直到结束每个端的应用程序交换消息的时间为止。它还决定如何以网络传递的数据包的形式破坏应用程序数据,然后发送数据包并最终从网络层接受那些数据包,此外还管理流控制。在OSI模型中,TCP占用第4层的一部分,即传输层,以及第5层的一部分,即会话层。

让我们举个例子。当Web服务器  将HTML文件发送到客户端时,它将使用HTTP协议。然后,HTTP程序层请求TCP层设置连接,然后发送文件。然后,TCP堆栈将文件划分为数据包的形式,对其进行编号,最后将其转发到Internet协议层进行传递。尽管传输中的每个数据包都具有相同的源IP地址和目的IP地址,但仍沿各种路由发送数据包。客户端计算机中的TCP程序层始终等待,直到并且除非所有数据包都已到达,然后它才确认已收到该数据包,然后请求重传。

TCP协议的优点

这是一个非常可靠的协议。它还可以确保数据以发送时的顺序到达所需的目的地。它也是面向连接的。它提供了错误检查机制以及恢复机制。它还展现了端到端的交流。同样,它提供流量控制。最后,该协议展示了服务器(全双工),这意味着它具有执行接收方和发送方角色的能力。

TCP协议范围

TCP标头的最小长度为20个字节,最大长度为60个字节。

源端口:它是16位,它标识发送设备时应用程序进程的源端口。目标端口:也是16位,它标识接收设备时应用程序进程的目标端口。数据偏移量(4位):  它是4位,它提到TCP报头的大小以及当前数据包在整个TCP段中的数据偏移量。保留(3位):  默认情况下,所有内容都设置为零,并保留以备将来使用。ECE:  它有两种解释:如果SYN位为0,则表示ECE表示IP数据包已具有拥塞经验,即CE位置1。如果SYN位为1,则表示ECE表示设备能够执行ECT。URG:  URG表示“紧急指针”字段已获取重要数据,应进行处理。ACK:ACK表示“确认”字段具有重要性。如果ACK为0,则表示该数据包没有任何确认。PSH:  设置PSH时,意味着它被要求接收该电台,以便在接收应用程序时立即推送数据,但不对其进行缓冲。RST:  Reset标志具有以下功能:需要RST才能拒绝传入的连接。也需要RST来拒绝段。需要RST才能重新启动连接。SYN:  需要SYN标志以设置主机之间的连接。

TCP协议可以做什么?

TCP协议适用于服务器或客户端模型。客户端始终启动连接,服务器将接受连接或拒绝连接。连接管理本质上需要这种三向握手。

客户端启动连接,然后发送该段以及序列号。然后,服务器将与它的SN(序列号)以及与该客户的序列号相比又一个的客户段的ACK一起对其进行确认。现在,客户端在获得该段的ACK之后,将发送对服务器响应的确认。

服务器或客户端都能够发送TCP段以及设置为1的FIN标志。无论何时接收端通过确认FIN将其返回,该TCP通信的特定方向都会关闭,然后释放连接。

使用TCP协议

TCP利用端口号来知道它需要哪个应用程序进程来移交数据段。除此之外,它还使用序列号以便与远程主机同步。然后,每个数据段都与SN一起发送和接收。发送方确保接收方在收到确认后已接收到的最后一个数据段。接收者通过提及最近接收到的数据包的序列号(SN)来了解发送方发送的最后一段。

结论

最后,我们讨论了网络以及TCP /
IP的主要组成部分,我们具有所需的背景知识,以便研究相当关键的安全性问题。当我们知道网络是如何构建的时,它使我们了解了当我们选择一种网络设计而不是其他网络设计时引入了哪些物理漏洞,并且知道数据包的形成方式使我们对如何制作数据包实现了了解。目的。此外,我们知道数据包的传输和传送方式可以很好地理解数据包可能发生的情况。

技术
下载桌面版
GitHub
Gitee
SourceForge
百度网盘(提取码:draw)
云服务器优惠
华为云优惠券
腾讯云优惠券
阿里云优惠券
Vultr优惠券
站点信息
问题反馈
邮箱:[email protected]
吐槽一下
QQ群:766591547
关注微信