+ All Categories
Home > Documents > ODL 和博科 SDN 控制器 - scut.edu.cn · SDN 控制器的作用 Common Services Service...

ODL 和博科 SDN 控制器 - scut.edu.cn · SDN 控制器的作用 Common Services Service...

Date post: 05-Jul-2020
Category:
Upload: others
View: 8 times
Download: 0 times
Share this document with a friend
42
ODL 和博科 SDN 控制器 产品和应用 1 沈之千 高级技术顾问
Transcript

ODL 和博科 SDN 控制器产品和应用

1

沈之千高级技术顾问

世界在变.

暴增的数据计算机和数据迁移到云中心和移动设备上服务器虚拟 – 数据中心虚拟化移动设备的急速增长

网络尚未改变.世界在变.

ODL 控制器和博科 SDN 控制器

4

5

今天的网络和未来的网络SDN 逻辑上整合网络的控制平面

厂商 A 厂商 B 厂商 C

SDN

控制器

Northbound API

业界标准的协议

标准的模型化语言

• 采用开放标准的逻辑控制平面,不依赖于特定厂商

• 通用编程接口

• 标准的控制协议和模型化语言

CLI/API

EMS/NMS

Vendor A

CLI/API

EMS/NMS

Vendor BVendor

Specific

Management

Captive

Control

Plane

Industry

Standard

Protocols

Vendor C

CLI/API

EMS/NMS

• EMS, NMS, CLI, 和 APIs 需要特定厂商提供

• 每种设备的控制平面均为私有

• 标准的通讯互联协议

OpenDaylight 项目Linux Foundation 针对 SDN 和 NFV 的开源控制框架项目

6

• OpenDaylight 是专注于 SDN 和 NFV 的开源框架项目

• 支持厂商包含: Brocade, Cisco, Arista, Juniper, Ciena, Hewlett Packard, NEC, VMware, Huawei, 等等

• OpenDaylight 框架的重要特性:

• 标准化的 REST API (northbound): 供应用开发者使用

• 标准化和厂商定制的 plugins (southbound): 允许广大交换机、路由器厂商提供增值特性

• 服务抽象层体系架构: 简化网络复杂性,提供软件开发者将重点集中在商务流程而非厂商私有化的接口

7

还在不断增长…

OpenDaylight 参与厂商

控制器平台

应用和服务允许软件开发者开发创新应用,来控

制网络、获取信息

网络 – 交换机和路由器

允许网络设备制造商创建相关插件和信息模型来改善网络管理、降低成本

SDN 控制器的作用

Service Abstraction LayerCommon Services

Standardized REST API

Standard Interfaces and Plugins

BGP-LS

PCE-P

用户开发的应用 厂商开发的应用

NETCONF

YANG

OVSDBSNMPOpenFlow

1.0 / 1.3

Neutron

插件

厂商定制的Plugins

8

南向和北向接口

9

博科 Open SDN 控制器

网络应用、协作层和服务层

Controller平台

Southbound接口和协议

数据平面单元(虚拟交换机、物理设备接口)

Open Daylight APIs (REST)

Network servicefunctions

Platformservices Extensions

OpenFlowOther standard

protocols (ONF, IETF, …)

Network applications, orchestration, and services

Vendor-specific interfaces

Service Abstraction Layer (SAL)

提供客户用来构建自有SDN策略的标准框架平台

提供博科用户方便地搭建关键协作层以及与之关联的服务,创建真正的按需数据中心

博科 OpenDaylight 控制器博科提供测试、支持和服务保障的商用版本

10

• 源自 OpenDaylight 开源控制器,提供高质量保证的定制版本

• 所有博科增强特性反馈于开源社区,避免厂商锁定

• 提供全球范围的技术支持和 24x7 小时服务以及及时的缺陷修复

• 支持博科 MLXe, VDX, ICX 和 Vyatta vRouter 系列

• 支持广泛的第三方厂商交换机和路由器

• 提供全面的开发支持,包含培训课程、应用测试和认证

• 用户可以在此基础上进行应用创新和开发

OpenStack

Orchestration

YANG

Model

s

Service Abstraction LayerCommon Services

Standardized REST API

Standard Interfaces and Plugins

BGP-LS

PCE-P

Customer Developed

Applications

Vendor Developed

Applications

NETCONF

YANG

OVSDBSNMPOpenFlow

1.0 / 1.3

Neutron

Plugin

Vendor-Specific Plugins

OpenDaylight 控制器

• 控制器平台• 服务抽象层

• 基础网络服务功能

• 南向接口和协议插件• OpenFlow 1.0/1.3, NETCONF, OVSDB, BGP-LS, PCE-P, SNMP, LISP

• 厂商定制的插件 (比如. Brocade Vyatta vRouter Control Interface)

博科商用版本

11

Service Abstraction LayerCommon Services

Standardized REST API

Standard Interfaces and Plugins

BGP-LS

PCE-P

Customer Developed

Applications

Vendor Developed

Applications

NETCONF

YANG

OVSDBSNMPOpenFlow

1.0 / 1.3

Neutron

Plugin

Vendor-Specific Plugins

博科 SDN 控制器针对 OpenDaylight 控制器的商用支持版本

12

博科定制的商用版本,需要额外软件许可

Base Network Service Functions

控制器平台

南向接口和协议插件

OpenDaylight APIs (REST)

Service Abstraction Layer (SAL)

网络应用、协作层和服务层

OVSDB

博科提供开源代码

博科提供的专用插件

博科交换机和路由器

第三方合作伙伴的开发应用

需要额外的博科应用许可

SDN 控制器实践和开发

13

14

利用 Mininet 来模拟交换机环境

/-- s2 --- s3 --\

h1 --- s1 s5 --- h2

\------- s4 ------/

sudo mn --custom ./odl-paths-topo.py --switch ovsk,protocols=OpenFlow13 --controller=remote,ip=x.x.x.x,port=6633 --mac --topo pathstopo

15

利用 Mininet 来模拟交换机环境

16

利用 Mininet 来模拟交换机环境

NETCONF

• 网络配置协议

• IETF 制定的网络管理协议

• RFC 4741 定义

• NETCONF 提供安装、操控、删除网络设备配置的机制

• 操作在一个简化的远程程序调用 (RPC) 层上完成

• 使用基于 XML 语言的数据封装来实现配置数据和协议交互

17

YANG

• 用于模型化配置和状态数据的语言

• IETF 定义的 RFC 6020

• 配置数据采用树状结构

• 数据可以使用复杂类型,比如 lists and unions

• 可以在 NETCONF 的内容和操作层上表示

• 对应到 NETCONF XML 表示

• 完美支持约束和数据验证

18

NETCONF 和 YANG

• 范例:

• Protocol – SNMP

• Data model – MIBS

数据模型和承载协议

19

YANG

• NETCONF 在业界大量使用

• NETCONF 需要一种数据模型语言与之匹配

• 其他语言很少设计用来实现配置管理 (SMI (SNMP), UML, XML Schema)

• 其他语言缺少关键的特性如:

• 易读性

• 提供语义和语法来验证配置数据模型的机制

为什么采用?

20

REST

• REST 提供了一组定义体系架构的原则

• 用来设计 Web 服务,专注于系统资源

• 系统资源状态通过 HTTP 表达和传递

• 什么是系统资源?

• 可以通过客户端远程操控服务器端的一组数据

• 可以是文字、图像、多媒体文件等

• HTTP 提供传递和操控资源的方法

• 资源通过一个 URL 来表达

• 独立于平台和语言

21

REST

• 计算机编程语言中,CRUD 是定义特定操作的缩写

• CRUD:

• Create

• Read

• Update

• Delete

• 对应到 HTTP:

• 在服务器上创建资源,用 POST.

• 获取资源,用 GET.

• 改变资源状态或更新,用 PUT.

• 删除资源,用 DELETE.

什么是 REST – CRUD 和 HTTP

22

• 运行于 HTTP 上面的类似于 REST 的协议,用于获取用 YANG 定义的数据, 采用 NETCONF 定义的数据存储结构

• RESTCONF 用来获取控制器内部的数据存储

• 控制器中二种数据存储

• Config – 包含通过控制器插入的数据

• Operational – 包含通过网络插入的数据

• RESTCONF 接受端口 8080 for HTTP 的请求

• RESTCONF 支持 OPTIONS, GET, PUT, POST, DELETE 操作

• 请求和响应数据可以是 XML 或者 JSON 格式

RESTCONF

• JavaScript Object Notation.

• JSON 是一种存取和交换数据的句法

• 与 XML类似,更容易使用

• 独立于平台

• 案例:

JSON

{

"path": [ {

"source-addr": "10.0.0.1"

,"destination-addr": "10.0.0.2"

} ]

}

25

使用 REST 客户端软件来管理网络

26

使用 REST 客户端软件来管理网络

http://localhost:8080/restconf/operational/opendaylight-inventory:nodes/

27

使用 YANG UI 图形化界面来管理网络

28

使用 YANG UI 图形化界面来管理网络

29

使用 YANG UI 图形化界面来管理网络

控制器简化子系统一览

30

MD-SAL

NB API - RESTCONF

NETCONF

UI - RESTCONF 客户端

INTENT REALIZED

OPENFLOW SNMP

模型驱动的应用逻辑

外部应用

31

• 用来沟通北向与南向接口中间的层面

• 决定如何实现将来自北向 APP的请求,将底层南向接口的协议隔离,北向应用开发将不必关注底层协议

• 底层协议用来连接网络设备,可以是 OpenFlow (1.0, 1.3), BGP-LS, Netconf, OVSDB, SNMP 等。

• 二种不同的 SAL:

• AD-SAL :基于应用驱动

• MD-SAL :基于模型驱动

• MD-SAL 不依赖于底层协议,用来支持任何设备和服务模型

服务抽象层 - SAL

32

博科Path Explore图形化界面管理网络

33

博科Path Explore图形化界面管理网络

34

博科Path Explore图形化界面管理网络

博科 SDN 控制器应用案例

35

博科 SDN 控制器应用案例软件沟通网络和商务需求

36

客户化分析 大数据 安全 QoS 和流量管理

广域网优化容错和灾备研发和定制新的

协议服务配置和策略

下发

37

容量耗尽攻击防范为博科多业务路由器 MLXe 优化设计

日益增长的容量耗尽攻击

硬件防范设备过于昂贵

大部分解决方案同时也导致数据通信的中断

通过 sFlow 数据侦测、分析容量耗尽攻击

针对攻击的策略矫正

使用博科 SDN 控制器

支持 OpenFlow 1.3 的多业务路由器 MLXe

基于策略的解决方案提供灵活的控制

提供从千兆到 100 GbE 的性能

高性价比

不中断正常流量

面临的问题 解决方案 方案优势

容量耗尽攻击防范

1. 数据中心设备发送 sFlow 采样数据到sFlow 的收集、分析模块

2. sFlow 分析、识别容量耗尽攻击

3. 流量转向应用提供基于策略的界面和 REST APIs,通知控制器将攻击流量转向

4. 博科 Vyatta SDN 控制器下发 OpenFlow 1.3 的侧率来通知路由器丢弃攻击流量

亮点: 更经济的旁路解决方案

38

数据中心网络

博科sFlow 分析模块Brocade TS App

1

23

4

博科 SDN 控制器(BVC)

客户端门户

sFlow 采样数据Ethernet

VLAN, VXLAN

IPv4/v6, NVGRE

MPLS

39

流量操控支持任何 OpenFlow 1.0 和 1.3 的交换机

虚拟化环境中网络流量复杂化

修改流量路径的难题

难以人为插入新的网络服务

通过图形化界面直观地修改流量路径

博科 SDN 控制器

支持 OpenFlow-的交换机

直观化网络拓扑和流量路径

直观修改流量路径

快速的服务插入

面临的问题 解决方案 方案优势

拖拽式的路径修改

博科 Vyatta 控制器包括图形化的网络拓扑和路径显示。对于任何受控于博科 Vyatta 控制器的设备(OpenFlow), 图形化界面提供拖拽路径的修改方式。

博科 Vyatta 控制器— 图形化拖拽路径

Brocade

ICX 6610

数据中心

Brocade

ICX 6610

Brocade

ICX 6610Brocade MLXe

Brocade VDX

40

博科提供开放的开发者用户论坛

用户论坛包含:

- 博科 SDN 控制器下载- APIs 下载- 文档资料- 演示视频- 样本脚本- 专家回答……

41

http://community.brocade.com/t5/DevNet/ct-p/APISupport

谢谢!


Recommended