tcpdump-пом сохраняю весь трафик в файл, далее скриптом выбираю информацию из этого файла и считаю весь трафик. Собственно размер пакетов пишется в скобках или после слова length, но необходимо считать и размеры служебных пакетов syn, ack и т.д. Скриптом анализировать информацию о типе пакета и т.д приведёт к сильному усложнению скрипта. С какими опциями надо запустить tcpdump что бы он писал суммарный-полный размер пакета - данные и служебную информацию и что бы писал размер пакетов где размер данных ноль? В мане такой опции не нашёл, интернет то же не помог, может tcpdump и не выводит такую информацию.....
Я понимаю что есть много разных утилит которые считают трафик, но уже есть скрип к которому написано много разных примочек которые придётся настраивать или даже писать наново если использовать другие утилиты для подсчёта трафика.
И второй вопрос.
Работу скрипта проверял утилитой netcat - перебрасывал файлы определённого размера с компьютера на компьютер. На сколько я знаю netcat не сжимает данные при передачи файлов, или я ошибаюсь? При передачи файла размером 1000000 байт и меньше данные были переданы точно, а вот при передачи файла размером 10000000 байт было передано 9921808 Байт данных. Почему не ровно 10000000 байт, может netcat сжимает большие размеры данных? netcat запускался со следующим образом: на передающей стороне
nc -l порт < файл
nc ip порт > файл