Frame check sequence






Structure of an Ethernet packet, including the FCS that terminates the Ethernet frame.[1]


A frame check sequence (FCS) refers to an error-detecting code added to a frame in a communications protocol. Frames are used to send payload data from a source to a destination.




Contents






  • 1 Purpose


  • 2 Implementation


  • 3 Types


  • 4 See also


  • 5 References





Purpose


All frames and the bits, bytes, and fields contained within them, are susceptible to errors from a variety of sources. The FCS field contains a number that is calculated by the source node based on the data in the frame. This number is added to the end of a frame that is sent. When the destination node receives the frame the FCS number is recalculated and compared with the FCS number included in the frame. If the two numbers are different, an error is assumed and the frame is discarded.


The FCS provides error detection only. Error recovery must be performed through separate means. Ethernet, for example, specifies that a damaged frame should be discarded and does not specify any action to cause the frame to be retransmitted. Other protocols, notably the Transmission Control Protocol (TCP), can notice the data loss and initiate retransmission and error recovery.[2]



Implementation




detailed structure of an Ethernet Frame


The FCS is often transmitted in such a way that the receiver can compute a running sum over the entire frame, together with the trailing FCS, expecting to see a fixed result (such as zero) when it is correct. For Ethernet and other IEEE 802 protocols, this fixed result, also known as the magic number or CRC32 residue, is 0xC704DD7B.[3] When transmitted and used in this way, the FCS generally appears immediately before the frame-ending delimiter.



Types


By far the most popular FCS algorithm is a cyclic redundancy check (CRC), used in Ethernet and other IEEE 802 protocols with 32 bits, in X.25 with 16 or 32 bits, in HDLC with 16 or 32 bits, in Frame Relay with 16 bits,[4] in Point-to-Point Protocol (PPP) with 16 or 32 bits, and in other data link layer protocols.


Internet protocol suite protocols tend to use checksums.[5]



See also




  • Ethernet frame § Preamble and start frame delimiter

  • Syncword



References





  1. ^ "3.1.1 Packet format", 802.3-2012 - IEEE Standard for Ethernet (PDF), IEEE Standards Association, 2012-12-28, retrieved 2015-07-05.mw-parser-output cite.citation{font-style:inherit}.mw-parser-output q{quotes:"""""""'""'"}.mw-parser-output code.cs1-code{color:inherit;background:inherit;border:inherit;padding:inherit}.mw-parser-output .cs1-lock-free a{background:url("//upload.wikimedia.org/wikipedia/commons/thumb/6/65/Lock-green.svg/9px-Lock-green.svg.png")no-repeat;background-position:right .1em center}.mw-parser-output .cs1-lock-limited a,.mw-parser-output .cs1-lock-registration a{background:url("//upload.wikimedia.org/wikipedia/commons/thumb/d/d6/Lock-gray-alt-2.svg/9px-Lock-gray-alt-2.svg.png")no-repeat;background-position:right .1em center}.mw-parser-output .cs1-lock-subscription a{background:url("//upload.wikimedia.org/wikipedia/commons/thumb/a/aa/Lock-red-alt-2.svg/9px-Lock-red-alt-2.svg.png")no-repeat;background-position:right .1em center}.mw-parser-output .cs1-subscription,.mw-parser-output .cs1-registration{color:#555}.mw-parser-output .cs1-subscription span,.mw-parser-output .cs1-registration span{border-bottom:1px dotted;cursor:help}.mw-parser-output .cs1-hidden-error{display:none;font-size:100%}.mw-parser-output .cs1-visible-error{font-size:100%}.mw-parser-output .cs1-subscription,.mw-parser-output .cs1-registration,.mw-parser-output .cs1-format{font-size:95%}.mw-parser-output .cs1-kern-left,.mw-parser-output .cs1-kern-wl-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right,.mw-parser-output .cs1-kern-wl-right{padding-right:0.2em}


  2. ^ Cf: Wendell ODOM, Ccie #1624, Cisco Official Cert Guide, Book 1, Chapter 3 : Fundamentals of LANs, Page 74


  3. ^ Nanditha Jayarajan (2007-04-20). "Configurable LocalLink CRC Reference Design" (PDF). Xilinx. p. 14. Retrieved 2015-07-05.


  4. ^ "Frame Relay Glossary". Cisco Systems. 2009-04-30. Retrieved 2015-07-05.


  5. ^ Computing the Internet Checksum. doi:10.17487/RFC1071. RFC 1071. https://tools.ietf.org/html/rfc1071. 









Popular posts from this blog

Florida Star v. B. J. F.

Error while running script in elastic search , gateway timeout

Adding quotations to stringified JSON object values