Re: Partial file shating!!
"cyberbob.shareaza" <[email protected]>
| Newsgroups | gmane.network.gnutella.devel |
|---|---|
| Message-ID | <[email protected]> |
--- In [email protected], Raphael_Manfredi@... wrote: > > Quoting rakesh <rakeshsonii@...> from ml.gnutella.dev-forum: > :Thanks Raphael > :For Gnutella as per "Partial File Sharing Protocol Version (PFSP) 1.0",The client > :requests the range it wants using the Range header. > : > :Range: bytes=0- means the client wants any ranges the server can provide. > > The PFSP specs are in error. The above simply means you're requesting the whole > file. So this Range: header is ignored and that's why you don't get a 206. > > :The issue is - I want to know all the parts of a file that peer share. For that I > :request with "Range: bytes=0-", but none of the peer respond with 206 and > :"X-Available-Ranges: " headers. > : > :They respond with 206 only when I specify random range in the "Range:" headers. > :That requires a range in Range header which is not known at the time of request. > : > :How we can know the all the shared parts of files? > > You assume the file is complete and request what you need. Then if the range > is not available, you'll get a 416 and the X-Available-Range: header will tell > you which parts can be requested. Good servents will keep the connection open > on a 416, so you may retry one of the advertised ranges, if any suits you. > > Raphael > can't you just simply use "HEAD" command, instead of "GET" for getting status?