路由选择原理

路 由 选 择 原 理

1.1路由选择基础知识
  路由是将对象从一个地方转达发到另一个地方的一个中继过程

  学习和维持网络拓朴结构知识的机制被认为是路由功能。渡越数据流经路由器进入接口

  穿过路由器被移送到外出接口的过程,是另一项单独的功能,被认为是交换/转发功能。路由设备必须同时具有路由和交换的功能才可以作为一台有效的中继设备。

  为了进行路由,路由器必须知道下面三项内容:

  l、路由器必须确定它是否激活了对该协议组的支持;
  2、路由器必须知道目的地网络;
  3、路由器必须知道哪个外出接口是到达目的地的最佳路。

  路由选择协议通过度量值来决定到达目的地的最佳路径。小度量值代表优选的路径;如果两条或更多路径都有一个相同的小度量值,那么所有这些路径将被平等地分享。通过多条路径分流数据流量被称为到目的地的负载均衡。

  执行路由操作所需要的信息被包含在路由器的路由表中,它们由一个或多个路由选择协议进程生成。路由表由多个路由条目组成,每个条目指明了以下内容:

  *学习该路由所用的机制(动态或手动)
  *逻辑目的地
  *管理距离
  *度量值(它是度量一条路径的总"总开销"的一个尺度)
  *去往目的地下一HOP的中继设备(路由器)的地址;
  *路由信息的新旧程度
  *与要去往目的地网络相关联的接口
  使用命令SHOW IP ROUTE可看到以上内容

  缺省管理距离的预先分配原则是:人工设置的路由条目优先级高于动态学到路由条目,度量值算法复杂的路由选择协议优先级高于度量值算法简单的路由选择协议。

  路由器一般选择具有最小度量值的路径;CISCO路由器的IP环境中如果同时出现了多条度量值最低且相同的路径,那么在这多条路径上将启用负载均衡,C ISCO默认支持4条相同度量值的路径,通过使用"maximum-paths"命令可以认CISCO路由器支持最多达6条相同度量值路径。

  RIP是一种用在小到中型TCP/IP网络中采用的路由选择协议,它采用跳数作为度量值,它的负载均衡功能是缺省启用的,RIP决定最佳路径时是不考虑带宽的!!!

  IGRP是一种用在中到大型TCP/IP网络中采用的路由选择协议,它采用复合的度量值,它考虑了带宽、延迟、可靠性、负载和最大传输单元(M TU),但缺省地使用了带宽和延时值。IGRP也能进行负载均衡。

  在路由器启动之后,它立刻试图与其相邻路由设备建立路由关系。该初始通信的目的是为了识别相邻设备,并且开始进行通信并学习网络相结构。建立相邻关系的方法和对拓朴结构的初始学习随路由选择协议的不同而不同。

  路由选择协议会交换定期的HELLO消息或定期的路由更新数据包,以维持相邻设备间进行着通信。

  在了解了网络拓朴结构,且路由表中已包含了到已知地网络的最佳路径后,向这些目的地的数据转发就可以开始了。


1.2 路由选择协议

有类别路由选择(classful routing)概述

  不随各网络地址发送子网掩码信息的路由选择协议被称为有类别的选择协议(RIPv1、IGRP)
  当采用有类别路由选择协议时,属于同一主类网络(A类、B类和C类)有所有子网络都必须使用同一子网掩码。运行有类别路由选择协议的路由选择协议的路由器将执行下面工作的一项以确定该路由型网络部分:

  *如果路由更新信息是关于在接收接口上所配的同一主类网络的,路由器将采用配置在接口上的子网掩码;
  *如果路由更新是关于在接收接口上所配的不同主类的网络的,路由器将根据其所属地址类别采用缺省的子网掩码。

  有类别归纳路由的生成是由有类别路由选择协议自动处理的


无类别路由选择(classless routing)概述

  无类别路由选择协议包括开放最短路径优先(OSPF)、EIGRP、RIPV2、中间系统到中间系统(IS-IS)和边界网关协议版本4(BGP4)。

  在同一主类网络中使用不同的掩码长度被称为可变长度的子网掩码(VLSM)。无类别路由选择路由选择协议支持VLSM,因此可以更为有效的设置子网掩码,以满足不同子网对不同主机数目的需求,可以更充分的利用主机地址。

  多数距离矢量型路由选择协议产生的定期的、例行的路由更新只传输到直接相连的路由设备。

  在纯距离矢量型路由环境中,路由更新包括一个完整的路由表,通过接收相邻设备的全路由表,路由能够核查所有已知路由,然后根据所接收到的更新信息修改本地路由表。解决路由问题的距离矢量法有时被称为" 传闻路由(routing by rumor)"

  CISCO IOS支持几种距离矢量型路由选择协议,凶手RIPv1、RIPv2和IGRP。CISCO也直持EIGRP,它是一种高级的距离矢量型路由选择协议。

  路由选择协议通常与协议组的网络层关联

  大多数距离矢量型路由选择协议采用贝乐曼-福特(Bellman-Ford)算法来计算路由。EIGRP是一种高级的距离矢量路由协议,它采用弥散修正算法(D UAL)


Cisco的IP距离矢量型路由选择协议的比较

  特征RIPv1RIPv2IGRPEIGRP
  计数到无限XXX
  横向距离XXXX
  抑制计时器XXX
  触发式更新,路由反向 XXXX
  负载均衡-等成本路径XXXX
  负载均衡-非等成本路径XX
  VLSM支持XX
  路由算法贝尔曼-福特贝尔曼-福特贝尔曼-福特DUAL
  度量值跳数跳数复合复合
  跳数限制1515100100
  易扩展性小小中大
  注:IGRP和EIGRP的跳数限制缺省为100,但是可以配置到最大为255。

  链路状态型路由选择协议只当网络拓朴结构发生变化时才生成路由更新数据包。当链路状态发生变化时,检测到这一变化的设备就生成一个关于该链路(路由)的链路状态通告(L SA)。随后LSA通过一个特殊的多目组播地址被传播给所有相邻设备。每台路由设备都会保留LSA拷贝,并向其相邻设备转发该LSA(这个过程变称为扩散f looding)然后更新其拓朴结构数据库(这是一个包含网络所有链路状态信息表)。LSA扩散被用于确保所有路由设备都能了解到这个变化,这样它们就能够更新它们的数据,并生成一个更新过的、反映新的网络拓朴结构的路由表。


Cisco的链路状态型路由选择协议的比较

  特征OSPFIS-ISEIGRP
  要求体系化拓朴结构XX
  保留对所有可能路由的了解XXX
  路由归纳-人工XXX
  路由归纳-自动X
  事件触发式通告XXX
  负载均衡-等成本路径XXX
  负载均衡-非等成本路径X
  VLSM支持XXX
  路由算法DijkstraIS-ISDUAL
  度量值链路成本(带宽)链路成本(带宽)复合
  跳数限制无1024100
  易扩展性大很大大

  各路由器中的路由进程都必须留有到各可能目的地逻辑网络的无环路单路径,当所有路由表都达到同步,且每个路由表都包含有到各目的地网络的一条可用路由时,网络就达到了收敛状态。收敛是在网络拓朴结构发生变化后,比如增加了新的路由或现有路由的状态发生了变化后,与路由表同步相关联的活动。

  收敛时间是网络中所有路由对当前拓朴结构的认知达到一致所需的时间,网络的大小、所使用的路由选择协议以及众多可配置的计时器都能够影响收敛时间。

  有两种检测的方法:

  *当物理层或数据链路层没能接收到一定数量(通常是3)的连续keepalive消息时,就认为该链路失效。

  *当路由选择协议没能接收到一定数量(通常是3)的连续Hello消息或路由更新或相类似消息时,就认为该链路失效了。

  大多数路由选择协议都具有防止在链路状态转换过程中产生拓朴结构环路用的计时器。 文章录入:csh    责任编辑:csh

(0)

相关推荐

  • 路由选择原理

    路 由 选 择 原 理 1.1路由选择基础知识 路由是将对象从一个地方转达发到另一个地方的一个中继过程 学习和维持网络拓朴结构知识的机制被认为是路由功能.渡越数据流经路由器进入接口 穿过路由器被移送到外出接口的过程,是另一项单独的功能,被认为是交换/转发功能.路由设备必须同时具有路由和交换的功能才可以作为一台有效的中继设备. 为了进行路由,路由器必须知道下面三项内容: l.路由器必须确定它是否激活了对该协议组的支持: 2.路由器必须知道目的地网络: 3.路由器必须知道哪个外出接口是到达目的地的最

  • 路由器原理及路由协议

    本文通过阐述TCP/IP网络中路由器的基本工作原理,介绍了IP路由器的几大功能,给出了静态路由协议和动态路由协议,以及内部网关协议和外部网关协议的概念,同时简要介绍了目前最常见的RIP.OSPF.BGP和BGP-4这几种路由协议,然后描述了路由算法的设计目标和种类,着重介绍了链路状态法和距离向量法.在文章的最后,扼要讲述了新一代路由器的特征. 近十年来,随着计算机网络规模的不断扩大,大型互联网络(如Internet)的迅猛发展,路由技术在网络技术中已逐渐成为关键部分,路由器也随之成为最重要的网络

  • 交换机中的工作原理以及种类的区分

    许多新型的Client/Server应用程序以及多媒体技术的出现,导致了传统 的共享式网络远远不能满足要求,这也就推动了局域网交换机的出现. 1.交换机的定义 局域网交换机拥有许多端口,每个端口有自己的专用带宽,并且可以连接不同的网段.交换机各个端口之间的通信是同时的.并行的,这就大大提高了信息吞吐量.为了进一步提高性能,每个端口还可以只连接一个设备. 为了实现交换机之间的互连或与高档服务器的连接,局域网交换机一般拥有一个或几个高速端口,如100M以太网端口.FDDI端口或155M ATM端口,

  • keepalived对nginx进行高可用搭建及原理详解

    目录 一.Keepalived介绍 二.Keepalived的应用场景 三.Keepalived的工作原理 1 VRRP协议 2 核心组件 3 分层工作 4 工作状态 四.Keepalived使用 1 配置介绍 2 使用keepalived对nginx进行高可用搭建 2.1 环境准备 2.2 nginx软件安装和配置 2.3 Keepalived软件安装 2.4 监听存活脚本 2.5 最终配置文件 2.6 启动主从的Keepalived 2.7 查看VIP是否启动 2.8 测试 五.需要注意的问

  • 从 PageHelper 到 MyBatis Plugin执行概要及实现原理

    目录 一.背景 二.MyBatis 执行概要图 三.MyBatis 核心对象介绍 四.Plugin 实现原理 1.定义 Plugin 2.注册拦截器 3.执行拦截器 4.Plugin 的动态代理 总结 一.背景 在很多业务场景下我们需要去拦截 SQL,达到不入侵原有代码业务处理一些东西,比如:历史记录.分页操作.数据权限过滤操作.SQL 执行时间性能监控等等,这里我们就可以用到 MyBatis 的插件 Plugin.下面我们来了解一下 Plugin 到底是如何工作的. 使用过 MyBatis 框

  • aop的实现原理_动力节点Java学院整理

    面向方面编程(Aspect Oriented Programming,简称AOP)是一种声明式编程(Declarative Programming).声明式编程是和命令式编程(Imperative Programming)相对的概念.我们平时使用的编程语言,比如C++.Java.Ruby.Python等,都属命令式编程.命令式编程的意思是,程序员需要一步步写清楚程序需要如何做什么(How to do What).声明式编程的意思是,程序员不需要一步步告诉程序如何做,只需要告诉程序在哪些地方做什么

  • DOS(bat)字符串替换原理

    把字符串 "c:/test/1" 中的 "/" 全部替换成 "//" 的原理: (假设 "C:/TEST/1" 字符串已存在 VAR 变量中:) C:/WINDOWS>set "var=C:/TEST/1" (将 var 变量中的字符串里 "/" 字符全部替换成 "//") C:/WINDOWS>set "var=%var:/=//%"

  • SQL注入原理与解决方法代码示例

    一.什么是sql注入? 1.什么是sql注入呢? 所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令,比如先前的很多影视网站泄露VIP会员密码大多就是通过WEB表单递交查询字符暴出的,这类表单特别容易受到SQL注入式攻击.当应用程序使用输入内容来构造动态sql语句以访问数据库时,会发生sql注入攻击.如果代码使用存储过程,而这些存储过程作为包含未筛选的用户输入的字符串来传递,也会发生sql注入. 黑客通过SQL注入攻击

  • 浅谈数据库索引的作用及原理

    数据库索引是为了增加查询速度而对表字段附加的一种标识.很多人机械的理解索引的概念,认为增加索引只有好处没有坏处.其实远不是那样的,这里将其介绍尽量详细些. 首先明白为什么索引会增加速度,DB在执行一条Sql语句的时候,默认的方式是根据搜索条件进行全表扫描,遇到匹配条件的就加入搜索结果集合.如果我们对某一字段增加索引,查询时就会先去索引列表中一次定位到特定值的行数,大大减少遍历匹配的行数,所以能明显增加查询的速度.那么在任何时候都应该加索引么?这里有几个反例:1.如果每次都需要取到所有表记录,无论

  • 深入分析jsonp协议原理

    今天在开发联调的过程中,需要跨域的获取数据,因为使用的jquery,当然使用dataType:'jsonp'就能够很easy的解决了. 但是因为当时后端没有支持jsonp来访问,后来他在实现这个功能的时候问了我一句,jsonp形式返回的格式是怎么样子的?我一直以来只知道怎么使用,迷迷糊糊的却没有答上来... 虽然后来解决了,但是对于喜欢解决问题的我,心里却一直耿耿于怀,必须得把这个研究透彻了,于是我开始翻阅资料,看到后面真有种豁然开朗的感觉,于是打算做个笔记与大家分享. JSON和JSONP的区

随机推荐