Hay varios planteamientos para esto.
Si la aplicación que envía el buffer sabe de antemano el tamaño, una solución típica es enviar primero el tamaño, de manera que el otro nodo sepa cuantos bytes leer.
Lo que has planteado también es viable... todo depende de que envies y recibas.
Hasta luego.