使用套接字在同一主机中的进程之间进行通信,可以使用UDP吗?

Posted

技术标签:

【中文标题】使用套接字在同一主机中的进程之间进行通信,可以使用UDP吗?【英文标题】:Use socket to comunicate between process in the same host, is it ok go with UDP? 【发布时间】:2015-07-22 08:18:14 【问题描述】:

我想确定,如果在主机中使用 UDP,我应该关心包丢失的问题吗?

【问题讨论】:

管道是同一主机上进程之间 1:1 流通信的更好选择。 【参考方案1】:

是的,您应该在使用 UDP 时关注可靠性。即使您在 localhost 上使用它,也不能保证数据包不会丢失,因为协议规范不能确保这一点。它还取决于操作系统中 UDP 的实现。就可靠性而言,它在不同操作系统上的行为可能会有所不同,因为 UDP 规范中没有定义规则。

此外,UDP 中的交付顺序也无法保证,因此在使用 UDP 进行 IPC 时,您也应该注意这一点。

希望对你有帮助。

【讨论】:

也不能保证每个数据报的交付数量。从零开始的任何东西。 非常感谢 Tayyab 和 EJP,知道了

以上是关于使用套接字在同一主机中的进程之间进行通信,可以使用UDP吗?的主要内容,如果未能解决你的问题,请参考以下文章

套接字socket

ssl和socket有何关系?说明两者的异同点?

Qt之进程间通信(本地套接字)

创建一个仅限本地的端口以在同一台计算机上的进程之间进行通信?

http协议及httpd基础

socket和http协议