1.ICMP允许主机或路由器报告差错情况和提交有关异常情况的报告;为了更有效地转发IP数据报和提高交付成功的机会;

2.ICMP不是高层协议,因为ICMP报文是装在IP数据报中的,作为其中数据部分,所以是IP层的协议;

3.ICMP报文的种类:

(1)ICMP差错报告报文

(2)ICMP询问报文

4.ICMP报文的格式:

(1)前4个字节是统一的格式,共有三个字段:类型,代码,检验和;

(2)接着的4字节,与ICMP的类型有关,最后是数据字段,其长度取决于ICMP的类型;

5.几种常用的ICMP报文类型:

**差错报告报文:

①终点不可达:类型值3,当路由器或主机不能交付数据报时就向源点发送终点不可达报文;

②源点抑制:类型值4,当路由器或主机由于拥塞而丢弃数据报时,就向源点发送源点抑制报文,使源点知道应当把数据报的发送速率放慢;

③时间超过:类型值11,当路由器收到生存时间为零的数据报,除了丢弃该数据报之外,还要向源点发送时间超过报文;当终点在预先规定的时间内不能收到一个数据报的全部数据报片时,就把已收到的数据报片丢弃,并向源点发送时间超过报文;

④参数问题:类型值12,当路由器或目的主机收到的数据报的首部中有的字段的值不正确时,就丢弃该数据报,并向源点发送参数问题报文;

⑤改变路由(重定向):类型值5,路由器把改变路由报文发送给主机,让主机知道下次应将数据报发送给另一个路由器;

⑥所有的ICMP差错报告报文中的数据字段都具有同样的格式,把收到的需要进行差错报告的IP数据报的首部和数据字段的前8个字节提取出来,作为ICMP报文的数据字段,再加上相应的ICMP差错报告报文的8个字节,就构成了ICMP差错报告报文

**不应发送ICMP差错报告报文的几种情况:

①对ICMP差错报告报文不再发送ICMP差错报告报文;

②对第一分片的数据报片的所有后续数据报片都不发送ICMP差错报告报文;

③对具有多播地址的数据报不发送,ICMP差错报告报文;

④对具有特殊地址(如127.0.0.0或0.0.0.0)的数据报不发送ICMP差错报告报文;

**询问报文:

①回送请求或回答:类型值8或10,ICMP回送请求报文是由路由器或主机向一个特定的目的发出的询问,收到此报文的主机必须给源主机或路由器发送ICMP回送回答报文;这种询问报文用来测试目的站是否可达以及了解其有关状态;

②时间戳请求或回答:类型值13或14,ICMP时间戳请求报文是请某个主机或路由器回答当前的日期和时间;

6.ICMP的应用:

(1)分组网间检测PING:用来测试两个主机之间的连通性;PING使用了ICMP回送请求与回送回答报文;PING是应用层直接使用网络层ICMP的一个例子;

(2)另一个非常有用的应用是traceroute:用来跟踪一个分组从源点到终点的路径;traceroute从源主机向目的发送一连串的IP数据报,数据报中封装的是无法交付的UDP用户数据;第一个数据报的生存时间TTL设置为,第二个设置为2,以此类推;得到路由信息;

2016.7.9 计算机网络复习要点第四章之网际控制报文协议ICMP的更多相关文章

  1. 2016.7.7 计算机网络复习要点第四章之网际协议IP

    1.与IP协议配套使用的还有三个协议: **地址解析协议ARP: **网际控制报文协议ICMP: **网际组管理协议IGMP: 2.虚拟互连网络: **没有一种单一的网络能够适应所有用户的需求: ** ...

  2. 2016.7.9 计算机网络复习要点第四章之虚拟专用网VPN和网络地址转换NAT

    1.虚拟专用网VPN (1)一个机构内,对于那些仅在本机构内部使用的计算机就可以由本季候自行分配其IP地址,让这些计算机使用仅在本机构有效的IP地址(本地地址),不需要申请全球唯一的IP地址(全球地址 ...

  3. 2016.7.8 计算机网络复习要点第四章之地址解析协议ARP

    1.地址解析协议ARP:知道一个机器的IP地址,需要找到其相应的硬件地址:ARP协议的用途是为了从网络层使用的IP地址解析出在链路层使用的硬件地址: 2.由于是IP协议使用了ARP协议,因此通常就把A ...

  4. 2016.6.20 计算机网络复习要点第三章之CSMA/CD协议

    1.最早的以太网是将许多计算机都连接到一根总线上: (1)总线的特点是:当一台计算机发送数据时,总线上的所有计算机都检测到这个数据,这种就是广播通信方式: (2)为了实现在总线上的一对一通信,可以使每 ...

  5. 2016.6.17 计算机网络复习要点之PPP协议

    点对点协议PPP是目前使用最广泛的数据链路层协议. 1.PPP协议的特点: **我们知道因特网用户通常需要连接到某个ISP才能接入到因特网,PPP协议就是用计算机和ISP进行通信时所使用的数据链路层协 ...

  6. jQuery复习:第四章

    一.jQuery中的事件 1.加载DOM $(document).ready()和window.onload方法具有类似功能,但是执行时机不同.window.onload方法是在网页中所有的元素都加载 ...

  7. 《计算机网络》谢希仁(第7版) 第四章 c语言http://c.biancheng.net/cpp/html/3137.html

    第四章 网络层 电信网使用面向连接的通信方式,使电信网络能够向用户提供可靠传输的服务. 互联网设计思路:网络层向上只提供简单灵活的.无连接的.尽最大努力交付的数据报(分组)服务. 网络层不提供可靠传输 ...

  8. OpenGL复习要点II

    [OpenGL复习要点II] 1.视图变换必须出现在模型变换之前. 2.glMatrixMode()参数有三个,GL_MODELVIEW,GL_PROJECTION,GL_TEXTURE. 3.变换顺 ...

  9. 老李分享:《Linux Shell脚本攻略》 要点(四)

    老李分享:<Linux Shell脚本攻略> 要点(四)   1.IP地址的正则表达式: [0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3} 2. ...

随机推荐

  1. logback logback.xml常用配置详解(三)

    logback logback.xml常用配置详解 <filter> <filter>: 过滤器,执行一个过滤器会有返回个枚举值,即DENY,NEUTRAL,ACCEPT其中之 ...

  2. 微信成为首批支持iPhone 6s /Plus 上 3D Touch 功能的 App

    2015苹果新品发布会上微信成为首批支持iPhone 6s 和 iPhone 6s Plus 上 3D Touch 功能的 App.通过 3D Touch,微信用户将可以通过更精减的操作完成基本任务, ...

  3. LVS负载均衡集群服务搭建详解(二)

    lvs-nat模型构建 1.lvs-nat模型示意图 本次构建的lvs-nat模型的示意图如下,其中所有的服务器和测试客户端均使用VMware虚拟机模拟,所使用的CentOS 7 VS内核都支持ipv ...

  4. 专注docker安全:Security Scanning

    导读 Docker毫无疑问是近期运维同学们的热点话题,Docker安全也由此倍受重视,Docker Security Scanning 是一款Docker镜像扫描的安全工具,目前已经在Docker C ...

  5. iso socket基础2

    iPhone socket 编程之BSD Socket篇 收藏在进行iPhone网络通讯程序的开发中,不可避免的要利用Socket套接字.iPhone提供了Socket网络编程的接口CFSocket, ...

  6. 新鲜出炉的百度js面试题

    (文章是从我的个人主页上粘贴过来的,大家也可以访问我的主页 www.iwangzheng.com) 最近两位同学入职百度,带回来的笔试题基本上毫无悬念,不过有一个小题看到让人忍不住笑出声来,真的很无聊 ...

  7. Stanford机器学习---第四讲. 神经网络的表示 Neural Networks representation

    原文 http://blog.csdn.net/abcjennifer/article/details/7749309 本栏目(Machine learning)包括单参数的线性回归.多参数的线性回归 ...

  8. 技术分享:WIFI钓鱼的入门姿势

    简介 该实验先是搭建一个测试环境,然后创建一个假的无线接入点,把网络连接连接到假的接入点并且强迫用户连接假的无线点. 事先准备 1.无线网卡:无线网卡用于数据包的嗅探和注入. 2. Backtrack ...

  9. 一些Linux的路径

    系统引导时启动        /etc/rc.d/rc.local

  10. wireshark http抓包命令行详解

    This article is a quick and easy HowTo detailing the use of Wireshark or another network sniffing pr ...