application protocols smtp: simple mail transport protocol http: hyper text transport protocol...

31
Application Protocols SMTP: Simple Mail Transport Protocol HTTP: Hyper Text Transport Protocol HTTPS: Hyper Text Transport SSL (Secure) SNMP: Simple Network Management Protocol FTP: File Transfer Protocol Telnet: Interactive login SSH: Secure Shell telnet DNS: Domain Name Service

Post on 22-Dec-2015

236 views

Category:

Documents


2 download

TRANSCRIPT

Application Protocols

• SMTP: Simple Mail Transport Protocol• HTTP: Hyper Text Transport Protocol• HTTPS: Hyper Text Transport SSL (Secure)• SNMP: Simple Network Management Protocol• FTP: File Transfer Protocol• Telnet: Interactive login• SSH: Secure Shell telnet• DNS: Domain Name Service

IP header

• Source and Destination IP addresses

• Type of Service – Selects delivery speeds vs. accuracy

• Protocol (TCP,ICMP, UDP)

• Time to Live (Router hops)

• Identification and Fragment offset– Reassembly of a fragmented datagram

Version Leng Type of Svc Total Length

Identification Flags Frag OffsetTime to Live Protocol Header Checksum

IP Header

Source Address

Destination Address

TCP Header then your data...

TCP fields

• Ports (service identifiers)

• Sequence numbers

• Acknowledgement numbers

• Windowing– More retries (less acks) smaller packets– Less retries (more good data) larger packets

Source Port Destination Port

Sequence Number

Acknowledgement Number

DataOffset

Reserved

FlagsWindow

Checksum Urgent Pointer

Your Data… next 500 octets

TCP Header

Services

• RFC’s (Requests for Comments)• /etc/services or multinet:services.master_server• lists service name and port number• Common (well known) ports:

– FTP 21– TELNET 23– SSH 22– SMTP 25– HTTP 80– NTP 123– Finger 79

TCP Data FlowC

omputer

129.123.7.33, 129.123.1.86

Port info:1234, 23 129.123.1.861234Returning Port

Listens on port23

UDP Data FlowC

omputer

129.123.7.33, 129.123.1.86

Port info:1234, 123 129.123.1.86Reply 1 Port 123

Reply 2 Port 123

TCP, UDP, ICMP

• TCP (Transmission Control Protocol)– Datagrams– Connection Oriented– End to End error checking– Source Port, Destination Port

• Sockets, Well Known Ports

– HTTP, SMTP, TELNET,FTP

UDP (user datagram protocol)

• Connectionless

• One Way

• Fast, Simple

• No guarantee of delivery

• NFS, DNS, DHCP, NTP, TALK

ICMP (Internet control message protocol)

• Error Messages

• Intended for the TCP/IP software itself

• PING (host unreachable messages)

• Simple Headers

FTP

• File Transfer Protocol (TCP)– User authentication– Anonymous

• GET/PUT/DEL/CWD

• Binary/Ascii

FTP Example

• requires 2 ports• telnet ftp.remotesite.com 21

– 220 ftp.remotesite.com FTP server ready

– user anonymous

– 331 password required for anonymous

– password [email protected]

– 230 user anonymous logged in

– PORT 1200

FTP Example cont.

• PORT 129,123,7,55,4,76

• 200 PORT command successful

• pwd

• 257 “/export/guest/bobw” is current directory

• RETR ./.login

• 150 ASCII data connection for ./.login(129.123.7.55,1100)(795 bytes)

• QUIT

HTTP Application

• HTTP is a pull protocol, the user pulls information from a remote site.

• Protocol consists of GET and POST commands to transfer data.

• Persistent vs. Non-Persistent connections

Non-Persistent Connections

• TCP connections are opened and closed for each request.

• Allows for parallel transfer of objects.

Persistent Connections

• TCP connection left open until requested to disconnect or times out.

• Takes advantage of pipelining to improve transfer rates.

Proxy Servers

• HTTP uses cached files to speed up transfers

• Proxy Server is a LAN accessible cache• Proxy allows for reduced load on the

internet connection• Proxy Servers allow NAT (Network

Address Translation) systems to protect internal networks.

MIME Types/Encoding

• Multipurpose Internet Mail Extensions

• Handles Non-ASCII data in an ASCII transfer medium.

• Imbeds the data stream into the email message

Simple Mail Transfer Protocol

• The protocol is very simple• SMTP is a push protocol, information is pushed

to a remote sitre• Uses port 25• All files are ascii text• Syntax: [email protected]• Mail relay: user%[email protected]• Mail Exchange (MX)

– Allows mail server redirection

SMTP Example

1> telnet red.rutgers.edu 252> 220 RED.RUTGERS.EDU SMTP Service at 15 Apr 98 10:11:18 EDT1> HELO pc15.logan.com2> 250 RED.RUTGERS.EDU - Hello, PC15.LOGAN.COM1> MAIL From:<[email protected]>2> 250 MAIL accepted1> RCPT To:<[email protected]>2> 250 Recipient accepted1> DATA2> 354 Start Mail input; end with <CRLF>.<CRLF>1> Date: Sat, 22 Mar 1998 13:26:31 MST1> From: [email protected]>Subject: Meeting tomorrow

SMTP Example cont.

1> The meeting is TOMORROW at 3:00 PM!1>1> .2> 250 OK1> QUIT2> 221 RED.RUTGERS.EDU Service closing transmission channel

POP3

• Post office protocol

• Mail access client

• Uses port 110

• Messages are downloaded to client but can be stored on server.

• Does not easily allow multiple clients

POP3 Example• telnet cc.usu.edu 110• +OK POP3D(*) Server PMDFV6.1.2 at Wed, 8 Sep 2004 10:49:30 MdT

[email protected]• user bobw• +OK password please• pass areukidding• +OK Mailbox open, 335 messages• list• (List of messages)• 1 4355• 2 106• 3 445567• retr 2• (dumps message, ends with a .)• quit• +OK bye

IMAP

• Internet Mail Access Protocol

• Improved POP3

• Automatically assigns folders

• Leaves mail on server

• Only transfers as much as needed per message (headers, subject only on list)

DNS

• Domain Name Services

• What’s in a name?

• Distributed hierarchical architecture

• Caches and times DNS entries for speed

• www.internic.net (root server)

• Top Level Domain Servers

• Authoritative Local Nameservers– thingy, watzit, doober

DNS Configuration File

; ; Hosts file for domain flibble.orac.net.au. ; ;name ttl class type data ; ; Source of authority @ IN SOA solaris.flibble.orac.net.au. root.solaris.flibble.orac.net.au. (

2000050201 ; Serial 10800 ; Refresh - 3 hours 3600 ; Retry - 1 hour 432000 ; Expire - 1 week 86400) ; Minimum - 1 day IN NS solaris.flibble.orac.net.au.

More Config; ; Machines for the flibble.orac.net.au domain ; ;name ttl class type data localhost IN A 127.0.0.1 solaris IN A 10.5.3.1 win95 IN A 10.5.3.21 linux IN A 10.5.3.22 ; ; Aliases ; mail IN CNAME solaris www IN CNAME solaris

More config

; ; Domain mailing addresses ; flibble.orac.net.au. IN MX 10 solaris.flibble.orac.net.au. flibble.orac.net.au. IN A 10.5.3.1

DNS ResolutionWant cc.usu.edu

Top Level DomainServer (resolve .edu)

thingy.usu.edu

resolve usu.eduresolve cc.usu.edu

homeuser.aol.com

USU DNS

• Handled by Network and Computing Services

• thingy.usu.edu webpage for registrations and lookups