otRadioFrame
#include <radio.h>
Representa un marco de radio IEEE 802.15.4.
Resumen
Atributos públicos |
|
---|---|
mAckFrameCounter
|
uint32_t
Contador de marcos de seguridad ACK (aplicable cuando se configura
mAckedWithSecEnhAck ). |
mAckKeyId
|
uint8_t
Índice de clave de seguridad ACK (aplicable cuando se configura
mAckedWithSecEnhAck ). |
mAckedWithFramePending
|
bool
Indica si este fotograma se confirmó con la configuración de fotograma pendiente.
|
mAckedWithSecEnhAck
|
bool
Esto indica si este marco se reconoció con ACK de mejora segura.
|
mAesKey
|
const otMacKeyMaterial *
Es el material de clave que se usa para la seguridad de marcos de AES-CCM.
|
mChannel
|
uint8_t
Canal utilizado para transmitir/recibir el fotograma.
|
mCslPresent
|
bool
Se establece como verdadero si el encabezado CSL IE está presente.
|
mCsmaCaEnabled
|
bool
Se establece como verdadero a fin de habilitar CSMA-CA para este paquete; de lo contrario, se establece como Falso.
|
mIeInfo
|
El puntero a la información relacionada con IE del encabezado.
|
mInfo
|
union otRadioFrame::@23
Es la unión de la información de transmisión y recepción para un marco de radio.
|
mIsARetx
|
bool
Indica si el fotograma es una retransmisión o no.
|
mIsHeaderUpdated
|
bool
Indica si el contador de fotogramas y los IE de CSL se actualizaron correctamente en el encabezado.
|
mIsSecurityProcessed
|
bool
Es verdadero si SubMac debe omitir el procesamiento de AES de este marco.
|
mLength
|
uint16_t
Longitud de la PSDU.
|
mLqi
|
uint8_t
Indicador de calidad de vínculos para fotogramas recibidos.
|
mMaxCsmaBackoffs
|
uint8_t
Cantidad máxima de intentos de retirada antes de declarar la falla de CCA.
|
mMaxFrameRetries
|
uint8_t
Cantidad máxima de reintentos permitidos después de una falla de transmisión.
|
mPsdu
|
uint8_t *
La PSDU.
|
mRadioType
|
uint8_t
Tipo de vínculo de radio: El controlador de radio debe ignorarlo.
|
mRssi
|
int8_t
Indicador de intensidad de señal recibida en dBm para los fotogramas recibidos
|
mRxChannelAfterTxDone
|
uint8_t
El canal de recepción una vez finalizada la transmisión del fotograma (después de todos los reintentos de fotogramas: recepción de confirmación, tiempo de espera o anulación).
|
mRxInfo
|
struct otRadioFrame::@23::@25
Estructura que representa la información de recepción del marco de radio
|
mTimestamp
|
uint64_t
Indica la hora del reloj de la radio local en microsegundos cuando el final del SFD estaba presente en la antena local.
|
mTxDelay
|
uint32_t
El tiempo de retraso en microsegundos de esta transmisión al que se hace referencia a
mTxDelayBaseTime . |
mTxDelayBaseTime
|
uint32_t
El tiempo base en microsegundos para las transmisiones programadas en relación con el reloj de radio local. Consulta
otPlatRadioGetNow y mTxDelay . |
mTxInfo
|
struct otRadioFrame::@23::@24
Estructura que representa la información de transmisión de marcos de radio.
|
Atributos públicos
ContadordemarcosmAck
uint32_t otRadioFrame::mAckFrameCounter
Contador de marcos de seguridad ACK (aplicable cuando se configura mAckedWithSecEnhAck
).
ID de mAckKey
uint8_t otRadioFrame::mAckKeyId
Índice de clave de seguridad ACK (aplicable cuando se configura mAckedWithSecEnhAck
).
mAckedWithFramePending
bool otRadioFrame::mAckedWithFramePending
Indica si este fotograma se confirmó con la configuración de fotograma pendiente.
mAckedWithSecEnhAck
bool otRadioFrame::mAckedWithSecEnhAck
Esto indica si este marco se reconoció con ACK de mejora segura.
mAesKey
const otMacKeyMaterial * otRadioFrame::mAesKey
Es el material de clave que se usa para la seguridad de marcos de AES-CCM.
Canal móvil
uint8_t otRadioFrame::mChannel
Canal utilizado para transmitir/recibir el fotograma.
mCSlPresent
bool otRadioFrame::mCslPresent
Se establece como verdadero si el encabezado CSL IE está presente.
mCsmaCaEnabled
bool otRadioFrame::mCsmaCaEnabled
Se establece como verdadero a fin de habilitar CSMA-CA para este paquete; de lo contrario, se establece como Falso.
Información multimedia
otRadioIeInfo * otRadioFrame::mIeInfo
El puntero a la información relacionada con IE del encabezado.
Información móvil
union otRadioFrame::@23 otRadioFrame::mInfo
Es la unión de la información de transmisión y recepción para un marco de radio.
MIsARetx
bool otRadioFrame::mIsARetx
Indica si el fotograma es una retransmisión o no.
Encabezado Mis Actualizaciones
bool otRadioFrame::mIsHeaderUpdated
Indica si el contador de fotogramas y los IE de CSL se actualizaron correctamente en el encabezado.
Si la capa de la plataforma no proporciona la capacidad OT_RADIO_CAPS_TRANSMIT_SEC
, puede ignorar esta marca.
Si la plataforma proporciona la capacidad OT_RADIO_CAPS_TRANSMIT_SEC
, se espera que la plataforma maneje el procesamiento de seguridad de TX y la asignación del contador de fotogramas. En este caso, se espera que ocurra lo siguiente:
Cuando se establece mIsHeaderUpdated
, indica que el núcleo de OpenThread ya estableció el contador de fotogramas y los IE de CSL (si la seguridad está habilitada) en el marco preparado. Se garantiza que el contador coincida con el valor del contador de los intentos anteriores del mismo fotograma. La plataforma no debe asignar ni cambiar el contador de fotogramas (pero es posible que, de todos modos, deba realizar el procesamiento de seguridad según la marca mIsSecurityProcessed
).
Si no estableces mIsHeaderUpdated
, el contador de fotogramas y la clave CSL IE no están configurados en el fotograma por el núcleo de OpenThread, y es responsabilidad de la plataforma de radio asignarlos. La plataforma debe actualizar el encabezado del marco (asignar los valores del contador y CSL IE) antes de enviar el fotograma de forma inalámbrica. Sin embargo, si la transmisión se interrumpe y el fotograma nunca se envía de forma inalámbrica (p. ej., un error de acceso al canal), la plataforma puede optar por no actualizar el encabezado. Si la plataforma actualiza el encabezado, también debe configurar esta marca antes de pasar el marco de la devolución de llamada otPlatRadioTxDone()
.
Proceso de seguridad
bool otRadioFrame::mIsSecurityProcessed
Es verdadero si SubMac debe omitir el procesamiento de AES de este marco.
Longitud de m
uint16_t otRadioFrame::mLength
Longitud de la PSDU.
MLQ
uint8_t otRadioFrame::mLqi
Indicador de calidad de vínculos para fotogramas recibidos.
Retiradas de mMaxCSma
uint8_t otRadioFrame::mMaxCsmaBackoffs
Cantidad máxima de intentos de retirada antes de declarar la falla de CCA.
Reintentos de mMaxFrame
uint8_t otRadioFrame::mMaxFrameRetries
Cantidad máxima de reintentos permitidos después de una falla de transmisión.
psdu
uint8_t * otRadioFrame::mPsdu
La PSDU.
Tipo de radiom
uint8_t otRadioFrame::mRadioType
Tipo de vínculo de radio: El controlador de radio debe ignorarlo.
mRSI
int8_t otRadioFrame::mRssi
Indicador de intensidad de señal recibida en dBm para los fotogramas recibidos
mRxChannelAfterTxDone
uint8_t otRadioFrame::mRxChannelAfterTxDone
El canal de recepción una vez finalizada la transmisión del fotograma (después de todos los reintentos de fotogramas: recepción de confirmación, tiempo de espera o anulación).
Las plataformas de radio pueden ignorarlo por completo. La pila de OT se asegurará de llamar a otPlatRadioReceive()
con el canal de RX deseado después de que se complete la transmisión de un fotograma y se indique en la devolución de llamada otPlatRadioTxDone()
. Las plataformas de radio que no proporcionan OT_RADIO_CAPS_TRANSMIT_RETRIES
siempre deben ignorar esto.
Esto está diseñado para situaciones en las que puede haber retrasos en las interacciones entre la pila de OT y la radio, ya que, por ejemplo, se usa en la arquitectura de RCP o host para garantizar que el RCP cambie al canal PAN más rápido. En particular, esto puede ayudar con la transmisión del CSL a un niño con sueño, ya que el niño puede usar un canal diferente al del PAN. Después del fotograma Tx, queremos que la radio/RCP vuelva al canal PAN rápidamente para garantizar que la madre o el padre no pierda la transmisión del hijo posteriormente, p.ej., el niño que responde al fotograma anterior transmitido mediante CSL por medio del canal PAN mientras la radio permanece en el canal CSL.
El cambio al canal RX DEBE ocurrir una vez que la transmisión del marco finaliza por completo, es decir, después de todos los reintentos y cuando se recibe la confirmación (cuando se configura el marcador "Ack Request" en el marco TX) o cuando se agota el tiempo de espera de la confirmación. Ten en cuenta que la confirmación se espera en el mismo canal en el que se envía el fotograma.
Información de mRx
struct otRadioFrame::@23::@25 otRadioFrame::mRxInfo
Estructura que representa la información de recepción del marco de radio
Marca de tiempo de m
uint64_t otRadioFrame::mTimestamp
Indica la hora del reloj de la radio local en microsegundos cuando el final del SFD estaba presente en la antena local.
Retraso mTx
uint32_t otRadioFrame::mTxDelay
El tiempo de retraso en microsegundos de esta transmisión al que se hace referencia a mTxDelayBaseTime
.
Nota: mTxDelayBaseTime
+ mTxDelay
apuntarán al punto en el tiempo en el que el final del SFD estará presente en la antena local, en relación con el reloj de la radio local.
mTxDelayBaseTime
uint32_t otRadioFrame::mTxDelayBaseTime
El tiempo base en microsegundos para las transmisiones programadas en relación con el reloj de radio local. Consulta otPlatRadioGetNow
y mTxDelay
.
Información mTx
struct otRadioFrame::@23::@24 otRadioFrame::mTxInfo
Estructura que representa la información de transmisión de marcos de radio.
Recursos
Los temas de referencia de la API de OpenThread se originan en el código fuente, disponible en GitHub. Para obtener más información, o a fin de contribuir a nuestra documentación, consulta Recursos.