Gnutella Protocol Development
Home :: Developer :: Press :: Research :: Servents
Appendix C : Known GGEP Extension Blocks C.1 Summarizing table of GGEP extensions
ID | Name | Est. Data Size | Locations | More Info URL | Format | Implemented by |
---|---|---|---|---|---|---|
< | LimeWire XML Metadata | Query, QHD Private area |
Metadata : |
Well-formed XML. No need to include <?xml> declaration; XML can default to UTF-8. Should be compressed either at the GGEP or packet level, not both. COBS is not necessary. | ||
ALT | alternate locations | 6 bytes per alternate location | ||||
AUTH | Webserver Authentication | ~30 bytes | QHD Private Area | http://groups.yahoo.com/group/the_gdf/message/16997 | SWAP | |
BH | Browse Host GGEP Header | 0 | QHD Private Area | http://groups.yahoo.com/group/the_gdf/files/Proposals/Browse%20Host/ | SWAP, ZIGA, Phex | |
DU | Daily average uptime | 1-3 bytes | ping replies | http://groups.yahoo.com/group/the_gdf/message/7820 | ||
GUE | This node supports GUESS | 0 | Pong | There is no payload | SWAP | |
H | File hash | 21-22 bytes | Query Hit between the NULs, Query after the NUL. If supported, set bit 12 of MinSpeed. | http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/gtk-gnutella/gtk-gnutella-current/doc/public/GGEP/H | COBS encoded if in Query Hit. If supported, set bit 11 of MinSpeed. | ZIGA |
HNAME | HostName | hostname.length | QHD Trailer | http://groups.yahoo.com/group/the_gdf/messages/17507?expand=1 | GTKG | |
MCAST | Present when you are responding directly to a multicast query | 0 | QueryHit | http://groups.yahoo.com/group/the_gdf/message/15458 | There is no payload | SWAP |
PUSH | A list of your push proxies | 6 bytes per proxy | QueryHit | http://groups.yahoo.com/group/the_gdf/files/Proposals/Working%20Proposals/Push%20Proxy%20HTTP%20%28PPH%29/PushProxy_v06 | ArrayOf(4 byte IP Address, 2 byte port) | |
UP | Ultrapeer | 3 | Pong | {VersionGuessStyle VersionUP, byte SlotsFreeUP, byte SlotsFreeLeaf} | ||
VC | VendorCode | 5 | Pong | {byte[4] VendorCode, VersionGuessStyle VersionUA} | ||
SWAP.q | Query Stuff | 16 bytes | Query | http://mywebpages.comcast.net/jthomas497/swapper/extensions/querystuff.html | ||
SWAP.s | Servent Info | 100 bytes | QHD Private Area | http://mywebpages.comcast.net/jthomas497/swapper/extensions/serventinfo.html |
C.2 Detailed specifications C.2.1 ALT GGEP Extension Name: ALT Where: Query Hit (per File Entry) Status: Experimental Date: Mon Jul 14 20:05:36 MEST 2003 Format: Array ofCOBS-Encoding: Maybe Deflate: Never [Those specs written by Raphael Manfredi after a proposal from BearShare] The "ALT" extension is used to carry alternate locations on a file entry basis. It is used only for servers that can understand "/uri-res/N2R?urn:sha1:" requests, and for files that have a known SHA1, so that the servent may construct the URLs manually. The payload is an array of 6-byte entries. The first 4 bytes encode the IP of the server (in little-endian, watch out!), and the remaining 2 bytes encode the port (in little-endian). There is no size indication for the array. The length of the payload must be a multiple of 6 bytes (after COBS decoding, or course). URL : http://groups.yahoo.com/group/the_gdf/message/16725 [ANY OTHER SPECS AVAILABLE ?]