Jami-jakeluverkosto

Yhteydet

Jami perustuu [jakettuun verkkoon] (tutoriaaleihin/Jami-jakettuun verkkoon), joka tuo useita etuja verrattuna liittovaltion verkkoihin:

  • Ei ole mitään epäonnistumista.

  • More resilient to censorship,

  • ei ole riippuvainen muista kuin sen käyttäjistä,

  • Luottamus ei ole välttämätöntä.

verkko-topo

Tämä verkosto muodostaa jakautuneen hash-taulukon (DHT)

Jakalukuisten viestintäjärjestelmien keskeinen ongelma on vertaisyhteys, Jami saavuttaa sen kahdella elementtillä:

  • Salaistettuja ilmoituksia DHT:stä,

  • NAT-reiän lyömisen vakioprotokollien käyttö.

Jami perustuu kahteen eri jakautumiseen verkkoon:

  • OpenDHT kademlia-verkosto, jolla varmistetaan hajautettu yhteydenpito ja viestien jakelu,

  • JamiNS-rakenne tarjoaa nimensä rekisteröinnin.

OpenDHT-verkosto

Katso https://github.com/savoirfairelinux/opendht> lisätietoja OpenDHT:stä, joka tarjoaa yhteydenpisteiden (ICE:n kanssa) ja viestejen jakelun varten jakautuneen avain-arvon tietovara Jami.

OpenDHT-verkkoon voi liittyä tietämällä siitä, että on tiedossa mistä tahansa verkkoon jo kytketystä johdosta.

Jami-asiakkaat käyttävät pysyvää node-mällöintiä yhdistääkseen verkkoon ensimmäisen istunnon jälkeen.

Jami-asiakkaat käyttävät tällä hetkellä bootstrap.jami.net:4222 oletusarvoisena (konfiguraattavana) bootstrap-nutkona ja verkko-ID 0 (ennetysvirtainen, julkinen OpenDHT-verkko).

Osaltaan OpenDHT-verkkoon

Jokainen Jami-tili käyttää OpenDHT-nutkinta, joka edistää verkkoa ja mahdollistaa Jamiin skaalaamaan.

Jami-käyttäjät voivat olla täysin itsenäisiä käyttämällä oman vakaa OpenDHT-nodeensa ja konfiguroimalla sen käynnistysnodeiksi Jami-nodeessa, samalla kun autetaan parantamaan vakautta, vakautta ja kestävyyttä jokaiselle OpenDHT-verkon käyttäjälle.

Yksityisistä kytkistä voidaan käyttää OpenDHT:n mukana olevaa [dhtnode-työohjelmaa]https://github.com/savoirfairelinux/opendht/wiki/Running-a-node-with-dhtnode). dhtnode ei säilytä mitään tietoja ja sillä on oletettu muistivarastoon raja 8 MiB.

Yhteisön ylläpitämät vakaat DHT-liität lisätään oletusarvioon omistajan pyynnöstä, koska enemmän käynnistysliität merkitsee kestävämmää ja itsenäistä verkkoa.

JamiNS-kiertotiedot

JamiNS-blockchain on kokeellinen ja sen arkkitehtuurin odotetaan kehittyvän.

Jami-asiakkaat eivät itse käytä blockchain-liitkiä, vaan kommunikoivat JamiNS-palvelimen kanssa nimirekisteröinnin ja kyselyjen HTTP:n avulla, REST-API:n avulla. Tämä johtuu siitä, että blockchain-liitkien käynnistämiseen tarvittavat resurssit ovat useimpien loppukäyttäjien kannalta liian korkeat.

Nimipalvelin voidaan konfiguroida alitilille Jami:ssä, mikä mahdollistaa Jami-asiakkaiden yhteyden erilaisiin enemmän tai vähemmän keskitetyn käyttäjäkatsoihin.

Osaltaan JamiNS-sarjan verkkoon

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 : 1

Jami-nutkinta

Ehdotukset:

  1. Geth 1.8.23+ (lähetys [TÄHDÄ]https://geth.ethereum.org/downloads/))

  2. Jami genesis file (download from HERE)

Jami-verkoston jäsen

Jami-verkkoon liittymisen prosessi on samanlainen kuin säännöllisen ethereum-verkoston liittyminen, mutta genesis-tiedostoa käytetään tietokantaan aloittamiseen.

  1. Ladata Jami genesis-tiedosto Jami github-sivustoilta

  2. Luo tietokonesi luettelo, jota käytät Jamiin tietosähkötiedon tallentamiseen.

  • Esimerkki MacOS:lle (/käyttäjät/käyttäjänimi/jamichain)

  • Linuxin esimerkki (/home/username/jamichain)

  • Esimerkki Windowsille (C:\käyttäjät\käyttäjätunnus\jamichain)

  1. Käytä geth aloittamaan luomaasi kansi (2) käyttämällä ```./geth –datadir /home/username/jamichain init genes is.json ``

  2. Voit nyt aloittaa Gethin käyttämällä käskyjoukon vaihtoehtoja ja määrittää yksi Jami:n käynnistysnoudista seuraavasti:

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

Tämä käynnistää Geth-demonin, jolla on liitetty konsoli, joka synkronoidaan Jamiin verkkoon.