I've never thought about it before, but this idea just suddenly came into my mind: Why are we doing Insert Request before a Data Insert? Why don't we just send a Data Insert out? If the document is not in the Freenet originally, then there would be no difference between two scheme. If the document is in the Freenet originally, then an Insert Request would cause the document propagate from where the document was stored to the node (hereafter called Node A) which inititalised the document request. Wouldn't it be exactly the same if we allow the Node A to send the Data Insert (with the document), and if the DataInsert reached a node which already contains the document, the insert just stopped that. Wouldn't the document distribution be exactly the same afterwards? (The 'original data source' field for the document in the data stores would be different. But does it matter?) At first, I thought the need of Insert Request is to avoid collision and malicious attack (where a malicious can force the Freenet to replace an existing document with its own version). But then, should the fact that we are using CHK means that the chance that a malicious hacker can target a specific document is very small? What about document with SVK, etc? It seems to me that bypassing Insert Request could speed up the time it taken for a user to insert document into Freenet. (Although using Insert Request make the set up of cut-through ('tunneling') a bit easier, becasue the Data Insert path is known before the first node received the Data Insert) Am I wrong? Yours, Shu Yan Chan _______________________________________________ freenet-tech mailing list [EMAIL PROTECTED] http://lists.freenetproject.org/mailman/listinfo/tech