RFC852

From RFC-Wiki
 Request for Comments: 852
                The ARPANET Short Blocking Feature
                              RFC 852
                          Andrew G. Malis
                   ARPANET Mail: malis@bbn-unix
                   Bolt Beranek and Newman Inc.
                          50 Moulton St.
                       Cambridge, MA  02238
                            April 1983
 This RFC specifies the ARPANET Short Blocking Feature, which will
 allow ARPANET hosts to optionally shorten the IMP's host blocking
 timer.  This Feature is a replacement of the ARPANET non-blocking
 host   interface,  which  was  never  implemented,  and  will  be
 available to hosts using either the 1822  or  1822L  Host  Access
 Protocol.   The  RFC is also being presented as a solicitation of
 comments on the Short  Blocking  Feature,  especially  from  host
 network software implementers and maintainers.
 ARPANET Short Blocking Feature                         April 1983
 RFC 852
 1  INTRODUCTION
 This RFC specifies the ARPANET Short Blocking Feature, which will
 allow a host to shorten the amount of time that it may be blocked
 by its IMP after it presents a message to the network (currently,
 the  IMP  can  block  further input from a host for up to fifteen
 seconds).
 The Feature is an addition to the ARPANET  1822  and  1822L  Host
 Access  Protocols,  and  replaces the non-blocking host interface
 described in section 3.7 of BBN Report 1822 [1], which was  never
 implemented.   This  Feature  will  be available to hosts on C/30
 IMPs only.  This will not present a problem on the ARPANET, which
 only  has  C/30 IMPs, but hosts on non-C/30 IMPs in networks that
 mix C/30 and non-C/30 IMPs will not be  able  to  use  the  Short
 Blocking Feature.
 The RFC's terminology is consistent  with  that  used  in  Report
 1822, and any new terms will be defined when they are first used.
 Familiarity  with  Report  1822  (section  3  in  particular)  is
 assumed.
 This RFC was once part of RFC 802, which is now obsolete and  has
 been  replaced  by  the  combination of this RFC and RFC 851, The
 ARPANET 1822L Host  Access  Protocol  [2].   The  Short  Blocking
 Feature  will  be  available to all hosts on C/30 IMPs, no matter
                               - 1 -
 ARPANET Short Blocking Feature                         April 1983
 RFC 852
 which (1822 or 1822L) host access  protocol  they  are  using  to
 communicate with the IMP.
                               - 2 -
 ARPANET Short Blocking Feature                         April 1983
 RFC 852
 2  THE ARPANET SHORT BLOCKING FEATURE
 The Short Blocking Feature of the 1822 and 1822L protocols allows
 a  host to present messages to the IMP without causing the IMP to
 not accept further messages from the host  for  long  amounts  of
 time  (up  to fifteen seconds).  It is a replacement for the non-
 blocking host interface described in section 3.7 of Report  1822,
 and that description should be ignored.
 2.1  Host Blocking
 Usually, when a source host submits a message to an IMP, the  IMP
 immediately processes that message and sends it on its way to its
 destination host.  Sometimes, however, the IMP  is  not  able  to
 process the message immediately.  Processing a message requires a
 significant number of resources, and when the network is  heavily
 loaded,  there can sometimes be a long delay before the necessary
 resources become available.  In such cases, the IMP must  make  a
 decision  as  to  what to do while it is attempting to gather the
 resources.
 One possibility is for the IMP to stop  accepting  messages  from
 the  source  host  until  it has gathered the resources needed to
 process the message just submitted.  This strategy  is  known  as
 blocking  the  host,  and is basically the strategy that has been
                               - 3 -
 ARPANET Short Blocking Feature                         April 1983
 RFC 852
 used in the ARPANET up to the present.  When  a  host  submits  a
 message  to  an  IMP, all further transmissions from that host to
 that IMP are blocked until the message can be processed.
 It is important to note, however, that not all  messages  require
 the  same  set  of resources in order to be processed by the IMP.
 The particular set of resources needed will depend on the message
 type,  the  message  length,  and  the  destination  host  of the
 message.  Therefore, although it might take a long time to gather
 the  resources  needed  to process a particular message, it might
 take only a short time to gather the resources needed to  process
 some other message.  This fact exposes a significant disadvantage
 in the strategy of blocking the host.  A host  which  is  blocked
 may  have many other messages to submit which, if only they could
 be submitted, could be processed immediately.  It is "unfair" for
 the  IMP to refuse to accept these messages until it has gathered
 the resources for some  other,  unrelated  message.   Why  should
 messages for which the IMP has plenty of resources be delayed for
 an arbitrarily long amount of time just because the IMP lacks the
 resources needed for some other message?
 A simple way to alleviate the problem would be to place  a  limit
 on  the  amount of time during which a host can be blocked.  This
 amount  of  time  should  be  long  enough  so  that,   in   most
 circumstances,  the  IMP  will  be  able  to gather the resources
                               - 4 -
 ARPANET Short Blocking Feature                         April 1983
 RFC 852
 needed to process the message within the given time period.   If,
 however, the resources cannot be gathered in this period of time,
 the IMP will flush the message, sending a  reply  to  the  source
 host  indicating that the message was rejected and specifying the
 reason that it could not be  processed.   However,  the  resource
 gathering process would continue.  The intention is that the host
 resubmit the message  in  a  short  time,  when,  hopefully,  the
 resource  gathering  process  has concluded successfully.  In the
 meantime, the host  can  submit  other  messages,  which  may  be
 processed   sooner.    This   strategy  does  not  eliminate  the
 phenomenon of host blocking, but  only  limits  the  time  during
 which  a host is blocked.  This shorter time limit will always be
 less than or equal to two seconds.
 Note, however, that there  is  a  disadvantage  to  having  short
 blocking  times.  Let us assume that the IMP accepts a message if
 it has all the resources  needed  to  process  it.   The  ARPANET
 provides a sequential delivery service, whereby messages with the
 same priority, source host, and destination host are delivered to
 the  destination host in the same order as they are accepted from
 the source host.  With short blocking times, however,  the  order
 in  which  the IMP accepts messages from the source host need not
 be the same as the order in  which  the  source  host  originally
 submitted  the messages.  Since the two data streams (one in each
                               - 5 -
 ARPANET Short Blocking Feature                         April 1983
 RFC 852
 direction) between the host and the IMP are not synchronized, the
 host  may  not  receive the reply to a rejected message before it
 submits subsequent messages for the same destination host.  If  a
 subsequent  message  is accepted, the order of acceptance differs
 from the order of original submission, and the ARPANET  will  not
 provide  the  same type of sequential delivery that it has in the
 past.   If  sequential  delivery  by  the  subnet  is  a   strict
 requirement,  the Short Blocking Feature should not be used.  For
 messages without this requirement, however,  the  Short  Blocking
 Feature can be used.
 Up to now, type 0 (Regular)  messages  have  only  had  sub-types
 available  to  request  the  standard  blocking  timeout, fifteen
 seconds.  The Short Blocking Feature  makes  available  new  sub-
 types  that  allow  the  host  to  request  messages  to be short
 blocking, i.e. only cause the host to be blocked for two  seconds
 at most if the message cannot be immediately processed.
 Type 0 messages now have the following subtypes:
 0:  Standard: This subtype instructs the  IMP  to  use  its  full
     message  and  error  control  facilities.   The  host  may be
     blocked up to fifteen seconds during the message submission.
 1:  Standard, Short Blocking: The IMP attempts to  use  the  same
     facilities  as  for  subtype 0, but will block the host for a
                               - 6 -
 ARPANET Short Blocking Feature                         April 1983
 RFC 852
     maximum of two seconds.
 3:  Uncontrolled Packet:  The  IMP  performs  no  message-control
     functions,  and the packet is not guaranteed to be delivered.
     The host may be blocked up  to  fifteen  seconds  during  the
     packet submission, although any such blockage is unlikely.
 4:  Uncontrolled, Short  Blocking:  The  IMP  treats  the  packet
     similarly  to  subtype  3, but will only block the host for a
     maximum of two seconds.  Again, actual blockage is unlikely.
 2.2  Reasons for Host Blockage
 There are a number of reasons why a message could  cause  a  long
 blockage  in  the  IMP,  which would result in the rejection of a
 short (or even non-short) blocking message.  The IMP signals this
 rejection of a message by using the Incomplete Transmission (Type
 9) message, using the sub-type field to indicate why the  message
 was  rejected.   The  already-existing  sub-types  for the type 9
 message are:
 0:  The destination host  did  not  accept  the  message  quickly
     enough.
 1:  The message was too long.
                               - 7 -
 ARPANET Short Blocking Feature                         April 1983
 RFC 852
 2:  The host took more  than  fifteen  seconds  to  transmit  the
     message  to the IMP.  This time is measured from the last bit
     of the leader through the last bit of the message.
 3:  The message was lost in the network due  to  IMP  or  circuit
     failures.
 4:  The IMP could not accept the entire  message  within  fifteen
     seconds  because  of unavailable resources.  This sub-type is
     only used in response to non-short blocking messages.   If  a
     short  blocking  message  timed  out, it will be responded to
     with one of sub-types 6-10.
 5:  Source IMP  I/O  failure  occurred  during  receipt  of  this
     message.
 The new sub-types that apply to the Short Blocking Feature are:
 6:  Connection set-up delay: Although the IMP presents  a  simple
     message-at-a-time  interface  to  the  host,  it  provides an
     internal  connection-oriented  (virtual   circuit)   service,
     except in the case of uncontrolled packets.  Two messages are
     considered to be on the same connection if they have the same
     source  host  (i.e.,  they are submitted to the same IMP over
     the same host interface), the same  priority,  and  the  same
     destination  host  name  or  address.   The  subnet maintains
                               - 8 -
 ARPANET Short Blocking Feature                         April 1983
 RFC 852
     internal  connection   set-up   and   tear-down   procedures.
     Connections  are  set  up  as  needed, and are torn down only
     after  a  period  of   inactivity.    Occasionally,   network
     congestion or resource shortage will cause a lengthy delay in
     connection set-up.  During this period, no messages for  that
     connection  can  be  accepted,  but  other  messages  can  be
     accepted.
 7:  End-to-end flow  control:  For  every  message  that  a  host
     submits  to  an  IMP  (except  uncontrolled  packets) the IMP
     eventually  returns  a  reply  to  the  host  indicating  the
     disposition  of  the  message.   Between  the  time  that the
     message is submitted and  the  time  the  host  receives  the
     reply,  the  message  is  said to be outstanding. The ARPANET
     allows  only  eight  outstanding  messages   on   any   given
     connection.   If  there  are  eight outstanding messages on a
     given connection, and a ninth is  submitted,  it  cannot  the
     accepted.  If  a message is refused because its connection is
     blocked due to flow control, messages  on  other  connections
     can still be accepted.
     End-to-end flow control is the  most  common  cause  of  host
     blocking in the ARPANET at present.
                               - 9 -
 ARPANET Short Blocking Feature                         April 1983
 RFC 852
 8:  Destination IMP buffer space shortage: If the host submits  a
     message  of  more  than  1008  bits  (exclusive of the 96-bit
     leader), buffer space at the destination IMP must be reserved
     before  the  message  can  be  accepted.  Buffer space at the
     destination IMP is always reserved on a per-connection basis.
     If  the  destination  IMP  is  heavily loaded, there may be a
     lengthy wait for the buffer space;  this  is  another  common
     cause  of  blocking  in  the  present  ARPANET.  Messages are
     rejected  for  this  reason  based  on   their   length   and
     connection;  messages  of  1008 or fewer bits or messages for
     other connections may still be acceptable.
 9:  Congestion control: A message may be refused for  reasons  of
     congestion  control if the path via the intermediate IMPs and
     lines to the destination IMP is too heavily loaded to  handle
     additional  traffic.   Messages  to other destinations may be
     acceptable, however.
 10: Local resource shortage: Occasionally, the source IMP  itself
     is  short  of  buffer  space,  table  entries,  or some other
     resource that it needs to accept a message.  Unlike the other
     reasons  for  message  rejection, this resource shortage will
     affect all messages equally, except for uncontrolled packets.
     The message's size or connection is not relevant.
                              - 10 -
 ARPANET Short Blocking Feature                         April 1983
 RFC 852
 The Short Blocking Feature is available  to  all  hosts  on  C/30
 IMPs,  whether they are using the 1822 or 1822L protocol, through
 the use of Type 0, sub-type 1 and 4 messages.  A host using these
 sub-types  should  be  prepared  to  correctly  handle the Type 9
 (Incomplete Transmission) messages from the IMP.
                              - 11 -
 ARPANET Short Blocking Feature                         April 1983
 RFC 852
 3  REFERENCES
 [1]  Specifications for the Interconnection of a Host and an IMP,
      BBN Report 1822, December 1981 Revision.
 [2]  A. Malis, The ARPANET 1822L Host  Access  Protocol,  Request
      for Comments 851, April 1983.
                              - 12 -