Модераторы: xvr
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как быстро узнать количество доступных сокетов, В Unix, FreeBSD 
:(
    Опции темы
fray
Дата 5.6.2009, 22:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 7.6.2007

Репутация: нет
Всего: 0



Как быстро узнать количество доступных сокетов в системе ?
Быстрей чем 
Код

65535 - `netstat -p tcp | wc -l` 

когда считают таким образом, то результат получется не быстро, сосебнно при большом количестве занятых сокетов и некоторой загрузке системы.

Это сообщение отредактировал(а) fray - 5.6.2009, 22:42
PM MAIL   Вверх
azesmcar
Дата 5.6.2009, 23:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 1
Всего: 211



fray

Цитата

/proc/*/fd/*
    File descriptors. 
/proc/net/tcp
    List of TCP sockets. 
/proc/net/udp
    List of UDP sockets. 
/proc/net/raw
    List of raw sockets.

посчитать количество файлов пойдет?
PM   Вверх
MAKCim
Дата 6.6.2009, 09:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



Цитата(azesmcar @  5.6.2009,  23:37 Найти цитируемый пост)
/proc/net/tcp
    List of TCP sockets. 
/proc/net/udp
    List of UDP sockets. 
/proc/net/raw
    List of raw sockets.

это и делает netstat


Цитата(azesmcar @  5.6.2009,  23:37 Найти цитируемый пост)
/proc/*/fd/*
    File descriptors. 

файл != сокет
разным файлам (с разными целочисленными идентификаторами) может соответствовать один и тот же сокет


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
azesmcar
Дата 6.6.2009, 09:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 1
Всего: 211



Цитата(MAKCim @  6.6.2009,  09:43 Найти цитируемый пост)
это и делает netstat

Да, но вызывать netstat из своей программы явно медленее чем подсчитать самому. Может ненамного но медленее.


Цитата(MAKCim @  6.6.2009,  09:43 Найти цитируемый пост)

файл != сокет

хмм..и что? я по вашему файл от сокета не отличаю? Просто скопировал из мануала всю информацию по данному вопросу.

PM   Вверх
MAKCim
Дата 6.6.2009, 10:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



Цитата(azesmcar @  6.6.2009,  09:52 Найти цитируемый пост)
хмм..и что? я по вашему файл от сокета не отличаю?


Цитата(MAKCim @  6.6.2009,  09:43 Найти цитируемый пост)
разным файлам (с разными целочисленными идентификаторами) может соответствовать один и тот же сокет 

под файлом с т. з процесса понимается объект структуры файл, который через обработчики file_operations и поле private реализует файловую семантику для любого объекта, в т. ч сокета


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
azesmcar
Дата 6.6.2009, 10:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 1
Всего: 211



Цитата(MAKCim @  6.6.2009,  10:04 Найти цитируемый пост)
под файлом с т. з процесса понимается объект структуры файл, который через обработчики file_operations и поле private реализует файловую семантику для любого объекта, в т. ч сокета 

и??? я не понимаю к чему вы клоните? я дал автору вопроса максимальную информацию, если сам не разберется - спросит.
PM   Вверх
MAKCim
Дата 6.6.2009, 11:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



Цитата(azesmcar @  6.6.2009,  10:14 Найти цитируемый пост)
я не понимаю к чему вы клоните?

короче, подсчет

Цитата(azesmcar @  5.6.2009,  23:37 Найти цитируемый пост)
/proc/*/fd/*
    File descriptors. 

не всегда даст нужную информацию


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
azesmcar
Дата 6.6.2009, 11:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 1
Всего: 211



Цитата(MAKCim @  6.6.2009,  11:04 Найти цитируемый пост)

короче, подсчет

Цитата(azesmcar @  5.6.2009,  23:37 Найти цитируемый пост)
/proc/*/fd/*
    File descriptors. 

не всегда даст нужную информацию 

Вы где-то заметили чтобы я говорил что это даст нужный разультат?
/proc/net/udp тоже не даст нужный результат, автора только TCP интересует.
Если вы к тому что это лишняя информация - я так не считаю.
PM   Вверх
MAKCim
Дата 6.6.2009, 11:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



azesmcar
блин,
с помощью /proc/net всегда можно получить нужный результат
с /proc/*/fd/* не всегда

вопросы?


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
azesmcar
Дата 6.6.2009, 12:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 1
Всего: 211



Цитата(MAKCim @  6.6.2009,  11:49 Найти цитируемый пост)
azesmcar, 
блин,
с помощью /proc/net всегда можно получить нужный результат
с /proc/*/fd/* не всегда

вопросы? 

блин,
я не говорил что с с помощью /proc/*/fd/* всегда можно получить нужный результат.
я протицировал manual. Ссылка нужна?
PM   Вверх
MAKCim
Дата 6.6.2009, 12:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



Цитата(azesmcar @  6.6.2009,  12:08 Найти цитируемый пост)
я не говорил что с с помощью /proc/*/fd/* всегда можно получить нужный результат.

зачем просто цитировать manual, если не подразумевается, что это не ответ на вопрос?


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
azesmcar
Дата 6.6.2009, 12:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 1
Всего: 211



Цитата(MAKCim @  6.6.2009,  12:45 Найти цитируемый пост)
зачем просто цитировать manual, если не подразумевается, что это не ответ на вопрос? 

Потому что в цитате содержался ответ на вопрос. Эта был один пункт и я не хотел удалять из него что либо полагая что автор сам найдет в ней то что ему нужно.
PM   Вверх
MAKCim
Дата 6.6.2009, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



azesmcar
Цитата(azesmcar @  5.6.2009,  23:37 Найти цитируемый пост)
посчитать количество файлов пойдет? 

не подразумевалось ли здесь, что /proc/*/fd/* ответ на вопрос? ;)
(т. к /proc/net не имеет никакого отношения к подсчету файлов)


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
azesmcar
Дата 6.6.2009, 14:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 1
Всего: 211



Цитата(MAKCim @  6.6.2009,  13:43 Найти цитируемый пост)
не подразумевалось ли здесь, что /proc/*/fd/* ответ на вопрос? ;)

нет.

Цитата(MAKCim @  6.6.2009,  13:43 Найти цитируемый пост)
(т. к /proc/net не имеет никакого отношения к подсчету файлов) 


Цитата

/proc/net
    various net pseudo-files, all of which give the status of some part of the networking layer. These files contain ASCII structures and are, therefore, readable with cat. However, the standard netstat(8) suite provides much cleaner access to these files. 

http://linux.die.net/man/5/proc
я только не помню там для каждого сокета отдельный псевдо-файл или все в одном файле. Если я правильно помню - для каждого дескриптора отдельный псевдо файл, речь шла о подсчете этих файлов. Если в одном - тогда подсчитать количество строк.

Это сообщение отредактировал(а) azesmcar - 6.6.2009, 14:02
PM   Вверх
MAKCim
Дата 6.6.2009, 15:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



Цитата(azesmcar @  6.6.2009,  14:00 Найти цитируемый пост)
Если я правильно помню - для каждого дескриптора отдельный псевдо файл

нет
отдельные псевдофалы (точнее псвдоссылки) как раз в /proc/*/fd/

ps. проехали ;)


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема »


 




[ Время генерации скрипта: 0.0950 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.