日志“路由及路由器工作原理深入解析1”http://user.qzone.qq.com/2756567163/blog/1438322342介绍了“为什么要使用路由器”和“TCP/IP V4 协议网络的分段原理”2个问题,本文将继续对路由的具体工作原理进行解析。
3、路由原理
当IP子网中的一台主机发送IP分组给同一IP子网的另一台主机时,它将直接把IP分组送到网络上,对方就能收到。而要送给不同IP子网上的主机时,它要选择一个能到达目的子网上的路由器,把IP分组送给该路由器,由路由器负责把IP分组送到目的地。如果没有找到这样的路由器,主机就把IP分组送给一个称为 “缺省网关(default gateway)”的路由器上。“缺省网关”是每台主机上的一个配置参数,它是接在同一个网络上的某个路由器端口的IP地址。
路由器转发IP分组时,只根据IP分组目的IP地址的网络号部分,选择合适的端口,把IP分组送出去。同主机一样,路由器也要判定端口所接的是否是目的子网,如果是,就直接把分组通过端口送到网络上,否则,也要选择下一个路由器来传送分组。路由器也有它的缺省网关,用来传送不知道往哪儿送的IP分组。这样,通过路由器把知道如何传送的IP分组正确转发出去,不知道的IP分组送给“缺省网关”路由器,这样一级级地传送,IP分组最终将送到目的地,送不到目的地的IP分组则被网络丢弃了。
目前TCP/IP网络,全部是通过路由器互连起来的,Internet就是成千上万个IP子网通过路由器互连起来的国际性网络。这种网络称为以路由器为基础的网络(router based network),形成了以路由器为节点的“网间网”。在“网间网”中,路由器不仅负责对IP分组的转发,还要负责与别的路由器进行联络,共同确定“网间网”的路由选择和维护路由表。
5、过程实现
现有如下图所示的2个分段网络,我们希望实现201.66.37.0网段中的主机与201.66.39.0网段中的主机的互联,通过路由器该如何实现,答案在路由表中。
4、路由协议
典型的路由选择方式有两种:静态路由和动态路由。
静态路由是在路由器中设置的固定的路由表。除非网络管理员干预,否则静态路由不会发生变化。由于静态路由不能对网络的改变作出反映,一般用于网络规模不大、拓扑结构固定的网络中。静态路由的优点是简单、高效、可靠。在所有的路由中,静态路由优先级最高。当动态路由与静态路由发生冲突时,以静态路由为准。
动态路由是网络中的路由器之间相互通信,传递路由信息,利用收到的路由信息更新路由器表的过程。它能实时地适应网络结构的变化。如果路由更新信息表明发生了网络变化,路由选择软件就会重新计算路由,并发出新的路由更新信息。这些信息通过各个网络,引起各路由器重新启动其路由算法,并更新各自的路由表以动态地反映网络拓扑变化。动态路由适用于网络规模大、网络拓扑复杂的网络。当然,各种动态路由协议会不同程度地占用网络带宽和CPU资源。
静态路由和动态路由有各自的特点和适用范围,因此在网络中动态路由通常作为静态路由的补充。当一个分组在路由器中进行寻径时,路由器首先查找静态路由,如果查到则根据相应的静态路由转发分组;否则再查找动态路由。 5、过程实现
现有如下图所示的2个分段网络,我们希望实现201.66.37.0网段中的主机与201.66.39.0网段中的主机的互联,通过路由器该如何实现,答案在路由表中。
下表示出了该路由器的路由表,该路由表表明所有目的地为网络201.66.37.0内主机(201.66.37.1-201.66.37.254)的数据通过接口eth0(IP地址为201.66.37.74)发送,所有目的地为网络201.66.39.0内主机的数据通过接口eth1(IP地址为 201.66.39.21)发送。标志U表示该路由状态为“up”(即激活状态)。
现在我们希望通过IP地址为201.66.37.254的网关连接到远程网络73.0.0.0,我们可以在路由器中增加一项予以实现。
该项告知所有主机目的地为73.0.0.0内主机的分组通过201.66.37.254传递,标志G“gateway”表示此项把分组导向外部网关,其网络拓扑图如下图所示:
类似的也可以定义通过网关到达特定主机的路由,增加标志H“host”即可,其网络路由表和拓扑图如下图所示。
下面我们再阐述一下路由表的缺省项127.0.0.1和default,第1项是loopback接口,用于主机给自己发送数据,通常用于测试和运行于IP之上但需要本地通信的应用。这是到特定地址127.0.0.1的主机路由(接口lo0是IP协议栈内部的“假”网卡)。第2项十分有意思,为了防止在主机上定义到因特网上每一个可能到达网络的路由,可以定义一个缺省路由,如果在路由表中没有与目的地址相匹配的项,该分组就被送到缺省网关。多数主机简单地通过一个网卡连接到网络,因此只有通过 一个路由器到其它网络,这样在路由表中只有三项:loopback项、本地子网项和缺省项(指向路由器)。 加入以上两项的路由表如下图所示,至此,一个相对完整的网络,就以构建完毕。
本文首先介绍了路由的工作原理,并以一个具体实例的实现深入剖析了路由的实现过程。在这里还需要说明的是路由器中或者说是TCP/IP协议中,还有另外1个重要概念:端口。我们把IP比作屋子,就可以把端口看作门,我们可以在路由器中限制门的开启关闭,也可以指定数据从哪个门进入,从哪个门出去,这都需要端口。“路由及路由器工作原理深入解析3:路由与端口”将对端口的具体工作原理进行解析。
注1:本文在写作过程中查阅了大量网上资料,对引用的出处未能一一注明,特表歉意。
原创性文章,转载请注明出处 http://user.qzone.qq.com/2756567163。
本文首先介绍了路由的工作原理,并以一个具体实例的实现深入剖析了路由的实现过程。在这里还需要说明的是路由器中或者说是TCP/IP协议中,还有另外1个重要概念:端口。我们把IP比作屋子,就可以把端口看作门,我们可以在路由器中限制门的开启关闭,也可以指定数据从哪个门进入,从哪个门出去,这都需要端口。“路由及路由器工作原理深入解析3:路由与端口”将对端口的具体工作原理进行解析。
注1:本文在写作过程中查阅了大量网上资料,对引用的出处未能一一注明,特表歉意。
原创性文章,转载请注明出处 http://user.qzone.qq.com/2756567163。
版权声明:本文为博主原创文章,未经博主允许不得转载。