欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2014105578107
申请人: 常熟理工学院
专利类型:发明专利
专利状态:已下证
专利领域: 电通信技术
更新日期:2025-04-15
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种下一代无线网络的组播通信实现方法,其特征在于,所述无线网络包括两类节点,全功能节点和部分功能节点,所述无线网络通过一个且只通过一个接入路由器与互联网相连;全功能节点为固定节点且具有路由功能,部分功能节点为移动节点,不具有路由功能;接入路由器与全功能节点构建成一个树状结构,作为组播树完成组播,组播树的根节点为接入路由器,网络层的组播通过链路层的单播实现;每个部分功能节点与一个且只与一个全功能节点关联,该全功能节点称为部分功能节点的关联节点,部分功能节点通过关联节点与其他节点进行通信;

一个组播的组播地址由四部分组成,第一部分是组播前缀,长度为8个比特,值为十六进制的FF,表示该地址为组播地址;第二部分为保留字段,长度为8比特,值为0;第三部分为网络前缀,长度为64比特,唯一标识一个无线网络;第四部分为组ID,长度为48比特,唯一标识一个组播;

一个单播的单播地址由三部分组成,第一部分是网络前缀,长度为64比特,一个无线网络中所有节点的网络前缀都相同;第二部分为组ID,长度为48比特,当节点进行单播操作时,其值为0,节点进行组播操作时,其值为组播对应的组ID;第三部分为节点ID,长度为16比特,它唯一表示一个节点,该值在所述无线网络内具有唯一性;组ID和节点ID构成链路地址;

一个部分功能节点用于配置多个组播地址;

一个接入路由器的节点ID的地址空间为[1,4],部分功能节点的节点ID空间为[5,215-

1],全功能节点的节点ID空间为[215,216-2];

链路层的命令帧中,负载的第一个字段为命令ID,长度为8比特,采用十六进制,如下表所示:组播组由两个以上组播成员构成,由一个组播地址标识,目的地址为该组播地址的消息分别到达组播组的每个组播成员;

全功能节点和部分功能节点通过地址初始化获取具有网络唯一性的节点ID,并实现地址配置;已配置地址的全功能节点具有一个全功能节点地址空间和一个部分功能节点地址空间,分别用于对全功能节点和部分功能节点进行地址配置;接入路由器、全功能节点和部分功能节点广播信标帧;接入路由器广播的信标帧负载包括网络前缀;全功能节点广播的信标帧负载为网络前缀,全功能节点地址空间长度和部分功能节点地址空间长度;部分功能节点广播的信标帧负载为空;全功能节点节点或者部分功能节点启动后,首先用自己的硬件ID作为节点ID并构建临时链路地址,其中组ID为0;

全功能节点启动后,侦听接入路由器或者其他全功能节点广播的信标帧,如果接入路由器为全功能节点的邻居节点,全功能节点则从接入路由器获取节点ID和相应的节点ID空间,否则从全功能节点地址空间最大的其他全功能节点邻居节点获取节点ID;

全功能节点X从邻居接入路由器AR1获取节点ID的过程为:

步骤101:开始;

步骤102:全功能节点X向接入路由器AR1发送命令ID为A的命令帧,源地址为全功能节点X的临时链路地址;

步骤103:接入路由器AR1收到命令ID为A的命令帧后,向全功能节点X返回命令ID为B的命令帧,命令帧负载为分配的全功能节点ID空间[L1,U1]和部分功能节点ID空间[L2,U2],同时将空间[L1,U1]和[L2,U2]标记为已分配,将全功能节点X标记为自己的子节点;L1

215≤L1,U1≤216-2;L2

步骤104:全功能节点X收到命令ID为B的命令帧后,将空间下限L1作为自己的节点ID,与接入路由器AR1的网络前缀相结合取得IPv6地址,其中组ID为0,将空间[L1+1,U1]作为可分配全功能节点地址空间,同时保存空间[L2,U2]作为可分配部分功能节点地址空间,将接入路由器AR1标记为父节点;

步骤105:结束;

当无线网络内所有全功能节点获取地址后,接入路由器AR1和全功能节点构建为树状结构,即组播树,根节点为接入路由器AR1;

如果全功能节点X的全功能节点空间为[L1+1,U1],部分功能节点空间为[L2,U2],全功能节点Y从邻居全功能节点X获取地址的过程为:步骤201:开始;

步骤202:全功能节点Y向全功能节点X发送命令ID为A的命令帧,源地址为临时链路地址;

步骤203:全功能节点X收到命令ID为A的命令帧后,向全功能节点Y返回命令ID为B的命令帧,命令帧负载为分配的全功能节点ID空间 和部分功能节点ID空间同时全功能节点X将自己的全功能节点ID空间更新为

将部分功能节点ID空间更新为 将全功能节点Y标记为子节点;

步骤204:全功能节点Y收到命令ID为B的命令帧后,将空间下限 作为自己的节点ID,与全功能节点X的网络前缀相结合取得IPv6地址,组ID为0,全功能节点Y将空间作为可分配全功能节点ID空间,同时保存空间 作为可分配部分功能节点ID空间,将全功能节点X标记为父节点;

步骤205:结束;

部分功能节点启动后,侦听邻居全功能节点广播的信标帧,然后从信号最强的全功能节点获取节点ID;

如果邻居全功能节点Y的部分功能节点ID空间为[L3,U3],其中,L3

1,部分功能节点Z从全功能节点Y获取地址的过程为:

步骤301:开始;

步骤302:部分功能节点Z向全功能节点Y发送命令ID为C的命令帧,源地址为临时链路地址;

步骤303:全功能节点Y收到命令ID为C的命令帧后,向部分功能节点Z返回命令ID为D的命令帧,命令帧负载为分配的节点ID的空间下限L3,同时将自己的部分功能节点ID空间更新为空间[L3+1,U3];

步骤304:部分功能节点Z收到命令ID为D的命令帧后,将空间下限L3作为自己的节点ID,与全功能节点Y的网络前缀相结合取得IPv6地址,组ID为0,同时将全功能节点Y设置为自己的关联节点;

步骤305:结束。

2.根据权利要求1所述的下一代无线网络的组播通信实现方法,其特征在于,一个组播由一个组ID唯一标识;在一个组播树中,每个节点保存一个组播表,每个表项包含2个域:组ID以及节点ID;

部分功能节点Z的关联节点为全功能节点Y,如果部分功能节点Z请求加入一个组ID已知的组播组,该组播组的组ID为g,那么部分功能节点Z执行下述过程:步骤401:开始;

步骤402:部分功能节点Z构建一个新的链路地址,地址的组ID为g,节点ID为在初始化过程中获取的节点ID,然后向全功能节点Y发送命令ID为E的命令帧,帧的源地址为本步骤所述新的链路地址;

步骤403:全功能节点Y收到命令ID为E的命令帧后,在组播表中增加一个表项,组ID为g,节点ID为部分功能节点Z的节点ID;

步骤404:全功能节点Y查看组播表,判断除了部分功能节点Z的表项外,是否剩余的其他表项的组ID都不等于g,如果是,进行步骤405,否则进行步骤410;

步骤405:全功能节点Y构建一个新的链路地址,地址的组ID为g,节点ID为初始化获取的节点ID,然后向全功能节点Y自己的父节点发送一个命令ID为E的命令帧,源地址为本步骤所述新的链路地址;

步骤406:收到子节点的命令ID为E的命令帧的父节点,在组播表中增加一个表项,组ID为g,节点ID为子节点的节点ID;

步骤407:判断父节点是否为接入路由器,如果是进行步骤410,否则进行步骤408;

步骤408:父节点查看组播表,判断是否除了子节点的表项外,其他任何节点的表项的组ID都不等于g,如果是进行步骤409,否则进行步骤410;

步骤409:父节点构建一个新的链路地址,地址的组ID为x,节点ID为自己初始化获取的节点ID,然后向自己的父节点发送一个命令ID为E的命令帧,源地址为本步骤新构建的链路地址,返回步骤406;

步骤410:结束。

3.根据权利要求2所述的下一代无线网络的组播通信实现方法,其特征在于,当接入路由器AR1收到组ID为g的组播数据消息后,首先将数据消息封装为数据帧,然后根据组播表实现组播通信,过程如下所示:步骤501:开始;

步骤502:接入路由器AR1查看组播表,针对每个组ID为g的表项进行如下操作:构建链路地址,地址的组ID为g,节点ID为该表项的节点ID;接入路由器AR1将组播数据帧的目的地址设置为本步骤构建的链路地址,源地址设置为自己的链路地址,然后发送该数据帧;

步骤503:如果接收到组播数据帧的是部分功能节点,则进行步骤504,否则进行步骤

505;

步骤504:部分功能节点处理该组播数据帧,进行步骤506;

步骤505:全功能节点从父节点接收到组播数据帧后,全功能节点通过判断组ID为非0判定该数据帧为组播数据帧,针对组播表中每个组ID为g的表项进行如下操作:构建链路地址,地址的组ID为g,节点ID为该表项的节点ID;将组播数据帧的目的地址设置为构建的链路地址,源地址设置为自己的链路地址,然后发送该数据帧,返回步骤503;

步骤506:结束。

4.根据权利要求2所述的下一代无线网络的组播通信实现方法,其特征在于,部分功能节点能够加入一个以上的组播组,针对每个组播,部分功能节点设有一个对应的链路地址,其中组ID为标识该组播的组ID,节点ID保持为初始化获取的节点ID;

如果部分功能节点Z加入了n个组播组,对应的组ID分别为xp,1≤p≤n,n为正整数,那么针对每个组播,部分功能节点Z设有一个链路地址;

当部分功能节点Z检测到自己从当前关联节点Y的通信范围移动到新的关联节点Y1的通信范围时,进行如下操作以确保组播通信的正确性:步骤601:开始;

步骤602:部分功能节点Z构建一个链路地址,组ID为x1,节点ID为自己的节点ID,向关联节点Y1发送命令ID为E的命令帧,命令帧的源地址为本步骤构建的链路地址,命令帧负载为n个组ID,即x1…xn;

步骤603:关联节点Y1收到命令ID为E的命令帧后,在组播表中增加n个表项,每个表项的组ID为xp,节点ID为部分功能节点Z的节点ID,关联节点Y1查看组播表判断是否满足条件

1,如果满足,进行步骤609,否则进行步骤604;

条件1:针对接收到的命令ID为E的命令帧负载中的每一个组ID,组播表中至少有两个表项的组ID等于该命令帧负载中的组ID;

步骤604:关联节点Y1构建一个新的链路地址,地址的组ID为x1,节点ID为初始化获取的节点ID,然后关联节点Y1向父节点发送一个命令ID为E的命令帧,源地址为本步骤新构建的链路地址,帧负载为不符合上述条件1的组ID;

步骤605:收到子节点的命令ID为E的命令帧的父节点,针对命令帧负载中的每个组ID都在组播表中增加一个表项,其中节点ID为子节点的节点ID;

步骤606:判断父节点是否为接入路由器,如果是,进行步骤609,否则进行步骤607;

步骤607:父节点查看组播表判断是否满足条件1,如果满足,进行步骤609,否则进行步骤608;

步骤608:父节点构建一个新的链路地址,地址的组ID为x1,节点ID为初始化获取的节点ID,然后向自己的父节点发送一个命令ID为E的命令帧,源地址为本步骤新构建的链路地址,命令帧负载为不符合条件1的组ID,返回步骤605;

步骤609:结束;

如果全功能节点Y在规定时间内没有收到部分功能节点Z的信标帧,全功能节点Y首先记录下部分功能节点Z所加入的所有组播组,即在组播表中部分功能节点Z对应的所有表项的组ID,然后判断条件2是否成立,其中,条件2中的节点ID为部分功能节点Z的节点ID,组ID为部分功能节点Z所属于的每个组播组的组ID,然后全功能节点Y从组播表中删除部分功能节点Z的所有表项;

条件2:针对节点ID和组ID为设定值的表项,至少还有另一个表项的组ID等于该表项的组ID;

如果针对部分功能节点Z所属的每个组播组的组ID,条件2都成立,那么全功能节点Y不进行任何操作,否则等待时间d×t后,d为树最大深度,t为一跳延迟,全功能节点Y执行下述操作:步骤701:开始;

步骤702:全功能节点Y向父节点发送一个命令ID为F的命令帧,命令帧负载为部分功能节点Z所属的组播组中不符合条件2的组ID,源地址为全功能节点Y自己的链路地址,该链路地址的组ID为0;

步骤703:父节点收到子节点的命令ID为F的命令帧后,判断条件2是否成立,其中,条件

2中的节点ID与子节点的节点ID相同,组ID为命令帧负载中每一个组ID,如果针对命令帧负载中对应的每个组ID条件2都成立,则进行步骤706,否则进行步骤704;

步骤704:判断父节点是否为接入路由器,如果是进行步骤706,否则进行步骤705;

步骤705:父节点删除节点ID为子节点且组ID为命令帧负载中的每个组ID对应的表项,然后向自己父节点发送一个命令ID为F的命令帧,命令帧负载为不符合条件2的组ID,源地址为自己的链路地址,进行步骤703;

步骤706;父节点删除节点ID为子节点且组ID为命令帧负载中的每个组ID对应的表项;

步骤707:结束。