Day04 如何通讯-网路协商

WebRTC 通讯

WebRTC 最常见的应用场景就是一对一的视讯通话,当我们准备和另一端的人进行点对点的连线,会遇到哪些问题呢?

  1. 必须要先知道要如何与对方连线
  2. 必须了解彼此支援哪些媒体格式

https://ithelp.ithome.com.tw/upload/images/20210918/20130062TrYitlRd1F.png

网路协商

今天先来了解网路协商的部分,前面说到通讯双方必须知道对方要如何连线,这样才能连通彼此,理想的网路状况如上图,浏览器都是透过外网ip做连线,这样就可以直接进行点对点的通讯。

https://ithelp.ithome.com.tw/upload/images/20210918/20130062h1mVU1ZmOI.png

但事情不是这麽简单的,真实的状况是大部分的电脑,都是处在区域网路中并且有防火墙,如上图,所以我们需要做以下两个处理

  1. 取得外网 IP 地址映射
  2. 通过 Signaling server 交换网路资讯。

透过 STUN server 可以取得外网ip 与 port,然後通过 Signaling server 告诉对方你可以怎麽连我,就可以连上线了,但是 STUN 并不是每次都能成功,NAT 有多种不同类型,如果无法打洞成功较需要 TURN server 来帮忙转传了,这边先挖个坑,後面我们更详细的来了解如何有效的进行 NAT 穿透,以及 NAT 分别有哪些类型。

总结

  1. 了解 WebRTC 如何进行通讯
  2. 通过 Signaling server 交换网路资讯进行连通

<<:  Day 4 如何规划拟定隐私三宝

>>:  Day 3 - Array 阵列组合技 (2)

Day 16:把做好的 HTML 加入 Angular 吧!

三天前,我们已成功把静态档案加入 Angular 的专案了,如果感到有点陌生,可以再到以下连结,重新...

Day 25. VR菜单3

连假就让我轻松点吧XDD,虽然平常内容也没有多到哪去哈哈。       If you are on ...

我与程序的距离-Day2

不难发现,问题在於该用什麽标准来做决定呢?梁晓声曾讲过,友谊,好比一瓶酒,封存的时间越长,价值则越高...

Day28. Blue Prism最安全的管家 -BP自动登入Gmail

有些人常常遇到紧张时刻密码就是打不好, 因此常常错失登入三次失败的机会, 被锁定帐密光是请IT协助就...

爱用iPhone的UI/UX设计师最恐怖

(这个标题有点耸动跟钓鱼,但不知道为什麽我就是很想用它,在文章开头先讲明。) 即使已经证实了苹果在i...