Simple Mail Transfer Protocol (SMTP) - PowerPoint PPT Presentation

About This Presentation
Title:

Simple Mail Transfer Protocol (SMTP)

Description:

... uses NVT 7 bit ASCII format. How to represent ... encoded into 8-bit ASCII ... Type: TEXT/PLAIN; charset='US-ASCII'; format=flowed. There is an image ... – PowerPoint PPT presentation

Number of Views:7240
Avg rating:5.0/5.0
Slides: 30
Provided by: Avi135
Category:

less

Transcript and Presenter's Notes

Title: Simple Mail Transfer Protocol (SMTP)


1
Simple Mail Transfer Protocol(SMTP)
  • Kanika Thapar
  • CISC 856 TCP/IP and Upper Layer Protocols
  • 11/8/2007
  • (Some slides provided by Ezra Kissel, some
    figures taken from Forouzans book)

2
Overview
  • Introduction
  • Sendmail
  • How SMTP works?
  • SMTP data transfer
  • Examples
  • Limitations extensions
  • Retrieving mail (Mailbox protocols)

3
Introduction
4
Collects mail and delivers to user agent
Transfers mails from one host to another
Introduction
Transfers mails from one host to another
Collects mail and delivers to user agent
Composes, reads, replies to ,forwards and handles
mailboxes
5
Message transfer
SMTP is a push protocol
6
Sendmail
  • Mail Transfer Agent MTA is a computer program
    or software agent that transfers electronic mail
    messages from one computer to another.
  • Sendmail is a MTA
  • Supports several mail transfers including SMTP
  • Pros
  • Can perform header rewriting, mail routing
  • Extensive support available
  • Cons
  • Not secure
  • Code is bulky compared to other MTAs such as
    qmail

7
Relays and Gateways
  • SMTP server can also assume the role of a relay
  • SMTP mail gateways are used to transport mail
    prepared by a protocol other than SMTP

Non-SMTP supported
SMTP supported
8
How SMTP works?
Command format
Keyword argument(s)
Response format
3-digit status code textual information
Link Layer PCI
Link Layer PCI
IP-PCI
IP-PCI
TCP-PCI
TCP-PCI
TCP-PCI
SMTP command/response
SMTP command/response
SMTP command/response
9
SMTP A-PDUs
The Basics
The Extras
Keyword Arguments
HELO Senders host domain name
MAIL FROM Email address of sender
RCPT TO Email of intended recipient
DATA Body of the message
QUIT
Keyword Arguments
RSET
VRFY Name to be verified
NOOP
TURN
EXPN Mailing list to expand
HELP Command name
10
How SMTP works Status Codes
  • The Server responds with a 3 digit code that may
    be followed by text info
  • 2 - Success
  • 3 - Command can be accepted with more
    information
  • 4 - Command was rejected, but error
    condition is temporary
  • 5 - Command rejected, Bad User!

11
Traditional mail vs email
E-mail envelope and body
Traditional mail envelope and body
12
Connection Establishment
SYN
SYNACK
Port 25
Ephemeral port
Port 25
Ephemeral port
SYN
13

Ephemeral port
Port 25
14
Connection Termination
Port 25
Ephemeral port
FIN
ACK
RESET
15
Simulating MTA client using telnet
telnet mail.adelphia.net 25Trying
68.168.78.100...Connected to mail.adelphia.net
(68.168.78.100).
ConnectionEstablishment

220 mta13.adelphia.net SMTP server ready Thur, 8
Nov 2007 ..HELO mail.adelphia.net 250
mta13.adelphia.net
Envelope

MAIL FROM forouzanb_at_adelphia.net 250 Sender
ltforouzanb_at_adelphia.netgt OkRCPT TO
thapar_at_udel.edu 250 Recipient ltthapar_at_udel.edugt
Ok
16
Simulating MTA client using telnet
Header and Body

DATA 354 Ok Send data ending with
ltCRLFgt.ltCRLFgtFrom ForouzanTO ThaparThis is a
test messageto show SMTP in action.. 250
Message received adelphia.net_at_mail.adelphia.net
Connection Termination

QUIT 221 mta13.adelphia.net SMTP server closing
connection Connection closed by foreign host.
17
Limitations in SMTP
  • Only uses NVT 7 bit ASCII format
  • How to represent other data types?
  • Susceptible to misuse (Spamming,
  • faking sender address)

18
Solution SMTP extensions
  • MIME Multipurpose Internet Mail Extensions
  • Transforms non-ASCII data to NVT (Network Virtual
    Terminal) ASCII data

19
MIME headers
20
MIME headers (contd)
  • Content-Type Type of data used in the Body
  • Text plain, unformatted text HTML
  • Multipart Body contains different data types
  • Message Body contains a whole, part, or pointer
    to a message
  • Image Message contains a static image (JPEG,
    GIF)
  • Video Message contains an animated image (MPEG)
  • Audio Message contains a basic sound sample
    (8kHz)
  • Application Message is of data type not
    previously defined
  • Content-Transfer-Encoding How to encode the
    message
  • 7 bit no encoding needed
  • 8 bit Non-ASCII, short lines
  • Binary Non-ASCII, unlimited length lines
  • Base64 6 bit blocks encoded into 8-bit ASCII
  • Quoted-printable send non-ASCII characters as 3
    ASCII characters

21
Base64 Encoding
  • Divides binary data into 24 bit blocks
  • Each block is then divided into 6 bit chunks
  • Each 6-bit section is interpreted as one character

11001100 10000001 00111001
110011 001000 000100 111001
(51)
(8)
(4)
(57)
(z)
(I)
(E)
(5)
01111010
01001001
01000101
00110101
22
Base64 Encoding table
23
Multipart, Encoded MIME Message
From Kanika Thapar ltthapar_at_udel.edugt To
thapar_at_udel.edu Subject attachment
test MIME-Version 1.0 Content-Type
MULTIPART/MIXED boundary"MIMEStream_092061_793
033260215529_597673089" --MIMEStream_092061_793
033260215529_597673089 Content-Type TEXT/PLAIN
charset"US-ASCII" formatflowed There is an
image attached... --MIMEStream_092061_7930332602
15529_597673089 Content-Type IMAGE/jpeg
name"test.jpg" Content-Transfer-Encoding
base64 Content-Disposition attachment
filename"test.jpg" /9j/4AAQSkZJRgABAgEASABIAAD/4
QNxRXhpZgAATU0AKgAAAAgABwESAAMA AAABAAEAAAEaAAUAAA
ABAAAAYgEbAAUAAAABAAAAagEoAAMAAAABAAIAAAEx osv/0
I5nPvr7sVdirsVf/9GO5z766hxQ1il2Kv/0o5nPvr7eKtYq7F
X/9k --MIMEStream_092061_793033260215529_597673
089--

24
Mail Access Protocols POP3 IMAP4
POP3 IMAP4
SMTP
SMTP
25
POP3
26
Post Office Protocol v3
  • Allows the user to obtain a list of their Emails
  • Users can retrieve their emails
  • Users can either delete or keep the email on
    their system
  • Minimizes server resources

27
Internet Mail Access Protocol v4
  • User can check the email header before
    downloading
  • Can search the email for a specific string of
    characters before downloading
  • User can download parts of an email
  • User can create, delete, or rename mailboxes on a
    server

28
Quoted-Printable Encoding
  • Used when the data has a small non-ASCII portion
  • Non-ASCII characters are sent as 3 characters
  • First is , second and third are the hex
    representation of the byte
  • , is the hex representation of the byte

01001100 10011101 00111001
()
(9)
(D)
00111101
00111001
01000100
29
ASCII table
Write a Comment
User Comments (0)
About PowerShow.com