Plan industriels des systèmes informatiques Sûreté de...

89
Sûreté de fonctionnement des systèmes informatiques industriels Jean-Charles Fabre Méthodes et techniques permettant de considérer les fautes comme des événements naturels et prévisibles! Tel: 05 61 33 62 36 - Fax: 05 61 33 64 11 - E-mail: [email protected] Delta4 ! Systèmes répartis Μk T-R ! Systèmes embarqués Airbus A3*, B777 ! Avionique Elektra ! Ferroviaire Nucléaire ! contrôle de procédé Ballista ! Unix Mafalda ! Μk T-R CoFFEE ! Corba Plan Concepts de base Définitions et notions de base (attributs, entraves), Moyens (prévention, tolérance, élimination, prévision) et mesures Techniques de tol é rance aux fautes Hypothèses de fautes, Techniques de base, stratégies de réplication Solutions architecturales et exemples Techniques de caract é risation Injection de fautes (principes, techniques) Analyse de robustesse, modes de défaillance Exemples d'outils et de résultats expérimentaux Synth è se et conclusion .

Transcript of Plan industriels des systèmes informatiques Sûreté de...

reté de fo

nctio

nn

emen

td

es systèmes in

form

atiqu

esin

du

striels

Jean-C

harles F

abre

Méthodes et techniques perm

ettant de considérer les fautescom

me des événem

ents naturels et prévisibles!

Tel: 05 61 33 62 36

-F

ax: 05 61 33 64 11-

E-m

ail: [email protected]

Delta4

! S

ystèmes répartis

Μk T

-R !

Systèm

es embarqués

Airbus A

3*, B777

! A

vioniqueE

lektra !

Ferroviaire

Nucléaire

! contrôle de procédé

Ballista

! U

nixM

afalda!

Μk T

-RC

oFF

EE!

Corba

Plan

•C

on

cepts d

e base

—D

éfinitions et notions de base (attributs,entraves),

—M

oyens (prévention, tolérance, élimination,

prévision) et mesures

•T

echn

iqu

es de to

l érance au

x fautes

—H

ypothèses de fautes,—

Techniques de base, stratégies de réplication

—S

olutions architecturales et exemples

•T

echn

iqu

es de caractérisatio

n—

Injection de fautes (principes, techniques)—

Analyse de robustesse, m

odes de défaillance—

Exem

ples d'outils et de résultatsexpérim

entaux

•S

ynth

èse et con

clusio

n.

B-1

Intro

du

ction

aux co

ncep

ts de b

aseet au

x mo

yens

Gén

éralités,D

éfinitio

ns et n

otio

ns d

e base (attrib

uts, en

traves),M

oyen

s (préven

tion

, toléran

ce, élimin

ation

, prévisio

n)

et mesu

res

B-2

Gén

éralités•

Les systèm

es ind

ustriels so

nt co

mp

lexes et do

nc so

um

is à des

entraves d

e fon

ction

nem

ent d

’orig

ine

—P

hysique, par exemple court circuit

—Logicielle, faute de program

mation

•D

eux ap

pro

ches:

—Z

éro-défaut : qualité des processus de production des matériels et

des logiciels permettant de réaliser des com

posants parfaits—

Sûreté de fonctionnem

ent:»

Les erreurs sont considérées com

me des événem

ents naturels etinévitables dans les systèm

es complexes

»L’objectif est de m

ettre en place des méthodes et des techniques

permettant de:

-M

inimiser leur présence

-T

olérer leur occurrence

-M

esurer l’efficacité des techniques utilisées

B-3

Co

ncep

ts•

Défin

ition

: P

ropriété d’un système inform

atique permettant à ses

utilisateurs de placer une confiance justifiée dans le service qu’il leur délivre

•A

ttribu

ts:—

Disponibilité: »

Capacité d

’un système à être prêt à l’utilisation

—F

iabilité:»

Capacité d

’un système à assurer la continuité de service

—S

écurité»

Innocuité: non-occurrence de défaillances catastrophiques

»C

onfidentialité: non-occurrence de divulgation non autorisée del’inform

ation—

Intégrité:»

Non-occurrence d

’altération inappropriée de l’information

—M

aintenabilité»

Capacité d

’effectuer des réparations et des évolutions•

Qu

antités m

esurab

les—

Disponibilité : m

oyenne du bon fonctionnement (T

ok /Ttotal )

—F

iabilité: Sachant que le systèm

e est ok à T0 , P

robO

K (T0 +δt)

B-4

Co

ncep

ts

PR

OP

RIE

TE

D'U

N S

YS

TE

ME

TE

LL

E Q

UE

SE

S U

TIL

ISA

TEU

RS

PU

ISS

EN

T P

LA

CE

R U

NE

CO

NF

IAN

CE

JUS

TIF

IEE

DA

NS

LE

SE

RV

ICE

QU

'IL L

EU

R D

EL

IVR

E

SE

CU

RIT

E-C

ON

FID

EN

TIA

LIT

E

SU

RE

TE

DE

FO

NC

TIO

NN

EM

EN

T

Absence

de conséquences catastrophiques

pour l'environnem

ent

Continuité

de serviceP

rêt à l'utilisation

Absence

de divulgations non-autorisées de l'inform

ation

Absence

d'altérations inappropriées de

l'information

Aptitude aux

réparations et aux

évolutions

SE

CU

RIT

E-

INN

OC

UIT

EF

IAB

ILIT

EC

ON

FID

EN

TIA

LIT

ED

ISP

ON

IBIL

ITE

INT

EG

RIT

EM

AIN

TE

NA

BIL

ITE

B-5

En

traves et causalité

•E

ntraves

—défaillance:

»déviation du service d

élivré par rapport aux spécifications

—erreur:

»P

artie du système susceptible de conduire à une d

éfaillance

—faute:

»C

ause adjugée ou supposée d’un erreur

•C

haîn

e causale fau

te-erreur-d

éfaillance

Faute

➱E

rreur➱

D

éfaillanceO

rigineE

tatS

ervice•

Mo

dèle récu

rsif:... D

éfaillance ➠ F

aute ➠ E

rreur ➠ D

éfaillance ➠ F

aute...—

Lorsque le système est com

posé de plusieurs composants, la

défaillance d’un composant due à une faute interne, est une faute

externe pour un autre composant avec lequel il interagit.

B-6

En

traves à la Sd

F

ER

RE

UR

: MA

NIF

ES

TA

TIO

N F

AU

TE

DA

NS

SY

ST

EM

ED

EF

AIL

LA

NC

E : M

AN

IFE

ST

AT

ION

ER

RE

UR

SU

R S

ER

VIC

E

DE

FA

ILL

AN

CE

DE

VIA

TIO

N D

U S

ER

VIC

E D

EL

IVR

E D

E

L'A

CC

OM

PL

ISS

EM

EN

T D

E L

A F

ON

CT

ION

DU

SY

ST

EM

E

PA

RT

IE D

E L

'ET

AT

DU

SY

ST

EM

E S

US

CE

PT

IBL

E

D'E

NT

RA

INE

R U

NE

DE

FA

ILL

AN

CE

CA

US

E S

UP

PO

SE

E O

U A

DJU

GE

E D

'UN

E E

RR

EU

R

AC

TIV

AT

ION

(INT

ER

NE

) OU

O

CC

UR

RE

NC

E (E

XT

ER

NE

)

PR

OP

AG

AT

ION

DEVIATION DE LA

CONFO

RMITE

A LA

SPECIFICATION

SERVICE CONFO

RME A

LA

SPECIFICATION, M

AISINACCEPTABLE

ER

RE

UR

FA

UT

E

B-7

Des en

traves… au

x méth

od

es

… D

éfaillances ➙

Fautes ➙

Erreurs

➙ D

éfaillances ➙

Fautes …M

aintenabilitéC

onfidentialitéIntegrité

FiabilitéD

isponibilitéS

écurité-innocuité

Préventionde fautes

Toléranceaux fautes

Elim

inationdes fautes

Prévision

des fautes

B-8

Méth

od

es•

Le d

évelop

pem

ent d

’un

système sû

r de fo

nctio

nn

emen

t passe p

arl’u

tilisation

com

bin

ée d’u

n en

semb

le de m

étho

des q

ui p

euven

têtre classées en

:—

prévention de fautes :»

comm

ent emp

êcher l’occurrence ou l’introduction de fautes ;

—tolérance aux fautes :»

comm

ent fournir un service à mêm

e de remplir la fonction du systèm

een dépit des fautes ;

—élim

ination des fautes :»

comm

ent réduire la présence (nombre, sévérité) des fautes ;

—prévision des fautes :»

comm

ent estimer la présence, la création et les conséquences des

fautes.

Techniques de

genie logiciel

Techniques de redondance

Techniques de test, injection de fautes

Techniques de m

odélisation, évaluation

B-9

reté de fo

nctio

nn

emen

t•

En

traves à la sûreté d

e fon

ction

nem

ent :

»fautes, erreurs, d

éfaillances ; elles sont les circonstances indésirables;

•M

oyen

s po

ur la sû

reté de fo

nctio

nn

emen

t :»

prévention de fautes,

»tolérance aux fautes,

Ȏlim

ination des fautes,

»prévision des fautes ;

Il s’agit des méthodes et techniques perm

ettant de fournir ausystèm

e l’aptitude à délivrer un service conforme à

l’accomplissem

ent de sa fonction, et de donner confiance danscette aptitude ;

•A

ttribu

ts de la sû

reté de fo

nctio

nn

emen

t :—

disponibilité, fiabilité, sécurité_innocuité, confidentialité, intégrité,m

aintenabilité ;

—ils perm

ettent a) d’exprimer les propriétés qui sont attendues du

système, et b) d’apprécier la qualité du service délivré, telle que

résultant des entraves et des moyens de s’y opposer.

B-10

Arb

re de la S

dF

RE

DE

FO

NC

TIO

NN

EM

EN

T

AT

TR

IBU

TS

DIS

PO

NIB

ILITÉ

FIA

BILIT

É

CU

RIT

É - IN

NO

CU

ITÉ

CO

NF

IDE

NT

IALIT

É

INT

ÉG

RIT

É

MA

INT

EN

AB

ILITÉ

PR

ÉV

EN

TIO

N D

E F

AU

TE

S

TO

LÉR

AN

CE

AU

X F

AU

TE

S

ÉLIM

INA

TIO

N D

ES

FA

UT

ES

PR

ÉV

ISIO

N D

ES

FA

UT

ES

MO

YE

NS

EN

TR

AV

ES

FA

UT

ES

ER

RE

UR

S

FA

ILLAN

CE

S

B-11

DIS

PO

NIB

ILIT

E / F

IAB

ILIT

E

SE

CU

RIT

E - IN

NO

CU

ITE

CO

NF

IDE

NT

IAL

ITE

ER

RE

UR

S

FA

UT

ES

Ph

ysiqu

es / Du

es à l'ho

mm

eA

cciden

telles / Inten

tion

elles no

n-m

alveillantes / M

alveillantes

De d

évelop

pem

ent / O

pératio

nelles

Intern

es / Extern

esP

erman

entes / T

emp

oraires

DE

FA

ILL

AN

CE

S

En

valeur / T

emp

orelles

Co

nh

érentes / In

con

héren

tesB

énig

nes / C

atastrop

hiq

ues

PR

EV

EN

TIO

N

DE

FA

UT

ES

TO

LE

RA

NC

EA

UX

FA

UT

ES

EL

IMIN

AT

ION

DE

S F

AU

TE

S

PR

EV

ISIO

ND

ES

FA

UT

ES

Evalu

ation

Ord

inale

Evalu

ation

Pro

bab

ilisteM

od

élisation

/ Test

Fiab

ilité stabilisée / F

iabilité évo

lutive

MA

INT

EN

AB

ILIT

E

INT

EG

RIT

E

SURETEDEFONCTIONNEMENT

Co

nfo

rmité / R

echerch

e de fau

tesF

on

ction

nel / S

tructu

relB

asé fautes / B

asé critèresD

étermin

iste / Aléato

ire

Traitem

ent

d'erreu

rs

Détectio

n

Traitem

ent

de fau

tes

Diag

no

stic

Passivatio

n

Reco

nfig

uratio

n

Vérificatio

n

Diag

no

stic

Mo

dificatio

n

Statiq

ue

An

alyse statiqu

e

Preu

ve

Dyn

amiq

ue

Exécu

tion

Sym

bo

liqu

e

Test

Diag

no

stic

Reco

uvrem

ent

Rep

riseP

ou

rsuite

Co

mp

ensatio

n

ATTRIBUTSMOYENSENTRA

VES

J.C. Laprie et al.,

Guide de la S

ûreté de Fonctionnem

ent, C

épaduès Editions, 1995

$

B-12

Classes d

e fautes

•Q

uatre g

rand

es classes de fau

tes et d’erreu

rs :—

les fautes physiques

—les fautes de conception ;

—les erreurs de l’opérateur ;

—les intrusions.

•N

otio

n d

e détectio

n: b

arrières tentan

t d’em

pêch

er qu

e l’activation

d’u

ne fau

te sou

s la form

e d’u

ne erreu

r ne co

nd

uise à la

défaillan

ce du

système p

ar pro

pag

ation

.—

codes détecteurs d’erreur ;—

duplication et comparaison ;

—contrôles tem

porels et d’exécution ;—

contrôles de vraisemblance ;

—contrôles de données structurées.

•N

otio

n d

e recou

vremen

t d’erreu

r: tentative d

e restauratio

n d

’un

état exemp

t de fau

te

B-13

Path

olo

gie d

es fautes

—U

ne faute est active lorsque l’erreur correspondante apparaît

—U

ne faute est dormante lorsque aucune erreur n’est observée

—U

ne erreur est latente tant qu’elle n’est pas détectée

temps

Faute

Erreur

Défaillance

Correction

Faute dorm

ante

Erreur latente

Latence d’erreurD

ormance de faute

B-14

Ph

éno

mèn

e de p

rop

agatio

n

FAUTEDO

RMANTE

ACTIVATION

DEFAILLANCEM

ATERIEL

ERREURPRO

GRAM

MEUR

PERTURBATION

ELECTROM

AGNETIQ

UE

ERREURO

PERATEUR

ERREUR

SERVICECO

RRECTSERVICE

INCORRECT

DEFAILLANCE

PROPAG

ATION

ERREURERREUR

PROPAG

.

INTERFACEDE

SERVICE

ERREUR

PROPAG

ATION

ERREURERREUR

PROPAG

.

B-15

Exem

ples d

e types d

e faute

—C

ourt-circuit dans un circuit (e.g. stuck-at) ➠ défaillance du circuit

(faute physique) ➠ erreur dans des cellules m

émoire ➠

défaillancedu systèm

e

—D

éfaillance d’un programm

er (faute de conception dans unprogram

me) ➠

activation par un profil activation donné ➠ erreurs

en sortie (en valeur ou temporelles) ➠

défaillance

—P

rogramm

eur malicieux qui insère une bom

be logique -cheval deT

roie (faute malicieuse) ➠

activation à une date, selon ceratinesconditions opérationnelles ➠

deny de service

—perturbations électrom

agnétiques (faute physique externe ) ➠erreur m

émoire/registres ➠

défaillance

—fautes d’opérateurs du systèm

e (faute d’interaction accidentelle)

—fautes de docum

entation (d’un composant) ➠

faute d’interaction oude conception dans les couches hautes du systèm

e ➠ défaillance

B-16

Exem

ples d

e casréels o

bservés

massives

de

fus

ées soviétiq

ues

au N

OR

AD

✔✔

✔Ju

in 1985 -

Janvier

1987 : Do

ses excessives

de

radio

thérap

ie (T

herac

-25)

✔✔

✔✔

Ao

ût 1986 - 1987 : L

e "Wily h

acker" p

énètre

des

dizain

es d

e cen

tres info

rmatiq

ues sen

sibles

✔✔

✔15

Janvier

1990 : In

disp

on

ibilité

totale d

u télép

ho

ne

interu

rbain

aux

Etats

-Un

is, p

end

ant 9 h

eures

✔✔

✔✔

✔F

évrier 1991 : S

cud

raté p

ar un

Patrio

t à D

hah

ran

✔✔

✔✔

✔N

ovem

bre

1992 : E

crou

lemen

t d

es com

mu

nicatio

ns

du

service d

'amb

ulan

ces d

e L

on

dres

✔F

évrier 2000 : E

ng

org

emen

t po

rtails W

eb✔

✔✔

17 Ju

illet 1997: M

élan

ge d

es ad

resses du

d

om

aine

intern

et .com

✔✔

✔13

Avril 1998 :

Ecro

ulem

ent d

u réseau

de

do

nn

ées d'A

T&

T✔

✔✔

4 Ju

in 1996 :

Défaillan

ce du

vol

501 d

'Arian

e 5

✔✔

✔ ✔✔

✔✔

26 et 27 Ju

in 1993 : R

efus

des

cartes d

e créd

it d

ans

les d

istribu

teurs

de

mo

nn

aie en

Fran

ce

✔✔

✔Ju

in 1980 :

Fau

sses alertes à d

es attaq

ues

Fau

tesE

rreurs

Physiques

Conception

Interaction

Localisées

Distribuées

Disponibilité/ Fiabilité

Sécurité- Innocuité

Confidentialité

B-17

Co

ût d

e la no

n S

dF

•C

t mo

yen d

’ind

ispo

nib

ilité (CA

perd

u d

ans les b

anq

ues,

assuran

ces, assuran

ce malad

ie, com

merce d

e gro

s, bo

urse,

réservation

s, etc.): 78000 $/h

•C

t des d

éfaillances in

form

atiqu

es—

Fautes accidentelles $

F

rance: 0,9 G €

U

SA

: 4 G $

—M

alveillances $

F

rance: 1 G €

UK

: 1,25 G £

•C

ou

t de la m

ainten

ance:

—Logiciel em

barqué de la navette spatiale: 100 M $ / an

•C

t des lo

giciels ab

and

on

nés

—A

ux US

A, de l’ordre de 80 G

$

—E

xemple: F

AA

AA

S (contrôle aérien)

»1983: 1 G

$ - 1988: 4G$ - 1994: 7G

$

»D

érapage temporel estim

é en 1994 de l’ordre de 6-8 ans

B-18

Classificatio

n d

es fautes

PERSISTEN

CE

FAU

TES PER

MA

NEN

TES

FAU

TES TEM

POR

AIR

ES

DIM

EN

SIO

NFA

UTES

MA

TERIELLES

FAU

TES LO

GIC

IELLES

FAU

TES N

ATUR

ELLES

FAU

TES D

UES A

L'HO

MM

E

CA

US

EPH

ENO

MEN

OLO

GIQ

UE

FRO

NTIER

ES SYSTEME

FAU

TES IN

TERN

ES

FAU

TES EXTER

NES

PHA

SE DE C

REA

TION

O

U D

'OC

CU

RE

NC

EFA

UTES

DE D

EVELOPPEM

EN

T

FAU

TES O

PERATIO

NN

ELLES

FAU

TES

FAU

TES D

ELIBER

EMEN

T MA

LVEILLAN

TES

FAU

TES A

CC

IDE

NTELLE

S OU

DELIB

EREE

S SAN

S M

ALVEILLA

NC

E IN

TENTIO

N

Conception, réalisation

En exploitation

Etat interne du systèm

e

Provenant de l’environnem

ent

Com

posants, liens physiques

Program

mes ou donn

ées

Aggression

, usure…

No

bo

dy

’s perfect…

Bad

Gu

ys…

Non liées à des conditions

Dépendantes de conditions

B-19

FA

UT

ES

PH

YS

IQU

ES

FA

UT

ES

D'IN

TE

RA

CT

ION

FA

UT

ES

DE

CO

NC

EP

TIO

N

FA

UT

ES

NA

TU

RE

LL

ES

FA

UT

ES

DU

ES

A L

'HO

MM

E

FA

UT

ES

EX

TE

RN

ES

FA

UT

ES

INT

ER

NE

S

FA

UT

ES

PE

RM

AN

EN

TE

S

FA

UT

ES

TE

MP

OR

AIR

ES

FA

UT

ES

LO

GIC

IEL

LE

S

FA

UT

ES

MA

TE

RIE

LL

ES

FA

UT

ES

OP

ER

AT

ION

EL

LE

S

FA

UT

ES

DE

DE

VE

LO

PP

EM

EN

T

FA

UT

ES

DE

LIB

ER

EM

EN

T

MA

LV

EIL

LA

NT

ES

FA

UT

ES

AC

CID

EN

TE

LL

ES

OU

D

EL

IBE

RE

ES

SA

NS

MA

LV

EIL

LA

NC

E

!! !!

!! !!!! !!

!! !!!! !!

!! !!

!! !!!! !!

!! !!

!! !!!! !!

!! !!

!! !!!! !!

!! !!!! !!

!! !!

!! !!!! !!

!! !!

!! !!!! !!

!! !!!! !!

!! !!

!! !!!! !!

!! !!

!! !!!! !!

!! !!!! !!

!! !!

!! !!

!! !!

!! !!

!! !!

!! !!

!! !!!! !!

!! !!!! !!

!! !!!! !!

!! !!

!! !!!! !!

!! !!

!! !!!! !!

!! !!!! !!

!! !!

!! !!!! !!

!! !!

!! !!!! !!

!! !!

!! !!!! !!

!! !!!! !!

!! !!

!! !!!! !!

!! !!!! !!

!! !!!! !!

!! !!!! !!

!! !!

!! !! !! !!!! !! !! !! !! !!!! !!!! !!

!! !!!! !!

!! !!

!! !!

!! !!!! !!

!! !!!! !!

!! !!!! !!IN

TR

US

ION

AT

TA

QU

EL

OG

IQU

EM

AL

IGN

E

DE

FA

UT

LO

FIC

EL

DE

FA

UT

M

AT

ER

IEL

INT

ER

FE

RE

NC

EP

HY

SIQ

UE

DE

FA

UT

DE

PR

OD

UC

TIO

N

EN

TR

EE

ER

RO

NE

ED

ET

ER

IOR

AT

ION

PH

YS

IQU

EV

IRU

S&

VE

R

DE

FA

UL

TL

OG

ICIE

L

B-20

Les m

od

es de d

éfaillance

•L

e système n

e défaille p

as tou

jou

rs de la m

ême faço

n➠

mo

des d

e défaillan

ce

Déclen

chem

ent airb

ag 1h

après ch

oc

DO

MA

INE

DE

FA

ILL

AN

CE

S E

N V

AL

EU

R

DE

FA

ILL

AN

CE

S T

EM

PO

RE

LL

ES

DE

FA

ILL

AN

CE

S C

AT

AS

TR

OP

HIQ

UE

S

CO

NS

EQ

UE

NC

ES

SU

R E

NV

IRO

NN

EM

EN

T

DE

FA

ILL

AN

CE

S B

EN

IGN

ES

•• •

CO

NT

RO

LA

BIL

ITE

DE

FA

ILL

AN

CE

S C

ON

TR

OL

EE

S

DE

FA

ILL

AN

CE

S IN

CO

NT

RO

LE

ES

CO

HE

RE

NC

E

DE

FA

ILL

AN

CE

S C

OH

ER

EN

TE

S

DE

FA

ILL

AN

CE

S IN

CO

HE

RE

NT

ES

DE

FA

ILL

AN

CE

S

Facto

rielle de 3 =

975

Erro

r status

, exceptio

n, alarm

e

J’AI R

IEN

VU

! No

n d

étection

!

Mo

de d

e défaillan

ce adm

issible

Mo

de d

e défaillan

ce INad

missib

le

Pas g

rave!

DE

GR

OS

DE

GA

TS

!!!!!

B-21

Les m

od

es de d

éfaillance

•L

e système n

e défaille p

as tou

jou

rs de la m

ême faço

n➠

mo

des d

e défaillan

ce

DO

MA

INE

DE

DE

FA

ILL

AN

CE

Valeu

r et tem

po

risation

Tem

po

risation

(valeur

correcte)

Service

interro

mp

u

DE

FA

ILL

AN

CE

S

PA

R A

RR

ET

Service

erratiqu

e

DE

FA

ILL

AN

CE

S

ER

RA

TIQ

UE

S

Service en

avan

ce

DE

FA

ILL

AN

CE

S

TE

MP

OR

EL

LE

S

AV

AN

CE

Service en

retard

DE

FA

ILL

AN

CE

S

EN

P

ER

FO

RM

AN

CE

Valeu

r(tem

po

risation

correcte)

DE

FA

ILL

AN

CE

S

EN

VA

LE

UR

B-22

Les m

od

es de d

éfaillance

•L

e système n

e défaille p

as tou

jou

rs de la m

ême faço

n➠

mo

des d

e défaillan

ce

CO

NT

RO

LA

BIL

ITE

DE

S D

EF

AIL

LA

NC

ES

failla

nc

es

tec

tée

sD

éfa

illan

ce

sn

on

tec

tée

s

DE

FA

ILL

AN

CE

S

CO

NT

RO

LE

ES

Se

rvic

e s

elo

n m

od

es

d

éfa

illan

ce

a

dm

iss

ible

s

Se

rvic

e s

elo

n m

od

es

d

éfa

illan

ce

in

ad

mis

sib

les

DE

FA

ILL

AN

CE

S

SIG

NA

LE

ES

DE

FA

ILL

AN

CE

S

NO

N S

IGN

AL

EE

SF

AU

SS

EA

LA

RM

E

Se

rvic

e

inc

orre

ct

Se

rvic

ec

orre

ct

B-23

Systèm

es à défaillan

ce con

trôlée

SY

ST

EM

ES

A D

EF

AIL

LA

NC

ES

CO

NT

RO

LE

ES

DE

FA

ILL

AN

CE

SC

OH

ER

EN

TE

SD

EF

AIL

LA

NC

ES

BE

NIG

NE

S

SY

ST

EM

E S

UR

EN

PR

ES

EN

CE

DE

D

EF

AIL

LA

NC

E

FA

IL-SA

FE

SY

ST

EM

DE

FA

ILL

AN

CE

SP

AR

AR

RE

T

SY

ST

EM

EA

SIL

EN

CE

SU

R

DE

FA

ILL

AN

CE

ST

OP

PIN

GF

AILU

RE

FA

IL-SILE

NT

S

YS

TE

M

FIG

EM

EN

TE

TA

T S

OR

TIE

S

SILE

NC

E(A

BS

EN

CE

EV

EN

EM

EN

T)

SY

ST

EM

EA

AR

RE

T S

UR

DE

FA

ILL

AN

CE

FA

IL-HA

LTS

YS

TE

M

SY

ST

EM

EA

FIG

EM

EN

TS

UR

DE

FA

ILL

AN

CE

FA

IL-PA

SS

IVE

S

YS

TE

MS

YS

TE

ME

A

DE

FA

ILL

AN

CE

SC

OH

ER

EN

TE

S

Com

ment rendre un service acceptable

en dépit de l’occurrence de fautes?-A

rrêt sur défaillance-D

éfaillance contrôlée (mode dégradés)

-Sûreté en présence de défaillance

B-24

Statistiq

ues d

e défaillan

ces•

Défaillan

ces acciden

telles—

Causes

—F

réquences

—D

ensité de fautes de conception»

Fautes crées durant le d

éveloppement: 10-300 / kLoC

»F

autes résiduelles en opération: 0,01 - 10 / kLoC

•M

alveillances [E

rnst &

Yo

un

g 1998; 1200 so

ciétés dan

s 32 pays]

—S

ociétés ayant souffert d’au moins un fraude en un an: 66%

—S

ociétés ayant souffert de plus de 5 fraudes en un an: 17%»

85% de fraudes perp

étrées par des employés

Fautes physiques internes

≈10%F

autes physiques environnementales

≈10%F

autes d’interaction homm

e/système

≈20%F

autes de conception≈60%

Co

mp

osan

t in

form

atiqu

eS

ystème to

lérant

les fautes

Fau

tes ph

ysiqu

es perm

anen

tes≈1 an

20-100 ansF

autes in

termitten

tes qq.h /qq sem

.>

10 ans

B-25

Les m

oyen

s

B-26

Les m

oyen

s•

Préven

tion

des fau

tes»

Toutes les m

éthodes pour améliorer les processus de production du

logiciel et du matériel

•T

oléran

ce aux fau

tes»

Mécanism

es pour assurer un service correct en présence de fautes

•E

limin

ation

des fau

tes:»

Techniques perm

ettant de réduire la présence des fautes

•P

révision

des fau

tes:»

Techniques pour estim

er le nombre et les conséquences de fautes

« résiduelles ».

B-27

La to

lérance au

x fautes

•D

eux n

otio

ns essen

tielles—

Le traitemen

t d’erreu

r: éliminer l’erreur avant défaillance

—Le traitem

ent d

e faute: éviter la ré-activation des fautes

Faute

Erreur

Défaillance

Traitem

ent d’erreur

Latence de faute

Latenced’erreur

Traitem

ent d

’erreur + traitem

ent d

e faute = to

lérance au

x fautes

{détection

recouvrement

B-28

Traitem

ent d

’erreur

•D

étection

,—

Identification d’un état erroné dans le système

•D

iagn

ostic,

—A

nalyse permettant de déterm

iner les causes et les domm

agescausés par l’erreur

•R

ecou

vremen

Recouvrem

ent arrière:

-R

amener le systèm

e dans un état antérieur exempt de faute,obtenu

avant l’occurrence de l’erreur (notion de points de reprise)

»R

ecouvrement avant:

-D

éterminer un nouvel état à partir duquel on sait que le systèm

e peutfonctionner (notion de m

ode dégradé)

•C

om

pen

sation

:—

Disposer de suffisam

ment de redondance en dépit de l’état erroné

pour le transformer en un état exem

pt d’erreur (techniques dem

asquage de faute, par vote majoritaire, par exem

ple)

B-29

Traitem

ent d

’erreur

Reco

uvrem

ent arrière

Reco

uvrem

ent avan

tC

om

pen

sation

Service O

K

Décision

Service O

K

Point de

reprise

Etat de

reprise?

Service O

K

Nouvel

État de

reprise

B-30

No

tion

de m

od

èle de fau

te•

Qu

elles son

t les fautes q

ue l’o

n so

uh

aite traiter?—

Physiques, C

onception, Malicieuses

—Q

uels sont leurs effets, c’est-à-dire les erreurs qu’elles provoquent

•E

xemp

les vis-à-vis de fau

tes ph

ysiqu

es—

Arrêt sur défaillance

—O

missions

—E

rreurs en valeur

•E

xemp

les vis-à-vis de fau

tes du

log

iciel—

Erreur de conception

—E

rreur de codage

—E

rreur de ressources

L’erreu

r a con

du

it a l’arrêt d

u co

mp

osan

t ➠b

asculem

ent su

r un

com

po

sant id

entiq

ue co

rrect

L’erreu

r a con

du

it à la p

erte d’u

n m

essage ➠

pro

toco

le de rép

étitio

n o

u d

e diffu

sion

fiable

L’erreu

r a con

du

it à la co

rrup

tion

d’u

ne valeu

r enso

rtie ➠ m

écanism

e de co

mp

ensatio

n d

’erreur

Fau

te de co

ncep

tion

par rap

po

rt aux sp

écification

s“co

rrectes” ➠

diversificatio

n

Fau

te de p

rog

ramm

ation

➠ d

iversification

Défau

t de resso

urce ➠

ré-exé

cutio

n su

r autre

sup

po

rt d’exé

cutio

n

B-31

Tech

niq

ues classiq

ues

•A

rchitectu

re du

plex

PS

Fonctionnem

ent normal

crash

Fonctionnem

ent après basculement

PS

basculement

•R

emarq

ues im

po

rtantes su

r les hyp

oth

èses:—

Les sorties du primaire P

sont considérées comm

e correctes tantqu’un crash n’a pas été détecté

—S

i un crash est détecté, on considère que le composant P

est àsilence sur défaillance, c’est-à-dire sans propagation d’erreur

—C

eci impose :

»que toute erreur interne est confin

ée dans P (idem

S)

»un protocole de surveillance signalant à S

le crash de P

B-32

Tech

niq

ues classiq

ues

•A

rchitectu

re TM

R (T

riple Modular R

edundancy)

C1

C2

Fonctionnem

ent normal

crash

•R

emarq

ues im

po

rtantes su

r les hyp

oth

èses :—

Les entées sont identiques: valeurs et séquence d’entrée

—Le crash est considéré com

me une absence de réponse

—P

armi les réponses fournies, la valeur m

ajoritaire est considéréecom

me le résultat correct

—S

i les composants sont identiques, vote=

comparaison

—S

i les composants sont diversifiés, vote=

algorithme de décision

C3

V

XY

Y

Y

B-33

Elim

inatio

n d

es fautes

•M

étho

des d

e test—

Identification des fautes dans le composants m

atériels et logiciels

—A

pproches

»D

éterministes

: choix sélectif pour couvrir un critère

»A

léatoires: tirage aléatoire des valeurs d

’entrées, selon un critère

•N

otio

n d

e critère :—

modèle structurel ou fonctionnel +

—élém

ents du modèle à activer

•G

énératio

n d

es vecteurs d

e test—

Exem

ple de critère: « toutes les branches »»

Cas d

éterministe

: choix « a priori » des valeurs d’entrées qui

permettent de passer dans chaque branche

»C

as aléatoire: génération de valeurs d’entrée (e.g. branches

équiprobables) et analyse de la couverture (toutes les branches)

—O

bservation des sorties»

Com

paraison avec une référence ➠ N

otion d’O

racle de test

B-34

Tech

niq

ues d

e vérification

•A

pp

lication

à la vérification

du

log

iciel: pratiq

ues actu

elles—

Revue de code, inspections à l’aide d’outils (com

pilateurs,analyseurs de code,etc.) ➠

identification d’erreur (var. non init.,interfaces incom

patibles, code mort, etc.)

—S

pécification formelle +

spécification formelle langage +

règlesd’inférences

—A

utomates à états finis, réseaux de P

etri, StateC

harts

—Le test (en particulier du logiciel)

vérification

statique

dynamique

Analyse statique (du code)

Preuve m

athématique

Analyse du com

portement

Exécution sym

bolique

Test

B-35

Test d

u lo

giciel

•C

ritères test structu

rel:—

Technique s’appuyant sur le graphe de contrôle du program

me

—A

u moins une fois, toutes les instructions, toutes les branches

•C

ritère test fon

ction

nel:

—N

otion de classes d’équivalence des entrées (valides/invalides)

—V

aleurs aux limites

—M

achines à états finis: couvrir les états, les transitions, les deux

déterministe

statistique

déterministe

statistique

Structurel

Boîte blanche

Fonctionnel

Boîte noire

Choix

sélectif

Choix

aléatoire

Complémentaire

Selon com

plexité du programm

e

Le test est plus facilement autom

atisable si l’on dispose d’un modèle

comportem

ental du système ou de la fonction

B-36

Test d

u lo

giciel

•T

ypes d

e tests—

Test unitaire: application de séquences de test à un com

posantisolé

—T

est d’intégration: agrégation progressive des composants

—Le problèm

e de l’Oracle: décision O

K / non O

Test dos-à-dos basé sur les d

éveloppements diversifiés (pb. fautes

corrélées)

»S

pécifications form

elles exécutables, mod

èles comportem

entaux,sim

ulation

Em

ulation de l’environnem

ent(bouchons)

Driver de test

Oracle

Com

posant sous test

Entrées de test

Sortie

B-37

Driver.output

Au

mo

ins u

ne fo

is To

utes les b

ranch

es

Fu

nctio

n L

and

ing

Co

ntro

l (integ

er: speed

; integ

er: alt)

B1

Speed >

400

B2

B2

Alt >

1000

B3

yes

yes

no

no

Engines

Alt.

Control

Stub

Engines

Stub

AltC

ontrol

Driver.input

speed=300; alt=

900

Oracle:

Ab

ort

Landing

speed=500; alt=

*

speed=300; alt=

1200

Test structurel

Déterm

inisteB

oîte blancheB-38

Test d

e la toléran

ce aux fau

tes•

Les m

écanism

es de to

lérance au

x fautes so

nt à la fo

is—

Faillibles (fautes de conception et/ou de réalisation)

—C

onçus pour traiter des entrées spécifiques: les fautes!$

leur vérificatio

n est essen

tielle!•

L’ap

pro

che exp

érimen

tale par in

jection

de fau

tes—

Sim

ulation des fautes, ou plutôt de leurs effets, les erreurs»

physiques (bit-flip) ou du logiciel (mutation d

’instruction)

—C

ibles: un composant logiciel équipé de son m

écanisme de T

AF

»B

oite blanche: visibilité structurelle (comm

ent il est fait) etcom

portementale (com

ment il agit/ré-agit)

»B

oite noire: aucune connaissance, seules les interfaces sont visibles

—Les types d’injection:

»niveau physique(stuck-at), m

odèle (V

HD

L) ou par logiciel (SW

IFI)

—Les problèm

es:»

Représentativité des fautes

»O

bservation et analyse des résultats.

B-39

Lo

giq

ue &

Info

rmatio

n

Ph

ysiqu

e

SY

ST

ÈM

E C

IBL

E

Mo

dèle

Pro

totyp

e

MOYEN

injectio

n

en sim

ulatio

n

injectio

n

en lo

giciel

injectio

np

hysiq

ue

uds ➠ O

RC

HE

STR

Atâche ➠

FIAT

instr. ➠ FE

RR

AR

Im

ém. ➠

DE

F.I, DIT

A,

MA

FAL

DA

Reg. ➠

Xception

ions lourds ➠ U

niversité Chalm

ersperturbations E

M ➠

TU

Vienne

broches ➠ M

ESSA

LIN

E, Scorpion,

DE

FOR

, RIFL

E, A

FIT,...

système ➠

DE

PEN

D, R

EA

CT

, ...niveau R

TL

➠ A

SPHA

LT

, ...porte logique ➠

Zycad, T

echnost, ...circuit ➠

FOC

US, ...

...large spectre ➠ M

EFIST

O,

VE

RIFY

(VH

DL

)

Les tech

niq

ues d

’injectio

n d

e fautes

B-40

Prévisio

n d

es fautes

•T

echn

iqu

es classiqu

es: AM

DE

(C) – A

nalyse d

es Mo

des d

eD

éfaillance et leu

r Effet (et d

e leur C

riticité)—

Analyse pour chaque com

posant de l’effet des erreurs

—Identification des m

odes de défaillance—

Conséquence des défaillance au niveau systèm

e•

Prin

cipe

—É

tudier la structure du fonctionnelle du système

—A

u plus tôt dans le processus de développement (représentation

abstraite )—

Pour chaque com

posant:»

Causes possibles de d

éfaillance

»E

ffet sur le composant lui-m

ême et les canaux de propagation

»Identification des m

oyens de détection

»A

ctions correctrice ( en particulier si les conséquences sont catastrophiques)

—A

vantages: Identifier et modifier des lacunes conceptuelles

—Inconvénients: m

ultiplicité? Exhaustivité? C

omplexité?

B-41

Prévisio

n d

es fautes

•A

MD

EC

app

liqu

é au lo

giciel (A

EE

L: A

nalyse d

es Effets d

e Erreu

rsd

u L

og

iciel)—

Bâtie sur la spécification et la conception prélim

inaire

—Intérêts:

»G

uide pour la stratégies de détection et de tolérance aux fautes

»O

rientation des tests sur certains modules ou m

odes de défaillance

»C

ompréhension en exploitation de l’origine d’une défaillance

•N

otio

n d

’arbre d

e fautes

—R

echerche des combinaison possible d’événem

ents conduisant àun événem

ent indésirable, tel qu’un défaillance catastrophique—

Com

binaison des événements par des opérateurs logiques

—Intérêt: Identification des com

posants critiques sur lesquels detechniques de tolérance aux fautes du logiciel sont nécessaires

B-42

Exem

ple

X

YZO

U

ET

X

YZ

•S

oit le systèm

e S, fo

rmé d

es com

po

sants X

, Y et Z

selon

un

schém

a d’in

tercon

nexio

n (in

terdép

end

ance)

•S

défaille si:

—X

défailleO

U—

Y E

T Z

défaillent

•D

eux rep

résentatio

ns éq

uivalen

tes

B-43

Evalu

ation

de la S

dF

Distrib

utio

ns en

fon

ction

du

temp

s, temp

s mo

yens,...

•R

eliability (fiab

ilité) ➡ co

ntin

uité d

u service (sonde spatiale,...)

—M

TF

F ➡

temps m

oyen avant la 1ère défaillance,...

•A

vailability (d

ispo

nib

ilité) ➡ p

aré à assurer le service

•S

afety (sécurité-in

no

cuité) ➡

no

n o

ccurren

ce de d

éfaillances

catastrop

hiq

ues (transport,...)

Service

correct

Service

inco

rrect

Défaillan

ce

Restau

ration

Service

correct

Service

inco

rrect(benign)

Défaillan

ce bén

ign

e

Restau

ration

Service

inco

rrect(catastr.)

Défaillan

ce catastrop

hiq

ue

B-44

Su

r les types d

e mo

dèles

•D

iagram

mes d

e fiabilité A

rbres d

e fautes

•C

haîn

es Marko

v con

t. Rés. P

etri Sto

chastiq

ues g

énéralisé

λ = taux d

e défaillan

ce =

1/ temp

s mo

yen en

tre défaillan

ce

µ = taux d

e restauratio

n

= 1/ tem

ps m

oyen

de rép

aration

XYZ

OU

ET X

YZ

21

µ 2 λλ

M[P

1]*λ

P1

P2

µ

B-45

Intro

du

ction

aux m

esures d

e base

•F

iabilité (R

eliability):—

Mesure de la délivrance continue d’un service correct, donc du

temps jusqu’à défaillance

•D

ispo

nib

ilité (Availability):

—M

esure de la délivrance d’un service correct par rapport àl’alternance « service correct – service incorrect », donc de lasuccession des défaillances et des restaurations

•D

es exemp

les de sym

bo

les—

MT

FF

: Mean T

ime to F

irst Failure, M

TT

F: M

ean Tim

e To F

ailure—

MT

BF

: Mean T

ime B

etween F

ailures

—M

TT

R : M

ean Tim

e to Repair

•D

es estimateu

rs statistiqu

es (mo

yenn

es arithm

étiqu

es)—

N(0): nb de systèm

es de l’échantillon

—N

(t): nb de systèmes non défaillants à l’instant t

—N

1 (t): nb de systèmes n’ayant pas défaillis depuis l’instant initial

B-46

Mesu

res / estimateu

rs statistiqu

es•

Fiab

ilité (Reliability):

R(t) =

probabilité{S non d

éfaillant sur [0,t]}F

onction non croissante sur [0, ∞[

Estim

ateur statistique de R(t) =

N1 (t)/ N

(0)

•D

ispo

nib

ilité (Availability):

A(t) =

probabilité{S non d

éfaillant à l’instant t}La disponibilité concerne les systèm

es réparables

Estim

ateur statistique de R(t) =

N(t)/ N

(0)

•M

ainten

abilité (M

aintainability)

M(t) =

1- probabilité {S non réparé sur [0,t]}

Sachant qu’il est défaillant à l’instant t=

0

•C

alcul d

es MT

TF

et MT

TRMT

TF

= ∫0 ∞

R(t) dt

MT

TR

= ∫0 ∞ M

(t) dt

Nb

de systèm

es n’ayan

tp

as défaillis d

epu

is t0

Nb

total

de systèm

es

Nb

de systèm

es no

nd

éfaillants à l’in

stant t

Nb

total

de systèm

es

B-47

Fiab

ilité•

Le tau

x de d

éfaillance d

’un

système à l’in

stant t est d

éfini p

ar:

Λ(t)=

lim∆

t➝0 P

robabilité { }

La connaissance de la fonction Λ(t) est équivalente à celle de R

(t)

par :R

(t)= exp

∫0 t Λ(u) du

En considérant que Λ

(t) se réduit à une constante notée λalors :

R(t)=

e-λt

•A

llure typ

iqu

e de la fiab

ilité (stabilisée)

Prob {k+

1ièm

edef.<u}=

Prob {k

ièmedef.<

u}

Le systèm

e tombe en panne entre t et t+∆

tS

achant qu’il n

’y a pas eu de défailance sur [0,t]

10

R(u

)

u

du

plex

simp

lex

TM

R

t1t2

t3

B-48

Fiab

ilité•

Le tau

x de d

éfaillance d

’un

système à l’in

stant t est d

éfini p

ar:

Λ(t)=

lim∆

t➝0 P

robabilité { }

La connaissance de la fonction Λ(t) est équivalente à celle de R

(t)

par :R

(t)= exp

∫0 t Λ(u) du

En considérant que Λ

(t) se réduit à une constante notée λalors :

R(t)=

e-λt

•A

llure typ

iqu

e de la fiab

ilité (stabilisée)

Le systèm

e tombe en panne entre t et t+ ∆

tS

achant qu’il n

’y a pas eu de défailance sur [0,t]

10

R(u

)

u

du

plex

simp

lex

TM

R

t1t2

t3

21

2 λλ

du

plex

simp

lex

TM

R

MT

FF

5/6λ

3/2λ

λ

32

3 λ2 λ

B-49

No

tion

de co

uvertu

re•

Efficacité d

e la toléran

ce et fautes

Notion de couverture C

= P

rob

{traitemen

t correct | erreu

r}

Sach

ant q

u’il y a eu

un

e erreur, q

uelle est la p

rob

abilité d

’ob

tenir u

ntraitem

ent co

rrect?

Su

pp

oso

ns q

u’il y ait 10 erreu

rs dan

s un

système p

arfaitemen

to

bservab

le, ou

bien

qu

e l’on

ait injecté 10 fau

tes qu

i on

t été activéeset o

nt co

nd

uit à 10 erreu

rs:

• si on

détecte 10/10 alo

rs

C=

1 (100% d

e résultats co

rrects)

• si on

détecte 9/10 alo

rs

C=

0.9 (90% d

e résultas co

rrects)

Qu

elle est l’influ

ence d

e C (la cap

acité de d

étecter des erreu

rs) sur la

fiabilité d

’un

système d

up

lex?

2 λλ

12

Ch

aîne d

e Marko

v

Détectio

n p

arfaite

B-50

Cas d

’un

système d

up

lex•

Efficacité d

e la toléran

ce et fautes

Notion de couverture C

= P

rob

{traitemen

t correct | erreu

r}

2 c λλ

2 (1-c) λ

12

xS

2

S1

Systèm

e « du

plex »

Ch

aîne d

e Marko

v

210-4

10-3

10-2

c = .95

c = .9

c = .99

c = .995

c = .999

c = 1

101

10 10 104

1

3M

TT

F Syst.

MT

TF C

om

p.

λµM

TT

R

MT

TF

Co

mp

.=

Co

mp

.

$ S

i C est proche de 1 alors la fiabilité du systèm

e duplex/simplex est

bonne ➠ M

TT

F(S

ystème) ≈ 1000*M

TT

F(C

om

po

sant) si µ >> λ.

$ S

i C est proche de 0.9 alors la fiabilité du systèm

e duplex…..!!!!!!!

1/λ est grand (e.g. des mois) devant

1/µ (1 heure), donc λ/µ est petit

B-51

Cas d

’un

système T

MR—

4 CT,1 λ

N

12

3

4

µµ 2 λ

4 λ +H

4 C

T λ N

3 λ +H

3 CT

λ N

4 ( C —T,2 +

C —T,3 ) λ N

N3 C —

T λ

N

Mo

dèle

NA

CN

AC

NA

CN

AC

"en réserve"

Anneau à jeton

Hôte

Hôte

Hôte

Hôte

Arch

itecture

MT

FF

réseauM

TF

F statio

n

10 10 10

λ/µ

+1 +2

+310-4

10-3

10-2

NA

C V

2

NA

C V

1

NA

C V

3

NA

C D

up

lex - V4

La d

étection

-extraction

esteffectu

ée par les N

AC

avecu

ne co

uvertu

re imp

arfaite

Facteu

rs de co

uvertu

rem

esurés exp

érimen

talemen

tsu

r le système p

ar des

techn

iqu

es d’in

jection

de

fautes

Mo

délisatio

nE

xpérien

ce

B-52

La su

ite•

Arch

itecture d

es systèmes to

lérant au

x fautes

—T

echniques de base

—S

olutions architecturales—

Exem

ples de systèmes

•C

aractérisation

de la sû

reté de fo

nctio

nn

emen

t des systèm

es—

Techniques de base

—O

utillages

—E

xemple de résultats expérim

entaux

C-1

Tech

niq

ues d

e toléran

ce aux

fautes

Hyp

oth

èses de fau

tes,tech

niq

ues d

e base et stratég

ies de rép

lication

etso

lutio

ns arch

itecturales

C-2

La to

lérance au

x fautes

•D

eux n

otio

ns essen

tielles—

Le traitemen

t d’erreu

r: éliminer l’erreur avant défaillance

—Le traitem

ent d

e faute: éviter la ré-activation des fautes

Faute

Erreur

Défaillance

Traitem

ent d’erreur

Latence de faute

Latenced’erreur

Traitem

ent d

’erreur + traitem

ent d

e faute = to

lérance au

x fautes

{détection

recouvrement

Rappel

C-3

Traitem

ent d

’erreur

•D

étection

,—

Identification d’un état erroné dans le système

•D

iagn

ostic,

—A

nalyse permettant de déterm

iner les causes et les domm

agescausés par l’erreur

•R

ecou

vremen

Recouvrem

ent arrière:

-R

amener le systèm

e dans un état antérieur exempt de faute, obtenu

avant l’occurrence de l’erreur (notion de points de reprise)

»R

ecouvrement avant:

-D

éterminer un nouvel état à partir duquel on sait que le systèm

e peutfonctionner (notion de m

ode dégradé)

•C

om

pen

sation

:—

Disposer de suffisam

ment de redondance en dépit de l’état erroné

pour le transformer en un état exem

pt d’erreur (techniques dem

asquage de faute, par vote majoritaire, par exem

ple)

Rappel

C-4

Hyp

oth

èses de fau

tes•

Fau

tes acciden

telles—

Fautes physiques et leur effets»

Silence sur d

éfaillance: toute faute d’un com

posant conduit à un arrêtsur d

éfaillance (silence), c’est-à-dire sans propagation d’inform

ationerron

ée à l’extérieur du composant (valeurs en retour, m

essages émis,

actions sur l’environnement)

»E

rreur en valeur: une valeur de sortie peut être corrompue

—F

autes du logiciel»

Fautes de d

éveloppement (conception ou codage) d

’un composant

»F

autes liés au support d’exécution d’un com

posant au niveau de lagestion de ressource

•F

autes in

tentio

nn

elles (malveillantes)

—T

entatives d’attaque: écoute passive, corruption d’information, sur

les données échangés par deux composants (en particulier

répartis)—

Mécanism

es de cryptographie et de tolérance aux intrusions

C-5

Stratég

ie de to

lérance au

x fautes

•M

écanism

es po

ur la to

lérance au

x fautes p

hysiq

ues

»M

1: disques miroir

»M

2: réplication passive

»M

3: réplication semi-active

»M

4: réplication active

client

serveur

requêteréponse

requêteréponse

requêteréponse

requêteréponses

point dereprise

copierequête

M1

M2

M3

M4

C-6

Disq

ues m

iroir

•P

rincip

es—

les processus d’application effectuent le traitement des requêtes de leur

clients et sauvegardent l’état courant de leur calcul (points de reprise)sur des disques m

iroir :»

les points de reprise sont écrits sur les deux disques simultan

ément

»lors de la rem

ise en service, le processus relit son contexte sur disque

client

serveur

requêteréponse

client

serveur

Crash

client

serveur

lecture

po

int d

e reprise

C-7

Disq

ues m

iroir

•C

om

men

taires—

Une seule unité de traitem

ent est utilisée»

la réparation doit intervenir avant la remise en service, c’est-à-dire le

redémarrage d’un service op

érationnel. Il y a donc interruption de servicependant la durée de réparation

—D

ifférentes unités ont accès au support de mém

oire stable»

redémarrage d’un service op

érationnel avant terminaison de la réparation

client

serveur

requêteréponse

client

serveur

Crash

client

serveur

lecture

po

int d

e reprise

C-8

Rép

lication

passive

•P

rincip

es—

Chaque processus

d’application (primaire)

possède un processusde secours (secondaire) sur unsite distinct de celui duprim

aire.—

Le processus primaire effectue

le traitement des requêtes de

ses clients et transmet

périodiquement une im

age deson état au secondaire.

—Le secondaire m

et à jour sonétat (contenu de ses variables)sur réception des points dereprise.

—S

eul le primaire retourne une

réponse au client.

requêteréponse

point dereprise

client

serveur

requêteréponse

Crash

Prim

ary……

……

……

…B

ackup

C-9

Rép

lication

passive

•C

om

men

taires—

L’hypothèse de base est quetoute réponse à une requêteest correcte.

—N

otion de silence surdéfaillance ➠

composant

autotestable + couverture de

détection de 100%

—U

n point de reprise implique la

capture d’un état complet pour

la reprise après basculement

(processus + exécutif)

—La détection correspond à unesurveillance m

utuelle—

La durée d’interruption deservice est due à larestauration d’un service actif

requêteréponse

point dereprise

client

serveur

requêteréponse

Crash

Prim

ary……

……

……

…B

ackup

C-10

Rép

lication

semi-active

•P

rincip

e—

Chaque processus

d’application (primaire)

possède un processus desecours (secondaire) sur unsite distinct de celui duprim

aire.—

Le processus primaire effectue

le traitement des requêtes de

ses clients et transmet au

secondaire la requête qu’ilvient de traiter.

—Le secondaire traite à son tourla requête pour m

ettre à jourson état.

—S

eul le primaire retourne une

réponse au client.

requêteréponse

copierequête

client

serveur requête

réponse

Crash

Leader……

……

……

…F

ollower

C-11

Rép

lication

semi-active

•C

om

men

taires—

L’hypothèse de base est quetoute réponse à une requêteest correcte.

—N

otion de silence surdéfaillance ➠

composant

autotestable + couverture de

détection de 100%

—Il n’y a pas de point de reprise:l’état est reconstruit par letraitem

ent de la requête

—La détection correspond à unesurveillance m

utuelle

—La durée d’interruption deservice est due à au seulchangem

ent de mode

requêteréponse

copierequête

client

serveur requête

réponse

Crash

Leader……

……

……

…F

ollower

C-12

Rép

lication

et vote m

ajoritaire

•P

rincip

e—

Chaque processus d’application est répliqué en trois exem

plairessur des sites distincts.

—Les trois répliques reçoivent des requêtes au travers d’un systèm

ede com

munication de groupe et effectuent le traitem

entcorrespondant.

—C

haque réplique transmets une réponse au client qui effectue

un vote majoritaire :

»la d

éfaillance d’un processus est d

étectéepar l’absence de réponse

»une erreur de valeur sur l’une desréponses est d

étectée par vote majoritaire

client

serveur requête

réponses

C-13

Rép

lication

et vote m

ajoritaire

•C

om

men

taires—

La diffusion des requêtes d’entrée:»

Toutes les requ

êtes, quelle que soit leur source, doivent être reçues

dans le mêm

e ordre»

Une copie de chaque requête est re

çue par toutes les répliques ouaucune n

’en reçoit de copie»

Notion de diffusion de groupe atom

ique

—Les copies doivent être déterm

inistes»

Les mêm

es entrées produisent les mêm

es sorties

—La décision:

»R

épliques identiques: vote bit-à-bit»

Répliques sim

ilaires: algorithme de d

écision

client

serveur requête

réponsesC-14

Syn

thèse (1)

StratégiesH

ypothèse en

présence de

faute

Fautetolérée

Déterm

inisme

des répliquesC

oût en

Ressources

Coût

enC

omm

unicationC

oût lors

duR

ecouvrement

Passive

Silence sur

défaillanceC

rashN

on1 serveuractif

haut (checkpoints)M

oyen (re-

exécution)

Semi-active

Silence sur

défaillanceC

rashN

on2 serveursactifs

bas (notifications)bas (sw

itch)

Active

Défaillance

arbitraireV

aleurO

ui3 serveursactifs

moyen

(duplicationm

essages)

Nul

Rép

licatio

np

assiv

eE

ntités

Actio

nM

otiv

ation

Mo

yens

Co

mm

unic

atio

nR

equ

êtes/répo

nses

Em

ission

/réceptio

nS

yn

chro

nisatio

n en

tre répliq

ues.

Interc

eptio

n

Exéc

utio

nP

oin

tsd

’inte

rrup

tion

asynch

ron

e du

flot

de co

ntrô

le

activatio

n

/co

ntin

uatio

n

/te

rmin

aison

Captu

re /

restau

ration

du

contrô

le lo

rs du

traitemen

t des

requ

êtes

dans

des

com

po

sants

concu

rrents.

Interc

eptio

nIn

strum

entatio

nd

e la

plate-

form

e

Eta

tD

on

née

s in

ternes,

état pla

te-form

eM

ise-à-jou

r de

don

nées

intern

es,in

teractio

ns

avec

la

plate

-form

e exéc

utiv

elo

cale

Restau

ration coh

érente

de

l’étatp

ou

r u

n

reco

uvrem

ent

transp

arent

aux

co

mp

osan

tsap

plicatifs clien

ts.

Imag

e mém

oire

Sérialisatio

nIn

teractio

ns

Jou

rnau

x

C-15

Syn

thèse (2)

Réplication

semi-active

Entités

Action

Motivation

Moyens

Com

munication

idem passive

idem passive

Contrôle des notifications

idempassive

Exécution

idem passive +

points dedécision

non-déterm

inistes

idem passive + points de

décision non-

déterministes

Décisions non-déterm

inistesidempassive

Etat

idem passive

idem passive

Contrôle

des interactions

avec la

plate-forme

produisant des résultats non-déterm

inistes

idempassive

Réplication

Active

(TM

R)

Entités

Action

Motivation

Moyens

Com

munication

idem passive

validation & propagation des réponses

idem passive

Exécution

Pas nécessaire (déterm

inisme im

posé de l’exécution des répliques)

Etat

Pas nécessaire (si clonage à chaud non considéré)

C-16

No

tion

de co

mp

osan

t auto

testable

•D

éfinitio

n—

L’ajout de capacités de détection d’erreur à un composant conduit

à la notion de composant autotestable (self-cheking com

ponent)

—C

ette notion peut s’appliquer à des composants logiciels et

matériels

•C

om

men

taires—

Avantage: lim

itation de la propagation d’erreur ➠ zone de

confinement (error confinem

ent area)

—C

omposant autotestable +

couverture 100% ➠

composant à silence

sur défaillance (fail silent component).

—A

pproche récursive: contrôleur = com

posant autotestable

functioninputs

outputs

controllererrors

C-17

Reco

uvrem

ent « arrière »

•P

rincip

e—

Ram

ener le système dans un état précédem

ment occupé par le

calcul avant l’occurrence de l’erreur

—C

et état est suffisamm

ent complet pour redém

arrer l’exécution et aété préalablem

ent sauvé (disques miroir ou backup)

•P

rob

lèmes co

ncep

tuel:

—E

tablissement des points de reprise recovery points

»E

tat: interne, messages non traités, contexte de l’exécutif, etc.

»Q

uand? Périodique ou ap

ériodiques?

—La définition des instants ou ces points de reprise sont établisdépend de l’interaction des processus entr’eux.

C-18

Le p

rob

lème d

e l’effet do

min

o•

Pro

cessus co

ncu

rrents co

mm

un

icants

—dom

ino effect

P1

P2

P3

crash de P2

P1

P2

P3

??

? m2

m1

m4

m3

m2

m1

m4

m3

Rem

arqu

e: les interactions sont représentées ici par des messages,

Mais pourraient être de toute autre nature (e.g. partage de m

émoire)

?

Mais, o

ù est d

on

c ce m

essage…

q

ui n

e vient jam

ais?

C-19

Le p

rob

lème d

e l’effet do

min

o•

Pro

cessus co

ncu

rrents co

mm

un

icants

—S

i un IPC

coupe une ligne de recouvrement, alors « effet dom

ino »

P1

P2

P3

crash de P2

m2

m1

m4

m3

•N

otio

n d

e con

versation

—D

éfinir a priori un découpage des processus pour éviter leproblèm

e

—S

ynchroniser la prise d’état sur ce principe Ligne de recouvrement

P1

P2

P3

m2

m1

m4

m3

C-20

Le p

rob

lème d

e l’effet do

min

o•

Pro

cessus co

ncu

rrents co

mm

un

icants

—S

i un IPC

coupe une ligne de recouvrement, alors « effet dom

ino »

P1

P2

P3

crash de P2

m2

m1

m4

m3

•S

ynch

ron

isation

« po

int d

e reprise » / « récep

tion

messag

e »

Ligne de recouvrement

P1

P2

P3

m2

m1

m4

m3

?

Hip

s!…

J’ai le messag

e!

C-21

Co

mb

inaiso

n d

e techn

iqu

es•

Reco

uvrem

ent « arrière » p

uis « avan

t »—

Le recouvrement « arrière » est la prem

ière tentative de traitement

de l’erreur

—S

i l’erreur persiste, alors, une action de recouvrement « avant »

peut être entreprise en définissant un état des processus cohérent.C

et état est souvent dépendant de l’application.

•A

spect tem

po

rel—

Lors d’un recouvrement, la surcharge tem

porelle (et donc le temps

de réponse) est plus important quand il y a erreur que quand il n’y

en a pas.—

Dans le cas du recouvrem

ent « arrière » la surcharge temporelle en

l’absence de faute correspond à l’établissement des points de

reprise.—

Dans le cas de la com

pensation, la surcharge temporelle

correspond aux algorithmes de décision, le tem

ps de réponserestant à peu près constant.

C-22

No

tion

de p

roto

coles d

e gro

up

e•

Basic p

roto

cols

—G

roupes (groups):»

une adresse correspond à un ensemble de destinataires

—A

ppartenance (mem

bership):»

liste des mem

bres du groupe

»notion de vues (view

s, view-change

)

—D

iffusion (broadcast): send (M, G

)

—C

onsensus (Consensus): vision uniform

e d’une information

•P

rop

riétés

• Un

anim

ité: tout M

reçu par un R correct est reçu par tous les R

corrects• N

on

-trivialité: tout M

délivré a été émis par un processus correct

• Accessib

ilité: tout M

délivré à un processus correct est accessible• D

élivrance:

tout M est délivré tant que S

non-défaillant ou R non-accessible

• Ord

re: tous les M

sont délivrés à tous les mem

bres correct de G dans le

mêm

e ordre

G

γ αβ

C-23

No

tion

d’o

rdre

•C

ausal

•T

otal

M1

M2 S

R1

R2

R3

M2

R1

R2

R3

M1

M3 S

1S

2

Num

éro de séquence géré à l’émission

3637S

,36

S,37

C-24

Imp

lémen

tation

Niveau délivrance

Niveau réception

R1

R2

R3

M2

M1

M3 S

1S

2

M1

M2

M3

M1

M2

M3

M1

M2

M3

(1,2,3)(1,2,3)

(1,2,3)o

rdre

causal

M1

M2

M3

M1

M2

M3

M1

M2

M3

Niveau

Ap

plicatio

n

Niveau

OS

Niveau

Réseau

•O

rdre to

tal

C-25

Imp

lémen

tation

Niveau délivrance

Niveau réception

R1

R2

R3

M1

M2

M3

M1

M2

M3

M1

M2

M3

(1,2,3)(1,2,3)

(1,2,3)o

rdre

causal

M1

M2

M3

M1

M2

M3

M1

M2

M3

•O

rdre to

tal: Co

mm

entaires

—Il faut assurer unecom

munication fiable sur des

liaisons bi-point entre le leader

et les mem

bres du groupe

—Le lead

er ne doit pas êtrebyzantin, c’est-à-dire envoyerdes inform

ations non-uniformes

aux mem

bres du groupe

➠ silence sur défaillance

—M

ême en cas de défaillance du

leader, tous les mem

bres dugroupe doivent décider lam

ême valeur (vecteur)

➠ notion de consensus

—La perte du leader im

posel’élection d’un nouveau leader

C-26

Imp

lémen

tation

Niveau délivrance

Niveau réception

R1

R2

R3

M1

M2

M3

M1

M2

M3

M1

M2

M3

(1,2,3)(1,2,3)

(1,2,3)o

rdre

causal

M1

M2

M3

M1

M2

M3

M1

M2

M3

•O

rdre to

tal: Co

mm

entaires

—Il faut assurer unecom

munication fiable sur des

liaisons bi-point entre le leader

et les mem

bres du groupe

—Le lead

er ne doit pas êtrebyzantin, c’est-à-dire envoyerdes inform

ations non-uniformes

aux mem

bres du groupe

➠ silence sur défaillance

—M

ême en cas de défaillance du

leader, tous les mem

bres dugroupe doivent décider lam

ême valeur (vecteur)

➠ notion de consensus

—La perte du leader im

posel’élection d’un nouveau leader

Utilisation de protocoles avec contrôle

d’erreur et garantie de séquencement (type T

CP

)

Com

posant logiciel/matériel de gestion

Des m

essages doit être autotestable

1) Détection de la d

éfaillance du leader2) P

rotocole à deux phases: 2.1) transm

ission M +

ack des mem

bres 2.2) confirm

ation/abort

1) Statique: séquence pré-déterm

inée

2) Dynam

ique: chaque mem

bre vivant génère une

Valeur aléatoire α

i que l’on range par ordre croissant. La valeur la plus grande déterm

ine le leader.

C-27

Hyp

oth

èses: Syn

chro

ne v.s. A

synch

ron

e

•H

ypo

thèse syn

chro

ne:

—T

out message ém

is par un processus correct vers une destinationcorrecte est 1) reçu

et 2) traité dans un intervalle de temps connu.

—P

our du temps-réel dur il faut déterm

iner»

WC

ET

(Worst C

ase Execution T

ime

) des tâches

»Les bornes sup

érieures de transmission de m

essage,

»La fréquence m

aximale des d

éfaillances

—M

asquage des fautes transitoires: redondance temporelle -

répétition systématique.

Hyp

oth

èse asynch

ron

e:—

Pas de borne sup ➱

impossibility result (F

isher, Lynch & P

aterson):“In

distrib

uted

asynch

ron

ou

s systems

, it is im

po

ssible to

detect a

failed p

rocess fro

m a

very slow

pro

cess”.

—E

n pratique»

On se ram

ène à borner les temps de transm

ission de message

»D

éfinition de ∆T

avec une certaine couverture

C-28

Qu

elqu

es exemp

les

C-29

So

lutio

ns à m

icron

oyau

temp

s-réel•

Micro

no

yau tem

ps-réel

—S

ervices OS

de base (synchronisation, gestion mém

oire,ordonnancem

ent, comm

unication,etc.)

—N

ouvelle tendance: “Open” m

icrokernels ➠ spécialisation

•O

bjet m

od

el—

objets interagissant par messages

—objets com

posés de thread

s de control concurrents—

objets encapsulant un état

•E

xemp

le: Ch

oru

s—

Concepts de base:»

actors : objets actifs m

ulti-theraded

»p

orts : boites à m

essage

—Le noyau peut être spécialisé

—N

otion de personnalité, UN

IX par exem

ple

C-30

Micro

kernel tech

no

log

y

IPC

(messages / ports)

Real-T

ime

executiveM

emory

managem

ent

IT, traps, M

MU

...m

icro-core executive (machine dependent)

Multi-threaded

active objects

port

message S

ubsystem

C-31

Un

exemp

le simp

le de rép

lication

•T

hread

s et des p

orts

—S

ynchronization: gestion de la synchronisation (semi-actif)

—H

andle_State: gestion des m

essages de points de reprise(passif)—

Recovery: m

ise-à-jour état, changement m

ode, re-nomm

age ports,clonage

•F

on

ction

s:—

Save_S

tate, Send_C

heckpoint, Send_N

otification, Clone_R

eplica

p1p2p2

Site 2

Site 1

Site 3

Object crash

checkpointing

C-32

PB

RS

ite 1S

ite 2

p = service port

pp = prim

ary portbp =

backup portrp =

recovery portT

= service thread

H =

Handling_S

tate threadR

= R

ecovery thread

H

R

T

state

detection

p

ipcReceive

p

ipcReply

request

reply

TS

aveState

ppbprp

Send_C

heckpoint

« Perio

dic I’am

alive m

essages

»

C-33

Syn

thèse

•S

aveState

—S

auvegarde de l’état interne de l’objet

•S

end

_Ch

eckpo

int

—P

ropagation de l’état interne au backup

•T

hread

H—

Mise-à-jour de l’état interne de l’objet à l’aide de l’inform

ationcontenue dans le point de reprise

•T

hread

R—

Activation par le signal de détection : “prim

ary crash”.—

Restauration port de service et clonage nouvelle réplique

—T

raitement des requêtes:

»Lorsque un protocole de groupe n

’est pas utilisé, il peut y avoir perte dem

essages donc un protocole de bout-en-bout est nécessaire

C-34

So

lutio

ns à in

tergiciel (M

idd

leware)

•L

es app

roch

es—

Par interception d’appels systèm

e (system calls)

»fork/exec : création de copie m

ultiples

»send

/receive(socket): m

ulticast de messages à un groupe

»open/read/w

rite(file) : gestion de copies m

ultiple copies

—Intergiciel à objet

»creation

/init : création de copie multiples d

’objets

»m

ethod call : multicast des requ

êtes d’invocation

»state

access : l’état doit comprendre id

éalement

-Les variables internes

-Les donn

ées de niveau intergiciel

-Les donn

ées de niveau noyau de système

•P

rop

erties—

Transparence et séparation entre application et m

écanismes

—Q

uelques difficultés de ré-utilisation et de spécialisation

C-35

Le p

rojet D

EL

TA

-4 (Esp

rit #2252)D

efinitio

n an

d D

esign

of an

op

en D

epen

dab

le Distrib

uted

architectu

re

« L'objectif com

mercial de ce projet est de créer une capacité européenne de

produire des systèmes inform

atiques tolérant les fautes qui soient compétitifs

au niveau mondial pour leur coût, leur sûreté de fonctionnem

ent et leursperform

ances. Les applications visées sont celles des systèm

es d'information à

large échelle, y compris ceux qui ont des exigences tem

ps-réel : productique,banques, centrales électriques, contrôle de trafic aérien, systèm

es d'aide aucom

mandem

ent militaires, etc. »P

artenaires

Ferran

ti CS

L, U

KB

ull S

A, F

CA

, FIF

hG

-IITB

, GIE

I-CN

R, I

INE

SC

, P

LA

AS

-CN

RS

, FL

GI-IM

AG

,FM

AR

I Ad

. Electo

nics, U

KN

CS

R-A

EA

, UK

Ren

ault, F

SE

MA

Gro

up

, FU

niv. N

ewcastle, U

K

C-36

DE

LT

A-4

•O

bjectifs: T

oléran

ce aux fau

tes distrib

uée fo

r “$-critical” systems

•A

rchitectu

re à base d

e—

Stations de travail C

OT

S (C

omm

ercial Off-T

he-Shelf) sous U

NIX

—C

ontrôleur d’accès au réseau spécifique (Netw

ork Attachem

entC

ontroller)

•S

tratégies rép

lication

: passive, sem

i-active, active (s)

•A

pp

roch

e Mid

dlew

are—

modèle objet, an ID

L (Interface Definition Language) +

services—

CO

RB

A-like

•E

fforts d

e validatio

n sig

nificatifs p

ar injectio

n d

e faute

C-37

Arch

itecture ➠

T-à-F

HostN

AC

HostN

AC

HostN

AC

HostN

AC

HostN

AC

Local Area N

etwork

off-the-shelf processeurs + U

nix

« Netw

ork A

ttachm

ent C

on

troller » à silen

ce sur

défaillan

ce

• Autotests logiciels

•P

rotection mém

oire

•D

uplication-comparaison

LAN

standard

• 802.4 token bus

•802.5 token ring

Unités de réplication ➙

objets

C-38

Pro

toco

les•

Ato

mic M

ulticast P

roto

col (A

MP

)—

implém

enté niveau 2 (au dessus du MA

C)

—data fram

es envoyées à des portes logiques identifiant les groupes—

Assurance de l’unanim

ité, ordre et appartenance—

Protocole d’acceptation à deux phases

—D

étection par timeout

—R

épétition pour tolérer un nombre fini de fautes d’om

ission

•In

ter-replica P

roto

col (IR

P)

—S

erveurs répliqués transparents aux clients (transparent multicast)

—R

éplication à la source (clients) caché aux destinations»

arbitration entre événements ém

is ➱ m

essage unique

»com

paraison de signature ➱ d

étection et compensation

C-39

Traitem

ent d

’erreur

Rép

lication

Active

•T

raitement déterm

iniste des messages

•S

ilence sur défaillance — l’un quelconque des m

essages

•D

éfaillance incontrôlée — détection d’erreur et com

pensation (IRp)

Rép

lication

Passive

•U

n primaire et plusieurs backups

•C

heckpointing systématique lors de l’ém

ission d’un message du prim

aire

•N

écessite le silence sur défaillance mais pas le déterm

inisme

•M

ulticast atomique des m

essages et des points de reprise

Rép

lication

Sem

i-active•

Un leader et plusieurs follow

ers - le leader produit les messages

•N

on-déterminism

e résolu par des notifications leader-to-follower

•E

xtension à l’hypothèse de défaillance incontrôlée (comparaison-arrêt)

C-40

PB

R

grouprequest m

essage

message copies delivery

to all correct mem

bers

checkpointmessages

updating theobject state

PR

IMA

RY

BA

CK

UP

(S)

reply message

active m

ode

passive m

ode

À toutes les répliques: A

MP

Au client et à toutes les répliques: A

MP

CK

P

CK

P

CK

PO

/P m

sg

O/P

msg

O/P

msg

I/P m

sg

C-41

LF

Rsynchronisation messages

LE

AD

ER

FO

LL

OW

ER

(S)

grouprequest m

essage

message copies delivery

to all correct mem

bers

updating theobject state

reply message

active m

ode

passive m

ode

Notification à toutes les répliques: A

MP

Au client et à toutes les répliques: A

MP

O/P

msg

I/P m

sg

C-42

TM

R

•P

rop

agate-b

efore-valid

ate—

Toutes les copies traitent les

messages d’entrée et produisent

un message de résultat

—Le vote à lieu à la destination

•V

alidate-b

efore -p

rop

agate

—T

outes les copies traitent lesm

essages d’entrée et produisentun m

essage de résultat—

Validation entre les serveurs»

Échange de signatures

électroniques

»N

otion de leader qui vote sur lessignatures sur le N

AC

»E

mission d

’un seul message au

client

grouprequest m

essage

reply messages

M1

M2

M3

Fail-silen

t NA

C

S2

S3

M1

Si S

ig(M

1 )= S

2 ou

S3 alo

rs sen

d (M

1 )S

ino

n g

et(M2 ) o

u lead

er(2) sen

d (M

2 )fin

si

C-43

Valid

ation

expérim

entale

!

Errors tolerated,

but not detected

Errors detected,

but not tolerated

Mean L

atency and dormancy

12%1%

Non significant

experiments

94%F

DT

85%99%

87 ms

1,8 s

Failu

re

6%3%

E

!?

Injection Physique

(Pin-L

evel fault injection) –M

ESSA

LIN

E–

1) “Stan

dard

” [au

totest lo

giciel]

2) Du

plex A

rch.

[du

plicatio

n/co

mp

araison

]

0%

20%

40%

60%

80%10ms

100ms

1s10s

100s

NA

C"d

up

lex"

100%D

Pred

.T

Pred

.

NA

C S

td

Std

Duplex

D P

redicate:

Auto-extraction

de la station injectée

T P

redicate:

Protocole de réplication O

K(tolérance et confinem

ent d’erreur)

C-44

Leço

ns

•L

eçon

1—

Réplication active et connexion au m

onde réel

—V

ote sur senseurs ou pilotage par vote d’actuateurs—

I/O sur nœ

ud unique ➱ fail silence

—C

ouverture faible ➱ non disponibilité, etc.

•L

eçon

2—

autotest duplex et comparaison ➱

couverture de détection 96%—

Difficulté m

ajeure: low-level LA

N controller chips

•L

eçon

3—

implém

entation AM

P niveau 2 ➱

rapide

—im

plémentation A

MP

niveau 2 ➱ non distribution de D

elta-4.•

Leço

n 4

—D

émonstration en vrai grandeur S

oftware-im

plemented distributed F

T—

Problèm

e de performance / solutions m

atérielles

—Intérêt économ

ique et flexibilité de la solution

C-45

To

lérance au

x fautes d

u lo

giciel

•R

edo

nd

ance tem

po

relle—

Répétition de l’exécution pour tolérer les fautes tem

poraires dusupport d’exécution

—E

xemple: exception “no m

ore mem

ory buffers is available at the time

of the call”.

—D

eux types de répétition»

Répétition locale (fautes tem

poraires de ressources)

»R

épétition sur autre support d’exécution pour des fautes persistantes

Tim

e

node 1node 2

Executive support

Executive support

processingstep

recoverypoint

exception orerror status

checkpoints!

re-startexecution

!

C-46

Red

on

dan

ce temp

orelle

•D

étection

—m

écanismes de détection d’erreur internes au com

posant,conduisant à des exceptions

—assertions exécutables externes analysant la validité des résultatsproduits et de leur cohérence vis-à-vis des entrées et du contexteopérationnel.

•R

é-executio

n et to

lérance au

x fautes

—E

n fait, la ré-exécution s’effectue sous des conditionsopérationnelles différentes

—N

e tolère pas les fautes dures de conception•

Exem

ple

—C

ette approche à été développée par AT

&T

Labs sous la forme

d’une bibliothèque de fonctions libft et d’un processus systèm

eU

nix watch

d, et appliquée en particulier dans des systèm

es detélécom

.

C-47

To

lérance au

x fautes d

e con

ceptio

n

•R

ecovery b

locks [R

and

ell 1975]—

variantes sont appelées des « alternats »

—algorithm

e de décision ou « test d’acceptation » (acceptance test)est appliqué séquentiellem

ent aux résultats produits par lesalternats.

—S

i le test d’acceptation déclare que les résultats sont erronés, lesecond alternat est exécuté, ainsi de suite, jusqu’à épuisem

ent desalternats disponibles. D

ans ce cas extrême, le bloc de

recouvrement est déclaré défaillant.

A1

A2

A3

Test d’acceptation

OK

Non

OK

C-48

To

lérance au

x fautes d

e con

ceptio

n

•R

ecovery b

locks [R

and

ell 1975]—

variantes sont appelées des « alternats »

—algorithm

e de décision ou « test d’acceptation » (acceptance test)est appliqué séquentiellem

ent aux résultats produits par lesalternats.

—S

i le test d’acceptation déclare que les résultats sont erronés, lesecond alternat est exécuté, ainsi de suite, jusqu’à épuisem

ent desalternats disponibles. D

ans ce cas extrême, le bloc de

recouvrement est déclaré défaillant.

A1

A2

A3

Test d’acceptation

OK

Non

OK

C-49

To

lérance au

x fautes d

e con

ceptio

n

•R

ecovery b

locks [R

and

ell 1975]—

variantes sont appelées des « alternats »

—algorithm

e de décision ou « test d’acceptation » (acceptance test)est appliqué séquentiellem

ent aux résultats produits par lesalternats.

—S

i le test d’acceptation déclare que les résultats sont erronés, lesecond alternat est exécuté, ainsi de suite, jusqu’à épuisem

ent desalternats disponibles. D

ans ce cas extrême, le bloc de

recouvrement est déclaré défaillant.

A1

A2

A3

Test d’acceptation

OK

Non

OK

?D

éfaillance

C-50

To

lérance au

x fautes d

e con

ceptio

n

•N

-version

pro

gram

min

g [C

hen

& A

vizienis 1978]

—variantes sont dites des « versions »

—algorithm

e de décision = un vote sur les résultats produits par les

versions.—

Les algorithmes de décision effectuent, par exem

ple, des calculsde m

édiane en rejetant les valeurs aberrantes.

A1

A2

A3

Algorithm

e de décision

Valeur

C-51

To

lérance au

x fautes d

e con

ceptio

n

•N

-self-checkin

g p

rog

ramm

ing

[Lap

rie et al. 1990],»

au moins deux com

posants logiciels auto testables sont exécutés enparallèle, chaque com

posant étant construit,

»soit sous la form

e d’une variante et de son test d

’acceptation,

»soit de deux versions avec un test de com

paraison.

•R

emarq

ue

—D

ans ce second cas, une seule variante peut être écrite dans le but de fournir desré

sultats, l’autre effectuant la fonctions avec une précision plus faible, ou bien le calculinverse quand cela est possible, ou encore la vérification de résultats interm

édiaires dela variante principale (C

ertification P

ath Approach

[Sullivan &

Masson

1990]).

A1

A2

comparaison

Valeur O

K

A1

A2

comparaison

Valeur O

Ksélection

C-52

2 x EL

AC

EL

evator an

dA

ileron

Co

mp

uter

T

homson-C

SF

68000

3 x SE

CS

po

iler and

Elevato

r Co

mp

uter

S

FE

NA

/Aé

rospatiale

80186

2 x SF

CC

Slats an

d F

laps

Co

mp

uter

G

EC

Marconi

80C

88 / 68000

2 x FA

CF

ligh

tA

ug

men

tation

Co

mp

uter

S

FE

NA

8086

E/S

Pro

cesseur

Mém

oire

Alim

entatio

n

E/S

Mém

oire

Alim

entatio

n

28 V D

C

Co

mm

and

e

Su

rveillance

Pro

cesseur A

irbu

s 320

C-53

Ailero

ns

Plan

ho

rizon

tal

Go

uvern

es de

pro

fon

deu

r

SF

CC

1

SF

CC

2

Go

uvern

ed

e directio

n

Becs et

volets

FA

C1

FA

C2

Sp

oilers

SE

C1

SE

C2

SE

C3

EL

AC

1

EL

AC

2

Airb

us 320

C-54

Bo

eing

777•

Prim

ary Flig

ht C

om

pu

ter (PF

C)

du

système d

e com

man

de d

e vol

électriqu

e du

Bo

eing

777—

Ce systèm

e comporte trois P

FC

identiques dans uneconfiguration à vote m

ajoritaire.—

Un P

FC

est basée surl’utilisation de trois voiesutilisant des processeurs C

OT

Sdiversifiés (en l’occurrence, unA

MD

29050, un Motorola 68040

et un Intel 486).

—C

es trois processeursexécutent un m

ême program

me

applicatif»

écrit en Ada,

»com

pilé par trois com

pilateursA

da différents,

➠ program

mes exécutables et

des exécutifs (run

-times A

da)différents pour les 3 proc.

Pro

gram

me so

urce

So

rties

Éq

uip

e de

pro

gram

meu

rs

Exécu

table A

Exécu

tion

A

Co

mp

ilateur A

Pro

cesseur A

Exécu

tif A

Co

mp

araison

Erreu

r

Exécu

table B

Exécu

tion

B

Co

mp

ilateur B

Pro

cesseur B

Exécu

tif B

Co

mp

araison

Exécu

table C

Exécu

tion

C

Co

mp

ilateur C

Pro

cesseur C

Exécu

tif C

Erreu

r

Sp

écification

fon

ction

nelle

Ou

tils etrègles

C-55

Bo

eing

777•

Prim

ary Flig

ht C

om

pu

ter (PF

C)

du

système d

e com

man

de d

e vol

électriqu

e du

Bo

eing

777

•E

n fo

nctio

nn

emen

t no

rmal,

—l’une des voies du P

FC

joue lerôle de voie de com

mande (une

voie différente est choisie danschaque P

FC

),—

les deux autres étant des voiesde surveillance.

•E

n cas d

e désacco

rd,

—la voie fautive peut êtrelocalisée et

—inhibée du fait de la présencede deux voies de surveillance.

Pro

gram

me so

urce

So

rties

Éq

uip

e de

pro

gram

meu

rs

Exécu

table A

Exécu

tion

A

Co

mp

ilateur A

Pro

cesseur A

Exécu

tif A

Co

mp

araison

Erreu

r

Exécu

table B

Exécu

tion

B

Co

mp

ilateur B

Pro

cesseur B

Exécu

tif B

Co

mp

araison

Exécu

table C

Exécu

tion

C

Co

mp

ilateur C

Pro

cesseur C

Exécu

tif C

Erreu

r

Sp

écification

fon

ction

nelle

Ou

tils etrègles

C-56

EL

EK

TR

A•

Th

e Elektra R

ailway S

ign

alling

System—

Ce systèm

e est basé surl’utilisation de deux chaînes detraitem

ent en tout pointidentiques aux niveaux m

atérielet exécutif

—U

ne des chaînes de traitement,

appelée « interlockingprocessor » supporte letraitem

ent fonctionnel designalisation

—L’autre chaîne, appelée« safety bag processor »,exécute le traitem

ent decontrôle: assertionsexécutables déduites desrègles de sécurité ferroviaires.

Exécu

table

fon

ction

nel

Exécu

tion

fon

ction

nelle

Co

mp

araison

So

rtiesE

rreur

Exécu

table de

con

trôle

Exécu

tion

deco

ntrô

le

Co

mp

ilateur A

Pro

cesseur

Exécu

tif

Co

mp

ilateur B

Pro

cesseur

Exécu

tif

Pro

gram

me so

urce

fon

ction

nel

Éq

uip

e dep

rog

ramm

eurs A

Sp

écification

fon

ction

nelle

Ou

tils etrègles A

Pro

gram

me so

urce

de con

trôle

Règ

les de sécu

rité

Éq

uip

e dep

rog

ramm

eurs B

Ou

tils etrègles B

x 3x 3

C-57

EL

EK

TR

A•

Th

e Elektra R

ailway S

ign

alling

System—

Toute com

mande élaborée par

la chaîne fonctionnelle esttransm

ise vers la périphérie etvers la chaîne de contrôle.

—C

ette dernière transmet aussi la

comm

ande vers la périphérieaprès avoir vérifié la conform

itéde la com

mande par rapport

aux règles de sécurité.—

L’action correspondante n’estexécutée qu’en cas d’accordentre les deux com

mandes

transmises vers la périphérie.

•E

n p

ratiqu

e,—

TM

R Interlocking processor

—T

MR

Safety B

ag

Exécu

table

fon

ction

nel

Exécu

tion

fon

ction

nelle

Co

mp

araison

So

rtiesE

rreur

Exécu

table de

con

trôle

Exécu

tion

deco

ntrô

le

Co

mp

ilateur A

Pro

cesseur

Exécu

tif

Co

mp

ilateur B

Pro

cesseur

Exécu

tif

Pro

gram

me so

urce

fon

ction

nel

Éq

uip

e dep

rog

ramm

eurs A

Sp

écification

fon

ction

nelle

Ou

tils etrègles A

Pro

gram

me so

urce

de con

trôle

Règ

les de sécu

rité

Éq

uip

e dep

rog

ramm

eurs B

Ou

tils etrègles B

x 3x 3

C-58

Exécu

tion

N

Co

mp

araison

Sp

écification

no

min

ale

So

urce 0

Exécu

table 0

Exécu

tion

0

So

rties 0

Éq

uip

e de

pro

gram

meu

rs 0

So

urce 1

Exécu

table 1

Co

mp

ilateur 0

Pro

cesseur 0

Exécu

tif 0

Co

mp

ilateur 1

Pro

cesseur 1

Exécu

tif 1

Ou

tils etrèg

les 0É

qu

ipe d

ep

rog

ramm

eurs 1

Ou

tils etrèg

les 1

Sp

écification

niveau

défen

se 1

Exécu

tion

1

Co

mp

araison

So

rties 1

Erreu

r

So

urce N

Exécu

table N

Co

mp

ilateur N

Pro

cesseur N

Exécu

tif N

Éq

uip

e de

pro

gram

meu

rs NO

utils et

règles N

Sp

écification

niveau

défen

se N

So

rties N

•••

•••

N-1

Erreu

r

PR

OC

ÉD

É

Erreu

r

Systèm

e de co

ntrô

le – Nu

cléaire•

Niveau

0 ➠ application

nominale

•N

iveaux 1..N

➠hiérarchie

de défenses.

•D

éfense n

iveau k ➠

contrôle dufonctionnem

ent desniveaux 0,…

, k-1, et mise

en œuvre par une

comm

ande simplifiée

mais plus fiable, voire

seulement la m

ise à l’étatsûr, en cas de d

éfaillanced’un niveau inférieur.

•C

on

trôle d

es niveau

x0,…

, k-1 est en fait

ind

irect ➠ m

is en œuvre

au moyen de la

surveillance de variablespertinentes du procéd

écom

mand

é.

$C

ette approche constitue, en quelque sorte, une gé

néralisation de la technique du « safety bag »

. La principaledifférence consiste en l’observation indirecte des sorties du niveau inférieur, au travers du procé

dé comm

andé.

C-59

To

lérance au

x intru

sion

s•

Pro

blém

atiqu

e—

Garantir l’intégrité et la confidentialité de l’inform

ation

—La redondance est une entrave à la garantie de ces propriétés

—F

ragmenter l’inform

ation de façon à produire des fragments non

significatifs (non-confidentiel)—

Disperser l’inform

ation de façon redondante sur un réseau decalculateurs

•A

pp

lication

—À

la messagerie: fragm

enter et router les fragments par des liens

différents (fragmentation des com

munications de K

oga)—

Aux clés: fragm

enter les clés de façon à ce qu’un sous-ensemble

seulement soit nécessaire pour reconstruire une clé secrète

(notion de schémas à seuil de S

hamir)

—A

ux fichiers, à la gestion des autorisations, aux traitements (notion

de Fragm

entation-Redondance-D

issémination)

L’idée

C-60

Sch

éma à seu

il de S

ham

ir•

Le p

rob

lème :

—stockage de clés secrètes ➠

confidentialité, disponibilité

•U

ne so

lutio

n q

ui n

’est est pas u

ne!

—plusieurs zone protégées dans lesquelles on réplique la clé

$violation d’une zone ➠

perte du secret

•L

’idée d

es schém

as à seuil:

—S

tocker K sous la form

e d’un ensemble de valeur K

i (appeléesim

ages), telles que:»

S im

ages permettent de reconstruire le secret

»S

-1 images n

’apportent aucune information

—S

i l’on sait générer N im

ages, avec N>

S alors, N

-S im

ages peuventêtre perdues

C-61

xx

xx

y

x01

23

4

0

yy

yy

12

34

On

sait gé

nérer au

tant d

e valeurs q

ue l’o

n veu

t!

Sch

éma à seu

il de S

ham

ir•

Exem

ple sim

ple (S

=2)

$ y =

a x + b =

P(x)

»y

0 = a x

0 + b

»y

1 = a x

1 + b

•••

»y

n = a x

n + b

$P

osons a, b secrets et x1 , x

2 ,…x

n fixés

•G

énéralisatio

n ➠

po

lynô

me d

ed

egré S

:

P(x) =

y i 1 ≤ i ≤ k

( x − xj ) ( xi − xj )

1 ≤ j ≠ i ≤ k ∏

m

od q (

)

Interpolation polynomiale de Lagrange

C-62

Sitesutilisateurs

Sites d

'archivage

Sites de

sécurité Sites d

etraitem

ents

Réseaux d

ecom

munication

...

??

? ?

? ?

??

? ?

? ?

......

Frag

men

tation

-Red

on

dan

ce-Dissém

inatio

n

C-63

FR

D (F

ichiers)

•••

Fragm

entationR

éplicationD

issémination

Site utilisateurR

éseau à diffusionSites d'archivage

Fichier

Fragm

ents

Chiffrem

ent

Nom

mage

Chiffrem

ent (F) ➠

distribution ➠ chiffrem

ent des noms ➠

dissémination aléatoire (R

copies)

s2drtz9t

nu

azt8zt

ado

dh

23e

h4sfg

6g1

C-64

Serveu

r de sécu

rité toléran

t aux in

trusio

ns

AU

TH

EN

TIF

ICA

TIO

N

AU

TO

RISA

TIO

N

GE

STIO

N des IN

FO

SSE

NSIB

LE

S

AU

DIT

RE

CO

UV

RE

ME

NT

SE

RV

EU

R

SE

RV

EU

RSIT

E

UT

ILISA

TE

UR

C-65

Au

then

tification

Site de sécurité

Site de sécurité

Site de sécurité

Vote

C-66

Au

torisatio

n

Serveur de SécuritéServeur Sécurisé

(1) RE

QU

ET

E(2) V

OT

E(3) T

ICK

ET

U

TIL

ISAT

EU

R(4) AU

TH

EN

TIF

IEU

R

DE

SESSIO

N

(5) TIC

KE

T

SER

VE

UR

(6) SESSIO

N

Site de sécurité

Site de sécurité

Site de sécurité

C-67

La to

lérance au

x intru

sion

sU

n su

jet d’actu

alité…

•D

es pro

gram

mes g

igan

tesqu

es:O

rganically Assured and S

urvivable Information S

ystems (O

AS

IS)

Defense A

dvanced Research P

rojects Agency (D

AR

PA

)

•D

es exemp

les de p

rojets d

ans ce cad

reD

AR

PA

ISO

Sponsored R

esearch2000 P

roject Sum

mary

« Dependable Intrusion T

olerance »« Intrusion T

olerant Softw

are Architectures »

« Intrusion Tolerant D

istributed Object S

ystems »

« Intrusion Tolerance U

sing Masking, R

edundancy and Dispersion »

Tolérance aux fautes, tolérance aux intrusions, détection d

’intrusions,etc.

SR

I,D

raper L

abs,

Etc.

C-68

Résu

•D

ifférentes tech

niq

ues p

ermetten

t de to

lérer des fau

tes, en fait

l’effet de ces fau

tes sur le co

mp

ortem

ent d

u systèm

e (les erreurs)

•F

autes p

hysiq

ues ➠

techn

iqu

es de rép

lication

—H

ypothèses de fautes—

Couverture des hypothèses

—N

otion de composant autotestable

—T

echniques de réplication passive, semi-active, active

•F

autes d

u lo

giciel ➠

techn

iqu

es de d

iversification

—R

edondance temporelle (fautes transitoires de support) ➠

AT

&T

—R

ecovery blocks

—N

-Version program

ming ➠

Airbus 320, 330, 340, B

oeing 777—

N-S

elf Checking program

ming ➠

Elektra

•In

trusio

ns ➠

fragm

entatio

n-red

on

dan

ce-dissém

inatio

n

D-1

Tech

niq

ues d

e caractérisation

Tech

niq

ues d

e base,

en p

articulier p

ar injectio

n d

e fautes,

An

alyse de ro

bu

stesse,exem

ples d

'ou

tils et de résu

ltats expérim

entau

x

D-2

Test d

e la toléran

ce aux fau

tes•

Les m

écanism

es de to

lérance au

x fautes so

nt à la fo

is—

Faillibles (fautes de conception et/ou de réalisation)

—C

onçus pour traiter des entrées spécifiques: les fautes!!

leur vérificatio

n est essen

tielle!•

L’ap

pro

che exp

érimen

tale par in

jection

de fau

tes—

Sim

ulation des fautes, ou plutôt de leurs effets, les erreurs»

physiques (bit-flip) ou du logiciel (mutation d

’instruction)

—C

ibles: un composant logiciel équipé de son m

écanisme de T

AF

»B

oite blanche: visibilité structurelle (comm

ent il est fait) etcom

portementale (com

ment il agit/ré-agit)

»B

oite noire: aucune connaissance, seules les interfaces sont visibles

—Les types d’injection:

»niveau physique(stuck-at), m

odèle (V

HD

L) ou par logiciel (SW

IFI)

—Les problèm

es:»

Représentativité des fautes

»O

bservation et analyse des résultats.

Rappel

D-3

Lo

giq

ue &

Info

rmatio

n

Ph

ysiqu

e

SY

ST

ÈM

E C

IBL

E

Mo

dèle

Pro

totyp

e

MOYEN

injectio

n

en sim

ulatio

n

injectio

n

en lo

giciel

injectio

np

hysiq

ue

uds ➠ O

RC

HE

STR

Atâche ➠

FIAT

instr. ➠ FE

RR

AR

Im

ém. ➠

DE

F.I, DIT

A,

MA

FAL

DA

Reg. ➠

Xception

ions lourds ➠ U

niversité Chalm

ersperturbations E

M ➠

TU

Vienne

broches ➠ M

ESSA

LIN

E, Scorpion,

DE

FOR

, RIFL

E, A

FIT,...

système ➠

DE

PEN

D, R

EA

CT

, ...niveau R

TL

➠ A

SPHA

LT

, ...porte logique ➠

Zycad, T

echnost, ...circuit ➠

FOC

US, ...

...large spectre ➠ M

EFIST

O,

VE

RIFY

(VH

DL

)

Les tech

niq

ues d

’injectio

n d

e fautes

Rappel

D-4

#Im

pact su

r mesu

res Sd

F

#C

alibratio

n d

es mo

dèles

#L

imites ap

pr. fo

rmelles

#E

ntrave évén

emen

t rare

#T

F co

nstru

ction

faillible

#E

stimatio

n co

uvertu

re TF

#A

pp

roch

e expérim

entale

#E

xpérien

ces con

trôlées

Injectio

n d

e fautes

reté de fo

nctio

nn

emen

t (S

dF

)T

oléran

ce aux fau

tes (T

F)

Evalu

ation

expérim

entale

D-5

Les attrib

uts d

e l'injectio

n d

efau

tes#

Test d

es mécan

ismes d

e TF

vis-à-vis d'en

trées spécifiq

ues : les

fautes

#S

équ

ence d

e test = série d'exp

ériences élém

entaires

#C

aractérisation

d'u

ne exp

érience

Do

main

e d'en

tréeD

om

aine d

e sortie

• f ∈ F

F

autes à injecter

• a ∈ A

D

onnées d'entrée destinéesà activer le systèm

e

• r ∈ R

Relevés et observations des

prédicats caractérisant : - les m

écanismes de T

F - le systèm

e cible

Élaboration de m

esures expérimentales : l'en

semb

le M

Fau

teE

rreur

Défaillan

ce

tFtE

Do

rman

ceL

atence

tD

Traitem

ent E

rreur/F

aute ap

pro

prié (P

rédicat P

)

D-6

Caractérisatio

n d

es préd

icats de

la TF

•D

éfinitio

n d

e préd

icats et d'u

n en

semb

le d'états

Fau

te

tF

Assertio

n d

e P

tP

∅∅

P = fau

x P

= vrai

Do

main

e d'o

bservatio

n : T

tF

∅∅

P = vrai

v1

v0

v0

v1

tMax

tMax

P = vrai

P = fau

x

P = fau

xP

= vrai

•T

est des p

rédicats

FE

DT

Défaillan

ce

OK

D-7

Prévisio

n d

es fautes

(mesu

res de la S

dF

) É

limin

ation

des fau

tes(d

éficiences) d

e la TF

Test d

e l'adéq

uatio

n ...

... par rap

po

rt aux h

ypo

thèses d

efau

tes

Estim

ation

de l'efficacité...

facteur d

e cou

verture,

do

rman

ce faute, laten

ce erreur, ...

ÉV

AL

UA

TIO

NV

ÉR

IFIC

AT

ION

... de la co

ncep

tion

et/ou

mise en

œu

vre d

es algo

rithm

es/mécan

ismes d

e toléran

ce aux fau

tes ...

le de l’in

jection

de fau

tes

D-8

Elim

inatio

n d

es fautes d

ans les M

TF

Fin

j

Hp

re

Hp

ost

Déficien

ceF

ausse

alarme ?

Co

uvertu

reN

om

inale

Déficien

ce C

ou

v. hyp

.[atten

du

?]

“Bo

nu

s” de

cou

verture

Co

mp

ort.

no

min

al

Tests

sans in

jection

d

e fautes

Tests

avec injectio

n

de fau

tes

Déficien

ceco

uvertu

re

D-9

Distrib

utio

n tem

po

relle de la

cou

verture

E[T

MTF]

facteur d

eco

uvertu

reasym

pto

tiqu

e

Fau

teT

raitemen

t E

rreur/F

aute

Su

ccès

Éch

ec2èm

e Fau

te

Défaillan

ceD

éfaillance

temps de

latence

Couverture

C(t)

100%

]t f

T[

Dom

aine d'observation

C ≈ C

(T) < C

(∞)

D-10

MT

Fs

Var. aléato

ire TP :

instan

t d’assertio

nd

u p

rédicat P

nExp.

T0

P

tf

tp

tm

ax

G

FA X

(tP ≤ T

)

y(tP , G

) =1 0

d

événements

significatifs

n d

n2

•• •

n1n

M

d1d

2di

dM

•• •Gi

ni

GM

G2

G1

t

ˆ C

1 (t,G) =

1ny(t,G

i)i= 1 n

∑=

N(t)n

➢ D

istribu

tion

de la co

uvertu

re :

➢ V

aleur asym

pto

tiqu

e (facteur d

e cou

verture) :

C(∞

,G)=

C(G

)≈C

1(T,G

)=N

(T)

n

dn=

Exp

ériences ≈

Ép

reuves d

e Bern

ou

illi

Estim

ation

de la co

uvertu

re

D-11

Influ

ence d

u facteu

r de co

uvertu

re

2 un

ités actives

Défaillan

cesystèm

e

1 un

ité active

1ère défaillan

ce (n

on

cou

verte)

1ère défaillan

ce (cou

verte)

réparatio

n2èm

e défaillan

ce

C 1

C 2

ES

210-4

10-3

10-2

c = .95

c = .9

c = .99

c = .995

c = .999

c = 1

101

10 10 104

1

3

MT

TF S

yst.

MT

TF C

om

p.

MT

TR

MT

TF

Co

mp

.

Co

mp

.

D-12

Evalu

ation

de la ro

bu

stesse

D-13

Arch

itecture d

es systèmes

Objets d

’applicationInteragissant par m

essages

IntergicielIntergiciel (e.g. C

OR

BA

)supportant la distributiontransparente des objets

Systèm

e opératoireS

ystème op

ératoire (e.g. P

OS

IX)

Micro-noyau tem

ps-réelM

icro-noyau T

emps-réel

D-14

Interg

iciels

Evalu

ation

de la ro

bu

stesse des In

tergiciels

par in

jection

de fau

tes

D-15

Interg

iciel• In

jection

avant en

capsu

lation

par T

CP

. ➣

Sim

ulatio

n d

e la pro

po

rtion

de p

aqu

ets erron

és d

élivré

s par T

CP

D-16

Co

mp

araison

d’in

tergiciels C

OR

BA

Bit flip

dan

s les requ

êtes IIOP

No

n R

epo

rted

Failu

reR

epo

rted F

ailure

(CO

RB

A E

xceptiio

n raised

)

Percentage per SUB

(No

diagnosis)

D-17

Systèm

e op

ératoire

Evalu

ation

de la ro

bu

stesse des exécu

tifs PO

SIX

Avec B

allista

D-18

BA

LL

IST

A•

Ob

jectif—

Test autom

atique des fonctions d’un système opératoire (A

PI)

—La cible est l’ensem

ble des appels système invoqués par les

applications

Carn

egie M

ellon

Un

iversity, US

A

Esp

aced

’entrée

Esp

ace répo

nse

Entrées

valides

Entrées

invalides

Co

mp

ortem

ent

attend

uC

orrect

Indéfini

Incorrect➠

erreur code

Opération robuste

Défaillance

répétable

Défaillance

Non répétable

UN

IX

posix

Ballista effectue l’injection de faute au niveau A

PI en

utilisant un combinaison de param

ètres valides et invalides

D-19

L’éch

elle CR

AS

H•

Rép

on

ses inco

rrectes regro

up

ées selon

5 niveau

x

—C

- Catastrophic: la défaillance n’est pas confinée à une seule

tâche (i.e., l’appel à une fonction de l’ OS

a causé le crash ou lehang d’une autre tâche ou du systèm

e)

—R

- Restart: la tâche est bloquée et doit être re-dém

arrée

—A

- Abort: term

inaison anormale de tâche (e.g., segm

entationviolation)

—S

- Silent: la tâche term

ine sans signaler d’erreur (e.g., un appel àopenfile avec un nom

de fichier NU

LL devrait retourner une erreur)

—H

- Hindering: la tâche renvoie un code d’erreur incorrect

D-20

Exp

ériences

Tests ap

pliq

ué à 175-233 d

es app

els PO

SIX

sur ch

aqu

e OS

•E

xemp

les de p

aramètres in

valides

—T

ype integer et descripteurs de fichier :»

not in range,0,1,-1,+m

axint, -maxint

—T

ype pointer : »

null, -1, hors zone d’adressage de buffer m

émoire

—T

ype string :»

large (64K), form

at incorrect (filenames, m

odes, printf)

•R

ésultats

—C

omparaison sur l’échelle C

-R-A

-S-H

—E

xemples de situations surprenantes :

»m

map

sur HP

-UX

(dirty parameters) -->

system panic

»setpgid

sur LynxOS

(parameters com

bination) -->

system crash

—S

eulement entre 37%

et 58% des cas de test n’entraînent pas de

défaillance

D-21

Systèm

e op

ératoires P

OS

IX

0%10%

20%30%

40%50%

SunOS 5.5

unOS 4.13

QNX 4.24

QNX 4.22

OSF-1 4.0

OSF-1 3.2

NetBSD

Lynx

Linux

Irix 6.2

Irix 5.3

PUX 10.20

HPUX 9.05

FreeBSD AIX

Abort % Silent % Restart %

Catastrophic

No

rmalized

failure rate (%

)

AIX

FreeB

SD

HP

-UX

B.10.20

Lin

ux

Lyn

xOS

QN

X 4.24

Su

nO

S 5.5

NetB

SD

Irix 6.2

Irix 5.3

HP

-UX

B.9.05

OS

F-1 3.2

OS

F-1 4.0

QN

X 4.22

SunO

S 4.13

Ab

ort

Silen

t

Restart

Catastrophic

010

2030

4050

9

15 « (C)O

TS

» OS

s[K

oopman &

DeV

ale 99 (FT

CS

-29)]

Paramètre invalide dans les appels systèm

es POSIX

D-22

Micro

-no

yaux tem

ps-réel

Evalu

ation

de la ro

bu

stesse de m

icro-n

oyau

x temp

s-réelA

vec Mafald

a

D-23

Prin

cipe

Assessm

ent by Fault injection

Design A

id

AnaLysis

Microkernel

Detection

Propagation

Failures

Execution traces

MAFA

LDA

Functional models

Executables assertions

Wrappers

Reflexive im

plementation

D-24

Descrip

tion

-1

Graph

mgr.

Machine contrôleur

Cam

paign_FD

Workload_FD

controler

Machines cibles

Reflection

Wp1

Wp2

Wp3

CO

TS

Microkernel

metakernel

Wrapping

InterceptionInjection

InternalFunctionC

all

Exp. results

Log. files

Modes de

défaillance

Information de

trace pour analysea posteriori

Tableur

Pilote de toutes les étapes:1) G

énération Oracle

2*) Série d’expériences

3) Analyse

D-25

Descrip

tion

-2

Vérification des

assertions exécutables

IntrospectionIntercession

Interceptiondes system

calls,de leurs param

èters,et de quelques fonctions internes

Bit-flip:

parameters,

segments code

& data

Graph

mgr.

Machine contrôleur

Cam

paign_FD

Workload_FD

controler

Machines cibles

Exp. results

Log. files

Reflection

Wp1

Wp2

Wp3

CO

TS

Microkernel

metakernel

Wrapping

InterceptionInjection

InternalFunctionC

all

D-26

An

alyse des m

od

es de d

éfaillance

• Robustesse de l’interface

• Mécanism

es de détection

• Corruption données d’entrée

• Corruption du m

icronoyau (segm

ents code & data)

• Com

portement d’un m

odule • P

ropagation inter-module

Evalu

ation

Mo

dèle d

e faute

Cib

les de l’in

jection

Ob

servation

Erro

r

Fau

lt

micro

kernel in

terface

SY

NC

OM

ME

M

SY

NC

OM

ME

M

Fau

lt

pro

pag

ation

Micro

kernel co

mp

on

ents

Ap

plicatio

n

...

...

Wo

rkload

• Appels systèm

e• C

omposants noyau

Typ

e de fau

te

• Bit-flip

• Aléatoire

• Statistiques

• Analyse de trace a posteriori

Résu

ltats

D-27

Co

mp

ortem

ent en

présen

ce de fau

tes

µkC

kCi M

icrokern

el

Ap

plicatio

n / m

idd

leware

Co

rrup

tion

intern

e

Erreu

r

!S

ign

al (détectio

n)

"E

rror S

tatus

"E

xceptio

ns

!B

locag

e no

yau

Pro

pag

ation

Erreu

r

Co

rrup

tion

externe

(Ap

plicatio

n)

AP

I

!D

éfaillance A

pp

lication

(valeur et o

rdo

nn

ancem

ent)

Pro

pag

ation

!A

pp

lication

Han

g

D-28

MA

FA

LD

A

Micro

-no

yaux C

ho

rus an

d L

ynxO

S

Caractérisatio

n d

e micro

no

yaux tem

ps-réels

0 5 10 15 20 25 30 35 40 45

Ap

pli.

Failu

reA

pp

li.H

ang

Kern

elH

ang

Excep

tion

Erro

rS

tatus

No

Ob

s

% Bit flip

s dan

s les segm

ents d

e cod

e du

no

yau

Ch

oru

s

Lyn

xOS

D-29

Exem

ple d

e mesu

res

D-30

Catég

ories d

’ob

servation

com

po

rtemen

tale

Non

Sig

nifican

t E

xperim

ents

28.5%

3010 E

xp.

SY

SH

AN

G1,4%

EX

CE

PT

ION

38,1%

AP

PH

AN

G6,0%K

DB

13,9%

AP

PF

AIL

9,0%

ER

RO

R

ST

AT

US

3,0%

NO

OB

S.

28,5%

DE

TE

CT

ION

41.1%

HA

NG

21.3%

FA

ILU

RE

9%

D-31

Distrib

utio

n d

’erreur

ME

MO

RY

2924 exp

.

CO

MM

UN

ICA

TIO

N

2970 exp

.

SY

NC

HR

ON

ISA

TIO

N

3010 exp

.

No

n sig

n.

33%

DE

TE

CT

ION

57.7%

HA

NG

7%

FA

ILU

RE

2.4%

No

n sig

n.

28.5%

DE

TE

CT

ION

41.1%

HA

NG

21.3%

FA

ILU

RE

9%

No

n sig

n.

31.3%

DE

TE

CT

ION

55%

HA

NG

10.3%

FA

ILU

RE

3.6%

Kernel code

D-32

Pro

pag

ation

d’erreu

r

(30/3010)

36.7 %

CO

M84,2%

AF

Application Failure

0% E

XC

Exception15,8%

ES Error Status

SYN

ME

M

63.3 %

100%A

F0%

EX

C0%

ES

44,2 %

CO

M8,9%

AF

77,2%E

XC

13,9%E

S

SYN

ME

M

55,8 %

32,5%A

F61,3%

EX

C6,2%

ES

(26/2970)57.7 %

CO

M

100%A

F0%

EX

C0%

ES

SYN

ME

M

43.3 %

100%A

F0%

EX

C0%

ES

(181/2924)

Kernel code

D-33

Laten

ce des excep

tion

s

12

34

56

78

9

0

100 200 300 400

010

# EXceptions

0% 20% 40% 60% 80% 100%

Cumulative Distr.

micro

secon

ds

>10

Kernel code

D-34

MA

FA

LD

A in

action

D-35

Th

e Oracle

D-36

Fau

lt Injectio

n

D-37

Résu

ltats

D-38

Syn

thèse (1)

•D

éfinitio

n d

e la charg

e app

licative et Oracle

—O

ption 1: charge applicative indépendante d’une application»

Principes-

Activation de toutes les fonctions

-S

éparation / partitionnement pour d

étecter la propagation d’erreur

-C

onçu pour pouvoir obtenir un Oracle

»Intérêt

-Identifier des fautes de conception/program

mation

-Identification de com

portements/m

odules faibles»

Inconvénient-

Ne reflète pas le com

portement / profil typique d

’une application

—O

ption 2:»

Définition d

’un profil d’application (application elle-m

ême?)

»D

éfinition de l’Oracle?

D-39

Syn

thèse (2)

•In

jection

de fau

tes—

Principes»

Sélection aléatoire du bit inversé (bit-flip)

—Injecteurs

»N

oyau-

Utilisation des m

oyens de debug des processeurs modernes

-O

ctet aléatoire et sélection bit-

Optim

isation:!

Frontière des com

posants!

Flot de contrôle du noyau

»P

aramètres

-Interception des appels noyau (librairies &

trap)-

Octet aléatoire et sélection bit

—S

élection pré-définie d’adresses, de valeurs, de différentescom

binaisons possibles

D-40

Syn

thèse (3)

•A

ssertion

s et wrap

pers d

e con

finem

ent

—F

ormalisation des com

portements corrects attendus

—Im

plémentation: vérification en-ligne

»D

érivation d’assertions exécutables

»D

érivation de AF

SM

(Abstract F

inite State M

achine)

—E

fficacité»

Précision du m

odèle

»T

ype de formalism

e

—P

erformance

»C

omprom

is entre mod

élisation et surcharge temporelle

—E

xpressions en logique temporelle interprétées par un R

untime

checker -> M

AF

AL

DA

-RT

D-41

Syn

thèse (4)

•A

nalyse d

e l’info

rmatio

n b

rute o

bservée

—Les résultats statistiques procurent des inform

ations significativespour la sélection d’un candidat

—L’inform

ation détaillée permet:

»Identification des fautes de conception / program

mation

»C

ompréhension du com

portement réel en présence de fautes :

-P

ourquoi une erreur conduit à la défaillance ?

-P

ourquoi a-t-on observé un executive hang?

-P

ourquoi l’erreur s’est-elle propagée d’un com

posant à un autre?

—S

cripts permettant de filtrer les inform

ation brutes obtenir par lesm

écanismes de traçage

—Les utilisateurs peuvent eux-m

ême définir les m

odes dedéfaillance.

D-42

Syn

thèse (5-6)

•In

terprétatio

n d

es résultats

—U

ne campagne cible :

»U

ne seule instance d’un m

icro-noyau temps-réel

»U

n certain profil d’activation

—V

ariabilité des résultats»

Version S

tand Alone

vs. version P

osix

»A

pplication réactive vs. Application static

•E

volu

tion

des systèm

es cibles

—N

ouvelle instance -> N

ouvelle campagne ?

—E

st-ce que la nouvelle instance est compatible avec la solution

architecturale ?

D-43

Mafald

a-RT

Assessm

ent by Fault injection

Design A

id

AnaLysis

Microkernel

Limitation of

temporal intrusiveness

Detection

Propagation

Failures(value & tim

e)

Execution traces

Temporal

characteristicsof kernel

(e.g., switching time)

Analysis of schedulingof captured events

Formal spécification

(temporal logic)

Aut. translation

On-line Checking

Wrapping

mechanism

s • detection • recovery

Reflective im

plementation

Explicit analysis of tem

poral overhead

for Real-Time system

s

D-44

Em

paq

uettag

e

No

tion

de w

rapp

ers

D-45

Prin

cipe d

u w

rapp

ing

—M

écanismes d’encapsulation (w

rappers), par classes fonctionnelles

—M

odélisation du comportem

ent de fonctions/services de base d’unm

icro-noyau temps-réel en l’ absence de faute

➠ notion d’assertion exécutables, de prédicat vérifié en-ligne»

Observation de donn

ées et événements internes

»C

ontrôle de certaines actions du noyau

—N

écessité de mécanism

es d’observation et de contrôle étendus ➠notion d’im

plémentation réflexive (instrum

entation)

—M

esure de l’efficacité des wrappers par injection de faute

wrap

per

Ou

tpu

t In

pu

tM

icrokern

elm

od

ule

D-46

Exem

ple d

e wrap

per fo

nctio

nn

el: Syn

chro

nizatio

n

Sém

aphores :

- integer s.val- process queue s.q

ueu

e

Opérations:

- Init: I(s) - G

et: P(s)

- Release:V

(s)

Valeur init

init_value

Soit#P

(s) et #V

(s) le nombre total d’appels à

P(s) et V

(S)

s.val = in

it_value - #P

(s) + #V

(s)

Soit

#Su

spen

ded

(s) le nom

bre de threads dans s.queue

#Su

spen

ded

(s)=

max(0,-s.val)

Un prédicat peut être défini com

me suit:

Wrap

per

Micro

no

yau S

YN P

(s)V

(s)

[s.val = in

it_value

- #P(s) +

#V(s)] ξ

[#Su

spen

ded(s) = m

ax(0, -s.val) ]

D-47

Read

y to R

un

Sto

pp

ed

Waitin

g

CR

EA

TE

(Read

y)

Ru

nn

ing

DE

LA

Y(N

oD

elay)S

ET

PR

IOR

ITY

()

SE

MP

()D

EL

AY

(Tim

eDelay)

RE

CE

IVE

()

ST

OP

()

ST

AR

T ()

CR

EA

TE

(Sto

pp

ed)

SE

MV

()

Tim

e-Ou

tE

vent-M

essage

Intern

al preem

ptio

n

t ∉ W

(s) ∧t ∈

R ∧

P

_Sch

ed (•)

Po

st-con

ditio

n asso

ciéeà u

ne tran

sition

correcte

After S

EM

V(S

) :P

olitiq

ue p

réemp

tif FIF

O

P_S

ched

(•) =L

a tâche en

cou

rs est tou

jou

rs la prem

ièred

e celles de p

lus h

aute p

riorité d

ans la file

ready_to

_run

Exem

ple d

e wrap

per co

mp

ortem

ental: S

ched

ulin

g

D-48

Imp

act de l’en

capsu

lation

87%

0%

9%2.2%

0.5%0%

20%

40%

60%

80%

100%

Standard

SY

N W

rapperS

YN

& S

CH

Wrappers

External errors

Internal errors

Application failure

Mo

du

le de S

YN

CH

RO

NIS

AT

ION

~ 3000 expérien

ces

Intérêt…

.

• emp

êche la co

rrup

tion

de p

aramètres

• rédu

it le nb

d’erreu

rs no

n-d

étectées et leur p

rop

agatio

n

D-49

5%

15%

3%2%

4%

1%

7%

23%

0% 5%

10%

15%

20%

25%

Applicationfailure

Application

hangS

ystem hang

To

tal

Standard m

oduleW

rapped module

Mo

du

le de S

CH

ED

UL

ING

~ 3000 expérien

ces

Imp

act de l’en

capsu

lation

Cau

se des d

éfaillances résid

uelles

• mau

vaise prio

rité• n

on

-captu

re d’évén

emen

t• th

read h

ang

• flot d

’exécutio

n in

correct

Efficacité d

es wrap

pers

• tâches n

on

réveillées• vio

lation

de règ

le de p

réemp

tion

• violatio

n d

e règle d

’élection

• m

anip

ulatio

n in

correcte d

e files

D-50

Etalo

nn

age d

e la Sd

FDependability

Benchmarking

Agreem

ent/Acceptance

UsefulnessFairnessUsability

Portabilityetc.

DependabilityAssessm

ent

Performance

Benchmarking

Desired Properties

D-51

Cad

re con

ceptu

el

An

alyse

Exp

érimen

tation

Systèm

ecible

Fautes

Charge

Mesures expérim

entales

AM

esures de laS

dFM

od

élisation

B

DB

ench

D

epen

dab

ility Ben

chm

arking

IST

2000 25425

http://www.laas.fr/dbenchD-52

Résu

mé d

es techn

iqu

es de b

ase

DB

enchD

ependability Benchm

arking

Bit-flip dsparam

ètre

Paramètre

d’appel invalide

Bit-flip dsParam

ètre Fonct. Int.

Fautes dsDrivers

-> Fautes du logiciel (O

S, micronoyau)

Mutation

Bas-niveauM

utationhaut-niveau

-> Fautes du logiciel (N

iveau application)

Script d’ém

ulation

Fautes réelles

(field data)

-> Fautes d’opérateur & et d’adm

inistrateur

Simulation

VHDL

Analyse

-> Fautes physiquesPropag. Φ

-device level ➠ RTL

E-1

reté de fo

nctio

nn

emen

t

Résu

mé et co

nclu

sion

Jean-C

harles F

abre

Méthodes et techniques perm

ettant de considérer les fautescom

me des événem

ents naturels et prévisibles!

Tel: 05 61 33 62 36

-F

ax: 05 61 33 64 11-

E-m

ail: [email protected]

E-2

Info

rmatiq

ue sû

re de fo

nctio

nn

emen

t•

To

lérance au

x fautes : «zéro

défau

t » « zéro d

éfaillance »

• É

merg

ence d

’autres classes d

e fautes :

—de C

onception—

Interactions Hom

me-S

ystème

—M

alveillances

•C

om

pro

mis en

tre [coû

t + fon

ction

nalité]

et sûreté d

e fon

ction

nem

ent

—H

iérarchie de la tolérance aux fautes + confinem

ent des erreurs—

Équilibre m

atériel/logiciel

—T

ransparence—

Généricité et réutilisation (com

posants “OT

S”)

•É

valuatio

n an

alytiqu

e & exp

érimen

tale du

com

po

rtemen

ten

présen

ce de fau

tes “Ben

chm

arking

” de la S

dF

E-3

Mécan

isme d

e TA

F

Syn

thèse

Tech

niq

ues d

e réplicatio

n

Hyp

oth

èses et mo

dèle d

e faute

Co

mp

osan

t auto

testable

Diversificatio

n

Ou

tillage d

e caractérisation

Mo

dèle, P

roto

type

Typ

e de F

autes

Mesu

res (cou

verture,

mo

des d

e défaillan

ce)E-4

reté de fo

nctio

nn

emen

td

es systèmes in

form

atiqu

esin

du

striels

Jean-C

harles F

abre

Méthodes et techniques perm

ettant de considérer les fautescom

me des événem

ents naturels et prévisibles!

Tel: 05 61 33 62 36

-F

ax: 05 61 33 64 11-

E-m

ail: [email protected]