COMP 431 Internet Services & Protocols

Slides:



Advertisements
Similar presentations
Application Layer 2-1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012.
Advertisements

1 Electronic Mail u Three major components: u user agents u mail servers u simple mail transfer protocol: SMTP u User Agent u a.k.a. “mail reader” u composing,
2: Application Layer1 ECE5650 FTP, , DNS, and P2P.
Layer Aplikasi Risanuri Hidayat. Applications and application-layer protocols Application: communicating, distributed processes –e.g., , Web, P2P.
TCP/IP Protocol Suite 1 Chapter 20 Upon completion you will be able to: Electronic Mail: SMTP, POP, and IMAP Understand four configurations of architecture.
CPSC 441: FTP & SMTP1 Application Layer: FTP & Instructor: Carey Williamson Office: ICT Class.
TODO SMTP, POP, IMAP, NNTP, FTP, RTP maybe Telnet examples spam
Chapter 2: Application layer  2.1 Web and HTTP  2.2 FTP 2-1 Lecture 5 Application Layer.
2: Application Layer1 Traceroute – roundtrip times from source to the given hop traceroute to ( ), 30 hops max, 38 byte packets.
Electronic Mail and SMTP
Ftp: File Transfer Protocol  ftp specification: RFC 959 ( file transfer FTP server FTP user interface FTP client local.
2: Application Layer1 Chapter 2: Application Layer Chapter goals: r conceptual + implementation aspects of network application protocols m client server.
2: Application Layer FTP, , and DNS. 2: Application Layer 2 Chapter 2 Application Layer Computer Networking: A Top Down Approach Featuring.
Chapter 30 Electronic Mail Representation & Transfer
Esimerkki: Sähköposti. Lappeenranta University of Technology / JP, PH, AH Electronic Mail Three major components: user agents mail servers simple mail.
Simple Mail Transfer Protocol
Introduction 1 Lecture 7 Application Layer (FTP, ) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer Science & Engineering.
Mail Server Fitri Setyorini. Content SMTP POP3 How mail server works IMAP.
1 Lecture #3 Electronic Mail Protocols HAIT Summer 2005 Shimrit Tzur-David.
Electronic Mail Three major components: SMTP user agents mail servers
Introduction 1-1 Chapter 2 FTP & Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 IC322 Fall.
FTP File Transfer Protocol. Introduction transfer file to/from remote host client/server model  client: side that initiates transfer (either to/from.
2: Application Layer1 Chapter 2 Application Layer These slides derived from Computer Networking: A Top Down Approach, 6 th edition. Jim Kurose, Keith Ross.
SMTP, POP3, IMAP.
1 Application Layer Lecture 5 Imran Ahmed University of Management & Technology.
Trying out HTTP (client side) for yourself
Data Communications and Computer Networks Chapter 2 CS 3830 Lecture 9
Lecture51 Administrative Things r Grader: Yona Raekow Office hours: Wed. 1pm-3pm or Th. 11am-1pm r Homeworks.
CSE401N: Computer Networks Lecture-5 Electronic Mail S. M. Hasibul Haque Lecturer Dept. of CSE, BUET.
IT 424 Networks2 IT 424 Networks2 Ack.: Slides are adapted from the slides of the book: “Computer Networking” – J. Kurose, K. Ross Chapter 2: Application.
Communications and Networks Lecture 5 Instructor: Rina Zviel-Girshin.
Intro to Computer Networks Bob Bradley The University of Tennessee at Martin.
Review: –How do we address “a network end-point”? –What services are provided by the Internet? –What is the network logical topology observed by a network.
Application Layer Protocols Simple Mail Transfer Protocol.
05 - FTP, , and DNS 2: Application Layer.
1 Computer Communication & Networks Lecture 27 Application Layer: Electronic mail and FTP Waleed.
Lecturer: Maxim Podlesny Sep CSE 473 File Transfer and Electronic in Internet.
DNS,SMTP,MIME.
Fall 2005 By: H. Veisi Computer networks course Olum-fonoon Babol Chapter 7 The Application Layer.
2: Application Layer1 Chapter 2: Application Layer Chapter goals: r conceptual + implementation aspects of network application protocols m client server.
2: Application Layer1 Chapter 2: Application Layer Chapter goals: r conceptual + implementation aspects of network application protocols m client server.
2: Application Layer1 Application Layer Chapter goals: r conceptual + implementation aspects of network application protocols m client server paradigm.
2: Application Layer1 Reminder r Homework 1 for Wednesday: m Problems #3-5,11,16,18-20 m Half of the problems will be graded r Feel free to send me .
Sending and Receiving Mails
FTP (File Transfer Protocol) & Telnet
TCOM 509 – Internet Protocols (TCP/IP) Lecture 06_c Application Protocols: HTTP, FTP, SMTP Instructor: Dr. Li-Chuan Chen Date: 10/06/2003 Based in part.
File Transfer Protocol (FTP)
1 Application Layer Goals: r conceptual + implementation aspects of network application protocols m client server paradigm m service models r learn about.
Application Layer1 Electronic Mail. Application Layer2 Electronic Mail Three major components: r user agents r mail servers r simple mail transfer protocol:
Data Communications and Computer Networks Chapter 2 CS 3830 Lecture 8 Omar Meqdadi Department of Computer Science and Software Engineering University of.
CSE 524: Lecture 6 Application layer protocols. Where we’re at… ● Internet architecture and history ● Internet protocols in practice ● Application layer.
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.
CS440 Computer Networks 1 Neil Tang 12/01/2008.
Slides based on Carey Williamson’s: FTP & SMTP1 File Transfer Protocol (FTP) r FTP client contacts FTP server at port 21, specifying TCP as transport protocol.
Application Layer 2-1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012.
World Wide Web r Most Web pages consist of: m base HTML page, and m several referenced objects addressed by a URL r URL has two components: host name and.
@Yuan Xue A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their.
Dr. Adil Yousif University of Alneelian – Master of CS - IT Electronic Mail.
Spring 2006 CPE : Application Layer_ 1 Special Topics in Computer Engineering Application layer: Some of these Slides are Based on Slides.
درس مهندسی اینترنت – مهدی عمادی مهندسی اینترنت برنامه‌نویسی در اینترنت 1 SMTP, FTP.
TODO SMTP, POP, IMAP, NNTP, FTP, RTP maybe Telnet examples spam
Data Communications and Computer Networks Chapter 2 CS 3830 Lecture 9
SMTP, POP3, IMAP.
Chapter 2: Application layer
Internet and Intranet Protocols and Applications
Chapter 2: Application Layer
The Application Layer: SMTP, FTP
Chapter 2 Application Layer
Chapter 2: Application Layer
Part II Application Layer.
Presentation transcript:

COMP 431 Internet Services & Protocols Applications & Application-Layer Protocols: FTP and Email (SMTP & POP) Jasleen Kaur February 16, 2016

Application-Layer Protocols Outline transport network link physical The architecture of distributed systems Client/Server computing The programming model used in constructing distributed systems Socket programming Example client/server systems and their application-layer protocols The World-Wide Web (HTTP) Reliable file transfer (FTP) E-mail (SMTP & POP) Internet Domain Name System (DNS) local ISP company network regional ISP

Application-Layer Protocols FTP: The Internet file transfer protocol (RFC 959) user interface File Transfer User at host FTP client FTP server Local file system Remote file system FTP is used to transfer a file to/from remote host FTP uses a client/server model Client: side that initiates transfer (either to/from remote) Server: remote host FTP server listens for connections on port 21

FTP Protocol Design Control and data sockets TCP control connection (port 21) FTP client FTP server TCP data connection (port 20) FTP client contacts FTP server on port 21, using TCP as the transport protocol Two parallel TCP connections opened: A control connection for exchanging commands, responses (“out of band control”) n data connections for transferring file data to/from server FTP server maintains “state” Remembers current directory, earlier authentication

FTP Protocol Design FTP commands, responses Sample commands: Sent as ASCII text on control socket Sample return codes Status code and phrase (as in HTTP) USER <username> PASS <password> LIST Return list of file in current directory RETR <filename> Retrieves (gets) file STOR <filename> Stores (puts) file onto remote host 331 Username OK, password required 125 data connection already open; transfer starting 425 Can’t open data connection 452 Error writing file

Application-Layer Protocols Electronic mail user agent mail server SMTP Major components: User agents Mail servers Mailboxes Protocols: Simple Mail Transfer Protocol (SMTP) delivers mail to servers From clients to local mail server Inter-mail server delivery POP user agent mail server SMTP SMTP SMTP user agent mail server SMTP SMTP user agent SMTP Post Office Protocol (POP) for user access to delivered email POP

Electronic Mail Mail servers user mailbox outgoing message queue Servers maintain: A message queue of outgoing email messages A mailbox containing incoming messages for each user SMTP protocol is run between mail agents and servers to send email messages Client — the sending mail server or agent Server — the receiving mail server POP user agent mail server SMTP user agent mail server SMTP SMTP user agent SMTP POP

Electronic Mail The email delivery process Protocol flow Email flow mail server mail server Remote Mail Server user agent Mail Recipient user agent SMTP SMTP POP IMAP Mail Sender Local Mail Server User’s mail agent contacts its local mail server Local mail server contacts the destination mail server(s) Destination mail server places the mail into the appropriate user’s mailbox User retrieves mail via a mail access protocol

The Email Delivery Process SMTP [RFC 821] SMTP uses a TCP socket on port 25 to transfer email reliably from client to server Email is temporarily stored on the local server and eventually transferred directly to receiving server Intermediate relay is a special case Three phases of the protocol: Handshaking (“greeting”) Transfer of messages Closure Client/server interaction follows a command/response paradigm commands: ASCII text <CRLF> response: status code and phrase <CRLF> messages must be in 7-bit ASCII

The Email Delivery Process Sample SMTP interaction SMTP client establishes TCP connection to server hamburger.edu at port 25 (SMTP is non-standard in that the server “talks first”) Server: 220 hamburger.edu Client: HELO crepes.fr S: 250 Hello crepes.fr, pleased to meet you C: MAIL FROM: <alice@crepes.fr> S: 250 alice@crepes.fr... Sender ok C: RCPT TO: <bob@hamburger.edu> S: 250 bob@hamburger.edu ... Recipient ok C: DATA S: 354 Enter mail, end with "." on a line by itself C: Do you like ketchup? C: How about pickles? C: . S: 250 Message accepted for delivery C: QUIT S: 221 hamburger.edu closing connection Line with single ‘.’ is the message delimiter

Electronic Mail Mail message format (RFC 822) Header lines, e.g., From: To: Subject: these are different from SMTP commands! Body The “message”, ASCII characters only header blank line body

Mail Message Format MIME — Multimedia mail extensions (RFC 2045, 2056) SMTP requires all data to be 7-bit ASCII characters All non-ASCII data must be encoded as ASCII strings Additional lines in the message header declare MIME content type From: alice@crepes.fr To: bob@hamburger.edu Subject: Picture of yummy crepe. MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Type: image/jpeg base64 encoded data ..... ......................... ......base64 encoded data MIME version Method used to encode data Multimedia data type, subtype, parameter declaration ASCII encoded data

MIME Multimedia Mail Extensions MIME types Content-Type: <type>/<subtype>[; <parameters>] (optional, type-dependent) Content-Type: text/plain; charset=us-ascii Content-Type: application/pdf; filename=foo.pdf Text Subtypes: plain, html Image Subtypes: jpeg, gif Audio Subtypes: basic (8-bit -law encoded), 32kadpcm (32 kbps ADPCM) Video Subtypes: mpeg, quicktime Application Other data that must be processed by reader before it is “viewable” Subtypes: msword, octet-stream

MIME Types Multipart Type From: alice@crepes.fr To: bob@hamburger.edu Subject: Picture of yummy crepe. MIME-Version: 1.0 Content-Type: multipart/mixed; boundary=98766789 --98766789 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain Dear Bob, Please find a picture of a crepe. Content-Transfer-Encoding: base64 Content-Type: image/jpeg base64 encoded data ..... ......................... ......base64 encoded data --98766789-- MIME version Header/Body separators

MIME Types Multipart Type From: alice@crepes.fr To: bob@hamburger.edu Subject: Picture of yummy crepe. MIME-Version: 1.0 Content-Type: multipart/mixed; boundary=98766789 --98766789 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain Dear Bob, Please find a picture of a crepe. Content-Transfer-Encoding: base64 Content-Type: image/jpeg base64 encoded data ..... ......................... ......base64 encoded data --98766789-- MIME version Indicates multiple, mixed types Defines parts separator 1 part Encoding & type specified for each part 1 part

Electronic Mail SMTP notes SMTP uses persistent connections SMTP is a “push” protocol SMTP requires that message (header & body) be in 7-bit ASCII All binary objects must be ASCII encoded Certain character strings are not permitted in a message Message has to be encoded if these strings are used With MIME extensions, multiple objects can be sent in a single multipart message SMTP server uses CRLF.CRLF to determine end of message

Electronic Mail Mail access protocols server mail server user agent user agent SMTP SMTP POP IMAP Mail Sender Local Mail Server Remote Mail Server Mail Recipient SMTP: Delivery to receiver’s server Mail access protocol: Retrieval from server by a user POP [RFC 1939] — Authorization and download IMAP (Internet Mail Access Protocol) [RFC 1730] More features (more complex) Manipulation of stored messages on server HTTP: Hotmail , Yahoo! Mail, etc.

Mail Access Protocols The POP-3 protocol S: +OK POP3 server ready C: user alice S: +OK C: pass hungry Authorization phase Client commands: user: declare username pass: password Server responses +OK -ERR Transaction phase list: list message numbers retr: retrieve message by number dele: delete quit C: list S: 1 498 S: 2 912 S: . C: retr 1 S: <message 1 contents> C: dele 1 C: retr 2 C: dele 2 C: quit S: +OK

Application-Layer Protocols HTTP v. SMTP HTTP is a “pull” protocol, SMTP is a “push” protocol Persistence: SMTP uses persistent connections HTTP may or may not Message/object content: Both have ASCII command/response interaction and status codes SMTP requires that messages be in 7-bit ASCII — multiple objects message sent in a multipart message HTTP can transfer anything —each object is encapsulated in its own response headers