Customizable Routing with Declarative Queries Boon Thau Loo 1 Collaborators: Joseph M. Hellerstein 1,2, Karthik Lakshminarayanan 1, Raghu Ramakrishnan.

Slides:



Advertisements
Similar presentations
Declarative Networking: Language, Execution and Optimization Boon Thau Loo 1, Tyson Condie 1, Minos Garofalakis 2, David E. Gay 2, Joseph M. Hellerstein.
Advertisements

Declarative Networking: Extensible Networks with Declarative Queries Boon Thau Loo University of California, Berkeley.
Implementing Declarative Overlays Boon Thau Loo 1 Tyson Condie 1, Joseph M. Hellerstein 1,2, Petros Maniatis 2, Timothy Roscoe 2, Ion Stoica 1 1 University.
Declarative Networking Mothy Joint work with Boon Thau Loo, Tyson Condie, Joseph M. Hellerstein, Petros Maniatis, Ion Stoica Intel Research and U.C. Berkeley.
1 Praveen K. Muthuswamy Electrical Computer and Systems Engineering Rensselaer Polytechnic Institute In collaboration with Koushik Kar, Aparna Gupta (RPI)
Quality-of-Service Routing in IP Networks Donna Ghosh, Venkatesh Sarangan, and Raj Acharya IEEE TRANSACTIONS ON MULTIMEDIA JUNE 2001.
1 Routing Protocols I. 2 Routing Recall: There are two parts to routing IP packets: 1. How to pass a packet from an input interface to the output interface.
The Design and Implementation of Declarative Networks Boon Thau Loo University of Pennsylvania, University of California-Berkeley * *This dissertation.
Implementing declarative overlays Boom Thau Loo Tyson Condie Joseph M. Hellerstein Petros Maniatis Timothy Roscoe Ion Stoica.
Implementing Declarative Overlays From two talks by: Boon Thau Loo 1 Tyson Condie 1, Joseph M. Hellerstein 1,2, Petros Maniatis 2, Timothy Roscoe 2, Ion.
Berkeley dsn declarative sensor networks problem David Chu, Lucian Popa, Arsalan Tavakoli, Joe Hellerstein approach related dsn architecture status  B.
BY PAYEL BANDYOPADYAY WHAT AM I GOING TO DEAL ABOUT? WHAT IS AN AD-HOC NETWORK? That doesn't depend on any infrastructure (eg. Access points, routers)
Cisco S3 C5 Routing Protocols. Network Design Characteristics Reliable – provides mechanisms for error detection and correction Connectivity – incorporate.
CAST i CAST iCAST / TRUST Collaboration Presenter : David Chu 2007 June 5 A Declarative Sensor Network Architecture.
Towards a Declarative Language and System for Secure Networking Martín Abadi 1,2, Boon Thau Loo 3 1 Microsoft Research Silicon Valley, 2 UC Santa Cruz,
Designing a New Routing Simulator for DiffServ MPLS Networks Peng Zhang Zhansong Ma Raimo Kantola {pgzhang, zhansong,
Declarative Techniques for Secure Network Routing DIMACS Workshop on Secure Routing, 10 March 2010 This work is partially supported by NSF grant s IIS ,
Network Layer Routing Issues (I). Infrastructure vs. multi-hop Infrastructure networks: Infrastructure networks: ◦ One or several Access-Points (AP) connected.
Fundamentals of Computer Networks ECE 478/578 Lecture #18: Policy-Based Routing Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
The Architecture of PIER: an Internet-Scale Query Processor (PIER = Peer-to-peer Information Exchange and Retrieval) Ryan Huebsch Brent Chun, Joseph M.
What is “Routing”? Routing algorithm that part of the network layer responsible for deciding on which output line to transmit an incoming packet Adaptive.
What is “Routing”? Routing algorithm that part of the network layer responsible for deciding on which output line to transmit an incoming packet Adaptive.
Multicasting in Mobile Ad-Hoc Networks (MANET)
1 LINK STATE PROTOCOLS (contents) Disadvantages of the distance vector protocols Link state protocols Why is a link state protocol better?
An Assessment of Mobile Ad-Hoc Network (MANET) Issues Jerry Usery CS 526 May 12 th, 2008.
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 22 Introduction to Computer Networks.
1IMIC, 8/30/99 Constraint-Based Unicast and Multicast: Practical Issues Bala Rajagopalan NEC C&C Research Labs Princeton, NJ
1 Relates to Lab 4. This module covers link state routing and the Open Shortest Path First (OSPF) routing protocol. Dynamic Routing Protocols II OSPF.
Internet Networking Spring 2002
1 Routing as a Service Karthik Lakshminarayanan (with Ion Stoica and Scott Shenker) Sahara/i3 retreat, January 2004.
Spring Routing & Switching Umar Kalim Dept. of Communication Systems Engineering 06/04/2007.
Or, Providing Scalable, Decentralized Location and Routing Network Services Tapestry: Fault-tolerant Wide-area Application Infrastructure Motivation and.
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 21 Introduction to Computer Networks.
P2p, Fall 06 1 Querying the Internet with PIER (PIER = Peer-to-peer Information Exchange and Retrieval) VLDB 2003 Ryan Huebsch, Joe Hellerstein, Nick Lanham,
1 Dynamic Routing Protocols I RIP Relates to Lab 4. The first module on dynamic routing protocols. This module provides an overview of routing, introduces.
On Self Adaptive Routing in Dynamic Environments -- A probabilistic routing scheme Haiyong Xie, Lili Qiu, Yang Richard Yang and Yin Yale, MR and.
NETWORK LAYER (2) T.Najah AlSubaie Kingdom of Saudi Arabia Prince Norah bint Abdul Rahman University College of Computer Since and Information System NET331.
Chabot College Chapter 5 – Routing Protocols: IGRP Review Questions Semester IIIELEC Semester III ELEC
Count to infinity problem
Routing and Routing Protocols Routing Protocols Overview.
Declarative Routing: Extensible Routing with Declarative Queries UC Berkeley: Boon Thau Loo, Joseph M. Hellerstein, Ion Stoica. Intel Research: Joseph.
“Intra-Network Routing Scheme using Mobile Agents” by Ajay L. Thakur.
PIER & PHI Overview of Challenges & Opportunities Ryan Huebsch † Joe Hellerstein † °, Boon Thau Loo †, Sam Mardanbeigi †, Scott Shenker †‡, Ion Stoica.
Network Layer4-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Chapter 5 Network Layer.
Copyright 1999, S.D. Personick. All Rights Reserved. Telecommunications Networking II Lecture 34 Routing Algorithms Ref: Tanenbaum pp ;
SR: A Cross-Layer Routing in Wireless Ad Hoc Sensor Networks Zhen Jiang Department of Computer Science West Chester University West Chester, PA 19335,
Routing Algorithms and IP Addressing Routing Algorithms must be ▪ Correctness ▪ Simplicity ▪ Robustness ▪ Stability ▪ Fairness ▪ Optimality.
November 4, 2003Applied Research Laboratory, Washington University in St. Louis APOC 2003 Wuhan, China Cost Efficient Routing in Ad Hoc Mobile Wireless.
Efficient Resource Allocation for Wireless Multicast De-Nian Yang, Member, IEEE Ming-Syan Chen, Fellow, IEEE IEEE Transactions on Mobile Computing, April.
Declarative Routing: Extensible Routing with Declarative Queries Boon Thau Loo 1 Joseph M. Hellerstein 1,2, Ion Stoica 1, Raghu Ramakrishnan 3, 1 University.
UNIT 2 LESSON 8 CS PRINCIPLES. UNIT 2 LESSON 8 OBJECTIVES Students will be able to: Describe how routers develop routing tables to determine how to send.
1 Chapter 4: Internetworking (IP Routing) Dr. Rocky K. C. Chang 16 March 2004.
CS440 Computer Networks 1 Link State Routing and OSPF Neil Tang 10/31/2008.
1 Traffic Engineering By Kavitha Ganapa. 2 Introduction Traffic engineering is concerned with the issue of performance evaluation and optimization of.
Border Gateway Protocol BGP-4 BGP environment How BGP works BGP information BGP administration.
Routing Semester 2, Chapter 11. Routing Routing Basics Distance Vector Routing Link-State Routing Comparisons of Routing Protocols.
ROUTING ON THE INTERNET COSC Jun-16. Routing Protocols  routers receive and forward packets  make decisions based on knowledge of topology.
1 Relates to Lab 4. This module covers link state routing and the Open Shortest Path First (OSPF) routing protocol. Dynamic Routing Protocols II OSPF.
Declarative Networking: Language, Execution and Optimization
Working at a Small-to-Medium Business or ISP – Chapter 6
A Study of Group-Tree Matching in Large Scale Group Communications
COMP 3270 Computer Networks
Intra-Domain Routing Jacob Strauss September 14, 2006.
任課教授:陳朝鈞 教授 學生:王志嘉、馬敏修
Declarative Routing: Extensible Routing with Declarative Queries
Declarative Networking
COS 461: Computer Networks Spring 2014
Working at a Small-to-Medium Business or ISP – Chapter 6
OSPF Protocol.
Presentation transcript:

Customizable Routing with Declarative Queries Boon Thau Loo 1 Collaborators: Joseph M. Hellerstein 1,2, Karthik Lakshminarayanan 1, Raghu Ramakrishnan 3, Ion Stoica 1 1 University of California, Berkeley, 2 Intel Research Berkeley, 3 University of Wisconsin at Madison

Introduction Emerging topic in networking community. Why is customizing routing important? Flexibility: support different application requirements. Evolvability of routing infrastructure. Experimentation with new routing protocols. Some existing solutions: Overlay networks (multicast, RON). Active networks. Recent ideas: Routing as a Service, NIRA. Use of declarative queries to express routes Achieves a sweet-spot between expressiveness and security. Runtime Query Optimization

System Model Routing Infrastructure IP routers or overlay nodes Directed graph, each link associated with a set of parameters (loss rate, available bandwidth, delay, etc) General-purpose Query Processor Co-located with each routing infrastructure node. Local routing information accessible by query processor. n1 n2 End-host A End-host B Query is processed in-network. Result of Query: Entire path or establishment of state in routing infrastructure from source to destination. Route Query End-hosts express route request as a declarative query (predicated by source(s), destination(s), duration, etc).

The Basics: Program Syntax Datalog: Declarative recursive query language for graph topologies. First Example: Network Reachability R1: path(S,D,P,C) :- link(S,D,C), P=concatPath(link(S,D,C), nil). R2: path(S,D,P,C) :- link(S,Z,C 1 ), path(Z,D,P 2,C 2 ), C=C 1 +C 2, P=concatPath(link(S,Z,C 1 ),P 2 ). Query: path(M,N,P,C) SZD L(S,Z) p(Z,D) p(S,Z), p(S,D)

The Basics: Plan Generation R1: reachable(S,D) :- link(S,D) R2: reachable(S,D) :- link(S,Z), reachable(Z,D) Query: reachable(M,N) Ship tuples to table.field R1 R2

Query Execution R1: reachable(S,D) :- link(S,D) R2: reachable(S,D) :- link(S,Z), reachable(Z,D) Query: reachable(M,N) 0 th Iteration a c de f g h r(a,b), r(a,c) l(c,e) l(e,f) l(g,f) l(d,f) l(f,h) b i r(a,g), r(a,d), r(b,e) l(h,i) l(a,b), l(a,c) r(c,e) r(e,f) r(f,h) r(d,f) r(h,i) r(g,f) l(a,g), l(a,d), l(b,e)

Query Execution a c de f g h r(a,b), r(a,c) r(c,e) r(b,d), r(b,e), r(b,g) r(e,f) l’(a,c)l’(a,b) l’(b,g) l’(d,f) r(g,f) l’(b,d) l’(f,h) r(d,f) l’(b,e) l’(e,f) r(f,h) l’(g,f) b i r(h,i) l’(h,i) l’(c,e) R1: reachable(S,D) :- link(S,D) R2: reachable(S,D) :- link(S,Z), reachable(Z,D) Query: reachable(M,N) 1 st Iteration

Query Execution a c de f g h r(a,b), r(a,c), r(a,e), r(a,d), r(a,g) r(c,e), r(c,f) r(b,d), r(b,e), r(b,g), r(b,f) r(e,f), r(e,h) r(g,f), r(g,h) r(d,f), r(d,h) r(f,h), r(f,i) b i r(h,i) l’(b,g) l’(b,d) l’(f,h) l’(d,f), l’(g,f), l’(e,f) l’(h,i) l’(b,e), l’(c,e) l’(a,c) l’(a,b) R1: reachable(S,D) :- link(S,D) R2: reachable(S,D) :- link(S,Z), reachable(Z,D) Query: reachable(M,N) 2 nd Iteration

Path or Distance Vector Resembles Path and Distance Vector Protocols Computation begins with initial reachable set and shipping it to all neighbors. (DV1) Neighbors update reachable set with its own neighborhood set, and forward resulting reachable set to neighbors. (DV2) DV1: path(S,D,D,C) :- link(S,D,C) DV2: path(S,D,Z,C) :- link(S,Z,C 1 ), path(Z,D,W,C 2 ), C=C 1 +C 2 DV3: shortestLength(S,D,min ) :- path(S,D,Z,C) DV4: nextHop(S,D,Z,C) :- nextHop(S,D,Z,C), shortestLength(S,D,C) Query: nextHop(S,D,Z,C)

DV with Split Horizon DV1: path(S,D,D,C) :- link(S,D,C) DV2: path(S,D,Z,C) :- link(S,Z,C 1 ), path(Z,D,W,C 2 ), C=C 1 +C 2, W<>S DV3: shortestLength(S,D,min ) :- path(S,D,Z,C) DV4: nextHop(S,D,Z,C) :- nextHop(S,D,Z,C), shortestLength(S,D,C) Query: nextHop(S,D,Z,C)

Challenges Expressiveness Efficiency Stability and Robustness Security

Expressiveness Best-Path routing Shortest Path Shortest-k-paths Least-loaded path Disjoint-Paths greedy routing Disjoint-k-paths (edge and node disjoint) Dynamic Source Routing (DSR) Policy Decision: Paths that include/exclude certain nodes. Do not carry/trust traffic from certain nodes.

Single-Query Optimizations Limited Sources and/or Destinations: Magic Sets Rewrite Few Sources and Destinations: Left-Right Recursion Rewrite + Magic Sets R1: reachable(S,D) :- magicSource(S), link(S,D) R2: reachable(S,D) :- reachable(S,Z), link(Z,D) R3: magicSource(b) R4: magicSource(e) Query: reachable(M,N) Pruning unnecessary paths: Aggregate Selections

Initial Simulation Results Optimal query plan is affected by the number of nodes participating in the same query. Right-linear recursion is optimal for all-pairs. Left-linear recursion lowers communication overhead for few sources and destinations. Benefits of sharing depends on the percentage of destination nodes in queries. Other factors include: Presence of different queries with correlated metrics. Network Topology

Thank You!! For more details: Customizable Routing with Declarative Queries. Boon Thau Loo, Joseph M. Hellerstein, Ion Stoica. HotNets-III. Routing as a Service. Karthik Lakshminarayanan, Ion Stoica, Scott Shenker. UCB Technical Report No. UCB/CSD , Jan Analyzing P2P Overlays with Recursive Queries. Boon Thau Loo, Ryan Huebsch, Joseph M. Hellerstein, Timothy Roscoe, Ion Stoica. Intel Research Technical Report, IRB-TR , Nov 2003.