路由器软硬件体系结构及工作原理 - 商帝国咨询 - 五略商书

路由器软硬件体系结构及工作原理

商帝国咨询头像

阅读 10254 | 分类:文章

路由器软硬件体系结构及工作原理

路由器是一种网络互连设备,它可以连接几个不同的网络,从一个网络接收到的报文,通过路由器的寻径转发,可以到达另一个网络。

一、 计算机网络及网络协议分层
网络的发展史及作用
计算机网络是计算机技术和通信技术的结合。从六十年代末第一个远程分组交换网ARPANET问世,七十年代中期局域网的出现,计算机网络及网络互连技术得到了飞速的发展,现在已经形成了覆盖全球,具有上亿用户的Internet网。网络已经成为信息社会必须的基础设施。
网络给人们带来至少以下几个方面的好处:
★ 可以象使用本地资源一样使用远地资源(远程计算,HOMEPAGE);
★ 可以共享程序、数据和信息资源(WEB Server,网上图书馆);
★ 通信与合作(e-mail);
网络正在改变现代人的生活方式(电子商务,BBS等),人们的生活也将越来越离不开网络。现代网络技术正向集数据、声音、图象等能提供综合服务的方向发展,为人们提供越来越强大和方便的服务。
网络的分类:
按拓扑结构可分为:
总线、星型、树型、环型、全连接、网型等。
按分布的地理范围的大小可分为:
局域网、城域网、广域网、卫星网等(定义可能有重叠)。
按传输介质及所用的协议又可分为:
以太网、令牌环网,光纤网、ISDN网,帧中继网、分组网等。

那么,各种各样的网络到底是怎样互连起来的呢?提到网络的互连,不能不提到网络协议分层模型。
计算机与计算机之间要相互通信,就必须“听”的懂对方的“语言”,这种语言是什么呢?就是网络协议,计算机必须运行相同的协议,才能相互通信。由于网络的种类繁多,网络协议自然也各式各样,但是,大多数网络协议的设计都有一个共同的特点——协议分层。
协议分层大大简化了网络协议的复杂性,这实际也是自顶向下,逐步细化的程序设计方法的很好的应用。网络协议按功能组织成一系列“层”,每一层建筑在它的下层之上。分成的层数,每一层的名字、功能、都可以不一样,但是每一层的目的都是为上层提供一定的服务,屏蔽低层的细节。

图1-1:Layers, protocols, and interfaces.

在七十年代末,国际标准化组织ISO提出了开放系统互连参考模型(OSI/RM),将协议的分层从上到下划分为应用层、表示层、会话层、传输层、网络层、链路层、物理层七层。不过,当今世界上最流行的TCP/IP协议的层次却不是按OSI参考模型来划分的,只跟它有一种大致的对应关系。


图1-2:TCP/IP协议分层模型

现在OSI模型已经让位于TCP/IP分层模型,TCP/IP分层模型已经成为一种事实上的标准了。

在分层模型中,对等是一个很重要的概念,因为只有对等层才能相互通讯,一方在某层上的协议是什么,对方在同一层次上也必须是什么协议。理解了对等的含义,则很容易把网络互连起来:
如果两个网络在物理层就相同,使用中继器就可以连起来;
如果两个网络物理层不同,链路层相同,使用桥接器就可以连起来;
如果两个网络物理层、链路层都不同,而网络层相同,使用路由器就可以互连;
如果两个网络协议完全不同,使用协议转换器(网关)也可以互连。
上边提到的设备分别是:
·中继器(Repeater):工作在物理层,在电缆之间逐个复制二进制位(bit);
·桥接器(Bridge):工作在链路层,在LAN之间存储和转发帧(frame);
·路由器(Router):工作在网络层,在不同的网络之间存储和转发分组(packet)。
·协议转换器(Gateway):工作在三层以上,实现不同协议的转换。
Internet中路由器也叫网关(gateway)。


二、什么是路由器,路由器必须具备哪些条件?
路由器是一种用于网络互连的计算机设备,它工作在OSI参考模型的第三层(网络层),为不同的网络之间报文寻径并存储转发。
目前路由器技术也在不断的发展。具有三层交换功能的路由器已经出现,三层交换路由器主要是基于ATM技术和软件固化技术,将原来由软件实现的协议解析及路由功能大部分交给硬件实现,大大提高了路由器的处理能力和吞吐率。
我们现在所说的路由器是传统意义上的路由器,及软件路由器。
作为路由器,必须具备:
·两个或两个以上的接口(用于连接不同的网络)
·协议至少实现到网络层(只有理解网络层协议才能与网络层通讯)
·至少支持两种以上的子网协议(异种网)
·具有存储、转发、寻径功能。
·一组路由协议

三、路由器的作用
·异种网络互连
主要是具有异种子网协议的网络互连。子网是指用来承载网络层数据报的网络。
·子网协议转换
·速率适配
不同接口具有不同的速率,路由器可以利用自己
·隔离网络,防止广播风暴,网络安全(防火墙)
链路层的报文不会透过路由器,网络层的广播报文也不会透过路由器。
·路由(寻径)
路由表建立、刷新、查找
·分片与重组
接口的MTU不同时,超过接口的MTU的报文会被路由器分片,只有到达目的地的报文才会被重组
·备份、流控等

四、IP网络编址技术
标准IP地址
  TCP/IP用32位地址来标识网络上的计算机及网络本身。IP地址标识计算机与网络的连接,而不是计算机本身,这是一个重要的区别。随着计算机在网络上的位置改变,IP地址也必须随之改变。IP地址是一组数字,用户在自己的工作站或终端设备上也可以见到,例如127. 40. 8. 72,它唯一地用来标识设备。
  IP(或Internet)地址由网络信息中心(NIC)来分配。尽管当网络不与Internet联网时,该网络也可以自己决定它的编号。但对所有Internet访问,都必须用NIC注册的IP地址。
  IP地址有四种格式,可根据网络的规模选择。图3-1列出了这四种格式,从类A到类D,每种格式都是由其前面几位决定的。类A只有一位,类D有四位,看前3位就可以分辩其类型,但事实上,只需看前2位就能作出判断,因为类D是很少见的。
  类A地址格式主要用于大型网络。在这种情况下,本地地址(经常为主机地址)需要用24位。网络地址保持在7位,这使它能够标识的网络数目受到限制。
  类B地址格式用于中型规模的网络,其本地或主机地址为16位,网络地址为14位。类C的本地或主机地址仅为8位,设备最多只能到256台,而网络地址为21位。最后,类D网络用于多址发送用途。IP地址每一部分的长度都是经过精心设计的,在分配网络地址和本地地址时,提供了最大的灵活性。
IP地址有四个八位组,共32位。为方便起见,常把这32位分成若干段表示,因此IP地址格式可作为network. local. local. local(类A)到network. network. network. local(类C)。常用IP地址的十进制形式来书写,而不是长长的二进制字符串。这就是网络用户习惯于看到的所熟悉的主机地址号,比如147. 10. 13.28。当然,实际地址是一组1和0。IP地址的十进制表示称为“点分表示”。


图3-1 网络地址类型


网间网特殊地址形式
  网间网地址除了一般地标识一台主机外,还有几种具有特殊意义的地址形式。
1、广播地址
  TCP/IP规定,主机号各位全为“1”的网间网地址用于广播之用,叫作广播地址。所谓广播,指同时向网上所有主机发送报文。我们知道,许多物理网络本身便是广播型的(如以太网),这种网络上的广播跟一般的一对一的传输一样有效。也有许多物理网络是点到点型的,如Cypress网,这种网络上的广播必须由软件实现,比单个传输效率低许多。有些网络干脆不支持广播方式,非要广播不可时,只能逐台主机传送。幸运的是,不管物理网络的特性如何,网间网是支持广播传输的。

2、有限广播
  前面谈到的广播地址包含一个有效的网络号和主机号,技术上称为直接广播(directed broadcasting)地址。在网间网上的任何一点均可向其他任何网络进行直接广播,但直接广播有一个缺点,就是必须要知道信宿网络的网络号。
  有时,需要在本网内部广播,但又不知道本网网络号,怎么办呢?TCP/IP规定,32比特全为“1”的网间网地址用于本网广播,该地址叫作有限广播地址(Limited broadcast address)。主机在启动过程中,往往是不知道本网的网间网地址(即本网网络号)的,这时候若想向本网广播,只能采用有限广播地址。

3、“0”地址
  TCP/IP协议规定,各位全为“0”的网络号被解释成“本”网络。若主机试图在本网内通信而又不知道本网网络号,可以利用“0”地址。

4、回送地址(Loopback)
  A类网络地址127是一个保留地址,用于网络软件测试以及本机进程间通信,叫作回送地址(Loopback address)。无论什么程序,一旦使用回送地址发送数据,协议软件立即返回之,不进行任何网络传输。TCP/IP协议规定:
Œ含网络号127的分组不能出现在任何网络上;
主机和网关不能为该地址广播任何寻径信息。

根据目的IP地址,网络可以判定是否需通过某个网关将数据转发出去。显然,如果目的网络地址与本网的网络地址相同(路由到本地网络设备,称为直接主机),那么,不需网关作转发。但如果目的网络地址与本网网络地址不同,则需要路由到网关而离开本地网络(间接主机)。网关如果接收到要传输到另一个网络上的数据,必须根据数据中的目的IP地址和提供路由信息的路由表决定如何路由。

子网编址
1、子网编址技术
为了更有效地利用IP地址,进一步引入了子网的概念,从而通过掩码将IP地址分为:网络号、子网号和主机号三部分,如图6-2。



图3-2  子网编址

图3-3就是一个子网编址的例子。



图3-3:子网编址技术示例

  图中四个物理网络(子网)通过网关G1连入网间网,它们占用一个相同的B类网络地址129.9.0.0。从网间网其余部分传往网络号129.9的所有数据报均通过网关G1再通过主机号部分的高位字节将数据报传往不同网关,从而进入不同子网。显然,上述例子是把主机号部分进一步分层,用高位字节标识子网,用低位字节标识子网的主机。
  一般地,32位的IP地址分为两部分,即网络号和主机号。子网编址技术将主机号部分进一步划分为“子网号”部分和“主机号”部分,如图6-4所示。


网络号 子网号 主机号

网络号 主机号

图3-4:子网编址模式

  其中“子网号”用于标识同一IP网络地址下的不同物理网络(子网)。可见,在原来的IP地址模式中,网间网部分就标识一个独立的物理网络,引入子网模式后,网间网部分加子网络号才能全局唯一地标识一物理网络。
  一个子网(或物理网络)选定其子网地址模式后,如何方便有效地将子网模式表达出来?IP协议标准规定:每一个使用子网的网点都选择一个子32位的位模式,若位模式中的某位置1则对应IP地址的某位为网络地址(包括网络号和子网号)中的一位;若位模式中的某位置0,则对应IP地址中的某位为主机地址中的一位。比如位模式:
11111111 11111111 11111111 00000000
中,前三个字节全1,代表对应IP地址中最高三字节为网络地址;后一个字节全0,代表对应IP地址中最后一字节为该网络中的主机地址。这种位模式叫作子网模(subnet mask)。一般地,子网模中的“1”位对应IP地址中的网络部分。
IP协议关于子网模的定义提供一种有趣的灵活性,允许子网模中的“0”和“1”位不连续。比如,按照IP标准,子网模:
11111111 11111111 0010100 00110000
也是成立的。这样的子网模给分配主机地址和理解寻径表都带来一定困难,因此推荐各网点还是采用连续方式的子网模为好,而且对共享同一IP网络地址的所有物理网络使用相同的子网模。
子网模通常采用点分表示法。
这种方法常用于表示IP地址,也可用于表示子网模,尤其适用于表示以字节为边界的子网模。比如B类地址子网掩码:
255.255.255.0
表示IP地址的前三个字节标识物理网络地址,第四字节标识主机地址。
  特别要强调的是,子网模给出的是整个IP地址的位模式,而不仅仅是IP地址中子网部分的位模式,因此子网模与IP地址按位与以后,得出的是另一个完整的IP地址(物理网络IP地址),而不仅仅是子网号。
2、子网寻径方法
  引入子网编址以后,显然会影响到标准的IP寻径算法,因此有必要对寻径算法进行修改,修改后的寻径算法叫子网寻径算法。
  首先要修改的是寻径表表目。标准的寻径表表目是一个二维组(信宿网络地址,下一驿站地址),其中不携带子网信息,不可能用于子网寻径。
  标准寻径算法从IP地址的前两个比特可以判断出地址类型,从而获得关于地址分层的信息,知道地址的哪一部分对应于网络号,哪一部分对应于主机号。而在子网编址模式下,仅凭地址类别提取地址的网络号和主机号是不可能的,因此要在寻径表的每一表目中加入子网模,于是子网寻径表表目变为三维组:
(子网模,信宿网络地址,下一驿站地址)
寻径时,将数据报中的信宿地址取出,与寻径表表目中的“子网模”逐位与(一共32位),结果再与表目中“信宿网络地址”比较,假如相同,表明寻径成功,IP数据报沿“下一驿站地址”传送出去。

五、路由算法、路由协议、寻径
路由器依据路由表来为报文寻径,路由表是怎样建立和更新维护的?
路由表由路由协议建立和维护。路由协议的设计则是依据某种路由算法。

路由算法的设计
一种路由算法设计的好与不好,一般通过以下几个方面来衡量:
1、 选径是否是最佳的。这取决于路由算法以什么参数来衡量路由,如时延、距离、中间网关数等。
2、 简洁性。路由算法应设计的尽可能简洁,因为复杂的算法会增加机器的处理开销和占用的资源,实现的难度也会增大。
3、 强壮性。路由算法必须具有鲁棒性,也就是说,它必须在非常和不可预见的环境中仍能正常工作,例如在硬件出现问题、高负载等情况下。好的路由算法会经的起各种网络环境的考验。
4、 快速收敛性。收敛是一个所有路由器就最优路径达成一致的过程。当网络发生如路径断掉或不可用时,路由器之间必须交换路径更新信息,路径刷新信息在网络内传播,最终使所有路由器更新各自的路由表。路由算法如果收敛的慢,就会引起路径循环或网络消耗。
5、 灵活性,弹性。路由算法能否适应网络环境的各种变化,例如网络带宽,路由器的缓存,网络时延等发生变化,路由算法能否根据这些变化做出调整。
路由算法的划分
1、 静态和动态的
2、 单路径还是多路径
3、 平面的还是分层的
4、 主机智能还是路由器智能
5、 域内还是域间
6、 基于连接状态还是距离向量

决定最佳路径的因素:
路由表包含的信息用来交换路由信息和选择最佳路由。路由算法如何决定最佳路由呢?
路由算法使用了许多不同的权决定最佳路由。成熟的路由算法根据多种权选择路由,组合成一种(混合)权。通常采用的权如下:
l 路径距离
l 可靠性
l 时延
l 带宽
l 承载量
l 通信费用

常见路由协议
RIP协议,OSPF协议,BGP协议。
六、路由器的硬件结构
路由器的硬件结构大致如下:

图6-1 路由器硬件结构原理图
路由器实际上是一台专用计算机:它具有自己的处理器、总线、存储器、外部接口等。路由器的软件固化在称为FLASH的E2PROM中,运行时加载到DRAM中,在DRAM中运行,接口模块用来连接不同的网络,运行相应的网络驱动程序和协议。

七、路由器的软件结构
路由器的软件模块结构如下图所示:

RIP SAP SNMP,Telnet,RIP2,OSPF 配置管理模块
SOCKET
TCP UDP
IPX ICMP IP
ARP/invARP
防火墙
通明桥 PPP/FrameRelay/X.25/HDLC 按需拨号

802.2 同异步串口驱动 At命令
Ethernet+802.3
pSOS/VOS
物 理 层 硬 件 接 口 及 驱 动

图7-1 路由器软件结构图
八、路由器的应用(以QuidwayTM R2501为例)

图8-1 QuidwayTM R2501接口示意图
  
下面是几个QuidwayTM R2501的典型应用例示:
² 局域网通过DDN互联,通过模拟电话线路或ISDN实现备份:




² 通过模拟电话线路或ISDN拨号线路实现局域网互联:

² 拨号线路与DDN随意搭配任意组合,应用灵活:



² 路由器的管理和配置可以通过远地完成,维护灵活、方便、节省。

  

留言区(共0条)

暂无留言,快来抢占沙发~
作者声明:非原创
平台声明:文章及评论仅代表作者本人观点,五略商书系信息发布平台,仅提供信息存储空间服务,如有侵权,请联系13521509118。转载请注明作者和出处:转自五略商书m.shangdiguo.com,作者商帝国咨询!