So, for your latency question, I would have to say that "it depends
on what do
you want to do". See, there are really no implementation for it at the
moment, or something for us to test that. What we have is in
GNUnet's roadmap
one application called "gnunet-chat", that does exactly that: swaps
messages
between nodes. When that's built we'll be able to see the real latency
challange in GNUnet, but, otoh, we believe that gnunet-chat <will
work>, and,
depending on what kind of stuff you're wanting to do, that can
already be
enough. Most MMOG's send little more traffic than a simple chat system
does... Unless you try to use the network to send graphics data.
Most multiplayer games are aimed to take advantage of the available
hardware
that players have. The networking is tweaked to prevent the bandwidth
from being
overloaded and the servers do a few fancy tricks to send only the
most important
data if the data to be sent is more than what the player's bandwidth
can handle.
In essence, most MMOs will target network utilization for around
80-90% of a 56k
modem (we can see this from measurement experiments). I think we can
expect
to see this increase as the population that has broadband increases
to the
majority of players. So I wouldn't say MMOs send little more traffic
than a simple
chat system (though it'd be impressive if someone could chat at
48kbps!).
The main issue here is the topology of the network. As I stated
before, we have
limits on latency given a particular type of game. We can probably
assume that
bandwidth will continue to increase at the end-user over time, so
bandwidth is
not as much of an issue. With games, it's about latency, update
frequency, and
security. If the topology of the network is not conducive to fast
message
dissemination, then it's fairly easy to show that it won't be able to
support a particular
type of game.
If you look at the current research in this area, many of the P2P
systems use
structured overlays, such as Pastry. This introduces a logarithmic
number of
hops from point A to point B. However, these are end-system hops, not
network level hops, and therefore cause a significant amount of
latency that
make the most common type of commercially successful games unplayable.
On the other hand, a pure P2P network with all-to-all message passing
is clearly
not viable either. One of the things I'm looking at is building the
P2P network
based on the locations of players in the virtual world. Thus, instead
of randomly
organizing players into the network, where a message between two
players that
are close in the virtual world might have to traverse the entire
network, the message
will instead take only a single, direct hop to the other player, or
at least minimize
the number of hops required.
Chris
_______________________________________________
GNUnet-developers mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/gnunet-developers