>>345
案1がいいと思われ。
トークンといっても、リクエストラインとヘッダとボディを読む作法は
エンコードなどからして違うのでIOやトークンを抽象した機能単位は
あまりうまくいかない気が。例えばリクエストラインは改行が CR LF では
ない場合がある(HTTP 0.9)し、HTTPSではヘッダやボディは平文ではない。
手短に説明できることではないから実際にHTTPサーバを書こうとしているなら、
Java の Tomcat とか Ruby の WEBrick とかのソースを読むことを勧める。