CN107371149A - 数据包传输系统及方法 - Google Patents
数据包传输系统及方法 Download PDFInfo
- Publication number
- CN107371149A CN107371149A CN201710644828.4A CN201710644828A CN107371149A CN 107371149 A CN107371149 A CN 107371149A CN 201710644828 A CN201710644828 A CN 201710644828A CN 107371149 A CN107371149 A CN 107371149A
- Authority
- CN
- China
- Prior art keywords
- data
- packet
- subdata bag
- data forwarding
- module
- 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.)
- Withdrawn
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/18—Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
- H04W8/20—Transfer of user or subscriber data
- H04W8/205—Transfer to or from user equipment or user record carrier
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/30—Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information
- H04L63/304—Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information intercepting circuit switched data communications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/06—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
- H04W28/065—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information using assembly or disassembly of packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/02—Terminal devices
- H04W88/06—Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种数据包传输系统及方法,该方法应用于移动终端以及通过预设接口与所述移动终端连接的外接设备,所述第一数据转发服务器在获取到第一拦截模块转发的数据包时,将所述数据包缓存至发送缓冲区中;再将所述发送缓冲区中存储的数据包发送至第一数据转发客户端,以供所述第一数据转发客户端通过第一数据读写转发模块将数据包传输给外接设备的第二数据读写转发模块,由所述第二数据读写转发模块通过第二数据转发客户端将数据包传输至第二数据转发服务器。本发明将移动终端第一调制解调器中的数据包传输至外接设备中的第二调制解调器,以实现移动终端和外接设备的数据包传输过程。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种数据包传输系统及方法。
背景技术
随着移动通信技术的发展,移动终端已经成为用户随身携带,必不可少的电子设备。在运营商和各大OEM(Original Equipment Manufacturer,原始设备制造商)厂商的牵头下,3G(3rd Generation,第三代移动通信技术)、4G(the 4th Generation MobileCommunication Technology,第四代移动通信技术)、CA(Carrier Aggregation,应用载波聚合技术)以及最新的5G(5th-Generation,第五代移动通信技术)应运而生,这些技术的目的是为了提高用户的上网带宽。在此种背景下,一种提高用户上网带宽的方式也悄然而生,移动终端连接两个调制解调器,每个调制解调器都有对应的SIM(SubscriberIdentification Module)卡,且每个调制解调器都可以独立上网,然后在上层将用户访问的网络根据实际情况进行两个数据网络的网速叠加,从而达到提高上网带宽的目的。由于运营商对传统用户上网带宽的垄断和限制,终端厂商可以通过该网速叠加技术方案加大用户上网带宽,有效的整合了移动终端中两张SIM卡的上网资源,并实现了DSDA(Dual SIMdual active,双卡双通),以及双卡双LTE(Long Term Evolution,长期演进)待机。
因此,为了使移动终端连接两个调制解调器,需要将移动终端与含有调制解调器的外接设备进行连接。以实现移动终端和外接设备之间的数据包传输,但是,移动终端和外接设备的连接是在应用处理器中连接,而数据包从调制解调器发出,由于调制解调器之间跨设备,没有物理链路相连,导致数据包无法传输。
发明内容
本发明的主要目的在于提出一种数据包传输系统及方法,旨在解决移动终端通过外接设备实现双LTE通信过程中,外接设备和移动终端之间的数据包无法传输的技术问题。
为实现上述目的,本发明提供的一种数据包传输系统,所述数据包传输系统包括移动终端,以及通过预设接口与所述移动终端连接的外接设备;所述移动终端包括第一应用处理器,以及与嵌入式用户识别卡和实体用户识别卡连接的第一调制解调器,所述第一调制解调器包括第一拦截模块和第一数据转发服务器,所述第一应用处理器包括第一数据读写转发模块和与所述第一数据转发服务器连接的第一数据转发客户端;所述外接设备包括第二应用处理器和第二调制解调器,所述第二调制解调器包括第二数据转发服务器,所述第二应用处理器包括通过所述预设接口与所述第一数据读写转发模块连接的第二数据读写转发模块,以及与所述第二数据转发服务器连接的第二数据转发客户端;
所述第一数据转发服务器,用于在获取到第一拦截模块转发的数据包时,将所述数据包缓存至发送缓冲区中;
所述第一数据转发服务器,还用于将所述发送缓冲区中存储的数据包发送至第一数据转发客户端,以供所述第一数据转发客户端通过第一数据读写转发模块将数据包传输给外接设备的第二数据读写转发模块,由所述第二数据读写转发模块通过第二数据转发客户端将数据包传输至第二数据转发服务器。
可选地,所述第一数据转发服务器,还用于对所述发送缓冲区中存储的数据包的容量值进行解析,以确定数据包的容量值是否超出预设阈值;
若数据包的容量值超出所述预设阈值,则对所述数据包进行拆分,得到各个子数据包;
将拆分后的各个子数据包发送至所述第一数据转发客户端。
可选地,所述第一数据转发服务器,还用于在拆分后的各个子数据包中,对除最后一个子数据包以外的其它各个子数据包添加中间标识,对最后一个子数据包添加结束标识;
将添加有标识的各个子数据包依次发送至所述第一数据转发客户端。
可选地,所述第一数据转发服务器,还用于在接收到所述第一数据转发客户端通过所述第一数据读写转发模块发送的子数据包时,确定子数据包携带的标识信息;
若接收到的子数据包中携带结束标识,则将所述子数据包传输至所述第一拦截模块。
可选地,所述第一数据转发服务器,还用于若接收到的子数据包中携带中间标识,则将子数据包缓存至所述接收缓冲区,以便后续接收到携带结束标识的子数据包时,将携带结束标识的子数据包以及所述接收缓冲区中缓存的子数据包组合发送至所述第一拦截模块。
此外,为实现上述目的,本发明还提出一种数据包传输方法,应用于移动终端以及通过预设接口与所述移动终端连接的外接设备,所述移动终端包括第一应用处理器,以及与嵌入式用户识别卡和实体用户识别卡连接的第一调制解调器,所述第一调制解调器包括第一拦截模块和第一数据转发服务器,所述第一应用处理器包括第一数据读写转发模块和与所述第一数据转发服务器连接的第一数据转发客户端;所述外接设备包括第二应用处理器和第二调制解调器,所述第二调制解调器包括第二数据转发服务器,所述第二应用处理器包括通过所述预设接口与所述第一数据读写转发模块连接的第二数据读写转发模块,以及与所述第二数据转发服务器连接的第二数据转发客户端;所述方法包括:
所述第一数据转发服务器在获取到第一拦截模块转发的数据包时,将所述数据包缓存至发送缓冲区中;
将所述发送缓冲区中存储的数据包发送至第一数据转发客户端,以供所述第一数据转发客户端通过第一数据读写转发模块将数据包传输给外接设备的第二数据读写转发模块,由所述第二数据读写转发模块通过第二数据转发客户端将数据包传输至第二数据转发服务器。
可选地,所述将所述发送缓冲区中存储的数据包发送至第一数据转发客户端的步骤包括:
所述第一数据转发服务器对所述发送缓冲区中存储的数据包的容量值进行解析,以确定数据包的容量值是否超出预设阈值;
若数据包的容量值超出所述预设阈值,则对所述数据包进行拆分,得到各个子数据包;
将拆分后的各个子数据包发送至所述第一数据转发客户端。
可选地,所述将拆分后的各个子数据包发送至所述第一数据转发客户端的步骤包括:
第一数据转发服务器在拆分后的各个子数据包中,对除最后一个子数据包以外的其它各个子数据包添加中间标识,对最后一个子数据包添加结束标识;
将添加有标识的各个子数据包依次发送至所述第一数据转发客户端。
可选地,所述数据包传输方法还包括:
所述第一数据转发服务器在接收到所述第一数据转发客户端通过所述第一数据读写转发模块发送的子数据包时,确定子数据包携带的标识信息;
若接收到的子数据包中携带结束标识,则将所述子数据包传输至所述第一拦截模块。
可选地,所述确定子数据包携带的标识信息的步骤之后,所述数据包传输方法还包括:
若接收到的子数据包中携带中间标识,则所述第一数据转发服务器将子数据包缓存至所述接收缓冲区,以便后续接收到携带结束标识的子数据包时,将携带结束标识的子数据包以及所述接收缓冲区中缓存的子数据包组合发送至所述第一拦截模块。
本发明提供一种数据包传输系统及方法,所述第一数据转发服务器,用于在获取到第一拦截模块转发的数据包时,将所述数据包缓存至发送缓冲区中,并将所述发送缓冲区中存储的数据包发送至第一数据转发客户端,以供所述第一数据转发客户端通过第一数据读写转发模块将数据包传输给外接设备的第二数据读写转发模块,由所述第二数据读写转发模块通过第二数据转发客户端将数据包传输至第二数据转发服务器。本发明中,通过第一数据转发服务器将移动终端第一调制解调器中的数据包,传输至第一应用处理器中的第一数据转发客户端,再由第一数据转发客户端通过第一数据读写转发模块将数据包传输给外接设备的第二数据读写转发模块,以便第二数据读写转发模块将数据包传输至第二调制解调器,以实现移动终端和外接设备之间的数据包传输过程。
附图说明
图1为本发明一实施例的LTE网络架构的示意图;
图2为本发明移动终端和外接设备通讯连接的一种实体结构示意图;
图3为本发明移动终端和外接设备通讯连接的一种硬件结构示意图;
图4为本发明移动终端和外接设备通讯连接的内部硬件结构示意图;
图5为本发明中数据包传输方法第一实施例的流程示意图;
图6为本发明中数据包传输方法第二实施例的流程示意图;
图7为本发明中数据包传输方法第三实施例的流程示意图;
图8为本发明中数据包传输方法第四实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互任意结合。
为了对本发明的技术特征、目的和效果有更加清楚的理解,现在将参考附图描述实现本发明各个实施例的移动终端。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,“模块”与“部件”可以混合地使用。
图1是本发明一实施例的LTE网络架构的示意图。本发明一实施例的LTE网络架构包括:一个或多个移动终端(user equipment,UE)100、外接设备200、E-UTRAN(EvolvedUMTS Terrestrial Radio Access Network,演进的UMTS陆地无线接入网)(图中未标号)、演进分组核心(EPC)(图中未标号)、归属订户服务器(HSS)107、网络(例如,因特网)(图中未标号)以及电路交换系统(图中未标号)。
E-UTRAN包括演进B节点(eNodeB)101和其它eNodeB 102。eNodeB 101提供朝向移动终端100的用户面和控制面的协议终接。eNodeB 101可经由X2接口连接到其他eNodeB。eNodeB 101也可称为基站、基收发机站、无线电基站、无线电收发机、收发机功能、基本服务集、扩展服务集、或其他某个合适的术语。eNodeB 101为移动终端100提供去往EPC的接入点。
eNodeB 101通过S1接口连接到EPC。EPC包括移动管理实体(EEM)104、其他移动管理实体106、服务网关103,以及分组数据网络(PDN)网关105。移动管理实体104是处理移动终端100与EPC之间的信令的控制节点。移动管理实体104提供承载和连接管理。所有用户IP分组通过服务网关103来传递,服务网关103自身连接到PDN网关105。PDN网关105提供UE IP地址分配以及其他功能。PDN网关105连接到网络,例如,因特网。
电路交换系统包括交互解决方案模块(IWS)108、移动交换中心(MSC)109、基站110和移动站111。在一个方面,电路交换系统可以通过IWS和MME(Mobility ManagementEntity,移动管理实体)与EPS(Evolved Packet System,演进的分组系统)进行通信。
移动终端100通过预设接口,如USB(Universal Serial Bus,通用串行总线)数据线与外接设备200通讯连接。
图2为本发明移动终端100和外接设备200通讯连接的实体示意图。
如图2所示,移动终端100通过USB数据线与外接设备200通讯连接,其中,所述移动终端包括但不限于手机、PC(Personal Computer,个人电脑)或PAD(Personal DigitalAssistant,个人数字助理),所述外接设备200可选为无线上网卡或数据卡。
图3为本发明实施例中移动终端和外接设备通讯连接的一种硬件结构示意图。
本发明实施例的移动终端100通过USB数据线与外接设备200通讯连接,基于移动终端100和外接设备200通讯连接的基础,移动终端100可支持双LTE。具体地:
移动终端100包括第一处理芯片001,以及与所述第一处理芯片001连接的第一射频模块12,其中,第一处理芯片001包括第一应用处理器(Application Processor,用AP1表示)10、与嵌入式用户识别卡13和实体用户识别卡14连接的第一调制解调器11(modem1)、RPM(Resource Power Manager,资源电源管理器)15。
其中,所述嵌入式用户识别卡13通过串口与第一调制解调器11连接,串口包括但不限于通用异步收发传输器(UART),需要说明的是,嵌入式用户识别卡13为ESIM(EmbeddedSubscriber Identity Module)卡,相关卡参数直接写入该ESIM卡,该ESIM卡包含可编程的SIM卡芯片;该嵌入式用户识别卡13包括存储模块和片内操作系统(Chip OperatingSystem,COS),该存储模块可为EFS(Encrypting File System,加密文件系统),存储模块用于存储嵌入式用户识别卡13的鉴权数据。所述实体用户识别卡14为SIM(SubscriberIdentity Module,用户识别模块)卡
外接设备200包括第二处理芯片002,以及与所述第二处理芯片002连接的第二射频模块22,其中,第二处理芯片002包括第二应用处理器(用AP2表示)20和第二调制解调器(modem2)21。
第一应用处理器10和第二应用处理器20的内部框架包括应用层、框架层等,可处理复杂的逻辑操作以及进行任务分配等。在一个实施例中,应用处理器指Android操作系统,以及基于Android操作系统的各种apk(Android Package,安卓安装包)。在本发明的实施例中,第一应用处理器10和第二应用处理器20通过USB数据线实现通讯连接,为用户提供交互接口,将用户输入的操作指令(例如,用户通过用户界面输入的有关启动视频通话的操作指令)传输给第一调制解调器11或第二调制解调器21,以实现两个应用处理器之间数据的定义与传递,例如,进行两个应用处理器的休眠、唤醒、同步的控制、开关机时芯片启动顺序的控制等。
应当理解的是,在本发明实施例中,USB数据线复用出三条数据通道,分别用于第一应用处理器10和第二应用处理器20之间用户数据、控制信令数据和SIM卡鉴权数据的交互,即第一应用处理器10和第二应用处理器20通过U SB数据线传输的数据包括上述三种数据。其中,用户数据包括上网产生的数据,图片和聊天信息数据;控制信令数据包括开关机的控制数据,开关飞行模式的控制数据,显示状态信号的控制数据;SIM卡鉴权数据包括但不限于I MSI(International Mobile Subscriber Identification Number,国际移动用户识别码)、Ki(key identifier,鉴权密钥)等等。
本实施例中,第一应用处理器10和第二应用处理器20通过OTG(On-The-Go)技术进行数据交互。通过OTG技术,移动终端100中的第一调制解调器11可通过嵌入式用户识别卡13或实体用户识别卡14中的SIM卡参数来接入eNodeB 101,外接设备中的第二调制解调器21可通过实体用户识别卡14或嵌入式用户识别卡13中的SIM卡参数来接入eNodeB 101,所述SIM卡参数包括但不限于SIM卡鉴权数据。
第一调制解调器11和第二调制解调器21包含各种网络交互的网络制式的协议栈,协议栈包含LTE(Long Term Evolution,长期演进)/WCDMA(W ideband Code DivisionMultiple Access,宽带码分多址)/GSM(Global Syste m for Mobile Communication,全球移动通信系统)/TD-SCDMA(Time Divisi on-Synchronous Code Division MultipleAccess,同步时分码分多址)/CDMA(C ode Division Multiple Access,码分多址)/EDGE(Enhanced Data Rate for G SM Evolution,强型数据速率GSM演进技术)等通讯标准里边规定的协议代码。移动终端100通过协议与运营商网络进行交互,即进行数据流量上网、VOLTE(Voice Over LTE)打电话或者CS(Circuit Switched,电路交换)域打电话。第一调制解调器11和第二调制解调器21还用于对SIM卡的管控等等。
在本发明实施例中,第一射频模块12用于将移动终端100传输的数据处理后传给eNodeB 101(基站网络),以及用于将eNodeB 101传输的数据处理后传给移动终端100。第二射频模块22用于将外接设备200传输的数据处理后传给eNodeB 101(基站网络),以及用于将eNodeB 101传输的数据处理后传给外接设备200。
第一射频模块12和第二射频模块22所涉及的无线接入技术可以包括LTE、GSM、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA、EDGE、WLAN(WirelessLocal Area Networks,无线局域网)、CDMA-2000、TD-SCDMA、WCDMA、WIFI(WirelessFidelity,无线保真)等等。
移动终端100中的嵌入式用户识别卡13和实体用户识别卡14与第一调制解调器11连接,嵌入式用户识别卡13和实体用户识别卡14存储不同的无线通信标准相关联用户信息。应当理解,目前的移动终端只有一套射频,移动终端内部的两个用户识别卡使用该套射频是分时复用的关系,并不能同时占用。例如,在两张用户识别卡全开时,一张卡可以处理GSM通话,另一张卡只能处理4G网络信息,具体哪个用户识别卡执行何种网络,不做限定。因此目前的射频双卡分时复用这种架构仅做到了LTE+GSM(即一张用户识别卡对应的技术标准为LTE,另一张用户识别卡对应的技术标准为GSM)。
也就是说,现有的移动终端100虽然可以支持双用户识别卡,但是移动终端100在注册网络的情况下,两个用户识别卡支持的是不同技术标准的网络,一个支持2G或3G,另一个支持4G,会使得移动终端100使用过程中,上网流量速度较慢,因此本发明中,移动终端100通过USB数据线连接外接设备200,由于外接设备200包括第二射频模块22,且第二射频模块22支持4G网络,因此,移动终端100可通过USB线与外接设备200交互,使得嵌入式用户识别卡13可通过第二调制解调器21支持LTE,而实体用户识别卡14通过第一调制解调器11支持LTE,或者是嵌入式用户识别卡13可通过第一调制解调器11支持LTE,而实体用户识别卡14通过第二调制解调器21支持LTE,从而使得移动终端100具备双LTE功能。
在本实施例中,数据包识别系统包括移动终端100和外接设备200,移动终端100通过外接设备200具备双LTE功能的实现过程可为:①实体用户识别卡14通过第二调制解调器21支持LTE,具体过程为:第一调制解调器11将实体用户识别卡14中需要访问LTE网络的数据发送给第一应用处理器10,第一应用处理器10将所接收的数据通过USB发送给外接设备200的第二应用处理器20,第二应用处理器20将所接收的数据发送给第二调制解调器21,由第二调制解调器21转发给第二射频模块22,第二射频模块22将所接收的数据通过LTE网络发送出去;而嵌入式用户识别卡13通过第一调制解调器11支持LTE,以实现移动终端100可支持双LTE。②嵌入式用户识别卡13通过第二调制解调器21支持LTE,具体过程为:第一应用处理器10将嵌入式用户识别卡13中需要访问LTE网络的数据通过USB发送给外接设备200的第二应用处理器20,第二应用处理器20将所接收的数据发送给第二调制解调器21,由第二调制解调器21转发给第二射频模块22,第二射频模块22将所接收的数据通过LTE网络发送出去;而实体用户识别卡14通过第一调制解调器11支持LTE,以实现移动终端100可支持双LTE。
在本实施例中,嵌入式用户识别卡13和实体用户识别卡14用于提供移动通信业务(CS语音业务、PS数据业务和PS语音业务)所需的相关数据,并在其内部存储用户信息、短消息、执行鉴权算法和产生加密密匙等。
实体用户识别卡14与移动终端100交互时,移动终端100检测该实体用户识别卡14存在与否的信号只在开机瞬时产生,当开机检测不到实体用户识别卡14存在时,移动终端100将提示“插入用户识别卡”。移动终端100开机之后,移动终端100和实体用户识别卡14之间28秒通信一次,完成一些固定的通信检查(例如,用户识别卡是否在位等)。
需要说明的是,当嵌入式用户识别卡13需要进行网络注册时,通过开启的无线保真(WIFI)网络发送包含业务菜单数据的下载请求至嵌入式用户识别卡13对应的云端服务器,以从云端服务器获取嵌入式用户识别卡13的数据信息。当获取到嵌入式用户识别卡13的数据信息时,将数据信息写入嵌入式用户识别卡13的存储模块中,以实现嵌入式用户识别卡13的网络注册。其中,数据信息可以包括:IMSI、Ki(key identifier,鉴权密钥)、ICCID(Integrated Circuit Card Identifier)、PIN(个人标识号,Personal IdentificationNumber)、PUK(PIN Unlocking Key)。可以理解的是,云端服务器中存储了各个运营商的卡号资源。
在本发明的实施例中,嵌入式用户识别卡13和实体用户识别卡14承载信息,并且根据外界请求返回对应卡参数,以及对网络进行鉴权运算,第一射频模块12和第二射频模块22所涉及的无线接入技术为LTE。当移动终端100通过USB数据线与外接设备200连接时,嵌入式用户识别卡13可通过第二调制解调器21支持LTE,而实体用户识别卡14通过第一调制解调器11支持LTE;或者嵌入式用户识别卡13可通过第一调制解调器11支持LTE,而实体用户识别卡14通过第二调制解调器21支持LTE,以实现移动终端100可支持双LTE。
移动终端100中的RPM15用于管控各种资源,包括时钟资源、总线资源、PMIC(PowerManagement IC,电源管理集成电路,即各个芯片的电压)、DDR(内存分配),以及管理芯片的休眠唤醒的中断和应用处理器唤醒的截止时间。移动终端100的各个子系统,在需要资源时,向RPM15申请资源,各个子系统分别包括第一应用处理器10,第一调制解调器11、PRONTO(WIFI/蓝牙、NFC(Near Field Communication,近场通信)等)、LPASS(Low power audiosubsystem,低功耗音频子系统),RPM15用来决定移动终端100系统的休眠状态,具体是,RPM15基于各个子系统的投票机制实现,当各个子系统都投休眠票时,RPM15才可以使移动终端100整个系统进行休眠。
在移动终端100的整个系统休眠之后,若是要重新启动运行,需要唤醒第一应用处理器10以进行数据的传输交互。
在移动终端100和外接设备200通过USB数据线通讯连接的情况下,唤醒方式包括三种:
1、第一应用处理器10接收到控制信令数据时,通过USB数据线传送探测包给第二应用处理器20,以唤醒第二应用处理器20。
2、外接设备200的第二调制解调器21接收到用户数据时,唤醒第二应用处理器20,由第二应用处理器20通过USB数据线传送探测包给第一应用处理器10,以唤醒第一应用处理器10。
3、第二调制解调器21周期性查找寻呼请求,以主动激活自己,若接收到寻呼请求,唤醒第二应用处理器20,由第二应用处理器20通过USB数据线发送探测包给第一应用处理器10,以唤醒第二应用处理器20。
此外,第二调制解调器21还可以定期唤醒自己,以在移动终端100进行位置更新时,跟基站进行握手交互,此时不需要唤醒第一应用处理器10。
参照图4,图4为本发明移动终端和外接设备通讯连接的内部硬件结构示意图。
如图4可知,第一调制解调器11包括UIM(User Identity Module)驱动112、第一SIM卡模块代理113、远程SIM数据访问_server(远程数据访问服务器)114、第一拦截模块115和数据转发_server1(第一数据转发服务器)116。第一应用处理器10包括数据转发_client1(第一数据转发客户端)011和第一数据读写转发模块012。
第二调制解调器21包括modem非接入层部分211、第二SIM卡模块代理213、远程SIM数据访问_client(远程数据访问客户端)214、第二拦截模块215和数据转发_server2(第二数据转发服务器)216,第二应用处理器20包括数据转发_client2(第二数据转发客户端)021和第二数据读写转发模块022。
其中,UIM驱动112存储了接入网络必须的数据,如UIM ID(Identification,身份)、鉴权数据、IMSI号等。
远程SIM数据访问_server114和远程SIM数据访问_client214用于实现第一调制解调器11和第二调制解调器21之间SIM卡数据的传输。
第一拦截模块115用于截取远程SIM数据访问_server114中所需传输的SIM卡数据;第二拦截模块215用于截取远程SIM数据访问_client214中所需传输的SIM卡数据。通过第一拦截模块115和第二拦截模块215实现远程SIM数据访问_server214和远程SIM数据访问_client114中SIM卡数据的交互,具体地:第一拦截模块115或第二拦截模块215截取到数据之后,将截取的数据传输至第一数据转发服务器116或第二数据转发服务器216,以实现数据的传输。
第二数据转发服务器216和第二数据转发客户端021相对应,用于实现第二调制解调器21和第二应用处理器20之间的数据传输;第一数据转发服务器116和第一数据转发客户端011相对应,用于实现第一调制解调器11和第一应用处理器10之间的数据传输。
第一数据读写转发模块012和第二数据读写转发模块022用于通过USB实现第二应用处理器20和第一应用处理器10之间的数据传输。
在本发明实施例中,需要说明的是,由于移动终端100和外接设备200都包含有应用处理器和调制解调器,且第一数据转发服务器116和第二数据转发服务器216位于调制解调器,第一数据转发客户端011和第二数据转发客户端021位于应用处理器。
因此,本实施例中,数据传输过程既可以发生在移动终端,也可以发生在外接设备中,并且移动终端的数据转发机制和外接设备的数据转发机制一致,本发明的各个实施例中,以移动终端为执行主体,详述第一数据转发服务器116的数据传输过程,但是本领域技术人员应当理解的是,当用外接设备替换本发明中的移动终端时,同样可以实现本发明的数据包传输过程。
其中,数据转发_server的方式包括两种:
移动终端:
方式一、移动终端的数据转发_server1在接收到第一拦截模块截取的数据时,将接收到的数据发送至本端数据转发_client1中;
方式二、移动终端的数据转发_server1在接收到数据转发本端数据转发_client1转发的数据时,将接收到的数据发送至第一拦截模块中。
外接设备:
方式一、外接设备的数据转发_server2在接收到第二拦截模块截取的数据时,将接收到的数据发送至本端数据转发_client2中;
方式二、外接设备的数据转发_server2在接收到数据转发本端数据转发_client2转发的数据时,将接收到的数据发送至第二拦截模块中。
基于上述的LTE网络架构图、移动终端100和外接设备200通讯连接的硬件结构示意图、实体结构示意图以及现有技术存在的问题,提出本发明的各个实施例。
本实施例提出一种数据包识别系统,所述数据包传输系统包括移动终端100,以及通过预设接口与所述移动终端100连接的外接设备200;所述移动终端100包括第一应用处理器10,以及与嵌入式用户识别卡13和实体用户识别卡14连接的第一调制解调器11,所述第一调制解调器11包括第一拦截模块115和第一数据转发服务器116,所述第一应用处理器10包括第一数据读写转发模块012和与所述第一数据转发服务器116连接的第一数据转发客户端011;所述外接设备200包括第二应用处理器20和第二调制解调器21,所述第二调制解调器21包括第二数据转发服务器216,所述第二应用处理器20包括通过所述预设接口与所述第一数据读写转发模块012连接的第二数据读写转发模块022,,以及与所述第二数据转发服务器216,连接的第二数据转发客户端021;
所述第一数据转发服务器,用于在获取到第一拦截模块转发的数据包时,将所述数据包缓存至发送缓冲区中;
所述第一数据转发服务器,还用于将所述发送缓冲区中存储的数据包发送至第一数据转发客户端,以供所述第一数据转发客户端通过第一数据读写转发模块将数据包传输给外接设备的第二数据读写转发模块,由所述第二数据读写转发模块通过第二数据转发客户端将数据包传输至第二数据转发服务器。
在本实施例中,需要说明的是,事先在终端中先定义了一个qmi cmd(命令),用于数据转发_client1向数据转发server1发送数据,此外,事先还定义了一个qmi ind(通知),用于数据转发server1向数据转发_client1发送数据,即在数据转发_client1向数据转发server1发送数据时,调用qmi cmd,在数据转发server1向数据转发_client1发送数据时,调用qmi ind。本实施例中,传输的数据包中包括flag和data字段,flag用于区分数据包是中间数据包还是结束数据包,data字段用于表示数据包的长度。
本实施例中,所述移动终端还设置有两个临时缓冲区,分别为发送缓冲区(txbuffer)和接收缓冲区(rx buffer);其中,发送缓冲区用于缓存第一数据转发服务器从第一拦截模块中截取到的数据,以供第一数据转发服务器将数据发送至第一数据转发客户端;所述接收缓冲区用于缓存第一数据转发服务器从第一数据转发客户端接收到的数据,以供第一数据转发服务器将数据发送至第一拦截模块。
在本实施例中,在所述第一数据转发服务器获取到第一拦截模块转发的数据包时,并将所述数据包缓存至发送缓冲区中之前,由第一拦截模块转发数据包,具体地:
第一拦截模块从远程SIM数据访问_server中获取移动终端的数据包,该数据包是实体用户识别卡或嵌入式用户识别卡中的数据包,在获取到数据包之后,第一拦截模块将数据包转发到第一数据转发服务器(图4的数据转发_server1)。需要说明的是,第一拦截模块从远程SIM数据访问_server中获取移动终端的数据包之后,先将截取的数据包集中存储在预设文件,该预设文件是第一拦截模块关联的文件,该文件通过水位(water mark)机制建立的文件,第一拦截模块将截取的数据包存储到预设文件,通过消息队列的方式存储。在第一拦截模块往预设文件存储数据包之后,触发通知函数给第一数据转发服务器,以告知第一数据转发服务器该预设文件中存储有数据包,以供第一数据转发服务器从该预设文件中获取数据包。
当第一数据转发服务器接收到第一拦截模块发送的通知函数时,先回调该通知函数,并通过消息队列从预设文件中获取第一拦截模块转发的数据包时,在获取到数据包之后,即可将所述数据包缓存至发送缓冲区中。
可以理解,通过消息队列的方式存取数据包,使得各个数据包的传输是按照顺序传输的。
而后,所述第一数据转发服务器将所述发送缓冲区中存储的数据包发送至第一数据转发客户端,以供所述第一数据转发客户端通过第一数据读写转发模块将数据包传输给外接设备的第二数据读写转发模块。即,第一数据转发客户端将该数据包传输至第一数据读写转发模块,然后第一数据读写转发模块通过USB线将数据包传输给外接设备的第二数据读写转发模块,应当理解,当第二数据读写转发模块接收到数据包之后,将接收到的数据包换传输至外接设备的第二拦截模块中。
本实施例提供的数据包传输系统,所述第一数据转发服务器,用于在获取到第一拦截模块转发的数据包时,将所述数据包缓存至发送缓冲区中,并将所述发送缓冲区中存储的数据包发送至第一数据转发客户端,以供所述第一数据转发客户端通过第一数据读写转发模块将数据包传输给外接设备的第二数据读写转发模块,由所述第二数据读写转发模块通过第二数据转发客户端将数据包传输至第二数据转发服务器。本发明中,通过第一数据转发服务器将移动终端第一调制解调器中的数据包,传输至第一应用处理器中的第一数据转发客户端,再由第一数据转发客户端通过第一数据读写转发模块将数据包传输给外接设备的第二数据读写转发模块,以便第二数据读写转发模块将数据包传输至第二调制解调器,以实现移动终端和外接设备之间的数据包传输过程。
进一步地,提出本发明数据包传输系统的第二实施例。
数据包传输系统的第二实施例与第一实施例的区别在于:所述第一数据转发服务器,还用于对所述发送缓冲区中存储的数据包的容量值进行解析,以确定数据包的容量值是否超出预设阈值;
若数据包的容量值超出所述预设阈值,则对所述数据包进行拆分,得到各个子数据包;
将拆分后的各个子数据包发送至所述第一数据转发客户端。
在本实施例中,在第一数据转发服务器将接收到的数据包缓存至发送缓冲区之后,先对所述发送缓冲区中存储的数据包的容量值进行解析,以确定数据包的容量值是否超出预设阈值,具体的解析方式为:将发送缓冲区中的数据包的容量值与预设阈值进行比较,若发送缓冲区中的数据包的容量值大于该预设阈值,则执行拆分操作,本实施例中,所述预设阈值可根据实际情况进行设置,例如设置为8K。在对数据包进行拆分,得到各个子数据包之后,将拆分后的各个子数据包依次发送至所述第一数据转发客户端。
在本实施例中,所述第一数据转发服务器通过对所述发送缓冲区中存储的数据包的容量值进行解析,以确定数据包的容量值是否超出预设阈值,并在数据包的容量值大于预设阈值时,执行拆分操作,以便将拆分后的各个子数据包依次发送,防止数据包过大时,无法正常传输,本实施例保证了数据包可以正常传输。
进一步地,提出本发明数据包传输系统的第三实施例。
数据包传输系统的第三实施例与数据包传输系统的第二实施例的区别在于,所述第一数据转发服务器将拆分后的各个子数据包发送至所述第一数据转发客户端包括:
在拆分后的各个子数据包中,对除最后一个子数据包以外的其它各个子数据包添加中间标识,对最后一个子数据包添加结束标识;
将添加有标识的各个子数据包依次发送至所述第一数据转发客户端。
需要说明的是,由于第一拦截模块截取到的数据包是原始数据包,那么,当第一数据转发服务器获取到该数据包时,该数据包的容量值可能较大,若该数据包的容量值大于预设值,此时,该第一数据转发服务器对该数据包进行一次性拆分,以将该数据包拆分成多个子数据包,本实施例中,所述第一数据转发服务器对数据包的拆分,优选是按照该预设阈值,如8K的容量进行拆解,即将每8K数据拆解为一个数据包,可以理解,拆分后的最后一个数据包的容量小于或等于8K,
在拆分得到各个子数据包之后,由于拆分后的各个子数据包是结构化的数据,结构化的数据用flag和data字段表示,因此,第一数据转发服务器对各个子数据包添加flag字段和data字段。优选地,data字段表示放容量为该预设阈值的数据,该容量可选设置为8k。flag字段表示子数据包是中间数据包还是结束数据包。本实施例中,当flag字段为中间标识如字段为0时,表示子数据包是中间数据包,当flag字段为结束标识如字段为1时,表示子数据包是结束数据包,此外,当flag字段为触发器标识,如trigger flag时,代表第一数据转发客户端初始化ok。
因此,第一数据转发服务器对数据包拆分,得到各个子数据包时,对除最后一个子数据包以外的其它各个子数据包添加中间标识,对最后一个子数据包添加结束标识。最终,将添加有标识的各个子数据包依次发送至所述第一数据转发客户端,以完成数据包的转发。
可以理解,当所述第一数据转发客户端接收到子数据包之后,通过第一数据读写转发模块将子数据包传输给外接设备的第二数据读写转发模块,当外接设备的第二数据读写转发模块接收到子数据包之后,再将子数据包传输至第二拦截模块中,具体地:
外接设备的第二数据读写转发模块接收到子数据包之后,将子数据包传输至数据转发_client2(第二数据转发客户端),然后数据转发_client2将子数据包传输至数据转发_server2(第二数据转发服务器),第二数据转发服务器接收到子数据包之后,先确定子数据包携带的标识信息;
若接收到的子数据包中携带结束标识,则第二数据转发服务器将所述子数据包传输至所述第二拦截模块;
若接收到的子数据包中携带中间标识,则第二数据转发服务器将子数据包缓存至接收缓冲区,以便后续接收到携带结束标识的子数据包时,将携带结束标识的子数据包以及所述接收缓冲区中缓存的子数据包发送至所述第二拦截模块,由第二拦截模块对各个子数据包进行组合。
在本实施例中,所述第一数据转发服务器在拆分后的各个子数据包中,对除最后一个子数据包以外的其它各个子数据包添加中间标识,对最后一个子数据包添加结束标识,以将添加有标识的各个子数据包依次发送出去,后续接收到各个子数据包的第二拦截模块,即可根据接收到的各个子数据包执行组合操作。
进一步地,提出本发明数据包传输系统的第四实施例。
数据包传输系统的第四实施例与第一至第三实施例的区别在于:所述第一数据转发服务器,还用于在接收到所述第一数据转发客户端通过所述第一数据读写转发模块发送的子数据包时,确定子数据包携带的标识信息;
若接收到的子数据包中携带结束标识,则将所述子数据包传输至所述第一拦截模块。
在本实施例中,当第一数据转发服务器在接收到所述第一数据转发客户端通过所述第一数据读写转发模块发送的子数据包时,对接收到的各个数据包的标识信息进行识别,若识别出子数据包中携带结束标识,说明该子数据包的最后一个子数据包,此时,所述第一数据转发服务器可将所述子数据包传输至所述第一拦截模块。
此外,所述第一数据转发服务器,还用于若接收到的子数据包中携带中间标识,则将子数据包缓存至所述接收缓冲区,以便后续接收到携带结束标识的子数据包时,将携带结束标识的子数据包以及所述接收缓冲区中缓存的子数据包发送至所述第一拦截模块。
即,所述第一数据转发服务器接收到的子数据包中携带的是中间标识,说明当前接收到的子数据包的中间数据包,此时,所述第一数据转发服务器将子数据包缓存至所述接收缓冲区,并继续接收子数据包,当接收到携带结束标识的子数据包时,才将携带结束标识的子数据包以及所述接收缓冲区中缓存的子数据包组合发送至所述第一拦截模块中。
也就是说,所述第一数据转发服务器对接收到的子数据包的flag字段进行识别,在识别出数据包的flag字段为0时,说明当前接收到的数据包不是最后一个数据包,因此,第一数据转发服务器将当前接收到的子数据包缓存至接收缓冲区中,然后继续接收第一数据转发客户端转发的子数据包,直到接收到flag字段为1的子数据包,才将接收缓冲区中缓存的的各个子数据包提取出来,并将携带结束标识的子数据包以及所述接收缓冲区中缓存的子数据包发送至所述第一拦截模块中,由第一拦截模块对各个子数据包组合后,发送至远程SIM数据访问_server中,从而完成数据包的传输过程。
需要说明的是,当所述第一数据转发服务器将子数据包都发送至第一拦截模块时,即可将接收缓冲区清空,以便后续继续接收其它子数据包。
本实施例提供的数据包传输系统,第一数据转发服务器在接收到所述第一数据转发客户端通过所述第一数据读写转发模块发送的子数据包时,先确定子数据包携带的标识信息,若接收到的子数据包中携带结束标识,则将所述子数据包传输至所述第一拦截模块,若接收到的子数据包中携带中间标识,则所述第一数据转发服务器将子数据包缓存至所述接收缓冲区,以便后续接收到携带结束标识的子数据包时,将携带结束标识的子数据包以及所述接收缓冲区中缓存的子数据包组合发送至所述第一拦截模块,从而实现移动终端和外接设备之间的数据包传输过程。
本发明进一步提供一种数据包传输方法。
参照图5,图5为本发明数据包传输方法第一实施例的流程示意图。
本实施例提出一种数据包传输方法,在本实施例中,提供了数据包传输方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本发明中,数据包传输方法应用于移动终端100以及通过预设接口与所述移动终端连接的外接设备200,所述移动终端100包括第一应用处理器10,以及与嵌入式用户识别卡13和实体用户识别卡14连接的第一调制解调器11,所述第一调制解调器11包括第一拦截模块115和第一数据转发服务器116,所述第一应用处理器10包括第一数据读写转发模块012和与所述第一数据转发服务器116连接的第一数据转发客户端011;所述外接设备200包括第二应用处理器20和第二调制解调器21,所述第二调制解调器21包括第二数据转发服务器216,所述第二应用处理器20包括通过所述预设接口与所述第一数据读写转发模块012连接的第二数据读写转发模块022,,以及与所述第二数据转发服务器216,连接的第二数据转发客户端021;所述方法包括:
步骤S10,所述第一数据转发服务器在获取到第一拦截模块转发的数据包时,将所述数据包缓存至发送缓冲区中;
步骤S20,将所述发送缓冲区中存储的数据包发送至第一数据转发客户端,以供所述第一数据转发客户端通过第一数据读写转发模块将数据包传输给外接设备的第二数据读写转发模块,由所述第二数据读写转发模块通过第二数据转发客户端将数据包传输至第二数据转发服务器。
在本实施例中,需要说明的是,事先在终端中先定义了一个qmi cmd(命令),用于数据转发_client1向数据转发server1发送数据,此外,事先还定义了一个qmi ind(通知),用于数据转发server1向数据转发_client1发送数据,即在数据转发_client1向数据转发server1发送数据时,调用qmi cmd,在数据转发server1向数据转发_client1发送数据时,调用qmi ind。本实施例中,传输的数据包中包括flag和data字段,flag用于区分数据包是中间数据包还是结束数据包,data字段用于表示数据包的长度。
本实施例中,所述移动终端还设置有两个临时缓冲区,分别为发送缓冲区(txbuffer)和接收缓冲区(rx buffer);其中,发送缓冲区用于缓存第一数据转发服务器从第一拦截模块中截取到的数据,以供第一数据转发服务器将数据发送至第一数据转发客户端;所述接收缓冲区用于缓存第一数据转发服务器从第一数据转发客户端接收到的数据,以供第一数据转发服务器将数据发送至第一拦截模块。
在本实施例中,所述步骤S10之前,所述方法还包括:
第一拦截模块从远程SIM数据访问_server中获取移动终端的数据包,该数据包是实体用户识别卡或嵌入式用户识别卡中的数据包,在获取到数据包之后,第一拦截模块将数据包转发到第一数据转发服务器(图4的数据转发_server1)。需要说明的是,第一拦截模块从远程SIM数据访问_server中获取移动终端的数据包之后,先将截取的数据包集中存储在预设文件,该预设文件是第一拦截模块关联的文件,该文件通过水位(water mark)机制建立的文件,第一拦截模块将截取的数据包存储到预设文件,通过消息队列的方式存储。在第一拦截模块往预设文件存储数据包之后,触发通知函数给第一数据转发服务器,以告知第一数据转发服务器该预设文件中存储有数据包,以供第一数据转发服务器从该预设文件中获取数据包。
当第一数据转发服务器接收到第一拦截模块发送的通知函数时,先回调该通知函数,并通过消息队列从预设文件中获取第一拦截模块转发的数据包时,在获取到数据包之后,即可将所述数据包缓存至发送缓冲区中。
可以理解,通过消息队列的方式存取数据包,使得各个数据包的传输是按照顺序传输的。
而后,所述第一数据转发服务器将所述发送缓冲区中存储的数据包发送至第一数据转发客户端,以供所述第一数据转发客户端通过第一数据读写转发模块将数据包传输给外接设备的第二数据读写转发模块。即,第一数据转发客户端将该数据包传输至第一数据读写转发模块,然后第一数据读写转发模块通过USB线将数据包传输给外接设备的第二数据读写转发模块,应当理解,当第二数据读写转发模块接收到数据包之后,将接收到的数据包换传输至外接设备的第二拦截模块中。
本实施例提供的数据包传输方法,第一数据转发服务器在获取到第一拦截模块转发的数据包时,将所述数据包缓存至发送缓冲区中,并将所述发送缓冲区中存储的数据包发送至第一数据转发客户端,以供所述第一数据转发客户端通过第一数据读写转发模块将数据包传输给外接设备的第二数据读写转发模块,由所述第二数据读写转发模块通过第二数据转发客户端将数据包传输至第二数据转发服务器。本发明中,通过第一数据转发服务器将移动终端第一调制解调器中的数据包,传输至第一应用处理器中的第一数据转发客户端,再由第一数据转发客户端通过第一数据读写转发模块将数据包传输给外接设备的第二数据读写转发模块,以便第二数据读写转发模块将数据包传输至第二调制解调器,以实现移动终端和外接设备之间的数据包传输过程。
进一步地,参照图6,提出本发明数据包传输方法的第二实施例。
数据包传输方法的第二实施例与数据包传输方法的第一实施例的区别在于,所述步骤S20包括:
步骤S21,所述第一数据转发服务器对所述发送缓冲区中存储的数据包的容量值进行解析,以确定数据包的容量值是否超出预设阈值;
步骤S22,若数据包的容量值超出所述预设阈值,则对所述数据包进行拆分,得到各个子数据包;
步骤S23,将拆分后的各个子数据包发送至所述第一数据转发客户端。
在本实施例中,在第一数据转发服务器将接收到的数据包缓存至发送缓冲区之后,先对所述发送缓冲区中存储的数据包的容量值进行解析,以确定数据包的容量值是否超出预设阈值,具体的解析方式为:将发送缓冲区中的数据包的容量值与预设阈值进行比较,若发送缓冲区中的数据包的容量值大于该预设阈值,则执行拆分操作,本实施例中,所述预设阈值可根据实际情况进行设置,例如设置为8K。在对数据包进行拆分,得到各个子数据包之后,将拆分后的各个子数据包依次发送至所述第一数据转发客户端。
在本实施例中,所述第一数据转发服务器通过对所述发送缓冲区中存储的数据包的容量值进行解析,以确定数据包的容量值是否超出预设阈值,并在数据包的容量值大于预设阈值时,执行拆分操作,以便将拆分后的各个子数据包依次发送,防止数据包过大时,无法正常传输,本实施例保证了数据包可以正常传输。
进一步地,参照图7,提出本发明数据包传输方法的第三实施例。
数据包传输方法的第三实施例与数据包传输方法的第二实施例的区别在于,所述步骤S23包括:
步骤S231,第一数据转发服务器在拆分后的各个子数据包中,对除最后一个子数据包以外的其它各个子数据包添加中间标识,对最后一个子数据包添加结束标识;
步骤S232,将添加有标识的各个子数据包依次发送至所述第一数据转发客户端。
需要说明的是,由于第一拦截模块截取到的数据包是原始数据包,那么,当第一数据转发服务器获取到该数据包时,该数据包的容量值可能较大,若该数据包的容量值大于预设值,此时,该第一数据转发服务器对该数据包进行一次性拆分,以将该数据包拆分成多个子数据包,本实施例中,所述第一数据转发服务器对数据包的拆分,优选是按照该预设阈值,如8K的容量进行拆解,即将每8K数据拆解为一个数据包,可以理解,拆分后的最后一个数据包的容量小于或等于8K,
在拆分得到各个子数据包之后,由于拆分后的各个子数据包是结构化的数据,结构化的数据用flag和data字段表示,因此,第一数据转发服务器对各个子数据包添加flag字段和data字段。优选地,data字段表示放容量为该预设阈值的数据,该容量可选设置为8k。flag字段表示子数据包是中间数据包还是结束数据包。本实施例中,当flag字段为中间标识如字段为0时,表示子数据包是中间数据包,当flag字段为结束标识如字段为1时,表示子数据包是结束数据包,此外,当flag字段为触发器标识,如trigger flag时,代表第一数据转发客户端初始化ok。
因此,第一数据转发服务器对数据包拆分,得到各个子数据包时,对除最后一个子数据包以外的其它各个子数据包添加中间标识,对最后一个子数据包添加结束标识。最终,将添加有标识的各个子数据包依次发送至所述第一数据转发客户端,以完成数据包的转发。
可以理解,当所述第一数据转发客户端接收到子数据包之后,通过第一数据读写转发模块将子数据包传输给外接设备的第二数据读写转发模块,当外接设备的第二数据读写转发模块接收到子数据包之后,再将子数据包传输至第二拦截模块中,具体地:
外接设备的第二数据读写转发模块接收到子数据包之后,将子数据包传输至数据转发_client2(第二数据转发客户端),然后数据转发_client2将子数据包传输至数据转发_server2(第二数据转发服务器),第二数据转发服务器接收到子数据包之后,先确定子数据包携带的标识信息;
若接收到的子数据包中携带结束标识,则第二数据转发服务器将所述子数据包传输至所述第二拦截模块;
若接收到的子数据包中携带中间标识,则第二数据转发服务器将子数据包缓存至接收缓冲区,以便后续接收到携带结束标识的子数据包时,将携带结束标识的子数据包以及所述接收缓冲区中缓存的子数据包发送至所述第二拦截模块,由第二拦截模块对各个子数据包进行组合。
在本实施例中,所述第一数据转发服务器在拆分后的各个子数据包中,对除最后一个子数据包以外的其它各个子数据包添加中间标识,对最后一个子数据包添加结束标识,以将添加有标识的各个子数据包依次发送出去,后续接收到各个子数据包的第二拦截模块,即可根据接收到的各个子数据包执行组合操作。
进一步地,参照图8,提出本发明数据包传输方法的第四实施例。
数据包传输方法的第四实施例与数据包传输方法的第一至第三实施例的区别在于,所述数据包传输方法还包括:
步骤S30,所述第一数据转发服务器在接收到所述第一数据转发客户端通过所述第一数据读写转发模块发送的子数据包时,确定子数据包携带的标识信息;
步骤S40,若接收到的子数据包中携带结束标识,则将所述子数据包传输至所述第一拦截模块。
需要说明的是,所述步骤S30至步骤S40可在步骤S20之后执行,也可以在步骤S10之前执行,具体不做限定。
在本实施例中,当第一数据转发服务器在接收到所述第一数据转发客户端通过所述第一数据读写转发模块发送的子数据包时,对接收到的各个数据包的标识信息进行识别,若识别出子数据包中携带结束标识,说明该子数据包的最后一个子数据包,此时,所述第一数据转发服务器可将所述子数据包传输至所述第一拦截模块。
此外,所述步骤S30之后,所述方法还包括:
若接收到的子数据包中携带中间标识,则所述第一数据转发服务器将子数据包缓存至所述接收缓冲区,以便后续接收到携带结束标识的子数据包时,将携带结束标识的子数据包以及所述接收缓冲区中缓存的子数据包发送至所述第一拦截模块。
即,所述第一数据转发服务器接收到的子数据包中携带的是中间标识,说明当前接收到的子数据包的中间数据包,此时,所述第一数据转发服务器将子数据包缓存至所述接收缓冲区,并继续接收子数据包,当接收到携带结束标识的子数据包时,才将携带结束标识的子数据包以及所述接收缓冲区中缓存的子数据包组合发送至所述第一拦截模块中。
也就是说,所述第一数据转发服务器对接收到的子数据包的flag字段进行识别,在识别出数据包的flag字段为0时,说明当前接收到的数据包不是最后一个数据包,因此,第一数据转发服务器将当前接收到的子数据包缓存至接收缓冲区中,然后继续接收第一数据转发客户端转发的子数据包,直到接收到flag字段为1的子数据包,才将接收缓冲区中缓存的的各个子数据包提取出来,并将携带结束标识的子数据包以及所述接收缓冲区中缓存的子数据包发送至所述第一拦截模块中,由第一拦截模块对各个子数据包组合后,发送至远程SIM数据访问_server中,从而完成数据包的传输过程。
需要说明的是,当所述第一数据转发服务器将子数据包都发送至第一拦截模块时,即可将接收缓冲区清空,以便后续继续接收其它子数据包。
本实施例提供的数据包传输系统,第一数据转发服务器在接收到所述第一数据转发客户端通过所述第一数据读写转发模块发送的子数据包时,先确定子数据包携带的标识信息,若接收到的子数据包中携带结束标识,则将所述子数据包传输至所述第一拦截模块,若接收到的子数据包中携带中间标识,则所述第一数据转发服务器将子数据包缓存至所述接收缓冲区,以便后续接收到携带结束标识的子数据包时,将携带结束标识的子数据包以及所述接收缓冲区中缓存的子数据包组合发送至所述第一拦截模块,从而实现移动终端和外接设备之间的数据包传输过程。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种数据包传输系统,其特征在于,所述数据包传输系统包括移动终端,以及通过预设接口与所述移动终端连接的外接设备;所述移动终端包括第一应用处理器,以及与嵌入式用户识别卡和实体用户识别卡连接的第一调制解调器,所述第一调制解调器包括第一拦截模块和第一数据转发服务器,所述第一应用处理器包括第一数据读写转发模块和与所述第一数据转发服务器连接的第一数据转发客户端;所述外接设备包括第二应用处理器和第二调制解调器,所述第二调制解调器包括第二数据转发服务器,所述第二应用处理器包括通过所述预设接口与所述第一数据读写转发模块连接的第二数据读写转发模块,以及与所述第二数据转发服务器连接的第二数据转发客户端;
所述第一数据转发服务器,用于在获取到第一拦截模块转发的数据包时,将所述数据包缓存至发送缓冲区中;
所述第一数据转发服务器,还用于将所述发送缓冲区中存储的数据包发送至第一数据转发客户端,以供所述第一数据转发客户端通过第一数据读写转发模块将数据包传输给外接设备的第二数据读写转发模块,由所述第二数据读写转发模块通过第二数据转发客户端将数据包传输至第二数据转发服务器。
2.如权利要求1所述的数据包传输系统,其特征在于,所述第一数据转发服务器,还用于对所述发送缓冲区中存储的数据包的容量值进行解析,以确定数据包的容量值是否超出预设阈值;
若数据包的容量值超出所述预设阈值,则对所述数据包进行拆分,得到各个子数据包;
将拆分后的各个子数据包发送至所述第一数据转发客户端。
3.如权利要求2所述的数据包传输系统,其特征在于,所述第一数据转发服务器,还用于在拆分后的各个子数据包中,对除最后一个子数据包以外的其它各个子数据包添加中间标识,对最后一个子数据包添加结束标识;
将添加有标识的各个子数据包依次发送至所述第一数据转发客户端。
4.如权利要求1-3任一项所述的数据包传输系统,其特征在于,所述第一数据转发服务器,还用于在接收到所述第一数据转发客户端通过所述第一数据读写转发模块发送的子数据包时,确定子数据包携带的标识信息;
若接收到的子数据包中携带结束标识,则将所述子数据包传输至所述第一拦截模块。
5.如权利要求4所述的数据包传输系统,其特征在于,所述第一数据转发服务器,还用于若接收到的子数据包中携带中间标识,则将子数据包缓存至所述接收缓冲区,以便后续接收到携带结束标识的子数据包时,将携带结束标识的子数据包以及所述接收缓冲区中缓存的子数据包组合发送至所述第一拦截模块。
6.一种数据包传输方法,其特征在于,应用于移动终端以及通过预设接口与所述移动终端连接的外接设备,所述移动终端包括第一应用处理器,以及与嵌入式用户识别卡和实体用户识别卡连接的第一调制解调器,所述第一调制解调器包括第一拦截模块和第一数据转发服务器,所述第一应用处理器包括第一数据读写转发模块和与所述第一数据转发服务器连接的第一数据转发客户端;所述外接设备包括第二应用处理器和第二调制解调器,所述第二调制解调器包括第二数据转发服务器,所述第二应用处理器包括通过所述预设接口与所述第一数据读写转发模块连接的第二数据读写转发模块,以及与所述第二数据转发服务器连接的第二数据转发客户端;所述方法包括:
所述第一数据转发服务器在获取到第一拦截模块转发的数据包时,将所述数据包缓存至发送缓冲区中;
将所述发送缓冲区中存储的数据包发送至第一数据转发客户端,以供所述第一数据转发客户端通过第一数据读写转发模块将数据包传输给外接设备的第二数据读写转发模块,由所述第二数据读写转发模块通过第二数据转发客户端将数据包传输至第二数据转发服务器。
7.如权利要求6所述的数据包传输方法,其特征在于,所述将所述发送缓冲区中存储的数据包发送至第一数据转发客户端的步骤包括:
所述第一数据转发服务器对所述发送缓冲区中存储的数据包的容量值进行解析,以确定数据包的容量值是否超出预设阈值;
若数据包的容量值超出所述预设阈值,则对所述数据包进行拆分,得到各个子数据包;
将拆分后的各个子数据包发送至所述第一数据转发客户端。
8.如权利要求7所述的数据包传输方法,其特征在于,所述将拆分后的各个子数据包发送至所述第一数据转发客户端的步骤包括:
第一数据转发服务器在拆分后的各个子数据包中,对除最后一个子数据包以外的其它各个子数据包添加中间标识,对最后一个子数据包添加结束标识;
将添加有标识的各个子数据包依次发送至所述第一数据转发客户端。
9.如权利要求6-8任一项所述的数据包传输方法,其特征在于,所述数据包传输方法还包括:
所述第一数据转发服务器在接收到所述第一数据转发客户端通过所述第一数据读写转发模块发送的子数据包时,确定子数据包携带的标识信息;
若接收到的子数据包中携带结束标识,则将所述子数据包传输至所述第一拦截模块。
10.如权利要求9所述的数据包传输方法,其特征在于,所述确定子数据包携带的标识信息的步骤之后,所述数据包传输方法还包括:
若接收到的子数据包中携带中间标识,则所述第一数据转发服务器将子数据包缓存至所述接收缓冲区,以便后续接收到携带结束标识的子数据包时,将携带结束标识的子数据包以及所述接收缓冲区中缓存的子数据包组合发送至所述第一拦截模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710644828.4A CN107371149A (zh) | 2017-07-31 | 2017-07-31 | 数据包传输系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710644828.4A CN107371149A (zh) | 2017-07-31 | 2017-07-31 | 数据包传输系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107371149A true CN107371149A (zh) | 2017-11-21 |
Family
ID=60310159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710644828.4A Withdrawn CN107371149A (zh) | 2017-07-31 | 2017-07-31 | 数据包传输系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107371149A (zh) |
-
2017
- 2017-07-31 CN CN201710644828.4A patent/CN107371149A/zh not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107466070A (zh) | 数据传输系统、方法、外接设备和移动终端 | |
CN107318107A (zh) | 数据传输系统、方法、外接设备和移动终端 | |
CN107124737A (zh) | 移动终端及数据包传输方法 | |
CN107124738A (zh) | 移动终端及数据包传输方法 | |
CN107094152A (zh) | 数据包传输系统及方法 | |
CN107094308A (zh) | 数据包传输系统及方法 | |
CN107395606A (zh) | 数据包传输系统及方法 | |
CN107247679A (zh) | 数据传输系统及方法 | |
CN107222429A (zh) | 数据传输系统及方法 | |
CN107205053A (zh) | 数据包传输系统及方法 | |
CN107466027A (zh) | 数据传输系统、方法、外接设备和移动终端 | |
CN107371149A (zh) | 数据包传输系统及方法 | |
CN107466028A (zh) | 数据传输系统、方法、外接设备和移动终端 | |
CN107370819A (zh) | 数据包传输系统及方法 | |
CN107396399A (zh) | 数据传输系统、方法、外接设备和移动终端 | |
CN107360564A (zh) | 数据包传输系统及方法 | |
CN107396400A (zh) | 数据传输系统、方法、外接设备和移动终端 | |
CN107277174A (zh) | 数据包传输系统及方法 | |
CN107148052A (zh) | 移动终端及其数据传输方法 | |
CN107182084A (zh) | 移动终端及数据包传输方法 | |
CN107333258A (zh) | 数据包传输系统及方法 | |
CN107332930A (zh) | 数据包传输系统及方法 | |
CN107182087A (zh) | 数据包传输系统及方法 | |
CN106953984A (zh) | 数据传输系统及方法 | |
CN107318131A (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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20171121 |