Принципиально никак. TCP не гарантирует ничего, кроме неискажёного
потока (последовательности) байт. Даже границы между "блоками" в
принципе не только не гарантируются, но даже не обещаются. Для
вашей задачи UDP подходит сильно лучше, но всё равно не на 100% -
задержка пакетов может быть любой. Так что синхронизироваться нужно
с астрономическим временем, а в передаваемых блоках - передавать
это самое астрономическое время.