CN101594242A - 一种传输视频数据的方法、***和装置 - Google Patents

一种传输视频数据的方法、***和装置 Download PDF

Info

Publication number
CN101594242A
CN101594242A CNA2009101505939A CN200910150593A CN101594242A CN 101594242 A CN101594242 A CN 101594242A CN A2009101505939 A CNA2009101505939 A CN A2009101505939A CN 200910150593 A CN200910150593 A CN 200910150593A CN 101594242 A CN101594242 A CN 101594242A
Authority
CN
China
Prior art keywords
client
server
transfer
video data
transfer 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.)
Pending
Application number
CNA2009101505939A
Other languages
English (en)
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=41408702&utm_source=***_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN101594242(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CNA2009101505939A priority Critical patent/CN101594242A/zh
Publication of CN101594242A publication Critical patent/CN101594242A/zh
Priority to EP10791403.8A priority patent/EP2448206B1/en
Priority to BRPI1014840-0A priority patent/BRPI1014840B1/pt
Priority to RU2012101705/08A priority patent/RU2500079C2/ru
Priority to PCT/CN2010/073304 priority patent/WO2010148897A1/zh
Pending legal-status Critical Current

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/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25875Management of end-user data involving end-user authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/632Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing using a connection between clients on a wide area network, e.g. setting up a peer-to-peer communication via Internet for retrieving video segments from the hard-disk of other client devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/64738Monitoring network characteristics, e.g. bandwidth, congestion level

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明公开了一种传输视频数据的方法、***和装置,属于网络通信领域。方法包括:第一客户端和第二客户端分别向中转服务器和P2P服务器发送第一连接请求和第二连接请求;第一客户端与中转服务器建立第一中转连接成功且第二客户端与中转服务器建立第二中转连接成功,通过中转服务器转发传输视频数据;第一客户端与P2P服务器发送的第一P2P连接成功且第二客户端与P2P服务器建立第二P2P连接成功,中断通过中转服务器转发传输视频数据;第一客户端与第二客户端使用P2P模式直接传输视频数据。本发明实施例提供的方案,解决了客户端利用P2P模式登陆慢、连接慢甚至连接不上的问题,提高了用户使用体验,节约了网络带宽。

Description

一种传输视频数据的方法、***和装置
技术领域
本发明涉及网络通信领域,特别涉及一种传输视频数据的方法、***和装置。
背景技术
随着网络通信技术的发展,视频数据已经成为目前网络通信领域的一种重要资源,由于其具有可见性和真实性等特点而得到用户的广泛使用,尤其是在网络游戏、即时通信等方面。
视频数据的文件一般都比较大,在网络中传输会占用比较大的带宽,因此如何在网络中实现快速的传输,使用户能够较快的获取到视频数据,成为视频数据传输需要解决的主要问题。
目前,在网络中可以采用中转服务器,利用服务器中转用户之间的视频数据,实现用户之间视频数据的传输。
在网络传输视频数据中,还可以采用P2P(Peer to Peer,点对点)技术,由于P2P技术可以使用户直接连接到其他用户的计算机上,而不需要连接到服务器去浏览与下载,可以更直接共享和交互视频数据。与传统的客户端/服务器模式的区别在于P2P没有中心服务器或者有一个很弱的中心服务器,因而能够充分利用用户的存储空间、CPU和带宽资源,具有极低的运营和维护成本。
发明人在实现本发明时经过分析和研究后,发现现有技术至少存在以下的缺点和不足:
采用服务器中转技术来传输视频数据,由于用户数量很大,所传输的视频数据量很大,需要很大的带宽,造成带宽成本太高;采用P2P技术进行视频数据传输时,由于P2P的客户端设备处理能力较低、带宽资源较少以及ISP差异等,会有登陆慢,连接速度慢甚至连接不上的问题,从而降低用户的使用体验。
发明内容
为了解决用户客户端利用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服务器建立第二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是本发明实施例1提供的方法流程的示意图;
图2是本发明实施例2提供的方法流程的示意图;
图3是本发明实施例3提供的***结构的示意图;
图4是本发明实施例4提供的装置结构的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例1
为了解决用户客户端利用P2P模式登陆慢、连接速度慢甚至连接不上的问题,提高用户的使用体验,同时节约网络带宽,本发明实施例提供了一种传输视频数据的方法,参见图1,该方法包括:
101:第一客户端分别向中转服务器和点对点P2P服务器发送第一连接请求,第二客户端分别向中转服务器和P2P服务器发送第二连接请求;
其中,第一客户端和第二客户端具体可以为游戏客户端、网页客户端、移动终端客户端等,本发明实施例对此不作限制。
102:第一客户端与中转服务器建立第一中转连接成功且第二客户端与中转服务器建立第二中转连接成功后,第一客户端与第二客户端通过中转服务器转发传输视频数据;
103:第一客户端与P2P服务器建立第一P2P连接成功且第二客户端与P2P服务器建立第二P2P连接成功后,第一客户端与第二客户端中断通过中转服务器转发传输视频数据;
104:第一客户端与第二客户端使用P2P模式直接传输视频数据。
其中,第一客户端与P2P服务器建立第一P2P连接成功且第二客户端与P2P服务器建立第二P2P连接成功后,第一客户端与第二客户端中断通过中转服务器转发传输视频数据,具体包括:
第一客户端与P2P服务器建立第一P2P连接成功且第二客户端与P2P服务器建立第二P2P连接成功后,第一客户端与第二客户端使用P2P模式传输第一帧数据后,第一客户端与第二客户端中断通过中转服务器转发传输视频数据。
其中,第一客户端与第二客户端使用P2P模式直接传输视频数据之后,还包括:
如果第一客户端与第二客户端在使用P2P模式传输视频数据过程中,第一客户端与第二客户端连接中断,或者,第一客户端与第二客户端所传输的视频数据丢包率大于预定系数,或者,第一客户端与第二客户端所传输的视频数据缓冲时间大于预定时间,则第一客户端与第二客户端分别判断是否与中转服务器之间保持链路;
其中,丢包率的预定系数和缓冲时间的预定时间可以根据实际情况灵活选择,例如丢包率的预定系数可以设置为10%,缓冲时间的预定时间可以设置为10秒,本发明实施例对此不作限制。
如果第一客户端与中转服务器之间保持链路且第二客户端与中转服务器之间保持链路,则通过中转服务器继续传输视频数据;
如果第一客户端与中转服务器之间断开链路,则第一客户端向中转服务器发送第一连接请求;在第一客户端与中转服务器建立第一中转连接成功后,第一客户端与第二客户端通过中转服务器转发传输视频数据;
如果第二客户端与中转服务器之间断开链路,则第二客户端向中转服务器发送第二连接请求;在第二客户端与中转服务器建立第二中转连接成功后,第二客户端与第一客户端通过中转服务器转发传输视频数据;
如果第一客户端与第二客户端都与中转服务器之间断开链路,则第一客户端向中转服务器发送第一连接请求,第二客户端向中转服务器发送第二连接请求;
在第一客户端与中转服务器建立第一中转连接成功且第二客户端与中转服务器建立第二中转连接成功后,第一客户端与第二客户端通过中转服务器转发传输视频数据。
其中,该方法还包括:
如果第一客户端与中转服务器建立第一中转连接成功且第二客户端与中转服务器建立第二中转连接成功之前,第一客户端已经与P2P服务器建立第一P2P连接成功且第二客户端已经与P2P服务器建立第二P2P连接成功,则第一客户端与第二客户端直接使用P2P模式进行视频数据的传输,中断第一客户端与第二客户端与中转服务器的连接。
其中,第一客户端与中转服务器建立第一中转连接成功且第二客户端与中转服务器建立第二中转连接成功之前,包括:
中转服务器接收第一客户端发送的第一连接请求和第二客户端发送的第二连接请求;
中转服务器分别根据第一连接请求中第一用户的身份认证信息和第二连接请求中第二用户的身份认证信息,分别对第一用户和第二用户进行认证;
中转服务器对第一用户和第二用户认证成功后,分别与第一客户端建立第一中转连接、与第二客户端建立第二中转连接,并分别向第一客户端和第二客户端发送第一中转连接成功响应和第二中转连接成功响应。
其中,第一客户端与P2P服务器建立第一P2P连接成功且第二客户端与P2P服务器建立第二P2P连接成功之前,包括:
P2P服务器接收第一客户端发送的第一连接请求和第二客户端发送的第二连接请求;
P2P服务器分别根据第一连接请求中第一用户的身份认证信息和第二连接请求中第二用户的身份认证信息,分别对第一用户和第二用户进行认证;
P2P服务器对第一用户和第二用户认证成功后,分别与第一客户端建立第一P2P连接、与第二客户端建立第二P2P连接,并分别向第一客户端和第二客户端发送第一P2P连接成功响应和第二P2P连接成功响应。
本发明实施例提供的方法,在视频数据的传输开始阶段,采用中转服务器传输视频数据,在P2P连接成功后,采用P2P模式直接传输视频数据,解决了用户登陆慢、连接速度慢的问题,使得用户能够快速的传输视频,提高了用户的使用体验,节约了网络的带宽,在P2P发生错误无法使用时,又及时切换到中转服务器上,通过中转服务器传输视频数据,使得用户可以继续传输视频数据,保证用户传输视频数据的连贯性。
实施例2
为了解决用户客户端利用P2P模式登陆慢、连接速度慢甚至连接不上的问题,提高用户的使用体验,同时节约网络带宽,本发明实施例提供了一种传输视频数据的方法,其中,本发明实施例中以在视频网络游戏中用户A和用户B传输视频数据为例进行说明,参见图2,具体实现过程如下:
201:用户A和用户B分别通过游戏客户端A和游戏客户端B登录视频网络游戏;
其中,用户在游戏客户端通过账号和密码登录视频网络游戏的游戏***,当用户成功登录到视频网络游戏的游戏***后,就可以通过游戏客户端和游戏服务器相互发送游戏数据,实现游戏的功能。
其中,用户的账号和密码作为用户的身份标识,在游戏***中是唯一的,用户通过在视频网络游戏界面或其他界面注册后获取。用户A和用户B在通过各自的游戏客户端登录游戏***之前,需要在游戏***的界面或其他界面中首先注册各自的账号和密码。
202:当游戏客户端A和游戏客户端B在视频网络游戏中需要建立连接传输视频数据时,游戏客户端A和游戏客户端B分别同时向中转服务器和P2P服务器发送登录以及建立连接请求;
其中,游戏客户端A和游戏客户端B在视频网络游戏中如果需要建立连接相互传输视频数据,首先游戏客户端A向中转服务器和P2P服务器同时发送登录以及建立连接请求;游戏客户端B分别向中转服务器和P2P服务器同时发送登录以及建立连接请求。
其中,游戏客户端向中转服务器和P2P服务器发送登录以及建立连接请求是同时发送的。另外,在实际应用中一般中转服务器登录和连接的速度要比P2P服务器块,所以可以先向中转服务器发送登录以及建立连接请求,使用户能够尽快的连接上传输视频数据,再向P2P服务器发送登录以及建立连接请求。中转服务器是视频网络游戏***为了传输视频数据资源而提供的专门用于中转用户之间的视频数据的服务器;P2P服务器是视频网络游戏***提供的用于直接传输用户之间的视频数据的服务器。
203:中转服务器分别接收游戏客户端A和游戏客户端B发送的登录以及建立连接请求,为游戏客户端A和游戏客户端B分别建立中转连接,并分别向游戏客户端A和游戏客户端B发送中转连接成功响应;
其中,游戏客户端在向中转服务器发送的登录以及建立连接请求中携带可以识别用户的身份认证信息,这里的身份认证信息可以是用户在游戏***中注册的账号和密码;也可以是根据用户在游戏***中注册的账号和密码转化得到的加密身份标识,游戏客户端通过该身份标识登录中转服务器,而中转服务器中预先保存有公用密钥,以便于通过自身保存的公用密钥和游戏客户端发送的身份认证信息对用户进行认证。
当中转服务器接收游戏客户端A和游戏客户端B发送的登录以及建立连接请求后,中转服务器获取游戏客户端A发送的登录以及建立连接请求中的身份认证信息,与自身预存的公用密钥进行认证,如果认证成功,则为游戏客户端A建立中转连接;相应地,中转服务器通过相同的处理操作为游戏客户端B建立中转连接。
在中转服务器分别为游戏客户端A和游戏客户端B建立连接后,分别向游戏客户端A和游戏客户端B发送中转连接成功响应。
204:游戏客户端A和游戏客户端B分别接收到中转服务器发送的中转连接成功响应,通过中转服务器传输视频数据;
其中,游戏客户端A通过中转服务器将自身的视频数据发送给游戏客户端B,并通过中转服务器接收游戏客户端B发送的视频数据;相应地,游戏客户端B通过中转服务器将自身的视频数据发送给游戏客户端A,并通过中转服务器接收游戏客户端A发送的视频数据。
其中,用户的游戏客户端一方面负责将本地视频采集并编码,得到本地视频数据,并将本地视频数据发送到中转服务器,由中转服务器负责将本地视频数据转发给对端用户;用户的游戏客户端另一方面还负责从中转服务器中接收对端用户的视频数据,并将接收到的视频数据进行解码,展现给用户。本发明实施例中的游戏客户端A和游戏客户端B都具有上述两方面的功能。
其中,游戏客户端A和游戏客户端B与中转服务器建立连接的时间可能不完全相同,可能会存在一定的时差,只有游戏客户端A和游戏客户端B都与中转服务器成功建立连接后,才能通过中转服务器传输视频数据。
205:当P2P服务器接收游戏客户端A和游戏客户端B发送的登录以及建立连接请求后,为游戏客户端A和游戏客户端B分别建立连接,并分别向游戏客户端A和游戏客户端B发送中转连接成功响应;
其中,游戏客户端在向P2P服务器发送登录以及建立连接请求中携带可以识别用户的身份认证信息,这里的身份认证信息可以是用户在游戏***中注册的账号和密码;也可以是根据用户在游戏***中注册的账号和密码转化得到的加密身份标识,游戏客户端通过该身份标识登录P2P服务器,而P2P服务器中预先保存有公用密钥,以便于通过自身保存的公用密钥和用户游戏客户端发送的身份认证信息对用户进行认证。
当P2P服务器接收游戏客户端A和游戏客户端B发送的登录以及建立连接请求后,P2P服务器获取游戏客户端A发送的登录以及建立连接请求中的身份认证信息,与自身预存的公用密钥进行认证,如果认证成功,则为游戏客户端A建立连接;相应地,P2P服务器通过相同的处理操作为游戏客户端B建立连接。
在P2P服务器分别为游戏客户端A和游戏客户端B建立连接后,分别向游戏客户端A和游戏客户端B发送中转连接成功响应。
其中,由于P2P服务器是直接在游戏客户端之间传输视频数据资源,每个游戏客户端既是服务器又是客户端,所以相对于中转服务器的服务器而言,游戏客户端在处理能力、运行速度以及带宽资源等能力都较差,所以P2P服务器登录和连接的速度一般会比较慢,低于中转服务器;因此,一般在P2P服务器为用户的游戏客户端建立连接之前,用户的游戏客户端可能早已和中转服务器建立了连接,并已经在传输视频数据。
206:游戏客户端A和游戏客户端B分别接收到P2P服务器发送的P2P连接成功响应,中断通过中转服务器传输视频数据;
其中,游戏客户端A和游戏客户端B在分别接收到P2P服务器发送的P2P连接成功响应后,会暂停与中转服务器的连接,中断通过中转服务器传输视频数据;另外,游戏客户端A和游戏客户端B也可以直接断开与中转服务器的连接。
207:游戏客户端A和游戏客户端B中断通过中转服务器传输视频数据后,游戏客户端A和游戏客户端B使用P2P模式直接传输视频数据;
其中,游戏客户端A使用P2P模式直接将自身的视频数据发送给游戏客户端B,并使用P2P模式直接接收游戏客户端B发送的视频数据;相应地,游戏客户端B使用P2P模式直接将自身的视频数据发送给游戏客户端A,并使用P2P模式直接接收游戏客户端A发送的视频数据。
其中,用户的游戏客户端一方面负责将本地视频采集并编码,得到本地视频数据,并将本地视频数据使用P2P模式发送给对端用户;用户的游戏客户端另一方面还负责使用P2P模式接收对端用户的视频数据,并将接收到的视频数据进行解码,展现给用户。
其中,游戏客户端A和游戏客户端B与P2P服务器建立连接的时间可能不完全相同,可能会存在一定的时差,只有游戏客户端A和游戏客户端B都与P2P服务器成功建立连接后即游戏客户端A和游戏客户端B分别都收到P2P服务器发送的连接成功响应并分别中断与中转服务器的视频数据传输时,才能通过P2P模式直接传输视频数据。
208:如果游戏客户端A和游戏客户端B在使用P2P模式直接传输视频数据过程中连接不上或者连接缓冲时间大于预定时间或者所传输的视频数据丢包率大于预定系数,则游戏客户端A和游戏客户端B将继续切换到中转服务器上,通过中转服务器继续传输视频数据。
其中,当游戏客户端A和游戏客户端B在使用P2P模式直接传输视频数据过程中,如果游戏客户端A和游戏客户端B连接不上,或者连接缓冲时间大于预定时间导致视频传输不流畅,或者所传输的视频数据丢包率大于预定系数等,无法继续使用P2P模式传输视频数据,此时游戏客户端A和游戏客户端B将重新启用中转服务器,通过中转服务器继续传输视频数据,以便于保持用户视频数据传输的连贯,提高用户的使用体验。
其中,丢包率的预定系数和缓冲时间的预定时间可以根据实际情况灵活选择,例如丢包率的预定系数可以设置为10%,缓冲时间的预定时间可以设置为10秒,本发明实施例对此不作限制。
如果在步骤206中,只是暂停游戏客户端与中转服务器的连接链路并没有断开,则此时只需要解除暂停,继续保持连接,即可继续使用中转服务器,传输视频数据;如果在步骤206中,断开了游戏客户端与中转服务器之间的连接链路,则游戏客户端需要重新向中转服务器发送登录以及连接请求;在中转服务器通过认证后,为游戏客户端重新建立中转连接,向游戏客户端发送中转连接成功响应后,才能继续实现通过中转服务器转发游戏客户端之间的视频数据,即重新执行步骤202-204。
另外,在P2P服务器发生错误时,游戏客户端使用中转服务器传输视频数据,此时游戏客户端仍然可以向P2P服务器登录以及连接请求,当P2P服务器恢复时,则可以执行步骤205-207,游戏客户端切换到P2P模式上,使用P2P模式之间传输视频数据。
上述步骤201-207具体介绍了游戏客户端在视频网络游戏中在传输开始阶段通过中转服务器中转传输视频数据,在P2P连接成功后,采用P2P模式直接传输视频数据,既解决了游戏客户端利用P2P模式登陆慢、连接速度慢甚至连接不上的问题,提高用户的使用体验,又节约网络带宽;同时,在P2P发生错误无法使用时,又及时切换到中转服务器上,通过中转服务器传输视频数据,使得游戏客户端可以继续传输视频数据,保证用户视频的连贯性。
另外,在上述步骤中,如果在步骤202中,游戏客户端A和游戏客户端B分别同时向中转服务器和P2P服务器发送登录以及建立连接请求后,P2P服务器首先完成了与游戏客户端之间的连接即游戏客户端A和游戏客户端B在收到中转服务器发送的中转连接成功响应之前已经接收到了P2P服务器发送的P2P连接成功响应,则游戏客户端直接使用P2P模式进行视频数据的传输,而无需与中转服务器建立连接,可以直接中断游戏客户端与中转服务器的连接过程。
但是,在P2P发生错误无法使用时,游戏客户端需要重新与中转服务器建立连接,保证通过中转服务器传输视频数据。
另外,如果游戏客户端在与中转服务器建立连接后,一直无法与P2P服务器建立连接或者与P2P服务器一直没法完成连接,则游戏客户端一直使用中转服务器传输视频数据。
本发明实施例中以游戏客户端A和游戏客户端B在视频网络游戏中传输视频数据为例,其中一个游戏客户端可以和多个游戏客户端同时传输视频数据,可以分别与多个游戏客户端中的每个游戏客户端在传输初始阶段采用中转服务器建立连接传输数据,在P2P连接成功后,采用P2P模式直接传输视频数据,其处理流程类似,不再赘述。
本发明实施例是以在视频网络游戏中用户传输视频数据为例,其中本发明实施例提供的方法还适用于其他任何需要传输视频数据的场景,如即时通信、在线聊天等,其处理过程类似,不再赘述。
本发明实施例提供的方法,通过在视频网络游戏中用户的游戏客户端在传输开始阶段通过中转服务器中转传输视频数据,在P2P连接成功后,采用P2P模式直接传输视频数据,既解决了用户客户端利用P2P模式登陆慢、连接速度慢甚至连接不上的问题,提高用户的使用体验,又节约网络带宽;同时,在P2P发生错误无法使用时,又及时切换到中转服务器上,通过中转服务器传输视频数据,使得用户可以继续传输视频数据,保证用户视频的连贯性。
实施例3
本发明实施例提供了一种传输视频数据的***,参见图3,该***包括:第一客户端301、第二客户端302、中转服务器303和点对点P2P服务器304,其中,
第一客户端301,用于向中转服务器303和P2P服务器304发送第一连接请求;与中转服务器303建立第一中转连接;与第二客户端302通过中转服务器303转发传输视频数据;与P2P服务器304建立第一P2P连接;中断与第二客户端302通过中转服务器303转发传输视频数据;与第二客户端302使用P2P模式直接传输视频数据;
第二客户端302,用于向中转服务器303和P2P服务器304发送第二连接请求;与中转服务器303建立第二中转连接;与第一客户端301通过中转服务器303转发传输视频数据;与P2P服务器304建立第二P2P连接;中断与第一客户端301通过中转服务器303转发传输视频数据;与第一客户端301使用P2P模式直接传输视频数据;
中转服务器303,用于分别接收第一客户端301和第二客户端302发送的第一连接请求和第二连接请求;分别与第一客户端301和第二客户端302建立第一中转连接和第二中转连接;为第一客户端301和第二客户端302转发传输视频数据;
P2P服务器304,用于分别接收第一客户端301和第二客户端302发送的第一连接请求和第二连接请求;分别与第一客户端301和第二客户端302建立第一P2P连接和第二P2P连接;当第一客户端301与第二客户端302中断通过中转服务器303转发传输视频数据时,为第一客户端301和第二客户端302提供P2P模式直接传输视频数据。
其中,第一客户端和第二客户端具体可以为游戏客户端、网页客户端、移动终端客户端等,本发明实施例对此不作限制。
其中,第一客户端301还用于,与P2P服务器304建立第一P2P连接成功且第二客户端302与P2P服务器304建立第二P2P连接成功后,与第二客户端302使用P2P模式传输第一帧数据后,与第二客户端302中断通过中转服务器303转发传输视频数据;
相应地,第二客户端302还用于,与P2P服务器304建立第二P2P连接成功且第一客户端301与P2P服务器304建立第一P2P连接成功后,与第一客户端301使用P2P模式传输第一帧数据后,与第一客户端301中断通过中转服务器303转发传输视频数据。
其中,中转服务器303还用于,如果第一客户端301与第二客户端302在使用P2P模式传输视频数据过程中,第一客户端301与第二客户端302连接中断,或者,第一客户端301与第二客户端302所传输的视频数据丢包率大于预定系数,或者,第一客户端301与第二客户端302所传输的视频数据缓冲时间大于预定时间,则在第一客户端301判断与中转服务器303之间保持链路且第二客户端302判断与中转服务器303之间保持链路时,为第一客户端301和第二客户端302继续转发传输视频数据;
其中,丢包率的预定系数和缓冲时间的预定时间可以根据实际情况灵活选择,例如丢包率的预定系数可以设置为10%,缓冲时间的预定时间可以设置为10秒,本发明实施例对此不作限制。
在第一客户端301与中转服务器303之间断开链路时,接收第一客户端301发送的第一连接请求;在与第一客户端301建立第一中转连接成功后,为第一客户端301和第二客户端302继续转发传输视频数据;
在第二客户端302与中转服务器303之间断开链路时,接收第二客户端302发送的第二连接请求;在与第二客户端302建立第二中转连接成功后,为第一客户端301和第二客户端302继续转发传输视频数据;
在第一客户端301与第二客户端302都与中转服务器303之间断开链路时,分别接收第一客户端301发送的第一连接请求,第二客户端302发送的第二连接请求;在与第一客户端301建立第一中转连接成功且与第二客户端302建立第二中转连接成功后,为第一客户端301和第二客户端302继续转发传输视频数据。
其中,P2P服务器304,还用于如果第一客户端301与中转服务器303建立第一中转连接成功且第二客户端302与中转服务器303建立第二中转连接成功之前,第一客户端301已经与P2P服务器304建立第一P2P连接成功且第二客户端302已经与P2P服务器304建立第二P2P连接成功,则直接为第一客户端301和第二客户端302提供P2P模式传输视频数据,中断第一客户端301与第二客户端302与中转服务器303的连接。
其中,中转服务器303,还用于分别根据第一连接请求中第一用户的身份认证信息和第二连接请求中第二用户的身份认证信息,分别对第一用户和第二用户进行认证;对第一用户和第二用户认证成功后,分别与第一客户端301建立第一中转连接、与第二客户端302建立第二中转连接。
其中,P2P服务器304,还用于分别根据第一连接请求中第一用户的身份认证信息和第二连接请求中第二用户的身份认证信息,分别对第一用户和第二用户进行认证;对第一用户和第二用户认证成功后,分别与第一客户端301建立第一P2P连接、与第二客户端302建立第二P2P连接。
本发明实施例提供的***,在视频数据的传输开始阶段,采用中转服务器传输视频数据,在P2P连接成功后,采用P2P模式直接传输视频数据,解决了客户端利用P2P模式登陆慢、连接速度慢甚至连接不上的问题,使得用户能够快速的传输视频,提高了用户的使用体验,节约了网络的带宽,在P2P发生错误无法使用时,又及时切换到中转服务器上,通过中转服务器传输视频数据,使得用户可以继续传输视频数据,保证用户传输视频数据的连贯性。
实施例4
本发明实施例还提供了一种传输视频数据的装置,装置在第一客户端中,参见图4,该装置包括:
发送模块301,用于第一客户端分别向中转服务器和点对点P2P服务器发送第一连接请求;
其中,第一客户端和其他客户端具体可以为游戏客户端、网页客户端、移动终端客户端等,本发明实施例对此不作限制。
中转传输模块302,用于第一客户端通过发送模块301向中转服务器发送第一连接请求后,与中转服务器建立第一中转连接;在第一中转连接建立成功后,第一客户端与其他客户端通过中转服务器转发传输视频数据;
中转中断模块303,用于第一客户端通过中转传输模块302与其他客户端通过中转服务器转发传输视频数据后,根据发送模块301向P2P服务器发送第一连接请求,与P2P服务器建立第一P2P连接;在第一P2P连接建立成功后,第一客户端中断与中转服务器的连接;
P2P传输模块304,用于第一客户端与P2P服务器建立第一P2P连接成功后,第一客户端与其他客户端使用P2P模式直接传输视频数据。
进一步地,中转中断模块303还包括:中转中断单元,用于第一客户端与P2P服务器建立第一P2P连接成功后,与其他客户端使用P2P模式传输第一帧数据后,与其他客户端中断通过中转服务器转发传输视频数据。
其中,装置还包括:中转持续模块,用于如果第一客户端与其他客户端在使用P2P模式传输视频数据过程中,第一客户端与其他客户端连接中断,或者,第一客户端与其他客户端所传输的视频数据丢包率大于预定系数,或者,第一客户端与其他客户端所传输的视频数据缓冲时间大于预定时间,判断第一客户端是否与中转服务器之间保持链路,如果是,则通过中转服务器为第一客户端和其他客户端继续转发传输视频数据;
其中,丢包率的预定系数和缓冲时间的预定时间可以根据实际情况灵活选择,例如丢包率的预定系数可以设置为10%,缓冲时间的预定时间可以设置为10秒,本发明实施例对此不作限制。
否则,第一客户端向中转服务器发送第一连接请求;在与中转服务器建立第一中转连接成功后,通过中转服务器为第一客户端和其他客户端继续转发传输视频数据。
本发明实施例提供的装置,在视频数据的传输开始阶段,采用中转服务器传输视频数据,在P2P连接成功后,采用P2P模式直接传输视频数据,解决了客户端利用P2P模式登陆慢、连接速度慢甚至连接不上的问题,使得用户能够快速的传输视频,提高了用户的使用体验,节约了网络的带宽,在P2P发生错误无法使用时,又及时切换到中转服务器上,通过中转服务器传输视频数据,使得用户可以继续传输视频数据,保证用户传输视频数据的连贯性。
本发明实施例中的“接收”一词可以理解为主动从其他模块获取也可以是接收其他模块发送来的信息。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本发明实施例中的部分步骤,可以利用软件实现,相应的软件程序可以存储在可读取的存储介质中,如光盘或硬盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (15)

1、一种传输视频数据的方法,其特征在于,所述方法包括:
第一客户端分别向中转服务器和点对点P2P服务器发送第一连接请求,第二客户端分别向中转服务器和P2P服务器发送第二连接请求;
所述第一客户端与所述中转服务器建立第一中转连接成功且所述第二客户端与所述中转服务器建立第二中转连接成功后,所述第一客户端与所述第二客户端通过所述中转服务器转发传输视频数据;
所述第一客户端与所述P2P服务器建立第一P2P连接成功且所述第二客户端与所述P2P服务器建立第二P2P连接成功后,所述第一客户端与所述第二客户端中断通过所述中转服务器转发传输视频数据;
所述第一客户端与所述第二客户端使用P2P模式直接传输视频数据。
2、如权利要求1所述的方法,其特征在于,所述第一客户端与所述P2P服务器建立第一P2P连接成功且所述第二客户端与所述P2P服务器建立第二P2P连接成功后,所述第一客户端与所述第二客户端中断通过所述中转服务器转发传输视频数据,具体包括:
所述第一客户端与所述P2P服务器建立第一P2P连接成功且所述第二客户端与所述P2P服务器建立第二P2P连接成功后,所述第一客户端与所述第二客户端使用P2P模式传输第一帧数据后,所述第一客户端与所述第二客户端中断通过所述中转服务器转发传输视频数据。
3、如权利要求1所述的方法,其特征在于,所述第一客户端与所述第二客户端使用所述P2P模式直接传输视频数据之后,还包括:
如果所述第一客户端与所述第二客户端在使用P2P模式传输视频数据过程中,所述第一客户端与所述第二客户端连接中断,或者,所述第一客户端与所述第二客户端所传输的视频数据丢包率大于预定系数,或者,所述第一客户端与所述第二客户端所传输的视频数据缓冲时间大于预定时间,则所述第一客户端与所述第二客户端分别判断是否与所述中转服务器之间保持链路;
如果所述第一客户端与所述中转服务器之间保持链路且所述第二客户端与所述中转服务器之间保持链路,则通过所述中转服务器继续传输视频数据;
如果所述第一客户端与所述中转服务器之间断开链路,则所述第一客户端向所述中转服务器发送第一连接请求;在所述第一客户端与所述中转服务器建立第一中转连接成功后,所述第一客户端与所述第二客户端通过所述中转服务器转发传输视频数据;
如果所述第二客户端与所述中转服务器之间断开链路,则所述第二客户端向所述中转服务器发送第二连接请求;在所述第二客户端与所述中转服务器建立第二中转连接成功后,所述第二客户端与所述第一客户端通过所述中转服务器转发传输视频数据;
如果所述第一客户端与所述第二客户端都与所述中转服务器之间断开链路,则所述第一客户端向所述中转服务器发送第一连接请求,所述第二客户端向所述中转服务器发送第二连接请求;
在所述第一客户端与所述中转服务器建立第一中转连接成功且所述第二客户端与所述中转服务器建立第二中转连接成功后,所述第一客户端与所述第二客户端通过所述中转服务器转发传输视频数据。
4、如权利要求1所述的方法,其特征在于,所述方法还包括:
如果所述第一客户端与所述中转服务器建立第一中转连接成功且所述第二客户端与所述中转服务器建立第二中转连接成功之前,所述第一客户端已经与所述P2P服务器建立第一P2P连接成功且所述第二客户端已经与所述P2P服务器建立第二P2P连接成功,则所述第一客户端与所述第二客户端直接使用P2P模式进行视频数据的传输,中断所述第一客户端与所述第二客户端与所述中转服务器的连接。
5、如权利要求1所述的方法,其特征在于,所述第一客户端与所述中转服务器建立第一中转连接成功且所述第二客户端与所述中转服务器建立第二中转连接成功之前,包括:
所述中转服务器接收所述第一客户端发送的第一连接请求和所述第二客户端发送的第二连接请求;
所述中转服务器分别根据所述第一连接请求中第一用户的身份认证信息和所述第二连接请求中第二用户的身份认证信息,分别对所述第一用户和所述第二用户进行认证;
所述中转服务器对所述第一用户和所述第二用户认证成功后,分别与所述第一客户端建立第一中转连接、与所述第二客户端建立第二中转连接,并分别向所述第一客户端和所述第二客户端发送第一中转连接成功响应和第二中转连接成功响应。
6、如权利要求1所述的方法,其特征在于,所述第一客户端与所述P2P服务器建立第一P2P连接成功且所述第二客户端与所述P2P服务器建立第二P2P连接成功之前,包括:
所述P2P服务器接收所述第一客户端发送的第一连接请求和所述第二客户端发送的第二连接请求;
所述P2P服务器分别根据所述第一连接请求中第一用户的身份认证信息和所述第二连接请求中第二用户的身份认证信息,分别对所述第一用户和所述第二用户进行认证;
所述P2P服务器对所述第一用户和所述第二用户认证成功后,分别与所述第一客户端建立第一P2P连接、与所述第二客户端建立第二P2P连接,并分别向所述第一客户端和所述第二客户端发送第一P2P连接成功响应和第二P2P连接成功响应。
7、一种传输视频数据的***,其特征在于,所述***包括:第一客户端、第二客户端、中转服务器和点对点P2P服务器,其中,
所述第一客户端,用于向所述中转服务器和所述P2P服务器发送第一连接请求;与所述中转服务器建立第一中转连接;与所述第二客户端通过所述中转服务器转发传输视频数据;与所述P2P服务器建立第一P2P连接;中断与所述第二客户端通过所述中转服务器转发传输视频数据;与所述第二客户端使用P2P模式直接传输视频数据;
所述第二客户端,用于向所述中转服务器和所述P2P服务器发送第二连接请求;与所述中转服务器建立第二中转连接;与所述第一客户端通过所述中转服务器转发传输视频数据;与所述P2P服务器建立第二P2P连接;中断与所述第一客户端通过所述中转服务器转发传输视频数据;与所述第一客户端使用所述P2P模式直接传输视频数据;
所述中转服务器,用于分别接收所述第一客户端和所述第二客户端发送的第一连接请求和第二连接请求;分别与所述第一客户端和所述第二客户端建立第一中转连接和第二中转连接;为所述第一客户端和所述第二客户端转发传输视频数据;
所述P2P服务器,用于分别接收所述第一客户端和所述第二客户端发送的第一连接请求和第二连接请求;分别与所述第一客户端和所述第二客户端建立第一P2P连接和第二P2P连接;当所述第一客户端与所述第二客户端中断通过所述中转服务器转发传输视频数据时,为所述第一客户端和所述第二客户端提供P2P模式直接传输视频数据。
8、如权利要求7所述的***,其特征在于,所述第一客户端还用于,与所述P2P服务器建立第一P2P连接成功且所述第二客户端与所述P2P服务器建立第二P2P连接成功后,与所述第二客户端使用P2P模式传输第一帧数据后,与所述第二客户端中断通过所述中转服务器转发传输视频数据;
相应地,所述第二客户端还用于,与所述P2P服务器建立第二P2P连接成功且所述第一客户端与所述P2P服务器建立第一P2P连接成功后,与所述第一客户端使用P2P模式传输第一帧数据后,与所述第一客户端中断通过所述中转服务器转发传输视频数据。
9、如权利要求7所述的***,其特征在于,所述中转服务器还用于,如果所述第一客户端与所述第二客户端在使用P2P模式传输视频数据过程中,所述第一客户端与所述第二客户端连接中断,或者,所述第一客户端与所述第二客户端所传输的视频数据丢包率大于预定系数,或者,所述第一客户端与所述第二客户端所传输的视频数据缓冲时间大于预定时间,则在所述第一客户端判断与所述中转服务器之间保持链路且所述第二客户端判断与所述中转服务器之间保持链路时,为所述第一客户端和所述第二客户端继续转发传输视频数据;
在所述第一客户端与所述中转服务器之间断开链路时,接收所述第一客户端发送的第一连接请求;在与所述第一客户端建立第一中转连接成功后,为所述第一客户端和所述第二客户端继续转发传输视频数据;
在所述第二客户端与所述中转服务器之间断开链路时,接收所述第二客户端发送的第二连接请求;在与所述第二客户端建立第二中转连接成功后,为所述第一客户端和所述第二客户端继续转发传输视频数据;
在所述第一客户端与所述第二客户端都与所述中转服务器之间断开链路时,分别接收所述第一客户端发送的第一连接请求,所述第二客户端发送的第二连接请求;在与所述第一客户端建立第一中转连接成功且与所述第二客户端建立第二中转连接成功后,为所述第一客户端和所述第二客户端继续转发传输视频数据。
10、如权利要求7所述的***,其特征在于,所述P2P服务器,还用于如果所述第一客户端与所述中转服务器建立第一中转连接成功且所述第二客户端与所述中转服务器建立第二中转连接成功之前,所述第一客户端已经与所述P2P服务器建立第一P2P连接成功且所述第二客户端已经与所述P2P服务器建立第二P2P连接成功,则直接为所述第一客户端和所述第二客户端提供P2P模式传输视频数据,中断所述第一客户端与所述第二客户端与所述中转服务器的连接。
11、如权利要求7所述的***,其特征在于,所述中转服务器,还用于分别根据所述第一连接请求中第一用户的身份认证信息和所述第二连接请求中第二用户的身份认证信息,分别对所述第一用户和所述第二用户进行认证;对所述第一用户和所述第二用户认证成功后,分别与所述第一客户端建立第一中转连接、与所述第二客户端建立第二中转连接。
12、如权利要求7所述的***,其特征在于,所述P2P服务器,还用于分别根据所述第一连接请求中第一用户的身份认证信息和所述第二连接请求中第二用户的身份认证信息,分别对所述第一用户和所述第二用户进行认证;对所述第一用户和所述第二用户认证成功后,分别与所述第一客户端建立第一P2P连接、与所述第二客户端建立第二P2P连接。
13、一种传输视频数据的装置,其特征在于,所述装置在所述第一客户端中,所述装置包括:
发送模块,用于第一客户端分别向中转服务器和点对点P2P服务器发送第一连接请求;
中转传输模块,用于所述第一客户端通过所述发送模块向所述中转服务器发送第一连接请求后,与所述中转服务器建立第一中转连接;在所述第一中转连接建立成功后,所述第一客户端与其他客户端通过所述中转服务器转发传输视频数据;
中转中断模块,用于所述第一客户端通过所述中转传输模块与其他客户端通过所述中转服务器转发传输视频数据后,根据所述发送模块向所述P2P服务器发送第一连接请求,与所述P2P服务器建立第一P2P连接;在所述第一P2P连接建立成功后,所述第一客户端中断与所述中转服务器的连接;
P2P传输模块,用于所述第一客户端与所述P2P服务器建立第一P2P连接成功后,所述第一客户端与其他客户端使用P2P模式直接传输视频数据。
14、如权利要求13所述的装置,其特征在于,所述中转中断模块还包括:中转中断单元,用于所述第一客户端与所述P2P服务器建立第一P2P连接成功后,与其他客户端使用P2P模式传输第一帧数据后,与所述其他客户端中断通过所述中转服务器转发传输视频数据。
15、如权利要求13所述的装置,其特征在于,所述装置还包括:中转持续模块,用于如果所述第一客户端与其他客户端在使用P2P模式传输视频数据过程中,所述第一客户端与所述其他客户端连接中断,或者,所述第一客户端与所述其他客户端所传输的视频数据丢包率大于预定系数,或者,所述第一客户端与所述其他客户端所传输的视频数据缓冲时间大于预定时间,判断所述第一客户端是否与所述中转服务器之间保持链路,如果是,则通过所述中转服务器为所述第一客户端和所述其他客户端继续转发传输视频数据;
否则,所述第一客户端向所述中转服务器发送第一连接请求;在与所述中转服务器建立第一中转连接成功后,通过所述中转服务器为所述第一客户端和所述其他客户端继续转发传输视频数据。
CNA2009101505939A 2009-06-23 2009-06-23 一种传输视频数据的方法、***和装置 Pending CN101594242A (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CNA2009101505939A CN101594242A (zh) 2009-06-23 2009-06-23 一种传输视频数据的方法、***和装置
EP10791403.8A EP2448206B1 (en) 2009-06-23 2010-05-27 Method, system and device for transmitting video data
BRPI1014840-0A BRPI1014840B1 (pt) 2009-06-23 2010-05-27 método, sistema e dispositivo para transmitir dados de vídeo
RU2012101705/08A RU2500079C2 (ru) 2009-06-23 2010-05-27 Способ, система и устройство для передачи видеоданных
PCT/CN2010/073304 WO2010148897A1 (zh) 2009-06-23 2010-05-27 一种传输视频数据的方法、***和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA2009101505939A CN101594242A (zh) 2009-06-23 2009-06-23 一种传输视频数据的方法、***和装置

Publications (1)

Publication Number Publication Date
CN101594242A true CN101594242A (zh) 2009-12-02

Family

ID=41408702

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2009101505939A Pending CN101594242A (zh) 2009-06-23 2009-06-23 一种传输视频数据的方法、***和装置

Country Status (5)

Country Link
EP (1) EP2448206B1 (zh)
CN (1) CN101594242A (zh)
BR (1) BRPI1014840B1 (zh)
RU (1) RU2500079C2 (zh)
WO (1) WO2010148897A1 (zh)

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010148897A1 (zh) * 2009-06-23 2010-12-29 腾讯科技(深圳)有限公司 一种传输视频数据的方法、***和装置
CN102571749A (zh) * 2010-12-27 2012-07-11 三星Sds株式会社 使用中继服务器的数据传输***和方法
CN102647576A (zh) * 2011-02-22 2012-08-22 中兴通讯股份有限公司 视频交互方法及***
CN102651701A (zh) * 2011-02-28 2012-08-29 腾讯科技(深圳)有限公司 建立音视频通讯连接的方法和装置
CN102917127A (zh) * 2012-10-15 2013-02-06 北京推博信息技术有限公司 一种音频传输方法及***
CN103095755A (zh) * 2011-10-31 2013-05-08 联想(北京)有限公司 一种数据同步方法及电子设备
CN103106105A (zh) * 2013-02-20 2013-05-15 东莞宇龙通信科技有限公司 网络设备任务处理方法和***
CN103347041A (zh) * 2013-05-31 2013-10-09 中国联合网络通信集团有限公司 视频共享控制方法和装置
CN103812947A (zh) * 2014-02-28 2014-05-21 深圳市创梦天地科技有限公司 数据交互***及方法
CN103856387A (zh) * 2012-11-29 2014-06-11 中国电信股份有限公司 基于即时消息客户端的文件转发方法及***
WO2015010556A1 (en) * 2013-07-22 2015-01-29 Tencent Technology (Shenzhen) Company Limited Methods,devices,and systems for controlling audio and video transmission channel
CN104468796A (zh) * 2014-12-10 2015-03-25 深圳中兴网信科技有限公司 桌面数据共享方法、桌面数据共享***及服务器
CN104581706A (zh) * 2015-01-09 2015-04-29 上海华申智能卡应用***有限公司 基于非对称加密技术的智能移动终端间的数据安全交互方法
CN105763632A (zh) * 2016-04-12 2016-07-13 刘健文 一种在多个客户端之间传输文件的文件传输方法
CN106572323A (zh) * 2015-10-09 2017-04-19 阔展科技(深圳)有限公司 远程监控看护***
CN107087134A (zh) * 2017-04-11 2017-08-22 北京智能管家科技有限公司 云转发与点对点融合的视频通话***及方法
CN108390941A (zh) * 2018-03-20 2018-08-10 浙江臻善科技股份有限公司 端对端实时文件传输方法、***及第一终端和第二终端
CN110868459A (zh) * 2019-11-01 2020-03-06 腾讯科技(深圳)有限公司 数据传输方法、装置、终端及存储介质
CN110971975A (zh) * 2019-12-06 2020-04-07 杭州视洞科技有限公司 一种实时流媒体转发与直连切换的优化方案
CN112367493A (zh) * 2021-01-14 2021-02-12 游密科技(深圳)有限公司 数据传输控制方法、装置、移动终端及存储介质
CN112833129A (zh) * 2021-02-03 2021-05-25 杨民 一种用于存放大数据服务器的保护外壳
CN114363676A (zh) * 2022-01-06 2022-04-15 重庆紫光华山智安科技有限公司 视频流传输方法、装置、设备及介质

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103763332B (zh) * 2014-02-19 2017-07-28 广东天波信息技术股份有限公司 一种媒体流转发方式动态切换的方法和***
US10129412B1 (en) * 2014-09-08 2018-11-13 Whatsapp Inc. Establishing and maintaining a VOIP call
EP3029910B1 (en) * 2014-12-03 2022-07-20 TOP Victory Investments Limited Device and method for controlling rendering in a network
CN104486083A (zh) * 2014-12-19 2015-04-01 小米科技有限责任公司 监控录像处理方法及装置
CN111314861B (zh) * 2020-02-17 2021-11-09 南京邮电大学 拥挤网络中基于拍卖博弈的中继网络带宽分配方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4852228B2 (ja) * 2001-09-26 2012-01-11 インタラクト デヴァイシーズ インコーポレイテッド メディア信号を通信するためのシステム及び方法
JP4490743B2 (ja) * 2004-06-24 2010-06-30 株式会社日立製作所 ファイル共有システム、ファイル共有用管理サーバおよびクライアント装置
CN1897588B (zh) * 2006-06-21 2010-06-16 北京北大方正电子有限公司 一种混合模式的网络文件传输方法及***
WO2008051974A1 (en) * 2006-10-24 2008-05-02 Clique Communications, Llc System and method for establishing a peer-to-peer connection
JP4232828B2 (ja) * 2007-02-01 2009-03-04 沖電気工業株式会社 アプリケーション分類方法、ネットワーク異常検知方法、アプリケーション分類プログラム、ネットワーク異常検知プログラム、アプリケーション分類装置、ネットワーク異常検知装置
CN101594242A (zh) * 2009-06-23 2009-12-02 腾讯科技(深圳)有限公司 一种传输视频数据的方法、***和装置

Cited By (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010148897A1 (zh) * 2009-06-23 2010-12-29 腾讯科技(深圳)有限公司 一种传输视频数据的方法、***和装置
CN102571749A (zh) * 2010-12-27 2012-07-11 三星Sds株式会社 使用中继服务器的数据传输***和方法
US9137313B2 (en) 2010-12-27 2015-09-15 Samsung Sds Co., Ltd. Data transmission system and method using relay server
CN102571749B (zh) * 2010-12-27 2015-06-10 三星Sds株式会社 使用中继服务器的数据传输***和方法
CN102647576A (zh) * 2011-02-22 2012-08-22 中兴通讯股份有限公司 视频交互方法及***
US20130246642A1 (en) * 2011-02-28 2013-09-19 Tencent Technology (Shenzhen) Company Limited Method and apparatus for establishing audio and video communication connection
CN102651701B (zh) * 2011-02-28 2016-03-09 腾讯科技(深圳)有限公司 建立音视频通讯连接的方法和装置
WO2012116581A1 (zh) * 2011-02-28 2012-09-07 腾讯科技(深圳)有限公司 建立音视频通讯连接的方法和装置
CN102651701A (zh) * 2011-02-28 2012-08-29 腾讯科技(深圳)有限公司 建立音视频通讯连接的方法和装置
CN103095755A (zh) * 2011-10-31 2013-05-08 联想(北京)有限公司 一种数据同步方法及电子设备
CN103095755B (zh) * 2011-10-31 2016-10-05 联想(北京)有限公司 一种数据同步方法及电子设备
CN102917127A (zh) * 2012-10-15 2013-02-06 北京推博信息技术有限公司 一种音频传输方法及***
CN103856387B (zh) * 2012-11-29 2017-07-18 中国电信股份有限公司 基于即时消息客户端的文件转发方法及***
CN103856387A (zh) * 2012-11-29 2014-06-11 中国电信股份有限公司 基于即时消息客户端的文件转发方法及***
CN103106105A (zh) * 2013-02-20 2013-05-15 东莞宇龙通信科技有限公司 网络设备任务处理方法和***
CN103347041A (zh) * 2013-05-31 2013-10-09 中国联合网络通信集团有限公司 视频共享控制方法和装置
CN103347041B (zh) * 2013-05-31 2016-04-13 中国联合网络通信集团有限公司 视频共享控制方法和装置
WO2015010556A1 (en) * 2013-07-22 2015-01-29 Tencent Technology (Shenzhen) Company Limited Methods,devices,and systems for controlling audio and video transmission channel
CN103812947B (zh) * 2014-02-28 2017-03-15 深圳市创梦天地科技有限公司 数据交互***及方法
CN103812947A (zh) * 2014-02-28 2014-05-21 深圳市创梦天地科技有限公司 数据交互***及方法
CN104468796A (zh) * 2014-12-10 2015-03-25 深圳中兴网信科技有限公司 桌面数据共享方法、桌面数据共享***及服务器
CN104581706B (zh) * 2015-01-09 2018-05-18 上海华申智能卡应用***有限公司 基于非对称加密技术的智能移动终端间的数据安全交互方法
CN104581706A (zh) * 2015-01-09 2015-04-29 上海华申智能卡应用***有限公司 基于非对称加密技术的智能移动终端间的数据安全交互方法
CN106572323A (zh) * 2015-10-09 2017-04-19 阔展科技(深圳)有限公司 远程监控看护***
CN105763632A (zh) * 2016-04-12 2016-07-13 刘健文 一种在多个客户端之间传输文件的文件传输方法
CN107087134A (zh) * 2017-04-11 2017-08-22 北京智能管家科技有限公司 云转发与点对点融合的视频通话***及方法
CN108390941A (zh) * 2018-03-20 2018-08-10 浙江臻善科技股份有限公司 端对端实时文件传输方法、***及第一终端和第二终端
CN110868459A (zh) * 2019-11-01 2020-03-06 腾讯科技(深圳)有限公司 数据传输方法、装置、终端及存储介质
CN110971975A (zh) * 2019-12-06 2020-04-07 杭州视洞科技有限公司 一种实时流媒体转发与直连切换的优化方案
CN112367493A (zh) * 2021-01-14 2021-02-12 游密科技(深圳)有限公司 数据传输控制方法、装置、移动终端及存储介质
CN112833129A (zh) * 2021-02-03 2021-05-25 杨民 一种用于存放大数据服务器的保护外壳
CN112833129B (zh) * 2021-02-03 2023-01-17 昆山鑫诚五金科技有限公司 一种用于存放大数据服务器的保护外壳
CN114363676A (zh) * 2022-01-06 2022-04-15 重庆紫光华山智安科技有限公司 视频流传输方法、装置、设备及介质

Also Published As

Publication number Publication date
WO2010148897A1 (zh) 2010-12-29
BRPI1014840A2 (pt) 2018-07-24
RU2500079C2 (ru) 2013-11-27
RU2012101705A (ru) 2013-07-27
BRPI1014840B1 (pt) 2021-01-05
EP2448206A4 (en) 2017-05-10
EP2448206B1 (en) 2021-04-28
EP2448206A1 (en) 2012-05-02

Similar Documents

Publication Publication Date Title
CN101594242A (zh) 一种传输视频数据的方法、***和装置
CN100382072C (zh) 用于提供内容的方法和***
KR102110698B1 (ko) 단말기 상호 연결 방법, 장치 및 저장 매체
EP3125594B1 (en) Intelligent communication method and terminal
EP2710776B1 (en) Anonymous signalling
CN111163130B (zh) 一种网络服务***及其数据传输方法
CN103107905A (zh) 异常处理方法、装置和客户端
CN104349208A (zh) 消息处理方法、装置、网关、机顶盒及网络电视***
CN104010228A (zh) 一种用于基于级的自动调整的对等媒体流的装置和方法
CN103618967A (zh) 一种移动终端与电视端互动的方法和装置
CN102858025A (zh) 点对点互动操作的方法及设备
CN104967527A (zh) 通信记录的恢复方法、装置及服务器
CN105391702A (zh) 音/视频通信方法、终端、服务器及平台
CN110572476B (zh) 一种远程控制方法、装置及设备
CN106657076B (zh) 一种网络命名空间的tcp服务实现方法及装置
CN103781138B (zh) 一种WiMo发送端接入WLAN的方法、装置及***
CN112929257A (zh) 多场景消息发送方法、装置、服务器以及存储介质
CN103023940A (zh) 一种pc与移动终端之间的数据传输方法和装置
CN101778117B (zh) 网络存储处理方法、装置和无线终端
US10506021B2 (en) Method and device for providing communication connection for a plurality of candidate applications in a mobile device
CN103179102A (zh) 一种桌面虚拟化方法、设备及***
CN100469062C (zh) 实现即时消息转移的方法及即时通信服务器
CN114785844A (zh) 一种基于tcp流获取云手机预览图的方法和***
CN113014610B (zh) 一种远程访问方法、装置及***
CN107733979A (zh) 数据推送方法、服务器及***

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20091202