Ни в передоваемую строку же засовывать метку и потом искать ее усллвием if и разделять поток выполнения?..
Именно так. Это и есть описание протокола обмена данными: как разделить передаваемый поток байт на отдельные "команды", где в них будут "инструкции" (идентификатор выполняемой команды), а где "аргументы", как выглядт отклики на команды, и т.п.
Собственно, есть готовые решения, типа protobuf. Они позволяют описать "пакеты данных", а разграничение, идентификацию и т.п. берёт на себя фреймворк. Или можно использовать в качестве транспорта какой-то готовый протокол, который может передавать структурированную информацию. Например, HTTP.