Title: CS230 Information Processing Section 2 Data Transfer
1CS230 Information Processing Section 2 Data
Transfer
- 2004
- Mr Bart Busschots, BSc, AMInstP.
2Data Transfer
- Data transfer takes place at all levels of a
computer system - Low-level data transfer
- between CPU and memory
- between memory and devices - disks, modems,
graphics, sound - between modem/NIC and remote modem/NIC
- High-level data transfer
- communicating processes on the same machine (e.g.
IPC) - communicating processes on separate machines
(e-mail, web, file sharing, etc.) - Data transfer requires a proper communications
architecture
3Peer To Peer Communications
- The simplest form of communications between
parties is peer to peer communications - Peer to peer communication involves
- Two parties between whom data is to be exchanged
- Some form of communications service available to
both parties (i.e. network service) - A mutually understood set of rules regarding
communications - a protocol - A communications protocol specifies
- the ordering of messages between parties
- the structure and format of messages
4Network Reference Models
- Networking models are based on a number of
conceptual layers of abstraction - Communications between two parties take place at
several layers, each layer using the services of
the layer beneath it - The most popular networking reference model is
the TCP/IP model used on the Internet
Application Layer
Transport Layer
Network Layer
Data Link/Physical Layer
5Physical/Data Link Layer
- Data link/physical layer provides the ability to
send raw byte sequences over the wire to
another physical machine/router - Physical
- Modem communications standards - V.42, V.90, DSL,
ISDN, etc. - Mobile communications - GSM, D-AMPS, GPRS, UMTS,
etc. - LAN communications - Ethernet 802.3, 802.4, etc.
- Internet backbones - T1, T3, ATM, etc.
- Data link
- SLIP - Serial Link Internet Protocol
- PPP - Point to Point Protocol
6Network and Transport Layers
- Network layer protocols provide host-to-host
communications over the internet - IP - Internet Protocol (Host to Host
communications) - ICMP and IGMP - Network-layer control protocols
- Transport layer provides connection-oriented and
connection-less transport services from
application to application over IP - TCP - Transport Control Protocol for
connection-oriented transport - UDP - User Datagram Protocol for connection-less
transport
7Application Layer Protocols
- Application layer protocols transfer data between
application programs residing on separate hosts - Application protocols include
- SMTP/POP3 for sending/downloading e-mail
- FTP for file transfers
- NNTP for newsgroup access
- NFS and SMB for distributed file systems
- HTTP for hypermedia documents
- Well look at peer to peer communications between
programs at the application layer over the
Internet
8Client-Server Architecture
- The client-server model of communications
specifies - a server application that provides a service upon
request - a (number of) client applications that request
service from the remote servers - server applications are known as daemons, which
listen on a port for incoming connections - client applications establish connections to
server applications and request a service to be
performed - The client-server model works by
- client establishes connection with server
- client makes a request
- server processes the request
- server sends response back to client
9Sample Application Protocol - SMTP
- Simple Mail Transfer Protocol (SMTP), specified
in RFC821 (www.rfc-editor.org) is used to send
e-mail - SMTP is a simple request-response protocol that
uses text strings to communicate between client
and server - SMTP operates as follows
- Mail client establishes a connection with the
SMTP server - After an initial handshake, the client states the
sender and recipient(s) of the message - If the recipients exist at that server, the
server notifies the client to proceed - The client uploads the mail message
- When finished, the client closes the connection
10SMTP Commands and Response Codes
- Commands
- HELO Initial greeting sent by client
- MAIL FROM ltsendergt Specifies sender of message
- RCPT TO ltrecipientgt Specifies recipient of
message - DATA Message body follows
- QUIT Close connection
- Some SMTP Response Codes
- 220 Service available
- 250 Mail action successful
- 500 Command unrecognised
- 550 Mail not sent
11SMTP Messages
Connect to TCP port 25
Mail Client
SMTP Server
220 mailserver.cs.may.ie Welcome
HELO mailclient.cs.may.ieltCRLFgt
250 Hello mailclient.cs.may.ie. Proceed
MAIL FROM adowling_at_cs.may.ie ltCRLFgt
250 adowling_at_cs.may.ie... Sender ok
RCPT TO dip01100_at_cs.may.ie ltCRLFgt
250 dip01100_at_cs.may.ie... Recipient ok
DATAltCRLFgt
354 Enter mail, end with "." on a line by itself
This is a test!ltCRgtltLFgt.ltCRgtltLFgt
250 Message accepted for delivery . . .
12Sample Application Protocol - POP3
- Post Office Protocol is used to download mail
that is remotely stored on a server - Like SMTP, POP3 is a simple, text-based
request-response protocol - POP3 operates as follows
- Mail client establishes a connection with the
POP3 server - The client supplies a username and password in
order to log in - The server checks the username/password
combination. If they are valid, the client is
allowed to proceed - The client retrieves/deletes messages from the
mailbox - When finished, the client closes the connection
with the QUIT command
13POP3 Commands and Response Codes
- Commands
- USER ltusernamegt Log in as ltusergt
- PASS ltpasswordgt Password for ltusergt is
ltpasswordgt - STAT Status of mailbox
- RETR ltngt Retrieve message n
- DELE ltngt Delete message n
- QUIT Close connection
- Some POP3 Response Types
- OK ltmsggt Command succeeded. ltmsggt has
reason. - -ERR ltmsggt Command failed. ltmsggt has reason.
14A Simple E-mail System
Senders Mail Client (e.g. Netscape)
SMTP Server
Write to file
SMTP
Mail Store
Recipients Mail Client (e.g. Outlook)
POP3 Server
POP3
Read from file
15Distributed File Sharing
- Files residing on one machines disk may be
exported or shared to client machines - the machine exporting the files is a file server
- entire directory structures are exported from a
mount point - the file server runs a file server daemon process
to handle requests - Microsoft has SMB running for file shares
- UNIX supports NFS file servers
- Client machines mount remote file shares and map
them onto parts of the local file system, or onto
virtual devices - accesses to remote file systems cause the client
operating system to communicate with the remote
file server - communications between client and server are
performed automatically and transparently to the
user
16End