{"schema":"portbug/v1","id":"PB-20260910-F3A8DE","created_at":"2026-09-10T04:36:17.322646232Z","source":"web","title":"浏览器基线检测 (HTTPS/443)","client":{"version":"web","os":"Linux aarch64","arch":""},"node":{"id":"web","name":"浏览器直连","mode":"browser"},"egress":{"ip":"117.131.64.14"},"tests":[{"port":443,"proto":"tcp","dir":"probe","streams":0,"dur_ms":0,"bytes":0,"mbps":0,"observed_port":443,"rtt_ms":45.299999952316284,"reach":"ok"},{"port":443,"proto":"tcp","dir":"down","streams":1,"dur_ms":13198,"bytes":74711040,"mbps":45.29,"samples":[{"t_ms":0,"mbps":3.26},{"t_ms":100,"mbps":14.43},{"t_ms":200,"mbps":36.37},{"t_ms":300,"mbps":38.33},{"t_ms":400,"mbps":37.68},{"t_ms":500,"mbps":44.89},{"t_ms":600,"mbps":48.16},{"t_ms":700,"mbps":57.01},{"t_ms":800,"mbps":57.99},{"t_ms":900,"mbps":62.58},{"t_ms":1000,"mbps":38.66},{"t_ms":1100,"mbps":53.4},{"t_ms":1200,"mbps":36.04},{"t_ms":1300,"mbps":82.24},{"t_ms":1400,"mbps":79.94},{"t_ms":1500,"mbps":73.72},{"t_ms":1600,"mbps":80.93},{"t_ms":1700,"mbps":60.61},{"t_ms":1800,"mbps":52.09},{"t_ms":1900,"mbps":63.23},{"t_ms":2000,"mbps":58.65},{"t_ms":2100,"mbps":85.51},{"t_ms":2200,"mbps":55.37},{"t_ms":2300,"mbps":67.49},{"t_ms":2400,"mbps":59.96},{"t_ms":2500,"mbps":61.27},{"t_ms":2600,"mbps":65.53},{"t_ms":2700,"mbps":65.86},{"t_ms":2800,"mbps":60.61},{"t_ms":2900,"mbps":62.91},{"t_ms":3000,"mbps":51.11},{"t_ms":3100,"mbps":36.37},{"t_ms":3200,"mbps":30.47},{"t_ms":3300,"mbps":52.42},{"t_ms":3400,"mbps":46.52},{"t_ms":3500,"mbps":28.18},{"t_ms":3600,"mbps":45.21},{"t_ms":3700,"mbps":37.68},{"t_ms":3800,"mbps":49.47},{"t_ms":3900,"mbps":52.42},{"t_ms":4000,"mbps":57.99},{"t_ms":4100,"mbps":52.09},{"t_ms":4200,"mbps":46.2},{"t_ms":4300,"mbps":43.58},{"t_ms":4400,"mbps":54.38},{"t_ms":4500,"mbps":46.53},{"t_ms":4600,"mbps":57.01},{"t_ms":4700,"mbps":47.83},{"t_ms":4800,"mbps":46.85},{"t_ms":4900,"mbps":64.22},{"t_ms":5000,"mbps":52.42},{"t_ms":5100,"mbps":56.35},{"t_ms":5200,"mbps":51.77},{"t_ms":5300,"mbps":14.74},{"t_ms":5400,"mbps":0.33},{"t_ms":5500,"mbps":34.73},{"t_ms":5600,"mbps":38.33},{"t_ms":5700,"mbps":37.02},{"t_ms":5800,"mbps":37.02},{"t_ms":5900,"mbps":47.83},{"t_ms":6000,"mbps":39.32},{"t_ms":6100,"mbps":47.51},{"t_ms":6200,"mbps":43.58},{"t_ms":6300,"mbps":37.35},{"t_ms":6400,"mbps":47.83},{"t_ms":6500,"mbps":44.23},{"t_ms":6600,"mbps":42.26},{"t_ms":6700,"mbps":50.13},{"t_ms":6800,"mbps":41.94},{"t_ms":6900,"mbps":49.8},{"t_ms":7000,"mbps":45.54},{"t_ms":7100,"mbps":48.16},{"t_ms":7200,"mbps":52.42},{"t_ms":7300,"mbps":44.23},{"t_ms":7400,"mbps":45.87},{"t_ms":7500,"mbps":49.47},{"t_ms":7600,"mbps":50.46},{"t_ms":7700,"mbps":48.49},{"t_ms":7800,"mbps":48.49},{"t_ms":7900,"mbps":42.26},{"t_ms":8000,"mbps":38.66},{"t_ms":8100,"mbps":43.25},{"t_ms":8200,"mbps":40.95},{"t_ms":8300,"mbps":48.16},{"t_ms":8400,"mbps":44.56},{"t_ms":8500,"mbps":53.08},{"t_ms":8600,"mbps":55.37},{"t_ms":8700,"mbps":53.08},{"t_ms":8800,"mbps":51.44},{"t_ms":8900,"mbps":57.34},{"t_ms":9000,"mbps":54.71},{"t_ms":9100,"mbps":50.78},{"t_ms":9200,"mbps":46.85},{"t_ms":9300,"mbps":53.4},{"t_ms":9400,"mbps":49.8},{"t_ms":9500,"mbps":53.4},{"t_ms":9600,"mbps":52.75},{"t_ms":9700,"mbps":43.57},{"t_ms":9800,"mbps":39.97},{"t_ms":9900,"mbps":40.95},{"t_ms":10000,"mbps":36.7},{"t_ms":10100,"mbps":51.44},{"t_ms":10200,"mbps":37.02},{"t_ms":10300,"mbps":39.97},{"t_ms":10400,"mbps":45.21},{"t_ms":10500,"mbps":7.86},{"t_ms":10600,"mbps":7.54},{"t_ms":10700,"mbps":40.63},{"t_ms":10800,"mbps":31.78},{"t_ms":10900,"mbps":33.09},{"t_ms":11000,"mbps":27.52},{"t_ms":11100,"mbps":29.81},{"t_ms":11200,"mbps":33.42},{"t_ms":11300,"mbps":33.75},{"t_ms":11400,"mbps":35.38},{"t_ms":11500,"mbps":36.04},{"t_ms":11600,"mbps":35.71},{"t_ms":11700,"mbps":36.7},{"t_ms":11800,"mbps":34.4},{"t_ms":11900,"mbps":37.35},{"t_ms":12000,"mbps":35.71},{"t_ms":12100,"mbps":31.78},{"t_ms":12200,"mbps":30.8},{"t_ms":12300,"mbps":33.09},{"t_ms":12400,"mbps":35.06},{"t_ms":12500,"mbps":34.07},{"t_ms":12600,"mbps":38.33},{"t_ms":12700,"mbps":36.7},{"t_ms":12800,"mbps":42.92},{"t_ms":12900,"mbps":37.35},{"t_ms":13000,"mbps":33.09},{"t_ms":13100,"mbps":43.41}],"observed_port":443,"reach":"ok"},{"port":443,"proto":"tcp","dir":"up","streams":1,"dur_ms":8988,"bytes":12582912,"mbps":11.2,"samples":[{"t_ms":0,"mbps":0},{"t_ms":100,"mbps":0},{"t_ms":200,"mbps":0},{"t_ms":300,"mbps":0},{"t_ms":400,"mbps":0},{"t_ms":500,"mbps":0},{"t_ms":600,"mbps":0},{"t_ms":700,"mbps":0},{"t_ms":800,"mbps":0},{"t_ms":900,"mbps":0},{"t_ms":1000,"mbps":0},{"t_ms":1100,"mbps":0},{"t_ms":1200,"mbps":0},{"t_ms":1300,"mbps":0},{"t_ms":1400,"mbps":0},{"t_ms":1500,"mbps":0},{"t_ms":1600,"mbps":167.77},{"t_ms":1700,"mbps":0},{"t_ms":1800,"mbps":0},{"t_ms":1900,"mbps":0},{"t_ms":2000,"mbps":0},{"t_ms":2100,"mbps":0},{"t_ms":2200,"mbps":0},{"t_ms":2300,"mbps":0},{"t_ms":2400,"mbps":0},{"t_ms":2500,"mbps":0},{"t_ms":2600,"mbps":0},{"t_ms":2700,"mbps":0},{"t_ms":2800,"mbps":0},{"t_ms":2900,"mbps":0},{"t_ms":3000,"mbps":0},{"t_ms":3100,"mbps":167.77},{"t_ms":3200,"mbps":0},{"t_ms":3300,"mbps":0},{"t_ms":3400,"mbps":0},{"t_ms":3500,"mbps":0},{"t_ms":3600,"mbps":0},{"t_ms":3700,"mbps":0},{"t_ms":3800,"mbps":0},{"t_ms":3900,"mbps":0},{"t_ms":4000,"mbps":0},{"t_ms":4100,"mbps":0},{"t_ms":4200,"mbps":0},{"t_ms":4300,"mbps":0},{"t_ms":4400,"mbps":0},{"t_ms":4500,"mbps":0},{"t_ms":4600,"mbps":167.77},{"t_ms":4700,"mbps":0},{"t_ms":4800,"mbps":0},{"t_ms":4900,"mbps":0},{"t_ms":5000,"mbps":0},{"t_ms":5100,"mbps":0},{"t_ms":5200,"mbps":0},{"t_ms":5300,"mbps":0},{"t_ms":5400,"mbps":0},{"t_ms":5500,"mbps":0},{"t_ms":5600,"mbps":0},{"t_ms":5700,"mbps":0},{"t_ms":5800,"mbps":0},{"t_ms":5900,"mbps":0},{"t_ms":6000,"mbps":0},{"t_ms":6100,"mbps":0},{"t_ms":6200,"mbps":167.77},{"t_ms":6300,"mbps":0},{"t_ms":6400,"mbps":0},{"t_ms":6500,"mbps":0},{"t_ms":6600,"mbps":0},{"t_ms":6700,"mbps":0},{"t_ms":6800,"mbps":0},{"t_ms":6900,"mbps":0},{"t_ms":7000,"mbps":0},{"t_ms":7100,"mbps":0},{"t_ms":7200,"mbps":0},{"t_ms":7300,"mbps":0},{"t_ms":7400,"mbps":0},{"t_ms":7500,"mbps":167.77},{"t_ms":7600,"mbps":0},{"t_ms":7700,"mbps":0},{"t_ms":7800,"mbps":0},{"t_ms":7900,"mbps":0},{"t_ms":8000,"mbps":0},{"t_ms":8100,"mbps":0},{"t_ms":8200,"mbps":0},{"t_ms":8300,"mbps":0},{"t_ms":8400,"mbps":0},{"t_ms":8500,"mbps":0},{"t_ms":8600,"mbps":0},{"t_ms":8700,"mbps":0},{"t_ms":8800,"mbps":0},{"t_ms":8900,"mbps":167.77}],"observed_port":443,"reach":"ok"}],"verdict":{"kind":"inconclusive","title":"HTTPS/443 基线：下行 45.3 Mbps，上行 11.2 Mbps","detail":"这是浏览器能达到的全部。本次没有测任何其他端口，因此不能就「某个端口是否被限速」作出任何判断 —— 那需要同链路的对照端口和逐秒序列。","confidence":"low","evidence":["仅测量 TCP/443（HTTPS）","无对照端口，未做整形检测"],"control_ports":null},"method":{"timing":"按时长计时（服务端到点停止），非按字节","duration_ms":10000,"streams":1,"bucket_ms":100,"rate_limit":"无","control_ports":"","clock":"浏览器 performance.now()（单调时钟）","notes":"浏览器沙箱内测量，仅覆盖 HTTPS/443；端口级结论需本地客户端"},"public":true,"untested":[{"capability":"任意 TCP 端口","reason":"浏览器只能发起 80 / 443 的连接，8080、3389、5060 一概碰不到"},{"capability":"裸 UDP 吞吐","reason":"WebRTC 之外发不出裸 UDP 包，RDP / 游戏 / 音视频的真实上限测不到"},{"capability":"端口整形检测","reason":"需要逐秒吞吐序列与同链路对照端口，JS 计时被缓冲和 TLS 层抹平"},{"capability":"逐跳归因","reason":"需要构造 TTL 递增的 SYN 包，浏览器碰不到 IP 层"},{"capability":"TCP 重传与 cwnd","reason":"rtt / retrans / snd_cwnd / delivery_rate 是内核态数据，JS 读不到"},{"capability":"MTU 黑洞探测","reason":"需要控制包长与 DF 标志位，浏览器无此能力"}]}
