Jonathan Hui

Jonathan Hui

San Francisco Bay Area
4K followers 500+ connections

About

• Principal Software Engineer, Google
• Board Director, Connectivity Standards…

Activity

Join now to see all activity

Experience

  • Google Graphic

    Google

    San Francisco Bay Area

  • -

  • -

    San Francisco Bay Area

  • -

    San Jose, California

  • -

    San Francisco, California

  • -

    Berkeley, California

  • -

    Pittsburgh, Pennsylvania

Education

  • University of California, Berkeley Graphic

    University of California, Berkeley

    -

    -

    • Dissertation: “An Extended Internet Architecture for Wireless Sensor Networks”
    • Advisor: David Culler
    • Cumulative GPA: 4.00/4.00

  • -

    -

  • -

    -

Publications

  • IPv6 in Low-Power Wireless Networks

    Proceedings of the IEEE

    Recent developments have made it possible, pragmatic, and efficient for the IPv6 protocol to be applied to low-power multihop wireless networks, especially regarding the metrics such as low memory footprint, high reliability, and low energy use that are most important for embedded applications.

    See publication
  • IP is Dead, Long Live IP for Wireless Sensor Networks

    Proceedings of SenSys'08, ACM

    A decade ago as wireless sensor network research took off many researchers in the field denounced the use of IP as inadequate and in contradiction to the needs of wireless sensor networking. Since then the field has matured, standard links have emerged, and IP has evolved. In this paper, we present the design of a complete IPv6-based network architecture for wireless sensor networks.

    See publication
  • An Extended Internet Architecture for Low-Power Wireless Networks - Design and Implementation

    EECS Department, University of California, Berkeley

    A decade ago as wireless sensor network (sensornet) research took off many researchers in the field eschewed the use of IP as inadequate and in contradiction to the needs of sensornets. Since those beginnings, the field has matured substantially, a huge collection of protocols have been invented and evaluated, and we have gained experience in how sensornets are used in practice. Over this same period, the Internet has also evolved with the introduction of IPv6 that addresses scalability and…

    A decade ago as wireless sensor network (sensornet) research took off many researchers in the field eschewed the use of IP as inadequate and in contradiction to the needs of sensornets. Since those beginnings, the field has matured substantially, a huge collection of protocols have been invented and evaluated, and we have gained experience in how sensornets are used in practice. Over this same period, the Internet has also evolved with the introduction of IPv6 that addresses scalability and easy configuration and management. In this dissertation, we present the design of a complete IPv6-based network architecture for sensornets.

    See publication
  • Extending IP to Low-Power, Wireless Personal Area Networks

    IEEE Computer Society

    Extending IP to low-power, wireless personal area networks (LoWPANs) was once considered impractical because these networks are highly constrained and must operate unattended for multiyear lifetimes on modest batteries. Many vendors embraced proprietary protocols, assuming that IP was too resource-intensive to be scaled down to operate on the microcontrollers and low-power wireless links used in LoWPAN settings. However, 6LoWPAN radically alters the calculation by introducing an adaptation…

    Extending IP to low-power, wireless personal area networks (LoWPANs) was once considered impractical because these networks are highly constrained and must operate unattended for multiyear lifetimes on modest batteries. Many vendors embraced proprietary protocols, assuming that IP was too resource-intensive to be scaled down to operate on the microcontrollers and low-power wireless links used in LoWPAN settings. However, 6LoWPAN radically alters the calculation by introducing an adaptation layer that enables efficient IPv6 communication over IEEE 802.15.4 LoWPAN links.

    See publication
  • A Unifying Link Abstraction for Wireless Sensor Networks

    The 3rd International Conference on Embedded Networked Sensor Systems (SenSys'05)

  • Towards a Sensor Network Architecture: Lowering the Waistline

    The Tenth Workshop on Hot Topics in Operating Systems (HotOS X)

  • The Dynamic Behavior of a Data Dissemination Protocol for Network Programming at Scale

    The 2nd International Conference on Embedded Networked Sensor Systems (SenSys'04)

  • An Energy-Efficient Surveillance System for Wireless Sensor Networks

    The 2nd International Conference on Mobile Systems, Applications, and Services (MobiSys'04)

  • Sentry-Based Power Management in Wireless Sensor Networks

    The 2nd International Workshop on Information Processing in Sensor Networks (IPSN’03)

Join now to see all publications

Patents

  • Attack mitigation using learning machines

    Issued US 9,398,035

    In one embodiment, techniques are shown and described relating to attack mitigation using learning machines. A node may receive network traffic data for a computer network, and then predict a probability that one or more nodes are under attack based on the network traffic data. The node may then decide to mitigate a predicted attack by instructing nodes to forward network traffic on an alternative route without altering an existing routing topology of the computer network to reroute network…

    In one embodiment, techniques are shown and described relating to attack mitigation using learning machines. A node may receive network traffic data for a computer network, and then predict a probability that one or more nodes are under attack based on the network traffic data. The node may then decide to mitigate a predicted attack by instructing nodes to forward network traffic on an alternative route without altering an existing routing topology of the computer network to reroute network communication around the one or more nodes under attack, and in response, the node may communicate an attack notification message to the one or more nodes under attack.

    See patent
  • Computing risk-sharing metrics in shared-media communication networks

    Issued US 9,391,784

    In one embodiment, a routing node determines a risk-sharing metric between pairs of nodes in a shared-media communication network, and may then compute a plurality of routes that minimizes the risk-sharing metric between the routes, to correspondingly route traffic according to the computed plurality of routes. Additionally, in another embodiment, a particular node in the shared-media communication network may determine a risk-sharing metric between itself and each of one or more other nodes in…

    In one embodiment, a routing node determines a risk-sharing metric between pairs of nodes in a shared-media communication network, and may then compute a plurality of routes that minimizes the risk-sharing metric between the routes, to correspondingly route traffic according to the computed plurality of routes. Additionally, in another embodiment, a particular node in the shared-media communication network may determine a risk-sharing metric between itself and each of one or more other nodes in the shared-media communication network. The particular node may then share the one or more determined risk-sharing metrics with one or more routing nodes in the shared-media communication network, accordingly.

    See patent
  • Mesh network addressing

    Issued US 9,385,953

    In embodiments of mesh network addressing, a router device receives provisioning domains that include an address prefix and an associated preference value for the address prefix. The router determines a route, based on one of the address prefixes, to use to forward a data packet to a destination. The router uses the preference values to prioritize the routing of the data packet. In other aspects, the preference values can be set based on one or more factors, and the router can use the…

    In embodiments of mesh network addressing, a router device receives provisioning domains that include an address prefix and an associated preference value for the address prefix. The router determines a route, based on one of the address prefixes, to use to forward a data packet to a destination. The router uses the preference values to prioritize the routing of the data packet. In other aspects, the preference values can be set based on one or more factors, and the router can use the preference values in addition to mesh network routing costs to determine a route for a data packet.

    See patent
  • Remote probing for remote quality of service monitoring

    Issued US 9,385,933

    In one embodiment, a targeted node in a computer network receives a probe generation request (PGR), and in response, generates a link-local multicast PGR (PGR-Local) carrying instructions for generating probes based on the PGR. The targeted node then transmits the PGR-Local to neighbors of the targeted node to cause one or more of the neighbors to generate and transmit probes to a collection device in the computer network according to the PGR-Local instructions. In another embodiment, a…

    In one embodiment, a targeted node in a computer network receives a probe generation request (PGR), and in response, generates a link-local multicast PGR (PGR-Local) carrying instructions for generating probes based on the PGR. The targeted node then transmits the PGR-Local to neighbors of the targeted node to cause one or more of the neighbors to generate and transmit probes to a collection device in the computer network according to the PGR-Local instructions. In another embodiment, a particular node in a computer network receives a link-local multicast probe generation request (PGR-Local) from a targeted node in the computer network, the targeted node having received the PGR-Local from a remote device, and determines how to generate probes based on instructions carried within the PGR-Local before sending one or more probes to a collection device in the computer network according to the PGR-Local instructions.

    See patent
  • Learning machine-based mechanism to improve QoS dynamically using selective tracking of packet retransmissions

    Issued US 9,374,281

    In one embodiment, a packet to be transmitted along a communication path in a network from a source to a destination is determined, the communication path having one or more hops between the source and the destination. An instruction is sent to one or more tracking nodes along the communication path to track a number of local retransmissions required to successfully transmit the packet from each tracking node to a respective next-hop destination. Then, reports indicating the number of local…

    In one embodiment, a packet to be transmitted along a communication path in a network from a source to a destination is determined, the communication path having one or more hops between the source and the destination. An instruction is sent to one or more tracking nodes along the communication path to track a number of local retransmissions required to successfully transmit the packet from each tracking node to a respective next-hop destination. Then, reports indicating the number of local retransmissions are received from the one or more tracking nodes.

    See patent
  • Path diversity with poly-phase links in a power line communication network

    Issued US 9,369,177

    In one embodiment, a node in a network receives communication channel data regarding one or more communication channels available between a particular device in the network and a neighboring device. Each communication channel corresponds to one or more electrical phases over which the particular device can communicate with the neighboring device. The node also receives crosstalk data regarding an amount of crosstalk between the electrical phases over which the particular device can communicate…

    In one embodiment, a node in a network receives communication channel data regarding one or more communication channels available between a particular device in the network and a neighboring device. Each communication channel corresponds to one or more electrical phases over which the particular device can communicate with the neighboring device. The node also receives crosstalk data regarding an amount of crosstalk between the electrical phases over which the particular device can communicate with the neighboring device. The node then generates a routing path for the network based on the received crosstalk and communication channel data.

    See patent
  • Mesh network addressing

    Issued US 9,369,374

    In embodiments of mesh network addressing, a border router receives an address prefix and associated configuration information from an external network. The received address prefix and the configuration information enable the border router to create a provisioning domain that includes the received address prefix and the configuration information, as well as a unique identifier. The border router forwards the created provisioning domain to a leader device in the mesh network that stores the…

    In embodiments of mesh network addressing, a border router receives an address prefix and associated configuration information from an external network. The received address prefix and the configuration information enable the border router to create a provisioning domain that includes the received address prefix and the configuration information, as well as a unique identifier. The border router forwards the created provisioning domain to a leader device in the mesh network that stores the provisioning domain and propagates the provisioning domain to routers to enable packet addressing and routing in the mesh network.

    See patent
  • Source routing convergence in constrained computer networks

    Issued US 9,363,166

    In one embodiment, a source routing device (e.g., root device) pre-computes diverse source-routed paths to one or more nodes in a computer network. Upon receiving a particular packet, the device forwards the particular packet on a source-routed first path of the pre-computed diverse paths. In the event the device implicitly detects failure of the first path, then it forwards a copy of the particular packet on a source-routed second path of the pre-computed diverse paths in response. In one…

    In one embodiment, a source routing device (e.g., root device) pre-computes diverse source-routed paths to one or more nodes in a computer network. Upon receiving a particular packet, the device forwards the particular packet on a source-routed first path of the pre-computed diverse paths. In the event the device implicitly detects failure of the first path, then it forwards a copy of the particular packet on a source-routed second path of the pre-computed diverse paths in response. In one embodiment, implicit failure detection comprises seeing a second (repeated) packet with the same identification within a certain time since the first packet, and the second packet is forwarded on the second path. In another embodiment, implicit failure detection comprises not seeing a link-layer acknowledgment returned or receiving an error notification from a node along the broken path, and a stored copy of the particular packet is forwarded on the second path.

    See patent
  • Simultaneous acknowledgments for multicast packets

    Issued US 9,350,645

    In one embodiment, a multicast communication is received at a particular node of a plurality of nodes receiving the multicast communication in a network. The particular node selects a subset of subcarriers using a probabilistic data structure, such that each of the plurality of nodes selects a respective subset of subcarriers using the probabilistic data structure. The particular node transmits an acknowledgement of receipt of the multicast communication on the subset of subcarriers selected by…

    In one embodiment, a multicast communication is received at a particular node of a plurality of nodes receiving the multicast communication in a network. The particular node selects a subset of subcarriers using a probabilistic data structure, such that each of the plurality of nodes selects a respective subset of subcarriers using the probabilistic data structure. The particular node transmits an acknowledgement of receipt of the multicast communication on the subset of subcarriers selected by the particular node. The transmission occurs simultaneously with transmissions of acknowledgements from the other of the plurality of nodes.

    See patent
  • Reliable bulk data dissemination using rateless codes

    Issued US 9,350,683

    In one embodiment, an aggregating node receives feedback messages from one or more destination nodes in the network. The destination nodes are designated to receive data as packets from a source node using rateless coding. Further, the feedback messages indicate whether packets are needed at a corresponding destination node to complete the data. Then, the feedback messages are aggregated into a single aggregated message, and the aggregated message is transmitted toward the source node.

    See patent
  • Mesh network addressing

    Issued US 9,344,365

    In embodiments of mesh network addressing, a router receives a packet to deliver to a network destination and determines if the network destination is within the mesh network. The network destination enables the router to discover a Routing Locator (RLOC) that is associated with the network destination and provides a routable network address for the network destination. The router can forward the received packet using the routable network address from the discovered Routing Locator. The router…

    In embodiments of mesh network addressing, a router receives a packet to deliver to a network destination and determines if the network destination is within the mesh network. The network destination enables the router to discover a Routing Locator (RLOC) that is associated with the network destination and provides a routable network address for the network destination. The router can forward the received packet using the routable network address from the discovered Routing Locator. The router can discover the RLOC by searching a cache of RLOCs stored in the router, or by sending an address query.

    See patent
  • Path selection based on hop metric distributions

    Issued US 9,331,931

    In one embodiment, a network device determines, for each particular path of a plurality of paths in a computer network, a hop metric distribution that indicates, for each interval of the hop metric distribution, a number of hops along the particular path that have a hop metric value within a corresponding interval. As such, the device may then select a path from the plurality of paths that minimizes the number of hops with correspondingly poor hop metric values along the selected path based on…

    In one embodiment, a network device determines, for each particular path of a plurality of paths in a computer network, a hop metric distribution that indicates, for each interval of the hop metric distribution, a number of hops along the particular path that have a hop metric value within a corresponding interval. As such, the device may then select a path from the plurality of paths that minimizes the number of hops with correspondingly poor hop metric values along the selected path based on the hop metric distribution, and may forward traffic on the selected path, accordingly.

    See patent
  • Maintaining distribution-network-wide time synchronization in smart grid devices

    Issued US 9,332,072

    In one embodiment, an alternating circuit (AC) power connected node in a shared-media communication network (with knowledge of a current time) determines a time value of a particular zero-crossing event of the AC power, and sends a message to a neighbor node indicating the time value of the particular zero-crossing event to allow the neighbor node to synchronize its time by coordinating the time value to its detection of the particular zero-crossing event. In another embodiment, the neighboring…

    In one embodiment, an alternating circuit (AC) power connected node in a shared-media communication network (with knowledge of a current time) determines a time value of a particular zero-crossing event of the AC power, and sends a message to a neighbor node indicating the time value of the particular zero-crossing event to allow the neighbor node to synchronize its time by coordinating the time value to its detection of the particular zero-crossing event. In another embodiment, the neighboring node determines one or more local zero-crossing events of the AC power, such that upon receiving the message indicating a correct time value of the particular zero-crossing event, the neighboring node can synchronize its local time a current time by matching one of the one or more local zero-crossing events to the particular zero-crossing event and assigning the correct time value to the matched local zero-crossing event.

    See patent
  • Pre-computation of backup topologies in computer networks

    Issued US 9,317,378

    In one embodiment, a method includes: receiving, at a device of a computer network, a request to build at least part of a backup directed acyclic graph (BDAG) of backup devices for routing traffic within the computer network in case of a power outage, the request comprising at least one requirement specifying to use a device remaining powered after the power outage as a backup device; and in response to receiving the request: identifying a set of backup devices, each of the backup devices…

    In one embodiment, a method includes: receiving, at a device of a computer network, a request to build at least part of a backup directed acyclic graph (BDAG) of backup devices for routing traffic within the computer network in case of a power outage, the request comprising at least one requirement specifying to use a device remaining powered after the power outage as a backup device; and in response to receiving the request: identifying a set of backup devices, each of the backup devices fulfilling the at least one requirement; selecting a backup device from the set of backup devices; and synchronizing the device with the backup device according to a backup operation strategy received from the backup device.

    See patent
  • Phase selection for power line communication (PLC) links

    Issued US 9,312,918

    In one embodiment, a device receives connected phase data from a neighboring device indicative of one or more electrical phases to which the neighboring device is connected. A determination is made, based on the connected phase data for the neighboring device, whether to transmit the message to the neighboring device over a single electrical phase at a higher output power or over a plurality of electrical phases at a lower output power. The message is then transmitted to the neighboring device…

    In one embodiment, a device receives connected phase data from a neighboring device indicative of one or more electrical phases to which the neighboring device is connected. A determination is made, based on the connected phase data for the neighboring device, whether to transmit the message to the neighboring device over a single electrical phase at a higher output power or over a plurality of electrical phases at a lower output power. The message is then transmitted to the neighboring device over the determined one or more electrical phases.

    See patent
  • Enabling dynamic routing topologies in support of real-time delay traffic

    Issued US 9,306,841

    In one embodiment, a device determines a set of sources and used destinations for traffic in a computer network, where nodes of the network are configured to send all traffic to the used destinations through a root node of the computer network according to a directed acyclic graph (DAG). The device may then also determine a set of capable nodes as common ancestors to source-destination pairs that provide a more optimal path between the source-destination pairs than traversing the root node, and…

    In one embodiment, a device determines a set of sources and used destinations for traffic in a computer network, where nodes of the network are configured to send all traffic to the used destinations through a root node of the computer network according to a directed acyclic graph (DAG). The device may then also determine a set of capable nodes as common ancestors to source-destination pairs that provide a more optimal path between the source-destination pairs than traversing the root node, and instructs the set of capable nodes to store downward routes to forward traffic for one or more of the used destinations according to the stored downward route rather than through the root node.

    See patent
  • Compressing data packet routing information using bloom filters

    Issued US 9,300,569

    In one embodiment, a Transit Information Bloom Filter (TIBF) signal component is generated for use with a routing protocol control message, the TIBF signal component identifying at least one parent node for a corresponding routing topology. The TIBF signal component is encoded in a generated Bloom filter. The parameters of the generated Bloom filter are based at least on one parent node to be encoded and a desired false positive rate for the Bloom filter. The address for each parent node is…

    In one embodiment, a Transit Information Bloom Filter (TIBF) signal component is generated for use with a routing protocol control message, the TIBF signal component identifying at least one parent node for a corresponding routing topology. The TIBF signal component is encoded in a generated Bloom filter. The parameters of the generated Bloom filter are based at least on one parent node to be encoded and a desired false positive rate for the Bloom filter. The address for each parent node is also encoded in the Bloom filter.

    See patent
  • Mesh network addressing

    Issued US 9,300,581

    In embodiments of mesh network addressing for duplicate address detection, an end device of the mesh network can generate an address identifier that includes an address and time-based information associated with the end device, which is attached to a router device for communication in the mesh network. The address identifier is maintained by the router device as a tuple state of the end device. The end device or the router device can initiate an address query requesting that mesh network…

    In embodiments of mesh network addressing for duplicate address detection, an end device of the mesh network can generate an address identifier that includes an address and time-based information associated with the end device, which is attached to a router device for communication in the mesh network. The address identifier is maintained by the router device as a tuple state of the end device. The end device or the router device can initiate an address query requesting that mesh network devices in the mesh network having a designated address respond with the tuple state that corresponds to the designated address. The end device or router device receives the tuple state of mesh network devices having the designated address in response to the address query, and can then detect a duplicate address of a mesh network device based on the time based information.

    See patent
  • Control loop control using broadcast channel to communicate with a node under attack

    Issued US 9,294,488

    In one embodiment, a control loop control using a broadcast channel may be used to communicate with a node under attack. A management device may receive data indicating that one or more nodes in a computer network are under attack. The management device may then determine that one or more intermediate nodes are in proximity to the one or more nodes under attack, and communicate an attack-mitigation packet to the one or more nodes under attack by using the one or more intermediate nodes to relay…

    In one embodiment, a control loop control using a broadcast channel may be used to communicate with a node under attack. A management device may receive data indicating that one or more nodes in a computer network are under attack. The management device may then determine that one or more intermediate nodes are in proximity to the one or more nodes under attack, and communicate an attack-mitigation packet to the one or more nodes under attack by using the one or more intermediate nodes to relay the attack-mitigation packet to the one or more nodes under attack.

    See patent
  • Quarantine-based mitigation of effects of a local DoS attack

    Issued US 9,286,473

    In one embodiment, techniques are shown and described relating to quarantine-based mitigation of effects of a local DoS attack. A management device may receive data indicating that one or more nodes in a shared-media communication network are under attack by an attacking node. The management device may then communicate a quarantine request packet to the one or more nodes under attack, the quarantine request packet providing instructions to the one or more nodes under attack to alter their…

    In one embodiment, techniques are shown and described relating to quarantine-based mitigation of effects of a local DoS attack. A management device may receive data indicating that one or more nodes in a shared-media communication network are under attack by an attacking node. The management device may then communicate a quarantine request packet to the one or more nodes under attack, the quarantine request packet providing instructions to the one or more nodes under attack to alter their frequency hopping schedule without allowing the attacking node to learn of the altered frequency hopping schedule.

    See patent
  • Dynamic multicast mode selection in a communication network

    Issued US 9,288,066

    In one embodiment, a network device selectively operates according to a sparse multicast mode where the network device stores individual devices interested in one or more multicast groups and distributes corresponding multicast group traffic based on the individual devices. Alternatively, the network device selectively operates according to a dense multicast mode where the network device maintains a list of the one or more multicast groups in which at least one device is interested and…

    In one embodiment, a network device selectively operates according to a sparse multicast mode where the network device stores individual devices interested in one or more multicast groups and distributes corresponding multicast group traffic based on the individual devices. Alternatively, the network device selectively operates according to a dense multicast mode where the network device maintains a list of the one or more multicast groups in which at least one device is interested and distributes corresponding multicast group traffic through broadcasting. By determining one or more resource-related characteristics, the network device may then select between operation in the sparse multicast mode and the dense multicast mode based on the resource-related characteristics.

    See patent
  • Efficient network discovery in frequency hopping networks

    Issued US 9,281,865

    In one embodiment, a device in a frequency hopping communication network transmits responsive beacon messages based on adaptive types of responsive beacon message transmission based on a number of received beacon requests within a given time period: the number below a threshold results in synchronized unicast messages; the number above the threshold results in unsynchronized broadcast messages. In another embodiment, the device suppresses unsolicited beacon message transmission based on a…

    In one embodiment, a device in a frequency hopping communication network transmits responsive beacon messages based on adaptive types of responsive beacon message transmission based on a number of received beacon requests within a given time period: the number below a threshold results in synchronized unicast messages; the number above the threshold results in unsynchronized broadcast messages. In another embodiment, the device suppresses unsolicited beacon message transmission based on a density-aware redundancy count of other unsolicited beacon message transmissions from neighboring devices. In another embodiment, the device may transmit unsolicited beacon messages according to an adaptive interval based on stability of the network. In another embodiment, the device may suppress transmission of a beacon request to join the communication network based on a density-aware redundancy count of other beacon requests from neighboring devices, and transmits beacon requests at an adaptive interval that increases in response to each unanswered beacon request.

    See patent
  • Adaptive reoptimization rate for unstable network topologies

    Issued US 9,277,482

    In one embodiment, the network stability of a communication network is determined based on one or more network metrics related to stability, and then based on the network stability, a particular frequency at which to perform route reoptimization is determined, where the frequency inversely corresponds to the network stability. As such, distributed route reoptimization is triggered in the communication network at the adaptively determined frequency.

    See patent
  • Dynamic multi-path forwarding for shared-media communication networks

    Issued US 9,276,845

    In one embodiment, a quality of one or more links of a particular node in a communication network may be determined, and then whether the quality of the one or more links is below a threshold may also be determined. In response to determining that the quality of at least one of the one or more links is above the threshold, a select one of the at least one of the one or more links with quality above the threshold may be utilized for communication with the particular node. Conversely, in response…

    In one embodiment, a quality of one or more links of a particular node in a communication network may be determined, and then whether the quality of the one or more links is below a threshold may also be determined. In response to determining that the quality of at least one of the one or more links is above the threshold, a select one of the at least one of the one or more links with quality above the threshold may be utilized for communication with the particular node. Conversely, in response to determining that the quality of each of the one or more links is below the threshold, multi-path forwarding over a plurality of links of the particular node may be utilized for communication with the particular node.

    See patent
  • Diverse paths using a single source route in computer networks

    Issued US 9,270,584

    In one embodiment, a source device determines a source route from itself to a destination device in a computer network, and forwards a first packet on the source route with the source route included within the first packet. In addition, the source device generates a second packet with the source route included within the second packet, the second packet also including an indication to cause one or more of a plurality of transit devices to forward the second packet to a reachable 1-hop neighbor…

    In one embodiment, a source device determines a source route from itself to a destination device in a computer network, and forwards a first packet on the source route with the source route included within the first packet. In addition, the source device generates a second packet with the source route included within the second packet, the second packet also including an indication to cause one or more of a plurality of transit devices to forward the second packet to a reachable 1-hop neighbor of a device in the source route two hops away from the respective transit device. The source device may then forward the second packet itself, as do one the one or more transit devices on a diverse path based on the source route, to a particular reachable 1-hop neighbor of a particular device in the source route two hops away from the source (or transit) device.

    See patent
  • Overlaying receive schedules for energy-constrained devices in channel-hopping networks

    Issued US 9,246,845

    In one embodiment, a time at which a first device in a frequency-hopping communication network is expected to transmit a data message is determined. A first schedule is then generated based on the determined time, and the first schedule is overlaid on a frequency-hopping schedule for a second device in the network. The first schedule defines a first timeslot during which the second device listens for the data message, while the frequency-hopping schedule defines second timeslots during which…

    In one embodiment, a time at which a first device in a frequency-hopping communication network is expected to transmit a data message is determined. A first schedule is then generated based on the determined time, and the first schedule is overlaid on a frequency-hopping schedule for a second device in the network. The first schedule defines a first timeslot during which the second device listens for the data message, while the frequency-hopping schedule defines second timeslots during which the second device listens for data messages from other devices in the network. Notably, a duration of the first timeslot is greater than respective durations of the second timeslots.

    See patent
  • Full-duplex capacity allocation for OFDM-based communication

    Issued US 9,240,913

    In one embodiment, device determines a quantity of subcarriers available for data frame transmission and data frame receipt based on information included in an acknowledgement data frame. The device transmits a first data frame over at least one of the subcarriers and includes information associated with one or more additional data frames pending transmission. The device then receives a second data frame, subsequent to transmission of the first data frame, and determines a quantity of…

    In one embodiment, device determines a quantity of subcarriers available for data frame transmission and data frame receipt based on information included in an acknowledgement data frame. The device transmits a first data frame over at least one of the subcarriers and includes information associated with one or more additional data frames pending transmission. The device then receives a second data frame, subsequent to transmission of the first data frame, and determines a quantity of subcarriers available for transmission of the one or more additional data frames pending transmission based on the information included in the second data frame.

    See patent
  • Fast frequency-hopping schedule recovery

    Issued US 9,236,904

    In one embodiment, a device determines a need to resynchronize a broadcast and unicast frequency-hopping schedules on its network interface. In response to the need, the device may solicit the broadcast schedule from one or more neighbor devices having the synchronized broadcast schedule, and then establishes the unicast schedule for the network interface using communication during the synchronized broadcast schedule.

    See patent
  • Proactive timer-based local repair path communication in reactive routing networks

    Issued US 9,232,458

    In one embodiment, an intermediate device may determine a source route in use from a source to a destination in a reactive routing computer network, and may also determine a request to provide local repair for the source route for duration of a timer set by the source. In response to the request (e.g., and in response to a poor/failed connection), the device may discover a local repair path based on a limited-scope discovery, and maintains the local repair path for the source route until…

    In one embodiment, an intermediate device may determine a source route in use from a source to a destination in a reactive routing computer network, and may also determine a request to provide local repair for the source route for duration of a timer set by the source. In response to the request (e.g., and in response to a poor/failed connection), the device may discover a local repair path based on a limited-scope discovery, and maintains the local repair path for the source route until expiration of the timer.

    See patent
  • Feedback-based tuning of control plane traffic by proactive user traffic observation

    Issued US 9,225,616

    In one embodiment, a management device may determine whether user traffic in a computer network is suffering from insufficient network resources. In response to user traffic suffering from insufficient network resources, the device may then trigger the computer network to reduce control plane traffic. In another embodiment, a network device may transmit control plane traffic into a computer network at a first rate. In response to receiving instructions to reduce control plane traffic due to…

    In one embodiment, a management device may determine whether user traffic in a computer network is suffering from insufficient network resources. In response to user traffic suffering from insufficient network resources, the device may then trigger the computer network to reduce control plane traffic. In another embodiment, a network device may transmit control plane traffic into a computer network at a first rate. In response to receiving instructions to reduce control plane traffic due to user traffic suffering from insufficient network resources, the device may then transmit control plane traffic into the computer network at a reduced second rate.

    See patent
  • Fast reroute using different frequency-hopping schedules

    Issued US 9,225,589

    In one embodiment, a primary node in a shared-media communication network is selected by a node toward a destination. In response to determining the primary node, the node determines a frequency-hopping schedule of the primary node. One or more backup nodes for the primary nodes are then determined based on a frequency-hopping schedule diversity between the primary node and the one or more backup nodes.

    See patent
  • Centrally driven performance analysis of low power and Lossy Networks

    Issued US 9,218,216

    In one embodiment, a centralized device for a computer network divides the computer network into one or more regions for which performance is to be measured, and selects one or more nodes within each respective region of the one or more regions. The centralized device may then send a performance measurement request (PMR) to the selected node(s) for each region, and receives measured performance reports from the selected node(s) for each region in response to the PMR. Accordingly, based on the…

    In one embodiment, a centralized device for a computer network divides the computer network into one or more regions for which performance is to be measured, and selects one or more nodes within each respective region of the one or more regions. The centralized device may then send a performance measurement request (PMR) to the selected node(s) for each region, and receives measured performance reports from the selected node(s) for each region in response to the PMR. Accordingly, based on the measured performance reports, the centralized device may then adjust at least one of either the divided regions or the selected node(s) for one or more of the one or more regions, e.g., for future PMRs.

    See patent
  • Mintree-based routing in highly constrained networks

    Issued US 9,219,682

    In one embodiment, a capable node in a computer network may host a path computation element, receive one or more neighborhood discovery messages including neighborhood information from a plurality of nodes in the computer network, and compute a minimum spanning tree (MinTree) for the computer network based on the neighborhood information. The MinTree may divide the plurality of nodes in the computer network into a first subset of routing nodes and a second subset of host nodes. The first subset…

    In one embodiment, a capable node in a computer network may host a path computation element, receive one or more neighborhood discovery messages including neighborhood information from a plurality of nodes in the computer network, and compute a minimum spanning tree (MinTree) for the computer network based on the neighborhood information. The MinTree may divide the plurality of nodes in the computer network into a first subset of routing nodes and a second subset of host nodes. The first subset of routing nodes may form one or more interconnected paths of routing nodes within the MinTree, and each host node within the second subset of host nodes may be located within one hop of at least one routing node. The capable node may then communicate a MinTree message to the plurality of nodes in the computer network to build the MinTree by enabling routing on each routing node.

    See patent
  • Multiple topology routing architecture in computer networks

    Issued US 9,172,613

    In a multiple interface, low power and lossy network comprising a plurality of nodes, a low transmission power and medium transmission power topology are defined for the network and a channel-hopping schedule is defined for the devices operating in each topology. A sender determines that data is capable of being transmitted via a link on the low transmission power topology. The sender determines the transmission parameters for the transmission of the data over the link on the low transmission…

    In a multiple interface, low power and lossy network comprising a plurality of nodes, a low transmission power and medium transmission power topology are defined for the network and a channel-hopping schedule is defined for the devices operating in each topology. A sender determines that data is capable of being transmitted via a link on the low transmission power topology. The sender determines the transmission parameters for the transmission of the data over the link on the low transmission power topology and determines a low transmission power channel for transmission of the data. The sender transmits the determined channel and the transmission parameters to the receiver. The sender transmits the data via the determined channel in the low transmission power topology.

    See patent
  • Optimizing throughput of data frames in orthogonal frequency division multiplexing (OFDM) communication networks

    Issued US 9,166,845

    In one embodiment, a device maintains a predetermined number of high-priority subcarriers for use in communicating high-priority data frames and a predetermined number of low-priority subcarriers for use in communicating low-priority data frames. A data frame is received and a data frame priority is determined for the data frame. If the data frame is determined to be a low-priority data frame, a minimum number of subcarriers, from the low-priority subcarriers, required for communication of the…

    In one embodiment, a device maintains a predetermined number of high-priority subcarriers for use in communicating high-priority data frames and a predetermined number of low-priority subcarriers for use in communicating low-priority data frames. A data frame is received and a data frame priority is determined for the data frame. If the data frame is determined to be a low-priority data frame, a minimum number of subcarriers, from the low-priority subcarriers, required for communication of the data frame is determined and the data frame is communicated using the minimum number of subcarriers. If the data frame is determined to be a high-priority data frame, a maximum number of subcarriers available, including the high-priority subcarriers and the low-priority subcarriers, is determined and the data frame is communicated using the maximum number of subcarriers.

    See patent
  • Seamless multipath retransmission using source-routed tunnels

    Issued US 9,154,370

    In one embodiment, a device receives a destination unreachable message originated by a particular node along a first source route, the message carrying an encapsulated packet as received by the particular node. In response, the device may determine a failed link along the first source route based on a tunnel header and the particular node. Once determining an alternate source route without the failed link, the device may re-encapsulate and re-transmit the original packet on an alternate source…

    In one embodiment, a device receives a destination unreachable message originated by a particular node along a first source route, the message carrying an encapsulated packet as received by the particular node. In response, the device may determine a failed link along the first source route based on a tunnel header and the particular node. Once determining an alternate source route without the failed link, the device may re-encapsulate and re-transmit the original packet on an alternate source route with a new tunnel header indicating the alternate source route (e.g., and a new hop limit count for the tunnel header and an adjusted hop limit count in the original packet).

    See patent
  • Maintained message delivery during routing domain migration

    Issued US 9,154,407

    In one embodiment, an ingress device of a first routing domain in a computer network buffers received packets, and in response to receiving a request from a particular node indicating that the particular node has migrated from the first routing domain to a second routing domain, determines how to reach the particular node in the second routing domain, and forwards the buffered received packets to the particular node in the second routing domain, accordingly. In another embodiment, a device in…

    In one embodiment, an ingress device of a first routing domain in a computer network buffers received packets, and in response to receiving a request from a particular node indicating that the particular node has migrated from the first routing domain to a second routing domain, determines how to reach the particular node in the second routing domain, and forwards the buffered received packets to the particular node in the second routing domain, accordingly. In another embodiment, a device in the first routing domain migrates from the first routing domain to a second routing domain, and determines its new IP address. The device may then send a request to the first ingress router to forward buffered packets for the device to the second routing domain at the new IP address, and may thus receive buffered packets forwarded from the first ingress router at the device in the second routing domain.

    See patent
  • Managing host routes for local computer networks with a plurality of field area routers

    Issued US 9,130,863

    In one embodiment, a particular field area router (FAR), in a local computer network (e.g., a mesh network) having a plurality of FARs, advertises a common subnet prefix assigned to the local computer network into a global computer network. Each of the plurality of FARs of the local computer network is configured to accept any traffic destined to the local computer network, and a tunnel overlay is built among the plurality of FARs. Upon receiving a packet at the particular FAR destined to a…

    In one embodiment, a particular field area router (FAR), in a local computer network (e.g., a mesh network) having a plurality of FARs, advertises a common subnet prefix assigned to the local computer network into a global computer network. Each of the plurality of FARs of the local computer network is configured to accept any traffic destined to the local computer network, and a tunnel overlay is built among the plurality of FARs. Upon receiving a packet at the particular FAR destined to a particular device in the local computer network, and in response to the particular FAR not having a host route to the particular device, it forwards the packet on the tunnel overlay to another of the plurality of FARs of the local computer network.

    See patent
  • Delay budget based forwarding in communication networks

    Issued US 9,124,482

    In one embodiment, certain nodes in a computer network maintain a plurality of routing topologies, each associated with a different corresponding delay (e.g., dynamically adjusted). Upon receiving a packet with an indicated delay budget at a particular node, the node updates the delay budget based on an incurred delay up to and including the particular node since the indicated delay budget was last updated, and selects a particular routing topology on which to forward the packet based on the…

    In one embodiment, certain nodes in a computer network maintain a plurality of routing topologies, each associated with a different corresponding delay (e.g., dynamically adjusted). Upon receiving a packet with an indicated delay budget at a particular node, the node updates the delay budget based on an incurred delay up to and including the particular node since the indicated delay budget was last updated, and selects a particular routing topology on which to forward the packet based on the updated delay budget and the corresponding routing topology delays. The packet may then be forwarded with the updated delay budget on the selected routing topology, accordingly.

    See patent
  • Managing grey zones of unreachable nodes in computer networks

    Issued US 9,118,539

    In one embodiment, a node (e.g., a root-node) of a currently known directed acyclic graph (DAG) topology of a computer network can identify a sub-DAG of one or more nodes that are unreachable. The node can further determine a scope of the unreachable nodes of the sub-DAG and tunnel a redirected message to a reachable node of the DAG topology that is adjacent to at least one of the unreachable nodes of the sub-DAG. The redirected message may cause the reachable node to distribute the redirected…

    In one embodiment, a node (e.g., a root-node) of a currently known directed acyclic graph (DAG) topology of a computer network can identify a sub-DAG of one or more nodes that are unreachable. The node can further determine a scope of the unreachable nodes of the sub-DAG and tunnel a redirected message to a reachable node of the DAG topology that is adjacent to at least one of the unreachable nodes of the sub-DAG. The redirected message may cause the reachable node to distribute the redirected message to one or more of the unreachable nodes of the sub-DAG based on the scope.

    See patent
  • Proactive link-estimation in reactive routing networks

    Issued US 9,119,130

    In one embodiment, a node in a computer network may receive one or more reactive routing route requests (RREQs) originated by an originating node, and may then identify one or more links that provide routes to the originating node based on the RREQs. The node may then determine one or more particular links within the one or more links for which to perform proactive link-estimation, and then perform proactive link-estimation on the one or more particular links. Optionally, the node may also…

    In one embodiment, a node in a computer network may receive one or more reactive routing route requests (RREQs) originated by an originating node, and may then identify one or more links that provide routes to the originating node based on the RREQs. The node may then determine one or more particular links within the one or more links for which to perform proactive link-estimation, and then perform proactive link-estimation on the one or more particular links. Optionally, the node may also maintain a number of the particular links that were subject to proactive link-estimation for a period of time.

    See patent
  • Routing messages in a computer network using deterministic and probabilistic source routes

    Issued US 9,112,805

    In one embodiment, a data packet message is provided which includes a routing header configured to accommodate both a deterministic source route and a probabilistic source route for encoding a nodal source route. The nodal source route is selectively encoded with one or both of a deterministic source route and a probabilistic source route based upon one or more predetermined criteria.

    See patent
  • Efficient admission control for low power and lossy networks

    Issued US 9,100,305

    In one embodiment, a centralized network management server (NMS) determines a network state of a low power and lossy network (LLN) based on resource utilization due to traffic in the LLN. The NMS also determines an admission state based on the network state, and admission control (network-wide and/or localized control) based on the admission state. As such, the centralized NMS can then administer the admission control for all nodes in the LLN, where network-wide control comprises a single…

    In one embodiment, a centralized network management server (NMS) determines a network state of a low power and lossy network (LLN) based on resource utilization due to traffic in the LLN. The NMS also determines an admission state based on the network state, and admission control (network-wide and/or localized control) based on the admission state. As such, the centralized NMS can then administer the admission control for all nodes in the LLN, where network-wide control comprises a single control command to all nodes in the LLN, and the nodes direct admission based on the control command, and where localized control comprises a request-response exchange between the nodes and the centralized NMS, and the NMS directs admission on a per-request basis.

    See patent
  • Diverse path forwarding through trial and error

    Issued US 9,094,324

    In one embodiment, a node determines an intention to transmit a diversely forwarded packet through a computer network, and as such, transmits a first version of the packet having a packet identifier (ID) and a first distinguisher value to a first next-hop node, and transmits a second version of the packet having the same packet ID and a second distinguisher value different from the first distinguisher value to a second next-hop node different from the first next-hop node. In another embodiment,…

    In one embodiment, a node determines an intention to transmit a diversely forwarded packet through a computer network, and as such, transmits a first version of the packet having a packet identifier (ID) and a first distinguisher value to a first next-hop node, and transmits a second version of the packet having the same packet ID and a second distinguisher value different from the first distinguisher value to a second next-hop node different from the first next-hop node. In another embodiment, a next-hop node that receives the packet determines whether any previously received packet at the next-hop node had a same packet ID and a different distinguisher value. In response to determining that no previously received packet has the same packet ID and different distinguisher value, the next-hop node stores the packet ID and the distinguisher value, and forwards the packet to a selected next-hop node.

    See patent
  • System and method for adjusting power used in reception in a wireless packet network

    Issued US 9,094,916

    A system and method allows devices to send and receive packets while using power to do so in a manner that responds to events, such as receipt or other identification of different parameters that control how packets are sent and received.

    See patent
  • Interleaving low transmission power and medium transmission power channels in computer networks

    Issued US 9,088,983

    In a multiple interface, low power and lossy network comprising a plurality of nodes, a low transmission power and medium transmission power topology are defined for the network and a channel-hopping schedule is defined for the devices operating in each topology. A sender determines that data is capable of being transmitted via a link on the low transmission power topology. The sender determines the transmission parameters for the transmission of the data over the link on the low transmission…

    In a multiple interface, low power and lossy network comprising a plurality of nodes, a low transmission power and medium transmission power topology are defined for the network and a channel-hopping schedule is defined for the devices operating in each topology. A sender determines that data is capable of being transmitted via a link on the low transmission power topology. The sender determines the transmission parameters for the transmission of the data over the link on the low transmission power topology and determines a low transmission power channel for transmission of the data. The sender transmits the determined channel and the transmission parameters to the receiver. The sender transmits the data via the determined channel in the low transmission power topology.

    See patent
  • Assisted traffic engineering for minimalistic connected object networks

    Issued US 9,083,627

    In one embodiment, a distributed intelligence agent (DIA), hosted on a border router that provides access for a computer network to a global computer network, determines a routing topology of the computer network, and also computes a traffic matrix for the computer network based on source and destination addresses of traffic traversing the DIA, the traffic matrix providing an estimate for an amount of traffic on each link of the routing topology. Accordingly, the DIA may determine one or more…

    In one embodiment, a distributed intelligence agent (DIA), hosted on a border router that provides access for a computer network to a global computer network, determines a routing topology of the computer network, and also computes a traffic matrix for the computer network based on source and destination addresses of traffic traversing the DIA, the traffic matrix providing an estimate for an amount of traffic on each link of the routing topology. Accordingly, the DIA may determine one or more portions of the routing topology for which traffic engineering (TE) should be applied based on a threshold for traffic loads on the links, and may notify one or more nodes in the computer network to change its respective current next-hop in the routing topology to an alternate next-hop based on a TE solution computed by the DIA.

    See patent
  • Scalable replay counters for network security

    Issued US 9,077,772

    In one embodiment, an authenticator in a communication network maintains a persistent authenticator epoch value that increments each time the authenticator restarts. The authenticator also maintains a persistent per-supplicant value for each supplicant of the authenticator, each per-supplicant value set to a current value of the authenticator epoch value each time the corresponding supplicant establishes a new security association with the authenticator. To communicate messages from the…

    In one embodiment, an authenticator in a communication network maintains a persistent authenticator epoch value that increments each time the authenticator restarts. The authenticator also maintains a persistent per-supplicant value for each supplicant of the authenticator, each per-supplicant value set to a current value of the authenticator epoch value each time the corresponding supplicant establishes a new security association with the authenticator. To communicate messages from the authenticator to a particular supplicant, each message uses a per-supplicant replay counter having a security association epoch counter and a message counter specific to the particular supplicant. In particular, the security association epoch counter for each message is set as a difference between the authenticator epoch value and the per-supplicant value for the particular supplicant when the message is communicated, while the message counter is incremented for each message communicated.

    See patent
  • System and method for providing route information

    Issued US 9,077,638

    A system and method changes a rate at which routing information is sent to increase it upon the detection of one or more events, maintaining the then current rate for an amount of time, or dropping it, otherwise.

    See patent
  • System and method for reducing power used for radio transmission and reception

    Issued US 9,078,212

    A system and method allows devices to send and receive packets while using power to do so in a manner that responds to events, such as receipt or other identification of different parameters that control how packets are sent and received.

    See patent
  • Sub-slotting to improve packet success rate in carrier sense multiple access networks

    Issued US 9,072,100

    In one embodiment, a communication device in a frequency hopping communication network determines an intention to forward a first packet in a particular timeslot of a frequency hopping sequence. As such, the device scans in receive mode for an initial portion of the particular timeslot on a particular frequency known to neighbors of the communication device for reaching the communication device. In response to determining that the communication device is receiving a second packet during the…

    In one embodiment, a communication device in a frequency hopping communication network determines an intention to forward a first packet in a particular timeslot of a frequency hopping sequence. As such, the device scans in receive mode for an initial portion of the particular timeslot on a particular frequency known to neighbors of the communication device for reaching the communication device. In response to determining that the communication device is receiving a second packet during the initial portion, the device remains in receive mode to receive a remainder of the second packet. Conversely, in response to not receiving the second packet during the initial portion, the device proceeds to transmit the first packet during a remainder of the particular timeslot.

    See patent
  • Multicast group assignment using probabilistic approximations

    Issued US 9,071,533

    In one embodiment, a source node (e.g., responsible node) determines a plurality of destination nodes of a message, and generates a probabilistic data structure that encodes each of the plurality of destination nodes without any false negatives and with zero or more false positives. The source node may then transmit the message with the probabilistic data structure toward the plurality of destination nodes, wherein nodes receiving the message interpret the probabilistic data structure to…

    In one embodiment, a source node (e.g., responsible node) determines a plurality of destination nodes of a message, and generates a probabilistic data structure that encodes each of the plurality of destination nodes without any false negatives and with zero or more false positives. The source node may then transmit the message with the probabilistic data structure toward the plurality of destination nodes, wherein nodes receiving the message interpret the probabilistic data structure to determine whether the receiving node is probabilistically one of the intended plurality of destination nodes.

    See patent
  • Building alternate routes in reactive routing networks

    Issued US 9,030,939

    In one embodiment, an intermediate node in a computer network may receive one or more reactive routing route requests (RREQs) from an originating node and, based on those RREQs, may build a first directed acyclic graph (DAG) in the computer network that may be rooted at the originating node. The intermediate node may then forward the RREQs towards a target node in the computer network. The intermediate node may then receive one or more reactive routing route responses (RREPs) from the target…

    In one embodiment, an intermediate node in a computer network may receive one or more reactive routing route requests (RREQs) from an originating node and, based on those RREQs, may build a first directed acyclic graph (DAG) in the computer network that may be rooted at the originating node. The intermediate node may then forward the RREQs towards a target node in the computer network. The intermediate node may then receive one or more reactive routing route responses (RREPs) from the target node. Based on those RREPs, the intermediate node may then build a second DAG in the computer network that may be rooted at the target node. The intermediate node may then forward the RREPs towards the originating node. In this manner, the intermediate node may then forward traffic from the originating node toward the target node according to the second DAG (with alternate routes to the target node).

    See patent
  • Overlaying independent unicast frequency hopping schedules with a common broadcast schedule

    Issued US 9,020,008

    In one embodiment, each device in a frequency hopping communication network independently determines its own local unicast listening schedule, and discovers a neighbor unicast listening schedule for each of its neighbors. The devices also synchronize to a common broadcast schedule for the network that simultaneously overlays a configured portion of all unicast listening schedules in the network. Accordingly, the device operate in a receive mode according to their local unicast listening…

    In one embodiment, each device in a frequency hopping communication network independently determines its own local unicast listening schedule, and discovers a neighbor unicast listening schedule for each of its neighbors. The devices also synchronize to a common broadcast schedule for the network that simultaneously overlays a configured portion of all unicast listening schedules in the network. Accordingly, the device operate in a receive mode according to their local unicast listening schedule and the common broadcast schedule during the overlaid configured portion, and in a transmit mode according to each neighbor unicast listening schedule and the common broadcast schedule during the overlaid configured portion depending upon a destination of transmitted traffic.

    See patent
  • Proactive source-based reverse path validation in computer networks

    Issued US 9,013,983

    In one embodiment, a network device may receive an indication of a particular future message time, and determines a path validation time that is prior to the particular future message time by an amount at least long enough to detect and report a route change of a path from the network device to a source of the particular future message, wherein the source utilizes the path in reverse to reach the network device for the particular future message. Accordingly, the network device sends, at the…

    In one embodiment, a network device may receive an indication of a particular future message time, and determines a path validation time that is prior to the particular future message time by an amount at least long enough to detect and report a route change of a path from the network device to a source of the particular future message, wherein the source utilizes the path in reverse to reach the network device for the particular future message. Accordingly, the network device sends, at the path validation time, a keepalive message on the path, where in response to a failure of the keepalive message on the path, the network device repairs the path to the source with a particular route change, and reports the particular route change to the source, e.g., such that in response, the source may transmit the particular future message on the changed path in reverse.

    See patent
  • Collecting power outage notifications in a frequency hopping communication network

    Issued US 9,001,676

    In one embodiment, a device in a frequency hopping communication network operate in a first mode according to a common broadcast schedule for the network that simultaneously overlays a first configured portion of all independently determined unicast listening schedules in the network. In response to determining a power outage condition, the device switches to operation in a power outage mode where the common broadcast schedule for the network in the power outage mode simultaneously overlays a…

    In one embodiment, a device in a frequency hopping communication network operate in a first mode according to a common broadcast schedule for the network that simultaneously overlays a first configured portion of all independently determined unicast listening schedules in the network. In response to determining a power outage condition, the device switches to operation in a power outage mode where the common broadcast schedule for the network in the power outage mode simultaneously overlays a second configured portion of all independently determined unicast listening schedules in the network, the second configured portion greater than the first configured portion. In one embodiment, the device broadcasts one or more power outage notifications (PONs) in response to determining the power outage condition as a reduction of a main power supply at the device. In another embodiment, the device receives a PON while powered as the power outage condition.

    See patent
  • Adapting extensible authentication protocol for layer 3 mesh networks

    Issued US 8,990,892

    Techniques are provided for adaptive routing of authentication packets in a network, such as a wireless mesh network. At an authenticated device in the network, an authentication packet is received over the network from a device that is seeking authentication. The authentication packet is encapsulated for transmission in Layer 3 packets over an Internet Protocol (IP) tunnel to an authenticator device associated in the network. Similarly, for an authentication packet encapsulated in Layer 3…

    Techniques are provided for adaptive routing of authentication packets in a network, such as a wireless mesh network. At an authenticated device in the network, an authentication packet is received over the network from a device that is seeking authentication. The authentication packet is encapsulated for transmission in Layer 3 packets over an Internet Protocol (IP) tunnel to an authenticator device associated in the network. Similarly, for an authentication packet encapsulated in Layer 3 packets from the authenticator device over the IP tunnel, the authentication packet is decapsulated from the Layer 3 packets and transmitted over the network to the device seeking authentication.

    See patent
  • Selective topology routing for distributed data collection

    Issued US 8,971,188

    In one embodiment, a device, such as a network management server, determines a traffic matrix of a mesh network, where the traffic matrix indicates an amount of traffic per type of traffic transitioning between the mesh network and a global computer network via one or more current root devices. One or more optimized root devices may then be selected for corresponding directed acyclic graphs (DAGs) based on the amount of traffic and type of traffic. As such, a DAG formation request may be…

    In one embodiment, a device, such as a network management server, determines a traffic matrix of a mesh network, where the traffic matrix indicates an amount of traffic per type of traffic transitioning between the mesh network and a global computer network via one or more current root devices. One or more optimized root devices may then be selected for corresponding directed acyclic graphs (DAGs) based on the amount of traffic and type of traffic. As such, a DAG formation request may be transmitted to the selected root devices, carrying a characteristic for a corresponding DAG to form by the respective selected root devices that indicates which one or more types of traffic correspond to the corresponding DAG.

    See patent
  • Timing re-synchronization with reduced communication energy in frequency hopping communication networks

    Issued US 8,964,762

    In one embodiment, a battery-operated communication device "quick-samples" a frequency hopping sequence at a periodic rate corresponding to a substantially low duty cycle, and is discovered by (e.g., attached to) a main-powered communication device. During a scheduled sample, the main-powered communication device transmits a control packet to be received by the battery-operated communication device, the control packet containing timing information and transmitted to account for worst-case clock…

    In one embodiment, a battery-operated communication device "quick-samples" a frequency hopping sequence at a periodic rate corresponding to a substantially low duty cycle, and is discovered by (e.g., attached to) a main-powered communication device. During a scheduled sample, the main-powered communication device transmits a control packet to be received by the battery-operated communication device, the control packet containing timing information and transmitted to account for worst-case clock drift error between the two devices. The battery-operated communication device responds to the control packet with a link-layer acknowledgment containing timing information from the battery-operated communication device. Accordingly, the two devices may re-synchronize their timing based on the timing information in the control packet and acknowledgment, respectively.

    See patent
  • Group key management and authentication schemes for mesh networks

    Issued US 8,959,607

    According to one embodiment, techniques are provided to enable secure communication among devices in a mesh network using a group temporal key. An authenticator device associated with a mesh network stores a pairwise master key for each of a plurality of devices in a mesh network upon authentication of the respective devices. Using the pairwise master key, the authenticator device initiates a handshake procedure with a particular device in the mesh network to mutually derive a pairwise temporal…

    According to one embodiment, techniques are provided to enable secure communication among devices in a mesh network using a group temporal key. An authenticator device associated with a mesh network stores a pairwise master key for each of a plurality of devices in a mesh network upon authentication of the respective devices. Using the pairwise master key, the authenticator device initiates a handshake procedure with a particular device in the mesh network to mutually derive a pairwise temporal key from the pairwise master key. The authenticator device encrypts and signs a group temporal key using the pairwise temporal key for the particular device and sends the group temporal key encrypted and signed with the pairwise temporal key to the particular device.

    See patent
  • Managing fate-sharing in shared-media communication networks

    Issued US 8,954,582

    In one embodiment, a management device receives one or more fate-sharing reports locally generated by one or more corresponding reporting nodes in a shared-media communication network, the fate-sharing reports indicating a degree of localized fate-sharing between one or more pairs of nodes local to the corresponding reporting nodes. The management device may then determine, globally from aggregating the fate-sharing reports, one or more fate-sharing groups indicating sets of nodes having a…

    In one embodiment, a management device receives one or more fate-sharing reports locally generated by one or more corresponding reporting nodes in a shared-media communication network, the fate-sharing reports indicating a degree of localized fate-sharing between one or more pairs of nodes local to the corresponding reporting nodes. The management device may then determine, globally from aggregating the fate-sharing reports, one or more fate-sharing groups indicating sets of nodes having a global degree of fate-sharing within the communication network. As such, the management device may then advertise the fate-sharing groups within the communication network, wherein nodes of the communication network are configured to select a plurality of next-hops that minimizes fate-sharing between the plurality of next-hops.

    See patent
  • Dynamic hopping sequence computation in channel hopping communication networks

    Issued US 8,948,229

    In one embodiment, a device in a channel hopping communication network independently maintains a slot counter, and computes a channel identification (ID) based on a function having inputs of i) a unique feature of the device, ii) a current slot of the slot counter, and iii) a set of possible channel IDs. Accordingly, the device configures its radio to receive on the computed channel ID for the respective current slot. In another embodiment, the device may determine, for a neighbor device, a…

    In one embodiment, a device in a channel hopping communication network independently maintains a slot counter, and computes a channel identification (ID) based on a function having inputs of i) a unique feature of the device, ii) a current slot of the slot counter, and iii) a set of possible channel IDs. Accordingly, the device configures its radio to receive on the computed channel ID for the respective current slot. In another embodiment, the device may determine, for a neighbor device, a current neighbor slot and unique neighbor feature, and correspondingly computes a neighbor channel ID based on the function using the unique neighbor feature, the current neighbor slot, and the set of possible channel IDs. As such, the device configures its radio to transmit on the computed neighbor channel ID for the respective current neighbor slot.

    See patent
  • Dynamic subcarrier utilization and intelligent transmission scheduling

    Issued US 8,942,301

    In one embodiment, a transmitting device monitors transmission activity of each of a plurality of subcarriers in a communication network, and determines a set of unutilized subcarriers of the plurality of subcarriers. As such, the transmitting device may then transmit a data frame on one or more of the unutilized subcarriers to a receiving device while transmission activity is present on one or more utilized subcarriers within the network. In another embodiment, the transmitting device may also…

    In one embodiment, a transmitting device monitors transmission activity of each of a plurality of subcarriers in a communication network, and determines a set of unutilized subcarriers of the plurality of subcarriers. As such, the transmitting device may then transmit a data frame on one or more of the unutilized subcarriers to a receiving device while transmission activity is present on one or more utilized subcarriers within the network. In another embodiment, the transmitting device may also determine timing information associated with the transmission activity, and may correspondingly schedule the transmitting to optimize network performance based on the timing information.

    See patent
  • Distributed node migration between routing domains

    Issued US 8,934,366

    In one embodiment, a device connected to a network receives at a network interface a first network size indicator for a first network and a second network size indicator for a second network. A difference between the first network size indicator and the second network size indicator is determined and a switching probability is calculated if the difference between the network size indicators is greater than a predetermined network size difference threshold. The device may then migrate from the…

    In one embodiment, a device connected to a network receives at a network interface a first network size indicator for a first network and a second network size indicator for a second network. A difference between the first network size indicator and the second network size indicator is determined and a switching probability is calculated if the difference between the network size indicators is greater than a predetermined network size difference threshold. The device may then migrate from the first network to the second network based on the switching probability.

    See patent
  • Reducing the impact of subcarrier quality evaluation

    Issued US 8,923,422

    In one embodiment, a device may select, based on an optimal tone map, a particular subcarrier for use when transmitting a data frame, the data frame to serve as a tone map request (TMREQ). The device may then populate one or more unused quality subcarriers of the TMREQ data frame other than the particular subcarrier with a well-known bit sequence, and transmits the TMREQ data frame to a receiving device to cause the receiving device to evaluate transmission quality of the one or more unused…

    In one embodiment, a device may select, based on an optimal tone map, a particular subcarrier for use when transmitting a data frame, the data frame to serve as a tone map request (TMREQ). The device may then populate one or more unused quality subcarriers of the TMREQ data frame other than the particular subcarrier with a well-known bit sequence, and transmits the TMREQ data frame to a receiving device to cause the receiving device to evaluate transmission quality of the one or more unused quality subcarriers based on the well-known bit sequence.

    See patent
  • On-demand pair-wise frequency-hopping synchronization

    Issued US 8,908,626

    In one embodiment, a device receives and stores a broadcast schedule, and may determine whether a neighbor unicast listening schedule is available for a neighboring device. If so, the device may transmit a data frame to the neighboring device pursuant to the neighbor unicast listening schedule. If a neighbor unicast listening schedule is not available, the device may transmit the data frame to the neighboring device pursuant to a broadcast schedule. Once the data frame is received by the…

    In one embodiment, a device receives and stores a broadcast schedule, and may determine whether a neighbor unicast listening schedule is available for a neighboring device. If so, the device may transmit a data frame to the neighboring device pursuant to the neighbor unicast listening schedule. If a neighbor unicast listening schedule is not available, the device may transmit the data frame to the neighboring device pursuant to a broadcast schedule. Once the data frame is received by the neighboring device, pursuant to the neighbor unicast listening schedule or the broadcast schedule, an acknowledgement may be received from the neighboring device, which may include an updated neighbor unicast listening schedule for that neighboring device.

    See patent
  • Density-based power outage notification transmission scheduling in frequency-hopping networks

    Issued US 8,908,536

    In one embodiment, a node may discover the density of neighboring nodes in a frequency-hopping communication network. In response to identifying a power outage condition, the node may also dynamically determine an initial power outage notification (PON) transmission protocol based on the density of neighboring nodes. The node may then communicate a first PON to a plurality of neighboring nodes according to the initial PON transmission protocol.

    See patent
  • Dynamic common broadcast schedule parameters for overlaying an independent unicast schedule

    Issued US 8,908,621

    In one embodiment, each device in a frequency hopping communication network operates according to a common broadcast schedule for the network that simultaneously overlays a configured portion of all independently determined unicast listening schedules in the network, wherein the overlaid configured portion is based on broadcast schedule parameters consisting of a first time spent for broadcast transmissions in each broadcast period and a second time between broadcast periods. By monitoring…

    In one embodiment, each device in a frequency hopping communication network operates according to a common broadcast schedule for the network that simultaneously overlays a configured portion of all independently determined unicast listening schedules in the network, wherein the overlaid configured portion is based on broadcast schedule parameters consisting of a first time spent for broadcast transmissions in each broadcast period and a second time between broadcast periods. By monitoring network characteristics relating to unicast traffic and broadcast traffic in the network, updated broadcast schedule parameters may then be determined based on the network characteristics. Operation of the common broadcast schedule may thus be updated with the updated broadcast schedule parameters, accordingly.

    See patent
  • On-demand medium to low transmission power channel switching in computer networks

    Issued US 8,891,588

    In a multiple interface, low power and lossy network comprising a plurality of nodes, a low transmission power and medium transmission power topology are defined for the network and a channel-hopping schedule is defined for the devices operating in each topology. A sender determines that data is capable of being transmitted via a link on the low transmission power topology. The sender determines the transmission parameters for the transmission of the data over the link on the low transmission…

    In a multiple interface, low power and lossy network comprising a plurality of nodes, a low transmission power and medium transmission power topology are defined for the network and a channel-hopping schedule is defined for the devices operating in each topology. A sender determines that data is capable of being transmitted via a link on the low transmission power topology. The sender determines the transmission parameters for the transmission of the data over the link on the low transmission power topology and determines a low transmission power channel for transmission of the data. The sender transmits the determined channel and the transmission parameters to the receiver. The sender transmits the data via the determined channel in the low transmission power topology.

    See patent
  • Reachability rate computation without link layer acknowledgments

    Issued US 8,885,501

    In one embodiment, a device in a computer network receives a particular packet associated with a transmission attempts value, the associated transmission attempts value indicative of a first number of times a transmitter has attempted to transmit the particular packet. In response, the device increases by one a stored successful attempts value stored at the device, the stored successful attempts value indicative of a second number of times the device has received the same particular packet. As…

    In one embodiment, a device in a computer network receives a particular packet associated with a transmission attempts value, the associated transmission attempts value indicative of a first number of times a transmitter has attempted to transmit the particular packet. In response, the device increases by one a stored successful attempts value stored at the device, the stored successful attempts value indicative of a second number of times the device has received the same particular packet. As such, a reachability rate of a link from the transmitter to the device may be determined based on comparing the associated transmission attempts value to the stored successful attempts value.

    See patent
  • Efficient rendezvous for distributed messages in frequency-hopping communication networks

    Issued US 8,879,604

    In one embodiment, a rendezvous request message is generated (e.g., by a sender) that specifies a channel C and a rendezvous time T for which a distributed message is to be transmitted in a frequency-hopping computer network. The rendezvous request message is then transmitted on one or more channels used in the computer network based on reaching a plurality of intended recipients of the distributed message with the rendezvous request message prior to rendezvous time T. Accordingly, the…

    In one embodiment, a rendezvous request message is generated (e.g., by a sender) that specifies a channel C and a rendezvous time T for which a distributed message is to be transmitted in a frequency-hopping computer network. The rendezvous request message is then transmitted on one or more channels used in the computer network based on reaching a plurality of intended recipients of the distributed message with the rendezvous request message prior to rendezvous time T. Accordingly, the distributed message is then transmitted on channel C at rendezvous time T. In another embodiment, a device receives a rendezvous request message, and in response to determining to honor the rendezvous request message, listens for the distributed message on channel C at rendezvous time T.

    See patent
  • Dynamic frame selection when requesting tone map parameters in mesh networks

    Issued US 8,879,613

    In a multiple interface, low power and lossy network comprising a plurality of nodes, a sender node dynamically selects a data packet for setting a transmission parameter request in response to determining that an age value for a set of transmission parameters associated with a recipient device has expired or is expiring. The sender node selects an desired data packet for sending a transmission parameter request and transmits the selected data packet to the recipient device. The sender node…

    In a multiple interface, low power and lossy network comprising a plurality of nodes, a sender node dynamically selects a data packet for setting a transmission parameter request in response to determining that an age value for a set of transmission parameters associated with a recipient device has expired or is expiring. The sender node selects an desired data packet for sending a transmission parameter request and transmits the selected data packet to the recipient device. The sender node receives a transmission parameter response from the recipient node comprising updated transmission parameters for that recipient node and then updates the current transmission parameters associated with the recipient node accordingly.

    See patent
  • Push-based short-cut requests within a directed acyclic graph

    Issued US 8,874,788

    In one embodiment, a root of a directed acyclic graph (DAG) may determine transmission of critical traffic from a first device to a second device in a computer network using the DAG, and may also determine a maximum tolerable delay of the critical traffic. As such, the root may compute, based on a known topology of the computer network, a constrained shortest path first (CSPF) point-to-point (P2P) path from the first device to the second device to meet the maximum tolerable delay. The root may…

    In one embodiment, a root of a directed acyclic graph (DAG) may determine transmission of critical traffic from a first device to a second device in a computer network using the DAG, and may also determine a maximum tolerable delay of the critical traffic. As such, the root may compute, based on a known topology of the computer network, a constrained shortest path first (CSPF) point-to-point (P2P) path from the first device to the second device to meet the maximum tolerable delay. The root may then inform the first device of the P2P path to the second device to cause the first device to use the P2P path for the critical traffic.

    See patent
  • Allowing a single transmitter to transmit multiple data frames in OFDM communication networks

    Issued US 8,867,329

    In one embodiment, a transmitting device may determine a first data frame to a first destination and a second data frame to a second destination, and may assign subcarriers in a non-overlapping arrangement to the first and second data frames. Once assigned, the transmitting device may augment a transmission physical (PHY) header with a destination and tone map tuple for each of the first and second destinations, and transmits the transmission with the first and second data frames simultaneously…

    In one embodiment, a transmitting device may determine a first data frame to a first destination and a second data frame to a second destination, and may assign subcarriers in a non-overlapping arrangement to the first and second data frames. Once assigned, the transmitting device may augment a transmission physical (PHY) header with a destination and tone map tuple for each of the first and second destinations, and transmits the transmission with the first and second data frames simultaneously on the assigned subcarriers.

    See patent
  • System and method for accepting information from routing messages into a list

    Issued US 8,867,544

    A system and method adds and manages entries on a list of entries of routing information to allow the top entry to be used for routing to a destination corresponding to the list. Costs of a wireless link may be a function of the success rate experienced on that wireless link.

    See patent
  • Dynamic keepalive parameters for reverse path validation in computer networks

    Issued US 8,862,774

    In one embodiment, a network device determines a path from itself to a source device in a computer network, where the source device utilizes the path in reverse to reach the network device. Based on determining a reliability of the path in reverse, the network device may dynamically adjust one or more keepalive parameters for keepalive messages sent on the path. Accordingly, the network device may then send keepalive messages on the path based on the dynamically adjusted keepalive parameters.

    See patent
  • Estimated transmission overhead (ETO) metrics for variable data rate communication links

    Issued US 8,861,390

    In one embodiment, an expected transmission count (ETX) link metric is computed for a link between a transmitter and a receiver in a communication network, the ETX representative of an expected number of transmissions necessary for a message to be successfully received by the receiver over the link, and a data rate of the link at which the ETX is computed is also determined. From these, an estimated transmission overhead (ETO) link metric for the link may be computed by dividing the ETX by the…

    In one embodiment, an expected transmission count (ETX) link metric is computed for a link between a transmitter and a receiver in a communication network, the ETX representative of an expected number of transmissions necessary for a message to be successfully received by the receiver over the link, and a data rate of the link at which the ETX is computed is also determined. From these, an estimated transmission overhead (ETO) link metric for the link may be computed by dividing the ETX by the data rate. In one embodiment, the data rate of the link may be adjusted based on the ETO (e.g., to minimize the ETO). In another embodiment, routes through the communication network may be selected based on ETO values along the route.

    See patent
  • Extendable frequency hopping timeslots in wireless networks

    Issued US 8,842,630

    In one embodiment, a wireless transmitting node in a frequency hopping wireless network may determine whether a packet can be transmitted within a particular timeslot of a frequency hopping sequence based on a length of the packet. If unable to transmit the packet within the particular timeslot, the transmitting node extends the particular timeslot into a subsequent timeslot to allow transmission of the packet within the extended timeslot at a frequency associated with the particular timeslot…

    In one embodiment, a wireless transmitting node in a frequency hopping wireless network may determine whether a packet can be transmitted within a particular timeslot of a frequency hopping sequence based on a length of the packet. If unable to transmit the packet within the particular timeslot, the transmitting node extends the particular timeslot into a subsequent timeslot to allow transmission of the packet within the extended timeslot at a frequency associated with the particular timeslot. Once the extended timeslot ends, the transmitting node and receiving node hop frequencies into the subsequent timeslot to synchronize with the rest of the network that already hopped at the conventional rate. In another embodiment, a wireless receiving node may also extend the particular timeslot into a subsequent timeslot to allow reception of a packet that would extend beyond the particular timeslot, and may hop frequencies upon expiration of the extended timeslot.

    See patent
  • Source routing convergence in constrained computer networks

    Issued US 8,837,277

    In one embodiment, a source routing device (e.g., root device) pre-computes diverse source-routed paths to one or more nodes in a computer network. Upon receiving a particular packet, the device forwards the particular packet on a source-routed first path of the pre-computed diverse paths. In the event the device implicitly detects failure of the first path, then it forwards a copy of the particular packet on a source-routed second path of the pre-computed diverse paths in response. In one…

    In one embodiment, a source routing device (e.g., root device) pre-computes diverse source-routed paths to one or more nodes in a computer network. Upon receiving a particular packet, the device forwards the particular packet on a source-routed first path of the pre-computed diverse paths. In the event the device implicitly detects failure of the first path, then it forwards a copy of the particular packet on a source-routed second path of the pre-computed diverse paths in response. In one embodiment, implicit failure detection comprises seeing a second (repeated) packet with the same identification within a certain time since the first packet, and the second packet is forwarded on the second path. In another embodiment, implicit failure detection comprises not seeing a link-layer acknowledgment returned or receiving an error notification from a node along the broken path, and a stored copy of the particular packet is forwarded on the second path.

    See patent
  • Maintained message delivery during routing domain migration

    Issued US 8,824,471

    In one embodiment, an ingress device of a first routing domain in a computer network buffers received packets, and in response to receiving a request from a particular node indicating that the particular node has migrated from the first routing domain to a second routing domain, determines how to reach the particular node in the second routing domain, and forwards the buffered received packets to the particular node in the second routing domain, accordingly. In another embodiment, a device in…

    In one embodiment, an ingress device of a first routing domain in a computer network buffers received packets, and in response to receiving a request from a particular node indicating that the particular node has migrated from the first routing domain to a second routing domain, determines how to reach the particular node in the second routing domain, and forwards the buffered received packets to the particular node in the second routing domain, accordingly. In another embodiment, a device in the first routing domain migrates from the first routing domain to a second routing domain, and determines its new IP address. The device may then send a request to the first ingress router to forward buffered packets for the device to the second routing domain at the new IP address, and may thus receive buffered packets forwarded from the first ingress router at the device in the second routing domain.

    See patent
  • Efficient use of dynamic host configuration protocol in low power and lossy networks

    Issued US 8,819,191

    In one embodiment, each of a plurality of devices in a computer network is configured to i) transmit a unicasted dynamic host configuration protocol (DHCP) solicit message to a neighbor device having a route to a border router as an assumed DHCP relay without regard to location of a DHCP server, and ii) operate as a DHCP relay to receive unicasted DHCP solicit messages and relay the solicit message to the border router of the network without regard to location of the DHCP server, and to relay a…

    In one embodiment, each of a plurality of devices in a computer network is configured to i) transmit a unicasted dynamic host configuration protocol (DHCP) solicit message to a neighbor device having a route to a border router as an assumed DHCP relay without regard to location of a DHCP server, and ii) operate as a DHCP relay to receive unicasted DHCP solicit messages and relay the solicit message to the border router of the network without regard to location of the DHCP server, and to relay a DHCP reply to a corresponding requestor device.

    See patent
  • Coordinated detection of a grey-hole attack in a communication network

    Issued US 8,806,633

    In one embodiment, a security device receives one or more first unique identifications of packets sent by a first device to a second device for which a corresponding acknowledgment was purportedly returned by the second device to the first device. The security device also receives one or more second unique identifications of packets received by the second device from the first device and acknowledged by the second device to the first device. By comparing the first and second unique…

    In one embodiment, a security device receives one or more first unique identifications of packets sent by a first device to a second device for which a corresponding acknowledgment was purportedly returned by the second device to the first device. The security device also receives one or more second unique identifications of packets received by the second device from the first device and acknowledged by the second device to the first device. By comparing the first and second unique identifications, the security device may then determine whether acknowledgments received by the first device were truly returned from the second device based on whether the first and second unique identifications exactly match.

    See patent
  • Authentication control in low-power lossy networks

    Issued US 8,806,573

    Techniques are provided for the controlled scheduling of the authentication of devices in a lossy network, such as a mesh network. An authenticator device that is configured to authenticate devices in a lossy network receives an authentication start message from a particular device to be authenticated. The authenticator device determines a schedule for engaging in an authentication procedure for the particular device based on an indication of current network utilization.

    See patent
  • System and method for managing a list of entries containing routing information

    Issued US 8,798,048

    A system and method adds and manages entries on a list of entries of routing information to allow the top entry to be used for routing to a destination corresponding to the list. Costs of a wireless link may be a function of the success rate experienced on that wireless link.

    See patent
  • Managing host routes for local computer networks with a plurality of field area routers

    Issued US 8,799,510

    In one embodiment, a particular field area router (FAR), in a local computer network (e.g., a mesh network) having a plurality of FARs, advertises a common subnet prefix assigned to the local computer network into a global computer network. Each of the plurality of FARs of the local computer network is configured to accept any traffic destined to the local computer network, and a tunnel overlay is built among the plurality of FARs. Upon receiving a packet at the particular FAR destined to a…

    In one embodiment, a particular field area router (FAR), in a local computer network (e.g., a mesh network) having a plurality of FARs, advertises a common subnet prefix assigned to the local computer network into a global computer network. Each of the plurality of FARs of the local computer network is configured to accept any traffic destined to the local computer network, and a tunnel overlay is built among the plurality of FARs. Upon receiving a packet at the particular FAR destined to a particular device in the local computer network, and in response to the particular FAR not having a host route to the particular device, it forwards the packet on the tunnel overlay to another of the plurality of FARs of the local computer network.

    See patent
  • Distributed group temporal key (GTK) state management

    Issued US 8,800,010

    In one embodiment, each security protocol supplicant in a computer network determines its group temporal key (GTK) state, and exchanges the GTK state with one or more neighbor supplicants in the computer network. Based on the exchange, a supplicant may determine whether any inconsistencies exist in its GTK state, and in response to any inconsistencies in the GTK state, may perform a GTK state synchronization with a security protocol authenticator by indicating to the authenticator what is…

    In one embodiment, each security protocol supplicant in a computer network determines its group temporal key (GTK) state, and exchanges the GTK state with one or more neighbor supplicants in the computer network. Based on the exchange, a supplicant may determine whether any inconsistencies exist in its GTK state, and in response to any inconsistencies in the GTK state, may perform a GTK state synchronization with a security protocol authenticator by indicating to the authenticator what is needed to resolve the inconsistent GTK state at the particular supplicant. In another embodiment, the authenticator, which is configured to not store per-supplicant GTK state, may transmit beacons containing GTK identifiers (IDs) of GTKs currently enabled on the authenticator, and also responds to supplicants having inconsistent GTK states with one or more needed GTKs as indicated by the supplicants.

    See patent
  • On-demand diverse path computation for limited visibility computer networks

    Issued US 8,743,768

    In one embodiment, a source device detects a packet flow that meets criteria for multi-path forwarding, and forwards a probe packet on a primary path from the source device to a destination device, the probe packet carrying an indication to cause a plurality of transit devices along the primary path to add their respective local neighbor topology to the forwarded probe packet, and also to cause the destination device to compute a diverse path from the primary path based on the accumulated local…

    In one embodiment, a source device detects a packet flow that meets criteria for multi-path forwarding, and forwards a probe packet on a primary path from the source device to a destination device, the probe packet carrying an indication to cause a plurality of transit devices along the primary path to add their respective local neighbor topology to the forwarded probe packet, and also to cause the destination device to compute a diverse path from the primary path based on the accumulated local neighbor topologies in the probe packet. Accordingly, the source device may receive a returned diverse path as computed by the destination device in response to the probe packet, and may thus forward the packet flow on the primary path and the diverse path from the source device to the destination device according to the multi-path forwarding.

    See patent
  • Congestion-based traffic shaping for distributed queuing in shared-media communication networks

    Issued US 8,699,333

    In one embodiment, a device in a shared-media communication network determines a priority of a packet to be queued at the device, and based on the priority determines a length of time the packet is allowed to be queued before being successfully transmitted. After attempting to successfully transmit the queued packet within the shared-media communication network, in response to reaching a threshold amount of the length of time without having successfully transmitted the queued packet, the device…

    In one embodiment, a device in a shared-media communication network determines a priority of a packet to be queued at the device, and based on the priority determines a length of time the packet is allowed to be queued before being successfully transmitted. After attempting to successfully transmit the queued packet within the shared-media communication network, in response to reaching a threshold amount of the length of time without having successfully transmitted the queued packet, the device may transmit a "shaping" request to one or more reachable neighbors in the shared-media communication network. Specifically, the shaping request is for a temporary reduction in bandwidth utilization by the reachable neighbors for traffic having a comparatively lesser priority than the priority of the packet.

    See patent
  • Link reliability metrics in communication networks

    Issued US 8,699,368

    In one embodiment, a transmitter in a communication network receives an indication of active transmission times of a receiver to which the transmitter attempts to reach with first transmissions, the active transmission times indicating respective times of second transmissions initiated by the receiver. Based on determining when the first transmissions occur, the transmitter may then compute a link reliability metric for a link from the transmitter to the receiver by excluding one or more of the…

    In one embodiment, a transmitter in a communication network receives an indication of active transmission times of a receiver to which the transmitter attempts to reach with first transmissions, the active transmission times indicating respective times of second transmissions initiated by the receiver. Based on determining when the first transmissions occur, the transmitter may then compute a link reliability metric for a link from the transmitter to the receiver by excluding one or more of the first transmissions from the indicated active transmission times of the second transmissions. In one embodiment, the active transmission times are in the past and the reliability metric excludes any first transmissions in the past during those times, while in another embodiment the active transmission times are scheduled in the future and the reliability metric does not include any first transmissions since the first transmissions may be scheduled to avoid the active transmission times.

    See patent
  • System and method for reducing power used for radio transmission and reception

    Issued US 8,681,671

    A system and method allows devices to send and receive packets while using power to do so in a manner that responds to events, such as receipt or other identification of different parameters that control how packets are sent and received.

    See patent
  • System and method for providing route information

    Issued US 8,670,325

    A system and method changes a rate at which routing information is sent to increase it upon the detection of one or more events, maintaining the then current rate for an amount of time, or dropping it, otherwise.

    See patent
  • Managing fate-sharing in shared-media communication networks

    Issued US 8,667,084

    In one embodiment, a management device receives one or more fate-sharing reports locally generated by one or more corresponding reporting nodes in a shared-media communication network, the fate-sharing reports indicating a degree of localized fate-sharing between one or more pairs of nodes local to the corresponding reporting nodes. The management device may then determine, globally from aggregating the fate-sharing reports, one or more fate-sharing groups indicating sets of nodes having a…

    In one embodiment, a management device receives one or more fate-sharing reports locally generated by one or more corresponding reporting nodes in a shared-media communication network, the fate-sharing reports indicating a degree of localized fate-sharing between one or more pairs of nodes local to the corresponding reporting nodes. The management device may then determine, globally from aggregating the fate-sharing reports, one or more fate-sharing groups indicating sets of nodes having a global degree of fate-sharing within the communication network. As such, the management device may then advertise the fate-sharing groups within the communication network, wherein nodes of the communication network are configured to select a plurality of next-hops that minimizes fate-sharing between the plurality of next-hops.

    See patent
  • Reduced topology routing in shared media communication networks

    Issued US 8,654,649

    In one embodiment, a particular node in a shared communication network determines a current path cost in a routing topology from itself to a root node via a current parent node. The particular node also determines a respective path cost from each reachable potential parent node of the particular node to the root node via each potential parent and a respective link metric to each potential parent node. A set of acceptable parent nodes are determined from the potential parent nodes that have a…

    In one embodiment, a particular node in a shared communication network determines a current path cost in a routing topology from itself to a root node via a current parent node. The particular node also determines a respective path cost from each reachable potential parent node of the particular node to the root node via each potential parent and a respective link metric to each potential parent node. A set of acceptable parent nodes are determined from the potential parent nodes that have a respective path cost that is less than the current path cost plus an acceptable cost increase, and also have a respective link metric that is within an acceptable range. By determining a respective number of child nodes for each acceptable parent node, the particular node may then select a new parent node based on giving preference to those having a greater respective number of child nodes.

    See patent
  • Dynamic directed acyclic graph (DAG) root bypass for computer networks

    Issued US 8,630,177

    In one embodiment, traffic flows through a root node of a primary directed acyclic graph (DAG) in a computer network are monitored to detect whether a particular traffic flow is above a path cost threshold. If so, then a corresponding source device may be instructed to cease using the primary DAG for the particular traffic flow, and specific action may be taken based on whether the particular traffic flow is point-to-point (P2P) or point-to-multipoint (P2MP). In particular, in response to the…

    In one embodiment, traffic flows through a root node of a primary directed acyclic graph (DAG) in a computer network are monitored to detect whether a particular traffic flow is above a path cost threshold. If so, then a corresponding source device may be instructed to cease using the primary DAG for the particular traffic flow, and specific action may be taken based on whether the particular traffic flow is point-to-point (P2P) or point-to-multipoint (P2MP). In particular, in response to the particular traffic flow being P2P, a source route may be computed and sent to the source device to cause the source device to use the source route for the particular traffic flow, while in response to the particular traffic flow being P2MP, the source device may be instructed to create a secondary DAG for the particular traffic flow with the source device as the secondary DAG root.

    See patent
  • Dynamic multi-path forwarding for shared-media communication networks

    Issued US 8,630,291

    In one embodiment, a quality of one or more links of a particular node in a communication network may be determined, and then whether the quality of the one or more links is below a threshold may also be determined. In response to determining that the quality of at least one of the one or more links is above the threshold, a select one of the at least one of the one or more links with quality above the threshold may be utilized for communication with the particular node. Conversely, in response…

    In one embodiment, a quality of one or more links of a particular node in a communication network may be determined, and then whether the quality of the one or more links is below a threshold may also be determined. In response to determining that the quality of at least one of the one or more links is above the threshold, a select one of the at least one of the one or more links with quality above the threshold may be utilized for communication with the particular node. Conversely, in response to determining that the quality of each of the one or more links is below the threshold, multi-path forwarding over a plurality of links of the particular node may be utilized for communication with the particular node.

    See patent
  • Timing re-synchronization with reduced communication energy in frequency hopping communication networks

    Issued US 8,619,789

    In one embodiment, a battery-operated communication device "quick-samples" a frequency hopping sequence at a periodic rate corresponding to a substantially low duty cycle, and is discovered by (e.g., attached to) a main-powered communication device. During a scheduled sample, the main-powered communication device transmits a control packet to be received by the battery-operated communication device, the control packet containing timing information and transmitted to account for worst-case clock…

    In one embodiment, a battery-operated communication device "quick-samples" a frequency hopping sequence at a periodic rate corresponding to a substantially low duty cycle, and is discovered by (e.g., attached to) a main-powered communication device. During a scheduled sample, the main-powered communication device transmits a control packet to be received by the battery-operated communication device, the control packet containing timing information and transmitted to account for worst-case clock drift error between the two devices. The battery-operated communication device responds to the control packet with a link-layer acknowledgment containing timing information from the battery-operated communication device. Accordingly, the two devices may re-synchronize their timing based on the timing information in the control packet and acknowledgment, respectively.

    See patent
  • Network management system scheduling for low power and lossy networks

    Issued US 8,612,583

    In one embodiment, a network management system (NMS) determines an intent to initialize a request-response exchange with a plurality of clients in a low power and lossy network (LLN). In response, the NMS adaptively schedules corresponding responses from the clients to distribute the responses across a period of time based on a network state of the LLN. Accordingly, requests may be generated by the NMS with an indication of a corresponding schedule to be used by the clients to respond, and…

    In one embodiment, a network management system (NMS) determines an intent to initialize a request-response exchange with a plurality of clients in a low power and lossy network (LLN). In response, the NMS adaptively schedules corresponding responses from the clients to distribute the responses across a period of time based on a network state of the LLN. Accordingly, requests may be generated by the NMS with an indication of a corresponding schedule to be used by the clients to respond, and transmitted into the LLN to solicit the responses, which are then received at the NMS according to the indicated schedule.

    See patent
  • Selective topology routing for distributed data collection

    Issued US 8,619,576

    In one embodiment, a device, such as a network management server, determines a traffic matrix of a mesh network, where the traffic matrix indicates an amount of traffic per type of traffic transitioning between the mesh network and a global computer network via one or more current root devices. One or more optimized root devices may then be selected for corresponding directed acyclic graphs (DAGs) based on the amount of traffic and type of traffic. As such, a DAG formation request may be…

    In one embodiment, a device, such as a network management server, determines a traffic matrix of a mesh network, where the traffic matrix indicates an amount of traffic per type of traffic transitioning between the mesh network and a global computer network via one or more current root devices. One or more optimized root devices may then be selected for corresponding directed acyclic graphs (DAGs) based on the amount of traffic and type of traffic. As such, a DAG formation request may be transmitted to the selected root devices, carrying a characteristic for a corresponding DAG to form by the respective selected root devices that indicates which one or more types of traffic correspond to the corresponding DAG.

    See patent
  • Lightweight storing mode for constrained computer networks

    Issued US 8,593,986

    In one embodiment, a management device, such as a root node, monitors Internet Protocol (IP) overhead (e.g., IP header sizes during source-routing or route table sizes) within a directed acyclic graph (DAG) in a computer network. If it is determined that the IP overhead is above a configured threshold, then in response, a trigger is initiated to have devices within the DAG label-switch downward traffic directed away from the root node within the DAG. In another embodiment, a device…

    In one embodiment, a management device, such as a root node, monitors Internet Protocol (IP) overhead (e.g., IP header sizes during source-routing or route table sizes) within a directed acyclic graph (DAG) in a computer network. If it is determined that the IP overhead is above a configured threshold, then in response, a trigger is initiated to have devices within the DAG label-switch downward traffic directed away from the root node within the DAG. In another embodiment, a device communicating within a DAG stores IP routes corresponding to upward traffic from the device directed toward a root of the DAG, and IP-routes upward traffic based on the IP routes. Conversely, the device also stores labels corresponding to downward traffic from the device directed away from the root of the DAG, and label-switches downward traffic based on the labels, accordingly.

    See patent
  • Method and apparatus to trigger DAG reoptimization in a sensor network

    Issued US 8,588,108

    In one embodiment, a probing technique allows a root node to determine whether to trigger reoptimization of a computer network represented by a directed acyclic graph (DAG) without injecting unnecessary traffic into the network. The root node may store and maintain information indicative of an ideal shape or topology of the DAG. During a normal DAG maintenance operation, the root node may transmit a DAG discovery request (probe request) that is configured to probe each node within the DAG for…

    In one embodiment, a probing technique allows a root node to determine whether to trigger reoptimization of a computer network represented by a directed acyclic graph (DAG) without injecting unnecessary traffic into the network. The root node may store and maintain information indicative of an ideal shape or topology of the DAG. During a normal DAG maintenance operation, the root node may transmit a DAG discovery request (probe request) that is configured to probe each node within the DAG for information used to determine a current topology of the DAG. In response, each node may record the information, e.g., routing and non-routing metrics, in a DAG discovery reply (probe reply) that is propagated to the root node. Upon receiving one or more replies, the root node may analyze the metrics to determine whether the current topology of the DAG deviates from the ideal DAG topology. The root node may thus determine DAG topology deviation upon probing at minimal cost. A number of algorithms may then be used to determine whether reoptimization, i.e., global repair, of the DAG is is required and, if so, the root node may dynamically trigger the global repair.

    See patent
  • System and method for computing cost metrics for wireless network links

    Issued US 8,571,030

    A system and method adds and manages entries on a list of entries of routing information to allow the top entry to be used for routing to a destination corresponding to the list. Costs of a wireless link may be a function of the success rate experienced on that wireless link.

    See patent
  • Diverse path forwarding through trial and error

    Issued US 8,559,442

    In one embodiment, a node determines an intention to transmit a diversely forwarded packet through a computer network, and as such, transmits a first version of the packet having a packet identifier (ID) and a first distinguisher value to a first next-hop node, and transmits a second version of the packet having the same packet ID and a second distinguisher value different from the first distinguisher value to a second next-hop node different from the first next-hop node. In another embodiment,…

    In one embodiment, a node determines an intention to transmit a diversely forwarded packet through a computer network, and as such, transmits a first version of the packet having a packet identifier (ID) and a first distinguisher value to a first next-hop node, and transmits a second version of the packet having the same packet ID and a second distinguisher value different from the first distinguisher value to a second next-hop node different from the first next-hop node. In another embodiment, a next-hop node that receives the packet determines whether any previously received packet at the next-hop node had a same packet ID and a different distinguisher value. In response to determining that no previously received packet has the same packet ID and different distinguisher value, the next-hop node stores the packet ID and the distinguisher value, and forwards the packet to a selected next-hop node.

    See patent
  • Dynamic allocation of context identifiers for header compression

    Issued US 8,553,688

    In one embodiment, routable traffic through one or more border routers between a local computer network and a global computer network is monitored in order to characterize use of one or more global prefixes of the traffic. A particular set of the global prefixes, up to a maximum number, that are most frequently used may be mapped into a set of context identifiers (IDs) having a shorter bit-length than the global prefixes. The context IDs may then be distributed into the local computer network…

    In one embodiment, routable traffic through one or more border routers between a local computer network and a global computer network is monitored in order to characterize use of one or more global prefixes of the traffic. A particular set of the global prefixes, up to a maximum number, that are most frequently used may be mapped into a set of context identifiers (IDs) having a shorter bit-length than the global prefixes. The context IDs may then be distributed into the local computer network, and the one or more border routers convert between the context IDs and the global prefixes, accordingly.

    See patent
  • Rapid network formation for low-power and lossy networks

    Issued US 8,472,348

    In one embodiment, a node joins a communication network, and in response to joining the network, operates in a rapid startup mode, wherein the node in rapid startup mode establishes network configurations rapidly by deemphasizing quality (optimality) of the network configurations. Subsequent to operating in the rapid startup mode (e.g., after some timer or explicit command), the node then operates in a robust mode, wherein the node in robust mode iteratively refines the network configurations…

    In one embodiment, a node joins a communication network, and in response to joining the network, operates in a rapid startup mode, wherein the node in rapid startup mode establishes network configurations rapidly by deemphasizing quality (optimality) of the network configurations. Subsequent to operating in the rapid startup mode (e.g., after some timer or explicit command), the node then operates in a robust mode, wherein the node in robust mode iteratively refines the network configurations to increase the quality of the network configurations.

    See patent
  • Method for low power radio operation in a wireless packet network

    Issued US 8,270,329

    A system and method allows devices to send and receive packets while using power to do so to the extent needed, thereby conserving power.

    See patent
  • System and method for accepting information from routing messages into a list

    Issued US 8,184,632

    A system and method adds and manages entries on a list of entries of routing information to allow the top entry to be used for routing to a destination corresponding to the list. Costs of a wireless link may be a function of the success rate experienced on that wireless link.

    See patent
  • System and method for adjusting power used in reception in a wireless packet network

    Issued US 8,175,073

    A system and method allows devices to send and receive packets while using power to do so in a manner that responds to events, such as receipt or other identification of different parameters that control how packets are sent and received.

    See patent
  • System and method for performing activities based on proximity

    Issued US 8,150,792

    A system and method applies events to a set of rules, and such rules can produce still other events that can be provided to the same or different set of rules. Rules may have attributes, and all rules or only those with attributes corresponding to an object may be stored for use with a device that has been added to, or is part of, the device.

    See patent
  • System and method for managing a list of entries containing routing information

    Issued US 8,085,768

    A system and method adds and manages entries on a list of entries of routing information to allow the top entry to be used for routing to a destination corresponding to the list. Costs of a wireless link may be a function of the success rate experienced on that wireless link.

    See patent
  • Method for low power radio operation in a wireless packet network

    Issued US 8,009,602

    A system and method allows devices to send and receive packets while using power to do so to the extent needed, thereby conserving power.

    See patent
  • System and method for adjusting power used in transmission in a wireless packet network

    Issued US 7,986,652

    A system and method allows devices to send and receive packets while using power to do so in a manner that responds to events, such as receipt or other identification of different parameters that control how packets are sent and received.

    See patent
  • System and method for low power radio operation in a wireless packet network

    Issued US 7,515,556

    A system and method allows devices to send and receive packets while using power to do so to the extent needed, thereby conserving power.

    See patent
  • 161 Issued Patents

    US Patent and Trademark Office

    Click above for complete list of USPTO-issued patents.

    See patent

Honors & Awards

  • ACM SenSys Test of Time Award

    Association for Computing Machinery (ACM)

  • Chairman's Choice Award - Excellence in Innovation & Execution

    John Chambers, Cisco Systems

  • Emerging Technologies All Star

    Cisco Systems

  • Product Security Champion

    John Chambers, Cisco Systems

  • UAA 25th Anniversary Men's Tennis Team

    Carnegie Mellon University

  • Frontiers of Engineering

    National Academy of Engineering

  • State Tennis Doubles Champion, Division II

    Ohio High School Athletic Association

Recommendations received

4 people have recommended Jonathan

Join now to view

More activity by Jonathan

View Jonathan’s full profile

  • See who you know in common
  • Get introduced
  • Contact Jonathan directly
Join to view full profile

Other similar profiles

Explore top content on LinkedIn

Find curated posts and insights for relevant topics all in one place.

View top content

Add new skills with these courses