为什么?

最近一直在学习SDN方面的知识,本着“最好的学习就是分享”的精神,记录下本系列的文章,尝试更好地去理解SDN这一正当红的技术。

如何?

SDN领域现在已经充斥了大量的公司,大大小小无计其数,既有思科、juniper、Nicira(后被vmware收购)、Big Switch等,又有大量初创型的企业,如Arkin NET、Forward Networks。同时充斥着像是openstack neutron、mido之类大量开源的项目,而ONF、ODL等组织也各自博弈,意图掌控SDN的方向。

各个厂家火热的态度表明了网络未来的方向,同时也因初期标准的不完善呈现出不少乱象。

发展到当前阶段,SDN已经不是一门单一的技术的,也不是一种协议的,而变成了一种理念,在这种理念下,SDN呈现出来的特征包括:1.控制平面和转发层面的分立;2.开放的编程接口;3.集中化的网络控制;4.网络业务的自动化应用过程。

一些传统的厂家也在推自己的网络功能虚拟化技术—NFV,NFV的目的是利用虚拟化技术,在标准的X86架构上运行一些原来要在特定硬件上运行的网络设备(虽然原来由不少厂家硬件设备本身也是X86架构的)。如:防火墙、路由器、负载均衡设备等。而有一些厂家的NFV功能实现也可能会有统一的控制平面,搭载各厂家自己的转发层面的插件。并也支持编程。所以这一类的NFV可以视为SDN的一种形式。不过这不是我的重点。

这也给我的学习带来了不少的麻烦。

结合我学习的目的,最终我选定了三个资料较为完善且在未来有较大希望成为主流解决方案的产品,通过对比三家不同的实现方式,窥探SDN领域目前的现状,以及三家解决方案各自的技术优劣势。这三家分别是:openstack neutron(M版)、vmware nsx、opendaylight 。

Openstack neutron

当下最热的SDN项目,neutron是openstack的核心之一,虽然还不是特别成熟,但是影响面最广。

Vmware nsx

较早推出较完整的SDN解决方案的商用产品,有着Nicira人员的加持。解决方案和产品都比较成熟。

OpenDaylight

目前发展最快的开源SDN解决方案,成员大都是原网络设备厂商,三个月左右更新一个版本,但因为问题较多,实在无法上生产环境,也一直没能火起来。

这几类的产品核心也是以解决云计算数据中心需求为主,云数据中心也是对于SDN需求最为迫切的领域。可能最后会少量讨论SDN在园区、WAN网络上的应用。

目录

SDN网络学习分享

  1. SDN发展现状
  2. 云数据中心物理网络架构
  3. 二层技术和实现
  4. 三层技术和实现
  5. 防火墙技术和实现
  6. LB技术和实现
  7. VPN技术和实现
  8. SD-WAN
  9. SDN的未来

参考内容:

当前网上介绍openflow和openstack neutron的书籍非常多,但都以安装、部署、实现讲解为主,或者是泛泛而谈SDN大方向,能以简洁的语言把原理和问题讲清楚的并不多。为了保证get到一手知识,尽量理解方案的原理,最终参考了大量的资料,包括大神的博客、网络上中英文资料、书籍。尽量保证资料真实可查。所有的参考资源不一定能列全,但重要的文章都会附上链接.

水平、篇幅有限,如果对系列文章中的内容感兴趣,可以一起深入研究。

参考的内容包括不限于:

https://github.com/openvswitch/ovs/blob/master/FAQ.rst   neutron官方wiki

http://www.cnblogs.com/sammyliu/p/4622563.html      国内大神的博客,推荐大家关注

OpenStack Networking Essentials        很大部分内容来源于此

Mastering Openstack

新一代SDN Vmware NSX 网络原理与实践      很大部分内容来源于此

NSX网络虚拟化设计指南

Openstack neutron:目录的更多相关文章

  1. openstack Neutron分析(3)—— neutron-dhcp-agent源码分析

    1.neutron dhcp3个主要部件分别为什么?2.dhcp模块包含哪些内容?3.Dnsmasq配置文件是如何创建和更新的?4.DHCP agent的信息存放在neutron数据库的哪个表中? 扩 ...

  2. Openstack Neutron:三层技术和实现

    目录 - 1.Neutron 三层技术简介 - 2.集中式router - 1.在节点上安装L3 agent - 2.配置外部网络 - 3.通过CLI或者Horizon 来创建路由 - 4.连接租户网 ...

  3. Openstack neutron:云数据中心底层网络架构

    目录 - 目录 - 云数据中心流量类型 - NSX整体网络结构 - 管理网络(API网络) - 租户网络 - 外联网络 - 存储网络 - openstack整体网络结构 - 管理网络:(上图中蓝线) ...

  4. Openstack学习目录

    1.2016.12.27    ceph简介   crush算法    OSD(boject storage device)   Mds(cephfs) 使用cephfs时需要安装metadata s ...

  5. Openstack Neutron OVS ARP Responder

    ARP – Why do we need it? In any environment, be it the physical data-center, your home, or a virtual ...

  6. Openstack Neutron L2 Population

    Why do we need it, whatever it is? VM unicast, multicast and broadcast traffic flow is detailed in m ...

  7. 深入浅出新一代云网络——VPC中的那些功能与基于OpenStack Neutron的实现(一)

    VPC的概念与基于vxlan的overlay实现很早就有了,标题中的"新"只是一个和传统网络的相对概念.但从前年开始,不同于以往基础网络架构的新一代SDN网络才真正越来越多的走进国 ...

  8. openstack neutron中涉及的网络设备

    一.openstack neutron网络设备介绍 Bridge(网桥) 用于将两个LAN连接起来,主要靠的MAC地址学习机制.当网桥的Port收到包时会将包的源mac和port ID关联起来记入ma ...

  9. [转]OpenStack Neutron运行机制解析概要

    转载自:http://panpei.net.cn/2013/12/04/openstack-neutron-mechanism-introduce/ 自从开学以来,玩OpenStack也已经3个月了, ...

随机推荐

  1. 云ATM架构设计

    云ATM架构设计 启动程序(Start.java) public class Start { public static void main(String[] args) { MainView vie ...

  2. Solution -「COCI 2016-2017」 Mag 结论证明

    结论:最多包含一个 \(2\),并且不在链的两端点. 证明:我们问题分成两个 \(\texttt{pass}\). \(\texttt{pass 1}\):\(\forall u,s.t.x_{u}\ ...

  3. led跑马灯多种方法(移位法,位拼接法,调用模块法,位移及位拼接语法,testbench的理解,源文件的存储路径,计数器的个数,调用模块的方式)

    跟着教程写了几种方法,才发现自己写的虽然能实现,但比较繁琐.教程有三种方法: 1.移位法,每次左移一位,相比我自己写的,优点是不用把每一种情况都写出来.但是需要考虑左移到最后一位时需要自己再写个赋值语 ...

  4. HBase学习(一) 基本概念和安装基本命令

    HBase学习(一) 一.了解HBase 官方文档:https://hbase.apache.org/book.html 1.1 HBase概述 HBase 是一个高可靠性.高性能.面向列.可伸缩的分 ...

  5. P2532 [AHOI2012]【一本通提高组合数学】树屋阶梯

    [AHOI2012]树屋阶梯 题目描述 输入格式 一个正整数N( 1 ≤ N ≤ 500 1\le N \le 500 1≤N≤500),表示阶梯的高度. 输出格式 一个正整数,表示搭建方法的个数.( ...

  6. Page和list的区别 mybatis

    先看一段代码 点击查看代码 @Override public Result findUserPage(PageParam pageParam) { Page<SysUser> page = ...

  7. [Linux] 如何在 Linux 电脑上制作专业的视频教程

    目录 前言 1.软件工具准备 a. 录音软件 b. 录屏软件 c. 摄像头软件 d. 安卓屏幕操作软件 e. 视频剪辑软件 2.视频教程制作 3.效果 参考链接 前言 博主使用 Arch Linux ...

  8. php static 和self区别

    static(关键字) 类似于 self(关键字) , 但它指向的是被调用的类(Document) 而不是包含类(DomainObject) , static 和 self 的区别: <?php ...

  9. Vue 搭建脚手架 && 脚手架的文件结构 && 关于不同版本的Vue

    1 # 一.Vue 环境搭建 2 # 1.VsCode 编码插件:Vuter 3 # 2.Vue 脚手架安装 4 # 1).安装:npm install -g @vue/cli or yarn glo ...

  10. 3. 安装部署MGR集群 | 深入浅出MGR

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 目录 1. 安装准备 2. 初始化MySQL Server 3. 初始化MGR第一个节点 4. 继续设置另外两个节点 5. ...