阅读文章《The Road to SDN: An Intellectual History of Programmable Networks》,并根据所阅读的文章,书写一篇博客,回答以下两个问题:
文章《The Road to SDN: An Intellectual History of Programmable Networks》中文版
1.过去20年中可编程网络的发展可以分为几个阶段?每个阶段的贡献是什么?
文章原文:
In this section, we review early work on programmable networks. We divide the history into three stages, as shown in Figure 1. Each stage has its own contributions to the history:
- active networks (from the mid-1990s to the early 2000s), which introduced programmable functions in the network to enable greater to innovation;
- control and data plane separation (from around 2001 to 2007), which developed open interfaces between the control and data planes;
- the OpenFlow API and network operating systems (from 2007 to around 2010), which represented the first instance of widespread adoption of an open interface and developed ways to make control-data plane separation scalable and practical.
答:
将历史分为三个阶段,如图所示:
每个阶段对历史都有自己的贡献:
主动网络(从20世纪90年代中期到21世纪初),它在网络中引入了可编程功能,以实现更大的创新
Programmable functions in the network to lower the barrier to innovation.
可编程的网络功能降低了创新的障碍。
Network virtualization, and the ability to demultiplex to software programs based on packet headers.
网络虚拟化,以及基于数据包头对软件程序进行多路分解的能力。
控制和数据平面分离(2001年至2007年),开发了控制和数据平面之间的开放接口
控制和数据平面之间的开放接口
an open interface between the control and data planes
网络的逻辑集中控制
logically centralized control of the network
使用数据平面的开放接口进行逻辑集中控制
Logically centralized control using an open interface to the data plane.
分布式状态管理
Distributed state management
OpenFlow API和网络操作系统(2007年至2010年左右),代表了第一个广泛采用开放接口的实例,并开发了使控制数据平面分离可扩展且实用的方法
网络设备和功能的普遍化
Generalizing network devices and functions.
新的网络操作系统的构想
Thevision of a network operating system.
分布式状态管理技术
Distributed state management techniques.
2.网络虚拟化与SDN的关系?
- SDN作为网络虚拟化的一种支持技术
云计算使网络虚拟化变得突出,因为云提供商需要一种方式,允许多个客户(或“租户”)共享同一网络基础设施。Nicira的网络虚拟化平台(Network Virtualization Platform,NVP)提供了这种抽象,而不需要底层网络硬件的任何支持,解决方案是使用覆盖网络为每个租户提供连接其所有虚拟机的单个交换机的抽象。然而,与先前在覆盖网络上的工作相比,每个覆盖节点实际上是物理网络的一个扩展——一个软件交换机(如Open vSwitch),它封装了发送到其他服务器上运行的虚拟机的流量。逻辑集中式控制器在这些虚拟交换机中安装规则,以控制如何封装数据包,并在虚拟机移动到新位置时更新这些规则。 - 网络虚拟化用于评估和测试SDN
将SDN控制应用程序与底层数据平面分离的能力,使得在将SDN控制应用程序部署到操作网络之前,可以在虚拟环境中测试和评估SDN控制应用程序。Mininet使用基于进程的虚拟化在同一物理(或虚拟)机上运行多个虚拟OpenFlow交换机、终端主机和SDN控制器,每个控制器都作为单个进程。使用基于进程的虚拟化允许Mininet模拟一个网络,在一台机器上有数百个主机和交换机。在这样的环境中,研究人员或网络运营商可以开发控制逻辑,并在生产数据平面的全面仿真上轻松地对其进行测试。一旦对控制平面进行了评估、测试和调试,就可以将其部署到实际的生产网络上。 - 虚拟化(切片)SDN
在传统网络中,虚拟化路由器或交换机是很复杂的,因为每个虚拟组件都需要运行自己的Controlplane软件实例,相比之下虚拟化“哑”SDN交换机要简单得多。FlowVisor系统使校园能够支持在承载生产流量的相同物理设备上进行联网研究的试验台,其主要思想是将业务流空间划分为“片”(Planetlab的早期工作中引入的概念),其中每个片有一个网络资源共享,由不同的SDN控制器管理。FlowVisor作为Hypervisor运行,向每个SDN控制器和底层交换机传递OpenFlow。