Mesh Networks A.k.a “ad-hoc” Definition A local area network that employs either a full mesh topology or partial mesh topology Full mesh topology- each node is connected directly to each of the others Partial mesh topology- some nodes are connected to all the others, but some of them are only connected to nodes with which they exchange the most data History Originally sponsored by the Department of Defense for military use Goal was to provide packet-switched network in mobile elements of a battlefield in an infra-structureless environment Used a combination of ALOHA and CSMA and distance vector routing Full Mesh Topology Every node has a circuit connecting it to every other node in the network Yields greatest redundancy, so if one node fails, network traffic can be redirected to any of the other nodes Usually reserved for backbone networks since it is very expensive A full mesh topology Partial Mesh Topology Some nodes are organized in a full mesh scheme but others are only connected to 1 or 2 in the network Common in peripheral networks connected to a full meshed backbone Less expensive to implement Yields less redundancy A partial mesh topology Wired mesh It is possible to have a fully wired mesh network, however this is very expensive Advantages Reliable Offers redundancy Disadvantages - Expensive- large number of cables and connections required Wireless Mesh Definition- a wireless co-operative communication infrastructure between multiple individual wireless tranceivers that have Ethernet capabilities Can either be centralized for highly scalable applications, or can be decentralized Advantages Reliable- each node is connected to several others; when a node fails its neighbors find other routes Scalable- capacity can be added simply by adding nodes Nodes act as repeaters to transmit data from nearby nodes to peers too far away to reach- this results in a network that can span large distances over rough terrain Each node only transmits as far as the next node Gizmo truck How does it work? Data hops from one device to another until it reaches its destination Each device communicates its routing information to every device it connects with Each device then determines what to do with received data- pass it on or keep it Types of Protocols Pro-active- distribute routing tables to the network periodically to maintain fresh lists of destinations Disadvantages Wasted bandwidth for transmitting routing tables Maintains routes that will never be used Some algorithms never converge in large networks Re-active- also known as On-Demand these protocols find routes on demand by flooding the network with Route Request packets Disadvantages Delays in finding routes Excessive flooding can lead to network clogging Example: ADDV ADDV- Ad-hoc On-demand Distance Vector Establishes a route to a destination only on demand Contrast to the most popular pro-active protocols How does ADDV work? Network is silent until a connection is needed The network node that needs a connection broadcasts a connection request Other nodes forward the message and record the node they heard it from, creating temporary routes back to the needy node When a node that already has a route to the desired node gets the message it sends a message back through the temporary route to the requesting node The needy node then uses the route with the least hops to connect Failures When a node fails, a routing error is passed back to the transmitting node and the process repeats Also, note that unused entries in the routing tables are recycled after a time, so unused paths are not kept Drawbacks More time to establish a connection Initial communication to establish a route is heavy Hierarchical- network orders itself into a tree or other hierarchy and sends requests through the structure Example: Order One Network Protocol The network orders itself into a tree Each node periodically sends “hello” to its neighbors Each neighbor tells how many neighbors and connections it has and who its “mother” node is Each node picks the node with the largest access to links to be its “mother” node When two nodes pick each other as “mother” nodes, that is the top of the tree Routing When a node needs a connection with another node and a route doesn’t exist it sends a request to its “mother” node This node then forwards the message to its “mother” node and so on until the original node is connected at the root to the node it wanted Next the algorithm tries to “cut corners” to optimize the path Each node on the route floods its neighbors with routing requests When a faster route is found, the unused part of the previous route is erased and flooding ceases on that route Advantages Produces fairly good routes while reducing the number of messages required to keep the network connected Uses only small amounts of memory at each node The network has a reliable way to establish that a node is not in the network Disadvantages Central “mother” nodes have an extra burden Eventually ceases to be scalable Link propagation time establishes a limit on the speed the network can find its root May use more power and bandwidth than other link-state protocols Where is it going? What is the future of wireless ad-hoc? Automata