[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux] [OT] programmation: génération de trafic.



Salut, 

Voilà le truc: pour mon tfe, je suis amené à tester les capacités des
routeurs cisco sous IPSec. Je dois donc pouvoir générer du trafic à des
débit fixe. J'emploie le protocole UDP pour éviter des phénomènes de
retransmission qui pourraient perturber les tests.

J'arrive bien à générer du trafic à full speed (12.x Mo/s). Ca pas de
problème. 

Je calcule alors un temps d'attente en usec entre chaque paquet.
Jusque-là, ok. Je veux alors utiliser select() pour gérer le délai mais
pas moyen de générer plus de 100Ko de trafic de cette manière. 

Voici le code en question

while (1) {
	tv.tv_sec = 0;
	tv.tv_usec = time;
	select( 0, NULL, NULL, NULL, &tv);
	sendto(sock, data, packet_size - HEADER, 0, 
	       (struct sockaddr *) &sockaddr, 
	       sizeof(struct sockaddr_in));
}

Avec le select(), 100Ko sans 12,x Mo. (pour un paquet de 1000 bytes tout
compris)

Quelqu'un connaît-il un moyen d'introduire un délai suffisament précis?
gettimeofday peut-il m'aider?

Merci d'avance

A+

Ben
-- 

Benoit JOSEPH 
Manex SPRL: benoit.joseph@manex.be
Perso: joker@baby-linux.net
       benoit.joseph@teledisnet.be

Attachment: pgp01024.pgp
Description: PGP signature