1 of 32

1

CS 168, Spring 2026 @ UC Berkeley

Slides credit: Sylvia Ratnasamy, Rob Shakir, Peyrin Kao

Links

Lecture 3 (Intro 3)

B1

Router

A1

A2

A3

A4

B2

B3

2 of 32

Bandwidth and Propagation Delay

Lecture 3, CS 168, Spring 2026

Links

  • Bandwidth and�Propagation Delay
  • Pipe Diagrams
  • Overloaded Links

Brief Preview of the Semester

3 of 32

Properties of Links

A link connects two devices.

Properties of a link:

  • Bandwidth: Number of bits sent/received per unit time.
    • "Width" of the link.
    • Measured in bits per second (bps).
  • Propagation delay: Time it takes a bit to travel along the link.
    • "Length" of the link.
    • Measured in seconds.
  • Bandwidth-delay product: Bandwidth × delay.
    • "Capacity" of the link.

B

A

Capacity = Delay × Bandwidth

Bandwidth

Propagation Delay

4 of 32

Measuring Packet Delay with Timing Diagrams

Suppose we have a link with:

  • Bandwidth = 1 Mbps. (1,000,000 bits per second.)
  • Propagation delay = 1 ms. (0.001 seconds.)

How long does it take to send a 100-byte (800-bit) packet?

  • From the time the first bit is sent,
  • To the time the last bit is received.

Let's draw a timing diagram to help.

Note: We measure in�bits per second, not bytes!

5 of 32

Measuring Packet Delay with Timing Diagrams

B

A

Bandwidth: 1,000,000 bps

Delay: 0.001s

t = 0s

t = 0.000001s

Time to transmit each bit:

1/1,000,000s

t = 0.001001s

Each bit arrives�0.001s later.

t = 0.000002s

t = 0.001002s

t = 0.000003s

t = 0.001003s

t = 0.000800s

t = 0.001800s

Time to transmit 800th bit:

800/1,000,000s

Last bit arrives 1.8 ms later.

800-bit packet

6 of 32

Measuring Packet Delay with Timing Diagrams

Packet Delay = Transmission Delay + Propagation Delay

Packet Delay = (Packet Size / Bandwidth) + Propagation Delay

B

A

Bandwidth: 1,000,000 bps

Delay: 0.001s

t = 0s

t = 0.000001s

t = 0.001001s

t = 0.000800s

t = 0.001800s

800-bit packet

Transmission Delay

Propagation Delay

7 of 32

Link Tradeoffs

Which link is better? It depends.

  • Link 1: Bandwidth 10 Mbps Propagation Delay = 10 ms
  • Link 2: Bandwidth 1 Mbps Propagation Delay = 1 ms

10-byte packet: Link 2 is better.

  • ~10 ms with Link 1. ~1 ms with Link 2.
  • For small packet, transmission delay is negligible. Propagation delay dominates.

10,000-byte packet: Link 1 is better.

  • ~18 ms with Link 1. ~81 ms with Link 2.
  • For large packet, transmission delay dominates.

8 of 32

Pipe Diagrams

Lecture 3, CS 168, Spring 2026

Links

  • Bandwidth and�Propagation Delay
  • Pipe Diagrams
  • Overloaded Links

Brief Preview of the Semester

9 of 32

Timing Diagrams and Pipe Diagrams

B

A

Bandwidth: 5 bps

Delay: 7s

t = 0s

t = 1s

5 bits transmitted per second.

t = 8s

Each bit arrives�7s later.

t = 2s

t = 9s

t = 3s

t = 10s

t = 10s

t = 17s

10s to transmit 50 bits.

Last bit arrives 17s later.

50-bit packet

10 of 32

Timing Diagrams and Pipe Diagrams

The pipe diagram is an alternate view of the link.

  • Shows the bits on the link at a frozen moment in time.

B

A

Bandwidth: 5 bps

Delay: 7s

t = 0s

t = 1s

t = 2s

t = 3s

t = 4s

t = 5s

t = 6s

t = 7s

t = 8s

t = 9s

t = 10s

t = 11s

t = 12s

t = 13s

t = 14s

t = 15s

t = 16s

t = 17s

(This diagram needs to be viewed with animation to make sense.)

11 of 32

Pipe Diagrams

Pipe diagram shows the bits on the link at a frozen moment in time.

  • Height = bandwidth. How many bits we can put in the pipe per unit time.
  • Width = propagation delay. How long it takes for bits to travel through the pipe.
  • Area = bandwidth-delay product. How many bits fit in the pipe at a given instant.

B

A

Bandwidth: 5 bps

Delay: 7s

Bandwidth

Propagation Delay

12 of 32

Pipe Diagrams

Shorter propagation delay: Pipe length is shorter.

B

A

Bandwidth: 5 bps

Delay: 3s

t = 0s

t = 1s

t = 2s

t = 3s

t = 4s

t = 5s

t = 6s

t = 7s

t = 8s

t = 9s

t = 10s

t = 11s

t = 12s

t = 13s

(This diagram needs to be viewed with animation to make sense.)

13 of 32

Pipe Diagrams

Higher bandwidth: Pipe height is taller.

B

A

Bandwidth: 10 bps

Delay: 3s

t = 0s

t = 1s

(This diagram needs to be viewed with animation to make sense.)

t = 2s

t = 3s

t = 4s

t = 5s

t = 6s

t = 7s

t = 8s

14 of 32

Pipe Diagrams – Transmission Delay

The width of the packet in the pipe represents the transmission delay.

  • How long it takes to put all the bits in the pipe.
  • More bandwidth = taller pipe = more bits in pipe per unit time�= narrower packet in pipe.

B

A

Bandwidth: 5 bps

Delay: 7s

(This diagram needs to be viewed with animation to make sense.)

t = 0s

t = 1s

t = 2s

t = 3s

t = 4s

t = 5s

t = 6s

t = 7s

t = 8s

t = 9s

t = 10s

t = 11s

15 of 32

Pipe Diagrams – Transmission Delay

The width of the packet in the pipe represents the transmission delay.

  • How long it takes to put all the bits in the pipe.
  • More bandwidth = taller pipe = more bits in pipe per unit time�= narrower packet in pipe.

B

A

Bandwidth: 10 bps

Delay: 7s

(This diagram needs to be viewed with animation to make sense.)

t = 0s

t = 1s

t = 2s

t = 3s

t = 4s

t = 5s

t = 6s

t = 7s

t = 8s

t = 9s

16 of 32

Pipe Diagrams – Transmission Delay

The width of the packet in the pipe represents the transmission delay.

  • How long it takes to put all the bits in the pipe.
  • More bandwidth = taller pipe = more bits in pipe per unit time�= narrower packet in pipe.

Transmission Delay

Transmission Delay

17 of 32

Overloaded Links

Lecture 3, CS 168, Spring 2026

Links

  • Bandwidth and�Propagation Delay
  • Pipe Diagrams
  • Overloaded Links

Brief Preview of the Semester

18 of 32

Packet Switching at Routers

Recall: Routers receive packets, and forward them toward their destinations.

  • For simplicity, consider 2 links with incoming traffic.
  • For simplicity, consider sending all outgoing traffic out of 1 link.

B1

Router

A1

A2

A3

A4

B2

B3

19 of 32

Packet Switching at Routers

Recall: Routers receive packets, and forward them toward their destinations.

  • For simplicity, consider 2 links with incoming traffic.
  • For simplicity, consider sending all outgoing traffic out of 1 link.

Router

A1

A2

A3

A4

B2

B3

B1

Router

A2

A3

A4

B2

B3

B1

A1

Router

B2

A3

A4

B3

B1

A1

A2

Router

A3

A4

B3

B1

A1

A2

B2

Router

B3

A4

B1

A1

A2

B2

A3

Router

A4

B1

A1

A2

B2

A3

B3

Router

B1

A1

A2

B2

A3

B3

A4

20 of 32

Transient Overload

What happens if two packets arrive at the router simultaneously?

  • Can't process both at the same time! Router must queue one for later.
  • When there are no incoming packets, router can drain the queue.
  • This is called transient overload, and it's fairly common.

Router

B1

A1

A2

A3

A4

B2

B3

Queued:

21 of 32

Transient Overload

What happens if two packets arrive at the router simultaneously?

  • Can't process both at the same time! Router must queue one for later.
  • When there are no incoming packets, router can drain the queue.
  • This is called transient overload, and it's fairly common.

Router

A1

Queued:

B1

A2

A3

A4

B2

B3

22 of 32

Transient Overload

What happens if two packets arrive at the router simultaneously?

  • Can't process both at the same time! Router must queue one for later.
  • When there are no incoming packets, router can drain the queue.
  • This is called transient overload, and it's fairly common.

Router

A1

B1

Queued:

B3

A3

A4

A2

B2

23 of 32

Transient Overload

What happens if two packets arrive at the router simultaneously?

  • Can't process both at the same time! Router must queue one for later.
  • When there are no incoming packets, router can drain the queue.
  • This is called transient overload, and it's fairly common.

Router

A3

A4

B3

Queued:

B2

A1

B1

A2

24 of 32

Transient Overload

What happens if two packets arrive at the router simultaneously?

  • Can't process both at the same time! Router must queue one for later.
  • When there are no incoming packets, router can drain the queue.
  • This is called transient overload, and it's fairly common.

Router

A3

A4

B3

A1

B1

A2

B2

Queued:

25 of 32

Transient Overload

What happens if two packets arrive at the router simultaneously?

  • Can't process both at the same time! Router must queue one for later.
  • When there are no incoming packets, router can drain the queue.
  • This is called transient overload, and it's fairly common.

Router

B3

A4

A1

B1

A2

B2

A3

Queued:

Router

A4

A1

B1

A2

B2

A3

B3

Queued:

Router

A1

B1

A2

B2

A3

B3

A4

Queued:

26 of 32

Packet Switching at Routers

Persistent overload: Not enough capacity to handle the incoming packets!

  • Queue won't help us. If the queue fills up, the router must drop packets.

How do we solve persistent overload?

  • Operators can detect the overload and (manually) upgrade the link.
  • Routers can tell the senders to slow down.

Router

B1

A1

A2

A3

A4

A5

A6

A7

B2

B3

B4

B5

B6

B7

Uh oh...

27 of 32

Packet Queuing and Life of a Packet

Queues introduce extra delay.

  • Packet delay = Transmission Delay + Propagation Delay + Queuing Delay.

Life of a packet:

  • Sender puts payload in a packet, adding headers.
  • Packet travels along a link.
  • Packet arrives at a router. Router forwards packet to the next hop.
    • Packet might be queued or dropped.
  • Repeat the last step until:
    • Packet reaches destination.
    • Packet is dropped.

28 of 32

Brief Preview of the Semester

Lecture 3, CS 168, Spring 2026

Links

  • Bandwidth and�Propagation Delay
  • Pipe Diagrams
  • Overloaded Links

Brief Preview of the Semester

29 of 32

Brief Preview of the Semester

Lectures 1–3: Networking Principles.

  • Layering and headers.
  • Design principles.
  • Links, life of a packet.
  • Project 1: Traceroute.

Lectures 4–9: Routing (Layer 3).

  • Routing: How do routers know where to forward packets?
  • Addressing: How do we address end hosts?
  • How do you build an industrial-strength router in hardware?
  • Project 2: Routing.

30 of 32

Brief Preview of the Semester

Lectures 10–13: Reliability (Layer 4).

  • TCP: How do end hosts communicate reliably?
  • Congestion control: How do we ensure end hosts don't overload the links?
  • Project 3: Transport.

Lectures 14–15: Applications (Layer 7).

  • DNS: How do we map names to addresses?
  • HTTP: How do we build applications on top of the network?

Lectures 16–17: End-to-End Picture.

  • ARP and DHCP: What happens when you join the network for the first time?
  • NAT: How do we make sure there's enough addresses for everybody?
  • TLS: How do we secure network connections against attackers?

31 of 32

Brief Preview of the Semester

Lectures 18–21: Datacenters.

  • How do we build a network to connect servers in high-performance datacenters?
  • SDN: Can we centralize control to improve performance?
  • Host networking, RDMA: How can we optimize performance at the end hosts?

Lectures 22–23: Beyond Client-Server.

  • Multicast: How do we support group communication (e.g. Google Docs)?
  • Collectives: How do we design networks to support AI training?

Lectures 24–25: Wireless.

  • How do we design wireless communication at Layers 1 and 2?
  • How do we design cellular networks?

32 of 32

Summary: Links

  • Packet Delay = (Packet Size / Bandwidth) + Propagation Delay + Queuing Delay�
  • Routers experience transient overload if packets arrive simultaneously.�Solution: Packets get queued for later.
  • Routers experience persistent overload if there's insufficient capacity.�Queue gets full, and packets get dropped.

Transmission Delay

Bandwidth

Propagation Delay

Capacity = Delay × Bandwidth

Transmission Delay

Bandwidth: 1,000,000 bps

Delay: 0.001s

t = 0s

0.000001s

0.001001s

0.000800s

0.001800s

800-bit packet

Transmission Delay

Propagation Delay