基于点对点的数据传输系统及方法

文档序号:7923122阅读:175来源:国知局
专利名称:基于点对点的数据传输系统及方法
技术领域
本发明涉及计算机网络技术领域,更具体地说,涉及基于点对点的数据 传输系统及方法。
背景技术
点对点(Peer-to-Peer,筒称"P2P")技术是指网络用户之间直接传递数 据,进行数据传输的各个节点是对等的。目前P2P技术的应用非常广泛,而即 时通信技术就是P2P技术的典型代表。通过P2P技术,即时通信的双方可以直 接进行文字、语音或视频的数据传输。
通过网络通道进行点对点的数据传输时,各通道中的数据(即分片数据) 较大,因此占用的带宽较多,从而导致数据传输较慢。另外,由于通道中的 数据量大,各通道分享数据比较困难,消耗内存也大。

发明内容
本发明的目的之一在于提供一种基于点对点的数据传输系统及方法,旨 在解决现有技术数据传输较慢的问题。
为了实现发明目的,所述系统包括通过网络通道进行数据传输的发送终 端和接收终端,该发送终端包括数据分割模块,按照预设分割单位分割待传 输的数据,以将分割后的数据发送至接收终端;该接收终端包括数据校-验才莫 块,对所述分割后的数据进行校验。
接收终端还可包括累积模块,对接收到的分割后的数据进行累积,并 对所累积的数据进行阈值判断,以及将达到阈值的数据发送给数据校验才莫块。
该数据校验模块可进一步获取达到阈值的数据的哈希值,并根据哈希值 校验所述达到阈值的数据是否正确,以及将校验正确的数据进行存储。
该预设分割单位可以为1K,该阈值可以大于1K。
根据本发明的另一个方面,提供了基于点对点的数据传输方法,用于发 送终端与接收终端之间通过网络通道进行的数据传输,包括以下步骤A.发 送终端按照预设分割单位分割待传输的数据,并将分割后的数据通过网络通 道传输至接收终端;B.接收终端对接收到的分割后的数据进行校验。
其中,步骤A之前还可包括在发送终端中设置预设分割单位。
其中,步骤B可包括Bl.接收终端对分割后的数据进行累积,并对所累积的数据进行阈值判
断;
B2.对达到阈值的数据进行校验。
步骤B2可进一步包括获取达到阈值的数据的哈希值,并根据所述哈希 值校验所述达到阈值的数据是否正确,以及将校验正确的数据进行存储。 在步骤B1之前还可包括在接收终端设置阈值。 该预设分割单位可以为1K,该阈值可以大于1K。
根据本发明的上述系统及方法,可使得网络通道中的数据量变小,因此 占用的带宽较少,从而提高了数据传输速度。


图1是本发明基于点对点的数据传输系统的示范性结构示意图2是本发明的 一个实施例中基于点对点的数据传输系统的结构示意图3是本发明的 一个实施例中基于点对点的数据传输系统的结构示意图4是本发明的 一个实施例中基于点对点的数据传输方法的流程图5是本发明的 一个实施例中对分割后的数据进行校验的方法的流程图6是本发明的 一个实施例中基于点对点的数据传输方法的流程图。
具体实施例方式
在本发明中,通过发送终端按照预设分割单位分割传输的数据,并将分 割后的数据发送至接收终端,接收终端对分割后的数据进行校验。这样,提 高了数据传输速度。
图1示出了本发明中基于点对点的数据传输系统的示范性结构,该系统包 括若干个终端,其中每个终端既可以是发送终端,也可以是接收终端。
图2示出了本发明的一个实施例中基于点对点的数据传输系统的结构,该 系统是本发明的一个筒明系统,包括发送终端100以及与发送终端100通过网 络通道进行数据传输的接收终端200。应当说明的是,本发明所有图示中各设 备之间的连接关系是为了清楚阐释其信息交互及控制过程的需要,因此应当 视为逻辑上的连接关系。另外需要说明的是,各功能模块之间的通信方式可 以采取多种,本发明的保护范围不应限定为某种特定类型的通信方式。其中 发送终端100包括数据发送模块101和数据分割模块102,其中 数据发送模块101用于通过网络通道发送分割后的数据至接收终端200。 数据分割模块102与数据发送模块101进行数据交互,用于按照预设分割单位对待传输的数据进行分割,并通过数据发送模块101将分割后的数据发送 至接收终端。
接收终端200包括数据接收模块201和数据校验模块203,其中 数据接收模块201用于接收发送终端1 OO发送的分割后的数据。 数据校验模块203与数据接收模块201进行数据交互,用于对分割后的数 据进行校验。
应当说明的是,发送终端100与接收终端200是相对而言的,在基于点对 点的数据传输系统中,进行数据传输的各终端既可以是发送终端,也可以是 接收终端。另外,各终端之间传输数据的网络通道可以是P2P通道、HTTP通 道和/或其它网络通道。各通道同时传输分割后的数据时,通道中的数据量比 较小,占用带宽少,因此能提高数据传输的速度。
图3示出了本发明的另 一个实施例中基于点对点的数据传输系统的结构, 该系统是在上述实施例的基础上的一个更详细的系统,包括通过网络通道进 行数据传输的发送终端100和接收终端200,其中
发送终端100的组成与上述实施例相同,在此不再赘述。
接收终端200除了包括上述数据接收模块201和数据4交验模块203外,还包 括累积模块202和存储模块204,其中
累积模块202分别与数据接收模块201及数据校验才莫块203进行数据交互, 用于对接收到的分割后的数据进行累积,并对累积的lt据进行阈值判断,以 及将达到阈值的数据发送给数据校验模块203。
存储才莫块204分别与累积模块202及数据校验模块203进行数据交互,用于 存储校验正确的累积数据。
在一个实施例中,数据校验模块203进一步用于获耳又达到阈值的数据的哈 希值,并根据所述哈希值校验达到阈值的数据是否正确,以及将校验正确的 数据存储至存储模块204。
在一个实施例中,预设分割单位优选设置为1K,当然也可以设置为其它 大小(例如2K、 3K、 4K等),但不应设置为太大。阈值可设置为大于1K,优 选设置为128K,也可以设置为其它大小, 一般为32K 512K之间。
图4示出了本发明的一个实施例中基于点对点的数据传输方法的流程,该 方法流程基于图2所示的系统结构,具体过程如下
在步骤S401中,发送终端100按照预设分割单位分割待传输的数据,并将 分割后的数据通过网络通道发送至接收终端200。
在步骤S402中,接收终端200对接收到的分割后的凄t据进行校验。在一个实施例中,在执行所有步骤之前应还包括在发送终端100中设置 预设分割单位。
在一个实施例中,预设分割单位优选设置为1K,也可以设置为其它大小。 发送终端100与接收终端200之间进行数据传输的网络通道可以是P2P通道、 HTTP通道和/或其它网^各通道。
图5示出了本发明的 一个实施例中对分割后的数据进行校验的方法流程, 该方法基于图3所示的系统结构,具体过程如下
在执行所有步骤之前,在接收终端200设置阈值。阈值大小大于1K,优选 设置为128K。也可以将阈值设置为其它大小, 一般可设置在32K 512K之间。
在步骤S501中,接收终端200的累积模块202对分割后的数据进行累积, 并将所累积的数据进行阈值判断。
在步骤S502中,数据校验模块203对达到阈值的数据进行校验。在一个实 施例中,数据校验模块203获取达到阈值的数据的哈希(Hash)值,并根据哈 希值校验达到阈值的数据是否正确,以及将校验正确的数据进行存储。
图6示出了本发明的一个实施例中基于点对点的数据传输方法的流程,该 实施例详细描述了数据传输的具体实现过程,具体如下
在执行所有步骤之前,在发送终端100设置预设分割单位,在接收终端200 设置阈值。在一个实施例中,预设分割单位设置为1K,阈值设置为大于1K, 优选"^殳置为128K。
在步骤S601中,发送终端100的数据分割模块102按照预设分割单位对传 输的数据进行分割,得到分割后的数据。在一个优选实施例中,预设分割单 位为1K,数据分割模块102以1 K为单位分割传输的数据。
在步骤S602中,数据发送模块101通过各种网络通道将分割后的数据传输 至接收终端200。在一个实施例中,网络通道可包括P2P通道、HTTP通道和/ 或其它网络通道等。
在步骤S603中,接收终端200的数据接收模块201接收分割后的数据,累 积模块202累积分割后的数据。
在步骤S604中,判断累积模块202中的累积数据是否达到阈值,若是,则 进入步骤S605,否则,返回步骤S603。
在步骤S605中,数据校验模块203获取达到阈值的数据的哈希值。在一个 优选实施例中,预设分割单位设置为1K,阈值大小设置为128K,则当累积模 块202累积的数据达到128K时,数据校验模块203根据哈希算法获取该128K的 数据的哈希值。在步骤S606中,数据校验模块203根据该哈希值校验达到阈值的数据是否 正确,若是,则进入步骤S607,否则,返回步骤S603。关于根据哈希算法校 验数据是否正确是现有技术,在此不再赘述。
在步骤S607中,存储校验正确的累积数据至存储模块204。
应当说明的是,本发明所提供的基于点对点的数据传输系统及方法,用 于各终端之间进行的数据传输,即各客户端之间可以采用本发明所提供的数 据传输系统及方法,而客户端与服务器之间也可采用本发明所提供的数据传 输系统及方法。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本 发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本 发明的保护范围之内。
权利要求
1、一种基于点对点的数据传输系统,包括通过网络通道进行数据传输的发送终端和接收终端,其特征在于,所述发送终端包括数据分割模块,按照预设的分割单位分割待传输的数据,以将分割后的数据发送至接收终端;所述接收终端包括数据校验模块,对所述分割后的数据进行校验。
2、 根据权利要求l所述的系统,其特征在于,所述接收终端还包括 累积模块,对接收到的分割后的数据进行累积,并对所累积的数据进行阈值判断,以及将达到阈值的数据发送给数据校验模块。
3、 根据权利要求2所述的系统,其特征在于,所述数据校验模块进一步 获取所述达到阈值的数据的哈希值,并根据所述哈希值校验所述达到阈值的 数据是否正确,以及将校验正确的数据进行存储。
4、 根据权利要求1至3中任意一项所述的基于点对点的数据传输系统,其 特征在于,所述预设分割单位为1K,所述阈值大于1K。
5、 一种基于点对点的数据传输方法,用于发送终端与接收终端之间通过 网络通道进行的数据传输,其特征在于,所述方法包括以下步骤A. 所述发送终端按照预设分割单位分割待传输的数据,并将分割后的数 据通过网络通道传输至接收终端;B. 所述接收终端对接收到的分割后的数据进行校验。
6、 根据权利要求5所述的基于点对点的数据传输方法,其特征在于,所 述步骤A之前还包括在发送终端中设置预设分割单位。
7、 根据权利要求5所述的基于点对点的数据传输方法,其特征在于,所 述步骤B包括Bl.所述接收终端对分割后的数据进行累积,并对所累积的数据进行阈值 判断;B2.对达到阈值的数据进行校验。
8、 根据权利要求7所述的基于点对点的数据传输方法,其特征在于,所 述步骤B2进一步包括获取达到阈值的数据的哈希值,并根据所述哈希值校验所述达到阈值的数据是否正确,以及将校验正确的数据进行存储。
9、 根据权利要求7所述的基于点对点的数据传输方法,其特征在于,还 包括在接收终端设置阈值。
10、 根据权利要求5至9中任意一项所述的基于点对点的数据传输方法, 其特征在于,所述预设分割单位为1K,所述阈值大于1K。
全文摘要
本发明涉及计算机网络技术领域,提供了一种基于点对点的数据传输系统及方法。所述方法基于发送终端与接收终端之间通过网络通道进行的数据传输,包括以下步骤A.所述发送终端按照预设分割单位分割待传输的数据,并将分割后的数据通过网络通道传输至接收终端;B.所述接收终端对接收到的分割后的数据进行校验。采用本发明提供的基于点对点的数据传输系统及方法,能提高数据传输的速度。
文档编号H04L12/56GK101447926SQ20081018666
公开日2009年6月3日 申请日期2008年12月16日 优先权日2008年12月16日
发明者华有为 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1