<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    On 5/7/12 21:44 , Jérôme Benoit wrote:
    <blockquote
      cite="mid:20120507214423.5b08f0f3@nemesis.grenouille.com"
      type="cite">
      <pre wrap="">On Mon, 07 May 2012 14:15:26 +0200
Philip Homburg <a class="moz-txt-link-rfc2396E" href="mailto:philip.homburg@ripe.net"><philip.homburg@ripe.net></a> wrote:

</pre>
      <blockquote type="cite">
        <pre wrap="">

To list some things that have been mentioned:

  * TTM shutdown, Atlas is expected to provide functionality similar
    (but not identical) to what TTM provides
</pre>
      </blockquote>
      <pre wrap="">
You plan to change the measurement control protocol used in TTM ? 
I do not know which protocol TTM is using but if it's OWAMP ou TWAMP,
that will not fit the needs for large scale measurement campaign runt
from network edge.  </pre>
    </blockquote>
    TTM boxes have GPS devices for time synchronization. That allows
    them to perform accurate one-way measurements. This capability will
    be lost.<br>
    <br>
    The TTM network is relatively small and static. Atlas can easily
    handle that, except you will be limited to two-way measurements.<br>
    <blockquote
      cite="mid:20120507214423.5b08f0f3@nemesis.grenouille.com"
      type="cite">
      <pre wrap="">
In what Atlas call a "probe" (and what I call the measurement agent) ? 

</pre>
    </blockquote>
    Yes. Except that an Atlas probe tends to be a physical device as
    well.<br>
    <br>
    <blockquote
      cite="mid:20120507214423.5b08f0f3@nemesis.grenouille.com"
      type="cite">
      <blockquote type="cite">
        <pre wrap="">  * Roll out of Atlas Anchor boxes (regular PCs at well connected
    locations that can serve as the target of measurements and as a
more powerful Atlas probe)
</pre>
      </blockquote>
      <pre wrap="">
Sound like a good idea :)

You then should add a tag to the measurement result that will permit
to distinguish the type of box running the measurement agent, like 

"generated": atlas-probe
"generated": atlas-box

for example. 
</pre>
    </blockquote>
    We still have to figure out where we want to document meta-data. It
    doesn't make much sense to put all data about a probe in each and
    every measurement result.<br>
    <blockquote
      cite="mid:20120507214423.5b08f0f3@nemesis.grenouille.com"
      type="cite">
      <pre wrap="">
</pre>
      <blockquote type="cite">
        <pre wrap="">  * Better UDM interface
  * UDM for all RIPE members (instead of just probe hosts and
sponsors)
</pre>
      </blockquote>
      <pre wrap="">
Eye candies. </pre>
    </blockquote>
    <br>
    No, it is not eye candy. UDM allows users of the Atlas system to
    measure their own targets using remote probes.
    <blockquote
      cite="mid:20120507214423.5b08f0f3@nemesis.grenouille.com"
      type="cite">
      <pre wrap="">
If you have any document describing the JSON syntax used in Atlas, I
can write the code for your measurement agent that will
de-/serialize the probe definition to begin with. </pre>
    </blockquote>
    Commands for the probes are not in JSON. For output we are still
    transitioning to JSON. Currently the output is a mix of JSON meta
    data and free form ASCII output. In the next firmware upgrade that
    should become just JSON. For example for ping:<br>
    <br>
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <div class="line number1 index0 alt2"><code class="java plain">{</code></div>
    <div class="line number2 index1 alt1"><code class="java spaces">    </code><code
        class="java string">"id"</code><code class="java plain">:</code><code
        class="java string">"1001"</code><code class="java plain">,</code></div>
    <div class="line number3 index2 alt2"><code class="java spaces">    </code><code
        class="java string">"fw"</code><code class="java plain">:</code><code
        class="java value">4414</code><code class="java plain">,</code></div>
    <div class="line number4 index3 alt1"><code class="java spaces">    </code><code
        class="java string">"time"</code><code class="java plain">:</code><code
        class="java value">1331729380</code><code class="java plain">,</code></div>
    <div class="line number5 index4 alt2"><code class="java spaces">    </code><code
        class="java string">"name"</code><code class="java plain">:</code><code
        class="java string">"193.0.14.129"</code><code class="java
        plain">,</code></div>
    <div class="line number6 index5 alt1"><code class="java spaces">    </code><code
        class="java string">"addr"</code><code class="java plain">:</code><code
        class="java string">"193.0.14.129"</code><code class="java
        plain">,</code></div>
    <div class="line number7 index6 alt2"><code class="java spaces">    </code><code
        class="java string">"srcaddr"</code><code class="java plain">:</code><code
        class="java string">"193.0.10.135"</code><code class="java
        plain">,</code></div>
    <div class="line number8 index7 alt1"><code class="java spaces">    </code><code
        class="java string">"mode"</code><code class="java plain">:</code><code
        class="java string">"ICMP4"</code><code class="java plain">,</code></div>
    <div class="line number9 index8 alt2"><code class="java spaces">    </code><code
        class="java string">"ttl"</code><code class="java plain">:</code><code
        class="java value">62</code><code class="java plain">,</code></div>
    <div class="line number10 index9 alt1"><code class="java spaces">    </code><code
        class="java string">"size"</code><code class="java plain">:</code><code
        class="java value">20</code><code class="java plain">,</code></div>
    <div class="line number11 index10 alt2"><code class="java spaces">    </code><code
        class="java string">"result"</code><code class="java plain">: [</code></div>
    <div class="line number12 index11 alt1"><code class="java spaces">        </code><code
        class="java plain"> { </code><code class="java string">"rtt"</code><code
        class="java plain">:</code><code class="java value">49.101000</code>
      <code class="java plain">},</code></div>
    <div class="line number13 index12 alt2"><code class="java spaces">        </code><code
        class="java plain"> { </code><code class="java string">"rtt"</code><code
        class="java plain">:</code><code class="java value">6.899000</code>
      <code class="java plain">},</code></div>
    <div class="line number14 index13 alt1"><code class="java spaces">        </code><code
        class="java plain"> { </code><code class="java string">"rtt"</code><code
        class="java plain">:</code><code class="java value">4.139000</code>
      <code class="java plain">} </code></div>
    <div class="line number15 index14 alt2"><code class="java spaces">    </code><code
        class="java plain">] </code></div>
    <div class="line number16 index15 alt1"><code class="java plain">}<br>
        <br>
        We have this as internal documentation, but it should be
        published some time. <br>
      </code></div>
    <br>
    <blockquote
      cite="mid:20120507214423.5b08f0f3@nemesis.grenouille.com"
      type="cite">
      <pre wrap="">


We do not have securities problem because of OCaml choice
on the implementation side. Securities mechanism will probably be
the same as of the one you can find on most "web services" (shared
secret salted and hashed) to ensure that a REST transaction is
legit. I have to think about it some more ...   </pre>
    </blockquote>
    Our security policy goes further than just protecting the probe. We
    also try to avoid getting the probe hosts in trouble. For example,
    having a probe visit certain web sites may be a bad idea.<br>
    <blockquote
      cite="mid:20120507214423.5b08f0f3@nemesis.grenouille.com"
      type="cite">
      <pre wrap="">    

For API and JSON syntax standardisation, the first step is to write the
specifications we(grenouille.com) plan to use and Atlas use and plan to
use, then discuss and factor out the best of each. We have some
writings but most of them are in French :)   
</pre>
    </blockquote>
    Yes.<br>
    <blockquote
      cite="mid:20120507214423.5b08f0f3@nemesis.grenouille.com"
      type="cite">
      <pre wrap="">
</pre>
      <blockquote type="cite">
        <blockquote type="cite">
          <pre wrap="">I do not know the list of active measurements an Atlas probe cover.

</pre>
        </blockquote>
        <pre wrap="">At the moment, ping, traceroute, tdig (dns), httpget, sslgetcert.


</pre>
      </blockquote>
      <pre wrap="">
Natively implemented or run via a external binary and CLI options ? 
</pre>
    </blockquote>
    Natively implemented. Creating lots of new processes turned out to
    be a bad idea on a system without an MMU.<br>
    <br>
  </body>
</html>