otRadioFrame

#include <radio.h>

IEEE 802.15.4 무선 프레임을 나타냅니다.

요약

공개 속성

mAckFrameCounter
uint32_t
ACK 보안 프레임 카운터입니다 (mAckedWithSecEnhAck가 설정된 경우 적용됨).
mAckKeyId
uint8_t
ACK 보안 키 색인입니다 (mAckedWithSecEnhAck가 설정된 경우 적용 가능).
mAckedWithFramePending
bool
이 프레임이 승인되었는지, 프레임 대기 중이 설정되었는지 나타냅니다.
mAckedWithSecEnhAck
bool
이 프레임이 보안 강화 ACK로 승인되었는지를 나타냅니다.
mAesKey
AES-CCM 프레임 보안에 사용되는 키 자료입니다.
mChannel
uint8_t
프레임을 송수신하는 데 사용되는 채널입니다.
mCslPresent
bool
CSL 헤더 IE가 있는 경우 true로 설정합니다.
mCsmaCaEnabled
bool
이 패킷에 CSMA-CA를 사용 설정하려면 true로 설정하고, 그렇지 않으면 false로 설정합니다.
mIeInfo
헤더 IE 관련 정보에 대한 포인터입니다.
mInfo
union otRadioFrame::@24
무선 프레임에 관한 송수신 정보의 합집합입니다.
mIsARetx
bool
프레임이 재전송되는지 여부를 나타냅니다.
mIsHeaderUpdated
bool
헤더에서 프레임 카운터 및 CSL IE가 제대로 업데이트되었는지 여부를 나타냅니다.
mIsSecurityProcessed
bool
SubMac이 이 프레임의 AES 처리를 건너뛰어야 하는 경우 true입니다.
mLength
uint16_t
PSDU의 길이
mLqi
uint8_t
수신된 프레임에 대한 링크 품질 표시기
mMaxCsmaBackoffs
uint8_t
CCA 실패를 선언하기 전 최대 백오프 시도 횟수입니다.
mMaxFrameRetries
uint8_t
전송 실패 후 허용되는 최대 재시도 횟수입니다.
mPsdu
uint8_t *
PSDU입니다.
mRadioType
uint8_t
라디오 링크 유형 - 라디오 드라이버에서 무시해야 합니다.
mRssi
int8_t
수신된 프레임의 수신된 신호 강도 표시기(dBm 단위)
mRxChannelAfterTxDone
uint8_t
프레임 TX가 완료된 후의 RX 채널 (모든 프레임 재시도 - 확인 수신, 제한 시간 또는 취소 후)
mRxInfo
struct otRadioFrame::@24::@26
무선 프레임 수신 정보를 나타내는 구조입니다.
mTimestamp
uint64_t
SFD의 끝이 로컬 안테나에 있었던 현지 무선 시계 시간입니다(단위: 마이크로초).
mTxDelay
uint32_t
mTxDelayBaseTime를 참조하는 이 전송의 지연 시간(단위: 마이크로초)입니다.
mTxDelayBaseTime
uint32_t
로컬 무선 시계를 기준으로 예약된 전송의 기본 시간(마이크로초)입니다. otPlatRadioGetNowmTxDelay를 참고하세요.
mTxInfo
struct otRadioFrame::@24::@25
무선 프레임 전송 정보를 나타내는 구조입니다.

공개 속성

mAckFrameCounter

uint32_t otRadioFrame::mAckFrameCounter

ACK 보안 프레임 카운터입니다 (mAckedWithSecEnhAck가 설정된 경우 적용됨).

mAckKeyId

uint8_t otRadioFrame::mAckKeyId

ACK 보안 키 색인입니다 (mAckedWithSecEnhAck가 설정된 경우 적용 가능).

mAckedWithFramePending

bool otRadioFrame::mAckedWithFramePending

이 프레임이 승인되었는지, 프레임 대기 중이 설정되었는지 나타냅니다.

mAckedWithSecEnhAck

bool otRadioFrame::mAckedWithSecEnhAck

이 프레임이 보안 강화 ACK로 승인되었는지를 나타냅니다.

mAesKey

const otMacKeyMaterial * otRadioFrame::mAesKey

AES-CCM 프레임 보안에 사용되는 키 자료입니다.

mChannel

uint8_t otRadioFrame::mChannel

프레임을 송수신하는 데 사용되는 채널입니다.

mCslPresent

bool otRadioFrame::mCslPresent

CSL 헤더 IE가 있는 경우 true로 설정합니다.

mCsmaCaEnabled

bool otRadioFrame::mCsmaCaEnabled

이 패킷에 CSMA-CA를 사용 설정하려면 true로 설정하고, 그렇지 않으면 false로 설정합니다.

mIeInfo

otRadioIeInfo * otRadioFrame::mIeInfo

헤더 IE 관련 정보에 대한 포인터입니다.

mInfo

union otRadioFrame::@24 otRadioFrame::mInfo

무선 프레임에 관한 송수신 정보의 합집합입니다.

mIsARetx

bool otRadioFrame::mIsARetx

프레임이 재전송되는지 여부를 나타냅니다.

mIsHeaderUpdated

bool otRadioFrame::mIsHeaderUpdated

헤더에서 프레임 카운터 및 CSL IE가 제대로 업데이트되었는지 여부를 나타냅니다.

플랫폼 레이어에서 OT_RADIO_CAPS_TRANSMIT_SEC 기능을 제공하지 않으면 이 플래그를 무시할 수 있습니다.

플랫폼이 OT_RADIO_CAPS_TRANSMIT_SEC 기능을 제공하는 경우 플랫폼은 tx 보안 처리 및 프레임 카운터 할당을 처리해야 합니다. 이 경우 다음과 같은 동작이 예상됩니다.

mIsHeaderUpdated가 설정되면 OpenThread 코어가 준비된 프레임에 이미 프레임 카운터와 CSL IE (보안이 사용 설정된 경우)를 설정했음을 나타냅니다. 카운터는 같은 프레임의 이전 시도에 있는 카운터 값과 일치하도록 보장됩니다. 플랫폼은 프레임 카운터를 할당하거나 변경해서는 안 됩니다. 하지만 mIsSecurityProcessed 플래그에 따라 보안 처리를 실행해야 할 수도 있습니다.

mIsHeaderUpdated가 설정되지 않은 경우 프레임 카운터와 키 CSL IE가 OpenThread 코어에 의해 프레임에 설정되지 않으며, 무선 플랫폼에서 이를 할당해야 합니다. 플랫폼은 무선으로 프레임을 전송하기 전에 프레임 헤더를 업데이트해야 합니다 (카운터 및 CSL IE 값을 할당). 하지만 전송이 중단되고 프레임이 무선으로 전송되지 않는 경우 (예: 채널 액세스 오류) 플랫폼은 헤더를 업데이트하지 않도록 선택할 수 있습니다. 플랫폼이 헤더를 업데이트하는 경우 otPlatRadioTxDone() 콜백에서 프레임을 다시 전달하기 전에 이 플래그를 설정해야 합니다.

mIsSecurityProcessed

bool otRadioFrame::mIsSecurityProcessed

SubMac이 이 프레임의 AES 처리를 건너뛰어야 하는 경우 true입니다.

mLength

uint16_t otRadioFrame::mLength

PSDU의 길이

mLqi

uint8_t otRadioFrame::mLqi

수신된 프레임에 대한 링크 품질 표시기

mMaxCsmaBackoffs

uint8_t otRadioFrame::mMaxCsmaBackoffs

CCA 실패를 선언하기 전 최대 백오프 시도 횟수입니다.

mMaxFrameRetries

uint8_t otRadioFrame::mMaxFrameRetries

전송 실패 후 허용되는 최대 재시도 횟수입니다.

mPsdu

uint8_t * otRadioFrame::mPsdu

PSDU입니다.

mRadioType

uint8_t otRadioFrame::mRadioType

라디오 링크 유형 - 라디오 드라이버에서 무시해야 합니다.

mRssi

int8_t otRadioFrame::mRssi

수신된 프레임의 수신된 신호 강도 표시기(dBm 단위)

mRxChannelAfterTxDone

uint8_t otRadioFrame::mRxChannelAfterTxDone

프레임 TX가 완료된 후의 RX 채널 (모든 프레임 재시도 - 확인 수신, 제한 시간 또는 취소 후)

라디오 플랫폼은 이를 완전히 무시할 수 있습니다. 프레임 TX가 완료되고 otPlatRadioTxDone() 콜백에서 신호를 받은 후 OT 스택은 원하는 RX 채널로 otPlatRadioReceive()를 호출해야 합니다. OT_RADIO_CAPS_TRANSMIT_RETRIES를 제공하지 않는 라디오 플랫폼은 항상 이를 무시해야 합니다.

이는 OT 스택과 라디오 간의 상호작용이 지연될 수 있는 상황을 위한 것으로, RCP가 PAN 채널로 더 빠르게 전환되도록 하기 위해 RCP/호스트 아키텍처에서 사용되는 예를 예로 들 수 있습니다. 이는 특히 졸린 아동에게 CSL tx를 적용하는 데 도움이 될 수 있으며, 이 경우 아동은 PAN 채널과는 다른 채널을 CSL에 사용할 수 있습니다. 프레임 tx 후에는 부모가 PAN 채널로 빠르게 돌아가서 그 이후에 부모가 자녀의 tx를 놓치지 않도록 해야 합니다(예: 자녀가 PAN 채널을 사용하여 상위 CSL 전송 프레임에 응답하는 동안 라디오가 CSL 채널에 계속 남아 있는 동안).

RX 채널로의 전환은 프레임 TX가 완전히 완료된 후, 즉 모든 재시도와 확인이 수신된 경우(TX 프레임에 'Ack 요청' 플래그가 설정된 경우) 또는 확인 제한 시간이 완료된 후에 발생해야 합니다(MUST). 확인은 프레임이 전송되는 동일한 채널에서 이루어집니다.

mRxInfo

struct otRadioFrame::@24::@26 otRadioFrame::mRxInfo

무선 프레임 수신 정보를 나타내는 구조입니다.

mTimestamp

uint64_t otRadioFrame::mTimestamp

SFD의 끝이 로컬 안테나에 있었던 현지 무선 시계 시간입니다(단위: 마이크로초).

mTxDelay

uint32_t otRadioFrame::mTxDelay

mTxDelayBaseTime를 참조하는 이 전송의 지연 시간(단위: 마이크로초)입니다.

참고: mTxDelayBaseTime + mTxDelay는 SFD의 끝이 로컬 안테나에 위치하는 시점을 로컬 무선 시계를 기준으로 가리켜야 합니다.

mTxDelayBaseTime

uint32_t otRadioFrame::mTxDelayBaseTime

로컬 무선 시계를 기준으로 예약된 전송의 기본 시간(마이크로초)입니다. otPlatRadioGetNowmTxDelay를 참고하세요.

mTxInfo

struct otRadioFrame::@24::@25 otRadioFrame::mTxInfo

무선 프레임 전송 정보를 나타내는 구조입니다.

자료

OpenThread API 참조 주제는 GitHub에서 제공되는 소스 코드에서 비롯됩니다. 자세한 내용을 알아보거나 문서에 참여하려면 리소스를 참고하세요.