2016-04-15 6 views
0

Ich frage mich über den Unterschied zwischen HTTP und TCP-Datenübertragungsprotokolle für Online-Spiele. Ich habe viele Leute gehört, die TCP oder UDP verwenden, um Daten zwischen Client und Server für Online-Spiele zu übertragen. Aber können Sie http überhaupt verwenden? Ich weiß, dass HTTP hauptsächlich für das Surfen im Internet verwendet wird, aber wenn ich einen Webserver einrichten und meine Spielanwendungen GET- und POST-Methoden verwenden könnte, kann ich immer noch Daten hin und her senden, oder? Ist diese Art der Kommunikation zu langsam oder unnötig?HTTP vs TCP für Online-Spiele

Und eine Sache über TCP-Übertragungsprotokolle, wenn ich einige Gaming-Anwendung mit TCP schreiben würde, ist es, dass die Daten in der Regel mit etwas namens "Sockets" (wie Socket-Klassen in Java) übertragen werden? Was ist mit UDP?

Vielen Dank! Schätzen Sie jede Antwort!

Antwort

1

HTTP ist eine zusätzliche Schicht über TCP, die definiert, wie eine Anfrage aussieht, wie eine Antwort aussieht und wie die Verbindung bei Anfragen geschlossen oder beibehalten wird. Sie können es entweder verwenden oder nicht verwenden, je nachdem, was Sie tatsächlich transportieren müssen. Wenn Ihr Spiel aus einer Reihe von Anfragen besteht, die jeweils eine Antwort erhalten, kann HTTP sinnvoll sein. Wenn es sich eher um unaufgeforderte Nachrichten in jeder Richtung handelt, ist das Erstellen von HTTP-Arbeit wie das Setzen eines quadratischen Stifts in ein rundes Loch.

Die meisten Plattformen bieten eine Socket-Schnittstelle, mit der Sie entweder mit TCP oder UDP arbeiten können, abhängig vom Protokoll, das bei der Zuweisung des Sockets angegeben wird. Einige übergeordnete APIs sehen für verschiedene Protokolle völlig anders aus.

+0

Ich sehe .. Vielen Dank! –