WebRTC 带宽估计怎么看:别把瞬时码率当可用吞吐
结合 getStats 的候选对、availableOutgoingBitrate、RTT、丢包、重传与帧质量判断链路,避免用单个采样误调屏幕或文件。
uCopy 技术博客分享 WebRTC、P2P 文件传输、STUN/TURN、局域网发现、断点续传、屏幕共享与隐私安全的实用教程和工程经验。
结合 getStats 的候选对、availableOutgoingBitrate、RTT、丢包、重传与帧质量判断链路,避免用单个采样误调屏幕或文件。
解释 ICE consent freshness 与应用心跳的分工,处理 NAT 映射失效、页面冻结、单向黑洞和远端退出,避免继续向无效地址发送数据。
当直连很快、TURN 中继很慢,或屏幕共享正常而文件只有十几 KB/s 时,按连接路径、分块、发送窗口、确认机制、设备性能和丢包逐层定位。
比较 ICE restart 与重建 PeerConnection 的适用边界,说明网络切换、媒体协商、DataChannel 状态和旧会话隔离该如何处理。
梳理双栈候选、IPv6 防火墙、临时地址、NAT64、Happy Eyeballs 与 TURN IPv6 支持,避免只在 IPv4 环境验证连接。
解释浏览器用随机 mDNS 名称隐藏私有 IP 的原因、解析条件、局域网直连影响,以及调试工具不应把缺少明文地址误判为候选缺失。
沿着 ICE 候选收集、连通性检查、候选对选择和网络切换,解释家庭路由、对称型 NAT、企业防火墙、IPv6、VPN 与访客 Wi-Fi 如何影响 WebRTC 直连。
从实际使用链路理解 WebRTC P2P 文件传输:浏览器如何发现网络、何时需要 STUN 或 TURN、怎样实现断点续传和完整性校验,以及用户应该关注的安全边界。
用 polite 与 impolite 角色、makingOffer 标记和回滚规则处理 glare,避免双方同时协商时出现 InvalidStateError、双连接或永久失联。
设计有界发送队列、高低水位、消息优先级与慢消费者策略,避免一个停滞连接吃光实时服务的内存并拖高所有用户延迟。
处理 AP 漫游、DHCP 地址变化、短时断包与候选对失效,通过连接状态、network change 和 ICE restart 平滑恢复。
通过浏览器安全发送文件、同步剪贴板、聊天和共享屏幕。