网络虚拟化(SDN,NFV..)和企业骨干网的演化
BGP和IGP的路由黑洞问题
在描写叙述企业骨干网(大型企业的内网)之前。我得先来解释一下互联网路由的层次问题,理解了这个。你才干理解企业内网的构建规则,我还是以问题開始吧。
路由本身是层次化的,可是路由的查询则是平坦的。比方下图的情形:
如今看上图中红色字描写叙述的问题。显然B并不知道10.1.2.0/24的不论什么信息。尽管说在总体上,AS200知道10.1.2.0/24的下一跳为172.16.1.1,可是由于路由查找是平坦的(系统不会将查询请求发送到一个叫做“AS路由器”的地方来层次化查询),这就要求AS200中每个路由器都有10.1.2.0/24这条路由,显然的解决方式是有的。那就是在边界路由器上把从BGP学到的路由所有注入到IGP,比方OSPF中。然而这会让路由表全然平坦化!
这会丢失BGP路由属性信息,哪些路由是从BGP学习到的,还是能够区分的。系统路由表将会大大膨胀!
属性的丢失是比較严重的,为此将BGP注入到IGP不是一个好办法!
        那么还有什么办法呢?非常easy,那就是建立Full mesh iBGP,即所有路由器之间所有建立iBGP连接,这样在每个路由器均会保存所有的两类路由项,一类是IGP路由项,还有一类是BGP路由项。两类路由项分别由IGP进程和BGP进程分别独立维护,不会相互影响,这就攻克了路由黑洞问题。
         当然,上面的讨论是简化的,没有考虑反射器等机制...介绍BGP和IGP不是本文的目的,本文是想介绍数据中心以及互联网公司骨干网的。
互联网企业骨干网的演化
无论是阿里还是腾讯,或者其它大型企业。一開始创业的时候,其网络大概就是这个样子:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZG9nMjUw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
可是总有一天,这些公司会产生自己的大量的内容和数据。于是从一開始租用server。到最后自建IDC机房,终于这些大型互联网企业会拥有多个IDC,这就须要将多个IDC互联起来,从而形成DCI(Data Center Interconnection)网络,也就是所谓的企业骨干网。
事实上不光是互联网企业,传统的制造业企业,跨国银行等也是相似的网络拓扑布局,我本人在2013年左右一直跟这样的跨国银行打交道,而眼下在大型互联网企业就职,也内窥了好多的内网拓扑,可是本着原则,我是不可能公开这些细节的(很多其它的细节我也不知道...),所以我仅仅能简而化之。
        假设企业拥有了多个IDC或者其分公司分布在多个物理区域。将这个分散的地点连接起来就是一个迫切的需求。
问题是採用什么方式连接呢?能够是物理的连接,那么这意味着企业要挖沟布光缆。眼下中国三大运营商(以前的邮电部小弟)均有这个能力和资质来完毕这件事。可是对于大多数企业而言,由于通信资源属于国家级战略资源,是不同意自己挖沟布线的,只是好像听说山西煤老板要自建海底光缆...还好不是在国土上自建...只是也不是非常绝对,假设一家企业財大气粗到一定地步,一切皆有可能的。
假设不能自己挖沟布线,那么咋办?事实上三大运营商已经帮你搞好了,你仅仅须要租用或者购买他们部署的光密集波分复用(DWDM)系统即可,简单快捷。用钱能解决的事决不找关系。这是成功商人的原则。
        好了。如今搞定了不同IDC之间,分公司之间的互联问题。那么一个大型企业的网络便会变成以下的样子:
有点复杂,只是不要紧,仅仅要你知道什么是IGP,什么是BGP,应该是非常好理解的。
        这就是企业骨干网的框架。这样的企业骨干网在国内是没有对外运营权限的,也就是说,它仅仅是一个大的数据库,而不同意终端用户接入穿越。即不同意用户直接接入这个骨干网。然后依靠它的路由系统去訪问别的资源,说白了就是你不能跟三大运营商抢生意。
所以说这些企业内网基本上没有复杂的接入层,然而大型企业须要大量的数据调度。特别是提供CDN服务的企业,所以说它的汇聚层和核心层就必须非常强大!值得一提的是,国内非常多人不会把这样的企业网络看成是骨干网。由于在国内。所谓的骨干网这一称呼是被赋予运营意味的,假设不能运营,不能被接入。那就不是骨干网,而仅仅能是一个“私网”,另外,假设不是挖沟布线建立起来的网络,而仅仅是租用的线路,非常多人也不觉得这是骨干网...事实上名称无所谓。知道概念也即可了。
本质上,所谓的企业骨干,就是DCI网络,把数据中心连在一起,无论是自己挖沟布线还是租用的线路。都算骨干。
DCI骨干网。DCI核心网。随便怎么说吧...
        如今简单说下为什么要将一个网络划分为汇聚层和核心层,事实上非常easy。原则就是能本地交换的尽量本地交换。迫不得已再跨区。以上的企业网拓扑是一个平坦层面上的拓扑,依照这个层次关系,企业网的拓扑能够又一次画例如以下:
如今简化了,不是吗?
新旧两代内部网络的构建
以前。假设跨区域的分公司要二层穿越或者三层穿越,那么就要把整个公网云看作一个路由器,典型的技术就是通过GRE等tunnel技术来封装数据包,隧道模式的VPN就是这么个道理,仅仅是加上了安全层面的东西。例如以下图所看到的:
我们能够看到,作为隧道终结点的路由器设备要完毕的工作特别繁重!
这样的设备事实上把很多其它的功耗消耗在了隧道封装而非路由。随着IDC越来越猛,server的增多,流量的添加,这样的隧道终结点越来越不堪重负,所以依照虚拟化的思想。NFV就被提出并派上了用场。
总的来讲就是,既然数据到了隧道终结点要被各种封装,那为何数据不能在server内部就完毕封装呢?实现的思路非常easy,事实上就是把专门的硬件设备所要完毕的功能用软件的方式实如今server内部。在虚拟化的时代,一台server再也不是以往看到的一台机器了,每一台server事实上仅仅是个黑盒子,里面可能承载了一个网络,所以说虚拟交换机的概念就被提出并付诸实施了。假设想形象化理解,那么考虑一下我们常常使用的VMWare,事实上VMWare内部就有一个虚拟交换机。详细我就不多说了。
        依托虚拟化概念实现了NFV的IDC,大大降低了以往传统设备的负载,使得构建企业大二层变得非常easy:
除了NFV,我想说下SDN的意义。
        注意本文的第三幅图,我解释说OSPF作为主导的IGP协议来完毕最优路径规划,可是事实上这样的规划的效果非常差!有时候次优路径反而是最优的。这就是SDN全局控制的深意,由于SDN控制器知道全网当前的快照。我所了解到的是Google以及国内的腾讯。阿里等公司已经在自己的骨干上使能了SDN,效果如何呢?Google作为发起方和第一人。肯定不错,国内的所谓大型互联网企业的技术,我仅仅能呵呵,无论如何。概念是抢到了。无措也无错。
说点胡话做点广告
1.我用OpenVPN构建过而且成功构建过大二层;
2.我以前自己实现过一个LISP全然绕过了GRE。
3.SDN能否铺开取决于左翼和右翼之间的对抗。
4.TCP/IP模型正在被颠覆。这个我是认同的。
...
突然又翻出了几年前的网络拓扑图。我在想,干嘛那么在乎TCP啊。后来我明确了答案,对于大多数程序猿而言,数据离开了电脑。自己就再也控制不住了,所以不懂网管的程序猿脑子里仅仅有TCP而无IP。
网管意味着什么?事实上网管也不是清闲的群体,网管也要会C语言。也要会Python,也要会Java,网管要开发各种工具监控网络中的动态,网管非常忙...最关键的一点。网管能够拔网线。能够对交换机浇水,面对此状,程序猿又能如何呢?难道用加班的方式感动网管把网线插上吗?
        我不懂编程,我不懂网络,我不是程序猿,我不是网管...
网络虚拟化(SDN,NFV..)和企业骨干网的演化的更多相关文章
- 阅读【现代网络技术 SDN/NFV/QOE 物联网和云计算】 第一章
		本人打算阅读这本书来了解物联网和云计算的基础架构和设计原理.特作笔记如下: 作者: William Stallings 本书解决的主要问题: 由单一厂商例如IBM向企业或者个人提供IT产品和服务,包 ... 
- 网络虚拟化 SDN
		一.Linux Bridge :Linux中的网桥 假设宿主机有 1 块与外网连接的物理网卡 eth0,上面跑了 1 个虚机 VM1,现在有个问题是: 如何让 VM1 能够访问外网? 至少有两种方案 ... 
- SDN跟网络虚拟化的完美结合
		SDN跟网络虚拟化的完美结合 之前说过,所谓的“SDN最适合的领域是数据中心”的说法,笔者认为更准确的说法应该是SDN最适合的领域是数据中心中的网络虚拟化应用.为什么说SDN 非常适合用在网络虚拟化中 ... 
- 《重构网络:SDN架构与实现》Chapter7 SDN与网络虚拟化 随笔
		参考: <重构网络:SDN架构与实现>,作者:杨泽卫.李呈. Chapter7 SDN与网络虚拟化 结构 7.1 网络虚拟化 7.1.1 为什么需要网络虚拟化技术 7.1.2 网络虚拟化 ... 
- 网络功能虚拟化(NFV)
		你造什么是网络功能虚拟化(NFV)吗? NFV将网络功能整合到行业标准的服务器.交换机和存储硬件上,提供了优化的虚拟化数据平面,NFV通过服务器上运行的软件让管理员取代传统物理网络设备,并降低成本.能 ... 
- SDN网络虚拟化、资源映射等相关论文粗读
		1. Control Plane Latency with SDN Network Hypervisors: The Cost of Virtualization 年份:2016 来源:IEEE NE ... 
- 从SDN鼻祖Nicira到VMware NSX 网络虚拟化平台的简单探讨
		以前的大二层技术,一般是在物理网络底层使用IS-IS路由技术,再在此基础之上,实现数据中心网络的二层扩展,如公有的Trill.SPB技术和Cisco私有的OTV.Fabricpath技术:前沿一些的网 ... 
- 基于SDN的IP RAN网络虚拟化技术
		http://www.zte.com.cn/cndata/magazine/zte_technologies/2014/2014_4/magazine/201404/t20140421_422858. ... 
- 也谈OpenFlow, SDN, NFV
		Copyright (2014) 郭龙仓. All Rights Reserved. OpenFlow 传统的网络环境中,仅仅有路由器/交换机之间的接口/协议是标准化的,可是在网络设备内部,数据平面和 ... 
随机推荐
- tomcat7.0.27的bio,nio.apr高级运行模式(转)
			一 前言 tomcat的运行模式有3种.修改他们的运行模式.3种模式的运行是否成功,可以看他的启动控制台,或者启动日志.或者登录他们的默认页面http://localhost:8080/查看其中的服务 ... 
- MySQL Workbench--Window安装试用
			MySQL Workbench 01.概述 MySQL Workbench provides DBAs and developers an integrated tools environment f ... 
- 提高PHP编码的一些技巧
			1.不要使用相对路径 例如 require_once('../../lib/some_class.php'); 该方法有很多缺点: 1)它首先查找指定的php包含路径, 然后查找当前目录 2)如果该脚 ... 
- Windows远程连接局域网内或同一个网段或同一个路由器的某台机器
			http://bbs.shendu.com/thread-1443245-1-1.html 亲自试验,具体操作如下: 我现在有三台机器和对应的ip地址(ip地址自己手动填写,不会网上搜) ... 
- java IO 入门例子
			import java.io.File; /** * File类型基本操作 */ /** * @author Administrator * */ public class FileDemo { /* ... 
- 转:造HTTP请求Header实现“伪造来源IP”
			构造 HTTP请求 Header 实现“伪造来源 IP ” 在阅读本文前,大家要有一个概念,在实现正常的TCP/IP 双方通信情况下,是无法伪造来源 IP 的,也就是说,在 TCP/IP 协议中,可以 ... 
- [android] 网络断开的监听
			标签: android 网络监听 杂谈 分类: Android [转自] http://blog.sina.com.cn/s/blog_5d5996d001012o07.html 其实手机在网络方面 ... 
- Template Method - 模板方法模式
			1.概述 在面向对象开发过程中,通常我们会遇到这样的一个问题:我们知道一个算法所需的关键步骤,并确定了这些步骤的执行顺序.但是某些步骤的具体实现是未知的,或者说某些步骤的实现与具体的环境相关.例子1: ... 
- Python 字典 update() 方法
			描述 Python 字典 update() 方法用于更新字典中的键/值对,可以修改存在的键对应的值,也可以添加新的键/值对到字典中. 用法与 Python dict() 函数相似. 语法 update ... 
- POJ 1789:Truck History(prim&&最小生成树)
			id=1789">Truck History Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 17610 ... 
