Здравствуйте, Tessi, Вы писали:
T>А с точки зрения http keep-alive что от клиента требуется?
С точки зрения http keep-alive лучшее, что может сделать клиент (при таком уровне знаний его автора, не сочти за грубость) — это не пытаться реализовать HTTP на сокетах, а использовать готовую библиотеку (выбор которой зависит от языка) — а она уж позаботится о сокетах и прочих низкоуровневых деталях.
Кроме того, и это важно, надо понимать, что в высокоуровневом интерфейсе протокола HTTP нет такого понятия, как HTTP соединение. Клиент волен использовать одно и то же соединение, или открывать новое на каждый запрос, или открыть несколько и использовать их для каждого следующего запроса по кругу — это все детали реализации, высокоуровневый код не должен от них зависеть.
Модель HTTP заключается в том, что послали запрос/получили ответ. Как оно там внутри на сокеты ложится, дело десятое.