SILICON LABS UG103.11 Thread Fundamentals Software
Specificazioni:
- Nome di u produttu: Thread Fundamentals
- Produttore: Silicon Labs
- Prutucolu: Filu
- Versione: Rev. 1.6
- Protokollu di Rete Wireless: Rete Mesh
- Standards supportati: IEEE, IETF
Informazione di u produttu
Thread Fundamentals hè un protokollu di rete in rete senza filu sicuru sviluppatu da Silicon Labs. Supporta l'indirizzi IPv6, u ponte à pocu costu à l'altri rete IP, è hè ottimizatu per u funziunamentu di bassa putenza, supportatu di batterie. U protokollu hè pensatu per a casa cunnessa è l'applicazioni cummerciale induve a rete basata in IP hè desiderata.
Istruzzioni d'usu
- Introduzione à i Fundamenti di Thread:
Thread hè un protokollu di rete di rete senza filu sicuru chì hè custruitu annantu à i standard IEEE è IETF esistenti. Permette a cumunicazione da u dispositivu à u dispositivu in casa cunnessa è applicazioni cummerciale. - Implementazione OpenThread:
OpenThread, una implementazione portatile di u protokollu Thread, offre una cumunicazione wireless affidabile, sicura è di bassa putenza per l'applicazioni di edifiziu domesticu è cummerciale. Silicon Labs furnisce un protokollu basatu in OpenThread adattatu per travaglià cù u so hardware, dispunibule nantu à GitHub è cum'è parte di Simplicity Studio 5 SDK. - Appartenenza à u gruppu di discussione:
Unisce à u Gruppu Thread furnisce l'accessu à a certificazione di u produttu è prumove l'usu di i dispositi abilitati à Thread. E versioni successore di a Specifica di Thread sò annunziate cù prugrammi di certificazione in 2022.
FAQ:
- Q: Cumu possu scaricà l'ultime Specifiche di Thread?
A: L'ultime Specifiche di Thread ponu esse scaricate sottumettendu una dumanda nantu à u Gruppu di Thread websitu à https://www.threadgroup.org/ThreadSpec. - Q: Chì ghjè u vantaghju principalitage di utilizà Thread in i dispositi IoT?
A: Thread furnisce un protokollu di rete in rete wireless sicura chì supporta l'operazione di bassa putenza è a cumunicazione da u dispositivu à u dispositivu, aumentendu i tassi di adopzione è l'accettazione di l'utilizatori per i dispositi IoT.
UG103.11: Thread Fundamentals
- Stu documentu include un brevi sfondate nantu à l'emergenza di
- Thread, furnisce una tecnulugia sopraview, è descrive alcune caratteristiche chjave di Thread à cunsiderà quandu implementate una suluzione Thread.
- A serie Fundamentals di Silicon Labs copre temi chì i gestori di prughjetti, i disegnatori di l'applicazioni è i sviluppatori anu da capisce prima di cumincià à travaglià in una soluzione di rete integrata cù
- Chip di Silicon Labs, pile di rete cum'è EmberZNet PRO o Silicon Labs Bluetooth®, è strumenti di sviluppu associati. I ducumenti ponu esse usatu cum'è un postu di partenza per tutti quelli chì anu bisognu di una introduzione à u sviluppu di l'applicazioni di rete senza filu, o chì hè novu à l'ambiente di sviluppu di Silicon Labs.
PUNTI CHIAVE
- Introduce Thread è furnisce una tecnulugia sopraview.
- Descrive alcuni di l'elementi chjave di Thread, cumprese a so pila IP, a topologia di a rete, l'instradamentu è a connettività di a rete, uniscendu una rete, gestione, dati persistenti, sicurezza, router di cunfini, messa in cumissioni di u dispositivu è strata di applicazione.
- Contene l'aghjurnamenti per a Specifica di Thread 1.3.0.
- Include i prossimi passi per travaglià cù l'offerta OpenThread di Silicon Labs.
Introduzione
- Silicon Labs è l'Internet di e Cose
- A versione di u Protocolu Internet 4 (IPv4) hè stata definita in 1981 in RFC 791, DARPA Internet Program Protocol Specification. ("RFC" sta per "Request for Comments.") Utilizendu l'indirizzu 32-bit (4-byte), IPv4 furnia 232 indirizzi unichi per i dispositi in Internet, un totale di circa 4.3 miliardi di indirizzi. In ogni casu, cum'è u nùmeru di l'utilizatori è di i dispositi crescenu in modu esponenziale, era chjaru chì u nùmeru di indirizzi IPv4 seranu esauriti è ci era bisognu di una nova versione di l'IP. Da quì u sviluppu di l'IPv6 in l'anni 1990 è a so intenzione di rimpiazzà l'IPv4. Cù l'indirizzu di 128 bit (16 byte), IPv6 permette 2128 indirizzi, più di 7.9 × 1028 indirizzi cà IPv4 (http://en.wikipedia.org/wiki/IPv6).
- A sfida per l'imprese in l'industria integrata cum'è Silicon Labs hè di affruntà sta migrazione di a tecnulugia è più impurtante di e dumande di i clienti mentre andemu in un mondu sempre cunnessu di i dispositi in a casa è u spaziu cummerciale, ciò chì hè spessu riferitu-russu cum'è l'Internet di e Cose (IoT). À un altu livellu, i scopi di IoT per Silicon Labs sò:
- Cunnette tutti i dispositi in a casa è u spaziu cummerciale cù a rete di u megliu in a classa, sia cù Zigbee PRO, Thread, Blue-tooth, o altri standard emergenti.
- Sfruttate l'expertise di a cumpagnia in microcontrollers amichevuli di l'energia.
- Aumentà i chips di signali misti di bassa putenza stabiliti.
- Fornite un ponte à pocu costu à i dispositi Ethernet è Wi-Fi esistenti.
- Abilita i servizii di nuvola è a cunnessione à i telefoni intelligenti è i tablette chì prumove a facilità d'usu è una sperienza d'utilizatore cumuna per i clienti.
A realizazione di tutti questi scopi aumenterà i tassi di adopzione è l'accettazione di l'utilizatori per i dispositi IoT.
- Gruppu Thread
- Gruppu di filu (https://www.threadgroup.org/) hè stata lanciata u 15 di lugliu di u 2014. Silicon Labs era una cumpagnia fundatrice cù sei altre cumpagnie. Thread Group hè un gruppu di educazione di u mercatu chì offre a certificazione di u produttu è prumove l'usu di i prudutti Dispositivi-à-dispositivi (D2D) è machine-à-machine (M2M) abilitati per Thread. L'appartenenza à u gruppu Thread hè aperta.
- A specificazione di u filu 1.1 pò esse scaricata dopu avè inviatu una dumanda quì: https://www.threadgroup.org/ThreadSpec. E versioni successore di l'Specificazioni di Thread, 1.2 è 1.3.0, sò ancu annunziate cù prugrammi di certificazione in 2022. L'ultime specificazione di Thread 1.4-draft hè dispunibule solu per i membri di Thread.
- Cosa hè Thread?
Thread hè un protokollu di rete di rete senza filu sicuru. A pila di Thread hè un standard apertu chì hè custruitu annantu à una cullizzioni di standard esistenti di l'Istitutu per l'Ingegneri Elettrici è Elettronici (IEEE) è l'Internet Engineering Task Force (IETF), piuttostu cà un novu standard tutale (vede a figura seguente). - Caratteristiche generali di u filu
- A pila di Thread supporta l'indirizzi IPv6 è furnisce un ponte à pocu costu à altre rete IP è hè ottimizatu per u funziunamentu di bassa putenza / batteria, è a cumunicazione wireless da u dispositivu à u dispositivu. A pila di Thread hè cuncepita specificamente per a casa cunnessa è l'applicazioni cummerciale induve a rete basata in IP hè desiderata è una varietà di strati d'applicazione ponu esse aduprati nantu à a pila.
- Eccu e caratteristiche generale di a pila di Thread:
- Installazione simplice di rete, start-up è operazione: A pila di Thread supporta parechje topologie di rete. A stallazione hè simplice cù un smartphone, tableta o computer. I codici di stallazione di u produttu sò usati per assicurà chì solu i dispositi autorizati ponu unisce à a reta. I protokolli simplici per furmà è unisce e rete permettenu à i sistemi di autoconfigurà è risolve i prublemi di routing cum'è accade.
- Sicurezza: I dispositi ùn si uniscenu micca à a reta à menu chì ùn sò micca autorizati è tutte e cumunicazioni sò criptate è sicure. A sicurezza hè furnita à u livellu di a rete è pò esse à u livellu di l'applicazione. Tutte e rete di Thread sò criptate utilizendu un schema di autentificazione di l'era di u smartphone è a crittografia Advanced Encryption Standard (AES). A sicurità utilizata in e rete Thread hè più forte di l'altri standard wireless chì u Gruppu Thread hà evaluatu.
- Reti di casa chjuche è grande: e rete di casa varianu da parechji à centinaie di dispusitivi. A capa di rete hè pensata per ottimisà l'operazione di a rete in basa di l'usu previstu.
- Grandi rete cummirciali: Per installazioni cummirciali più grandi, una sola rete Thread ùn hè micca abbastanza per copre tutte l'applicazioni, i requisiti di sistema è di rete. U mudellu Thread Domain permette a scalabilità di finu à 10,000s di dispositivi Thread in una sola implementazione, utilizendu una cumminazione di diverse tecnulugia di cunnessione (Thread, Ethernet, Wi-fi, etc.).
- Scuperta di serviziu bidirezionale è cunnessione: Multicast è broadcast sò inefficienti nantu à e rete di maglia wireless. Per a cumunicazione off-mesh, Thread furnisce un registru di serviziu induve i dispositi ponu registrà a so presenza è i so servizii, è i clienti ponu utilizà dumande unicast per scopre i servizii registrati.
- Gamma: I dispositi tipici furniscenu una gamma abbastanza per copre una casa normale. Disegni prontamente dispunibili cù putenza amplifiers allarganu a gamma sustinienzialmente. Un spettru spargugliatu distribuitu hè utilizatu à u Capu Fisicu (PHY) per esse più immune à l'interferenza. Per installazioni cummirciali, u mudellu Thread Domain permette à parechje rete di Thread per cumunicà l'una cù l'altri nantu à una spina dorsale, allargendu cusì a gamma per copre parechje subnets mesh.
- Nisun puntu di fallimentu unicu: A pila di Thread hè pensata per furnisce operazioni sicure è affidabili ancu cù u fallimentu o a perdita di i dispositi individuali. Dispositivi Thread ponu ancu incorpore ligami basati in IPv6 cum'è Wi-Fi è Ethernet in a topologia per riduce a probabilità di parechje partizioni Thread. In questu modu, ponu utilizà u più altu throughput, a capacità di u canali è a cobertura di quelli ligami infrastrutturali, mentre sustenenu ancu i dispositi di bassa putenza.
- Bassa putenza: I dispositi cumunicanu in modu efficiente per furnisce una sperienza d'utilizatore mejorata cù anni di vita prevista in cundizioni normali di batteria. I dispusitivi ponu generalmente funziunà per parechji anni nantu à batterie di tipu AA utilizendu cicli di travagliu adattati.
- Costu-efficace: Chipsets compatibili è pile di software da parechji venditori sò prezzu per l'implementazione di massa è cuncepiti da a terra per avè un cunsumu d'energia estremamente bassu.
- OpenThread
- OpenThread liberatu da Google hè una implementazione open-source di Thread®. Google hà liberatu OpenThread per rende a tecnulugia di rete utilizata in i prudutti Google Nest più largamente dispunibule per i sviluppatori, per accelerà u sviluppu di i prudutti per a casa cunnessa è l'edificazioni cummerciale.
- Cù una strata di astrazione di piattaforma stretta è una piccula impronta di memoria, OpenThread hè altamente portable. Supporta i disinni di sistema-on-chip (SoC) è di co-processore radio (RCP).
- OpenThread definisce un protokollu di cumunicazione senza filu da u dispositivu à u dispositivu basatu in IPv6 affidabile, sicuru è di bassa putenza per l'applicazioni di casa è cummerciale. Implementa tutte e funzioni definite in Thread Specification 1.1.1, Thread Specification 1.2, Thread Specification 1.3.0, è draft Thread Specification 1.4 (da a liberazione di stu documentu).
- Silicon Labs hà implementatu un protocolu basatu in OpenThread adattatu per travaglià cù u hardware di Silicon Labs. Stu protokollu hè dispunibule nantu à GitHub è ancu cum'è un kit di sviluppu di software (SDK) installatu cù Simplicity Studio 5. U SDK hè una snapshot cumpletamente pruvata di a fonte Gi-tHub. Supporta una gamma più larga di hardware cà a versione GitHub, è include documentazione è example applicazioni ùn sò micca dispunibili nantu à GitHub.
Thread Technology Overview
- IEEE 802.15.4
- A specificazione IEEE 802.15.4-2006 hè un standard per a cumunicazione wireless chì definisce i strati wireless Medium Access Control (MAC) è Physical (PHY) chì operanu à 250 kbps in a banda 2.4 GHz, cù una roadmap à bande subGHz (IEEE 802.15.4. 2006-802.15.4 Specifica). Cuncepitu cù una putenza bassa in mente, XNUMX hè adattatu per l'applicazioni chì generalmente implicanu un gran numaru di nodi.
- A capa 802.15.4 MAC hè aduprata per a gestione di missaghju basica è u cuntrollu di congestione. Questa capa MAC include un mecanismu di Carrier Sense Multiple Access (CSMA) per i dispositi à sente per un canale chjaru, è ancu una capa di ligame per trattà i tentativi è a ricunniscenza di i missaghji per una cumunicazione affidabile trà i dispositi adiacenti. A criptografia di a capa MAC hè aduprata nantu à i missaghji basati nantu à e chjave stabilite è cunfigurate da i strati più alti di a pila di software. A strata di a rete si basa nantu à questi miccanismi sottostanti per furnisce cumunicazioni affidabili end-to-end in a rete.
- Partendu da a Specificazione di Thread 1.2, parechje ottimisazioni da a specificazione IEEE 802.15.4-2015 sò state implementate per fà e rete di Thread più robuste, responsive è scalabili:
- Enhanced Frame Pending: Migliora a vita di a bateria è a reattività di un dispositivu di sonnu (SED), riducendu u numeru di missaghji chì un SED pò mandà in l'aria. Ogni pacchettu di dati chì vene da un SED (micca solu richieste di dati) pò esse ricunnisciutu cù a prisenza di dati pendenti prossime.
- Keepalive Enhanced: Reduce a quantità di trafficu necessariu per mantene un ligame trà un SED è un genitore trattendu ogni messagiu di dati cum'è una trasmissione di rete keepalive.
- Coordinated SampLed Listening (CSL): Questa funzione di specificazione IEEE 802.15.4-2015 permette una sincronizazione megliu trà un SED è un genitore pianificendu periodi di trasmissione / ricezione sincronizzati senza richieste di dati periodichi. Questu permette à i dispositi di bassa putenza chì anu una latenza di ligame bassa è una rete cù una probabilità più bassa di collisioni di messagi.
- Enhanced ACK Probing: Questa funzione di specificazione IEEE 802.15.4-2015 permette un cuntrollu granulare di l'iniziatore nantu à e dumande metriche di ligame mentre risparmia energia riutilicendu mudelli di trafficu di dati regulare invece di messagi di sonda separati.
- Architettura di rete di fili
- Architettura Residenziale
L'utilizatori cumunicanu cù una reta di Thread residenziale da u so propiu dispositivu (smartphone, tableta, o computer) via Wi-Fi in a so Home Area Network (HAN) o utilizendu una applicazione basata in nuvola. A figura seguente illustra i tipi di dispositivi chjave in l'architettura di rete Thread.
- Architettura Residenziale
Figura 2.1. Thread Network Architecture
I seguenti tipi di dispusitivi sò inclusi in una reta Thread, partendu da a reta Wi-Fi:
- Border Routers furnisce a cunnessione da a reta 802.15.4 à e rete adiacenti nantu à altri strati fisichi (Wi-Fi, Ethernet, etc.). Border Routers furnisce servizii per i dispositi in a reta 802.15.4, cumpresi servizii di routing è scuperta di serviziu per operazioni off-work. Ci pò esse unu o più Border Routers in una reta Thread.
- Un Leader, in una partizione di rete Thread, gestisce un registru di l'ID di router assignati è accetta richieste da i dispositi finali eligibili per u router (REED) per diventà router. U Leader decide quale deve esse routers, è u Leader, cum'è tutti i routers in una rete di Thread, pò ancu avè i zitelli di u dispusitivu. U Leader assigna è gestisce ancu l'indirizzi di u router utilizendu CoAP (Constrained Application Protocol). Tuttavia, tutte e infurmazione cuntenuta in u Leader hè prisente in l 'àutri Routers Thread. Allora, se u Leader falla o perde a cunnessione cù a reta di Thread, un altru Router Thread hè elettu, è ripiglia cum'è Leader senza intervenzione di l'utilizatori.
- Thread Routers furnisce servizii di routing à i dispositi di rete. Thread Routers furnisce ancu servizii di cunnessione è di sicurità per i dispositi chì provanu à unisce à a reta. I Routers Thread ùn sò micca pensati per dorme è ponu downgrade a so funziunalità è diventanu REED.
- REED pò diventà un Router Thread o un Leader, ma micca necessariamente un Router Border chì hà pruprietà spiciali, cum'è parechje interfacce. A causa di a topologia di a rete o altre cundizioni, i REED ùn agiscenu micca cum'è routers. I REED ùn trasmettenu micca missaghji o furniscenu servizii di cunnessione o di sicurità per altri dispositi in a reta. A rete gestisce è prumove i dispositi eligibili per u router à i routers se ne necessariu, senza interazzione di l'utilizatori.
- I dispositi finali chì ùn sò micca eligibili per u router ponu esse FED (dispositivi finali completi) o MED (dispositivi finali minimi). I MED ùn anu micca bisognu di sincronizà esplicitamente cù i so parenti per cumunicà.
- Dispositivi di fine Sleepy (SED) cumunicà solu per mezu di u so genitori Thread Router è ùn ponu micca trasmette missaghji per altri dispositi.
- I Dispositivi End Sleepy Sincronizzati (SSED) sò una classe di Dispositivi End Sleepy chì utilizanu CSL da IEEE 802.15.4-2015 per mantene una pianificazione sincronizata cù un genitore, evitendu l'usu di richieste di dati regularmente.
Architettura cummerciale
U mudellu Thread Commercial piglia i tipi di dispositivi chjave per una reta residenziale è aghjunghjenu novi cuncetti. L'utilizatori cumunicanu cù una reta cummerciale attraversu i dispositi (smartphone, tableta o computer) via Wi-Fi o attraversu a so reta di l'impresa. A figura seguente illustra una topologia di rete cummerciale.
Figura 2.2. Topulugia di a rete cummerciale
I cuncetti sò:
- U mudellu Thread Domain supporta l'integrazione perfetta di più Reti Thread è l'interfaccia senza saldatura à e rete IPv6 non-Thread. U benefiziu principale di u Domain Thread hè chì i dispositi sò in una certa misura flessibili per unisce à qualsiasi rete di Thread disponibile cunfigurata cun un Domain Thread cumune, chì riduce a necessità di pianificazione manuale di rete o ricunfigurazioni manuali costose quandu a dimensione di a rete o u voluminu di dati sò scalati. su.
- Backbone Border Routers (BBRs) sò una classa di Border Router in u spaziu cummerciale chì facilitanu a sincronizazione di u Domain Thread di parechji segmenti di rete è permettenu una propagazione multicast di grande ambitu in è fora di ogni mesh in un Thread Do-main. Una reta di Thread chì face parte di un duminiu più grande deve avè almenu un BBR "Primariu" è pò avè parechje BBR "Secundariu" per a redundanza di fail-safe. I BBR cumunicanu cù l'altri nantu à una spina chì cunnetta tutte e rete Thread.
- A Backbone Link hè un ligame non-Thread IPv6 à quale un BBR si cunnetta utilizendu una interfaccia esterna utilizata per implementà u TBLP (Thread Backbone Link Protocol) per sincronizà cù altri BBR.
- I Dispositivi di Thread in una implementazione cummerciale sò cunfigurati cù Domini di Thread è Indirizzi Unichi di Dominiu (DUA). U DUA di un dispositivu ùn cambia mai durante a so vita di esse parti di un duminiu Thread. Questu facilita a migrazione à traversu diverse rete di Thread in un unicu duminiu è assicura chì i BBR rispettivi facilitanu u routing in parechje rete Thread.
Sti cuncetti sò illustrati in a figura seguente:
Figura 2.3. Thread Domain Model
Nisun puntu unicu di fallimentu
- A pila di Thread hè pensata per ùn avè micca un unicu puntu di fallimentu. Mentri ci sò una quantità di dispusitivi in u sistema chì eseguisce funzioni spiciali, Thread hè cuncepitu in modu chì ponu esse rimpiazzati senza influenza in u funziunamentu cuntinuu di a reta o di i dispositi. Per esample, un aparechju end sleepy richiede un genitore per cumunicazioni, cusì stu genitore rapprisenta un unicu puntu di fallimentu per e so cumunicazioni. Tuttavia, l'apparecchiu di u sonnu pò selezziunà un altru genitore se u so parente ùn hè micca dispunibule. Sta transizione ùn deve esse visibile à l'utilizatore.
Mentre u sistema hè cuncepitu per nisun puntu di fallimentu unicu, sottu à certe topologies ci saranu apparecchi individuali chì ùn anu micca capacità di salvezza. Per esample, in un sistema cù una sola Border - Router, s'è u Router Border perde u putere, ùn ci hè micca mezi à cambià à un Router Border alternativa. In questu scenariu, una ricunfigurazione di u Router Border deve esse realizatu.
- Partendu da a Specificazione di Thread 1.3.0, i Router Border chì sparte un ligame infrastrutturali ponu facilità un puntu di fallimentu unicu in un altru mediu (cum'è Wi-Fi o Ethernet) utilizendu un Thread.
- Radio Encapsulation Link (TREL). Cù sta funzione, a probabilità di partizioni Thread chì si formanu attraversu ligami hè ridutta.
Fundamenti di stack IP
- Indirizzu
- I dispositi in a pila di Thread supportanu l'architettura d'indirizzu IPv6 cum'è definita in RFC 4291 (https://tools.ietf.org/html/rfc4291: IP Version 6 Addressing Architecture). I dispusitivi supportanu un Unicu
- Indirizzu Locale (ULA), un Indirizzu Unicu di Dominiu (DUA) in un mudellu di duminiu Thread, è unu o più indirizzi Global Unicast Address (GUA) basatu nantu à e so risorse dispunibili.
- I bits d'altu ordine di un indirizzu IPv6 specificanu a reta è u restu specificanu indirizzi particulari in quella reta. Cusì, tutti l'indirizzi in una reta anu u stessu primu N bit. Quelli primi
- N bit sò chjamati "prefissu". U "/64" indica chì questu hè un indirizzu cù un prefissu di 64 bit. U dispusitivu chì principia a rete sceglie un prefissu /64 chì hè dopu utilizatu in tutta a reta. U prefissu hè un ULA (https://tools.ietf.org/html/rfc4193: Indirizzi IPv6 Unicast Locali Unichi). A reta pò ancu avè unu o più Border Router (s) chì ognunu pò avè o micca un /64 chì pò esse usatu per generà un ULA o GUA. U dispusitivu in a reta usa u so indirizzu EUI-64 (64-bit Extended Unique Identifier) per derivà u so identificatore d'interfaccia cum'è definitu in a Sezione 6 di RFC 4944 (https://tools.ietf.org/html/rfc4944: Trasmissione di Pacchetti IPv6 nantu à Reti IEEE 802.15.4). U dispusitivu sustene un indirizzu IPv6 locale di ligame cunfiguratu da l'EUI-64 di u node cum'è un identificatore d'interfaccia cù u prefissu locale di ligame ben cunnisciutu FE80::0/64 cum'è definitu in RFC 4862 (https://tools.ietf.org/html/rfc4862: IPv6 Stateless Address Autoconfiguration) è RFC 4944.
- I dispositi supportanu ancu indirizzi multicast adattati. Questu include link-local all node multicast, link local all router multicast, soli-cited node multicast, è un multicast locale mesh. Cù a prisenza di un router di frontiera backbone in un mudellu di duminiu, i dispositi ponu ancu sustene l'indirizzi multicast di u scopu più altu si registranu per elli.
- Ogni dispositivu chì si unisce à a reta hè assignatu un indirizzu cortu di 2 byte secondu a specificazione IEEE 802.15.4-2006. Per i routers, questu indirizzu hè assignatu cù i bits alti in u campu di l'indirizzu.
- I zitelli sò allora assignati un indirizzu cortu utilizendu i bits alti di i so parenti è i bits più bassi adattati per u so indirizzu. Questu permette à qualsiasi altru dispositivu in a reta per capiscenu u locu di routing di u zitellu cù l'altu bit di u so campu di indirizzu.
- 6 LowPAN
- 6LoWPAN significa "IPv6 Over Low Power Wireless Personal Networks". U scopu principale di 6LoWPAN hè di trasmette è riceve pacchetti IPv6 nantu à i ligami 802.15.4. Fendu cusì, hà da allughjà per a dimensione massima di quadru 802.15.4 mandata sopra l'aria. In i ligami Ethernet, un pacchettu cù a dimensione di l'unità di trasmissione massima IPv6 (MTU) (1280 bytes) pò esse facilmente mandatu cum'è un quadru nantu à u ligame. In u casu di 802.15.4, 6LoWPAN agisce cum'è una capa d'adattazione trà a capa di rete IPv6 è a capa di ligame 802.15.4. Risolve u prublema di trasmette un IPv6
- MTU frammentendu u pacchettu IPv6 à u mittente è riassembendu à u receptore.
6LoWPAN furnisce ancu un mecanismu di cumpressione chì riduce e dimensioni di l'intestazione IPv6 mandate in l'aria è cusì riduce a trasmissione di u sopra. U menu bits chì sò mandati nantu à l'aria, u menu energia hè cunsumata da u dispusitivu. Thread faci un usu pienu di sti miccanismi per trasmette in modu efficiente i pacchetti nantu à a reta 802.15.4. RFC 4944 (https://tools.ietf.org/html/rfc4944) è RFC 6282 (https://tools.ietf.org/html/rfc6282) descrive in dettaglio i metudi da quale a frammentazione è a compressione di l'intestazione sò realizati.
- Trasferimentu di u stratu di ligame
Un'altra caratteristica impurtante di a strata 6LoWPAN hè l'invio di pacchetti di u ligame. Questu furnisce un meccanismu di soprapiù assai efficace è bassu per trasmette pacchetti multi hop in una rete mesh. Thread usa l'instradamentu di a strata IP cù l'invio di pacchetti di u ligame.
Thread usa l'inviu di a capa di ligame per trasmette i pacchetti basati nantu à a tabella di routing IP. Per fà questu, l'intestazione di maglia 6LoWPAN hè aduprata in ogni pacchettu multi-hop (vede a figura seguente).- Figura 3.1. Formatu di l'intestazione Mesh
- In Thread, a strata 6LoWPAN riempia l'infurmazioni Mesh Header cù l'indirizzu brevi di 16-bit d'origine è l'indirizzu di origine finale 16-bit di destinazione. U trasmettitore cerca l'indirizzu curtu di u prossimu hop 16-bit in u Routing Table, è poi manda u quadru 6LoWPAN à u prossimu indirizzu 16-bit short hop cum'è destinazione. U prossimu aparechju hop riceve u pacchettu, cerca u prossimu hop in u
- Routing Table / Neighbour Table, diminuisce u count hop in u 6LoWPAN Mesh Header, è poi manda u pacchettu à u prossimu hop o destinazione finale 16-bit short address cum'è destinazione.
- 6 Incapsulazione LowPAN
I pacchetti 6LoWPAN sò custruiti nantu à u listessu principiu cum'è i pacchetti IPv6 è cuntenenu headers stacked per ogni funziunalità aghjuntu. Ogni header 6LoWPAN hè precedutu da un valore di dispatch chì identifica u tipu di header (vede a figura seguente).
- 6 Incapsulazione LowPAN
I pacchetti 6LoWPAN sò custruiti nantu à u listessu principiu cum'è i pacchetti IPv6 è cuntenenu headers stacked per ogni funziunalità aghjuntu. Ogni header 6LoWPAN hè precedutu da un valore di dispatch chì identifica u tipu di header (vede a figura seguente).
Figura 3.2. Formatu generale di un pacchettu 6LoWPAN
Thread usa i seguenti tipi di headers 6LoWPAN:- Mesh Header (adupratu per l'invio di strati di ligame)
- Fragmentation Header (usatu per frammentà u pacchettu IPv6 in parechji pacchetti 6LoWPAN)
- Header Compression Header (adupratu per a compressione di intestazioni IPv6)
- A specificazione 6LoWPAN impone chì, se più di un intestazione hè presente, devenu apparisce in l'ordine citatu sopra. I seguenti sò examples di pacchetti 6LoWPAN mandati sopra l'aria.
- In a figura seguente, a carica 6LoWPAN hè cumposta da l'intestazione IPv6 cumpressa è u restu di a carica IPv6.
- Figura 3.3. Pacchettu 6LoWPAN chì cuntene IPv6 Payload cù Header IPv6 Cumpressatu
- In a figura seguente, a carica 6LoWPAN cuntene l'intestazione IPv6 è parte di a carica IPv6.
- Figura 3.4. 6LoWPAN Packet Containing Mesh Header, un Header di Fragmentation, è un Header di Cumpressione U restu di u payload serà trasmessu in pacchetti successivi per u formatu in a figura seguente.
- Figura 3.5. 6LoWPAN Fragmentu Successu
- ICMP
Dispositivi Thread supportanu u protocolu Internet Control Message Protocol versione 6 (ICMPv6) cum'è definitu in RFC 4443, Internet Control Message Protocol (ICMPv6) per l'Internet Protocol Version 6 (IPv6) Specification. Supportanu ancu a dumanda di eco è i missaghji di risposta di eco. - UDP
A pila di Thread supporta User Datagram Protocol (UDP) cum'è definitu in RFC 768, User Datagram Protocol. - TCP
A pila di Thread supporta una variante TCP (Transport Control Protocol) chjamata "TCPlp" (TCP Low Power) (Vede usenix-NSDI20). Un dispositivu cumpletu cù Thread implementa l'iniziatore TCP è i roli d'ascolta cum'è descrittu in:- RFC 793, Protocolu di cuntrollu di trasmissione
- RFC 1122, Requisiti per Internet Hosts
- Specificazione di filu 1.3.0 è superiore: L'implementazioni TCP esistenti sò tipicamente micca sintonizzate per travaglià in modu ottimale nantu à e rete di maglia wireless è cù e dimensioni limitate di frame 802.15.4. Dunque, a specificazione definisce quelli elementi è i valori di parametri necessarii per una implementazione TCP efficiente nantu à e Reti di Thread (vede Specificazione di Thread 1.3.0, sezione 6.2 TCP).
- SRP
- U Protocolu di Registrazione di u Serviziu (SRP) cum'è definitu in u Protocolu di Registrazione di u Serviziu per a Scoperta di u Serviziu Basatu in DNS hè utilizatu nantu à i dispositi Thread chì cumincianu cù a Specifica di Thread 1.3.0. Ci deve esse un Registru di serviziu, mantinutu da un router di fruntiera. I clienti SRP nantu à a rete mesh ponu registrà per offre diversi servizii. Un servitore SRP accetta e dumande di scuperta basate in DNS è offre in più a criptografia di chjave publica per a sicurità, inseme cù altre miglioramenti minori per sustene megliu i clienti limitati.
Topulugia di Rete
- Indirizzu di rete è Dispositivi
- A pila di Thread supporta a connettività mesh completa trà tutti i routers in a reta. A topologia attuale hè basatu annantu à u numeru di routers in a reta. Se ci hè solu un router, allora a reta forma una stella. Se ci hè più di un router, allora una maglia hè furmatu automaticamente (vede 2.2 Architettura di rete di filu).
- Reti Mesh
- E rete di maglia incrustate facenu i sistemi di radiu più affidabili chì permettenu à e radiu di trasmette missaghji per altre radiu. Per esample, se un node ùn pò micca mandà un missaghju direttamente à un altru node, a reta di maglia incrustata trasmette u messagiu attraversu unu o più nodi intermedii. Comu discutitu in a sezione 5.3 Routing, tutti i nodi di router in a pila di Thread mantenenu e rotte è a cunnessione cù l'altri, cusì a maglia hè constantemente mantenuta è cunnessa. Ci hè un limitu di 64 indirizzi di router in a reta di Thread, ma ùn ponu micca tutti esse utilizati in una volta. Questu permette u tempu per l'indirizzi di i dispositi sguassati per esse reutilizati.
- In una reta di maglia, i dispositi finali di dorme o i dispositi eligibili per u router ùn viaghjanu micca per altri dispositi. Sti dispusitivi mandanu missaghji à un genitore chì hè un router. Stu router parente gestisce l'operazioni di routing per i so dispositi figlioli.
Routing è Connectivity Network
A reta di Thread hà finu à 32 routers attivi chì utilizanu u routing next-hop per i missaghji basatu nantu à a tabella di routing. A tavola di routing hè mantinuta da a pila di Thread per assicurà chì tutti i routers anu cunnessione è percorsi aghjurnati per qualsiasi altru router in a reta. Tutti i routers scambianu cù altri routers u so costu di routing à altri routers in a reta in un formatu cumpressu cù Mesh Link Establishment (MLE).
- Missaghji MLE
- I missaghji Mesh Link Establishment (MLE) sò usati per stabilisce è cunfigurà ligami radio sicuri, detectà i dispositi vicini, è mantene i costi di routing trà i dispositi in a reta. MLE opera sottu à a strata di routing è usa unicasti lucali è multicasts lucali trà i routers.
- I missaghji MLE sò usati per identificà, cunfigurà è secure ligami à i dispositi vicini cum'è a topologia è l'ambiente fisicu cambianu. MLE hè ancu utilizatu per distribuisce i valori di cunfigurazione chì sò spartuti in a reta, cum'è u canali è l'ID Personal Area Network (PAN). Questi missaghji ponu esse trasmessi cù inundazioni simplici cum'è specificatu da MPL (https://tools.ietf.org/html/draft-ietf-roll-trickle-mcast-11: Multicast Protocol for Low power and Lossy Networks (MPL)).
- I missaghji MLE assicuranu ancu chì i costi di ligami asimmetrici sò cunsiderati quandu stabiliscenu i costi di routing trà dui dispositi. I costi di ligami asimmetrici sò cumuni in e rete 802.15.4. Per assicurà chì a messageria bidirezionale hè affidabile, hè impurtante cunsiderà i costi di ligame bidirezionale.
- Scoperta è Riparazione di Route
- A scuperta di rotta à dumanda hè comunmente utilizata in e rete 802.15.4 di bassa putenza. Tuttavia, a scuperta di e rotte à dumanda hè cara in quantu à l'overhead di a rete è a larghezza di banda perchè i dispositi trasmettenu e dumande di scuperta di rotte attraversu a rete. In a pila di Thread, tutti i routers scambianu pacchetti MLE unicu chì cuntenenu informazioni di costu à tutti l'altri routers in a reta. Tutti i routers anu infurmazione aghjurnata di u costu di u percorsu à qualsiasi altru router in a reta, cusì ùn hè micca necessariu a scuperta di a strada à dumanda. Se una strada ùn hè più utilizzabile, i routers ponu selezziunà a prossima strada più adatta à a destinazione.
- U routing à i dispositi di u zitellu hè fattu fighjendu l'altu bit di l'indirizzu di u zitellu per determinà l'indirizzu di u router parente. Una volta chì u dispusitivu cunnosci u router parente, cunnosce l'infurmazioni di u costu di u percorsu è l'infurmazioni di u routing di u prossimu hop per quellu dispusitivu.
- Cume u costu di a strada o a topologia di a rete cambia, i cambiamenti si propaganu attraversu a reta utilizendu i missaghji MLE unicu. U costu di routing hè basatu annantu à a qualità di ligame bidirezionale trà dui dispusitivi. A qualità di ligame in ogni direzzione hè basatu annantu à u margine di ligame nantu à i missaghji entranti da quellu dispositivu vicinu. Questu Indicatore di Forza di Signal Ricevutu (RSSI) hè mappatu à una qualità di ligame da 0 à 3. Un valore di 0 significa costu scunnisciutu.
- Quandu un router riceve un novu missaghju MLE da un vicinu, o hà digià una entrata di tavula vicinu per u dispusitivu o unu hè aghjuntu. U missaghju MLE cuntene u costu in entrata da u vicinu, cusì questu hè aghjurnatu in a tavola vicinu di u router. U missaghju MLE cuntene ancu infurmazione di routing aghjurnata per altri routers chì hè aghjurnata in a tabella di routing.
- U numaru di routers attivi hè limitatu à a quantità di l'infurmazioni di u routing è u costu chì ponu esse cuntenuti in un solu pacchettu 802.15.4. Stu limitu hè attualmente 32 routers.
- Routing
- I dispositi utilizanu routing IP normale per trasmette i pacchetti. Una tabella di routing hè populata cù l'indirizzi di a rete è u prossimu hop appropritatu.
- U routing di vettore di distanza hè utilizatu per uttene rotte à l'indirizzi chì sò in a reta lucale. Quandu u routing nantu à a reta lucale, i sei bits superiori di questu indirizzu 16-bit definiscenu a destinazione di u router.
- Stu parent di routing hè allora rispunsevuli di trasmette à a destinazione finale basatu annantu à u restu di l'indirizzu 16-bit.
- Per u routing fora di a rete, un Router Border notifica à u Router Leader di i prefissi particulari chì serve è distribuisce sta informazione cum'è dati di rete in i pacchetti MLE. I dati di a rete includenu dati di prefissu, chì hè u prefissu stessu, u cuntestu 6LoWPAN, i Routers Border, è l'Autoconfigurazione di l'indirizzu senza Stato (SLAAC) o u servitore DHCPv6 per quellu prefissu. Se un dispositivu hè di cunfigurà un indirizzu cù quellu prefissu, cuntattate u servitore SLAAC o DHCP appropritatu per questu indirizzu. I dati di a rete includenu ancu una lista di i servitori di routing chì sò l'indirizzi 16-bit di i Routers Border predeterminati.
- Inoltre, in un spaziu cummerciale cù un mudellu di Domain Thread, un Router Border Backbone notifica à u capu di u router di u Prefissu Unicu di Dominiu chì serve, per indicà chì sta maglia face parte di u duminiu più grande di Thread. I dati di a rete per questu includenu dati di prefissu, u cuntestu 6LoWPAN, è u router di fruntiera ALOC. Ùn ci sò micca bandieri SLAAC o DHCPv6 stabiliti per questu prefissu, ma l'assignazione di l'indirizzu seguita u mudellu senza statu. Inoltre, ci sò ancu TLV di serviziu è servitore chì indicanu a capacità di serviziu "backbone" di stu router di fruntiera. A capacità di rilevazione di l'indirizzu duplicatu nantu à a spina dorsale esiste per qualsiasi dispositivu chì registra u so Indirizzu Unicu di Dominiu (DUA) cù u BBR. U DUA di un dispositivu ùn cambia mai durante a so vita di esse parti di un duminiu Thread.
- Questu facilita a migrazione in diverse reti Thread in un unicu duminiu è assicura chì i rispettivi BBR facilitanu l'instradamentu in più rete Thread. Sopra a spina dorsale, tecnulugie standard di routing IPv6 cum'è IPv6 Neighbor Discovery (NS / NA secondu RFC 4861) è Multicast Listener Discovery (MLDv2 cum'è RFC 3810) sò aduprate.
- Un Leader hè designatu per mantene a traccia di i dispositi eligibili per u router chì diventanu router o permettenu à i routers di downgrade à i dispositi eligibili per u router. Questu Leader assigna è gestisce ancu l'indirizzi di u router cù CoAP. In ogni casu, tutte l'infurmazioni cuntenute in questu Leader sò ancu publicità periodicamente à l'altri routers. Se u Leader hè fora di a reta, un altru router hè elettu, è ripiglià cum'è Leader senza intervenzione di l'utilizatori.
- Border Routers sò rispunsevuli di trattà a compressione o espansione 6LoWPAN è l'indirizzu à i dispositi di rete. Backbone Border Routers sò rispunsevuli di a gestione di MPL cù l'incapsulazione IP-in-IP è a decapsulation per i multicasts più grande chì entranu è fora di a maglia.
- Per più infurmazione nantu à i Router Border, vede AN1256: Utilizà u Silicon Labs RCP cù u Router Border OpenThread.
- Riprova è ricunniscenza
- Mentre a messageria UDP hè aduprata in a pila di Thread, a consegna di messagiu affidabile hè necessaria è cumpletata da questi meccanismi ligeri:
- Riprova à u nivellu di MAC - ogni dispusitivu utilizeghja ricunniscenza MAC da u prossimu hop è ripiglià un missaghju à a capa MAC se u missaghju MAC ACK ùn hè micca ricevutu.
- Riprova di u livellu di l'applicazione - a capa di l'applicazione pò stabilisce se l'affidabilità di u messagiu hè un paràmetru criticu. Sì cusì, un protokollu di ricunniscenza è di ricunniscenza end-to-end pò esse usatu, cum'è i tentativi CoAP.
Cumpagnia è Operazione di a Rete
Thread permette dui metudi di unione:
- Sparte l'infurmazioni di cumissioni direttamente à un dispositivu utilizendu un metudu fora di banda. Questu permette di guidà u dispusitivu à a reta propria cù sta infurmazione.
- Stabbilisce una sessione di cummissione trà un dispositivu di cunghjunzione è una applicazione di cummissione in un smartphone, tableta, o web.
- Per una reta cummerciale cù un mudellu di duminiu di Thread, un prucessu di Scrizzione Autonuma senza intervenzione di l'utilizatori chì furnisce certificati operativi nantu à i joiners dopu l'autentificazione hè specificatu da a Specifica Thread 1.2. U certificatu operativu codifica l'infurmazioni di u duminiu per u dispusitivu è permette a pruvista sicura di Network Master Key. Stu mudellu richiede un registratore o
- Thread Registrar Interface (TRI) nantu à un router di frontiera backbone è facilita a cumunicazione cù una autorità esterna (MASA) utilizendu i protokolli ANIMA / BRSKI / EST. Una reta chì sustene stu mudellu di cumissioni hè chjamata reta CCM.
- Per più infurmazione nantu à a messa in cumissioni di e rete Thread, vede a rùbbrica 11. Cummissione di i dispositi.
- U metudu 802.15.4 spessu usatu di unisce cù u permessu di unisce a bandiera in a carica di u faro ùn hè micca usatu in e rete Thread. Stu metudu hè più comunmente utilizatu per l'unione di u tipu di buttone di pressione induve ùn ci hè micca una interfaccia d'utilizatore o un canale fora di banda à i dispositi. Stu metudu hà prublemi cù a guida di u dispositivu in situazioni induve ci sò parechje rete dispunibili è pò ancu esse risichi per a sicurità.
- In e rete Thread, tutte l'unione sò iniziate da l'utilizatori. Dopu avè unitu, una autentificazione di sicurezza hè cumpletata à u livellu di l'applicazione cù un dispositivu di cummissione. Questa autentificazione di sicurità hè discututa in a sezione 9. Sicurezza.
- I dispusitivi si uniscenu à una reta cum'è un dispositivu finale di sonnu, un dispositivu finale (MED o FED), o un REED. Solu dopu chì un REED s'hè unitu è hà amparatu a cunfigurazione di a rete pò esse potenzialmente dumandà à diventà a
Thread Router. Quandu si unisce, un dispositivu hè furnitu un indirizzu curtu 16-bit basatu annantu à u so parente. Se un dispositivu eligibile per u router diventa un Router Thread, hè assignatu un indirizzu router da u Leader. A rilevazione di l'indirizzu duplicatu per i Router di Thread hè assicurata da u mecanismu di distribuzione di l'indirizzu di u router centralizatu chì reside nantu à u Leader. U genitore hè rispunsevule per evità l'indirizzi duplicati per i dispositi ospitanti perchè li assigna indirizzi quandu si uniscenu.
- Scuperta di a rete
- A scuperta di a rete hè aduprata da un dispositivu unitu per determinà ciò chì e rete 802.15.4 sò in a gamma radio. U dispusitivu scansa tutti i canali, emette una dumanda di scuperta MLE in ogni canale, è aspetta risposte di scuperta MLE. A risposta di scuperta 802.15.4 MLE cuntene una carica utile cù i paràmetri di a rete, cumpresu l'identificatore di u serviziu di rete (SSID), l'ID PAN allargatu, è altri valori chì indicanu se a reta accetta novi membri è s'ellu sustene a cummissione nativa.
- A scuperta di a rete ùn hè micca necessariu se u dispusitivu hè statu cumissionatu nantu à a reta perchè cunnosce u canali è l'ID PAN estensu per a reta. Sti dispusitivi poi attache à a reta utilizendu u materiale di cumissioni furnitu.
- Dati MLE
- Una volta chì un dispositivu hà attaccatu à una reta, ci hè una varietà di informazioni necessarie per participà à a reta. MLE furnisce servizii per un dispositivu per mandà un unicast à un dispositivu vicinu per dumandà i paràmetri di a rete è aghjurnà i costi di ligame à i vicini. Quandu un novu dispositivu si unisce, cunduce ancu una risposta di sfida per stabilisce cuntatori di frames di sicurezza cum'è discutitu in a sezione 9. Sicurezza.
- Tutti i dispositi supportanu a trasmissione è a ricezione di i missaghji di cunfigurazione di ligami MLE. Questu include "richiesta di ligame", "accetta di ligame" è "ligami accettate è dumanda".
- U scambiu MLE hè utilizatu per cunfigurà o scambià l'infurmazioni seguenti:
- L'indirizzu curtu 16-bit è 64-bit EUI 64 longu di i dispositi vicini
- L'infurmazione di e capacità di u dispositivu, ancu s'ellu hè un dispositivu di u sonnu è u ciclu di u sonnu di u dispusitivu
- Neighbor link costs if a Thread Router
- Materiale di sicurezza è cuntatori di quadru trà i dispositi
- I costi di routing à tutti l'altri Routers Thread in a reta
- Raccolta è distribuzione Link Metrics nantu à diversi valori di cunfigurazione di ligami
- Nota: I missaghji MLE sò criptati eccettu durante l'operazione iniziale di bootstrapping di node quandu u novu dispositivu ùn hà micca ottenutu u materiale di sicurità.
- CoAP
Protocollo di Applicazione Limitata (CoAP) cum'è definitu in RFC 7252 (https://tools.ietf.org/html/rfc7252: U Prutucolu di Applicazione Limitata (CoAP) hè un protocolu di trasportu specializatu per l'usu cù i nodi ristretti è e rete di bassa putenza. CoAP furnisce un mudellu di interazione dumanda / risposta trà i punti finali di l'applicazione, sustene a scuperta integrata di servizii è risorse, è include cuncetti chjave di u web cum'è URLs. CoAP hè utilizatu in Thread per cunfigurà l'indirizzi mesh-locali è l'indirizzi multicast necessarii da i dispositi. Inoltre, CoAP hè ancu utilizatu per i missaghji di gestione cum'è per uttene è stabilisce l'infurmazioni di diagnostica è altre dati di rete nantu à i router Thread attivi. - DHCPv6
DHCPv6 cum'è definitu in RFC 3315 hè utilizatu cum'è un protokollu cliente-servitore per gestisce a cunfigurazione di i dispositi in a reta. DHCPv6 usa UDP per dumandà dati da un servitore DHCP (https://www.ietf.org/rfc/rfc3315.txt: Protocolu di cunfigurazione di l'ospiti dinamichi per IPv6 (DHCPv6)).
U serviziu DHCPv6 hè utilizatu per a cunfigurazione di:- Indirizzi di rete
- Indirizzi multicast richiesti da i dispositi
- Perchè l'indirizzi brevi sò attribuiti da u servitore cù DHCPv6, a rilevazione di l'indirizzu duplicatu ùn hè micca necessariu. DHCPv6 hè ancu utilizatu da Border Routers chì assignanu indirizzi basatu annantu à u prefissu chì furnisce.
- SLAAC
SLAAC (Stateless Address Autoconfiguration) cum'è definitu in RFC 4862 (https://tools.ietf.org/html/rfc4862: IPv6 Stateless Address Auto-configuration) hè un metudu in quale un Router Border assigna un prefissu, è dopu l'ultimi 64 bits di u so indirizzu sò derivati da u router. U mecanismu d'autoconfigurazione IPv6 senza statu ùn richiede micca cunfigurazione manuale di l'ospiti, cunfigurazione minima (se ci hè) di router, è senza servitori supplementari. U mecanismu senza statu permette à un òspite di generà i so propri indirizzi utilizendu una cumminazione di l'infurmazioni dispunibuli lucali è l'infurmazioni annunziate da i routers. - SRP
U Protocolu di Registrazione di u Serviziu (SRP) cum'è definitu in u Protocolu di Registrazione di u Serviziu per a Scoperta di u Serviziu Basatu in DNS hè utilizatu nantu à i dispositi Thread chì cumincianu cù a Specifica di Thread 1.3.0. Ci deve esse un Registru di serviziu, mantinutu da un router di fruntiera. I clienti SRP nantu à a rete mesh ponu registrà per offre diversi servizii. Un servitore SRP accetta e dumande di scuperta basate in DNS è offre in più a criptografia di chjave publica per a sicurità, inseme cù altre miglioramenti minori per sustene megliu i clienti limitati.
Gestione
- ICMP
Tutti i dispositi supportanu u protocolu di messagiu di cuntrollu di Internet per i missaghji d'errore IPv6 (ICMPv6), è ancu a dumanda di ecu è i missaghji di risposta di eco. - Gestione di i dispositi
A strata di l'applicazione nantu à un dispositivu hà accessu à un inseme di infurmazioni di gestione è di diagnostica di u dispositivu chì ponu esse aduprati in u locu o raccolti è mandati à altri dispositi di gestione.
À i strati 802.15.4 PHY è MAC, u dispusitivu furnisce l'infurmazioni seguenti à a strata di gestione:- Indirizzu EUI 64
- indirizzu cortu 16-bit
- infurmazione di capacità
- ID PAN
- Pacchetti mandati è ricevuti
- Octets mandati è ricevutu
- Pacchetti cascati in trasmissione o riceve
- Errori di sicurità
- Numero di tentativi MAC
- Gestione di a rete
A strata di a reta di u dispusitivu furnisce ancu infurmazioni nantu à a gestione è i diagnostichi chì ponu esse utilizati in u locu o mandati à altri dispositi di gestione. A strata di a rete furnisce a lista di l'indirizzi IPv6, a tavola vicinu è u zitellu, è a tabella di routing.
Dati persistenti
I dispositi chì operanu in u campu ponu esse resettati accidentalmente o apposta per una varietà di motivi. I dispositi chì sò stati resettati anu bisognu di riavvia l'operazioni di a rete senza intervenzione di l'utilizatori. Per fà questu successu, l'almacenamiento non volatile deve guardà l'infurmazioni seguenti:
- Informazioni di rete (cum'è PAN ID)
- Materiale di sicurità
- Indirizzu infurmazione da a reta per furmà l'indirizzi IPv6 per i dispositi
$ Sicurezza
- E rete di filu sò rete wireless chì deve esse assicurati contr'à attacchi over-the-air (OTA). Sò ancu cunnessi à l'internet è per quessa devenu esse assicurati contr'à l'attacchi in Internet. Parechje di l'applicazioni sviluppate per Thread serviranu una larga gamma di usi chì necessitanu longu periodi di operazione senza assistenza è cunsumu d'energia bassu. In u risultatu, a sicurità di e rete Thread hè critica.
- Thread utilizza una chjave in tutta a rete chì hè aduprata à u Media Access Layer (MAC) per a criptografia. Questa chjave hè aduprata per l'autentificazione è a criptografia standard IEEE 802.15.4-2006. A sicurità IEEE 802.15.4-2006 pruteghja a reta Thread da attacchi over-the-air originati da fora di a reta. U cumprumissu di ogni nodu individuale puderia esse revelatu a chjave in tutta a rete. In u risultatu, ùn hè di solitu micca l'unica forma di sicurità utilizata in a reta di Thread. Ogni nodu in a reta di Thread scambia i contatori di frames cù i so vicini via una stretta di manu MLE. Questi cuntatori di frames aiutanu à prutege contra attacchi di replay. (Per più infurmazione nantu à MLE, vede l'Specificazioni di Thread.) Thread permette à l'applicazione di utilizà qualsiasi protokollu di sicurezza Internet per a cumunicazione end-to-end.
- I nodi offuscate sia e so interfacce d'indirizzu IP di mesh-wide è i so ID estesi MAC randomizing. U stock EUI64 cum'è firmatu à u node hè utilizatu cum'è indirizzu di fonte solu durante a fase iniziale di cunghjunzione. Una volta un node hè unitu à una reta, u node usa cum'è a so fonte o un indirizzu basatu annantu à u so ID di nodu di dui byte, o unu di i so indirizzi randomizzati sopra citati. L'EUI64 ùn hè micca utilizatu cum'è indirizzu fonte una volta chì u node hè unitu à una reta.
A gestione di a rete deve ancu esse sicura. Una applicazione di gestione di rete Thread pò esse eseguita nantu à qualsiasi dispositivu cunnessu à Internet. Sè quellu dispusitivu ùn hè micca ellu stessu un membru di una reta Thread, deve prima stabilisce un Da sicurutagram Transport Layer Security (DTLS) cunnessione cù un Router Border Thread. Ogni rete Thread hà una passphrase di gestione chì hè utilizata per stabilisce sta cunnessione. Una volta una applicazione di gestione hè stata cunnessa à a reta Thread, i novi dispositi ponu esse aghjuntu à a reta.
- 802.15.4 Sicurezza
- A specificazione IEEE 802.15.4-2006 descrive i protokolli d'accessu wireless è media per PAN è HAN. Questi protokolli sò destinati à implementà nantu à i dispositi radio dedicati, cum'è quelli dispunibili da Silicon Labs. IEEE 802.15.4-2006 supporta una varietà di applicazioni, assai di quali sò sensibili à a sicurità. Per esample, cunzidira lu casu di una dumanda sistemu alarme chì monitors occupancy bastimentu. Se a reta ùn hè micca sicura è un intruso accede à a reta, i missaghji puderanu esse trasmessi per creà una falsa alarma, mudificà una alarma esistente, o silenziu una alarma legittima. Ognuna di queste situazioni pone risichi significativi per l'occupanti di l'edificiu.
- Parechje applicazioni necessitanu cunfidenziale è a maiò parte anu ancu bisognu di prutezzione di integrità. 802-15.4-2006 indirizza sti esigenze utilizendu un protokollu di sicurezza di u ligame cù quattru servizii di sicurezza basi:
- Cuntrolla di accessu
- Integrità di u messagiu
- Cunfidenziale di u messagiu
- Prutezzione di replay
- A prutezzione di replay furnita da IEEE 802.15.4-2006 hè solu parziale. Thread furnisce una sicurità supplementaria utilizendu MLE handshakes trà i nodi discututi sopra per cumpletà a prutezzione di replay.
- Gestione di a rete sicura
A gestione di a rete deve ancu esse sicura. Una applicazione di gestione di rete Thread pò esse eseguita nantu à qualsiasi dispositivu cunnessu à Internet. Ci hè dui parti à a sicurità:- Sicurezza over-the-air chì 802.15.4 cura. Thread implementa 802.15.4-2006 level 5 security.
- Reti CCM: Se un dispositivu ùn hè micca ellu stessu un membru di una reta CCM, deve stabilisce una cunnessione cù un router di frontiera backbone per ottene u so certificatu operativu per stabilisce si cum'è parte di u duminiu Thread.
- Reti non-CCM: Seguretat Internet: Se un dispositivu ùn hè micca ellu stessu un membru di una reta di Thread, prima deve stabilisce una cunnessione sicura Data-gram Transit Layer Security (DTLS) cù un Router Border Thread. Ogni reta di Thread hà una passphrase di gestione chì hè usata per stabilisce una cunnessione sicura trà i dispositi di gestione esterni è Border Routers. Una volta una applicazione di gestione hè stata cunnessa à a reta Thread, i novi dispositi ponu esse aghjuntu à a reta.
Router di frontiere
- Un Router Border Thread hè un dispositivu chì cunnetta una rete wireless Thread à altre rete IP basate (cum'è Wi-Fi o Ethernet) in u mondu esternu via una rete di casa o impresa locale. A cuntrariu di i gateway in altre soluzioni wireless, hè cumplettamente trasparente à i protokolli di trasportu è di l'applicazione chì si trovanu sopra a capa di rete. In u risultatu, l'applicazioni ponu cumunicà in modu sicuru da a fine à a fine senza alcuna traduzzione di strata di l'applicazione.
- Un Router Border Thread supporta minimamente e seguenti funzioni:
- Connettività IP end-to-end via routing trà i dispositi Thread è altre rete IP esterna.
- Cummissione di fili esterni (per esample, un telefuninu) per autentificà è unisce un dispusitivu Thread à una reta Thread.
Ci pò esse parechje Routers Border in una reta, eliminendu un "puntu unicu di fallimentu" in casu unu di elli malfunctions. U Border Router permette à ogni dispusitivu Thread di cunnette direttamente à i servizii di nuvola glubale, quandu e rete di l'impresa run IPv6 è IPv4, o IPv4 solu.
- Funzioni di Router Border per a Comunicazione Off-Mesh
- U Thread pò esse implementatu immediatamente in situazioni di travagliu attuali, prima di a transizione parziale o cumpleta à IPv6 è Thread permette a compatibilità IPv4 cù l'indirizzu di rete.
- Traduzzione (NAT). NAT64 traduce i pacchetti IPv6 in IPv4, è NAT64 traduce i pacchetti IPv4 in IPv6. Un Router Border Thread pò funziunà cum'è un òspite IPv4 nantu à a reta larga (WAN), capaci di ottene una interfaccia IPv4 è l'indirizzu di u router. Puderà acquistà un indirizzu utilizendu DHCP da un gruppu di indirizzu IPv4. U Thread Border Router pò ancu implementà u Protocol Port Control (PCP) per cuntrullà cumu i pacchetti IPv4 entranti sò tradotti è trasmessi è supportanu map-pings statici. A maiò parte di e traduzzioni IPv4 à IPv6 (è vice versa) ponu esse trattate da u Thread
- Border Router, cù cambiamenti minimi necessarii à una reta esistente.
Inoltre, i Router Border Thread supportanu a connettività IPv6 bidirezionale cù a scuperta di vicini IPv6, publicità di router, scuperta multi-cast, è inoltri di pacchetti.
- Thread over Infrastructure
- Thread Networks organizzanu automaticamente in partizioni di rete Thread separati quandu ùn ci hè micca cunnessione trà dui o più setti di dispusitivi. A partizioni di filu permette à i dispositi di mantene a cumunicazione cù altri apparecchi in a listessa partizione di filu, ma micca cù i dispositivi di filu in altre partizioni.
- Thread over Infrastructure permette à i dispositi Thread di incorpore tecnulugia di ligame basate in IP (per esample, Wi-Fi è Ethernet) in a topologia Thread. Questi ligami Thread supplementari nantu à altre tecnulugii di ligame riducenu a probabilità di l'occurrenza di più partizioni di rete di Thread, mentre chì a retrocompatibilità cù i dispositi Thread 1.1 è 1.2 esistenti hè garantita. Questi benefici sò ottenuti per qualsiasi topulugia di rete chì include almenu dui Router Border cunnessi via un ligame di infrastruttura adiacente cumunu.
- Per più infurmazione, riferite à l'Specificazioni di Thread 1.3.0 (o Draft di specificazione di Thread 1.4), Chapter 15 (Thread over Infrastructure).
- OpenThread Border Router
L'implementazione di OpenThread di un Border Router hè chjamatu OpenThread Border Router (OTBR). Supporta una interfaccia mesh cù un mudellu RCP. Silicon Labs furnisce una implementazione (supportata nantu à u Raspberry Pi) è u codice fonte cum'è parte di u Silicon Labs GSDK. Per più infurmazione, vede AN1256: Utilizà u Silicon Labs RCP cù l'OpenThread Border Router.
A documentazione nantu à a cunfigurazione è l'architettura di l'OTBR hè dispunibule à https://openthread.io/guides/border-router.
Cummissione di u dispusitivu
I dispusitivi Thread sò cumandati nantu à e rete Thread in modi diffirenti, cum'è deskrittu in i seguenti subsections.
- Cummissione di filu tradiziunale
- Per a cumissioni di rete di rete più chjuche (Specificazioni Thread 1.1.1 o superiore), l'installatori ponu utilizà l'app di commissioning Thread furnita cum'è una risorsa gratuita per i dispositi Android è iOS. Questa app pò esse usata per aghjunghje facilmente novi dispositi à a reta o ricunfigurate i dispositi esistenti.
- Thread usa u Mesh Commissioning Protocol (MeshCoP) per autentificà in modu sicuru, cumissioni, è unisce i novi dispositi radio senza fiducia à una rete mesh. E rete di filu cumprendenu una maglia autònoma autoconfigurante di i dispositi cù interfacce IEEE 802.15.4 è una strata di sicurezza à livellu di ligame chì esige chì ogni dispositivu in a maglia pussede a chjave maestra secreta attuale è spartuta.
- U prucessu di cumissioni principia quandu un Candidatu à u Cummissariu, tipicamente un telefuninu cunnessu via WiFi, scopre a reta di Thread attraversu unu di i so Router Border. Border Routers annuncia a so dispunibilità à i Cummissarii utilizendu qualunque locu di serviziu hè adattatu. U mecanismu di scuperta deve furnisce un Candidatu à u Cummissariu cù una strada di cumunicazione è u nome di a rete, perchè u nome di a rete hè utilizatu più tardi cum'è un sali criptograficu per stabilisce a Sessione di Cummissione.
- U Cummissariu Candidatu, dopu avè scupertu a reta di Thread d'interessu, si cunnetta in modu sicuru utilizendu a Credenziale di Cummissione (una passphrase selezziunata da l'omu per l'utilizazione in l'autentificazione). U passu di l'autentificazione di u Cummissariu stabilisce una cunnessione sicura di u socket client / server trà u Candidatu à u Cummissariu è un Router di Frontiera via DTLS. Questa sessione sicura hè cunnisciuta cum'è una Sessione di Cummissione. A Sessione di Cummissione usa u numeru di portu UDP assignatu annunziatu durante a fase di scuperta. Stu portu hè cunnisciutu cum'è u Portu Cummissariu. A credenza utilizata per stabilisce a Sessione di Cummissione hè cunnisciuta cum'è a Chjave Pre-Shared per u Cummissariu (PSKc).
- U Cummissariu Candidatu poi registra a so identità cù u so Router Border. U Leader risponde sia accettendu o rifiutendu u Router Border cum'è un speditore viable à u Cummissariu.
- Dopu à l'accettazione, u Leader aghjurnà u so statu internu per seguità u Cummissariu attivu, è u Router Border poi manda un missaghju di cunferma à u Candidatu à u Cummissariu chì informa u dispusitivu chì hè avà u Cummissariu.
- Quandu ci hè un Cummissariu autorizatu assuciatu cù a Rete Thread, diventa pussibule unisce à i Dispositivi Thread eligibili. Quessi sò cunnisciuti cum'è Joiners prima ch'elli diventenu parte di u
- Rete di filu. U Joiner prima crea una cunnessione DTLS cù u Cummissariu per scambià u materiale di cumissioni. Tandu usa u materiale di cumissioni per aghjunghje à a reta di Thread. U node hè cunsideratu parte di a reta solu dopu chì sti dui passi sò cumpleti. Puderà allora participà à u prucessu di unisce per i nodi futuri. Tutti issi passi cunfirmanu chì u dispusitivu currettu s'hè unitu à a reta Thread curretta, è chì a reta Thread stessu hè sicura contru l'attacchi wireless è Internet. Per più infurmazione nantu à u Mesh Commissioning Protocol, vede a specificazione di Thread.
- Cummissione rinfurzata cù estensioni cummirciali in Thread 1.2
- Thread Specification 1.2 è e so Estensioni Commerciali permettenu avà rete di scala assai più grande, cum'è quelli chì sò necessarii in edifici d'uffiziu, edifici publichi, alberghi, o altri tipi di edifici industriali o cummerciale. A causa di un megliu supportu di subnetting, Thread Spec-ification 1.2 permette più facilmente migliaia di dispusitivi in una implementazione, chì pò esse cunfigurata manualmente, in modu autonomu, è attraversu funzioni avanzate di cumissioni remote.
- L'Estensioni Commerciali in Thread 1.2 permettenu l'autenticazione à grande scala, l'unione di a rete, u roaming di subnet, è u funziunamentu basatu annantu à l'identità di fiducia in un Dominiu Enterprise. Per attivà l'autentificazione affidabile di i dispositi è a verificazione di l'infurmazioni d'autorizazione, un installatore di sistema pò stabilisce una Autorità di Certificazione Enterprise per simplificà l'implementazione di una rete à grande scala. Questu permette à l'installatore di stallà è mantene a rete senza accessu direttu à i dispositi individuali è senza alcuna interazzione diretta cù questi dispositi, per mezu di un prucessu di iscrizzione automatizatu chjamatu Scrizzione Autonuma. A cuntrariu di Thread 1.1, induve l'accoppiamentu di u codice di u dispositivu hè utilizatu per l'autentificazione, l'Estensioni Commerciali in Thread 1.2 susteneranu una forma di autentificazione basata in certificatu più scalabile. Una reta di l'impresa pò avè unu o più domini di filu è ogni duminiu di filu pò esse stallatu per integrà parechje rete di filu.
Stratu di l'applicazione
Thread hè una pila di rete di rete wireless chì hè rispunsevuli di indirizzà i missaghji trà e diverse dispositi in a reta di Thread descritta in a sezione 2.2 Architettura di rete di Thread. A figura seguente illustra i strati in u protocolu Thread.
Figura 12.1. Strati di protocolu di filu
- Una definizione standard di una strata di applicazione hè una "strata di astrazione chì specifica i protokolli cumuni è i metudi d'interfaccia utilizati da l'ospiti in una reta di cumunicazione" (https://en.wikipedia.org/wiki/Application_layer). In modu più simplice, una strata di l'applicazione hè a "lingua di i dispositi", per esempiuample, cumu un interruttore parla à una lampadina. Utilizendu queste definizioni, una capa di applicazione ùn esiste micca in Thread. I clienti custruiscenu a strata di l'applicazione basatu nantu à e capacità in a pila di Thread è i so propri bisogni. Ancu se Thread ùn furnisce micca una strata di applicazione, furnisce servizii di applicazione basica:
- messageria UDP
UDP offre una manera di mandà missaghji cù un numeru di portu 16-bit è un indirizzu IPv6. UDP hè un protokollu più simplice chè TCP è hà menu overhead di cunnessione (per esample, UDP ùn implementa micca i missaghji mantene a vita). In u risultatu, UDP permette un più veloce, più altu throughput di i missaghji è riduce u budget di putenza generale di una applicazione. UDP hà ancu un spaziu di codice più chjucu cà TCP, chì lascia più flash disponibile nantu à u chip per l'applicazioni persunalizati. - messageria multicast
Thread furnisce l'abilità di trasmette missaghji, vale à dì, mandà u stessu missaghju à parechji nodi in una reta Thread. Mul-ticast permette un modu integratu per parlà à i nodi vicini, routers, è una reta sana di Thread cù indirizzi IPv6 standard. - Strati d'applicazione chì utilizanu servizii IP
Thread permette l'usu di strati d'applicazione cum'è UDP è CoAP per permette à i dispositi di cumunicà interattivamente in Internet. I strati di l'applicazione non-IP necessitanu una certa adattazione per travaglià nantu à Thread. (Vede RFC 7252 per più infurmazione nantu à CoAP.)- U Silicon Labs OpenThread SDK include i seguenti sample applicazioni chì sò ancu dispunibili da u repository OpenThread GitHub:• ot-cli-ftd
- ot-cli-mtd
- ot-rcp (adupratu in cunjunzione cù un Router Border OpenThread)
- Queste applicazioni ponu esse aduprate per dimustrà e caratteristiche di una rete Thread. Inoltre, u Silicon Labs OpenThread SDK furnisce ancu un dispositivu di fine sonnuample app (sleepy-demo-ftd è sleepy-demo-mtd), chì mostra cumu utilizà e funzioni di gestione di l'energia di Silicon Labs per creà un dispositivu di bassa putenza. Infine, u ot-ble-dmp sampl'applicazione mostra cumu custruisce una applicazione multiprotocolu dinamica cù OpenThread è a pila Bluetooth di Silicon Labs. Vede QSG170: OpenThread Quick-Start Guide per più infurmazione nantu à travaglià cù example applicazioni in Simplicity Studio 5.
Prossime Passi
- U SDK OpenThread di Silicon Labs include una pila di rete OpenThread certificata è sample applicazioni chì dimustranu u cumpurtamentu di basa di a rete è l'applicazione. I clienti sò incuraghjiti à aduprà u sample applicazioni per acquistà familiarità cù Thread in generale è l'offerta di Silicon Labs in particulare. Ciascuna di l'applicazioni mostra cumu i dispositi formanu è si uniscenu à e rete, è cume i missaghji sò mandati è ricevuti. L'applicazioni sò dispunibuli per l'usu dopu a carica di Simplicity Studio 5 è u Silicon Labs OpenThread SDK. Simplicity Studio 5 include supportu per a creazione d'applicazioni (Configuratore di Prughjettu) è di decodificazione di i missaghji di rete è di l'applicazione (Network Analyzer) in Thread chì furnisce una visione supplementaria di l'operazione di e rete Thread. Per più infurmazione, vede QSG170: OpenThread Quick-Start Guide.
- Per più infurmazione nantu à OpenThread Border Routers vede AN1256: Using the Silicon Labs RCP with the OpenThread Border Rout-er. Per più infurmazione nantu à u sviluppu di Thread 1.3.0 sample applicazioni vede AN1372: Configurazione di l'applicazioni OpenThread per Thread 1.3.
Disclaimer
- Silicon Labs hà l'intenzione di furnisce à i clienti l'ultime documentazioni, precise è approfondite di tutti i periferichi è moduli dispunibuli per l'implementatori di sistemi è software chì utilizanu o intendenu aduprà i prudutti di Silicon Labs. I dati di carattarizazione, i moduli è i periferichi dispunibuli, e dimensioni di memoria è l'indirizzi di memoria si riferiscenu à ogni dispusitivu specificu, è i paràmetri "tipichi" furniti ponu è varianu in diverse applicazioni. Applicazione exampI descritti quì sò solu per scopi illustrativi. Silicon Labs si riserva u dirittu di fà cambiamenti senza più avvisu à l'infurmazioni di u produttu, e specificazioni è e descrizioni quì, è ùn dà micca garanzie in quantu à l'accuratezza o a completezza di l'infurmazioni incluse. Senza notificazione previa, Silicon Labs pò aghjurnà u firmware di u produttu durante u prucessu di fabricazione per ragioni di sicurezza o affidabilità. Tali cambiamenti ùn alteranu micca e specificazioni o u rendiment di u pruduttu. Silicon Labs ùn hà micca responsabilità per e cunsequenze di l'usu di l'infurmazioni furnite in stu documentu. Stu documentu ùn implica o cuncede esplicitamente alcuna licenza per cuncepisce o fabricà circuiti integrati. I prudutti ùn sò micca pensati o autorizati per esse utilizati in qualsiasi dispositi FDA Classe III, applicazioni per i quali l'approvazione di premarket FDA hè necessaria o Sistemi di Supportu Vita senza l'accunsentu scrittu specificu di
- Silicon Labs. Un "Sistema di Supportu di Vita" hè qualsiasi pruduttu o sistema destinatu à sustene o sustene a vita è / o a salute, chì, s'ellu falla, pò esse ragionevolmente previstu di risultatu in ferite persunale o morte significativu. I prudutti di Silicon Labs ùn sò micca pensati o autorizati per applicazioni militari. I prudutti di Silicon Labs ùn saranu in nessuna circustanza aduprati in armi di distruzzione di massa cumprese (ma senza limitazione) armi nucleari, biologiche o chimiche, o missili capaci di furnisce tali armi. Silicon Labs declina tutte e garanzie espresse è implicite è ùn serà micca rispunsevuli o rispunsevuli di qualsiasi ferite o danni ligati à l'usu di un pruduttu Silicon Labs in tali applicazioni micca autorizate. Nota: Stu cuntenutu pò cuntene una terminologia offensiva chì hè avà obsoleta. Silicon Labs rimpiazza sti termini cù una lingua inclusiva induve hè pussibule. Per più infurmazione, visitate www.silabs.com/about-us/inclusive-lexicon-project
L'infurmazione di marca
- Silicon Laboratories Inc.®, Silicon Laboratories®, Silicon Labs®, SiLabs® è u logo di Silicon Labs®, Bluegiga®, Bluegiga Logo®, EFM®, EFM32®, EFR, Ember®, Energy Micro, Energy Micro logo è combinazioni di elli , "i microcontrollers più energetichi di u mondu", Redpine Signals®, WiSeConnect , n-Link, EZLink®, EZRadio®, EZRadioPRO®, Gecko®, Gecko OS, Gecko OS Studio, Precision32®, Simplicity Studio®, Telegesis, a Telegesis Logo®, USBXpress®, Zentri, u logu Zentri è Zentri DMS, Z-Wave®, è altri sò marchi o marchi registrati di
- Silicon Labs. ARM, CORTEX, Cortex-M3 è THUMB sò marchi o marchi registrati di ARM Holdings. Keil hè una marca registrata di ARM Limited. Wi-Fi hè una marca registrata di u
- Wi-Fi Alliance. Tutti l'altri prudutti o nomi di marca citati quì sò marchi di i so rispettivi titulari.
- Silicon Laboratories Inc. 400 West Cesar Chavez Austin, TX 78701 USA
- www.silabs.com
Documenti / Risorse
![]() |
SILICON LABS UG103.11 Thread Fundamentals Software [pdfGuida di l'utente UG103.11 Thread Fundamentals Software, UG103.11, Thread Fundamentals Software, Fundamentals Software, Software |