Structure of the internet, DNS, TCP/IP stack and Application layer protocols
(Structure of) The Internet
A global network of interconnected networks that communicate using a common set of standards and protocols
Individuals and organisations connect to the internet through an …
… internet service provider (ISP)
Edge router
Router that links one network to another
Subscriber router
Small scale, low-cost devices with two interfaces (one for each network).
Often provided to homes and small businesses.
Type of edge router
Enterprise router
Used to connect large businesses and ISP networks to the internet.
Very powerful and expensive as they
Type of edge router
Router
A networking device that forwards data packets between computer networks
Core router
Routers that are part of the internet backbone
These routers have multiple interfaces, all of which can work at the highest speed simultaneously
Components of an internet packet
payload and header
Packet switching
A method of communicating packets of data across a network
A hop
A router-to-router link
How do routers determine the best 'next hop'
They use a routing table (set of rules) to decide what to do with incoming packets. Each packet is s treated individually and a separate routing decision is made for each one.
Time to live (TTL) counter in a packet header
To prevent packets being infinitely passed in a loop by routers
Initially set when the packet is created, and reduced by one every time it goes through a router.
If the counter reaches zero, the packet is discarded.
Type of Service (ToS) field in the packet header
Makes it possible to mark packets with a priority level
Allows request of special treatment i.e. to be placed at the front of the queue of packets to be routed
Routers may choose to implement or ignore these requests.
Circuit switching
Method of communication over a network.
A direct link is created between two devices (and is maintained for the entire duration of the conversation). Data is then transferred during the entire duration of the link.
A fixed bandwith is reserved for the duration of the link.
Sometimes used for phone calls
Requirement of circuit switching
The transfer and download rates must be identical on both devices.
Domain name system (DNS)
Hierarchical system used to name internet resources.
DNS
Abbreviation of domain name system
Purpose of the domain name system
Looks up a domain name and finds the corresponding IP address
DNS lookup
Gets the IP address of the host of server so that a new copy of the web page can be requested. Sequence of events in a ______ for a URL (e.g https://www.raspberrypi.org/learn/index.html) :
Browser sends the hostname part of the URL (e.g. www.raspberrypi.org) to a domain name server. This is usually provided by your ISP.
The DNS server checks for the hostname in its lookup table
The DNS server sends the corresponding IP address back to the browser
Sequence of events to load a URL (e.g https://www.raspberrypi.org/learn/index.html)
Browser sends the hostname part of the URL (e.g. www.raspberrypi.org) to a domain name server. This is usually provided by your ISP.
The DNS server checks for the hostname in its lookup table
The DNS server sends the corresponding IP address back to the browser
The browser sends a request for the resource identified in the path (/learn/index.html) to the web server located at the IP address
The resource is then returned to the browser
TLD
Abreviation of top level domain
2LD
Abreviation of second level domain
Benefit for humans of using domain names/ URLs instead of IPs
Beacause domain names/URLs are much easier to remember
Recursive name server
DNS server that handles a high volumes of DNS queries and will store a lot of addresses.
DNS root servers
DNS servers at the root of the internet controlled by ICANN.
URL
Abreviation of uniform resource locator
Uniform resource locator(URL)
Unique address of a webpage or other internet resource
Tecniques networks use to exchange data
circuit switching and packet switching
Advantages of packet switching
Multiple methods to ensure data arrives intact eg. checksums and cyclic redundancy checks
Multiple routes can be used between devices, so if one path breaks, another can be used
Can transfer data over very large networks to allow communication globally
Disadvantages of packet switching
Time is spent deconstructing and reconstructing the data packets
Must wait for all packets to arrive before data can be received.
Advantages of circuit switching
Data arrives in a logical order which results in a quicker reconstruction of the data.
Enables two users to hold a call without delay in speech.
Disadvantages of circuit switching
Bandwidth is wasted during periods of time in which no data is being sent.
Devices must transfer and receive data at the same rate.
Using switches means electrical interference may be produced which can corrupt or destroy data.
Ties up sections of the network which cannot be used by others data until transmission has been completed
4 layers of the TCP/IP protocol stack (top to bottom)
Application layer
Transport layer
Internet layer (aka network layer)
Link layer (aka data link layer)
Application data
Name of data block produced by the application layer
Segments (e.g. TCP segment) or datagrams (UDP datagram)
Name of data block produced by the transport layer
Packets
Name of data block produced by the internet layer. Composed of a header, payload and trailer.
Frames (e.g. Ethernet frames)
Name of data block produced by the link layer
Application layer
Based at the top of the stack
Specifies what protocols need to be used to relate the application to what it’s being used for
For example, if the application is a browser then it would select a protocol such as HTTP, POP3, FTP
What does the application layer do when it receives data?
Presents data in the form it was sent
Transport layer
Establishes an end-to-end connection between the source and recipient computers.
Splits data into segments
Can provide either a reliable or unreliable delivery service using TCP or UDP respectively
Adds the the source and destination port numbers to the segment headers
TCP
abreviation of transmission control protocol
Transmission control protocol
Ensures none of the data is lost; reliable delivery service
TCP segments are often reffered to as TCP packets
Labels TCP packets with their sequence number, the total number of packets the original data was split up into and the port number being used for communication.
The recieving end acknowledges each segment it recieves.
If the sender does not receive an acknowledgement, the segment has been lost, and so is resent
In short: If any packets get lost, the transport layer requests retransmissions of these lost packets
UDP
abreviation of user datagram protocol
What does the transport layer do when it receives the data?
Removes the port number and reassembles the packets
User datagram protocol
‘Unreliable’ protocol - doesn’t ensures no of the data is lost
Used when speed of data transfer is the most important criteria, and the application can tolerate some data loss
Applications such as ‘Skype’ and ‘Facetime’ use UDP as well as other media streaming services
Port number
Addressable location on a network that links to an application (or process). Used to return data to the corret place (correct application)
Socket (address)
Combination of an IP address and a port number.
Facilitate asynchronous communication - a socket is designated the source or the destination, depending on which side (client or server) is transmitting the data
Sockets are used to specify which device packets must be sent to and the application being used on that device
Well-known port numbers
Servers use _________ so they do not need to be looked up by the client that is making a request
These numbers lie in the range 0-1024
Network/Internet layer
IP is the standard protocol used
Segments from the transport layer are encapsulated by the IP protocol to create IP packets
Each packet is given a header to assist with the delivery of data. The most important header data is the scource and destination IP addresses.
Routers operate on the network layer
Link layer
Bottom of the TCP/IP stack
Encapsulates IP packets into frames
Adds the source and destination MAC addresses to the frame header
The IP packet is decapsulated every time it reaches its destination MAC address. If the device reached is a router (so not the final destination), it is encapsulated again and forwarded.
For devices on the same network, the destination MAC address is the address of the recipient computer, otherwise, it will be the MAC address of the router.
What does the network layer do when it receives the data?
It removes the IP address
What does the link layer do when it receives the data?
Removes the (source and destination) MAC addresses
HTTP(s)
abreviation of hypertext transfer protocol (secure)
Hypertext transfer protocol (secure)
Used for web page rendering
HTTPs is anencrypted verion
HTTP runs on a client–server architecture
IP packet header
Contains the following fields:
The sender and recipient IP addresses
Protocols being used
Order of the packets
The time to live / hop limit
(Type of service is a bonus)
Payload
the raw data being transmitted
Trailer
Contains a checksum or cyclic redundancy check. These codes are used to detect whether any errors have occurred during transmission.