一种基于多路径的软件定义网络实现方法技术

技术编号:19828455 阅读:24 留言:0更新日期:2018-12-19 16:57
本发明专利技术提供了一种基于多路径的软件定义网络实现方法,所述网络包括一个核心控制器,两个以上的本地控制器,交换机和设备;本地控制器用于管理交换机,核心控制器用于管理本地控制器,设备为末端设备;设备通过交换机实现通信;所述网络通过本发明专利技术所提供的实现方法可快速获取网络数据,缩短路由延迟,降低数据包丢失率,提高服务质量,本发明专利技术可应用于道路路况监测、环境监测等领域,具有广泛的应用前景。

【技术实现步骤摘要】
一种基于多路径的软件定义网络实现方法
本专利技术涉及一种实现方法,尤其涉及的是一种基于多路径的软件定义网络实现方法。
技术介绍
软件定义网络作为一种新型通信网络,能够实现节点之间的多跳无线通信。随着网络技术的不断发展以及各种新应用的不断涌现,迫切需要提高网络性能。目前,研究人员提出了通过软件定义网络获取网络服务的模式并定义了相应的协议栈,但是由于软件定义网络的体系结构与传统网络的体系结构不同,现有的网络获取服务的方法具有一些局限性。因此需要提出一种低延迟的软件定义网络实现方法,从而提高服务质量。
技术实现思路
专利技术目的:本专利技术所要解决的技术问题是针对现有技术的不足,提供一种基于多路径的软件定义网络实现方法。技术方案:本专利技术公开了一种基于多路径的软件定义网络实现方法,所述网络包括一个核心控制器,两个以上的本地控制器,交换机和设备;本地控制器用于管理交换机,核心控制器用于管理本地控制器,设备为末端设备,例如电脑;设备通过交换机实现通信;一个核心控制器具有两个以上的接口,每个接口与一个本地控制器链路相连;一个本地控制器具有上游接口和两个以上的下游接口,上游接口与核心控制器链路相连,下游接口与交换机链路相连;一个交换机具有两个以上的上游接口和两个以上的下游接口,每个上游接口与一个交换机或者本地控制器链路相连,每个下游接口与一个交换机或者一个设备链路相连;交换机包括骨干交换机和接入交换机,骨干交换机的下游接口与交换机链路相连,接入交换机的下游接口与设备链路相连;一个设备具有一个接口,该接口与接入交换机链路相连;骨干交换机SW1的上游接口如果链接另一个骨干交换机SW2,且骨干交换机SW2与本地控制器LC2多跳可达,那么骨干交换机SW2与本地控制器LC2的距离小于骨干交换器SW1与本地控制器LC2的距离;一个设备或者接入交换机由一个地址标识,一个地址由路由前缀和硬件ID构成,硬件ID可以是MAC地址;每个接入交换机的地址的硬件ID为0;接入交换机的路由前缀预先设置,例如0xABCD,接入交换机的路由前缀设置根据地域设置,如同现在的IP地址的路由前缀;接入交换机定期发送信标消息,该信标消息的源地址为该接入交换机的地址,目的地址为广播地址,广播地址的每个比特位为1;设备接收到信标消息后,如果该信标消息的源地址的硬件ID为0,该设备则将自己的硬件ID与该信标消息的源地址的路由前缀相结合构建成一个地址;接入交换机保存一个邻居表,一个邻居表项包括地址域,接口ID域和生命周期域;一个接口由接口ID唯一标识,接口ID为f的接口可以简写为接口f;设备D1与接入交换机ES1链路相连,设备D1获取地址后,执行下述过程建立邻居表:步骤101:开始;步骤102:设备D1发送一个信标消息,该信标消息的源地址为设备D1的地址,目的地址为接入交换机ES1的地址;步骤103:接入交换机ES1从接口f1接收到信标消息后,查看邻居表,如果存在一个邻居表项,该邻居表项的接口ID为f1,接入交换机ES1则将该邻居表项的地址域更新为该信标消息的源地址,将该邻居表项的生命周期设置为最大值,例如100ms;否则,接入交换机ES1创建一个邻居表项,该邻居表项的接口ID为f1,该邻居表项的地址域为该信标消息的源地址,该邻居表项的生命周期设置为最大值;步骤104:结束。设备通过上述过程建立邻居表,这样接入交换机可以获取设备的地址以及该设备连接的接口,根据接口和地址信息实现消息地正确转发。上述过程通过生命周期控制设备地接口和地址信息的有效性,从而确保了转发消息地正确性和通信地正确性以及实时性。本专利技术所述方法中,一个本地控制器维护一个本地控制器前缀表,本地控制器前缀表项包含路由前缀域,接口ID集合域和生命周期域;一个核心控制器维护一个核心控制器前缀表,核心控制器前缀表项包含路由前缀域和接口域;接入交换机ES1定期执行下述操作以建立前缀表:步骤201:开始;步骤202:接入交换机ES1设置一个接口ID集合参数s1,参数s1的初始值为空,接入交换机ES1从每个上游接口发送一个发布消息,该发布消息的源地址为接入交换机ES1的地址,目的地址为空,负载为参数s1;步骤203:判断是本地控制器从接口x2还是交换机从接口x1接收到发布消息,如果是本地控制器则执行步骤205,否则执行步骤204;步骤204:交换机从接口x1接收到发布消息后,将接口x1加入到该发布消息负载中的参数s1中并作为最后一个元素存在,从每个上游接口转发该发布消息,执行步骤203;步骤205:本地控制器从接口x2接收到发布消息后,将接口x2加入到该发布消息负载中的参数s1中并作为最后一个元素存在;该本地控制器查看本地控制器前缀表,判断是否存在一个本地控制器前缀表项,该本地控制器前缀表项的路由前缀等于该发布消息源地址的路由前缀,且接口ID集合等于该发布消息负载中的参数s1,如果存在则本地控制器将该前缀表项的生命周期设置为最大值,例如500ms;否则,该本地控制器创建一个前缀表项,该前缀表项的路由前缀等于该发布消息源地址的路由前缀,接口ID集合等于该发布消息负载中的参数s1,将该前缀表项的生命周期设置为最大值;步骤206:接收到发布消息的本地控制器查看本地控制器前缀表,判断是否只有一个本地控制器前缀表项的路由前缀域值等于该发布消息的源地址的路由前缀,如果是则执行步骤207,否则执行步骤208;步骤207:接收到发布消息的本地控制器从上游接口发送一个前缀发布消息,该前缀发布消息的源地址和目的地址均为空,负载为接收到的发布消息的源地址的路由前缀;核心控制器从接口x3接收到该前缀发布消息后,创建一个核心控制器前缀表项,该核心控制器前缀表项的路由前缀域值等于该前缀发布消息负载中的路由前缀,接口ID域值等于x3;步骤208:结束。接入交换机通过上述过程建立本地控制器前缀表和核心控制器前缀表,这样,本地控制器通过上述过程能够建立到达目的接入交换机的最优路由路径,由于上述过程通过生命周期来控制路由路径的有效性,从而确保了该路由路径的实时性和正确性。本专利技术所述方法中,如果本地控制器LC1检测到前缀表项E1的生命周期衰减为0,则执行下述操作:步骤301:开始;步骤302:本地控制器LC1查看本地控制器前缀表,判断是否至少存在两个前缀表项,这两个前缀表项的路由前缀等于前缀表项E1的路由前缀,如果是则执行步骤303,否则执行步骤304;步骤303:本地控制器LC1从前缀表中删除前缀表项E1,执行步骤306;步骤304:本地控制器LC1从上游接口发送一个删除消息,该删除消息的源地址和目的地址为空,负载为前缀表项E1的路由前缀,本地控制器LC1然后删除前缀表项E1;步骤305:核心控制器从接口x4接收到删除消息后,选择一个前缀表项,该前缀表项的路由前缀等于该删除消息负载中的路由前缀且接口ID等于x4,删除选中的前缀表项;步骤306:结束。本地控制器通过上述过程删除生命周期衰减为0的本地控制器前缀表,并更新核心控制器前缀表,这样,核心控制器和本地控制器能够实现消息的正确转发,从而确保数据通信的正确性和有效性。本专利技术所书方法中,设备D1与接入交换机ES1链路相连,设备D2与接入交换机ES2链路相连;设备D1通过下述过程实现与设备D2的通信:步本文档来自技高网...

【技术保护点】
1.一种基于多路径的软件定义网络实现方法,其特征在于,所述网络包括一个核心控制器,两个以上的本地控制器,交换机和设备;本地控制器用于管理交换机,核心控制器用于管理本地控制器,设备为末端设备;设备通过交换机实现通信;一个核心控制器具有两个以上的接口,每个接口与一个本地控制器链路相连;一个本地控制器具有上游接口和两个以上的下游接口,上游接口与核心控制器链路相连,下游接口与交换机链路相连;一个交换机具有两个以上的上游接口和两个以上的下游接口,每个上游接口与一个交换机或者本地控制器链路相连,每个下游接口与一个交换机或者一个设备链路相连;交换机包括骨干交换机和接入交换机,骨干交换机的下游接口与交换机链路相连,接入交换机的下游接口与设备链路相连;一个设备具有一个接口,该接口与接入交换机链路相连;骨干交换机SW1的上游接口如果链接另一个骨干交换机SW2,且骨干交换机SW2与本地控制器LC2多跳可达,那么骨干交换机SW2与本地控制器LC2的距离小于骨干交换器SW1与本地控制器LC2的距离;一个设备或者接入交换机由一个地址标识,一个地址由路由前缀和硬件ID构成;每个接入交换机的地址的硬件ID为0;接入交换机的路由前缀预先设置;接入交换机定期发送信标消息,该信标消息的源地址为该接入交换机的地址,目的地址为广播地址,广播地址的每个比特位为1;设备接收到信标消息后,如果该信标消息的源地址的硬件ID为0,该设备则将自己的硬件ID与该信标消息的源地址的路由前缀相结合构建成一个地址;接入交换机保存一个邻居表,一个邻居表项包括地址域,接口ID域和生命周期域;一个接口由接口ID唯一标识,接口ID为f的接口可以简写为接口f;设备D1与接入交换机ES1链路相连,设备D1获取地址后,执行下述过程建立邻居表:步骤101:开始;步骤102:设备D1发送一个信标消息,该信标消息的源地址为设备D1的地址,目的地址为接入交换机ES1的地址;步骤103:接入交换机ES1从接口f1接收到信标消息后,查看邻居表,如果存在一个邻居表项,该邻居表项的接口ID为f1,接入交换机ES1则将该邻居表项的地址域更新为该信标消息的源地址,将该邻居表项的生命周期设置为最大值;否则,接入交换机ES1创建一个邻居表项,该邻居表项的接口ID为f1,该邻居表项的地址域为该信标消息的源地址,该邻居表项的生命周期设置为最大值;步骤104:结束。...

【技术特征摘要】
1.一种基于多路径的软件定义网络实现方法,其特征在于,所述网络包括一个核心控制器,两个以上的本地控制器,交换机和设备;本地控制器用于管理交换机,核心控制器用于管理本地控制器,设备为末端设备;设备通过交换机实现通信;一个核心控制器具有两个以上的接口,每个接口与一个本地控制器链路相连;一个本地控制器具有上游接口和两个以上的下游接口,上游接口与核心控制器链路相连,下游接口与交换机链路相连;一个交换机具有两个以上的上游接口和两个以上的下游接口,每个上游接口与一个交换机或者本地控制器链路相连,每个下游接口与一个交换机或者一个设备链路相连;交换机包括骨干交换机和接入交换机,骨干交换机的下游接口与交换机链路相连,接入交换机的下游接口与设备链路相连;一个设备具有一个接口,该接口与接入交换机链路相连;骨干交换机SW1的上游接口如果链接另一个骨干交换机SW2,且骨干交换机SW2与本地控制器LC2多跳可达,那么骨干交换机SW2与本地控制器LC2的距离小于骨干交换器SW1与本地控制器LC2的距离;一个设备或者接入交换机由一个地址标识,一个地址由路由前缀和硬件ID构成;每个接入交换机的地址的硬件ID为0;接入交换机的路由前缀预先设置;接入交换机定期发送信标消息,该信标消息的源地址为该接入交换机的地址,目的地址为广播地址,广播地址的每个比特位为1;设备接收到信标消息后,如果该信标消息的源地址的硬件ID为0,该设备则将自己的硬件ID与该信标消息的源地址的路由前缀相结合构建成一个地址;接入交换机保存一个邻居表,一个邻居表项包括地址域,接口ID域和生命周期域;一个接口由接口ID唯一标识,接口ID为f的接口可以简写为接口f;设备D1与接入交换机ES1链路相连,设备D1获取地址后,执行下述过程建立邻居表:步骤101:开始;步骤102:设备D1发送一个信标消息,该信标消息的源地址为设备D1的地址,目的地址为接入交换机ES1的地址;步骤103:接入交换机ES1从接口f1接收到信标消息后,查看邻居表,如果存在一个邻居表项,该邻居表项的接口ID为f1,接入交换机ES1则将该邻居表项的地址域更新为该信标消息的源地址,将该邻居表项的生命周期设置为最大值;否则,接入交换机ES1创建一个邻居表项,该邻居表项的接口ID为f1,该邻居表项的地址域为该信标消息的源地址,该邻居表项的生命周期设置为最大值;步骤104:结束。2.根据权利要求1所述的一种基于多路径的软件定义网络实现方法,其特征在于,一个本地控制器维护一个本地控制器前缀表,本地控制器前缀表项包含路由前缀域,接口ID集合域和生命周期域;一个核心控制器维护一个核心控制器前缀表,核心控制器前缀表项包含路由前缀域和接口域;接入交换机ES1定期执行下述操作以建立前缀表:步骤201:开始;步骤202:接入交换机ES1设置一个接口ID集合参数s1,参数s1的初始值为空,接入交换机ES1从每个上游接口发送一个发布消息,该发布消息的源地址为接入交换机ES1的地址,目的地址为空,负载为参数s1;步骤203:判断是本地控制器从接口x2还是交换机从接口x1接收到发布消息,如果是本地控制器则执行步骤205,否则执行步骤204;步骤204:交换机从接口x1接收到发布消息后,将接口x1加入到该发布消息负载中的参数s1中并作为最后一个元素存在,从每个上游接口转发该发布消息,执行步骤203;步骤205:本地控制器从接口x2接收到发布消息后,将接口x2加入到该发布消息负载中的参数s1中并作为最后一个元素存在;该本地控制器查看本地控制器前缀表,判断是否存在一个本地控制器前缀表项,该本地控制器前缀表项的路由前缀等于该发布消息源地址的路由前缀,且接口ID集合等于该发布消息负载中的参数s1,如果存在则本地控制器将该前缀表项的生命周期设置为最大值;否则,该本地控制器创建一个前缀表项,该前缀表项的路由前缀等于该发布消息源地址的路由前缀,接口ID集合等于该发布消息负载中的参数s1,将该前缀表项的生命周期设置为最大值;步骤206:接收到发布消息的本地控制器查看本地控制器前缀表,判断是否只有一个本地控制器前缀表项的路由前缀域值等于该发布消息的源地址的路由前缀,如果是则执行步骤207,否则执行步骤208;步骤207:接收到发布消息的本地控制器从上游接口发送一个前缀发布消息,该前缀发布消息的源地址和目的地址均为空,负载为接收到的发布消息的源地址的路由前缀;核心控制器从接口x3接收到该前缀发布消息后,创建一个核心控制器前缀表项,该核心控制器前缀表项的路由前缀域值等于该前缀发布消息负载中的路由前缀,接口ID域值等于x3;步骤208:结束。3.根据权利要求2所述的一种基于多路径的软件定义网络实现方法,其特征在于,如果本地控制器LC1检测到前缀表项E1的生命周期衰减为0,则执行下述操作:步骤301:开始;步骤302:本地控制器LC1查看本地控制器前缀表,判断是否至少存在两个前缀表项,这两个前缀表项的路由前缀等于前缀表项E1的路由前缀,如果是则执行步骤303,否则执行步骤304;步骤303:本地控制器LC1从前缀表中删除前缀表项E1,执行步骤306;步骤304:本地控制器LC1从上游接口发送一个删除消息,该删除消息的源地址和目的地址为空,负载为前缀表项E1的路由前缀,本地控制器LC1然后删除前缀表项E1;步骤305:核心控制器从接口x4接收到删除消息后,选择一个前缀表项,该前缀表项的路由前缀等于该删除消息负载中的路由前缀且接口ID等于x4,删除选中的前缀表项;步骤306:结束。4...

【专利技术属性】
技术研发人员:王晓喃程宏斌姚宇峰
申请(专利权)人:常熟理工学院
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1