什么是消息边界?

2024-04-18

什么是“消息边界”在以下情况下?

TCP 和 UDP 之间的区别之一是 UDP 保留消息 边界。

我理解之间的区别TCP and UDP,但我不确定的定义“消息边界”.

由于 UDP 在每个单独的数据包中包含目的地和端口信息,因此是否可以为消息提供一个“边界”?


不,消息边界与目的地或端口无关。 “消息边界”是通过协议发送的两条消息之间的分隔。 UDP 保留消息边界。如果通过 UDP 发送“FOO”,然后发送“BAR”,另一端将收到两个数据报,一个包含“FOO”,另一个包含“BAR”。

如果通过 TCP 发送“FOO”,然后发送“BAR”,则不会保留消息边界。另一端可能会收到“FOO”,然后收到“BAR”。或者它可能会得到“FOOBAR”。或者它可能会先显示“F”,然后显示“OOB”,然后显示“AR”。 TCP 不会尝试保留应用程序消息边界——它只是各个方向上的字节流。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

什么是消息边界? 的相关文章

  • 如何在 swift 中使用套接字(连接、发送和获取消息)

    我是新来的迅捷 我想为 iPhone 进行聊天 所以我需要使用客户端套接字 怎么做这个 请给我建议或例子 我试过这个https github com socketio socket io client swift https github
  • 使用 asyncore 读取网站

    我想异步阅读一个网站 据我所知 这是不可能的 urllib 现在我尝试使用普通套接字进行阅读 但是 HTTP 给我带来了麻烦 我遇到了各种时髦的编码 例如传输编码 分块 必须手动解析所有这些东西 我现在想编码 C 而不是 python 难道
  • C# Socket.receive连续接收0字节且循环中不阻塞

    我正在尝试用 C 编写一个最简单的多线程 TCP 服务器 它接收来自多个客户端的数据 每次连接新客户端时 都会建立套接字连接 并将套接字作为参数传递给新类函数 之后运行 while 循环并接收数据 直到客户端连接为止 这里的问题是 sock
  • 基于邻近度的负载均衡

    我正在开展一个项目 我们在世界各地拥有大量 目前为 5 台 服务器 客户端通过集中式代理连接到其中一台服务器 我们知道客户的原籍国 但除此之外一无所知 我们完全控制服务器 因此我们可以获得所需的所有信息 我们不控制客户 他们必须按照标准通过
  • 尝试从输入流检索文本时应用程序挂起

    情况 我确实查看了您的代码 正如我怀疑的那样 您的问题与您发布的代码完全无关 您的 GUI 完全忽略 Swing 线程规则 并在主 Swing 事件线程 称为Event Dispatch T螺纹或EDT 由于该线程负责所有 Swing 绘图
  • 如何在Linux中打开端口[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我已经安装了 Web 应用程序 该应用程序在 RHEL centOS 上的端口 8080 上运行 我只能通过命令行访问该机器 我尝试从我的
  • 使用 Boost.Asio 进行广播的问题

    如果问题之前已得到解答 我提前表示歉意 但我已经搜索并没有找到任何对我有帮助的东西 正如问题标题所示 我正在尝试将包从服务器广播到一组侦听任何消息的客户端 客户端将计算一秒钟内收到的消息数 服务器端的事情是这样的 class Server
  • 视频流上的 TCP 与 UDP

    我刚从网络编程考试回来 他们问我们的问题之一是 如果您要传输视频 您会使用 TCP 还是 UDP 请解释一下存储视频和实时视频流 对于这个问题 他们只是希望得到一个简短的答案 TCP 用于存储视频 UDP 用于实时视频 但我在回家的路上想到
  • 为什么turn服务器不支持tcp连接?

    我是 WebRTC 新手 我需要为我的 webrtc 应用程序配置我自己的 Turn 服务器 我使用以下命令安装了我的转弯服务器 apt get install coturn 我只需要通过 tcp 运行转变服务器 它不必使用 UDP 进行任
  • 什么是接口标识符

    我有一台笔记本电脑 使用一个或多个网络适配器连接到我组织的网络 我正在尝试编写一个工具来持续监控每个网络的连接状态和连接质量 然而 我的网络知识有限 术语让我感到困惑 特别是查找所有网络适配器 有人建议我使用命令ifconfig它给了我所谓
  • 如何在Python中使用tcp套接字发送和接收网络摄像头流?

    我正在尝试重新创建这个项目 https github com hamuchiwa AutoRCCar 我拥有的是服务器 我的电脑 和客户端 我的树莓派 我所做的与原始项目不同的是我尝试使用一个简单的网络摄像头而不是树莓派摄像头将图像从我的
  • 比较 TCP 校验和与 Scapy?

    我试图在使用 Scapy 作为嗅探器时识别校验和不正确的数据包 我可以通过访问获得原始校验和 packet TCP chksum 然后我使用删除它 del packet TCP chksum 我想做类似的事情 if originalChec
  • Android Socket + ObjectOutputStream 无法正常工作

    我正在开发一个客户端 服务器程序 其中客户端是 Android 设备 服务器有一个从输入流读取对象的侦听器类 我为另一台计算机创建了一个客户端软件 该软件通过本地网络发送一个小对象 计算机到计算机工作得很好 我读取了该对象并打印了内容 但是
  • C# NetworkStream.Read() 会等到读取指定数量的数据吗?

    在 C C 中 常规非阻塞网络套接字上的 read 将立即返回缓冲区中当前可用的数据量 最多可达指定的量 因此 如果我们要求 16 个字节 但目前只有 8 个可用字节 我们将得到这 8 个 由我们决定再次调用 read 并获取所有数据 在
  • S3 Java 客户端经常失败,并出现“内容长度分隔消息正文过早结束”或“java.net.SocketException 套接字已关闭”

    我有一个在 S3 上做很多工作的应用程序 主要是从中下载文件 我看到很多此类错误 我想知道这是否是我的代码中的问题 或者服务是否真的像这样不可靠 我用来从 S3 对象流读取的代码如下 public static final void wri
  • 是否可以找到哪个用户位于 localhost TCP 连接的另一端?

    这是一个编程问题 但它是 Linux Unix 特定的 如果我从本地主机获得 TCP 连接 是否有一种简单的方法可以告诉哪个用户在 C 程序内建立了连接而无需 shell 我知道这对于 Unix 域套接字来说并不太难 我已经知道远程 IP
  • Socket.*Async 方法是线程化的吗?

    我目前正在尝试找出最小化 TCP 主服务器中使用的线程数量的最佳方法 以便最大限度地提高性能 由于我最近阅读了大量 C 5 0 的新异步功能 异步并不一定意味着多线程 这可能意味着将有限状态对象分成较小的块 然后通过交替与其他操作一起进行处
  • 使用 Flash 在本地托管游戏?

    我只是找不到合适的谷歌搜索词 是否可以使用 Flash 或 Flash 兼容服务 来允许游戏中的玩家通过 Web 浏览器托管自己的游戏 使用自己的带宽 在某种程度上 从他们的计算机运行他们自己的游戏服务器 对于 Flash 浏览器内游戏 但
  • 在 PCL 中使用 System.Net.Sockets(.Net 4.5 + 电话 8)

    我现有的 Net 库已经适用于 Net 4 5 和 Windows Phone 8 现在我想将其转换为可移植类库 突然我无法使用System Net Sockets不再了 我只检查了 Net 4 5和Windows Phone 8 未选择X
  • 套接字到底是什么?为什么我们不能使用套接字而不是 HTTP?

    套接字只是两台机器之间的连接吗 如果可以建立套接字 为什么我们还要使用 HTTP 连接呢 我认为这是一个关于套接字和 HTTP 连接之间关系的非常普遍的问题 我还假设 HTTPConnection 并不指涉及特定 API 运行时 环境的内容

随机推荐

  • 有人可以帮助我使用 Android RemoteControlClient 吗?

    我正在尝试获取RemoteControlClient设置以便我的应用程序的音乐可以通过锁定屏幕上弹出的小部件进行控制 例如 SoundCloud Google Play 音乐和其他音乐 视频应用程序 我不确定我的代码有什么问题以及为什么它没
  • 具有多处理功能的超时装饰器类会出现酸洗错误

    所以在 Windows 上signal和thread一般来说 这种方法是坏主意 不适用于函数超时 我制作了以下超时代码 它会抛出timeout exception from multiprocessing当代码花费很长时间时 这正是我想要的
  • php 和 html 文件扩展名有什么区别?

    我有一个 php文件包含以下代码 当我将文件的扩展名更改为 html那么它也以同样的方式表现 任何人都可以解释以下内容 为什么文件的行为方式与两个文件的行为方式相同 扩展 两者有什么区别 php and html文件扩展名 php file
  • 检测鼠标悬停在用户控件和所有子控件上 - C# WinForms

    我设计了一个用户控件 里面有几个控件 我将用户控件拖放到表单上 然后为其设置鼠标悬停事件以在某处显示评论 但有一个问题 用户应该将鼠标悬停在 UserControl 容器上才能看到该注释 如果他将鼠标悬停在 UserControl 内的其中
  • 如何调用模板基类中的模板成员函数?

    当在基类中调用非模板化成员函数时 可以使用以下命令导入其名称using到派生类中然后使用它 这对于基类中的模板成员函数也可能吗 只是与using它不起作用 使用 g snapshot 20110219 std c 0x template
  • 是否有必要创建与现有 ASP.NET 2.0 ASPState DB 不同的 ASP.NET 4.0 SQL 会话状态数据库?

    Is the ASP NET 4 0SQL 会话状态机制向后兼容 ASP NET 2 0 会话状态架构 或者我们应该 必须为 ASP NET 4 0 应用程序创建一个单独且不同的会话状态数据库 无论如何我倾向于后者 但是2 0数据库seem
  • 匹配/分组重复行(索引)

    如何有效地匹配 分组重复行的索引 假设我有这个数据集 set seed 14 dat lt data frame mtcars sample 1 5 14 TRUE sample int 14 rownames dat lt NULL da
  • BlueImp 插件 jQuery 文件上传:如何使用 fileInput 选项以便 fileupload() 可以绑定新的动态添加的输入?

    我使用 BlueImp 插件上传文件 当用户单击 添加文件 时 会动态添加新的文件输入 然后 当用户上传文件时 它会通过 AJAX 存储在我的 Web 文件夹中 我的第一个想法是在生成的 id 上调用 fileupload 方法 例如 fi
  • 无法在回收者视图中从一项活动转到另一项活动

    大家好 我正在尝试使用回收器视图的适配器类中的意图从一个活动移动到另一个活动 但这样做时出现 son me 错误 以下是错误 1 PakistaniActivity 不是一个封闭类 2 无法解析StatrActivity 方法 这是我的代码
  • “天真的”svn 从分支合并到主干?

    我正在将 TortoiseSVN 用于我的 C 项目 并尝试将 分支重新集成 回主干 我的情况很简单 因此对于分支中更改的每个文件 我希望它完全覆盖主干中的匹配文件 不幸的是 TortoiseSVN 比我聪明 因此它合并了每对文件 导致了一
  • 与“iostream.h”

    在 C 中包含头文件时 有什么区别 包括 h部分与不包括 h包裹时的部分 lt gt signs include 与 include 将标头名称用双引号括起来还是用 符号括起来 include 与 include iostream h 简而
  • 在查询索引/唯一字段时使用 MySQL“LIMIT 1”有什么意义吗?

    例如 我正在查询一个我知道将是唯一的并且已建立索引 例如主键 的字段 因此我知道这个查询只会返回 1 行 即使没有 LIMIT 1 SELECT FROM tablename WHERE tablename id 123 LIMIT 1 或
  • 如何使用 SSH 密钥和 Pageant 通过 Paramiko 连接到 SFTP

    我正在尝试使用受密码保护的 SSH 密钥通过 Paramiko 连接到 SFTP 我已将密钥加载到 Pageant 中 据我所知 Paramiko 支持该密钥 但我无法用它来解密我的私钥 我找到了这个例子here https stackov
  • 通过检索 JavaScript 值自动选择复选框

    自 1 周以来 我在一点上遇到了一些困难 我有 2 个数组 我想通过检索其中一个数组内的值来自动选择复选框 首先 我有一个循环 它根据第一个数组选项 创建一些复选框 每次我选中一个复选框时 文本字段都会用分隔符更新 我自己保存这个文本字段
  • MVVMCross 以编程方式更改启动 ViewModel

    可移植类库定义了启动视图模型 这种情况听起来不错 但我正在考虑这一点 您编写了一个 iOS 通用应用程序或 Android 需要更改其开始屏幕 视图模型 如果应用程序是手机 则默认视图模型是登录 但如果应用程序是平板电脑 则需要不同的视图模
  • 从 PHP 5.5 升级到 5.6 后,cURL 文件上传不再起作用

    从 PHP 5 5 升级到 5 6 后 我的 cURL 上传失败 aPost array file gt localFile default file gt html version html expiration gt 2 31 24 6
  • Spark SQL 未正确转换时区[重复]

    这个问题在这里已经有答案了 使用 Scala 2 10 4 和 Spark 1 5 1 和 Spark 1 6 sqlContext sql select id to date from utc timestamp from unixtim
  • 如何在Android中的seekbar下方显示分隔符值?

    我添加了一个seekbar我的一项活动 它的最大值是 5 现在 我想在搜索栏下方显示分隔符值 增量为 1 如 0 1 2 3 4 和 5 我怎样才能做到这一点 有没有什么系统方法可以实现这一目标 但我无法亲自动手 欢迎任何意见 注意 我想以
  • PHP Ajax上传进度条

  • 什么是消息边界?

    什么是 消息边界 在以下情况下 TCP 和 UDP 之间的区别之一是 UDP 保留消息 边界 我理解之间的区别TCP and UDP 但我不确定的定义 消息边界 由于 UDP 在每个单独的数据包中包含目的地和端口信息 因此是否可以为消息提供