Computer Networks 1 (Mạng Máy Tính 1) Lectured by: Dr. Phạm Trần Vũ MEng. Nguyễn CaoĐạt



Similar documents
Introduction to LAN/WAN. Application Layer (Part II)

1 Introduction: Network Applications

2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET)

Networking Applications

Evolution of the WWW. Communication in the WWW. WWW, HTML, URL and HTTP. HTTP - Message Format. The Client/Server model is used:

Application-layer protocols

Evolution of the WWW. Communication in the WWW. WWW, HTML, URL and HTTP. HTTP Abstract Message Format. The Client/Server model is used:

2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET)

Computer Networks. Lecture 7: Application layer: FTP and HTTP. Marcin Bieńkowski. Institute of Computer Science University of Wrocław

DATA COMMUNICATOIN NETWORKING

Domain Name System (DNS)

FTP: the file transfer protocol

The Application Layer: DNS

1. When will an IP process drop a datagram? 2. When will an IP process fragment a datagram? 3. When will a TCP process drop a segment?

Remote login (Telnet):

The Application Layer. CS158a Chris Pollett May 9, 2007.

Connecting with Computer Science, 2e. Chapter 5 The Internet

Domain Name System (DNS)

Internet Security [1] VU Engin Kirda

Chakchai So-In, Ph.D.

ENTERPRISE LINUX NETWORKING SERVICES

Lecture 2. Internet: who talks with whom?

LabVIEW Internet Toolkit User Guide

GL275 - ENTERPRISE LINUX NETWORKING SERVICES

FTP: the file transfer protocol

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence

Electronic Mail

GL-275: Red Hat Linux Network Services. Course Outline. Course Length: 5 days


Glossary of Technical Terms Related to IPv6

"Charting the Course... Enterprise Linux Networking Services Course Summary

Chapter 2 Application Layer. Lecture 5 FTP, Mail. Computer Networking: A Top Down Approach

Application Example: WWW. Communication in the WWW. WWW, HTML, URL and HTTP. Loading of Web Pages. The Client/Server model is used in the WWW

Lab Tasks 1. Configuring a Slave Name Server 2. Configure rndc for Secure named Control

FTP and . Computer Networks. FTP: the file transfer protocol

FAQs for Oracle iplanet Proxy Server 4.0

The Web History (I) The Web History (II)

Firewall, Mail and File server solution

Proxies. Chapter 4. Network & Security Gildas Avoine

ECE 4321 Computer Networks. Network Programming

Introduction to Computer Security Benoit Donnet Academic Year

Lecture 2 CS An example of a middleware service: DNS Domain Name System

ENTERPRISE LINUX NETWORKING SERVICES

DNS: Domain Names. DNS: Domain Name System. DNS: Root name servers. DNS name servers

Chapter 25 Domain Name System Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Application Layer -1- Network Tools

M3-R3: INTERNET AND WEB DESIGN

4. Client-Level Administration

Introduction to Network Operating Systems

Mail agents. Introduction to Internet Mail. Message format (2) Authenticating senders

Installation Guide For Choic Enterprise Edition

Terminology. Internet Addressing System

Internet Technology 2/13/2013

The World Wide Web: History

- Domain Name System -

Deliuery Networks. A Practical Guide to Content. Gilbert Held. Second Edition. CRC Press. Taylor & Francis Group

CS43: Computer Networks . Kevin Webb Swarthmore College September 24, 2015

Computer Networks & Security 2014/2015

CS3250 Distributed Systems

Understanding DNS (the Domain Name System)

SPAMfighter SMTP Anti Spam Server

Domain Name System (DNS)

CPSC Network Programming. , FTP, and NAT.

CISC 1600 Introduction to Multi-media Computing

Application Layer. CMPT Application Layer 1. Required Reading: Chapter 2 of the text book. Outline of Chapter 2

Network: several computers who can communicate. bus. Main example: Ethernet (1980 today: coaxial cable, twisted pair, 10Mb 1000Gb).

Network Technologies

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

Computer System Management: Hosting Servers, Miscellaneous

IxLoad - Layer 4-7 Performance Testing of Content Aware Devices and Networks

Gateways Using MDaemon 6.0

Chapter 2 Application Layer

Appendix. Web Command Error Codes. Web Command Error Codes

HTTP. Internet Engineering. Fall Bahador Bakhshi CE & IT Department, Amirkabir University of Technology

IBackup Drive User Guide

Motivation. Domain Name System (DNS) Flat Namespace. Hierarchical Namespace

End User Guide The guide for /ftp account owner

Overview of Computer Networks

Device Log Export ENGLISH

Domain Name System Richard T. B. Ma

Parallels Plesk Automation. Customer s Guide. Parallels Plesk Automation 11.5

Web Pages. Static Web Pages SHTML

Configuring DNS. Finding Feature Information

Web Hosting Features. Small Office Premium. Small Office. Basic Premium. Enterprise. Basic. General

Domain Name Servers. Domain Types WWW host names. Internet Names. COMP476 Networked Computer Systems. Domain Name Servers

How to Add Domains and DNS Records

The Domain Name System

By : Khalid Alfalqi Department of Computer Science, Umm Al-Qura University

BorderWare Firewall Server 7.1. Release Notes

Transcription:

Computer Networks 1 (Mạng Máy Tính 1) Lectured by: Dr. Phạm Trần Vũ MEng. Nguyễn CaoĐạt 1

Lecture 10: Application Layer 2

Application Layer Where our applications are running Using services provided by layers below We will look at: Domain Name System Email File Transfer Protocol World Wide Web 3

Domain Name System - DNS IP addresses can be used to identify a host machine on the Internet As people moves around, the addresses need to be changed accordingly as well ASCII names have been invented to decouple host names and their IPs to provide more flexibility The DNS was invented to manage and resolve host names into IP addresses 4

The DNS Name Space A portion of the Internet domain name space. 5

Resource Records Every domain has a set of records associated with The principal DNS resource records types. 6

Resource Records (2) A portion of a possible DNS database for cs.vu.nl. 7

Resource Records (3) hcmut.edu.vn. IN SOA hcmut-server.hcmut.edu.vn. webmaster.hcmut.edu.vn. ( 2004110800; serial 7200; refresh 3600; retry 604800; expire 86400 ); minimum hcmut.edu.vn. 86400 IN NS vnuserv.vnuhcm.edu.vn. hcmut.edu.vn. 86400 IN NS server.vnuhcm.edu.vn. hcmut.edu.vn. 86400 IN MX 0 webmailserv.hcmut.edu.vn. hcmut.edu.vn. 86400 IN MX 5 vnuserv.vnuhcm.edu.vn. hcmut-server.hcmut.edu.vn. 86400 IN A 172.28.2.2 stu-mailserv.hcmut.edu.vn. 86400 IN A 172.28.2.3 webmailserv.hcmut.edu.vn. 86400 IN A 172.28.2.4 pop3.student.hcmut.edu.vn. 86400 IN CNAME stu-mailserv.hcmut.edu.vn. www.student.hcmut.edu.vn 86400 IN CNAME stu-mailserv.hcmut.edu.vn. 8

Name Servers DNS Name Space is organised into nop-overlapping zones Each zone has Name Servers holding information about it 9

DNS - Query root name server recursive query puts burden of name resolution on contacted name server. heavy load? iterated query contacted server replies with name of server to contact. I don t know this name, but ask this server local name server dns.eurecom.fr 1 2 8 requesting host surf.eurecom.fr 3 4 7 iterated query intermediate name server dns.umass.edu 5 6 authoritative name server dns.cs.umass.edu gaia.cs.umass.edu 10

Electronic Mail Email (or E-mail) Has been around since the early days of Internet Is widely used today Informal form of communication Simple and easy to use 11

Electronic Mail (2) Some smileys :-). 12

Architecture and Services Basic email functions Composition Transfer Reporting Displaying Disposition 13

Email Message Structure Envelopes and messages. (a) Paper mail. (b) Electronic mail. 14

Email Systems Has two basic parts: User agent: a program that accepts a variety of commands for composing, receiving, and replying to messages, as well as for manipulating mailboxes Message transfer agents: relaying messages from the originator to the recipient 15

Reading E-mail An example display of the contents of a mailbox. 16

Message Formats RFC 822 header fields related to message transport. 17

Message Formats (2) Some fields used in the RFC 822 message header. 18

MIME Multipurpose Internet Mail Extensions Some problems when using ASCII formatted messages: Languages with accents (French, German). Languages in non-latin alphabets (Hebrew, Russian). Languages without alphabets (Chinese, Japanese). Messages not containing text at all (audio or images). MINE adds structure to the message body and defines encoding rules for non-ascii messages 19

MIME (2) RFC 822 headers added by MIME. 20

MIME (3) The MIME types and subtypes defined in RFC 2045. 21

Message Transfer Message transfer agents are daemons running on mail servers Use Simple Mail Transfer Protocol Use TCP on port 25 22

Message Transfer (2) Transferring a message from elinore@abc.com to carolyn@xyz.com Using SMTP. 23

Final Delivery (a) Sending and reading mail when the receiver has a permanent Internet connection and the user agent runs on the same machine as the message transfer agent. (b) Reading e-mail when the receiver has a dial-up connection to an ISP. 24

POP3 Post Office Protocol Version 3 Use TCP on port 110 Is used to download messages from a mail server to client computers Example: Using POP3 to fetch three messages. 25

IMAP (Internet Message Access Protocol) POP3 is not convenient when users frequently use different machines to read email from servers, as emails have to be downloaded to different computers more or less random IMAP can resolve this issues as emails will be always on the servers A comparison of POP3 and IMAP. 26

Web Mail user agent HTTP SMTP HTTP user agent ordinary Web browser sender s mail server receiver s mail server ordinary Web browser Convenient for the user on the go (Internet Café, WebTV, ) User can organize their hierarchy of folders on servers May be slow: server typically far from client interaction with server through CGI scripts 27

FTP - File Transfer Protocol user at host FTP user interface FTP client local file system file transfer FTP server remote file system transfer file to/from remote host client/server model client: side that initiates transfer (either to/from remote) server: remote host ftp: RFC 959 ftp server: port 21 28

FTP - Out of band control TCP control connection port 21 FTP client TCP data connection port 20 FTP server ftp client contacts ftp server at port 21, specifying TCP as transport protocol. two parallel TCP connections opened: control: exchange commands, responses between client, server. data: file data to/from server. ftp server maintains state : current directory, earlier authentication. 29

FTP - Transfer Mode client FTP Server client FTP Server 2834 connect accept 21 2834 connect accept 21 active mode 2835 passive mode request passive mode 3848 2835 2835 connect data transfer 20 20 2835 2835 connect data transfer 3848 3848 2834 disconnect accept 21 2834 disconnect accept 21 Active Mode Passive Mode 30

The World Wide Web Began in 1989 at CERN (Switzerland) by Tim Berners-Lee To be discussed Architectural Overview Static Web Documents Dynamic Web Documents HTTP The HyperText Transfer Protocol 31

Architectural Overview The parts of the Web model. 32

The Client Side Steps carried out by the browsers 1. The browser determines the URL (by seeing what was selected). 2. The browser asks DNS for the IP address of www.itu.org. 3. DNS replies with 156.106.192.32. 4. The browser makes a TCP connection to port 80 on 156.106.192.32. 5. It then sends over a request asking for file /home/index.html. 6. The www.itu.org server sends the file /home/index.html. 7. The TCP connection is released. 8. The browser displays all the text in /home/index.html. 9. The browser fetches and displays all images in this file. 33

The Client Side (2) To display contents other HTML, e.g. PDF file or a movie clip, browsers use plug-ins or helper applications (a) A browser plug-in. (b) A helper application. 34

The Client Side Generally, steps that a server performs 1. Accept a TCP connection from a client (a browser). 2. Get the name of the file requested. 3. Get the file (from disk). 4. Return the file to the client. 5. Release the TCP connection 35

The Server Side (2) A multithreaded Web server with a front end and processing modules. 36

The Server Side (3) Steps performed by modern web servers 1. Resolve the name of the Web page requested. 2. Authenticate the client. 3. Perform access control on the client. 4. Perform access control on the Web page. 5. Check the cache. 6. Fetch the requested page from disk. 7. Determine the MIME type to include in the response. 8. Take care of miscellaneous odds and ends. 9. Return the reply to the client. 10. Make an entry in the server log. 37

URLs Uniform Resource Locators URLs are used to refer to resources in the Internet, such as a web page Some common URLs. 38

HTML HyperText Markup Language (a) The HTML for a sample Web page. (b) The formatted page. (b) 39

HTML Tags 40

Tables (a) An HTML table. (b) A possible rendition of this table. 41

Forms (a) The HTML for an order form. (b) The formatted page. (b) 42

Dynamic Web Documents Web contents are generated dynamically on demand Dynamic Web documents are now popular in the Internet Dynamic contents can be generated on client side or/and server side 43

Server Side Dynamic Web Documents Steps in processing the information from an HTML form. 44

Server Side Dynamic Web Documents (2) A sample HTML page with embedded PHP. 45

Server Side Dynamic Web Documents (3) (a) A Web page containing a form. (b) A PHP script for handling the output of the form. (c) Output from the PHP script when the inputs are "Barbara" and 24 respectively. 46

Client-Side Dynamic Web Page Generation Use of JavaScript for processing a form. 47

Client-Side Dynamic Web Page Generation (2) (a) Server-side scripting with PHP. (b) Client-side scripting with JavaScript. 48

Client-Side Dynamic Web Page Generation (3) A JavaScript program for computing and printing factorials. 49

Client-Side Dynamic Web Page Generation (4) An interactive Web page that responds to mouse movement. 50

HTTP Methods The built-in HTTP request methods. 51

HTTP Methods (2) The status code response groups. 52

HTTP Message Headers Some HTTP message headers. 53

Example HTTP Usage The start of the output of www.ietf.org/rfc.html. 54

Caching Hierarchical caching with three proxies. 55