SDN网络中的转发数据和数据传输

数据驱动的网络

从数据驱动的角度来看网络,会发现一张现实中的网络存在着各种数据。设计和管理一张网络,主要是设计数据,存储数据,管理数据和分析数据。网络数据的规模、复杂度和变化速度,这3方面决定了数据处理的难度。对照下图的SDN网络结构,网络数据按照用途可以分成下面几类。

  • 设备元数据。例如图中每台虚拟交换机的的基本数据:设备型号,设备软件版本和管理IP地址等。
  • 拓扑数据,例如图中一台虚拟机交换机有几个端口,每个端口的类型和速率是多少,每个端口是2层还是3层的,对端的端口数据,端口和端口之间的线路类型。控制器和虚拟交换机之间的连接方式。
  • 转发数据,例如图中一台虚拟机交换机内部的转发表项,指导报文在交换机内部如何转发。也包括控制面各种网络协议和配置接口生成的转发路由数据。
  • 测量数据,例如从图中一台虚拟机交换机上每个端口上采集的各类流量数据,这些数据还可以聚合,用于分析各种业务的运行流量情况。

一个SDN VPC控制器,通常要管理成千上万个虚拟交换机节点,其作用是存储、计算和传输网络数据。其中转发数据是最重要的一类数据,直接决定了报文在网络中的转发行为。本文主要分析SDN控制器将转发数据传输到虚拟机交换机的一些方法,希望从这个角度能介绍一下SDN网络遇到的主要问题,以及如何设计一个SDN网络控制器。
为了简要描述,下文中的交换机,路由器和virtual vswitch偶尔会交替使用,他们都代表了具有路由功能的虚拟网络转发设备。

VPC 网络转发数据

云网络内部根据数据面功能也分成多块,本文主要介绍VPC网络。下图是一个VPC内的转发数据。分别从控制器和虚拟交换机的视角来看,控制器内的转发数据,和虚拟交换机内的转发数据并不相同。控制器上是整个VPC1的转发数据,而每个虚拟交换机内是本节点网卡相关的VPC转发数据。

从控制器的视角看VPC1的转发数据:VPC 1内有2个子网,子网1内有网卡1/2,子网2内有网卡3/4。

  • VPC 1内有3张路由表:系统路由表,路由表1/2。有3个安全组:安全组1/2/3。
  • 子网1关联路由表1,子网2关联路由表2。
  • 网卡1/2关联安全组1,网卡3关联安全组2,网卡4关联安全组3。
  • 网卡1(eni1)是分配给虚拟机1,mac1,ip1,连接在虚拟交换机1的port1。网卡2(eni2)是分配给虚拟机2,mac2,ip2,连接在虚拟交换机1的port1。网卡3(eni3)是分配给虚拟机3,mac3,ip3,连接在虚拟交换机3的port1。网卡4(eni4)是分配给虚拟机4,mac4,ip4,连接在虚拟交换机4的port2。

从虚拟交换机1的视角看VPC1内的转发数据:

  • 本节点有一张属于vpc1的网卡1,mac1,ip1,连接在port1。
  • vpc1内的其他网卡有,网卡2/3/4。
  • 网卡1关联着安全组1,路由表1。访问vpc1内的网卡2/3/4,需要查询系统路由表。并且和每个虚拟交换机之间建立点对点的隧道。

根据上面的例子,可以罗列一下VPC网转发数据的几个特点:

  • 转发数据规模大。大的云厂商一个最大的VPC可能有几十万台甚至更多的虚拟机,导致一张VPC网络内的转发数据规模很大。上面的例子只介绍了一个VPC 1,正常一个地域会存在很多个租户VPC。Google的数据是如果一个控制器管理着40K虚拟机的网络,控制器要写入487M条flow,消耗10GB的内存。
  • 转发数据关系复杂。转发数据包括路由、安全规则和隧道数据,转发数据分为位置表、路由、安全组等类型,这些数据之间有复杂的绑定关系。控制面和数据面处理的转发数据格式不同,每个虚拟交换机需要的转发数据内容也不相同。
  • 转发数据变化快。云网络支持虚拟机快速动态创建和迁移,网络变更频繁,导致转发数据变化速度很快。控制器需
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值