CSC 257/457 Computer Networks. Fall 2017 MW 4:50 pm 6:05 pm CSB 601

Similar documents
CSC 401 Data and Computer Communications Networks

1-1. Switching Networks (Fall 2010) EE 586 Communication and. September Lecture 10

Chapter 2 Application Layer

Web, HTTP and Web Caching

Chapter 2 Application Layer

HyperText Transfer Protocol

CMSC 332 Computer Networking Web and FTP

CSC358 Week 2. Adapted from slides by J.F. Kurose and K. W. Ross. All material copyright J.F Kurose and K.W. Ross, All Rights Reserved

Application Layer: HTTP

CSEN 503 Introduction to Communication Networks

CSC 4900 Computer Networks:

Chapter 2 Application Layer

Chapter 2 Application Layer

CSEN 404 Introduction to Networks. Mervat AbuElkheir Mohamed Abdelrazik. ** Slides are attributed to J. F. Kurose

Overview Content Delivery Computer Networking Lecture 15: The Web Peter Steenkiste. Fall 2016

Lecture 04: Application Layer (Part 01) Principles and the World Wide Web (HTTP) Dr. Anis Koubaa

Chapter 2: outline. 2.6 P2P applications 2.7 socket programming with UDP and TCP

COSC4377. Chapter 2: Outline

Chapter 2: outline. 2.6 P2P applications 2.7 socket programming with UDP and TCP

CS 355. Computer Networking. Wei Lu, Ph.D., P.Eng.

Lecture 12. Application Layer. Application Layer 1

Chapter 2: Application Layer. Chapter 2 Application Layer. Some network apps. Application architectures. Chapter 2: Application layer

Lecture 6: Application Layer Web proxies, , and SMTP

Computer Networks. Wenzhong Li. Nanjing University

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 5

Chapter II: Application Layer

Chapter 1 Introduction

Chapter 2 Application Layer

ELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition

Foundations of Telematics

CSCE 463/612 Networks and Distributed Processing Spring 2018

EECS 3214: Computer Network Protocols and Applications

Review of Previous Lecture

CS 43: Computer Networks. HTTP September 10, 2018

Computer Networks. HTTP and more. Jianping Pan Spring /20/17 CSC361 1

Web caches (proxy server) Applications (part 3) Applications (part 3) Caching example (1) More about Web caching

Chapter 2: Application Layer. Chapter 2: application layer. outline. Some network apps. Client-server architecture. Application architectures

Computer Network Midterm Explain Internet protocol stack (1% each layer s name, 1% each layer s functions, 10% total)

CS4/MSc Computer Networking. Lecture 3: The Application Layer

Chapter 2 Application Layer

CS 471G Friday, 11 January Introduction 2-1

Chapter 2 Application Layer

1. What is a Computer Network? interconnected collection of autonomous computers connected by a communication technology

Computer Networks and Applications

CS 3516: Computer Networks

Since enrollment is very small this semester, we have flexibilty. Traditional lecture Assigned reading, and then student(s) present during class time

Chapter 8 Security. Computer Networking: A Top Down Approach

Introduction to Computer Networking. Guy Leduc. Chapter 2 Application Layer. Chapter 2: outline

Files/News/Software Distribution on Demand. Replicated Internet Sites. Means of Content Distribution. Computer Networks 11/9/2009

Chapter 1 Introduction

Lecture 2: Internet Structure

Chapter 1 Introduction

Chapter 9. Multimedia Networking. Computer Networking: A Top Down Approach

CSCD 330 Network Programming Spring 2018

Introduction to Computer Networking. Guy Leduc. Chapter 2 Application Layer. Chapter 2: outline

Applications Layer Protocols. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

Web Protocols and Practice

Application Layer. Goals: Service models. Conceptual aspects of network application protocols Client server paradigm

CS 3516: Advanced Computer Networks

Chapter 4. Computer Networking: A Top Down Approach 5 th edition. Jim Kurose, Keith Ross Addison-Wesley, sl April 2009.

Chapter 7: Multimedia Networking

Chapter 2 Application Layer

Lecture 6 Application Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Chapter 1 Introduction

Chapter 2: Application layer

Q U E S T I O N 3 In the current version of IP (IPv4), the use of TCP and UDP headers differ in which of the following ways?

Chapter 4 Network Layer: The Data Plane

Review for Internet Introduction

CSC 401 Data and Computer Communications Networks

Chapter 3 Transport Layer

The World Wide Web. Distributed Computing Systems. References. Outline 5/2/2014. The Web. Architecture Processes Caching Web 2.0

CS 3516: Advanced Computer Networks

Chapter 2 Application Layer

Application Layer: The Web and HTTP Sec 2.2 Prof Lina Battestilli Fall 2017

Chapter 2 Application Layer

CS 3516: Advanced Computer Networks

Chapter 4 Network Layer: The Data Plane

Chapter 3 Transport Layer

Chapter 4 Network Layer: The Data Plane

Computer Networks - Midterm

Fundamentals of Information Systems

Lecture Overview : Computer Networking. Applications and Application-Layer Protocols. Client-Server Paradigm

CSC 4900 Computer Networks: Introduction

Wireshark Lab: HTTP SOLUTION

Chapter 8 Network Security

Applications & Application-Layer Protocols: The Web & HTTP

Network Applications Principles of Network Applications

Outline. QoS routing in ad-hoc networks. Real-time traffic support. Classification of QoS approaches. QoS design choices

COE 431 Computer Networks. Welcome to Exam I Thursday April 02, Instructor: Wissam F. Fawaz

Wireshark Lab: Getting Started v6.0

Application Layer. Goals:

Application Layer. Applications and application-layer protocols. Goals:

Application Layer. Pure P2P architecture. Client-server architecture. Processes communicating. Hybrid of client-server and P2P. Creating a network app

CS 3516: Computer Networks

Chapter 3: Transport Layer. Chapter 3 Transport Layer. Chapter 3 outline. Transport services and protocols

CS 3516: Advanced Computer Networks

Outline Computer Networking. HTTP Basics (Review) How to Mark End of Message? (Review)

Application Layer. Pure P2P architecture. Client-server architecture. Processes communicating. Hybrid of client-server and P2P. Creating a network app

CPS 706 Computer Networks (Fall 2011)

Chapter 2. Computer Networking: A Top. 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012

Transcription:

CSC 257/457 Computer Networks Fall 2017 MW 4:50 pm 6:05 pm CSB 601

CHAPTER 2 (APPLICATION LAYER)

User-server state: cookies many Web sites use cookies four components: 1) cookie header line of HTTP response message 2) cookie header line in next HTTP request message 3) cookie file kept on user s host, managed by user s browser 4) back-end database at Web site example: Susan always access Internet from PC visits specific e-commerce site for first time when initial HTTP requests arrives at site, site creates: unique ID entry in backend database for ID Application Layer 2-3

Cookies: keeping state (cont.) client server ebay 8734 cookie file ebay 8734 amazon 1678 usual http request msg usual http response set-cookie: 1678 Amazon server creates ID 1678 for user create entry backend database usual http request msg cookie: 1678 usual http response msg cookiespecific action access one week later: ebay 8734 amazon 1678 usual http request msg cookie: 1678 usual http response msg cookiespecific action access Application Layer 2-4

Cookies (continued) what cookies can be used for: authorization shopping carts recommendations user session state (Web e- mail) aside cookies and privacy: cookies permit sites to learn a lot about you you may supply name and e-mail to sites how to keep state : protocol endpoints: maintain state at sender/receiver over multiple transactions cookies: http messages carry state Application Layer 2-5

Web caches (proxy server) goal: satisfy client request without involving origin server user sets browser: Web accesses via cache browser sends all HTTP requests to cache object in cache: cache returns object else cache requests object from origin server, then returns object to client client proxy server origin server client origin server Application Layer 2-6

More about Web caching cache acts as both client and server server for original requesting client client to origin server typically cache is installed by ISP (university, company, residential ISP) why Web caching? reduce response time for client request reduce traffic on an institution s access link Internet dense with caches: enables poor content providers to effectively deliver content (so too does P2P file sharing) Application Layer 2-7

Caching example: assumptions: avg object size: 100K bits avg request rate from browsers to origin servers:15/sec avg data rate to browsers: 1.50 Mbps RTT from institutional router to any origin server: 2 sec access link rate: 1.54 Mbps consequences: LAN utilization: 0.15% access link utilization = 99% total delay = Internet delay + access delay + LAN delay = 2 sec + minutes + usecs problem! institutional network public Internet 1.54 Mbps access link origin servers 1 Gbps LAN Application Layer 2-8

Caching example: fatter access link assumptions: avg object size: 100K bits avg request rate from browsers to origin servers:15/sec avg data rate to browsers: 1.50 Mbps RTT from institutional router to any origin server: 2 sec access link rate: 1.54 Mbps consequences: 154 Mbps LAN utilization: 0.15% access link utilization = 99% total delay = Internet delay + access 0.99% delay + LAN delay = 2 sec + minutes + usecs institutional network public Internet 1.54 Mbps access link origin servers 1 Gbps LAN 154 Mbps msecs Cost: increased access link speed (not cheap!) Application Layer 2-9

Caching example: install local cache assumptions: avg object size: 100K bits avg request rate from browsers to origin servers:15/sec avg data rate to browsers: 1.50 Mbps RTT from institutional router to any origin server: 2 sec access link rate: 1.54 Mbps consequences: LAN utilization: 0.15% access link utilization = 99% total delay = Internet delay + access delay + LAN delay = 2 sec + minutes + usecs institutional network public Internet 1.54 Mbps access link origin servers 1 Gbps LAN local web cache Cost: web cache (cheap!) Application Layer 2-10

Caching example: install local cache Calculating access link utilization, delay with cache: suppose cache hit rate is 0.4 40% requests satisfied at cache, 60% requests satisfied at origin access link utilization: 60% of requests use access link data rate to browsers over access link = 0.6*1.50 Mbps =.9 Mbps utilization = 0.9/1.54 =.58 total delay = 0.6 * (delay from origin servers) +0.4 * (delay when satisfied at cache) = 0.6 (2.01) + 0.4 (~msecs) = ~ 1.2 secs less than with 154 Mbps link (and cheaper too!) institutional network public Internet 1.54 Mbps access link origin servers 1 Gbps LAN local web cache Application Layer 2-11

Goal: don t send object if cache has up-to-date cached version no object transmission delay lower link utilization cache: specify date of cached copy in HTTP request If-modified-since: <date> server: response contains no object if cached copy is up-to-date: HTTP/1.0 304 Not Modified Conditional GET client HTTP request msg If-modified-since: <date> HTTP response HTTP/1.0 304 Not Modified HTTP request msg If-modified-since: <date> HTTP response HTTP/1.0 200 OK <data> server object not modified before <date> object modified after <date> Application Layer 2-12

Acknowledgement Most of the slides in this presentation are taken from the slides provided by the authors of the textbook. Thanks to YouTube for providing many useful videos. If you use these slides (e.g., in a class) that you mention their source (after all, we d like people to use our book!) If you post any slides on a www site, that you note that they are adapted from (or perhaps identical to) our slides, and note our copyright of this material. Thanks and enjoy! JFK/KWR All material copyright 1996-2016 J.F Kurose and K.W. Ross, All Rights Reserved