Для сокетов нет разницы что данные находятся внутри пакета. Это называется полезной нагрузкой с точки зрения организации сети и ее структуры, формат имеет значение только для приложений, которые ее отправляют/получают. Таким образом, ваш вопрос «отправка двоичных данных через сокеты» преобразуется в «как отправлять данные через сокеты», на которые ответили несколько раз в SO, и по всему Интернету доступно множество обучающих программ. Также вы не указали, какую платформу вы используете, поэтому запустите here для Linux и here для Windows или просто для Google программирование сокетов.