前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >什么是 ICMP ?ping和ICMP之间有啥关系?

什么是 ICMP ?ping和ICMP之间有啥关系?

原创
作者头像
网络技术联盟站
发布2022-06-27 16:37:56
2.1K0
发布2022-06-27 16:37:56
举报
文章被收录于专栏:网络技术联盟站

你好,这里是网络技术联盟站。

今天应粉丝要求约稿讲一下ICMP,说起ICMP,咋一看,很熟悉,但是仔细想想又讲不出来啥,所以这就是本文的目的。

让我们直接开始吧!

什么是ICMP?

  • 英文全称:Internet Control Message Protocol
  • 中文名称:互联网控制报文协议
  • 工作在 OSI 模型的网络层和 TCP/IP 模型的 Internet 层
  • ICMP 消息不直接传递到数据链路层
  • 在 RFC 792 中定义

ICMP 通常不被网络上的用户应用程序直接使用,并且与 TCP 和 UDP 的工作方式完全不同。

简而言之,ICMP 的主要用途是发送 Echo ICMP 请求消息的 Ping 或 Trace 工具,以计算和确定网络上的计算机是否可用、数据包往返这台计算机所需的时间以及它们经过的计算机数量。

ICMP历史

ICMP 属于 TCP/IP 协议栈,互联网的先驱之一 Jon Postel 撰写了 ICMP 的原始概念,1981 年 4 月,在 RFC 777 中,编写了第一个标准,RFC 792 也是由 Postel 编写并于 1981 年 9 月由 Internet Engineering Community 发布的。

ICMP 的结构

  • 类型Type:ICMP 中的每条消息都包含唯一的类型并放置在此字段中,其中一个常见的字段称为 echo request,类型为 8,此字段为 8 位,因此共有 256 种消息类型。
  • 代码Code:ICMP 为每种类型的消息提供了带有Code字段的附加信息,代码字段为 8 位,有 256 个可能的值。
  • 校验和Checksum:该字段为 16 位,计算方式与 IPv4 类似,用于为整个 ICMP 消息提供消息的错误检测。

ICMP的功能

ICMP 主要设计用于在将发送设备连接到接收设备的路径中工作的设备,在路径中间工作的最常见设备是路由器,ICMP 不限于路由器,网络中的任何设备都可以使用 ICMP 并向另一台设备发送消息,ICMP 为所有控制和信息消息提供单一机制。

ICMP的主要功能如下。

  • 当源发送的 IP 数据包无法传递时,允许路由器通知源。
  • 允许源发现到目标设备的所有可用路径。
  • 允许源检查目标设备是否在线和启动。
  • 允许管理员测试连接和调试与连接相关的问题。

ICMP 消息

ICMP主要有以下消息:

Echo Request / Echo Reply

  • 中文名称:回声请求/回声回复
  • Echo Reply:ICMP Type 0
  • Echo Request:ICMP Type 8

回声消息可用于确定网络上的设备是否正在工作。

本地计算机向目标计算机发送 ICMP Echo Request 消息,接收计算机使用 Echo Replymessage 进行响应。

Destination Unreachable

  • 中文名称:目的地不可达
  • ICMP Type 3

表示无法到达目标网络、主机或端口

Redirect

  • 中文名称:重定向
  • ICMP Type 5

用于将主机重定向到不同的网络路径。

Source Quench

  • 中文名称:源抑制
  • ICMP type 4

用于实现一个基本的流量控制机制,并通知源端停止发送数据包一段时间。

此消息通知数据报包在网络上快速传输,如果资源繁忙,则减慢到源设备的数据包传输速度。

Time Exceeded

  • 中文名称:超市
  • ICMP Type 11

表示由于跳数过多,已超过生存时间 ( TTL )。

消息类型汇总:

总结

Internet 控制消息协议 (ICMP) 是 TCP/IP 的实用协议,负责提供有关 TCP/IP 网络上的设备、服务或路由的可用性的信息,大多数网络故障排除技术和工具都以常见的 ICMP 消息类型为中心,最著名的就是ping,主要用于测试设备之间的通信。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是ICMP?
  • ICMP历史
  • ICMP 的结构
  • ICMP的功能
  • ICMP 消息
    • Echo Request / Echo Reply
      • Destination Unreachable
        • Redirect
          • Source Quench
            • Time Exceeded
              • 消息类型汇总:
              • 总结
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档