凌力第2讲网络路由技术高级网络AdvancedNetworks主要内容网络路由技术原理常用路由协议RIPOSPFBGP路由器技术ling@fudan.edu.cn《高级网络》1路由原理⑴ling@fudan.edu.cn《高级网络》2路由Routing为各个网络间的数据交换寻找最佳路径为给定的IP报文提供到指定目的地的转发服务ling@fudan.edu.cn《高级网络》3网关G2IPBG|IPG2MBG|MG2网关G1IPAG|IPG1MAG|MG1A3IPA3MA3A1IPA1MA1A2IPA2MA2报文IPA1MA1报文IPC2MAG报文IPC2MBGC1IPC1MC1C2IPC2MC2报文IPC2MC2路径的多样性ling@fudan.edu.cn《高级网络》4ABCDABAD-DBAC-CBAC-CD-DBAD-DC-CB①我强烈BS不守时!ling@fudan.edu.cn《高级网络》5ABCD街道小街高速街道高速高速AC-CD-DB②走捷径是我的人生哲学!ling@fudan.edu.cn《高级网络》6ABCDAB7Km3Km8Km5Km3Km6Km③远离堵车,我要低碳!ling@fudan.edu.cn《高级网络》7ABCDAC-CB堵塞!堵塞!车流量大④虽然不差钱,节俭是本色!ling@fudan.edu.cn《高级网络》8ABCDAD-DB50¥10¥免费免费免费30¥路由技术思想ling@fudan.edu.cn《高级网络》9路由表ling@fudan.edu.cn《高级网络》10{目的网络地址;下一跳网关地址}IP报文目的IP地址若匹配成功转发…………………………思考:经过路由器后,IP报文的源地址和目的地址如何变化?全网路由与子网路由ling@fudan.edu.cn《高级网络》11(a)(b)可采用A/B/C类地址、子网、超网、AS等技术自治系统AutonomousSystem-AS因特网将整个网络划分为许多较小的自治系统AS一个AS是一个相对独立的网络,其最重要的特点就是AS有权自主地决定在本系统内采用何种路由选择协议一个AS内的所有网络都属于一个行政单位(例如:一个公司、一所大学、一个国家等)来管辖一个AS的所有路由器在本自治系统内都必须是连通的许多小的AS可组成更大的ASling@fudan.edu.cn《高级网络》12路由算法的度量Metric链路长度/跳数带宽/吞吐量/某时段内的通信流量保密要求传播时延/时延抖动缓存被占用的程度/队列长度链路差错率等ling@fudan.edu.cn《高级网络》13路由算法要求ling@fudan.edu.cn《高级网络》14完整性•到达任一结点的报文,都能根据路由信息进行转发,最终到达报文指定的目的地最优性•路由算法具有根据既定策略选择最佳路径的能力简洁性•算法设计简洁,用最少的软件开销,提供最有效的功能,并且尽可能降低时延坚固性•路由算法处于非正常或不可预料的环境时,如:硬件故障、负载过高或操作失误,仍能保持正确运行收敛性•收敛是在最佳路径的判断上所有网关达到一致的过程。收敛慢的路由算法可能造成暂时的路径循环,或导致网络中断灵活性•路由算法可以快速、准确地适应各种网络环境。一条线路发生故障,路由算法应能很快发现故障,并选择另一条最佳路径。但算法结果应保持稳定,不能频繁变化路由算法分类静态路由StaticRouting动态路由DynamicRouting内部网关协议(InteriorGatewayProtocol,IGP)在AS内部范围使用,如:RIP、OSPF,实现域内路由选择(IntradomainRouting)外部网关协议(ExternalGatewayProtocol,EGP)在AS之间使用,如:BGP,实现域间路由选择(InterdomainRouting)ling@fudan.edu.cn《高级网络》15路由协议⑵ling@fudan.edu.cn《高级网络》16RIP路由信息协议RoutingInformationProtocolRFC1058(RIP2-RFC2453)基于距离矢量算法,通过计算抵达目的地的最少距离(跳数)来选取唯一的最佳路径如果路由器与网络直接连接,则定义距离为0,可以进行报文直接交付如果路由器经过n台路由器与目的网络间接连接,则定义距离为n最多为15跳,适用于小规模网络(小型AS)ling@fudan.edu.cn《高级网络》17路由信息ling@fudan.edu.cn《高级网络》18路由器X网络N1网络N2网络N3X3X1X2路由器Y网络N4路由器ZY1Y2Z1Z2网络N5〔X路由表〕N1,0,-N2,0,-N3,0,-N4,1,Y1N5,1,Z1{目的地址,距离度量,下一结点}一跳(1hop)(经过一台路由器)直接交付最短路径定理Bellman-Ford(Ford-Fulkerson)定理若X是A→B最短路径上的结点,则A→X和X→B都是最短路径ling@fudan.edu.cn《高级网络》19AXBRIP算法初始情况下,若结点(路由器)直接连接网络Ni,则记为〔Ni,0,-〕每隔一个固定周期(如30s)与且仅与相邻的路由器交换路由信息当一个结点收到来自相邻结点(设其地址为Xj)的RIP报文(其中包含了Xj的路由表)后,执行以下步骤:①修改RIP报文中的所有记录项,将“下一结点”字段均改为Xj,并将所有“距离”字段的值加1(≤16)②对修改后的每个记录项,分别执行以下步骤:若“目的网络”不在路由表中,则添加该记录项,返回;否则若“下一结点”也相同,则替换原记录项,返回;否则若“距离”值小于路由表中的值,则进行更新,返回③结束若规定时间内未收到相邻结点更新路由信息,则记为不可达(距离值16)ling@fudan.edu.cn《高级网络》20为什么?RIP示例ling@fudan.edu.cn《高级网络》21初始路由表示例网络N1,0,-N2,0,-N3,0,-N4,1,CN5,1,BN1,1,AN2,1,AN3,0,-N5,0,-N6,1,EN1,0,-N2,1,AN3,1,AN4,0,-N6,1,FN1,1,AN2,0,-N3,1,AN4,0,-N6,1,FN3,1,BN4,1,FN5,0,-N6,0,-N1,1,CN2,1,DN4,0,-N5,1,EN6,0,-首次收到相邻的路由表并更新后最终收敛的路由表ABCDEFN1,0,-N2,0,-N3,0,-N3,0,-N5,0,-N1,0,-N4,0,-N2,0,-N4,0,-N5,0,-N6,0,-N4,0,-N6,0,-网络N3N1,0,-N2,0,-N3,0,-N4,1,CN5,1,BN6,2,BN1,1,AN2,1,AN3,0,-N4,2,AN5,0,-N6,1,EN1,0,-N2,1,AN3,1,AN4,0,-N5,2,AN6,1,FN1,1,AN2,0,-N3,1,AN4,0,-N5,2,AN6,1,FN1,2,BN2,2,BN3,1,BN4,1,FN5,0,-N6,0,-N1,1,CN2,1,DN3,2,CN4,0,-N5,1,EN6,0,-A网络N1网络N2C网络N4DB网络N5E网络N6FB→AN3,1,BN5,1,BC→AN1,1,CN4,1,CD→AN2,1,DN4,1,D故障引起的路由更新示例ling@fudan.edu.cn《高级网络》22示例网络故障时路由表B设置为N5不可达ABCDEF网络N3N1,0,-N2,0,-N3,0,-N4,1,CN5,1,BN6,2,BN1,1,AN2,1,AN3,0,-N4,2,AN5,16,-N6,1,EN1,0,-N2,1,AN3,1,AN4,0,-N5,2,AN6,1,FN1,1,AN2,0,-N3,1,AN4,0,-N5,2,AN6,1,FN1,2,BN2,2,BN3,1,BN4,1,FN5,0,-N6,0,-N1,1,CN2,1,DN3,2,CN4,0,-N5,1,EN6,0,-A网络N1网络N2C网络N4DB网络N5E网络N6F中断!B传播A得知N5不可达N1,0,-N2,0,-N3,0,-N4,1,CN5,16,BN6,2,BN1,1,AN2,1,AN3,0,-N4,2,AN5,16,-N6,1,EN1,0,-N2,1,AN3,1,AN4,0,-N5,2,AN6,1,FN1,1,AN2,0,-N3,1,AN4,0,-N5,2,AN6,1,FN1,2,BN2,2,BN3,1,BN4,1,FN5,0,-N6,0,-N1,1,CN2,1,DN3,2,CN4,0,-N5,1,EN6,0,-A传播C和D得知N5不可达N1,0,-N2,0,-N3,0,-N4,1,CN5,16,BN6,2,BN1,1,AN2,1,AN3,0,-N4,2,AN5,16,-N6,1,EN1,0,-N2,1,AN3,1,AN4,0,-N5,16,AN6,1,FN1,1,AN2,0,-N3,1,AN4,0,-N5,16,AN6,1,FN1,2,BN2,2,BN3,1,BN4,1,FN5,0,-N6,0,-N1,1,CN2,1,DN3,2,CN4,0,-N5,1,EN6,0,-F传播C和D得知N5可达N1,0,-N2,0,-N3,0,-N4,1,CN5,16,BN6,2,BN1,1,AN2,1,AN3,0,-N4,2,AN5,16,-N6,1,EN1,0,-N2,1,AN3,1,AN4,0,-N5,2,FN6,1,FN1,1,AN2,0,-N3,1,AN4,0,-N5,2,FN6,1,FN1,2,BN2,2,BN3,1,BN4,1,FN5,0,-N6,0,-N1,1,CN2,1,DN3,2,CN4,0,-N5,1,EN6,0,-最终收敛的路由表N1,0,-N2,0,-N3,0,-N4,1,CN5,3,CN6,2,BN1,1,AN2,1,AN3,0,-N4,2,AN5,4,AN6,1,EN1,0,-N2,1,AN3,1,AN4,0,-N5,2,FN6,1,FN1,1,AN2,0,-N3,1,AN4,0,-N5,2,FN6,1,FN1,2,BN2,2,BN3,1,BN4,1,FN5,0,-N6,0,-N1,1,CN2,1,DN3,2,CN4,0,-N5,1,EN6,0,-极端情况引起路由振荡ling@fudan.edu.cn《高级网络》23网络N3网络N1网络N2AB①A、B原有路由表→N1,0,-故障!N1,1,AN1,16,-②A发现故障,更新路由表→N1,2,B③B发送路由信息(A未到发布周期)④A更新路由表→N1,3,A⑤A发送路由信息←⑥B更新路由表……N1,16,BN1,16,AA、B最终路由表→收敛过程漫长,N1网络故障无法及时反映,引起路由振荡RIP协议采用UDP协议传输,端口号520RIP协议数据单元:ling@fudan.edu.cn《高级网络》24←―――――――――――4byte――――――――――→bit0bit31命令版本号=20x000x004byte报头地址类别(2:IP)路由标记(AS号)20byte路由信息可重复25次网络地址子网掩码下一结点(下一跳路由器地址)距离值命令字段:1:请求路由信息2:响应或未请求主动发送路由信息网络号RIP特点和应用RIP简单而有效,成为路由信息交换的标准之一所有IP路由器均支持RIP协议RIP适合网络状况较单纯和可预测的中小型网络单纯的以跳数作为选路的依据不能充分描述路径特征,可能导致所选的路径不是最优ling@fudan.edu.cn《高级网络》25Internet计算机或子网接入路由器(支持RIP)路由器(支持RIP)接入线路OSPF开放式最短路径优先协议OpenShortestPathFirstOSPF2-RFC2328采用分布式的链路状态协议(LinkStateProtocol)每台OSPF路由器维护一个全网一致的链路