1、7.1 7.1 数据通信基础数据通信基础7.2 7.2 路由管理路由管理7.3 7.3 拥塞控制与流量控制拥塞控制与流量控制7.4 7.4 数据交换技术数据交换技术第7章 网络通信管理7.5 7.5 差错控制管理差错控制管理7.6 7.6 网络通信测试技术网络通信测试技术7.1 7.1 数据通信基础数据通信基础 7.1.1 7.1.1 数据通信的基本概念数据通信的基本概念 1. 1.通信的基本概念通信的基本概念 (1)通信 将信息从一个地方传送到另一个地方的过程称为通信。用以实现通信过程的系统称为通信系统。 通信系统的三要素:由信源、传输媒体、信宿三个部份组成,如图7-1所示。 信源通信媒体信
2、宿图7-1 通信过程的三要素示意图 (2)通信系统的基本构成 通信系统的构成是在图7-1的基础上增加信号转换器而成。如图7-2所示。信源通信媒体信宿信号转换器信号反转器图7-2 通信系统结构图 2. 2.模拟通信系统和数字通信系统模拟通信系统和数字通信系统 在通信过程中,采用离散的电信号表示的数据称为数字数据,而采用连续电波表示数据称为模拟数据。 (1)模拟通信系统 在数据通信系统中,两台数据终端设备之间的传输信号为模拟信号的通信系统称为模拟通信系统。 典型的模拟通信系统是以电话线为传输介质的通信系统,如图7-3所示:发送端非电/电转换器调制器器解调器器电/非电转换器接收端图7-3 摸拟通信系
3、统结构图 (2)数字通信系统 数字通信系统是数据通信系统中处于数据终端设备(DTC)之间的信号为数字信号的通信系统。 数字通信系统的通信模型有四种:其一是收发双方都是数字信号,在这种情况下不需要转换就可直接进行传输,如图7-4a。其二是收发双方都是模拟信号,发送方要进行A/D(即模/数)转换,而接收方要进行D/A(即数/模)转换,如图7-4b。第三种情况是,发送方是模拟信号而接收方是数字信号,只需在发送方进行(A/D)转换即可,如图7-4c。第四种情况是,发送方是数字信号,而接收方是模拟信号,发送方不用转换而直接发送,但在接收方要进行(D/A)转换,如图7-4d。 特点: 模拟通信系统通过信道
4、的信号频谱较窄,抗干扰能力差。 数据通信系统通过信道的信号频谱较宽,抗干扰性强,是数据通信中普采用的通信方式。 3. 3. 通信线路连接方式通信线路连接方式 (1) 点对点的连接 点对点的连接分为两种:其一是两台计算机直接相连,如图7-5a所示。其二是通过MODEM连接,如图7-5b所示。 R图7-5a 直接连接方式 R图7-5b 通过Modem连接方式 (2)分支式连接 分支式连接是一条通信线路(通常使用的是电话线)连接两个以上终端节点进行通信的方式。 第一种连接方式是通过集中器与多台主机相连,如图7-6a所示。第二种情况是通过MODEM与多台主机相连,如图7-6b所示。R图7-6a 若干台
5、计算机共用一条通信电缆上网图7-6b 每台计算机各用一台MODEM上网 7.1.2 7.1.2 数据通信的基本原理数据通信的基本原理 在计算机网络通信过程中,我们需要重点解决的问题是: l 信息表示方法,即信息的编码方法; l 如何有效地保证信息正确无误码地传输,即妥善解决通信双方发送和接收的同步的问题; l 当传输的信息有错时,如何控制和校验,即纠错、校验问题; l 如何解决高效地利用通信线路传送信息,即多路复用问题。 1. 1.信息交换代码信息交换代码 网络数据通信中所指的信息通常又称为报文,它由数据信息、控制信息、收发双方的地址信息和校验码组成。 (1) 五单位代码(Baudot码) 早
6、期的通信技术是基于五单位的Baudot码进行的,即用五位二进行制表示一位数字、字母或符号。这种Baudot代码被普遍用于电报通信,适用于50波特以下的传输线路。Baudot代码如表7-1所示。 从表中可看出,五单位Baudot代码共有52个,为了节省编码长度,同一个代码即可表示字母,又可表示数字,主要是由其前导“字母/数字”换档控制字符来区分。 例如: 编码11011 11101 11001 10000 01010 00001 表示数字“12345”,而编码11111 11101 11001 10000 01010 00001 表示字母“QWERT”。 (2)七单位代码 七单位代码有两种:一种
7、是由国际化标准化组织ISO和国际电报是电话咨询委员会CCITT提出的“CCITT七单位字母代码编码”,另一种也是由国际化标准化组织ISO和国际电报是电话咨询委员会CCITT提出的美国信息交换标准码“ASCII码”。 CCITT码与ASCII码十分接近,除个别字符的编码有所区别以外,大多数字符的代码是一样的。CCITT码在早期的通信中用得较多,在现代通信中普遍使用的是ASCII码。 CCITT和ASCII码与Baudot码的区别在于,Baudot代码中一个编码可表示两个符号,一个是字母符号,一个是数字和标点符号。而CCITT和ASCII码则是一个编码唯一表示一个符号。例如:编码“41H”表示字母
8、“A”,编码“31H”表示数字“1”。有关CCITT码和ASCII码请参阅有关资料。 2. 2.数据传输方式数据传输方式 (1)基带传输:基带是指调制前原始信号所占用的频带,它是原始信号所固有的基本频带,在信道中直接传送基带信号称为基带传输(未经调制的原始信号称为基带信号)。进行基带传输的系统称为基带传输系统。局域网中的通信大都采用的是基带传输,但也可采用频带传输。 (2)频带传输:将基带信号经调制变换后进行传输的过程称为频带传输。 如:远程拨号网络,收发双方都通过Modem将信号进行调制或解调,信号是以模拟信号在公用电话线上进行传输的。 (3)宽带传输:早期的宽带是指比音频带宽(14.4Kb
9、)更宽的频带,信号用宽带进行的传输称为宽带传输,这样的系统称宽带传输系统。在现代网络通信系统中,宽带是指100Mpbs以上带宽的频带。 3. 3. 同步传输与异步传输同步传输与异步传输 (1)同步传输 同步传输采用的是按位同步的同步技术进行信息传输,在同步传输过程中,每个数据位之间都有一个固定的时间间隔,这个时间间隔由通信系统中心的数字时钟确定。在同步传输过程中,不要求每一个字符都有起始位和结束位,而是若干个字符共用一个起始位和一个结束位,即在一个起始位和一个结束位之间可传输若干个字符。在通信过程中,要求接收端和发送端的数据序列在时间上必须取得同步。 (2)异步传输 异步传输又叫异步通信,采用
10、的是群同步技术进行信息传输。 异步传输的原理是:将信息分成若干等长的小组(“群”),每次传输一个“群”的信息码,具体过程是,每一“群”为8个或5个信息位,每个“群”前面放一个起始码,后面放一个停止码,一般来说,起始码为一个比特,通常为“0”,而停止码为12比特,通常用“1”表示,当无数据发送时,就连续地发送“1”码,收端收到第1个“0”后,就开始接收数据。 同步传输要求时间同步,异步传输要求时间同步。 4. 4.多路复用技术多路复用技术 所谓多路复用技术,指的是多个用户同时使用一条通信线路收发数据的技术。多路复用在技术上分为复合、传输、分离三个过程。如图7-7所示。S1Sn信道S1Sn复合器分
11、离器接收端发送端图7-7 多路复用技术的工作原理图 (1)频分复用技术FDM(Frequency Division Multiplexing) 将一个有足够带宽的信道划分成若干等宽的子频段(每一个频段称为一个子信道),事先固定将每一个频段分配给一个用户专用。即一个频段只传送一个用户的信息。值得注意的是,在划分子信道时,两个子信道之间要预留一定的间隙,以防止相邻的两个子信道的信号相互重叠和干扰,造成信号的失真。如图7-8所示。图7-8 频分复用技术示意图 (2) 时分复用技术TDM(Time Division Multiplexing) 频分复用技术存在的问题是,随着用户数量的增加,子信道频带越
12、来越窄,会影响数据量大的用户的传输效率,为解决这一问题,引入了时分复用技术。 时分复用技术是在通信信道上形成一种时间上的逻辑子信道。信道不再细分,而是作为一整条通道来使用,每一个用户预先分配一个等宽的时间片,任一个用户是在固定的时间片中进行信息的传输。如下图所示。 (3) 排队复用技术QDM(Queueing Division Multiplexing) 排队复用技术是按先来先服务的原则进行分配信道,用户要发送的数据先放在缓冲区中排队,先来的用户数据传输完后才能进行排在后面的数据传输。如下图所示。排队复用技术的优点是,临时将整个信道都分配给一个用户使用,在传输数据时效率较高,再则是这种技术实现
13、比较简单。缺点是用户等待的时间过长,尤其是对信息量不大的用户,有时为了发送几十个字节的数据而要等待几十分钟甚至几个小时的时间。在现代网络系统中,很少使用排队复用技术。 (4)波分复用技术WDM(Wavelength Division Multiplexing) 在传统的时分复用(TDM)光纤传输系统中,支路信号的复用和解复用、发送和接收单元、时钟提取电路、信号再生器都工作于高速复用信号速率上,使得这些器件的速率和带宽日益成为提高传输速率的瓶颈,因为微电子大规模集成芯片对于运行速率有一定的限度。另一方面,光纤线路传输性能也会遇到困难,这是因为单模光纤本身的传输容量虽有很大潜力,但每一光载波如传输
14、过高的数字速率,将受到光纤色散和偏振模式色散以及光纤接头引起反射等因素的限制,所以按照目前技术情况,TDM适合的数字速率高到2.5G较为合适,最高不宜超过10G,所以波分复用方式已成为提高光纤传输容量的必然选择。 波分复用就是不同波长的光载波同在一根光纤上传输,它的本质就是光纤上频分复用FDM技术,每个通路通过频域的分割实现,每个通路占用一部份光纤的带宽。 目前,波分复用系统分为两类:集成系统和开放系统。 集成系统就是SDH(Synchronous Digital Hierarchy:同步数字系列)终端具有满足G.692的光接口;标准的光波长、满足长距离的光源。整个系统构造比较简单,但是不能直
15、接接纳老SDH系统和不同厂家的系统。 开放系统就是波分复用器前端加入波长转移单元OUT,将当前SDH的G.957接口波长转换为G.692的标准波长光接口。可以接纳过去的老SDH系统,并实现不同厂家互联,但OUT的引入可能对系统性能带来一定的负面影响。 (5)异步频分复用技术和异步时分复用技术 前述的“频分复用技术”和“时分复用技术”分别称为“同步频分复用技术”和“同步时分复用技术”。在这两种复用技术中,子信道和时间片是固定分配给用户的。由于所有用户不可能任何时刻都在传输信息,当用户不传输信息时,该子信道(或时间片)就空着,而又不能给其他用户使用,从而会造成子信道或时间片的浪费。为了解决这一问题
16、,引入了“异步频分复用技术”和“异步时分复用技术”。 异步频分复用技术 异步频分复用技术(又称随机分配信道技术),它是将一个信道划分成有限的m 个子信道,事先并不将任何子信道进行分配,而是在系统运行过程中,动态地将这m个子信道分配给n个(mn)用户使用。 具体实现过程是,用户在传输信息前,先向系统申请一个子信道,系统收到用户申请后,立即在空闲的子信道中分配一个给该用户使用(若无空闲的子信道,用户必须等待),当用户信息传输完毕,系统及时收回该子信道,以备其他用户使用。 异步时分复用技术 与异步频分复用技术相似,异步时分复用技术是将系统时间划分成有限的m 个时间片,事先并不将任何时间片进行分配,而
17、是在系统运行过程中,动态地将这m个时间片分配给n个(mn)用户使用。 具体实现过程是,用户在传输信息前,先向系统申请一个时间片,系统收到用户申请后,立即在空闲的时间片中分配一个给该用户使用(若无空闲的时间片,用户必须等待),当用户信息传输完毕,系统及时收回该时间片,以备其他用户使用。 例如:机场的跑道与飞机的起飞与降落,不可能为每一架飞机修一条跑道,因为在一天24小时中,一架飞机在一个机场的起落时间是有限的,也就几分钟。因此,任何一个机场的跑道数量是有限的,而起落飞机的数量在理论上可以是无限的。机场在一架飞机起落前,才确定该架次飞机使用那一条跑道。 7.1.3 7.1.3 网络通信技术网络通信
18、技术 1. 1.数据通信过程数据通信过程 数据从信源端发送,到被信宿接收的整个过程称为网络的通信过程。数据的通信过程通常包括五个阶段。 l 建立通信线路; l 建立数据传输链路; l 数据传输; l 数据传输结束; l 拆线。 2. 2.网络通信方式网络通信方式 (1)单工通信: 传输的信息始终是只有一个方向的通信方式。如广播、会议通知等。 (2)半双工通信:通信双方都可收发信息,但同一时刻只能有一方传输信息,当一方在传输信息时,另一方只能接收信息。如对讲机、基带以太网络的信息交换等。 (3)全双工通信:两个端点可以同时进行收发信息。如电话机、实时聊天等。 3. 3.数据传输方式数据传输方式
19、(1)并行数据传输:速度快,可同时传8位、16位或24位,但成本高,只适应于短距离传输。 (2)串行数据传输:只能一位一位地传输,速度慢,但成本低,普遍用于网络远距离通信。 并行数据传输一般只应用于计算机内部及其外围设备(如打印机、移动磁盘)的连接,串行数据传输一般应用于计算机与计算机之间的远程连接。7.2 7.2 路由管理路由管理 7.2.1 7.2.1 路由的基本概念路由的基本概念 路由器可将数据包从一个数据链路中继到另一个数据链路。为路由器可将数据包从一个数据链路中继到另一个数据链路。为了中转数据包,路由器使用了两个基本功能:路由选择和数据交换。了中转数据包,路由器使用了两个基本功能:路
20、由选择和数据交换。 数据交换功能能让路由器从一个接口接收数据包并将其转发到数据交换功能能让路由器从一个接口接收数据包并将其转发到下一个接口。路由选择功能使得路由器能选择最佳的接口(路径)下一个接口。路由选择功能使得路由器能选择最佳的接口(路径)来转发数据包。来转发数据包。 当一台主机应用需要向位于不同网络的目的地发送数据包时,当一台主机应用需要向位于不同网络的目的地发送数据包时,路由器从一个接口接收数据链路帧。网络层检查包头决定目的网络,路由器从一个接口接收数据链路帧。网络层检查包头决定目的网络,然后查看路由表。路由表把网络与输出接口联系起来。原始的帧被然后查看路由表。路由表把网络与输出接口联
21、系起来。原始的帧被剥去并丢失。数据包再次封装进所选接口的数据链路帧,并放进发剥去并丢失。数据包再次封装进所选接口的数据链路帧,并放进发送到该路径的下一跳的队列中。送到该路径的下一跳的队列中。 7.2.2 7.2.2 静态路由策略静态路由策略 静态路由是最简单形式的路由。静态路由就是对路由器直接控静态路由是最简单形式的路由。静态路由就是对路由器直接控制通信的路径用手工进行配置。换一种说法就是,静态路由表只能制通信的路径用手工进行配置。换一种说法就是,静态路由表只能是网络管理员手工进行配置的,无论何时网络拓扑发生变化需要改是网络管理员手工进行配置的,无论何时网络拓扑发生变化需要改变路由表时,网络管
22、理员必须手动更新静态路由表。变路由表时,网络管理员必须手动更新静态路由表。 有两种方法处理静态路由:有两种方法处理静态路由: 第一种方法是建造定义哪些网络块应该被路由穿过某个接口的第一种方法是建造定义哪些网络块应该被路由穿过某个接口的路由表。例如:有一台与路由表。例如:有一台与A A、B B、C C三家三家ISPISP相连接的路由器,可以配相连接的路由器,可以配置成将去往置成将去往10.10.0.110.10.0.1的流量通过的流量通过ISPISP的的A A接口,而将接口,而将去去往往10.100.0.110.100.0.1网络块的流量路由网络块的流量路由通过通过ISPISP的的B B接口。接
23、口。 建造静态路由的第二种方法是为路由器创建网关。该网关可以建造静态路由的第二种方法是为路由器创建网关。该网关可以配置成所有流量均通过它,或者将该网关和其他静态路由相结合使配置成所有流量均通过它,或者将该网关和其他静态路由相结合使用,以便它只在目的地用,以便它只在目的地IPIP地址没有静态路由时使用。地址没有静态路由时使用。 静态路由接口和网关都需要直接连接向路由器。如果路由器不静态路由接口和网关都需要直接连接向路由器。如果路由器不能到达接口它将丢弃该数据包。能到达接口它将丢弃该数据包。 采用静态路由技术能有效地阻止攻击,能防止有害信息损害路采用静态路由技术能有效地阻止攻击,能防止有害信息损害
24、路由表,但也会带来一个新的问题是,网络在只有一台默认路由器时由表,但也会带来一个新的问题是,网络在只有一台默认路由器时更容易受到更容易受到DoS(DoS(拒绝服务拒绝服务) )攻击。如果连向不同的骨干并且使用动攻击。如果连向不同的骨干并且使用动态路由协议以最佳路径路由流量,攻击者发起的大型攻击会更加困态路由协议以最佳路径路由流量,攻击者发起的大型攻击会更加困难,因为进出网络有多条通道。但若攻击者具有淹没网络的足够带难,因为进出网络有多条通道。但若攻击者具有淹没网络的足够带宽,即是有多条连接其作用也是没有多大意义。从这个意义上来说,宽,即是有多条连接其作用也是没有多大意义。从这个意义上来说,采用
25、具有安全防范措施的动态路由协议比静态路由协议会更加安全。采用具有安全防范措施的动态路由协议比静态路由协议会更加安全。 7.2.3 7.2.3 动态路由策略动态路由策略 动态路由的主要技术是其路由表是动态的,在动态路由协议下动态路由的主要技术是其路由表是动态的,在动态路由协议下工作。工作。 动态路由在网络运行过程中能自动生成和更新,除了涉及少量动态路由在网络运行过程中能自动生成和更新,除了涉及少量的手工干预外,动态路由协议能提供更好的性能,因为数据可经过的手工干预外,动态路由协议能提供更好的性能,因为数据可经过最佳路径进行传输。最佳路径进行传输。 动态路由协议启动后,路由表会通过路由进程自动更新
26、,这种动态路由协议启动后,路由表会通过路由进程自动更新,这种更新发生在从网络上收到新的消息的时候。在路由器间相互交换动更新发生在从网络上收到新的消息的时候。在路由器间相互交换动态路由表的变更,这也是路由器更新路由的一部份。态路由表的变更,这也是路由器更新路由的一部份。 动态路由协议有下述两大功能:动态路由协议有下述两大功能: l l维持路由表;维持路由表; l l定时发布路由更新给其他路由器。定时发布路由更新给其他路由器。 动态路由协议依靠路由协议来共享认识。路由选择协议定义了动态路由协议依靠路由协议来共享认识。路由选择协议定义了一整套规则,路由器用它来与相邻路由器通信。例如:一个路由器一整套
27、规则,路由器用它来与相邻路由器通信。例如:一个路由器是这样描述的:是这样描述的: l l更新如何被发送;更新如何被发送; l l更新中包括发哪些内容;更新中包括发哪些内容; l l何时发送数据;何时发送数据; l l如何定位更新的接收。如何定位更新的接收。 7.2.4 7.2.4 网络路由选择网络路由选择 1. 1.两种路由选择协议两种路由选择协议 网络的路由选择是由路由选择网络的路由选择是由路由选择协议完成的,当前,网络的路由选择技术主要协议完成的,当前,网络的路由选择技术主要有两种路由选择协议,即被动路由协议(有两种路由选择协议,即被动路由协议(routed protocolrouted
28、protocol)与路由选择协议)与路由选择协议(routing protocolrouting protocol)。)。 被动路由协议(被动路由协议(routed protocolrouted protocol):任何网络协议在它的网络层地址提供):任何网络协议在它的网络层地址提供足够的信息,使得数据包能基于地址方案把数据包从一台主机送到另一台主机。足够的信息,使得数据包能基于地址方案把数据包从一台主机送到另一台主机。被动路由协议定义了数据包内这部份区域的格式和用法。数据包通常从一个端系被动路由协议定义了数据包内这部份区域的格式和用法。数据包通常从一个端系统传送到另一个端系统。统传送到另一个
29、端系统。IPIP是被动路由协议的一个例子。是被动路由协议的一个例子。 路由选择协议(路由选择协议(routing protocolrouting protocol):一种通过提供共享路由信息的机制来):一种通过提供共享路由信息的机制来支持被动路由协议的协议。路由选择协议的消息在路由器之间传递。路由选择协支持被动路由协议的协议。路由选择协议的消息在路由器之间传递。路由选择协议允许通过路由器间的通信来更新和维护路由表。议允许通过路由器间的通信来更新和维护路由表。TCP/IPTCP/IP中路由选择协议的典型中路由选择协议的典型技术有:路由信息协议(技术有:路由信息协议(RIPRIP)、内部网关路由协
30、议()、内部网关路由协议(IGRPIGRP)、增强的内部网关)、增强的内部网关路由协议(路由协议(Enhanced IGRPEnhanced IGRP)和开放最短路径优先协议()和开放最短路径优先协议(OSPFOSPF)等。)等。 2.IP 2.IP路由选择协议路由选择协议 路由协议工作在路由协议工作在OSIOSI模型的第三层(网络层),路由器能使模型的第三层(网络层),路由器能使用用IPIP路由选择协议的一个特定的协议来完成路由功能。路由选择协议的一个特定的协议来完成路由功能。IPIP路由选路由选择协议有:择协议有: l lRIPRIP:距离矢量路由选择协议;:距离矢量路由选择协议; l l
31、IGRPIGRP:CiscoCisco距离矢量路由选择协议;距离矢量路由选择协议; l lOSPFOSPF:链路路由选择协议;:链路路由选择协议; l lEIGRPEIGRP:负载平衡路由选择协议。:负载平衡路由选择协议。 3. 3.路由选择协议的分类路由选择协议的分类 路由选择协议共分为三大类型:路由选择协议共分为三大类型: l l距离矢量路由选择协议(距离矢量路由选择协议(distance vector routing distance vector routing protocolprotocol):距离矢量路由选择协议决定了到网络上任一链路的距):距离矢量路由选择协议决定了到网络上任一
32、链路的距离和方向(矢量)。离和方向(矢量)。 l l链路状态路由选择协议(链路状态路由选择协议(link state routing protocollink state routing protocol):):链路状态路由选择协议又称为最短路优先协议链路状态路由选择协议又称为最短路优先协议SPFSPF(shortest path shortest path firstfirst),近似地重现了整个网络的精确拓扑结构。),近似地重现了整个网络的精确拓扑结构。 l l混合均衡协议(混合均衡协议(balanced hybrid protocolbalanced hybrid protocol):综
33、合了上):综合了上述距离矢量路由选择协议和链路状态路由选择协议的基本功能和特述距离矢量路由选择协议和链路状态路由选择协议的基本功能和特点的路由选择协议。点的路由选择协议。 4. 4.收敛收敛 路由选择协议用于决定从特定源到特定目的地的最佳路由,这路由选择协议用于决定从特定源到特定目的地的最佳路由,这大多是动态路由协议。无论何时由于路由扩大、网络重组或网络故大多是动态路由协议。无论何时由于路由扩大、网络重组或网络故障造成网络拓扑发生变化时,网络认识也必须发生相应的变化。网障造成网络拓扑发生变化时,网络认识也必须发生相应的变化。网络认识必须反映精确的、持续的新拓扑视图。生成这种精确的、持络认识必须
34、反映精确的、持续的新拓扑视图。生成这种精确的、持续的新拓扑图称为续的新拓扑图称为“收敛收敛”。 当网络中的所有路由器都操作同一网络认识时,我们则说这个当网络中的所有路由器都操作同一网络认识时,我们则说这个网络是收敛的。快速收敛是可取的网络特征,因为它节省了时间。网络是收敛的。快速收敛是可取的网络特征,因为它节省了时间。如果路由器使用过时的网络认识来做那些不正确的或无用的路由决如果路由器使用过时的网络认识来做那些不正确的或无用的路由决定,则会大量的浪费时间。定,则会大量的浪费时间。 5. 5.距离矢量路由选择协议距离矢量路由选择协议 距离矢量路由选择协议(距离矢量路由选择协议(distance
35、vector routing protocoldistance vector routing protocol)通过阶段性地从一个路由器到另一个路由器拷贝路由表来实现路由通过阶段性地从一个路由器到另一个路由器拷贝路由表来实现路由选择。每个路由器从它相邻的路由器获取一张路由表。如选择。每个路由器从它相邻的路由器获取一张路由表。如下下图所示。图所示。 例如:如果路由器例如:如果路由器A A经过路由器经过路由器B B和和C C向路由器向路由器D D发送消息,首先发送消息,首先路由器路由器B B从路由器从路由器A A那里收到该条消息及一张路由表,并把这一消息那里收到该条消息及一张路由表,并把这一消息和
36、路由表传送给与它相邻的节点和路由表传送给与它相邻的节点C C。再由。再由C C传给传给D D,如图,如图7-117-11所示。所示。路由协议就是这样按部就班地过程发生在所有相邻的路由器之间。路由协议就是这样按部就班地过程发生在所有相邻的路由器之间。路由表路由表路由表路由表 6. 6.链路选择协议链路选择协议 路由选择协议的第二个协议是链路状态路由选择协议路由选择协议的第二个协议是链路状态路由选择协议LSPLSP(link state protocollink state protocol)。链路状态选择协议维持一个拓扑信息)。链路状态选择协议维持一个拓扑信息的复杂数据库。距离矢量协议没有关于远
37、端网络的特定信息并且不的复杂数据库。距离矢量协议没有关于远端网络的特定信息并且不了解远端路由器,路由选择协议使用了链路状态通告了解远端路由器,路由选择协议使用了链路状态通告LSALSA(Link Link State AdvertisementState Advertisement)、一个布局数据库、)、一个布局数据库、SPFSPF协议、协议、SPFSPF结果树结果树以及关于路径和每个网络的端口的路由表。以及关于路径和每个网络的端口的路由表。 7.2.5 RIP 7.2.5 RIP协议协议 RIP RIP是(是(Routing Information ProtocolRouting Infor
38、mation Protocol:路由信息协议)的缩写,是一种典型的、:路由信息协议)的缩写,是一种典型的、应用广泛的路由选择协议。它是依靠物理网络的广播功能来迅速交换路由选择信息。应用广泛的路由选择协议。它是依靠物理网络的广播功能来迅速交换路由选择信息。 RIP RIP协议把参与通信的机器分为主动式和被动式两种方式:主动方式路由器能主动向协议把参与通信的机器分为主动式和被动式两种方式:主动方式路由器能主动向其他路由器通告其路由,而被动路由器不能通告路由,只能接收由主动路由器广播的通其他路由器通告其路由,而被动路由器不能通告路由,只能接收由主动路由器广播的通告并在此基础上更新其自身的路由。值得注
39、意的是,只有路由器才能以主动方式使用告并在此基础上更新其自身的路由。值得注意的是,只有路由器才能以主动方式使用RIPRIP,而主机只能以被动方式使用而主机只能以被动方式使用RIPRIP。 以主动方式运行以主动方式运行RIPRIP的路由器每隔的路由器每隔30s 30s 就向网络广播一个路由选择更新报文,该报文就向网络广播一个路由选择更新报文,该报文包含了路由器当前的路由选择数据库中的信息。每个更新报文由序偶构成,每个序偶由包含了路由器当前的路由选择数据库中的信息。每个更新报文由序偶构成,每个序偶由一个一个IPIP网络地址和一个代表到该网络距离的整数构成。网络地址和一个代表到该网络距离的整数构成。
40、RIPRIP使用跳数量(使用跳数量(hop count hop count metricmetric)来衡量到达目的站的距离。在)来衡量到达目的站的距离。在RIPRIP度量标准中,路由器到它直接相连的网络的距度量标准中,路由器到它直接相连的网络的距离为离为1 1跳(其他路由选择协议把直接连接定义为跳(其他路由选择协议把直接连接定义为0 0跳),到通过另一个路由器可达的网络跳),到通过另一个路由器可达的网络的距离为的距离为2 2跳,其余以此类推。因此,从给定源站到目的站的一条路径的跳数对应于数据跳,其余以此类推。因此,从给定源站到目的站的一条路径的跳数对应于数据报沿该路径经过的路由器数。显然,使
41、用跳数作为衡量最短路径并不定会得到最佳效果。报沿该路径经过的路由器数。显然,使用跳数作为衡量最短路径并不定会得到最佳效果。例如,一条经过三个以太网的高速线路(跳数为例如,一条经过三个以太网的高速线路(跳数为3 3)的路径,可能比经过两条低速串行线)的路径,可能比经过两条低速串行线路(跳数为路(跳数为2 2)的路径要快得多。为了弥补传输技术上的差距,许多)的路径要快得多。为了弥补传输技术上的差距,许多RIPRIP实现允许网络管实现允许网络管理员在通告低速网络路由时手工配置较高的跳数。理员在通告低速网络路由时手工配置较高的跳数。 RIP RIP必须处理底层算法的三类错误:必须处理底层算法的三类错误
42、: (1) (1)由于算法不能明确地检测出路由选择环路,由于算法不能明确地检测出路由选择环路,RIPRIP或者假定参或者假定参与者是可信任的,或者采取一定的预防措施。与者是可信任的,或者采取一定的预防措施。 (2)RIP (2)RIP必须对可能的距离使用一个较小的最大值来防止出现不必须对可能的距离使用一个较小的最大值来防止出现不稳定的现象(稳定的现象(RIPRIP使用的值是使用的值是1616)。因此,对于那些实际跳数值在)。因此,对于那些实际跳数值在1616左右的互联网,管理员或者把它划分为若干部份,或者采用其他左右的互联网,管理员或者把它划分为若干部份,或者采用其他的协议。的协议。 (3)
43、(3)路由选择更新报文在网络之间的传播速度很慢,路由选择更新报文在网络之间的传播速度很慢,RIPRIP使用的使用的矢量距离算法会产生慢收敛或无限计数问题,从而引发不一致性。矢量距离算法会产生慢收敛或无限计数问题,从而引发不一致性。选择一个小的值(选择一个小的值(1616),可以限制慢收敛问题,但问题得不到彻底),可以限制慢收敛问题,但问题得不到彻底的解决。的解决。 7.2.6 OSPF 7.2.6 OSPF协议协议 1. 1. 最短路径优先协议(最短路径优先协议(SPFSPF) 最短路径优先最短路径优先SPFSPF(Shortest Path FirstShortest Path First)
44、协议通常称为链路)协议通常称为链路 状态算法。状态算法。SPFSPF算法要求每一个参与工作的路由器都要具有全部的算法要求每一个参与工作的路由器都要具有全部的拓扑结构信息。最简单的描述拓扑结构的思路就是让每个路由器都拓扑结构信息。最简单的描述拓扑结构的思路就是让每个路由器都拥有一张标出所有路由器及其所连接的网络拓扑图。用理论术语拥有一张标出所有路由器及其所连接的网络拓扑图。用理论术语(图论)来表示就是用(图论)来表示就是用“点点”代表路由器,用代表路由器,用“线线”代表与路由器相连代表与路由器相连的网络。两点之间有一条连线(链接)的条件是:当且仅当对应于的网络。两点之间有一条连线(链接)的条件是
45、:当且仅当对应于这两点的路由器能直接通信(即不再经过其他的路由器)。这两点的路由器能直接通信(即不再经过其他的路由器)。 参与参与SPFSPF算法的路由器不需要传输包含目的站列表的报文,而算法的路由器不需要传输包含目的站列表的报文,而是要履行两项任务。首先它必须负责检测所有相邻路由器的状态,是要履行两项任务。首先它必须负责检测所有相邻路由器的状态,从图论的观点来说,两个路由器共享一条链接时称为从图论的观点来说,两个路由器共享一条链接时称为“相邻相邻”,若用,若用网络术语进行描述,两个相邻的路由器连接到同一个网络中。其次,网络术语进行描述,两个相邻的路由器连接到同一个网络中。其次,它要周期性地向
46、其他路由器传输链路状态。它要周期性地向其他路由器传输链路状态。 为了检测与之相连接的相邻的路由器状态,路由器周期性地发送短报为了检测与之相连接的相邻的路由器状态,路由器周期性地发送短报文,询问其邻站是否可到达且处于活跃状态。如果邻站回答了,说明两者文,询问其邻站是否可到达且处于活跃状态。如果邻站回答了,说明两者之间的链接是正常的,否则就认为链接有故障。为了通知其他所有的路由之间的链接是正常的,否则就认为链接有故障。为了通知其他所有的路由器,每个路由器周期性地广播列出该路由器的各个链路状态的报文。这种器,每个路由器周期性地广播列出该路由器的各个链路状态的报文。这种状态报文并不指出路由,它只报告某
47、一对路由器之间是否能够通信。运行状态报文并不指出路由,它只报告某一对路由器之间是否能够通信。运行于路由器之上的协议软件负责把各个链接的状态报告分发给各个参与算法于路由器之上的协议软件负责把各个链接的状态报告分发给各个参与算法的路由器。的路由器。 链路状态报文到达之后,路由器使用其中的信息把链接标为正常或故链路状态报文到达之后,路由器使用其中的信息把链接标为正常或故障,更新自己的互联网映射图。链接状态变化之后,路由器使用著名的障,更新自己的互联网映射图。链接状态变化之后,路由器使用著名的DijkstraDijkstra最短路径算法,对相应的映射图求最短路径。最短路径算法,对相应的映射图求最短路径
48、。DijkstraDijkstra算法可以算法可以从单个源点开始计算到其他所有目的地最短路径。从单个源点开始计算到其他所有目的地最短路径。 SPF SPF算法的主要优点之一就是每个路由器使用同样的原始状态数据,不算法的主要优点之一就是每个路由器使用同样的原始状态数据,不依赖中间机器的计算,而是独立地计算出路由,所以客观存在确保了路由依赖中间机器的计算,而是独立地计算出路由,所以客观存在确保了路由算法的收敛性。最后,由于链路状态报文仅携带与单个路由器直接相连的算法的收敛性。最后,由于链路状态报文仅携带与单个路由器直接相连的链接的信息,报文的长短独立于互联网中的网络。因此链接的信息,报文的长短独立
49、于互联网中的网络。因此SPFSPF算法的性能优于算法的性能优于矢量距离算法,更适用于大规模互联网。矢量距离算法,更适用于大规模互联网。 2. 2.开放性开放性SPFSPF协议(协议(OSPFOSPF) OSPF OSPF协议即开放协议即开放SPFSPF协议,除具有协议,除具有SPFSPF协议的所有功能外,还增加了以下功能:协议的所有功能外,还增加了以下功能: l l公开发布了各种规范;公开发布了各种规范; l l包含服务类型路由;包含服务类型路由; l l提供了负载均衡功能;提供了负载均衡功能; l l为了允许网点上的网络扩展并易于管理,为了允许网点上的网络扩展并易于管理,OSPFOSPF允许
50、网点把网络和路由器划允许网点把网络和路由器划分为若干称为区域的子网;分为若干称为区域的子网; l l路由器上交换的任何信息都是可以进行鉴别的。路由器上交换的任何信息都是可以进行鉴别的。OSPFOSPF支持各种鉴别机制,支持各种鉴别机制,而且允许各个区域之间的鉴别机制互不相同;而且允许各个区域之间的鉴别机制互不相同; l lOSPFOSPF支持特定于主机的路由、子网路由和特定于网络的路由;支持特定于主机的路由、子网路由和特定于网络的路由; l lOSPFOSPF扩展了扩展了SPFSPF算法,以适应多点接入的网络;算法,以适应多点接入的网络; l l为了获得最大的灵活性,为了获得最大的灵活性,OS