如果有一个8通道网关支持每天 150 万个数据包,并且应用程序每小时发送 1 个数据包,则该网关可以处理超过 62000 个节点。从理论上讲,可以是使用网络拓补,但LoRa 仅针对星形拓扑结构进行定义。
在最基本的层面上,像LoRaWAN这样的无线电协议相当简单。星际网络的交谈方式类似于教授和学生在讲座中的对话。网关(教授)与终端节点(类)通信,反之亦然。就沟通而言,这是一种不对称的关系。班上的每个人都可以同时尝试与教授交流,但教授无法同时听到或理解它们。尽管过于简单,但恒星拓扑的许多元素都可以追溯到这个类比。
LoRa的工作原理是以非常线性的方式随时间移动RF音调。此图显示了反向瀑布中的啁啾声 - 最新数据位于顶部,称为"向上啁啾"。您可以看到这种音调的频率如何随着时间的推移而增加。LoRa传输通过啁啾声工作,在时间和频率方面打破不同位置的芯片,以便对符号进行编码。LoRa传输在特定时间从一个地方跳到另一个地方的事实可能意味着一个位字符串与另一个位字符串。它不仅仅是简单的二进制文件,它还具有您可以传达的大量信息(高符号深度)。
想一想频移键控(FSK)。如果一个音调静止了一段时间,然后跳到其他地方一段时间,你会看到不同的线条或音调。这称为 2 元 FSK,表示两个频率符号。M-ary FSK具有多个频率音调,可以代表更多的符号。LoRa采用了这个概念,但它在啁啾声中做了一切。所以,它正在获得处理增益。由于LoRa接收器具有非常独特的模式,因此可以检测到更安静的啁啾声,即低于本底噪声。如果在同一信道中以不同的啁啾速率发生另一次传输,则它是正交的,这意味着可以同时检测到它。总而言之,接收端有很多容量。
LoRaWAN有三个同时运行的类。
A类是纯异步的,这就是我们所说的纯ALOHA系统。这意味着终端节点不会等待特定的时间与网关通信 - 它们只需在需要时进行传输,并在此之前处于休眠状态。如果你有一个完美协调的系统,超过八个通道,你可以用一条消息填充每个时间段。一旦一个节点完成传输,另一个节点就会立即开始。在没有任何通信间隙的情况下,纯aloha网络的理论最大容量约为该最大容量的18.4%。这主要是由于冲突,因为如果一个节点正在传输,而另一个节点唤醒并决定使用相同的无线电设置在同一频率信道中传输,它们将发生碰撞。
B 类允许将消息向下发送到电池供电的节点。网关每 128 秒传输一个信标。(请参阅图顶部的时间段。所有LoRaWAN基站都在同一时间传输信标消息,因为它们从属于每秒一个脉冲(1PPS)。这意味着轨道上的每颗GPS卫星在每秒开始时都会发送一条消息,从而使世界各地的时间同步。所有 B 类节点在 128 秒周期内分配一个时间段,并被告知何时侦听。例如,您可以告诉节点每十个时隙进行一次侦听,当出现这种情况时,它允许传输下行链路消息(见上图)。
C类允许节点不断侦听,并且可以随时发送下行链路消息。这主要用于交流供电应用,因为保持节点始终处于主动唤醒状态运行接收器需要大量能量。
使用LoRaWAN构建专用网络的障碍
LoRaWAN适用于某些应用程序,但它不是客户部署(也称为专用网络)解决方案的最佳选择。其主要原因是:
多个网关的共存允许干扰。使用LoRaWAN,所有网关(无论谁拥有或运营它们)都调谐到相同的频率。这意味着您的LoRaWAN网络可以看到我的所有流量,反之亦然。最好只在单个区域中运行一个网络,以避免碰撞问题。
但是,可以通过LoRa联盟为特定用途预留特定渠道。网络运营商还可以从服务器端限制其网络中的下行链路量,以确保低优先级端点不会因下行链路流量而"堵塞"网络。它不保证收到消息。
LoRaWAN是一种基于ALOHA的异步协议,其中超过50%的数据包错误率(PER)很常见。这对于某些抄表应用来说很好,但对于工业或企业传感器网络或控制系统,0% PER是必需的。消息传递的"喷雾和祈祷"方法不适合大多数工业用例,这就是为什么LoRaWAN最适合以上行链路为中心的网络。
它需要大量的开发工作。我们的客户面临的另一个挑战是,LoRaWAN 主要是数据链路 (MAC) 层(OSI 第 2 层),只有网络层的某些元素(OSI 第 3 层)。截至今天,没有供应商提供端到端的LoRaWAN解决方案。相反,您需要与多个供应商合作,分别获取节点、网关、后端服务器和生态系统的所有其他部分。虽然这为应用程序提供了很大的灵活性,但它给应用程序开发人员留下了大量的工作来生成完整的产品。这包括分组、下行链路控制、多播等。
存在占空比限制。公共网络中的868 MHz频段存在一些固有的限制。在欧洲,主要限制是百分之一的占空比(在大多数情况下)。这意味着,如果测量网关随时间推移传输的平均时间长度,则不能超过百分之一。因此,网关可以传输的量非常有限。在美国,FCC 对 ISM 频段的规定没有这样的限制。
它具有可变的最大传输单元 (MTU) 有效负载大小。LoRaWAN的另一大限制是,MTU有效负载大小根据网络分配给节点的传播因素而可变。换句话说,如果你离网关很远,你可以传输的字节数很小,但如果你靠近,它就会大得多;你根本无法提前知道这一点。因此,节点固件或应用程序必须能够适应应用程序层有效负载端的变化,这在开发固件时非常具有挑战性。
大多数开发人员通过在网络可以分配的最高传播因子(在大多数情况下非常小,通常小于 12 字节)选择最小的可用 MTU 来解决此问题。因此,需要发送大量数据(例如300字节)的LoRaWAN节点必须以30个10字节的消息发送,因为它们可能面临被分配了少量MTU的情况。因此,由于处理这些不断变化的 MTU 值所需的复杂软件更改,这些节点的传输量远远超过必要的范围。