Rochester Institute of Technology
RIT Scholar Works
Theses
Thesis/Dissertation Collections
6-1-1992
A Buffer insertion priority mechanism based on the
IEEE 802.4 priority scheme
Nicholas W. Oddo
Follow this and additional works at:
http://scholarworks.rit.edu/theses
This Thesis is brought to you for free and open access by the Thesis/Dissertation Collections at RIT Scholar Works. It has been accepted for inclusion in Theses by an authorized administrator of RIT Scholar Works. For more information, please [email protected].
Recommended Citation
:{
....
:"..'
...
A Buffer Insertion Priority Mechanism Based
on the IEEE
802.4
Priority Scheme
by
Nicholas W. Oddo
A Thesis Submitted in
Partial Fulfillment of the
Requirements for the Degree of
MASTER OF SCIENCE
in Computer Engineering
Approved by:
Roy S. Czemlkowskl. Ph.D. (Committee Chairman and Department Head) Department of Computer Engineering
JamesE.Hellotls. Ph.D. (Committee Member) Department of Computer Science
Tony Chang. Ph.D. (Committee Member) Department of Computer Engineering
DEPARTMENT OF COMPUTER ENGINEERING COLLEGE OF ENGINEERING
ROCHESTER INSTITUTE OF TECHNOLOGY ROCHESTER. NEW YORK
JUNE 1992
A Buffer Insertion Priority Mechanism Based on the IEEE 802.4 Priority Scheme
I, Nicholas W. Oddo
,
hereby grant permission to the Wallace
Me-morial Library of RIT to reproduce my thesis in whole or in part. Any reproduction will
not
be
for commercial use or profit.
Table
of
Contents
1. Introduction 2
1.1. Goals 2
2. Analysisofthe IEEE 802.4
Priority
Mechanism 52.1. Background 5
2.2. Introduction 6
2.3. Functional Description 7
2.3.1.
Priority
Levels 82.3.2.AccessClasses 9
2.3.3. Timers 11
2.3.3.1. High
Priority
Token Hold Timer 112.3.3.2. Target Rotation Timers 12
2.4.
Meeting
Real-Time Requirements 142.4. 1. Alarm Messages 14
2.4.2. Control DataandNetwork Maintenance 15
2.4.3. Routine Data 16
2.4.4. File Transfer 17
2.5.
Analyzing
UtilizationandThroughput 182.5.1. General Terms 18
2.5.2. Assumptions 21
2.5.3.Lower
Priority
Levels 222.5.3.1.Peak Utilizations 22
2.5.3.2. Actual Utilizations 23
2.5.4. High
Priority
262.5.4.1.
Deriving
thePeak Level 6 Utilization 262.5.4.2.
Deriving
theGeneral Level6 Utilization 272.5.4.2.1. Case 1:
TR(0)
<TR(2)
<TR(4)
<CS
282.5.4.2.1.1. Case la: 29
2.5.4.2.1.2. Case lb: 30
2.5.4.2.2. Case 2:
TR(0)
<TR(2)
<C<TR(4)
302.5.4.2.2.1. Case 2a: 31
2.5.4.2.2.2. Case 2b: 32
2.5.4.2.2.3.
Case 2c: 342.5.4.2.2.4. Level6 UtilizationModelfor Case 2 34
2.5.4.2.3.
Case 3:TR(0)<C<TR(2)<TR(4)
362.5.4.2.3.1. Case
3a: 372.5.4.2.3.2. Case 3b: 37
2.5.4.2.3.3. Case 3c: 39
2.5.4.2.3.4. Case 3d: 40
2.5.4.2.3.5. Case 3e: 41
2.5.4.2.3.6.Level 6 Utilization Model forCase 3 41 2.5.4.2.4. Case 4:
Cs
<TR(0)
<TR(2)
<TR(4)
432.5.4.2.4.1. Case4a: 44
2.5.4.2.4.2. Case4b: 45
2.5.4.2.4.3. Case 4c: 45
2.5.4.2.4.4. Case 4d: 46
2.5.4.2.4.5. Case4e: 47
2.5.4.2.4.6. Case4f: 48
2.5.4.2.4.7. Case 4g: 49
2.5.4.2.4.8. Level 6 Utilization Model forCase4 49
2.6.
Analyzing
MediumAccess Delays 512.6. 1. WorstCase Level 6 Access
Delay
522.6.2. Worst Case Level 4 Access
Delay
532.6.3.WorstCase Access
Delay
for OtherPriority
Levels 563. Proposed Buffer Insertion
Priority
Mechanism 573.1. Introduction 57
3.2. Background 57
3.2.1.
Ring Priority
583.2.2. Station
Priority
583.2.3. Advantages 59
3.2.3.2. SmallOverhead forMediumAccess 60
3.2.4. Problems AssociatedwithReal-TimeApplications 60
3.2.4.1. Starvation 60
3.2.4.2. Insertion BufferOverflow 61
3.3.FunctionalDescription 61
3.3.1.
Priority
Levels 623.3.2.Access Classes 62
3.3.3.High
Priority
Transmissions 633.3.3.1. DedicatedInsertion Buffer 64
3.3.3.2.Expedited Propagation 65
3.3.3.3. Algorithm 65
3.3.4. Lower
Priority
Transmissions 673.3.4. 1. Partitioned Insertion Buffer 67
3.3.4.2. Starvation Avoidance 68
3.3.4.3. Algorithm 69
3.4.
Analyzing
Medium Access Delays 713.5.
Analyzing
Insertion Buffer Delays 733.6.
Analyzing
UtilizationandThroughput 743.6.1. High
Priority
Transmissions 753.6.2. Lower
Priority
Levels 774. Conclusion 81
5.
Glossary
86Abstract
Thefocusofthis thesisistoinvestigatea media accessprioritymechanismfora
buffer insertionnetwork sothatitis bettersuitedforuse inreal-time applications. This
is done
by
examininga popularprioritymechanismpresentintheIEEE 802.4tokenbusstandard, andFiberDistributedData Interface
(FDDI)
standard. Mathematicalmodelsforthroughputand
delay
are presentedfortheIEEE 802.4 prioritymechanism. Thesemodels arethenusedasabasis for
developing
theprioritymechanismforthebuffer insertionring. Models forthroughputand
delay
arealso presentedforthebuffer insertionpriorityscheme sothat the twomedia accesstechniquesmaybecompared.
1.
Introduction
Therearemanypopular media accesstechniquesfor distributedsystems.
Among
themost popular are
firstcome firstserved,
carrier sense multiple access
(CSMA),
token passing,
buffer
insertion,
and slottedrings.
Ofthese,onlyafew havebeen definedorimplementedwithaprioritymechanismin
mind. This istruefor manyreasons. Perhapsthemedia accessprotocoldoesnotlend
itselfeasilytopriority
transmissions,
orperhapstheapplicationrunningonthenetworkisnotverytimecriticalanddoesnotneedprioritization ofdatatransfers.
Withoutaprioritymechanism, themediaaccessprotocolhasnowayofgetting
high prioritytransmissions to theirdestinations ina
timely
manner. The framesmustwaitforaccessto themedia
following
the same constraints aseveryotherframeawaitingtransmission. Thismeansthatimportant data mayhavetowaitforaccessto themedia
becauselessimportantdata is
hogging
thebandwidth. Onewaytoavoidthisproblemisby
assigningalloutgoingframesa priority. Basedonthe definitionoftheprioritymechanism,thepriorityassignedtoaframewill
help
dictatewhenitgains accessto themedium. Lower priorityframesyieldto thetransmissionofhigherpriorityframes.
1.1. Goals
Thegoals ofthisthesisareto
studya well
designed,
documentedandacceptedprioritymechanism,and usethisknowledge in
developing
aprioritymechanismforabufferinsertionprotocol.
Theprioritymechanismthatwillbe studiedis definedintheIEEE 802.4tokenbusstan
dard. This prioritymechanismisalsoverysimilartothatusedintheFiber Distributed
DataInterface
(FDDI)
standard. Section2gives afunctional descriptionofthepriorityscheme. Itthengoes onto
develop
modelsforthroughputand media accessdelay.Thesemodelswillaid inbothunderstandingtheIEEE 802.4 prioritymechanisms,andin
developing
a similarprioritymechanismforthebuffer insertionprotocol.Thebuffer insertionprotocolischosen as a candidateforthedevelopmentof a
prioritymechanismbecauseofitsuniquenessas a mediaaccessprotocol,andits
inability
tomeetreal-time constraintsunder
heavy loading
conditions. Without anytypeof priority
mechanism,thebuffer insertionprotocoldisplaysasteady increase inmedia accessdelay
asthethroughputofthe systemincreases. Thisisnotsatisfactory forreal-timeapplicationsthatmustguarantee a maximum media access
delay
anddelivery
timeforacertainmessage class. Inaddition, thebuffer insertionprotocol allows forstarvationto
occur. Thiswill occur whena nodeisprohibitedfromaccessingthenetworkbecauseof
the
heavy
usagefromothernodes. Starvationisalsounsatisfactory inreal-timedistributed applications.
A well-designedprioritymechanismshould allowforgracefuldegradationof
thecommunications system. Thatisto say,whentheofferedloadto thenetwork ex
ceedsitsbandwidthcapabilities,moreimportantmessages(messagesofhigherpriority)
willbethefirstto reachtheirdestinations. Less important datawillbethefirstto suffer
dueto thehigh load. Ifthe loadwastocontinue
increasing,
theperformance ofthenetwork woulddegrade inagraceful way.
Ignoring
thenegative remarks aboutthebuffer insertionprotocol statedabove,itdoes havemany
intriguing
featuresthatmakeitanattractive choiceforreal-time systems. Thisis especiallytruewithrespectto tokenpassingprotocols. Theoverheadin
volvedintoken passing, token regeneration,andduplicatetoken
detection,
isnolongerneededinabuffer insertion ring.
Also,
thebufferinsertionalgorithm allows formultipletransmissions tobeoccurringsimultaneously. Thisiscalledspatialreuse,and allowsfor
throughputexceedingthecapacityofthemedia. Bothcharacteristicsamounttobetter
useofthemediaforalltypesoftransmissions. In otherwords,
looking
attotalnetworkthroughputisattractivetoreal-timeapplications,butthemediaaccessdelaysassociated
withthesehighthroughputsaretheproblem.
Section3gives afunctional descriptionoftheprioritymechanismproposed for
thebuffer insertionprotocol. Thisis followed
by
thedevelopmentof mathematical modelsforthroughputandaccessdelay. The finalsectiondiscussestheresults ofthebuffer
insertion prioritymechanism when comparedto themodelsfortheIEEE 802.4tokenbus
priorityscheme.
2.
Analysis
oftheIEEE 802.4Priority
Mechanism2.1. Background
Priority
mechanismsinloosely-coupled distributedsystemsplayasignificantrolein howa network will performunderhigh
loading
conditions.Any
mediaaccessprotocol
(MAC),
even onethatdoesn't incorporateaprioritymechanism, canperformsatisfactorily
withintheoperational constraintsofthemedia. Whatisconsideredhere ishowanetwork willperform whentheofferedtransmissionload beginstoexceedthe available
bandwidth fora giventime. Performanceover a network whose media access protocol
doesnotincorporateprioritytransmissionswillsuffer. This is becausetheprotocolhas
nowayof
discerning
important datafromunimportantdata. Data istransmittedinafirst-come-first-served fashion. Ifthenetworkis
being
usedinareal-time applicationsuchasprocesscontrol,theconsequences couldbe disastrous. Amedia accesspriority
mechanism understands which ofthedata queuedfortransmissionisthemosttime criti
cal,andwhichisnot. More importantdatawillbetransmittedsoonerthanlessimportant
data.
The IEEE 802.4standardincorporatesamediaaccesscontrol
(MAC)
protocolthatusesaprioritytransmissionmechanism. TheMAC layer isa sub-layerwithinthe
boundsoftheOSIarchitecture'sdatalink layer. A bus
topology
isusuallyassociatedwiththeIEEE 802.4prioritymechanism.
This, however,
does nothavetobethecase.FDDIalso uses aprioritymechanismthatisverysimilarto theIEEE 802.4protocol, and
FDDIisatokenpassing
ring
network. Itis safetosaythat theprioritymechanismbeing
detailed inthis section couldbeusedin anytokenpassingnetwork. Itisnotdependent
onthe underlyingphysicaltopology. Althoughthetokenbus
topology
is discussedthroughout the
document,
itis importanttorememberthat theprotocolis justaseasilyimplemented ina
token-passing
ring
network.The IEEE 802.4tokenbusexpects stationstobeconfiguredalongalinear
bus,
buttreats thebusas alogical ring. Itisimportantto notethatthephysicalorderingof
thenodes onthebusdoesnot affecttheorder oftokenpassing. Since everystation con
nectedto thebus hearseverytransmission,the tokenisusuallyaddressedtoa specific
nodethatisthenextlower deviceaddress. Thestationwiththelowestdeviceaddress
obviouslyhastoaddressthetokento thestation withthehighestdevice address. The
specification ofthephysicallayerisnotimportant forourpurposes,butthebusis usually
madeup of75-ohm broadbandcoaxial cable. Transmissionrates of
1,
5,
and 10Mbits/secare possible.
2.2. Introduction
The IEEE 802.4tokenbusnetworkhasbecomeastandardinthe industrial auto
mationindustry. Thereason for itsacceptance liesinthreemain areas. Theseareas are
stability,
reliability,
and aprioritymechanism.
The IEEE 802.4 prioritymechanismallows anindustrial networktomeetrigidreal-time
requirements.
Also,
itallows additionalbandwidthtobeusedfortrafficassociated withapplicationsthatare nottime critical, orwhose real-time requirementsarenot as strin
gent. Thisisdone
by
allowingstationsto accessthemediumsynchronouslyandasynchronously. Forhighpriority transmissions,eachstationhasa guaranteedamountoftime
foreachtokenrotationinwhichit maytransmit. Thisisguaranteedbandwidthwhatever
the totalcommunicationload. Forlowerpriority
transmissions,
each stationmayormaynotreceive anopportunityto transmitforeach rotationofthetoken.
Gaining
accesstothemediumfor lower prioritytransmissionsisbasedupontheoverall communication
load.
The
following
sectionsdiscuss
theIEEE 802.4 prioritymechanism. Afunctionaldescriptionoftheprioritymechanismisgiven, followed
by
mathematicalmodelsthatanalyzetheeffectsthat theprioritymechanismhasonthroughputandmediaaccess
delay.
2.3. Functional Description
The IEEE 802.4 prioritymechanismis describedfromafunctionalstandpointin
thissection. Thedescription breaks downtheprioritymechanismintothree major
groups;
priority
levels,
accessclasses,
andtimers.
Eachofthese areasandtheirinterrelationships is discussed.
Acompletedescriptionoftheprioritymechanismispresentedbelow instructured
English. Thereaderisencouragedtoreferto this top-leveldescriptionwhilereading lat
erthesectionsexplainingtheusage ofthehighprioritytokenholdtime andtargetrota
tiontimers. The IEEE 802.4prioritymechanismisnowpresented.
1. waitfortoken
2. starthigh prioritytokenholdtimer
3. transmitlevel 6 datauntilhigh prioritytokenholdtimerexpires orthereis
no morelevel 6 datatobetransmitted.
4. stop high prioritytokenholdtimer
5. passthe token
internally
toaccess class46. calculatethelevel 4token
holding
timeby
storingtheremainingtime leftonthe level4targetrotationtimer
7. restartthelevel4targetrotationtimer
8. ifthelevel4token
holding
time isgreaterthan0thentransmitlevel 4 datauntilthelevel4token
holding
timeisreached orthere isno morelevel 4 datatobetransmitted
9. passthe token
internally
toaccess class210. calculatethelevel2token
holding
timeby
storingtheremainingtimeleftonthelevel2targetrotationtimer
1 1. restartthelevel2targetrotationtimer
12. ifthelevel2token
holding
time isgreaterthan0thentransmitlevel2datauntilthelevel 2token
holding
timeisreached orthereis no morelevel 2 datatobetransmitted
13. passthe token
internally
toaccess class014. calculatethe level 0token
holding
timeby
storingtheremainingtime leftonthelevel 0targetrotationtimer
15. restartthelevel 0targetrotationtimer
16. ifthelevel 0token
holding
timeis greaterthan0then transmitlevel0datauntilthelevel0token
holding
timeisreached orthereisno morelevel0datatobetransmitted
17. passthetokento thenext stationinthe
ring
18. repeat
2.3.1.
Priority
LevelsThe IEEE 802.4 prioritymechanismoffersfour priority levels atwhichdatamay
betransmitted. These priority levelsarenamed
0, 2, 4,
and6,
with 6being
thehighestpriority. A station connectedtoan802.4tokenbusmaybeconfiguredtouse anycombi
nation ofthesepriority
levels,
ornoprioritymechanismatall. Astationnotconfiguredtousetheprioritymechanismautomatically
defaults
totransmitting
its framesatprioritylevel 6. Whatevera station'sconfiguration,itcancoexist withotherstations onthebus
usingdifferentprioritylevelconfigurations. Forthepurposes ofthis
discussion,
itisassumedthat thestations are configuredtouseallavailableprioritylevels.
2.3.2. AccessClasses
Access classes aretheentities responsiblefor servicingeachpriority levelwithin
a single station. Oneaccessclass existsfor every priority level forwhichthe stationis
configured. Forexample,astationconfiguredtouseall fourprioritylevelswillhave
fouraccess classes.
They
arenamedaccessclass0,
2, 4,
and6,
afterthepriority levelsthat
they
service.Accessclassescanbethoughtof as virtualsubstations. Eachaccess classpresent
inastationhasitsown queueto storeoutgoing
frames,
receivesthetoken,transmitsframes,
andtransmits the token.However,
forastation configuredtouse allfourpriority
levels,
onlyaccess class6receivesthetokenfromphysicalmedium,andonlyaccessclass0transmitsthetokenontothephysical medium. Atall othertimes the tokenis be
ing
passedinternally
withinthe station. Figure 1 showsthisforabustopology.6 4 2 0 6 4 2 0 6 4 2 0
r -? ->
r
-? n r ? -.
A
?
?
1
? 1 ? T
L
-? - L -?
-i
Figure 1
-TokenrotationfortheIEEE 802.4 priorityschemeisaccomplishedbypass
ingthe token toeachaccess class(orvirtualsub-station)within anodebe foretransmittingitacrossthephysicalmediato thenextdevice inthelogical
In Figure
1,
thepathofthe tokenisshownby
thedotted lineswith arrows. Thelarge boxesrepresentphysicalstations onthebus. Eachbox is divided into foursmaller
boxestorepresentthevirtualsubstations oraccess classeswithineach station. Eachac
cessclassis labeledwithits priority
directly
above it. Notice howaccess class6,
thehighest priority accessclass,receivesthe tokenfirstwithin eachstation. Itthenpasses
thetoken
internally
toaccess class4. Accessclass4internally
passesthe token toaccessclass
2,
and so on. Whenthetokenisfinally
transmitted fromaccess class0,
itisphysicallysent onthemediato thenext stationinthering.
Whenan accessclassreceivesthetoken,andhasdatatotransmit,itneverpasses
the frame
internally
tothenextlower priorityaccess class. Eachaccess class withinastationtransmits data
directly
ontothephysicalmedium.Similarly,
each access classmaintainsits own queuesfor
holding
data pendingarrival ofthe token. Queuesarenotsharedamongaccess classes.
2.3.3. Timers
Oncethe tokenisreceived, anaccess classuses adedicatedtimerto trackhow
long
datatransmission,
atitsprioritylevel,
canlast.Depending
onthepriority levelassociated withtheaccessclass,theaccess class usesoneoftwo typesoftimers;
ahighprioritytokenhold timer,
or atargetrotationtimer.
Theamount oftime thatanaccess classisallowedto transmitis determined
depending
ontheprioritylevelassociatedwithit. Lower priorityaccessclasses usetargetrotation
timers to
determine
transmissionduration,
while access class6usesthehigh prioritytokenholdtimer.
2.3.3.1. High
Priority
Token Hold TimerWheneveralevel6access classreceivesthetoken,theamount ofdatathatwillbe
transmittedbeforethetokenispassedisdetermined
by
one oftwothings;1. theofferedloadatthatpriority
level,
2. ortheduration ofthehighprioritytokenholdtime.
Inotherwords, thehigh prioritytokenholdtimerplaces an upperboundontheamount
ofdatathatalevel 6access classmaytransmitpertokenrotation. Whenthe tokenar
rives,
thehigh prioritytokenholdtimerisstarted, anddatatransmissionbegins. Whenthe timer expires, thecurrenttransmissioniscompletedandthe token ispassed
internally
to thenextlower priorityaccessclass, ortothenext stationifno other access classesex
ist. Iftheaccess classruns out ofdatatotransmitbeforethehigh prioritytokenhold
timerexpires,the timerisstopped andthe tokenpassed onward. Ifthe timeneededto
transmittheframeonthefrontofthequeueisgreaterthanthehigh prioritytokenhold
time,onlyoneframewillbetransmittedpertokenrotation.
Thehigh prioritytokenholdtimeisa configurable parameterintheIEEE 802.4
standard. It maybeconfigured
differently
for everystationinthenetworkusingaccessclass
6,
but usuallyall stationsusingaccess class6 are configuredforthesameduration.Thismeansthateverynode onthecontrol networkwillhavea reservedbandwidth in
which it maytransmitlevel6 frames.
Having
a reservedbandwidthmeansthatwhateverthecommunications
load,
everynode cantransmitlevel 6framesuponthearrival ofthetoken. Thiswillbe guaranteed. Theconfigurationofthehighprioritytokenhold timer,
forreal-timenetworks,isdiscussedinsection2.4.
2.3.3.2. Target Rotation Timers
Theamountoftimethe lower priorityaccessclasses are allottedfor datatrans
missionarealso governed
by
timers. Thetargetrotationtime isthemaximumtokenrotationtime thatcan occurinorderfordatatransmissionto takeplacefrom an access
class.Withinastation,these timersareusedinall access classes exceptaccess class
6,
which usesthehighprioritytokenholdtimertodeterminetransmissionduration. When
atokenarrives atalowerpriorityaccessclass, theamountoftimeleftbeforethe target
rotationtimerexpiresisnoted. Thistimeiscalledthe token
holding
time. Afterthe token
holding
timeis saved, thetargetrotationtimerisresetand restarted. Ifthetokenholding
timewas notedasgreaterthan0,
the access classisallowedtotransmitdata forthe durationofthetoken
holding
time. Ifthetokenholding
timeexpiresinthemiddle ofadata
transmission,
thenthattransmissioniscompleted. Iftheaccess classdoesnothaveanymore datatotransmit,but itstoken
holding
timehasnot yetexpired,the tokenispassed early. Ifthe access class'stoken
holding
timewas0,
thenitstargetrotationtimerexpired
before
thereturn ofthetoken,
and nodatatransmissionisallowedfromthataccess classforthat tokenrotation.
Thetargetrotationtimesforprioritylevels
0,
2,
and4,
are configurable parametersintheIEEE 802.4 standard.
They
may beconfigureddifferently
for everystation onthe token
bus,
but usuallyall stationsusinga particularaccess class are configuredforthe sameduration.
Also,
thehigherpriorityaccess classes arenormallyconfiguredwithlargertargetrotationtimes. Thismeansthat
they
haveahigher probabilityoftransmitting
pertokenrotation.Itis importantto notethat the targetrotationtimefora particularaccess classde
terminesthemaximum amount ofbandwidthavailabletoallnodes
transmitting
thatlevelframepertokenrotation. Theactualbandwidthavailableforany prioritylevel is depen
dentonthenumberof otherpriority framesthataretransmitted.
Tounderstandwhythisisso,let's firstassumethatnetworktraffic ismadeupof
asinglepriority levelotherthanlevel 6. Thismeansthatthetargetrotationtimealone
determinesthe totalbandwidthavailableforthispriority levelframepertokenrotation.
Ifa singlenodetransmitsforitsmaximumtoken
holding
time,thenno other nodes cantransmitforthattokenrotation.
Every
other nodeonthenetworkwillreceivethetokenafteritstargetrotationtimerhasexpired.
Now,
let'sadd networktrafficcomprising ofdatathatisofhigherpriority,
including
level 6frames. Theavailablebandwidthofourpriority level may
drop
to0ifenoughhigher priority levelframesaretransmitted. Iftheprioritylevelinquestionis level
2,
thenprioritylevel6traffic,prioritylevel4traffic,ora combinationofthe twomayusetheavailablepriority level 2bandwidth. If priority
level4transmissionsareusingtheentirelevel4targetrotationtime,thennobandwidth
willbe left for level2
transmission,
whateverthelevel 6traffic. Thisisassuming, ofcourse,thatthetargetrotationtimefor level4is largerthan thatfor level 2.
Similarly,
level 6trafficmayuse available level2bandwidth if manynodeshave level 6 framesto
transmit.
2.4.
Meeting
Real-Time RequirementsTheprioritymechanisminherent intheIEEE 802.4standardmaybeconfigured
sothatitworksefficiently for many different networkingapplications. Themain con
cernofthissectionis todetail howthehigh prioritytokenholdtimeandthe targetrota
tiontimes maybeconfiguredto meetreal-time requirementsacrossthecontrolnetwork.
Theparticularareaofreal-timecommunicationdiscussed inthissectionisprocess con
trol. The networkdataassociated with process controlisbroken downinto categories.
TheconfigurationoftheIEEE802.4prioritytimersis discussed foreachcategory.
2.4.1. Alarm Messages
Alarmmessages areusuallyassociated withmalfunctionsintheprocess control
equipment. Messagessuchasthesearegeneratedfromasingleboardcomputerthat
comprisesasingle station onthecontrol network. Thereareusuallyno external storage
or
display
peripherals associatedwith it. Inorderforthealarm messagetoreachtheoperator, themessagemustbetransmittedontothe controlnetwork. Thealarm messageis
destined foranodeorgroupof nodesthatwill respond
immediately
to themalfunction.Partofthecontrol network willbeplacedinafail-safecondition,andplantoperators
willbe informedthroughouttheplant on
display
devices. Ifalarm messagesarelost,
ortake a
long
time toreachtheirdestinations,
adangeroussituationmayresult.Sincealarm messages are soimportantintheprocesscontrolenvironment,
they
shouldbetransmittedaspriority level 6 frames. Thismeansthateverynode onthecon
trolnetworkwillhaveareservedbandwidth inwhichitmaytransmitalarmmessages.
The durationofthe transmissionis determined
by
thehigh prioritytokenholdtime. Everynode cantransmitalarmmessagesuponthe arrivalofthetoken,whatevertheload on
thecommunication network.
2.4.2. Control DataandNetwork Maintenance
Afteralarmmessages, data
directly
relatedto theprocessbeing
controlledisthenextmostimportant groupof messages onthe controlnetwork. Thisdatamaybetrans
mittedsynchronouslyorasynchronouslybetweennodesonthe systemtomaintain con
troloftheprocess. Ofequalimportanceis network maintenance. Networkmaintenance
messages consist ofmessagesthatallow nodesthroughoutthenetworktotrackthe acces
sibilityof variousdestinations. If important datamustreach a particular
destination,
butthe destination is downorforanother reasonis
inaccessible,
thenthe source ofthe transmission must actappropriately.
Typically,
thismeans sendingan alarmmessage. Network maintenance messages alsohandletheaddition anddeletionof nodesto thelogical
ring
dynamically. Thenetworkdoesnothavetoberebootedeverytimeanode isaddedto the logical
ring,
anddoesnot crasheverytimeanode isremoved. Withoutnetworkmanagement messages
being
handled
efficiently,the control networkmayfail.Transmissions containing data importantforthecontrol oftheprocess should also
be highpriority.
Applications
runninginvarious stationsinthenetworkmaybeusingcontrol variablesforvarious purposes. Someofthese control variablesmaybecollected
outsidethestation
doing
thecalculations andthereforemustbetransmitted acrossthecontrol network. Thecontrol variablesmaybeupdatedsynchronouslyorasynchronous
ly. In anycase, thisdata is very important in
keeping
theprocessunder control and mustbe delivered ina
timely
fashion.Priority
level 4 isusedformessagesrelatingtocontroldataandnetwork management. Besidesthealarm messages
being
transmittedatlevel6,
thecontrol and networkmanagementtransmissionswillbethehighest prioritytransmissionsonthecontrolnet
work. This makessense,sincethesemessages arethebackboneofthecontrolprocess.
Sincethe number ofalarmmessages
being
transmittedisexpectedtobeverysmall(systemmalfunctions shouldbe
infrequent),
controldataandnetwork maintenancewillusuallybethehighest priority datapresent onthe control network.
2.4.3. Routine Data
Networktraffic categorizedasroutine encompassestransmissionsthatareimpor
tanttothecontrolprocess,butnotastimecriticalascontroldataor network management
data. Anexample ofthiswouldbenetworktraffic associated withconsoledisplays.
Op
eratorsmayattemptto
display
various piecesofdataon adisplay
device.
Doing
so usuallymeanscollectingdatafromother stationsinthecontrolnetworkthatare responsible
for maintainingthedisplayedvariables.
Therefore,
thisdatamustbesent acrossthecontrolnetworkto stations with
display
devices.Furthermore,
thedisplay
mustbeupdatedas valuesinthecontrol network change. Thismeansthata periodicflowofdatato the
station
housing
thedisplay
must occur. Inotherwords, the dataonthedisplay
willbeupdated atsome predetermined periodic rate.
Anotherexample of an applicationthatwouldrelyontransmissionsofthisprior
ity
maybeahistorical device. Thiswouldbea station onthecontrol networkresponsible forcollecting dataonvarious control variablesthroughoutthenetwork. Anoperator
could examinethetrendsinthe
data,
athisconvenience,andfindpossiblefaultsorimprovementsthatcouldbemadeto thecontrol process. Thisinformation isnot criticalto
maintainingthe process,butmust stillbe deliveredcloseto thesamplingrate ofthehis
toricaldevicetomaintainvalidityofanystatistical analysisthatmay be done.
Priority
level 2 isusedformessages relatedtoroutinedata. Thisdataisnot astimecritical aslevel 6and4 transmissions, butshould stillbegivenpriorityovertheop
erations described inthenextsection.
2.4.4. File Transfer
The lowest prioritytraffic onthecontrol networkis associatedwithfiletransfer.
Filetransfersoccurwhen a nodeonthecontrol networkis booted.
Many
nodesdonotcontain anyexternal storagedevicestoloadtheirsoftwareintomemory.
Instead,
they
areinstalledwithboot PROMsthatallowfordownloadacrossthecontrol networkfrom
a servernodecontainingallthesoftware. Thistypeoftransferisassociated withlarge
framesoverthetimeittakestocompletethedownload. Atransfersuch asthisat ahigh
priority levelcould endangerthecontrolprocess,becausecontroldatamaynotbetrans
mittedbeforetheirhard
deadlines.
Priority
level 0isusedformessages relatedto filetransfer. Theamount oftime ittakes todownloada node overthe control networkisnot asimportantasmaintainingthe
process
being
controlled.2.5.
Analyzing
UtilizationandThroughputTheutilization andqueuing
delay
of networktraffic associated withaparticularprioritylevel is mathematicallymodelledinthissection. Thesemodelswill representthe
functional descriptionsof eachpriority level alreadygiven. Beforethiscanbe
done,
however,
some mathematicalfoundationmustbediscussed. Themodel presentedistakenfrom [5]. Thismodel willbeusedas abasetobuildothermodels, specificallythe
modelofthebuffer insertionprotocol presentedlater. Thiswill allowthe twoprotocols
tobeeasilycompared.
2.5.1. General Terms
Before explainingthedetailsofthe model,somebackground
terminology
mustbepresented.
Utilization, U,
isthe fractionoftimedata frames aretransmittedontothecontrol network.
Throughput,
S,
isthetotalnumberofdata bitsreceivedatadestinationpersecond expressed asafractionofthebandwidth. Thesetermscanbeusedtodiscuss
network widetrends concerningall stationsonthecontrolnetwork,aswell as specific
stations.
Ui
andS.aretheutilization andthroughputofpriorityleveli,
where isequalto0,
2, 4,
or6. The relationship between Sand U isgivenby
St
=atUiwhere
a,= Tt
{Ti
+Toh)
Ts
isthemeanframe lengthofprioritylevelitransmissions. Iftransmission timeismeasuredin bit times, ortheamount oftime ittakes totransmitone
bit,
then T.isalsothe transmission timeofpriorityleveliframes. Forexample,a 5byte framewilltake40
bittimes to transmit. Themeanlengthof aframe doesnotincludeany headerortrailer
information.
Toh
isthenumber of overheadbits inaframe. Thisvalue isthesameforallpriority levels. It isalso the timeittakesto transmittheoverhead portionofany
frame. Figure2portrays atypicalframe
format,
showingtheheader,
trailer,anddataportions oftheframe.
PREAMBLE SD FC DA SA DATA FCS ED
Figure2-Theframe formatoftheIEEE802.4MACsublayerismade
upof12 to 14bytesof overhead. Thisis dueto thepreamblewhichcanbe 1,2,or3by
tesdependingonthecapacityofthebus. Thedatafieldmaycontainany wherefrom 0to 1014 bytesofinformation.
The frameoverhead consists ofthe preamble,startdelimiter
(SD),
framecontrol(FC),
destinationaddress
(DA),
source address(SA),
frame check sequence(FCS),
and enddelimiter(ED). Thestart
delimiter,
framecontrol, andenddelimiterareonebyte fields.The destinationaddressandsource addressaretwobyte fields. Theframe checkse
quenceis athreebyte field. Thepreambleis
1, 2,
or3 bytesdepending
on whetherthecapacityofthebus is
1,
5or 10Mbits/secrespectively. Thespecificmeaningof eachfield isnotimportant forthisanalysis. Itis just importanttonotethatthesefieldsare
whatmakeupthevariable Toh. Thedata fieldinFigure2changessize
depending
onhowmuchinformationanapplicationhasto transmit. It maybe0to 1014bytes insize.
a,
isa factorrelatingthedataportion of aframeto theoverall sizeoftheframe,
including
theheaders
andtrailers. Fromthe earlierequation, thedifference betweenthroughputand utilizationisevident. Utilizationisa measureofthe totalframestrans
mitted. Throughput isameasure ofthedatareceived,excludingoverhead.
Anothermetricthatisusedtoevaluatethestate ofanetworkistheoffered load.
The offered
load,
G,
isthenumberofdata bitsgeneratedby
allactive stations persecondexpressed asafractionofthechannelbandwidth. More simply,it istheamount ofdata
generated,
by
allnodes, fortransmission,overagiventime. Ifthenetworkcanhandletheamountofdata
being
generatedfortransmission,then the offeredloadwillequaltheutilization. Ifthenetworkcannothandletheamountofdata
being
generatedfortransmission,thentheofferedloadwillbegreaterthantheutilization. Likeutilizationand
throughput,
Gt
representstheoffered load for priority levelitransmissions.G/
istheoffered loadofprioritylevel iwhenthe offeredload isconsideredtobeall ofthebits gen
eratedperunittime, notjustthedata bits. Inotherwords,
Ui
istoG/
asS. istoGr
T,
representsthemeantokenpassingtimebetweentwo stations onthelogicalring. Thistime includesthestation
delay,
thehead-enddelay,
the transmitterand receivermodem
delays,
the token transmissiontime,andthepropagationdelay.If,
forexample, thereareAfstations onthe ring, then
NT,
wouldbethe minimum amount oftimeneededforthe token tocirculatetheentire network. Thisminimumtokenrotationtime
occursifno station onthe
ring
transmitsanydata. Theminimumtokenrotationtime isrepresented
by
C0. C representsthemeantokenrotationtime. Thisisthemeantimebetweenthe tokenarrivingat a particular accessclass,andreturningtothesameclass.
Timevalues associatedwiththehigh prioritytokenholdtimeare represented
by
thesymbol Tt.
Similarly,
thetargetrotationtimesforaccess classes4, 2,
and0are represented
by
thevariablesTR,(4), 1^(2),
andTR(0)
respectively.Lastly,
TJi)
representstheamount oftimeaccess classiholdsthetokenafteritshigh prioritytokenholdtimeror '
targetrotationtimerhasexpired. Rememberthatas
long
as atransmissionbeginsbeforethe timerexpires, itwillalways complete. Forexample,thevalueof
TJ6)
rangesfrom 0tothetransmission timeofthemaximum sized
frame,
depending
on whenthehighpriority
tokenholdtimerexpires.2.5.2. Assumptions
Aswithanymathematicalmodel,certainsimplifyingassumptions needtobe
madeto
keep
themodeltractable. Thefollowing
are assumptionsmadeforthemodelbeing
presented.errorfreeoperation ofthenetwork
noadditions ordeletionsofnodesfromarunningsystem
alargenumberofnodes
the targetrotationtimesare greaterthan theminimumtokenrotationtime
thetargetrotationtimesarewellseparated anddecreasewith
decreasing
priority.
Theseassumptions willbecomeclearerasthemodelispresented. A largenum
berof nodesmustbeusedbecausethemodel
being
presentedis baseduponthemeankenrotationtimeofthenetwork. Forthemodeltobeprecise, theactualtokenrotation
timemustremainverycloseto themeantokenrotationtime. This isaccomplishedwhen
alargenumberofnodes existinthe system.
Targetrotationtimesmustbeseparated
by
many bittimessothattheutilizationandthroughputgiven
by
themodelisclearfora particularpriority level. Targetrotationtimes tooclose willresultinutilizationsthatare a combination oftwo ormorepriority
levels.
2.5.3. Lower
Priority
LevelsTheutilization models ofthelower priority levelsarediscussed first. Thesemod
els representtheutilizationsoflevel
4,
level2,
andlevel 0transmissions. These are presentedfirstsince
they
are moreintuitiveandthereforeeasiertounderstandthan themodelrepresentingtheutilization characteristicsofaccess class6.
Normally
the targetrotationtimersof each access classareconfigured sothatTR(0)
<TR(2)
< TR(4).This, however,
doesnothavetobethecase. Thetimersmay beconfiguredsothatanyaccess classisgreater orlessthananyother. The only criteriabe
ing
thatthey
arewell separated. Forthefollowing
discussion,
we willassumethatTR(0)
<
TR(2)
< TR(4).2.5.3.1. PeakUtilizations
Examining
eachpriority levelseparately, itiseasytoseethattheutilization ofaparticularpriority level increasesastheofferedloadofthatpriority levelincreases. This
will occur untilthemeantokenrotationtimeexceedsthe targetrotationtime forthatac
cess class.
Assuming,
foramoment,thatall networktraffic iscomprised of a singlepriority
level,
i,
andthat the tokenrotationtimeisequalto thetargetrotationtime forthatpriority
level,
then theutilizationisatitsmaximum andisgivenby
7XQ
-C,whereirepresentstheprioritylevelof
4, 2,
or0,
again whereCe
istheminimumtokenrotationtimer, andPrepresentsthepeak utilizationofpriority level i.
Any
wastedbandwidthisbecauseoftheoverheadinvolvedwithpassingthetoken,otherwise,all ofthe
bandwidthavailabletopriority leveliis
being
used.Continuing
the assumptionthatall networktraffic isbeing
madeupof a singlelowerpriority
level,
thefollowing
statementabout utilizationmaybemade. Theutilizationofaprioritylevelmustbethe minimum oftheofferedloadofthatpriority
level,
andthepeak utilization ofthatpriority level. Inotherwords,
U,=MIN(G,i,
Pt)
ifnetworktrafficismadeupofonlyaccessclassitransmissions.
2.5.3.2. Actual Utilizations
Theprevious section explained whathappenstotheutilizations ofthelower
priorityaccess classes whenallnetworktrafficbelongstoa singleprioritylevel. Howev
er, thenetworkusuallyhasamixtureofmany differentprioritylevels
being
transmittedina singletokenrotation. Networktrafficofahigher priority levelwill usebandwidth
thatwouldotherwisebeavailabletolower prioritytransmissions. Forexample,when
themeantokenrotationtimeincreasesabovethelevel 4targetrotationtime,the level4
utilizationbecomes dependentontheutilizationofthehigher priority level (level
6)
andthetokenrotationtime ofanidle bus.
Therefore,
whenthe tokenrotationtimereachesthe targetrotationtimeof a particularpriority
level,
theutilization forthatpriority levelwillhavereached alocalmaximumforthatparticularcombinationof offeredloads.
Only
when networktraffic consists oftheprioritylevelinquestioniswhentheutilizationoftheprioritylevelreachesitspeak
described
intheprevioussection.Therefore,
theutilizationwhenthemeantokenrotationtimeequalsthetargetrotationtimeof aparticular
prioritylevelwill alwaysbetheminimumoftheofferedloadofthatpriority leveland
thepeakutilization ofthatprioritylevelminusthecombinedutilizations ofthehigher
prioritylevels. Notethattheutilizationatany prioritylevelcan neverbecome lessthan
zero. Iftheutilizationfromahigherpriorityleveluses all ofa particularprioritylevel's
bandwidththen theutilizationforthatpriority level remains zero anddoesnot gonega
tive. Itshould alsobe notedherethatnetworktraffic ofalower priority levelcannot re
ducetheutilizationofahigher priority level. The lower priority levels havesmaller
targetrotationtimesandcannotdrivethemeantokenrotationtime abovethetargetrota
tiontime ofthepriority level inquestion.
Wheneverthemeantokenrotationtimeis smallerthan thetargetrotationtimefor
aparticularpriority
level,
there is bandwidthavailabletohandletheofferedloadofthatpriority level. More
formally,
U4
=\
G4,
C<TR(4)
MAX(0,
P4-U6),
C>TR{4)
and
U2
=G2,
C<TR(2)
MAX
(0,
P2-U6-Ua),
C>7>(2)
U0
=\
MAX(0,
P0-U6-Ua-U2),
C<TR(0)
C>TR.(0)
Calculating
these threeutilizations still requiresthatthemeantokenrotationtimebe known. At leastwhenrepresentedinthisform it does. Itmayalsobeexpressedin
the
following
notation.Ua
=MAX(MIN(G4,
Pa
-U6), 0)
U2
=MAX(MIN(G2,
Pa-U6-Ua), 0)
U0
=MAX(MIN(Go,
Pa~U6-Ua-U2),
0).Noticethateachofthelower priority levelutilizationsmaynowbecalculated if
theoffered
load,
targetrotationtime,minimumtokenrotationtime,andhigh priorityutilizationis known. Allofthese factors havealready
been
expressedexceptone, thelevel6utilization. Without
it,
none oftheotherutilizationsmaybecomputed. Thenextsection is dedicatedtoexplainingthemathematical modelassociatedwithcomputingthe
level6utilization.
2.5.4. High
Priority
Expressing
thelevel6utilizationmathematically ismoredifficultthanexpressingtheutilizations ofthelowerprioritylevels. This is mainlydueto the factthatthehigh
prioritytokenholdtimerisused
differently
than the targetrotationtimersofthelowerprioritylevels. Thetargetrotationtimers
indicated
themaximumamountoftimeaccessclasses of a particularprioritylevelmaytransmitina singletokenrotation. Thehigh
prioritytokenholdtimerdoesn'tgivethemaximumtokenrotationtimeifonly level 6
framesare
being
transmitted.Instead,
itgivestheamountoftimeeach station onthe networkmaytransmitlevel 6 data. Thissectionexplainshowthelevel 6utilizationcanbe
expressedintermsoftargetrotationtimes, offered
loads,
etc., sothatit may beusedtosolvetheequations oflower priorityutilization. Notethatitmakesno sensetomodelthe
level 6utilization intermsofthelevel
4, 2,
or0utilizationssincethe goalistousetheresultheretoresolvethe finalvariableinthoseequations.
2.5.4.1.
Deriving
the Peak Level 6 UtilizationAsstated above, thehighprioritytokenholdtimerdoesnotexpressthemaximum
tokenrotationtimefor
transmitting
onlylevel6dataasdoesthe targetrotationtimers.However,
themaximumtokenrotationtime, ifnetworktrafficisonlymadeup oflevel 6data,
canbeexpressedintermsofthehigh prioritytokenholdtimeasfollows;
CS
=(TS
+Tm(6)
+T,)N.whereNisthenumber ofstationsonthe network,
Ts
isthehighprioritytokenhold time,
TJ6)
isthemaximum overshootforaprioritylevel 6accessclass,andT,
isthe tokenpassingtimebetweentwoadjacentstations.
Toachieve maximumlevel6 utilization, each oftheNstations onthenetwork
musttransmitfortheirentirehighprioritytokenhold time,plus some additionaltrans
missiontimetofinishuponcethetimerexpires. Eachstation mustalso passthetoken to
the nextdevice.
Again,
assumingthatnetworktrafficismadeupofonly level 6 transmissions,thepeak utilization ofprioritylevel6 isgiven
by
P6
= ^S ^OSince itis knownthat
C0=NTP
theexpressionisequivalentto
[r,+rw(6);pv-P6=
c,
2.5.4.2.
Deriving
theGeneral Level 6 UtilizationDepending
onhowthevalue ofthemaximumlevel 6tokenrotationtime,Cs,
comparesto the targetrotationtimes,theactual level 6utilizationmay besimple orvery
difficulttomodel. Unlikethe targetrotationtimersofthelower priority
levels,
Cs
depends uponthenumber of stations inthenetwork. Italso dependsuponthemean sizeof
level 6transmissions,buttoamuchlesserextent. Itispossiblethatthemaximumlevel
6tokenrotationtime,
C
fallanywhereintherange oftargetrotationtimersdepending
onthevalue ofthe highprioritytokenholdtimeandthenumber ofstationsinthenet
work. For anytimer configuration,one ofthe
following
conditionswill exist1.
7^(0)
<7^2)
<7^4)
<C,
2.
TR(0)
<TR(2)
<CS<TR(4)
3.
TR(0)
<C,
<TR(2)
<TR(4)
4.
C,
<TR(0)
<TR(2)
< TR(4).Thelevel 6utilizationforeach ofthesecasesis different. Eachcaseistreatedseparately
inoneofthenextfoursections.
Before proceeding,some general conclusions aboutlevel 6utilization willbe
drawn,
as wasdone forthelower levelutilizationsinthepreceding sections. Thiswillbeused as abasisforthelevel 6utilization models.
Theequationforthelevel 6peak utilizationonlyapplieswhenthenetworktraffic
consists ofstrictly level 6transmissions. The factthat thelevel 6utilizationfallsbe
tweentheoffered loadandthepeak utilization underthese same constraintshasalsobeen
discussed. Thesemodels weredeveloped basedonthepremisethatthemeantokenrota
tion timedidnot exceedCs.
However,
ifnetworktraffic consists oftransmissionsfrommany priority
levels,
the meantokenrotationtimemayexceedCs
inthreeout ofthe fourcaseslistedabove.
Therefore,
the level6utilizationundermixednetworktraffic shouldnotbedependentuponthevalueof
Cs,
butrather onthe meantokenrotationtime. Itmaybestatedthat
Ingeneral,thelevel 6utilization willbetheminimum ofthelevel 6offeredloadandthe
maximumlevel 6transmission timedivided
by
meantokenrotationtime.2.5.4.2.1. Casel:
TR(0)
<TR(2)
<TR(4)
<Cs
Thecase when allofthetargetrotationtimesaresmallerthan
C,
isthe easiesttomodel. To
fully
analyzethelevel 6utilizationwhenCs
is greaterthanall ofthetargetrotationtimes themodel mustbebrokenintotwosub-cases. Thesesub-cases are
1.
C=CS,
themeantokenrotationtimeisequalto the level6tokenrotationtime.
2. C<
Cr,
themeantokenrotationtime is lessthan thelevel 6tokenrotationtime.
2.5.4.2.1.1. Case la:
C=CS
Whenthemeantokenrotation reaches
C,
,theutilizationof alllower priority levelswillbe drivento 0. Inotherwords,level 6trafficiscapableof
increasing
themeantokenrotationtimesothatnootherpriorityleveltransmission takesplace. Thismeans
thatthelowerprioritylevelscannothaveanaffectontheutilizationofpriority level
6,
andthatthemaximumlevel 6utilizationisactuallythepeaklevel 6utilization,P6.
Amoreformalproof ofthisderivation follows.
Theorem: ifC=
Cs
andTR(0)
<TR(2)
<TR(4)
<Cs
thenU6
=P6
Proof:
1. U6=MIN
(g'6,
[r'+7f(<5)]*
)
definitionofU6
2
p6
=It,+t(6)-]n
definitionof
P6
w
3.
P6
= =4. ifC=CsthenG'6>^Zf^
from(l)
5 u6=
[r'+6)>r
from (1
)
and(4)
6.
U6=P6
from(3)
and(5)
2.5.4.2.1.2. Case lb:
C<CS
Whenthemeantokenrotationtimeis lessthan thelevel 6tokenrotationtime,
bandwidth
still exists formorelevel6transmissionstotakeplaceinasingletokenrotation.
Therefore,
thelevel 6utilization mustbeequaltothe level 6offeredload.Theorem: ifC<
Cs
andTR(0)
<TR(2)
<TR(4)
<Cs
thenU6
=G'6
Proof:
1.
U6
=MIN[g'6,
[r'+rg(6)]")
definitionofU6
2. ifC<CsthenG'6<lT'+Tf)lN
3.
U6
=G'6
from(1)
and(2)
2.5.4.2.1.3. Level 6 Utilization Model for Case 1
Theentire level6utilization model whenthelevel 6maximumtokenrotation
timeisgreaterthanallofthetargetrotationtimes canbestated as
follows,
ifC=
Cs
then U6=MIN[g'6,
pAelse
U6
=G6.Thisreducesto
u6=min(g'6,
p6]
sincetheelseconditionisalreadyasubset ofthefirstcondition.
2.5.4.2.2. Case 2:
TR(0)
<TR(2)
<C,
<TR(4)
Thissectiondevelopsa modelfor level 6utilizationwhenthemaximumtoken
rotationtimefor level 6traffic is lessthanthetargetrotationtime ofprioritylevel 4.
Cs
isnolongerthemaximumtokenrotationtimeoftheentire network.
Instead,
thevalueofthelevel4targetrotationtimeisthemaximumtokenrotationtimepossible. This
meansthatbandwidthwill stillbeavailableforlevel4transmissionsafterlevel 6traffic
hasreacheditspeak. Additional level4trafficwilldecreasetheutilizationofpriority
level 6. Inotherwords,oncethemeantokenrotationtime grows greaterthan
Cs,
themaximumlevel 6utilizationbecomesdependentuponthetargetrotationtimeofpriority
level4. Astheadditionallevel4trafficpushesthemeantokenrotation greaterthan
Cs,
the level 6utilizationdecreases. Ifthemeantokenrotationtime is lessthan
Cs
thenlevel4traffic hasno effectonlevel 6utilization.
Toexaminethelevel 6utilization, themodelmustbe broken intothreecases.
1.
C=TR(4),
themeantokenrotationtimeis equaltothelevel 4targetrotationtime.
2.
CS<C<TR(4),
themeantokenrotationtimeislessthan the targetrotationtimeand greaterthanor equaltothe level 6tokenrotationtime.
3.
C<CS,
themeantokenrotationtime is lessthenthelevel 6tokenrotationtime.
2.5.4.2.2.1. Case 2a:
C=TR(4)
Whenthemeantokenrotationtime equalsthelevel 4targetrotationtime,the
meantokenrotationtimehasreacheditsmaximumvalue. The level 6utilization,under
these circumstances, is dependentuponthelevel 4targetrotationtime. Themaximum
level 6utilizationwill still occur when allTVstations onthecontrol networkaretransmit
ting
level6 data forthereentirehigh prioritytokenholdtimes,butthemeantokenrotation timewillbegreaterthanCs.
Mathematically
stated,[Ts
+Tm(6)]N H4"TR(4)
'where
H4
isthemaximumlevel 6utilization possiblewhenthemeantokenrotation isequalto thelevel 4targetrotationtime,andbothare greaterthan Cs.
Ifthemaximumamount oflevel 6 data hasnotbeen transmitted,thenthelevel 6
utilizationisequalto the offeredloadofpriority level 6. The level6utilizationcan now
bestated as
follows,
U6=MIn(g'6,
H^.A formalprooffollows.
Theorem:
ifC=
TR(4)
and7>(0)
<7>(2)
<Cs
<TR(4)
thenU6
=MIN[g'6,
Ha
J
Proof:
1.
C=r*(4)
given2.
U6
=MIN[g'6,
[rj+7g(6)]Af
)
definitionofU6
3
if(J,6
< [r,+7,(6)> ^^
= G/from
(2)
4. l/G/>lZ>^^nrj6=
lZl^
from(2)
5
f76
= [r^r-(6)^ substitute(1)
into(4)
6.
#4
=U6
7.
C/6
=MIN[g'6,
Ha
]
from(3), (5),
and(6)
2.5.4.2.2.2. Case 2b:
C,<C<r*(4)
Whenthemeantokenrotationtimefalls betweenthelevel 4targetrotationtime
andthelevel 6tokenrotationtime,the totalutilizationofthesystemcannolonger be
represented
by
PA
eventhoughitstill consists ofonly level 4 andlevel 6traffic. Themaximumlevel 6utilizationmust stillberepresentedintermsofthelevel4trafficload.
Inotherwords, the level 6utilizationisthe fractionofthepeakutilizationthatisnotdi
minished
by
level4traffic. Sincenetworktrafficismadeupofonly level 4andlevel6transmissions, 1
-G'A
representsthefractionofutilizationthatisnotmadeupoflevel 4traffic.
Therefore,
u6=min[g'6,p6(\-g'S]
representsthelevel6utilization forthis specificcircumstance.
A formalproof ofthelevel 6utilizationfollows.
Theorem:
if
CS<C<TR(4)
andTR(0)
<TR(2)
<CS<TR(4)
thenu6=min[g'6,
P6(\-G'S]
Proof
1. ifC<TR(4)thenUA=
G'4
2.
U6=MIn(g'6,
lT'+Tf)lN)
definitionofU6
3 < It1+tW fhen
Us
= G/from
(1)
4 >
Iz+T^
thenUe
=rr^r^
from(1)
5. U=
Ua
+U6
6 u=Gi
+
ILH^n
substitute
(1)
and(4)
into(5)
n jj z definitionofutilization
c
8.
definitionof minimum
tokenrotationtime j_
Qi
_
c^Tt+rm(6)lN
substitute
(6)
into(7)
9. C0=NT,
10.
l-G'4=lTs+Tm-)+T'lN substitute
(9)
into(8)
Nicholas W. Oddo
c
11.
CS
=(TS
+Tm(6)
+T,)N definitionofC,
12. 1
-G'4
=-|-substitute(1
1)
into(10)
13.
P&
='n
definitionofP.
614-
P6
=^3:
substitute(12)
into(13)
C(lG^) '
15.
P6(\-G'A)
=^-simplify
(14)
16.
P6(l-Gf4)
=U6
from(4), (9), (11),
and(14)
17.
U6=MIN\G'6,
P6(l-G4'))
from(3)
and(16)
2.5.4.2.2.3. Case2c:
C<CS
Wheneverthemeantokenrotationtimeis lessthanthe level6maximumtoken
rotationtime,theentirelevel6 offeredloadmaybe handled.
Therefore,
U6
=G'6.2.5.4.2.2.4. Level6 Utilization Model for Case 2
Theentirelevel6utilizationmodelwhenthe level6maximumtokenrotation
timeisthan thelevel 0andlevel 2targetrotationtimes,andlessthanthelevel 4target
rotationtime,cannowbe stated completely.
ifC=
TR(4)
thenU6
=MIN(g'6,
Ha]
else ifCs
<C<TR(4)
thenU6
=MIN(g'6,
P6(\~G'6)\
elseifC<
Cs
thenU6
=G'6
Thethreeconditionsfor level 6utilizationmayalsobeexpressedintermsof uti
lizations,
insteadoftokenrotationtimes. Thisis done foreach ofthe threeconditionalsandtherevisedmodelispresentedbelow.
Whenthemeantokenrotationtimeequalsthelevel4targetrotationtime,theof
fered loadoflevel 4mustbe greaterthan theutilization oflevel 4.
Also,
thetotalutilizationofthesystem mustbeequaltoP4. Thisis notto saythat theentire utilizationis
madeupoflevel4traffic. Infact it isnot,itismadeupoflevel 4andlevel6traffic
only. Theutilizations ofpriority level 0andlevel2are0becausethemeantokenrota
tion timeisgreaterthan thererespectivetargetrotationtimes.
Therefore,
sayingthatthelevel4offeredloadandthelevel6utilizationis greaterthan thelevel 4peak utilization
isequivalentto statingthat themeantokenrotationtimeequalsthatlevel 4targetrota
tiontime.
\g'4
+MIN[g'6,
H^PA~\=\Cs
=CandTR(0)
<TR(2)
<CS<TR(4)~]
Ifthelevel 4offeredloadandlevel 6utilizationarenotgreat enoughtoexceed
thepeakutilization, thenperhapsthelevel 4andlevel 6trafficaregreaterthanthelevel
6maximumtokenrotationtime. Thiswould meanthat thelevel 4 andlevel 6offered
loadsexceededthelevel 6peak utilization. More
formally
stated,\_G'4
+G'6
P<~]
=[CS<C< TR(4)
andTR(0)
<TR(2)
<CS<7^(4)].Lastly,
if bothoftheprevious conditions cannotbe satisfied,thenthemeantokenrotationtimemustbelessthanCs. Theentiremodelmaynowberestated as follows.
if\Gf4
+MIN[g'6,
H4
)
/%
]
thenu6=min[g'6,Ha^
else
if
\_G'4
+G'6>P6']
thenu6=min(g'6,p6(i-g4)}
else
U6
=G'6
2.5.4.2.3. Case3:
TR(0)
<Cs
<TR(2)
<TR(4)
This sectiondiscussesthecharacteristicsoflevel 6utilization when
Cs
islessthanthetargetrotationtimeforlevel
2,
and greaterthan the targetrotationtimeoflevel 0.Theargument usedintheprecedingsection,when
Cs
fellbetweenthetargetrotationtimesoflevel 4 andlevel 2 , canbeextendedforthissituation.
Intheprecedingsection, to
fully
analyzethelevel6utilization, theproblemhadtobe broken down intothree caseswith respectto themeantokenrotationtime. This
approachcanbe followedwhen
Cs
falls betweenthe targetrotationtimesoflevel 2andlevel0 as well. Theequationsfor level6utilizationderivedforthepreviouscasewill
alsoapply
here,
since a portion ofthisderivationoverlapsthepreviousderivation.Whenthe level 6tokenrotationtimefallsbetweenthelevel 2andlevel 0target
rotationtimes,thederivations forthelevel 6utilization modelmay bebrokeninto five
distinctcasesbasedonthemeantokenrotationtime. Thesecasesare
1. C=
TR(4)
,themeantokenrotationtimeequalsthe level 4targetrotationtime.
2.
7^(2)
<C<77?(4),
themeantokenrotationtimeis lessthanthe level 4targetrotationtimeand greaterthanthe level 2targetrotationtime.
3. C=
TR(2)
,themeantokenrotationtime equalsthelevel 2targetrotation time.
4. CS<C<
TR(2)
,themeantokenrotationtimeis lessthanthe level 2targetrotationtimeand greaterthanor equalto the level 6tokenrotationtime.
5. C<
Cs
,themeantokenrotationtimeislessthanthe level6targetrotationtime.
Noticethatcase 1 andcase5 forthislevel 6utilizationanalysis areidenticalto
the level 6utilization analysiswhenthe level 6tokenrotationtime fell betweenthe level
4andlevel2targetrotationtimes. Thismeansthattwoofthe fivecases outlined above
havealreadybeensolved. Themodelsforthese twocaseswillberepeatedforcomplete
ness.
However,
forafullunderstandingofthe derivationtheprevious sections shouldbeexamined.
2.5.4.2.3.1. Case3a:
C=TR(4)
Thelevel 6utilization underthesecircumstancesis equivalentto thederivation
done insection 1.5.4.2.2.1. Thiscanbe statedsincethe
following
threecriteria arethesamefor bothcases.
1. Themeantokenrotationtime isequaltothe level4targetrotationtime.
2. Themeantokenrotationtimeisgreaterthan Cs.
3. The level 4targetrotationtime isgreaterthanthelevel0andlevel 2target
rotationtimes.
Itis irrelevantthat thelevel 6maximumtokenrotationtime falls betweenthelevel 0and
level 2targetrotationtimes,insteadof the level 2andlevel 4targetrotationtimes. The
resultispresentedhereforcompleteness.
U6=MIN(G/6,
774)
2.5.4.2.3.2. Case 3b:
TR(2)
<C<TR(4)
Whenthemeantokenrotationtime isgreaterthan thelevel 2andlevel 0target
rotationtimes,theutilization fortheseprioritylevelswillbe 0.
Therefore,
themeantokenrotationtimeis caused
by
networktraffic fromthe level4andlevel6 prioritylevels only. Notethatthenetworktrafficmust consist oftransmissionsfrombothpriorityclasses,orjust from level 4. Level 6trafficalone cannotincreasethemeantokenrota
tiontimeabovethelevel2targetrotationtime.
Whentheofferedloadofpriority level6 islessthanthemaximumallowable
bandwidth,
then the level 6utilizationisequalto thelevel 6offeredload.However,
whenlevel 6 transmissionsreachtheirmaximum,thatistosay,whenallstationsonthe
network are
transmitting
fortheirfull highprioritytokenholdtime,the level 6utilizationmaydwindle duetoan
increasing
loadoflevel 4transmissions.Therefore,
itcanbe saidthatthelevel 6utilization underthesecircumstancesisafractionofthelevel6peak uti
lization.
More specifically,U6
=P6(l-G'4).Noticethatasthelevel4offeredloadreachesthepoint whereit becomesthe total
utilizationofthenetwork,the level 6utilizationdropsto 0. Thishastobethecase since
level 6transmissionsareguaranteed at eachnodeforthehigh prioritytokenholdtime.
Alsonotethat asthelevel 4offeredload dropsto
0,
the level 6utilizationapproachesthepeak utilization. The level6utilizationwillnever reachitspeakvalue,
however,
since alevel 4offered loadmustbepresenttoincreasethemeantokenrotationtimeabovethe
level 2targetrotationtime.
The level 6utilizationcan nowbepresentedas
follows,
u6=min(g/6,
/>6(1-C?i)).Noticethatthisexpressionfor level 6utilizationis identicaltotheexpressionfor level 6
utilizationderivedinsection 1.5.4.2.2.2. Forthat
derivation,
themeantokenrotationtimewas greaterthanor equalto
Cs,
andlessthan thelevel 4targetrotationtime. Thesameistrueforthis
derivation,
exceptthatthemeantokenrotationtime can never equalC,. The factthat
C,
was greaterthan thelevel2targetrotationforthe derivation insection
1.5.4.2.2.2,
andlessthan the level2targetrotationtime forthisderivationis irrelevant. The
derivation
isdone
onthefoundation
that themeantokenrotationtimeis lessthan thelevel4targetrotation
time,
and greaterthanCs. Theprooffromsection1.5.4.2.2.2 isthereforeidentical forthisderivationand isnot repeated.
2.5.4.2.3.3. Case 3c:
C=TR(2)
Thederivationofthelevel6utilizationwhenthemeantokenrotationtimeequals
the level 2targetrotationtimeis verysimilartothederivationoflevel 6utilization when
themeantokenrotationtimeequaledthelevel 4targetrotationtime. This derivationwas
done insection 1.5.4.2.2.1.
Whenthemeantokenrotationtimeequalsthe level 2targetrotationtime,the
meantokenrotationtimehasreacheditsmaximum value. Thelevel6utilization,under
these circumstances, isdependentuponthe level 2targetrotationtime. Themaximum
level 6utilization will stilloccurwhenallNstationsonthe control networkaretransmit
ting
level 6 data forthereentirehigh prioritytokenhold times,butthemeantokenrotation timewillbegreaterthanC3.
Mathematically
stated,lTs
+Tm(6)^N 2"TR(2)
'where
H2
isthemaximumlevel 6utilization possible whenthemeantokenrotationisequaltothe level 2targetrotationtime, andbotharegreaterthanCs.
Ifthemaximum amountoflevel 6 data hasnotbeentransmitted,then thelevel 6
utilizationisequalto theofferedloadofpriority level 6. Thelevel 6utilization can now
be stated as
follows,
u6=min(g'6,h2]
Theproofforthisexpression oflevel 6utilization isidenticalto theproofforthecaseof
themeantokenrotationtimeequalingthe level4targetrotationtime. The only differ
ence isthat thelevel2targetrotationtime,
TR(2),
shouldbesubstitutedforthelevel 4targetrotation
time,
TR(4),
throughout theproof.2.5.4.2.3.4. Case 3d: CS<C<
TR(2)
Whenthemeantokenrotationtimefalls betweenthelevel 2targetrotationtime
andthelevel6tokenrotationtime,thetotalutilization ofthesystem canno longer be
represented
by
P2. Forthis case,thelevel 6 utilizationisthefractionofthelevel 6peakutilizationthat isnotdiminished
by
level 4 andlevel 2traffic. Sincenetworktrafficismadeup level
2,
level 4andlevel 6 transmissions, 7*6(1G2
G4)
representsthe fractionoflevel6utilizationthatisnotmadeupoflevel 2 orlevel4traffic.
Therefore,
U6
=MIN[g'6,
P6(\-G'2-G'4)j
representsthelevel 6utilizationforthisspecificcircumstance.
Theproofforthisexpressionoflevel 6utilizationisidenticalto theproofinsec
tion 1.5.4.2.2.2. The only differenceisthatthetotalutilizationisequaltoth