COMP1055 Lecture 13: Routing and IP Study Notes
University of Nottingham - Routing and IP - Lecture 13 Notes
Overview
Instructor: Dr. Steven Bagley, University of Nottingham
Lecture focus: Routing and Internet Protocol (IP)
Recap: Packet Forwarding
Introduces the fundamental aspect of networking where data packets are forwarded from one network to another until they reach their destination.
Network 1 and Network 2 are highlighted as the two distinct networks involved in packet forwarding.
The references to various layers (5 - Application, 4 - Transport, 3 - Internet, 2 - Network Interface, 1 - Physical) within the context of communication between these networks illustrate the layered architecture of networking.
Internet Protocol (IP)
Basic Functions of IP
Definition of IP: Internet Protocol facilitates communication across diverse networks. It is primarily considered a layer 3 protocol designed for routing.
Functions:
Addressing: Identifies both the machine and the respective network on which the machine is located, allowing IP to deliver packets properly.
Fragmentation: IP can break down larger packets into smaller units suitable for transmission across different networks.
Connectionless Nature: IP sends datagrams without guaranteeing the order of delivery or even ensuring that they arrive.
Packet Structure and Addressing
IP Address Format: An IPv4 address is composed of 4 bytes, often represented in a dotted decimal format (e.g., 128.243.28.210). Though it notionally allows for approximately 4 billion devices, IPv4 has reached exhaustion in available addresses.
Classes of IP addresses:
Class A: Huge networks with up to 16.7 million addresses (range: 1.x.x.x to 127.x.x.x).
Class B: Networks accommodating 65,536 addresses (range: 128.0.x.x to 191.255.x.x).
Class C: Networks with 256 addresses (range: 192.0.0.x to 223.255.255.x).
Class D: Reserved for multicast (range: 224.0.0.0 to 239.255.255.255).
Class E: Reserved for experimental use (range: 240.0.0.0 to 255.255.255.255).
Limitations of Classful Addressing:
Inflexibility: Organizations often received more addresses than needed, leading to significant waste.
Scalability: The fixed sizes did not cater well to mid-sized organizations that required more than 256 but fewer than 65,536 addresses.
Classless Inter-Domain Routing (CIDR)
Introduced to reduce exhaustion of IP addresses and the rapid increase in routing tables.
CIDR employs a variable-length prefix specifying the network part of an address (e.g., 10.0.0.1/8, 192.168.1.1/24) rather than fixed 8-bit segments.
Benefits of CIDR:
Efficiency: Allows for much finer control over address allocation, minimizing waste.
Aggregation: Enables "route summarization," where a single routing table entry can represent a large block of networks, reducing the memory and processing burden on routers.
Transition to IPv6
The limitations of IPv4 led to the development of IPv6 in the 1990s, which utilizes a 128-bit address space.
Benefits of IPv6:
Scalability: Provides approximately 3.4 \times 10^{38} addresses, effectively solving the exhaustion problem.
Efficiency: Simplified header format improves processing speed in routers.
Security: Built-in support for IPsec (Internet Protocol Security).
Limitations of IPv6:
Compatibility: Not backward-compatible with IPv4, requiring transition mechanisms like tunneling or dual-stacking.
Complexity: Longer addresses are harder for humans to memorize and manage manually.
Routing
Nature of Routing
Routing is fundamentally a layer 3 process focused on determining the optimal path for data packets across networks.
The Store-and-Forward Mechanism:
Benefit: Ensures error checking can happen before a packet is sent onto the next link.
Limitation: Adds latency, as the entire packet must be received before it can be processed and forwarded.
Routing Tables and Source Independence
Each machine uses a routing table that connects destination addresses with the next hop.
Source Independence:
Benefit: Simplifies routing logic; routers only need to know where a packet is going, not where it came from.
Limitation: Can make certain types of traffic engineering or security filtering (like preventing spoofing) more difficult without additional mechanisms.
Reliability of IP
IP is classified as a best-effort protocol.
Benefits of Best-Effort Delivery:
Low Overhead: No overhead for acknowledgments or retransmissions within the IP layer itself, maximizing speed for real-time applications.
Simplicity: Routers are kept simple and fast because they do not track the state of connections.
Limitations of Best-Effort Delivery:
Unreliability: Packets can be lost, duplicated, or arrive out of order, necessitating higher-layer protocols like TCP for reliable data transfer.