我有一个巨大的 pcap 文件(许多 GB),我无法在wireshark 中加载它。我需要的是从中提取带宽使用信息,包括总的和每个协议的(在传入和传出方向),并可能以管理人员友好的方式绘制它。
本质上,我需要一些可以在命令行上处理 pcap 文件的东西,并以适合可视化或使用 rrdtool 等工具使用的格式输出使用统计信息。欢迎任何建议。
我知道有很多工具可以测试带宽和延迟,但它们都依赖于至少有一台可以运行这些测试的主机。
我想知道是否有在线资源或其他某种方式来估计两个国家/地区之间的延迟或速度(一般而言)。
例如,如果服务器位于新加坡或澳大利亚,日本客户的延迟会更低吗?印度用户是否有可能从英国或美国的服务器获得更高的下载速度?
是否有任何在线资源或一些聪明的方法可以以合理的准确度回答这些问题?
[更新]:感谢 Raffael Luthiger 的精彩建议。我不知道那些看起来像玻璃的服务器。海底电缆地图也很酷(感谢 Jesper Mortensen)。如果我可以向该地区的那些网络专业人员询问他们的经验,这似乎也很明智,但显然我无法接触到这些。至少其中一些在SF :)
但是,我仍然有点不确定如何组合这些资源来给我一些测量结果。这是我拥有的信息:两个国家(A,B)。我确实有 A 国客户的 IP 地址(例如,我可以从 Web 服务器日志文件中获取这些地址)。大概我可以在 B 国找到一些窥镜服务器并跟踪这些 IP。最好的测量方法是什么?是否有任何脚本可以帮助自动化至少部分流程?
我希望在 rsync 过程中限制文件传输的上传速度。
--bwlimit=KBPS是否意味着它设置了互联网传输速度,或硬盘驱动器磁盘写入速度?
--bwlimit=KBPS 限制 I/O 带宽;每秒千字节
此外,在手册中它说
Rsync 也可以作为守护进程运行,在这种情况下,接受以下选项:
这就是--bwlimit=KBPS的描述被列出的地方。
这是否意味着 rsync 必须在守护进程模式下运行才能使用该命令?
如果... --bwlimit=KBPS是指我的文件的互联网传输速度...
任何人都可以提供一个示例,说明我如何更改命令行以限制使用 rsync 的文件传输的上传速度?
这是我目前正在使用的:
rsync -avz -e 'ssh' someuser@server1.example.com:/var/www/* /var/www/
Run Code Online (Sandbox Code Playgroud) 我正在尝试限制容器内的带宽。我曾尝试使用以下命令,但我认为它没有生效。
cd /sys/fs/cgroup/net_cls/
echo 0x1001 > A/net_cls.classid # 10:1
echo 0x1002 > B/net_cls.classid # 10:2
tc qdisc add dev eth0 root \
handle 10: htb
tc class add dev eth0 parent 10: \
classid 10:1 htb rate 40mbit
tc class add dev eth0 parent 10: \
classid 10:2 htb rate 30mbit
tc filter add dev eth0 parent 10: \
protocol ip prio 10 \
handle 1: cgroup
Run Code Online (Sandbox Code Playgroud)
这里 A 和 B 是使用此命令创建的容器。
lxc-execute -n A -f configfile /bin/bash
lxc-execute -n …Run Code Online (Sandbox Code Playgroud) 我们使用 SonicWall NSA 3500 作为我们的主路由器。我们也有一个 SonicWall Analyzer 虚拟设备,它从 NSA 3500 获取信息并确定各种内容,例如带宽使用情况。
我们有来自同一个 ISP 的 2 个互联网连接。一种是电缆,另一种是光纤。光纤连接是我们有 100 GB/mo 限制并且必须支付超额费用的连接。从现在开始,这仅与光纤连接有关。
然而,我们的 ISP 和 Analyzer 设备似乎给我提供了不同的月度读数。
11 月,Analyzer 报告我们的光纤连接使用了118.1 GB的带宽。我们 ISP 的发票显示我们使用了505.1 GB。
这些数字怎么会相差如此之大?如何解决此带宽使用情况的原因?在 SonicWall 分析器中,我查看了整个 11 月的 SonicWall 接口,该接口连接了我们的光纤连接,那时我获得了 118 GB。
我们已经联系了我们的 ISP,他们声称他们的阅读系统没有任何问题。
在我实施了一个新的备份系统后,我们首先开始注意到我们的使用高峰,该系统通过异地互联网复制备份,但是在我们弄清楚这一点时,过去 2 个月已完全从网络中删除。当我说完全删除时,我的意思是我进入了 SonicWall 并禁用了 VPN 连接。我还进入了备份软件并关闭了复制。
我一直在一家小型软件开发公司管理 IT 职能,该公司在 5 年内从 10 名用户增长到 70 名用户。
公司中的大多数用户都在办公室工作,但一些关键用户远程工作。
一开始,Skype 成为办公室工作人员和远程工作人员之间沟通的事实上的工具。随着公司的发展和更多远程工作人员的加入,Skype 已成为公司生态系统的一部分。
在过去的 18 个月中,Skype 的可靠性有所下降。我最初将此归因于某个 ISP 的问题,但在此期间,我们已经搬迁了与完全不同的 ISP 签约的办公室,增加了我们的同步光纤宽带 (20mbps),并安装了新的网络硬件。然而 Skype 问题仍然存在。
远程用户的标准抱怨是,当他们与朋友、母亲、妻子等交谈时,Skype 很好,但与办公室中的某人交谈时,他们经常出现掉线、像素化和消音。
在尝试解决这个问题超过 2 年之后,我开始怀疑 Skype 是否适合这种环境的工具。公司的所有基础设施都是基于云的,因此进出办公室的数据流不断,显然会不时达到峰值。我们也是基于 Apple 的,因此经常会同时在多个系统上从 iTunes 下载内容。
此外,可能会有多个 Skype VC 电话同时进行。我们通常会在早上 09:00 到 11:00 之间看到问题,当我们召开所有涉及远程开发人员的站立会议时。
每当我们遇到这些问题时,我们都会将宽带增加 5mbps,这会使事情变得更好几个月,然后我们会增加一些员工,然后重新开始。
我的理论是,这些在住宅连接中通常不会出现的不可避免的峰值会影响 Skype 音频和视频。有了公司的 IT 配置文件,让 Skype 之类的东西始终如一地工作几乎是不可能的。也许 Skype 的专用互联网连接将是一个解决方案?
我已经使用 python 端口 mechanize - multi-mechanize测试了我的服务器¹ 。我运行了几个非常简单的测试 - 但我总是从 10 兆位下降到一些 kb 的上传带宽。我不知道为什么。
无论我跑 3.15 分钟还是 30 分钟,对结果都没有影响。有总是一个带宽下降到110和120秒之间的几乎为零,因为你可以在下面的分析给出见。我选择了短期,所以更容易发现下跌。
对 htop 的检查显示没有什么特别之处,内核运行在 2% 到 7% 之间。
内存使用量始终在 2048mb 保证内存中的 1000mb (+-100) 左右。
当我检查 iftop 时,没有什么特别的,但上传从 10 兆字节下降到几千字节约 10 秒(110-120 秒)
所有 cronjobs / 不必要的任务都被禁用。所有页面(正面/随机)均可用。每个请求都由 http 响应代码 200 回答。Apache 和 MySQL 错误日志为空。
由于我是一名边做边学的管理员,我不确定是否有更多相关信息。加载的 apache mod 是否相关?希望我提到了所有重要的事实。
[global]
run_time = 180
rampup = 0
results_ts_interval = 10
progress_bar = on
console_logging = off
xml_report = off
[user_group-1]
threads = …Run Code Online (Sandbox Code Playgroud) 我看了很多文章,但没有回答我的问题。
我的服务器使用 VMware vSphere Hypervisor。我的服务器中有 20 台虚拟机。
虚拟机操作系统:centos7
我已经将我的vSwitch和VM 网络带宽更改为 1000000000 KB/s
所以其他虚拟机不会影响我的 dtr(数据传输率)。
现在我的 dtr 是 170 ~ 200 MB/s
我如何将我的 dtr 增加到 500 MB/s,以便我可以更快地将 20 GB 的文件从 A vm 传输到 B vm。
VM A : nc -l 20000 > /dev/null
VM B : time dd if=/dev/zero bs=100M count=200 | nc <VM A> 20000
200+0 records in
200+0 records out
20971520000 bytes (21 GB) copied, 122.466 s, 171 MB/s
real 2m2.479s
user 0m2.148s
sys 3m10.841s …Run Code Online (Sandbox Code Playgroud) 我在 SSD 中复制了一个 10GB 的文件,使用 fio 命令进行基准测试,其读取带宽约为 3.3GB/s。这是参考: https: //cloud.google.com/compute/docs/disks/benchmarking-pd-performance
我使用“sync; echo 3 > /proc/sys/vm/drop_caches”清除了缓存。之后,我尝试每次使用系统调用 open() 和 read() 以 3MB 的小块读取文件。如果我打开没有 O_DIRECT 和 O_SYNC 的文件,它会给我大约 1.2GB/s 的带宽。但是,如果我使用 O_DIRECT 和 O_SYNC,它会提供大约 3GB/s 的带宽。即使 O_DIRECT 也没有真正使用页面缓存,两次都会清除缓存。
我的问题是为什么 O_DIRECT 提供正常的 IO 带宽,而没有 O_DIRECT 我无法获得它。由于从 IO 到页面缓存的数据带宽为 3.3GB/s,从页面缓存到用户缓冲区的带宽假设约为 7GB/si。该管道还应提供正常的 3.3GB/s。为什么速度比较慢?
我每次都会读新的 3MB。我没有重用数据,因此缓存并不是很有用。但是管道应该是受IO约束的,为什么不呢?
CPU 为 Intel(R) Xeon(R) Silver 4214 CPU @ 2.20GHz。我不确定 DRAM 的速度。但问题是,如果我多次重新读取相同的 3MB,那么我会获得约 8GB/s 的带宽。我想这应该是 DRAM 带宽。因为linux可以使用所有的空闲RAM作为页面缓存。
我尝试了启用和不启用 O_DIRECT 的 fio 命令并记录了 iostat。
使用这个 fio 命令。“fio --name=read_throughput --directory=$TEST_DIR --numjobs=1 --size=10G --time_based --runtime=30s …
我正在寻找能够提供内置带宽监控的路由器和防火墙设备;这意味着,我转到设备的 Web 控制面板,我可以看到每个 IP 使用的流量的实时细分(更好的是,识别每台机器的 MAC,以便我可以在必要时将它们从网络中排除)。我知道有第三方解决方案可以实时分析系统日志,但我真正想要的是一个简单的、即插即用的设备,它提供这种开箱即用的实时分析。