检测对等方是否正在使用TCP keepalives(Windows)
是否有可能查明或得到通知,您所连接的对等方是否正在使用TCP keepalives 此外,在发送keepalive时是否需要得到通知 在内核驱动程序中不使用包级过滤 我们有一个插件代理,客户希望将客户机的keepalives转发到服务器。目前,我认为我们最好的选择是允许在服务器端连接上设置keepalives,但我想检查是否有人知道检测客户端行为的方法,以便更接近keepalives的中继 谢谢 是否可以确定或通知您所连接的对等方是否正在使用TCP keepalives 不。TCP keepalive不使用协议扩展。它只是以一种特定的方式使用现有的协议,以引起响应 此外,在发送keepalive时是否需要得到通知 否。无法将TCP keepalive段标识为该段 在内核驱动程序中不使用包级过滤 即使你这样做也不行 我们有一个插件代理,客户希望将客户机的keepalives转发到服务器 你的客户被误导了 目前,我认为我们最好的选择是允许在服务器端连接上设置keepalives 对 但我想检查是否有人知道一种检测客户行为的方法,这样就可以更接近地传递keepalives检测对等方是否正在使用TCP keepalives(Windows),windows,sockets,tcp,keep-alive,Windows,Sockets,Tcp,Keep Alive,是否有可能查明或得到通知,您所连接的对等方是否正在使用TCP keepalives 此外,在发送keepalive时是否需要得到通知 在内核驱动程序中不使用包级过滤 我们有一个插件代理,客户希望将客户机的keepalives转发到服务器。目前,我认为我们最好的选择是允许在服务器端连接上设置keepalives,但我想检查是否有人知道检测客户端行为的方法,以便更接近keepalives的中继 谢谢 是否可以确定或通知您所连接的对等方是否正在使用TCP keepalives 不。TCP keepal
不可能。基本上是我得出的结论。然而,我相信,如果跟踪序列号来识别一个空的ACK,序列号表示一个keepalive(SEG.SEQ=SND.NXT-1),那么在数据包级别应该是可能的。但我不会那么做。谢谢@Adrien问题是,发送TCP可以在它喜欢的任何时候这样做,而不仅仅是为了保持生命。不太可能,但可以。这就是我所说的“无协议扩展”的意思。明白了,尽管我只能想到一个目的,这将是一个保留:)-最终区别可能并不重要。