Fixed SmallWebRTC data channel silently stalling on networks with a 1280-byte MTU.

This commit is contained in:
filipi87
2026-04-23 12:18:33 -03:00
parent 21f6c2afa5
commit 94304ec74e
2 changed files with 53 additions and 1 deletions

View File

@@ -214,4 +214,26 @@ WHATSAPP_PHONE_NUMBER_ID=...
WHATSAPP_APP_SECRET=...
# xAI / Grok
XAI_API_KEY=...
XAI_API_KEY=...
# SmallWebRTC / aiortc
#
# PIPECAT_SCTP_MAX_CHUNK_SIZE controls the maximum SCTP DATA-chunk payload
# size (bytes) used by aiortc's data channel. The default is 1100.
#
# When to change this:
# Lower it if the data channel silently stalls on your network. This happens
# when aiortc's default (1200) produces UDP datagrams larger than your path
# MTU: each chunk adds ~105 bytes of SCTP + DTLS + UDP + IP headers, so
# 1200 → ~1305-byte datagrams, which exceeds the 1280-byte MTU common on
# IPv6 paths, Tailscale overlays, and many consumer VPNs. The kernel drops
# the packet with EMSGSIZE; aiortc retransmits at the same size and the
# channel stalls indefinitely. A value of 1100 (~1205-byte datagrams) fits
# any path with MTU ≥ 1210.
# Raise it only if you are on a controlled LAN (MTU 1500) and are sending
# large data-channel messages where extra fragmentation matters. Values
# above 1200 are unsafe on most internet paths.
#
# Note: this is a process-global setting (aiortc limitation) — all
# SmallWebRTC connections in the same process share the same value.
#PIPECAT_SCTP_MAX_CHUNK_SIZE=1100