{'fraction_non_alphanumeric': 0.02014388489208633, 'fraction_numerical': 0.0, 'mean_word_length': 5.5, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Modeling Communication over Terrain for Realistic Simulation of Outdoor Sensor Network Deployments

Popular wireless network simulators have few available propagation models for outdoor Internet of Things applications. Of the available models, only a handful use real terrain data, yet an inaccurate propagation model can skew the results of simulations. In this article, we present TerrainLOS, a low-overhead propagation model for outdoor Internet of Things applications that uses real terrain data to determine whether two nodes can communicate. To the best of our knowledge, TerrainLOS is the first terrain-aware propagation model that specifically targets outdoor IoT deployments and that uses height maps to represent terrain. In addition, we present a new terrain classification method based on terrain “roughness,” which allows us to select a variety of terrain samples to demonstrate how TerrainLOS can capture the effects of terrain on communication. We also propose a technique to generate synthetic terrain samples based on “roughness.” Furthermore, we implemented TerrainLOS in the COOJA-Contiki network simulation/emulation platform, which targets IoT deployments and uses TerrainLOS to evaluate how often a network is fully connected based on the roughness of terrain, as well as how two popular power-aware routing protocols, RPL and ORPL, perform when terrain is considered.