So the TCP checksum includes all of the data, so the checksum needs to be calculated prior to the header? We need to have a SAF or something the calculates the checksum for just the data, and then we can add this checksum to the header checksum to calculate the total checksum. For now we can just calculate the header checksum and have the data checksum be 0.