我在互联网上搜索了“多路复用套接字”,但没有找到多路复用套接字和普通套接字行为之间的区别。
普通套接字也可以在两个方向(读取和写入流)上进行通信。
我认为我可能对多路复用的概念有误,欢迎您对多路复用通信发表意见,谢谢!
编辑:我使用Java实现多路复用套接字。
普通套接字也可以在两个方向(读取和写入流)上进行通信。
我认为我可能对多路复用的概念有误,欢迎您对多路复用通信发表意见,谢谢!
编辑:我使用Java实现多路复用套接字。
多路复用是通过一个套接字运行多个连接,所有这些连接的消息都将在该套接字上(或发送)接收。因此,这不是双向通信,而是由一个套接字处理的多个不同通信通道。
socket()
和recvfrom(2)
从多个客户端接收数据包。(一个可能是BIND DNS服务器以递归模式运行时,旧版本使用单个套接字而不是为每个客户端connect(2)
建立新的套接字。)-X
X11转发或-L
或-R
端口转发时,ssh(1)
就会这样做。你可以将终端、X服务器或远程端口的数据都发送到单个 TCP会话中。