Назад | Перейти на главную страницу

Сетевые приложения с высоким процентом системного времени

У меня есть сервер Windows 2003 (не смейтесь) с подключением 10GbE, обрабатывающий данные, поступающие к нему по сети и отправляющие их обратно.

Вот график общей производительности системы и конкретного исследуемого приложения:

Второй график увеличен до кратковременного всплеска и имеет отношение к данным в моем ответе.

Как мне интерпретировать высокий процент времени ядра на этих процессах? В целом, они выполняют много сетевых операций ввода-вывода (66K PPS на входе, 96K PPS на выходе), и мне интересно, правильная ли интерпретация заключается в том, что время, проведенное в привилегированном пространстве, копирует данные туда и обратно между буферами и приложением. объем памяти. Это имело бы смысл?

Я обнаружил БОЛЬШОЕ количество фрагментированных пакетов, обрабатываемых / генерируемых этим приложением, и подозреваю, что это является причиной проблемы. Ожидаем результатов дальнейшего тестирования. Новости в 11!

Цифры представляют собой образцы, взятые через регулярные интервалы, соответствующие приведенному выше графику. Между вторым и третьим образцами трафик, идущий к приложению, увеличился на 40 тысяч пакетов в секунду.

Network Interface(BASP Virtual Adapter)\Packets Received/sec
64072   60684  114605  111119

Network Interface(MS TCP Loopback interface)\Packets Received/sec
 9965   10434   20499   17024

IPv4\Datagrams Received/sec
74042   71114  135104  128143

IPv4\Datagrams Received Delivered/sec
65927   64088  107000  102459

IPv4\Fragments Received/sec
10503    9246   32927   29528