Pcap.net против Sharppcap

Я просто хочу прослушивать сетевое устройство, перехватывать пакеты и записывать пакеты в фиктивный файл. Также мне нужно фильтровать пакеты во время прослушивания, поэтому я буду писать только те пакеты, которые проходят фильтр. Мне нужно сделать это на .net С#. Это мои требования. Итак, какой из них я должен использовать? Высокая скорость передачи и минимальная потеря пакетов действительно важны. Спасибо за прочтение.


person Emre Erisgen    schedule 11.07.2011    source источник
comment
возможный дубликат захвата пакетов .net: pcap.net vs sharppcap   -  person    schedule 11.07.2011
comment
на этот вопрос нет ответов, связанных с производительностью.   -  person Emre Erisgen    schedule 11.07.2011


Ответы (2)


Как автор SharpPcap могу сказать, что все эти операции вы сможете проделать с библиотекой. Производительность была критической целью дизайна.

Packet.Net имеет ряд пакетов, которые он может анализировать, и представляет собой библиотеку, поставляемую вместе с SharpPcap для анализа и генерации пакетов. Его архитектура выполняет ленивую оценку везде, где это возможно, чтобы быть максимально быстрой.

Производительность сложна, особенно потому, что захват сетевых пакетов часто является задачей с более низким приоритетом для операционной системы. Чем быстрее ваше приложение обрабатывает пакет, тем больше пакетов можно обработать без отбрасывания. Мне удалось захватить пакеты со скоростью 3 МБ/с без каких-либо падений. Я не пробовал его на более высоких скоростях передачи данных и не писал обширные тесты для генерации и сбора данных для оценки производительности. Тем не менее, тесты и реальные результаты являются желательными точками данных, которые можно добавить в документацию и на веб-сайт.

person Chris Morgan    schedule 19.08.2011

Весь функционал доступен в Pcap.Net.

Pcap.Net использует C++/CLI для оболочки WinPcap, что считается более эффективным, чем PInvoke.

Библиотека пакетов в Pcap.Net довольно большая, и можно анализировать и создавать сложные пакеты. Сюда входят рекурсивные уровни, такие как IP over IP. Парсинг каждого слоя делается лениво и только тогда, когда вам это нужно.

Для ваших нужд я вижу только преимущества использования Pcap.Net по сравнению с SharpPcap.

person brickner    schedule 08.10.2011
comment
pcap.net все еще поддерживается? последнее обновление, которое я вижу, в 2016 году - person Lex L; 06.02.2020