Chapter 9 - Applications We will look at three main applications DNS (name services) SMTP (e-mail)...

21
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

Transcript of Chapter 9 - Applications We will look at three main applications DNS (name services) SMTP (e-mail)...

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