CN108023920B - 一种数据包传输方法、设备及应用接口 - Google Patents

一种数据包传输方法、设备及应用接口 Download PDF

Info

Publication number
CN108023920B
CN108023920B CN201610964087.3A CN201610964087A CN108023920B CN 108023920 B CN108023920 B CN 108023920B CN 201610964087 A CN201610964087 A CN 201610964087A CN 108023920 B CN108023920 B CN 108023920B
Authority
CN
China
Prior art keywords
data packet
version information
field
fields
contained
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610964087.3A
Other languages
English (en)
Other versions
CN108023920A (zh
Inventor
李向阳
默晓明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201610964087.3A priority Critical patent/CN108023920B/zh
Publication of CN108023920A publication Critical patent/CN108023920A/zh
Application granted granted Critical
Publication of CN108023920B publication Critical patent/CN108023920B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • H04L67/5651Reducing the amount or size of exchanged application data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Abstract

本申请公开了一种数据包传输方法、设备及应用接口,包括:接收应用客户端发送的数据包获取请求,并确定所述数据包获取请求中包含的版本信息对应的数据包;根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,对确定的所述数据包中包含的字段进行筛选,并将筛选后的所述数据包传输给所述应用客户端。针对接收到的数据包获取请求,在返回数据包之前,对待返回的数据包中包含的字段进行筛选,使数据包中包含的字段与数据包获取请求中包含的版本信息相匹配,达到了缩小数据包容量的目的,减少了数据包中的非必要字段,进而加快了数据包传输速率,有效提升了用户对数据包传输的用户体验。

Description

一种数据包传输方法、设备及应用接口
技术领域
本申请涉及互联网信息处理技术领域,尤其涉及一种数据包传输方法、设备及应用接口。
背景技术
随着科学技术的发展,出现了越来越多的应用客户端。通过这些应用客户端可以为不同用户提供各种各样的网络服务。
然而,目前应用客户端的版本的迭代周期越来越短(例如:有些应用客户端的版本迭代周期不足15天,即每15天更新一个版本),同时遵循将业务逻辑部署至服务器侧的原则,在服务器侧部署一个API(Application Programming Interface,应用程序接口),由该API对外提供应用客户端的数据包。
为了满足新的业务需求以及兼容应用客户端的多个不同版本,该API接口在向外输出数据包,不断在输出的数据包中增加新的字段,然而,这些新的字段对于低版本的的应用客户端来说毫无用处,这样,使得不同版本的应用客户端获取到的数据包容量都比较大,不仅在数据包传输时造成系统资源的浪费,而且还使得用户体验比较差。
发明内容
有鉴于此,本申请实施例提供了一种数据包传输方法、设备及应用接口,用于解决现有技术中数据包在传输过程中造成系统资源浪费的问题。
本申请实施例提供一种数据包传输方法,包括:
接收应用客户端发送的数据包获取请求,并确定所述数据包获取请求中包含的版本信息对应的数据包;
根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,对确定的所述数据包中包含的字段进行筛选,并将筛选后的所述数据包传输给所述应用客户端。
本申请实施例还提供一种数据包传输设备,包括:
接收单元,接收应用客户端发送的数据包获取请求;
确定单元,确定所述数据包获取请求中包含的版本信息对应的数据包;
筛选单元,根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,对确定的所述数据包中包含的字段进行筛选;
传输单元,将筛选后的所述数据包传输给所述应用客户端。
本申请实施例还提供了一种应用接口,包括:信号输入单元,处理单元和信号输出单元,其中:
信号输入单元,接收应用客户端发送的数据包获取请求,并确定所述数据包获取请求中包含的版本信息对应的数据包;
处理单元,根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,对确定的所述数据包中包含的字段进行筛选;
信号输出单元,将筛选后的所述数据包传输给所述应用客户端。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
通过接收应用客户端发送的数据包获取请求,并确定所述数据包获取请求中包含的版本信息对应的数据包;根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,对确定的所述数据包中包含的字段进行筛选,并将筛选后的所述数据包传输给所述应用客户端。针对接收到的数据包获取请求,在返回数据包之前,对待返回的数据包中包含的字段进行筛选,使数据包中包含的字段与数据包获取请求中包含的版本信息相匹配,达到了缩小数据包容量的目的,减少了数据包中的非必要字段,进而加快了数据包传输速率,有效提升了用户对数据包传输的用户体验。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种数据包传输方法的流程示意图;
图2为本申请实施例提供的一种数据包传输方法的流程示意图;
图3为本申请实施例提供的一种数据包传输方法的场景示意图;
图4为本申请实施例提供的一种数据包传输方法的流程示意图;
图5为本申请实施例提供的一种数据包传输方法的场景示意图;
图6为本申请实施例提供的一种数据包传输方法的流程示意图;
图7为本申请实施例提供的一种数据包传输设备的结构示意图;
图8为本申请实施例提供的一种应用接口的结构示意图。
具体实施方式
为了实现本申请的目的,本申请实施例提供了一种数据包传输方法、设备及应用接口,通过接收应用客户端发送的数据包获取请求,并确定所述数据包获取请求中包含的版本信息对应的数据包;根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,对确定的所述数据包中包含的字段进行筛选,并将筛选后的所述数据包传输给所述应用客户端。针对接收到的数据包获取请求,在返回数据包之前,对待返回的数据包中包含的字段进行筛选,使数据包中包含的字段与数据包获取请求中包含的版本信息相匹配,达到了缩小数据包容量的目的,减少了数据包中的非必要字段,进而加快了数据包传输速率,有效提升了用户对数据包传输的用户体验。
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
实施例1
图1为本申请实施例提供的一种数据包传输方法的流程示意图。所述方法可以如下所示。
步骤101:接收应用客户端发送的数据包获取请求,并确定所述数据包获取请求中包含的版本信息对应的数据包。
在本申请实施例中,由于应用软件的更新速度比较快,应用客户端检测到服务器中发布的应用软件的版本已发生更新,或者应用客户端所使用的应用软件的版本与服务器发布的应用软件的最新版本不一致,此时应用客户端可以向服务器发送数据包获取请求,那么应用客户端可以在发送的数据包获取请求中携带需要获取的数据包的版本信息。
例如:应用客户端在与服务器建立数据连接时,向服务器发送应用软件版本检测信息(或者服务器向应用客户端发送应用软件版本检测信息),此时,应用客户端可以根据服务器发送的应用软件版本信息,确定应用客户端所使用的应用软件的版本信息是否与服务器中发布的最新的应用软件的版本信息是否一致,若不一致,此时,应用客户端向服务器发送数据包获取请求,该数据包获取请求中包含应用软件的最新版本信息。
当服务器接收到客户端发送的数据包获取请求时,从数据包获取请求中解析出请求获取的应用软件的版本信息,根据解析得到的版本信息确定与该版本信息对应的数据包。
例如:若该数据包获取请求中解析得到的应用版本信息为1.0.0.1,那么确定的与该版本信息对应的数据包为1.0.0.1对应的数据包,即版本1.0.0.1对应的应用软件安装包;
若该数据包获取请求中解析得到的应用版本信息为2.0.0.1,那么确定的与该版本信息对应的数据包为2.0.0.1对应的数据包,即版本2.0.0.1对应的应用软件安装包。
步骤102:根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,对确定的所述数据包中包含的字段进行筛选。
在本申请实施例中,在服务器中预先建立不同的版本信息与所述版本信息所适用的字段之间的映射关系,即对于应用软件的不同版本,每一个版本存在适用于该版本的必要字段,这样,可以建立该版本的版本信息与必要字段之间的映射关系,即可得到该应用软件的不同的版本信息与所述版本信息所适用的字段之间的映射关系。
例如:对于一个应用软件,随着该应用软件的版本的更新,在该应用软件的不同版本中所适用的字段也会发生变化,因此,针对一个应用软件可以建立不同的版本信息与所述版本信息所适用的字段之间的映射关系,这种映射关系可以通过表的形式存在,也可以通过其他形式存在。在本申请实施例中,如表1所示:
表1
版本信息 所适用的字段
版本1.0 字段A、字段B、字段C、字段D、字段E
版本1.0.0.1 字段A、字段B、字段C、字段D、字段E、字段F
版本2.0 字段B、字段C、字段D、字段E、字段F
版本3.0 字段C、字段D、字段E、字段F、字段G
从表1中可以看出,应用软件的版本1.0所适用的字段包含:字段A、字段B、字段C、字段D、字段E;应用软件的版本1.0.0.1所适用的字段包含:字段A、字段B、字段C、字段D、字段E、字段F;应用软件的版本2.0所适用的字段包含:字段B、字段C、字段D、字段E、字段F;应用软件的版本3.0所适用的字段包含:字段C、字段D、字段E、字段F、字段G。
需要说明的是,对于同一个应用软件,存在一个字段可以适用于多个版本的可能,也存在一个字段只适用于一个版本的可能。那么建立不同的版本信息与所述版本信息所适用的字段之间的映射关系存在一对多的情况,也存在一对一的情况,这里不做具体限定。
进一步地,建立不同的版本信息与所述版本信息所适用的字段之间的映射关系的具体实现方式包括但不限于以下两种:
第一种方式:
确定每一个字段所适用的应用软件的版本;根据不同字段所适用的应用软件的版本,建立不同的版本信息与所述版本信息所适用的字段之间的映射关系。
例如:以表1中所示的内容为例,字段A,既可以适用在版本1.0中,也可以适用在版本1.0.0.1中,那么分别建立版本1.0与字段A之间的映射关系,以及建立版本1.0.0.1与字段A之间的映射关系。
第二种方式:
确定每一个字段所适用的应用软件的起始版本和终止版本;根据确定的不同字段所适用的应用软件的起始版本和终止版本,建立字段与所适用的起始版本、终止版本之间的映射关系。
进而根据建立的字段与所适用的起始版本、终止版本之间的映射关系,确定不同的版本信息与所述版本信息所适用的字段之间的映射关系。
例如:以表1中所示的内容为例,对于字段A,可以确定适用的版本信息为版本1.0和版本1.0.0.1,由此可见,字段A所适用的版本信息的起始版本为版本1.0,终止版本为版本1.0.0.1;
对于字段B,可以确定适用的版本信息为版本1.0、版本1.0.0.1以及版本2.0,由此可见,字段B所适用的版本信息的起始版本为版本1.0,终止版本为版本2.0;
对于字段C,可以确定适用的版本信息为版本1.0、版本1.0.0.1、版本2.0和版本3.0,由此可见,字段C所适用的版本信息的起始版本为版本1.0,终止版本为版本3.0;
对于字段D,可以确定适用的版本信息为版本1.0、版本1.0.0.1、版本2.0以及版本3.0,由此可见,字段D所适用的版本信息的起始版本为版本1.0,终止版本为版本3.0;
对于字段E,可以确定适用的版本信息为版本1.0、版本1.0.0.1、版本2.0以及版本3.0,由此可见,字段D所适用的版本信息的起始版本为版本1.0,终止版本为版本3.0;
对于字段F,可以确定适用的版本信息为版本1.0.0.1、版本2.0以及版本3.0,由此可见,字段D所适用的版本信息的起始版本为版本1.0,终止版本为版本3.0;
对于字段G,可以确定适用的版本信息为版本3.0,由此可见,字段D所适用的版本信息的起始版本为版本3.0,终止版本为空。
那么在本申请实施例中可以建立不同字段与所适用的版本信息之间的映射关系,以表2形式为例进行说明:
表2
字段 所适用的版本信息
字段A 【版本1.0,版本1.0.0.1】
字段B 【版本1.0、版本1.0.0.1、版本2.0】
字段C 【版本1.0、版本1.0.0.1、版本2.0、版本3.0】
字段D 【版本1.0、版本1.0.0.1、版本2.0、版本3.0】
字段E 【版本1.0、版本1.0.0.1、版本2.0、版本3.0】
字段F 【版本1.0.0.1、版本2.0、版本3.0】
字段G 【版本3.0,空】
从表2中可以看出,对于字段B,在应用软件开发时,确定该字段B可以在版本1.0至版本2.0中适用,那么确定该字段B所适用的起始版本为版本1.0,所适用的终止版本为版本2.0,即可建立字段B与【版本1.0,版本2.0】之间的映射关系。
需要说明的是,有些字段可以仅存在对应的起始版本,而无对应的终止版本,那么在建立字段与所适用的起始版本、终止版本之间的映射关系时,可以将终止版本视为空,即可理解为该字段从起始版本开始,一直适用于之后的任意一个版本。
这样,一旦确定所述数据包获取请求中包含的版本信息对应的数据包,那么可以利用建立的不同的版本信息与所述版本信息所适用的字段之间的映射关系,对确定的所述数据包中包含的字段进行筛选。
具体地,根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,确定与所述数据包获取请求中包含的版本信息匹配的字段集;
利用所述字段集对确定的所述数据包中包含的字段进行筛选。
需要说明的是,本申请实施例中所记载的字段集中可以包含一个字段,也可以包含多个字段,对于该字段集中包含多少个字段,在本申请实施例中不做具体限定。
可选地,根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,从字段数据库中,查找得到与所述数据包获取请求中包含的版本信息相匹配的字段集。
其中,所述字段数据库中包含各个字段以及所述字段所适用的版本信息。
需要说明的是,字段数据库可以是包含建立字段与所适用的起始版本、终止版本之间的映射关系的数据库,这样,对于一个数据包中包含的字段可以通过查找字段数据库的方式确定每一个字段所适用的起始版本与终止版本,进而确定适用于数据包获取请求中携带的版本信息的字段集。
例如:假设数据包获取请求中携带的版本信息为3.0.0.1;确定的数据包中包含5个字段。其中,字段1所适用的版本信息为【1.0.0.1,2.0.0.2】;字段2所适用的版本信息为【2.0.0.1,3.0.0.1】;字段3所适用的版本信息为【1.0.0.1,3.0.0.1】;字段4所适用的版本信息为【2.0.0.2,3.0.0.1】;字段5所适用的版本信息为【1.0.0.1,空】。
通过上述记载的方式,可以确定适用于版本信息3.0.0.1的字段包含字段2、字段3、字段4和字段5,即得到的字段集为【字段2、字段3、字段4、字段5】,字段1不适用于版本信息3.0.0.1,属于版本信息3.0.0.1对应的数据包中的冗余字段。
因此,在确定与所述数据包获取请求中包含的版本信息匹配的字段之后,可以利用所述字段信息中包含的字段名,对确定的所述数据包中包含的字段进行过滤,以过滤掉确定的所述字段集中尚未包含的字段,即过滤掉字段1,意味着过滤之后所述数据包中包含的字段为字段2、字段3、字段4和字段5。
可选地,在确定与所述数据包获取请求中包含的版本信息匹配的字段之后,可以针对确定的所述数据包中包含的字段,执行以下操作:
将所述字段集中各个字段的字段名与确定的所述数据包中包含的字段的字段名进行比较;
若比较结果是字段名包含在所述数据包中但未包含在确定的所述字段集中,则从所述数据包中过滤掉所述字段名对应的字段。
例如:仍以上述事实为例,那么将过滤掉数据包中的字段1。
除此之外,在本申请实施例中,在对确定的所述数据包中包含的字段进行筛选,还可以按照以下方式执行:
根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,分析确定的所述数据包中包含的字段所对应的版本存活区间,所述版本存活区间用于表征所述字段所适用的版本信息;
根据所述版本存活区间和所述数据包获取请求中包含的版本信息,对所述数据包中包含的字段进行筛选。
需要说明的是,这里的版本存活区间可以理解为一个字段所适用的起始版本和终止版本。
即在确定与所述数据包获取请求中携带的版本信息对应的数据包时,确定数据包中包含的字段有哪些,进而根据预先确定的不同的版本信息与所述版本信息所适用的字段之间的映射关系,分析所述数据包中包含的字段所对应的版本存活区间。
例如:假设确定的数据包中包含5个字段,其中,字段1所对应的版本存活区间为【1.0.0.1,2.0.0.2】;字段2所对应的版本存活区间为【2.0.0.1,3.0.0.1】;字段3所对应的版本存活区间为【1.0.0.1,3.0.0.1】;字段4所对应的版本存活区间为【2.0.0.2,3.0.0.1】;字段5所对应的版本存活区间为【1.0.0.1,空】,如表3所示:
表3
字段 字段所对应的版本存活区间
字段1 【1.0.0.1,2.0.0.2】
字段2 【2.0.0.1,3.0.0.1】
字段3 【1.0.0.1,3.0.0.1】
字段4 【2.0.0.2,3.0.0.1】
字段5 【1.0.0.1,空】
此时,假设数据包获取请求中携带的版本信息为3.0.0.1,那么从表3中可以看出,只有字段1所对应的版本存活区间中不包含版本信息3.0.0.1,因此,将过滤掉版本存活区间不满足数据包获取请求中携带的版本信息为3.0.0.1的字段,即过滤掉字段1。
步骤103:将筛选后的所述待发送的数据包传输给所述应用客户端。
通过本申请实施例提供的技术方案,接收应用客户端发送的数据包获取请求,并确定所述数据包获取请求中包含的版本信息对应的数据包;根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,对确定的所述数据包中包含的字段进行筛选,并将筛选后的所述数据包传输给所述应用客户端。针对接收到的数据包获取请求,在返回数据包之前,对待返回的数据包中包含的字段进行筛选,使数据包中包含的字段与数据包获取请求中包含的版本信息相匹配,达到了缩小数据包容量的目的,减少了数据包中的非必要字段,进而加快了数据包传输速率,有效提升了用户对数据包传输的用户体验。
实施例2
基于同一个发明构思,图2为本申请实施例提供的一种数据包传输方法的流程示意图。所述方法可以如下所示。
步骤201:接收应用客户端发送的数据包获取请求,并确定所述数据包获取请求中包含的版本信息对应的数据包。
步骤202:获取所述数据包中包含的字段注解信息。
在本申请实施例中,所述字段注解信息中包含字段所适用版本信息的属性,即包含字段所适用的起始版本和终止版本。
在本申请实施例中,服务器可以为不同应用软件生成字段注解信息库,字段注解信息库中包含每一个应用软件所适用的字段以及该字段所适用版本信息的属性。
步骤203:利用所述字段注解信息和所述数据包获取请求中包含的版本信息,遍历所述数据包中包含的每一个字段,判断所述数据包对应的版本信息是否需要所述字段,若需要,则执行步骤204;否则,执行步骤205。
在本申请实施例中,判断所述数据包对应的版本信息是否需要所述字段的方式可以包括但不限于:
将所述字段的所适用版本信息的属性与所述数据包对应的版本信息进行比较,若所述字段的所适用版本信息的属性包含所述数据包对应的版本信息,则说明所述数据包对应的版本信息需要所述字段;若所述字段的所适用版本信息的属性未包含所述数据包对应的版本信息,则说明所述数据包对应的版本信息不需要所述字段。
步骤204:保留该字段,继续对下一个字段执行判断操作。
步骤205:过滤该字段,继续对下一个字段执行判断操作。
步骤206:在步骤203的遍历操作执行结束后,将过滤后的数据包发送给应用客户端。
图3为本申请实施例提供的一种数据包传输方法的场景示意图。
以上述实施例为基准,假设字段注解信息存储在后置拦截器中,那么后置拦截器在确定所述数据包获取请求中包含的版本信息对应的数据包时,可以利用字段注解信息对数据包中包含的字段进行过滤,使得返回给应用客户端的数据中不包含非必要字段,降低数据包大小,缩短应用接口的响应的时间,提升用户体验。
实施例3
图4为本申请实施例提供的一种数据包传输方法的流程示意图。所述方法可以如下所示。
步骤401:接收应用客户端发送的数据包获取请求,并确定所述数据包获取请求中包含的版本信息对应的数据包。
步骤402:确定所述数据包中包含的每一个字段的版本存活区间。
在本申请实施例中,在开发应用软件时,为不同版本的应用软件中包含的字段增加注解信息,该注解信息中包含字段的版本存活区间,例如:@version(s=1.0,e=5.0),即该字段所适用的版本存活区间为版本1.0到版本5.0。
步骤403:利用每一个字段的版本存活区间和所述数据包获取请求中包含的版本信息,判断所述数据包对应的版本信息是否需要所述字段,若需要,则执行步骤404;否则,执行步骤405。
在本申请实施例中,判断所述数据包对应的版本信息是否需要所述字段的方式可以包括但不限于:
将所述字段的版本存活区间与所述数据包对应的版本信息进行比较,若所述字段的版本存活区间包含所述数据包对应的版本信息,则说明所述数据包对应的版本信息需要所述字段;若所述字段的版本存活区间未包含所述数据包对应的版本信息,则说明所述数据包对应的版本信息不需要所述字段。
步骤404:保留该字段,继续对下一个字段执行判断操作。
步骤405:过滤该字段,继续对下一个字段执行判断操作。
步骤406:在步骤403中对每一个字段的判断操作执行结束后,将过滤后的数据包发送给应用客户端。
图5为本申请实施例提供的一种数据包传输方法的场景示意图。
以上述实施例为基准,在应用客户端与服务器之间增加拦截设备(即中间层),该中间层能够根据每一个字段的版本存活区间和所述数据包获取请求中包含的版本信息对数据包中包含的字段进行过滤,使得返回给应用客户端的数据中不包含非必要字段,降低数据包大小,缩短应用接口的响应的时间,提升用户体验。
实施例4
图6为本申请实施例提供的一种数据包传输方法的流程示意图。所述方法可以如下所示。
步骤601:接收应用客户端发送的数据包获取请求。
步骤602:根据所述数据包获取请求中包含的版本信息,确定与所述版本信息匹配的字段信息。
在这里,确定与所述版本信息匹配的字段信息的方式可以根据预先建立的不同版本信息与所述版本信息所适用的字段之间的映射关系确定,也可以根据字段的版本存活区间确定,这里对于确定方法不做具体限定。
步骤603:基于所述字段信息,对待发送的数据包中包含的字段进行筛选,并将筛选后的所述待发送的数据包传输给所述应用客户端。
实施例5
图7为本申请实施例提供的一种数据包传输设备的结构示意图。所述数据包传输设备包括:接收单元71、确定单元72、筛选单元73和传输单元74,其中:
接收单元71,接收应用客户端发送的数据包获取请求;
确定单元72,确定所述数据包获取请求中包含的版本信息对应的数据包;
筛选单元73,根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,对确定的所述数据包中包含的字段进行筛选;
传输单元74,将筛选后的所述待发送的数据包传输给所述应用客户端。
在本申请的另一个实施例中,所述筛选单元73根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,对确定的所述数据包中包含的字段进行筛选,包括:
根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,确定与所述数据包获取请求中包含的版本信息匹配的字段集;
利用所述字段集对确定的所述数据包中包含的字段进行筛选。
在本申请的另一个实施例中,所述筛选单元73根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,确定与所述数据包获取请求中包含的版本信息匹配的字段集,包括:
根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,从字段数据库中,查找得到与所述数据包获取请求中包含的版本信息相匹配的字段集,所述字段数据库中包含各个字段以及所述字段所适用的版本信息。
在本申请的另一个实施例中,所述筛选单元73利用所述字段集对确定的所述数据包中包含的字段进行筛选,包括:
利用所述字段集中各个字段的字段名,对确定的所述数据包中包含的字段进行过滤,以过滤掉确定的所述字段集中尚未包含的字段。
在本申请的另一个实施例中,所述筛选单元73利用所述字段集对确定的所述数据包中包含的字段进行筛选,包括:
针对确定的所述数据包中包含的字段,执行以下操作:
将所述字段集中各个字段的字段名与确定的所述数据包中包含的字段的字段名进行比较;
若比较结果是字段名包含在所述数据包中但未包含在确定的所述字段集中,则从所述数据包中过滤掉所述字段名对应的字段。
在本申请的另一个实施例中,所述筛选单元73根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,对确定的所述数据包中包含的字段进行筛选,包括:
根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,分析确定的所述数据包中包含的字段所对应的版本存活区间,所述版本存活区间用于表征所述字段所适用的版本信息;
根据所述版本存活区间和所述数据包获取请求中包含的版本信息,对所述数据包中包含的字段进行筛选。
需要说明的是,本申请实施例提供的数据包传输设备可以硬件方式实现,也可以通过软件方式实现,这里不做具体限定。数据包传输设备针对接收到的数据包获取请求,在返回数据包之前,对待返回的数据包中包含的字段进行筛选,使数据包中包含的字段与数据包获取请求中包含的版本信息相匹配,达到了缩小数据包容量的目的,减少了数据包中的非必要字段,进而加快了数据包传输速率,有效提升了用户对数据包传输的用户体验。
实施例6
图8为本申请实施例提供的一种应用接口的结构示意图。所述应用接口包括:信号输入单元81,处理单元82和信号输出单元83,其中:
信号输入单元81,接收应用客户端发送的数据包获取请求,并确定所述数据包获取请求中包含的版本信息对应的数据包;
处理单元82,根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,对确定的所述数据包中包含的字段进行筛选;
信号输出单元83,将筛选后的所述数据包传输给所述应用客户端。
进一步地,应用接口各个单元所具备的功能与上述实施例中所记载数据传输设备中各个相应模块的功能相同。这里不再做详细赘述。
所述应用接口针对接收到的数据包获取请求,在返回数据包之前,对待返回的数据包中包含的字段进行筛选,使数据包中包含的字段与数据包获取请求中包含的版本信息相匹配,达到了缩小数据包容量的目的,减少了数据包中的非必要字段,进而加快了数据包传输速率,有效提升了用户对数据包传输的用户体验。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (13)

1.一种数据包传输方法,其特征在于,包括:
接收应用客户端发送的数据包获取请求,并确定所述数据包获取请求中包含的版本信息对应的数据包及所述数据包中包含的字段,其中,所述版本信息为最新版本的版本信息;
根据不同的字段与所述字段所适用的版本信息之间的映射关系,对确定的所述数据包中包含的字段进行筛选,筛选出包括与所述版本信息相对应的字段的数据包,并将筛选后的所述数据包传输给所述应用客户端。
2.根据权利要求1所述的数据包传输方法,其特征在于,根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,对确定的所述数据包中包含的字段进行筛选,包括:
根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,确定与所述数据包获取请求中包含的版本信息匹配的字段集;
利用所述字段集对确定的所述数据包中包含的字段进行筛选。
3.根据权利要求2所述的数据包传输方法,其特征在于,根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,确定与所述数据包获取请求中包含的版本信息匹配的字段集,包括:
根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,从字段数据库中,查找得到与所述数据包获取请求中包含的版本信息相匹配的字段集,所述字段数据库中包含各个字段以及所述字段所适用的版本信息。
4.根据权利要求2或3所述的数据包传输方法,其特征在于,利用所述字段集对确定的所述数据包中包含的字段进行筛选,包括:
利用所述字段集中各个字段的字段名,对确定的所述数据包中包含的字段进行过滤,以过滤掉确定的所述字段集中尚未包含的字段。
5.根据权利要求2或3所述的数据包传输方法,其特征在于,利用所述字段集对确定的所述数据包中包含的字段进行筛选,包括:
针对确定的所述数据包中包含的字段,执行以下操作:
将所述字段集中各个字段的字段名与确定的所述数据包中包含的字段的字段名进行比较;
若比较结果是字段名包含在所述数据包中但未包含在确定的所述字段集中,则从所述数据包中过滤掉所述字段名对应的字段。
6.根据权利要求1所述的数据包传输方法,其特征在于,根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,对确定的所述数据包中包含的字段进行筛选,包括:
根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,分析确定的所述数据包中包含的字段所对应的版本存活区间,所述版本存活区间用于表征所述字段所适用的版本信息;
根据所述版本存活区间和所述数据包获取请求中包含的版本信息,对所述数据包中包含的字段进行筛选。
7.一种数据包传输设备,其特征在于,包括:
接收单元,接收应用客户端发送的数据包获取请求;
确定单元,确定所述数据包获取请求中包含的版本信息对应的数据包及所述数据包中包含的字段,其中,所述版本信息为最新版本的版本信息;
筛选单元,根据不同的字段与所述字段所适用的版本信息之间的映射关系,对确定的所述数据包中包含的字段进行筛选,筛选出包括与所述版本信息相对应的字段的数据包;
传输单元,将筛选后的所述数据包传输给所述应用客户端。
8.根据权利要求7所述的数据包传输设备,其特征在于,所述筛选单元根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,对确定的所述数据包中包含的字段进行筛选,包括:
根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,确定与所述数据包获取请求中包含的版本信息匹配的字段集;
利用所述字段集对确定的所述数据包中包含的字段进行筛选。
9.根据权利要求8所述的数据包传输设备,其特征在于,所述筛选单元根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,确定与所述数据包获取请求中包含的版本信息匹配的字段集,包括:
根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,从字段数据库中,查找得到与所述数据包获取请求中包含的版本信息相匹配的字段集,所述字段数据库中包含各个字段以及所述字段所适用的版本信息。
10.根据权利要求8或9所述的数据包传输设备,其特征在于,所述筛选单元利用所述字段集对确定的所述数据包中包含的字段进行筛选,包括:
利用所述字段集中各个字段的字段名,对确定的所述数据包中包含的字段进行过滤,以过滤掉确定的所述字段集中尚未包含的字段。
11.根据权利要求8或9所述的数据包传输设备,其特征在于,所述筛选单元利用所述字段集对确定的所述数据包中包含的字段进行筛选,包括:
针对确定的所述数据包中包含的字段,执行以下操作:
将所述字段集中各个字段的字段名与确定的所述数据包中包含的字段的字段名进行比较;
若比较结果是字段名包含在所述数据包中但未包含在确定的所述字段集中,则从所述数据包中过滤掉所述字段名对应的字段。
12.根据权利要求7所述的数据包传输设备,其特征在于,所述筛选单元根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,对确定的所述数据包中包含的字段进行筛选,包括:
根据不同的版本信息与所述版本信息所适用的字段之间的映射关系,分析确定的所述数据包中包含的字段所对应的版本存活区间,所述版本存活区间用于表征所述字段所适用的版本信息;
根据所述版本存活区间和所述数据包获取请求中包含的版本信息,对所述数据包中包含的字段进行筛选。
13.一种应用接口,其特征在于,包括:信号输入单元,处理单元和信号输出单元,其中:
信号输入单元,接收应用客户端发送的数据包获取请求,并确定所述数据包获取请求中包含的版本信息对应的数据包及所述数据包中包含的字段,其中,所述版本信息为最新版本的版本信息;
处理单元,根据不同的字段与所述字段所适用的版本信息之间的映射关系,对确定的所述数据包中包含的字段进行筛选,筛选出包括与所述版本信息相对应的字段的数据包;
信号输出单元,将筛选后的所述数据包传输给所述应用客户端。
CN201610964087.3A 2016-10-28 2016-10-28 一种数据包传输方法、设备及应用接口 Active CN108023920B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610964087.3A CN108023920B (zh) 2016-10-28 2016-10-28 一种数据包传输方法、设备及应用接口

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610964087.3A CN108023920B (zh) 2016-10-28 2016-10-28 一种数据包传输方法、设备及应用接口

Publications (2)

Publication Number Publication Date
CN108023920A CN108023920A (zh) 2018-05-11
CN108023920B true CN108023920B (zh) 2021-11-26

Family

ID=62084370

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610964087.3A Active CN108023920B (zh) 2016-10-28 2016-10-28 一种数据包传输方法、设备及应用接口

Country Status (1)

Country Link
CN (1) CN108023920B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111488171B (zh) * 2019-01-29 2023-11-03 杭州海康威视数字技术股份有限公司 一种数据生成和解析方法、装置及电子设备
CN113676547B (zh) * 2021-09-01 2023-04-07 北京字跳网络技术有限公司 数据处理方法、装置、存储介质和电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101183361A (zh) * 2006-11-13 2008-05-21 中兴通讯股份有限公司 一种关系数据库应用自动升级的方法
CN103200219A (zh) * 2013-02-05 2013-07-10 北京小米科技有限责任公司 数据包更新方法、装置、终端设备和服务器
CN104657170A (zh) * 2013-11-25 2015-05-27 腾讯科技(上海)有限公司 一种数据更新方法、装置及系统
CN104866290A (zh) * 2014-02-24 2015-08-26 国际商业机器公司 一种用于数据传输的方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101183361A (zh) * 2006-11-13 2008-05-21 中兴通讯股份有限公司 一种关系数据库应用自动升级的方法
CN103200219A (zh) * 2013-02-05 2013-07-10 北京小米科技有限责任公司 数据包更新方法、装置、终端设备和服务器
CN104657170A (zh) * 2013-11-25 2015-05-27 腾讯科技(上海)有限公司 一种数据更新方法、装置及系统
CN104866290A (zh) * 2014-02-24 2015-08-26 国际商业机器公司 一种用于数据传输的方法和装置

Also Published As

Publication number Publication date
CN108023920A (zh) 2018-05-11

Similar Documents

Publication Publication Date Title
WO2019137320A1 (zh) 资源调度方法、装置、设备和系统
CN107291750B (zh) 一种数据迁移方法和装置
CN106933550B (zh) 全局信息获取、处理及更新方法、装置和系统
CN106933548B (zh) 全局信息获取、处理及更新、方法、装置和系统
EP3035216A1 (en) Cloud bursting a database
CN111124589B (zh) 一种服务发现系统、方法、装置及设备
CN111786984B (zh) Pod通信连接方法、装置及电子设备、存储介质
US10282120B2 (en) Method, apparatus and system for inserting disk
CN106547646B (zh) 一种数据备份及恢复方法、数据备份及恢复装置
CN111723161A (zh) 一种数据处理方法、装置及设备
CN111026709B (zh) 基于集群访问的数据处理方法及装置
CN108023920B (zh) 一种数据包传输方法、设备及应用接口
CN106940712B (zh) 序列生成方法与设备
CN106878365B (zh) 一种数据同步方法和设备
CN110955460B (zh) 一种服务进程启动方法、装置、电子设备和存储介质
CN114640657A (zh) 多注册中心的融合方法、装置
CN106571935B (zh) 一种资源调度的方法与设备
CN110909072B (zh) 一种数据表建立方法、装置及设备
CN116186082A (zh) 基于分布式的数据汇总方法、第一服务器和电子设备
CN112491943A (zh) 数据请求方法、装置、存储介质和电子设备
CN112579639A (zh) 数据处理方法、装置、电子设备及存储介质
CN115455121A (zh) 一种实时可靠的数据同步传输方法、设备及介质
CN107357557B (zh) 一种信息更新方法及装置
CN110532248B (zh) 一种基于cmdb的服务器应用信息获取及调整方法
CN115914358A (zh) 消息推送方法、装置、电子设备及计算机存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant