Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ _data/
research_areas.yml research areas: home cards + /research/<slug>/ pages
highlights.yml home-page project cards
publication_topics.yml publication topics (labels), trilingual
software.yml /software/: web-tool cards, featured repos (pin cards), GitHub orgs
ietf.yml /ietf/: RFCs, Internet-Drafts, IETF Day links (verified facts)
theses.yml, navigation.yml, ui-text.yml
_news/ one file per news item and language (inline, no pages)
_bibliography/conexdat.bib THE publication list (other .bib files are unused sources)
Expand Down Expand Up @@ -119,6 +121,10 @@ hard-codes that origin for CSS and assets.
- **Icons** are generated from `images/logo_conexdat.png` (network drawing only, strokes
thickened for 16/32 px) with ImageMagick; regenerate all of them together if the logo
changes. `images/` is excluded from localization, so icon links never get `/en/`.
- **Repository cards** on /software/ are SVGs from `github-stats-extended.vercel.app`, a
third-party service: every visitor's IP reaches it, and an error it serves as HTTP 200
(for example a rate-limit card) shows up as the card instead of the plain-link fallback.
Keep the list short, and replace the service if it becomes unreliable.
- `jekyll-sass-converter` is pinned to 2.x on purpose: the academicpages partials do not
compile under dart-sass (3.x). Dependabot is told to ignore that major version.
- Jekyll-scholar exposes custom BibTeX fields (`topics`, `pdf`, `code`, ...) to
Expand Down
2 changes: 2 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@ public face of the group, so small, well-scoped changes are preferred.
| Add a news item | `_news/YYYY-MM-DD-slug.md` (+ `.en.md`, `.fr.md`) |
| Add a publication | `_bibliography/conexdat.bib` (+ `topics`) |
| Add / rename a publication topic | `_data/publication_topics.yml` |
| Change the software cards or repos | `_data/software.yml` |
| Add an RFC, draft or IETF activity | `_data/ietf.yml` |
| Add / update a funded project | `_data/projects.yml` |
| Change a home-page project card | `_data/highlights.yml` |
| Change a research area | `_data/research_areas.yml` |
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ Open <http://localhost:4000/>, <http://localhost:4000/en/>,
- `_bibliography/conexdat.bib` — publications (rendered by jekyll-scholar),
each tagged with `topics = {…}`
- `_data/publication_topics.yml` — trilingual publication topics (labels)
- `_data/software.yml`, `_data/ietf.yml` — the Software and IETF pages
- `_includes/people-list.html`, `projects-list.html` — shared layouts
- `_includes/publications-filter.html` + `assets/js/publications.js` — search,
topic and person filters on `/publications/`
Expand Down
5 changes: 5 additions & 0 deletions _config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -179,6 +179,11 @@ cnet:
- alvarez-hamelin
- beiro
- carisimo
# Per-language sidebar tagline (author-profile.html falls back to author.bio)
bio:
es: "Grupo de Redes Complejas y Comunicación de Datos"
en: "Complex Networks and Data Communication Group"
fr: "Groupe Réseaux Complexes et Communication de Données"
# Per-language meta description (seo.html falls back to top-level `description`)
description:
es: *description
Expand Down
55 changes: 55 additions & 0 deletions _data/ietf.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# =============================================================================
# CoNexDat — IETF page (/ietf/), trilingual. Facts verified on 2026-09-28
# against the RFC Editor, IETF Datatracker (person 123380) and the JAIIO sites.
# English uses American English.
# =============================================================================

datatracker_profile: "https://datatracker.ietf.org/person/Jos%C3%A9%20Ignacio%20Alvarez-Hamelin"

rfcs:
- id: "RFC 9198"
title: "Advanced Unidirectional Route Assessment (AURA)"
authors: "J. Alvarez-Hamelin, A. Morton, J. Fabini, C. Pignataro, R. Geib"
date: { es: "mayo de 2022", en: "May 2022", fr: "mai 2022" }
status:
es: "Estándar propuesto, grupo de trabajo IPPM (IP Performance Measurement). Actualiza la RFC 2330."
en: "Proposed Standard, IPPM (IP Performance Measurement) working group. Updates RFC 2330."
fr: "Norme proposée, groupe de travail IPPM (IP Performance Measurement). Met à jour le RFC 2330."
blurb:
es: "Define una métrica y una metodología para evaluar la ruta unidireccional entre un origen y un destino, incluidas las subrutas paralelas que introducen las tecnologías multicamino."
en: "Defines a metric and a measurement methodology to assess the unidirectional route between a source and a destination, including the parallel subpaths introduced by multipath technologies."
fr: "Définit une métrique et une méthodologie pour évaluer la route unidirectionnelle entre une source et une destination, y compris les sous-chemins parallèles introduits par les technologies multichemins."
links:
- { label: "RFC Editor", url: "https://www.rfc-editor.org/rfc/rfc9198.html" }
- { label: "Datatracker", url: "https://datatracker.ietf.org/doc/rfc9198/" }
- { label: "DOI", url: "https://doi.org/10.17487/RFC9198" }

drafts:
- id: "draft-alavarez-hamelin-tictoc-sic"
title: "Synchronizing Internet Clock frequency protocol (sic)"
status:
es: "Internet-Draft individual; última versión -08 (noviembre de 2021), vencido en mayo de 2022."
en: "Individual Internet-Draft; latest revision -08 (November 2021), expired in May 2022."
fr: "Internet-Draft individuel ; dernière révision -08 (novembre 2021), expiré en mai 2022."
blurb:
es: "Método seguro para sincronizar relojes en Internet con estabilidad de frecuencia y robustez frente a ataques de intermediario (*man-in-the-middle*), pensado para la calidad de las mediciones de desempeño."
en: "A secure method to synchronize clocks on the Internet with frequency stability and robustness to man-in-the-middle attacks, aimed at the quality of performance measurements."
fr: "Une méthode sécurisée pour synchroniser les horloges sur Internet, avec stabilité en fréquence et robustesse aux attaques de l'homme du milieu, au service de la qualité des mesures de performance."
links:
- { label: "Datatracker", url: "https://datatracker.ietf.org/doc/draft-alavarez-hamelin-tictoc-sic/" }
- { label: "GitHub", url: "https://github.com/CoNexDat/SIC" }
- id: "draft-ietf-ippm-route"
title: "Advanced Unidirectional Route Assessment (AURA)"
status:
es: "Documento del grupo IPPM (versiones -00 a -10), publicado como RFC 9198. Empezó como el draft individual draft-amf-ippm-route."
en: "IPPM working-group draft (revisions -00 to -10), published as RFC 9198. It started as the individual draft draft-amf-ippm-route."
fr: "Document du groupe IPPM (révisions -00 à -10), publié comme RFC 9198. Il a commencé comme draft individuel draft-amf-ippm-route."
links:
- { label: "Datatracker", url: "https://datatracker.ietf.org/doc/draft-ietf-ippm-route/" }
- { label: "draft-amf-ippm-route", url: "https://datatracker.ietf.org/doc/draft-amf-ippm-route/" }

ietf_day:
links:
- { label: "JAIIO 2026", url: "https://55jaiio.sadio.org.ar/simposios" }
- { label: { es: "Actas 2022", en: "2022 proceedings", fr: "Actes 2022" }, url: "https://revistas.unlp.edu.ar/JAIIO/issue/view/1136" }
- { label: "JAIIO 2020", url: "https://49jaiio.sadio.org.ar/simposios/IETFDay.html" }
6 changes: 6 additions & 0 deletions _data/navigation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,12 @@ main:
fr: "Logiciels"
url: /software/

- title:
es: "IETF"
en: "IETF"
fr: "IETF"
url: /ietf/

- title:
es: "Contacto"
en: "Contact"
Expand Down
12 changes: 6 additions & 6 deletions _data/research_areas.yml
Original file line number Diff line number Diff line change
Expand Up @@ -170,9 +170,9 @@
en: "Standards (IETF)"
fr: "Normes (IETF)"
blurb:
es: "Contribuciones al IETF — *RFC 9198 (AURA)* para estandarizar mediciones unidireccionales — y propuestas de **ruteo EGP** sub-lineal."
en: "IETF contributions — *RFC 9198 (AURA)* on standardizing unidirectional measurements — and proposals for **sub-linear EGP routing**."
fr: "Contributions à l'IETF — *RFC 9198 (AURA)* sur la mesure unidirectionnelle — et propositions de **routage EGP** sous-linéaire."
es: "Contribuciones al IETF — *RFC 9198 (AURA)* para estandarizar mediciones unidireccionales — y propuestas de **ruteo EGP** sub-lineal. [Más sobre el IETF](/ietf/)."
en: "IETF contributions — *RFC 9198 (AURA)* on standardizing unidirectional measurements — and proposals for **sub-linear EGP routing**. [More on the IETF](/ietf/)."
fr: "Contributions à l'IETF — *RFC 9198 (AURA)* sur la mesure unidirectionnelle — et propositions de **routage EGP** sous-linéaire. [En savoir plus sur l'IETF](/ietf/)."
collaborations:
- name:
es: "Primeros IXPs de Bolivia y Paraguay — Internet Society"
Expand Down Expand Up @@ -215,9 +215,9 @@
- title: "RFC 9198 — AURA"
url: "https://www.rfc-editor.org/rfc/rfc9198"
blurb:
es: "Advanced Unidirectional Route Assessment — RFC informativo del IETF."
en: "Advanced Unidirectional Route Assessment — informational IETF RFC."
fr: "Advanced Unidirectional Route Assessment — RFC informatif de l'IETF."
es: "Advanced Unidirectional Route Assessment — estándar propuesto del IETF (grupo IPPM, 2022)."
en: "Advanced Unidirectional Route Assessment — IETF Proposed Standard (IPPM working group, 2022)."
fr: "Advanced Unidirectional Route Assessment — norme proposée de l'IETF (groupe IPPM, 2022)."
papers:
- CDFDPAH20 # First Look at Latin American IXPs (CCR 2020)
- CSAHD19 # CDNs in IPv4/IPv6 Internet cores
Expand Down
54 changes: 54 additions & 0 deletions _data/software.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# =============================================================================
# CoNexDat — software page (/software/), trilingual.
# web_tools: services the group runs; rendered as cards with a "Visit" button.
# repos: featured GitHub repositories (owner/name), rendered as pin cards
# from github-stats-extended, the service estcarisimo.github.io uses.
# Keep the list short; the orgs below link to everything else.
# orgs: GitHub organizations with the rest of the code.
# English uses American English.
# =============================================================================

web_tools:
- name: "LaNet-vi"
url: "https://lanet-vi.fi.uba.ar/"
icon: "fas fa-circle-nodes"
blurb:
es: "Visualización de redes grandes mediante descomposición en k-núcleos, k-densos y d-núcleos."
en: "Large-network visualization by k-core, k-dense and d-core decomposition."
fr: "Visualisation de grands réseaux par décomposition en k-cœurs, k-denses et d-cœurs."
- name: "netcores"
url: "https://netcores.fi.uba.ar/"
icon: "fas fa-diagram-project"
blurb:
es: "Análisis interactivo del núcleo de Internet: cómo los proveedores de contenido llegaron a su centro."
en: "Interactive analysis of the Internet core: how content providers moved to its center."
fr: "Analyse interactive du cœur d'Internet : comment les fournisseurs de contenu en ont gagné le centre."
- name: "I'm Here!"
url: "https://lanet-vi.fi.uba.ar/i-am-here"
icon: "fas fa-location-dot"
blurb:
es: "Un mapa de la topología de Internet que muestra dónde estás vos."
en: "A map of the Internet topology that shows where you are."
fr: "Une carte de la topologie d'Internet qui montre où vous êtes."

repos:
- CoNexDat/LaNet-vi
- CoNexDat/complexnets
- CoNexDat/SIC
- CoNexDat/ANTop
- TiX-measurements/tix-deploy
- TiX-measurements/tix-time-server

orgs:
- name: "CoNexDat"
url: "https://github.com/CoNexDat"
label:
es: "Todos los repositorios de CoNexDat"
en: "All CoNexDat repositories"
fr: "Tous les dépôts CoNexDat"
- name: "TiX-measurements"
url: "https://github.com/TiX-measurements"
label:
es: "TiX (Traffic information eXchange)"
en: "TiX (Traffic information eXchange)"
fr: "TiX (Traffic information eXchange)"
2 changes: 1 addition & 1 deletion _data/ui-text.yml
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ fr: &DEFAULT_FR
comments_title :
more_label : "Lire plus"
related_label : "Vous pourriez aimer"
follow_label : "Suivez moi"
follow_label : "Suivre :"
feed_label : "Flux"
powered_by : "Propulsé par"
website_label : "Site"
Expand Down
3 changes: 2 additions & 1 deletion _includes/author-profile.html
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@
<div class="author__content">
<h3 class="author__name">{{ author.name }}</h3>
{% if author.pronouns %}<p class="author__pronouns">{{ author.pronouns }}</p>{% endif %}
{% if author.bio %}<p class="author__bio">{{ author.bio }}</p>{% endif %}
{%- assign bio = site.cnet.bio[page.lang] | default: author.bio -%}
{% if bio %}<p class="author__bio">{{ bio }}</p>{% endif %}
</div>

<div class="author__urls-wrapper">
Expand Down
22 changes: 22 additions & 0 deletions _includes/ietf-docs.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{%- comment -%}
IETF documents from _data/ietf.yml, as cards.
Required: include.lang (es|en|fr), include.kind (rfcs|drafts).
{%- endcomment -%}
{%- assign l = include.lang | default: site.default_lang -%}
{%- assign docs = site.data.ietf[include.kind] -%}
<div class="ietf-docs">
{%- for d in docs -%}
<div class="ietf-doc">
<div class="ietf-doc__id">{{ d.id }}{% if d.date %} · {{ d.date[l] | default: d.date.en }}{% endif %}</div>
<div class="ietf-doc__title">{{ d.title }}</div>
{%- if d.authors -%}<div class="ietf-doc__authors">{{ d.authors | replace: 'J. Alvarez-Hamelin', '<em>J. Alvarez-Hamelin</em>' }}</div>{%- endif -%}
<div class="ietf-doc__status">{{ d.status[l] | default: d.status.en }}</div>
{%- if d.blurb -%}<p class="ietf-doc__blurb">{{ d.blurb[l] | default: d.blurb.en }}</p>{%- endif -%}
<div class="links">
{%- for k in d.links -%}
<a class="btn btn-sm" href="{{ k.url }}" rel="noopener">{{ k.label }}</a>
{%- endfor -%}
</div>
</div>
{%- endfor -%}
</div>
9 changes: 5 additions & 4 deletions _includes/publications-filter.html
Original file line number Diff line number Diff line change
Expand Up @@ -5,31 +5,32 @@
- free text over author / title / venue / year;
- one topic, from the chips rendered here out of _data/publication_topics.yml
(entries carry the matching ids in data-topics, see _layouts/bib_entry.html);
- one person, from chips the script builds out of the most frequent authors.
- one member, from chips the script builds out of the most frequent authors
(labeled "Miembros" / "Members" / "Membres", as the group asked).
Deep links: /publications/#topic=latam, #q=Carisimo, or both joined with "&".
{%- endcomment -%}
{%- assign l = include.lang | default: site.default_lang -%}
{%- if l == 'en' -%}
{%- assign ph = 'Search by author, title, venue or year…' -%}
{%- assign lbl = 'Search publications' -%}
{%- assign topics_lbl = 'Topics' -%}
{%- assign by = 'People' -%}
{%- assign by = 'Members' -%}
{%- assign clear = 'Clear' -%}
{%- assign of = 'of' -%}
{%- assign none = 'No publications match.' -%}
{%- elsif l == 'fr' -%}
{%- assign ph = 'Rechercher par auteur, titre, revue ou année…' -%}
{%- assign lbl = 'Rechercher des publications' -%}
{%- assign topics_lbl = 'Thèmes' -%}
{%- assign by = 'Personnes' -%}
{%- assign by = 'Membres' -%}
{%- assign clear = 'Effacer' -%}
{%- assign of = 'sur' -%}
{%- assign none = 'Aucune publication ne correspond.' -%}
{%- else -%}
{%- assign ph = 'Buscar por autor, título, revista o año…' -%}
{%- assign lbl = 'Buscar publicaciones' -%}
{%- assign topics_lbl = 'Temas' -%}
{%- assign by = 'Personas' -%}
{%- assign by = 'Miembros' -%}
{%- assign clear = 'Limpiar' -%}
{%- assign of = 'de' -%}
{%- assign none = 'Ninguna publicación coincide.' -%}
Expand Down
49 changes: 49 additions & 0 deletions _includes/software-cards.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
{%- comment -%}
Software page blocks, from _data/software.yml.
Required: include.lang (es|en|fr) and include.part (tools|repos).
Repository cards are SVG pin cards served by github-stats-extended (the same
service as estcarisimo.github.io), in site colors for the light and dark
themes; only the one matching the current theme is shown. If the service is
down, the card falls back to a plain link. The service gets every
visitor's IP address, and an error it returns as HTTP 200 (e.g. a rate-limit
card) will not trigger the fallback; see AGENTS.md.
{%- endcomment -%}
{%- assign l = include.lang | default: site.default_lang -%}
{%- if l == 'en' -%}{%- assign visit = 'Visit' -%}
{%- elsif l == 'fr' -%}{%- assign visit = 'Visiter' -%}
{%- else -%}{%- assign visit = 'Visitar' -%}{%- endif -%}
{%- assign sw = site.data.software -%}

{%- if include.part == 'tools' -%}
<div class="tool-grid">
{%- for t in sw.web_tools -%}
<div class="tool-card">
<i class="{{ t.icon }} tool-card__icon" aria-hidden="true"></i>
<div class="tool-card__name">{{ t.name }}</div>
<p class="tool-card__blurb">{{ t.blurb[l] | default: t.blurb.en }}</p>
<a class="tool-card__link" href="{{ t.url }}" rel="noopener">{{ visit }} <i class="fas fa-arrow-up-right-from-square" aria-hidden="true"></i><span class="sr-only"> {{ t.name }}</span></a>
</div>
{%- endfor -%}
</div>

{%- elsif include.part == 'repos' -%}
{%- assign api = 'https://github-stats-extended.vercel.app/api/pin/?show_owner=true&amp;disable_animations=true&amp;hide_border=false&amp;locale=' | append: l -%}
{%- assign light = '&amp;bg_color=F4F6FA&amp;title_color=005CB9&amp;text_color=1A2A3D&amp;icon_color=003975&amp;border_color=D6E0EC' -%}
{%- assign dark = '&amp;bg_color=003975&amp;title_color=74ACDF&amp;text_color=FFFFFF&amp;icon_color=74ACDF&amp;border_color=1F4F86' -%}
<div class="repo-grid">
{%- for r in sw.repos -%}
{%- assign parts = r | split: '/' -%}
{%- assign q = '&amp;username=' | append: parts[0] | append: '&amp;repo=' | append: parts[1] -%}
<a class="repo-card" href="https://github.com/{{ r }}" rel="noopener">
<img class="repo-card__img repo-card__img--light" src="{{ api }}{{ q }}{{ light }}" alt="{{ r }} (GitHub)" width="400" loading="lazy" onerror="this.closest('.repo-card').classList.add('is-fallback')">
<img class="repo-card__img repo-card__img--dark" src="{{ api }}{{ q }}{{ dark }}" alt="{{ r }} (GitHub)" width="400" loading="lazy" onerror="this.closest('.repo-card').classList.add('is-fallback')">
<span class="repo-card__fallback"><i class="fab fa-github" aria-hidden="true"></i> {{ r }}</span>
</a>
{%- endfor -%}
</div>
<p class="repo-orgs">
{%- for o in sw.orgs -%}
<a class="btn btn--info" href="{{ o.url }}" rel="noopener"><i class="fab fa-github" aria-hidden="true"></i> {{ o.label[l] | default: o.label.en }}</a>
{%- endfor -%}
</p>
{%- endif -%}
24 changes: 24 additions & 0 deletions _pages/ietf.en.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
permalink: /ietf/
lang: en
title: "IETF and Internet standards"
author_profile: true
---

The group contributes to the **IETF** (Internet Engineering Task Force), the open body that develops the technical standards of the Internet, and promotes the participation of the Argentine and Latin American academic community in that process.

## RFC

{% include ietf-docs.html kind="rfcs" lang="en" %}

## Internet-Drafts

{% include ietf-docs.html kind="drafts" lang="en" %}

## IETF Day at JAIIO

**IETF Day** is the Internet Engineering Task Force Argentina workshop at the Argentine Computing Conference (JAIIO), organized by FIUBA, SADIO and that working group, with editions since 2020. It brings Argentine and Latin American researchers into the development of Internet standards. Ignacio Alvarez-Hamelin is one of the chairs of the 2026 edition, together with Gustavo Mercado (UTN FRM) and Marcela Orbiscay (IANIGLA–CONICET), and co-edited the proceedings of the 2022 edition.

<p class="ietf-links">{%- for k in site.data.ietf.ietf_day.links -%}<a class="btn btn--info" href="{{ k.url }}" rel="noopener">{% if k.label.en %}{{ k.label.en }}{% else %}{{ k.label }}{% endif %}</a>{%- endfor -%}</p>

More: [Ignacio Alvarez-Hamelin's IETF Datatracker profile]({{ site.data.ietf.datatracker_profile }}) and the [group's publications on IETF standards](/publications/#topic=standards).
Loading
Loading