Skip to main content

Real architecture · Senior

Internal traffic: from the "central airport" to sidecar, mTLS, and Istio

The airport metaphor works in the classroom: passport = authentication, immigration = authorization. Over 100 thousand routes in a "central notebook" and identity evolving from token to JWT and then mTLS.

17 min read · Source: Mercado Livre · Content reviewed on October 23, 2026

Short answer

The airport metaphor works in the classroom: passport = authentication, immigration = authorization. Over 100 thousand routes in a "central notebook" and identity evolving from token to JWT and then mTLS. Fury's internal traffic, in the Mercado Libre engineering team's account, resembled a chaotic airport, with millions of passengers traveling to thousands of destinations.

01 · CONTEXT

A chaotic airport inside Fury

Fury's internal traffic, in the Mercado Libre engineering team's account, resembled a chaotic airport, with millions of passengers traveling to thousands of destinations. In that airport, everyone traveled without passports, without immigration controls, and without customs inspection.

At access peaks, internal traffic alone exceeds 400M per minute, with more than 30k applications split into more than 75k instance groups. So any solution or change must take this scale into account.

  1. The diagram shows access to the platform entering through a central traffic layer, and an outbound arrow from application A returning to that same layer.

    Architecture diagram: Centralized internal traffic
    CLPlatform access
    NWCentral traffic layer
    CPApplication A
    CPApplication B
  2. Access enters through the central traffic layer, which routes the request to the destination application.

    Architecture diagram: Centralized internal traffic
    CLPlatform access
    NWCentral traffic layercentral entry
    CPApplication A
    CPApplication B
  3. When an application needs to talk to another, it sends a new outbound request through the same layer, which forwards it to the destination.

    Architecture diagram: Centralized internal traffic
    CLPlatform access
    NWCentral traffic layergoes through here too
    CPApplication A
    CPApplication B
  4. The source describes this central airport as the convergence point of all flights.

    Architecture diagram: Centralized internal traffic
    CLPlatform access
    NWCentral traffic layerconvergence point
    CPApplication A
    CPApplication B
  5. From the destination's point of view, all flights appear to come from the same origin.

    Architecture diagram: Centralized internal traffic
    CLPlatform access
    NWCentral traffic layer
    CPApplication A
    CPApplication Bsees the same origin

02 · IDENTITY

No passport and no immigration

Many applications operated without proper authentication, so it was not possible to verify the authenticity of the origin. This allowed anyone inside the platform to use any API with no form of control.

Without identity there was also no way to create access rules for a specific client, because it was not possible to identify them uniquely.

03 · ROUTES

A central notebook and all roads leading to Rome

Every route and every existing destination was written in a single place, the central notebook. Adding, removing, or changing a destination required changing that same notebook, and the source mentions more than 100K defined routes.

Communication was also centralized: even between nearby airports, passengers had a layover at the central airport before reaching the destination. For the receiver, all flights seemed to come from the same origin.

04 · SIDECAR

Local airports: sidecar, certificates, and mTLS

The first step was to relieve the central airport by distributing the new security controls to local airports. Each local airport is a traffic sidecar that runs next to the application, acting as a reverse proxy on ingress and as a transparent proxy on egress.

The sidecar gave a presence in every application in the Fury ecosystem and was the kickoff for better control, observability, and governance of traffic. In the QCon SF talk, the team also mentions Traffic Middleware among the platform's sidecars.

  1. The diagram shows a sidecar next to each application, with the certificate authority and Traffic Authorization connected to the sidecars.

    Architecture diagram: Sidecars, identity, and authorization
    CPApplication A
    CPSidecar of A
    CPSidecar of B
    CPApplication B
    CPCertificate authority
    CPTraffic Authorization
  2. The sidecar runs next to the application, as a reverse proxy for inbound traffic and a transparent proxy for outbound traffic.

    Architecture diagram: Sidecars, identity, and authorization
    CPApplication A
    CPSidecar of Aproxy next to the application
    CPSidecar of B
    CPApplication B
    CPCertificate authority
    CPTraffic Authorization
  3. The certificate authority generates the certificates when services or scopes are created and renews them on every deploy.

    Architecture diagram: Sidecars, identity, and authorization
    CPApplication A
    CPSidecar of A
    CPSidecar of B
    CPApplication B
    CPCertificate authorityissues the passports
    CPTraffic Authorization
  4. All traffic is stamped at the origin and validated at the destination.

    Architecture diagram: Sidecars, identity, and authorization
    CPApplication A
    CPSidecar of Astamps at the origin
    CPSidecar of Bvalidates at the destination
    CPApplication B
    CPCertificate authority
    CPTraffic Authorization
  5. In the third version of identity, mTLS is handled by the sidecar and protects communication in both directions.

    Architecture diagram: Sidecars, identity, and authorization
    CPApplication A
    CPSidecar of AmTLS
    CPSidecar of BmTLS
    CPApplication B
    CPCertificate authority
    CPTraffic Authorization
  6. Traffic Authorization stores what each application may access, and the destination's sidecar enforces these rules with Envoy RBAC filters.

    Architecture diagram: Sidecars, identity, and authorization
    CPApplication A
    CPSidecar of A
    CPSidecar of Benforces the rules
    CPApplication B
    CPCertificate authority
    CPTraffic Authorizationdefines the policies

To identify the passengers, the team deployed a certificate authority that generates the certificates, the passports, when services or scopes are created and renews them on every deploy. Traffic is stamped at the origin and validated at the destination. Identity went through three versions:

VersionIdentity formatHow the origin is validated
PrimeiraPlain text with a custom format and signatureA public key known to all apps in the ecosystem validates the signature
SegundaJSON Web Token (JWT)A public key known to all apps in the ecosystem validates the signature
TerceiraMutual TLS, handled by the sidecar in both directionsOrigin identity validated from the certificate, without carrying the JWT

05 · AUTHORIZATION

Immigration and routes per team

Once identity is confirmed, authorization comes in. Traffic Authorization lets teams specify the endpoints, methods, and domains accessible in an application, as well as those needed to interact with others. With this, internal traffic was cataloged and it is possible to trace the origin and destination of each flight.

The rules started as custom validations at the destination, with Nginx, Lua, and Golang customizations. In the sidecar migration from Nginx to Envoy, the team took the opportunity to standardize the process and began using Envoy RBAC filters.

On the routes side, Traffic Routes gives each development team its own domain, where it maps paths to destinations. Teams can define conditions by request headers, query parameters, or HTTP methods, and test the routes before going to production.

06 · SERVICE MESH

The control tower: Istio

The source states that the service mesh reduces congestion, for example by removing the balanceador and the centralized traffic layer from the equation, and that without it they would not have been able to decentralize all the traffic. In the role of control tower, the mesh directs flights along safe or less congested routes.

After analyzing several options, including in-house development, the team chose the Istio control plane, among other factors because it is a mature, open-source solution with the features they needed. Integration into the Fury ecosystem included the creation and deploy processes, security controls, and the exchange of routing information with Traffic Routes.

  1. The diagram shows a sidecar next to each application, with the mesh control plane connected to the sidecars and Traffic Routes connected to the control plane.

    Architecture diagram: Traffic with a service mesh
    CLPlatform access
    NWInbound traffic layer
    CPSidecar of A
    CPApplication A
    CPSidecar of B
    CPApplication B
    CPTraffic Routes
    CPMesh control plane
  2. Access to the platform still starts at the centralized traffic layer.

    Architecture diagram: Traffic with a service mesh
    CLPlatform access
    NWInbound traffic layercentral entry
    CPSidecar of A
    CPApplication A
    CPSidecar of B
    CPApplication B
    CPTraffic Routes
    CPMesh control plane
  3. The request is intercepted by the sidecar, which passes it to the application.

    Architecture diagram: Traffic with a service mesh
    CLPlatform access
    NWInbound traffic layer
    CPSidecar of Aintercepta
    CPApplication A
    CPSidecar of B
    CPApplication B
    CPTraffic Routes
    CPMesh control plane
  4. In communication between applications, the outbound request is intercepted by the sidecar and routed directly to the next destination.

    Architecture diagram: Traffic with a service mesh
    CLPlatform access
    NWInbound traffic layer
    CPSidecar of Aintercepts egress
    CPApplication A
    CPSidecar of Breceives directly
    CPApplication B
    CPTraffic Routes
    CPMesh control plane
  5. The mesh plays the role of control tower, directing flights along safe or less congested routes.

    Architecture diagram: Traffic with a service mesh
    CLPlatform access
    NWInbound traffic layer
    CPSidecar of A
    CPApplication A
    CPSidecar of B
    CPApplication B
    CPTraffic Routes
    CPMesh control planecontrol tower
  6. Istio's integration into Fury includes the exchange of routing information with Traffic Routes.

    Architecture diagram: Traffic with a service mesh
    CLPlatform access
    NWInbound traffic layer
    CPSidecar of A
    CPApplication A
    CPSidecar of B
    CPApplication B
    CPTraffic Routesroutes per team
    CPMesh control plane

Frequently asked questions

What is Internal traffic: from the "central airport" to sidecar, mTLS, and Istio?

The airport metaphor works in the classroom: passport = authentication, immigration = authorization. Over 100 thousand routes in a "central notebook" and identity evolving from token to JWT and then mTLS.

What does the Internal traffic: from the "central airport" to sidecar, mTLS, and Istio design cover?

It is organized in these sections: A chaotic airport inside Fury, No passport and no immigration, A central notebook and all roads leading to Rome, Local airports: sidecar, certificates, and mTLS, Immigration and routes per team, and The control tower: Istio.

How long is Internal traffic: from the "central airport" to sidecar, mTLS, and Istio and what level is it?

It takes about 17 minutes to read and is rated Senior level.

Now design it yourself

Run this case as an interview in the System Design school: you make the decisions, the tutor challenges them and you see how your design scores.