其他分享
首页 > 其他分享> > 【转载】 P2P(打洞)方案 及webrtc实现

【转载】 P2P(打洞)方案 及webrtc实现

作者:互联网

P2P(打洞)方案

反向链接技术 —— 通信的双方只有一方位于NAT之后

A:位于NAT之后
B:拥有外网地址
A可以主动向B进行连接,但B不能主动连接A,B需要给服务器发送请求,让服务器告知A,让A主动再去连接B(反向连接技术)

基于UDP的打洞

原理概述

1.中间服务器作用
1)公网服务器,位于NAT网关后面的client A和B都可以与一台已知的集中服务器建立连接,并通过这台集中服务器了解对方的信息并中转各自的信息
2)判断client是否位于NAT之后,client与server连接时,server会记录两对地址,一个是client自身IP和端口号,第二个是实际通信的IP和端口号,两个地址作对比后,就可以判断
2.P2P建立流程
1)A不知道如何与B发起连接,于是A给集中服务器发送消息,请求集中服务器帮助与客户端B的UDP连接
2)集中服务器将B的内外网地址发送给A,同时集中服务器将A的内外网地址发给B
3)当A收到B的地址后,A向B的地址发送UDP包,并且A会自动锁定第一个给出响应的B地址,B也是同理,此时即可连接

典型场景

两客户端位于同一NAT设备后面

标签:打洞,webrtc,地址,client,P2P,NAT,服务器,连接
来源: https://blog.csdn.net/commshare/article/details/122104486