📄 rfc926.txt
字号:
6.8 Reassembly Function The Reassembly Function reconstructs the Initial PDU transmitted to the destination network-entity from the Derived PDUs generated during the lifetime of the Initial PDU. A bound on the time during which segments (Derived PDUs) of an Initial PDU will be held at a reassembly point is provided so that resources may be released when it is no longer expected that any outstanding segments of the Initial PDU will arrive at the reassembly point. When such an event occurs, segments (Derived PDUs) of the Initial PDU held at the reassembly point are discarded, the resources allocated for those segments are freed,ISO DIS 8473 (May 1984) [Page 20]RFC 926 December 1984 and if selected, an Error Report is generated. Note: The design of the Segmentation and Reassembly functions is intended principally to be used such that reassembly takes place at the destination. However, other schemes which a) interact with the routing algorithm to favor paths on which fewer segments are generated, b) generate more segments than absolutely required in order to avoid additional segmentation at some subsequent point, or c) allow partial/full reassembly at some point along the route where it is known that the subnetwork with the smallest PDU size has been transited are not precluded. The information necessary to enable the use of one of these alternative strategies may be made available through the operation of a Network Layer Management function. While the exact relationship between reassembly lifetime and PDU lifetime is a local matter, the reassembly algorithm must preserve the intent of the PDU lifetime. Consequently, the reassembly function must discard PDUs whose lifetime would otherwise have expired had they not been under the control of the reassembly function. 6.9 Discard PDU Function This function performs all of the actions necessary to free the resources reserved by the network-entity in any of the following situations (Note: the list is not exhaustive): a) A violation of protocol procedure has occurred. b) A PDU is received whose checksum is inconsistent with its contents.ISO DIS 8473 (May 1984) [Page 21]RFC 926 December 1984 c) A PDU is received, but due to congestion, it cannot be processed. d) A PDU is received whose header cannot be analyzed. e) A PDU is received which cannot be segmented and cannot be forwarded because its length exceeds the maximum subnetwork service data unit size. f) A PDU is received whose destination address is unreachable or unknown. g) Incorrect or invalid source routing was specified. This may include a syntax error in the source routing field, and unknown or unreachable address in the source routing field, or a path which is not acceptable for other reasons. h) A PDU is received whose PDU lifetime has expired or the lifetime expires during reassembly. i) A PDU is received which contains an unsupported option. 6.10 Error Reporting Function 6.10.1 Overview This function causes the return of an Error Report PDU to the source network-entity when a protocol data unit is discarded. An "error report flag" in the original PDU is set by the source network-entity to indicate whether or not Error Report PDUs are to be returned. The Error Report PDU identifies the discarded PDU, specifies the type of error detected, and identifies the location at which the error was detected. Part or all of the discarded PDU is included in the data field of the Error Report PDU. The address of the originator of the Data Protocol Data Unit isISO DIS 8473 (May 1984) [Page 22]RFC 926 December 1984 conveyed as both the destination address of the Error Report PDU as well as the source address of the original Data PDU; the latter is contained in the Data field of the Error Report PDU. The address of the originator of the Error Report PDU is contained in the source address field of the header of the Error Report PDU. Note: Non-receipt of an Error Report PDU does not imply correct delivery of a PDU issued by a source network-entity. 6.10.2 Requirements An Error Report PDU shall not be generated to report the discarding of a PDU that itself contains an Error Report. An Error Report PDU shall not be generated upon discarding of a PDU unless that PDU has the Error Report flag set to allow Error Reports. If a Data PDU is discarded, and has the Error Report flag set to allow Error Reports, an Error Report PDU shall be generated if the reason for discard (See Section 6.9) is a) destination address unreachable, b) source routing failure, c) unsupported options, or d) protocol violation.ISO DIS 8473 (May 1984) [Page 23]RFC 926 December 1984 Note: It is intended that this list shall include all nontransient reasons for discard; the list may therefore need to be amended or extended in the light of any changes made in the definitions of such reasons. If a Data PDU with the Error Report flag set to allow Error Reports is discarded for any other reason, an Error Report PDU may be generated (as an implementation option). 6.10.3 Processing of Error Reports Error Report PDUs are forwarded by intermediate network-entities in the same way as Data PDUs. It is possible that an Error Report PDU may be longer than the maximum user data size of a subnetwork that must be traversed to reach the origin of the discarded PDU. In this case, the Forward PDU function shall truncate the PDU to the maximum size acceptable. The entire header of the discarded data unit shall be included in the data field of the Error Report PDU. Some or all of the data field of the discarded data unit may also be included. Note: Since the suppression of Error Report PDUs is controlled by the originating network-entity and not by the NS User, care should be exercised by the originator with regard to suppressing ER PDUs so that error reporting is not suppressed for every PDU generated.ISO DIS 8473 (May 1984) [Page 24]RFC 926 December 1984 6.11 PDU Header Error Detection The PDU Header Error Detection function protects against failure of intermediate or end-system network-entities due to the processing of erroneous information in the PDU header. The function is realized by a checksum computed on the PDU header. The checksum is verified at each point at which the PDU header is processed. If PDU header fields are modified (for example, due to lifetime function), then the checksum is modified so that the checksum remains valid. An intermediate system network-entity must not recompute the checksum for the entire header, even if fields are modified. Note: This is to ensure that inadvertent modification of a header while a PDU is being processed by an intermediate system (for example, due to a memory fault) may still be detected by the PDU Header Error function. The use of this function is optional, and is selected by the originating network-entity. If the function is not used, the checksum field of the PDU header is set to zero. If the function is selected by the originating network-entity, the value of the checksum field causes the following formulae to be satisfied: L (SUM) a = 0 (modulo 255) i i=1 L (SUM) (L-i+1) a = 0 (modulo 255) i i=1 Where L = the number of octets in the PDU header, and a = value of octet at position i. iISO DIS 8473 (May 1984) [Page 25]RFC 926 December 1984 When the function is in use, neither octet of the checksum field may be set to zero. Annex C contains descriptions of algorithms which may be used to calculate the correct value of the checksum field when the PDU is created, and to update the checksum field when the header is modified. 6.12 Padding Function The padding function is provided to allow space to be reserved in the PDU header which is not used to support any other function. Octet alignment must be maintained. Note: An example of the use of this function is to cause the data field of a PDU to begin on a convenient boundary for the originating network-entity, such as a computer word boundary. 6.13 Security An issue related to the quality of the network service is the protection of information flowing between transport-entities. A system may wish to control the distribution of secure data by assigning levels of security to PDUs. As a local consideration, the Network Service user could be authenticated to ascertain whether the user has permission to engage in communication at a particular security level before sending the PDU. While no protocol exchange is required in the authentication process, the optional security parameter in the options part of the PDU header may be employed to convey the particular security level between peer network-entities. The syntax and semantics of the security parameter are not specified by this Standard. The security parameter is related to the "protection from unauthorized access" Quality of service parameter described in ISO 8348/DAD1, Addendum to the Network Service Definition Covering Connectionless-mode Transmission. However, to facilitate interoperation between end-systems and relay-systems by avoiding different interpretations of the same encoding, a mechanism is provided to distinguish user-defined security encoding from standardized security encoding.ISO DIS 8473 (May 1984) [Page 26]RFC 926 December 1984 6.14 Source Routing Function The Source Routing function allows the originator to specify the path a generated PDU must take. Source routing can only be selected by the originator of a PDU. Source Routing is accomplished using a list of intermediate system addresses (or titles, see Section 5.3 and 5.5.1) held in a parameter within the options part of the PDU Header. The size of the option field is determined by the originating network-entity. The length of this option does not change as the PDU traverses the network. Associated with this list is an indicator which identifies the next entry in the list to be used; this indicator is advanced by the receiver of the PDU when the next address matches its own address. The indicator is updated as the PDU is forwarded so as to identify the appropriate entry at each stage of relaying. Two forms of the source routing option are provided. The first form, referred to as complete source routing, requires that the specified path must be taken; if the specified path cannot be taken, the PDU must be discarded. The source may be informed of the discard using the Error Reporting function described in Section 6.10. The second form is referred to as partial source routing. Again, each address in the list must be visited in the order specified while on route to the destination. However, with this form of source routing the PDU may take any path necessary to arrive at the next address in the list. The PDU will not be discarded (for source routing related causes) unless one of the addresses specified cannot be reached by any available route.ISO DIS 8473 (May 1984) [Page 27]RFC 926 December 1984 6.15 Record Route Function The Record Route function permits the exact recording of the paths taken by a PDU as it traverses a series of interconnected subnetworks. A recorded route is composed of a list of intermediate system addresses held in a parameter within the options part of the PDU header. The size of the option field is determined by the originating network-entity. The length of this option does not change as the PDU traverses the network. The list is constructed as the PDU traverses a set of interconnected subnetworks. Only intermediate system addresses are included in the recorded route. The address of the originator of the PDU is not recorded in the list. When an intermediate system network-entity processes a PDU containing the record route parameter, the system inserts its own address (or titles, see Sections 5.3 or 5.5.1) into the list of recorded addresses. The record route option contains an indicator which identifies the next available octet to be used for recording of route. This identifier is updated as entries are added to the list. If the addition of the current address to the list would exceed the size of the option field, the indicator is set to show that recording of route has terminated. The PDU may still be forwarded to its final destination, without further addition of intermediate system addresses. Note: The Record Route function is principally intended to be used in the diagnosis of network problems. Its mechanism has been designed on this basis, and may provide a return path.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -