2.Hello过程:
(1)在同一子网中发现其他运行OSPF的路由器
所有启用了OSPF的接口,都会监听发往224.0.0.5的组播Hello消息,这是表示所有OSPF路由器的组播地址。Hello包使用接口上的主用IP地址作为源发出,并不会使用备用IP,(OSPF路由器会通告备用IP,但不会用那些IP发送Hello包和建立邻居关系,与EIGRP和RIP一样)。如果OSPF邻居一方或双方的接口使用“借用IP地址(unnumbered)”,他们也会建立完全邻接关系。
(2)检查某些配置参数是否匹配
当两台路由器都收到了对方发来的Hello包,也就是都发现了对方后,他们会根据收到的Hello包中的参数进行如下检查:
-必须通过认证过程
-必须在同一个子网中,子网掩码也必须相同
-OSPF区域必须相同
-区域类型必须相同(普通,末节,NSSA)
-RID不能重复
-OSPF Hello和失效计时器必须相同
但凡上述参数中有一项不匹配,两台路由器都无法形成邻居关系。OSPF PID(进程ID)可以不同
还有DD包的MTU大小必须相同,MTU的检查不是Hello检查的一部分,MTU不匹配会对ExStart和Exchange阶段的数据库同步过程带来不良影响,但它并不会阻止两台路由器成功建立邻居关系,也包括进入2- Way状态。
(3)在两台路由器之间确认双向可见状态
路由器会在其发出的Hello包中包含了一个邻居列表,表示它已经从这些邻居那里收到了有效且能够接受的Hello包。这个列表的大小是可变的,携带在每个Hello包的尾部,列表中包含的RID表示发出这个Hello包的路由器已经收到并接受了这些路由器发来的Hello包。如果路由器在其邻居发来的Hello包中看到了自己的RID,它就可以确定它和邻居都收到了彼此的Hello包。
(4)监控邻居的工作状态,发生问题及时做出响应
提供邻居之间的“心跳”功能。邻居会按照Hello间隔来发送Hello包, 如果在经历了比失效间隔长的时间 后,仍没有收到Hello包,路由器就会认为这个邻居已经失效。如果接口上的OSPF网络类型是 广播或点到点, 那么这个接口的Hello间隔是10秒;如果接口上的OSPF网络类型是非广播或点到多点,则这个接口的Hello间隔是30 秒;失效间隔默认为Hello间隔的4倍。
 
下边的debug消息展示了这台路由器的hello和dead不一致,“C”表示“configured”,“R”表示“received”,路由器尝试使用10/40。
 
 

下边列出了在同一个接口下R1的hello和dead间隔
 
 

下边R1 show了 s0/0.100 的一个邻居,full状态,表明路由器完成了LSDB交换,注意当前失效计时器倒计时,这个例子中是两分钟。1:58表示R1上一次从邻居10.1.111.6接收到Hello包是两秒之前。
 
 

3.向邻居传送LSA头部
 
两台路由器都收到了彼此的Hello包,并且通过了参数检查,他们并不会马上开始发送携带LSA的数据包。他们会先创建并发送DD包,DD包中包含每个LSA的头部。这些头部中包含的信息足够区分每个LSA及其版本,而无需传输LSA的内容。也就是说路由器交换的是她所知道的所有LSA的索引列表;下一步是让路由器从这些LSA中,请求他所缺失或过时的LSA。
DD消息使用一种OSPF定义的简单错误恢复进程。每个DD包中都包含了多个LSA头部,并且分配了一个序列号。接收方通弄向发送方发送一个与其收到的DD包序列号相同的DD包,来确认自己收到了发送方发出的DD包。发送方的发送窗口为一个数据包大小,它会在收到确认后,才发送下一个DD包。

OSPF-1-OSPF的数据库交换(2)的更多相关文章

  1. OSPF-1-OSPF的数据库交换(4)

    4.DD交换:主/从关系   当两台路由器之间形成了邻居关系后(ExStart),邻居双方需要决定在数据库交换的过程中,哪台路由器的角色是主,哪台路由器的角色是从.主和从这两个角色决定了DD包交换过程 ...

  2. H3C 显示OSPF的链路状态数据库

  3. OSPF-1-OSPF的数据库交换(5)

    三.LAN中的指定路由器   没有DR概念的话,共享同一条数据链路的一对路由器会形成完整的邻接关系,每对路由器之间都会直接交换它们的LSDB,假设在一个只有6台路由器的LAN中,其中没有DR,那么就会 ...

  4. OSPF-1-OSPF的数据库交换(1)

    一.OSPF路由器ID(RID) 选举过程: 1.使用router-id id 命令中配置的路由器ID 2.up着的环回接口最大的ip 3.up着的非环回接口最大ip   如果路由器的RID发生了变化 ...

  5. OSPF协议详解

    CCNP OSPF协议详解 2010-02-24 20:30:22 标签:CCNP 职场 OSPF 休闲 OSPF(Open Shortest Path Fitst,ospf)开放最短路径优先协议,是 ...

  6. RIP、OSPF、BGP、动态路由选路协议、自治域AS

    相关学习资料 tcp-ip详解卷1:协议.pdf http://www.rfc-editor.org/rfc/rfc1058.txt http://www.rfc-editor.org/rfc/rfc ...

  7. CCNP路由实验(2) -- OSPF

    OSPF作为一种内部网关协议(IGP),用于在同一个AS中的路由器之间交换路由信息.OSPF的特性如下:1.可适应大规模网络2.收敛速度快3.无路由环路4.支持VLSM和CIDR5.支持等价路由6.支 ...

  8. OSPF 原理

    关于OSPF的数据结构Link-State Protocol Data Structures链路状态路由器与距离矢量路由器,可以知道关于整个网络的更多信息Neighbor table:also kno ...

  9. OSPF相关知识与实例配置【第一部分】

    OSPF相关知识与实例配置[基本知识及多区域配置] OSPF(开放式最短路径优先协议)是一个基于链路状态的IGP,相比于RIP有无环路:收敛快:扩展性好等优点,也是现在用的最多的:所以这次实验就针对于 ...

随机推荐

  1. java中如何创建带路径的文件

    请教各位大侠了,java中如何创建带路径的文件,说明下 这个路径不存在 ------回答--------- ------其他回答(2分)--------- Java code File f = new ...

  2. Python 参数校验的进化

    Python 函数参数魔法 事情的起因是感觉目前项目中的参数校验方法写的太简单了,很多时候需要在server层再if else处理,于是就动手准备写一个好用一点的,可以自定义校验参数规则的参数校验器, ...

  3. 如何强制ffmpeg编码时输出一个关键帧

    http://blog.csdn.net/ashlingr/article/details/7829429 如何强制ffmpeg编码时输出一个关键帧   如何强制ffmpeg编码时输出一个关键帧 AV ...

  4. Android图片加载神器之Fresco-加载图片基础[详细图解Fresco的使用](秒杀imageloader)

    Fresco简单的使用—SimpleDraweeView 百学须先立志—学前须知: 在我们平时加载图片(不管是下载还是加载本地图片…..)的时候,我们经常会遇到这样一个需求,那就是当图片正在加载时应该 ...

  5. C++中map容器的说明和使用技巧

    C++中map容器提供一个键值对容器,map与multimap差别仅仅在于multiple允许一个键对应多个值. 一.map的说明 1 头文件 #include <map> 2 定义 ma ...

  6. 【错误信息】springMVC No mapping found for HTTP request with URI

    出现这个问题的原因是在web.xml中配置错了:

  7. 百度地图API简单应用——1.根据地址查询经纬度

    这几天比较空闲,就接触了下百度地图的API(开发者中心链接地址:http://developer.baidu.com),发现调用还是挺方便的.只要简单几步注册下,就可以获得一个Key,就能直接调用(P ...

  8. js 分享代码--完整示例代码

    <div class="bdsharebuttonbox" data-tag="share_1"> <a class="bds_ms ...

  9. EnumDescription

    using System; using System.Reflection; using System.Collections; using System.Collections.Generic; n ...

  10. MongoDB搭建ReplSet复制集群

    MongoDB的复制集是一个主从复制模式 又具有故障转移的集群,任何成员都有可能是master,当master挂掉用会很快的重新选举一个节点来充当master. 复制集中的组成主要成员 Primary ...