通信网络与交换 - ustchome.ustc.edu.cn/~xieqiaok/pub/txwl/ch7-2.pdf ·...

30
{wei,zqzhu}@ustc.edu.cn 中国科学技术大学 1 通信网络与交换

Upload: others

Post on 12-Jun-2020

14 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学 1

通信网络与交换

Page 2: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学 2

7 软交换与SDN网络

软交换网络

SDN网络

Page 3: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学 3

7.2 SDN网络

Page 4: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

提出背景

问题:现有的网络架构不适合a)复杂的控制模型b)快速的技术更新

原因:流量的控制和转发完全依赖于路由设备

解决方法:a) 控制面和数据面分离b) 将路由设备的转发功能抽象

SDN的提出

SDN是由美国斯坦福大学clean slate研究组提出的一种新型网络创新架构,实现了网络流量的灵活控制,为核心网络及应用的创新提供了良好的平台。2008年Nick McKeown等人在ACM SIGCOMM发表 题 为 OpenFlow :Enabling Innovation inCampus Network的论文,提出了OpenFlow的概念随后Nick和他的团队在OpenFlow的基础上提出了SDN的概念

SDN的提出

Page 5: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

软件自定义网络(SDN)

硬件硬件

特性特性 特性特性 硬件硬件

硬件硬件

硬件硬件

操作系统操作系统

操作系统操作系统

操作系统操作系统

操作系统操作系统

网络操作系统网络操作系统

控制程序控制程序 控制程序控制程序

特性特性 特性特性

特性特性 特性特性

特性特性 特性特性

Page 6: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

软件自定义网络(SDN)

SDN体系架构

Page 7: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

SDN的实现方式利用传统协议配置 (telnet, snmp, etc)

设备厂商私有协议

开放的结构化配置协议 (NETCONF)

新交换架构及协议 OpenFlow

软件自定义网络(SDN)

Page 8: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

SDN的部署

Stanford Computer Science Department

Gates Building

~1,000 network users

Stanford Center for Integrated Systems (EE)

Paul Allen Building

~200 network users

Page 9: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

谷歌公司于2011年底在其数据中心内部部署了世界上最大的基于OpenFlow的SDN广域网。利用SDN的管理方式,Google公司对内提供了流量工程

(TE)服务,将其内部网络线路利用率从之前的最高水准30%-40%提升到了

95%。

SDN的部署

Page 10: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

什么是OpenFlow?

OpenFlow是一种标准,是一个控制交换机行为的

协议,规定了处理数据包的规则模式:匹配数据包的包头行动:丢弃、转发、修改和发送给控制器计数器:字节的个数、数据包的个数

同时也是一种网络通信协议OpenFlow是交换机和控制器的交换标准

发展状况在校园中得到创新,目前被成功部署在斯坦福大学可以在我们的实验室被部署已有很多支持OpenFlow的软件硬件

Page 11: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

ControllerOpenFlow Switch

FlowTableFlowTable

SecureChannelSecure

Channel PC

hw

sw

Flow Table:定义如何处理数据Secure Channel:连接交换机和控制器OpenFlow Protocol:交换机和控制器的交互标准

什么是OpenFlow?

Page 12: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

什么是流表?

SwitchPort

MACsrc

MACdst

Ethtype

VLANID

IPSrc

IPDst

IPProt

TCPsport

TCPdport

Rule Action Stats

1. 转发数据包到指定端口2. 封装并转发给控制器3. 丢弃数据包4. 按照传统交换机进行数据包的转发

+ mask

Packet + byte计数

Flow Table Entry

Page 13: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

控制器与交换机的交互过程

第一步

控制器

FlowTable

Page 14: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

控制器与交换机的交互过程

控制器

第二步

FlowTable

“如果header=X,将数据包传输到端口4”

“如果header=Y,更改header=Z,并将数据传输到端口5和6”

“如果header=?,将数据传回控制器”

Page 15: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

OpenFlow的应用

OpenFlow

动态访问控制 无缝迁移

服务器负载均衡网络虚拟化

Page 16: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

动态访问控制

将数据流中第一个包转发至控制器控制器查询访问控制策略表控制器修改交换机流表,转发或阻塞数据流

Page 17: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

无缝迁移

控制器发现客户接入点发生变化修改各转发节点的流表并建立新路径

Page 18: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

服务器负载均衡

根据所设定的负载均衡策略,设置交换机流表

Page 19: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

网络虚拟化

Page 20: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

OpenFlow软硬件支持情况

数据层商用硬件:HP、NEC、Cisco、IBM、Juniper、华为等

开源硬件:NetFPGA

虚拟交换软件:OpenvSwitch

控制层 NOX、Beacon、Floodlight、Nettle、ONIX、POX等开源控制器

Page 21: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

部署基于OpenFlow的SDN

Page 22: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

实验室内平台实例1

利用联想ThinkServer RD530系列服务器开发并

部署实际SDN平台

平台细节 软硬件支持

路由设备(支持OpenFlow协议)

ThinkServer RD530系列服务+虚拟交换软件

SDN控制器 ThinkServer RD530系列服务器+开源控制器软件POX

服务端、客户端 普通PCIXIA 网络测试仪

Page 23: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

搭建基于OpenFlow的SDN平台

IXIA网络测试仪

联想ThinkServer RD530系列服务器

服务端 客户端

IXIA网络测试仪

Page 24: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

实验室内平台实例2

利用NetFPGA开发并部署实际SDN平台

Page 25: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

POX是利用Python开发的一个开源控制器软件,用来与OpenFlow交换机进行交互,用以搭建SDN(软件定义网路)平台。同时POX可以用来完成网络虚拟化、控制器设计等目的。

控制器POX

在控制层采用开源软件POX

Page 26: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

Open vSwitchOpen vSwitch 的含义顾名思义,开放虚拟交换标准。具体点说,Open vSwitch是在开源的Apache2.0许可下的产品级质量的多层虚拟交换标准!它旨在通过编程扩展,使庞大的网络自动化(配置、管理、维护),同时还支持标准的管理接口和协议。总的来说,它被设计为支持分布在多个物理服务器。与传统物理交换机相比优势

a) 配置更加灵活;一台普通服务器可以配置出数十台甚至上百台虚拟交换机,且端口数目可以灵活选择。

b) 成本低廉,通过虚拟交换机可以获得昂贵的普通交换机才能达到的性能。

Open vSwitch

Page 27: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

Open vSwitch 的含义

即开放虚拟交换标准。具体点说,Open vSwitch是在开源的Apache2.0许可下的产品级质量的多层虚拟交换标准!它旨在通过编程扩展,使庞大的网络自动化(配置、管理、维护),同时还支持标准的管理接口和协议。总的来说,它被设计为支持分布在多个物理服务器。

Open vSwitch 的优点a)Open vSwitch可以作为一个在管理程序上运行的软开关,也可以作为开关控制堆栈。它已经被移植到多种虚拟化平台和交换芯片。

b) 由于大部分的代码是使用平台独立的C写成,所以可移植性非常好。

Open vSwitch

Page 28: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

Open vSwitch在网络数据包转发中的作用

如图所示,Open vswitch (OVS)有eth0、eth1、tap1 、tap2 四个虚拟端口

,这个的创建是利用OVS的控制工具挂载

到某个系统接口得到的。br0是OVS创建的

网桥。

Open vSwitch

Page 29: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

Cloud Computing

Page 30: 通信网络与交换 - USTChome.ustc.edu.cn/~xieqiaok/pub/txwl/Ch7-2.pdf · 被设计为支持分布在多个物理服务 器。 与传统物理交换机相比优势 a) 配置更加灵活;一台普通服务器可

{wei,zqzhu}@ustc.edu.cn中国科学技术大学

OpenStack is a collection of open sourcesoftware projects that can be collectively utilizedto operate a cloud network infrastructure in orderto provide IaaS.

OpenStack