(接Day2的内容 +2s)

E. Layer V: Northbound Interfaces

南行接口已经得到广泛接受(OpenFlow),但现在就定义北向接口还为时尚早,开发不同的控制器经验一定会为开发一个通用的应用程序接口奠定基础。
北向接口可以保证编程语言和控制器的独立性。
很多的控制器都提出并定义了它们自己的北向API。
SFNET是北向接口的一个例子。
其他的提议是使用不同的方法允许应用程序与控制器交互。

F. Layer VI: Language-Based Virtualization

虚拟化解决方案的两个基本特征是能够表示模块化和允许不同级别的抽象,同时仍然保证所需的属性(如保护)。例如,虚拟化技术可以允许对单个物理基础结构的不同视图。

intrinsically 从本质上讲
a monolithic control program 单片控制程序
predicate 谓词
time-consuming and error-prone 耗时且易出错
Sequential 顺序的
modules 模块
a declarative language 陈述性语言
asterisk 星号
dynamic verification 动态验证
backward compatibility 向后兼容
determine 确定
transformation placement 变换放置
delegate 代表,委派
subnetwork 分网络
refine 提炼,改善
customize 定制,定做
detecting 探测,发现
anomalies 异常
prolific 多产的

表7总结了基于管理程序的虚拟化技术和基于非虚拟机管理程序的虚拟化技术。

G. Layer VII: Programming Languages

网络中的可编程性也开始从诸如OpenFlow(“程序集”)等低级机器语言转向高级编程语言[112]、[203]-[205]、[223]-[225]。类似组装的机器语言,如OpenFlow[9]和POF[31],[120],本质上是模仿转发设备的行为,迫使开发人员花太多时间在低层次的细节上,而不是在解决问题上。
高级编程语言提供的抽象可以极大地帮助解决这些低级指令集[203]-[205],[223]-[225]的许多挑战。编程语言抽象提供的另一个有趣的特性是为虚拟网络拓扑创建和编写程序的能力[248],[250]。
高级SDN编程语言:高级编程语言可以作为一种强大的工具来实现和提供对SDN的不同重要属性和功能的抽象,如网络结构、分布式更新、模块化组合、虚拟化和正式验证[29]。
编程语言还可以提供专门的摘要,以满足其他管理要求,如监测[204]、[224]、[227]、[261]。另一个最重要的方面是编程语言的可移植性,这是开发人员不需要为不同的控制平台重新实现应用程序所必需的。
为SDN提出了几种编程语言,如表8所概述。

H. Layer VIII: Network Applications

网络应用程序可以看作是“网络大脑”。它们实现控制逻辑,这些控制逻辑将被转换为数据平面上的命令,指示转发设备的行为。

fail-over and reliability functionalities 故障转移和可靠性功能
aggregate network utilization 综合网络利用率
envision 想象,展望
wildcard-based rules 基于通配符的规则
utilize 利用
aggregating client requests 聚合客户端请求
IP prefixes IP前缀
In tandem 同时
bottleneck 瓶颈
threshold 入口,门槛
seamlessly 无停顿地
respective 各自的
mitigate 减轻,缓和
interoperability 协同工作的能力
dense heterogeneous wireless 密集异构无线
hierarchy 层次


尽管用例种类繁多,但大多数SDN应用程序可以分为五类:流量工程、移动性和无线、测量和监视、安全性和可靠性以及数据中心网络。表9和表10总结了几个应用程序,说明了它们的主要用途、实现/评估的控制器以及所使用的南向API。

1)流量工程:
2)移动性和无线性:

suboptimal 未达最佳标准的
limited spectrum 有限光谱
allocating radio resources 分配无线资源
implementing handover mechanisms 实施移交机制
managing interference 管理干扰
dynamic spectrum usage 动态频谱使用
enhanced intercell interference coordination 增强信元间干扰协调
device-to-device offloading 设备间卸载
assign transmission 分配传输

3)测量和监测:
测量和监视解决方案可分为两类:第一类是为其他网络服务提供新功能的应用程序;第二类是旨在改进基于OpenFlow的SDN特性的建议,例如减少由于收集统计信息而导致的控制平面过载。

Point-to-point traffic matrix estimation 点对点流量矩阵估计
construct 修建,构建
diverse aggregation levels 不同聚集级别
traffic anomaly detection 流量异常检测
fine-grained flow-based network 细粒度流网络
flow rule prioritization 流规则排序
malicious 恶意的

4)安全性和可靠性:
5)利用SDN提高现有网络的安全性:
SDN已成功地用于其他目的,即检测(和反应)对分布式拒绝服务(DDoS)洪水攻击[325]和主动安全性[321]。
SDN在提高收集来自网络的统计数据和允许应用程序主动地转发转发设备的能力方面提供的能力,对于主动安全策略执行技术(如主动安全性)来说是强有力的(321)。这种新颖的安全性方法提出了一种新的反馈回路,以改善对网络基础设施的防御机制的控制,并围绕五个核心能力:保护、感知、调整、收集和计数器。
6)提高SDN自身的安全性:
7)数据中心联网:
SDN的出现预计会改变目前的状况。早期的研究表明,数据中心网络可以从SDN中显著受益于解决各种问题,如实时网络迁移[318],改进网络管理[317],[318],显著避免失败[317],[318],从开发到生产网络的快速部署[318],故障排除[318],[319],网络利用率的优化[314],[316],[317],[319],动态和弹性的提供中间箱即服务[27],并尽量减少流量设置延迟和减少控制器运行成本[363]。
SDN可以通过允许虚拟网络隔离、自定义寻址以及中间盒和虚拟桌面云应用程序的放置[315],[364],帮助基础设施提供商向客户公开更多的网络原语。
8)面向SDN的APP商店:
如表9和表10所示,大多数SDN应用程序依赖于NOx和OpenFlow。

I. Cross-Layer Issues

在本节中,我们将讨论跨层问题,如调试和故障排除、测试、验证、仿真和仿真。表11中可以找到处理这些跨层问题的现有工具的摘要。

1)调试和故障排除

post-mortem 事后的
tracing, replay, and visualization 跟踪,重放,可视化
open avenues 开放的途径
breakpoint 断点
backtrace 回溯
packet identifier 包标识符
a truncated copy 截断副本
rollback recovery 回滚恢复
invariant 无变化的
violate 违反,妨碍
filter 过滤器】
2)测试与验证

Verification 验证
execution 执行
flow setup latency, flow space granularity 流设置延迟、流空间粒度
security breaches 安全漏洞
snapshot 快照
encoding 编码

3)仿真
Mininet [110]是第一个提供快速简化的原型和评估SDN协议和应用程序的系统。 Mininet的一个关键特性是它在虚拟化容器中使用基于软件的OpenFlow交换机,提供与基于硬件的OpenFlow交换机完全相同的语义。

Software-Defined Networking:A Comprehensive Survey--Day3的更多相关文章

  1. Software Defined Networking(Week 1)

    前言 课程名称:软件定义网络 课程地址 Coursera上新的一期还没开课,所以是YouTube. Instructor:Nick Feamster Get Started 对于本次课程,主要的新内容 ...

  2. Software Defined Networking For Dummies, Cisco Special Edition

    从接触SDN开始,不论是硬件还是软件,一直都是从具体的点开始,慢慢的勾勒出自己认为的SDN的样子,相信读完这本思科出的关于SDN的书会对其有新的认识 这本书的名字就是Software Defined ...

  3. Improving Network Management with Software Defined Networking

    Name of article:Improving Network Management with  Software Defined Networking Origin of the article ...

  4. Software-Defined Networking: A Comprehensive Survey

    文章名称:Software-Defined Networking: A Comprehensive Survey 文章来源:Proceedings of the IEEE ( Volume: 103  ...

  5. Software-Defined Networking A Comprehensive Survey --阅读_day1

    The Internet has led to the creation of a digital society, where (almost) everything is connected an ...

  6. Method of Seamless Integration and Independent Evolution of Information-Centric Networking via Software Defined Networking

    A method of transferring data between a software defined network (SDN) and an information-centric ne ...

  7. A Survey of Machine Learning Techniques Applied to Software Defined Networking (SDN): Research Issues and Challenges

    将机器学习用到SDN中的综述:研究的问题和挑战 从流量分类.路由优化.服务质量(Qos)/体验质量(QoE)预测.资源管理和安全性的角度,回顾了机器学习算法如何应用于SDN领域. 相关知识 在SDN中 ...

  8. Software-Defined Networking A Comprehensive Survey --阅读_day2

    3. 什么是SDN?(WHAT IS SOFTWARE-DEFINED NETWORKING?) The term SDN was originally coined to represent the ...

  9. Software Defined Networking(Week 2, part 2)

    History of SDN 1.3 - 1.4 课程地址 Network Virtualization 网络可虚拟化,可以说是SDN的一项核心内容,同样也源自很多先前的技术和思想.我们先讨论何为网络 ...

  10. Software Defined Networking(Week 2, part 1)

    History of SDN 1.1 - 1.2 本节讨论从上世纪八十年代时到现在为止出现的SDN的思想和发展历史.了解历史,可以明白技术后面的成因以及一些原则,并从架构上去大致掌握.了解一些主旨. ...

随机推荐

  1. redis三种启动方式

    Part I. 直接启动下载 官网下载:http://redis.io/download安装 tar zxvf redis-2.8.9.tar.gzcd redis-2.8.9#直接make 编译ma ...

  2. day2-课堂笔记

    #面向对象 函数=方法 系统内建函数:len().id() 对象函数

  3. oracle 查询SQL 的执行速度

    SELECT SE.SID,       OPNAME,       TRUNC(SOFAR / TOTALWORK * 100, 2) || '%' AS PCT_WORK,       ELAPS ...

  4. JS重构分页

    JS重构分页 很早以前写过一个Jquery分页组件,但是当时写的组件有个缺点,当时的JS插件是这样设计的:比如:点击  -->  查询按钮 ---> 发ajax请求 返回总页数和所有数据, ...

  5. Java并发(一)并发编程的挑战

    目录 一.上下文切换 1. 多线程一定快吗 2. 测试上下文切换次数和时长 3. 如何减少上下文切换 4. 减少上下文切换实战 二.死锁 三.资源限制的挑战 四.本章小结 并发编程的目的是为了让程序运 ...

  6. calico 排错记录 apt-get install telnet

    1.用kubespray部署一个单节点集群,kubectl get pods -n kube-system,结果: calico-node-7v8wx 1/1 Running 0 2dcalico-n ...

  7. javascript删除Cookie的正确方法(转载)

    原来一直以为只要设置javascript的document.cookie对象就能简单的在浏览器端设置和删除cookie值,网上很多文章也是这么教的,但是最近发现简单的设置javascript的docu ...

  8. Eclipse添加Junit测试

    项目上右键,点击build path->add libraaies->选择Junit 附上惨不忍睹的图(eclipse里展开菜单项时老截屏截不好,不知各位有没有好点的解决方案) 2017. ...

  9. 20155234 Exp3 免杀原理与实践

    使用msf编码器生成jar包 使用指令:msfvenom -p java/meterpreter/reverse_tcp lhost=192.168.157.141 lport=5234 x> ...

  10. 20155306 白皎 0day漏洞——漏洞的复现

    一.Ubuntu16.04 (CVE-2017-16995) 1.漏洞概述 Ubuntu最新版本16.04存在本地提权漏洞,该漏洞存在于Linux内核带有的eBPF bpf(2)系统调用中,当用户提供 ...