About best way to perfom checksum
Consider your BER requirements and all sources of errors.  For Ethernet UDP is less reliable since there is no feedback after all  CRC checks but TCP uses retry for error free. Similar with older comm channels  like ADLC/SDLC with ACK/NAK.
But for basic single bit error checking use odd parity and check UART for framing, parity,overrun errors. It may have a 16 byte buffer to prevent some overrun situations. Yet double bit or even bit errors are not detectable with single parity bit.
I had this problem from arc welders on a high speed channel over coax so I chose a 4bit  Hamming code (with an XOR tree) to create more data bits of redundancy and detect more bit errors per burst and added to a synchronous channel.
You could use CRC or some other method of ease of implementation or have a message counter for self checking remote Rx and request or. Compute message error rate or do a channel BER test during idle when something flagged seems incorrect. Lightning storms can be another source of bit errors for example and might not be avoidable.  So decide. How important, redundant or reliable are your messages.  Some may simply send twice to improve reliability or use an ACK NAK reply. For confirmation. It all depends on the channel specs and your needs.
For higher communication integrity HDD’s use long ECC bytes with &gt;=11 bit/ packet error detect and correction with block error codes. This process is entirely hidden from the User and the OS and SMART may detect and is the reason why HDD’s are so reliable today yet without warning fail, Whereas in the old days 35 yrs ago, Soft error rates of 1e-10 and hard error rates of  1e-12 were acceptable and gave more warning of impending death of HDD or need to relocate sectors.
So choice of error detect or error correct depends on the BER, likelihood of disturbances, SNR, importance of data and thus choice of solution for acceptable error free rates.