Self-Stabilizing Wormhole Routing
Total Page:16
File Type:pdf, Size:1020Kb
UNLV Retrospective Theses & Dissertations 1-1-2002 Self-stabilizing wormhole routing Anthony Brandon Kenitzki University of Nevada, Las Vegas Follow this and additional works at: https://digitalscholarship.unlv.edu/rtds Repository Citation Kenitzki, Anthony Brandon, "Self-stabilizing wormhole routing" (2002). UNLV Retrospective Theses & Dissertations. 1415. http://dx.doi.org/10.25669/j56d-d0pm This Thesis is protected by copyright and/or related rights. It has been brought to you by Digital Scholarship@UNLV with permission from the rights-holder(s). You are free to use this Thesis in any way that is permitted by the copyright and related rights legislation that applies to your use. For other uses you need to obtain permission from the rights-holder(s) directly, unless additional rights are indicated by a Creative Commons license in the record and/ or on the work itself. This Thesis has been accepted for inclusion in UNLV Retrospective Theses & Dissertations by an authorized administrator of Digital Scholarship@UNLV. For more information, please contact [email protected]. INFORMATION TO USERS This manuscript has been reproduced from the microfilm master. UMI films the text directly from the original or copy submitted. Thus, some thesis and dissertation copies are in typewriter face, while others may be from any type of computer printer. The quality of this reproduction is dependent upon the quality of the copy submitted. Broken or indistinct print, colored or poor quality illustrations and photographs, print bleedthrough, substandard margins, and improper alignment can adversely affect reproduction. In the unlikely event that the author did not send UMI a complete manuscript and there are missing pages, these will be noted. Also, if unauthorized copyright material had to be removed, a note will indicate the deletion. Oversize materials (e.g., maps, drawings, charts) are reproduced by sectioning the original, beginning at the upper left-hand comer and continuing from left to right in equal sections with small overlaps. ProQuest Information and Learning 300 North Zeeb Road, Ann Arbor, Mi 48106-1346 USA 800-521-0600 UMI' Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. SELF-STABinZING WORMHOLE ROUTING bv Anthonv B. Kenitzki Bachelor of Arts College of Engineering University of Nevada. Las Vegas 1997 A thesis submitted in partial fulfillment of the requirements for the M aster of Science Degree Department of Computer Science Howard R. Hughes College of Engineering Graduate College University of Nevada. Las Vegas August 2002 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. UMI Number 1411274 UMI‘ UMI Microform 1411274 Copyright 2003 by ProQuest information and Learning Company. All rights reserved. This microform edition is protected against unauthoriæd copying under Title 17, United States Code. ProQuest Information and Learning Company 300 North Zeeb Road P.O. Box 1346 Ann Arbor, Ml 48106-1346 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Thesis Approval IJNTV The Graduate College University of Nevada, Las Vegas May 17 20 02 The Thesis prepared by Anthony B Kenitzki Entitled Self-Stabilizing Wormhole Routing is approved in partial fulfillment of the requirements for the degree of Master of Science in Computer Science __________________ Examination Committee Qtair Examination Committee Chair van o f the Graduate College Examination Committee Member Examination Comjmttèe Member Graduate clllege Facidty Representative u Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. ABSTRACT Self Stabilizing Wormhole Routing by Anthony B. Kenitzki Ajoy K. Datta PhD. Examination Committee Co-Chair Professor of Computer Science University of Nevada. Las Vegas Sébastien Tixeuil PhD. Examination Committe Co-Chair Professor of Computer Science Université de Paris-Sud. France Parallel and distributed systems are composed of individual processors that communicate with one another by exchanging messages through communication links. WTien the sender and the re ceiver of a message are not direct neighbors, intermediate processors must cooperate to ensure proper routing. Wormhole routing is most common in parallel architectures in which messages are sent in small fragments called flits. We assume that each processor will contain a single fixed-size flit buffer for each incoming link. A processor must forward the flit in a given link buffer to another processor before receiving another flit on that link. This permits messages to wind through the entire network from source to destination, resembling a worm. Wormhole routing is a lightweight and efficient method of routing messages between parallel processors. Oiur purpose is to modify existing wormhole routing algorithms in familiar topologies to make iii Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. them self-stabilizing. Self-stabilization is a technique that guarantees tolerance to transient faults (e.g. memory corruption or communication hazard) for a given protocol. Transient faults would t\-p- ically place the network in an illegitimate state, while Self-stabilization guarantees that the network recovers a correct behavior in finite time, without the need for human intervention. Self-stabilization also guarantees the safety property, meaning that once the network is in a legitimate state, it will remain there until another fault occurs. This paper presents self-stabilizing network algorithms in the wormhole routing model, using the unidirectional ring and the two-dimensional mesh topologies. We chose the ring topology to illustrate the numerous difficulties of self-stabilization in a wormhole routing environment, even in one of the most simple network topologies. We then extend the results of the ring topology to a more complex two-dimensional mesh network. IV Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. TABLE OF CONTENTS ABSTRACT ........................................................................................................................................ iii LIST OF FIGURES ........................................................................................................................... \ii LIST OF ALGORITHMS................................................................................................................. viii ACKNOWLEDGMENTS................................................................................................................. ix CHAPTER I INTRODUCTION ................................................................................................. I Processor Networks........................................................................................................................ I Topology........................................................................................................................................... 1 Self-stabilization ........................................................................................................................... 2 Routing Protocols ........................................................................................................................ 2 Related W ork ................................................................................................................................. 3 Our Contribution ........................................................................................................................... 3 Thesis Outline .............................................................................................................................. 4 CHAPTER 2 SELF-STABILIZING WORMHOLE ROUTING IN R IN G S ....................... 5 Network Model and Topology .................................................................................................... 5 Wormhole Routing ....................................................................................................................... 5 Specification .................................................................................................................................... 6 Problems Encountered ................................................................................................................. 6 Solutions and Ideas ....................................................................................................................... 7 Assumptions and Conventions .................................................................................................... 8 Programming Conventions .......................................................................................................... 10 Data Structures .............................................................................................................................. 10 A lgorithm........................................................................................................................................ 12 Helper Functions .................................................................................................................... 12 Algorithm Description............... 13 Proof of C o rre c tn e ss ...................................................................................................................