《实战录》导语
云端卫士《实战录》栏目定期会向粉丝朋友们分享一些在开发运维中的经验和技巧,希望对于关注我们的朋友有所裨益。本期分享人为云端卫士SDN工程师李松青,将带来基于ONOS的SDN-IP实验的分享。
学习ONOS一段时间了,着力点是SDN-IP模块儿;SDN-IP实现了BGP协议,使得ONOS控制的孤岛网络可作为transit AS域插入大网,对于逐步替换大网设备,或步进式融入大网环境不可或缺。
本文档不再赘述SDN-IP模块儿的架构及运行原理(可参考附录文献),而从搭建SDN-IP实验环境角度整合Quagga、Mininet、ONOS等开源软件,为新手提供比官网wiki更详尽的环境搭建流程。
设备互联已经是当今Internet的主题,安装了quagga后,设备就可以充当路由器的角色。利用quagga,可以和其他路由器利用已知的路由协议交互路由信息;quagga利用这些信息更新设备转发表,以达到正确转发数据包的目的。当然,可以通过quagga提供的终端接口(如CLI)手工配置或查看路由信息,及表项信息。
目前quagga支持知名的动态路由协议,如RIP/OSPF/IS-IS/BGP等,通过Zebra也支持静态路由;另外,即将实现的LDP协议,可以支持MPLS。
Quagga由一组路由协议daemon组成,其中bgpd、ripd、ospfd等用于实现具体的路由协议;zebra则用于管理内核路由表,及在不同的协议间分发路由信息等。Quagga系统的架构如下图所示:
图1 Quagga系统架构图
准备环境
下载源码包:http://www.nongnu.org/quagga/
编译、安装
yum in