数据传输的方法及装置
技术领域
本发明涉及无线通信领域,尤其涉及一种数据传输的方法及装置。
背景技术
随着物联网的发展,无线模块设备越来越多地应用在各行各业中。无线模块设备一般都内置有通信协议栈,无线模块设备依靠内置的通信协议栈进行数据传输。目前,在实现数据传输的过程中,由于网络配置情况与无线终端支持能力的不同,使得无线终端与上位机之间的数据传输速率和无线终端与网络侧之间的数据传输速率不匹配,使得在网络侧与上位机之间进行数据传输的过程中,当无线终端与上位机之间的数据传输速率小于无线终端与网络侧之间的数据传输速率时,就会造成下行数据丢失;当无线终端与上位机之间的数据传输速率大于无线终端与网络侧之间的数据传输速率时,就会造成上行数据丢失。
发明内容
本发明的实施例提供一种数据传输的方法及装置,能够控制无线终端与上位机之间或无线终端与网络侧之间的数据传输速度,以使得数据传输过程中数据不丢失,提高传输准确性。
为达到上述目的,本发明的实施例采用如下技术方案:
一种数据传输的方法,包括:
无线终端接收上位机发送的上行数据,并将所述上行数据存储在上行数据缓冲区中;
检测当前存储的待发送给网络侧的上行数据总量;
当所述上行数据总量大于第一阈值时,关闭所述无线终端的上行数据接收端口,以停止接收所述上位机发送的上行数据。
一种数据传输的方法,包括:
无线终端接收网络侧发送的下行数据,并将所述下行数据存储在下行数据缓冲区中;
检测当前存储的待发送给上位机的下行数据总量;
当所述下行数据总量大于第三阈值时,关闭所述无线终端的下行数据接收端口,以停止接收所述网络侧发送的下行数据。
一种无线终端,包括:缓存、中央处理单元CPU、上行通信接口;其中,
所述缓存,用于通过所述上行通信接口接收上位机发送的上行数据,并将所述上行数据存储在缓存内的上行数据缓冲区中;
所述CPU,用于检测所述缓存内的上行数据缓冲区中的当前存储的待发送给网络侧的上行数据总量,并在检测到所述上行数据总量大于第一阈值时,关闭上行通信接口的上行数据接收端口,以使得所述上行通信接口停止接收所述上位机发送的上行数据。
一种无线终端,包括:
一种无线终端,其特征在于,包括:缓存、CPU、下行通信接口;其中,
所述缓存,用于通过所述下行通信接口接收网络侧发送的下行数据,并将所述下行数据存储在缓存内的下行数据缓冲区中;
所述CPU,用于检测所述缓存内的当前存储的待发送给上位机的下行数据总量,并在检测到所述下行数据总量大于第三阈值时,关闭所述下行通信接口的下行数据接收端口,以使得所述下行通信接口停止接收所述网络侧发送的下行数据。
本发明实施例提供的数据传输的方法及装置,通过将下行数据和上行数据分别存储到上行数据缓冲区和下行数据缓冲区,并根据所述上行数据缓冲区和所述下行数据缓冲区内的数据总量进行判断,控制无线终端的上行数据和下行数据的传输端口的关闭,以使得据传输过程中数据不丢失,提高传输准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1中的一种数据传输的方法流程图;
图2为本发明实施例1中的另一种数据传输的方法流程图;
图3为本发明实施例1中的另一种数据传输的方法流程图;
图4为本发明实施例1中的另一种数据传输的方法流程图;
图5为本发明实施例2中的一种数据传输的装置的组成框图;
图6为本发明实施例2中的另一种数据传输的装置的组成框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
本发明实施例提供了一种数据传输的方法,如图1所示,该方法为上行数据的传输方法,具体包括:
101、无线终端接收上位机发送的上行数据,并将所述上行数据存储在上行数据缓冲区中。
102、检测当前存储的待发送给网络侧的上行数据总量。
103、当所述上行数据总量大于第一阈值时,关闭所述无线终端的上行数据接收端口,以停止接收所述上位机发送的上行数据。
其中,所述第一阈值可以设置但不局限于为上行数据缓冲区的总容量的7/10,本发明实施例对此不进行限制。
其中,所述无线终端的上行数据接收端口可以为USB(UniversalSeriesBus,通用串行总线)接口等接口,本发明实施例对此不进行限制。随着使用接口的不同,接口对应的关闭方式也不同,所述接口对应的关闭方式为本领域技术人员公知的技术,本发明对此不进行详细描述。
进一步的,在关闭所述无线终端的上行数据接收端口之后,如图2所示,该方法还包括:
104、检测所述上行数据缓冲区内剩余的上行数据总量。
105、当所述待发送上行数据总量小于第二阈值时,开启所述无线终端的上行数据接收端口,以接收所述上位机发送的上行数据。
其中,所述第二阈值可以设置但不局限于为上行数据缓冲区的总容量的1/5,本发明实施例对此不进行限制。
其中,所述开启所述无线终端的上行数据接收端口的实现方式与关闭所述无线终端的上行数据接收端口的实现方法互为反向过程,本发明实施例对此不进行仔细描述。
需要说明的是,在执行步骤102至105的同时,无线终端还实时将上行数据缓冲区中的数据,发送给网络侧。
本发明实施例还提供了一种数据传输的方法,如图3所示,该方法为下行数据的传输方法,具体包括:
201、无线终端接收网络侧发送的下行数据,并将所述下行数据存储在下行数据缓冲区中。
202、检测当前存储的待发送给上位机的下行数据总量。
203、当所述下行数据总量大于第三阈值时,关闭所述无线终端的下行数据接收端口,以停止接收所述网络侧发送的下行数据。
其中,所述第三阈值可以设置但不局限于为下行数据缓冲区的总容量的7/10,本发明实施例对此不进行限制。
其中,所述无线终端的下行数据接收端口可以为以下端口,例如对于支持WCDMA(WidebandCodeDivisionMultipleAccess,宽带码分多址)或者GRPS(GeneralPacketRadioService,通用分组无线服务)的无线终端,则下行数据接收端口为RLC(RadioLinkControl,无线链路控制)窗口;对于支持EVDO(Evolution-DataOnly,演进数据单独传输)的无线终端,则下行数据接收端口为HDR(HighDataRate,高速数据传输)状态控制端口,本发明实施例对此不进行限制。随着使用接口的不同,接口对应的关闭方式也不同,所述接口对应的关闭方式为本领域技术人员公知的技术,本发明对此不进行详细描述。
进一步的,在关闭所述无线终端的下行数据接收端口之后,如图4所示,该方法包括:
204、检测所述下行数据缓冲区内剩余的下行数据总量。
205、当所述下行数据总量小于第四阈值时,开启所述无线终端的下行数据接收端口,以接收所述网络侧发送的下行数据。
其中,所述开启所述无线终端的下行数据接收端口的实现方式与关闭所述无线终端的下行数据接收端口的实现方法互为反向过程,本发明实施例对此不进行仔细描述。
其中,所述第四阈值可以设置但不局限于为下行数据缓冲区的总容量的1/5,本发明实施例对此不进行限制。
需要说明的是,在执行步骤202至205的同时,无线终端还实时将下行数据缓冲区中的数据发送给上位机。
本发明实施例提供的数据传输的方法,通过将上行数据和下行数据分别存储到上行数据缓冲区和下行数据缓冲区,并根据所述上行数据缓冲区及下行数据缓冲区的数据总量分别进行判断,控制无线终端的上行数据的传输端口及下行数据的传输端口的关闭和开启,使得当上位机有大量数据传输到无线终端时或当网络侧有大量数据传输到无线终端时,所述无线终端能够根据自身负载能力及向网络侧转发的速率选择是否继续接收上位机或网络侧传输的信息,保证了数据传输过程中数据不丢失,提高传输准确性。
实施例2
本发明实施例提供了一种无线终端,如图5所示,该装置包括:缓存301、CPU302、上行通信接口303。
所述缓存301,用于通过所述上行通信接口303接收上位机发送的上行数据,并将所述上行数据存储在缓存内的上行数据缓冲区中。
所述CPU302,用于检测所述缓存301内的上行数据缓冲区中的当前存储的待发送给网络侧的上行数据总量,并在检测到所述上行数据总量大于第一阈值时,关闭上行通信接口303的上行数据接收端口,以使得上行通信接口303停止接收所述上位机发送的上行数据。
可选的是,所述CPU302还可以用于检测所述缓存301内的上行数据缓冲区内剩余的上行数据总量,并在检测到所述待发送上行数据总量小于第二阈值时,开启所述上行通信接口303的上行数据接收端口,以使得上行通信接口303接收所述上位机发送的上行数据。
本发明实施例还提供了一种无线终端,如图6所示,该装置包括:缓存401、CPU402、下行通信接口403;其中,
所述缓存401,用于通过所述下行通信接口403接收网络侧发送的下行数据,并将所述下行数据存储在缓存401内的下行数据缓冲区中;
所述CPU402,用于检测所述缓存401内的当前存储的待发送给上位机的下行数据总量,并在检测到所述下行数据总量大于第三阈值时,关闭所述下行通信接口403的下行数据接收端口,以使得下行通信接口403停止接收所述网络侧发送的下行数据。
可选的是,所述CPU402还可以用于检测所述缓存401内的下行数据缓冲区内剩余的下行数据总量,并在检测到所述下行数据总量小于第四阈值时,开启所述下行通信接口403的下行数据接收端口,以使得下行通信接口403接收所述网络侧发送的下行数据。
本发明实施例提供的无线终端,通过将上行数据和下行数据分别存储到上行数据缓冲区和下行数据缓冲区,并根据所述上行数据缓冲区及下行数据缓冲区的数据总量分别进行判断,控制无线终端的上行数据的传输端口及下行数据的传输端口的关闭和开启,使得当上位机有大量数据传输到无线终端时或当网络侧有大量数据传输到无线终端时,所述无线终端能够根据自身负载能力及向网络侧转发的速率选择是否继续接收上位机或网络侧传输的信息,保证了数据传输过程中数据不丢失,提高传输准确性。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。