CN106027599B - 一种数据传输通道建立方法、***和服务器 - Google Patents

一种数据传输通道建立方法、***和服务器 Download PDF

Info

Publication number
CN106027599B
CN106027599B CN201610280530.5A CN201610280530A CN106027599B CN 106027599 B CN106027599 B CN 106027599B CN 201610280530 A CN201610280530 A CN 201610280530A CN 106027599 B CN106027599 B CN 106027599B
Authority
CN
China
Prior art keywords
responder
initiator
data transmission
udp
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610280530.5A
Other languages
English (en)
Other versions
CN106027599A (zh
Inventor
杨柳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xiao Feng
Original Assignee
Win-Win Information Technology (shanghai) Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Win-Win Information Technology (shanghai) Co Ltd filed Critical Win-Win Information Technology (shanghai) Co Ltd
Priority to CN201610280530.5A priority Critical patent/CN106027599B/zh
Publication of CN106027599A publication Critical patent/CN106027599A/zh
Application granted granted Critical
Publication of CN106027599B publication Critical patent/CN106027599B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/164Adaptation or special uses of UDP protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer And Data Communications (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明公开了一种数据传输通道建立方法、***和服务器,属于通信领域。通过在数据传输之前,多个UDP服务器发起方和应答方根据发送的通道建立请求,分别预先建立数据传输通道,相比于在数据传输时再建立数据传输通道,避免了在数据传输过程中等待数据通道建立的时间,从而提高了数据传输的效率,提高了用户体验。另外,通过多个UDP服务器分别所建立的多个数据传输通道传输数据,相比于通过一个通道传输数据,使得可以在部分通道网络传输速度和可靠性较差时,更换数据传输通道,避免了数据的丢失,提高了数据传输的可靠性,提高了用户体验。

Description

一种数据传输通道建立方法、***和服务器
技术领域
本发明涉及通信领域,特别涉及一种数据传输通道建立方法、***和服务器。
背景技术
在数据传输过程中,需要发起方和应答方建立相应的数据传输通道,发起方通过该数据传输通道,将数据发送至应答方,从而需要一种数据传输通道建立方法,以使发起方和应答方建立相应的数据传输通道。
现有技术提供了一种数据传输通道建立方法,在数据传输时,发起方和应答方所连接的服务器建立对应的单个数据传输通道,实现数据传输。
但是在使用现有技术所提供的方法时,应答方和发起方需要在数据传输过程中等待数据通道建立的时间,从而降低了数据传输的效率,且在数据传输通道的网络环境较差的情况下,通过单个数据传输通道进行数据传输可能导致数据丢失,降低数据传输的可靠性。
发明内容
为了提高数据传输的可靠性和效率,本发明实施例提供了一种数据传输通道建立方法、***和服务器。所述技术方案如下:
第一方面,提供了一种数据传输通道建立方法,所述方法包括:
服务器接收发起方发送的建立请求,并将所述建立请求发送至应答方;
所述服务器若接收到应答方发送的第一响应消息,所述第一响应消息用于指示所述应答方接收到所述建立请求,则向所述发起方和所述应答方发送多个用户数据报协议UDP服务器的信息;
所述发起方和所述应答方向所述多个UDP服务器发送通道建立请求;
所述多个UDP服务器分别建立多个数据传输通道;
所述服务器若接收到所述应答方发送的第二响应消息,则将所述第二响应消息发送至所述发起方;
所述发起方根据所述多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向所述应答方发送数据。
结合第一方面,在第一种可能的实现方式中,所述服务器包括传输控制协议TCP服务器,所述服务器向所述发起方和所述应答方发送多个用户数据报协议UDP服务器的信息包括:
所述TCP服务器获取满足预设条件的多个用户数据报协议UDP服务器的信息;
所述TCP服务器向所述发起方和所述应答方发送所述多个UDP服务器的信息。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述TCP服务器获取满足预设条件的多个UDP服务器的信息包括:
所述TCP服务器获取所有可用UDP服务器的网络参数;
所述TCP服务器根据所述网络参数,从所述所有可用UDP服务器中获取所述满足预设条件的多个UDP服务器。
结合第一方面至第一方面的第二种任意一种可能的实现方式,在第三种可能的实现方式中,所述发起方根据所述多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向所述应答方发送数据包括:
所述发起方获取所述多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个;
所述应答方获取所述多个数据传输通道的第二RTT和第二丢包率中的至少一个;
所述发起方根据所述第一RTT和所述第二RTT,计算RTT分量;
所述发起方根据所述第一丢包率和所述第二丢包率,计算丢包率分量;
所述发起方获取所述多个数据传输通道中所述RTT分量和所述丢包率分量中的至少一个满足预设条件的数据传输通道;
所述发送方根据所述至少一个满足预设条件的数据传输通道的信息,向所述应答方发送数据。
结合第一方面,在第四种可能的实现方式中,在所述多个UDP服务器分别建立多个数据传输通道之前,所述方法还包括:
所述UDP服务器判断所述发起方和所述应答方之间是否能够建立点对点P2P通道;
若是,则所述UDP服务器将所述P2P通道的信息发送至所述发起方和所述应答方。
结合第一方面的第四种可能的实现方式,在第五种可能的实现方式中,所述方法还包括:
若所述发起方接收到所述UDP服务器发送的P2P通道的信息,则通过所述P2P通道,向所述应答方发送数据。
第二方面,提供了一种数据传输通道建立方法,所述方法包括:
服务器接收发起方发送的建立请求,并将所述建立请求发送至应答方;
当所述服务器接收到所述应答方发送的接受响应消息,则将所述接受响应消息发送至所述发起方,并向所述发起方和所述应答方发送多个用户数据报协议UDP服务器的信息;
所述发起方和所述应答方向所述多个UDP服务器发送通道建立请求;
所述多个UDP服务器分别建立多个数据传输通道;
所述发起方根据所述多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向所述应答方发送数据。
结合第二方面,在第一种可能的实现方式中,所述服务器包括传输控制协议TCP服务器,所述服务器向所述发起方和所述应答方发送多个用户数据报协议UDP服务器的信息包括:
所述TCP服务器获取满足预设条件的多个用户数据报协议UDP服务器的信息;
所述TCP服务器向所述发起方和所述应答方发送所述多个UDP服务器的信息。
结合第二方面的第一种可能的实现方式,在第二种可能的方式中,所述TCP服务器获取满足预设条件的多个UDP服务器的信息包括:
所述TCP服务器获取所有可用UDP服务器的网络参数;
所述TCP服务器根据所述网络参数,从所述所有可用UDP服务器中获取所述满足预设条件的多个UDP服务器。
结合第二方面至第二方面的第二种任意一种可能的实现方式,在第三种可能的实现方式中,所述发起方根据所述多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向所述应答方发送数据包括:
所述发起方获取所述多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个;
所述应答方获取所述多个数据传输通道的第二RTT和第二丢包率中的至少一个;
所述发起方根据所述第一RTT和所述第二RTT,计算RTT分量;
所述发起方根据所述第一丢包率和所述第二丢包率,计算丢包率分量;
所述发起方获取所述多个数据传输通道中所述RTT分量和所述丢包率分量中的至少一个满足预设条件的数据传输通道;
所述发送方根据所述至少一个满足预设条件的数据传输通道的信息,向所述应答方发送数据。
结合第二方面,在第四种可能的实现方式中,在所述多个UDP服务器分别建立多个数据传输通道之前,所述方法还包括:
所述UDP服务器判断所述发起方和所述应答方之间是否能够建立点对点P2P通道;
若是,则所述UDP服务器将所述P2P通道的信息发送至所述发起方和所述应答方。
结合第二方面的第四种可能的实现方式,在第五种可能的实现方式中,所述方法还包括:
若所述发起方接收到所述UDP服务器发送的P2P通道的信息,则通过所述P2P通道,向所述应答方发送数据。
第三方面,提供了一种服务器,所述服务器包括:
中转模块,用于接收发起方发送的建立请求,并将所述建立请求发送至应答方;
发送模块,用于在所述中转模块接收到用于指示所述应答方接收到所述建立请求的第一响应消息后,向所述发起方和所述应答方发送多个用户数据报协议UDP服务器的信息;
所述中转模块还用于接收到所述应答方发送的第二响应消息时,将所述第二响应消息发送至所述发起方,以使所述发起方根据多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向所述应答方发送数据;
其中,所述多个数据传输通道是所述发起方和所述应答方向所述多个UDP服务器发送通道建立请求后,所述多个UDP服务器分别建立的。
结合第三方面,在第一种可能的实现方式中,所述服务器包括传输控制协议TCP服务器,所述发送模块具体包括:
获取子模块,用于获取满足预设条件的多个用户数据报协议UDP服务器的信息;
发送子模块,用于向所述发起方和所述应答方发送所述多个UDP服务器的信息。
结合第三方面的第一种可能的实现方式,在第二种可能的实现方式中,所述获取子模块具体用于:
获取所有可用UDP服务器的网络参数;
根据所述网络参数,从所述所有可用UDP服务器中获取所述满足预设条件的多个UDP服务器。
第四方面,提供了一种服务器,所述服务器包括存储器、网络接口模块以及与所述存储器和所述网络接口模块连接的处理器,其中,所述存储器用于存储一组程序代码,所述处理器调用所述存储器所存储的程序代码用于执行以下操作:
控制网络接口模块接收发起方发送的建立请求,并将所述建立请求发送至应答方;
在所述网络接口模块接收到用于指示所述应答方接收到所述建立请求的第一响应消息后,向所述发起方和所述应答方发送多个用户数据报协议UDP服务器的信息;
控制网络接口模块在接收到所述应答方发送的第二响应消息时,将所述第二响应消息发送至所述发起方,以使所述发起方根据多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向所述应答方发送数据;
其中,所述多个数据传输通道是所述发起方和所述应答方向所述多个UDP服务器发送通道建立请求后,所述多个UDP服务器分别建立的。
结合第四方面,在第一种可能的实现方式中,所述服务器包括传输控制协议TCP服务器,所述处理器调用所述存储器所存储的程序代码具体用于执行以下操作:
获取满足预设条件的多个用户数据报协议UDP服务器的信息;
向所述发起方和所述应答方发送所述多个UDP服务器的信息。
结合第四方面的第一种可能的实现方式,在第二种可能的实现方式中,所述处理器调用所述存储器所存储的程序代码具体用于执行以下操作:
获取所有可用UDP服务器的网络参数;
根据所述网络参数,从所述所有可用UDP服务器中获取所述满足预设条件的多个UDP服务器。
第五方面,提供了一种服务器,所述服务器包括:
中转模块,用于接收发起方发送的建立请求,并将所述建立请求发送至应答方;
发送模块,用于当所述中转模块接收到所述应答方发送的接受响应消息时,将所述接受响应消息发送至所述发起方,并向所述发起方和所述应答方发送多个用户数据报协议UDP服务器的信息。
结合第五方面,在第一种可能的实现方式中,所述服务器包括传输控制协议TCP服务器,所述发送模块具体包括:
获取子模块,用于获取满足预设条件的多个用户数据报协议UDP服务器的信息;
发送子模块,用于向所述发起方和所述应答方发送所述多个UDP服务器的信息。
结合第五方面的第一种可能的实现方式,在第二种可能的实现方式中,所述获取子模块具体用于:
获取所有可用UDP服务器的网络参数;
根据所述网络参数,从所述所有可用UDP服务器中获取所述满足预设条件的多个用户数据报协议UDP服务器。
第六方面,提供了一种服务器,所述服务器包括存储器、网络接口模块以及与所述存储器和所述网络接口模块连接的处理器,其中,所述存储器用于存储一组程序代码,所述处理器调用所述存储器所存储的程序代码用于执行以下操作:
控制所述网络接口模块接收发起方发送的建立请求,并将所述建立请求发送至应答方;
控制所述网络接口模块在接收到所述应答方发送的接受响应消息时,将所述接受响应消息发送至所述发起方,并向所述发起方和所述应答方发送多个用户数据报协议UDP服务器的信息。
结合第六方面,在第一种可能的实现方式中,所述服务器包括传输控制协议TCP服务器,所述处理器调用所述存储器所存储的程序代码具体用于执行以下操作:
获取满足预设条件的多个用户数据报协议UDP服务器的信息;
向所述发起方和所述应答方发送所述多个UDP服务器的信息。
结合第六方面的第一种可能的实现方式,在第二种可能的实现方式中,所述处理器调用所述存储器所存储的程序代码具体用于执行以下操作:
获取所有可用UDP服务器的网络参数;
根据所述网络参数,从所述所有可用UDP服务器中获取所述满足预设条件的多个用户数据报协议UDP服务器。
第七方面,提供了一种数据传输通道建立***,所述***包括服务器、发起方、应答方和多个用户数据报协议UDP服务器,其中:
所述服务器包括:
中转模块,用于接收所述发起方发送的建立请求,并将所述建立请求发送至所述应答方;
第一发送模块,用于在所述中转模块接收到所述应答方发送的第一响应消息,所述第一响应消息用于指示所述应答方接收到所述建立请求时,向所述发起方和所述应答方发送多个UDP服务器的信息;
所述发起方和所述应答方分别包括第二发送模块和第三发送模块,所述第二发送模块和所述第三发送模块用于向所述多个UDP服务器发送通道建立请求;
所述多个UDP服务器分别包括多个通道建立模块,所述多个通道建立模块分别用于建立多个数据传输通道;
所述中转模块还用于在接收到所述应答方发送的第二响应消息时,将所述第二响应消息发送至所述发起方;
所述第二发送模块还用于根据所述多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向所述应答方发送数据。
结合第七方面,在第一种可能的实现方式中,所述服务器包括TCP服务器,所述第一发送模块包括:
获取子模块,用于获取满足预设条件的多个用户数据报协议UDP服务器的信息;
第一发送子模块,用于向所述发起方和所述应答方发送所述多个UDP服务器的信息。
结合第七方面的第一种可能的实现方式,在第二种可能的实现方式中,所述获取子模块具体用于:
获取所有可用UDP服务器的网络参数;
根据所述网络参数,从所述所有可用UDP服务器中获取所述满足预设条件的多个UDP服务器。
结合第七方面至第七方面的第二种任意一种可能的实现方式,在第三种可能的实现方式中,所述发起方还包括处理模块,所述处理模块用于:
获取所述多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个;
获取所述应答方所获取的所述多个数据传输通道的第二RTT和第二丢包率中的至少一个;
根据所述第一RTT和所述第二RTT,计算RTT分量;
根据所述第一丢包率和所述第二丢包率,计算丢包率分量;
获取所述多个数据传输通道中所述RTT分量和所述丢包率分量中的至少一个满足预设条件的数据传输通道。
结合第七方面,在第四种可能的实现方式中,所述UDP服务器还包括:
处理子模块,用于判断所述发起方和所述应答方之间是否能够建立点对点P2P通道;
第二发送子模块,用于在所述处理子模块判定所述发起方和所述应答方之间能够建立点对点P2P通道时,将所述P2P通道的信息发送至所述发起方和所述应答方。
结合第七方面的第四种可能的实现方式,在第五种可能的实现方式中,
所述发起方还包括接收模块,所述第二发送模块还用于在所述接收模块接收到所述UDP服务器发送的P2P通道的信息时,通过所述P2P通道,向所述应答方发送数据。
第八方面,提供了一种数据传输通道建立***,所述***包括服务器、发起方、应答方和多个用户数据报协议UDP服务器,其中:
所述服务器包括:
中转模块,用于接收所述发起方发送的建立请求,并将所述建立请求发送至所述应答方;
第一发送模块,用于在所述中转模块接收到所述应答方发送的接受响应消息时,将所述接受响应消息发送至所述发起方,并向所述发起方和所述应答方发送多个UDP服务器的信息;
所述发起方和所述应答方分别包括第二发送模块和第三发送模块,所述第二发送模块和所述第三发送模块分别用于向所述多个UDP服务器发送通道建立请求;
所述多个UDP服务器分别包括多个通道建立模块,用于建立多个数据传输通道;
所述第二发送模块还用于根据所述多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向所述应答方发送数据。
结合第八方面,在第一种可能的实现方式中,所述服务器包括TCP服务器,所述第一发送模块包括:
获取子模块,用于获取满足预设条件的多个用户数据报协议UDP服务器的信息;
发送子模块,用于向所述发起方和所述应答方发送所述多个UDP服务器的信息。
结合第八方面的第一种可能的实现方式,在第二种可能的实现方式中,所述获取子模块具体用于:
获取所有可用UDP服务器的网络参数;
根据所述网络参数,从所述所有可用UDP服务器中获取所述满足预设条件的多个UDP服务器。
结合第八方面至第八方面的第二种任意一种可能的实现方式,在第三种可能的实现方式中,所述发起方还包括处理模块,所述处理模块用于:
获取所述多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个;
获取所述应答方所获取的所述多个数据传输通道的第二RTT和第二丢包率中的至少一个;
根据所述第一RTT和所述第二RTT,计算RTT分量;
根据所述第一丢包率和所述第二丢包率,计算丢包率分量;
获取所述多个数据传输通道中所述RTT分量和所述丢包率分量中的至少一个满足预设条件的数据传输通道。
结合第八方面,在第四种可能的实现方式中,所述UDP服务器还包括:
处理子模块,用于判断所述发起方和所述应答方之间是否能够建立点对点P2P通道;
第二发送子模块,用于在所述处理子模块判定所述发起方和所述应答方之间能够建立点对点P2P通道时,将所述P2P通道的信息发送至所述发起方和所述应答方。
结合第八方面的第四种可能的实现方式,在第五种可能的实现方式中,
所述发起方还包括接收模块,所述第二发送模块还用于在所述接收模块接收到所述UDP服务器发送的P2P通道的信息时,通过所述P2P通道,向所述应答方发送数据。
本发明实施提供了一种数据传输通道建立方法、***和服务器,包括:服务器接收发起方发送的建立请求,并将建立请求发送至应答方;服务器若接收到应答方发送的第一响应消息,第一响应消息用于指示应答方接收到建立请求,则向发起方和应答方发送多个用户数据报协议UDP服务器的信息;发起方和应答方向多个UDP服务器发送通道建立请求;多个UDP服务器分别建立多个数据传输通道;服务器若接收到应答方发送的第二响应消息,则将第二响应消息发送至发起方;发起方根据多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向应答方发送数据。通过在数据传输之前,多个UDP服务器发起方和应答方根据发送的通道建立请求,分别预先建立数据传输通道,相比于在数据传输时再建立数据传输通道,避免了在数据传输过程中等待数据通道建立的时间,从而提高了数据传输的效率,提高了用户体验。另外,通过多个UDP服务器分别所建立的多个数据传输通道传输数据,相比于通过一个通道传输数据,使得可以在部分通道网络传输速度和可靠性较差时,更换数据传输通道,避免了数据的丢失,提高了数据传输的可靠性,提高了用户体验。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种数据传输通道建立方法流程图;
图2是本发明实施例提供的一种数据传输通道建立方法流程图;
图3是本发明实施例提供的一种数据传输通道建立方法流程图;
图4是本发明实施例提供的一种数据传输通道建立方法流程图;
图5是本发明实施例提供的一种数据传输通道建立方法流程图;
图6是本发明实施例提供的一种数据传输通道建立方法流程图;
图7是本发明实施例提供的一种服务器结构示意图;
图8是本发明实施例提供的一种服务器结构示意图;
图9是本发明实施例提供的一种服务器结构示意图;
图10是本发明实施例提供的一种服务器结构示意图;
图11是本发明实施例提供的一种数据传输通道建立***示意图;
图12是本发明实施例提供的一种数据传输通道建立***示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种数据传输通道建立方法,该方法可以应用于即时视频过程中的视频交互双方的视频数据、语音数据、图片数据以及文本数据等的数据传输,除此之外,本发明实施例所述的数据传输通道建立方法还可以应用于其他场景下的数据传输,本发明实施例对具体的场景不加以限定。需要说明的是,该发起方和应答方在数据传输之前,连接至同一个TCP服务器,该TCP服务器可以是单个TCP服务器,也可以是由多个TCP服务器组成的服务器群,且该TCP服务器群内,多个TCP服务器之间的信息共享。
实施例一为本发明实施例提供的一种数据传输通道建立方法,参照图1所示,该方法包括:
101、服务器接收发起方发送的建立请求,并将建立请求发送至应答方。
102、服务器若接收到应答方发送的第一响应消息,第一响应消息用于指示应答方接收到建立请求,则向发起方和应答方发送多个用户数据报协议UDP服务器的信息。
具体的,服务器包括传输控制协议TCP服务器,服务器向发起方和应答方发送多个用户数据报协议UDP服务器的信息包括:
TCP服务器获取满足预设条件的多个用户数据报协议UDP服务器的信息;
TCP服务器向发起方和应答方发送多个UDP服务器的信息。
其中,所述TCP服务器获取满足预设条件的多个用户数据报协议UDP服务器的信息的过程可以为:
TCP服务器获取所有可用UDP服务器的网络参数;
TCP服务器根据网络参数,从所有可用UDP服务器中获取满足预设条件的多个UDP服务器。
103、发起方和应答方向多个UDP服务器发送通道建立请求。
104、多个UDP服务器分别建立多个数据传输通道。
可选的,在步骤104之前,所述方法还可以包括:
UDP服务器判断发起方和应答方之间是否能够建立点对点P2P通道;
若是,则UDP服务器建立发起方和应答方之间的P2P通道,并将P2P通道的信息发送至发起方和应答方。
105、服务器若接收到应答方发送的第二响应消息,则将第二响应消息发送至发起方。
106、发起方根据多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向应答方发送数据。
具体的,发起方通过以下操作中的任意一个,从多个数据传输通道中满足预设条件的至少一个数据传输通道:
发起方获取多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个;
发起方根据第一RTT,计算RTT分量;
发起方根据第一丢包率,计算丢包率分量;
发起方获取多个数据传输通道中RTT分量和丢包率分量中的至少一个满足预设条件的数据传输通道。或者
发起方获取多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个;
应答方获取多个数据传输通道的第二RTT和第二丢包率中的至少一个;
发起方根据第一RTT和第二RTT,计算RTT分量;
发起方根据第一丢包率和第二丢包率,计算丢包率分量,其中,第二RTT和第二丢包率是应答方通过TCP服务器转发至发起方的;
发起方获取多个数据传输通道中RTT分量和丢包率分量中的至少一个满足预设条件的数据传输通道;
发送方根据至少一个满足预设条件的数据传输通道的信息,向应答方发送数据。
可选的,若发起方接收到UDP服务器发送的P2P通道的信息,则通过P2P通道,向应答方发送数据。
本发明实施例提供了一种数据传输通道建立方法,通过在数据传输之前,多个UDP服务器发起方和应答方根据发送的通道建立请求,分别预先建立数据传输通道,相比于在数据传输时再建立数据传输通道,避免了在数据传输过程中等待数据通道建立的时间,从而提高了数据传输的效率,提高了用户体验。另外,通过多个UDP服务器分别所建立的多个数据传输通道传输数据,相比于通过一个通道传输数据,使得可以在部分通道网络传输速度和可靠性较差时,更换数据传输通道,避免了数据的丢失,提高了数据传输的可靠性,提高了用户体验。
实施例二为本发明实施例提供的一种数据传输通道建立方法,参照图2所示,该方法包括:
201、服务器接收发起方发送的建立请求,并将建立请求发送至应答方。
202、当服务器接收到应答方发送的接受响应消息,则将接受响应消息发送至发起方,并向发起方和应答方发送多个用户数据报协议UDP服务器的信息。
具体的,服务器包括传输控制协议TCP服务器,服务器向发起方和应答方发送多个用户数据报协议UDP服务器的信息包括:
TCP服务器获取满足预设条件的多个用户数据报协议UDP服务器的信息;
TCP服务器向发起方和应答方发送多个UDP服务器的信息。
其中,所述TCP服务器获取满足预设条件的多个用户数据报协议UDP服务器的信息的过程可以为:
TCP服务器获取所有可用UDP服务器的网络参数;
TCP服务器根据网络参数,从所有可用UDP服务器中获取满足预设条件的多个UDP服务器。
203、发起方和应答方向多个UDP服务器发送通道建立请求。
204、多个UDP服务器分别建立多个数据传输通道。
可选的,在步骤204之前,所述方法还可以包括:
UDP服务器判断发起方和应答方之间是否能够建立点对点P2P通道;
若是,则UDP服务器建立发起方和应答方之间的P2P通道,并将P2P通道的信息发送至发起方和应答方。
205、发起方根据多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向应答方发送数据。
具体的,发起方通过以下操作中的任意一个,从多个数据传输通道中满足预设条件的至少一个数据传输通道:
发起方获取多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个;
发起方根据第一RTT,计算RTT分量;
发起方根据第一丢包率,计算丢包率分量;
发起方获取多个数据传输通道中RTT分量和丢包率分量中的至少一个满足预设条件的数据传输通道。或者
发起方获取多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个;
应答方获取多个数据传输通道的第二RTT和第二丢包率中的至少一个;
发起方根据第一RTT和第二RTT,计算RTT分量;
发起方根据第一丢包率和第二丢包率,计算丢包率分量,其中,第二RTT和第二丢包率是应答方通过TCP服务器转发至发起方的;
发起方获取多个数据传输通道中RTT分量和丢包率分量中的至少一个满足预设条件的数据传输通道;
发送方根据至少一个满足预设条件的数据传输通道的信息,向应答方发送数据。
可选的,若发起方接收到UDP服务器发送的P2P通道的信息,则通过P2P通道,向应答方发送数据。
本发明实施例提供了一种数据传输通道建立方法,通过在数据传输之前,多个UDP服务器发起方和应答方根据发送的通道建立请求,分别预先建立数据传输通道,相比于在数据传输时再建立数据传输通道,避免了在数据传输过程中等待数据通道建立的时间,从而提高了数据传输的效率,提高了用户体验。另外,通过多个UDP服务器分别所建立的多个数据传输通道传输数据,相比于通过一个通道传输数据,使得可以在部分通道网络传输速度和可靠性较差时,更换数据传输通道,避免了数据的丢失,提高了数据传输的可靠性,提高了用户体验。
实施例三为本发明实施例提供的一种数据传输通道建立方法,参照图3所示,该方法包括:
301、TCP服务器接收发起方发送的建立请求,并将建立请求发送至应答方。
具体的,该建立请求可以为数据传输通道建立请求;
在实际应用中,该建立请求可以包括应答方的网络地址,发起方的网络地址等,
该发送过程可以是:
发起方将包括自身的网络地址与应答方的网络地址的建立请求发送至于其连接的TCP服务器;
TCP服务器根据建立请求中所包括的应答方的网络地址,将该建立请求发送至应答方,上述发送过程仅仅是示例性的,本发明实施例对具体的发送过程不加以限定。
302、TCP服务器接收到应答方发送的第一响应消息,第一响应消息用于指示应答方接收到建立请求。
具体的,应答方在接收到该建立请求之后,向服务器发送用于指示其接收到该建立请求的第一响应消息。
服务器接收该应答方发送的第一响应消息。
可选的,在实际应用中,若服务器在预设时间内未接收到应答方发送的第一响应消息,则可以再将该建立请求发送至应答方,直至接收到应答方发送的第一响应消息。
303、TCP服务器获取所有可用UDP服务器的网络参数。
具体的,上述过程可以是TCP服务器向UDP服务器发送测试数据实现的,也可以是通过获取UDP服务器周期性向TCP服务器上报的网络参数实现的,本发明实施例对具体的实现方式不加以限定。
另外,本发明实施例所述的可用UDP服务器包括与TCP服务器连接且处于空闲状态的UDP服务器,或者是与TCP服务器连接且待处理任务数小于预设值的UDP服务器。
本发明实施例所述的网络参数用于描述UDP服务器的数据处理能力、UDP服务器与发起方之间的网络链路的网络状态以及UDP服务器与应答方之间的网络链路的网络状态。
304、TCP服务器根据网络参数,从所有可用UDP服务器中获取满足预设条件的多个UDP服务器。
具体的,TCP服务器获取网络参数满足阈值的多个UDP服务器;
另外,在上述过程中,可以是通过判断UDP服务器的数据处理能力、UDP服务器与发起方之间的网络链路的网络状态以及UDP服务器与应答方之间的网络链路的网络状态中的至少一个来确定满足预设条件的多个UDP服务器,也可以是综合判断UDP服务器的数据处理能力、UDP服务器与发起方之间的网络链路的网络状态以及UDP服务器与应答方之间的网络链路的网络状态来确定满足预设条件的多个UDP服务器。
其中,UDP服务器的数据处理能力可以通过单位时间内服务器所能处理的数据量来描述,UDP服务器的数据处理能力满足预设条件包括:
单位时间内服务器所能处理的数据量大于或者等于数据量阈值,该单位时间内服务器所能处理的数据量可以是通过服务器的数据处理历史记录获取的。
UDP服务器与发起方之间的网络链路的网络状态可以通过UDP服务器与发起方之间的网络链路的传输速度、丢包率和RTT来描述,UDP服务器与发起方之间的网络链路的网络状态满足预设条件包括:
传输速度大于第一预设速度、丢包率小于第一丢包率阈值和RTT小于第一RTT阈值中的至少一个。
UDP服务器与应答方之间的网络链路的网络状态可以通过UDP服务器与应答之间的网络链路的传输速度、丢包率和RTT来描述,
UDP服务器与应答方之间的网络链路的网络状态满足预设条件包括:
传输速度大于第二预设速度、丢包率小于第二丢包率阈值和RTT小于第二RTT阈值中的至少一个。
值得注意的是,步骤303至步骤304是实现所述TCP服务器获取满足预设条件的多个用户数据报协议UDP服务器的信息的过程,除了所述步骤所述的方式之外,还可以通过其他方式实现该过程,本发明实施例对具体的方式不加以限定。
由于UDP服务器的网络参数描述了UDP服务器的数据处理能力、UDP服务器与发起方之间的网络链路的网络状态以及UDP服务器与应答方之间的网络链路的网络状态,所以TCP服务器根据网络参数,从所有可用UDP服务器中获取满足预设条件的多个UDP服务器,避免了在数据传输过程中由于UDP服务器的数据处理能力、UDP服务器与发起方之间的网络链路的网络状态以及UDP服务器与应答方之间的网络链路的网络状态较差而导致的数据传输中断或者数据丢失,进一步保证了数据传输的可靠性和效率。
305、TCP服务器向发起方和应答方发送多个UDP服务器的信息。
具体的,该UDP服务器的信息可以包括UDP服务器的IP地址。
本发明实施例对具体的发送方式不加以限定。
值得注意的是,步骤303至步骤305是实现所述服务器向发起方和应答方发送多个用户数据报协议UDP服务器的信息的过程,除了所述步骤所述的方式之外,还可以通过其他方式实现该过程,本发明实施例对具体的方式不加以限定。
306、发起方和应答方向多个UDP服务器发送通道建立请求。
具体的,该通道建立请求可以包括发起方的网络地址和应答方的网络地址。
本发明实施例对具体的发送方式不加以限定。
可选的,该通道建立请求还可以包括用于描述所要传输数据类型的字段,以使UDP服务器根据该数据类型的字段,进行数据传输通道的建立。
307、UDP服务器判断发起方和应答方之间是否能够建立点对点P2P通道,若是,则执行步骤308;否则,则执行步骤309。
具体的,判断发起方和应答方之间传输介质的类型、发起方和应答方所连接的同一网络的运行速度、发起方和应答方所连接的网络的覆盖范围以及发起方和应答方之间的网络拓扑结构是否满足建立点对点P2P通道所需的条件。
其中,发起方和应答方之间传输介质的类型满足预设条件包括:
发起方和应答方之间至少包括能够支持组建无线对等网络的无线网络接口或者发起方和应答方之间至少包括支持组建有线对等网络的有线网络接口和传输介质。
发起方和应答方所连接的同一网络的运行速度满足预设条件包括:
发起方和应答方所连接的同一网络的运行速度大于或者等于网络速度阈值。
发起方和应答方所连接的网络的覆盖范围满足预设条件包括:
发起方的网络覆盖范围至少包括应答方,应答方之间的网络覆盖至少包括发起方。
发起方和应答方之间的网络拓扑结构满足预设条件包括:
发起方和应答方之间的网络拓扑结构是自组织且自动调整的。
本发明实施例对具体的判断方式不加以限定。
值得注意的是,步骤307至步骤308是可选步骤,在实际应用中,在步骤306之后,可以直接执行步骤309,无需执行步骤307至步骤308。
由于通过P2P通道进行数据传输相比于通过服务器中转的数据传输的可靠性较高,且数据传输的效率较高,同时还可以避免在通过服务器中转进行数据传输由于中间路由设备故障而导致的数据传输中断或者数据丢失,所以UDP服务器判断发起方和应答方之间是否能够建立点对点P2P通道,以使在发起方和应答方之间能够建立点对点P2P通道时,通过P2P通道进行数据传输,从而进一步保证了数据传输的可靠性和效率。
308、UDP服务器建立发起方和应答方之间的P2P通道,并将P2P通道的信息发送至发起方和应答方。
具体的,该将P2P通道的信息包括:P2P通道的路由信息。
本发明实施例对具体的发送方式不加以限定。
309、多个UDP服务器分别建立多个数据传输通道。
具体的,多个UDP服务器分别根据发起方的I P地址、应答方的I P地址以及发起方和应答方的之间的路由信息,建立多个数据传输通道;
本发明实施例对具体的建立方式不加以限定。
310、TCP服务器若接收到应答方发送的第二响应消息,则将第二响应消息发送至发起方,在步骤310之后,执行步骤311和步骤317中的任意一个。
具体的,该第二响应消息用于指示应答方同意发起方的数据传输请求,并指示发起方可以通过多个数据传输通道,向应答方传输数据。
本发明实施例对具体的发送方式不加以限定。
311、发起方获取多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个。
具体的,发起方通过多个数据传输通道向UDP服务器发送多个测试包,获取多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个。
示例性的,在实际应用中,该过程可以为:
发起方通过多个数据传输通道其中的任意一个向对应的UDP服务器发送10个测试包,若返回8个测试包,则该数据传输通道对应的丢包率为20%,该8个测试包的平均RTT为该数据传输通道对应的RTT值。
312、应答方获取多个数据传输通道的第二RTT和第二丢包率中的至少一个。
具体的,应答方获取多个数据传输通道的第二RTT和第二丢包率中的至少一个的方式与步骤311所述的发起方获取多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个的方式相同,此处不再加以赘述。
313、发起方根据第一RTT和第二RTT,计算RTT分量;
具体的,发起方获取应答方所获取的多个数据传输通道的第二RTT,该获取方式可以是应答方通过TCP服务器将第二RTT转发至发起方;
通过第一预设公式计算,根据第一RTT和第二RTT,计算RTT分量,该第一预设公式可以为:
Figure BDA0000978437380000221
x=x1+x2
其中,在所述公式中,r为RTT分量,x1为第一RTT,x2为第二RTT,a1、a2、a3、a4和a5分别为预设系数,在实际应用中,a1的值可以为100,a2的值可以为30,a3的值可以为300,a4的值可以为30000,a5的值可以为3000。
所述第一预设公式仅仅是示例性的,本发明实施例对具体的预设公式不加以限定。
314、发起方根据第一丢包率和第二丢包率,计算丢包率分量;
具体的,发起方获取应答方所获取的多个数据传输通道的第二丢包率,该获取方式可以是应答方通过TCP服务器将第二丢包率转发至发起方;
通过第二预设公式计算,根据第一丢包率和第二丢包率,计算丢包率分量,该第二预设公式可以为:
l=b1×(1-y)2
y=1-(1-y1)×(1-y2)
其中,l为丢包率分量,y1为第一丢包率,y2为第二丢包率,b1为预设系数,在实际应用中,b1的值可以为100。
所述第二预设公式仅仅是示例性的,本发明实施例对具体的预设公式不加以限定。
315、发起方获取多个数据传输通道中RTT分量和丢包率分量中的至少一个满足预设条件的数据传输通道。
具体的,通过第三预设公式,获取多个数据传输通道中RTT分量和丢包率分量中的至少一个满足预设条件的数据传输通道,该第三预设公式可以为:
s=a×r+b×l
其中,s为分值,r为RTT分量,l为丢包率分量,a为r的权重,b为l的权重,在实际应用中,a可以为0.3,b可以为0.7;
满足预设条件的数据传输通道可以为分值s大于或者等于分值阈值的至少一个数据传输通道。
由于数据传输通道的RTT和丢包率描述了数据传输通道的数据传输能力,当RTT和丢包率较小时,数据传输的效率较高,且数据丢失的情况较少,所以通过获取多个数据传输通道中RTT分量和丢包率分量中的至少一个满足预设条件的数据传输通道,进一步保证了数据传输的可靠性和效率。
316、发送方根据至少一个满足预设条件的数据传输通道的信息,向应答方发送数据,结束。
具体的,本发明实施例对具体的发送过程不加以限定。
值得注意的是,步骤311至步骤316是实现所述发起方根据多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向应答方发送数据的过程,除了所述步骤所述的方式之外,还可以通过其他方式实现该过程,本发明实施例对具体的方式不加以限定。
可选的,除了步骤311至步骤316所述的方式之外,还可以通过以下方式实现发起方根据多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向应答方发送数据的过程,该方式可以为:
发起方获取多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个;
具体的,该获取方式与步骤311所述的获取方式相同,此处不再加以赘述。
发起方根据第一RTT,计算RTT分量;
具体的,通过第四预设公式计算,根据第一RTT,计算RTT分量;该第四预设公式可以为:
Figure BDA0000978437380000241
其中,在所述公式中,r为RTT分量,x为第一RTT,a1、a2、a3、a4和a5分别为预设系数,在实际应用中,a1的值可以为100,a2的值可以为30,a3的值可以为300,a4的值可以为30000,a5的值可以为3000。
发起方根据第一丢包率,计算丢包率分量;
具体的,通过第五预设公式,根据第一丢包率,计算丢包率分量;该第五预设公式可以为;
l=b1×(1-y)2
其中,在所述公式中,l为丢包率分量,y为第一丢包率,b1为预设系数,在实际应用中,b1的值可以为100。
发起方获取多个数据传输通道中RTT分量和丢包率分量中的至少一个满足预设条件的数据传输通道。
具体的,通过第三预设公式,获取多个数据传输通道中RTT分量和丢包率分量中的至少一个满足预设条件的数据传输通道,该方式与步骤315所述的方式相同,此处不再加以赘述。
除了所述两种方式之外,还可以通过其他方式实现所述发起方根据多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向应答方发送数据的过程,本发明实施例对具体的方式不加以限定。
317,若发起方接收到UDP服务器发送的P2P通道的信息,则通过P2P通道,向应答方发送数据,结束。
具体的,本发明实施例对具体的发送过程不加以限定。
值得注意的是,步骤317是可选步骤,在实际应用中,在步骤310之后,可以直接执行步骤311,无需执行步骤317;另外,在本发明实施例中,若在步骤310之前,已执行步骤307至步骤308,则在步骤310之后,执行步骤317。
在实际应用中,本发明实施例所提供的数据传输通道建立方法的流程图还可以参照图4所示。
本发明实施例提供了一种数据传输通道建立方法,通过在数据传输之前,多个UDP服务器发起方和应答方根据发送的通道建立请求,分别预先建立数据传输通道,相比于在数据传输时再建立数据传输通道,避免了在数据传输过程中等待数据通道建立的时间,从而提高了数据传输的效率,提高了用户体验。另外,通过多个UDP服务器分别所建立的多个数据传输通道传输数据,相比于通过一个通道传输数据,使得可以在部分通道网络传输速度和可靠性较差时,更换数据传输通道,避免了数据的丢失,提高了数据传输的可靠性,提高了用户体验。另外,由于UDP服务器的网络参数描述了UDP服务器的数据处理能力、UDP服务器与发起方之间的网络链路的网络状态以及UDP服务器与应答方之间的网络链路的网络状态,所以TCP服务器根据网络参数,从所有可用UDP服务器中获取满足预设条件的多个UDP服务器,避免了在数据传输过程中由于UDP服务器的数据处理能力、UDP服务器与发起方之间的网络链路的网络状态以及UDP服务器与应答方之间的网络链路的网络状态较差而导致的数据传输中断或者数据丢失,进一步保证了数据传输的可靠性和效率。另外,由于数据传输通道的RTT和丢包率描述了数据传输通道的数据传输能力,当RTT和丢包率较小时,数据传输的效率较高,且数据丢失的情况较少,所以通过获取多个数据传输通道中RTT分量和丢包率分量中的至少一个满足预设条件的数据传输通道,进一步保证了数据传输的可靠性和效率。另外,由于通过P2P通道进行数据传输相比于通过服务器中转的数据传输的可靠性较高,且数据传输的效率较高,同时还可以避免在通过服务器中转进行数据传输由于中间路由设备故障而导致的数据传输中断或者数据丢失,所以UDP服务器判断发起方和应答方之间是否能够建立点对点P2P通道,以使在发起方和应答方之间能够建立点对点P2P通道时,通过P2P通道进行数据传输,从而进一步保证了数据传输的可靠性和效率。
实施例四为本发明实施例提供的一种数据传输通道建立方法,参照图5所示,该方法包括:
501、TCP服务器接收发起方发送的建立请求,并将建立请求发送至应答方。
具体的,该步骤与步骤301相同,此处不再加以赘述。
502、当TCP服务器接收到应答方发送的接受响应消息,则将接受响应消息发送至发起方。
具体的,应答方在接收到该建立请求之后,向服务器发送用于指示其接收到该建立请求的接受响应消息。
服务器接收该应答方发送的接受响应消息。
可选的,在实际应用中,若服务器在预设时间内未接收到应答方发送的接受响应消息,则可以再将该建立请求发送至应答方,直至接收到应答方发送的接受响应消息。
503、TCP服务器获取所有可用UDP服务器的网络参数。
具体的,该步骤与步骤303相同,此处不再加以赘述。
504、TCP服务器根据网络参数,从所有可用UDP服务器中获取满足预设条件的多个UDP服务器。
具体的,该步骤与步骤304相同,此处不再加以赘述。
值得注意的是,步骤503至步骤504是实现所述TCP服务器获取满足预设条件的多个用户数据报协议UDP服务器的信息的过程,除了所述步骤所述的方式之外,还可以通过其他方式实现该过程,本发明实施例对具体的方式不加以限定。
由于UDP服务器的网络参数描述了UDP服务器的数据处理能力、UDP服务器与发起方之间的网络链路的网络状态以及UDP服务器与应答方之间的网络链路的网络状态,所以TCP服务器根据网络参数,从所有可用UDP服务器中获取满足预设条件的多个UDP服务器,避免了在数据传输过程中由于UDP服务器的数据处理能力、UDP服务器与发起方之间的网络链路的网络状态以及UDP服务器与应答方之间的网络链路的网络状态较差而导致的数据传输中断或者数据丢失,进一步保证了数据传输的可靠性和效率。
505、TCP服务器向发起方和应答方发送多个UDP服务器的信息。
具体的,该步骤与步骤305相同,此处不再加以赘述。
值得注意的是,步骤503至步骤505是实现TCP服务器向发起方和应答方发送多个UDP服务器的信息的过程,除了所述步骤所述的方式之外,还可以通过其他方式实现该过程,本发明实施例对具体的方式不加以限定。
506、UDP服务器判断发起方和应答方之间是否能够建立点对点P2P通道,若是,则执行步骤507;否则,则执行步骤508。
具体的,该步骤与步骤307相同,此次不再加以赘述。
值得注意的是,步骤506至步骤507是可选步骤,在实际应用中,在步骤505之后,可以直接执行步骤508,无需执行步骤506至步骤507。
由于通过P2P通道进行数据传输相比于通过服务器中转的数据传输的可靠性较高,且数据传输的效率较高,同时还可以避免在通过服务器中转进行数据传输由于中间路由设备故障而导致的数据传输中断或者数据丢失,所以UDP服务器判断发起方和应答方之间是否能够建立点对点P2P通道,以使在发起方和应答方之间能够建立点对点P2P通道时,通过P2P通道进行数据传输,从而进一步保证了数据传输的可靠性和效率。
507、UDP服务器建立发起方和应答方之间的P2P通道,并将P2P通道的信息发送至发起方和应答方。
具体的,该步骤与步骤308相同,此次不再加以赘述。
508、多个UDP服务器分别建立多个数据传输通道。
具体的,该步骤与步骤309相同,此次不再加以赘述。
509、TCP服务器若接收到应答方发送的第二响应消息,则将第二响应消息发送至发起方,在步骤509之后,执行步骤510和步骤516中的任意一个。
具体的,该步骤与步骤310相同,此次不再加以赘述。
510、发起方获取多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个。
具体的,该步骤与步骤311相同,此次不再加以赘述。
511、应答方获取多个数据传输通道的第二RTT和第二丢包率中的至少一个。
具体的,该步骤与步骤312相同,此次不再加以赘述。
512、发起方根据第一RTT和第二RTT,计算RTT分量。
具体的,该步骤与步骤313相同,此次不再加以赘述。
513、发起方根据第一丢包率和第二丢包率,计算丢包率分量。
具体的,该步骤与步骤314相同,此次不再加以赘述。
514、发起方获取多个数据传输通道中RTT分量和丢包率分量中的至少一个满足预设条件的数据传输通道。
具体的,该步骤与步骤315相同,此次不再加以赘述。
由于数据传输通道的RTT和丢包率描述了数据传输通道的数据传输能力,当RTT和丢包率较小时,数据传输的效率较高,且数据丢失的情况较少,所以通过获取多个数据传输通道中RTT分量和丢包率分量中的至少一个满足预设条件的数据传输通道,进一步保证了数据传输的可靠性和效率。
515、发送方根据至少一个满足预设条件的数据传输通道的信息,向应答方发送数据,结束。
具体的,该步骤与步骤316相同,此次不再加以赘述。
值得注意的是,步骤510至步骤515是实现所述发起方根据多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向应答方发送数据的过程,除了所述步骤所述的方式之外,还可以通过其他方式实现该过程,本发明实施例对具体的方式不加以限定。
可选的,除了步骤510至步骤515所述的方式之外,还可以通过以下方式实现发起方根据多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向应答方发送数据的过程,该方式可以为:
发起方获取多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个;
发起方根据第一RTT,计算RTT分量;
发起方根据第一丢包率,计算丢包率分量;
发起方获取多个数据传输通道中RTT分量和丢包率分量中的至少一个满足预设条件的数据传输通道。
除了所述两种方式之外,还可以通过其他方式实现所述发起方根据多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向应答方发送数据的过程,本发明实施例对具体的方式不加以限定。
516,若发起方接收到UDP服务器发送的P2P通道的信息,则通过P2P通道,向应答方发送数据,结束。
具体的,该步骤与步骤317相同,此次不再加以赘述。
值得注意的是,步骤516是可选步骤,在实际应用中,在步骤509之后,可以直接执行步骤510,无需执行步骤516;另外,在本发明实施例中,若在步骤509之前,已执行步骤506至步骤507,则在步骤509之后,执行步骤516。
在实际应用中,本发明实施例所提供的数据传输通道建立方法的流程图还可以参照图6所示。
本发明实施例提供了一种数据传输通道建立方法,通过在数据传输之前,多个UDP服务器发起方和应答方根据发送的通道建立请求,分别预先建立数据传输通道,相比于在数据传输时再建立数据传输通道,避免了在数据传输过程中等待数据通道建立的时间,从而提高了数据传输的效率,提高了用户体验。另外,通过多个UDP服务器分别所建立的多个数据传输通道传输数据,相比于通过一个通道传输数据,使得可以在部分通道网络传输速度和可靠性较差时,更换数据传输通道,避免了数据的丢失,提高了数据传输的可靠性,提高了用户体验。另外,由于UDP服务器的网络参数描述了UDP服务器的数据处理能力、UDP服务器与发起方之间的网络链路的网络状态以及UDP服务器与应答方之间的网络链路的网络状态,所以TCP服务器根据网络参数,从所有可用UDP服务器中获取满足预设条件的多个UDP服务器,避免了在数据传输过程中由于UDP服务器的数据处理能力、UDP服务器与发起方之间的网络链路的网络状态以及UDP服务器与应答方之间的网络链路的网络状态较差而导致的数据传输中断或者数据丢失,进一步保证了数据传输的可靠性和效率。另外,由于数据传输通道的RTT和丢包率描述了数据传输通道的数据传输能力,当RTT和丢包率较小时,数据传输的效率较高,且数据丢失的情况较少,所以通过获取多个数据传输通道中RTT分量和丢包率分量中的至少一个满足预设条件的数据传输通道,进一步保证了数据传输的可靠性和效率。另外,由于通过P2P通道进行数据传输相比于通过服务器中转的数据传输的可靠性较高,且数据传输的效率较高,同时还可以避免在通过服务器中转进行数据传输由于中间路由设备故障而导致的数据传输中断或者数据丢失,所以UDP服务器判断发起方和应答方之间是否能够建立点对点P2P通道,以使在发起方和应答方之间能够建立点对点P2P通道时,通过P2P通道进行数据传输,从而进一步保证了数据传输的可靠性和效率。
实施例五为本发明实施例提供的一种服务器,参照图7所示,该服务器包括:
中转模块71,用于接收发起方发送的建立请求,并将建立请求发送至应答方;
发送模块72,用于在中转模块接收到用于指示应答方接收到建立请求的第一响应消息后,向发起方和应答方发送多个用户数据报协议UDP服务器的信息;
中转模块71还用于接收到应答方发送的第二响应消息时,将第二响应消息发送至发起方,以使发起方根据多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向应答方发送数据;
其中,多个数据传输通道是发起方和应答方向多个UDP服务器发送通道建立请求后,多个UDP服务器分别建立的。
可选的,服务器包括传输控制协议TCP服务器,发送模块72具体包括:
获取子模块721,用于获取满足预设条件的多个用户数据报协议UDP服务器的信息;
发送子模块722,用于向发起方和应答方发送多个UDP服务器的信息。
可选的,获取子模块721具体用于:
获取所有可用UDP服务器的网络参数;
根据网络参数,从所有可用UDP服务器中获取满足预设条件的多个UDP服务器。
本发明实施例提供了一种服务器,该服务器在数据传输之前,通过多个UDP服务器发起方和应答方根据发送的通道建立请求,分别预先建立数据传输通道,相比于在数据传输时再建立数据传输通道,避免了在数据传输过程中等待数据通道建立的时间,从而提高了数据传输的效率,提高了用户体验。另外,通过多个UDP服务器分别所建立的多个数据传输通道传输数据,相比于通过一个通道传输数据,使得可以在部分通道网络传输速度和可靠性较差时,更换数据传输通道,避免了数据的丢失,提高了数据传输的可靠性,提高了用户体验。
实施例六为本发明实施例提供的一种服务器,参照图8所示,该服务器包括存储器81、网络接口模块82以及与存储器81和网络接口模块82连接的处理器83,其中,存储器81用于存储一组程序代码,处理器83调用存储器81所存储的程序代码用于执行以下操作:
控制网络接口模块82接收发起方发送的建立请求,并将建立请求发送至应答方;
控制网络接口模块82在接收到用于指示应答方接收到建立请求的第一响应消息后;
向发起方和应答方发送多个用户数据报协议UDP服务器的信息;
控制网络接口模块82在接收到应答方发送的第二响应消息时,将第二响应消息发送至发起方,以使发起方根据多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向应答方发送数据;
其中,多个数据传输通道是发起方和应答方向多个UDP服务器发送通道建立请求后,多个UDP服务器分别建立的。
可选的,服务器包括传输控制协议TCP服务器,处理器82调用存储器81所存储的程序代码用于执行以下操作:
获取满足预设条件的多个用户数据报协议UDP服务器的信息;
向发起方和应答方发送多个UDP服务器的信息。
可选的,处理器82调用存储器81所存储的程序代码用于执行以下操作:
获取所有可用UDP服务器的网络参数;
根据网络参数,从所有可用UDP服务器中获取满足预设条件的多个UDP服务器。
本发明实施例提供了一种服务器,该服务器在数据传输之前,通过多个UDP服务器发起方和应答方根据发送的通道建立请求,分别预先建立数据传输通道,相比于在数据传输时再建立数据传输通道,避免了在数据传输过程中等待数据通道建立的时间,从而提高了数据传输的效率,提高了用户体验。另外,通过多个UDP服务器分别所建立的多个数据传输通道传输数据,相比于通过一个通道传输数据,使得可以在部分通道网络传输速度和可靠性较差时,更换数据传输通道,避免了数据的丢失,提高了数据传输的可靠性,提高了用户体验。
实施例七为本发明实施例提供的一种服务器,参照图9所示,该服务器包括:
中转模块91,用于接收发起方发送的建立请求,并将建立请求发送至应答方;
发送模块92,用于当中转模块接收到应答方发送的接受响应消息时,将接受响应消息发送至发起方,并向发起方和应答方发送多个用户数据报协议UDP服务器的信息。
可选的,服务器包括传输控制协议TCP服务器,发送模块92具体包括:
获取子模块921,用于获取满足预设条件的多个用户数据报协议UDP服务器的信息;
发送子模块922,用于向发起方和应答方发送多个UDP服务器的信息。
可选的,获取子模块921具体用于:
获取所有可用UDP服务器的网络参数;
根据网络参数,从所有可用UDP服务器中获取满足预设条件的多个用户数据报协议UDP服务器。
本发明实施例提供了一种服务器,该服务器在数据传输之前,通过多个UDP服务器发起方和应答方根据发送的通道建立请求,分别预先建立数据传输通道,相比于在数据传输时再建立数据传输通道,避免了在数据传输过程中等待数据通道建立的时间,从而提高了数据传输的效率,提高了用户体验。另外,通过多个UDP服务器分别所建立的多个数据传输通道传输数据,相比于通过一个通道传输数据,使得可以在部分通道网络传输速度和可靠性较差时,更换数据传输通道,避免了数据的丢失,提高了数据传输的可靠性,提高了用户体验。
实施例八为本发明实施例提供的一种服务器,参照图10所示,该服务器包括存储器101、网络接口模块102以及与存储器101、网络接口模块102连接的处理器103,其中,存储器101用于存储一组程序代码,处理器103调用存储器101所存储的程序代码用于执行以下操作:
控制网络接口模块102接收发起方发送的建立请求,并将建立请求发送至应答方;
控制网络接口模块102在接收到应答方发送的接受响应消息时,将接受响应消息发送至发起方,并向发起方和应答方发送多个用户数据报协议UDP服务器的信息。
可选的,服务器包括传输控制协议TCP服务器,处理器102调用存储器101所存储的程序代码用于执行以下操作:
获取满足预设条件的多个用户数据报协议UDP服务器的信息;
向发起方和应答方发送多个UDP服务器的信息。
可选的,处理器102调用存储器101所存储的程序代码用于执行以下操作:
获取所有可用UDP服务器的网络参数;
根据网络参数,从所有可用UDP服务器中获取满足预设条件的多个用户数据报协议UDP服务器。
本发明实施例提供了一种服务器,该服务器在数据传输之前,通过多个UDP服务器发起方和应答方根据发送的通道建立请求,分别预先建立数据传输通道,相比于在数据传输时再建立数据传输通道,避免了在数据传输过程中等待数据通道建立的时间,从而提高了数据传输的效率,提高了用户体验。另外,通过多个UDP服务器分别所建立的多个数据传输通道传输数据,相比于通过一个通道传输数据,使得可以在部分通道网络传输速度和可靠性较差时,更换数据传输通道,避免了数据的丢失,提高了数据传输的可靠性,提高了用户体验。
实施例九为本发明实施例提供的一种数据传输通道建立***,参照图11所示,该***包括服务器111、发起方112、应答方113和多个用户数据报协议UDP服务器114,其中:
服务器111包括:
中转模块1111,用于接收发起方112发送的建立请求,并将建立请求发送至应答方113;
第一发送模块1112,用于在中转模块接收到应答方113发送的第一响应消息,第一响应消息用于指示应答方113接收到建立请求时,向发起方112和应答方发送多个UDP服务器的信息;
发起方112和应答方113分别包括第二发送模块1121和第三发送模块1131,第二发送模块1121和第三发送模块1131用于向多个UDP服务器发送通道建立请求;
多个UDP服务器114分别包括多个通道建立模块1141,多个通道建立模块分别用于建立多个数据传输通道;
中转模块1111还用于在接收到应答方113发送的第二响应消息时,将第二响应消息发送至发起方112;
第二发送模块1121还用于根据多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向应答方113发送数据。
可选的,服务器111包括TCP服务器,第一发送模块1112包括:
获取子模块11121,用于获取满足预设条件的多个用户数据报协议UDP服务器114的信息;
第一发送子模块11122,用于向发起方112和应答方113发送多个UDP服务器114的信息。
可选的,获取子模块11121具体用于:
获取所有可用UDP服务器的网络参数;
根据网络参数,从所有可用UDP服务器中获取满足预设条件的多个UDP服务器114。
可选的,发起方112还包括处理模块1122,处理模块1122用于执行以下操作中的任意一个:
获取多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个;
根据第一RTT,计算RTT分量;
根据第一丢包率,计算丢包率分量;
获取多个数据传输通道中RTT分量和丢包率分量中的至少一个满足预设条件的数据传输通道。或者
获取多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个;
获取应答方113所获取的多个数据传输通道的第二RTT和第二丢包率中的至少一个;
根据第一RTT和第二RTT,计算RTT分量;
根据第一丢包率和第二丢包率,计算丢包率分量,其中,第二RTT和第二丢包率是应答方通过TCP服务器转发至发起方的;
获取多个数据传输通道中RTT分量和丢包率分量中的至少一个满足预设条件的数据传输通道。
可选的,UDP服务器114还包括:
处理子模块1142,用于判断发起方112和应答方113之间是否能够建立点对点P2P通道;
所述处理子模块1142还用于在判定发起方112和应答方113之间能够建立点对点P2P通道时,建立发起方和应答方之间的P2P通道;
第二发送子模块1143,用于将P2P通道的信息发送至发起方112和应答方113。
可选的,
发起方112还包括接收模块1123,第二发送模块1121还用于在接收模块1123接收到UDP服务器发送的P2P通道的信息时,通过P2P通道,向应答方113发送数据。
本发明实施例提供了一种数据传输通道建立***,该***通过在数据传输之前,多个UDP服务器发起方和应答方根据发送的通道建立请求,分别预先建立数据传输通道,相比于在数据传输时再建立数据传输通道,避免了在数据传输过程中等待数据通道建立的时间,从而提高了数据传输的效率,提高了用户体验。另外,通过多个UDP服务器分别所建立的多个数据传输通道传输数据,相比于通过一个通道传输数据,使得可以在部分通道网络传输速度和可靠性较差时,更换数据传输通道,避免了数据的丢失,提高了数据传输的可靠性,提高了用户体验。
实施例十为本发明实施例提供的一种数据传输通道建立***,参照图12所示,该***包括服务器121、发起方122、应答方123和多个用户数据报协议UDP服务器124,其中:
服务器121包括:
中转模块1211,用于接收发起方122发送的建立请求,并将建立请求发送至应答方123;
第一发送模块1212,用于在中转模块接收到应答方123发送的接受响应消息时,将接受响应消息发送至发起方122,并向发起方122和应答方123发送多个UDP服务器124的信息;
发起方122和应答方123分别包括第二发送模块1221和第三发送模块1231,第二发送模块1221和第三发送模块分别用于向多个UDP服务器124发送通道建立请求;
多个UDP服务器124分别包括多个通道建立模块1241,用于建立多个数据传输通道;
第二发送模块1221还用于根据多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向应答方123发送数据。
可选的,服务器121包括TCP服务器,第一发送模块1212包括:
获取子模块12121,用于获取满足预设条件的多个用户数据报协议UDP服务器的信息;
发送子模块12122,用于向发起方122和应答方123发送多个UDP服务器的信息。
可选的,获取子模块12121具体用于:
获取所有可用UDP服务器的网络参数;
根据网络参数,从所有可用UDP服务器中获取满足预设条件的多个UDP服务器124。
可选的,发起方还包括处理模块1222,处理模块1222用于执行以下操作中的任意一个:
获取多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个;
根据第一RTT,计算RTT分量;
根据第一丢包率,计算丢包率分量;
获取多个数据传输通道中RTT分量和丢包率分量中的至少一个满足预设条件的数据传输通道。或者
获取多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个;
获取应答方123所获取的多个数据传输通道的第二RTT和第二丢包率中的至少一个;
根据第一RTT和第二RTT,计算RTT分量;
根据第一丢包率和第二丢包率,计算丢包率分量,其中,第二RTT和第二丢包率是应答方通过TCP服务器转发至发起方的;
获取多个数据传输通道中RTT分量和丢包率分量中的至少一个满足预设条件的数据传输通道。
可选的,UDP服务器124还包括:
处理子模块1242,用于判断发起方122和应答方123之间是否能够建立点对点P2P通道;
所述处理子模块1242还用于在判定发起方112和应答方113之间能够建立点对点P2P通道时,建立发起方和应答方之间的P2P通道;
第二发送子模块1243,用于将P2P通道的信息发送至发起方122和应答方123。
可选的,
发起方122还包括接收模块1223,第二发送模块1221还用于在接收模块1223接收到UDP服务器发送的P2P通道的信息时,通过P2P通道,向应答方123发送数据。
本发明实施例提供了一种数据传输通道建立***,该***通过在数据传输之前,多个UDP服务器发起方和应答方根据发送的通道建立请求,分别预先建立数据传输通道,相比于在数据传输时再建立数据传输通道,避免了在数据传输过程中等待数据通道建立的时间,从而提高了数据传输的效率,提高了用户体验。另外,通过多个UDP服务器分别所建立的多个数据传输通道传输数据,相比于通过一个通道传输数据,使得可以在部分通道网络传输速度和可靠性较差时,更换数据传输通道,避免了数据的丢失,提高了数据传输的可靠性,提高了用户体验。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
需要说明的是:上述实施例提供的数据传输通道建立***以及服务器在执行数据传输通道建立方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将服务器、***的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的数据传输通道建立***、方法以及服务器实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种数据传输通道建立方法,其特征在于,所述方法包括:
服务器接收发起方发送的建立请求,并将所述建立请求发送至应答方;
所述服务器若接收到应答方发送的第一响应消息,所述第一响应消息用于指示所述应答方接收到所述建立请求,则向所述发起方和所述应答方发送多个用户数据报协议UDP服务器的信息;其中,所述服务器包括传输控制协议TCP服务器,所述服务器向所述发起方和所述应答方发送多个用户数据报协议UDP服务器的信息包括:
所述TCP服务器获取满足预设条件的多个用户数据报协议UDP服务器的信息;
所述TCP服务器向所述发起方和所述应答方发送所述多个UDP服务器的信息;
所述发起方和所述应答方向所述多个UDP服务器发送通道建立请求;
所述UDP服务器判断发起方和应答方之间是否能够建立点对点P2P通道;
若是,则UDP服务器建立发起方和应答方之间的P2P通道,并将P2P通道的信息发送至发起方和应答方;
所述多个UDP服务器分别建立多个数据传输通道;
所述服务器若接收到所述应答方发送的第二响应消息,则将所述第二响应消息发送至所述发起方;
所述发起方根据所述多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向所述应答方发送数据。
2.根据权利要求1所述的方法,其特征在于,所述TCP服务器获取满足预设条件的多个UDP服务器的信息包括:
所述TCP服务器获取所有可用UDP服务器的网络参数;
所述TCP服务器根据所述网络参数,从所述所有可用UDP服务器中获取所述满足预设条件的多个UDP服务器。
3.根据权利要求1至2任一所述的方法,其特征在于,所述发起方根据所述多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向所述应答方发送数据包括:
所述发起方获取所述多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个;
所述应答方获取所述多个数据传输通道的第二RTT和第二丢包率中的至少一个;
所述发起方根据所述第一RTT和所述第二RTT,计算RTT分量;
所述发起方根据所述第一丢包率和所述第二丢包率,计算丢包率分量;
所述发起方获取所述多个数据传输通道中所述RTT分量和所述丢包率分量中的至少一个满足预设条件的数据传输通道;
所述发起方根据所述至少一个满足预设条件的数据传输通道的信息,向所述应答方发送数据。
4.一种数据传输通道建立方法,其特征在于,所述方法包括:
服务器接收发起方发送的建立请求,并将所述建立请求发送至应答方;
当所述服务器接收到所述应答方发送的接受响应消息,则将所述接受响应消息发送至所述发起方,并向所述发起方和所述应答方发送多个用户数据报协议UDP服务器的信息,其中,所述服务器包括传输控制协议TCP服务器,所述服务器向所述发起方和所述应答方发送多个用户数据报协议UDP服务器的信息包括:
所述TCP服务器获取满足预设条件的多个用户数据报协议UDP服务器的信息;
所述TCP服务器向所述发起方和所述应答方发送所述多个UDP服务器的信息;
所述发起方和所述应答方向所述多个UDP服务器发送通道建立请求;
所述UDP服务器判断发起方和应答方之间是否能够建立点对点P2P通道;
若是,则UDP服务器建立发起方和应答方之间的P2P通道,并将P2P通道的信息发送至发起方和应答方;
所述多个UDP服务器分别建立多个数据传输通道;
所述发起方根据所述多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向所述应答方发送数据。
5.根据权利要求4所述的方法,其特征在于,所述TCP服务器获取满足预设条件的多个UDP服务器的信息包括:
所述TCP服务器获取所有可用UDP服务器的网络参数;
所述TCP服务器根据所述网络参数,从所述所有可用UDP服务器中获取所述满足预设条件的多个UDP服务器。
6.根据权利要求4或5所述的方法,其特征在于,所述发起方根据所述多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向所述应答方发送数据包括:
所述发起方获取所述多个数据传输通道的第一往返时延RTT和第一丢包率中的至少一个;
所述应答方获取所述多个数据传输通道的第二RTT和第二丢包率中的至少一个;
所述发起方根据所述第一RTT和所述第二RTT,计算RTT分量;
所述发起方根据所述第一丢包率和所述第二丢包率,计算丢包率分量;
所述发起方获取所述多个数据传输通道中所述RTT分量和所述丢包率分量中的至少一个满足预设条件的数据传输通道;
所述发起方根据所述至少一个满足预设条件的数据传输通道的信息,向所述应答方发送数据。
7.一种服务器,其特征在于,所述服务器包括传输控制协议TCP服务器,包括:
中转模块,用于接收发起方发送的建立请求,并将所述建立请求发送至应答方;
发送模块,用于在所述中转模块接收到用于指示所述应答方接收到所述建立请求的第一响应消息后,向所述发起方和所述应答方发送多个用户数据报协议UDP服务器的信息,其中,所述发送模块获取满足预设条件的多个用户数据报协议UDP服务器的信息;所述发送模块向所述发起方和所述应答方发送所述多个UDP服务器的信息;
所述中转模块还用于接收到所述应答方发送的第二响应消息时,将所述第二响应消息发送至所述发起方,以使所述发起方根据多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向所述应答方发送数据;
其中,所述多个数据传输通道是所述发起方和所述应答方向所述多个UDP服务器发送通道建立请求后,所述多个UDP服务器分别建立的,所述UDP服务器判断发起方和应答方之间是否能够建立点对点P2P通道;若是,则UDP服务器建立发起方和应答方之间的P2P通道,并将P2P通道的信息发送至发起方和应答方。
8.一种服务器,其特征在于,所述服务器包括:
中转模块,用于接收发起方发送的建立请求,并将所述建立请求发送至应答方;
发送模块,用于当所述中转模块接收到所述应答方发送的接受响应消息时,将所述接受响应消息发送至所述发起方,并向所述发起方和所述应答方发送多个用户数据报协议UDP服务器的信息,其中,所述发送模块获取满足预设条件的多个用户数据报协议UDP服务器的信息;所述发送模块向所述发起方和所述应答方发送所述多个UDP服务器的信息,以便所述发起方和所述应答方向所述多个UDP服务器发送通道建立请求;所述UDP服务器判断发起方和应答方之间是否能够建立点对点P2P通道;若是,则UDP服务器建立发起方和应答方之间的P2P通道,并将P2P通道的信息发送至发起方和应答方。
9.一种数据传输通道建立***,其特征在于,所述***包括服务器、发起方、应答方和多个用户数据报协议UDP服务器,其中:
所述服务器包括:
中转模块,用于接收所述发起方发送的建立请求,并将所述建立请求发送至所述应答方;
第一发送模块,用于在所述中转模块接收到所述应答方发送的第一响应消息,所述第一响应消息用于指示所述应答方接收到所述建立请求时,向所述发起方和所述应答方发送多个UDP服务器的信息,其中,所述第一发送模块获取满足预设条件的多个用户数据报协议UDP服务器的信息;所述第一发送模块向所述发起方和所述应答方发送所述多个UDP服务器的信息;
所述发起方和所述应答方分别包括第二发送模块和第三发送模块,所述第二发送模块和所述第三发送模块用于向所述多个UDP服务器发送通道建立请求,所述UDP服务器判断发起方和应答方之间是否能够建立点对点P2P通道;若是,则UDP服务器建立发起方和应答方之间的P2P通道,并将P2P通道的信息发送至发起方和应答方;
所述多个UDP服务器分别包括多个通道建立模块,所述多个通道建立模块分别用于建立多个数据传输通道;
所述中转模块还用于在接收到所述应答方发送的第二响应消息时,将所述第二响应消息发送至所述发起方;
所述第二发送模块还用于根据所述多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向所述应答方发送数据。
10.一种数据传输通道建立***,其特征在于,所述***包括服务器、发起方、应答方和多个用户数据报协议UDP服务器,其中:
所述服务器包括:
中转模块,用于接收所述发起方发送的建立请求,并将所述建立请求发送至所述应答方;
第一发送模块,用于在所述中转模块接收到所述应答方发送的接受响应消息时,将所述接受响应消息发送至所述发起方,并向所述发起方和所述应答方发送多个UDP服务器的信息,其中,所述第一发送模块获取满足预设条件的多个用户数据报协议UDP服务器的信息;所述第一发送模块向所述发起方和所述应答方发送所述多个UDP服务器的信息;
所述发起方和所述应答方分别包括第二发送模块和第三发送模块,所述第二发送模块和所述第三发送模块分别用于向所述多个UDP服务器发送通道建立请求,所述UDP服务器判断发起方和应答方之间是否能够建立点对点P2P通道;若是,则UDP服务器建立发起方和应答方之间的P2P通道,并将P2P通道的信息发送至发起方和应答方;
所述多个UDP服务器分别包括多个通道建立模块,用于建立多个数据传输通道;
所述第二发送模块还用于根据所述多个数据传输通道中满足预设条件的至少一个数据传输通道的信息,向所述应答方发送数据。
CN201610280530.5A 2016-04-29 2016-04-29 一种数据传输通道建立方法、***和服务器 Active CN106027599B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610280530.5A CN106027599B (zh) 2016-04-29 2016-04-29 一种数据传输通道建立方法、***和服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610280530.5A CN106027599B (zh) 2016-04-29 2016-04-29 一种数据传输通道建立方法、***和服务器

Publications (2)

Publication Number Publication Date
CN106027599A CN106027599A (zh) 2016-10-12
CN106027599B true CN106027599B (zh) 2020-01-17

Family

ID=57081014

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610280530.5A Active CN106027599B (zh) 2016-04-29 2016-04-29 一种数据传输通道建立方法、***和服务器

Country Status (1)

Country Link
CN (1) CN106027599B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109474667B (zh) * 2018-10-12 2021-05-25 广州雷迅创新科技股份有限公司 一种基于tcp和udp的无人机通信方法
CN115280890A (zh) * 2020-03-17 2022-11-01 华为技术有限公司 一种通信方法及装置
CN111970340B (zh) * 2020-07-30 2023-06-16 北京大米科技有限公司 信息传输方法、可读存储介质和电子设备
CN116032998A (zh) * 2021-10-26 2023-04-28 广州视源电子科技股份有限公司 数据传输方法、装置、计算机可读存储介质及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101079840A (zh) * 2007-02-12 2007-11-28 腾讯科技(深圳)有限公司 一种数据传输***及方法
CN101364976A (zh) * 2007-08-07 2009-02-11 阿里巴巴集团控股有限公司 一种建立通信通道的方法及装置
CN101374154A (zh) * 2008-10-22 2009-02-25 成都市华为赛门铁克科技有限公司 一种远程过程调用请求的处理方法和装置
CN102868665A (zh) * 2011-07-05 2013-01-09 华为软件技术有限公司 数据传输的方法及装置
CN103200116A (zh) * 2013-04-28 2013-07-10 成都市欧冠信息技术有限责任公司 非面向连接的可靠udp传输协议及数据传输方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102130801A (zh) * 2010-01-20 2011-07-20 腾讯科技(深圳)有限公司 数据传输方法及***
CN102594672B (zh) * 2012-02-09 2015-05-06 北京网梯科技发展有限公司 适用于低可靠网络环境下高质量互联网通讯的方法及***
CN102867252B (zh) * 2012-09-14 2016-05-04 东莞宇龙通信科技有限公司 支付服务器和支付通道获取方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101079840A (zh) * 2007-02-12 2007-11-28 腾讯科技(深圳)有限公司 一种数据传输***及方法
CN101364976A (zh) * 2007-08-07 2009-02-11 阿里巴巴集团控股有限公司 一种建立通信通道的方法及装置
CN101374154A (zh) * 2008-10-22 2009-02-25 成都市华为赛门铁克科技有限公司 一种远程过程调用请求的处理方法和装置
CN102868665A (zh) * 2011-07-05 2013-01-09 华为软件技术有限公司 数据传输的方法及装置
CN103200116A (zh) * 2013-04-28 2013-07-10 成都市欧冠信息技术有限责任公司 非面向连接的可靠udp传输协议及数据传输方法

Also Published As

Publication number Publication date
CN106027599A (zh) 2016-10-12

Similar Documents

Publication Publication Date Title
EP3311534B1 (en) Method and apparatus for multipath media delivery
JP6505831B2 (ja) Voip通話の確立及び維持
CN106027599B (zh) 一种数据传输通道建立方法、***和服务器
CN104767679B (zh) 一种在网络***中传输数据的方法及装置
CN107682434B (zh) 一种水下传感器网络架构及其实现方法
KR20180067646A (ko) 링크 결정 방법 및 결정 디바이스
TWI474674B (zh) 在行動通信使用者設備中管理一封包服務通話
CN111193756B (zh) 一种vxlan隧道负载均衡方法及相关设备
CN105262836A (zh) 服务器推送信息的方法及客户端接收推送信息的方法
WO2017008701A1 (zh) 数据传输方法、装置及用户设备
CN106101468B (zh) 传输链路的确定方法及装置
JP5237083B2 (ja) 呼制御システム、呼制御装置、端末装置、および、呼制御方法
JP4940785B2 (ja) 無線装置、無線通信システム、無線装置の無線通信方法及び無線通信システムの無線通信方法
WO2017008697A1 (zh) 数据传输方法、装置、多通道路由方法及用户设备
JP4911222B2 (ja) 通信システム、通信システムにおける通信方法、及び中継装置
CN109905901B (zh) 网络选择方法和装置以及计算机可读存储介质
US11218910B2 (en) First node and a second node and methods of operating the same
US11503164B2 (en) Media interaction method in DECT network cluster
CN103701952A (zh) 一种业务数据的下行传输方法及分组数据网关
JP2011029703A (ja) Sipサーバ装置及び呼接続システム
CN114666846A (zh) 一种通信方法及网关设备
CN113454959B (zh) 控制平面网络功能、用户平面网络功能和使用其的分组处理方法
CN110493141B (zh) 一种路由转发传输控制方法、装置、设备和存储介质
CN106231618A (zh) 一种发送编解码重协商请求的方法及装置
JP2008311695A (ja) アクセス制御装置、及びアクセス制御方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20200716

Address after: 603a, block a, Xinghe world, No.1 Yabao Road, Longgang District, Shenzhen City, Guangdong Province

Patentee after: Shenzhen Weiwu Technology Co., Ltd

Address before: 200063, Shanghai, Putuo District, home on the first floor of the cross road, No. 28

Patentee before: Palmwin Information Technology (Shanghai) Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210204

Address after: 518051 2503, building 15, Longhai homeland, 5246 Yihai Avenue, baonanshan District, Shenzhen City, Guangdong Province

Patentee after: Xiao Feng

Address before: 603a, block a, Xinghe world, No.1, Yabao Road, Longgang District, Shenzhen, Guangdong 518035

Patentee before: Shenzhen Weiwu Technology Co., Ltd

TR01 Transfer of patent right