TCP Introduction Flashcards
When working with application protocols like HTTP, SMTP, or DNS, what is the recommended practice and why?
Always use libraries to avoid reinventing the wheel and ensure reliability
What is the most sensible unit for measuring link capacity?
Bits per second (bps)
What is a baud, and where is it commonly used?
A baud is a unit that refers to symbols per second, commonly used in electrical engineering and older communication systems like dial-up modems.
What are the two primary components of latency in a network?
Propagation delay and transmission delay.
What is propagation delay, and what does it depend on?
Propagation delay is the time taken for a signal to travel across a physical link. It depends on the distance and the propagation speed.
What is transmission delay, and what does it depend on?
Transmission delay is the time required to push the entire packet onto the link. It depends on the packet size (in bits) and the transmission rate.
How do you calculate propagation delay?
Propagation delay = Distance / Propagation speed
How do you calculate transmission delay?
Transmission delay = Packet size (in bits) / Transmission rate.
Why does transmission delay vary with packet size?
Because larger packets take more time to transmit at a given transmission rate.
Why is propagation delay constant for a link?
Because it depends only on the fixed distance and propagation speed of the medium. (Speed of light is constant)
What is the difference between “store-and-forward” and “cut-through” systems?
Store-and-forward systems buffer packets until the checksum is read at each hop, while cut-through systems process packets as soon as they receive the frame, without waiting for the entire packet (and it’s checksum).
Why is “store-and-forward” more common in modern networks?
It ensures error-checking through checksum verification at every hop, which is critical for reliable communication.
What factors contribute to latency at each hop in a network?
Packet clocking time and propagation delay
Why are checksums verified at every hop?
To detect and correct errors in data transmission
Why do network projects often fail, according to the introductory module slides?
Due to underestimating latency and its impact on performance
What dominates latency in short-distance links?
Bandwidth limitations.
What dominates latency in long-distance links?
Propagation delay.
What is the “elephants problem” in networking?
Long Fat Networks face performance challenges when bandwidth scales to tens of gigabits or terabits per second, requiring efficient utilisation.
Why is “filling” a network link important?
To maximise the utilisation of the available bandwidth for optimal performance.
What is a Long Fat Network (LFN) and its main challenge?
An LFN is a network with high bandwidth and long distances. The challenge is efficiently utilising the high bandwidth despite the high latency caused by long distances.
What is the throughput in a network determined by?
The throughput is determined by the slowest link in the network path
What happens to the excess data sent if the sender transmits more than the capacity of the slowest link?
The excess data accumulates in buffers (e.g., at the router), leading to potential buffer overflow and packet drops if the buffers are full.
Why don’t core transmission devices have large buffers?
Core transmission devices lack large (deep) buffers because fast, error-checked, double-ported RAM is expensive, and designing core switches with large buffers is challenging.
How do edge devices differ in terms of buffering compared to core devices?
Edge devices can have larger (deeper) buffers, but these are still finite and cannot handle unlimited data overflow.
What must happen for data transmission to avoid overwhelming the network?
The sender (e.g., device A) must throttle its transmission rate to match the capacity of the slowest link in the network.
What was considered fast broadband in the mid-2000s?
In the mid-2000s, 2 Mbps downstream and 256 kbps upstream were considered fast broadband.
What does the “A” in ADSL stand for, and what does it signify?
The “A” in ADSL stands for “Asymmetric,” signifying that the downstream speed is greater than the upstream speed.
What is SDSL, and how does it differ from ADSL?
SDSL (Symmetric Digital Subscriber Line) provides equal upstream and downstream speeds, unlike ADSL, which is asymmetric.
Out of SDSL and ADSL, which is cheaper and which is more common?
ADSL is more common because most residential and small office/home office (SOHO) users primarily download content (e.g., streaming, browsing), so higher downstream speeds are more useful. ADSL is also cheaper to deploy due to its focus on asymmetric speeds.
What happens when queues fill up in a network?
When queues fill up, packets are dropped, leading to reduced throughput and increased latency.
How is limited upstream bandwidth apportioned in a network?
Bandwidth is managed using queuing disciplines (qdisc) and traffic control (tc), which decide how packets are prioritized and scheduled for transmission.
What is the role of ingress and egress queues in a network?
Ingress Queues manage incoming traffic, ensuring packets are processed before being sent further.
Egress Queues manage outgoing traffic to prioritize and limit data sent to a lower-bandwidth link.
How do core and edge systems differ in their use of queues?
Edge systems: Have long, deep, and well-managed queues to handle variable traffic.
Core systems: Use fast, reliable, deterministic systems with small or no queues.
What Linux tools are mentioned for managing queues and traffic control in the lecture?
The tools mentioned are qdisc (queuing discipline) and tc (traffic control).
What is the difference between hosts, switches, and routers?
Hosts: Devices running useful programs (e.g., computers).
Switches: Connects multiple hosts within a LAN. Move packets inside subnets or LANs, operating on broadcast domains.
Routers: Connects different LANs. Move packets between networks, needing topology knowledge to deliver packets.
Why is the boundary between routers and switches becoming less clear?
Modern routers often include switch-like functions, and most routers today have an attached switch fabric.
What does a switch do within a LAN?
A switch broadcasts a packet within the LAN to ensure the recipient gets it, minimizing unnecessary traffic by learning local addresses.
What are the key steps when you click on a link like https://www.bbc.co.uk/index.html?
- Parse the URL to understand the protocol, host, and path.
- Use DNS to find the IP address of the destination.
- Establish a TCP connection.
- Perform cryptographic handshakes if HTTPS is used.
- Fetch the content using HTTP.
- Send and receive data at each step.
What does the structure of a URL like https://www.bbc.co.uk/index.html represent?
Scheme: The protocol, e.g., https, defines how the resource is accessed.
Host: The server or domain, e.g., www.bbc.co.uk, identifies where the resource is located.
Path: The specific resource being accessed on the server, e.g., /index.html.
What is the function of DNS in the context of a URL?
DNS maps the human-readable domain name (e.g., www.bbc.co.uk) to its corresponding IP address, enabling communication with the server.
Why should you avoid writing your own TCP or networking code in production?
It is better to use libraries since they are tested, optimized, and secure. Writing your own code for production is likely error-prone and unnecessary unless for learning purposes.