1分置きに2chのwebprog板のすべてのレスのログを定期的にとってくるプログラムがあるとします。

これを何も考えないで実装した場合、
毎回BODYリクエストで全てのログをとってくることになりますよね?
これだと転送量に負荷がかかるので、
次の段階として、HEADリクエストでContent-Lengthをとって、
更新が認められたらBODYリクエストでとってくることになりますよね?

ここで1つ目の質問なのですが、
更新があった場合HEADリクエスト→BODYリクエストなので、
ヘッダーは2回返ってくることになり、
その分BODYリクエストのみに比べて転送量が増えてしまいます。
HEADリクエスト送った後、レスポンスを返してもらって、
そこで通信を切断はしないで、待っててもらい、
必要に応じて残りのBODY部分も送ってくれるようにリクエストを送る。
みたいなことは可能でしょうか?

さらなる最適化として、HEADリクエストを送ってBODYリクエストを送るわけですが、
この時前回のLengthを記録してれば、そこから差分のBODYを返してもらうことも可能ですが、
これは当然アプリケーション側が対応してないと不可能ですよね?