4.5.2 数据传输模型
数据传输处理有三种类型:由一个设备传输数据给一个协调器;由协调器向设备传输数据;在两个对等设备之间传输数据。在星型拓扑中,因为只能在协调器和设备之间交换数据,所以只存在前两种类型。在对等拓扑中,任何两个设备之间都能交换数据,所以三种类型都存在。
根据网络是否支持传输信标,每一种类型的传输机制将不同。802.15.4 网络定义了两种网络运行模式:信标模式和非信标模式。如果一个网络需要进行同步或者支持低延迟设备(比如 PC),就采用信标模式。如果网络不需要同步且不需要支持低延迟网络,就可以采用非信标模式。不过,在发现网络时仍然需要信标。5.2 详细介绍了数据传输时的帧结构。
4.5.2.1 协调器接收数据
在一个信标模式的 PAN 网络中,如果设备想发送数据,它首先要侦听网络信标。当发现信标时,设备将与超帧结构同步。在一个合适的时间,设备向协调器传输它的数据帧。协调器根据需要,决定是否传输一个确认帧表示成功接收到消息。
在非信标模式下,如果设备想发送数据,它只需要简单地向协调器发送数据帧。同样地,协调器根据需要,决定是否传输一个确认帧表示成功接收到消息。
4.5.2.2 协调器传输数据
在一个信标模式的 PAN 网络中,如果协调器想发送数据,首先缓存这些数据并在接下来的信标帧中携带相关信息,暗示有目的设备的数据被缓存。而设备则周期性监听信标帧,若通过信标帧发现有自己的数据被缓存,则传输一个 MAC 命令以请求数据。此时,协调器收到数据请求后回应确认帧,然后紧跟在确认帧之后直接发送数据。如果需要,设备将回传一个确认帧以确认成功接收到数据。然后此次传输就完成了。当数据由传输成功后,在新的信标帧中将不会再包含相关数据被缓存的信息。
在非信标模式下,如果协调器想发送数据,首先缓存这些数据并等待设备发送的数据请求。设备通过传输一个 MAC 命令给协调器以请求数据。协调器在接收到数据请求后将回送一个确认帧以表示成功收到数据请求。若协调器中缓存有该目的设备的数据,就会发送数据。若协调器中并未有该目的设备的数据,那么协调器可以选择在ACK帧中标识无缓冲数据,或者确认帧中标识有数据缓冲,但是发送负载长度为 0 的数据帧,更多信息请参考 5.1.6.3 节。最后根据需求,设备决定是否应答确认帧。
4.5.2.3 对等数据传输
在对等结构的 PAN 网络中,每个设备都可以与它无线范围内的其它设备通信。为了提高效率,想通信的设备既不需要连续地接收或者与其它设备同步。在前一个情形中,设备只需要使用 CSMA/CA 机制发送数据。在后一个情形中,需要采取其它措施实行同步。这超出了本标准的讨论范围。