版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
南京工程学院毕业设计说明书(论文)作者:学号:院系:通信工程学院专业:通信工程(无线通信)题目:基于SDN的数据包控制策略的研究指导者:教授评阅者:2014年6月南京ThestrategyofDatapacketForwardbasedonSDNController
ADissertationSubmittedtoNanjingInstituteofTechnologyFortheAcademicDegreeofBachelorofScienceByYeJiSupervisedbyProfessorWeikangShenCollegeofCommunicationEngineeringNanjingInstituteofTechnologyJune2014摘要随着互联网的高速发展、业务的丰富多样以及用户的与日俱增,计算资源支撑不足、设备更新成本巨大成为互联网企业无法回避的问题。软件定义网络(Software-DefinedNetworking,简称SDN)作为革命性的解决方案,提出了控制平面和数据平面解耦的思想,相较于传统网络的分布式架构有了质的飞跃。软件定义网络为解决传统网络难题提供了新的思路,学术界和工业界也纷纷提出了基于SDN的网络新型应用。流量工程作为传统网络面对的难题,一直是网络研究领域中的热点问题。本课题在SDN流量工程的场景下,提出基于软件定义网络的流量调度系统。通过对流量进行深度解析以确定网络的流量类型,进行链路信息统计以获取全网链路状态。在此基础上针对确定的流量类型下发相应的的调度策略,以达到流量高效传输的目的,并提升带宽利用率、优化网络性能。搭建相应的实验环境进行传统网络解决方案与本课题调度策略的对比测试,从多角度对该调度策略的效率进行分析。本文的流量调度系统作为流量工程在软件定义网络的一个尝试,为后续流量工程解决方案的研究提供新的思路。关键词:软件定义网络;SDN;流量工程;路由策略;计算机网络 AbstractWiththefastlydevelopmentofInternet,businessvariety,andtheuser'sgrowing,computingresourcestosupporttheinsufficiency,thehugecostofequipmentupdatebecometheInternetenterprisethequestionwhichisunabletoavoid.Software-DefinedNetworkingasarevolutionarysolution,putsforwardthecontrolplaneanddataplanedecouplingthoughts,comparedwiththetraditionalnetworkdistributedarchitecturehaveaqualitativeleap.Softwaredefinednetworkoffersanewwaytosolvetheproblemsoftraditionalnetwork,academiaandindustryhavealsoproposedanewnetworkapplicationsbasedonSDN.Facingtheproblemoftrafficengineeringasatraditionalnetwork,hasbeenahotissueinthefieldofnetworkresearch.ThistopicinengineeringSDNflowscenarios,trafficdispatchingsystembasedonsoftwaredefinednetworkisputforward.Throughthestudyofthedepthofflowanalysistodeterminethetypeoftrafficnetwork,tolinkinformationstatisticsforentirenetworklinkstatus.Onthisbasistodeterminetheflowtypeissuedcorrespondingschedulingstrategy,inordertoachievethepurposeofflowefficienttransmission,andimprovethebandwidthutilization,optimizationofnetworkperformance.Structures,correspondingexperimentalenvironmentforthetraditionalnetworksolutionandthetaskschedulingstrategyofcontrasttest,frommultipleperspectivestoanalyzetheefficiencyoftheschedulingpolicy.Inthispaper,theflowschedulingsystemfortrafficengineeringinsoftwaredefinednetworkanattempt,forsubsequenttrafficengineeringsolutionresearchprovidesnewtrainofthought.Keywords:SoftwareDefineNetwork;SDN;TrafficEngineering;RoutingPolicy;ComputerNetwork.目录第一章绪论 .3.6最优路径选择该模块利用可行路径计算和链路状态统计模块所提供的参数进行评测。按照链路长度、链路利用率的不同权重进行计算,将计算结果进行递减排序,结果数值最大的即为最优流量传输路径。由于针对不同类型的流量是不同的调度策略,本小节着重阐述带有权重的最优路径计算方案。不带权重的最优路径方案只需将以上方案去掉权重即可实现。1)路径选择参数最优路径选择的算法基于若干参数,包括路径长度、链路带宽、链路利用率等信息。下面将对这些参数进行详细阐述:A.路径长度该选路主要针对大象流,由于其数据量大且持续对到达目的主机的链路进行统计对比,在策略上将选择最短的路径进行传输。如图4.9所示,如果H1要发送数据包到H2,根据选路算法将优先选择将数据包通过S1直接转发到S3最终到达H2,即H1-->S1-->S3-->h2,而不去选择H1-->S1-->S2-->S3-->H2的路径。图4.9选路依据——路径长度B.链路利用率该链路选择的策略以到达目的主机的多条链路为基础,策略先以其中一条链路为首选链路,所有数据转发均经过该链路,当吞吐量到达阈值时再转移其他链路,如此往复。如图4.10为H1到H2之间的链路拓扑,H1到H2的首选链路为H1-->S1-->S3-->H2,即图左部拓扑的绿色部分,并且状态正常。当链路吞吐量到达设定阈值时,即链路不健康,图中右侧拓扑黄色表示到达阈值,选择另外的链路(如图中右侧拓扑绿色所示)即H1-->S1-->S2-->S3-->H2,如此往复。这种方法可以保证链路负载的均衡,提高带宽利用率。s图4.10选路依据——链路利用率2)权重计算将路径长度N的权重设为10,将链路状况的权重设为链路利用率U的倒数,设该路径链路数量为n,则最优路径选择系数W的计算公式(4-4)为: (4-4)3)阈值策略链路的状态决定了大象流是否可以通过,所以需要设置一个阈值(默认为链路利用率达到80%)以保证大象流的顺利通过。也就是说链路带宽利用率的大小决定了该条链路是否在路径备选范围之内。下面根据阈值将情况做一个细分,并针对不同情况执行不同的策略。1.所有链路均未超过阈值将链路利用率和路径长度分别作为权重进行计算以得到的最大值的路径为最优路径;2.部分链路超过阈值,部分未超过这时超过阈值的路径有两种情况:有路径不经过超过阈值的链路(情况(1))和所有可行路径都经过该链路(情况(2))(1)将不经过超过阈值的链路按照1中方法计算;(2)设置等待时间进行等待,在一个等待周期后对链路状况进行分析,若从阈值回落,则按情况(1)处理,若不回落继续等待,若一定周期后仍无回落,则丢弃。4)基础算法分析本模块的重点在于基于权重的最优路径计算,使用最优路径算法——Dijkstr_flyye1算法。使用该算法先求出最优路径,再求出次优路径,以此类推。算法思想如下:以有向图作为算法参照图(如图4.11所示),设置两个集合,其中一个集合存储以计算的最优路径,另一个集合计算未计算好的最优路径。从原点到集合中每个顶点的权重均已标出。本小节的参照图理想的认为图中的没条链路均为双向链路,并且链路的两个方向均采用同样的权重信息。带权重的有向图用表示。加权函数为w,对所有的有用算法进行多次迭代,对每个顶点有对每个顶点,当u加入集合S时,图在实现中以邻接矩阵表示。本算法是以起始点为中心向外遍历,在遍历完所有节点算法结束。本实现流程将以图4.2所示拓扑为准,图中链路间的数字为每条链路的权重。图4.11最短路径计算拓扑表4.2最优路径算法详细步骤5)流程展示图4.12最优路径计算流程4.3.7决策调度根据最优路径计算模块得出的最优路径,结合实际物理网络,统计和路径相关的交换设备。针对不同的交换设备进行转发策略的下发。图4.13决策调度流程第五章系统运行与实验数据5.1编程语言选择常用的编程语言有C、C++、C#、Java、Python,下面将在内存管理、跨平台和性能优劣三个方面对这几种语言进行取舍。5.1.1内存管理优秀的内存管理功能可以免去很多麻烦,尤其是在编程惯性错误方面。内存自动释放收集就是一个很好的例子,由于C语言是面向过程的语言,他在自动内存释放方面就存在劣势,指针拥有强大的功能,但同时也存在着危险,忽略掉释放内存的步骤,往往会出现野指针,严重者会造成运行时内存永久无法收集和CoreDump等问题。其他语言并未出现该问题,所以在第一点C语言存在劣势。5.1.2跨平台跨平台亦是对语言的一项考验,目前比较常用的主流操作系统平台是Windows、Linux、MacOS,这些语言很明显在这三种平台上运行,不过C语言虽然在标准函数有跨平台性,但每个系统均有自身优化的系统函数,这就造成在编程时并不能很高效的完成编程工作。因为编程开发者不能搞频率的复用代码,所以代码编写效率是一个很大的问题,C语言也并不是很好的语言选择。5.1.3性能优劣性能描述是一个模糊的词汇,有很多评判的标准。本文仅从多线程进行考虑由于流量调度系统需要支持大量的交换机的请求,所以多线程的性能指标是很关键的考虑因素。Python对多线程的支持并未真正实现多核处理,所以不再考虑之列。C/C++语言对多核的支持稍逊于Java。第三点中,考虑Java占到很大权重,将作为优先采纳对象。综上所述,java无论从内存管理、跨平台、性能优劣都占有很大的优势,最终选择Java作为编程语言的最优选择。5.2开发环境图5.1开发环境图例由于在开发语言上选择了Java,开发环境选用Java开发的常用工具eclipse。Eclipse支持多种编程语言,且工具丰富,适合软件的快速开发。该工具集代码编写、编译链接、程序运行于一体,便于程序运行和调试,开发界面如图5.1所示。5.3测试工具5.3.1MininetMininet是一个SDN网络搭建工具,能够迅速的搭建出符合软件定义网络特性的网络。使用Python语言编程,通过命令行形式进行程序运行配置。该工具的方便之处在于可以使用快捷的命令产生线型、树形拓扑,减少配置时间,达到快速配置网络的效果。图5.2Mininet网络搭建工具5.3.2IperfIperf是一种网络性能测试工具。iperf可以测试真实载荷下的网络质量,可以测试端到端的网络质量,可以测试一定吞吐率下的丢包、抖动。通过这些信息可以发现网络问题,检查网络质量,定位网络瓶颈。该工具主要应用于LINUX服务器。5.3.3ScapyScapy是一款强大的交互式数据包处理工具、数据包生成器、网络扫描器、网络发现工具和包嗅探工具。它提供多种类别的交互式生成数据包或数据包集合、对数据包进行操作、发送数据包、包嗅探、应答和反馈匹配等等功能。Python解释器提供交互功能,所以要用到Python编程知识(例如variables、loops、和functions)。支持生成报告,且报告生成简单。5.4测试流程及数据分析5.4.1拓扑创建图5.3实验测试拓扑使用Mininet创建一个实验拓扑,如图5.3所示,该拓扑中包含三台交换机、10台主机,由于空间有限,故将主机用省略图表示。其中三台交换机采用两两相连的方式连成环状拓扑。该拓扑中主机和交换机的各端口的默认带宽均为10Gbps。该拓扑的Mininet创建代码如图5.4所示。图5.4Mininet创建拓扑代码其中主机的IP地址分别为——0,——和交换机S1的1——5端口相连。——0和交换机S3的1——5端口相连。5.4.2工具测试1)iperf测试客户端命令行,下面的5条命令分别作用在H1——H5的主机上,按照主机号加5的规律依次连接。Iperf–c–I1–n1000000000Iperf–c–I1–n1000000000Iperf–c–n1000000000Iperf–c–n1000000000Iperf–c0–n1000000000服务端命令行Iperf–s-I1运行情况如图5.5所示图5.5iperf运行时截图5.4.3运行情况模拟如图5.6和图5.7所示,在系统运行初期,传统网络和流量调度系统均选择了最短路径算法。图中黄色虚线为传统网络TE选择的最优路径,红色虚线为SDN网络TE选择的最优路径。图中的绿色虚线即代表了该最短路径,但是当S1——S2的链路流量增多时,链路吞吐量长上升态势。当吞吐量达到一定阈值后,传统网络仍使用原先路径,但SDN网络TE选择了另外一条可行的路线,直接的促进了数据的传输。图5.6最优路径图1图5.7最优路径图25.4.4测试数据绘图1)时间——吞吐量关系图时间(S)传统网络TE(Gbit/s)SDNTE(Gbit/s)00010.70.721.31.331.91.942.52.553363.43.573.7483.94.494.14.9104.255.3114.355.7124.356.1134.356.5144.356.8154.357.1164.357.35174.357.55184.357.7表5.1时间——吞吐量关系图图5.8吞吐量比较实验测试的数据在表5.1中有体现,在图5.8中展现了时间——吞吐量关系图的曲线走势。试验中5个客户端主机按照总计20秒的时间,均分成5个时刻加载到链路上。图中的蓝色曲线代表传统网络的TE,红色曲线代表SDN网络的TE,在刚开始的0——8s内蓝色曲线和红色曲线几乎重合。随着时间的推移蓝色曲线在8s时和红色曲线出现分离,并且蓝色曲线趋于平缓,吞吐量最终趋于4Gbps,而红色曲线依旧呈现增长态势,直到趋向于8Gbps为止。根据图中数据分析,传统网络和SDN网络TE在刚开始均使用同一链路,。使用传统网络的TE在8s时最短路径已经趋近饱和状态,所以吞吐量指数趋于平缓。然而在使用了SDN网络的TE后,系统实时的感应到链路状态的变化,选择了最优的路径S1——>S2——>S3,这时链路的等效吞吐量还在上升,这就是SDN网络的优势体现。2)吞吐量——带宽利用率关系图吞吐量(G)传统网络TE(%)SDNTE(%)0000.51111122221.53231244412.55550365593.57468480714.58572.558873.55.59074691746.59274792.5747.592.574892.5748.592.574992.5749.592.574表5.2吞吐量——带宽利用率关系图图5.9带宽利用率实验测试的数据在表5.2中有体现,在图5.8中展现了吞吐量——带宽利用率关系图的曲线走势。图中的蓝色曲线代表传统网络的TE,红色曲线代表SDN网络的TE,在刚开始的0——3.5Gbps内蓝色曲线和红色曲线几乎重合。随着吞吐量的增加蓝色曲线在3.5Gbps时和红色曲线出现分离,并且蓝色曲线趋于平缓,带宽利用率最终趋于92.5%,而红色曲线依旧呈现增长态势,直到趋向于74%为止。根据图中数据分析,传统网络和SDN网络TE在刚开始均使用同一链路,。使用传统网络的TE在3.5Gbps时最短路径已经趋近饱和状态,所以吞吐量指数趋于平缓。然而在使用了SDN网络的TE后,系统实时的感应到链路状态的变化,选择了最优的路径S1——>S2——>S3,这时链路的等效吞吐量还在上升,这就是SDN网络的优势体现。第六章总结与展望本毕业设计研究的课题是基于SDN的数据包控制策略。本课题主要任务是进行基于软件定义网络的流量调度系统的研究。1)研究现有的几种控制器以及控制器和交换机通信的OpenFlow协议,理解OpenFlow协议中的消息类型及作用,并分析几种版本OpenFlow协议的异同点和改善,为策略的制定提供依据;2)通过对数据包进行深度解析,根据协议类型、协议端口号等信息确定流量的类型。本课题所研究的流量类型:小股数据流构成的突发流量(即老鼠流)和持久且负载较高的稳定流量(即大象流);3)针对确定的流量进行算法分析制定最优调度策略。算法部分主要实现可行路径计算、路径链路状态分析模块、最优路径计算、调度策略制定等功能;4)搭建实验环境对调度策略进行验证。针对流量调度系统进行相关应用场景的验证性实验,对实验数据进行分析以对流量调度系统的可行性及效率进行分析;本论文的算法存在着一些有待提升的地方,在数据测量的时候主动测量时,在系统中存储流量调度的策略信息,如果链路有所改变时,将链路信息主动获取,并且将最新的最优路径和存储的最右边路径进行比对如果存在改变则更新相关策略,并删除之前策略,下发新的策略。最终做到最有链路的实时性。本课题对软件定义网络的创新型应用的研究,对传统网络的流量调度问题提出了自己的解决方案,并对该方案的可行性进行了验证。本课题是软件定义网络研究领域的一次尝试,为后续流量调度的研究提供了参考。致谢本论文的编写得到了很多老师、同学、公司同事的帮忙,可以说这个成果是所有人的功劳,由此对他们表示由衷的感谢。在本毕业设计(论文)写作过程中,我的导师沈卫康教授给予了我精心的指导和悉心的关怀。在我的学业和毕业设计(论文)从题目确立、课题展开到论文写作的过程中中无不倾注着导师辛勤的汗水和心血。导师的严谨治学态度、渊博的知识、无私的奉献精神使我深受的启迪。从尊敬的导师身上,我不仅学到了扎实、宽广的专业知识,也学到了做人的道理。在此我要向我的导师致以最衷心的感谢和深深的敬意。在我的毕业设计(论文)撰写过程中,张欣慰、何晓曦、王健等提出了非常宝贵的意见和建议,在此向他们表示由衷的谢意。在多年的学习生活中,还得到了许多学院领导、系(教研室)领导和老师的热情关心和帮助。在日常学习和生活中,洪杨等都给予了我很大帮助。最后,向所有关心和帮助过我的领导、老师、同学和朋友表示由衷的谢意!衷心地感谢在百忙之中评阅我的设计(论文)和参加答辩的诸位老师!参考文献[1]AwducheDO,AgogbuaJ.RequirementsfortrafficengineeringoverMPLS[J].1999.[2]刘亚萍,龚正虎.域间流量工程与域内流量工程的比较[J].计算机工程,2006,19:043.[3]J.Moy.OSPFversion2.UnitedStates:RFCEditor,1998:6-27[4]WangN,HoK,PavlouG,etal.Anoverviewofroutingoptimizationforinternettrafficengineering[J].CommunicationsSurveys&Tutorials,IEEE,2008,10(1):36-56.[5]GunnarA,AbrahamssonH,SöderqvistM.PerformanceoftrafficengineeringinoperationalIPnetworks–anexperimentalstudy[M]//OperationsandManagementinIP-BasedNetworks.SpringerBerlinHeidelberg,2005:202-211.[6]CasadoM,KoponenT,MoonD,etal.Rethinkingpacketforwardinghardware[C]//Proc.SeventhACMSIGCOMMHotNetsWorkshop.2008:11.[7]刘春佳.软件定义网络介绍[J].科研信息化技术与应用,2012,3:84-91.[8]王丽君,刘永强,张健.基于OpenFlow的未来互联网试验技术研究[J].电信网技术,2011(6):1-4.[9]GudeN,KoponenT,PettitJ,etal.NOX:towardsanoperatingsystemfornetworks[J].ACMSIGCOMMComputerCommunicationReview,2008,38(3):105-110.[10]DasS,ParulkarG,McKeownN,etal.PacketandcircuitnetworkconvergencewithOpenFlow[C]//OpticalFiberCommunicationConference.O
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年中国科大财务处劳务派遣岗位招聘备考题库及1套完整答案详解
- 2026年厦门轻工集团有限公司招聘备考题库及1套参考答案详解
- 2026年南宁市石门公园公开招聘编外聘用人员备考题库完整参考答案详解
- 2026年宜兴市部分机关事业单位公开招聘编外工作人员备考题库(A类)及参考答案详解
- 2026年广州五羊城酒店有限公司招聘备考题库参考答案详解
- 2026年上海中电新能源置业发展有限公司招聘备考题库及参考答案详解一套
- 2026年中远海运航空货运代理有限公司重庆分公司招聘备考题库及1套完整答案详解
- 2026年中国科协所属单位公开招聘应届高校毕业生33名备考题库及答案详解参考
- 2026年度北京大学医学人文学院教师招聘备考题库(非应届毕业生)及答案详解1套
- 2026年安龙县中国联通自有厅招聘1名营业员备考题库及参考答案详解一套
- 商代方国考古探讨
- 常用写作手法课件
- 三农村养老服务培训指南
- 北京大兴机场案例赏析64课件
- 水上作业事故预防与应急处理措施
- DB43∕T 1859-2020 研学产品设计与评价规范
- Q-JJJ 9002-2025 铁路建设项目安全穿透式管理实施指南
- 银行业档案管理办法细则
- alc墙板安装培训课件
- 抖音直播违规考试题及答案
- 购销合同解除退款协议书
评论
0/150
提交评论