SDN跟网络虚拟化的完美结合

5728人阅读 评论(0) 收藏 举报
分类:

SDN跟网络虚拟化的完美结合

    之前说过,所谓的“SDN最适合的领域是数据中心”的说法,笔者认为更准确的说法应该是SDN最适合的领域是数据中心中的网络虚拟化应用。为什么说SDN非常适合用在网络虚拟化中呢?因为出于自动化部署的需求,网络虚拟化的架构本身就是集中式控制,而且是软件应用控制整个虚拟网络,这跟SDN的特征非常吻合。网络虚拟化主要用在供云服务的网络中。

在云服务网络的实际部署中,有使用虚拟交换机来做Tunnel Overlay网络终结的方案,也有出于性能考虑使用硬件交换机做Tunnel Overlay网络终结的方案。

    当然我们知道,云服务网络部署是一个系统工程,涉及很多方面,管理员直接接触到的既不是交换机,也不是网络虚拟化工具,而是一个云服务管理平台,或者叫云计算平台,比如OpenStack、CloudStack或者云服务提供商自己设计的私有的平台。这个云计算平台负责管理很多资源,包括计算、存储、网络等。

    云计算平台本身的基础架构中,所用到的网络功能相对简单,就是普通的桥接技术,但是一般都会有跟第三方应用服务程序的接口,比如OpenStack就可以通过插件(plug-in)的方式集成第三方的程序,第三方公司开发的专业的网络虚拟化平台一旦集成到云计算平台中,就可以大大增强云计算平台网络自动化部署的能力。通常这些网络虚拟化平台都会集成一个Controller,比如Nicira的NVP,就有自己的Controller集群。云计算平台要部署网络服务的时候,就会通过插件向这些网络虚拟化平台内置的Controller发消息,比如要在两个Hypervisor之间创建Tunnel,并将一些VM绑定到这个Tunnel上去,以及配置一些网络安全策略或者QoS策略等。

    Controller自己自然不会去做这些事情,它就通过Controller跟交换机(虚拟交换机或者硬件交换机)之间的南向接口,比如OpenFlow或者OF-Config、NetConf或者别的公有或私有的接口,向交换机发消息去配置交换机。云计算平台要求集中化控制,网络虚拟化要求集中化控制,SDN要求集中化控制,三者想不结合在一起都很难,而且这种结合是水到渠成,轻而易举的,只需要一些接口和插件就可以做到。所有的这一切都是为了自动化部署。

    盛科网络跟国内的云服务提供商九州云联合开发了OpenStack+硬件网络虚拟化+SDN的方案。之前九州云的数据中心里面用的是OpenStack+OVS的纯软件方案,后来遭受了严重的性能问题,因为一台服务器里面虚拟机一多,随着网络流量的增大,网络交换部分带给CPU的压力就很大了。在盛科和九州云的联合方案中,通过最小的改动,用盛科的SDN交换机V350代替了OVS,将Tunnel加解封装,安全过滤,基于VM的QoS策略等网络功能放到了硬件交换机中,性能得到大幅度提升。而且这个方案充分考虑了之前云网络管理员的管理习惯,并没有将服务器跟网络分隔开来,对云网络的管理员来说,他并没感知到现在用的是虚拟交换机还是硬件交换机。

图7-3该方案的架构图,其中用了开源的Ryu Controller,Tunnel是NvGRE,总共可以支持32KB VM以及12KB的Tunnel。转发面全部是基于纯粹的OpenFlow。


文节选自《深度解析SDN——利益、战略、技术、实践》

张卫峰 编著

电子工业出版社出版


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:3633469次
    • 积分:53886
    • 等级:
    • 排名:第57名
    • 原创:1448篇
    • 转载:83篇
    • 译文:1篇
    • 评论:3601条
    博客专栏
    最新评论