AI Factory Multi-Tenancy (1) - HBN, NICo NSG, OVN, and SFC
π Understanding DPU-based network isolation in a multi-tenant AI Factory.
NVIDIA BlueField can enforce network isolation before traffic reaches the host.
HBN provides DPU-side routing and EVPN/VXLAN functions, NICo provides tenant-facing VPC and NSG abstractions, and OVN-Kubernetes provides Kubernetes workload networking and
NetworkPolicy.The key is to separate routing, tenant ACL policy, workload ACL policy, and service-chain traffic steering.
β HBN Is the DPU Network Service
HBN is a DPUService that provides routing and network functions on BlueField.
According to the DPF architecture overview, DPU services are deployed into the DPUCluster and run on DPU nodes.
HBN can provide both native L3 routing and EVPN/VXLAN overlay functions.
1
2
3
4
5
6
7
HBN DPUService
ββ Native L3 / BGP
ββ VRF
ββ EVPN
ββ VXLAN / VNI
ββ ACL / NAT
HBN ACL is therefore not an underlay-only firewall function.
It is a generic HBN dataplane filtering capability that can be applied at supported HBN interfaces depending on the traffic path and ACL type.
NVUE is used to configure this HBN network state.
1
2
3
4
5
NVUE
β
HBN configuration
β
HBN dataplane enforcement
Official reference:
β‘ NICo Uses a Pure Type-5 EVPN L3 Overlay
NICo Ethernet VPC isolation is implemented through HBN.
NVIDIA describes the tenant network as a:
pure Type-5 EVPN IP-prefix overlay
This means NICo does not extend a tenant L2 broadcast domain across the physical fabric.
Instead, each DPU maintains a local instance of the tenant VPC VRF and exchanges IP-prefix reachability using EVPN Type-5 routes.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
VPC-A
DPU-1 DPU-2
βββββββββββββββββββ βββββββββββββββββββ
β VRF-A β β VRF-A β
β L3VNI: 100001 β β L3VNI: 100001 β
β RT: VPC-A β β RT: VPC-A β
ββββββββββ¬βββββββββ ββββββββββ¬βββββββββ
β β
β EVPN Type-5 Routes β
ββββββββββββββββββββββββββββββββββββββββ
β
VXLAN
β
IP Underlay
The important EVPN route distinction is:
1
2
3
4
5
6
7
EVPN Type-2
= MAC / MAC+IP Advertisement
= commonly used for endpoint reachability in L2 VNI overlays
EVPN Type-5
= IP Prefix Route
= prefix-based L3 reachability through an L3VNI
NICo uses the second model for tenant VPC routing.
Official references:
β’ Tenant Addressing Is Different from VTEP Addressing
NICo separates tenant attachment addressing from overlay transport addressing.
For an instance interface, NICo allocates a /31 network from the VPC prefix.
One address belongs to the instance side and the other belongs to the DPU SVI inside the corresponding VPC VRF.
1
2
3
4
5
6
7
8
9
10
11
12
VpcPrefix
10.1.0.0/16
β carve /31
Host / Instance DPU / HBN
10.1.1.0/31 ββββββββββββββββββββ 10.1.1.1/31
β
SVI
β
VRF-A
The /31 therefore provides the local L3 attachment between the host and the DPU.
It is part of the tenantβs inner address space.
1
2
3
4
5
6
7
Host IP
10.1.1.0/31
β
DPU SVI
10.1.1.1/31
Within the same VRF, these attachment prefixes must be unique.
For example:
1
2
3
4
5
6
7
VRF-A
Host-1 β DPU
10.1.1.0/31
Host-2 β DPU
10.1.1.2/31
However, overlapping tenant prefixes can exist in different VRFs.
1
2
3
4
5
VRF-A
10.1.1.0/31
VRF-B
10.1.1.0/31
This is possible because each VRF maintains an independent routing table.
Overlay Transport
The tenant /31 is different from the VTEP address used to transport the overlay.
NICo provides a per-VPC DPU loopback, vpc-dpu-lo, which acts as the VPC-specific VTEP and EVPN Type-5 next hop.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Tenant / Inner Address Space
ββββββββββββββββββββββββββββββββ
Host
10.1.1.0/31
β
DPU SVI
10.1.1.1/31
β
VRF-A
β
EVPN Type-5
β
L3VNI 100001
Overlay Transport
ββββββββββββββββββββββββββββββββ
vpc-dpu-lo
β
VTEP
β
VXLAN
β
IP Underlay
β
VXLAN
β
VTEP
β
vpc-dpu-lo
For example:
1
2
3
4
5
6
7
8
9
10
DPU-1 DPU-2
VRF-A VRF-A
β β
L3VNI 100001 L3VNI 100001
β β
vpc-dpu-lo vpc-dpu-lo
172.16.1.101 172.16.1.102
β β
βββββββββββββ VXLAN / Underlay βββββββββββββ
The receiving DPU is the remote VTEP.
It decapsulates the VXLAN packet and maps the VNI back to the corresponding tenant VRF.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
DPU-1
VRF-A
β
Route lookup
β
EVPN Type-5 next hop
β
VXLAN ENCAP
β
VTEP-1
β
β IP Underlay
βΌ
VTEP-2
β
VXLAN DECAP
β
L3VNI β VRF-A
β
DPU-2 tenant attachment
Therefore, the layers can be summarized as:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Tenant / Overlay Routing Domain
ββββββββββββββββββββββββββββββββ
Tenant Prefix
VRF
EVPN Type-5
L3VNI
VXLAN
VTEP
Transport / Underlay
ββββββββββββββββββββββββββββββββ
VTEP IP reachability
BGP IPv4
ECMP
Leaf / Spine IP Fabric
A VTEP is an overlay tunnel endpoint, while the VTEP IP itself must be reachable through the underlay.
Official references:
β£ Routing and NSG Are Different
The VPC/VRF determines reachability.
The NSG determines which reachable L3/L4 flows are allowed.
1
2
3
4
5
6
7
8
9
Routing
"Where can this packet go?"
β
Security Policy
"Is this TCP/UDP/ICMP flow allowed?"
For example:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
VPC-A / VRF-A
Instance-A Instance-B
10.1.1.10 10.1.2.20
β β²
β β
βββββββ EVPN Type-5 Routing ββββββββ
+
NSG
TCP/443 Allow
TCP/22 Deny
Changing an NSG does not modify the EVPN Type-5 route itself.
The route may still exist while the corresponding packet flow is denied by policy.
Therefore:
1
2
3
4
5
VRF / EVPN
= reachability
NSG
= permitted reachability
β€ NICo NSG Is Materialized as HBN ACL State
A NICo NSG is not a DPUService.
It is a tenant-facing control-plane policy abstraction.
The enforcement flow can be understood as:
1
2
3
4
5
6
7
8
9
10
11
12
13
Tenant
β
NICo NSG
β
NICo API Server
β
Per-interface desired configuration
β
DPU Agent
β
NVUE ACL configuration
β
HBN dataplane
The DPU Agent materializes NICo security policy as NVUE/HBN ACL configuration on the DPU.
Therefore:
1
2
3
4
5
6
7
8
9
10
NSG β HBN DPUService
NSG
= tenant-facing security policy abstraction
NVUE ACL configuration
= configuration representation
HBN
= dataplane enforcement
This explains why a NICo NSG can control traffic between tenant instances even though the actual packet filtering takes place in the HBN dataplane.
Official reference:
β₯ Generic HBN ACL vs NICo NSG
Generic HBN ACLs and NICo NSGs ultimately use the same HBN enforcement domain, but they are exposed at different abstraction levels.
| Policy | Created By | Scope | Enforcement |
|---|---|---|---|
| Generic HBN ACL | Infra / Network Admin | Low-level HBN traffic policy | HBN dataplane, configured through NVUE |
| NICo NSG | Tenant / NICo API | VPC / Instance L3/L4 policy | HBN dataplane, materialized as NVUE ACL state |
An infrastructure administrator can configure supported HBN ACLs directly through NVUE.
1
2
3
nv set acl INFRA-ACL ...
nv set interface <interface> acl INFRA-ACL inbound
nv config apply
A tenant does not need direct access to raw HBN or NVUE configuration.
Instead:
1
2
3
4
5
6
7
8
9
10
11
12
13
Infra Admin
ββ NVUE / HBN ACL
β
HBN
Tenant
ββ NICo NSG
β
DPU Agent
β
NVUE ACL state
β
HBN
Therefore, the primary distinction is control-plane abstraction and ownership, not two unrelated firewall engines.
Official references:
β¦ Intra-VPC and Inter-VPC Isolation
NICo creates separate VRFs for separate VPCs.
1
2
3
4
5
6
7
VPC-A VPC-B
VRF-A VRF-B
β β
βββββββββββββ X βββββββββββββββ
A VRF represents an independent L3 routing domain.
Therefore, separate VPC VRFs do not automatically exchange tenant routes.
1
2
3
4
5
6
7
8
9
10
VRF-A Routing Table
10.1.0.0/16
10.2.0.0/16
VRF-B Routing Table
10.1.0.0/16
10.3.0.0/16
Even overlapping address ranges can coexist as long as the VRF context remains separate.
Inter-VPC isolation is therefore primarily routing-domain isolation, rather than an ACL that must explicitly deny every other tenant.
Cross-VPC connectivity must be intentionally introduced, for example through:
1
2
3
4
5
6
7
Tenant
ββ VPC Peering
or
Operator
ββ Routing Profile / Controlled Route Leak
NSGs operate separately from this routing isolation.
They control L3/L4 flows after the relevant destination is reachable.
The two concepts should therefore be represented separately.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Routing / Reachability
ββββββββββββββββββββββββββββββ
VPC / VRF Isolation
β
ββ Explicit cross-VPC connectivity
through peering / route leaking
Security Policy
ββββββββββββββββββββββββββββββ
deny_prefixes
β
policy_overrides
β
Tenant NSG
deny_prefixes and policy_overrides provide operator-controlled guardrails around tenant security policy.
Official references:
β§ OVN Is a Separate Workload Networking Domain
OVN-Kubernetes is a separate DPU service.
It provides Kubernetes workload networking and can offload OVN dataplane processing to the DPU.
Kubernetes workload policy follows a separate control path from NICo NSGs.
1
2
3
4
5
6
7
Kubernetes NetworkPolicy
β
OVN-Kubernetes
β
OVN logical policy / ACL
β
OVN dataplane
Therefore:
1
2
3
4
5
6
7
8
9
10
11
12
NICo NSG
ββ HBN dataplane
β
NVUE ACL state
Kubernetes NetworkPolicy
ββ OVN logical ACL / policy
β
OVN dataplane
An NSG does not dynamically become an OVN ACL.
Likewise, a Kubernetes NetworkPolicy is not translated into a NICo NSG.
These are separate policy domains.
1
2
3
4
5
NICo / HBN
= VPC / tenant infrastructure policy
OVN-Kubernetes
= Kubernetes workload networking policy
Official references:
β¨ HBN and OVN Are Connected Through DPF Service Chaining
When HBN and OVN are deployed together, DPF can program connectivity between the services using DPUServiceInterface and DPUServiceChain.
DPUServiceChain is not another packet-processing or firewall service.
It is a DPF control-plane object used to describe how traffic is steered between DPU services.
Conceptually:
1
2
3
4
5
6
7
8
9
Fabric
β
HBN
β
DPF-programmed OVS connectivity
β
OVN
β
Workload
The actual DPU connectivity can be represented as:
flowchart LR
FABRIC["Physical Fabric"]
subgraph DPU["BlueField DPU"]
HBN["HBN DPUService<br/>VRF / EVPN / VXLAN"]
HPOL["HBN ACL<br/>Generic ACL + NICo NSG"]
OVS["DPF-programmed OVS Connectivity<br/>DPUServiceInterface / DPUServiceChain"]
OVN["OVN-Kubernetes DPUService"]
OPOL["OVN Logical ACL<br/>NetworkPolicy"]
HPOL --> HBN
HBN <--> OVS
OVS <--> OVN
OPOL --> OVN
end
WORKLOAD["Host / Pod Workload"]
FABRIC <--> HBN
OVN <--> WORKLOAD
The important distinction is:
1
2
3
4
5
6
7
8
9
10
11
DPUService
= packet-processing function
DPUServiceInterface
= interface representation used by DPF
DPUServiceChain
= connectivity / traffic-steering intent
OVS flows / ports
= dataplane connectivity programmed from that intent
Therefore, SFC connects packet-processing services, but it does not merge their policy models.
1
2
3
4
5
6
7
8
9
10
11
12
13
NICo NSG
β
HBN ACL
HBN
β
Service Chain
β
OVN
OVN NetworkPolicy
β
OVN ACL
Official references:
- DPF Architecture Overview
- DPF DPUServiceChain
- NVIDIA Reference Design - OVN-Kubernetes and HBN Services
Summary
The complete architecture can be viewed as:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
BlueField DPU
Tenant / Host
β
β /31 Tenant Attachment
βΌ
HBN DPUService
ββ SVI
ββ VRF
ββ Native L3 / BGP
ββ EVPN Type-5
ββ L3VNI / VXLAN
ββ vpc-dpu-lo / VTEP
ββ HBN ACL
ββ Generic HBN ACL
ββ deny_prefixes
ββ policy_overrides
ββ NICo NSG
β
DPU Agent
β
NICo
β
β DPF-programmed
β Service Chain
βΌ
OVN-Kubernetes DPUService
ββ Kubernetes Workload Networking
ββ OVN Logical ACL
β
Kubernetes NetworkPolicy
The tenant overlay itself can be summarized as:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
Host / Instance
Tenant IP
β
β /31
βΌ
DPU SVI
β
βΌ
Tenant VRF
β
βΌ
EVPN Type-5
β
βΌ
L3VNI
β
βΌ
vpc-dpu-lo / VTEP
β
βΌ
VXLAN
β
βΌ
Leaf / Spine IP Underlay
β
βΌ
Remote VTEP
β
βΌ
VXLAN Decapsulation
β
βΌ
Remote Tenant VRF
The main points are:
- HBN is the DPU-side network service.
- NICo VPCs use separate VRFs and a pure EVPN Type-5 L3 overlay.
- The Host-DPU
/31is a tenant-side L3 attachment network, not the VXLAN transport network. /31attachment prefixes must be unique inside the same VRF, but can overlap across different VRFs.vpc-dpu-lois the per-VPC DPU VTEP and EVPN Type-5 next hop.- The physical underlay provides reachability between VTEPs.
- L3VNI identifies the tenant VRF context across the VXLAN overlay.
- The receiving DPU terminates the VXLAN tunnel and maps the L3VNI back to the corresponding VPC VRF.
- Routing and NSG policy are separate: VRF/EVPN determines reachability, while NSG determines permitted L3/L4 flows.
- NICo NSGs are materialized as NVUE/HBN ACL configuration and enforced by the HBN dataplane.
- Inter-VPC isolation is primarily provided by separate VRFs.
- OVN-Kubernetes provides a separate workload-networking and policy domain.
DPUServiceChaindescribes traffic steering between DPU services; it is not itself a firewall or packet-processing service.
Official References
- NVIDIA Infra Controller - Network Isolation
- NVIDIA Infra Controller - Network Security Groups
- NVIDIA Infra Controller - VPC Network Virtualization
- NVIDIA Infra Controller - IP and Network Configuration
- NVIDIA HBN Service Configuration
- DOCA Platform Framework 26.4
- DPF Architecture Overview
- DPF DPUServiceChain
- NVIDIA Reference Design - OVN-Kubernetes and HBN Services
- OVN-Kubernetes ACL Design