title: Checksum Explanation?
body: <p>I am currently looking at checksums but am having trouble fully understanding how they work.</p>
  
  <p>FYI, I have been looking at UDP checksums and Internet checksums.  I have learned that UDP at the sender side performs 1s complement, however I am unclear as to what 1s complement is.</p>
  
  <p>I have a rough idea of 1s complement being something to do with 'reversing' the values of all 1s and 0s, so that a 1 becomes a 0 and a 0 becomes a 1, but I do not know why this is done in the first place.</p>
  
  <p>Could somebody kindly provide some information about checksums in general?</p>
  
  <p>Thank you.</p>