免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3763 | 回复: 8
打印 上一主题 下一主题

OSPF数据库描述包(type2)是周期性发,还是只在拓扑数据库初始化的时候才发? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-04-02 18:32 |只看该作者 |倒序浏览
我建立了只有一个area的三个节点组成的三角形的拓扑,基本上没做什么特殊配置,只配了接口和相应ip地址,这样每两点之间相当于point-to-point连接。  后来我把拓扑稍微变化了一下,改成星形 --- 就是让路由器A,B,C都挂在网络0上, 希望这样增加几次 dr, bdr的选举。。。。 结果ospfd 看起来运转正常,但还是看不到type 2 (database description) , 和type 3 (LSA request) 包。


想问问:这两种包,是周期性发,还是只在拓扑数据库初始化的时候,发一次? 我觉得应该是周期性的,但一片教材上说"数据库描述报文用于初始化拓扑数据库"。

更详细一些的, 发在Cisco技术版了,但没人回答。。。。

http://bbs.chinaunix.net/viewthr ... &extra=page%3D1

[ 本帖最后由 a_mug 于 2007-4-2 10:34 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2007-04-02 21:20 |只看该作者
"但还是看不到type 2 (database description) , 和type 3 (LSA request) 包。"
基本概念理解错误.我们说TYPE1 是指ROUTER_LSA,TYPE2是NETWORK_LSA,TYPE3是SUMMARY_LSA.

初始化完成后,只有MASTER能够按照固定的时间间隔重传DD包,其长度是按接口配置的常量RxmtInterval。
MASTER:在DD包的交换过程中,两台路由器要建立主从关系,处于MASTER的机器

论坛徽章:
0
3 [报告]
发表于 2007-04-02 22:51 |只看该作者
厚厚!算是我不够严谨吧,不过我真的知道,另有一套type 1= router LSA, type 2=  network LSA 的概念。:wink:



不过,楼上能帮我分析一下为什么我看不到DD 包的交换过程么? 具体说,这样的理解对不对:

1。 neighbor关系不等于adjacency 关系,后者在需要建立的时候,才建立, 所以RFC2328才有serction 10.4 "Whether to become adjacent" , 所以,不严谨的说,对一个节点而言,它和别的节点生成的adjacency 关系 是他所有neighbor关系的一个子集。

2。RFC2328好像说如果网络是point-to-point,(包括point-to-multicast 等),adjacency 关系是一定有的。 难道这些"天生的"就不需要DD 包的交换过程。( 这点我不太理解。可能不能说什么"天生"吧!)

谢谢楼上先!!

论坛徽章:
0
4 [报告]
发表于 2007-04-03 20:01 |只看该作者
对OSPF邻居建立,邻接建立,DD包交换,LSA REQUEST可以看OSPF状态机部分可加深理解.
1.DD包,REQUEST LSA等包的交换是建立在邻接的基础上的.是邻居但不一定会是邻接,这在NBMA网络中体现的很明显.在配置NBMA网络中,在路由器上你需要把你的邻居都配置好,但最后包文的交互只是在自己和DR之间的交互.

2.2。RFC2328好像说如果网络是point-to-point,(包括point-to-multicast 等),adjacency 关系是一定有的。 难道这些"天生的"就不需要DD 包的交换过程------我不大理解你说的什么意思.在PTP,PTMP网络中建立好邻接关系以后,就会马上交换DD包进行数据库的同步.怎么叫天生不需要DD包的交换呢?


DD包我们一般在路由器上是看不到的,DD包只是对数据库中各类LSA的一个描述.具体的LSA需要LSA REQUEST来请求.我们能看到的只是各个LSA是谁产生的.

按你的配置,在数据库里你能看到LSA1,LSA2.

         Router Link States (Area 0.0.0.0)

Link ID         ADV Router      Age  Seq#       CkSum  Link count
192.168.1.2     192.168.1.2      360 0x8000000a 0x9401 5
192.168.2.2     192.168.2.2      325 0x8000000a 0x6c03 3
192.168.3.2     192.168.3.2      360 0x8000000a 0x95d5 3
上面的就是第一类LSA



     Net Link States (Area 0.0.0.0)

Link ID         ADV Router      Age  Seq#       CkSum
192.168.0.1     192.168.1.2      360 0x80000005 0xe151

上面的是第二类.

论坛徽章:
0
5 [报告]
发表于 2007-04-03 23:11 |只看该作者
"DD包我们一般在路由器上是看不到的,DD包只是对数据库中各类LSA的一个描述"

楼上这句好像不对!DD包应该是和 hello, LSA request, LSA update, LSA ACK 一个等级的包, 我认为既然能看到hello包,就应该有理由看到这个DD包。

论坛徽章:
0
6 [报告]
发表于 2007-04-04 15:23 |只看该作者
如果TYPEII是指OSPF TYPE,那么当然是指DBD;不过大家通常讲TYPE都是说LSA TYPE,所以最好讲明。

此外楼主真的要规范一下用语,我们和别人沟通的时候总是尽可能的使人迅速明白问题并找出症结所在,尤其是网上。术语的正确使用、适当的图表都回有助于这一点。

举例来说:楼主的路由表如果配上两张图,一定会更容易使人明白;又比如,P2Multicast到底指哪种网络,我现在也没想通。

说回楼主的问题,我想确认一下:

楼主你所使用的设备型号,以及设备间接口类型。

另外。。。如果设备/协议工作正常,而且ospf db不大的话,你用肉眼很难观察到DR与BDR之间的2-way,所有的exstart,exchange以及loading等几个中间状态,这种时候打开debug回有助于你判断。

论坛徽章:
0
7 [报告]
发表于 2007-04-04 22:35 |只看该作者
先谢楼上的回复。 虚心接受意见,以后注意规范自己的用语!

我当然不是靠肉眼去查看包,至少也得是tcpdump 啊,事实上,我是用程序, 基于jpcap 类库开发的程序。

说到设备我就是用普通的 Linux,启动zebra/ospfd功能,配置的是point-to-point 得网络。更详细的,贴在CISCO 版了,在开贴里给了连接,现抄过来。 至于图,老大,第一次配置,拓扑就是个三角形啊! 第二次,就是中心一个网络,伸出去三个爪,挂上三个路由器   ;-)

附1:IP地址分配如下:
Router A:
eth0: 192.168.1.1/24
eth1: 192.168.2.2/24

Router B:
eth0: 192.168.2.1/24
eth1: 192.168.0.2/24

Router C:
eth0: 192.168.0.1/24
eth1: 192.168.1.2/24

附2:OSPF转起来后,运行”show ip ospf database”看到下面的结果。

     OSPF Router with ID (192.168.2.1)

                Router Link States (Area 0.0.0.0)

Link ID         ADV Router      Age  Seq#       CkSum  Link count
192.168.1.2     192.168.1.2      810 0x80000005 0xcb40 3
192.168.2.1     192.168.2.1      803 0x80000002 0x2cdf 3
192.168.2.2     192.168.2.2      809 0x80000004 0xa384 3

                Net Link States (Area 0.0.0.0)

Link ID         ADV Router      Age  Seq#       CkSum
192.168.0.1     192.168.1.2      809 0x80000001 0xa604
192.168.1.1     192.168.2.2     1088 0x80000001 0x9e09
192.168.2.2     192.168.2.2      809 0x80000001 0x8c19


附3:IP地址分配如下:

Router A:
eth0: 192.168.0.1/24
eth1: 192.168.1.2/24

Router B:
eth0: 192.168.0.2/24
eth1: 192.168.2.2/24

Router C:
eth0: 192.168.0.3/24
eth1: 192.168.3.2/24



附4:在RouterB上, OSPF转起来后,运行”show ip ospf database”看到下面的结果。

            OSPF Router with ID (192.168.2.2)

                Router Link States (Area 0.0.0.0)

Link ID         ADV Router      Age  Seq#       CkSum  Link count
192.168.1.2     192.168.1.2      360 0x8000000a 0x9401 5
192.168.2.2     192.168.2.2      325 0x8000000a 0x6c03 3
192.168.3.2     192.168.3.2      360 0x8000000a 0x95d5 3

                Net Link States (Area 0.0.0.0)

Link ID         ADV Router      Age  Seq#       CkSum
192.168.0.1     192.168.1.2      360 0x80000005 0xe151

附2:在RouterB 上看到的邻居 RouterA 和 RouterC

192.168.1.2       1   Full/DR         00:00:38    192.168.0.1     eth0:192.168.0.2     0     0     0
192.168.3.2       1   Full/Backup     00:00:38    192.168.0.3     eth0:192.168.0.2     0     0     0

[ 本帖最后由 a_mug 于 2007-4-4 14:45 编辑 ]

gu.JPG (11.38 KB, 下载次数: 28)

gu.JPG

论坛徽章:
0
8 [报告]
发表于 2007-04-05 09:40 |只看该作者
原帖由 a_mug 于 2007-4-4 22:35 发表
先谢楼上的回复。 虚心接受意见,以后注意规范自己的用语!

我当然不是靠肉眼去查看包,至少也得是tcpdump 啊,事实上,我是用程序, 基于jpcap 类库开发的程序。

说到设备我就是用普通的 Linux,启动zebra ...


DBD不是周期发。

你建立的那个三角形网络也是广播网。

zebra的行为我不是很了解,不过我想日志里面应该能看到router状态的变化。

至于为什么没有抓到DBD……我也不知道哦~~

论坛徽章:
5
IT运维版块每日发帖之星
日期:2015-08-06 06:20:00IT运维版块每日发帖之星
日期:2015-08-10 06:20:00IT运维版块每日发帖之星
日期:2015-08-23 06:20:00IT运维版块每日发帖之星
日期:2015-08-24 06:20:00IT运维版块每日发帖之星
日期:2015-11-12 06:20:00
9 [报告]
发表于 2007-04-05 11:01 |只看该作者
OSPF采取触发更新的方式,也就是说当路由发生变化时才发送更新包,但为了协议的健壮性OSPF会没隔1800秒发送整个路由表.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP