CPSC156a: The Internet Co-Evolution of Technology and Society. Lecture 4: September 16, 2003 Internet Layers and the Web

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

CCNA 1 Chapter 7 v5.0 Exam Answers 2013

User Datagram Protocol

OSI Transport Layer. objectives

TSIN02 - Internetworking

TSIN02 - Internetworking

Introduction to TCP/IP networking

TSIN02 - Internetworking

TSIN02 - Internetworking

UDP and TCP. Introduction. So far we have studied some data link layer protocols such as PPP which are responsible for getting data

TCP /IP Fundamentals Mr. Cantu

The Transmission Control Protocol (TCP)

Networking Technologies and Applications

CCNA Exploration Network Fundamentals. Chapter 04 OSI Transport Layer

CSCI-GA Operating Systems. Networking. Hubertus Franke

Just enough TCP/IP. Protocol Overview. Connection Types in TCP/IP. Control Mechanisms. Borrowed from my ITS475/575 class the ITL

Transport Layer. Gursharan Singh Tatla. Upendra Sharma. 1

TCP/IP THE TCP/IP ARCHITECTURE

CCNA R&S: Introduction to Networks. Chapter 7: The Transport Layer

CS457 Transport Protocols. CS 457 Fall 2014

ECE4110 Internetwork Programming. Introduction and Overview

Single Network: applications, client and server hosts, switches, access links, trunk links, frames, path. Review of TCP/IP Internetworking

Lecture 9: Internetworking

Transport Layer. <protocol, local-addr,local-port,foreign-addr,foreign-port> ϒ Client uses ephemeral ports /10 Joseph Cordina 2005

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

Chapter 09 Network Protocols

IP : Internet Protocol

Transport Over IP. CSCI 690 Michael Hutt New York Institute of Technology

Lecture 20 Overview. Last Lecture. This Lecture. Next Lecture. Transport Control Protocol (1) Transport Control Protocol (2) Source: chapters 23, 24

Guide To TCP/IP, Second Edition UDP Header Source Port Number (16 bits) IP HEADER Protocol Field = 17 Destination Port Number (16 bit) 15 16

Lecture 3: The Transport Layer: UDP and TCP

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

Chapter 12 Network Protocols

EE 610 Part 2: Encapsulation and network utilities

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

QUIZ: Longest Matching Prefix

Internet Layers. Physical Layer. Application. Application. Transport. Transport. Network. Network. Network. Network. Link. Link. Link.

CCNA 1 v3.11 Module 11 TCP/IP Transport and Application Layers

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

Internet Applications and the Application Layer Material from Kurose and Ross, Chapter 2: The Application Layer

ECE 650 Systems Programming & Engineering. Spring 2018

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

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

Data Communication Prof. A. Pal Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Lecture 34 TCP/ IP I

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

Reliable Transport I: Concepts and TCP Protocol

User Datagram Protocol (UDP):

TCP/IP. Chapter 5: Transport Layer TCP/IP Protocols

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

Network and Security: Introduction

ICS 351: Networking Protocols

Transport Layer Marcos Vieira

ECE 158A: Lecture 7. Fall 2015

Transport Protocols Reading: Sections 2.5, 5.1, and 5.2. Goals for Todayʼs Lecture. Role of Transport Layer

IP Packet Switching. Goals of Todayʼs Lecture. Simple Network: Nodes and a Link. Connectivity Links and nodes Circuit switching Packet switching

Transport Protocols. Raj Jain. Washington University in St. Louis

Introduction to Networks and the Internet

Multiple unconnected networks

TCP/IP Networking. Part 4: Network and Transport Layer Protocols

CSE/EE 461 Lecture 13 Connections and Fragmentation. TCP Connection Management

IP - The Internet Protocol. Based on the slides of Dr. Jorg Liebeherr, University of Virginia

Transport Protocols Reading: Sections 2.5, 5.1, and 5.2

COMP/ELEC 429/556 Introduction to Computer Networks

Dongsoo S. Kim Electrical and Computer Engineering Indiana U. Purdue U. Indianapolis

Introduction to Internet. Ass. Prof. J.Y. Tigli University of Nice Sophia Antipolis

Transport layer. UDP: User Datagram Protocol [RFC 768] Review principles: Instantiation in the Internet UDP TCP

Transport layer. Review principles: Instantiation in the Internet UDP TCP. Reliable data transfer Flow control Congestion control

CS4700/CS5700 Fundamentals of Computer Networks

EEC-682/782 Computer Networks I

NT1210 Introduction to Networking. Unit 10

EE 122: IP Forwarding and Transport Protocols

CSE/EE 461 Introduction to Computer Communication Networks. Why Study Networks?

Need For Protocol Architecture

Chapter 23 Process-to-Process Delivery: UDP, TCP, and SCTP 23.1

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

Need For Protocol Architecture

Software Engineering 4C03 Answer Key

Position of IP and other network-layer protocols in TCP/IP protocol suite

9th Slide Set Computer Networks

ECE 435 Network Engineering Lecture 15

CS 4390 Computer Networks. Transport Services and Protocols

Your Name: Your student ID number:

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.

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

Communication Networks

EEC-484/584 Computer Networks. Lecture 16. Wenbing Zhao

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

The Transport Layer. Part 1

Lecture-4. TCP/IP-Overview:

Network Layer (1) Networked Systems 3 Lecture 8

Sirindhorn International Institute of Technology Thammasat University

CS 455: INTRODUCTION TO DISTRIBUTED SYSTEMS [NETWORKING] Frequently asked questions from the previous class surveys

Chapter 7. Local Area Network Communications Protocols

Internetworking Terms. Internet Structure. Internet Structure. Chapter 15&16 Internetworking. Internetwork Structure & Terms

CPSC 441 COMPUTER COMMUNICATIONS MIDTERM EXAM SOLUTION

Chapter 5 End-to-End Protocols

Vorlesung Kommunikationsnetze

Internet. 1) Internet basic technology (overview) 3) Quality of Service (QoS) aspects

Data & Computer Communication

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

Transcription:

CPSC156a: The Internet Co-Evolution of Technology and Society Lecture 4: September 16, 2003 Internet Layers and the Web

Layering in the IP Protocols HTTP (Web) Telnet Domain Name Service Simple Network Management Transmission Control Protocol User Datagram Protocol Internet Protocol SONET Ethernet ATM

The Role of the IP Layer Internet Protocol (IP): gives a standard way to package messages across different hardware types. 1. Message is put in IP packet. 3. Routers look at destination, decide where to send it next. modem 2. Dial-up hardware gets packet to router (however it wants, but intact). access point router PPP FDDI router 4. Packet gets to destination network. router 100BaseT Ethernet 5. Original message extracted from packet. hub server 10BaseT Ethernet

IP Connectionless Paradigm No error detection or correction for packet data Higher-level protocol can provide error checking Successive packets may not follow the same path Not a problem as long as packets reach the destination Packets can be delivered out-of-order Receiver can put packets back in order (if necessary) Packets may be lost or arbitrarily delayed Sender can send the packets again (if desired) No network congestion control (beyond drop ) Send can slow down in response to loss or delay

IP Packet Structure 4-bit Version 4-bit Header Length 8-bit Type of Service (TOS) 16-bit Total Length (Bytes) 16-bit Identification 3-bit Flags 13-bit Fragment Offset 8-bit Time to Live (TTL) 8-bit Protocol 16-bit Header Checksum 20-byte Header 32-bit Source IP Address 32-bit Destination IP Address Options (if any) Payload

Main IP Header Fields Version number (e.g., version 4, version 6) Header length (number of 4-byte words) Header checksum (error check on header) Source and destination IP addresses Upper-level protocol (e.g., TCP, UDP) Length in bytes (up to 65,535 bytes) IP options (security, routing, timestamping, etc.) TTL (prevents messages from looping around forever; packets die if they get lost )

Adding Some Functionality More guarantees, e.g., that packets go in order, require more work at both ends. Solution: add another layer (e.g., TCP) Source original msg Destination original msg Encapsulation msg TCP (or without TCP) TCP (or without TCP) TCP hdr msg IP hardware IP IP hdr TCP hdr msg

Transmission Control Protocol (TCP) Byte-stream socket abstraction for applications Retransmission of lost or corrupted packets Flow-control to respond to network congestion Simultaneous transmission in both directions Multiplexing of multiple logical connections TCP connection source network destination

TCP Header 16-bit source port number 16-bit destination port number 32-bit sequence number 32-bit acknowledgement number 20-byte Header 4-bit header length U R G A C K P S H R S T S Y N F I N 16-bit window size 16-bit TCP checksum 16-bit urgent pointer Options (if any) Payload

Establishing a TCP Connection B FIN ACK SYN SYN ACK ACK Data ACK FIN A time Three-way handshake to establish connection Host A sends a SYN (open) to the host B Host B returns a SYN acknowledgment (ACK) Host A sends an ACK to acknowledge the SYN ACK Closing the connection Finish (FIN) to close and receive remaining bytes (and other host sends a FIN ACK to acknowledge) Reset (RST) to close and not receive remaining bytes

Lost and Corrupted Packets Detecting corrupted and lost packets Error detection via checksum on header and data Sender sends packet, sets timeout, and waits for ACK Receiver sends ACKs for received packets Retransmission from sender Sender retransmits lost/corrupted packets Receiver reassembles and reorders packets Receiver discards corrupted and duplicated packets Packet loss rates are high (e.g., 10%), causing significant delay (especially for short Web transfers)!

User Datagram Protocol (UDP) Some applications do not want or need TCP Don t need recovery from lost or corrupted packets Don t want flow control to respond to loss/congestion Fraction of UDP packets is rapidly increasing Commonly used for multimedia applications UDP traffic interferes with TCP performance But, many firewalls do not accept UDP packets Dealing with the growth in UDP traffic Pressure for applications to apply flow control Future routers may enforce TCP-like behavior Need better mathematical models of TCP behavior

Connecting Networks Autonomous System (AS) EarthLink Autonomous System (AS) AOL WorldNet Autonomous System: A collection of IP subnets and routers under the same administrative authority. Interior Routing Protocol (e.g., Open Shortest Path First) Exterior Routing Protocol (e.g., Border Gateway Protocol)

Where to Go Next Routers contain a forwarding table that pairs destination with next hop (on what physical wire to send msg.). The table gets populated with information learned internally (e.g., OSPF) and externally (e.g., BGP). OSPF and BGP are protocols that communicate knowledge about destinations between routers.

Getting from A to B: Summary Need IP addresses for: Self (to use as source address) DNS Server (to map names to addresses) Default router to reach other hosts (e.g., gateway) Use DNS to get destination address Pass message through TCP/IP handler Send it off! Routers will do the work: Physically connecting different networks Deciding where to next send packets

HTTP (Hypertext Transfer Protocol) Standard protocol for web transfer Request-response interaction between clients and servers Request methods: GET, HEAD, PUT, POST, DELETE, Response: Status line + additional info (e.g., a web page) Example, from HW1, of a request line: <form action= http://lab.zoo.cs.yale.edu/cs156/cgibin/sendform.cgi method= post >

HTML (Hypertext Markup Language) Language in which web pages are written Contains formatting commands Tells browser what to display and how to display <TITLE> Welcome to Yale </TITLE> - The title of this page is Welcome to Yale <B> Great News! </B> -Set Great News! in boldface <A HREF= http://www.cs.yale.edu/index.html > Yale Computer Science Department </A> - A link pointing to the web page http://www.cs.yale.edu/index.html with the text Yale Computer Science Department displayed.

What does http://www.cs.yale.edu/index.html mean? Protocol Host, Domain Name Local File http www.cs.yale.edu index.html

Simple HTML Commands in HW1 Lastname: <input type= text name= lastname ><br> Firstname: <input type= text name= firstname id= firstname ><br> Lastname: Firstname: <input type= submit value= submit form ><br> Submit form

Discussion Point Packets, decentralized control, intelligence at the endpoints Now we ve built a byte-stream socket abstraction, pairs of which look like a conversation. Have we gained anything?

Yes: The WWW Revolution! Late 1990: WWW, HTTP, HTML, Browser invented by Tim Berners-Lee at CERN. Mid-1994: Mosaic Communications founded (later renamed to Netscape Communications). 1995: Browsing has become a universal pastime. IE ships with Windows 95. New businesses (e.g., portal companies) enabled. Old businesses (e.g., book selling) revolutionized. Triumph of Internet architecture and ethos: layering, stupid network, open standards.

Reading Assignment for this Week Chapter 1 of Information Rules, by Shapiro and Varian. (Available in paper form only; distributed in class.)