当前位置:文档之家› 11 BGP路由协议

11 BGP路由协议

DA000011 BGP路由协议 ISSUE2.0 错误!未找到引用源。错误!未找到引用源。BGP的报文和状态机边界网关协议

1.1 报文种类

BGP报文种类

●BGP报文有四种类型:

→Open:打招呼“你好,跟我交个朋友吧!”

→KeepAlive:我还活着呢,别不理我

→Update:有新闻......

→Notification:我不跟你玩了!

EGP 内部网关协议

BGP 控制路由划分边界

BGP 采用的TCP路由协议

Ospf 采用的是ipv4

Ospf 的端口号是89

BGP的端口号是179

运行两个层次之间的

IBGP LOOPBACK

EBGP 物理接口

BGP有4种类型的报文,分别为OPEN、UPDATE、NOTIFICATION和KEEPALIVE。

BGP对等体间通过发送OPEN报文来交换各自的版本、自治系统号、保持时间、BGP标识符等信息,进行协商。

UPDATE报文携带的是路由更新信息。其中包括撤销路由信息和可达路由信息及其路径属性。

当BGP检测到差错(连接中断、协商出错、报文差错等)时,发送NOTIFICATION 报文,关闭同对等体的连接。

KEEPALIVE报文在BGP对等体间周期地发送,以确保连接保持有效。

OPEN报文主要用于建立邻居(BGP对等体)关系,它是BGP路由器之间的初始握手消息,应该发生在任何通告消息之前。其他在收到OPEN消息之后,即以KEEPALIVE消息作为响应。一旦握手成功,则这些BGP邻居就可以进行UPDATE(更新)、KEEPALIVE(保持激活)以及NOTIFICATION (通知)等消息的交换操作。

DA000011 BGP路由协议 ISSUE2.0 错误!未找到引用源。错误!未找到引用源。

1.2 报文内容及格式

BGP报文头

BGP报文的格式是一样的,都是”报文头+报文体“的格式,下面

给出的是BGP报文头:

Marker(16 byte)

Length(2 byte)Type(1 byte)

BGP报文头的格式如图所示,每行的宽度为4个字节。

BGP 是发现控制路由协议

Marker 鉴权信息:16 字节,全1。这个标记的作用主要是用来检测BGP对等体之间的同步是否丢失,并对进来的BGP消息进行验证。

Length 消息的长度:2 字节,指示整个消息的长度,包括头标长度,最小的BGP消息长度是19字节(Keepalive报文),最大的长度是4096字节。

Type 消息的类型:1 字节,指示报文类型,如OPEN、UPDATE报文等。

1 :OPEN

2 :UPDATE

3 :NOTIFICATION

4 :KEEPALIVE

Open报文

Open报文是由报文头加如下结构构成的。

Vision

My Autonomous System

Hold Time

BGP Identifier

Optional Paramenters

Length

Optional Paramenters

Version :(1字节)发端BGP版本号

My Autonomous System :(2字节无符号整数)本地AS号

Hold Time :(2字节无符号整数)发端建议的保持时间 BGP Identifier :(4字节)发端的路由器标识符

Optional parameters Len :(1字节)可选的参数的长度

Optional Parameters :(变长)可选的参数

消息的开始部分包括BGP的版本号和发送方的自治系统编号。接下来是保持时间(HOLD TIME)字段,这是发送方提供建议的保持定时器的设定秒数。保持定时器规定了BGP邻居认为发送方信息有效的时间长度。再下一个字段是BGP标识(BGP ID),也就是BGP发送方的标识。该值是在BGP对等体之间进行握手操作的过程中确定的,并且在每个本地接口及每个BGP对等体之间是保持不变的。

DA000011 BGP路由协议 ISSUE2.0 错误!未找到引用源。错误!未找到引用源。

KeepAlive报文

KeepAlive报文只有报文头。

Marker(16 byte)

Length(2 byte)Type(1 byte)

KeepAlive 报文主要用于对等体路由器间的运行状态以及链路的可用性确认。KeepAlive 报文的组成只包括一个BGP数据报头。KeepAlive 消息在对等路由器间的交换频度以保证对方保持定时器不超时为限。

当一台路由器与其邻居建立BGP连接之后,将以Keepalive-interval设定的时间间隔周期性地向对等体发送Keepalive 报文,表明该连接是否还可保持。

缺省情况下,发送Keepalive 的时间间隔为 60 秒。

Update报文

Update报文由报文头加如下结构构成。

Unfeasible Routes Length

Withdrawn Routes

Path Attribute Length

Path Attribute

Network Layer Reachability Information

Unfeasible Routes Len :(2字节无符号整数)不可达路由长度

Withdrawn Routes :(变长)撤消路由

Path Attribute Len :(2字节无符号整数)路径属性长

Path Attributes :(变长)路径属性(以下详细说明)

Network Layer Reachability Information :(变长)网络可达信息(目标)

其中撤消路由和目标地址的表示方法为一 的二元组。length一个字节,指示地址前缀的长度。prefix为地址前缀,长度1至4字节。

UPDATE 报文是BGP系统中最重要的信息,用于在同伴之间交换路由信息,它最多由三部分构成:不可达路由(unreachable)、路径属性(path attributes)、网络可达性信息(NLRI,network layer reachability information)。

UPDATE 消息可以向BGP对等体通告一条路由,也可以撤消多条“行不通”的路由。不可达路由字段包括一个所撤消路由的IP地址前缀列表。路径属性字段是一个路径属性的列表,包括:属性类型、属性长度和属性值等。网络可达字段包括了BGP路由器所知道的且可到达的IP地址前缀列表。

一个UPDATE 消息一次只能通告一个路由,但它可以携带多个路径属性。

一个UPDATE 消息一次也可通告多条路由,但它的路径属性必须相同。

DA000011 BGP路由协议 ISSUE2.0 错误!未找到引用源。错误!未找到引用源。一个UPDATE 消息可以同时列出多个被撤消的路由。

Notification 报文

Notification 报文由报文头加如下结构构成。

Data

Error Code Error Subcode

消息头错

1OPEN 消息错

2UPDATE 消息错

3保持时间超时

4状态机错

5退出

错误类型

6错误代码

Notification 报文主要在发生错误或对等体连接被关闭的情况下使用,该消息携带各种错误代码(如定时器超时等),包括错误代码、辅助错误代码及错误信息。 Errorcode :(1字节) 错误代码。 Errsubcode :(1字节) 辅助错误代码。。

Data :(变长) 依赖于不同的错误代码和辅助错误代码。用于诊断错误原因。

DA000011 BGP 路由协议 ISSUE2.0

错误!未找到引用源。错误!未找到引用源。

1.3 BGP 协议的状态机

BGP 协议的状态机

Active

Open-sent

Open-confirm

Established

Idle

Connect

Connect-Retry timer expiry

TCP connection fails

Connect-Retry timer expiry

Start

Others

TCP connection fails

Error

Error

Error

KeepAlive timer expiry

KeepAlive packet received

1. KeepAlive timer expiry

2. Update received

3. KeepAlive received

Correct OPEN packet received

TCP connection setup

TCP connection setup

Others

BGP 协议有限状态机有六个状态,它们之间的转换过程示意了BGP 邻居关系建立的过程。首先是Idle 状态,BGP 协议 一旦Start ,状态机就进入Connect 状态 ,在Connect 状态 ,如果Connect- Retry 定时器超时,BGP 状态机会停留在Connect 状态 ,同时, BGP 试图建立TCP 连接,如果TCP 连接建立失败,BGP 状态机进入Active 状态。 如果TCP 连接建立成功,BGP 状态机就直接进入OpenSent 状态。在Active 状态,如果TCP 连接依然不能建立起来,那么BGP 状态机就会一直停留在Active 状态,直到TCP 连接建立成功,才会进入OpenSent 状态。在OpenSent 状态 ,BGP 一旦收到了一个正确的Open 报文,就会进入OpenConfirm 状态。在OpenConfirm 状态 ,如果KeepAlive 定时器超时,BGP 状态机就会停留在OpenConfirm 状态。直到BGP 收到KeepAlive 报文,BGP 状态机才会进入Established 状态。 这时BGP 连接

才算建立起来。

另外,在除Idle 状态以外的其它五个状态出现任何Error 的时候,BGP 状态机就会退回到Idle 状态。

Idle (空闲):Idle 是BGP 连接的第一个状态,在空闲状态,BGP 在等待一个启动事件,启动事件出现以后,BGP 初始化资源,复位连接重试计时器(Connect-Retry ),发起一条TCP 连接,同时转入Connect (连接)状态。

Connect (连接):在Connect 状态,BGP 发起第一个TCP 连接,如果 连接重试计时器(Connect-Retry )超时,就重新发起TCP 连接,并继续保持在Connect 状态,如果TCP 连接成功,就转入OpenSent 状态,如果TCP 连接失败,就转入Active 状态。

Active(活跃):在Active状态,BGP总是在试图建立TCP 连接,如果连接重试计时器(Connect-Retry)超时,就退回到Connect 状态,如果TCP 连接成功,就转入OpenSent 状态,如果TCP 连接失败,就继续保持在Active状态,并继续发起TCP连接。

OpenSent(打开消息已发送):在OpenSent 状态,TCP连接已经建立,BGP也已经发送了第一个Open报文,剩下的工作,BGP就在等待其对等体发送Open 报文。并对收到的Open报文进行正确性检查,如果有错误,系统就会发送一条出错通知消息并退回到Idle状态,如果没有错误,BGP就开始发送Keepalive 报文,并复位Keepalive 计时器,开始计时。同时转入OpenConfirm 状态。

OpenConfirm(打开消息确认)状态:在OpenConfirm状态,BGP等待一个Keepalive 报文,同时复位保持计时器,如果收到了一个Keepalive 报文,就转入Established 阶段,BGP邻居关系就建立起来了。如果TCP连接中断,就退回到Idle 状态。

Established(连接已建立):在Established 状态,BGP 邻居关系已经建立,这时,BGP将和它的邻居们交换Update 报文,同时复位保持计时器。

DA000011 BGP路由协议 ISSUE2.0 错误!未找到引用源。错误!未找到引用源。

1.4 BGP协议中消息的应用

BGP协议中消息的应用

●通过TCP建立BGP连接时,发送open消息

●连接建立后,如果有路由需要发送或路由变化时,发送

UPDATE消息通告对端路由信息

●稳定后此时要定时发送KEEPALIVE消息以保持BGP连接的有

效性

●当本地BGP在运行中发现错误时,要发送NOTIFICATION消息

通告BGP对端

BGP使用TCP 建立连接,本地监听端口为179。和TCP建立相同,BGP连接的建立也要经过一系列的对话和握手。TCP通过握手协商通告其端口等参数,BGP的握手协商的参数有:BGP版本、BGP连接保持时间、本地的路由器标识(Router ID)、授权信息等。这些信息都在Open 消息中体现。

BGP 连接建立后,如果有路由需要发送则发送Update 消息通告对端路由信息。Update消息主要用来通告路由信息,包括失效(撤消)路由。Update 消息发布路由时,还要指定此路由的路由属性,用以帮助对端BGP协议选择最佳的路由。关于路由属性在BGP选择路由时的应用,参见BGP协议路由属性的应用部分。

在本地BGP路由变化时,也使用Update 消息修正对端BGP的路由表。

经过一段时间的路由信息交换后,本地BGP和对端BGP都无新路由通告,趋于稳定了。此时要定时发送KEEPALIVE消息以保持BGP连接的有效性。对于本地BGP,如果在超过保持时间的时间内,还未收到任何对端BGP消息,就认为此BGP连接已经无效,将此BGP连接断开。

当本地BGP在运行中发现错误时,要发送NOTIFY消息通告BGP对端。如对端BGP版本本地不支持,本地BGP收到了结构非法的Update 消息等。本地BGP退出BGP连接时也要发送NOTIFICATION 消息。BGP收到NOTIFICATION消息后,要作相应处理。

第2章BGP路由属性

2.1 路由属性概述

对于企业和服务供应商所关心的问题,如:如何阻止我的私有网络不被通告出去?如何对来自某个邻居路由器的路由更新进行过滤?如何确定我是使用这条链路而不是另外一条?通过使用路由属性,BGP 给出了对这些问题的答案。

BGP路由属性是一套参数,它对特定的路由进行了进一步的描述,使得BGP能够对路由进行过滤和选择。在配置路由策略时我们将广泛地使用路由属性,但是不是所有路由属性都要被用上。

事实上,路由属性被分为以下几类:

必遵属性:在路由更新数据报文中必须存在的路由属性,这种属性域在BGP 路由信息中有着不可替代的作用,如果缺少必遵属性,路由信息就会出错。如AS-Path 就是必遵属性,BGP用它来避免路由环路,没有它路由就可能出问题。

可选属性:它是可选的,不一定存在于路由更新数据报文中,我们设置它完全是根据需要。如MED属性,我们就用它来控制选路。

过渡属性:具有AS间可传递性的属性就是过渡属性,过渡属性的域值可以被传递到其他AS中去并继续起作用。如Origin属性,路由信息的起源一旦确定,域值会一直存在,无论此路由信息被传到哪个AS中去。

DA000011 BGP路由协议 ISSUE2.0 第2章错误!未找到引用源。非过渡属性:只在本地起作用,出了自治系统,域值就恢复成缺省值。如Local-preference 。以下列出几种常用属性的情况:

每个属性都有特定的含义并可以灵活的运用,使得BGP的功能十分强大。

BGP属性可以扩展到256种。

2.2 常见BGP路由属性

常见BGP路由属性

1、Origin

2、AS-Path

3、Next hop

4、MED

5、Local-Preference

6、Atomic-Aggregate

7、Aggregator

8、Community 9、Originator-ID

10、Cluster-List

11、Destination Pref(MCI)

12、Advertiser (Baynet)

13、Rcid-Path (Baynet)

14、MP_Reach_NLRI

15、MP_Unreach_NLRI

16、Extended_Communities

Origin 起点属性:定义路径信息的来源,标记一条路由是怎样成为BGP路由的。如IGP、EGP、Incomplete等。必遵过度

As-Path AS 路径属性:是路由经过的AS 的序列,即列出在到达所通告的网络之前所经过的AS 的清单。BGP发言者将自己的AS前置到接收到的AS 路径的头部,它可以防止路由循环,并用于路由的过滤和选择。必遵过度

Next hop 下一跳属性:包含到达更新消息所列网络的下一跳边界路由器的IP地址。BGP的下一跳与IGP有所不同,它可以是通告此路由的对等体的地址,如EBGP,这同IGP是相同的。而在其它情况下,BGP使用第三方的下一跳,如IBGP对从EBGP对等体获得的下一跳不加改变的在自治系统内传递;在多路访问媒体上,BGP以路由的实际来源为下一跳,即使它不是BGP对等体。必遵过度

MED (Multi-Exit-Discriminators)属性:当某个AS有多个入口时,可以用MED属性来帮助其外部的邻居路由器选择一个较好的入口路径。一条路由的MED值越小,其优先级越高。可选非过度

Local-Preference 本地优先属性:本地优先属性用于在自治系统内优选到达某一个目的地的路由。反映了BGP发言人对每个外部路由的偏好程度。本地优先属性值越大,路由的优选程度就越高。可选非过度

DA000011 BGP路由协议 ISSUE2.0 第2章错误!未找到引用源。

Community 团体属性:团体属性标识了一组具有相同特征的路由信息,与它所在的IP子网和自治系统无关。公认的团体属性值有:NO-EXPORT、NO-ADVERTISE、LOCAL-AS 和INTERNET。必遵非过度

2.2.1 ORIGIN属性

起点(Origin)属性

●一般的,具体的实现按如下方式决定一条路由的Origin属性

→某条路由是直接而具体的注入到BGP路由表中的,则origin属性为

IGP

→路由是通过EGP得到的,则origin属性为EGP

→其他情形下,Origin属性都为Incomplete

起点属性是一个必遵过渡属性,它指示路由更新的起源。BGP允许三种类型的起源:

BGP在其路由判断过程中会考虑起点属性来判断多条路由之间的优先级。具体来说,BGP优先选用具有最小起点属性值的路由,即:IGP 优先于EGP,EGP优先于INCOMPLETE。我们可以手工配置某条路由的起点属性。

一般情况下:

1)BGP 把聚合路由和用直接注入到BGP路由表的具体路由看成是AS内部的,起点类型设置为IGP。

2)BGP把通过其它IGP协议引入的路由起点类型设置为Incomplete。

3)BGP把通过EGP得到的路由的起点类型设置为 EGP。

在其它因素相同的情况下,按IGP、EGP、Incomplete 的顺序选择路由。

DA000011 BGP 路由协议 ISSUE2.0

第2章 错误!未找到引用源。

2.2.2 AS-PATH 属性

AS 路径(AS-Path )属性

D(18.0.0.0/8)

AS200

AS300

AS400

AS100

AS500

RTA RTB

30.0.0.1

30.0.0.2

D,dl 400 300 200

D,d2 500 200

D,d1 400 300 200>D,d2 500 200

AS-Path 属性也是一个必遵属性,它是路由到达某个目的地所经过的所有AS 号码的序列。BGP 使用AS 路径属性作为路由更新(更新数据包)的一部分来确保在Internet 上的一个无环路拓扑结构。BGP 不会接受AS 路径属性中包含的本AS 自治系统号的路由,因为此路由已经被本自治系统处理过了,从而避免了生成路由环路的可能。为此,BGP 在向EBGP 对等体通告一条路由时,要把自己的AS 号加入到AS 路径属性中,以记录此路由通过的AS 区域信息。

同时,AS 路径属性也在影响路由选择。在其它因素相同的情况下,选择AS 路径较短的路由。如胶片所示,AS200内的网络D18.0.0.0/8经AS200、AS300、AS400到达AS100的路径为d1(400 300 200),经AS200、AS500到达AS100的路径为d2(500 200),这时BGP 优先选择较短的路径d2。

注:路由的AS-Path 域在记录AS-number 时,总是把新的AS-numbe 放在前面,如上图,路由先经过AS200,记录:d2(200);路由再经过AS500,记录:d2(500 200)。

我们可以通过加入伪AS 号码的方法来增加路径长度,从而影响路径选择。例如,在胶片所示网络中,我们可以在RTA 上配置在它将路由D 18.0.0.0/8发往30.0.0.2时,将其AS Path 列表再加上两个自治系统号200、200,这样当这条路由被传递到RT 胶片中的最终路由器时,其AS Path 列表则为:d2(500 200 200 200),这样d2的AS Path 就比d1的要长了,所以最终路由器就会认为d1为较优的路由了。

2.2.3 下一跳属性

下一跳(Next Hop )属性

18.0.0.0/8

20.0.0.0/8

RTA

RTC

RTB

RTD

19.0.0.0/8

21.0.0.2

21.0.0.1

10.0.0.2

10.0.0.3

10.0.0.1

AS100

AS200

IBGP

IBGP

EBGP

RTB

可经下一跳10.0.0.2到达18.0.0.0/8可经下一跳10.0.0.3到达20.0.0.0/8

RTA

可经下一跳10.0.0.2到达18.0.0.0/8可经下一跳10.0.0.3到达20.0.0.0/8可经下一跳21.0.0.1到达19.0.0.0/8

RTC

可经下一跳10.0.0.1到达19.0.0.0/8可经下一跳10.0.0.3到达20.0.0.0/8

下一跳属性也是一个公认必遵属性,BGP 中的下一跳不同于IGP 中的下一跳,BGP 中的下一跳 概念稍微复杂,它可以是以下三种形式之一:

1)BGP 在向IBGP 通告从其它EBGP 得到的路由时,不改变路由的下一跳属性,本地BGP 将从EBGP 得到的路由的下一跳属性直接传递给IBGP 。如胶片所示,RTA 通过IBGP 向RTB 通告路由18.0.0.0时,下一跳属性为10.0.0.2。

2)BGP 在向EBGP 对等体通告路由时,下一跳属性是本地BGP 与对端连接的端口地址。如胶片所示,RTC 在向RTA 通告路由18.0.0.0/8时,下一跳属性为10.0.0.2 ;RTA 在向RTC 通告路由19.0.0.0/8 时,下一跳属性为10.0.0.1。

3)对于可以多路访问的网络(如:以太网或帧中继),下一跳情况有所不同:如胶片所示,RTC 在向EBGP 路由器RTA 通告路由20.0.0.0/8时,发现本地端口10.0.0.2同此路由的下一跳10.0.0.3为同一共享子网,因此使用10.0.0.3 作为向EBGP 通告路由的下一跳,而不是10.0.0.2。

DA000011 BGP 路由协议 ISSUE2.0

第2章 错误!未找到引用源。

2.2.4 本地优先属性

本地优先属性

AS400

AS100

AS300

AS200

RTA

RTB

RTC

RTD

RTE

RTF

D (18.0.0.0/8)

30.0.0.1

30.0.0.2

20.0.0.1

20.0.0.2

D ,local-pref1 100

D ,local-pref2 200D ,local-pref1 100 >D ,local-pref2 200RTA 就会优先选择本地优先级高的local-pref2

本地优先级属性是可选属性,本地优先级属性是赋予一条路由的优先级程度,用以比较到相同目的地的不同路由。本地优先级属性值越大,路由的优选程度就越高。本地优先级属性只用于AS 内部,只在IBGP 对等体之间被交换,而不被通告给EBGP 对等体。简单来说,本地优先级属性就是用来帮助AS 区域内部的路由器选择到AS 区域外部使用较好的出口。即,选择本地优先级较高的出口点。

需要注意的是:配置本地优先级的属性值仅仅会影响离开该AS 的业务量,不会影响进入该AS 的业务量。缺省情况下,本地优先级属性值为100 。

如胶片所示,RTB 把通过RTD 接收的路由的本地优先级设置为local-pref1 100,RTC 把通过RTE 接收的路由的本地优先级设置为local-pref2 200,这样RTA 就会优先选择本地优先级高的local-pref2。

2.2.5 MED 属性

MED (Multi-Exit-DISC )属性

D(18.0.0.0/8)

RTA

RTB

RTC

30.0.0.1

30.0.0.220.0.0.1

20.0.0.2

AS100AS200

>D,metric1 10D,metric2 20

D,metric1 10D,metric2 20

RTA 会选择metric 值较小的metric1

IBGP

MED 属性是可选属性,它用于向外部邻居路由器指示进入某个具有多个入口的AS 的优先路径。 当某个AS 有多个入口时,可以用MED 属性来帮助其外部的邻居路由器选择一个较好的入口路径,即优先选择 MED 较小的入口路径。

如胶片所示,我们可以设置RTB 通告的网络D 的metric 值为metric1 10,RTC 通告的网络D 的metric 值为metric2 20,这样RTA 就会优先选择 metric 值较小的metric1。

一般情况下,路由器只比较来自同一AS 中各EBGP 邻居路径的MED 值,不比较来自不同AS 的MED 值。若一定要比较,Quidway 系列路由器提供特别的配置命令,可实现用户这一要求。 注:通常情况下,没有必要比较来自不同自治系统邻居的路径的MED 属性值,除非能够确认不同的AS 采用了相同的IGP 和路由选择方式。

路由协议的分类

路由协议的分类。什么是自治域系统、IGP、EGP。 自治域(自治系统),在同一种路由协议上使用不同的自治域,可以有效的分割 路由信息,即自治域A中的路由器不会与自治域B中的路由器交换路由 信息。一个AS是一组共享相似的路由策略并在单一管理域中运行的路由器的集合。一个AS可以是一些运行单个IGP(内部网关协议)协议的路由器集合。也可以是一些运行不同路由选择协议但都属于同一个组织机构的路由器集合。不管是哪种情况,外部世界都将整个AS看作是一个实体。按照工作区域,路由协议可以分为IGP和EGP: IGP(InteriorGateway Protocols)内部网关协议 在同一个自治系统内交换路由信息,RIP、OSPF和IS—lS 都属于IGP。IGP的主要目的是发现和计算自治域内的路由信息。 EGP(Exterior Gateway Protocols)外部网关协议 用于连接不同的自治系统,在不同的自治系统之间交换路由信息,主要使用路由策略和路由过滤等控制路由信息在自治域间的传播 什么是管理距离,有什么作用。 管理距离是指一种路由协议的路由可信度。每一种路由协议按可靠性从高到低,依次分配一个信任等级,这个信任等级就叫管理距离。对于两种不同的路由协议到一个目的地的路由信息,路由器首先根据管理距离决定相信哪一个协议。 防止环路的方法有哪些? RIP:有六种防止环路的措施:设定无穷大的值(16)路由毒化水平分割毒化反转触发更新抑制计时器 OSPF有哪些状态,在每种状态下进行哪些操作?OSPF有哪三个表?为什么需要DR、BDR,如何选择。 OSPF路由器在完全邻接之前,所经过的几个状态: 1.Down:此状态还没有与其他路由器交换信息。首先从其ospf接口向外发送hello分组,还并不知道DR(若为广播网络)和任何其他路由器。发送hello分组使用组播地址224.0.0.5。 2.Attempt: 只适于NBMA网络,在NBMA网络中邻居是手动指定的,在该状态下,路由器将使用HelloInterval取代PollInterval 来发送Hello包. 3.Init: 表明在DeadInterval里收到了Hello包,但是2-Way通信仍然没有建立起来. 4.two-way: 双向会话建立,而RID彼此出现在对方的邻居列表中。(若为广播网络:例如:以太网。在这个时候应该选举DR,BDR。) 5.ExStart: 信息交换初始状态,在这个状态下,本地路由器和邻居将建立Master/Slave关系,并确定DD Sequence Number,路由器ID大的的成为Master. 6.Exchange: 信息交换状态,本地路由器和邻居交换一个或多个DBD分组(也叫DDP) 。DBD包含有关LSDB中LSA条目的摘要信息)。 7.Loading: 信息加载状态:收到DBD后,将收到的信息同LSDB中的信息进行比较。如果DBD中有更新的链路状态条目,则向对方发送一个LSR,用于请求新的LSA 。 8.Full: 完全邻接状态,邻接间的链路状态数据库同步完成,通过邻居链路状态请求列表为空且邻居状态为Loading判断。

详细分析动态路由协议原理和特点

随着路由的发展,路由协议的种类也有很多,于是我研究了一下动态路由协议的实际应用和详细的介绍,在这里拿出来和大家分享一下,希望对大家有用。顾名思义,动态路由协议是一些动态生成(或学习到)路由信息的协议。在计算机网络互联技术领域,我们可以把路由定义如下,路由是指导IP报文发送的一些路径信息。动态路由协议是网络设备如路由器(Router)学习网络中路由信息的方法之一,这些动态路由协议使路由器能动态地随着网络拓扑中产生(如某些路径的失效或新路由的产生等)的变化,更新其保存的路由表,使网络中的路由器在较短的时间内,无需网络管理员介入自动地维持一致的路由信息,使整个网络达到路由收敛状态,从而保持网络的快速收敛和高可用性。 路由器学习路由信息、生成并维护路由表的方法包括直连路由(Direct)、静态路由(Static)和动态路由(Dynamic)。直连路由是由链路层动态路由协议发现的,一般指去往路由器的接口地址所在网段的路径,该路径信息不需要网络管理员维护,也不需要路由器通过某种算法进行计算获得,只要该接口处于活动状态(Active),路由器就会把通向该网段的路由信息填写到路由表中去,直连路由无法使路由器获取与其不直接相连的路由信息。静态路由是由网络规划者根据网络拓扑,使用命令在路由器上配置的路由信息,这些静态路由信息指导报文发送,静态路由方式也不需要路由器进行计算,但是它完全依赖于网络规划者,当网络规模较大或网络拓扑经常发生改变时,网络管理员需要做的工作将会非常复杂并且容易产生错误。而动态路由的方式使路由器能够按照特定的算法自动计算新的路由信息,适应网络拓扑结构的变化。 动态路由协议的分类 按照区域(指自治系统),动态路由协议可分为内部网关协议IGP(InteriorGatewayProtocol)和外部网关协议EGP(ExteriorGatewayProtocol),按照所执行的算法,动态路由协议可分为距离向量动态路由协议(DistanceVector)、链路状态动态路由协议(LinkState),以及思科公司开发的混合型动态路由协议。 OSPF动态路由协议的特点 OSPF全称为开放最短路径优先。“开放”表明它是一个公开的协议,由标准协议组织制定,各厂商都可以得到动态路由协议的细节。“最短路径优先”是该动态路由协议在进行路由计算时执行的算法。OSPF是目前内部网关协议中使用最为广泛、性能最优的一个动态路由。 采用OSPF动态路由协议的自治系统,经过合理的规划可支持超过1000台路由器,这一性能是距离向量动态路由如RIP等无法比拟的。距离向量动态路由协议采用周期性地发送整张路由表来使网络中路由器的路由信息保持一致,这个机制浪费了网络带宽并引发了一系列的问题,下面对此将作简单的介绍。 路由变化收敛速度是衡量一个动态路由协议好坏的一个关键因素。在网络拓扑发生变化时,网络中的路由器能否在很短的时间内相互通告所产生的变化并进行路由的重新计算,是网络可用性的一个重要的表现方

OSPF路由协议各种类型详解

OSPF各种类型详解 一、OSPF数据包类型 1.Hello包:用于建立和维护相邻的两个OSPF路由器的邻接关系,该数据包是周期性地发送的。 2.Database Description(数据库描述包DBD):用于描述整个数据库,该数据包仅在OSPF初始化时发送。 3.Link state request(链路状态请求包LSQ):用于向相邻的OSPF路由器请求部分或全部的数据,这种数据包是在当路由器发现其数据已经过期时才发送的。 4.Link state update(链路状态更新包LSU):这是对link state请求数据包的响应,即通常所说的LSA数据包。 5.Link state acknowledgment(链路状态确认包LSAck):是对LSA数据包的确认,以确保可靠地传输和信息交换。 二、OSPF网络类型 OSPF链路类型有3种:点到点,广播型,NBMA。在3种链路类型上扩展出5种网络类型:点到点,广播,NBMA,点到多点,虚链路。其中虚链路较为特殊,不针对具体链路,而NBMA链路对应NBMA和点到多点两种网络类型。 以上是RFC的定义,在Cisco路由器的实现上,我们应记为3种链路类型扩展出8种网络类型,其中NBMA链路就对应5种,即在RFC的定义基础上又增加了3种类型。首先分析一下3种链路类型的特点: 1. 点到点:一个网络里仅有2个接口,使用HDLC或PPP封装,不需寻址,地址字段固定为FF; 2. 广播型:广播型多路访问,目前而言指的就是以太网链路,涉及IP 和Mac,用ARP 实现二层和三层映射; 3. NBMA:网络中允许存在多台Router,物理上链路共享,通过二层虚链路(VC)建立逻辑上的连接。

计算机网络实验六rip路由协议配置

太原理工大学现代科技学院计算机通信网络课程实验报告专业班级 学号 姓名 指导教师

实验名称 同组人 专业班级 学号 姓名 成绩 一、实验目的 《计算机通信网络》实验指导书 掌握RIP 动态路由协议的配置、诊断方法。 二、实验任务 1、配置RIP 动态路由协议,使得3 台Cisco 路由器模拟远程网络互联。 2、对运行中的RIP 动态路由协议进行诊断。 三、实验设备 Cisco 路由器3 台,带有网卡的工作站PC2 台,控制台电缆一条,交叉线、V35 线若干。 四、实验环境 五、实验步骤 1、运行Cisco Packet Tracer 软件,在逻辑工作区放入3 台路由器、两台工作站PC ,分别点击各路由器,打开其配置窗口,关闭电源,分别加入一个2 口同异步串口网络模块(WIC-2T ),重新打开电源。然后,用交叉线(Copper Cross-Over )按图6-1(其中静态路由区域)所示分别连接路由器和各工作站PC ,用DTE 或DCE 串口线缆连接各路由器(router0 router1),注意按图中所示接口连接(S0/0 为DCE ,S0/1 为DTE )。 2、分别点击工作站PC1、PC3,进入其配置窗口,选择桌面(Desktop )项,选择运行IP 设置(IP Configuration ),设置IP 地址、子网掩码和网关分别为 PC1 PC3 3、点击路由器R1,进入其配置窗口,点击命令行窗口(CLI )项,输入命令对路由器配置如下: 点击路由器R2,进入其配置窗口,点击命令行窗口(CLI )项,输入命令对路由器配………… ……… …… ………… …装… …… ……… … …… … …… … …… 订 …… … …… … …… … …… … …… … …

推荐-常用动态路由协议安全性分析及应用

常用动态路由协议安全性分析及应用 【摘要】路由器寻找的最佳路径是路由协议,它能保持各个路由器间的路由表相同,实现各个路由器间的相互连通,且在网络间传递数据包。可见,动态路由协议是借助路由器间的信息传递,计算、更新网络结构。但在此过程中,存在一定弊端影响常用动态路由器安全性。现就BGP、OSFP 和RIP V2三种常用的动态路由协议安全性进行分析,并总结其应用。 【关键词】动态路由安全性应用 连接网络的重要硬件设备,是路由器,它可以实现数据包的传递。而动态路由协议指的是路由器表的更新过程,它能够满足网络结构变化的需求。常用的动态路由分为三种,分别为BGP协议、OSPF协议和RIP V2协议。如果在数据包传递过程中,协议出现漏洞,那么容易被人利用,给网络安全造成严重影响。所以,分析常用动态路由协议安全性显得尤为重要。 一、常用动态路由协议安全性分析 1.1 BGP协议安全性 多个相互连接的商业网络共同组成了Internet。各个ISP或企业网络,需要定义一个自治系统号,即ASN,它们

的分配由IANA完成[1]。自治系统号共有65535个,其中私用保留的为65512―65535。路由信息在共享状态下,此号码的维护方式可以采取层的方式。BGP采用会话管理,其中TCP 的179端口可起到触发作用,使Keepalive和update信息被触发,且累及其邻居,从而更新和传播BGP路由表。 然而,因BGP的传输方式以TCP为主,那么容易导致BGP 出现关于TCP的诸多问题,例如拒绝服务攻击,预测序列号,SYN Flood攻击等。BGP主要是利用TCP的序列号,未使用自身的序列号。所以,一旦设备应用可预测序列号,就容易受到该类型攻击。在Internet中运行的大部分路由器都采用了Cisco设备,没有采用预测序列号方案,这就降低了受到攻击的风险。一些BGP在默认状态下,未采用相关的认证机制,有些BGP继续沿用明文密码,这样,大大增加了受到攻击的可能性。 实际应用BGP协议时,还会受到伪造报文攻击等其他攻击。但通常情况下,BGP主要在核心网的出口应用,且配置密码认证,因此,BGP协议的安全性相对较高。 1.2 OSPF协议安全性 复杂是OSPF运行机制的主要特征,运行中的诸多环节都有可能受到攻击者的攻击,给OSPF带来不同程度伤害。攻击方式分为以下几种。一是资源消耗攻击。将不同类型的OSPF报文不间断大量发送,这样极易导致攻击实体资源枯

底层路由协议

底层路由协议 1底层路由协议介绍 1.1为何要设置底层路由 OSPF、EIGRP是三层协议,就是我们常说的IGP,而BGP是架设在3层上的,BGP的邻居是靠TCP连接建立起来的,这个TCP连接就是靠OSPF/EIGRP 来通的。 1.2 EIGRP的介绍 EIGRP(高级距离矢量路由协议)是cisco私有的路由协议,采用DUAL(扩散更新算法),是在IGRP基础,增强开发出来的,IGRP目前已被淘汰 优点: 支持等价/不等价的负载均衡的内部网关路由协议 支持VLSM(可变长子网掩码)、CIDR,手工汇总 支持apple talk IPX IP等多种网络协议,但是目前商业网络使用的IP 协议,因此,研究仅限于IP网络协议下 管理距离:90 快速收敛:促发增量更新的方式,在选择最优路由的同时,就选好次优路径提供备份 缺点: EIGRP没有区域的概念,所以适用于网络规模相对较小的网络,这也是矢量距离路由算法的局限所在? 运行EIGRP的路由器之间必须通过定时发送HELLO报文来维持邻居关系,这种邻居关系即使在拨号网络上,也需要定时发送HELLO报文,这样在按需拨号的网络上,无法定位这是有用的业务报文还是EIGRP发送的定时探询报文,从而可能误触发按需拨号网络发起连接。EIGRP的无环路计算和收敛速度是基于分布式的DUAL算法的,这种算法实际上是将不确定的路由信息散播,得到所有邻居的确认后再收敛的过程,邻居在不确定该路由信息可靠性的情况下又会重复这种散播,因此某些情况下可能会出现该路由信息一直处于活动状态。 快速收敛: 收敛--拓扑中结构发生变化,从变化开始直至拓扑中所有佘恩波均知道,并且稳定的工作的过程。 1、触发式增量更新:当拓扑发生变化,立即向外发出通告,仅将变化的部分发生出去 2、选择一个最佳路径同时,会备份好次优路径 Eigrp四个组件: 网络层协议无关模块IP \ IPX \ APPLE TALK,只研究IP下的eigrp

网络基础 IPv6路由协议及安全

网络基础IPv6路由协议及安全 IPV6的概念现在已并不陌生。面对这个新的网络命令者,与前一个主宰者IPV4的不同,具体体现在哪里呢?下面就对IPV6路由协议在安全问题上,从以下三个方面做一个深入的研究。 1.协议安全 在协议安全层面上,IPV6路由协议全面支持认证头(AH)认证和封装安全有效负荷(ESP)信息安全封装扩展头。AH认证支持hmac_md5_96、hmac_sha_1_96认证加密算法,ESP封装支持DES_CBC、3DES_CBC以及Null等三种算法。 2.网络安全 IPv6路由协议的网络安全包括以下4个方面,详细介绍如下: ●端到端的安全保证。在两端主机上对报文进行IPSec封装,中间路由器实现对有IPSec扩展头的 IPV6报文进行透传,从而实现端到端的安全。 ●对内部网络的保密。当内部主机与因特网上其他主机进行通信时,为了保证内部网络的安全,可 以通过配置的IPSec网关实现。因为IPSec作为IPV6路由协议的扩展报头不能被中间路由器而 只能被目的节点解析处理,因此IPSec网关可以通过IPSec隧道的方式实现,也可以通过IPV6 路由协议扩展头中提供的路由头和逐跳选项头结合应用层网关技术来实现。后者的实现方式更加 灵活,有利于提供完善的内部网络安全,但是比较复杂。 ●通过安全隧道构建安全的VPN。此处的VPN是通过IPV6路由协议的IPSec隧道实现的。在路 由器之间建立IPSec的安全隧道,构成安全的VPN是最常用的安全网络组建方式。IPSec网关的 路由器实际上就是IPSec隧道的终点和起点,为了满足转发性能的要求,该路由器需要专用的加 密板卡。 ●通过隧道嵌套实现网络安全。通过隧道嵌套的方式可以获得多重的安全保护。当配置了IPSec的 主机通过安全隧道接入到配置了IPSee网关的路由器,并且该路由器作为外部隧道的终结点将外 部隧道封装剥除时,嵌套的内部安全隧道就构成了对内部网络的安全隔离。 3.其他安全保障 IPV6路由协议的IPSec为网络数据和信息内容的有效性、一致性以及完整性提供了保证,但是数据网络的安全威胁是多层面的,它们分布在物理层、数据链路层、网络层、传输层和应用层等各个部分。 对于物理层的安全隐患,可以通过配置冗余设备、冗余线路、安全供电、保障电磁兼容环境以及加强安全管理来防护。 对于物理层以上层面的安全隐患,可以采用以下防护手段:通过诸如AAA、TACACS+、RADIUS等安全访问控制协议控制用户对网络的访问权限来防止针对应用层的攻击;通过MAC地址和IP地址绑定、限制每端口的MAC地址使用数量、设立每端口广播包流量门限、使用基于端口和VLAN的ACL、建立安全用户隧道等来防范针对二层网络的攻击;通过进行路由过滤、对路由信息的加密和认证、定向组播控制、提高路由收敛速度、减轻路由振荡的影响等措施来加强三层网络的安全性。 路由器和交换机对IPSec的完善支持保证了网络数据和信息内容的有效性、一致性以及完整性,并且为网络安全提供了诸多解决办法。

表驱动路由协议端到端延时好于按需驱动路由协议

表驱动路由协议端到端延时好于按需驱动路由协议, 按需驱动路由协议在数据报文交付率和路由负荷方面好于表驱动路由协议。 在对网络延时要求较高的环境下,一般选用表驱动路由协议 DSDV 依赖于路由消息的周期性广播,在高速移动的 Ad Hoc 网络中不宜使用 对数据包完整性和带宽要求严格的场合应尽量选择按需驱动路由协议[ 面向应用的如时延和吞吐量之类的性能指标,在比较宽松(即节点较少或移动性较弱)的环境中,DSR 协议优于 AODV 协议;但是在较苛刻的环境中则 AODV 优于 DSR 协议,环境变得越来越苛刻(即载荷变得越重,移动性变得越强),AODV 协议相对于 DSR 协议的性能优势越来越明显 表驱动路由协议 (DSDV) 的平均时延要小于按需路由协议(AODV,DSR) 分组投递率、路由开销和能量消耗等性能不如按需路由 AODV 协议具有较强地适应能力,适用于网络拓扑变化频繁的环境;DSR 适用于节点较少网络变化较小且对时延要求不高的环境;DSDV 协议更适用于网络节点移动速度较小的环境 AODV一旦路由建立后,数据包的延时要明显优于DSDV。实际上,随着移动节点数目和节点移动速度的增加,AODV的优势将更加明显。 在节点高速移动,网络拓扑变化频繁时,AODV 和DSR 的包投递率要比DSDV 好。但是在节点慢速移动时,DSDV 的端到端平均时延要好于AODV 和DSR。这 LAR路由协议适合于节点以中低速移动 ,节点平均密度稍高但网络负载不宜 过高 ,报文发送率中高的环境 簇内节点采用表驱动路由,CBRP算法适合于节点多,速度受限的MANET。在节点移动速度相当快的 MANET 中 CBRP 算法导致网络开销迅速增大,严重影响网络性能 GPSR协议与采用Flooding算法的协议相比降低了网络负载,提高了投递成功率,缩短了路由跳数,所以它更适用于较大规模的网络。AODV,DSR,GPSR DsDv协议的应用非常受限,无法支持网络规模较大,拓扑变化相对频繁的网络环境。AoDv 和DSR可以很好地支持中小规模的网络,而对于大规模的网络需要通过分 簇算法来扩展。AoDv协议对带宽利用率高,能够及时相应网络拓扑变化,同时能避免路由环路 现象。 AODv协议也存在一些问题。由于在路由请求报文的广播过程中建立了反向路由,用于回送路由应答报文,所以要求传输信道是双向的,因此AODv仅适用于双向传输信道的网络;路由表仅维护一条到指定目的节点的路由;AODv的前向路由生存时间定时器会删除生存时长内未使用的路由,即使相应路由是有效地。 OLSR 和DSDV协议的时延整体上小于其他三种协议. DSDV协议的分组传送率低于其他协议; 路由开销方面, TORA协议的最大, DSR 最小, OLSR 的开销也较小, DSDV的开销基本不随节点的移动性而改变; DSDV 的平均跳数最少, 其次是OLSR。

各种路由协议的比较

各种路由协议的比较 首先解释一下什么是有类路由协议什么是无类路由协议: 有类路由协议:在发送时不发送子网掩码,所以它不支持VLSM,比如RIPV1,IGRP 无类路由协议:在发送是发送子网掩码,所以它支持VLSM,比如RIPV2 OSPF EGIRP IS-IS BGP 在从多路由协议中RIPV2 RIPV1 IGRP 属于距离失量路由协议,OSPF IS-IS 属于链路状态路由协议, 至于EIGRP是高级距离失量路由协议,含有一些链路状态路由协议的特征,是混合的路由协议。 以下是一些协议的比较: 1、RIPV1,RIPV2所支持的网络规模为中型,IGRP EIGRP为大型网络,而OSPF IS-IS支持极大型网络。 2、度量值(metric) RIPV1,RIPV2为跳数 IGRP,EIGRP 为复合(带宽,延时,负载,可靠性,以及MTU) OSPF,IS-IS为开销(cost cost =10的八次方/带宽) 3、最大跳数的限制 RIPV1,RIPV2为15 跳 IGRP,EIGRP为255 IS-IS为1024 OSPF 没有跳数限制 4、只有ciso的两个私有协议IGRP和EIGRP不但支持在等价的链路上做负载均衡,还支持在不等价

的链路上做负载均衡,其它的只支持在等价的链路上做负载均衡。 5、 RIP依靠UDP进行传输,使用端口号520。 但IGRP,EGIRP,OSPF直接与internet层相连并分别使用IP协议号9,88,89

路由分为静态路由和动态路由,其相应的路由表称为静态路由表和动态路由表。静态路由表由网络管理员在系统安装时根据网络的配置情况预先设定,网络结构发生变化后由网络管理员手工修改路由表。动态路由随网络运行情况的变化而变化,路由器根据路由协议提供的功能自动计算数据传输的最佳路径,由此得到动态路由表。 根据路由算法,动态路由协议可分为距离向量路由协议(Distance Vector Routing Protocol)和链路状态路由协议(Link State Routing Protocol)。距离向量路由协议基于Bellman-Ford算法,主要有RIP、IGRP(IGRP为Cisco公司的私有协议);链路状态路由协议基于图论中非常著名的Dijkstra算法,即最短优先路径(Shortest Path First,SPF)算法,如OSPF。在距离向量路由协议中,路由器将部分或全部的路由表传递给与其相邻的路由器;而在链路状态路由协议中,路由器将链路状态信息传递给在同一区域内的所有路由器。根据路由器在自治系统(AS)中的位置,可将路由协议分为内部网关协议(Interior Gateway Protocol,IGP)和外部网关协议(External Gateway Protocol,EGP,也叫域间路由协议)。域间路由协议有两种:外部网关协议(EGP)和边界网关协议(BGP)。EGP是为一个简单的树型拓扑结构而设计的,在处理选路循环和设置选路策略时,具有明显的缺点,目前已被BGP代替。 EIGRP是Cisco公司的私有协议,是一种混合协议,它既有距离向量路由协议的特点,同时又继承了链路状态路由协议的优点。各种路由协议各有特点,适合不同类型的网络。下面分别加以阐述。 2 静态路由 静态路由表在开始选择路由之前就被网络管理员建立,并且只能由网络管理员更改,所以只适于网络传输状态比较简单的环境。静态路由具有以下特点: ·静态路由无需进行路由交换,因此节省网络的带宽、CPU的利用率和路由器的内存。 ·静态路由具有更高的安全性。在使用静态路由的网络中,所有要连到网络上的路由器都需在邻接路由器上设置其相应的路由。因此,在某种程度上提高了网络的安全性。 ·有的情况下必须使用静态路由,如DDR、使用NAT技术的网络环境。 静态路由具有以下缺点: ·管理者必须真正理解网络的拓扑并正确配置路由。 ·网络的扩展性能差。如果要在网络上增加一个网络,管理者必须在所有路由器上加一条路由。 ·配置烦琐,特别是当需要跨越几台路由器通信时,其路由配置更为复杂。 3 动态路由 动态路由协议分为距离向量路由协议和链路状态路由协议,两种协议各有特点,分述如下。

第五章 路由协议

第五章路由协议 路由协议主要负责建立源节点与目的节点之间的一条消息传输路径,即实现路由功能。路由协议包含了两个方面功能:寻找源节点-目的节点间的最优路径,并将数据分组沿该路径正确转发。传统的Ad hoc网络、无线局域网等网络的首要目标是提高服务质量和公平高效地利用网络带宽资源。这些网络路由协议的优化目标通常是网络延时最小化,而能量问题通常不作为一个最主要的优化目标。而在陆地无线传感器网络中,由于节点能量有限,因此路由协议需要高效利用能量,同时,由于传感器网络规模一般较大,节点通常不具有全网拓扑信息,因此传感器网络的路由协议需要在已知局部网络信息的基础上选择合适的路径。但是,当前陆地网络的路由协议由于受到种种方面的限制,均不能有效地直接应用于水下网络中,复杂的水下环境给网络层路由协议的设计带来了全新的挑战。 水下传感器节点通信半径和覆盖面积相对于整个网络的规模较小,同时由于水声链路的高度时空动态特性,事先在源节点和目的节点之间建立一条完整且固定的通信路径是不现实的,因此水下传感器网络一方面主要采用多跳传输的路由机制,另一方面路由表需要以一定的频率更新以适应网络的动态变化。多跳传输方式需要借助中继节点转发信息,该方式要求多个节点共同协作完成消息从源节点到目的节点的传输,这就涉及中间节点选择的问题,如何选择中间节点从而有效降低传输延迟、提高数据传输率是路由协议主要解决的问题。此外,水下後感器显络迪路由协议还要具备以下特性:①可扩展性,由于水下传感器网络中的节点受部署环境的影响造成部分节点或部分链路失效,因此能有效地检测和处理节点失效或移动造成的链路中断,适应不断变化的网络柘朴是水下一隹感器网络路由协议需要解决的一个主要问题;②节能性,在水下传感器网络中,节点大都是以电池供电的,电量十分有限,且电池的更换耗时耗力,同时水声信号发射功率相对较大,因此,提高能量效率是对水下传感器网络设计的另一主要目标;③容错性和鲁棒性,在水下感器网络中,节点的失效是很难避免的,造成节点失效的原因主要包括环境因素,此外,水声信道的通信质量也很难保证,这就要求路由协议具有较好的鲁棒性,能有效避免部分节点的失效或链路的中断给整个网络造成影响;④快速收敛特性,由于水下传感器网络的拓扑结构动态变化,节点能量和水声频谱带宽资源严重受限,因此要求路由算法可以做到快速收敛,以适应网络拓扑结构的动态变化,减小通信协议开销,提高信息传输效率。

常用路由协议的分析及比较

路由分为静态路由和动态路由,其相应的路由表称为静态路由表和动态路由表。静态路由表由网络管理员在系统安装时根据网络的配置情况预先设定,网络结构发生变化后由网络管理员手工修改路由表。动态路由随网络运行情况的变化而变化,路由器根据路由协议提供的功能自动计算数据传输的最佳路径,由此得到动态路由表。 根据路由算法 动态路由协议可分为距离向量路由协议(Distance V ector Routing Protocol)和链路状态路由协议(Link State Routing Protocol)。距离向量路由协议基于Bellman-Ford算法,主要有RIP、IGRP(IGRP为Cisco公司的私有协议);链路状态路由协议基于图论中非常著名的Dijkstra 算法,即最短优先路径(Shortest Path First,SPF)算法,如OSPF。在距离向量路由协议中,路由器将部分或全部的路由表传递给与其相邻的路由器;而在链路状态路由协议中,路由器将链路状态信息传递给在同一区域内的所有路由器。 根据路由器在自治系统(AS)中的位置 可将路由协议分为内部网关协议(Interior Gateway Protocol,IGP)和外部网关协议(External Gateway Protocol,EGP,也叫域间路由协议)。域间路由协议有两种:外部网关协议(EGP)和边界网关协议(BGP)。EGP是为一个简单的树型拓扑结构而设计的,在处理选路循环和设置选路策略时,具有明显的缺点,目前已被BGP代替。 EIGRP是Cisco公司的私有协议,是一种混合协议,它既有距离向量路由协议的特点,同时又继承了链路状态路由协议的优点。各种路由协议各有特点,适合不同类型的网络。下面分别加以阐述。 2 静态路由 静态路由表在开始选择路由之前就被网络管理员建立,并且只能由网络管理员更改,所以只适于网络传输状态比较简单的环境。静态路由具有以下特点: ·静态路由无需进行路由交换,因此节省网络的带宽、CPU的利用率和路由器的内存。 ·静态路由具有更高的安全性。在使用静态路由的网络中,所有要连到网络上的路由器都需在邻接路由器上设置其相应的路由。因此,在某种程度上提高了网络的安全性。 ·有的情况下必须使用静态路由,如DDR、使用NA T技术的网络环境。 静态路由具有以下缺点: ·管理者必须真正理解网络的拓扑并正确配置路由。 ·网络的扩展性能差。如果要在网络上增加一个网络,管理者必须在所有路由器上加一条路由。 ·配置烦琐,特别是当需要跨越几台路由器通信时,其路由配置更为复杂。 3 动态路由

常用动态路由协议安全性分析

题目常用动态路由协议安全性分析 声明 本人郑重声明:所呈交的毕业论文,是本人在指导教师的指导下,独立进行研究所取得的成果。除文中已经注明引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写过的科研成果,也不包含为获得其他教育机构的学位或证书而使用过的材料。我承诺,论文中的所有内容均真实、可信。本论文的成果属于云南警官学院所有。 论文(设计)作者签名:李世悦

2016年6 月15 日

目录 第一章前言 (4) 第二章路由器 (5) 2.1路由器的概念.............................. 错误!未定义书签。 2.2路由器的作用和功能......................... 错误!未定义书签。第三章动态路由概述 ............................ 错误!未定义书签。第四章RIP OSPF BGP-4三个协议的使用情况....... 错误!未定义书签。 4.1路由信息协议RIP........................... 错误!未定义书签。 4.2OSPF协议.................................. 错误!未定义书签。 4.3BGP-4协议................................. 错误!未定义书签。第五章安全性分析.............................. 错误!未定义书签。 5.1RIP协议的安全性分析........................ 错误!未定义书签。 5.2OSPF协议的安全性分析....................... 错误!未定义书签。 5.3BGP-4协议的安全性分析...................... 错误!未定义书签。第六章总结..................................... 错误!未定义书签。小结.......................................... 错误!未定义书签。致谢. (14) 常用动态路由协议安全性分析 计算机科学专业与技术

AODV相关路由协议学习

AODV相关路由协议学习 1:AODV路由协议工作原理 AODV路由协议是一种经典的按需路由协议,它只在两个节点需要进行通信且源节点没有到达目的节点的路由时,才会进行路由发现过程。AODV采用的是广播式路由发现机制,当源节点想与另一节点进行通信时,源节点会首先查询自己的路由表中是否存在有到达目的节点的路由有效信息。如果包含有目的节点的有效信息,则源节点就会将数据包传送到目的节点的下一跳节点;如果缺失目的节点的有效的信息,则源节点会启动路径请求程序,同时广播RREQ控制包。 而下一跳节点在接收到RREQ报文时,如果该节点是目的节点,又或者该节点路由表中存放有到达目的节点的可行路径信息,则会向源节点回复路由响应报文CRREP。否则就记录相关信息,用于建立一个反向路径,让目的节点的RREP遵循此路径返回源节点,同时将RREQ报文中的跳数字段值加1,并向该节点的邻居节点转发RREQ 报文。这样经过若干中间节点转发最后到达目的节点,确认路由建立。 路由表项建立以后,路由中的每个节点都要执行路由维持和管理路由表的任务。如果由于中间节点的移动而导致路由失效,则检测到路由断链的节点就会向上游节点发送路由出错报文RRER,而收到出错报文RRER的节点则会直接发出RREQ来进行路径请求,如果能在规定好的时间内找到目的节点的路径,则表示路由成功 1.2存在的问题 传统的AODV采用基本的路由发现算法来建立从源节点到目的

节点的路由时,路由选择是选择最短路径路由,即选择最小跳数的路由,这样就忽略了每两点之间的传输能力,从而导致产生整条链路吞吐量低、路由不稳定、线路拥塞、延迟甚至数据丢失等严重问题。2最大路由速率的AODV协议的提出【基于最大路由速率的AODV 协议优化研究与实现---罗泽、吴谨绎、吴舒辞】 2.1基本思想 针对传统AODV路由协存在的问题,提出了一种基于最大传输速率(路由速率=路由速率之和/路由跳数)的改进方案,其基本思想是:用户确定一个期望速率,源节点在进行路由发现时比较收到的各条路由的实测速率,选择一条速率最大的路由作为路由,在源节点使用当前路由发送数据的过程中,源节点每隔一段时间发出RREQ 报文,以便查找到可能存在的更好的路由,如果发现一条速率更高的路由且该路由速率大于期望速率,则执行路由切换,改用新路由。

内部路由协议和外部路由协议区别

内部路由协议和外部路由协议的区别 根据路由协议工作的范围可以将动态路由协议划分为内部路由协议和外部路由协议。 实际上,前面介绍的距离向量路由协议和链路状态协议均属于内部路由协议,它们工作在一个自治系统Autonomous System,简称AS。一个自治系统通常是指一个网络管理区域,在这个区域内整个网络受到一个机构的管理,比如某个大学的校园网可以被称作一个自治区域内部,而外部路由协议则是工作在自治系统之间的路由协议,在自治系统之间进行路由信息的相互交换,实现路由表的动态更新。 普遍使用的外部路由协议有外部网关协议和边界网关协议。 1.外部网关协议 外部网关协议(Exterior Gateway Protocol,简称EGP)是长期以来较为著名的外部路由协议,它在RFC 904中描述。外部网关协议用于外部网关之间交换路由信息,这些外部网关不在同一个自治系统之内。EGP假定在两个任意AS之间只有单一的主干,因此也只存在单一的路径,因此EGP限制了网络的规模,在真正的网络运用中,EGP己经逐渐被边界网关协议所替代。 EGP以周期性地轮询为基础,在轮询时进行Hello/I Hear You消息交换以监测邻居路由器的可达性,并发出轮询请求以征求更新应答。EGP对外网关进行限制,它要求它们只能通告在该网关自治系统内的可达网络。因此,一个使用EGP的网关传送信息给它的EGP邻居,但是并不向它的EGP邻居(如果网关交换路由信息,它们就是邻居)通告自治系统这外的可达信息。在一个自治系统内部,由EGP网关负责收集自治系统内部的路由信息。 2.边界网关协议 边界网关协议(Border Gateway Protocol,简称BGP)是一个用于多个自治系统之间交换网络可达信息的外部路由协议,RFC 1771文档中对目前使用的第4版BGP协议(简称为BGP-4)进行了全面的描述。每个BGP路由器向其邻居BGP路由器通告自己掌握的网络可达信息,这些网络可达信息将被BGP路由器用于构建无回路的AS连通图,同时还会运用一些路由策略。

3种动态路由协议

RIP EIGRP和OSPF重分布 Cisco默认的几种路由协议的AD如下: 1.直连接口:0 2.静态路由:1(例外:使用接口来代替下1跳地址的时候它会被认为是直连接口) 3.EIGRP汇总路由:5 4.External(外部) BGP:20 5.EIGRP:90 6.IGRP:100 7.OSPF:110 8.IS-IS:115 9.RIP:120 10.EGP:140 11.External(外部) EIGRP:170 12.Internal(内部) BGP:200 13.未知:255 做重分布时的各路由协议的默认metric值 1、往RIP里做时,metric值默认infinity.所以要人工指定metric值,注意不要超过RIP中最大16跳. 2、往OSPF里做时,metric值默认是20,metric-type 是2默认不发布子网. 3、往EIGRP里做时,metric值默认是infinity,人工指metric值时包括:带宽,延迟,可靠度,负载,MTU.(注:可靠度=255时最大,负载=1时最小,MTU=1500,一般来说这三个值都设成这样.而且在配置metric值时的顺序就是这样的顺序.) 如:Paige(config-router)#redistribute ospf 1 metric 10000 100 255 1 1500 4、往IS-IS里做时,Router的默认类型是level-2的,并且metric值为0,在做重分布时,如果网络中只有一个IS-IS进程时,可以不写IS-IS的tag,而其他的路由协议,如EIGRP后面必须跟上进程号. 注:metric-type类型为由于OSPF的外部路由分为 类型1:--外部路径成本+数据包在OSPF网络所经过各链路成本 类型2:--外部路径成本,即ASBR上的默认设置 问题:在向EIGRP中重分布时,必须指定默认管理距离吗?为何只在OSPF向EIGRP重分布时distance eigrp 90 150?? 答:在默认时EIGRP的内部管理距离是90,外部路由管理距离是170,命令“distance eigrp 90 150”只是修改了外部管理距离 R1(config)#int loo0 R1(config-if)#ip add 1.1.1.1 255.255.255.0 R1(config-if)#int s2/0 R1(config-if)#ip add 192.168.12.1 255.255.255.0 R1(config-if)#no sh

四种路由协议比较

内部网关协议RIP:基于距离向量的路由协议。(1)仅和相邻路由器交换信息,交换的信息是自己的路由表。(2)按固定的时间间隔交换信息。RIP协议用UDP报文进行传送。 RIP实现简单,但它能使用的最大距离为15,16是不可到达,所以RIP只适用于小规模网络。RIP还有一个特点就是好消息传播的快,坏消息传播的慢。 RIP为了防止成环:可以用水平分割的方法,即从本端口接收到的路由,不再从本接口发送出去。 内部网关协议OSPF:使用分布式的链路状态协议。(1)向本自治系统内的所有路由器发送信息,用洪泛法。,路由器向所有相邻的路由器发送信息,这个相邻的路由器再向所有它相邻的路由器发送信息。(2)发送的信息是与本路由器相邻的所有路由器的链路专题。(3)只有链路状态变化时,才用洪泛法发送信息,OSPF没有RIP那样坏消息传播的慢的问题。而不像RIP那样每隔30s交换一次路由信息。OSPF协议知道全网的拓扑结构图。OSPF更新收敛的快是重要特点。OSPF不用UDP而是直接用IP数据报传送。OSPF的数据包很短,这样可以减少路由信息的通信量。 注:RIP交换的是路由表,即到目的网络的最短距离,RIP就是根据最短距离选路的。OSPF发送的信息是与本路由器相邻的链路状态,即与本路由器都和哪些路由器相邻以及该链路的度量,如距离,费用带宽。所以交换完路由信息以后,形成数据库,然后利用SPF算法(如Dijkstra静态路由算法)再算出路径,形成SPF树。每个路由单元根据SPF树生成自己的路由表。对OSPF而言,主要的消耗就在SPF的算法处理中,最常用的是Dijkstra静态路由算法。当一条链路down,每台路由器都会获得变化的信息,在网络拓扑更新之后,每台路由器就会重新计算SPT。这样计算SPT的计算量特别大,消耗CPU。。在目前的实际应用中,重新计算SPT就是删除当前的SPT,调用最短路径优先算法重新构造SPT。所以需要提出一种快速收敛的算法,来消除冗余存储或冗余计算。如下图我们只需要计算第二张图中区域的节点,即只对部分变化的节点重新计算路径,大大减少了计算量。

典型单路径路由协议

典型单路径路由协议 无线传感器网络和Adhoc网络一样,是无线自组织网络的一种,因此,它的路由协议也可以从无线Adhoc网络得到一些启发。本节首先对无线Adhoc网络的路由协议AODV进行研究,详细介绍其路由实现原理。然后详细介绍北京交通大学下一代互联网互联设备国家工程实验室代写计算机职称论文自行研制和开发的路由协议MSRP,MSRP借鉴了AODV的思想,但是又做了很大的简化。本论文所设计的多径路由机制是在MS即的基础上做了创新和改进。本节评价了它的优点和缺点,指出了需要改进的地方。 1.AODV路由协议AODVI’jj(AdhoeOndemandDistanceVectorRouting)是一种按需驱动的路由协议,它能够在移动节点之间建立动态多跳路由并维护一个Adhoc网络。AODV能让节点快速建立到新目的节点的路由,而且不需要节点维护处于非活动状态路径的路由。在链路损坏或者网络拓扑发生变化时,网络中多个移动节点能够及时做出反应,网络能够快速自愈。当网络链路出现断裂时,AODV能够通知所有受影响的节点,让它们及时删除使用该链路的路由。AODV一个很重要的创新点是对每一条路由使用了一个目的序列号,任何一个路由表项必须包含到目的节点的最新的序代写计算机硕士论文列号信息。目的节点序列号由目的节点产生。每一个目的节点在它发送给请求节点的任何路由信息中都会包含这个序列号,使用目的序列号可以保证路由无环路,也利于编程实现。当出现两条路由到达目标节点时,请求节点会选择序列号比较大的路由。节点收到任何有关报文,只要其中有关于目的序列号的信息,该目的节点的序列号就会更新。网络中的节点各自保存和维护自己的序列号。一个目的节点在下列两种情况下产生自己的序列号:1、在建立一个路由发现之前,它产代写计算机毕业论文生自己的序列号,避免与以前建立的到无线传感器网络路由协议的研究该源节点的反向路由冲突;2、在产生一个RREP回复双EQ之前,将自己节的序列号更新为目前节点的序列号和路由请求中该节点序列号两者的最大值。下一跳链路丢失时,序列号不再更新。这时候,对于使用该下一跳的每一条路由,节点都将其目的序列号加一,并将该路由标计为失效。只有再次收到“足够新”路由信息时(序列号等于或大于该记录的序列号),该节点才会将路由表中相应信息更新。AoDv定义了三种报文类型:路由请求(RREQs)、路由回复(RREPs)、路错误(计算机专业职称论文RERRs)。这些消息包装在uDP报文中,端口654,并使用通常的IP报头,请求节点使用自己的IP地址作为路由消息中的“源IP地址”字段。对于广播消息,使用IP广播地址255.255.255.255。这意味着这些消息不会被盲目的转发。但是,AODV确实需要某些报文(例如路由请求消息)能够大范围甚至在整个网络中洪,IP报文的TTL字段可以用来限定传播范围。只要通信的两个端有到对方的有效路由,那么AODV就不参与。当节点需一个到新目的节点的路由时,该节点会广播路由请求进行寻找。当该路由请求达目的节点,或者一个中间节点具有一个到目的节点的“足够新,,的路由时,这条路由便可以确定下来。每一个收到路由请求的节点都会缓存一个到源节点的反路由,这样,“路由回复”便会从最终目的节点或者满足请求条件的中间节点顺利递到源节点。节点会监测有效路由下一条链路的状态。当监测到有链路发生断裂时,节会发送路由错误消息来通知其他节点:链路已经丢失,需要重新寻找路由。“路错误”消息用来表明一些节点通过该断裂的链路己经不可达。为了采用这种错误告的机制,所有节点保存一个“前驱列表”,前驱列表包含一些邻居的IP地址,些邻居节点可能使用本节点作为到达目的地的下一跳。前驱列表的信息可以很易的在路由回复的时候获取,因为从定义上来说,“路由回复”就是要发送给前歹J表中的节点的。AODv是个路由协议,因此它有自己的路由表管理机制。即使是暂时的路信息(例如到路由请求源节点的暂时的反向路由),也需要在路由表中保存。AOD的路由表有以下几个组成部分:目的IP地址、目的序列号、有效目的序列号标以及其他的标志(如有效、无效、可修复、正在修复中)、网络接口、跳数、下跳、前驱列表、生命期(路由表的失效或删除时间)。 1AODV路由建立过程当一个节点发现自己需要路由却不存在路由信息的时候,它发起路由

相关主题