数据通信的方法及相关设备技术

技术编号:18951212 阅读:19 留言:0更新日期:2018-09-15 13:26
本发明专利技术公开一种数据通信的方法及相关设备。该方法应用于通信的两端中任意一端,包括:获取对端传输的二进制数据;其中,二进制数据由对端将通用程序语言第一文件序列化生成,通用程序语言第一文件由对端将记录待传输数据、按照据描述语言描述的第一通信协议文件转化生成;通过通用程序语言第二文件将二进制数据反序列化,得到反序列化生成的数据;其中,通用程序语言第二文件通过按照数据描述语言描述的第二通信协议转化生成;第一通信协议文件和第二通信协议文件中:修饰符为可选字段修饰符,数据类型为不限定大小的数据类型。本发明专利技术提供的技术方案,通过借助数据描述语言实现对通信协议的开放性描述,能提高不同版本的通信协议之间的兼容性。

Data communication method and related equipment

The invention discloses a data communication method and related equipment. The method is applied to either end of the communication, including acquiring the binary data transmitted to the other end, where the binary data is generated by serializing the first file of the general programming language from the other end, and the first file of the general programming language is the first communication protocol described by the description language. The data generated by deserialization is obtained by deserializing the binary data through the second file of the general program language. The second file of the general program language is generated by transforming the second communication protocol described by the data description language. The first communication protocol file and the second communication protocol file are repaired. Decorators are optional field modifiers, and data types are data types that are not limited to size. The technical scheme provided by the invention can improve the compatibility between different versions of communication protocols by realizing the open description of communication protocols with the aid of data description language.

【技术实现步骤摘要】
数据通信的方法及相关设备
本专利技术涉及计算机
,尤其涉及一种数据通信的方法及相关设备。
技术介绍
数据通信的方式可以为本地终端与远程服务器之间的网络通信,或者本地终端中不同的进程之间的IPC(Inter-ProcessCommunication,进程间通信)。进程间通信是指至少两个进程间传送数据或信号的一种技术。其中,进程是计算机系统分配资源的最小单位,每个进程都有自己的一部分独立的系统资源,不同进程各自对应的系统资源彼此隔离,为了能使不同的进程相互访问资源并进行协调工作,才有了进程间通信。目前的技术中,不论是本地终端与远程服务器之间的网络通信,还是本地终端中不同的进程之间的通信,通信双方一般都约定相同的通信协议,以实现通信双方之间的有效通信。但是,随着业务的发展变化,不可避免的需要对通信协议进行升级,而通信双方未必能够对通信协议实现同步升级,从而出现通信双方中的一方的通信协议已经升级,而另一方的通信协议未升级的情况,此时,由于二者的通信协议不同,通信双方对传输的数据内容会产生不同的理解,无法实现通信双方之间的有效通信,即兼容性差,容易产生不良后果。
技术实现思路
有鉴于此,本专利技术实施例提供了一种数据通信的方法及相关设备,通过借助数据描述语言实现对通信协议的开放性描述,从而能够有效提高不同版本的通信协议之间的兼容性。为实现上述目的,本专利技术实施例提供如下技术方案:一种数据通信的方法,应用于通信的两端中任意一端,所述方法包括:获取对端传输的二进制数据;其中,所述二进制数据由对端将通用程序语言第一文件序列化生成,所述通用程序语言第一文件由对端将记录待传输数据、按照据描述语言描述的第一通信协议文件转化生成;通过通用程序语言第二文件将所述二进制数据反序列化,得到反序列化生成的数据;其中,所述通用程序语言第二文件通过按照所述数据描述语言描述的第二通信协议转化生成;所述第一通信协议文件和所述第二通信协议文件中:修饰符为可选字段修饰符,数据类型为不限定大小的数据类型。一种数据通信的方法,应用于通信的两端中任意一端,所述方法包括:序列化通用程序语言第一文件,得到序列化生成的二进制数据;其中,所述通用程序语言第一文件,由记录待传输数据、按照数据描述语言描述的第一通信协议文件转化生成;向对端传输所述二进制数据,以使对端读取所述二进制数据,通过通用程序语言第二文件将所述二进制数据反序列化,得到反序列化生成的数据;其中,所述通用程序语言第二文件通过按照所述数据描述语言描述的第二通信协议文件转化生成;所述第一通信协议文件和所述第二通信协议文件中:修饰符为可选字段修饰符,数据类型为不限定大小的数据类型。一种数据通信的装置,应用于通信的两端中任意一端,所述装置包括:二进制数据获取模块,用于获取对端传输的二进制数据;其中,所述二进制数据由对端将通用程序语言第一文件序列化生成,所述通用程序语言第一文件由对端将记录待传输数据、按照据描述语言描述的第一通信协议文件转化生成;反序列化模块,用于通过通用程序语言第二文件将所述二进制数据反序列化,得到反序列化生成的数据;其中,所述通用程序语言第二文件通过按照所述数据描述语言描述的第二通信协议转化生成;所述第一通信协议文件和所述第二通信协议文件中:修饰符为可选字段修饰符,数据类型为不限定大小的数据类型。一种数据通信的装置,应用于通信的两端中任意一端,所述装置包括:序列化模块,用于序列化所述通用程序语言第一文件,得到序列化生成的二进制数据;其中,所述通用程序语言第一文件,由记录待传输数据、按照数据描述语言描述的第一通信协议文件转化生成;二进制数据发送模块,用于向对端传输所述二进制数据,以使对端读取所述二进制数据,通过通用程序语言第二文件将所述二进制数据反序列化,得到反序列化生成的数据;其中,所述通用程序语言第二文件通过按照所述数据描述语言描述的第二通信协议文件转化生成;所述第一通信协议文件和所述第二通信协议文件中:修饰符为可选字段修饰符,数据类型为不限定大小的数据类型。一种智能设备,包括:处理器和存储器,所述处理器与存储器通过通信总线相连接:其中,所述处理器,用于调用并执行所述存储器中存储的程序;所述存储器,用于存储程序,所述程序至少用于执行上述所述的数据通信的方法。一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上述所述的数据通信的方法的各个步骤。经由上述的技术方案可知,与现有技术相比,本专利技术提供了一种数据通信的方法,应用于通信的两端中任意一端,首先获取对端传输的二进制数据,其中,所述二进制数据由对端将通用程序语言第一文件序列化生成,而所述通用程序语言第一文件由对端将记录待传输数据、按照据描述语言描述的第一通信协议文件转化生成,然后通过通用程序语言第二文件将所述二进制数据反序列化,得到反序列化生成的数据,其中,所述通用程序语言第二文件通过按照所述数据描述语言描述的第二通信协议转化生成,所述第一通信协议文件和所述第二通信协议文件中:修饰符为可选字段修饰符,数据类型为不限定大小的数据类型。当第一通信协议和第二通信协议不同时,这两个版本的通信协议中:即使其中一个版本缺少某字段,由于该字段是可选字段修饰符描述的,因此,该字段的缺失是可以接受的,不影响其他字段的识别;即使同一数据类型描述的数据大小不同,由于数据类型为不限定大小的数据类型,因此,数据大小的变化也是可以接受的,不影响对其识别。因此,当第一通信协议和第二通信协议不同时,二者共有的数据结构部分的数据内容的通信是不受影响的,也就是说,本专利技术提供的技术方案通过借助数据描述语言实现对通信协议的开放性描述,从而能够有效提高不同版本的通信协议之间的兼容性。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本专利技术实施例提供的一种数据通信的系统的结构图;图2为本专利技术实施例提供的一种数据通信的方法的信令流程图;图3为本专利技术实施例提供的另外一种数据通信的系统的结构图;图4为本专利技术实施例提供的另外一种数据通信的方法的信令流程图;图5为本专利技术实施例提供的一种数据通信的方法的流程图;图6为本专利技术实施例提供的另外一种数据通信的方法的流程图;图7为本专利技术实施例提供的一种数据通信的装置的结构图;图8为本专利技术实施例提供的另外一种数据通信的装置的结构图;图9为本专利技术实施例提供的一种智能设备的硬件结构图;图10为本专利技术实施例提供的一种优化游戏运行客户端和游戏客户端进程间通信的方法的信令流程图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本专利技术作进一步详细的说明。实施例本专利技术实施例提供的技术方案,可以应用于本地终端和远程服务器之间的网络本文档来自技高网...

【技术保护点】
1.一种数据通信的方法,其特征在于,应用于通信的两端中任意一端,所述方法包括:获取对端传输的二进制数据;其中,所述二进制数据由对端将通用程序语言第一文件序列化生成,所述通用程序语言第一文件由对端将记录待传输数据、按照据描述语言描述的第一通信协议文件转化生成;通过通用程序语言第二文件将所述二进制数据反序列化,得到反序列化生成的数据;其中,所述通用程序语言第二文件通过按照所述数据描述语言描述的第二通信协议转化生成;所述第一通信协议文件和所述第二通信协议文件中:修饰符为可选字段修饰符,数据类型为不限定大小的数据类型。

【技术特征摘要】
1.一种数据通信的方法,其特征在于,应用于通信的两端中任意一端,所述方法包括:获取对端传输的二进制数据;其中,所述二进制数据由对端将通用程序语言第一文件序列化生成,所述通用程序语言第一文件由对端将记录待传输数据、按照据描述语言描述的第一通信协议文件转化生成;通过通用程序语言第二文件将所述二进制数据反序列化,得到反序列化生成的数据;其中,所述通用程序语言第二文件通过按照所述数据描述语言描述的第二通信协议转化生成;所述第一通信协议文件和所述第二通信协议文件中:修饰符为可选字段修饰符,数据类型为不限定大小的数据类型。2.根据权利要求1所述的方法,其特征在于,所述通信的两端为通过网络通信的本地终端和远程服务器。3.根据权利要求1所述的方法,其特征在于,所述通信的两端为本地终端内通过进程间通信的第一客户端和第二客户端;则所述获取对端传输的二进制数据,包括:获取对端传输至共享内存中的二进制数据。4.根据权利要求3所述的方法,其特征在于,所述第一客户端为优化游戏运行客户端,所述第二客户端为游戏客户端,所述方法应用于所述游戏客户端;所述待传输数据包括:优化游戏运行的指示信息。5.根据权利要求1~4任一项所述的方法,其特征在于,所述数据描述语言为ProtocolBuffers,所述可选字段修饰符为optional。6.一种数据通信的方法,其特征在于,应用于通信的两端中任意一端,所述方法包括:序列化通用程序语言第一文件,得到序列化生成的二进制数据;其中,所述通用程序语言第一文件,由记录待传输数据、按照数据描述语言描述的第一通信协议文件转化生成;向对端传输所述二进制数据,以使对端读取所述二进制数据,通过通用程序语言第二文件将所述二进制数据反序列化,得到反序列化生成的数据;其中,所述通用程序语言第二文件通过按照所述数据描述语言描述的第二通信协议文件转化生成;所述第一通信协议文件和所述第二通信协议文件中:修饰符为可选字段修饰符,数据类型为不限定大小的数据类型。7.根据权利要求6所述的方法,其特征在于,所述通信的两端为本地终端内通过进程间通信的第一客户端和第二客户端;所述向对端传输所述二进制数据,以使对端读取所述二进制数据,通过通用程序语言第二文件将所述二进制数据反序列化,得到反序列化生成的数据,包括:将所述二进制数据传输至共享内存,以使对端从所述共享内存中读取所述二进制数据,通过通用程序语言第二文件将所述二进制数据反序列化,得到反序列化生成的数据。8.根据权利要求7所述的方法,其特征在于,所述第一客户端为优化游戏运行客户端,所述第二客户端为游戏客户端,所述方法应用于所述优化游戏运行客户端;所述待传输数据包...

【专利技术属性】
技术研发人员:吴广文
申请(专利权)人:腾讯科技成都有限公司
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1