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 işlemi, 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 döneminde belki de en önemli standartlardan biri olan WebRTC'nin tamamlandığını gösteriyor.

İzledikleriniz

WebRTC, genellikle görüntülü görüşmeler için kullanılan tarayıcılara, mobil uygulamalara ve masaüstü uygulamalarına gerçek zamanlı iletişim özellikleri sunan bir platformdur. Platform, kapsamlı bir teknoloji ve standartlar grubundan oluşur. Google, tarayıcıda çalıştırılamayan Adobe Flash ve masaüstü uygulamalarına alternatif olarak WebRTC'yi 2009 yılında oluşturma fikrini başlattı. Tarayıcı tabanlı önceki nesil ürünler, lisanslı ve özel teknoloji kullanılarak geliştirildi. Bu teknolojiyle Hangouts da dahil çeşitli ürünler geliştirildi. Google daha sonra teknolojiyi lisansladığı şirketleri satın aldı ve 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. Diğer tarayıcı tedarikçileri ve Mozilla, Microsoft, Cisco ve Ericsson gibi sektör liderleriyle birlikte WebRTC hem W3C hem de IETF'de standartlaştırıldı. 2013'te Mozilla ve Google, tarayıcıları arasında video görüşmesi yapılmasını gösterdi. Standardın geliştirilmesiyle birlikte, mimariyle ilgili pek çok tartışma, tarayıcılar arasında uygulama farklılıklarına yol açmış, uyumluluk ve birlikte çalışabilirliği zorlaştırmıştır. Standart son yıllarda kesin hale geldiğinden bu anlaşmazlıkların çoğu nihayetinde çözüldü. Artık WebRTC spesifikasyonuna eksiksiz bir dizi platform testi eşlik etmektedir. Uyumlulukla ilgili araçlar ve tarayıcılar uygulamalarını buna göre büyük ölçüde uyarlamıştır. Bu durum, web geliştiricilerinin hizmetlerini farklı tarayıcı uygulamalarına ve özellik değişikliklerine sürekli olarak benimsemek zorunda olduğu zorlu bir dönemin sonunu getiriyor.

Mimari ve işlevsellik

RTCPeerConnection API, WebRTC spesifikasyonunun merkezi bölümüdür. RTCPeerConnection, eşler arası protokol kullanarak iletişim kurmak için farklı uç noktalardaki iki uygulamayı birbirine bağlar. PeerConnection API, kamera ve mikrofona erişmek için getUserMedia ve ekran içeriğini yakalamak için getDisplayMedia ile yakın etkileşim içindedir. WebRTC, DataChannel üzerinden rastgele ikili verilerin yanı sıra ses ve/veya video içeriği barındıran akışları gönderip almanıza olanak tanır. Ses ve video işleme, kodlama ve kodunu çözme işlemleri için kullanılan medya işlevi, herhangi bir WebRTC uygulamasının temelini oluşturur. WebRTC, çeşitli ses codec'lerini destekler. En çok kullanılan ve çok yönlü ses codec'i Opus'tur. WebRTC uygulamaları, video işlemek için Google'ın kullanımı ücretsiz VP8 video codec'ini ve H.264'ü desteklemek için gereklidir. WebRTC bağlantıları her zaman şifrelenir. Bu işlem, DTLS ve SRTP olmak üzere mevcut iki protokol aracılığıyla gerçekleştirilir. WebRTC, video codec'leri (VP8, H264), ağ geçişi (ICE), aktarımdan (RTP, SCTP) medya açıklaması protokollerine (SDP) kadar ağırlıklı olarak mevcut standartlardan ve teknolojilerden yararlanır. Bu 50'den fazla RFC'de birbirine bağlıdır.

Kullanım örnekleri: birkaç milisaniye olduğunda

WebRTC; uzaktan ameliyat, sistem izleme ve otonom araçların uzaktan kontrolü gibi zaman açısından kritik uygulamalarda ve arabelleğe almanın mümkün olmadığı UDP'de oluşturulan sesli veya görüntülü görüşmelerde yaygın olarak kullanılır. Google, Facebook, Cisco, RingCentral ve Jitsi gibi şirketlerin sunduğu tarayıcı tabanlı görüntülü görüşme hizmetlerinin neredeyse tamamı WebRTC kullanmaktadır. Google Stadia ve NVIDIA GeForce NOW, oyun akışını buluttan web tarayıcısına aktarmak için WebRTC kullanıyor.

Pandemic, görüntülü görüşme performansına odaklanıyor

Geçtiğimiz yıl WebRTC, tarayıcı içinden yapılan video görüşmesi sayısının artması nedeniyle Chrome'daki kullanım oranını 100 kat artırdı. Görüntülü görüşmenin pandemi sırasında birçok insanın hayatının önemli bir parçası haline geldiğini fark eden tarayıcı tedarikçileri, görüntülü görüşmenin kullandığı teknolojileri optimize etmeye başladı. Çalışanlar ve öğrenciler evden çalışmaya ve çalışmaya başladığında, büyük toplantılar gerektiren kaynaklar ve görüntülü toplantılardaki video efektleri yaygınlaştığından bu durum özellikle önemliydi. Geçtiğimiz yıl Chrome, görüntülü görüşmeler için pili% 30'a varan oranda daha kullanışlı hale getirdi. Yoğun kullanım senaryolarında ise daha fazla optimizasyon yapılacak. Mozilla, Apple ve Microsoft, özellikle de artık resmî standarda uyduklarından emin olmak adına WebRTC'yi pandemi boyunca uygularken önemli iyileştirmeler yaptı.

WebRTC'nin geleceği

WebRTC artık W3C standardı olarak tamamlanmış olsa da iyileştirmeler yapmaya devam etmektedir. Bant genişliğinin% 50'sine kadar 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 akışlı video kalitesini iyileştirmesi beklenmektedir. WebRTC NV, yeni kullanım alanlarını etkinleştirmek için tamamlayıcı API'ler oluşturma girişimini bir araya getirir. Bunlar, Ölçeklenebilir Video Kodlama gibi mevcut işlevler ve alt düzey bileşenlere erişim sağlayan API'ler üzerinde daha fazla kontrol sağlamak için mevcut API'lere yapılan uzantılardan oluşur. İkincisi ise yüksek performanslı özel WebAssembly bileşenlerini entegre ederek web geliştiricilerine yenilik yapma konusunda daha fazla esneklik sağlar. Gelişen 5G ağları ve daha etkileşimli hizmetlere yönelik taleple birlikte, önümüzdeki yıl WebRTC'yi destekleyen hizmetlerde artışın devam etmesini bekliyoruz.