Patent ID: 9716984
Date: 2017-07-25
CPC Classifications: H04L,H04W

Claim:
1. A method of forwarding packets in a router node of a wireless network, said method comprising: participating in a routing protocol to form a hierarchy of nodes constituting said wireless network, wherein said hierarchy comprises a root node and a set of end devices as leaf nodes, wherein each child node is determined based on said hierarchy, wherein said routing protocol is RPL (IPv6 Routing Protocol for Low-Power and Lossy Networks), and said root node is a border router of said wireless network, wherein said router node is between an end device and said border router, wherein said border router maintains routing information for said wireless network; receiving a layer-3 unicast packet from said end device, said unicast packet containing a destination IP address of another node; forwarding said layer-3 unicast packet towards said border router as part of said non-storing mode such that said border router can thereafter use said routing information to deliver said layer-3 unicast packet to a destination node corresponding to said destination IP address, wherein said layer-3 unicast packet is a Destination Oriented Directed Acyclic Graph Destination Advertisement Object (DAO) message of said RPL, wherein contents of said DAO message specify that said end device has selected said router node as a parent node, wherein said router node creates information specifying that said end device is a child node of said router node; maintaining multicast information indicating child nodes registered for respective multicasts, while operating in a non-storing mode along with other router nodes of said wireless network for processing unicast packets, wherein said multicast information is maintained in the form of a multicast table, said multicast table representing in one dimension a plurality of child nodes, which are child nodes of said router node according to said hierarchy, said multicast table representing in another dimension a set of multicast addresses representing the respective multicasts served by said router node, wherein each entry at an intersection of said one dimension and said another dimension indicates whether the corresponding child node is registered for the corresponding multicast; receiving a registration request from a first child node in the form of an IP (Internet Protocol) packet encapsulated in layer-2 header, said registration request specifying an end device for registration to receive multicast packets of a first multicast, wherein said layer-2 header specifies said router node as a destination and an IP header of said IP packet specifies said border router as a destination; updating said multicast table to indicate that said first child node is registered to receive packets of said first multicast; forwarding said registration request to a parent of said router node; receiving a layer-3 multicast packet containing a layer-3 multicast address identifying a corresponding multicast; examining said multicast information in said multicast table to identify a set of child nodes registered for said multicast; and unicasting, at L2-level, said layer-3 multicast packet to each child node of said set of child nodes.