Deadlock-free Packet Switching

Slides:



Advertisements
Similar presentations
Mobile and Wireless Computing Institute for Computer Science, University of Freiburg Western Australian Interactive Virtual Environments Centre (IVEC)
Advertisements

Lecture 5: Network Flow Algorithms Max-Flow Min-Cut Single-Source Shortest-Path (SSSP) Job Sequencing.
Chapter 4 Distributed Bellman-Ford Routing
COS 461 Fall 1997 Routing COS 461 Fall 1997 Typical Structure.
Fundamentals of Computer Networks ECE 478/578 Lecture #13: Packet Switching (2) Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
Breadth-First Search Seminar – Networking Algorithms CS and EE Dept. Lulea University of Technology 27 Jan Mohammad Reza Akhavan.
Mobile and Wireless Computing Institute for Computer Science, University of Freiburg Western Australian Interactive Virtual Environments Centre (IVEC)
The Stagecoach Problem
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 22 Introduction to Computer Networks.
Scheduling Algorithms for Wireless Ad-Hoc Sensor Networks Department of Electrical Engineering California Institute of Technology. [Cedric Florens, Robert.
Acyclic orientations do not lead to optimal deadlock-free packet routing algorithms. Daniel Štefankovič.
Spring Routing & Switching Umar Kalim Dept. of Communication Systems Engineering 06/04/2007.
2015/7/2Deadlock-free Packet Switching1 Introduction to Distributed Algorithm Part One: Protocols Chapter 5- Deadlock-free Packet Switching Teacher: Chun-Yuan.
Mobile and Wireless Computing Institute for Computer Science, University of Freiburg Western Australian Interactive Virtual Environments Centre (IVEC)
Interval Routing Presented by: Marc Segal. Motivation(1) In a computer network a routing method is required so that nodes can communicate with each other.
1 Computer Communication & Networks Lecture 22 Network Layer: Delivery, Forwarding, Routing (contd.)
Tree Searching Breadth First Search Dept First Search.
WAN technologies and routing Packet switches and store and forward Hierarchical addresses, routing and routing tables Routing table computation Example.
COSC 2007 Data Structures II Chapter 14 Graphs III.
Boundary Recognition in Sensor Networks by Topology Methods Yue Wang, Jie Gao Dept. of Computer Science Stony Brook University Stony Brook, NY Joseph S.B.
Network and Communications Ju Wang Chapter 5 Routing Algorithm Adopted from Choi’s notes Virginia Commonwealth University.
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Chapter 5 Network Layer.
CIS 725 Network Layer. This layer provides communication between any two nodes Uniform addressing scheme independent of the network technology Network.
1 Computer Communication & Networks Lecture 21 Network Layer: Delivery, Forwarding, Routing Waleed.
1 Data Link Layer Lecture 23 Imran Ahmed University of Management & Technology.
M. Veeraraghavan (originals by J. Liebeherr) 1 Need for Routing in Ethernet switched networks What do bridges do if some LANs are reachable only in multiple.
Interconnect Networks Basics. Generic parallel/distributed system architecture On-chip interconnects (manycore processor) Off-chip interconnects (clusters.
Lecture 5 CSE 331. Graphs Problem Statement Algorithm Problem Definition “Implementation” Analysis A generic tool to abstract out problems.
Global State Collection
Indian Institute of Technology Kharagpur PALLAB DASGUPTA Graph Theory: Hamiltonian Cycles Pallab Dasgupta, Professor, Dept. of Computer Sc. and Engineering,
A Framework for Reliable Routing in Mobile Ad Hoc Networks Zhenqiang Ye Srikanth V. Krishnamurthy Satish K. Tripathi.
Spring Routing: Part I Section 4.2 Outline Algorithms Scalability.
Indian Institute of Technology Kharagpur PALLAB DASGUPTA Graph Theory: Trees Pallab Dasgupta, Professor, Dept. of Computer Sc. and Engineering, IIT
Hwajung Lee. Some applications - computing network topology - termination detection - deadlock detection Chandy Lamport algorithm does a partial job.
1 Chapter 11 Global Properties (Distributed Termination)
Graph Representations And Traversals. Graphs Graph : – Set of Vertices (Nodes) – Set of Edges connecting vertices (u, v) : edge connecting Origin: u Destination:
Indian Institute of Technology Kharagpur PALLAB DASGUPTA Graph Theory: Planarity Pallab Dasgupta, Professor, Dept. of Computer Sc. and Engineering, IIT.
© Sudhakar Yalamanchili, Georgia Institute of Technology (except as indicated) Deadlock: Part II - Recovery.
CS 6401 Intra-domain Routing Outline Introduction to Routing Distance Vector Algorithm.
Salah A. Aly ,Moustafa Youssef, Hager S. Darwish ,Mahmoud Zidan
Routing and Switching Fabrics
Advanced Computer Networks
CprE 458/558: Real-Time Systems
Distributed Mutual Exclusion
Surviving Holes and Barriers in Geographic Data Reporting for
CS60002: Distributed Systems
THE NETWORK LAYER.
I206: Lecture 15: Graphs Marti Hearst Spring 2012.
Context-free Languages
Intradomain Routing Outline Introduction to Routing
CS60002: Distributed Systems
ECE453 – Introduction to Computer Networks
The Balanced Sliding Window Protocol
Logical Clocks and Casual Ordering
Communication Networks NETW 501
Non-Distributed Excercises
Advanced Computer Networks
Routing.
ECE 4450:427/527 - Computer Networks Spring 2017
Routing and Switching Fabrics
Bridges Neil Tang 10/10/2008 CS440 Computer Networks.
Graph Theory: Cuts and Connectivity
COMPUTER NETWORKS CS610 Lecture-16 Hammad Khalid Khan.
Graph Theory: Euler Graphs and Digraphs
Graph Theory: Degree Sequences and Digraphs
Data Communication: Routing algorithms
Packet communication Johan Lukkien
CS60002: Distributed Systems
Virtual LAN (VLAN).
Tutorial - 1 Course: CS60045 Pallab Dasgupta Professor,
Presentation transcript:

Deadlock-free Packet Switching CS60002: Distributed Systems Pallab Dasgupta Professor, Dept. of Computer Sc. & Engg., Indian Institute of Technology Kharagpur INDIAN INSTITUTE OF TECHNOLOGY KHARAGPUR

Store and forward deadlock u v Buffer-size = 5 Node s sending 5 packets to v through t Node v sending 5 packets to s through u INDIAN INSTITUTE OF TECHNOLOGY KHARAGPUR

Model The network is a graph G = (V, E) Each node has B buffers Moves: Generation. A node u creates a new packet p and places it in an empty buffer in u. Node u is the source of p. Forwarding. A packet p is forwarded from a node u to an empty buffer in the next node w on its route. Consumption. A packet p occupying a buffer in its destination node is removed from the buffer. INDIAN INSTITUTE OF TECHNOLOGY KHARAGPUR

Requirements The packet switching controller has the following requirements: The consumption of a packet (at its destination) is always allowed. The generation of a packet in a node where all buffers are empty is always allowed. The controller uses only local information, that is, whether a packet can be accepted in a node u depends only on information known to u or contained in the packet INDIAN INSTITUTE OF TECHNOLOGY KHARAGPUR

Solutions Structured solutions Buffer-graph based schemes The destination scheme The hops-so-far scheme Acyclic orientation based scheme Unstructured solutions Forward count and backward count schemes Forward state and backward state schemes INDIAN INSTITUTE OF TECHNOLOGY KHARAGPUR

Buffer Graph A buffer graph (for, G, B) is a directed graph BG on the buffers of the network, such that BG is acyclic (contains no directed cycle); bc is an edge of BG if b and c are buffers in the same node, or buffers in two nodes connected by a channel in G; and for each path   P there exists a path in BG whose image is . P is the collection of all paths followed by the packets – this collection is determined by the routing algorithm. INDIAN INSTITUTE OF TECHNOLOGY KHARAGPUR

Suitable buffer and guaranteed path Let p be a packet in node u with destination v. A buffer b in u is suitable for p if there is a path in BG from b to a buffer c in v, whose image is a path that p can follow in G. One such path in BG will be designated as the guaranteed path and nb(p, b) denotes the next buffer on the guaranteed path. For each newly generated packet p in u there exists a designated suitable buffer, fb(p) in u. INDIAN INSTITUTE OF TECHNOLOGY KHARAGPUR

The buffer-graph controller A buffer-graph controller decides how packets are routed through the BG. Requirements The generation of a packet p in u is allowed iff the buffer fb(p) is free. If the packet is generated it is placed in this buffer. The forwarding of a packet p from a buffer in u to a buffer in w is allowed iff nb(p, b) (in w) is free. If the forwarding takes place p is placed in nb(p, b). The buffer-graph controller is a deadlock-free controller. INDIAN INSTITUTE OF TECHNOLOGY KHARAGPUR

The Destination Scheme Uses N buffers in each node u, with a buffer bu[v] for each possible destination v It is assumed that the routing algorithm forwards all packets with destination v via a directed tree Tv rooted towards v. The buffer graph is defined by BG = (B, E), where bu[v1]bw[v2]  E iff v1 = v2 and uw is an edge of Tv1. There exists a deadlock-free controller for arbitrary connected networks that uses N buffers in each node and allows packets to be routed via arbitrarily chosen sink trees INDIAN INSTITUTE OF TECHNOLOGY KHARAGPUR

The Hops-so-far Scheme Node u contains k + 1 buffers bu[0], …, bu[k]. It is assumed that each packet contains a hop-count indicating how many hops the packet has made from its source The buffer graph is defined by BG = (B, E), where bu[i]bw[j]  E iff i + 1 = j and uw is an edge of the network. There exists a deadlock-free controller for arbitrary connected networks that uses D+1 buffers in each node (where D is the diameter of the network), and requires packets to be sent via minimum-hop paths. INDIAN INSTITUTE OF TECHNOLOGY KHARAGPUR

Acyclic Orientation based Scheme Goal: To use only a few buffers per node An acyclic orientation of G is a directed acyclic graph obtained by directing all edges of G A sequence G1, …, GB of acyclic orientations of G is an acyclic orientation cover of size B for the collection P of paths if each path   P can be written as a concatenation of B paths 1, …, B, where I is a path in Gi. A packet is always generated in node u in buffer bu[1] A packet in buffer bu[i] that must be forwarded to node w is placed in buffer bw[i] if the edge between u and w is directed towards w in Gi, and to bw[i + 1] if the edge is directed towards u in Gi. If an acyclic orientation cover for P of size B exists, then there exists a deadlock-free controller using only B buffers in each node. INDIAN INSTITUTE OF TECHNOLOGY KHARAGPUR

Forward and Backward-count Controllers Forward-count Controller: For a packet p, let sp be the number of hops it still has to make to its destination (0  sp  k) For a node u, fu denotes the number of free buffers in u (0  fu  B) The controller accepts a packet p in node u iff sp < fu. If B > k then the above controller is a deadlock-free controller Backward-count Controller: For a packet p, let tp be the number of hops it has made from its source The controller accepts a packet p in node u iff tp > k – fu. INDIAN INSTITUTE OF TECHNOLOGY KHARAGPUR

Forward and Backward-state Controllers Forward-state Controller: For a node u define (as a function of the state of u) the state vector as (j0, …, jk), where js is the number of packets p in u with sp = s. The controller accepts a packet p in node u with state (j0, …, jk) iff: If B > k then the above controller is a deadlock-free controller Backward-state Controller: Define the state vector as (i0, …, ik), where it is the number of packets in node u that have made t hops. The controller accepts a packet p in node u with state (i0, …, ik) iff: INDIAN INSTITUTE OF TECHNOLOGY KHARAGPUR

Forward-state versus Forward-count Forward-state controller is more liberal than the forward-count controller Every move allowed by the forward-count controller is also allowed by the forward-state controller INDIAN INSTITUTE OF TECHNOLOGY KHARAGPUR