создайте свой протокол. к примеру
сообщение со стороны клиента и сервера должно быть структурированым
key|length|data|crc
key - хеш ключ, на основании которого вы валидируете что клиент действительно ваш. длинна всегда к примеру 15 знаков
length - длинна блока дата, всегда 10 знаков
data - блок с данными, длинна равна значению length
crc - контрольная сумма блока data, для проверки целостности пакета, всегда 4 знака
при таком подходе Вы всегда знаете какой длинны Вам придут данные и что собственно ожидается
вобщем socket это весело :)