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 | Size | Format | |
---|---|---|---|---|
Karaxatzis_Paraskevas.pdf | Καραχάτζης Παρασκευάς πτυχιακή | 415.62 kB | Adobe PDF | View/Open |
Please use this identifier to cite or link to this item:
This item is a favorite for 0 people.
http://195.251.240.227/jspui/handle/123456789/15117
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.