网络层数据流程原语说明

1.数据发送部分原语APSDE-DATA.request(DstAddrMode, //目的地址寻址模式,0x01=16位短地址DstAddress, //ASDU目的实体设备地址DstEndPoin

1.数据发送部分原语

APSDE-DATA.request(

DstAddrMode, //目的地址寻址模式,0x01=16位短地址

DstAddress, //ASDU目的实体设备地址

DstEndPoint, //ASDU目的实体的断点地址

ProfiledId, //该帧应配置的文件标识

ClusterId, //间接寻址时绑定操作中所用对象的标识

SrcEndpoint, //发送ASDU源端点地址

asduLength, //ASDU长度字节数

asdu, //

TxOptions //发送选项

DiscoverRounter,//指定路由发现时采取的措施

RadiusCounter //允许广播帧在网络中传播的跳数



APSDE-SAP服务接口实现了在对等的应用实体之间传输应用协议数据单元。APS数据请求原语APSDE-DATA.request请求吧本地NHLE的一个PDU(即ASDU)传输到对等的NHLE实体。当本地NHLE有数据(PDU)需要传输时,就会产生该原语,数据可以采用直接寻址方式发送以及数据加密服务。

NLDE-DATA.request(

DstAddr, //NSDU目的设备地址

NsduLength, //NSDU字节数

Nsdu, //要发送的NSDU

NsduHandle, //NSDU相关句柄

BroadcastRadius, //允许广播帧传输距离

DiscoverRoute, //路由发现

SeurityEnable //信息安全处理



本地应用支持层生成该原语,用来传送一个NSDU数据包到对等的应用支持层,原语参数如上所示。

本地网络层数据实体收到该原语后,为传送NSDU包,需要先构造一个NPDU包(网络层协议数据单元)DstAddr的值不为0xFFFF将忽略BroadcastMode和BrocastRadiuds这两个参数。构造好NSDU包后将为NSDU包确定传输路由,确定了NSDU包的传输路由后,通过MCPS-DATA.request原语来发送NSDU包。该原语定义如下:

MCPS-DATA.request(

SrcAddrMode, //MPDU源地址模式0x02=16位短地址

SrcPANId, //源MSDU实体16位PAN标识符

SrcAddr, //源MSDU实体的独立设备地址

DstAddrMode, //MPDU目标地址模式,0x02=16位短地址

DstPanId, //目标MSDU实体的16位PAN标识符

DstAddr, //目标MSDU实体的独立设备地址

msduLength, //MAC层实体发送的MSDU字节数

msdu, //MSDU,MAC层数据服务单元

msduHandle, //MAC层实体发送的MSDU相关句柄

TxOptions, //MSDU传输选项,0x01=应答模式



在本原语中,参数SrcAddrMode和DstAddrMode都设为0x02,即使用16为网络地址;SrcPanId和DstPanId参数应设为MAC PIB中的macPANId的值;SrcAddr参数值设为MAC PIB中的macShortAddr值;DstAddr参数值为由由程序所决定的下一跳的地址;TxOptions参数与0X01或运算,所得到的结果非零,表示此次发送需要确认。在网络层实体接收到MCPS-DATA.confirm原语后,网络层实体发送NLDE-DATA.confirm原语,该原语中的参数状态为MAC层所接受到的状态。

如果网络层信息数据库(NIB)中所确定的网络安全级别为一个标准为非零值,并且SecurityEnable值为TRUE,

标签: