⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc663.txt

📁 RFC 相关的技术文档
💻 TXT
📖 第 1 页 / 共 3 页
字号:
used  for   closing   connections   which   have   sufferred   anirrecoverable loss of messages.(Comments: A connection may be closed in any one of the followingthree ways:      1. A connection which has not yet been opened  succesfullymay  be  closed  by  the  CLS command.  All connectionsinvolving type A hosts must be  closed  using  the  CLScommand.      2. Connections between type B hosts may  be  closed  usingCLS2  command.   A connection is considered closed onlyif matching CLS2 commands have been  exchanged  between                   - 13 -the sender and the receiver.      3. Those connections  between  type  B  hosts,  that  havesufferred  an  irrecoverable  loss of messages, must beclosed by the ECLS command.)3.2.6 RSS - REQUEST STATUS FROM SENDER____8_______8______I      I        II RSS  I LINK   II_______I_________I_A sending host may issue an RSS command to  find  out  about  thestatus  of transmission on a particular connection or the controllink.3.2.7  RSR - REQUEST STATUS FROM RECEIVER____8_________8_____I       I        II RSR   I LINK   |I________I_________I_A receiver can issue an RSR command to find out about the  statusof  transmission  on a particular connection or the control link.3.2.8 SFR - STATUS FROM RECEIVER____8_________8_________8_________8____I        I        I        I       II SFR    I  LINK  I  LRN   I MSN   II_________I_________I_________I________I_A receiving host may issue this  command  to  inform  the  senderabout  the  state of a particular connection or the control link.3.2.9 SFS - STATUS FROM SENDER                   - 14 -____8_________8_________8_________8____I        I        I        I       II SFS    I  LINK  I  LRN   I MSN   II_________I_________I_________I________I_A sending host may issue this  command  to  inform  the  receiverabout  the  state of a particular connection or the control link.3.3  THE PROTOCOL3.3.1 PART ONEAll type A hosts must use zero MSN and LRN values on the messagessent out by them.  When communicating with a host of  type  A,  atype B host must simulate the behaviour of type A host.(Comments:   Notice  that  this  simulation is not complicated atall.  All that  is  required  is  that   hosts  that  adopt  thisprotocol  must  not use it when communicating with the hosts thathave not adopted it.)3.3.2 PART TWOThis part of the protocol is stated as a set of rules which  mustbe  observed  by  all  type B hosts when communicating with othertype B hosts.3.3.2.1 RESPONSIBILITIES OF HOSTS AS SENDERS    (1). A type B sending host must use message sequence numberson all regular messages that it sends to other  type  Bhosts  as  specified  in  the definition of the messagesequence numbers (Section 3.1.3).    (2). A type B sending host must use link resynch numbers  onall  regular  messages  that  it  sends to other type Bhosts as specified in the definition  of  link  resynchnumber (Section 3.1.4).    (3). A sending host may retransmit a message if it  suspectsthat  the  message  may  have  been lost in the networkduring previous transmission.    (4). A sending host may issue an RSS command to the receiverto determine the state of transmission on any link.    (5). A sending host must use the ECLS  command  to  close  aconnection, if the connection is being closed due to an                   - 15 -irrecoverable  transmission  error.  Otherwise, it mustthe CLS2 command.3.3.2.2 RESPONSIBILITIES OF HOSTS AS RECEIVERS    (1). A receiver host will maintain LRN and  MSN  values  foreach link on which it receives messages.  Initial valueof  LRN  will be zero, and initial value of MSN will beone.   For  each  receive  link,  the  host  should  beprepared  to  receive a message with LRN and MSN valuesspecified by its tables.  When the  host  has  receivedthe  expected  message  on a given link, it will changeits table MSN value as specified in the  definition  ofMSN.    (2). On a given link, if a host receives a message  with  anLRN  value  smaller than the one in use, it will ignorethe message.    (3). If a host receives a duplicate message  (same  LRN  andMSN values), it will ignore the duplicate.    (4). A host will examine  the  MSN  values  on  all  regularmessages  that  it receives to detect loss of messages.If on any link, one or more messages are found missing,it will concern itself with only the first message lostand take the following series of action:       1. Increase its own LRN value for this  link  by          one.       2. Send an LMR command to the sending host  with          LRN  field set to the new value and MSN field          set to  the  sequence  number  of  the  first          message lost.       3. Realizing that LMR  command  will  cause  the          allocation  to be reset to zero, it will send          more allocation. This is  not  applicable  to          the control links.However,  if  a  host  does  not  want  to initiate therecovery procedures, it may simply close the connectionby an ECLS command.    (5). A receiver host may  issue the RSR command to determinethe state of transmission on any link.    (6). If a connection is being closed due to an irrecoverableerror, a receiving host  must  use  the  ECLS  command.Otherwise it must use the CLS2 command.                   - 16 -3.3.2.3  SENDING HOST'S RESPONSE TO CONTROL MESSAGES    (1). RSR command: the sender must transmit a SFS command  tothe receiver for the link involved.    (2). ECLS command: The sender must cease transmission, if ithas  not  already done so, and issue an ECLS command ifit has  not  already  issues  either  a  ECLS  or  CLS2command.    (3) CLS2 command: The sender must compare the  LRN  and  MSNvalues  of  the CLS2 command with its own values of theLRN and MSN for the connection involved.  If  an  erroris  indicated,  it may either close the connection withan ECLS, or initiate recovery action  as  specified  inthe section 3.3.2.1.    (4). LMR command for  a  connection  (i.e.,  not  a  controllink):  The  sender may follow any one of the followingthree courses of action:       1. Close the connection with an ECLS command.       2. Set the allocations for the link involved  to          zero,  set  LRN  to that specified in the LMR          command, and  restart  communication  at  the          point of break.       3. Set the allocations for the link involved  to          zero,  set  the  LRN to that specified in the          LMR command, and send an LMS command  to  the          receiver  host informing him that one or more          of   the   lost   messages   can    not    be          retransmitted.  After sending an LMS command,          a  sending  host  must  not transmit any more          messages  on  the  link  involved  until  and          unless  it  receives  an LMA command from the          receiver host.(Comments:  As  we  have  mentioned  before  (Section  2.3),  thedecision  regarding which course of action to follow depends upona number of factors.  For example, if a host has implemented onlythe detection of lost messages aspect of  our  protocol  (and  norecovery),  then  it  will  chose the first option of closing theconnection.)    (5). LMR for a control link: The sender may take one of  thefollowing two actions:       1. Set the LRN to  that  specified  in  the  LMR          command  and  begin  retransmission  of  lost          messages       2. Set the LRN to  that  specified  by  the  LMR          command,  and  insert  a Reset command at the          break point.                   - 17 -(Comment:  If a sending host can not retransmit messages lost  ona   control   link,   then   this   protocol  requires  that  allcommunication between the two host be broken, and  reinitialized.We do not explicitly specify the actions that are associated withthe  exchange  of Reset commands.  These actions are specified bythe Host-to-Host protocol.)    (6). LMA command:  When  a  sending  host  receives  an  LMAcommand  matching  an  LMS command previously issued byit, it may resume transmission.(Comments: The protocol does not require the sending host to takeany specific action with regard to a SFR. However, a sending hostmay use the information contained in the  SFR  command  regardingthe  state of transmission.  From a SFR command a sender host maydetermine what messages have been received properly.  The  sendermay   use  this  information  to  cleanup  its  buffer  space  orretransmit messages that it might suspect are lost.)3.3.2.4 RECEIVING HOST'S RESPONSE TO CONTROL MESSAGES    (1). RSS command: A receiver is obligated to transmit a  SFRto the sender for the link involved.    (2). ECLS command:  The receiver must close  the  connectionby  issuing  an ECLS command if it has not already doneso.    (3). CLS2 command: A receiver must compare the LRN  and  MSNvalues  of  the  command  with  its  own values for theconnection involved.  If an error is indicated, it  mayeither  close  the  connection  by  an  ECLS command orinitiate recovery procedures as  specified  in  section3.3.2.2.    (4). LMS command: The receiver may take one of the followingtwo courses of action:     (1). Close the connection  specified  by  the  LMS          command, by issuing an ECLS command.     (2). Set the  link  involved  to  be  prepared  to          receive  messages  starting with the sequence          number MSN + COUNT, where MSN and  COUNT  are          those   specified   by   the   LMS   command.          (Comment: This action implies  that  receiver          is  willing  to  accept  the loss of messages          specified by the LMS command.)(Comments: The protocol does not require the receiver to take anyspecific action with regard to a SFS command. However a  receiver                   - 18 -host may use the information  contained in it.)4.0 CONCLUDING REMARKSThe  design  of  this  protocol  has been governed by three majorprinciples.  First, we believe that to be useful within the  ARPANetwork,  any  new  protocol must be compatible with the existingprotocols, so that each host can make the transition to  the  newprotocol at its own pace and without large investment.  Secondly,the  protocol  should  tie  into  the  recovery  mechanism of theIMP-to-Host Protocol.  The price we pay for this is the small MSNfield and a   message oriented protocol rather than a byte streamoriented protocol.  The third consideration has been flexibility.While this protocol guarantees detection of  lost  messages,  thephilosophy  behind  the recovery procedures is that a host shouldhave several options, each option providing a different degree ofsophistication.  A host can implement a recovery  procedure  thatis  most  suitable  for  its  needs  and  the capabilities of itsmachine.  Even though two hosts may  have  implemented  differentrecovery  procedures,  they  can communicate with each other in acompatible way.  In a network of independent machines  of  widelyvarying  capabilities and requirements, this seems to be the onlyway of implementing such a protocol.  Even though  this  protocolprovides  a  variety  of  options in a given error situation, thechoice of a specific action must be  consistent  with  the  basicrequirements  of  the  communication  path.  For example, partialrecovery is not  acceptable  during  file  transfers.   We  fullyexpect   the  File  Transfer  Protocol  to  specify  that  if  anirrecoverable error occurs, the file transfer must be aborted.                   - 19 -

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -