CN105897853A - 一种对等网络连接方法及装置 - Google Patents
一种对等网络连接方法及装置 Download PDFInfo
- Publication number
- CN105897853A CN105897853A CN201511020640.XA CN201511020640A CN105897853A CN 105897853 A CN105897853 A CN 105897853A CN 201511020640 A CN201511020640 A CN 201511020640A CN 105897853 A CN105897853 A CN 105897853A
- Authority
- CN
- China
- Prior art keywords
- peer
- server
- port
- router
- network connection
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供一种对等网络连接方法及装置,包括:请求端获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息,所述端口信息包括服务端的私有端口映射的路由器的公网端口;所述请求端向所述路由器的公网端口发送对等网络连接请求,由所述路由器将所述对等网络连接请求转发至所述服务端;所述请求端在接收到所述路由器转发的所述服务端的应答消息后,建立与所述服务端的对等网络连接。本发明实施例提供的对等网络连接方法及装置,为现有的P2P网络系统提供了一种连接方式,以避免因现有连接方式的局限性造成连接失败率或连接中断率过高的问题,从而提高P2P网络系统分担资源服务器压力的能力。
Description
技术领域
本发明实施例涉及网络通信技术领域,尤其涉及一种对等网络连接方法及装置。
背景技术
为了提高网络直播或点播过程中资源播放的流畅性,传统的解决方案针对资源服务器进行了改进。但改进方案的网络架构中只有资源服务器在向用户提供数据,即使花费高昂的成本进行资源服务器的升级,还是无法满足日益增多的用户需求。
为了弥补上述方案的缺陷,现有技术的另一种方案中采用P2P对等网络连接方式,请求端和服务端建立对等连接后可进行资源的共享,这样,请求端就无需再持续向资源服务器请求数据了,从而分担了资源服务器的一部分压力。但是,现有技术中P2P网络系统中通常采用Webrtc连接协议进行对等连接,这种连接协议由于网络稳定性、路由器支持限制等原因发生连接中断或连接失败的情况较多,分担资源服务器压力的效果并不理想。
发明内容
本发明实施例提供一种对等网络连接方法及装置,用以解决现有技术中P2P网络系统中请求端和服务端连接中断或连接失败概率较高的问题。
本发明实施例提供一种对等网络连接方法,包括:
请求端获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息,所述端口信息包括服务端的私有端口映射的路由器的公网端口;
所述请求端向所述路由器的公网端口发送对等网络连接请求,由所述路由器根据所述路由器的公网端口映射的所述服务端的私有端口将所述对等网络连接请求转发至所述服务端;
所述请求端在接收到所述路由器转发的所述服务端响应所述对等网络连接请求的应答消息后,建立与所述服务端的对等网络连接。
本发明实施例提供一种对等网络连接方法,包括:
服务端根据其私有端口映射的路由器的公网端口生成端口信息;
所述服务端将资源信息及端口信息上报至P2P服务器;
所述服务端在接收到请求端发送的对等网络连接请求时,将响应所述对等网络连接请求的应答消息通过所述服务端的私有端口映射的所述路由器的公网端口转发至所述请求端,并建立与所述请求端的对等网络连接;
其中,所述对等网络连接请求由所述请求端在获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息后,根据所述端口信息包括的服务端的私有端口映射的路由器的公网端口,向所述路由器的公网端口发送,并由所述路由器根据所述路由器的公网端口映射的所述服务端的私有端口转发至所述服务端。
本发明实施例提供一种对等网络连接方法,包括:
路由器接收请求端发送的对等网络连接请求,所述对等网络连接请求由所述请求端在获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息后,根据所述端口信息包括的服务端的私有端口映射的路由器的公网端口,向所述路由器的公网端口发送的;
所述路由器根据所述路由器的公网端口映射的所述服务端的私有端口将所述对等网络连接请求转发至所述服务端;
所述路由器接收所述服务端发送的响应所述请求端发送的对等网络连接请求的应答消息,并将所述应答消息转发至所述请求端,以便于所述请求端在接收到所述路由器转发的所述服务端的应答消息后,建立与所述服务端的对等网络连接。
本发明实施例提供一种对等网络连接装置,包括:
信息获取模块,用于获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息,所述端口信息包括服务端的私有端口映射的路由器的公网端口;
连接请求模块,用于向所述路由器的公网端口发送对等网络连接请求,由所述路由器根据所述路由器的公网端口映射的所述服务端的私有端口将所述对等网络连接请求转发至所述服务端;
连接建立模块,用于在接收到所述路由器转发的所述服务端响应所述对等网络连接请求的应答消息后,建立与所述服务端的对等网络连接。
本发明实施例提供一种对等网络连接装置,包括:
信息生成模块,用于根据其私有端口映射的路由器的公网端口生成端口信息;
信息上报模块,用于将资源信息及端口信息上报至P2P服务器;
响应模块,用于在接收到请求端发送的对等网络连接请求时,将响应所述对等网络连接请求的应答消息通过所述服务端的私有端口映射的所述路由器的公网端口转发至所述请求端,并建立与所述请求端的对等网络连接;
其中,所述对等网络连接请求由所述请求端在获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息后,根据所述端口信息包括的服务端的私有端口映射的路由器的公网端口,向所述路由器的公网端口发送,并由所述路由器根据所述路由器的公网端口映射的所述服务端的私有端口转发至所述服务端。
本发明实施例提供一种对等网络连接装置,包括:
请求接收模块,用于接收请求端发送的对等网络连接请求,所述对等网络连接请求由所述请求端在获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息后,根据所述端口信息包括的服务端的私有端口映射的路由器的公网端口,向所述路由器的公网端口发送的;
转发模块,用于根据所述路由器的公网端口映射的所述服务端的私有端口将所述对等网络连接请求转发至所述服务端;
所述转发模块,还用于接收所述服务端发送的响应所述请求端发送的对等网络连接请求的应答消息,并将所述应答消息转发至所述请求端,以便于所述请求端在接收到所述路由器转发的所述服务端的应答消息后,建立与所述服务端的对等网络连接。
本发明实施例提供的对等网络连接方法及装置,通过将请求端的连接请求经路由器的公网端口转发至服务端的私有端口,解决了现有技术中由于路由器限制等原因造成的请求端无法实现与私有网络中的服务端建立对等网络连接的问题。为现有的P2P网络系统提供了一种补充连接方式,以避免因现有连接方式的局限性造成连接失败率或连接中断率过高的问题,从而提高P2P网络系统分担资源服务器压力的能力。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明对等网络连接方法流程图;
图2为本发明对等网络连接方法实施例流程图;
图3为本发明对等网络连接方法流程图;
图4为本发明对等网络连接方法流程图;
图5为本发明对等网络连接装置的结构示意图;
图6为本发明对等网络连接装置的实施例结构示意图;
图7为本发明对等网络连接装置的结构示意图;
图8为本发明对等网络连接装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的对等网络连接方法及装置,可应用于网络直播/点播场景中。现有技术中,当用户通过HTML5网页端中的播放器(请求端)发起视频播放请求时,通常采用Webrtc协议与服务端建立对等网络连接,当请求端向P2P服务器发起与服务端的连接请求后,P2P服务器将服务端对应的端口地址返回给请求端,继而请求端根据服务端的端口地址与服务端建立连接。但是,WERTC协议只适用于服务端的端口地址为公网端口的情况,基于Webrtc协议,请求端与服务端仅能通过直接寻址的方式建立连接。因此,当服务端处于私网中时,请求端无法通过Webrtc协议建立与服务端的连接,直播/点播资源也就无法在请求端和服务端之间实现共享,这种情况下,请求端只能向资源服务器请求数据,服务端无法发挥分担资源服务器压力的作用。
本发明实施例提供的对等网络连接方法及装置,正是要改变Webrtc协议存在的上述缺陷,提供补充的连接方案。请求端将连接请求通过路由器的公网端口转发至服务端的私有端口,从而,可在服务端处于私网的场景下,实现请求端与服务端的对等连接。
另外,本发明实施例提供的对等网络连接方法及装置,还可应用于其它需要与私有网络中的终端建立网络连接的场景,本发明对此不作限定。
参考图1,本发明实施例提供一种对等网络连接方法,包括:
S101,请求端获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息,所述端口信息包括服务端的私有端口映射的路由器的公网端口;
S102,所述请求端向所述路由器的公网端口发送对等网络连接请求,由所述路由器根据所述路由器的公网端口映射的所述服务端的私有端口将所述对等网络连接请求转发至所述服务端;
S103,所述请求端在接收到所述路由器转发的所述服务端响应所述对等网络连接请求的应答消息后,建立与所述服务端的对等网络连接。
其中,步骤S101中的P2P服务器中预先接收并存储了请求端上报的资源请求信息,资源请求信息包括所需资源的名称、内容、长度等,还存储有请求端和服务端上报的观影信息,例如请求端所观看的直播/点播节目的名称、总长度、当前播放帧等。当所述请求端为终端时,所述请求端还会将其端口信息上报至所述P2P服务器。另外,P2P服务器中还接收并存储了服务端上报的端口信息,端口信息中包括服务端的私有端口映射的路由器的公网端口,请求端将从所述P2P服务器中获取到服务端对应的路由器的公网端口,并在S102中将对等网络连接请求发送至路由器的公网端口。
请求端和服务端将通过P2P服务器进行信息交换,即请求端获取到服务端的资源信息及端口信息,服务端也可获知请求端的资源请求信息、观影信息、端口信息等。请求端和服务端向P2P服务器上报资源请求信息可使用UTP、HTTP、Websocket协议中的任意一种。
步骤S102中,请求端将对等网络连接请求发送至服务端对应的路由器的公网端口,路由器在接收到请求端的对等网络连接请求后,会自动根据服务端的私有端口与路由器的公网端口的映射关系将对等网络连接请求转发至服务端。例如,当服务端位于公司的局域网内时,服务端的私有端口指的便是服务端的内网端口,而公网端口则指公司路由器的对外端口。
S103中,在服务端接收到请求端发送的对等网络连接请求时,会根据实际情况进行应答,如果服务端同意建立连接,则会向请求端反馈应答消息,服务端响应所述对等网络请求的应答消息的反馈路径是通过其对应的路由器的公网端口转发至请求端,请求端在收到所述应答消息后,成功建立起与所述服务端的对等网络连接。
本实施例中,针对服务端处于私网中的情况,提供了一种补充连接方式,将请求端的对等网络连接请求经路由器的公网端口转发至服务端的私有端口,从而建立请求端与服务端的对等网络连接。
本发明实施例提供的对等网络连接方法中,所述请求端和服务端可以是手机、电脑、云视频终端、电视等终端设备,而请求端还可以是HTML5网页端,例如用户通过HTML5网页端进行在线视频点播。由于HTML5网页端运行在浏览器中,其没有访问本地信息的权限,且当其处于私网中时,无法进行与路由器的端口映射,也就无法提供用于接收对等网络连接请求的端口信息,因此,请求端为HTML5网页端时,只能主动向处于P2P网络系统中的其它终端发起对等网络连接请求,而无法接受其它终端发出的对等网络连接请求。当然,本发明实施例提供的对等网络连接方法也适用于其它类型的请求端,以建立起P2P网络系统中处于私网中的各终端的对等网络连接。
参考图2,本发明实施例提供的对等网络连接方法中,S103之后,还包括:
S104,所述请求端根据所述端口信息包括的服务端的私有端口映射的路由器的公网端口,接收所述路由器转发的所述服务端发送的资源。
在S103中成功建立起请求端和服务端的对等网络连接之后,请求端和服务端之间可进行资源的共享,请求端接收服务端发送的资源时,通过服务端对应的路由器的公网端口,接收所述路由器转发的所述服务端发送的资源。而且,当服务端的私有端口上开启Websocket协议时,请求端采用Websocket协议与服务端进行通信,在请求端和服务端成功建立起对等网络连接之后,请求端和服务端可进行双向通信,即请求端可接收服务端对应的路由器转发的所述服务端中的资源,请求端也可将其资源经服务端对应的路由器的公网端口转发至服务端。基于此,对于请求端为HTML5网页端的场景下,对等网络连接的建立具有主动和被动之分,而成功建立连接后,请求端和服务端将可实现双向通信,不再有主动和被动之分,这区别于现有的HTTP协议和其它单向通信协议,使P2P网络系统中各终端之间的资源共享更加灵活方便。
当本发明实施例应用于请求端为播放器的场景中时,在执行对等网络连接之前,请求端可先从CDN的节点服务器中下载预定长度的缓冲资源;并在所述缓冲资源下载完成后,将所述缓冲资源之后的资源作为请求资源配置到所述资源请求信息中。
请求端首先向CDN架构中的节点服务器请求一部分缓冲资源,例如请求端观看一部影片时可先供节点服务器中下载10S的缓冲数据,利用10S的缓冲时间,请求端可在缓冲时间内通过P2P方式继续寻找资源,即缓冲资源之后的资源。所述资源请求信息中可将请求端所需的资源进行分段,可根据从P2P服务器中获取的各服务端的资源信息向不同的服务端分别发起对等网络连接请求,分散式获取资源,以提高资源获取的速度。
参考图3,本发明实施例还提供一种对等网络连接方法,包括:
S201,服务端根据其私有端口映射的路由器的公网端口生成端口信息;
S202,所述服务端将资源信息及端口信息上报至P2P服务器;
S203,所述服务端在接收到请求端发送的对等网络连接请求时,将响应所述对等网络连接请求的应答消息通过所述服务端的私有端口映射的所述路由器的公网端口转发至所述请求端,并建立与所述请求端的对等网络连接;
其中,所述对等网络连接请求由所述请求端在获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息后,根据所述端口信息包括的服务端的私有端口映射的路由器的公网端口,向所述路由器的公网端口发送,并由所述路由器根据所述路由器的公网端口映射的所述服务端的私有端口转发至所述服务端。
S201中,当所述服务端处于私网中时,服务端将其私有端口映射的路由器的公网端口配置到端口信息中,例如,当服务端处于公司局域网中,服务端将其端口5000映射到路由器的端口8000,路由器的端口8000的地址等信息将配置到端口信息。步骤S202中,服务端的端口信息和资源信息将通过UTP、HTTP、Websocket协议中的任意一中上报至P2P服务器,请求端将从所述P2P服务器中获取到服务端的端口信息以及资源信息,并根据服务端的资源信息判断是否发送向其发送对等网络连接请求,如果服务端中缓存有请求端所需的资源,则请求端会根据服务端的端口信息获知服务端对应的路由器的公网端口,请求端的对等网络连接请求将发送至服务端对应的路由器的公网端口,路由器会自动将请求端的对等网络连接请求转发至服务端。
S203中,服务端接收到路由器转发的请求端的对等网络连接请求后,如果同意建立连接,则将应答消息通过路由器的公网端口转发至请求端,在请求端收到服务端的应答消息后,请求端和服务端可成功建立对等网络连接,并可开始双向传输资源。
服务端的私有端口和路由器的公网端口的映射关系建立可采用多种方式,以下再以一实施例对S201进行举例说明。
S201包括:所述服务端根据所述路由器为所述服务端的私有端口分配的公网端口生成端口信息。
路由器可根据其各公网端口的闲置情况自动为处于私网中的各终端分配公网端口,并将公网端口与终端的私有端口的映射关系反馈至终端,本实施例中,服务端根据获知的其私有端口与路由器的公网端口的映射关系,将其私有端口映射的路由器的公网端口的信息生成端口信息。例如,可采用UPNP协议进行网络地址转换,将所述服务端的私有端口的网络地址映射到路由器的公网端口,并将所述路由器的公网端口的网络地址配置到所述端口信息中。
本实施例中,还可由处于私网中的服务端通过UPNP协议请求路由器提供一公网端口以进行服务端私有端口的映射。请求端发送对等连接请求时,将根据所述服务端的端口信息中的路由器的公网端口的网络地址将所述对等网络连接请求发送至所述路由器的公网端口,公网端口则将所述对等网络连接请求转发至服务端,从而所述服务端接收到所述请求端的对等网络连接请求。
本发明实施例针对服务端处于私网中的场景,提供了一种服务端接收请求端的对等网络连接请求,并成功向请求端反馈应答消息以实现建立与请求端的对等网络连接的技术方案,为P2P网络系统中各终端处于不同网络场景中时提供了一种补充的网络连接方式,使得各终端可不受私网的限制,发挥服务端的功能,使得P2P网络系统中的资源共享更加方便,扩大了资源共享的适用范围。
参考图4,本发明的实施例提供一种对等网络连接方法,包括:
S301,路由器接收请求端发送的对等网络连接请求,所述对等网络连接请求由所述请求端在获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息后,根据所述端口信息包括的服务端的私有端口映射的路由器的公网端口,向所述路由器的公网端口发送的;
S302,所述路由器根据所述路由器的公网端口映射的所述服务端的私有端口将所述对等网络连接请求转发至所述服务端;
S303,所述路由器接收所述服务端发送的响应所述请求端发送的对等网络连接请求的应答消息,并将所述应答消息转发至所述请求端,以便于所述请求端在接收到所述路由器转发的所述服务端的应答消息后,建立与所述服务端的对等网络连接。
本实施例中,路由器接收请求端发送的对等网络连接请求,并将接收到的对等网络连接请求转发至服务端。由请求端先根据P2P服务器提供的包含请求端所需资源的服务端的端口信息获取到服务端对应的路由器的公网端口,之后再根据获取到的端口信息将对等网络连接请求发送至路由器的公网端口,路由器在接收到请求端发送的对等网络请求后,根据路由器的公网端口与服务端的私有端口的映射关系,将对等网络连接请求转发至服务端。
服务端在接收到对等网络连接请求后,会发出响应所述对等网络连接请求的应答消息,服务端发出的应答消息将发送至路由器的公网端口,路由器在会自动将服务器发送的应答消息转发至请求端,至此,在路由器的转发帮助下,请求端和服务端成功建立起对等网络连接,并可进行双向的资源共享,请求端与服务端进行资源共享过程中,路由器可依然承担转发的功能,以保证请求端和服务端的顺畅通信。
以下以HTML5网页端作为请求端,处于私网中的电脑作为服务端为例进行本发明实施例的详细解释。
用户通过HTML5网页端中的播放器请求观看一部电影,在播放器中选择播放的影片后,播放器首先向CDN架构中的节点服务器请求下载10s的缓冲资源,下载完成后,播放器开始播放缓冲资源,播放器将在10S的缓冲时间内,通过对等网络连接的方式获取所述电影的资源,P2P网络系统中,网页端中的播放器(请求端)和各终端的播放器(服务端)均将观影信息上报至P2P服务器,观影信息中包含请求端或服务端的资源、端口、观看进度等等信息,观影信息为请求端和服务端提供了配对依据。例如,请求端获知服务端A、B和C中包含所述电影的资源,请求端分别向服务端A、B、C发起基于Webrte和Websocket协议的对等网络连接请求,服务端A、C处于公网中,请求端可与服务端A、C成功建立基于Webrtc协议的对等网络连接;服务端B处于私网中,请求端发起的基于Webrtc协议的连接请求失败,请求端通过解析P2P服务器提供的服务端B的端口信息,将基于Websocket协议的连接请求通过服务端B对应的路由器的公网端口转发至服务端B,服务端B在接收到请求端发送的对等网络连接请求后,将应答消息通过路由器的公网端口反馈给所述请求端,在获得服务端B反馈的应答消息后,请求端与服务端B成功建立了基于Websocket协议的对等网络连接。对于请求端来说,其采用两种协议分别向各服务端发起请求连接,在一种连接请求失败或中断的情况下,另一种连接请求可作为补充连接,从而提高了P2P方式进行资源获取的成功率,增大了P2P方式获取的资源量在网页端所需总资源量中所占的比例,进而减小了CDN架构的服务压力,基于Webrtc和Websocket协议的两种连接请求相互独立,相互补充,为P2P方式提供了更优化的连接方案。
参考图5,本发明实施例提供一种对等网络连接装置,配置在P2P网络系统的请求端中,包括:
信息获取模块11,用于获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息,所述端口信息包括服务端的私有端口映射的路由器的公网端口;
连接请求模块12,用于向所述路由器的公网端口发送对等网络连接请求,由所述路由器根据所述路由器的公网端口映射的所述服务端的私有端口将所述对等网络连接请求转发至所述服务端;
连接建立模块13,用于在接收到所述路由器转发的所述服务端响应所述对等网络连接请求的应答消息后,建立与所述服务端的对等网络连接。
其中,P2P服务器中预先接收并存储了本实施例中的对等网络连接装置上报的资源请求信息,资源请求信息包括所需资源的名称、内容、长度等,还存储有请求端和服务端上报的观影信息,例如请求端所观看的直播/点播节目的名称、总长度、当前播放帧等。当所述请求端为终端时,所述请求端还会将其端口信息上报至所述P2P服务器。另外,P2P服务器中还接收并存储了服务端上报的端口信息,端口信息中包括服务端的私有端口映射的路由器的公网端口,请求端将从所述P2P服务器中获取到服务端对应的路由器的公网端口,并在连接请求模块12中将对等网络连接请求发送至路由器的公网端口。
请求端和服务端将通过P2P服务器进行信息交换,即请求端获取到服务端的资源信息及端口信息,服务端也可获知请求端的资源请求信息、观影信息、端口信息等。请求端和服务端向P2P服务器上报资源请求信息可使用UTP、HTTP、Websocket协议中的任意一种。
连接请求模块12中,请求端将对等网络连接请求发送至服务端对应的路由器的公网端口,路由器在接收到请求端的对等网络连接请求后,会自动根据服务端的私有端口与路由器的公网端口的映射关系将对等网络连接请求转发至服务端。例如,当服务端位于公司的局域网内时,服务端的私有端口指的便是服务端的内网端口,而公网端口则指公司路由器的对外端口。
连接建立模块13中,在服务端接收到请求端发送的对等网络连接请求时,会根据实际情况进行应答,如果服务端同意建立连接,则会向请求端反馈应答消息,服务端响应所述对等网络请求的应答消息的反馈路径是通过其对应的路由器的公网端口转发至请求端,请求端在收到所述应答消息后,成功建立起与所述服务端的对等网络连接。
本实施例中,针对服务端处于私网中的情况,提供了一种补充连接方式,将请求端的对等网络连接请求经路由器的公网端口转发至服务端的私有端口,从而建立请求端与服务端的对等网络连接。
本发明实施例提供的对等网络连接装置适用于P2P网络系统的请求端,所述请求端和服务端可以是手机、电脑、云视频终端、电视等终端设备,而请求端还可以是HTML5网页端,例如用户通过HTML5网页端进行在线视频点播。由于HTML5网页端运行在浏览器中,其没有访问本地信息的权限,且当其处于私网中时,无法进行与路由器的端口映射,也就无法提供用于接收对等网络连接请求的端口信息,因此,请求端为HTML5网页端时,只能主动向处于P2P网络系统中的其它终端发起对等网络连接请求,而无法接受其它终端发出的对等网络连接请求。当然,本发明实施例提供的请求端也适用于其它类型的请求端,以建立起P2P网络系统中处于私网中的各终端的对等网络连接。
参考图6,本发明实施例提供的对等网络连接装置,还包括:
数据传输模14,用于根据所述端口信息包括的服务端的私有端口映射的路由器的公网端口,接收所述路由器转发的所述服务端发送的资源。
在所述连接建立模块13成功建立起请求端与服务端的对等网络连接之后,请求端和服务端之间可进行资源的共享,请求端接收服务端发送的资源时,通过服务端对应的路由器的公网端口,接收所述路由器转发的所述服务端发送的资源。而且,当服务端的私有端口上开启Websocket协议时,请求端采用Websocket协议与服务端进行通信,在请求端和服务端成功建立起对等网络连接之后,请求端和服务端可进行双向通信,即请求端可接收服务端对应的路由器转发的所述服务端中的资源,请求端也可将其资源经服务端对应的路由器的公网端口转发至服务端。基于此,对于请求端为HTML5网页端的场景下,对等网络连接的建立具有主动和被动之分,而成功建立连接后,请求端和服务端将可实现双向通信,不再有主动和被动之分,这区别于现有的HTTP协议和其它单向通信协议,使P2P网络系统中各终端之间的资源共享更加灵活方便。
当本发明实施例应用于请求端为播放器的场景中时,在执行对等网络连接之前,请求端可先从CDN的节点服务器中下载预定长度的缓冲资源;并在所述缓冲资源下载完成后,将所述缓冲资源之后的资源作为请求资源配置到所述资源请求信息中。
请求端首先向CDN架构中的节点服务器请求一部分缓冲资源,例如请求端观看一部影片时可先供节点服务器中下载10S的缓冲数据,利用10S的缓冲时间,请求端可在缓冲时间内通过P2P方式继续寻找资源,即缓冲资源之后的资源。所述资源请求信息中可将请求端所需的资源进行分段,可根据从P2P服务器中获取的各服务端的资源信息向不同的服务端分别发起对等网络连接请求,分散式获取资源,以提高资源获取的速度。
参考图7,本发明实施例提供一种对等网络连接装置,配置在P2P网络系统的服务端中,包括:
信息生成模块21,用于根据其私有端口映射的路由器的公网端口生成端口信息;
信息上报模块22,用于将资源信息及端口信息上报至P2P服务器;
响应模块23,用于在接收到请求端发送的对等网络连接请求时,将响应所述对等网络连接请求的应答消息通过所述服务端的私有端口映射的所述路由器的公网端口转发至所述请求端,并建立与所述请求端的对等网络连接;
其中,所述对等网络连接请求由所述请求端在获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息后,根据所述端口信息包括的服务端的私有端口映射的路由器的公网端口,向所述路由器的公网端口发送,并由所述路由器根据所述路由器的公网端口映射的所述服务端的私有端口转发至所述服务端。
本实施例提供的对等网络连接装置适用于P2P网络系统中的服务端,当所述服务端处于私网中时,服务端将其私有端口映射的路由器的公网端口配置到端口信息中,例如,当服务端处于公司局域网中,服务端将其端口5000映射到路由器的端口8000,路由器的端口8000的地址等信息将配置到端口信息。信息上报模块22中,服务端的端口信息和资源信息将通过UTP、HTTP、Websocket协议中的任意一中上报至P2P服务器,请求端将从所述P2P服务器中获取到服务端的端口信息以及资源信息,并根据服务端的资源信息判断是否发送向其发送对等网络连接请求,如果服务端中缓存有请求端所需的资源,则请求端会根据服务端的端口信息获知服务端对应的路由器的公网端口,请求端的对等网络连接请求将发送至服务端对应的路由器的公网端口,路由器会自动将请求端的对等网络连接请求转发至服务端。
响应模块23接收到路由器转发的请求端的对等网络连接请求后,如果同意建立连接,则将应答消息通过路由器的公网端口转发至请求端,在请求端收到服务端的应答消息后,请求端和服务端可成功建立对等网络连接,并可开始双向传输资源。
所述信息生成模块21中私有端口和路由器的公网端口的映射关系建立可采用多种方式,以下再以一实施例对信息生成模块21进行详细说明。
本实施例中,所述信息生成模块21,用于根据所述路由器为所述服务端的私有端口分配的公网端口生成端口信息。
路由器可根据其各公网端口的闲置情况自动为处于私网中的各终端分配公网端口,并将公网端口与终端的私有端口的映射关系反馈至终端,本实施例中,信息生成模块21根据获知的其私有端口与路由器的公网端口的映射关系,将其私有端口映射的路由器的公网端口的信息生成端口信息。例如,可采用UPNP协议进行网络地址转换,将所述服务端的私有端口的网络地址映射到路由器的公网端口,并将所述路由器的公网端口的网络地址配置到所述端口信息中。
本实施例中,还可由处于私网中的服务端通过UPNP协议请求路由器提供一公网端口以进行服务端私有端口的映射。请求端发送对等连接请求时,将根据所述服务端的端口信息中的路由器的公网端口的网络地址将所述对等网络连接请求发送至所述路由器的公网端口,公网端口则将所述对等网络连接请求转发至服务端,从而所述服务端接收到所述请求端的对等网络连接请求。
本发明实施例针对服务端处于私网中的场景,提供了一种服务端接收请求端的对等网络连接请求,并成功向请求端反馈应答消息以实现建立与请求端的对等网络连接的技术方案,为P2P网络系统中各终端处于不同网络场景中时提供了一种补充的网络连接方式,使得各终端可不受私网的限制,发挥服务端的功能,使得P2P网络系统中的资源共享更加方便,扩大了资源共享的适用范围。
参考图8,本发明实施例提供一种对等网络连接装置,配置在P2P网络系统的路由器中,包括:
请求接收模块31,用于接收请求端发送的对等网络连接请求,所述对等网络连接请求由所述请求端在获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息后,根据所述端口信息包括的服务端的私有端口映射的路由器的公网端口,向所述路由器的公网端口发送的;
转发模块32,用于根据所述路由器的公网端口映射的所述服务端的私有端口将所述对等网络连接请求转发至所述服务端;
所述转发模块32,还用于接收所述服务端发送的响应所述请求端发送的对等网络连接请求的应答消息,并将所述应答消息转发至所述请求端,以便于所述请求端在接收到所述路由器转发的所述服务端的应答消息后,建立与所述服务端的对等网络连接。
本实施例发明实施例提供的对等网络连接装置适用于P2P网络系统中的路由器,路由器接收请求端发送的对等网络连接请求,并将接收到的对等网络连接请求转发至服务端。由请求端先根据P2P服务器提供的包含请求端所需资源的服务端的端口信息获取到服务端对应的路由器的公网端口,之后再根据获取到的端口信息将对等网络连接请求发送至路由器的公网端口,路由器在接收到请求端发送的对等网络请求后,根据路由器的公网端口与服务端的私有端口的映射关系,将对等网络连接请求转发至服务端。
服务端在接收到对等网络连接请求后,会发出响应所述对等网络连接请求的应答消息,服务端发出的应答消息将发送至路由器的公网端口,路由器在会自动将服务器发送的应答消息转发至请求端,至此,在路由器的转发帮助下,请求端和服务端成功建立起对等网络连接,并可进行双向的资源共享,请求端与服务端进行资源共享过程中,路由器可依然承担转发的功能,以保证请求端和服务端的顺畅通信。
本发明实施例还提供一种对等网络连接系统,包括请求端、服务端和路由器,其中所述请求端用于根据图1和2所示的对等网络连接方法向服务端发起对等网络连接,所述服务端用于根据图3所示的对等网络连接方法响应所述请求端的对等网络连接请求,所述路由器用于根据图4所示的对等网络连接方法转发所述请求端的对等网络请求及服务端的应答消息。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种对等网络连接方法,其特征在于,包括:
请求端获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息,所述端口信息包括服务端的私有端口映射的路由器的公网端口;
所述请求端向所述路由器的公网端口发送对等网络连接请求,由所述路由器根据所述路由器的公网端口映射的所述服务端的私有端口将所述对等网络连接请求转发至所述服务端;
所述请求端在接收到所述路由器转发的所述服务端响应所述对等网络连接请求的应答消息后,建立与所述服务端的对等网络连接。
2.根据权利要求1所述的方法,其特征在于,所述建立与所述服务端的对等网络连接之后,进一步包括:
所述请求端根据所述端口信息包括的服务端的私有端口映射的路由器的公网端口,接收所述路由器转发的所述服务端发送的资源。
3.一种对等网络连接方法,其特征在于,包括:
服务端根据其私有端口映射的路由器的公网端口生成端口信息;
所述服务端将资源信息及端口信息上报至P2P服务器;
所述服务端在接收到请求端发送的对等网络连接请求时,将响应所述对等网络连接请求的应答消息通过所述服务端的私有端口映射的所述路由器的公网端口转发至所述请求端,并建立与所述请求端的对等网络连接;
其中,所述对等网络连接请求由所述请求端在获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息后,根据所述端口信息包括的服务端的私有端口映射的路由器的公网端口,向所述路由器的公网端口发送,并由所述路由器根据所述路由器的公网端口映射的所述服务端的私有端口转发至所述服务端。
4.根据权利要求3所述的方法,其特征在于,所述服务端根据其私有端口映射的路由器的公网端口生成端口信息,包括:
所述服务端根据所述路由器为所述服务端的私有端口分配的公网端口生成端口信息。
5.一种对等网络连接方法,其特征在于,包括:
路由器接收请求端发送的对等网络连接请求,所述对等网络连接请求由所述请求端在获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息后,根据所述端口信息包括的服务端的私有端口映射的路由器的公网端口,向所述路由器的公网端口发送的;
所述路由器根据所述路由器的公网端口映射的所述服务端的私有端口将所述对等网络连接请求转发至所述服务端;
所述路由器接收所述服务端发送的响应所述请求端发送的对等网络连接请求的应答消息,并将所述应答消息转发至所述请求端,以便于所述请求端在接收到所述路由器转发的所述服务端的应答消息后,建立与所述服务端的对等网络连接。
6.一种对等网络连接装置,其特征在于,包括:
信息获取模块,用于获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息,所述端口信息包括服务端的私有端口映射的路由器的公网端口;
连接请求模块,用于向所述路由器的公网端口发送对等网络连接请求,由所述路由器根据所述路由器的公网端口映射的所述服务端的私有端口将所述对等网络连接请求转发至所述服务端;
连接建立模块,用于在接收到所述路由器转发的所述服务端响应所述对等网络连接请求的应答消息后,建立与所述服务端的对等网络连接。
7.根据权利要求6所述的装置,其特征在于,还包括:
数据传输模块,用于根据所述端口信息包括的服务端的私有端口映射的路由器的公网端口,接收所述路由器转发的所述服务端发送的资源。
8.一种对等网络连接装置,其特征在于,包括:
信息生成模块,用于根据其私有端口映射的路由器的公网端口生成端口信息;
信息上报模块,用于将资源信息及端口信息上报至P2P服务器;
响应模块,用于在接收到请求端发送的对等网络连接请求时,将响应所述对等网络连接请求的应答消息通过所述服务端的私有端口映射的所述路由器的公网端口转发至所述请求端,并建立与所述请求端的对等网络连接;
其中,所述对等网络连接请求由所述请求端在获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息后,根据所述端口信息包括的服务端的私有端口映射的路由器的公网端口,向所述路由器的公网端口发送,并由所述路由器根据所述路由器的公网端口映射的所述服务端的私有端口转发至所述服务端。
9.根据权利要求8所述的装置,其特征在于,所述信息生成模块,用于:
根据所述路由器为所述服务端的私有端口分配的公网端口生成端口信息。
10.一种对等网络连接装置,其特征在于,包括:
请求接收模块,用于接收请求端发送的对等网络连接请求,所述对等网络连接请求由所述请求端在获取P2P服务器提供的包含所述请求端所需资源的服务端的端口信息后,根据所述端口信息包括的服务端的私有端口映射的路由器的公网端口,向所述路由器的公网端口发送的;
转发模块,用于根据所述路由器的公网端口映射的所述服务端的私有端口将所述对等网络连接请求转发至所述服务端;
所述转发模块,还用于接收所述服务端发送的响应所述请求端发送的对等网络连接请求的应答消息,并将所述应答消息转发至所述请求端,以便于所述请求端在接收到所述路由器转发的所述服务端的应答消息后,建立与所述服务端的对等网络连接。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201511020640.XA CN105897853A (zh) | 2015-12-29 | 2015-12-29 | 一种对等网络连接方法及装置 |
| PCT/CN2016/096010 WO2017113816A1 (zh) | 2015-12-29 | 2016-08-19 | 一种对等网络连接方法及装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201511020640.XA CN105897853A (zh) | 2015-12-29 | 2015-12-29 | 一种对等网络连接方法及装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN105897853A true CN105897853A (zh) | 2016-08-24 |
Family
ID=57002268
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201511020640.XA Pending CN105897853A (zh) | 2015-12-29 | 2015-12-29 | 一种对等网络连接方法及装置 |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN105897853A (zh) |
| WO (1) | WO2017113816A1 (zh) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106791968A (zh) * | 2016-11-15 | 2017-05-31 | 武汉斗鱼网络科技有限公司 | 一种数据下载方法和装置 |
| CN109819336A (zh) * | 2019-01-31 | 2019-05-28 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种基于播放缓存大小分片下载的方法及系统 |
| CN109936602A (zh) * | 2017-12-18 | 2019-06-25 | 厦门本能管家科技有限公司 | 一种基于实时推送的p2p网络系统 |
| CN113364865A (zh) * | 2021-06-03 | 2021-09-07 | 湖南快乐阳光互动娱乐传媒有限公司 | 资源的获取方法、装置、可读介质以及设备 |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112019625B (zh) * | 2020-08-31 | 2023-01-31 | 重庆紫光华山智安科技有限公司 | 基于websocket消息推送方法、系统、设备及介质 |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101252605A (zh) * | 2008-04-03 | 2008-08-27 | 杭州华三通信技术有限公司 | 穿越网络地址转换设备的多媒体通信方法、系统及装置 |
| CN101355568A (zh) * | 2008-09-03 | 2009-01-28 | 中兴通讯股份有限公司 | 一种静态pat支持绑定路由器接口的方法及系统 |
| CN101369959A (zh) * | 2007-08-14 | 2009-02-18 | 中兴通讯股份有限公司 | 一种支持点对点业务的网络地址转换穿越方法 |
| US20110317554A1 (en) * | 2010-06-28 | 2011-12-29 | Microsoft Corporation | Distributed and Scalable Network Address Translation |
| CN104426726A (zh) * | 2013-09-11 | 2015-03-18 | 郑州朗鑫智能电子科技有限公司 | 一种保护用户隐私和信息安全的智能家居系统 |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101699801B (zh) * | 2009-10-30 | 2011-09-28 | 孙喜明 | 一种数据传输方法及传输数据的虚拟对等网络系统 |
| CN102055816A (zh) * | 2010-12-28 | 2011-05-11 | 华为技术有限公司 | 一种通信方法、业务服务器、中间设备、终端及通信系统 |
| EP2671367B1 (en) * | 2011-02-01 | 2018-04-18 | Telefonaktiebolaget LM Ericsson (publ) | Routing traffic towards a mobile node |
-
2015
- 2015-12-29 CN CN201511020640.XA patent/CN105897853A/zh active Pending
-
2016
- 2016-08-19 WO PCT/CN2016/096010 patent/WO2017113816A1/zh not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101369959A (zh) * | 2007-08-14 | 2009-02-18 | 中兴通讯股份有限公司 | 一种支持点对点业务的网络地址转换穿越方法 |
| CN101252605A (zh) * | 2008-04-03 | 2008-08-27 | 杭州华三通信技术有限公司 | 穿越网络地址转换设备的多媒体通信方法、系统及装置 |
| CN101355568A (zh) * | 2008-09-03 | 2009-01-28 | 中兴通讯股份有限公司 | 一种静态pat支持绑定路由器接口的方法及系统 |
| US20110317554A1 (en) * | 2010-06-28 | 2011-12-29 | Microsoft Corporation | Distributed and Scalable Network Address Translation |
| CN104426726A (zh) * | 2013-09-11 | 2015-03-18 | 郑州朗鑫智能电子科技有限公司 | 一种保护用户隐私和信息安全的智能家居系统 |
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106791968A (zh) * | 2016-11-15 | 2017-05-31 | 武汉斗鱼网络科技有限公司 | 一种数据下载方法和装置 |
| CN106791968B (zh) * | 2016-11-15 | 2019-11-05 | 武汉斗鱼网络科技有限公司 | 一种数据下载方法和装置 |
| CN109936602A (zh) * | 2017-12-18 | 2019-06-25 | 厦门本能管家科技有限公司 | 一种基于实时推送的p2p网络系统 |
| CN109936602B (zh) * | 2017-12-18 | 2022-03-11 | 本无链科技(深圳)有限公司 | 一种基于实时推送的p2p网络系统 |
| CN109819336A (zh) * | 2019-01-31 | 2019-05-28 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种基于播放缓存大小分片下载的方法及系统 |
| CN109819336B (zh) * | 2019-01-31 | 2020-12-04 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种基于播放缓存大小分片下载的方法及系统 |
| CN113364865A (zh) * | 2021-06-03 | 2021-09-07 | 湖南快乐阳光互动娱乐传媒有限公司 | 资源的获取方法、装置、可读介质以及设备 |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2017113816A1 (zh) | 2017-07-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR102514250B1 (ko) | 모바일 에지 컴퓨팅 노드를 선택하기 위한 방법, 장치 및 시스템 | |
| KR101560601B1 (ko) | Stun을 사용하여 생성된 세션의 정책 서비스 시스템 아키텍처 | |
| US8307024B2 (en) | Assisted peer-to-peer media streaming | |
| CN106464685A (zh) | 服务器资源的自适应分配 | |
| WO2016107454A1 (en) | Turn relay service reuse for nat traversal during media session resumption | |
| WO2015124045A1 (zh) | 一种通道建立的方法和设备 | |
| CN109842567B (zh) | 数据分发方法以及分发服务器 | |
| CN105897853A (zh) | 一种对等网络连接方法及装置 | |
| CN115865878B (zh) | 一种媒体流的传输控制方法、装置、存储介质和电子设备 | |
| EP2282460B1 (en) | Document transmission realizing method, apparatus and user device for message business | |
| US20100257257A1 (en) | Delivery server, content delivery method in delivery server and multicast server, content delivery method in multicast server | |
| CN101567769A (zh) | 数据重传方法、系统及对等节点 | |
| US11671487B1 (en) | Port prediction for peer-to-peer communications | |
| CN101662508B (zh) | 基于点对点协议数据传输的方法、装置和系统 | |
| CN102170456A (zh) | 对等网络中获取内容的方法、装置和系统 | |
| CN102413052A (zh) | 一种接入网络的方法、装置及系统 | |
| CN102439946B (zh) | 数据传输方法和设备 | |
| CN102244687A (zh) | 获取多地址信息的方法、装置和系统 | |
| CN111669333A (zh) | 数据传输方法、装置、计算设备和存储介质 | |
| EP4231607A1 (en) | Data transmission method and communication apparatus | |
| WO2016095510A1 (zh) | 一种路径选择方法、设备及系统 | |
| CN101471954A (zh) | 实现网络服务的方法、网络服务实体和智能网络系统 | |
| CN103188167B (zh) | 业务质量保障方法、装置和系统 | |
| US20150200980A1 (en) | Hybrid Client/Server Online Conference Session Management | |
| KR101089510B1 (ko) | 데이터 전송 방법, 다운로드 클라이언트의 동작 방법, 그리고 네트워크 서버의 동작 방법 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160824 |
|
| WD01 | Invention patent application deemed withdrawn after publication |