计算机网络之网络层 (4)

  ICMP协议全称是网际控制报文协议(Internet Control Message Protocol),ICMP协议可以报告错误信息或者异常情况

计算机网络之网络层


ICMP协议首部:

8位类型   8位代码   16位校验和  
ICMP报文数据  

ICMP报文分为:差错报告报文和询问报文:

ICMP报文种类   类型的值   报文类型   具体代码  
差错报告报文   3(终点不可达)   网络不可达   0  
主机不可达   1  
5(重定向)   对网络重定向   0  
对主机重定向   1  
11   传输超时   -  
12   坏的IP头   0  
缺少其他必要参数   1  
询问报文   0或8   回送(Echo)请求或应答   -  
13或14   时间戳(Timestamp)请求或应答   -  
ICMP协议的应用

ping应用:我们可以通过ping命令进行简单的网络故障排查:

ping本地回环地址,一般情况下,都会得到返回的,如果得不到返回,则说明你的计算机的协议栈出现了问题,这个时候就可能需要重装系统,或者是重新安装这个协议栈

ping网关地址,即路由器地址,如果能得到返回的话,则说明本机到路由器的通路是通的,如果没有返回的话,则说明你的wifi,或者你的网线连接是有问题的

ping远端地址,如果不通的话,则说明你的家到ISP之间的网络是故障的,此时就需要联系网络服务商(移动、电信、联通)进行排查。

Traceroute应用:Traceroute可以探测IP数据报在网络中走过的路径

路由概述

  思考:路由表中的下一跳地址是怎么来的?下一跳地址是唯一的吗?下一跳地址是最佳的吗?路由器怎么多,他们是怎么协同工作的?为了解决这些问题,路由表需要一个好的算法去解决这些事情。路由算法实际上是图论的算法,由于网络环境复杂,使得路由算法要比图论的算法更复杂。

计算机网络之网络层


  由于互联网的规模是非常大的,互联网环境是非常复杂的,所以我们需要对互联网进行划分。自治系统(Autonomous System)是指处于一个管理机构下的网络设备群,AS内部网络自行管理,AS对外提供一个或者多个出(入)口。自治系统内部路由的协议称为:内部网关协议(RIP、OSPF), 自治系统外部路由的协议称为:外部网关协议(BGP)。

计算机网络之网络层

路由算法

  路由算法的本质是距离矢量(DV)算法, 距离矢量(DV)算法介绍如下:

每一个节点使用两个向量\(D_i\)\(S_i\)

\(D_i\)描述的是当前节点到别的节点的距离

\(S_i\)描述的是当前节点到别的节点的下一节点

每一个节点与相邻的节点交换向量\(D_i\)\(S_i\)的信息

每一个节点根据交换的信息更新自己的节点信息

计算机网络之网络层


现在假设有A的距离矢量信息,收到的距离矢量信息如下图:

计算机网络之网络层


A通过B到各个节点得距离矢量信息如下:

计算机网络之网络层


A通过C到各个节点得距离矢量:并更新下一条的节点

计算机网络之网络层


A通过D到各个节点得距离矢量:并更新下一条的节点

计算机网络之网络层


A通过F到各个节点得距离矢量:并更新下一条的节点

计算机网络之网络层

RIP协议

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zyddxy.html