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

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



J'ai trouvé. La solution est gettimeofday(). Je fais le calcul du temps
écoulé entre d'eux paquet à la main. Ca marche pas trop mal, mais ce
n'est pas précis à 100% je dirais qu'il y a des fluctuations de l'ordre
de 5 à 20% selon la taille des paquets et le volume de trafic par
seconde. 

Voici le code au cas où cela intéresserait quelqu'un.

	gettimeofday(&old, &tz);
	while (1) {
		gettimeofday(&new, &tz);
		if (time < (new.tv_sec * 1000000 + new.tv_usec) -
			   (old.tv_sec * 1000000 + old.tv_usec)) {
			sendto(sock, 
			       data, 
			       packet_size - HEADER, 
			       0, 
			       (struct sockaddr *) &sockaddr, 
			       sizeof(struct sockaddr_in));
			gettimeofday(&old, &tz);
		}
	}

Voilà voilà. Une bonne chose de faite :-)
Bien sûr, si quelqu'un a une meilleure idée, qu'il n'hésite pas


A+

Benoit


On Sat, Mar 16, 2002 at 07:15:15PM, Benoit Joseph wrote:
> 
> Même problème qu'avec les autres méthodes. Il y a tout même bien moyen
> d'envoyer des données à un débit constant.
> 
> 
> 
> On Sat, Mar 16, 2002 at 06:56:10PM, Benjamin Michotte wrote:
> > On Sat, Mar 16, 2002 at 06:26:22PM, Benjamin Michotte wrote:
> > >
> > --- mail Sat Mar 16 18:26:22
> > +++ mail Sat Mar 16 18:56:27
> > @@ -16,7 +16,7 @@
> >  -  ts.tv_sec = del;
> >  + // copier-coller rules...
> >  +  ts.tv_sec = 1;
> > 
> > >
> > ---end quoted text---
> > 
> > binny
> > 
> > -- 
> > 
> > ... et si nous sommes tous embarqués sur la même planète, nous ne
> > sommes décidement pas du même monde.
> >     -- Bertrand Cantat
> > 
> > °v°  Benjamin Michotte        <binny@baby-linux.net>
> > _o_  web      : http://www.baby-linux.net
> 
> 
> ---end quoted text---
> 
> -- 
> 
> Benoit JOSEPH 
> Manex SPRL: benoit.joseph@manex.be
> Perso: joker@baby-linux.net
>        benoit.joseph@teledisnet.be


---end quoted text---

-- 

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

Attachment: pgp01020.pgp
Description: PGP signature