ping的原理(ICMP)

ping的原理

文章目录

  • ping的原理
  • 前言
  • 一、ICMP是什么?
    • 1.ping发送什么,收到什么?
    • 2.ICMP用途


前言

我们在网络通信的过程中,常常使用 ping 某一个 IP 地址或者某个域名看下基本连接是否正常;是否有丢包;那么其实ping 的原理是 ICMP 协议

一、ICMP是什么?

ICMP :因特网控制报文协议

ICMP通常被认为是IP的一部分,但从体系结构上讲它是位于IP之上的,因为ICMP报文是承载在IP分组中的。这就是说,ICMP报文是作为IP有效载荷承载的,就像TCP与UDP报文段作为IP有效载荷被承载那样。

1.ping发送什么,收到什么?

命令 ping 发送一个ICMP类型8编码0的请求报文到指定主机。看到该回显(echo)请求,目的主机发回一个类型0编码0的ICMP回显应答报文(类型0)。源主机收到后,则说明到达该主机的网络正常。

C:\Users\a>ping www.baidu.com

正在 Ping www.a.shifen.com [39.156.66.18] 具有 32 字节的数据:
来自 39.156.66.18 的回复: 字节=32 时间=19ms TTL=53
来自 39.156.66.18 的回复: 字节=32 时间=16ms TTL=53
来自 39.156.66.18 的回复: 字节=32 时间=16ms TTL=53
来自 39.156.66.18 的回复: 字节=32 时间=19ms TTL=53

39.156.66.18 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 16ms,最长 = 19ms,平均 = 17ms

回复的有报文字节、往返时间、TTL

TTL与DNS TTL有区别:二者都是生存时间,前者指ICMP包的转发次数(跳数),后者指域名解析信息在DNS中的存在时间。

2.ICMP用途

ICMP最典型的用途是差错报告。例如,当运行一个FTP或HTTP会话时,你也许会遇到一些诸如“目的网络不可达”之类的错误报文。这种报文就是在ICMP中产生的。在某个位置,IP路由器不能找到一条路径,以通往FTP或HTTP应用所指定的主机。该路由器就会向你的主机创建和发出一个类型3的ICMP报文以指示该错误。

你可能感兴趣的:(计算机网络自顶向下知识总结,网络,tcp/ip,网络协议)