diff --git a/www.i2p2/pages/how_networkdatabase.html b/www.i2p2/pages/how_networkdatabase.html index 88015fff..5405f3f3 100644 --- a/www.i2p2/pages/how_networkdatabase.html +++ b/www.i2p2/pages/how_networkdatabase.html @@ -3,301 +3,343 @@ {% block content %}

-Updated July 2010, current as of router version 0.8 + Updated July 2010, current as of router version 0.8 +

Overview

-

I2P's netDb is a specialized distributed database, containing -just two types of data - router contact information (RouterInfos) and destination contact -information (LeaseSets). Each piece of data is signed by the appropriate party and verified -by anyone who uses or stores it. In addition, the data has liveliness information -within it, allowing irrelevant entries to be dropped, newer entries to replace -older ones, and protection against certain classes of attack. +

+ I2P's netDb is a specialized distributed database, containing + just two types of data - router contact information (RouterInfos) and destination contact + information (LeaseSets). Each piece of data is signed by the appropriate party and verified + by anyone who uses or stores it. In addition, the data has liveliness information + within it, allowing irrelevant entries to be dropped, newer entries to replace + older ones, and protection against certain classes of attack.

-The netDb is distributed with a simple technique called "floodfill", -where a subset of all routers, called "floodfill routers", maintains the distributed database. + The netDb is distributed with a simple technique called "floodfill", + where a subset of all routers, called "floodfill routers", maintains the distributed database.

-

RouterInfo

+

RouterInfo

-

When an I2P router wants to contact another router, they need to know some -key pieces of data - all of which are bundled up and signed by the router into -a structure called the "RouterInfo", which is distributed under the key derived -from the SHA256 of the router's identity. The structure itself contains: