收藏 分销(赏)

路由器原理及常用的路由协议路由算法.doc

上传人:精**** 文档编号:3367651 上传时间:2024-07-03 格式:DOC 页数:26 大小:157.54KB
下载 相关 举报
路由器原理及常用的路由协议路由算法.doc_第1页
第1页 / 共26页
路由器原理及常用的路由协议路由算法.doc_第2页
第2页 / 共26页
路由器原理及常用的路由协议路由算法.doc_第3页
第3页 / 共26页
路由器原理及常用的路由协议路由算法.doc_第4页
第4页 / 共26页
路由器原理及常用的路由协议路由算法.doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

1、路由器原理及常用的路由协议、路由算法 近十年来,随着计算机网络规模的不断扩大,大型互联网络(如Internet)的迅猛发展,路由技术在网络技术中已逐渐成为关键部分,路由器也随之成为最重要的网络设备。用户的需求推动着路由技术的发展和路由器的普及,人们已经不满足于仅在本地网络上共享信息,而希望最大限度地运用全球各个地区、各种类型的网络资源。而在目前的情况下,任何一个有一定规模的计算机网络(如公司网、校园网、智能大厦等),无论采用的是快速以大网技术、FDDI技术,还是ATM技术,都离不开路由器,否则就无法正常运作和管理。 1 网络互连 把自己的网络同其它的网络互连起来,从网络中获取更多的信息和向网络

2、发布自己的消息,是网络互连的最重要的动力。网络的互连有多种方式,其中使用最多的是网桥互连和路由器互连。 1.1 网桥互连的网络 网桥工作在OSI模型中的第二层,即链路层。完毕数据帧(frame)的转发,重要目的是在连接的网络间提供透明的通信。网桥的转发是依据数据帧中的源地址和目的地址来判断一个帧是否应转发和转发到哪个端口。帧中的地址称为“MAC”地址或“硬件”地址,一般就是网卡所带的地址。 网桥的作用是把两个或多个网络互连起来,提供透明的通信。网络上的设备看不到网桥的存在,设备之间的通信就如同在一个网上同样方便。由于网桥是在数据帧上进行转发的,因此只能连接相同或相似的网络(相同或相似结构的数据

3、帧),如以太网之间、以太网与令牌环(token ring)之间的互连,对于不同类型的网络(数据帧结构不同),如以太网与X.25之间,网桥就无能为力了。 网桥扩大了网络的规模,提高了网络的性能,给网络应用带来了方便,在以前的网络中,网桥的应用较为广泛。但网桥互连也带来了不少问题:一个是广播风暴,网桥不阻挡网络中广播消息,当网络的规模较大时(几个网桥,多个以太网段),有也许引起广播风暴(broadcasting storm),导致整个网络全被广播信息充满,直至完全瘫痪。第二个问题是,当与外部网络互连时,网桥会把内部和外部网络合二为一,成为一个网,双方都自动向对方完全开放自己的网络资源。这种互连方式

4、在与外部网络互连时显然是难以接受的。问题的重要根源是网桥只是最大限度地把网络沟通,而不管传送的信息是什么。 1.2 路由器互连网络 路由器互连与网络的协议有关,我们讨论限于TCPIP网络的情况。 路由器工作在OSI模型中的第三层,即网络层。路由器运用网络层定义的“逻辑”上的网络地址(即IP地址)来区别不同的网络,实现网络的互连和隔离,保持各个网络的独立性。路由器不转发广播消息,而把广播消息限制在各自的网络内部。发送到其他网络的数据茵先被送到路由器,再由路由器转发出去。 IP路由器只转发IP分组,把其余的部分挡在网内(涉及广播),从而保持各个网络具有相对的独立性,这样可以组成具有许多网络(子网)

5、互连的大型的网络。由于是在网络层的互连,路由器可方便地连接不同类型的网络,只要网络层运营的是IP协议,通过路由器就可互连起来。 网络中的设备用它们的网络地址(TCPIP网络中为IP地址)互相通信。IP地址是与硬件地址无关的“逻辑”地址。路由器只根据IP地址来转发数据。IP地址的结构有两部分,一部分定义网络号,另一部分定义网络内的主机号。目前,在Internet网络中采用子网掩码来拟定IP地址中网络地址和主机地址。子网掩码与IP地址同样也是32bit,并且两者是一一相应的,并规定,子网掩码中数字为“1”所相应的IP地址中的部分为网络号,为“0”所相应的则为主机号。网络号和主机号合起来,才构成一个

6、完整的IP地址。同一个网络中的主机IP地址,其网络号必须是相同的,这个网络称为IP子网。 通信只能在具有相同网络号的IP地址之间进行,要与其它IP子网的主机进行通信,则必须通过同一网络上的某个路由器或网关(gateway)出去。不同网络号的IP地址不能直接通信,即使它们接在一起,也不能通信。 路由器有多个端口,用于连接多个IP子网。每个端口的IP地址的网络号规定与所连接的IP子网的网络号相同。不同的端口为不同的网络号,相应不同的IP子网,这样才干使各子网中的主机通过自己子网的IP地址把规定出去的IP分组送到路由器上。1.3.1、路由与桥接 路由相对于 2 层的桥接 / 互换是高层的概念,不涉及

7、网络的物理细节。在可路由的网络中,每台主机都有同样的网络层地址格式(如 IP 地址),而无论它是运营在以太网、令牌环、 FDDI 还是广域网。网络层地址通常由两部分构成:网络地址和主机地址。 网桥只能连接数据链路层相同(或类似)的网络,路由器则不同,它可以连接任意两种网络,只要主机使用的是相同的网络层协议。1.3.2路由器连接网络层与数据链路层 网络层下面是数据链路层,为了它们可以互通,需要“粘合”协议。 ARP (地址解析协议)用于把网络层 (3 层 ) 地址映射到数据链路层 (2 层 ) 地址, RARP( 反向地址解析协议 ) 则反之。 虽然 ARP 的定义与网络层协议无关,但它通常用于

8、解析 IP 地址;最常见的数据链路层是以太网。因此下面的 ARP 和 RARP 的例子基于 IP 和以太网,但要注意这些概念对其他协议也是同样的。 1 、地址解析协议 网络层地址是由网络管理员定义的抽象映射,它不去关心下层是哪种数据链路层协议。然而,网络接口只能根据 2 层地址来互相通信, 2 层地址通过 ARP 从 3 层地址得到。 并不是发送每个数据包都需要进行 ARP 请求,回应被缓存在本地的 ARP 表中,这样就减少了网络中的 ARP 包。 ARP 的维护比较容易,是一个比较简朴的协议。 2 、简介 假如接口 A 想给接口 B 发送数据,并且 A 只知道 B 的 IP 地址,它必须一方

9、面查找 B 的物理地址,它发送一个具有 B 的 IP 地址的 ARP 广播请求 B 的物理地址,接口 B 收到该广播后,向 A 回应其物理地址。 注意,虽然所有接口都收到了信息,但只有 B 回应当请求,这保证了回应的对的且避免了过期的信息。要注意的是,当 A 和 B 不在同一网段时, A 只向下一跳的路由器发送 ARP 请求,而不是直接向 B 发送。 下图为接受到 ARP 分组后的解决,注意发送者的 对被存到接受 ARP 请求的主机的本地 ARP 表中,一般 A 想与 B 通信时, B 也许也需要与 A 通信。 2 路由原理 2.1 IP 地址 在可路由的网络层协议中,协议地址必须具有两部分信

10、息:网络地址和主机地址。存贮这种信息最明显的方法是用两个分离的域,这样我们必须考虑到两个域的最大长度,有些协议 ( 如 IPX) 就是这样的,它在小型和中型的网络里可以工作的很好。 另一种方案是减少主机地址域的长度,如 24 位网络地址、 8 位主机地址,这样就有了较多的网段,但每个网段内的主机数目很少。这样一来,对于多于 256 个主机的网络,就必须分派多个网段,其问题是很多的网络给路由器导致了难以忍受的承担。 IP 把网络地址和主机地址一起包装在一个 32 位的域里,有时主机地址部分很短,有时很长,这样可以有效运用地址空间,减少 IP 地址的长度,并且网络数目不算多。有两种将主机地址分离出

11、来的方法:基于类的地址和无类别的地址。 1 、主机和网关 主机和网关的区别常产生混淆,这是由于主机意义的转变。在 RFC 中 (1122/3 和 1009) 中定义为: 主机是连接到一个或多个网络的设备,它可以向任何一个网络发送和从其接受数据,但它从不把数据从一个网络传向另一个。 网关是连接到多于一个网络的设备,它选择性的把数据从一个网络转发到其它网络。 换句话说,过去主机和网关的概念被人工地区分开来,那时计算机没有足够的能力同时用作主机和网关。主机是用户工作的计算机,或是文献服务器等。现代的计算机的能力足以同时担当这两种角色,因此,现代的主机定义应当如此: 主机是连接到一个或多个网络的设备,

12、它可以向任何一个网络发送和从其接受数据。它也可以作为网关,但这不是其唯一的目的。 路由器是专用的网关,其硬件通过特殊的设计使其能以极小的延迟转发大量的数据。然而,网关也可以是有多个网卡的标准的计算机,其操作系统的网络层有能力转发数据。由于专用的路由硬件较便宜,计算机用作网关已经很少见了,在只有一个拨号连接的小站点里,还也许使用计算机作为非专用的网关。 2 、基于类的地址 最初设计 IP 时,地址根据第一个字节被提成几类: 0: 保存 1-126: A 类 ( 网络地址 :1 字节,主机地址 :3 字节 ) 127: 保存 128-191: B 类 ( 网络地址 :2 字节,主机地址 :2 字节

13、 ) 192-223: C 类 ( 网络地址 :3 字节,主机地址 :1 字节 ) 224-255: 保存 3 、子网划分 虽然基于类的地址系统对因特网服务提供商来说工作得很好,但它不能在一个网络内部做任何路由,其目的是使用第二层 ( 桥接 / 互换 ) 来导引网络中的数据。在大型的 A 类网络中,这就成了个特殊的问题,由于在大型网络中仅使用桥接 / 互换使其非常难以管理。在逻辑上其解决办法是把大网络分割成若干小的网络,但在基于类的地址系统中这是不也许的。为了解决这个问题,出现了一个新的域:子网掩码。子网掩码指出地址中哪些部分是网络地址,哪些是主机地址。在子网掩码中,二进制 1 表达网络地址位

14、,二进制 0 表达主机地址位。传统的各类地址的子网掩码为: A 类: 255.0.0.0 B 类: 255.255.0.0 C 类: 255.255.255.0 假如想把一个 B 类网络的地址用作 C 类大小的地址,可以使用掩码 255.255.255.0 。 用较长的子网掩码把一个网络提成多个网络就叫做划分子网。要注意的是,一些旧软件不支持子网,由于它们不理解子网掩码。例如 UNIX 的 routed 路由守护进程通常使用的路由协议是版本 1 的 RIP ,它是在子网掩码出现前设计的。 上面只介绍了三种子网掩码: 255.0.0.0 、 255.255.0.0 和 255.255.255.0

15、 ,它们是字节对齐的子网掩码。但是也可以在字节中间对其进行划分,这里不进行具体讲解,请参照相关的 TCP/IP 书籍。 子网使我们可以拥有新的规模的网络,涉及很小的用于点到点连接的网络(如掩码 255.255.255.252 , 30 位的网络地址, 2 位的主机地址:两个主机的子网),或中型网络(如掩码 255.255.240.0 , 20 位网络地址, 12 位主机地址: 4094 个主机的子网)。 注意 DNS 被设计为只允许字节对齐的 IP 网络 ( 在 in-addr.arpa. 域中 ) 。 4 、超网 (supernetting) 超网是与子网类似的概念 -IP 地址根据子网掩码

16、被分为独立的网络地址和主机地址。但是,与子网把大网络提成若干小网络相反,它是把一些小网络组合成一个大网络 - 超网。 假设现在有 16 个 C 类网络,从 201.66.32.0 到 201.66.47.0 ,它们可以用子网掩码 255.255.240.0 统一表达为网络 201.66.32.0 。但是,并不是任意的地址组都可以这样做,例如 16 个 C 类网络 201.66.71.0 到 201.66.86.0 就不能形成一个统一的网络。但是这其实没关系,只要策略得当,总能找到合适的一组地址的。 5 、可变长子网掩码 (VLSM) 假如你想把你的网络提成多个不同大小的子网,可以使用可变长子网

17、掩码,每个子网可以使用不同长度的子网掩码。例如:假如你按部门划分网络,一些网络的掩码可认为 255.255.255.0( 多数部门 ) ,其它的可为 255.255.252.0( 较大的部门 ) 。 6 、无类别地址 (CIDR) 因特网上的主机数量增长超过了原先的设想,虽然还远没达成 232 ,但地址已经出现匮乏。 1993 年发表的 RFC1519- 无类别域间路由 CIDR(Classless Inter-Domain Routing)- 是一个尝试解决此问题的方法。 CIDR 试图延长 IPv4 的寿命,与 128 位地址的 IPv6 不同,它并不能最终解决地址空间的耗尽,但 IPv6

18、 的实现是个庞大的任务,因特网目前还没有做好准备。 CIDR 给了我们缓冲的准备时间。 基于类的地址系统工作的不错,它在有效的地址使用和少量的网络数目间做出了较好的折衷。但是随着因特网意想不到的成长出现了两个重要的问题: 已分派的网络数目的增长使路由表大得难以管理,相称限度上减少了路由器的解决速度。 僵化的地址分派方案使很多地址被浪费,特别是 B 类地址十分匮乏。 为了解决第二个问题,可以分派多个较小的网络,例如,用多个 C 类网络而不是一个 B 类网络。虽然这样可以很有效地分派地址,但是更加剧了路由表的膨胀(第一个问题)。 在 CIDR 中,地址根据网络拓扑来分派。连续的一组网络地址可以被分

19、派给一个服务提供商,使整组地址作为一个网络地址(很也许使用超网技术)。例如:一个服务提供商被分派以 256 个 C 类地址,从 213.79.0.0 到 213.79.255.0 ,服务提供商给每个用户分派一个 C 类地址,但服务提供商外部的路由表只通过一个表项 - 掩码为 255.255.0.0 的网络 213.79.0.0- 来分辨这些路由。 这种方法明显减少了路由表的增长, CIDR RFC 的作者估计,假如 90% 的服务提供商使用了 CIDR ,路由表将以每 3 年 54% 的速度增长,而假如没有使用 CIDR ,则增长速度为 776% 。假如可以重新组织现有的地址,则因特网骨干上的

20、路由器广播的路由数量将大大减少。但这实际是不可行的,由于将带来巨大的管理承担。2.2、路由表 假如一个主机有多个网络接口,当向一个特定的IP地址发送分组时,它如何决定使用哪个接口呢?答案就在路由表中。来看下面的例子: 目的 子网掩码 网关 标志 接口 201.66.37.0 255.255.255.0 201.66.37.74 U eth0 201.66.39.0 255.255.255.0 201.66.39.21 U eth1 主机将所有目的地为网络201.66.37.0内主机(201.66.37.1-201.66.37.254)的数据通过接口eth0(IP地址为201.66.37.74)

21、发送,所有目的地为网络201.66.39.0内主机的数据通过接口eth1(IP地址为201.66.39.21)发送。标志U表达该路由状态为“up”(即激活状态)。对于直接连接的网络,一些软件并不象上例中同样给出接口的IP地址,而只列出接口。 此例只涉及了直接连接的主机,那么目的主机在远程网络中如何呢?假如你通过IP地址为201.66.37.254的网关连接到网络73.0.0.0,那么你可以在路由表中增长这样一项: 目的 掩码 网关 标志 接口 73.0.0.0 255.0.0.0 201.66.37.254 UG eth0 此项告诉主机所有目的地为网络73.0.0.0内主机的分组通过201.6

22、6.37.254路由过去。标志G(gateway)表达此项把分组导向外部网关。类似的,也可以定义通过网关到达特定主机的路由,增长标志H(host): 目的 掩码 网关 标志 接口 91.32.74.21 255.255.255.255 201.66.37.254 UGH eth0 下面是路由表的基础,除了特殊表项之外: 目的 掩码 网关 标志 接口 127.0.0.1 255.255.255.255 127.0.0.1 UH lo0 default 0.0.0.0 201.66.37.254 UG eth1 第一项是loopback接口,用于主机给自己发送数据,通常用于测试和运营于IP之上但需

23、要本地通信的应用。这是到特定地址127.0.0.1的主机路由(接口lo0是IP协议栈内部的“假”网卡)。第二项十分故意思,为了防止在主机上定义到因特网上每一个也许到达网络的路由,可以定义一个缺省路由,假如在路由表中没有与目的地址相匹配的项,该分组就被送到缺省网关。多数主机简朴地通过一个网卡连接到网络,因此只有通过一个路由器到其它网络,这样在路由表中只有三项:loopback项、本地子网项和缺省项(指向路由器)。 2、重叠路由 假设在路由表中有下列重叠项: 目的 掩码 网关 标志 接口 1.2.3.4 255.255.255.255 201.66.37.253 UGH eth0 1.2.3.0

24、255.255.255.0 201.66.37.254 UG eth0 1.2.0.0 255.255.0.0 201.66.37.253 UG eth1 default 0.0.0.0 201.66.39.254 UG eth1 之所以说这些路由重叠是由于这四个路由都具有地址1.2.3.4,假如向1.2.3.4发送数据,会选择哪条路由呢?在这种情况下,会选择第一条路由,通过网关201.66.37.253。原则是选择具有最长(最精确)的子网掩码。类似的,发往1.2.3.5的数据选择第二条路由。 注意:这条原则只合用于间接路由(通过网关)。把两个接口定义在同一子网在很多软件实现上是非法的。例如下

25、面的设立通常是非法的(但是有些软件将尝试在两个接口进行负载平衡): 接口 IP地址 子网掩码 eth0 201.66.37.1 255.255.255.0 eth1 201.66.37.2 255.255.255.0 对于重叠路由的策略是十分有用的,它允许缺省路由作为目的为0.0.0.0、子网掩码为0.0.0.0的路由进行工作,而不需要作为路由软件的一个特殊情况来实现。 回头来看看CIDR,仍使用上面的例子:一个服务提供商被赋予256个C类网络,从213.79.0.0到213.79.255.0。该服务提供商外部的路由表只以一个表项就了解了所有这些路由:213.79.0.0,子网掩码为255.2

26、55.0.0。假设一个用户移到了另一个服务提供商,他拥有网络地址213.79.61.0,现在他是否必须从新的服务提供商处取得新的网络地址呢?假如是,意味着他必须重新配置每台主机的IP地址,改变DNS设立,等等。幸运的是,解决办法很简朴,本来的服务提供商保持路由213.79.0.0(子网掩码为255.255.0.0),新的服务提供商则广播路由213.79.61.0(子网掩码为255.255.255.0),由于新路由的子网掩码较长,它将覆盖本来的路由。 3、静态路由 回头看看我们已建立的路由表,已有了六个表项: 目的 掩码 网关 标志 接口 127.0.0.1 255.255.255.255 12

27、7.0.0.1 UH lo0 201.66.37.0 255.255.255.0 201.66.37.74 U eth0 201.66.39.0 255.255.255.0 201.66.39.21 U eth1 default 0.0.0.0 201.66.39.254 UG eth1 73.0.0.0 255.0.0.0 201.66.37.254 UG eth0 91.32.74.21 255.255.255.255 201.66.37.254 UGH eth0 这些表项分别是怎么得到的呢?第一个是当路由表初始化时由路由软件加入的,第二、三个是当网卡绑定IP地址时自动创建的,其余三个必须

28、手动加入,在UNIX系统中,这是通过命令route来做的,可以由用户手工执行,也可以通过rc脚本在启动时执行。上述方法涉及的是静态路由,通常在启动时创建,并且没有手工干预的话将不再改变。当IP子网中的一台主机发送IP分组给同一IP子网的另一台主机时,它将直接把IP分组送到网络上,对方就能收到。而要送给不同IP于网上的主机时,它要选择一个能到达目的子网上的路由器,把IP分组送给该路由器,由路由器负责把IP分组送到目的地。假如没有找到这样的路由器,主机就把IP分组送给一个称为“缺省网关(default gateway)”的路由器上。“缺省网关”是每台主机上的一个配置参数,它是接在同一个网络上的某个

29、路由器端口的IP地址。 路由器转发IP分组时,只根据IP分组目的IP地址的网络号部分,选择合适的端口,把IP分组送出去。同主机同样,路由器也要鉴定端口所接的是否是目的子网,假如是,就直接把分组通过端口送到网络上,否则,也要选择下一个路由器来传送分组。路由器也有它的缺省网关,用来传送不知道往哪儿送的IP分组。这样,通过路由器把知道如何传送的IP分组对的转发出去,不知道的IP分组送给“缺省网关”路由器,这样一级级地传送,IP分组最终将送到目的地,送不到目的地的IP分组则被网络丢弃了。 目前TCPIP网络,所有是通过路由器互连起来的,Internet就是成千上万个IP子网通过路由器互连起来的国际性网

30、络。这种网络称为以路由器为基础的网络(router based network),形成了以路由器为节点的“网间网”。在“网间网”中,路由器不仅负责对IP分组的转发,还要负责与别的路由器进行联络,共同拟定“网间网”的路由选择和维护路由表。 路由动作涉及两项基本内容:寻径和转发。寻径即鉴定到达目的地的最佳途径,由路由选择算法来实现。由于涉及到不同的路由选择协议和路由选择算法,要相对复杂一些。为了鉴定最佳途径,路由选择算法必须启动并维护包含路由信息的路由表,其中路由信息依赖于所用的路由选择算法而不尽相同。路由选择算法将收集到的不同信息填入路由表中,根据路由表可将目的网络与下一站(nexthop)的关

31、系告诉路由器。路由器间互通信息进行路由更新,更新维护路由表使之对的反映网络的拓扑变化,并由路由器根据量度来决定最佳途径。这就是路由选择协议(routing protocol),例如路由信息协议(RIP)、开放式最短途径优先协议(OSPF)和边界网关协议(BGP)等。 转发即沿寻径好的最佳途径传送信息分组。路由器一方面在路由表中查找,判明是否知道如何将分组发送到下一个站点(路由器或主机),假如路由器不知道如何发送分组,通常将该分组丢弃;否则就根据路由表的相应表项将分组发送到下一个站点,假如目的网络直接与路由器相连,路由器就把分组直接送到相应的端口上。这就是路由转发协议(routed protoc

32、ol)。 路由转发协议和路由选择协议是互相配合又互相独立的概念,前者使用后者维护的路由表,同时后者要运用前者提供的功能来发布路由协议数据分组。下文中提到的路由协议,除非特别说明,都是指路由选择协议,这也是普遍的习惯。 3 路由协议 典型的路由选择方式有两种:静态路由和动态路由。 静态路由是在路由器中设立的固定的路由表。除非网络管理员干预,否则静态路由不会发生变化。由于静态路由不能对网络的改变作出反映,一般用于网络规模不大、拓扑结构固定的网络中。静态路由的优点是简朴、高效、可靠。在所有的路由中,静态路由优先级最高。当动态路由与静态路由发生冲突时,以静态路由为准。 动态路由是网络中的路由器之间互相

33、通信,传递路由信息,运用收到的路由信息更新路由器表的过程。它能实时地适应网络结构的变化。假如路由更新信息表白发生了网络变化,路由选择软件就会重新计算路由,并发出新的路由更新信息。这些信息通过各个网络,引起各路由器重新启动其路由算法,并更新各自的路由表以动态地反映网络拓扑变化。动态路由合用于网络规模大、网络拓扑复杂的网络。当然,各种动态路由协议会不同限度地占用网络带宽和CPU资源。 静态路由和动态路由有各自的特点和合用范围,因此在网络中动态路由通常作为静态路由的补充。当一个分组在路由器中进行寻径时,路由器一方面查找静态路由,假如查到则根据相应的静态路由转发分组;否则再查找动态路由。 根据是否在一

34、个自治域内部使用,动态路由协议分为内部网关协议(IGP)和外部网关协议(EGP)。这里的自治域指一个具有统一管理机构、统一路由策略的网络。自治域内部采用的路由选择协议称为内部网关协议,常用的有RIP、OSPF;外部网关协议重要用于多个自治域之间的路由选择,常用的是BGP和BGP-4。下面分别进行简要介绍。 3.1 RIP路由协议 RIP协议最初是为Xerox网络系统的Xerox parc通用协议而设计的,是Internet中常用的路由协议。RIP采用距离向量算法,即路由器根据距离选择路由,所以也称为距离向量协议。路由器收集所有可到达目的地的不同途径,并且保存有关到达每个目的地的最少站点数的途径

35、信息,除到达目的地的最佳途径外,任何其它信息均予以丢弃。同时路由器也把所收集的路由信息用RIP协议告知相邻的其它路由器。这样,对的的路由信息逐渐扩散到了全网。 RIP使用非常广泛,它简朴、可靠,便于配置。但是RIP只合用于小型的同构网络,由于它允许的最大站点数为15,任何超过15个站点的目的地均被标记为不可达。并且RIP每隔30s一次的路由信息广播也是导致网络的广播风暴的重要因素之一。 3.2 OSPF路由协议 80年代中期,RIP已不能适应大规模异构网络的互连,0SPF随之产生。它是网间工程任务组织(1ETF)的内部网关协议工作组为IP网络而开发的一种路由协议。 0SPF是一种基于链路状态的

36、路由协议,需要每个路由器向其同一管理域的所有其它路由器发送链路状态广播信息。在OSPF的链路状态广播中涉及所有接口信息、所有的量度和其它一些变量。运用0SPF的路由器一方面必须收集有关的链路状态信息,并根据一定的算法计算出到每个节点的最短途径。而基于距离向量的路由协议仅向其邻接路由器发送有关路由更新信息。 与RIP不同,OSPF将一个自治域再划分为区,相应地即有两种类型的路由选择方式:当源和目的地在同一区时,采用区内路由选择;当源和目的地在不同区时,则采用区间路由选择。这就大大减少了网络开销,并增长了网络的稳定性。当一个区内的路由器出了故障时并不影响自治域内其它区路由器的正常工作,这也给网络的

37、管理、维护带来方便。 3.3 BGP和BGP-4路由协议 BGP是为TCPIP互联网设计的外部网关协议,用于多个自治域之间。它既不是基于纯粹的链路状态算法,也不是基于纯粹的距离向量算法。它的重要功能是与其它自治域的BGP互换网络可达信息。各个自治域可以运营不同的内部网关协议。BGP更新信息涉及网络号自治域途径的成对信息。自治域途径涉及到达某个特定网络须通过的自治域串,这些更新信息通过TCP传送出去,以保证传输的可靠性。 为了满足Internet日益扩大的需要,BGP还在不断地发展。在最新的BGp4中,还可以将相似路由合并为一条路由。 3.4 路由表项的优先问题 在一个路由器中,可同时配置静态路

38、由和一种或多种动态路由。它们各自维护的路由表都提供应转发程序,但这些路由表的表项间也许会发生冲突。这种冲突可通过配置各路由表的优先级来解决。通常静态路由具有默认的最高优先级,当其它路由表表项与它矛盾时,均按静态路由转发。 4 路由算法 路由算法在路由协议中起着至关重要的作用,采用何种算法往往决定了最终的寻径结果,因此选择路由算法一定要仔细。通常需要综合考虑以下几个设计目的: (1)最优化:指路由算法选择最佳途径的能力。 (2)简洁性:算法设计简洁,运用最少的软件和开销,提供最有效的功能。 (3)坚固性:路由算法处在非正常或不可预料的环境时,如硬件故障、负载过高或操作失误时,都能对的运营。由于路

39、由器分布在网络联接点上,所以在它们出故障时会产生严重后果。最佳的路由器算法通常能经受时间的考验,并在各种网络环境下被证实是可靠的。 (4)快速收敛:收敛是在最佳途径的判断上所有路由器达成一致的过程。当某个网络事件引起路由可用或不可用时,路由器就发出更新信息。路由更新信息遍及整个网络,引发重新计算最佳途径,最终达成所有路由器一致公认的最佳途径。收敛慢的路由算法会导致途径循环或网络中断。 (5)灵活性:路由算法可以快速、准确地适应各种网络环境。例如,某个网段发生故障,路由算法要能不久发现故障,并为使用该网段的所有路由选择另一条最佳途径。 路由算法按照种类可分为以下几种:静态和动态、单路和多路、平等

40、和分级、源路由和透明路由、域内和域间、链路状态和距离向量。前面几种的特点与字面意思基本一致,下面着重介绍链路状态和距离向量算法。链路状态算法(也称最短途径算法)发送路由信息到互联网上所有的结点,然而对于每个路由器,仅发送它的路由表中描述了其自身链路状态的那一部分。距离向量算法(也称为Bellman-Ford算法)则规定每个路由器发送其路由表所有或部分信息,但仅发送到邻近结点上。从本质上来说,链路状态算法将少量更新信息发送至网络各处,而距离向量算法发送大量更新信息至邻接路由器。 由于链路状态算法收敛更快,因此它在一定限度上比距离向量算法更不易产生路由循环。但另一方面,链路状态算法规定比距离向量算

41、法有更强的CPU能力和更多的内存空间,因此链路状态算法将会在实现时显得更昂贵一些。除了这些区别,两种算法在大多数环境下都能很好地运营。 最后需要指出的是,路由算法使用了许多种不同的度量标准去决定最佳途径。复杂的路由算法也许采用多种度量来选择路由,通过一定的加权运算,将它们合并为单个的复合度量、再填入路由表中,作为寻径的标准。通常所使用的度量有:途径长度、可靠性、时延、带宽、负载、通信成本等。 路由器的发展趋势 芯片速度每18个月翻一番,而因特网的流量是每6个月翻一番。作为因特网的枢纽,路由器正在朝速度更快、服务质量更好和更易于综合化管理这三个方向发展。 速度更快 传统意义上,路由器通常被认为是

42、网络速度的瓶颈。在局域网速度早已达成上百兆时,路由器的解决速度至多只到几十兆比特率。这几年随着着因特网用户的爆炸式增长,大家对路由器的研究也重点体现在提高路由器的解决速度上。1996-1997年间,美国出现了一批极具创新精神的小公司,如Nexabit、Juniper、Avici等,把路由器的解决速度提高到了登峰造极的地步,在不久的时间内相继推出了吉位路由器,连Cisco公司在速度方面都只能望其项背。由于这些高速路由器无一例外地都引入了互换的结构,因此它们也被称作千兆位互换路由器(GSR-Gigabit Switch Router)。这些路由器的光接口速度也不久从OC-12(622Mbps)升到

43、OC-48(2.5Gbps),再升到OC-192(10Gbps),这样的速度早已把ATM互换机远远地甩在后面。从此,ATM在核心网络中不可代替的地位彻底发生了动摇。旷日持久的IP与ATM技术之争终于以IP占压倒性的优势结束。但是,IP路由器速度的提高是直接得益于ATM的概念和技术的,在IP领域中提出的许多新概念和新技术也有相称一部分是直接或间接来源于ATM,两种优秀的技术逐渐开始融合。事实上,许多公司从事高速IP路由器研发的技术人员正是过去研究ATM技术的研发人员。具体来说,IP路由器速度的急剧提高来源于以下四个方面的技术进展: 硬件体系结构 路由器的硬件体系结构大体经历了6次变化,从最初期的

44、单总线、单CPU结构发展到单总线、多CPU再到多总线多CPU。到现在,高速IP路由器中多借鉴ATM的方法,采用交叉开关方式实现各端口之间的线速无阻塞互连。高速交叉开关的技术已经十提成熟,在ATM和高速并行计算机中早已得到广泛应用,市场上可直接购买到的高速交叉开关的速率就高达50Gbps。随着着高速交叉开关的引入,也同时引入了一些相应的技术问题,特别是针对IP多播、广播以及服务质量(QoS),采用成熟的调度策略和算法,这些问题都得到了很好的解决。 ASIC技术 这些年,出于成本和性能的考虑,ASIC应用得越来越广泛,几乎是言必称ASIC。在路由器中要极大地提高速度,一方面想到的也是ASIC。有的

45、用ASIC做包转发,有的用ASIC查路由,并且查找IPv4路由的ASIC芯片已经开始上市销售。在ASIC蓬勃发展、大量应用的潮流中,有一动向值得注意,这就是所谓可编程ASIC的出现,这恐怕也是网络自身日新月异所导致的一种结果。由于ASIC的设计生产投入相称大,一般来说,ASIC只用于已完全标准化的过程,而网络的结构和协议又变化相称快,因此相应地在网络设备这一领域,出现了奇特的“可编程ASIC”。目前,有两种类型的所谓“可编程ASIC”。一种以3COM公司的FIRE( Flexible Intelligent Routing Engine)芯片为代表,这颗ASIC芯片中内嵌了一颗CPU,因此具有

46、一定的灵活性;另一种以Vertex Networks的HISC专用芯片为代表,该芯片是一颗专门为通信协议解决的CPU,其体系结构的设计专门适应协议解决,通过改写微代码,可使这颗专用芯片具有解决不同协议的能力,以适应类似从IPv4到IPv6的变化。 3层互换 这是协议解决过程的一次革命性突破,也是现在GSR和TSR名称的来源。自从名不见经传的Ipsilon公司在1994年推出“一次路由,然后互换”的IP Switch技术之后,各大公司纷纷推出自己专有的3层互换技术。如Cisco的Tag Switch、3Com的Label Switch等。综合这些专有技术的优点,IETF终于在1998年推出了性能

47、优越的多协议标记互换(MPLS)。 IP over SDH,IP over DWDM 这方面的技术进展完全源于光纤通信技术的进展。随着IP的核心地位逐渐被认同,IP over ATM,然后ATM over SDH的方式被IP直接over SDH的方式取代。SDH采用时分复用的方式承载多路数据。因此在核心网中需大量采用复用器交叉连接器,DWDM(密集波分复用)使得一根光纤上可用不同的波长传送多路信号。 服务质量更好 前面所述的路由器在速度上的提高仍只但是是为了适应数据流量的急剧增长。而路由器发展趋势更本质、更深刻的变化是:以IP为基础的包互换数据将在未来几年内迅速取代已发展了近百年的电路互换通信方式,成为通信业务模式的主流。这意味着,IP路由器不仅要提供更快的速度以适应急剧增长的传统的计算机数据流量,并且IP路由器也将逐步提供原电信网络所提供的种种业务。但是传统的IP路由器并不关心也不知道IP包的业务类型,一般只是按先进先出的原则转发数据包,语音电话、实时视频、因特网浏览等各种业务类型的数据都被不加区分地对待。 由此可见,IP路由器要想提供涉及电信、广播在内的所有业务,提高服务质量(QoS)是其关键。这也正是目前各大网络设备厂商(涉及Cisco,3Com,Nortel等)所努力推动的方向。各大厂商新推出的高、中、低档路由器中都不同限度地支持QoS,如Cisc

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服