Google is committed to advancing racial equity for Black communities. See how.
Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

TREL

Questo modulo include l'astrazione della piattaforma per Thread Radio Encapsulation Link (TREL) utilizzando un'interfaccia IPv6 / UDP.

Sommario

Funzioni

otPlatTrelUdp6HandleReceived ( otInstance *aInstance, uint8_t *aBuffer, uint16_t aLength)
void
Questa funzione è una richiamata dalla piattaforma per notificare un pacchetto ricevuto.
otPlatTrelUdp6Init ( otInstance *aInstance, const otIp6Address *aUnicastAddress, uint16_t aUdpPort)
void
Questa funzione inizializza l'interfaccia TREL IPv6 / UDP.
otPlatTrelUdp6SendTo ( otInstance *aInstance, const uint8_t *aBuffer, uint16_t aLength, const otIp6Address *aDestAddress)
Questa funzione richiede che un pacchetto venga inviato a una determinata destinazione.
otPlatTrelUdp6SetTestMode ( otInstance *aInstance, bool aEnable)
Questa funzione opzionale è intesa solo per il test.
otPlatTrelUdp6SubscribeMulticastAddress ( otInstance *aInstance, const otIp6Address *aMulticastAddress)
void
Questa funzione sottoscrive l'interfaccia TREL IPv6 / UDP a un nuovo indirizzo multicast.
otPlatTrelUdp6UpdateAddress ( otInstance *aInstance, const otIp6Address *aUnicastAddress)
void
Questa funzione aggiorna l'indirizzo IPv6 unicast per l'interfaccia TREL IPv6 / UDP.

Funzioni

otPlatTrelUdp6HandleReceived

void otPlatTrelUdp6HandleReceived(
  otInstance *aInstance,
  uint8_t *aBuffer,
  uint16_t aLength
)

Questa funzione è una richiamata dalla piattaforma per notificare un pacchetto ricevuto.

Dettagli
Parametri
[in] aInstance
La struttura dell'istanza OpenThread.
[in] aBuffer
Un buffer contenente il pacchetto ricevuto.
[in] aLength
Lunghezza del pacchetto (numero di byte).

otPlatTrelUdp6Init

void otPlatTrelUdp6Init(
  otInstance *aInstance,
  const otIp6Address *aUnicastAddress,
  uint16_t aUdpPort
)

Questa funzione inizializza l'interfaccia TREL IPv6 / UDP.

Questa funzione viene chiamata prima di qualsiasi altra funzione della piattaforma TREL.

Dettagli
Parametri
[in] aInstance
La struttura dell'istanza OpenThread.
[in] aUnicastAddress
L'indirizzo unicast da aggiungere all'interfaccia e utilizzare come origine tx e destinazione rx.
[in] aUdpPort
Un numero di porta UDP da utilizzare.

otPlatTrelUdp6SendTo

otError otPlatTrelUdp6SendTo(
  otInstance *aInstance,
  const uint8_t *aBuffer,
  uint16_t aLength,
  const otIp6Address *aDestAddress
)

Questa funzione richiede che un pacchetto venga inviato a una determinata destinazione.

Dettagli
Parametri
[in] aInstance
La struttura dell'istanza OpenThread.
[in] aBuffer
Un puntatore al buffer contenente il pacchetto da inviare.
[in] aLength
Lunghezza del pacchetto (numero di byte).
[in] aDestAddress
L'indirizzo IPv6 di destinazione (può essere un indirizzo IPv6 unicast o multicast).
Valori restituiti
OT_ERROR_NONE
La richiesta di trasmissione è stata gestita correttamente.
OT_ERROR_ABORT
L'interfaccia non è pronta e la trasmissione è stata interrotta

otPlatTrelUdp6SetTestMode

otError otPlatTrelUdp6SetTestMode(
  otInstance *aInstance,
  bool aEnable
)

Questa funzione opzionale è intesa solo per il test.

Cambia lo stato della modalità di test per l'interfaccia TREL.

Questa funzione richiede che l'interfaccia TREL sia temporaneamente disabilitata o abilitata. Quando disabilitato, tutto il flusso di traffico attraverso l'interfaccia TREL dovrebbe essere interrotto silenziosamente.

Un'implementazione debole predefinita di questo metodo è fornita da OpenThread (che restituisce NOT_IMPLEMENTED).

Dettagli
Parametri
[in] aInstance
La struttura dell'istanza OpenThread.
[in] aEnable
Indica se abilitare / disabilitare l'interfaccia TREL.
Valori restituiti
OT_ERROR_NONE
Modificato con successo lo stato del test dell'interfaccia TREL (abilitato / disabilitato).
OT_ERROR_NOT_IMPLEMENTED
Questa funzione non è fornita dalla piattaforma.

otPlatTrelUdp6SubscribeMulticastAddress

void otPlatTrelUdp6SubscribeMulticastAddress(
  otInstance *aInstance,
  const otIp6Address *aMulticastAddress
)

Questa funzione sottoscrive l'interfaccia TREL IPv6 / UDP a un nuovo indirizzo multicast.

Questa funzione può essere chiamata più volte per iscriversi a indirizzi diversi. L'interfaccia dovrebbe accettare / ricevere pacchetti destinati a qualsiasi indirizzo multicast sottoscritto in precedenza oltre all'indirizzo unicast aggiunto dalla funzione otPlatTrelUdp6Init() quando l'interfaccia è stata inizializzata.

Dettagli
Parametri
[in] aInstance
La struttura dell'istanza OpenThread.
[in] aMulticastAddress
Un indirizzo IPv6 multicast.

otPlatTrelUdp6UpdateAddress

void otPlatTrelUdp6UpdateAddress(
  otInstance *aInstance,
  const otIp6Address *aUnicastAddress
)

Questa funzione aggiorna l'indirizzo IPv6 unicast per l'interfaccia TREL IPv6 / UDP.

L'interfaccia dovrebbe avere un solo indirizzo IPv6 unicast. La chiamata a questa funzione sostituisce qualsiasi indirizzo IPv6 unicast precedentemente impostato (durante l'inizializzazione da otPlatTrelUdp6Init o chiamate precedenti a otPlatTrelUdp6UpdateAddress() ).

Dettagli
Parametri
[in] aInstance
La struttura dell'istanza OpenThread.
[in] aUnicastAddress
L'indirizzo unicast da aggiungere all'interfaccia e utilizzare come sorgente tx e destinazione rx.