Mesh Network

Gransee

Flashlight Enthusiast
Joined
Jan 26, 2001
Messages
4,706
Location
Mesa, AZ. USA
"Mesh Net"
v1.2

The purpose for posting this paper is not to toot my own horn or claim that I originated everything here. Most of the ideas here are not new and I already see the WI-FI community moving in this direction. Being a gadget lover and heavy Internet user, the purpose of the paper is draw attention to these trends and hopefully speed their complete implementation (so I can enjoy them on my laptop!). I see several different projects addressing parts of this idea but I am worried that standards will be created and implemented without including some important features and then it will be too late. I believe this idea has pretty cool potential and would hate to see it crippled by a short sighted manufacturer or standards body.

I will update this paper over time.

--

"Mesh Net" is software that runs on either a local computer or in the radio firmware. It uses a Wi-Fi (802.11x) card to establish a mesh network.

The basic idea of Mesh Networks originated with US Military. A mesh network is a collection of radio transceivers that relay data to each other, forming an unbroken chain of radios that extends the range of each individual radio.

There are two stages of implementation. The first stage works with existing WI-FI hardware and the second stage requires improved hardware. The first stage sets up the network and the second stage adds new features.

Mesh Net promises broadband connections to any location in large population centers. Bandwidth can easily exceed that available through standard wired connections. In addition, new features that are not provided by wired connections are possible with a Mesh network connection.

--

Over the years, I have flip-flopped several times on the issue of wireless versus wired connections. Until recently, I felt that wireless was not suitable for most home and corporate Internet connections because of the limited bandwidth. Wireless was relegated primarily to applications that required mobility. But now I am leaning back towards wireless as a primary connection for fixed locations as well.

I now feel that Mesh Networks are the #1, "next big thing". It won't replace the wired Internet completely but it certainly has the capacity to supplement large sections of it.

The reason for this is an interesting relationship between output power and bandwidth made possible by mesh networks. As the power level is reduced, the practical bandwidth increases dramatically. Mesh networks allow intelligence and critical mass to reduce the need for output power to cover the distance between the client and the gateway. Over time, the cost per bit of information would dramatically be reduced.

Mesh networks have the potential to overcome the "last mile" problem for home and business Internet access.

Mesh networks also allow new types of packet handling that is not offered on the Internet. This would open up new applications while improving other applications.

Mesh networks have the capability of providing 11-70mb/s access very quickly to most cities. Future upgrades to the system could provide upwards of several hundred mb/s which would tremendously exceed current and projected wired system offerings in bandwidth and features.

Eventually, the mesh network density in a typical metropolitan area could reach a point where output power is several times less than today's wi-fi systems while the bandwidth is several times more.

Some of the difficulties these systems face are compatibility (standards), security and latency.

Latency comes from the increased amount of hardware hops required to traverse a typical path compared to wired systems. Current mesh networks ideas are based on a "store and forward" system with each node adding several milliseconds of delay to relay the packet.

The idea for a Router-less Internet can be applied in this situation. For a packet to traverse a series of nodes, a virtual path is established and data is relayed at the bit level. This allows for the reconditioning of the signal while keeping latency to a minimum. There is a delay while the connection is setup but then payload latency is reduced. The packet header overhead is reduced dramatically, which also reduces latency. Unlike ATM which uses a fixed packet size and even more packet overhead than typical standards, this protocol would use variable pipe width, no headers and adaptive prioritization.

Also, each packet is not acknowledged by the far application. Housekeeping Traffic is only generated when the link is lost. If a node fails, the packet is resent by the previous node and not by the sending application. These methods contribute to lowering network traffic and latency.

This improvement would likely require new firmware for the radios.

With these improvements, typical latency from wireless client to a gateway 25 hops away would be less than 20ms. If the gateway was a DSL or other dedicated connection, the typical latency would be less than a cable or modem connection.

Another improvement I would like to see added to mesh network is the ability to use other types of wireless links including UWB and higher power radios.

Several protocols are required to make mesh networks work in the basic sense.

One is the routing protocol that automatically finds the best path to a particular destination (gateway, another client, content server or broadcast). Each node would store a single byte for each destination indicating how many hops it is from a gateway or server. A new server or gateway would broadcast its location starting with the closest node and relaying outwards. This would setup up a location byte for each surrounding node. Each node would have several gateways stored. Other information about the gateway such as its unique ID, type and health would also be stored at each node.

Traffic would be routed from node to node by relaying to nodes with the lowest hop number. If that connection was poor, the second lowest hop number would be used. Routes can be reconfigured on the fly making the system resistant to dropped/congested nodes.

Load sharing
This allows one client to draw upon several sources of the same content in order to increase bandwidth. It also adapts to network loading and congestion situations. For example, three 500kps gateways could be bonded together to provide a 1.5mbps connection to the Internet. Load sharing logic would take into consideration bandwidth, priority level, type of node and latency.

Packet Prioritization
This improves the performance of latency sensitive applications and also provides a mechanism for emergency services to work during high congestion conditions (like during a large disaster). Each packet is assigned a priority level by the application and successive nodes have the ability to downgrade that status based on network conditions. Applications would be aware of the available connection and compensate (by negotiating a lower audio bit-rate or recommending SMS for example).

Broadcast
Broadcast is useful for applications like radio, TV, software updates, weather, time sync, etc. Each stream must be requested by at least one node per area for a broadcast to propagate to that node's neighborhood. Broadcast packets have a different type of route that allows multiple clients to receive the stream. This protocol is much more efficient for the network and the broadcast server compared to traditional TCP/IP. For example, if 30 IP TVs are requesting the same stream, only one stream is sent along the major routes. This would reduce the traffic for those common routes by 1/30th. It would also reduce loading on the server so it could handle an unlimited number of receivers.

To broadcast a local concert via the Internet would typically require 128kps for each client (stereo, MP3 quality). With 1000 clients listening to the stream, the required bandwidth at the server would be 128,000kps or 128mb/s! But with broadcast protocols over MeshNet, the required bandwidth at the server would only be 128kps.

Power level adjust
This protocol optimizes the efficiency of the network by reducing the power level of the radio when possible. The user may also specify if their client is a line powered or battery powered node. Line powered nodes would be preferred for relaying traffic. This preference is part of the Mesh Net protocol.

New hardware should have the ability to output even more power than the current WI-FI standard. This would require FCC approval. This higher output would only be used when necessarily to bridge neighborhoods, fill in voids, etc. I am thinking 4x power output would be a good level. This would double the range in most applications. Most radios should have this capability instead of only specialized radios since the network topology must remain flexible.

Auto Setup
The Mesh Network provides updated information at default locations so that new nodes can be automatically configured and software updated as the network evolves. Nearby nodes would help new nodes get on to network enough (bios) to establish a connection for a full software update. This limits, "chicken and the egg" limiters.

Self Healing
Adapts to network and radio problems and automatically black lists problem nodes and routes around them. Hive intelligence allows the network to survive some jamming, rogue nodes, radio problems, interference, ping floods, etc. One example of network adaptation is for the destination address to pass a refuse flag back along the network to the sender so that none of the nodes will pass the traffic. No node would receive traffic is had not specifically requested. This protocol would reduce the effect of DNS attacks. Each node shares the responsibility of transmission with the 2 previous nodes to carry the bit. If the next node disappears or fails to acknowledge link, the previous node retransmits from RAM. If the next node still continues to not respond, another route it found. If an entire train of nodes is rendered impotent, then the application finds a new route and resends the packet. Routing is done by the simple and robust single byte hop number method.

Virtual Bandwidth for burst conditions.
In the event that a particular node's bandwidth is exceeded, the node one step up the chain will store the packet in local memory until a free path can be found. During peak network utilization times, the entire network cloud could accept and store several times more data than it can transmit in a given time. This would enable the network to survive brief overloads with minimal effect to applications.

Each node requires a small amount of RAM for use by the radio. This RAM is built into the radio and is not part of the host computer. I think 8k would be plenty. This ram is used for storing routes, node information, burst storage, etc.

Bandwidth multipliers.
With new radio systems, another improvement possible is the ability to bond multiple receivers together to increase bandwidth. A similar device with multiple radios is a 12-channel GPS. For example, the 2.4ghz band has 11 channels set aside for Wi-Fi. In most areas, only 1 channel is being used at any given point in time. A next generation radio could have 11 receivers and 5 transmitters. When conditions permitted, multiple channels would be used simultaneously to increase the upload/download bandwidth. If each channel is 11mps, then 11 channels would provide a maximum bandwidth of 121mps. Typical setups would have more receivers than transmitters since typical internet usage is download intensive. Multiple transmitters would increase power consumption but the large file, etc would also take less time to transmit. Multiple receivers would consume less power than multiple transmitters but still provide a benefit since surrounding nodes could load share through multiple nodes/channels to the one client.

If WI-FI Mesh Networks become the force I hope they do, then lobbying the FCC for more channels and output power will be facilitated. This could very well happen if Mesh Net becomes essential to the economy.

Supply and Demand equalization.
Someone might ask, "if mesh network is in my neighborhood, why not just cancel my DSL subscription? And if I do, what would keep everyone else from doing the same? Soon, no one would be sharing their Internet connection anymore!" My answer is supply and demand. If too many people are using and not enough are providing, then people will buy their own internet connection. Over time, this causes a balancing effect. A third effect is the eventual transition of desired content to a Mesh Net located server.

Distance/Bandwidth relationship
Odd as it may sound, one of the strengths of the Mesh network is in the short range of the radios used. For long hauls between cities, conventional wired connections (fiberoptics, etc) are desired. Using single wireless connections to bridge long distances is not very efficient compared to fiberoptics.

Costs.
Aside from the cost of the WI-FI card and the electricity to power it, what other costs are there? Most gateways would charge a subscription charge (mostly through billing aggregators) for access to the Internet. This would offset the higher costs that wired ISPs would likely want to charge. Relays could also charge micro payments as well. Central aggregators would handle billing of users and make sure everyone gets paid. In large cities, dedicated commercial gateways could become a viable business opportunity.

IPV6
This is a next generation TCP/IP protocol that never really took off because of the whole chicken and the egg phenomena. If it where ever implemented, it would offer some real advantages to the Internet such as more IP addresses, packet prioritization, broadcast protocol and increased security. Since Mesh Net is still in its formative phase, some of these new protocols could be built-in from the ground level. This would provide further advantages to a Mesh network connection over a traditional wired Internet connection.

Service Reliability
As long as you have at least one connection to the Mesh network, certain service guarantees could be made. Unlike traditional WI-FI, packet loss would be zero because each packet would be guaranteed delivery. Acks would verifiy link integrity and reroute in the event that link integrity is lost. Reroutes would not loose data because the stream would be buffered back several nodes and also by the sending application. Latency and delays would be minimized by load sharing logic.

Addressing
On the Internet, nodes are identified by an IP address. On the Mesh Net, this will need to be supplemented. Each node would have a hard wired ID (MAC address) and possibly an IP address as well (but not required). Finding a distant node would be accomplished by querying a DNS server for the current location of that node. That location would be specified as a route across nodes and through gateways. Each time a node was activated, it would integrate itself with the surrounding nodes. If it also was a source of useful information, it could broadcast it's location to the DNS system. Otherwise, its location would be unknown. This provides a mix of anonymous clients with easily located servers.

Geographic locating
The current geographic location of a node could be determined by using the existing equipment. This information could be used as a supplement to other navigational systems like GPS. Nodes have room in their flash for storing the physical location (if known) and weather or not they are typically a fixed or moving node. If a fixed node knows it's street address, for example, then a location server can calculate it's approximate Long/Lat coordinates. Some nodes would even have their exact coordinates programmed (if say their owner was tech savvy). Some nodes would have no programmed information on their location. Those nodes would estimate their location by comparing themselves to nodes that do know their location.

Location would be determined by timing the signals from three other nodes and triangulating the results. Even if only one other node could be seen, the querying node could still tell it's location to within a mile or two by the simple fact that is has to be that close to the node in order to link with it. If neither node knows where it is then accuracy degrades to the first node that does. Clusters of nodes can improve their accuracy by triangulating off of each other.

In a worse case scenario, your laptop could only tell you that you were in a particular state and country. Best case, it could tell where you are in the state to a couple hundred feet. Even the worst case information is useful as this could be used by other applications to set your time zone, calling prefix, region code, etc. Advantages over GPS would include not requiring an extra radio, ability to work inside of buildings, etc. Of course, for best accuracy, a GPS is recommended.

Example Applications.

- Linux Cell Phone. Mesh Net relay, IP telephony, longer battery life than conventional cell phones, very cheap air time, navigation information, accurate clock, internet applications, ability to work in emergency conditions that would normal cell phones would not survive (extreme network congestion), walky talky mode, IP radio (uses broadcast packet protocol)
- Watch. Automatic time sync, email notify, auto time zone set, software compass/speedometer/navaid, low power relay (make money relaying other people's traffic while sitting in a subway train)
- Automotive. IP radio, traffic alerts, naviad, vehicle tracker/locator, silent alarm (to cell phone), use watch/cell phone to unlock and start, health report to shop, relay with excellent antenna, etc
- Emergency services radio. Walk talky, guaranteed level of service during disaster levels. Very long battery life, location of each radio sent back to HQ

IP telephony
The Mesh Net would be ideal for telephony because of the packet prioritization, network durability, low power consumption, etc. Each phone would broadcast it's location to a DNS server if it wanted to receive calls. Otherwise it could only make calls. Calls would be routed directly between clients and would not require a central server other than for locating the other party. The routing protocol would use different routes for high priority traffic to minimize latency whereas low priority packets would take routes that maximized bandwidth.

Security.
The location of each node is not readily known to the network unless that node broadcasts its location to a DNS server. It location could still be determined by actively searching for it, but it would take awhile. Of course, the node could simply be shut off after send/receive and it would not show up in an active search.

Data between nodes is encrypted by 128-bit crypto or better. Not just the initial connection, but all the data is encrypted. Since packets are header-less (virtual routing), eavesdropping mid-stream would not provide the sender or server address.

One of the biggest improvements to security would be to change the default configuration of the equipment to make it more secure until the user figures out how to use the equipment. Default Admin passwords should be unique to each machine (use the serial number for example).

Ease of use.
A newly purchased piece of network hardware should by default automatically integrate into the local Mesh Net as soon as power is applied. In its minimal configuration, it would function as a free relay. If installed in a computer, windows should treat it as a network card with DHCP configured. If no other network device is installed, that computer should be able to access the Internet upon boot up without requiring any input from the user (other than installing the hardware and inserting the drivers CD).


Decentralization.
Because this system allows users to communicate with each other without requiring a service provider, most connections are significantly free of any central authority.

AP Hardware
What will happen to "Access Point" hardware? APs are obsolete. They will be replaced by peer to peer hardware. Home access routers (for DSL/Cable) with wireless nodes are still a possibility.

Misc
Many laptops now include wi-fi connectivity built in. The problem is that the wi-fi is disabled whenever the laptop boots or connects to a network. The idea is to keep power consumption down and to limit security problems. If a wi-fi enabled laptop were connected to a corporate LAN for example, the company would be at risk from that laptop. There might be a way to disable this feature so the mesh network node is activated whenever the laptop is turned on but it is kept secure.

Future
Eventually, a large percentage of the content desired by a typical user could be found on a mesh network server. In such a case, the value of a traditional Internet connection is lessened for that user. This would put fewer loads on the gateways and also lower the costs to access that type of content.
 

Seth

Newly Enlightened
Joined
Jun 3, 2001
Messages
191
Location
Berlin/Germany
Peter,

I guess this idea will only have success if it works "plug&play" to the ordinary PC user.

If it´s even a little bit more complicated than -say- installing a M$ Office CD, there will only be "nerds" using it /ubbthreads/images/graemlins/icon23.gif

Speaking about wireless, it has to be at least as uncomplicated as Apple Airport or bluetooth.

To make it a little bit more clear what I mean:
I work at a PC retailer, so you can ( or should /ubbthreads/images/graemlins/smile.gif ) guess me & my co-workers are not complete dummies if it comes to Wireless Lan´s.

We sell about one dozen of different WLAN devices.
We try them ourselves... and found out that only 2 actually worked:

The Apple Airport devices. You don´t have to do anything . You just plug it in and it works.

Bluetooth. While not intended for wireless LAN, they simply work.

Just today, one of my co-workers brought a wireless DSL-router back... Commenting "I tried this §%&)%$ the whole %&§%)/ night! No-go!" And he´s in computer business since 8 years /ubbthreads/images/graemlins/grin.gif

Conclusion:
If this mesh network will have a simple installation, then it will have success.
If it needs something like "subnet masks", "routed port #", it will fail /ubbthreads/images/graemlins/smile.gif

Seth
 
Top