4 гигабайтный предел трафика в выводе ifconfig (Нужен простейший способ преодолеть барьер)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

Ism
Сообщения: 1261
Статус: Никто, по сути быдло

4 гигабайтный предел трафика в выводе ifconfig

Сообщение Ism »

Недавно узнал проблему, что существует 4 гигабайтный предел подсчета трафика в выводе ifconfig

Можно конечно поставить специальную утилиту, но я хотел бы избежать этого (для программирования нужно)

Можно ли получить правильное (неограниченное) значение простым способом, например из системных переменных ядра ?

Гуглил , но ничего стоящего не нашел

Чтото было в команде netstat , но там только количество пакетов
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: 4 гигабайтный предел трафика в выводе ifconfig

Сообщение rm_ »

простейший способ

Перейти на 64-битную версию ОС.
Спасибо сказали:
Аватара пользователя
KiWi
Бывший модератор
Сообщения: 2521
Статус: статус, статус, статус

Re: 4 гигабайтный предел трафика в выводе ifconfig

Сообщение KiWi »

Ism писал(а):
17.12.2010 20:26
Можно конечно поставить специальную утилиту, но я хотел бы избежать этого (для программирования нужно)

Чаще смотреть на ifconfig и учитывать переполнение 32битного числа, как это делает весь софт, мониторящий загрузку сети.
Спасибо сказали:
Ism
Сообщения: 1261
Статус: Никто, по сути быдло

Re: 4 гигабайтный предел трафика в выводе ifconfig

Сообщение Ism »

Так что, выходит у самого ядра такое ограничение ? Неужели так все плохо ?
Спасибо сказали:
Аватара пользователя
KiWi
Бывший модератор
Сообщения: 2521
Статус: статус, статус, статус

Re: 4 гигабайтный предел трафика в выводе ifconfig

Сообщение KiWi »

Ism писал(а):
18.12.2010 01:18
Так что, выходит у самого ядра такое ограничение ? Неужели так все плохо ?

В смысле плохо? Любое число когда-нибудь переполнится. А если это рано или поздно произойдёт -- почему бы не использовать обычный unsigned int?
Так же, как и для 32битных систем -- максимальный unix time -- 2038-01-19 03:14:07 UTC.

Код: Выделить всё

# ifconfig eth1
...
          RX bytes:6335564764993 (6.3 TB)  TX bytes:5479820899140 (5.4 TB)


Оно уже не первый круг наматывает... На 64битной системе.
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: 4 гигабайтный предел трафика в выводе ifconfig

Сообщение rm_ »

KiWi писал(а):
18.12.2010 04:08

Код: Выделить всё

# ifconfig eth1
...
          RX bytes:6335564764993 (6.3 TB)  TX bytes:5479820899140 (5.4 TB)


Оно уже не первый круг наматывает... На 64битной системе.

Ммм, а сколько в терабайтах "длина круга" на 64-битной системе?
Вам доводилось видеть как оно доходит до 1.84467440737e+19 байт и сбрасывается на ноль?
Спасибо сказали:
Аватара пользователя
KiWi
Бывший модератор
Сообщения: 2521
Статус: статус, статус, статус

Re: 4 гигабайтный предел трафика в выводе ifconfig

Сообщение KiWi »

rm_ писал(а):
18.12.2010 15:02
KiWi писал(а):
18.12.2010 04:08

Код: Выделить всё

# ifconfig eth1
...
          RX bytes:6335564764993 (6.3 TB)  TX bytes:5479820899140 (5.4 TB)


Оно уже не первый круг наматывает... На 64битной системе.

Ммм, а сколько в терабайтах "длина круга" на 64-битной системе?
Вам доводилось видеть как оно доходит до 1.84467440737e+19 байт и сбрасывается на ноль?

Хотя, вру, казалось, что там "длина круга" поменьше.
Длина круга -- 18 ЭБ (эксабайт).
При полностью загруженном гигабитном интерфейсе -- на переполнение счётчика нужно всего лишь ~4000 лет.

P.S.: в любом случае -- закладываться на его непереполняемость не стоит -- лет через десять за пару дней будет легко переполняться. :D
Спасибо сказали: