. 39
( 132 .)


that are lost are not retransmitted.

0 4 Number of bits

Source Port Destination Port

Length Checksum

Upper Layer Data

Figure 5.7 UDP header

Another difference between TCP and UDP is the possibility of using multicast address-
ing. UDP supports multicast; TCP does not, since with TCP the transmitter cannot be sure
of who is receiving packets within the multicast group, and therefore cannot run ARQ
not knowing if and when to retransmit.

5.2.6 Domain name service (DNS)
This protocol provides a mapping service for the IP protocol stack. DNS maps text names
to IP addresses and vice versa. It removes the requirement for a user to remember an IP
address to access a particular service by providing a lookup between a text name and the
IP address. This echoes the situation in a cellular network, where users can now address
people by their name, and the phone book stored in the device provides the mapping
to mobile phone number. For example, with DNS, a company™s website can normally
be found by placing ˜www™ and ˜com™ around the company name. A user merely types
www.companyname.com into the browser. This address is then passed to a DNS server,
which in turn is responsible for translating it to an IP address.
Domain names themselves are arranged and managed as a hierarchical tree (Figure 5.8
shows a small subset of the DNS naming space). Moving from the right-hand side of
the domain name to the left moves one further down the tree. The namespace for DNS
is partitioned and administered according to this tree. Looking at Figure 5.8, one can
see the domain cam.ac.uk. This is the domain for Cambridge University and is therefore
administered by Cambridge University™s network administrator. This domain is contained
within ac.uk, the domain allocated for all academic institutions in the UK. The domain
ac.uk in turn is contained with the UK domain, which is the domain allocated for all DNS
names within the UK. This partitioning of the address space makes it possible for any
given operator to allocate new DNS names without worrying about name collisions (e.g.
two organizations having the same name for their web server) since their namespaces are
separated by the post¬x part of their DNS addresses. For example, Cambridge University
can be assured their address will always be distinct from Oxford™s because their domain
names will be post¬xed cam.ac.uk and ox.ac.uk, respectively.
When resolving DNS names into IP address the client machine must refer to a DNS
server. Most clients have the address of the default DNS server allocated on con¬guration.
If the local DNS server does not have the mapping for the DNS address then it will use
the DNS name to work out where to look for the mapping. For example, when resolving
the DNS address www.3com.com, a local DNS server will ¬rst interrogate the Internet


com my sg th uk


ox cam

Figure 5.8 DNS namespace hierarchy

DNS root servers for the address of the name server which handles the .com domain.
When this address has been returned then the .com name server is asked for the address
of the 3com name server. Once the 3com name server is found then it can be asked for
the address of www.3com.com. This process of working down the tree from the root
through the whole of the DNS name can either be done by the client itself, interrogating
each name server in turn, or done on its behalf by another DNS server. When an external
name server does all the work for the client as a proxy this is called a recursive DNS
lookup. This is advantageous for the client since it does not have to do so much work and
reduces DNS traf¬c on the local loop. This is particularly important for clients connected
over a wireless link. Note that each name server knows the address of its children but
not necessarily its children™s children. Also each name server must know the address of
its parent so that it can forward unknown requests up the DNS hierarchy.
As was discussed in Chapter 4, DNS is used in GPRS for resolution of access point
names (APN), which de¬ne the interface on the GGSN where the user will connect
to an external network. The packet data protocol (PDP) context activation will inform
the network of the required APN, and this will be resolved to the IP address of the
correct GGSN.

5.2.7 Address resolution protocol (ARP)
This protocol is responsible for mapping from IP addresses to media access control (MAC)
addresses. It is important in IP since frames are actually routed to destinations on a local
area network (LAN) using MAC and not IP addresses. A MAC address is a unique 48-bit
(6-byte) address, contained in the hardware of a network interface, so no two interface
cards can have the same MAC address. The ¬rst three bytes of the address indicate
the manufacturer and the remaining three bytes are allocated by that manufacturer as
each new card is produced. For example, when sending a packet on an Ethernet network
both the Ethernet MAC address and the IP address of the destination must be known
beforehand. The operation of the protocol is as follows. An ARP request packet is sent

out on the LAN with the destination MAC address set to broadcast. It also contains the IP
address of the required mapping. The MAC broadcast address consists of the destination
address being set to all 1s, i.e. FFFFFFFFFFFF. All stations on the local network will
receive and analyse the frame but only one will recognize its own IP address in the
request and reply to the sender. In the reply, the recipient host inserts its own MAC
address. Now that the sender has a copy of the hardware address (MAC address) it can
send packets to that IP address directly. ARP actually works in conjunction with a local
cache which stores copies of the recent ARP mappings. This cache reduces network
traf¬c and increases performance but is cleared out on a regular basis to allow for the
fact that the LAN hardware may have changed (or even the IP address might have been
Figure 5.9 shows an Ethernet network connected to the Internet. If a station with IP
address needs to send a packet to, the packets will be sent as
shown in Table 5.6.
If station is required to send a packet to address, this address
is not on the same subnet. The packet will have to be forwarded via the router at, therefore the ARP request is for the Ethernet address of the router. The
messages will be as shown in Table 5.7.

00AF01234567 008001234ABDF


Figure 5.9 ARP example

Table 5.6 ARP example (1)
Packet type Destination IP Destination Source IP Source MAC
address MAC address address address

ARP request FFFFFFFFFFFF 008001234567
ARP response 008001234567 00AF01234567

Table 5.7 ARP example (2)
Packet type Destination IP Destination Source IP Source MAC
address MAC address address address
ARP request FFFFFFFFFFFF 008001234567
ARP response 008001234567 008001234ABD

The station will now forward the packet to Ethernet address 008001234ABD. Note
that when forwards the packet to the destination, although it forwards to
the Ethernet address of the router, the IP address will be set to (the ¬nal
destination) and not the IP address of the router.

5.2.8 IP summary
The IP protocol suite provides a range of data transport services (reliable or unreliable
expedited), it is robust against a single point of failure, independent of network hardware
and capable of some degree of automated network management. It was designed originally
with robustness in mind and not quality of service (which is needed for voice and video).
However, IP QoS protocols have since been developed and a number of these will be
discussed in some depth later in this chapter.

When forwarding packets the routers ¬rst look at the network address of the destination
address. If the network address of the destination is directly attached to the router then
the packet is forwarded straight to the host via the attached network.
If the network address refers to a network not directly attached then the packet is
forwarded to another router which is closer to the destination network.
This process is illustrated in Figure 5.10. A packet to be sent from host (i.e.
network ID = 4, host ID = 0.0.195) to host, is sent ¬rst over network 4 to
router A. Since router A is not directly attached to the destination network (network ID
7) it forwards the packet to router B. Router B in turn forwards the packet to router C,
which delivers it to the destination. Each router has a table (the routing table) telling
it the next hop where to forward a packet to deliver it to a given destination. If the

Host ID: 0.0.112

Host ID: 0.0.205
Network Network Network
ID=4 ID=5 ID=6
IP Router A IP Router B

IP Router C
Host ID: 0.0.195
Host ID: 0.0.234

Figure 5.10 IP routing
5.3 IP ROUTING 181

network address of the packet is not present in the routing table then most routers will
have a routing entry called the default which is used as a forward for the packet in
this circumstance. For instance, router A in Figure 5.10 could have a default entry of
router B. Many Intranet2 routers will have a default entry pointing to their external router
(connected to the Internet), assuming that traf¬c that cannot be routed internally must be
bound for the Internet.
Routing tables can be updated using two basic techniques, static and dynamic routing.
With static routing the entries are con¬gured manually into the router. This is only suitable
for simple network con¬gurations where the routing tables are small and easy to con¬g-
ure. With dynamic routing the routers will ˜talk™ to each other, exchanging information
about the topology of the network. Using this topology and a technique called a routing
algorithm the routers calculate the optimum path for packets to ¬‚ow to their destinations.
The combination of a routing algorithm plus the protocol to exchange routing information
is called a routing protocol. Routing protocols are classi¬ed into two groups: internal and
external. Internal routing protocols such as routing information protocol (RIP) and open
shortest path ¬rst (OSPF) carry out routing within a network managed by a single opera-
tor. In IP terminology, this is referred to as an autonomous system (AS). External routing
protocols such as border gateway protocol (BGP) handle routing between autonomous sys-
tems and are used, for example, to connect the gateways belonging to different Internet
service providers (ISPs) on the Internet. This is illustrated in Figure 5.11.

Internal routing
protocol within
autonymous system ISP
OSPF External routing
protocol between
autonymous systems



Figure 5.11 Internal and external routing protocols

The term ˜Intranet™ is used to denote a private network which is based on the IP protocol. Intranets
are connected to the Internet via an external router. Normally, the private network will use some
security mechanisms to protect the internal network, such as the implementation of a ¬rewall.

Routers and hosts forwarding packets using the IP protocol do not make any guarantees


. 39
( 132 .)