
/tmp # ip rule0: from all lookup 1281: from all lookup local79: from 198.18.0.1 lookup 18079: from all fwmark 0x1/0xf lookup 18080: from 192.168.81.80 lookup 10081: from 10.221.7.233 lookup 101
/tmp # ip route ls table 100default via 192.168.81.1 dev ath0unreachable default metric 50000/tmp # ip route ls table 101default via 10.21.5.17 dev rmnet_mhi0.1unreachable default metric 50000
curl -X POST 'http://127.0.0.1:9801/api/v2/route/policyRouteManagment' --header 'enable:true'
curl -X POST 'http://127.0.0.1:9801/api/v2/route/policyRouteManagment' --header 'enable:false'
模式 | 场景 | 说明 |
bonding | 推流,大带宽 | 将业务流量分担到多条链路,充分利用所有链路带宽。 效果:大带宽,可靠传输,抗弱网。 |
redundant | 游戏,控制信令 | 业务报文在所有链路复制发送,接收方挑选最先到达的报文转发。 效果:消耗额外带宽保证最低时延。 |
rtc | 实时音视频 | 业务流量优先时延最低的链路传输,同时利用其他链路作为补充。 效果:不消耗额外带宽且保证业务流畅不卡顿,抗弱网能力强。 |
curl -X 'POST' 'http://127.0.0.1:9801/api/v2/client/mp-speeder' -H 'accept: */*' -H 'Content-Type: application/json' -d '{"dataKey":"get this devicekey from tencent and replace it here","interfaces": ["usb0","usb1","eth0"],"registerEnv": -2,"scheduleMode": "bonding"}'
name | type | 说明 |
dataKey | string | 必选:vendor+sn 与 dataKey 二选一。设备 dataKey。 |
vendor | string | 必选:vendor+sn 与 dataKey 二选一。设备厂商型号。 |
sn | string | 必选:vendor+sn 与 dataKey 二选一。设备厂商提供的设备唯一序列号。 |
registerEnv | integer | 必选。取值:1。 |
interfaces | [string] | 必选。参与多网聚合的接口列表。支持指定优先级,范围0~255,数值越小,优先级越高,优先级与网卡以冒号间隔。如果不传入优先级,则默认为64。注:redundant 模式下不支持传入优先级。["eth1:100", "eth2"]。 |
scheduleMode | string | 必选。默认加速模式。"bonding", "redundant", "rtc"。 |
accGateway | string | 可选。指定加速网关 IP,多个 IP 使用逗号分隔。如果不指定该参数,SDK 将自动就近接入。否则强制连接指定加速网关,例如:"120.30.39.129"。 |
gwPort | string | 可选。网关端口,默认:"443"。 |
UUID | string | 可选。硬件指纹,如果不指定该参数,SDK 会自动根据硬件生成。 |
disableCrypto | integer | 可选。允许客户在启动加速时,选择是否加密。默认开启流量加密,关闭加密可以降低流量消耗。 0:开启流量加密(默认)。 1:关闭流量加密。 |
flowStatisticsInterval | integer | 可选。链路加速流量统计频率,默认3秒。 |
maxRttDisableAggregation | integer | 可选。链路参与聚合时延阈值,默认460ms。 |
maxRttThreshold | integer | 可选。链路故障检测启动时延,默认460ms。 |
minSwitchRTT | integer | 可选。链路快切敏感度,默认20ms。 |
maxDelayUntilFailed | integer | 可选。链路参与切换时延阈值,默认460ms。 |
enableRecreatePathPconn | bool | 是否开启重建 path。 |
/usr/local/etc/mp-speeder/mp_client_ifname.conf文件中。echo '{"ifName":"eth0"}' > /usr/local/etc/mp-speeder/mp_client_ifname.conf
curl -X 'POST' 'http://127.0.0.1:9801/api/v2/client/mp-speeder/start' -H 'accept: */*' -H 'Content-Type: application/json'
curl -X 'POST' 'http://127.0.0.1:9801/api/v2/client/mp-speeder/stop' -H 'accept: */*' -H 'Content-Type: application/json'
curl -X 'POST' 'http://127.0.0.1:9801/api/v2/client/mp-speeder/restart' -H 'accept: */*' -H 'Content-Type: application/json'
curl -X GET "http://127.0.0.1:9801/api/v2/client/mp-speeder" -H "accept: */*" -H "Content-Type: application/json"
name | type | 说明 |
ready | boolean | 加速进程是否正常启动。 |
UUID | string | 设备硬件指纹。 |
dataKey | string | 设备 dataKey。 |
swVersion | string | SDK 软件版本。 |
accGateway | string | 加速网关 IP 地址。 |
gatewayPort | string | 加速网关端口。 |
interfaces | [string] | 参与多网聚合的接口列表。 |
scheduleMode | string | 默认加速模式,"bonding", "redundant", "rtc"。 |
| | |
curl -X 'GET' 'http://127.0.0.1:9801/api/v2/client/flowStatistics' -H 'accept: application/json' -H 'all: true'
name | type | 说明 |
interface | string | 链路网卡名称。 |
state | integer | 当前链路工作状态: -2:链路不可用。 60:链路被临时禁用。 100:链路正常。 |
totalReceivedBytes | integer | 接收方向的累计加速流量,单位 Bytes。 |
totalSendBytes | integer | 发送方向的累计加速流量,单位 Bytes。 |
receivedRate | float | 当前网卡加速通道的接收速率,单位 bit/s。 |
sendRate | float | 当前网卡加速通道的发送速率,单位 bit/s。 |
loss | float | 当前网卡加速通道的丢包率。丢包率以小数形式表示,例如0.1表示丢包率为10%,1表示丢包率为100%。 |
rtt | integer | 当前网卡加速通道的 rtt,单位 ms。 注:-1 表示当前链路不可用。 |
curl -X 'POST' 'http://127.0.0.1:9801/api/v2/client/mp-speeder/restart' -H 'accept: */*' -H 'Content-Type: application/json' curl -X 'POST' 'http://127.0.0.1:9801/api/v2/route/businessRoute' -H 'accept: */*' -H 'all: true'
curl -X 'POST' \\'http://127.0.0.1:9801/api/v2/route/businessRoute' \\-H 'accept: */*' \\-H 'all: false' \\-H 'Content-Type: application/json' \\-d '[{"dstIP": "9.134.246.109","protocol": "tcp"}]'
name | type | 说明 |
srcIP | string | 可选:源 IP 地址,支持掩码。例如:"192.168.3.3/30"。 |
dstIP | string | 可选:目的 IP 地址,支持掩码。例如:"192.168.3.3/30"。 |
protocol | string | 可选:"TCP"、"UDP"。 |
srcPorts | string | 可选:源端口,支持范围。例如:"3303-3330"。 |
dstPorts | string | 可选:目的端口,支持范围。例如:"3303-3330"。 |
isBlack | bool | 可选:是否黑名单,默认 false。 |
curl -X DELETE 'http://127.0.0.1:9801/api/v2/route/businessRoute' --header 'all: true'
curl -X 'DELETE' \\'http://127.0.0.1:9801/api/v2/route/businessRoute' \\-H 'accept: */*' \\-H 'all: false' \\-H 'Content-Type: application/json' \\-d '[{"dstIP": "124.220.191.156","protocol": "tcp"}]'
curl -X 'GET' 'http://127.0.0.1:9801/api/v2/route/businessRoute'
curl -X 'POST' 'http://127.0.0.1:9801/api/v2/client/mp-speeder/restart' -H 'accept: */*' -H 'Content-Type: application/json' curl -X 'POST' \\'http://127.0.0.1:9801/api/v2/client/multi-mode' \\-H 'accept: application/json' \\-H 'Content-Type: application/json' \\-d '{"dstIP": "124.220.191.156/32","protocol": "UDP","speedMode": 3}'
name | type | 说明 |
priority | integer | 可选:1-255,数字越低优先级越高。默认优先级255。 |
srcIP | string | 可选:源 IP 地址,支持掩码。例如:"192.168.3.3/30"。 |
dstIP | string | 可选:目的 IP 地址,支持掩码。例如:"192.168.3.3/30"。 |
protocol | string | 可选:"TCP"、"UDP"、"ANY"。 |
srcPorts | string | 可选:源端口,支持范围。例如:"3303-3330"。 |
dstPorts | string | 可选:目的端口,支持范围。例如:"3303-3330"。 |
speedMode | integer | 必选: ● 0 - "DEFAULT":复用默认加速模式。 ● 1 - "DIRECT":不加速,走系统默认网卡。 ● 2 - "bonding":聚合模式。 ● 3 - "rtc":实时音视频模式。 ● 4 - "redundant":多发选收模式。 |
curl -X 'DELETE' \\'http://127.0.0.1:9801/api/v2/client/multi-mode' \\-H 'accept: application/json' \\-H 'all: false' \\-H 'Content-Type: application/json' \\-d '{"priority":0,"dstIP": "124.220.191.156/32","protocol": "UDP"}'
name | type | 说明 |
priority | integer | 可选:1-255,数字越小优先级越高。默认优先级为255。 |
srcIP | string | 可选:源 IP 地址,支持掩码。例如:"192.168.3.3/30"。 |
dstIP | string | 可选:目的 IP 地址,支持掩码。例如:"192.168.3.3/30"。 |
protocol | string | 可选:"TCP"、"UDP"、"ANY"。 |
srcPorts | string | 可选:源端口号,支持范围。例如:"3303-3306"。 |
dstPorts | string | 可选:目的端口号,支持范围。例如:"3303-3306"。 |
curl -X 'DELETE' \\'http://127.0.0.1:9801/api/v2/client/multi-mode' \\-H 'accept: application/json' \\-H 'all: true' \\-H 'Content-Type: application/json' \\-d '{}'
curl -X 'GET' \\'http://127.0.0.1:9801/api/v2/client/multi-mode' \\-H 'accept: application/json' \\-H 'Content-Type: application/json' \\-H 'all: true' \\-d '{}'
{"logLevel": "info","autoUpload": false,"uploadInterval": 10,"logDir": "/var/log"}
curl -X POST 'http://127.0.0.1:9801/api/v2/diagnosis/log' -H 'accept: application/json' -H 'Content-Type: application/json' -d '{"logLevel": "debug","upload": false,"uploadInterval": 10}'
name | type | 说明 |
logLevel | string | 可选:程序日志的级别,默认"info",支持配置 "info", "debug", "warn"。 |
autoUpload | boolean | 可选:自动上传的开关,默认 false,为 true 时日志自动上传。 |
uploadInterval | integer | 可选:自动上传的间隔,默认10分钟,不开启自动上传时此参数不生效。 |
curl -X POST 'http://127.0.0.1:9801/api/v2/diagnosis/log'
curl -X POST'http://127.0.0.1:9801/api/v2/client/setCallback'-H 'accept: application/json'-H 'Content-Type: application/json'-d '{"callback_url": "http://127.0.0.1:9801/api/v2/client/callBackMock"}'
{"acc_mode": "1","mandatory": true,"code": 2,"reason": "Acc RTT 496.634µs over Master 447.855µs * 1 in 5m0s"}
字段 | 类型 | 含义 |
acc_mode | string | 加速模式。 acc_mode 返回值: 1:聚合模式; 2:双发模式; 3:快切模式。 |
mandatory | bool | 通知 SDK 是否主动关闭加速,false 时表示通知事件仅作为建议。 |
code | int | 关闭加速的异常码。 code 返回值: -6:ACC 链路持续丢包异常; -7:ACC 链路最大时延异常,ACC 链路时延连续大于指定时延并且主链路正常; -8:ACC 链路平均时延在时间窗口内超过主链路平均时延; -9:ACC 链路平均时延超过设置的阈值; -100:可能存在链路异常,仅针对聚合模式; 2:加速无效果,建议关闭加速。 |
reason | string | 关闭加速的具体原因 。 |
/usr/local/etc/mp-speeder/metric.json,可使用默认配置,也可自定义。"bonding":{"probeCfg": {"fastProbeInterval": 200,"normalProbeInterval": 1000,"minTimeForSelectProbePoint": 3000},"checkCfg": {"quicDetectTime": 10000,"primaryDetectTime":60000,"secondaryDetectTime":300000,"iQRAlpha": 0.75,"minDetectCount": 4,"maxDetectRTT": 400,"detectTimeout": 1000},"enableAcc": {"lossRate": 5,"quicRTT": 100,"avgRTT": 110,"jitterRTT": 20,"mdevRTT": 20,"maxRTT": 300,"disableQuicWndDetect": true,"disableAvgRTTDetect": false,"disableJitterDetect": false,"disableLossDetect": false},"disableAcc": {"lossCount": 4,"maxRTTCount": 4,"avgRTT": 130,"toleranceRate": 1.1,"minAvgRTT": 66,"SecondaryToleranceRate":1.0,"SecondaryJitterRate":0.8,// 逃生:连续 ${lossCount} 个丢包并且主链路没有连续丢包"EnableLossDetect": true,// 逃生:连续 ${maxRTTCount} 个rtt大于 ${checkCfg.maxDetectRTT} 并且主链路正常"EnableMaxRTTDetect": false,// 逃生:${checkCfg.primaryDetectTime} 时间窗口内acc链路的avgRTT大于 ${disableAcc.avgRTT}"EnablePrimaryAvgRTTDetect": false,// 逃生:${checkCfg.primaryDetectTime} 时间窗口内acc链路的avgRTT大于主链路avgRTT"EnablePrimaryDetect": false,// 建议关闭:${checkCfg.secondaryDetectTime} 时间窗口内acc链路的avgRTT大于主链路avgRTT"EnableSecondaryDetect": false,// 建议关闭:${checkCfg.primaryDetectTime} 时间窗口内所有辅链路全丢包"EnableSlaveLossDetect": false}}
curl -X 'GET''http://127.0.0.1:9801/api/v2/client/getCallback'-H 'accept: application/json'-H 'Content-Type: application/json'
文档反馈