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

📄 rfc1756.txt

📁 RFC 的详细文档!
💻 TXT
📖 第 1 页 / 共 2 页
字号:






Network Working Group                                          T. Rinne
Request for Comments: 1756                                          HUT
Category: Experimental                                     January 1995


                  REMOTE WRITE PROTOCOL - VERSION 1.0

Status of this Memo

   This memo defines an Experimental Protocol for the Internet
   community.  This memo does not specify an Internet standard of any
   kind.  Discussion and suggestions for improvement are requested.
   Distribution of this memo is unlimited.

1. Background

   It is often convenient to use electronic communication somewhat
   lighter than electronic mail.  Sometimes even the use of the talk(1)
   *) program seems like overkill.  We like to offer to user something
   like UNIX **) command write(1) ***) except that it can also pass
   messages through the network instead of the single host.

   There have been few programs offering this kind of service, but they
   have either based on SUN-RPC protocol or used a strictly undocumented
   protocol.

   This document describes a simple Remote Write Protocol (RWP) that
   should have been documented at least 10 years ago.  But late is
   better than never.  Version number of the RWP protocol in this
   document is 1.0.

2. Overview

   RWP is a simple protocol that can be used to relay short messages
   through the network to other users.  RWP looks pretty much like
   Simple Mail Transfer Protocol (SMTP) ****) though it is a bit more
   complicated due to the interactive nature of the RWP session.

   The idea behind the RWP session is that client program that is
   relaying message to the host in which the target user is logged in
   opens the tcp or udp connection to the server program running in the
   target machine  Then the client gives the sender's and recipient's
   identification (usually login ids), actual message body and tells the
   server to deliver a message to the user.  On tcp-connection server
   returns a status from each action taken.  On udp-connection no
   responses are sent.  RWP sessions through udp are implemented to
   support message broadcasting.




Rinne                                                           [Page 1]

RFC 1756                 Remote Write Protocol              January 1995


   Message delivering methods are not defined within this document, but
   the basic method could be a simple write to users terminal.  This is
   basically what UNIX command write(1) does.  Depending on server
   implementation, the delivery method could be configurable personally
   by each user.

3. Description

   Server program answers to each command submitted by a response.  All
   responses have two parts: three number unique response code and a
   short textual explanation of the response.  Also whenever the server
   is ready to accept new commands a notification is submitted to the
   client.

   There are three kinds of commands in RWP.  The first group is for
   querying a status of the server.  The second group is actual message
   handling commands and the last set of commands are for RWP session
   control.

   When the server is ready to receive a command from the client, it
   sends a message code 100 to the client.  This message is for example
   as follows:

                    100 Ready.

    Server commands are as follows:

    Status Query

        HELP    Gives a short help message that contains legal
                RWP commands.  Help lines have code 510.  Example RWP
                implementation *****) gives a following response to
                HELP command:

                    510 Valid commands are:
                    510     BYE,    DATA,   HELP,   HELO,
                    510     RSET,   SEND,   PROT,   QUIT,
                    510     VRFY,   VER
                    510     FROM senderlogin
                    510     FHST senderhost
                    510     TO   recipentlogin [tty]
                    510     FWDS current_hop_count

        HELO    Says hello to the server.  Server response to HELO
                command has code 500.  For example:

                    500 Hello remote.host.  This is local.host speaking.




Rinne                                                           [Page 2]

RFC 1756                 Remote Write Protocol              January 1995


        PROT    Asks the RWP protocol version from the server.
                Response code to PROT command is 502.  Protocol
                version described in this document is RWP 1.0 and the
                response is as follows:

                    502 RWP version 1.0.

        VRFY    After the recipient of the message is set by to command
                described later, the possibility of message delivery
                can be queried by VRFY command.  If message can be
                delivered the response code is 108.  If message is
                about to be forwarded the response code is 110 and
                message is either form:

                    110 Recipient ok to forward.

                or if the server can tell the destination of the
                forwarding:

                    110 Recipient ok to forward <user@host.domain>.

                Other possible response codes are 669, 670, 671, 674
                and 677 and they all indicate that message delivery is
                by one way or another currently impossible.
                Description of the codes is later in this document.

                After the SEND command the server may also give
                autoreply from the remote user before the actual
                response code.  Autoreply lines are ones of code 300.

        VER     Asks the version of the server program.  Response code
                to VER command is 501 and the textual part of the
                response is the name and the version number of the RWP
                server, for example:

                    501 Rwrited version 1.0.

    Message Handling:

        FROM senderlogin
                Tells the server the identification information of the
                sender of the message.  Usually this id information is
                user's login id.  Response code to successful FROM
                command is 105, for example:

                    105 Sender ok.





Rinne                                                           [Page 3]

RFC 1756                 Remote Write Protocol              January 1995


        TO recipentlogin [tty]
                Tells the server the identification information of the
                intended recipient of the message.  Usually this id
                information is user's login id.  If tty is submitted,
                the message is delivered to that tty.  If tty is
                submitted between brackets '[]' the tty given is
                treated as a hint only.  Response code to successful
                TO command is 106.

        FHST original.host [forwarder1.host forwarder2.host ...]
                Tells the server the host name that the message
                originates to and the path of the hosts that has
                forwarded the message.  The host name of the machine
                that is currently submitting the message to the server
                should not be in the path list.

                This information is relevant if message is forwarded
                and it is not originally coming from the host that is
                forwarding it.  Response code to successful FHST
                command is 111.

        DATA    Tells the server to start receive the body of the
                message.  Response code to DATA command is 200, for
                example:

                200 Enter message.  Single dot '.' on line terminates.

                After response 200 the message lines are submitted to
                the server one after another.  Message is terminated
                by the line that contains a single dot '.'.  The
                termination of the message is acknowledged by the
                server with the response code 107.  Server does not
                notify client about receiving the single message
                lines.  If empty message is submitted (i.e. single dot
                is on the first line) the response code is 672 and
                DATA command only cancels possible previous DATA
                command.  Because of this all dots or at least dots
                that are standing alone in the line have to be quoted.

        SEND    Sends the message.  If commands FROM, TO and DATA are
                successfully given before SEND command, the message is
                delivered to the target user.  If delivery is
                successful the response code is 103.  If message is
                not delivered directly to the target user but instead
                forwarded to another host the response code is 104.
                Response codes 669, 670 and 671, 677 indicate an error
                on message delivery and codes 673, 674, 675 indicate
                that either command FROM, TO or DATA has not been



Rinne                                                           [Page 4]

RFC 1756                 Remote Write Protocol              January 1995


                successfully given before SEND command.  After the
                SEND command the server may also give autoreply from
                the remote user before the actual response code.
                Autoreply lines are ones of code 300.

        FWDS n  Tells the server that message has been forwarded n
                times.  If the server forwards the message to the
                another server, it increments the counter and tells
                the remote server the current count of forwards.
                Response code to the FWDS command is 110 if n is less
                than the server specific forward limit.  If this limit
                is exceeded the response code is 676.  If the response
                code is 676 the client can either quit the session and
                fail the message or it can give the message to the
                server despite the fact that the forward limit is
                exceeded.  If the message is given when forward limit
                is exceeded, the server tries to deliver it, but does
                not forward it to another server.  If forward count is
                given as -1, the message is considered as a autoreply
                and never forwarded.

    Session Control:

        RSET    Resets the RWP session.  FROM, TO and DATA -commands
                that are given before are canceled and they have to
                be given again before SEND command can be used.  Also
                possible FWDS and FHST commands are canceled.

        BYE     Terminates the RWP session.  Server gives a response
                code 101 and closes the connection.

        QUIT    Is the synonym to bye, but it's a lot more impolite.
                Response code is however 101 as in bye.

    Server specific command:

        QUOTE command

                Relay a command to the server.  If the QUOTE command
                is successfully completed response code 112 is
                returned.  If QUOTE command is failed the response
                code is 678.  If RWP server doesn't recognize the
                given QUOTE command the response code is 679.

                Currently reserved QUOTE commands are AGENT, CHARSET,
                IDENT, KEY and KEYID.





Rinne                                                           [Page 5]

RFC 1756                 Remote Write Protocol              January 1995


4. Response Codes

   Here are all legal response codes of RWP server followed by short
   textual explanation.  Only the numeral codes are important and texts
   can contain practically anything, however in response code 110 there
   is possibly useful information between '<' and '>' characters.  No
   characters '<' or '>' should be present in other responses.  Also
   response 502 has possibly interesting information about the RWP
   protocol version the server supports.

    100 Ready.

        The RWP server is ready to accept next command.

    101 Goodbye.

        The RWP server is closing connection.

    103 Message delivered.

        The SEND command is successfully completed and the message is
        delivered directly to its destination.

    104 Message forwarded.

⌨️ 快捷键说明

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