logologo
Ai badge logo

Bu madde yapay zeka desteği ile üretilmiştir.

WebSocket

Bilişim Ve İletişim Teknolojileri+1 Daha
fav gif
Kaydet
viki star outline
Ekran görüntüsü 2025-04-29 001556.png
WebSocket
Protokol Türü
TCP TabanlıSürekli Bağlantı
İletişim Modeli
Tam Çift Yönlü (Full-Duplex)
Başlangıç Protokolü
HTTP Üzerinden Upgrade
Standart Durumu
W3C Çalışma Taslağı
Veri Türleri
Metin (UTF-8)İkili (Binary) Veri
Kullanım Alanları
IoTOnline OyunlarAnlık MesajlaşmaFinansal Veriler

WebSocket, istemci ve sunucu arasında düşük gecikmeli, tam çift yönlü (full-duplex) bir iletişim sağlayan internet protokolüdür. HTTP protokolünden farklı olarak sürekli açık kalan bir TCP bağlantısı üzerinde veri alışverişine izin verir. Bu özellik, WebSocket’i anlık veri güncellemelerinin ve gerçek zamanlı etkileşimin gerekli olduğu uygulamalarda tercih edilen bir iletişim yöntemi hâline getirmiştir​.


WebSocket, geleneksel HTTP polling ve long polling yöntemlerine göre daha az ağ trafiği üretir ve daha düşük gecikme süresi sunar. WebSocket teknolojisi, özellikle Nesnelerin İnterneti (IoT), online oyunlar, anlık mesajlaşma sistemleri ve canlı yayın platformları gibi uygulamalarda verimli bir veri iletişimi sağlamaktadır. Bu protokol, hem düşük bant genişliği kullanımı hem de yüksek verimlilik gerektiren senaryolar için uygun bir çözüm olarak geliştirilmiştir​.

WebSocket Protokolünün Yapısı

WebSocket protokolü, iki temel aşamadan oluşur: bağlantı kurulum aşaması ve veri iletim aşaması. Bu yapısı, sürekli bağlantı sağlayarak veri iletimini daha verimli hâle getirir.

Bağlantı Kurulumu (Handshake)

WebSocket iletişimi, geleneksel bir HTTP isteği ile başlar. İstemci, bir HTTP "Upgrade" isteği göndererek mevcut bağlantının WebSocket protokolüne yükseltilmesini talep eder. Sunucu bu talebi kabul ettiğinde, TCP tabanlı, sürekli açık bir bağlantı kurulmuş olur​. Bu süreç aşağıdaki adımları içerir:

  • İstemci, HTTP isteğinde "Upgrade: websocket" başlığını kullanır.
  • Sunucu, "101 Switching Protocols" yanıt kodu ile protokol değişimini onaylar.
  • Bağlantı açıldıktan sonra, her iki taraf da veri gönderebilir ve alabilir.

Bu aşamadan sonra iletişim tam çift yönlü ve sürekli hâle gelir, her mesaj için yeni bir TCP bağlantısı kurulmasına gerek kalmaz.


WebSocket Mimarisi (YZ ile çizilmiştir)

Veri İletimi

Bağlantı kurulduktan sonra, istemci ve sunucu arasındaki iletişim TCP bağlantısı üzerinden çerçeveler (frames) hâlinde gerçekleşir. WebSocket, hem metin (UTF-8 kodlamalı) hem de ikili (binary) veri iletimini destekler​. Ayrıca bağlantı esnasında veri bütünlüğü korumak için ping-pong mekanizmaları kullanılır.

WebSocket Mimarisi

WebSocket, istemci ve sunucu arasında doğrudan, sürekli bir kanal oluşturarak iletişim verimliliğini artırır. Protokol, geleneksel HTTP yöntemlerinin aksine, her mesaj gönderiminde başlık bilgilerinin tekrar edilmesini önler.

İstemci-Sunucu Modeli

WebSocket istemcisi, bağlantıyı başlatan taraftır. Sunucu ise, istemciden gelen Upgrade isteğini kabul eder ve veri iletimi için gerekli ortamı hazırlar. Bu iletişim modeli, IoT cihazları gibi sınırlı kaynaklara sahip sistemler için önemli ölçüde ağ yükünü azaltır​.



İstemci ve sunucu arasında sürekli açık bir TCP bağlantısı üzerinden gerçekleşen tam çift yönlü veri iletim süreci şematik olarak gösterilmiştir. (YZ ile çizilmiştir)

WebSocket Performansı

WebSocket protokolünün performansı, HTTP polling ve long polling yöntemlerine kıyasla farklı avantajlar sunar.

Gecikme Süreleri

Yapılan deneysel çalışmalarda, WebSocket’in bir mesajın iletimindeki gecikme süresinin HTTP polling yöntemlerine göre üç kat daha düşük olduğu tespit edilmiştir​. WebSocket, özellikle yüksek frekansta veri gönderiminin gerekli olduğu uygulamalarda (örneğin sensör verileri aktarımı gibi) önemli bir üstünlük sağlar.

İş Çıkarma Oranı

WebSocket, düşük gecikmenin yanı sıra yüksek iş çıkarma oranı (throughput) sunar. Gerçekleştirilen deneylerde, WebSocket protokolünün küçük veri yüklerinde diğer yöntemlere kıyasla daha fazla veri işleyebildiği görülmüştür​.

Enerji Tüketimi

WebSocket kullanımı, özellikle sınırlı kaynaklara sahip cihazlarda enerji tasarrufu sağlamaktadır. HTTP polling yönteminde her yeni mesaj için yeniden bağlantı kurulması gerektiğinden dolayı, WebSocket sürekli bağlantı yapısıyla daha düşük enerji tüketimi gerçekleştirir​.

WebSocket Kullanım Alanları

WebSocket protokolü aşağıdaki alanlarda yaygın olarak kullanılmaktadır:

  • Gerçek zamanlı finansal veri akışları (örneğin hisse senedi fiyatları)
  • Online çok oyunculu oyunlar
  • Anlık mesajlaşma ve sohbet uygulamaları
  • Uzaktan izleme ve kontrol sistemleri (IoT uygulamaları)
  • Canlı video ve ses yayınları


WebSocket'in bazı kullanım alanları (YZ ile çizilmiştir)


Bu alanlarda WebSocket'in sunduğu düşük gecikme, az ağ yükü ve enerji verimliliği gibi avantajlar belirleyici faktör olmaktadır.

Kaynakça

Victoria Pimentel, Bradford G. Nickerson, "Communicating and Displaying Real-Time Data with WebSocket", IEEE Internet Computing, Vol. 16, No. 4, pp. 45-49, 2012

Mehmet Ali Ebleme, Nesnelerin İnterneti Uygulama Katmanı Haberleşme Protokollerinin Başarım Analizi, Yüksek Lisans Tezi, Sakarya Üniversitesi, 2019​

Sen de Değerlendir!

0 Değerlendirme

Yazar Bilgileri

Avatar
Ana YazarGülçin Özer28 Nisan 2025 22:41
KÜRE'ye Sor