A Mobile Ad-hoc Network (MANET) is a network that can be established with no fixed infrastructure. This means that all its nodes behave as routers and take part in its discovery and maintenance of routes to other nodes in the network. Its routing protocol has to be able to cope with the new challenges that a MANET creates such as node mobility, security maintenance, quality of service, limited bandwidth and limited power supply. These challenges set new demands on MANET routing protocols, like low overhead operation, routing security and best path selection.
This Thesis deals with the design and implementation of the Extended Routing Information Protocol (ERIP) for mobile ad-hoc networks in Linux. ERIP is a proactive protocol, characterized by low overhead operation, best path selection based on hop count, loop free working and routing security. Raw sockets are used for exchange of routing information, whereas data exchange happens via TCP or UDP sockets as required by the application. Low overhead operation of ERIP is guaranteed by using the incremental dump strategy. Incremental dumping of the routing table is realized by scheduling only partial updates, instead of full. The routing table is encrypted before broadcast using a simple shared key algorithm to provide routing security.
The routing functionality of the implemented protocol is tested by first running ERIP on two laptops and using VLC media player to stream multimedia data between the laptops. The two laptops were then moved out of range of each other and intermediate nodes (laptops) were brought in that were running the same routing protocol. The data was communicated over multiple hops in near real time. The best path selection property was proved by setting up a network of ERIP nodes that had multiple paths between source and destination with different hop counts. The implemented protocol consistently routed data through the path that had the least hop count. Porting the developed protocol to the Linux kernel would allow it be part of the standard Linux distribution. Also, more complex cryptography algorithms can be implemented to provide data and routing security.
Table of Contents
Chapter 1: Introduction
1.2 Motivation
1.3 Organisation
Chapter 2: Routing and Security in MANETs
2.1 Introduction to MANETs
2.2 Routing Approaches in Mobile Ad-hoc Network
2.3 Characteristics of MANETs
2.4 Advantages and Disadvantages of MANETs
2.5 Applications of MANETs
2.6 MANET Vulnerabilities
2.7 Babel:
2.7.1 Babel on Wireless Networks:
2.7.2 Babel has the following Features:
2.8 Security Goals for MANETs
2.9 Types of Routing Security Attacks
2.10 Issues and Challenges in Security Provisioning
2.11 Security Approaches in MANETs
2.12 Security Architecture for MANETs
2.13 Conclusion
Chapter 3: Literature Survey
3.1 Literature Review
3.2 Summary of Literature review
Chapter 4: Problem Statement
4.1 Aim
4.2 Project Objectives
4.3 Methodology
Chapter 5: Design and Implementation of ERIP
5.1 System Requirements
5.1.1 Computing Resources
5.1.2 Software Requirements
5.2 Functional Requirements
5.3 Non-Functional Requirements
5.4 Design of ERIP
5.4.1 State Diagram
5.5 Flowcharts for ERIP Routing Protocol
5.6 Netfilter Hooks
5.7 Netfilter Architecture:
5.8 Design Decisions for the Implementation of ERIP
5.9 Table Entries of ERIP’s Routing Table
5.10 Implementation of the ERIP Initialization Function
5.10.1 Receiver
5.10.2 Sender
5.10.3 RREQ, RREP and RERR
5.10.4 Time interval
5.10.5 Neighbour node:
5.11 Conclusion
Chapter 6: Testing and Validation
6.1 Testing the Developed Protocol
6.2 Unit Testing
6.3 System Testing
6.4 Testing the Developed Protocol
6.5 Configuration of the ERIP Protocol in Linux
6.5.1 Routing Protocol Installation and Running
6.5.2 Installation of VLC Player
6.5.3 Setting up VLC Video Streaming
6.5.4 Setup for VLC Video Streaming in Receiver Side
6.5.5 Demonstration and Routing Table Dump
6.5.6 Checking the Neighbour Node in the Routing Table
Chapter 7: Results and Discussion
7.1 Functional Test Results
7.2 Testing of ERIP in Live Scenarios:
7.3 Conclusion
Chapter 8: Conclusion
8.1 Summary
8.2 Conclusions
8.3 Recommendations for Future Work
Research Objectives and Themes
The primary objective of this thesis is to design and implement the Extended Routing Information Protocol (ERIP) for Mobile Ad-hoc Networks (MANETs) on the Linux platform, ensuring low overhead and enhanced security. The research aims to develop a proactive, beaconless protocol that facilitates efficient route discovery and secure data transmission in infrastructure-less environments.
- Design and implementation of a proactive MANET routing protocol.
- Integration of shared-key encryption for routing table security.
- Optimization of routing overhead using an incremental dump strategy.
- Experimental validation on the Linux platform using real-time multimedia streaming.
- Comparative testing of routing paths based on hop-count metrics.
Excerpt from the Book
5.10.1 Receiver
The recvfrom() and recvmsg() calls are used to receive messages from a socket, and may be used to receive data on a socket whether or not it is connection-If src_addr is not NULL, and the underlying protocol provides the source address, this source address is filled in. The recv() call is normally used only on a connected socket and is identical to recvfrom() with a NULL src_addr argument.If a message is too long to fit in the supplied buffer, excess bytes may be, If no messages are available at the socket, the receive calls wait for a message to arrive, unless the socket is nonblocking, in which case the recvmsg() call uses a msghdr structure to minimize the number of directly supplied arguments. This structure is defined as follows in <sys/socket.h>:
struct msghdr msg;
int rc;
memset(&msg, 0, sizeof(msg));
iovec.iov_base = buf;
iovec.iov_len = buflen;
msg.msg_name = sin;
msg.msg_namelen = slen;
msg.msg_iov = &iovec;
msg.msg_iovlen = 1;
char str_buff[300]; // string buffer
int i =0; // loop variable
char * buffer_pointer = (char *)buf;
while(i !=slen )
{
str_buff[i] = buffer_pointer[i];
i++;
}
Here msg_name and msg_namelen specify the source address if the socket I unconnected; msg_name may be given as a null pointer if no names are desired.
Summary of Chapters
Chapter 1: Introduction: This chapter introduces the concepts of Mobile Ad-hoc Networks (MANETs) and outlines the motivation and organization of the thesis.
Chapter 2: Routing and Security in MANETs: This section provides a comprehensive background on routing protocols and the various security challenges inherent in MANET environments.
Chapter 3: Literature Survey: This chapter reviews existing academic literature regarding routing protocols and security mechanisms for mobile networks.
Chapter 4: Problem Statement: This chapter defines the aim of the research and lists specific project objectives along with the methodology applied.
Chapter 5: Design and Implementation of ERIP: This core chapter details the architectural design, system requirements, and implementation steps for the Extended Routing Information Protocol.
Chapter 6: Testing and Validation: This chapter documents the various test cases and procedures used to verify the functionality of the developed protocol.
Chapter 7: Results and Discussion: This section presents the empirical test results and performance analysis of ERIP in different network scenarios.
Chapter 8: Conclusion: This final chapter summarizes the research findings and provides recommendations for future developments and improvements.
Key Terms
MANET, Routing, ERIP, Proactive, Linux, Security, Encryption, Incremental Dump, Hop Count, Network Protocol, Ad-hoc, Bandwidth, Throughput, Netfilter, Authentication
Frequently Asked Questions
What is the core purpose of this research?
The research focuses on designing and implementing a secure, proactive routing protocol (ERIP) for Mobile Ad-hoc Networks that operates efficiently in resource-constrained Linux-based environments.
Which central topics are addressed?
The work explores ad-hoc routing classification, network security vulnerabilities in MANETs, the design of state machines for protocols, and practical implementation within the Linux kernel using Netfilter.
What is the primary objective?
The goal is to create a lightweight, low-overhead routing protocol that provides both hop-to-hop and end-to-end security while maintaining effective path selection.
What scientific methods were employed?
The study utilizes a combination of literature review, system design specification, C-based implementation in Linux user space, and experimental validation through multimedia streaming tests.
What topics are discussed in the main body?
The main body covers the theoretical framework of MANET routing, detailed protocol design, software requirements, the use of Netfilter hooks, and a systematic testing phase to validate protocol functionality.
Which keywords describe this work best?
Key terms include MANET, ERIP, Proactive Routing, Security, Incremental Dump, and Linux Kernel.
How is the "incremental dump" strategy utilized?
It is used to optimize network performance by broadcasting only those routing table entries that have changed, thereby reducing bandwidth consumption compared to traditional full-dump strategies.
What role does the Linux Netfilter play?
Netfilter is used to intercept and redirect packets, allowing the custom ERIP protocol to manage packet flow in the user space without needing a complete recompilation of the Linux kernel.
How is routing security achieved?
Security is implemented through a shared-key encryption algorithm that encrypts the routing table before it is broadcast, ensuring that only authenticated nodes can process the information.
- Quote paper
- Ravikumar Putta (Author), 2012, Design and Implementation of the Extended Routing Information Protocol for Mobile Ad-Hoc Networks in Linux, Munich, GRIN Verlag, https://www.hausarbeiten.de/document/199886