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

📄 rfc1622.txt

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

   In this case, a value of 101 in the Options Present field indicates
   that the PDN Address and Fragmentation options are present in the
   Options Part, and that the foo option is not present.

   Note that an Options Present value of 0 indicates that there are no
   options present, regardless of the value of the Options Contents
   field.  Note also that no more than 8 options, not including the
   default first option (the Options Descriptor), can be present in any
   Options Part.

   The Options Contents/Options Present method of processing options
   allows for efficient processing of options.  First, a router can
   ignore any options that may be present but that do not impact it (for
   instance, a router not attached to a PDN need not consider the PDN
   Address option).  Second, the desired option can be very quickly
   retrieved, because the first option, the Options Descriptor option,
   contains the offset of each of the up to eight options indicated by
   the Options Present field.

   2.1.5  Packet SubID

   This field is used by Pip hosts to correctly associate received PCMP
   messages with local control blocks.  This is necessary because the
   semantics of the Transit Part can change while a packet is in
   transit.  Therefore, a router sending a PCMP message cannot
   necessarily provide all of the information needed by the Pip host to
   correctly identify the context of the received message (that is,
   which "packet flow" it is identified with).

   A PCMP message uses the Protocol, Source ID, Dest ID, and Packet
   SubID to define the PCMP messages context.  It is not sufficient to
   use just Protocol, Source ID, and Dest ID, because two hosts running
   the same protocol between them may have multiple "flows", for



Francis                                                         [Page 6]

RFC 1622                 Pip Header Processing                  May 1994


   instance, a data flow, a video flow, and an audio flow in the case of
   multi-media.  Each flow may have a different Transit Part, and take
   different paths.  Therefore, the Packet SubID field is needed to
   further differentiate.

   2.1.6  Protocol

   Indicates the protocol header found in the payload.  The values for
   this field are the same as those used for IPv4.

   2.1.7  Dest ID

   The Dest ID field indicates the Pip ID of the final recipient of the
   Pip packet.  This field is examined by both hosts and routers.

   When a Pip System processes the Routing Directive (RD), it may
   determine that it needs to examine the Dest ID for further
   processing.  This may happen both when a host or router receives a
   Pip packet destined for itself, or when a router receives a packet
   that should be forwarded based on Dest ID (as indicated by the RD).

   When a Pip system determines at forwarding time that a packet is
   destined for itself, it checks the Dest ID to verify if that packet
   is destined for it.  If the complete Dest ID matches one of its own
   Pip IDs, then the packet is for it, and is passed to the layer
   indicated by the Protocol field (in the Host Part).  (The Pip system
   may of course wish to check a security option before passing a packet
   to an upper layer.)

   If the complete Dest ID field does not match one of its own IDs, then
   an ID/RD Mismatch PCMP message is sent to the source of the packet,
   as indicated by the Source ID and potentially source information in
   the RD.  The purpose of this message is to flush the ID to RD binding
   in the source Pip host.

   2.1.8  Source ID

   This is the Pip ID of the source of the packet.  It is passed to
   upper layers for the purposes of identifying the context for the
   packet.

   2.1.9  Payload Length

   The Payload Length gives the length of the Pip packet payload in
   units of 8 bits.  The Payload Length does not include the length of
   the Pip header.





Francis                                                         [Page 7]

RFC 1622                 Pip Header Processing                  May 1994


   2.1.10  Host Version

   The Host Version field indicates what "version" of Pip software the
   sending host has implemented.  This is to allow a host to inform a
   router which ancillary protocols/messages the host is able to accept.
   It is envisioned that over time, new host functions will be
   developed.  Different hosts will install these new functions at
   different times.  This field allows routers to know what functions
   the host can and cannot handle.

   2.1.11  Payload Offset

   The Payload Offset indicates the position of the Payload Part.  The
   unit of measure of the Payload Offset is 32-bit words, counting the
   first word of the Pip Header as word 0.

   If a Pip system encapsulates a Transit Part in another Transit Part,
   then the Payload Offset is increased by the length of the new Transit
   Part.

   2.1.12  Hop Count

   The Hop Count is decremented by every router that forwards the Pip
   packet.  If a system receives a Pip header with a Hop Count equal to
   0, and is not the recipient of the packet, then the packet is
   discarded and a PCMP Destination Unreachable is routed to the system
   indicated by the Routing Directive.  (In other words, a host can
   legally receive a Transit Part with a Hop Count of 0, and indeed a
   host doesn't look at the Hop Count field upon reception.)






















Francis                                                         [Page 8]

RFC 1622                 Pip Header Processing                  May 1994


2.2  Transit Part

   The Transit Part is formatted as shown in Figure 2.


                                         length, in bits
                   +===========================+
                   |         Reserved          |     16
                   +---------------------------+
                   |    Transit Part Offset    |     8
                   +---------------------------+
                   |        HD Contents        |     8
                   +===========================+
                   |  Handling Directive (HD)  |     32
    ---------------+===========================+
        ^          |        FTIF Offset        |     8
        |          +---------------------------+
        |          |        RC Contents        |     8
        |          +---------------------------+
        |          |   Routing Context (RC)    |     16
     Routing       +===========================+
                   |         FTIF 1            |     16
     Directive     +---------------------------+
        |          |         FTIF 2            |     16
        |          +---------------------------+
        |                       .
        |                       .
        |                       .
        |          +---------------------------+
        |          |         FTIF N            |     16
        |          +---------------------------+
        v          |         Padding           |     Variable
    ---------------+===========================+

                          Figure 2: Transit Part

   An explanation of each field follows.

   2.2.1  Transit Part Offset

   This field gives the position of the first word of the next Transit
   Part.  The unit of measure of the Transit Part Offset is 32-bit
   words, counting the first word of the current Transit Part as word 0.
   If there is no next Transit Part, then this field is written as all
   0's.






Francis                                                         [Page 9]

RFC 1622                 Pip Header Processing                  May 1994


   2.2.2  HD Contents

   The HD Contents field indicates how the Handling Directive (HD) field
   should be interpreted.  The HD field is divided into multiple fields,
   each representing a different handling function.  Each individual
   field in the HD is called an HD Unit (HDU).  The Options Contents
   field indirectly indicates which HDUs are in the HD field, and where
   they are.  We say indirectly because the mapping referred to by the
   HD Contents field is stored locally. In other words, without
   additional information (the mapping), it is not possible to examine
   the HD Contents field and know what the HDU locations are.

   Any of 256 possible HD Contents values can be active at a given time.
   (Note that the means by which the meaning of the HD Contents values
   are assigned and conveyed to routers and hosts is outside the scope
   of this specification.)

   2.2.3  Handling Directive (HD)

   The HD is a general purpose field used for the purpose of triggering
   special packet handling by a Pip system.  The HD field does not
   influence a Pip router's next hop choice for a Pip packet, nor does
   it influence a Pip host's determination as to whether the Pip packet
   is destined for it.  Examples of special packet handling would be
   "low priority queueing", or "high priority discard", etc.  (Note that
   the Transit Options also influence "handling", in the sense that
   handling is essentially defined here to mean "anything that is not
   routing.  The HD field, though, is intended for the most common types
   of handling--handling that is expected to be in a significant
   percentage of packets.)

   Both hosts and routers use the HD field.  (Hosts may make use of the
   HD field for packet handling for both incoming and outgoing packets.)

   There is a complete distinction between the syntax and the semantics
   of the HD field.  (This can be contrasted with, for instance, IP,
   which couples the semantics and syntax of the TOS bits.  That is, the
   IP specification itself determines, to a first degree, how the TOS
   bits are interpreted.) Each Pip system can modify the semantic
   meaning of the HD, for instance, by increasing or decreasing the
   queueing priority of a packet.  This is called packet tagging.

   From an abstract modeling perspective, the HD is handled as follows:

   1.  Extract the semantic meaning(s) (the handling instructions
       associated with the HDUs) from the HD field.  Transmitting Pip
       hosts determine the semantic meaning by some other means, such as
       the upper layer protocol.  If the receiving system decapsulates



Francis                                                        [Page 10]

RFC 1622                 Pip Header Processing                  May 1994


       multiple Pip headers, then the HD semantics are extracted from the
       lowest Pip header for which it is not the target (see example on
       tunneling below).

   2.  Handle the Pip packet according to those instructions.  In some
       cases, it is possible that the Pip system does not understand the
       semantics of one or more HDUs of the HD field.  For each HDU whose
       semantics are not understood, however, the pip system at least
       knows whether to 1) pass the HDU on untouched, 2) set it to all
       0s, 3) set it to all 1s, 4) discard the packet silently, or 5)
       discard the packet with a PCMP HDU Not Understood packet.

   3.  Modify the semantic meaning if necessary.  Note also that if the
       Pip packet is replicated for multicast, each packet has its HD
       semantics modified individually.  .LP .in 3 2.2.4 Tunneling .LP
       Consider two Pip systems, X and Y, separated by one or
       intermediate Pip systems.  X wishes to tunnel a Transit Part to Y.
       Y is therefore the target system of the tunnel.  A Transit Part He
       arrives at X.  In order to forward the Transit Part to Y, X
       encapsulates He in another Transit Part, Hy.  Y is the target
       system for Transit Part Hy.  X sets the HD of He to what it would
       have been if Y was directly connected to X (that is, there were no
       intermediate Pip systems between X and Y).  Further, it is
       intended that Y will derive its HD semantics from the HD of
       Transit Part He, not Transit Part Hy.  .sp .KS

        ----0-----o-----o-----o-----o-----0----
            X     I     J     K     L     Y

   Now consider the operation of Pip system L (the previous hop system
   to Y).  When L forwards the packet to Y, it may either decapsulate
   the packet (in the knowledge that Y is the target for Hy), or not
   decapsulate the packet.  Either way, L derives its HD semantics from
   the HD of Transit Part Hy.

⌨️ 快捷键说明

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