Bir görüntülü görüşme yaptığınızda ya da tarayıcıdan bir ekran paylaştığınızda, büyük olasılıkla arka planda WebRTC çalışıyordur. Adı teknik görünse de fikri basit: iki cihazın, aradaki bir sunucuya muhtaç kalmadan birbirine doğrudan veri göndermesi. Bu yazıda bunun nasıl olduğunu, neden önemli olduğunu ve nerede sınırlarına takıldığını sade bir dille anlatıyoruz.
WebRTC (Web Real-Time Communication), tarayıcıların ve uygulamaların gerçek zamanlı ses, görüntü ve veri aktarabilmesi için geliştirilmiş açık bir standarttır. W3C ve IETF tarafından tanımlanır; Chrome, Firefox, Safari ve Edge'in güncel sürümlerinde yerleşik olarak gelir. Bu yüzden WebRTC kullanan bir hizmeti açmak için eklenti ya da program kurmanız gerekmez. Tarayıcınız zaten hazırdır.
WebRTC üç temel iş yapar: kamera, mikrofon veya ekran görüntüsünü yakalar; bu akışı karşı tarafa iletir; görüntünün yanında küçük veri mesajlarının gitmesi için ayrı bir kanal açar. Uzak masaüstü uygulamalarında fare ve klavye komutları genellikle bu veri kanalından taşınır.
P2P, "peer-to-peer" yani "eşten eşe" anlamına gelir. Klasik modelde iki cihaz konuşmak istediğinde her şey ortadaki bir sunucudan geçer: siz sunucuya gönderirsiniz, sunucu karşı tarafa iletir. P2P modelinde ise bağlantı kurulduktan sonra veri doğrudan iki cihaz arasında akar.
Bunu bir mektuplaşma gibi düşünebilirsiniz. Sunucu üzerinden bağlantıda her mektup önce bir postaneye uğrar, orada açılabilir, sonra yola devam eder. P2P'de ise iki kişi birbirinin adresini öğrenir ve mektubu doğrudan elden ele verir. Postaneye yalnızca ilk tanışmada, adres alışverişi için uğranır.
"Sunucusuz" denince her şeyin sihirli bir şekilde kendiliğinden olduğu düşünülmesin. İki cihazın birbirini bulabilmesi için kısa bir tanışma süreci gerekir:
🔐 Şifreleme isteğe bağlı değildir. WebRTC standardı şifrelemeyi zorunlu tutar: görüntü akışı SRTP ile, veri kanalı DTLS ile korunur. Anahtarlar iki cihaz arasında üretilir; şifresiz bir WebRTC bağlantısı kurmak standart olarak mümkün değildir. Ayrıntılar için WebRTC şifreleme yazımıza bakabilirsiniz.
Daha düşük gecikme. Veri en kısa yoldan gider. İstanbul'daki iki bilgisayar arasındaki görüntü, başka bir ülkedeki bir sunucuya gidip geri dönmek zorunda kalmaz. Uzak masaüstünde bu fark doğrudan hissedilir: fareyi oynattığınızda imlecin ekranda ne kadar çabuk karşılık verdiği, gecikmenin kendisidir.
Daha az aracı, daha az risk. Ortada içeriği gören bir sunucu olmadığında, o sunucunun ele geçirilmesi ya da kayıt tutması gibi bir risk de ortadan kalkar. Ekranınızda ne olduğunu yalnızca bağlantının iki ucu görür.
Kurulum gerektirmez. WebRTC tarayıcıda yerleşik olduğu için, yardım edeceğiniz kişiye "şu programı indir, kur, yönetici izni ver" demeniz gerekmez. Özellikle teknik bilgisi olmayan aile bireylerine destek verirken bu büyük kolaylıktır.
Ölçeklenebilir maliyet. Görüntü trafiği sunucudan geçmediği için hizmet sağlayıcının bant genişliği maliyeti düşer. Bu, ücretsiz sürüm sunabilmeyi mümkün kılan sebeplerden biridir.
| WebRTC P2P | Sunucu üzerinden aktarım | |
|---|---|---|
| Görüntü nereden geçer? | Doğrudan iki cihaz arasında | Her zaman ortadaki sunucudan |
| Gecikme | Genellikle düşük (en kısa yol) | Sunucunun konumuna bağlı |
| Kurulum | Tarayıcı yeterli | Çoğunlukla program kurulumu |
| Kısıtlı kurumsal ağlar | Aktarma sunucusu gerekebilir | Genellikle sorunsuz |
Dürüst olmak gerekirse, hayır. Bazı ağlar doğrudan bağlantıya izin vermez. Sıkı güvenlik duvarı kuralları olan kurumsal ağlar, bazı mobil operatörlerin kullandığı ağ yapıları ve iç içe geçmiş modemler, iki cihazın birbirine doğrudan ulaşmasını engelleyebilir.
Bu durumda WebRTC, TURN adı verilen bir aktarma sunucusuna başvurur. Veri bu sunucu üzerinden dolaşır, yani yol uzar ve gecikme biraz artar. Önemli olan şu: aktarma sunucusu yalnızca şifreli paketleri bir uçtan diğerine taşır. Anahtarlar iki cihazdadır, sunucu içeriği çözemez. Bağlantı yavaşlar ama gizlilik bozulmaz.
İkinci bir sınır, çok sayıda izleyicinin aynı ekrana bağlandığı durumlardır. P2P'de ekranı paylaşan cihaz her izleyiciye ayrı bir akış gönderir. İki üç kişi için sorun yoktur, ama izleyici sayısı arttıkça paylaşan tarafın yükleme hızı belirleyici hale gelir.
⚠️ Bağlantı kurulmuyorsa: Sorun genellikle bu ağ kısıtlamalarından birinden kaynaklanır. Basitten zora sıralı çözüm adımları için bağlantı sorunları rehberimize göz atın.
WebRTC P2P, uzak bağlantıda üç şeyi bir arada sunar: kurulum gerektirmeyen kolaylık, kısa yolun getirdiği hız ve standart gereği zorunlu şifreleme. Her ağda doğrudan bağlantı kurulamasa da, kurulamadığı durumlarda bile içerik şifreli kalır. Uzak masaüstü için iyi bir temel olmasının sebebi budur: hız ve gizlilik arasında seçim yapmak zorunda bırakmaz.