linux TCP协议的知识点有哪些

发布时间:2021-12-17 10:19:00 作者:iii
来源:亿速云 阅读:121

这篇文章主要讲解了“linux TCP协议的知识点有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“linux TCP协议的知识点有哪些”吧!

1. TCP协议

1.1 TCP数据包头

要了解三次握手和四次挥手,首先需要了解下TCP数据包头的结构,如下: linux TCP协议的知识点有哪些

注意:TCP数据包是没有IP地址的,只有端口

1.2 三次握手协议

在利用TCP实现源主机和目的主机通信时,目的主机必须同意,否则TCP连接无法建立。为了确保TCP连接的成功建立,TCP采用了一种称为三次握手的方式,三次握手方式使得“序号/确认号”系统能够正常工作,从而使它们的序号达成同步。如果三次握手成功,则连接建立成功,可以开始传送数据信息。 三次握手:为应用程序提供可靠的通信连接,适合于一次传输大批数据的情况,并适用于要求得到响应的应用程序。 其三次握手分别为:

运行客户进程的源主机A的TCP通知上层应用进程,连接已经建立。 当源主机A向目标主机B发送第一个数据报文段时,其序号仍为X+1,因为前一个确认报文段并不消耗序号。 当运行服务进程的目标主机B的TCP收到源主机A的确认后,也通知其上层应用进程,连接已经建立。至此建立了一个全双工的连接。

1.3 tcp断开连接四次挥手

tcp建立连接是三次,但断开连接却要四次,是因为tcp是全双工的,两个方向上都需要进行关闭。

注意 : FIN和SYN一样,也要消耗一个序号。理论上服务器在TCP连接关闭时发送的终止数据包中,只有终止位置是1,然后客户端进行确认。但是在实际的 TCP实现中,在终止数据包中,确认位和终止位是同时置为1的,确认位置为1表示对最后一次传输的数据进行确认,终止位置为1表示关闭该方向的TCP连 接。

1.4 TCP有哪些状态

一般我们可以使用netstat查看当前socket状态。

1.5 TIME_WAIT为什么要等2MSL才会变为CLOSED

有两个原因:

注意:报文段的生存周期是一个MSL,所以在2MSL后,不会还存在迟到的报文段。

感谢各位的阅读,以上就是“linux TCP协议的知识点有哪些”的内容了,经过本文的学习后,相信大家对linux TCP协议的知识点有哪些这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

推荐阅读:
  1. Linux中netfilter/iptables知识点的示例分析
  2. Linux下怎么搭建NFS

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux tcp

上一篇:mkcephfs如何创建集群

下一篇:python匿名函数怎么创建

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》