2012-05-21 4 views
0

Я создаю сетевую утилиту для OS X. Я прошел документацию по Apple, но я не могу найти фреймворк, который позволяет моему приложению отслеживать входящие байты. Может ли кто-нибудь указать мне в правильном направлении? Спасибо за ваше время!Monitor Incoming Bytes OS X

+0

Что вы подразумеваете под контролем входящих байтов? Вы хотите захватить все входящие пакеты и иметь возможность отображать их содержимое? Или вы просто хотите получить количество входящих байтов (или байтов в секунду) в сетевой интерфейс, чтобы вы могли отображать показатели производительности? –

+0

Я просто отслеживаю использование данных. Мне нужны пакеты, чтобы определить их размер. –

ответ

1

Чтобы получить статистику по сети, вы можете использовать sysctl system call. Это довольно тонко документировано; есть another answer на StackOverflow, который дает краткий пример, и для более подробной информации я бы рекомендовал посмотреть на netstat source code.

0

Я думаю, что что-то подобное можно было бы сделать с

http://www.wireshark.org/ или http://www.tastycocoabytes.com/cpa/

В Linux вы можете просто слушать файл, который связан с вашей сетевой карты.

Но я не думаю, что это может быть сделано простым способом в OS X. Но действительно, должен быть какой-то способ, думающий о LittleSnitch.

+0

В каком файле вы думаете? Один из файлов в разделе '/ sys/class/net/{interface}/statistics', где {interface} - это имя сетевого интерфейса для сетевого адаптера? Если это так, то ответ Брайана Кэмпбелла применим: вы используете sysctl для OS X (и других приложений с ОС BSD), чтобы получить эти статистические данные (не так просто, как чтение файла статистики, но не так уж плохо), как он говорит, netstat'). –

0

Вы можете использовать libpcap, который представляет собой переносную библиотеку для выполнения захватов пакетов, используемых tcpdump, Wireshark и т. Д. Это не официальная библиотека Apple, но она лицензирована BSD, поэтому у вас не должно быть проблем с ее использованием.

+1

Обратите внимание, что, хотя это не официальная библиотека Apple, поскольку она не была создана Apple, это * - это библиотека, которая поставляется с OS X, в комплекте с ручными страницами и файлами заголовков. –

 Смежные вопросы

  • Нет связанных вопросов^_^