Networked Systems and Services, Fall 2018 Chapter 1. Jussi Kangasharju Markku Kojo Lea Kutvonen

Size: px
Start display at page:

Download "Networked Systems and Services, Fall 2018 Chapter 1. Jussi Kangasharju Markku Kojo Lea Kutvonen"

Transcription

1 Networked Systems and Services, Fall 2018 Chapter 1 Jussi Kangasharju Markku Kojo Lea Kutvonen

2 Course topic and goals Networked systems and services In particular, their reliability from various points of view After the course, you: Can explain how reliability can be achieved at various levels of the protocol stack Can justify why perfectly reliable systems cannot be built and can justify the tradeoffs in their design Can explain how the applications and services covered in the key themes work and can discuss their design tradeoffs Have designed one of the key themes and can justify its design tradeoffs

3 Course Organization Course sessions: Mon, Thu in D123 and Fri in D122 Lectures present new material Discussion sessions about articles Q&A sessions for exercises Lectures mostly in the beginning of the course First 4 weeks of the course Discussion and Q&A sessions mostly towards the end of the course Lecturers: Main lecturer: Jussi Kangasharju Other lectures: Markku Kojo, Lea Kutvonen Assistants: AleksandrZavodovski, Pengyuan Zhou

4 Passing the Course No course exam, only exercises 1 system design and implementation exercise (weight 1/2) 1 system design exercise (weight 1/6) 1 programming exercise (weight 1/6) 3 essays about scientific articles (weight 1/6) Half of maximum points/passing all exercises needed for passing the course All assignments are mandatory: No return à Failed course

5 Course Timeline Week 1: Lecture on Monday and Thursday; Friday network programming tutorials, article essay Week 2: Lectures, start of programming exercise, deadline Week 3: Lectures, start of design/implementation exercise Week 4: Lectures, deadline for first design Week 5: Start of second design exercise, Q&A sessions Week 6: Q&A sessions for exercises Week 7: Q&A sessions, Return implementation exercise, deadline , return second design exercise, deadline

6 Practical Details See course page for info Announcements on Twitter #UnivHelsinkiCS_NSS18 Slack team: See sign-up info on course page All returns via Moodle, see link on course page Office hours/appointments: Via or ask in person after lectures

7 Next week timeline Thursday 6.9.: Lecture Friday 7.9.: Python programming tutorials See course website for more info Sunday 9.9.: Deadline for returning first assignment (see Moodle) Monday 10.9.: Discussion on first assignment, lecture Start of programming exercise, deadline Thursday 13.9., Friday 14.9.: Lecture and Q&A for programming exercise

8 Questions?

9 Introduction

10 What Is Reliability?

11 What is reliability? Dependability, or reliability, describes the ability of a system or component to function under stated conditions for a specified period of time IEEE Standard Computer Dictionary: A Compilation of IEEE Standard Computer Glossaries, Open questions: Which system or component? What conditions? For how long? Where to implement? How to implement? What is the cost?

12 End-to-End Argument Seminal paper: J. H. Saltzer, D. P. Reed, and D. D. Clark (1981) "End-to- End Arguments in System Design". Discusses where to implement reliability in a networked system See assignment on website/moodle Deadline to return Sunday September 9 by 23:55 Class discussion about paper on Monday

13 Remember the Protocol Stack? User What is the right place to implement reliability? User Application Transport How many places are there? Application Transport Network Network Network Link Link Link Physical Physical Physical

14 Just turn all the knobs to 11?!? Well No Reliability solutions on different levels interact Interactions can lead to inefficiency What does inefficiency mean? Possible issues: Reduced throughput Increased latency What else could go wrong?

15 Remember the Application! Everything starts (and ends) with the application Application = Whatever is the thing of interest to you Application, service, combination of these, What level of reliability does the application require? We will return to this many times How much X can the application tolerate? How much X does the application absolutely require?

16 Combination of (some) X s Reliability Optimize for one or more of these properties Throughput Latency Do all possible combinations actually exist?

17 What about application requirements? Downloading these slides? Overnight backup? Video conference? Watching a video? Recording a video stream? Instant message? Bank transfer? Travel reservation? Class enrollment? On-line exam? Reliability Throughput Latency

18 Painful truth Tradeoff between reliability, throughput, and latency Often: High reliability à Low performance Not always true, but often How much reliability is really needed for the application? How much performance can we sacrifice?

19 How about non-technical requirements? Privacy? Security? Timing? Business requirements? How do these relate to reliability? How to measure these?

20 Mechanisms for reliability Detecting lost messages Timeouts, sequence numbers, Detecting corrupted messages Correcting corrupted messages Retransmissions Heartbeats Measurements

21 Roadmap for the rest of the course We will make our way up the protocol stack Look at reliability mechanisms on each level Lower level mechanisms as building blocks? Exercises also look at bigger picture Forces YOU to think about interactions and where to implement what Always remember the end-to-end argument User Application Transport Network Link Physical

22 System Model

23 What does our world look like? Endpoint Channel Endpoint 1-to-1 Communication

24 What does our world look like? Endpoint Endpoint Channel Endpoint 1-to-N Communication

25 What does our world look like? Endpoint Endpoint Channel Endpoint Endpoint N-to-M Communication

26 Endpoints Mostly 1-to-1 communications, some 1-to-N Endpoint is a loaded term! Traditional networking definition: Endpoint = endhost For us: End = Any entity of interest that needs reliability Endhost Application Service Any higher level entity

27 Communication channel Channel between endpoints One hop, multiple hops Hop-by-hop vs. end-to-end Wired, wireless, or a combination Different properties

28 Channel properties Channel may lose data Channel may corrupt data Perfect ideal channel does NOT exist J Our focus more on channel properties/problems rather than hosts

29 How to build a reliable enough system over an unreliable network?

Networked Systems and Services, Fall 2018 Chapter 2. Jussi Kangasharju Markku Kojo Lea Kutvonen

Networked Systems and Services, Fall 2018 Chapter 2. Jussi Kangasharju Markku Kojo Lea Kutvonen Networked Systems and Services, Fall 2018 Chapter 2 Jussi Kangasharju Markku Kojo Lea Kutvonen Outline Physical layer reliability Low level reliability Parities and checksums Cyclic Redundancy Check (CRC)

More information

Chapter 1: Distributed Systems: What is a distributed system? Fall 2013

Chapter 1: Distributed Systems: What is a distributed system? Fall 2013 Chapter 1: Distributed Systems: What is a distributed system? Fall 2013 Course Goals and Content n Distributed systems and their: n Basic concepts n Main issues, problems, and solutions n Structured and

More information

Announcements. 1. Forms to return today after class:

Announcements. 1. Forms to return today after class: Announcements Handouts (3) to pick up 1. Forms to return today after class: Pretest (take during class later) Laptop information form (fill out during class later) Academic honesty form (must sign) 2.

More information

Time and Place. Course Web Site. Grading Policy. Advanced Computer Networks. Lecture 1: Introduction to Course

Time and Place. Course Web Site. Grading Policy. Advanced Computer Networks. Lecture 1: Introduction to Course Time and Place Advanced Computer Networks Lecture 1: Introduction to Course Lecture: TuTh 10:30-12:00, Fr 9:30-10:30 Discussion: after paper discussion on Tue and/or Thu Room:1690 BBB Instructor: Sugih

More information

Lecture 1: Introduction & Overview

Lecture 1: Introduction & Overview INF4/MSc Computer Networking Lecture 1: Introduction & Overview Aris Efthymiou aefthymi AT inf.ed.ac.uk JCMB 1420 Computer Networking, Copyright University of Edinburgh 2005 This course is an introduction

More information

Announcements. Course syllabus Tutorial/lab signup form (due 4pm today) Lecture 1 notes Homework 1 Initial assessment

Announcements. Course syllabus Tutorial/lab signup form (due 4pm today) Lecture 1 notes Homework 1 Initial assessment Announcements Handouts (5) to pick up Course syllabus Tutorial/lab signup form (due 4pm today) Lecture 1 notes Homework 1 Initial assessment Please do it now and hand it in as you leave lecture It s ungraded;

More information

ECE 435 Network Engineering Lecture 10

ECE 435 Network Engineering Lecture 10 ECE 435 Network Engineering Lecture 10 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 28 September 2017 Announcements HW#4 was due HW#5 will be posted. midterm/fall break You

More information

In this lecture we cover a number of networking issues pertinent to the support of distributed computing. Much of the material is covered in more

In this lecture we cover a number of networking issues pertinent to the support of distributed computing. Much of the material is covered in more In this lecture we cover a number of networking issues pertinent to the support of distributed computing. Much of the material is covered in more detail in CS 168, and many slides are taken from there.

More information

The Transmission Control Protocol (TCP)

The Transmission Control Protocol (TCP) The Transmission Control Protocol (TCP) Application Services (Telnet, FTP, e-mail, WWW) Reliable Stream Transport (TCP) Unreliable Transport Service (UDP) Connectionless Packet Delivery Service (IP) Goals

More information

Networked Systems and Services, Fall 2018 Chapter 3

Networked Systems and Services, Fall 2018 Chapter 3 Networked Systems and Services, Fall 2018 Chapter 3 Jussi Kangasharju Markku Kojo Lea Kutvonen 4. Transport Layer Reliability with TCP Transmission Control Protocol (TCP) RFC 793 + more than hundred other

More information

Week 2 / Paper 1. The Design Philosophy of the DARPA Internet Protocols

Week 2 / Paper 1. The Design Philosophy of the DARPA Internet Protocols Week 2 / Paper 1 The Design Philosophy of the DARPA Internet Protocols David D. Clark ACM CCR, Vol. 18, No. 4, August 1988 Main point Many papers describe how the Internet Protocols work But why do they

More information

Networked Systems and Services, Fall 2017 Reliability with TCP

Networked Systems and Services, Fall 2017 Reliability with TCP Networked Systems and Services, Fall 2017 Reliability with TCP Jussi Kangasharju Markku Kojo Lea Kutvonen 4. Transmission Control Protocol (TCP) RFC 793 + more than hundred other RFCs TCP Loss Recovery

More information

Unit 10: Data Structures CS 101, Fall 2018

Unit 10: Data Structures CS 101, Fall 2018 Unit 10: Data Structures CS 101, Fall 2018 Learning Objectives After completing this unit, you should be able to: Define and give everyday examples of arrays, stacks, queues, and trees. Explain what a

More information

CSCI-131 Networking: the End-to-End Layer. Rodrigo Fonseca March 12 th, 2013

CSCI-131 Networking: the End-to-End Layer. Rodrigo Fonseca March 12 th, 2013 CSCI-131 Networking: the End-to-End Layer Rodrigo Fonseca March 12 th, 2013 Today Transport layer Provides useful abstractions for applications Uses (the fairly minimal) services provided by the network

More information

Last Time. Internet in a Day Day 2 of 1. Today: TCP and Apps

Last Time. Internet in a Day Day 2 of 1. Today: TCP and Apps Internet in a Day Day 2 of 1 Carnegie Mellon University 15-440, Distributed Systems Last Time Modularity, Layering, and Decomposition Example: UDP layered on top of IP to provide application demux ( ports

More information

CS 3640: Introduction to Networks and Their Applications

CS 3640: Introduction to Networks and Their Applications CS 3640: Introduction to Networks and Their Applications Fall 2018, Lecture 2: More layering and the end-to-end principle. Instructor: Rishab Nithyanand Teaching Assistant: Md. Kowsar Hossain 1 Today in

More information

LIS 2680: Database Design and Applications

LIS 2680: Database Design and Applications School of Information Sciences - University of Pittsburgh LIS 2680: Database Design and Applications Summer 2012 Instructor: Zhen Yue School of Information Sciences, University of Pittsburgh E-mail: zhy18@pitt.edu

More information

Lecture - 14 Transport Layer IV (Reliability)

Lecture - 14 Transport Layer IV (Reliability) Computer Networks and Internet Protocol Prof. Sandip Chakraborthy Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture - 14 Transport Layer IV (Reliability)

More information

Page 1. Goals for Today" Discussion" Example: Reliable File Transfer" CS162 Operating Systems and Systems Programming Lecture 11

Page 1. Goals for Today Discussion Example: Reliable File Transfer CS162 Operating Systems and Systems Programming Lecture 11 Goals for Today" CS162 Operating Systems and Systems Programming Lecture 11 Reliability, Transport Protocols" Finish e2e argument & fate sharing Transport: TCP/UDP Reliability Flow control October 5, 2011

More information

Privacy and Security in Online Social Networks Department of Computer Science and Engineering Indian Institute of Technology, Madras

Privacy and Security in Online Social Networks Department of Computer Science and Engineering Indian Institute of Technology, Madras Privacy and Security in Online Social Networks Department of Computer Science and Engineering Indian Institute of Technology, Madras Lecture 12 Tutorial 3 Part 1 Twitter API In this tutorial, we will learn

More information

Communications Software. CSE 123b. CSE 123b. Spring Lecture 3: Reliable Communications. Stefan Savage. Some slides couresty David Wetherall

Communications Software. CSE 123b. CSE 123b. Spring Lecture 3: Reliable Communications. Stefan Savage. Some slides couresty David Wetherall CSE 123b CSE 123b Communications Software Spring 2002 Lecture 3: Reliable Communications Stefan Savage Some slides couresty David Wetherall Administrativa Home page is up and working http://www-cse.ucsd.edu/classes/sp02/cse123b/

More information

CSE123A discussion session

CSE123A discussion session CSE123A discussion session 2007/02/02 Ryo Sugihara Review Data Link layer (1): Overview Sublayers End-to-end argument Framing sublayer How to delimit frame» Flags and bit stuffing Topics Data Link Layer

More information

Announcements. No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6

Announcements. No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6 Announcements No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6 Copyright c 2002 2017 UMaine Computer Science Department 1 / 33 1 COS 140: Foundations

More information

Internet Design Principles and Architecture

Internet Design Principles and Architecture Internet Design Principles and Architecture Venkat Padmanabhan Microsoft Research 2 April 2001 Venkat Padmanabhan 1 Lecture Outline A brief history of the Internet How is the Internet different from the

More information

Course Syllabus - CNT 4703 Design and Implementation of Computer Communication Networks Fall 2011

Course Syllabus - CNT 4703 Design and Implementation of Computer Communication Networks Fall 2011 Course Syllabus - CNT 4703 Design and Implementation of Computer Communication Networks Fall 2011 Credits: 3 Course Meets: Tuesday and Thursday 4:00 pm to 5:15 pm in HEC 104 Lab Hours: HEC 322 we will

More information

Question. Reliable Transport: The Prequel. Don t parse my words too carefully. Don t be intimidated. Decisions and Their Principles.

Question. Reliable Transport: The Prequel. Don t parse my words too carefully. Don t be intimidated. Decisions and Their Principles. Question How many people have not yet participated? Reliable Transport: The Prequel EE122 Fall 2012 Scott Shenker http://inst.eecs.berkeley.edu/~ee122/ Materials with thanks to Jennifer Rexford, Ion Stoica,

More information

ECPE / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition

ECPE / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition ECPE / COMP 177 Fall 2014 Some slides from Kurose and Ross, Computer Networking, 5 th Edition Instructor: Dr. Jeff Shafer Email: jshafer at pacific dot edu Office: Anderson 205 Office hours (posted on

More information

Introduction to Computation and Problem Solving

Introduction to Computation and Problem Solving Class 1: Introduction Introduction to Computation and Problem Solving Prof. Steven R. Lerman and Dr. V. Judson Harward Handouts for Today Course syllabus Academic Honesty Guidelines Laptop request form

More information

Distributed Systems /640

Distributed Systems /640 Distributed Systems 15-440/640 Fall 2018 3 Communication: The Internet in a Day (ctnd) Announcements Recitations Tomorrow (9/5) Wean 7500 to go over the basics of Golang at 6pm and again at 7pm Prepare

More information

CIMA study resources for CIMA professional examinations. November 2010 examinations

CIMA study resources for CIMA professional examinations. November 2010 examinations CIMA study resources for CIMA professional examinations November 2010 examinations Introduction The CIMA professional qualification is taken by many working adults as a business qualification and the qualification

More information

Unit 5: Computer Networking CS 101, Fall 2018

Unit 5: Computer Networking CS 101, Fall 2018 Unit 5: Computer Networking CS 101, Fall 2018 Learning Objectives After completing this unit, you should be able to: Describe the physical structure of the Internet (routers, cables). Define CSMA/CD, CSMA/CA,

More information

CprE 488 Embedded Systems Design. Exam 2 Review

CprE 488 Embedded Systems Design. Exam 2 Review CprE 488 Embedded Systems Design Exam 2 Review Joseph Zambreno Electrical and Computer Engineering Iowa State University www.ece.iastate.edu/~zambreno rcl.ece.iastate.edu This is the end. My only friend,

More information

CSC209. Software Tools and Systems Programming. https://mcs.utm.utoronto.ca/~209

CSC209. Software Tools and Systems Programming. https://mcs.utm.utoronto.ca/~209 CSC209 Software Tools and Systems Programming https://mcs.utm.utoronto.ca/~209 What is this Course About? Software Tools Using them Building them Systems Programming Quirks of C The file system System

More information

Week 5, continued. This is CS50. Harvard University. Fall Cheng Gong

Week 5, continued. This is CS50. Harvard University. Fall Cheng Gong This is CS50. Harvard University. Fall 2014. Cheng Gong Table of Contents News... 1 Buffer Overflow... 1 Malloc... 6 Linked Lists... 7 Searching... 13 Inserting... 16 Removing... 19 News Good news everyone!

More information

ETSF10 Internet Protocols Transport Layer Protocols

ETSF10 Internet Protocols Transport Layer Protocols ETSF10 Internet Protocols Transport Layer Protocols 2012, Part 2, Lecture 2.1 Kaan Bür, Jens Andersson Transport Layer Protocols Process-to-process delivery [ed.4 ch.23.1] [ed.5 ch.24.1] Transmission Control

More information

CSC 4900 Computer Networks: End-to-End Design

CSC 4900 Computer Networks: End-to-End Design CSC 4900 Computer Networks: End-to-End Design Professor Henry Carter Fall 2017 Villanova University Department of Computing Sciences Review In the last two lectures, we discussed the fundamentals of networking

More information

ETSF10 Internet Protocols Network Layer Protocols

ETSF10 Internet Protocols Network Layer Protocols ETSF10 Internet Protocols Network Layer Protocols 2012, Part 2, Lecture 3.1 Kaan Bür, Jens Andersson Network Layer Protocols IPv4, IPv6 [ed.4 ch.20.3+19.2] [ed.5 ch.22.1.1-2+22.2] Transition from IPv4

More information

EECS 470. Branches: Address prediction and recovery (And interrupt recovery too.) Lecture 7 Winter 2018

EECS 470. Branches: Address prediction and recovery (And interrupt recovery too.) Lecture 7 Winter 2018 EECS 470 Branches: Address prediction and recovery (And interrupt recovery too.) Lecture 7 Winter 2018 Slides developed in part by Profs. Austin, Brehob, Falsafi, Hill, Hoe, Lipasti, Martin, Roth, Shen,

More information

Introduction to Programming

Introduction to Programming Introduction to Programming Summer Term 2014 Dr. Adrian Kacso, Univ. Siegen adriana.dkacsoa@duni-siegena.de Tel.: 0271/740-3966, Office: H-B 8406 State: April 9, 2014 Betriebssysteme / verteilte Systeme

More information

High Performance Computing in C and C++

High Performance Computing in C and C++ High Performance Computing in C and C++ Rita Borgo Computer Science Department, Swansea University WELCOME BACK Course Administration Contact Details Dr. Rita Borgo Home page: http://cs.swan.ac.uk/~csrb/

More information

Student Tech Guide. Get Help from the Information and Technology Solutions Center! link.mnsu.edu/studenttech. Big ideas. Real-world thinking.

Student Tech Guide. Get Help from the Information and Technology Solutions Center! link.mnsu.edu/studenttech. Big ideas. Real-world thinking. Student Tech Guide Get Help from the Information and Technology Solutions Center! Find this Student Tech Guide online at link.mnsu.edu/studenttech Big ideas. Real-world thinking. Get Started Your StarID

More information

Moodle is a virtual learning environment that allows you to access learning materials required for your module.

Moodle is a virtual learning environment that allows you to access learning materials required for your module. What is Moodle? Moodle is a virtual learning environment that allows you to access learning materials required for your module. At the start of term, you are normally automatically registered on your chosen

More information

Data Modelling and Databases. Exercise Session 2: Relational Model

Data Modelling and Databases. Exercise Session 2: Relational Model Data Modelling and Databases Exercise Session 2: Relational Model 1 Interactive Session Format You can watch others swim as often as you want. In the end, you can only learn it by doing it yourself. Alfons

More information

Architectural Principles

Architectural Principles Architectural Principles Brighten Godfrey cs598pbg August 31 2010 slides 2010 by Brighten Godfrey unless otherwise noted Today Clark: TCP / IP design philosophy Architectural principles Goals of the architecture

More information

No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6

No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6 Announcements No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6 Copyright c 2002 2017 UMaine School of Computing and Information S 1 / 33 COS 140:

More information

Programming (Econometrics)

Programming (Econometrics) Programming (Econometrics) Lecture 1: Introduction Tommi Tervonen Econometric Institute, Erasmus University Rotterdam Course learning objectives After this course, you should be able to: Program econometrical

More information

61A Lecture 7. Monday, September 15

61A Lecture 7. Monday, September 15 61A Lecture 7 Monday, September 15 Announcements Homework 2 due Monday 9/15 at 11:59pm Project 1 deadline extended, due Thursday 9/18 at 11:59pm! Extra credit point if you submit by Wednesday 9/17 at 11:59pm

More information

EECS 470 Lecture 13. Basic Caches. Fall 2018 Jon Beaumont

EECS 470 Lecture 13. Basic Caches. Fall 2018 Jon Beaumont Basic Caches Fall 2018 Jon Beaumont http://www.eecs.umich.edu/courses/eecs470 Slides developed in part by Profs. Austin, Brehob, Falsafi, Hill, Hoe, Lipasti, Shen, Smith, Sohi, Tyson, and Vijaykumar of

More information

CSC 1052 Algorithms & Data Structures II: Introduction

CSC 1052 Algorithms & Data Structures II: Introduction CSC 1052 Algorithms & Data Structures II: Introduction Professor Henry Carter Spring 2018 Programming This course... We will investigate a series of data structures and algorithms designed to solve common

More information

Networked Systems and Services, Fall 2018 Chapter 4. Jussi Kangasharju Markku Kojo Lea Kutvonen

Networked Systems and Services, Fall 2018 Chapter 4. Jussi Kangasharju Markku Kojo Lea Kutvonen Networked Systems and Services, Fall 2018 Chapter 4 Jussi Kangasharju Markku Kojo Lea Kutvonen Chapter Outline Overview of interprocess communication Remote invocations (RPC etc.) Persistence and synchronicity

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

Internet Protocols - ETSF05/ETSF10 - Jens Andersson, 2013 (Kaan Bür)

Internet Protocols - ETSF05/ETSF10 - Jens Andersson, 2013 (Kaan Bür) Internet Protocols - ETSF05/ETSF10 - Jens Andersson, 2013 (Kaan Bür) ETSF05/ETSF10 Internet Protocols http://www.eit.lth.se/course/etsf10 Obligatory for C2 students, 7 ½ of a total of 9 credits ETSF05

More information

NETWORKS AND SECURITY. Jacob Aae Mikkelsen

NETWORKS AND SECURITY. Jacob Aae Mikkelsen NETWORKS AND SECURITY Jacob Aae Mikkelsen 1 WHY THIS COURCE Globally: Lack 1.8 mil. IT security specialists by 2022 Denmark: Lack 19.000 it-professionels in 2030 especially in elds of security. https://erhvervsstyrelsen.dk/sites/default/

More information

Distributed Data Infrastructures, Fall 2017, Chapter 2. Jussi Kangasharju

Distributed Data Infrastructures, Fall 2017, Chapter 2. Jussi Kangasharju Distributed Data Infrastructures, Fall 2017, Chapter 2 Jussi Kangasharju Chapter Outline Warehouse-scale computing overview Workloads and software infrastructure Failures and repairs Note: Term Warehouse-scale

More information

Programming Languages and Techniques (CIS120)

Programming Languages and Techniques (CIS120) Programming Languages and Techniques (CIS120) Lecture 24 March 18, 2016 The Java ASM What is the value of ans at the end of this program? Counter[] a = { new Counter(), new Counter() ; Counter[] b = {

More information

Lecture 2: Internet Architecture

Lecture 2: Internet Architecture CS 3700 Networks and Distributed Systems Lecture 2: Internet Architecture Revised 1/6/14 Organizing Network Functionality 2 Organizing Network Functionality 2 Networks are built from many components! Networking

More information

CSC209. Software Tools and Systems Programming. https://mcs.utm.utoronto.ca/~209

CSC209. Software Tools and Systems Programming. https://mcs.utm.utoronto.ca/~209 CSC209 Software Tools and Systems Programming https://mcs.utm.utoronto.ca/~209 What is this Course About? Software Tools Using them Building them Systems Programming Quirks of C The file system System

More information

HOSTING A WEBINAR BEST PRACTICE GUIDE

HOSTING A WEBINAR BEST PRACTICE GUIDE HOSTING A WEBINAR BEST PRACTICE GUIDE Summary Short for web based seminars, webinars are online methods of communication which are transmitted over the internet and aimed to reach large audiences. A key

More information

Basics of datacommunication

Basics of datacommunication Data communication I Lecture 1 Course Introduction About the course Basics of datacommunication How is information transported between digital devices? Essential data communication protocols Insight into

More information

Peer-to-Peer Protocols and Data Link Layer. Chapter 5 from Communication Networks Leon-Gracia and Widjaja

Peer-to-Peer Protocols and Data Link Layer. Chapter 5 from Communication Networks Leon-Gracia and Widjaja Peer-to-Peer Protocols and Data Link Layer Chapter 5 from Communication Networks Leon-Gracia and Widjaja Peer-to-Peer Protocols At each layer two (or more) entities execute These are peer processes For

More information

CSC 148 Lecture 3. Dynamic Typing, Scoping, and Namespaces. Recursion

CSC 148 Lecture 3. Dynamic Typing, Scoping, and Namespaces. Recursion CSC 148 Lecture 3 Dynamic Typing, Scoping, and Namespaces Recursion Announcements Python Ramp Up Session Monday June 1st, 1 5pm. BA3195 This will be a more detailed introduction to the Python language

More information

Lecture 15: TCP over wireless networks. Mythili Vutukuru CS 653 Spring 2014 March 13, Thursday

Lecture 15: TCP over wireless networks. Mythili Vutukuru CS 653 Spring 2014 March 13, Thursday Lecture 15: TCP over wireless networks Mythili Vutukuru CS 653 Spring 2014 March 13, Thursday TCP - recap Transport layer TCP is the dominant protocol TCP provides in-order reliable byte stream abstraction

More information

Computer Communication EDA344, EDA343, DIT 420

Computer Communication EDA344, EDA343, DIT 420 CTH, GU Computer Science and Engineering Computer Communication EDA344, EDA343, DIT 420 Time and Place: Wednesday 16 March, 2016, 14.00-18.00 M Course Responsible: Marina Papatriantafilou (Tel: 772 5413),

More information

Answers to Sample Questions on Transport Layer

Answers to Sample Questions on Transport Layer Answers to Sample Questions on Transport Layer 1) Which protocol Go-Back-N or Selective-Repeat - makes more efficient use of network bandwidth? Why? Answer: Selective repeat makes more efficient use of

More information

CSE 373: Introduction, ADTs, Design Decisions, Generics. Michael Lee Wednesday Jan 3, 2017

CSE 373: Introduction, ADTs, Design Decisions, Generics. Michael Lee Wednesday Jan 3, 2017 CSE 373: Introduction, ADTs, Design Decisions, Generics Michael Lee Wednesday Jan 3, 2017 1 Overview Michael Lee (mlee42@cs.washington.edu) Currently working on a master s degree in Computer Science Supervised

More information

CISC 124: Introduction To Computing Science II

CISC 124: Introduction To Computing Science II CISC 124: Introduction To Computing Science II instructor: Margaret Lamb instructor's home page: www.cs.queensu.ca/home/malamb office: Goodwin 527 current office hours are always on my home page 1 Moodle

More information

HP Designing and Implementing HP Enterprise Backup Solutions. Download Full Version :

HP Designing and Implementing HP Enterprise Backup Solutions. Download Full Version : HP HP0-771 Designing and Implementing HP Enterprise Backup Solutions Download Full Version : http://killexams.com/pass4sure/exam-detail/hp0-771 A. copy backup B. normal backup C. differential backup D.

More information

Design and Analysis of Algorithms Prof. Madhavan Mukund Chennai Mathematical Institute. Week 02 Module 06 Lecture - 14 Merge Sort: Analysis

Design and Analysis of Algorithms Prof. Madhavan Mukund Chennai Mathematical Institute. Week 02 Module 06 Lecture - 14 Merge Sort: Analysis Design and Analysis of Algorithms Prof. Madhavan Mukund Chennai Mathematical Institute Week 02 Module 06 Lecture - 14 Merge Sort: Analysis So, we have seen how to use a divide and conquer strategy, we

More information

A Quick and Easy Guide To Using Canva

A Quick and Easy Guide To Using Canva A Quick and Easy Guide To Using Canva Canva is easy to use and has great tools that allow you to design images that grab anyone s eye. These images can be used on your personal website, Pinterest, and

More information

EEC-484/584 Computer Networks

EEC-484/584 Computer Networks EEC-484/584 Computer Networks Lecture 1 Wenbing Zhao wenbing@ieee.org (Lecture nodes are based on materials supplied by Dr. Louise Moser at UCSB and Prentice-Hall) What is Computer Network? A group of

More information

15-744: Computer Networking. L-1 Intro to Computer Networks

15-744: Computer Networking. L-1 Intro to Computer Networks 15-744: Computer Networking L-1 Intro to Computer Networks Outline Administrivia Layering 2 Who s Who? Professor: Srinivasan Seshan http://www.cs.cmu.edu/~srini srini@cmu.edu Office hours: Friday 4:00-5:00

More information

CMSC 322 Computer Networks Applications and End-To- End

CMSC 322 Computer Networks Applications and End-To- End CMSC 322 Computer Networks Applications and End-To- End Professor Doug Szajda CMSC 332: Computer Networks Announcements Project 2 has been posted and is due Monday, February 8 (No extension!) Homework

More information

TKT-2431 SoC design. Introduction to exercises

TKT-2431 SoC design. Introduction to exercises TKT-2431 SoC design Introduction to exercises Assistants: Exercises Jussi Raasakka jussi.raasakka@tut.fi Otto Esko otto.esko@tut.fi In the project work, a simplified H.263 video encoder is implemented

More information

CS 3516: Computer Networks

CS 3516: Computer Networks Welcome to CS 3516: Computer Networks Prof. Yanhua Li Time: 9:00am 9:50am M, T, R, and F Location: AK 219 Fall 2018 A-term 1 Some slides are originally from the course materials of the textbook Computer

More information

CS240: Programming in C

CS240: Programming in C CS240: Programming in C Lecture 1: Class overview. Cristina Nita-Rotaru Lecture 1/ Fall 2013 1 WELCOME to CS240 Cristina Nita-Rotaru Lecture 1/ Fall 2013 2 240 Team Instructor: Cristina Nita-Rotaru Special

More information

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste Outline 15-441 Computer Networking Lecture 18 TCP Performance Peter Steenkiste Fall 2010 www.cs.cmu.edu/~prs/15-441-f10 TCP congestion avoidance TCP slow start TCP modeling TCP details 2 AIMD Distributed,

More information

CPSC 441 COMPUTER NETWORKS MIDTERM EXAM

CPSC 441 COMPUTER NETWORKS MIDTERM EXAM CPSC 441 COMPUTER NETWORKS MIDTERM EXAM Department of Computer Science University of Calgary Professor: Carey Williamson March 7, 2018 This is a CLOSED BOOK exam. Textbooks, notes, laptops, personal digital

More information

CS4700/5700: Network fundamentals

CS4700/5700: Network fundamentals Cristina Nita-Rotaru CS4700/5700: Network fundamentals. 1: Organizing network functionality } Networks are built from many components } Networking technologies } Ethernet, Wifi, Bluetooth, Fiber Optic,

More information

Object-Oriented Programming CSCI-UA

Object-Oriented Programming CSCI-UA Object-Oriented Programming CSCI-UA 0470-001 Instructor: Thomas Wies Spring 2017 Class 1 - Introduction Object-oriented programming is an exceptionally bad idea which could only have originated in California.

More information

Telematics. 5rd Tutorial - LLC vs. MAC, HDLC, Flow Control, E2E-Arguments

Telematics. 5rd Tutorial - LLC vs. MAC, HDLC, Flow Control, E2E-Arguments 19540 - Telematics 5rd Tutorial - LLC vs. MAC, HDLC, Flow Control, E2E-Arguments Matthias Wa hlisch Department of Mathematics and Computer Science Institute of Computer Science 19. November, 2009 Institute

More information

CS603: Distributed Systems

CS603: Distributed Systems CS603: Distributed Systems Lecture 1: Basic Communication Services Cristina Nita-Rotaru Lecture 1/ Spring 2006 1 Reference Material Textbooks Ken Birman: Reliable Distributed Systems Recommended reading

More information

Lab Preparing for the ICND1 Exam

Lab Preparing for the ICND1 Exam Lab 9.6.6.1 Preparing for the ICND1 Exam Objectives: Determine what activities you can give up or cut back to make time to prepare for the exam. Create a schedule to guide your exam preparation. Schedule

More information

CSE/EE 461. Sliding Windows and ARQ. Last Time. This Time. We finished up the Network layer Internetworks (IP) Routing (DV/RIP, LS/OSPF)

CSE/EE 461. Sliding Windows and ARQ. Last Time. This Time. We finished up the Network layer Internetworks (IP) Routing (DV/RIP, LS/OSPF) CSE/EE 46 Sliding Windows and ARQ Last Time We finished up the Network layer Internetworks (IP) Routing (DV/RIP, LS/OSPF) It was all about routing: how to provide end-to-end delivery of packets. Application

More information

IT 220 Course Notes. Don Colton Brigham Young University Hawaii

IT 220 Course Notes. Don Colton Brigham Young University Hawaii IT 220 Course Notes Don Colton Brigham Young University Hawaii January 7, 2010 Contents 0 Preface 3 0.1 Why This Class?......................... 3 0.2 Expectations........................... 4 0.3 Basic

More information

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP CS 5520/ECE 5590NA: Network Architecture I Spring 2008 Lecture 13: UDP and TCP Most recent lectures discussed mechanisms to make better use of the IP address space, Internet control messages, and layering

More information

Lecture 17: Hash Tables, Maps, Finish Linked Lists

Lecture 17: Hash Tables, Maps, Finish Linked Lists ....... \ \ \ / / / / \ \ \ \ / \ / \ \ \ V /,----' / ^ \ \.--..--. / ^ \ `--- ----` / ^ \. ` > < / /_\ \. ` / /_\ \ / /_\ \ `--' \ /. \ `----. / \ \ '--' '--' / \ / \ \ / \ / / \ \ (_ ) \ (_ ) / / \ \

More information

Internet Content Distribution

Internet Content Distribution Internet Content Distribution Chapter 1: Introduction Jussi Kangasharju Chapter Outline Introduction into content distribution Basic concepts TCP DNS HTTP Outline of the rest of the course Kangasharju:

More information

ECE 435 Network Engineering Lecture 11

ECE 435 Network Engineering Lecture 11 ECE 435 Network Engineering Lecture 11 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 11 October 2018 Midterm on Tues Announcements 1 HW#4 Review maine.edu created? What is a

More information

61A Lecture 3. Friday, September 5

61A Lecture 3. Friday, September 5 61A Lecture 3 Friday, September 5 Announcements There's plenty of room in live lecture if you want to come (but videos are still better) Please don't make noise outside of the previous lecture! Homework

More information

Introduction to: The Architecture of the Internet

Introduction to: The Architecture of the Internet COMP 150-IDS: Internet Scale Distributed Systems (Spring 2016) Introduction to: The Architecture of the Internet Noah Mendelsohn Tufts University Email: noah@cs.tufts.edu Web: http://www.cs.tufts.edu/~noah

More information

Welcome to Moodle! How To Moodle

Welcome to Moodle! How To Moodle Welcome to Moodle! The MH Vicars School Moodle site is where you ll find all the online components of your Vicars curriculum. For the following year, this will include quizzes and access to multimedia

More information

Software Systems Architecture

Software Systems Architecture Course overview Theory Archetypes, architectural styles Models, structures and views Viewpoints Quality characteristics Application architecture Domain-specific architecture... Process Waterfall/iterative

More information

Object-oriented programming in C++

Object-oriented programming in C++ Object-oriented programming in C++ ELEC-A7151 Kick-off Pasi Sarolahti 11.9.2018 Agenda Course arrangements Introduction to materials and exercises Tools used in the course 11.9.2018 2 Your expectations

More information

Network Architecture

Network Architecture Unit 7 Network Architecture Acknowledgments: These slides were originally developed by Prof. Jean Walrand for EE122. The past and current EE122 instructors including Kevin Fall, Abhay Parekh, Shyam Parekh,

More information

CSCI 4250/6250 Fall 2013 Computer and Network Security. Instructor: Prof. Roberto Perdisci

CSCI 4250/6250 Fall 2013 Computer and Network Security. Instructor: Prof. Roberto Perdisci CSCI 4250/6250 Fall 2013 Computer and Network Security Instructor: Prof. Roberto Perdisci perdisci@cs.uga.edu CSCI 4250/6250 What is the purpose of this course? Combined Undergrad/Graduate Intro to Computer

More information

Remote Invocation. 1. Introduction 2. Remote Method Invocation (RMI) 3. RMI Invocation Semantics

Remote Invocation. 1. Introduction 2. Remote Method Invocation (RMI) 3. RMI Invocation Semantics Remote Invocation Nicola Dragoni Embedded Systems Engineering DTU Informatics 1. Introduction 2. Remote Method Invocation (RMI) 3. RMI Invocation Semantics From the First Lecture (Architectural Models)...

More information

Introduction Data Structures Nick Smallbone

Introduction Data Structures Nick Smallbone Introduction Data Structures Nick Smallbone Course organisation Lecturer: Nick Smallbone (me) nicsma@chalmers.se Course assistants: Nachiappan Valliappan (nacval@chalmers.se) Adi Hrustic (hrustic@student.chalmers.se)

More information

Al al-bayt University Prince Hussein Bin Abdullah College for Information Technology Computer Science Department

Al al-bayt University Prince Hussein Bin Abdullah College for Information Technology Computer Science Department Al al-bayt University Prince Hussein Bin Abdullah College for Information Technology Computer Science Department 0901212 Python Programming 1 st Semester 2014/2015 Course Catalog This course introduces

More information

Lecture 2: Layering & End-to-End

Lecture 2: Layering & End-to-End Lecture 2: Layering & End-to-End CSE 222A: Computer Communication Networks Alex C. Snoeren Thanks: Mike Freedman & Amin Vahdat Lecture 2 Overview Layering Application interface Transport services Discussion

More information

Object Oriented Programming

Object Oriented Programming Binnur Kurt kurt@ce.itu.edu.tr Istanbul Technical University Computer Engineering Department 1 Version 0.1.2 About the Lecturer BSc İTÜ, Computer Engineering Department, 1995 MSc İTÜ, Computer Engineering

More information