Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
PATH OPTIMIZED MULTI-HOP NETWORK
Document Type and Number:
WIPO Patent Application WO/2017/222449
Kind Code:
A1
Abstract:
The present disclosure relates to methods and arrangements in a short-range personal area network and in particular to methods and arrangements for joining network nodes in a multi- hop, mesh network configuration by providing network information to the network nodes. When performed in a provisioner node of a short-range, multi-hop wireless personal area network, WPAN, the method comprises discovering (S30) one or more un-provisioned device nodes; for one or more pre-selected discovery nodes determining (S34) a link cost associated with a radio link between each discovery node and respective device nodes; and provisioning (S37) the one or more un-provisioned device nodes from the discovery node involving the lowest link cost among the determined link costs, thereby establishing a routing path for the device node to the network.

Inventors:
SHEN WEI (SE)
ZHANG JINGCHENG (SE)
Application Number:
PCT/SE2017/050647
Publication Date:
December 28, 2017
Filing Date:
June 16, 2017
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ERICSSON TELEFON AB L M (PUBL) (SE)
International Classes:
H04L41/0806; H04W84/18
Foreign References:
US20080043637A12008-02-21
US20140018002A12014-01-16
US20160094398A12016-03-31
US20090319644A12009-12-24
US20110182172A12011-07-28
US20150372875A12015-12-24
Attorney, Agent or Firm:
AYOUB, Nabil (SE)
Download PDF:
Claims:
CLAIMS

1. A method, performed in a provisioner node of a short-range, multi-hop wireless personal area network, WPAN, for establishing routing paths to respective device nodes joined to the network, the method comprising:

- discovering (S30) one or more un-provisioned device nodes;

- for one or more pre-selected discovery nodes, determining (S34) a link cost associated with a radio link between each discovery node and respective device nodes; and

- provisioning (S37) the one or more un-provisioned device nodes from the discovery node involving the lowest link cost among the determined link costs.

The method of claim 1, wherein the step of discovering (S30) one or more un-provisioned device nodes comprises:

- selecting (S31) one or more discovery nodes in the network;

- transmitting (S32) a provisioning scanning request to the selected one or more discovery nodes to initiate a device joining procedure, whereby the discovery nodes are requested to scan for neighboring un-provisioned device nodes within a radio link range of each of the selected discovery nodes; and

- receiving (S33) information indicative of the discovered device nodes from the one or more discovery nodes.

3. The method of claim 1 or 2, wherein the step of provisioning the one or more un- provisioned device nodes from discovery node involving lowest link cost among the determined link costs comprises:

- assigning (S35), for each discovered device node, the discovery node corresponding to the lowest link cost among the determined link costs as a provisioning agent node; and

concluding (S36) provisioning of the discovered device nodes through the assigned provisioning agent node.

4. The method of claim 3, further comprising repeating the step of selecting (S31) one or more discovery nodes in the network, wherein the network comprises the one or more provisioned device nodes. 5. The method of any of claims 1 to 4, further comprising creating (S39) a routing path for the provisioned device node.

6. The method of claim 5, wherein the routing path comprises the provisioning agent node or the discovery node and the provisioned device nodes joined in the network along a path from the provisioner to the selected provisioning agent node nodes.

7. The method of any of claims 5 or 6, further comprising transmitting messages to each provisioning agent node or discover node to update a routing table to represent the routing path.

8. The method of any of claims 2-7, wherein selecting (S31) one or more discovery nodes comprises selecting the provisioner node.

9. The method of any of claims 2-7, wherein selecting (S31) one or more discovery nodes comprises selecting one or more provisioned device nodes.

10. The method of any of claim 1-9, wherein discovery nodes are selected based on network topology height, and wherein the provisioner node has a lowest network topology height, and wherein provisioned device nodes joined to the network, has a network topology height corresponding to the number of radio links from the provisioner node to the provisioned device node.

11. The method of claim 10, wherein selecting (S31) one or more discovery nodes comprises selecting one or more provisioned nodes having a largest height.

12. The method of claim 10, wherein selecting of new discovery nodes among the provisioned device nodes comprises selecting device nodes having a higher topology height than previously selected discovery nodes. 13. The method of any of the preceding claims, wherein the link cost is measured by a radio link quality metric.

14. The method of any of the preceding claims, wherein the link cost represents load balance between radio links.

15. The method of any of claims 3-14, wherein the step of concluding (S36) provisioning of the device nodes comprises:

establishing (S36a) provisioning connections with the device nodes through the assigned provisioning agent node; and

delivering (S36b) provisioning data to the device nodes through the assigned provision agent node.

16. The method of any of the preceding claims, further comprising:

selecting (S38) a provisioned device nodes having a lowest link cost among the determined link costs to a neighboring provisioned device node as a router along a routing path between the provisioner node and a neighboring provisioned device node.

17. The method of any of the preceding claims, wherein a routing path between the provisioner node and a provisioned device node is configured to include one or more radio links selected based on the radio link providing the lowest link cost between two neighboring provisioned device nodes.

18. A computer readable storage medium, having stored thereon a computer program which, when executed in a provisioner node, causes the provisioner node to execute the methods according to any of claims 1-17.

19. A provisioner node (50) configured for establishing routing paths to respective device nodes joined to a short-range, multi-hop wireless personal area network, WPAN, the provisioner node comprising:

radio circuitry (51) arranged for transmission and reception of radio signals;

- processing circuitry (52) configured to cause the provisioner node to:

• discover one or more un-provisioned device nodes;

• determine a link cost associated with radio link between each discovery node and respective device nodes;

• provision the one or more un-provisioned device nodes from discovery node involving lowest link cost among the determined link costs.

20. A method, performed in a provisioned device node joined to a short-range, multi-hop wireless personal area network, WPAN, for establishing routing paths to a provisioner node, the method comprising:

- discovering (S40) one or more un-provisioned device nodes; and

establishing (S45) a link from the provisioner node to the one or more un- provisioned device nodes.

21. The method of claim 20, wherein the step of discovering (S40) one or more un-provisioned device nodes comprises:

receiving (S41) a provisioning scanning request to scan for un-provisioned device nodes within a radio link range of the provisioned device node;

transmitting (S42) information on discovered device nodes and information related to link cost associated with the radio link.

22. The method of claim 20 or 21, wherein establishing (S45) the link from the provisioner node to the one or more device node comprises:

receiving (S43) an assignment as provisioning agent node for at least one discovered device nodes; and

- mediating (S44) provisioning data from the provisioner node to the at least one discovered device node.

23. The method of any of claims 20-22, further comprising:

creating (S46) one or more forwarding paths to the respective device nodes.

24. A computer readable storage medium, having stored thereon a computer program which, when executed in a provisioned device node, causes the device node to execute the methods according to any of claims 20-23.

25. A provisioned device node (60) joined to a short-range, multi-hop wireless personal area network, WPAN, and configured for establishing routing paths to a provisioner node, the provisioned device node comprising:

radio circuitry (61) arranged for transmission and reception of radio signals;

processing circuitry (62) configured to cause the provisioned device node to:

• discover one or more un-provisioned device nodes; and

• establish a link from the provisioner node to the one or more un- provisioned device nodes.

Description:
PATH OPTIMIZED MULTI-HOP NETWORK TECHNICAL FIELD

The present disclosure relates to methods and arrangements in a short-range personal area network and in particular to methods and arrangements for joining network nodes in a multi- hop, mesh network configuration by providing network information to the network nodes.

BACKGROUND

Emerging radio access technologies, e.g., for Internet of Things, loT, are being developed to address the ever emerging market needs and use cases. Such emerging radio technologies include short-range radio technologies, such as Bluetooth Low Energy, BLE, Bluetooth Smart, Zigbee, RFID and WirelessHart; technologies developed for use in short-range wireless personal area networks, WPANs. Such short-range personal area networks are aimed at novel applications involving devices with low power consumption in, e.g., healthcare, fitness, security, and home automation industries. Low power wireless communication is a key feature for loT, where communication will be required from devices powered by small batteries expected to have a long life-time. In many instances, the short-range WPAN will be used to connect groups of small devices to the Internet over an external network such as a cellular network or a Wi-Fi network.

The short-range WPAN, may include a large number of devices that are interconnected in a network, e.g., a tree network, a star network or a proximity based multi-hop mesh network configuration. In general, a wireless multi-hop, mesh network is a network built on a number of fixed or mobile nodes that provide a robust, multi-hop communication. The multi-hop, mesh network comprises a coordinator node assigned to handle provisioning for the short- range WPAN, i.e., to set up the network links between network nodes, assign relevant parameters to the network nodes and ensure basic maintenance of the network. The coordinator node, also known as provisioner, may also provide the gateway functionality to the external network.

Provisioning is a process through which network devices are provided with information necessary to join a specific network, e.g., a multi-hop or mesh network. Provisioning may be used when joining one device as a node of an existing mesh network, but also when joining a plurality of devices to set-up the network. A provisioning protocol enables the interoperability between a new device, ND, i.e., an un-provisioned device node, and a provisioner, PR, and between a new device and an external network. Provisioning a device multi-hops away from a provisioner is an emerging technology in the field of a mesh networks. Once a new device is being provisioned by a provisioner which is multi-hops away, there will be an intermediary device, known as provisioning agent, PA, that communicates directly with the new device during the provisioning procedure. Provisioning agents are assigned by the PR during the provisioning procedure, but following the conclusion of the provisioning procedure the assigned role as provisioning agent is outdated.

In the following disclosure, the terminology of provisioner, PR, provisioning agent, PA, and provisioned device or new device, ND, will be used. However, short-range WPAN multi-hop procedures presented with different terminology, but comprising similar operations, are of course also within the scope of the present disclosure. Multi-hop provisioning is a typical use case which requires rapid transfer of a relatively large amount of data and message transactions between PR, PAs and NDs. There are existing multi- hop provisioning technologies and communication protocols, using e.g., a flooding like protocol, or a regular routing protocol. Given a defined throughput of a node, the provisioning protocol plays an important role to determine the time needed for a provisioner of a network to provision a certain number of new devices, NDs. Time is considered a key factor when setting up new networks or joining new devices to a network, not the least from a user perspective.

Present day technologies and protocols have a draw-back in that the procedure for establishing the multi-hop network requires user patience in that time periods from hours to days may be required when setting up large multi-hop networks. With a constrained message size, e.g., 16 octets for the maximum network-layer payload, most of the messages during each transaction have to segmented and reassembled, which, in turn, increases the number of the transactions due to the overhead of the message format.

Routing protocols apply to all of the nodes which have already joined in the network, which is not the case during the provisioning procedure. Moreover, the existing routing protocols require high memory consumption for storing the routing table and traffic overhead for the establishing the routes. Therefore, these protocols are not suitable for the multi-hop provisioning use case.

While the regular routing protocol is based on storing routing tables in the provisioner, the flooding like protocol approach does not require any routing control messages to establish or maintenance of routing tables defining the routes from the PR to different PAs. However, this approach limits the number of packets that can be transmitted per second by routers (also called relays) in the whole network. The reason is every packet has to be forwarded by all of the routers in the whole network within the Time-To-Live, TTL range. During the provisioning procedure, each device needs to be provisioned individually, for example, the device needs to be authenticated individually, and device related key needs to be distributed per device. If a flooding-like network protocol is utilized, the provisioning could take very long time to complete when a lot of devices need to be provisioned at once.

Consequently, existing technologies and protocols are mainly suitable for adding one or a few devices to an existing network. When introducing a plurality of devices to an existing multi- hop network, or when setting-up a multi-hop, too much time will be needed for network establishment in order for any of these existing techniques to be attractive.

SUMMARY

An object of the present disclosure is to provide methods which seek to mitigate, alleviate, or eliminate one or more of the above-identified deficiencies in the art and to provide improved multi-hop provisioning and configuration in a short-range wireless personal area network.

This object is obtained by a method, performed in a provisioner node of a short-range, multi- hop wireless personal area network, WPAN, for establishing routing paths to respective device nodes joined to the network. The method comprises discovering one or more un-provisioned device nodes and, for one or more pre-selected discovery nodes, determining a link cost associated with a radio link between each discovery node and respective device nodes. The method performed in the provisioner node further comprises provisioning the one or more un-provisioned device nodes from the discovery node involving the lowest link cost among the determined link costs. The disclosed method reduces prior art problems of high memory consumption and maintenance requirements for storing routing tables and reduces lengthy provisioning times when there is a need to provision many devices. More specifically, the proposed routing path establishing method creates route that allow a more efficient concurrent provisioning of new devices in that provisioning time can be largely reduced at the same time as the complexity of the route creation is reduces. The disclosed method also implies reduced message overhead.

According to aspects of the disclosure, the discovering of the one or more un-provisioned device nodes comprises selecting one or more discovery nodes and transmitting a provisioning scanning request to selected one or more discovery nodes to initiate a device joining procedure, whereby the discovery nodes are requested to scan for neighboring un- provisioned device nodes within a radio link range of each of the selected discovery nodes. The method further comprises, receiving, in the provisioner node, information on discovered device nodes from the one or more discovery nodes.

According to aspects of the disclosure, provisioning the one or more un-provisioned device nodes from discovery nodes involving lowest link cost comprises assigning, for each discovered device node, the discovery node corresponding to the lowest link cost as provisioning agent node. The provisioning is concluded through the assigned provisioning agent node.

According to aspects of the disclosure, the device joining procedure is repeated following selection of new discovery nodes among the provisioned device nodes. The disclosed method allows a more efficient concurrent device provisioning than previous provisioning approaches, both when considering time spent on provisioning nodes in the network and amount of data/message transactions required. Simulations are expected to disclose significant time savings, more than halving provisioning time for large multi-hop network configurations. Given a packet sending interval of 20 ms, initial simulation result is that the present approach is 10 to 50 times faster than a flooding approach.

The above mentioned object is also obtained by a method, performed in a provisioner node of a short-range, multi-hop wireless personal area network, WPAN, for establishing routing paths to respective device nodes joined to the network. The method comprises selecting one or more discovery nodes and transmitting a provisioning scanning request to selected one or more discovery nodes to initiate a device joining procedure, whereby the discovery nodes are requested to scan for neighboring new device nodes withi n a radio link range of each of the selected discovery nodes. The method further comprises, receiving, in the provisioner node, information on discovered device nodes from the one or more discovery nodes. A link cost associated with the radio link between each discovery node and respective device nodes is determined, whereupon, for each discovered device node, the discovery node corresponding to the lowest link cost is assigned as provisioning agent node. The provisioning is concluded through the assigned provisioning agent node. The device joining procedure is repeated following selection of new discovery nodes among the provisioned device nodes. The disclosed method provides for a more efficient concurrent device provisioning than previous provisioning approaches, both when considering time spent on provisioning nodes in the network and amount of data/message transactions required.

According to aspects of the disclosure, the method further comprises the step of creating a routing path for the provisioned device node. The routing path comprises, according to aspects of the disclosure, the provisioning agent node and the provisioned device nodes joined in the network along a path from the provisioner node to the selected provisioning agent node. The proposed approach reduces the complexity of the route creation method. Compared with existing routing algorithms, this method requires less memory consumption and reduced message overhead. According to aspects of the disclosure, messages are transmitted to each provisioning agent node to update a routing table to represent the routing path. Hence, the present method does not require maintenance of routing tables in intermediate nodes other than intermediate nodes having a role as a provisioning agent node.

According to aspects of the disclosure, the selecting of one or more discovery nodes comprises selecting the provisioner node.

According to aspects of the disclosure, the selecting of one or more discovery nodes comprises selecting one or more provisioned device nodes.

According to aspects of the disclosure, discovery nodes are selected based on network topology height, and wherein the provisioner node has a lowest network topology height, and wherein provisioned device nodes joined to the network has a network topology height corresponding to the number of radio links from the provisioner node to the device node.

According to aspects of the disclosure, the selecting of one or more discovery nodes comprises selecting one or more provisioned nodes having a largest height. According to aspects of the disclosure, the selecting of new discovery nodes among the provisioned device nodes comprises selecting device nodes having a higher topology height than previously selected discovery nodes.

According to aspects of the disclosure, the link cost represents radio link quality.

According to aspects of the disclosure, the link cost represents load balance between radio links.

According to aspects of the disclosure, the concluding provisioning of the device nodes comprises to establish provisioning connections with the device nodes through the assigned provisioning agent node, and delivering provisioning data to the device nodes through the assigned provision agent node. According to aspects of the disclosure, the method further comprises the selecting of a provisioned device node having a lowest link cost to a neighboring provisioned device node as a router along a routing path between the provisioner node and a neighboring provisioned device node.

According to aspects of the disclosure, a routing path between the provisioner node and a provisioned device node is configured to include one or more radio links selected based on the radio link providing the lowest link cost between two neighboring provisioned device nodes.

The object of the present disclosure is also obtained through a computer readable storage medium, having stored thereon a computer program which, when executed in a provisioner node, causes the provisioner node to execute any of the above disclosed method aspects. The object of the present disclosure is also obtained through a provisioner node configured for establishing routing paths to respective device nodes joined to a short-range, multi-hop wireless personal area network, WPAN. The provisioner node comprises radio circuitry arranged for transmission and reception of radio signals and processing circuitry configured to cause the provisioner node to execute any of the above disclosed method aspects, i.e., to discover one or more un-provisioned device nodes; to determine, for one or more preselected discovery nodes, a link cost associated with a radio link between respective device nodes and a discovery node, and to provision the one or more un-provisioned device nodes from discovery node involving lowest link cost.

According to aspects of the disclosure, the processing circuitry is configured to select one or more discovery nodes; to transmit, using the radio circuitry, a provisioning scanning request to selected one or more discovery nodes to initiate a device joini ng procedure, whereby the discovery nodes are requested to scan for neighboring un-provisioned device nodes within a radio link range of each of the selected discovery nodes; to receive information on discovered device node from the discovery nodes; to determine a link cost associated with the radio link between each discovery node and respective device nodes; to assign, for each discovered device node, the discovery node corresponding to the lowest link cost as provisioning agent node; to conclude provisioning of the device nodes through the assigned provisioning agent node; and to select new discovery nodes among the provisioned device nodes and repeat the device joining procedure.

The provisioner node and the computer program have the corresponding advantages of those described above in relation to the method performed in a provisioner node.

The object of the disclosure is also obtained by a method, performed in a device node joined to a short-range, multi-hop wireless personal area network, WPAN, for establishing routing paths to a provisioner node. The method comprises discovering one or more un-provisioned device nodes and establishing a link from the provisioner node to the one or more device nodes.

According to aspects of the disclosure, the method performed in the provisioned device node comprises receiving a provisioning scanning request to scan for un-provisioned device nodes within a radio link range of the device node. The provisioned device node, transmits information on discovered device nodes and information related to link cost associated with the radio link. In response to receiving an assignment as provisioning agent node for at least one discovered device nodes, the provisioned device node mediates provisioning data from the provisioner node to the at least one discovered device node. The above mentioned object is also obtained by a method, performed in a provisioned device node joined to a short-range, multi-hop wireless personal area network, WPAN, for establishing routing paths to a provisioner node. The method comprises receiving a provisioning scanning request to scan for new device nodes within a radio link range of the provisioned device node. The provisioned device nodes, transmits information on discovered device nodes and information related to link cost associated with the radio link. In response to receiving an assignment as provisioning agent node for at least one discovered device nodes, the provisioned device node mediates provisioning data from the provisioner node to the at least one discovered device node. The object of the present disclosure is also obtained through a computer readable storage medium, having stored thereon a computer program which, when executed in a provisioned device node, causes the provisioned device node to execute the above disclosed methods.

The object of the present disclosure is also obtained through a provisioned device node joined to a short-range, multi-hop wireless personal area network, WPAN, and configured for establishing routing paths to a provisioner node. The provisioned device node comprises radio circuitry arranged for transmission and reception of radio signals and processing circuitry configured to cause the provisioned device node to perform the above disclosed method, i.e., to discover one or more un-provisioned device nodes and to establish a link from the provisioner node to the one or more device nodes. The method performed in a provisioned device node, the provisioned device node and the computer program has the corresponding advantages of those described above in relation to the method performed in a provisioner node.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing will be apparent from the following more particular description of the example embodiments, as illustrated in the accompanying drawings in which like reference characters refer to the same parts throughout the different views. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating the example embodiments.

Figure 1 discloses a multi-hop network topology;

Figure 2 discloses an example procedure for multi-hop provisioning; Figure 3

a. is a flowchart illustrating example method steps performed in a provisioner node; b. is a flowchart detailing example method steps performed in the provisioner node; Figure 4 is a flowchart illustrating example method steps performed in a provisioned node;

Figure 5

a. illustrates an example node configuration for a provisioner node;

b. illustrates an example node configuration for a provisioner node;

Figure 6

a. illustrates an example node configuration for a provisioned node;

b. illustrates an example node configuration for a provisioned node;

Figure 7 is a flowchart illustrating example method steps performed in the multi-hop network establishing;

Figure 8 is a flowchart illustrating example method steps performed in the multi-hop network establishing;

Figure 9

a. represents a first portion of a flowchart illustrating example method steps performed in the multi-hop network establishing;

b. represents a second portion of a flowchart illustrating example method steps performed in the multi-hop network establishing;

c. represents a third portion of a flowchart illustrating example method steps performed in the multi-hop network establishing.

DETAILED DESCRIPTION Aspects of the present disclosure will be described more fully hereinafter with reference to the accompanying drawings. The methods and arrangements disclosed herein can, however, be realized in many different forms and should not be construed as being limited to the aspects set forth herein. Like numbers in the drawings refer to like elements throughout.

The terminology used herein is for the purpose of describing particular aspects of the disclosure only, and is not intended to limit the invention. As used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise.

For better understanding of the proposed technique a short recap of the general multi-hop procedure will first be provided. The multi-hop provisioning procedure include communications between a provisioner node, PR and device nodes in the network over the secured medium and the communications between provisioning agent nodes, PAs, and new device nodes, NDs, over an unsecure medium. During that procedure, NDs become provisioned device nodes in the network after being provisioned and may start to act as provisioning agents, in router roles, to help other new device nodes to be provisioned.

Figure 1 discloses a network scenario for a short-range, multi-hop wireless personal area network, WPAN, e.g., employing the radio technologies of Bluetooth Low Energy, Bluetooth Smart or Zigbee. The following disclosure will be directed to the use of Bluetooth Low Energy, BLE, but it should be appreciated that the technology is equally applicable also to other technologies used for short-range, multi-hop wireless personal area networks. The disclosure of Figure 1 represents a simplified scenario, but it will be appreciated that the discussion based on this simplified scenario is equally applicable to networks comprising many more device nodes.

Figure 2 discloses a typical procedure for multi-hop provisioning comprises a sequence of provisioning steps: provisioning scanning S21, provisioning connection establishment S22, provisioning invitation S23, provisioning public key exchange S24, provisioning authentication S25, provisioning data delivery S26, and provisioning connection close S27.

In prior art provisioning, the features represented in Figure 2 have been implemented as disclosed below. Provisioning scanning S21: one or multiple PA(s) candidates are requested/selected by the PR to scan NDs within the direct radio range of these PA candidates.

Provisioning connection establishment S22: each selected PA is asked by the PR to perform a handshake with a ND selected by PR. Provisioning invitation S23: the handshake messages with the invitation and capability information between PR and the ND are exchanged via the assigned PA.

Provisioning public key exchange S24: the public keys of the PA and the ND are exchanged through PA based on a public key exchange algorithm, for example, the Elliptic Curve Diffie Hellman (ECDH) algorithm.

Provisioning authentication S25: In order to guarantee the device that under provisioning is the desired device to be provisioned, the messages used to authenticate PA and ND are exchanged through the PA.

Provisioning data delivery S26: the provisioning data is delivered from PA to ND through PA. Provisioning connection close S27: PA is requested by the PR to close the link from the ND to finish the provisioning procedure. The new device nodes are now joined as device nodes in the network.

Turning back to the network of Figure 1, a provisioner node, PR, 000, functions as a coordinating node assigned to handle provisioning for the short-range WPAN, i.e., to set up the network links between network nodes, assign relevant parameters to the network nodes and ensure basic maintenance of the network. The provisioner node may also provide the gateway to an external network.

When initiating the network, there is only one PR in the network and a plurality of un- provisioned device nodes, NDs, 101-106, 201-206 and 301-305 waiting to be joined to the network, i.e., to be provisioned to join the network. The provisioning procedure comprises provisioning a first set of un-provisioned nodes, e.g., new devices ND:s, from the provisioner and repeating the provisioning procedure using provisioned nodes as provisioning agents. The provisioning agents are assigned by the PR during the provisioning procedure. Thus, the multi-hop provisioning procedure includes communications between PR and provisioned nodes in the network over a secured medium and communications between assigned PAs and the new devices (NDs) over an unsecure medium. A new device multi -hops away from the provisioner, will communicate with the provisioning agent, PA. The multi-hop provisioning is a typical use case which requires rapid transfer of a relatively large amount of data and message transactions. While there is user expectancy for fast establishment of a BLE network, this has been difficult to accommodate in more complicated network structures, e.g., networks joining hundreds or even thousands of device nodes. Given a defined throughput of a node, the network-layer protocol used for provisioning plays an important role to determine the time needed for provisioner nodes to provision a certain number of new devices (NDs). Two types of network protocols have been utilized for the provisioning procedure: the flooding like protocol and the routing protocol. However, both these protocols have drawbacks when establishing multi-hop networks comprising a plurality of nodes.

As mentioned, the multi-hop provisioning procedure includes communications between the PR and nodes in the network over the secured medium and the communications between PAs and the new devices (NDs) over an unsecure medium. During that procedure, NDs become nodes after being provisioned and may start to act in router roles, i.e., as PA:s, to help other NDs to be provisioned. The existing routing protocols apply to all of the nodes which have already joined in the network. Besides, the existing routing protocols require high memory consumption for storing the routing table and traffic overhead for the establishing the routes. Therefore, these protocols are not suitable for the multi -hop provisioning use case.

A flooding like approach does not require any routing control messages to establish and maintain routes from PR to different PAs. It does not require storing a routing table for the routers either. However, this approach limits the number of packets that can be transmitted per second by routers (or called relays) in the whole network. The reason is every packet has to be forwarded by all of the routers in the whole network within the Time-To-Live (TTL) range. During the provisioning procedure, each device needs to be provisioned individually, for example, the device needs to be authenticated individually, and device related key needs to be distributed per device. If a flooding-like network protocol is utilized, the provisioning could take very long time to complete when a lot of devices need to be provisioned at once.

The multi-hop provisioning is a typical use case which requires rapid tra nsfer of a relatively large amount of message transactions between PR and PAs. If a communication protocol, e.g., BLE mesh protocol, has a constrained message size, e.g., 16 octets for the maximum network-layer payload, most of the messages during each tra nsaction have to perform the segmentation and reassembly, which, in turn, increases the number of the message transactions due to the overhead of the message format.

Consequently, existing technologies and protocols are mainly suitable for adding one or a few devices to an existing network or setting-up small multi-hop networks. When introducing a plurality of devices to an existing multi-hop network, or when setting-up a multi-hop, too much time will be needed for network establishment in order for any of these existing techniques to be attractive.

The present disclosure provides solutions for improved multi-hop network configuration in a short-range wireless personal area network; in particular a path optimization for multi-hop provisioning in a short-range, multi-hop wireless personal area network, WPAN, e.g., a BLE mesh network, is described.

Firstly, a path optimization approach that integrates into provisioning neighbor discovery and provisioning link establishment is proposed.

Secondly, a generic route creation using Ad-hoc On-Demand Distance Vector, AODV like routing algorithm is proposed for a sporadic device provisioning use case.

Finally, the packet space is conserved by removing unnecessary security mechanism so that the total number of over-the-air message transaction is reduced.

The routing selection procedure is integrated with the above discussed multi-hop provisioning procedure and is simplified. The neighbor discovery for routing selection is performed in the first stage of the provisioning, i.e., the provisioning scanning. The routing selection is carried out in the second stage of the provisioning procedure, i.e., the provisioning connection establishment. The established routes can be removed after NDs joining in the network.

Figure 3a discloses a method to be performed in a provisioner node of a short-range, multi- hop wireless personal area network, WPAN, for establishing routing paths to respective device nodes joined to the network. In its most general context, the method comprises discovery S30 of one or more un-provisioned device nodes, i.e., new devices that have been introduced in a coverage area of the network but that are not yet part of the network, i.e., capable for communication over a secured medium . Following discovery of the one or more un- provisioned device nodes, the method comprises determination S34, for one or more preselected discovery nodes, of a link cost associated with a radio link between each discovery node, e.g., a previously provisioned node in the network, and respective un-provisioned device nodes. Following determination of the link cost associated with a radio link between the pairs of discovery nodes and device nodes, a routing path to the device node is established by provisioning S37 the device node from the discovery node involving the lowest link cost, offering communication over a secured medium.

Turning to Figure 3b, further details representing optional aspects of the method disclosed in Figure 3a are presented. The method is performed in a provisioner node of a short-range, multi-hop wireless personal area network, WPAN, for establishing routing paths to respective device nodes joined to the network. According to aspects of the disclosure, the discovering S30 of one or more un-provisioned device nodes comprises selecting S31 one or more discovery nodes and transmitting S32 a provisioning scanning request to selected one or more discovery nodes to initiate a device joining procedure, whereby the discovery nodes are requested to scan for neighboring un-provisioned device nodes, e.g., unlinked nodes or new devices, ND:s, within a radio link range of each of the selected discovery nodes. Turning to Figures 7 to 9, more details are revealed on the selection of discovery nodes, wherein discovery nodes are selected based on network topology height, and wherein the provisioner node has a lowest network topology height, and wherein provisioned device nodes joined to the network, has a network topology height corresponding to the number of radio links from the provisioner node to the provisioned device node. Thus, the provisioner node, having the coordinator role, is assigned a network height k=0, while further network nodes joined to the network has a network height k>0. The network height could with a simplified expression be considered as a number of hops required to reach a provisioned device node from the provisioner node. A device that is capable of direct communication with the provisioner node has a height 1. Since height is based on radio vicinity, a threshold may be used to define a neighbor, e.g., by measuring receiver signal strength and comparing this to a Receiver Signal Strength Indicator, RSSI. When new device nodes are joined to an existing multi-hop network, there will be a number of provisioned device nodes having a network height k>0. The process of joining new devices is initiated by selecting one or more discovery nodes having the largest network height. These selected discovery nodes will then be invited to perform provisioning scanning by the provisioner node that transmits a scanning request to the discovery nodes to scan for new device nodes within direct radio range of these discovery nodes.

Turning back to the disclosure of Figure 3 b, the provisioner node receives S33 information on discovered device nodes from the one or more discovery nodes in response to the scanning request. This information include identifiers of the found new device nodes; i.e., the discovered device nodes. The provisioner node determines S34 a link cost associated with the radio link between each discovery node and respective discovered device nodes, e.g., by collecting the link cost from the intermediate discovery nodes when these nodes have a capability of calculating link cost, or by using information received from the intermediate discovery nodes to perform a link cost determination process within the provisioner node. The link cost can be perceived as the easiness for a message being transmitted from a source to a destination. It can be an overall consideration of robustness, latency and efficiency. According to aspects of the disclosure, link cost is determined as a function of link quality and/or load balance, e.g., router load balance, and may for example be based on Inter Symbol Interference, 1 1. The present disclosure is not limited to any specific technology for the determining of link quality and/or load balance during link cost determination. According to aspects of the disclosure, it is mainly essential to determine that the link is good enough. The link only needs to work and work fast enough. Furthermore, link cost may be considered for the specific radio link only, without considering the link cost of the aggregated radio link from provisioner node to network device. Following a determining of link cost, it is possible to select a discovery node corresponding to the lowest link cost for the radio path to new device node. The method comprises assigning, for each device node, the discovery node corresponding to the lowest link cost as provisioning agent node. Turning back to Figures 7 to 9, the scenario where the provisioner node is an initial discovery nodes is specifically illustrated, i.e., wherein the selecting of one or more discovery nodes comprises selecting the provisioner node.

For this instance, the provisioner node will have a role of provisioner node/provisioning agent node to new device nodes that will have a height k=l, when joined to the network. For new device nodes joined to the network, at a height k=2 from the provisioner node, nodes of height k=l will be assigned as provisioning agent nodes. Considering the scenario disclosed in Figure 1 this implies the following steps when joining new device nodes to a network comprising only the provisioner node:

Scenario 1: there is only one PR (000) in the network and many NDs (101-106, 201-206, 301- 305) are pending to be provisioned by the PR and join in the network. Step 0:

- PR has a height, h=0. In the initialization stage, the largest height of the provisioning topology tree, k = 0; PR has the number of NDs pending to join in the network.

- PR scans and discovers NDs (101 - 106) within its direct radio range. - PR collects the link cost of each link between PR and a ND (101-106) and performs the provisioning link establishment with the NDs individually.

- PR provisions 101 - 106 one by one.

- The largest height, k, is increased by 1 if there are NDs that need to be provisioned. Step 1:

- PR requests nodes 101-106 to scan and discover NDs (201-206). Node 101 found 201 and 206; Node 102 found 201 and 202; node 103 found 202 and 203; node 104 found 203 and 204; node 105 found 204 and 205; node 106 found 205 and 206. - PR collects the link cost of each link between a node (101-106) and its found ND

(201-206).

- PR selects the node with the least link cost for each ND as the PA of the ND. The link cost may be a function of link quality and load balance. Node 102 is selected as PA for 201 and 202; node 104 is selected as PA for 203 and 204; node 106 is selected as PA for 205 and 206.

- PR performs the provisioning connection establishment with each ND via its PA.

- PR provisions 201 and 202 via 102, 203 and 204 via 104, 205 and 206 via 106.

- The largest height, k, is increased by 1 if there are NDs pending in the network.

Step 2:

PR requests nodes 201-206 to scan and discover NDs (301-305). Node 201 found 301 and 302; node 202 found 303 and 304; node 203 found 304; node 206 found 301. PR collects the link cost of each link between a node (201, 202, 203, 206) and its found ND (301-304).

PR selects the node with the least link cost for each ND as the PA of the ND. The link cost may be a function of link quality and load balance. Node 201 is selected as PA for 301 and 302; node 202 is selected as PA for 303; node 203 is selected as

PA for 304.

PR performs the provisioning connection establishment with each ND via its PA. - PR provisions 301 and 302 via 201, 303 via 202, 304 via 203. All of NDs have been provisioned and joined in the network.

As illustrated above, the process is iterative and once provisioning has been concluded for new device nodes on a first height k=l, the process is repeated for new device nodes joined at a second height k=2. Turning back to Figure 3b, the provisioner node provisions S37 the one or more un-provisioned device nodes from the discovery node involving the lowest link cost. According to aspects of the disclosure, this provisioning comprises the steps of assigning S35, for each discovered device node, the discovery node corresponding to the lowest link cost as provisioning agent node and concluding provisioning S36 of the discovered device nodes to the multi-hop wireless personal area network, WPAN, through the assigned provisioning agent node. The device joining procedure may be repeated starting with the step of discovering S30 one or more un-provisioned nodes, wherein the recently provisioned nodes may be selected S31 as new discovery nodes and repeating the device joining procedure with these discovery nodes. As mentioned the provisioning procedure comprises a sequence of provisioning steps. According to aspects of the disclosure, steps performed during the concluding of the provisioning S36 comprises establishing S36a provisioning connections with the device nodes through the assigned provisioning agent node and delivering S36b provisioning data to the device nodes through the assigned provision agent node. The procedure is repeated until the information received on discovered nodes in step S33, reveals that all device have been joined to the network. This information could be in the form of not receiving a response to the provisioning scanning request. The link by link approach presented above enables early provisioning of new devices as soon as they are joined to the network.

When delivering the large-size provisioning data, considerations on how to conserve packet space are also relevant. When segmentation and reassembly, SAR, applies for delivering large-size data, e.g., a message during the multi-hop provisioning which cannot fit into a single network payload, a procedure for SAR is proposed for conserving the packet space: a. Application key based encryption and authentication is performed on the application data that could not fit into a single network-layer payload. b. The encrypted data together with the resulted Message Integrity Code (MIC) is, then, segmented into segments. c. Network key based encryption and authentication is performed on each segment which is directed together with the network layer MIC to the lower layer for sending out over the air.

In another implementation embodiment, each message between PR and PA during the multi-hop provisioning procedure uses an indicator to indicate that the message is not encrypted by a corresponding mesh encryption key. As a result, the provisioning message is not required to contain an associated message integrity code, MIC. By that, the packet space is further conserved. Moreover, sharing the mesh encryption key among all of the nodes in the network is not required during this procedure.

The proposed path optimization method creates routes that allow a more efficient concurrent ND provisioning than the flooding based provisioning approach. The provisioning time can be largely reduced. In a different scenario also within the scope of the present disclosure, some provisioned device nodes have already been joined to a network set up with one provisioner node. Turning back to Figure 1, this Scenario 1.1 would imply the following steps:

Step 0:

- PR has a height, h=0. In the initialization stage, the largest height of the provisioning topology tree, k = 0; PR has the number of NDs that need to be provisioned.

- PR scans and discovers NDs. No NDs have been found. Nodes 101-106 found by PR as PR's neighbors.

- PR collects the link cost of each link between PR and each neighbor node (101- 106).

- The largest height, k, is increased by 1 (since there are NDs pending in the network). Step 1:

- PR requests nodes 101-106 to scan and discover NDs (203, 205). Nodes 103 and 104 found 203; nodes 105 and 106 found 205.

- PR collects the link cost of each link between a node (103, 104, 105, 106) and their found NDs (203, 205).

- PR selects the node with the least link cost for each ND as the PA of the ND. The link cost may be a function of link quality and load balance. Node 104 is selected as PA for 203; node 106 is selected as PA for 205.

- PR performs the provisioning connection establishment with each ND via its PA. - PR provisions 203 via 104, and 205 via 106.

- The largest height, k, is increased by 1 (since there are NDs pending in the network).

Step 2:

- PR requests nodes 201-206 to scan and discover NDs (303). Node 202 found ND 303. o PR may also request 301, 302, 304 to scan a nd discover ND (303).

PR collects the link cost of each link between a node (202) and its found ND (303).

PR selects the node with the least link cost for each ND as the PA of the ND. The link cost may be a function of link quality and load balance. Node 202 is selected as PA for 303.

PR performs the provisioning connection establishment with each ND via its PA.

PR provisions 303 via 202.

All of NDs have been provisioned and joined in the network.

The present disclosure is of course also applicable to the scenario where there are more than one provisioner nodes, PRs in the network and many new device nodes, N Ds, are pending to be provisioned by the PR and join in the network. The presented approach allows a router to act as a provisioner agent node, PA, for multiple PRs; applying the above disclosed method in each provisioner node. A further scenario within the scope of the present disclosure is where one or more sporadic new device nodes, NDs, need to be provisioned by a provisioner, PR, to join in a network. Turning, once again, to the network of Figure 1, this scenario would imply the following:

Assume that 305 is the only ND to be provisioned. With reference to Figure 3, this would imply that the selecting of one or more discovery nodes comprises selecting one or more provisioned device nodes when initiating the provisioning procedure. The provisioned device nodes having the largest height as presented in Figure 1 are device nodes 301-304, but also nodes 204-206 having a maximum height in their respective radio links. During the scanning process, 204 and 304 reports to the PR that they have radio vicinity with 305. During this time, the PR has the privilege to choose any of them as the PA for ND 207. One possible selection metric is the number of hops, so that the device with lowest hops, i.e., 204 is chosen as the PA. To create the route between the PR and 305, the following processes are needed.

A route request message is sent from the PR through the whole network after the PR has sent a message that assigns a PA to a ND for provisioning. a) In one of the implementation embodiments, the route request and one type of the messages during provisioning link establishment could be merged into a single message.

b) In another implementation embodiment, only one single route request message is sent to establish the routes between PR and multiple PA(s). The route request message contains an indicator bit. The main functions of this indicator: firstly, to distinguish from a route establishment for normal operating messages transactions; secondly, the route originator address, i.e., the address of the PR, a nd the route destination address, i.e., the address of the PA, is stored in every relay that receives the route request. Once a message is received, the source address and destination address is checked against the address information retrieved from every incoming route request. If the SRC and DST of the received message are different from any received routing request, the message is flooded. If the SRC ad DST of the message is same as one of the received routing request but the relay does not belong to the created route, the message is discarded. If the relay belongs to the created route, the message that with the same SRC and DST address will be forwarded by the intermediate relay. A new route cancel message is defined and to be sent out to a PA when PR does not have any assignments for PA to provision any NDs nearby the PA, the routes can be canceled by time out.

As is apparent from the above disclosure, one of the advantages of the present disclosure is the integration of the routing selection procedure with the multi-hop provisioning procedure and how the routing selection procedure is simplified. The neighbor discovery for routing selection is performed in the first stage of the provisioning, i.e., the provisioning scanning. The routing selection is carried out in the second stage of the provisioning procedure, i.e., the provisioning connection establishment. The established routes can be removed after NDs joining in the network.

Accordingly, as disclosed in Figure 3b, the method may further comprises the step of creating S39 a routing path for the device node, wherein the routing path comprises the provisioning agent node and the provisioned device nodes joined in the network along a path from the provisioner to the selected provisioning agent node nodes. According to another aspect of the disclosure a provisioned device node having a lowest link cost to a neighboring provisioned device node is selected S38 as a router along a routing path between the provisioner node and a neighboring provisioned device node. Messages may be transmitted to each provisioning agent node to update a routing table to represent the routing path.

Figure 4 discloses a method to be performed in a provisioned device node, i.e., a device node joined to a short-range, multi-hop wireless personal area network, WPAN, for establishing routing paths to a provisioner node. In its most generic form, the method comprises discovering S40 one or more un-provisioned device nodes, i.e., by actively scanning for un- provisioned device nodes within a radio link range of the provisioned device node or as an incidental finding when performing operations dedicated to other purposes than scanning for new devices. According to aspects of the disclosure, the discovery method operating with active scanning comprises receiving S41 a provisioning scanning request to scan for un- provisioned device nodes within a radio link range of the provisioned device node, performing the scan and transmitting S42 information on discovered device nodes as well as information related to link cost associated with the radio link to a receiving discovery node. Turning to Figures 7 to 9, more details are revealed on operations performed in the discovery nodes. In the disclosure of Figures 7 to 9, the discovery nodes are presented as PAs. Thus, Figures 7 to 9 disclose the involvement of the PA:s in scanning for un-provisioned nodes, also known as new device nodes, and the collection of link cost, that may be performed in either the provisioner node or in the provisioned device node. As should be noted, Figures 7 to 9 disclose operations performed either by the provisioner node or by the provisioned device node in order to arrive at established routing paths to a provisioner node.

Turning back to Figure 4, the provisioned device node, i.e., having already been provisioned S45 to the mesh network, establishes a link from the provisioner node to the one or more discovered and un-provisioned device nodes performs provisioning S45 of discovered one or more device nodes to the mesh network. During the provisioning, the provisioned device node may optionally receive S43 an assignment as provisioning agent node for at least one discovered device nodes and may also optionally participate in the provisioning procedure by mediating S44 provisioning data from the provisioner node to the at least one discovered device node. According to aspects of the disclosure, the method also comprises the creating S46 one or more routing paths from the provisioner node to respective provisioned device nodes. The provisioned device node, assigned as a provisioning agent for one or more discovered device nodes, may receive messages from the provisioner node comprising routing tables that should be stored to set up the routing path. Thus, the proposed path optimization method creates routes that allow a more efficient concurrent provisioning of un-provisioned, new device nodes than the flooding based provisioning approach. The provisioning time can be largely reduced. The proposed approach also reduces the complexity of the route creation method. Compared with existing routing algorithms, this method requires less memory consumption and reduced message overhead. For example, it does not require intermediate node maintain routing table.

Figure 5a is an example node configuration of a provisioner node, which may incorporate some of the example embodiments discussed above. The provisioner node is configured for establishing routing paths to respective device nodes joined to a short-range, multi-hop wireless personal area network, WPAN. As shown in Figure 5a, the provisioner node 50 comprises radio circuitry 51 arranged to transmit and receive radio signals. It should be appreciated that the radio circuitry 51 may be comprised as any number of transceiving, receiving, and/or transmitting units or circuitry. It should further be appreciated that the radio circuitry 51 may be in the form of any input/output communications port known in the art. The provisioner node may further comprises processing circuitry 52 arranged to control operation of the provisioner node. In particular, the processing circuitry 52 controls provisioning and routing path establishment to respective device nodes joined to a short- range, multi-hop wireless personal area network, WPAN, comprising the provisioner node. The processing circuitry 52 is arranged for discovering one or more un-provisioned device nodes and determining, for one or more pre-selected discovery nodes, a link cost associated with a radio link between each discovery node and respective device nodes. The processing circuitry 52 is further arranged for provisioning the one or more un-provisioned device nodes from discovery node involving lowest link cost among the determined link costs.

According to aspects of the disclosure, the processing circuitry is further arranged for selecting one or more discovery nodes and transmitting, using the radio circuitry, a provisioning scanning request to selected one or more discovery nodes to initiate a device joining procedure, whereby the discovery nodes are requested to scan for neighboring un- provisioned device nodes within a radio link range of each of the selected discovery nodes. The processing circuitry is further arranged for receiving information indicative of the discovered device node from the discovery nodes. According to other aspects, the processing circuitry is configured for assigning, for each discovered device node, the discovery node corresponding to the lowest link cost among the determined link costs as provisioning agent node. The processing circuitry is also configured to conclu de provisioning of the device node through the assigned provisioning agent node. New discovery nodes are selected among the provisioned device nodes, whereupon the processing circuitry is configured to repeat the device joining procedure.

According to aspects of the disclosure, the processing circuitry comprises a processor 52a and a memory 52b. The processor 52a may be any suitable type of computation unit or circuit, e.g. a microprocessor, digital signal processor, DSP, field programmable gate array, FPGA, or application specific integrated circuit, ASIC or any other form of circuitry. It should be appreciated that the processing circuitry need not be provided as a single unit but may be provided as any number of units or circuitry. The memory 52b may be configured to store received or transmitted data and/or executable program instructions. The memory 52b may be any suitable type of computer readable memory and may be of volatile and/or non-volatile type. While the actual transmission is of course executed by the above discussed radio circuitry 51, the processing circuitry 52 is configured to prepare for transmission using the short-range, wireless technology.

Figure 5b is an example node configuration of a provisioner node, which may incorporate some of the example embodiments discussed above. The provisioner node is configured for establishing routing paths to respective device nodes joined to a short-range, multi-hop wireless personal area network, WPAN . The provisioner node comprises a discovery module 521 configured for discovery of one or more un-provisioned device nodes and a link cost determination module 522 configured to determine, for one or more pre-selected discovery nodes, a link cost associated with a radio link between each discovery node and respective device nodes. The provisioner node also comprises a provisioning module 523 configured to provision the one or more un-provisioned device nodes from the discovery node involving the lowest link cost among the determined link costs.

Figure 6a is an example node configuration of a provisioned device node, i.e., a device node having been joined to a short-range, multi-hop wireless personal area network, WPAN, and configured for establishing routing paths to a provisioner node. As shown in Figure 6a, the provisioned device node 60 comprises radio circuitry 61 arranged to transmit and receive radio signals. It should be appreciated that the radio circuitry 61 may be comprised as any number of transceiving, receiving, and/or transmitting units or circuitry. It should further be appreciated that the radio circuitry 61 may be in the form of any input/output communications port known in the art. The provisioned device node further comprises processing circuitry 62 arranged to control operation of the device node. In particular, the processing circuitry 62 is arranged to control routing path establishing to a provisioner node. The processing circuitry 62 is arranged for discovering one or more un-provisioned device nodes and establishing a link from the provisioner node to the one or more un-provisioned device nodes. According to aspects of the disclosure, the processing circuitry is arranged for receiving a provisioning scanning request to scan for un-provisioned device nodes within a radio link range of the device node, to perform the scan and to transmit information on discovered device nodes and information related to link cost associated with the radio link to a receiving provisioner node. According to other aspects of the disclosure, the processing circuitry is arranged for receiving an assignment as provisioning agent node for at least one discovered device nodes and mediating provisioning data from the provisioner node to the at least one discovered device node. According to aspects of the disclosure, the processing circuitry comprises a processor 62a and a memory 62b. The processor 62a may be any suitable type of computation unit or circuit, e.g. a microprocessor, digital signal processor, DSP, field programmable gate array, FPGA, or application specific integrated circuit, ASIC or any other form of circuitry. It should be appreciated that the processing circuitry need not be provided as a single unit but may be provided as any number of units or circuitry.

The memory 62b may be configured to store received or transmitted data and/or executable program instructions. The memory 62b may be any suitable type of computer readable memory and may be of volatile and/or non-volatile type. While the actual transmission is of course executed by the above discussed radio circuitry 61, the processing circuitry 62 is configured to prepare for transmission using the short-range, wireless technology.

Figure 6b is an example node configuration of a provisioned device node, i.e., a device node having been joined to a short-range, multi-hop wireless personal area network, WPAN, and configured for establishing routing paths to a provisioner node. The provisioned device node comprises a discovery module 621 configured for discovery of one or more un-provisioned device nodes and a link establishing module 622 configured to establish a link from a provisioner to the one or more un-provisioned device nodes.

Figures 7-9 are flowcharts illustrating exemplary method steps performed in the multi-hop network establishing for path optimized multi-hop provisioning, POMP.

Figures 7 to 8 have briefly been discussed in the presentation above and will not be further elaborated upon. However, the operations disclosed in these figures are of course part of the present disclosure, and terminology and features presented below have the same meaning and implications in Figures 7 and 8 as in the presentation of Figures 9a-9c.

Figures 9a-9c introduce the following terminology: - Provisioning: it is the process of preparing and enabling a new device to join in a network and become a joined node in that network.

- PR: Provisioner (also known as provisioner node in this disclosure) . The provisioner provides a new device the identifier and security information to allow the device to join in the network.

- ND: new devices (also known as un-provisioned device nodes, new device nodes and device nodes in this disclosure) to be provisioned by PR.

- Node: a provisioned device (ND becomes a node after being provisioned).

- UN: an Unlinked Node is a node that has been provisioned but not linked to any paths in the provisioning topology tree.

- A linked node is a node that has been provisioned and has been linked to a path or multiple paths in the provisioning tree.

- PA: Provisioning Agent (also known as provisioning agent node in this disclosure) . In the multi-hop provisioning protocol, the PA acting as an agent to exchange the data between PR and ND.

- Provisioning topology tree: it is generated by the proposed approach and it consists of optimized paths between PR and PAs.

- Provisioning agent candidates (also known as discovery nodes in this disclosure) : they are the nodes which are required by PR to scan and discover the NDs. - Provisioning neighbor discovery is a procedure to discover new devices that to be provisioned by PR and provisioning agent candidates.

- Provisioning link establishment is a procedure that a provisioning agent requested by provisioner to perform a hand-shake with a new device.

Other notations: - P(V): represents the set of nodes along the path between PR and node V in the provisioning topology tree.

T: represents the set of nodes in the provisioning topology tree.

Looking at the procedure disclosed in Figures 9a-9c, the first step comprises to determine whether there are device nodes joined to the network already or if the network only consist of the provisioner node, i.e., having a height of k=0. When it is determined that it is a new network set up, the provisioner node scans and discovers new devices, NDs, that represent unlinked nodes, UNs, of the network. If no such devices are found, the provisioning process is postponed until a new scan is performed. Scanning may be performed at regular intervals by the provisioner node. If UNs are found, the provisioner node continues to collect link cost between the provisioner node and the UNs. A path P(UN) is created for each UN in a provisioning tree topology, see for example Figure 1. The provisioner, PR, is added as a node to the path P(UN). A new scan may be performed in order to verify if further new devices have joined the network. If such new devices are found, the link cost between the provisioner and each new device is collected. The provisioner performs the provisioning connection establishment between each ND and the PR, whereby each ND becomes a UN. A path P(UN) is created for each UN in a provisioning topology tree T, e.g., the tree of Figure 1. The provisioner is added to the path. If all new NDs have been joined in the network, the provisioning procedure is ended and the established optimized paths between a PR and a node not selected as a router may be removed. If there are further NDs to join to the network, the procedure is repeated, but now at a link height k = k+1.

The step of determining if the new device represents a provisioner or not is repeated. The linked nodes with the largest height are selected as PA candidates, also known as discovery nodes. The PA candidates are requested to scan and discover NDs and UNs. If UNs are found, link cost is collected between each PA candidate and its found UNs. A path P(UN) is created for each UN in the provisioning topology tree T. The PA candidate with the least link cost for each UN is selected as the previous node in the path P(UN). Nodes along the path between PR and the previous node of an UN are added to the path P(UN). If no UNs were found, the procedure goes on to scan for NDs. When NDs are found in the scanning process, link cost between each PA candidate and its found NDs are collected. The PA candidate having the least link cost for each ND is selected as the PA of the ND. The provisioning connection establishment is performed with each ND via its PA. Thus each ND is provision via its PA and becomes a UN from a routing perspective. A path P(UN) is created for each UN in the provisioning topology tree T and nodes along the path between PR and the PA are added to the path P(UN). When this procedure is concluded, it is determined whether all NDs have joined to the network. If not, the procedure is once again repeated for found NDs. However, if all NDs have been joined as nodes in the network, the procedure is concluded. It should be understood that entities in the drawings, e.g., blocks of the block diagrams, and also combinations of entities in the drawings, can be implemented by computer program instructions, which instructions can be stored in a computer-readable memory, and also loaded onto a computer or other programmable data processing apparatus. Such computer program instructions can be provided to a processor of a general purpose computer, a special purpose computer and/or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer and/or other programmable data processing apparatus, create means for implementing the functions/acts specified in the block diagrams and/or flowchart block or blocks.

In some implementations and according to some aspects of the disclosure, functions disclosed as performed in a certain order in a block of the block diagram can occur out of the order. In the drawings and specification, there have been disclosed exemplary aspects of the disclosure. However, many variations and modifications can be made to these aspects without substantially departing from the principles of the present disclosure. Thus, the disclosure should be regarded as illustrative rather than restrictive, and not as being limited to the particular aspects discussed above. Accordingly, although specific terms are employed, they are used in a generic and descriptive sense only and not for purposes of limitation.

It should be noted that although terminology from Bluetooth Low Energy has been used herein to explain the example embodiments, this should not be seen as limiting the scope of the example embodiments to only the aforementioned system. Other short range wireless technologies, may also benefit from the example embodiments disclosed herein. The description of the example embodiments provided herein have been presented for purposes of illustration. The description is not intended to be exhaustive or to limit example embodiments to the precise form disclosed, and modifications and variations are possible in light of the above teachings or may be acquired from practice of various alternatives to the provided embodiments. The examples discussed herein were chosen and described in order to explain the principles and the nature of various example embodiments and its practical application to enable one skilled in the art to utilize the example embodiments in various manners and with various modifications as are suited to the particular use contemplated. The features of the embodiments described herein may be combined in all possible combinations of source nodes, target nodes, corresponding methods, and computer program products. It should be appreciated that the example embodiments presented herein may be practiced in combination with each other.