inux平台 (tc + netem):最常用且功能强大。通过tc命令,可将通过特定网卡的出站流量设置固定延迟。2 j2 b! C2 Z! @$ V( n3 ^: s8 t
E0 {/ _ Q& T4 h
配置示例: sudo tc qdisc add dev eth0 root netem delay 10ms# q2 H9 K& f: e5 W% W
: t# F7 F& n/ A, [ \6 h删除配置: sudo tc qdisc del dev eth0 root netem
! V3 j" G+ k# E n! R E' L" N) F
Windows平台 (Clumsy):图形化弱网模拟工具。运行后勾选"Lag"功能并填入"10"即可。/ G, K h" z0 E( B
, y- |& i4 ^' t7 x- B0 r. }
macOS平台 (Network Link Conditioner):开发者工具,在偏好设置中开启并创建一个自定义10ms延时的配置文件。) y6 ? C. e9 { ~
) V" y* @0 M' F9 B; A3 y, T
跨平台浏览器/代理工具 (Chrome DevTools / Charles / Fiddler):通过浏览器开发者工具或代理软件模拟网络环境。# x; a& i9 U2 n8 j: g+ [
( K& I( l/ b: e. z' a' d- N
🛠️ 硬件方案:专业WAN模拟器: E7 s- c; _$ b- H# _. _, F$ m# ? d
如果追求高精度,硬件是更专业的选择。
& J" H! {% c8 G* _; i$ `0 L6 E3 C8 q. ^" W
原理:作为串接设备处理所有经过的网络流量来主动增加延迟。
U8 o" Q) C/ o/ J: y" g: o, |6 f, F% C+ V
代表产品:
* Q$ S& ~" I3 Q: R6 n# p' W5 Z; r P+ p: M7 ], R9 \: _% }" d% ^" M6 a8 `
Linktropy/Netropy:精度可达0.1ms,最大延迟10秒,适合严苛测试场景。
! g) \4 J6 Y5 f1 ?' A& p
V' M* g5 s: U. O7 a4 RAukua Systems:支持10Mbps到25Gbps的高速链路。
5 `* I+ @3 F4 d5 j1 g; U' G0 A
; H$ ]) v: }1 e; x💡 使用误区与注意事项4 r% z* c' {* Q4 o/ j3 L4 P
区分方向:延迟通常只作用于出站流量。如需双向延迟,双方都要配置或使用支持双向控制的硬件。
w) T% j2 W3 h- D# t4 g
, ?- D+ j/ S: Z; Z$ M4 [* u影响范围:配置后会影响整个网卡流量。建议通过IP/端口过滤作用对象或使用专用测试设备。
" t# I; x8 r3 h5 R) i8 Y
2 {, O2 _( D9 z% X+ ^. x! ^, G连接限制:tc命令通常只对新建立的TCP连接生效,已存在的连接可能不受影响 |