数据传输方法、第一设备及第二设备与流程

文档序号:11811736阅读:236来源:国知局
数据传输方法、第一设备及第二设备与流程

本发明涉及通信领域,具体地,涉及一种数据传输方法、第一设备及第二设备。



背景技术:

随着互联网的日益发展,传统通信领域的二进制编码方式以及TLV(Type,Length,Value)由于缺乏灵活性和扩展性,慢慢的被比较灵活的JSON和XML等key-value格式代替。但key-value格式的传输需要提前约定规则,不是特别灵活,不能适应上层业务的快速变化。

在现有通信方式中,双方进行通信的时候就需要提前约定传输规则,开发者需要根据所约定的传输规则来提供通信协议。

例如,现有的key-value格式的传输(如JSON和XML)需要提前约定传输规则,这种数据传输方式缺乏灵活性,因而无法满足上层业务的快速变化。

在现有技术中,通信双方的A和B,A方如果需要改变数据包中的一个字段,则为了实现该字段的改变,开发者需要针对A方和B方进行代码重写以便修改通信协议。这导致数据传输缺乏灵活,进而导致传输效率降低。



技术实现要素:

本发明的目的是提供一种数据传输方法、第一设备及第二设备,该数据传输方法、第一设备及第二设备能够提高数据传输的灵活性并提高数据传输的效率。

为了实现上述目的,本发明提供一种数据传输方法,所述数据传输方法包括:根据基于传输规则的通信协议发送数据;以及在所述通信协议需要改变的情况下:基于规则传输格式发送新的传输规则;基于所述新的传输规则调整通信协议;及基于经调整的通信协议发送数据。

优选地,所述基于规则传输格式发送新的传输规则包括:发送规则传输命令;以及接收对所述规则传输命令的应答,并响应于该应答,基于规则传输格式发送新的传输规则。

优选地,所述基于所述新的传输规则调整通信协议包括:接收对所述新的传输规则的应答;以及响应于对所述新的传输规则的应答,基于所述新的传输规则调整通信协议。

优选地,所述数据传输为二进制化的key-value传输格式。

优选地,所述新的传输规则包括键值对的增加和/或键值对的修改。

本发明的还提供一种数据传输方法,所述数据传输方法包括:根据基于传输规则的通信协议接收数据;以及在所述通信协议需要改变的情况下:基于规则传输格式接收新的传输规则;基于所述新的传输规则调整通信协议;及基于经调整的通信协议接收数据。

优选地,在基于规则传输格式接收新的传输规则之前所述数据传输方法还包括:接收规则传输命令;以及发送响应于所述规则传输命令的应答。

优选地,所述数据传输方法还包括:发送响应于所述新的传输规则的应答。

优选地,所述数据传输为二进制化的key-value传输格式。

优选地,所述新的传输规则包括键值对的增加和/或键值对的修改。

相应地,本发明还提供一种用于传送数据的第一设备,所述第一设备包括:发送模块,用于根据基于传输规则的通信协议发送数据,并用于在所述通信协议需要改变的情况下,基于规则传输格式发送新的传输规则;以及处理模块,用于基于所述新的传输规则调整通信协议。

优选地,所述第一设备还包括接收模块,所述发送模块还用于发送所述规则传输命令;所述接收模块用于接收对所述规则传输命令的应答,以及所述发送模块用于响应于所述应答,基于规则传输格式发送新的传输规则。

优选地,所述第一设备还包括接收模块,所述接收模块用于接收对所述新的传输规则的应答;以及所述处理模块用于:响应于对所述新的传输规则的应答,基于所述新的传输规则调整通信协议。

优选地,所述数据传输为二进制化的key-value传输格式。

优选地,所述新的传输规则包括键值对的增加和/或键值对的修改。

本发明还提供一种用于接收数据的第二设备,所述第二设备包括:接收模块,用于根据基于传输规则的通信协议接收数据,并用于在所述通信协议需要改变的情况下,基于规则传输格式接收新的传输规则;以及处理模块,用于基于所述新的传输规则调整通信协议。

优选地,所述第二设备还包括:发送模块,所述接收模块还用于接收规则传输命令;所述发送模块用于发送响应于所述规则传输命令的应答。

优选地,所述第二设备还包括:发送模块,用于发送响应于所述新的传输规则的应答。

优选地,所述数据传输为二进制化的key-value传输格式。

优选地,所述新的传输规则包括键值对的增加和/或键值对的修改。

通过上述技术方案,所述通信协议需要改变的情况下,基于规则传输格式发送新的传输规则,基于所述新的传输规则调整通信协议,及基于经调整的通信协议发送数据。如此能够避开发商对通信协议的修改,提高了数据传输的灵活性并提高数据传输的效率。

本发明的其它特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:

图1是根据本发明一种实施方式提供的数据传输方法的流程图;

图2是根据本发明一种实施方式提供的发送新的传输规则的流程图;

图3是根据本发明另一种实施方式提供的数据传输方法的流程图;

图4是根据本发明一种实施方式的数据传输方法的流程图;

图5是根据本发明另一种实施方式提供的数据传输方法的流程图;

图6是根据本发明一种实施方式提供的用于传送数据的第一设备的结构示意图;以及

图7是根据本发明一种实施方式提供的用于接收数据的第二设备的结构示意图。

具体实施方式

以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。

图1是根据本发明一种实施方式提供的数据传输方法的流程图,该传输方法可以在发送方执行。如图1所示,本发明提供的数据传输方法可以包括以下步骤。

在步骤11处,根据基于传输规则的通信协议发送数据,设备之间进行通信需要基于通信协议来进行,该通信协议可以基于预定的传输规则。

现有传输格式包括:纯二级制格式,TLV格式,JSON格式,XML格式等。其中,二进制格式及TLV格式缺乏灵活性和扩展性;而JSON格式和XML格式传输荷载过小。因此,虽然二进制编码方式以及TLV由于缺乏灵活性和扩展性,慢慢的被比较灵活的JSON格式和XML代替,但是由于JSON和XML格式的编码需要较大的内存和较大的传输带宽,使其不适合用在资源和带宽非常紧张的zigbee、zwave、blutooth和wifi等模组中,因而在数据传输之前,发送方可以对JSON格式和XML格式的传输数据进行二进制化,接收方可以根据通信协议对接收到的数据进行反二进制化。作为示例性的,对于JSON格式,按照最简单的形式,其可以按照key-value(键值对)的形式来表示:{"性别":"女"},但是这种传输格式需要较大的内存和较大的宽带,因此可以对其进行二进制化。例如,通信双方可以提前约定传输规则,如双方可以设置传输规则表,该传输规则表中可以存储通信内容及对应的不同二进制值。其中“性别”可以对应于二进制值“0000 0001”,“女”可以对应于二进制值“01”,如此上述key-value可以表示为:{"0000 0001":"01"},通信协议可以基于上述传输规则来设置,如此既能够增加灵活性和扩展性,又能降低对内存和传输带宽的需求。

在所述通信协议需要改变的情况下:在步骤12处,基于规则传输格式发送新的传输规则;例如,需要将表示“性别”的二进制值修改为“0000 0010”或者将表示“女”的二进制值修改为“00”,基于规则传输格式向接收方发送修改的内容;在步骤13处,基于所述新的传输规则调整通信协议;例如,接收方基于所接收到的新的传输规则来更新传输规则表,如用将表示“性别”的二进制值“0000 0001”修改成“0000 0010”,或将表示“女”的二进制值“01”修改成“00”;及在步骤14处,基于经调整的通信协议发送数据。

如此能够避开发商对通信协议的修改,提高了数据传输的灵活性并提高数据传输的效率。

图2是根据本发明另一种实施方式提供的发送新的传输规则的流程图。如图2所示,所述基于规则传输格式发送新的传输规则可以包括:在步骤121处,发送规则传输命令,例如预先约定规则传输命令,在需要修改传输规则时,发送规则传输命令,以提示接收方传输规则需要改变,并将发送新的传输规则;在步骤122处,接收对所述规则传输命令的应答,例如,接收方在接收到规则传输命令后,可以向发送方发送相应的应答消息,以便发送方发送传输规则;在步骤123处,响应于该应答,基于规则传输格式发送新的传输规则。如此能够保证通信双方对传输规则的同一,提高了通信的可靠性。

另外,在一种实施例中,所述基于所述新的传输规则调整通信协议可以包括:接收对所述新的传输规则的应答;以及响应于对所述新的传输规则的应答,基于所述新的传输规则调整通信协议。如此能够保证通信双方具有相同的通信协议,避免其中一方未针对新的传输规则修改通信协议。

如上所述,所述数据传输可以但不限于为二进制化的key-value传输格式。其中,所述新的传输规则包括键值对的增加和/或键值对的修改。

例如,当需要增加数据“籍贯”的情况下,可以基于规则传输格式来与接收方约定增加“籍贯”的二进制值“0001 0000”,并增加相应的籍贯的二进制值,如北京对应于二进制值“0001”,上海对应于二进制值“0010”,等等;当然也可以如上所述来修改键值对。

以下将参考图3来详细描述本发明,但是应该注意的是,本发明并不限制于此。在该实施方式中,通信双方可以为但不限于手机客户端和网关客户端,图3中数据传输方法可以由网关客户端来执行。

在需要调整传输规则的情况下,如图3所示,在步骤31处,发送规则传输命令,以通知接收方将要对传输规则进行改变;在步骤32处,接收对所述规则传输命令的应答,以确定接收方能够接收到传输规则;在步骤33处,响应于规则传输命令的应答,基于规则传输格式发送新的传输规则,例如增加新的键值对或修改已有键值对;在步骤34处,接收对所述新的传输规则的应答,以确定接收方已经接收到新的传输规则;在步骤35处,响应于对所述新的传输规则的应答,基于所述新的传输规则调整通信协议,也就是说在接收方接收到新的传输规则或接收方已经基于新的传输规则调整通信协议之后,发送方调整通信协议,以确保双发使用的通信协议是相同的。

本发明的另一方面还提供了一种数据传输方法,该传输方法可以在接收方执行。图4是根据本发明一种实施方式的数据传输方法的流程图。

如图4所示,本发明提供的可在接收方执行的数据传输方法可以包括以下步骤。

在步骤41处,根据基于传输规则的通信协议接收数据设备之间进行通信需要基于通信协议来进行,该通信协议可以基于预定的传输规则。

现有传输格式包括:纯二级制格式,TLV格式,JSON格式,XML格式等。如上所述,二进制格式及TLV格式缺乏灵活性和扩展性;而JSON格式和XML格式传输荷载过小。因此,发送方可以对JSON格式和XML格式的传输数据进行二进制化,接收方可以根据通信协议对接收到的数据进行反二进制化。具体细节如上所述,于此不再赘述。如此既能够增加灵活性和扩展性,又能降低对内存和传输带宽的需求。

在所述通信协议需要改变的情况下:在步骤42处,基于规则传输格式接收新的传输规则,例如接收到的数据包中,经解析得出将一个key的二进制值“0000 0001”修改为“0000 0010”;在步骤43处,基于所述新的传输规则调整通信协议,例如可以查找传输规则表找出之前约定的二进制值“0000 0001”表示的是“性别”,则可以基于接收到的新的传输规则,将“性别”的二进制值修改为“0000 0010”;及在步骤44处,基于经调整的通信协议接收数据。

如此能够避开发商对通信协议的修改,提高了数据传输的灵活性并提高数据传输的效率。

为了确保通信双方能够基于同一传输规则调整通信协议,以提高通信的可靠性,在基于规则传输格式接收新的传输规则之前所述数据传输方法还可以包括:接收规则传输命令;以及发送响应于所述规则传输命令的应答。

为了进一步确保通信双方通信协议的同步性,接收方在接收到新的传输规则或基于新的传输规则调整通信协议之后,向发送方进行确认应答,因此所述数据传输方法还可以包括:发送响应于所述新的传输规则的应答。

如上所述,所述数据传输为二进制化的key-value传输格式。其中,所述新的传输规则包括键值对的增加和/或键值对的修改。

以下将参考图5来详细描述本发明,但是应该注意的是,本发明并不限制于此。在该实施方式中,通信双方可以为但不限于手机客户端和网关客户端,图5中数据传输方法可以由手机客户端来执行。

在需要调整传输规则的情况下,如图5所示,在步骤51处,接收规则传输命令,以准备接收新的传输规则;在步骤52处,发送响应于所述规则传输命令的应答,以通知发送方已做好接收新的传输规则的准备;在步骤53处,基于规则传输格式接收响应于规则传输命令应答的新的传输规则,例如增加新的键值对或修改已有键值对;在步骤54处,发送响应于所述新的传输规则的应答,以通知发送方已接收到新的传输规则;在步骤55处,基于所述新的传输规则调整通信协议。当然上述步骤并不用于限定执行顺序,例如步骤54可以与步骤55互换,也就是说在接收方已经基于新的传输规则调整通信协议之后,发送响应于所述新的传输规则的应答,以确保双发使用的通信协议是相同的。

相应地,本发明还提供一种用于传送数据的第一设备,图6是根据本发明一种实施方式提供的用于传送数据的第一设备的结构示意图。如图6所示,所述第一设备可以包括:发送模块61,用于根据基于传输规则的通信协议发送数据,并用于在所述通信协议需要改变的情况下,基于规则传输格式发送新的传输规则;以及处理模块62用于基于所述新的传输规则调整通信协议。如此能够避开发商对通信协议的修改,提高了数据传输的灵活性并提高数据传输的效率。

如图6所示,所述第一设备还可以包括接收模块63,所述发送模块61还用于发送所述规则传输命令;所述接收模块63用于接收对所述规则传输命令的应答,以及所述发送模块61用于响应于所述应答,基于规则传输格式发送新的传输规则。如此能够保证通信双方对传输规则的同一,提高了通信的可靠性。

如图6所示,所述第一设备还包括接收模块63,所述接收模块61用于接收对所述新的传输规则的应答;以及所述处理模62块用于:响应于对所述新的传输规则的应答,基于所述新的传输规则调整通信协议。如此能够保证通信双方具有相同的通信协议,避免其中一方未针对新的传输规则修改通信协议。

在本发明一种实施方式中,在需要调整传输规则的情况下,发送模块61发送规则传输命令,以通知接收方将要对传输规则进行改变;接收模块63接收对所述规则传输命令的应答,以便确定接收方能够接收到传输规则;之后发送模块61再响应于规则传输命令的应答,基于规则传输格式发送新的传输规则,例如增加新的键值对或修改已有键值对;接收模块63接收对所述新的传输规则的应答,以确定接收方已经接收到新的传输规则;在确定接收方已经接收到新的传输规则之后,处理模块62响应于对所述新的传输规则的应答,基于所述新的传输规则调整通信协议,也就是说在接收方接收到新的传输规则或接收方已经基于新的传输规则调整通信协议之后,发送方调整通信协议,以确保双发使用的通信协议是相同的。

有关第一设备的具体细节及益处与上述发送方的数据传输方法的细节及益处相同,于此不再赘述。

相应地,本发明还提供一种用于接收数据的第二设备,图7是根据本发明一种实施方式提供的用于接收数据的第二设备的结构示意图。如图7所示,所述第二设备可以包括:接收模块71,用于根据基于传输规则的通信协议接收数据,并用于在所述通信协议需要改变的情况下,基于规则传输格式接收新的传输规则;以及处理模块72,用于基于所述新的传输规则调整通信协议。

如图7所示,所述第二设备还可以包括:发送模块73,所述接收模块71还用于接收规则传输命令;所述发送模块73用于发送响应于所述规则传输命令的应答。如此能够避开发商对通信协议的修改,提高了数据传输的灵活性并提高数据传输的效率。

如图7所示,所述第二设备还可以包括:发送模块73,用于发送响应于所述新的传输规则的应答。

在本发明一种实施方式中,在需要调整传输规则的情况下,接收模块71接收规则传输命令,以准备接收新的传输规则;发送模块73发送响应于所述规则传输命令的应答,以通知发送方已做好接收新的传输规则的准备;接收模块71基于规则传输格式接收响应于规则传输命令应答的新的传输规则,例如增加新的键值对或修改已有键值对;发送模块73发送响应于所述新的传输规则的应答,以通知发送方已接收到新的传输规则;处理模块72基于所述新的传输规则调整通信协议。

有关第二设备的具体细节及益处与上述接收方的数据传输方法的细节及益处相同,于此不再赘述。

以上结合附图详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种简单变型,这些简单变型均属于本发明的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本发明对各种可能的组合方式不再另行说明。

此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1