macOS nettop 工具指南

1123 字
6 分钟
macOS nettop 工具指南

nettop 工具简介#

nettop 是 macOS 系统中内置的网络监控工具,用于实时显示网络连接和流量信息。它提供了详细的网络活动数据,包括进程级别的网络使用情况、连接状态、延迟指标等,是网络故障排查和性能分析的强大工具。

与其他网络监控工具相比,nettop 的优势在于:

  • 实时监控网络活动
  • 提供详细的进程级网络使用情况
  • 支持多种显示模式和过滤选项
  • 内置丰富的网络质量指标
  • 无需安装,是 macOS 系统自带工具

命令格式与选项#

基本语法#

Terminal window
nettop [-ncd] [-m <模式>] [-t <类型>] [-s <秒数>]
[-p <进程名|PID>] [-n] [-l <采样数>] [-L <采样数>] [-P]
[-j|k|J <列名[,列名]...>]

常用选项#

选项参数描述
-m <模式>指定监控模式:tcp(仅监控 TCP 套接字)、udp(仅监控 UDP 套接字)、route(监控路由表)
-t <类型>指定接口类型:wifiwiredloopbackawdlexpensiveundefinedexternal
-n禁用地址到名称的解析
-c降低 CPU 使用率(降低刷新频率)
-d增量模式
-x扩展显示数字,而非人类可读的后缀
-P仅显示每个进程的摘要
-s <延迟>设置更新间隔(秒)
-l <采样数>使用日志模式并显示指定次数的采样
-L <采样数>使用日志模式并以 CSV 形式显示指定次数的采样
-p <进程名PID>选择要显示的进程
-j <列名列表>指定要在显示中包含的列
-J <列名列表>指定唯一要在显示中包含的列
-k <列名列表>指定要从显示中排除的列

交互式操作#

nettop 运行时,可以使用以下按键进行交互:

  • q:退出
  • 上箭头/下箭头:上下滚动
  • 右箭头/左箭头:左右滚动
  • d:切换增量输出
  • r:重绘屏幕
  • x:切换人类可读数字
  • e:展开所有
  • c:折叠所有
  • h:打开帮助菜单
  • j:打开列选择菜单
  • p:打开进程选择菜单
  • l:切换到日志模式

输出解读#

nettop 可选输出列
nettop 可选输出列

基础标识#

  • interface:连接使用的网络接口名称(如 en0awdl0
  • type:连接类型(tcp/udp
  • state:连接状态(ESTABLISHEDLISTENCLOSE_WAITSYN_SENT 等)

流量计数#

  • packets_in / packets_out:累计接收/发送的数据包总数
  • bytes_in / bytes_out:累计接收/发送的字节总数

网络质量指标#

  • rx_dupe:接收到的重复数据包数(网络丢包/重传导致)
  • rx_ooo:接收到的乱序数据包数(数据包到达顺序错乱)
  • re-tx:重传次数(发送方重发数据包的总数)

延迟与滑动窗口#

  • rtt_min / rtt_avg / rtt_var:最小/平均/方差 往返时间(毫秒)
  • sndsize:发送缓冲区总大小(字节)
  • sndused:发送缓冲区已使用大小(字节)
  • rcvsize:接收缓冲区总大小(字节)
  • rcvused:接收缓冲区已使用大小(字节)
  • unacked:发送后尚未收到确认的数据包数量
  • tx_win:发送窗口大小(滑动窗口协议)
  • tx_cwin:拥塞窗口大小(TCP拥塞控制)

服务质量与算法#

  • tc_class:流量控制类别(如 BK-SYSBEVI
  • tc_mgt:流量管理策略标识
  • cc_algo:拥塞控制算法(如 cubicnewrenobbr

标志位(单字母)#

  • P:存在问题的连接
  • C:连接已关闭
  • R:连接被重置
  • W:存在窗口缩放

架构标识#

  • arch:进程架构(arm64 / x86_64

分接口流量#

  • cell_bytes_in / cell_bytes_out:蜂窝网络(4G/5G)累计字节
  • wifi_bytes_in / wifi_bytes_out:Wi-Fi 接口累计字节
  • wired_bytes_in / wired_bytes_out:有线接口累计字节

标识符#

  • uuid / epid / euuid / vuuid:进程或连接的唯一标识符(内部调试用)

关闭连接计数#

  • closed_tcp / closed_udp:已关闭的TCP/UDP连接总数

网络诊断建议#

通过分析 nettop 的输出,可以识别和诊断网络问题:

  1. 网络丢包或拥塞:如果 rx_duperx_ooore-tx 数值异常升高,说明网络存在丢包或拥塞问题。

  2. 网络延迟不稳定:如果 rtt_avg 波动大且 rtt_var 高,说明网络延迟不稳定。

  3. 拥塞控制限制:如果 tx_cwin 始终小于 tx_win,说明拥塞控制正在限制吞吐量。

  4. 连接状态异常:如果大量连接处于 CLOSE_WAITTIME_WAIT 状态,可能存在连接泄漏问题。

  5. 进程网络使用异常:通过观察特定进程的网络流量,可以识别异常的网络活动。

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

macOS nettop 工具指南
https://blog.cllll.link/posts/macos-nettop-tool-guide/
作者
clll
发布于
2026-04-26
许可协议
CC BY-NC-SA 4.0
Profile Image of the Author
clll
Hello, I'm clll.
公告
Hello, World!
音乐
封面

音乐

暂未播放

0:00 0:00
暂无歌词
分类
标签
站点统计
文章
17
分类
3
标签
48
总字数
27,020
运行时长
0
最后活动
0 天前

目录