关于 TCP 数据包

网络工程 tcp
2022-03-05 21:45:21

在具有 800ms RTT 延迟和 10mbps 带宽的 VSat 链路上,这意味着 1MB 带宽延迟产品(传输中的数据)。

根据这个有用(但已关闭)的 Q/A,数据包被注入到 TCP 连接的两端以立即确认数据包,从而使双方的发送者可以一次发送更多。但是,这将清除发送者缓冲区,从而无法重新传输(从发送者未经修改)。显然有些数据包会丢失。那么这样一个优化的终端是如何适应的呢?VSat TCP 优化器实际上在做什么?如果不了解内部发生的魔法的全部细节,网络工程师就无法有效地解决连接问题。

他们是否有效地需要创建另一个具有足够大窗口大小的虚拟 TCP 连接?他们是使用 RAM 还是快速磁盘?他们是否仅依赖于调整的前向纠错(如果失败则连接中断)?

1个回答

当客户端和服务器之间的连接在发送数据之前建立时,就会出现 TCP 标头。在建立连接之前,服务器必须正在侦听(被动打开)来自客户端的连接请求。三向握手(主动打开)、重传和错误检测增加了可靠性,但延长了延迟。不需要可靠数据流服务的应用程序可以使用用户数据报协议 (UDP),它提供了一种无连接数据报服务,它优先考虑时间而不是可靠性。TCP采用网络拥塞避免。但是,TCP 存在拒绝服务、连接劫持、TCP 否决和重置攻击等漏洞。

问题是:考虑下图。为 OSPF DR/BDR 选举选择正确的选项。所有接口都配置有子网掩码 255.255.255.0

有人可能会说,发送者的窗口大小在发送字节时会缩小,而在收到确认时会扩大。