WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Extensions du simulateur Omnet++ pour la validation de mécanismes de transmission multimédia dans les réseaux IEEE 802.11

( Télécharger le fichier original )
par Ahmed Ayadi
Ecole Nationale des Sciences de l'Informatique - Ingénieur informatique 2007
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

2. Diagramme de classes

Après avoir décrit l'architecture globale de notre projet, nous allons définir les diagrammes de classes suivant une modélisation UML.

2.1. L'interface réseau IEEE 802.11a de la librairie MF

# bitrate

#snirThreshold

# typeOfChannelForBer # d_free

# ad_free

# Ck[10]

# puncturing_period

# coderOutputBits

# FadingArrayIndex

# FadingArrayIndexInternal # codingRate

# error_masks

# CurrentGeneratedRandomNumberForMaskGeneration # minSnrForOutageProbInSlowFading

# isErrorMaskGenerated #isFadingChannelUsed # fadingNumberOfSamples # simulationBaudRate # normalizedDopplerFrequency

# averagePowerProfileDb # fadingChannelRicianFactor # typeOfChannelForBER # perCalculationMethod # phyReceiverNoiseLevel # FadingProcessCoeffs

+ initialize ( int)

+ finish ()

# handleLowerMsg (cMessage * msg) # handleUpperMsg (cMessage * msg) # handleSelfMsg (cMessage * msg) # handleLowerControl (cMessage * msg) # dB2fraction ( double)

# packetOk (double SNR, int length, double bitrate)

# bpskBER (double snirMin, double bitrate)

# QamBER (double snirMin, double bitrate, int m)

# Qfunction (double x)

# generate_error_masks (unsigned int nbits, double Pb, bool error_distribution_type, FILE * error_masks, double EER, double snr) # getSuccessRate (double snr, unsigned int nbits, FILE * error_masks, double rate)

# getSuccessRateFecBpsk (double snr, unsigned int nbits, double rate, double codingRate)

# getSuccessRateFecQam (double snr, unsigned int nbits, double rate, double codingRate, int m)

# getSuccessRateNoFecBpsk (double snr, unsigned int nbits, double rate, double codingRate)

# getSuccessRateNoFecQam ()

# increaseFadingArrayIndex ()

# getFadingFactor ()

# getBitNumbersPerModulationSymbol ( int) # erfc (double x)

: double

: double

: int

: uint32 _t

: uint32 _t

: uint32 _t

: uint32 _t

: uint32 _t

: int : int : double

: FILE *

: double

: double

: int : int : int : double

: double

: int : int : int : int : int : itpp::cmat

Decider80211a

+ initilize ()

+ handleMessage () # handleSelfMsg () # handleUpperMsg () # handleLowerMsg () # handleLowerControl () # sendDown ()

# sendUp ()

# sendControlUp ()

: void

: void

: void

: void

: void

: void

: double : bool

: double : double : double : void

: double : double : double : double : double : void

: double : uint32 _t : double

1..1

: void : void : void : void : void : int : void : void : void

1..1 1..1

# myMacAddr # timeout

# nav

# contention

# endSifs

# state

# catRadioState # medium

# defaultBitrate # bitrate

# catBitrate #autoBitrate

# rateIndex #snrThresholds # radio

# queueLength # nextIsBroadcast # fromUpperLayer # longRetryCounter # shortRetryCounter # successCounter # failedCounter # recovery

# timer

# successThreshold

# maxSuccessThreshold # timerTimeout

# minSuccessThreshold # minTimerTimeout

# successCoeff # timerCoeff

# handleSelfMsg (cMessage* msg) # handleUpperMsg (cMessage* msg) # handleLowerMsg (cMessage* msg) # handleLowerControl (cMessage* msg) # setBitrate (double b_rate)

# getBitrate ()

# needNormalFallback ()

# needRecoveryFallback ()

# reportFailure ()

# reportRecoveryFailure ()

# setSuccessThreshold (int success_threshold) # setTimerTimeout (int timer_timeout)

# getSuccessThreshold ()

# getTimerTimeout ()

# getMinSuccessThreshold ()

# getMinTimerTimeout ()

# reportDataFailed ()

# reportDataOk ()

# getMinBitrate ()

# getMaxBitrate ()

# getTimeout ()

# retrieveBitrate (int destAddress)

# packetDuration (double bits, double br) # decapsMsg (Mac80211Pkt * frame)

# encapsMsg (cMessage * netw) # sendBROADCASTframe ()

# sendRTSframe ()

# sendCTSframe ( Mac80211Pkt*) # sendACKframe ( Mac80211Pkt*) # sendDATAframe ( Mac80211Pkt*)

1..1

+ initialize ()

+ handleMessage () # encapMessage () # calcDuration ()

Mac80211a

: int

: cMessage*

: cMessage*

: cMessage*

: cMessage*

: State

: int

: MediumIndication::States : double

: int : int : int : int : std::vector<double

: SingleChannelRadio*

: unsigned

: bool

: MacPktList

: unsigned

: unsigned

: int : int : bool : int : int : int : int : int : int : double

: double

: void : void

: AirFrame80211 * : double

: void : void : void : void : void : double

: bool : bool : void : void : void : void : int

: int

: int

: int

: void : void : int

: int

: int

: double

: double

: cMessage*

: Mac80211Pkt* : void

: void : void : void : void

1..1

1..1

SnrEvala

BasicSnrEval

# snrInfo : SnrStruct

# recvBuff : std::map<AirFrame*,double>

# radioState : RadioState::States

# catRadioState : int

# rssi : RSSI

# catRSSI : int

# publishRSSIAlways : bool

# indication : MediumIndication

# catIndication : int

# nicModuleId : int

# noiseLevel : double

# recvTime : double

# waveLength : double

# thermalNoise : double

# pathLossAlphaHalf : double

# speedOfLight : double

# useTorus : bool

# playground : Coord

# bitrate : double

# catBitrate : int

# rGain : double

# propagationModelType : int

# ht : double

# hr : double

# systemLoss : double

# pathLossExponent : double

# shadowingVariance : double

# shadowing : double

# shadowingRandomNumberVectorIndex : int

# shadowingRandomNumberVector : itpp::vec

+ initialize () : int

+ receiveBBItem () : int

# handleLowerMsgStart () : int

# handleLowerMsgEnd () : int

#calcRcvdPower () : int

# calcPathLoss () : int

# addNewSnr () : int

# handlePublish () : int

# modifySnrList () : int

# calcDuration (cMessage* m) : double #updateSensitivity () : int

 

SnrEval80211a

 
 
 
 
 
 
 
 
 

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Le don sans la technique n'est qu'une maladie"