# Neighbor Discovery for IPv6 over BLE Mesh Networks
## 1 Introduction  
Bluetooth Low Energy (BLE) is a wireless personal area network technology that has been defined by the Bluetooth Special Interest Group (Bluetooth SIG) in Bluetooth Specification Version 4.0 [1]. Bluetooth has long been used with smartphones, computers, tablets and laptops as a short distance communications solution. However, this connection-oriented communications mode only supports star topology, which severely restricts the development of BLE in the Internet of things (IoT). The reason is that devices, such as smartphones, are too expensive and cannot be reliably connected for a long time, making it difficult for BLE devices to carry data access to the Internet [2]. IPv6 over BLE (6 LoBLE) is an important technology to enable IPv6 packets transmission over BLE devices. Furthermore, to realize the seamless connection between BLE devices and the Internet, 6 LoBLE technology completely breaks the traditional connection-oriented communications mode, leading BLE terminals to connect to the Internet only using routing devices [3]. This certainly opens new applications for Bluetooth devices, as well as provides new technical support for the development of the IoT. ABI Research expects a seven-fold growth in annual Bluetooth smart city devices shipments by 2023 [4]. These intelligent BLE devices are driving advancements in smart buildings and smart city management. They help in venues such as museums, stadiums, and airports, e.g., to guide visitors to where they need to be and provide them with a more personalized and fulfilling experience. Smart cities also leverage Bluetooth technology to boost local retail [5]. The Internet Engineering Task Force (IETF) presented the specification of IPv6 over Bluetooth Low Energy in RFC 7668 [6]. It supports IPv6 connectivity over BLE and defines stateless address auto-configuration, neighbor discovery, header compression/ decompression and other interesting features. The Bluetooth SIG has made efforts to improve the communication between devices via a mesh network, and released a Bluetooth mesh network based on BLE in 2019 [7]. However, in order to profit from the advantages of BLEmesh networks, it brings new challenges to realize IPv6 over BLE mesh networks (6 LoBLEmesh). One of the important issues is to improve the neighbor discovery mechanism. Neighbor discovery process (NDP), being the first step for communications between nodes, has a significant impact on the performance of communications and the reliability of networks. In RFC 7668 [6], the neighbor discovery mechanism for 6 LoBLE is declared as a simple version of the protocol used in IPv6 over Low-Power Wireless Personal Area Networks (6 LoWPAN), which enables IPv6 technology over IEEE 802.15.4 PHY/MAC. The reason is that the BLE star topology simplified the address registration process, without considering the routers in mesh networks. To enable an IPv6 mesh over BLE links, [PERSON] et al. proposed a new draft standard [8], that specified mechanisms to establish the IPv6 mesh over BLE links using the Internet Protocol Support Profile (IPSP). The standard draft provides the guidelines of neighbor discovery and stateless address auto-configuration mechanism according to RFC 7668 [6] and RFC 6775 [9], including the behavior of 6 lowpan nodes, routers and border nodes. However, the details of how to realize the neighbor discovery process based on BLE 5.0 is not mentioned in the draft manuscript. Similarly, the 6 LoBLE technology also attracted attention in academia, however, most of the state-of-the-art research on the 6 LoBLE technology focused on the star-topology BLE networks. [PERSON] et al. [3] proposed networking solutions for connecting BLE devices to the Internet, and evaluated the performance of the IP-based BLE communications between BLE devices and the Internet. However, a simplified version of 6 LoWPAN ND was used for the 6 LoBLE neighbor discovery due to the absence of 6 LoWPAN routers. In [10], IPv6 transmission over BLE networks was implemented based on BlueZ.