Konu Başlıkları
Yükleniyor...

Bant Genişliği mi Gecikme mi: Hız Algısını Ne Belirler?

Kullanıcı Deneyiminde Mbps'nin Sınırı Nerede?

"Mükemmel deneyim için kaç Mbps gerekir" sorusunun dolaşımdaki cevabı terabit mertebesinde bir sayı. Hesabın nereden çıktığı belli: ekranı ham piksel olarak saniyede yüz küsur kez tazelemek. Peki o hesap kendi içinde tutuyor mu, tutuyorsa kullanıcının hissettiği hızla ne kadar ilgisi var?

Önce hesabı yapalım

Argüman şöyle kuruluyor: gazete genişliğinde, 1200 dpi çözünürlükte bir ekran yaklaşık 48.000 x 32.000 piksel eder, buna 24 bit renk ve saniyede 120 tazeleme eklenince ortaya devasa bir veri akışı çıkar. Sonuç olarak da 1 Tbps telaffuz ediliyor.

Çarpalım. 48.000 x 32.000 = 1,536 milyar piksel. Piksel başına 3 bayt, kare başına 4,6 GB. Saniyede 120 kare için 553 GB/sn, yani kabaca 4,4 Tbps. Kendi varsayımlarıyla hesap 1 Tbps'nin dört katından fazlasını veriyor. Yani rakam abartılı değil, aksine kendi kurgusuna göre düşük kalıyor.

Asıl mesele de bu: hangi sayının çıktığı değil, sayının neyi ölçtüğü. Bu, ham çerçeve tamponunu ağdan geçirmenin maliyeti. Kimse böyle bir şey yapmıyor. Ekran kartı ile panel arasında akan veri ile internet bağlantısından geçen veri farklı şeyler, ve aradaki farkı kapatan şey sıkıştırma. 4K bir video akışında saniyede 25 megabit yeterli oluyorsa, sebep ham karenin küçülmesi değil, iki kare arasındaki farkın gönderilmesi.

Peki ya bant genişliğini ikiye katlarsak?

Bir sayfanın yüklenme süresini iki şey belirler: aktarılacak veri miktarı ve o verinin gidip gelme süresi. Bağlantı hızını belli bir eşiğin üstüne çıkardığınızda ikinci kalem değişmez. Bir HTTP isteği yola çıkmadan önce DNS çözümlemesi, TCP el sıkışması ve TLS anlaşması bekler; bunların her biri en az bir gidiş dönüş demektir. 100 ms gecikmeli bir bağlantıda daha ilk baytı görmeden yarım saniye harcarsınız ve o yarım saniye 100 Mbps ile 1 Gbps arasında hiç değişmez.

Bir arayüzün hızını değerlendirirken bağlantı hızı rakamını değil gecikmeyi daha güvenilir bir gösterge bulurum. Mbps, eşiği geçtikten sonra kullanıcının hissettiği şeyle bağını koparır; gecikme ise her etkileşimde, her istekte doğrudan görünür. Mobil şebekede bu fark daha da açılır: sinyal çubuğu doluyken bile ilk bağlantının kurulması yüzlerce milisaniye alabilir.

Ölçerken neye bakmalı

Hız testi uygulamalarının verdiği rakam pazarlama için iyi, teşhis için zayıf. Arayüz tarafında karşılığı olan ölçüler farklı: ilk baytın gelme süresi, en büyük içerik ögesinin boyanma anı, sayfa etkileşime hazır olana kadar geçen süre. Bunlar tarayıcının kendi zamanlama API'sinden okunabilir, üçüncü parti bir araca ihtiyaç duymadan gerçek kullanıcı üzerinden toplanabilir. Laboratuvar ölçümü hep iyimserdir, çünkü test makinesinin bağlantısı kullanıcınınkine benzemez.

Elimizdeki kaynağı harcamamak

Bant genişliği bir yerde bol, bir yerde kıt. Tasarımın işi, kıt olduğu yerde de ayakta kalacak bir sayfa üretmek. Bunun büyük kısmı sıkıştırmayla ya da sunucu ayarıyla değil, en baştaki kararlarla halloluyor.

  • Görsellerde modern format ve gerçek boyutta servis. 2000 piksel genişliğinde bir fotoğrafı 400 piksellik alana koyup tarayıcıya küçülttürmek, kullanıcının paketinden ödenen bir hata.
  • Ekranın görünen kısmına giren içeriği önce yüklemek, gerisini ertelemek.
  • Yazı tipi sayısını sınırlamak. Üç aileden altı ağırlık, çoğu sitede fotoğraflardan daha fazla yer tutar.
  • Tek bir bileşen için tam kütüphane çekmemek.

Kurumsal tarafta bağlantı seçerken de aynı ayrım geçerli. Video konferans ve büyük dosya transferi bant genişliği ister; uzaktan masaüstü, kasa uygulaması ve sesli görüşme gecikmeye ve kararlılığa duyarlıdır. Yoğun saatte on kişi aynı anda bağlandığında bozulan şey genelde hızın tepe değeri değil, paketlerin düzenli akışıdır.

Sayı büyüdükçe ne oluyor

Altyapı gelişmeye devam ediyor ve terabit mertebesindeki bağlantılar bir gün masaya gelecek. Gelene kadar geçen sürede içerik de büyümeyi bırakmıyor: bant genişliği arttıkça sayfalar ağırlaşıyor, kazanılan alan hemen doluyor. Bu yüzden "ne kadar yeterli" sorusunun sabit bir cevabı yok. Anlamlı olan soru şu: kullanıcı beklerken tam olarak neyi bekliyor, veriyi mi yoksa sıranın kendisine gelmesini mi.