套接字手册页中的“可能支持带外数据传输机制”是什么意思

Tri*_*k M 3 unix sockets

socket 的手册页包含以下内容: SOCK_STREAM 提供有序的、可靠的、双向的、基于连接的字节流。可以支持带外数据传输机制。

这是什么意思“可以支持带外数据传输机制。”...?

Gre*_*ade 5

带外 (OOB) 意味着“您进行的通信不是您正在通信的实际数据”。

例如,如果您正在与一个端点进行“对话”——它向你发送请求,你向它发送数据——并且它想告诉你在一堆数据中途放慢速度,它需要一个“输出”乐队”传输机制说“哇,停一下”。

http://en.wikipedia.org/wiki/Out-of-band_data

它的工作方式是接收到的每条信息都可以标记为 OOB - 如果是这种情况,接收器会查看它以查看控制消息是什么,而不是将其作为数据传输的一部分传递。

“可以支持”的意思是套接字可以通过一系列协议传输,这由domain套接字的 . 为了让SOCK_STREAM(特别是send(2))支持OOB传输,底层协议也必须支持。

如果您尝试发送 OOB 消息但它不受支持,则会收到EOPNOTSUPP来自send(2).