Internet Routing and Mobility Solutions for Ad Hoc Networks 

Get Complete Project Material File(s) Now! »

Internet Protocols Architecture

In order to solve the problem of creating a network, the Internet uses an old engineering technique: breaking a complex problem into smaller manageable pieces, and solving them one by one. Therefore, the Internet uses the abstractions of layers (similarly to other telecommunication systems) to separate networking into several functional areas. Each layer gathers protocols, and each protocol solves a specific problem inside the functional area of its layer.
A protocol is a set of rules and formats that govern some level of communication between machines, so that they can understand each other at this level. The separation into layers and protocols is hierarchical, in the sense that protocols of the highest layer, called applications, beneficiate from the services provided by the lower layers. The Internet layers and examples of protocols are pictured in Figure 2.1 and Figure 2.2. Their functions can be described as follows:
Layer 1: The Physical Layer – This is the lowest layer. It contains protocols responsible for moving the individual bits (the actual “0”s and “1”s forming digitized information) between machines connected by a communication medium (i.e. a link).
Layer 2: The Subnetwork Layer – This layer creates the abstraction of a subnetwork, reaching the machines connected by the same link. The protocols in this layer are responsible for (i) forming and monitoring frames (ordered sequences of bits) sent and received over the link, and (ii) arbitrating access to this medium if it is shared by several machines. This layer is also called the MAC (Medium Access Control), the LAN (Local Area Network) or the Data Link layer. Example of Layer 2 protocols include Ethernet (IEEE 802.3) for wired connection, orWiFi (IEEE 802.11, also called WLAN) for wireless connection. The subnetwork layer protocols of course use the services of physical layer protocols in order to function.
Layer 3: The Network Layer – This layer creates the abstraction of a network, reaching machines accross different subnetwork topologies and technologies. The function of the protocols in this layer is to logically concatenate sets of links to form the abstraction of a single end-to-end link. This allows a machine to communicate with any other machine in any subnetwork, by computing a route between these two machines, through intermediate machines if necessary (this computation is called routing). These protocols use the services of the subnetwork layer to carry packets over each link on these routes. For example, the most important layer 3 protocol used on the Internet is IP (Internet Protocol). Aside from formating the information exchanged between different machines on the Internet, the crucial role of this protocol is to identify each machine (over all the subnetworks) with a unique name: IP addresses. This responsibility, and the employed addressing scheme are fundamental in the Internet, especially for routing, as we will see in next sections.
Layer 4: The Transport Layer– This layer usually provides the abstraction of reliable end-to-end links. Basically, it provides error control, flow control and congestion control services over the end-to-end links given by the network Layer. Error control deals with packet loss, corruption or duplication through detecting these errors, and discarding or retransmitting packets when needed (which is often the case). Flow and congestion control regulate the rate of packet transmissions of a source towards a destination, so that it matches the rate currently sustainable by the network and the destination. The transport layer is also responsible for distributing the right packets to to the right application. This distinction is done by adding to packets application-specific identifiers, called ports). Examples of Layer 4 protocols include TCP (Transmission Control Protocol), that provides all the features we just mentionned, and UDP (User Datagram Protocol), that does not provide error control or flow control, but just application distinction. UDP is used by applications that don’t need error and flow control, or that provide their own error and flow control.
Layer 5: The Application Layer – This layer contains the protocols that directly serve the users that want to communicate over the network, or access remote ressources. These protocols are also called applications.
There are many examples of such protocols, including HTTP (HyperText Transfer Protocol) for the Web browsing, FTP (File Transfer Protocol) for file transfering, or SMTP (SimpleMail Transfer Protocol) for e-mails, etc.

Hosts and Routers, Usual Internet Terminology

This section introduces some terms and definitions that will be used in this document.
Hosts and Routers – In the Internet, two distinct types of machines can be found: hosts on one hand, and routers on the other hand. Routers are machines (multiplexors) that are dedicated to forming the network, as well as storing and forwarding users’ data: they are the core of the network. Hosts are machines that just use the network, from the edge of the core.
For example, when an individual connects to the Internet from home with his PC, his computer is a host. On the other hand, the machine to which his PC connects in order to go online is a router, that belongs to this individual’s ISP (Internet Service Provider, see Section 2.6).
Interfaces and Subnets – Each host has typically one interface through which it is connected to a subnetwork. A subnetwork (often abreviated into a subnet) usually gathers a number of hosts and is typically connected to other subnets, via a router. A router has therefore typically several interfaces, at least one on each subnet it connects, and there may be many, in case of a big router.
Networks and Internet – An ensemble of subnetworks connected by a number of routers is called a network ∗. The Internet is then, physically, the interconnection of all the networks, routers and hosts around the world – that use IP.
A specificity of IP is that each router interface as well as each host interface must be assigned a unique IP address. With the exponential growth of the Internet, an IP address shortage was feared (though IPv4 specifies more than 4 billion different addresses), and this is initially why a new version of IP (IPv6) was envisionned, with bigger addresses: 128 bits long.
Nodes and Topology – Another common term in the networking terminology is: a node. In the Internet, and in the following, this term designates a machine that is part of the network in general. That is: a node in the Internet is either a host or a router. The specific state of a network at a given time, with respect to how nodes are inter-connected, is then called the network’s topology.
Overhead and Control Traffic – In the following, we will call overhead or control traffic any message or part of message that is sent on a network, but that is not actual user data. In other words, this corresponds to the network load that is needed for the network to be functional.
Broadcast, Multicast and Unicast – The primary function of a network is to enable the delivering of some information to some nodes on the network. Different categories of delivery are defined: a broadcast is the operation of delivering a message to all the nodes on the network. A multicast is the operation of delivering a message to a subset of nodes on the network. And finally, a unicast is the operation of delivering a message to a single node on the network.

READ  Microstructure and material properties observed in literature

The Role of Routing

The Internet is basically a collection of thousands of packet subnetworks, large or small. Each of these subnetworks connects several hosts together (for instance several users’ PC) via a layer 2 protocol – such as Ethernet or WiFi. On the other hand, each subnetwork is itself connected to other subnetworks via routers: machines that are connected to several subnetworks at the same time and whose primary task is to vehiculate data from one subnetwork to another, to create a network – that is, to its full extent: the Internet.
In order to achieve this abstraction, it must be ensured that any node in the Internet can reach any other node that is also online. If the two nodes are in the same subnetwork, the layer 2 protocol used on this particular subnetwork provides that the two nodes can communicate directly over the medium connecting them.
– for instance a wire in the case of Ethernet. Figure 2.4 shows a small subnetwork of hosts and one router connected by Ethernet. In this case, Host A can for example communicate with Host C with the Ethernet protocol, through their interfaces on the same wire. This wire (represented by the central solid line in Figure 2.4) is in the case of this subnetwork the shared communication medium that connects directly each interface to every other interfaces on the network.

Table of contents :

I Introduction to Internet Routing 
1 Internet History
1.1 The ARPANET and Packet Switching
1.2 From NSFNET to the Internet
1.3 Internet Standards
2 Routing in the Internet
2.1 Internet Protocols Architecture
2.2 IP Addressing
2.3 Hosts and Routers, Usual Internet Terminology
2.4 IP Packets
2.5 The Role of Routing
2.6 Autonomous Systems
2.7 Routing Techniques
2.7.1 Hop-by-Hop Distribution
2.7.2 Distance Vector Routing
2.7.3 Link State Routing
3 Internet Routing Cornerstones: OSPF and BGP
3.1 BGP
3.1.1 Peer-to-Peer Sessions
3.1.2 BGP Messages, Paths and Attributes
3.1.3 Policy Routing
3.2 OSPF
3.2.1 Reliable Flooding, Sequence Numbers and Aging
3.2.2 Overhead Optimizations with Interface Types
3.2.3 Convergence Acceleration with the Database Exchange Mechanism
3.2.4 Scaling with Hierarchical Routing with Areas
3.2.5 OSPF Applicability
II Routing Challenges with Mobility in the Internet 
4 Edge Mobility 49
4.1 Introduction to Edge Mobility
4.2 Mobile IP
4.2.1 Performance Issues with Mobile IP
4.3 NEMO
4.3.1 Performance Issues with NEMO
5 Ad Hoc Mobility
5.1 Introduction to Mobile Ad Hoc Networking
5.2 Challenges with Wireless Links using Broadcast Radio Interfaces
5.3 Challenges with Mobility beyond Simple Edge Mobility
5.4 Mobile Ad Hoc Networks: a Harsher Environment
III Internet Routing and Mobility Solutions for Ad Hoc Networks 
6 Ad Hoc Routing
6.1 Introduction to Ad Hoc Routing
6.2 OLSR: Link State Routing Optimized for MANETs
6.2.1 MPR Techniques
6.2.2 Unified Formats
6.2.3 Additional Features
6.3 wOSPF: Router Ad Hoc Mobility in the Internet
6.3.1 Introduction to OSPF on MANETs
6.3.2 OSPF’s Issues on Ad Hoc Networks
6.3.3 Overview of the OSPF Wireless Interface Type
6.3.4 Shortcomings of the wOSPF Approach
6.4 MANEMO: Network Ad Hoc Mobility in the Internet
6.4.1 Nested NEMO Suboptimal Routing and Encapsulations Issues
6.4.2 NEMO Route Optimization with Mobile Ad Hoc Networking
6.4.3 NEMO Tunneling Optimization using MANET Routing
7 Optimizing Control Traffic in Mobile Ad Hoc Networks 87
7.1 Flooding Optimization Techniques
7.1.1 Introduction to Flooding
7.1.2 The MPR Technique
7.1.3 The Gateway Mechanism
7.1.4 The CDS Technique
7.1.5 Performance Evaluation via Mathematical Modelling
7.1.6 Performance Evaluation via Simulation
7.2 Partial Topology Optimization Techniques
7.2.1 Introduction to Partial Topology
7.2.2 On-Demand Topology Information
7.2.3 Link State Optimization
7.2.4 Partial Topology Optimizations for Overlapping Relays OSPF
7.3 Optimizing Reliability for Link State Information
7.3.1 Introduction to Reliable Link State Synchronization
7.3.2 ManagingWired, Ad Hoc Heterogeneity
7.3.3 Definition of Link State Database Signatures
7.3.4 Signature Exchanges
7.3.5 Database Exchange
7.3.6 Performance Evaluation of the Database Signature ExchangeMechanism
7.3.7 Applicability of the Database Signature ExchangeMechanism
8 Scalability Solutions for Massive Ad Hoc Topologies
8.1 Hierarchical Routing with Trees
8.1.1 Introduction to Hierarchical Networking
8.1.2 OLSR Tree Formation and Maintenance
8.1.3 Tree Options
8.1.4 Hierarchical Routing with OLSR Trees
8.2 Fish Eye Enhancement
8.2.1 Introduction to Link State Routing coupled with Fish Eye
8.2.2 Modeling Ad Hoc Networks
8.2.3 OSPF and OLSR Scalability
8.2.4 Scaling Properties of OSPF and OLSR Enhanced with Fish Eye Strategy
8.2.5 Comparison with Previous Results on Ad Hoc Network Capacity
9 Integration Solutions for Ad Hoc Networks in the Internet
9.1 The Security Problem in Ad Hoc Networks
9.1.1 Incorrect Traffic Generation
9.1.2 Incorrect Traffic Relaying
9.1.3 Secure Integration of Ad Hoc Networking in the Internet
9.2 Address Autoconfiguration in Ad Hoc Networks
9.2.1 A Light-weight AutoconfigurationMechanism for OLSR
9.2.2 Local Beaconing
9.2.3 Temporary Address Assignment
9.2.4 Permanent Address Assignment
9.3 Duplicate Address Detection
9.3.1 Introduction to Duplicate Address Detection
9.3.2 Performing Duplicate Address Detection in an OLSR Network
9.3.3 Shortcomings of the Passive Approach
9.3.4 Resolving Duplicate Address Conflicts
10 Conclusions on Ad Hoc Networking

GET THE COMPLETE PROJECT

Related Posts