Skip to content
AI Infrastructure
AI Infrastructure10 min read0 views

ICE-Lite vs Full ICE for AI Media Servers in 2026: Pick the One That Survives DoS

ICE-Lite is easy and fast to ship for an AI media server, but it leaves you wide open to media-relay DoS. Here is when each pattern wins for AI voice in 2026.

ICE-Lite ships in a day and gets your AI media server connected. Three months later you read about a botnet using your media path to flood third-party servers, and you realize there was a reason "Lite" had a small footprint.

Background

flowchart LR
  UA[SIP UA] -- REGISTER --> Reg[Registrar]
  UA -- INVITE --> Proxy[SIP Proxy]
  Proxy --> Dispatcher[Kamailio dispatcher]
  Dispatcher --> Worker1[FreeSWITCH worker]
  Dispatcher --> Worker2[FreeSWITCH worker]
  Worker1 --> AI[(AI agent)]
  Worker2 --> AI
CallSphere reference architecture

Interactive Connectivity Establishment (ICE), defined in RFC 8445, is how two WebRTC endpoints find a working network path through NAT and firewalls. Full ICE agents gather host, server-reflexive (STUN), and relayed (TURN) candidates, run connectivity checks against the remote candidates, and converge on the best pair. ICE-Lite is a stripped-down profile for endpoints that already sit on the public internet: they skip candidate gathering for non-host candidates, do not initiate connectivity checks, and only respond to incoming STUN binding requests.

ICE-Lite was designed for SBCs and media servers that publish a stable public IP. The savings are real: simpler implementation, faster setup, no STUN servers needed on your side. The cost is real too: without sending its own connectivity checks, an ICE-Lite agent has weak consent verification on the media path.

Technical deep-dive

The setup time tradeoff is interesting. With Full ICE, both sides gather candidates in parallel and connectivity checks run concurrently with the SDP offer/answer; convergence can be sub-second. With ICE-Lite, the controlling side does all the work alone, which can extend setup by 200-500 ms on poor networks because checks proceed serially.

Hear it before you finish reading

Talk to a live CallSphere AI voice agent in your browser — 60 seconds, no signup.

Try Live Demo →

The security tradeoff is the bigger one. STUN binding requests in Full ICE include a USERNAME and MESSAGE-INTEGRITY HMAC tied to credentials negotiated in SDP. The connectivity check round-trip serves as proof that the remote endpoint actually wants to send media to that IP/port. An ICE-Lite agent only validates incoming binding requests but never verifies that the remote address is consenting to receive media; an attacker who hijacks signaling can redirect media to a victim IP and your media server happily blasts RTP at it.

# SDP from an ICE-Lite media server
v=0
o=- 1234567890 1 IN IP4 media.callsphere.ai
s=-
c=IN IP4 203.0.113.42
m=audio 49170 UDP/TLS/RTP/SAVPF 111
a=ice-lite
a=ice-ufrag:F7gI
a=ice-pwd:x9cml/YzichV2+XlhiMu8g
a=fingerprint:sha-256 D2:9A:...:38
a=setup:passive
a=candidate:1 1 udp 2130706431 203.0.113.42 49170 typ host

The a=ice-lite attribute tells the peer "I am ICE-Lite, do not expect connectivity checks from me." A Full ICE peer adjusts its state machine accordingly.

CallSphere implementation

CallSphere uses Twilio Programmable Voice across all six verticals. Twilio's edge media servers run Full ICE on Voice SDK browser sessions and rely on stable public IPs without ICE-Lite for SIP trunk legs (no ICE on traditional SIP). For Healthcare AI on FastAPI :8084 the WebSocket bridge to OpenAI Realtime is server-to-server, no ICE required. Where we run a direct browser-to-AI WebRTC path (a small portion of demo traffic), we deploy Full ICE on our media side, gather server-reflexive candidates through Twilio STUN, and run connectivity checks both ways. Sales Calling AI's 5 concurrent outbound legs and After-Hours AI's simul call+SMS with a 120-second timeout never touch the WebRTC ICE path; they are pure SIP+RTP through Twilio. Across 37 agents, 90+ tools, 115+ DB tables, HIPAA + SOC 2, $149/$499/$1499 pricing, and the 14-day trial, the policy is "Full ICE on browser-to-AI, no ICE on SIP-to-AI".

Implementation steps

  1. If your media server is internet-facing with a stable public IP and you only accept browser clients, ICE-Lite is acceptable for v0.
  2. Run rate limiting on STUN binding requests to defeat the obvious DoS amplification.
  3. Validate ice-ufrag and ice-pwd against the SDP-asserted values; reject mismatches early.
  4. Move to Full ICE when you scale past 100 concurrent calls or your media path crosses any partner who could spoof.
  5. For SIP+RTP legs (no WebRTC), ICE does not apply; SBC topology rules govern.
  6. Bind RTP source IPs to the SDP-advertised IP for the first 5 seconds of each call; reject media from unexpected sources.
  7. Log STUN check failures; sustained failures from one peer indicate a misconfigured client or an attack.
  8. Audit your candidate list; never publish private RFC 1918 IPs on c= or a=candidate for an internet-facing server.

FAQ

Does Twilio Voice SDK use ICE-Lite or Full? Twilio's edge media servers behave like Full ICE for WebRTC clients; the SIP trunk side uses RTP without ICE.

Still reading? Stop comparing — try CallSphere live.

CallSphere ships complete AI voice agents per industry — 14 tools for healthcare, 10 agents for real estate, 4 specialists for salons. See how it actually handles a call before you book a demo.

Will ICE-Lite improve setup time meaningfully for AI voice? Marginal in good networks; potentially 200-500 ms worse in bad networks because checks serialize.

Is ICE-Lite a HIPAA risk? Not directly. HIPAA cares about encryption and access control, not ICE flavor. The DoS-amplification concern is operational, not regulatory.

Should I run TURN for AI media? For browser-to-AI WebRTC, yes - some corporate networks block UDP and require TURN/TCP. Twilio bundles TURN with their network traversal service.

What about WebRTC over QUIC or WebTransport? 2026 status: experimental. The RTCWeb working group has draft protocols but Chrome/Safari interop is not stable enough for production AI voice yet.

Sources

Start a 14-day trial on a hardened ICE stack, see pricing, or contact us about secure WebRTC media for your AI voice product.

Share

Try CallSphere AI Voice Agents

See how AI voice agents work for your industry. Live demo available -- no signup required.

Related Articles You May Like

AI Voice Agents

WebRTC Mobile Testing with BrowserStack + Sauce Labs (2026)

BrowserStack offers 30,000+ real devices; Sauce Labs ships deep Appium automation. Here is how AI voice agent teams use both for WebRTC mobile QA in 2026.

AI Infrastructure

OpenAI's May 2026 WebRTC Rearchitecture: How Voice Latency Got Real

On May 4 2026 OpenAI published its Realtime stack rebuild — split-relay plus transceiver edge. Here is what changed and what it means for production voice agents.

AI Voice Agents

MOS Call Quality Scoring for AI Voice Operations in 2026: Beyond 4.2

MOS 4.3+ is the band where AI voice feels human. Drop below 3.6 and conversations break. Here is how to measure, improve, and alert on MOS in production AI voice using G.711, Opus, and the underlying packet loss / jitter / latency math.

Technology

Building a Custom Calling Platform: Enterprise Guide

Evaluate build vs buy for enterprise calling platforms. Architecture patterns, SIP infrastructure, WebRTC, cost models, and timeline estimates for custom telephony systems.

Technical Guides

WebRTC vs WebSocket Voice: CallSphere Architecture Edge Over Vapi

WebRTC vs WebSocket for voice AI: when each transport wins on NAT traversal, jitter, codec choice and latency. CallSphere runs both, Vapi locks you in.

AI Voice Agents

Build a Voice Agent with LiveKit Agents Python SDK 1.5 (2026)

LiveKit Agents 1.5 (April 2026) added an audio-based interruption model and native MCP tools. Here's a full self-hosted LiveKit voice agent with adaptive turn detection.