TCP/IP模型中的网络层

2020-10-19

关键字:OSI参考模型网络层


 

 1、网络层的作用

 

TCP/IP参考模型与OSI参考模型都有网络层,这一层次的重要性从TCP/IP模型没有将它与其它层合并就可见一斑了。网络层的目的是要实现数据包从源端网络到达目的端网络。我们可以将网络通信类比成现实世界中的快递收发过程,网络层的作用就相当于快递公司的物流网络一样是供快件在其上高效运输的。快递公司受发件人的委托,将会尽力保证将包裹安全送达目的城市,网络层亦是如此。

 

OSI模型中的数据链路层是负责数据包的本地通信的,这相当于快递员与收、发件人之间的交互过程,这一范围通常比较小,因此只需要通过很具体的收件人姓名和电话号码等个人信息就能准确通信了,计算机网络中的就是MAC地址。而网络层则相当于包裹的跨区域传输,靠具体的收件人姓名或电话号码是无法运输的,而是要更广泛的省份、城市、城镇等区域码才能有效运输,在计算机网络中的就是IP地址。

 

一句话总结:网络层通常作用于长距离数据包交互。

 

2、网络层协议

 

OSI参考模型描述的其实是一个计算机网络通信协议栈,数据链路层有以太网协议,网络层自然也有其相对应的协议--IP协议。

 

前面提到网络层的目的是实现数据包从源端到目的端的传递,这个IP协议就是这一目的的具体实现。

 

基于IPv4的协议格式如下图所示:

 

关于协议每个字段的含义笔者在另一篇博文上已有简述:https://www.cnblogs.com/chorm590/p/12674282.html ,因此这里就不再浪费篇幅了。

 

 

3、路由

 

路由一词即可作名词使用,亦可当动词看待。

 

作名词使用时,路由表示一个数据包从源端跨越网络到达目的端所传播的路径信息。

 

作动词使用时,路由表示数据包在传输过程中被设备执行的转发操作。

 

换句话说,路由即可以表示从一个地方到另一个地方导航软件上所显示的路径信息,又可以表示驾车过程中遇到具体路口选择要转向哪个方向的动作。

 

 

4、路由器、路由表与路由协议

 

路由器就是执行网络层功能的硬件设备。

 

当一个路由器加入到网络中时,它内部即会维护一张“地址信息--设备端口”的信息映射表,当网络包到达路由器时,就根据这个表来决策这个包该往路由器的哪个口继续传递,这个表就被称为路由表。之所以要引入路由表就是为了节省网络带宽资源。如果没有路由表,路由器只能把所有数据包往所有端口都复制一份,但可能只会有其中一个端口的数据能正确到达目的端,其余端口出去的数据包将会迷失在网络海洋中。这样一来,随着网络规模的不断壮大,网络中将会充斥着大量的无效数据包从而浪费网络资源。

 

路由协议主要有两种:

1、距离矢量路由协议;

2、链路状态路由协议;

 

距离矢量路由协议会使相邻的几个路由器之间相互交换各自知道的去往某个网络的距离和方向,它有点类似于“走一步看一步”的路由模式。

 

链路状态路由协议同样也是相邻路由器之间交换网络信息,但是这个协议里交换的是更加全面的网络信息。这种协议下每个路由器在转发数据包之前都知道该数据包的完整传递路径。

 

两种协议相比,距离矢量路由协议转发效率较高,对内存的消耗也较少,但缺点自然是通信速度可能会偏慢。而链路状态路由协议则正好相反。

 


 

posted @ 2020-10-19 22:50  大窟窿  阅读(548)  评论(0编辑  收藏  举报