Chapter 9 - Applications We will look at three main applications DNS (name services) SMTP (e-mail) HTTP (World Wide Web) Our main focus will be on DNS For most students this chapter should cover familiar material – so we will go through it faster than the other chapters
21
Embed
Chapter 9 - Applications We will look at three main applications DNS (name services) SMTP (e-mail) HTTP (World Wide Web) Our main focus will be on DNS.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Chapter 9 - Applications
We will look at three main applications DNS (name services) SMTP (e-mail) HTTP (World Wide Web)
Our main focus will be on DNS For most students this chapter should cover
familiar material – so we will go through it faster than the other chapters
DNS – Domain Name System
The problem: IP addresses are fine for routers, but are not exactly user friendly
DNS maps user-friendly names into router-friendly addresses
Terminology
Terminology: binding and resolution (page 624)
Name server – a specific implementation of a resolution mechanism that can be queried by sending it a message
DNS – the Internet’s naming system Simple example in the next diagram
Nameserver
Mailprogram
User
TCP
IP
2cs.princeton.edu
192.12.69.53
user @ cs.princeton.edu1
192.12.69.5 4
192.12.69.5 5
Domain Hierarchy
Names are processed right-to-left mars.cs.princeton.edu
edu is the highest level princeton is the next level cs is within princeton, the next level mars is a server in the CS department, the lowest
level
Quick Overview
A client from say Virginia Tech wants to access a server called “cicada” at Princeton’s CS department
The client inputs the URL: cicada.cs.princeton.edu
However, neither the client nor his default router know the IP address
Now what happens??
Overview (continued)
Basic idea: the client communicates with a local server A that knows a remote server B which knows more information about .edu names/addresses
Server B probably doesn’t have the entire address but knows server C that knows more information about princeton.edu names/address
Server C knows the address of cs.princeton.edu
Rootname
server
Princetonname
server
CSnameserver
Localname
serverClient
1cicada.cs.princeton.edu
192.12.69.608
cicada.cs.princeton.edu
princeton.edu, 128.196.128.233
cicada.cs.princeton.edu
cicada.cs.princeton.edu,
192.12.69.60
cicada.cs.princeton.edu
cs.princeton.edu, 192.12.69.5
2
3
4
5
6
7
Name Servers
The naming hierarchy is split up into zones Briefly one name server per zone Clients send queries to the name servers
Sometimes they get back the answer they seek Sometimes they only get a partial answer and are
pointed to another name server where the partial answer might be extended
edu com
princeton … mit
cs ee
ux01 ux04
physics
cisco … yahoo nasa … nsf arpa … navy acm … ieee
gov mil org net uk fr
edu com
princeton … mit
cs ee
ux01 ux04
physics
cisco … yahoo nasa … nsf arpa … navy acm … ieee
gov mil org net uk fr
A Hierarchy of Name Servers
In effect there is a tree or hierarchy of name servers that need to be queried
Study the next diagram Then review the first diagram (presented
again) and review what happens in the process of resolving an entire name or URL
Rootname server
Princetonname server
Cisconame server
CSname server
EEname server
…
…
Rootname
server
Princetonname
server
CSnameserver
Localname
serverClient
1cicada.cs.princeton.edu
192.12.69.608
cicada.cs.princeton.edu
princeton.edu, 128.196.128.233
cicada.cs.princeton.edu
cicada.cs.princeton.edu,
192.12.69.60
cicada.cs.princeton.edu
cs.princeton.edu, 192.12.69.5
2
3
4
5
6
7
Details and other Points
There are many more points about this process of course, some of the main ones: Aliases are used for name servers so that the
function can be moved to another machine with affecting remote users
Not all clients know about the root servers, instead the clients know about a local name server which in turn knows about the root servers
More Details
The process doesn’t necessary have to repeated each time a URL is requested, instead a cache can be maintained to resolve future queries without having to go through the entire process again
Entire Name Translation Process
Domain name
IP Address Physical Address
DNS Server ARP
The E-Mail Application
SMTP and MIME are the main protocol and format (see page 634)
The message format is rather involved and we won’t be going into detail, but study over the example on page 636-7
Message transfer uses SMTP (T for “Transfer”)
Study pages 637-8 for details of the process involving mail daemons and gateways
Mailreader
Maildaemon
SMTP/TCP
Mail gateway
Maildaemon
SMTP/TCP
Mailreader
Maildaemon
HTTP
Not much is covered in the text about this well known application
Two key points that the text does cover are: Persistent connections page 645 Caching page 645-6