Les Forums
Les forums sont fermés. Ils restent présent pour consultation et archivage.
Vous pouvez désormais poser vos questions directement dans les commentaires en bas de chaque page du site.
Alors n'hésitez pas à participer
[C++ CLI] Plus rapide que le TIMER
Bonjour, je fais la capture de paquets et comme vous le savez tous, la vitesse peut aller j'usqu'a 1000mb/s (GIGABIT). jai fais un timer qui fait la capture chaque 1ms, mais avec ça, il reste très long (beaucoup de packets qui sote), est ce qu'il existe un autre moyen pour faire une capture rapide?? Merci infiniment |
Lu abbd, Oui, il faut créer deux process. Un qui tourne en boucle infinie basé sur l'écoute et l'autre sur l'analyse. Le premier process ne dois pas tout à fait être une boucle infinie, mais un mode d'écoute bloqué. @+ _SebF - Sébastien FONTAINE |
Bonjour _Sebf, Merci beaucoup pour votre réponse, cependant je veux savoir si winpcap peut travailler comme Ethereal, est ce qu'il permet de capter tous les paquets ( en prenant en compte 2processus comme vous avez expliquer en dessus ), Merci |
Lu abbd, Oui car Ethereal est basé aussi dessus 🙂 Pour précision, il faut que ton process d'écoute soit en mode bloquant. @+ _SebF - Sébastien FONTAINE |
Rebonjour _sebf SVP, Est ce que vous pouvez me montrer comment faire le mode bloqué??. est ce qu'il faut faire: [code:1:3247e18454]While (true) { Methode de capture(); }[/code:1:3247e18454] Jai esayé mais il plante, Merci infiniment |
Lu , Avec la commande RECV, tu peux définir son mode bloquant ou pas à l'aide de la fonction SetSockOpt(...,SOL_SOCKET,SO_RCVTIMEO,...,...). @+ _SebF - Sébastien FONTAINE |
Bonsoir _Sebf, J'utilise WinPcap, est jai fais un wile comme suite [code:1:bb0154d949]while((res = pcap_next_ex( adhandle, &header, &pkt_data)) >= 0){ if(res == 0) /* Timeout elapsed */ continue; /* convert the timestamp to readable format */ local_tv_sec = header->ts.tv_sec; ltime=localtime(&local_tv_sec); strftime( timestr, sizeof timestr, "%H:%M:%S", ltime); MessageBox::Show(header->ts.tv_usec.ToString()); }[/code:1:bb0154d949] le pb que il rend le système lourd, comment le rendre légé?? Merci infiniment |
Merci beaucoup pour votre réponse, cependant je veux savoir si winpcap peut travailler comme Ethereal, est ce qu'il permet de capter tous les paquets ( en prenant en compte 2processus comme vous avez expliquer en dessus ), ..??? |