<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.6000.16890" name=GENERATOR></HEAD>
<BODY>
<DIV dir=ltr align=left><SPAN class=093192514-11012010><FONT face=Arial
color=#0000ff size=2>Aha, you're not on the original computer.
:)</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=093192514-11012010><FONT face=Arial
color=#0000ff size=2>In that case, depending on how many computers need to check
how many computers, I'd opt for algorithm #1. Counting hops doesn't really say
much I think, also depending on how much you know of the topology involved. If
all computers are under your control, counting hops can work, but I assume
you're talking about computers randomly on the internet?</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=093192514-11012010><FONT face=Arial
color=#0000ff size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=093192514-11012010><FONT face=Arial
color=#0000ff size=2>Ruud</FONT></SPAN></DIV><BR>
<BLOCKQUOTE
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #0000ff 2px solid; MARGIN-RIGHT: 0px">
<DIV class=OutlookMessageHeader lang=nl dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>Van:</B> enet-discuss-bounces@cubik.org
[mailto:enet-discuss-bounces@cubik.org] <B>Namens </B>Jay
Sprenkle<BR><B>Verzonden:</B> Monday, January 11, 2010 14:58<BR><B>Aan:</B>
Discussion of the ENet library<BR><B>Onderwerp:</B> Re: [ENet-discuss]
icmp/tracert/discovering network topology?<BR></FONT><BR></DIV>
<DIV></DIV>Thanks for the help but I think you misunderstood the problem
:)<BR><BR>I'm trying to determine if machine 'X' could communicate more
quickly to machine 'Y' or machine 'Z' (and you're on machine 'A'). 'A' pinging
'Z' won't tell you the time for 'X' pinging 'Z'. etc.<BR><BR>I
could:<BR><BR>Get machine X to ping machine Y and Z. This algorithm would be
"here's a list of machines, you figure it out." If there are a lot of
machines in the list this could be problematic and very slow to discover good
connections.<BR><BR>or <BR><BR>Machine 'A' tracert's machine 'X', 'Y', and
'Z'. It now knows the physical layout of the network and can calculate how
many hops there are between the machines (assuming there's only one path
between any two points on the internet). This algorithm would be "here's my
best guess about which machines will get the best response time from your
machine"<BR><BR>The second algorithm is based on some assumptions that may be
wrong and uses the assumption "more hops = bad". Some combination of the two
might be better. <BR><BR><BR>
<DIV class=gmail_quote>On Mon, Jan 11, 2010 at 7:36 AM, Ruud van Gaal <SPAN
dir=ltr><<A href="mailto:ruud@racer.nl">ruud@racer.nl</A>></SPAN>
wrote:<BR>
<BLOCKQUOTE class=gmail_quote
style="PADDING-LEFT: 1ex; MARGIN: 0pt 0pt 0pt 0.8ex; BORDER-LEFT: rgb(204,204,204) 1px solid">
<DIV>
<DIV dir=ltr align=left><SPAN><FONT face=Arial color=#0000ff size=2>Ping is
what most, if not all games use to determine client-server 'distance'. The
number of hops doesn't say anything since the hardware involved can be
different greatly, resulting in processing times that vary in many
magnitudes.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN><FONT face=Arial color=#0000ff size=2>The only
way to be sure is to use ping, which is in fact relatively stable in
practice. Keep pinging as things progress so you always update the latest
ping time (taking care to avoid spikes, so slowly progressing ping time to a
stable value). Don't just calculate ping time once.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN><FONT face=Arial color=#0000ff size=2>I would
not know of any method that relates X hops to any useful time value. If one
route is 9 hops, the other 20, it's certainly not sure whether one is faster
than the other...</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN><FONT face=Arial color=#0000ff
size=2>Ruud</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV><BR>
<BLOCKQUOTE
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: rgb(0,0,255) 2px solid; MARGIN-RIGHT: 0px">
<DIV lang=nl dir=ltr align=left>
<HR>
<FONT face=Tahoma size=2>
<DIV class=im><B>Van:</B> <A href="mailto:enet-discuss-bounces@cubik.org"
target=_blank>enet-discuss-bounces@cubik.org</A> [mailto:<A
href="mailto:enet-discuss-bounces@cubik.org"
target=_blank>enet-discuss-bounces@cubik.org</A>] <B>Namens </B>Jay
Sprenkle<BR></DIV><B>Verzonden:</B> Monday, January 11, 2010 14:12
<DIV class=im><BR><B>Aan:</B> Discussion of the ENet
library<BR></DIV><B>Onderwerp:</B> Re: [ENet-discuss]
icmp/tracert/discovering network topology?<BR></FONT><BR></DIV>
<DIV>
<DIV></DIV>
<DIV class=h5>
<DIV></DIV>I would think the actual ping time would not be that useful. It
would vary considerably over time. What I was thinking was the length of
the route in routed hops, not physical distance, was what I needed to sort
by. These might measure roughly the same thing but physical organization
only needs one measurement.<BR><BR><BR>
<DIV class=gmail_quote>On Mon, Jan 11, 2010 at 3:37 AM, Ruud van Gaal
<SPAN dir=ltr><<A href="mailto:ruud@racer.nl"
target=_blank>ruud@racer.nl</A>></SPAN> wrote:<BR>
<BLOCKQUOTE class=gmail_quote
style="PADDING-LEFT: 1ex; MARGIN: 0pt 0pt 0pt 0.8ex; BORDER-LEFT: rgb(204,204,204) 1px solid">
<DIV>
<DIV>
<DIV dir=ltr align=left><SPAN><FONT face=Arial color=#0000ff
size=2>Hi,</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN><FONT face=Arial color=#0000ff
size=2>Isn't the ping time more important? In that case, keep ping times
on the server (probably already done by ENet, search the ENetPeer class)
and get the list from the server ordered by ping.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN><FONT face=Arial color=#0000ff size=2>I
wouldn't say the distance in computers is of much use for most
situations.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN><FONT face=Arial color=#0000ff
size=2>Cheers,</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN><FONT face=Arial color=#0000ff
size=2>Ruud</FONT></SPAN></DIV><BR></DIV>
<BLOCKQUOTE
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: rgb(0,0,255) 2px solid; MARGIN-RIGHT: 0px">
<DIV>
<DIV lang=nl dir=ltr align=left>
<HR>
<FONT face=Tahoma size=2><B>Van:</B> <A
href="mailto:enet-discuss-bounces@cubik.org"
target=_blank>enet-discuss-bounces@cubik.org</A> [mailto:<A
href="mailto:enet-discuss-bounces@cubik.org"
target=_blank>enet-discuss-bounces@cubik.org</A>] <B>Namens </B>Jay
Sprenkle<BR><B>Verzonden:</B> Sunday, January 10, 2010
20:09<BR><B>Aan:</B> Discussion of the ENet
library<BR><B>Onderwerp:</B> [ENet-discuss] icmp/tracert/discovering
network topology?<BR></FONT><BR></DIV>
<DIV></DIV></DIV>
<DIV>
<DIV></DIV>
<DIV>Good morning,<BR><BR>I'm considering adding some extra features
to my enet based peer to peer application. I'd like the main server to
be smart enough to discover which peers have the shortest connection
path to each other. When a peer requests a list of other peers to
connect to then the server can deliver an optimal list. The only way I
could think of to implement this would be to do a tracert to each peer
and sort the list of peers by what common paths they share. Has anyone
done icmp packets with enet? I know it's not it's intended function
but it doesn't seem like it would be difficult to hack together. If
anyone has any better ideas on how to implement this I'd love to hear
them.<BR><BR>Thanks!<BR>Have a good
weekend<BR><BR><BR></DIV></DIV></BLOCKQUOTE></DIV><BR>_______________________________________________<BR>ENet-discuss
mailing list<BR><A href="mailto:ENet-discuss@cubik.org"
target=_blank>ENet-discuss@cubik.org</A><BR><A
href="http://lists.cubik.org/mailman/listinfo/enet-discuss"
target=_blank>http://lists.cubik.org/mailman/listinfo/enet-discuss</A><BR><BR></BLOCKQUOTE></DIV><BR><BR
clear=all><BR>-- <BR>Cause united breaks guitars<BR><A
href="http://www.youtube.com/watch?v=5YGc4zOqozo"
target=_blank>http://www.youtube.com/watch?v=5YGc4zOqozo</A><BR><BR></DIV></DIV></BLOCKQUOTE></DIV><BR>_______________________________________________<BR>ENet-discuss
mailing list<BR><A
href="mailto:ENet-discuss@cubik.org">ENet-discuss@cubik.org</A><BR><A
href="http://lists.cubik.org/mailman/listinfo/enet-discuss"
target=_blank>http://lists.cubik.org/mailman/listinfo/enet-discuss</A><BR><BR></BLOCKQUOTE></DIV><BR><BR
clear=all><BR>-- <BR>Cause united breaks guitars<BR><A
href="http://www.youtube.com/watch?v=5YGc4zOqozo">http://www.youtube.com/watch?v=5YGc4zOqozo</A><BR><BR></BLOCKQUOTE></BODY></HTML>