Port / Networking assignment

Discuss programming topics for the various GPL'd game engine sources.
Post Reply
Cobalt
Posts: 445
Joined: Wed Jun 10, 2009 2:58 am
Location: New England, USA
Contact:

Port / Networking assignment

Post by Cobalt »

For the most part seems ports 26000 thru 27000 are "unassigned" with respect to other traffic. Im just curious lets say a server doing a hop for a client connecting to a Quake server on a port that the server the connection is passing thru already has traffic on that port , what happens? Also lets say the server doing the hop has a virus or in some way is corrupting the quake packets. Does that usually lead to a disconnect for the client or could the client start getting unreliable messages?
Baker
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Re: Port / Networking assignment

Post by Baker »

Cobalt wrote:connecting to a Quake server on a port that the server the connection is passing thru already has traffic on that port , what happens?
A port can have multiple connections. The port that a game uses isn't any different than, for instance, a web server listening on port 80.

Each connection to a port gets assigned a unique handle, and if I recall right, typically what happens is the application checks each connection in turn for new data.

And with standard Quake, accumulates server data that needs sent to each client in a buffer and sends it one after the other.
Cobalt wrote:Also lets say the server doing the hop has a virus or in some way is corrupting the quake packets.
With standard Quake, I think the client would likely error out and disconnect due to a protocol error ("Client disconnected: illegible server message"). The data sent is a series of numbers and strings marked up with types and lengths and different bit flags set to indicate what relevant pieces of info follow, with an anticipated order that continually branches out.

It would be difficult to randomly mess with the data and not break the entire house of cards. To not break it, it would have be something that was very aware of the various Quake messages and subsequent bytes sent, the codes and how many.

I believe the original Quake bots (Stooge bot, etc.) did just that. Would read the network information and alter it. https://graphics.stanford.edu/~kekoa/st ... about.html
The night is young. How else can I annoy the world before sunsrise? 8) Inquisitive minds want to know ! And if they don't -- well like that ever has stopped me before ..
Post Reply