Возможно ли узнать через командную строку сетевую нагрузку на удаленную машину linux / windows. Как мы можем получить загрузку процессора, то есть процессор используется на 75%.
Я не могу так много говорить о Linux, и я считаю, что ответ, который вы ищете, будет несколько отличаться в зависимости от того, какой Linux вы используете.
Вот ответ для части Windows, выполненной в PowerShell:
$allCounters = Get-Counter -Counter "\Network Adapter(*)\Bytes Total/sec"
foreach ($adapter in $allCounters.CounterSamples) {
if ($adapter.cookedValue -ne 0) {
$adapterName = $adapter.InstanceName
$adapterMax = (Get-Counter "\Network Adapter($adapterName)\Current Bandwidth").CounterSamples.cookedValue
if ($adapterMax -ne 0) {
$objResult = New-Object -TypeName psobject -Property @{
Name = $adapterName
Load = ($adapter.CookedValue/$adapterMax).ToString("P6")
}
$results+=$objResult
}
}
}
$results
Это вернет все активные в настоящее время адаптеры в системе и рассчитает их использование. Имейте в виду, что то, что Windows считает максимальной емкостью адаптера, и то, что на самом деле верно в зависимости от среды, может не совпадать. Если вам известна фактическая пропускная способность интерфейса, вы можете заменить $ adapterMax на постоянное значение и вычислить его (в битах в секунду).
Проверка 0 используется для пропускной способности некоторых адаптеров (мостов и т. Д.), Где Windows не сохраняет значение пропускной способности. Он передает очень много трафика, но, поскольку это совокупность участников моста, Windows не отслеживает максимальную пропускную способность.
Если вы хотите узнать больше о скриптовом доступе к показателям производительности, посмотрите здесь: Командлет MSDN Get-Counter Вы можете легко адаптировать этот же сценарий для получения удаленных показателей.
бмон это наверное то, что вам нужно. Он отобразит массу информации о каждом адаптере в системе.
Для Linux вы можете использовать netstat
команда. В зависимости от того, что именно вы хотите увидеть, вы можете использовать массу флагов. (Страница руководства очень подробна.) -s
переключатель предоставляет статистику.)
Пример:
[user@host ~]$ netstat -s
Ip:
Forwarding: 2
17721 total packets received
1 with invalid addresses
0 forwarded
0 incoming packets discarded
17702 incoming packets delivered
16252 requests sent out
12 outgoing packets dropped
Icmp:
33 ICMP messages received
0 input ICMP message failed
ICMP input histogram:
destination unreachable: 33
39 ICMP messages sent
0 ICMP messages failed
ICMP output histogram:
destination unreachable: 39
IcmpMsg:
InType3: 33
OutType3: 39
Tcp:
140 active connection openings
77 passive connection openings
6 failed connection attempts
5 connection resets received
0 connections established
17554 segments received
16134 segments sent out
16 segments retransmitted
0 bad segments received
12 resets sent
Udp:
88 packets received
33 packets to unknown port received
0 packet receive errors
121 packets sent
0 receive buffer errors
0 send buffer errors
UdpLite:
TcpExt:
112 TCP sockets finished time wait in fast timer
365 delayed acks sent
1 delayed acks further delayed because of locked socket
2086 packets directly queued to recvmsg prequeue
1310 bytes directly in process context from backlog
TCPDirectCopyFromPrequeue: 1015476
9354 packet headers predicted
773 packet headers predicted and directly queued to user
1112 acknowledgments not containing data payload received
4861 predicted acknowledgments
TCPTimeouts: 24
5 connections reset due to unexpected data
2 connections aborted due to timeout
TCPDeferAcceptDrop: 12
TCPRcvCoalesce: 2246
TCPAutoCorking: 7
TCPOrigDataSent: 6211
TCPHystartTrainDetect: 4
TCPHystartTrainCwnd: 65
TCPKeepAlive: 115
IpExt:
InMcastPkts: 14
OutMcastPkts: 16
InOctets: 52113215
OutOctets: 26659850
InMcastOctets: 1882
OutMcastOctets: 1962
InNoECTPkts: 33753