Network Working Group                                        J. Peterson
Request for Comments: 5594                                       NeuStar
Category: Informational                                        A. Cooper
                                       Center for Democracy & Technology
                                                               July 2009


  Report from the IETF Workshop on Peer-to-Peer (P2P) Infrastructure,
                              May 28, 2008

Abstract

   This document reports the outcome of a workshop organized by the
   Real-time Applications and Infrastructure Area Directors of the IETF
   to discuss network delay and congestion issues resulting from
   increased Peer-to-Peer (P2P) traffic volumes.  The workshop was held
   on May 28, 2008 at MIT in Cambridge, MA, USA.  The goals of the
   workshop were twofold: to understand the technical problems that ISPs
   and end users are experiencing as a result of high volumes of P2P
   traffic, and to begin to understand how the IETF may be helpful in
   addressing these problems.  Gaining an understanding of where in the
   IETF this work might be pursued and how to extract feasible work
   items were highlighted as important tasks in pursuit of the latter
   goal.  The workshop was very well attended and produced several work
   items that have since been taken up by members of the IETF community.

Status of This Memo

   This memo provides information for the Internet community.  It does
   not specify an Internet standard of any kind.  Distribution of this
   memo is unlimited.

Copyright Notice

   Copyright (c) 2009 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents in effect on the date of
   publication of this document (http://trustee.ietf.org/license-info).
   Please review these documents carefully, as they describe your rights
   and restrictions with respect to this document.









Peterson & Cooper            Informational                      [Page 1]


RFC 5594                   P2P Infrastructure                  July 2009


Table of Contents

   1. Introduction ....................................................3
   2. Scoping of the Problem and Solution Spaces ......................4
   3. Service Provider Perspective ....................................4
      3.1. DOCSIS Architecture and Upstream Contention ................4
      3.2. TCP Flow Fairness and Service Flows ........................5
      3.3. Service Provider Responses .................................6
   4. Application Provider Perspective ................................7
   5. Potential Solution Areas ........................................7
      5.1. Improving Peer Selection: Information Sharing,
           Localization, and Caches ...................................8
           5.1.1. Leveraging AS Numbers ...............................9
           5.1.2. P4P: Provider Portal for P2P Applications ...........9
           5.1.3. Multi-Layer, Tracker-Based Architecture ............10
           5.1.4. ISP-Aided Neighbor Selection .......................11
           5.1.5. Caches .............................................12
           5.1.6. Potential IETF Work ................................12
      5.2. New Approaches to Congestion Control ......................14
           5.2.1. End-to-End Congestion Control ......................15
           5.2.2. Weighted Congestion Control ........................15
      5.3. Quality of Service ........................................16
   6. Applications Opening Multiple TCP Connections ..................17
   7. Costs and Congestion ...........................................18
   8. Next Steps .....................................................18
      8.1. Transport Issues ..........................................19
      8.2. Improved Peer Selection ...................................19
   9. Security Considerations ........................................19
   10. Acknowledgements ..............................................19
   11. Informative References ........................................20
   Appendix A.  Program Committee ....................................21
   Appendix B.  Workshop Participants ................................21
   Appendix C.  Workshop Agenda ......................................24
   Appendix D.  Slides and Position Papers  ..........................25

















Peterson & Cooper            Informational                      [Page 2]


RFC 5594                   P2P Infrastructure                  July 2009


1.  Introduction

   Increasingly, large ISPs are encountering issues with P2P traffic.
   The transfer of static, delay-tolerant data between nodes on the
   Internet is a well-understood problem, but traditional management of
   fairness at the transport level is under strain from applications
   designed to achieve the best end-user transfer rates.  At peak times,
   this results in networks running near absolute capacity, causing all
   traffic to incur delays; the applications that bear the brunt of this
   additional latency are real-time applications like Voice over IP
   (VoIP) and Internet gaming.  To explore how IETF standards work could
   be useful in addressing these issues, the Real-time Applications and
   Infrastructure area directors organized a "P2P Infrastructure"
   workshop and invited contributions from subject matter experts in the
   problem and solution spaces.

   The goals of the workshop were twofold: to understand the technical
   problems that ISPs and end users are experiencing as a result of high
   volumes of P2P traffic, and to begin to understand how the IETF may
   be helpful in addressing these problems.  Gaining an understanding of
   where in the IETF this work might be pursued and how to extract
   feasible work items were highlighted as important tasks in pursuit of
   the latter goal.  The workshop's focus was on engineering solutions
   that promise some imminent benefit to the Internet as a whole, as
   opposed to longer-term research or closed proprietary solutions.
   While public policy must inform work in this space, crafting or
   debating public policy was outside the scope of the workshop.

   Position papers were solicited in the weeks prior to the workshop,
   and a limited number of speakers were invited to present their views
   at the workshop based on these submissions.  This report is a summary
   of all participants' contributions.  The program committee and
   participant list are attached in Appendices A and B, respectively.
   The agenda of the workshop can be found in Appendix C.  A link to the
   presentations given at the workshop and the position papers submitted
   prior to the workshop is in Appendix D.

   The workshop showcased the IETF community's recognition of the impact
   of P2P and other high-volume applications on the Internet as a whole.
   Participants welcomed the opportunity to discuss potential
   standardization work that network operators, applications providers,
   and end users would all find mutually beneficial.  Two transport-
   related work items gained significant traction: designing a protocol
   for very deferential end-to-end congestion control for delay-tolerant
   applications, and producing an informational document about the
   reasoning behind and effects of applications opening multiple
   transport connections at once.  A separate area of interest that
   emerged at the workshop focused on improving peer selection by having



Peterson & Cooper            Informational                      [Page 3]


RFC 5594                   P2P Infrastructure                  July 2009


   networks make more information available to applications.  Finally,
   presenters also covered traditional approaches to multiple service-
   tier queuing such as Diffserv.

2.  Scoping of the Problem and Solution Spaces

   The genesis for the Peer-to-Peer Infrastructure (P2PI) workshop grew
   in large part out of specific pain points that ISPs are experiencing
   as a result of high volumes of P2P traffic.  However, several
   workshop participants felt that the IETF should approach a more
   general space of problems, of which P2P-related congestion may be
   merely one instance.

   For example, high-volume applications besides P2P, whether they
   already exist or have yet to be developed, could cause congestion
   issues similar to those caused by P2P.  The general class of
   congestion problems attributable to always-on, high-volume
   applications require the development of solutions that are reasonable
   for operators, applications, and subscribers.  And while much
   attention has been paid to congestion on access links, increased
   traffic volumes could impact other parts of the network.  Although
   the workshop focused primarily on the specific causes and effects of
   current P2P traffic volumes, it will likely be useful in the future
   for the IETF to consider how to pursue solutions to these larger
   problems.

   Obtaining more data about Internet congestion may also be a helpful
   step before the IETF pursues solutions.  This data collection could
   focus on where in the network congestion is occurring, its duration
   and frequency, its effects, and its root causes.  Although individual
   service providers expressed interest in sharing congestion data,
   strategies for reliably and regularly obtaining and disseminating
   such data on a broad scale remain elusive.

3.  Service Provider Perspective

   To help participants gain a fuller understanding of one specific
   network operator's view of P2P-induced congestion, Jason Livingood
   and Rich Woundy provided an overview of Comcast's network and
   approach to management of P2P traffic.

3.1.  DOCSIS Architecture and Upstream Contention

   In the Data Over Cable Service Interface Specification (DOCSIS)
   architecture [DOCSIS] that is used for many cable systems, there may
   be a single Cable Modem Termination System (CMTS) serving hundreds or
   thousands of residential cable customers.  Each CMTS has multiple




Peterson & Cooper            Informational                      [Page 4]


RFC 5594                   P2P Infrastructure                  July 2009


   DOCSIS domains, each of which typically has a single downstream link
   and a number of upstream links.  Each CMTS is connected through a
   hybrid fiber-coaxial (HFC) network to subscribers' cable modems.

   The limiting resource in this architecture is usually bandwidth, so
   bandwidth is typically the measure used for capacity planning.  As
   with all networks, congestion manifests itself when instantaneous
   load exceeds available capacity.

   In the upstream direction, any cable modem connected to a CMTS can
   make a request to the CMTS to transmit, and requests are randomized
   to minimize collisions.  With many cable modems issuing requests at
   once, the requests may collide, resulting in delays.  DOCSIS does not
   specify a size for cable modem buffers, but buffer delays of one to
   four seconds have been observed with various cable modems from
   different vendors.

   Once the CMTS has granted a cable modem the ability to transmit its
   data PDU, the modem can piggyback its next request on top of that
   data PDU.  In situations with a lot of upstream traffic, piggybacking
   happens more often, which sends heavy upstream users to the front of
   the CMTS queue, ahead of interactive but less-upstream-intensive
   applications.  For example, if the CMTS is granting requests
   approximately every one to three milliseconds, then a cable modem
   transmitting data for a service like VoIP with a packetization delay
   of 20-30 milliseconds may get into contention with another modem on
   the same CMTS that is constantly transmitting upstream and
   piggybacking each new request.  This may explain how heavy upstream
   users ultimately dominate the pipe over more interactive
   applications.  Consequentially, it is imperative that assessments of
   the problem space and potential solutions are mindful of the
   influence that specific layer-2 networks may exert on the behavior of
   Internet traffic, especially when considering the alleviation of
   congestion in an access network.

3.2.  TCP Flow Fairness and Service Flows

   How TCP flow fairness applies to upstream requests to the CMTS is an
   open question.  A CMTS sees many service flows, each of which could
   be a single TCP flow or many TCP flows (or UDP).  The CMTS is not
   aware of the source or destination IP address of a packet until it
   has already been transmitted upstream, so those cannot be used to
   impose flow fairness.

   A particular cable modem can have multiple service flows defined.
   For example, a modem that is also a VoIP endpoint can provision a
   service flow for VoIP that would allow VoIP traffic to avoid the
   upstream request process to the CMTS (and thereby avoid contention



Peterson & Cooper            Informational                      [Page 5]


RFC 5594                   P2P Infrastructure                  July 2009


   with other modems).  The service flow would have upstream capacity
   provisioned for it.  The modem would have a separate service flow for
   best efforts traffic.  Some ISPs provision such a flow for their own
   VoIP offerings; others allow subscribers to pay extra to have
   particular traffic assigned to a provisioned service flow.

   It may also be possible for an ISP to provision such a flow on the
   fly when it recognizes the need for it.  Diffserv [RFC2475] bits set
   by the customer premises equipment could be used to classify flows,
   for example.

3.3.  Service Provider Responses

   In 2005, ISP customers began increasingly complaining about the
   performance of delay-sensitive traffic (VoIP and gaming), due in part
   to the issues arising out of the DOCSIS architecture as described
   above.  At the same time, ISPs were seeing heavy growth in P2P
   traffic and an increasing correlation between high levels of P2P
   activity and packet loss.

   In responding to this situation, cable ISPs have several avenues to
   pursue.  The newest generation of the DOCSIS specification, DOCSIS
   3.0, enables faster transfer rates than most cable systems currently
   support.  While the rollout of DOCSIS 3.0 will provide additional
   capacity, it will likely not obviate the need for congestion
   management in an environment where client software is designed to
   maximize bandwidth consumption regardless of available capacity.

   Congestion management can take many forms; Jason and Rich explained
   the new protocol-agnostic approach that Comcast is currently
   trialing.  Prior to these trials, all traffic was marked as "best
   efforts".  During the trials, all traffic is re-classified as
   "priority".  When a CMTS is approaching peak congestion on a
   particular upstream or downstream port (the "Near Congestion State"),
   some subscribers will have traffic re-classified as "best efforts".
   Both the threshold for determining when a CMTS port is in Near
   Congestion State and the number of minutes it remains in this state
   are parameters being explored during the trials.  To re-classify
   upstream traffic, a new default DOCSIS service flow is used that has
   the same provisioned bandwidth as the "priority" stream but that is
   treated with lower priority.

   The subscribers whose traffic is re-marked will be selected by
   determining whether they have temporarily entered a "Long Duration
   Bulk Consumption State".  This state is achieved by consuming a
   certain amount of bandwidth over a certain period of minutes (both
   are tweakable parameters being explored during the trials).  These
   thresholds will depend on the subscriber's service tier --



Peterson & Cooper            Informational                      [Page 6]


RFC 5594                   P2P Infrastructure                  July 2009


   subscribers who pay for more bandwidth will have higher thresholds.
   The re-marking will not distinguish between multiple users of the
   same subscriber connection, so one family member's P2P usage could
   cause another family member's Web browsing traffic to be lowered in
   priority.  There is no current mechanism for users to determine that
   their traffic has been re-marked.

   By temporarily reducing the traffic priority of subscribers who have
   been consuming bandwidth in bulk for lengthy periods, this congestion
   management technique aims to preserve a good user experience for
   subscribers with burstier traffic patterns, including those using
   real-time applications.  As compared to an approach that reduces
   particular subscribers' bandwidth during periods of congestion, this
   technique eliminates the ability for applications to set their own
   priority levels, but it also avoids the negative connotations that
   some users may associate with bandwidth reductions.

   This approach involves many tweakable parameters.  A large part of
   the trial process is aimed at determining the best settings for these
   parameters, but there may also be opportunities to work with the
   research community to identify the best way to adjust the thresholds
   necessary to optimize the performance of the management technique.

4.  Application Provider Perspective

   Stanislav Shalunov provided an overview of BitTorrent's view of the
   impact of increased P2P traffic volumes and potential mitigations.
   The impact is described here; his proposed solutions (comprising the
   bulk of his talk) are addressed in the appropriate subsections of
   Section 5.

   As uptake in P2P usage has grown, so has end-user latency.  For
   example, a user whose uplink capacity is 250-500 Kbps and whose modem
   buffer has a capacity of 32-64 Kbps may easily fill the buffer
   (unless the modem uses Adaptive Queue Management (AQM), which is
   uncommon).  This can result in delay on the order of seconds, with
   disastrous effects on application performance.  On a cable system
   with shared capacity between neighbors, one neighbor could saturate
   the buffer and affect the latency of another neighbor's traffic.
   Even users with dedicated bandwidth can experience delays as their
   own P2P traffic saturates the link and dominates their own more
   latency-sensitive traffic.

5.  Potential Solution Areas

   The submissions received in advance of the workshop covered a broad
   array of work addressing specific aspects of P2P traffic volume and
   other related issues.  Solution suggestions generally fell into one



Peterson & Cooper            Informational                      [Page 7]


RFC 5594                   P2P Infrastructure                  July 2009


   or more of three topic areas: improving peer selection, new
   approaches to congestion control, and quality-of-service mechanisms.
   The workshop discussions and outcomes in each area are described
   below.

5.1.  Improving Peer Selection: Information Sharing, Localization, and
      Caches

   Peer selection is an integral factor in determining the efficiency of
   P2P networks from both the ISP and the P2P client points of view.
   How peers are selected will determine both network load and client
   performance.

   The way that P2P clients select peers today varies from protocol to
   protocol and client to client but, in general, peers are largely
   oblivious to routing-level and network-topology information.  This
   results in P2P topologies that are agnostic of underlay topologies
   and constraints.

   Approaches to closing this gap generally involve an entity that has
   knowledge of network topology, costs, or constraints (e.g., an ISP)
   making some of this information available to P2P clients or trackers.
   This information may be used to localize traffic based on some metric
   of locality or to otherwise alter peer-selection decisions based on
   the provided network information (hereafter referred to simply as
   "localization").  One special case of this kind of approach would
   help peers find caches containing the content they seek.

   Any alteration to current peer-selection algorithms will have
   engineering trade-offs.  BitTorrent, for example, used randomized
   peer selection by design.  Choosing peers randomly out of a large
   selection helps to average out problems among peers and allows for
   connections to good peers that may be far away.  Randomized peer
   selection also supports "rarest first" piece selection, which allows
   swarms to continue even when the original seed disappears and which
   distributes pieces so that more peers are likely to have pieces of
   interest to other peers.  Any move away from randomized selection
   would have to take these factors into account.

   Although localization has the potential to improve peer selection,
   the incentives for both parties to the information exchange are
   complex.  ISPs may want to move traffic off of their own networks,
   which could motivate them to provide information to peers that has
   the opposite effect of what the peers would expect.  Likewise, peers
   will want the use of the information they receive to result in
   performance improvements; otherwise, they have no incentive to
   consult with the network before selecting peers.  Even when both
   parties find the information sharing to be beneficial, user



Peterson & Cooper            Informational                      [Page 8]


RFC 5594                   P2P Infrastructure                  July 2009


   experiences will not necessarily be uniform depending on the scope of
   the information provided and the peer's location.  Localization
   information could form one component of a peer-selection decision,
   but it will likely need to be balanced against other factors.

   Workshop participants discussed both current research efforts in this
   area and how IETF standards work may be useful in furthering the
   general concept of improved peer selection.  Those discussions are
   summarized below.

5.1.1.  Leveraging AS Numbers

   One simple way to potentially make peer selection more efficient
   would be for a peer to prefer peers within its own Autonomous System
   (AS).  Transfers between peers within the same AS may be faster on
   some networks, although more data is needed to determine the extent
   of the potential improvement.  On mobile networks, for example, the
   utility of AS numbers is limited since they do not correlate to
   geographic location.  Peers may also see improvements by connecting
   to other peers within a specific set of ASes or IP prefixes provided
   by their ISPs.  Some ISPs may have an incentive to expose this
   granularity of information because it will potentially reduce their
   transit costs.

   A case study was conducted with the four most popular BitTorrent
   torrents to determine what the effect of localizing to an AS might
   be.  The swarm sizes for the torrents were 9984, 3944, 2561, and
   2023, with the size distributions appearing to be polynomial.  With
   more than 20 peers in a single AS, peers within an AS could trade
   only with each other, avoiding interdomain traffic.  More than half
   (57%) of peers in the four swarms were in ASes like this.  Thus, in
   these cases connecting to peers within an AS could reduce transit
   traffic by at least 57%.  If the ASes have asymmetric upload and
   download links, however, the resulting user experience may
   deteriorate since each peer's download speed would be limited by
   slower upload speeds.

   With the largest swarm size at 9984, the probability of two peers
   being in the same neighborhood is too low to make localization to the
   neighborhood level worthwhile.  Attempting a simple localization
   scheme, such as the AS localization described above, and determining
   its effectiveness likely makes more sense as a first step.

5.1.2.  P4P: Provider Portal for P2P Applications

   The Provider Portal for P2P Applications (P4P) project [P4P] aims to
   design a framework to enable cooperation between providers and
   applications (including P2P), where "providers" may be ISPs, content



Peterson & Cooper            Informational                      [Page 9]


RFC 5594                   P2P Infrastructure                  July 2009


   distribution networks, or caching services.  In this architecture,
   each provider can communicate information to P2P clients through a
   portal known as an iTracker.  An iTracker could be identified through
   a DNS SRV record (perhaps with its own new record type), a whois
   look-up, or a trusted third party.

   An iTracker has different interfaces for different types of
   information that the provider may want to share.  The core interface
   allows the provider to express the "virtual cost" of its intradomain
   or interdomain links.  Virtual cost may reflect any kind of provider
   preferences and may be based on the provider's choice of metrics,
   including utilization, transit costs, or geography.  It is up to the
   provider to decide how dynamic it wants to be in updating its virtual
   cost determinations.

   In tests of this framework, two parallel swarms were created with
   approximately the same number of clients and similar geographical and
   network distributions, both sharing the same file.  One of the swarms
   used the P4P framework, with the ISP's network topology map as input
   to its iTracker, and the other swarm used traditional peer selection.
   The swarm without P4P saw 98% of traffic to and from peers external
   to the ISP, whereas with P4P that number was 50%.  Download
   completion times for the P4P-enabled swarm improved approximately 20%
   on average.

5.1.3.  Multi-Layer, Tracker-Based Architecture

   The multi-layer, tracker-based P2P scheme described at the workshop
   is a generic example of an architecture that demonstrates how
   localization may be useful in principle.

   In a traditional, tracker-based P2P system, trackers provide clients
   with information about seeds and peers where clients can find the
   content they seek.  A multi-layered tracker architecture incorporates
   additional "local" trackers that provide the same information, but
   only for content located within their own local network scope.
   Client queries are re-directed from the global tracker to the
   appropriate local trackers.  Local trackers may also exist on
   multiple levels, in which case queries would be further re-directed.
   This sort of architecture could also serve hybrid P2P/content
   delivery networks, where the global tracker functions as both a
   tracker and a content server, and local trackers track locally
   provisioned caches in addition to seeds and peers.








Peterson & Cooper            Informational                     [Page 10]


RFC 5594                   P2P Infrastructure                  July 2009


   One challenge in this architecture is determining what "local" means
   for trackers, seeds, and peers.  Locality could be dependent on
   traffic conditions, load balancing, static topology, policy, or some
   other metric.  These same considerations would also be crucial for
   determining appropriate cache placement in a hybrid network.

   This architecture presents in the abstract the problem of re-
   directing from a global entity to a local entity.  Client queries
   need to find their way to the appropriate local tracker.  This can be
   accomplished through an off-path, explicit mechanism where local
   trackers register with the global tracker in advance, or through an
   on-path approach where the network proxies P2P requests.  The off-
   path tracker format approach is preferable for performance and
   reliability reasons.

   Inasmuch as the multi-layer scheme might require ISPs to aid peers in
   finding optimal paths to unauthorized copies of copyrighted content,
   ISPs may be concerned about the legal liability of participating.

5.1.4.  ISP-Aided Neighbor Selection

   ISPs have a lot of knowledge about their networks: everything from
   the bandwidth, geography, and service class of particular nodes to
   overarching routing policies, OSPF and BGP metrics, and distances to
   peering points.  The ISP-aided neighbor selection service described
   below seeks to leverage this knowledge without requiring ISPs to
   reveal any information that could not already be discerned through
   reverse-engineering by client applications.

   The service consists of an "oracle" hosted by an ISP.  The oracle
   receives a list of IP addresses from a network node, sorts the list
   according to its own confidential criteria, and returns the sorted
   list to the node.  The peer ranking provided by the oracle could be
   viewed as a special case of the virtual cost interface described in
   the previous section.

   This service could be used by P2P clients or trackers, or by any
   other application that would benefit from learning its ISP's
   connection preferences.  The oracle could be run as a web server or
   UDP service at a known location (perhaps similar to BIND).

   For interdomain ranking, an ISP could rank its own peers first, or it
   could base its ranking on the AS number of the IPs in the provided
   list.  Another option would be for multiple ISPs to work together to
   have their oracles exchange lists with each other.






Peterson & Cooper            Informational                     [Page 11]


RFC 5594                   P2P Infrastructure                  July 2009


   The main challenge in implementing the oracle service is scalability.
   If peers need to communicate to the oracle the IP address of every
   peer they know, the size of oracle requests may be inordinately
   large.  Additionally, today's largest swarms approach 10000 peers,
   and with every peer requesting a sorted list, the oracle request
   volume will swell.  With the growth of business models dependent upon
   P2P for distribution of content, swarms in the future may be far
   larger, further exacerbating the problem.  Potential mitigations
   include having trackers, instead of peers, issue oracle requests, and
   using other peers' sorted lists as input, rather than always using an
   unsorted list.

   On the other hand, this approach is advantageous from a legal
   liability perspective, because it does not require ISPs to have any
   knowledge of where particular content might be located or to have any
   role in directing peers to particular content.

5.1.5.  Caches

   Deploying caches as peers in P2P networks was suggested as a
   component of multiple proposals put forth at the workshop.  Caches
   may help to ease network load by reducing the need for peers to
   upload to each other and by localizing traffic.

   The two main concerns about P2P caches relate to network capacity and
   legal liability.  For caches to be useful, they will likely need to
   be large (one suggestion was that a 1 TB cache could service 30% of
   requests within a single AS, and a 100 TB cache could service 80% of
   requests).  Large caches will require sizable bandwidth in order to
   avoid contention among peers.  Caches would not be usefully placed
   within an HFC network on a cable system, for example.

   The legal liability attached to hosting a P2P cache likely reduces
   the incentives to do so.  Even under legal regimes where liability
   for caching may be unclear, ISPs and others may view hosting a cache
   as too great of a legal risk to be worthwhile.

5.1.6.  Potential IETF Work

   Much of the localization work discussed at the workshop is still in
   its initial stages, and many questions remain about the value that
   localization provides for varying network and overlay architectures.
   More data is needed to evaluate the effects on both traffic load and
   client performance.  Understanding swarm distributions is important;
   swarms with long tails may not particularly benefit from
   localization.





Peterson & Cooper            Informational                     [Page 12]


RFC 5594                   P2P Infrastructure                  July 2009


   Against this backdrop, the key task for the IETF (as identified at
   the workshop) is to pinpoint incrementally beneficial work items in
   the spaces discussed above.  In the future, it may be possible to
   standardize entire P2P mechanisms but, as a starting point, it makes
   more sense to single out core manageable components for
   standardization.  The focus should be on items that are not so
   specific to one ISP or P2P network that standardization is rendered
   useless.  Ideally, any mechanisms resulting from this work might
   apply to future applications that exhibit the same bandwidth-
   intensive properties as today's P2P file-sharing.

   In considering any of these items, it will be necessary to ensure
   that the information exchanged by networks and applications does not
   harm any of the parties involved.  Not every piece of information
   exchanged will be beneficial or verifiable, and this fact must be
   recognized and accounted for.  Solutions that leave applications or
   networks worse off than they already are today will not gain any
   traction.

   It should also not be assumed that a particular party will be best
   suited to provide a particular kind of information.  For example, an
   ISP may not know what the connection costs are in other ISPs'
   networks, whereas an overlay network that receives cost information
   from several ISPs may have a better handle on this kind of data.
   Standardization of information sharing should not assume the identity
   of particular parties doing the sharing.

   The list of potential work items discussed at the workshop is
   provided below.  Workshop participants showed particular interest in
   pursuing the first three items further.

5.1.6.1.  AS Numbers

   P2P clients are currently reliant on IP-to-AS mapping tables when
   they want to determine AS numbers.  Providing a standard, easier way
   for clients to obtain this information may help to make peer
   selection more efficient on certain networks.

5.1.6.2.  Querying for Preferred Peers

   In situations where a peer or tracker can make requests in real time
   to a service that expresses its ISP's peering preferences,
   standardizing a format for requests and responses may be useful.  The
   focus would be on the communication of the information, not on the
   criteria used to decide preferences.  The information provided to
   peers would have to be crafted to ensure that it protects the privacy
   of other peers and safeguards proprietary network information.




Peterson & Cooper            Informational                     [Page 13]


RFC 5594                   P2P Infrastructure                  July 2009


5.1.6.3.  Local Tracker, iTracker, Oracle, or Cache Discovery

   With the deployment of trackers, iTrackers, oracles, or other
   mechanisms that provide some information specific to a node's
   locality, nodes will need a way to find these resources.  One task
   for the IETF could be to explore a way to do discovery, potentially
   by leveraging an existing discovery protocol (DNS, DHCP, anycast,
   etc.).  Depending on the resource to be discovered, discovery may
   require only a simple look-up, or it may require a more complex
   determination of which resource is "closest" to the node issuing the
   request.

5.1.6.4.  ISP Account Usage Information

   Where ISP subscribers are bound by network usage policies or volume-
   based quotas, it may be useful to have a standard way of
   communicating the subscriber's current usage status.  This would be
   similar to information about how many minutes of cell phone airtime
   are left in a subscriber's billing cycle.  Applications could use
   this information to make decisions about when and how to transfer
   data.  One challenge in implementing such a standard would be support
   for potentially limitless different ISP business models.  The level
   of granularity that an ISP is able to provide may also be constrained
   depending on the pricing model and how dynamic the information is
   expected to be.

5.1.6.5.  Tracker Formats

   A multi-layered tracker approach could potentially be aided by a
   standard tracker format for re-directing from a global tracker to a
   local tracker.  While the extent to which existing trackers will be
   willing to consult with other trackers is unclear, the re-direction
   format may have an analog in another context -- many HTTP servers
   build their own indexes of mirror information for a similar purpose,
   though these are not standardized.  If the two problem spaces prove
   to be similar enough, there may be room to standardize a format
   across both.

5.2.  New Approaches to Congestion Control

   One recent informal survey presented at the workshop found that ISPs
   perceive traffic volumes from heavy users to be a problem, but no
   single congestion management tool has been put to wide use.  Within
   developer and research communities, congestion issues raised by
   increased P2P traffic volumes have spurred new thinking about
   congestion-control mechanisms at both the transport layer and the
   application layer.  The subsections below explore some of these new
   ideas and highlight areas where IETF work may be appropriate.



Peterson & Cooper            Informational                     [Page 14]


RFC 5594                   P2P Infrastructure                  July 2009


5.2.1.  End-to-End Congestion Control

   As noted previously, uptake in P2P usage can result in perceptible
   end-user latency on the order of seconds for interactive
   applications.  One approach to resolving this "round-trip time (RTT)
   in seconds" problem would be for P2P clients to implement better
   congestion control that keeps the bottleneck full while yielding to
   keep the delay of competing traffic low.  Such an algorithm has been
   implemented in BitTorrent's client by continuously sampling one-way
   delay (separating propagation from queuing delay) and targeting a
   small queuing delay value.  This essentially approximates a scavenger
   service class in an end-to-end congestion-control mechanism by
   forcing bulk, elastic traffic to yield to competitors under
   congestion.

   In a similar vein, the P4P framework supports a component that allows
   applications to mark traffic as "bulk data" (not time sensitive).
   Applications adjust their behavior according to the feedback they
   receive from such markings.

   Experimenting with the standardization of these kinds of techniques
   or any congestion-control framework with design goals that differ
   from those of TCP may be helpful work for the IETF to pursue.

5.2.2.  Weighted Congestion Control

   Congestion control has typically been implemented at a protocol level
   as an optional, cooperative effort between endpoints experiencing
   congestion, but in looking for a long-term approach to congestion
   control, we may need a more rigorous way for available bandwidth to
   be allocated by and between the hosts using a network.  The idea
   behind weighted congestion control is to allow hosts to give more
   weight to interactive applications during times of congestion.

   Comparing such an approach with Diffserv showcases its strengths and
   weaknesses.  Unlike Diffserv, weighted congestion control could be
   implemented on hosts with a simple extension to socket APIs (although
   consensus among OSes would be necessary for portability).  Through
   weighted congestion control, control resides with the host, whereas
   even when Diffserv APIs are available, it is difficult for a host to
   know that the network is complying with its classifications.  With
   weighted congestion control, hosts need some disincentive to setting
   their weights at maximum levels, whereas Diffserv was not designed
   for individual users to employ.  Both approaches must rely on traffic
   senders to set policies, meaning that the congestion issues stemming
   from P2P use on the receiver side are not aided by either mechanism.





Peterson & Cooper            Informational                     [Page 15]


RFC 5594                   P2P Infrastructure                  July 2009


   With Diffserv, a light user may waste his or her priority connecting
   to a heavy user on another network, which is not a problem with host-
   controlled weighting.

   Weighted congestion control is just one example of a generalized set
   of features that characterize useful approaches to congestion
   control.  These characteristics include full user control of
   priorities within a user's own scope and no possibility of
   interpreting ISP behavior as discriminatory.  The former means that
   ISPs should not override user decisions arbitrarily (though this does
   not preclude an ISP from offering prioritization as an option).  The
   latter means that the metric for decision-making needs to obviate
   suspicion of ISP motivations.

   One metric that meets these criteria is a harm (cost) metric, where
   cost is equal to the amount of data that was not served to its
   destination.  Using this metric, cost is greatest when traffic peaks
   are greatest.  It allows for a policy of not sending too much data
   during times of congestion, without specifying exactly how much is
   too much.  The cost metric could be used either for a Diffserv
   approach or for weighted congestion control.

   One important limitation on ISPs from a congestion-control
   perspective is that they do not have a window into congestion on
   other ISPs' networks.  Solving this problem requires a separate
   mechanism to express congestion across domains.

   One potential avenue for the IETF or IRTF to pursue would be to
   establish a long-term design team to assess congestion problems in
   general and the long-term effects of any proposed quick fixes.  These
   issues are not necessarily confined to P2P and should be viewed in
   the broader context of massive increases in bandwidth use.

5.3.  Quality of Service

   Although ISPs have implemented a wide variety of short-term
   approaches to dealing with congestion, several of these may not be
   viable in the long term.  For example, some ISPs have found that
   using deep packet inspection to change the delivery characteristics
   of certain traffic at times of congestion is more cost effective than
   adding additional bandwidth.  Over time, this approach could lead to
   a cat-and-mouse game where applications providers continually adapt
   to avoid being correctly classified by Deep Packet Inspection (DPI)
   equipment.  Similarly, ISPs implementing traffic analysis to identify
   P2P traffic may find that, in the long run, the overhead required of
   an effective classification scheme will be excessive.





Peterson & Cooper            Informational                     [Page 16]


RFC 5594                   P2P Infrastructure                  July 2009


   Quality of service (QoS) arrangements may be more suitable in the
   long term.  One approach that distinguishes certain classes of
   traffic during times of congestion was described in Section 3.3.  A
   standardized mechanism that may be useful for implementing QoS is
   Differentiated Services Code Points (DSCP) [RFC2474].

   With DSCP, devices at the edge of the network mark packets with the
   service level they should receive.  Nodes within the network do not
   need to remember anything about service flows, and applications do
   not need to request a particular service level.  Users effectively
   avoid self-interference through service classification.

   Although DSCP may have many uses, perhaps the most relevant to the
   P2P congestion issue is its ability to facilitate usage-based
   charging.  User pricing agreements that charge a premium for real-
   time traffic and best-effort traffic could potentially shape user
   behavior, resulting in reduced congestion (although ISPs would need a
   mechanism to mitigate the risk of charging subscribers for things
   like unintentional malware downloads or DoS attacks).  DSCP could
   also be used to limit a user's supply of high-priority bandwidth,
   resulting in a similar effect.

   Equipment to support DSCP is already available.  Although there has
   been some concern about a perceived lack of DSCP deployment, it is
   widely used by enterprise customers, and growth has been strong due
   to uptake in VoIP at the enterprise level.

   However, DSCP still faces deployment hurdles on many networks.
   Perhaps the largest barrier of all to wide deployment is the lack of
   uniform code points to be used across networks.  For example, the
   latest Windows Vista API marks voice traffic as CS7, above the
   priority reserve for router traffic.  To properly take advantage of
   this change, every switch will need to re-mark all traffic.  In
   addition, disparate ISPs are currently without a means of verifying
   each others' markings and thus may be unwilling to trust the markings
   they receive.

6.  Applications Opening Multiple TCP Connections

   The workshop discussions about P2P congestion spurred a related
   discussion about applications (P2P or otherwise) that open multiple
   TCP connections.  With multiple users sharing one link, TCP flow
   fairness gives users with multiple open connections a larger
   proportion of bandwidth.  Since some P2P protocols use multiple open
   connections for a single file transfer and users often pursue
   multiple transfers at once, this can cause a P2P user to have many
   more open connections at once than other users on the same link.  The
   same is true for users of other applications that open multiple



Peterson & Cooper            Informational                     [Page 17]


RFC 5594                   P2P Infrastructure                  July 2009


   connections.  A single user with multiple open connections is not
   necessarily a problem on its face, but the fact that fairness is
   determined per flow rather than per user leaves that impression.
   Workshop participants thought it may be useful for the IETF to
   provide some information about such situations.

7.  Costs and Congestion

   Workshop participants expressed diverging opinions about how much the
   cost of transferring data -- as experienced by ISPs and, by
   extension, their subscribers -- should factor into IETF thinking on
   P2P traffic issues.

   On one hand, bandwidth costs may be significant, even when viewed in
   isolation from congestion issues.  Some estimates put the total cost
   of shipping 1 GB between $0.10 and $2.  The cost of transit bandwidth
   in markets where subscribers are charged flat rates appears to have
   leveled off and may no longer be getting cheaper.  Thus, it may be
   reasonable to expect more service providers to move to volume-based
   pricing (where they have not already done so) as a means to control
   congestion and increase revenues.  This is only feasible if bandwidth
   consumption is visible to end users, which argues for some mechanism
   of exposing quotas and usage to applications.  However, expressing
   cost information may be outside of the technical purview of the IETF.

   On the other hand, congestion can be viewed merely as a manifestation
   of cost.  An ISP that invests in capacity could be considered to be
   paying to relieve congestion.  Or, if subscribers are charged for
   congesting the network, then cost and congestion could be viewed as
   one and the same.  The distinction between them may thus be
   artificial.

   Workshop participants felt that the issues highlighted here may be
   useful fodder for IRTF work.

8.  Next Steps

   The IETF community recognizes the significance of both increasing P2P
   traffic volumes and network load at large.  The importance of
   addressing the impact of high-volume, delay-tolerant data transfer on
   end-user experiences was highly apparent at the workshop.

   At the conclusion of the workshop and in the days following, it
   became clear that the largest areas of interest fell into two
   categories: transport-related issues and improved peer selection.






Peterson & Cooper            Informational                     [Page 18]


RFC 5594                   P2P Infrastructure                  July 2009


8.1.  Transport Issues

   Two main transport-related work items evolved out of the workshop.
   The first was the creation of a standardized, delay-based, end-to-end
   congestion-control mechanism that applications such as P2P clients
   could use to reduce their own impact on interactive applications in
   use on shared links (as described in Section 5.2.1).  The second was
   an informational document that describes the current practice of P2P
   applications opening multiple transport connections and that makes
   recommendations about the best practices for doing so (as discussed
   in Section 6).

8.2.  Improved Peer Selection

   Participants expressed strong interest in further pursuing the range
   of concepts described in Section 5.1 that support mechanisms for
   information sharing between networks and applications to help improve
   peer selection.  Adding to the appeal of this topic is its potential
   utility for applications other than P2P that may also benefit from
   information about the network.  Because the scope of potential
   solutions discussed at the workshop was broad, extracting out the
   most feasible pieces to pursue is the necessary first step.

9.  Security Considerations

   The workshop discussions covered a range of potential engineering
   activities, each with its own security considerations.  For example,
   if networks are to provide preference or topology information to
   applications, the applications may desire some means of verifying the
   authenticity of the information.  As the IETF community begins to
   pursue specific avenues arising out of this workshop, addressing
   relevant security requirements will be crucial.

10.  Acknowledgements

   The IETF would like to thank MIT, which hosted the workshop, and all
   those people at MIT and elsewhere who assisted with the organization
   and logistics of the workshop.

   The IETF is grateful to the program committee (listed in Appendix A)
   for their time and energy in organizing the workshop, reviewing the
   position papers, and crafting an event of value for all participants.
   The IETF would also like to thank the scribes, Spencer Dawkins and
   Alissa Cooper, who diligently recorded the proceedings during the
   workshop.






Peterson & Cooper            Informational                     [Page 19]


RFC 5594                   P2P Infrastructure                  July 2009


   A special thanks to all the participants in the workshop (listed in
   Appendix B) who took the time, came to the workshop to participate in
   the discussions, and put in the effort to make this workshop a
   success.  The IETF especially appreciates the effort of those that
   prepared and made presentations at the workshop.

11.  Informative References

   [DOCSIS]   CableLabs, "DOCSIS Specifications - DOCSIS 2.0 Interface",
              2008, <http://www.cablemodem.com/specifications/
              specifications20.html>.

   [P4P]      Xie, H., Yang, Y., Krishnamurthy, A., and A. Silberschatz,
              "P4P: Provider Portal for Applications", August 2008,
              <http://uwnews.org/relatedcontent/2008/August/
              rc_parentID43281_thisID43282.pdf>.

   [RFC2474]  Nichols, K., Blake, S., Baker, F., and D. Black,
              "Definition of the Differentiated Services Field (DS
              Field) in the IPv4 and IPv6 Headers", RFC 2474,
              December 1998.

   [RFC2475]  Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z.,
              and W. Weiss, "An Architecture for Differentiated
              Services", RFC 2475, December 1998.


























Peterson & Cooper            Informational                     [Page 20]


RFC 5594                   P2P Infrastructure                  July 2009


Appendix A.  Program Committee

      Dave Clark, MIT

      Lars Eggert, TSV AD

      Cullen Jennings, RAI AD

      John Morris, Center for Democracy and Technology

      Jon Peterson, RAI AD

      Danny Weitzner, MIT

Appendix B.  Workshop Participants

      Vinay Aggarwal, Deutsche Telekom Labs, TU Berlin

      Marvin Ammori, Free Press

      Loa Andersson, Acreo AB

      Jari Arkko, Ericsson

      Alan Arolovitch, PeerApp

      Timothy Balcer

      Mary Barnes, Nortel

      Colby Barth, Cisco Systems

      John Barlett, NetForecast

      Salman Baset, Columbia University

      Chris Bastian, Comcast

      Matthew Bell, Charter Communications

      Donald Bowman, Sandvine Inc.

      Scott Bradner, Harvard University

      Bob Briscoe, British Telecom

      David Bryan, SIPeerior Technologies




Peterson & Cooper            Informational                     [Page 21]


RFC 5594                   P2P Infrastructure                  July 2009


      Rex Bullinger, National Cable & Telecommunications Association

      Gonzalo Camarillo, Ericsson

      Mary-Luc Champel, Thomson

      William Check, NCTA

      Alissa Cooper, Center for Democracy and Technology

      Patrick Crowley, Washington University

      Leslie Daigle, Internet Society

      Spencer Dawkins

      John Dickinson, Bright House Networks

      Lisa Dusseault, CommerceNet

      Lars Eggert, Nokia Research Center

      Joe Godas, Cablevision

      Vernon Groves, Microsoft

      Daniel Grunberg, Immedia Semiconductor

      Carmen Guerrero, University Carlos III Madrid

      Vijay Gurbani, Bell Laboratories/Alcatel-Lucent

      William Hawkins III, ITT

      Volker Hilt, Bell Labs, Alcatel-Lucent

      Russell Housley, Vigil Security, LLC

      Robert Jackson, Camiant

      Cullen Jennings, Cisco Systems

      Paul Jessop, RIAA

      XingFeng Jiang, Huawei

      Michael Kelsen, Time Warner Cable




Peterson & Cooper            Informational                     [Page 22]


RFC 5594                   P2P Infrastructure                  July 2009


      Tom Klieber, Comcast

      Eric Klinker, BitTorrent Inc.

      Umesh Krishnaswamy

      Gregory Lebovitz, Juniper

      Erran Li, Bell-Labs

      Jason Livingood, Comcast

      Andrew Malis, Verizon

      Enrico Marocco, Telecom Italia Lab

      Marcin Matuszewski, Nokia

      Danny McPherson, Arbor Networks, Inc.

      Michael Merritt, AT&T

      Lyle Moore, Bell Canada

      John Morris, Center for Democracy and Technology

      Jean-Francois Mule, Cablelabs

      David Oran, Cisco Systems

      Reinaldo Penno, Juniper Networks

      Jon Peterson, NeuStar

      Howard Pfeffer, Time Warner Cable

      Laird Popkin, Pando Networks

      Stefano Previdi, Cisco systems

      Satish Putta

      Eric Pescorla

      Benny Rodrig, Avaya

      Damien Saucez, UCLouvain (UCL)




Peterson & Cooper            Informational                     [Page 23]


RFC 5594                   P2P Infrastructure                  July 2009


      Henning Schulzrinne, Columbia University

      Michael Sheehan, Juniper Networks

      Don Shulzrinne, Immedia Semiconductor

      David Sohn, Center for Democracy and Technology

      Martin Stiemerling, NEC

      Clint Summers, Cox Communications

      Robert Topolski

      Mark Townsley, Cisco Systems

      Yushun Wang, Microsoft

      Hao Wang, Yale University

      Ye Wang, Yale University

      David Ward, Cisco

      Nicholas Weaver, ICSI

      Daniel Weitzner, MIT

      Magnus Westerlund, Ericsson

      Thomas Woo, Bell Labs

      Steve Worona, EDUCAUSE

      Richard Woundy, Comcast

      Haiyong Xie

      Richard Yang, Yale University

Appendix C.  Workshop Agenda

   1.  Welcome/Note Well/Intro Slides
       Cullen Jennings

   2.  Service Provider Perspective (Comcast)
       Rich Woundy and Jason Livingood




Peterson & Cooper            Informational                     [Page 24]


RFC 5594                   P2P Infrastructure                  July 2009


   3.  Application Designer Perspective (BitTorrent)
       Stanislav Shalunov

   4.  Lightning Talks & General Discussion
       Robb Topoloski
       Nick Weaver
       Leslie Daigle

   5.  Localization and Caches
       Laird Popkin and Haiyong Xie
       Yu-Shun Wang
       Vinay Aggrawal

   6.  New Approaches to Congestion
       Bob Briscoe
       Marcin Matuszewski

   7.  Quality of Service
       Mary Barnes
       Henning Schulzrinne

   8.  Conclusions & Wrap-Up

Appendix D.  Slides and Position Papers

   Slides and position papers are available at http://
   trac.tools.ietf.org/area/rai/trac/wiki/PeerToPeerInfrastructure.

   Position papers:

   Nick Weaver - The case for "Ugly Now" User Fairness

   Paul Jessop - Position paper of the RIAA

   Nikloaos Laotaris, Pablo Rodriguez, Laurent Massoulie - ECHOES: Edge
   Capacity Hosting Overlays of Nano Data Centers

   Bruce Davie, Stefano Previdi, Jan Medved, Albert Tian - Peer
   Selection Guidance

   Marie-Jose Montpetit - Community Networks: getting P2P out of prison
   - the next steps

   D. Bryan, S. Dawkins, B. Lowekamp, E. Shim - Infrastructure-related
   Attributes of App Scenarios for P2PSIP

   Jiang XingFeng - Analysis of the Service Discovery in DHT network




Peterson & Cooper            Informational                     [Page 25]


RFC 5594                   P2P Infrastructure                  July 2009


   R. Penno - P2P Status and Requirements

   Patrick Crowley and Shakir James - Symbiotic P2P: Resolving the
   conflict between ISPs and BitTorrent through mutual cooperation

   Robb Topolski - Framing Peer to Peer File Sharing

   M. Stiemerling, S. Niccolini, S. Kiesel, J. Seedorf - A Network
   Cooperative Overlay System

   Y. Wang, S. Tan, R. Grove - Traffic Localization with Multi-Layer,
   Tracker-Based Peer-to-Peer Content Distribution Architecture

   Haiyong Xie, Y. Richard Yang, Avi Silberschatz, Arvind Krishnamurthy,
   Laird Popkin - P4P: Provider Portal for P2P Applications

   Michael Merritt, Doug Pasko, Laird Popkin - Network-Friendly Peer-to-
   Peer Services

   Camiant (Jackson) - Camiant Submission

   Jason Livingood, Rich Woundy - Comcast Submission

   Benny Rodrig - Enterprise IP Networks and the P2P Traffic Load Impact

   Ted Hardie - Peer-to-Peer traffic and "Unattended Consequences"

   Jiang XingFeng, Ning Zong - Content Replication for Internet P2P

   Applications

   Sandvine (Dundas) - Analysis of Traffic Demographics in Broadband
   networks

   Sandvine (Dundas) - Traffic Management in a World with Network
   Neutrality

   Stanislav Shalunov - Users want P2P, we make it work

   R. Cuevas, A. Cuevas, I. Martinez-Yelmo, C. Guerrero - Internet scale
   mobility service: a case study on building a DHT based service for
   ISPs

   M. Barnes, B. McCormick - Peer to Peer Infrastructure Considerations

   Henning Schulzrinne - Encouraging Bandwidth Efficiency for Peer-to-
   Peer Applications




Peterson & Cooper            Informational                     [Page 26]


RFC 5594                   P2P Infrastructure                  July 2009


   Damien Saucez, Benoit Donnet, Olivier Bonaventure, Dimitri
   Papdimitriou - Towards an Open Path Selection Architecture

   Eric Rescorla - Notes on P2P Blocking and Evasion

   Vinay Aggrawal, Anja Feldmann - ISP-Aided Neighbor Selection in P2P
   Systems

   Enrico Marocco, Vijay K. Gurbani, Volker Hilt, Ivica Rimac, Marco
   Tomsu - Peer-to-Peer Infrastructure: A Survey of Research on the
   Application-Layer Traffic Optimization Problem and the Need for Layer
   Cooperation

   Tony Moncaster, Bob Briscoe, Louise Burness - Is There a Problem With
   Peer-to-peer Traffic?

   David Sohn, Alissa Cooper - Peer-to-Peer Infrastructure
   Considerations

   Bob Briscoe, Lou Burness, Tony Moncaster, Phil Eardley - Solving this
   traffic management problem... and the next, and the next

   Hannes Tschofenig, Marcin Matuszewski - Dealing with P2P Traffic in
   an Operator Network

   Jean-Francois Mule - CableLabs submission

   Alan Arolovitch - Peer-to-peer infrastructure: Case for cooperative
   P2P caching

   Leslie Daigle - Defining Success: Questions for the Future of the
   Internet and Bandwidth-Intensive Activities

   William Check, Rex Bullinger -- NCTA Position Paper

   Jari Arkko - Incentives and Deployment Considerations for P2PI
   Solutions














Peterson & Cooper            Informational                     [Page 27]


RFC 5594                   P2P Infrastructure                  July 2009


Authors' Addresses

   Jon Peterson
   NeuStar
   USA

   EMail: jon.peterson@neustar.biz


   Alissa Cooper
   Center for Democracy & Technology
   1634 Eye St. NW, Suite 1100
   Washington, DC  20006
   USA

   EMail: acooper@cdt.org



































Peterson & Cooper            Informational                     [Page 28]