Internet DRAFT - draft-glenn-ippt-arch

draft-glenn-ippt-arch



Network Working Group                              Glenn Mansfield Keeni
Internet Draft                                      Cyber Solutions Inc.
Expires: April 24, 2005                                        Y. Kuwata
                                                                NTT-Data
                                                        October 25, 2004




                 An Architecture for IP Packet Tracing
                     <draft-glenn-ippt-arch-01.txt>


Status of this Memo



   By submitting this Internet-Draft, we certify that any applicable
   patent or other IPR claims of which we are aware have been disclosed,
   or will be disclosed, and any of which we become aware will be
   disclosed, in accordance with RFC 3668.


   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups. Note that other
   groups may also distribute working documents as Internet-Drafts.


   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than a "work in progress."


   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/1id-abstracts.html


   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html"


   Comments on this draft should be addressed to the authors.


   This Internet-Draft will expire on April 24, 2005.


Copyright Notice


   Copyright (C) The Internet Society (2004).  All Rights Reserved.











Expires: April 24, 2005                                         [Page 1]






Internet Draft                                          October 25, 2004



Abstract


   This document presents an architecture for use in tracing packets
   across the Internet. It envisages a two-tier model wherein
   at the top level a Packet Tracer Application (PTA) queries relevant
   Autonomous System (AS) packet tracers (ASPT) with details of the
   packet to be traced. The PTA constructs the complete path from the
   responses of the queried ASPTs. At the lower level an ASPT receives
   queries from a PTA, traces the path of a packet within the AS and
   sends back the result to the PTA.


Table of Contents


   1.  Introduction .................................................  3
   2.  An Architecture for Packet Tracing ...........................  4
   3.  Components of the Architecture ...............................  5
   4.  Limitation of Scope ..........................................  6
   5.  Protocol Issues ..............................................  7
   6.  Security Considerations ......................................  9
   7.  IANA Considerations ..........................................  9
   8.  References ................................................... 10
   9.  Intellectual Property ........................................ 10
   10. Acknowledgements ............................................. 10
   11. Authors' Addresses ........................................... 11
   Full Copyright Statement ......................................... 12



























Expires: April 24, 2005                                         [Page 2]






Internet Draft                                          October 25, 2004



1. Introduction



   The route of an IP datagram is of great interest for Internet
   operations and security. But, determining the route an IP datagram
   has taken is a difficult problem. If the source address of a datagram
   is known, the path of the packet may be "traced", but since routing
   happens dynamically in the Internet the "trace" that is obtained is
   generally one of the possible paths an IP datagram will take.  This
   problem is further compounded by the fact that the source addresses
   in IP datagrams can be "spoofed". In such cases the packet itself
   does not contain any clue about the path it has taken.


   A mechanism for tracing the path of IP datagrams will involve a two-
   tier model. At the top level a Packet Tracer Application (PTA)
   queries relevant Autonomous System (AS) packet tracers (ASPT) with
   details of the packet to be traced. The PTA constructs the complete
   path from the responses of the queried ASPTs. At the next level an
   ASPT receives queries from a PTA, traces the path of a packet within
   the AS and sends back the result to the PTA.


   An ASPT may service queries from a management station in the AS or
   outside the AS. Servicing queries about the path of a packet within
   an AS will probably involve "monitors" at several observation points
   on the network. Each monitor will maintain a record of every datagram
   it "sees". An agent that has access to the records maintained by a
   monitor can say with reasonable accuracy whether a particular IP
   datagram was actually seen at the point in the network that is
   monitored by the monitor. Given sufficient number of monitors it may
   be possible to trace the actual path of the packet in the AS. The
   granularity of the path (in terms of network hops) will depend on the
   number of monitors available along the path.


   It must be noted that the above mechanism works only if the invariant
   part of the IP datagram is used to generate the record.  The IP-
   protocol requires that, at each network hop the time-to-live of the
   IP datagram is decremented by 1 and the header checksum is
   recomputed. Moreover, some of the flags and options may be changed
   too. IP datagrams may also have their source and/or destination
   addresses changed as they traverse NAT-routers.


   This document describes an architecture for tracing IP datagrams
   across the Internet.


   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in BCP
   14, RFC 2119 [RFC2119].




Expires: April 24, 2005                                         [Page 3]






Internet Draft                                          October 25, 2004



2. An Architecture for Packet Tracing



   The architecture realizes Internet Packet Tracing which does the
   inter-AS tracing of packets and intra-AS packet tracing that traces
   the packet inside an AS.


2.1 Internet Packet Tracing



   A Packet Tracer Application (PTA) communicates with AS packet tracers
   (ASPT) in one or more ASes and constructs the path of the packet over
   the Internet from the results.


                           +-----------+
                           |           |
                           |  Packet   |
                           |  Tracer   |
                           |Application|
                           |  (PTA)    |
                           +-----+-----+
                             /   |   \
                            /    |    \
                           /     |     \
                          /      |      \
                         /       |       \
                    AS1 /     ASi|        \ ASn
                                 |
                          +------+-----+
                          |      |     |
                          |  +---V---+ |
                          |  |  ASPT | |
                          |  +-------+ |
                          |            |
                          |            |
                          +------------+


                Fig. 1. Internet packet Tracing


2.2 Intra-AS Packet Tracing


   The intra-AS packet tracing architecture comprises of Packet
   Monitors, Packet Record Bases, Packet Record Agents, and Packet
   Tracer Applications.


   The Packet Monitor maintains a record of each IP datagram "seen" at
   the point of observation. The collection of these records constitutes
   the Packet Record Base (PRB). A PRB is served by a Packet Record




Expires: April 24, 2005                                         [Page 4]






Internet Draft                                          October 25, 2004



   Agent (PRA). On receiving a query from a Packet Tracer Application
   (PTA) about a particular IP datagram, the PRA refers to the records
   in its PRB to determine whether the IP datagram was "seen" at the
   point of observation by the monitor that is maintaining the PRB.


       +-----------+       (Query Key)            +-----------------+
       | Packet    | <------- Query ------------- | AS Packet Tracer|
       | record    |                              |       (ASPT)    |
       | agent(PRA)| ------- Response ----------> |                 |
       +-----+-----+  (Supplementary Information) +-----------------+
             |
             |
       /-----V-----\
       |  Packet   |
       |  Record   |
       |  Base(PRB)|
       \-----+-----/
             |
             |
             |
       +-----+-----+
       |  Packet   |
       |  Monitor  |
       |           |
       +-----------+


              Fig. 2. Intra-AS packet tracing


3. Components of the Architecture.


3.1  Packet Monitor(PM): These are entities responsible for monitoring
     the IP datagrams at a specific point in the network. A monitor may
     be built into a router or it may be a passive device that watches
     all the traffic traversing the point of observation.


3.2  Packet Record Base(PRB): A Packet Monitor maintains a record for
     each IP datagram that it "sees", in the Packet Record Base. A
     primary requirement is that the contents and format of a Packet
     Record in the PRB must be sufficient to determine whether a record
     for a particular IP datagram exists in the PRB, or not. In general
     a Packet Record will be a transform of the packet. In the
     simplest case it will be a null transform. In other cases it will
     be a non-null transform (hash/digest) of a part or all of the packet
     with some parts of the packet masked. Supplementary information
     pertaining to the packet e.g. time-to-live, timestamp, etc. may
     be stored in the PRB.


3.3  Packet Record Agent(PRA): These are entities that respond to




Expires: April 24, 2005                                         [Page 5]






Internet Draft                                          October 25, 2004



     queries about IP datagrams. The Packet Record Agent accepts a
     Query Key, carries out the appropriate transforms, if any, to
     generate the corresponding Packet Record. It then refers to the
     Packet Records in the PRB to determine if a record for the IP
     datagram exists or not. If a Packet Record is found, the PRA sends
     back a positive response alongwith supplementary information,
     if any, corresponding to the Query Key, to the ASPT.


3.4  AS Packet Tracer Application (ASPT): This is the entity that is
     works within an AS, has knowledge about the the packet tracing
     infrastructure and configuration within the AS and has access to
     the other packet tracing components in the AS. It receives a request
     from a Packet Tracing application along with details of the packet
     that needs to be traced, applies the appropriate transforms, if any,
     to the IP datagram to generate the Query Key. The PTA then queries
     one or more Packet Record Agents to check if Packet Records
     corresponding to the Query Key exists in their respective Packet
     Record Bases. If an agent replies that no record exists for the IP
     datagram then the Packet Tracer Application determines that the IP
     datagram was not observed at the observation point corresponding to
     the PRB of the PRA.


3.5  Packet Tracer Application (PTA): This is the entity that is
     interested in tracing the path traversed by an IP datagram. It
     needs to have the minimal knowledge of the network topology
     to know which ASPTs need to be queried and in what sequence.
     The PTA attempts to determine the path of the packet from the
     response it receives from the ASPTs.


4.  Limitation of scope.


   In attempting to address the problem of tracing the paths of packets
   across the internet a conscious effort has been made to keep the
   architecture simple. The Packet Tracer Application (PTA) needs to
   know which AS Packet Tracers it should query. The AS Packet Tracer
   application (ASPT) on the other hand (PTA) needs to know which Packet
   Record Agent it should query. How the PTA  or the ASPT knows this
   information is outside the scope of the architecture presented in
   this document. The ASPT and the PTA also need to employ some
   algorithm to reconstruct the path of the packet using the information
   obtained from the PRAs and the ASPTs, respectively. The details of
   how this is done is outside the scope of the present architecture.










Expires: April 24, 2005                                         [Page 6]






Internet Draft                                          October 25, 2004



5. Protocol Issues.


   The IP datagram traceback may happen on small, medium or large
   networks.  It may span several networks and/or political and
   geographical domains.  The Internet is heterogeneous in nature and
   the views and requirements of the participating entities are diverse.
   (There is also a total lack of experience with traceback mechanisms).
   In this context the protocol that will be used for the traceback
   should be simple and at the same time flexible. In the following we
   discuss the basic protocol issues.




5.1 The Packet Record Protocol: The Packet Monitor maintains a record
    for each IP-datagram it observes. The exact details and format may
    differ between systems. In some cases the entire packet may be
    recorded, in other cases some transform of the datagram may be
    recorded. The Packet Record Protocol will define the following.


5.1.1 The type of transform used by the Packet Monitor to generate a
    record of an IP-datagram.


5.1.2 The attributes of the Packet Record Base - e.g. its size, the
    time span of the present packet records, etc.


5.1.3 The primary contents of the Packet Record Base: the primary
    requirement of the contents of the packet record is that when
    presented with the appropriate details of an IP datagram (the Query
    Key) it should be possible for the Packet Record Agent to refer to
    the Packet Record Base and say whether a record for the IP-datagram
    exists or not.


5.1.4 The supplementary information of the Packet Record Base: Other
    information that may be helpful in (confirming and/or corroborating)
    the tracking information. For example the time-to-live value, the
    timestamp of the packet etc.


5.2 The intra-AS communication protocol(IASCP): It is necessary to have a
    standard protocol for communicating between an ASPT and a PRA.
    The basic communication between the AS Packet Tracer Application and
    the Packet Record Agent is of a simple query response pattern. It does
    not involve long conversations or data transfers. The requirements for
    this communication are that it should be efficient and secure.


5.2.1 The intra-AS Communication Protocol must provide for mechanisms that
    will allow the Packet Tracer Application and Packet Record Agent to
    authenticate each other.





Expires: April 24, 2005                                         [Page 7]






Internet Draft                                          October 25, 2004



5.2.2 The intra-AS Communication Protocol should provide for mechanisms
    that will allow the Packet Tracer Application and the Packet Record
    Agent to ensure non-repudiation.


5.2.3 The intra-AS Communication Protocol must provide for mechanisms
    that will allow the Packet Tracer Application to query the Packet
    Record Agent about the elements of the Packet Record Protocol employed
    by the Packet Monitor.


5.3 The inter-AS communication protocol(ICP): It is necessary to have a
    standard protocol for communicating between a PTA and an ASPT.
    The basic communication between the Packet Tracer Application and the
    AS  Packet Tracer is of a simple query response pattern. It does not
    involve long conversations or data transfers. But it will include the
    verifiable credentials of the PTA. The requirements for this
    communication are that it should be efficient and secure.


5.3.1 The inter-AS Communication Protocol must provide for mechanisms that
    will allow the Packet Tracer Application and AS Packet Tracer to
    authenticate each other.


5.3.2 The inter-AS Communication Protocol must provide for mechanisms
    that that will allow the Packet Tracer Application and the AS Packet
    Tracer to ensure non-repudiation.


5.4 The monitoring and control protocol: The elements in the packet
    trace architecture need to be monitored and controlled. The Internet
    standard protocol for network management SNMP [RFC 3410] can be used
    to monitor and control the elements in a secure manner. An appropriate
    Management Information Base (MIB) needs to be designed to meet the
    specific requirements of the packet tracing architecture.





















Expires: April 24, 2005                                         [Page 8]






Internet Draft                                          October 25, 2004



6. Security Considerations


   This does not describe a protocol by itself it describes the
   architecture for tracing packets across the Internet. The
   architecture does not preclude the use of packets for tracing the
   paths of the packets. This has security implications and must be
   dealt with care.  Including the packet itself as data in the query is
   not a recommended practice. The architecture does not preclude the
   use of maintaining full records of packets - this has privacy and
   security implications.  This is not a recommended practice and if
   employed should be used with great care and deliberation.


   Query and the results may have serious security implications. To
   ensure safety, the authentication and non-repudiation mechanisms
   should be used.



7.  IANA Considerations


   This document has no actions for IANA.
































Expires: April 24, 2005                                         [Page 9]






Internet Draft                                          October 25, 2004



8. References


8.1 Normative References


   [RFC2119]    Bradner, S., "Key words for use in RFCs to Indicate
                Requirements Levels", BCP 14, RFC 2119, March 1997.



8.2 Informative References
   [IPPT]       Partridge, C., Jones, C., Waltzman, D., Snoeren, A.,
                BBN Technologies, "New Protocols to Support Internet
                Traceback", work in progress (currently
                <draft-partridge-ippt-discuss-00,txt>)


   [RFC3410]    Case, J., Mundy, R., Partain, D. and B. Stewart,
                "Introduction and Applicability Statements for
                Internet-Standard Management Framework", RFC 3410,
                December 2002.


9. Intellectual Property


   Some of the concepts and ideas discussed in this draft are the
   subject of pending patent applications by NTT-Data, Japan and Cyber
   Solutions Inc. Japan.


10. Acknowledgments.


   Several persons have actively contributed to the ideas in this document.
   The discussions at the WIDE-NetMan-WG have had significant impact on the
   ideas in this document.






















Expires: April 24, 2005                                        [Page 10]






Internet Draft                                          October 25, 2004



11. Authors' Addresses


   Glenn Mansfield Keeni
   Cyber Solutions Inc.
   Sendai
   Japan


   EMail: glenn@cysols.com


   Yoshitaka Kuwata
   NTT-Data,
   Tokyo
   Japan


   Email: kuwatay@nttdata.co.jp





































Expires: April 24, 2005                                        [Page 11]






Internet Draft                                          October 25, 2004



                        Full Copyright Statement



   Copyright (C) The Internet Society (2004).  This document is subject
   to the rights, licenses and restrictions contained in BCP 78, and
   except as set forth therein, the authors retain all their rights.


   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE
   REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE
   INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR
   IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
   THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.






































Expires: April 24, 2005                                        [Page 12]






Internet Draft                                          October 25, 2004



Intellectual Property


   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed
   to pertain to the implementation or use of the technology
   described in this document or the extent to which any license
   under such rights might or might not be available; nor does it
   represent that it has made any independent effort to identify any
   such rights.  Information on the procedures with respect to
   rights in RFC documents can be found in BCP 78 and BCP 79.


   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use
   of such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository
   at http://www.ietf.org/ipr.


   The IETF invites any interested party to bring to its attention
   any copyrights, patents or patent applications, or other
   proprietary rights that may cover technology that may be required
   to implement this standard.  Please address the information to the
   IETF at ietf-ipr@ietf.org.


Acknowledgment


   Funding for the RFC Editor function is currently provided by the
   Internet Society.
























Expires: April 24, 2005                                        [Page 13]






Internet Draft                                          October 25, 2004





















































Expires: April 24, 2005                                        [Page 14]