STP模块调试小结.docVIP

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
STP模块调试小结

STP模块调试小结 数据事业部软件开发二部 孙蓓 2005-9-21 完成STP代码后,开始进行功能自测,在这个过程中遇到很多问题,随着问题的解决,感觉学到很多,现总结如下,希望能对大家,特别是像我一样的新员工有一些借鉴和帮助。 星期六下午:STP模块中绑定VLAN到实例、删除实例和设置实例端口状态功能都调试成功了,还剩下BPDU的透传功能没有测试,不知道为什么自己没有一丝轻松的感觉,隐约有些担心,透传在写代码时就遇到了一些问题,56504芯片的设置相比其它芯片有了改动,向FAE请教的一些问题回答不是很明确。带着一些忐忑,星期一上午开始调试,结果没有出人意料,透传果真出现了问题。 问题一: 56504透传设置主要在L2_USER_ENTRY中,发现在写L2_USER_ENTRY时,总是写不进去。 问题分析: L2_USER_ENTRY用于BPDU有6个entry,我一直不明白为什么要设置6个,对于自己用哪个index有效也不明确,向FAE询问时,他也没有说出原因,只是很肯定的说index设为-1,就会写入还没有使用的表项中,于是我在写代码时就设置了-1,现在出了问题,第一个就是怀疑它,跟代码后果然不出所料,写表时它先会检查是否有相同的表项写入,且只检查了mac地址、mask位和vlan位,这几位恰好我都没有修改,于是它认为是相同的表项,根本不再写表,这种情况下,设置index=-1是不对的。 问题解决: 仔细再阅读有关对L2_USER_ENTRY所有操作,原来它在初始化时就将0-5的表项写好了,用于BPDU的0-5,我决定将他们全部都设置一下,index改为0-5,结果成功写表。(后来证明不需要全部都写,只要将优先级最高的index=0写入就可以了) 问题总结: 对FAE不能盲目相信,一定要对所有操作仔细的跟到低,要深入看代码。 成功写表了,按照自己的设置在透传时将L2_USER_ENTRY中的cpu设为0,将bpdu设为0,不透传时将cpu设为1,将bpdu设为1,结果发现还是不透传,还有什么问题呢?难道关于BPDU透传控制还有其他设置? 问题二: 设置透传后,写表成功,但还是不透传。 问题解决: 透传时L2_USER_ENTRY的bpdu位不应该设置成0,应该设置为1。这是在看芯片资料时发现的。这里要感谢韩俊杰,他在看到有关的设置时,提醒了我。 问题总结: 那么我在写代码时为什么要设为0呢?回想起来,是自己的不对。自己刚开始没有在芯片资料中找到关于这位的说明,在FAE来的时候,就向他们询问,FAE的回答是在透传时要将bpdu位设置为0,于是自己就没有再继续查找资料,就直接将bpdu位设置为了0。 问题一和问题二的错误是自己不应该犯的,在以后的工作中一定要注意:对自己设置的任何操作都要自己找到依据,不能盲目相信FAE。 也许现在应该没有问题了吧,表写成功了,bpdu设置正确了,可是测试的结果还是不能透传。检查写入的表,写的是正确的,再查看芯片资料,也没有什么问题,那为什么设置透传后,没有在vlan内广播,cpu还是能够收到包?难道真的还有其他关于透传的设置,自己没有找到?我开始怀疑自己,是不是透传只对L2_USER_ENTRY设置是不行的。 问题三: 设置透传后,CPU还是能收到包,却还是没有向vlan内广播。 问题解决: 一次又一次写表,再将表down出来,设置是正确,那为什么cpu还能收到包?这时突然间想到会不会cpu端口和收bpdu包的端口设置在同一vlan里面,自己在测试的时候没有同时检查cpu收包情况和端口收包情况,如果是在同一vlan,那设置透传后,cpu自然会收到包了!向陈遗保借了根线,连到主机,看见端口的灯在闪!好开心!端口收到包了!用sniffer抓包看,果然是bpdu包,看来向vlan广播了,那cpu可能就设置在了同一个vlan里面,于是向张作富请教,他说缺省的情况下cpu端口没有配在同一个vlan里面,是吗?那怎么会出现既向cpu发包又向vlan广播的情况,太奇怪了,决定还是将vlan表down出来看一下,果然cpu端口和收包端口在同一共vlan里面!原来自己的版本太老了,没有将新的vlan模块合进来! 问题总结: 1要注意自己的模块不是孤立的,大家的模块都是一个紧密联系的整体,在查找问题的时候,要想想会不会是这方面的问题。 2 测试的环境要正确,如果自己同时检测cpu收包情况和端口收包情况,那应该早就发现问题了。 长舒了一口气,看来问题解决了,很放心的睡了一个午觉,想着只要下午将新的版本合 上就可以了,问题解决了。然而生活并不总是如你所想象,它只是真实的展现它的本来面目!下午:配命令,spanning tree disable ,查cpu发现收不到包!再配透传,发现没有抓到包!怎么仅仅过了一个中

文档评论(0)

haocen + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档