Проще будет, если сервер не писать на C++, а взять, например, Apache. Клиент же не составит проблемы написать для такого сервера, поскольку клиентская-то реализация HTTP есть в вашей ОС.
Реализовать HTTP на TCP, равно как и собственный клиент-сервер на TCP - это не так-то просто, если от него требуется надежность, ведь в интернете регулярны обрывы, да и экстренные завершения ОС или Вашей программы - случаются. Нужно изучить TCP.