Therefore, we will not try to describe it more than necessary in the book. However, an interested reader will find good suggestions for further reading in the additional reading section at the end of this chapter. 1.5.3 Port Numbers and Services The port numbers perform an important function in the IP networks, and hence merit their own section. The port number field in UDP and in TCP is 16 bits long and therefore can carry numbers 0-65535. This port range is divided into different usages. The range of 0-1023 is called well known ports, or system ports, ports 1024-49151 are called registered ports or user ports, and the remaining 49152-65535 are called private, dynamic, or ephemeral ports [19]. The well known or registered ports generally identify a service, an application, or a usage. This means that a specific application or service is listening to that port, and is understood to be that service. For example, port 21 is the control part of the File Transfer Protocol (FTP) [20], port 23 is Telnet [21], and port 80 is HyperText Transfer Protocol (HTTP) [22, 23]. Therefore, a service listening and answering at port 80, for instance, is expected to be a web server. 1.6 Domain Name Service IP addresses are used by computers - the hosts and routers that communicate to each other. However, the IP addresses are not the most intuitive identifier to be remembered by people. People remember names better than numbers. To address this, the Domain Name System (DNS) was developed RFC 1034 and RFC 1035 [43, 24]. DNS allows human- readable names to be used for protocols and user interfaces, though allowing the Internet still to function with numbers with better computational characteristics. Basically, DNS is a distributed database that provides name-to-address, and address-to-name mapping. So DNS is a bit like a big telephone book of the Internet. 1.6.1 DNS Structure The DNS is a global database covering the whole Internet. Therefore, scalability is very important. Hence, DNS was designed to be a distributed, hierarchical data