EIGRP - Μελέτη και υλοποίηση (Bachelor thesis)

Καραχάτζης, Παρασκευάς


This thesis is deals with the study and implementation of the EIGRP protocol routing protocol. The purpose of a routing protocol is to keep track of the changes of the network topology and adjust the routes to the destination networks, on top of discovering these networks. EIGRP is a distance vector routing protocol, 4 από 58 Πτυχιακή εργασία του φοιτητή Καραχατζή Παρασκευά property of Cisco. At 2013 Cisco released an Informational RFC describing the basic version of the EIGRP protocol. The program was developed using C as a programming language and it is used as a daemon. There are two basic categories of routing algorithms based on how they work. Even though EIGRP is described as a distance vector routing protocol, it uses features of link-state protocols as well. Also unlike other routing protocols it does not use TCP or UDP to transport packets through the network but it has implemented a transport layer protocol called RTP (Reliable Transport Protocol) which is a mix of both TCP and UDP and offers both speed and reliability. The routes are defined as either in PASSIVE state or ACTIVE state. When a route is in PASSIVE state the router will forward packet to that destination in contrast when the route goes into ACTIVE state it will stop forwarding packets and start searching for a new valid route. A valid route is considered a route that meets the Feasible Condition. This condition is met when the advertized distance from the destination is less than the feasible distance the router learned since the last time the route went into ACTIVE state. The routes that meet this condition are called feasible successor. Each route can have multiple feasible successor but one of them will be chosen as the successor which will be the neighbor that the packets will be forwarded to. We should also mention that when a router changes to ACTIVE state a mechanism is trigger to limit the time the route stays in the ACTIVE state. Both the DUAL algorithm and state machine provide fast convergence time by recalculated only the affected routes while also providing loop free paths. And by using the topology table the protocol can recalculate the route without having to change the state of the route. The information needed by the DUAL algorithm is conveyed with the packets UPDATE, QUERY and REPLY. On top of these EIGRP also uses the packets HELLO, SIA-QUERY and SIA REPLY. The data transferred in these packets are encapsulated into TLV which are similar to structures and allow different types of data to be transferred using the same packet. Also routes are distinguished as internal and external routes. Internal routes are the routes created or found by the EGRP protocol while external routes are those that were discovered from other sources such as static routes and other routing protocols. To reduce traffic at the network the EIGRP protocol will send multicast packets whenever such an option is available. Even though this has created a problem since the packets much to read in order, the solution to this problem is also implemented. Lastly the calculation of the route metric can be done by either the classic formula or the wide metric formula. Wide metrics where introduced as the classic formula could not keep up with the fast network interfaced. Because EIGRP uses the inverted bandwidth of the link to 5 από 58 Πτυχιακή εργασία του φοιτητή Καραχατζή Παρασκευά calculate the bandwidth based on a theoretical maximum bandwidth, all the network interfaces that pass this limits have trouble calculating a correct or more likely an accurate metric. To solve this problem wide metrics were introduced solving this problem and most importantly are compatible with the classic metrics. For the development of the code the incremental model was used. It allows easy debugging as the parts that are made on each iteration are functional. At the same time is allows the programmer to break down the problem into smaller pieces and work them stage by stage. The drawback of this model is that you can not calculate the cost of the project, which in this case is the time consumed to develop the software. The program uses two more protocols telnet and netlink to interact with other parts of the system and the user. Both their libraries were found at the Debian repository and are contributed by the community. Software used for the project are gedit, gcc, gdb, valgrind, wireshark and the libraries from the debhelper package. Lastly an important role was played by the Cisco routers at the end of each iteration for debugging.
Institution and School/Department of submitter: Σχολή μηχανικών / τμήμα μηχανικών υπολογιστών και ηλεκτρονικών συστημάτων
Subject classification: EIGRP (Πρωτόκολλο δικτύου υπολογιστών)
EIGRP (Computer network protocol)
Keywords: Γλώσσα προγραμματισμού;EIGRP;C language program;C γλώσσα προγραμματισμού;Πρωτόκολλο;Protocol
Description: Πτυχιακή εργασία - Σχολή μηχανικών - Τμήμα μηχανικών υπολογιστών και ηλεκτρονικών συστημάτων , 2016 α.α 7599
URI: http://195.251.240.227/jspui/handle/123456789/15117
Appears in Collections:Πτυχιακές Εργασίες

Files in This Item:
File Description SizeFormat 
Karaxatzis_Paraskevas.pdfΚαραχάτζης Παρασκευάς πτυχιακή 415.62 kBAdobe PDFView/Open



 Please use this identifier to cite or link to this item:
http://195.251.240.227/jspui/handle/123456789/15117
  This item is a favorite for 0 people.

Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.