Ping-问答解惑
一、ping的概念?目的?
答:
(1)ping是:在探测主机与主机之间是否可以通信,建立连接;若是源主机在一定时间内收到应答,则证明主机可达,用户不受影响。
(2)ping的最终目的是为了域名检测。海外业务的服务器一般在当地,若是“域名被强”或是“服务器宕机”等会影响正常功能,造成用户损失,所以需要有处理措施。
二、ping是协议吗?诸如http/https协议?
答:ping 使用的是ICMP协议。
其中ICMP协议是通过IP协议实现的,众所周知IP协议通信方式是不可靠的,不能保证数据是完全送达的,但是在IP协议之上的ICMP协议是有保证的,目的主机给源
主机发送请求,就算是失败了,ICMP协议也会打包错误信息返回来给主机一个机会。
三、ping是要出现在主域名下还是需要在单独的域名下?
答:这个我其实是有疑问的,在部分主域名下是有ping返回的,甚至是多个,但是有部分的域名下又没有。
四、ping采取的措施有哪些?为什么?
答:
(1)ping失败重试机制
(2)替换域名机制
(3)网络诊断机制
五、ping的埋点上报?
答:
为了分析域名是在哪个阶段失效的,采取分阶段上报策略,实际数据定位问题。
首先这个过程(生命周期)是「线性」的,前一阶段没有通过则无法进行下一阶段的检测,所有的ping都是有“起始时间”,”建立连接时间“,通过差值法验证时间是否有效。
返回时刻异常则返回0,0-A为负值,则开始上报,否则为正常差值,域名正常。
定义:
domaintime int —— 域名阶段耗时
secureconnectiontime int —— 安全链接阶段耗时
connecttime int —— 链接阶段总耗时
requesttime int —— 请求阶段耗时
responsetime int —— 响应阶段耗时
detail string —— ping阶段完整详情
errortype byte —— 错误阶段 0:正常 1:domain阶段错误 2:安全链接阶段错误 3:链接阶段错误 4:请求阶段错误 5:响应阶段错误
学习连接地址:https://blog.csdn.net/inject2006/article/details/2139149