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 .youtube.com/watch?v=2sb0Mr9wA-U

  • https:// Is the protocol
  • www. youtube.com/ 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 youtube.com. The top level domain is the .com and the second level domain is the youtube.

 bbc.com This is a commercial organisation called bbc
en.wikipedia.org This is an organisation, called wikipedia, requesting the english language.
gov.uk 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)

0.0.0.0 – 255.255.255.255 (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 google.com, 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 google.com it will be the .com TLD server. The server will then send you the IP of the hosting server in which google.com 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 google.com”.


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)

Translators

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

Compiler

  • 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

Interpreter

  • 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.

Fetch-Execute Cycle

Fetch-Execute Cycle

This is the simplified version of the fetch-execute cycle outlining everything you would need to know for the A-Level computing exam.

Parts of the cycle

  • PC – Program Counter
  • MAR – Memory Address Register
  • MDR – Memory Data Register (MBR -Memory Buffer Register)
  • CIR – Current Instruction Register
  • SR – Status Register
  • ACC – Accumulator
  • CU – Control Unit

Fetch

This part of the cycle is illustrated above in an easy to understand diagram.

  1. The address location from the PC is fetched and copied into the MAR
  2. The contents of the memory location from the MAR is copied to the MDR
  3. The MDR is copied to the CIR
  4. The PC is incremented by 1
  5. The SR is checked for interuptions

Decode

  1. The instruction found in the CIR is interpreted by the decoder. (Decoded by the CPU’s CU)

Execute

  1. The instruction is split into Opcode and a operand.
  2. The address location from the instruction in the CIR is moved to the MAR
  3. The contents of the memory address location in the MAR is moved to the MDR
  4. The results of the computation stored in the MDR are moved to the ACC (Depends on the type of instruction, e.g. LOAD, ADD, STORE).
  5. SR is updated.

The cycle then repeats itself until there are no more instructions.