情况是这样的:客户端通过tcp协议连接到服务器,但这是一个连接,我需要在客户端程序运行时改变连接数。假设我想同时以不同的流向服务器发送数据,同时还从服务器接收其他数据,有很多客户端,所以在主套接字中创建一个新连接是不可行的,新连接必须具有在服务器和客户端上都具有与旧版本相同的特征。
给定:从服务器建立的连接(套接字)
查找:将这个连接分解为许多其他连接
解决方案: ???
情况是这样的:客户端通过tcp协议连接到服务器,但这是一个连接,我需要在客户端程序运行时改变连接数。假设我想同时以不同的流向服务器发送数据,同时还从服务器接收其他数据,有很多客户端,所以在主套接字中创建一个新连接是不可行的,新连接必须具有在服务器和客户端上都具有与旧版本相同的特征。
给定:从服务器建立的连接(套接字)
查找:将这个连接分解为许多其他连接
解决方案: ???
大多数用于此任务的程序在应用程序级别使用协议的实现。
最简单和最常见的是将流分解为 TLV 结构。代表类型、长度、数据。
几个数据流被切割成缓冲区。缓冲区的类型、长度和缓冲区本身都被写入套接字。另一方面: read(1) - switch case - l=ntoa(read(2)) - read(l) 被收集在不同的流中。