题目:EARS:用于软件定义网络中自动路由的智能驱动体验网络架构

摘要:软件定义网络(SDN)通过将控制平面与数据平面解耦来适应逻辑集中的控制,并提供对网络资源的有效利用。但是,由于传统路由策略依赖于手动配置的局限性,SDN可能会遭受链路拥塞和流之间带宽分配效率低下的困扰,这可能会严重降低网络性能。在本文中,作者提出了EARS,这是一种智能驱动的自动路由体验网络架构。在网络架构下,作者设计具有吞吐量和延迟感知,根据流量的大小特征区分流量,并设计基于DDPG的自动路由算法作为DRL决策大脑,以找到小鼠和大象流量的最佳路径。为了验证网络体系结构,我们在真实的网络环境中实现它。大量的仿真结果表明,与基线方案(例如OSPF,ECMP)相比,EARS显着提高了网络吞吐量并减少了平均数据包延迟。

介绍:软件定义网络通过将控制平面和数据平面解耦,简化了网络管理,提供了灵活高效的网络控制,因此被广泛视为下一代网络的发展方向之一。由于集中式全局网络视图的天然优势,因此开放式可编程网络接口和高速匹配转发,SDN已成为实现流量工程的良好平台。传统的路由协议始终基于开放最短路径优先(OSPF)或等价多路径路由(ECMP)转发流量。随着网络规模的逐步扩大和网络应用的多样化,网络流量呈指数增长。 OSPF总是会导致链路拥塞,这很难适应当今网络中巨大的流量需求。 ECMP利用基础路径的多样性来平衡流量以实现负载平衡。但是,传统的ECMP通常基于流。当少量的大象流继续通过相同的链路并占据链路的大部分带宽时,将严重影响数据流的传输效率。由于机器学习和深度学习在许多领域都取得了成功,例如机器人控制,自动驾驶汽车和AlphaGo,因此人工智能在大规模数据处理,分类和智能决策中显示了巨大的优势。为了解决传统网络协议的缺点,Parsaei等人。改进了启发式算法,例如蚁群算法和遗传算法,以优化数据流的路由。但是,由于启发式算法的限制,网络参数难以确定网络何时发生变化。此外,许多机器学习方法已被应用于在SDN中实现智能网络管理。应用监督学习解决特定的网络问题有大量工作,例如资源管理,Web服务和视频质量优化。但是,机器学习算法在动态网络场景中会遇到决策缓慢的问题。同时,强化学习(RL)已成为解决网络控制问题的替代解决方案。但是,传统的RL(例如Q学习)需要维护Q表所有可能的状态和动作空间。当网络规模增加时,与内存和计算开销相关的复杂性是使用传统RL的主要挑战。尽管深度Q网络(DQN)引入了深度神经网络来近似Q表,但它不适用于交通工程问题。由于交通工程是一个连续的控制问题,因此DQN仅能以有限的操作空间处理控制问题。提出了基于行为者批评框架的DDPG(深度确定性策略梯度)。 DDPG采用深度神经网络来逼近Q表,并使用另一个神经网络来生成策略功能,以实现大规模的连续控制问题。在本文中,我们提出了EARS,它是一种智能驱动的体验式网络体系结构,该体系结构利用软件定义的网络和用于自动路由的深度强化学习。 EARS使用DRL代理通过与网络环境进行交互来从经验中学习路由策略。此外,EARS应用了一些网络监视技术(例如,网络状态收集,流量识别)来实现闭环网络控制机制。 DRL代理可以根据自己的经验学习很好地控制网络以自动生成路由策略。

网络架构:在本节中,我们介绍了智能驱动的体验式网络体系结构及其运行方式。图1显示了智能驱动的体验网络体系结构的模型。我们将DRL代理引入SDN以优化路由,通过定期收集端到端流量需求和网络状态信息来利用SDN控制器的全局控制,并使用DRL代理迭代学习流量特性和路由策略以改善网络传输性能。

图1 智能驱动的体验式网络架构

为了将DRL代理引入SDN,我们设计了闭环网络控制机制来实现网络状态收集和流表规则安装。 SDN控制器的功能是连接DRL代理和转发平面。一方面,SDN控制器负责收集网络状态信息并为DRL代理提供全局网络视图。另一方面,SDN控制器根据DRL代理做出的决定生成到转发平面的流表规则。由于整个交互过程形成了“状态收集-控制决策-规则下载”的闭环,因此我们将其称为网络控制环。 SDN控制器有效地为网络控制环路生成控制逻辑,并且DRL代理通过网络控制环路与网络环境持续交互。

DRL代理学习过程:

DRL代理的功能是生成控制策略。 SDN控制器定期收集网络状态信息以获得全局视图和对整个网络的控制。 DRL代理通过三种信号与网络环境交互:状态空间,动作空间和奖励功能。在培训期间,DRL代理从没有网络先验知识开始,并通过与网络进行交互来学习根据经验做出更好的控制决策。在每次交互中,由SDN控制器收集的网络信息和性能将作为输入发送到DRL代理。然后,DRL代理尝试为每个流生成控制策略。 SDN控制器将流表规则发送到交换机,以根据DRL代理制定的控制策略来实现数据流的转发。通过降低流量的转发,网络将反馈相应的奖励值,以评估控制策略的质量,以便DRL代理能够及时调整控制策略并执行策略更新以获得更高的奖励。经过培训后,DRL代理可以通过与网络环境交互形成的自身经验来实现一步优化,并实现接近最佳的路由配置。

算法设计:

基于DDPG的自动路由算法的状态空间,操作空间和奖励功能:

状态空间:状态空间由两部分组成:端到端吞吐量和延迟。控制器通过周期性地收集网络状态信息来形成状态空间向量。

操作空间:操作是指控制器为提高网络实用性而获得的路由策略。对于大象流,作用空间为多径的分流比;对于鼠标流动,动作空间是每个链接的权重。

奖励功能:奖励是路由算法的目标。在这里,考虑端到端吞吐量和延迟,奖励是总网络效用。在算法1中介绍了基于DDPG的自动路由算法。基于DDPG的自动路由算法将流量视图信息用作输入数据,并采用DDPG算法作为DRL Agent的主要算法来学习流量特性和路由策略。在数千次培训中,DRL代理可以独立探索针对不同流量情况的最佳路由策略。

仿真实验:

为了验证EARS的性能,作者对DRL Agent进行了300次训练(每个训练包含1000个步骤),并将其与OSPF和ECMP进行比较。图2显示了不同方案在不同流到达速率下的性能比较。我们在图2中进行以下观察:(1)随着训练次数的增加,EARS的平均数据包延迟不断减小。在对DRL代理进行200次训练之后,平均数据包延迟变化缓慢并且趋于稳定,这表明EARS取得了明显的效果并且具有良好的收敛性。 (2)在前几十个数剧集中,EARS具有最高的数据包延迟。经过300次训练后,在所有流到达速率下,EARS的性能均优于其他两种方案,且数据包延迟最小。这是因为EARS可以动态地为大象流和鼠标流选择转发路径,并通过与环境交互以找到接近最佳的策略来不断提高路由决策的水平。但是,OSPF通常会导致链路拥塞,并通过在最短路径上路由流来大大增加数据包传输延迟。由于ECMP不考虑流量的大小特征,因此,当网络的流量寿命分布不均时,效率低下。图2显示了三种方案在不同的流量到达速率下的吞吐量。

图2 不同流到达速率下不同方案的平均分组时延比较。

EARS范例引入了DRL方法,以在SDN中有效地生成路由策略。得益于DDPG的深度强化学习算法和SDN的集中控制,与传统算法相比,EARS范例具有明显的优势。但是,它也遇到了一些需要进一步解决的挑战。训练开销尽管DRL方法已显示出比传统算法在流量工程中的优势,但DRL方法仍需要大量训练开销。在实际的网络中,有许多因素会导致网络状态发生抖动,这对DDPG算法的收敛提出了巨大的挑战。在网络拓扑变化或大量流量激增的情况下,DRL需要大量的培训开销来适应变化,这限制了DDPG算法的灵活性。而且,这会导致SDN控制器和交换机之间路由更新的通信开销过多,从而降低EARS的性能。因此,为了使DRL方法更好地适应实际网络,有必要探索一些机制来减少训练开销以满足网络需求。

结论:文章提出了一种智能驱动的自动路由体验网络架构,称为EARS,以解决链路拥塞和带宽分配效率低下的问题。具体来说,EARS通过根据网络需求和环境条件调整提供的服务和资源来适应深度强化学习,从而优化网络,从而可以通过与网络环境进行交互来学习根据自身经验做出更好的控制决策。在网络架构的基础上,提出了具有吞吐量和时延感知能力的网络实用功能,设计了基于DDPG的自动路由算法,以实现最大的网络实用性。同时,EARS通过不同的动作策略自适应地选择转发路径,以获得接近最佳的路由决策。仿真结果表明,EARS具有良好的收敛性和有效性。与传统的路由策略(例如OSPF,ECMP)相比,EARS通过同时提高网络吞吐量,减少数据包延迟和平衡链路利用率来实现更好的网络性能。

思考:EARS是运用深度强化学习(DRL)来模拟人类学习经验知识的方法,采用闭环网络控制机制并结合网络监控技术来实现与网络环境的交互。EARS可以通过与网络环境交互来学习根据自身经验做出更好的控制决策,并可以根据网络需求和环境条件通过调整提供的服务和资源来智能地优化网络。

编程实现路由算法 实验报告_lt;中国通信专刊gt; EARS:用于软件定义网络中自动路由的智能驱动体验网络架构...相关推荐

  1. 20162330 实验五 《网络编程与安全》 实验报告

    2016-2017-2 实验报告目录: 1 2 3 4 5 20162330 实验五 <网络编程与安全> 实验报告 课程名称:<程序设计与数据结构> 学生班级:1623班 学生 ...

  2. 2017-2018-2 20165301 实验五《网络编程与安全》实验报告

    2017-2018-2 20165301 实验五<网络编程与安全>实验报告 一.网络编程与安全-1 实验要求: 参考http://www.cnblogs.com/rocedu/p/6766 ...

  3. DFA的构造C语言,DFA的编程实现含源代码实验报告剖析

    <DFA的编程实现含源代码实验报告剖析>由会员分享,可在线阅读,更多相关<DFA的编程实现含源代码实验报告剖析(20页珍藏版)>请在人人文库网上搜索. 1.实验一(一)程序设计 ...

  4. 2018-2019-2 20175204 张湲祯 实验五《网络编程与安全》实验报告

    2018-2019-2 20175204 张湲祯 实验五<网络编程与安全>实验报告 实验五<网络编程与安全> 一.实验内容: 1.网络编程与安全-1 任务详情 两人一组结对编程 ...

  5. c语言des算法实验报告,C语言实现DES算法实验报告解析.doc

    C语言实现DES算法实验报告解析 xx工程大学 实验报告 (2015-2016学年第一学期) 报告题目: DES加密算法 课程名称: 密码学B 任课教员: 专 业: 学 号: 姓 名: 二O一六年一月 ...

  6. 20165230 《Java程序设计》实验五《网络编程与安全》实验报告

    20165230 <Java程序设计>实验五<网络编程与安全>实验报告 一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:田坤烨 学号:20165230 成绩: ...

  7. 疯狂java实验五数据流编程_2017-2018-2 20165209 实验五《网络编程与安全》实验报告...

    2017-2018-2 20165209 实验五<网络编程与安全>实验报告 实验报告封面 北京电子科技学院(BESTI) 实 验 报 告 课程:Java程序设计 班级:1652 姓名:陈思 ...

  8. 网页编程课程大作业实验报告HTML5 、CSS5 、JavaScript

    网页编程课程大作业实验报告 课程名称 网页编程 实验成绩 计算机学院制 一.实验内容与要求 利用HTML5 .CSS5 .JavaScript等知识,按照特定的主题制作一个完整的网站. 二.网站名称以 ...

  9. java的网络编程设计报告_20165230 《Java程序设计》实验五《网络编程与安全》实验报告...

    20165230 <Java程序设计>实验五<网络编程与安全>实验报告 一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:田坤烨 学号:20165230 成绩: ...

最新文章

  1. 巧用组策略关闭危险端口
  2. RESTFUL框架-网站即软件
  3. Shell tips
  4. dataTables中文文档API和样例
  5. button按钮无法提交表单问题发现与解决
  6. 常见音视频格式(转载)
  7. spark java api通过run as java application运行的方法
  8. 基于JAVA+SpringMVC+Mybatis+MYSQL的粮店粮食库存管理系统
  9. Java——深入理解Java异常体系
  10. D3D学习摘记(I)上
  11. JavaScript浮点运算的问题
  12. (三)Web框架-龙卷风Tornado之快速上手
  13. IPOP下的tcl脚本
  14. 17-什么是资源服务器
  15. java mb单位转换_字节、kb、mb等单位,是怎样换算的?
  16. 微信小程序调用扫码功能
  17. oppo小布机器人_OPPO小布助手2.0全新版本来袭,做你身边最聪明的AI语音助手
  18. 软件方法(下)分析和设计第8章连载[20210723更新]
  19. 但总觉得明白了一点点什么
  20. 《把时间当作朋友》读书笔记(七)-- 管理(四)

热门文章

  1. Could not install packages due to an EnvironmentError: [Errno 28] No space left on device
  2. redis 双写一致性 看一篇成高手系列1
  3. pytorchviz visdom 可视化 pytorch
  4. Nginx最新版安装教程(Windows+Linux)
  5. 最新Maven及Tomcat配置~(IDEA版 试错无数!)
  6. 使用Tensorize评估硬件内部特性
  7. YOLOv4:目标检测(windows和Linux下Darknet 版本)实施
  8. 2021年大数据ELK(十二):Elasticsearch编程(环境准备)
  9. C++ 如何获取数组的长度
  10. java 增强for循环(foreach)