53
Ordonnancement temps réel dans les réseaux Ye-Qiong SONG Université de Lorraine – LORIA 40 ans de recherches en ordonnancement temps réel Nantes 8 juin 2012

Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Ordonnancement temps réel dans les réseaux

Ye-Qiong SONG

Université de Lorraine – LORIA

40 ans de recherches en ordonnancement temps réel Nantes 8 juin 2012

Page 2: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

30 ans d’ordonnancement dans les réseaux – Plan de la présentation

  72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement sur les réseaux

  80-90: bus de terrain (réseaux de capteurs, actionneurs et automates, filaires) et le besoin d’ordonnancer le trafic temps réel

  90-00: CAN, bus à priorité fixe et analyse du pire temps de réponse   00-10: Ethernet commuté industriel (Profinet, AFDX, …)   10- : Réseaux sans fil, NCS (Networked Control System) et CPS

(Cyber-Physical System)   Réflexions sur les approches d’évaluation de temps de réponse   Ordonnancement sous contrainte (m,k)-firm

Page 3: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Bus de terrain et ordonnancement

Procédé industriel

automate1 automate2

actionneur2 actionneur1 capteur1

capteur2 capteur3

Boucles de contrôle-commande partagent le même bus de communication Problème: ordonnancer les demandes d’accès au bus Similaire aux protocoles MAC, mais avec la notion d’échéance/période

Page 4: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Procédé industriel

Bus de terrain et ordonnancement automate1 automate2

actionneur2 actionneur1 capteur1

capteur2 capteur3

FIP Distributeur (table de scrutation)

Solution de FIP: table de scrutation, modèle producteur-consommateur [Thomesse05]

Mi (Ci, Ti); cycle élémentaire EC=PGCD(Ti); macro cycle MC=PPCM(Ti) Exemple: A(1, 2); B(1, 4); C(1, 8)

A! A! A! A! t (CE)

B! B!C!

1 2 3 4 A! A! A! A!

B! B!C!

5 6 7 8

Page 5: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Discussion 1: bus de terrain   Réseau dédié dont les applications sont connues   Correspond au besoin du niveau bas (terrain) des

systèmes automatisés de production, une fois configurées (trafics ordonnancés), n’évoluent pas ou peu

  Exemple d’applications de FIP: TGV, LHC   Problèmes:

–  Ordonnancement statique et hors-ligne, ne supporte pas des applications dynamiques (ajout ou retrait d’équipements, par ex)

–  Manque de la robustesse face aux aléas

Page 6: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

CAN (Controller Area Network)   CAN, conçu en 1983 par Bosch pour automobile,

standard ISO depuis 1994

CMOSEKSur µC

BSI

CAN (réseau inter-systèmes)

VAN (réseau confort)

A C

BVAOSEKSur µC

A C

SUSOSEKSur µC

A C

ABS/CDSOSEKSur µC

A C

CAV/CdPOSEKSur µC

A C

OSEKECRAN

… OSEKCOMB

OSEKNAV

OSEKSTAT

OSEKCLIM

OSEKRADIO

OSEKGSM

Page 7: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

CAN, bus à priorité fixe

 Méthode d'accès – Bit dominant 0 et bit récessif 1 (Codage

NRZ) – CSMA avec arbitrage bit par bit sur le champ ID (par ET

logique sur la ligne) u Débit limité par le MAC

Données de la machine A

Données de la machine B

Données sur le média

Prise de parolesimultanée

B n’a rien remarqué etcontinue à émettre

A détecte le conflitet s’arrête

Page 8: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

CAN: exemple d’applications

CM ABS/CDS

SUS BVA CAV/CdP

BSI

CAN

VAN

Nom de tâche Message entrant Durée (ms) Période (ms) Message généré ChargeT_CM1 2 10 M1 0,20T_CM2 2 20 M3 0,10T_CM3 2 100 M10 0,02T_CM4 M4 2 15 0,13T_CM5 M2 2 14 0,14T_CM6 M8 2 50 0,04T_CM7 M6 2 40 0,05

0,69

Nom de tâche Message entrant Durée (ms) Période (ms) Message généré ChargeT_BVA1 2 15 M4 0,13T_BVA2 2 50 M11 0,04T_BVA3 M8 2 50 0,04T_BVA4 M2 2 14 0,14

0,36

Page 9: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

CAN: pire temps de réponse

 Temps de réponse des messages du pire cas [Tindell94] :

Rm = Cm + Im + Jm

j

mhpj j

bitjnm

mnm C

TJI

BI ∑∈∀

+

⎥⎥

⎢⎢

⎡ +++=

)(

1 τ

Page 10: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

CAN: Application à la messagerie PSA

0,00

0,50

1,00

1,50

2,00

2,50

3,00

3,50

4,00

4,50

5,00

1 2 3 4 5 6 7 8 9 10 11 12

Avg RT

WCRT

DLC (byte) Periode (ms) Priority Avg RT WCRT

8 10 1 0,63 1,04

3 14 2 0,44 1,38

3 20 3 0,45 1,72

2 15 4 0,41 2,02

5 20 5 0,54 2,44

5 40 6 0,54 2,86

4 15 7 0,51 3,24

5 50 8 0,55 3,66

4 20 9 0,52 4,04

7 100 10 0,64 4,46

5 50 11 0,56 4,72

1 100 12 0,40 4,72

Messagerie PSA Peugeot-Citroën pour les 1ères voitures avec multiplexage CAN

AvgTR si M/G/1 avec priorité et sans préemption WCRT: pire temps de réponse

[Simonot-Lion95]

Page 11: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Discussion 2: CAN et surdimensionnement

  Réseau dédié, donc applications connues   Largement répandu dans l’automobile   Certaine flexibilité (ajout ou supression de messages

de faible priorité a peu d’impact)   Débit très limité à cause de l’arbitrage bit par bit   Surdimensionnement du besoin en bande passante à

cause de la considération du pire cas –  Solution de déphasage (cf. travaux de Navet)

  Robustesse face aux erreurs de transmission –  Garantie probabiliste du pire temps de réponse

Page 12: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

CAN: prise en compte des erreurs de tx

 Erreurs de transmission augmentent le TdR

 WCDFP pour mesurer la robustesse:

{ })max23)(()(

)(j

mmhpjbiterrm CtNtE

∪∈∀+= τ

jmhpj j

bitjnm

mmnmm

nm C

PJI

BCIEI ∑⎥⎥⎥

⎢⎢⎢

⎡ +++++=

∈∀

+

)(

1 )(τ

])([ max iierr KRNP > (Ki nb max de retransmissions avant de conduire à la violation de l’échéance)

[Navet00]

Page 13: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

CAN: modèle d’occurrence des erreurs

Nombre d ’erreurs durant [0, t]: Avec:

–  N(t) suit une loi de Poisson composé

–  u est une v.a. qui peut suivre une distribution quelconque

∑==

)(

0)(

tN

iierr ytN

⎩⎨⎧

α

- 1 éprobabilit une avec ,1 éprobabilit une avec ,u

yi

Erreurs individuelles et en rafale

t * * *

* * *

* * * *

u

Page 14: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Ethernet commuté pour communication indus.

!"#$$%&'(%!)*+!',*-%$.%/0' +/-1"2.%/0' 3"*!*&*245' #/-'()%21'4!%22' 4+33*"!%/0' 16%4!%/0' )%0)1"721812' 3"*!*&*24' $*"'/*/7"1#27!%,1'!"#$$%&'4+&)'#4'(1979#41-',#%/!1/#/&1:';%0:'<:'-13%&!4'#/'%/-+4!"%#2'=!)1"/1!'3"*!*&*2'4+%!1',*-12:'>"%*"%!.'4&)1-+2%/0' %4' %/!"*-+&1-' %/!*' 4(%!&)14' #4' (122' #4' 4*+"&1'/*-14'!*'01!'#4',+&)'"1#27!%,1'31"$*",#/&1'#4'3*44%9215'#!'!)1'4#,1'!%,1'#4'!)1'+41'*$'4!#/-#"-'3"*!*&*24'2%?1'@A>BC>'#/-'=!)1"/1!'%4'3"141"81-:'D1&*0/%E1'!)#!'%/-+4!"%#2'=!)1"/1!')#4'!*'4+33*"!'/*!'F+4!'

!)1'/11-'$*"'9*!)'"1#27!%,1'&*/!"*2'#/-'%/4!"+,1/!#!%*/5'9+!'#24*'!)1'/11-'!*'16!"#&!'%/$*",#!%*/'#9*+!'!)1'32#/!'#/-'%!4'1G+%3,1/!'(%!)*+!'-%4!+"9#/&1'!*'!)1'"1#27!%,1'(*"2-:'@)1'/1!(*"?'!"#$$%&'&#/'91'&2#44%$%1-'%/!*'!)"11'!.314H<I A.&2%&' 8#"%#9214' #"1' #2(#.4' 01/1"#!1-' &.&2%&#22.:' C/'

,#/.'"1#27!%,1'#332%&#!%*/45'&.&2%&'8#"%#9214'"13"141/!'!)1',#F*"' &*,3+!#!%*/#2' -1,#/-4' %/' &*/!"*2' 4.4!1,:'@)1.'!.3%&#22.'#"%41'$"*,'41/4*".'-#!#'#&G+%4%!%*/'#/-'&2*41-72**3'&*/!"*2'!#4?4:''

JI =81/!' 8#"%#9214' #"1' 01/1"#!1-' ()1/' *&&+""%/0:' @)1.'"13"141/!'181/!4'%/'%/-+4!"%#2'&*,,+/%&#!%*/5'4+&)'#4'#2#",4' 41/!' $"*,' $%12-' -18%&14' !*' !)1' &1/!"#2' &*/!"*2'4.4!1,:'

KI L144#014' #"1' 01/1"#!1-' ()1/' "1G+%"1-5' 4+&)' #4'-*(/2*#-' *$' 41!7+345' +32*#-' *$' -%#0/*4!%&4' #/-'(1979#41-'#332%&#!%*/4:''

!" #$%&'%()*&)+)(*,-,&./&,0-12$%'&31$%4+%1&@)1' !"#/4$1"' -12#.'*$' #' $"#,1' 1631"%1/&14' $"*,' 21#8%/0'

$"*,' 4*+"&1' /*-1' !*' 91%/0' &*,321!12.' "1&1%81-' 9.'-14!%/#!%*/'/*-1'&#/'91'&2#44%$%1-'%/!*'$*+"'0"*+34H'<I @)1' -12#.' #!' 4*+"&1' /*-1' %/&2+-14H' M#I' !)1' 3"*!*&*2'

3"*&144' !%,1' $*"' 1/&#34+2#!%/0' "#(' -#!#N' M9I' !)1'G+1+%/0'!%,1'#'$"#,1',+4!'(#%!'%/'9+$$1"'()1/'LOA'*+!3+!'%4'9+4.N'M&I'!)1'41/-%/0'!%,15'()%&)'-131/-4'*/'!)1' $"#,1' 21/0!)' #/-' !)1' LOA' *+!3+!' "#!1:' P1'&*,9%/1' !)1' 2#4!' !(*' %!1,4' #/-' &#22' !)1,' !)1' 9+$$1"'"143*/41'!%,1'*$'#'$"#,1'#!'4*+"&1'/*-1:'

JI @)1' -12#.' #!' =!)1"/1!' 4(%!&)' %/&2+-14H' M#I' @)1'-14!%/#!%*/'!#921'2**?7+3'!%,1'#/-'4(%!&)'$#9"%&'41!7+3'

!%,15'()%&)'#"1'!)1'9#4%&'-12#.'*$'=!)1"/1!'4(%!&)N'M9I'@)1'G+1+%/0'!%,1'#'$"#,1',+4!'(#%!'%/'9+$$1"'()1/'!)1'LOA' *+!3+!' %4' 9+4.N' M&I' @)1' $*"(#"-' !%,15' ()%&)'-131/-4' */' !)1' $*"(#"-' ,*-1' !)#!' =!)1"/1!' 4(%!&)'#-*3!4:'P)1/'4!*"1'#/-'$*"(#"-',*-1'%4'#-*3!1-5'!)1'$*"(#"-'!%,1'%4'%/'-%"1&!'3"*3*"!%*/'!*'!)1'$"#,1'21/0!):'P1'#24*'&*,9%/1'!)1'2#4!'!(*'%!1,4'#/-'&#22'!)1,'!)1'9+$$1"'"143*/41'!%,1'*$'#'$"#,1'#!'=!)1"/1!'4(%!&):'

KI @)1' -12#.' #!' -14!%/#!%*/' /*-1' %/&2+-14H' M#I' !)1'"1&1%8%/0' !%,15' ()%&)' -131/-4' */' !)1' $"#,1' 21/0!)N'()1/'!)1'-%4!#/&1'91!(11/'!)1'4(%!&)'#/-'-14!%/#!%*/'/*-1' %4' /*!' $#"5' !)1' "1&1%8%/0' !%,1' &#/' 91' *,%!!1-'91&#+41' !)1' 41/-%/0' #/-' "1&1%8%/0' #2,*4!' !#?1' 32#&1'4%,+2!#/1*+42.N'M9I'!)1'3"*!*&*2'4+%!1'3"*&144'!%,1'$*"'-1/&#34+2#!%/0'!)1'$"#,1'!*'*9!#%/'!)1'"#('-#!#:''

QI '@)1'-12#.'*/' !"#/4$1"' 2%/14'-131/-4'*/' !)1' !*!#2' 2%/1'21/0!)' 91!(11/' 4*+"&1' /*-1' #/-' -14!%/#!%*/' /*-1:'P)1/' !(%4!1-73#%"' %4' #-*3!1-5' !)1' !"#/4$1"' -12#.' %4'#9*+!'< , */'#' JRR5 '2%/1:'

P1' $+"!)1"'-%8%-1' !)1' #9*81'-12#.4' %/!*' !(*'3#"!4:'@)1'$%"4!'3#"!'%4'!)*41'-12#.4'!)#!'-131/-'*/'!)1'$"#,1'21/0!)5'!)1'LOA' *+!3+!' "#!15' !)1' 9#4%&' -12#.' *$' =!)1"/1!' 4(%!&)5' !)1'3"*!*&*2'4+%!1'31"$*",#/&1'*$'=!)1"/1!'/*-145'#/-'!)1'21/0!)'*$'!"#/4$1"'2%/14:'@)1'41&*/-'3#"!'%4'!)1'9+$$1"'"143*/41'!%,1'#' $"#,1' 1631"%1/&14' %/' =!)1"/1!' 4(%!&)' #/-' 4*+"&1' /*-15'()%&)'%4'!)1',*4!'4%0/%$%&#/!'3#"!'%/'!)1'()*21'-12#.'()1/'!)1' /1!(*"?' %4' 9+4.5' #/-' %4' #24*' !)1' ,#%/' "1#4*/' $*"'/*/7-1!1",%/%4!%&'%/'4(%!&)1-'=!)1"/1!:''@"#-%!%*/#2'4(%!&)1-'=!)1"/1!'-*14'/*!'3"*8%-1'1$$1&!%81'

3"%*"%!.' !"#/4$1"',1&)#/%4,' $*"' %/-+4!"%#2' &*,,+/%&#!%*/:'S1&#+41'/*/7"1#27!%,1'-#!#'01/1"#22.')#81'2*/0'$"#,15'()1/'#' "1#27!%,1' -#!#' #""%8145' %$' !)1"1' )#331/4' !*' 91' #',#44' *$'/*/7"1#27!%,1' -#!#' (#%!%/0' $*"' 41"8%&15' !)1/' !)1' "1#27!%,1'-#!#'(%22'91'-12#.1-'4%0/%$%&#/!2.:'@)1'9+$$1"'"143*/41'!%,1'*$'#'$"#,1'#!'4*+"&1'/*-1'*"'=!)1"/1!'4(%!&)'%4'1#4%2.'-1"%81-'#4

<

<

-

- 00

4%,6.+,%

( ('

25''''''''''''''''''''''''''''''''''M<I'

()1"1 - -( 5 5 0 0( 5 5 -5 #/- 05 #"1' $"#,1'

21/0!)4' *$' !)1' &*/4%-1"1-' $"#,1' #/-' G+1+1-' $"#,145'"1431&!%812.5 '%4' !)1',%/%,+,'=!)1"/1!' %/!1"7$"#,1' 0#35'

#/- 2 '%4'!)1'LOA'*+!3+!'"#!1:'S1&#+41'!)1'181/!'8#"%#9214'#/-',144#014'#"1'43*"#-%&5'!)1'/+,91"'*$'G+1+1-'$"#,14' 0%4' +/&1"!#%/' ()1/' !)1' $"#,1' - '"1#&)14' !)1' LOA' 9+$$1":'@)1"1$*"15' !)1' ,#6%,+,' 9+$$1"' "143*/41' !%,1' *$' &.&2%&'8#"%#9214'%4'/*!'9*+/-1-:'

CCC: >DCTDC@U'VAW=XYZC[\'C['LOA'SY;;=D

@)1'C===]RJ:<3'G+1+%/0'$1#!+"1' %4'$%"4!2.' %/!"*-+&1-'%/'!)%4' 41&!%*/5' #/-' !)1/' !)1' 3"%*"%!.' 4&)1-+2%/0' 9#41-' */'C===]RJ<:<3'%/'4(%!&)1-'%/-+4!"%#2'=!)1"/1!'%4'-14&"%91-:'

!"#$%&$"'()*'+,&-'..*/

0$,12345$'",676

8339:;39:'<=(9>>>

?@9 3*9

4&"$%&$"'9%A"ABA1+49/

9%CA%C"D'6B#$-E1C&F

!"#$%&$"'98G

=A&20$,123C5$'",676

0$,12"C5$')94

)1,%56

'*A&"%A11AAH6

83396$%ICB$6 ;39

6$%ICB$6

;%0:'<:''O/'%/-+4!"%#2'=!)1"/1!'3"*!*&*2'4+%!1',*-12:'

3367

I1 ≥ d

Ij

IN

O1

Om

ON

S1

Sj

u

SN

pj1 pjm

pjN

s1

sm

sN

Page 15: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Ethernet Commuté: évaluation de délai   Hypothèse:

–  M sources périodiques classées en P priorités (P<9)

–  Destinées au même port de sortie (i.e., nous connaissons l’application !)

  Notation:

Prior=1

S1

Sk1

SK1

Prior=i

Prior=P

S1

Ski

SKi

S1

SkP

SKP

{Ci(ki), Ti(ki), Di(ki)} ki = 1, 2, …, Ki i = 1, 2, …, P

[Song02]

Page 16: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Ethernet commuté: pire temps de réponse

 Pour Ki > 1 et quelque soit l’échéance, un paquet de priorité i peut être bloqué par un autre de la même priorité – Paquets issues d’autres sources mais classifiés en

la même priorité (effet de Ki > 1) – Paquets en attente, issues de la même source, et

pas encore transmis au moment de l’arrivée du paquet considéré (effet de l’échéance supérieure à la période)

 Comment definir le pire temps de réponse?

Page 17: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Ethernet commuté: pire temps de réponse   « Busy period » de priorité i a une durée finie ssi:

  « Busy period » démarre avec l’hypothèse que toutes les autres sources de priorité supérieure ou égale envoient leurs paquets, et qu’un paquet de priorité inférieure vient de commencer sa tx

  Calculer le délai Ri,k(ki) pour tous les k (k = 1, 2, …) paquets transmis durant la « busy period »

  « Busy period » se termine quand on rencontre Ri,k(ki) < Ti(ki)   Le max de Ri,k(ki) correspond au pire temps de réponse

! jj=1

i

! = Bi +C j (k j )Tj (k j )k j=1

K j

!j=1

i

! "1

Page 18: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Ethernet commuté: pire temps de réponse 0

1 1( ) ( )

j

j

Ki

i i i j jj k

I k B C k= =

= +∑∑

1

1 1

( )( ) ( ) ( )( )

j

jj i

K nin i ii i i i i j j

j k j jk k

I kI k B kC k C kT k

+

= =≠

⎡ ⎤= + + ⎢ ⎥

⎢ ⎥⎢ ⎥∑ ∑

, ( ) ( ) ( 1) ( )i k i i i i iR k I k k T k= − −

On arrête quand: Ri,k(ki) ≤ Ti(ki)

,( ) max { ( )}i i k i k iR k R k=

Page 19: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Réflexions sur les approches d’évaluation de temps de réponse

Serveur de capacité

c

τ1

τ2

τN

.

.

.

politique d’ordonnancement des clients en tête

des files

interarrivée sources

clients

Problème de partage d’une ressource commune, sans préemption, en respectant l’échéance è besoin d’évaluer le temps de réponse

Page 20: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Flux d’arrivées et Techniques d’évaluation

- Communauté « ordonnancement », application connue - Tâches périodique ou sporadique: (Ci, Ti) - Tâches périodique avec gigues : (Ci, Ti, Ji)

- Communauté « réseaux », application partiellement connue - Flux de paquets (σi, ρi)-borné -  Flux de paquets aléatoire et durée de tx aléatoire: (λ, µ)

avec λ= moy(1/Ti ), µ = moy(1/Ci )

Hypothèses sur flux d’arrivée

Techniques: - Probabiliste: files d’attente - Trajectoires majorantes :

- pire temps de réponse - network calculus

Page 21: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Pire temps de réponse sous l’ordonnancement non préemptif à priorité fixe

i i i iR C I J= + + i iR T≤

11

11

max ( ) ( 1)i

ni i j N j j

j

ni j

jI C C

I JT

−+

+ ≤ ≤

=

= +⎢ ⎥+⎢ ⎥ +⎢ ⎥⎣ ⎦

∑0 0iI = Calcul récurrent :

Condition de convergence :

1n ni iI I+ =

11

ij

j j

CT=

≤∑

Page 22: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Technique de « network calculus »

t

6 5 4 3 2 1

Bornes pour majorer les flux d’entrée

F(t) périodique

F(t) périodique avec gigues

0 1 2 3 4 5 6 7

J

flux ( , )-borné 1

1

ijj

σ−

=∑ 1

1

ijj

ρ−

=∑

( )11

max 1

1

maxi

j i j N jj

i i

jj

W

D

c

σ

ρ

+ ≤ ≤

=

=

+

=

Ai(t)!Ai(s)"!i+"i(t!s) #0"s"t

Page 23: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Relation entre périodique pire cas et (σ, ρ)-borné

ii

i

WT

ρ =

( )ii i i

i

W T JT

σ = +

/i iC W c=

L'effet de la gigue

-50

0

50

100

150

200

250

300

-22 -20 -18 -16 -14 -12 -10 -8 -6 -4 -2 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34

Qtt Travail Arrivée J= 8 Qtt Travail Arrivée J=0Pente Optimale J=8 Pente Optimale J=0

σ2

σ1

[Koubaa04]

Page 24: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Temps de réponse probabiliste   Hypothèse: demandes de ressource aléatoires   Modèle: file d’attente M/G/1 avec priorité et sans

préemption  

  Distribution des temps de réponse pour des cas particuliers (e.g., Poisson, Binomial) è P[Ri >Di] < ε

iii

iii Caa

CECqERE +−−

=+=− )1)(1(2

][][][1

][...][][][ 222

221

12n

n CECECECEλλ

λλ

λλ

+++=

λ = λ1 + λ2 + … + λnaj = λ1C1 + λ2C2 + … + λjCj

Page 25: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Quelle approche dans un réseau multi-saut? 1

11

1

1

maxˆ *

ij ji j N

ji i i i

jj

W

c

σ

σ σ ρρ

⎛ ⎞⎜ ⎟⎜ ⎟⎝ ⎠

+ ≤ ≤=

=

+

= +

NP-FP ( ),i iσ ρ ( )ˆ ,i iσ ρ

Point clé: caractériser le flux de sortie: -  des résultats existent pour le flux

(σi, ρi)-borné, mais problème de surdimensionnement [Grieu04],[Bouillard10]

-  Pire trajectoire par flux sur tout le chemin, valable pour des flux statiques [Martin04], [Bauer10]

-  flux de sortie d’une file M/G/1 n’est plus Markovien en général, rendant difficile l’analyse probabiliste

Evaluation de délais de bout en bout est un problème difficile, nécessite plus de recherches

Page 26: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

D’où vient l’échéance?   Jusqu’à présent, on suppose un modèle (Ci, Ti, Di) qui conduit à

considérer le pire cas et à une allocation de ressource surdimensionnée. Mais est-il possible de relâcher la contrainte sur échéance afin d’éviter le surdimensionnement? –  Applications “temps réel” dans l’Internet (voix, vidéo), le modèle (m,k)-

firm peut convenir –  Les boucles de contrôle-commande fermées sont souvent robustes, dont la

fréquence d’échantillonnage est sur-estimée (4 à 10 fois)

  Possible d’exploiter un espace de solutions plus large pour des applications temps réel “souple” ou “firm”

Page 27: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Modèle (m,k)-firm   Temps réel dur: non respect d’une échéance

entraîne des conséquences catastrophiques   Temps réel souple: non respect des échéances

entraîne une diminution de performances (QdS dégradée) –  Temps réel « firm »: temps réel souple mais avec le non

traitement des paquets ne pouvant pas respecter leur échéances (paquets rejetés)

–  (m,k)-firm: respect des échéances d’au moins m parmi k paquets consécutifs quelconques [Hamdaoui95]

Page 28: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

(m,k)-firm et états du system  Exemple de (2,3)-firm  k-séquence

111 1

110 0

101

100

1

0

011

010

001

000

0

1

0

1

0

1

0 1 1

0

1 0

Page 29: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

k-séquence et expression de contraintes (3,5)-firm - k-séquence fixe = k-pattern

1 0 0 1 1 1 0 0 1 1 1 0 0 1 1 . . .

1 0 0 1 1 1 0 1 0 1 1 1 0 1 0 ...

- k-séquence dynamique

Page 30: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Exemple d’une application acceptant la contrainte (m,k)-firm

 Flux vidéo MPEG

I B B B

P B B

P B B

P B

I B B B

P B B

P B B

P B

1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0

GOP (Groupe Of Pictures)

Page 31: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Maquette de tests

Routeur ClickCommutateur

LAN 1Commutateur

LAN 2

LAN 1 100 Mbits/s

Netmask = 255.0.0.0

LAN 210 Mbits/s

Netmask = 255.255.255.0

Lien 1 100 Mbits/s

Lien 2 10 Mbits/s

Serveur 1 @IP : 10.0.0.2

Serveur 2@IP : 10.0.0.3

Client 1 @IP : 192.168.1.2

Client 2@IP : 192.168.1.3

VideoLan : générateur de trafic MPEG

Page 32: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Test sur maquette

Vidéo initiale:

Page 33: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Test 1: rejet de tous les paquets de type I

Image fixe

Test sur maquette

Page 34: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Test 2: rejet de tous les paquets de type P

Test sur maquette

Page 35: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Test 3: rejet de tous les paquets de type B

Test sur maquette

Page 36: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

DBP (Distance based Priorité)   DBP d’une k-séquence est définie comme le

nombre des échéances non respectées consécutives (nombre de zéros) conduisant à un état d’échec

  Exemple de (3,5)-firm –  (11011) a DBP = 2 car 11(01100) –  (10111) a DBP = 3 car 101(11000) –  (10001) a DBP = 0

  L’affectation de priorité dans DBP est dynamique (qui dépend de k-séquence)

Page 37: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

DBP dans notre modèle

  Une source est caractérisée par:   DBP peut être implémenté matériellement par un registre   En cas d’égalité de priorité DBP, EDF par défaut

! i = ci , pi ,Di ,mi ,ki{ }

),,,( 111

111 iiki δδδ −+−

),,,( 221

212 iiki δδδ −+−

21

22

23 ,,, +++ iii jjj

),,,( 11Ni

Ni

Nki N δδδ −+−

Ni

Ni

Ni jjj 123 ,,, +++

11

11, ++ ii pj1

112

13 ,,, +++ iii jjj

21

21, ++ ii pj

Ni

Ni pj 11, ++

DBP

DBP

DBP

Serveur

...

...

xij : ième client de source x x

ip : priorité de ième client de source x

Page 38: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Ordonnancement NP-DBP-EDF   Priorité 0: le paquet en cours de service (transmission) a la

plus haute priorité (non préemption)   Priorité 1: paquets avec DBP=1 en attente de transmission

(doivent être garantie, sinon violation de la contrainte)   Priorité i: paquets avec DBP=i (i>1) en attente de

transmission (transmis s’ils peuvent l’être avant leur échéance, écartés sinon)

  Paquets avec la même valeur de DBP sont ordonnancés selon EDF

Page 39: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Garantie déterministe de (m,k)-firm

cipi

miki

!

"#

$

%&

i=1

N

! "1 au lieu de cipi

!

"#

$

%&

i=1

N

! "1Charge:

Garantie déterministe de (k,k)-firm donnée par condition suffisante de [Jeffay91]

Question: (m,k)-firm permet-elle de relaxer la demande de ressources par rapport à (k,k)-firm?

Analyse de l’ordonnançabilité sous contrainte (m,k)-firm

Page 40: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

DBP: condition suffisante (1)  Pour trouver la condition suffisante

d’ordonnançabilité, le point clé est de trouver la période pire cas et sa charge (workload) correspondante

 Le pire cas a lieu pendant la DBP=1 busy period où seuls les paquets avec DBP=1 sont transmis.

Page 41: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

DBP: condition suffisante (2)

Supposons l’existence d’une telle période qui commence à l’instant t0 et se termine à td.

Trois cas sont identifiés: 1)  DBP=1 busy period commence quand le serveur est

libre à t0, et tous les paquets ont leur échéance avant td .

2)  DBP=1 busy period commence mais le seuveur est bloqué par un paquet de DBP>1 à t0, et tous les paquets ont leur échéance avant td .

3)  Il y a quelques paquets dont l’échéance est après td.

Page 42: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Workload dans le cas 1   L= td - t0 : longueur de la DBP=1 busy period   Paquets classés en deux sous-ensembles :

–  U : paquets avec DBP=1 à t0 –  a()-U : paquets avec DBP >1 à t0 mais devenus DBP=1

à tx < td   Tous les paquets doivent être transmis car leur

échéance est avant td , la workload est définie comme le temps nécessaire pour transmettre tous ces paquets

Page 43: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Cas 1: Workload du sous-ensemble U td

kipi fragment

kipi

t0

DBP=1 busy period

L

1 LW m cU i ik pi U i i

⎛ ⎞⎢ ⎥⎜ ⎟= ⎢ ⎥∑⎜ ⎟⎢ ⎥∈ ⎣ ⎦⎝ ⎠

2 ,

LL k pi i k pi iW Min m cU i ipi U i

⎛ ⎞⎢ ⎥⎢ ⎥⎜ ⎟⎢ ⎥− ⎢ ⎥⎜ ⎟⎢ ⎥⎢ ⎥⎣ ⎦⎜ ⎟= ∑ ⎢ ⎥⎜ ⎟⎢ ⎥∈⎜ ⎟⎢ ⎥⎜ ⎟⎢ ⎥⎣ ⎦⎝ ⎠

Lk pi i

⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦

Workload durant la part entière :

i i

LLk pi i

k p⎢ ⎥⎢ ⎥−⎢ ⎥⎣ ⎦

Workload durant la partie du fragment:

Page 44: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

CAS 1: Workload du sous-ensemble a()-U

kjpj kjpj

tx

pj pj

1 2 DBP=a

1

t0

DBP=1 busy period

a-1 a-2 fragment

td L

Dans le pire cas : l = tx – t0 =1+(DBPj(t0)-2)pj Workload du sous-ensemble a()-U :

1()

()

L lW m ca U j jk pj a U j j

⎛ ⎞⎢ ⎥−⎜ ⎟⎢ ⎥= ∑− ⎜ ⎟⎢ ⎥⎜ ⎟∈ − ⎣ ⎦⎝ ⎠

( )2 ,()

()

L lL l k pj j k pj jW Min m ca U j jpj a U j

⎛ ⎞⎢ ⎥⎢ ⎥−⎜ ⎟⎢ ⎥⎢ ⎥− −⎜ ⎟⎢ ⎥⎢ ⎥⎜ ⎟⎣ ⎦⎢ ⎥= ∑− ⎜ ⎟⎢ ⎥∈ − ⎜ ⎟⎢ ⎥⎜ ⎟⎢ ⎥⎜ ⎟⎢ ⎥⎣ ⎦⎝ ⎠

L lk pi i

⎢ ⎥−⎢ ⎥

⎢ ⎥⎣ ⎦

durant

( )i i

L lL lk pi i

k p⎢ ⎥

−⎢ ⎥− −⎢ ⎥⎣ ⎦

durant

Page 45: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Cas 1: Workload totale

Somme de la workload des deux sous-ensembles :

+

⎟⎟⎟⎟

⎜⎜⎜⎜

⎟⎟⎟⎟

⎜⎜⎜⎜

⎥⎥⎥

⎢⎢⎢

⎢⎥⎦⎥

⎢⎣⎢−

+⎥⎦⎥

⎢⎣⎢∑

∈Uiii

i

iiii

iii

cmppkLpkL

MinmpkL ,

L’analyse similaire est appliquée aux cas 2 et cas 3

( )

()

1 ( ( ) 2)1 ( ( ) 1)

1 ( ( ) 2),

j jj j j j

j jj jj j j

j a U j j j

L DBP t pL DBP t p k p

k pL DBP t pm Min m c

k p p∈ −

⎛ ⎞⎛ ⎞⎢ ⎥⎢ ⎥− − −⎜ ⎟⎜ ⎟− − − −⎢ ⎥⎢ ⎥⎢ ⎥⎜ − − − ⎟⎜ ⎟⎢ ⎥⎢ ⎥⎣ ⎦+⎢ ⎥⎜ ⎟⎜ ⎟⎢ ⎥⎢ ⎥⎣ ⎦⎜ ⎟⎜ ⎟⎢ ⎥⎜ ⎟⎜ ⎟⎢ ⎥⎜ ⎟⎣ ⎦⎝ ⎠⎝ ⎠

Page 46: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

DBP: condition suffisante (3) Théorème: [Li06] Pour un ensemble de paquets périodiques ou

sporadiques a(), a()= {a(1),a(2),…,a(n)}, a(i)= {ci, pi, mi, ki}, di = pi,

Si a() satisfait les conditions C1 et C2, NP-DBP-EDF sera capable d’ordonnancer un

ensemble periodic ou sporadique concret quelconque généré à partir de a(). i.e. les contraintes (mi, ki)-firm sont garanties.

Page 47: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

DBP: condition suffisante (4) +

⎟⎟⎟⎟

⎜⎜⎜⎜

⎟⎟⎟⎟

⎜⎜⎜⎜

⎥⎥⎥

⎢⎢⎢

⎢⎥⎦⎥

⎢⎣⎢−

+⎥⎦⎥

⎢⎣⎢∑

∈Uiii

i

iiii

iii

cmppkLpkL

MinmpkL ,

( )Lcmp

pkptDBPLpkptDBPL

MinmpkptDBPL

jUaj

jj

jj

jjjjjj

jjj

jj ≤

⎟⎟⎟⎟

⎜⎜⎜⎜

⎟⎟⎟⎟

⎜⎜⎜⎜

⎥⎥⎥

⎢⎢⎢

⎢⎥⎦⎥

⎢⎣⎢ −−−−−−−

+⎥⎦⎥

⎢⎣⎢ −−−∑

−∈ (),

)2)((1)1)((1)2)((1

, , min( )ii L L p∀ ∀ >

1 1, 1

i

i i ii ii

i i ii i i

L cL c k p

k pL c m Min m ck p p

+

+

⎛ ⎞⎛ ⎞⎢ − ⎥⎢ ⎥⎜ ⎟− −⎜ ⎟⎢ ⎥⎢ ⎥⎛ ⎞⎜ ⎟⎢ ⎥− ⎣ ⎦⎜ ⎟⎢ ⎥⎜ ⎟+ + − − +⎜ ⎟⎢ ⎥ ⎜ ⎟⎢ ⎥⎜ ⎟⎣ ⎦⎜ ⎟⎝ ⎠ ⎜ ⎟⎢ ⎥⎜ ⎟⎜ ⎟⎢ ⎥⎣ ⎦⎝ ⎠⎝ ⎠

( )Lcmp

pkptDBPLpkptDBPL

MinmpkptDBPL

jiaaj

jj

jj

jjjjjj

jjj

jj ≤

⎟⎟⎟⎟

⎜⎜⎜⎜

⎟⎟⎟⎟

⎜⎜⎜⎜

⎥⎥⎥

⎢⎢⎢

⎢⎥⎦⎥

⎢⎣⎢ −−−−−−−

+⎥⎦⎥

⎢⎣⎢ −−−∑

−∈ )((),

)2)((1)2)((1)2)((1

C1:

C2:

Page 48: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Exemple numérique

n Mbit/s

S 1

S 2

S 3

S 4

Router Controller

 

Packet size

(kbit) Interarrival time/deadline (ms) (m,k)-firm

constraint S0 8 12 (2,5) S1 8 20 (4,5) S2 1 5 (1,4) S3 4 6 (1,5)

Page 49: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Exemple numérique

  (m,k)-firm vs. (k,k)-firm (HRT)

0

5

10

15

20

25

30

35

0 5 10 15 20

(m,k)-firm (k,k)-firm

Cumulative workload

t

Page 50: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Conclusion   L’ordonnancement de messages/paquets dans les réseaux est

nécessaire pour la QdS (e.g. Priorité, WRR)   Messages/paquets non préemptifs   L’approche de l’analyse du pire temps de réponse offre une borne

intéressante par rapport à la borne (σ, ρ), mais peut conduire au problème de surdimensionnement

  Besoin d’aller au-delà de simple échéance sur paquet et s’intéresser à l’application (e.g. boucle de contrôle, capacité de tolérance applicative) –  (m,k)-firm est un exemple de remède au problème de surdimensionnement

Page 51: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Perspectives   L’histoire ne s’arrête pas à l’âge de 40 ans   L’évaluation de délais dans des réseaux multi-

sauts soulève des problèmes difficiles   Coupler l’ordonnancement en-ligne et la qualité de

l’application, e.g. qualité du contrôle dans des NCS (Networked Control Systems) è vers des systèmes auto-adaptatifs [Aubrun10]

  CPS (Cyber-Physical Systems) et réseaux sans fil: ordonnancement en-ligne sous contraintes de perte de paquets et variation de débit

Page 52: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Bibilographie   [Thomesse05] Jean-Pierre Thomesse, Fieldbus technology in industrial automation,

Proceedings of the IEEE 93, 6 (2005) 1073-1101.   [Tindell94] Tindell, K., A. Burns, “Guaranteeing message latencies on controller area network

(CAN)”, 1st international CAN conference (iCC’94), Germany, sept. 1994.   [Simonot-Lion95] Simonot-Lion F., Song Y.Q., Berthomieu B., Vernadat F., « Vérification des

applications temps réel », Dans Encyclopédie de l'informatique et des systèmes d'information, Vuibert (ed.) (2005).

  [Navet00] N. Navet, Y.Q. Song, F. Simonot, "Worst-case deadline failure probability in real-time applications distributed over CAN (controller area network)", Journal of systems architecture - the EUROMICRO Journal, 46 (2000) pp607-617.

  [Song02] Y.Q. Song, A. Koubâa, F. Simonot, "Switched Ethernet For Real-Time Industrial Communication: Modelling And Message Buffering Delay Evaluation", WFCS’2002, Vasteras (Sweden), pp27-35, August 28-30, 2002.

  [Koubaa04] A. Koubâa, Y.Q. Song, "Evaluation and improvement of response time bounds for real-time applications under non pre-emptive fixed priority scheduling", International Journal of Production Research, Vol.42, No.14, pp2899-2913, Taylor & Francis group, July 2004.

Page 53: Ordonnancement temps réel dans les réseaux · 30 ans d’ordonnancement dans les réseaux – Plan de la présentation 72-80: ordonnancement monoprocesseur, peu de travaux d’ordonnacement

Bibliographie   [Bouillard10] Anne Bouillard, Laurent Jouhet, and Eric Thierry. Tight performance bounds in

the worst-case analysis of feed-forward networks. INFOCOM’10, San Diego, USA, pages 1316–1324, March 2010.

  [Grieu04] Jérome Grieu. Analyse et évaluation de techniques de commutation Ethernet pour l’interconnexion des systèmes avioniques. PhD thesis, INPT Toulouse, France, September 2004.

  [Martin04] Steven Martin. Maîtrise de la dimension temporelle de la qualité de service dans les réseaux. PhD thesis, Université Paris 12, 2004.

  [Bauer10] Henri Bauer, Jean-Luc Scharbarg, and Christian Fraboul. Improving the worst-case delay analysis of an AFDX network using an optimized trajectory approach. IEEE Transactions on Industrial Informatics, 6(4) :521–533, November 2010.

  [Hamdaoui95] M. Hamdaoui and P. Ramanathan, “A dynamic priority assignment technique for streams with (m, k)-firm deadlines”, IEEE Transactions on Computers, 44(4), 1443–1451, Dec.1995.

  [Li06] Li J., Song Y.Q., Simonot-Lion F., “Providing Real-time Applications with Graceful Degradation of QoS and Fault Tolerance According to (m,k)-firm Model”, IEEE Transactions on Industrial Informatics 2, 2 (2006) 112-119

  [Aubrun10] Aubrun C., Simon D., and Song Y.Q. (eds), Co-design Approaches for Dependable Networked Control Systems, ISTE and J. Wiley, 2010, 314 pages.