Before you can read the parent note, you need to own every symbol it throws at you. This page builds each one from absolute zero, in the order they depend on each other. Nothing here is assumed.
The picture: imagine beads sliding down a wire one at a time. Each bead is black (0) or white (1). Nobody hands you a "this word ends here" card — that is exactly the problem the whole chapter solves.
Why the topic needs it: the Physical Layer delivers only this raw stream. Every later idea — a frame, a check-bit, a collision — is something we bolt onto this featureless line of beads.
The picture: a train. The locomotive at the front is the START flag, the caboose at the back is the END flag / check field, and the boxcars in the middle are the payload bytes.
Why the topic needs it: "framing" literally means drawing the envelope around a run of bits so the receiver knows where the letter begins and ends.
Why the topic needs it: flag bytes (0x7E), escape bytes (0x7D), and 48-bit MAC addresses (AA:BB:CC:DD:EE:FF) are all written in hex. Without hex the numbers are unreadable walls of bits.
The key surprise is the last one: 1⊕1=0. There is no carry — unlike ordinary addition where 1+1=10. This "add with no carry" is the entire engine of CRC.
Why the topic needs it: CRC long division is identical to ordinary long division except every "subtract" step is an XOR. Master XOR and the scary division becomes bookkeeping.
The picture: a light switch world. Addition = flip if the other is on. Multiplication = light only if both switches are on.
Why the topic needs it: treating bits as GF(2) numbers is what lets us do algebra on frames. Full detail lives in Polynomials over GF(2); here you only need "add = XOR, no carries".
The picture: a row of slots labelled x3,x2,x1,x0. Each slot is either lit (1, term present) or dark (0, term absent).
Why the topic needs it: the whole CRC recipe is stated in this language — M(x), G(x), R(x), "degR<r". If you can flip between 1101 and x3+x2+1 in your head, the parent's derivation reads like plain English.
Why the topic needs it: the receiver's entire test is "divide by G, is the remainder 0?". A 0 remainder means the frame is a clean multiple of G → assume no error. Any nonzero remainder → definite error. This is why we bothered to makeT divisible in the first place.
Shifts them r places left and appends r zeros — parking spaces for the check bits.
When is a frame "divisible by G"?
When dividing leaves remainder 0, i.e. the frame is an exact multiple Q⋅G.
What do τ, B, L, k mean?
One-way propagation delay, bit-rate, frame length in bits, collision counter for backoff.
Why does Lmin≥2Bτ?
Transmit-time L/B must be at least the round-trip 2τ so the sender is still talking when the collision echo returns.
Recall Quick self-test: could you re-derive
T=QG using only §3 and §6?
Mxr=QG+R (division). Append R: T=Mxr+R=QG+R+R. By §3, R⊕R=0, so T=QG — an exact multiple. If you followed that, you're ready.