Sorry, but I don't understand you very well this time. Could you maybe rephrase your question?
Do you wonder why GWebCaches use an URL instead of a plain IP address and a port number? In a nutshell, it's more flexible. The detailed reasons are:
- A GWebCache like any other web server might have multiple
IP addresses for load-balancing.
- The GWebCache can be moved to any other host, only the DNS entry has to be updated.
- The GWebCache does not have use a completely static IP address. That's almost the same reason as before but think of cable modem or DSL users who have a semi-static IP address. The previous point is rather about migrating to a completely different server which may happen once a while.
- The GWebCache can be completely disabled by removing the DNS entry for example if there's too much traffic or simply no further interest. If you only know a host by its IP address you cannot figure out whether it's really offline or just not responsive and receiver - possibly even a DDoS victim - gets all the traffic and cannot stop it unless the ISP filters at the peering point. This is the most important reason!
- An URL is a little harder to block by an ISP than a hostname albeit this argument might be a little moot.
However, instead of a GWebCache you can also use a UDP Host Cache (UHC) for bootstrapping. One disadvantage is that it works only over UDP. Once you've have implemented GGEP - which you need anyway - it's fairly simple and straight forward to use. GWebCaches are simple too but still more complex due to all the HTTP handling which is not that trivial to get right. For TCP you can also use any well-known (or possibly dedicated) Gnutella peer and check its X-Try/X-Try-Ultrapeers headers.
Anyway, if this doesn't answer your question, please, ask again but reword it.