加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

一个网络配置验算器的设备设想

(2010-03-16 14:34:28)
标签:

it

分类: 网界评论

最近看到appleleaf写得一系列文章,虽然没有仔细看,但是标题就让我很敬佩了。昨天和陈首席还谈到这一点。今天洗澡的时候又想起这个问题, 把我之前写的一篇blog翻出来,与大家分享。

最近几年不用功,所以不知道是不是有这样的设备。记得几年前有过类似的设备,不过是通过监听之后进行验算,推演出网络的拓扑的软件。不过我这个想法 可能有些不一样。

我的想法是有个软件或者类似过去思科和Juniper工程师在考试时都用过的模拟机,模拟一个网络上的所有设备,及设备上所有的配置。然后模拟一下 流量,看看这些配置是否配合的比较好,或者是否有冲突。这个设备主要的作用是在设备部署之前,验算一下所有的配置是否有问题。而在一个已经部署的网络上开 通因为新的业务诞生,而带来新的配置需求的时候,进行一下新配置的测试,看看是否有冲突,是否会因为一些配置的问题在网络中出现一些黑洞。

这个配置有些像ixia或者spirent等测试仪器的协议一致性测试仪,以及前面提到的模拟机,还有就是思博伦、IXIA的流量发生测试仪器。另 外可以界面有些像编程里的DEBUG工具,可以一次运行然后出个报告,也可以一步步的调试,看问题究竟在哪里。

这个东西可以有几个阶段,第一个阶段是验证网络设备,第二个阶段是验证服务器的配置,第三阶段是安全设备的配置。最好的情况是能够基于整个系统进行 完整的 验证性测试。

我觉得类似的东西还是很需要,现在的一些网络规模很大,而且上面跑得应用,以及一些安全的要求很高,所以配置会比较复杂,安全、QoS、静态、动态 路由。而且在数据中心里,由于有虚拟机的出现,可能有很多动态的配置会有出现。

一个严谨的运营商、严谨的客户比如电力用户,我觉得很有必要,每次网络调整,新上线设备,都可以进行迭代性的测试,先看看是否适应以前的业务,看看 以前的问题情况是否会类似出现,然后看看未来的东西是否会冲突。冲突是在哪里。

帖上原来blog的原文,原文链接在这里复 杂的网络服务部署之后如何验收网络没有问题呢?,时间是2009年2月17日。如果有公司想做类似的产品,又需要一个没有经验的产品经理,欢迎来 找我,首席有我的联系方式。我个人是做不了这个东西,因为我不会编程序,但是我可以把需求再细化,而且有过带团队和一定的销售沟通经验。如果能够有人和我 一起做这个产品,我会把我从这个产品的收入的1%贡献给弯曲评论。大家也给我出出主意,这个东西我咋能够赚更多的钱。

原文如下《复杂的网络服务部署之后如何验收网络没有问题呢?》


复杂的网络服务部署之后如何验收网络没有问题呢?

    今天有一个朋友提出了个问题,假如网络部署完了,如何验证MPLS VPN、QoS配置正确呢?虽然我们正在和Fluke合作一个网络维护的专区,但是我个人觉得现在的解决方案还难以满足。我想了个方法,可能有些难度,但是还是值得尝试的。

     首先分析一下客户的可能需求。这个验收测试中,其实用户担心的不是设备不支持,更担心的是配置的错误或者搭建的错误或者其他的失误没有实现最初的预期。

     难题在哪里呢?这样一个测试实际上很难做。比如QoS这样的配置很复杂,配错了并不会不通,流量小的时候看不出来,所以一般的ping一下,或者tracert一下,或者点播一下一个视频源,打个电话可能不能体现出来真正的问题,只有在网络开始正常运行的时候才会发现问题,这时候损失已经造成了。

     Fluke虽然现在按照国标做了一个方案,但是这个方案显然在应付大型特别是特大型的电信运营商网络的时候还是存在问题。比如验证运营商城域网或者省域网络里的MPLS VPN配置,QoS配置是否正确很难。现在运营商的网络动辄就是几个G,几十G,乃至百余G的带宽,小仪表很难达到要求(要在拥塞的时候才能体现出来)。Spirent Communication和IXIA或者安捷伦的方案是可以做得,而且以前这些测试仪器厂商也有过类似的尝试,但是说句实话,对于大多数运营商来说要做这样的测试也不太容易,凑够能够形成拥塞的如此大量的仪表端口,在中国很难,世界上也很难,我看除了Spirent Communication或者思科和Juniper自己的实验室外,一下子凑齐那么多端口挺难的。另外,就是如果要做测试,并不仅仅要拥塞,还要验证延迟的情况,因为很多QoS的策略需要较复杂的验证,不是说光丢包,还要看高SLA的业务是否没有丢包,而且没有延迟;稍差一些的SLA的业务是否,没有丢包但是考router的buffer调度,降低了延迟品质。这还要做很多仪器之间的时钟同步。

     如果如此去解决方案,要不凑不够设备没法做,要不就是高射炮打了蚊子。

     如果客户只是要验证是否配置正确,业务部署正确,就不需要按照实验室测试的方法进行压力测试。因为用户选型的时候会进行详细的对比测试,产品分析,这些工作会知道哪些板卡支持哪些功能和业务,buffer是否能行,功能是否能够支持,选型阶段基本上已经解决了支持不支持的问题。现在的问题是配置是否真的正确了,业务是否部署了,特别是很多设备在一起的时候。

    这个要求有些像软件测试工作,拿着产品最初的设计文档,测试是否都达到了最初的设计指标。其实,在部署过程中可能会有很多问题,漏了的问题,或者想错了的地方可能都会影响配置。现在的网络我觉得配置会越来越复杂,在运营商网络现在有很多业务还有安全要求,要在融合的网络里支持多种服务质量要求的业务,以及支持移动语音、移动视频服务。在企业级网络里,数据中心之外要支持多媒体应用和复杂的安全配置,在数据中心里涉及到虚拟化、存储也有很复杂的配置。和过去的路由起来,vlan和生成树配好就ok不一样。

     我想能否分检查和测试两个层面。测试也分两个层面,验证性和抽测.

     检查实际上和小学、中学数学里的演算差不多。

     测试的第一个层面是验证性测试。能否结合Sniffer的方法和程序的方法来做呢?我记得好像Juniper的router可以做在线的抓包,主要针对路由协议等等。这个的思路还是考虑到现在很多复杂的业务都会有一些协议必然的开销在网络设备之间和网络设备与终端之间交互,通过捕捉包,关联,比对正确模板,看配置是否有误。比如一个第三方软件全网注重收集所有节点的协议信令,配合实现输入的拓扑信息,进行关联,来验证是否实际网络的配置复合你的预期。而且我觉得应该可以开发一个模拟器,把我们的需求翻译成配置,在翻译成设备之间相关信令的交互过程,这样就可以把实际网络的收集信息与标准模板进行匹配,有问题的报警。协议模拟器,以前在测试router的时候很多测试厂商都会开发类似的协议一致性测试软件。通过逐个比对,确认没有错误。

    由于有些业务需要发起后才会体现配置的正确与否,验收方还可以抽样发起一些业务,同时在每个节点抓包,再进行匹配,因为有些信令、协议开销是要业务发起的时候才会产生。

    另一点,我觉得就是抽样测试。我想可以在有一定流量后,利用一些点进行业务模拟,而后看情况。网络里要部署一些探针,类似Sniffer或者说有些基于应用层的协议分析软件,看实际情况。

    在验收之后,就是需要运营商进行试运行,其实运营商都会做。这个过程中,必须要全面部署一些探针,关键节点部署。有一个汇总系统,来看是否存在问题。

     我觉得需要一个这样的系统来支持如此验收测试。第一是全网主要节点部署的探针,一个探针信息的汇总收集、分析平台,这个平台要能够根据一些我们关注的业务进行关联,如果只是一些数据包,客户是很难进行分析的。第三是一个演算平台,可以集成一些协议一致性测试软件,把我们的需求翻译成配置,配置然后进行模拟,可以实现收集信息和模拟的信令进行比对。另外,如果有些流量发生软件,在一些服务器和计算机上可以部署,并且在抓包信息的分析汇总平台上看到我们测试的流量,这个方案会更好一些.

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有