<?xml version="1.0" encoding="utf-8" ?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns="http://purl.org/rss/1.0/">




    



<channel rdf:about="http://www.ripe.net/ripe/docs/current-ripe-documents/information-services-documents/RSS">
  <title>Information Services Documents</title>
  <link>http://www.ripe.net</link>

  <description>
    
      
    
  </description>

  

  
            <syn:updatePeriod>daily</syn:updatePeriod>
            <syn:updateFrequency>1</syn:updateFrequency>
            <syn:updateBase>2010-12-16T11:06:27Z</syn:updateBase>
        

  <image rdf:resource="http://www.ripe.net/logo.png"/>

  <items>
    <rdf:Seq>
      
        <rdf:li rdf:resource="http://www.ripe.net/ripe/docs/ripe-430"/>
      
      
        <rdf:li rdf:resource="http://www.ripe.net/ripe/docs/ripe-353"/>
      
      
        <rdf:li rdf:resource="http://www.ripe.net/ripe/docs/ripe-200"/>
      
      
        <rdf:li rdf:resource="http://www.ripe.net/ripe/docs/ripe-158"/>
      
    </rdf:Seq>
  </items>

</channel>


  <item rdf:about="http://www.ripe.net/ripe/docs/ripe-430">
    <title>Hosting A Sponsored RIPE NCC Test Traffic Measurement (TTM) node</title>
    <link>http://www.ripe.net/ripe/docs/ripe-430</link>
    <description>The TTM service relies on the support of paying customers to ensure that there are a large number of nodes on the network.</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>The TTM service relies on the support of paying   customers to ensure that there are a large number of nodes on the network.   In order for TTM to be useful for a wide range of users, it is sometimes   necessary to place nodes in locations where there is no customer to fund   an installation. In these instances, and at its discretion, the RIPE   NCC will sponsor TTM nodes, either fully or partially. For more information   about the RIPE NCC TTM Service, please see:<br /> <a class="internal-link" href="resolveuid/8cd0262a77fa7bf18ff6dcc84c044962">http://www.ripe.net/ttm</a></p>
<h2 class="western">Practicalities</h2>
<p>All sponsored hosts are responsible for the   provision of:</p>
<ul>
<li>Space in a data centre for the TTM equipment</li>
<li>Sufficient power and cooling</li>
<li>All of the infrastructure that is required to connect the node to the Internet</li>
<li>Remote hands support.</li>
</ul>
<p>The RIPE NCC will provide TTM equipment for   fully sponsored hosts. Partially sponsored hosts will need to provide server   hardware. The RIPE NCC will provide the necessary Global Positioning System   (GPS) antenna equipment to all sponsored hosts. No TTM service fees will   be charged to any sponsored host.</p>
<h2 class="western">Sponsorship Criteria</h2>
<p>This document lays out the criteria used to   select a site for sponsorship. Although these guidelines cover a range   of site/host requirements, fulfilling all these requirements does not automatically   entitle the host/site to receive a sponsored node. Similarly, those hosts/sites   not meeting all the requirements are not automatically excluded.</p>
<p>Preference will be given to neutral and independent   bodies, such as academic or not-for-profit organisations, and to those   organisations that work to support and promote the development of the Internet.   Commercial organisations are not normally considered as candidates for   sponsorship.</p>
<h2 class="western">Requirements</h2>
<p>1. TTM nodes should be located:</p>
<ul>
<li>Within a major Autonomous System (AS) or;</li>
<li>At a point where a large number of ASs peer, such as a major Internet Exchange or;</li>
<li>At any other point of significant interest, such in proximity to a root DNS server</li>
</ul>
<p>This is to ensure that the node serves as   a good reference point and so any conditions, such as bottlenecks, which   might distort the general connectivity overview, can be avoided.</p>]]></content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>mark</dc:creator>
    <dc:rights></dc:rights>
    
      <dc:subject>ttm</dc:subject>
    
    <dc:date>2008-04-05T22:00:00Z</dc:date>
    
    <dc:type>RIPE Document</dc:type>
  </item>


  <item rdf:about="http://www.ripe.net/ripe/docs/ripe-353">
    <title>ASN Missing In Action: A Comparison of RIR Statistics and RIS Reality</title>
    <link>http://www.ripe.net/ripe/docs/ripe-353</link>
    <description>ripe-353: In this paper, we look at Autonomous System Number (ASN) assignments by the Regional Internet Registries (RIRs) and the number of unique ASNs seen by routers on the Internet. </description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>In this paper, we look at Autonomous System Number (ASN) assignments by the Regional Internet Registries (RIRs) and the number of unique ASNs seen by routers on the Internet.</p>
<p>Due to heavy graphic use, this RIPE Document is best read in .pdf format.</p>
<p>On request, we will supply a .html version.</p>]]></content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>mark</dc:creator>
    <dc:rights></dc:rights>
    
      <dc:subject>as numbers</dc:subject>
    
    
      <dc:subject>ris</dc:subject>
    
    <dc:date>2005-10-09T22:00:00Z</dc:date>
    
    <dc:type>RIPE Document</dc:type>
  </item>


  <item rdf:about="http://www.ripe.net/ripe/docs/ripe-200">
    <title>RIPE NCC Routing Information Service</title>
    <link>http://www.ripe.net/ripe/docs/ripe-200</link>
    <description>This document discusses the Routing Information Service (RIS), a project proposed as a new activity of the RIPE NCC in the RIPE NCC activity plan for 1999 and 2000.</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<h2>Abstract:</h2>
<p>This document discusses the Routing Information Service (RIS), a project proposed as a new activity of the RIPE NCC in the RIPE NCC activity plan for 1999 and 2000 [1, 2]. The document gives an overview of the project, discusses the implementation and mentions a couple of points that have to be addressed in future design documents. This document is intended to solicit input from interested parties.</p>
<h2>Introduction</h2>
<h3>Outline of this document</h3>
<p>This document discusses the Routing Information Service (RIS), a project proposed as a new activity of the RIPE NCC in the RIPE NCC activity plan for 1999 and 2000.<br /><br />The outline of this document is as follows: section 1.2 gives the necessary background for this project. The next section 1.3 briefly discusses which tools are already available and show why the RIS is needed. The next section (1.4) gives an overview of the goals for the RIS. Section 1.5 shows the<br />basic setup up the RIS.</p>
<p>In order to prove the concept and to get a feeling for the data-volumes and other problems involved in setting up this service, a prototype was developed. This prototype is discussed in section 2.</p>
<p>The design of the final system is discussed in section 3. The prototype also showed that there are a number of open questions that have to be answered before the design is finalized. These are discussed in section 4.The project is closely related to the IRR/Reality Checking project [3] and<br />section 5 discusses the interface between the two.  Collaboration with other, related projects is discussed in section 6. Finally, the implementation schedule is discussed in section 7.</p>
<h2>Background</h2>
<p>In general, the Internet consists of large number of interconnected regional national and international backbones. The backbones often peer or exchange traffic and routing information with one another at Internet exchange points. These exchange points can be considered the "core'' of the Internet. Backbone providers participating in the core must maintain a complete reachability information or default free routing table of all globally visible network-layer address reachable throughout the Internet.</p>
<p>From a routing point of view, however, the Internet can be considered to be partitioned into a number of independent sub-networks, the so-called Autonomous Systems (AS's). The Autonomous System's are connected to one or more Autonomous Systems. From this viewpoint, it follows that routing in the Internet can be divided into two domains: internal, or inside an AS, and external, or between AS's. At the boundary of each AS, border routers exchange reachability information to destination IP address blocks or prefix, for both transit networks and networks originating in in that domain.</p>
<p>This project only deals with external routing, tools to study internal routing have been developed by a number of router vendors as well as others. This project also focuses on so-called default-free routers. A default-free router is a router that actively decides where to send packets with a destination outside the AS to which the router belongs, and not forward it, by default, to another router.</p>
<p>How IP packets are routed from one AS to another, is is based on propagating information about network entities (IP address prefixes) and routing policies between them through the network. The commonly used protocol for exchanging this information is the Border Gateway Protocol, version 4 (BGP4) [4]. BGP is an incremental protocol that sends update information only upon changes in network topology or routing policy. As a path vector routing protocol, BGP limits the distribution of a router's reachability information to its peers or neighbor routers.</p>
<p>A path is a sequence of intermediate autonomous systems between source and destination routers that form a directed route for packets to travel. Router configuration files allow the stipulation of routing policies that may specify the filtering of specific routers, or modification of path attributes sent to neighbor routers. Routers may be configured to make policy decisions based on both the announcement of routes from peers and accompanying attributes and local policies. The attributes in the announcements may serve as hints to routers to choose from alternate paths to a given destination.</p>
<p>Backbone border routers at core locations may have 50 or more external peers as well as large number of intra-domain peering sessions with internal backbone routers. After each router makes a new local decision on the best route to a destination, it will sent that route, or path information along with accompanying distance metrics and path attributes to each of its peers. As this reachability information travels through the network, each router along the path appends its unique AS number to a list in the BGP message.This list is the route's AS-PATH. An AS-PATH in connection with a prefix provides a specific handle for a one-way transit route through the network.</p>
<p>Routing information in BGP appears as a series of announcements that either update or withdraw a route within the network. A route update indicates a router either has learned of a new network attachment or has made a policy decision to prefer another route to a certain network destination. Route withdrawals are sent when a router makes a new decision that a network is no longer reachable. A BGP update may contain multiple route announcements and withdrawals. In stable routing environment routing updates should be very less except when policies changes and Addison of new physical networks. In reality the number of BGP updates exchanged per day in the Internet core is one or more orders of magnitude larger than expected [6].</p>
<p>From routing updates routers maintain a so-called routing table containing information about topology and policies (see [5] for more details). From the information in the routing table, a forwarding table is extracted every time a route is modified. The forwarding table tells the router to which interface a packet with a certain IP-prefix has to be sent.</p>
<p>Both the routing and forwarding tables are large, 64k prefixes or more and can change very rapidly. Routers therefore only maintain the current tables, as they do not need more information for their operations. This set-up has several operational consequences.</p>
<p>First of all, it is easy to determine for a network operator of certain AS, if and how another AS can be reached. All he has to do, is look at the current routing table for the path from his AS to the target AS. This would be sufficient for one-way communication, but in practice, most communication is two-way and there is no way for the network operator to tell if the target AS has a route back to his AS.</p>
<p>Related to this is that reachability metrics are limited to what an observer at a certain AS can see. For example, it will be easy to define a metric to describe which part of the Internet can be reached from this AS but the equally interesting opposite metric, which part of the Internet can reach our AS, is impossible to extract.</p>
<p>Finally, the fact that only the current table is maintained, means that any history about the route will be lost forever. However, historic information is essential when trying to detect instabilities or debug problems that only show up every once in a while. For example, if a user complains that a certain site cannot be reached at certain times, looking at the current table is not going to be of any use, as the site is either reachable or it is not. The routing table does not give any clue when the route was last announced or withdrawn.</p>
<h3>Existing tools</h3>
<p>Over the years, several tools to access routing information have been developed, such as: BGP-routing table dump tools and the well-known traceroute and ping programs. Traceroute combined with path information shows how site can be reached, ping shows if end-to-end two-way communication to a site is possible. All these programs have in common that they only deal with the present situation and one way from observers network. In order get the complete picture of end-end-end communication we often have to look for reachability from remote location to your own network.</p>
<p>One possibility is to use a so-called Looking Glass. Looking Glasses provide access to the routers of the remote AS, allowing an observer to see how traffic from the remote AS is routed back to his network (similar to a traceroute on the remote AS) and thus determine the reachability of the observer's network from the remote AS (prefix and  AS-PATH).</p>
<p>However, not all sites have installed this facility and the Looking Glass only provides information about the AS where it has been installed. In order to find which sites can reach a certain AS, one would have to loop over the Looking Glasses at all AS's. This is not practical. Finally, the Looking Glass, again, provides no information about the development of the routing over time.</p>
<p>Other tools include ASExplorer [9] and RouteTracker. Both are developed by Merit and are being used to collect routing announcements from 5 core locations in the United States. However, these are tools primarily intended for research purposes and not for network operators.</p>
<p>In short, it is time for a tool that combines information from several default-free core locations in RIPE region. This is the Routing Information Service.</p>
<p><img alt="Basic Set Up of the Routing Information Service" class="image-inline captioned" src="resolveuid/1c25444a1f7a2cb8c09642db7513d309" /></p>
<p><i>Figure 1: Basic set-up of the Routing Information Service </i></p>
<h2>Goals of the Routing Information Service</h2>
<p>The goal of the Routing Information Service (RIS) is to collect routing information between Autonomous Systems (AS) and their development over time from default free core the Internet. The RIS will collect and store default free BGP announcements as a function of time from several locations and provide that information to the users of the service, allowing them to see the full picture with all routes that are currently anywhere and their development over time. In other words, it can be regarded as one integrated Looking-Glass for the entire Internet that includes history information.</p>
<p>One important application for this data will be debugging. For example, if a user complains that a certain site could not be reached earlier, the RIS will provide the necessary information to discover what caused this problem. This is particularly useful for problems that occur periodically.</p>
<p>There are numerous other applications for the data, for example;</p>
<ol>
<li>The routing table and its development over time can be used to check for local and global convergence of the table and routing flaps.</li>
<li>The routing table reflects the policies announced by the sites operating the routers. At a local level, the data can be used to verify the setup of the routers and correct any errors.</li>
<li>On global level, the RIS data can be used to compare policies registered in the Routing Registry against the policies that are actually announced. The RIS will therefore provide essential input for the Reality Checking project for the IRR.</li>
<li>Related to this is that the RIS will provide information about fake routes inserted into the network, for example by spammers.</li>
</ol>
<p>The routing table also reflects the addressable IP-networks that can be reached, which AS-numbers are actually being used and such. These are valuable statistics.</p>
<p>The project is aimed at NOC's and engineers at ISP's, though it is a priority not excluded that end users will have access to the data as well.</p>
<h2>Setup of the RIS</h2>
<p>The basic setup of the RIS is shown in figure 1. At the RIPE NCC a main collection machine will be installed. This machine runs 3 programs: a route collector, a database and user interface. At a limited number of core locations (IX1, IX2, ...in figure 1) a dedicated machine will be installed.<br />This machine will run a copy of the route collector program. The route collector programs collects routes, either directly from the border routers at that site or via Multi-hop BGP peering from other nearby routers. All data is transferred to the RIPE NCC and stored in a database. The database<br />can be accessed by the sites participating in the project and will provide them with both the raw data as well as derived statistics.</p>
<p>The NCC already has experience with running remote data-collection points for the test-traffic project [7]. It is planned to use this experience for the RIS.</p>
<h3>Prototype Setup</h3>
<p><img alt="Set-up of the prototype RIS" class="image-inline" src="resolveuid/633856d4f6eaa148e28e15a4c6505d80" /></p>
<p><i>Figure 2: Set-up of the prototype RIS</i></p>
<p>In order to prove the concept and to get a feeling for the data volumes involved, a prototype of the RIS has been developed and has been used for data collection during the last months.</p>
<p>The setup of the prototype is shown in figure 2 and consists of a route-collector, a database and a rudimentary  user-interface.</p>
<p>We tested two products as route-collector software: GNU-Zebra [8] (versions 0.74 and 0.76, under the Linux operating system) and the Multi Threaded Routing toolkit (MRT) [9] (versions 1.4.xa and 2.0.0a under the Linux and<br />FreeBSD operating systems).</p>
<p>GNU-Zebra is a free software package that manages TCP/IP based routing protocols. It supports the BGP-4 protocol [4] as well as RIPv1, RIPv2 and OSPFv2. GNU-Zebra can be used with both IPv4 and IPv6. Zebra is intended be used as a Route Server and Route Reflector.</p>
<p>The Multi-threaded Routing Toolkit (MRT) is a project developed by Merit at the University of Michigan, to be used for routing architecture and protocol research. Software developed until now includes multi-protocol IPv4/IPv6<br />routing daemons as well as routing analysis and simulation tools.</p>
<p>At peak times, the route collector may have to deal with 70,000 prefix updates per second. The prototype shows that the route collectors can keep up with these these loads, however, the database is a point of concern. These studies show that generic database systems have problems coping with these numbers. The best solution at the moment seems to be store the data in regular files and only use a generic database product to maintain a summary file indicating which information is stored in which file. However, further studies are needed here.</p>
<p>The Multi-hop BGP4 peering mode has been tested with the prototype. This mode can be used to reduce the number of collection points.</p>
<p>The RIPE NCC is happy to make the software of the prototype available to interested parties [10]. However, the software will be made available on an "as-is'' basis and the RIPE NCC, unfortunately, does not have the resources to provide more than basic installation support.</p>
<p>The conclusion that can be drawn from this prototype is that it is possible to collect routing information from routers using BGP. It also gave us a good idea of the data volumes involved. This experience will be used in the final design. Data collection with dedicated machines at remote points has not yet been tested but no special problems in this respect are foreseen.</p>
<p><img alt="Overview of the final RIS setup" class="image-inline" src="resolveuid/3e7cb3c5dff1172fcb3d3b3944620f85" /><br /><i><br />Figure 3:   Overview of the final RIS set-up.</i></p>
<h2>Final Setup</h2>
<p>Figure 4 shows the proposed setup for the RIS in more detail.</p>
<p>Data-collection machines (the ``Remote Route Collector'' (RRC) in figure 4) will be installed at a few major topologically interesting points on the Internet, such as major exchange points and the like. These Remote Route Collectors will collect routing information either directly over the exchange LAN of the site or using the BGP-multi-hop mode to nearby ISP's. All peerings will be set up by hand and only data from ISP's interested in this project will be collected.</p>
<p>The optimal number of Remote Route Collectors and their location still has to be investigated. In first order, it is expected that around 10 such RRC's will be installed in the RIPE service area.</p>
<p>In principle, all peerings via BGP-multi-hop could be done by the central machine at the RIPE NCC. However, that would involve the transfer of a large amount of data over the networks involved. One central collector will not scale to several hundred peers. It is therefore more efficient to do some of the BGP-multi-hop peerings with the RRC's, reduce and compress the data there and only transfer the results to the RIPE NCC.</p>
<p>The RRC's are discussed in more detail in section 3.2.1.</p>
<p>Data is then transferred to a central machine at the NCC and stored into a database. Design considerations for this database are discussed in section 3.1.2.</p>
<p>Users of the RIS can access the database through various interfaces discussed in section 3.1.3. It is a goal of the project to transfer the data as often as practically possible without overloading the networks or databases, in order to minimize the time between data-taking and availability of the data to the users.<br /><br /></p>
<p><img alt="Detailed overview of the final set up" class="image-inline" src="resolveuid/e0b0076cb11b5d390ad3c9a50cdc9973" /></p>
<p><i>Figure 4:   Detailed overview of the final set-up</i></p>
<h2>Software for the RIS</h2>
<p>An overview of the various software modules used in the final setup is shown in figure 4.</p>
<h3>Software for the Remote Route Collectors</h3>
<p>Remote Route collectors will run BGP listener which logs all updates received from its peers and also maintains a routing table. In the first instance, it is planned to run the MRT [9] and GNU-Zebra [8] software under a supported UNIX platform on each RRC. These products were described in section 2.</p>
<p>Depending on the development paths of MRT and Zebra, the RIPE NCC might decide to re-write parts of those software packages in order to add missing features or to optimize performance, or to use parts of other software<br />packages. The parts of any external software essential for the RIS will be reviewed and documented according to appropriate RIPE NCC guidelines in order to remain maintainable in the future.</p>
<p>The BGP listener software will collect time stamped BGP4 announcements, including:</p>
<ul>
<li>The route prefix and length.</li>
<li>The origin AS.</li>
<li>The AS paths for which the announcements are visible.</li>
<li>Any additional BGP attributes which are propagated  through the system.</li>
<li>Errors in the BGP announcements.</li>
<li>Periodic dump of routing table.</li>
</ul>
<p>As both Zebra and MRT supports IPv4 and IPv6, it will be easy to extend the RIS to include IPv6 routing information when native IPv6 networks start to be deployed on a large scale.</p>
<p><img alt="figure5.png" class="image-inline" src="resolveuid/525b75f8bb665e37bda6ff6c3ece4e37" /></p>
<p><i>Figure 5: Number of updates seen by the prototype RIS peering with a single router during the first three minutes of operation.</i></p>
<p> </p>
<p><b>Receiving speed:</b></p>
<p>Figure 5 shows the number of updates received by an RRC as a function of time. When the RRC is started, it receives some 65,000 initial prefix announcements in 90 seconds from a single peer. After the initial setup, the rate, averaged over a 1 week period, will drop to 2 updates/second/peer.</p>
<p>Assuming 60 to 100 peerings at a single collection point, the typical number seen with the prototype will translates to a peek of 50,000 to 80,000 announcements per second to be record by a RRC. Collector software will be resource intensive in terms of memory, to keep several views of routing table and I/O intensive to record the updates and snapshots.</p>
<p>During major instabilities, the number of updates might even be higher. In order not to interfere with operation of the routers, it will be considered to limit the data-flow from the routers to the RRC's.</p>
<h2>Database software</h2>
<p>The main requirements for the database are:</p>
<p><b>Insertion speed:</b></p>
<p>Assuming all RRC's are restarted once on a same day total number of updates collected from 10 RRC's during one day will be about 110 M prefix updates. To summerize and insert this data into database in about 3 hours, required processing speed will be 10,000 prefixes/sec. The database will have to buffer incoming data and the situation where not all data has been inserted in the database will be flagged. The acceptable time elapsed between data-taking and availability in the data-base still has to be investigated.<br /><br /><b>Query speed:</b></p>
<p>This should be such that an individual user will receive an answer to a simple query (e.g. what was the route from A to B at a given time) in O(10). If this takes much longer, extracting data will be too cumbersome and the RIS will not be used.<br /><br /><b>Merging data:</b></p>
<p>The software should be able to merge data from remote points into database if they have been disconnected from the RIPE NCC while still collecting data without "falling behind'' with the regular updates. The amount of data to be merged at once here may be of the order of the data collected during a week. (For example, an RRC that got disconnected from the Internet at the start of a long weekend, followed by a few days necessary to solve the problem.)</p>
<pre>RRC                 NCC Central<br />                                     (GByte)                (GByte)<br />                           Peer/Day   Daily   Monthly  Monthly   Yearly<br />   BGP announcements<br />   Uncompressed            0  . 007 0  . 490  14 . 3  143  .0     -  . -<br />   Compressed              0  . 005 0  . 350   - . -    -  .-  1002  . 0<br />   Routing table dumps<br />   Uncompressed            0  . 021 1  . 430  43 . 0  430  .0     -  . -<br />   Compressed              0  . 002 0  . 143   - . -    -  .-   430  . 0<br />   Storage needed<br />   Hard disk               0  . 028 0  . 633  57 . 3  573  .0     -  . -<br />   Tape                    -  . -   -  . -     - . -    -  .-  1700  . 0<br />   Data to be transferred</pre>
<pre>   Compressed              -  . -   0  . 500   - . -    -  .-     -  . -</pre>
<p>Storage requirements for the RIS. The first 3 columns refer to the individual RRC collecting BGP-announcements and routing table dumps, the last 2 columns to the central collection point at the NCC. The top 3 rows show the size of the BGP-announcements, routing table dumps and total storage space needed at that stage. The last row shows the amount of data to be transferred. Data will be stored either compressed or uncompressed,``-.-''  indicates that data will not be stored in the (un-)compressed format at that stage. A total of 10 collection points has been assumed. The numbers<b> </b>in this table are based on the prototype and will be further refined as we gain more experience. The numbers also do not include index-files and other overhead introduced by the data-base program.</p>
<p><b>Data volumes:</b></p>
<p>The prototype shows that the data at a typical collection point consists of:</p>
<ul>
<li>7Mbyte/day/peer of BGP announcements when all logging options are switched on.</li>
<li>7Mbyte for a full dump of the routing table for each peer.<br /> Assuming that the data is dumped every 8 hours (3 times a day), this translates into 21Mbyte per peer, per  day. However, the routing table can be compressed quite efficiently by a factor of +/-10 using standard file compression tools.</li>
</ul>
<p>The number of dumps each day is a trade-off between data-volume and CPU power. One can reconstruct the routing table at any point in time from an initial dump plus all updates received since the time the table was dumped. However, the longer the time elapsed since the routing table was dumped, the more updates will have been received and thus the more CPU power is needed to reconstruct the table. Dumping the table moreoften, means that less CPU power is needed but requires more storage space. 3 dumps a day appears to be a reasonable compromise.</p>
<p>The maximum number of collection points is of the order of 40, approximately 30 core locations in the RIPE region and about 10 core locations elsewhere in the world. However, there is a considerable overlap between the data that would be collected at all 40 points, so we assume that data collection at 10 points will be sufficient. Data-collection might also be done by exchanging data with similar projects (see 6), though this does not change the total data-volume.</p>
<p>An estimate of the upper limit of the total data volume based on these results can be found in table 1. The numbers in these table are based on our studies with the prototype and will be further refined as we gain more experience. Assuming that data will be available on disk for 1 month and is then moved to tape, the RIS will require some 600Gbyte of disk-space as well as a tape storage device capable of handling some 2Tbyte.</p>
<p>Handling such an amount of data is by no means trivial. The database should be able to handle this amount of data and be able to cope with future expansion.</p>
<p>Experience with the prototype has shown that the popular MySQL database cannot cope with these requirements. Other products are being investigated.</p>
<h2>User Interface</h2>
<p>Regardless of the method chosen to store the data, it is planned to implement the following ways to access the data (in this order):</p>
<p>All (or a selected subset of) the raw data (both the full routing tables and the individual updates) will be made available to the sites participating in the project via FTP or HTTP.</p>
<p>Command line queries, a user enters a command and the resulting output will be shown on the screen, similar to the well known RIPE NCC whois server. Typical queries that one can think of are, for example:</p>
<ul>
<li> What was the route between two ASN's at a particular time, as seen at a particular site?</li>
<li>When was a route between those two ASN's first announced, which updates were made and when was the last route withdrawn?</li>
<li>Which prefixes were announced by a certain ASN</li>
<li>Who announced a route to a certain ASN.</li>
</ul>
<p>These queries will be refined and expanded based on the input from the users.</p>
<p>Queries through a cgi-script. An interface to command-line queries via a web-interface will be provided. This interface will also allow us to provide graphical output, for example, a map of ASN's and their connections.</p>
<p>Reports and statistics. The data will be collected and reduced to reports showing statistics of Internet routing. For example:</p>
<ul>
<li> Rates of updates and withdrawals for certain routes.</li>
<li>Number of flaps</li>
</ul>
<p>This will again be expanded based on user input.</p>
<p>In the first instance, it is foreseen that all queries will be done to the RIPE NCC RIS server. At a later stage, the possibility to do local queries to the individual RRC's might be added. The advantages of this are two-fold, it will reduce the load on the central server and it will allow the users to use the RIS data when a major network problem causes the central server to be unreachable.</p>
<h3>Data collection at the Remote Points</h3>
<p>The RRC's will need careful monitoring and security since they are interacting with critical network elements like border routers, are located at important network points, and problems may trigger alarms at peer NOC's. For example, if a box goes down NOC monitors may generate alarms equivalent to peer going down even though an RRC is not announcing any routes. This should be avoided.</p>
<p>For security reasons, the RIS will get a separate AS-number. The RRC's will also not announce any routes though peers may wish to set up filters to block any announcements from the RRC's.</p>
<p>Although it is planned to control the RRC's from a central point with no operators or service required at the local sites, it is expected that each site that hosts a RRC appoints a local contact. This contact should take care of things that cannot be done remotely, such as rebooting the machine or copy information from the console in case of network or hardware problems, keep the RIPE NCC informed about planned maintenance of network and such. The local contact, obviously, has to be reachable by phone or email.</p>
<h2>Hardware</h2>
<h3>Hardware for the RRC's.</h3>
<p>The prototype shows that route collection is a memory and I/O intensive process, CPU power is less important. Approximately 256Mbyte of memory is needed to run all software without significant swapping.</p>
<p>Although data will be pulled to the RIPE NCC at regular intervals, one should consider the situation where  connectivity to the RIPE NCC is lost for some time and that data will have to be buffered at the RRC's. In order to cope with this situation, the RRC's will have to be equipped with at least 20Gbyte of disk space.</p>
<p>Over the last year's the RIPE NCC has gained experience with the operation of remote machines for data-collection purposes [7]. It is planned to use that experience to run the RRC's, no particular problems are foreseen in this respect.</p>
<p>There is also considerable interest in the installation of Test-boxes at the same location as the RRC's and it has been suggested to use the same hardware for both projects. This idea will be investigated further.</p>
<h3>Hardware for the central collection point</h3>
<p>The central machine will collect data in the same way as the RRC's. Besides that, it will run the database where all collected data is stored as well as handle external queries. The machine will be equipped with sufficient disk-space to keep approximately one month of data online. Older data will be stored on tape.</p>
<h3>Peering with the route collector</h3>
<p>The RIS project will use AS Number 12654 for peering at all collection points. This ASN 12654 ill not announce any routes[gif] . Ideally, the RIS should peer with all members of the site for their entire default free routing table. These peerings will be set up using BGP4. The peering policy will be added to auto-num objects in the RIPE whois database.</p>
<p>The RIPE NCC central collector will also setup a few  multi-hop BGP4 peerings to ISP/NAP's border routers.</p>
<h3>Bandwidth requirements for the RRC's.</h3>
<p>Approximately 500&amp;thicksp;Mbyte (see table 1) will be transferred from each RRC to the RIPE NCC daily. This translates into a constant flow of about 6&amp;thicksp;kbyte/s. The central collection point at the NCC will see an incoming flow of about 60&amp;thicksp;kbyte/s. However, the data volume that has to be transfered can reduced only by sending the differences between the periodic dumps, rather than the full dumps. We will ensure that these data-transfers will not affect normal operations.</p>
<h2>Research issues, Testing</h2>
<h3>Open Questions</h3>
<p>While writing this proposal, a number of questions came up that need further investigation. These are listed in this section.</p>
<ol>
<li>Empirically investigate the added value in collecting information at different places. Determine how one can best select the sites were data is collected. Determine how to merge identical data collected at different sites.</li>
<li>As can be seen from table 1, the RIS will have to handle large amounts of data. What is the best database to use for this project and how can its performance be optimized/tuned for this project?</li>
<li>Find out, in collaboration with the first users, how long the data should remain in the database?</li>
<li>Is the full data still useful after a while, or can it be reduced to a smaller sample that is only sufficient to produce statistics?</li>
<li> Determine the optimal number of routing table dumps per day based on practical experience with the first RRC's.</li>
<li>Investigate if default routes should be collected as well. Default routes are routes that are used by routers if no information about a certain IP-prefix is known.</li>
<li>It will be necessary idea to maintain a mirror data-base of the aut-num objects (and their history) in the RIR  databases. When analyzing data at a later point in time this information will be essential. The maximum number of ASN's is 64&amp;thicksp;k so this will not create a large volume of data. However, the data is stored into several whois-servers so a common format and tools to extract information from the servers will have to be defined. </li>
<li>Investigate what kind of support is necessary for RRC and Server machines at NCC on a ``24/7''-basis, in order to make the RIS available to its users full time.</li>
</ol>
<h3>Alpha- and Beta-testing</h3>
<p>For a service as the RIS, it is essential that the potential users of the service are involved from the first stage of development. The RIPE NCC has therefore started to look for users of the alpha- and beta-versions. Inside the NCC, there is interest in using the first versions and work on the definition of the user interface, database queries and other services based on the data.</p>
<p>Outside the NCC, at least four sites have shown interest in providing us with data through peering sessions and it is hoped that these sites will also act as the first external users of the project.</p>
<p>In order to get optimal feedback from the first users, documentation and a user's manual will be written as the project is being developed. The documentation will describe the program, the user's manual will show how the data should be interpreted and how it can be used for operational purposes. It is also planned to give regular progress reports in the appropriate RIPE-WG's and solicit input from all interested parties.</p>
<p>When the project is in a more mature state, turning the RIS into a regular service will be discussed in the RIPE-WG's.</p>
<h2>Interface to the IRR Reality Checking Project</h2>
<p>One possible use of the RIS is in the IRR Reality Checking Project [3]. The RIS provides the actual routing and this can be checked against the routing announced in the DB for consistency. At the moment, the IRR Reality Checking Project seems to be most interested in the dumps of the routing tables and not in the individual BGP updates.</p>
<p>The interface between the two projects will be defined at a later stage.</p>
<h2>Related projects</h2>
<p>There are several ongoing projects similar to the RIS. The most important ones are:</p>
<ul>
<li>Merit/IPMA [11] has been doing BGP logging since 1996. BGP announcements are collected directly from 5 major exchange points in North America as well as via multi-hop BGP from 20 providers. More on this project can be found at: <span class="external-link">ftp://ftp.merit.edu/statistics/ipma/data</span></li>
<li>The University of Oregon Route Views Project, see:<br /> <a class="external-link" href="http://www.routeviews.org/">http://www.routeviews.org/</a></li>
</ul>
<p>The RIPE NCC plans to collaborate as well as try to exchange data with those projects. The NLANR-group at SDSC [12, 13] has already shown interest in collaborating with the RIPE NCC on RIS-related research.</p>
<p>Other projects focus on the visualization of the data and this might be an other area for collaboration in the future.</p>
<h2>Schedule, milestones and resources.</h2>
<p>Based on discussions both inside the RIPE NCC and with the chairmen of the appropriate working groups, the  following milestones have been set for the project:</p>
<p><b>July 1, 1999:</b></p>
<p>Work started when AA joined the project.</p>
<p><b>October 14, 1999:</b></p>
<p>Draft project plan presented to the community.</p>
<p><b>September 1999/RIPE-34:</b></p>
<ul>
<li>Presentation of the project plan in the Routing-WG.</li>
<li>Demonstration of the prototype.</li>
</ul>
<p><b>October 14, 1999:</b><br /> Final project plan presented to the community.</p>
<p><b>October 1999-February 2000:</b></p>
<p>Development work, intermediate steps:</p>
<ul>
<li>Documentation of the prototype.</li>
<li>Develop the first version of the RRC software.</li>
<li>Set up peering sessions with interested parties and start collecting data with (prototype) RRC software.  This data will be used to develop the user-interface and to finalize the estimates of the data-volumes.</li>
<li>Make the raw data available for analysis.</li>
<li>Build a prototype user interface and get user feedback on that.</li>
</ul>
<p>The prototype will be documented.</p>
<ul>
<li>Start to extract statistics from the raw data.</li>
<li>Finalize and order hardware.</li>
</ul>
<p><b>February 2000/RIPE-35:</b><br /> Present answers to the research issues mentioned in section 4.</p>
<p>Have a more advanced system ready to be tested inside and outside the NCC. User documentation will be provided and show how the data can be used in day-to-day operations.</p>
<p><b>February - May 2000:</b><br /> Install several RRC's.</p>
<p><b>May 2000/RIPE-36:</b></p>
<ul>
<li>Add more features based on user feed-back.</li>
<li>Study and implement analysis of the data over a longer term.</li>
<li>Discuss implementing this as a regular service<br />September 2000/RIPE-37:</li>
</ul>
<h2>Turn project into a regular service.</h2>
<p>At the moment it is expected that 1 network engineer (AA) will work full-time on the project. The second author of this document will spend approximately 20% of his time on this project. It is likely that additional expertise or manpower will be needed during the various stages of the development of the service. These will be borrowed from other groups inside the RIPE NCC.</p>
<p>When the project is turned into a regular service, the manpower situation will be reviewed.</p>
<h2>Conclusions</h2>
<p>In this document, an overview of the RIS project was presented, the implementation has been discussed and a list of open questions has beengiven. The project was presented at the RIPE-34 meeting and feedback from the RIPE-community has been included in this design document. The RIPE NCCwill now start with the implementation of the RIS.</p>
<h2>Acknowledgments</h2>
<p>The authors would like to thank: Pedro Figueiredo and João Damas (RIPE NCC) for their work on the prototype setup and the chairmen of the RIPE Routing, DB and IPv6 working groups for their input to this proposal.</p>
<h2>References</h2>
<p>1.     John Crain et al., "RIPE NCC Activities &amp; Expenditure 1999'', <a class="internal-link" href="resolveuid/2225d93fe67410348973686ba18077b4">ripe-186</a>.<br />2.     John Crain et al., "RIPE NCC Activities &amp; Expenditure 2000", <a class="internal-link" href="resolveuid/2e6c01f21bf6035228c8a30d4f38a0ce">ripe-197</a>.<br />3.     Joachim Schmitz and João Luis Silva Damas, "Reality Checking of the RIPE Routing Registry'', <a class="internal-link" href="resolveuid/ae99d4dc1a94c4dccb921942b5f76eac">ripe-201</a>.<br />4.     Y. Rekhter et al., "A Border Gateway Protocol 4 (BGP-4)'', RFC 1771, see <a class="external-link" href="ftp://ftp.ripe.net/rfc/rfc1771.txt">ftp://ftp.ripe.net/rfc/rfc1771.txt</a><br />5.     T. Bates et al, PRIDE Users Guide, 1994.<br />6.     Craig Labovitz et al, "Internet Routing Instability'',  Proceedings of SIGCOMM'97, September 1997.<br />7.     Henk Uijterwaal, Olaf Kolkman, "Internet Delay Measurements using Test-Traffic, Design Note'', <a class="internal-link" href="resolveuid/0a14bfac42155de21afeb3a39cdc462c">ripe-158</a>.<br />8.     Zebra routing software, see http://www.zebra.org<br />9.     Multi Threaded Routing toolkit MRT, see  <a class="external-link" href="http://www.mrtd.net/">http://www.mrtd.net/</a><br />10.    See: <a class="internal-link" href="resolveuid/8a43ee8217503fb22157ce62ffbab44c">http://www.ripe.net/ris</a><br />11.    IPMA tools, see: <a class="external-link" href="http://www.merit.edu/ipma/tools/">http://www.merit.edu/ipma/tools/</a><br />12.    NLANR, see: <a class="external-link" href="http://www.nlanr.net/">http://www.nlanr.net/</a><br />13.    SDSC, see: <a class="external-link" href="http://www.sdsc.edu/">http://www.sdsc.edu/</a><br /><br />...updates/second/peer<br /> The slope of the right-hand side of figure 5 suggests a higher rate but<br /> appears to be a statistical fluke.<br /><br />...routes<br /> Assuming that the router software on the other side does not need any<br /> announcements from ASN 12654.<br /><br /></p>]]></content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>mark</dc:creator>
    <dc:rights></dc:rights>
    
      <dc:subject>ris</dc:subject>
    
    <dc:date>1999-10-13T22:00:00Z</dc:date>
    
    <dc:type>RIPE Document</dc:type>
  </item>


  <item rdf:about="http://www.ripe.net/ripe/docs/ripe-158">
    <title>Internet Delay Measurements Using Test Traffic, Design Note</title>
    <link>http://www.ripe.net/ripe/docs/ripe-158</link>
    <description>This document discusses the test traffic project proposed as a new activity in ripe-144. The document gives an overview of the project, discusses the implementation and mentions a couple of points that have to be addressed in future design documents. </description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<h3 class="ABSTRACT">Abstract:</h3>
<p class="ABSTRACT">This document discusses the test traffic project proposed          as a new activity in ripe-144 [<a class="anchor-link" href="#ref1">1</a>].          The document gives an overview of the project, discusses the implementation          and mentions a couple of points that have to be addressed in future design          documents. This document is intended to solicit input from interested          parties.</p>
<hr size="1" width="100%" />
<h3>Table of Contents:</h3>
<ul>
<li> <a class="anchor-link" href="#--introduction">1. Introduction</a> </li>
<li> <a class="anchor-link" href="#--measurements">2. Measurements</a> </li>
<li> <a class="anchor-link" href="#---experimental-setup">3. Experimental            Setup</a> </li>
<li> <a class="anchor-link" href="#--presentation-of-the--data">4. Presentation            of the data</a> </li>
<li> <a class="anchor-link" href="#---verifying-the-results">5. Verifying            the results</a> </li>
<li> <a class="anchor-link" href="#----tools">6. Implementation </a></li>
<li> <a class="anchor-link" href="#---conclusions">7. Conclusions</a> </li>
<li> <a class="anchor-link" href="#ref1">References </a></li>
</ul>
<p> </p>
<h2>1 Introduction</h2>
<p><img alt="Overview of TTM" class="image-inline" src="resolveuid/828866b1e940448139d54551c378ab61" /></p>
<p><b><a name="fig1"></a>Figure 1:</b> Overview.</p>
<p>This document describes the design and implementation of  the test traffic          project. This project has been proposed as a new RIPE NCC  activity [<a class="anchor-link" href="#ref1">1</a>].           The project is similar to the project proposed          for a different community [<a class="anchor-link" href="#ref2">2</a>]. The goal of the project is to do  independent          measurements of connectivity parameters, such as delays and  routing-vectors,          in the Internet.</p>
<p>The general idea behind this project is shown in <a class="anchor-link" href="#fig1">figure 1</a>.          The local network of each Internet Service Provider (ISP) can be  divided          into two parts: an internal part, that deals with the traffic  between          the machines of the customers in this network, and an external  part, that          deals with the traffic between this and other service providers.  This          project focusses on the external networks only.</p>
<p>Two of the parameters that determine the network  performance between          two providers are: the total bandwidth and the delay. The  bandwidth is          the number of bits that can be transferred between two providers  per unit          of time. The delay is defined as the time elapsed between the  moment that          a packet leaves the network of one provider and the moment that  the packets          arrives at its destination. Associated with these parameters is a  routing-vector,          this vector describes how traffic travels from this provider to  another.</p>
<p>In order to measure the delays and determine the routing,  measurement-boxes          will be installed at each participating provider. These boxes  collect          data. The data is then transferred to a central machine at the  RIPE NCC.          Here the data is processed and made available to the users of  the networks.</p>
<p>The outline of the remainder of this note is as follows:  <a class="anchor-link" href="#--measurements">Section 2</a> discusses the measurements that we plan to use in order to  determine the          network performance. <a class="anchor-link" href="#---experimental-setup">Section 3</a> gives          an overview of the hardware and software infrastructure needed  for these          measurements. <a class="anchor-link" href="#---presentation-of-the--data">Section 4</a> shows how          the data can be presented to both experts and casual users of  the Internet.          An important point is to prove that our measurements actually  reflect          the performance of the network. <a class="anchor-link" href="#----local-test-bed">Section 5</a> discusses how we can verify our results. Finally, <a class="anchor-link" href="#----time-schedule">Section 6</a> discusses the implementation, milestones and deliverables of  this project.</p>
<h2><a name="--measurements"></a>2 Measurements</h2>
<p>There are (at least) two ways to monitor the  characteristics of the          Internet:</p>
<ul>
<li> <b>Passive:</b> by monitoring the amount of traffic that passes a  certain            point and, </li>
<li> <b>Active:</b> by generating test traffic and measuring how  much time it            takes to ship the test traffic over the network. </li>
</ul>
<p>The advantage of an active measurement over a passive measurement,  is that        for the active method, the test traffic can be generated under  well-defined        and controlled conditions, whereas the passive measurement depends  on the        traffic that happens to pass a certain point. Another important  advantage        of active measurements is that it avoids the privacy concerns  associated        with passive measurements. As we want to deliver an objective  measurements        of the performance of the Internet, we have decided to focus on  active measurements        only.</p>
<p> </p>
<p><img alt="TTM Experimental setup" class="image-inline" src="resolveuid/6c59123fad0465c51394d9da383650ba" /></p>
<p><b><a name="fig2"></a>Figure 2:</b> Experimental           Setup</p>
<p>The principle of our measurements is shown in <a class="anchor-link" href="#fig2">figure 2</a>.          A test box is connected 0 hops away from (or, if that is not  feasible,          as close as possible to) the border router of each participating  ISP.          By connecting the Test Box 0 hops away from the border router,  we exclude          effects of the internal network from our measurements.</p>
<p>If the ISP has more than 1 border router, we will either  connect the          Test Box in such a way that the delays to each border router are  similar          or we will install multiple test boxes. This way, we avoid a  bias for          traffic in certain directions in our measurements.</p>
<p>The box at ISP-A generates a pre-defined pattern of test  messages. The          test messages are send through the border router and the network  to a          similar box at ISP-B. Both Test Boxes are connected to a clock.  By looking          at these clocks when a test message is sent and when it arrives,  one can          determine the delay between these two providers. There are other  measurements          that one can do with this setup, this will be discussed in <a class="anchor-link" href="#----data-collection"> section 2.1</a>.</p>
<p>The Test Boxes at both ISP's are identical, thus the  process can be          reversed to measure the delay between ISP-B and ISP-A. Also, the  boxes          at both ISP's can be used to send test traffic to similar boxes  at other          ISP's.</p>
<p>It should be obvious from <a class="anchor-link" href="#fig2">figure 2</a> that the clocks at the two ISP's should be <i>synchronised</i> (in other          words, the time offset between the two clocks should be known  and remain          constant) and provide the time with a high accuracy compared to  the time          difference that we want to measure. This will be discussed in  more detail          below.</p>
<p>In the extreme case where all O(1000) ISP's in the  RIPE NCC (geographical)          area participate in the project, the Test Boxes can be receiving  test          traffic from and sending it to 1000 other boxes, thus testing  all 1000<sup>2</sup> possible connections. However, the topology of the Internet is  such that          it is likely that one can still do reliable measurements of the  performance          of the Internet without having to send test traffic for all  1,000,000 possible          connections. This will be studied.</p>
<p>Although this method can be used to measure the  performance of the internal          network of each provider, we want to limit our work to the  external networks          only. For this reason, the Test Boxes should be located as close  as possible          to the border routers of the ISP's, in order to eliminate any  effects          caused by the internal networks.</p>
<h3><a name="----data-collection"></a>2.1 Data Collection</h3>
<p>There are several possibilities for  the          test traffic that we can generate:</p>
<ul>
<li> <b>One-way:</b> A packet is sent from ISP-A to ISP-B, as  described            in the previous section. </li>
<li> <b>Two-way:</b> A packet is sent from ISP-A to ISP-B  and then returned            to the sender. This principle is used in "ping'' and other  tools that            determine the round trip time.
<p>However, assuming that the paths are known, the results  obtained              with one two-way traffic measurement, will simply be the sum  of two              the one-way traffic measurements. For this reason, we plan  to use              two-way traffic only for independent checks of the one-way  results.</p>
</li>
<li> <b>Real life applications:</b> A measurement that a  user sees in            a real application, like fetching a WWW-page or downloading a  file by            FTP, using a well defined TCP benchmark connection. </li>
</ul>
<p>In the first instance (<a class="anchor-link" href="#------phase--">phase 1, section 2.1.1</a>),         we plan to do one-way and two-way measurements. At a later stage  (<a class="anchor-link" href="#------observables">phase        2, section 2.1.2</a>),  this will be expanded        to performance measurements for real life applications. Our  measurements        will, already in phase 1, produce several observables, this will  be discussed        in section 2.1.3.</p>
<h3><a name="------phase--"></a>2.1.1 Phase 1</h3>
<p>The one way test traffic will consist of UDP data packets  of 3 different          sizes: small (56 bytes, as used by ping and similar tools),  medium (576          bytes, the minimum packet size that any router must handle as a  single          packet) and large (say, 2048 bytes, to see the effect of  (possible) splitting          data-packets into smaller units and related effects).</p>
<p><b>The packets will contain:</b></p>
<ul>
<li> The address of the sender. </li>
<li> A time-stamp that shows when the packet was sent,  together with the            dispersion of the clock in the sending machine. The dispersion  is needed            to determine the overall error in the measurement. </li>
<li> A reference number, in order to keep track of the  number of packets            send and lost. </li>
<li> A hop-count (number of routers that the packet passed  between sender            and receiver). </li>
<li> Administrative information, such as the version number  of the software            and a checksum. </li>
<li> Padding to give the packet the desired size. </li>
</ul>
<p>The receiving process will remove the padding and then add the  following        information to the packet:</p>
<ul>
<li> The address of the receiver. </li>
<li> A time-stamp that shows when the packet was received,  together with            the dispersion of the clock in the receiving machine. </li>
</ul>
<p>The result is raw-data that contains all information about this  particular        delay measurement.</p>
<p>The path or routing-vector between ISP-A and ISP-B is defined  as the          collection of machines and network between the border routers of  these          two ISP's. This path may vary as a function of time. A tool like "traceroute''          will be used to determine the path for the test traffic at any  given time.          The path information will be made available.</p>
<p>There are several potential problems while doing these  measurements:</p>
<ul>
<li> <b>Set-up effects:</b> even for Internet traffic, the  routers have            to be setup before a connection between two points is  established. If            this is not taken into account, then the measured delay will  be larger            than the delay that can be attributed to the network. Two  possible solutions            to circumvent this problem are:                              
<ul>
<li> Precede any measurement by a "traceroute". This  determines                the path and provides the routing information that we are  interested                in anyway. </li>
<li> Run the test more than once and compare the  results. If the first                result is significantly different from the other  measurements, discard                it. </li>
</ul>
Set-up effects are interesting in themselves and this data  will be recorded            and studied. </li>
<li> <b>No connectivity.</b> The fact that there is,  contrary to what            one expects, no connectivity between two points is interesting  information            in itself. However, our software should be written such that  it will            survive this case without operator interference. </li>
</ul>
<p>For the two-way measurements, we plan to use data-packets that  are similar          to the one-way measurements. These results will be used for  consistency          checks only.</p>
<h3><a name="------phase--"></a>2.1.2 Phase 2</h3>
<p>In the second phase of the project, we plan to do  measurements with:</p>
<ul>
<li> <b>TCP-streams.</b> </li>
<li> <b>Simulations of applications.</b> </li>
<li> <b>Packet Trains.</b> A packet train is a number of  test messages            that are sent with very short intervals. They provide a way to  study            if the packets are delivered out of order and/or merged  together into            larger packets along the way. </li>
</ul>
<p>The implementation of this will be discussed in a future design  note.</p>
<h3><a name="------observables"></a>2.1.3 Observables</h3>
<p>These measurements will provide several observables:</p>
<ul>
<li> <b>Delay Information:</b> The results of the delay  measurements can            be stored in a N×N matrix <b>D</b>(t,s) where each element <b>D</b><sub>sd</sub>(t,s)            represents the time that a packet needed to travel from a  source <i>s</i> to a destination <i>d</i>. If there is no connection between  two points,            then <b>D</b><sub>sd</sub>(t,s) will be  <img align="bottom" alt="tex2html_wrap_inline677" height="8" src="http://www.ripe.net/ripe/docs/img14.gif" width="15" />.
<p>The elements of <b>D</b> are a function of the time <i>t</i>,  as              the network characteristics will change over time, and the  packet              size <i>s</i>.</p>
<p>The elements <b>D</b><sub>sd</sub>(t,s)  all              have an error ð<b>D</b><sub>sd</sub>(t,s)               which gives the total error in this delay measurement.</p>
</li>
<li> <b>Routing Vector or Path Information:</b> Each  delay measurement            is accompanied by a determination of the path between the two  locations            using a tool like "traceroute''. These results can be written  as a            N×N matrix <b>P</b>(t) of vectors.
<p>This matrix provides, assuming that our Test Boxes are  installed              at a significant fraction of the ISP's, an up-to-data map of  the Internet              as well as the history of of the network.</p>
<p>If there is no connectivity between two points <i>i</i> and <i>j</i>,              then the element <b>P</b><sub>ij</sub> will be              0. The number of zeroes therefore gives a measure of the  total connectivity.              Also, the two elements <b>P</b><sub>ij</sub> and <b>P</b><sub>ji</sub> should  either both              be zero (no connection between these two points) or  non-zero. If only              one of them is zero, this indicates a network configuration  error.</p>
<p>Finally, the elements <b>P</b><sub>ij</sub> can be used to detect routing loops.</p>
</li>
</ul>
<p>It should be noted that on any particular Test Box, only the  results          of delay measurements <i>to</i> that box and the path  information <i>from</i> that box are available (in other words: the <i>columns</i> of  the matrix          <b>D</b> and the <i>rows</i> of the matrix <b>P</b> ): the  results of          a delay measurement between ISP-A and ISP-B will be collected at  ISP-B,          whereas the traceroute information is only available at ISP-A.  It is undesirable          to do the traceroute at ISP-B, as the path from A to B is not  guaranteed          to be the same as the path from B to A.</p>
<p>In order to get the full matrices, the results have to  transferred to          a central point. This is one of the reasons for collecting all  test results          on a single machine.</p>
<p>From these observables we can determine if there are  trends in the transfer          times as a function of time and isolate special or suspicious  events.          During the initial phase of the project we will concentrate on  developing          (statistical) tools to analyze the matrices. In a later phase  we, or other          researchers, may develop tools to correlate the data in the  matrices,          analyze the effect of the size of the packets or perform  analysis of the          routing vector matrix itself.</p>
<p>Once enough data has been collected we must be able to  define meaningful          metrics and we might tune the measurements to optimally sample  this metric.</p>
<h3>2.2 Frequency of the  test traffic</h3>
<p>There are 5 basic requirements:</p>
<ol>
<li> The test traffic should be small compared to the load on  the connection            under consideration. If not, then the test traffic will affect  the performance            and the measurement becomes useless. </li>
<li> The intervals should be small enough to study  (interesting) fluctuations            in the performance of the network. </li>
<li> As the network changes over time, the amount and type  of test traffic            should be easily configurable. </li>
<li> The interval between two measurements should be small  enough to detect            and eliminate set-up effects. </li>
<li> As suggested by the IPPM [2]            the measurements should be randomly distributed to prevent  synchronization            of events due to weak coupling as demonstrated in [3].            The IPPM suggest using a so-called Poisson sampling rate. We  will investigate            the IPPM suggestion and other possibilities to prevent weak  coupling. </li>
</ol>
<p>The first two requirements are contradictory: smaller time  intervals means        more test traffic, but more test traffic means a higher load on  the network.</p>
<p>For the initial settings, suppose that we generate the  following amount          of test traffic:</p>
<ul>
<li> 1 small packet per minute. </li>
<li> 1 medium sized packet per minute. </li>
<li> 1 large packet every 10 minutes. These packets are  used to see the            effects of splitting large packets into smaller ones,  presumably this            effect is constant over time. </li>
</ul>
<p>This then generates a data-volume of approximately 14 bytes/s for  each measurements.        This number does not include overheads and the data for the  "traceroute"        program.</p>
<p>If this amount of data is too high, then one might consider  increasing          the interval between two packets and add a burst mode (a short  time with          a higher test traffic volume) for occasional measurements with a  smaller          interval between two test packets.</p>
<p>This leads to a number of questions that have to be  answered</p>
<ol>
<li> Can we generate this amount of data without the ISP's  objecting?            Probably not for 1 connection, but what if we have installed  Test Boxes            at 10, 100 or even 1000 sites, with 10<sup>2</sup>,             100<sup>2</sup> or 1000<sup>2</sup> possible connections? </li>
<li> Are we sure that the test traffic does not affect the  performance            of the network? </li>
<li> How do we check that a packet has left the Test Box  before the next            one is sent out? We do not want packets to sit in a buffer if  the local            network is at its maximum load. </li>
</ol>
<h3>2.3 Error Analysis,  Required Clock          Accuracy</h3>
<p>In this section, we want to estimate the errors on the final  results.          As we mentioned before, our plan is to do both one and two way  measurements.</p>
<p>One way measurements involve sending a time-stamped  message from one          machine to another. The second machine compares its arrival time  with          its local clock and determines the transfer delays from that.  This requires          that the local clocks are synchronised and provide the time with  a high          enough accuracy. The synchronisation is the difference between  the clock          on this machine and an absolute time standard. The accuracy is  the error          in the time measurement. The errors in synchronisation and  accuracy determine          the overall error in the delay measurement.</p>
<p>Two way measurements are a bit simpler in this respect: a  message is          sent to another machine and echoed there. All time measurements  can be          done on the same machine, so the clock has to be accurate and  the the          resolution of the clock has to be high enough. The resolution is  the smallest          time interval that can be measured by this clock.</p>
<p>In both cases, we will be subtracting two times, <i>t<sub>1</sub></i> and <i>t<sub>2</sub></i>. If we call the  total error          on these times <img align="middle" alt="tex2html_wrap_inline721" height="25" src="http://www.ripe.net/ripe/docs/img27.gif" width="25" />,          then the error in the final result (<img align="bottom" alt="tex2html_wrap_inline723" height="12" src="http://www.ripe.net/ripe/docs/img28.gif" width="19" />)          is equal to: <br /> <img align="bottom" alt="equation163" height="30" src="http://www.ripe.net/ripe/docs/img29.gif" width="500" /></p>
<p>It should be noted that, even with an high resolution  clock, <img align="bottom" alt="tex2html_wrap_inline723" height="12" src="http://www.ripe.net/ripe/docs/img28.gif" width="19" /> can become relatively large for small time intervals. For  example, if          we measure a 50 ms time interval with a clock with a resolution  of 10          ms, then the error in the result will be 14 ms.</p>
<p>Systematic effects of the equipment on the results have to  be studied          and should be understood.</p>
<h2><a name="---experimental-setup"></a>3. Experimental Setup</h2>
<h3>3.1 General Idea</h3>
<p>The general setup is shown in figures <a class="anchor-link" href="#fig1">1</a> and <a class="anchor-link" href="#fig2">2</a>.</p>
<p>The central machine at the RIPE NCC controls the  Test Boxes at the ISP's.          The data is collected by the Test Boxes and then transferred to  the central          machine.</p>
<p>It is planned that the data collected at the local  machines will be          kept there for a few days, so that it can be viewed and analysed  locally.          The main processing of the data will be done on the central  machine.</p>
<p>Of the order of 1000 ISP's are active in the geographical  area serviced          by the RIPE NCC. Although we certainly do not foresee that all  1000 ISP's          will participate in the project or that test traffic will be  sent for          all 1000<sup>2</sup> possible  connections, we do          plan to design the software such that these numbers can be  handled.</p>
<h3>3.2 Data Flow  Diagram</h3>
<p>Figure 3 shows  a first version of          the Data Flow Diagram (DFD) for this project. This diagram will  be the          starting point for the software design for the project.</p>
<p> </p>
<p><img alt="The Data Flow Diagram for TTM" class="image-inline" src="resolveuid/ca456026c9db3d7feed911ded4dcd96d" /><br /> <b><a name="fig3"></a>Figure 3:</b> The Data Flow  Diagram          for this project.</p>
<h3>3.3 The Central  Machine</h3>
<p>The central machine (or machines) performs a number of tasks,  including:</p>
<ul>
<li> It controls the configuration, which determines which  connections            are being tested, </li>
<li> It collects the data from all Test Boxes, </li>
<li> It acts as the software repository, </li>
<li> It will be the platform where the software is being  developed, </li>
<li> Finally, this machine will be used for data-analysis. </li>
</ul>
<p>The main problem for the central machine is the amount of data  to be          stored.</p>
<p>The results of each delay measurement will consist of the  packet sent          by one Test Box to another, plus information added by the  receiving Test Box          such as the arrival time. If we assume that this results in (at  most)          100 bytes of data for each delay measurement, then measuring at a  rate          of once a minute will produce 150 kbyte/day or 55 Mbyte/year of  data for          each connection.</p>
<p>In addition to that, one also has to store the  routing-vector information.          For a stable network, the amount of data for this will be less,  as one          can store a routing-vector with a validity range, rather than  the routing          vector for each measurement.</p>
<p>So, allowing for short intervals with high rates and a  significant amount          of routing-vector information, a safe upper limit of the amount  of data          to be stored is 250 kbyte/day or 90 Mbyte/year of data per  connection.</p>
<p>This means that in a setup where O(100) connections are  being tested,          one needs several Gbytes/year of disk space to store the raw  data. If          the number of connections that is being tested goes up by an  order of          magnitude, one will need a tape-unit or similar mass storage  device.</p>
<p>In the extreme case, where 1000 providers participate in  this project          and we test all 1000<sup>2</sup> possible  connections          between them, the data volume will be of the order of several  Tbyte/year.          While this volume is not unmanageable, it will require a tape  robot for          storage, a major investment, or a significant compression of the  raw data          before it is stored.</p>
<p>A database program will be used to store the data. This  database should          be able to handle data volumes up to several Tbyte, distributed  over several          physical volumes, and read the data in a reasonable amount of  time. As          the data might be used for several different analysis, it should  be possible          to generate Data Summary Tapes (DST's), with a subset of the  data.</p>
<p>For presenting the data, we need a graphical analysis  tool. This tool          should be able to plot and histogram data, and, of course, have  an interface          to the database.</p>
<h2>The Test Boxes at  the ISP's</h2>
<h3>3.4.1 Hardware Setup</h3>
<p>The Test Boxes consist of an industrial PC, which can be  mounted in          a 19 inch rack. Inside the box, there will be a CPU, a disk and a  high          precision clock. The disk should be large enough to store  several days          worth of data, assuming the 250 kbyte/day/connection, 1 Gbyte  should be          sufficient. The box should be hooked up to the border router of  the ISP.</p>
<p>The machine will be "plug and play", in order to make  installation          easy and to avoid tampering with the machine by a local ISP.  After the          box has been installed, all maintenance will be done remotely  from the          NCC. Only in the case of major hardware failures that cannot be  solved          remotely, we will need some support from the local ISP's.</p>
<p>The design of the box will be such that the ISP cannot  affect the performance          of the computer or reconfigure his network such that the results  will          be affected ("Design the network for the benchmark"). This  will include          installing machines at the customers of this ISP and do  consistency checks.</p>
<h3>3.4.2 Software Setup</h3>
<p>The software on the machine will read a configuration file  that specifies          which measurements it has to do, perform the measurements and  collect          the data.</p>
<p>The machine load should be small, to avoid that the  measurements are          affected by processes competing for CPU-time. This will also put  a limit          on the number of connections that can be simultaneously tested.</p>
<p>As the number of machines will be large, the software  should be easy          to maintain:</p>
<ul>
<li> One script should restart all processes after a reboot or  power failure. </li>
<li> The software should survive common errors and restart  itself without            operator interference. </li>
<li> An automated procedure, like rdist, will be used keep  the software            up to date. </li>
<li> As the machines will be located in the heart of the  networks of the            ISP's, they should be hacker-proof. In order to accomplish  this, the            number of accounts on the machines will be limited to the  absolute minimum,            all software will run in secure shells and no un-encrypted  passwords            will be sent over the net. Finally, all the software running  on the            machines will be made available to the participating ISP's, so  that            they can convince themselves that the Test Boxes do not  introduce any            security holes. </li>
</ul>
<p>All the software written for this project as well as the  design of the          Test Boxes will be made available to the participating ISP's.  They can          use it for measurements on the internal part of their networks.</p>
<h3>3.5 The clock</h3>
<p>The clock at the remote machines is the most critical part of  the whole          project. Before we start to work on any other part of the  project, we          should prove that a clock with sufficient accuracy can be built.</p>
<p>We aim for a accuracy that is at least 1 order of  magnitude better than          the smallest delays that will be measured by the box, including  drifts.          In a typical network environment, the delays will be of the  order of 10          ms, this then translates to a required accuracy of 1 ms or less.  The overall          error in a 10 ms delay measurement will then be of the order of  1.4ms.</p>
<p>We are considering three solutions for this problem:</p>
<h3>3.5.1 NTP/Network  Time Protocol</h3>
<p>This is a software protocol [<a class="anchor-link" href="#----access-to-the--data">4</a>]          that uses timing servers all over the world. With atomic clocks  as references          and suitable hardware, accuracies of down to a few hundred ps  can be obtained.          With off-the-shelf products, the accuracy will be less.</p>
<p>The current list of servers [5]           lists primary servers in: France, Germany, Holland, Italy,  Norway, Switzerland,          Sweden and the UK, and secondary servers in: Portugal, Poland  and Slovenia.</p>
<p>This approach uses free software, so the costs for this  solution are          small, assuming that the internal PC clock in a standard  environment is          stable enough for our purposes.</p>
<p>A potential problem is that there are large areas without a  nearby server.          Also, the accuracy might be affected by unstable networks. A  test-setup          will be used to determine if this solution can provide a stable  clock          under these circumstances. In these cases, an external reference  clock          has to be used to obtain the necessary resolution.</p>
<h3>3.5.2 Radio Time  Servers</h3>
<p>This is a system of long-wave radio stations broadcasting the  current          time. A receiver can collect these timing signals and provide  the local          time with an accuracy of the order of a few ms. Typical  receivers cost          of the order of $ 2500.- in 1992 [6].          There are, however, several problems with this approach:</p>
<p>First of all, timing signals are only available in the UK,  Germany and          surrounding areas. This means that this approach can only  provide a clock          signal for a small part of the global area covered by the  RIPE NCC. For          the remaining part, one needs another approach.</p>
<p>Then, reference [6]  mentions seasonal          effects and other corrections which are needed in order to get  the accuracy          of a few ms. This implies that the clocks need constant  attention in order          to keep the high accuracy.</p>
<p>Finally, the costs for each clock is much higher then for a  solution          that uses GPS receivers (discussed below).</p>
<p>For all these reasons, we will not consider this solution  any further.</p>
<h3>3.5.3 GPS Receivers</h3>
<p>This approach uses the Global Position System (GPS), a  satellite navigation          system developed by the US Department of Defence (DoD).  Receivers collect          a timing and position signal from up to 24 satellites. With the  system,          the time can be obtained with accuracies down to 200 µs.</p>
<p>There are several receivers on the market that can be  mounted as an          extension card inside a PC. These cards have to be connected to  an antenna          and can be read out by the PC. The NTP package [4]          can then be used to synchronize the internal clock to the global  time.          The GPS receivers will therefor provide an easy to maintain and  reliable          clock.</p>
<p>A test showed that an antenna mounted in the window of our  offices was          able to pick up the signals from several satellites, which is  sufficient          to provide a timing signal. This antenna has to be located,  depending          on the type of card and antenna, within 10 to 100m of the  receiver. This          puts some constraints on the local infrastructure at the ISP's.</p>
<p>Cards typically cost of the order of $1000 [7].</p>
<p>A side-effect of this solution is that we create a network  of high-precision          clocks (so-called stratum-1 NTP servers) through the area where  our Test Boxes          are located. These clocks can be used for other purposes. Also,  the GPS          receiver will provide its global position with an accuracy of  about 100m.</p>
<h3>3.5.4 Conclusion on  clocks</h3>
<p>We believe that GPS receivers combined with the NTP software  will provide          a suitable clock signal for all Test Boxes. However, this is the  most          critical problem in the project and we should focus on this  first.</p>
<h3>3.6 Costs</h3>
<p>The funding for the prototypes and initial deployment of the  test boxes          is discussed in [1].  Large scale          deployment and maintenance may require additional funding which  will be          sought separately.</p>
<h2><a name="---presentation-of-the--data"></a>4. Presentation of the  data</h2>
<p>We realise that the presentation of the measurement  results is a delicate          matter. We plan to organise this in close coordination with the  ISP's          concerned and the relevant RIPE Working Groups. The schemes  presented          below represent a first idea which certainly needs refinement as  the project          progresses.</p>
<h3>4.1 Disclosure of  the data</h3>
<p>We foresee three different levels of disclosure of the data:</p>
<ol>
<li> <b>Experts:</b> The experts at the NCC will, of course,  have access            to all data that is collected with our Test Boxes. </li>
<li> <b>Participating ISP's:</b> Each ISP that installs a  Test Box will            get access to all data related to his network (but not to data  related            to somebody else's network). </li>
<li> <b>Non-participating ISP's:</b> They will only have  access to global            quantities derived from the data. </li>
<li> <b>The general public:</b> The general public will  have access to            global quantities derived from the data, but with a more  detailed explanation            describing how the data should be interpreted. </li>
</ol>
<p>During the initial phases of the project, the data will be  distributed under        a non-disclosure agreement. Both the experts at the RIPE NCC and  the participating        ISP's can use the raw data for any analysis that they find  interesting but        both sides agree not to publish any results until the results have  been        verified (see section 5)  and both sides        agree that that they are meaningful, correct and can be published.  The details        of this agreement will be worked out with the participating ISP's.</p>
<h3>4.2 Access to the  data</h3>
<p>There will be several ways in which the data can be accessed:</p>
<ol>
<li> <b>Test-box:</b> The Test Box will have a mechanism that  will return            the results of the last set of measurements from this box to  the ISP            where the box is located. </li>
<li> <b>Server:</b> All information about an ISP will be  available for            that ISP only on the central computer for the project at the  RIPE NCC. </li>
<li> <b>Reports:</b> Finally, we will use automated tools  to extract summary            plots from the data. These plots will be made available on a  regular            basis.
<p>Two different kinds of reports may be made available:  Reports with              data relevant to a single ISP and reports with data relevant  to all              ISP's. The plots in the first category will be made to that  particular              ISP only, whereas the other plots will be made available to  the entire              Internet community. In the latter case, the plots will be  presented              in such a way that it is not possible to trace the data back  to a              particular ISP.</p>
</li>
</ol>
<p>The format in which the data will be presented will be decided in  mutual        agreement with the participating ISP's.</p>
<h3>4.3 Reports</h3>
<h3>4.3.1 Step 1</h3>
<p>In the initial phase, we foresee the following plots:</p>
<ul>
<li> Delays between two Test Boxes. </li>
<li> Length of the routing-vector. This information can be  cross-checked            against the number of hops that the delay measurement packets  saw between            sender and receiver. </li>
<li> Packet loss (# messages received/# messages sent).  From the reference            numbers in the packets, the receiving machine can determine  which packets            actually arrived and estimate the packet loss along the way. </li>
<li> Percentage of the connections working. A connection  between two points            is considered broken if less than a pre-defined fraction of  the test            traffic messages sent over that connection actually arrives.  From that,            we can determine the percentage of the connections in the  entire sample            that is actually working. </li>
<li> Time of arrival of the last message from host X. This  provides another            way to determine if a connection is working and to calculate  the fraction            of connections that are working. </li>
<li> Number of changes in the routing vector. </li>
<li> More plots will be defined as the project progresses. </li>
</ul>
<p>All these quantities will be plotted as a function of time of the  day. In        addition, the path information will be made available in some sort  of data-base.</p>
<h3>4.3.2 Step 2</h3>
<p>As soon as the individual plots are understood, we will start  generating          summary plots. These summary plots will contain information  about 1 particular          ISP (for example, the average delay to or from this ISP) or even  more          global quantities (like the average delay on the Internet).</p>
<p>As soon as we are confident that exceptional behavior (for  example,          the delay between two points suddenly doubles) is an indication  of a network          problem rather than a problem with our Test Boxes, we can start  to generate          warning messages to flag these conditions. There are several  ways to detect          these conditions, including quantities exceeding a certain  threshold,          <img align="middle" alt="tex2html_wrap_inline787" height="31" src="http://www.ripe.net/ripe/docs/img50.gif" width="16" /> test, Kolgomorov tests against known usage patterns, and so on.</p>
<h3>4.3.3 The far future</h3>
<p>There is much more information that can be extracted from this  data-set.          For example:</p>
<ul>
<li> Delays inside one country or geographical region, or from  one region            to another. </li>
<li> Correlations, if the traffic between points A and B is  slow, is this            correlated with heavy traffic from A to C, or C to B or even C  to D? </li>
<li> Trend analysis, how do the delays develop as a  function of time? </li>
<li> Optimization of the routing in the network. </li>
<li> Relation between the delays and the geographical  distance between            two Test Boxes. </li>
</ul>
<p>These and other subjects will be studied.</p>
<h2>5. Verifying the results</h2>
<h3>5.1 Local Test Bed</h3>
<p>Our plan is to first build a test bed consisting of two  Test Boxes in          a well known setup at the NCC and a third Test Box at a remote  ISP. This          test bed will be used for:</p>
<ul>
<li> Software development. </li>
<li> Software performance (timings, latencies, machine  load, etc). </li>
<li> Tests of the clock cards and their performance, in  particular:                              
<ul>
<li> Development of the interface for GPS clocks. </li>
<li> Measurements of the accuracy, drift and  resolutions that can                be obtained with both GPS and NTP clocks as well as tests  of hardware                modifications and filter algorithms to reduce drift and  increase                the accuracy of the clocks. </li>
<li> Measurements of the differences between two  identical clocks. </li>
<li> Tests of the effects of the environment  (temperature!) on the                clock. </li>
<li> Testing possible locations of the antenna and  their effect. </li>
</ul>
</li>
<li> Tests of the hardware stability. </li>
<li> Tests of the system maintenance procedures. </li>
<li> External checks: for example by connecting a scope to  two clocks            and comparing the clock-pulses with an independent, reliable,  source. </li>
</ul>
<p>In short, with this setup we should convince ourselves that  the hardware          does what we expect it to do.</p>
<h3>5.2 Internal  consistency</h3>
<p>We will check the internal consistency of the data by  comparing one-way          and two-way measurements. For example, the sum of the one-way  delays in          traffic sent from A to B and B to A should, assuming that the  paths are          the same, be equal to the delay measured with a two-way  measurement.</p>
<p>Also, a delay measured for traffic from A to C via B,  should be about          the same as the sum of the delays for traffic sent from A to B  and B to          C.</p>
<p>There are more tests like this possible, they should give  us a handle          on the in-situ performance of the Test Boxes.</p>
<h3>5.3 Error Analysis</h3>
<p>The treatment of statistical errors is well-known and should  not present          any problems.</p>
<p>In order to estimate the systematic errors, we will do  tests where the          clocks are artificially set of by x ms and see if we can detect  this from          the results.</p>
<h2>6 Implementation</h2>
<p><img alt="The time schedule for TTM project" class="image-inline" src="resolveuid/ecc89f736bf3e74236849bd895925488" /></p>
<p><b><a name="tab1"></a>Table 1:</b> The time  schedule          for this project. The milestones are marked with a *.</p>
<h3>6.1 Tools</h3>
<p>We are in the process of deciding which tools will be used to  implement          this project.</p>
<ul>
<li> <b>Clock:</b> we are currently investigating which cards  are available            on the market. </li>
<li> <b>Test-boxes:</b> our plan is to use off-the-shelf  industrial PC's            running BSD Unix. </li>
<li> <b>Plot package:</b> Two packages are being  considered:                              
<ul>
<li> The CERN-library tools (which includes a DST-mechanism)  and </li>
<li> PGPerl, a PERL extension to the PGPlot package. </li>
</ul>
</li>
<li> <b>Database:</b> For the first prototypes, we plan to  use a home-grown            database. At a later stage, a commercial product will be  considered. </li>
</ul>
<h3>6.2 Time Schedule</h3>
<p>The basic approach is that we want to start with a test bed  (see section 5).          This setup will be built during the summer of 1997. Data taking  will start          in the late summer.</p>
<p>If the test bed is a success, we will try to find a  handful (10...30)          ISP's who are interested in having a Test Box installed at their  sites.          These boxes will be used to test of the order of 100  connections, where          the number of 100 is set by the data volume that can be handled  without          major investments in storage devices. This setup will start  running early          1998. Several ISP's, both from the RIPE community and from those  participating          in the TERENA TF-ETM working group [8],           have shown interest in hosting our Test Boxes.</p>
<p>After this setup has proven to be a success, we will  develop a plan          to include more ISP's and connections.</p>
<p>A more detailed plan of deadlines and milestones can be  found in table 1.</p>
<h2>7. Conclusions</h2>
<p>In this document, we gave an overview of the test traffic  project, discussed          the implementation and mentioned a number of questions that have  to be          studied. The project was presented at the RIPE 27 Meeting and  the feedback    