TCP/IP Protocols in the Internet


Server: A software process that provides a service requested by a client.

Client: A software process that requests a service provided by a server.

Server-Client Model: A client initiates a request for a service from a server and the server responds to that request

Protocols: A protocol defines the rules for succesful communication between two devices on a network. The protocol decides signals,  codes and rules for the transmission.

Port: A port is an element added to an address to identify which process to pass data through.

Socket: A sockets is the combination of a port and an ip address.

TCP/IP (Transport Control Protocol/Internet Protocol)

These protocols are used together on the internet and are usually found within a four layer protocol stack. Protocols are usually designed in layers, with each layer handling something different, this is called a network protocol stack.

The four layered stack that runs when data is transfered accross the internet is this:

  1. Application Layer: This layer is in charge of encoding the data so that it is in an understandable format for the reciever.
  2. Transport Layer: This layer splits the data into chunks (packets). This layer will also deal with lost packets.
  3. Network Layer: This layer will add the IP address of the recipitent to the packets, it will also deal with the routing of packets (Packet Switching).
  4. Link Layer: This layer will add the mac address of the devices sent too and from to the packets.


Servers are universally known port numbers reserved for specific functions. Below is some of the well known port numbers and the processes their corrosponding servers carry out.

Port  Server
 20 FTP, Data
 21  FTP, Control
80 & 8080  Web Server
 25  SMTP
 100  PoP3
 23 TelNet




Packet Switching

Firstly, what is a packet?

When data is transmitted, it is split up into smaller chunks called packets. Each packet will contain 3 things, these are:

  1. The source address of the packet.
  2. The destination address.
  3. The data itself .

Packet Switching

Packet switching is the method of how the internet works. It is a method of data transfer, in which data is broken down into packets and then reassembled at its destination. Each packet will move from router to router accross a network until it reaches its destination, always taking the optimum route.

The Steps a Packet Takes (in short):

  1. Data is split into chunks (packets).
  2. Each packet has a to and from address and data.
  3. The order of packets is noted.
  4. Packets sent onto the network move between routers, taking an optimum route.
  5. Once packets reach there destination they are re-ordered.
  6. The recipitent will send a confirmation message.
  7. If a confirmation message is not recieved the data will be sent again.

Domain Names, URI’s and IP Addresses

What are URL’s, URN’s and URI’s?

  • URL-Universal Resource Locator

A universal resource locator is used to provide the location of a resource on the internet. It is important to know that any URL is considered a URI.

  • URN-Universal Resource Name

A universal resource name provides the name of the resource in question, allthough it does not provide any details about locating the resource.

  • URI-Universal Resource Identifier

The universal resource identifier can be either a URL, URN or it can be a combination of both.

An example of a URL (URI) is: https:// www

  • https:// Is the protocol
  • www. Is the hostname (Domain Name)
  • watch?v=2sb0Mr9wA-U Is the location of the file on the server (Pathname)

It may also be important to note that the www in a website is known as a subdomain.

What is a Domain Name?

A domain name is a part of a URL which is used to identify an IP address, this can be seen above in the example of a URL. A domain name also gives the user information, this is done through the top level domain (TLD).

An example of a domain name is The top level domain is the .com and the second level domain is the youtube. This is a commercial organisation called bbc This is an organisation, called wikipedia, requesting the english language. This is a governmental organisation in the united kingdom.

What is an IP Address?

It is important to know that an IP address also has a structure, like the URL and domain name. An IP address is split into 4 bytes (1 byte = 8 bits), meaning a IP address is 32 bits long.

00000000.00000000.00000000.00000000 – 11111111.11111111.11111111.11111111 (Binary) – (base 10)

An IP address is also split into two parts, a network and host identifier. The first two bytes is the network identifier and the second two is the host identifier.

Internet Registrars and Registries

Internet Registrars – These allow organisations and individuals to buy their own domain names.

Internet Registries – These hold domain names which are registered. They allow owners to link domain names to IP addresses.

Some domains are linked to multiple IP addresses, this is because the website may have users from all around the world. Having multiple addresses around the world allows the company to route them to the closest IP, giving them a faster and more stable connection. This also allows big sites to manage traffic through load balacing.

How Does a Domain Name become an IP?

This information can be found in a blog post I have already created here!

Websites that go into more detail into the subjects above.

URN, URL and URI’s.

Domain Names.

How a Domain Name is Returned as an IP

How a Domain Name is Returned as an IP

Domain Names were created so that users could easily access and navigate between websites without having to remember all the IP addresses for them. Whenever you access a website by inputting a domain name into the address bar of a browser, the corrosponding IP for that address will be retrieved. The following process outlines how this happens.

When you type a domain name into your browser address bar, such as, a query will be sent to retrieve the IP address.

Use the featured image above to help you understand!

  1. The first server that your query encounters is the RR (Recursive Resolver), which is hosted by your ISP (Internet Service Provider).
  2. The RR will send the query to the Root DNS server, which holds all the information about Top Level Domain (TLD) servers.
  3. The query will then find its way to the correct TLD server, in this case for it will be the .com TLD server. The server will then send you the IP of the hosting server in which is located.
  4. Next your query will be sent to the DNS server hosting the domain and the IP will be returned to the RR.
  5. Finally the RR returns the IP address to the browser on your computer and then your browser can send a request to the IP to retrieve the websites content.

The query in this example would be “What is the IP address for the website domain”.

This Website was very useful in helping me understand the process.

The Stored Program Concept

The Stored Program Concept

Three main features of the concept:

  1. Programs/Instructions and data are stored in the main memory.
  2. Programs/Instructions are fetched and then executed in sequence.
  3. A program/instructions can be replaced by loading another program/instructions into main memory.

Types of architecture:

  1. Von Nuemann
    •  Stores instructions and data in main memory and uses the same data and address bus to fetch each.
    • image040
  2. Harvard
    • Uses separate data stores for instructions and data and uses separate data and address buses to connect the two to the processor.
    • image043
  3. Micro controller (Embedded Computer)
    • A micro controller is a chip that includes the processor, memory and IO. A common example is an MP3 player.

Types of Program Translators

Types of Program Translators

Generations of code

In order of generation, types of code:

  1. Machine code (Object code)
  2. Assembly code
  3. High Level Language (Source code)
  4. Declaration Language (SQL)


The role of the translator is to take program code/source code and to translate it into machine code.

  • Assembler (Assembly code to machine code)
  • Compiler (Source code to machine code)
    • A compiler takes whole source code and translates it into object code
    • Compiled code executes quicker
    • Produces an executable file
  • Interpreter (Source code to machine code)
    • An interpreter translates a programs source code line-by-line
    • Interpreters are slower than running compiled code
    • Source code is required for the program to be interpreted

Situations translators are used


  • So that source code cannot be accessed by user
  • When the program is to be distributed as an executible
  • Where speed of execution is important


  • To allow execution on a wide range of processors
  • When prototyping and testing code
  • When no compiler yet exists for the processor


Setting up a Website

Setting up a Website

Steps to follow

  1. Register the domain with an internet registrar.
  2. IP address linked to domain name with a DNS.
  3. Webpage written in HTML.
  4. CSS to control layout and presentation.
  5. FTP set to run on port 20/21.
  6. Upload the website to the hosting server through FTP.
  7. Search engine optimization (SEO) to allow user to easily find site.

Things to consider

  1. Security of the website and server
  2. Geographical location of the hosting server in comparison to the clients accessing the websites location.