一种数据交互方法、系统及第一客户端技术方案

技术编号:26797745 阅读:26 留言:0更新日期:2020-12-22 17:15
本发明专利技术实施例提供了一种数据交互方法、系统及第一客户端。其中,方法包括:向所述P2P服务端发送P2P链接请求,所述P2P链接请求中携带有所述第一客户端的第一地址信息、所述中继服务端的中继地址信息、所述第二标识信息以及链接标识信息;接收所述P2P服务端反馈的所述第二地址信息;根据所述第二地址信息,与所述第二客户端建立以所述链接标识信息标识的P2P链接;使用所述链接标识信息向所述中继服务端发送第一中继链接请求;通过所述链接标识信息所表示的链接,与所述第二客户端进行数据交互。可以实现第一客户端与第二客户端之间端到端的整体数据交互,无需关心P2P链接和中继链接的业务逻辑,具有较强的可拓展性,提高了接入体验。

【技术实现步骤摘要】
一种数据交互方法、系统及第一客户端
本专利技术涉及数据传输
,特别是涉及一种数据交互方法、系统及第一客户端。
技术介绍
P2P(Peertopeer,点对点技术),是一种无中心服务器,依靠用户群交互信息的互联网体系,能够实现用户之间点对点直接链接。中继服务,是一种通过中继服务端协助用户之间实现间接的点到点通信的服务。相关技术中,P2P和中继服务往往是通过不同的模块实现的,因此P2P链接和中继链接是相对独立的两个链接,需要分别针对P2P链接和中继链接设置相应的业务逻辑,导致客户端之间数据交互的业务逻辑较为复杂,可拓展性较差,接入体验低。
技术实现思路
本专利技术实施例的目的在于提供一种数据交互方法、系统及第一客户端,以实现客户端之间端到端的整体数据交互,提高网络的可拓展性。具体技术方案如下:在本专利技术实施例的第一方面,提供了一种数据交互方法,应用于数据交互系统的第一客户端,所述数据交互系统中还包括第二客户端、P2P服务端以及中继服务端,所述P2P服务端对应存储有所述第二客户端的第二标识信息和第二地址信息,所述P2P服务端与所述第一客户端、所述第二客户端建立有通信连接,所述中继服务端与所述第一客户端、所述第二客户端建立有通信连接,所述方法包括:向所述P2P服务端发送P2P链接请求,所述P2P链接请求中携带有所述第一客户端的第一地址信息、所述中继服务端的中继地址信息、所述第二标识信息以及链接标识信息,由所述P2P服务端根据所述第二标识信息将所述P2P链接请求透传至所述第二客户端,并向所述第一客户端反馈所述第二地址信息,并由所述第二客户端使用所述链接标识信息向所述中继服务端发送第二中继链接请求;接收所述P2P服务端反馈的所述第二地址信息;根据所述第二地址信息,与所述第二客户端建立以所述链接标识信息标识的P2P链接;使用所述链接标识信息向所述中继服务端发送第一中继链接请求,由所述中继服务端匹配所述第一中继链接请求和所述第二中继链接请求,并建立以所述链接标识信息标识的中继链接;通过所述链接标识信息所表示的链接,与所述第二客户端进行数据交互。在一种可能的实施例中,所述通过所述链接标识信息所表示的链接,与所述第二客户端进行数据交互,包括:确定所述链接标识信息所表示的P2P链接是否正常;如果所述链接标识信息所表示的P2P链接正常,通过所述链接标识信息所表示的P2P链接,与所述第二客户端进行数据交互;如果所述链接标识信息所表示的P2P链接异常,通过所述链接标识信息所表示的中继链接,与所述第二客户端进行数据交互。在一种可能的实施例中,所述通过所述链接标识信息所表示的链接,与所述第二客户端进行数据交互,包括:确定第一链路是否正常,所述第一链路为所述链接标识信息所表示的P2P链接和中继链接中当前正在使用的链路;如果所述第一链路正常,继续使用所述第一链路与所述第二客户端进行数据交互;如果所述第一链路异常,通过第二链路与所述第二客户端进行数据交互,所述第二链路为所述链接标识信息所表示的P2P链接和中继链接中不为所述第一链路的链路。在一种可能的实施例中,所述通过第二链路与所述第二客户端进行数据交互,包括:根据所述第一链路异常前接收到的最新的收包确认信息,确定所述第二客户端最新接收到的数据包,作为最新数据包,所述收包确认信息为所述第二客户端在接收到所述第一客户端发送的数据包后反馈的用于标识所接收到的数据包的信息;通过第二链路,从所述最新数据包开始继续与所述第二客户端进行数据交互。在一种可能的实施例中,所述通过所述链接标识信息所表示的链接,与所述第二客户端进行数据交互,包括:如果通过所述链接标识信息所表示的中继链接与所述第二客户端进行数据交互,当接收到所述中继服务器发送的降速指令后,根据所述降速指令降低与所述第二客户端进行数据交互的交互速率,所述降速指令为所述中继服务器在检测到所述交互速率高于预设速率阈值时发送的。在本专利技术实施例的第二方面,提供了一种数据交互方法,应用于数据交互系统的第二客户端,所述数据交互系统中还包括第一客户端、P2P服务端以及中继服务端,所述P2P服务端与所述第一客户端、所述第二客户端建立有通信连接,所述中继服务端与所述第一客户端、所述第二客户端建立有通信连接,所述方法包括:向所述P2P服务端发送注册报文,所述注册报文中携带有所述第二客户端的第二地址信息和第二标识信息,由所述P2P服务端对应保存所述第二地址信息和所述第二标识信息;接收P2P链接请求,所述P2P链接请求为所述中携带有所述第一客户端的第一地址信息、所述中继服务端的中继地址信息、所述第二标识信息以及链接标识信息,所述P2P链接请求为所述第一客户端发送至所述P2P服务端,并由所述P2P服务端根据所述第二标识信息透传至所述第二客户端的,并由所述P2P服务端根据所述第二标识信息向所述第一客户端反馈所述第二地址信息,并由所述第一客户端使用所述链接标识信息向所述中继服务端发送第一中继链接请求;根据所述第一地址信息,与所述第一客户端建立以所述链接标识信息标识的P2P链接;使用所述链接标识信息向所述中继服务端发送第二中继链接请求,由所述中继服务端匹配所述第一中继链接请求和所述第二中继链接请求,并建立以所述链接标识信息标识的中继链接;通过所述链接标识信息所表示的链接,与所述第一客户端进行数据交互。在一种可能的实施例中,所述通过所述链接标识信息所表示的链接,与所述第一客户端进行数据交互,包括:在接收到所述第一客户端发送的数据包后,向所述第一客户端反馈收包确认信息,所述收包确认信息用于标识所接收到的数据包,由所述第一客户端在切换与所述第二客户端进行数据交互的链路后,从所述收包确认信息所表示的数据包开始继续与所述第二客户端进行数据交互。在本专利技术实施例的第三方面,提供了一种数据交互装置,应用于数据交互系统的第一客户端,所述数据交互系统中还包括第二客户端、P2P服务端以及中继服务端,所述P2P服务端对应存储有所述第二客户端的第二标识信息和第二地址信息,所述P2P服务端与所述第一客户端、所述第二客户端建立有通信连接,所述中继服务端与所述第一客户端、所述第二客户端建立有通信连接,所述装置包括:P2P请求模块,用于向所述P2P服务端发送P2P链接请求,所述P2P链接请求中携带有所述第一客户端的第一地址信息、所述中继服务端的中继地址信息、所述第二标识信息以及链接标识信息,由所述P2P服务端根据所述第二标识信息将所述P2P链接请求透传至所述第二客户端,并向所述第一客户端反馈所述第二地址信息,并由所述第二客户端使用所述链接标识信息向所述中继服务端发送第二中继链接请求;第一接收模块,用于接收所述P2P服务端反馈的所述第二地址信息;第一P2P链接模块,用于根据所述第二地址信息,与所述第二客户端建立以所述链接标识信息标识的P2P链接;第一中继请求模块,用于使用所述本文档来自技高网...

【技术保护点】
1.一种数据交互方法,其特征在于,应用于数据交互系统的第一客户端,所述数据交互系统中还包括第二客户端、P2P服务端以及中继服务端,所述P2P服务端对应存储有所述第二客户端的第二标识信息和第二地址信息,所述P2P服务端与所述第一客户端、所述第二客户端建立有通信连接,所述中继服务端与所述第一客户端、所述第二客户端建立有通信连接,所述方法包括:/n向所述P2P服务端发送P2P链接请求,所述P2P链接请求中携带有所述第一客户端的第一地址信息、所述中继服务端的中继地址信息、所述第二标识信息以及链接标识信息,由所述P2P服务端根据所述第二标识信息将所述P2P链接请求透传至所述第二客户端,并向所述第一客户端反馈所述第二地址信息,并由所述第二客户端使用所述链接标识信息向所述中继服务端发送第二中继链接请求;/n接收所述P2P服务端反馈的所述第二地址信息;/n根据所述第二地址信息,与所述第二客户端建立以所述链接标识信息标识的P2P链接;/n使用所述链接标识信息向所述中继服务端发送第一中继链接请求,由所述中继服务端匹配所述第一中继链接请求和所述第二中继链接请求,并建立以所述链接标识信息标识的中继链接;/n通过所述链接标识信息所表示的链接,与所述第二客户端进行数据交互。/n...

【技术特征摘要】
1.一种数据交互方法,其特征在于,应用于数据交互系统的第一客户端,所述数据交互系统中还包括第二客户端、P2P服务端以及中继服务端,所述P2P服务端对应存储有所述第二客户端的第二标识信息和第二地址信息,所述P2P服务端与所述第一客户端、所述第二客户端建立有通信连接,所述中继服务端与所述第一客户端、所述第二客户端建立有通信连接,所述方法包括:
向所述P2P服务端发送P2P链接请求,所述P2P链接请求中携带有所述第一客户端的第一地址信息、所述中继服务端的中继地址信息、所述第二标识信息以及链接标识信息,由所述P2P服务端根据所述第二标识信息将所述P2P链接请求透传至所述第二客户端,并向所述第一客户端反馈所述第二地址信息,并由所述第二客户端使用所述链接标识信息向所述中继服务端发送第二中继链接请求;
接收所述P2P服务端反馈的所述第二地址信息;
根据所述第二地址信息,与所述第二客户端建立以所述链接标识信息标识的P2P链接;
使用所述链接标识信息向所述中继服务端发送第一中继链接请求,由所述中继服务端匹配所述第一中继链接请求和所述第二中继链接请求,并建立以所述链接标识信息标识的中继链接;
通过所述链接标识信息所表示的链接,与所述第二客户端进行数据交互。


2.根据权利要求1所述的方法,其特征在于,所述通过所述链接标识信息所表示的链接,与所述第二客户端进行数据交互,包括:
确定所述链接标识信息所表示的P2P链接是否正常;
如果所述链接标识信息所表示的P2P链接正常,通过所述链接标识信息所表示的P2P链接,与所述第二客户端进行数据交互;
如果所述链接标识信息所表示的P2P链接异常,通过所述链接标识信息所表示的中继链接,与所述第二客户端进行数据交互。


3.根据权利要求1所述的方法,其特征在于,所述通过所述链接标识信息所表示的链接,与所述第二客户端进行数据交互,包括:
确定第一链路是否正常,所述第一链路为所述链接标识信息所表示的P2P链接和中继链接中当前正在使用的链路;
如果所述第一链路正常,继续使用所述第一链路与所述第二客户端进行数据交互;
如果所述第一链路异常,通过第二链路与所述第二客户端进行数据交互,所述第二链路为所述链接标识信息所表示的P2P链接和中继链接中不为所述第一链路的链路。


4.根据权利要求3所述的方法,其特征在于,所述通过第二链路与所述第二客户端进行数据交互,包括:
根据所述第一链路异常前接收到的最新的收包确认信息,确定所述第二客户端最新接收到的数据包,作为最新数据包,所述收包确认信息为所述第二客户端在接收到所述第一客户端发送的数据包后反馈的用于标识所接收到的数据包的信息;
通过第二链路,从所述最新数据包开始继续与所述第二客户端进行数据交互。


5.根据权利要求1所述的方法,其特征在于,所述通过所述链接标识信息所表示的链接,与所述第二客户端进行数据交互,包括:
如果通过所述链接标识信息所表示的中继链接与所述第二客户端进行数据交互,当接收到所述中继服务端发送的降速指令后,根据所述降速指令降低与所述第二客户端进行数据交互的交互速率,所述降速指令为所述中继服务器在检测到所述交互速率高于预设速率阈值时发送的。


6.一种数据交互方法,其特征在于,应用于数据交互系统的第二客户端,所述数据交互系统中还包括第一客户端、P2P服务端以及中继服务端,所述P2P服务端与所述第一客户端、所述第二客户端建立有通信连接,所述中继服务端与所述第一客户端、所述第二客户端建立有通信连接,所述方法包括:
向所述P2P服务端发送注册报文,所述注册报文中携带有所述第二客户端的第二地址信息和第二标识信息,由所述P2P服务端对应保存所述第二地址信息和所述第二标识信息;
接收P2P链接请求,所述P2P链接请求为所述中携带有所述第一客户端的第一地址信息、所述中继服务端的中继地址信息、所述第二标识信息以及链接标识信息,所述P2P链接请求为所述第一客户端发送至所述P2P服务端,并由所述P2P服务端根据所述第二标识信息透传至所述第二客户端的,并由所述P2P服务端根据所述第二标识信息向所述第一客户端反馈所述第二地址信息,并由所述第一客户端使用所述链接标识信息向所述中继服务端发送第一中继链接请求;
根据所述第一地址信息,与所述第一客户端建立以所述链接标识信息标识的P2P链接;
使用所述链接标识信息向所述中继服务端发送第二中继链接请求,由所述中继服务端匹配所述第一中继链接请求和所述第二中继链接请求,并建立以所述链接标识信息标识的中继链接;
通过所述链接标识信息所表示的链接,与所述第一客户端进行数据交互。


7.根据权利要求6所述的方法,其特征在于,所述通过所述链接标识信息所表示的链接,与所述第一客户端进行数据交互,包括:
在接收到所述第一客户端发送的数据包后,向所述第一客户端反馈收包确认信息...

【专利技术属性】
技术研发人员:张磊皮孔选
申请(专利权)人:杭州萤石软件有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1