MyException - 我的异常网
当前位置:我的异常网» 互联网 » 简略聊聊VPC和SDN/NFV

简略聊聊VPC和SDN/NFV

www.MyException.Cn  网友分享于:2013-09-28  浏览:0次
简单聊聊VPC和SDN/NFV

摘要: 近几年,SDN和NFV是网络界的热点,那么阿里云是如何做SDN和NFV的呢?阿里云VPC又是如何实现的呢?和SDN和NFV是什么关系呢?本文将介绍相关内容。


注:本文部分内容来自网络搜索的整合

 

大家都知道,目前各大云服务商都提供了VPC(Virtual Private Cloud)产品,VPC已经成为用户使用云首先需要考虑的云产品,甚至是比ECS更早需要考虑的云产品,可以说是基础中的基础。首先,我们还是来简单介绍下什么是VPC?VPC又有什么好处?再来讨论我们今天的主题,即阿里云VPC和SDN及NFV的关系。


什么是VPC


可以从下面三点来理解VPC。


首先,VPC可以认为是一个网络容器。用户可以免费开通这个容器,开通后再在这个容器中“放置”用户需要的云产品,比如ECS,SLB,RDS等。VPC的基本组件包含路由器和交换机,如下图所示,即是华北1地域的一个VPC。




其次,VPC是用户私有的,它和其它的VPC默认都是隔离的,和经典网络也是隔离的。

 


最后,VPC是用户在云上具备网络管理能力的基础。在经典网络中,用户在云上其实是非常缺乏网络管理能力的,用户有一台经典网络的ECS,用户也只有了和公网通信的能力,最多加上安全组可以做一些安全控制的能力,但如网段规划、子网划分、路由管理、使用NAT管理公网出入等网络管理能力都几乎没有或很弱,而VPC则让用户具备了很多的网络管理能力。

什么是SDN


 

SDN是Software Defined Network的缩写, 翻译成中文就是软件定义网络 。SDN不是一种具体的技术或协议,而是一种新的网络设计理念。SDN的核心思想是控制和转发分离。SDN产生的原因是由于传统网络难以维护,人肉操作太多,变更困难效率低,尤其是在云计算的环境下,虚拟化带来的高密度、业务的高速增长、对快速响应能力的高要求,以及用户对网络安全隔离和灵活管理的需求,使传统网络的慢和业务发展的快之间的矛盾越来越大,因此,有了SDN,也有了NFV。SDN网络和传统网络的对比可以参考下图




什么是NFV


NFV是Network Function Virtualization的英文缩写,翻译成中文就是网络功能虚拟化。我们知道,传统的网络设备基本都是使用专用的硬件设备实现的,比如我们熟悉的防火墙,F5这样的硬件设备,又如路由器和交换机。而NFV则是希望使用普通的x86服务器来代替专用的网络设备,使网络功能不再依赖专用设备,而是通过x86服务器和软件来实现。NFV除了可以节约成本外,还通过开放API的方式,使得网络功能更灵活,更有弹性。



VPC和SDN/NFV的关系

我们在做SDN,也在做NFV,我们在用SDN的思想实现NFV。从SDN的思想来说,我们有自研的Controller(控制器)和XGW(转发设备)。从NFV来说,我们的Controller(控制器)和XGW(转发设备)都是基于x86服务器和自己研发的软件实现的,在这基础上,实现了VPC、路由器、交换机、NAT网关等等网络功能。因此,VPC可以认为是NFV的一个网络功能或网络产品。



VPC的具体实现路径


那么VPC又有哪些具体实现方式呢?要谈这个问题,首先需要简单了解一下Overlay网络虚拟化技术。Overlay是在现有的网络架构上叠加的虚拟化技术,本质是L2 Over IP的隧道技术。可以在对现有基础网络不进行大规模修改的条件下实现,并且和其它网络隔离。简单说就是在现有的物理网络基础上进行了一次虚拟化,称之为Overlay。Overlay可以让系统和服务(如云计算中的ECS,SLB等云产品)运行中虚拟化层,“不再依赖”物理网络,达到与物理网络解耦的目的。当然,这个“不再依赖”是从业务逻辑上说的,而不是真正底层不再依赖。


如下图的Overlay网络示意图,虚拟网络运行在物理网络上,虚拟网络上承载了ECS,RDS,SLB等云产品,也有虚拟交换机,虚拟路由器这样的虚拟化网络设备,在虚拟网络层面,ECS和SLB,RDS等云产品的通信从业务逻辑上理解,可以认为是直接在虚拟网络层面完成的,而“不需要”通过物理网络。



 那么,Overlay又有哪些实现技术呢?早期有一些标准二层Overlay技术,如

RFC3378(Ethernet ip IP)

H3C的EVI(Ethernet Virtual Interconnection)

Cisco的OTV(Overlay Transport Virtualization)


现在云服务商用的比较多的是基于主机(x86服务器)的Overlay技术,在服务器的Hypervisor内vSwitch上支持基于IP的二层Overlay技术。主机的vSwitch支持基于IP的Overlay之后,虚拟机的二层访问直接构建在Overlay上,物理网络不再感知虚拟机的诸多特性,从而实现了和虚拟网络的解耦。


再进一步细分Overlay的技术路线,主要可分为如下三大技术路线


VXLAN
NVGRE
STT

 


VXLAN是将以太网报文封装在UDP传输层上的一种隧道转发模式,VXLAN通过将原始以太网数据头(MACIP、四层端口号等)HASH值作为UDP的号。采用24比特标识二层网络分段称为VNI(VXLAN Network Identifier),类似于VLAN ID作用

 

NVGRE
NVGRE
是将以太网报文封装在GRE内的一种隧道转发模式采用24比特标识二层网络分段,称为VSI类似于VLAN ID作用NVGREGRE扩展字段flow ID,这就要求物理网络能够识别到GRE隧道的扩展信息,并以flow ID进行流量分担

 

STT
STT
利用了TCP的数据封装形式,但改造了TCP的传输机制,数据传输不遵循TCP状态机,而是全新定义的无状态机制,将TCP各字段意义重新定义,无需三次握手建立TCP连接,因此称为无状态TCP

 


这三种技术大体思路都是将以太网报文承载到某种隧道层面,差异性在于选择和构造隧道的不同,而底层均是IP转发。总体而言,VXLAN利用了现有通用的UDP传输,成熟度高。具有更明显的优势,L2-L4层链路HASH能力强,不需要对现有网络改造,对传输层无修改,使用标准的UDP传输流量,业界支持度最好,目前商用网络芯片大部分支持。这也是
阿里云VPC采用的技术路线。

本文为云栖社区原创内容,未经允许不得转载,如需转载请发送邮件至yqeditor@list.alibaba-inc.com

文章评论

团队中“技术大拿”并非越多越好
团队中“技术大拿”并非越多越好
2013年美国开发者薪资调查报告
2013年美国开发者薪资调查报告
Google伦敦新总部 犹如星级庄园
Google伦敦新总部 犹如星级庄园
程序员和编码员之间的区别
程序员和编码员之间的区别
我是如何打败拖延症的
我是如何打败拖延症的
5款最佳正则表达式编辑调试器
5款最佳正则表达式编辑调试器
科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
为什么程序员都是夜猫子
为什么程序员都是夜猫子
 程序员的样子
程序员的样子
中美印日四国程序员比较
中美印日四国程序员比较
程序员周末都喜欢做什么?
程序员周末都喜欢做什么?
“肮脏的”IT工作排行榜
“肮脏的”IT工作排行榜
2013年中国软件开发者薪资调查报告
2013年中国软件开发者薪资调查报告
什么才是优秀的用户界面设计
什么才是优秀的用户界面设计
每天工作4小时的程序员
每天工作4小时的程序员
旅行,写作,编程
旅行,写作,编程
如何成为一名黑客
如何成为一名黑客
60个开发者不容错过的免费资源库
60个开发者不容错过的免费资源库
那些争议最大的编程观点
那些争议最大的编程观点
代码女神横空出世
代码女神横空出世
10个帮程序员减压放松的网站
10个帮程序员减压放松的网站
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
做程序猿的老婆应该注意的一些事情
做程序猿的老婆应该注意的一些事情
程序员的一天:一寸光阴一寸金
程序员的一天:一寸光阴一寸金
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
Java程序员必看电影
Java程序员必看电影
那些性感的让人尖叫的程序员
那些性感的让人尖叫的程序员
写给自己也写给你 自己到底该何去何从
写给自己也写给你 自己到底该何去何从
程序员的鄙视链
程序员的鄙视链
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
总结2014中国互联网十大段子
总结2014中国互联网十大段子
看13位CEO、创始人和高管如何提高工作效率
看13位CEO、创始人和高管如何提高工作效率
我跳槽是因为他们的显示器更大
我跳槽是因为他们的显示器更大
Java 与 .NET 的平台发展之争
Java 与 .NET 的平台发展之争
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
“懒”出效率是程序员的美德
“懒”出效率是程序员的美德
如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
聊聊HTTPS和SSL/TLS协议
聊聊HTTPS和SSL/TLS协议
鲜为人知的编程真相
鲜为人知的编程真相
程序员应该关注的一些事儿
程序员应该关注的一些事儿
一个程序员的时间管理
一个程序员的时间管理
我的丈夫是个程序员
我的丈夫是个程序员
程序员眼里IE浏览器是什么样的
程序员眼里IE浏览器是什么样的
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
编程语言是女人
编程语言是女人
程序员都该阅读的书
程序员都该阅读的书
漫画:程序员的工作
漫画:程序员的工作
十大编程算法助程序员走上高手之路
十大编程算法助程序员走上高手之路
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有