Programlama Dillerinin Sınıflandırılması

TCP'de paket kaybolunca simültane iletişim kesiliyor, bu yüzden akıcılık bozuluyor ve bunu istemiyorlar değil mi? Peki iki protokol beraber kullanılırsa nasıl olur? Birinin efektif çalıştığı yerde diğerinin çalışamaması gibi bir durum olabilir mi?
 
TCP'de paket kaybolunca simültane iletişim kesiliyor, bu yüzden akıcılık bozuluyor ve bunu istemiyorlar değil mi? Peki iki protokol beraber kullanılırsa nasıl olur? Birinin efektif çalıştığı yerde diğerinin çalışamaması gibi bir durum olabilir mi?

Yok, TCP de paket kaybi olursa yeniden istek gonderiliyor. TCP icin aslinda alici verici arasinda bir suru git gel yapiliyor. Paket sirasi duzgun mu, paket dogru mu ( Parity check), paket kaybi olmus mu gibi. Iletisim kesilmiyor da, yeniden basliyor diyelim.

Transmission Control Protocol - Wikipedia

Evet, ikisini birlikte kullanmak gerekiyor. Genelde data kaybinin ihmal edilebilecegi durumlarda ve hiza muhtac oldugun noktalarda UDP kullanirsin. Oyun server'ina login, chat paneli vb diger network isleri icin TCP gerekli. Age of empires gibi nispeted eski oyunlar TCP uzerinden de multiplayer calisabiliyorlar ve o kadar da yavas degiller. Ama bir FPS oyununu 2 kisilik bile olsa TCP uzerinden yapmak cok zor, eger server ve oyuncular local network uzerinde degilse.

Bu arada Age of Empires'in multiplayer mimarisi biraz farkli. Server bir sonraki cevabi kullanicilara vermek icin herkesten kendisine veri ulastirmasini bekliyor. Sabit bir tickrate yok. Bu yuzden oyun en yavas oyuncunun network hizi kadar hizli olabiliyor. Hatta bilenler bilir, lag yapan oyuncunun yaninda "kaplumbaga" simgesi cikardi.
 
Yok, TCP de paket kaybi olursa yeniden istek gonderiliyor. TCP icin aslinda alici verici arasinda bir suru git gel yapiliyor. Paket sirasi duzgun mu, paket dogru mu ( Parity check), paket kaybi olmus mu gibi. Iletisim kesilmiyor da, yeniden basliyor diyelim.

Transmission Control Protocol - Wikipedia

Evet, ikisini birlikte kullanmak gerekiyor. Genelde data kaybinin ihmal edilebilecegi durumlarda ve hiza muhtac oldugun noktalarda UDP kullanirsin. Oyun server'ina login, chat paneli vb diger network isleri icin TCP gerekli. Age of empires gibi nispeted eski oyunlar TCP uzerinden de multiplayer calisabiliyorlar ve o kadar da yavas degiller. Ama bir FPS oyununu 2 kisilik bile olsa TCP uzerinden yapmak cok zor, eger server ve oyuncular local network uzerinde degilse.

Bu arada Age of Empires'in multiplayer mimarisi biraz farkli. Server bir sonraki cevabi kullanicilara vermek icin herkesten kendisine veri ulastirmasini bekliyor. Sabit bir tickrate yok. Bu yuzden oyun en yavas oyuncunun network hizi kadar hizli olabiliyor. Hatta bilenler bilir, lag yapan oyuncunun yaninda "kaplumbaga" simgesi cikardi.
Şimdi UDP ile Web sitesi yapsak maliyeti mi artırır?
 
Şimdi UDP ile Web sitesi yapsak maliyeti mi artırır?

Sacma olur. Chrome'a web sitenin adresini yazdiginda TCP uzerinden baglanmaya calisiyor.

chrome.sockets.udp - Google Chrome
Aslinda chrome'un geri planda UDP de kullanabilen kabiliyeti var ama normal kullanici bilmez boyle seyleri. Ayrica web sitesinde dedigim gibi diger 3. parti servislerin IO sunu bekleyeceksin, UDP nin hizindan faydalanamayacaksin.

Ek olarak sifreler, kredi karti bilgileri vs hatasiz gonderilmek durumunda. TCP nin dogrulama garantisine ihtiyacin olan senaryolar var.
 
Sacma olur. Chrome'a web sitenin adresini yazdiginda TCP uzerinden baglanmaya calisiyor.

chrome.sockets.udp - Google Chrome
Aslinda chrome'un geri planda UDP de kullanabilen kabiliyeti var ama normal kullanici bilmez boyle seyleri. Ayrica web sitesinde dedigim gibi diger 3. parti servislerin IO sunu bekleyeceksin, UDP nin hizindan faydalanamayacaksin.

Ek olarak sifreler, kredi karti bilgileri vs hatasiz gonderilmek durumunda. TCP nin dogrulama garantisine ihtiyacin olan senaryolar var.
E tarayıcıdan CS oynamak vardı. O TCP mi oluyor?
 
E tarayıcıdan CS oynamak vardı. O TCP mi oluyor?

Bilmiyorum o nasil calisiyor, ama browser'daki URL sen oynarken degismiyordur muhtemelen. Oyun sitesinde TCP uzerinden baglaniyorsun, belirli bir sure client download ediyorsun, o client da kendi icinde muhtemelen UDP ile calisiyordur. Tamamen tahmin, bilmiyorum browserdaki CS-GO yu.
 
Bilmiyorum o nasil calisiyor, ama browser'daki URL sen oynarken degismiyordur muhtemelen. Oyun sitesinde TCP uzerinden baglaniyorsun, belirli bir sure client download ediyorsun, o client da kendi icinde muhtemelen UDP ile calisiyordur. Tamamen tahmin, bilmiyorum browserdaki CS-GO yu.
Bir şey daha soracağım. Chrome'dan oyun sunucularına ulaşabilir miyiz?
 
Bir şey daha soracağım. Chrome'dan oyun sunucularına ulaşabilir miyiz?

Eger Developer Tools kullanirsan ulasirsin (F12 ile acilan panel), oraya JS kodu yaziyorsun cunku. Sunucu adresi, portu ve protokolu biliyorsan JS ile tek satirda baglanirsin.
Ama normal bir kullanici gibi adres yazip enter'a basarak ulasamazsin.
 
Eger Developer Tools kullanirsan ulasirsin (F12 ile acilan panel), oraya JS kodu yaziyorsun cunku. Sunucu adresi, portu ve protokolu biliyorsan JS ile tek satirda baglanirsin.
Ama normal bir kullanici gibi adres yazip enter'a basarak ulasamazsin.
Yani mesela bağlandım bir sunucuya müdahalede bulunabilir miyim? Kusura bakmayın. Biraz fazla soru sordum.
 
Yani mesela bağlandım bir sunucuya müdahalede bulunabilir miyim? Kusura bakmayın. Biraz fazla soru sordum.

Yok istedigin kadar sorabilirsin sorun yok.
Bu o sunucunun nasil yazildigina bagli. Hacklemek gibi bir mudahalede bulunabilir miyim diye soruyorsun sanirim. Cok buyuk ihtimalle hayir, cunku gerekli guvenlik onlemlerini almislardir.
Ama her oyunu bir sekilde hackleyebilirler. Gunumuzde hack olayini tamamen engellemek cok maliyetli ve imkansiza yakin bir olay. Onun yerine genelde raporlama sistemi ve agresif ban yontemiyle yildirmaya calisiyorlar kullanicilari.
 

Geri
Yukarı