专利摘要
本发明提供了一种下一代无线网络的地址配置实现方法,其特征在于,所述无线网络包括三类节点:已配置节点,半配置节点和新节点;其中,已配置节点为具有路由转发功能且已配置地址的节点,半配置节点为具有路由转发功能且产生的地址正在进行地址重复检测过程中的节点,新节点为未配置地址的节点;所述无线网络作为末端网络通过接入路由器连接到互联网;已配置节点和半配置节点同时承担路由路径的中间节点的功能;下一代无线网络中的新节点通过本发明可以获取具有全球唯一性的地址。
权利要求
1.一种下一代无线网络的地址配置实现方法,其特征在于,所述无线网络包括三类节点:已配置节点,半配置节点和新节点;其中,已配置节点为具有路由转发功能且已配置地址的节点,半配置节点为具有路由转发功能且产生的地址正在进行地址重复检测过程中的节点,新节点为未配置地址的节点;所述无线网络作为末端网络通过接入路由器连接到互联网;已配置节点和半配置节点同时承担路由路径的中间节点的功能;
所述无线网络的IPv6地址由两部分组成,第一部分是全局路由前缀,长度为128-i-j比特,唯一标识一个无线网络,一个无线网络中所有节点的全局路由前缀都相同,与所连接的接入路由器的全局路由前缀相同;第二部分为随机ID,唯一标识一个节点,随机ID由地址重复检测ID和节点ID构成,其中地址重复检测ID长度为i比特,随机产生,用于地址的重复地址检测,节点ID长度为j比特,随机产生,用于确保节点地址的唯一性;i和j为正整数,随机ID作为链路地址,其长度为16比特或者64特比,即i+j=16或者i+j=64;
接入路由器的随机ID为1;节点的地址重复检测ID取值范围为[1,2i-1],当节点的地址重复检测ID取值为上限2i-1时,节点ID的取值范围为[1,2j-2],当节点的地址重复检测ID的取值范围为[1,2i-2]时,节点ID的取值范围为[1,2j-1];接入路由器的IPv6地址为预先设置;
新节点通过信标帧来实现地址配置,其中信标帧负载的前三个比特定义信标帧的负载内容和通信方式,如表1所示:
表1:
2.根据权利要求1所述的下一代无线网络的地址配置实现方法,其特征在于,初始状态下,一个无线网络中每个节点均为新节点且具有一个无线网络唯一性的ID;新节点在地址配置之前采用具有无线网络唯一性的ID作为临时链路地址;
所述无线网络启动后,接入路由器在一跳范围内广播类型为000的信标帧,信标帧负载为接入路由器的全局路由前缀;新节点获取地址转变为已配置节点后,在一跳范围内广播类型为000的信标帧,信标帧负载为自己的全局路由前缀;
新节点启动后,通过接收邻居接入路由器或者已配置节点广播的类型为000的信标帧获取当前无线网络的全局路由前缀,然后通过下述过程实现地址配置:
步骤101:开始;
步骤102:新节点随机产生一个地址重复检测ID和节点ID,其中随机产生的地址重复检测ID满足下述两个条件:
条件1:与新节点接收到的所有类型为010的信标帧负载中的地址重复检测ID都不同;
条件2:与新节点的所有邻居已配置节点的地址重复检测ID都不同;
步骤103:新节点在无线网络内广播一个类型为010的信标帧,信标帧负载为获取的全局路由前缀和满足上述两个条件的地址重复检测ID,信标帧的源链路地址为新节点的临时链路地址,然后将自己标记为半配置节点;.
步骤104:无线网络中已配置节点收到新节点的类型为010的信标帧后,转发该信标帧,同时判断已配置节点的全局路由前缀和地址重复检测ID是否与信标帧中的全局路由前缀和地址重复检测ID相同,如果相同,则进行步骤105,否则进行步骤106;
步骤105:已配置节点向新节点单播返回一个类型为001的信标帧,信标帧的源地址为自己的链路地址,信标帧负载为空;
步骤106:无线网络中半配置节点收到新节点的类型为010的信标帧后,转发该信标帧,同时判断半配置节点的全局路由前缀和随机产生的地址重复检测ID是否与信标帧中的全局路由前缀和地址重复检测ID相同,如果相同,则进行步骤107;否则进行步骤108;
步骤107:半配置节点向新节点单播返回一个类型为001的信标帧,信标帧负载为该半配置节点随机产生的地址重复检测ID和节点ID,信标帧源地址为该半配置节点的临时链路地址;
步骤108:在规定时间后,新节点检测所有收到的类型为001的信标帧,判断自己产生的地址重复检测ID和节点ID是否与无线网络内的已配置节点的地址重复检测ID和节点ID相同,如果是,执行步骤102,否则进行步骤109;
步骤109:新节点判断自己产生的地址重复检测ID和节点ID是否与无线网络内的半配置节点的地址重复检测ID和节点ID相同,如果是,执行步骤110,否则进行步骤111;
步骤110:新节点比较它与所有与自己具有相同的地址重复检测ID和节点ID的半配置节点的临时链路地址,判断自己的临时链路地址是否小于所述半配置节点的临时链路地址,如果是,进行步骤111,否则进行步骤102;
步骤111:新节点将自己标记为已配置节点,同时将步骤102中产生的地址重复检测ID和节点ID与获取的全局路由前缀相结合获取了具有网络唯一性的IPv6地址;
步骤112:结束;
无线网络中所有新节点执行步骤101~步骤112过程直到所有节点获取具有全球唯一性的地址为止,此时无线网络初始化结束;
步骤108中,规定时间为α·d·t,其中α为调节系数,d为网络直径,t为一个信标帧的一跳延迟;
步骤102中,新节点产生的地址重复检测ID与无线网络内的已配置节点或者半配置节点的地址重复检测ID相同的概率如下所示:
假设地址重复检测ID和节点ID的比特长度为m,其中m=2i+j,那么在无线网络中k个具有相同链路地址的概率P(m,k)如公式(1)所示:
利用斯特林公式(2),将公式(1)简化为公式(3):
根据公式(3)推导公式(4),即无线网络中k个具有相同链路地址的概率P(m,k)趋于0,即一个新节点通常执行一次上述地址配置过程即可获取具有全球唯一性的地址。
3.根据权利要求2所述的下一代无线网络的地址配置实现方法,其特征在于,无线网络初始化结束后,当一个新节点启动时,新节点采用具有无线网络唯一性的ID作为临时链路地址;
新节点通过接收邻居接入路由器或者已配置节点广播的类型为000的信标帧获取当前无线网络的全局路由前缀,然后通过下述过程实现地址配置:
步骤201:开始;
步骤202:新节点随机产生n个地址重复检测ID和n个节点ID,n为大于1的正整数,一个地址重复检测ID对应一个节点ID形成n个二元组<地址重复检测ID,节点ID>,其中随机产生的n个地址重复检测ID满足下述两个条件:
条件1:与新节点接收到的所有类型为011的信标帧负载中的地址重复检测ID都不同;
条件2:与新节点的所有邻居已配置节点的地址重复检测ID都不同;
步骤203:新节点在无线网络内广播一个类型为011的信标帧,信标帧负载为获取的全局路由前缀和满足上述两个条件的n个地址重复检测ID,信标帧的源链路地址为新节点的临时链路地址,然后将自己标记为半配置节点;.
步骤204:无线网络中已配置节点收到新节点的类型为011的信标帧后,转发该信标帧,同时判断它的全局路由前缀和地址重复检测ID是否与信标帧中的全局路由前缀和其中一个地址重复检测ID相同,如果相同,则进行步骤205;否则进行步骤206;
步骤205:已配置节点向新节点单播返回一个类型为001的信标帧,信标帧的源地址为已配置节点自己的链路地址,信标帧负载为空;
步骤206:无线网络中半配置节点收到新节点的类型为011的信标帧后,转发该信标帧,同时判断半配置节点自己的全局路由前缀和随机产生的地址重复检测ID是否与信标帧中的全局路由前缀以及一个或者多个地址重复检测ID相同,如果相同,则进行步骤207,否则进行步骤208;
步骤207:半配置节点向新节点单播返回一个类型为100的信标帧,信标帧负载为具有相同地址重复检测ID对应的二元组<地址重复检测ID,节点ID>,信标帧源地址为该节点的临时链路地址;
步骤208:在规定时间后,新节点检测所有收到的类型为001或者100的信标帧,判断自己产生的n个地址重复检测ID是否都被无线网络内的已配置节点和半配置节点占用,如果是,执行步骤210,否则进行步骤209;
步骤209:新节点任意选择一个没有被占用的二元组,执行步骤216;
步骤210:新节点判断n个二元组是否都被无线网络内的已配置节点和半配置节点占用,如果是,进行步骤212,否则进行步骤211;
步骤211:新节点选择一个二元组,该二元组的节点ID没有被与该二元组中地址重复检测ID相同的已配置节点或者半配置节点占用,执行步骤216;
步骤212:新节点判断是否存在一个只被已配置节点占用的地址重复检测ID且该地址重复检测ID对应的节点ID空间没有完全被占用,如果是,进行步骤213;否则进行步骤214;
步骤213:新节点选择该地址重复检测ID对应的二元组,产生一个节点ID,该节点ID不等于任何与该二元组中地址重复检测ID相同的已配置节点的节点ID,用新产生的节点ID更新二元组,执行步骤216;
步骤214:新节点判断是否存在一个只被半配置节点占用且新节点的临时链路地址小于所有与该二元组中的地址重复检测ID相同的半配置节点的临时链路地址,如果是,进行步骤215,否则返回步骤202;
步骤215:新节点选择该二元组,执行步骤216;
步骤216:新节点将自己标记为已配置节点,同时将二元组中的地址重复检测ID和节点ID与获取的全局路由前缀相结合获取了具有网络唯一性的IPv6地址;
步骤217:结束。
4.根据权利要求2所述的下一代无线网络的地址配置实现方法,其特征在于,根据式(1)~公式(4)设置,任意两个节点产生相同地址重复检测ID和节点ID的概率为0;
新节点随机产生一个地址重复检测ID和节点ID,并广播类型为010的信标帧,如果一个中间节点M以一个已配置节点身份向新节点发送类型为001的信标帧企图阻止新节点配置地址,那么新节点通过下述步骤获取地址:
步骤301:开始;
步骤302:新节点随机产生一个地址重复检测ID和节点ID,并广播类型为010的信标帧,信标帧负载为获取的全局路由前缀和地址重复检测ID;
步骤303:中间节点M收到类型为010的信标帧后,以一个已配置节点身份向新节点发送类型为001的信标帧,信标帧的源地址的地址重复检测ID与新节点的地址重复检测ID相同,源地址的节点ID随机产生;
步骤304:新节点收到中间节点M发送的类型为001的信标帧后,判断自己产生的地址重复检测ID和节点ID是否与中间节点M的地址重复检测ID和节点ID相同,如果相同,则进行步骤305,否则进行步骤306:
步骤305:新节点丢弃原来的节点ID,重新生成一个节点ID且该节点ID与中间节点M的节点ID不同;
步骤306:新节点将自己标记为已配置节点,同时将自己的地址重复检测ID和节点ID与获取的全局路由前缀相结合获取具有网络唯一性的IPv6地址;
步骤307:结束;
新节点随机产生一个地址重复检测ID和节点ID,并广播类型为010的信标帧,如果中间节点M以一个半配置节点身份向新节点发送类型为001的信标帧企图阻止新节点配置地址,那么新节点通过下述步骤获取地址:
步骤401:开始;
步骤402:新节点随机产生一个地址重复检测ID和节点ID,并广播类型为010的信标帧,信标帧负载为获取的全局路由前缀和地址重复检测ID;
步骤403:中间节点M收到类型为010的信标帧后,以一个半配置节点身份向新节点发送类型为001的信标帧,信标帧的负载为与新节点相同的地址重复检测ID以及随机产生的节点ID;
步骤404:新节点收到中间节点M发送的类型为001的信标帧后,判断自己产生的地址重复检测ID和节点ID是否与中间节点M产生的地址重复检测ID和节点ID相同,如果相同,则进行步骤405,否则进行步骤406:
步骤405:新节点判断自己的临时链路地址是否小于中间节点M的临时链路地址,如果是,进行步骤406,否则进行步骤402;
步骤406:新节点将自己标记为已配置节点,同时将自己的地址重复检测ID和节点ID与获取的全局路由前缀相结合获取了具有网络唯一性的IPv6地址;
步骤407:结束。
5.根据权利要求3所述的下一代无线网络的地址配置实现方法,其特征在于,新节点随机产生n个二元组<地址重复检测ID,节点ID>,并广播类型为011的信标帧,如果中间节点M以一个已配置节点身份向新节点发送类型为001的信标帧企图阻止新节点配置地址,那么新节点通过下述步骤获取地址:
步骤501:开始;
步骤502:新节点随机产生n个地址重复检测ID和n个节点ID,n为大于1的正整数,一个地址重复检测ID对应一个节点ID形成n个二元组<地址重复检测ID,节点ID>,新节点广播类型为011的信标帧,信标帧负载为获取的全局路由前缀和n个地址重复检测ID;
步骤503:中间节点M收到类型为011的信标帧后,以一个已配置节点身份向新节点发送类型为001的信标帧,信标帧的源地址的地址重复检测ID与新节点的地址重复检测ID相同,源地址的节点ID随机产生;;
步骤504:新节点收到中间节点M发送的类型为001的信标帧后,从n个二元组中选择一个二元组,该二元组的地址重复检测ID不等于中间节点M的地址重复检测ID,新节点将自己标记为已配置节点,同时将该二元组中的地址重复检测ID和节点ID与获取的全局路由前缀相结合获取了具有网络唯一性的IPv6地址;
步骤505:结束;
新节点随机产生n个二元组<地址重复检测ID,节点ID>,并广播类型为011的信标帧,如果中间节点M以一个半配置节点身份向新节点发送类型为100的信标帧企图阻止新节点配置地址,那么新节点通过下述算法获取地址:
步骤601:开始;
步骤602:新节点随机产生n个地址重复检测ID和n个节点ID,n为大于1的正整数,一个地址重复检测ID对应一个节点ID形成n个二元组<地址重复检测ID,节点ID>,广播类型为011的信标帧,信标帧负载为获取的全局路由前缀和n个地址重复检测ID;
步骤603:中间节点M收到类型为011的信标帧后以一个半配置节点身份向新节点发送类型为100的信标帧,信标帧负载为n个二元组<地址重复检测ID,节点ID>,其中中间节点M的n个地址重复检测ID与新节点在011信标帧的n个地址重复检测ID完全相同,n个节点ID随机产生;
步骤604:新节点收到中间节点M发送的类型为100的信标帧后,判断自己的n个二元组是否与类型为100的信标帧中的n个二元组完全相同,如果是,进行步骤605,否则进行步骤607;
步骤605:新节点判断自己的临时链路地址是否小于中间节点的临时链路地址,如果是,则进行步骤606,否则进行步骤602;
步骤606:新节点随意选取一个二元组进行步骤608;
步骤607:新节点选取一个二元组,该二元组不包含在中间节点M发送的100的信标帧中;
步骤608:新节点将自己标记为已配置节点,同时将选取的二元组中的地址重复检测ID和节点ID与获取的全局路由前缀相结合获取了具有网络唯一性的IPv6地址;
步骤609:结束。
说明书
技术领域
本发明涉及一种地址配置实现方法,尤其涉及的是一种下一代无线网络的地址配置实现方法。
背景技术
下一代无线网络中的节点之间通信通过中间节点的转发和路由来实现,因此,每个节点必须配有具有唯一性的地址来实现通信,因此,实现下一代无线网络需要解决的关键技术之一就是地址自动配置问题。
目前的地址配置分为有状态地址配置和无状态地址配置两种形式,有状态地址配置方案采用服务器/客户端的通信方式分配地址,即节点向服务器提出申请地址的请求,然后由服务器统一为网络内的节点分配地址。由于下一代无线网络没有任何基础设施,例如服务器,因此,有状态地址配置方案无法应用到下一代网络中。在无状态地址配置方案中,每个被分配的地址都需要在整个网络中进行重复地址检测以确保它的唯一性,导致了大量的控制包开销,消耗了大量的网络资源,因此也不适用于下一代网络使用。
因此针对下一代网络需要建立一种低开销的地址自动配置方案。
发明内容
发明目的:本发明所要解决的技术问题是针对现有技术的不足,提供一种下一代无线网络的地址配置实现方法。
技术方案:本发明公开了一种下一代无线网络的地址配置实现方法,所述无线网络包括三类节点:已配置节点,半配置节点和新节点;其中,已配置节点为具有路由转发功能且已配置地址的节点,半配置节点为具有路由转发功能且产生的地址正在进行地址重复检测过程中的节点,新节点为未配置地址的节点;所述无线网络作为末端网络通过接入路由器连接到互联网;已配置节点和半配置节点同时承担路由路径的中间节点的功能;
所述无线网络的IPv6地址由两部分组成,第一部分是全局路由前缀,长度为128-i-j比特,唯一标识一个无线网络,一个无线网络中所有节点的全局路由前缀都相同,与所连接的接入路由器的全局路由前缀相同;第二部分为随机ID,唯一标识一个节点,随机ID由地址重复检测ID和节点ID构成,其中地址重复检测ID长度为i比特,随机产生,用于地址的重复地址检测,节点ID长度为j比特,随机产生,用于确保节点地址的唯一性;i和j为正整数,随机ID作为链路地址,其长度为16比特或者64特比,即i+j=16或者i+j=64;
接入路由器的随机ID为1;节点的地址重复检测ID取值范围为[1,2i-1],当节点的地址重复检测ID取值为上限2i-1时,节点ID的取值范围为[1,2j-2],当节点的地址重复检测ID的取值范围为[1,2i-2]时,节点ID的取值范围为[1,2j-1],其值根据实际应用中节点数量来设置;接入路由器的IPv6地址为预先设置;
新节点通过信标帧来实现地址配置,其中信标帧负载的前三个比特定义信标帧的负载内容和通信方式,如表1所示:
表1:
本发明所述方法中,初始状态下,一个无线网络中每个节点均为新节点且具有一个无线网络唯一性的ID,例如出厂ID或者MAC地址;新节点在地址配置之前采用具有无线网络唯一性的ID作为临时链路地址;
所述无线网络启动后,接入路由器在一跳范围内广播类型为000的信标帧,信标帧负载为接入路由器的全局路由前缀;新节点获取地址转变为已配置节点后,在一跳范围内广播类型为000的信标帧,信标帧负载为自己的全局路由前缀;
新节点启动后,通过接收邻居接入路由器或者已配置节点广播的类型为000的信标帧获取当前无线网络的全局路由前缀,然后通过下述过程实现地址配置:
步骤101:开始;
步骤102:新节点随机产生一个地址重复检测ID和节点ID,其中随机产生的地址重复检测ID满足下述两个条件:
条件1:与新节点接收到的所有类型为010的信标帧负载中的地址重复检测ID都不同;
条件2:与新节点的所有邻居已配置节点的地址重复检测ID都不同;
步骤103:新节点在无线网络内广播一个类型为010的信标帧,信标帧负载为获取的全局路由前缀和满足上述两个条件的地址重复检测ID,信标帧的源链路地址为新节点的临时链路地址,然后将自己标记为半配置节点;.
步骤104:无线网络中已配置节点收到新节点的类型为010的信标帧后,转发该信标帧,同时判断已配置节点的全局路由前缀和地址重复检测ID是否与信标帧中的全局路由前缀和地址重复检测ID相同,如果相同,则进行步骤105,否则进行步骤106;
步骤105:已配置节点向新节点单播返回一个类型为001的信标帧,信标帧的源地址为自己的链路地址,信标帧负载为空;
步骤106:无线网络中半配置节点收到新节点的类型为010的信标帧后,转发该信标帧,同时判断半配置节点的全局路由前缀和随机产生的地址重复检测ID是否与信标帧中的全局路由前缀和地址重复检测ID相同,如果相同,则进行步骤107;否则进行步骤108;
步骤107:半配置节点向新节点单播返回一个类型为001的信标帧,信标帧负载为该半配置节点随机产生的地址重复检测ID和节点ID,信标帧源地址为该半配置节点的临时链路地址;
步骤108:在规定时间后,新节点检测所有收到的类型为001的信标帧,判断自己产生的地址重复检测ID和节点ID是否与无线网络内的已配置节点的地址重复检测ID和节点ID相同,如果是,执行步骤102,否则进行步骤109;
步骤109:新节点判断自己产生的地址重复检测ID和节点ID是否与无线网络内的半配置节点的地址重复检测ID和节点ID相同,如果是,执行步骤110,否则进行步骤111;
步骤110:新节点比较它与所有与自己具有相同的地址重复检测ID和节点ID的半配置节点的临时链路地址,判断自己的临时链路地址是否小于所述半配置节点的临时链路地址,如果是,进行步骤111,否则进行步骤102;
步骤111:新节点将自己标记为已配置节点,同时将步骤102中产生的地址重复检测ID和节点ID与获取的全局路由前缀相结合获取了具有网络唯一性的IPv6地址;
步骤112:结束;
无线网络中所有新节点执行步骤101~步骤112过程直到所有节点获取具有全球唯一性的地址为止,此时无线网络初始化结束;
步骤108中,规定时间为α·d·t,其中α为调节系数,d为网络直径,t为一个信标帧的一跳延迟;α一般取值为1-3,d由网络面积和传输半径来决定,t由带宽来决定,即一个信标帧最多为127个字节,带宽越大,t值越小;
步骤102中,新节点产生的地址重复检测ID与无线网络内的已配置节点或者半配置节点的地址重复检测ID相同的概率如下所示:
假设地址重复检测ID和节点ID的比特长度为m,其中m=2i+j,那么在无线网络中k个具有相同链路地址的概率P(m,k)如公式(1)所示:
利用斯特林公式(2),将公式(1)简化为公式(3):
根据公式(3)推导公式(4),即无线网络中k个具有相同链路地址的概率P(m,k)趋于0,即一个新节点通常执行一次上述地址配置过程即可获取具有全球唯一性的地址。
本发明所述方法中,无线网络初始化结束后,当一个新节点启动时,新节点采用具有无线网络唯一性的ID作为临时链路地址;
新节点通过接收邻居接入路由器或者已配置节点广播的类型为000的信标帧获取当前无线网络的全局路由前缀,然后通过下述过程实现地址配置:
步骤201:开始;
步骤202:新节点随机产生n个地址重复检测ID和n个节点ID,n为大于1的正整数,一个地址重复检测ID对应一个节点ID形成n个二元组<地址重复检测ID,节点ID>,其中随机产生的n个地址重复检测ID满足下述两个条件:
条件1:与新节点接收到的所有类型为011的信标帧负载中的地址重复检测ID都不同;
条件2:与新节点的所有邻居已配置节点的地址重复检测ID都不同;
步骤203:新节点在无线网络内广播一个类型为011的信标帧,信标帧负载为获取的全局路由前缀和满足上述两个条件的n个地址重复检测ID,信标帧的源链路地址为新节点的临时链路地址,然后将自己标记为半配置节点;.
步骤204:无线网络中已配置节点收到新节点的类型为011的信标帧后,转发该信标帧,同时判断它的全局路由前缀和地址重复检测ID是否与信标帧中的全局路由前缀和其中一个地址重复检测ID相同,如果相同,则进行步骤205;否则进行步骤206;
步骤205:已配置节点向新节点单播返回一个类型为001的信标帧,信标帧的源地址为已配置节点自己的链路地址,信标帧负载为空;
步骤206:无线网络中半配置节点收到新节点的类型为011的信标帧后,转发该信标帧,同时判断半配置节点自己的全局路由前缀和随机产生的地址重复检测ID是否与信标帧中的全局路由前缀以及一个或者多个地址重复检测ID相同,如果相同,则进行步骤207,否则进行步骤208;
步骤207:半配置节点向新节点单播返回一个类型为100的信标帧,信标帧负载为具有相同地址重复检测ID对应的二元组<地址重复检测ID,节点ID>,信标帧源地址为该节点的临时链路地址;
步骤208:在规定时间后,新节点检测所有收到的类型为001或者100的信标帧,判断自己产生的n个地址重复检测ID是否都被无线网络内的已配置节点和半配置节点占用,如果是,执行步骤210,否则进行步骤209;
步骤209:新节点任意选择一个没有被占用的二元组,执行步骤216;
步骤210:新节点判断n个二元组是否都被无线网络内的已配置节点和半配置节点占用,如果是,进行步骤212,否则进行步骤211;
步骤211:新节点选择一个二元组,该二元组的节点ID没有被与该二元组中地址重复检测ID相同的已配置节点或者半配置节点占用,执行步骤216;
步骤212:新节点判断是否存在一个只被已配置节点占用的地址重复检测ID且该地址重复检测ID对应的节点ID空间没有完全被占用,如果是,进行步骤213;否则进行步骤214;
步骤213:新节点选择该地址重复检测ID对应的二元组,产生一个节点ID,该节点ID不等于任何与该二元组中地址重复检测ID相同的已配置节点的节点ID,用新产生的节点ID更新二元组,执行步骤216;
步骤214:新节点判断是否存在一个只被半配置节点占用且新节点的临时链路地址小于所有与该二元组中的地址重复检测ID相同的半配置节点的临时链路地址,如果是,进行步骤215,否则返回步骤202;链路地址是数值,因此大小比较就按照数值大小比较。
步骤215:新节点选择该二元组,执行步骤216;
步骤216:新节点将自己标记为已配置节点,同时将二元组中的地址重复检测ID和节点ID与获取的全局路由前缀相结合获取了具有网络唯一性的IPv6地址;
步骤217:结束。
步骤214中,地址是硬件ID,由数字构成,判断数字的大小即可。通过上述过程,节点获取具有全球唯一性的地址。
本发明所述方法中,根据式(1)~公式(4)设置,任意两个节点产生相同地址重复检测ID和节点ID的概率为0;
新节点随机产生一个地址重复检测ID和节点ID,并广播类型为010的信标帧,如果一个中间节点M以一个已配置节点身份向新节点发送类型为001的信标帧企图阻止新节点配置地址,那么新节点通过下述步骤获取地址:
步骤301:开始;
步骤302:新节点随机产生一个地址重复检测ID和节点ID,并广播类型为010的信标帧,信标帧负载为获取的全局路由前缀和地址重复检测ID;
步骤303:中间节点M收到类型为010的信标帧后,以一个已配置节点身份向新节点发送类型为001的信标帧,信标帧的源地址的地址重复检测ID与新节点的地址重复检测ID相同,源地址的节点ID随机产生;
步骤304:新节点收到中间节点M发送的类型为001的信标帧后,判断自己产生的地址重复检测ID和节点ID是否与中间节点M的地址重复检测ID和节点ID相同,如果相同,则进行步骤305,否则进行步骤306:
步骤305:新节点丢弃原来的节点ID,重新生成一个节点ID且该节点ID与中间节点M的节点ID不同;
步骤306:新节点将自己标记为已配置节点,同时将自己的地址重复检测ID和节点ID与获取的全局路由前缀相结合获取具有网络唯一性的IPv6地址;
步骤307:结束;
本发明在中间节点以已配置节点发送类型为001的信标帧意图阻止地址配置的情况下,新节点仍能获取具有全球唯一性的IPv6地址;
新节点随机产生一个地址重复检测ID和节点ID,并广播类型为010的信标帧,如果中间节点M以一个半配置节点身份向新节点发送类型为001的信标帧企图阻止新节点配置地址,那么新节点通过下述步骤获取地址:
步骤401:开始;
步骤402:新节点随机产生一个地址重复检测ID和节点ID,并广播类型为010的信标帧,信标帧负载为获取的全局路由前缀和地址重复检测ID;
步骤403:中间节点M收到类型为010的信标帧后,以一个半配置节点身份向新节点发送类型为001的信标帧,信标帧的负载为与新节点相同的地址重复检测ID以及随机产生的节点ID;
步骤404:新节点收到中间节点M发送的类型为001的信标帧后,判断自己产生的地址重复检测ID和节点ID是否与中间节点M产生的地址重复检测ID和节点ID相同,如果相同,则进行步骤405,否则进行步骤406:
步骤405:新节点判断自己的临时链路地址是否小于中间节点M的临时链路地址,如果是,进行步骤406,否则进行步骤402;
步骤406:新节点将自己标记为已配置节点,同时将自己的地址重复检测ID和节点ID与获取的全局路由前缀相结合获取了具有网络唯一性的IPv6地址;
步骤407:结束。
上述步骤404中,从公式(1)到公式(4)可以看出,中间节点产生的节点ID与新节点产生的节点ID相同的概率几乎为0,因此即使中间节点以半配置节点发送类型为010的信标帧企图阻止地址配置,新节点仍能获取具有全球唯一性的IPv6地址。
本发明所述方法中,新节点随机产生n个二元组<地址重复检测ID,节点ID>,并广播类型为011的信标帧,如果中间节点M以一个已配置节点身份向新节点发送类型为001的信标帧企图阻止新节点配置地址,那么新节点通过下述步骤获取地址:
步骤501:开始;
步骤502:新节点随机产生n个地址重复检测ID和n个节点ID,n为大于1的正整数,一个地址重复检测ID对应一个节点ID形成n个二元组<地址重复检测ID,节点ID>,新节点广播类型为011的信标帧,信标帧负载为获取的全局路由前缀和n个地址重复检测ID;
步骤503:中间节点M收到类型为011的信标帧后,以一个已配置节点身份向新节点发送类型为001的信标帧,信标帧的源地址的地址重复检测ID与新节点的地址重复检测ID相同,源地址的节点ID随机产生;;
步骤504:新节点收到中间节点M发送的类型为001的信标帧后,从n个二元组中选择一个二元组,该二元组的地址重复检测ID不等于中间节点M的地址重复检测ID,新节点将自己标记为已配置节点,同时将该二元组中的地址重复检测ID和节点ID与获取的全局路由前缀相结合获取了具有网络唯一性的IPv6地址;
步骤505:结束;
从上述过程可以看出,即使中间节点假冒已配置节点发送类型为001的信标帧企图阻止地址配置,新节点仍能获取具有全球唯一性的IPv6地址;
新节点随机产生n个二元组<地址重复检测ID,节点ID>,并广播类型为011的信标帧,如果中间节点M以一个半配置节点身份向新节点发送类型为100的信标帧企图阻止新节点配置地址,那么新节点通过下述算法获取地址:
步骤601:开始;
步骤602:新节点随机产生n个地址重复检测ID和n个节点ID,n为大于1的正整数,一个地址重复检测ID对应一个节点ID形成n个二元组<地址重复检测ID,节点ID>,广播类型为011的信标帧,信标帧负载为获取的全局路由前缀和n个地址重复检测ID;
步骤603:中间节点M收到类型为011的信标帧后以一个半配置节点身份向新节点发送类型为100的信标帧,信标帧负载为n个二元组<地址重复检测ID,节点ID>,其中中间节点M的n个地址重复检测ID与新节点在011信标帧的n个地址重复检测ID完全相同,n个节点ID随机产生;
步骤604:新节点收到中间节点M发送的类型为100的信标帧后,判断自己的n个二元组是否与类型为100的信标帧中的n个二元组完全相同,如果是,进行步骤605,否则进行步骤607;
步骤605:新节点判断自己的临时链路地址是否小于中间节点的临时链路地址,如果是,则进行步骤606,否则进行步骤602;
步骤606:新节点随意选取一个二元组进行步骤608;
步骤607:新节点选取一个二元组,该二元组不包含在中间节点M发送的100的信标帧中;
步骤608:新节点将自己标记为已配置节点,同时将选取的二元组中的地址重复检测ID和节点ID与获取的全局路由前缀相结合获取了具有网络唯一性的IPv6地址;
步骤609:结束。
上述步骤604中,从公式(1)到公式(4)可以看出,中间节点产生的n个二元组与新节点产生的n个二元组完全相同的概率几乎为0,因此即使中间节点假冒半配置节点发送类型为100的信标帧企图阻止地址配置,新节点仍能获取具有全球唯一性的IPv6地址。
有益效果:本发明提供了一种下一代无线网络的地址配置实现方法,由于无线网络和传统网络结构(例如互联网)不同,例如:无线网络节点同时具有主机和路由器两个身份,因此目前传统网络中的地址配置方案无法在无线网络中实施,迫切需要一种适合无线网络使用的地址配置方案。在本发明中,每个无线网络节点都可以自己配置地址而且确保地址配置成功率,即使中间节点企图阻止地址配置,无线网络节点仍能获取具有网络唯一性的地址,这是现有技术无法实现的。所述下一代无线网络中的每个节点通过本发明所提供的地址自动配置的实现方法,可拥有具有唯一性的地址,彼此之间实现通信。本发明可应用于交通路况检控及农业工程化等诸多领域,具有广泛的应用前景。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述和/或其他方面的优点将会变得更加清楚。
图1为本发明所述的下一代无线网络拓扑结构示意图。
图2为本发明所述节点地址结构示意图。
图3为本发明所述节点的地址初始化流程示意图。
图4为本发明所述节点的地址配置流程示意图。
图5为本发明所述的节点在中间节点假冒已配置节点情况下的地址初始化流程示意图。
图6为本发明所述的节点在中间节点假冒半配置节点情况下的地址初始化流程示意图。
图7为本发明所述节点在中间节点假冒已配置节点情况下的地址配置流程示意图。
图8为本发明所述节点在中间节点假冒半配置节点情况下的地址配置流程示意图。
具体实施方式:
本发明提供了一种下一代无线网络的地址配置实现方法,在所述方法中,无线网络中的每个节点可获取具有唯一性的地址,节点之间通过地址实现彼此的通信。
图1为本发明所述的下一代无线网络拓扑结构示意图。所述无线网络1包括三类节点:已配置节点2,半配置节点3和新节点4;其中,已配置节点2为具有路由转发功能且已配置地址的节点,半配置节点3为具有路由转发功能且产生的地址正在进行地址重复检测过程中的节点,新节点4为未配置地址的节点;所述无线网络1作为末端网络通过接入路由器5连接到互联网6;已配置节点2和半配置节点3同时承担路由路径的中间节点的功能。
图2为本发明所述节点地址结构示意图。所述无线网络的IPv6地址由两部分组成,第一部分是全局路由前缀,长度为128-i-j比特,唯一标识一个无线网络,一个无线网络中所有节点的全局路由前缀都相同,与所连接的接入路由器的全局路由前缀相同;第二部分为随机ID,唯一标识一个节点,随机ID由地址重复检测ID和节点ID构成,其中地址重复检测ID长度为i比特,随机产生,用于地址的重复地址检测,节点ID长度为j比特,随机产生,用于确保节点地址的唯一性;i和j为正整数,随机ID作为链路地址,其长度为16比特或者64特比,即i+j=16或者i+j=64;
接入路由器的随机ID为1;节点的地址重复检测ID取值范围为[1,2i-1],当节点的地址重复检测ID取值为上限2i-1时,节点ID的取值范围为[1,2j-2],当节点的地址重复检测ID的取值范围为[1,2i-2]时,节点ID的取值范围为[1,2j-1];接入路由器的IPv6地址为预先设置;
新节点通过信标帧来实现地址配置,其中信标帧负载的前三个比特定义信标帧的负载内容和通信方式,如表1所示:
表1:
图3为本发明所述节点的地址初始化流程示意图。初始状态下,一个无线网络中每个节点均为新节点且具有一个无线网络唯一性的ID,例如出厂ID或者MAC地址;新节点在地址配置之前采用具有无线网络唯一性的ID作为临时链路地址;
所述无线网络启动后,接入路由器在一跳范围内广播类型为000的信标帧,信标帧负载为接入路由器的全局路由前缀;新节点获取地址转变为已配置节点后,在一跳范围内广播类型为000的信标帧,信标帧负载为自己的全局路由前缀;
新节点启动后,通过接收邻居接入路由器或者已配置节点广播的类型为000的信标帧获取当前无线网络的全局路由前缀,然后通过下述过程实现地址配置:
步骤101:开始;
步骤102:新节点随机产生一个地址重复检测ID和节点ID,其中随机产生的地址重复检测ID满足下述两个条件:
条件1:与新节点接收到的所有类型为010的信标帧负载中的地址重复检测ID都不同;
条件2:与新节点的所有邻居已配置节点的地址重复检测ID都不同;
步骤103:新节点在无线网络内广播一个类型为010的信标帧,信标帧负载为获取的全局路由前缀和满足上述两个条件的地址重复检测ID,信标帧的源链路地址为新节点的临时链路地址,然后将自己标记为半配置节点;.
步骤104:无线网络中已配置节点收到新节点的类型为010的信标帧后,转发该信标帧,同时判断已配置节点的全局路由前缀和地址重复检测ID是否与信标帧中的全局路由前缀和地址重复检测ID相同,如果相同,则进行步骤105,否则进行步骤106;
步骤105:已配置节点向新节点单播返回一个类型为001的信标帧,信标帧的源地址为自己的链路地址,信标帧负载为空;
步骤106:无线网络中半配置节点收到新节点的类型为010的信标帧后,转发该信标帧,同时判断半配置节点的全局路由前缀和随机产生的地址重复检测ID是否与信标帧中的全局路由前缀和地址重复检测ID相同,如果相同,则进行步骤107;否则进行步骤108;
步骤107:半配置节点向新节点单播返回一个类型为001的信标帧,信标帧负载为该半配置节点随机产生的地址重复检测ID和节点ID,信标帧源地址为该半配置节点的临时链路地址;
步骤108:在规定时间后,新节点检测所有收到的类型为001的信标帧,判断自己产生的地址重复检测ID和节点ID是否与无线网络内的已配置节点的地址重复检测ID和节点ID相同,如果是,执行步骤102,否则进行步骤109;
步骤109:新节点判断自己产生的地址重复检测ID和节点ID是否与无线网络内的半配置节点的地址重复检测ID和节点ID相同,如果是,执行步骤110,否则进行步骤111;
步骤110:新节点比较它与所有与自己具有相同的地址重复检测ID和节点ID的半配置节点的临时链路地址,判断自己的临时链路地址是否小于所述半配置节点的临时链路地址,如果是,进行步骤111,否则进行步骤102;
步骤111:新节点将自己标记为已配置节点,同时将步骤102中产生的地址重复检测ID和节点ID与获取的全局路由前缀相结合获取了具有网络唯一性的IPv6地址;
步骤112:结束;
无线网络中所有新节点执行步骤101~步骤112过程直到所有节点获取具有全球唯一性的地址为止,此时无线网络初始化结束;
步骤108中,规定时间为α·d·t,其中α为调节系数,d为网络直径,t为一个信标帧的一跳延迟;α一般取值为1-3,d由网络面积和传输半径来决定,t由带宽来决定,即一个信标帧最多为127个字节,带宽越大,t值越小;
步骤102中,新节点产生的地址重复检测ID与无线网络内的已配置节点或者半配置节点的地址重复检测ID相同的概率如下所示:
假设地址重复检测ID和节点ID的比特长度为m,其中m=2i+j,那么在无线网络中k个具有相同链路地址的概率P(m,k)如公式(1)所示:
利用斯特林公式(2),将公式(1)简化为公式(3):
根据公式(3)推导公式(4),即无线网络中k个具有相同链路地址的概率P(m,k)趋于0,即一个新节点通常执行一次上述地址配置过程即可获取具有全球唯一性的地址。
图4为本发明所述节点的地址配置流程示意图。无线网络初始化结束后,当一个新节点启动时,新节点采用具有无线网络唯一性的ID作为临时链路地址;
新节点通过接收邻居接入路由器或者已配置节点广播的类型为000的信标帧获取当前无线网络的全局路由前缀,然后通过下述过程实现地址配置:
步骤201:开始;
步骤202:新节点随机产生n个地址重复检测ID和n个节点ID,n为大于1的正整数,一个地址重复检测ID对应一个节点ID形成n个二元组<地址重复检测ID,节点ID>,其中随机产生的n个地址重复检测ID满足下述两个条件:
条件1:与新节点接收到的所有类型为011的信标帧负载中的地址重复检测ID都不同;
条件2:与新节点的所有邻居已配置节点的地址重复检测ID都不同;
步骤203:新节点在无线网络内广播一个类型为011的信标帧,信标帧负载为获取的全局路由前缀和满足上述两个条件的n个地址重复检测ID,信标帧的源链路地址为新节点的临时链路地址,然后将自己标记为半配置节点;.
步骤204:无线网络中已配置节点收到新节点的类型为011的信标帧后,转发该信标帧,同时判断它的全局路由前缀和地址重复检测ID是否与信标帧中的全局路由前缀和其中一个地址重复检测ID相同,如果相同,则进行步骤205;否则进行步骤206;
步骤205:已配置节点向新节点单播返回一个类型为001的信标帧,信标帧的源地址为已配置节点自己的链路地址,信标帧负载为空;
步骤206:无线网络中半配置节点收到新节点的类型为011的信标帧后,转发该信标帧,同时判断半配置节点自己的全局路由前缀和随机产生的地址重复检测ID是否与信标帧中的全局路由前缀以及一个或者多个地址重复检测ID相同,如果相同,则进行步骤207,否则进行步骤208;
步骤207:半配置节点向新节点单播返回一个类型为100的信标帧,信标帧负载为具有相同地址重复检测ID对应的二元组<地址重复检测ID,节点ID>,信标帧源地址为该节点的临时链路地址;
步骤208:在规定时间后,新节点检测所有收到的类型为001或者100的信标帧,判断自己产生的n个地址重复检测ID是否都被无线网络内的已配置节点和半配置节点占用,如果是,执行步骤210,否则进行步骤209;
步骤209:新节点任意选择一个没有被占用的二元组,执行步骤216;
步骤210:新节点判断n个二元组是否都被无线网络内的已配置节点和半配置节点占用,如果是,进行步骤212,否则进行步骤211;
步骤211:新节点选择一个二元组,该二元组的节点ID没有被与该二元组中地址重复检测ID相同的已配置节点或者半配置节点占用,执行步骤216;
步骤212:新节点判断是否存在一个只被已配置节点占用的地址重复检测ID且该地址重复检测ID对应的节点ID空间没有完全被占用,如果是,进行步骤213;否则进行步骤214;
步骤213:新节点选择该地址重复检测ID对应的二元组,产生一个节点ID,该节点ID不等于任何与该二元组中地址重复检测ID相同的已配置节点的节点ID,用新产生的节点ID更新二元组,执行步骤216;
步骤214:新节点判断是否存在一个只被半配置节点占用且新节点的临时链路地址小于所有与该二元组中的地址重复检测ID相同的半配置节点的临时链路地址,如果是,进行步骤215,否则返回步骤202;
步骤215:新节点选择该二元组,执行步骤216;
步骤216:新节点将自己标记为已配置节点,同时将二元组中的地址重复检测ID和节点ID与获取的全局路由前缀相结合获取了具有网络唯一性的IPv6地址;
步骤217:结束。
步骤214中,地址是硬件ID,由数字构成,判断数字的大小即可。通过上述过程,节点获取具有全球唯一性的地址。
图5为本发明所述的节点在中间节点假冒已配置
下一代无线网络的地址配置实现方法专利购买费用说明
Q:办理专利转让的流程及所需资料
A:专利权人变更需要办理著录项目变更手续,有代理机构的,变更手续应当由代理机构办理。
1:专利变更应当使用专利局统一制作的“著录项目变更申报书”提出。
2:按规定缴纳著录项目变更手续费。
3:同时提交相关证明文件原件。
4:专利权转移的,变更后的专利权人委托新专利代理机构的,应当提交变更后的全体专利申请人签字或者盖章的委托书。
Q:专利著录项目变更费用如何缴交
A:(1)直接到国家知识产权局受理大厅收费窗口缴纳,(2)通过代办处缴纳,(3)通过邮局或者银行汇款,更多缴纳方式
Q:专利转让变更,多久能出结果
A:著录项目变更请求书递交后,一般1-2个月左右就会收到通知,国家知识产权局会下达《转让手续合格通知书》。
动态评分
0.0