Jami hajutatud võrk

Ühenduvus

Jami relies on a distributed network, which brings multiple advantages when compared to federated networks:

  • Ei ole mingit põhjust ebaõnnestumiseks.

  • Oluline end tsensurile vastu panna.

  • ei sõltu mitte millestki muust kui oma kasutajatest,

  • Võrgude vahelist usaldust pole vaja.

Network topographies

This forms a Distributed Hash Table (DHT) network.

The core problem of distributed communication systems is peer connectivity. Jami achieves it through two elements:

  • Encrypted announcements on the DHT network,

  • NAT-puuride läbimise standardprotokollide kasutamine.

Jami on ehitatud kahe erineva jaotatud võrgu üle:

  • OpenDHT kademlia võrgu, et tagada jaotatud ühendusvõrgu loomine ja sõnumite levitamine,

  • JamiNS’i blokid, et pakkuda jaotatud nime registreerimist.

OpenDHT võrk

Vaata ka

Visit the https://github.com/savoirfairelinux/opendht page for more information about OpenDHT. OpenDHT provides a distributed key-value datastore for connectivity establishment (with ICE) and message distribution in Jami.

OpenDHT võrguga saab ühineda teadmisega, mis tahes võrgustikuga juba ühendatud sõlmist.

Jami kliendid kasutavad esimese istungi järel võrgustiku juurde uuesti ühendamiseks püsivat noduse kaesi.

Jami kliendid kasutavad praegu bootstrap.jami.net:4222 vaikimisi (seadistatavaks) esmase tuvastuse serveriks ja võrgu ID-ga 0 (vaikimisi avalik OpenDHT-võrk).

Osale OpenDHT võrgus

Iga Jami konto töötab OpenDHT-nodega, mis aitab kaasa võrgule ja võimaldab Jami’l skaalida.

Jami kasutajad saavad olla täieliku sõltumatuse oma stabiilsete OpenDHT-nodega ja konfigurerida seda kui käivituse nod Jami, aidates samal ajal parandada staatust, tugevust ja vastupidavust iga avaliku OpenDHT-võrgu kasutaja jaoks.

Standalone nodit saab käivitada kasutades [dhtnode kasulik]https://github.com/savoirfairelinux/opendht/wiki/Running-a-node-with-dhtnode) kaasatud OpenDHT. dhtnode ei säilitata andmeid ja on oletuslik mälu säilitamise piir 8 MiB.

Stable community-run DHT nodes will be added to the default bootstrap server list at the request of their owner, as more bootstrap nodes means a more resilient, independent network.

Märkus

To add a community-run DHT node to the default bootstrap server list, please email contact@jami.net.

JamiNS-i plokiahel

JamiNS-i plokiahel on eksperimentaalne ja selle arhitektuur peaks aegamööda arenema.

Jami kliendid ei käienda blookiinud ise, vaid suhtlevad selle asemel JamiNS serveriga HTTP-ga nime registreerimiseks ja päringuks, REST API-ga.

The name server is set at the account level. This enables the Jami client to connect simultaneously to multiple user directories.

Osale JamiNSi plokiahelas

The default Jami name service is ns.jami.net, provided by Savoir-faire Linux Inc., connected to an Ethereum blockchain node; the goal being to give everyone the possibility (if they which so) to run their own blockchain node and HTTP service, mine some Ether, and use it to pay the transaction fee needed to register their username in Jami.

Code of the Ethereum contract, the blockchain genesis file, and the NodeJS module (HTTP server) can be found here.

Jami sõlme juhtimine

Prerequisites

  1. Geth 1.8.23+ (download from here)

  2. Jami genesis file (download from here)

Jami võrgustiku liige

Jami võrguga ühinemise protsess on sarnane tavalise ethereumi võrguga ühinemise protsessiga, erinevusest, et andmevaata algatamiseks kasutatakse geneesifaili.

  1. Lase alla Jami geneesi faili Jami github repo

  2. Looda oma arvutis direktorium, mida kasutate Jami blockchain andmete säilitamiseks

    • Example for GNU/Linux (/home/username/jamichain)

    • Example for macOS (/Users/username/jamichain)

    • Windows’i näide (C:\Kasutajad\kasutaja nimi\jamichain)

  3. Kasutage geth, et initiaaliseerida (2) loodud direktoriumi, jookses ./geth --datadir /home/username/jamichain init genes is.json

  4. Nüüd saate alustada Geth’i käskujoonide valikutega ja täpsustada ühe Jami käivituse sõlme järgmiselt:

geth --datadir=/home/username/jamichain --syncmode=full --networkid 1551 --bootnodes "enode://11ba6d3bfdc29a8afb24dcfcf9a08c8008005ead62756eadb363523c2ca8b819efbb264053db3d73949f1375bb3f03090f44cacfb88bade38bb6fc2cb3d890a5@173.231.120.228:30301" console

See käivitab Geth-taustateenuse, millel on seotud konsool, mis nüüd sünkroniseerub Jami võrguga.