SMUCSE 4344 application layer. SMUCSE 4344 application vs. application-layer protocols application-layer protocol is just one piece –how the end hosts.

Slides:



Advertisements
Similar presentations
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 22 World Wide Web and HTTP.
Advertisements

XP Browser and Basics1. XP Browser and Basics2 Learn about Web browser software and Web pages The Web is a collection of files that reside.
Application Layer  We will learn about protocols by examining popular application-level protocols  HTTP  FTP  SMTP / POP3 / IMAP  Focus on client-server.
The Application Layer Chapter 7. Electronic Mail Architecture and Services The User Agent Message Formats Message Transfer Final Delivery.
The Internet Useful Definitions and Concepts About the Internet.
Layer 7- Application Layer
Chapter 2: Application layer  2.1 Web and HTTP  2.2 FTP 2-1 Lecture 5 Application Layer.
Application Layer  We will learn about protocols by examining popular application-level protocols  HTTP  FTP  SMTP / POP3 / IMAP  Focus on client-server.
Implementing Application Protocols. Overview An application protocol facilitates communication between applications. For example, an client uses.
COMPUTER TERMS PART 1. COOKIE A cookie is a small amount of data generated by a website and saved by your web browser. Its purpose is to remember information.
IT 210 The Internet & World Wide Web introduction.
Computer Concepts 2014 Chapter 7 The Web and .
1 Application Layer Lecture 5 Imran Ahmed University of Management & Technology.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
Data Communications and Computer Networks Chapter 2 CS 3830 Lecture 9
Lesson 24. Protocols and the OSI Model. Objectives At the end of this Presentation, you will be able to:
Fall 2005 By: H. Veisi Computer networks course Olum-fonoon Babol Chapter 7 The Application Layer.
Networking Basics TCP/IP TRANSPORT and APPLICATION LAYER Version 3.0 Cisco Regional Networking Academy.
Chapter 1: Introduction to Web
CSCI-235 Micro-Computer Applications The Internet.
2013Dr. Ali Rodan 1 Handout 1 Fundamentals of the Internet.
The Internet in Education Objectives Introduction Overview –The World Wide Web –Web Page v. Web Site v. Portal Unique and Compelling Characteristics Navigation.
CP476 Internet Computing Lecture 5 : HTTP, WWW and URL 1 Lecture 5. WWW, HTTP and URL Objective: to review the concepts of WWW to understand how HTTP works.
ES Module 5 Uniform Resource Locators, Hypertext Transfer Protocol, & Common Gateway Interface.
Some Data Comm. Standards
1 Computer Communication & Networks Lecture 28 Application Layer: HTTP & WWW p Waleed Ejaz
TCP/IP Protocols Dr. Sharon Hall Perkins Applications World Wide Web(HTTP) Presented by.
Forensic and Investigative Accounting Chapter 14 Internet Forensics Analysis: Profiling the Cybercriminal © 2005, CCH INCORPORATED 4025 W. Peterson Ave.
CIS 1310 – HTML & CSS 1 Introduction to the Internet.
1 Chapter 1 Web Components (Introduction) Web Protocols and Practice.
Electronic Mail. Client Software and Mail Hosts –Client PC has client software that communicates with user’s mail host –Mail hosts deliver.
MySQL and PHP Internet and WWW. Computer Basics A Single Computer.
TCP/IP Transport and Application (Topic 6)
The Internet The internet is simply a worldwide computer network that uses standardised communication protocols to transmit and exchange data.
Kingdom of Saudi Arabia Ministry of Higher Education Al-Imam Muhammad Ibn Saud Islamic University College of Computer and Information Sciences Chapter.
1 Welcome to CSC 301 Web Programming Charles Frank.
CMPE 80N - Introduction to Networks and the Internet 1 Client-Server Architecture Client Server request response.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
ECEN “Internet Protocols and Modeling”, Spring 2012 Course Materials: Papers, Reference Texts: Bertsekas/Gallager, Stuber, Stallings, etc Class.
World Wide Web “WWW”, "Web" or "W3". World Wide Web “WWW”, "Web" or "W3"
CS 3830 Day 9 Introduction 1-1. Announcements r Quiz #2 this Friday r Demo prog1 and prog2 together starting this Wednesday 2: Application Layer 2.
TCP/IP (Transmission Control Protocol / Internet Protocol)
Chapter 29 World Wide Web & Browsing World Wide Web (WWW) is a distributed hypermedia (hypertext & graphics) on-line repository of information that users.
1 WWW. 2 World Wide Web Major application protocol used on the Internet Simple interface Two concepts –Point –Click.
INTERNET PROTOCOLS. Microsoft’s Internet Information Server Home Page Figure IT2031 UNIT-3.
Module: Software Engineering of Web Applications Chapter 2: Technologies 1.
27.1 Chapter 27 WWW and HTTP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
CS 6401 The World Wide Web Outline Background Structure Protocols.
Berkeley Sockets The socket primitives for TCP.. PortProtocol Use 21 FTP File transfer 23 Telnet Remote login 25 SMTP 69 TFTP Trivial File Transfer.
4343 X2 – Outline The Domain Name System The Web.
ASP-2-1 SERVER AND CLIENT SIDE SCRITPING Colorado Technical University IT420 Tim Peterson.
Computer Network Architecture Lecture 6: OSI Model Layers Examples 1 20/12/2012.
1 The World Wide Web Architectural Overview Static Web Documents Dynamic Web Documents HTTP – The HyperText Transfer Protocol Performance Enhancements.
1 Chapter 10: Application Layer Reference: Chapter 7 - “Computer Networks”, Andrew S. Tanenbaum, 4th Edition, Prentice Hall, 2003.
Ch 2. Application Layer Myungchul Kim
COMPUTER NETWORKS Hwajung Lee. Image Source:
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 22 World Wide Web and HTTP.
Website Design and Construction Services and Standards.
The Application Layer DNS – The Domain Name System The DNS Name Space Resource Records Name Servers
WWW and HTTP King Fahd University of Petroleum & Minerals
Data Communications and Computer Networks Chapter 2 CS 3830 Lecture 9
The Application Layer RIS 251 Dr. ir. S.S. Msanjila.
Protocols and networks in the TCP/IP model initially.
Working at a Small-to-Medium Business or ISP – Chapter 7
Chapter 10: Application Layer
CS 31006: Computer Networks – Application Layer
Working at a Small-to-Medium Business or ISP – Chapter 7
Working at a Small-to-Medium Business or ISP – Chapter 7
Presentation transcript:

SMUCSE 4344 application layer

SMUCSE 4344 application vs. application-layer protocols application-layer protocol is just one piece –how the end hosts communicate example: World Wide Web –HyperText Transfer Protocol (HTTP) is protocol –but the Web includes other components, such as document formats (HTML), Web browsers, servers, … example: electronic mail –Simple Mail Transfer Protocol (SMTP) is protocol –but includes other components, such as mail servers, user mailboxes, mail readers

SMUCSE 4344 DNS – Domain Name System DNS maps ASCII host names (e.g., marge.engr.smu.edu) & addresses (e.g., to IP addresses resolver procedure queries DNS name server with ASCII name parameter, gets back resource record numeric IP addresses used for Internet routing domains are hierarchical

SMUCSE 4344 zones DNS name space comprises zones each zone has its own name server(s)‏ authoritative record vs. cached record

SMUCSE 4344 DNS zones Part of the DNS name space showing the division into zones.

SMUCSE 4344 DNS lookup illustration a resolver looks up host linda.cs.yale.edu recursive query

SMUCSE architecture and services user agent mail transfer agent (daemon)‏ basic application functions –composition addresses, other header fields, text body –transfer (MX to MX)‏ –reporting (bounced, delivered, still trying)‏ –displaying (folders, messages)‏ status: unread, read, answered, deleted text, attachments –disposition (delete, save, organize, recycle)‏

SMUCSE message format – RFC 822 RFC 822 header fields related to message transport

SMUCSE 4344 RFC 822 more RFC 822 message header fields

SMUCSE 4344 MIME headers MIME defines encoding rules for non-ASCII, using five additional RFC 822-compliant headers

SMUCSE 4344 message transfer SMTP: Simple Mail Transfer Protocol –TCP over well- known port 25 –ASCII protocol

SMUCSE 4344 final delivery -Post Office Protocol v. 3 (POP3): client downloads messages (port 110)‏ - Internet Message Access Protocol (IMAP): msgs stay on server (port 143)‏

SMUCSE 4344 POP3 vs. IMAP

SMUCSE 4344 World Wide Web (WWW)‏ architectural overview HTTP – HyperText Transfer Protocol performance enhancements

SMUCSE 4344 WWW origins hypertext, Vannevar Bush, M.I.T., 1945 Tim Berners-Lee, CERN, 1989 –proposal: networked “web” of hyperlinked documents Marc Andreessen, U Illinois –Mosaic graphical browser, 1993 –Netscape, 1994 World Wide Web Consortium (W3C)‏ –CERN, M.I.T. –standardization effort –director, Tim Berners-Lee

SMUCSE 4344 WWW architecture web pages and hyperlinks web servers host web pages client software: web browser basic operation –user selects a hyperlink –browser requests IP address from DNS –browser requests hyperlink-identified web page –web server sends new web page –browser “renders” new web page –only whole pages sent

SMUCSE 4344 architectural overview

SMUCSE 4344 WWW clients URL: Uniform Resource Locator hyperlinks are based on URLs – :// / – WWW services at well-known port 80 HyperText Markup Language: HTML

SMUCSE 4344 URLs – Uniform Resource Locaters Some common URLs.

SMUCSE 4344 display of non-HTML content plug-ins extend the browsers capabilities helpers are independent processes dynamic content: PHP, JSP, ASP, perl, javascript Wireless Application Protocol (WAP); i-mode;...

SMUCSE 4344 web servers multi-threaded Web server with front end and processing modules

SMUCSE 4344 server farm

SMUCSE 4344 caching Hierarchical caching with three proxies.

SMUCSE 4344 caching vs. replication motivations for moving content close to users –reduce latency for user –reduce load on network and server caching –replicating content “on demand” after request –storing response message locally for future use replication –planned replication of content in multiple locations –updating of resources is handled outside of HTTP –can replicate scripts that create dynamic responses

SMUCSE 4344 caching vs. replication caching first seen as very important in HTTP –many additions to HTTP to support caching in particular, cache validation deployment of caching proxies in the 1990s –service providers & enterprises deployed proxies –… to cache content across a community of users –sometimes, gains were not very dramatic then, content distribution networks emerged –companies (like Akamai) that replicate Web sites –host all (or part) of a Web site for a content provider –place replicas all over world on many machines

SMUCSE 4344 TCP interaction: multiple transfers most Web pages have multiple objects –e.g., HTML file, multiple embedded images serializing the transfers is not efficient –sending images one at a time introduces delay –cannot retrieve another image until first arrives parallel connections –browser opens multiple TCP connections … and retrieves a single image on each connection performance trade-offs –multiple downloads share same network links –unfairness to other traffic traversing the links

SMUCSE 4344 TCP interaction: short transfers HTTP transfers are short –very small request message (e.g., a few hundred bytes)‏ –small response message (e.g., a few kilobytes)‏ TCP overhead may be big –three-way handshake to establish connection –four-way handshake to tear down the connection time to transmit file initiate TCP connection RTT request file RTT file received time

SMUCSE 4344 TCP interaction: persistent connections handle multiple transfers per connection –added to HTTP after Web became very popular –maintain TCP connection across multiple requests –either client or server can tear down the connection performance advantages –avoid overhead of connection set-up and tear-down –allow TCP to learn a more accurate RTT estimate –allow the TCP congestion window to increase further enhancement: pipelining –send multiple requests one after the other … before receiving the first response

SMUCSE 4344 reflecting on application-layer protocols protocols are tailored to applications –each protocol is customized to a specific need protocols have many key similarities –each new protocol was influenced by the previous ones –new protocols commonly borrow from the older ones protocols depend on same underlying substrate –Domain Name System (DNS)‏ –e.g., ordered reliable stream of bytes (i.e., TCP)‏ relevance of the protocol standards process –important for interoperability across implementations –yet, not necessary if same party writes all of the software …which is increasingly common (e.g., P2P software)‏