TCP能处理一个永远不会在单个连接中结束的流吗?

TCP能处理一个永远不会在单个连接中结束的流吗?,tcp,Tcp,这更像是一个理论问题。假设有一个无限的数据源,它每秒都在推送数据。一些监控“太阳事件”的设备,每纳秒(也就是说它是一个连续的流)连续地向后端系统发送事件。后端系统希望通过TCP将实时数据传输到另一个远程系统。TCP能否在单个TCP连接中处理无限的数据流 我知道序列号的限制,但是使用TCP时间戳,序列号将正确地环绕,并且不会造成问题。另外,假设系统有几TB的内存(可以认为接近无限内存模型)。如果我只给出流开始的基址,TCP是否能够在单个TCP连接中连续进行(分段、传输、重新传输等),而不必担心数据

这更像是一个理论问题。假设有一个无限的数据源,它每秒都在推送数据。一些监控“太阳事件”的设备,每纳秒(也就是说它是一个连续的流)连续地向后端系统发送事件。后端系统希望通过TCP将实时数据传输到另一个远程系统。TCP能否在单个TCP连接中处理无限的数据流

我知道序列号的限制,但是使用TCP时间戳,序列号将正确地环绕,并且不会造成问题。另外,假设系统有几TB的内存(可以认为接近无限内存模型)。如果我只给出流开始的基址,TCP是否能够在单个TCP连接中连续进行(分段、传输、重新传输等),而不必担心数据是否结束


我的猜测是,由于TCP从不需要任何流长度参数,所以它应该是可能的。我说得对吗?

基本上是的。只要数据是字节(‘八位字节’)对齐的,TCP流上的数据就可以通过管道传输到任何地方(参见任何路由器)。TCP通信是一个字节流,它不关心消息边界。窗口化协议有内置的流控制,所以它应该都能工作