Hello Lannan,
As far as I could understand, you want to do the following operations:
(i) Generate bytes -> (ii) Modulate -> (iii) Transmit -> (iv) Receive -> (v) Demodulate -> (vi) Recover bytes
and then you want to align the byte sequences from steps (i) and (vi).
Am I correct?
What hardware (model) are you using to transmit/receive?
I've been trying to solve a similar issue lately and I am convinced that my signals are not aligned because of 3 main reasons: wave propagation time, GNU Radio processing time (latency) and carrier frequency offset (CFO).
What I've been doing is: the two first issues are minimized by applying a cross-correlation operator (not necessarily in GNU Radio; you can post-process using another software if you want) to the transmitted and received
base-band
signals. The peak value allows you to find the lag between them.
The third problem (CFO) comes from an unalignment between the transmitting and receiving units (I use HackRF One) and can be solved with a mixer at the receiver level tuned with the frequency offset value.
Best regards,
Artur