This translation was generated using artificial intelligence and has not been reviewed by a human translator. It may contain inaccuracies or errors and should not be relied upon.
Gestione dei Gruppi Multicast in DoubleZero
Un gruppo multicast è una raccolta logica di dispositivi o nodi di rete che condividono un identificatore comune (tipicamente un indirizzo IP multicast) per trasmettere in modo efficiente i dati a più destinatari. A differenza della comunicazione unicast (uno-a-uno) o broadcast (uno-a-tutti), il multicast consente a un mittente di trasmettere un singolo flusso di dati che viene replicato dalla rete solo per i ricevitori che si sono uniti al gruppo.
Questo approccio ottimizza l'utilizzo della larghezza di banda e riduce il carico sia sul mittente che sull'infrastruttura di rete, poiché i pacchetti vengono trasmessi una sola volta per link e duplicati solo quando necessario per raggiungere più subscriber. I gruppi multicast sono comunemente utilizzati in scenari come lo streaming video in diretta, le conferenze, la distribuzione di dati finanziari e i sistemi di messaggistica in tempo reale.
In DoubleZero, i gruppi multicast forniscono un meccanismo sicuro e controllato per gestire chi può inviare (publisher) e ricevere (subscriber) dati all'interno di ciascun gruppo, garantendo una distribuzione delle informazioni efficiente e governata.
flowchart LR
subgraph Publisher
P1[Publisher 1]
P2[Publisher 2]
P3[Publisher 3]
end
subgraph Subscriber
S1[Subscriber 1]
S2[Subscriber 2]
S3[Subscriber 3]
S4[Subscriber 4]
end
P1 --> B[Gruppo Multicast]
P2 --> B
P3 --> B
B --> S1
B --> S2
B --> S3
B --> S4
Il diagramma sopra mostra come più utenti possono pubblicare messaggi in un gruppo multicast e come più utenti possono sottoscrivere per ricevere quei messaggi. La rete DoubleZero replica efficientemente i pacchetti, garantendo che tutti i subscriber ricevano i messaggi senza inutile overhead di trasmissione.
1. Creazione e Visualizzazione dei Gruppi Multicast
I gruppi multicast sono la base per la distribuzione sicura ed efficiente dei dati in DoubleZero. Ogni gruppo è identificato in modo univoco e configurato con una larghezza di banda specifica e un proprietario. Solo gli amministratori della DoubleZero Foundation possono creare nuovi gruppi multicast, garantendo una corretta governance e allocazione delle risorse.
Una volta creati, i gruppi multicast possono essere elencati per fornire una panoramica di tutti i gruppi disponibili, della loro configurazione e del loro stato attuale. Questo è essenziale per gli operatori di rete e i proprietari dei gruppi per monitorare le risorse e gestire gli accessi.
Creazione di un gruppo multicast:
Solo la DoubleZero Foundation può creare nuovi gruppi multicast. Il comando di creazione richiede un codice univoco, la larghezza di banda massima e la chiave pubblica del proprietario (o 'me' per il pagante corrente).
doublezero multicast group create --code <CODE> --max-bandwidth <MAX_BANDWIDTH> --owner <OWNER>
--code <CODE>: Codice univoco per il gruppo multicast (es. mg01)--max-bandwidth <MAX_BANDWIDTH>: Larghezza di banda massima per il gruppo (es. 10Gbps, 100Mbps)--owner <OWNER>: Chiave pubblica del proprietario
Elenco di tutti i gruppi multicast:
Per elencare tutti i gruppi multicast e visualizzare le informazioni di riepilogo (inclusi codice gruppo, IP multicast, larghezza di banda, numero di publisher e subscriber, stato e proprietario):
doublezero multicast group list
Esempio di output:
account | code | multicast_ip | max_bandwidth | publishers | subscribers | status | owner
3eUvZvcpCtsfJ8wqCZvhiyBhbY2Sjn56JcQWpDwsESyX | jito-shredstream | 233.84.178.2 | 200Mbps | 8 | 0 | activated | 44NdeuZfjhHg61grggBUBpCvPSs96ogXFDo1eRNSKj42
8ZmH3bx4k1JNYLyEviNAsCFxRoDoG3Y4ntVCUxu24fUF | mg01 | 233.84.178.0 | 1Gbps | 0 | 0 | activated | DZfHfcCXTLwgZeCRKQ1FL1UuwAwFAZM93g86NMYpfYan
2CuZeqMrQsrJ4h4PaAuTEpL3ETHQNkSC2XDo66vbDoxw | reserve | 233.84.178.1 | 100Kbps | 0 | 0 | activated | DZfPq5hgfwrSB3aKAvcbua9MXE3CABZ233yj6ymncmnd
4LezgDr5WZs9XNTgajkJYBsUqfJYSd19rCHekNFCcN5D | turbine | 233.84.178.3 | 1Gbps | 0 | 4 | activated | DZfHfcCXTLwgZeCRKQ1FL1UuwAwFAZM93g86NMYpfYan
Questo comando mostra una tabella con tutti i gruppi multicast e le loro principali proprietà:
- account: Indirizzo account del gruppo
- code: Codice del gruppo multicast
- multicast_ip: Indirizzo IP multicast assegnato al gruppo
- max_bandwidth: Larghezza di banda massima consentita per il gruppo
- publishers: Numero di publisher nel gruppo
- subscribers: Numero di subscriber nel gruppo
- status: Stato attuale (es. activated)
- owner: Chiave pubblica del proprietario
Una volta creato un gruppo, il proprietario può gestire quali utenti sono autorizzati a connettersi come publisher o subscriber.
2. Gestione delle Allowlist Publisher/Subscriber
Le allowlist di publisher e subscriber sono essenziali per controllare l'accesso ai gruppi multicast in DoubleZero. Queste liste definiscono esplicitamente quali utenti sono autorizzati a pubblicare (inviare dati) o sottoscrivere (ricevere dati) all'interno di un gruppo multicast specifico.
- Allowlist publisher: Solo gli utenti aggiunti all'allowlist publisher possono inviare dati al gruppo multicast. Ciò garantisce che solo le sorgenti autorizzate possano distribuire informazioni, prevenendo pubblicazioni non autorizzate o malevole.
- Allowlist subscriber: Solo gli utenti presenti nell'allowlist subscriber possono sottoscrivere e ricevere dati dal gruppo multicast. Questo protegge l'accesso alle informazioni trasmesse, garantendo che solo i destinatari approvati possano ricevere i messaggi.
La gestione di queste liste è responsabilità del proprietario del gruppo, che può aggiungere, rimuovere o visualizzare publisher e subscriber autorizzati usando la CLI DoubleZero. Una corretta gestione delle allowlist è fondamentale per mantenere la sicurezza, l'integrità e la tracciabilità delle comunicazioni multicast.
Nota: Per sottoscrivere o pubblicare in un gruppo multicast, un utente deve prima essere autorizzato a connettersi a DoubleZero seguendo le procedure di connessione standard. I comandi allowlist descritti qui associano solo un utente DoubleZero già autorizzato a un gruppo multicast. L'aggiunta di un nuovo IP all'allowlist di un gruppo multicast non concede di per sé l'accesso a DoubleZero; l'utente deve aver già completato il processo di autorizzazione generale prima di interagire con i gruppi multicast.
Aggiunta di un publisher all'allowlist
doublezero multicast group allowlist publisher add --code <CODE> --client-ip <CLIENT_IP> --user-payer <USER_PAYER>
--code <CODE>: Codice del gruppo multicast a cui aggiungere il publisher--client-ip <CLIENT_IP>: Indirizzo IP client in formato IPv4--user-payer <USER_PAYER>: Chiave pubblica del publisher o 'me' per il pagante corrente
Rimozione di un publisher dall'allowlist
doublezero multicast group allowlist publisher remove --code <CODE> --client-ip <CLIENT_IP> --user-payer <USER_PAYER>
--code <CODE>: Codice o pubkey del gruppo multicast per cui rimuovere l'allowlist publisher--client-ip <CLIENT_IP>: Indirizzo IP client in formato IPv4--user-payer <USER_PAYER>: Chiave pubblica del publisher o 'me' per il pagante corrente
Visualizzazione dell'allowlist publisher per un gruppo
Per elencare tutti i publisher nell'allowlist per un gruppo multicast specifico, usa:
doublezero multicast group allowlist publisher list --code <CODE>
--code <CODE>: Il codice del gruppo multicast di cui vuoi visualizzare l'allowlist publisher.
Esempio:
doublezero multicast group allowlist publisher list --code mg01
Esempio di output:
account | multicast_group | client_ip | user_payer
8ZmH3bx4k1JNYLyEviNAsCFxRoDoG3Y4ntVCUxu24fUF | mg01 | 206.189.166.187 | DZfHfcCXTLwgZeCRKQ1FL1UuwAwFAZM93g86NMYpfYan
8ZmH3bx4k1JNYLyEviNAsCFxRoDoG3Y4ntVCUxu24fUF | mg01 | 164.92.244.134 | DZfHfcCXTLwgZeCRKQ1FL1UuwAwFAZM93g86NMYpfYan
8ZmH3bx4k1JNYLyEviNAsCFxRoDoG3Y4ntVCUxu24fUF | mg01 | 186.233.185.50 | DZfHfcCXTLwgZeCRKQ1FL1UuwAwFAZM93g86NMYpfYan
8ZmH3bx4k1JNYLyEviNAsCFxRoDoG3Y4ntVCUxu24fUF | mg01 | 161.35.58.190 | DZfHfcCXTLwgZeCRKQ1FL1UuwAwFAZM93g86NMYpfYan
8ZmH3bx4k1JNYLyEviNAsCFxRoDoG3Y4ntVCUxu24fUF | mg01 | 159.223.46.72 | DZfHfcCXTLwgZeCRKQ1FL1UuwAwFAZM93g86NMYpfYan
8ZmH3bx4k1JNYLyEviNAsCFxRoDoG3Y4ntVCUxu24fUF | mg01 | 204.74.232.130 | DZfHfcCXTLwgZeCRKQ1FL1UuwAwFAZM93g86NMYpfYan
Questo comando mostra tutti i publisher attualmente autorizzati a connettersi al gruppo specificato, inclusi il loro account, codice gruppo, IP client e pagante utente.
Aggiunta di un subscriber all'allowlist
doublezero multicast group allowlist subscriber add --code <CODE> --client-ip <CLIENT_IP> --user-payer <USER_PAYER>
--code <CODE>: Codice o pubkey del gruppo multicast per cui aggiungere l'allowlist subscriber--client-ip <CLIENT_IP>: Indirizzo IP client in formato IPv4--user-payer <USER_PAYER>: Chiave pubblica del subscriber o 'me' per il pagante corrente
Rimozione di un subscriber dall'allowlist
doublezero multicast group allowlist subscriber remove --code <CODE> --client-ip <CLIENT_IP> --user-payer <USER_PAYER>
--code <CODE>: Codice o pubkey del gruppo multicast per cui rimuovere l'allowlist subscriber--client-ip <CLIENT_IP>: Indirizzo IP client in formato IPv4--user-payer <USER_PAYER>: Chiave pubblica del subscriber o 'me' per il pagante corrente
Visualizzazione dell'allowlist subscriber per un gruppo
Per elencare tutti i subscriber nell'allowlist per un gruppo multicast specifico, usa:
doublezero multicast group allowlist subscriber list --code <CODE>
--code <CODE>: Il codice del gruppo multicast di cui vuoi visualizzare l'allowlist subscriber.
Esempio:
doublezero multicast group allowlist subscriber list --code mg01
Esempio di output:
account | multicast_group | client_ip | user_payer
8ZmH3bx4k1JNYLyEviNAsCFxRoDoG3Y4ntVCUxu24fUF | mg01 | 186.233.185.50 | DZfHfcCXTLwgZeCRKQ1FL1UuwAwFAZM93g86NMYpfYan
8ZmH3bx4k1JNYLyEviNAsCFxRoDoG3Y4ntVCUxu24fUF | mg01 | 206.189.166.187 | DZfHfcCXTLwgZeCRKQ1FL1UuwAwFAZM93g86NMYpfYan
8ZmH3bx4k1JNYLyEviNAsCFxRoDoG3Y4ntVCUxu24fUF | mg01 | 164.92.244.134 | DZfHfcCXTLwgZeCRKQ1FL1UuwAwFAZM93g86NMYpfYan
8ZmH3bx4k1JNYLyEviNAsCFxRoDoG3Y4ntVCUxu24fUF | mg01 | 204.74.232.130 | DZfHfcCXTLwgZeCRKQ1FL1UuwAwFAZM93g86NMYpfYan
8ZmH3bx4k1JNYLyEviNAsCFxRoDoG3Y4ntVCUxu24fUF | mg01 | 161.35.58.190 | DZfHfcCXTLwgZeCRKQ1FL1UuwAwFAZM93g86NMYpfYan
8ZmH3bx4k1JNYLyEviNAsCFxRoDoG3Y4ntVCUxu24fUF | mg01 | 159.223.46.72 | DZfHfcCXTLwgZeCRKQ1FL1UuwAwFAZM93g86NMYpfYan
Questo comando mostra tutti i subscriber attualmente autorizzati a connettersi al gruppo specificato, inclusi il loro account, codice gruppo, IP client e pagante utente.
Per ulteriori informazioni sulla connessione e l'utilizzo del multicast, consulta Altra Connessione Multicast.