악성 코드 탐지 시스템에 대한 연구를하고 있습니다. 감염된 시스템의 행동 모델을 만들려면 Pcap 파일에서 많은 양의 패킷을 처리해야하며 플로우 (동일한 IP를 가진 패킷을 소스와 운명의 포트)에 그룹화 한 다음 해당 플로우에서 일부 기능을 추출해야합니다.파이썬에서 대량의 네트워크 패킷을 처리하는 가장 좋은 방법은 무엇입니까?
DPKT를 사용하여 패킷의 정보를 구문 분석하고 읽습니다. 제 질문은 그룹화 프로세스를 수행하는 가장 효율적인 방법에 관한 것입니다. PostgreSQL 데이터베이스를 사용하여 패키지의 정보가있는 플로우가 존재하는지 쿼리하고 플로우에 추가하거나 새 플로우를 작성합니다. 그러나이 방법은 매우 비효율적이라고 생각합니다. 그래서 메모리 내 구조를 사용하거나 데이터베이스 또는 다른 것을 개선하는 것과 같은 다른 대안을 요구합니다.
이다 : 당신의 문제를 해결하기
한 가지 방법은 DICT의 하위 클래스 인
Counter
클래스를 사용할 수 있을까? (lines/filesize) – hansaplastPcap 파일은 10K 줄부터 몇 백만 가지까지 가질 수 있습니다. – p0kero