1.一种基于内容存储的软件定义无线Mesh网络的方法,其特征在于,包括:(1)基于软件定义的无线Mesh网络体系结构,将控制平面与数据平面分离,其中控制平面中的控制器将获取到的全局网络状态信息分类为信息表存储在控制器的物理存储媒介中,每次决策需要的信息从这些信息表中获取,将其作为决策的输入,同时输出的决策结果用来更新相关的信息表;数据平面中的Mesh路由器点对点或多次跳转相连,实现控制器下发的路由决策结果;
控制器存储的信息表的说明以及每张表中关键属性包括:
业务流信息表:Internet能够提供给用户的业务流信息,包含业务的类型、实时性、传输速率、数据包大小属性;
Mesh路由器信息表:代表每个Mesh路由器的可用资源,可用带宽;
客户端接入映射表:将底层的客户端和Mesh路由器的连接关系抽象为映射表,建立二者之间连接关系的映射;
流表:包括了相应业务的路由决策结果、业务优先级、传输速率属性;
业务请求表:客户端发起的业务请求信息,包括客户端ID、业务ID、业务优先级、传输速率;
内容存储表:表示在链路发生中断或者网络状态不好时,记录了Mesh路由器暂时存储的业务类型的表;
(2)基于内容存储的路由转发机制
Mesh路由器通过外接存储设备实现内容存储;业务在传输时,遇到链路中断,需暂存业务内容,接着请求控制器重新寻路;在网络状态不好的情况下,优先传输优先级高的业务,暂存低优先级的业务,充分利用有限资源实现高质量传输;具体步骤为:
步骤2-1:控制器不断接收用户请求,为请求的业务分配传输路径,下发路由结果;
步骤2-2:业务传输过程中,当前Mesh路由器需要判断该节点的邻居列表NB_INFO中是否包含了决策路径的下一跳,若没有,说明链路已断,此时进行业务存储,同时再次发送Hello消息探测包检测链路修复状况;若链路没有修复好,进行步骤2-3;若链路修复完成,则执行步骤2-4;若NB_INFO中包含了决策路径的下一跳,则进行步骤2-4;
步骤2-3:该节点发送RREQ到控制器进行重新寻路,然后从当前节点开始进行正常传输;
步骤2-4:判断网络状态是否良好,如果良好,则进行正常传输;网络状态不好执行步骤
2-5;
步骤2-5:存储业务,根据优先级从高到低进行业务传输,未传输业务开始等待计时;
步骤2-6:若等待时间大于网络容忍时间T_ALLOW_TIME,取值范围为3秒至5秒,则重复步骤2-3,否则执行步骤2-5;
(3)OpenFlow与AODV协议的协同路由转发机制,具体步骤为:步骤3-1:初始化,每个Mesh路由器运行AODV协议寻找到达控制器的路径来发送OFPT_HELLO消息,从而建立控制器和各个路由器间的管理通道;
步骤3-2:每T时间间隔,路由器利用OFPT_PORT_FEATURES消息向控制器发送一次各路由器获取的节点和链路信息,用以更新控制器所有的网络状态表,T时间间隔取为1秒至3秒;
步骤3-3:客户端发起业务请求,选择信号最强的Mesh路由器作为接入点;
步骤3-4:接入的Mesh路由器中维护着控制器节点路由表,记录着当前Mesh路由器到控制器的路由,然后查表并向控制器发送RREQ_S业务请求信息;
步骤3-5:控制器接收到业务请求消息后,综合网络全局状态信息,依据优化方法做出路由决策;
步骤3-6:路由决策后的结果由控制器软件编写成到对应于该规划路径的流表,形式为<头域,操作>,再利用AODV协议的基本寻路方法将流表转发给对应的Mesh路由器和Mesh网关;
步骤3-7:数据流从与Internet相连的Mesh网关开始,按照流表规则依次传输到达客户端。
2.根据权利要求1所述的方法,其特征在于,在(2)部分基于内容存储的路由转发机制中,按照业务优先级的顺序从高到低为实时业务、非实时业务、尽力而为的业务。