SlideShare a Scribd company logo
1 of 13
CRC and its effectiveness
         Part 1
  Martin Brenn, 28.04.2012
     brenn@depon.net



           Depon.Net
Messages
• Messages are sent everywhere and
  everyday.

• For example:
  – CAN (created by automotive industry)
  – SPI (Inter-CPU)
  – Wired Ethernet (LAN)
  – Wireless LAN (IEEE 80211.x)
  – And many many more
Corruption
• Corruption of messages occurs everywhere and
  every day!
• Typical failure modes:
  –   Loss
  –   Repetition
  –   Wrong order of packets (especially in Internet)
  –   Manipulation of content
       • Bit flips (0->1 or 1-0)
       • Duplication or omission of bits (11100->1100)
  – Disagreement about communication parameters
       • „What he says?“ or „Ariane 5 Flight 501“
Ariane 5




                                        Result of converting a 64-Bit float to 16-bit Integer
                                        without check for Arithmetic Overflow
                                        • http://en.wikipedia.org/wiki/Ariane_5_Flight_501

Source of images:
1)    http://www.capcomespace.net/dossiers/espace_europeen/ariane/ariane
      5/AR501/V88%20explosion%2003.jpg
2)    http://de.wikipedia.org/wiki/Ariane_5
Scope

• Today, we just take care of manipulation of
  data

• Competition against systematic failures is
  also quite interesting but not in my today‘s
  scope.
Result




Corrupted cat is corrupt
Manipulation types
• Typical Effects:
  – Single bit error: Just one bit flips
     • 0100 1011 -> 0101 1011
  – Double bit error: Two bits flips
     • 0100 1011 -> 1110 1011
     • 0100 1011 -> 0100 1000
  – Multiple bit error: More bit errors
     • 0100 1011 -> 1001 0011
  – Burst error: Multiple bits flip or get a new value
     • 0100 1011 -> 1111 1011
What do?
• Create redundandy!
  – Simple: Repeat message twice and check if
    content is the same
  – Problem: 6 Mbit-DSL will just give 3 Mbit.
  – Does duplication really help against systematic
    failures?
  – i.e. Dual-Channel FlexRay
• Usually, information about validity of
  message is enough!
  – Add checksum for detection!
Checksum vs. CRC
• Checksums are not checksums!
• Typically, „checksums“: are a summation of
  all values multiplied with factors depending
  on their position:
  – Checksum = Sum(Value[n] * Lookup[n%m])
  – Not very effective (i.e: TCP)
• CRC:
  – Quite funny thing, difficult to explain
  – http://en.wikipedia.org/wiki/Computation_of_
    CRC
Properties of CRC
• Main Properties of a CRC:
  – Polynomial, implying the length of CRC
  – Seed [Not Seeed (Dickes B)]
  – Inverting, +1, etc…

• The calculated CRC will be appended to
  message
• CRC increases hamming distance of
  messages.
  – Corruption can be detected!
Choice of Polynomial
• So, let‘s choose a CRC…
• Where to start?
• For example:
  – http://www.ece.cmu.edu/~koopman/roses/ds
    n04/koopman04_crc_poly_embedded.pdf
  – Nice work!
Task
• Task:
  – Find the probability that a corrupted message
    will be assumed as corrupt!

  – We will use „Monte Carlo Method“
     •   http://en.wikipedia.org/wiki/Monte_Carlo_method
     •   Simple things need complex words!
     •   Do random guessing and take this as the truth
     •   Simple, quite effective
• Part 1 completed!
• Part 2 will present the application!

More Related Content

Similar to CRC and its effective

Osi model
Osi model Osi model
Osi model maha tce
 
HowTheInternetWorks.ppt
HowTheInternetWorks.pptHowTheInternetWorks.ppt
HowTheInternetWorks.pptPrakhar Pandey
 
Error detecting and correcting codes
Error detecting and correcting codesError detecting and correcting codes
Error detecting and correcting codessaraswathi12
 
Slides internet technology
Slides internet technologySlides internet technology
Slides internet technologyInexk Pedrero
 
Datalink_func.pptx
Datalink_func.pptxDatalink_func.pptx
Datalink_func.pptxThangamaniR3
 
Error detection and correction
Error detection and correctionError detection and correction
Error detection and correctionAbdul Razaq
 
Humming code error detector 7_communications.ppt
Humming code error detector 7_communications.pptHumming code error detector 7_communications.ppt
Humming code error detector 7_communications.pptnesarahmad37
 
Secure Coding Practices for Middleware
Secure Coding Practices for MiddlewareSecure Coding Practices for Middleware
Secure Coding Practices for MiddlewareManuel Brugnoli
 
On codes, machines, and environments: reflections and experiences
On codes, machines, and environments: reflections and experiencesOn codes, machines, and environments: reflections and experiences
On codes, machines, and environments: reflections and experiencesVincenzo De Florio
 
Introduction to the Data Link Layer
Introduction to the Data Link LayerIntroduction to the Data Link Layer
Introduction to the Data Link LayerMeenakshi Paul
 
The Power of Determinism in Database Systems
The Power of Determinism in Database SystemsThe Power of Determinism in Database Systems
The Power of Determinism in Database SystemsDaniel Abadi
 

Similar to CRC and its effective (20)

Osi model
Osi model Osi model
Osi model
 
HowTheInternetWorks.ppt
HowTheInternetWorks.pptHowTheInternetWorks.ppt
HowTheInternetWorks.ppt
 
06 pipeline
06 pipeline06 pipeline
06 pipeline
 
Raptor codes
Raptor codesRaptor codes
Raptor codes
 
Source coding
Source coding Source coding
Source coding
 
Error detecting and correcting codes
Error detecting and correcting codesError detecting and correcting codes
Error detecting and correcting codes
 
Slides internet technology
Slides internet technologySlides internet technology
Slides internet technology
 
Datalink_func.pptx
Datalink_func.pptxDatalink_func.pptx
Datalink_func.pptx
 
Error detection and correction
Error detection and correctionError detection and correction
Error detection and correction
 
Humming code error detector 7_communications.ppt
Humming code error detector 7_communications.pptHumming code error detector 7_communications.ppt
Humming code error detector 7_communications.ppt
 
Secure Coding Practices for Middleware
Secure Coding Practices for MiddlewareSecure Coding Practices for Middleware
Secure Coding Practices for Middleware
 
Binary and EC codes
Binary and EC codesBinary and EC codes
Binary and EC codes
 
Ch6.ppt
Ch6.pptCh6.ppt
Ch6.ppt
 
Digital Communication Techniques
Digital Communication TechniquesDigital Communication Techniques
Digital Communication Techniques
 
Computer Networks
Computer NetworksComputer Networks
Computer Networks
 
On codes, machines, and environments: reflections and experiences
On codes, machines, and environments: reflections and experiencesOn codes, machines, and environments: reflections and experiences
On codes, machines, and environments: reflections and experiences
 
Introduction to the Data Link Layer
Introduction to the Data Link LayerIntroduction to the Data Link Layer
Introduction to the Data Link Layer
 
Error.pdf
Error.pdfError.pdf
Error.pdf
 
The Power of Determinism in Database Systems
The Power of Determinism in Database SystemsThe Power of Determinism in Database Systems
The Power of Determinism in Database Systems
 
lecture04.ppt
lecture04.pptlecture04.ppt
lecture04.ppt
 

Recently uploaded

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Hyundai Motor Group
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetHyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetEnjoy Anytime
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 

Recently uploaded (20)

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetHyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 

CRC and its effective

  • 1. CRC and its effectiveness Part 1 Martin Brenn, 28.04.2012 brenn@depon.net Depon.Net
  • 2. Messages • Messages are sent everywhere and everyday. • For example: – CAN (created by automotive industry) – SPI (Inter-CPU) – Wired Ethernet (LAN) – Wireless LAN (IEEE 80211.x) – And many many more
  • 3. Corruption • Corruption of messages occurs everywhere and every day! • Typical failure modes: – Loss – Repetition – Wrong order of packets (especially in Internet) – Manipulation of content • Bit flips (0->1 or 1-0) • Duplication or omission of bits (11100->1100) – Disagreement about communication parameters • „What he says?“ or „Ariane 5 Flight 501“
  • 4. Ariane 5 Result of converting a 64-Bit float to 16-bit Integer without check for Arithmetic Overflow • http://en.wikipedia.org/wiki/Ariane_5_Flight_501 Source of images: 1) http://www.capcomespace.net/dossiers/espace_europeen/ariane/ariane 5/AR501/V88%20explosion%2003.jpg 2) http://de.wikipedia.org/wiki/Ariane_5
  • 5. Scope • Today, we just take care of manipulation of data • Competition against systematic failures is also quite interesting but not in my today‘s scope.
  • 7. Manipulation types • Typical Effects: – Single bit error: Just one bit flips • 0100 1011 -> 0101 1011 – Double bit error: Two bits flips • 0100 1011 -> 1110 1011 • 0100 1011 -> 0100 1000 – Multiple bit error: More bit errors • 0100 1011 -> 1001 0011 – Burst error: Multiple bits flip or get a new value • 0100 1011 -> 1111 1011
  • 8. What do? • Create redundandy! – Simple: Repeat message twice and check if content is the same – Problem: 6 Mbit-DSL will just give 3 Mbit. – Does duplication really help against systematic failures? – i.e. Dual-Channel FlexRay • Usually, information about validity of message is enough! – Add checksum for detection!
  • 9. Checksum vs. CRC • Checksums are not checksums! • Typically, „checksums“: are a summation of all values multiplied with factors depending on their position: – Checksum = Sum(Value[n] * Lookup[n%m]) – Not very effective (i.e: TCP) • CRC: – Quite funny thing, difficult to explain – http://en.wikipedia.org/wiki/Computation_of_ CRC
  • 10. Properties of CRC • Main Properties of a CRC: – Polynomial, implying the length of CRC – Seed [Not Seeed (Dickes B)] – Inverting, +1, etc… • The calculated CRC will be appended to message • CRC increases hamming distance of messages. – Corruption can be detected!
  • 11. Choice of Polynomial • So, let‘s choose a CRC… • Where to start? • For example: – http://www.ece.cmu.edu/~koopman/roses/ds n04/koopman04_crc_poly_embedded.pdf – Nice work!
  • 12. Task • Task: – Find the probability that a corrupted message will be assumed as corrupt! – We will use „Monte Carlo Method“ • http://en.wikipedia.org/wiki/Monte_Carlo_method • Simple things need complex words! • Do random guessing and take this as the truth • Simple, quite effective
  • 13. • Part 1 completed! • Part 2 will present the application!