US20170250856A1 - Utilizing Multiple Mesh Network Gateways in a Shared Access Network - Google Patents
Utilizing Multiple Mesh Network Gateways in a Shared Access Network Download PDFInfo
- Publication number
- US20170250856A1 US20170250856A1 US15/457,836 US201715457836A US2017250856A1 US 20170250856 A1 US20170250856 A1 US 20170250856A1 US 201715457836 A US201715457836 A US 201715457836A US 2017250856 A1 US2017250856 A1 US 2017250856A1
- Authority
- US
- United States
- Prior art keywords
- mesh
- network
- shared access
- access network
- nodes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 238000000034 method Methods 0.000 claims description 37
- 238000012545 processing Methods 0.000 claims description 19
- 230000006870 function Effects 0.000 claims description 13
- 230000005540 biological transmission Effects 0.000 claims description 5
- 238000004891 communication Methods 0.000 abstract description 37
- 230000008878 coupling Effects 0.000 abstract description 6
- 238000010168 coupling process Methods 0.000 abstract description 6
- 238000005859 coupling reaction Methods 0.000 abstract description 6
- 230000006872 improvement Effects 0.000 description 10
- 238000005192 partition Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 238000003860 storage Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 238000006424 Flood reaction Methods 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 3
- 238000004220 aggregation Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000005012 migration Effects 0.000 description 2
- 238000013508 migration Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 235000008694 Humulus lupulus Nutrition 0.000 description 1
- 101100510299 Oryza sativa subsp. japonica KIN7A gene Proteins 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000004557 technical material Substances 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/124—Shortest path evaluation using a combination of metrics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/22—Alternate routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/44—Distributed routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/40—Flow control; Congestion control using split connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/16—Gateway arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
- H04W84/22—Self-organising networks, e.g. ad-hoc networks or sensor networks with access to wired networks
Definitions
- the invention can be implemented in numerous ways, including as a process, an article of manufacture, an apparatus, a system, a composition of matter, and a computer readable medium such as a computer readable storage medium or a computer network wherein program instructions are sent over optical or electronic communication links.
- these implementations, or any other form that the invention may take, may be referred to as techniques.
- the order of the steps of disclosed processes may be altered within the scope of the invention.
- An exposition of one or more embodiments of the invention is provided in the Detailed Description.
- the Detailed Description includes an Introduction to facilitate the more rapid understanding of the remainder of the Detailed Description.
- the Introduction includes Illustrative Combinations that tersely summarize illustrative systems and methods in accordance with the concepts taught herein. As is discussed in more detail in the Conclusions, the invention encompasses all possible modifications and variations within the scope of the issued claims, which are appended to the very end of the issued patent.
- FIG. 1 illustrates selected details of an embodiment of a first architecture of a mesh network having multiple mesh gateway interfaces to multiple shared access networks.
- FIGS. 2A, 2B, and 2C illustrate selected details of an embodiment of a self-healing mesh network having a control protocol for assigning a dedicated broadcast server in each of one or more partitions of the mesh network.
- FIG. 3 illustrates selected details of an embodiment of a second architecture of a mesh network having multiple mesh gateway interfaces to a common shared access network.
- FIG. 4 illustrates selected details of hardware aspects of an embodiment of a node.
- FIG. 5 illustrates selected details of software aspects of an embodiment of a node.
- the invention can be implemented in numerous ways, including as a process, an article of manufacture, an apparatus, a system, a composition of matter, and a computer readable medium such as a computer readable storage medium or a computer network wherein program instructions are sent over optical or electronic communication links.
- these implementations, or any other form that the invention may take, may be referred to as techniques.
- the order of the steps of disclosed processes may be altered within the scope of the invention.
- Various embodiments use a mesh network acting as a virtual Ethernet switch.
- the mesh network includes multiple nodes operating as mesh Network Gateway Interfaces (mesh NGIs) enabled for communication with one or more shared access networks. Selectively coupling the multiple NGIs to the same shared access network provides redundancy and load balancing aimed at improving the reliability and performance of the network.
- mesh NGIs mesh Network Gateway Interfaces
- a first architecture is based on a gateway group and a designated broadcast server.
- a gateway group includes a plurality of NGIs enabled to communicate with a single shared access network. Members of the gateway group inter-communicate via a coordinating distributed protocol.
- a designated broadcast server from among the NGIs is elected by the NGIs to control entrance of broadcast packets into the mesh network from the shared access network. All other NGIs of the gateway group ignore broadcast packets from the shared access network, thus improving packet broadcast efficiency and reducing or eliminating the possibility of broadcast loops.
- a second architecture is based on a plurality of (physical) NGIs enabled to communicate with a single shared access network via a designated node in the shared access network.
- the designated node or Mesh Server (MS)
- MS Mesh Server
- the physical NGIs are operated with virtual mesh links to the MS.
- the virtual mesh links may be implemented as point-to-point tunnels.
- Embodiments according to the second architecture may be operated with a plurality of single shared access networks, each of the shared access networks having a respective designated MS operating as a virtual NGI.
- Embodiments taught herein are specifically designed for mesh networks, and conserve limited bandwidth and computation resources, in contrast to solutions used for wired networks that generally treat bandwidth and computation resources as plentiful.
- a Spanning Tree Protocol (STP) is often used in contexts having multiple interfaces/devices connected to a shared access network. STP blocks all but one interface/device (i.e. packets are not forwarded) and thus removes any possibility of forwarding loops among the interfaces to the shared network.
- STP also eliminates potential benefits of the multiple interfaces (such as load balancing and redundancy).
- throughput to a shared access network may be improved by link aggregation.
- link aggregation is restricted to port aggregation on a single physical device, while multiple mesh network couplings to a shared access network are on different physical devices, as each coupling is physically (and often geographically) distinct.
- geographical separation is used to reduce or eliminate interference between wireless communications.
- separation is used to reduce interfering communication paths traveled by traffic within the mesh.
- the mesh network may also further include multiple mesh NGIs that connect to one or more shared access networks. Selectively connecting the multiple NGIs to the same shared access network provides redundancy and load balancing aimed at improving the reliability and performance of the network. If more than one NGI is coupled to the same shared access network, then there exists a possibility of forwarding broadcast packets in loops, unnecessarily consuming network resources. Some embodiments detect possible loop forwarding and reduce or prevent the forwarding loops.
- traffic rerouting is provided to the NGI in the shared access network to which a source node has the best path even as path metrics change and different paths have the best metric at different times.
- the best path is associated with a metric such as hop-count, and the best path is a route having the smallest hop-count.
- a metric such as hop-count
- Other metrics for best path determination may be used based on implementation dependent criteria, as the techniques discussed elsewhere herein are independent of best path determination details.
- a mesh network deployed in a resort such that users access the mesh network wirelessly on the grounds of the resort.
- Traffic is forwarded via the mesh network to a central office of the resort having a wired connection to the Internet.
- the wired network includes several NGIs to avoid concentrating all traffic onto a single NGI (load balancing) and also for improved reliability (redundancy/failover).
- the multiple NGIs enable relatively higher bandwidth operation and relatively improved availability.
- Mesh Network Concept No. 1 Without special mechanisms in place, having multiple mesh NGIs connected to a single shared access network may cause broadcast loops, whereby a broadcast packet forwarded from the mesh network to the shared access network by one NGI would be forwarded back into the mesh by another NGI. Broadcast loops waste network resources, and may congest the network to be unable to deliver any useful data. Packets may also not be routed appropriately because the NGI/Client Interfaces may receive conflicting ideas as to whether a destination is inside or outside the mesh.
- the interface assumes that the source of the packet is on the shared access network rather than on the mesh, even though the packet may have been forwarded from the mesh by another interface and the packet source is in or is reachable through the mesh.
- Node An example of a node is an electronic device.
- Packet An example of a packet is that nodes communicate information to each other that is subdivided into packets.
- Link An example of a link is a conceptual representation of the ability of two (or more) nodes to communicate with each other.
- a link may be wired (the nodes being connected by a physical medium for carrying information such as electrical or optical interconnect) or wireless (the nodes being connected without a physical medium, e.g., via radio technology).
- Path/Route An example of a path/route is a sequence of one or more links.
- Path Metric An example of a path metric is a number that reflects the desirability of a path. For example, the number of links, e.g., the hop count of a path, is one possible metric. Paths with a lower hop count have advantages over paths with a higher hop count. The advantages include less resource usage (as there is reduced forwarding) and less likelihood of lost packets (as there are fewer chances for loss before packets reach respective destinations).
- Best Path An example of a best path is an ordered list of nodes that when transited (in order) by a packet result in an efficient traversal from a source to a destination, according to predetermined criteria. Since parameters and operating conditions vary over time, any best path is also a “known” best path; e.g. it is based on criteria evaluated at a particular point in time, and at a different point in time a different best path may be available. Best paths may also be considered to be “most nearly optimal” according to one or more metrics as measured with respect to a routing protocol responsible for determining the best paths.
- Network An example of a network is a set of nodes that are enabled to communicate with each other via any combination of wired and wireless links.
- Mesh Network An example of a mesh network is a set of nodes that self-organize into a multi-hop network. In some usage scenarios the mesh network has limited resources (e.g. available bandwidth, available computational power, and available energy).
- resources e.g. available bandwidth, available computational power, and available energy.
- Multi-Mesh Network An example of a multi-mesh network is a set of interconnected meshes appearing to operate as a single network from a perspective of a user of resources provided by the multi-mesh network.
- An example of a shared access network is a network such that a packet transmitted by any node is overheard by all other nodes in the network.
- An example implementation of such a network is an 802.3 LAN.
- Ingress Mesh An example of an ingress mesh is a mesh where a packet enters a multi-mesh.
- Egress Mesh An example of an egress mesh is a mesh where a packet exits (or leaves) a multi-mesh.
- An example of an ingress mesh node is a node where a packet enters a mesh; e.g. the node forwarding the packet from a non-mesh link onto a mesh link/network.
- Egress Mesh Node An example of an egress mesh node is a node where a packet exits a mesh; e.g. the node forwarding the packet from a mesh link onto a non-mesh link/network.
- Node An example of a mesh bridge is a node that is simultaneously participating in more than one mesh network at a time; e.g. the node is coupled to at least two mesh networks at once.
- Bridge nodes enable nodes connected on a first mesh (or that are part of the first mesh) to communicate with nodes connected on a second mesh (or that are part of the second mesh).
- (Mesh) Bridge Link An example of a mesh bridge link is a link between two bridge nodes (each being coupled to a respective mesh) used to forward traffic between the two meshes.
- Ingress Bridge Node An example of an ingress bridge node is the mesh bridge where a packet exits (or leaves) an ingress mesh.
- Egress Bridge Node An example of an egress bridge node is the mesh bridge where a packet enters an egress mesh.
- Mesh Portal An example of a mesh portal is a node that is part of a mesh network and is also connected to another (shared access) network.
- Mesh portals enable nodes connected to the mesh, or that are part of the mesh, to communicate with nodes that are part of the shared access network, or that may be reached through the shared access network.
- the mesh network appears to outside networks as a transparent layer-2 transport, i.e. a packet injected into the mesh at one portal exits the mesh at another portal unmodified.
- An example of an ingress mesh portal is the portal at which a packet enters a mesh, e.g., the portal that forwards the packet from a non-mesh link/network onto a mesh link/network.
- Egress Mesh Portal An example of an egress mesh portal is the portal at which a packet exits the mesh, e.g., the portal that forwards the packet from a mesh link/network onto a non-mesh link/network.
- An example of a mesh client interface is an interface (that is part of a node of a mesh network) for coupling to a client device.
- Mesh Network Gateway Interface An example of a mesh NGI is a node that is part of a mesh network (e.g., has an interface configured to be part of the mesh network) and is also connected to another network (e.g., has an interface configured to be on the other network).
- Mesh NGIs enable nodes connected to a mesh network, or that are part of the mesh, to communicate with nodes that are part of a shared access network, or that may be reached through the shared access network.
- the mesh network appears to outside networks as a transparent layer 2 transport: a packet injected into the mesh at one NGI exits the mesh at another NGI or Client Interface unmodified.
- An example of an ingress mess interface is an interface at which a packet enters a mesh, e.g., the interface that forwards the packet from a non-mesh link onto a mesh link/network.
- An example of an egress mesh interface is the interface at which a packet exits the mesh, e.g., the interface that forwards the packet from a mesh link onto a non-mesh link/network.
- Unicast An example of unicast is communication between two nodes.
- Broadcast An example of broadcast is communication from one node intended to reach a plurality of nodes.
- the plurality of nodes includes all nodes on a network.
- a broadcast may not reach all intended nodes (due to packet loss, for example).
- An example of a flood is a broadcast sent by a node that is in turn rebroadcast by every other node receiving the broadcast, thus potentially reaching all nodes in a network.
- Routing Protocol An example of a routing protocol is a set of mechanisms implemented on each node in a mesh network, wherein the mechanisms serve to discover information about the network and enable each node on the network to communicate with other nodes of the network, even when the other nodes are multiple hops away from the respective node.
- Path Accumulation An example of path accumulation is when each node forwarding a packet adds its respective address to the packet.
- the foregoing method implemented according to at least one of the first architecture (described elsewhere herein) and the second architecture (described elsewhere herein).
- a first embodiment comprising a method comprising communicating packet data between a self-organizing network and a shared access network via a group of network interface nodes, each node being a member of the self-organizing network and having a respective communication link with the shared access network; enabling network performance improvements; and wherein the network performance improvements comprise at least one of preventing broadcast loops between the self-organizing network and the shared access network, avoiding forwarding of more than one copy of a packet from the shared access network onto the self-organizing network, and routing a packet that specifies a source and a destination via a best path within the self-organizing network according to the source and the destination.
- the aforementioned embodiment further comprising executing a control protocol to enable the network performance improvements.
- the first embodiment wherein the shared access network is a wired network.
- the first embodiment wherein the communicating is in accordance with a traffic splitting operation.
- the foregoing embodiment wherein the traffic splitting operation is in accordance with a load-balancing objective.
- the first embodiment wherein the communicating comprises splitting traffic communicated between an endpoint accessible via the self-organizing network and an endpoint accessible via the shared access network between at least two of the communication links.
- the first embodiment wherein the communicating comprises splitting traffic communicated between an endpoint in the self-organizing network and an endpoint accessible via the shared access network between at least two of the communication links.
- the foregoing embodiment wherein the at least two of the communication links are terminated at distinct devices of at least one of the self-organizing network and the shared access network.
- the first embodiment wherein the communicating is in accordance with a failure recovery operation.
- the failure recovery operation comprises shifting traffic communicated between an endpoint in the self-organizing network and an endpoint accessible via the shared access network from a first one of the communication links to a second one of the communication links when the first one of the communication links fails.
- the first one and the second one of the communication links are terminated at distinct ports of at least one of the self-organizing network and the shared access network.
- the first embodiment wherein the group of network interface nodes is a gateway group, and each of the network interface nodes operates as a respective network gateway interface; the control protocol is a distributed control protocol executed on the gateway group; and the distributed control protocol comprises communicating control information between the network gateway interfaces.
- the foregoing embodiment comprising communicating data between the self-organizing network and another shared access network via another gateway group.
- each of the gateway groups are identified by unique gateway group identifiers.
- the first embodiment wherein the group of interface nodes is a gateway group communicating control information between each other via a distributed coordination protocol.
- the coordination protocol comprises selecting a member of the gateway group as a designated broadcast server.
- the designated broadcast server serves as an ingress mesh interface for broadcast packets entering the self-organizing network.
- interface nodes other than the designated broadcast server drop broadcast packets destined for any node of the self-organizing network.
- the foregoing embodiment further comprising forwarding a unicast packet from the shared access network to the self-organizing network.
- the designated broadcast server floods the unicast packet onto the self-organizing network.
- the unicast packet is a first unicast packet and further comprising determining state for the destination of the first unicast packet in response to information received from forwarding a second unicast packet from the destination to the source.
- the forwarding of the second unicast packet is after the flood of the first unicast packet.
- the first embodiment wherein the group of interface nodes is operated as a gateway group identified by a shared gateway group identifier.
- a designated broadcast server elected by the gateway group forwards broadcast packets from the shared access network to the self-organizing network.
- the first embodiment further comprising, in an ingress mesh network gateway interface node, inserting a list of egress mesh network gateway interface nodes into a control field of a broadcast packet before forwarding the broadcast packet onto the self-organizing network.
- the list comprises one entry per shared access network in communication with the self-organizing network.
- each respective entry corresponds to a best route from the ingress mesh network interface node to the shared access network reachable via the egress mesh network gateway interface node identified by the respective entry.
- a designated broadcast server is identified by the group of gateway interface nodes.
- the forwarding member transmits a synchronization packet to the designated broadcast server.
- the synchronization packet notifies the designated broadcast server that the forwarding member is going to forward the broadcast packet onto the shared access network.
- the designated broadcast server in response to the synchronization packet, omits forwarding the broadcast packet onto the self-organizing network.
- broadcast packet header list is populated with one entry per shared access network in communication with the self-organizing network.
- an ingress mesh network gateway interface node populates the broadcast packet header list.
- each member of the broadcast packet header list corresponds to a best route from the ingress mesh network gateway interface node to the shared access network reachable via the node identified by the respective list member.
- the first embodiment further comprising forwarding a broadcast packet from the self-organizing network to the shared access network.
- the foregoing embodiment wherein the forwarding of the broadcast packet is via a forwarding node, and the forwarding node records that the broadcast packet source is local to the self-organizing network.
- all network interface nodes except the forwarding node process the broadcast packet as if it were local to the shared access network.
- the foregoing embodiment wherein the processing is at least in part in response to the forwarding node record.
- the first embodiment wherein the shared access network is a first shared access network
- the group of network interface nodes is a first group of network interface nodes, and further comprising communicating packet data between the first shared access network and a second shared access network via one of the first group of network interface nodes and one of a second group of network interface nodes, the second group of network interface nodes being members of the self-organizing network and having respective communication links with the second shared access network.
- a unicast packet received by the one of the first group of network interface nodes is forwarded to the one of the second group of network interface nodes if the unicast packet is destined for the second shared access network.
- the one of the second group of interface nodes is on the best path from the one of the first group of network interface nodes to the second shared access network.
- the first embodiment further comprising forwarding a unicast packet from the self-organizing network onto the shared access network.
- the foregoing embodiment wherein the unicast packet forwarding is via a forwarding member of the network interface group.
- the foregoing embodiment wherein the forwarding member records that the unicast packet source is local to the self-organizing network.
- members of the group of network interface nodes other than the forwarding member process the unicast packet as if it were local to the shared access network.
- the first embodiment further comprising forwarding a unicast packet from the shared access network to a destination in or reachable through the self-organizing network.
- the foregoing embodiment wherein the forwarding of the unicast packet is via a network interface node that previously recorded the destination as being in or reachable through the self-organizing network.
- the foregoing embodiment wherein the network interface node that previously recorded the destination recorded the destination in association with forwarding a previous unicast or broadcast packet from the self-organizing network to the shared access network.
- a second embodiment having all of the elements of the first embodiment further comprising allocating an endpoint in the shared access network as a mesh server; and in each of the network gateway interface nodes, communicating the packet data via a respective point-to-point link established with the mesh server.
- the foregoing embodiment wherein all of the packet data directed from the self-organizing network to the shared access network is routed via the mesh server.
- the second embodiment wherein all of the packet data directed from the shared access network to the self-organizing network is routed via the mesh server.
- the foregoing embodiment wherein all of the packet data directed from the self-organizing network to the shared access network is routed via the virtual network gateway interface.
- the third embodiment wherein all of the packet data directed from the shared access network to the self-organizing network is routed via the virtual network gateway interface.
- the third embodiment wherein all of the packet data between the shared access network and the self-organizing network is routed via the virtual network gateway interface.
- a fifth embodiment of a system comprising a processor and a memory adapted to store instructions to be executed by the processor, the instructions implementing any of the first, second, and third embodiments.
- a sixth embodiment of system comprising a means for identifying a node in a shared access network as a mesh server; a means for forwarding traffic between a wireless mesh network and the shared access network via at least one of a plurality of gateway mesh nodes and the mesh server, the gateway mesh nodes enabled to operate in the wireless mesh network; and wherein the means for forwarding comprises a means for transit via a respective virtual mesh link associated with each of the gateway mesh nodes.
- a seventh embodiment of a method comprising identifying a node in a shared access network as a mesh server; forwarding traffic between a wireless mesh network and the shared access network via at least one of a plurality of gateway mesh nodes and the mesh server; operating the gateway mesh nodes in the wireless mesh network; and wherein the forwarding comprises transiting via a respective virtual mesh link associated with each of the gateway mesh nodes.
- An eighth embodiment of a system comprising a shared access network; a server node comprised in the shared access network; wherein the shared access network is enabled to select the server node from among a plurality of nodes comprised in the shared access network; and wherein the server node is enabled to forward traffic between a wireless mesh network and the shared access network at least in part via at least one of a plurality of gateway nodes of the wireless mesh network, and further at least in part via a respective virtual link associated with each of the gateway nodes.
- a ninth embodiment of a system comprising a wireless mesh network; a gateway node comprised in the wireless mesh network; and wherein the gateway node is enabled to forward traffic between a shared access network and the wireless mesh network at least in part via at least one server node comprised in the shared access network, and further at least in part via a virtual link enabled to communicate with the gateway node.
- a tenth embodiment of a computer readable medium having a set of instructions stored therein which when executed by a processing element causes the processing element to perform functions comprising selecting a server node from a plurality of nodes of a shared access network; and controlling forwarding of traffic between a wireless mesh network and the shared access network via at least one of a plurality of gateway nodes of the wireless mesh network, and further at least in part via a respective virtual link associated with each of the gateway nodes.
- An eleventh embodiment of a system comprising means for identifying a group of nodes operating in a wireless mesh network as a gateway group to communicate with a shared access network, each of the gateway group nodes enabled to access a respective wired link to communicate with the shared access network and a respective wireless link to communicate within the wireless mesh network; in the gateway group, means for selecting one of the nodes of the gateway group as a designated broadcast server; in the designated broadcast server, means for forwarding broadcast packets from the shared access network into the wireless mesh network; and in all the nodes of the gateway group except the designated broadcast server, means for ignoring broadcast packets from the shared access network.
- a twelfth embodiment of a method comprising identifying a group of nodes operating in a wireless mesh network as a gateway group to communicate with a shared access network, each of the gateway group nodes enabled to access a respective wired link to communicate with the shared access network and a respective wireless link to communicate within the wireless mesh network; in the gateway group, selecting one of the nodes of the gateway group as a designated broadcast server; in the designated broadcast server, forwarding broadcast packets from the shared access network into the wireless mesh network; and in all the nodes of the gateway group except the designated broadcast server, ignoring broadcast packets from the shared access network.
- a thirteenth embodiment of a system comprising a wireless mesh network; a plurality of nodes in the wireless mesh network enabled to operate as a group of gateway nodes, each node of the gateway group enabled to communicate with a shared access network via a respective wired link and further enabled to communicate within the wireless mesh network via a respective wireless link; wherein the gateway group is enabled to select a designated one of the nodes of the gateway group as a designated broadcast server; wherein the designated broadcast server is enabled to forward packets from the shared access network into the wireless mesh network; and wherein all of the nodes of the gateway group except the designated broadcast server are enabled to ignore broadcast packets from the shared access network.
- a fourteenth embodiment of a system comprising means for identifying a first node in a first shared access network as a first mesh server; means for identifying a second node in a second shared access network as a second mesh server; means for forwarding traffic between the shared access networks via at least one of a plurality of gateway mesh nodes and the mesh servers, the gateway mesh nodes enabled to operate in a wireless mesh network; wherein the shared access networks are wired networks; wherein the means for forwarding comprises means for transit via a respective virtual mesh link associated with each of the gateway mesh nodes; wherein the virtual mesh links are implemented via respective point-to-point tunnels operating in part with respective wired links coupled to the first and the second mesh servers; wherein the mesh servers comprise respective means for tagging broadcast packets provided to the gateway mesh nodes; and wherein nodes of the wireless mesh network are enabled to examine at least some results of the means for tagging in part to eliminate redundant transmission of the broadcast packets.
- a fifteenth embodiment of a method comprising identifying a first node in a first shared access network as a first mesh server; identifying a second node in a second shared access network as a second mesh server; forwarding traffic between the shared access networks via at least one of a plurality of gateway mesh nodes and the mesh servers, the gateway mesh nodes operating in a wireless mesh network; wherein the shared access networks are wired networks; wherein the forwarding comprises transit via a respective virtual mesh link associated with each of the gateway mesh nodes; wherein the virtual mesh links are implemented via respective point-to-point tunnels operating in part with respective wired links coupled to the first and the second mesh servers; wherein the mesh servers tag broadcast packets provided to the gateway mesh nodes; and wherein nodes of the wireless mesh network examine at least some results of the tagging in part to eliminate redundant transmission of the broadcast packets.
- a sixteenth embodiment of a system comprising means for identifying a first group of nodes operating in a wireless mesh network as a first gateway group to communicate with a first shared access network, each of the first gateway group nodes enabled to access a respective wired link to communicate with the first shared access network and a respective wireless link to communicate within the wireless mesh network; means for identifying a second group of nodes operating in the wireless mesh network as a second gateway group to communicate with a second shared access network, each of the second gateway group nodes enabled to access a respective wired link to communicate with the second shared access network and a respective wireless link to communicate within the wireless mesh network; means for forwarding traffic from the first shared access network to the second shared access network via the gateway groups, the means for forwarding comprising via one of the nodes of the first gateway group enabled to operate as an ingress node, means for forwarding the traffic from the first shared access network onto the wireless mesh network, in the wireless mesh network, means for forwarding the traffic, according to a transit path, from the ingress node to one of the no
- a seventeenth embodiment of a method comprising identifying a first group of nodes operating in a wireless mesh network as a first gateway group to communicate with a first shared access network, each of the first gateway group nodes enabled to access a respective wired link to communicate with the first shared access network and a respective wireless link to communicate within the wireless mesh network; identifying a second group of nodes operating in the wireless mesh network as a second gateway group to communicate with a second shared access network, each of the second gateway group nodes enabled to access a respective wired link to communicate with the second shared access network and a respective wireless link to communicate within the wireless mesh network; forwarding traffic from the first shared access network to the second shared access network via the gateway groups, the forwarding comprising via one of the nodes of the first gateway group operating as an ingress node, forwarding the traffic from the first shared access network onto the wireless mesh network, in the wireless mesh network, forwarding the traffic, according to a transit path, from the ingress node to one of the nodes of the second gateway group operating as an egress node
- An eighteenth embodiment of a system comprising means for communicating packet data between a self-organizing network and a shared access network via a group of network interface nodes, each interface node being a member of the self-organizing network and having access to a respective communication link with the shared access network; means for executing a control protocol to enable network performance improvements; and wherein the network performance improvements comprise at least one of preventing broadcast loops between the self-organizing network and the shared access network, avoiding forwarding of more than one copy of a packet from the shared access network onto the self-organizing network, and routing a packet that specifies a source and a destination via a best path within the self-organizing network according to the source and the destination.
- a nineteenth embodiment of a method comprising communicating packet data between a self-organizing network and a shared access network via a group of network interface nodes, each interface node being a member of the self-organizing network and having access to a respective communication link with the shared access network; executing a control protocol to enable network performance improvements; and wherein the network performance improvements comprise at least one of preventing broadcast loops between the self-organizing network and the shared access network, avoiding forwarding of more than one copy of a packet from the shared access network onto the self-organizing network, and routing a packet that specifies a source and a destination via a best path within the self-organizing network according to the source and the destination.
- a twentieth embodiment of a computer readable medium having a set of instructions stored therein which when executed by a processing element causes the processing element to perform functions comprising selecting a node of a group of interface nodes to operate as a designated broadcast server, the selecting being part of a distributed protocol communicating control information between the group of interface nodes; selectively forwarding broadcast packets from a shared access network into a wireless mesh network; selectively ignoring broadcast packets from the shared access network; wherein the group of interface nodes are enabled to operate in the wireless mesh network via a respective wireless link, and each of the interface nodes is enabled to communicate with the shared access network via a respective communication link; wherein the selectively forwarding is via the designated broadcast server; and wherein the selectively ignoring is via all members of the group of interface nodes other than the designated broadcast server.
- a twenty-first embodiment of a system comprising a plurality of wireless nodes enabled to operate in a wireless mesh network, each of the wireless nodes comprising a processing element enabled to execute instructions obtained from a respective computer readable medium; a plurality of wired links enabled to couple a subset of the wireless nodes to at least one shared access network; wherein a first portion of the instructions is to be executed to select a node of the subset to operate as a designated broadcast server, the selecting according to a distributed protocol that comprises exchanging control information between the nodes of the subset; wherein a second portion of the instructions is to be executed by the designated broadcast server to control selectively forwarding broadcast packets from the at least one shared access network to the wireless mesh network; and wherein a third portion of the instructions is to be executed by all the nodes of the subset except the designated broadcast server to control selectively ignoring the broadcast packets.
- Redundant and load-balanced access between a mesh and each of one or more shared access networks is provided, in the first architecture, by a respective group of NGIs operating as a gateway group.
- One of the NGIs in each of the respective gateway groups is elected, by elements of the gateway group, to operate as a Designated Broadcast Server (DBS).
- the DBS is the only node within the respective gateway group enabled to forward broadcast packets from the respective shared access network to the mesh.
- FIG. 1 illustrates selected details of an embodiment of the first architecture of a mesh network having multiple mesh gateway interfaces to multiple shared access networks.
- MN 1 - 4 102 . 1 - 4 and MN 6 - 7 102 . 6 - 7 are mesh nodes operating as NGIs that are members of illustrated Mesh Network 100 .
- MN 1 and MN 2 are operated as Gateway Group 1 103 . 1 to provide any combination of redundant and load-balanced access to shared access network Subnet A 101 .A (operating as Broadcast Domain 1 ).
- MN 3 and MN 4 operate as Gateway Group 2 103 . 2 with Subnet B 101 .B of Broadcast Domain 2
- MN 6 and MN 7 operate as Gateway Group 3 103 . 3 with Subnet C 101 . 0 of Broadcast Domain 3 .
- Gateway groups may include any number of NGIs (such as three, four, or more), and any number of shared access networks may be accessible from a single mesh network via a corresponding number of gateway groups.
- Gateway group (such as MN 1 and MN 2 of Gateway Group 1 ) are identified as belonging to the same shared access network (such as Subnet A having Broadcast Domain 1 ), and thus an element of the mesh (or an element enabled for communication via the mesh) may consider any member of the gateway group as an alternate NGI for communication with the shared access network. All NGIs of each respective gateway group are assigned an ID that is the same for all elements of the respective gateway group but unique with respect to other gateway groups (such as MN 1 and MN 2 being assigned ID “1”, and MN 3 and M 4 being assigned ID “2”, and so forth).
- Gateway group information is distributed as part of configuring the mesh in some embodiments. Gateway group information is determined via an autoconfiguration protocol in some embodiments.
- the NGIs of each respective gateway group elect a respective DBS among themselves via a distributed protocol. Each respective DBS serves to allow broadcast packets into the mesh from each respective shared access network. All other NGIs of the respective gateway group drop all broadcast packets received from the respective shared access network.
- FIGS. 2A, 2B, and 2C illustrate selected details of an embodiment of a self-healing mesh network having a control protocol for assigning a DBS in each of one or more partitions of the mesh network.
- Illustrated mesh network Mesh 210 having mesh network nodes MN/NGI 211 , MN/NGI 212 , and MN/NGI/DBS 213 is enabled for communication with Shared Access Network 220 .
- Currently operational DBS 213 is indicated in FIG. 2A by the notation MN/NGI/DBS, indicating that the Mesh Node (MN) so annotated is both an NGI and a DBS.
- MN Mesh Node
- FIG. 2B illustrates that if DBS 213 of FIG. 2A (or the link to the shared access network of the DBS) fails, a new DBS (MN/NGI/DBS (NEW) 212 ) is elected by a control protocol that uses a combination of static and dynamic selection algorithms.
- Any NGI may act as a DBS.
- at any given time there is only one DBS active in a Gateway group.
- NGIs for the same shared access network present in each partition
- a solution is to have one DBS active for each such disjoint partition of the mesh.
- FIG. 2C illustrates that failed DBS 213 of FIG. 2B has recovered but with the mesh partitioned in two portions, each having at least one NGI and DBS.
- the control protocol has elected a DBS for each mesh partition as indicated by the annotation MN/NGI/DBS 1 of 213 for partition 1 221 . 1 , and MN/NGI/DBS 2 of 212 for partition 2 221 . 2 .
- the network may return to the situation illustrated by FIG. 2A .
- All NGIs in a gateway group actively participate in selection and decommissioning of the DBS NGIs to handle failures and partitions without any user intervention, thus maintaining the self-healing nature of the mesh network.
- the DBS within a gateway group forwards a broadcast packet originated on the shared access network into the mesh, thus serving as the Ingress Mesh Interface for the packet.
- the Ingress Mesh NGI Before forwarding the broadcast packet, the Ingress Mesh NGI attaches to the packet a list of Egress Mesh NGIs, one per mesh-attached shared access network. Each Egress Mesh NGI in the list corresponds to the best route from the Ingress Mesh NGI to the shared access network the respective Egress Mesh NGI provides communication with. Stated another way, for each mesh-attached shared access network, one Egress Mesh NGI is selected from among the Egress Mesh NGIs coupled to the respective shared access network, such that the selected Egress Mesh NGI is the best route from the Ingress Mesh NGI to the respective shared access network. Information on paths and the metric of each path is available through the routing protocol, that at each node keeps track of the best routes to all other nodes in the mesh.
- a mesh NGI only forwards a broadcast packet from the mesh onto the shared access network if the mesh NGI is listed in the header of the packet. If the mesh NGI is not the DBS for the gateway group, then before forwarding the packet into the shared access network, an Egress NGI sends a synchronization packet to the DBS NGI for the mesh NGI providing notification of forwarding of a broadcast packet onto the shared access network so that the DBS does not assume the packet was sent on the shared access network and needs to be forwarded onto the mesh.
- the broadcast packet follows the best path from an Ingress Mesh NGI to each shared access network and no broadcast loops are formed (addressing issues raised in Mesh Network Concept No. 1).
- Broadcast Packet Aspect No. 4 When a broadcast is forwarded by a mesh NGI onto a shared access network, the NGI forwarding it records that the packet source is local to the mesh, while all other NGIs overhear the packet and assume that the source of the packet is local to the shared access network. In some embodiments the recording of the packet source as local to the mesh occurs when the packet source is in the mesh and also when the packet source is reachable through the mesh. As a result, when a packet is subsequently sent to the same node, only one NGI forwards the packet into the mesh and communication between a given source and destination is symmetric. In other words, the same path is used for packets from the source to the destination and vice versa.
- Unicast Packet Aspect No. 1 A unicast packet is received at a Mesh Ingress Client Interface/NGI. If the destination node is in a shared access network that is associated with a Gateway Group, then the packet is forwarded to the NGI that is part of the Gateway group and has the least cost from the ingress node with respect to all NGIs belonging to the Gateway Group. The least cost forwarding tends to conserve wireless bandwidth and improves overall mesh performance.
- Unicast Packet Aspect No. 2 When a unicast packet is forwarded onto the shared access network from a mesh, the forwarding NGI records that the packet source is local to the mesh, while all other NGIs overhear the packet and assume that the source of the packet is local to the shared access network. In some embodiments the recording of the packet source as local to the mesh occurs when the packet source is in the mesh and also when the packet source is reachable through the mesh. As a result, when a packet is subsequently sent to that same node, only one NGI forwards the packet into the mesh and communication between a given source and destination is symmetric, i.e., the same path is used for packets from the source to the destination and vice versa.
- Unicast Packet Aspect No. 3 When a unicast packet is originated on the shared access network, and the mesh NGIs have state for the destination of the packet (e.g., through Unicast Packet Scenario No. 1 or through Broadcast Packet Scenario No. 4), the one mesh NGI that has recorded the destination as being a mesh destination forwards the packet into the mesh. The forwarding is directed to the closest Egress Mesh NGI within the gateway group of the shared access network where the packet is destined.
- Unicast Packet Aspect No. 4 When a unicast packet is originated on the shared access network, and the mesh NGIs do not have state for the destination of the packet (e.g., the state was not used for a while and expired), the DBS floods the packet into the mesh. Eventually, as a result of packets sent in the other direction, the state for how to reach the destination will be relearned, and packets will start being delivered through unicast within the mesh as in Unicast Packet Scenario No. 3.
- FIG. 3 illustrates selected details of an embodiment of the second architecture of a mesh network having multiple mesh gateway interfaces to a common shared access network.
- multiple mesh NGIs are connected to a common shared access network while preserving best path routing within the mesh at all times.
- Mesh Network 310 is illustrated with a plurality of mesh nodes, including mesh nodes participating in the mesh as MNs 311 and 312 , and mesh nodes participating in the mesh and operating as NGIs as MN/NGIs 313 - 315 .
- the mesh network is enabled for communication with Shared Access Network 320 .
- the shared access network includes mesh servers MS-A 321 .A and MS-B 321 .B enabled for communication with Layer 2 Wired Network 330 via Wired Links 370 .A-B.
- Also illustrated are (Active) Logical Connections 340 . 1 - 3 , (Backup) Logical Connections 350 . 1 - 3 , and Active/Backup Mesh Server Synchronization 360 .
- the second architecture employs an additional node in the shared access network, referred to as a Mesh Server (MS), such as “MS-A” 321 .A, illustrated.
- the additional node is coupled to the mesh via a wired connection, and acts as a virtual NGI, executing a mesh routing protocol.
- the devices physically connected to both the mesh and the shared access network operate as mesh nodes having virtual mesh links to the virtual mesh NGI.
- the virtual mesh links may be implemented as point-to-point tunnels.
- the virtual mesh NGI is collocated on a device also having a physical NGI.
- Employing one virtual mesh NGI forces packets entering and exiting the mesh to always enter and exit the mesh at one point, thus preventing broadcast loops (Mesh Network Concept No. 1).
- the single mesh entry/exit point also ensures that only one copy of each packet enters the mesh (Mesh Network Concept No. 2).
- the virtual NGI sends a copy of the packet along each of the links to the physical mesh NGIs across the virtual mesh links.
- the packet includes control information that enables forwarding nodes to detect duplicate copies of the packet.
- each node in the mesh would only forward a single copy of the packet.
- the routing protocol may determine the best paths from a virtual NGI in one access network to a virtual NGI in any other access network, thus addressing Mesh Network Concept No. 3.
- a pair of MSs are used to provide redundancy, with a first additional node of the pair operating as an active node (such as “MS-A” 321 .A, illustrated) and a second additional node of the pair operating as a backup node (such as “MS-B” 321 .B, illustrated).
- synchronization processing is employed between the active and backup MSs (such as “Active/Backup Mesh Server Synchronization” 360 , illustrated).
- Embodiments in accordance with the second architecture may provide for concurrent access to a plurality of shared access networks.
- Each of the shared access networks includes one or more MSs.
- MN/NGI nodes communicate with one or more shared access networks via at least one MS that is a member of the respective shared access network.
- a first virtual link is established from a first MN/NGI to a first MS that is a member of a first of the two shared access networks.
- a second virtual link is established from a second MN/NGI to a second MS that is a member of the second of the two shared access networks.
- FIG. 4 illustrates selected details of hardware aspects of an embodiment of a node.
- the illustrated node includes Processor 405 coupled to various types of storage, including volatile read/write memory “Memory Bank” elements 401 . 1 - 2 via DRAM Memory Interface 402 , and non-volatile read/write memory FLASH 403 and EEPROM 404 elements.
- the processor is further coupled to Ethernet Interface 406 providing a plurality of Ethernet Ports 407 for establishing wired links, and Wireless Interface 409 providing radio communication of packets for establishing wireless links.
- the Wireless Interface is compatible with an IEEE 802.11 wireless communication standard (such as any of 802.11a, 802.11b, and 802.11g).
- the Wireless Interface operates (in conjunction with any combination of hardware and software elements) to collect statistics with respect to neighboring nodes of a mesh.
- the statistics may include any combination of signal strength and link quality.
- the Wireless Interface is configurable to drop all packets below a settable Received Signal Strength Indicator (RSSI) threshold.
- RSSI Received Signal Strength Indicator
- the illustrated node may function as any one of the mesh nodes illustrated in FIGS. 1, 2A, 2B, 2C, and 3 (for example any of MN 1 - 8 , any node designated as MN/NGI, and any node designated as MNG/NGI/DBS).
- the Wireless Interface of FIG. 4 may enable communication between nodes and provide low-level transport for packets moving between elements of the mesh and one or more shared access networks.
- the Ethernet ports of FIG. 4 may provide for wired communication between a node operating as an NGI and an associated shared access network (e.g. any of the couplings between MN 1 - 2 and Subnet A, between MN 3 - 4 and Subnet B, and between MN 6 - 7 and Subnet C of FIG. 1 ).
- the processor fetches instructions from any combination of the storage elements (DRAM, FLASH, and EEPROM) and executes the instructions.
- some of the instructions correspond to execution of software associated with operations relating to processing as a member of a gateway group.
- the operations include the distributed protocol implementing election of a DBS and further include subsequent filtering/passing of broadcast packets.
- the operations further include processing relating to any combination of redundancy and load-balancing.
- Gateway group identification information may be stored in any combination of the storage elements according to instructions executed during processing associated with mesh set up and initialization.
- some of the instructions correspond to execution of software associated with operations relating to interfacing to one or more mesh MSs, including redundancy and load-balancing functions.
- FIG. 5 illustrates selected details of software aspects of an embodiment of a node.
- the illustrated software includes Network Management System (NMS) Manager 501 interfacing to Network Interface Manager 502 and Fault, Configuration, Accounting, Performance, and Security (FCAPS) Manager 503 .
- NMS Network Management System
- FCAPS Fault, Configuration, Accounting, Performance, and Security
- the NMS interfaces between management software operating external to the node and software operating internal to the node (such as various applications and FCAPS).
- the Network Interface Manager manages physical network interfaces (such as the Ethernet and Wireless Interfaces of a node).
- the Network Interface Manager assists the NMS in passing dynamic configuration changes (as requested by a user) through the management software to FCAPS.
- FCAPS includes functions to store and retrieve configuration information, and FCAPS functions serve all applications requiring persistent configuration information. FCAPS may also assist in collecting fault information and statistics and performance data from various operating modules of the node. FCAPS may pass any portion of the collected information, statistics, and data to the NMS.
- Kernel Interface 510 interfaces the Managers to Routing and Transport Protocols layer 511 and Flash File System module 513 .
- the Routing Protocols include portions of processing relating to operation as a member of a gateway group or interfacing to MSs, according to architecture, as well as general processing relating to operation as a node of the mesh and forwarding packets.
- the Transport Protocols include TCP and UDP.
- the Flash File System module interfaces to Flash Driver 516 that is illustrated conceptually coupled to FLASH hardware element 523 that is representative of a flash file system stored in any combination of the FLASH and EEPROM elements of FIG. 4 .
- Layer-2 Abstraction Layer 512 interfaces the Routing and Transport Protocols to Ethernet and Radio Drivers 514 and 515 , respectively.
- the Ethernet Driver is illustrated conceptually coupled to Ethernet Interface 526 that is representative of the Ethernet Interface of FIG. 4 .
- the Radio Driver is illustrated conceptually coupled to Wireless Interface 529 that is representative of the Wireless Interface of FIG. 4 .
- the software may also include a serial driver.
- the software is stored on a computer readable medium (e.g. any combination of the DRAM, FLASH, and EEPROM elements), and is executed by the processor.
- the illustrated partitioning is an example only, as many other equivalent arrangements of layers are possible.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
- Small-Scale Networks (AREA)
Abstract
Description
- Priority/benefit claims for this application are made in the accompanying Application Data Sheet. This application incorporates by reference for all purposes the following applications:
-
- U.S. Provisional Application Ser. No. 60/704,528 (Docket No. FT.2005.01), filed Jul. 30, 2005, first named inventor Jorjeta Jetcheva, and entitled Utilizing Multiple Mesh Network Gateways in a Shared Access Network;
- U.S. Provisional Application Ser. No. 60/708,131 (Docket No. FT.2005.01B), filed Aug. 13, 2005, first named inventor Jorjeta Jetcheva, and entitled Utilizing Multiple Mesh Network Gateways in a Shared Access Network;
- U.S. Provisional Application Ser. No. 60/709,738 (Docket No. FT.2005.01C), filed Aug. 19, 2005, first named inventor Jorjeta Jetcheva, and entitled Utilizing Multiple Mesh Network Gateways in a Shared Access Network;
- U.S. Provisional Application Ser. No. 60/806,519 (Docket No. FT.2005.01D), filed Jul. 3, 2006, first named inventor Jorjeta Jetcheva, and entitled Utilizing Multiple Mesh Network Gateways in a Shared Access Network;
- PCT Application Serial No. PCT/US2006/028903 (Docket No. FT.06.101PCT), filed Jul. 26, 2006, first named inventor Jorjeta Jetcheva, and entitled Utilizing Multiple Mesh Network Gateways in a Shared Access Network; and
- U.S. Pat. No. 8,559,447 Ser. No. 12/018,152 (Docket No. FT-2007-101US), filed Jan. 22, 2008, first named inventor Jorjeta Jetcheva, and entitled Utilizing Multiple Mesh Network Gateways in a Shared Access Network.
- U.S. Pat. No. 9,602,399 Ser. No. 14/046,950 (Docket No. FT-13-101US), filed Oct. 5, 2013, first named inventor Jorjeta Jetcheva, and entitled Utilizing Multiple Mesh Network Gateways in a Shared Access Network.
- Field
- Advancements in mesh networks are needed to provide improvements in performance, efficiency, and utility of use. Embodiments described elsewhere herein enable the improvements.
- Related Art
- Unless expressly identified as being publicly or well known, mention herein of techniques and concepts, including for context, definitions, or comparison purposes, should not be construed as an admission that such techniques and concepts are previously publicly known or otherwise part of the prior art. All references cited herein (if any), including patents, patent applications, and publications, are hereby incorporated by reference in their entireties, whether specifically incorporated or not, for all purposes. Nothing herein is to be construed as an admission that any of the references are pertinent prior art, nor does it constitute any admission as to the contents or date of actual publication of these documents.
- The invention can be implemented in numerous ways, including as a process, an article of manufacture, an apparatus, a system, a composition of matter, and a computer readable medium such as a computer readable storage medium or a computer network wherein program instructions are sent over optical or electronic communication links. In this specification, these implementations, or any other form that the invention may take, may be referred to as techniques. In general, the order of the steps of disclosed processes may be altered within the scope of the invention. An exposition of one or more embodiments of the invention is provided in the Detailed Description. The Detailed Description includes an Introduction to facilitate the more rapid understanding of the remainder of the Detailed Description. The Introduction includes Illustrative Combinations that tersely summarize illustrative systems and methods in accordance with the concepts taught herein. As is discussed in more detail in the Conclusions, the invention encompasses all possible modifications and variations within the scope of the issued claims, which are appended to the very end of the issued patent.
- Various embodiments of the invention are disclosed in the following detailed description and the accompanying drawings.
-
FIG. 1 illustrates selected details of an embodiment of a first architecture of a mesh network having multiple mesh gateway interfaces to multiple shared access networks. -
FIGS. 2A, 2B, and 2C illustrate selected details of an embodiment of a self-healing mesh network having a control protocol for assigning a dedicated broadcast server in each of one or more partitions of the mesh network. -
FIG. 3 illustrates selected details of an embodiment of a second architecture of a mesh network having multiple mesh gateway interfaces to a common shared access network. -
FIG. 4 illustrates selected details of hardware aspects of an embodiment of a node. -
FIG. 5 illustrates selected details of software aspects of an embodiment of a node. - The invention can be implemented in numerous ways, including as a process, an article of manufacture, an apparatus, a system, a composition of matter, and a computer readable medium such as a computer readable storage medium or a computer network wherein program instructions are sent over optical or electronic communication links. In this specification, these implementations, or any other form that the invention may take, may be referred to as techniques. In general, the order of the steps of disclosed processes may be altered within the scope of the invention.
- A detailed description of one or more embodiments of the invention is provided below along with accompanying figures that illustrate the principles of the invention. The invention is described in connection with such embodiments, but the invention is not limited to any embodiment. The scope of the invention is limited only by the claims and the invention encompasses numerous alternatives, modifications and equivalents. Numerous specific details are set forth in the following description in order to provide a thorough understanding of the invention. These details are provided for the purpose of example and the invention may be practiced according to the claims without some or all of these specific details. For the purpose of clarity, technical material that is known in the technical fields related to the invention has not been described in detail so that the invention is not unnecessarily obscured.
- This introduction is included only to facilitate the more rapid understanding of the Detailed Description. The invention is not limited to the concepts presented in the introduction, as the paragraphs of any introduction are necessarily an abridged view of the entire subject and are not meant to be an exhaustive or restrictive description. For example, the introduction that follows provides overview information limited by space and organization to only certain embodiments. There are in fact many other embodiments, including those to which claims will ultimately be drawn, which are discussed throughout the balance of the specification. As is discussed in more detail in the Conclusions, the invention encompasses all possible modifications and variations within the scope of the issued claims, which are appended to the very end of the issued patent.
- Various embodiments use a mesh network acting as a virtual Ethernet switch. The mesh network includes multiple nodes operating as mesh Network Gateway Interfaces (mesh NGIs) enabled for communication with one or more shared access networks. Selectively coupling the multiple NGIs to the same shared access network provides redundancy and load balancing aimed at improving the reliability and performance of the network.
- A first architecture is based on a gateway group and a designated broadcast server. A gateway group includes a plurality of NGIs enabled to communicate with a single shared access network. Members of the gateway group inter-communicate via a coordinating distributed protocol. A designated broadcast server from among the NGIs is elected by the NGIs to control entrance of broadcast packets into the mesh network from the shared access network. All other NGIs of the gateway group ignore broadcast packets from the shared access network, thus improving packet broadcast efficiency and reducing or eliminating the possibility of broadcast loops.
- A second architecture is based on a plurality of (physical) NGIs enabled to communicate with a single shared access network via a designated node in the shared access network. The designated node, or Mesh Server (MS), executes a mesh routing protocol, operating as a virtual NGI, and traffic entering or exiting the mesh flows through the MS, thus improving packet broadcast efficiency. The physical NGIs are operated with virtual mesh links to the MS. The virtual mesh links may be implemented as point-to-point tunnels. Embodiments according to the second architecture may be operated with a plurality of single shared access networks, each of the shared access networks having a respective designated MS operating as a virtual NGI.
- Embodiments taught herein are specifically designed for mesh networks, and conserve limited bandwidth and computation resources, in contrast to solutions used for wired networks that generally treat bandwidth and computation resources as plentiful. For example, a Spanning Tree Protocol (STP) is often used in contexts having multiple interfaces/devices connected to a shared access network. STP blocks all but one interface/device (i.e. packets are not forwarded) and thus removes any possibility of forwarding loops among the interfaces to the shared network. As a result, however, STP also eliminates potential benefits of the multiple interfaces (such as load balancing and redundancy). For another example, throughput to a shared access network may be improved by link aggregation. However, conventional link aggregation is restricted to port aggregation on a single physical device, while multiple mesh network couplings to a shared access network are on different physical devices, as each coupling is physically (and often geographically) distinct. In some embodiments geographical separation is used to reduce or eliminate interference between wireless communications. In some embodiments separation is used to reduce interfering communication paths traveled by traffic within the mesh.
- Various embodiments use a mesh network acting as a virtual Ethernet switch (operating as a layer-2 switch). The mesh network may also further include multiple mesh NGIs that connect to one or more shared access networks. Selectively connecting the multiple NGIs to the same shared access network provides redundancy and load balancing aimed at improving the reliability and performance of the network. If more than one NGI is coupled to the same shared access network, then there exists a possibility of forwarding broadcast packets in loops, unnecessarily consuming network resources. Some embodiments detect possible loop forwarding and reduce or prevent the forwarding loops.
- When multiple mesh NGIs are connected to the same shared access network, some destinations on the shared access network are learned through one NGI and some through others. Inefficient use of the limited mesh resources may result when a better path becomes available inside the mesh to destinations on the shared access network, for example via a different NGI than one currently in use, but the better path is not yet known. In some embodiments traffic rerouting is provided to the NGI in the shared access network to which a source node has the best path even as path metrics change and different paths have the best metric at different times.
- In some embodiments the best path is associated with a metric such as hop-count, and the best path is a route having the smallest hop-count. Other metrics for best path determination may be used based on implementation dependent criteria, as the techniques discussed elsewhere herein are independent of best path determination details.
- As an example usage scenario, consider a mesh network deployed in a resort such that users access the mesh network wirelessly on the grounds of the resort. Traffic is forwarded via the mesh network to a central office of the resort having a wired connection to the Internet. The wired network includes several NGIs to avoid concentrating all traffic onto a single NGI (load balancing) and also for improved reliability (redundancy/failover). Thus the multiple NGIs enable relatively higher bandwidth operation and relatively improved availability.
- Mesh Network Concept No. 1: Without special mechanisms in place, having multiple mesh NGIs connected to a single shared access network may cause broadcast loops, whereby a broadcast packet forwarded from the mesh network to the shared access network by one NGI would be forwarded back into the mesh by another NGI. Broadcast loops waste network resources, and may congest the network to be unable to deliver any useful data. Packets may also not be routed appropriately because the NGI/Client Interfaces may receive conflicting ideas as to whether a destination is inside or outside the mesh. For example, when an interface hears a packet on the shared access network, the interface assumes that the source of the packet is on the shared access network rather than on the mesh, even though the packet may have been forwarded from the mesh by another interface and the packet source is in or is reachable through the mesh.
- Mesh Network Concept No. 2: When there are multiple mesh NGIs onto a single access network, it would be inefficient for all of the NGIs to forward a packet received on the shared access network into the mesh. Multiple forwarding is exacerbated when the destination of the packet is unknown, causing the NGI to flood (rather than unicast) the packet into the mesh. Having multiple floods of the same packet within the mesh, each generated by a different NGI, would be wasteful of network resources. To avoid inefficiency, coordination is used so that only one mesh NGI forwards each packet from the shared access network into the mesh.
- Mesh Network Concept No. 3: For best performance and most efficient use of resources, packets need to take the best currently available paths within the mesh for a given source and destination of traffic.
- Elsewhere herein terms are used to describe selected elements and aspects of various embodiments and implementations. Examples for selected terms follow.
- Node: An example of a node is an electronic device.
- Packet: An example of a packet is that nodes communicate information to each other that is subdivided into packets.
- Link: An example of a link is a conceptual representation of the ability of two (or more) nodes to communicate with each other. A link may be wired (the nodes being connected by a physical medium for carrying information such as electrical or optical interconnect) or wireless (the nodes being connected without a physical medium, e.g., via radio technology).
- Path/Route: An example of a path/route is a sequence of one or more links.
- Path Metric: An example of a path metric is a number that reflects the desirability of a path. For example, the number of links, e.g., the hop count of a path, is one possible metric. Paths with a lower hop count have advantages over paths with a higher hop count. The advantages include less resource usage (as there is reduced forwarding) and less likelihood of lost packets (as there are fewer chances for loss before packets reach respective destinations).
- Best Path: An example of a best path is an ordered list of nodes that when transited (in order) by a packet result in an efficient traversal from a source to a destination, according to predetermined criteria. Since parameters and operating conditions vary over time, any best path is also a “known” best path; e.g. it is based on criteria evaluated at a particular point in time, and at a different point in time a different best path may be available. Best paths may also be considered to be “most nearly optimal” according to one or more metrics as measured with respect to a routing protocol responsible for determining the best paths.
- Network: An example of a network is a set of nodes that are enabled to communicate with each other via any combination of wired and wireless links.
- Mesh Network: An example of a mesh network is a set of nodes that self-organize into a multi-hop network. In some usage scenarios the mesh network has limited resources (e.g. available bandwidth, available computational power, and available energy).
- Multi-Mesh Network: An example of a multi-mesh network is a set of interconnected meshes appearing to operate as a single network from a perspective of a user of resources provided by the multi-mesh network.
- Shared Access Network: An example of a shared access network is a network such that a packet transmitted by any node is overheard by all other nodes in the network. An example implementation of such a network is an 802.3 LAN.
- Ingress Mesh: An example of an ingress mesh is a mesh where a packet enters a multi-mesh.
- Egress Mesh: An example of an egress mesh is a mesh where a packet exits (or leaves) a multi-mesh.
- Ingress Mesh Node: An example of an ingress mesh node is a node where a packet enters a mesh; e.g. the node forwarding the packet from a non-mesh link onto a mesh link/network.
- Egress Mesh Node: An example of an egress mesh node is a node where a packet exits a mesh; e.g. the node forwarding the packet from a mesh link onto a non-mesh link/network.
- Mesh Bridge (Node): An example of a mesh bridge is a node that is simultaneously participating in more than one mesh network at a time; e.g. the node is coupled to at least two mesh networks at once. Bridge nodes enable nodes connected on a first mesh (or that are part of the first mesh) to communicate with nodes connected on a second mesh (or that are part of the second mesh).
- (Mesh) Bridge Link: An example of a mesh bridge link is a link between two bridge nodes (each being coupled to a respective mesh) used to forward traffic between the two meshes.
- Ingress Bridge Node: An example of an ingress bridge node is the mesh bridge where a packet exits (or leaves) an ingress mesh.
- Egress Bridge Node: An example of an egress bridge node is the mesh bridge where a packet enters an egress mesh.
- Mesh Portal: An example of a mesh portal is a node that is part of a mesh network and is also connected to another (shared access) network. Mesh portals enable nodes connected to the mesh, or that are part of the mesh, to communicate with nodes that are part of the shared access network, or that may be reached through the shared access network. In some embodiments the mesh network appears to outside networks as a transparent layer-2 transport, i.e. a packet injected into the mesh at one portal exits the mesh at another portal unmodified.
- Ingress Mesh Portal: An example of an ingress mesh portal is the portal at which a packet enters a mesh, e.g., the portal that forwards the packet from a non-mesh link/network onto a mesh link/network.
- Egress Mesh Portal: An example of an egress mesh portal is the portal at which a packet exits the mesh, e.g., the portal that forwards the packet from a mesh link/network onto a non-mesh link/network.
- Mesh Client Interface: An example of a mesh client interface is an interface (that is part of a node of a mesh network) for coupling to a client device.
- Mesh Network Gateway Interface (mesh NGI): An example of a mesh NGI is a node that is part of a mesh network (e.g., has an interface configured to be part of the mesh network) and is also connected to another network (e.g., has an interface configured to be on the other network). Mesh NGIs enable nodes connected to a mesh network, or that are part of the mesh, to communicate with nodes that are part of a shared access network, or that may be reached through the shared access network. In some embodiments the mesh network appears to outside networks as a
transparent layer 2 transport: a packet injected into the mesh at one NGI exits the mesh at another NGI or Client Interface unmodified. - Ingress Mesh Interface: An example of an ingress mess interface is an interface at which a packet enters a mesh, e.g., the interface that forwards the packet from a non-mesh link onto a mesh link/network.
- Egress Mesh Interface: An example of an egress mesh interface is the interface at which a packet exits the mesh, e.g., the interface that forwards the packet from a mesh link onto a non-mesh link/network.
- Unicast: An example of unicast is communication between two nodes.
- Broadcast: An example of broadcast is communication from one node intended to reach a plurality of nodes. In some usage scenarios the plurality of nodes includes all nodes on a network. In some scenarios a broadcast may not reach all intended nodes (due to packet loss, for example).
- Flood: An example of a flood is a broadcast sent by a node that is in turn rebroadcast by every other node receiving the broadcast, thus potentially reaching all nodes in a network.
- Routing Protocol: An example of a routing protocol is a set of mechanisms implemented on each node in a mesh network, wherein the mechanisms serve to discover information about the network and enable each node on the network to communicate with other nodes of the network, even when the other nodes are multiple hops away from the respective node.
- Path Accumulation: An example of path accumulation is when each node forwarding a packet adds its respective address to the packet.
- The following is a collection of paragraphs that tersely summarize illustrative systems and methods in accordance with the concepts taught herein. Each of the paragraphs highlights various combinations of features using an informal pseudo-claim format. These compressed descriptions are not meant to be mutually exclusive, exhaustive, or restrictive and the invention is not limited to these highlighted combinations. As is discussed in more detail in the Conclusion section, the invention encompasses all possible modifications and variations within the scope of the issued claims, which are appended to the very end of the patent.
- A method for connecting at layer 2 a mesh or ad hoc network to a wired shared access network through multiple mesh gateways (nodes that are both on the mesh and on the shared access network), such that no forwarding loops are formed, and wherein the first architecture (described elsewhere herein) is used.
- A method for connecting at
layer 2 one or more wired shared access networks to each other through a mesh network, such that each shared access network has multiple gateways onto the mesh network, such that no forwarding loops are formed, and wherein the first architecture (described elsewhere herein) is used. - A method for connecting at layer 2 a mesh or ad hoc network to a wired shared access network through multiple mesh gateways (nodes that are both on the mesh and on the shared access network), such that no forwarding loops are formed, and wherein the second architecture (described elsewhere herein) is used.
- A method for connecting at
layer 2 one or more wired shared access networks to each other through a mesh network, such that each shared access network has multiple gateways onto the mesh network, such that no forwarding loops are formed, and wherein the second architecture (described elsewhere herein) is used. - A method for automatic rerouting of traffic within a mesh from one mesh gateway in a wired shared access network to another mesh gateway in another wired shared access network connected to the mesh such that the best path within the mesh is used for forwarding traffic between any two shared access networks. The foregoing method implemented according to at least one of the first architecture (described elsewhere herein) and the second architecture (described elsewhere herein).
- A first embodiment comprising a method comprising communicating packet data between a self-organizing network and a shared access network via a group of network interface nodes, each node being a member of the self-organizing network and having a respective communication link with the shared access network; enabling network performance improvements; and wherein the network performance improvements comprise at least one of preventing broadcast loops between the self-organizing network and the shared access network, avoiding forwarding of more than one copy of a packet from the shared access network onto the self-organizing network, and routing a packet that specifies a source and a destination via a best path within the self-organizing network according to the source and the destination. The aforementioned embodiment further comprising executing a control protocol to enable the network performance improvements.
- The first embodiment wherein the shared access network is a wired network. The first embodiment wherein the communicating is in accordance with a traffic splitting operation. The foregoing embodiment wherein the traffic splitting operation is in accordance with a load-balancing objective. The first embodiment wherein the communicating comprises splitting traffic communicated between an endpoint accessible via the self-organizing network and an endpoint accessible via the shared access network between at least two of the communication links. The first embodiment wherein the communicating comprises splitting traffic communicated between an endpoint in the self-organizing network and an endpoint accessible via the shared access network between at least two of the communication links. The foregoing embodiment wherein the at least two of the communication links are terminated at distinct devices of at least one of the self-organizing network and the shared access network.
- The first embodiment wherein the communicating is in accordance with a failure recovery operation. The foregoing embodiment wherein the failure recovery operation comprises shifting traffic communicated between an endpoint in the self-organizing network and an endpoint accessible via the shared access network from a first one of the communication links to a second one of the communication links when the first one of the communication links fails. The foregoing embodiment wherein the first one and the second one of the communication links are terminated at distinct ports of at least one of the self-organizing network and the shared access network.
- The first embodiment wherein the group of network interface nodes is a gateway group, and each of the network interface nodes operates as a respective network gateway interface; the control protocol is a distributed control protocol executed on the gateway group; and the distributed control protocol comprises communicating control information between the network gateway interfaces. The foregoing embodiment comprising communicating data between the self-organizing network and another shared access network via another gateway group. The foregoing embodiment wherein each of the gateway groups are identified by unique gateway group identifiers.
- The first embodiment wherein the group of interface nodes is a gateway group communicating control information between each other via a distributed coordination protocol. The foregoing embodiment wherein the coordination protocol comprises selecting a member of the gateway group as a designated broadcast server. The foregoing embodiment wherein the designated broadcast server serves as an ingress mesh interface for broadcast packets entering the self-organizing network. The foregoing embodiment wherein interface nodes other than the designated broadcast server drop broadcast packets destined for any node of the self-organizing network. The foregoing embodiment further comprising forwarding a unicast packet from the shared access network to the self-organizing network. The foregoing embodiment wherein if the network interface nodes lack state for the destination of the unicast packet, then the designated broadcast server floods the unicast packet onto the self-organizing network. The foregoing embodiment wherein the unicast packet is a first unicast packet and further comprising determining state for the destination of the first unicast packet in response to information received from forwarding a second unicast packet from the destination to the source. The foregoing embodiment wherein the forwarding of the second unicast packet is after the flood of the first unicast packet.
- The first embodiment wherein the group of interface nodes is operated as a gateway group identified by a shared gateway group identifier. The foregoing embodiment wherein a designated broadcast server elected by the gateway group forwards broadcast packets from the shared access network to the self-organizing network.
- The first embodiment further comprising, in an ingress mesh network gateway interface node, inserting a list of egress mesh network gateway interface nodes into a control field of a broadcast packet before forwarding the broadcast packet onto the self-organizing network. The foregoing embodiment wherein the list comprises one entry per shared access network in communication with the self-organizing network. The foregoing embodiment wherein each respective entry corresponds to a best route from the ingress mesh network interface node to the shared access network reachable via the egress mesh network gateway interface node identified by the respective entry.
- The first embodiment wherein a member of the group of interface nodes forwards a broadcast packet from the self-organizing network onto the shared access network if the broadcast packet header lists the member. The foregoing embodiment wherein a designated broadcast server is identified by the group of gateway interface nodes. The foregoing embodiment wherein if the forwarding member is distinct from the designated broadcast server, then before forwarding the broadcast packet, the forwarding member transmits a synchronization packet to the designated broadcast server. The foregoing embodiment wherein the synchronization packet notifies the designated broadcast server that the forwarding member is going to forward the broadcast packet onto the shared access network. The foregoing embodiment wherein the designated broadcast server, in response to the synchronization packet, omits forwarding the broadcast packet onto the self-organizing network. The foregoing embodiment wherein the broadcast packet header list is populated with one entry per shared access network in communication with the self-organizing network. The foregoing embodiment wherein an ingress mesh network gateway interface node populates the broadcast packet header list. The foregoing embodiment wherein each member of the broadcast packet header list corresponds to a best route from the ingress mesh network gateway interface node to the shared access network reachable via the node identified by the respective list member.
- The first embodiment further comprising forwarding a broadcast packet from the self-organizing network to the shared access network. The foregoing embodiment wherein the forwarding of the broadcast packet is via a forwarding node, and the forwarding node records that the broadcast packet source is local to the self-organizing network. The foregoing embodiment wherein all network interface nodes except the forwarding node process the broadcast packet as if it were local to the shared access network. The foregoing embodiment wherein the processing is at least in part in response to the forwarding node record.
- The first embodiment wherein the shared access network is a first shared access network, the group of network interface nodes is a first group of network interface nodes, and further comprising communicating packet data between the first shared access network and a second shared access network via one of the first group of network interface nodes and one of a second group of network interface nodes, the second group of network interface nodes being members of the self-organizing network and having respective communication links with the second shared access network. The foregoing embodiment wherein a unicast packet received by the one of the first group of network interface nodes is forwarded to the one of the second group of network interface nodes if the unicast packet is destined for the second shared access network. The foregoing embodiment wherein the one of the second group of interface nodes is on the best path from the one of the first group of network interface nodes to the second shared access network.
- The first embodiment further comprising forwarding a unicast packet from the self-organizing network onto the shared access network. The foregoing embodiment wherein the unicast packet forwarding is via a forwarding member of the network interface group. The foregoing embodiment wherein the forwarding member records that the unicast packet source is local to the self-organizing network. The foregoing embodiment wherein members of the group of network interface nodes other than the forwarding member process the unicast packet as if it were local to the shared access network.
- The first embodiment further comprising forwarding a unicast packet from the shared access network to a destination in or reachable through the self-organizing network. The foregoing embodiment wherein the forwarding of the unicast packet is via a network interface node that previously recorded the destination as being in or reachable through the self-organizing network. The foregoing embodiment wherein the network interface node that previously recorded the destination recorded the destination in association with forwarding a previous unicast or broadcast packet from the self-organizing network to the shared access network.
- A second embodiment having all of the elements of the first embodiment further comprising allocating an endpoint in the shared access network as a mesh server; and in each of the network gateway interface nodes, communicating the packet data via a respective point-to-point link established with the mesh server. The foregoing embodiment wherein all of the packet data directed from the self-organizing network to the shared access network is routed via the mesh server. The second embodiment wherein all of the packet data directed from the shared access network to the self-organizing network is routed via the mesh server.
- A third embodiment having all of the elements of the first embodiment wherein each of the network interface nodes operates as a respective physical network gateway interface; a node in the shared access network operates as a virtual network gateway interface; and the control protocol directs the communication of packet data to use the virtual network gateway interface as a terminus. The foregoing embodiment wherein all of the packet data directed from the self-organizing network to the shared access network is routed via the virtual network gateway interface. The third embodiment wherein all of the packet data directed from the shared access network to the self-organizing network is routed via the virtual network gateway interface. The third embodiment wherein all of the packet data between the shared access network and the self-organizing network is routed via the virtual network gateway interface.
- Any of the first, second, and third embodiments wherein at least a portion of the self-organizing network operates as at least one of a wireless network and a wired network. Any of the first, second, and third embodiments wherein at least a wireless portion of the self-organizing network operates as a wireless network and a wired portion of the self-organizing network operates as a wired network. Any of the first, second, and third embodiments wherein at least a portion of the self-organizing network is an ad hoc network. Any of the first, second, and third embodiments wherein at least a portion of the self-organizing network is a mesh network. Any of the first, second, and third embodiments wherein at least a portion of the self-organizing network operates according to an 802.11 compatible wireless communication protocol.
- A fourth embodiment of a computer readable medium having a set of instructions stored therein which when executed by a processing element causes the processing element to perform processes comprising any of the first, second, and third embodiments.
- A fifth embodiment of a system comprising a processor and a memory adapted to store instructions to be executed by the processor, the instructions implementing any of the first, second, and third embodiments.
- A sixth embodiment of system comprising a means for identifying a node in a shared access network as a mesh server; a means for forwarding traffic between a wireless mesh network and the shared access network via at least one of a plurality of gateway mesh nodes and the mesh server, the gateway mesh nodes enabled to operate in the wireless mesh network; and wherein the means for forwarding comprises a means for transit via a respective virtual mesh link associated with each of the gateway mesh nodes.
- A seventh embodiment of a method comprising identifying a node in a shared access network as a mesh server; forwarding traffic between a wireless mesh network and the shared access network via at least one of a plurality of gateway mesh nodes and the mesh server; operating the gateway mesh nodes in the wireless mesh network; and wherein the forwarding comprises transiting via a respective virtual mesh link associated with each of the gateway mesh nodes.
- An eighth embodiment of a system comprising a shared access network; a server node comprised in the shared access network; wherein the shared access network is enabled to select the server node from among a plurality of nodes comprised in the shared access network; and wherein the server node is enabled to forward traffic between a wireless mesh network and the shared access network at least in part via at least one of a plurality of gateway nodes of the wireless mesh network, and further at least in part via a respective virtual link associated with each of the gateway nodes.
- A ninth embodiment of a system comprising a wireless mesh network; a gateway node comprised in the wireless mesh network; and wherein the gateway node is enabled to forward traffic between a shared access network and the wireless mesh network at least in part via at least one server node comprised in the shared access network, and further at least in part via a virtual link enabled to communicate with the gateway node.
- A tenth embodiment of a computer readable medium having a set of instructions stored therein which when executed by a processing element causes the processing element to perform functions comprising selecting a server node from a plurality of nodes of a shared access network; and controlling forwarding of traffic between a wireless mesh network and the shared access network via at least one of a plurality of gateway nodes of the wireless mesh network, and further at least in part via a respective virtual link associated with each of the gateway nodes.
- An eleventh embodiment of a system comprising means for identifying a group of nodes operating in a wireless mesh network as a gateway group to communicate with a shared access network, each of the gateway group nodes enabled to access a respective wired link to communicate with the shared access network and a respective wireless link to communicate within the wireless mesh network; in the gateway group, means for selecting one of the nodes of the gateway group as a designated broadcast server; in the designated broadcast server, means for forwarding broadcast packets from the shared access network into the wireless mesh network; and in all the nodes of the gateway group except the designated broadcast server, means for ignoring broadcast packets from the shared access network.
- A twelfth embodiment of a method comprising identifying a group of nodes operating in a wireless mesh network as a gateway group to communicate with a shared access network, each of the gateway group nodes enabled to access a respective wired link to communicate with the shared access network and a respective wireless link to communicate within the wireless mesh network; in the gateway group, selecting one of the nodes of the gateway group as a designated broadcast server; in the designated broadcast server, forwarding broadcast packets from the shared access network into the wireless mesh network; and in all the nodes of the gateway group except the designated broadcast server, ignoring broadcast packets from the shared access network.
- A thirteenth embodiment of a system comprising a wireless mesh network; a plurality of nodes in the wireless mesh network enabled to operate as a group of gateway nodes, each node of the gateway group enabled to communicate with a shared access network via a respective wired link and further enabled to communicate within the wireless mesh network via a respective wireless link; wherein the gateway group is enabled to select a designated one of the nodes of the gateway group as a designated broadcast server; wherein the designated broadcast server is enabled to forward packets from the shared access network into the wireless mesh network; and wherein all of the nodes of the gateway group except the designated broadcast server are enabled to ignore broadcast packets from the shared access network.
- A fourteenth embodiment of a system comprising means for identifying a first node in a first shared access network as a first mesh server; means for identifying a second node in a second shared access network as a second mesh server; means for forwarding traffic between the shared access networks via at least one of a plurality of gateway mesh nodes and the mesh servers, the gateway mesh nodes enabled to operate in a wireless mesh network; wherein the shared access networks are wired networks; wherein the means for forwarding comprises means for transit via a respective virtual mesh link associated with each of the gateway mesh nodes; wherein the virtual mesh links are implemented via respective point-to-point tunnels operating in part with respective wired links coupled to the first and the second mesh servers; wherein the mesh servers comprise respective means for tagging broadcast packets provided to the gateway mesh nodes; and wherein nodes of the wireless mesh network are enabled to examine at least some results of the means for tagging in part to eliminate redundant transmission of the broadcast packets.
- A fifteenth embodiment of a method comprising identifying a first node in a first shared access network as a first mesh server; identifying a second node in a second shared access network as a second mesh server; forwarding traffic between the shared access networks via at least one of a plurality of gateway mesh nodes and the mesh servers, the gateway mesh nodes operating in a wireless mesh network; wherein the shared access networks are wired networks; wherein the forwarding comprises transit via a respective virtual mesh link associated with each of the gateway mesh nodes; wherein the virtual mesh links are implemented via respective point-to-point tunnels operating in part with respective wired links coupled to the first and the second mesh servers; wherein the mesh servers tag broadcast packets provided to the gateway mesh nodes; and wherein nodes of the wireless mesh network examine at least some results of the tagging in part to eliminate redundant transmission of the broadcast packets.
- A sixteenth embodiment of a system comprising means for identifying a first group of nodes operating in a wireless mesh network as a first gateway group to communicate with a first shared access network, each of the first gateway group nodes enabled to access a respective wired link to communicate with the first shared access network and a respective wireless link to communicate within the wireless mesh network; means for identifying a second group of nodes operating in the wireless mesh network as a second gateway group to communicate with a second shared access network, each of the second gateway group nodes enabled to access a respective wired link to communicate with the second shared access network and a respective wireless link to communicate within the wireless mesh network; means for forwarding traffic from the first shared access network to the second shared access network via the gateway groups, the means for forwarding comprising via one of the nodes of the first gateway group enabled to operate as an ingress node, means for forwarding the traffic from the first shared access network onto the wireless mesh network, in the wireless mesh network, means for forwarding the traffic, according to a transit path, from the ingress node to one of the nodes of the second gateway group enabled to operate as an egress node, and in the egress node, means for forwarding the traffic from the wireless mesh network onto the second shared access network; wherein the shared access networks are wired networks; wherein the egress node is selected in part based on a best egress path; wherein the transit path is selected in part based on a best transit path; wherein the first gateway group nodes all share a common first gateway group identifier; and wherein the second gateway group nodes all share a common second gateway group identifier.
- A seventeenth embodiment of a method comprising identifying a first group of nodes operating in a wireless mesh network as a first gateway group to communicate with a first shared access network, each of the first gateway group nodes enabled to access a respective wired link to communicate with the first shared access network and a respective wireless link to communicate within the wireless mesh network; identifying a second group of nodes operating in the wireless mesh network as a second gateway group to communicate with a second shared access network, each of the second gateway group nodes enabled to access a respective wired link to communicate with the second shared access network and a respective wireless link to communicate within the wireless mesh network; forwarding traffic from the first shared access network to the second shared access network via the gateway groups, the forwarding comprising via one of the nodes of the first gateway group operating as an ingress node, forwarding the traffic from the first shared access network onto the wireless mesh network, in the wireless mesh network, forwarding the traffic, according to a transit path, from the ingress node to one of the nodes of the second gateway group operating as an egress node, and in the egress node, forwarding the traffic from the wireless mesh network onto the second shared access network; wherein the shared access networks are wired networks; wherein the egress node is selected in part based on a best egress path; wherein the transit path is selected in part based on a best transit path; wherein the first gateway group nodes all share a common first gateway group identifier; and wherein the second gateway group nodes all share a common second gateway group identifier.
- An eighteenth embodiment of a system comprising means for communicating packet data between a self-organizing network and a shared access network via a group of network interface nodes, each interface node being a member of the self-organizing network and having access to a respective communication link with the shared access network; means for executing a control protocol to enable network performance improvements; and wherein the network performance improvements comprise at least one of preventing broadcast loops between the self-organizing network and the shared access network, avoiding forwarding of more than one copy of a packet from the shared access network onto the self-organizing network, and routing a packet that specifies a source and a destination via a best path within the self-organizing network according to the source and the destination.
- A nineteenth embodiment of a method comprising communicating packet data between a self-organizing network and a shared access network via a group of network interface nodes, each interface node being a member of the self-organizing network and having access to a respective communication link with the shared access network; executing a control protocol to enable network performance improvements; and wherein the network performance improvements comprise at least one of preventing broadcast loops between the self-organizing network and the shared access network, avoiding forwarding of more than one copy of a packet from the shared access network onto the self-organizing network, and routing a packet that specifies a source and a destination via a best path within the self-organizing network according to the source and the destination.
- A twentieth embodiment of a computer readable medium having a set of instructions stored therein which when executed by a processing element causes the processing element to perform functions comprising selecting a node of a group of interface nodes to operate as a designated broadcast server, the selecting being part of a distributed protocol communicating control information between the group of interface nodes; selectively forwarding broadcast packets from a shared access network into a wireless mesh network; selectively ignoring broadcast packets from the shared access network; wherein the group of interface nodes are enabled to operate in the wireless mesh network via a respective wireless link, and each of the interface nodes is enabled to communicate with the shared access network via a respective communication link; wherein the selectively forwarding is via the designated broadcast server; and wherein the selectively ignoring is via all members of the group of interface nodes other than the designated broadcast server.
- A twenty-first embodiment of a system comprising a plurality of wireless nodes enabled to operate in a wireless mesh network, each of the wireless nodes comprising a processing element enabled to execute instructions obtained from a respective computer readable medium; a plurality of wired links enabled to couple a subset of the wireless nodes to at least one shared access network; wherein a first portion of the instructions is to be executed to select a node of the subset to operate as a designated broadcast server, the selecting according to a distributed protocol that comprises exchanging control information between the nodes of the subset; wherein a second portion of the instructions is to be executed by the designated broadcast server to control selectively forwarding broadcast packets from the at least one shared access network to the wireless mesh network; and wherein a third portion of the instructions is to be executed by all the nodes of the subset except the designated broadcast server to control selectively ignoring the broadcast packets.
- Redundant and load-balanced access between a mesh and each of one or more shared access networks is provided, in the first architecture, by a respective group of NGIs operating as a gateway group. One of the NGIs in each of the respective gateway groups is elected, by elements of the gateway group, to operate as a Designated Broadcast Server (DBS). The DBS is the only node within the respective gateway group enabled to forward broadcast packets from the respective shared access network to the mesh.
-
FIG. 1 illustrates selected details of an embodiment of the first architecture of a mesh network having multiple mesh gateway interfaces to multiple shared access networks. Each of MN1-4 102.1-4 and MN6-7 102.6-7 are mesh nodes operating as NGIs that are members of illustrated Mesh Network 100. MN1 and MN2 are operated asGateway Group 1 103.1 to provide any combination of redundant and load-balanced access to shared access network Subnet A 101.A (operating as Broadcast Domain 1). Similarly MN3 and MN4 operate asGateway Group 2 103.2 with Subnet B 101.B ofBroadcast Domain 2, and MN6 and MN7 operate asGateway Group 3 103.3 with Subnet C 101.0 ofBroadcast Domain 3. Gateway groups may include any number of NGIs (such as three, four, or more), and any number of shared access networks may be accessible from a single mesh network via a corresponding number of gateway groups. - Members of a gateway group (such as MN1 and MN2 of Gateway Group 1) are identified as belonging to the same shared access network (such as Subnet A having Broadcast Domain 1), and thus an element of the mesh (or an element enabled for communication via the mesh) may consider any member of the gateway group as an alternate NGI for communication with the shared access network. All NGIs of each respective gateway group are assigned an ID that is the same for all elements of the respective gateway group but unique with respect to other gateway groups (such as MN1 and MN2 being assigned ID “1”, and MN3 and M4 being assigned ID “2”, and so forth). Gateway group information is distributed as part of configuring the mesh in some embodiments. Gateway group information is determined via an autoconfiguration protocol in some embodiments.
- Election of a DBS for each respective gateway group addresses issues described with respect to Mesh Network Concepts Nos. 1 and 2, described elsewhere herein. The NGIs of each respective gateway group elect a respective DBS among themselves via a distributed protocol. Each respective DBS serves to allow broadcast packets into the mesh from each respective shared access network. All other NGIs of the respective gateway group drop all broadcast packets received from the respective shared access network.
-
FIGS. 2A, 2B, and 2C illustrate selected details of an embodiment of a self-healing mesh network having a control protocol for assigning a DBS in each of one or more partitions of the mesh network. Illustrated mesh network Mesh 210 having mesh network nodes MN/NGI 211, MN/NGI 212, and MN/NGI/DBS 213 is enabled for communication with Shared Access Network 220. Currently operational DBS 213 is indicated inFIG. 2A by the notation MN/NGI/DBS, indicating that the Mesh Node (MN) so annotated is both an NGI and a DBS. -
FIG. 2B illustrates that if DBS 213 ofFIG. 2A (or the link to the shared access network of the DBS) fails, a new DBS (MN/NGI/DBS (NEW) 212) is elected by a control protocol that uses a combination of static and dynamic selection algorithms. Any NGI may act as a DBS. In some usage scenarios, at any given time there is only one DBS active in a Gateway group. However, in situations when a mesh is partitioned into two or more disjoint networks (with NGIs for the same shared access network present in each partition) having only one DBS leads to some partitions not being able to transport any broadcast messages. A solution is to have one DBS active for each such disjoint partition of the mesh. -
FIG. 2C illustrates that failed DBS 213 ofFIG. 2B has recovered but with the mesh partitioned in two portions, each having at least one NGI and DBS. The control protocol has elected a DBS for each mesh partition as indicated by the annotation MN/NGI/DBS1 of 213 forpartition 1 221.1, and MN/NGI/DBS2 of 212 forpartition 2 221.2. - Once the disjoint partitions join back together, only one DBS remains active. For example, the network may return to the situation illustrated by
FIG. 2A . All NGIs in a gateway group actively participate in selection and decommissioning of the DBS NGIs to handle failures and partitions without any user intervention, thus maintaining the self-healing nature of the mesh network. - Broadcast Packet Aspect No. 1: In selected embodiments, the DBS within a gateway group forwards a broadcast packet originated on the shared access network into the mesh, thus serving as the Ingress Mesh Interface for the packet.
- Broadcast Packet Aspect No. 2: Before forwarding the broadcast packet, the Ingress Mesh NGI attaches to the packet a list of Egress Mesh NGIs, one per mesh-attached shared access network. Each Egress Mesh NGI in the list corresponds to the best route from the Ingress Mesh NGI to the shared access network the respective Egress Mesh NGI provides communication with. Stated another way, for each mesh-attached shared access network, one Egress Mesh NGI is selected from among the Egress Mesh NGIs coupled to the respective shared access network, such that the selected Egress Mesh NGI is the best route from the Ingress Mesh NGI to the respective shared access network. Information on paths and the metric of each path is available through the routing protocol, that at each node keeps track of the best routes to all other nodes in the mesh.
- Broadcast Packet Aspect No. 3: A mesh NGI only forwards a broadcast packet from the mesh onto the shared access network if the mesh NGI is listed in the header of the packet. If the mesh NGI is not the DBS for the gateway group, then before forwarding the packet into the shared access network, an Egress NGI sends a synchronization packet to the DBS NGI for the mesh NGI providing notification of forwarding of a broadcast packet onto the shared access network so that the DBS does not assume the packet was sent on the shared access network and needs to be forwarded onto the mesh. Thus the broadcast packet follows the best path from an Ingress Mesh NGI to each shared access network and no broadcast loops are formed (addressing issues raised in Mesh Network Concept No. 1).
- Broadcast Packet Aspect No. 4: When a broadcast is forwarded by a mesh NGI onto a shared access network, the NGI forwarding it records that the packet source is local to the mesh, while all other NGIs overhear the packet and assume that the source of the packet is local to the shared access network. In some embodiments the recording of the packet source as local to the mesh occurs when the packet source is in the mesh and also when the packet source is reachable through the mesh. As a result, when a packet is subsequently sent to the same node, only one NGI forwards the packet into the mesh and communication between a given source and destination is symmetric. In other words, the same path is used for packets from the source to the destination and vice versa.
- Unicast Packet Aspect No. 1: A unicast packet is received at a Mesh Ingress Client Interface/NGI. If the destination node is in a shared access network that is associated with a Gateway Group, then the packet is forwarded to the NGI that is part of the Gateway group and has the least cost from the ingress node with respect to all NGIs belonging to the Gateway Group. The least cost forwarding tends to conserve wireless bandwidth and improves overall mesh performance.
- Unicast Packet Aspect No. 2: When a unicast packet is forwarded onto the shared access network from a mesh, the forwarding NGI records that the packet source is local to the mesh, while all other NGIs overhear the packet and assume that the source of the packet is local to the shared access network. In some embodiments the recording of the packet source as local to the mesh occurs when the packet source is in the mesh and also when the packet source is reachable through the mesh. As a result, when a packet is subsequently sent to that same node, only one NGI forwards the packet into the mesh and communication between a given source and destination is symmetric, i.e., the same path is used for packets from the source to the destination and vice versa.
- Unicast Packet Aspect No. 3: When a unicast packet is originated on the shared access network, and the mesh NGIs have state for the destination of the packet (e.g., through Unicast Packet Scenario No. 1 or through Broadcast Packet Scenario No. 4), the one mesh NGI that has recorded the destination as being a mesh destination forwards the packet into the mesh. The forwarding is directed to the closest Egress Mesh NGI within the gateway group of the shared access network where the packet is destined.
- Unicast Packet Aspect No. 4: When a unicast packet is originated on the shared access network, and the mesh NGIs do not have state for the destination of the packet (e.g., the state was not used for a while and expired), the DBS floods the packet into the mesh. Eventually, as a result of packets sent in the other direction, the state for how to reach the destination will be relearned, and packets will start being delivered through unicast within the mesh as in Unicast Packet Scenario No. 3.
-
FIG. 3 illustrates selected details of an embodiment of the second architecture of a mesh network having multiple mesh gateway interfaces to a common shared access network. In the second architecture, multiple mesh NGIs are connected to a common shared access network while preserving best path routing within the mesh at all times. - Mesh Network 310 is illustrated with a plurality of mesh nodes, including mesh nodes participating in the mesh as MNs 311 and 312, and mesh nodes participating in the mesh and operating as NGIs as MN/NGIs 313-315. The mesh network is enabled for communication with Shared Access Network 320. The shared access network includes mesh servers MS-A 321.A and MS-B 321.B enabled for communication with
Layer 2 Wired Network 330 via Wired Links 370.A-B. Also illustrated are (Active) Logical Connections 340.1-3, (Backup) Logical Connections 350.1-3, and Active/Backup Mesh Server Synchronization 360. - Rather than employing coordination protocols between the mesh NGIs, the second architecture employs an additional node in the shared access network, referred to as a Mesh Server (MS), such as “MS-A” 321.A, illustrated. The additional node is coupled to the mesh via a wired connection, and acts as a virtual NGI, executing a mesh routing protocol. The devices physically connected to both the mesh and the shared access network operate as mesh nodes having virtual mesh links to the virtual mesh NGI. The virtual mesh links may be implemented as point-to-point tunnels. In some embodiments the virtual mesh NGI is collocated on a device also having a physical NGI.
- Employing one virtual mesh NGI forces packets entering and exiting the mesh to always enter and exit the mesh at one point, thus preventing broadcast loops (Mesh Network Concept No. 1). The single mesh entry/exit point also ensures that only one copy of each packet enters the mesh (Mesh Network Concept No. 2). For broadcast or flooded packets, the virtual NGI sends a copy of the packet along each of the links to the physical mesh NGIs across the virtual mesh links. However, at the point where the packet is transmitted on a mesh link, the packet includes control information that enables forwarding nodes to detect duplicate copies of the packet. Thus even though a broadcast packet may enter the mesh through multiple physical mesh NGIs, each node in the mesh would only forward a single copy of the packet.
- Since all the NGIs are part of the mesh in embodiments based on the second architecture, the routing protocol may determine the best paths from a virtual NGI in one access network to a virtual NGI in any other access network, thus addressing Mesh Network Concept No. 3.
- In some embodiments a pair of MSs are used to provide redundancy, with a first additional node of the pair operating as an active node (such as “MS-A” 321.A, illustrated) and a second additional node of the pair operating as a backup node (such as “MS-B” 321.B, illustrated). In some embodiments synchronization processing is employed between the active and backup MSs (such as “Active/Backup Mesh Server Synchronization” 360, illustrated).
- Embodiments in accordance with the second architecture may provide for concurrent access to a plurality of shared access networks. Each of the shared access networks includes one or more MSs. MN/NGI nodes communicate with one or more shared access networks via at least one MS that is a member of the respective shared access network. For example, to communicate with two shared access networks, a first virtual link is established from a first MN/NGI to a first MS that is a member of a first of the two shared access networks. A second virtual link is established from a second MN/NGI to a second MS that is a member of the second of the two shared access networks.
-
FIG. 4 illustrates selected details of hardware aspects of an embodiment of a node. The illustrated node includes Processor 405 coupled to various types of storage, including volatile read/write memory “Memory Bank” elements 401.1-2 via DRAM Memory Interface 402, and non-volatile read/write memory FLASH 403 and EEPROM 404 elements. The processor is further coupled to Ethernet Interface 406 providing a plurality of Ethernet Ports 407 for establishing wired links, and Wireless Interface 409 providing radio communication of packets for establishing wireless links. In some embodiments the Wireless Interface is compatible with an IEEE 802.11 wireless communication standard (such as any of 802.11a, 802.11b, and 802.11g). In some embodiments the Wireless Interface operates (in conjunction with any combination of hardware and software elements) to collect statistics with respect to neighboring nodes of a mesh. The statistics may include any combination of signal strength and link quality. In some embodiments the Wireless Interface is configurable to drop all packets below a settable Received Signal Strength Indicator (RSSI) threshold. The illustrated partitioning is only one example, as other equivalent embodiments of a node are possible. - The illustrated node may function as any one of the mesh nodes illustrated in
FIGS. 1, 2A, 2B, 2C, and 3 (for example any of MN1-8, any node designated as MN/NGI, and any node designated as MNG/NGI/DBS). The Wireless Interface ofFIG. 4 may enable communication between nodes and provide low-level transport for packets moving between elements of the mesh and one or more shared access networks. The Ethernet ports ofFIG. 4 may provide for wired communication between a node operating as an NGI and an associated shared access network (e.g. any of the couplings between MN1-2 and Subnet A, between MN3-4 and Subnet B, and between MN6-7 and Subnet C ofFIG. 1 ). - In operation the processor fetches instructions from any combination of the storage elements (DRAM, FLASH, and EEPROM) and executes the instructions. In the context of the first architecture, some of the instructions correspond to execution of software associated with operations relating to processing as a member of a gateway group. The operations include the distributed protocol implementing election of a DBS and further include subsequent filtering/passing of broadcast packets. The operations further include processing relating to any combination of redundancy and load-balancing. Gateway group identification information may be stored in any combination of the storage elements according to instructions executed during processing associated with mesh set up and initialization. In the context of the second architecture, some of the instructions correspond to execution of software associated with operations relating to interfacing to one or more mesh MSs, including redundancy and load-balancing functions.
-
FIG. 5 illustrates selected details of software aspects of an embodiment of a node. The illustrated software includes Network Management System (NMS) Manager 501 interfacing to Network Interface Manager 502 and Fault, Configuration, Accounting, Performance, and Security (FCAPS) Manager 503. In some embodiments the NMS interfaces between management software operating external to the node and software operating internal to the node (such as various applications and FCAPS). The Network Interface Manager manages physical network interfaces (such as the Ethernet and Wireless Interfaces of a node). The Network Interface Manager assists the NMS in passing dynamic configuration changes (as requested by a user) through the management software to FCAPS. In some embodiments FCAPS includes functions to store and retrieve configuration information, and FCAPS functions serve all applications requiring persistent configuration information. FCAPS may also assist in collecting fault information and statistics and performance data from various operating modules of the node. FCAPS may pass any portion of the collected information, statistics, and data to the NMS. - Kernel Interface 510 interfaces the Managers to Routing and Transport Protocols layer 511 and Flash File System module 513. The Routing Protocols include portions of processing relating to operation as a member of a gateway group or interfacing to MSs, according to architecture, as well as general processing relating to operation as a node of the mesh and forwarding packets. The Transport Protocols include TCP and UDP. The Flash File System module interfaces to Flash Driver 516 that is illustrated conceptually coupled to FLASH hardware element 523 that is representative of a flash file system stored in any combination of the FLASH and EEPROM elements of
FIG. 4 . Layer-2 Abstraction Layer 512 interfaces the Routing and Transport Protocols to Ethernet and Radio Drivers 514 and 515, respectively. The Ethernet Driver is illustrated conceptually coupled to Ethernet Interface 526 that is representative of the Ethernet Interface ofFIG. 4 . The Radio Driver is illustrated conceptually coupled to Wireless Interface 529 that is representative of the Wireless Interface ofFIG. 4 . In some embodiments the software may also include a serial driver. The software is stored on a computer readable medium (e.g. any combination of the DRAM, FLASH, and EEPROM elements), and is executed by the processor. The illustrated partitioning is an example only, as many other equivalent arrangements of layers are possible. - Although the foregoing embodiments have been described in some detail for purposes of clarity of understanding, the invention is not limited to the details provided. There are many alternative ways of implementing the invention. The disclosed embodiments are illustrative and not restrictive. It will be understood that many variations in construction, arrangement and use are possible consistent with the teachings and within the scope of the claims appended to the issued patent. For example, interconnect and function-unit bit-widths, clock speeds, and the type of technology used may generally be varied in each component block. The order and arrangement of flowchart and flow diagram process and function elements may generally be varied. Also, unless specifically stated to the contrary, the value ranges specified, the maximum and minimum values used, or other particular specifications (such as integration techniques and design flow technologies), are merely those of the illustrative embodiments, can be expected to track improvements and changes in implementation technology, and should not be construed as limitations.
- Functionally equivalent techniques known to those of ordinary skill in the art may be employed instead of those illustrated to implement various components, sub-systems, functions, operations, routines, and sub-routines. The names given to interconnect, logic, functions, and routines are merely illustrative, and should not be construed as limiting the concepts taught. It is also understood that many design functional aspects may be carried out in either hardware (i.e., generally dedicated circuitry) or software (i.e., via some manner of programmed controller or processor), as a function of implementation dependent design constraints and the technology trends of faster processing (which facilitates migration of functions previously in hardware into software) and higher integration density (which facilitates migration of functions previously in software into hardware). Specific variations may include, but are not limited to: differences in networking technology (such as wired/wireless, protocols, and bandwidths); and other variations to be expected when implementing the concepts taught herein in accordance with the unique engineering and business constraints of a particular application.
- The embodiments have been illustrated with detail and environmental context well beyond that required for a minimal implementation of many of aspects of the concepts taught. Those of ordinary skill in the art will recognize that variations may omit disclosed components without altering the basic cooperation among the remaining elements. It is thus understood that much of the details disclosed are not required to implement various aspects of the concepts taught. To the extent that the remaining elements are distinguishable from the prior art, omitted components are not limiting on the concepts taught herein.
- All such variations in design comprise insubstantial changes over the teachings conveyed by the illustrative embodiments. It is also understood that the concepts taught herein have broad applicability to other networking and communication applications, and are not limited to the particular application or industry of the illustrated embodiments. The invention is thus to be construed as including all possible modifications and variations encompassed within the scope of the claims appended to the issued patent.
Claims (35)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/457,836 US20170250856A1 (en) | 2005-07-30 | 2017-03-13 | Utilizing Multiple Mesh Network Gateways in a Shared Access Network |
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US70452805P | 2005-07-30 | 2005-07-30 | |
US70813105P | 2005-08-13 | 2005-08-13 | |
US70973805P | 2005-08-19 | 2005-08-19 | |
US80651906P | 2006-07-03 | 2006-07-03 | |
PCT/US2006/028903 WO2007016118A1 (en) | 2005-07-30 | 2006-07-26 | Utilizing multiple mesh network gateways in a shared access network |
US12/018,152 US8559447B2 (en) | 2005-07-30 | 2008-01-22 | Utilizing multiple mesh network gateways in a shared access network |
US14/046,950 US9602399B2 (en) | 2005-07-30 | 2013-10-05 | Utilizing multiple mesh network gateways in a shared access network |
US15/457,836 US20170250856A1 (en) | 2005-07-30 | 2017-03-13 | Utilizing Multiple Mesh Network Gateways in a Shared Access Network |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/046,950 Continuation US9602399B2 (en) | 2005-07-30 | 2013-10-05 | Utilizing multiple mesh network gateways in a shared access network |
Publications (1)
Publication Number | Publication Date |
---|---|
US20170250856A1 true US20170250856A1 (en) | 2017-08-31 |
Family
ID=37708939
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/018,152 Active 2028-06-16 US8559447B2 (en) | 2005-07-30 | 2008-01-22 | Utilizing multiple mesh network gateways in a shared access network |
US14/046,950 Active US9602399B2 (en) | 2005-07-30 | 2013-10-05 | Utilizing multiple mesh network gateways in a shared access network |
US15/457,836 Abandoned US20170250856A1 (en) | 2005-07-30 | 2017-03-13 | Utilizing Multiple Mesh Network Gateways in a Shared Access Network |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/018,152 Active 2028-06-16 US8559447B2 (en) | 2005-07-30 | 2008-01-22 | Utilizing multiple mesh network gateways in a shared access network |
US14/046,950 Active US9602399B2 (en) | 2005-07-30 | 2013-10-05 | Utilizing multiple mesh network gateways in a shared access network |
Country Status (9)
Country | Link |
---|---|
US (3) | US8559447B2 (en) |
JP (1) | JP4903206B2 (en) |
KR (1) | KR101309545B1 (en) |
CN (1) | CN101243662B (en) |
CA (2) | CA2884061C (en) |
GB (2) | GB2465499B (en) |
HK (1) | HK1120350A1 (en) |
TW (1) | TWI323110B (en) |
WO (1) | WO2007016118A1 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10104608B2 (en) | 2016-11-07 | 2018-10-16 | Eero Inc. | Systems and methods for enhanced mesh networking |
US10944669B1 (en) | 2018-02-09 | 2021-03-09 | GoTenna, Inc. | System and method for efficient network-wide broadcast in a multi-hop wireless network using packet echos |
US20210091974A1 (en) * | 2018-06-27 | 2021-03-25 | Apple Inc. | Tuning Topology for Distribution Mesh |
US11190391B1 (en) * | 2018-04-16 | 2021-11-30 | Amazon Technologies, Inc. | Network loop detection in hybrid mesh networks |
WO2023187579A1 (en) * | 2022-03-31 | 2023-10-05 | Jio Platforms Limited | System and method for performing ingress/egress active- active routing in 5g networks |
US11811642B2 (en) | 2018-07-27 | 2023-11-07 | GoTenna, Inc. | Vine™: zero-control routing using data packet inspection for wireless mesh networks |
Families Citing this family (87)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060230150A1 (en) * | 2005-03-11 | 2006-10-12 | Interdigital Technology Corporation | Method and apparatus for assigning channels to mesh portals and mesh points of a mesh network |
CN101263689B (en) | 2005-07-20 | 2012-01-11 | 发尔泰公司 | Route optimization for on-demand routing protocols for mesh networks |
WO2007013914A1 (en) | 2005-07-21 | 2007-02-01 | Firetide, Inc. | Method for enabling the efficient operation of arbitrarily interconnected mesh networks |
TWI323110B (en) | 2005-07-30 | 2010-04-01 | Firetide Inc | System and method for a shared access network |
JP4494357B2 (en) * | 2006-03-08 | 2010-06-30 | 富士通株式会社 | Path route calculation method and optical communication network to which this method is applied |
KR101421145B1 (en) | 2008-01-09 | 2014-07-18 | 삼성전자주식회사 | Method for gateway selecting to optimize network capacity gateway in wireless mesh networks |
TWI396409B (en) * | 2008-05-21 | 2013-05-11 | Ralink Technology Corp | Method of multicast packets deliveries in a mesh network |
US9565084B2 (en) * | 2008-12-19 | 2017-02-07 | At&T Intellectual Property I, L.P. | Method and system for evaluating network connectivity in rule-based applications |
WO2010099832A1 (en) * | 2009-03-06 | 2010-09-10 | Telefonaktiebolaget Lm Ericsson (Publ) | Managing network elements |
WO2010132884A1 (en) * | 2009-05-15 | 2010-11-18 | Ciso Technology, Inc. | System and method for a self-organizing network |
WO2010133243A1 (en) * | 2009-05-22 | 2010-11-25 | Nec Europe Ltd. | Method for supporting routing decisions in a wireless mesh network and wireless mesh network |
EP2599264A4 (en) * | 2010-07-29 | 2016-05-18 | Hewlett Packard Development Co | A device and method for egress packet forwarding using mesh tagging |
US8397288B2 (en) * | 2010-08-25 | 2013-03-12 | Itron, Inc. | System and method for operation of open connections for secure network communications |
US10225178B2 (en) | 2010-09-15 | 2019-03-05 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and apparatus for relocating and restoring connections through a failed serving gateway and traffic offloading |
US8848516B2 (en) * | 2010-09-15 | 2014-09-30 | Telefonaktiebolaget L M Ericsson (Publ) | Methods and apparatus for relocating and restoring connections through a failed serving gateway and traffic offloading |
CN102065509B (en) * | 2010-12-31 | 2015-02-04 | 广州杰赛科技股份有限公司 | Wireless mesh network system |
JP5159991B1 (en) * | 2011-12-20 | 2013-03-13 | 三菱電機株式会社 | Communication system and automatic meter reading system |
DE102012215765A1 (en) * | 2012-09-05 | 2014-05-15 | Robert Bosch Gmbh | Gateway module for a communication system, communication system and method for transferring data between users of a communication system |
CN103685011B (en) | 2012-09-14 | 2017-03-15 | 华为技术有限公司 | A kind of method and apparatus for determining energy-efficient routing |
US9288215B2 (en) | 2013-03-08 | 2016-03-15 | Itron, Inc. | Utilizing routing for secure transactions |
WO2014150567A1 (en) | 2013-03-15 | 2014-09-25 | Asguard Networks, Inc. | Industrial network security |
US9468029B2 (en) * | 2014-03-10 | 2016-10-11 | Belkin International Inc. | Unifying multiple wireless networks |
US9300592B2 (en) | 2014-03-14 | 2016-03-29 | International Business Machines Corporation | Physical port sharing in a link aggregation group |
US9559940B2 (en) | 2014-03-14 | 2017-01-31 | International Business Machines Corporation | Take-over of network frame handling in a computing environment |
US9590817B2 (en) * | 2014-04-01 | 2017-03-07 | Belkin International Inc. | Logical network generation using primary gateway credentials |
US10075329B2 (en) * | 2014-06-25 | 2018-09-11 | A 10 Networks, Incorporated | Customizable high availability switchover control of application delivery controllers |
US9729580B2 (en) | 2014-07-30 | 2017-08-08 | Tempered Networks, Inc. | Performing actions via devices that establish a secure, private network |
US9973299B2 (en) | 2014-10-14 | 2018-05-15 | At&T Intellectual Property I, L.P. | Method and apparatus for adjusting a mode of communication in a communication network |
US9312919B1 (en) | 2014-10-21 | 2016-04-12 | At&T Intellectual Property I, Lp | Transmission device with impairment compensation and methods for use therewith |
US10243784B2 (en) | 2014-11-20 | 2019-03-26 | At&T Intellectual Property I, L.P. | System for generating topology information and methods thereof |
US10009067B2 (en) | 2014-12-04 | 2018-06-26 | At&T Intellectual Property I, L.P. | Method and apparatus for configuring a communication interface |
US9997819B2 (en) | 2015-06-09 | 2018-06-12 | At&T Intellectual Property I, L.P. | Transmission medium and method for facilitating propagation of electromagnetic waves via a core |
US9461706B1 (en) | 2015-07-31 | 2016-10-04 | At&T Intellectual Property I, Lp | Method and apparatus for exchanging communication signals |
US9954287B2 (en) | 2014-11-20 | 2018-04-24 | At&T Intellectual Property I, L.P. | Apparatus for converting wireless signals and electromagnetic waves and methods thereof |
GB2557433B (en) | 2014-12-24 | 2019-05-01 | Airties Kablosuz Iletism Sanayi Ve Disticaret As | Mesh islands |
US9876570B2 (en) | 2015-02-20 | 2018-01-23 | At&T Intellectual Property I, Lp | Guided-wave transmission device with non-fundamental mode propagation and methods for use therewith |
KR20170134559A (en) * | 2015-03-31 | 2017-12-06 | 닛본 덴끼 가부시끼가이샤 | CONTROLLER, CONTROL METHOD AND PROGRAM |
US10224981B2 (en) | 2015-04-24 | 2019-03-05 | At&T Intellectual Property I, Lp | Passive electrical coupling device and methods for use therewith |
US9705561B2 (en) | 2015-04-24 | 2017-07-11 | At&T Intellectual Property I, L.P. | Directional coupling device and methods for use therewith |
US9871282B2 (en) | 2015-05-14 | 2018-01-16 | At&T Intellectual Property I, L.P. | At least one transmission medium having a dielectric surface that is covered at least in part by a second dielectric |
US9490869B1 (en) | 2015-05-14 | 2016-11-08 | At&T Intellectual Property I, L.P. | Transmission medium having multiple cores and methods for use therewith |
US10650940B2 (en) | 2015-05-15 | 2020-05-12 | At&T Intellectual Property I, L.P. | Transmission medium having a conductive material and methods for use therewith |
US9866309B2 (en) | 2015-06-03 | 2018-01-09 | At&T Intellectual Property I, Lp | Host node device and methods for use therewith |
US9912381B2 (en) | 2015-06-03 | 2018-03-06 | At&T Intellectual Property I, Lp | Network termination and methods for use therewith |
US9913139B2 (en) | 2015-06-09 | 2018-03-06 | At&T Intellectual Property I, L.P. | Signal fingerprinting for authentication of communicating devices |
US9820146B2 (en) | 2015-06-12 | 2017-11-14 | At&T Intellectual Property I, L.P. | Method and apparatus for authentication and identity management of communicating devices |
US9640850B2 (en) | 2015-06-25 | 2017-05-02 | At&T Intellectual Property I, L.P. | Methods and apparatus for inducing a non-fundamental wave mode on a transmission medium |
US9865911B2 (en) | 2015-06-25 | 2018-01-09 | At&T Intellectual Property I, L.P. | Waveguide system for slot radiating first electromagnetic waves that are combined into a non-fundamental wave mode second electromagnetic wave on a transmission medium |
CN104936253A (en) * | 2015-06-26 | 2015-09-23 | 濮斌 | Hardware architecture of tree topology based on 802.11 and protocol processing |
US9830483B2 (en) | 2015-06-29 | 2017-11-28 | Mesh Candy, Inc. | Security and identification system and method using data collection and messaging over a dynamic mesh network |
US10395021B2 (en) | 2015-06-29 | 2019-08-27 | Mesh Candy, Inc. | Security and identification system and method using data collection and messaging over a dynamic mesh network with multiple protocols |
US9847566B2 (en) | 2015-07-14 | 2017-12-19 | At&T Intellectual Property I, L.P. | Method and apparatus for adjusting a field of a signal to mitigate interference |
US9853342B2 (en) | 2015-07-14 | 2017-12-26 | At&T Intellectual Property I, L.P. | Dielectric transmission medium connector and methods for use therewith |
US10044409B2 (en) | 2015-07-14 | 2018-08-07 | At&T Intellectual Property I, L.P. | Transmission medium and methods for use therewith |
US10090606B2 (en) | 2015-07-15 | 2018-10-02 | At&T Intellectual Property I, L.P. | Antenna system with dielectric array and methods for use therewith |
US9912027B2 (en) | 2015-07-23 | 2018-03-06 | At&T Intellectual Property I, L.P. | Method and apparatus for exchanging communication signals |
US9749053B2 (en) | 2015-07-23 | 2017-08-29 | At&T Intellectual Property I, L.P. | Node device, repeater and methods for use therewith |
US9871283B2 (en) | 2015-07-23 | 2018-01-16 | At&T Intellectual Property I, Lp | Transmission medium having a dielectric core comprised of plural members connected by a ball and socket configuration |
US9948333B2 (en) | 2015-07-23 | 2018-04-17 | At&T Intellectual Property I, L.P. | Method and apparatus for wireless communications to mitigate interference |
US9967173B2 (en) | 2015-07-31 | 2018-05-08 | At&T Intellectual Property I, L.P. | Method and apparatus for authentication and identity management of communicating devices |
US9904535B2 (en) | 2015-09-14 | 2018-02-27 | At&T Intellectual Property I, L.P. | Method and apparatus for distributing software |
US9876264B2 (en) | 2015-10-02 | 2018-01-23 | At&T Intellectual Property I, Lp | Communication system, guided wave switch and methods for use therewith |
US9729581B1 (en) | 2016-07-01 | 2017-08-08 | Tempered Networks, Inc. | Horizontal switch scalability via load balancing |
US9860075B1 (en) | 2016-08-26 | 2018-01-02 | At&T Intellectual Property I, L.P. | Method and communication node for broadband distribution |
US10811767B2 (en) | 2016-10-21 | 2020-10-20 | At&T Intellectual Property I, L.P. | System and dielectric antenna with convex dielectric radome |
US10312567B2 (en) | 2016-10-26 | 2019-06-04 | At&T Intellectual Property I, L.P. | Launcher with planar strip antenna and methods for use therewith |
US10225025B2 (en) | 2016-11-03 | 2019-03-05 | At&T Intellectual Property I, L.P. | Method and apparatus for detecting a fault in a communication system |
US10178445B2 (en) | 2016-11-23 | 2019-01-08 | At&T Intellectual Property I, L.P. | Methods, devices, and systems for load balancing between a plurality of waveguides |
US10637149B2 (en) | 2016-12-06 | 2020-04-28 | At&T Intellectual Property I, L.P. | Injection molded dielectric antenna and methods for use therewith |
US10389037B2 (en) | 2016-12-08 | 2019-08-20 | At&T Intellectual Property I, L.P. | Apparatus and methods for selecting sections of an antenna array and use therewith |
US9998870B1 (en) | 2016-12-08 | 2018-06-12 | At&T Intellectual Property I, L.P. | Method and apparatus for proximity sensing |
US9838896B1 (en) | 2016-12-09 | 2017-12-05 | At&T Intellectual Property I, L.P. | Method and apparatus for assessing network coverage |
JP6827840B2 (en) * | 2017-02-20 | 2021-02-10 | キヤノン株式会社 | Management system, management method and program |
CN107547375B (en) * | 2017-06-20 | 2019-11-22 | 新华三技术有限公司 | A kind of method and apparatus for realizing Mesh link aggregation |
CN107948027A (en) * | 2017-11-02 | 2018-04-20 | 南京物联传感技术有限公司 | One kind carries smart home data safety backup system and method for work |
US11196830B2 (en) * | 2018-02-12 | 2021-12-07 | International Business Machines Corporation | Delivering messages to offline devices using peer-to-peer communication |
US10069726B1 (en) | 2018-03-16 | 2018-09-04 | Tempered Networks, Inc. | Overlay network identity-based relay |
WO2019186508A1 (en) * | 2018-03-29 | 2019-10-03 | Gooee Limited | System and method for managing and controlling a dynamic tunneling protocol in a mesh network |
CN110391981B (en) | 2018-04-20 | 2021-10-26 | 慧与发展有限责任合伙企业 | Apparatus, method, and medium for establishing a source routing tree for gateway nodes in a mesh network |
US10116539B1 (en) | 2018-05-23 | 2018-10-30 | Tempered Networks, Inc. | Multi-link network gateway with monitoring and dynamic failover |
US10158545B1 (en) | 2018-05-31 | 2018-12-18 | Tempered Networks, Inc. | Monitoring overlay networks |
CN110234115A (en) * | 2019-05-23 | 2019-09-13 | 深圳和而泰家居在线网络科技有限公司 | More facility communication systems and data communications method |
US10911418B1 (en) | 2020-06-26 | 2021-02-02 | Tempered Networks, Inc. | Port level policy isolation in overlay networks |
US11070594B1 (en) | 2020-10-16 | 2021-07-20 | Tempered Networks, Inc. | Applying overlay network policy based on users |
US10999154B1 (en) | 2020-10-23 | 2021-05-04 | Tempered Networks, Inc. | Relay node management for overlay networks |
US11464073B2 (en) | 2021-02-11 | 2022-10-04 | Hewlett Packard Enterprise Development Lp | Automatic deployment of wireless or wired networks through clustering of gateways and tunneling of data traffic to the gateways |
US11824649B2 (en) * | 2021-12-31 | 2023-11-21 | Uab 360 It | Status management in a mesh network |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030088698A1 (en) * | 2001-11-06 | 2003-05-08 | Inderpreet Singh | VPN failure recovery |
US20050025179A1 (en) * | 2003-07-31 | 2005-02-03 | Cisco Technology, Inc. | Distributing and balancing traffic flow in a virtual gateway |
US20050025069A1 (en) * | 2003-08-01 | 2005-02-03 | Nortel Networks Limited | Method and apparatus for implementing hub-and-spoke topology virtual private networks |
US20050074015A1 (en) * | 2003-06-24 | 2005-04-07 | Tropos Networks, Inc. | Method of subnet roaming within a network |
US20050163137A1 (en) * | 2004-01-28 | 2005-07-28 | Wakumoto Shaun K. | Switching mesh with broadcast path redundancy |
US20050175009A1 (en) * | 2004-02-09 | 2005-08-11 | Fred Bauer | Enhanced multicast forwarding cache (eMFC) |
US20060146846A1 (en) * | 2005-01-05 | 2006-07-06 | Intel Corporation | Methods and apparatus for providing a transparent bridge associated with a wireless mesh network |
US7373660B1 (en) * | 2003-08-26 | 2008-05-13 | Cisco Technology, Inc. | Methods and apparatus to distribute policy information |
Family Cites Families (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6781953B1 (en) * | 1999-08-03 | 2004-08-24 | Avaya Communication Israel Ltd. | Broadcast protocol for local area networks |
US6363319B1 (en) | 1999-08-31 | 2002-03-26 | Nortel Networks Limited | Constraint-based route selection using biased cost |
US6845091B2 (en) * | 2000-03-16 | 2005-01-18 | Sri International | Mobile ad hoc extensions for the internet |
US20010040895A1 (en) * | 2000-03-16 | 2001-11-15 | Templin Fred Lambert | An IPv6-IPv4 compatibility aggregatable global unicast address format for incremental deployment of IPv6 nodes within IPv4 |
US6778495B1 (en) | 2000-05-17 | 2004-08-17 | Cisco Technology, Inc. | Combining multilink and IP per-destination load balancing over a multilink bundle |
US7031288B2 (en) * | 2000-09-12 | 2006-04-18 | Sri International | Reduced-overhead protocol for discovering new neighbor nodes and detecting the loss of existing neighbor nodes in a network |
US7698463B2 (en) * | 2000-09-12 | 2010-04-13 | Sri International | System and method for disseminating topology and link-state information to routing nodes in a mobile ad hoc network |
WO2002032049A2 (en) | 2000-10-10 | 2002-04-18 | Radiant Networks Plc | Communications meshes |
US7016336B2 (en) * | 2000-11-22 | 2006-03-21 | Telefonaktiebolaget L M Ericsson (Publ) | Administrative domains for personal area networks |
US6512784B2 (en) * | 2001-03-01 | 2003-01-28 | Linex Technologies, Inc. | Efficient sharing of capacity by remote stations using circuit switching and packet switching |
US6493377B2 (en) * | 2000-12-06 | 2002-12-10 | Linex Technologies, Inc. | Distributed network, spread-spectrum system |
US6314126B1 (en) * | 2001-01-12 | 2001-11-06 | Linex Technologies, Inc. | Spread-spectrum handoff and source congestion avoidance system and method |
US7505426B2 (en) * | 2000-12-29 | 2009-03-17 | Tropos Networks | Multi-channel mesh network |
US6999465B2 (en) | 2001-02-22 | 2006-02-14 | Motorola, Inc. | Methods for reliably sending IP multicast packets to multiple endpoints of a local area network |
US7031293B1 (en) | 2001-03-26 | 2006-04-18 | Tropos Networks, Inc. | Method and system to provide increased data throughput in a wireless multi-hop network |
FI20011342A0 (en) * | 2001-06-25 | 2001-06-25 | Nokia Corp | Method and device for obtaining information |
US6842460B1 (en) | 2001-06-27 | 2005-01-11 | Nokia Corporation | Ad hoc network discovery menu |
CN100548003C (en) * | 2001-12-03 | 2009-10-07 | 诺基亚公司 | In wireless network, transmit the method and apparatus of grouping |
JP4199672B2 (en) * | 2002-03-15 | 2008-12-17 | メシュネットワークス、インコーポレイテッド | System and method for automatic configuration of IP address to MAC address mapping and gateway presence discovery |
US7457275B2 (en) * | 2002-04-09 | 2008-11-25 | Jianguo Zhao | Method for implementing Iu-Flex based MBMS |
US6879574B2 (en) * | 2002-06-24 | 2005-04-12 | Nokia Corporation | Mobile mesh Ad-Hoc networking |
WO2004100425A2 (en) | 2003-04-28 | 2004-11-18 | Firetide, Inc. | Dynamic adaptive inter-layer control of wireless data communication networks |
US7522731B2 (en) | 2003-04-28 | 2009-04-21 | Firetide, Inc. | Wireless service points having unique identifiers for secure communication |
US7305459B2 (en) | 2003-04-28 | 2007-12-04 | Firetide, Inc. | Wireless service point networks |
DE10335335A1 (en) * | 2003-08-01 | 2005-03-10 | Siemens Ag | Method for inter-domain multipath routing |
US7336642B2 (en) | 2003-08-07 | 2008-02-26 | Skypilot Networks, Inc. | Communication protocol for a wireless mesh architecture |
WO2005057834A2 (en) | 2003-12-09 | 2005-06-23 | Awarepoint Corporation | Plug-in network appliance |
US20050166053A1 (en) * | 2004-01-28 | 2005-07-28 | Yahoo! Inc. | Method and system for associating a signature with a mobile device |
JP2005236767A (en) * | 2004-02-20 | 2005-09-02 | Ntt Docomo Inc | Communication apparatus, repeater, communication system, and communicating method |
WO2006017028A2 (en) * | 2004-07-09 | 2006-02-16 | Interdigital Technology Corporation | Logical and physical mesh network separation |
US20060039286A1 (en) | 2004-08-18 | 2006-02-23 | Anindya Basu | Method and apparatus for dynamically reducing end-to-end delay in multi-hop wireless networks in response to changing traffic conditions |
US7366120B2 (en) | 2004-10-18 | 2008-04-29 | Nortel Networks, Ltd | Method and apparatus for improving quality of service over meshed bachaul facilities in a wireless network |
US7606187B2 (en) * | 2004-10-28 | 2009-10-20 | Meshnetworks, Inc. | System and method to support multicast routing in large scale wireless mesh networks |
CN101263689B (en) * | 2005-07-20 | 2012-01-11 | 发尔泰公司 | Route optimization for on-demand routing protocols for mesh networks |
WO2007013914A1 (en) | 2005-07-21 | 2007-02-01 | Firetide, Inc. | Method for enabling the efficient operation of arbitrarily interconnected mesh networks |
GB2464229B (en) | 2005-07-30 | 2010-07-07 | Firetide Inc | Utilizing multiple mesh network gateways in a shared access network |
TWI323110B (en) | 2005-07-30 | 2010-04-01 | Firetide Inc | System and method for a shared access network |
WO2007103837A1 (en) | 2006-03-09 | 2007-09-13 | Firetide, Inc. | Effective bandwidth path metric and path computation method for wireless mesh networks with wired links |
US7768926B2 (en) * | 2006-03-09 | 2010-08-03 | Firetide, Inc. | Effective bandwidth path metric and path computation method for wireless mesh networks with wired links |
CN101517973B (en) | 2006-09-19 | 2012-05-30 | 发尔泰公司 | Bonding multiple radios in wireless multi-hop mesh networks |
WO2008036756A2 (en) | 2006-09-19 | 2008-03-27 | Firetide, Inc. | A multi-channel assignment method for multi-radio multi-hop wireless mesh networks |
CN101523818B (en) | 2006-10-13 | 2012-12-19 | 发尔泰公司 | Mesh node mobility across static and mobile mesh networks |
US7876709B2 (en) * | 2007-10-05 | 2011-01-25 | Schilling Donald L | Mesh network communication systems and methods |
GB2469006B (en) | 2008-01-14 | 2013-02-06 | Firetide Inc | Service differentiation and service level agreements for wireless access clients |
CN101981990B (en) | 2008-01-24 | 2015-09-23 | 发尔泰公司 | For the channel allocation of Radio Access Network |
-
2006
- 2006-07-19 TW TW95126421A patent/TWI323110B/en active
- 2006-07-26 CN CN200680030483.3A patent/CN101243662B/en active Active
- 2006-07-26 KR KR1020087004834A patent/KR101309545B1/en active IP Right Grant
- 2006-07-26 JP JP2008525023A patent/JP4903206B2/en active Active
- 2006-07-26 WO PCT/US2006/028903 patent/WO2007016118A1/en active Application Filing
- 2006-07-26 CA CA2884061A patent/CA2884061C/en active Active
- 2006-07-26 CA CA2616757A patent/CA2616757C/en active Active
- 2006-07-26 GB GB201000071A patent/GB2465499B/en active Active
- 2006-07-26 GB GB0802317A patent/GB2442680B/en active Active
-
2008
- 2008-01-22 US US12/018,152 patent/US8559447B2/en active Active
-
2009
- 2009-02-09 HK HK09101161.2A patent/HK1120350A1/en unknown
-
2013
- 2013-10-05 US US14/046,950 patent/US9602399B2/en active Active
-
2017
- 2017-03-13 US US15/457,836 patent/US20170250856A1/en not_active Abandoned
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030088698A1 (en) * | 2001-11-06 | 2003-05-08 | Inderpreet Singh | VPN failure recovery |
US20050074015A1 (en) * | 2003-06-24 | 2005-04-07 | Tropos Networks, Inc. | Method of subnet roaming within a network |
US20050025179A1 (en) * | 2003-07-31 | 2005-02-03 | Cisco Technology, Inc. | Distributing and balancing traffic flow in a virtual gateway |
US20050025069A1 (en) * | 2003-08-01 | 2005-02-03 | Nortel Networks Limited | Method and apparatus for implementing hub-and-spoke topology virtual private networks |
US7373660B1 (en) * | 2003-08-26 | 2008-05-13 | Cisco Technology, Inc. | Methods and apparatus to distribute policy information |
US20050163137A1 (en) * | 2004-01-28 | 2005-07-28 | Wakumoto Shaun K. | Switching mesh with broadcast path redundancy |
US20050175009A1 (en) * | 2004-02-09 | 2005-08-11 | Fred Bauer | Enhanced multicast forwarding cache (eMFC) |
US20060146846A1 (en) * | 2005-01-05 | 2006-07-06 | Intel Corporation | Methods and apparatus for providing a transparent bridge associated with a wireless mesh network |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10104608B2 (en) | 2016-11-07 | 2018-10-16 | Eero Inc. | Systems and methods for enhanced mesh networking |
US10117172B2 (en) | 2016-11-07 | 2018-10-30 | Eero Inc. | Systems and methods for enhanced mesh networking |
US10652816B2 (en) | 2016-11-07 | 2020-05-12 | A9.Com, Inc. | Systems and methods for enhanced mesh networking |
US11026168B2 (en) | 2016-11-07 | 2021-06-01 | A9.Com, Inc. | Systems and methods for enhanced mesh networking |
US10944669B1 (en) | 2018-02-09 | 2021-03-09 | GoTenna, Inc. | System and method for efficient network-wide broadcast in a multi-hop wireless network using packet echos |
US11750505B1 (en) | 2018-02-09 | 2023-09-05 | goTenna Inc. | System and method for efficient network-wide broadcast in a multi-hop wireless network using packet echos |
US11190391B1 (en) * | 2018-04-16 | 2021-11-30 | Amazon Technologies, Inc. | Network loop detection in hybrid mesh networks |
US20210091974A1 (en) * | 2018-06-27 | 2021-03-25 | Apple Inc. | Tuning Topology for Distribution Mesh |
US11683200B2 (en) * | 2018-06-27 | 2023-06-20 | Apple Inc. | Tuning topology for distribution mesh |
US11811642B2 (en) | 2018-07-27 | 2023-11-07 | GoTenna, Inc. | Vine™: zero-control routing using data packet inspection for wireless mesh networks |
WO2023187579A1 (en) * | 2022-03-31 | 2023-10-05 | Jio Platforms Limited | System and method for performing ingress/egress active- active routing in 5g networks |
Also Published As
Publication number | Publication date |
---|---|
CA2616757C (en) | 2015-06-16 |
TWI323110B (en) | 2010-04-01 |
GB2442680B (en) | 2010-03-17 |
GB0802317D0 (en) | 2008-03-12 |
US9602399B2 (en) | 2017-03-21 |
US20080151916A1 (en) | 2008-06-26 |
CA2616757A1 (en) | 2007-02-08 |
CN101243662B (en) | 2014-06-18 |
CA2884061A1 (en) | 2007-02-08 |
TW200723786A (en) | 2007-06-16 |
JP2009504088A (en) | 2009-01-29 |
JP4903206B2 (en) | 2012-03-28 |
CA2884061C (en) | 2017-08-15 |
US20150110104A1 (en) | 2015-04-23 |
KR20080041670A (en) | 2008-05-13 |
GB2465499B (en) | 2010-08-11 |
GB2442680A (en) | 2008-04-09 |
GB2442680A8 (en) | 2008-04-10 |
KR101309545B1 (en) | 2013-09-24 |
CN101243662A (en) | 2008-08-13 |
WO2007016118A1 (en) | 2007-02-08 |
US8559447B2 (en) | 2013-10-15 |
GB2465499A (en) | 2010-05-26 |
HK1120350A1 (en) | 2009-03-27 |
GB201000071D0 (en) | 2010-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170250856A1 (en) | Utilizing Multiple Mesh Network Gateways in a Shared Access Network | |
US10505845B2 (en) | Techniques for enabling the efficient operation of arbitrarily interconnected mesh networks | |
US9743339B2 (en) | Route optimization for on-demand routing protocols for mesh networks | |
CN101674229A (en) | Information management method of link aggregation group and network node | |
GB2464229A (en) | Selecting a node from a group of gateway nodes as a broadcast server |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STCV | Information on status: appeal procedure |
Free format text: NOTICE OF APPEAL FILED |
|
STCV | Information on status: appeal procedure |
Free format text: APPEAL BRIEF (OR SUPPLEMENTAL BRIEF) ENTERED AND FORWARDED TO EXAMINER |
|
STCV | Information on status: appeal procedure |
Free format text: EXAMINER'S ANSWER TO APPEAL BRIEF MAILED |
|
STCV | Information on status: appeal procedure |
Free format text: ON APPEAL -- AWAITING DECISION BY THE BOARD OF APPEALS |
|
STCV | Information on status: appeal procedure |
Free format text: BOARD OF APPEALS DECISION RENDERED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION |