2019 SDN大作业
1.代码及视频地址
2.小组成员及贡献比例:
姓名 | 学号 | 分工 | 贡献 |
---|---|---|---|
贾懿 | 081700414 | 视频剪辑与场景搭建 | 20% |
林郁昊 | 081700209 | 博客撰写与场景搭建 | 20% |
郑木平 | 111700233 | 场景搭建与代码实现 | 20% |
黄宇航 | 031701129 | 场景搭建与演示视频录制 | 20% |
宋娟 | 181700134 | 场景搭建与代码实现 | 20% |
3.实验场景:
-
拓扑结构如下:
-
场景说明:
h1是数据接受方,h2,h3,h4为数据发送方。
当主机h2,h3,h4向h1传输数据时,北向应用根据链路的使用状况动态的调整路由规则。
s1-s4链路带宽充足情况下,若数据发送方向h1发送数据,应默认最快的s4-s1路径,当剩余带宽不足的情况下应动态调整路由,利用s4-s2-s1路径和s4-s3-s1路径平衡链路中的流量。
4.实现思路:
- 默认流表选择最快的s4-s1路径
- 为链路设定一个阈值
- 用一个循环结构不断测试链路状态,若检测到链路流量过大超过设定的阈值,那么改变交换机的流表,使得s4-s2-s1路径和s4-s3-s1路径被利用来分担流量负担
5.实验步骤:
-
创建实验拓扑
-
测试主机之间的连通性
-
运行py脚本
- 初始状态
初始状态s4-s1为空闲状态,默认数据从此传输- 用iperf命令测试带宽
iperf命令后链路中有数据传输,当达到阈值时更换流表,启用其它链路- s4流表:
6.实验总结及课程心得:
-
林郁昊
- 总结:
通过本次实验,让我重新认识了sdn,了解了sdn相对于传统网络的优越性,sdn通过它的核心技术OpenFlow将网络设备控制面与数据面分离开来,从而实现了网络流量的灵活控制,为核心网络及应用的创新提供了良好的平台。
负载均衡技术不管应用于用户访问服务器资源,还是应用于多链路出口,均大大提高了对资源的高效利用,显著降低了用户的网络布署成本,提升了用户的网络使用体验。随着云计算的发展,负载均衡的技术实现还将与云计算相结合,在虚拟化和NFV软件定义网关等方面持续发展。 - 心得:
通过本学期软件定义网络这门课程的学习,让我收获了许多。在还没接触这门课程之前,我对网络方面的知识很陌生,,后面通过老师上课的讲解以及课上的实验操作,让我慢慢了解了SDN的相关知识,从搭建一个网络拓扑到下发流表,以及最后的期末作业实现负载均衡,让我学到了很多。但同时实验中也遇到了很多困难,这门课程结束了,但这门课程给我带来了很多,最多也许是软件包等等的下载与安装(笑),总之,希望感谢这学期老师们的教导,也感谢组员们对我的帮助,希望接下来我也能再接再厉。
- 总结:
-
宋娟
- 总结:课程当初是为了(仅有的创新)学分报的。
因为当初计算机网络没有好好学,网络类型的课程对于我来说一般是最后一个选项,害怕它的难度让我无从下手。
当然,确实无从下手了。但是很明显,sdn和之前传统的计算机网络差别比较大,所以在知识断层的情况下,还是可以勉勉强强看着步骤进行学习。
SDN对于大家来说都是全新的邻域,之前甚至对Linux都接触甚少的我,这个学期接触了各式各样的新事物,像ODL,POSTMAN,P4……是一个完全新颖的体验。
当然,也在上机课的时候经常麻烦助教和老师,非常感谢学长们和老师的帮助!
本次实验的过程算比较坎坷的……对负载均衡的实现,从网络上了解了各种各样的思路,
但是那些复杂一点的实现起来还是挺棘手的……最后和队友们讨论决定了这个方法,从PPT对流表的下发有了进一步认识,也非常感谢队友们的照顾。
总之,SDN这门课真的是一门能学习到各种新知识的非常实用的课,虽然过程非常勉强,但是仍然收获满满。
- 总结:课程当初是为了(仅有的创新)学分报的。
-
贾懿
- 总结
这次试验受益匪浅,原本庞大复杂的课题逐步上手,渐进学习后也勉强可以完成了。这个过程中对这学期学习的内容是一个复习也是一个总结,在这个回顾的过程中学到了很多新的东西,正所谓温故知新。
坦言SDN不是一科容易入门的课程,或者说很多实验做着都很抽象,但是在这个上手复杂课题的过程中,学到了一些学习的方法,这些东西我认为是弥足珍贵的,因为sdn只是一种技术,它可能会被淘汰,但是这种去微笑面对极度抽象可怕的问题的能力,将会永存。
当然对SDN的学习中也提升了自己对于网络的认识,也开拓了自己对网络包括很多知识的想象力,总而言之除了几次漏交作业外,这门课收获还是蛮大的。
- 总结
-
郑木平
- 总结
本次实验,学会了如何自己设计负载均衡策略,通过Python的httplib2模块连接odl下发流表。进一步学习了流表的下发过程,如何设计相应的流表。
- 总结
-
黄宇航
- 总结
在这次课程学习中最大的收获是学会运用虚拟机的部分终端指令,Mininet,Floodlight,ODL,Wireshark等软件的基本用法和用途,以及负载均衡的原理及实现。虽然大部分时间都在安装环境配置,但是解决问题后的喜悦还是不言而喻的,上了这门课程之后,使得我对SDN网络有了更进一步的理解,通过解耦使控制面板和转发面的分离,同时程序能够很好的控制网络各项功能,这是在传统网络上无法做到的。并且学会了一些简单的odl控制器下发流表,从而实现负载均衡的思路。相信对以后的网络学习会很有帮助。
- 总结