Chapter 16: Distributed Applications
description
Transcript of Chapter 16: Distributed Applications
Chapter 16:Distributed Applications
Business Data Communications, 4e
2
Electronic Mail Features
Message Preparation Word processing Annotation
Message Sending User directory Timed delivery Multiple addressing Message priority Status information Interface to other
facilities
Message Receiving Mailbox scanning Message selection Message
notification Message reply Message rerouting
Page Page 442442
3
Single System E-Mail
Only allows users of a shared system to exchange messagesEach user has unique identifier and mailboxSending a message simply puts it into recipients’ boxe.g. RITVAX, AOL
4
Multiple Systems E-Mail
Distributed system enables mail servers to connect over a network to exchange mailFunctions split User agent handles preparation, submission,
reading, filing, etc Transfer agent receives mail from user,
determines routing, communicates with remote systems
Interconnection requires standards
5
Multiple Systems E-Mail
6
Simple Mail Transfer Protocol (SMTP)
Standard for TCP/IP mail transfer, defined in RFC 821Concerned addressing and delivery, not content, with two exceptions Character set standardized as 7-bit
ASCII Adds log information to message that
indicates message path
7
Basic E-Mail Operation
User creates message with user agent program Text includes RFC 822 header and body
of message List of destinations derived from header
Messages are queued and sent to SMTP sender program running on a host
8
SMTP Mail FlowSMTP server transmits messages to appropriate hosts via TCP Multiple messages to same host can be sent on
one connection Errors handling necessary for faulty addresses
and unreachable hosts
SMTP protocol attempts to provide error-free transmission, but does not provide end-to-end acknowledgementSMTP receiver accepts messages, places it in mailbox or forwards
9
10
SMTP Connection Setup
Sender opens TCP connection to receiverReceiver acknowledges connection with “220 Service Ready” or “421 Service Not Available”If connection is made, sender identifies itself with the “HELO” commandReceiver accepts identification with “250 OK”
11
SMTP Mail Transfer
MAIL command identifies originator, provides reverse path for error reportingRCPT commands identify recipient(s) for message Receiver has several positive or negative
responses to RCPT Sender will not send message until it is sure
at least one copy can be delivered
DATA command transfers message
12
Sample SMTP ExchangeS: HELO pc-yccR: 250 euler.im.ncnu.edu.tw Hello …, pleased
to meet youS: MAIL FROM:<[email protected]>R: 250 OKS: RCPT TO:<[email protected]>R: 250 OKS: RCPT TO:<[email protected]>R: 550 No such user hereS: DATAR: 354 Start mail input; end with <CRLF>.<CRLF>
S: Blah blah blah….S:…etc. etc. etc.S: <CRLF>.<CRLF>R: 250 OKS: QUIT
S: HELO pc-yccR: 250 euler.im.ncnu.edu.tw Hello …, pleased
to meet youS: MAIL FROM:<[email protected]>R: 250 OKS: RCPT TO:<[email protected]>R: 250 OKS: RCPT TO:<[email protected]>R: 550 No such user hereS: DATAR: 354 Start mail input; end with <CRLF>.<CRLF>
S: Blah blah blah….S:…etc. etc. etc.S: <CRLF>.<CRLF>R: 250 OKS: QUIT
13
SMTP Connection Closing
Sender sends a QUIT command to initiate TCP close operationReceiver sends a reply to the QUIT command, then initiates its own close
14
RFC 822
Defines format for text messages via electronic mailUsed by SMTP as accepted mail formatSpecifies both envelope and contentsIncludes a variety of headers that can be included in the message header lines
15
Limitations of SMTP and RFC822Cannot transmit executables or binary files without conversion into text through non-standard programs (e.g. UUENCODE)Cannot transmit diacritical marksTransfers limited in sizeGateways do not always map properly between EBCDIC and ASCIICannot handle non-text data in X.400 messagesNot all SMTP implementations adhere completely to RFC821 (tabs, truncation, etc)
16
MIME (Multipurpose Internet Mail Extensions)
Intended to resolve problems with SMTP and RFC822Specifies five new header fields, providing info about body of messageDefines multiple content formats Defines encodings to enable conversion of any type of content into transferable form
17
MIME Header FieldsMIME-Version: Indicates compliance with RFCs 1521 and 1522
Content-TypeContent-Type: Describes data in sufficient detail for receiver to pick method for representation
Content-Transfer-EncodingContent-Transfer-Encoding: Indicates type of transformation used to represent content
Content-IDContent-ID: Used to uniquely identify MIME entities
Content-DescriptionContent-Description: Plain text description for use when object is not readable
18
MIME Content Types
Seven major types: Text, Multipart, Message, Image, Video, Audio, ApplicationFourteen subtypes: See page 452 for detailsText provides only plain subtype, but a richtext subtype is likely to be addedMultipart indicates separate parts, such as text and an attachmentMIME types are used by web servers, as well
19
MIME Content Types
20
...From: "Yen-Cheng Chen" <[email protected]>To: <[email protected]>Subject: test mail!Date: Wed, 22 May 2002 14:27:07 +0800MIME-Version: 1.0Content-Type: multipart/mixed;
boundary="----=_NextPart_000_0047_01C2019E.69F32C40“Status:
This is a multi-part message in MIME format.
------=_NextPart_000_0047_01C2019E.69F32C40Content-Type: text/plain; charset="big5"Content-Transfer-Encoding: 7bit
Start of Body!Yen-Cheng
------=_NextPart_000_0047_01C2019E.69F32C40Content-Type: text/plain; name="a.txt"Content-Transfer-Encoding: 7bitContent-Disposition: attachment;
filename="a.txt“
This is the first and only one line of the file.------=_NextPart_000_0047_01C2019E.69F32C40--
...From: "Yen-Cheng Chen" <[email protected]>To: <[email protected]>Subject: test mail!Date: Wed, 22 May 2002 14:27:07 +0800MIME-Version: 1.0Content-Type: multipart/mixed;
boundary="----=_NextPart_000_0047_01C2019E.69F32C40“Status:
This is a multi-part message in MIME format.
------=_NextPart_000_0047_01C2019E.69F32C40Content-Type: text/plain; charset="big5"Content-Transfer-Encoding: 7bit
Start of Body!Yen-Cheng
------=_NextPart_000_0047_01C2019E.69F32C40Content-Type: text/plain; name="a.txt"Content-Transfer-Encoding: 7bitContent-Disposition: attachment;
filename="a.txt“
This is the first and only one line of the file.------=_NextPart_000_0047_01C2019E.69F32C40--
multipart/mixed
21
POP3Post Office Protocol - Version 3
RFC 1939 / Std 53 To retrieve emails from server (POP3 server) Three states Authorization State Transaction State Update State
22
POP3 Commands Authorization State
USER username PASS password APOP name digest
Transaction State STAT LIST [msgNo] RETR msgNo DELE msgNo NOOP RSET TOP msgNo line UIDL [msgNo]
Update State QUIT
23
S: +OK POP3 server ready <[email protected]>C: USER mroseS: +OK User name accepted, password pleaseC: PASS pwd999S: +OK Mailbox open, 2 messages (320 octets)C: STATS: +OK 2 320C: LISTS: +OK 2 messages (320 octets)S: 1 120S: 2 200S: .C: RETR 1S: +OK 120 octetsS: <the POP3 server sends message 1>S: .C: DELE 1S: +OK message 1 deletedC: QUITS: +OK dewey POP3 server signing off (maildrop empty)
S: +OK POP3 server ready <[email protected]>C: USER mroseS: +OK User name accepted, password pleaseC: PASS pwd999S: +OK Mailbox open, 2 messages (320 octets)C: STATS: +OK 2 320C: LISTS: +OK 2 messages (320 octets)S: 1 120S: 2 200S: .C: RETR 1S: +OK 120 octetsS: <the POP3 server sends message 1>S: .C: DELE 1S: +OK message 1 deletedC: QUITS: +OK dewey POP3 server signing off (maildrop empty)
24
Electronic Data Interchange (EDI)
Direct, computer-to-computer exchange of business dataReplaces use of paper documents Requires two participants to agree on electronic format for the data Two departments within a company Companies and customers Multiple companies
25
Benefits of EDI
Cost savingsSpeedReduction of errorsSecurityIntegration with office automationJust-in-time delivery
26
EDI v E-Mail
EDI Typically no
human involvement in processing the information; interface is software-to-software
E-Mail Data not
necessarily structured for software processing. Human-to-software exchange is usually involved on at least one end
27
Components of EDI Systems
ApplicationTranslation SoftwareCommunications Network
28
EDI/Internet IntegrationRFC 1767, issued in 1995 defines a method for packaging EDI transactions in a MIME envelope.
Application/EDIFACT Application/EDI-X12 Application/EDI-consent
Additional requirements have since emerged: Security issues such as EDI transaction integrity,
privacy and non-repudiation Support for exchanges by point-to-point, FTP, and
SMTP protocols.
An IETF working group is currently addressing these unresolved issues.
29
Enterprise Application Integration (EAI)
linking applications, whether purchased or developed in-house, so they can better support a business process.Critical for implementation of Internet-based business strategies
30
EAI Illustrated