CSE 486/586, Spring 2014 CSE 486/586 Distributed Systems The Internet in 2 Hours: The First Hour Steve Ko Computer Sciences and Engineering University.

Slides:



Advertisements
Similar presentations
CSE 486/586, Spring 2014 CSE 486/586 Distributed Systems Reliable Multicast Steve Ko Computer Sciences and Engineering University at Buffalo.
Advertisements

Cs/ee 143 Communication Networks Chapter 6 Internetworking Text: Walrand & Parekh, 2010 Steven Low CMS, EE, Caltech.
OSI MODEL Maninder Kaur
CSE 486/586, Spring 2014 CSE 486/586 Distributed Systems The Internet in 2 Hours: The Second Hour Steve Ko Computer Sciences and Engineering University.
The Design Philosophy of the DARPA Internet Protocols [Clark 1988] Nick McKeown CS244 Lecture 2 Architecture and Principles.
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Byzantine Fault Tolerance Steve Ko Computer Sciences and Engineering University at Buffalo.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
PROTOCOLS AND ARCHITECTURE Lesson 2 NETS2150/2850.
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems The Internet in 2 Hours: The First Hour Steve Ko Computer Sciences and Engineering University.
The Design Philosophy of the DARPA Internet Protocols D. D. Clark.
Design Philosophy of the DARPA Internet Protocols CSCI 634, Fall 2010.
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Logical Time Steve Ko Computer Sciences and Engineering University at Buffalo.
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems The Internet in 2 Hours: The Second Hour Steve Ko Computer Sciences and Engineering University.
Protocol Architecture The “Common Language”. Copyright by Jorg Liebeherr 98, 99 Need for Protocols Protocols are a set of rules and conventions. By enforcing.
 The Open Systems Interconnection model (OSI model) is a product of the Open Systems Interconnection effort at the International Organization for Standardization.
OIS Model TCP/IP Model.
Lecture slides prepared for “Business Data Communications”, 7/e, by William Stallings and Tom Case, Chapter 8 “TCP/IP”.
Fundamentals of Computer Networks ECE 478/578 Lecture #2 Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University of Arizona.
Communication Network Protocols ----Krishna Priyanka Chebrolu.
CSE 486/586, Spring 2013 CSE 486/586 Distributed Systems Logical Time Steve Ko Computer Sciences and Engineering University at Buffalo.
Protocols and the TCP/IP Suite Chapter 4. Multilayer communication. A series of layers, each built upon the one below it. The purpose of each layer is.
Information-Centric Networks02a-1 Week 2 / Paper 1 The Design Philosophy of the DARPA Internet Protocols –David D. Clark –ACM CCR, Vol. 18, No. 4, August.
Computer Network Fundamentals CNT4007C
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
What is a Protocol A set of definitions and rules defining the method by which data is transferred between two or more entities or systems. The key elements.
Protocol Architectures. Simple Protocol Architecture Not an actual architecture, but a model for how they work Similar to “pseudocode,” used for teaching.
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University 1 COMP/ELEC 429/556 Introduction to Computer Networks Overview Some slides used with permissions.
Protocols and the TCP/IP Suite
Computer Networks CEN 5501C Spring, 2008 Ye Xia (Pronounced as “Yeh Siah”)
Layer Architecture Layer architecture simplifies the network design. It is easy to debug network applications in a layered architecture network. The network.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Lecture 1 Advance Topics in Networking.
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Distributed Shared Memory Steve Ko Computer Sciences and Engineering University at Buffalo.
Network Architecture: Design Philosophies IS250 Spring 2010 John Chuang
Introduction1-1 Data Communications and Computer Networks Chapter 1 CS 3830 Lecture 1 Omar Meqdadi Department of Computer Science and Software Engineering.
William Stallings Data and Computer Communications
CSE 486/586, Spring 2013 CSE 486/586 Distributed Systems Global States Steve Ko Computer Sciences and Engineering University at Buffalo.
CSE 486/586 CSE 486/586 Distributed Systems Android Programming Steve Ko Computer Sciences and Engineering University at Buffalo.
CSE 486/586 CSE 486/586 Distributed Systems Byzantine Fault Tolerance Steve Ko Computer Sciences and Engineering University at Buffalo.
Communication Architecture and Network Protocol Layering Networks and Protocols Prepared by: TGK First Prepared on: Last Modified on: Quality checked by:
CSE 486/586, Spring 2014 CSE 486/586 Distributed Systems Android Programming Steve Ko Computer Sciences and Engineering University at Buffalo.
CSE 486/586 CSE 486/586 Distributed Systems Global States Steve Ko Computer Sciences and Engineering University at Buffalo.
CSE 486/586, Spring 2013 CSE 486/586 Distributed Systems Byzantine Fault Tolerance Steve Ko Computer Sciences and Engineering University at Buffalo.
Computer Networks CNT5106C
1 Network Architecture Section Network Architecture Challenge –Fill the gap between hardware capabilities and application expectations, and to.
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Paxos Steve Ko Computer Sciences and Engineering University at Buffalo.
CSE 486/586, Spring 2013 CSE 486/586 Distributed Systems The Internet in 2 Hours: The First Hour Steve Ko Computer Sciences and Engineering University.
CSE 486/586, Spring 2014 CSE 486/586 Distributed Systems Logical Time Steve Ko Computer Sciences and Engineering University at Buffalo.
Lecture # 02 Network Models Course Instructor: Engr. Sana Ziafat.
The Design Philosophy of the DARPA Internet Protocols [Clark 1988] Nick McKeown CS244 Lecture 2.
CSE 486/586, Spring 2014 CSE 486/586 Distributed Systems Paxos Steve Ko Computer Sciences and Engineering University at Buffalo.
Spring Ch 17 Internetworking Concepts, Architecture, and Protocols Part III Internetworking.
What is a Protocol A set of definitions and rules defining the method by which data is transferred between two or more entities or systems. The key elements.
CSE 486/586 Distributed Systems Gossiping
Computer Network Fundamentals CNT4007C
CSE 486/586 Distributed Systems Reliable Multicast --- 1
Steve Ko Computer Sciences and Engineering University at Buffalo
Computer Networks CNT5106C
Steve Ko Computer Sciences and Engineering University at Buffalo
CSE 486/586 Distributed Systems Android Programming --- 2
Steve Ko Computer Sciences and Engineering University at Buffalo
Lecturer, Department of Computer Application
Understanding the OSI Reference Model
Data and Computer Communications by William Stallings Eighth Edition
Computer Networks CNT5106C
Computer Networks CNT5106C
The Design Philosophy of the DARPA Internet Protocols [Clark 1988]
Steve Ko Computer Sciences and Engineering University at Buffalo
CSE 486/586 Distributed Systems Byzantine Fault Tolerance
Steve Ko Computer Sciences and Engineering University at Buffalo
Presentation transcript:

CSE 486/586, Spring 2014 CSE 486/586 Distributed Systems The Internet in 2 Hours: The First Hour Steve Ko Computer Sciences and Engineering University at Buffalo

CSE 486/586, Spring 2014 Recap Please make an effort to come to every class. Please do the work yourself and get permissions for other sources. Also, acknowledge them. Please check if you have the background by doing PA1 all by yourself. This course is about: –Introducing common problems that arise when building a distributed system –Discussing algorithms, architectures, and abstractions that solve those problems –Practicing how to adapt those algorithms and concepts 2

CSE 486/586, Spring 2014 Today and Next A brief overview of the Internet Two things –The design philosophy of the Internet (“The Design Philosophy of the DARPA Internet Protocols” by David Clark): today –Transport & application layers: next lecture Obviously can’t replace a networking course; this should be just a recap for you. Why teach these? –Because I want to ;-) –If there’s no network, there’s no distributed system. –Not just that: the design of the Internet is a great example of designing a solid distributed system. 3

CSE 486/586, Spring 2014 What Is the Internet?

CSE 486/586, Spring 2014 What Is the Internet?

CSE 486/586, Spring 2014 What Is the Internet? Now A network of networks The fundamental goal of the original designers: interconnecting different networks by designing common protocols 6

CSE 486/586, Spring Detour: What is a Protocol? Example: making an appointment Well…I think we need a better way… Please meet with me for 1.5 hours starting at 1:30pm on February 8, 2006? I can’t. Yes! Please meet with me for 1.5 hours starting at 3:00pm on February 8, 2006? Please meet with me for 1.5 hours starting at 4:30pm on February 8, 2006?

CSE 486/586, Spring Detour: What Is a Protocol? Bob: When are you free to meet for 1.5 hours during the next two weeks? Alice: 10:30am on Feb 8 and 1:15pm on Feb 9. Bob: Book me for 1.5 hours at 10:30am on Feb 8. Alice: Yes.

CSE 486/586, Spring Detour: What is a Protocol? An agreement between entities in communication –Two things: 1) syntax, 2) semantics Syntax –What language? –What’s the time format? Granularity? –Etc. Semantics –If broken into pieces, how do you reassemble? –If a msg gets lost, what do you do? –If you get a msg, what do you do? –Etc.

CSE 486/586, Spring 2014 Returning back: What Is the Internet? A network of networks The fundamental goal of the original designers: interconnecting different networks by designing common protocols 10

CSE 486/586, Spring 2014 CSE 486/586 Administrivia Once again, no recitations. –I think office hours are much more effective. PA 1 is out. Please try it yourself. Please use Piazza; all announcements will go there. –Anonymous/private posting: generally questions are beneficial to the whole class; please consider posting it publicly first. Please come to my office during the office hours! –Give feedback about the class, ask questions, etc. Extra credit for good code styles. –Everyone will get a chance. –We will randomly pick one out of PA2 – PA4 and examine the style. –Use the Android code style guideline posted on Piazza. 11

CSE 486/586, Spring 2014 Building the Internet Why care? –Now: you might be just doing what’s given to you. –Later: you will likely define what you want to do and do it. Internet as a case study of a distributed system –Put a designer’s hat on for a moment. Questions to think about: –Why? i.e., why do we want to connect computers? –What is the ideal outcome? i.e., what do we want? –How do we do that? 12

CSE 486/586, Spring 2014 Why and What Why –“The whole can be greater than the sum of its parts” What –Internet communication must continue despite loss of networks or gateways. –The Internet must support multiple types of communications service. –The Internet architecture must accommodate a variety of networks. –The Internet architecture must permit distributed management of its resources. –The Internet architecture must be cost effective. –The Internet architecture must permit host attachment with a low level of effort. –The resources used in the Internet architecture must be accountable. 13

CSE 486/586, Spring 2014 How to Interconnect? There were many types of networks based on various physical media. –Coax, radio, satellite, etc. The original designers wanted to interconnect those somehow. A potential solution –Designing a “multi-media” network (e.g., via physical signal translator for various physical media) Solution chosen? –Hint: “All problems in computer science can be solved by another level of indirection.” --- David Wheeler –Connecting by layering with packet switching –(We will not cover packet switching vs. circuit switching) 14

CSE 486/586, Spring Layering: A Modular Approach Sub-divide the problem –Each layer relies on services from layer below –Each layer exports services to layer above Interface between layers defines interaction –Hides implementation details –Layers can change without disturbing other layers “The” computer science approach –ISA, OS, networking… Link hardware Host-to-host connectivity Application-to-application channels Application

CSE 486/586, Spring 2014 Challenges in Layering What to put on top of physical networks? Assumption (for the sake of the discussion): –Packet switching (a conversation is divided into smaller units called packets). Basic things for enabling a conversation between remote hosts: –Addressing (where do I send a msg?) –Routing (how do I reach that address?) Most importantly, survivability –Protection of a conversation as long as there’s a physical path between entities communicating and they are alive. What are some of the threats that disrupt a conversation? –Packet loss, out-of-order delivery, duplicate packets, etc. 16

CSE 486/586, Spring 2014 We Must Ask Ourselves… In a conversation, there are two components involved –Hosts –Network So, one more question: where do we want to put the functionalities? More specifically, what would be a good network/host division of labor? Addressing and routing? –Yeah, probably in the network What about conversation protection mechanisms? –The network or hosts? 17

CSE 486/586, Spring 2014 Summary The Internet –A network of networks –A case study as a distributed system Protocol –An agreement between multiple parties –Syntax & semantics Design a system –Why, what, and how The Internet –Connecting by layering 18

CSE 486/586, Spring Acknowledgements These slides contain material developed and copyrighted by –Indranil Gupta at UIUC –Mike Freedman and Jen Rexford at Princeton