begin process at 2012 05 30 09:47:25
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Linux

 > 

Réseau & Internet

 > 

simuler clustering ad hoc ds ns2


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

simuler clustering ad hoc ds ns2

vendredi 29 avril 2011 à 13:20:10 | simuler clustering ad hoc ds ns2

hakimainfo

Bonjour,

mon projet de fin d’étude c'est de comparer deux algorithmes de clustérisation dans un réseau ad hoc avec ns2 et je suis débutante en Ns2, comment fait la simulation ? je ne sais pas comment on peut introduire un algorithme dans ns2 pour le simuler . aidez moi SVP

voila un algorithme (à simuler)de formation des clusters dans ad hoc ,
en deux phases:
1/Pseudo-code de la phase set-up

1. Assigner des valeurs aux coefficients ?, ? et ?
2. Initialiser T imeCluster /* Temps nécessaire à l'exécution de la phase set-up */
3. pour tout noeud u ? G faire /* Initialiser le vecteur d'état de tous les noeuds */
- Attribuer un identifiant N odeid au noeud u
- N odeCH = 0;
- Size = 0;
- Hop = 0;
fin pour
4. /* Tout noeud u ? G calcule son poids en fonction de sa 2-densité, son énergie restante, et sa
mobilité */
pour tout noeud u ? G faire
W eight(u) = ? ? 2-densité(u) + ? ? Res-Energie(u) + ? ? Mobilité(u)
5. Répéter
- Tout noeud u diffuse un message "Hello" dans son 2- voisinage ;
/* Choisir le noeud ayant le plus grand poids dans son 2-voisinage comme cluster-head */
- Choisir v ? N12 [u] : W eight(v) = M ax(W eight(w) | w ? N12 [u]) ;
- Update_CH_State(CH)
/* Mettre à jour le vecteur d'état du cluster-head élu (CH) */
CH ? N odeCH = CH ? N odeid ;
CH ? Size = 1 ;
CH ? Hop = 0 ;
- Envoi du message ADV_CH par CH à ses 2-voisins (N12 [CH])
- si (un noeud u ? N12 [CH] reçoit le message ADV_CH) && (u ? N odeCH ! = 0)
alors
* u envoie un message REQ_JOIN à CH
/* u demande d'affilier à CH */
/* CH vérifie si la taille du cluster n'atteint pas T hreshU pper */
* si (CH ? Size < T hreshU pper )
alors
? CH envoie le message ACCEPT_CH au noeud u ;
? CH exécute la procédure d'adhésion
CH ? Size = CH ? Size + 1 ;
? u exécute la procédure d'adhésion
u ? N odeCH = CH ? N odeCH
? si (u ? N1 [CH])
alors u ? Hop = 1
sinon u ? Hop = 2
fsi
fsi
fsi
6. Update(T ableCluster ) ;
7. Jusqu'à ce que Expired(T imeCluster ) ;

et la deuxième étape

2/Pseudo-code de la phase de ré-affiliation

/* Tous les cluster-heads dont la taille du cluster est inférieure au seuil T hreshU pper envoient un
message de demande de ré-affiliation aux noeuds appartenant à des clusters dont la taille ne dépasse pas
T hreshLower */

1. si (Size(Clusternum_cl , CH) < T hreshU pper )
alors
- CH envoie un message (RE ? AF F _CH) à ses 2-voisins,
- si (un noeud u ? N1 [CH] reçoit le message) &&
(u appartient à un cluster dont la taille est inférieure à T hreshLower )
alors
* u envoie un message (REQ_RE ? AF F ) au CH le plus proche
4.3 Principe de CSOS
87
* si (Size(Clusternum_cl , CH) < T hreshU pper )
alors
? CH envoie un message (ACCEP T _RE ? AF F ) à u
? CH met à jour son vecteur d'état
CH ? Size = CH ? Size + 1
? u met à jour son vecteur d'état
u ? N odeCH = CH ? N odeCH
? si (u ? N1 [CH])
alors u ? Hop = 1
sinon u ? Hop = 2
fsi
fsi
fsi
fsi
2. Update(T ableCluster )

merci d'avance


Cette discussion est classée dans : message, size, noeud, odech, fsi


Répondre à ce message

Sujets en rapport avec ce message

problème de template sous linux (qui par contre compile et tourne sous windows !!!!) [ par orus35 ] Bonjour, Peut-être que vous allez pouvoir m'éviter de me prendre la tête pdt 107 ans, mon code compile et tourne bien sous 2009. par contre sous linux afficheur de leds [ par falco94 ] Bonjours, j'ai un problème. Je dois envoyé une application cpp (la coupilation est un message sur un afficheur de leds), et je dois envoyer se message send message copier [ par unionx ] bonjourj'ai une variable integer et j'aimerai copier cette variable via mon programme puis coller cette variable dans un document world ou un fichier API windows [ par rivaldinho ] Salut, j'utilise ce bout de code pour récupérer en temps réel le texte écrit sur notepad: HWND hWnd, hWnd2; // Handles de fenêtre     DWORD size, size Erreur: Invalid allocation size [ par chalmia2s ] Bonjour, je suis débutante en programmation, j'ai fait un programme sous Visual c++, pour avoir une dll. quand j'appelle la fonction dll , j'obtient l PB de tri [ par dodo1309 ] Bonjour,Voila je suis entrain de faire un programme qui doit permettre à l'utilisateur d'encoder les valeurs de son choix pour ensuite l'ajouter à la tri par date puis par heure [ par dodo1309 ] Hello ,Je posséde ce fichier de donée : Le 12 minutes                           16/02/200900:0000:25La une    Actualite           Une brique dans le v b _arbres [ par angebrune8 ] Bonjour j'essaie d'implementer des b_arbres. Le soucis c'est que je dois lire et ecrire sur un dique en quoi celà consiste il exactement? De plus si q affichage 1 arbre n-aire [ par nr2h ] salut  voila mon pb: j'ai 1arbre n-aire par exp:********* A * *****B    C    D *****E je veus l'afficher A ***B ***C ***D *****E c-a-d par niveau voil recopie avec memmove memcpy [ par angebrune8 ] bonjour, un soucis avec memmove voici ma structure et ce que j'essaie de copier. je programme en c. struct noeud{   int nb_cles ;   bo


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,484 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales