1、网络形成
组网开始时,网络层首先向MAC层请求分配协议所规定的信道,或者由PHY层进行有效信道扫描,网络层管理实体等待信道扫描结果,然后根据扫描结果选择可允许能量水平的信道。
找到合适的信道后,为这个新的网络选择一个个域网标识符(PANID)。
PANID可由网络形成请求时指定,也可以随机选择一个PANID(除广播PANID固定为0xFFFF外),PANID 在所选信道中应该是唯一的。
PANID一旦选定,无线网关将选择16位网络地址0x0000作为自身短地址,同时进行相关设置。
完成设置后,通过MAC层发出网络启动请求,返回网络形成状态。
2、网络维护
网络维护网络维护主要包括设备加入网络和离开网络过程。
当网络形成后,通过网络管理实体设定MAC层连接许可标志来判断是否允许其他设备加设备初始化为协调器入网络。
加入方式有联合方式和直接方式,在协议实现中采取直接加入网络方式。
这种方式下由待加入的设备发送请求加入信标帧,网关接收到后,网络管理实体首先判断这个设备是否已存在于网络。
存在,则使其加入网络;若不存在,则向设备发送信标帧,为这个设备分配一个网络中唯一的16位的短地址。
这里的信标帧是由网关无线协议MAC层生成作为PHY层载荷,它包含PANID、加入时隙分配等信息。
网内设备也可以请求断开网络。
当网关收到设备断
开连接请求后,MAC层向网络层发送报告,开始执行断开流程,从设备列表中删除该设备相关信息。
网络层上层请求网络层发现当前在运行的网络:
NLME NETWORK DISCOVERY.request(ScanChannels,ScanDuration)
ScanChannels:高5为保留(b27~b31),低27为分别表示27个有效信道,该位为1,表示扫描;为0不扫描。
ScanDuration:扫描时间,aBaseSuperframeDuration*(2^n+1),n为ScanDuration值。
网络层在家收到该原语后,将通过检查ScanChannels参数发现网络,如果该设备为一个FFD 设备,则执行主动的扫描。
如果为一个RFD设备,倘若设备实现主动扫描,那么他会执行主动的扫描,否则
一个合适的父节点需要满足三个条件:匹配的PAN标志符、链路成本最大为3、允许连接,为了寻找合适的父节点,NLME_JOIN.request原语请求网络层搜索它的邻居表,如果邻居表中不存在这样的父节点则通知上层,如果存在多个合适的父节点则选择具有最小深度的父节点,如果存在多个具有最小深度的合适的父节点则随机选择一个父节点。