On Sat, 19 May 2001, Yuan P Li wrote:
> 1. When a node has the informRead property turned on, is it true that
> this node during the execuation time only gets a batch of nodes from
> the informURL once (ie at startup)?
Yes.
> 2. Suppose that we have three nodes A, B, and C. B is an immediate
> neighbor to both A and C. A does not know C and vice versa. Now A
> makes an request for a resource which C has. B then forwards the
> request message to C. C sends a response message back to B and the
> message gets passed back to A.
> Will A find out that the response is actually returned by C?
Probably. Check out Freenet/message/DataReply.java L95-100. The DataSource
field in the StoreData message (which is sent after the transfer finishes)
is reset to the current node's address with a 1/30 probability.
Because of the probabilistic datasource reset, the MPAA cannot learn
the address of the supplier node if it uses a HTL greater than 2.
> Will C find out A is the original requester?
No.
> Do freenet request/response messages contain only IP address of an
> immediate requester or the one who responds?
See above.
> Or does the message contain the IPs of the entire route which the
> message travels?
No.
> 3, Despite the use of a static node file and the inform url
> mechanism, is there any other mechanism that a node can discover
> during runtime other nodes to become its cadidates (neighbors) for a
> request?
Your node learns about other nodes through the DataSource fields passed
through it in StoreData messages sent after transfers finish. This makes
Freenet work.
> 4. I noticed that for a request that's been fullfilled there's a
> block entry been written to the data store file. Something like the
> following:
>
> Key=6282f438c0a02766edecb0100770f4fefaaa0e0301
> Ref=tcp/146.174.249.58:19114
> DataProperties=c:\temp\.freenet\18872\t411510.inf
> Data=c:\temp\.freenet\18872\t411510
> HasEntity=true
> StandardDataStore
>
> Is it true for a fullfilled request of a resource with a key value
> there can be only one block entry like the above?
Yes.
> I found DataStore writes more blocks like the above than my fullfilled
> requests. Why is that?
It must be a bug.
> 5. I also found a lot of block entries like the below in my store
> file:
>
> Key=87b5bf1e45b8524d54fadfd43b0e80b86e298c8d0101
> Ref=tcp/24.10.173.110:28797
> StandardDataStore
>
> The block does not have DataProperties and Data options. Is the block
> a result of request originated from my own node? Or is this a result
> of me passing other nodes' request and I'm persisting where I got the
> response for the requested key value? This type of blocks is much
> more the the above type which has Data entries.
Note the last four characters of the key: "0101". That's the keytype code
for a KHK, and nodes haven't cached KHKs for a long time.
That entry was added when your node read its initial list of nodes from
inform.php. See Freenet/node/InformThread.java L71-73. The key is the SHA
hash of the reference "tcp/24.10.173.110:28797".
--
"...it must be held that third-party electronic monitoring, subject
only to the self-restraint of law enforcement officials, has no place
in our society..." Mark Roberts | [EMAIL PROTECTED]
_______________________________________________
freenet-tech mailing list
[EMAIL PROTECTED]
http://lists.freenetproject.org/mailman/listinfo/tech