# Un camino de dos hosts y tres routers, para medir retardo, throughput y colas,
# y para ver qué cambia en un paquete cuando cruza un router.
#
#   h1 --- r1 --- r2 --- r3 --- h2
#
# Las velocidades y los retardos de los enlaces no se definen aquí: los pone
# ../experiments.py con tc, porque cada medición usa valores distintos.
# La ruta de cada nodo está en su frr.conf: rutas estáticas, escritas a mano.
name: w01-path
mgmt:
  network: redes-w01
  ipv4-subnet: 172.90.1.0/24
  ipv6-subnet: 3fff:172:90:1::/64
topology:
  defaults:
    kind: linux
    image: redes-router
  nodes:
    h1:
      binds: [h1/frr.conf:/etc/frr/frr.conf:ro]
    r1:
      binds: [r1/frr.conf:/etc/frr/frr.conf:ro]
    r2:
      binds: [r2/frr.conf:/etc/frr/frr.conf:ro]
    r3:
      binds: [r3/frr.conf:/etc/frr/frr.conf:ro]
    h2:
      binds:
        - h2/frr.conf:/etc/frr/frr.conf:ro
        - h2/web:/srv/web
  # mtu 1500: el tamaño de un frame Ethernet normal. Sin esto, Containerlab
  # usa 9500 y las capturas no se parecen a las de una red real.
  links:
    - type: veth
      mtu: 1500
      endpoints:
        - {node: h1, interface: eth1}
        - {node: r1, interface: eth1}
    - type: veth
      mtu: 1500
      endpoints:
        - {node: r1, interface: eth2}
        - {node: r2, interface: eth1}
    - type: veth
      mtu: 1500
      endpoints:
        - {node: r2, interface: eth2}
        - {node: r3, interface: eth1}
    - type: veth
      mtu: 1500
      endpoints:
        - {node: r3, interface: eth2}
        - {node: h2, interface: eth1}
