具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
实施例一
本发明实施例提供一种数据多承载并行传输方法,以下结合附图对本实施例进行详细说明。
图1为本发明实施例的数据多承载并行传输方法流程图,如图1所示,本发明实施例的方法应用于进行数据传输的至少两个终端设备之间,首先将需要进行数据传输的两个终端设备通过某一种承载方式建立连接;根据预定的准则或策略,所述两个终端设备会分别作为数据传输的服务器端和客户端准备进行数据传输,本实施例的方法主要包括下列步骤:
101:根据服务器端和客户端之间的所有承载类型和承载能力选择数据传输的主承载和辅助承载;
根据本实施例,服务器端通过建立会话和客户端进行交互,协商服务器端和客户端之间可用的所有承载类型,和各个承载类型的承载能力:
首先,服务器端要探测本身的承载类型和各个承载类型的承载能力;
然后,服务器端向客户端发送承载能力探测请求;客户端接收所述承载能力探测请求后,将客户端的承载类型和各个承载类型的承载能力发送给服务器端;服务器端再根据服务器端的承载类型和承载能力,以及客户端的承载类型和承载能力,协商与客户端的所有承载类型和承载能力。
例如,当服务器端支持五种承载类型,而客户端只支持其中四种时,则协商的结果为,服务器端和客户端之间的承载类型为四种。也就是说,承载类型和各个承载类型的能力是通过求取服务器端和客户端的承载类型和各个承载类型的承载能力的交集来实现。
服务器端在得到所有可用的承载类型和各个承载类型的承载能力后,将选择其中一种作为主承载,其他作为辅助承载,以便服务器端把要传输的数据任务,根据各个承载类型的承载能力分配到各个数据承载通道上去。而确认哪种承载类型是主承载,哪种承载类型是辅助承载的策略可以由服务器端设定,例如,将承载能力最强的承载类型作为主承载,其他作为辅助承载。本发明实施例并不以此作为限制。
根据本实施例,确定主承载和辅助承载后,服务器端还要将主承载的信息发送到客户端,以便客户端在主承载上监听多承载传输数据的命令。
根据本实施例,在探测当前和客户端的所有承载类型和各个承载类型的承载能力的步骤之前还要确定是否采用多承载并行传输方式。
当数据交互由服务器端发起时,服务器端要根据用户的选择判断是否使用多承载并行传输方式,如果是,则探测当前和客户端的所有承载类型和各个承载类型的承载能力,如果不是,则直接通过最先建立连接时的承载方式传输数据。
当数据交互由客户端发起时,客户端会向服务器端发送数据传输请求,服务器端再根据该请求判断是否使用多承载并行传输方式,如果是,则探测当前和客户端的所有承载类型和各个承载类型的承载能力,如果不是,则直接通过最先建立连接时的承载方式传输数据。
上述只是举例说明,本发明实施例并不以此作为限制。
102:根据所述承载类型和承载能力以及待传输数据的数据信息选择分配策略;
根据本实施例,当服务器端为数据传输发起端时,可以直接获取待传输数据的数据信息;当客户端为数据传输的发起端时,客户端会将待传输数据的数据信息发送给服务器端,以便服务器端根据该数据信息以及可用的承载类型和各个承载类型的承载能力选择分配策略。
根据本实施例,分配策略是用于决定待传输数据的数据分块以及哪些数据块在哪种承载类型上传输,该分配策略可以预先设定,以供选择,也可以根据数据信息和承载类型、承载能力实时调整,本发明实施例并不以此作为限制。例如,分配策略可以是时间最短方式分配,该分配策略表示把待传输数据平均分配给各个承载方式,保证所有承载方式同时传输完毕;例如,分配策略也可以是按比例分配,该分配策略表示把待传输数据按照各个承载类型的承载能力的比例进行分块,并分配给相应的承载方式,根据“能者多劳”的原则由各个承载方式传输数据。
103:根据所述分配策略进行数据传输。
根据本实施例,由于服务器端和客户端都可能发起数据传输,所以,服务器端在选择好分配策略后,会将该分配策略发送给客户端,以便客户端在传输数据到服务器端时,根据该分配策略对待传输数据进行分块和承载类型分配;或者在接收到服务器端传输的数据时,根据该分配策略对接收到的数据进行汇总。
根据本实施例,不论是服务器端发起数据传输,还是客户端发起数据传输,都会按照下述步骤进行:
数据发送端根据所述分配策略拆分待传输数据;
数据发送端将拆分后的待传输数据分配到所述主承载或辅助承载进行传输;
数据接收端根据所述分配策略对接收到的数据进行汇总。
图2为本发明实施例的服务器端和客户端的数据交互示意图,下面结合图2以服务器端为PC(Personal Computer,个人计算机),客户端为手机(Mobile)为例对本发明实施例的方法进行说明,在本实施例中,与图1所示实施例相同的部分不再赘述,而本领域技术人员应该清楚,本实施例只是举例说明,而并非以此作为限制。
201:准备传输数据;
如果该数据交互由PC机发起,则直接进入步骤202;如果该数据交互由手机发起,则手机先向PC机发送数据传输请求,再进入步骤202。
202:判断是否采用多承载数据传输方式,如果是,则进入步骤203,否则按照普通数据传输方式传输,也即建立连接时候的承载类型传输;
203:探测当前和手机的所有承载类型和各个承载类型的承载能力;
204:确定主承载和辅助承载,并将主承载的信息发送给手机;
205:协商数据分配策略;
如果该数据交互由PC机发起,则PC机知道待传输数据的数据信息,则PC机直接根据该数据信息以及上述主承载和辅助承载协商数据分配策略;如果该数据交互由手机发起,则手机先向PC机发送待传输数据的数据信息,PC机再根据该数据信息以及上述主承载和辅助承载协商数据分配策略。
206:根据分配策略拆分并发送数据,或者接收并合并数据。
如果该数据交互由PC机发起,则PC机根据所述分配策略对待传输数据进行拆分,并将拆分后的数据分配到相应的承载类型上发送给手机,手机接收待拆分后的数据并根据分配策略作汇总合并;如果该数据交互由手机发起,则手机根据所述分配策略对待传输数据进行拆分,并将拆分后的数据分配到相应的承载类型上发送给PC机,PC机接收该拆分后的数据并根据分配策略作汇总合并。
举例说明,PC机向手机传输一个8G的目录,在这个根目录下分成几个小目录,2G、1M、1K等,这时服务器端PC机确定分配策略,并根据该分配策略把2G的目录分给USB传输,把1M分给BT传输,把1K分给Infrared等,最后数据接收端手机再做数据汇总。
本实施例通过将待传输数据拆分到多种承载类型传输的方式,加快了数据传输速度。
实施例二
本发明实施例还提供一种数据多承载并行传输装置,作为服务器端与客户端进行数据交互,以下结合附图对本实施例进行详细说明。
图3为本发明实施例的数据多承载并行传输装置组成框图,本实施例的装置采用如实施一的方法进行数据传输,所述装置包括:
承载方式选择单元31,用于根据数据传输双方的承载类型和承载能力选择数据传输的主承载和辅助承载;
分配策略选择单元32,用于根据所述承载类型和承载能力以及待传输数据的数据信息选择分配策略;
分配策略发送单元34,用于将所述分配策略发送到数据传输的对方;
数据传输单元33,用于根据所述分配策略进行数据传输。
根据本实施例,所述数据传输单元33还包括:
数据拆分模块331,用于在发送数据时,根据所述分配策略拆分待传输数据;
数据分配模块332,用于根据分配策略将所述拆分后的待传输数据分配到所述主承载或辅助承载传输;
数据汇总模块333,用于在接收数据时,根据所述分配策略对接收到的数据进行汇总。
根据本实施例,所述装置还包括:
数据信息获取单元35,用于获取数据信息,并将获取到的数据信息发送到所述分配策略选择单元。
根据本实施例,所述装置还包括:
承载信息探测单元36,用于探测数据传输双方的所有的承载方式和各个承载方式的承载能力,并发送给所述承载方式选择单元31。
根据本实施例,所述装置还包括:
数据传输请求接收单元37,用于接收数据传输的对方发送的数据传输请求,确定数据传输的形式,是采用多承载方式传输数据,还是采用普通的数据传输方式。
根据本实施例,所述装置还包括:
主承载信息发送单元38,用于将主承载信息发送到数据传输的对方。
本实施例通过的数据多承载并行传输装置,应用实施例一的方法,通过将待传输数据拆分到多种承载类型传输的方式,加快了数据传输速度。
实施例三
本发明实施例还提供一种数据多承载并行传输装置,作为客户端与服务器端进行数据交互,以下结合附图对本实施例进行详细说明。
图4为本发明实施例的数据多承载并行传输装置组成框图,本实施例的装置采用如实施一的方法进行数据传输,所述装置包括:
承载信息发送单元41,用于根据数据传输对方的承载信息探测请求,将承载类型和承载能力发送给数据传输的对方;
分配策略接收单元42,用于接收数据传输的对方发送的分配策略;
数据传输单元43,用于根据所述的分配策略进行数据传输。
根据本实施例,所述数据传输单元43还包括:
数据拆分模块431,用于在作为数据传输方发送数据时,根据所述分配策略拆分待传输数据;
数据分配模块432,用于根据分配策略将所述拆分后的待传输数据分配到所述主承载或辅助承载传输。
根据本实施例,所述数据传输单元43还包括:
数据汇总模块433,用于在作为数据接收方接收数据时,根据所述分配策略对接收到的数据进行汇总。
根据本实施例,所述装置还包括:
数据传输请求发送单元44,用于在有数据准备传输时,发送数据传输请求到数据传输的对方,以请求进行多承载数据传输。
根据本实施例,所述装置还包括:
数据信息发送单元45,用于在作为数据传输方采用多承载进行数据传输过程中,将待传输数据的数据信息发送到数据传输的对方,以便数据传输的对方根据该数据信息以及双方协定的承载方式和承载能力确定数据传输的分配策略。
根据本实施例,所述装置还包括:
主承载信息接收单元46,用于接收数据传输的对方发送的主承载信息,以便在主承载上监听多承载传输数据的命令。
本实施例通过的数据多承载并行传输装置,应用实施例一的方法,通过将待传输数据拆分到多种承载类型传输的方式,加快了数据传输速度。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。