跳转至

Research Platform

We evaluate CosMAC using a combination of real-world and simulated experiments as outlined below.

Real-World IoT Satellite Testbed

We collaborate with FOSSA Systems [5], a commercial IoTpicosat service provider and launch our own picosat (details in Fig. 1) as part of their constellation of 12 satellites. The setup further includes two ground stations and multiple IoT nodes. Our picosat is designed and configured to be consistent with the commercial picosats, ensuring a seamless integration of our innovations into contemporary picosat networks. While we launch only one satellite, we utilize two other satellites in the constellation. We use two bidirectional communication-capable ground stations located in Spain (shown in Fig. 6) with satellite tracking capability. The testbed also includes IoT devices that use SX162 LoRa radios with omnidirectional antennas to communicate directly with our picosat.

真实世界的物联网卫星测试平台

我们与商业物联网微型卫星服务提供商FOSSA Systems [5]合作,发射了我们自己的微型卫星(详见图1),作为其由12颗卫星组成的星座的一部分。该实验平台还包括两个地面站和多个物联网节点。我们的微型卫星在设计和配置上与商业微型卫星保持一致,以确保我们的创新能够无缝集成到当代的微型卫星网络中。虽然我们只发射了一颗卫星,但我们也利用了该星座中的另外两颗卫星。我们使用了两个位于西班牙(如图6所示)且具备双向通信能力的地面站,这两个地面站均拥有卫星跟踪功能。该测试平台还包括使用SX162 LoRa无线电和全向天线的物联网设备,这些设备可以直接与我们的微型卫星通信。

CosmicBeats Simulator

As IoT-satellite constellations continue to expand, the research community is confronted with a pressing question: how should we design and assess new solutions for satellitedriven IoT networks? Although satellite simulators [26, 47, 49] have been developed previously, mainly for communication and earth observation satellites, none adequately meet the requirements for IoT-satellite communications. Specifically, these simulators fail to account for one-to-many transmission patterns, picosat-specific variations that can significantly affect link quality and power availability, and are typically designed for a limited number of satellites and ground stations (in the hundreds), which falls short of the large scale of IoT devices.

To address this issue, we introduce CosmicBeats 2 , a scalable, data-driven simulator specifically designed for IoTsatellite networks. CosmicBeats is a packet-level simulator that integrates satellite orbital models, field-of-view calculations, and MAC/network layer protocols. It incorporates power and communication models based on real-world data from our testbed and allows users to customize power and communication models according to their choice of solar panels, batteries, modulation, bandwidth, frequency bands, and more. Additionally, CosmicBeats is adaptable, capable of simulating not only IoT satellites but also earth observation and networked satellites.

CosmicBeats模拟器

随着物联网卫星星座的不断扩展,研究界面临一个紧迫的问题:应如何为卫星驱动的物联网网络设计和评估新的解决方案?尽管此前已有一些主要用于通信和地球观测的卫星模拟器[26, 47, 49],但没有一个能完全满足物联网卫星通信的需求。 具体来说,这些模拟器未能考虑“一对多”的传输模式以及微型卫星特有的、可能显著影响链路质量和可用功率的变量。此外,它们通常是为数量有限的卫星和地面站(数百量级)设计的, 这远不能满足物联网设备的大规模需求。

为解决此问题,我们推出了CosmicBeats 2,这是一款专为物联网卫星网络设计的、可扩展的、数据驱动的模拟器。CosmicBeats是一个 数据包级模拟器,集成了卫星轨道模型、视场计算以及MAC/网络层协议。 它基于我们真实测试平台的数据构建了功率和通信模型,并允许用户根据其所选的太阳能电池板、电池、调制方式、带宽、频段等自定义这些模型。此外,CosmicBeats具有很强的适应性,不仅能模拟物联网卫星,还能模拟地球观测卫星和网络化卫星。

6.2.1 Design Implementation. To meet these objectives, CosmicBeats uses a discrete-time method, performing simulated operations at regular intervals referred to as "epochs." This approach ensures uniform and predictable execution. In this section, we outline the specific structure of our system as depicted in Figure 7.

为实现上述目标,CosmicBeats采用离散时间方法,在固定的时间间隔(称为“纪元”或“epoch”)内执行模拟操作,确保了执行的统一性和可预测性。本节将概述如图7所示的系统具体结构。

Nodes/Topologies: We begin by defining “nodes” as the fundamental computational unit in our simulator. A node represents a physical endpoint, which can include ground stations, user terminals, IoT devices, among others. A "topology" is a collection of nodes, often representing entire constellations. For example, Swarm’s topology would include all Swarm satellites, user terminals, and ground stations.

Models: A “model” refers to a distinct component within a node, representing both hardware and software elements. Examples include satellite batteries, orbital models, computational capabilities, solar panels, etc. The interactions between models are crucial for accurate real-world simulations. For example, a computational model might need to check the power availability from the battery model before proceeding with its operations. To enable these interactions, a model provides public APIs that can be accessed by other models.

Manager: The simulation manager is responsible for controlling and running the simulation. During each epoch, the manager calls the Execute() method of each node, which in turn calls the Execute() method of each model (the sequence is determined by the configuration file). The manager also includes runtime APIs accessible to external users. These APIs allow functionalities such as stopping/resuming the simulation, checking the state of a node, etc.

Post-Processing: After the simulation, CosmicBeats includes a post-processing pipeline consisting of Single Model Analyzers (SMAs) and Summarizers. An SMA processes the logs of a single model. For example, a data generation model might have an SMA that produces a table showing the times when data was created and the content of the data. Similarly, a data reception model could have an SMA that shows when data was received and its contents. A Summarizer can then combine multiple SMAs to calculate specific metrics. For instance, a latency Summarizer might use both SMAs to calculate the average latency between data generation and successful reception.

alt text

节点/拓扑(Nodes/Topologies): 我们首先将“节点”定义为模拟器中的基本计算单元。节点代表一个物理端点,可以包括地面站、用户终端、物联网设备等。而“拓扑”是节点的集合,通常代表整个星座。例如,Swarm的拓扑将包括所有Swarm卫星、用户终端和地面站。

模型(Models): “模型”指节点内的独立组件,代表硬件和软件元素,例如卫星电池、轨道模型、计算能力、太阳能电池板等。模型之间的交互对于精确模拟真实世界至关重要。例如,计算模型在执行操作前可能需要检查电池模型的可用功率。为实现这些交互,每个模型都提供可供其他模型访问的公共API。

管理器(Manager): 模拟管理器负责控制和运行整个模拟过程。在每个纪元中,管理器会调用每个节点的Execute()方法,该方法进而调用其内部每个模型的Execute()方法(执行顺序由配置文件决定)。管理器还包含供外部用户访问的运行时API,这些API允许诸如停止/恢复模拟、检查节点状态等功能。

后处理(Post-Processing): 模拟结束后,CosmicBeats提供一个后处理流程,由 单一模型分析器(SMAs)和汇总器(Summarizers) 组成。SMA处理单个模型的日志。例如,数据生成模型的SMA可以生成一个表格,显示数据创建的时间和内容;相应地,数据接收模型的SMA可以显示数据接收的时间和内容。汇总器则可以结合多个SMA来计算特定指标。例如,延迟汇总器可以利用上述两个SMA来计算从数据生成到成功接收的平均延迟。


6.2.2 Real-world Modeling. CosmicBeats incorporates realistic models that have been confirmed through measurements from data collected from our real-world satellite testbed.

CosmicBeats集成了基于我们真实卫星测试平台数据验证过的现实模型。

Orbital Dynamics and RF Links: We calculate the orbital movements of satellites using publicly available TLEs from CelesTrak [3]. We use real-world measurements from our satellite and ground devices to create a wireless link model that computes satellite-ground device link quality and data rate. The model takes into account the transmission’s frequency, satellite power, distance, elevation, and weather. We adhered to state-of-the-art practices for characterizing the PHY, including power consumption and estimating the bit-error rate from SNR based on real-world traces. These measurements are based on the SX126x radio. Additionally, CosmicBeats models on-board packet queuing and considers the delay from uplink data reception to downloading the same to a ground station.

Power Modeling: We build a satellite power model based on measurements from our picosat in-orbit and coupled with its power allocation algorithm. Our model considers the satellite’s power characteristics including generation (solar panels), storage (batteries), and consumption (operation/communications). Power allocation prioritizes critical tasks (e.g., battery heating, flight control) over communication services. We also model power generation based on sunlight exposure in orbit.

轨道动力学与射频链路: 我们使用CelesTrak [3]提供的公开TLE数据来计算卫星的轨道运动。我们利用从卫星和地面设备收集的真实测量数据,创建了一个无线链路模型,用于计算星地设备的链路质量和数据速率。该模型考虑了传输频率、卫星功率、距离、仰角和天气等因素。我们遵循了业界最先进的物理层(PHY)表征实践,包括基于真实轨迹数据的功耗和信噪比(SNR)误码率(BER)估算。这些测量基于SX126x无线电。此外,CosmicBeats还模拟了星上数据包排队,并考虑了从上行数据接收到将相同数据下载至地面站的延迟。

功率建模: 我们基于在轨微型卫星的测量数据,并结合其功率分配算法,构建了一个卫星功率模型。该模型考虑了卫星的功率特性,包括发电(太阳能电池板)、储能(电池)和消耗(运行/通信)。功率分配会优先保障关键任务(如电池加热、飞行控制)而非通信服务。我们还根据在轨期间的日照情况对发电量进行了建模。

CosMAC Trace-Driven Evaluation

To evaluate CosMAC we use CosmicBeats with the following simulation parameters:

我们使用CosmicBeats来评估CosMAC协议,模拟参数如下:

Satellites: Our simulation contains 173 satellites based on the TLEs of the largest IoT satellite constellation, SWARM [10]. The frequency and RF configs used for all the satellites are identical to our launched picosat (Fig. 1).

IoT Devices: We simulate 100,000 IoT devices and randomly but uniformly spread them out across the world. We simulate different traffic patterns by varying the data generation rate of every IoT device. We simulate 8 hours of the network at a 1-second time granularity.

Ground Stations: We model our ground stations using measurements from our real-world ground station deployment. We evaluate our system at scale by simulating the distributed ground station at locations of the TinyGS ground stations [12]. This network has 1000+ ground stations and can support multiple constellations.

卫星: 我们的模拟包含173颗卫星,基于最大的物联网卫星星座SWARM [10]的TLE数据。所有卫星使用的频率和射频配置与我们发射的微型卫星(图1)相同。

物联网设备: 我们模拟了100,000个物联网设备,并将它们在全球范围内进行随机但均匀的分布。我们通过改变每个物联网设备的数据生成速率来模拟不同的流量模式。我们以1秒的时间粒度模拟了该网络8小时的运行情况。

地面站: 我们利用从真实地面站部署中获得的测量数据来建模我们的地面站。我们通过在TinyGS地面站[12]的位置模拟分布式地面站来评估我们系统的大规模性能。该网络拥有超过1000个地面站,并能支持多个星座。