Chapter 3 - Data Link Layer#1

0.0(0)
Studied by 0 people
call kaiCall Kai
Locked
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/22

encourage image

There's no tags or description

Looks like no tags are added yet.

Last updated 10:23 AM on 8/5/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai
Chat

No analytics yet

Send a link to your students to track their progress

23 Terms

1
New cards

What is the overall goal of the Data Link Layer (L2)?

Provide reliable, efficient data transfer of frames between adjacent stations over a physical link, using the L1 bit-stream service.

2
New cards

What does L1 provide to L2? What are its deficiencies?

L1 provides an unreliable bit pipe (no sequence errors, but bit flips, insertions, and losses possible). It has finite propagation speed and limited data rate.

3
New cards

What are the four main L2 functions?

(1) Data transmission through Framing,

(2) Error detection/correction,

(3) Flow control,

(4) Configuration management.

4
New cards
<p>Name the three L2 service classes.</p>

Name the three L2 service classes.

  • Unconfirmed connectionless – no ACK, no flow control; used in LANs with low error rates

  • Confirmed connectionless – each frame ACKed individually; used on high-error channels (e.g. wireless)

  • Connection-oriented – connection setup → data transfer (with ACK, flow control) → disconnect

<ul><li><p><strong>Unconfirmed connectionless</strong> – no ACK, no flow control; used in LANs with low error rates</p></li><li><p><strong>Confirmed connectionless</strong> – each frame ACKed individually; used on high-error channels (e.g. wireless)</p></li><li><p><strong>Connection-oriented</strong> – connection setup → data transfer (with ACK, flow control) → disconnect</p></li></ul><p></p>
5
New cards

Why are L2 ACKs not strictly required?

Higher layers (L4) can also do error correction. But retransmitting an entire L4 message due to one faulty L2 frame wastes time → L2 ACKs are an optimization.

6
New cards

What is the purpose of framing at L2?

Structure the raw L1 bit stream into delimited units (frames) so error correction and flow control can be applied per frame.

<p>Structure the raw L1 bit stream into delimited units (frames) so error correction and flow control can be applied per frame.</p>
7
New cards

What are the four framing methods?What does each one do?

  • Character-oriented – control characters mark boundaries (DLE, STX, ETX)

  • Count-oriented – frame contains a length count field

  • Bit-oriented – special flag bit pattern (e.g. 01111110) marks boundaries → requires bit stuffing

  • Invalid L1 characters – use encoding-specific invalid symbols as delimiters

8
New cards

What is character stuffing and when is it used?

Used in character-oriented protocols.

Sender prepends DLE(Data Link Escape) before any control character in user data.

Receiver only interprets control characters preceded by DLE. If user data contains DLE itself, an extra DLE is inserted before it.

<p>Used in character-oriented protocols. </p><p><strong>Sender </strong>prepends DLE(Data Link Escape) before any control character in user data. </p><p></p><p><strong>Receiver </strong>only interprets control characters preceded by DLE. If user data contains DLE itself, an extra DLE is inserted before it.</p>
9
New cards

What is bit stuffing and when is it used?

Used in bit-oriented protocols (e.g. HDLC). Sender inserts a 0 after every five consecutive 1s in user data. Receiver removes 0 after five 1s. Prevents the flag pattern 01111110 from appearing in data.

<p>Used in bit-oriented protocols (e.g. HDLC). Sender inserts a <code>0</code> after every five consecutive <code>1</code>s in user data. Receiver removes <code>0</code> after five <code>1</code>s. Prevents the flag pattern <code>01111110</code> from appearing in data.</p>
10
New cards

What is the problem with count-oriented framing?

A transmission error in the length count field desynchronizes sender and receiver — it's unclear where the next frame starts.

11
New cards

What is the problem with the "idle time" framing approach?

L1 may not have a reliable notion of time; inefficient if idle periods are required between frames.

12
New cards

What causes transmission errors?

Thermal noise, impulse disruptions (~10 ms, from lightning/power lines), crosstalk, echo, interference, signal distortion. Errors typically occur in bursts.

13
New cards

What is the Hamming distance between two code words?

The number of bit positions in which they differ (computed via XOR, count the 1s).

<p>The number of bit positions in which they differ (computed via XOR, count the 1s).</p>
14
New cards

What is the Hamming distance of a code?

The minimum Hamming distance between any two valid code words in the code.

<p>The minimum Hamming distance between any two valid code words in the code.</p>
15
New cards

For detection off bit errors, what Hamming distance d is required

d ≥ f + 1

<p>d ≥ f + 1</p>
16
New cards

For correction off bit errors, what Hamming distance d is required?

d ≥ 2f + 1 (received word is "closer" to the original than to any other valid word)

<p>d ≥ 2f + 1 (received word is "closer" to the original than to any other valid word)</p>
17
New cards

Lower bound for check bits r to correct 1-bit errors in m data bits?

(m + r + 1) ≤ 2^r. Example: m=8 → r=4; m=1000 → r=10

<p>(m + r + 1) ≤ 2^r. Example: m=8 → r=4; m=1000 → r=10</p>
18
New cards

What is a parity bit and what can it detect?

A single redundant bit making the total number of 1s even (or odd). Detects all single-bit errors (d=2, detects f=1). Cannot correct errors.

19
New cards
<p>What is CRC (Cyclic Redundancy Check)?</p>

What is CRC (Cyclic Redundancy Check)?

Error detection method treating bit strings as polynomials. Sender appends remainder R(x) of B(x)·x^r / G(x) to the message. Receiver divides received word by G(x); zero remainder → no error detected.

<p>Error detection method treating bit strings as polynomials. Sender appends remainder R(x) of B(x)·x^r / G(x) to the message. Receiver divides received word by G(x); zero remainder → no error detected.</p>
20
New cards

What are the CRC sender steps?

1. Append r zeros to block B → B_E (= x^r · B(x))

2. Divide B_E(x) by G(x) (mod 2) → quotient Q(x) + remainder R(x)

3. Transmit B_E − R(x) (i.e. B with R replacing the appended zeros)

21
New cards

What does G(x) require for CRC?

Degree r < degree of B(x); highest and lowest order bit must be 1.

22
New cards

What errors does CRC-CCITT (x^16 + x^12 + x^5 + 1) detect?

All single/double bit errors, all odd-bit errors, all burst errors ≤ 16 bits, 99.99% of burst errors > 16 bits.

23
New cards

Why is error correction less common than detection at L2?

Correction requires high redundancy per block. For the same overhead, error detection + retransmission is usually more efficient given typical error distributions