Hi all,
I'd like to get an idea of to what extent people think the ICP HIT_OBJ
feature is a good idea to continue supporting.  Briefly, HIT_OBJ means
that we include the actual object data inside an ICP HIT reply
message.  HIT_OBJ has caused problems with Squid-1.1 because ICP is
treated differently than HTTP, namely ICP does not have certain request
headers such as Cache-Control and Authorization.  See
http://squid.nlanr.net/Squid/FAQ/FAQ-10.html#ss10.12 for more details.
There are a number of factors to consider in deciding if HIT_OBJ
is a good thing.  For example:
        - ICP is sent over UDP.   UDP does NOT have flow-control
          and could cause congestion.
        - Fragmentation of UDP is considered harmful.  If a single
          fragment is lost, the entire datagram is lost.
        - Many Web objects are small.  According to yesterday's log for
          sv.cache, 50% of HTTP "200" replies are 3715 bytes or less.
          25% are 1475 bytes or less.  If we consider ALL replies,
          including "304 Not Modified", then 50% of replies are 2006
          bytes or less.  Larger ICP message are probably more likely
          to suffer fragmentation and/or packet loss, but the actual
          chances will depend on path congestion between neighbor
          caches.
        - HTTP/1.1 should eliminate concerns over TCP slow start.
          Neighbor caches should utilize numerous, persistent
          connections.
        - An ICP HIT_OBJ message will take longer to generate, if the
          object data must be read from disk.  A regular ICP HIT
          can be returned immediately.
        
Given these points, should we keep HIT_OBJ around, or rather just let
HTTP/1.1 handle it?
Duane W.
Received on Tue Nov 18 1997 - 15:43:48 MST
This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:37:39 MST