Salut
J'utilise la winpcap pour un projet.
Je me rends compte que les perfs sont desastreuses. Apres analyse, j'ai compris d'ou venait le probleme. Il est finalement simple, il y a x fois plus de frames à capturer que ce que je peux traiter. La fonction pcap_next_ex retourne a mon appli un packet de données. Mais il s'agit pas du dernier. Celui emit au moment de la capture. Il s'agit d'un packet bufferisé au niveau du driver winpcap. Je pense que la winpcap utilise FIFO en interne. J'arriverais a resoudre mon probleme si je pouvais limiter la taille de cette FIFO quitte a perdre des trames.
Mais je n'ai pas trouvé de fonction qui faisait cela. Existe t elle? On doit bien pouvoir ignorer une liste de paquet pour ne recuperer que le dernier (peut etre avec packet32.dll).
Sinon je pensais à un truc un peu beurk: faire un while sur le pcap_next_ex jusqu'a ce que j'atteigne le dernier paquet.
Des avis, des infos... je suis preneur. Merci.
Partager