June 17, 2009 - PowerPoint PPT Presentation

Loading...

PPT – June 17, 2009 PowerPoint presentation | free to view - id: a4ce-ODNlY



Loading


The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
About This Presentation
Title:

June 17, 2009

Description:

A message that one mail users wants to send to another mail user somewhere ... Somewhere in the yahoo mail server there is a mailbox named boulderjug. ... – PowerPoint PPT presentation

Number of Views:131
Avg rating:3.0/5.0
Slides: 26
Provided by: elliot8
Category:
Tags: june | yahoomail

less

Write a Comment
User Comments (0)
Transcript and Presenter's Notes

Title: June 17, 2009


1
E-mail
  • Your textbook covers this material in greater
    generality than we will cover in class. Well
    focus on the most common paradigms.

2
Main Elements of Email system
  • A message that one mail users wants to send to
    another mail user somewhere
  • Concept of a mailbox physical storage location
    for one identitys email messages
  • Concept of an email address two parts
    handle_at_computername
  • Email protocol rules for sending and responding
    to messages sent to convey email SMTP (RFC
    821, or newer RFC 2821)
  • Email format rules for layout of a message
    conveying email RFC 822 or newer RFC 2822
  • Email Architecture what software programs are
    needed and where do they run? Where do you put
    mailboxes?
  • Client side and server side

3
Mailboxes
  • Given an entity that needs to receive email, that
    entity needs some place to store the email
    messages that come to it.
  • A mailbox is an actual storage location dedicated
    to holding the received email messages of the
    given entity usally a text file
  • The entity could be a person, a group of persons,
    a computer program, a company, etc. anything
    that wants to receive email specifically to it.
  • There is one unique mailbox for the entity and it
    includes storage space for all mail messages sent
    to the entity
  • The mailbox for an entity exists only in one
    place, on one computer. This could be a persons
    PC, or a big server machine for a company, or a
    big server machine for a person, etc.
  • Each mailbox is given a unique identifier, the
    mailbox address
  • When you send email, you actually send it to a
    mailbox. How can you get the message from your
    computer to the computer where the mailbox sits?
    How can the person (who you sent it to) get it
    from the mailbox to them so they can read it?

4
Email Addresses
  • Two parts
  • Mailbox name (usually same as user name)
  • Machine name (computer on which mailbox resides)
  • evansell_at_mscd.edu - tells us
  • there is some mailbox named evansell (dedicated
    to the user evansell me!) and that mscd.edu is
    the gateway to send to in order to get to the
    mailbox for evansell. Actually when looking up
    the MX type naming record for mscd.edu, we will
    find that this is an alias for mail.mscd.edu,
    which is actually a mail server where my mailbox
    sits
  • boulderjug_at_yahoo.groups - tells us
  • Somewhere in the yahoo mail server there is a
    mailbox named boulderjug. This a actually
    represents a list of people who are members of
    the Boulder Java Users Group. Sending email to
    this mailbox will get one copy of the mail in the
    mailbox but will cause the server (on the machine
    where the mailbox sits) to send a copy of that
    email to each person on the list (exploding the
    email)

5
Email Protocols
  • A communications protocol is a design that
    specifies how two computers can talk to each
    other what messages can they send? In what order
    do they send them? Who talks first? How do they
    initialize the communication? How do they handle
    errors? Etc.
  • For email, there are two problems to solve
  • how to get email from senders computer to the
    computer where target mailbox resides?
  • If the email is destined for some person, how do
    you get the email from the persons mailbox
    (wherever that is!) to the computer where the
    person is?
  • Simple Mail Transport Protocol (SMTP RFC 2821)
    is the protocol that answers the first question
    getting to mailbox
  • Post Office Protocol (POP3 RFC 1081) is the
    protocol that answers the second question.
    Internet Message Access Protocol (IMAP) extends
    POP.
  • Both based on TCP and require a TCP connection to
    be set up before any mail messages can be sent.
  • Usually your local mail server that server as a
    POP server requires authentication from receiving
    user before it will pass along to user messages
    in his mailbox.

6
Simplified Email Overview
Me the receiver
You the sender
My PC
POP Client software
Your PC
Note If my mailbox is here My PC needs to run
mail server code MTA, MDA. SMTP relay host
talks directly to My PC.
Your email domain
SMTP Client software
POP (or IMAP)
SMTP
SMTP Relay Host (has mail transfer and delivery
agent) Server serving the sending needs in your
local mail Domain
My email domain
Destination SMTP Server- Machine where my
Mailbox resides
evansell mailbox
Software SMTP Server MTA, MDA
Software SMTP Server MTA, MDA
Software POP Server
Note If my mailbox is here no need to go over
internet MDA puts it in my mailbox locally
STMP Protocol
  • Three mutually separated TCP connections
  • From your SMTP client to your local SMTP
    relay server
  • From my POP client to my POP server (destination
    SMTP server)
  • From local relay server to destination SMTP
    server
  • Can exist at different times

The Internet
7
Email Message Format
  • First note that all messages are transmitted in
    ASCII (text) see ASCII table in your book
  • SMTP is a text-based protocol
  • everything has to be sent in ASCII text
    characters including the new-line character to
    separate lines
  • Message has two parts, separated with single
    blank line
  • A set of headers (RFC 822) some of which are
    mandatory and some optional - headers are of form
    keywordvalue
  • A body - which may contain any plain ASCII text.
    The body part follows the headers, separated from
    them by a blank line. Note that more recent
    standards than RFC822 (MIME) extend the range of
    possible messages which can be sent by email as
    enclosures or attachments but these must be
    converted to text before transmission

8
Layout of a Simple Email Message
Return-Path Received from
mtiwgwc12.worldnet.att.net (127.0.0.1)
by mtiwgwc12.worldnet.att.net
(InterMail vM.5.01.05.12 201-253-122-126-112-20020
820) with ESMTP id 698.mtiwgwc12.worldnet.att.net_at_mtiwgwc12.worldnet.
att.net for
Wed, 23 Apr 2003 192504 0000 Received from
clem.mscd.edu (147.153.1.3) by
mtiwgwc12.worldnet.att.net (mtiwgwc12) with
ESMTP id
Wed, 23 Apr 2003 192503 0000 Received from
CONVERSION-DAEMON.clem.mscd.edu by clem.mscd.edu
(PMDF V6.2 30655) id u for elliottl_at_worldnet.att.net Wed, 23 Apr
2003 132503 -0600 (MDT) Received from webmail
(147.153.1.20) by clem.mscd.edu (PMDF V6.2
30655) with ESMTP id du for elliottl_at_worldnet.att.net Wed, 23 Apr
2003 132503 -0600 (MDT) Date Wed, 23 Apr 2003
132004 -0600 From evansell
Subject Test Message Sender evansell
To elliottl_at_worldnet.att.net
Message-id MIME-version
1.0 X-Mailer WebMail (Hydra) SMTP
v3.61 Content-type text/plain
charsetISO-8859-1 Content-transfer-encoding
7bit X-WebMail-UserID evansell X-EXP32-SerialNo
00002971 Elliott How are you. I'm doin' fine
myself. Your pal, Elliott
Return-Path Received from
sltrmail.sltr.com (127.0.0.1) by
sltrmail.sltr.com (InterMail vM.5.01.05.12
201-253-122-126-112-20020820) with ESMTP
id rmail.sltr.com for
Wed, 23 Apr 2003 192504 0000 Received from
clem.mscd.edu (147.153.1.3) by
sltrmail.sltr.com (sltrmail) with ESMTP
id Wed, 23 Apr 2003
192503 0000 Received from CONVERSION-DAEMON.cl
em.mscd.edu by clem.mscd.edu (PMDF V6.2 30655)
id for
evans_at_sltr.com Wed, 23 Apr 2003 132503 -0600
(MDT) Received from webmail (147.153.1.20) by
clem.mscd.edu (PMDF V6.2 30655) with ESMTP id
for
evans_at_sltr.com Wed, 23 Apr 2003 132503 -0600
(MDT) Date Wed, 23 Apr 2003 132004 -0600 From
evansell Subject Test
Message Sender evansell To
evans_at_sltr.com Message-id MIME
-version 1.0 X-Mailer WebMail (Hydra) SMTP
v3.61 Content-type text/plain
charsetISO-8859-1 Content-transfer-encoding
7bit X-WebMail-UserID evansell X-EXP32-SerialNo
00002971 Elliott How are you. I'm doin' fine
myself. Your pal, Elliott
All in plain text (7 bit ASCII)
9
Messages RFC 822
10
RFC 822 Cont.
11
MIME
  • IETF Multipurpose Internet Mail Extensions
  • For non-ASCII email to send components of mail
    like pictures, Microsoft word documents, Excel
    Spreadsheets, etc.
  • Binary data encoded
  • Encoding scheme must convert raw binary data into
    ASCII Text characters theres lots of different
    ways to do this.
  • Then the converted ASCII characters are sent in
    an SMTP message
  • The receiving end needs to decode the received
    ASCII characters back into the original binary
    form
  • MIME doesnt specify encoding method, only how it
    was done so it can be undone
  • Sender and receiver must agree on encoding scheme

12
MIME Continued
  • Messages may have multiple parts
  • Each encoded differently
  • Very flexible
  • Does not specify all methods, only how to specify
    method
  • Works over existing e-mail systems

13
MIME ExampleWhats Actually Sent
Return-Path Received from
clem.mscd.edu (147.153.1.3) Date Tue, 04 Mar
2003 183136 -0700 From evansell
Subject Take home Sender
evansell To
evans_at_sltr.com Message-id MIME
-version 1.0 X-Mailer WebMail (Hydra) SMTP
v3.61 Content-type multipart/mixed
boundary"Boundary_(ID_Stn9kTQXQXcEbmWzcUPCcA)" X-
WebMail-UserID evansell X-EXP32-SerialNo
00002971 This is the preamble of a multipart
MIME formatted message. If you are reading this
text your mail system is most likely not
capable of properly decoding MIME messages. To
extract the contents of this message, save it
to a file and then use an external MIME decoding
utility. --Boundary_(ID_Stn9kTQXQXcEbmWzcUPCcA) C
ontent-type text/plain charset"ISO-8859-1" Cont
ent-transfer-encoding 7bit --Boundary_(ID_Stn9kT
QXQXcEbmWzcUPCcA) Content-type
application/octet-stream name"Extra Point Take
Home Exercise.doc" Content-transfer-encoding
BASE64 Content-disposition attachment
filename"Extra Point Take Home
Exercise.doc" 0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgA
DAP7/CQAGAAAAAAAAAAAAAAABAAAA (ETC
- many more lines of gobbledygook - but these
characters represent the encoding
of the binary file "Extra Point Take Home
Exercise.doc" into ASCII text
characters) YW5kIEMgPSA4LiAgQXNzdW1lIEkgYW5kIEogYX
JlIGludCBhbmQgdGhhdCBJID0g AAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAA
AAAAAAAAAAAAAA --Boundary_(ID_Stn9kTQXQXcEbmWzc
UPCcA)--
14
MIME Cont.
15
MIME Types for Content-Type Header
16
Architecture
  • Mail User Agent, used to read mail
  • Eudora, Outlook, Pine, Elm
  • Mail Transfer Agent, used to move mail
  • Sendmail, IIS
  • Mail Delivery Agent - Relay, used to deliver mail
    to mailbox
  • Sendmail, POP, IMAP

17
Mail Transfer Agent
  • New messages are placed in a queue
  • Local delivery easy
  • Remote delivery requires server to become client
    of remote Mail Transfer Agent

18
Remote Delivery
19
Gateways (or Relays)
  • Often, a single Mail Transfer/Delivery Agent
    serves an entire organization
  • Given a piece of email to send out, a relay will
    use SMTP to try to send that email to the machine
    where the target mailbox resides
  • Might have to go to some host PC, or perhaps some
    other server
  • Supports mailing lists exploder function
  • keeps a database of lists, their email addresses
    and all the members of the list
  • Database can be more general to keep track of
    diverse types of mail entities and their mailbox
    addresses
  • Reformats return addresses
  • Simplifies them to make easier to remember
  • Hides internal machine names

20
Gateways Continued
21
Programs
  • E-mail can be directed to software programs
    instead of mailboxes (for humans)
  • Useful for accessing local information, for
    mailing lists, etc.
  • Mailing lists are automated for rapid service
  • Usually a program running on some server where
    the email list is kept. You send mail to the
    program to get it to add you to the list.

22
E-mail Access wheres the mailbox and how do I
get to it?
  • Most people dont want to run MTA, or have the
    mailbox, on their own machine
  • Complex
  • Run continuously mailbox may not be available
    sometimes
  • Put all the mailboxes for a given domain inside
    one big mail server. This runs an MTA to get
    sent SMTP messages and move them into the
    appropriate mailboxes
  • To get email from mailbox to real client
    Download e-mail from remote machine
  • Post Office Protocol (POP) (RFC 1081) or IMAP
    (extends POP online mode and other states)

23
POP Picture
24
Sending E-mail
  • POP not used
  • Simple Mail Transmission Protocol (SMTP) used
    (RFC 821)
  • Used from client and between organizations

25
An Example SMTP Session via Telnet
telnet webmail.mscd.edu 25 Trying
147.153.1.20... Connected to webmail.mscd.edu. Esc
ape character is ''. 220 webmail WebMail ESMTP
v3.61 Ready HELO webmail.mscd.edu 250 Ok, hello
webmail.mscd.edu. MAIL FROM evansell_at_mscd.edu 250
evansell_at_mscd.edu ... Sender Ok RCPT TO
evansell_at_mscd.edu 250 ...
Recipient Ok (will forward) DATA 354 Ok, end with
"." on a new line... From elliott
(evansell_at_mscd.edu) Reply-To evansell_at_mscd.edu To
evansell_at_mscd.edu Subject Let's See If this
works This is a test mail from a Telnet
SMTP connection to webmail.mscd.edu. Please
reply. Elliott . 250 Message delivered to 1
recipients quit 221 webmail WebMail ESMTP v3.61
closing connection. Connection closed by foreign
host.
Actual RFC822 message layout that will be sent
About PowerShow.com