TTL和Keep Live之间的区别

时间:2011-07-27 09:33:21

标签: ttl

任何人都可以告诉我TTL和套接字中的Keep alive(C#Networking)和Linger之间的区别..提前感谢。

2 个答案:

答案 0 :(得分:3)

TTL告诉数据包在放弃之前他可以通过多少路由器,而Keep Alive告诉连接在没有活动的情况下它必须保持打开多长时间。

从我读到的关于灵儿的内容来看,我看不出保持活力的差异,我可能会在这里遗漏一些东西。

编辑:逗留选项允许您关闭套接字,同时告诉它等待一段时间以查看数据是否仍在线路上;来自this page,我们读到了

  

之后,传出网络缓冲区中可能仍有数据可用   你关闭套接字。如果要指定时间量   Socket将在关闭后尝试传输未发送的数据,创建   启用参数设置为true的LingerOption和秒   参数设置为所需的时间量。秒参数是   用于表示您希望Socket保留多长时间   在超时之前连接。如果你不想让Socket留下来   关闭后连接任意长度的时间,创建一个LingerOption   将enabled参数设置为false。在这种情况下,Socket会   立即关闭,任何未发送的数据都将丢失。一旦创建,通过   LingerOption到Socket.SetSocketOption方法。如果你是   用TcpClient发送和接收数据,然后传递   LingerOption to TcpClient.LingerState方法。

答案 1 :(得分:1)

生存时间是网络数据包可能交叉的设备(跳数)(如路由器,交换机等)。保持活动时间是在没有数据发送或接收时套接字保持打开的时间