diff --git a/docs/manual/_sources/interfaces.rst.txt b/docs/manual/_sources/interfaces.rst.txt index aef8b37..5c9523d 100644 --- a/docs/manual/_sources/interfaces.rst.txt +++ b/docs/manual/_sources/interfaces.rst.txt @@ -89,7 +89,7 @@ These can be used to control various aspects of interface behaviour. Interface Modes =============== -The optional ``mode`` option is available on all interfaces, and allows +The optional ``mode`` setting is available on all interfaces, and allows selecting the high-level behaviour of the interface from a number of modes. These modes affect how Reticulum selects paths in the network, how announces are propagated and how long paths are valid. @@ -314,6 +314,9 @@ you must use the i2p_tunneled option: listen_port = 5001 i2p_tunneled = yes +In almost all cases, it is easier to use the dedicated ``I2PInterface``, but for complete +control, and using I2P routers running on external systems, this option also exists. + .. _interfaces-tcpc: TCP Client Interface @@ -323,6 +326,10 @@ To connect to a TCP server interface, you would naturally use the TCP client interface. Many TCP Client interfaces from different peers can connect to the same TCP Server interface at the same time. +The TCP interface types can also tolerate intermittency in the IP link layer. +This means that Reticulum will gracefully handle IP links that go up and down, +and restore connectivity after a failure, once the other end of a TCP interface reappears. + .. code:: # Here's an example of a TCP Client interface. The @@ -383,8 +390,8 @@ with all other peers on a local area network. *Please Note!* Using broadcast UDP traffic has performance implications, especially on WiFi. If your goal is simply to enable easy communication with all peers in your local ethernet broadcast domain, the -:ref:`Auto Interface` performs better, and is just as -easy to use. +:ref:`Auto Interface` performs better, and is even +easier to use. The below example is enabled by default on new Reticulum installations, as it provides an easy way to get started and to test Reticulum on a @@ -395,7 +402,7 @@ pre-existing LAN. # This example enables communication with other # local Reticulum peers over UDP. - [[Default UDP Interface]] + [[UDP Interface]] type = UDPInterface interface_enabled = True diff --git a/docs/manual/_sources/understanding.rst.txt b/docs/manual/_sources/understanding.rst.txt index c057197..5701401 100644 --- a/docs/manual/_sources/understanding.rst.txt +++ b/docs/manual/_sources/understanding.rst.txt @@ -51,9 +51,8 @@ connected to any kind of computer or mobile device that Reticulum can run on. The ultimate aim of Reticulum is to allow anyone to be their own network operator, and to make it cheap and easy to cover vast areas with a myriad of independent, interconnectable and autonomous networks. -Reticulum **is not** *one network*, it **is a tool** to build *thousands of networks*. - -Networks without kill-switches, surveillance, censorship and control. Networks that can freely interoperate, associate and disassociate +Reticulum **is not** *one network*, it **is a tool** to build *thousands of networks*. Networks without +kill-switches, surveillance, censorship and control. Networks that can freely interoperate, associate and disassociate with each other, and require no central oversight. Networks for human beings. *Networks for the people*. .. _understanding-goals: diff --git a/docs/manual/interfaces.html b/docs/manual/interfaces.html index 5d5ba13..bf3fdff 100644 --- a/docs/manual/interfaces.html +++ b/docs/manual/interfaces.html @@ -137,7 +137,7 @@ option, to set the interface speed in bits per second.

Interface Modes

-

The optional mode option is available on all interfaces, and allows +

The optional mode setting is available on all interfaces, and allows selecting the high-level behaviour of the interface from a number of modes. These modes affect how Reticulum selects paths in the network, how announces are propagated and how long paths are valid.

@@ -343,12 +343,17 @@ you must use the i2p_tunneled option:

i2p_tunneled = yes
+

In almost all cases, it is easier to use the dedicated I2PInterface, but for complete +control, and using I2P routers running on external systems, this option also exists.

TCP Client Interface

To connect to a TCP server interface, you would naturally use the TCP client interface. Many TCP Client interfaces from different peers can connect to the same TCP Server interface at the same time.

+

The TCP interface types can also tolerate intermittency in the IP link layer. +This means that Reticulum will gracefully handle IP links that go up and down, +and restore connectivity after a failure, once the other end of a TCP interface reappears.

# Here's an example of a TCP Client interface. The
 # target_host can either be an IP address or a hostname.
 
@@ -399,15 +404,15 @@ with all other peers on a local area network.

Please Note! Using broadcast UDP traffic has performance implications, especially on WiFi. If your goal is simply to enable easy communication with all peers in your local ethernet broadcast domain, the -Auto Interface performs better, and is just as -easy to use.

+Auto Interface performs better, and is even +easier to use.

The below example is enabled by default on new Reticulum installations, as it provides an easy way to get started and to test Reticulum on a pre-existing LAN.

# This example enables communication with other
 # local Reticulum peers over UDP.
 
-[[Default UDP Interface]]
+[[UDP Interface]]
   type = UDPInterface
   interface_enabled = True
 
diff --git a/docs/manual/searchindex.js b/docs/manual/searchindex.js
index 963958c..e0df7f8 100644
--- a/docs/manual/searchindex.js
+++ b/docs/manual/searchindex.js
@@ -1 +1 @@
-Search.setIndex({docnames:["examples","gettingstartedfast","index","interfaces","networks","reference","understanding","using","whatis"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["examples.rst","gettingstartedfast.rst","index.rst","interfaces.rst","networks.rst","reference.rst","understanding.rst","using.rst","whatis.rst"],objects:{"RNS.Destination":{announce:[5,1,1,""],app_and_aspects_from_name:[5,1,1,""],clear_default_app_data:[5,1,1,""],create_keys:[5,1,1,""],decrypt:[5,1,1,""],deregister_request_handler:[5,1,1,""],encrypt:[5,1,1,""],full_name:[5,1,1,""],get_private_key:[5,1,1,""],hash:[5,1,1,""],hash_from_name_and_identity:[5,1,1,""],load_private_key:[5,1,1,""],register_request_handler:[5,1,1,""],set_default_app_data:[5,1,1,""],set_link_established_callback:[5,1,1,""],set_packet_callback:[5,1,1,""],set_proof_requested_callback:[5,1,1,""],set_proof_strategy:[5,1,1,""],sign:[5,1,1,""]},"RNS.Identity":{CURVE:[5,2,1,""],KEYSIZE:[5,2,1,""],TRUNCATED_HASHLENGTH:[5,2,1,""],decrypt:[5,1,1,""],encrypt:[5,1,1,""],from_bytes:[5,1,1,""],from_file:[5,1,1,""],full_hash:[5,1,1,""],get_private_key:[5,1,1,""],get_public_key:[5,1,1,""],get_random_hash:[5,1,1,""],load_private_key:[5,1,1,""],load_public_key:[5,1,1,""],recall:[5,1,1,""],recall_app_data:[5,1,1,""],sign:[5,1,1,""],to_file:[5,1,1,""],truncated_hash:[5,1,1,""],validate:[5,1,1,""]},"RNS.Link":{CURVE:[5,2,1,""],ESTABLISHMENT_TIMEOUT_PER_HOP:[5,2,1,""],KEEPALIVE:[5,2,1,""],get_remote_identity:[5,1,1,""],identify:[5,1,1,""],inactive_for:[5,1,1,""],no_inbound_for:[5,1,1,""],no_outbound_for:[5,1,1,""],request:[5,1,1,""],set_packet_callback:[5,1,1,""],set_remote_identified_callback:[5,1,1,""],set_resource_callback:[5,1,1,""],set_resource_concluded_callback:[5,1,1,""],set_resource_started_callback:[5,1,1,""],set_resource_strategy:[5,1,1,""],teardown:[5,1,1,""]},"RNS.Packet":{ENCRYPTED_MDU:[5,2,1,""],PLAIN_MDU:[5,2,1,""],resend:[5,1,1,""],send:[5,1,1,""]},"RNS.PacketReceipt":{get_rtt:[5,1,1,""],get_status:[5,1,1,""],set_delivery_callback:[5,1,1,""],set_timeout:[5,1,1,""],set_timeout_callback:[5,1,1,""]},"RNS.RequestReceipt":{get_progress:[5,1,1,""],get_request_id:[5,1,1,""],get_response:[5,1,1,""],get_response_time:[5,1,1,""],get_status:[5,1,1,""]},"RNS.Resource":{advertise:[5,1,1,""],cancel:[5,1,1,""],get_progress:[5,1,1,""]},"RNS.Reticulum":{ANNOUNCE_CAP:[5,2,1,""],MTU:[5,2,1,""],should_use_implicit_proof:[5,1,1,""],transport_enabled:[5,1,1,""]},"RNS.Transport":{PATHFINDER_M:[5,2,1,""],deregister_announce_handler:[5,1,1,""],has_path:[5,1,1,""],hops_to:[5,1,1,""],next_hop:[5,1,1,""],next_hop_interface:[5,1,1,""],register_announce_handler:[5,1,1,""],request_path:[5,1,1,""]},RNS:{Destination:[5,0,1,""],Identity:[5,0,1,""],Link:[5,0,1,""],Packet:[5,0,1,""],PacketReceipt:[5,0,1,""],RequestReceipt:[5,0,1,""],Resource:[5,0,1,""],Reticulum:[5,0,1,""],Transport:[5,0,1,""]}},objnames:{"0":["py","class","Python class"],"1":["py","method","Python method"],"2":["py","attribute","Python attribute"]},objtypes:{"0":"py:class","1":"py:method","2":"py:attribute"},terms:{"0":[0,3,5,6,8],"00":[6,7],"000":[],"00000000":6,"00000100":6,"00000111":6,"01":6,"01010000":6,"02":[],"05":0,"07":[],"1":[0,3,5,6,7],"10":[0,3,6,7],"100":[0,3,6],"1000":0,"10000000":6,"1024":0,"11":6,"115200":[3,7],"12":3,"1200":6,"125":3,"125000":3,"127":3,"128":[5,6,8],"13":7,"14":6,"141":[],"15":3,"150":[3,7],"150m":3,"151":6,"16":[3,7],"17":7,"18":[],"180":[],"182":[],"187":7,"2":[0,3,5,6,7],"20":[0,3,6,7],"200":[3,7],"2000000":[],"205":[],"211":[],"23":7,"237":[6,8],"24":3,"240":[],"25":[0,2,8],"255":3,"256":[5,6],"27":7,"270":[],"2f":0,"3":[0,6,7,8],"30":7,"323":[],"33":6,"34":[],"360":5,"3600":0,"367":[],"37":[],"37428":7,"38":7,"383":5,"3e12fc71692f8ec47bc5":1,"3w3lha":[],"4":[6,7],"409":[],"4242":3,"430":6,"45":0,"460":[],"469":7,"476":5,"477":6,"48555":3,"49":7,"49555":3,"4965":[1,7],"5":[0,3,5],"500":[5,6,8],"5001":3,"507":5,"512":[3,5,6],"5245a8efe1788c6a70e1":7,"55":3,"56b115c30cd386cad69c":7,"5urvjicpzi7q3ybztsef4i5ow2aq4soktfj7zedz53s47r54jnqq":3,"60":0,"600":3,"62":[6,8],"63":7,"64":[6,7],"7":3,"72":3,"74":7,"77":6,"7c565719ec7a8cdb1fe2":[],"7ca6f4e4dc26ae329e61":[],"8":[0,3,7],"80":[5,6,7],"8001":3,"80e29bf7cccaf31431b3":6,"83":[6,7],"86":7,"867":3,"867200000":3,"868":6,"88":3,"9":7,"900":6,"9382f334de63217a4278":7,"95":6,"\u00ec2pd":3,"abstract":6,"break":[5,6,8],"byte":[0,5,6,7,8],"case":[1,3,4,6,7],"class":[0,2,4,8],"default":[0,1,3,4,5,6],"do":[0,1,3,5,6,7,8],"export":1,"final":6,"float":[0,5],"function":[0,1,2,3,4,5,8],"import":[0,1,3,4,6],"int":0,"long":[0,3,6],"new":[0,3,4,5,6,7],"public":[0,2,3,5],"return":[0,5],"short":[6,7],"static":5,"switch":[3,6],"throw":[],"true":[0,1,3,5,7],"try":[0,2,3],"while":[0,1,3,4,5,6,8],A:[0,1,3,4,5,6,8],And:0,As:[1,3,4,5,6,8],At:[4,6],Be:[5,7],But:6,By:[0,1,3,5,6],For:[1,3,4,5,6,8],IF:[],IN:[0,5],If:[0,1,3,4,5,6,7,8],In:[0,1,3,4,5,6,7,8],It:[0,1,3,5,6,7,8],No:[3,6,8],On:[0,1,3,7],One:5,Or:3,That:6,The:[0,1,2,3,4,5,8],Then:1,There:[1,4,6,8],These:[1,3,6,7],To:[0,1,3,4,6,7,8],Will:5,With:[2,3,4,6,7],_:6,__:6,______:6,_______:6,________:6,________________:6,__init__:0,__main__:0,__name__:0,_exit:0,_with_:3,aarch64:1,ab:0,abil:1,abl:[0,1,3,4,5,6,7],about:[0,1,3,4,5,6],abov:[1,3,6],absolut:[1,8],accept:[5,6],accept_al:[0,5],accept_app:5,accept_non:5,access:[1,2,3,4,5,7],access_point:3,accomod:6,accord:6,accordingli:0,acheiv:[3,6],achiev:[5,6],acknowledg:8,across:4,act:[1,5,6],action:0,activ:[0,1,3,5,6],actor:6,actual:[0,1,3,6],ad:[0,2,4,5,6,8],adapt:4,add:[0,1,3,4,7],add_argu:0,addit:[6,8],addr1:[],addr2:[],address:[0,1,3,4,5,6,8],adher:5,admin:3,administr:7,adress:[0,1,4,5,6,8],advanc:6,advantag:5,adversari:1,advertis:[0,5],advis:6,ae:[6,8],affect:3,after:[0,4,6,7],again:[1,3,6],against:6,agenc:6,agent:6,agnost:[4,6],agnostic:6,aim:[2,6],air:8,airtim:3,aliv:[5,6],all:[0,1,2,3,4,5,6,7,8],alloc:[3,5,6,7],allow:[0,1,3,4,5,6,7,8],allow_al:[0,5],allow_list:5,allow_non:5,allowed_list:5,almost:[3,6],alo:6,alon:3,along:[4,6],alreadi:[0,1,4,6],als:[],also:[0,1,3,4,5,6,7,8],alter:6,altern:[0,3,7],although:[6,8],alwai:[1,5,6,7],amateur:[3,8],amet:[],amount:[3,4,5,6,8],an:[0,1,3,4,5,6,7,8],android:2,ani:[0,1,3,4,5,6,7,8],announc:[2,3,5],announce_cap:[3,5],announce_handl:0,announced_ident:[0,5],announceloop:0,announcesampl:0,announec:[],anonym:[1,4,5,6,8],anoth:[1,5,6,7],answer:[6,7],anymor:1,anyon:[0,1,4,5,6],anyth:[3,6],anywher:[0,3],ap:[3,6],apart:[],api:[1,2,6,8],apk:1,app:[0,1,5,6],app_and_aspects_from_nam:5,app_data:[0,5],app_nam:[0,5],app_timeout:0,append:[0,6],appli:[5,6],applic:[0,4,5,6,7],approach:[6,7],approv:6,approxim:[],apt:1,ar:[0,1,3,4,5,6,7,8],arbitrari:[5,6],arbritrari:8,architectur:1,area:[3,4,6,8],arg:0,argon:0,argpars:0,argument:[0,5,7],argumentpars:0,arm64:2,around:6,arriv:[0,6],ask:[0,5],aspect:[0,3,5,6],aspect_filt:[0,5],assign:[6,7],associ:[1,5,6],assum:[3,6],asymmetr:[6,8],attached_interfac:[],attack:1,attempt:5,attribut:5,audit:8,authent:[1,3,4,5,6,8],author:6,auto:[2,5,6],auto_compress:5,autoconfigur:[3,8],autodiscov:3,autointerfac:[3,7],autom:6,automat:[0,1,3,4,5,6,7,8],autonom:[4,6],autoomat:0,avail:[0,1,3,4,5,6,7,8],availadbl:[],averag:6,avoid:[6,7],awai:[0,4,6,7],awar:6,ax25kissinterfac:3,ax:[2,8],b32:[1,3],b:[0,4],back:[0,6,8],background:[1,3],backhaul:4,band:6,bandwidth:[1,3,4,5,6,8],bare:0,barrier:6,base32:3,base:[2,3,4,5,6,7,8],basi:[5,6,8],basic:[0,1,2],baud:3,beacon:3,beam:[],becaus:[4,6],becki:0,becom:[0,1,4,6],been:[0,1,3,4,5,6,8],befor:[0,1,5,6,7],begin:[0,5],begun:5,behaviour:3,behind:[1,6],being:[3,5,6],beings:6,belief:6,below:[1,3],benefici:7,best:[1,6,8],beta:8,better:3,between:[0,3,4,5,6],bgp:[],bi:6,bidirect:6,billion:[4,6],bin:7,binari:[0,1,6],bind:3,bit:[3,5,6,7,8],bitrat:3,blob:[0,6],block:3,board:[1,6,8],boot:7,both:[1,3,4,5,6,8],boundari:[3,6],bp:[],bridg:2,briefli:6,bring:3,broadcast:[1,2,3,5,6],broadcast_destin:0,broadcastloop:0,brought:[3,7],browser:1,buffer:3,bug:8,build:[0,1,2,3,6,8],built:[1,6,8],bundl:0,c:[0,4],cabl:4,cad:[],calcul:[5,6],call:[0,4,5,6,8],callabl:5,callback:[0,5],callsign:3,can:[0,1,2,3,4,5,6,7],cancel:5,candid:4,cannot:0,capabl:6,capac:[5,6],carambola:0,care:[1,5,8],carefulli:1,cargo_build_target:1,carri:[3,5,6],carrier:[4,8],caution:3,caveat:2,cb:6,cbc:8,cd:1,cdma:3,censor:6,censorship:6,central:[4,6],centralis:6,certain:[0,3,4,6],challeng:6,chang:[0,1,3,5,6,7,8],channel:[0,3,4,6,8],channelarg:0,chapter:[1,3,4,6,8],charact:0,characterist:6,cheap:6,check:[0,1,5,6],checksum:[5,8],choos:[0,1,3,6],choosen:6,chose:6,chosen:4,chunk:0,ciphertext:5,ciphertext_token:5,circumst:6,cl:0,clear:[0,5,6],clear_default_app_data:5,clear_screen:0,client:[0,1,2,5],client_connect:0,client_disconnect:0,client_ident:0,client_loop:0,client_packet_receiv:0,client_request:0,clone:1,close:[0,4,5],closed_callback:5,closer:6,closest:6,cluster:6,co:8,code:[1,2,3],codingr:3,com:[0,1],combin:[1,4,6],come:[1,6],comma:3,command:[0,1,7],comment:3,common:[1,2,4,6,8],commun:[0,1,3,4,5,6,7,8],compat:[1,3,5,6],compil:1,complet:[0,1,4,5,6,8],complex:[3,6],compon:6,compos:6,compress:[0,5,6],comput:[1,6,8],concaten:5,concept:[2,6],conceptu:6,conclud:[0,5],concurr:[6,7],condit:6,config:[0,1,4,7],configarg:0,configdir:5,configpath:0,configur:[0,1,2,3,4,5,6,8],confirm:[6,8],confus:6,congest:6,conjunct:3,connect:[0,2,3,4,5,6,7,8],consequ:[],consid:[6,8],consider:[],consist:6,constant:5,constantli:6,construct:6,consumpt:[],contact:6,contain:[0,4,5,6],contend:6,content:[4,7],context:6,continu:8,control:[0,1,3,4,5,6],conveni:0,convent:0,converg:[2,6],coordin:[4,5,6,8],core:[4,6,8],correct:[0,6],correctli:0,correspond:6,cost:[6,8],could:[0,1,3,4,5,6,8],count:6,counter:0,cours:[3,6],cover:[6,8],coverag:4,cpu:0,creat:[0,2,3,4,5,6,7],create_kei:5,create_receipt:[0,5],creation:6,creator:6,critic:6,cryptograph:[4,8],cryptographi:[1,6,8],ctrl:0,cull:5,current:[0,1,2,3,5,6],current_download:0,current_filenam:0,curv:[4,5,6,8],curve25519:[4,5,6,8],custom:[3,5,6],custom_network_nam:3,customis:3,d:[4,7],daemon:[1,3,5,7],dai:4,data:[0,1,3,4,5,6,8],data_port:3,databit:[3,7],date:[0,1],db:0,dbm:[0,3],debian:[6,7],debug:[],decai:[],decid:[4,5,6],decod:0,decrypt:[5,6],dedic:6,deep:1,def:0,default_timeout:[],defin:[0,3,6],definit:6,degrad:4,degre:3,delai:[1,6,7],deliv:[0,5],deliveri:[0,1,5,8],demand:5,demonstr:[0,3],depend:[1,4,6,7],deploi:6,deregist:5,deregister_announce_handl:5,deregister_request_handl:5,deriv:[6,8],describ:[3,5,6],descript:[0,7],design:[1,4,6,8],desir:[0,3,6],destin:[0,1,2,3,4,7],destination_1:0,destination_2:0,destination_clos:0,destination_hash:[0,5,7],destination_hexhash:0,detail:[0,1,2,3,5,7,8],detect:0,determin:[1,5,6],dev:[1,3,7],develop:[2,6,8],devic:[1,2,3,4,5,6,7],dh:5,dhcp:3,did:0,differ:[0,1,3,4,5,6,7,8],diffi:[4,6,8],difficult:1,digit:[6,8],dir:0,direct:[0,1,4,5,6],directli:[3,5,6,7,8],directori:[0,7],disabl:[3,6],disable_encrypt:[],disappear:3,disassoci:6,discard:6,disconnect:0,discov:1,discover:3,discoveri:[3,6,7],discovery_port:3,discovery_scop:3,discrimin:4,discuss:[1,6],disk:[0,5],displai:[0,6],dissolv:4,distanc:6,distant:5,distinct:[3,6],distinguish:6,distribut:[0,1,4,5,6,7],divmod:0,document:6,doe:[0,1,2,3,4,5,6],doesn:3,dolor:[],domain:[1,3],don:[0,1,4,5],done:[0,1,4,6],dori:4,dot:[6,7],down:0,downgrad:[],download:[0,3],download_began:0,download_conclud:0,download_finish:0,download_start:0,download_tim:0,driver:[7,8],droid:1,drop:[5,6,7],due:4,duplex:[6,8],dynam:[1,7],e702c42ba8:7,e:[0,4],each:[0,1,3,4,6],earli:1,earlier:6,eas:[3,6],easi:[1,3,6,7,8],easier:[1,4,7],easiest:[1,3,6],easili:[4,6,7,8],eca6f4e4dc26ae329e61:7,ecdh:[6,8],echo:[1,2,7],echo_destin:0,echo_request:0,ed25519:[6,8],edit:1,effeci:[],effici:[0,1,3,6,8],ei:0,either:[3,4,6],elaps:3,elif:0,ellipt:[4,5,6,8],els:[0,4,6],emploi:6,emptor:2,emul:1,enabl:[1,3,4,5,6,7],enable_transport:6,encapsul:[3,8],encod:0,encrypt:[0,1,4,5,6,8],encrypted_mdu:5,encryptionless:[],end:[0,4,5,6,8],endless:3,endpoint:[0,4,5,6],energi:1,engin:[],enhanc:6,enough:[1,6],ensur:[5,6],enter:0,entir:[4,6],entiti:6,entri:[0,1,6],enumer:0,environ:[1,4,6],environment:6,environmentlogg:6,ephemer:[4,5,6,8],equal:[4,6],equip:[3,4,6],equival:3,equl:[],error:[0,1],especi:3,essenti:[1,6],establish:[0,1,3,4,5,8],established_callback:5,establishment_timeout_per_hop:5,etc:7,eth0:3,eth1:3,ethernet:[1,3,4,6,8],even:[1,4,6,7,8],event:3,eventu:5,everi:[0,3,4,5,6],everyon:[4,6],everyth:[0,4,6],evolv:4,exact:6,exactli:[5,6],exampl:[1,2,3,5,6,7,8],example_util:[0,7],exampleannouncehandl:0,exce:[0,5],except:[0,3],exchang:[4,5,6,8],exclud:6,execstart:7,execstartpr:7,execut:[0,1,5,7],exhaust:6,exist:[0,1,3,6,8],exit:[0,1,5,7],exit_handl:0,expand:6,expect:[0,3,5,6,7],experi:[1,6],experiment:[1,8],expir:3,expiri:3,explain:5,explan:6,explicit:5,explicitli:[],explor:[0,6,8],expos:[3,5],extend:[0,1,5],extern:[1,3,5,8],extra:[1,3,4,7],extrem:[1,6,8],f:1,fa7ddfab5213f916dea:6,face:1,fact:8,factor:3,fail:[0,5],failed_callback:[0,5],failur:1,fals:[0,3,5],far:[4,6],fast:[2,5,6],faster:[1,3,6],fastest:[3,6],featur:[1,6,8],feed:5,feedback:0,feel:1,fernet:8,few:[1,3,4,6,7,8],fewer:5,fibr:8,field:6,file:[0,1,3,4,5,6,7,8],file_resourc:0,file_s:0,filelist:0,filelist_data:0,filelist_receiv:0,filelist_timeout_job:0,filenam:0,filetransf:[1,2,5],filter:[0,4,6],find:[4,6],firewal:[1,3],firmwar:[1,6],first:[0,1,3,5,6],fit:0,five:0,fix:[2,6],flag:[5,6],flexibl:[3,8],flow:[3,4],flow_control:3,flush:0,folder:1,follow:[0,1,3,6,7,8],forcibl:5,foreground:1,foremost:8,form:[1,3,4,5,6],format:[0,2,8],forth:0,forward:[3,5,6,8],forward_ip:3,forward_port:3,found:[0,1,3,4,6,7],four:4,frame:3,frankfurt:[1,7],free:[4,8],freedom:6,freeli:6,frequenc:[3,6],frequent:3,friendli:8,from:[0,1,3,4,5,6,7,8],from_byt:5,from_fil:5,fromhex:0,fruit:0,ftdi_ft230x_basic_uart_43891ckm:7,full:[0,3,5,6,7,8],full_hash:5,full_nam:[5,7],fulli:[6,8],funcion:5,fundament:6,further:[1,2],futur:[4,6],g:0,ga:0,gain:6,galact:6,gatekeep:6,gatewai:[1,4],gbp:7,gen:[],gener:[0,1,3,4,5,6,8],generalis:8,geograph:4,get:[0,2,3,5,8],get_packet_rssi:0,get_packet_snr:0,get_private_kei:5,get_progress:[0,5],get_public_kei:5,get_random_hash:[0,5],get_remote_ident:[0,5],get_request_id:5,get_respons:5,get_response_tim:5,get_rtt:[0,5],get_statu:5,geti2p:3,ghz:6,gi:0,gigabyt:8,gipsum:[],git:1,github:[0,1],give:[3,6,7],given:[3,4,5,6],global:[0,1,3,4,6,8],go:[0,1,6],goal:[2,3],good:[4,6],got:0,got_respons:0,govern:6,grape:0,graphic:1,great:6,greater:6,greatli:3,group:[3,5,6],group_id:3,grow:4,growth:2,guarante:[1,6],guess:3,guid:[1,5,6],h:[1,7],ha:[0,1,3,4,5,6,8],had:6,half:[6,8],hand:[0,1],handheld:6,handl:[0,3,4,5,6,7,8],handler:[0,5],happen:[0,5,6],hardlin:4,hardwar:[1,3,4,5,6,8],has_path:[0,5],hasattr:0,hash1:6,hash2:6,hash:[0,1,5,6,7],hash_from_name_and_ident:5,hashmap:0,have:[0,1,3,4,5,6,7],hazard:5,head:1,header:6,header_1:6,header_2:6,header_typ:[],hear:6,heard:[5,6],helium:0,hellman:[4,6,8],help:[0,4,6,7,8],her:4,here:[0,1,3,6,7],hexadecim:[0,6,7],hide:1,high:[3,6,8],higher:[4,8],highli:6,hill:4,hint:0,hit:0,hmac:8,hoc:8,hold:[5,6],home:4,homebrew:3,hop:[4,5,6,7,8],hops_to:5,host:[0,1,3,6,7],hostnam:3,hour:0,how:[0,1,3,4,6,8],howev:[1,4],http:[0,1],hub:3,huge:[],human:[0,5,6],i2p:[1,2,8],i2p_tunnel:3,i2pd:1,i2pinterfac:[1,3],i:0,id:[3,5,6,7],id_callsign:3,id_interv:3,idea:6,ideal:8,ident:[0,1,2,8],identif:[2,3,8],identifi:[0,3,5,6],identify:6,identifyexampl:0,ie:[],if00:7,ifac:[6,7],ifac_s:3,ifconfig:7,ignor:[3,5,6],ignored_devic:3,illustr:[4,6],immedi:[1,7],impact:[3,6],implement:[0,4,5,6,8],implic:3,implicit:[5,6],imposs:6,improv:[2,3],inactive_for:5,inbound:[3,5],includ:[0,2,3,5,6],incom:[0,3,5],incompat:[5,6],increas:3,incur:3,indefinit:[],independ:[5,6],independt:8,index:[0,1,2],indirectli:6,individu:[5,6],inevit:6,infer:6,info:[5,6],inform:[0,1,2,4,5,6],infrastructur:[1,3,4,6],ingo:5,initi:[0,4,5,6,8],initialis:[0,5,7],input:0,insert:6,insid:6,inspect:[1,3,4,6],instal:[1,3,4,7,8],instanc:[0,2,3,5,6,7],instanti:5,instead:[0,3,6,7],integr:[4,6],intend:[4,6],intention:6,inter:5,interact:[0,1,5,6],interchang:3,interconnect:[2,6],interest:6,interfac:[0,2,4,5,7],interface_en:[1,3,7],interface_mod:[],intermediari:6,intermitt:3,intern:[3,5],internet:[2,3,6,8],interoper:[1,4,6,8],interv:[3,5],intiat:0,introduc:6,introduct:2,intuit:8,invalid:[0,5],invers:6,investig:4,invis:[1,3],involv:4,io:[1,7],ip:[1,3,6,8],ipsum:[],ipv6:3,is_connected_to_shared_inst:0,is_request:[],is_respons:[],isdir:0,isfil:0,island:4,ism:6,isol:3,issu:4,its:[5,6],itself:[2,6],iv:8,job:0,join:[0,1,4,6],just:[0,1,3,4,6,8],k:0,kb:7,kbp:7,keep:[0,4,5,6,7,8],keepal:[5,6],kei:[0,2,4,5,8],kept:[3,4,5,6],kernel:[3,7,8],keyboardinterrupt:0,keyerror:5,keypair:6,keysiz:5,keystor:4,khz:3,ki:0,kill:[5,6],kilomet:[],kind:[3,4,6],kiss:[2,7,8],kiss_fram:3,kissinterfac:[3,7],know:[0,1,4,5,6],knowledg:[4,6],known:[0,5,6,7],krypton:0,lack:6,laid:6,lan:3,larg:[0,4,5,6,8],larger:[4,6],laser:3,last:[0,3,5],last_unit:0,latenc:[1,6,8],later:[0,1],latest:[0,1,3],latest_client_link:0,launch:1,lavg:[],layer:[3,4,6,8],lead:6,leak:1,learn:[0,1,6],least:[3,6,8],leav:[4,6],ledger:6,left:[3,5,6],legaci:4,len:0,length:[0,3,5,6],less:[3,6,8],let:[0,1,3,4,6,7],level:[3,6],libffi:1,librari:1,licens:6,light:7,like:[1,3,4,5,6,7,8],limit:[4,6],line:[0,1,4,6,8],link:[2,3,4,8],link_clos:0,link_establish:0,linkexampl:0,linux:[1,6],list:[0,3,5,6,8],list_deliv:0,list_fil:0,list_packet:0,list_receipt:0,list_timeout:0,listdir:0,listen:[0,3,6],listen_ip:3,listen_port:3,littl:6,lki:6,lkr:6,ll:[0,1,8],ln:[1,7],load:[0,5,7],load_private_kei:5,load_public_kei:5,local:[0,1,3,4,5,6,7,8],locat:[1,4,6,7],log:[0,3],log_error:0,log_info:0,loglevel:[0,5],longer:[0,4,6],longest:3,look:[0,1,3,6,7],loop:0,lora32:[],lora:[1,2,6,8],lorawan:6,lorem:[],lot:6,low:[1,3,4,6,8],lower:1,lxmf:1,m:[0,1,6,7],mac:6,machin:6,maco:1,made:[1,5,6],mai:[1,3,5,6],main:0,mainli:4,maintain:6,make:[1,6,7],malici:6,manag:[1,4,5,6],mani:[0,1,3,4,5,6,7,8],manipul:6,manner:4,manual:[0,1,3,4,5,7],mark:6,markqvist:[0,1],master:[0,5],match:[0,3,6],maximum:[3,5,6],mbp:7,mcu:[],mdu:0,mean:[4,6,7],measur:6,mechan:[2,3],medium:[3,4,5,6,8],member:4,memori:6,mention:6,menu:0,menu_mod:0,mesh:[1,3,4,8],messag:[0,1,5,6,7],messeng:6,metadata:1,metavar:0,method:[0,1,3,5,6],methodolog:[6,7],mhz:[3,6],mi:0,microcontrol:6,microwav:[],might:[1,3,4,6,7],millisecond:[0,7],mind:[4,8],minim:[2,6],minimalsampl:0,minimum:[0,4,6],minut:[0,1,3,6],mix:[1,3,4,7],mobil:[3,6],mode:[0,1,2,6,7,8],modem:[3,4,5,6,8],modifi:6,modul:[0,1,6,7,8],moment:[6,8],momentarili:3,monitor:6,moon:0,mor:[],more:[1,3,4,5,6,8],morej:[],most:[1,3,4,6,7],mostli:[3,4,6],motiv:2,move:[1,3,6],mqtt:[],mtu:[5,6,8],much:[1,3,4],multi:[6,7,8],multicast:3,multilater:6,multipl:[0,3,4,6,7],multipoint:6,must:[0,1,3,4,5,6],mw:3,my:6,mycal:3,myriad:6,n:[0,6],name:[0,2,3,4,5],namespac:0,nano:1,narg:0,natur:3,nears:6,necesarri:4,necessari:[1,3,5,6],necessarili:6,need:[0,1,2,3,4,6,7,8],neglig:6,neither:6,neon:0,net:3,netifac:1,network:[0,3,5,6,7,8],network_nam:3,never:[3,5,6],newer:6,newest:6,newli:[4,6],next:[1,4,5,6],next_hop:5,next_hop_interfac:5,nicknam:6,no1cll:3,no_inbound_for:5,no_outbound_for:5,nobl:0,noble_ga:0,noble_gas:0,node:[1,2,3,4,7,8],nodet:[],nomad:2,nomadnet:1,non:[1,5,6],none:[0,3,5,6,7],normal:[0,3,5],notat:[6,7],note:[0,1,3,6,7],noth:8,notic:6,notif:[0,5],now:[0,1,4,6,7],nt:0,num:0,number:[0,1,3,4,5,6,7],obfusc:[],object:5,obtain:6,obviusli:6,occasion:1,occur:8,off:[6,8],offer:[1,2,3,5,6],offlin:1,often:[1,4,6,7],oganesson:0,old:6,on_interfac:5,onc:[0,1,4,5,6,8],one:[0,1,3,4,5,6,7,8],ones:3,oneself:6,onli:[0,1,3,4,5,6,7,8],onlin:[],onto:6,open:[0,3,4,5,6,7,8],openmodem:[3,8],openssl:1,oper:[3,4,5,6,8],opt:6,optic:8,optim:4,optimis:[],option:[0,1,2,4,5,6,7],order:7,orem:[],organ:4,organis:[3,4],orient:6,origin:[0,4,6],original_hash:[],os:[0,3,6,7,8],ospf:[],other:[1,3,4,5,6,7],otherwis:5,our:[0,6],out:[0,1,3,4,5,6,8],outbound:[5,6],outgo:[0,1,3,5,6,7],outli:4,outlier:4,outlin:[1,6],output:[3,7],outward:[],over:[0,2,3,5,6,7,8],overal:6,overcom:6,overhead:[3,6],overrid:0,oversight:6,overview:[2,3,6],overwhelm:5,own:[0,1,4,5,6],owner:[],p:0,pack:0,packag:[1,3],packb:0,packet:[0,1,2,3,4,7,8],packet_callback:0,packet_deliv:0,packet_hash:0,packet_receipt:[0,5],packet_timed_out:0,packet_typ:[],packetreceipt:[0,5],pad:8,page:[1,2,6],pair:[3,6],palm:[],parallel:1,paramet:[3,4,5,6],pariti:[3,7],pars:0,parse_arg:0,parser:0,part:[0,3,4,6],particip:[2,4,6],pass:[0,3,4,5,6],passphras:[3,6],past:[],path:[0,1,3,5,6,7],path_respons:5,pathfind:[],pathfinder_m:5,pattern:6,payload:[5,6],peach:0,peer:[0,1,3,5,6,7],peer_pub_byt:[],peer_sig_pub_byt:[],peopl:6,per:[3,5,6,8],percent:0,percentag:5,perfect:[],perform:[0,1,3,4,6],period:[3,6],perman:7,permissionless:6,persecut:6,persist:[3,7],person:6,perspect:[3,6],pet:0,philosophi:6,physic:[1,3,6,7],pi:[0,4,6,7,8],pick:6,piec:6,ping:[1,7],pip3:[1,7],pip:[1,7],pkcs7:8,pkg:1,place:[4,6,7],plain:[0,3,5,6],plain_mdu:5,plaintext:[0,5],plan:[4,6],platform:[1,6],pleas:[0,1,3,7,8],plenti:6,plu:[],plug:7,pmr:6,point:[1,3,4,6,7],pomelo:0,poorli:4,popular:8,port0:7,port:[2,3,4,6,8],portabl:[3,6],posit:7,possess:6,possibl:[1,3,4,5,6,8],potenti:[0,3,6,7],power:[1,3,6],practic:[6,8],pre:[1,3,5,6],preambl:[3,7],precompil:1,predict:6,prefer:6,prepar:[0,4],prerequisit:5,presenc:5,preserv:[1,5],preshar:6,press:0,pretend:6,pretti:6,prettyhexrep:0,previou:0,previous:[4,5,6],primari:6,principl:[6,8],print:[0,3],print_filelist:0,print_help:0,print_menu:0,prioriti:6,prioritis:[2,4,5],privaci:8,privat:[1,3,5,6,8],privileg:7,probabl:[0,4,6,7,8],probe:7,problem:6,procedur:6,process:[1,3,5,6],product:[],program:[0,2,3,5,6],program_setup:0,programm:6,programmat:6,progress:[0,5,8],progress_callback:5,project:1,prompt:0,proof:[0,5,6,7],proof_packet:0,proof_requested_callback:5,proof_strategi:5,propag:[2,3,5],properli:1,properti:[4,5],proport:6,propos:1,protocol:[1,2,3,8],prove:[0,6],prove_al:[0,5],prove_app:5,prove_non:5,proven:[5,6],provid:[0,1,2,3,4,5,6,8],prv_byte:5,pub_byt:5,public_inform:0,publicli:1,purchas:[4,6,8],purg:5,purpos:[3,5,6],purposefulli:[],put:0,py:[0,1,7],pyseri:1,python3:[1,7],python:[1,6,7,8],q:[0,7],queri:[0,1],question:3,queu:5,queue:6,quickli:6,quiet:[3,7],quinc:0,quit:0,r:[0,6],radio:[2,3,4,5,6,7,8],radiu:[],radon:0,rais:[0,5],ram:3,rand:[],randint:0,random:[0,5,6],random_text_gener:0,randomis:6,randomli:[0,6],rang:[0,1,3,4,6,8],rare:3,raspberri:[4,6,7,8],rate:[0,3,7],rather:1,rb:0,re:[0,3,5,6],reach:[2,3,4],reachabl:[0,1,3,4,5,6,7],read:[0,1,6],readabl:[0,5,6],readi:[0,1,3,4,5,8],readili:8,real:[4,8],realli:[3,5],reason:[3,6],reassembl:6,reboot:1,recal:[0,5],recall_app_data:5,recap:6,receipt:[0,2,6],receiv:[0,1,3,5,6,7],received_announc:[0,5],recent:6,reception_rssi:0,reception_snr:0,reception_stat:0,recip:1,recipi:6,recommend:[0,1,6],reconstruct:6,record:[1,6],recoveri:3,recreat:6,refer:[0,1,2],regard:6,regist:[0,5],register_announce_handl:[0,5],register_request_handl:[0,5],rel:[6,8],relai:1,relat:1,releas:[1,3,6],relev:[0,3,5,6],reli:6,reliabl:[3,4,6,8],rem:0,remain:[3,5,6],rememb:6,remot:[0,5],remote_ident:[0,5],remote_identifi:0,remote_identity_hash:[],remote_p:0,remotesensor:6,remov:7,render:1,repeat:1,replac:[1,6,7],repli:[0,7],replic:6,reply_data:0,reply_text:0,report:3,repositori:[1,6],repres:6,represent:[0,6],request:[2,6,7],request_destin:0,request_fail:0,request_id:[0,5],request_packet:0,request_path:[0,5],request_receipt:[0,5],request_receiv:0,requested_at:[0,5],requestexampl:0,requestreceipt:5,requir:[0,1,3,4,6,7,8],research:8,resend:5,reserv:6,resili:8,resourc:[0,1,2],resource_callback:5,resource_sending_conclud:0,resource_strategi:5,respect:3,respond:[0,5],respons:[2,5,6],response_callback:[0,5],response_gener:[0,5],response_tim:[],rest:[4,8],restart:7,restartsec:7,restrict:4,result:[0,6],retain:3,reticulum:[0,3,4],retiiculum:[],retransmiss:6,retransmit:6,retri:6,reveal:[1,5,6,8],review:8,ridicul:6,right:4,rn:[0,1,5,7],rnode:[1,2,6,7,8],rnodeinterfac:[3,7],rnpath:[1,2],rnprobe:[1,2],rnsconfig:1,rnsd:[1,2],rnstatu:[1,2,3,6],roam:[3,6],robot:6,rotat:6,round:[0,5,7],rout:[1,3,4,5,6,8],routabl:[],router:3,rprogress:0,rsa:[],rssi:0,rtt:[0,5,6],rttstring:0,rule:[2,3],run:[0,1,3,4,5,6,7,8],runtim:6,rust:1,rw:[],rx:3,s:[0,1,3,4,6,7,8],said:6,same:[1,3,4,5,6,7],satisfi:6,save:[5,6],save_error:0,saved_filenam:0,scalabl:8,scale:6,scenario:[1,2,6],schedul:5,scope:3,screen:0,search:2,second:[0,3,5,6,7,8],secreci:[5,6,8],section:[1,3,4,6],secur:[1,6,8],see:[0,1,3,4,5,6,8],seek:6,seen:3,segment:[3,4,6,8],segment_index:[],select:[0,3],self:[0,4,8],send:[0,3,5,6,7],sender:[0,1,4,6],sendig:0,sensibl:1,sensor:6,sent:[0,1,5,6,7],sentiment:6,separ:[1,3,4,6,7],sequenc:[0,5,6,8],serial:[2,6,8],serialinterfac:3,serv:[0,3,4,6,7],serve_path:0,server:[0,1,2],server_callback:0,server_destin:0,server_fil:0,server_ident:0,server_link:0,server_loop:0,server_packet_receiv:0,servic:[1,2,4],session:6,set:[0,1,3,4,5,6,7,8],set_default_app_data:5,set_delivery_callback:[0,5],set_link_closed_callback:0,set_link_established_callback:[0,5],set_packet_callback:[0,5],set_proof_requested_callback:5,set_proof_strategi:[0,5],set_remote_identified_callback:[0,5],set_resource_callback:5,set_resource_concluded_callback:[0,5],set_resource_started_callback:[0,5],set_resource_strategi:[0,5],set_timeout:[0,5],set_timeout_callback:[0,5],setdaemon:0,setup:[0,1,2,3],sever:[1,4,5,7],sha256:8,sha:[5,6],shall:6,share:[1,4,5,6,7],she:4,shelf:[6,8],shop:0,shorter:3,shortest:6,shorthand:[3,7],should:[0,1,3,4,5,6,8],should_allow_unencrypt:[],should_quit:0,should_use_implicit_proof:5,show:7,shown:0,side:[3,8],sideband:2,sight:4,sign:[5,6],signatur:[5,6,8],significantli:3,similar:[1,3,4,7,8],simpl:[0,6,7,8],simpler:3,simplest:[3,6],simpli:[0,1,3,4,6,7],simplic:6,simultan:6,sinc:[0,1,3,4,5,6],singl:[0,3,5,6,8],singular:6,sit:[],site:[2,3],situat:[1,3,4,6],size:[0,1,3,5,6],size_str:0,sleep:[0,7],slice:0,slightli:1,slottim:[3,7],slow:[0,3,6],slower:[5,6],small:[0,3,4,6,8],smaller:5,snr:0,so:[0,1,3,4,5,6,7,8],softwar:[1,3,6,8],solut:6,solv:6,some:[0,1,3,4,6,7],someon:[1,3],someth:6,somethign:0,soon:5,sort:[3,6],soundmodem:3,sourc:[0,1,4,6,8],space:[0,1,4,6,8],span:6,special:[6,7],specif:[0,2,3,5,8],specifi:[0,1,3,4,5,7],spectrum:[3,6],speed:[3,6,7],split:0,sponsor:8,spread:3,spreadingfactor:3,squelch:3,ssid:3,stabl:[6,8],stack:[0,1,4,6,7,8],stage:[1,6],stai:[0,6,7],standard:[1,6],start:[0,2,3,5,6,7],startlimitintervalsec:[],startup:0,state:0,station:3,stationari:4,statist:0,statu:[0,1,2,3,5,6,7],stdout:0,step:1,still:[0,4,6],stock:0,stop:8,stopbit:[3,7],store:[0,6],store_tru:0,str:0,strategi:5,stream:6,strength:8,strictli:[3,6],string:[0,5],strong:6,structur:6,subject:[],subnet:[1,4],subsequ:6,succe:1,successful:5,successfulli:0,sucessfulli:6,sudo:[1,7],suffic:6,suffici:[1,3,6,7],suffix:0,suit:[1,6],suitabl:[0,1,3,4,6,8],suppli:[4,5,6],support:[0,1,2,4,6,8],sure:[1,7],surveil:6,surviv:6,sy:0,symlink:[1,7],symmetr:[5,6],system:[0,1,2,3,4,5,6,8],systemctl:7,systemd:7,t:[0,1,3,4,5,7],tabl:[1,3,4,6,7],tail:3,tailor:6,take:[0,1,3,6,8],taken:[0,6],tangerin:0,target:[0,7],target_host:[1,3],target_port:[1,3],tcp:[1,2,4,6,8],tcpclientinterfac:[1,3],tcpinterfac:7,tcpserverinterfac:[1,3],tdata:0,teardown:[0,5],teardown_reason:0,teffect:0,tell:[0,3],temperatur:6,ten:6,term:[4,6],termin:[1,5],terminolog:[4,6],termux:1,test:[1,3,6],testnet:[2,7],text:[0,1,4,6],tfile:0,than:[0,1,3,4,6],thei:[0,1,3,4,5,6],them:[0,1,3,4,6],thereaft:6,therefor:[6,8],thi:[0,1,2,3,4,5,6,7],thing:1,think:1,those:[4,6],though:[1,6],thourough:8,thousand:6,thread:0,three:[4,6],throough:3,throttl:4,through:[1,3,4,5,6,8],throughout:6,throughput:[6,8],thu:[4,5,6],ti:[0,6],time:[0,1,3,4,5,6,7],timeout:[0,5,7],timeout_callback:[],timeoutarg:0,timestr:0,tnc:[3,5,7,8],to_fil:5,todai:6,todo:[],togeth:6,token:[5,6],too:[0,4],tool:[6,8],top:[4,6],topic:6,topographi:[1,4,6],topolog:[3,6],total:[6,8],total_s:0,touch:8,toward:[0,6],tradeoff:6,tradit:[4,6],traffic:[0,1,3,4,5,6,7],tramsit:[],transceiv:[1,3,6,8],transfer:[0,5,6,7,8],transfer_s:0,transform:8,transmiss:[1,3,5,6],transmit:[0,3,6],transpar:[3,6],transpor:[],transport:[0,1,2,3,4,7,8],transport_en:5,transport_id:[],transport_typ:[],travers:6,treat:6,tri:0,trip:[0,5,7],trivial:8,truli:6,truncat:[5,6],truncated_hash:5,truncated_hashlength:5,trust:6,trustless:[4,6,8],ttime:0,ttransfer:0,ttyusb0:[3,7],ttyusb1:3,ttyusb2:3,tun0:3,tune:[],tunnel:[3,6,8],tupl:5,turnaround:3,tutori:1,two:[0,1,3,4,6],tx:3,txpower:3,txtail:[3,7],type:[0,1,2,3,4,5,7],typeerror:5,ubuntu:7,udp:[2,4,6,8],udpinterfac:3,uhf:[7,8],ultim:6,umsgpack:0,uncencrypt:0,uncensor:1,under:7,underli:[4,8],understand:[1,2],unencrypt:[0,5,6],unequivoc:6,unexplor:4,unforg:8,unidentifi:0,unifi:4,uninterest:0,uniqu:[6,8],unit:[0,7],unknown:[0,5,6],unless:[1,3,5,6],unlicens:6,unlik:6,unorganis:4,unpack:0,unpackb:0,unplug:7,unreli:3,unsign:[1,7],unsupport:5,until:[0,5],unwant:6,up:[0,1,3,4,6,7,8],updat:[0,1,5,6],upgrad:[1,6],upkeep:3,upon:[0,6],upset:0,urandom:8,us:[0,2,3,4,5,6],usabl:6,usag:[1,3,7],usb:[4,6,7],useabl:6,user:[0,1,3,4,6,7],user_input:0,userland:8,usernameher:7,usr:7,utf:0,util:[0,2,3,6],utilis:[1,4,7,8],v:7,valid:[0,3,5,6,7],valu:[3,5,6],valueerror:[0,5],vari:[6,7],variabl:0,varieti:[3,6,8],variou:[0,1,3,4,6],vast:6,ve:1,vehicl:3,vendor:0,verbos:7,veri:[1,4,5,6,7,8],verif:[5,6],verifi:[0,5,6],versa:[4,8],version:[6,7],vhf:[4,6,8],via:[1,3,6,7],vice:[4,8],view:[1,6,7],virtual:[3,4,6,8],visibl:0,w:7,wa:[0,3,4,5,6,8],wai:[0,1,3,4,6],wait:[0,6],want:[0,1,3,4,6,7,8],wantedbi:7,warrant:8,wast:3,wb:0,we:[0,1,3,6],websit:3,weight:7,welcom:1,well:[1,3,4,5,6,8],went:0,were:4,what:[0,1,2,5,6],whatev:[5,6],wheel:1,when:[0,1,3,4,5,6,7],whenev:[5,6],where:[1,2,3,4,5,6,7],whereupon:6,whether:[0,3,5,6],which:[0,1,3,4,5,6,7],who:[1,6],wide:[3,6,8],wider:[1,6],wifi:[1,3,4,6,7,8],wildcard:0,willing:4,window:[],wire:[1,2,3,8],wireless:4,wish:6,within:[0,1,3,4,5,6],without:[1,4,6,8],wlan0:3,won:0,work:[1,4,6,7,8],world:[4,8],worri:4,would:[1,3,4,5,6],write:[0,1,5,6],written:6,wrong:0,x25519:[5,6,8],x:6,xenon:0,y:0,ye:[1,3,6],year:6,yet:[0,3,6],yi:0,ykzlw5ujbaqc2xkec4cpvgyxj257wcrmmgkuxqmqcur7cq3w3lha:1,you:[0,1,2,3,4,5,6,7,8],your:[0,1,2,3,4,6,8],yourself:[6,8],z:0,zero:[5,8],zeromq:[],zi:0},titles:["Code Examples","Getting Started Fast","Reticulum Network Stack Manual","Supported Interfaces","Building Networks","API Reference","Understanding Reticulum","Using Reticulum on Your System","What is Reticulum?"],titleterms:{"1":[],"2":[],"25":3,"class":5,"function":6,"public":[1,6],"try":1,The:[6,7],With:1,access:6,ad:1,android:1,announc:[0,6],api:5,arm64:1,auto:3,ax:3,base:1,basic:6,binari:[],bridg:4,broadcast:0,build:4,can:8,caveat:8,client:3,code:[0,6],common:3,concept:4,configur:7,connect:1,converg:4,creat:1,current:8,deliveri:[],destin:[5,6],detail:6,develop:1,devic:8,doe:8,echo:0,emptor:8,establish:6,exampl:[0,4],fast:1,filetransf:0,fix:7,format:6,further:6,get:[1,6],gipsum:[],goal:6,growth:4,i2p:3,ident:[5,6],identif:0,improv:7,includ:[1,7],indic:2,instanc:1,interconnect:4,interfac:[1,3,6,8],internet:[1,4],introduct:6,kei:6,kiss:3,link:[0,5,6],lora:[3,4],manual:2,mechan:6,minim:0,mode:3,motiv:6,name:[6,7],network:[1,2,4],node:6,nomad:1,offer:8,option:3,orem:[],over:[1,4],overview:4,packet:[5,6],particip:1,pathfind:[],port:7,predict:[],prioritis:6,program:[1,7],propag:6,protocol:6,proven:[],radio:1,reach:6,receipt:5,refer:[5,6],request:[0,5],resourc:[5,6],respons:0,reticulum:[1,2,5,6,7,8],retiiculum:[],rnode:3,rnpath:7,rnprobe:7,rnsd:7,rnstatu:7,rule:6,run:[],scenario:4,serial:[3,7],server:3,servic:7,setup:6,sideband:1,site:4,specif:6,stack:2,start:1,statu:8,step:[],support:3,system:7,tabl:2,tcp:3,testnet:1,transport:[5,6],type:[6,8],udp:3,understand:6,us:[1,7,8],util:[1,7],virtual:[],what:8,where:8,wire:6,your:7}})
\ No newline at end of file
+Search.setIndex({docnames:["examples","gettingstartedfast","index","interfaces","networks","reference","understanding","using","whatis"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["examples.rst","gettingstartedfast.rst","index.rst","interfaces.rst","networks.rst","reference.rst","understanding.rst","using.rst","whatis.rst"],objects:{"RNS.Destination":{announce:[5,1,1,""],app_and_aspects_from_name:[5,1,1,""],clear_default_app_data:[5,1,1,""],create_keys:[5,1,1,""],decrypt:[5,1,1,""],deregister_request_handler:[5,1,1,""],encrypt:[5,1,1,""],full_name:[5,1,1,""],get_private_key:[5,1,1,""],hash:[5,1,1,""],hash_from_name_and_identity:[5,1,1,""],load_private_key:[5,1,1,""],register_request_handler:[5,1,1,""],set_default_app_data:[5,1,1,""],set_link_established_callback:[5,1,1,""],set_packet_callback:[5,1,1,""],set_proof_requested_callback:[5,1,1,""],set_proof_strategy:[5,1,1,""],sign:[5,1,1,""]},"RNS.Identity":{CURVE:[5,2,1,""],KEYSIZE:[5,2,1,""],TRUNCATED_HASHLENGTH:[5,2,1,""],decrypt:[5,1,1,""],encrypt:[5,1,1,""],from_bytes:[5,1,1,""],from_file:[5,1,1,""],full_hash:[5,1,1,""],get_private_key:[5,1,1,""],get_public_key:[5,1,1,""],get_random_hash:[5,1,1,""],load_private_key:[5,1,1,""],load_public_key:[5,1,1,""],recall:[5,1,1,""],recall_app_data:[5,1,1,""],sign:[5,1,1,""],to_file:[5,1,1,""],truncated_hash:[5,1,1,""],validate:[5,1,1,""]},"RNS.Link":{CURVE:[5,2,1,""],ESTABLISHMENT_TIMEOUT_PER_HOP:[5,2,1,""],KEEPALIVE:[5,2,1,""],get_remote_identity:[5,1,1,""],identify:[5,1,1,""],inactive_for:[5,1,1,""],no_inbound_for:[5,1,1,""],no_outbound_for:[5,1,1,""],request:[5,1,1,""],set_packet_callback:[5,1,1,""],set_remote_identified_callback:[5,1,1,""],set_resource_callback:[5,1,1,""],set_resource_concluded_callback:[5,1,1,""],set_resource_started_callback:[5,1,1,""],set_resource_strategy:[5,1,1,""],teardown:[5,1,1,""]},"RNS.Packet":{ENCRYPTED_MDU:[5,2,1,""],PLAIN_MDU:[5,2,1,""],resend:[5,1,1,""],send:[5,1,1,""]},"RNS.PacketReceipt":{get_rtt:[5,1,1,""],get_status:[5,1,1,""],set_delivery_callback:[5,1,1,""],set_timeout:[5,1,1,""],set_timeout_callback:[5,1,1,""]},"RNS.RequestReceipt":{get_progress:[5,1,1,""],get_request_id:[5,1,1,""],get_response:[5,1,1,""],get_response_time:[5,1,1,""],get_status:[5,1,1,""]},"RNS.Resource":{advertise:[5,1,1,""],cancel:[5,1,1,""],get_progress:[5,1,1,""]},"RNS.Reticulum":{ANNOUNCE_CAP:[5,2,1,""],MTU:[5,2,1,""],should_use_implicit_proof:[5,1,1,""],transport_enabled:[5,1,1,""]},"RNS.Transport":{PATHFINDER_M:[5,2,1,""],deregister_announce_handler:[5,1,1,""],has_path:[5,1,1,""],hops_to:[5,1,1,""],next_hop:[5,1,1,""],next_hop_interface:[5,1,1,""],register_announce_handler:[5,1,1,""],request_path:[5,1,1,""]},RNS:{Destination:[5,0,1,""],Identity:[5,0,1,""],Link:[5,0,1,""],Packet:[5,0,1,""],PacketReceipt:[5,0,1,""],RequestReceipt:[5,0,1,""],Resource:[5,0,1,""],Reticulum:[5,0,1,""],Transport:[5,0,1,""]}},objnames:{"0":["py","class","Python class"],"1":["py","method","Python method"],"2":["py","attribute","Python attribute"]},objtypes:{"0":"py:class","1":"py:method","2":"py:attribute"},terms:{"0":[0,3,5,6,8],"00":[6,7],"000":[],"00000000":6,"00000100":6,"00000111":6,"01":6,"01010000":6,"02":[],"05":0,"07":[],"1":[0,3,5,6,7],"10":[0,3,6,7],"100":[0,3,6],"1000":0,"10000000":6,"1024":0,"11":6,"115200":[3,7],"12":3,"1200":6,"125":3,"125000":3,"127":3,"128":[5,6,8],"13":7,"14":6,"141":[],"15":3,"150":[3,7],"150m":3,"151":6,"16":[3,7],"17":7,"18":[],"180":[],"182":[],"187":7,"2":[0,3,5,6,7],"20":[0,3,6,7],"200":[3,7],"2000000":[],"205":[],"211":[],"23":7,"237":[6,8],"24":3,"240":[],"25":[0,2,8],"255":3,"256":[5,6],"27":7,"270":[],"2f":0,"3":[0,6,7,8],"30":7,"323":[],"33":6,"34":[],"360":5,"3600":0,"367":[],"37":[],"37428":7,"38":7,"383":5,"3e12fc71692f8ec47bc5":1,"3w3lha":[],"4":[6,7],"409":[],"4242":3,"430":6,"45":0,"460":[],"469":7,"476":5,"477":6,"48555":3,"49":7,"49555":3,"4965":[1,7],"5":[0,3,5],"500":[5,6,8],"5001":3,"507":5,"512":[3,5,6],"5245a8efe1788c6a70e1":7,"55":3,"56b115c30cd386cad69c":7,"5urvjicpzi7q3ybztsef4i5ow2aq4soktfj7zedz53s47r54jnqq":3,"60":0,"600":3,"62":[6,8],"63":7,"64":[6,7],"7":3,"72":3,"74":7,"77":6,"7c565719ec7a8cdb1fe2":[],"7ca6f4e4dc26ae329e61":[],"8":[0,3,7],"80":[5,6,7],"8001":3,"80e29bf7cccaf31431b3":6,"83":[6,7],"86":7,"867":3,"867200000":3,"868":6,"88":3,"9":7,"900":6,"9382f334de63217a4278":7,"95":6,"\u00ec2pd":3,"abstract":6,"break":[5,6,8],"byte":[0,5,6,7,8],"case":[1,3,4,6,7],"class":[0,2,4,8],"default":[0,1,3,4,5,6],"do":[0,1,3,5,6,7,8],"export":1,"final":6,"float":[0,5],"function":[0,1,2,3,4,5,8],"import":[0,1,3,4,6],"int":0,"long":[0,3,6],"new":[0,3,4,5,6,7],"public":[0,2,3,5],"return":[0,5],"short":[6,7],"static":5,"switch":[3,6],"throw":[],"true":[0,1,3,5,7],"try":[0,2,3],"while":[0,1,3,4,5,6,8],A:[0,1,3,4,5,6,8],And:0,As:[1,3,4,5,6,8],At:[4,6],Be:[5,7],But:6,By:[0,1,3,5,6],For:[1,3,4,5,6,8],IF:[],IN:[0,5],If:[0,1,3,4,5,6,7,8],In:[0,1,3,4,5,6,7,8],It:[0,1,3,5,6,7,8],No:[3,6,8],On:[0,1,3,7],One:5,Or:3,That:6,The:[0,1,2,3,4,5,8],Then:1,There:[1,4,6,8],These:[1,3,6,7],To:[0,1,3,4,6,7,8],Will:5,With:[2,3,4,6,7],_:6,__:6,______:6,_______:6,________:6,________________:6,__init__:0,__main__:0,__name__:0,_exit:0,_with_:3,aarch64:1,ab:0,abil:1,abl:[0,1,3,4,5,6,7],about:[0,1,3,4,5,6],abov:[1,3,6],absolut:[1,8],accept:[5,6],accept_al:[0,5],accept_app:5,accept_non:5,access:[1,2,3,4,5,7],access_point:3,accomod:6,accord:6,accordingli:0,acheiv:[3,6],achiev:[5,6],acknowledg:8,across:4,act:[1,5,6],action:0,activ:[0,1,3,5,6],actor:6,actual:[0,1,3,6],ad:[0,2,4,5,6,8],adapt:4,add:[0,1,3,4,7],add_argu:0,addit:[6,8],addr1:[],addr2:[],address:[0,1,3,4,5,6,8],adher:5,admin:3,administr:7,adress:[0,1,4,5,6,8],advanc:6,advantag:5,adversari:1,advertis:[0,5],advis:6,ae:[6,8],affect:3,after:[0,3,4,6,7],again:[1,3,6],against:6,agenc:6,agent:6,agnost:[4,6],agnostic:6,aim:[2,6],air:8,airtim:3,aliv:[5,6],all:[0,1,2,3,4,5,6,7,8],alloc:[3,5,6,7],allow:[0,1,3,4,5,6,7,8],allow_al:[0,5],allow_list:5,allow_non:5,allowed_list:5,almost:[3,6],alo:6,alon:3,along:[4,6],alreadi:[0,1,4,6],als:[],also:[0,1,3,4,5,6,7,8],alter:6,altern:[0,3,7],although:[6,8],alwai:[1,5,6,7],amateur:[3,8],amet:[],amount:[3,4,5,6,8],an:[0,1,3,4,5,6,7,8],android:2,ani:[0,1,3,4,5,6,7,8],announc:[2,3,5],announce_cap:[3,5],announce_handl:0,announced_ident:[0,5],announceloop:0,announcesampl:0,announec:[],anonym:[1,4,5,6,8],anoth:[1,5,6,7],answer:[6,7],anymor:1,anyon:[0,1,4,5,6],anyth:[3,6],anywher:[0,3],ap:[3,6],apart:[],api:[1,2,6,8],apk:1,app:[0,1,5,6],app_and_aspects_from_nam:5,app_data:[0,5],app_nam:[0,5],app_timeout:0,append:[0,6],appli:[5,6],applic:[0,4,5,6,7],approach:[6,7],approv:6,approxim:[],apt:1,ar:[0,1,3,4,5,6,7,8],arbitrari:[5,6],arbritrari:8,architectur:1,area:[3,4,6,8],arg:0,argon:0,argpars:0,argument:[0,5,7],argumentpars:0,arm64:2,around:6,arriv:[0,6],ask:[0,5],aspect:[0,3,5,6],aspect_filt:[0,5],assign:[6,7],associ:[1,5,6],assum:[3,6],asymmetr:[6,8],attached_interfac:[],attack:1,attempt:5,attribut:5,audit:8,authent:[1,3,4,5,6,8],author:6,auto:[2,5,6],auto_compress:5,autoconfigur:[3,8],autodiscov:3,autointerfac:[3,7],autom:6,automat:[0,1,3,4,5,6,7,8],autonom:[4,6],autoomat:0,avail:[0,1,3,4,5,6,7,8],availadbl:[],averag:6,avoid:[6,7],awai:[0,4,6,7],awar:6,ax25kissinterfac:3,ax:[2,8],b32:[1,3],b:[0,4],back:[0,6,8],background:[1,3],backhaul:4,band:6,bandwidth:[1,3,4,5,6,8],bare:0,barrier:6,base32:3,base:[2,3,4,5,6,7,8],basi:[5,6,8],basic:[0,1,2],baud:3,beacon:3,beam:[],becaus:[4,6],becki:0,becom:[0,1,4,6],been:[0,1,3,4,5,6,8],befor:[0,1,5,6,7],begin:[0,5],begun:5,behaviour:3,behind:[1,6],being:[3,5,6],beings:6,belief:6,below:[1,3],benefici:7,best:[1,6,8],beta:8,better:3,between:[0,3,4,5,6],bgp:[],bi:6,bidirect:6,billion:[4,6],bin:7,binari:[0,1,6],bind:3,bit:[3,5,6,7,8],bitrat:3,blob:[0,6],block:3,board:[1,6,8],boot:7,both:[1,3,4,5,6,8],boundari:[3,6],bp:[],bridg:2,briefli:6,bring:3,broadcast:[1,2,3,5,6],broadcast_destin:0,broadcastloop:0,brought:[3,7],browser:1,buffer:3,bug:8,build:[0,1,2,3,6,8],built:[1,6,8],bundl:0,c:[0,4],cabl:4,cad:[],calcul:[5,6],call:[0,4,5,6,8],callabl:5,callback:[0,5],callsign:3,can:[0,1,2,3,4,5,6,7],cancel:5,candid:4,cannot:0,capabl:6,capac:[5,6],carambola:0,care:[1,5,8],carefulli:1,cargo_build_target:1,carri:[3,5,6],carrier:[4,8],caution:3,caveat:2,cb:6,cbc:8,cd:1,cdma:3,censor:6,censorship:6,central:[4,6],centralis:6,certain:[0,3,4,6],challeng:6,chang:[0,1,3,5,6,7,8],channel:[0,3,4,6,8],channelarg:0,chapter:[1,3,4,6,8],charact:0,characterist:6,cheap:6,check:[0,1,5,6],checksum:[5,8],choos:[0,1,3,6],choosen:6,chose:6,chosen:4,chunk:0,ciphertext:5,ciphertext_token:5,circumst:6,cl:0,clear:[0,5,6],clear_default_app_data:5,clear_screen:0,client:[0,1,2,5],client_connect:0,client_disconnect:0,client_ident:0,client_loop:0,client_packet_receiv:0,client_request:0,clone:1,close:[0,4,5],closed_callback:5,closer:6,closest:6,cluster:6,co:8,code:[1,2,3],codingr:3,com:[0,1],combin:[1,4,6],come:[1,6],comma:3,command:[0,1,7],comment:3,common:[1,2,4,6,8],commun:[0,1,3,4,5,6,7,8],compat:[1,3,5,6],compil:1,complet:[0,1,3,4,5,6,8],complex:[3,6],compon:6,compos:6,compress:[0,5,6],comput:[1,6,8],concaten:5,concept:[2,6],conceptu:6,conclud:[0,5],concurr:[6,7],condit:6,config:[0,1,4,7],configarg:0,configdir:5,configpath:0,configur:[0,1,2,3,4,5,6,8],confirm:[6,8],confus:6,congest:6,conjunct:3,connect:[0,2,3,4,5,6,7,8],consequ:[],consid:[6,8],consider:[],consist:6,constant:5,constantli:6,construct:6,consumpt:[],contact:6,contain:[0,4,5,6],contend:6,content:[4,7],context:6,continu:8,control:[0,1,3,4,5,6],conveni:0,convent:0,converg:[2,6],coordin:[4,5,6,8],core:[4,6,8],correct:[0,6],correctli:0,correspond:6,cost:[6,8],could:[0,1,3,4,5,6,8],count:6,counter:0,cours:[3,6],cover:[6,8],coverag:4,cpu:0,creat:[0,2,3,4,5,6,7],create_kei:5,create_receipt:[0,5],creation:6,creator:6,critic:6,cryptograph:[4,8],cryptographi:[1,6,8],ctrl:0,cull:5,current:[0,1,2,3,5,6],current_download:0,current_filenam:0,curv:[4,5,6,8],curve25519:[4,5,6,8],custom:[3,5,6],custom_network_nam:3,customis:3,d:[4,7],daemon:[1,3,5,7],dai:4,data:[0,1,3,4,5,6,8],data_port:3,databit:[3,7],date:[0,1],db:0,dbm:[0,3],debian:[6,7],debug:[],decai:[],decid:[4,5,6],decod:0,decrypt:[5,6],dedic:[3,6],deep:1,def:0,default_timeout:[],defin:[0,3,6],definit:6,degrad:4,degre:3,delai:[1,6,7],deliv:[0,5],deliveri:[0,1,5,8],demand:5,demonstr:[0,3],depend:[1,4,6,7],deploi:6,deregist:5,deregister_announce_handl:5,deregister_request_handl:5,deriv:[6,8],describ:[3,5,6],descript:[0,7],design:[1,4,6,8],desir:[0,3,6],destin:[0,1,2,3,4,7],destination_1:0,destination_2:0,destination_clos:0,destination_hash:[0,5,7],destination_hexhash:0,detail:[0,1,2,3,5,7,8],detect:0,determin:[1,5,6],dev:[1,3,7],develop:[2,6,8],devic:[1,2,3,4,5,6,7],dh:5,dhcp:3,did:0,differ:[0,1,3,4,5,6,7,8],diffi:[4,6,8],difficult:1,digit:[6,8],dir:0,direct:[0,1,4,5,6],directli:[3,5,6,7,8],directori:[0,7],disabl:[3,6],disable_encrypt:[],disappear:3,disassoci:6,discard:6,disconnect:0,discov:1,discover:3,discoveri:[3,6,7],discovery_port:3,discovery_scop:3,discrimin:4,discuss:[1,6],disk:[0,5],displai:[0,6],dissolv:4,distanc:6,distant:5,distinct:[3,6],distinguish:6,distribut:[0,1,4,5,6,7],divmod:0,document:6,doe:[0,1,2,3,4,5,6],doesn:3,dolor:[],domain:[1,3],don:[0,1,4,5],done:[0,1,4,6],dori:4,dot:[6,7],down:[0,3],downgrad:[],download:[0,3],download_began:0,download_conclud:0,download_finish:0,download_start:0,download_tim:0,driver:[7,8],droid:1,drop:[5,6,7],due:4,duplex:[6,8],dynam:[1,7],e702c42ba8:7,e:[0,4],each:[0,1,3,4,6],earli:1,earlier:6,eas:[3,6],easi:[1,3,6,7,8],easier:[1,3,4,7],easiest:[1,3,6],easili:[4,6,7,8],eca6f4e4dc26ae329e61:7,ecdh:[6,8],echo:[1,2,7],echo_destin:0,echo_request:0,ed25519:[6,8],edit:1,effeci:[],effici:[0,1,3,6,8],ei:0,either:[3,4,6],elaps:3,elif:0,ellipt:[4,5,6,8],els:[0,4,6],emploi:6,emptor:2,emul:1,enabl:[1,3,4,5,6,7],enable_transport:6,encapsul:[3,8],encod:0,encrypt:[0,1,4,5,6,8],encrypted_mdu:5,encryptionless:[],end:[0,3,4,5,6,8],endless:3,endpoint:[0,4,5,6],energi:1,engin:[],enhanc:6,enough:[1,6],ensur:[5,6],enter:0,entir:[4,6],entiti:6,entri:[0,1,6],enumer:0,environ:[1,4,6],environment:6,environmentlogg:6,ephemer:[4,5,6,8],equal:[4,6],equip:[3,4,6],equival:3,equl:[],error:[0,1],especi:3,essenti:[1,6],establish:[0,1,3,4,5,8],established_callback:5,establishment_timeout_per_hop:5,etc:7,eth0:3,eth1:3,ethernet:[1,3,4,6,8],even:[1,3,4,6,7,8],event:3,eventu:5,everi:[0,3,4,5,6],everyon:[4,6],everyth:[0,4,6],evolv:4,exact:6,exactli:[5,6],exampl:[1,2,3,5,6,7,8],example_util:[0,7],exampleannouncehandl:0,exce:[0,5],except:[0,3],exchang:[4,5,6,8],exclud:6,execstart:7,execstartpr:7,execut:[0,1,5,7],exhaust:6,exist:[0,1,3,6,8],exit:[0,1,5,7],exit_handl:0,expand:6,expect:[0,3,5,6,7],experi:[1,6],experiment:[1,8],expir:3,expiri:3,explain:5,explan:6,explicit:5,explicitli:[],explor:[0,6,8],expos:[3,5],extend:[0,1,5],extern:[1,3,5,8],extra:[1,3,4,7],extrem:[1,6,8],f:1,fa7ddfab5213f916dea:6,face:1,fact:8,factor:3,fail:[0,5],failed_callback:[0,5],failur:[1,3],fals:[0,3,5],far:[4,6],fast:[2,5,6],faster:[1,3,6],fastest:[3,6],featur:[1,6,8],feed:5,feedback:0,feel:1,fernet:8,few:[1,3,4,6,7,8],fewer:5,fibr:8,field:6,file:[0,1,3,4,5,6,7,8],file_resourc:0,file_s:0,filelist:0,filelist_data:0,filelist_receiv:0,filelist_timeout_job:0,filenam:0,filetransf:[1,2,5],filter:[0,4,6],find:[4,6],firewal:[1,3],firmwar:[1,6],first:[0,1,3,5,6],fit:0,five:0,fix:[2,6],flag:[5,6],flexibl:[3,8],flow:[3,4],flow_control:3,flush:0,folder:1,follow:[0,1,3,6,7,8],forcibl:5,foreground:1,foremost:8,form:[1,3,4,5,6],format:[0,2,8],forth:0,forward:[3,5,6,8],forward_ip:3,forward_port:3,found:[0,1,3,4,6,7],four:4,frame:3,frankfurt:[1,7],free:[4,8],freedom:6,freeli:6,frequenc:[3,6],frequent:3,friendli:8,from:[0,1,3,4,5,6,7,8],from_byt:5,from_fil:5,fromhex:0,fruit:0,ftdi_ft230x_basic_uart_43891ckm:7,full:[0,3,5,6,7,8],full_hash:5,full_nam:[5,7],fulli:[6,8],funcion:5,fundament:6,further:[1,2],futur:[4,6],g:0,ga:0,gain:6,galact:6,gatekeep:6,gatewai:[1,4],gbp:7,gen:[],gener:[0,1,3,4,5,6,8],generalis:8,geograph:4,get:[0,2,3,5,8],get_packet_rssi:0,get_packet_snr:0,get_private_kei:5,get_progress:[0,5],get_public_kei:5,get_random_hash:[0,5],get_remote_ident:[0,5],get_request_id:5,get_respons:5,get_response_tim:5,get_rtt:[0,5],get_statu:5,geti2p:3,ghz:6,gi:0,gigabyt:8,gipsum:[],git:1,github:[0,1],give:[3,6,7],given:[3,4,5,6],global:[0,1,3,4,6,8],go:[0,1,3,6],goal:[2,3],good:[4,6],got:0,got_respons:0,govern:6,gracefulli:3,grape:0,graphic:1,great:6,greater:6,greatli:3,group:[3,5,6],group_id:3,grow:4,growth:2,guarante:[1,6],guess:3,guid:[1,5,6],h:[1,7],ha:[0,1,3,4,5,6,8],had:6,half:[6,8],hand:[0,1],handheld:6,handl:[0,3,4,5,6,7,8],handler:[0,5],happen:[0,5,6],hardlin:4,hardwar:[1,3,4,5,6,8],has_path:[0,5],hasattr:0,hash1:6,hash2:6,hash:[0,1,5,6,7],hash_from_name_and_ident:5,hashmap:0,have:[0,1,3,4,5,6,7],hazard:5,head:1,header:6,header_1:6,header_2:6,header_typ:[],hear:6,heard:[5,6],helium:0,hellman:[4,6,8],help:[0,4,6,7,8],her:4,here:[0,1,3,6,7],hexadecim:[0,6,7],hide:1,high:[3,6,8],higher:[4,8],highli:6,hill:4,hint:0,hit:0,hmac:8,hoc:8,hold:[5,6],home:4,homebrew:3,hop:[4,5,6,7,8],hops_to:5,host:[0,1,3,6,7],hostnam:3,hour:0,how:[0,1,3,4,6,8],howev:[1,4],http:[0,1],hub:3,huge:[],human:[0,5,6],i2p:[1,2,8],i2p_tunnel:3,i2pd:1,i2pinterfac:[1,3],i:0,id:[3,5,6,7],id_callsign:3,id_interv:3,idea:6,ideal:8,ident:[0,1,2,8],identif:[2,3,8],identifi:[0,3,5,6],identify:6,identifyexampl:0,ie:[],if00:7,ifac:[6,7],ifac_s:3,ifconfig:7,ignor:[3,5,6],ignored_devic:3,illustr:[4,6],immedi:[1,7],impact:[3,6],implement:[0,4,5,6,8],implic:3,implicit:[5,6],imposs:6,improv:[2,3],inactive_for:5,inbound:[3,5],includ:[0,2,3,5,6],incom:[0,3,5],incompat:[5,6],increas:3,incur:3,indefinit:[],independ:[5,6],independt:8,index:[0,1,2],indirectli:6,individu:[5,6],inevit:6,infer:6,info:[5,6],inform:[0,1,2,4,5,6],infrastructur:[1,3,4,6],ingo:5,initi:[0,4,5,6,8],initialis:[0,5,7],input:0,insert:6,insid:6,inspect:[1,3,4,6],instal:[1,3,4,7,8],instanc:[0,2,3,5,6,7],instanti:5,instead:[0,3,6,7],integr:[4,6],intend:[4,6],intention:6,inter:5,interact:[0,1,5,6],interchang:3,interconnect:[2,6],interest:6,interfac:[0,2,4,5,7],interface_en:[1,3,7],interface_mod:[],intermediari:6,intermitt:3,intern:[3,5],internet:[2,3,6,8],interoper:[1,4,6,8],interv:[3,5],intiat:0,introduc:6,introduct:2,intuit:8,invalid:[0,5],invers:6,investig:4,invis:[1,3],involv:4,io:[1,7],ip:[1,3,6,8],ipsum:[],ipv6:3,is_connected_to_shared_inst:0,is_request:[],is_respons:[],isdir:0,isfil:0,island:4,ism:6,isol:3,issu:4,its:[5,6],itself:[2,6],iv:8,job:0,join:[0,1,4,6],just:[0,1,3,4,6,8],k:0,kb:7,kbp:7,keep:[0,4,5,6,7,8],keepal:[5,6],kei:[0,2,4,5,8],kept:[3,4,5,6],kernel:[3,7,8],keyboardinterrupt:0,keyerror:5,keypair:6,keysiz:5,keystor:4,khz:3,ki:0,kill:[5,6],kilomet:[],kind:[3,4,6],kiss:[2,7,8],kiss_fram:3,kissinterfac:[3,7],know:[0,1,4,5,6],knowledg:[4,6],known:[0,5,6,7],krypton:0,lack:6,laid:6,lan:3,larg:[0,4,5,6,8],larger:[4,6],laser:3,last:[0,3,5],last_unit:0,latenc:[1,6,8],later:[0,1],latest:[0,1,3],latest_client_link:0,launch:1,lavg:[],layer:[3,4,6,8],lead:6,leak:1,learn:[0,1,6],least:[3,6,8],leav:[4,6],ledger:6,left:[3,5,6],legaci:4,len:0,length:[0,3,5,6],less:[3,6,8],let:[0,1,3,4,6,7],level:[3,6],libffi:1,librari:1,licens:6,light:7,like:[1,3,4,5,6,7,8],limit:[4,6],line:[0,1,4,6,8],link:[2,3,4,8],link_clos:0,link_establish:0,linkexampl:0,linux:[1,6],list:[0,3,5,6,8],list_deliv:0,list_fil:0,list_packet:0,list_receipt:0,list_timeout:0,listdir:0,listen:[0,3,6],listen_ip:3,listen_port:3,littl:6,lki:6,lkr:6,ll:[0,1,8],ln:[1,7],load:[0,5,7],load_private_kei:5,load_public_kei:5,local:[0,1,3,4,5,6,7,8],locat:[1,4,6,7],log:[0,3],log_error:0,log_info:0,loglevel:[0,5],longer:[0,4,6],longest:3,look:[0,1,3,6,7],loop:0,lora32:[],lora:[1,2,6,8],lorawan:6,lorem:[],lot:6,low:[1,3,4,6,8],lower:1,lxmf:1,m:[0,1,6,7],mac:6,machin:6,maco:1,made:[1,5,6],mai:[1,3,5,6],main:0,mainli:4,maintain:6,make:[1,6,7],malici:6,manag:[1,4,5,6],mani:[0,1,3,4,5,6,7,8],manipul:6,manner:4,manual:[0,1,3,4,5,7],mark:6,markqvist:[0,1],master:[0,5],match:[0,3,6],maximum:[3,5,6],mbp:7,mcu:[],mdu:0,mean:[3,4,6,7],measur:6,mechan:[2,3],medium:[3,4,5,6,8],member:4,memori:6,mention:6,menu:0,menu_mod:0,mesh:[1,3,4,8],messag:[0,1,5,6,7],messeng:6,metadata:1,metavar:0,method:[0,1,3,5,6],methodolog:[6,7],mhz:[3,6],mi:0,microcontrol:6,microwav:[],might:[1,3,4,6,7],millisecond:[0,7],mind:[4,8],minim:[2,6],minimalsampl:0,minimum:[0,4,6],minut:[0,1,3,6],mix:[1,3,4,7],mobil:[3,6],mode:[0,1,2,6,7,8],modem:[3,4,5,6,8],modifi:6,modul:[0,1,6,7,8],moment:[6,8],momentarili:3,monitor:6,moon:0,mor:[],more:[1,3,4,5,6,8],morej:[],most:[1,3,4,6,7],mostli:[3,4,6],motiv:2,move:[1,3,6],mqtt:[],mtu:[5,6,8],much:[1,3,4],multi:[6,7,8],multicast:3,multilater:6,multipl:[0,3,4,6,7],multipoint:6,must:[0,1,3,4,5,6],mw:3,my:6,mycal:3,myriad:6,n:[0,6],name:[0,2,3,4,5],namespac:0,nano:1,narg:0,natur:3,nears:6,necesarri:4,necessari:[1,3,5,6],necessarili:6,need:[0,1,2,3,4,6,7,8],neglig:6,neither:6,neon:0,net:3,netifac:1,network:[0,3,5,6,7,8],network_nam:3,never:[3,5,6],newer:6,newest:6,newli:[4,6],next:[1,4,5,6],next_hop:5,next_hop_interfac:5,nicknam:6,no1cll:3,no_inbound_for:5,no_outbound_for:5,nobl:0,noble_ga:0,noble_gas:0,node:[1,2,3,4,7,8],nodet:[],nomad:2,nomadnet:1,non:[1,5,6],none:[0,3,5,6,7],normal:[0,3,5],notat:[6,7],note:[0,1,3,6,7],noth:8,notic:6,notif:[0,5],now:[0,1,4,6,7],nt:0,num:0,number:[0,1,3,4,5,6,7],obfusc:[],object:5,obtain:6,obviusli:6,occasion:1,occur:8,off:[6,8],offer:[1,2,3,5,6],offlin:1,often:[1,4,6,7],oganesson:0,old:6,on_interfac:5,onc:[0,1,3,4,5,6,8],one:[0,1,3,4,5,6,7,8],ones:3,oneself:6,onli:[0,1,3,4,5,6,7,8],onlin:[],onto:6,open:[0,3,4,5,6,7,8],openmodem:[3,8],openssl:1,oper:[3,4,5,6,8],opt:6,optic:8,optim:4,optimis:[],option:[0,1,2,4,5,6,7],order:7,orem:[],organ:4,organis:[3,4],orient:6,origin:[0,4,6],original_hash:[],os:[0,3,6,7,8],ospf:[],other:[1,3,4,5,6,7],otherwis:5,our:[0,6],out:[0,1,3,4,5,6,8],outbound:[5,6],outgo:[0,1,3,5,6,7],outli:4,outlier:4,outlin:[1,6],output:[3,7],outward:[],over:[0,2,3,5,6,7,8],overal:6,overcom:6,overhead:[3,6],overrid:0,oversight:6,overview:[2,3,6],overwhelm:5,own:[0,1,4,5,6],owner:[],p:0,pack:0,packag:[1,3],packb:0,packet:[0,1,2,3,4,7,8],packet_callback:0,packet_deliv:0,packet_hash:0,packet_receipt:[0,5],packet_timed_out:0,packet_typ:[],packetreceipt:[0,5],pad:8,page:[1,2,6],pair:[3,6],palm:[],parallel:1,paramet:[3,4,5,6],pariti:[3,7],pars:0,parse_arg:0,parser:0,part:[0,3,4,6],particip:[2,4,6],pass:[0,3,4,5,6],passphras:[3,6],past:[],path:[0,1,3,5,6,7],path_respons:5,pathfind:[],pathfinder_m:5,pattern:6,payload:[5,6],peach:0,peer:[0,1,3,5,6,7],peer_pub_byt:[],peer_sig_pub_byt:[],peopl:6,per:[3,5,6,8],percent:0,percentag:5,perfect:[],perform:[0,1,3,4,6],period:[3,6],perman:7,permissionless:6,persecut:6,persist:[3,7],person:6,perspect:[3,6],pet:0,philosophi:6,physic:[1,3,6,7],pi:[0,4,6,7,8],pick:6,piec:6,ping:[1,7],pip3:[1,7],pip:[1,7],pkcs7:8,pkg:1,place:[4,6,7],plain:[0,3,5,6],plain_mdu:5,plaintext:[0,5],plan:[4,6],platform:[1,6],pleas:[0,1,3,7,8],plenti:6,plu:[],plug:7,pmr:6,point:[1,3,4,6,7],pomelo:0,poorli:4,popular:8,port0:7,port:[2,3,4,6,8],portabl:[3,6],posit:7,possess:6,possibl:[1,3,4,5,6,8],potenti:[0,3,6,7],power:[1,3,6],practic:[6,8],pre:[1,3,5,6],preambl:[3,7],precompil:1,predict:6,prefer:6,prepar:[0,4],prerequisit:5,presenc:5,preserv:[1,5],preshar:6,press:0,pretend:6,pretti:6,prettyhexrep:0,previou:0,previous:[4,5,6],primari:6,principl:[6,8],print:[0,3],print_filelist:0,print_help:0,print_menu:0,prioriti:6,prioritis:[2,4,5],privaci:8,privat:[1,3,5,6,8],privileg:7,probabl:[0,4,6,7,8],probe:7,problem:6,procedur:6,process:[1,3,5,6],product:[],program:[0,2,3,5,6],program_setup:0,programm:6,programmat:6,progress:[0,5,8],progress_callback:5,project:1,prompt:0,proof:[0,5,6,7],proof_packet:0,proof_requested_callback:5,proof_strategi:5,propag:[2,3,5],properli:1,properti:[4,5],proport:6,propos:1,protocol:[1,2,3,8],prove:[0,6],prove_al:[0,5],prove_app:5,prove_non:5,proven:[5,6],provid:[0,1,2,3,4,5,6,8],prv_byte:5,pub_byt:5,public_inform:0,publicli:1,purchas:[4,6,8],purg:5,purpos:[3,5,6],purposefulli:[],put:0,py:[0,1,7],pyseri:1,python3:[1,7],python:[1,6,7,8],q:[0,7],queri:[0,1],question:3,queu:5,queue:6,quickli:6,quiet:[3,7],quinc:0,quit:0,r:[0,6],radio:[2,3,4,5,6,7,8],radiu:[],radon:0,rais:[0,5],ram:3,rand:[],randint:0,random:[0,5,6],random_text_gener:0,randomis:6,randomli:[0,6],rang:[0,1,3,4,6,8],rare:3,raspberri:[4,6,7,8],rate:[0,3,7],rather:1,rb:0,re:[0,3,5,6],reach:[2,3,4],reachabl:[0,1,3,4,5,6,7],read:[0,1,6],readabl:[0,5,6],readi:[0,1,3,4,5,8],readili:8,real:[4,8],realli:[3,5],reappear:3,reason:[3,6],reassembl:6,reboot:1,recal:[0,5],recall_app_data:5,recap:6,receipt:[0,2,6],receiv:[0,1,3,5,6,7],received_announc:[0,5],recent:6,reception_rssi:0,reception_snr:0,reception_stat:0,recip:1,recipi:6,recommend:[0,1,6],reconstruct:6,record:[1,6],recoveri:3,recreat:6,refer:[0,1,2],regard:6,regist:[0,5],register_announce_handl:[0,5],register_request_handl:[0,5],rel:[6,8],relai:1,relat:1,releas:[1,3,6],relev:[0,3,5,6],reli:6,reliabl:[3,4,6,8],rem:0,remain:[3,5,6],rememb:6,remot:[0,5],remote_ident:[0,5],remote_identifi:0,remote_identity_hash:[],remote_p:0,remotesensor:6,remov:7,render:1,repeat:1,replac:[1,6,7],repli:[0,7],replic:6,reply_data:0,reply_text:0,report:3,repositori:[1,6],repres:6,represent:[0,6],request:[2,6,7],request_destin:0,request_fail:0,request_id:[0,5],request_packet:0,request_path:[0,5],request_receipt:[0,5],request_receiv:0,requested_at:[0,5],requestexampl:0,requestreceipt:5,requir:[0,1,3,4,6,7,8],research:8,resend:5,reserv:6,resili:8,resourc:[0,1,2],resource_callback:5,resource_sending_conclud:0,resource_strategi:5,respect:3,respond:[0,5],respons:[2,5,6],response_callback:[0,5],response_gener:[0,5],response_tim:[],rest:[4,8],restart:7,restartsec:7,restor:3,restrict:4,result:[0,6],retain:3,reticulum:[0,3,4],retiiculum:[],retransmiss:6,retransmit:6,retri:6,reveal:[1,5,6,8],review:8,ridicul:6,right:4,rn:[0,1,5,7],rnode:[1,2,6,7,8],rnodeinterfac:[3,7],rnpath:[1,2],rnprobe:[1,2],rnsconfig:1,rnsd:[1,2],rnstatu:[1,2,3,6],roam:[3,6],robot:6,rotat:6,round:[0,5,7],rout:[1,3,4,5,6,8],routabl:[],router:3,rprogress:0,rsa:[],rssi:0,rtt:[0,5,6],rttstring:0,rule:[2,3],run:[0,1,3,4,5,6,7,8],runtim:6,rust:1,rw:[],rx:3,s:[0,1,3,4,6,7,8],said:6,same:[1,3,4,5,6,7],satisfi:6,save:[5,6],save_error:0,saved_filenam:0,scalabl:8,scale:6,scenario:[1,2,6],schedul:5,scope:3,screen:0,search:2,second:[0,3,5,6,7,8],secreci:[5,6,8],section:[1,3,4,6],secur:[1,6,8],see:[0,1,3,4,5,6,8],seek:6,seen:3,segment:[3,4,6,8],segment_index:[],select:[0,3],self:[0,4,8],send:[0,3,5,6,7],sender:[0,1,4,6],sendig:0,sensibl:1,sensor:6,sent:[0,1,5,6,7],sentiment:6,separ:[1,3,4,6,7],sequenc:[0,5,6,8],serial:[2,6,8],serialinterfac:3,serv:[0,3,4,6,7],serve_path:0,server:[0,1,2],server_callback:0,server_destin:0,server_fil:0,server_ident:0,server_link:0,server_loop:0,server_packet_receiv:0,servic:[1,2,4],session:6,set:[0,1,3,4,5,6,7,8],set_default_app_data:5,set_delivery_callback:[0,5],set_link_closed_callback:0,set_link_established_callback:[0,5],set_packet_callback:[0,5],set_proof_requested_callback:5,set_proof_strategi:[0,5],set_remote_identified_callback:[0,5],set_resource_callback:5,set_resource_concluded_callback:[0,5],set_resource_started_callback:[0,5],set_resource_strategi:[0,5],set_timeout:[0,5],set_timeout_callback:[0,5],setdaemon:0,setup:[0,1,2,3],sever:[1,4,5,7],sha256:8,sha:[5,6],shall:6,share:[1,4,5,6,7],she:4,shelf:[6,8],shop:0,shorter:3,shortest:6,shorthand:[3,7],should:[0,1,3,4,5,6,8],should_allow_unencrypt:[],should_quit:0,should_use_implicit_proof:5,show:7,shown:0,side:[3,8],sideband:2,sight:4,sign:[5,6],signatur:[5,6,8],significantli:3,similar:[1,3,4,7,8],simpl:[0,6,7,8],simpler:3,simplest:[3,6],simpli:[0,1,3,4,6,7],simplic:6,simultan:6,sinc:[0,1,3,4,5,6],singl:[0,3,5,6,8],singular:6,sit:[],site:[2,3],situat:[1,3,4,6],size:[0,1,3,5,6],size_str:0,sleep:[0,7],slice:0,slightli:1,slottim:[3,7],slow:[0,3,6],slower:[5,6],small:[0,3,4,6,8],smaller:5,snr:0,so:[0,1,3,4,5,6,7,8],softwar:[1,3,6,8],solut:6,solv:6,some:[0,1,3,4,6,7],someon:[1,3],someth:6,somethign:0,soon:5,sort:[3,6],soundmodem:3,sourc:[0,1,4,6,8],space:[0,1,4,6,8],span:6,special:[6,7],specif:[0,2,3,5,8],specifi:[0,1,3,4,5,7],spectrum:[3,6],speed:[3,6,7],split:0,sponsor:8,spread:3,spreadingfactor:3,squelch:3,ssid:3,stabl:[6,8],stack:[0,1,4,6,7,8],stage:[1,6],stai:[0,6,7],standard:[1,6],start:[0,2,3,5,6,7],startlimitintervalsec:[],startup:0,state:0,station:3,stationari:4,statist:0,statu:[0,1,2,3,5,6,7],stdout:0,step:1,still:[0,4,6],stock:0,stop:8,stopbit:[3,7],store:[0,6],store_tru:0,str:0,strategi:5,stream:6,strength:8,strictli:[3,6],string:[0,5],strong:6,structur:6,subject:[],subnet:[1,4],subsequ:6,succe:1,successful:5,successfulli:0,sucessfulli:6,sudo:[1,7],suffic:6,suffici:[1,3,6,7],suffix:0,suit:[1,6],suitabl:[0,1,3,4,6,8],suppli:[4,5,6],support:[0,1,2,4,6,8],sure:[1,7],surveil:6,surviv:6,sy:0,symlink:[1,7],symmetr:[5,6],system:[0,1,2,3,4,5,6,8],systemctl:7,systemd:7,t:[0,1,3,4,5,7],tabl:[1,3,4,6,7],tail:3,tailor:6,take:[0,1,3,6,8],taken:[0,6],tangerin:0,target:[0,7],target_host:[1,3],target_port:[1,3],tcp:[1,2,4,6,8],tcpclientinterfac:[1,3],tcpinterfac:7,tcpserverinterfac:[1,3],tdata:0,teardown:[0,5],teardown_reason:0,teffect:0,tell:[0,3],temperatur:6,ten:6,term:[4,6],termin:[1,5],terminolog:[4,6],termux:1,test:[1,3,6],testnet:[2,7],text:[0,1,4,6],tfile:0,than:[0,1,3,4,6],thei:[0,1,3,4,5,6],them:[0,1,3,4,6],thereaft:6,therefor:[6,8],thi:[0,1,2,3,4,5,6,7],thing:1,think:1,those:[4,6],though:[1,6],thourough:8,thousand:6,thread:0,three:[4,6],throough:3,throttl:4,through:[1,3,4,5,6,8],throughout:6,throughput:[6,8],thu:[4,5,6],ti:[0,6],time:[0,1,3,4,5,6,7],timeout:[0,5,7],timeout_callback:[],timeoutarg:0,timestr:0,tnc:[3,5,7,8],to_fil:5,todai:6,todo:[],togeth:6,token:[5,6],toler:3,too:[0,4],tool:[6,8],top:[4,6],topic:6,topographi:[1,4,6],topolog:[3,6],total:[6,8],total_s:0,touch:8,toward:[0,6],tradeoff:6,tradit:[4,6],traffic:[0,1,3,4,5,6,7],tramsit:[],transceiv:[1,3,6,8],transfer:[0,5,6,7,8],transfer_s:0,transform:8,transmiss:[1,3,5,6],transmit:[0,3,6],transpar:[3,6],transpor:[],transport:[0,1,2,3,4,7,8],transport_en:5,transport_id:[],transport_typ:[],travers:6,treat:6,tri:0,trip:[0,5,7],trivial:8,truli:6,truncat:[5,6],truncated_hash:5,truncated_hashlength:5,trust:6,trustless:[4,6,8],ttime:0,ttransfer:0,ttyusb0:[3,7],ttyusb1:3,ttyusb2:3,tun0:3,tune:[],tunnel:[3,6,8],tupl:5,turnaround:3,tutori:1,two:[0,1,3,4,6],tx:3,txpower:3,txtail:[3,7],type:[0,1,2,3,4,5,7],typeerror:5,ubuntu:7,udp:[2,4,6,8],udpinterfac:3,uhf:[7,8],ultim:6,umsgpack:0,uncencrypt:0,uncensor:1,under:7,underli:[4,8],understand:[1,2],unencrypt:[0,5,6],unequivoc:6,unexplor:4,unforg:8,unidentifi:0,unifi:4,uninterest:0,uniqu:[6,8],unit:[0,7],unknown:[0,5,6],unless:[1,3,5,6],unlicens:6,unlik:6,unorganis:4,unpack:0,unpackb:0,unplug:7,unreli:3,unsign:[1,7],unsupport:5,until:[0,5],unwant:6,up:[0,1,3,4,6,7,8],updat:[0,1,5,6],upgrad:[1,6],upkeep:3,upon:[0,6],upset:0,urandom:8,us:[0,2,3,4,5,6],usabl:6,usag:[1,3,7],usb:[4,6,7],useabl:6,user:[0,1,3,4,6,7],user_input:0,userland:8,usernameher:7,usr:7,utf:0,util:[0,2,3,6],utilis:[1,4,7,8],v:7,valid:[0,3,5,6,7],valu:[3,5,6],valueerror:[0,5],vari:[6,7],variabl:0,varieti:[3,6,8],variou:[0,1,3,4,6],vast:6,ve:1,vehicl:3,vendor:0,verbos:7,veri:[1,4,5,6,7,8],verif:[5,6],verifi:[0,5,6],versa:[4,8],version:[6,7],vhf:[4,6,8],via:[1,3,6,7],vice:[4,8],view:[1,6,7],virtual:[3,4,6,8],visibl:0,w:7,wa:[0,3,4,5,6,8],wai:[0,1,3,4,6],wait:[0,6],want:[0,1,3,4,6,7,8],wantedbi:7,warrant:8,wast:3,wb:0,we:[0,1,3,6],websit:3,weight:7,welcom:1,well:[1,3,4,5,6,8],went:0,were:4,what:[0,1,2,5,6],whatev:[5,6],wheel:1,when:[0,1,3,4,5,6,7],whenev:[5,6],where:[1,2,3,4,5,6,7],whereupon:6,whether:[0,3,5,6],which:[0,1,3,4,5,6,7],who:[1,6],wide:[3,6,8],wider:[1,6],wifi:[1,3,4,6,7,8],wildcard:0,willing:4,window:[],wire:[1,2,3,8],wireless:4,wish:6,within:[0,1,3,4,5,6],without:[1,4,6,8],wlan0:3,won:0,work:[1,4,6,7,8],world:[4,8],worri:4,would:[1,3,4,5,6],write:[0,1,5,6],written:6,wrong:0,x25519:[5,6,8],x:6,xenon:0,y:0,ye:[1,3,6],year:6,yet:[0,3,6],yi:0,ykzlw5ujbaqc2xkec4cpvgyxj257wcrmmgkuxqmqcur7cq3w3lha:1,you:[0,1,2,3,4,5,6,7,8],your:[0,1,2,3,4,6,8],yourself:[6,8],z:0,zero:[5,8],zeromq:[],zi:0},titles:["Code Examples","Getting Started Fast","Reticulum Network Stack Manual","Supported Interfaces","Building Networks","API Reference","Understanding Reticulum","Using Reticulum on Your System","What is Reticulum?"],titleterms:{"1":[],"2":[],"25":3,"class":5,"function":6,"public":[1,6],"try":1,The:[6,7],With:1,access:6,ad:1,android:1,announc:[0,6],api:5,arm64:1,auto:3,ax:3,base:1,basic:6,binari:[],bridg:4,broadcast:0,build:4,can:8,caveat:8,client:3,code:[0,6],common:3,concept:4,configur:7,connect:1,converg:4,creat:1,current:8,deliveri:[],destin:[5,6],detail:6,develop:1,devic:8,doe:8,echo:0,emptor:8,establish:6,exampl:[0,4],fast:1,filetransf:0,fix:7,format:6,further:6,get:[1,6],gipsum:[],goal:6,growth:4,i2p:3,ident:[5,6],identif:0,improv:7,includ:[1,7],indic:2,instanc:1,interconnect:4,interfac:[1,3,6,8],internet:[1,4],introduct:6,kei:6,kiss:3,link:[0,5,6],lora:[3,4],manual:2,mechan:6,minim:0,mode:3,motiv:6,name:[6,7],network:[1,2,4],node:6,nomad:1,offer:8,option:3,orem:[],over:[1,4],overview:4,packet:[5,6],particip:1,pathfind:[],port:7,predict:[],prioritis:6,program:[1,7],propag:6,protocol:6,proven:[],radio:1,reach:6,receipt:5,refer:[5,6],request:[0,5],resourc:[5,6],respons:0,reticulum:[1,2,5,6,7,8],retiiculum:[],rnode:3,rnpath:7,rnprobe:7,rnsd:7,rnstatu:7,rule:6,run:[],scenario:4,serial:[3,7],server:3,servic:7,setup:6,sideband:1,site:4,specif:6,stack:2,start:1,statu:8,step:[],support:3,system:7,tabl:2,tcp:3,testnet:1,transport:[5,6],type:[6,8],udp:3,understand:6,us:[1,7,8],util:[1,7],virtual:[],what:8,where:8,wire:6,your:7}})
\ No newline at end of file
diff --git a/docs/manual/understanding.html b/docs/manual/understanding.html
index 84da456..52af9f5 100644
--- a/docs/manual/understanding.html
+++ b/docs/manual/understanding.html
@@ -80,8 +80,8 @@ LoRa radio modules with an open source firmware (see the section 
diff --git a/docs/source/interfaces.rst b/docs/source/interfaces.rst
index aef8b37..5c9523d 100644
--- a/docs/source/interfaces.rst
+++ b/docs/source/interfaces.rst
@@ -89,7 +89,7 @@ These can be used to control various aspects of interface behaviour.
 Interface Modes
 ===============
 
-The optional ``mode`` option is available on all interfaces, and allows
+The optional ``mode`` setting is available on all interfaces, and allows
 selecting the high-level behaviour of the interface from a number of modes.
 These modes affect how Reticulum selects paths in the network, how announces
 are propagated and how long paths are valid.
@@ -314,6 +314,9 @@ you must use the i2p_tunneled option:
       listen_port = 5001
       i2p_tunneled = yes
 
+In almost all cases, it is easier to use the dedicated ``I2PInterface``, but for complete
+control, and using I2P routers running on external systems, this option also exists.
+
 .. _interfaces-tcpc:
 
 TCP Client Interface
@@ -323,6 +326,10 @@ To connect to a TCP server interface, you would naturally use the TCP client
 interface. Many TCP Client interfaces from different peers can connect to the
 same TCP Server interface at the same time.
 
+The TCP interface types can also tolerate intermittency in the IP link layer.
+This means that Reticulum will gracefully handle IP links that go up and down,
+and restore connectivity after a failure, once the other end of a TCP interface reappears.
+
 .. code::
 
   # Here's an example of a TCP Client interface. The
@@ -383,8 +390,8 @@ with all other peers on a local area network.
 *Please Note!* Using broadcast UDP traffic has performance implications,
 especially on WiFi. If your goal is simply to enable easy communication
 with all peers in your local ethernet broadcast domain, the
-:ref:`Auto Interface` performs better, and is just as
-easy to use.
+:ref:`Auto Interface` performs better, and is even
+easier to use.
 
 The below example is enabled by default on new Reticulum installations,
 as it provides an easy way to get started and to test Reticulum on a
@@ -395,7 +402,7 @@ pre-existing LAN.
   # This example enables communication with other
   # local Reticulum peers over UDP.
   
-  [[Default UDP Interface]]
+  [[UDP Interface]]
     type = UDPInterface
     interface_enabled = True
 
diff --git a/docs/source/understanding.rst b/docs/source/understanding.rst
index c057197..5701401 100644
--- a/docs/source/understanding.rst
+++ b/docs/source/understanding.rst
@@ -51,9 +51,8 @@ connected to any kind of computer or mobile device that Reticulum can run on.
 
 The ultimate aim of Reticulum is to allow anyone to be their own network operator, and to make it
 cheap and easy to cover vast areas with a myriad of independent, interconnectable and autonomous networks.
-Reticulum **is not** *one network*, it **is a tool** to build *thousands of networks*.
-
-Networks without kill-switches, surveillance, censorship and control. Networks that can freely interoperate, associate and disassociate
+Reticulum **is not** *one network*, it **is a tool** to build *thousands of networks*. Networks without
+kill-switches, surveillance, censorship and control. Networks that can freely interoperate, associate and disassociate
 with each other, and require no central oversight. Networks for human beings. *Networks for the people*.
 
 .. _understanding-goals: