icmp协议_ICMP协议【41】

1、回顾TCP/IP协议栈

02fbfdcf8076a587c7515622acb1c63e.png

为了更有效地转发IP数据报和提高交付成功的机会......

2、ICMP协议的简介

(1)ICMP,全称为Internet Control Message Protocol,即网际控制报文协议、网际控制消息协议。

(2)它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传输起着重要的作用。我们在网络中经常会使用到ICMP协议,只不过我们察觉不到。比如,我们经常使用的用于检查网络通不通的ping命令,这个ping命令的执行过程实际上就是ICMP协议工作的过程。

(3)ICMP协议的工作:

6127a2fe3bdbdcfbe71bc945e93c543e.png

(4)ICMP报文:

b686dcc27eec6eeb08aeab70a78f2f52.png

3、ICMP差错报告报文(5种)

  1. 终点不可达:当路由器或主机不能交付数据报时,就向源点发送终点不可达报文。无法交付

  2. 源点抑制:当路由器或主机由于拥塞而丢弃数据报时,就向源点发送源点抑制报文,使源点知道应当把数据报的发送率放慢。拥塞丢数据  老谢的书、实际应用中已被淘汰

  3. 时间超过:当路由器收到生存时间TTL=0的数据报时,除丢弃该数据报外,还要向源点发送时间超过报文。当终点在预先规定的时间内不能收到一个数据报的全部数据报片时,就把已收到的数据报片都丢弃,并向源点发送时间超过报文。TTL=0

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

  5. 改变路由(重定向):路由器把改变路由报文发送给主机,让主机知道下次应将数据报发送给另外的路由器(可通过更好的路由)。值得更好的路由

4、ICMP差错报告报文数据字段

81f59d645e794091b9ea0b14f4e2324b.png

5、不应发送ICMP差错报文的情况

  1. ICMP差错报告报文不再发送ICMP差错报告报文。

  2. 对第一个分片的数据报片的所有后续数据报片都不发送ICMP差错报告报文。

  3. 对具有组播地址的数据报都不发送ICMP差错报告报文。

  • 组播地址对应是发给一批主机,广播地址对应是发给全部主机。

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

6、ICMP询问报文

  1. 回送请求和回答报文

  • 主机或路由器向特定目的主机发出的询问,收到此报文的主机必须给源主机或路由器发送ICMP回送回答报文。测试目的站是否可达以及了解其相关状态。

时间戳请求和回答报文

  • 请某个主机或路由器回答当前的日期和时间。用来进行时钟同步和测量时间。

掩码地址请求和回答报文。已经不再使用了

路由器询问和通告报文。已经不再使用了

7、ICMP的应用

PING:测试两个主机的连通性,使用了ICMP回送请求和回答报文

Tranceroute:跟踪一个分组从源点到终点的路径,使用了ICMP时间超过差错报告报文

5801027db4e9eff5c64c8880522b06e4.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/488481.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java的字节码无法显示_【java】查看Java字节码文件内容的方法+使用javap找不到类 解决方法...

研究synchronized底层实现,涉及到查看java字节码的需要前提是,你的PC已经成功安装了JDK并别配置了环境变量。查看方法一.javap查看简约字节码方式1.准备一个java文件例如,文件所在目录在此处Student.java文件内容如下:packagecom.…

SparkR

SparkR 支持原创:http://blog.csdn.net/dr_guo/article/details/51377784 突然有个想法,R只能处理百万级别的数据,如果R能运行在Spark上多好!搜了下发现13年SparkR这个项目就启动了,感谢美帝! 1.你肯定得先…

彻底颠覆神经科学?神经信号可能不是电信号,而是机械波?!

来源:环球科学就职于哥本哈根尼尔斯玻尔研究所的托马斯亨伯格(Thomas Heimburg),是一位研究量子力学和生物物理的物理学家。然而,他却希望推翻很多神经科学教科书上的内容。在亨伯格看来,神经元之间通过类似…

java可视化压缩_25个小众的Java库

25年前,James Gosling创建了Java,并永远地改变了编程语言的版图。与许多其他编程语言不同,Java在整个生命周期中都受到业界的高度欢迎和需求。Java具有非常优秀的Core库,提供了许多基本功能。 基于其高度流行性,因此也…

深度解读:人体防御病毒的免疫力究竟是什么?

来源:国际仿生工程学会“免疫力作为机体免除瘟疫的一种能力,已被广大民众广泛使用,特别是本次新型冠状病毒的暴发,更是使得免疫力在新闻媒体中广泛传播。对于这样一个极其抽象模糊的术语,我们需要理解其真实的含义是什…

国自然:信息科学部优先发展领域及主要研究方向(含跨科学部)

来源:科奖多媒体中心“十三五”期间,通过支持我国优势学科和交叉学科的重要前沿方向,以及从国家重大需求中凝练可望取得重大原始创新的研究方向,进一步提升我国主要学科的国际地位,提高科学技术满足国家重大需求的能力…

缓冲区不能为空。 参数名: buffer_Java Nio 之Buffer

了解历史在 java1.4之前java io ,最核心的点是在"流"上;java io 的两大基石InputStream和OutputStream 也就是大家耳熟能祥的输入流和输出流,通过这个两个基石可以实现从外界读取数据到内存,以及将内存中数据写到外界;但是输入流和…

机器人行业疫情之下的“危”与“机”

来源:腾讯网口罩脱销令口罩生产线炙手可热,医护人士紧缺令送药机器人走俏,站场监控让自动测体温机器人成为网红,武汉街头配送出现物流机器人身影……新型冠状病毒感染肺炎疫情,给机器人和智能制造行业带来了意想不到的…

mysql 二进制日志变化_MySQL运维之二进制日志

MySQL二进制日志里保存会造成或可能造成数据变化的SQL语句。通过二进制日志可以完成如实时异地容灾备份、读写分离、数据恢复等功能。下面,我们一起来看看Mysql二进制日志。开启bin-log日志Mysql默认是没有开启bin-log日志的,需要我们自己去添加配置。lo…

影响和改变世界的50件发明专利,猜下中国有几个?

来源:国家知识产权局创新创造未来,专利改变世界。最近几十年究竟有哪些专利真正改变了世界呢?国家识产权局选取了一批具有历史意义的、促进社会经济发展的、对人类社会产生重要影响的中外专利。未来智能实验室的主要工作包括:建立…

js 自动分配金额_JS内存图以及原型与原型链

内存以及内存图在JS中,每一个数据都需要一个内存空间。内存空间又被分为两种,栈内存(stock)与堆内存(heap)。JS内存空间分为栈(stack)、堆(heap)、池(一般也会归类为栈中)。 其中栈存放变量,堆存放复杂对象,池存放常量。JS中的基础…

全球首个AI宇宙模拟器不仅有6亿光年宽度,还“自行”跑出了暗物质

来源:大数据文摘《创世纪》里,神用7天创造了这个世界。而现在,你可能也有机会体验这个过程,创造一个属于自己的宇宙。Space Engine 0.990版本在Steam平台发售不到一天,近300测评全部为最高评价。之后,还得到…

js 延迟几秒执行_深入研究 Node.js 的回调队列

// 每日前端夜话 第365篇// 正文共:3000 字// 预计阅读时间:10 分钟队列是 Node.js 中用于有效处理异步操作的一项重要技术。在本文中,我们将深入研究 Node.js 中的队列:它们是什么,它们如何工作(通过事件循环)以及它们…

java官方 jax rs_jboss7 Java API for RESTful Web Services (JAX-RS) 官方文档

原文:https://docs.jboss.org/author/display/AS7/JavaAPIforRESTfulWebServices(JAX-RS)ContentTutorial OverviewThis chapter describes the Java API for RESTful web services (JAX-RS, defined in JSR331). RESTEasy is an portable implementation of this s…

研究揭示大脑在工作记忆中存储信息的神经机制

来源:中国科学院脑科学与智能技术卓越创新中心(神经科学研究所)3月5日,《神经元》期刊在线发表了题为《无颗粒岛叶皮层瞬时性神经元活动调控学习新任务时的工作记忆存储》的研究论文。该研究由中国科学院脑科学与智能技术卓越创新…

[Jmeter] 基本使用的总结

转载于:https://www.cnblogs.com/mytianying/p/6793461.html

java 仿qq登录界面7.1_安卓开发学习笔记(七):仿写腾讯QQ登录注册界面

这段代码的关键主要是在我们的相对布局以及线性布局上面,我们首先在总体布局里设置为线性布局,然后再在里面设置为相对布局,这是一个十分常见的XML布局模式。废话不多说,直接上代码:一.activity.xml>android:layout…

【前沿科技】云计算军事运用有啥特点

来源: 军语开源情报研究所云计算技术被视为继大型计算机、个人计算机、互联网之后的第四次信息技术产业革命。云计算是一种围绕分布式共享计算资源的创新应用模式,资源提供者可以方便而快速地提供计算资源,而无处不在的资源需求者可以便利地使…

js原型和原型链_JS 构造函数与原型链

JavaScript 对象体系是基于构造函数和原型链的。继承不通过类,而是通过原型对象实现,原型对象的所有属性和方法,都能被实例对象共享。构造函数(constructor)在 JS 中想要生成可重用、可继承的对象就要使用构造函数&…

全球制造业的未来

来源:航空简报2020年3月4日,Brahima Coulibaly和Karim Foda在美国布鲁金斯学会官网刊文,分析了全球制造业的未来,提出了几个鲜明的观点:1.“比较优势”将发生转移,中等收入国家尤其是许多亚洲新兴经济体&am…