1. P2P穿透模块(pgLibConnect SDK):

P2P穿透的核心功能模块,直接提供底层P2P编程API,适用于深度使用P2P的场景。例如:摄像头、智能家居、物联网、NAS,各种嵌入式设备,以及配套的PC客户端和手机APP。如下图中“P2P模块”所示:

图1 把P2P穿透模块集成到视频监控系统中

2. P2P隧道模块(pgLibTunnel SDK)

P2P隧道模块是在P2P穿透模块的基础上,加上TCP与P2P之间的转换机制,提供通过P2P传输TCP流量的功能(TCP over P2P,或者称为P2P代理TCP),适用于使用TCP通信的场景。例如:连接数据库、传输文件(NAS)、连接企业服务器、连接WEB服务器、连接工作流、ERP等,以及连接各种基于TCP通信的应用。P2P隧道模块提供简单的集成编程API。“PP透客户端”是基于P2P隧道模块开发的。如下图中“P2P隧道”所示:

图2 通过P2P隧道访问WEB服务器

3. 两者优缺点比较:

1) P2P穿透模块:

P2P穿透模块 P2P隧道模块
优点1)使用范围广:因为是直接透传数据,所以任何类型数据都可以传输。

2)服务器配置简单:P2P服务器只是简单的P2P穿透握手,所以不需要对每个登陆的P2P客户端配置。

3)深度使用P2P通信,性能高,灵活。
1)可以作为一个独立的程序直接使用。在不能进行二次开发的情况,也能使用。

2) 也可以做简单集成打包到客户的应用程序里。

3) 直接透传TCP协议,很多基于TCP的程序,可以直接使用。
缺点 1)必须集成到客户的应用程序里面,必须进行二次开发调用P2P库的API发送接收数据。

2)如果在不能对客户的软件进行二次开发的情况下,不适用。
某些侦听端口固定,不能修改的TCP应用,不能使用。
建议使用场景P2P穿透是底层的网络协议,建议在项目初期确定组网方式时使用如果设备和客户端已经开发完毕,在已经可以在局域网访问,或者设备就是使用现成的协议,比如RTSP等,推荐使用隧道SDK

发表评论

邮箱地址不会被公开。 必填项已用*标注

+ 41 = 51