COP 5611 Operating Systems Spring 2010

Slides:



Advertisements
Similar presentations
Cs/ee 143 Communication Networks Chapter 6 Internetworking Text: Walrand & Parekh, 2010 Steven Low CMS, EE, Caltech.
Advertisements

EEC-484/584 Computer Networks Lecture 12 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Oct 21, 2004CS573: Network Protocols and Standards1 IP: Addressing, ARP, Routing Network Protocols and Standards Autumn
CS335 Networking & Network Administration Tuesday, May 11, 2010.
CSEE W4140 Networking Laboratory Lecture 6: TCP and UDP Jong Yul Kim
Network Architectures Week 3 Part 2. Comparing The Internet & OSI.
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Transport Protocols Slide 1 Transport Protocols.
1 Reliability & Flow Control Some slides are from lectures by Nick Mckeown, Ion Stoica, Frans Kaashoek, Hari Balakrishnan, and Sam Madden Prof. Dina Katabi.
Transport Layer TCP and UDP IS250 Spring 2010
Gursharan Singh Tatla Transport Layer 16-May
ICMP (Internet Control Message Protocol) Computer Networks By: Saeedeh Zahmatkesh spring.
S305 – Network Infrastructure Chapter 5 Network and Transport Layers.
1 Semester 2 Module 10 Intermediate TCP/IP Yuda college of business James Chen
Cisco 1 - Networking Basics Perrine. J Page 19/17/2015 Chapter 9 What transport layer protocol does TFTP use? 1.TCP 2.IP 3.UDP 4.CFTP.
COP 5611 Operating Systems Spring 2010 Dan C. Marinescu Office: HEC 439 B Office hours: M-Wd 2:00-3:00 PM.
CMPT 471 Networking II Address Resolution IPv4 ARP RARP 1© Janice Regan, 2012.
Fall 2005Computer Networks20-1 Chapter 20. Network Layer Protocols: ARP, IPv4, ICMPv4, IPv6, and ICMPv ARP 20.2 IP 20.3 ICMP 20.4 IPv6.
University of the Western Cape Chapter 12: The Transport Layer.
1 The Internet and Networked Multimedia. 2 Layering  Internet protocols are designed to work in layers, with each layer building on the facilities provided.
TCP1 Transmission Control Protocol (TCP). TCP2 Outline Transmission Control Protocol.
ECE 526 – Network Processing Systems Design Networking: protocols and packet format Chapter 3: D. E. Comer Fall 2008.
Transport Layer Moving Segments. Transport Layer Protocols Provide a logical communication link between processes running on different hosts as if directly.
COP 4930 Computer Network Projects Summer C 2004 Prof. Roy B. Levow Lecture 3.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
TCP/IP Honolulu Community College Cisco Academy Training Center Semester 2 Version 2.1.
CCNA 1 v3.0 Module 9 TCP/IP Protocol Suite and IP Addressing.
COP 5611 Operating Systems Spring 2010 Dan C. Marinescu Office: HEC 439 B Office hours: M-Wd 2:00-3:00 PM.
Lecture 4 Overview. Ethernet Data Link Layer protocol Ethernet (IEEE 802.3) is widely used Supported by a variety of physical layer implementations Multi-access.
CCNA 1 v3.0 Module 9 TCP/IP Protocol Suite and IP Addressing
Review of key networking techniques: –Reliable communication over unreliable channels –Error detection and correction –Medium access control –routing –Congestion.
1 Connectivity with ARP and RARP. 2 There needs to be a mapping between the layer 2 and layer 3 addresses (i.e. IP to Ethernet). Mapping should be dynamic.
Transport Layer: Sliding Window Reliability
1 Internetworking: IP Packet Switching Reading: (except Implementation; pp )
IP1 The Underlying Technologies. What is inside the Internet? Or What are the key underlying technologies that make it work so successfully? –Packet Switching.
McGraw-Hill Chapter 23 Process-to-Process Delivery: UDP, TCP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
TCP/IP Protocol Suite and IP Addressing Presented By : Dupien AMS.
Packet Switch Network Server client IP Ether IPTCPData.
1 Computer Networks Chapter 5. Network layer The network layer is concerned with getting packets from the source all the way to the destination. Getting.
Distributed Systems 11. Transport Layer
Behrouz A. Forouzan TCP/IP Protocol Suite, 3rd Ed.
IP: Addressing, ARP, Routing
The Transport Layer Implementation Services Functions Protocols
Lecture (2).
Chapter 21 Address Mapping
Scaling the Network: The Internet Protocol
Process-to-Process Delivery, TCP and UDP protocols
TCP/IP Transmission Control Protocol / Internet Protocol
Reliable Transport I: Concepts
Chapter 5 Network and Transport Layers
COT 5611 Operating Systems Design Principles Spring 2014
Net 323: NETWORK Protocols
Net 431: ADVANCED COMPUTER NETWORKS
CS 457 – Lecture 10 Internetworking and IP
Transport Layer Unit 5.
NAT/ARP/RARP (Ch 5 & 8) Dr. Clincy Lecture.
8PM – Quickly Overview Final Project
Internetworking Outline Best Effort Service Model
Process-to-Process Delivery:
CPEG512 Advanced Computer Networks
Advanced Computer Networks
CPEG514 Advanced Computer Networkst
CS4470 Computer Networking Protocols
Scaling the Network: The Internet Protocol
Ch 17 - Binding Protocol Addresses
Routing and the Network Layer (ref: Interconnections by Perlman
Process-to-Process Delivery: UDP, TCP
Computer Networks Protocols
Error Checking continued
Presentation transcript:

COP 5611 Operating Systems Spring 2010 Dan C. Marinescu Office: HEC 439 B Office hours: M-Wd 2:00-3:00 PM

Lecture 12 Reading Assignment: Chapters 8 from the online textbook Homework 3 due on March 3 Midterm: Wednesday March 17, the first week after Spring Break Last time: More about layering and broadcast channels Network layer Today: End-to-end-layer Resource Management - Congestion Next time Faults, Failures and Fault-Tolerant Design Measures of Reliability and Failure Tolerance Tolerating active Faults 2 2 2 2 2

Requirements for routing algorithms Routing algorithms should be dynamic and deal with: Topological changes: links go down and new links are added Congestion Run asynchronously Converge rapidly Avoid oscillatory behavior Ensure that no packet bounces around forever: add a hop count in the network header

Flat versus hierarchical addressing schemes The scheme we discussed so far based on flat addresses have disadvantages: Each attachment point must have a unique address and the number of attachment points is equal to the number of systems connected to the network The number of path vectors increases linearly with the size of the network. Hierarchical addressing: e.g., two levels Region Address of the station/node within the region

Hierarchical addressing with two levels

Advantages and disadvantages of hierarchical addressing Reduces the number of path vectors; a router for one region needs only to advertize a single path vector. Assignation of network addresses is manageable: a central authority assigns region addresses Station addresses are assigned by a regional authority. The table lookup more complicated: (1) extract the region (2) forward to another region or forward within own region. The path may no longer the shortest, the information provided by the path vector is less accurate. The network addresses are location dependent. A mobile device must get a new address when it is connected in a different location.

Physical and logical addresses All devices have a physical address of the interface Must obtain a logical address ARP – address resolution protocol   is a protocol used by the Internet Protocol (IP), specifically IPv4, to map IP addresses to the hardware addresses used by a data link protocol. ARP operates only across the local link that a host is connected to. Types of ARP messages ARP request ARP response RARP request RARP response

Internet Protocol (IPv4) over Ethernet ARP packet bit offset 0 – 7 8 – 15 Hardware type (HTYPE) 16 Protocol type (PTYPE) 32 Hardware address length (HLEN) Protocol address length (PLEN) 48 Operation (OPER) 64 Sender hardware address (SHA) (first 16 bits) 80 (next 16 bits) 96 (last 16 bits) 112 Sender protocol address (SPA) (first 16 bits) 128 144 Target hardware address (THA) (first 16 bits) 160 176 192 Target protocol address (TPA) (first 16 bits) 208

Dynamic IP address assignment –DHCP servers

From Wide Area Networks (WAN) to Local Area Networks (LAN) – the Ethernet

Ethernet frame

Internet addresses Internet provides a layered naming environment. Internet address= Network number + host numbers Most network numbers are global names. Network 10 reserved for private networks

Network address translation Private networks NAT (Network Address Translators)  map host’s private address to/from a temporarily assigned public address. Problems Communications may involve multiple parties with the addresses buried into application protocols The router running NAT is a bottleneck What if two private organizations merge?

Network layer errors Messages originate at the network level and are delivered to the end-to-end layer. Router error codes Packets are discarded – the router has depleted its buffer space The buffers of a router are depleted rapidly – stop sending The region identifier is invalid The station identifier is invalid The end type identifier is not valid The packet is larger than the MTU The packet hop has been exceeded The network layer implements a best-effort policy. It would be too complicated to provide guarantees of service. There is no message regarding packets dropped. It would only increase congestion!!

End-to-end layer Applications are too diverse to have a unique end-to-end protocol End-to end multiplexing is more complicate: You can have multiple instances of the same application running Ports – logical end points for an end-to end protocol We need to identify individual segments by sequence numbers Transport protocols  operate between two attachment points TCP UDP Request-response protocol RTP – Real-Time Transport protocol.

3-way handshake in TCP

At once delivery protocols Persistent sender It requires the sender to maintain state in the form of a table including the sequence numbers of segments sent but not acknowledged yet Provide the assurance that if possible to get through messages will be delivered If not possible to confirm delivery the application will know Does not provide any assurance about duplicates Round Trip Time Timers could trigger retransmission Static timers RTT Adaptive timers Exponentially weighted moving average using a decay factor

At most once delivery protocols Requires both the sender and the receiver to maintain state. The receiver must maintain a table of previously seen nonces , segments that have been received and passed to the application layer The list of nonces may grow; it may never be possible to delete the last nonce Long messages need to be reassembled from out of order segments

Reliable transport protocols Data integrity assurance that the received message contains precisely the same information as the one sent. Sender adds trailer containing a checksum; Receiver computes the checksum and verifies that it is the same as the value in the trailer Should send a NAK if they do not correspond? What if the address of the sender was damaged? There is a check sum at the link layer but is this suffient? Reliable transport protocols protocol with a persistent sender and with support for data integrity.

Flow control Ensure that the sender, the communication channel, and the receiver could work at the same pace. The bottleneck could be any of them Stop and wait protocols (lock step) Overlapped transmission Window based – send a range of frame. The protocol: Sender – tell me how many frames I could send Receiver – send 100 frames Window based protocols Fixed window size Variable window size

Lock-step-transmission (send segment and wait for acknowledgment)

Overlapped transmission

Flow control with a fixed window

Sliding window and self-pacing Once a segment buffer is freed the receiver should send the permission to advance the window. Regardless of the bottleneck the solution is: Window size > = RTT x bottleneck data rate

Managing shared resources Congestion - a complex phenomena leads to wasting of resources  congestion collapse Managing resources in a network rather complex More than one resource Congestion collapse occurs more easily Limited options to reduce capacity The means to reduce congestion are difficult to implement Feedback path is long Source of the traffic must be able to reduce the load willing to cooperate

Cross-layer cooperation Feedback Source quench Congested routers add a bit in the packet header indicating that congestion Discard a packet Control Automatic rate adaptation  requires an estimation of the RTT

Congestion control in TCP Slow start Duplicate acknowledgments Equilibrium Additive increase Multiplicative decrease