TCP - 接收顺序错误

2024-02-03

是否有可能以错误的顺序(由序列号指示)获取 TCP 数据包? 那么接收方会发生什么? 例如,是否有任何队列容纳“太早”到达的口袋?


或许。接收 TCP 引擎对于要做什么有多种选择。它唯一不能做的就是将这些无序数据包中的数据无序地传递到接收进程。

  • 接收TCP引擎可以丢弃乱序数据。最终,发送 TCP 引擎将重新传输它们。在此之前,它肯定也会重传间隙中的数据。当间隙中的数据到达时,接收引擎可以将其按顺序传递给接收进程。
  • 接收TCP引擎可以保存乱序数据。最终,要么间隙中的数据到达,要么发送 TCP 引擎将重新传输它。无论哪种方式,间隙都会被填充,并且接收引擎可以按顺序将所有数据传递到接收进程。
  • 接收TCP引擎可以保存乱序数据,并提示发送TCP引擎应该在间隙中重传数据。它通过对收到的最后一个有序数据字节进行重新确认来进行响应来实现此目的。这就是大多数 TCP 引擎所做的事情。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

TCP - 接收顺序错误 的相关文章

  • Go TCP 读取是非阻塞的

    我正在尝试用 Go 创建服务器和客户端 我已经成功地与服务器和客户端进行通信 但我遇到的问题是golang中的TCP读取是非阻塞的 我想知道 golang 中的读取是否有可能像 C 中的读取一样阻塞 谢谢 EDIT 这是服务器的源代码 fu
  • 如何在 Windows 中拦截 DNS 查询

    我正在研究如何在 Windows 中拦截 DNS 查询 以一种不需要将 DLL 注入到每个进程中的方式 并且理想情况下能够根据发出查询的进程做出决策 因此简单的 DNS 代理服务器是不够的 从表面上看 DNS 查询所采用的路径如下所示 某些
  • 为什么我们可以将 sockaddr 转换为 sockaddr_in

    我明白为什么强制转换很有用sockaddr to sockaddr in 但我不明白这怎么可能 据我所知 它们的大小相同sockaddr in添加了sin zero使其大小相同 我想知道编译器如何知道从哪里获取信息sockaddr in如果
  • 在下载的同时从 UnityWebRequest 获取数据?

    我有这段代码可以进行 REST 调用 public IEnumerator GetCooroutine string route string finalURL URL route UnityWebRequest www UnityWebR
  • 如何确定实际物理网卡的 MAC 地址——而不是 VPN 创建的虚拟网络接口 (.NET C#)

    背景 我正在尝试从计算机中获取唯一标识符 并且希望每次都能可靠地返回相同的 MAC 地址 相信我 我有使用 MAC 地址的理由 并且阅读了许多关于替代唯一 id 方法的帖子 是的 我考虑过他们是否没有任何网卡 Problem 问题出在 NE
  • 如何在java应用程序中检测FIN - tcp标志?

    我在两台计算机之间有持久的 TCP 连接 第二台计算机不受我的控制 第二台计算机可以随时发送FIN标志 并且首先必须关闭当前连接 将FIN标志发送回第二台计算机 我如何知道第二台计算机正在发送 FIN 标志 以及何时必须调用 Java 应用
  • Android 中客户端服务器通信的选项

    我目前正处于论文项目的研究阶段 我的项目是一个针对移动设备的订票系统 我选择以 Android 为目标 我预计需要带有中央服务器的客户端 服务器架构 因此目前正在研究 Android 如何与这样的服务器进行通信 服务器将授予客户端访问票务信
  • 接收UDP数据包

    假设我的程序通过网络 UDP 发送 1000 字节 它是否保证接收方将 一批 接收 1000 个字节 或者他可能需要执行多次 读取 直到收到完整的消息 如果后者为真 我如何确保同一消息的数据包顺序不会 混淆 按顺序 或者协议可能保证这一点
  • 理解 htonl() 和 ntohl()

    我正在尝试使用 unix 套接字来测试向本地主机发送一些 udp 数据包 据我了解 当设置 ip 地址和端口以发送数据包时 我会填写我的sockaddr in将值转换为网络字节顺序 我在 OSX 上 我很惊讶这个 printf ntohl
  • 如何以编程方式证明“六度分离”概念?

    我有一个包含 2000 万用户以及这些人之间的联系的数据库 如何证明 六度分离 的概念以最有效的方式在编程中 链接到有关六度分离的文章 http en wikipedia org wiki Six degrees of separation
  • 提高UDP可靠性

    我正在构建一个基于 UDP 的小型服务器 服务器基于 Net并使用它自己的Socket类 我通过 ReceiveMessageFromAsync 和异步发送使用完成端口 我的问题是我失去了大约 5 10 的流量 现在我明白这是正常的 但是有
  • 基于邻近度的负载均衡

    我正在开展一个项目 我们在世界各地拥有大量 目前为 5 台 服务器 客户端通过集中式代理连接到其中一台服务器 我们知道客户的原籍国 但除此之外一无所知 我们完全控制服务器 因此我们可以获得所需的所有信息 我们不控制客户 他们必须按照标准通过
  • ZeroMQ可以用来接受传统的套接字请求吗?

    我正在尝试使用 ZeroMQ 重写我们的旧服务器之一 现在我有以下服务器设置 适用于 Zmq 请求 using var context ZmqContext Create using var server context CreateSoc
  • 发起TCP连接关闭后如何接收数据?

    TCP 允许一侧发出 FIN 并让另一侧在结束其一侧的连接之前响应一些数据 我如何使用 NET 来实现这一点TcpClient 看来我必须使用Close发出FIN 但之后我不能再打电话Client Receive since Client被
  • 如何修改s_client的代码?

    我正在玩apps s client c in the openssl源代码 我想进行一些更改并运行它 但是在保存文件并执行操作后 我的更改没有得到反映make all or a make 例如 我改变了sc usage函数为此 BIO pr
  • P2P网络游戏/应用程序:类似“战网”匹配服务器的不错选择

    我正在制作一个网络游戏 1v1 游戏中是 p2p 不需要游戏服务器 然而 为了让玩家能够 找到彼此 而不需要在另一种媒介中协调并输入IP地址 类似于网络游戏的现代时代 我需要有一个协调 匹配服务器 我无法使用常规网络托管 因为 客户端将使用
  • 本地主机:8080 是什么意思? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 有什么区别本地主机 网络 vs 本地主机 8080 web TCP IP 连接始终与 IP 地址建立 您可以将 IP 地址视为某台计算机的
  • Docker DNS 设置

    我尝试使用自定义网络和 dos 设置创建 docker 容器 docker网络创建 driver bridge opt com docker network bridge enable ip masquerade true opt com
  • 无法分配请求的地址 - 可能的原因?

    我有一个由主服务器和分布式从服务器组成的程序 从属服务器向服务器发送状态更新 如果服务器在固定时间内没有收到特定从属服务器的消息 则会将该从属服务器标记为关闭 这种情况一直在发生 通过检查日志 我发现从站只能向服务器发送一个状态更新 然后永
  • iOS 上的多个 HTTP 请求与单个 TCP 连接

    我正在开发一个 iPhone 应用程序 它使用我控制的基于 Web 的 API 连接到持续打开的 TCP 端口并通过 TCP API 发出请求 或者为我想要获取的所有数据发出新的 HTTP 请求 会更快或更高效吗 我认为差异可以忽略不计 但

随机推荐

  • SQL - 多个条件where子句同一列

    我有一个看起来有点像这样的数据集 Subject ID Diagnosis ID 001 299 001 288 001 233 001 299 002 299 002 233 003 238 004 299 004 233 我想创建一个新
  • Vagrant::Errors::NetworkCollision:指定的主机网络与非主机网络发生冲突

    我在多台机器上使用 vagrant 它曾经正常工作 但后来它就不再工作了 我在 Vagrantfile 中定义网络的部分 config vm define app do layer layer vm provision chef solo
  • 在运行时将数据分配给四维数组

    我有一个四维数组 其中有一组静态值 但我的问题是我想从 api 获取一些数据并且必须将其放入四维数组中运行时期间 我不知道该怎么做 任何最轻微的想法将不胜感激 这是我的示例 显示了我的四维数组的静态定义 static final Strin
  • Allure报告:Chrome中没有显示任何内容

    我正在尝试使用Allure框架 https github com allure framework allure core为我生成一份报告硒网络驱动程序 http docs seleniumhq org projects webdriver
  • 重新启用 iPhone 模拟器位置服务

    我在模拟器上禁用了位置服务 并设置了 不再询问 选项 以为我可以稍后重新启用它 但现在我不知道如何操作 有人可以指出我在哪里更改此设置吗 Thanks 解决方案 系统偏好设置 gt 安全 gt 按钮 重置警告 您可能需要先单击左下角的锁 然
  • 在android中实现带有分区分隔符的列表

    嗨 我如何实现一个带有部分分隔符的列表 就像android上的那样构建块列表 http developer android com design building blocks lists html 您能指出任何文章或教程来实现这一目标吗
  • git克隆https/ssl错误[重复]

    这个问题在这里已经有答案了 我已经在我的 git 服务器中安装了 ssl 证书和密钥 但是当我尝试从 mysysgit 通过 https 克隆时出现错误 早些时候 它在 http 上工作得很好 无法确定问题出在哪里 git clone ht
  • Angular-cli 测试覆盖所有文件

    我正在运行以下命令来进行单元测试并生成代码代码覆盖率报告 ng test code coverage 它正在覆盖率文件夹中写入代码覆盖率报告 我需要查看整个项目的覆盖范围 而不仅仅是进行测试的文件 karma conf js module
  • 如何对 Python 字典执行集合运算?

    虽然能够在字典的键之间执行集合操作非常有用 但我经常希望可以对字典本身执行集合操作 我找到了一些服用食谱两个词典的区别 http code activestate com recipes 576644 diff two dictionari
  • 使用 Python 的 ElementTree 查找顶级 xml 注释

    我正在使用 Python 的 ElementTree 解析 xml 文件 如下所示 et ElementTree file file test xml test xml 以几行 xml 注释开头 有没有办法从 et 那里得到这些评论 对于
  • 如何获取 IOrderedQueryable 中项目的索引?

    背景 我正在设计一个类似列表的控件 WinForms 它由DbSet 一个主要要求是它doesn t将整个列表加载到本地内存中 我正在使用一个DataGridView在虚拟模式下作为底层 UI 我正计划实施CellValueNeeded充当
  • ASP.NET MVC - 部分视图可以有控制器吗?

    当我在视图中调用时 Html RenderPartial MyPartialView MyObject 我可以设置它以便该部分视图有一个在调用 RenderPartial 时调用的控制器吗 使用可能会更好渲染动作 http msdn mic
  • 使用 在从 XSL FO 生成的 PDF 中插入换行符

    我正在使用 XSL FO 生成一个包含信息表的 PDF 文件 其中一列是 描述 列 我填充这些描述字段之一的字符串示例如下 This is an example Description br List item 1 br List item
  • 如何访问手机照片库中的图像?

    顺便问一下 有人知道如何访问手机的照片库吗 我正在制作一个应用程序来拍摄植物叶子的照片 分析图像以确定其是否已确定 我们希望我们 可以为用户提供两种选择 拍摄叶子的照片或使用植物的图像 用户已经拿走的叶子 然而 我们拍了照片 但我们没有 知
  • 使用 Spring AOP 进行方法分析(基本执行时间)

    我正在寻找一种功能或软件 它可以让我轻松地分析我的方法执行时间并选择通过包过滤器分析的内容 我知道 它是探查器 101 我使用 TPTP 分析器 但我对此并不满意 坦率地说 我只是不明白它是如何工作的 当我分析我的应用程序 以分析模式启动服
  • xpath:查找不同行中具有相同位置的表格单元格

    我正在解析一个包含如下结构的网页 tr td Label 1 td td Label 2 td td Label 3 td td Something else td lt tr gt tr td Item 1 td td Item 2 td
  • 什么是 {block:Hidden} 以及何时使用它?

    block Hidden
  • htaccess 获取不带路径的文件名

    我正在尝试获取所请求的不带路径的文件名使用 htaccess 作为 RewriteCond REQUEST FILENAME返回完整的绝对路径 但我只需要文件名 例如test php 我一直在寻找这个很多 但找不到任何可以帮助我的东西 感谢
  • Webdeploy权限问题

    我有 3 个 Web 部署 Visual Studio 将项目发布到包 包 我使用 msdeploy 命令与服务器同步 其中一个包是新添加的 除了新添加的包之外 其他两个包都工作正常 我在日志中看到以下错误 我不确定在哪里设置此权限 因为
  • TCP - 接收顺序错误

    是否有可能以错误的顺序 由序列号指示 获取 TCP 数据包 那么接收方会发生什么 例如 是否有任何队列容纳 太早 到达的口袋 或许 接收 TCP 引擎对于要做什么有多种选择 它唯一不能做的就是将这些无序数据包中的数据无序地传递到接收进程 接