Following the new leads and information gathered recently, it seems that Sega’s proprietary networking system “SNAP” was not (primarily atleast) used for hosting Dreamcast games, and was likely to only be used for the PS2 and GC (although support for the Xbox was probably there too).
However, as many of you probably know, a similar system called “Kage” was created earlier in the Dreamcast’s lifespan and provided hosting for many of Sega’s 1st and 2nd party titles, like Alien Front Online, Outtrigger, and so on.
Kage provided developers with a generic set of servers that could be used for just about any type of game and consisted of multiple types of servers, ranging from bootstrap servers for the initial handshake upon connecting, lobby/gameroom servers, status servers and game servers, and (client code) was platform independent (just like Snap). Multiple versions of the Kage servers was created.
However, key differences between the two is that while Kage is a more traditional approach of a unified server system using TCP, UDP and HTTP, Snap also used a proprietary protocol on top of UDP called rUDP (reliable UDP) and was a more advanced approach trying to provide features such as QoS and scalability and because of that was probably a very attractive server model for Nokias mobile gaming division.
Kage seems to have been created sometime in 1999, while Snap (atleast the SDK, might have been used internally before that) was created in 2002.
Example of scalability with Snap:
Example of debugging symbols found for Snap games (PS2):
While the authentication etc is done by TCP, game data is sent using UDP and rUDP and is clearly different from Kage in this manner, although Kage might have been the precursor to what later became Snap.