发明内容
有鉴于此,本发明实施例的目的在于提供一种数据传输方法和电子设备,可以通过多种模式发送数据包,提高数据发送的成功率。
第一方面,本发明实施例提供了一种数据传输方法,应用于宽带电力线载波通信***,所述宽带电力线载波通信***包括多个节点设备,每个所述节点设备包括第一路由表项和第二路由表项,其中,所述第一路由表项包括通过有线通信方式将数据由当前节点设备发送至目标节点设备的下一跳的节点设备地址,所述第二路由表项包括通过无线通信方式将数据由当前节点设备发送至目标节点设备的下一跳的节点设备地址,所述方法包括:
获取需要发送的数据和目标节点设备;
确定工作模式,所述工作模式包括有线模式、无线模式和混合模式;
根据所述工作模式确定所述第一路由表项或第二路由表项为实际路由表项;
根据所述实际路由表项确定下一跳的节点设备;
根据所述需要发送的数据和所述目标节点设备的地址生成数据包,所述数据包具有模式标志位,所述模式标志位用于指定所述工作模式;以及
通过所述实际路由表项对应的通信方式将所述数据包发送至下一跳的节点设备。
优选地,所述确定工作模式包括:
检测通信记录;
响应于存在表征通过有线模式,从当前节点设备到目标节点设备能成功发送的第一通信记录,将所述工作模式确定为有线模式;
响应于存在表征通过无线模式,从当前节点设备到目标节点设备能成功发送的第二通信记录,将所述工作模式确定为无线模式;
响应于存在表征通过混合模式,从当前节点设备到目标节点设备能成功发送的第三通信记录,将所述工作模式确定为混合模式;以及
响应于不存在所述第一通信记录、第二通信记录和第三通信记录,根据预定的优先级确定所述工作模式。
优选地,根据预定的优先级确定所述工作模式包括:
选择有线模式确定为所述工作模式;
响应于通过有线模式发送数据失败,选择无线模式确定为所述工作模式;以及
响应于通过无线模式发送数据失败,选择混合模式确定为所述工作模式。
优选地,根据所述工作模式确定所述第一路由表项或第二路由表项为实际路由表项包括:
响应于工作模式为有线模式,确定第一路由表项为实际路由表项;
响应于工作模式为无线模式,确定第二路由表项为实际路由表项;以及
响应于工作模式为混合模式,根据通信记录确定第一路由表项或第二路由表项为实际路由表项。
优选地,所述第一路由表项中的节点设备地址为第一地址,所述第二路由表项中的节点设备地址为第二地址。
优选地,通过所述实际路由表项对应的通信方式将所述数据包发送至下一跳的节点设备包括:
根据所述实际路由表项获取源地址,所述源地址为当前节点设备在所述实际路由表项中的地址;
根据所述实际路由表项获取目的地址,所述目的地址为下一跳的节点设备在所述实际路由表项中的地址;以及
根据所述源地址和目的地址将所述数据包发送至下一跳的节点设备。
优选地,所述数据包还包括源地址和目的地址。
第二方面,本发明实施例公开了一种数据传输方法,应用于宽带电力线载波通信***,所述宽带电力线载波通信***包括多个节点设备,每个所述节点设备包括与有线通信方式对应的第一路由表项和与无线通信方式对应的第二路由表项,其中,所述第一路由表项包括通过有线通信方式将数据由当前节点设备发送至目标节点设备的下一跳的节点设备地址,所述第二路由表项包括通过无线通信方式将数据由当前节点设备发送至目标节点设备的下一跳的节点设备地址,所述方法包括:
接收上一节点设备发送的数据包;
解析所述数据包以获取需要发送的数据、目标节点设备的地址和模式标志位,所述模式标志位用于指定所述工作模式,所述工作模式包括有线模式、无线模式和混合模式;
根据所述模式标志位确定工作模式;
根据所述工作模式确定所述第一路由表项或第二路由表项为实际路由表项;
根据所述实际路由表项确定下一跳的节点设备;
通过所述实际路由表项对应的通信方式将所述数据包发送至下一跳的节点设备。
优选地,接收到的数据包中还包括源地址和目的地址;
所述方法还包括:
根据所述实际路由表项更新所述源地址和目的地址。
第三方面,本发明实施例公开了一种电子设备,所述电子设备包括:
第一通信单元,被配置为通过有线方式进行通信;
第二通信单元,被配置为通过无线方式进行通信;以及
存储器和处理器,所述存储器用于存储一条或多条计算机程序指令,其中,所述一条或多条计算机程序指令被所述处理器执行以实现如第一方面和第二方面所述的方法。
本发明实施例的技术方案通过确定工作模式,并根据所述工作模式确定第一路由表项或第二路由表项为实际路由表项,根据实际路由表项确定下一跳的节点设备,通过实际路由表项对应的通信方式将数据包发送至下一跳的节点设备。由此,可以通过多种模式发送数据包,提高数据发送的成功率。
具体实施方式
以下基于实施例对本发明进行描述,但是本发明并不仅仅限于这些实施例。在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。为了避免混淆本发明的实质,公知的方法、过程、流程、元件和电路并没有详细叙述。
此外,本领域普通技术人员应当理解,在此提供的附图都是为了说明的目的,并且附图不一定是按比例绘制的。
同时,应当理解,在以下的描述中,“电路”是指由至少一个元件或子电路通过电气连接或电磁连接构成的导电回路。当称元件或电路“连接到”另一元件或称元件/电路“连接在”两个节点之间时,它可以是直接耦接或连接到另一元件或者可以存在中间元件,元件之间的连接可以是物理上的、逻辑上的、或者其结合。相反,当称元件“直接耦接到”或“直接连接到”另一元件时,意味着两者不存在中间元件。
除非上下文明确要求,否则在说明书的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。
在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
图1是本发明实施例的宽带电力线载波通信***的示意图。如图1所示,本发明实施例的宽带电力线载波通信***多个节点设备,其中多个节点设备包括CCO(CentralCoordinator,中央协调器)、PCO(Proxy Coordinator,代理协调器)和STA(Station,站点)。进一步地,如图所示,宽带电力线载波通信***以CCO为中心、以PCO(例如,智能电表、I型采集器通信单元、宽带载波II型采集器)为中继代理,连接所有STA(例如,智能电表、I型采集器通信单元、宽带载波II型采集器)的多级关联的树形网络。
在本实施例中,所述宽带电力线载波通信***中的多个节点设备通过有线方式组成第一网络,通过无线方式组成第二网络。具体地,本发明实施例的宽带电力线载波通信网络如图2所示,实线表示有线方式的通信路径,虚线表示无线方式的通信路径。本发明实施例的第一网络和第二网络使用独立的短地址、独立的路由表和独立的设备层级等网络管理信息,互不干扰。
进一步地,在第一网络中,各节点设备使用的是第一地址,在第二网络中,各节点设备使用的是第二地址。
在本实施例中,第一网络和第二网络在组网和维护过程中维护好各自的路由表项,以根据路由表进行数据转发。
进一步地,通过设置两个网络,使得路由的维护更加简单,节点设备之间的工作模式灵切换,可以提高节点设备的在线率,提高了网络的鲁棒性。
更进一步地,双网络的设置可以使得本发明实施例的方法对目前市场的单模芯片进行兼容。
如图2所示,本发明实施例以宽带电力线载波通信***包括节点设备1-7为例进行说明,其中节点设备1为CCO,节点设备3和4为PCO,节点设备2、5、6和7为STA。对于每一个节点设备,包括对应的MAC(媒体访问控制,Medium Access Control)子层、第一地址TEI和第二地址WLA。其中,MAC为所述节点设备的物理地址,第一地址为有线通信方式地址,第二地址为无线通信方式地址。
在本实施例中,每个节点设备均包括两个路由器,与有线通信方式对应的第一路由器以及与无线通信方式对应的第二路由器。
进一步地,第一地址为该节点设备采用宽带电力线载波通信方式地址,可以用于指示该节点设备使用电力线载波通信方式收发数据。第二地址为该节点设备采用无线通信方式地址,可以用于指示该节点设备使用无线通信方式收发数据。
在一个可选的实现方式中,地址的分配可以由CCO来进行。以无线入网方式为例进行说明,节点设备入网过程如下:未入网的节点设备在所有信道中分别发送信标请求以搜索网络中的CCO和PCO,CCO和PCO接收到信标请求后对其进行应答。未入网的节点设备记录在各个信道上收到的应答,选择通信质量较好的CCO或PCO作为自己的上级节点设备,并向其发送入网请求。上级节点设备收到入网请求后,给申请入网的节点设备分配一个第二地址,并将该节点设备作为自己的下级节点。申请入网的节点设备收到分配的第二地址后,将该第二地址和自身物理地址发送至CCO。CCO根据建网模式及申请入网的节点设备的信息,判定是否同意入网,若同意,则向申请入网的节点设备返回同意入网信息,该申请入网的节点设备成功入网。若不同意,则向申请入网的节点设备返回拒绝入网信息,申请入网的节点设备收到拒绝入网信息后,安装上述步骤重新入网,直到成功入网为止。
由此,可以根据上述步骤组网,分别形成以有线方式进行通信的第一网络,和,以无线方式进行通信的第二网络。
在本实施例中,组网完成后,每个节点设备均形成两个路由表项,其中,第一路由表项包括通过有线通信方式将数据由当前节点设备发送至目标节点设备的下一跳的节点设备地址,所述第二路由表项包括通过无线通信方式将数据由当前节点设备发送至目标节点设备的下一跳的节点设备地址。具体地,以图2中所示网络为例,其对应的第一路由表项和第二路由表项可分别参照图3和图4。
如图3所示,在有线网络中,MAC3对应的目标节点设备可以为MAC1、MAC4、MAC5、MAC6和MAC7。
具体地,当目标节点设备地址MAC1时,数据为从低级到高级传输(例如STA向CCO上报数据),如果通过有线方式传输,则此时的目标节点设备的地址为TEI1,此时传输路径为MAC3-MAC1,由此,下一跳的节点设备的地址为TEI1。
当目标节点设备地址MAC4时,数据为从高级到低级传输(例如CCO向STA发送数据),如果通过有线方式传输,则此时的目标节点设备的地址为TEI4,此时传输路径为MAC3-MAC4,由此,下一跳的节点设备的地址为TEI4。
当目标节点设备地址MAC5时,数据为从高级到低级传输(例如CCO向STA发送数据),如果通过有线方式传输,则此时的目标节点设备的地址为TEI5,此时传输路径为MAC3-MAC5,由此,下一跳的节点设备的地址为TEI5。
当目标节点设备地址MAC6时,数据为从高级到低级传输(例如CCO向STA发送数据),如果通过有线方式传输,则此时的目标节点设备的地址为TEI6,此时传输路径为MAC3-MAC4-MAC6,由此,下一跳的节点设备的地址为TEI4。
当目标节点设备地址MAC7时,数据为从高级到低级传输(例如CCO向STA发送数据),如果通过有线方式传输,则此时的目标节点设备的地址为TEI7,此时传输路径为MAC3-MAC4-MAC7,由此,下一跳的节点设备的地址为TEI4。
图4所示,在无线网络中,MAC3对应的目标节点设备可以为MAC1和MAC7。
具体地,当目标节点设备地址MAC1时,数据为从低级到高级传输(例如STA向CCO上报数据),如果通过无线方式传输,则此时的目标节点设备的地址为WLA1,此时传输路径为MAC3-MAC1,由此,下一跳的节点设备的地址为WLA1。
当目标节点设备地址MAC7时,数据为从高级到低级传输(例如CCO向STA发送数据),如果通过无线方式传输,则此时的目标节点设备的地址为WLA7,此时传输路径为MAC3-MAC7,由此,下一跳的节点设备的地址为WLA7。
进一步地,图5是本发明实施例的宽带电力线载波通信网络的协议栈的示意图。如图5所示,宽带电力线载波通信网络协议栈包括物理层a、数据链路层b和应用层c。其中,数据链路层b分为媒体访问控制子层(MAC)b1和网络管理子层b2。其中,应用层c实现本地通信单元与通信单元之间业务数据交互,通过数据链路层完成数据传输。网络管理子层b2主要实现宽带电力线载波通信网络的组网、网络维护、路由管理及应用层报文的汇聚和分发。MAC子层主要通过CSMA/CA和ITDMA两种信道访问机制竞争物理信道,实现数据报文的可靠传输。物理层a主要实现将MAC子层数据报文编码调制为宽带载波信号或无线信息,发送到电力线媒介或无线传输媒介上,并接收电力线媒介的宽带载波信号解调为数据报文,交予MAC子层处理。
图6是本发明实施例的中央协调器的结构示意图。如图6所示,本发明实施例的中央协调器包括处理器11、存储器12、有线通信单元13和无线通信单元14。其中,有线通信单元13被配置为通过有线的方式进行通信。无线通信单元14被配置为通过无线的方式进行通信。有线通信单元13和无线通信单元14为两个功能独立的通信单元,节点设备包括第一地址和第二地址,有线通信单元13被配置为通过第一地址进行数据传输,无线通信单元14被配置为通过第二地址进行数据传输。其中,存储器12存储有可被至少一个处理器11执行的指令,指令被至少一个处理器11执行以实现如图7所示的方法:
步骤S110、获取需要发送的数据和目标节点设备。
在本实施例中,CCO响应于与宽带电力线载波通信网络中的某一节点设备进行通信时,获取需要发送的数据和目标节点设备。
步骤S120、确定工作模式。
在本实施例中,CCO确定本次进行数据传输的工作模式,所述工作模式包括混合模式、有线模式和无线模式。
具体地,响应于所述工作模式为有线模式,各节点设备通过有线通信方式进行通信。响应于所述工作模式为无线模式,各节点设备通过无线通信方式进行通信。响应于所述工作模式为在混合模式,各节点设备通过有线通信方式或无线通信方式中的进行通信。
具体地,所述有线通信方式为电力线载波通信方式,电力线载波通信(power linecarrier communication)是以输电线路为载波信号的传输媒介的电力***通信。由于输电线路具备十分牢固的支撑结构,所以输电线输送工频电流的同时,用之传送载波信号,既经济又十分可靠。
具体地,所述无线通信方式可以使用现有的各种无线通信方式,例如,NB-IoT(窄带物联网,Narrow Band Internet of Things)、LORA、ZigBee或GPRS(通用分组无线服务技术,General Packet Radio Service)等无线通信方式。其中,NB-IoT具有广覆盖、低功耗和更低模块成本等特点。LORA是LPWAN(低功耗广域网,Low Power Wide Area Network)的一种,是一种基于扩频技术的超远距离无线传输方案,具有远距离、低功耗、多节点设备和低成本等特点。ZigBee技术是一种近距离、低复杂度、低功耗、低速率和低成本的双向无线通讯技术。GPRS具有传输速率高、接入时间短等特点。因此,使用NB-IoT、LoRa、ZigBee或GPRS等无线网络可以扩大无线网络的覆盖范围,同时,网络信号稳定,不易中断。
进一步地,确定工作模式可参照如8包括如下步骤:
步骤S121、开始确定工作模式。
步骤S122、检测通信记录。
在本实施例中,节点设备在数据传输过程中汇记录每次数据传输的结果,并将失败结果和成功结果记录在通信记录中。CCO检测从当前节点设备到目标节点设备能够成功发送的通信记录,根据检测结果确定通信记录。
步骤S123、响应于所述通信记录中存在从当前节点设备到目标节点设备能够成功发送的通信记录,将对应的工作模式确定为本次通信的工作模式。具体包括:
步骤S1231、响应于存在表征通过有线模式,从当前节点设备到目标节点设备能成功发送的第一通信记录,将所述工作模式确定为有线模式。
步骤S1232、响应于存在表征通过无线模式,从当前节点设备到目标节点设备能成功发送的第二通信记录,将所述工作模式确定为无线模式。
步骤S1233、响应于存在表征通过混合模式,从当前节点设备到目标节点设备能成功发送的第三通信记录,将所述工作模式确定为混合模式。
步骤S124、响应于不存在所述第一通信记录、第二通信记录和第三通信记录,根据预定的优先级确定所述工作模式。
在本实施例中,预定的优先级从高到低的顺序为:有线模式、无线模式、混合模式。具体包括:
步骤S1241、选择有线模式确定为所述工作模式。
在本实施例中,根据预定的优先级选择有线模式为工作模式进行数据传输。
步骤S1242、检测通信结果。
在本实施例中,检测在有线模式下的通信结果。
步骤S1243、响应于通过有线模式发送数据失败,选择无线模式确定为所述工作模式。
进一步地,响应于通过有线模式发送数据成功,对通信结果进行记录。
步骤S1244、在本实施例中,检测在无线模式下的通信结果。
步骤S1245、响应于通过无线模式发送数据失败,选择混合模式确定为所述工作模式。
进一步地,响应于通过无线模式发送数据成功,对通信结果进行记录。
由此,可以尝试多种通信模式发送数据包,以保证数据包成功发送。
步骤S130、根据所述工作模式确定所述第一路由表项或第二路由表项为实际路由表项。
在本实施例中,CCO根据所述工作模式确定所述第一路由表项或第二路由表项为实际路由表项。具体包括如图9所示的步骤:
步骤S131、响应于工作模式为有线模式,确定第一路由表项为实际路由表项。
在本实施例中,工作模式为有线模式时,确定第一路由表项为实际路由表项。
步骤S132、响应于工作模式为无线模式,确定第二路由表项为实际路由表项。
在本实施例中,工作模式为无线模式时,确定第二路由表项为实际路由表项。
步骤S133、响应于工作模式为混合模式,根据通信记录确定第一路由表项或第二路由表项为实际路由表项。
在本实施例中,工作模式为混合模式时,选择第一路由表项或第二路由表项中的一个为实际路由表项。
具体地,首先根据第一路由表项确定通过有线通信方式发送数据时的下一跳的节点设备,并根据第二路由表项确定通过无线通信方式发送数据时的下一跳的节点设备,然后根据通信记录分别查询通过有线通信方式或无线通信方式是否能够将数据成功发送至下一跳的节点设备,如果只有一种通信方式能够成功发送数据,则选择对应的路由表项为实际路由表项,如果两种方式均可成功发送至下一跳节点设备,可根据数据量和节点设备层级等信息进行评估,选择第一路由表项或第二路由表项中的一个确定为实际路由表项。
步骤S140、根据所述实际路由表项确定下一跳的节点设备。
在本实施例中,通过上述步骤确定实际路由表项后,根据实际路由表项确定下一跳的节点设备。
步骤S150、根据所述需要发送的数据和所述目标节点设备的地址生成数据包。
在本实施例中,CCO生成需要发送的数据包。
进一步地,所述数据包包括需要发送的数据、所述目标节点设备的地址、模式标志位、源地址和目的地址。
进一步地,所述模式标志位用于指定所述工作模式,所述工作模式包括混合模式、有线模式和无线模式。
进一步地,所述源地址为所述源地址为当前节点设备在所述实际路由表项中的地址。
进一步地,所述目的地址为下一跳的节点设备在所述实际路由表项中的地址。
例如,如图6所示的网络中,假设节点设备1需要将数据发送至节点设备7,且工作模式为有线模式。则,可以通过上述步骤确定下一跳的节点设备为节点设备3。此时,节点设备1生成的数据包中,目标节点设备的地址为MAC7,模式标志位为有线模式,源地址为TEI1,目的地址为TEI3。
步骤S160、通过所述实际路由表项对应的通信方式将所述数据包发送至下一跳的节点设备。
在本实施例中,节点设备通过实际路由表项对应的通信方式将所述数据包发送至下一跳的节点设备。
具体地,响应于所述实际路由表项为第一路由表项,则通过有线通信方式发送所述数据包,响应于所述实际路由表项为第二路由表项,则通过无线通信方式发送所述数据包。
进一步地,通过所述实际路由表项对应的通信方式将所述数据包发送至下一跳的节点设备包括如下步骤:
步骤S161、根据所述实际路由表项获取源地址。
在本实施例中,所述源地址为当前节点设备在所述实际路由表项中的地址。
步骤S162、根据所述实际路由表项获取目的地址。
在本实施例中,所述目的地址为下一跳的节点设备在所述实际路由表项中的地址。
步骤S163、根据所述源地址和目的地址将所述数据包发送至下一跳的节点设备。
在本实施例中,上述处理器11、存储器12、有线通信单元13和无线通信单元14可以通过设置为专用的芯片或集成电路来实现,也可以通过现有的各种处理器执行对应的计算机程序指令来实现。
应理解,上述以CCO向STA发送数据为例进行说明,其中CCO的工作过程如上所述,但上述实施例还适用与其它场景,例如STA向CCO上报数据,此时,STA可通过与上述同样的方法发送数据。同时,数据发送过程中,上行或者下行方向保持不变,不能改变数据的发送方向。
本发明实施例通过确定工作模式,并根据所述工作模式确定第一路由表项或第二路由表项为实际路由表项,根据实际路由表项确定下一跳的节点设备,通过实际路由表项对应的通信方式将数据包发送至下一跳的节点设备。由此,可以通过多种模式发送数据包,提高数据发送的成功率。
进一步地,本发明实施例代理协调器的结构与中央协调器的结构一致,同样可参照图6,包括有线通信单元、无线通信单元、存储器和处理器。其中,有线通信单元被配置为通过有线的方式进行通信。无线通信单元被配置为通过无线的方式进行通信。有线通信单元和无线通信单元为两个功能独立的通信单元,节点设备包括第一地址和第二地址,有线通信单元被配置为通过第一地址进行数据传输,无线通信单元被配置为通过第二地址进行数据传输。其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行以实现如图10所示的方法,包括:
步骤S210、接收上一节点设备发送的数据包。
在本实施例中,PCO接收上一节点设备发送的数据包,其中,上一节点设备可以是CCO、STA或PCO。
进一步地,当上一节点设备为CCO时,本发明实施例的应用场景是CCO向STA发送数据,其中,当前节点设备为CCO向STA发送数据时的第一跳节点设备。当上一节点设备为STA时,本发明实施例的应用场景是STA向CCO上报数据,其中,当前节点设备为STA向CCO发送数据时的第一跳节点设备。当上一节点设备为PCO时,本发明实施例的应用场景是CCO向STA发送数据或者STA向CCO上报数据,其中,当前节点设备为数据传输路径中的中间节点设备。
步骤S220、解析所述数据包以获取需要发送的数据、目标节点设备的地址和模式标志位。
在本实施例中,所述数据包包括需要发送的数据、目标节点设备的地址、模式标志位、源地址和目的地址。
进一步地,所述模式标志位用于指定所述工作模式,所述工作模式包括混合模式、有线模式和无线模式。
进一步地,所述源地址为所述源地址为上一节点设备在所述实际路由表项中的地址。
进一步地,所述目的地址为当前节点设备在所述实际路由表项中的地址。
步骤S230、根据所述模式标志位确定工作模式。
在本实施例中,PCO根据所述模式标志位确定工作模式。
步骤S240、根据所述工作模式确定所述第一路由表项或第二路由表项为实际路由表项。
在本实施例中,PCO根据所述工作模式确定所述第一路由表项或第二路由表项为实际路由表项。具体包括如下步骤:
步骤S241、响应于工作模式为有线模式,确定第一路由表项为实际路由表项。
在本实施例中,工作模式为有线模式时,确定第一路由表项为实际路由表项。
步骤S242、响应于工作模式为无线模式,确定第二路由表项为实际路由表项。
在本实施例中,工作模式为无线模式时,确定第二路由表项为实际路由表项。
步骤S243、响应于工作模式为混合模式,根据通信记录确定第一路由表项或第二路由表项为实际路由表项。
在本实施例中,工作模式为混合模式时,选择第一路由表项或第二路由表项中的一个为实际路由表项。
具体地,首先根据第一路由表项确定通过有线通信方式发送数据时的下一跳的节点设备,并根据第二路由表项确定通过无线通信方式发送数据时的下一跳的节点设备,然后根据通信记录分别查询通过有线通信方式或无线通信方式是否能够将数据成功发送至下一跳的节点设备,如果只有一种通信方式能够成功发送数据,则选择对应的路由表项为实际路由表项,如果两种方式均可成功发送至下一跳节点设备,则可选择第一路由表项或第二路由表项中的任意一个确定为实际路由表项。
步骤S250、根据所述实际路由表项确定下一跳的节点设备。
在本实施例中,通过上述步骤确定实际路由表项后,根据实际路由表项确定下一跳的节点设备。
步骤S260、通过所述实际路由表项对应的通信方式将所述数据包发送至下一跳的节点设备。
在本实施例中,节点设备通过实际路由表项对应的通信方式将所述数据包发送至下一跳的节点设备。
具体地,响应于所述实际路由表项为第一路由表项,则通过有线通信方式发送所述数据包,响应于所述实际路由表项为第二路由表项,则通过无线通信方式发送所述数据包。
进一步地,通过所述实际路由表项对应的通信方式将所述数据包发送至下一跳的节点设备包括如下步骤:
步骤S261、根据所述实际路由表项获取源地址。
在本实施例中,PCO根据所述实际路由表项获取源地址,所述源地址为当前节点设备在所述实际路由表项中的地址。根据新获取的源地址对数据包中的源地址进行更新。
步骤S262、根据所述实际路由表项获取目的地址。
在本实施例中,PCO根据所述实际路由表项获取目的地址,所述目的地址为下一跳的节点设备在所述实际路由表项中的地址。根据新获取的目的地址对数据包中的目的地址进行更新。
步骤S263、根据所述源地址和目的地址将所述数据包发送至下一跳的节点设备。
在本实施例中,根据更新后的源地址和目的地址将所述数据包发送至下一跳的节点设备。
在本实施例中,上述处理器11、存储器12、有线通信单元13和无线通信单元14可以通过设置为专用的芯片或集成电路来实现,也可以通过现有的各种处理器执行对应的计算机程序指令来实现。
本发明实施例通过确定解析数据包以获取工作模式,并根据所述工作模式确定第一路由表项或第二路由表项为实际路由表项,根据实际路由表项确定下一跳的节点设备,通过实际路由表项对应的通信方式将数据包发送至下一跳的节点设备。由此,可以通过多种模式发送数据包,提高数据发送的成功率。
在一个具体的实施例中,如图2所示的网络,数据由MAC1发送给MAC7,可以分为如下三种情况:
情况一,MAC1以有线模式工作。首先,MAC1根据自身的第一路由表项确定下一跳的节点设备为MAC3,则将数据包中的模式标志位设置为有线模式,目标节点设备为MAC7,源地址为TEI1,目的地址为TEI3,然后将数据包发送至MAC3。MAC3接收到数据包后,解析数据包,可以根据模式标志位确定工作模式为有线模式,目标节点设备为MAC7,由此,根据自身的第一路由表项确定下一跳的节点设备为MAC4,将源地址修改为TEI3,并将目的地址修改为TEI4,然后将数据包发送至MAC4。MAC4接收到数据包后,解析数据包,可以根据模式标志位确定工作模式为有线模式,目标节点设备为MAC7,由此,根据自身的第一路由表项确定下一跳的节点设备为MAC7,将源地址修改为TEI4,并将目的地址修改为TEI7,然后将数据包发送至MAC7。
情况二,有线模式存在断路,切换为无线模式工作。假设MAC4-MAC7之间的有线路径断路。首先,MAC1根据自身的第二路由表项确定下一跳的节点设备为MAC3,则将数据包中的模式标志位设置为无线模式,目标节点设备为MAC7,源地址为WLA1,目的地址为WLA3,然后将数据包发送至MAC3。MAC3接收到数据包后,解析数据包,可以根据模式标志位确定工作模式为无线模式,目标节点设备为MAC7,由此,根据自身的第二路由表项确定下一跳的节点设备为MAC7,将源地址修改为WLA3,并将目的地址修改为WLA7,然后将数据包发送至MAC7。
情况三,有线模式和无线模式均存在断路,切换为混合模式工作。假设MAC4-MAC7之间的有线路径断路,假设MAC1-MAC3之间的无线路径断路。有线模式发送失败后,MAC4会将无法发送成功的消息发送回给MAC1,由MAC1设置工作模式为无线模式,并重发数据。再次经过无线模式发送失败后,MAC1会获取无法将数据通过无线发送给MAC3的消息,并将工作模式切换为混合模式,重新发送数据。具体地,在混合模式下,通过各个节点设备评估出的数据发送路径为TEI1-TEI3-TEI4-TEI7,但是当数据由TEI4发送给TEI7时失败,MAC4设备会标记失效路径并评估查找其它路径,未找到其它路径则生成失败消息发送给MAC3,MAC3标记失效路径并评估查找其它路径,MAC3评估出另一条路径WLA3-WLA7,数据发送成功。此时MAC1、MAC3、MAC7中会记录此条路径为最佳路径,MAC1和MAC7通信时使用此条路径。
本发明实施例通过两个地址分别针对有线通信方式和无线无线通信方式,创建两个路由表项进行网络管理,二者互不干扰。数据发送前要根据两个网络的路径长度、数据长度等信息进行评估,找出最优路径,将数据从原节点发送到目标节点。同时当网络拥堵时,双地址灵活切换,提高数据的转发效率。
以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。