kvirtu 315 Опубликовано: 2012-04-19 08:15:25 Share Опубликовано: 2012-04-19 08:15:25 Всем привет ! Есть фря 8.2, сервак с сетевыми карточками: fxp0, em0, age0, re0. Подскажите нужно ли включать polling на всех интерфейсах ? Или только на интеле ? В инете пишут по разному, у кого какие реальные результаты. Спасибо. Ссылка на сообщение Поделиться на других сайтах
nightfly 1 239 Опубліковано: 2012-04-19 08:20:04 Share Опубліковано: 2012-04-19 08:20:04 Нет, не нужно нигде. Посмотрите за окно - там 2012-й год. Ссылка на сообщение Поделиться на других сайтах
KabaH 31 Опубліковано: 2012-04-19 08:23:52 Share Опубліковано: 2012-04-19 08:23:52 Полинг это анахронизм. Реальные поцоны юзают канонические Интеловские сетевые карточки умеющие управлять частотой прерываний. Ссылка на сообщение Поделиться на других сайтах
LV10 281 Опубліковано: 2012-04-19 08:41:05 Share Опубліковано: 2012-04-19 08:41:05 polling ушел в небытие сразу после фряхи8 и дров от яндекса Ссылка на сообщение Поделиться на других сайтах
kvirtu 315 Опубліковано: 2012-04-19 08:47:18 Автор Share Опубліковано: 2012-04-19 08:47:18 понял, спс всем. Ссылка на сообщение Поделиться на других сайтах
maxx 202 Опубліковано: 2012-04-19 14:34:53 Share Опубліковано: 2012-04-19 14:34:53 Оффтоп, но может кто-то посоветует, как на интеловых картах распаралеливать ппое траффик по нескольким прерываниям. PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND 12 root 1 171 ki31 0K 16K CPU4 4 164.7H 97.75% idle: cpu4 14 root 1 171 ki31 0K 16K CPU2 2 163.4H 96.58% idle: cpu2 13 root 1 171 ki31 0K 16K CPU3 3 163.8H 91.80% idle: cpu3 11 root 1 171 ki31 0K 16K RUN 5 160.0H 77.44% idle: cpu5 16 root 1 171 ki31 0K 16K RUN 0 99.1H 58.54% idle: cpu0 [color=#ff0000] 32 root 1 -68 - 0K 16K CPU2 2 39.1H 52.73% irq256: igb0 [/color] 15 root 1 171 ki31 0K 16K CPU1 1 129.0H 48.54% idle: cpu1 65 root 1 -68 - 0K 16K CPU0 0 67.1H 37.74% dummynet 55 root 1 -68 - 0K 16K WAIT 5 334:24 21.68% irq268: igb1 53 root 1 -68 - 0K 16K WAIT 4 348:16 7.76% irq267: igb1 51 root 1 -68 - 0K 16K WAIT 3 333:13 7.52% irq266: igb1 45 root 1 -68 - 0K 16K RUN 0 401:31 6.93% irq263: igb1 33 root 1 -68 - 0K 16K - 5 262:24 5.13% igb0 que 47 root 1 -68 - 0K 16K WAIT 1 339:59 5.08% irq264: igb1 49 root 1 -68 - 0K 16K WAIT 2 342:34 4.93% irq265: igb1 3349 root 2 45 0 121M 41768K select 3 168:04 1.22% mpd5 Ибо такая картина нихера не радует. в праймтайм ложит 1 ядро проца в полку. Прибивание к нескольким ядрам только усугубляет результат. Остальные 5 ядер свободны. Ссылка на сообщение Поделиться на других сайтах
sergeev 1 Опубліковано: 2012-04-19 18:05:54 Share Опубліковано: 2012-04-19 18:05:54 net.isr ? Ссылка на сообщение Поделиться на других сайтах
adeep 212 Опубліковано: 2012-04-19 19:37:51 Share Опубліковано: 2012-04-19 19:37:51 Оффтоп, но может кто-то посоветует, как на интеловых картах распаралеливать ппое траффик по нескольким прерываниям. PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND 12 root 1 171 ki31 0K 16K CPU4 4 164.7H 97.75% idle: cpu4 14 root 1 171 ki31 0K 16K CPU2 2 163.4H 96.58% idle: cpu2 13 root 1 171 ki31 0K 16K CPU3 3 163.8H 91.80% idle: cpu3 11 root 1 171 ki31 0K 16K RUN 5 160.0H 77.44% idle: cpu5 16 root 1 171 ki31 0K 16K RUN 0 99.1H 58.54% idle: cpu0 [color=#ff0000] 32 root 1 -68 - 0K 16K CPU2 2 39.1H 52.73% irq256: igb0 [/color] 15 root 1 171 ki31 0K 16K CPU1 1 129.0H 48.54% idle: cpu1 65 root 1 -68 - 0K 16K CPU0 0 67.1H 37.74% dummynet 55 root 1 -68 - 0K 16K WAIT 5 334:24 21.68% irq268: igb1 53 root 1 -68 - 0K 16K WAIT 4 348:16 7.76% irq267: igb1 51 root 1 -68 - 0K 16K WAIT 3 333:13 7.52% irq266: igb1 45 root 1 -68 - 0K 16K RUN 0 401:31 6.93% irq263: igb1 33 root 1 -68 - 0K 16K - 5 262:24 5.13% igb0 que 47 root 1 -68 - 0K 16K WAIT 1 339:59 5.08% irq264: igb1 49 root 1 -68 - 0K 16K WAIT 2 342:34 4.93% irq265: igb1 3349 root 2 45 0 121M 41768K select 3 168:04 1.22% mpd5 Ибо такая картина нихера не радует. в праймтайм ложит 1 ядро проца в полку. Прибивание к нескольким ядрам только усугубляет результат. Остальные 5 ядер свободны. PPPoE? попробуйте 9ку фрю и включенный net.isr. Возможно придется дописать патч в isr с хэш-функцией для разделения трафика по потокам(ядрам). Есть готовый для L3 Ссылка на сообщение Поделиться на других сайтах
maxx 202 Опубліковано: 2012-04-19 19:45:25 Share Опубліковано: 2012-04-19 19:45:25 Оффтоп, но может кто-то посоветует, как на интеловых картах распаралеливать ппое траффик по нескольким прерываниям. PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND 12 root 1 171 ki31 0K 16K CPU4 4 164.7H 97.75% idle: cpu4 14 root 1 171 ki31 0K 16K CPU2 2 163.4H 96.58% idle: cpu2 13 root 1 171 ki31 0K 16K CPU3 3 163.8H 91.80% idle: cpu3 11 root 1 171 ki31 0K 16K RUN 5 160.0H 77.44% idle: cpu5 16 root 1 171 ki31 0K 16K RUN 0 99.1H 58.54% idle: cpu0 [color=#ff0000] 32 root 1 -68 - 0K 16K CPU2 2 39.1H 52.73% irq256: igb0 [/color] 15 root 1 171 ki31 0K 16K CPU1 1 129.0H 48.54% idle: cpu1 65 root 1 -68 - 0K 16K CPU0 0 67.1H 37.74% dummynet 55 root 1 -68 - 0K 16K WAIT 5 334:24 21.68% irq268: igb1 53 root 1 -68 - 0K 16K WAIT 4 348:16 7.76% irq267: igb1 51 root 1 -68 - 0K 16K WAIT 3 333:13 7.52% irq266: igb1 45 root 1 -68 - 0K 16K RUN 0 401:31 6.93% irq263: igb1 33 root 1 -68 - 0K 16K - 5 262:24 5.13% igb0 que 47 root 1 -68 - 0K 16K WAIT 1 339:59 5.08% irq264: igb1 49 root 1 -68 - 0K 16K WAIT 2 342:34 4.93% irq265: igb1 3349 root 2 45 0 121M 41768K select 3 168:04 1.22% mpd5 Ибо такая картина нихера не радует. в праймтайм ложит 1 ядро проца в полку. Прибивание к нескольким ядрам только усугубляет результат. Остальные 5 ядер свободны. PPPoE? попробуйте 9ку фрю и включенный net.isr. Возможно придется дописать патч в isr с хэш-функцией для разделения трафика по потокам(ядрам). Есть готовый для L3 при net.isr swi1 отжирает 1 ядро в 0 и начинает дропать пакеты, параллелить никак не хочет, ввиду того что сетевой стек раскидывает на ядра по заголовакам айпи пакетов. В ппое траффике таковых нету так что внуренний интерфейс априори ложится на 1 ядро. На интерфейсе ошибки. при включенном более менее вменяемо пашет. в 9ке разве реализовано распараллеливание процессов по макам ? Че-то я на 2 насе поставил 9ку - картина 1 в 1. Ссылка на сообщение Поделиться на других сайтах
adeep 212 Опубліковано: 2012-04-19 21:37:07 Share Опубліковано: 2012-04-19 21:37:07 при net.isr swi1 отжирает 1 ядро в 0 и начинает дропать пакеты, параллелить никак не хочет, ввиду того что сетевой стек раскидывает на ядра по заголовакам айпи пакетов. В ппое траффике таковых нету так что внуренний интерфейс априори ложится на 1 ядро. На интерфейсе ошибки. при включенном более менее вменяемо пашет. в 9ке разве реализовано распараллеливание процессов по макам ? Че-то я на 2 насе поставил 9ку - картина 1 в 1. сравните: включен isr: 12 root -72 - 0K 496K WAIT 2 0:02 7.67% intr{swi1: netisr 2} 12 root -72 - 0K 496K WAIT 1 0:02 7.28% intr{swi1: netisr 1} 12 root -72 - 0K 496K WAIT 0 0:05 4.20% intr{swi1: netisr 0} 12 root -72 - 0K 496K WAIT 3 0:02 4.20% intr{swi1: netisr 3} я что-то не так делаю? Вы упустили оба важных момента: фря 9.х и патч на распределение очередей - там достаточно просто, надо дописать строк 10-20 исходного кода, чтобы сделать распределение очередей на основе информации PPPoE заголовков (к примеру хэш на основе MAC-адреса пакета). Ссылка на сообщение Поделиться на других сайтах
fastvd 62 Опубліковано: 2012-04-20 06:46:54 Share Опубліковано: 2012-04-20 06:46:54 мы тоже долго думалиискалимечтали...до конца просто поставили проц i5 с частотой 3,4 ггц и теперь НАС при 750мбитах(сетевуха igb.фря 7,4) по процу: 1-ое ядро на котором лежит РРРоЕ грузится ну максимум на 55%, 2-4 на 12-15 процентов... тоисть вход распредиляется прекрасно по интерруптам, а весь исход по РРРоЕ грузит проц до 55%... тоесть по расчетам 1 гиг прожует как раз с небольшим запасом... до этого на делловском серваке с 2-мя двухядерными ксенонами по 3,3 ггц частоте проц в 98% впёрся при 580-600 мбитах.... вот вам и i5 ) Ссылка на сообщение Поделиться на других сайтах
maxx 202 Опубліковано: 2012-04-20 07:40:46 Share Опубліковано: 2012-04-20 07:40:46 при net.isr swi1 отжирает 1 ядро в 0 и начинает дропать пакеты, параллелить никак не хочет, ввиду того что сетевой стек раскидывает на ядра по заголовакам айпи пакетов. В ппое траффике таковых нету так что внуренний интерфейс априори ложится на 1 ядро. На интерфейсе ошибки. при включенном более менее вменяемо пашет. в 9ке разве реализовано распараллеливание процессов по макам ? Че-то я на 2 насе поставил 9ку - картина 1 в 1. сравните: включен isr: 12 root -72 - 0K 496K WAIT 2 0:02 7.67% intr{swi1: netisr 2} 12 root -72 - 0K 496K WAIT 1 0:02 7.28% intr{swi1: netisr 1} 12 root -72 - 0K 496K WAIT 0 0:05 4.20% intr{swi1: netisr 0} 12 root -72 - 0K 496K WAIT 3 0:02 4.20% intr{swi1: netisr 3} я что-то не так делаю? Вы упустили оба важных момента: фря 9.х и патч на распределение очередей - там достаточно просто, надо дописать строк 10-20 исходного кода, чтобы сделать распределение очередей на основе информации PPPoE заголовков (к примеру хэш на основе MAC-адреса пакета). можно ссылочку на патч? или де чего пачетать? Ссылка на сообщение Поделиться на других сайтах
maxx 202 Опубліковано: 2012-04-20 07:58:23 Share Опубліковано: 2012-04-20 07:58:23 мы тоже долго думалиискалимечтали...до конца просто поставили проц i5 с частотой 3,4 ггц и теперь НАС при 750мбитах(сетевуха igb.фря 7,4) по процу: 1-ое ядро на котором лежит РРРоЕ грузится ну максимум на 55%, 2-4 на 12-15 процентов... тоисть вход распредиляется прекрасно по интерруптам, а весь исход по РРРоЕ грузит проц до 55%... тоесть по расчетам 1 гиг прожует как раз с небольшим запасом... до этого на делловском серваке с 2-мя двухядерными ксенонами по 3,3 ггц частоте проц в 98% впёрся при 580-600 мбитах.... вот вам и i5 ) ну у меня на 6 яйцевом феноме запас поболе будет. Но именно интересует распаралеливание для ппое траффика. ибо при 650 мегабитах по ядрам след картинка. http://clip2net.com/s/1PuNQ к 0 ядру прибит думинет прерывания внутреннего интерфейса к 1-2 но нагрузку ложит четко на 1. И это после тюнинга сетевухи. Кстати насчет запаса, я бы небыл столь категоричен. Нагрузка на яйца растет по экспоненте, так что лишние 20 кппс могут дать большую нагрузку чем предыдущие все. Ссылка на сообщение Поделиться на других сайтах
fastvd 62 Опубліковано: 2012-04-23 06:55:47 Share Опубліковано: 2012-04-23 06:55:47 при net.isr swi1 отжирает 1 ядро в 0 и начинает дропать пакеты, параллелить никак не хочет, ввиду того что сетевой стек раскидывает на ядра по заголовакам айпи пакетов. В ппое траффике таковых нету так что внуренний интерфейс априори ложится на 1 ядро. На интерфейсе ошибки. при включенном более менее вменяемо пашет. в 9ке разве реализовано распараллеливание процессов по макам ? Че-то я на 2 насе поставил 9ку - картина 1 в 1. сравните: включен isr: 12 root -72 - 0K 496K WAIT 2 0:02 7.67% intr{swi1: netisr 2} 12 root -72 - 0K 496K WAIT 1 0:02 7.28% intr{swi1: netisr 1} 12 root -72 - 0K 496K WAIT 0 0:05 4.20% intr{swi1: netisr 0} 12 root -72 - 0K 496K WAIT 3 0:02 4.20% intr{swi1: netisr 3} я что-то не так делаю? Вы упустили оба важных момента: фря 9.х и патч на распределение очередей - там достаточно просто, надо дописать строк 10-20 исходного кода, чтобы сделать распределение очередей на основе информации PPPoE заголовков (к примеру хэш на основе MAC-адреса пакета). можно ссылочку на патч? или де чего пачетать? ничего не тюнилось, просто родные дрова с сайта интел, НО не последние...так как именно последние глюкали очень сильно(система тупо раз в сутки зависала) Ссылка на сообщение Поделиться на других сайтах
maxx 202 Опубліковано: 2012-04-23 08:20:34 Share Опубліковано: 2012-04-23 08:20:34 ничего не тюнилось, просто родные дрова с сайта интел, НО не последние...так как именно последние глюкали очень сильно(система тупо раз в сутки зависала) интересует следующее патч на распределение очередей Подсказали вот такое. Незнаю или оно, нету пока тестовой машины - проверить. Обкатаю "напешу атчот". # cat if_ethersubr.c.patch *** if_ethersubr.c Fri Jan 13 09:52:49 2012 --- if_ethersubr.c_ Sun Oct 30 19:40:28 2011 *************** *** 622,627 **** --- 622,633 ---- ifp->if_imcasts++; } + m->m_flags |= M_FLOWID; + m->m_pkthdr.flowid = eh->ether_dhost[0] + eh->ether_dhost[1] + eh->ether_dhost[2] + eh->ether_dhost[3] + eh->ether_d + m->m_pkthdr.flowid += eh->ether_shost[0] + eh->ether_shost[1] + eh->ether_shost[2] + eh->ether_shost[3] + eh->ether_s + + + #ifdef MAC /* * Tag the mbuf with an appropriate MAC label before any other *************** *** 873,878 **** --- 879,908 ---- if ((m = ip_fastforward(m)) == NULL) return; isr = NETISR_IP; + + struct ipheader { + u_char offset [12]; //ip header fields not actually needed here + u_char src [4]; //ip src + u_char dst [4]; //ip dst + } __packed __aligned(4); + + if (m->m_pkthdr.len < sizeof(struct ipheader)) { //from ip_fastforward + if_printf(ifp, "flowid math: discard frame with too small headern"); + goto discard; + } + if (m->m_len < sizeof (struct ipheader) && + (m = m_pullup(m, sizeof (struct ipheader))) == NULL) { //ip_fastforward + if_printf(ifp, "flowid math: discard frame at pullupn"); + return; /* mbuf already free'd */ + } + struct ipheader *ip; + ip = mtod(m, struct ipheader *); + m->m_pkthdr.flowid += ip->src[0] + ip->src[1] + ip->src[2] + ip->src[3]; + m->m_pkthdr.flowid += ip->dst[0] + ip->dst[1] + ip->dst[2] + ip->dst[3]; + + //if_printf(ifp, "Calculated flow id %dn", m->m_pkthdr.flowid); + + break; case ETHERTYPE_ARP: Ссылка на сообщение Поделиться на других сайтах
adeep 212 Опубліковано: 2012-04-23 09:28:53 Share Опубліковано: 2012-04-23 09:28:53 Подсказали вот такое. Незнаю или оно, нету пока тестовой машины - проверить. Обкатаю "напешу атчот". он и есть. но сделан только для заголовков IP. для заголовков ethernet (=PPPoE) его надо дописывать по аналогии. Ссылка на сообщение Поделиться на других сайтах
Kto To 602 Опубліковано: 2012-04-24 20:26:50 Share Опубліковано: 2012-04-24 20:26:50 m->m_flags |= M_FLOWID; m->m_pkthdr.flowid = eh->ether_dhost[0] + eh->ether_dhost[1] + eh->ether_dhost[2] + eh->ether_dhost[3] + eh->ether_dhost[4] + eh->ether_dhost[5]; m->m_pkthdr.flowid += eh->ether_shost[0] + eh->ether_shost[1] + eh->ether_shost[2] + eh->ether_shost[3] + eh->ether_shost[4] + eh->ether_shost[5]; не оно ли это? Или там есть какая-то особая магия о которой мы не знаем? Поделитесь... Ссылка на сообщение Поделиться на других сайтах
maxx 202 Опубліковано: 2012-05-09 18:12:15 Share Опубліковано: 2012-05-09 18:12:15 Поделитесь... Видимо не хотят делица. Ссылка на сообщение Поделиться на других сайтах
adeep 212 Опубліковано: 2012-05-09 18:54:17 Share Опубліковано: 2012-05-09 18:54:17 m->m_flags |= M_FLOWID; m->m_pkthdr.flowid = eh->ether_dhost[0] + eh->ether_dhost[1] + eh->ether_dhost[2] + eh->ether_dhost[3] + eh->ether_dhost[4] + eh->ether_dhost[5]; m->m_pkthdr.flowid += eh->ether_shost[0] + eh->ether_shost[1] + eh->ether_shost[2] + eh->ether_shost[3] + eh->ether_shost[4] + eh->ether_shost[5]; не оно ли это? Или там есть какая-то особая магия о которой мы не знаем? Поделитесь... Похоже что оно. Ссылка на сообщение Поделиться на других сайтах
maxx 202 Опубліковано: 2012-05-09 22:00:16 Share Опубліковано: 2012-05-09 22:00:16 m->m_flags |= M_FLOWID; m->m_pkthdr.flowid = eh->ether_dhost[0] + eh->ether_dhost[1] + eh->ether_dhost[2] + eh->ether_dhost[3] + eh->ether_dhost[4] + eh->ether_dhost[5]; m->m_pkthdr.flowid += eh->ether_shost[0] + eh->ether_shost[1] + eh->ether_shost[2] + eh->ether_shost[3] + eh->ether_shost[4] + eh->ether_shost[5]; не оно ли это? Или там есть какая-то особая магия о которой мы не знаем? Поделитесь... Похоже что оно. А не соблаговолит ли, глубокоуважаемых джин, кинуть уже пропатченными исходниками, кторые дают такие чудесные результаты, ибо - либо я что-то неправильно делаю, либо что-то пошло не так. Но даже пропачив if_ethersubr.c и дрова игбы, картинко не поменялась. Заранее благодарны, с нас коньяк если будете у нас на колыме. Ссылка на сообщение Поделиться на других сайтах
adeep 212 Опубліковано: 2012-05-10 07:19:34 Share Опубліковано: 2012-05-10 07:19:34 А не соблаговолит ли, глубокоуважаемых джин, кинуть уже пропатченными исходниками, кторые дают такие чудесные результаты, ибо - либо я что-то неправильно делаю, либо что-то пошло не так. Но даже пропачив if_ethersubr.c и дрова игбы, картинко не поменялась. Заранее благодарны, с нас коньяк если будете у нас на колыме. Было бы время сделать все полностью не давал бы туманных ответов, а выкинул бы патч) А так увы, более ничего не имеем. Ежели у вас есть понимающие люди, можем списаться и покумекать вместе. Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас