# Systems Perspective Description Language — Homa Transport (SPDL-HOMA) **Specification Document ID:** `SPDL-HOMA-SPEC-2026-v4.2` **Classification:** Open Epistemic Standard / Ultra-Low-Latency Datacenter Transport Substrate **Principal Architect:** Asse van Nix | Systems Perspective Framework & Proof-Driven Architecture Group **Target Environment:** Zig 0.16.0 Freestanding · Linux eBPF / Kernel Driver · SmartNIC DPDK · TCP/RoCE Replacement **Applied Standards:** ISO/IEC 14977 EBNF · GBNF Maskable · Homa Protocol (Ousterhout et al.) · RFC 8941 · Network Calculus --- ## 1. Epistemic Architecture: Why TCP and RoCE Must Be Replaced by Homa 1. **TCP Bufferbloat & Head-of-Line Blocking:** TCP enforces total byte-stream ordering. A single lost packet stalls the entire connection, causing long tail latencies ($99.9\text{th}$ percentile) in distributed RPC clusters. 2. **RoCE (RDMA over Converged Ethernet) Congestion Collapse:** RoCE relies on Priority Flow Control (PFC) pause frames. Under heavy incast traffic, PFC pause frames propagate backward through switches, causing head-of-line blocking, deadlock storms, and fragile switch configurations. **SPDL-HOMA** adopts the **Homa Transport Architecture** (Shortest Remaining Processing Time / SRPT priority scheduling, receiver-driven grants, and unscheduled packet bursts) mapped directly to mathematical network calculus barriers. --- ## 2. Physical Invariants, DAEs & Mathematical Proof Gates ``` SPDL-HOMA TRANSPORT MANIFOLD ┌─────────────────────────────────────────────────────────────────────────────┐ │ RECEIVER-DRIVEN SRPT (Shortest Remaining Processing Time) SCHEDULING │ │ Priority(Msg_i) = Bytes_Remaining(Msg_i) < Bytes_Remaining(Msg_j) │ ├─────────────────────────────────────────────────────────────────────────────┤ │ INCAST BUFFER NON-OVERFLOW BARRIER (Network Calculus Bound) │ │ h_incast(Q) = Switch_Buffer_Max - (Burst_Unscheduled + Allocated_Grants) >= 0│ ├─────────────────────────────────────────────────────────────────────────────┤ │ BOUNDED RPC TAIL LATENCY INVARIANT │ │ T_completion(Msg_short) <= RTT_fabric + Packet_Serialization_Delay │ └─────────────────────────────────────────────────────────────────────────────┘ ``` --- ## 3. Formal ISO/IEC 14977 EBNF Grammar ```ebnf HomaManifest = { Line } ; Line = [ Whitespace ] , ( Comment | HomaRecord ) , Newline ; Whitespace = { " " | "\t" | "\r" } ; Newline = "\n" | "\r\n" ; Comment = "#" , { AnyChar - Newline } ; HomaRecord = "(I) @HOMA_INVARIANT" , " " , InvariantFields | "(A) @NIC_INTERFACE" , " " , NicFields | "(B) @INCAST_BARRIER" , " " , BarrierFields | "(M) @HOMA_PACKET_GRANT" , " " , GrantFields | "(T) @HOMA_RPC_OBSERVER" , " " , ObserverFields ; InvariantFields = "id:" , Token , " rtt_us:" , Number , " unscheduled_bytes:" , Integer , " alloc_policy:ZERO_HEAP" ; NicFields = "id:" , Token , " port:" , Integer , " link_gbps:" , Integer , " smartnic_offload:TRUE" ; BarrierFields = "id:" , Token , " max_buffer_kb:" , Integer , " max_queue_depth:" , Integer ; GrantFields = "id:" , Token , " rpc_id:" , Integer , " offset_bytes:" , Integer , " grant_prio:" , Integer ; ObserverFields = "id:" , Token , " rpc_id:" , Integer , " bytes_left:" , Integer , " latency_us:" , Number , " drops:0" ; Token = Letter , { Letter | Digit | "_" | "-" } ; Number = [ "-" ] , Digit , { Digit } , [ "." , { Digit } ] ; Integer = [ "-" ] , Digit , { Digit } ; Letter = "A".."Z" | "a".."z" ; Digit = "0".."9" ; AnyChar = ? Any valid Unicode code point ? ; ``` --- ## 4. GBNF Structured Sampling Grammar ```gbnf root ::= HomaRecord "\n" HomaRecord ::= "(I) @HOMA_INVARIANT" " " InvariantFields | "(A) @NIC_INTERFACE" " " NicFields | "(B) @INCAST_BARRIER" " " BarrierFields | "(M) @HOMA_PACKET_GRANT" " " GrantFields | "(T) @HOMA_RPC_OBSERVER" " " ObserverFields InvariantFields ::= "id:" [A-Za-z0-9_-]+ " rtt_us:" [0-9.]+ " unscheduled_bytes:" [0-9]+ " alloc_policy:ZERO_HEAP" NicFields ::= "id:" [A-Za-z0-9_-]+ " port:" [0-9]+ " link_gbps:" [0-9]+ " smartnic_offload:TRUE" BarrierFields ::= "id:" [A-Za-z0-9_-]+ " max_buffer_kb:" [0-9]+ " max_queue_depth:" [0-9]+ GrantFields ::= "id:" [A-Za-z0-9_-]+ " rpc_id:" [0-9]+ " offset_bytes:" [0-9]+ " grant_prio:" [0-9]+ ObserverFields ::= "id:" [A-Za-z0-9_-]+ " rpc_id:" [0-9]+ " bytes_left:" [0-9]+ " latency_us:" [0-9.]+ " drops:0" ``` --- ## 5. Production SPDL-HOMA Manifest Exemplar ```spdl # ============================================================================== # SPDL-HOMA v4.2 MANIFEST: 400Gbps SMARTNIC HOMA CLUSTER FABRIC # Architecture: Receiver-Driven SRPT Grants | Incast Non-Overflow Verified # ============================================================================== (I) @HOMA_INVARIANT id:INV-HOMA-FABRIC rtt_us:3.2 unscheduled_bytes:10240 alloc_policy:ZERO_HEAP # --- PHYSICAL SMARTNIC PORT --- (A) @NIC_INTERFACE id:NIC_PORT_0 port:0 link_gbps:400 smartnic_offload:TRUE # --- BUFFER INCAST COLLAPSE BARRIER --- (B) @INCAST_BARRIER id:BAR_SWITCH_OVERFLOW max_buffer_kb:512 max_queue_depth:16 # --- REAL-TIME RECEIVER GRANT EMISSION --- (M) @HOMA_PACKET_GRANT id:GNT_RPC_9941 rpc_id:9941 offset_bytes:32768 grant_prio:2 # --- RPC TAIL LATENCY TELEMETRY --- (T) @HOMA_RPC_OBSERVER id:TEL_RPC_FAST rpc_id:9941 bytes_left:4096 latency_us:4.15 drops:0 ``` --- ## 6. Standards Compliance Matrix ``` ╔═════════════════════════════════╦══════════════════════╦═════════════════════════════════════════════════════╗ ║ Dimension │ Verification Standard│ Enforced Implementation Evidence ║ ╠═════════════════════════════════╬══════════════════════╬═════════════════════════════════════════════════════╣ ║ Ultra-Low Latency RPC │ Homa Protocol Spec │ SRPT scheduling prioritizes short RPC completion. ║ ║ Zero Incast Buffer Overflow │ Network Calculus │ Mathematical barrier limits active grant capacity. ║ ║ Kernel / SmartNIC Viability │ Freestanding Silicon │ Zero heap allocations (M_aux <= 128 bytes stack). ║ ║ Grammar Integrity Gating │ GBNF Structured Mask │ Eliminates packet grant misconfiguration on wire. ║ ╚═════════════════════════════════╩══════════════════════╩═════════════════════════════════════════════════════╝ ```