జామి పంపిణీ నెట్వర్క్
కనెక్టివిటీ
Jami relies on a distributed network, which brings multiple advantages when compared to federated networks:
విఫలమవ్వడానికి ఏ పాయింట్ లేదు,
సెన్సార్షిప్కు మరింత నిరోధకత,
దాని వినియోగదారుల కంటే వేరే దేని మీద ఆధారపడకూడదు,
నోడ్ల మధ్య నమ్మకం అవసరం లేదు.

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 రంధ్రం కొట్టడానికి ప్రామాణిక ప్రోటోకాల్లను ఉపయోగించడం.
జామి రెండు విభిన్న పంపిణీ నెట్వర్క్లపై నిర్మించబడిందిః
పంపిణీ చేయబడిన కనెక్టివిటీ ఏర్పాటు మరియు సందేశ పంపిణీ కోసం OpenDHT కాడెమిలియా నెట్వర్క్,
జమిన్స్ బ్లాక్చెయిన్ ద్వారా పంపిణీ చేయబడిన పేరు నమోదును అందించడానికి.
ఓపెన్ డిహెచ్టి నెట్వర్క్
See also
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.
ఓపెన్ డిహెచ్టి నెట్వర్క్కు ఇప్పటికే నెట్వర్క్కు కనెక్ట్ అయిన ఏదైనా నోడ్ గురించి తెలుసుకోవడం ద్వారా చేరవచ్చు. ఈ నోడ్ నెట్వర్క్లోని ఇతర నోడ్ల గురించి తన జ్ఞానాన్ని పంచుకుంటుంది.
జమి క్లయింట్లు మొదటి సెషన్ తర్వాత నెట్వర్క్కు తిరిగి కనెక్ట్ చేయడానికి స్థిరమైన నోడ్ కాష్ను ఉపయోగిస్తాయి. మొదటి కనెక్షన్ కోసం కాన్ఫిగర్ చేయగల, తెలిసిన, స్థిరమైన "బూట్స్ట్రాప్" నోడ్ ఉపయోగించబడుతుంది లేదా కాష్ చేయబడిన నోడ్లు సమాధానం ఇవ్వకపోతే.
Jami క్లయింట్లు ప్రస్తుతం bootstrap.jami.net:4222 ను డిఫాల్ట్ (నిర్మాణీకరించదగిన) బూట్స్ట్రాప్ నోడ్ మరియు నెట్వర్క్ ID 0 (డిఫాల్ట్, పబ్లిక్ OpenDHT నెట్వర్క్) గా ఉపయోగిస్తున్నారు.
ఓపెన్ డిహెచ్టి నెట్వర్క్కు సహకరించుట
ప్రతి జామి ఖాతా ఓపెన్ డిహెచ్టి నోడ్ను నడుపుతుంది, నెట్వర్క్కు దోహదం చేస్తుంది మరియు జామి స్కేల్ చేయడానికి అనుమతిస్తుంది.
జామి వినియోగదారులు తమ సొంత స్థిరమైన ఓపెన్ డిహెచ్టి నోడ్ను అమలు చేయడం ద్వారా పూర్తి స్వాతంత్ర్యం పొందవచ్చు మరియు దానిని జామిలో బూట్స్ట్రాప్ నోడ్గా కాన్ఫిగర్ చేయవచ్చు, అదే సమయంలో పబ్లిక్ ఓపెన్ డిహెచ్టి నెట్వర్క్ యొక్క ప్రతి వినియోగదారుకు స్థిరత్వం, దృఢత్వం మరియు స్థితిస్థాపకతను మెరుగుపరచడంలో సహాయపడుతుంది.
OpenDHT తో సహా [dhtnode యుటిలిటీ]https://github.com/savoirfairelinux/opendht/wiki/Running-a-node-with-dhtnode) ను ఉపయోగించి ఒక స్వతంత్ర నోడ్ను అమలు చేయవచ్చు. dhtnode ఏ డేటాను కూడా కొనసాగించదు మరియు డిఫాల్ట్గా 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.
Note
To add a community-run DHT node to the default bootstrap server list, please email contact@jami.net.
జమిన్స్ బ్లాక్చెయిన్
జమిన్స్ బ్లాక్చెయిన్ ప్రయోగాత్మకంగా ఉంది మరియు దాని నిర్మాణం అభివృద్ధి చెందుతుందని భావిస్తున్నారు.
జామి క్లయింట్లు బ్లాక్చెయిన్ నోడ్లను తాము అమలు చేయరు, బదులుగా పేరు నమోదు మరియు ప్రశ్న కోసం HTTP ఉపయోగించి జామిన్స్ సర్వర్తో కమ్యూనికేట్ చేస్తారు, REST API తో. ఇది బ్లాక్చెయిన్ నోడ్ను అమలు చేయడానికి అవసరమైన వనరులు చాలా మంది తుది వినియోగదారులకు చాలా ఎక్కువగా ఉంటాయి.
The name server is set at the account level. This enables the Jami client to connect simultaneously to multiple user directories.
జమిన్స్ బ్లాక్చెయిన్ కు సహకారం
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.
జామి నోడ్ను అమలు చేయడం
Prerequisites
జామి నెట్వర్క్లో చేరడం
జామి నెట్వర్క్లో చేరడం ప్రక్రియ సాధారణ ఇథెరియం నెట్వర్క్లో చేరడం ప్రక్రియకు సమానంగా ఉంటుంది, అయితే డేటా డైరెక్టరీని ప్రారంభించడానికి జెనెసిస్ ఫైల్ ఉపయోగించబడుతుంది.
జామి గిట్హబ్ రిపో నుండి జామి జెనెసిస్ ఫైల్ను డౌన్లోడ్ చేసుకోండి
మీ కంప్యూటర్లో ఒక డైరెక్టరీని సృష్టించండి, ఇది మీరు జామి బ్లాక్చెయిన్ డేటాను నిల్వ చేయడానికి ఉపయోగిస్తారు
Example for GNU/Linux (/home/username/jamichain)
Example for macOS (/Users/username/jamichain)
విండోస్ కోసం ఉదాహరణ (C:\User\username\jamichain)
మీరు సృష్టించిన డైరెక్టరీని ప్రారంభించడానికి geth ను ఉపయోగించండి (2) లో ```./geth --datadir /home/username/jamichain init genes is.json ``
మీరు ఇప్పుడు మీకు కావలసిన కమాండ్ లైన్ ఎంపికలతో ప్రారంభించవచ్చు మరియు జమీ యొక్క బూట్ నోడ్లలో ఒకదాన్ని ఈ క్రింది విధంగా పేర్కొనవచ్చుః
geth --datadir=/home/username/jamichain --syncmode=full --networkid 1551 --bootnodes "enode://11ba6d3bfdc29a8afb24dcfcf9a08c8008005ead62756eadb363523c2ca8b819efbb264053db3d73949f1375bb3f03090f44cacfb88bade38bb6fc2cb3d890a5@173.231.120.228:30301" console
ఇది ఒక జేత్ డీమోన్ ప్రారంభిస్తుంది ఒక కనెక్ట్ కన్సోల్ తో ఇది ఇప్పుడు జామి యొక్క నెట్వర్క్ తో సమకాలీకరించడం ఉంది.