1- We take the original data and pass it trough a coding schem (EDCE Codex) generating EDC bits
- The data and the EDC bits are concatenated and passed through the network
- The receiving end apllies the same codex, if it matches the EDC and then it passes the error check, otherwise there is an error
- Is not 100% reliable, some protocols may rarely miss some errors
- Bigger EDC fileds haver better chances at error detection

Parity Checking
-> Single Bit Parity: detects single bit errors - compute parity of d received bits - compares with received partity bit - if different than erros detected

-> Two Dimensional Bit Parity: detects and corrects single bit errors

Internet Checksum
- Detect errors in transmitted segment
Sender: -> treat contents on UDP segment as a 16-bit integers -> Checksum: addition of segment content -> Belongs in UDP checksum field
Receiver: -> computes checksum of received segment -> Checks if matches or not (being equal doesn't mean that there are more errors)
CRC
- CRC (Cyclic Redundancy Check) is an error-detection method used in networks and digital systems to verify if data transmitted has been corrupted during transmission.
- Before sending a block of data, the sender calculates a value called the CRC, based on the content of the data.
- This value is calculated using mathematical operations from binary algebra (polynomial division) and is appended to the end of the data.
- The receiver, upon receiving the data, performs the same calculation on the received data and compares it with the received CRC.
- If the values do not match, it means an error occurred during transmission.
- If they match, the data likely arrived intact.
- Is used in data link layer protocols (Layer 2), such as Ethernet.
- Detects common errors caused by noise and interference.
- Much more reliable than simple checksums or parity bits.