思科路由协议

上传人:最*** 文档编号:11101369 上传时间:2020-04-19 格式:DOC 页数:17 大小:60KB
返回 下载 相关 举报
思科路由协议_第1页
第1页 / 共17页
思科路由协议_第2页
第2页 / 共17页
思科路由协议_第3页
第3页 / 共17页
点击查看更多>>
资源描述
OSPF路由协议随着Internet技术在全球范围的飞速发展,OSPF已成为目前Internet广域网和Intranet企业网采用最多、应用最广泛的路由协议之一。 OSPF(Open Shortest Path First)路由协议是由IETF(Internet Engineering Task Force)IGP工作小组提出的,是一种基于SPF算法的路由协议,目前使用的OSPF协议是其第二版,定义于RFC1247和RFC1583。1.概述OSPF路由协议是一种典型的链路状态(Link-state)的路由协议,一般用于同一个路由域内。在这里,路由域是指一个自治系统(Autonomous System),即AS,它是指一组通过统一的路由政策或路由协议互相交换路由信息的网络。在这个AS中,所有的OSPF路由器都维护一个相同的描述这个AS结构的数据库,该数据库中存放的是路由域中相应链路的状态信息,OSPF路由器正是通过这个数据库计算出其OSPF路由表的。作为一种链路状态的路由协议,OSPF将链路状态广播数据包LSA(Link State Advertisement)传送给在某一区域内的所有路由器,这一点与距离矢量路由协议不同。运行距离矢量路由协议的路由器是将部分或全部的路由表传递给与其相邻的路由器。2.数据包格式OSPF路由协议的数据包格式如下图所示:附图 1:OSPF路由协议数据包格式在OSPF路由协议的数据包中,其数据包头长为24个字节,包含如下8个字段:* Version number-定义所采用的OSPF路由协议的版本。* Type-定义OSPF数据包类型。OSPF数据包共有五种:* Hello-用于建立和维护相邻的两个OSPF路由器的关系,该数据包是周期性地发送的。* Database Description-用于描述整个数据库,该数据包仅在OSPF初始化时发送。* Link state request-用于向相邻的OSPF路由器请求部分或全部的数据,这种数据包是在当路由器发现其数据已经过期时才发送的。* Link state update-这是对link state请求数据包的响应,即通常所说的LSA数据包。* Link state acknowledgment-是对LSA数据包的响应。* Packet length-定义整个数据包的长度。* Router ID-用于描述数据包的源地址,以IP地址来表示。* Area ID-用于区分OSPF数据包属于的区域号,所有的OSPF数据包都属于一个特定的OSPF区域。* Checksum-校验位,用于标记数据包在传递时有无误码。* Authentication type-定义OSPF验证类型。* Authentication-包含OSPF验证信息,长为8个字节。3.OSPF基本算法3.1 SPF算法及最短路径树SPF算法是OSPF路由协议的基础。SPF算法有时也被称为Dijkstra算法,这是因为最短路径优先算法SPF是Dijkstra发明的。SPF算法将每一个路由器作为根(ROOT)来计算其到每一个目的地路由器的距离,每一个路由器根据一个统一的数据库会计算出路由域的拓扑结构图,该结构图类似于一棵树,在SPF算法中,被称为最短路径树。在OSPF路由协议中,最短路径树的树干长度,即OSPF路由器至每一个目的地路由器的距离,称为OSPF的Cost,其算法为:Cost = 100106/链路带宽在这里,链路带宽以bps来表示。也就是说,OSPF的Cost 与链路的带宽成反比,带宽越高,Cost越小,表示OSPF到目的地的距离越近。举例来说,FDDI或快速以太网的Cost为1,2M串行链路的Cost为48,10M以太网的Cost为10等。3.2 链路状态算法作为一种典型的链路状态的路由协议,OSPF还得遵循链路状态路由协议的统一算法。链路状态的算法非常简单,在这里将链路状态算法概括为以下四个步骤: 当路由器初始化或当网络结构发生变化(例如增减路由器,链路状态发生变化等)时,路由器会产生链路状态广播数据包LSA(Link-State Advertisement),该数据包里包含路由器上所有相连链路,也即为所有端口的状态信息。所有路由器会通过一种被称为刷新(Flooding)的方法来交换链路状态数据。Flooding是指路由器将其LSA数据包传送给所有与其相邻的OSPF路由器,相邻路由器根据其接收到的链路状态信息更新自己的数据库,并将该链路状态信息转送给与其相邻的路由器,直至稳定的一个过程。当网络重新稳定下来,也可以说OSPF路由协议收敛下来时,所有的路由器会根据其各自的链路状态信息数据库计算出各自的路由表。该路由表中包含路由器到每一个可到达目的地的Cost以及到达该目的地所要转发的下一个路由器(next-hop)。第4个步骤实际上是指OSPF路由协议的一个特性。当网络状态比较稳定时,网络中传递的链路状态信息是比较少的,或者可以说,当网络稳定时,网络中是比较安静的。这也正是链路状态路由协议区别与距离矢量路由协议的一大特点。4.OSPF路由协议的基本特征前文已经说明了OSPF路由协议是一种链路状态的路由协议,为了更好地说明OSPF路由协议的基本特征,我们将OSPF路由协议与距离矢量路由协议之一的RIP(Routing Information Protocol)作一比较,归纳为如下几点:RIP路由协议中用于表示目的网络远近的唯一参数为跳(HOP),也即到达目的网络所要经过的路由器个数。在RIP路由协议中,该参数被限制为最大15,也就是说RIP路由信息最多能传递至第16个路由器;对于OSPF路由协议,路由表中表示目的网络的参数为Cost,该参数为一虚拟值,与网络中链路的带宽等相关,也就是说OSPF路由信息不受物理跳数的限制。并且,OSPF路由协议还支持TOS(Type of Service)路由,因此,OSPF比较适合应用于大型网络中。RIP路由协议不支持变长子网屏蔽码(VLSM),这被认为是RIP路由协议不适用于大型网络的又一重要原因。采用变长子网屏蔽码可以在最大限度上节约IP地址。OSPF路由协议对VLSM有良好的支持性。RIP路由协议路由收敛较慢。RIP路由协议周期性地将整个路由表作为路由信息广播至网络中,该广播周期为30秒。在一个较为大型的网络中,RIP协议会产生很大的广播信息,占用较多的网络带宽资源;并且由于RIP协议30秒的广播周期,影响了RIP路由协议的收敛,甚至出现不收敛的现象。而OSPF是一种链路状态的路由协议,当网络比较稳定时,网络中的路由信息是比较少的,并且其广播也不是周期性的,因此OSPF路由协议即使是在大型网络中也能够较快地收敛。在RIP协议中,网络是一个平面的概念,并无区域及边界等的定义。随着无级路由CIDR概念的出现,RIP协议就明显落伍了。在OSPF路由协议中,一个网络,或者说是一个路由域可以划分为很多个区域area,每一个区域通过OSPF边界路由器相连,区域间可以通过路由总结(Summary)来减少路由信息,减小路由表,提高路由器的运算速度。一个典型的OSPF网络结构可以参见附图二附图2:OSPF典型结构OSPF路由协议支持路由验证,只有互相通过路由验证的路由器之间才能交换路由信息。并且OSPF可以对不同的区域定义不同的验证方式,提高网络的安全性。OSPF路由协议对负载分担的支持性能较好。OSPF路由协议支持多条Cost相同的链路上的负载分担,目前一些厂家的路由器支持6条链路的负载分担。5.区域及域间路由前文已经提到过,在OSPF路由协议的定义中,可以将一个路由域或者一个自治系统AS划分为几个区域。在OSPF中,由按照一定的OSPF路由法则组合在一起的一组网络或路由器的集合称为区域(AREA)。在OSPF路由协议中,每一个区域中的路由器都按照该区域中定义的链路状态算法来计算网络拓扑结构,这意味着每一个区域都有着该区域独立的网络拓扑数据库及网络拓扑图。对于每一个区域,其网络拓扑结构在区域外是不可见的,同样,在每一个区域中的路由器对其域外的其余网络结构也不了解。这意味着OSPF路由域中的网络链路状态数据广播被区域的边界挡住了,这样做有利于减少网络中链路状态数据包在全网范围内的广播,也是OSPF将其路由域或一个AS划分成很多个区域的重要原因。随着区域概念的引入,意味着不再是在同一个AS内的所有路由器都有一个相同的链路状态数据库,而是路由器具有与其相连的每一个区域的链路状态信息,即该区域的结构数据库,当一个路由器与多个区域相连时,我们称之为区域边界路由器。一个区域边界路由器有自身相连的所有区域的网络结构数据。在同一个区域中的两个路由器有着对该区域相同的结构数据库。我们可以根据IP数据包的目的地地址及源地址将OSPF路由域中的路由分成两类,当目的地与源地址处于同一个区域中时,称为区域内路由,当目的地与源地址处于不同的区域甚至处于不同的AS时,我们称之为域间路由。OSPF的骨干区域及虚拟链路(Virtual-link)在OSPF路由协议中存在一个骨干区域(Backbone),该区域包括属于这个区域的网络及相应的路由器,骨干区域必须是连续的,同时也要求其余区域必须与骨干区域直接相连。骨干区域一般为区域0,其主要工作是在其余区域间传递路由信息。所有的区域,包括骨干区域之间的网络结构情况是互不可见的,当一个区域的路由信息对外广播时,其路由信息是先传递至区域0(骨干区域),再由区域0将该路由信息向其余区域作广播。骨干区域与其余区域的关系可以以附图三来说明。附图3:骨干区域及域间路由在实际网络中,可能会存在backbone不连续的或者某一个区域与骨干区域物理不相连的情况,在这两种情况下,系统管理员可以通过设置虚拟链路的方法来解决。虚拟链路是设置在两个路由器之间,这两个路由器都有一个端口与同一个非骨干区域相连。虚拟链路被认为是属于骨干区域的,在OSPF路由协议看来,虚拟链路两端的两个路由器被一个点对点的链路连在一起。在OSPF路由协议中,通过虚拟链路的路由信息是作为域内路由来看待的。下面我们分两种情况来说明虚拟链路在OSPF路由协议中的作用。1.当一个区域与area0没有物理链路相连时前文已经提到,一个骨干区域Area 0必须位于所有区域的中心,其余所有区域必须与骨干区域直接相连。但是,也存在一个区域无法与骨干区域建立物理链路的可能性,在这种情况下,我们可以采用虚拟链路。虚拟链路使该区域与骨干区域间建立一个逻辑联接点,该虚拟链路必须建立在两个区域边界路由器之间,并且其中一个区域边界路由器必须属于骨干区域。这种虚拟链路可以以下图来说明。附图4:虚拟链路(1)在上图所示的例子中,区域1与区域0并无物理相连链路,我们可以在路由器A及路由器B之间建立虚拟链路,这样,将区域2作为一个穿透网络(Transit-network),路由器B作为接入点,区域1就与区域0建立了逻辑联接。2.当骨干区域不连续时OSPF路由协议要求骨干区域area0必须是连续的,但是,骨干区域也会出现不连续的情况,例如,当我们想把两个OSPF路由域混合到一起,并且想要使用一个骨干区域时,或者当某些路由器出现故障引起骨干区域不连续的情况,在这些情况下,我们可以采用虚拟链路将两个不连续的区域0连接到一起。这时,虚拟链路的两端必须是两个区域0的边界路由器,并且这两个路由器必须都有处于同一个区域的端口,以下图为例:附图 5:虚拟链路(2)在上图的例子中,穿过区域1的虚拟链路将两个分为两半的骨干区域连接到一起,路由器A与B之间的路由信息作为OSPF域内路由来处理。另外,当一个非骨干区域的区域分裂成两半时,不能采用虚拟链路的方法来解决。当出现这种情况时,分裂出的其中一个区域将被其余的区域作为域间路由来处理。残域(Stub area)在OSPF路由协议的链路状态数据库中,可以包括AS外部链路状态信息,这些信息会通过flooding传递到AS内的所有OSPF路由器上。但是,在OSPF路由协议中存在这样一种区域,我们把它称为残域(stub area),AS外部信息不允许广播进/出这个区域。对于残域来说,访问AS外部的数据只能根据默认路由(default-route)来寻址。这样做有利于减小残域内部路由器上的链路状态数据库的大小及存储器的使用,提高路由器计算路由表的速度。当一个OSPF的区域只存在一个区域出口点时,我们可以将该区域配置成一个残域,在这时,该区域的边界路由器会对域内广播默认路由信息。需要注意的是,一个残域中的所有路由器都必须知道自身属于该残域,否则残域的设置没有作用。另外,针对残域还有两点需要注意:一是残域中不允许存在虚拟链路;二是残域中不允许存在AS边界路由器。6.OSPF协议路由器及链路状态数据包分类6.1 OSPF路由器分类当一个AS划分成几个OSPF区域时,根据一个路由器在相应的区域之内的作用,可以将OSPF路由器作如下分类:内部路由器:当一个OSPF路由器上所有直联的链路都处于同一个区域时,我们称这种路由器为内部路由器。内部路由器上仅仅运行其所属区域的OSPF运算法则。区域边界路由器:当一个路由器与多个区域相连时,我们称之为区域边界路由器。区域边界路由器运行与其相连的所有区域定义的OSPF运算法则,具有相连的每一个区域的网络结构数据,并且了解如何将该区域的链路状态信息广播至骨干区域,再由骨干区域转发至其余区域。AS边界路由器:AS边界路由器是与AS外部的路由器互相交换路由信息的OSPF路由器,该路由器在AS内部广播其所得到的AS外部路由信息;这样AS内部的所有路由器都知道至AS边界路由器的路由信息。AS边界路由器的定义是与前面几种路由器的定义相独立的,一个AS边界路由器可以是一个区域内部路由器或是一个区域边界路由器。指定路由器DR:在一个广播性的、多接入的网络(例如Ethernet、TokenRing及FDDI环境)中,存在一个指定路由器(Designated Router),指定路由器主要在OSPF协议中完成如下工作:指定路由器产生用于描述所处的网段的链路数据包network link,该数据包里包含在该网段上所有的路由器,包括指定路由器本身的状态信息。指定路由器与所有与其处于同一网段上的OSPF路由器建立相邻关系。由于OSPF路由器之间通过建立相邻关系及以后的flooding来进行链路状态数据库是同步的,因此,我们可以说指定路由器处于一个网段的中心地位。需要说明的是,指定路由器DR的定义与前面所定义的几种路由器是不同的。DR的选择是通过OSPF的Hello数据包来完成的,在OSPF路由协议初始化的过程中,会通过Hello数据包在一个广播性网段上选出一个ID最大的路由器作为指定路由器DR,并且选出ID次大的路由器作为备份指定路由器BDR,BDR在DR发生故障后能自动替代DR的所有工作。当一个网段上的DR和BDR选择产生后,该网段上的其余所有路由器都只与DR及BDR建立相邻关系。在这里,一个路由器的ID是指向该路由器的标识,一般是指该路由器的环回端口或是该路由器上的最小的IP地址。DR和BDR在一个广播性网络中的作用可用下图来说明。附图 6:DR及BDR选择6.2 OSPF链路状态广播数据包种类随着OSPF路由器种类概念的引入,OSPF路由协议又对其链路状态广播数据包(LSA)作出了分类。OSPF将链路状态广播数据包共分成5类,分别为:类型1:又被称为路由器链路信息数据包(Router Link),所有的OSPF路由器都会产生这种数据包,用于描述路由器上联接到某一个区域的链路或是某一端口的状态信息。路由器链路信息数据包只会在某一个特定的区域内广播,而不会广播至其它的区域。在类型1的链路数据包中,OSPF路由器通过对数据包中某些特定数据位的设定,告诉其余的路由器自身是一个区域边界路由器或是一个AS边界路由器。并且,类型1的链路状态数据包在描述其所联接的链路时,会根据各链路所联接的网络类型对各链路打上链路标识,Link ID。表一列出了常见的链路类型及链路标识。链路类型 具体描述 链路标识 1 用于描述点对点的网络 相邻路由器的路由器标识 2 用于描述至一个广播性网络的链路 DR的端口地址 3 用于描述至非穿透网络,即stub网络的链路 stub网络的网络号码 4 用于描述虚拟链路 相邻路由器的路由器标识 表格1: 链路类型及链路标识类型2:又被称为网络链路信息数据包(Network Link)。网络链路信息数据包是由指定路由器产生的,在一个广播性的、多点接入的网络,例如以太网、令牌环网及FDDI网络环境中,这种链路状态数据包用来描述该网段上所联接的所有路由器的状态信息。指定路由器DR只有在与至少一个路由器建立相邻关系后才会产生网络链路信息数据包,在该数据包中含有对所有已经与DR建立相邻关系的路由器的描述,包括DR路由器本身。类型2的链路信息只会在包含DR所处的广播性网络的区域中广播,不会广播至其余的OSPF路由区域。类型3和类型4:类型3和类型4的链路状态广播在OSPF路由协议中又称为总结链路信息数据包(Summary Link),该链路状态广播是由区域边界路由器或AS边界路由器产生的。Summary Link描述的是到某一个区域外部的路由信息,这一个目的地地址必须是同一个AS中。Summary Link也只会在某一个特定的区域内广播。类型3与类型4两种总结性链路信息的区别在于,类型3是由区域边界路由器产生的,用于描述到同一个AS中不同区域之间的链路状态;而类型4是由AS边界路由器产生的,用于描述不同AS的链路状态信息。值得一提的是,只有类型3的Summary Link才能广播进一个残域,因为在一个残域中不允许存在AS边界路由器。残域的区域边界路由器产生一条默认的Summary Link对域内广播,从而在其余路由器上产生一条默认路由信息。采用Summary Link可以减小残域中路由器的链路状态数据库的大小,进而减少对路由器资源的利用,提高路由器的运算速度。类型5:类型5的链路状态广播称为AS外部链路状态信息数据包。类型5的链路数据包是由AS边界路由器产生的,用于描述到AS外的目的地的路由信息,该数据包会在AS中除残域以外的所有区域中广播。一般来说,这种链路状态信息描述的是到AS外部某一特定网络的路由信息,在这种情况下,类型5的链路状枋数据包的链路标识采用的是目的地网络的IP地址;在某些情况下,AS边界路由器可以对AS内部广播默认路由信息,在这时,类型5的链路广播数据包的链路标识采用的是默认网络号码0.0.0.0。几种类型的链路数据包的描述请见下图:附图 7:OSPF链路广播数据包类型 7.OSPF协议工作过程OSPF路由协议针对每一个区域分别运行一套独立的计算法则,对于ABR来说,由于一个区域边界路由器同时与几个区域相联,因此一个区域边界路由器上会同时运行几套OSPF计算方法,每一个方法针对一个OSPF区域。下面对OSPF协议运算的全过程作一概括性的描述。7.1 区域内部路由当一个OSPF路由器初始化时,首先初始化路由器自身的协议数据库,然后等待低层次协议(数据链路层)提示端口是否处于工作状态。如果低层协议得知一个端口处于工作状态时,OSPF会通过其Hello协议数据包与其余的OSPF路由器建立交互关系。一个OSPF路由器向其相邻路由器发送Hello数据包,如果接收到某一路由器返回的Hello数据包,则在这两个OSPF路由器之间建立起OSPF交互关系,这个过程在OSPF中被称为adjacency。在广播性网络或是在点对点的网络环境中,OSPF协议通过Hello数据包自动地发现其相邻路由器,在这时,OSPF路由器将Hello数据包发送至一特殊的多点广播地址,该多点广播地址为ALLSPFRouters。在一些非广播性的网络环境中,我们需要经过某些设置来发现OSPF相邻路由器。在多接入的环境中,例如以太网的环境,Hello协议数据包还可以用于选择该网络中的指定路由器DR。一个OSPF路由器会与其新发现的相邻路由器建立OSPF的adjacency,并且在一对OSPF路由器之间作链路状态数据库的同步。在多接入的网络环增中,非DR的OSPF路由器只会与指定路由器DR建立adjacency,并且作数据库的同步。OSPF协议数据包的接收及发送正是在一对OSPF的adjacency间进行的。OSPF路由器周期性地产生与其相联的所有链路的状态信息,有时这些信息也被称为链路状态广播LSA(Link State Advertisement)。当路由器相联接的链路状态发生改变时,路由器也会产生链路状态广播信息,所有这些广播数据是通过Flood的方式在某一个OSPF区域内进行的。Flooding算法是一个非常可靠的计算过程,它保证在同一个OSPF区域内的所有路由器都具有一个相同的OSPF数据库。根据这个数据库,OSPF路由器会将自身作为根,计算出一个最短路径树,然后,该路由器会根据最短路径树产生自己的OSPF路由表。7.2 建立OSPF交互关系adjacencyOSPF路由协议通过建立交互关系来交换路由信息,但是并不是所有相邻的路由器会建立OSPF交互关系。下面将OSPF建立adjacency的过程简要介绍一下。OSPF协议是通过Hello协议数据包来建立及维护相邻关系的,同时也用其来保证相邻路由器之间的双向通信。OSPF路由器会周期性地发送Hello数据包,当这个路由器看到自身被列于其它路由器的Hello数据包里时,这两个路由器之间会建立起双向通信。在多接入的环境中,Hello数据包还用于发现指定路由器DR,通过DR来控制与哪些路由器建立交互关系。两个OSPF路由器建立双向通信这后的第二个步骤是进行数据库的同步,数据库同步是所有链路状态路由协议的最大的共性。在OSPF路由协议中,数据库同步关系仅仅在建立交互关系的路由器之间保持。OSPF的数据库同步是通过OSPF数据库描述数据包(Database Description Packets)来进行的。OSPF路由器周期性地产生数据库描述数据包,该数据包是有序的,即附带有序列号,并将这些数据包对相邻路由器广播。相邻路由器可以根据数据库描述数据包的序列号与自身数据库的数据作比较,若发现接收到的数据比数据库内的数据序列号大,则相邻路由器会针对序列号较大的数据发出请求,并用请求得到的数据来更新其链路状态数据库。我们可以将OSPF相邻路由器从发送Hello数据包,建立数据库同步至建立完全的OSPF交互关系的过程分成几个不同的状态,分别为:Down:这是OSPF建立交互关系的初始化状态,表示在一定时间之内没有接收到从某一相邻路由器发送来的信息。在非广播性的网络环境内,OSPF路由器还可能对处于Down状态的路由器发送Hello数据包。Attempt:该状态仅在NBMA环境,例如帧中继、X.25或ATM环境中有效,表示在一定时间内没有接收到某一相邻路由器的信息,但是OSPF路由器仍必须通过以一个较低的频率向该相邻路由器发送Hello数据包来保持联系。Init:在该状态时,OSPF路由器已经接收到相邻路由器发送来的Hello数据包,但自身的IP地址并没有出现在该Hello数据包内,也就是说,双方的双向通信还没有建立起来。2-Way:这个状态可以说是建立交互方式真正的开始步骤。在这个状态,路由器看到自身已经处于相邻路由器的Hello数据包内,双向通信已经建立。指定路由器及备份指定路由器的选择正是在这个状态完成的。在这个状态,OSPF路由器还可以根据其中的一个路由器是否指定路由器或是根据链路是否点对点或虚拟链路来决定是否建立交互关系。Exstart:这个状态是建立交互状态的第一个步骤。在这个状态,路由器要决定用于数据交换的初始的数据库描述数据包的序列号,以保证路由器得到的永远是最新的链路状态信息。同时,在这个状态路由器还必须决定路由器之间的主备关系,处于主控地位的路由器会向处于备份地位的路由器请求链路状态信息。Exchange:在这个状态,路由器向相邻的OSPF路由器发送数据库描述数据包来交换链路状态信息,每一个数据包都有一个数据包序列号。在这个状态,路由器还有可能向相邻路由器发送链路状态请求数据包来请求其相应数据。从这个状态开始,我们说OSPF处于Flood状态。Loading:在loading状态,OSPF路由器会就其发现的相邻路由器的新的链路状态数据及自身的已经过期的数据向相邻路由器提出请求,并等待相邻路由器的回答。Full:这是两个OSPF路由器建立交互关系的最后一个状态,在这时,建立起交互关系的路由器之间已经完成了数据库同步的工作,它们的链路状态数据库已经一致。整个建立交互关系的全过程可以用下图来表示:附图 8: OSPF协议的adjacency过程7.3 域间路由前面一节描述了OSPF路由协议的单个区域中的计算过程。在单个OSPF区域中,OSPF路由协议不会产生更多的路由信息。为了与其余区域中的OSPF路由器通讯,该区域的边界路由器会产生一些其它的信息对域内广播,这些附加信息描绘了在同一个AS中的其它区域的路由信息。具体路由信息交换过程如下:在OSPF的定义中,所有的区域都必须与区域0相联,因此每一个区域都必须有一个区域边界路由器与区域0相联,这一个区域边界路由器会将其相联接的区域内部结构数据通过Summary Link广播至区域0,也就是广播至所有其它区域的边界路由器。在这时,与区域0相联的边界路由器上有区域0及其它所有区域的链路状态信息,通过这些信息,这些边界路由器能够计算出至相应目的地的路由,并将这些路由信息广播至与其相联接的区域,以便让该区域内部的路由器找到与区域外部通信的最佳路由。7.4 AS外部路由一个自治域AS的边界路由器会将AS外部路由信息广播至整个AS中除了残域的所有区域。为了使这些AS外部路由信息生效,AS内部的所有的路由器(除残域内的路由器)都必须知道AS边界路由器的位置,该路由信息是由非残域的区域边界路由器对域内广播的,其链路广播数据包的类型为类型4。8.OSPF路由协议验证在OSPF路由协议中,所有的路由信息交换都必须经过验证。在前文所描述的OSPF协议数据包结构中,包含有一个验证域及一个64位长度的验证数据域,用于特定的验证方式的计算。OSPF数据交换的验证是基于每一个区域来定义的,也就是说,当在某一个区域的一个路由器上定义了一种验证方式时,必须在该区域的所有路由器上定义相同的协议验证方式。另外一些与验证相关的参数也可以基于每一个端口来定义,例如当采用单一口令验证时,我们可以对某一区域内部的每一个网络设置不同的口令字。在OSPF路由协议的定义中,初始定义了两种协议验证方式,方式0及方式1,分别介绍如下:验证方式0:采用验证方式0表示OSPF对所交换的路由信息不验证。在OSPF的数据包头内64位的验证数据位可以包含任何数据,OSPF接收到路由数据后对数据包头内的验证数据位不作任何处理。验证方式1:验证方式1为简单口令字验证。这种验证方式是基于一个区域内的每一个网络来定义的,每一个发送至该网络的数据包的包头内都必须具有相同的64位长度的验证数据位,也就是说验证方式1的口令字长度为64bits,或者为8个字符。9.小结前文介绍了OSPF路由协议的概念及该协议的工作原理。OSPF路由协议定义于RFC1247及RFC1583,该协议提供了一个不同的网络通过同一种TCP/IP协议交换网络信息的途径。作为一种链路状态的路由协议,OSPF具备许多优点:快速收敛,支持变长网络屏蔽码,支持CIDR以及地址summary,具有层次化的网络结构,支持路由信息验证等。所有这些特点保证了OSPF路由协议能够被应用到大型的、复杂的网络环境中。Cisco交换机之STP协议简单详解及实验 Cisco交换机之STP协议简单详解及实验 前面的学习中,我们已经掌握通过交换机组网,但是,怎样加强企业网络的可靠性呢?在实际网络环境中,可以通过物理环路解决网络的可靠性,当一跳链路断开或者出现故障,另一条链路任然可以传输数据,但是,在交换网络中,当交换机收到一个未知目的地址的数据帧,交换机会广播出去,这样,在交换网络中,就会产生一个双向广播环,甚至广播风暴,导致交换机死机。本章的STP(Spanning Tree Protocol 生成树协议),它就是在逻辑上断开物理环路,防止产生广播风暴,而一旦正在用的线路出现故障,被逻辑断开的线路又重新接通,继续传输数据。在介绍STP之前,首先回顾一下交换机的工作原理(1)交换机通过学习数据帧中的源MAC地址生成MAC地址表。(2)交换机查看数据帧的目标MAC地址,根据MAC地址表转发数据。(3)如果交换机MAC地址表中没有匹配项,则向除了收到这个数据帧的端口以外的所有端口广播这个数据帧。如果在一个物理环路的网络中,交换机收到一个未知目标地址的数据帧,它会向其他交换机广播,而其他交换机也没有相应的MAC地址对应,又会向除接受端口之外的端口广播,这样,在网络中就产生了双向广播环。一.STP概述 1.STP叫做生成树协议,就是把一个环形的结构改变成一个树形的结构二.STP工作原理 1.生成树算法 (1)选择根网桥(Root Bridge) 选择根网桥的依据是网桥ID(8字节的字段)前2字节为网桥优先级(范围是0-65535,默认值是32768),后6字节是网桥的MAC地址。 (2)选择根端口(Root Ports) 选择根端口的依据按照顺序是: 到根网桥最底的根路径成本 直连的网桥ID最小 端口ID最小 下面是带宽与路径成本的关系链路带宽(Mb/s) 路径成本10 10016 6245 39100 19155 14622 61000 410000 2 端口ID是一个2字节的STP参数,前8位是端口优先级(范围是0-255,默认是128)后8位是端口编号,注意:端口编号不是端口号,但是端口号低的端口,端口编号值也较小。 (3)选择指定端口 选择指定端口的依据是 根路径成本较低 所在交换机的网桥ID值较小 端口ID值较小 (另外:根网桥上的接口都是指定端口)三.BPDU(桥协议数据单元) 1.交换机之间通过BPDU来交换网桥ID,根路径成本等信息 2.BPDU帧利用一个STP组播地址-01-80-c2-00-00-00 3.BPDU有两种类型 (1)配置BPDU,用于生成树计算 (2)拓扑变更通告BPDU,用于通告网络拓扑的变化 4.STP录用BPDU选择根网桥的过程:交换机比较接受到的BPDU报文中的网桥ID与自己的网桥ID哪个更小,如果接受到的BPDU中的网桥ID小于自己的,则用接受到的网桥ID替换现有的网桥ID,并向外转发,这时交换机任然监听来自其他交换机的BPDU,并继续交换,一段时间后,当所有BPDU交换完毕,根网桥也选择出来了。 5.STP利用BPDU确定端口的根路径成本:根网桥发送根路径成本为0的BPDU,其他他交换机接收到根网桥的BPDU后,在根路径成本上添加接收接口的路径成本,然后转发。四.生成树端口的状态 1.转发(Forwarding) 发送和接收用户数据 2.学习(Learning) 构建网桥表 3.侦听(Listening) 构建“活动”拓朴 4.阻塞(Blocking) 只接收BPDU 5.禁用(Disable) 强制关闭五.生成树计时器 1.HELLO时间:网桥发送配置BPDU报文之间的时间间隔(默认为2S) 2.转发延迟:一个交换机端口在Listening和Learning状态所花费的时间间隔(默认各为15秒) 3.最大老化时间:交换机在丢弃BPDU之前存储它所用的时间(默认是20S) 其中,从阻塞到侦听20s 从侦听到学习15s 从学习到转发15s六.Vlan与生成树 1.IEEE的通用生成树(CST)他不考虑vlan,以交换机为单位运行stp,但是结果是某个vlan的数据不能通信 2.cisco的每VLAN生成树(PVST)他是Cisco私有协议,PVST为每个虚拟局域网运行单独的生成树实例 3.Cisco的能兼容CST的PVST(PVST+)七.PVST配置的意义 1.利用PVST实现网络的负载分担 2.配置上行链路,实现备份的上行链路快速恢复 3.配置速端口,使连接终端的端口快速进入到转发状态八.PVST配置实例1, 实验目的: 配置根网桥 配置上行速链路 配置速端口2.实验环境:下载 (26.9 KB)2008-10-16 20:37 3.试验配置过程(1)交换机1上配置STP下载 (85.96 KB)2008-10-16 20:37(2)交换机2上配置STP下载 (78.6 KB)2008-10-16 20:37(3)交换机3上配置上行速链路和速端口下载 (76.61 KB)2008-10-16 20:37(4)交换机4上配置上行速链路和速端口下载 (76.67 KB)2008-10-16 20:37(5)交换机1上配置以太网通道下载 (34.6 KB)2008-10-16 20:37(6)交换机2上配置以太网通道下载 (32.98 KB)2008-10-16 20:37(7)交换机1上使用命令查看STP下载 (35.1 KB)2008-10-16 22:01(8)交换机1上查看以太网通道下载 (12.49 KB)2008-10-16 22:014.试验总结:掌握stp生成树协议 PVST的配置 配置根网桥 配置上行速链路在配置STP过程中有些命令没有用到,下面将列出没有用到的命令,大家可以自己去尝试修改网桥优先级命令:s(config)#spanning-treevlan具体某个vlanpriority优先级(必须是4096的倍数)修改端口成本命令:s(config)#spanning-treevlan 具体某个vlancost成本值修改端口优先级命令:s(config)#spanning-treevlan 具体某个vlanport-priority优先级查看生成树配置命令:s#showspanning-tree查看某个vlan的生成树详细信息命令:s#showspanning-tree vlan vlan-IDdetailVRRP路由协议详解!VRRP将局域网的一组路由器,如图二中的RouterA和RouterB 组织成一个虚拟的路由器。这个虚拟的路由器拥有自己的IP地址192.168.1.3,称为路由器的虚拟IP地址。同时,物理路由器RouterA ,RouterB也有自己的IP地址(如RouterA的IP地址为192.168.1.1,RouterB的IP地址为192.168.1.2)。局域网内的主机仅仅知道这个虚拟路由器的IP地址192.168.1.3,而并不知道备份组内具体路由器的IP地址。在配置时,将局域网主机的默认网关设置为该虚拟路由器的IP地址192.168.1.3.于是,网络内的主机就通过这个虚拟的路由器来与其它网络进行通信,实际的数据处理由备份组内Master 路由器执行。如果备份组内的Master路由器出现故障时,备份组内的其它Backup路由器将会接替成为新的Master,继续向网络内的主机提供路由服务。从而实现网络内的主机不间断地与外部网络进行通信。 VRRP通过多台路由器实现冗余,任何时候只有一台路由器为主路由器,其他的为备份路由器。路由器间的切换对用户是完全透明的,用户不必关心具体过程,只要把缺省路由器设为虚拟路由器的IP地址即可。路由器间的切换过程: VRRP协议采用竞选的方法选择主路由器。比较各台路由器优先级的大小,优先级最大的为主路由器,状态变为Master. 若路由器的优先级相同,则比较网络接口的主IP地址,主IP地址大的就成为主路由器,由它提供实际的路由服务。 主路由器选出后,其它路由器作为备份路由器,并通过主路由器发出的VRRP报文监测主路由器的状态。当主路由器正常工作时,它会每隔一段时间发送一个 VRRP组播报文,以通知备份路由器,主路由器处于正常工作状态。如果组内的备份路由器长时间没有接收到来自主路由器的报文,则将自己状态转为 Master .当组内有多台备份路由器时,重复第1步的竞选过程。通过这样一个过程就会将优先级最大的路由器选成新的主路由器,从而实现VRRP的备份功能。 3 VRRP技术应用于大型园区网络 VRRP技术不但用于上述局域网连接外网的路由器的备份,还广泛用于大型园区网络核心层三层交换机的冗余备份。在大型园区网络中,核心层处于网络的中心,网络之间的大量数据都通过核心层设备进行交换,同时承担不同VLAN之间路由的功能。核心层设备一旦宕机,整个网络即面临瘫痪。因此,在园区网络设计中,核心设备的选择,一方面要求其具有强大的数据交换能力,另一方面要求其具有较高的可靠性,一般选择高端核心三层交换机。同时,为进一步提高核心层的可靠性,避免核心层设备宕机造成整个网络瘫痪,一般在核心层再放置一台设备,作为另一台设备的备份,一旦主用设备整机出现故障,立即切换到备用设备,确保网络核心层的高度可靠性。 核心层三层交换机的切换需要应用VRRP技术。如图3所示(为简便起见,以两层结构的网络为例),为提高网络的可靠性,在网络核心层放置两台三层交换机(S1、S2),接入层二层交换机(SW1、SW2、SWn)分别连接两台核心交换机。在大型园区网络中,为抑制广播信号,提高网络的性能,同时实现网络的安全访问控制,一般根据具体情况将整个网络分成多个不同的VLAN,V LAN中主机的默认网关设置为三层交换机上VLAN的接口地址。VRRP技术实现网络的路由冗余和负载均衡(图三) 图3 VRRP在园区网络中的应用 VRRP协议将网络中两台三层交换机(S1、S2)组成VRRP备份组,针对于网络中每一个VLAN接口,备份组都拥有一个虚拟缺省网关地址。如图以 VLAN3为例,VRRP备份组设置VLAN3的虚拟IP地址(譬如:192.168.3.1),备份组中S1、S2同时分别拥有自己的VLAN3的接口 IP(譬如分别为:192.168.3.2,192.168.3.3),VLAN3内主机的默认网关则设为VRRP备份组VLAN3的虚拟IP地址(192.168.3.1)。VLAN3内的主机通过这个虚拟IP访问VLAN3之外的网络资源,但实际的数据处理有备份组内活动(Master)交换机执行。如果活动交换机发生了故障,VRRP协议将自动由备份交换机(Backup)来替代活动交换机。由于网络内的终端配置了VRRP虚拟网关地址,发生故障时,虚拟交换机没有改变,主机仍然保持连接,网络将不会受到单点故障的影响,这样就很好地解决了网络中核心交换机切换的问题。 4 VRRP用于负载均衡 在VRRP 中,允许一台路由器加入多个备份组,通过多备份组设置可以实现负荷分担。 如图二所示,路由器RouterA作为备份组1的Master路由器,同时又为备份组2 的Backup备份路由器。而路由器RouterB正相反,作为备份组2 的Master,并为备份组1 的Backup备份路由器。一部分主机使用备份组1 的虚拟IP作网关,另一部分主机使用备份组2的虚拟IP作为网关。这样,既达到分担数据流,又实现相互备份的目的。路由器配置(实际IP, RouterA :192.168.1.1/24,RouterB:192.168.1.2/24)备份组1备份组2虚拟IP192.168.1.3192.168.1.4备份组成员Master:RouterA,Backup:RouterBMaster:RouterB,Backup:RouterA局域网主机配置(假如网络有100台主机)PC1PC50PC51PC100IP Address192.168.1.X/24192.168.1.X/24Gateway192.168.1.3192.168.1.4 两台路由器互为备份。在路由器正常时,两台路由器各自分担一部分数据流量;当其中一台路由器出现故障时,另一台路由器就会自动分担起所有数据流量,数据的传输不会受到任何的影响。这样既达到负载均衡,又实现相互备份的目的。 5 结论 对于使用固定网关的网络,当此网关出现故障时,要想将故障对用户的影响降低到最小,VRRP协议无疑是最低价的选择。对于使用多个网关的网络中可以使用VRRP协议让不同的网关之间互相备份,这样既不会增加网络设备,同时又达到了热备份的目的,使网络故障发生时用户的损失降至最低。而且VRRP 是RFC 标准协议,能方便地实现各厂家设备间的互通。正是由于VRRP 具有这些优点,使得它成为建设一个稳定可靠网络所需的有力工具VRRP将局域网的一组路由器,如图二中的RouterA和RouterB 组织成一个虚拟的路由器。这个虚拟的路由器拥有自己的IP地址192.168.1.3,称为路由器的虚拟IP地址。同时,物理路由器RouterA ,RouterB也有自己的IP地址(如RouterA的IP地址为192.168.1.1,RouterB的IP地址为192.168.1.2)。局域网内的主机仅仅知道这个虚拟路由器的IP地址192.168.1.3,而并不知道备份组内具体路由器的IP地址。在配置时,将局域网主机的默认网关设置为该虚拟路由器的IP地址192.168.1.3.于是,网络内的主机就通过这个虚拟的路由器来与其它网络进行通信,实际的数据处理由备份组内Master 路由器执行。如果备份组内的Master路由器出现故障时,备份组内的其它Backup路由器将会接替成为新的Master,继续向网络内的主机提供路由服务。从而实现网络内的主机不间断地与外部网络进行通信。 VRRP通过多台路由器实现冗余,任何时候只有一台路由器为主路由器,其他的为备份路由器。路由器间的切换对用户是完全透明的,用户不必关心具体过程,只要把缺省路由器设为虚拟路由器的IP地址即可。路由器间的切换过程: VRRP协议采用竞选的方法选择主路由器。比较各台路由器优先级的大小,优先级最大的为主路由器,状态变为Master. 若路由器的优先级相同,则比较网络接口的主IP地址,主IP地址大的就成为主路由器,由它提供实际的路由服务。 主路由器选出后,其它路由器作为备份路由器,并通过主路由器发出的VRRP报文监测主路由器的状态。当主路由器正常工作时,它会每隔一段时间发送一个 VRRP组播报文,以通知备份路由器,主路由器处于正常工作状态。如果组内的备份路由器长时间没有接收到来自主路由器的报文,则将自己状态转为 Master .当组内有多台备份路由器时,重复第1步的竞选过程。通过这样一个过程就会将优先级最大的路由器选成新的主路由器,从而实现VRRP的备份功能。 3 VRRP技术应用于大型园区网络 VRRP技术不但用于上述局域网连接外网的路由器的备份,还广泛用于大型园区网络核心层三层交换机的冗余备份。在大型园区网络中,核心层处于网络的中心,网络之间的大量数据都通过核心层设备进行交换,同时承担不同VLAN之间路由的功能。核心层设备一旦宕机,整个网络即面临瘫痪。因此,在园区网络设计中,核心设备的选择,一方面要求其具有强大的数据交换能力,另一方面要求其具有较高的可靠性,一般选择高端核心三层交换机。同时,为进一步提高核心层的可靠性,避免核心层设备宕机造成整个网络瘫痪,一般在核心层再放置一台设备,作为另一台设备的备份,一旦主用设备整机出现故障,立即切换到备用设备,确保网络核心层的高度可靠性。 核心层三层
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 模板表格


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!