sdn(一)
sdn概念
狭义:基于openflow协议为网络提供的可编程特性而提出,简单来说,通过控制器对网络进行控制和管理,接口是标准化的。(OpenFlow,运行在数据链路层,是控制路由器交换机的转发平面)
广义:实现软件可编程的各种网络基础架构,接口的开发的。
三个基本特征:控制转发分离、逻辑集中控制、开放API。
价值:
1、协议集中处理,加快运算速度。
2、控制集中化,提高资源调配效率。
3、简化运维负担。
4、在底层加速多个虚拟网络,提高了QoS(服务质量)
5、智能化、自动化、硬件的标准化。
优势之一:将网络智能从硬件转移到软件,不需要更新硬件就可以增加新功能,简化整合了控制功能,硬件也可以变得更可靠。
SDN架构
关键技术:openflow协议、网络虚拟化技术、网络操作系统(虚拟化技术指vpn,它允许远程用户访问内部网络而不需要物理接入)
关于openflow协议
openflow协议是SDN实现控制与转发分离的基础
组成openflow规范的四个部分:端口、流表、通信信道、数据结构
openflow的运行原理:
(关于流表:对于A到B,C到B两条报文,管理员如果对目的地址是B的感兴趣,AC是同一条流,如果还对源地址感兴趣的话,那就是两条流)
首先openflow交换机接受数据分组,查找是否存在流条目。数据分组可能会经历多个流表。数据分组从第一个流表中的流条目开始匹配。如果匹配成功,则执行流条目中的操作,更新流条目中的计数。否则,将数据分组的第一个报文或报文摘要转发至控制器。
建立在openflow协议上的flowvisor:允许多个网络试验在不同的虚拟网络下进行。
NOS:运行在控制器上的网络操作系统,实现控制器的控制功能。管理功能是由运行在其身上的“应用”所完成的。
SDN的挑战与未来
(1)运算压力大,软件复杂度高,系统稳定性存在隐患。
(2)控制器接口尚未标准化。
(3)集中控制固有的安全隐患。
未来关注重点:更加复杂的控制器、数据中心
SDN(二)
问题表现:互联网体系结构的复杂性以及逐渐加剧的管理难度。
问题原因:IP层作为一种网络结构中的“窄腰”,其所承载的重任导致对其修改是很困难的。
解决思路:提出SDN。
SDN发展现状
关于openflow:openflow是SDN南向接口的实例,目前比较清晰的SDN体系结构仍然是基于openflow的。(管理其他厂家网管或设备的接口,即向下提供的接口。)
特点:利用交换机外的控制器上所运行的应用程序控制交换机内的十几个报文头的域所组成的流表,以此来定义网络行为方式。
SDN在基础层面仍需解决的问题:
1、什么是科学的SDN结构?
2、如何提供更强的数据平面能力?
3、如何提高SDN的可编程性和接口?
4、SDN网络可拓展性和性能。
5、SDN的安全性。
…
SDN抽象模型认识
SDN 是提供对各种体系结构和协议进行描述的能力,是一种 “元体系结构(meta architecture)”。
openflow仅是描述SDN数据平面的一种,不是全部。
SDN抽象模型:
该模型的出发点是认为 SDN 所提供的开放性的实质是:不应无限制地增加网络的复杂度,需要对网络进行抽象以屏蔽底层复杂度,为上层提供简单的、高效的配置与管理。
∑:输入
Q:状态
∆:状态转移函数
抽象过程:应用通过高层网络状态抽象将其需求通过 ∆1 传递给控制平面。 控制平面根据数据平面的状态 Q0 映射为控制平面的输入∑1,通过控制平面转移函数 ∆1:∑1×Q1→∆0×Q1 生成下一层的转移函数 ∆0 并将控制平面新的状态 Q1 返回给应用。
数据平面通过控制平面下发的转移函数 ∆0,将数据平面的输入 ∑0 和数据平面状态 Q0 利用转移函数 ∆0:∑0×Q0→∑0×Q0 转换为数据平面的输出∑0,并更新报文处理后的数据平面状态 Q0。