WebRTC artık bir W3C ve IETF standardı

WebRTC'nin geçmişine, mimarisine, kullanım alanlarına ve geleceğine kısa bir genel bakış.

Huib Kleinhout
Huib Kleinhout

Web standardı tanımlama süreci, tarayıcılar arasında kullanışlılık, tutarlılık ve uyumluluk sağlayan uzun bir süreçtir. Bugün W3C ve IETF, pandemi sırasındaki en önemli standartlardan biri olan WebRTC'nin tamamlandığını duyurdu.

Geçmiş

WebRTC, tarayıcılara, mobil uygulamalara ve masaüstü uygulamalarına genellikle görüntülü görüşme için kullanılan gerçek zamanlı iletişim özellikleri sunan bir platformdur. Platform, kapsamlı bir teknoloji ve standartlar grubundan oluşur. Google, 2009'da Adobe Flash ve tarayıcıda çalışamayan masaüstü uygulamalarına alternatif olarak WebRTC'yi oluşturma fikrini başlattı. Tarayıcı tabanlı önceki nesil ürünler, lisanslı tescilli teknoloji üzerine inşa edilmişti. Hangouts da dahil olmak üzere çeşitli ürünler bu teknolojiyle geliştirildi. Ardından Google, teknolojinin lisansını aldığı şirketleri satın aldı ve teknolojiyi açık kaynak WebRTC projesi olarak kullanıma sundu. Bu kod tabanı Chrome'a entegre edilmiştir ve WebRTC kullanan uygulamaların çoğu tarafından kullanılır. Mozilla, Microsoft, Cisco ve Ericsson gibi diğer tarayıcı tedarikçileri ve sektör liderleriyle birlikte WebRTC'nin standartlaştırılması hem W3C hem de IETF'de başlatıldı. 2013 yılında Mozilla ve Google, tarayıcıları arasında görüntülü görüşme yapmayı gösterdi. Standartın gelişimi sırasında yapılan birçok mimari tartışma, tarayıcılar arasında uygulama farklılıklarına yol açtı ve uyumluluğu ve birlikte çalışabilirliği olumsuz etkiledi. Standart son halini alırken bu anlaşmazlıkların çoğu çözüldü. WebRTC spesifikasyonuna artık uyumluluğu ele alacak tam bir platform testi ve araç seti eşlik ediyor. Tarayıcılarda da bu uyumluluğu sağlamak için büyük ölçüde gerekli uyarlamalar yapıldı. Bu, web geliştiricilerin hizmetlerini sürekli olarak farklı tarayıcı uygulamalarına ve teknik özellik değişikliklerine uyarlaması gereken zorlu bir dönemin sonunu getiriyor.

Mimari ve işlevsellik

RTCPeerConnection API, WebRTC spesifikasyonunun merkezi bir parçasıdır. RTCPeerConnection, eşler arası protokol kullanarak iletişim kurmak için farklı uç noktalardaki iki uygulamayı bağlamakla ilgilenir. PeerConnection API, kameraya ve mikrofona erişmek için getUserMedia ile, ekran içeriğini yakalamak için ise getDisplayMedia ile yakın bir şekilde etkileşim kurar. WebRTC, DataChannel üzerinden ses ve/veya video içeriği ile rastgele ikili veriler içeren akışlar göndermenize ve almanıza olanak tanır. Ses ve videoyu işleme, kodlama ve kod çözme için medya işlevi, tüm WebRTC uygulamalarının temelini oluşturur. WebRTC çeşitli ses codec'lerini destekler. Bunlardan en çok kullanılan ve çok yönlü olan codec Opus'tur. WebRTC uygulamalarının hem Google'ın ücretsiz VP8 video codec'ini hem de video işleme için H.264'ü desteklemesi gerekir. WebRTC bağlantıları her zaman şifrelenir. Bu işlem, mevcut iki protokol (DTLS ve SRTP) aracılığıyla gerçekleştirilir. WebRTC, video codec'leri (VP8, H264), ağ geçişi (ICE), aktarım (RTP, SCTP) ve medya açıklaması protokolleri (SDP) gibi mevcut standart ve teknolojilerden büyük ölçüde yararlanır. Bu, 50'den fazla RFC'de bir araya getirilmiştir.

Kullanım alanları: Milisaniyeler önemli olduğunda

WebRTC; uzaktan ameliyat, sistem izleme, otonom araçların uzaktan kontrolü ve arabelleğe alma işleminin mümkün olmadığı UDP tabanlı sesli veya görüntülü görüşmeler gibi zaman açısından kritik uygulamalarda yaygın olarak kullanılır. Google, Facebook, Cisco, RingCentral ve Jitsi gibi şirketlerin tarayıcı tabanlı görüntülü görüşme hizmetlerinin neredeyse tamamı WebRTC'yi kullanır. Google Stadia ve NVIDIA GeForce NOW, oyun akışını buluttan web tarayıcıya fark edilebilir bir gecikme olmadan aktarmak için WebRTC'yi kullanır.

Pandemi, görüntülü görüşme performansına odaklanmayı zorunlu kıldı

WebRTC, tarayıcıdan yapılan görüntülü görüşmelerin artması nedeniyle geçtiğimiz yıl Chrome'da kullanımda 100 kat artış yaşadı. Pandemi sırasında görüntülü görüşmenin birçok kişinin hayatının temel bir parçası haline geldiğini fark eden tarayıcı tedarikçileri, görüntülü görüşmenin bağlı olduğu teknolojileri optimize etmeye başladı. Bu durum, çalışanlar ve öğrenciler evden çalışmaya ve çalışmaya başladıklarında, kaynak kullanımı yüksek büyük toplantılar ve görüntülü toplantılardaki video efektleri daha yaygın hale geldiğinden özellikle önemliydi. Chrome, geçtiğimiz yıl görüntülü görüşme için pil kullanımını% 30'a varan oranda azalttı. Ağır kullanım senaryoları için daha fazla optimizasyon yapılacak. Mozilla, Apple ve Microsoft, pandemi sırasında WebRTC'yi uygulamalarında önemli iyileştirmeler yaptı. Özellikle de artık resmi bir standart olan WebRTC'ye uyma konusunda önemli adımlar attılar.

WebRTC'nin geleceği

WebRTC artık W3C standardı olarak tamamlanmış olsa da iyileştirmeler devam ediyor. Bant genişliğinde% 50'ye varan tasarruf sağlayan yeni video codec'i AV1, WebRTC ve web tarayıcılarında kullanıma sunuluyor. Açık kaynak kod tabanında yapılan sürekli iyileştirmelerin, gecikmeyi daha da azaltması ve aktarılabilen videonun kalitesini iyileştirmesi beklenmektedir. WebRTC NV, yeni kullanım alanları sağlamak için tamamlayıcı API'ler oluşturma girişimini bir araya getirir. Bunlar, Scalable Video Coding gibi mevcut işlevler üzerinde daha fazla kontrol sağlamak için mevcut API'lere eklenen uzantılardan ve alt düzey bileşenlere erişim sağlayan API'lerden oluşur. İkincisi, web geliştiricilerine yüksek performanslı özel WebAssembly bileşenlerini entegre ederek yenilik yapmaları için daha fazla esneklik sağlar. Gelişmekte olan 5G ağları ve daha etkileşimli hizmetlere yönelik taleple birlikte, önümüzdeki yıl WebRTC'yi temel alan hizmetlerin artmaya devam etmesini bekliyoruz.