Sei sulla pagina 1di 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
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
IP Header

Version Leng Type of Svc Total Length


Identification Flags Frag Offset
Time to Live Protocol Header Checksum

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
TCP Header

Source Port Destination Port


Sequence Number
Acknowledgement Number

Data Reserved
Window
Offset Flags

Checksum Urgent Pointer

Your Data… next 500 octets


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 Flow Listens on port
23

129.123.7.33, 129.123.1.86

Port info:1234, 23

129.123.1.86

Computer
1234
Returning Port
UDP Data Flow

129.123.7.33, 129.123.1.86

Port info:1234, 123

129.123.1.86

Computer
Reply 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 user@cc.usu.edu
– 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: user@host.domain
• Mail relay: user%host1@host2.domain
• Mail Exchange (MX)
– Allows mail server redirection
SMTP Example
1> telnet red.rutgers.edu 25
2> 220 RED.RUTGERS.EDU SMTP Service at 15 Apr 98 10:11:18 EDT
1> HELO pc15.logan.com
2> 250 RED.RUTGERS.EDU - Hello, PC15.LOGAN.COM
1> MAIL From:<student11@pc15.logan.com>
2> 250 MAIL accepted
1> RCPT To:<mailman@red.rutgers.edu>
2> 250 Recipient accepted
1> DATA
2> 354 Start Mail input; end with <CRLF>.<CRLF>
1> Date: Sat, 22 Mar 1998 13:26:31 MST
1> From: student11@pc15.logan.com
1>Subject: Meeting tomorrow
SMTP Example cont.

1> The meeting is TOMORROW at 3:00 PM!


1>
1> .
2> 250 OK
1> QUIT
2> 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
01LEMEHLU2FMBOTAK2@grumpy.usu.edu
• 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 Resolution
Want cc.usu.edu

homeuser.aol.com
Top Level Domain
Server (resolve .edu)

thingy.usu.edu

resolve usu.edu
resolve cc.usu.edu
USU DNS
• Handled by Network and Computing
Services
• thingy.usu.edu webpage for registrations
and lookups

Potrebbero piacerti anche