Routing Information Protocol in HOL/SPIN

Total Page:16

File Type:pdf, Size:1020Kb

Routing Information Protocol in HOL/SPIN Routing Information Proto col in HOLSPIN Karthikeyan Bhargavan Carl A Gunter and Davor Obradovic UniversityofPennsylvania Abstract Weprovide a pro of using HOL and SPIN of convergence for the Routing Information Proto col RIP an internet proto col based on distance vector routing We also calculate a sharp realtime b ound for this convergence This extends existing results to deal with the RIP standard itself which has complexities not accounted for in theorems ab out ab stract versions of the proto col Our work also provides a case study in the combined use of a higherorder theorem prover and a mo del checker The former is used to express abstraction prop erties and inductions and structure the highlevel pro of while the latter deals eciently with case analysis of nitary prop erties Intro duction The high connectivity on which the Internet relies is enabled by scalable and robust proto cols that enable routers connecting dierent physical networks to forward packets toward destinations describ ed in a uniform addressing system The rst Internet routing proto cols were based on distance vector routing which uses information ab out distance and direction to a destination to route packets The rst such proto col standardized by the Internet Engineering Task Force IETF was the Routing Information Proto col RIP and this proto col remains in widespread use to day Although the correctness of distance vector routing has b een proved for theoretical versions of the algorithm the RIP standard itself has never b een proved to have some of the prop erties it is exp ected to p ossess Since there exist nontrivial dierences between the abstract version and the standard itself pro ofs of some key prop erties of the standard are worthwhile In this pap er we carry out the pro of of convergence using a combination of the HOL higherorder theorem prover and the SPIN mo del checker The automated assistance reduces the burden of case analysis in parts of the standard where manual analysis would prove tedious Moreover the HOLSPIN pro of provides high condence for RIP and insights into the techniques needed to address other routing proto cols most of which are more complex than RIP Routing proto cols are meant to b e robust with resp ect to failures of links and routers If there is a failure then the routers communicate this information and routing tables are up dated to route around the failed link or router This pro cess takes some time since routers cannot p ossess instantaneous global knowledge Email addresses bkarthiksaulcisupennedu guntercisupennedu davorsaulcisupennedu of network characteristics They therefore pass information that is incomplete and if the proto col has the rightcharacteristics they eventually converge on a suitable set of alternative routes We have two results we show that the RIP proto col will converge after a failure and we calculate a sharp realtime b ound on the time this will take as a function of the radius of the network Both results are based on assumptions ab out network reliability and timing assumptions sp ecied in the RIP proto col The rst pro of concerns the convergence of the asynchronous distributed BellmanFord proto col as sp ecied in the IETF RIP standard The classic pro of of a pure form of the proto col is given in Our result covers additional features included in the standard to improve realtime resp onse times eg split horizons and p oison reverse These features add additional cases to b e consid ered in the pro of but the automated supp ort reduces the impact of this complex ity Adding these extensions makes the theory b etter match the standard and hence also its implementations Our pro of also uses a dierent technique from the one in providing some noteworthy prop erties ab out network stability Our second pro of provides a sharp realtime convergence b ound on RIP in terms of the radius of the network around its no des In the worst case the BellmanFord proto col has a convergence time as bad as the number of nodes in the network However if the maximum number of hops any source needs to traverse to reach a destination is k the radius around the destination and there are no link changes then RIP will converge in k timeout intervals for this destination From our rst pro of of convergence it is easy to see that this o ccurs within k intervals but the pro of of the sharp b ound of k is complicated by the numb er of cases that need to b e checked weshowhow to use automated supp ort to do this verication based on the approach develop ed in the previous case study supplemented byanewinvariant Thus if a network has a maximum radius of around each of its destinations then it will converge in at most intervals even if the network has no des Assuming the timing intervals in the RIP standard such a network will converge within minutes if there are no link changes The basis of our verication is the RIP standard Early implementations of distance vector routing were incompatible so all of the routers running RIP in a domain needed to use the same implementation Users and implementors were led to correct this problem byproviding a sp ecication that would dene precise proto cols and packet formats leading to the rst version of the standard In time this standard was revised to a second version Atthelevel of abstraction we use here our pro of is applicable to b oth of these versions There havebeena variety of successful formal studies of communication pro to cols However most of the studies to date havefocusedon endpoint proto cols that is proto cols b etween pairs of hosts using mo dels that involvetwo or three pro cesses representing the endp oints or the endp oints and an adversary for instance Studies of routing proto cols must have a dierentavor since a pro of that works for two or three routers is not interesting unless it can b e general ized Routing proto cols generally have the following attributes which inuence the way formal verication techniques can b e applied An essentially unb ounded numb er of replicated simple pro cesses execute concurrently Dynamic connectivity is assumed and fault tolerance is required Pro cesses are reactive systems with a discrete interface of mo dest complexity Real time is imp ortant and many actions are carried out with some timeout limit or in resp onse to a timeout Most routing proto cols have other attributes such as latencies of information ow limiting for example the feasibility of a global concept of time and the need to protect network resources These attributes sometimes make the proto cols more complex For instance the asynchronous version of the BellmanFord proto col is much harder to prove correct than the synchronous version and the RIP standard is still harder to prove correct b ecause of the addition of complicating optimizations intended to reduce latencies Following this intro duction wegive a description of the Routing Information Proto col as sp ecied in its standard We then describ e our formalization of RIP in HOL and SPIN In the fourth and fth sections we show the convergence of RIP and derive a sharp realtime b ound for the convergence In the sixth section weprovide some analysis of our metho dology including a discussion of the b enets of automation and some crude measurements of the complexityof the pro ofs as viewed by the automated to ols and the p erson carrying out the verication resp ectively Our nal section summarizes the conclusions Routing Information Proto col The RIP proto col sp ecication is given in and a go o d exp osition can b e found in Westartby describing the general networking environment and the task of a routing proto col Then wegive a brief description of the RIP proto col including its pseudo co de App endices A A Finallywe discuss dierences between the standard and the underlying theory and the way they aect proto col requirements Routing in Internetworks An internet is a family of networks connected by routers Figure illustrates an internetwork with four networks shown as clouds and four routers shown as black squares The goal of the routers is to forward packets b etween hosts shown as circles that are attached to the networks The routers use routing tables which they develop through running a distributed routing protocolPackets from hosts travel in hops across networks linked by routers Each router cho oses a link on whichtoforward the packet based on the packets destination address and other parameters In order to b e able to make good forwarding decisions routers need to maintain partial top ology information in the routing tables n1 i1 r1 i3 r4 h1 n3 n4 h2 i2 r2 r3 n2 Fig An Internet The aim of a routing proto col is to establish a pro cedure for up dating these tables In most cases routing information can be exchanged only local ly ie between neighb oring routers However the overall goal of a routing proto col is to establish good global paths b etween distant hosts on the internet An interface is the link between a router and a network In this example router r has interfaces i i and i which connect it to the networks n n and n resp ectively Hosts h and h b elong to the network n Routers are said to be neighbors if they haveinterfaces to a common network In our example all routers are neighb ors of r but r and r are not neighb ors Routing Information Proto col Each RIP router maintains a routing table A routing table contains one entry p er destination network representing the current b est route to the destination An entry corresp onding to destination d has the following elds hopsnumber
Recommended publications
  • A Comprehensive Study of Routing Protocols Performance with Topological Changes in the Networks Mohsin Masood Mohamed Abuhelala Prof
    A comprehensive study of Routing Protocols Performance with Topological Changes in the Networks Mohsin Masood Mohamed Abuhelala Prof. Ivan Glesk Electronics & Electrical Electronics & Electrical Electronics & Electrical Engineering Department Engineering Department Engineering Department University of Strathclyde University of Strathclyde University of Strathclyde Glasgow, Scotland, UK Glasgow, Scotland, UK Glasgow, Scotland, UK mohsin.masood mohamed.abuhelala ivan.glesk @strath.ac.uk @strath.ac.uk @strath.ac.uk ABSTRACT different topologies and compare routing protocols, but no In the modern communication networks, where increasing work has been considered about the changing user demands and advance applications become a functionality of these routing protocols with the topology challenging task for handling user traffic. Routing with real-time network limitations. such as topological protocols have got a significant role not only to route user change, network congestions, and so on. Hence without data across the network but also to reduce congestion with considering the topology with different network scenarios less complexity. Dynamic routing protocols such as one cannot fully understand and make right comparison OSPF, RIP and EIGRP were introduced to handle among any routing protocols. different networks with various traffic environments. Each This paper will give a comprehensive literature review of of these protocols has its own routing process which each routing protocol. Such as how each protocol (OSPF, makes it different and versatile from the other. The paper RIP or EIGRP) does convergence activity with any change will focus on presenting the routing process of each in the network. Two experiments are conducted that are protocol and will compare its performance with the other.
    [Show full text]
  • Routing As a Service
    Routing as a Service Karthik Lakshminarayanan Ion Stoica Scott Shenker Jennifer Rexford University of California, Berkeley Princeton University Abstract configuration, making it difficult to offer meaningful service- level agreements (SLAs) to customers or to identify the AS In Internet routing, there is a fundamental tussle between the responsible for end-to-end performance problems. end users who want control over the end-to-end paths and the An ISP's customers, such as end users, enterprise net- Autonomous Systems (ASes) who want control over the flow works, and smaller ISPs, have even less control over the se- of traffic through their infrastructure. To resolve this tussle lection of end-to-end paths. By connecting to more than one and offer flexible routing control across multiple routing do- ISPs, an enterprise can select from multiple paths [2]; how- mains, we argue that customized route computation should ever, the customer controls only the first hop for outbound be offered as a service by third-party providers. Outsourcing traffic and has (at best) crude influence on incoming traffic. specialized route computation allows different path-selection Yet, some customers need more control over the end-to-end mechanisms to coexist, and evolve over time. path, or at least its properties, to satisfy performance and pol- icy goals. For example, a customer might not want his Web 1 Introduction traffic forwarded through an AS that filters packets based on Interdomain routing has long been based on three pillars: their contents. Alternatively, a customer might need to discard traffic from certain sources to block denial-of-service attacks • Local control: ASes have complete control over routing or protect access to a server storing sensitive data.
    [Show full text]
  • Routing Basics
    CHAPTER 5 Chapter Goals • Learn the basics of routing protocols. • Learn the differences between link-state and distance vector routing protocols. • Learn about the metrics used by routing protocols to determine path selection. • Learn the basics of how data travels from end stations through intermediate stations and on to the destination end station. • Understand the difference between routed protocols and routing protocols. Routing Basics This chapter introduces the underlying concepts widely used in routing protocols. Topics summarized here include routing protocol components and algorithms. In addition, the role of routing protocols is briefly contrasted with the role of routed or network protocols. Subsequent chapters in Part VII, “Routing Protocols,” address specific routing protocols in more detail, while the network protocols that use routing protocols are discussed in Part VI, “Network Protocols.” What Is Routing? Routing is the act of moving information across an internetwork from a source to a destination. Along the way, at least one intermediate node typically is encountered. Routing is often contrasted with bridging, which might seem to accomplish precisely the same thing to the casual observer. The primary difference between the two is that bridging occurs at Layer 2 (the link layer) of the OSI reference model, whereas routing occurs at Layer 3 (the network layer). This distinction provides routing and bridging with different information to use in the process of moving information from source to destination, so the two functions accomplish their tasks in different ways. The topic of routing has been covered in computer science literature for more than two decades, but routing achieved commercial popularity as late as the mid-1980s.
    [Show full text]
  • Routing Tables
    Routing Tables A routing table is a grouping of information stored on a networked computer or network router that includes a list of routes to various network destinations. The data is normally stored in a database table and in more advanced configurations includes performance metrics associated with the routes stored in the table. Additional information stored in the table will include the network topology closest to the router. Although a routing table is routinely updated by network routing protocols, static entries can be made through manual action on the part of a network administrator. How Does a Routing Table Work? Routing tables work similar to how the post office delivers mail. When a network node on the Internet or a local network needs to send information to another node, it first requires a general idea of where to send the information. If the destination node or address is not connected directly to the network node, then the information has to be sent via other network nodes. In order to save resources, most local area network nodes will not maintain a complex routing table. Instead, they will send IP packets of information to a local network gateway. The gateway maintains the primary routing table for the network and will send the data packet to the desired location. In order to maintain a record of how to route information, the gateway will use a routing table that keeps track of the appropriate destination for outgoing data packets. All routing tables maintain routing table lists for the reachable destinations from the router’s location.
    [Show full text]
  • Advanced Routing – Cisco (4 Cr.) Course Description
    NVCC COLLEGE-WIDE COURSE CONTENT SUMMARY ITN 250 - Advanced Routing – Cisco (4 cr.) Course Description ITN 250 - Includes instruction focusing on the characteristics of various Routing protocols used in the TCP/IP networking environment, static routing, OSPF, IGRP, EIGRP, IS-IS, BGP, advanced IP addressing, and security. Course content also examines various strategies for optimizing network routing performance. Lecture 4 hours per week. Recommended Pre-requisites Student should: be a Cisco Certified Network Associate (CCNA), or, have successfully completed ITN157 WAN Technologies – Cisco, or have successfully completed TEL251 Internetworking 4, or, have successfully completed CCNA Semester 4 training at a Cisco Network Academy, or, have instructor’s permission. Course Objectives Upon completion of this course, the student will be able to: Selecting and configuring scalable IP addresses Configure the RIP version 2 routing protocol Configure the EIGRP routing protocol Configure Open Shortest Path First protocol in a multi-area environment Configure the IS-IS routing protocol Develop route filtering and policy routing Configure route redistribution Describe the Border Gateway Protocol (BGP) Configure and troubleshoot the BGP routing protocol Course Content Overview of Scalable Internetworks Advanced IP Addressing Management Routing Overview Routing Information Protocol Version 2 EIGRP OSPF IS-IS Route Optimization BGP Student Learning Outcomes Selecting and configuring scalable IP addresses Understand the issues of IP address
    [Show full text]
  • Introduction to Wifi Networking
    Introduction to WiFi Networking Marco Zennaro Ermanno Pietrosemoli Goals The goal of this lecture is to introduce: ‣ 802.11 family of radio protocols ‣ 802.11 radio channels ‣ Wireless network topologies ‣ WiFi modes of operation ‣ Strategies for routing network traffic 2 ISM / UNII bands Most commercial wireless devices (mobile phones, television, radio, etc.) use licensed radio frequencies. Large organizations pay licensing fees for the right to use those radio frequencies. WiFi uses unlicensed spectrum. License fees are not usually required to operate WiFi equipment. The Industrial, Scientific and Medical (ISM) bands allow for unlicensed use of 2.4-2.5 GHz, 5.8 GHz, and many other (non-WiFi) frequencies. 3 802.11 family 4 802.11 family 5 Wireless networking protocols The 802.11 family of radio protocols are commonly referred to as WiFi. • 802.11a supports up to 54 Mbps using the 5 GHz unlicensed bands. • 802.11b supports up to 11 Mbps using the 2.4 GHz unlicensed band. • 802.11g supports up to 54 Mbps using the 2.4 GHz unlicensed band. • 802.11n supports up to 600 Mbps using the 2.4 GHz and 5 GHz unlicensed bands. • 802.16 (WiMAX) is not 802.11 WiFi! It is a completely different technology that uses a variety of licensed and unlicensed frequencies. 6 Compatibility of standards AP 802.11a 802.11b 802.11g 802.11n 802.16 Yes C 802.11a Yes @5GHz L Yes Yes 802.11b Yes I (slower) @2.4GHz Yes Yes E 802.11g Yes (slower) @2.4GHz N Yes Yes Yes 802.11n Yes T @5GHz @2.4GHz @2.4GHz 802.16 Yes 7 IEEE 802.11 AC Improved performance by means of: • Two or up to 8 Spatial streams (MIMO) • Higher order modulation types (up to 256 QAM) • Wider Channels bandwidth (up to 160 MHz) 8 IEEE 802.11 AC: MIMO 9 IEEE 802.11 AC, 256 constellation 1 0 Data rates Note that the “data rates” quoted in the WiFi specifications refer to the raw radio symbol rate, not the actual TCP/IP throughput rate.
    [Show full text]
  • RIP: Routing Information Protocol a Routing Protocol Based on the Distance-Vector Algorithm
    Laboratory 6 RIP: Routing Information Protocol A Routing Protocol Based on the Distance-Vector Algorithm Objective The objective of this lab is to configure and analyze the performance of the Routing Information Protocol (RIP) model. Overview A router in the network needs to be able to look at a packet’s destination address and then determine which of the output ports is the best choice to get the packet to that address. The router makes this decision by consulting a forwarding table. The fundamental problem of routing is: How do routers acquire the information in their forwarding tables? Routing algorithms are required to build the routing tables and hence forwarding tables. The basic problem of routing is to find the lowest-cost path between any two nodes, where the cost of a path equals the sum of the costs of all the edges that make up the path. Routing is achieved in most practical networks by running routing protocols among the nodes. The protocols provide a distributed, dynamic way to solve the problem of finding the lowest-cost path in the presence of link and node failures and changing edge costs. One of the main classes of routing algorithms is the distance-vector algorithm. Each node constructs a vector containing the distances (costs) to all other nodes and distributes that vector to its immediate neighbors. RIP is the canonical example of a routing protocol built on the distance-vector algorithm. Routers running RIP send their advertisements regularly (e.g., every 30 seconds). A router also sends an update message whenever a triggered update from another router causes it to change its routing table.
    [Show full text]
  • Switches, Routers and Networks
    Switches, Routers and Networks Muriel Medard EECS MIT MIT Overview • Introduction • Routing and switching: – Switch fabrics : – Basics of switching – Blocking – Interconnection examples – Complexity – Recursive constructions • Interconnection routing • Buffering - input and output • Local area networks (LANs) • Metropolitan area networks (MANs) • Wide area networks (WANs) • Trends MIT Introduction • Data networks generally evolve fairly independently for different applications and are then patched together – telephony, variety of computer applications, wireless applications • IP is a large portion of the traffic, but it is carried by a variety of protocols throughout the network • Voice is still the application that has determined many of the implementation issues, but its share is decreasing and voice is increasingly carried over IP (voice over IP) • Voice-oriented networks are not very flexible, but are very robust • IP very successful because it is very flexible, but increasingly there is a drive towards enhancing the reliability of services • How do all of these network types and requirements fit together? MIT Networks • LANs serve a wide variety of services and attach to MANs or maybe directly to WANs • The two main purposes of a networks are: – Transmission across some distance: this involves amplification or regeneration (generally code-assisted) – The establishment of variable flows: switching and routing MAN LAN WAN LAN LAN SAN MAN LAN MIT Switching and Routing • Switching is generally the establishment of connections on a circuit basis • Routing is generally the forwarding of traffic on a datagram basis • Routing requires switching but not vice-versa – routing uses connections which are permanently or temporarily set up to in order to forward datagrams (those datagrams may be in circuit form, for instance VPs and VCs) MIT Packet routers • A packet switch consists of a routing engine (table look-up), a switch scheduler, and a switch fabric.
    [Show full text]
  • User Guide Model Number RAC2V1A 802.11Ac Wave 2 Router
    User Guide Model Number RAC2V1A 802.11ac Wave 2 Router C2V1A Router User Guide 1 Table of Contents 1. Overview ............................................................... 5 1.1. Introduction .................................................................................................. 5 2. Product Overview ............................................... 6 2.1. About The Router ....................................................................................... 6 2.2. What's in the Box? ..................................................................................... 6 2.3. Items You Need ........................................................................................... 6 2.4. About This Manual ...................................................................................... 7 3. System Requirements ........................................ 8 3.1. Recommended Hardware ........................................................................ 8 3.2. Windows ........................................................................................................ 8 3.3. Mac OS ........................................................................................................... 8 3.4. Linux/Unix ..................................................................................................... 8 3.5. Mobile Devices ............................................................................................. 8 4. Installing the Router ........................................... 9 4.1. Front Panel ...................................................................................................
    [Show full text]
  • Networks G22.2262-001
    Data Communication & Networks G22.2262-001 Session 7 - Main Theme Networks: Part II Routing Algorithms and Routing Protocol Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical Sciences 1 Agenda Routing Strategies Interplay Between Routing and Forwarding Graph Abstraction Routing Algorithm Classification Link-State Routing (LS) Algorithm Distance Vector (DV) Algorithm Comparison of LS and DV Algorithms Hierarchical Routing Interconnected ASes Inter-AS Tasks Intra-AS Routing Internet Inter-AS Routing – Border Gateway Protocol Why Different Intra- and Inter-AS Routing? 2 1 Part I Routing Strategies 3 Routing Strategies Fixed Flooding Random Adaptive 4 2 Fixed Routing Single permanent route for each source to destination pair Determine routes using a least cost algorithm Route fixed, at least until a change in network topology 5 Fixed Routing Tables 6 3 Flooding No network info required Packet sent by node to every neighbor Incoming packets retransmitted on every link except incoming link Eventually a number of copies will arrive at destination Each packet is uniquely numbered so duplicates can be discarded Nodes can remember packets already forwarded to keep network load in bounds Can include a hop count in packets 7 Flooding Examples 8 4 Properties of Flooding All possible routes are tried Very robust At least one packet will have taken minimum hop count route Can be used to set up virtual circuit All nodes are visited Useful to distribute information
    [Show full text]
  • BATSEN: Modifying the BATMAN Routing Protocol for Wireless Sensor Networks
    Rochester Institute of Technology RIT Scholar Works Theses 5-8-2018 BATSEN: Modifying the BATMAN Routing Protocol for Wireless Sensor Networks Nelson Henry Powell III [email protected] Follow this and additional works at: https://scholarworks.rit.edu/theses Recommended Citation Powell, Nelson Henry III, "BATSEN: Modifying the BATMAN Routing Protocol for Wireless Sensor Networks" (2018). Thesis. Rochester Institute of Technology. Accessed from This Thesis is brought to you for free and open access by RIT Scholar Works. It has been accepted for inclusion in Theses by an authorized administrator of RIT Scholar Works. For more information, please contact [email protected]. BATSEN: Modifying the BATMAN Routing Protocol for Wireless Sensor Networks By: Nelson Henry Powell III Committee Members: Dr. Sumita Mishra Dr. Yin Pan Dr. Andres Kwasinski In partial fulfillment of the requirements for the degree of Master of Science in Computing Security Rochester Institute of Technology B. Thomas Golisano College of Computing & Information Sciences Department of Computing Security May 8th, 2018 Acknowledgments I’d like to take this opportunity to thank my wife, my love, Emilia; for putting up with the deployments, active duty, and working two jobs, all while going back to school to complete this degree. None of this would have been possible without your love and support. You are my motivation for being a better me. To my children, Connor and Iliana, for teaching me to look at the world as if it were for the first time; and for all the snuggles, hugs, and kisses that happily kept me from my school work. You are both my favorite and most important accomplishments in my life.
    [Show full text]
  • Routing and Internetworking 2 a Network
    1 Routing and Internetworking 2 A Network H11 H10 H9 H3 H4 network/subnet 2 router R7 R6 H8 H2 R2 R3 R4 R5 H7 gateway H1 R1 router host network/subnet 1 H5 H6 gateway links networks together to form internet routing plans path through network 3 Internets An internet can be homogeneous internets all same type of network no need to convert frames heterogeneous internets free mix of network technologies need to convert between frame formats convert between CO and CL? 4 Switching the Data circuit switched networks physical communication channel to be set up between two hosts wasteful if bursty data e.g. PSTN message switched networks sends data in messages, which can share a channel store-and-forward e.g. Post Office packet switched networks similar to message switching limit on size → data sent in one or more packets 5 Store-and-forward (1) R time t R 6 Store-and-forward (2) R time t + 1 R 7 Store-and-forward (3) R time t + 2 R 8 Store-and-forward (4) R time t + 3 R delay ∝ packet size 9 Example: Reducing Store-and-forward Delays A router operating on a PSN using store-and-forward has links into it operating at 1Mbs−1, and the router is found to delay packets by 0.1s. How many pieces must you fragment the packet into to reduce this delay to 0.02s, and how large are those packets? delay ∝ packet size delay = packet size constant 0.1/1 = 0.02/s → s = 0.2, hence 5 packets are required for each of the old packets 0.02×1×106 packet size= delay = 8 = 2500 bytes 10 Virtual Circuits R7 R6 to/from from/to to/from from/to H11 H10 H9 net 2 L13 L18 L17 L9 L16 R4 R5 R7 R6 H8 to/from from/to to/from from/to L10 L8 L7 L15 R4 R5 H7 Virtual Circuits allow some features of L12 L14 CO to be present in PSN Divide links by virtual circuit H5 H6 identifiers (VCI) Lx(1), Lx(2), Lx(3),..
    [Show full text]