网络层(二)

148 阅读3分钟

这是我参与11月更文挑战的第23天,活动详情查看:2021最后一次更文挑战

3. 网际控制报文协议ICMP

  为了提高IP数据报交付成功的机会,在网际层使用了忘记控制报文协议ICMP(Internet Control Message Protocol)。

  ICMP允许主机或者路由器报告差错情况和提供有关异常情况的报告。

  ICMP不是高层协议,而是IP层协议。

  ICMP报文作为IP层数据报的数据,加上数据报的首部,组成IP数据报发送出去。

1)、 ICMP 报文的格式

2) 、 ICMP报文的种类

  ICMP报文的种类有两种,即ICMP差错报告报文和ICMP询问报文

  ICMP报文的前4个字节是统一的格式,共有三个字段:即类型、代码和检验和。接着的4个字节的内容与ICMP的类型有关

  ICMP差错报告报文共有5中:

    终点不可达

    源点抑制

    时间超时

    参数问题

    改变路由(重定向)(Redirect)

3) 、ICMP差错报文的数据字段的内容

4. 网际组管理协议IGMP和多播路由选择协议

1)、 IP多播需要两种协议

  为了使路由器知道多播组成员的信息,需要使用网际组管理协议IGMP(Internet Group Management Protocol)。

  连接在局域网上的多播路由器还必须和因特网上的其他多播路由器协同工作,以便把多播数据报用最小代价传送给所有的组成员。这就需要使用多播路由选择协议。

  IGMP使多播路由器知道多播组成员信息

    IGMP的本地使用范围

    IGMP并非在因特网范围内对所有多播组成员进行管理的协议。

    IGMP不知道IP多播组包含的成员数,也不知道这些成员都分布在哪些网络上。

    IGMP协议是让连接在本地局域网上的多播路由器知道本局域网上是否有主机(严格讲,是主机上的某个进程)参加或退出了某一个多播组。

  多播陆游与选择协议和单播路由选择协议的比较

    多播转发必须动态的适应多播组成员的变化(这时网络拓扑并未发生变化)。请注意,单播路由选择通常是在网络拓扑发生变化时才需要更新路由。

    多播路由器在转发多播数据报时,不能仅仅根据多博数据报中的目的地址,而是还要考虑这个多播数据报从什么地方来和要到什么地方去。

    多播数据报可以由没有加入多播组的主机发出,也可以通过没有组成员加入的网络。