Networking and Internetworking 1

Similar documents
Networking and Internetworking 1

Networking and Internetworking

Internet Architecture and Experimentation

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

03 The Internet Model and TCP/IP

Outline. Inter-Process Communication. IPC across machines: Problems. CSCI 4061 Introduction to Operating Systems

Operating Systems. 16. Networking. Paul Krzyzanowski. Rutgers University. Spring /6/ Paul Krzyzanowski

Data and Computer Communications. Chapter 2 Protocol Architecture, TCP/IP, and Internet-Based Applications

Internet 최양희서울대학교컴퓨터공학부. MMlab 1

CPEG514 Advanced Computer Networks. Atef Abu Salim University of Nizwa Spring 2013/2014

Transport Layer. Gursharan Singh Tatla. Upendra Sharma. 1

CS3600 SYSTEMS AND NETWORKS

Computer Communication & Networks / Data Communication & Computer Networks Week # 03

Peer entities. Protocol Layering. Protocols. Example

Networking Applications

CPS221 Lecture: Layered Network Architecture

Concept Questions Demonstrate your knowledge of these concepts by answering the following questions in the space that is provided.

Introduction to Networks

NT1210 Introduction to Networking. Unit 10

Introduction to computer networking

CSE 123A Computer Networks

UDP, TCP, IP multicast

System Programming. Introduction to computer networks

Chapter 2 Network Models 2.1

b) Diverse forms of physical connection - all sorts of wired connections, wireless connections, fiber optics, etc.

Introduction to TCP/IP networking

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

Lecture 2. Computer Networks Models. Network Models 1-1

COMP750. Distributed Systems. Network Overview

ECE 650 Systems Programming & Engineering. Spring 2018

The Transmission Control Protocol (TCP)

Operating Systems CS 571

Internet Architecture and Experimentation

The OSI Model. Open Systems Interconnection (OSI). Developed by the International Organization for Standardization (ISO).

OSI Transport Layer. Network Fundamentals Chapter 4. Version Cisco Systems, Inc. All rights reserved. Cisco Public 1

SUBJECT: DATA COMMUNICATION AND NETWORK SEMESTER: V SEMESTER COURSE: BCA SUBJECT TEACHER: Dr.K.Chitra Assistant Professor, Department of Computer

Layering in Networked computing. OSI Model TCP/IP Model Protocols at each layer

Lecture-4. TCP/IP-Overview:

EITF25 Internet Techniques and Applications L7: Internet. Stefan Höst

ECE 650 Systems Programming & Engineering. Spring 2018

TCP/IP stack is the family of protocols that rule the current internet. While other protocols are also used in computer networks, TCP/IP is by far

ES623 Networked Embedded Systems

Guide to Networking Essentials, 6 th Edition. Chapter 5: Network Protocols

Chapter 2 Communicating Over the Network

TSIN02 - Internetworking

TCP/IP protocol suite

CSCI Computer Networks

Chapter 2 Network Models 2.1

Distributed Systems. 02. Networking. Paul Krzyzanowski. Rutgers University. Fall 2017

Network Layer (1) Networked Systems 3 Lecture 8

CS4700/CS5700 Fundaments of Computer Networks

CSCI-GA Operating Systems. Networking. Hubertus Franke

Module 2 Overview of Computer Networks

Module 2 Overview of. Computer Networks

TRANSMISSION CONTROL PROTOCOL. ETI 2506 TELECOMMUNICATION SYSTEMS Monday, 7 November 2016

Internetworking Models The OSI Reference Model

Lecture 17 Overview. Last Lecture. Wide Area Networking (2) This Lecture. Internet Protocol (1) Source: chapters 2.2, 2.3,18.4, 19.1, 9.

Network Model: Each layer has a specific function.

Chapter 7. Local Area Network Communications Protocols

The Data Link Layer. 32 PART I Networking Basics

The Client Server Model and Software Design

Network Protocols - Revision

Network Reference Models

Chapter 09 Network Protocols

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

Interconnecting Networks with TCP/IP. 2000, Cisco Systems, Inc. 8-1

Chapter 2 Network Architectures A global view

Outline. TCP/IP Internet

Part 1: Introduction. Goal: Review of how the Internet works Overview

TSIN02 - Internetworking

Networking Basics. EC512 Spring /15/2015 EC512 - Prof. Thomas Skinner 1

CS 428/528 Computer Networks Lecture 01. Yan Wang

Chapter 16 Networking

CMPE 80N: Introduction to Networking and the Internet

SC/CSE 3213 Winter Sebastian Magierowski York University CSE 3213, W13 L8: TCP/IP. Outline. Forwarding over network and data link layers

IP Address Assignment

4. The transport layer

Switching Networks (Fall 2010) EE 586 Communication and. August 27, Lecture 2. (modified by Cheung for EE586; based on K&R original) 1-1

Chapter -4 OSI Reference Model

Transport Layer (TCP/UDP)

infrared Disadvantage: 1. cannot use for long-range communication or outside a building due to sun s rays.

Connectionless and Connection-Oriented Protocols OSI Layer 4 Common feature: Multiplexing Using. The Transmission Control Protocol (TCP)

Lecture (03) Network Model

Chapter 1 Communication

ITEC 3800 Data Communication and Network. Introducing Networks

Chapter 12. Network Organization and Architecture. Chapter 12 Objectives Introduction Introduction

Part VI. Appendixes. Appendix A OSI Model and Internet Protocols Appendix B About the CD

Introduction to Protocols

6 Computer Networks 6.1. Foundations of Computer Science Cengage Learning

Introduction to Networking

OSI Transport Layer. objectives

CSCD 433/533 Advanced Networks

Reference Models. 7.3 A Comparison of the OSI and TCP/IP Reference Models

Defining Networks with the OSI Model. Module 2

Lecture 2: Internet Architecture

Lecture 2: Layering & End-to-End

Lecture (11) OSI layer 4 protocols TCP/UDP protocols

Introduction to Information Science and Technology 2017 Networking I. Sören Schwertfeger 师泽仁

ECE 435 Network Engineering Lecture 11

Computer Science 425 Distributed Systems CS 425 / ECE 428. Fall 2013

Transcription:

Networking and Internetworking 1 Today l Networks and distributed systems l Internet architecture xkcd

Networking issues for distributed systems Early networks were designed to meet relatively simple requirements from applications E.g., from ftp, email, remote login Recent uses and growth è higher demands on performance, scalability, reliability, Performance Time to access shared resources on a LAN is 1000x that to access local memory, but faster than local disk On the Internet RRT 5-500ms range 10-100x >> than a fast local network For Amazon 100ms extra latency ~1% sale loss * http://blog.gigaspaces.com/amazon-found-every-100ms-of-latency-cost-them-1-in-sales/ 2

Google Web search delay experiment Measure the impact of latency on user behavior A/B testing (randomly assigning users to experiment and control group), server-side delays 400ms extra latency, 0.74% fewer searches over time Impact of Post-header Delays Over Time daily searches per user relative to control -1% -0.8% -0.6% -0.4% -0.2% 0% 0.2% -0.44% actual trend -0.22% 200 ms delay 400 ms delay -0.36% -0.74% E. Shurman, J. Brutlag, http://goo.gl/hauenq wk1 wk2 wk3 wk4 wk5 wk6 3

Networking issues for distributed systems Scalability We ve seen the rate of growth the Internet was not designed for that scale, but yet must handle it Reliability Increased dependence è higher reliability Communication subsystems don t need to provide totally error-free communication (end-to-end argument) Security Large and more diverse user base and same increase dependency è Higher security demands network is first level of defense 4

Networking issues for distributed systems Mobility Addressing and routing schemes were developed before mobile devices and so are not well suited to it Quality of service Higher demands from real-time services Multicasting Internet use today is mostly for content distribution with a 1-tom and m-to-m communication pattern 5

Internet history late 1960s Computer resources were expensive, scientists needed access to them ARPA/DARPA effort to enable remote sharing 1969 the 4-node ARPANET UCLA, SRI, U. of Utah and UCSB By 1975 about 100 nodes Key decision: use packet switching 1970s packet switching over radio and satellite; Local Area Networks By late 1970s internetworks 6

Internet history - reorganization January 1983 ARPANET converted over to TCP/IP Basic building block Link Node Node More hosts? Wires for everyone or routers Routers act as switches routing messages between nodes Router Who manages these routers and links? A set of autonomous systems (AS) Internet ARPANET AS as the backbone 7

Internet history commercial operation 1986 US National Science Foundation takes over the backbone, NSFNET 1990 ARPANET goes away NSF encourages development of intermediate regional networks Three tiers: backbone, regional networks, enterprise networks 1989 first commercial ISP: World 1990 NSF turns NSFNET to a nonprofit organization Mid-1990s WWW, first graphical Web browser (1994) 8

Networking protocols Modern communication networks are packet switched Statistical multiplexing Simpler than circuit-switched (in plain old telephone service) If the network is overloaded Short bust: buffer, after that congestion control adjust rate until load matches resources Source 1 2 2 Router Host or local network 1 A Link B 2 2 C D 1 E 1 2 Destination 9

Networking protocols IPC is based on send/receive messages Message/packet transmission Message: logical unit of information Data transmission is in packets: transmission unit Restricted length: sufficient buffer storage, reduce hogging For communication to work, parties must agree on several things How does the receiver knows it got the last bit of a msg? How longs are integers? 10

Networking protocols Protocols set of rules and formats to use Sequence of messages to exchange Format of messages Implemented by pair of software modules on each end Typically arranged in layers protocol suite or stack Layering and modularity to handle complexity Up and down the stack As a message is Pass down, each layer adds a header (sometimes a trailer) On the receiver side the message is push upward with each layer stripping off and examining their own headers Ethernet header IP header TCP header HTTP header Application data (webpage) An example on the Web 11

Protocols in communication Protocol stacks: OSI and Internet Open Systems Interconnection model ISO OSI Seven layers, not used in practice but good for understanding Source Destination 7.Application 6.Presentation 5.Session 4.Transport 3.Network 2.Data 1.Physical Communication medium 12

Lower-level protocols Lower-level protocols, together implementing the basic functions of a computer network Physical deals with (standardizing) mechanical and electrical details Just send bits, how long as there are no errors, all is fine Data link groups bits into frames & ensure are correctly received Frames include checksums to check correctness Network describes how packet are routed from source to destination Most used network protocol Internet Protocol (IP) For many distributed systems, the lowest-level interface is that of the network layer 13

Transport and higher layers Transport protocols Transfer messages between clients, including breaking them into packets, controlling flow, etc. According to the OSI, three high-level layers Session provides dialog control and synchronization Control to keep track of who is currently talking To insert checkpoints in long transfers Presentation resolves differences in formats among sites Concern with the meaning of the transferred data to make resolving differences easier Application to meet the specs of a set of standard apps Originally intended to support a collection of standard network applications; now the container for all 14

A 5 break Details of Internet operation Addressing Routing Organization 15

Internet protocols Three higher layers è Just one Transport layer provides inter-process communication Transport address = net add + port Two key protocols TCP Transmission Control Protocol connection oriented, reliable stream communication UDP Universal Datagram protocol connectionless, unreliable datagram communication Network protocol provides communication host to host Link layer physically interface with communication medium Application Transport Network Link 16

Internet protocols IP Internet Protocol primary network layer protocol Best effort service unreliable, no guarantees Connection between a host and network is called interface Each interface has an address; format defined by IP; in IPv4 are 32b expressed as four decimals (165.124.180.20) IP addresses often grouped by their prefixes initial set of bits that all addresses in the group have in common e.g. 165.124.0.0/16 all addresses with first 16b equal to 165.124 Interface:165.124.180.20 host network 17

Internet protocols TCP Basic service a connection A communication channel between two hosts Service is provided to app, process to process Done by having both senders and receivers create end points: sockets Application read to/write from sockets Sockets ID are #s: IP + 16b number local to the host, port Port numbers below 1024 are well-known ports, reserved for standard services 18

The programmers view The TPC/IP from a programmers perspective Application TCP Application UDP IP Application services and application-level protocols based on TCP/IP Web HTTP Email SMTP, POP Netnews NNTP File transfer FTP HTTP HTTPS: HTTP over TLS TCP IP HTTP TLS Transport Layer Security 19

IP communication model and some fixes IP model Messages may be lost, reo-ordered, corrupted Can you build a reliable, in-order, mostly noncorruption, stream-oriented communication service? Data corruption add checksums Lost data timeout and retry Data out of order Add sequence numbers 20

Internet protocols TCP API provides abstraction of a stream of bytes, hiding Message sizes and destination Lost messages, duplication and ordering Flow control General approach to reliability acknowledgement After sending each segment, source sets timer waiting for ack Congestion avoidance TCP will try to match the speed of the processes reading from/writing to the stream Implemented by varying number of un-acknowledged packets the sender allows (window size) 21

Internet protocols UDP As TCP, process to process communication A transport-level replica of IP UDP datagram is encapsulated inside a IP packet Short header includes source and destination port #s, length field and checksum 0 15 16 31 Source port # Destination port # UDP length UDP checksum Data (if any) UDP adds no additional reliability to IP No guarantee of delivery (no acks or retries) Too large messages are truncated on arrival Messages may be drop or delivered out of order No setup costs, no transmission delays above IP 22

Routing messages needs addresses Challenge of Internet protocol design: naming and addressing scheme and routing Scheme for assigning addresses has to be Universal any host can send packets to any other Use address space efficiently no idea of eventual size 2 32 or ~4 billion addressable hosts sounds like enough?!? Enable flexible routing but addresses themselves shouldn t carry much information for routing Most of the Internet still on IP version 4 (IPv4) 23

Domain names Hard to remember IPs, some mechanism for using symbolic names (and mapping them) Naming for the Internet before 1983 Each computer retrieved HOST.TXT from a computer at SRI Legacy a host file still exist in most modern OS DNS by Paul Mockapetris (1983) Names organized into name spaces Name space partitioned organizationally and geographically A distributed system implements the hierarchical name space Each server holds a partial map of the domain name tree bellow their domain Lots of caching! www.eecs.northwestern.edu? Local DNS 129.105.8.227 24

Routing in the Internet A packet placed in the network must be forward to its destination as specified in its packet s header Routers decide outgoing interface for each packet Decision is called routing Placing it in the appropriate outgoing interface forwarding Set of links used packet s path For routing, routers must keep information on the configuration and state of the network Update state of links (added, removed, failed router, ) 25

Routing example Routing is a graph theory problem find the lowestcost path between two nodes Routing Information Protocol (RIP) Highly popular, distributed with BSD Unix Based on distance vector algorithm (Bellman-Ford) Router s routing table A record for each destination Fields: outgoing link, cost (e.g. hop count) A link that is down has an cost Routers send table summary periodically (30s) or when an update from other routers changes its tab Distance vector router talks only to its neighbors, but tells them everything it has learned 26

Routing example Routing Table for B Routing Table for A To Link Cost A Local 0 B 1 1 C 1 2 D 3 1 E 1 2 Routing Table for D To Link Cost A 3 1 B 3 2 C 6 2 D Local 0 Source A 3 D 6 1 4 E B 5 2 C To Link Cost A 1 1 B Local 0 C 2 1 D 1 2 E 4 1 Routing Table for C To Link Cost A 2 2 B 2 1 E 6 1 Routing Table for E To Link Cost A 4 2 Destination C Local 0 D 5 2 E 5 1 B 4 1 C 5 1 D 6 1 E Local 0 27

Summary Distributed systems use different networks for communication Changes in user requirements have placed new demands on the underlying networks At the same time, the characteristics of networks (e.g., performance, reliability, scalability) impact the behavior of and affect the design of distributed systems Next: some operational issues and network principles 28