I2P-prestatiestatistieken
Ik heb i2p getest ...
Het werkt, maar de prestaties, anonimiteit en betrouwbaarheid zijn twijfelachtig…
TL;DR
Kort gezegd
- Getest met 3 soorten implementaties om te meten hoe ze werken als proxies (ze zijn erg gelijk)
- Getest met 3 soorten verborgen dienstenimplementaties (i2p+ was het beste)
- Deelname aan de flood heeft geen invloed op de prestaties van het i2p-netwerk, maar verhoogt wel de verbruik van resources.
I2P is traag. Een ping duurt 5-10 seconden. En het is niet gegarandeerd dat het niet time-out, zelfs als je een goede verbinding hebt.
Kort wat het is
I2P is een netwerkprotocol bovenop IP, het gebruikt zowel TCP als UDP, en zowel IPv6 als IPv4.
Het idee is vergelijkbaar met TOR - netwerkberichten versleutelen terwijl ze door het netwerk gaan, zodat
- de knoop die het bericht doorgeeft niet weet wat erin zit
- de knoop die het bericht ontvangt niet weet wie de oorspronkelijke afzender is.
I2P heeft geen standaard manier om “het grote internet” (clearnet) te bekijken, er zijn outproxies, maar kom op… TOR is veel beter in dit opzicht. Wat I2P heeft, zijn “verborgen diensten”. Theoretisch weten die diensten niet wie hen belt en gebruikers weten niet welke knoop elke dienst op is.
Diensten kunnen elk standaard internetprogramma zijn - een IRC-server, een webserver met wat er maar op staat, een REST API, een XMPP- of e-mailserver.
En er zijn niet veel diensten daar. Ongeveer 200 sites? Of 300?
Doel, manier, morele en juridische aspecten.
Ik zie twee motieven om een verborgen dienst te hosten
- Aanpassen (zekerstellen) van eigen anonimiteit en privacy
- Ontsnappen aan de directe aandacht van Big Brother - niet iedereen leeft in democratische landen, sommige tirannische regeringen onderdrukken en onderdrukken wie ze maar kunnen. Maar in deze zak (“ontsnappen”) zou ik elke illegale activiteit plaatsen. Het is gewoon een motief.
Morele en juridische aspecten zijn complex. Mijn mening (ik ben geen jurist, dus neem het niet als advies):
Mensen hebben [morele] recht op privacy. Ze hebben een [morele] recht om te zeggen “F.U. Het is niets voor jou”. Ze hebben een [morele] recht om … laten we zeggen … niet blij te zijn, wanneer sommige programma’s of mobiele telefoons hun locatie publiceren, satellieten foto’s nemen van hun achtertuinen en die publiceren op Google Street View, en regeringen deze activiteit en ontevredenheid negeren. Tegelijkertijd heeft de regering AFAIK [juridisch] recht om de privacy van mensen te schenden, er zijn bepaalde voorwaarden, soms. Bijvoorbeeld in Australië kan een politieagent je vragen om je mobiele telefoon te openen, wat zeer groot morele gevolgen heeft. Zie de geschiedenis van Monica Smith, die op een bepaalde manier werd aangemoedigd om haar telefoon te openen, waarbij de politie contacten van pro-vrijheid demonstranten zou krijgen. (Dat was tijdens de coronalockdowns in Melbourne, de ergste ter wereld). De politie trok zich terug, maar Monica riskeerde gevangenisstraf voor niet-complimenteren.
Anonimiteit is een ander groot aspect van mensenleven. Mijn mening is dat surveillance en deanonimisatie te vaak alleen worden gebruikt voor doxxing, privacyinvasie en pesten. En beter is het om duidelijke regels en procedures te hebben wanneer iemand toegestaan wordt om dat te gebruiken.
Prestaties
OK. Hier gaan we.
Ik heb gemeten hoe lang het duurt om een ping te voltooien. (HEAD {site}.i2p)
Hieronder is de vertragingsspreiding van de respons.
Deze spreidingsgrafiek laat zien dat de verwachte aanroepduur ongeveer 5 seconden zou zijn.
Ik heb de time-out ingesteld op 90 seconden, en zoals je ziet, zijn sommige aanvragen helemaal niet voltooid. 30 seconden en 60 seconden zijn waarschijnlijk time-outs aan de kant van de dienst of router.
De kernsites zijn goed gevestigde sites http://idk.i2p/, http://zzz.i2p/, http://identiguy.i2p/, http://333.i2p/, http://i2pforum.i2p en vergelijkbare, in totaal 25 van die. Groep Extra - een verzameling van meer dan 100 sites.
Ik aannam dat de eigenaren van kernsites weten wat ze doen, en inderdaad is de prestatie van hun sites beter dan die van groep extra. Maar het verschil is niet groot - slechts 1 seconde (~5 seconden vs ~6 seconden mediaan aanroepduur). EN! kernsites tijdigden soms nog steeds uit, zoals je ziet op de eerste grafiek (aanroepduurspreiding).
Hieronder is de grafiek van de bruikbaarheid van proxytypes.
Gemeten pingduur van sites uit de kerngroep van verschillende proxies. I2P+ op één en I2Pd op twee verschillende implementaties tonen vrij gelijke resultaten.
Nu de geschiktheid voor diensthosting.
Het dikke rode hier is I2P+.
Anonimiteit
Er waren 4000-10000 routers online, hun openbare IP-adressen zijn goed zichtbaar. Dus kunnen we hier niet over grote anonimiteit spreken.
Resourceverbruik
I2Pd in mijn experimenten gebruikte ~130MB RAM + ~7% CPU.
I2P+ gebruikte ~350+MB RAM + ~70+% CPU.
In de I2P+ configuratie heb ik de RAM toegang iets verhoogd, in de hoop dat het beter zou presteren. Dus, hier zijn we.
Deelname aan de flood in mijn experimenten had geen invloed op de prestaties van het i2p-netwerk, maar verhoogde de CPU-belasting ongeveer +20%.
Dus als je van plan bent I2Pd te hosten - 1vCPU+512MB zou doen, geloof ik. En voor I2P+ - 2vCPU+1GB minimaal.
Het gevoel
Het is alsof je een Fido, BBS en oude goede tijden terugkeert. Wanneer het netwerk zo klein is dat iedereen elkaar kent, alleen al door bijnamen.
Het is traag. En leeg.
Maar het gevoel is zo analog.