一种点对点数据传输方法及系统与流程

文档序号:11279399阅读:684来源:国知局
一种点对点数据传输方法及系统与流程

本发明涉及数据网络传输技术领域,尤其涉及一种点对点数据传输方法及系统。



背景技术:

在当前远程跨局域网取证产品中,由于取证数据量较大通常希望能够点对点的直接传输数据。而不是通过中转服务器来中转,这会对中转服务器的带宽及负载能力带来较大的考验。目前点对点传输数据使用比较广泛的是基于udp(userdatagramprotocol,用户数据报协议)传输的ice网络穿透方案,而基于tcp(transmissioncontrolprotocol,传输控制协议)的网络穿透目前没有解决方案。

基于udp传输的网络穿透方案最大的不足之处在于udp是非连接的不可靠传输,这对于实时音视频通话是适用的,丢失几帧数据影响不大。但这对于数据取证来说是一个硬伤,尤其在跨局域网点对点数据传输的过程中无法保证数据的完整性。

也就是说,亟需提供一种点对点数据传输方法,来解决现有基于udp传输的网络穿透方案无法保证数据完整性的问题。



技术实现要素:

本发明实施例提供了一种点对点数据传输方法及系统,用以解决现有基于udp传输的网络穿透方案无法保证数据完整性的问题。

本发明实施例提供了一种点对点数据传输方法,包括:

服务器分别与客户端a和客户端b建立传输控制协议tcp监听,并通过tcp监听端口分别与所述客户端a和客户端b建立连接;

接收所述客户端a或客户端b发送的登录请求,并接收所述客户端a发送的客户端a的唯一识别码uuid和内网地址或客户端b发送的客户端b的uuid和内网地址;

确定所述客户端a的外网地址或客户端b的外网地址,并存储所述客户端a的配对记录或客户端b的配对记录;其中,所述配对记录中至少包括uuid、内网地址和外网地址;

接收所述客户端a或客户端b发送的配对请求,所述配对请求中携带有所述客户端b的uuid或客户端a的uuid,根据所述客户端b的uuid或客户端a的uuid进行检索,当确定所述客户端b或客户端a在线时,将所述客户端b的配对记录或客户端a的配对记录发送至所述客户端a或客户端b,以由所述客户端a根据所述客户端b的配对记录向所述客户端b发送连接请求,与所述客户端b建立点对点连接,并进行数据传输;或,以由所述客户端b根据所述客户端a的配对记录向所述客户端a发送连接请求,与所述客户端a建立点对点连接,并进行数据传输。

进一步地,作为一个可执行方案,所述方法还包括:

若接收到所述客户端a或所述客户端b发送的第一连接失败通知信息,则将所述客户端a的配对记录或所述客户端b的配对记录发送给所述客户端b或客户端a,以由所述客户端b或客户端a发送连接请求。

进一步地,作为一个可执行方案,在若接收到所述客户端a或所述客户端b发送的第一连接失败通知信息,则将所述客户端a的配对记录或所述客户端b的配对记录发送给所述客户端b或客户端a,以由所述客户端b或客户端a发送连接请求之后,所述方法还包括:

若接收到所述客户端b或所述客户端a发送的第二连接失败通知信息,则分别通知所述客户端b和所述客户端a以中继方式传输数据。

进一步地,本发明实施例还提供了一种点对点数据传输方法,包括:

客户端a与服务器建立tcp监听,并通过tcp监听端口与服务器建立连接;

向服务器发送登录请求,并发送自身对应的uuid和内网地址,以由服务器确定所述客户端a的外网地址,并存储所述客户端a的配对记录;其中,所述配对记录中至少包括uuid、内网地址和外网地址;

向所述服务器发送配对请求,所述配对请求中携带有客户端b的uuid,以由所述服务器根据所述客户端b的uuid进行检索,并在确定所述客户端b在线时,将所述客户端b的配对记录发送至所述客户端a;

接收所述服务器发送的所述客户端b的配对记录,并根据所述客户端b的配对记录通过所述tcp监听端口向所述客户端b发送连接请求,与所述客户端b建立点对点连接,并进行数据传输。

具体地,作为一个可执行方案,所述根据所述客户端b的配对记录通过所述tcp监听端口向所述客户端b发送连接请求,与所述客户端b建立点对点连接,并进行数据传输,包括:

根据所述客户端b的配对记录通过所述tcp监听端口向所述客户端b的内网地址发送连接请求,若所述客户端b与所述客户端a在同一局域网,则直接与所述客户端b建立点对点连接,并进行数据传输;

若否,则连接失败,向所述客户端b的外网地址发送连接请求,与所述客户端b建立点对点连接,并进行数据传输,若连接失败,则向所述服务器发送第一连接失败通知信息,以由所述服务器将所述客户端a的配对记录发送给所述客户端b,并由所述客户端b向所述客户端a发送连接请求,与客户端b建立点对点连接,并进行数据传输。

进一步地,作为一个可执行方案,所述方法还包括:

接收所述客户端b发送的连接请求,并与所述客户端b建立点对点连接,并进行数据传输;或,

接收所述客户端b发送的连接请求,无法与所述客户端b建立点对点连接,并向所述服务器发送第二连接失败通知信息。

进一步地,作为一个可执行方案,所述方法还包括:

接收所述服务器发送的以中继方式传输数据的通知信息。

进一步地,本发明实施例还提供了一种点对点数据传输系统,所述系统包括:

服务器,用于分别与客户端a和客户端b建立tcp监听,并通过tcp监听端口分别与所述客户端a和客户端b建立连接;接收所述客户端a或客户端b发送的登录请求,并接收所述客户端a发送的客户端a的uuid和内网地址或客户端b发送的客户端b的uuid和内网地址;确定所述客户端a的外网地址或客户端b的外网地址,并存储所述客户端a的配对记录或客户端b的配对记录;其中,所述配对记录中至少包括uuid、内网地址和外网地址;接收所述客户端a或客户端b发送的配对请求,所述配对请求中携带有所述客户端b的uuid或客户端a的uuid,根据所述客户端b的uuid或客户端a的uuid进行检索,当确定所述客户端b或客户端a在线时,将所述客户端b的配对记录或客户端a的配对记录发送至所述客户端a或客户端b,以由所述客户端a根据所述客户端b的配对记录向所述客户端b发送连接请求,与所述客户端b建立点对点连接,并进行数据传输;或,以由所述客户端b根据所述客户端a的配对记录向所述客户端a发送连接请求,与所述客户端a建立点对点连接,并进行数据传输;

客户端a,用于与所述服务器建立tcp监听,并通过tcp监听端口与服务器建立连接;向服务器发送登录请求,并发送自身对应的uuid和内网地址,以由服务器确定所述客户端a的外网地址,并存储所述客户端a的配对记录;其中,所述配对记录中至少包括uuid、内网地址和外网地址;向所述服务器发送配对请求,所述配对请求中携带有客户端b的uuid,以由所述服务器根据所述客户端b的uuid进行检索,并在确定所述客户端b在线时,将所述客户端b的配对记录发送至所述客户端a;接收所述服务器发送的所述客户端b的配对记录,并根据所述客户端b的配对记录通过所述tcp监听端口向所述客户端b发送连接请求,与所述客户端b建立点对点连接,并进行数据传输。

本发明有益效果如下:

本发明实施例提供了一种点对点数据传输方法及系统,在该方法中,服务器分别与客户端a和客户端b建立连接,并根据接收到的客户端a或客户端b发送的信息存储客户端a或客户端b的配对记录,其中,配对记录中至少包括uuid、内网地址和外网地址,以及,接收客户端a发送的配对请求,并根据该请求将客户端b的配对记录发送至客户端a,以由客户端a根据该配对记录向客户端b发送连接请求,与客户端b建立点对点连接,并进行数据传输。在本发明所述技术方案由于采用tcp协议进行数据传输,并且tcp是面向连接的可靠传输,因此可以实现远程取证数据点对点传输,即实现跨局域网点对点的数据传输的同时有效地保证数据的完整性。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1所示为本发明实施例一所述的点对点数据传输方法的流程示意图;

图2所示为本发明实施例所述的点对点连接模型示意图;

图3所示为本发明实施例二所述的点对点数据传输方法的流程示意图;

图4所示为本发明实施例三所述的点对点数据传输方法的流程示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

在详细说明具体实施例之前,首先了解一些基本网络数据传输信息。

由于基于udp传输的网络穿透方案无法保证数据完整性,因此,远程数据传输方案的网络传输方式本发明实施例所选择的传输方式是tcp传输协议,用以保证数据传输的可靠性,本发明所述技术方案主要应用到tcp的端口复用特性,一个tcp端口可以同时与多方进行通信,协议层通过源地址、源端口、目的地址、目的端口四元组来区分。那么接下来的重点就是如何实现网络穿透。用一个典型的使用场景进行原理说明,设取证端为客户端a,被取证端为客户端b,客户端a和客户端b分别位于不同局域网内,网络路由规则上客户端a是无法与客户端b直接建立连接的。因此,本发明通过在公网上部署一台服务器server来协助客户端a与客户端b建立点到点连接。具体实现方案见下述具体实施例。

实施例一:

本发明实施例一提供了一种点对点数据传输方法,如图1所示,其为本发明实施例一所述的点对点数据传输方法的流程示意图,所述方法可包括以下步骤:

步骤101:服务器分别与客户端a和客户端b建立tcp监听,并通过tcp监听端口分别与所述客户端a和客户端b建立连接。

步骤102:接收所述客户端a或客户端b发送的登录请求,并接收所述客户端a发送的客户端a的uuid和内网地址或客户端b发送的客户端b的uuid和内网地址。

步骤103:确定所述客户端a的外网地址或客户端b的外网地址,并存储所述客户端a的配对记录或客户端b的配对记录;其中,所述配对记录中至少包括uuid、内网地址和外网地址。

步骤104:接收所述客户端a或客户端b发送的配对请求,所述配对请求中携带有所述客户端b的uuid或客户端a的uuid,根据所述客户端b的uuid或客户端a的uuid进行检索,当确定所述客户端b或客户端a在线时,将所述客户端b的配对记录或客户端a的配对记录发送至所述客户端a或客户端b,以由所述客户端a根据所述客户端b的配对记录向所述客户端b发送连接请求,与所述客户端b建立点对点连接,并进行数据传输;或,以由所述客户端b根据所述客户端a的配对记录向所述客户端a发送连接请求,与所述客户端a建立点对点连接,并进行数据传输。

也就是说,首先,服务器分别与客户端a和客户端b建立tcp监听,然后客户端a和b分别复用监听端口再与服务器建立一个tcp连接。此时服务器可以通过解析tcp数据报的源地址分别获得客户端a和客户端b的经nat转换后的外网地址。客户端a和客户端b分别与服务器建立连接后,任意一方可以发送连接配对请求,服务器通过识别身份通知预配对连接的一端其连接对端的配对记录,与配对连接方再次复用tcp端口以分别向对端的外网地址发起连接请求,从而实现点对点连接,并进行数据传输。其中,建立点对点连接的模型图可如图2所示。

进一步地,作为一个可执行方案,所述方法还可包括步骤s1:

步骤s1:若接收到所述客户端a或所述客户端b发送的第一连接失败通知信息,则将所述客户端a的配对记录或所述客户端b的配对记录发送给所述客户端b或客户端a,以由所述客户端b或客户端a发送连接请求。

对于步骤s1,以一例子进行说明,如图2所示,以客户端a和客户端b两个局域网的网关都是地址限制型nat来举例,客户端a首先向客户端b外网地址发送syn(握手信号)连接请求,由于客户端b未向客户端a的外网地址发过任何数据,路由器b访问控制列表没有记录,此时客户端a发向客户端b的syn包会被路由器b拦截丢弃。但没关系客户端a发向客户端b连接请求已在路由器a上打了一个客户端a内网地址到客户端b外网地址的“洞”,路由器a的访问控制列表上增加了客户端b的外网地址。当客户端b向客户端a的外网地址发起连接时,由于a刚才发送的连接请求已经打了一个“洞”,因此,路由器a不会拒绝客户端b的连接请求,会将客户端b的连接请求转发给客户端a。那么此时客户端a和客户端b就建立的点对点连接。

上述工作原理中说明了一个典型使用场景的穿透过程,考虑到使用场景的多样性和复杂性,本发明所述技术方案需要满足全场景可用。首先要考虑到对于不同网关的nat类型的穿透过程。

我们通常将网关的nat类型分为四种类型:完全锥型nat,地址限制型nat,端口限制性nat,对称型nat。对于前三种类型nat上述的网络穿透方案都可以实现点对点连接。对于对称型nat由于对数据转发规则的严格限制,我们可以通过在服务器中转的方式来实现全场景可连接的请求。目前市面上大部分网关的nat类型都是前三种,对称型nat相对较少,那么在整个系统中通过服务器中转数据的连接相对较少对于系统的负载要求是可以接受的。具体中转方式传输方式可见下述步骤s2。

进一步地,作为一个可执行方案,在步骤s1若接收到所述客户端a或所述客户端b发送的第一连接失败通知信息,则将所述客户端a的配对记录或所述客户端b的配对记录发送给所述客户端b或客户端a,以由所述客户端b或客户端a发送连接请求之后,所述方法还可包括步骤s2:

步骤s2:若接收到所述客户端b或所述客户端a发送的第二连接失败通知信息,则分别通知所述客户端b和所述客户端a以中继方式传输数据。

需要说明的是,方案设计需要满足在windowsxp、windows7/8/10、linux平台上都能够使用。其中主要差异是各平台的网络协议版本有所不同网络连接的细节会有所差异。其中主要考虑几个问题:一、windowsxp的tcp版本为非伯克利版本,不支持预建立连接的两端同时发起syn请求建立连接,而伯克利版本的tcp支持同时发起请求建立连接。为了兼容不同平台实现上需要使用有序连接尝试。二、windows7平台当创建listen监听时同时复用端口请求与对端建立连接,在遇到主动连接发送syn请求无响应,之后如果再收到syn请求连接将会被拒绝,而windowsxp平台支持调整连接序列号直接建立连接。win7需要调用系统接口将处于syn_sent的socket结束掉才能接受连接请求。三、各平台tcp协议在关闭socket后socket会进入time_wait状态,这是为了连接关闭的可靠性。但这同时带来一个问题,在time_wait的端口不能马上复用,这个状态一般要维持1~2分钟的时间。这对于需要频繁建立连接的场景显然是不行,因此端口申请上需要注意,不能永远使用一个固定的端口。

本发明实施例一提供了一种点对点数据传输方法,在该方法中,服务器分别与客户端a和客户端b建立连接,并根据接收到的客户端a或客户端b发送的信息存储客户端a或客户端b的配对记录,其中,配对记录中至少包括uuid、内网地址和外网地址,以及,接收客户端a发送的配对请求,并根据该请求将客户端b的配对记录发送至客户端a,以由客户端a根据该配对记录向客户端b发送连接请求,与客户端b建立点对点连接,并进行数据传输。在本发明所述技术方案由于采用tcp协议进行数据传输,并且tcp是面向连接的可靠传输,因此可以实现远程取证数据点对点传输,即实现跨局域网点对点的数据传输的同时有效地保证数据的完整性。

实施例二

基于与本发明实施例一相同的发明构思,本发明实施例二以客户端a为执行主体提供了一种点对点数据传输方法,该方法的具体实施可参见上述方法实施例一中的相关描述,重复之处不再赘述,其流程示意图如图3所示,该方法主要可包括:

步骤301:客户端a与服务器建立tcp监听,并通过tcp监听端口与服务器建立连接。

步骤302:向服务器发送登录请求,并发送自身对应的uuid和内网地址,以由服务器确定所述客户端a的外网地址,并存储所述客户端a的配对记录;其中,所述配对记录中至少包括uuid、内网地址和外网地址。

步骤303:向所述服务器发送配对请求,所述配对请求中携带有客户端b的uuid,以由所述服务器根据所述客户端b的uuid进行检索,并在确定所述客户端b在线时,将所述客户端b的配对记录发送至所述客户端a。

步骤304:接收所述服务器发送的所述客户端b的配对记录,并根据所述客户端b的配对记录通过所述tcp监听端口向所述客户端b发送连接请求,与所述客户端b建立点对点连接,并进行数据传输。

具体地,对于步骤步骤304所述根据所述客户端b的配对记录通过所述tcp监听端口向所述客户端b发送连接请求,与所述客户端b建立点对点连接,并进行数据传输,具体可包括步骤s11-s12:

步骤s11:根据所述客户端b的配对记录通过所述tcp监听端口向所述客户端b的内网地址发送连接请求,若所述客户端b与所述客户端a在同一局域网,则直接与所述客户端b建立点对点连接,并进行数据传输。

步骤s12:若否,则连接失败,向所述客户端b的外网地址发送连接请求,与所述客户端b建立点对点连接,并进行数据传输,若连接失败,则向所述服务器发送第一连接失败通知信息,以由所述服务器将所述客户端a的配对记录发送给所述客户端b,并由所述客户端b向所述客户端a发送连接请求,与客户端b建立点对点连接,并进行数据传输。

也就是说,为了使得本发明所述技术方案更为全面,考虑到使用场景网络拓扑的多样性,如取证端和被取证端都在同一局域网时那么两端应该优先通过内网路由地址建立连接。

进一步地,作为一个可执行方案,所述方法还可包括:

接收所述客户端b发送的连接请求,并与所述客户端b建立点对点连接,并进行数据传输;或,

接收所述客户端b发送的连接请求,无法与所述客户端b建立点对点连接,并向所述服务器发送第二连接失败通知信息。

进一步地,作为一个可执行方案,所述方法还可包括:

接收所述服务器发送的以中继方式传输数据的通知信息。

本发明实施例二提供了一种点对点数据传输方法,在该方法中,客户端a和客户端b分别与服务器建立连接,客户端a根据服务器发送的客户端b的配对记录向客户端b发送连接请求,与客户端b建立点对点连接,并进行数据传输,其中,配对记录中至少包括uuid、内网地址和外网地址。在本发明所述技术方案由于采用tcp协议进行数据传输,并且tcp是面向连接的可靠传输,因此可以实现远程取证数据点对点传输,即实现跨局域网点对点的数据传输的同时有效地保证数据的完整性。

实施例三

基于与本发明实施例一相同的发明构思,本发明实施例三以客户端b为执行主体提供了一种点对点数据传输方法,该方法的具体实施可参见上述方法实施例一中的相关描述,重复之处不再赘述,其流程示意图如图4所示,该方法主要可包括:

步骤401:客户端b与服务器建立传输控制协议tcp监听,并通过tcp监听端口与服务器建立连接。

步骤402:向服务器发送登录请求,并发送自身对应的唯一识别码uuid和内网地址,以由服务器确定所述客户端b的外网地址,并存储所述客户端b的配对记录;其中,所述配对记录中至少包括uuid、内网地址和外网地址。

步骤403:向所述服务器发送配对请求,所述配对请求中携带有客户端a的uuid,以由所述服务器根据所述客户端a的uuid进行检索,并在确定所述客户端a在线时,将所述客户端a的配对记录发送至所述客户端b。

步骤404:接收所述服务器发送的所述客户端a的配对记录,并根据所述客户端a的配对记录通过所述tcp监听端口向所述客户端a发送连接请求,与所述客户端a建立点对点连接,并进行数据传输。

进一步地,对于步骤404所述根据所述客户端a的配对记录通过所述tcp监听端口向所述客户端a发送连接请求,与所述客户端a建立点对点连接,并进行数据传输,具体可包括步骤s111-s112:

步骤s111:根据所述客户端a的配对记录通过所述tcp监听端口向所述客户端a的内网地址发送连接请求,若所述客户端a与所述客户端b在同一局域网,则直接与所述客户端a建立点对点连接,并进行数据传输。

步骤s112:若否,则连接失败,向所述客户端a的外网地址发送连接请求,与所述客户端a建立点对点连接,并进行数据传输,若连接失败,则向所述服务器发送第一连接失败通知信息,以由所述服务器将所述客户端b的配对记录发送给所述客户端a,并由所述客户端a向所述客户端b发送连接请求,与客户端a建立点对点连接,并进行数据传输。

进一步地,作为一个可执行方案,所述方法还可包括:

接收所述客户端a发送的连接请求,并与所述客户端a建立点对点连接,并进行数据传输;或,

接收所述客户端a发送的连接请求,无法与所述客户端a建立点对点连接,并向所述服务器发送第二连接失败通知信息。

进一步地,作为一个可执行方案,所述方法还可包括:

接收所述服务器发送的以中继方式传输数据的通知信息。

本发明实施例三提供了一种点对点数据传输方法,在该方法中,客户端b和客户端a分别与服务器建立连接,客户端b根据服务器发送的客户端a的配对记录向客户端a发送连接请求,与客户端a建立点对点连接,并进行数据传输,其中,配对记录中至少包括uuid、内网地址和外网地址。在本发明所述技术方案由于采用tcp协议进行数据传输,并且tcp是面向连接的可靠传输,因此可以实现远程取证数据点对点传输,即实现跨局域网点对点的数据传输的同时有效地保证数据的完整性。

实施例四

基于与本发明实施例一至三相同的发明构思,本发明实施例四以服务器、客户端a和客户端b为交互为例,提供了一种点对点数据传输方法,该方法的具体实施可参见上述方法实施例一中的相关描述,重复之处不再赘述,该方法主要可包括:

步骤c1:客户端a和客户端b分别与服务器创建tcp监听。

步骤c2:客户端a和客户端b分别复用监听端口,创建一个新的连接到服务器。

步骤c3:客户端a和客户端b分别向服务器执行登录操,客户端a和客户端b分别向server发送一个唯一的身份标识uuid和对应的内网地址。

步骤c4:服务器可以通过分析tcp数据包的原地址分别得到客户端a和客户端b的外网地址,并可以保存这样一条配对记录:uuid+内网地址+外网地址,即分别保存客户端a和客户端b的配对记录。

步骤c5:客户端a尝试与客户端b建立点对点连接,客户端a向服务器发送配对客户端b连接的请求,请求信息中携带客户端b的身份标识。

步骤c6:服务器检索当前信息发现客户端b在线,因此把客户端b的配对记录发送给客户端a。

步骤c7:客户端a收到客户端b的配对记录后复用监听端口首先向客户端b的内网地址发送连接请求,如果客户端a和客户端b在同一局域网则可以直接建立连接。如果连接尝试失败再向客户端b的外网地址发起连接。如果连接仍然尝试失败(被对端的路由器拦截)则通知服务器让对端(客户端b)发起连接。

步骤c8:服务器收到客户端a的尝试连接失败的通知后将客户端a的配对记录发送给客户端b,让客户端b来发起连接请求。

步骤c9:客户端b同样复用监听端口先向客户端a向外网地址发起请求。如果连接失败则通知服务器。

步骤c10:服务器收到客户端b的尝试连接失败的通知,则通知客户端a和客户端b以服务器为中继的方式传输数据,且中继传输数据可以使用客户端a和客户端b已和服务器建立连接的这条链路。

实施例五

基于与本发明实施例一至四相同的发明构思,本发明实施例五提供了一种点对点数据传输系统,该系统的具体实施可参见上述方法实施例一至四中的相关描述,重复之处不再赘述,其结构示意图如图2所示,该系统主要可包括:

服务器21,可用于分别与客户端a22和客户端b23建立tcp监听,并通过tcp监听端口分别与所述客户端a22和客户端b23建立连接;接收所述客户端a22或客户端b23发送的登录请求,并接收所述客户端a22发送的客户端a22的唯一识别码uuid和内网地址或客户端b23发送的客户端b23的uuid和内网地址;确定所述客户端a22的外网地址或客户端b23的外网地址,并存储所述客户端a22的配对记录或客户端b23的配对记录;其中,所述配对记录中至少包括uuid、内网地址和外网地址;接收所述客户端a22或客户端b23发送的配对请求,所述配对请求中携带有所述客户端b23的uuid或客户端a22的uuid,根据所述客户端b23的uuid或客户端a22的uuid进行检索,当确定所述客户端b23或客户端a22在线时,将所述客户端b23的配对记录或客户端a22的配对记录发送至所述客户端a22或客户端b23,以由所述客户端a22根据所述客户端b23的配对记录向所述客户端b23发送连接请求,与所述客户端b23建立点对点连接,并进行数据传输;或,以由所述客户端b23根据所述客户端a22的配对记录向所述客户端a22发送连接请求,与所述客户端a22建立点对点连接,并进行数据传输;

客户端a22,可用于与所述服务器21建立tcp监听,并通过tcp监听端口与服务器21建立连接;向服务器21发送登录请求,并发送自身对应的uuid和内网地址,以由服务器21确定所述客户端a22的外网地址,并存储所述客户端a22的配对记录;其中,所述配对记录中至少包括uuid、内网地址和外网地址;向所述服务器21发送配对请求,所述配对请求中携带有客户端b23的uuid,以由所述服务器21根据所述客户端b23的uuid进行检索,并在确定所述客户端b23在线时,将所述客户端b23的配对记录发送至所述客户端a22;接收所述服务器21发送的所述客户端b23的配对记录,并根据所述客户端b23的配对记录通过所述tcp监听端口向所述客户端b23发送连接请求,与所述客户端b23建立点对点连接,并进行数据传输;

客户端b23,可用于与所述服务器21建立tcp监听,并通过tcp监听端口与服务器21建立连接;向服务器21发送登录请求,并发送自身对应的uuid和内网地址,以由服务器21确定所述客户端b23的外网地址,并存储所述客户端b23的配对记录;其中,所述配对记录中至少包括uuid、内网地址和外网地址;向所述服务器21发送配对请求,所述配对请求中携带有客户端a22的uuid,以由所述服务器21根据所述客户端a22的uuid进行检索,并在确定所述客户端a22在线时,将所述客户端a22的配对记录发送至所述客户端b23;接收所述服务器21发送的所述客户端a22的配对记录,并根据所述客户端a22的配对记录通过所述tcp监听端口向所述客户端a22发送连接请求,与所述客户端a22建立点对点连接,并进行数据传输。

本发明实施例五提供了一种点对点数据传输系统,在该方法中,服务器分别与客户端a和客户端b建立连接,并根据接收到的客户端a或客户端b发送的信息存储客户端a或客户端b的配对记录,其中,配对记录中至少包括uuid、内网地址和外网地址,以及,接收客户端a发送的配对请求,并根据该请求将客户端b的配对记录发送至客户端a,以由客户端a根据该配对记录向客户端b发送连接请求,与客户端b建立点对点连接,并进行数据传输。在本发明所述技术方案由于采用tcp协议进行数据传输,并且tcp是面向连接的可靠传输,因此可以实现远程取证数据点对点传输,即实现跨局域网点对点的数据传输的同时有效地保证数据的完整性。

本领域技术人员应明白,本发明的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1