Abstract:
A method of operating a node of a network is disclosed. The method includes receiving a data frame having a header with plural addresses. The node determines if a first address of the plural addresses is an address of a descendant of the node and if a second address of the plural addresses is a parent address of the node. If so, the node changes a second address of the plural addresses to its own address in response to the step of determining. The node then transmits the data frame to at least one descendant of the node.

Description:
BACKGROUND OF THE INVENTION 
       [0001]    The present embodiments relate to wireless network communication systems and, more particularly, to a simplified mesh network protocol that is backwards compatible with existing IEEE 802.11 standards. 
         [0002]    A wireless network is a type of wireless communication system where at least one wireless transceiver must not only receive and process its own data, but it must also serve as a relay for other wireless transceivers in the network. The network may be a simple mesh network, a network range extender, or other comparable network system. This may be accomplished by a wireless routing protocol where a data frame is propagated within the network by hopping from transceiver to transceiver to transmit the data frame from a source node to a destination node. A wireless node may be a wireless access point (AP) such as a wireless router, a mobile phone, or a computer capable of accessing the wireless local area network (WLAN). In other applications, such as Internet of Things (IoT) applications, the wireless node may be an external security monitor, a room monitor, a fire or smoke detector, a weather station, or any number of other WLAN applications for home or business environments. 
         [0003]    A practical mesh network must maintain continuous network paths for all wireless nodes. This requires reliable network formation, reconfiguration around broken or interrupted network paths, and prioritized routing to ensure that data frames travel from source to destination along short yet reliable network paths. 
         [0004]      FIG. 1  shows an exemplary medium access control (MAC) header of the prior art that may be appended to IEEE 802.11 data frames for wireless network communication. The first three fields (Frame Control, Duration/ID, and Address 1) and the frame check sequence (FCS) field are present in all frames. The remaining fields are present only in certain frame types and subtypes of frames. The four address fields are used to indicate a basic service set identifier (BSSID), source address (SA), destination address (DA), transmitting station (STA) address (TA), and receiving STA address (RA). 
         [0005]    Medium to large scale 802.11 compatible mesh networks use at least these four addresses to transmit standard, control, and management frames within the mesh. They are adapted to provide high capacity and bandwidth at the expense of power and protocol complexity. Many IoT nodes, however, communicate by relatively small frames without a need for high speed or bandwidth. They may have limited memory and computing power. Moreover, they may be battery operated so that power consumption is a significant concern. 
         [0006]    Although network proposals of the prior art provide steady improvements in wireless network communications, the present inventors recognize that still further improvements in IoT mesh network protocol are possible. Accordingly, preferred embodiments described below are directed toward this and other improvements over the prior art. 
       BRIEF SUMMARY OF THE INVENTION 
       [0007]    In a first preferred embodiment of the present invention, there is disclosed a method of operating a node of a network in a wireless communication system. The method includes receiving a downlink data frame having a header with plural addresses. The node determines if a first address of the plural addresses is a descendant address of the node and if a second address of the plural addresses is an address of a parent of the node. The node changes the second address to its own address in response to the step of determining and transmits the data frame to at least one descendant node. 
         [0008]    In a second preferred embodiment of the present invention, there is disclosed a method of operating a node of a network in a wireless communication system. The method includes receiving an uplink data frame having a header with plural addresses and determining if a first address of the plural addresses is an address of the node. The node changes the first address to an address of the parent of the node in response to the step of determining and transmits the data frame to the parent of the node. 
     
    
     
       BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING 
         [0009]      FIG. 1  is a diagram of an IEEE 802.11 medium access control (MAC) header of the prior art; 
           [0010]      FIG. 2  is a flow diagram showing formation of a simple mesh network of the present invention; 
           [0011]      FIG. 3  is a flow diagram showing mesh discovery when a new wireless node enters a simple mesh network of the present invention; 
           [0012]      FIG. 4  is a diagram of a simple mesh network showing downlink (DL) communication with uplink acknowledgement (ACK); 
           [0013]      FIG. 5  is a flow diagram showing operation of the simple mesh network of  FIG. 4 ; 
           [0014]      FIG. 6  is a diagram of a simple mesh network showing uplink (UL) communication with downlink acknowledgement (ACK); 
           [0015]      FIG. 7  is a flow diagram showing operation of the simple mesh network of  FIG. 6 ; 
           [0016]      FIG. 8  is a flow diagram showing operation of the simple mesh network when receiving a unicast or multicast downlink (DL) frame; and 
           [0017]      FIG. 9  is a flow diagram showing operation of the simple mesh network when transmitting a unicast uplink (UL) frame. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0018]    Referring to  FIG. 2 , there is a flow diagram showing formation of a simple mesh network of the present invention as shown at  FIGS. 4 and 6 . Here and in the following discussion, the simple mesh network may be any network of wireless nodes to include range extenders or other wireless devices capable of entering the network. The simple mesh network is preferably formed from the access point (AP) down to each mesh repeater node (MRN 1 , MRN 2 ) and mesh leaf node (MLN). The AP may be standard, proprietary, or other network node that provides internet access. The AP may also be connected to a wireless local area network (WLAN) for internet access. The process begins when a wireless node wishing to join the mesh initiates a station scan  200 . The wireless node then receives a basic service set (BSS) list  202  indicating all wireless nodes that are currently in the mesh network. The wireless node sorts the BSS list by a weighted score such as signal strength  204  and selects the best scoring parent  206 . The wireless node then joins the mesh as a descendant of the selected parent and sets its own depth to that of the selected parent plus  1 . 
         [0019]    Referring next to  FIG. 3 , there is a flow diagram showing mesh discovery when a new wireless node enters the wireless network of  FIGS. 4 and 6 . A wireless node wishing to enter an existing mesh will initiate a station scan  300  and send an AP probe request  302 . Each MRN or MLN in the mesh that receives the probe request will determine a received signal strength indicator (RSSI) of the probe. The wireless node may determine if the RSSI is above an acceptable threshold and determine if an information element (IE) is present  304 . If not, the process ends  310 . If an IE is present, the wireless node will wait a respective random delay period  306  and send a probe response  308  similar to an AP probe response. The random delay reduces the risk of probe response collisions due to a high probability of a short-term initiated hidden node effect from multiple responders or that the subsequent MRN probe response  308  will collide with a delayed AP response. The wireless node selects the AP or MRN with the best score. When the wireless node sends its authentication through an MRN, the MRN registers the wireless node in the mesh. The selected AP or MRN may then announce the registration throughout the mesh to avoid multiple registrations. 
         [0020]    Turning now to  FIG. 4 , there is a diagram of a simple mesh network of the present invention showing downlink (DL) communication with uplink acknowledgement (ACK). The diagram is simplified for the purpose of illustration. One of ordinary skill in the art having access to the instant application will appreciate that many more mesh relay nodes (MRN) and mesh leaf nodes (MLN) are possible in a practical network. The simple mesh network illustrates several possible communication paths between the access point (AP) and network nodes or descendants. The AP may also be connected to a wireless local area network (WLAN) for internet access. In a first path  1   a,  the AP communicates directly with mesh relay node MRN 1 , and communication is directly acknowledged (ACK) over path  2 . In a second path  1   b,  the AP communicates directly with mesh relay node MRN 2 , and communication is indirectly acknowledged via sequential paths  4  and  2 . In a third path  1   c,  the AP communicates directly with mesh leaf node MLN, and communication is indirectly acknowledged via sequential paths  6 ,  4 , and  2 . In each case, the BSSID is set to the immediate parent address, so that a destination node will only acknowledge frames received directly from its parent. In addition, the receiving destination node (MRN or MLN) will only acknowledge (ACK) receipt of frames with ADDR 1  set to the address of a registered descendant node or of its own station (STA) address. This advantageously avoids collisions between acknowledgements to multiple ancestors. 
         [0021]    Operation of the simple mesh network of  FIG. 4  will now be explained with reference to the flow diagram of  FIG. 5 . As previously discussed, downlink (DL) transmission may follow direct paths or indirect paths through relay nodes. Indirect communication according to the present invention is greatly simplified with regard to existing 802.11 standards by modification of a single address at each relay node. In operation, a DL frame is first received at step  500  from the AP by MRN 1  ( 1   a ). The destination address DA (ADDR 1 ) is points to MLN. The parent address (ADDR 2 ) points to AP, and ADDR 3  is set to source address SA. MRN 1  determines from a basic service set identification (BSSID) address in ADDR 2  whether the frame originated from a node of its basic service set (BSS)  502 . If not, the frame is ignored or dropped at step  508 . If the frame originated within the BSS, however, MRN 1  determines at step  504  if it is the final destination node by comparing ADDR 1  to its station (STA) address. If MRN 1  were the final destination node and the frame is encrypted, MRN 1  would decrypt the frame using the access point (AP) address  510 . Since ADDR 1  points to MLN, MRN 1  does not retain the frame. MRN 1  determines at step  506  if ADDR 1  is a valid descendant address. ADDR 1  points to MLN, which is a registered descendant of MRN 1 . Thus, MRN 1  changes ADDR 2  (BSSID) to its own address  512  and transmits or forwards the frame  514  to at least one descendant node. MRN 1  constructs an acknowledgement (ACK) frame and sets the receiving station address (RA) to AP. MRN 1  transmits the ACK to AP ( 2 ). The first transmission is then completed at step  516 . 
         [0022]    The process is repeated at node MRN 2 . The DL frame is received at step  500  from the MRN 1  by MRN 2  ( 3 ). The destination address DA and source address SA remain unchanged. ADDR 2  (BSSID) now points to MRN 1 . MRN 2  determines from the BSSID that the frame originated from a node of its BSS  502 . The frame originated within the BSS, so MRN 2  determines at step  504  that it is not the final destination node by comparing ADDR 1  to its own STA address. If MRN 2  were the final destination node and the frame is encrypted, MRN 2  would decrypt the frame using the access point (AP) address as the BSSID input to the decryption procedure  510 . Since ADDR 1  points to MLN, MRN 2  does not retain the frame. MRN 2  determines at step  506  that ADDR 1  (MLN) is a valid descendant address. Thus, MRN 2  changes ADDR 2  (BSSID) to its own address  512  and transmits or forwards the frame  514  to MLN. MRN 2  constructs an ACK frame and sets RA to MRN 1 . MRN 2  transmits the ACK to MRN 1  ( 4 ). The second transmission is then completed at step  516 . 
         [0023]    The final transmission is completed when the DL frame is received at step  500  from the MRN 2  by MLN ( 5 ). The destination address DA and source address SA remain unchanged. ADDR 2  (BSSID) now points to MRN 2 . MLN determines from the BSSID that the frame originated from a node of its BSS  502 . The MLN determines at step  504  that it is the final destination node by comparing ADDR 1  to its own STA address. If the frame is encrypted, MLN decrypts the frame using the access point (AP) address  510  as the BSSID input to the decryption process before processing the frame. MLN constructs an ACK frame and sets RA to MRN 2 . MLN transmits the ACK frame to MRN 2  ( 6 ). The final transmission is then completed and ends at step  516 . 
         [0024]    There are several advantages of the present simple mesh network over existing 802.11 standards. First, mesh network simplicity is maintained by a one-to-many or many-to-one distribution system (DS). This is particularly advantageous for “small footprint” IoT devices having limited computational power and memory. Second, each MRN maintains a flat list of existing descendants and acts as a virtual AP to the descendants. Therefore, there is no need for the MRN to maintain knowledge of how the descendants are arranged. Third, each relay node forwards DL frames to all its descendants with its own address set in the BSSID (ADDR 2 ) rather than the AP as in the 802.11 standard. This ensures that only the correct mesh routing path along the tree is followed. Fourth, no manipulation in the middle of frames, such as adding a fourth address as with 802.11, is required. This avoids a need to copy parts of a frame or reallocate resources. Fifth, frame encryption and address verification assure end-to-end security from the AP to the MLN. Sixth, no special mesh routing messages are required. Seventh, backwards compatibility is maintained such that existing BSS deployments operated by any standard AP can benefit from a simple mesh solution. Finally, inherent network simplicity reduces computational overhead, computation time, and power at each relay node. 
         [0025]      FIG. 6  is a diagram of a simple mesh network of the present invention showing uplink (UL) communication with downlink acknowledgement (ACK). The diagram is simplified for the purpose of illustration. The simple mesh network illustrates several possible communication paths between the access point (AP) and network nodes or descendants. In a first path  1 , MLN communicates directly with mesh relay node MRN 2 , and communication is directly acknowledged (ACK) over path  2   a.  In a second path  1 / 3 , MLN communicates indirectly with mesh relay node MRN 1  via MRN 2 , and communication is either directly acknowledged from MRN 1  to MLN over path  2 B or indirectly acknowledged via sequential paths  4   a  and  2   a.  In a third path  1 / 3 / 5 , MLN communicates indirectly with the AP, and communication is either directly acknowledged from AP to MLN over path  2   c  or indirectly acknowledged via some combination of sequential paths  6 ,  4   a,  and  2   a - 2   c.    
         [0026]    Operation of the simple mesh network of  FIG. 6  will now be explained with reference to the flow diagram of  FIG. 7 . As previously discussed, uplink (UL) transmission may follow direct paths or indirect paths through relay nodes. Indirect communication according to the present invention is greatly simplified with regard to existing 802.11 standards by modification of a single address at each relay node. In operation, a UL frame is first received at step  700  from MLN by MRN 2  over path  1 . The parent address ADDR 1  (BSSID) points to MRN 2 . The source address (ADDR 2 ) is set to MLN, and ADDR 3  is set to destination address DA. MRN 2  determines at step  702  if the frame is from a descendant by comparing ADDR 1  to its station (STA) address, which is MRN 2 . For security and connection purposes, MRN 2  determines at step  704  if ADDR 2  is a valid descendant. If not, MRN 2  determines if the frame is authentication (AUTH)  712 . If not AUTH, MRN 2  drops the frame  710 . Otherwise, MRN 2  registers a new descendant  714  and forwards the UL frame  708 . If, however, ADDR 2  is a registered descendant  704  or an authentication frame, MRN 2  changes ADDR 1  (BSSID) to its parent address MRN 1  (BSSID)  706  and transmits or forwards the frame  708  to its parent node. MRN 2  constructs an acknowledgement (ACK) frame and sets the receiving station address (RA) to MLN. MRN 2  transmits the ACK to MLN ( 2   a ). The first UL transmission is then completed at step  712 . 
         [0027]    The process is repeated when the UL frame is received at step  700  from MRN 2  by MRN 1  ( 3 ). The destination address DA and source address SA remain unchanged. ADDR 1  (BSSID) now points to MRN 1 . MRN 1  determines from the BSSID (ADDR 1 ) that it is the proper recipient  702 . For security and connection purposes, MRN 1  determines at step  704  if ADDR 2  is a valid descendant. If not, MRN 1  determines if the frame is AUTH  712 . If not AUTH, MRN 1  drops the frame  710 . Otherwise, MRN 1  registers a new descendant  714  and forwards the UL frame  708 . If, however, ADDR 2  is a registered descendant  704  or authentication frame, MRN 1  changes ADDR 1  (BSSID) to its parent address AP (BSSID)  706  and transmits or forwards the frame  708  to its parent node. MRN 1  constructs an ACK frame and sets RA to MRN 2 . MRN 1  may transmit the ACK frame directly to MLN ( 2   b ). A depth is included in the frame so that an ACK frame received from other than a parent node is ignored. The second UL transmission is then completed at step  710 . 
         [0028]    The final UL transmission is repeated when the UL frame is received at step  700  from MRN 1  by the AP ( 5 ). The destination address DA and source address SA remain unchanged. ADDR 1  (BSSID) now points to the AP. The AP determines from the BSSID (ADDR 1 ) that it is the proper recipient  702 . The AP then forwards the UL frame to the wireless local area network (WLAN). The AP constructs an ACK frame and sets RA to MLN. The AP may transmit the ACK frame directly to MLN ( 2   c ). A depth is included in the frame so that an ACK frame received from other than a parent node is ignored. 
         [0029]    The previously discussed advantages with respect to DL communication are also present in UL communication. First, mesh network simplicity is maintained by a one-to-many or many-to-one distribution system (DS). This is particularly advantageous for “small footprint” IoT devices having limited computational power and memory. Second, each MRN maintains a flat list of existing descendants and acts as a virtual AP to the descendants. Therefore, there is no need for the MRN to maintain knowledge of how the descendants are arranged. Third, each relay node forwards UL frames to its parent with the parent address set in the BSSID (ADDR 1 ) rather than the AP as in the 802.11 standard. This ensures that only the correct mesh routing path along the tree is followed. Fourth, no manipulation in the middle of frames, such as adding a fourth address as with 802.11, is required. This avoids a need to copy parts of a frame or reallocate resources. Fifth, frame encryption and address verification assure end-to-end security from the MLN to the AP. Sixth, no special mesh routing messages are required. New descendants are registered using standard AUTH management frames. Seventh, backwards compatibility is maintained such that existing BSS deployments operated by any standard AP can benefit from a simple mesh solution. Finally, inherent network simplicity reduces computational overhead, computation time, and power at each relay node. 
         [0030]    Referring next to the flow diagram of  FIG. 8 , operation of the simple mesh network of  FIG. 4  will now be explained with a unicast or multicast DL transmission. As previously discussed, downlink (DL) transmission may follow direct paths or indirect paths through relay nodes. Indirect communication according to the present invention is greatly simplified with regard to existing 802.11 standards by modification of a single address at each relay node. In operation, access point (AP)  800  receives a DL frame from a wireless local area network (WLAN). AP  800  encrypts the frame using the AP address as the BSSID input for the encryption procedure and transmits the DL frame. A wireless simple mesh node receives the DL frame  802  and determines from a basic service set identification (BSSID) address whether the frame originated from a node of its basic service set (BSS)  804 . If not, the frame is ignored or dropped at step  816 . If the frame originated within the BSS, the node determines at step  806  if it is the final destination node by comparing receive address (RA) to its station (STA) address. If the node is the final destination, it decrypts the DL frame with the AP address  818  and retains the decrypted frame  814 . The node also constructs an acknowledgement (ACK) frame and sets the receive address RA to the transmit address (TA)  824 . The node then transmits the ACK frame to the TA address. 
         [0031]    The node determines if the DL frame is a multicast frame at step  806 . If so, the node decrypts the DL frame using the AP address  818  rather than the BSSID as an input to the decryption procedure. The node also sets the DL frame transmit address (TA) to its own station (STA) address  820  and transmits or forwards the frame  822  to at least one descendant node. The process is then completed at step  814 . 
         [0032]    If the node is not the final recipient, the node determines at step  810  if RA is a registered descendant node address. If not, the node drops or ignores the frame  816 . If, however, the RA is an address of a registered descendant, the node constructs an acknowledgement (ACK) frame and sets the receive address RA to the transmit address (TA)  824 . The node then transmits the ACK frame to the TA address. The node also sets the DL frame transmit address (TA) to its own station (STA) address  820  and transmits or forwards the frame  822  to at least one descendant node. The process is then completed at step  814 . 
         [0033]      FIG. 9  is a flow diagram showing operation of the simple mesh network of  FIG. 6  with a unicast UL transmission. As previously discussed, uplink (UL) transmission may follow direct paths or indirect paths through relay nodes. Indirect communication according to the present invention is greatly simplified with regard to existing 802.11 standards by modification of a single address at each relay node. In operation, MLN  900  constructs an uplink (UL) frame and encrypts the frame using the AP address as the BSSID input for the encryption procedure. The MLN sets the BSSID to its parent address and transmits the UL frame. A wireless simple mesh node receives the UL frame  902  and determines from a basic service set identification (BSSID) address whether the frame originated from a node of its basic service set (BSS)  904 . If not, the frame is ignored or dropped at step  910 . If the frame originated within the BSS, however, the node also constructs an acknowledgement (ACK) frame and sets the receive address RA to the transmit address TA  906 . The node then transmits the ACK frame to the originating node. The node may determine if it is only a mesh leaf node (MLN) and not a relay node. If so, it drops the frame  910 . If not, the node sets the BSSID to its parent address  912  and forwards the UL frame  914 . The process is then completed at step  916 . 
         [0034]    Still further, while numerous examples have thus been provided, one skilled in the art should recognize that various modifications, substitutions, or alterations may be made to the described embodiments while still falling with the inventive scope as defined by the following claims. Other combinations will be readily apparent to one of ordinary skill in the art having access to the instant specification.