iowait включает время, ожидая сетевых вызовов?

easist путь к ним, чтобы заблокировать сайты, должен перенаправить запись DNS.

Простой способ проверить это, состоял бы в том, чтобы использовать сервер DNS из другой страны или настроить Ваш собственный DNS, который не заблокировал сайты. (другими словами, делает всю проверку из корневого DNS для каждого нового сайта, к которому Вы пытаетесь получить доступ.

19
задан 13 April 2017 в 15:13
4 ответа

Это означает ожидать "Файлового ввода-вывода", то есть, любого запроса чтения-записи к файлу, который находится в смонтированной файловой системе, но также и вероятно считает время, ожидая для загрузки или страницы загрузки спроса в память, например, библиотеки не в памяти все же или страницах mmap () 'd файлы, которые не находятся в поршне.

Это НЕ рассчитывает, время потратило ожидание объектов IPC, таких как сокеты, каналы, ttys, выбирают (), опрос (), сон (), пауза () и т.д.

В основном пора, чтобы поток тратит ожидание синхронного диска-IO - в это время это теоретически может работать, но не можете, потому что некоторые данные, в которых требуется, еще не там. Такие процессы обычно обнаруживаются в "D", указывают и способствуют среднему числу загрузки поля.

Смутно я думаю, что это, вероятно, включает файл IO в сетевые файловые системы.

20
ответ дан 2 December 2019 в 20:18
  • 1
    Как nfs IO является Файловый ввод-вывод также, я предполагаю, что Вы правы ;-) –  wzzrd 8 July 2009 в 12:22

iowait время является количеством времени, процесс тратит в ядре планировщик ввода-вывода. Насколько я знаю, это не имеет никакого отношения к сети I/O, поскольку идут регулярные сокетные соединения. Однако это будет включать потраченное ожидание времени сетевых файловых систем как NFS.

3
ответ дан 2 December 2019 в 20:18

iowait включает в себя сетевые вызовы. Я говорю это, потому что NFS обрабатывается столько же локальных файловых систем linux с точки зрения ядра:

$ vim linux-2.6.38.2/fs/nfs/file.c 

const struct file_operations nfs_file_operations = {
        .llseek         = nfs_file_llseek,
        .read           = do_sync_read,
        .write          = do_sync_write,
        .aio_read       = nfs_file_read,
        .aio_write      = nfs_file_write,
        .mmap           = nfs_file_mmap,
        .open           = nfs_file_open,
        .flush          = nfs_file_flush,
        .release        = nfs_file_release,
        .fsync          = nfs_file_fsync,
        .lock           = nfs_lock,
        .flock          = nfs_flock,
        .splice_read    = nfs_file_splice_read,
        .splice_write   = nfs_file_splice_write,
        .check_flags    = nfs_check_flags,
        .setlease       = nfs_setlease,
};

Когда процессы вызывают запись на файловый дескриптор 5, произойдет что-то подобное:

files->fd_array[5]->f_op->write(argv.......)

Так что процессы не знают, какую файловую систему используют (vfs magic) и iowait аналогична локальной файловой системе.

.
2
ответ дан 2 December 2019 в 20:18

Это так.

Кстати, один из серверов, которым я управляю, испытывает высокую iowait, что вызвано плохим монтированием NFS.

top - 06:19:03 up 14 days, 10:15,  3 users,  load average: 9.67, 11.83, 12.31
Tasks: 135 total,   1 running, 134 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.2%us,  0.2%sy,  0.0%ni,  0.0%id, 99.7%wa,  0.0%hi,  0.0%si,  0.0%st

top - 06:22:55 up 14 days, 10:19,  3 users,  load average: 10.58, 11.13, 11.89
Tasks: 137 total,   1 running, 136 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0%us,  0.2%sy,  0.0%ni,  0.0%id, 99.8%wa,  0.0%hi,  0.0%si,  0.0%st

И посмотрите на процессы в состоянии D.

root     27011  0.0  0.0      0     0 ?        S    03:12   0:00 [nfsd4]
root     27012  0.0  0.0      0     0 ?        S    03:12   0:00 [nfsd4_callbacks]
root     27013  0.0  0.0      0     0 ?        D    03:12   0:01 [nfsd]
root     27014  0.0  0.0      0     0 ?        D    03:12   0:01 [nfsd]
root     27015  0.0  0.0      0     0 ?        D    03:12   0:01 [nfsd]
root     27016  0.0  0.0      0     0 ?        D    03:12   0:01 [nfsd]
2
ответ дан 2 December 2019 в 20:18

Теги

Похожие вопросы