《SDN核心技术剖析和实战指南》3.3读书笔记
这一节主要是介绍几种开源的SDN控制器。
NOX/POX。最初的NOX混合了C++和Python两种编程语言,现在演变为两个版本。NOX版本主要面向Linux平台,利用C++开发,目标是提供快速的控制平台;POX版本面向Windows、Mac OS、Linux等多种平台,利用Python开发,目标是提供控制器部署的便利性。两者可以看作是同一种控制器。
NOX采用了组件化的架构,可分为核心组件和应用组件。核心组件是用于和网络直接打交道的底层接口;应用组件既包括NOX本身提供的组件,也包括第三方扩展的组件(包括用户)。与SDN相关的组件包括以下几种:Discovery组件:用于链路发现;Topology组件:用于拓扑管理;Routing组件:用于计算路由信息;Monitoring组件:用于监控交换机工作状态;Authenticator组件:用于记录与定位已认证的主机和用户信息。另外,NOX向上提供REST API接口上层应用使用。
Ryu利用Python语言编写,目标是提供一个拥有逻辑上集中控制能力的SDN操作系统。同样,Ryu采用组件化的架构,并提供大量库函数供SDN应用的开发。其中几个主要组件如下:OF-wire:用于对OpenFlow协议的支持;Topology组件用于链路发现、拓扑管理以及路由计算等功能;OF REST提供REST API供用户配置OpenFlow交换机。另外,Ryu支持与OpenStack云计算管理平台的整合,可以实现资源池化和按需调度。
Floodlight基于Java语言开发,同样采用了模块化的设计架构。Floodlight的软件模块分为控制器模块和应用模块。控制器模块提供了Java API供应用模块调用,同时两类模块还共同支持向上层开发REST API作为北向接口。
《SDN核心技术剖析和实战指南》3.3读书笔记的更多相关文章
- 《SDN核心技术剖析和实战指南》2.3 OF-CONFIG配置管理协议小结
OpenFlow协议定义了交换机和控制器交换数据的方式和规范,但并没有定义如何配置和管理必需的网络参数和网络资源,OF-CONFIG的提出就是为了对OpenFlow提供配置管理支持.如下图所示,OF- ...
- 《SDN核心技术剖析和实战指南》第一章小结
第一章主要是概况.新技术有一个特点是,每家都有不同的说法.这里我只说说我比较认同的部分. SDN的核心概念大概有两个:转发面与控制面分离.开发可编程化.书里还说逻辑上集中控制,其实这个就可以从转发与控 ...
- SDN核心技术剖析和实战指南---读书笔记
第一章 SDN定义如下: SDN是一种新兴的基于软件的网络架构及技术,其最大的特点在于具有松耦合的控制平面与数据平面.支持集中化的网络状态控制.实现底层网络设施对上层应用的透明. SDN和NFV: O ...
- 《SDN核心技术剖析和实战指南》3.1控制器核心技术读书笔记
在SDN的架构中,控制器可以说是SDN的核心,它负责对底层转发设备的控制以及向上层应用提供可编程性的北向接口.从实现上看,主要分三个层面来考虑,南向接口技术,北向接口技术以及东西向的可扩展性能力.下面 ...
- 《SDN核心技术剖析和实战指南》2.1交换机核心技术小结
对于SDN交换机的技术,其实也适用于传统的交换机,只不过控制部分被分离出来而已.传统交换机的控制面主要是转发表的管理以及网络状态之类的各种表,现在这些都由控制器来担心.转发面主要由转发决策.背板和输出 ...
- 《SDN核心技术剖析和实战指南》2.4 OVS交换机实现分析小结
Open vSwitch(OVS)是一款基于软件实现的开源交换机.它能够支持多种标准的管理接口和协议以及跨多个物理服务器的分布式环境.特别地,OVS提供了对OpenFlow协议的支持,并且能够与众多开 ...
- 《SDN核心技术剖析和实战指南》2.2OpenFlow交换机规范小结
这节的内容相当多,主要是介绍OpenFlow标准特别是流表的相关特性. 典型的OpenFlow标准由三部分组成:安全通道,流表和OpenFlow协议.注意这个标准是一份设备标准,并不单指OpenFlo ...
- Java多线程编程实战指南 核心篇 读书笔记
锁 volatile CAS final static 原子性保障 具备 具备 具备 不涉及 不涉及 可见性保障 具备 具备 不具备 不具备 具备① 有序性保证 具备 具备 不涉及 具备 具备② 上下 ...
- 《Java多线程编程实战指南+设计模式篇》笔记
线程的监视:工具:jvisualvm.exe 命令:jstack PID 原子性: volatile关键字: 显示锁:人为实现的程序员可控制的锁,包括synchronized和Lock下的实现类: 线 ...
随机推荐
- cogs 53 多人背包
/* 要求每个最优 即累加前k优解 注意不用去重 */ #include<iostream> #include<cstdio> #include<cstring> ...
- C#学习第四天
今天主要学习了结构方面的知识,首先是定义,代码: struct<typeName> { <memberDeclarations> } struct route { public ...
- (转)Div左右两侧等高
一. 利用背景图,做出左右等高的模拟效果 这种方法不是真正的左右等高,而是在外框元素中添加一张背景图片,当内容增多时,背景会纵向重复,就会形成左右等高的效果. 这种方法不是真正的div自动等高,而 ...
- java.lang.UnsupportedClassVersionError: Bad version number in .class file
java.lang.UnsupportedClassVersionError: Bad version number in .class file造成这种过错是ni的支撑Tomcat运行的JDK版本与 ...
- 关于timestamp的二三事
之所以要写timestamp的随笔,是因为之前对它的理解存在误区,so. I have to remind myself by writing this informal essay. 微软文档链接: ...
- C#实现发送邮件
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- MySql Connector/Net Mysql like 搜索中文的问题(c#和asp.net连接mysql)
Connector/Net 6.9.8 选择.net/mono即可,不需要安装. 将对应版本的MySql.Data.dll复制到bin目录下即可使用 http://dev.mysql.com/down ...
- 注册表修改IP地址和DNS等信息
---------------------win8系统 1. 2. 3. --------------------------------------------------------------- ...
- 更改tabBarItem图片的问题
代码: UIImage *normal = [[UIImage imageNamed:@"tabbar_home_default"] imageWithRenderingMode: ...
- MySQL 删除数据表
MySQL 删除数据表 MySQL中删除数据表是非常容易操作的, 但是你再进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失. 语法 以下为删除MySQL数据表的通用语法: DROP TA ...