<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Topological and Geographical Analysis on Routing and Server Selection of Anycast Clouds</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Felipe Espinoza NIC Chile Research Lab Santiago</string-name>
          <email>fdns@niclabs.cl</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Chile</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Copyright c by the paper's authors. Copying permitted for private and academic purposes. In: Proceedings of the IV School of Systems and Networks (SSN 2018)</institution>
          ,
          <addr-line>Valdivia</addr-line>
          ,
          <country country="CL">Chile</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Anycast is used by a large amount of DNS and CDN services for distribution, load balancing and latency reduction in the access of its resources. Given the private nature of the internet, the knowledge about the area of services of every anycast server and the optimality of the routes used by their clients to connect to these servers become very di use. This paper presents initial work on a geographical and topological mapping of an anycast cloud over the entire Internet, dividing it into /24 networks pre xes, presenting methods to perform measurements of routes, area of service and distances between servers and their clients, comparing the theorical optimum and the observed reality.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Anycast es una metodolog a de enrutamiento que
permite la distribucion de los paquetes a diferentes
servidores utilizando una unica direccion o bloque
IP. Esta metodolog a es utilizada por servidores DNS
(Domain Name System, por sus siglas en ingles)
[ICCCN6] y CDN (Content Delivery Network, por
sus siglas en ingles) [CONEXT15] para realizar una
distribucion de la carga que estos reciben, y acercar
los servicios a los clientes, permitiendo disminuir
los tiempos de acceso a los diferentes recursos, e
incrementar su disponibilidad ante problemas que
puedan ocurrir en la red.</p>
      <p>Para permitir a los clientes conectarse a los
servidores mas cercanos, cada AS (Autonomous
System, por sus siglas en ingles) utiliza el protocolo
BGP (Border Gateway Protocol, por sus siglas en
ingles) para de nir el camino mas corto de un
paquete para llegar a su destino. Sin embargo, estos
sistemas no presentan formas de asegurar que las
rutas seleccionadas por los AS abarquen a la cantidad
optima de usuarios en la cual operan.</p>
      <p>Dado el caracter privado de las caracter sticas de
la red y las tablas de rutas de los AS, realizar una
prediccion del camino y servidor al cual cada cliente
se conectara pasa a ser una tarea muy dif cil. Esta
informacion es muy importante para los proveedores de
estos servicios, para la deteccion de errores, balanceo
de carga, y posicionamiento de nuevos servidores en
puntos estrategicos que permitan el mejor rendimiento
y latencia para los clientes.</p>
      <p>NIC Chile actualmente opera su propia nube
anycast con mas de 26 servidores distribuidos en
diferentes pa ses, lo cual incrementa la complejidad del
ruteo y su descubrimiento. Para obtener un mayor
conocimiento sobre las rutas actuales, este trabajo
busca realizar una exploracion sobre las diferentes
rutas seleccionadas por los distintos AS en una
direccion de red anycast, determinando el area de
servicio de cada servidor, los AS involucrados y
caracter sticas de la red sobre la que se trabaja.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Trabajo Relacionado</title>
      <p>Los analisis que se han realizado sobre las redes
anycast utilizan distintos metodos para obtener el area
de servicio. Dos de los metodos mas utilizados en esta
area corresponden a los siguientes.</p>
      <sec id="sec-2-1">
        <title>Analisis de logs y capturas de paquetes:</title>
        <p>Esta forma de analisis permite a los operadores
de los servicios anycast obtener las fuentes desde
donde se genera el tra co de manera directa. Esta
posee la ventaja de entregar informacion exacta de
los lugares en los que sus servicios son utilizados,
y los volumenes de informacion sobre cada una
de las redes [PAM07]. Este tipo de analisis no
entrega informacion sobre la topolog a de la red
sobre la que se trabaja, lo cual no nos permite
realizar un analisis a fondo sobre las rutas que se
utilizan.</p>
        <p>Redes de medicion: Utilizando plataformas
con una gran cantidad de puntos de medicion, es
posible realizar un analisis del estado de una red
anycast de manera externa. Este tipo de analisis
realiza mediciones de valores tales como el RTT
(Round Trip Time, por sus siglas en ingles) de
diferentes localizaciones, o utiliza propiedades del
software ejecutado en la nube anycast, tal como
el env o de consultas CHAOS a servidores DNS
para la identi cacion de estos.</p>
        <p>Este tipo de mediciones permite obtener una
vision externa de los servicios. Sin embargo, no
logran realizar una observacion completa sobre
los clientes de la nube anycast, dado que los
puntos de observacion no existen en todas las
redes de internet. Plataformas tales como RIPE
Atlas proveen aproximadamente 10,000 puntos de
observacion que permiten una buena vision sobre
el despliegue [PAM17], sin embargo, generalmente
estos se encuentran sesgados a lugares con una
gran concentracion de usuarios, principalmente
Estados Unidos y Europa, lo cual produce que
mediciones en lugares tales como Sudamerica y
Asia sean poco representativas.</p>
        <p>Por otro lado, se han realizado evaluaciones a
largo plazo sobre la disponibilidad y efectividad de los
diferentes despliegues de redes anycast, mostrando los
efectos de diferentes eventos sobre cambios en la red
[NOMS10]. Ademas, se han realizado estudios sobre
la estabilidad de estas redes, donde se ha encontrado
que las rutas anycast son mayoritariamente estables,
permitiendonos realizar una mejor plani cacion de los
despliegues de estos servidores [TNSM17], sin esperar
cambios importantes en la topolog a que afecten al
rendimiento de esta.</p>
        <p>Las ultimas investigaciones utilizan redes de
medicion, realizando una comparacion entre el caso
optimo y el observado. En caso de poseer acceso a la
red anycast, se han desarrollado mediciones utilizando
paquetes ICMP para establecer los bloques IP y areas
de servicio de cada servidor anycast [IMC17.2].</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Metodolog a Propuesta</title>
      <p>En este trabajo, se busca responder las siguientes
preguntas: (a) &gt;Son los servidores mas cercanos los
que responden las consultas DNS ? (b) &gt;Es posible
determinar las rutas utilizadas por los clientes para
conectarse a los servidores DNS? (c) &gt;Es posible
determinar el posicionamiento de un nuevo servidor
DNS segun la topolog a de internet?
3.1</p>
      <sec id="sec-3-1">
        <title>Medicion de rutas y area de servicio</title>
        <p>El analisis de las areas de servicio de cada servidor
se separara en pre jos de red /24, dado que
este corresponde al l mite actual utilizado para el
establecimiento de las rutas BGP. En cada uno de
estos pre jos, se elegira a un representante que se
encuentre activo para realizar las mediciones. Para
esto, es posible utilizar Hitlists ya calculadas o realizar
un calculo local de esta [IMC10].</p>
        <p>Para ejecutar las mediciones del area de servicio
de cada direccion IP. Un servidor en la red anycast
a analizar realizara el env o de un paquete UDP o
ICMP a cada direccion de la Hitlists, estableciendo en
los demas servidores sondas que reciban las respuestas
de los paquetes enviados. Dado que la direccion
de respuesta corresponde a la nube anycast, los
paquetes seran dirigidos por la red hacia el servidor
correspondiente al cliente en el pre jo de red indicado,
tal como se puede apreciar en la gura 1.</p>
        <p>Figura 1: Ejemplo de ejecucion de medicion de area
de servicio. El servidor 1 env a paquetes a los cliente
1 y 2, y las respuestas son enrutadas segun las tablas
de rutas de los routers a los servidores respectivos.</p>
        <p>Para realizar el calculo de la ruta sobre la cual cada
servidor en la nube anycast trabaja, por cada paquete
recibido del analisis, es necesario ejecutar un traceroute
para identi car los routers intermedios desde cada
punto de medicion. Este proceso puede optimizarse
realizando una prediccion sobre la cantidad de saltos
que separan el cliente y el servidor observando el
TTL (Time To Live, por sus siglas en ingles) recibido
desde el cliente, tomando la suposicion de que los
clientes generalmente utilizan un TTL de 64, 128 o
255. Con este TTL, es posible ejecutar el traceroute
desde el cliente hasta el origen, y detener su ejecucion
al encontrar un router comun con otras mediciones,
permitiendo evitar el calculo de rutas ya realizadas,
como se aprecia en la Figura 2.</p>
        <p>Figura 2: Segundo trazado ejecutado por los servidores
receptores, el cual se realiza desde un paso anterior del
TTL recibido, hasta detectar un nodo ya medido. Si
el Router 3 ya se encuentra medido, no se realizara
mediciones al Router 2 u otros anteriores.
3.2</p>
      </sec>
      <sec id="sec-3-2">
        <title>Medicion</title>
        <p>topologicas
de
distancias
geogra cas
y
Para generar un mapa topologico sobre las distintas
redes sobre las cuales cada servidor en la nube anycast
trabaja, es posible asociar cada direccion IP en las
rutas calculadas a un AS en particular utilizando
informacion recolectada por RIPE NCC sobre los
Servicios de Ruteo de Informacion (RIS, por sus siglas
en ingles, Routing Information Service), la cual posee
las subredes sobre las cuales cada AS trabaja.</p>
        <p>Para establecer las distancias actuales entre cada
paso de las rutas calculadas, se utilizara el RTT
obtenido de cada medicion, estableciendo la distancia
entre cada router o AS como el tiempo que toma cada
paquete de pasar desde un salto a otro.</p>
        <p>Para realizar la medicion de las distancias
geogra cas del servidor y sus clientes, se utilizara
la base de datos MaxMind [MAXM] para realizar
la geolocalizacion a nivel pa s de cada direccion IP
analizada. En caso de necesitar incrementar la
precision a nivel ciudad, es posible utilizar versiones
pagadas de MaxMind o NetAcuity [NETAC], las
cuales ofrecen una precision de 70.1% y 66.5%
respectivamente [IMC17.1].
3.3</p>
      </sec>
      <sec id="sec-3-3">
        <title>Calculo de seleccion de servidor optimo</title>
        <p>Para realizar la comparacion de las rutas teoricas
y calculadas desde el punto de vista topologico, se
utilizaran las rutas extra das desde el analisis, y se
complementaran con bases de datos externas tales
como tablas de ruta RIS de RIPE NCC y la base
de datos CAIDA's Ark [CAIDA]. Luego de esto, se
utilizaran algoritmos de busqueda para calcular los
pares optimos entre clientes y servidores, tomando en
cuenta las distancias calculadas entre los AS.</p>
        <p>Para el caso de la comparacion geogra ca, se
utilizara la localizacion de los servidores anycast ya
conocida, y se comparara con la localizacion de los
clientes obtenida utilizando la base de datos MaxMind
a nivel de ciudad. Este resultado se comparara con
las distancias a los otros servidores, determinando si
el calculado corresponde o no al mas cercano.
4</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Resultados Futuros</title>
      <p>A traves de los experimentos a realizar, esperamos
obtener informacion sobre las diferentes areas de
servicio de cada servidor, determinando los routers
o AS en los cuales se produce el cambio de rutas
de un servidor anycast a otro, ademas de todos los
routers intermedios que se encuentran asociados a cada
servidor.</p>
      <p>Por otro lado, podremos apreciar el porcentaje
de clientes que poseen las rutas optimas a los
servidores anycast, en terminos de distancia topologica
y geogra ca, apreciando las diferencias que pueden
existir entre estas.</p>
      <p>Utilizando la informacion sobre las distancias
topologicas, en complementacion con informacion de
los clientes actuales en los servidores, sera posible
calcular una posicion en la red tal que, al posicionar
un nuevo servidor en la nube anycast, la reduccion
de los RTT sea maxima. Esta posicion solo podra
calcularse de forma teorica, dado a diferencias en los
algoritmos utilizados para el calculo de las rutas en los
diferentes AS. Sin embargo, nos entregara informacion
inicial para comenzar un analisis de la posicion de un
nuevo servidor.</p>
      <p>Por ultimo, es posible utilizar la informacion
generada por estos experimentos para realizar otros
tipos de analisis, tal como la deteccion de IP Spoo ng,
realizando una comparacion entre la IP de los clientes
con el area de servicio de cada servidor, logrando
detectar consultas que no deber an ser recibidas por
estos. Esto puede ser utilizado como medida de
mitigacion de ataques DDoS, donde servidores DNS
son utilizados como metodo de ampli cacion.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [ICCCN6]
          <string-name>
            <given-names>S.</given-names>
            <surname>Sarat</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Pappas</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Terzis</surname>
          </string-name>
          ,
          <article-title>"On the Use of Anycast in DNS"</article-title>
          .
          <source>Proceedings of 15th International Conference on Computer Communications and Networks</source>
          , Arlington,
          <string-name>
            <surname>VA</surname>
          </string-name>
          ,
          <year>2006</year>
          , pp.
          <fpage>71</fpage>
          -
          <lpage>78</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [CONEXT15]
          <string-name>
            <given-names>Danilo</given-names>
            <surname>Cicalese</surname>
          </string-name>
          ,
          <string-name>
            <surname>Jordan Auge</surname>
            , Diana Joumblatt, Timur Friedman, and
            <given-names>Dario</given-names>
          </string-name>
          <string-name>
            <surname>Rossi</surname>
          </string-name>
          .
          <article-title>"Characterizing IPv4 anycast adoption and deployment"</article-title>
          .
          <source>In Proceedings of the 11th ACM Conference on Emerging Networking Experiments and Technologies (CoNEXT '15)</source>
          . ACM, New York, NY, USA,
          <year>2015</year>
          , Article
          <volume>16</volume>
          , 13 pages.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [IMC10]
          <string-name>
            <surname>Fan</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Heidemann</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <article-title>Selecting representative IP addresses for Internet topology studies</article-title>
          .
          <source>In Proceedings of the ACM Internet Measurement Conference (Melbourne</source>
          , Australia, Nov.
          <year>2010</year>
          ), ACM, pp.
          <volume>411</volume>
          {
          <fpage>423</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <source>[MAXM] MaxMind Inc</source>
          .
          <year>2018</year>
          .
          <article-title>MaxMind GeoIP2 City</article-title>
          . https://www.maxmind.com/en/ geoip2-databases.
          <source>(Agosto</source>
          <year>2018</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          <source>[NETAC] Digital Envoy</source>
          .
          <year>2018</year>
          .
          <article-title>Digital Element NetAcuity databases</article-title>
          . https://www.digitalelement.com/geolocation/.
          <source>(Agosto</source>
          <year>2018</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <source>[IMC17</source>
          .1]
          <string-name>
            <given-names>Manaf</given-names>
            <surname>Gharaibeh</surname>
          </string-name>
          , Anant Shah, Bradley Hu aker, Han Zhang, Roya Ensa , and
          <string-name>
            <given-names>Christos</given-names>
            <surname>Papadopoulos</surname>
          </string-name>
          .
          <year>2017</year>
          .
          <article-title>A look at router geolocation in public and commercial databases</article-title>
          .
          <source>In Proceedings of the 2017 Internet Measurement Conference (IMC '17)</source>
          . ACM, New York, NY, USA,
          <fpage>463</fpage>
          -
          <lpage>469</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          <source>[CAIDA] The CAIDA Internet Topology Data Kit - 2017-08</source>
          , http://www.caida.org
          <article-title>/data/ internet-topology-data-kit</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [NOMS10]
          <string-name>
            <surname>Bu-Sung</surname>
            <given-names>Lee</given-names>
          </string-name>
          , Yu Shyang Tan,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Sekiya</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Narishige</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Date</surname>
          </string-name>
          ,
          <article-title>"Availability and e ectiveness of root DNS servers: A long term study"</article-title>
          ,
          <source>2010 IEEE Network Operations and Management Symposium - NOMS</source>
          <year>2010</year>
          , Osaka,
          <year>2010</year>
          , pp.
          <fpage>862</fpage>
          -
          <lpage>865</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [TNSM17]
          <string-name>
            <given-names>L.</given-names>
            <surname>Wei</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Heidemann</surname>
          </string-name>
          ,
          <article-title>"Does anycast hang up on you?," 2017 Network Tra c Measurement and Analysis Conference (TMA</article-title>
          ), Dublin,
          <year>2017</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>9</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          <source>[IMC17</source>
          .2]
          <string-name>
            <surname>Wouter B. de Vries</surname>
            , Ricardo de
            <given-names>O.</given-names>
          </string-name>
          <string-name>
            <surname>Schmidt</surname>
          </string-name>
          , Wes Hardaker, John Heidemann,
          <string-name>
            <surname>Pieter-Tjerk de Boer</surname>
            , and
            <given-names>Aiko</given-names>
          </string-name>
          <string-name>
            <surname>Pras</surname>
          </string-name>
          .
          <year>2017</year>
          .
          <article-title>Broad and load-aware anycast mapping with verfploeter</article-title>
          .
          <source>In Proceedings of the 2017 Internet Measurement Conference (IMC '17)</source>
          . ACM, New York, NY, USA,
          <fpage>477</fpage>
          -
          <lpage>488</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [PAM07] Liu
          <string-name>
            <given-names>Z.</given-names>
            ,
            <surname>Hu</surname>
          </string-name>
          aker
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>Fomenkov</surname>
          </string-name>
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Brownlee</surname>
          </string-name>
          <string-name>
            <surname>N.</surname>
          </string-name>
          , cla y . (
          <year>2007</year>
          )
          <article-title>"Two Days in the Life of the DNS Anycast Root Servers." In: Uhlig S</article-title>
          .,
          <string-name>
            <surname>Papagiannaki</surname>
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bonaventure</surname>
            <given-names>O</given-names>
          </string-name>
          . (
          <article-title>eds) Passive and Active Network Measurement</article-title>
          .
          <source>PAM 2007. Lecture Notes in Computer Science</source>
          , vol
          <volume>4427</volume>
          . Springer, Berlin, Heidelberg
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          <string-name>
            <surname>[PAM17] Oliveira Schmidt</surname>
            <given-names>R</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Heidemann</surname>
            <given-names>J</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kuipers</surname>
            <given-names>J.H.</given-names>
          </string-name>
          <article-title>"Anycast Latency: How Many Sites Are Enough?"</article-title>
          . In:
          <string-name>
            <surname>Kaafar</surname>
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Uhlig</surname>
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Amann</surname>
            <given-names>J</given-names>
          </string-name>
          . (eds)
          <article-title>Passive and Active Measurement</article-title>
          .
          <source>PAM 2017. Lecture Notes in Computer Science</source>
          , vol
          <volume>10176</volume>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>