理论技术:TCP/IP协议族(四)ICMP和IGMP协议!
应该先说IP协议的,后来考虑到层次性,还是先把支撑协议介绍完在细说IP!因为IP是我的最爱也是我的痛!呵呵!

一、ICMP协议
为什么要使用ICMP!使用ICMP的原因是什么呢?
先简单说下IP 不能做的!IP 不能提供差错控制和辅助机制(如:主机的管理和查询)!
为此,ICMP很好的承担了这个任务!
ICMP是网际控制包协议,它的功能是:差错报告和查询
ICMP发送的ICMP包并不能直接交到下1层,必须在加IP的包头!
ICMP的包分两类:1是差错报告包2是查询包
差错报告包的形式分为:1)终点不可达2)源点抑制3)超时4)参数问题5)改变路由
查询包的形式分为:1)回送请求和回答2)时间戳3)地址掩码4)路由器询问和通告
在这强调1点:ICMP是进行差错报告的协议,不负责纠错!
介绍windows下的几个命令,排错工具!
1、命令ping,这个不能在熟悉了吧!(详细的介绍在PING攻击中将细呼的给大家拉拉!)
2、命令tracert,这个大家可能有点生,是跟踪包的源点到终点的路径的,
打开CMD,命令tracert www.2cto.com 看看你的电脑上红黑联盟走了几个路由器!
3、 命令pathping是ping和tracert的结合!不错的东东!
二、IGMP协议
两个术语:
1、组播:1方个发信息多方接收!1对多的数据传输形式为组播!
2、组播路由器:有着转发组播包能力的路由器!
实话实说IGMP我学的很菜!不过IGMP的作用没那么重要(必要却不充分的协议),但是那IP必须得有IGMP!
1句话IGMP不重要却很必要!有点矛盾!呵呵!
IGMP协议又叫做网际组管理协议!帮助组播路由器创建和更新与每个路由器接口有关的“诚实”的成员表!
概念解释:在网络的通讯中经常会出现这种情况1对多的组播通讯方式!视频点播的方式!QQ里面最常用的是什么样的组播啊?大家应该可以想到!
IGMP就管这个的!那么组播路由器是为说到底:为了避免广播的通讯,隔离广播域,节省带宽成本,采用组播,组播组都会以表的形式存贮在组播路由中,IGMP就帮助建立维护此表的,而所谓的“诚实”的成员就是稳定的在一个组中,接收发送数据!象咱们QQ群里的人,要么加入,要么退出去!没有1会进去1会出来的!
现在说的IGMP有3个版本,版本2的包有3种类型:1)查询2)成员报告3)退出报告
其中查询又分为一般的查询和特殊的查询!组播路由器可以就是说支持组播协议的网络设备的都行!Cisco系统公司的所有交换设备、华为公司的quidway系列路由交换机、中兴公司的东西,如果需要在网络上实现组播功能去买他们的东西吧!具体的东西问卖设备的伙计!
找出设备的接口支持的组播地址用命令:netstat /nra 组播地址范围在224.0.0.0-239.255.255.255之间!IP的划分以后详细讲解!
注意IGMP只是在局域网出现!它的原始包是不能过路由器的!

参考:https://www.2cto.com/net/201201/117741.html

Python Web学习笔记之IGMP和ICMP的差别的更多相关文章

  1. Python Web学习笔记之TCP、UDP、ICMP、IGMP的解释和区别

    TCP与UDP解释 TCP---传输控制协议,提供的是面向连接.可靠的字节流服务.当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据.TCP提供超时重发,丢弃重复数据, ...

  2. Python Web学习笔记之多线程编程

    本次给大家介绍Python的多线程编程,标题如下: Python多线程简介 Python多线程之threading模块 Python多线程之Lock线程锁 Python多线程之Python的GIL锁 ...

  3. Python Web学习笔记之socket套接字

    套接字是为特定网络协议(例如TCP/IP,ICMP/IP,UDP/IP等)套件对上的网络应用程序提供者提供当前可移植标准的对象.它们允许程序接受并进行连接,如发送和接受数据.为了建立通信通道,网络通信 ...

  4. Python Web学习笔记之TCP/IP、Http、Socket的区别

    经常在笔试.面试或者工作的时候听到这些协议,虽然以前没怎么涉及过,但至少知道这些是和网络编程密不可分的知识,作为一个客户端开发程序员,如果可以懂得网络编程的话,他的作用和能力肯定会提升一个档次.原因很 ...

  5. Python Web学习笔记之WebSocket原理说明

    众所周知,Web应用的通信过程通常是客户端通过浏览器发出一个请求,服务器端接收请求后进行处理并返回结果给客户端,客户端浏览器将信息呈现.这种机制对于信息变化不是特别频繁的应用可以良好支撑,但对于实时要 ...

  6. Python Web学习笔记之Cookie,Session,Token区别

    一.Cookie,Session,Token简介 # 这三者都解决了HTTP协议无状态的问题 session ID or session token is a piece of data that i ...

  7. Python Web学习笔记之并发编程IO模型

    了解新知识之前需要知道的一些知识 同步(synchronous):一个进程在执行某个任务时,另外一个进程必须等待其执行完毕,才能继续执行 #所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调 ...

  8. Python Web学习笔记之GIL机制下的鸡肋多线程

    为什么有人会说 Python 多线程是鸡肋?知乎上有人提出这样一个问题,在我们常识中,多进程.多线程都是通过并发的方式充分利用硬件资源提高程序的运行效率,怎么在 Python 中反而成了鸡肋? 有同学 ...

  9. Python Web学习笔记之Python多线程和多进程、协程入门

    进程和线程究竟是什么?如何使用进程和线程?什么场景下需要使用进程和线程?协程又是什么?协程和线程的关系和区别有哪些? 程序切换-CPU时间的分配 首先,我们的任何一个程序都需要运行在一个操作系统中,如 ...

随机推荐

  1. zoj 2676 Network Wars 0-1分数规划+最小割

    题目详解出自 论文 Amber-最小割模型在信息学竞赛中的应用 题目大意: 给出一个带权无向图 G = (V,E), 每条边 e属于E都有一个权值We,求一个割边集C,使得该割边集的平均边权最小,即最 ...

  2. 伪随机数生成算法-梅森旋转(Mersenne Twister/MT)

    今天主要是来研究梅森旋转算法,它是用来产生伪随机数的,实际上产生伪随机数的方法有很多种,比如线性同余法, 平方取中法等等.但是这些方法产生的随机数质量往往不是很高,而今天介绍的梅森旋转算法可以产生高质 ...

  3. myeclipse乱码/GBK只支持中文

    Windows>>Pereferences>>General>Editors>>Spelling>>Encoding选项下选择other,然后输入 ...

  4. 51nod 1183 - 编辑距离 - [简单DP][编辑距离问题][Levenshtein距离问题]

    题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1183 编辑距离,又称Levenshtein距离(也叫做Edi ...

  5. Primitive Data Types

    Primitive Data Types (The Java™ Tutorials > Learning the Java Language > Language Basics) http ...

  6. Python Cookbook 笔记--12章并发编程

    <Python Cookbook(第3版)中文版> 1.队列queue的有些方法是线程不安全的,在多线程中最好别用 2.需要限制一段代码的并发访问量时,用信号量.不要把信号量当做普通的锁来 ...

  7. sass,less的安装及sass的教程

    装scss(window) 首相安装ruby http://www.sasschina.com/install/ scss转译css http://www.cnblogs.com/52css/arch ...

  8. ie8兼容半透明效果css

    1.opacity:0.5;(半透明效果在ie9及以上版本适用,ie8及以下不兼容) 解决办法:在css中加入filter: progid:DXImageTransform.Microsoft.Alp ...

  9. filter push down

    filter push down filter push down :先filter再做join 如果SQL里有where条件,那么数据库引擎会先filter再做join 但是MySQL5.6之前还不 ...

  10. delete删除-some