[Home] [Groups] - Message: [Prev in Group] [Next in Group]

nu.kanga.list.mud-dev

21000: [MUD-Dev] UDP Revisted

[Full Header] [Plain Text]
From: Daniel.Harman@barclayscapital.com
Newsgroups: nu.kanga.list.mud-dev
Date: Wed, 10 Oct 2001 14:33:54 +0100
Organization: Kanga.Nu
I've been working on my UDP based networking layer, and I'm
wondering if anyone can provide some insight.

The issue centres around using a known port for all comms, or using
a range.  From a server perspective, it seems easy enough to have
multiple clients all on the same well known UDP port since a single
port can handle an arbitrary number of connections (I believe). I'm
concerned that this then leaves a server open to easy packet
flooding.

The alternatives, which I believe Everquest may use, are to either
negotiate a port to communicate on through the log in server, or to
have a set of known ports with which one can connect to the server,
and to randomly pick one. Obviously the former is more complicated
as the negotation probably takes place using a standard tcp/ip
connection with some form of encryption, so you have to pass state
between that and the udp part of the system.

Are there any reasons that I might want to not use a single port for
UDP with multiple clients other than the flooding aspect? It just
seems wasteful to instantiate a socket per client for a
connectionless protocol, although obviously from a defensive point
of view, its easier to stop servicing a port if someone starts to
flood it as it will only affect the flooder.

Dan

_______________________________________________
MUD-Dev mailing list
MUD-Dev@kanga.nu
https://www.kanga.nu/lists/listinfo/mud-dev