3静态路由 RIP IGP EGP BGP几大路由协议总结.docx
- 文档编号:23355725
- 上传时间:2023-05-16
- 格式:DOCX
- 页数:23
- 大小:527.34KB
3静态路由 RIP IGP EGP BGP几大路由协议总结.docx
《3静态路由 RIP IGP EGP BGP几大路由协议总结.docx》由会员分享,可在线阅读,更多相关《3静态路由 RIP IGP EGP BGP几大路由协议总结.docx(23页珍藏版)》请在冰豆网上搜索。
3静态路由RIPIGPEGPBGP几大路由协议总结
1路由选择策略(静态和动态)
最典型的路由选择策略有两种:
静态路由和动态路由。
所谓的静态是说明路由器不是通过彼此之间动态交换路由信息建立和更新路由表,而是指由网络管理员根据网络拓扑结构图来手动配置。
动态路由是通过网络中路由器之间的相互通信来传递路由信息,利用接收到的路由信息自动更新路由表。
2静态路由
静态路由是最简单的路由形式。
它由管理员负责完成发现路由和通过网络传播路由的任务。
在已经配置了静态路由的路由器上把报文直接转发至预定的端口。
静态路由可以使网络更安全,因为在路由器中,它只定义了一条流进和流出网络的路由。
此外,静态路由可以节省网络传输带宽。
无需路由器的CPU来计算路由,并且需要更少的内存。
当然静态路由选择也有些缺点,如网络发生问题或拓扑结构发生变化时,网络管理员就必须手工调整这些改变。
因此,静态路由比较适用于小型网络。
CISCO2500路由器举例说明:
先配置路由器名称,各个接口IP及其掩码,然后再手工配置静态路由:
配置静态路由的格式为:
Router(config)#iproute[destination_network][mask][next_hop_hop_addressorexitinterface][administrative_distance][permanent],在命令格式中,
1)destination_network是指所要到达的目的网络
2)mask为目的网络的子网掩码。
3)next_hop_address是指下一跳的IP地址,所谓下一跳是指数据包向目的地址前进的下一个路由器的端口,当然必须保证这个端口的IP地址可以PING通。
有时候在next_hop_address这个位置上用exitinterface,就是数据包离开路由器的接口,但是这种配置方式只可以用于端到端的连接,比如说广域网,在以太网中就不可以使用这种配置方式。
4)Administative_distance管理距离(可选),静态路由默认的管理距离是1,可以通过这个参数修改这个权值。
5)Permanent,指定此路由即使端口关掉也不被一移掉。
在上面拓扑图中,计算机A如果打算向计算机B发送数据包,必须通过Router1转发,Router1转发计算机A的数据包到计算机B,必须通过Router2和Router3,必须配置一条关于192.168.0.0的路由条目
3动态路由
动态路由选择策略:
动态路由是指按照一定的算法,发现、选择和更新路由的过程。
动态路由协议是网络设备学习网络中路由信息的方法之一,动态路由协议可以动态地随着网络拓扑结构的变化,并在较短时间内自动更新路由表,使网络达到收敛状态。
动态路由协议按照区域划分,可分为内部网关协议IGP(InteriorGatewayProtocol)和外部网关协议EGP(ExteriorGatewayProtocol),
按照执行的算法分类,又可分为距离矢量路由协议(DistanceVector)和链路状态路由协议(LinkState)
3.1按照路由算法分:
距离-矢量路由和链路状态路由协议
3.1.1距离-矢量路由:
RIP
基于距离-矢量算法将周期性地将路由表发送给与其直连的网络邻居。
每个接收者加上一个距离矢量,或它自己的距离“值”到表中,并将其转发给直接邻居。
这个过程发生在直接相连的路由器之间,并使得每个路由器得到了其他路由器的信息,最终形成一个网络“距离”的汇集视图。
几十年来大量的路由选择协议都采用了距离矢量这一算法来计算路由。
下面介绍一下距离矢量算法。
距离向量算法是基于下面的计算公式:
D(i,j)=0
D(i,j)=min[d(i,k)+D(k,j)]
其中:
D(i,j)表示从节点(节点为网络或路由器)i到节点J的最短路径,
d(i,k)表示从节点i到k的直接路径,也就是说节点i和k之间没有中介节点。
具体运算步骤如下:
1)所有的路由器建有一个路由表,使系统中的所有目的地址都出现在表中。
每一表项内容包括目的地址和下一站地址,记为元组(N,G)。
2)路由器周期性地向邻居发送更新分组,更新分组的内容为路由表中的所有信息。
3)邻居路由器接收处理更新分组。
设更新分组来自G‘,根据更新分组计算到目的地址N的路由开销为D’,如果D‘<D,采用新的路由(N,G’)。
如果当前路由表中所存放的相应下一站地址为G’,也就是G‘=G,采用新的路由,不管D’是大或小。
在距离矢量法中,相邻路由器之间周期性地相互交换各自的路由表备份。
当网络拓扑结构发生变化时,路由器之间也将及时地相互通知有关变更信息。
3.2.2链路-状态路由选择协议
链路状态路由选择协议也称为最短路径优先协议SPF(ShortestPathFirst),是另一种应用比较广泛的动态路由协议。
采用这种协议的路由器都要维护一个复杂的网络拓扑数据库,这个数据库可以反映整个网络的拓扑结构。
一个路由器的链路状态(LinkState)是指它与哪些网络或路由器相邻,以及到这些网络或路由器的度量。
路由器通过与网络中其他路由器交换链路状态的通告(LSA,Link-StateAdvertisment)来建立和更新网络拓扑数据库,随后使用SPF算法计算出连接网络目标的信息,并用这个信息更新路由表。
事实上,LSA的变化是由网络中的事件触发的,而不是周期进行的,在路由器开始汇聚前,也不需要等待一系列定时器的工作。
因此LSA的事件触发可以大大加快汇聚过程
3.2按照区域划分分:
内部和外部网关协议
路由器上的路由表是用来告诉数据报文该如何转发,由于Internet是一个全球范围的网络,如果路由器上所存在的路由表太多,处理起来将使得开销太大,需要太多的时间,为了解决这一问题,Internet被划分为许多较小的单元,这些较小的单元被称为自治系统(AutonomousSystem,简称AS)。
一个自治系统内的所有网络都属于一个单位来管辖,所以按照自治系统的范围,路由选择协议可以分为两类:
IGP:
内部网关协议(InteriorGatewayProtocol):
EGP:
外部网关协议(ExtenalGatewayProtocol)
3.2.1内部网关协议:
RIP和OSPF
是指在一个自治系统内部所使用的路由选择协议,与互联网的其他自治系统选用何种路由协议无关。
目前这类路由协议使用的最多,主要有路由信息协议(RIP)和开放式最短路径优先协议(OSPF)两种
3.2.2外部网关协议:
BGP
若源网络和目的网络处在不同的自治系统中,当数据报文传到一个自治系统的边界时,就需要一种协议将路由信息传递到另一个自治系统中。
这样的协议就是外部网关协议EGP。
在外部网关协议中目前使用最多的是BGP
3.3常用的三种动态路由协议:
RIP,OSPF和BGP
路由选择协议是用来实现路由选择的具体实现过程。
在路由器之间,利用路由选择协议使它们之间主动地交换路由信息,建立完整的路由表,然后,根据路由表来转发数据包。
通过路由选择协议,路由器可以动态地适应网络拓扑结构的变化,并找到目的网络的最佳路径。
下面将重点讲解三种路由协议,即内部网关协议中的RIP和OSPF,以及外部网关协议BGP
3.3.1RIP---距离矢量协议
RIP(RoutingInformationProtocols,路由信息协议)是使用最广泛的距离矢量协议,它是由施乐(Xerox)在70年代开发的。
当时,RIP是XNS(XeroxNetworkService,施乐网络服务)协议簇的一部分。
TCP/IP版本的RIP是施乐协议的改进版。
RIP协议基于一个被称为“routed”的程序,该程序运行在BSD版本的Unix系统之上,并在1988年被标准化在RFC1058中。
RIP最大的特点是,无论实现原理还是配置方法,都非常简单
1)工作原理
路由信息协议RIP是内部网关协议IGP中最先得到广泛使用的协议。
RIP是一种分布式的基于距离向量的路由选择协议。
RIP协议要求网络中的每一个路由器都要维护从它自己到其他每一个目的网络的距离记录。
2)“距离”的定义
从一路由器到直接连接的网络的距离定义为1。
从一个路由器到非直接连接的网络的距离定义为所经过的路由器数加1。
RIP协议中的“距离”也称为“跳数”(hopcount),因为每经过一个路由器,跳数就加1
RIP认为一个好的路由就是它通过的路由器的数目少,即“距离短”。
RIP允许一条路径最多只能包含15个路由器。
“距离”的最大值为16时即相当于不可达。
可见RIP只适用于小型互联网。
RIP不能在两个网络之间同时使用多条路由。
RIP选择一个具有最少路由器的路由(即最短路由),哪怕还存在另一条高速(低时延)但路由器较多的路由
3)三个要点
仅和相邻路由器交换信息。
交换的信息是当前本路由器所知道的全部信息,即自己的路由表。
按固定的时间间隔交换路由信息,例如,每隔30秒
4)路由表的建立
路由器在刚刚开始工作时,只知道到直接连接的网络的距离(此距离定义为1)。
以后,每一个路由器也只和数目非常有限的相邻路由器交换并更新路由信息。
经过若干次更新后,所有的路由器最终都会知道到达本自治系统中任何一个网络的最短距离和下一跳路由器的地址。
5)路由器之间交换信息
所有路由器都和自己的相邻路由器不断
a)交换路由信息
b)更新其路由表
使得从每一个路由器到每一个目的网络的路由都是最短的(即跳数最少)
6)稳定性问题
RIP还制定了许多其他的规则,以保证在网络拓扑结构快速变化的情况下,维持操作的稳定性,防止路由循环等问题。
这些规则包括:
有限跳(跃)数、更新抑制、水平分割等。
(1)有限跳数RIP允许的最大跳数为15。
任何跳数大于15的路由项中目的地址被认为是不可达的。
RIP的最大跳数虽然限制了其在大型互连网络环境中的使用,但维护了网络的稳定性
(2)更新抑制更新抑制可以禁止定期更新信息将一条已经标志为无效的路由重新启用,造成各路由器中的路由表状态不一致。
更新抑制让路由器在接收到任何可能影响最近刚删除的路由的信息时,保留一段时间不进行处理。
抑制的时间一般比一个路由改变传遍整个网络所需的时间要稍长一点,这可以防止无限计数(CounttoInfinity)的问题
(3)水平分割(SplitHorizons)在任何情况下,把从某一个方向接收到的路由信息又向回传播都是没有意义的
7)RIP的特点
RIP协议简单,易用,开销小,管理方便。
但RIP也有一些局限性,其主要表现在:
(1)跳数限制
(2)固定度量
(3)慢收敛
(4)不能进行负荷平衡
3.3.2OSPF(直接用IP数据报传送)---链路-状态路由协议
⏹OSPF不用UDP而是直接用IP数据报传送,可见OSPF的位置在网络层。
⏹OSPF构成的数据报很短。
这样做可减少路由信息的通信量。
⏹数据报很短的另一好处是可以不必将长的数据报分片传送。
分片传送的数据报只要丢失一个,就无法组装成原来的数据报,而整个数据报就必须重传
1)OSPF算法步骤
找到邻结点;
定期测量到邻结点的代价(开销);
当链路状态变化时,将信息组装成链路状态分组;
采用扩散的方法将分组发送到网络上所有其他的路由器(都运行OSPF);
每个路由器根据得到的链路状态信息计算路由(使用最短路径算法)。
2)OSPF的区域(area)
为了使OSPF能够用于规模很大的网络,OSPF将一个自治系统再划分为若干个更小的范围,叫作区域。
每一个区域都有一个32bit的区域标识符(用点分十进制表示)。
区域也不能太大,在一个区域内的路由器最好不超过200个。
3)划分区域
划分区域的好处就是将利用洪泛法交换链路状态信息的范围局限于每一个区域而不是整个的自治系统,这就减少了整个网络上的通信量。
在一个区域内部的路由器只知道本区域的完整网络拓扑,而不知道其他区域的网络拓扑的情况。
OSPF使用层次结构的区域划分。
在上层的区域叫作主干区域(backbonearea)。
主干区域的标识符规定为0.0.0.0。
主干区域的作用是用来连通其他在下层的区域
4)OSPF划分为两种不同的区域
图7.11是一个分为若干区域的OSPF自治系统的例子
5)链路状态数据库
由于各路由器之间频繁地交换链路状态信息,因此所有的路由器最终都能建立一个链路状态数据库。
这个数据库实际上就是全网的拓扑结构图,它在全网范围内是一致的(这称为链路状态数据库的同步)。
OSPF的链路状态数据库能较快地进行更新,使各个路由器能及时更新其路由表。
OSPF的更新过程收敛得快是其重要优点
6)基本工作流程
OSPF的五种分组类型
类型1,问候(Hello)分组。
类型2,数据库描述(DatabaseDescription)分组。
类型3,链路状态请求(LinkStateRequest)分组。
类型4,链路状态更新(LinkStateUpdate)分组,用洪泛法对全网更新链路状态。
类型5,链路状态确认(LinkStateAcknowledgment)分组。
7)OSPF的基本操作
8)三个要点
向本自治系统中所有路由器发送信息,这里使用的方法是洪泛法。
发送的信息就是与本路由器相邻的所有路由器的链路状态
a)“链路状态”就是说明本路由器都和哪些路由器相邻,以及该链路的“度量”(metric)。
只有当链路状态发生变化时,路由器才用洪泛法向所有路由器发送此信息。
9)最短路径树
路由的计算基于自治系统中反映路由器和链路状态的LSA。
路由器在计算路由表时要借助用Dijkstra算法建立起来的最短路径树。
路由器把自己作为树根,建立一个最短路径树,并用这颗树跟踪该路由器到路由域中每个目标的最短路径。
下面举一个简单实例来认识以下最短路径树的概貌。
在如图7.13的拓扑结构中,以R1为计算路由器为例,可以得到如图7.14所示的最短路径树
10)OSPF报文格式
OSPF协议是相当复杂的路由协议。
因此,OSPF协议使用大量的数据结构来描述路由的状态信息。
OSPF使用5种报文类型。
每种类型用于支持不同的网络功能。
5种报文分别是:
HELLO报文(类型1)、数据库描述报文(类型2)、链路-状态请求报文(类型3)、链路-状态更新报文(类型4)及链路-状态应答报文(类型5)。
以上报文使用相同的OSPF协议的报文头。
OSPF报头长度为24字节,如图7.15所示
下面对图7.15中OSPF报文中各字段的含义说明如下:
①版本号。
OSPF报文头的第一个字节用于标识版本号。
当前的版本是2号,但有些较老的路由器还在使用RFC1131中描述的版本1。
在RFC1247、1583、2178和2328文档中都对OSPF版本2做了向下兼容的规范描述。
②类型。
指出OSPF报文类型,包括HELLO、数据库描述、链路-状态请求、链路-状态和链路-状态应答5类报文。
③报文长度。
用于通知接收点报文的总长度。
报文总长度包括数据和头。
④路由器ID。
区中的每个路由器被分配一个惟一的、4字节的标识号。
OSPF路由器在发送任何OSPF消息给其他路由器之前,用自己的ID号填充该域。
⑤区ID。
用来标识区号。
⑥校验各。
用来检查在传输过程中报文是否受到破坏。
发送方对每个报文通过某种数学算法,进行计算后把结果存储在这个域中。
接收方对接收到的报文使用相同的算法并把结果与存储在校验和域中的结果进行比较。
如果两个结果相同,标识报文无损到达;不相同,说明OSPF报文在传输过程中被破坏,接收方会把受损报文丢弃。
⑦认证类型。
通过认证OSPF报文发送者来防止假路由信息的攻击。
⑧认证。
认证数据,接收方利用此信息来确定信息的发送者。
OSPF允许网络管理员使用各种级别的认证,如MD认证。
在传输过程中受到破坏,以及没有通过认证的报文会被丢弃。
下面对OSPF报文格式的5种报文进行说明。
(1)HELLO报文
HELLO报文用于建立和维护相邻站点之间关系的协议。
连接性是OSPF交换路由数据的基础。
通过这个协议和报文类型,OSPF节点能发现区内的其他OSPF节点。
HELLO报文也包括最近与其联系过的其他路由器的列表。
HELLO报文的指定路由器域(DesignatedRouter)、备份指定路由器(BackupDesignatedRouter)等域,对于维护连接性,支持OSPF网络的稳定周期和收敛都是非常有效的。
(2)数据库描述报文
当OSPF中的两个路由器初始化连接时,要交换数据库描述(DD)报文。
这个报文类型用于描述路由器的链路-状态数据库内容。
由于数据库的内容可能相当长,所以可能需要多个数据库描述报文来描述整个数据库。
DD报文交换过程按请求/应答方式进行。
在此过程中,一个路由器作为主路由器,另一个路由器作为从路由器,主路由器向从路由器发送它的路由表内容。
显然,主机之间的关系会因每个DD交换的不同而不同。
网络中所有的路由器在不同的时刻作用,因此,一个路由器可能此时是主,彼时是从。
LSA是连接状态公告。
(3)链路-状态请求报文
链路-状态请求报文用于请求相邻路由器链路-状态数据库中的部分数据。
也就是说,当路由器收到一个DD更新报文之后,OSPF路由器发现相邻路由器的链路状态信息比自己的更完全时,路由器会发送一个或几个链路-状态请求报文给它的邻接路由器,请求得到更多的链路状态信息。
请求的报文必须包含以下内容:
链路-状态类型号(1到5)、链路-状态(LS)标识及发送报文路由器。
(4)链路-状态更新报文
链路-状态更新报文负责把LSA发送给它的相邻节点。
这些更新报文是用于对LSA请求的应答。
OSPF有5种LSA报文类型。
报文类型标识码从类型1到类型5。
①类型1:
路由器LSA(RauterLSA)
路由器LSA描述了路由器链路到区域的状态和耗费。
所有这样的链路必须在一个LSA报文中进行描述。
同时,路由器必须为它属于的每个区域产生一个路由器LSA。
所以,区域边界路由器将产生多个路由器LSA,而区域内的路由器只需产生一个LSA更新。
②类型2:
网络LSA(NetworkLSA)
网络LSA与路由器LSA相似,它描述的是网络内的所有路由器的链路状态和耗费信息。
二者的区别是,网络LSA是网络中所有链路-状态和耗费信息的总和。
只有网络的指定路由器记录这个信息,并由它来产生网络LSA。
③类型3:
汇聚LSA-IP网络(SummaryLSA-IPNetwork)
只有OSPF网络中的区边界路由器产生这种LSA类型。
此LSA类型把一个区的汇聚路由信息和OSPF网络中相邻区路由器信息进行交换。
它主要汇聚缺省的路由,而不是传输汇聚的OSPF信息至其他网络。
④类型4:
汇聚LSA-自治系统边界路由器(SummaryLSA-AutonomousSystemBoundaryRouter),类型4与类型3关系密切。
二者的区别是类型3描述区内路由,而类型4描述的是OSPF网络之外的路由。
⑤类型5:
自治系统外部LSA(AS-LSA)
此种LSA用于描述OSPF网络之外的目的主机或外部网络地址。
作为和外部自治系统相联系的ASBROSPF节点负责把外部路由信息在它属于的整个区中传输。
路由完整的LSA数据存储在链路-状态数据库。
当Dijkstra算法应用于这些数据库的内容时会得到OSPF路由表。
表和数据库的区别是数据库含有原始数据的完整集合,而路由表包含通过特定路由器接口到已知目的地的最短路径列表。
链路-状态更新报文的格式如图7.19所示。
(5)链路-状态应答报文
OSPF路由器发送链路状态公告信息后,需要得到目的路由器的确认。
链路-状态应答报文由通告的接收方对于收到的LSA信息进行应答,否则,发送方无法知道LSA已到达目的端。
链路-状态应答报文对每个LSA报文应答,但是LSA与应答报文无需一一对应,多个LSA可以用一个报文来应答。
链路-状态应答报文的格式如图7.20所示。
3.3.3BGP---边界网关协议(BGP/BGP4)
Internet是一个全球互联的计算机网络。
随着因特网的飞速发展,在全球范围的层面上对其进行有效地管理将越来越困难。
因此,通过把整个因特网划分为若干个自治系统AS,就能拥有一个个较小的、更易管理的大型网络。
AS自身可以有自己的一套规则和策略,能够把自己和其他AS唯一地区别开来。
每个AS被看做是一个进行自我管理的网络,一个自治系统只负责管理自己内部的路由。
每个AS拥有一个AS号码,该号码由因特网登记处分配,例如目前亚太区国家的IP地址和自治系统号分配由APNIC管理
1)BGP使用的环境
因特网的规模太大,使得自治系统之间路由选择非常困难。
对于自治系统之间的路由选择,要寻找最佳路由是很不现实的。
自治系统之间的路由选择必须考虑有关策略。
BGP只能是力求寻找一条能够到达目的网络且比较好的路由,而并非要寻找一条最佳路由。
2)BGP发言人
每一个自治系统的管理员要选择至少一个路由器作为该自治系统的“BGP发言人”。
一般说来,两个BGP发言人都是通过一个共享网络连接在一起的,而BGP发言人往往就是BGP边界路由器,但也可以不是BGP边界路由器。
3)BGP交换路由信息
一个BGP发言人与其他自治系统中的BGP发言人要交换路由信息,就要先建立TCP连接,然后在此连接上交换BGP报文以建立BGP会话(session),利用BGP会话交换路由信息。
使用TCP连接能提供可靠的服务,也简化了路由选择协议。
使用TCP连接交换路由信息的两个BGP发言人,彼此成为对方的邻站或对等站。
4)BGP发言人和自治系统AS的关系
5)BGP报文结构
(1)打开(Open)报文,用来与相邻的另一个BGP发言人建立关系。
(2)更新(Update)报文,用来发送某一路由的信息,以及列出要撤消的多条路由。
(3)保活(Keepalive)报文,用来确认打开报文和周期性地证实邻站关系。
(4)通知(Notificaton)报文,用来发送检测到的差错。
(5)路由更新(Route-refresh)
4基于IPv6的路由技术
IPv6路由术语介绍
•节点(Node):
可以实现IPv6协议的设备。
•主机(Host):
不是路由器的节点。
• 上层(UpperLayer):
IPv6之上的协议层。
•链路(Link):
通信设备或者媒介。
•接口(Interface):
节点和链路的网络接口。
•邻居:
(Neighbors):
和同一个链路相连的节点。
• 地址(Address):
接口或者一系列接口的IPv6标识。
•数据报(Datagram):
数据包的同义词。
•数据包(Packet):
IPv6层PDU(ProtocolDataUnit,协议数据单元),即
IPv6报头加上有效载荷。
•链路MTU(MaximumTransmissionUnit,最大传输单元):
某链路的最大传
输单元
•路径MTU:
源节点和目的节点之间的路径上所有链路的最小链路MTU。
邻居发现技术
如同LAN一样,要管理连接到同一个链路的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 3静态路由 RIP IGP EGP BGP几大路由协议总结 静态 路由 BGP 大路 协议 总结