WebRTC เป็นมาตรฐาน W3C และ IETF แล้ว

ภาพรวมคร่าวๆ เกี่ยวกับประวัติ สถาปัตยกรรม กรณีการใช้งาน และอนาคตของ WebRTC

Huib Kleinhout
Huib Kleinhout

การกำหนดมาตรฐานเว็บเป็นกระบวนการที่ใช้เวลานานซึ่งช่วยให้มั่นใจว่าเบราว์เซอร์ต่างๆ จะมีประโยชน์ สอดคล้องกัน และใช้งานร่วมกันได้ วันนี้ W3C และ IETF ได้ประกาศว่า WebRTC ซึ่งเป็นมาตรฐานที่สำคัญที่สุดมาตรฐานหนึ่งในช่วงการแพร่ระบาดได้เสร็จสมบูรณ์แล้ว

ประวัติ

WebRTC เป็นแพลตฟอร์มที่ช่วยให้เบราว์เซอร์ แอปบนอุปกรณ์เคลื่อนที่ และแอปบนเดสก์ท็อปมีความสามารถในการสื่อสารแบบเรียลไทม์ ซึ่งมักใช้สำหรับวิดีโอคอล แพลตฟอร์มนี้ประกอบด้วยชุดเทคโนโลยีและมาตรฐานที่ครอบคลุม Google ริเริ่มแนวคิดในการสร้าง WebRTC ในปี 2009 เพื่อใช้เป็นทางเลือกแทน Adobe Flash และแอปพลิเคชันบนเดสก์ท็อปที่ไม่สามารถทำงานในเบราว์เซอร์ ผลิตภัณฑ์รุ่นก่อนๆ ที่ใช้เบราว์เซอร์สร้างขึ้นจากเทคโนโลยีที่เป็นกรรมสิทธิ์ที่ได้รับอนุญาต ผลิตภัณฑ์ต่างๆ สร้างขึ้นด้วยเทคโนโลยีนี้ รวมถึง Hangouts จากนั้น Google ได้ซื้อบริษัทที่อนุญาตให้ใช้เทคโนโลยีดังกล่าวและทำให้เทคโนโลยีนี้พร้อมใช้งานเป็นโปรเจ็กต์ WebRTC แบบโอเพนซอร์ส โค้ดเบสนี้ผสานรวมอยู่ใน Chrome และแอปพลิเคชันส่วนใหญ่ที่ใช้ WebRTC จะใช้โค้ดเบสนี้ เราได้เริ่มมาตรฐาน WebRTC ทั้งใน W3C และ IETF ร่วมกับผู้ให้บริการเบราว์เซอร์รายอื่นๆ และผู้นำอุตสาหกรรม เช่น Mozilla, Microsoft, Cisco และ Ericsson ในปี 2013 Mozilla และ Google ได้สาธิตวิดีโอคอลระหว่างเบราว์เซอร์ ตลอดการพัฒนามาตรฐานนี้ การสนทนาเกี่ยวกับสถาปัตยกรรมหลายครั้งส่งผลให้การใช้งานแตกต่างกันไปในเบราว์เซอร์ต่างๆ และทำให้เกิดปัญหาด้านความเข้ากันได้และความสามารถในการทำงานร่วมกัน ในที่สุดข้อขัดแย้งเหล่านี้ก็ได้รับการแก้ไขเมื่อมาตรฐานได้รับการสรุปในช่วงหลายปีที่ผ่านมา ตอนนี้ข้อกำหนดของ WebRTC มาพร้อมกับชุดการทดสอบแพลตฟอร์มที่สมบูรณ์และเครื่องมือเพื่อจัดการกับความเข้ากันได้ และเบราว์เซอร์ส่วนใหญ่ได้ปรับการใช้งานให้สอดคล้องกับข้อกำหนดดังกล่าวแล้ว การดำเนินการนี้เป็นการสิ้นสุดช่วงเวลาที่ท้าทายซึ่งนักพัฒนาเว็บต้องปรับบริการของตนให้เข้ากับการใช้งานเบราว์เซอร์และการเปลี่ยนแปลงข้อกำหนดต่างๆ อย่างต่อเนื่อง

สถาปัตยกรรมและฟังก์ชันการทำงาน

RTCPeerConnection API เป็นหัวใจสำคัญของข้อกำหนด WebRTC RTCPeerConnection จัดการการเชื่อมต่อแอปพลิเคชัน 2 รายการในปลายทางที่แตกต่างกันเพื่อสื่อสารโดยใช้โปรโตคอลแบบ peer-to-peer PeerConnection API โต้ตอบกับ getUserMedia อย่างใกล้ชิดเพื่อเข้าถึงกล้องและไมโครโฟน และกับ getDisplayMedia เพื่อบันทึกเนื้อหาหน้าจอ WebRTC ช่วยให้คุณส่งและรับสตรีมที่มีเนื้อหาเสียงและ/หรือวิดีโอ รวมถึงข้อมูลไบนารีที่กำหนดเองผ่าน DataChannel ได้ ฟังก์ชันการทำงานของสื่อสําหรับการประมวลผล การเข้ารหัส และการถอดรหัสเสียงและวิดีโอเป็นหัวใจสําคัญของการใช้งาน WebRTC WebRTC รองรับตัวแปลงรหัสเสียงหลายประเภท โดย Opus เป็นรูปแบบที่ใช้มากที่สุดและมีความอเนกประสงค์ การติดตั้งใช้งาน WebRTC ต้องรองรับทั้งตัวแปลงรหัสวิดีโอ VP8 ของ Google ที่ใช้ได้ฟรีและ H.264 สำหรับประมวลผลวิดีโอ การเชื่อมต่อ WebRTC ได้รับการเข้ารหัสเสมอ ซึ่งทำได้ผ่านโปรโตคอล 2 รายการที่มีอยู่ ได้แก่ DTLS และ SRTP WebRTC อาศัยมาตรฐานและเทคโนโลยีที่มีอยู่เป็นอย่างมาก ตั้งแต่ตัวแปลงรหัสวิดีโอ (VP8, H264), การข้ามเครือข่าย (ICE), การรับส่ง (RTP, SCTP) ไปจนถึงโปรโตคอลคำอธิบายสื่อ (SDP) ซึ่งเชื่อมโยงกันอยู่ใน RFC กว่า 50 รายการ

กรณีการใช้งาน: เมื่อต้องดำเนินการภายในไม่กี่มิลลิวินาที

WebRTC ใช้ในแอปพลิเคชันที่ต้องดำเนินการอย่างทันท่วงทีอย่างกว้างขวาง เช่น การผ่าตัดจากระยะไกล การตรวจสอบระบบ และการควบคุมรถไร้คนขับจากระยะไกล รวมถึงการโทรด้วยเสียงหรือวิดีโอที่สร้างขึ้นบน UDP ซึ่งไม่สามารถบัฟเฟอร์ได้ บริการวิดีโอคอลที่ใช้เบราว์เซอร์เกือบทั้งหมดจากบริษัทต่างๆ เช่น Google, Facebook, Cisco, RingCentral และ Jitsi จะใช้ WebRTC Google Stadia และ NVIDIA GeForce NOW ใช้ WebRTC เพื่อรับสตรีมเกมเพลย์จากระบบคลาวด์ไปยังเว็บเบราว์เซอร์โดยไม่มีการหน่วงเวลา

โรคระบาดทำให้ผู้คนให้ความสำคัญกับประสิทธิภาพของวิดีโอคอล

ในช่วงปีที่ผ่านมา การใช้งาน WebRTC ใน Chrome เพิ่มขึ้น 100 เท่าเนื่องจากการโทรวิดีโอจากในเบราว์เซอร์มีการใช้งานมากขึ้น ผู้ให้บริการเบราว์เซอร์เริ่มเพิ่มประสิทธิภาพเทคโนโลยีที่ใช้ในการวิดีโอคอลแล้ว เนื่องจากตระหนักดีว่าวิดีโอคอลได้กลายเป็นส่วนสำคัญของชีวิตผู้คนจำนวนมากในช่วงการแพร่ระบาด ซึ่งสำคัญอย่างยิ่งเนื่องจากการประชุมขนาดใหญ่และเอฟเฟกต์วิดีโอในการประชุมทางวิดีโอต้องใช้ทรัพยากรมากขึ้นเมื่อพนักงานและนักเรียนเริ่มทำงานและเรียนจากที่บ้าน ในช่วงปีที่ผ่านมา Chrome ประหยัดแบตเตอรี่มากขึ้นถึง 30% สำหรับการโทรวิดีโอคอล และจะมีการเพิ่มประสิทธิภาพมากขึ้นสำหรับการใช้งานที่หนัก Mozilla, Apple และ Microsoft ได้ทําการปรับปรุงที่สําคัญในการใช้งาน WebRTC ในช่วงการแพร่ระบาด โดยเฉพาะการปฏิบัติตามมาตรฐานที่กําหนดขึ้นแล้วในปัจจุบัน

อนาคตของ WebRTC

แม้ว่า WebRTC จะกลายเป็นมาตรฐาน W3C แล้ว แต่เราก็ยังคงปรับปรุงต่อไป ตัวแปลงรหัสวิดีโอ AV1 ใหม่ซึ่งประหยัดแบนด์วิดท์ได้สูงสุด 50% กำลังพร้อมใช้งานใน WebRTC และเว็บเบราว์เซอร์ การปรับปรุงอย่างต่อเนื่องในฐานโค้ดโอเพนซอร์สคาดว่าจะช่วยลดความล่าช้าและปรับปรุงคุณภาพของวิดีโอที่สตรีมได้ WebRTC NV รวบรวมโครงการริเริ่มเพื่อสร้าง API เสริมเพื่อเปิดใช้ Use Case ใหม่ๆ ซึ่งประกอบด้วยส่วนขยายของ API ที่มีอยู่เพื่อให้ควบคุมฟังก์ชันที่มีอยู่ได้มากขึ้น เช่น การเข้ารหัสวิดีโอแบบปรับขนาดได้ รวมถึง API ที่ให้สิทธิ์เข้าถึงคอมโพเนนต์ระดับล่าง ซึ่งช่วยให้นักพัฒนาเว็บมีความยืดหยุ่นมากขึ้นในการสร้างสรรค์นวัตกรรมด้วยการผสานรวมคอมโพเนนต์ WebAssembly ที่ปรับแต่งเองและมีประสิทธิภาพสูง เครือข่าย 5G ที่กำลังจะเปิดตัวและความต้องการบริการแบบอินเทอร์แอกทีฟมากขึ้นทำให้เราคาดว่าจะเห็นบริการที่สร้างขึ้นบน WebRTC เพิ่มขึ้นอย่างต่อเนื่องในปีหน้า