Bill Pringlemeir wrote:
> On 31 Oct 2006, [EMAIL PROTECTED] wrote:
>
> > If a certain amount of dupes is seen from one connection, the peer
> > gets disconnected.
>
> How is "dupes" defined? I thought it was two similar queries from the
> same ultra.
No, that's just a simple protection against too frequent querying. All
messages in Gnutella have a 128-bit MUID ("Message Unique IDentifier")
which is mostly random albeit some features like OOB querying utilize some
bytes from it.
> I didn't think gtkg tracked queries initiated from itself
> (or its leaves).
There could be bugs of course. The basic routing code has not been
modified in a long time. Queries from leaves are definitely tracked
because that's part of Dynamic Querying. That's actually a scenario
which can cause undected dupes because we remap the MUID, so the
leaves have no chance to detect their own queries. They may receive
them if they are connected to one of our neighbours, directly or
indirectly. "I didn't invent it."
> I guess that the change from 7 hops to 4 hops will
> have lessened the amount of cycles in the network. However, I think
> it also increased the effect of the cycles. It seems that horizon
> estimates have went down since the hop count was decreased to four.
I can't tell how accurate HSEP really is. You have to look at the
values with a grain of salt (or a cube maybe). First, only GTKG
supports it. I don't know how loop-resistent it is. I've certainly
experienced vastly differing horizons ranging from 8 TiB to 150 TiB
or so but that doesn't necessarily indicate anything about the
quality of the network.
> Host caching and sharing of cache information keeps nodes localized.
That would probably indicate a flaw in the implementation. Nodes
are constantly exchanging fresh peer addresses and these shouldn't
be just their neighbours.
> These scenarios seem more likely with the more broad based GNET as the
> host cache is populate by nodes at most 4 hops away.
I don't think so. If you receive PONGs from nodes at the edge of
your horizon, the returned nodes are not necessarily within your
horizon and UHC ping/pongs are pretty much independent from
horizons because they are not routed. So you certainly be able
to see nodes beyond your horizon. Of course, you could easily
write algorithms that have a high tendency of localization. Some
features certainly have this side-effect i.e., vendor or language
preferencing.
> Even though many
> cycles exist with the 7 hop GNET, there is the possibility that the
> host cache will be populated with a distant node (due to search
> results from these nodes).
We only see the IP addresses of searching nodes if they support OOB,
otherwise we see the IP address of one of their Ultrapeers. I don't
know whether we stuff these into the hostcache. In classic Gnutella
you'd never see an IP address in a query.
> Possibly downloading a popular file with many "referers" will give more
> distant nodes [to be put in the host cache], but this will depend on
> user interaction with Gtkg to get a diverse host cache.
Unless really low on cached addresses, we don't put them into the
cache because technically we have no way to know whether the other
party is really a Gnutella peer, it could be a proxy or plain
HTTP download tool or web server in case of a download. I believe
other vendors have/had less scruple to grab peer addresses from
up- or downloads. However one very realistic case the file transfer
between a Gnutella and a G2 client. Well, nowadays we could send
them a UHC ping which is far less aggressive than a TCP connection
would be.
> These cycles aren't all bad. They provide redundancy to the network.
> However, it is very bad if there is a high proportion of "3 cycle"
> ultra connections. I think that the paper I saw giving numbers for
> the 4 hop GNET didn't seem to take these cycles into account. It is
> possible for an ultra to track these cycles and rate neighboring
> ultras to improve network quality.
Don't forgot spammers. I was shown stats that are public available and
frequently came across their networks myself. Of course they don't
obey any rules at all. They maintain thousands of connections. If you take
those into account, I'd say it's extremely difficult to come up with
theories that match reality.
--
Christian
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Gtk-gnutella-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gtk-gnutella-devel