首页 > 其他分享 >为什么每次建立TCP连接时初始化的序列号都要求不一样

为什么每次建立TCP连接时初始化的序列号都要求不一样

时间:2023-04-16 10:05:06浏览次数:39  
标签:初始化 TCP 四元组 序列号 数据包 连接 服务端 客户端


为了防止历史报文被下一个相同的四元组的连接接受

假设每次建立连接。客户端和服务端的初始化序列号都是从0开始的

为什么每次建立TCP连接时初始化的序列号都要求不一样_网络


客户端和服务端建立了一个TCP连接,在客户端发送数据包被网络阻塞了然后超时重传了这个数据包,而此时服务端断电重启,之前与客户端建立的连接也消失了,于是收到客户端的数据包的时候就会发送RST报文。

紧急着,客户端又与服务端建立了与上一个连接相同的四元组连接。

在新连接建立完成后,上一个连接中被网络阻塞的数据包正好抵达了服务端,刚好该数据包的序列号正好在服务端的接收窗口,所以该数据包会把服务端正常接受就会造成数据错乱

因此如果每次建立连接,客户端和服务端的初始化序列号一样的话就会很容易出现历史报文被下一个相同四元组的连接接受问题。


标签:初始化,TCP,四元组,序列号,数据包,连接,服务端,客户端
From: https://blog.51cto.com/u_15911055/6193315

相关文章

  • 在写Python是要注意初始化函数的书写
    问题来啦!在撰写Python程序的时候,我们一定要注意,Python的初始化函数init的书写,它的名称是init,这样的话,实例化的过程中,我们才能够成功获取到我们在里面输入的数值;我起初就忽视了这个问题,将原本的四个横线写成了这样__init,主要是它也没有报出错误,我也获取不到数值,后来又仔细检查......
  • LYT-C#-Socket——简单的TCP服务端-客户端连接通信
    https://learn.microsoft.com/zh-cn/dotnet/api/system.net.sockets.tcplistener?view=netframework-4.8.1TCP编程的服务器端一般步骤是:1、创建一个socket,用函数socket()。2、设置socket属性。3、绑定本机的IP地址、端口等信息到socket上,用函数bind()。......
  • Centos 服务器放行TCP、UDP端口教程
     在运行CentOS操作系统时,经常需要放行某个端口,以便应用程序能够正常运行。今天飞飞将和你分享centos服务器放行tcp、udp端口教程,希望可以帮助到您~ 首先用SSH连接工具连接服务器,如果你不知道如何连接Linux服务器,可以参考下这篇教程 比如我们在安装宝塔后面板无法访问,提......
  • socket与TCP的关系
    Socket是一种抽象封装,等价于应用程序和网络中间的一层,以便在应用程序和操作系统内核之间传输数据。TCP是一个可靠的、面向连接的协议,用于在计算机之间传输数据。Socket可以用于创建TCP连接,在应用程序间传输数据,它们是紧密相关的,其中Socket提供了创建、绑定、监听、接受、连接、发......
  • tcp性能优化方法
    一、TCPfastopen原理简介:三次握手带来的延迟使得每创建一个新TCP连接都要付出很大代价。而这也决定了提高TCP应用性能的关键,在于想办法重用连接。TFO(TCPfastopen)允许服务器和客户端在连接建立握手阶段交换数据,从而使应用节省了一个RTT的时延。但是TFO会引起一些问题,因此......
  • 计算机网络 传输层协议TCP和UDP
    目录一、传输层协议二、tcp协议介绍三、tcp报文格式四、tcp三次握手五、tcp四次挥手六、udp协议介绍七、常见协议和端口八、有限状态机  一、传输层协议传输层协议主要是TCP和UDP协议主要作用1.分段和重组2.会话多路复用 二、tcp协议......
  • Python 实现tcp/ip协议&&CAN通信
    七层链路模型(Seven-LayerOSIModel)物数网传会表应--物理层、数据链路层、网络层、传输层、会话层、表示层(负责数据格式的转换和加密解密操作)和应用层。TCP/IP协议的四个层:应用层:应用层是TCP/IP协议中最高层,主要定义了各种应用程序的协议和数据格式。常见的应用层协议包括......
  • ubuntu 16.04.7初始化脚本
    #!/bin/bash#在root用户下运行cp/etc/apt/sources.list/etc/apt/sources.list.baksed-i"s@http://.*archive.ubuntu.com@http://mirrors.tuna.tsinghua.edu.cn@g"/etc/apt/sources.listsed-i"s@http://.*security.ubuntu.com@http://mirrors.tuna.tsingh......
  • 汉枫HF2211,串口服务器 over tcp
      串口映射和tcp不能同时通信,串口和tcp,数据错乱。也可以找厂商询问帮助。 备注:同时使用,上位机软件和研华实用配置工具都会出现数据错乱不准。   ......
  • qrtz表初始化脚本_mysql
    DROPTABLEIFEXISTSqrtz_blob_triggers;DROPTABLEIFEXISTSqrtz_calendars;DROPTABLEIFEXISTSqrtz_cron_triggers;DROPTABLEIFEXISTSqrtz_fired_triggers;DROPTABLEIFEXISTSqrtz_locks;DROPTABLEIFEXISTSqrtz_paused_trigger_grps;DROPTABLEIF......