SLIPSTREAM: AUTOMATIC INTERPROCESS COMMUNICATION OPTIMIZATION. Will Dietz, Joshua Cranmer, Nathan Dautenhahn, Vikram Adve
|
|
- Felix Welch
- 6 years ago
- Views:
Transcription
1 SLIPSTREAM: AUTOMATIC INTERPROCESS COMMUNICATION OPTIMIZATION Will Dietz, Joshua Cranmer, Nathan Dautenhahn, Vikram Adve
2 Introduction 2 Use of TCP is ubiquitous Widely Supported Location Transparency Programmer-friendly but not always ideal Faster IPC exists for local communication Goal: Best of TCP generality with fast performance locally
3 Motivating Example 3 (Java, C, Python, ) Database
4 Motivating Example 4 (Java, C, Python, ) Database Optimization opportunity: Local communication could use UDS
5 Motivating Example Manually Optimized 5 (Java, C, Python, ) Database UDS vs TCP: up to 2x ops/sec! Avoid TCP layers
6 Motivating Example Manually Optimized 6 (Java, C, Python, ) Can we do this automatically? Database UDS vs TCP: up to 2x ops/sec! Slipstream: Automatic IPC Optimization Avoid TCP layers
7 What s Coming 7 Slipstream Overview How Slipstream Works Selected Results Performance Compatibility Docker Conclusions
8 8 Slipstream Overview
9 Design Principles: Automatic and Useful 9 (Java, C, Python, ) Database No App. Modifications Language Agnostic No Modifications No Network Assumptions Backwards Compatible
10 Slipstream Architecture: What is it? 10 (Java, C, Python, ) Database
11 Example + (libipc) 11 (Java, C, Python, ) Database libipc libipc libipc libipc: Shim library between application and OS
12 Example + (libipc + ipcd) 12 (Java, C, Python, ) Database libipc ipcd libipc libipc ipcd ipcd: Coordinating daemon for all libipc on host
13 Example + Slipstream 13 (Java, C, Python, ) Database libipc ipcd libipc libipc ipcd
14 14 How Slipstream Works
15 How Slipstream Works: Overview 15 Track TCP State Detect Local Communication Switch to UDS
16 Tracking TCP State 16 (Java, C, Python, ) Database libipc ipcd libipc libipc ipcd Track TCP State Detect Local Communication Switch to UDS
17 1) Tracking TCP State 17 read write listen (Java, C, Python, ) libipc Database libipc: Transparently monitors TCP operations ipcd libipc libipc ipcd Track TCP State Detect Local Communication Switch to UDS
18 1) Tracking TCP State 18 read write listen fork (Java, C, Python, ) libipc exec dup Database libipc: Transparently monitors TCP operations ipcd libipc libipc ipcd libipc: Maintains state throughout execution Track TCP State Detect Local Communication Switch to UDS
19 Detecting Local Communication 19 (Java, C, Python, ) Database libipc ipcd libipc libipc ipcd Track TCP State Detect Local Communication Switch to UDS
20 Detecting Local Communication 20 (Java, C, Python, ) ipcd: Uses information from libipc to perform endpoint Database matching libipc ipcd libipc libipc ipcd Track TCP State Detect Local Communication Switch to UDS
21 Detecting Local Communication 21 (Java, C, Python, ) libipc ipcd: Uses information Endpoint from Matching: libipc to identify local Memory 1. Store {SRC IP:Port, communication DEST Database IP:Port} 2. N-Byte Checksum of Stream Data 3. Timing Windows ipcd libipc libipc ipcd Track TCP State Detect Local Communication Switch to UDS
22 2) Detecting Local Communication 22 (Java, C, Python, ) Database libipc ipcd libipc libipc ipcd Local communication detected! Track TCP State Detect Local Communication Switch to UDS
23 Switching to UDS 23 (Java, C, Python, ) Database libipc ipcd libipc libipc ipcd Track TCP State Detect Local Communication Switch to UDS
24 Switching to UDS 24 (Java, C, Python, ) libipc Database ipcd: Generate optimized socketpair, send to libipc instances ipcd libipc libipc ipcd Track TCP State Detect Local Communication Switch to UDS
25 Switching to UDS 25 (Java, C, Python, ) libipc: Transparently switch Database to new transport libipc ipcd libipc libipc ipcd Track TCP State Detect Local Communication Switch to UDS
26 Switching to UDS 26 (Java, C, Python, ) libipc: Transparently switch Database to new transport libipc ipcd libipc libipc: ipcd Preserve expected socket behavior for compatibility Track TCP State Detect Local Communication Switch to UDS
27 Switching to UDS 27 (Java, C, Python, ) Database libipc ipcd libipc libipc ipcd Slipstream: up to 2x ops/sec Track TCP State Detect Local Communication Switch to UDS
28 28 Selected Results
29 Performance vs Local TCP 29 Memcached Up to +80% ops/sec! At least +40% ops/sec!
30 Performance vs Manual UDS 30 Netperf UDS Slipstream automatically achieves performance similar to manual UDS!
31 Performance Overhead 31 Netperf ~3.5% overhead Memcached < 3% overhead
32 Software Compatibility 32 Supports many popular server applications MySQL, PostgreSQL, Redis, Memcached, Apache, Jenkins, Language agnostic in practice Java, C, Python, All work correctly with Slipstream All are optimized when communicating locally Supports use with Docker!
33 Example with Docker 33 (Java, C, Python, ) Database Put app in container Container per component Slower comm., extra layers
34 Example with Docker + Slipstream? 34 (Java, C, Python, ) Database Did someone say they need Automatic IPC Optimization? Put app in container Container per component Slower comm., extra layers
35 Slipstream with Docker 35 (Java, C, libipc Python, ) libipc Database libipc per container
36 Slipstream with Docker 36 (Java, C, libipc Python, ) ipcd libipc Database libipc per container Connect to common ipcd
37 Slipstream with Docker 37 (Java, C, libipc Python, ) ipcd libipc Database libipc per container Connect to common ipcd ipcd can run in a container too
38 Slipstream with Docker 38 (Java, C, libipc Python, ) ipcd libipc Database Optimize across containers!
39 Slipstream with Docker 39 (Java, C, libipc Python, ) ipcd libipc Database Optimize across containers! 2x-3x ops/sec over Docker Same perf. as without Docker
40 Docker with NetPIPE-C 40 Slipstream shows large speedups Same perf. with or without Docker! Baseline Docker is significantly slower
41 Conclusions: 41 Automatically use faster IPC mechanism when available Easy to deploy, highly compatible No OS modifications No modifications to application Language-agnostic Backwards-compatible (partial deployment supported) ~2x bandwidth improvement for host-local communication Low overhead when optimization is not possible Freely Available at Thank you! Questions?
42 (End of presentation) 42
43 43 FAQ
44 Q: Why use UDS instead of other local IPC? 44 Simply: Socket interface of UDS facilitated prototyping Any local IPC mechanism should be possible (Patches welcome! ) Others could avoid kernel interaction for even better performance See ipc-bench paper Slipstream is not UDS-specific UDS implementation detail, idea is faster performance leveraging locality In fact, netperf sometimes slower with UDS (see paper).
45 Q: Why not have application do this itself? 45 Legacy: many applications don t do this today (Knowledge that UDS faster than TCP is not new!) They shouldn t have to, Slipstream! Achieves performance of manual optimization Low overhead when optimization not possible Applications have better things to do than transport selection!
46 Q: Why userspace solution, not in-kernel? 46 Mostly: Legacy Ease of use, ease of deployment Suitable for use on other systems (FreeBSD, etc.) May not be appropriate for kernel Correctness concerns (Opt-in approach likely appropriate) Possibility for using even more efficient transports than UDS Can t cut out kernel with a kernel-based solution
47 Q: What about frequent short-lived connections? 47 Current implementation not well-suited for this, but could be! Would not benefit from optimization only applied to longer-lived connections In fact, initial connection latency over localhost increased Not by design, result of implementation choices (but nevertheless) Probably better off with custom is local decision mechanism Ex: Is destination IP Would allow optimizing before connection, get faster connect() times Thanks for the question, Joshua.
48 48 Extra Slides
49 Related Work 49 Category Name Application Transparency OS Transparency OS Feature VM-VM Userspace Networking Stack Userspace Shim Library Windows Fast-Path Solaris TCP Fusion AIX fastlo Linux TCP Friends? XWay XenSocket XenLoop mtcp Sandstorm Fable Java Fast Sockets Universal Fast Sockets FastSockets Slipstream
50 Building on Slipstream 50 Alternative transports (shared memory, etc.) (see ipc-bench) Select best transport for workload/configuration Support multiple locality detection mechanisms Provided one is suitable for many use-cases If can assume network topology, can directly determine this More exhaustive testing, performance investigation
51 Try it out today! 51 No configuration, simple deployment Big performance gains for many applications (Docker support!) Low overheads when optimization is not possible Makes most of partial deployment Open-source, CRAPL (don t judge, it s research!) Download today!
52 53 Deploying Slipstream
53 Example + Slipstream: Deployment 54 (Java, C, Python, ) Database
54 Example + Slipstream: Deployment 55 (Java, C, Python, ) Database libipc libipc libipc libipc deployed with application (LD_PRELOAD or /etc/ld.so.preload)
55 56 Challenges and Solutions
56 Example + Slipstream: Key Challenge 57 (Java, C, Python, ) Challenge: Which connections are communicating locally? Database libipc ipcd libipc libipc ipcd libipc only sees what goes through it Solution: Endpoint matching algorithm to identify local communication
57 Endpoint Matching Overview 58 It s the orange one! (Java, C, Python, ) libipc works with ipcd which has more information Database libipc ipcd libipc libipc ipcd Observed behavior from both libipc instances used by ipcd to find match
58 Endpoint Matching Overview 59 It s the orange one! (Java, C, Python, ) libipc works with ipcd which has more information Database libipc ipcd libipc libipc ipcd What information can be used to help pair endpoints? Observed behavior from both libipc instances used by ipcd to find match
59 Endpoint Matching Overview 60 Src/Dst IP and Port (Java, C, Python, ) libipc works with ipcd which has more information Database Data Sent/Recv libipc Timing Details ipcd libipc libipc ipcd and it s orange. Observed behavior from both libipc instances used by ipcd to find match
60 Endpoint Matching Overview 61 Src/Dst IP and Port (Java, C, Python, ) libipc works with ipcd which has more information Database Data Sent/Recv libipc Timing Details ipcd libipc libipc ipcd More details in paper! Observed behavior from both libipc instances used by ipcd to find match
61 Endpoint Matching Overview 62 (Java, C, Python, ) libipc works with ipcd which has more information Database libipc ipcd libipc libipc ipcd Observed behavior from both libipc instances used by ipcd to find match
62 Endpoint Matching Overview 63 (Java, C, Python, ) libipc works with ipcd which has more information Database libipc ipcd libipc libipc ipcd Observed behavior from both libipc instances used by ipcd to find match Local endpoints found!
63 Endpoint Matching: Complete 64 (Java, C, Python, ) Database libipc ipcd libipc libipc ipcd Local endpoints found!
64 Automatic IPC Optimization 65 (Java, C, Python, ) Database libipc ipcd libipc libipc ipcd Transparently switches to UDS
65 Automatic IPC Optimization 66 (Java, C, Python, ) Database libipc ipcd libipc libipc ipcd UDS vs TCP: up to 2x ops/sec
66 Without Modifying Applications? 67 (Java, C, Python, ) Implementation Challenge: libipc must preserve expected socket behavior Database for compatibility libipc ipcd libipc libipc ipcd Solution: Engineering!
67 68 Results, with slides. Source:
68 Faster than TCP? NetPIPE Microbenchmarks 69 NetPIPE-C NetPIPE-Java 1.4x to 2.5x improvement! Works with both C and Java!
69 Faster than TCP? Memcached x to 1.8x ops/sec
70 Faster than TCP? PostgreSQL 71 PostgreSQL TPC-B PostgreSQL - Select No improvement when CPU/IO bound Small improvement for Select-only
71 Faster than TCP? PostgreSQL 72 PostgreSQL TPC-B PostgreSQL - Select Application benefit depends on how much network is the bottleneck No improvement when CPU/IO bound Small improvement for Select-only
72 Slower than TCP? Slipstream Overhead 73 Netperf Memcached ~3.5% overhead for Netperf < 3% overhead for Memcached
73 Slower than TCP? Slipstream Overhead 74 Netperf Memcached Overhead incurred is low in even network-intensive applications ~3.5% overhead for Netperf < 3% overhead for Memcached
74 Slower than manual UDS? Netperf Microbenchmark 75 Relative to fixed benchmark (Default UDS does poorly)
75 Slower than manual UDS? Netperf Microbenchmark 76 Relative to fixed benchmark Automatically achieves performance close to manually using UDS! (Default UDS does poorly)
76 Docker with NetPIPE-C 77 Slipstream shows large speedups Same perf. with or without Docker! Baseline Docker is significantly slower
77 Docker with Memcached 78 Memcached with Docker Curious: Memcached without with Docker Slipstream performs better across Docker containers Baseline Docker has lower performance
78 Software Compatibility 79 Supports many popular server applications MySQL, PostgreSQL, Redis, Memcached, Apache, Jenkins, Language agnostic in practice Java, C, Python, And of course our microbenchmarks: NetPIPE, netperf, iperf, lmbench All work correctly with Slipstream All are optimized when communicating locally
79 Slipstream Overview Multiple Applications 80 ipcd: One instance per host Web App libipc libipc libipc ipcd libipc: One instance per process
Light & NOS. Dan Li Tsinghua University
Light & NOS Dan Li Tsinghua University Performance gain The Power of DPDK As claimed: 80 CPU cycles per packet Significant gain compared with Kernel! What we care more How to leverage the performance gain
More informationOperating System Structure
Operating System Structure Joey Echeverria joey42+os@gmail.com April 18, 2005 Carnegie Mellon University: 15-410 Spring 2005 Overview Motivations Kernel Structures Monolithic Kernels Open Systems Microkernels
More informationLight: A Scalable, High-performance and Fully-compatible User-level TCP Stack. Dan Li ( 李丹 ) Tsinghua University
Light: A Scalable, High-performance and Fully-compatible User-level TCP Stack Dan Li ( 李丹 ) Tsinghua University Data Center Network Performance Hardware Capability of Modern Servers Multi-core CPU Kernel
More informationOperating System Structure
Operating System Structure Joey Echeverria joey42+os@gmail.com December 6, 2004 Carnegie Mellon University: 15-410 Fall 2004 Overview Motivations Kernel Structures Monolithic Kernels Open Systems Microkernels
More informationECE 650 Systems Programming & Engineering. Spring 2018
ECE 650 Systems Programming & Engineering Spring 2018 Programming with Network Sockets Tyler Bletsch Duke University Slides are adapted from Brian Rogers (Duke) Sockets We ve looked at shared memory vs.
More informationExploring Alternative Routes Using Multipath TCP
Exploring Alternative Routes Using Multipath TCP 1/51 Exploring Alternative Routes Using Multipath TCP Stephen Brennan Case Western Reserve University June 5, 2017 Exploring Alternative Routes Using Multipath
More informationIO-Lite: A Unified I/O Buffering and Caching System
IO-Lite: A Unified I/O Buffering and Caching System Vivek S. Pai, Peter Druschel and Willy Zwaenepoel Rice University (Presented by Chuanpeng Li) 2005-4-25 CS458 Presentation 1 IO-Lite Motivation Network
More informationGlauber Costa, Lead Engineer
Glauber Costa, Lead Engineer glommer@cloudius-systems.com Who are we Small startup founded by Avi Kivity (Creator of KVM) Around 15 people, including some Linux veterans 10 countries Headquarters in Israel
More informationSFO17-403: Optimizing the Design and Implementation of KVM/ARM
SFO17-403: Optimizing the Design and Implementation of KVM/ARM Christoffer Dall connect.linaro.org Efficient, isolated duplicate of the real machine Popek and Golberg [Formal requirements for virtualizable
More informationSFO17-410: NEVE: Nested Virtualization Extensions for ARM
SFO17-410: NEVE: Nested Virtualization Extensions for ARM Jintack Lim, Christoffer Dall, Shih-Wei Li, Jason Nieh, and Marc Zyngier connect.linaro.org Nested Virtualization Kernel Kernel Hypervisor Kernel
More informationScaling Internet TV Content Delivery ALEX GUTARIN DIRECTOR OF ENGINEERING, NETFLIX
Scaling Internet TV Content Delivery ALEX GUTARIN DIRECTOR OF ENGINEERING, NETFLIX Inventing Internet TV Available in more than 190 countries 104+ million subscribers Lots of Streaming == Lots of Traffic
More informationSEDA: An Architecture for Well-Conditioned, Scalable Internet Services
SEDA: An Architecture for Well-Conditioned, Scalable Internet Services Matt Welsh, David Culler, and Eric Brewer Computer Science Division University of California, Berkeley Operating Systems Principles
More informationPreserving I/O Prioritization in Virtualized OSes
Preserving I/O Prioritization in Virtualized OSes Kun Suo 1, Yong Zhao 1, Jia Rao 1, Luwei Cheng 2, Xiaobo Zhou 3, Francis C. M. Lau 4 The University of Texas at Arlington 1, Facebook 2, University of
More informationInside look at benchmarks Wim Coekaerts Senior Vice President, Linux and Virtualization Engineering. Wednesday, August 17, 11
Inside look at benchmarks Wim Coekaerts Senior Vice President, Linux and Virtualization Engineering Overview Purpose of benchmarks Who is involved? What kind of benchmarks exist out there? Benchmarks are
More informationDesign Project 2: Virtual Machine Placement in a Data Center Network. Tiffany Yu-Han Chen
Design Project 2: Virtual Machine Placement in a Data Center Network Tiffany Yu-Han Chen Data Center Network The network you are using in your DP2 Data Center (DC) Networks - DC networks are organized
More informationVM Migration, Containers (Lecture 12, cs262a)
VM Migration, Containers (Lecture 12, cs262a) Ali Ghodsi and Ion Stoica, UC Berkeley February 28, 2018 (Based in part on http://web.eecs.umich.edu/~mosharaf/slides/eecs582/w16/021516-junchenglivemigration.pptx)
More informationFlexSC. Flexible System Call Scheduling with Exception-Less System Calls. Livio Soares and Michael Stumm. University of Toronto
FlexSC Flexible System Call Scheduling with Exception-Less System Calls Livio Soares and Michael Stumm University of Toronto Motivation The synchronous system call interface is a legacy from the single
More informationCommunication System Design Projects
Communication System Design Projects KUNGLIGA TEKNISKA HÖGSKOLAN PROFESSOR: DEJAN KOSTIC TEACHING ASSISTANT: GEORGIOS KATSIKAS Traditional Vs. Modern Network Management What is Network Management (NM)?
More informationIntroduction to OpenOnload Building Application Transparency and Protocol Conformance into Application Acceleration Middleware
White Paper Introduction to OpenOnload Building Application Transparency and Protocol Conformance into Application Acceleration Middleware Steve Pope, PhD Chief Technical Officer Solarflare Communications
More informationTransparent TCP Recovery
Transparent Recovery with Chain Replication Robert Burgess Ken Birman Robert Broberg Rick Payne Robbert van Renesse October 26, 2009 Motivation Us: Motivation Them: Client Motivation There is a connection...
More informationAccelerate Network Protocol Stack Performance and Adoption in the Cloud Networking via DMM
Accelerate Network Protocol Stack Performance and Adoption in the Cloud Networking via DMM Waterman Cao Senior Researcher Cloud Networking Lab, Huawei AGENDA 01 02 03 Overview What we face DMM Overview
More informationThink Small to Scale Big
Think Small to Scale Big Intro to Containers for the Datacenter Admin Pete Zerger Principal Program Manager, MVP pete.zerger@cireson.com Cireson Lee Berg Blog, e-mail address, title Company Pete Zerger
More informationTECHNICAL NOTE. Oracle Protocol Agent Overview. Version 2.5 TECN04_SG2.5_
Version 2.5 TECHNICAL NOTE Oracle Protocol Agent Overview Stonesoft Corp. Itälahdenkatu 22A, FIN-00210 Helsinki Finland Tel. +358 (9) 4767 11 Fax. +358 (9) 4767 1234 email: info@stonesoft.com Copyright
More informationAccelerating Pointer Chasing in 3D-Stacked Memory: Challenges, Mechanisms, Evaluation Kevin Hsieh
Accelerating Pointer Chasing in 3D-Stacked : Challenges, Mechanisms, Evaluation Kevin Hsieh Samira Khan, Nandita Vijaykumar, Kevin K. Chang, Amirali Boroumand, Saugata Ghose, Onur Mutlu Executive Summary
More informationARISTA: Improving Application Performance While Reducing Complexity
ARISTA: Improving Application Performance While Reducing Complexity October 2008 1.0 Problem Statement #1... 1 1.1 Problem Statement #2... 1 1.2 Previous Options: More Servers and I/O Adapters... 1 1.3
More informationProcess. Program Vs. process. During execution, the process may be in one of the following states
What is a process? What is process scheduling? What are the common operations on processes? How to conduct process-level communication? How to conduct client-server communication? Process is a program
More informationSquare Pegs in a Round Pipe: Wire-Compatible Unordered Delivery In TCP and TLS
Square Pegs in a Round Pipe: Wire-Compatible Unordered Delivery In TCP and TLS Jana Iyengar*, Bryan Ford + Syed Obaid Amin* +, Michael F. Nowlan +, Nabin Tiwari* *Franklin & Marshall College + Yale University
More informationNTRDMA v0.1. An Open Source Driver for PCIe NTB and DMA. Allen Hubbe at Linux Piter 2015 NTRDMA. Messaging App. IB Verbs. dmaengine.h ntb.
Messaging App IB Verbs NTRDMA dmaengine.h ntb.h DMA DMA DMA NTRDMA v0.1 An Open Source Driver for PCIe and DMA Allen Hubbe at Linux Piter 2015 1 INTRODUCTION Allen Hubbe Senior Software Engineer EMC Corporation
More informationL41: Lab 2 - Kernel implications of IPC
L41: Lab 2 - Kernel implications of IPC Dr Robert N.M. Watson Michaelmas Term 2015 The goals of this lab are to: Continue to gain experience tracing user-kernel interactions via system calls Explore the
More informationCHAPTER 2: SYSTEM STRUCTURES. By I-Chen Lin Textbook: Operating System Concepts 9th Ed.
CHAPTER 2: SYSTEM STRUCTURES By I-Chen Lin Textbook: Operating System Concepts 9th Ed. Chapter 2: System Structures Operating System Services User Operating System Interface System Calls Types of System
More informationThe case for ubiquitous transport-level encryption
1/25 The case for ubiquitous transport-level encryption Andrea Bittau, Michael Hamburg, Mark Handley, David Mazières, and Dan Boneh Stanford and UCL November 18, 2010 Goals 2/25 What would it take to encrypt
More informationKernel Level Speculative DSM
Motivation Main interest is performance, fault-tolerance, and correctness of distributed systems Present our ideas in the context of a DSM system We are developing tools that Improve performance Address
More informationW H I T E P A P E R. Virtual Machine Monitor Execution Modes in VMware vsphere 4.0
W H I T E P A P E R Virtual Machine Monitor Execution Modes in VMware vsphere 4.0 Table of Contents Background................................................................... 3 Default Monitor Modes.........................................................
More informationTravis Cardwell Technical Meeting
.. Introduction to Docker Travis Cardwell Tokyo Linux Users Group 2014-01-18 Technical Meeting Presentation Motivation OS-level virtualization is becoming accessible Docker makes it very easy to experiment
More informationMinion: An All-Terrain Packet Packhorse to Jump-Start Stalled Internet Transports
Minion: An All-Terrain Packet Packhorse to Jump-Start Stalled Internet Transports Jana Iyengar*, Bryan Ford + Dishant Ailawadi +, Syed Obaid Amin*, Michael F. Nowlan +, Nabin Tiwari*, Jeffrey Wise* *Franklin
More informationTCP Tuning for the Web
TCP Tuning for the Web Jason Cook - @macros - jason@fastly.com Me Co-founder and Operations at Fastly Former Operations Engineer at Wikia Lots of Sysadmin and Linux consulting The Goal Make the best use
More informationFast 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 informationFour Components of a Computer System
Four Components of a Computer System Operating System Concepts Essentials 2nd Edition 1.1 Silberschatz, Galvin and Gagne 2013 Operating System Definition OS is a resource allocator Manages all resources
More informationWhy Your Application only Uses 10Mbps Even the Link is 1Gbps?
Why Your Application only Uses 10Mbps Even the Link is 1Gbps? Contents Introduction Background Information Overview of the Issue Bandwidth-Delay Product Verify Solution How to Tell Round Trip Time (RTT)
More informationSTATE OF MODERN APPLICATIONS IN THE CLOUD
STATE OF MODERN APPLICATIONS IN THE CLOUD 2017 Introduction The Rise of Modern Applications What is the Modern Application? Today s leading enterprises are striving to deliver high performance, highly
More informationNetwork stack virtualization for FreeBSD 7.0. Marko Zec
Network stack virtualization for FreeBSD 7.0 Marko Zec zec@fer.hr University of Zagreb Network stack virtualization for FreeBSD 7.0 slide 1 of 18 Talk outline Network stack virtualization what, why, and
More informationMigratory TCP (MTCP) Transport Layer Support for Highly Available Network Services
Migratory TCP (MTCP) Transport Layer Support for Highly Available Network Services DisCo Lab Division of Computer and Information Sciences Rutgers University Nov. 29, 2001 CONS Light seminar 1 The People
More informationCACHE ME IF YOU CAN! GETTING STARTED WITH AMAZON ELASTICACHE. AWS Charlotte Meetup / Charlotte Cloud Computing Meetup Bilal Soylu October 2013
1 CACHE ME IF YOU CAN! GETTING STARTED WITH AMAZON ELASTICACHE AWS Charlotte Meetup / Charlotte Cloud Computing Meetup Bilal Soylu October 2013 2 Agenda Hola! Housekeeping What is this use case What is
More informationCS519: Computer Networks. Lecture 5, Part 1: Mar 3, 2004 Transport: UDP/TCP demux and flow control / sequencing
: Computer Networks Lecture 5, Part 1: Mar 3, 2004 Transport: UDP/TCP demux and flow control / sequencing Recall our protocol layers... ... and our protocol graph IP gets the packet to the host Really
More informationtcpcrypt: real transport-level encryption Andrea Bittau, Mike Hamburg, Mark Handley, David Mazieres, Dan Boneh. UCL and Stanford.
tcpcrypt: real transport-level encryption Andrea Bittau, Mike Hamburg, Mark Handley, David Mazieres, Dan Boneh. UCL and Stanford. What would it take to encrypt the vast majority of TCP traffic? Performance
More informationInteroperation of tasks
Operating systems (vimia219) Interoperation of tasks Tamás Kovácsházy, PhD 4 th topic, Implementation of tasks, processes and threads Budapest University of Technology and Economics Department of Measurement
More informationTransport Layer Overview
Transport Layer Overview Kai Shen Transport-layer Overview Network layer: host-to-host to logical communication between hosts. Transport layer: logical communication between s. multiple comm. s can reside
More informationCS 43: Computer Networks. 15: Transport Layer & UDP October 5, 2018
CS 43: Computer Networks 15: Layer & UDP October 5, 2018 Reading Quiz Lecture 15 - Slide 2 Layer Moving down a layer. Current perspective: lication is the boss Usually executing within the OS kernel. The
More informationCS 43: Computer Networks. 08:Network Services and Distributed Systems 19 September
CS 43: Computer Networks 08:Network Services and Distributed Systems 19 September Reading Quiz Lecture 8 -Slide 2 Last class Inter-process communication using message passing How send and recv buffers
More informationReal Time Linux patches: history and usage
Real Time Linux patches: history and usage Presentation first given at: FOSDEM 2006 Embedded Development Room See www.fosdem.org Klaas van Gend Field Application Engineer for Europe Why Linux in Real-Time
More informationDesigning a Resource Pooling Transport Protocol
Designing a Resource Pooling Transport Protocol Michio Honda, Keio University Elena Balandina, Nokia Research Center Pasi Sarolahti, Nokia Research Center Lars Eggert, Nokia Research Center Global Internet
More informationInformation-Agnostic Flow Scheduling for Commodity Data Centers
Information-Agnostic Flow Scheduling for Commodity Data Centers Wei Bai, Li Chen, Kai Chen, Dongsu Han (KAIST), Chen Tian (NJU), Hao Wang Sing Group @ Hong Kong University of Science and Technology USENIX
More informationIX: A Protected Dataplane Operating System for High Throughput and Low Latency
IX: A Protected Dataplane Operating System for High Throughput and Low Latency Belay, A. et al. Proc. of the 11th USENIX Symp. on OSDI, pp. 49-65, 2014. Reviewed by Chun-Yu and Xinghao Li Summary In this
More informationAdvanced RDMA-based Admission Control for Modern Data-Centers
Advanced RDMA-based Admission Control for Modern Data-Centers Ping Lai Sundeep Narravula Karthikeyan Vaidyanathan Dhabaleswar. K. Panda Computer Science & Engineering Department Ohio State University Outline
More informationTo EL2, and Beyond! connect.linaro.org. Optimizing the Design and Implementation of KVM/ARM
To EL2, and Beyond! Optimizing the Design and Implementation of KVM/ARM LEADING COLLABORATION IN THE ARM ECOSYSTEM Christoffer Dall Shih-Wei Li connect.linaro.org
More informationOptimizing your virtual switch for VXLAN. Ron Fuller, VCP-NV, CCIE#5851 (R&S/Storage) Staff Systems Engineer NSBU
Optimizing your virtual switch for VXLAN Ron Fuller, VCP-NV, CCIE#5851 (R&S/Storage) Staff Systems Engineer NSBU fuller@vmware.com VXLAN Protocol Overview Ethernet in IP overlay network Entire L2 frame
More informationMegaPipe: A New Programming Interface for Scalable Network I/O
MegaPipe: A New Programming Interface for Scalable Network I/O Sangjin Han in collabora=on with Sco? Marshall Byung- Gon Chun Sylvia Ratnasamy University of California, Berkeley Yahoo! Research tl;dr?
More informationDr Markus Hagenbuchner CSCI319. Distributed Systems Chapter 3 - Processes
Dr Markus Hagenbuchner markus@uow.edu.au CSCI319 Distributed Systems Chapter 3 - Processes CSCI319 Chapter 3 Page: 1 Processes Lecture notes based on the textbook by Tannenbaum Study objectives: 1. Understand
More informationNGN Progress Report. Table of Contents
NGN Progress Report Title: Simulator Scalability Testing Prepared by: Richard Nelson Date: 08 February, 2006 Table of Contents Introduction...2 Simulators...2 Test Method...2 Simulation Model...2 CPU Utilisation...2
More informationLecture 2-ter. 2. A communication example Managing a HTTP v1.0 connection. Managing a HTTP request. transport session. Step 1 - opening transport
Lecture 2-ter. 2 A communication example Managing a HTTP v1.0 connection Managing a HTTP request User digits URL and press return (or clicks ). What happens (HTTP 1.0): 1. opens a TCP transport session
More informationNetwork Implementation
CS 256/456: Operating Systems Network Implementation John Criswell! University of Rochester 1 Networking Overview 2 Networking Layers Application Layer Format of Application Data Transport Layer Which
More informationUnikernels as Processes
Unikernels as Processes Dan Williams, Ricardo Koller (IBM Research) Martin Lucina (robur.io/center for the Cultivation of Technology) Nikhil Prakash (BITS Pilani) What is a unikernel? An application linked
More informationInformation-Agnostic Flow Scheduling for Commodity Data Centers. Kai Chen SING Group, CSE Department, HKUST May 16, Stanford University
Information-Agnostic Flow Scheduling for Commodity Data Centers Kai Chen SING Group, CSE Department, HKUST May 16, 2016 @ Stanford University 1 SING Testbed Cluster Electrical Packet Switch, 1G (x10) Electrical
More informationA unified multicore programming model
A unified multicore programming model Simplifying multicore migration By Sven Brehmer Abstract There are a number of different multicore architectures and programming models available, making it challenging
More informationAgenda. Threads. Single and Multi-threaded Processes. What is Thread. CSCI 444/544 Operating Systems Fall 2008
Agenda Threads CSCI 444/544 Operating Systems Fall 2008 Thread concept Thread vs process Thread implementation - user-level - kernel-level - hybrid Inter-process (inter-thread) communication What is Thread
More informationJoseph Faber Wonderful Talking Machine (1845)
Joseph Faber Wonderful Talking Machine (1845) Connected World Human-to-Human communication Human-Machine interaction Machine-to-Machine communication (M2M) Internet-of-Things (IOT) Internet of Things How
More informationORB Performance: Gross vs. Net
ORB Performance: Gross vs. Net Brad Balfour Objective Interface 1892 Preston White Drive Reston VA 20191-5448 703/295-6500 (voice) 703/295-6501 (fax) http://www.ois.com/ brad.balfour@ois.com Topics! End-to-End
More informationInformation Flow Control For Standard OS Abstractions
Information Flow Control For Standard OS Abstractions Maxwell Krohn, Alex Yip, Micah Brodsky, Natan Cliffer, Frans Kaashoek, Eddie Kohler, Robert Morris MIT SOSP 2007 Presenter: Lei Xia Mar. 2 2009 Outline
More informationCSC 401 Data and Computer Communications Networks
CSC 401 Data and Computer Communications Networks Transport Layer Intro, Mutliplexing/Demultiplexing, UDP Sec 3.1 3.4 Prof. Lina Battestilli Fall 2017 Chapter 3: Transport Layer our goals: understand principles
More informationGraphene-SGX. A Practical Library OS for Unmodified Applications on SGX. Chia-Che Tsai Donald E. Porter Mona Vij
Graphene-SGX A Practical Library OS for Unmodified Applications on SGX Chia-Che Tsai Donald E. Porter Mona Vij Intel SGX: Trusted Execution on Untrusted Hosts Processing Sensitive Data (Ex: Medical Records)
More information/ Cloud Computing. Recitation 5 February 14th, 2017
15-319 / 15-619 Cloud Computing Recitation 5 February 14th, 2017 1 Overview Administrative issues Office Hours, Piazza guidelines Last week s reflection Project 2.1, OLI Unit 2 modules 5 and 6 This week
More informationPerformance analysis, development and improvement of programs, commands and BASH scripts in GNU/Linux systems
Performance analysis, development and improvement of programs, commands and BASH scripts in GNU/Linux systems Erion ÇANO Prof. Dr Betim ÇIÇO 11 TH W O R K S H O P S O F T W A R E E N G I N E E R I N G
More informationImproved Path Exploration in shim6-based Multihoming
Improved Path Exploration in shim6-based Multihoming Université catholique de Louvain http://inl.info.ucl.ac.be Aug. 3st, 2007 SIGCOMM 2007 Workshop IPv6 and the Future of the Internet 2 EX : Measuring
More informationDisclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme
NET1343BU NSX Performance Samuel Kommu #VMworld #NET1343BU Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no
More informationMemory Management Strategies for Data Serving with RDMA
Memory Management Strategies for Data Serving with RDMA Dennis Dalessandro and Pete Wyckoff (presenting) Ohio Supercomputer Center {dennis,pw}@osc.edu HotI'07 23 August 2007 Motivation Increasing demands
More informationPerformance of Variant Memory Configurations for Cray XT Systems
Performance of Variant Memory Configurations for Cray XT Systems presented by Wayne Joubert Motivation Design trends are leading to non-power of 2 core counts for multicore processors, due to layout constraints
More informationECS-087: Mobile Computing
ECS-087: Mobile Computing Mobile IP Most of the slides borrowed from Prof. Sridhar Iyer Diwakar Yagyasen.1 Effect of Mobility on Protocol Stack Application: new applications and adaptations Transport:
More informationAn Analysis and Empirical Study of Container Networks
An Analysis and Empirical Study of Container Networks Kun Suo *, Yong Zhao *, Wei Chen, Jia Rao * University of Texas at Arlington *, University of Colorado, Colorado Springs INFOCOM 2018@Hawaii, USA 1
More informationA Trace-based Java JIT Compiler Retrofitted from a Method-based Compiler
A Trace-based Java JIT Compiler Retrofitted from a Method-based Compiler Hiroshi Inoue, Hiroshige Hayashizaki, Peng Wu and Toshio Nakatani IBM Research Tokyo IBM Research T.J. Watson Research Center April
More informationCSEN 503 Introduction to Communication Networks. Mervat AbuElkheir Hana Medhat Ayman Dayf. ** Slides are attributed to J. F.
CSEN 503 Introduction to Communication Networks Mervat AbuElkheir Hana Medhat Ayman Dayf ** Slides are attributed to J. F. Kurose Chapter 3 outline Transport-layer services Multiplexing and demultiplexing
More informationLecture 05 Application Layer - I
Computer Networks and Internet Protocol Prof. Soumya Kanti Ghosh Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture 05 Application Layer - I Hi. So, we will
More informationOS structure. Process management. Major OS components. CSE 451: Operating Systems Spring Module 3 Operating System Components and Structure
CSE 451: Operating Systems Spring 2012 Module 3 Operating System Components and Structure Ed Lazowska lazowska@cs.washington.edu Allen Center 570 The OS sits between application programs and the it mediates
More informationTincVPN Optimization. Derek Chiang, Jasdeep Hundal, Jisun Jung
TincVPN Optimization Derek Chiang, Jasdeep Hundal, Jisun Jung Abstract We explored ways to improve the performance for tincvpn, a virtual private network (VPN) implementation. VPN s are typically used
More informationKernel Types Simple OS Examples System Calls. Operating Systems. Autumn CS4023
Operating Systems Autumn 2017-2018 Outline 1 2 3 Types of 2.4, SGG The OS Kernel The kernel is the central component of an OS It has complete control over everything that occurs in the system Kernel overview
More informationCSCD 330 Network Programming
CSCD 330 Network Programming Lecture 9 Transport Layer Winter 2019 Reading: Begin Chapter 3 Some Material in these slides from J.F Kurose and K.W. Ross All material copyright 1996-2007 1 Outline Overview
More informationUsing FPGAs as Microservices
Using FPGAs as Microservices David Ojika, Ann Gordon-Ross, Herman Lam, Bhavesh Patel, Gaurav Kaul, Jayson Strayer (University of Florida, DELL EMC, Intel Corporation) The 9 th Workshop on Big Data Benchmarks,
More informationServices in the Virtualization Plane. Andrew Warfield Adjunct Professor, UBC Technical Director, Citrix Systems
Services in the Virtualization Plane Andrew Warfield Adjunct Professor, UBC Technical Director, Citrix Systems The Virtualization Plane Applications Applications OS Physical Machine 20ms 20ms in in the
More informationDeveloping ILNP. Saleem Bhatti, University of St Andrews, UK FIRE workshop, Chania. (C) Saleem Bhatti.
Developing ILNP Saleem Bhatti, University of St Andrews, UK 2010-07-16 FIRE workshop, Chania. (C) Saleem Bhatti. 1 What is ILNP? Identifier Locator Network Protocol: http://ilnp.cs.st-andrews.ac.uk/ ILNP
More informationEnabling Hybrid Parallel Runtimes Through Kernel and Virtualization Support. Kyle C. Hale and Peter Dinda
Enabling Hybrid Parallel Runtimes Through Kernel and Virtualization Support Kyle C. Hale and Peter Dinda Hybrid Runtimes the runtime IS the kernel runtime not limited to abstractions exposed by syscall
More informationAdvanced 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 informationMultiprocessor Systems. Chapter 8, 8.1
Multiprocessor Systems Chapter 8, 8.1 1 Learning Outcomes An understanding of the structure and limits of multiprocessor hardware. An appreciation of approaches to operating system support for multiprocessor
More informationFault Tolerant Java Virtual Machine. Roy Friedman and Alon Kama Technion Haifa, Israel
Fault Tolerant Java Virtual Machine Roy Friedman and Alon Kama Technion Haifa, Israel Objective Create framework for transparent fault-tolerance Support legacy applications Intended for long-lived, highly
More informationLast Class: OS and Computer Architecture. Last Class: OS and Computer Architecture
Last Class: OS and Computer Architecture System bus Network card CPU, memory, I/O devices, network card, system bus Lecture 4, page 1 Last Class: OS and Computer Architecture OS Service Protection Interrupts
More informationDifference Engine: Harnessing Memory Redundancy in Virtual Machines (D. Gupta et all) Presented by: Konrad Go uchowski
Difference Engine: Harnessing Memory Redundancy in Virtual Machines (D. Gupta et all) Presented by: Konrad Go uchowski What is Virtual machine monitor (VMM)? Guest OS Guest OS Guest OS Virtual machine
More information14th ANNUAL WORKSHOP 2018 A NEW APPROACH TO SWITCHING NETWORK IMPLEMENTATION. Harold E. Cook. Director of Software Engineering Lightfleet Corporation
14th ANNUAL WORKSHOP 2018 A NEW APPROACH TO SWITCHING NETWORK IMPLEMENTATION Harold E. Cook Director of Software Engineering Lightfleet Corporation April 9, 2018 OBJECTIVES Discuss efficiency and reliability
More informationTransport Layer. Chapter 3: Transport Layer
Transport Layer EECS 3214 Slides courtesy of J.F Kurose and K.W. Ross, All Rights Reserved 29-Jan-18 1-1 Chapter 3: Transport Layer our goals: understand principles behind layer services: multiplexing,
More informationNetwork stack personality in Android phone. Cristina Opriceana, Hajime Tazaki (IIJ Research Lab.) Linux netdev 2.2, Seoul, Korea 08 Nov.
Network stack personality in Android phone Cristina Opriceana, Hajime Tazaki (IIJ Research Lab.) Linux netdev 2.2, Seoul, Korea 08 Nov. 2017 1 Librarified Linux talks (LLL) Userspace network stack (NUSE)
More informationMODERN SYSTEMS: EXTENSIBLE KERNELS AND CONTAINERS
1 MODERN SYSTEMS: EXTENSIBLE KERNELS AND CONTAINERS CS6410 Hakim Weatherspoon Motivation 2 Monolithic Kernels just aren't good enough? Conventional virtual memory isn't what userspace programs need (Appel
More informationHewlett Packard Enterprise HPE GEN10 PERSISTENT MEMORY PERFORMANCE THROUGH PERSISTENCE
Hewlett Packard Enterprise HPE GEN10 PERSISTENT MEMORY PERFORMANCE THROUGH PERSISTENCE Digital transformation is taking place in businesses of all sizes Big Data and Analytics Mobility Internet of Things
More informationModern and Fast: A New Wave of Database and Java in the Cloud. Joost Pronk Van Hoogeveen Lead Product Manager, Oracle
Modern and Fast: A New Wave of Database and Java in the Cloud Joost Pronk Van Hoogeveen Lead Product Manager, Oracle Scott Lynn Director of Product Management, Oracle Linux and Oracle Solaris, Oracle October
More information