首页> 中国专利> 无线Mesh网络中通知代理更新的方法、节点和系统

无线Mesh网络中通知代理更新的方法、节点和系统

摘要

本发明实施例公开了无线Mesh网络中通知代理更新的方法、节点和通知代理更新的无线Mesh网络。通过构建代理更新增加消息,所述代理更新增加消息包括终端的地址、终端切换后的当前代理节点地址和目的节点地址;以所述终端切换前的原代理节点地址为目的节点地址,发送所述代理更新增加消息到所述原代理节点,所述代理更新增加消息用于将所述原代理节点的代理信息表中所述终端的代理信息更新为所述当前代理节点地址。保证了原代理节点接收的发送给所述终端的报文,能够被所述终端接收,实现了降低了终端切换时报文丢包率。

著录项

  • 公开/公告号CN101534238A

    专利类型发明专利

  • 公开/公告日2009-09-16

    原文格式PDF

  • 申请/专利权人 华为技术有限公司;

    申请/专利号CN200810065571.8

  • 发明设计人 冯丹凤;方旭明;孙淑杰;田永刚;

    申请日2008-03-14

  • 分类号H04L12/56;H04L29/06;H04L12/28;

  • 代理机构

  • 代理人

  • 地址 518129 广东省深圳市龙岗区坂田华为总部办公楼

  • 入库时间 2023-12-17 22:40:15

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-03-03

    未缴年费专利权终止 IPC(主分类):H04L12/56 专利号:ZL2008100655718 申请日:20080314 授权公告日:20110608

    专利权的终止

  • 2011-06-08

    授权

    授权

  • 2009-11-11

    实质审查的生效

    实质审查的生效

  • 2009-09-16

    公开

    公开

说明书

技术领域

本发明涉及通信领域,尤其是无线Mesh网络中通知代理更新的方法、无线Mesh节点和无线Mesh网络系统。

背景技术

现有的无线Mesh网络(Wireless Mesh Network,WMN)的代理更新机制,使得无线Mesh网络中节点在发送报文给终端时,可以发送给该终端的代理节点,即终端关联的Mesh接入点(Mesh Access Point,MAP),然后由该代理节点转发给目的终端。Mesh节点在发送报文前,先查找自身的代理信息表,获取终端关联的Mesh接入点地址,然后根据路由表将报文发送给终端关联的Mesh接入点。这样,Mesh网络中节点保存的路由表只需要以Mesh节点为目的地址,而不需要以真正的目的终端为目的地址,大大缩短了路由表的大小。如果终端STA在不同的MAP间切换,为了保证终端仍然能够及时正确地接收到报文,各Mesh节点处的代理信息的更新就显得尤为重要。

现有的技术方案中,当终端STA在不同的Mesh接入点之间切换时,其过程如下:

首先,STA1通过MAP1接入网络,STA2通过MAP2接入网络,STA1与STA2通过Mesh网络进行通信;

当STA1从MAP1切换到MAP3时,STA1建立与MAP3的关联,此时,MAP1为终端STA1的原代理节点,MAP3为STA1的当前代理节点;

之后,MAP3发送代理更新增加消息给Mesh网络中的代理信息服务器,例如以MPP(Mesh Point Portal,Mesh网关节点)为代理信息服务器,代理更新增加消息中携带PU IE(Proxy Update Information Element,代理更新信息元素)、该终端STA1的MAC地址和其当前代理节点MAP3的MAC地址;

通过代理更新增加消息,通知MPP及MAP3到MPP的路径上的节点创建或更新关于该STA1的代理信息;

MPP节点收到该代理更新增加消息,会回复一个代理更新确认消息给MAP3,代理更新确认消息中携带PUC IE(Proxy Update ConfirmationInformation Element,代理更新确认信息元素)。

在对现有的技术方案的研究和实践过程中,发明人发现现有的技术方案存在以下问题:终端STA1切换后,Mesh网络中只有终端的当前代理节点MAP3到代理信息服务器MPP的路径上的各节点对该终端的代理信息进行了及时更新,而其他未及时更新该终端代理信息的Mesh节点,依然将发送给该终端的报文发送至该终端的原代理节点MAP1,从而造成报文的丢失。

发明内容

本发明实施例一方面提供了一种无线Mesh网络中通知代理更新的方法,另一方面提供了一种无线Mesh网络中通知代理更新的无线Mesh网络节点,还提供了两种通知代理更新的无线Mesh网络,保证了终端切换时相关节点能够及时更新代理信息,从而降低了终端切换时报文丢包率。

本发明实施例提供的一种无线Mesh网络中通知代理更新的方法,包括:

构建代理更新增加消息,所述代理更新增加消息包括终端的地址和终端切换后的当前代理节点地址,所述代理更新增加消息还包括目的节点地址;

以终端切换前的原代理节点地址为目的节点地址,发送所述代理更新增加消息到所述原代理节点,所述代理更新增加消息用于将所述原代理节点的代理信息表中所述终端的代理信息更新为所述当前代理节点地址。

本发明实施例提供的一种无线Mesh网络中通知代理更新的无线Mesh网络节点,包括:

发送单元,用于根据目的节点地址,向所述目的节点发送代理更新增加消息,所述代理更新增加消息用于将所述目的节点的代理信息表中终端的代理信息更新为所述当前代理节点地址;

构建单元,用于构建代理更新增加消息,并通知所述发送单元将所述构建的代理更新增加消息向目的节点发送;所述构建的代理更新增加消息,以所述终端的原代理节点地址为目的节点地址,包括所述终端的地址和所述终端的当前代理节点地址。

本发明实施例提供的一种通知代理更新的无线Mesh网络,包括:

第一终端切换前的当前代理节点、第一终端切换后的原代理节点;

所述当前代理节点包括:第一接收单元,用于接收第一终端或所述原代理节点发送的请求消息,所述请求消息中携带了所述原代理节点的地址;第一发送单元,用于根据目的节点地址,向所述目的节点发送代理更新增加消息,所述代理更新增加消息用于将所述目的节点的代理信息表中第一终端的代理信息更新为第一终端切换后的当前代理节点的地址;第一解析单元,用于从所述接第一接收收单元接收的请求消息中,获取第一终端的原代理节点的地址;第一构建单元,用于根据所述第一解析单元获取的原代理节点的地址,构建代理更新增加消息,并通知所述第一发送单元将所述构建的代理更新增加消息向目的节点发送;所述构建的代理更新增加消息,以所述原代理节点的地址作为目的节点地址,包括所述当前代理节点的地址和第一终端的地址;

所述原代理节点包括:第二接收单元,用于接收所述当前代理节点发送的代理更新增加消息;第二代理表单元,用于根据所述第二接收单元接收的代理更新增加消息中携带的第一终端的当前代理节点地址,更新本地代理信息表中第一终端的代理信息为所述当前代理节点的地址。

本发明实施例提供的另一种通知代理更新的无线Mesh网络,包括:

第一终端的当前代理节点、中间节点、第一终端的原代理节点;

所述当前代理节点包括:第一接收单元,用于接收第一终端发送的关联请求;第一发送单元,用于根据目的节点地址,向所述目的节点发送代理更新增加消息,所述代理更新增加消息用于将所述目的节点的代理信息表中第一终端的代理信息更新为第一终端切换后的当前代理节点的地址;第一构建单元,用于在与第一终端建立关联后,以代理信息服务器地址作为目的节点地址构建代理更新增加消息,并通知所述发送单元将构建的代理更新增加消息向目的节点发送,其中所述构建的代理更新增加消息,以代理信息服务器的地址为目的节点地址,包括,所述当前代理的节点地址和第一终端的地址;

所述中间节点包括:第三接收单元,用于接收所述当前代理节点发送的代理更新增加消息,所述代理更新增加消息中携带了第一终端的当前代理节点地址和第一终端的地址;所述第三发送单元,用于根据目的节点地址,向所述目的节点发送代理更新增加消息,所述代理更新增加消息用于将所述目的节点的代理信息表中第一终端的代理信息更新为第一终端切换后的当前代理节点的地址;第三查找单元,用于根据所述第三接收单元接收的代理更新增加消息中携带的第一终端的地址,查找本地代理信息表,获取第一终端切换前的原代理节点的地址;第三构建单元,用于根据所述查找单元获取的所述原代理节点的地址,构建代理更新增加消息,并通知所述第三发送单元将所述构建的代理更新增加消息向目的节点发送,其中,所述构建的代理更新增加消息,以所述原代理节点的地址作为目的节点地址包括第一终端的地址和所述当前代理节点的地址;

所述原代理节点包括:第二接收单元,用于接收所述中间节点发送的代理更新增加消息;第二代理表单元,用于根据所述第二接收单元接收的代理更新增加消息中携带的第一终端的当前代理节点的地址,更新本地代理信息表中第一终端的代理信息为所述当前代理节点的地址。

由以上技术方案可知,通过构建代理更新增加消息,所述代理更新增加消息包括终端的地址、终端的当前代理节点地址和目的节点地址,以所述终端切换前的原代理节点地址为目的节点地址,发送构建的代理更新增加消息到所述原代理节点,所述代理更新增加消息用于将所述原代理节点的代理信息表中所述终端的代理信息更新为所述当前代理节点地址,从而使原代理节点能够及时更新自身的代理信息表,并根据更新后的代理信息表转发以所述终端为目的终端的报文。因此,保证了原代理节点接收的发送给所述终端的报文,能够被所述终端接收,所以,本发明实施例提供的无线Mesh网络中通知代理更新的方法、无线Mesh网络节点和无线Mesh网络系统,降低了终端切换时报文丢包率。

附图说明

图1为本发明一种通知代理更新的无线Mesh网络实施例的示意图;

图2为本发明一种无线Mesh网络中通知代理更新的方法实施例的流程图;

图3为本发明实施例中一种代理更新增加消息中的PU IE格式示意图;

图4为本发明另一种通知代理更新的无线Mesh网络实施例的示意图;

图5为本发明另一种无线Mesh网络中通知代理更新的方法实施例的流程图;

图6为本发明另一种无线Mesh网络中通知代理更新的方法使用分发标识实施例的流程图;

图7为本发明实施中一种管理帧的格式示意图;

图8为本发明一种无线Mesh网络中通知代理更新的装置实施例的结构图;

图9为本发明另一种无线Mesh网络中通知代理更新的装置实施例的结构图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明作进一步地详细说明。

实施例一

如图1所示,本发明实施例一提供了一种通知代理更新的无线Mesh网络,包括:终端STA1切换前的原代理节点MAP1,终端STA1切换后的当前代理节点MAP2。其中,MAP1与MAP2通过Mesh网络进行通信,两者之间的路径可以有一跳或者多跳。

STA1的当前代理节点MAP2包括:接收单元、发送单元、解析单元和构建单元。其中,所述接收单元,用于接收终端STA1或终端的原代理节点MAP1发送的请求消息,所述请求消息中携带了终端STA1切换前的原代理节点地址,即MAP1的地址;所述解析单元,用于从所述接收单元接收的请求消息中,获取终端STA1的原代理节点地址,即MAP1的地址;所述构建单元,用于根据所述解析单元获取的原代理节点MAP1的地址,构建代理更新增加消息,并通知所述发送单元将构建的代理更新增加消息向目的节点发送,其中,构建的代理更新增加消息,以原代理节点MAP1的地址为目的节点地址,以节点MAP2自身的地址为终端STA1的当前代理节点地址,包括终端STA1的地址;所述发送单元,用于根据目的节点地址,即MAP1的地址,向目的节点MAP1发送代理更新增加消息,该代理更新增加消息用于将目的节点MAP1的代理信息表中终端STA1的代理信息更新为终端STA1切换后的当前代理节点地址,即MAP2的地址。

STA1的原代理节点MAP1包括:第二接收单元和第二代理表单元;所述第二接收单元,用于接收终端STA1的当前代理节点MAP2发送的代理更新增加消息,所述代理更新增加消息中携带了终端STA1的当前代理节点MAP2的地址和终端STA1的地址;所述第二代理表单元,用于根据所述第二接收单元接收的代理更新增加消息中携带的终端STA1的当前代理节点地址,即MAP2的地址,在MAP1自身的本地代理信息表中,将终端STA1的代理信息更新为当前代理节点MAP2的地址。

在其他实施例中,MAP1还可以包括:第二缓存单元,用于缓存节点或终端发送的以终端STA1为目的终端的报文;第二发送单元,用于根据更新后的STA1的代理信息,向终端STA1转发节点或终端发送的以终端STA1为目的终端的报文。MAP2的接收单元接收到MAP1转发的以终端STA1为目的终端的报文后,通过MAP2的发送单元将该报文发送给终端STA1。例如,在STA1切换前后,STA2一直向STA1发送报文,在切换前,STA2将报文通过MAP4发送到MAP1,进而由MAP1转发给STA1;在STA1切换到MAP2后,STA2还通过MAP4向STA1发送报文,MAP4如果没有及时更新本地代理信息表,那么依然将发给STA1的报文发送给MAP1,此时MAP1已经不再代理STA1,MAP1将发送给STA1的报文在自身的第二缓存单元中缓存,然后,当MAP1接收到STA1的当前代理节点MAP2发送的代理更新增加消息,根据其中的MAP2的地址,更新本地代理信息表中终端STA1的代理信息,并向MAP2转发STA2发送给STA1的报文,进而由MAP2将这些报文发送给STA1。从而,减少了丢包率。

其中,在本实施例中,或其他实施例中,节点或终端的地址可以是节点或终端的MAC地址。在通过Mesh网络发送代理更新增加消息的过程中,收到该消息的节点都可以根据该消息更新自身的代理信息表,将终端STA1的代理信息更新为当前代理节点MAP2的地址。

在其他实施例中,通知代理更新的无线Mesh网络还可以包括代理信息服务器,用于保存Mesh网络的代理信息;该代理信息服务器,可以是MPP(Mesh Point Portal,Mesh网关节点),例如图1中的MP5,也可以是配置的网络中的其他节点,在此不做限定。MAP2在向MAP1发送代理更新增加消息的同时,还可以构建另一个代理更新增加消息,并以代理信息服务器的地址为目的节点地址,向代理信息服务器发送该代理更新增加消息,以便代理信息服务器在收到该消息后,根据该代理更新增加消息,更新其自身的代理信息表。

实施例二

如图2所示,本发明实施例二提供了一种无线Mesh网络中通知代理更新的方法。为了描述清楚,以MAP1为STA1切换前的原代理节点,MAP2为STA1切换后的当前代理节点,STA1从MAP1切换到MAP2。所述无线Mesh网络中通知代理更新的方法包括:

步骤101:获取终端切换前的原代理节点地址。

本步骤中,获取终端切换前的原代理节点地址可以是:MAP2接收终端STA1发送的重关联请求,所述重关联请求中携带了终端STA1的原代理节点地址,即MAP1的地址,从所述重关联请求中获取终端STA1的原代理节点MAP1的地址;或在快速切换中,终端STA1发起快速认证(authenticationrequest)消息,此时STA1由MAP1代理,该认证消息通过代理节点MAP1转发给目的节点MAP2,MAP1转发的时候需要在该消息中携带上自身的MAC地址,从而MAP2接收后就可以获知终端STA1的原代理节点MAP1的地址;或者,MAP2接收其他携带有MAP1地址的消息,从而获得MAP1的地址。

步骤102:构建代理更新增加消息,所述代理更新增加消息包括终端的地址、终端切换后的当前代理节点地址和目的节点地址。

本步骤中,MAP2构建的代理更新增加消息中,以获取的终端切换前的原代理节点地址,即MAP1的地址作为目的节点地址,以MAP2自身的地址作为终端切换后的当前代理节点地址,并将终端的地址也携带在构建的代理更新增加消息中。其中,终端的地址获取方式有多种,这里不具体限定,例如:从终端STA1发送的重关联请求中获取STA1的地址;或者从终端STA1发送的probe request(探测请求)中获取STA1的地址;或者,通过其他方式与终端STA1进行交互获得STA1的地址。

步骤103:以所述原代理节点地址为目的节点地址,发送所述代理更新增加消息到所述原代理节点,所述代理更新增加消息用于将所述原代理节点的代理信息表中所述终端的代理信息更新为所述当前代理节点地址。

本步骤中,MAP2将构建的代理更新增加消息,发送至MAP1,通知MAP1在其自身的代理信息表中将终端STA1的代理信息更新为MAP2的地址。另外,MAP2还可以构建另一个代理更新增加消息,以代理信息服务器地址为目的节点地址,将终端STA1的地址和终端STA1切换后的当前代理节点MAP2的地址携带在该代理更新增加消息中,发送该代理更新增加消息到代理信息服务器,通知代理信息服务器将其自身的代理信息表中终端STA1的代理信息更新为其当前代理节点MAP2的地址;可以理解的是代理信息服务器的地址可以通过配置或者其他方式为MAP2所知,假设在本实施例中代理信息服务器为Mesh网关节点MP5。其中,构建代理更新增加消息时,该代理更新增加消息可以采用IEEE 802.11s标准草案所定义的代理更新增加消息格式,携带Proxy Update IE,并且在Proxy Update IE中增加一个Destination Address域,填写该代理更新增加消息的目的节点地址,本实施例中构建的代理更新增加消息携带的Proxy Update IE格式如图3所示,各个域的说明如表1。

表1 PU IE的各域说明

 

参数描述说明IDProxy Update element ID,区别于其他IELength该IE的长度,从Flags域开始到最后一个域的长度                                    FlagsBit0为0,表示add proxy information;为1,表  示proxy delete proxy information;Bit1~7,保留Sequence NumberPU IE的序列号,表明新旧,每个节点各自维护Proxy Address终端的代理节点的MAC地址,即PU消息的源节点MAC地址                          Destination Address该代理更新消息的目的节点的MAC地址

 

Number of ProxiedAddress(N)       终端的个数Proxied MAC Address #I第I终端的MAC地址

当MAP2分别以MAP1和MP5的地址为目的节点地址构建了代理更新增加消息后,则通过Mesh网络向MAP1和MP5分别发送代理更新增加消息。在向MAP1发送的代理更新增加消息中,以MAP1为目的节点地址携带在“Destination Address”域中,在“Proxy Address”域中携带STA1的当前代理节点MAP2的地址,在“Proxied MAC Address #I”域中携带终端STA1的地址。在一个代理更新增加消息中,可以设置多个“Proxied MAC Address#I”域,因此如果有多个终端从MAP1处切换到MAP2处,MAP2处可以针对每一个STA发送一个代理更新增加消息给MAP1,也可以是将一段时间内所有从MAP1处切换到MAP2处的终端的地址一起携带在代理更新增加消息中发送给MAP1。

步骤104:接收所述原代理节点转发的以所述终端为目的终端的报文,并向所述终端转发。

本步骤中,当STA1的原代理节点MAP1通过Mesh网络接收了MAP2发送的代理更新增加消息后,MAP1从所述代理更新增加消息中获得STA1的当前代理节点MAP2的地址,更新其自身的本地代理信息表,并将自身缓存的以STA1为目的终端的报文通过Mesh网络发送给MAP2。例如,在终端STA1从MAP1切换到MAP2的前后,终端STA2始终通过MAP4向STA1发送以STA1为目的终端的报文;在STA1切换到MAP2之后,MAP4如果没有及时更新自身的本地代理信息表,那么依然将发给STA1的报文发送给MAP1,此时MAP1已经不再代理STA1,MAP1将发送给STA1的报文在自身的缓存单元中缓存;当MAP1接收到STA1的当前代理节点MAP2发送的代理更新增加消息,根据其中的MAP2的地址,向MAP2转发STA2发送给STA1的报文;当MAP2接收到MAP1转发的以终端STA1为目的终端的报文后,进一步向STA1发送所述报文,从而保证了在STA1切换前后,向STA1发送的报文都能正确的被转发至STA1,减少了丢包率。

在其他实施例中,在步骤101,MAP2获取了终端STA1的原代理节点MAP1的地址后,MAP2进一步在其自身的本地代理信息表中将终端STA1的代理信息更新为,STA1的当前代理节点MAP2的地址。这里,在本地代理信息表中对终端STA1的代理信息进行更新,可以有两种情况:MAP2的本地代理信息表中没有终端STA1的代理信息,此时,MAP2在本地代理信息表中对终端STA1的代理信息的更新为,在本地代理信息表中增加终端STA1的当前代理节点的地址为MAP2的地址;或者,MAP2的本地代理信息表中终端STA1的原代理节点地址不是STA1的当前代理节点MAP2地址,例如MAP2的本地代理信息表中终端STA1的原代理节点地址是MAP1的地址,此时,MAP2在本地代理信息表中对终端STA1的代理信息的更新为,MAP2在自身的本地代理信息表中,将STA1的代理信息由MAP1的地址修改为MAP2的地址。

在本实施例中,MAP2到MAP1路径上的节点、节点MAP1,收到上述MAP2构建的代理更新增加消息后,更新各自的本地代理信息表;MAP2到MP5路径上的节点、节点MP5,收到上述MAP2构建的代理更新增加消息后,更新各自的本地代理信息表。

本实施例,通过在代理更新增减消息中携带目的节点的地址,使终端的当前代理节点能够及时向终端的原代理节点发送代理更新增加消息,从而使原代理节点能够及时得知终端的当前代理节点的地址,并通过该当前代理节点的地址,向所述终端转发原代理节点缓存的以所述终端为目的终端的报文。

在其他实施例中,如图1所示,本发明实施例提供的一种无线Mesh网络中,当有如下场景时:终端STA1首先从其他MAP切换或接入到MAP1,然后,终端STA1再从MAP1快速切换到当前代理节点MAP2。STA1与MAP1建立关联后,MAP1发送代理更新增加消息给代理信息服务器,当STA1快速切换到MAP2,与MAP2建立关联后,MAP2发送代理更新增加消息给代理信息服务器。由于网络空口环境分布不均,会导致MAP2发送的代理更新增加消息先于MAP1发送的代理更新增加消息到达代理信息服务器,这样代理信息服务器首先更新STA1的代理信息为MAP2的地址,然后更新STA1的代理信息为MAP1的地址,使得代理信息服务器中保存了终端STA1的错误的代理信息,即代理服务器中最后保存的STA1的代理信息是MAP1的地址。但通过本实施例的技术方案,由于MAP2发送代理更新增加消息给MAP1,使得MAP1处保存了所述终端的正确的代理信息,即MAP2的地址。因此即使网关节点或网络中其他节点错误地将发送给终端STA1的报文发送给MAP1,MAP1仍可以通过查询本地代理信息表中终端的STA1的代理信息,从而将报文正确地转发给终端STA1的当前代理节点MAP2。

实施例三

如图4所示,本发明实施例三提供了一种通知代理更新的无线Mesh网络,包括:终端STA1切换前的原代理节点MAP1,终端STA1切换后的当前代理节点MAP2,在MAP2到代理服务器MP5的路径上的中间节点MP3;其中,中间节点可以为Mesh网络中的除MAP1、MAP2外的任意具有或者能够获得代理信息表的节点,例如图4中的MP3,这里的MP3可以是MAP节点或者具有或能够获得代理信息表的一般Mesh节点,其中MP3、MAP1、MAP2、MP5之间通过Mesh网络通信,各节点之间的路径可以有一跳或者多跳。

STA1的当前代理节点MAP2包括:接收单元、发送单元和构建单元;所述接收单元,用于接收终端STA1发送的关联请求;所述构建单元,用于在MAP2根据所述关联请求与终端STA1建立关联后,以代理信息服务器MP5地址作为目的节点地址构建代理更新增加消息,并通知所述发送单元将构建的代理更新增加消息向目的节点发送,其中,构建的代理更新增加消息,以代理信息服务器MP5的地址为目的节点地址,以节点MAP2自身的地址为终端STA1的当前代理节点地址,包括终端STA1的地址;所述发送单元,用于根据目的节点地址,即MP5的地址,通过Mesh网络向所述目的节点MP5发送代理更新增加消息,该代理更新增加消息用于将目的节点MP5的代理信息表中终端STA1的代理信息更新为终端STA1切换后的当前代理节点地址,即MAP2的地址。

STA1的原代理节点MAP1包括:第二接收单元和第二代理表单元;所述第二接收单元,用于接收中间节点MP3发送的代理更新增加消息,所述代理更新增加消息中携带了终端STA1的当前代理节点MAP2的地址和终端STA1的地址;所述第二代理表单元,用于从所述第二接收单元接收的代理更新增加消息中,获取终端STA1的当前代理节点地址,即MAP2的地址,并在MAP1自身的本地代理信息表中,将终端STA1的代理信息更新为当前代理节点MAP2的地址。

在其他实施例中,MAP1还可以包括:第二缓存单元,用于缓存节点或终端发送的以终端STA1为目的终端的报文;第二发送单元,用于根据更新后的STA1的代理信息,向终端STA1转发节点或终端发送的以终端STA1为目的终端的报文。MAP2的接收单元接收到MAP1转发的以终端STA1为目的终端的报文后,通过MAP2的发送单元将该报文发送给终端STA1。

中间节点MP3包括:第三接收单元,第三发送单元,第三查找单元,和第三构建单元;所述第三接收单元,用于接收终端STA1切换后的当前代理节点MAP2发送的代理更新增加消息,该代理更新增加消息包括终端STA1的地址和终端STA1的当前代理节点地址,即MAP2的地址;所述第三查找单元,用于根据所述第三接收单元接收的代理更新增加消息中携带的终端STA1的地址查找本地代理信息表,获取终端STA1的原代理节点MAP1的地址;构建单元,用于根据所述第三查找单元获取的原代理节点MAP1的地址,构建代理更新增加消息,并通知所述第三发送单元将所述构建的代理更新增加消息向目的节点发送,其中,所述构建的代理更新增加消息,以终端STA1的原代理节点MAP1的地址为目的节点地址,包括终端STA1的地址和终端STA1的当前代理节点MAP2的地址;发送单元,用于根据目的节点地址,即MAP1的地址,向目的节点MAP1发送代理更新增加消息,该代理更新增加消息用于将目的节点MAP1的代理信息表中所述终端STA1的代理信息更新为当前代理节点MAP2的地址。

在其他实施例中,通知代理更新的无线Mesh网络还可以包括代理信息服务器,用于保存Mesh网络的代理信息;该代理信息服务器,可以是MPP(Mesh Point Portal,Mesh网关节点),例如图4中的MP5,也可以是配置的网络中的其他节点,在此不做限定。MP3在向MAP1发送代理更新增加消息的同时,还可以将接收到的MAP2发送的代理更新增加消息,继续向代理信息服务器MP5发送,以便代理信息服务器在收到该消息后,根据该代理更新增加消息,更新其自身的代理信息表。

实施例四

如图5所示,本发明实施例四提供了一种无线Mesh网络中通知代理更新的方法。为了描述清楚,以MAP1为终端STA1切换前的原代理节点,MAP2为终端STA1切换后的当前代理节点,Mesh节点MP3为网络中在MAP2至代理信息服务器MP5的路径上的节点。所述无线Mesh网络中通知代理更新的方法包括:

步骤200:接收代理更新增加消息。其中所述代理更新增加消息包括,目的节点地址、终端的当前代理节点地址和终端地址。

本步骤中,MP3接收终端STA1的当前代理节点MAP2通过Mesh网络发送的代理更新增加消息。

步骤201:获取终端切换前的原代理节点地址。

本步骤中,获取终端切换前的原代理节点的方式可以是:MP3接收终端STA1的当前代理节点MAP2发送的代理更新增加消息后,根据所述代理更新增加消息中携带的终端STA1的地址,MP3查找自身的本地代理信息表,获取终端STA1的原代理节点MAP1的地址。其中,此处的MAP2发送的代理更新增加消息的格式可以采用IEEE802.11s标准草案所定义的代理更新增加消息格式,携带Proxy Update IE,并且在Proxy Update IE中增加一个Destination Address域,填写该代理更新增加消息的目的节点地址,MAP2发送的代理更新增加消息中携带的Proxy Update IE格式如图3所示,各个域的说明如表1。MAP2在其发送的代理更新增加消息中以代理信息服务器MP5的地址为目的节点地址,通过Mesh网络向MP5发送所述代理更新增加消息,而MP3在MAP2至MP5的路径上,所以能够收到该代理更新增加消息。

步骤202:构建新的代理更新增加消息,所述代理更新增加消息包括终端的地址、终端切换后的当前代理节点地址和目的节点地址。

本步骤中,MP3构建新的代理更新增加消息可以为:复制接收的MAP2发送的代理更新增加消息,并且修改该复制的代理更新增加消息的目节点地址为原代理节点MAP1的地址。所述MP3构建的代理更新增加消息,以原代理节点MAP1的地址为目的节点地址,包括当前代理节点MAP3发送的代理更新增加消息中携带的终端STA1的地址和终端STA1切换后的当前代理节点MAP2的地址。

步骤203:以所述原代理节点地址为目的节点地址,发送所述代理更新增加消息到所述原代理节点,所述代理更新增加消息用于将所述原代理节点的代理信息表中所述终端的代理信息更新为所述当前代理节点地址。

并以代理信息服务器地址为目的节点地址,向所述代理信息服务器发送代理更新增加消息。

本步骤中,MP3以STA1的原代理节点MAP1的地址为目的节点地址,将构建的代理更新增加消息,发送至MAP1,通知MAP1根据该代理更新增加消息在MAP1自身的代理信息表中将终端STA1的代理信息更新为MAP2的地址。另外,MP3还可以将接收的MAP2发送的代理更新增加消息向代理信息服务器MP5转发,例如,如果MAP2发送的原代理更新增加消息是以MP5的地址为目的节点地址的,则可以直接将MAP2发送的原代理更新增加消息通过Mesh网络向MP5转发即可,可以理解的是代理信息服务器的地址可以通过配置或者其他方式为MP3所知。其中,构建代理更新增加消息时,该代理更新增加消息可以采用IEEE 802.11s标准草案所定义的代理更新增加消息格式,携带Proxy Update IE,并且在Proxy Update IE中增加一个Destination Address域,填写该代理更新增加消息的目的节点地址,本实施例中构建的代理更新增加消息携带的Proxy Update IE格式如图3所示,各个域的说明如表1。

当MP3以MAP1的地址为目的节点地址构建了代理更新增加消息后,则通过Mesh网络向MAP1和MP5分别发送代理更新增加消息。在向MAP1发送的代理更新增加消息中,以MAP1为目的节点地址携带在“DestinationAddress”域中,在“Proxy Address”域中携带STA1的当前代理节点MAP2的地址,在“Proxied MAC Address #I”域中携带终端STA1的地址。

步骤204:接收所述原代理节点转发的以所述终端为目的终端的报文,并向所述终端转发。

本步骤中,当STA1的原代理节点MAP1通过Mesh网络接收了MP3发送的代理更新增加消息后,MAP1从所述代理更新增加消息中获得STA1的当前代理节点MAP2的地址,更新其自身的本地代理信息表,并将自身缓存的以STA1为目的终端的报文通过Mesh网络发送给MAP2。例如,在终端STA1从MAP1切换到MAP2的前后,终端STA2始终通过MAP4向STA1发送以STA1为目的终端的报文;在STA1切换到MAP2之后,MAP4如果没有及时更新自身的本地代理信息表,那么依然将发给STA1的报文发送给MAP1,此时MAP1已经不再代理STA1,MAP1将发送给STA1的报文在自身的缓存单元中缓存;当MAP1接收到节点MP3发送的代理更新增加消息,根据其中的MAP2的地址,向MAP2转发STA2发送给STA1的报文;当MAP2接收到MAP1转发的以终端STA1为目的终端的报文后,进一步向STA1发送所述报文,从而保证了在STA1切换前后,向STA1发送的报文都能正确的被转发至STA1,减少了丢包率。

在其他实施例中,在步骤201,MP3获取了终端STA1的原代理节点MAP1的地址后,MP3进一步在其自身的本地代理信息表中将终端STA1的代理信息更新为,STA1的当前代理节点MAP2地址,例如,MP3在自身的本地代理信息表中,将STA1的代理信息由MAP1的地址修改为MAP2的地址。这里,在本地代理信息表中对终端STA1的代理信息进行更新,可以有两种情况:MP3的本地代理信息表中没有STA1的信息,或者,MP3的本地代理信息表中STA1的代理信息为原代理节点MAP1的地址。针对这两种情况的具体更新操作,可以参考实施例二的相关描述,在此不再赘述。

在其他实施例中,所述代理更新增加消息还可以进一步包括分发标识,所述分发标识用于标示是否已向原代理节点发送代理更新增加消息,例如,使用Flags域中的保留位作为分发标识,以Bit1为例,Bit1为1表示该代理更新增加消息已经转发给的终端的原代理节点,Bit1为0则表示该代理更新增加消息没有被转发给终端的原代理节点。如果在一个代理更新增加消息中携带了多个终端的地址信息,则可以分别针对不同的终端地址设置不同的分发标识位,例如,使用Flags域的保留的7个bit(Bit2~Bit7)可以表示针对7个不同的终端地址的分发情况;另外,也可以增加一个STA flags域来表示,STA flags域的长度可以是8个bit的倍数,这样代理更新增加消息可以携带的终端的地址信息的最大个数就是STA flags的长度;还可以给每一个终端地址增加一个flags域,用来表明是否已有节点将该终端的代理更新增加消息转发给其原代理节点。其中,当前代理节点可以将不需要分发的终端地址对应的分发标识位置为已向原代理节点发送代理更新增加消息,这样中间节点就不会针对这些终端的地址信息进行分发,其中这里的分发指的是根据终端的当前代理节点发送的代理更新增加消息,向终端的原代理节点和代理信息服务器发送代理更新增加消息。使用分发标识的步骤如下,如图6:

步骤301:STA1的当前代理节点MAP2构建代理更新增加消息。其中,所述代理更新增加消息中,“Proxied MAC Address #I”域携带了STA1的地址,“Destination Address”域中以代理信息服务器MP5的地址为目的节点地址,“Proxy Address”域中携带STA1的当前代理节点MAP2的地址;MAP2在构建的代理更新增加消息中将STA1对应的分发标识位置为,未向原代理节点发送代理更新增加消息,即表示未向STA1的原代理节点MAP1发送代理更新增加消息。当然,所述构建的代理更新增加消息中,可以通过前述的方式携带多个终端地址,如果不需要针对其中的某些终端地址进行分发,则MAP2将这些终端对应的分发标识位置为已向原代理节点发送代理更新增加消息即可。

步骤302:MAP2通过Mesh网络向MP5发送构建的代理更新增加消息。

步骤303:中间节点MP3接收STA1的当前代理节点MAP2发送的代理更新增加消息。

步骤304:MP3根据接收的代理更新增加消息中的分发标识,判断是否已进行分发。例如,MP3根据代理更新增加消息中STA1对应的分发标识位,判断是否已向其原代理节点MAP1发送了代理更新增加消息,当已向原代理节点MAP1发送代理更新增加消息时,则执行步骤305,否则执行步骤306。

步骤305:转发所述代理更新增加消息至下一跳。当已向原代理节点MAP1发送代理更新增加消息时,则转发所述代理更新增加消息至下一跳,并可以根据该代理更新增加消息更新MP3自身的本地代理信息表中终端STA1的代理信息。

步骤306:构建新的代理更新增加消息,并修改分发标识为已向原代理节点发送代理更新增加消息,然后向所述原代理节点、代理信息服务器发送构建的代理更新增加消息。例如,当未向原代理节点MAP1发送代理更新增加消息时,则执行步骤202,并在步骤202中进一步修改STA1对应的分发标识为已向原代理节点发送代理更新增加消息,然后,将携带了已向MAP1发送代理更新增加消息的分发标识的代理更新增加消息,分别以原代理节点MAP1、代理信息服务器MP5的地址为目的节点地址向MAP1、MP5发送。

在其他实施例中,如果MAP2到MP5的路径上的中间节点都不能向MAP1分发代理更新增加消息,可以由MP5向MAP1分发该代理更新增加消息,例如,MP5在接收到MAP2通过Mesh网络发送来的代理更新增加消息后,将所述代理更新增加消息复制一份,并修改该复制的代理更新增加消息的目的节点地址为MAP1的地址,然后通过Mesh网络向MAP1转发该以MAP1为目的节点地址代理更新增加消息,或者MP5在接收到MAP2通过Mesh网络发送来的代理更新增加消息后,更新自身的本地代理信息表,并直接修改该消息的目的节点地址为MAP1的地址,然后通过Mesh网络向MAP1转发该以MAP1为目的节点地址代理更新增加消息。如果在代理更新增加消息中还包括分发标识,则MP5可以根据分发标识进行判断,当已经向MAP1发送代理更新增加消息时,则只更新自身的本地代理信息表即可,当未向MAP1发送代理更新增加消息时,则更新自身的本地代理信息表,并以MAP1为目的节点地址向MAP1发送代理更新增加消息。其中,不能向MAP1转发的原因可能是路径上节点各自的路由表中没有到MAP1的路径,也可能是路径上节点各自的代理信息表中没有所述终端的代理信息,而MP5作为代理信息服务器一定能够与MAP1通信,因此能够确保分发的成功。

在本实施例中,MAP2到MP3路径上的节点、节点MP3,收到上述MAP2构建的代理更新增加消息后,更新各自的本地代理信息表;MP3到MP5路径上的节点、节点MP5,MP3到MAP1路径上的节点、节点MAP1,收到上述MAP2构建的代理更新增加消息后,更新各自的本地代理信息表。

本实施例,通过在代理更新增减消息中携带目的节点的地址,使终端的当前代理节点能够及时向终端的原代理节点发送代理更新增加消息,从而使原代理节点能够及时得知终端的当前代理节点的地址,并通过该当前代理节点的地址,向所述终端转发原代理节点缓存的以所述终端为目的终端的报文。

实施例五

实施例五提供了另一种在代理更新增加消息中携带目的节点地址的方式,如图7所示,重用IEEE 802.11标准的管理帧中的Addr3域,携带目的节点地址。重用管理帧MAC头部的地址3(Addr3)域,赋予该域新的含义,利用域表示代理更新增加消息的目的节点的MAC地址。

因此上述实施例中,在代理更新增加消息中目的节点地址域都可以删除,转而采用本实施例提供的重用MAC头部的Addr3域来携带目的节点地址的方法。

当通过以上各实施例进行了代理更新后,在转发数据报文的过程中,用数据报文的地址3域来携带目的节点MAC地址,转发节点获得数据报文后,首先根据数据报文中的地址5(目的终端MAC地址)来查找自身的本地代理信息表,如果转发节点自身的本地代理信息表中有该目的终端的代理信息,则获得该目的终端的当前代理节点的MAC地址,并根据该当前代理节点的地址直接向目的终端的当前代理节点转发数据报文;如果转发节点自身的本地代理信息表中没有该目的终端的代理信息,则根据数据报文中的地址3(Mesh目的节点地址)进行转发。由于采用了之前的各个实施例中的通知代理更新的方法,从而使转发节点可能及时的更新了自身的本地代理信息表,进而在上述数据转发过程中,通过查找本地代理信息表以获取目的终端正确的当前代理节点,将数据报文发送给目的终端的正确的代理节点,因此,减轻了网络中其他节点的数据转发负担,也降低了终端在切换过程中的时延和丢包率。

实施例六

如图8所示,实施例六提供了一种无线Mesh网络中通知代理更新的装置,所述装置包括:

接收单元801,用于接收终端或终端切换前的原代理节点发送的请求消息,所述请求消息中携带了终端切换前的原代理节点地址;

发送单元802,用于根据目的节点地址,向所述目的节点发送代理更新增加消息,所述代理更新增加消息用于将所述目的节点的代理信息表中所述终端的代理信息更新为所述终端切换后的当前代理节点地址;

解析单元803,用于从所述接收单元801接收的请求消息中,获取终端的原代理节点地址;

构建单元804,用于根据所述解析单元803获取的原代理节点地址,构建代理更新增加消息,并通知所述发送单元802将所述构建的代理更新增加消息向目的节点发送;所述构建的代理更新增加消息,以所述原代理节点地址为目的节点地址,包括所述终端的当前代理节点地址和所述终端的地址。

在其他实施例中,所述通知代理更新的装置还包括:代理表单元805,用于保存本地代理信息表,并根据所述接收单元801接收的请求消息更新本地代理信息表。

其中,本实施例中的通知代理更新的装置可以设置在MAP中,可以是实施例一提供的无线Mesh网络中的终端STA1的当前代理节点MAP2。

实施例七

如图9所示,实施例七提供了另一种无线Mesh网络中通知代理更新的装置,所述装置包括:

接收单元901,用于接收终端切换后的当前代理节点发送的代理更新增加消息,所述代理更新增加消息包括,所述终端的当前代理节点地址和所述终端的地址;

发送单元902,用于根据目的节点地址,向所述目的节点发送代理更新增加消息,所述代理更新增加消息用于将所述目的节点的代理信息表中所述终端的代理信息更新为所述当前代理节点地址;

查找单元903,用于根据所述接收单元901接收的代理更新增加消息中携带的终端的地址,查找本地代理信息表,获取所述终端切换前的原代理节点地址;

构建单元904,用于根据所述查找单元903获取的终端的原代理节点地址,构建代理更新增加消息,并通知所述发送单元902将所述构建的代理更新增加消息向目的节点发送,其中,所述构建的代理更新增加消息,以所述原代理节点地址为目的节点地址,包括所述终端的地址和所述终端的当前代理节点地址。

在其他实施例中,所述构建单元包括:复制单元9041,用于复制所述接收单元901接收的代理更新增加消息;修改单元9042,用于将所述复制单元复制的代理更新增加消息的目的节点地址设置为所述查找单元903获取的原代理节点地址。

在其他实施例中,所述通知代理更新的装置还包括:标识判断单元905,用于根据所述接收单元901接收的代理更新增加消息中携带的分发标识进行判断,所述分发标识用于标示是否已向原代理节点发送代理更新增加消息;当已向原代理节点发送代理更新增加消息时,所述标识判断单元通知所述发送单元902转发所述代理更新增加消息至下一跳;当未向原代理节点发送代理更新增加消息时,所述标识判断单元通知所述查找单元903对本地代理信息表进行查找,获取终端切换前的原代理节点地址,和/或通知所述构建单元904根据所述查找单元903获取的终端的原代理节点地址构建代理更新增加消息,并设置所述构建的代理更新增加消息中的分发标识为已向原代理节点发送代理更新增加消息。所述构建单元904,还用于根据所述标识判断单元的通知,构建代理更新增加消息,并设置所述构建的代理更新增加消息中的分发标识为已向原代理节点发送代理更新增加消息。其中,设置分发标识的操作可以由所述修改单元9042完成。

在其他实施例中,所述通知代理更新的装置还包括:代理表单元906,用于保存本地代理信息表,并根据所述接收单元901接收的代理更新增加消息更新本地代理信息表,或提供所述查找单元903查找代理信息表的接口。其中,所述查找单元903对代理信息表的查找可以是,所述查找单元903读取所述代理信息表,然后根据终端的地址对该代理信息表进行索引,获得终端地址对应的代理信息。

在其他实施例中,所述通知代理更新的装置可以同时包括:上述的标识判断单元905和代理表单元906。

其中,本实施例中的通知代理更新的装置可以设置在MP中,可以是实施例三提供的无线Mesh网络中的中间节点MP3。

实施例八

本实施例提供了另一种无线Mesh网络中通知代理更新的方法,本实施例的方法与实施例四的方法的不同在于:

当节点接收到代理更新增加消息后,首先判断其自身的本地代理信息表中,是否有该代理更新增加消息中的终端STA1的代理信息,如果没有则直接更新本地代理信息表,在本地代理信息表中增加终端STA1的代理信息为MAP2的地址;如果节点自身的本地代理信息表中有终端STA1的代理信息,则进一步判断,节点自身的本地代理信息表中已有的代理信息是否与代理更新增加消息中的终端STA1的当前代理节点MAP2的地址一致,如果两者一致则转发接收到的代理更新增加消息至下一跳或丢弃接收到的代理更新增加消息,如果两者不一致则获取终端STA1在本地代理信息表中的代理信息,即终端STA1的原代理节点MAP1的地址,并根据MAP1的地址构建新的代理更新增加消息,在构建了以MAP1为目的节点地址的新的代理更新增加消息后,更新本地代理信息表并向MAP1发送新构建的代理更新增加消息。

另外,在以上各实施例中,接收到代理更新增加消息的各节点,在转发该消息之前还进一步判断自身是否目的节点,如果是则不转发代理更新增加消息,如果不是则转发;或者,在节点接收到代理更新增加消息之后,先判断自身是否是目的节点,如果不是则按照前述流程,如果是则直接更新本地代理信息表而不需要进行转发或者构建新的代理更新增加消息。

总之,以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号