📄 rfc1645.txt
字号:
Network Working Group A. GwinnRequest for Comments: 1645 Southern Methodist UniversityObsoletes: 1568 July 1994Category: Informational Simple Network Paging Protocol - Version 2Status of this Memo This memo provides information for the Internet community. This memo does not specify an Internet standard of any kind. Distribution of this memo is unlimited.Abstract This RFC suggests a simple way for delivering both alphanumeric and numeric pages (one-way) to radio paging terminals. Gateways supporting this protocol, as well as SMTP, have been in use for several months for nationwide paging and messaging. In addition, email filters and SNPP client software for Unix and Windows are available at no cost. Please contact the author for more information. Earlier versions of this specification were reviewed by IESG members and the "822 Extensions" Working Group. They preferred an alternate strategy, as discussed under "Relationship to Other IETF Work", below.1. Introduction Beepers are as much a part of computer nerdom as X-terminals (perhaps, unfortunately, more). The intent of Simple Network Paging Protocol is to provide a standard whereby pages can be delivered to individual paging terminals. The most obvious benefit is the elimination of the need for modems and phone lines to produce alphanumeric pages, and the added ease of delivery of pages to terminals in other cities or countries. Additionally, automatic page delivery should be somewhat more simplified.2. System Philosophy Radio paging is somewhat taken for granted, because of the wide availability and wide use of paging products. However, the actual delivery of the page, and the process used (especially in wider area paging) is somewhat complicated. When a user initiates a page, by dialing a number on a telephone, or entering an alphanumeric page through some input device, the page must ultimately be delivered toGwinn [Page 1]RFC 1645 SNPP - Version 2 July 1994 some paging terminal, somewhere. In most cases, this delivery is made using TAP (Telocator Alphanumeric input Protocol, also known as IXO). This protocol can be a somewhat convoluted, and complicated protocol using older style ASCII control characters and a non- standard checksumming routine to assist in validating the data. Even though TAP is widely used throughout the industry, there are plans on the table to move to a more flexible "standard" protocol referred to as TME (Telocator Message Entry Protocol). The level two enhancements to SNPP (as described below) are intended for use with this forthcoming standard. However, acknowledging the complexity and flexibility of the current protocols (or the lack thereof), the final user function is quite simple: to deliver a page from point-of-origin to someone's beeper. That is the simple, real-time function that the base protocol attempts to address. Validation of the paging information is left completely up to the paging terminal, making an SNPP gateway a direct "shim" between a paging terminal and the Internet.3. Why not just use Email and SMTP? Email, while quite reliable, is not always timely. A good example of this is deferred messaging when a gateway is down. Suppose Mary Ghoti (fish@hugecompany.org) sends a message to Zaphod Beeblebrox's beeper (5551212@pager.pagingcompany.com). Hugecompany's gateway to the Internet is down causing Mary's message to be deferred. Mary, however, is not notified of this delay because her message has not actually failed to reach its destination. Three hours later, the link is restored, and (as soon as sendmail wakes up) the message is sent. Obviously, if Mary's page concerned a meeting that was supposed to happen 2 hours ago, there will be some minor administrative details to work out between Mary and Zaphod! On the other hand, if Mary had used her SNPP client (or simply telnetted to the SNPP gateway), she would have immediately discovered the network problem. She would have decided to invoke plan "B" and call Zaphod's pager on the telephone, ringing him that way. The obvious difference here is not page delivery, but the immediate notification of a problem that affects your message. Standard email and SMTP, while quite reliable in most cases, cannot be positively guaranteed between all nodes at all times, making it less desirable for emergency or urgent paging. This inability to guarantee delivery could, whether rightly or wrongly, place the service provider in an uncomfortable position with a client who has just received his or her emergency page, six hours too late.Gwinn [Page 2]RFC 1645 SNPP - Version 2 July 1994 Another advantage of using a separate protocol for paging delivery is that it gives the sender absolute flexibility over what is sent to the pager. For instance, in the paging arena, where messages are sent to alphanumeric pagers, it is less desirable to send the recipient general header lines from a standard SMTP message. Much of the information is useless, possibly redundant, and a waste of precious RF bandwidth. Therefore, when implementing an SMTP gateway, the service provider should elect to parse out needed information (such as the sender, and possibly subject) such to maximize the utility of the transmission. Parsing generally means less control over content and format by the message originator. SNPP provides a clean, effective way to send a message, as written, to the recipient's pager. The other consideration is the relative simplicity of the SNPP protocol for manual telnet sessions versus someone trying to manually hack a mail message into a gateway.4. The SNPP Protocol The SNPP protocol is a sequence of commands and replies, and is based on the philosophy of many other Internet protocols currently in use. SNPP has several input commands (the first 4 characters of each are significant) that solicit various server responses falling into four categories: 2xx - Successful, continue 3xx - Begin DATA input (see "DATA" command) 4xx - Failed with connection terminated 5xx - Failed, but continue session The first character of every server response code is a digit indicating the category of response. The text portion of the response following the code may be altered to suit individual applications. The session interaction is actually quite simple (hence the name). The client initiates the connection with the listening server. Upon opening the connection, the server issues a "220" level message (indicating the willingness of the server to accept SNPP commands). The client passes pager ID information, and a message, then issues a "SEND" command. The server then feeds the information to the paging terminal, gathers a response, and reports the success or failure to the client.Gwinn [Page 3]RFC 1645 SNPP - Version 2 July 19944.1 Examples of SNPP Transactions The following illustrate examples of client-server communication using SNPP.4.1.1 A Typical Level One Connection Client Server Open Connection --> <-- 220 SNPP Gateway Ready PAGE 5551212 --> <-- 250 Pager ID Accepted MESS Your network is hosed --> <-- 250 Message OK SEND --> <-- 250 Message Sent OK QUIT --> <-- 221 OK, Goodbye4.1.2 A Typical Level Two, Multiple Transaction The following example illustrates a single message sent to two pagers. Using this level protocol, pager-specific options may be selected for each receiver by specifying the option prior to issuing the "PAGEr" command. In this example, an alternate coverage area is selected for the first pager, while delayed messaging is specified for the second. Client Server Open Connection --> <-- 220 SNPP Server Ready COVE 2 --> <-- 250 Alternate Area Selected PAGE 5551212 FOOBAR --> <-- 250 Pager ID Accepted HOLD 9401152300 -0600 --> <-- 250 Delayed Message OK PAGE 5552323 XYZZY --> <-- 250 Pager ID Accepted SUBJ Seattle Meeting --> <-- 250 Message Subject OK DATA --> <-- 354 Begin Input, End With '.' Please meet me tomorrow at --> the Seattle office --> <-- 250 DATA AcceptedGwinn [Page 4]RFC 1645 SNPP - Version 2 July 1994 SEND --> <-- 250 Message Sent OK QUIT --> <-- 221 OK, Goodbye4.2 Level 1 Commands Level one commands are designed as a minimum implementation of the protocol. This collection of commands may be used with either TAP/IXO or TME for message delivery to the paging terminal.4.2.1 PAGEr <Pager ID> The PAGEr command submits a pager ID (PID) number, for inclusion in the next messaging transaction. The PID used must reside in, and be validated by the paging terminal. Limited validation may optionally be done on the server (such as all numeric, and ID length), or validation can be left up to the terminal at the time the page is sent. When implementing SNPP, the user may elect to support multiple recipients per message sent. However, be wary that validation- prior-to-sending is not possible with TAP/IXO (and is not an official option of the current TME specification). What this means is that in order to validate a PID, one must generate a message to the pager. The terminal responds favorably or negatively. When reporting failure of a single PID in a sequence, delineating and reporting the failure in a "standard format" may prove to be a challenge. Possible responses from the SNPP server, with suggested text, in response to a PAGEr command are: 250 Pager ID Accepted 421 Too Many Errors, Goodbye (terminate connection) 421 Gateway Service Unavailable (terminate connection) 550 Error, Invalid Pager ID 554 Error, failed (technical reason) The level 2 enhancements affect the PAGEr command. Please refer to the appropriate section for details.4.2.2 MESSage <Alpha or Numeric Message> The MESSage command specifies a single-line message, into the gateway. Limited validation of the message may be done on the SNPP server (such as length), but type-of-message validation should be done by the paging terminal. Duplicating the MESSage command before SENDing the message should produce an "503 ERROR, Message AlreadyGwinn [Page 5]
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -