版权归原作者所有,如有侵权,请联系我们

[科普中国]-可达性信息

科学百科
原创
科学百科为用户提供权威科普内容,打造知识科普阵地
收藏

简介

可达性信息简单来说是指一个路由器到目的网络的路由是否可达以及目的网络的路由器运行状态等信息。可达性信息可以从一定程度上反应一个网络状况,路由器可以根据可达性信息动态修改路由路径。根据可达性信息,路由算法可以分为距离向量算法和链接状态算法。

路由路由(routing)就是通过互联的网络把信息从源地址传输到目的地址的活动。网络路由有多种分类,按网络性质可分为多计算机系统路由、 有线网络路由和无线网络路由2。路由发生在OSI网络参考模型中的第三层即网路层。路由引导分组转送,经过一些中间的节点后,到它们最后的目的地。作成硬件的话,则称为路由器。路由通常根据路由表,一个储存到各个目的地的路径的表——来引导分组转送。因此为了有效率的转送分组,建立储存在路由器内存内的路由表是非常重要的。路由与桥接的不同,在于路由假设位址相似的节点距离相近。这使得路由表中的一项纪录可以表示到一群位址的路径。因此,在大型网络中,路由优于桥接,且路由已经成为互联网上寻找路径的最主要方法。较小的网络通常可以手动设定路由表,但较大且拥有复杂拓扑的网络可能常常变化,若要手动建立路由表是不切实际的。尽管如此,大多数的公共交换电话网络(PSTN)仍然使用预先计算好的路由表,在直接连线的路径断线时才使用预备的路径;见公共交换电话网路由。“动态路由”尝试按照由路由协定所携带的资讯来自动建立路由表以解决这个问题,也让网络能够近自主地避免网络断线或失败。

分组交换网络(例如互联网)将资料分割成许多带有完整目的地位址的分组,每个分组单独转送。而电路交换网络(例如公共交换电话网络)同样使用路由来找到一条路径,让接下来的资料能在仅带有部分目的地位址的情况下也能够抵达正确的目的地。

可达性可达性有多种解释:一是基于空间阻隔, 即可达性是克服空间阻隔的难易程度, 如果某一地方到其他地方的空间阻隔大, 则该点的可达性差, 反之可达性好;二是基于机会累积, 即可达性是在单位时间内所能接近的发展机会数量;三是基于空间相互作用, 即可达性是相互作用的潜力。

为了使得网络具有适量的网络可达性,同时为了满足大型互联网资源访问中的访问控制、 安全性和隐私保护等需求,从可达性的角度提出了一个有效的分布式网络安全策略管理方法。尤其是,考虑了安全策略和网络机制之间复杂作用的情况下,解决可达性量化、验证。

可达性的量化:给定一个网络,且已知配置在不同网络和安全设备上所有安全策略,对于每对子网,需要高效计算和简洁地描绘2个子网间传输的所有数据包。为达到这个目标, 首先提出一个考虑大部分影响因素的可达性模型,接着提出基于计算子网间可达性矩阵算法的防火墙决策图。

可达性的验证:基于网络可达性矩阵,将构建一个有效的可达性查询和验证引擎,该引擎允许管理员询问各种各样的问题。此外,还将构建一个网络可达性实时监测系统,监测所有安全策略和网络配置,并且能够验证是否发生了违背全局安全策略的修改3。

路由算法路由选择算法是网络层软件的一部分。若按照其能否随网络的通信量或拓扑自适应地进行调整变化来划分,可分为自适应路由选择算法和非自适应路由选择算法。自适应路由选择算法(动态路由选择算法),由于具有较好地适应网络的变化,因此得到广泛应用。自适应路由选择算法一般分为距离向量算法和链接状态算法。

距离向量算法距离向量算法使用Bellman-Ford算法。对于每一条网络上节点间的路径,算法指定一个“成本”给它们。节点会选择一条总成本(经过路径的所有成本总和)最低的路径,用来把资料从节点甲送到节点乙。此算法非常的简单。当某节点初次启动时,将只知道它的邻居节点(直接连接到该节点的节点)与到该节点的成本。(这些资讯、目的地列表、每个目的地的总成本,以及到某个目的地所必须经过的“下一个节点”,构成路由表,或称距离表。)每个节点定时地将所知,到各个目的地的成本的资讯,送给每个邻居节点。邻居节点则检查这些资讯,并跟所知的资讯做比较;如果到某个目的地的成本比所知的低,则将收到的资讯加入自己的路由表。经过一段时间后,网络上得所有节点将会了解到所有目的地的“下一个节点”与最低的总成本。当某个节点断线时,每个将它当作某条路径的“下一个节点”的节点会将该路由资讯舍弃,再建立新的路由表资讯。接着,他们将这些资讯告诉所有相邻的节点,再找出到所有可抵达的目的地之新路径。此算法让每个路由器维护一张路由表,表中给出了到每个目的地已知的路径和距离。通过与相邻路由器之间周期性地相互交换信息,来更新表中信息。当拓扑结构发生变化时,路由器之间及时地相互通知有关可达性信息4。

链路状态算法链路状态算法的思想是要求网络中所有参与链路状态路由协议的路由器都掌握网络的全部拓扑结构信息,并记录在路由数据库中。链路状态算法中路由数据库实质上是一个网络结构的拓扑图,该拓扑图由一个节点的集合和一个边的集合构成。在网络拓扑图中,结点代表网络中路由器,边代表路由器之间的物理链路。在网络拓扑结构图中,每一条链路上可以附加不同的属性,例如链路的状态、距离或费用等。如果没一个路由器所保存的网络拓扑结构图都是一致的,那么个路由器生成的路由表也是相同的,不存在错误路由或循环路由。链路状态路由算法有三个特征:1.向本自治系统中的所有路由器发送信息。这里使用的方法是洪泛法(Flooding),即路由器通过所有的输出端口向所有的相邻路由器发送信息。而每一个路由器又将此信息发往其所有的相邻的路由器(但不包括刚刚发来信息的那个路由器)。2.发送的信息就是本路由器相邻的所有路由器的链路状态,但这只是路由器所知道的部分信息。所谓“链路状态”就是说明本路由器和那些路由器相邻,以及该链路的“度量”(Metric)。对于OSPF,链路状态的“度量”主要用来表示费用、距离、时延、带宽等。3.只有当链路状态发生改变时,路由器才用洪泛法向所有路由器发送此信息。

链路状态选路算法的工作原理如下 :在参与链路状态选路的路由器集合中,每个路由器都需要通过某种机制来了解自己所连接的链路及其状态。各路由器都能够将其所连接的链路的状态信息通知给网络中的所有其他路由器,这些链路信息包括链路状态、费用以及链路两端的路由器等。链路状态信息的通过链路状态分组(LSP)来向整个网络发布。一个LSP通常包含源路由器的标识符、相邻路由器的标识符,以及而知之间链路的费用。每一个LSP都将被网络中的所有的路由器接收,并用于建立网络整体的统一拓扑数据库。由于网络中所有的路由器都发送LSP,经过一段时间以后,每一个路由器都保持了一张完整的网络拓扑图,再在这个拓扑图上,利用最短通路算法(例如Dijkstra算法等),路由器就可以计算出从任何源点到任何目的地的通路。这样,每一个路由器都能够利用通路最短的原则建立一个以本路由器为根、分支到所有其他路由器的生成树,依据这个生成树就可以很容易地计算出本路由器的路由表5。