📄 rfc2.txt
字号:
Network Working Group Bill DuvallRequest for Comments: 2 SRI [unknown title][page 1 missing]1 LINKS 1a Control Links 1a1 Logical link 0 will be a control link between any two HOSTs on the network 1a1a Only one control link may exist between any two HOSTs on the network. Thus, if there are n HOSTs on the network, there are n-1 control links from each HOST. 1a2 It will be primarily used for communication between HOSTs for the purposes of: 1a2a Establishing user links 1a2b Breaking user links 1a2c Passing interrupts regarding the status of links and/or programs using the links 1a2d Monitor communication 1a3 Imps in the network may automatically trace all messages sent on link 0. 1b Primary Links 1b1 A user at a given HOST may have exactly 1 primary link to each of the other HOSTs on the network. 1b1a The primary link must be the first link established between a HOST user and another HOST. 1b1b Primary links are global to a user, i.e. a user program may open a primary link, and that link remains open until it is specifically closed.Duvall [Page 1]RFC 2 1b1c The primary link is treated like a teletype connected over a normal data-phone or direct line by the remote HOST, i.e. the remote HOST considers a primary link to be a normal teletype user. 1b1d The primary link is used for passing (user) control information to the remote HOST, e.g. it will be used for logging in to the remote host (using the remote hosts standard login procedure). 1c Auxilliary Links 1c1 A user program may establish any number of auxilliary links between itself and a user program in a connected HOST. 1c1a These links may be used for either binary or character transmission. 1c1b Auxilliary links are local to the sub-system which establishes them, and therefore are closed when that subsystem is left.2 MANIPULATION OF LINKS 2a Control links 2a1 The control link is established at system load time. 2a2 The status of a control link may be active or inactive 2a2a The status of the control link should reflect the relationship between the HOSTs. 2b Primary Links 2b1 Primary links are established by a user or executive call to the monitor 2b1a The network identification number of the HOST to be linked to must be included in the call 2b1b An attempt to establish more than one primary link to a particular HOST will be regarded as an error, and the request will be defaulted 2b1c Standard Transmission Character SetDuvall [Page 2]RFC 2 2b1c1 There will be a standard character set for transmission of data over the primary links and control links. 2b1c1a This will be full (8 bit) ASCII. 2b1d (get link) The protocol for establishing a link to HOST B from HOST A is as follows 2b1d1 A selects a currently unused link to HOST B from its allocation tables 2b1d2 A transmits a link-connect message to B over link 0. 2b1d3 A then waits for: 2b1d3a A communication regarding that link from B 2b1d3b A certain amount of time to elaspse 2b1d4 If a communication regarding the link is received from B, it is examined to see if it is: 2b1d4a A verification of the link from B. 2b1d4a1 This results in a successful return from the monitor to the requestor. The link number is returned to the requestor, and the link is established. 2b1d4b A request from B to establish the link. This means: that B is trying to establish the same link as A independently of A. 2b1d4b1 If the network ID number of A(Na) is greater than that of B(Nb), then A ignores the request, and continues to await confirmation of the link from B. 2b1d4b2 If, on the other hand, Na<Nb, A: 2b1d4b2a Honors the request from B to establish the link, 2b1d4b2b Sends verification as required, 2b1d4b2c Aborts its own request, and repeats the allocation process.Duvall [Page 3]RFC 2 2b1d4c Some other communication from B regarding the link. 2b1d4c1 This is an error condition, meaning that either: 2b1d4c1a A has faulted by selecting a previously allocated link for allocation, 2b1d4c1b B is transmitting information over an un- allocated link, 2b1d4c1c Or a message regarding allocation from B to A has been garbled in transmission. 2b1d4c2 In this case, A's action is to: 2b1d4c2a Send a link disconnect message to B concerning the attempted connection 2b1d4c2b Consider the state of HOST B to be in error and initiate entry to a panic routine(error). 2b1d5 If no communication regarding the link is received from B in the prescribed amount of time, HOST B is considered to be in an error state. 2b1d5a A link disconnect message is sent to B from A. 2b1d5b A panic routine is called(error). 2c Auxilliary Links 2c1 Auxilliary links are established by a call to the monitor from a user program. 2c1a The request must specify pertinent data about the desired link to the monitor 2c1a1 The number of the primary link to B. 2c1b The request for an auxilliary link must be made by a user program in each of the HOSTs (A and B). 2c1c If Na > Nb, then HOST A proceeds to establish a link to HOST B in the manner outlined above (getlink).Duvall [Page 4]RFC 2 2c1d If Na<Nb, then A waits: 2c1d1 For HOST B to establish the link (after looking to see if B has already established the corresponding link). 2c1d2 For a specified amount of time to elapse. 2c1d2a This means that HOST B did not respond to the request of HOST A. 2c1d2b The program in HOST A and B should be able to specifiy the amount of time to wait for the timeout.3 ERROR CHECKING 3a All messages sent over the network will be error checked initally so as to help isolate software and hardware bugs. 3b A checksum will be associated with each message, which is order dependent. 3b1 The following algorithm is one which might be used: 3b1a A checksum of length 1 may be formed by adding successive fields in the string to be checked serially, and adding the carry bit into the lowest bit position of the sum. +--------------+ | | +---FIELD 1----+ ADD +--------------+ | | +----FIELD 2---+ +-+--------------+ | | | +-+--------------+ \ \ +--+ ADD CARRY---> | | +--+ +--------------+ | | +----RESULT----+ 3b1a1 This process is known as folding.Duvall [Page 5]
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -