Es geht um die Sicherstellung, daß alle Beteiligten, auch wenn einer davon irgendwie ins Schleudern gekommen ist, zumindest bei der nächsten Message sicher sein kann, wo sie anfängt und wo sie aufhört. Das ist ja bei binären Daten auf einer UART nicht selbstverständlich. Der Header bei einer Message ist ein bißchen sowas wie der I2C Start, wo jeder weiß, jetzt kommt wieder eine Device-Adresse.
Die "Checksum" ist eine Kontrollzahl, die der Sender erzeugt und der Empfänger nachrechnet. (CRC, BCC, etc.) Paßt das nicht, schmeißt der Empfänger die gesamte Message weg und verarbeitet sie nicht.