Towards a Universal Stream Processing System Robert Soulé Cornell University

Size: px
Start display at page:

Download "Towards a Universal Stream Processing System Robert Soulé Cornell University"

Transcription

1 1 Towards a Universal Stream Processing System Robert Soulé Cornell University

2 2 Data Crisis 2.5 quintillion bytes every day 90% of the world s data was created in the last 2 years

3 3 How Big is Your Data? This talk will focus on infinite data Biggest data set that you can have: kb <... < PB < EB <

4 4 Sources of Infinite Data

5 4 Sources of Infinite Data

6 5 Challenges at All Levels of the Software Stack Application Level Operating System Cloud Infrastructure Virtual Machine Systems challenges at all levels Leverage formal techniques from programming languages to build correct and efficient systems This talk will focus on two levels Network Software

7 6 Step 1 Focus on Application Level Application Level Operating System How to simplify the development of languages Cloud Infrastructure Virtual Machine Network Software

8 7 Stream Processing Process data as a sequence of computational steps Data flows in as a stream Each processing step is an operator Natural for processing when data does not fit in memory MapReduce is a special case of stream processing Input data set is finite There are only four operators map/split/merge/reduce

9 8 Languages are Crucial To Streaming Developers are already familiar with a particular syntax Wall Street IT already knows SQL, so CQL is natural Compilers can statically enforce safety properties Video playback needs fixed data transfer rate, StreamIt ensures it Languages hide system complexity Sawzall expresses business logic, MapReduce handles distribution

10 9 Developing Languages Is Too Much Work CQL StreamIt Sawzall Optimizer Optimizer Optimizer Runtime Runtime Runtime

11 9 Developing Languages Is Too Much Work CQL StreamIt Design for an application domain Sawzall Optimizer Optimizer Optimizer Runtime Runtime Runtime

12 9 Developing Languages Is Too Much Work CQL Apply optimizations Optimizer StreamIt Optimizer Design for an application domain Sawzall Optimizer Runtime Runtime Runtime

13 9 Developing Languages Is Too Much Work CQL Apply optimizations Optimizer Runtime StreamIt Optimizer Runtime Design for an application domain Sawzall Optimizer Build custom runtime Runtime

14 9 Developing Languages Is Too Much Work CQL Apply optimizations Optimizer Runtime StreamIt Optimizer Runtime Design for an application domain Sawzall Optimizer Build custom runtime Runtime

15 10 No Prior Intermediate Language For Streaming An IL separates language front-ends from optimizers and target Allows languages to reuse optimizations Simplifies target for language translation Traditional examples: UNCOL, CLI, JVM There does not exist an IL for streaming Optimizations are different Need to reason across machines

16 11 River: an IL for Streaming CQL StreamIt Sawzall River Optimizer System S Supports diverse streaming languages Enables critical streaming optimizations Encourages reuse and portability

17 12 IL Needs To Be Correct Hour-glass interface Target of all languages and optimizations Start with a formal model Lightweight calculus and semantics Prove correctness of translations Prove correctness of optimizations

18 13 Elements of a Streaming App State Queue Operator Queue

19 14 Elements of a Streaming App

20 15 Elements of a Streaming App Not all operators have state

21 16 Elements of a Streaming App Operators may share state

22 17 Calculus Syntax $total trades volume Sum (volume, $total) Sum(trades, $total)

23 18 Function Environment $total trades volume Sum F: The function implementations

24 19 Queue Store $total trades volume Sum Q: The contents of the queues

25 20 Variable Store $total trades volume Sum V: The contents of the variables

26 21 Operational Semantics $total trades volume Sum F <Q, V> <Q, V >

27 22 Complete Calculus Syntax: P b ::= out in op Brooklet program out ::= output q ; Output declaration in ::= input q ; Input declaration op ::= ( q, v ) f ( q, v ); Operator q ::= id Queue identifier v ::= $ id Variable identifier f ::= id Function identifier Example: IBM market maker. output result; input bids, asks; (ibmbids) SelectIBM(bids); (ibmasks) SelectIBM(asks); ($lastask) Window(ibmAsks); (ibmsales) SaleJoin(ibmBids,$lastAsk); (result,$cnt) Count(ibmSales,$cnt); Semantics: F b `hv,qi d, b = Q(q i ) op = (_, _) f(q, v); (b 0, d 0 )=F b (f)(d, i, V (v)) V 0 = updatev (op,v,d 0 ) Q 0 = updateq(op,q,q i, b 0 ) F b `hv,qi op = (_, v)!hv 0,Q 0 i f(_, _); updatev (op, V, d) =[v 7! d]v op = (q, _) f(_, _); d f,b f = Q(q f ) Q 0 =[q f 7! b f ]Q Q 00 =[8q i 2q : q i 7! Q(q i ),b i ]Q 0 updateq(op, Q, q f, b) =Q 00!hV 0,Q 0 i (E-FireQueue) (E-UpdateV) (E-UpdateQ)

28 23 River as the Target For Diverse Languages CQL StreamIt Sawzall River Optimizer System S We built Source-to-River translators for 3 languages

29 24 CQL, StreamIt, Sawzall: One Translation Approach Expose graph topology Expose implicit and explicit state Wrap original operators in higher-order functions <, > Functions Queues Variables

30 24 CQL, StreamIt, Sawzall: One Translation Approach Expose graph topology Make queues explicit Expose implicit and explicit state Wrap original operators in higher-order functions <, > Functions Queues Variables

31 24 CQL, StreamIt, Sawzall: One Translation Approach Expose graph topology Make queues explicit Expose implicit and explicit state Wrap original operators in higher-order functions Make state explicit <, > Functions Queues Variables

32 24 CQL, StreamIt, Sawzall: One Translation Approach Re-use operator implementations Expose graph topology Expose implicit and explicit state Make queues explicit Wrap original operators in higher-order functions Make state explicit <, > Functions Queues Variables

33 25 Benefits of Formalism CQL/StreamIt Input execute CQL/StreamIt Output translate translate River Input execute River Output River translations are provably correct Results under CQL and StreamIt semantics are the same as the results under River semantics after translation First formal semantics for Sawzall

34 26 River Optimizations CQL StreamIt Sawzall River System S Fusion Fission Re-ordering Decouples languages and optimizers Increases portability and reuse Optimizations are provably correct

35 27 Operator Fusion: Eliminate Queueing Delays before after Look for connected operators, whose state is not used anywhere else

36 28 Operator Fission: Process More Data in Parallel before after Split Join Look for stateless operators

37 29 Operator Reordering: Filter Data Early Filter before after Filter Look for operators whose read/write sets don t overlap

38 30 Runtime Translation CQL StreamIt Sawzall River System S Fusion Fission Re-ordering River-to-System S translator Runtime provides data-transport, process management, distribution, etc.

39 31 Immediate Benefits partition istream now join project distinct split join project range aggregate now project istream split join project rstream range aggregate select project First distributed CQL implementation for free!

40 32 Evaluation 4 benchmark applications CQL Linear Road StreamIt FM Radio Sawzall Batch Web Log Analyzer CQL Continuous Web Log Analyzer + 3 optimizations Placement Fission Fusion

41 33 CQL Placement and Fusion 5 CQL Linear Road Fuse operators into 4 sets, distributed each set to a machine 4x speedup on 4 machines

42 34 Sawzall Fission Speedup of 50.32x on 64 cores across 16 machines Scales almost linearly

43 35 River Summary River calculus: Provides a formal model for reasoning about correctness River IL: Supports a diverse set of languages Supports crucial optimizations Increases portability and re-use Simplifies the development of streaming languages

44 36 Step 2 Focus on the Network Level Application Level Operating System Cloud Infrastructure Virtual Machine Network Software How to simplify network management

45 37 Networking is Streaming Packets are the data streams Middleboxes, routers, and switches are operators Different set of challenges and requirements Data is unstructured Data rates are orders of magnitude faster Contention on shared resources

46 38 Recent History H1 switch switch To configure network H2 switch middlebox switch SSH to router or switch Define routing rules in DSL To process packets Route traffic to middlebox H3 H4

47 39 Network Configuration Challenges Campus network has 100s of switches Data center network has 1000s of switches Difficult to configure Difficult to verify

48 40 Software Defined Networking (SDN) H1 switch controller switch Separate the control plane from the data plane Controller software provides: H2 switch middlebox switch Centralized view of the network Rules to match and forward packets H3 H4 Methods for handling exceptions

49 41 SDNs Are A Huge Success H1 controller switch switch Embraced by vendors (Cisco, Juniper, VMWare) H2 switch middlebox switch Adopted by customers (Google, Yahoo) Dramatically simplifies routing H3 H4

50 42 Functionality Beyond Routing Accounting: track customer usage inside and outside the network Traffic Filtering: disable SSH traffic to port 22 by default Provisioning: share bandwidth fairly amongst tenants

51 43 SDNs Provide the Wrong Abstraction H1 switch controller switch What operators want: Drop all HTTP traffic that contains the pattern evil.com middlebox H2 H3 switch switch H4 What SDN provides: Match all HTTP traffic and forward it out port 4

52 44 Other SDN Problems H1 controller Hard to scale switch switch Middlebox is a bottleneck H2 switch middlebox switch Controller is a bottleneck Hard to verify Multiple pieces of software Multiple languages H3 H4 Asynchronous events

53 45 Merlin Raises Level of Abstraction Policy Language { Declaratively specify global network policy Transformer { Transforms global policies into locally enforceable policies and mediates access to resources Enforcer { Interposes on network traffic to ensure compliance

54 46 Start with a Formalism Numbers n ::= Protocol r ::= ether ip tcp... Fields f ::= src dst... Time t ::= sliding(n) Sliding tumbling(n) Tumbling Locations l ::= {host} Location l [ l Union Predicates p ::= r.f n Match location l Location & p 1 p 2 Conjunction p 1 _ p 2 Disjunction p 1 Negation Packet Set s ::= {p, t} Aggregates a ::= counts(s) Total count bytes(s) Total size average(s) Average size Expression e ::= a Aggregate e + e Sum e e Difference Policies P ::= e apple e Comparison P 1 ^ P 2 Conjunction P 1 _ P 2 Disjunction P 1 Negation Specify syntax and semantics for language and system Define what properties are enforceable EM Properties [Schneider, TISS 00] Prove properties are enforced correctly

55 47 Policy Language (bytes { eth.type ~ 0x0800 and ip.proto ~ 0x06 and tcp.dstport ~ 80 and tumbling 60s and location (h1, h2) }) < 5GB Group packets into sets by header fields or payload, time, and location Aggregate sets into scalar values Apply constraints on those values

56 { 47 Policy Language (bytes { eth.type ~ 0x0800 and ip.proto ~ 0x06 and tcp.dstport ~ 80 and tumbling 60s and location (h1, h2) }) < 5GB HTTP traffic Group packets into sets by header fields or payload, time, and location Aggregate sets into scalar values Apply constraints on those values

57 { 47 Policy Language (bytes { eth.type ~ 0x0800 and ip.proto ~ 0x06 and tcp.dstport ~ 80 and tumbling 60s and location (h1, h2) }) < 5GB { HTTP traffic in the last minute Group packets into sets by header fields or payload, time, and location Aggregate sets into scalar values Apply constraints on those values

58 { { 47 Policy Language (bytes { eth.type ~ 0x0800 and ip.proto ~ 0x06 and tcp.dstport ~ 80 and tumbling 60s and location (h1, h2) }) < 5GB { HTTP traffic in the last minute on hosts H1 and H2 Group packets into sets by header fields or payload, time, and location Aggregate sets into scalar values Apply constraints on those values

59 48 Policy Language (bytes { eth.type ~ 0x0800 and ip.proto ~ 0x06 and tcp.dstport ~ 80 and tumbling 60s and location (h1, h2) }) < 5GB Constraints limit access to shared resources (e.g., bandwidth) Only exposed mutable state is partition-able

60 49 Transformers Distribute Policies Policy Transformer Assign variable to make state explicit: x < 5GB Add additional variables to transform global to local: h1 + h2 < 5GB Allocate resources: h1 + h2 < 5GB, h1 < 2.5G, h2 < 2.5G H1 Policy H2 Policy Verify allocations with Z3 constraint solver

61 50 Empower Tenants to Refine Policies H2 H1 h1 < 1G, switch h2 < 4G? switch controller middlebox switch switch Original allocations might not be optimal Tenants may want to modify policies Re-negotiation allows tenants to make modifications New policy must imply the old H3 H4 Re-negotiation can happen hierarchically or in peer-to-peer fashion

62 51 Scalable Enforcement Applications Every end-host runs an interpreter Merlin Network traffic OS Kernel Hypervisor Hardware Rate-limits or drops packets Implements a distributed reference monitor Restricted language interface means kernel extension is safe Overall correctness theorem proves that global policy is enforced

63 52 Merlin is Expressive Policy Description Accounting Track in- and out- of network usage Trading Tiered Isolation Swap aggregate bandwidth between tenants Provide different bandwidth caps based on usage Ensure data from tenants travels different routes

64 53 Merlin Allocation is Fast Time Standard Deviation 99μs 19μs Average time to update allocations with peer-to-peer scheme

65 54 Merlin Has Low Overhead 4 Throughput in GB/sec Accounting Trading Tiered Isolation Saturation point Most enforcers can saturate 1Gb link

66 55 Scalability Experiment H1 controller Merlin H2 switch switch middlebox switch switch Implement DPI with Merlin and middlebox with Click modular router Measure packet latency as network load increases H3 H4

67 56 Merlin Reduces Complexity Middlebox Merlin 60 lines of C++ code 1 line of Merlin policy 1 line Click script 5 additional routing rules

68 57 Merlin Scales with Network Traffic Average latency per echo (ms) Middlebox Merlin Throughput (Mbits/s)

69 58 Next Steps Algorithms for provisioning resources and placing operators Variations on multi-commodity flow, etc. Specialization for particular application domains Language support for large-scale machine learning Deploy on different architectures Target GPUs for video/graphics processing

70 59 Future Work Application Level Operating System Cloud Infrastructure Virtual Machine Network Software Distributed systems of all kinds at all layers of the stack Particular focus on: Data processing and storage Network management Integration across layers Language support for simplifying system development

71 60 Contributions Data Stream Processing SQL to Streaming [VLDB 10] Brooklet Calculus [ESOP 10] Catalog of Optimizations [ACM CSUR] River IL [DEBS 12] Distributed state in streaming [DEBS 12] Dynamic Optimizations [DEBS 13] SPL language [IBM JRD 13] Content Distribution NaKika [NSDI 07] Distributed Storage PADS [NSDI 09] Software Defined Networks Merlin [TR 13]

72 61 Summary Systems and languages for processing big data are critical Scale and performance demands will continue to increase Now is an exciting time to work in to work in networking In the middle of a revolution in networking Use formal models to build systems that are provably correct and have high-performance

73 62

74 63

Towards a Universal Stream Processing Platform

Towards a Universal Stream Processing Platform 1 Towards a Universal Stream Processing Platform Robert Soulé, Martin Hirzel, Robert Grimm, Buğra Gedik New York University and IBM Research 2 Streaming Is Everywhere 3 Streaming Needs Languages Developers

More information

Language Support for Stream. Processing. Robert Soulé

Language Support for Stream. Processing. Robert Soulé Language Support for Stream Processing Robert Soulé Introduction Proposal Work Plan Outline Formalism Translators & Abstractions Optimizations Related Work Conclusion 2 Introduction Stream processing is

More information

Scalable Network Management with Merlin

Scalable Network Management with Merlin Scalable Network Management with Merlin Robert Soulé Shrutarshi Basu Emin Gün Sirer Nate Foster Cornell University {soule,basus,egs,jnfoster}@cs.cornell.edu Abstract This paper presents the Merlin network

More information

A Universal Calculus for Stream Processing Languages (Extended)

A Universal Calculus for Stream Processing Languages (Extended) A Universal Calculus for Stream Processing Languages (Extended) Robert Soulé 1, Martin Hirzel 2, Robert Grimm 1, Buğra Gedik 2, Henrique Andrade 2, Vibhore Kumar 2, and Kun-Lung Wu 2 1 New York University.

More information

Professor Yashar Ganjali Department of Computer Science University of Toronto

Professor Yashar Ganjali Department of Computer Science University of Toronto Professor Yashar Ganjali Department of Computer Science University of Toronto yganjali@cs.toronto.edu http://www.cs.toronto.edu/~yganjali Some slides courtesy of J. Rexford (Princeton), N. Foster (Cornell)

More information

NaaS Network-as-a-Service in the Cloud

NaaS Network-as-a-Service in the Cloud NaaS Network-as-a-Service in the Cloud joint work with Matteo Migliavacca, Peter Pietzuch, and Alexander L. Wolf costa@imperial.ac.uk Motivation Mismatch between app. abstractions & network How the programmers

More information

River: an intermediate language for stream processing

River: an intermediate language for stream processing SOFTWARE: PRACTICE AND EXPERIENCE Softw. Pract. Exper. (2015) Published online in Wiley Online Library (wileyonlinelibrary.com)..2338 River: an intermediate language for stream processing Robert Soulé

More information

Network Programming Languages. Nate Foster

Network Programming Languages. Nate Foster Network Programming Languages Nate Foster We are at the start of a revolution! Network architectures are being opened up giving programmers the freedom to tailor their behavior to suit applications!

More information

VXLAN Overview: Cisco Nexus 9000 Series Switches

VXLAN Overview: Cisco Nexus 9000 Series Switches White Paper VXLAN Overview: Cisco Nexus 9000 Series Switches What You Will Learn Traditional network segmentation has been provided by VLANs that are standardized under the IEEE 802.1Q group. VLANs provide

More information

IX: A Protected Dataplane Operating System for High Throughput and Low Latency

IX: A Protected Dataplane Operating System for High Throughput and Low Latency IX: A Protected Dataplane Operating System for High Throughput and Low Latency Adam Belay et al. Proc. of the 11th USENIX Symp. on OSDI, pp. 49-65, 2014. Presented by Han Zhang & Zaina Hamid Challenges

More information

Software-Defined Networking (SDN) Overview

Software-Defined Networking (SDN) Overview Reti di Telecomunicazione a.y. 2015-2016 Software-Defined Networking (SDN) Overview Ing. Luca Davoli Ph.D. Student Network Security (NetSec) Laboratory davoli@ce.unipr.it Luca Davoli davoli@ce.unipr.it

More information

Thomas Lin, Naif Tarafdar, Byungchul Park, Paul Chow, and Alberto Leon-Garcia

Thomas Lin, Naif Tarafdar, Byungchul Park, Paul Chow, and Alberto Leon-Garcia Thomas Lin, Naif Tarafdar, Byungchul Park, Paul Chow, and Alberto Leon-Garcia The Edward S. Rogers Sr. Department of Electrical and Computer Engineering University of Toronto, ON, Canada Motivation: IoT

More information

Forwarding Architecture

Forwarding Architecture Forwarding Architecture Brighten Godfrey CS 538 February 14 2018 slides 2010-2018 by Brighten Godfrey unless otherwise noted Building a fast router Partridge: 50 Gb/sec router A fast IP router well, fast

More information

Toward a Reliable Data Transport Architecture for Optical Burst-Switched Networks

Toward a Reliable Data Transport Architecture for Optical Burst-Switched Networks Toward a Reliable Data Transport Architecture for Optical Burst-Switched Networks Dr. Vinod Vokkarane Assistant Professor, Computer and Information Science Co-Director, Advanced Computer Networks Lab University

More information

Data Center Virtualization: VirtualWire

Data Center Virtualization: VirtualWire Data Center Virtualization: VirtualWire Hakim Weatherspoon Assistant Professor, Dept of Computer Science CS 5413: High Performance Systems and Networking November 21, 2014 Slides from USENIX Workshop on

More information

The Convergence of Storage and Server Virtualization Solarflare Communications, Inc.

The Convergence of Storage and Server Virtualization Solarflare Communications, Inc. The Convergence of Storage and Server Virtualization 2007 Solarflare Communications, Inc. About Solarflare Communications Privately-held, fabless semiconductor company. Founded 2001 Top tier investors:

More information

Overview Computer Networking What is QoS? Queuing discipline and scheduling. Traffic Enforcement. Integrated services

Overview Computer Networking What is QoS? Queuing discipline and scheduling. Traffic Enforcement. Integrated services Overview 15-441 15-441 Computer Networking 15-641 Lecture 19 Queue Management and Quality of Service Peter Steenkiste Fall 2016 www.cs.cmu.edu/~prs/15-441-f16 What is QoS? Queuing discipline and scheduling

More information

UNIVERSITY OF CAGLIARI

UNIVERSITY OF CAGLIARI UNIVERSITY OF CAGLIARI DIEE - Department of Electrical and Electronic Engineering Infrastrutture ed Applicazioni Avanzate nell Internet SDN: Control Plane ACK: content taken from Foundations of Modern

More information

Computer Networks. Sándor Laki ELTE-Ericsson Communication Networks Laboratory

Computer Networks. Sándor Laki ELTE-Ericsson Communication Networks Laboratory Computer Networks Sándor Laki ELTE-Ericsson Communication Networks Laboratory ELTE FI Department Of Information Systems lakis@elte.hu http://lakis.web.elte.hu Based on the slides of Laurent Vanbever. Further

More information

CAS 703 Software Design

CAS 703 Software Design Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on Software by Tao et al. (Chapters 9 and 10) (SOA) 1 Interaction

More information

Arrakis: The Operating System is the Control Plane

Arrakis: The Operating System is the Control Plane Arrakis: The Operating System is the Control Plane Simon Peter, Jialin Li, Irene Zhang, Dan Ports, Doug Woos, Arvind Krishnamurthy, Tom Anderson University of Washington Timothy Roscoe ETH Zurich Building

More information

Homework 1. Question 1 - Layering. CSCI 1680 Computer Networks Fonseca

Homework 1. Question 1 - Layering. CSCI 1680 Computer Networks Fonseca CSCI 1680 Computer Networks Fonseca Homework 1 Due: 27 September 2012, 4pm Question 1 - Layering a. Why are networked systems layered? What are the advantages of layering? Are there any disadvantages?

More information

Pocket: Elastic Ephemeral Storage for Serverless Analytics

Pocket: Elastic Ephemeral Storage for Serverless Analytics Pocket: Elastic Ephemeral Storage for Serverless Analytics Ana Klimovic*, Yawen Wang*, Patrick Stuedi +, Animesh Trivedi +, Jonas Pfefferle +, Christos Kozyrakis* *Stanford University, + IBM Research 1

More information

Challenges in Data Stream Processing

Challenges in Data Stream Processing Università degli Studi di Roma Tor Vergata Dipartimento di Ingegneria Civile e Ingegneria Informatica Challenges in Data Stream Processing Corso di Sistemi e Architetture per Big Data A.A. 2016/17 Valeria

More information

CISC 7610 Lecture 2b The beginnings of NoSQL

CISC 7610 Lecture 2b The beginnings of NoSQL CISC 7610 Lecture 2b The beginnings of NoSQL Topics: Big Data Google s infrastructure Hadoop: open google infrastructure Scaling through sharding CAP theorem Amazon s Dynamo 5 V s of big data Everyone

More information

SafeBricks: Shielding Network Functions in the Cloud

SafeBricks: Shielding Network Functions in the Cloud SafeBricks: Shielding Network Functions in the Cloud Rishabh Poddar, Chang Lan, Raluca Ada Popa, Sylvia Ratnasamy UC Berkeley Network Functions (NFs) in the cloud Clients 2 Enterprise Destination Network

More information

OPENFLOW & SOFTWARE DEFINED NETWORKING. Greg Ferro EtherealMind.com and PacketPushers.net

OPENFLOW & SOFTWARE DEFINED NETWORKING. Greg Ferro EtherealMind.com and PacketPushers.net OPENFLOW & SOFTWARE DEFINED NETWORKING Greg Ferro EtherealMind.com and PacketPushers.net 1 HUH? OPENFLOW. What is OpenFlow? From the bottom up. With big words. How OpenFlow does stuff. Then WHY we want

More information

Providing Multi-tenant Services with FPGAs: Case Study on a Key-Value Store

Providing Multi-tenant Services with FPGAs: Case Study on a Key-Value Store Zsolt István *, Gustavo Alonso, Ankit Singla Systems Group, Computer Science Dept., ETH Zürich * Now at IMDEA Software Institute, Madrid Providing Multi-tenant Services with FPGAs: Case Study on a Key-Value

More information

Networks. Distributed Systems. Philipp Kupferschmied. Universität Karlsruhe, System Architecture Group. May 6th, 2009

Networks. Distributed Systems. Philipp Kupferschmied. Universität Karlsruhe, System Architecture Group. May 6th, 2009 Networks Distributed Systems Philipp Kupferschmied Universität Karlsruhe, System Architecture Group May 6th, 2009 Philipp Kupferschmied Networks 1/ 41 1 Communication Basics Introduction Layered Communication

More information

CellSDN: Software-Defined Cellular Core networks

CellSDN: Software-Defined Cellular Core networks CellSDN: Software-Defined Cellular Core networks Xin Jin Princeton University Joint work with Li Erran Li, Laurent Vanbever, and Jennifer Rexford Cellular Core Network Architecture Base Station User Equipment

More information

Partition and Compose: Parallel Complex Event Processing. Martin Hirzel, IBM Research Tuesday, 17 July 2012 DEBS

Partition and Compose: Parallel Complex Event Processing. Martin Hirzel, IBM Research Tuesday, 17 July 2012 DEBS Partition and Compose: Parallel Complex Event Processing Martin Hirzel, IBM Research Tuesday, 17 July 2012 DEBS 1 ? CEP = Stream Processing? Event (Stream) Processing Aggregate Enrich Join Filter Parse

More information

Windows Azure Services - At Different Levels

Windows Azure Services - At Different Levels Windows Azure Windows Azure Services - At Different Levels SaaS eg : MS Office 365 Paas eg : Azure SQL Database, Azure websites, Azure Content Delivery Network (CDN), Azure BizTalk Services, and Azure

More information

Lecture 7: Data Center Networks

Lecture 7: Data Center Networks Lecture 7: Data Center Networks CSE 222A: Computer Communication Networks Alex C. Snoeren Thanks: Nick Feamster Lecture 7 Overview Project discussion Data Centers overview Fat Tree paper discussion CSE

More information

Optimising for the p690 memory system

Optimising for the p690 memory system Optimising for the p690 memory Introduction As with all performance optimisation it is important to understand what is limiting the performance of a code. The Power4 is a very powerful micro-processor

More information

Distributed File Systems II

Distributed File Systems II Distributed File Systems II To do q Very-large scale: Google FS, Hadoop FS, BigTable q Next time: Naming things GFS A radically new environment NFS, etc. Independence Small Scale Variety of workloads Cooperation

More information

arxiv: v1 [cs.ni] 4 Jul 2014

arxiv: v1 [cs.ni] 4 Jul 2014 Merlin: A Language for Provisioning Network Resources Robert Soulé * Shrutarshi Basu Parisa Jalili Marandi * Fernando Pedone * Robert Kleinberg Emin Gün Sirer Nate Foster * University of Lugano Cornell

More information

15-744: Computer Networking. Middleboxes and NFV

15-744: Computer Networking. Middleboxes and NFV 15-744: Computer Networking Middleboxes and NFV Middleboxes and NFV Overview of NFV Challenge of middleboxes Middlebox consolidation Outsourcing middlebox functionality Readings: Network Functions Virtualization

More information

Chapter 5 Network Layer: The Control Plane

Chapter 5 Network Layer: The Control Plane Chapter 5 Network Layer: The Control Plane A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you

More information

SAFEGUARDING YOUR VIRTUALIZED RESOURCES ON THE CLOUD. May 2012

SAFEGUARDING YOUR VIRTUALIZED RESOURCES ON THE CLOUD. May 2012 SAFEGUARDING YOUR VIRTUALIZED RESOURCES ON THE CLOUD May 2012 THE ECONOMICS OF THE DATA CENTER Physical Server Installed Base (Millions) Logical Server Installed Base (Millions) Complexity and Operating

More information

Software Architecture

Software Architecture Software Architecture Lecture 5 Call-Return Systems Rob Pettit George Mason University last class data flow data flow styles batch sequential pipe & filter process control! process control! looping structure

More information

Title DC Automation: It s a MARVEL!

Title DC Automation: It s a MARVEL! Title DC Automation: It s a MARVEL! Name Nikos D. Anagnostatos Position Network Consultant, Network Solutions Division Classification ISO 27001: Public Data Center Evolution 2 Space Hellas - All Rights

More information

Networking Recap Storage Intro. CSE-291 (Cloud Computing), Fall 2016 Gregory Kesden

Networking Recap Storage Intro. CSE-291 (Cloud Computing), Fall 2016 Gregory Kesden Networking Recap Storage Intro CSE-291 (Cloud Computing), Fall 2016 Gregory Kesden Networking Recap Storage Intro Long Haul/Global Networking Speed of light is limiting; Latency has a lower bound (.) Throughput

More information

Systems Infrastructure for Data Science. Web Science Group Uni Freiburg WS 2012/13

Systems Infrastructure for Data Science. Web Science Group Uni Freiburg WS 2012/13 Systems Infrastructure for Data Science Web Science Group Uni Freiburg WS 2012/13 Data Stream Processing Topics Model Issues System Issues Distributed Processing Web-Scale Streaming 3 Data Streams Continuous

More information

Performance and Scalability with Griddable.io

Performance and Scalability with Griddable.io Performance and Scalability with Griddable.io Executive summary Griddable.io is an industry-leading timeline-consistent synchronized data integration grid across a range of source and target data systems.

More information

An Implementation of Fog Computing Attributes in an IoT Environment

An Implementation of Fog Computing Attributes in an IoT Environment An Implementation of Fog Computing Attributes in an IoT Environment Ranjit Deshpande CTO K2 Inc. Introduction Ranjit Deshpande CTO K2 Inc. K2 Inc. s end-to-end IoT platform Transforms Sensor Data into

More information

Cisco CloudCenter Solution with Cisco ACI: Common Use Cases

Cisco CloudCenter Solution with Cisco ACI: Common Use Cases Cisco CloudCenter Solution with Cisco ACI: Common Use Cases Cisco ACI increases network security, automates communication policies based on business-relevant application requirements, and decreases developer

More information

Introduction to the Internet

Introduction to the Internet Introduction to the Internet CCST9015 8 th Sep, 2010 Dr. Hayden Kwok-Hay So Department of Electrical and Electronic Engineering 2 Internet in 2003 3 Internet Basics The Internet is a network that connects

More information

TALK THUNDER SOFTWARE FOR BARE METAL HIGH-PERFORMANCE SOFTWARE FOR THE MODERN DATA CENTER WITH A10 DATASHEET YOUR CHOICE OF HARDWARE

TALK THUNDER SOFTWARE FOR BARE METAL HIGH-PERFORMANCE SOFTWARE FOR THE MODERN DATA CENTER WITH A10 DATASHEET YOUR CHOICE OF HARDWARE DATASHEET THUNDER SOFTWARE FOR BARE METAL YOUR CHOICE OF HARDWARE A10 Networks application networking and security solutions for bare metal raise the bar on performance with an industryleading software

More information

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet Chapter 2 - Part 1 The TCP/IP Protocol: The Language of the Internet Protocols A protocol is a language or set of rules that two or more computers use to communicate 2 Protocol Analogy: Phone Call Parties

More information

Advanced Computer Networks. End Host Optimization

Advanced Computer Networks. End Host Optimization Oriana Riva, Department of Computer Science ETH Zürich 263 3501 00 End Host Optimization Patrick Stuedi Spring Semester 2017 1 Today End-host optimizations: NUMA-aware networking Kernel-bypass Remote Direct

More information

Mohammad Hossein Manshaei 1393

Mohammad Hossein Manshaei 1393 Mohammad Hossein Manshaei manshaei@gmail.com 1393 Voice and Video over IP Slides derived from those available on the Web site of the book Computer Networking, by Kurose and Ross, PEARSON 2 Multimedia networking:

More information

Raj Jain (Washington University in Saint Louis) Mohammed Samaka (Qatar University)

Raj Jain (Washington University in Saint Louis) Mohammed Samaka (Qatar University) APPLICATION DEPLOYMENT IN FUTURE GLOBAL MULTI-CLOUD ENVIRONMENT Raj Jain (Washington University in Saint Louis) Mohammed Samaka (Qatar University) GITMA 2015 Conference, St. Louis, June 23, 2015 These

More information

Utilizing Datacenter Networks: Centralized or Distributed Solutions?

Utilizing Datacenter Networks: Centralized or Distributed Solutions? Utilizing Datacenter Networks: Centralized or Distributed Solutions? Costin Raiciu Department of Computer Science University Politehnica of Bucharest We ve gotten used to great applications Enabling Such

More information

Fast packet processing in the cloud. Dániel Géhberger Ericsson Research

Fast packet processing in the cloud. Dániel Géhberger Ericsson Research Fast packet processing in the cloud Dániel Géhberger Ericsson Research Outline Motivation Service chains Hardware related topics, acceleration Virtualization basics Software performance and acceleration

More information

Viper: Communication-Layer Determinism and Scaling in Low-Latency Stream Processing

Viper: Communication-Layer Determinism and Scaling in Low-Latency Stream Processing Viper: Communication-Layer Determinism and Scaling in Low-Latency Stream Processing Ivan Walulya, Yiannis Nikolakopoulos, Vincenzo Gulisano Marina Papatriantafilou and Philippas Tsigas Auto-DaSP 2017 Chalmers

More information

IBM Bluemix compute capabilities IBM Corporation

IBM Bluemix compute capabilities IBM Corporation IBM Bluemix compute capabilities After you complete this section, you should understand: IBM Bluemix infrastructure compute options Bare metal servers Virtual servers IBM Bluemix Container Service IBM

More information

416 Distributed Systems. Networks review; Day 1 of 2 Jan 5 + 8, 2018

416 Distributed Systems. Networks review; Day 1 of 2 Jan 5 + 8, 2018 416 Distributed Systems Networks review; Day 1 of 2 Jan 5 + 8, 2018 1 Distributed Systems vs. Networks Low level (c/go) Run forever Support others Adversarial environment Distributed & concurrent Resources

More information

How Scalable is your SMB?

How Scalable is your SMB? How Scalable is your SMB? Mark Rabinovich Visuality Systems Ltd. What is this all about? Visuality Systems Ltd. provides SMB solutions from 1998. NQE (Embedded) is an implementation of SMB client/server

More information

FOUNDATIONS OF INTENT- BASED NETWORKING

FOUNDATIONS OF INTENT- BASED NETWORKING FOUNDATIONS OF INTENT- BASED NETWORKING Loris D Antoni Aditya Akella Aaron Gember Jacobson Network Policies Enterprise Network Cloud Network Enterprise Network 2 3 Tenant Network Policies Enterprise Network

More information

CS268: Beyond TCP Congestion Control

CS268: Beyond TCP Congestion Control TCP Problems CS68: Beyond TCP Congestion Control Ion Stoica February 9, 004 When TCP congestion control was originally designed in 1988: - Key applications: FTP, E-mail - Maximum link bandwidth: 10Mb/s

More information

Virtual Security Gateway Overview

Virtual Security Gateway Overview This chapter contains the following sections: Information About the Cisco Virtual Security Gateway, page 1 Cisco Virtual Security Gateway Configuration for the Network, page 10 Feature History for Overview,

More information

From Routing to Traffic Engineering

From Routing to Traffic Engineering 1 From Routing to Traffic Engineering Robert Soulé Advanced Networking Fall 2016 2 In the beginning B Goal: pair-wise connectivity (get packets from A to B) Approach: configure static rules in routers

More information

Lecture 17: Network Layer Addressing, Control Plane, and Routing

Lecture 17: Network Layer Addressing, Control Plane, and Routing Lecture 17: Network Layer Addressing, Control Plane, and Routing COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition:

More information

Build Cloud like Rackspace with OpenStack Ansible

Build Cloud like Rackspace with OpenStack Ansible Build Cloud like Rackspace with OpenStack Ansible https://etherpad.openstack.org/p/osa-workshop-01 Jirayut Nimsaeng DevOps & Cloud Architect 2nd Cloud OpenStack-Container Conference and Workshop 2016 Grand

More information

IQ for DNA. Interactive Query for Dynamic Network Analytics. Haoyu Song. HUAWEI TECHNOLOGIES Co., Ltd.

IQ for DNA. Interactive Query for Dynamic Network Analytics. Haoyu Song.   HUAWEI TECHNOLOGIES Co., Ltd. IQ for DNA Interactive Query for Dynamic Network Analytics Haoyu Song www.huawei.com Motivation Service Provider s pain point Lack of real-time and full visibility of networks, so the network monitoring

More information

MidoNet Scalability Report

MidoNet Scalability Report MidoNet Scalability Report MidoNet Scalability Report: Virtual Performance Equivalent to Bare Metal 1 MidoNet Scalability Report MidoNet: For virtual performance equivalent to bare metal Abstract: This

More information

Beyond 1001 Dedicated Data Service Instances

Beyond 1001 Dedicated Data Service Instances Beyond 1001 Dedicated Data Service Instances Introduction The Challenge Given: Application platform based on Cloud Foundry to serve thousands of apps Application Runtime Many platform users - who don

More information

Need For Protocol Architecture

Need For Protocol Architecture Chapter 2 CS420/520 Axel Krings Page 1 Need For Protocol Architecture E.g. File transfer Source must activate communications path or inform network of destination Source must check destination is prepared

More information

Overview SENTINET 3.1

Overview SENTINET 3.1 Overview SENTINET 3.1 Overview 1 Contents Introduction... 2 Customer Benefits... 3 Development and Test... 3 Production and Operations... 4 Architecture... 5 Technology Stack... 7 Features Summary... 7

More information

Need For Protocol Architecture

Need For Protocol Architecture Chapter 2 CS420/520 Axel Krings Page 1 Need For Protocol Architecture E.g. File transfer Source must activate communications path or inform network of destination Source must check destination is prepared

More information

CSE 123A Computer Networks

CSE 123A Computer Networks CSE 123A Computer Networks Winter 2005 Lecture 3: Protocols & Layering Alex Snoeren (standing in for Stefan Savage) Yesterday How to send data from point A to point B? January 13, 2005 CSE 123A -- Lecture

More information

precise rules that govern communication between two parties TCP/IP: the basic Internet protocols IP: Internet protocol (bottom level)

precise rules that govern communication between two parties TCP/IP: the basic Internet protocols IP: Internet protocol (bottom level) Protocols precise rules that govern communication between two parties TCP/IP: the basic Internet protocols IP: Internet protocol (bottom level) all packets shipped from network to network as IP packets

More information

Lecture 21 11/27/2017 Next Lecture: Quiz review & project meetings Streaming & Apache Kafka

Lecture 21 11/27/2017 Next Lecture: Quiz review & project meetings Streaming & Apache Kafka Lecture 21 11/27/2017 Next Lecture: Quiz review & project meetings Streaming & Apache Kafka What problem does Kafka solve? Provides a way to deliver updates about changes in state from one service to another

More information

UDP, TCP, IP multicast

UDP, TCP, IP multicast UDP, TCP, IP multicast Dan Williams In this lecture UDP (user datagram protocol) Unreliable, packet-based TCP (transmission control protocol) Reliable, connection oriented, stream-based IP multicast Process-to-Process

More information

PSOACI Tetration Overview. Mike Herbert

PSOACI Tetration Overview. Mike Herbert Tetration Overview Mike Herbert Cisco Spark How Questions? Use Cisco Spark to communicate with the speaker after the session 1. Find this session in the Cisco Live Mobile App 2. Click Join the Discussion

More information

a. Under overload, whole network collapsed iii. How do you make an efficient high-level communication mechanism? 1. Similar to using compiler instead

a. Under overload, whole network collapsed iii. How do you make an efficient high-level communication mechanism? 1. Similar to using compiler instead RPC 1. Project proposals due tonight 2. Exam on Tuesday in class a. Open note, open papers b. Nothing else (no internet, no extra papers) 3. Notes from Creator: a. VMware ESX: Carl Waldspurger i. Still

More information

Introducing the Cray XMT. Petr Konecny May 4 th 2007

Introducing the Cray XMT. Petr Konecny May 4 th 2007 Introducing the Cray XMT Petr Konecny May 4 th 2007 Agenda Origins of the Cray XMT Cray XMT system architecture Cray XT infrastructure Cray Threadstorm processor Shared memory programming model Benefits/drawbacks/solutions

More information

Data Model Considerations for Radar Systems

Data Model Considerations for Radar Systems WHITEPAPER Data Model Considerations for Radar Systems Executive Summary The market demands that today s radar systems be designed to keep up with a rapidly changing threat environment, adapt to new technologies,

More information

Cisco Application Policy Infrastructure Controller Data Center Policy Model

Cisco Application Policy Infrastructure Controller Data Center Policy Model White Paper Cisco Application Policy Infrastructure Controller Data Center Policy Model This paper examines the Cisco Application Centric Infrastructure (ACI) approach to modeling business applications

More information

An FPGA-Based Optical IOH Architecture for Embedded System

An FPGA-Based Optical IOH Architecture for Embedded System An FPGA-Based Optical IOH Architecture for Embedded System Saravana.S Assistant Professor, Bharath University, Chennai 600073, India Abstract Data traffic has tremendously increased and is still increasing

More information

Enabling High Performance Data Centre Solutions and Cloud Services Through Novel Optical DC Architectures. Dimitra Simeonidou

Enabling High Performance Data Centre Solutions and Cloud Services Through Novel Optical DC Architectures. Dimitra Simeonidou Enabling High Performance Data Centre Solutions and Cloud Services Through Novel Optical DC Architectures Dimitra Simeonidou Challenges and Drivers for DC Evolution Data centres are growing in size and

More information

NUMA-Aware Data-Transfer Measurements for Power/NVLink Multi-GPU Systems

NUMA-Aware Data-Transfer Measurements for Power/NVLink Multi-GPU Systems NUMA-Aware Data-Transfer Measurements for Power/NVLink Multi-GPU Systems Carl Pearson 1, I-Hsin Chung 2, Zehra Sura 2, Wen-Mei Hwu 1, and Jinjun Xiong 2 1 University of Illinois Urbana-Champaign, Urbana

More information

Making Network Functions Software-Defined

Making Network Functions Software-Defined Making Network Functions Software-Defined Yotam Harchol VMware Research / The Hebrew University of Jerusalem Joint work with Anat Bremler-Barr and David Hay Appeared in ACM SIGCOMM 2016 THE HEBREW UNIVERSITY

More information

SDN-based Network Obfuscation. Roland Meier PhD Student ETH Zürich

SDN-based Network Obfuscation. Roland Meier PhD Student ETH Zürich SDN-based Network Obfuscation Roland Meier PhD Student ETH Zürich This Talk This thesis vs. existing solutions Alice Bob source: Alice destination: Bob Hi Bob, Hi Bob, Payload encryption ǾǼōĦ

More information

Slicing a Network. Software-Defined Network (SDN) FlowVisor. Advanced! Computer Networks. Centralized Network Control (NC)

Slicing a Network. Software-Defined Network (SDN) FlowVisor. Advanced! Computer Networks. Centralized Network Control (NC) Slicing a Network Advanced! Computer Networks Sherwood, R., et al., Can the Production Network Be the Testbed? Proc. of the 9 th USENIX Symposium on OSDI, 2010 Reference: [C+07] Cascado et al., Ethane:

More information

Reusable Software Infrastructure for Stream Processing

Reusable Software Infrastructure for Stream Processing Reusable Software Infrastructure for Stream Processing by Robert Soulé A dissertation submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy Department of Computer

More information

Cloud Programming James Larus Microsoft Research. July 13, 2010

Cloud Programming James Larus Microsoft Research. July 13, 2010 Cloud Programming James Larus Microsoft Research July 13, 2010 New Programming Model, New Problems (and some old, unsolved ones) Concurrency Parallelism Message passing Distribution High availability Performance

More information

LegUp: Accelerating Memcached on Cloud FPGAs

LegUp: Accelerating Memcached on Cloud FPGAs 0 LegUp: Accelerating Memcached on Cloud FPGAs Xilinx Developer Forum December 10, 2018 Andrew Canis & Ruolong Lian LegUp Computing Inc. 1 COMPUTE IS BECOMING SPECIALIZED 1 GPU Nvidia graphics cards are

More information

A Policy-aware Switching Layer for Data Centers

A Policy-aware Switching Layer for Data Centers A Policy-aware Switching Layer for Data Centers Dilip Joseph Arsalan Tavakoli Ion Stoica University of California at Berkeley 1 Problem: Middleboxes are hard to deploy Place on network path Overload path

More information

DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 1. Introduction

DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 1. Introduction DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 1 Introduction Definition of a Distributed System (1) A distributed system is: A collection of

More information

Software Defined Networks

Software Defined Networks Software Defined Networks A quick overview Based primarily on the presentations of Prof. Scott Shenker of UC Berkeley The Future of Networking, and the Past of Protocols Please watch the YouTube video

More information

Lecture 15 Networking Fundamentals. Today s Plan

Lecture 15 Networking Fundamentals. Today s Plan Lecture 15 Networking Fundamentals Slides attributed to Neil Spring Today s Plan Talk about networking in general Layers, Routing Specifically about IP and TCP Service model, what TCP provides Work our

More information

Networking Cyber-physical Applications in a Data-centric World

Networking Cyber-physical Applications in a Data-centric World Networking Cyber-physical Applications in a Data-centric World Jie Wu Dept. of Computer and Information Sciences Temple University ICCCN 2015 Panel Computers weaving themselves into the fabric of everyday

More information

Camdoop Exploiting In-network Aggregation for Big Data Applications Paolo Costa

Camdoop Exploiting In-network Aggregation for Big Data Applications Paolo Costa Camdoop Exploiting In-network Aggregation for Big Data Applications costa@imperial.ac.uk joint work with Austin Donnelly, Antony Rowstron, and Greg O Shea (MSR Cambridge) MapReduce Overview Input file

More information

pblk the OCSSD FTL Linux FAST Summit 18 Javier González Copyright 2018 CNEX Labs

pblk the OCSSD FTL Linux FAST Summit 18 Javier González Copyright 2018 CNEX Labs pblk the OCSSD FTL Linux FAST Summit 18 Javier González Read Latency Read Latency with 0% Writes Random Read 4K Percentiles 2 Read Latency Read Latency with 20% Writes Random Read 4K + Random Write 4K

More information

PacketShader: A GPU-Accelerated Software Router

PacketShader: A GPU-Accelerated Software Router PacketShader: A GPU-Accelerated Software Router Sangjin Han In collaboration with: Keon Jang, KyoungSoo Park, Sue Moon Advanced Networking Lab, CS, KAIST Networked and Distributed Computing Systems Lab,

More information

Network Layer: The Control Plane

Network Layer: The Control Plane Network Layer: The Control Plane 7 th Edition, Global Edition Jim Kurose, Keith Ross Pearson April 06 5- Software defined networking (SDN) Internet network layer: historically has been implemented via

More information

Big Data Programming: an Introduction. Spring 2015, X. Zhang Fordham Univ.

Big Data Programming: an Introduction. Spring 2015, X. Zhang Fordham Univ. Big Data Programming: an Introduction Spring 2015, X. Zhang Fordham Univ. Outline What the course is about? scope Introduction to big data programming Opportunity and challenge of big data Origin of Hadoop

More information

Virtual Machine Manager Domains

Virtual Machine Manager Domains This chapter contains the following sections: Cisco ACI VM Networking Support for Virtual Machine Managers, page 1 VMM Domain Policy Model, page 3 Virtual Machine Manager Domain Main Components, page 3,

More information

Chapter 1: Introduction 1/29

Chapter 1: Introduction 1/29 Chapter 1: Introduction 1/29 What is a Distributed System? A distributed system is a collection of independent computers that appears to its users as a single coherent system. 2/29 Characteristics of a

More information