Lecture 7: Internetworking See Chapter 3 of Colouris

Similar documents
Slides for Chapter 3: Networking and Internetworking

Lecture 04: Networking & Internetworking

Operating Systems CS 571

Module 2 Overview of Computer Networks

Module 2 Overview of. Computer Networks

Recap. Requirements of Networks. Overview of the lecture LAN. Types of Networks. Lecture 03: Networking

1: Review Of Semester Provide an overview of encapsulation.

COMPONENTS OF DATA COMMUNICATION

Guide to Networking Essentials, 6 th Edition. Chapter 6: Network Reference Models and Standards

Distributed Systems. 7. Network Layer. Werner Nutt

Data & Computer Communication

Computer Communications and Network Basics p. 1 Overview of Computer Communications and Networking p. 2 What Does Computer Communications and

Communicating over the Network

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

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

Lecture 11: Networks & Networking

Chapter 16 Networking

Chapter 2 Communicating Over the Network

Networking and Health Information Exchange: ISO Open System Interconnection (OSI)

TCOM 370 NOTES 99-1 NETWORKING AND COMMUNICATIONS

Networking and Health Information Exchange Unit 1a ISO Open Systems Interconnection (OSI) Slide 1. Slide 2. Slide 3

CHAPTER 17 - NETWORK AMD DISTRIBUTED SYSTEMS

CHAPTER -1. Introduction to Computer Networks

CCENT Practice Certification Exam # 2 - CCNA Exploration: Accessing the WAN (Version 4.0)

Revision of Previous Lectures

CS 5523 Operating Systems: Network

CIS 551 / TCOM 401 Computer and Network Security. Spring 2007 Lecture 8

Chapter 7. Local Area Network Communications Protocols

Fundamental Issues. System Models and Networking Chapter 2,3. System Models. Architectural Model. Middleware. Bina Ramamurthy

Raj Jain. The Ohio State University Columbus, OH

E&CE 358: Tutorial 1. Instructor: Sherman (Xuemin) Shen TA: Miao Wang

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

Router Router Microprocessor controlled traffic direction home router DSL modem Computer Enterprise routers Core routers

Cisco Cisco Certified Network Associate (CCNA)

Networks. Other Matters: draft Assignment 2 up (Labs 7 & 8 v. important!!) Ref: [Coulouris&al Ch 3, 4] network performance and principles

DATA COMMUNICATION AND NETWORKS

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

TCP/IP THE TCP/IP ARCHITECTURE

Navpreet Singh INTRODUCTION TO COMPUTER NETWORKS. Computer Centre Indian Institute of Technology Kanpur Kanpur INDIA

Identify the features of network and client operating systems (Windows, NetWare, Linux, Mac OS)

Chapter 3. Underlying Technology. TCP/IP Protocol Suite 1 Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

A+ Guide to Software: Managing, Maintaining, and Troubleshooting, 5e. Chapter 8 Networking Essentials

Chapter 2. Communicating Over The Network. CCNA1-1 Chapter 2

The Internet software layers

TCP/IP Protocol Suite and IP Addressing

Objectives. Network Structure. Network Structure

MTA_98-366_Vindicator930

CS118 Discussion 1A, Week 9. Zengwen Yuan Dodd Hall 78, Friday 10:00 11:50 a.m.

CCNA Exploration1 Chapter 7: OSI Data Link Layer

Network Model. Why a Layered Model? All People Seem To Need Data Processing

1. IPv6 is the latest version of the TCP/IP protocol. What are some of the important IPv6 requirements?

Communication Networks - 3 general areas: data communications, networking, protocols

Lecture-4. TCP/IP-Overview:

Introduction to Networking

Networking interview questions

Introduction to LAN Protocols

FINAL EXAM REVIEW PLEASE NOTE THE MATERIAL FROM LECTURE #16 at the end. Exam 1 Review Material

KillTest ᦝ䬺 䬽䭶䭱䮱䮍䭪䎃䎃䎃ᦝ䬺 䬽䭼䯃䮚䮀 㗴 㓸 NZZV ]]] QORRZKYZ PV ٶ瀂䐘މ悹伥濴瀦濮瀃瀆ݕ 濴瀦

Mobile MOUSe ROUTING AND SWITCHING FUNDAMENTALS ONLINE COURSE OUTLINE

M242 COMPUTER NETWORS AND SECURITY

Significance of TCP/IP Model Divya Shree Assistant Professor (Resource Person), Department of computer science and engineering, UIET, MDU, Rohtak

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

IT4405 Computer Networks (Compulsory)

Chapter 2. Communicating Over The Network

ITP 140 Mobile Applications Technologies. Networks

Computer Network Fundamentals (IT 221)

Objectives. Learn how computers are connected. Become familiar with different types of transmission media

ROYAL INSTITUTE OF INFORMATION & MANAGEMENT

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

Defining Networks with the OSI Model. Module 2

IT 4504 Section 4.0. Network Architectures. 2008, University of Colombo School of Computing 1

Introduction to computer networking

ITP 140 Mobile Applications Technologies. Networks

Data Communication and Network. Introducing Networks

King Fahd University of Petroleum and Minerals College of Computer Sciences and Engineering Department of Computer Engineering

Dr./ Ahmed Mohamed Rabie Sayed

ITEC 3800 Data Communication and Network. Introducing Networks

OSI Reference Model. Computer Networks lab ECOM Prepared By : Eng. Motaz Murtaja Eng. Ola Abd Elatief

OSI Layer OSI Name Units Implementation Description 7 Application Data PCs Network services such as file, print,

( A ) 1. WAP is a (A) protocol (B) hardware (C) software (D) network architecture

VoIP / RoIP for Technicians

Wireless-G Router User s Guide

Data Transmission and Home Networks. Gralla: part 2

Module 11. OSI Model, Network Devices, and Network Standards

OSI and TCP/IP Models

Solved MCQ of Computer networking. Set-1

Slides for Chapter 3: Networking and Internetworking

Networking Fundamentals

ELC 537 Communication Networks

Link Layer and Ethernet

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

Copyleft 2005, Binnur Kurt. Objectives

Business Data Communications and Networking

Computer Networks. More on Standards & Protocols Quality of Service. Week 10. College of Information Science and Engineering Ritsumeikan University

This course prepares candidates for the CompTIA Network+ examination (2018 Objectives) N

University of Southern California EE450: Introduction to Computer Networks

Study Guide. Module Two

5105: BHARATHIDASAN ENGINEERING COLLEGE NATTARMPALLI UNIT I FUNDAMENTALS AND LINK LAYER PART A

CARRIER SENSE MULTIPLE ACCESS (CSMA):

Outline: Connecting Many Computers

Transcription:

95-702 Distributed Systems Lecture 7: Internetworking See Chapter 3 of Colouris

Learning Goals Preamble: MISM and MSIT grads may need to plan, develop, and manage distributed systems. These distributed systems run on networks and internetworks. Therefore they need to understand their basic operation, the most prevalent of which is the Internet. Therefore, today s learning goals are to:. Be comfortable with terminology used concerning the Internet 2. Understand the role of protocols, and the layering of protocols, in the architecture of the Internet. And how this layering provides levels of abstraction below which a developer need not be (too) concerned. 3. Understand the basic functionality of how packets of information travel between one system and another. This will inform design and configuration choices in building and maintaining systems. 4. Understand IP addressing. 2

Basics When we speak of a network we will be speaking about a single technology network (Ethernet, Token Ring, ATM, Point to Point, WaveLan, etc.) An internetwork is an interconnected collection of such networks. The Internet Protocol (IP) is the key toll used today to build scalable, heterogeneous internetworks 3

Conceptual Layering of Protocol Software Message sent Message received Layer n Layer 2 Layer Sender Communication medium Recipient 4

Encapsulation as it is Applied in Layered Protocols Application-layer message Presentation header Session header Transport header Network header 5

Protocol Layers in the ISO Open Systems Interconnection (OSI) Layers Application Presentation Session Transport Network Data link Message sent Model Message received Physical Sender Communication medium Recipient 6

OSI Protocol Summary Layer Description Examples Application Protocols that are designed to meet the communication requirements of HTTP, FTP, SMTP, specific applications, often defining the interface to a service. CORBA IIOP Presentation Protocols at this level transmit data in a network representation that is Secure Sockets independent of the representations used in individual computers, which may (SSL),CORBA Data differ. Encryption is also performed in this layer, if required. Rep. Session At this level reliability and adaptation are performed, such as detection of SIP failures and automatic recovery. Transport This is the lowest level at which messages (rather than packets) are handled. TCP, UDP Messages are addressed to communication ports attached to processes, Protocols in this layer may be connection-oriented or connectionless. Network Data link Physical Transfers data packets between computers in a specific network. In a WAN or an internetwork this involves the generation of a route passing through routers. In a single LAN no routing is required. Responsible for transmission of packets between nodes that are directly connected by a physical link. In a WAN transmission is between pairs of routers or between routers and hosts. In a LAN it is between any pair of hosts. The circuits and hardware that drive the network. It transmits sequences of binary data by analogue signalling, using amplitude or frequency modulation of electrical signals (on cable circuits), light signals (on fibre optic circuits) or other electromagnetic signals (on radio and microwave circuits). IP, ATM virtual circuits Ethernet MAC, ATM cell transfer, PPP Ethernet base- band signalling, ISDN 7

TCP or UDP Over IP Layers Message Application Transport Internet Network interface Underlying network Messages (UDP) or Streams (TCP) UDP or TCP packets IP datagrams Network-specific frames 8

TCP and UDP Quick Notes TCP is stream based, connection oriented and stateful. The TCP message sender gets acknowledgements. This makes it a reliable protocol. TCP plays nice with others. If problems are detected it backs off by ½. If no problems it ramps up by. UDP uses datagrams and does not establish a connection. UDP fires and forgets. UDP does not necessarily play nice. If problems occur UDP is not even aware. UDP can be made reliable by the application. Require acknowledgements and do retries when acknowledgements do not arrive in time. UDP also allows for broadcasting messages to many hosts. If you are willing to occasionally lose some bits and need high performance, UDP is a strong candidate. 9

Encapsulation in a Message Transmitted via TCP over an Ethernet Application message TCP header port IP header TCP Ethernet headerip Ethernet frame 0

The Programmer's Conceptual View of a TCP/IP Internet Transport Control Protocol User Datagram Protocol Application TCP Application UDP IP

IP Packet Layout header IP address of source IP address of destination up to 64 kilobytes data 2

IEEE 802 Network Standards IEEE No. Title Reference 802.3 CSMA/CD Networks (Ethernet)[IEEE 985a] 802.4 Token Bus Networks [IEEE 985b] 802.5 Token Ring Networks [IEEE 985c] 802.6 Metropolitan Area Networks [IEEE 994] 802. Wireless Local Area Networks [IEEE 999] 3

Example Internetwork H7 H8 H H2 H3 Network (Ethernet) Network 2 (Ethernet) Router R3 Router R Network 4 (point to point link) H4 Router R2 H5 Network 3 (FDDI Token Ring) H6 Suppose H wants to send a message to H8. 4

H To H8 TCP IP H IP R R2 R3 IP IP TCP IP H8 ETH ETH FDDI FDDI PPP PPP ETH ETH Protocol Layering 5

IP Requires that lower level protocols provide services And therefore was designed to be undemanding In this way, IP can make use of a wide variety of underlying networks 6

IP Has an addressing scheme which identifies each host on the internetwork Has a best effort datagram delivery model Could be run over carrier pigeons Many of the technologies that IP runs on were invented well after IP was defined. 7

Addressing Every Ethernet device has a network adapter with a 48-bit globally unique ID. Each manufacturer is assigned 24 bits. The other 24 bits are assigned by the manufacturer. These addresses have little structure and provide very few clues as to their location. IP addresses have a network part and a host part. Suppose H has the IP address of H8 8

Has the IP address of H8 H H2 Network 2 (Ethernet) H3 Router R Has a fixed Ethernet address as well as an IP address for its network interface H7 H8 Network (Ethernet) Each host on this network has the same IP network address and a different host IP address Router R3 This interface has the same IP network address as H8 H4 H5 Network 3 (Token Ring) H6 Router R2 These interfaces have the same IP network address as H6 These interfaces have the same IP network address because they are on the same network 9

IP Addressing Every IP datagram contains the IP address of the destination host. The network part of an IP address uniquely identifies a single physical network that is part of the larger Internet. All hosts and routers that share the same network part of their address are connected to the same physical network and can thus communicate with each other by sending frames over the network. Every physical network that is part of the Internet has at least one router that, by definition, is also connected to at least one other physical network; this router can exchange packets with hosts or routers on either network. 20

H has the IP address of H8. Does H8 have the same network part address as my interface? No, so choose the router. H H2 Network 2 (Ethernet) H3 H7 H8 Network (Ethernet) Router R Router R3 H4 Router R2 H5 Network 3 (Token Ring) H6 2

H has the IP address of H8. Does H8 have the same network part address as my interface? No, so choose the router. H H2 Network 2 (Ethernet) H3 But, how is this decision made? Suppose this is a /24 network. Router R The leftmost 24 bits represent the network identifier. The remaining 8 bits represent the 2^8 hosts. Therefore, H has a subnet mask of 255.255.255.0. H performs a bitwise and of the subnet mask with H8 s 32-bit IP address. If the result does not match H s network Identifier then H8 is a foreign machine. 22

H H2 The message is sent to R. H7 H8 H3 Network (Ethernet) Network 2 (Ethernet) R now has the IP address of H8. Does H8 have the same network part address as any of R s interfaces? No, so choose the router R2. Router R Router R3 H4 Router R2 H5 Network 3 (Token Ring) H6 23

H H2 H3 The message is sent to R2. H7 H8 Network (Ethernet) Network 2 (Ethernet) Router R Router R3 H4 H5 Network 3 (Token Ring) H6 Router R2 R2 has the IP address of H8. Does H8 have the same network part address as any of my interfaces? No, so choose the best router - R3. 24

H H2 H3 Network 2 (Ethernet) Router R H7 H8 Network (Ethernet) R3 has the IP address of H8. Does H8 have the same network part address as any of R3 s interfaces? Yes, so find its Ethernet address via ARP and send the packet. Router R3 H4 Router R2 H5 Network 3 (Token Ring) H6 25

ARP Address Resolution Protocol The IP address needs to be translated to a link level address that is specific to the particular type of network. For example, Ethernet addresses are 48 bits. We must find the 48 bits associated with an IP address. Suppose a letter arrives at camp addressed to Billy. How does Billy get the letter? 26

Without ARP Without ARP, each host might hold a table of pairs: (IP address, Particular network address) (Billy, Bunk #4) If a host or router needs to reach a particular IP in its network it simply looks up the physical address in the table. This letter is for Billy and we do a lookup to find his bunk number. 27

ARP But hosts might come and go. Billy might change bunks often. Each host dynamically builds up a table of mappings between IP addresses and link level addresses. The ARP cache times out every 5 minutes or so and construction begins anew. 28

ARP Host A wants to contact host B on the same network. First, A checks its cache to see if it already contains the IP address, physical address pair. If it does then use the physical address. If it does not then broadcast the IP address to all hosts on this network. The matching host sends back its physical address. A then adds this mapping to its cache. Other hosts on the network will see this interaction and build tables of their own. 29

H has H2 s IP address. It finds H2 s physical address with ARP. H7 H8 H H2 H3 Network (Ethernet) Network 2 (Ethernet) Router R Router R3 H4 Router R2 H5 Network 3 (Token Ring) H6 30

DHCP Dynamic Host Configuration Protocol Ethernet addresses are globally unique and fixed during the manufacture of Ethernet devices. IP addresses cannot be configured once into a host. The IP address has a network part and a host part. (You could never move the host to a different network!) Devices need IP addresses and the address of the default router. 3

DHCP A DHCP server provides configuration information to hosts. But how does the host find a DHCP server? Service discovery: The host broadcasts a DHCPDISCOVER over UDP/IP and the DHCP server sends back a leased IP address 32

H9 asks for an IP address using DHCP. H9 H H2 H3 H3 contacts H9 using ARP H8 contacts H9 using H9 s IP address H7 H8 Network (Ethernet) Network 2 (Ethernet) Router R R contacts H9 using ARP Router R3 H4 H5 Network 3 (Token Ring) H6 Router R2 33

Routers Keep messages flowing between networks rather than within networks Come in different sizes The largest have more in common with supercomputers than office servers - MIPS processors 34

Routing in a Wide Area Network Hosts or local networks A 3 D Links 6 B 2 4 5 E C Routers 35

Initial Routing Tables for the Network Routings from A Routings from B Routings from C To Link Cost To Link Cost To Link Cost A B C D E local - 3-0 inf inf A B C D E local 2-4 0 inf A B C D E - 2 local - 5 inf 0 inf Routings from D Routings from E To Link Cost To Link Cost A B C D E 3 - - local 6 inf inf 0 A B C D E - 4 5 6 local inf 0 36

RIP Routing Algorithm Fault on n discovered: set cost to inf for each destination using that link and execute a send Send: Each t seconds or when Tl changes, send Tl on each non-faulty outgoing link. Receive: Whenever a routing table Tr is received on link n: for all rows Rr in Tr { if (Rr.link <> n) { // if the plan is not to come through here Rr.cost = Rr.cost + ; // Then I too could get there with a higher cost Rr.link = n; // and I would travel through n if (Rr.destination is not in Tl) add Rr to Tl; //add new destination totl else for all rows Rl in Tl { if (Rr.destination = Rl.destination and (Rr.cost < Rl.cost or Rl.link = n)) Rl = Rr; // Rr.cost < Rl.cost : remote node has better route // Rl.link = n : remote node is more authoritative } } } 37

A -> B B -> A B -> C E -> C A -> D B -> E Suppose the Routers Transfer Tables as Follows: 38

Updated Routing tables Routings from A Routings from B Routings from C To Link Cost To Link Cost To Link Cost A B C D E local 3 0 2 2 A B C D E local 2 4 0 2 A B C D E 2 2 local 5 5 2 0 2 Routings from D Routings from E To Link Cost To Link Cost A B C D E 3 3 6 local 6 2 2 0 A B C D E 4 4 5 6 local 2 0 39

240=0000 248=000 232=0000 Class C or /24 Simplified View of the QMW Computer Science Network() Campus38.37.95.240/29 38.37.95.24 router/ router subnet firewall hammer Staff 38.37.88 subnet Student 38.37.88.25 38.37.94.25 38.37.94 subnet compute Eswitch bruno server Eswitch file gateway server/ 38.37.88.249 custard dialup 38.37.94.246 printers server henry 38.37.88.230 other file servers hotpoint server 38.37.88.62 web copper server 38.37.88.248 hub hub Hubs don t route desktop computers 38.37.88.xx desktop computers 38.37.94.xx Campus38.37.95.248/29 sickle router subnet 38.37.95.249firewall router/ 00 Mbps Ethernet 000 Mbps Ethernet Eswitch: Ethernet switch Routes at the Ethernet address level 38.37.95.232/29 subnet 40

240=0000 248=000 232=0000 () Suppose we have An IP packet for Cooper 38.37.88.248 Simplified View of the QMW Computer Science Network(2) Campus38.37.95.240/29 38.37.95.24 router/ router subnet firewall hammer Staff 38.37.88 subnet Student 38.37.88.25 38.37.94.25 38.37.94 subnet compute Eswitch bruno server Eswitch file gateway server/ 38.37.88.249 custard dialup 38.37.94.246 printers server henry 38.37.88.230 other file servers hotpoint server 38.37.88.62 web copper server 38.37.88.248 hub hub desktop computers 38.37.88.xx desktop computers 38.37.94.xx Campus38.37.95.248/29 sickle router subnet 38.37.95.249firewall router/ 00 Mbps Ethernet 000 Mbps Ethernet Eswitch: Ethernet switch (2) Hammer gets the Ethernet address using ARP. 38.37.95.232/29 subnet (3) Final route selected based on Ethernet address. 4

A Typical NAT-based Home Network() DSL or Cable connection to ISP 92.68..xx subnet 83.25.52.95 Modem / firewall / router (NAT en 92.68.. Ethernet switch WiFi base station/ access point 92.68..2 92.68..0 printer Laptop 92.68..04 Game box 92.68..05 Media hub 92.68..06 TV monitor 92.68..5 92.68..0 PC PC 2 Bluetooth adapter Bluetooth printer Camera 42

A Typical NAT-based Home Network(2) One single IP for this home. Unregistered IP addresses DSL or Cable connection to ISP 92.68..xx subnet 83.25.52.95 DHCP runs on the router to Modem / firewall / router (NAT enassign IP s 92.68.. Ethernet switch WiFi base station/ access point 92.68..2 92.68..0 Laptop 92.68..04 Game box 92.68..05 TV monitor 92.68..5 92.68..0 printer PC PC 2 Bluetooth adapter Bluetooth printer Wired Assigned an IP manually Media hub 92.68..06 Camera 43

The NAT router maintains an address translation table. For outgoing TCP or UDP messages, modify the source IP address and port. - save internal IP and Port in table - replaces internal IP with external IP - replaces internal port with table index DSL or Cable connection to ISP 92.68..xx subnet 83.25.52.95 Modem / firewall / router (NAT en 92.68.. Ethernet switch WiFi base station/ access point 92.68..2 92.68..0 printer Laptop 92.68..04 Game box 92.68..05 TV monitor 92.68..5 92.68..0 PC PC 2 Bluetooth adapter Bluetooth printer Media hub 92.68..06 Camera 44

NAT router maintains an address translation table. For incomming TCP or UDP messages: - Use the port number to look up internal address in table DSL or Cable connection to ISP 92.68..xx subnet 83.25.52.95 Modem / firewall / router (NAT en 92.68.. Ethernet switch WiFi base station/ access point 92.68..2 92.68..0 printer Laptop 92.68..04 Game box 92.68..05 TV monitor 92.68..5 92.68..0 PC PC 2 Bluetooth adapter Bluetooth printer Media hub 92.68..06 Camera 45

But How Do We Serve? DSL or Cable connection to ISP 92.68..xx subnet 83.25.52.95 Modem / firewall / router (NAT en 92.68.. Ethernet switch WiFi base station/ access point 92.68..2 92.68..0 printer Configure router to send all requests to port 80 to 92.68..5 Laptop 92.68..04 Game box 92.68..05 Media hub 92.68..06 TV monitor 92.68..5 92.68..0 PC PC 2 Bluetooth adapter Bluetooth printer Camera 46

The MobileIP Routing Mechanism Address of FA returned to sender First IP packet addressed to MH Sender Home agent Subsequent IP packets tunnelled to FA Internet First IP packet tunnelled to FA Mobile host MH Foreign agent FA The case of a Mobile host making a request is easy it has a new IP on the new network. No problem. The case of the Mobile host acting as a server is described in the picture. Messages to it must be re-routed to its new home. 47

Wireless LAN Configuration Laptops A B C radio obstruction Palmtop D E Wireless LAN Server Base station/ access point Challenges to the CSMA/CD approach: Hidden stations: A may not be able to sense D s signal to E. Fading: A may not be able to detect a transmission by C. Collision Masking: Locally generated signals are stronger than distant signals. 48 LAN

Wireless LAN Configuration Laptops A B C radio obstruction Palmtop D E Wireless LAN Server Base station/ access point LAN Slot reservation protocol (CSMA/Collision Avoidance): A sends a request to send (RTS) message carrying a duration to E. E responds with a clear to send (CTS) message repeating the duration. All those near A or E back off for that period. 49

Multimedia Applications Typically divided into two types: conferencing applications and streaming applications. See the vat tool for audio conferencing. See the vic tool for video conferencing. Streaming applications deliver an audio or video stream. See Real Audio for a commercial stream application. Real-Time Transport Protocol (RTP) commonly runs over UDP. 50