socket 编程里面的心跳包是怎么回事?
答案:1 悬赏:50 手机版
解决时间 2021-12-05 01:33
- 提问者网友:杀手的诗
- 2021-12-04 01:36
socket 编程里面的心跳包是怎么回事?
最佳答案
- 五星知识达人网友:未来江山和你
- 2021-12-04 03:12
心跳是用于判断是否掉线的. 只要连着的时候就会持续每隔一小会发一个心跳包,服务器如果多久没收到就判断你已经掉线了. 之所以需要心跳包而不直接判断socket的联通状态,是因为在网络上有大量的连接缓存设备(比如电信局的交换机,比如一些硬件防火墙),这些设备会保存连接一段时间(几秒到十几分钟都有)举个例子 A客户端连接着B服务器 实际上是 A->中间的网络设备C->B如果A掉线了,实际上可能是A到C断了,也可能是C到B断了, 如果是A到C断了, 实际上B是无法知道的,因为对B来说A的连接(就是C)还连着. 心跳机制就解决了这个问题
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯