前言

打算从新整理网络这一块,那么我先把概念整理下来。

正文

ICMP是ip的一个组成。他传递差错报文以及其他需要注意的信息。主要用于反馈一些网络传输的问题。因为ip协议很容易丢包,那么icmp可以告诉我们的进程到底为什么丢。

然后再细看一下icmp内部:

8位类型表示什么类型的icmp。

然后代码位是在前面类型的细分。

判断是什么样的icmp,需要去查询icmp表。

icmp 有两种报文,一种是查询类,比如说ping就是查询类,判断有没有通。

那么icmp包括什么内容呢?icmp包括原来发送包的ip首部和ip首部后面的8个字节。

ip首部是为了告诉到底是哪个包出现问题了,然后8个字节是因为tcp或者udp,他们的前面8个字节存放了他们应用程序端口的信息,这个时候操作系统才能给那个应用程序去处理。

icmp什么时候不会产生差错报文?

1.icmp报文如果出错了不会产生差错报文,所以不要完全指望icmp一定会给我们写的程序信息。

2.目的地址是广播地址。

3.作为链路层的广播的数据报。

4.不能作为ip的第一分片。因为如果不是ip的第一分片,里面是没有端口号的,那么发给原主机没有用。

5.源地址不能是本身主机。

然后后面16位是验证icmp有没有损失,这个校验损失不仅校验头部,同样校验数据,和ip协议那个16位不同,ip协议只校验头部有没有丢。

好的,看个例子吧。

上面类型是3,代码类型是3。类型是3是不可达,代码类型是端口不可达,事实上你查表即可。

看下icmp里面的内容是什么。

上面包含了原来发送的ip头部和udp的端口号。

icmp就是这么回事,在工作中我们多用用查查自然就明白了。

ICMP 概念的更多相关文章

  1. 几款 ping tcping 工具总结

    本文转载至:http://www.cnblogs.com/kerrycode/p/8092942.html ping 命令以前是一个很好用并且常用的网络测试工具,它是基于 ICMP 协议,但是出于网络 ...

  2. IP封包协议头/TCP协议头/TCP3次握手/TCP4次挥手/UDP协议头/ICMP协议头/HTTP协议(请求报文和响应报文)/IP地址/子网掩码(划分子网)/路由概念/MAC封包格式

    IP协议头IP包头格式: 1.版本号:4个bit,用来标识IP版本号.这个4位字段的值设置为二进制的0100表示IPv4,设置为0110表示IPv6.目前使用的IP协议版本号是4. 2.首部长度:4个 ...

  3. RSVP协议的基本概念介绍

    2010-06-12 14:12 佚名 互联网 字号:T | T 对于RSVP协议的简单介绍和图解.通过文章,我们将对这个含义的基本概念和结构,以及工作方式等方面的知识有所了解.希望对大家有所帮助. ...

  4. TCP/IP基础概念及通信过程举例

    TCP/IP基础概念及通信过程举例 出现 上个世纪60年代,由于中央集中式网络的容灾性较弱,以美国国防部为中心的一家组织研究出分组交换网络.后来为了验证分组交换技术的实用性,ARPANET出现了,并且 ...

  5. OpenStack网络指导手册 -基本网络概念

    转自:http://blog.csdn.net/zztflyer/article/details/50441200 目录(?)[-] 以太网Ethernet 虚拟局域网VLANs 子网和地址解析协议S ...

  6. Java Socket 网络编程心跳设计概念

    Java Socket 网络编程心跳设计概念   1.一般是用来判断对方(设备,进程或其它网元)是否正常动行,一 般采用定时发送简单的通讯包,如果在指定时间段内未收到对方响应,则判断对方已经当掉.用于 ...

  7. TCP/IP 协议大致的概念

    最近在看<图解HTTP>和<HTTP权威指南>,对TCP/IP大致过了一下. TCP/IP 不仅仅是TCP 和 IP  TCP/IP 是协议族,与之相对的事IEEE等标准组织设 ...

  8. UNIX环境高级编程——网络基础概念

    TCP协议分成两个不同的协议: 1.网络传输中差错的传输控制协议TCP 2.专门负责对不同网络进行互联的互联网协议IP 网络体系结构概念: 网络体系结构即是指网络的层次结构和每层所使用协议的集合 OS ...

  9. HTTP协议扫盲(一)HTTP协议的基本概念和通讯原理

    一.HTTP协议的概念 1.引子  - 从url开始 URL(Uniform Resource Locator) 地址用于描述一个网络上的资源, 基本格式如下 schema://host[:port# ...

  10. UNIX网络编程——利用ARP和ICMP协议解释ping命令

    一.MTU 以太网和IEEE 802.3对数据帧的长度都有限制,其最大值分别是1500和1492字节,将这个限制称作最大传输单元(MTU,Maximum Transmission Unit)      ...

随机推荐

  1. CSV转Excel,命中关键词标红

    CSV转Excel,命中关键词标红 package com.wenwo.schedule.job.mainJob; import java.io.ByteArrayOutputStream; impo ...

  2. Docker:Failed to copy files, no space left on device

    主页 个人微信公众号:密码应用技术实战 个人博客园首页:https://www.cnblogs.com/informatics/ 问题描述 在Mac上进行docker构建时,偶尔会遇到以下问题 Fai ...

  3. Jenkins 批量修改Job的配置

    登录Jenkins机器,执行 以下shell 脚本 --单文件替换 sed -i "s#xxxxx#xxxxxx#g" /var/lib/docker/volumes/jenkin ...

  4. jsp转换成html

    相信很多人都希望自己的页面越快越好,最好是能静态的,提高客户访问速度.也便于搜索引擎搜索.所以,就希望我们的动态读取数据库的页面,尽可能的生成静态页面.一下系列文章,介绍一下个人的解决方案.      ...

  5. 谈谈Redis五种数据结构及真实应用场景

    前言 如果问你redis有哪些数据结构,你肯定可以一口气说出五种基本数据结构: String(字符串).Hash(哈希).List(列表).Set(集合).zset(有序集合) 你或许还知道它还有三种 ...

  6. c++的IO类

    CPP的IO类 继承图: IO对象不能拷贝或赋值 istream in = cin; //错! istream &in = cin; //正确! IO对象的状态 strm::good:读正常 ...

  7. ubuntu 14.04 x64 安装ia32-libs(时间点为2015.1.2)

    PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明   本文发布于 2015-01-02 22:45:12 ...

  8. [LeetCode] 2045. 到达目的地的第二短时间

    一.摘要 本文介绍了一种使用BFS求无向图中第二短的距离的算法,本文算法参考自Python3 BFS找出第二短路径.通过使用BFS求出题目中给出的路径图(无向联通图)从节点1到节点n的第二短的路径,再 ...

  9. 亮点抢先看!4月16-17日,百度Create大会开设“AI公开课”,大咖带你打造赚钱工具

    3月16日,2024百度Create AI开发者大会正式开放售票,嘉宾套票定价399元.据悉,本次大会以"创造未来(Create the Future)"为主题,设有20+深度论坛 ...

  10. 关于三维模型OBJ格式轻量化压缩必要性探讨

    关于三维模型OBJ格式轻量化压缩必要性探讨 三维模型的OBJ格式轻量化压缩在当前的计算机图形学和虚拟现实应用中具有重要的必要性.以下是对三维模型OBJ格式轻量化压缩必要性的分析: 1.提高加载和传输效 ...