- WebRTC音視頻實時互動技術:原理、實戰與源碼分析
- 李超編著
- 477字
- 2021-08-06 14:49:33
4.1 WebRTC一對一架構
在構建WebRTC一對一信令服務器之前,我們先從全局的角度來看一下WebRTC一對一架構是什么樣子的,這樣更有利于了解WebRTC信令服務器所處的位置。其架構圖如圖4.1所示。
WebRTC由四部分組成,分別為兩個WebRTC終端、一個信令服務器、一臺中繼服務器(STUN/TURN
)和兩個NAT
,這是最經典的一對一通信架構。其中,信令服務器與中繼服務器都在NAT外,也就是屬于外網。而兩個WebRTC終端在NAT內,屬于內網。
對于兩個WebRTC終端而言,它們是如何進行通信的呢?首先兩個終端在通信之前,都要先與信令服務器連接,即圖4.1中的步驟?。與服務端建立好連接后,通信的雙方就可以通過信令服務器彼此交換必要的信息了,比如告訴對方自己的外網IP地址和端口是多少等。
不過在交換信息之前,WebRTC終端還要與STUN/TURN服務器建立連接。這樣做的目的是通過STUN/TURN服務器獲得各自的外網IP地址和端口,即圖4.1中的步驟?。

圖4.1 WebRTC 1:1架構圖
WebRTC終端拿到自己的外網IP地址和端口后,再通過信令服務器交換給對方。當彼此獲得對方地址后,它們就可以嘗試NAT穿越,進行P2P連接了,也就是圖4.1中的步驟?。
[1] Session Traversal Utilities for NAT,NAT會話穿越實用工具協議。
[2] Traversal Using Relay NAT,通過中繼方式穿越NAT。
[3] Network Address Translation,網絡地址轉換。
推薦閱讀
- Oracle從入門到精通(第3版)
- Learning LibGDX Game Development(Second Edition)
- Microsoft Exchange Server PowerShell Cookbook(Third Edition)
- Software Defined Networking with OpenFlow
- 青少年美育趣味課堂:XMind思維導圖制作
- Animate CC二維動畫設計與制作(微課版)
- Web Application Development with MEAN
- WordPress Plugin Development Cookbook(Second Edition)
- Building Minecraft Server Modifications
- Getting Started with Greenplum for Big Data Analytics
- Vue.js 2 Web Development Projects
- 搞定J2EE:Struts+Spring+Hibernate整合詳解與典型案例
- Mastering ArcGIS Enterprise Administration
- Angular應用程序開發指南
- FPGA嵌入式項目開發實戰