• Aucun résultat trouvé

Formules de débit et latence des protocoles conçus pour être robustes . 106

Nous présentons dans cette section les formules de débit et de latence pour Prime, Aardvark, Spinning et RBFT dans le cas sans faute et en cas d’attaque. Pour cha-cun de ces protocoles, l’attaque correspond à l’attaque présentée dans la Section 4.1 (Section 4.4.5 dans le cas de RBFT).

A.2.1 Prime

Soient E le temps nécessaire pour exécuter un lot de b requêtes et P la période d’envoi des messagesPRÉ-PRÉPARATION. La latence et le débit de Prime dans le cas

Variable Valeur

Génération/vérification d’un MAC α entre 644 et 827 cycles Vérification d’une signature Θ 11221 + 5.8 ∗ l cycles Création d’une empreinte δ 1907 + 23 ∗ l cycles

Envoi d’un message σ 643 + 19 ∗ l cycles

Réception d’un message ρ 619 + 20 ∗ l cycles

Taille des lots de requêtes b 1

Vitesse du processeur κ 2,4GHz

TABLEA.1 – Liste des variables utilisées dans les formules. Le coût des opéra-tions de cryptographie et de réseau est pour des messages de taille l octets. Dans les implantations des protocoles robustes, les MACs sont calculés sur 3 tailles de messages uniquement : 16, 72 et 88 octets. Le coût pour chacune de ces tailles est respectivement 644, 795 et 827 cycles.

sans faute sont donnés par les formules suivantes :

Lsf = ρ + 2θ + σ +(11f + 5)θ + (6f + 2)δ + (n + 5)σ + (n + 8f + 5)ρ + P

b + E

Tsf = κ Lsf

Soient Esf le temps nécessaire pour exécuter un lot de b requêtes dans le cas sans faute, et Eattaquele temps nécessaire pour exécuter un lot de b requêtes lors de l’attaque, lorsqu’une requête met davantage de temps à s’exécuter. Le mécanisme de surveillance de Prime calcule le temps de réponse maximal T ARsf = (2Lopportun+ Esf)KLat+ pp dans le cas sans faute et T ARattaque = (2Lopportun+ Eattaque)KLat+ pp lors de l’attaque. Un principal malicieux peut alors retarder les PRÉ-PRÉPARATIONde

T ARattaque− T ARsf. Par conséquent, la latence et le débit de Prime en cas d’attaque

sont :

Lattaque = Lsf + T ARattaque− T ARsf, Tattaque= κ

Lattaque

La Table A.2 recense les variables spécifiques à Prime et les valeurs que nous avons utilisé. La parte de débit théorique sous une charge statique est calculée à partir de la

Esf 0,1ms

Eattaque 10ms

Lopportun 0,78ms

KLat 5

pp 1ms

TABLEA.2 – Variables de Prime et valeurs utilisées lors de notre analyse théo-rique.

différence en pourcentage entre Tattaqueet Tsf. A.2.2 Aardvark

La latence et le débit d’Aardvark dans le cas sans faute sont donnés par les formules suivantes :

Lsf = max(θ + α + δ + ρ,α(10f + b) + δ + σ(2n + b) + ρ(4f + 2)

b )

Tsf = κ Lsf

Nous rappelons que les réplicas s’attendent à recevoir au moins P PRÉ-PRÉPARATION toutes les M ms. Nous devons considérer deux cas avec attaques. Dans le premier cas, la charge est statique. Dans ce cas, un principal malicieux est en place au maximum

Lmax = 1000∗Mκ∗P cycles. Les performances moyennes du protocole sont donc :

Lattaque= ((n − f ) ∗ Lsf + f ∗ Lmax)

n , Tattaque =

κ

Lattaque

La parte de débit théorique sous une charge statique est calculée à partir de la différence en pourcentage entre Tattaqueet Tsf.

Dans le second cas, lorsque la charge est dynamique, la formule est plus complexe. En effet, nous devons prendre en compte le calcul du débit attendu. La latence durant une attaque avec charge dynamique est calculée par la formule Lattaque = Lsf +

Adelai(obs, exp), avec Adelai(obs, exp) une formule qui, à partir du débit observé obs

et du débit requis exp, calcule le délai maximal que le principal malicieux peut appliquer aux messages d’ordonnancement sans être détecté. Ce délai est calculé de la manière suivante. Soit u le temps écoulé (en ms) depuis la création du dernier point de contrôle, et r le nombre de requêtes qu’il a ordonné depuis le dernier point de contrôle. Alors le délai d qu’il peut appliquer doit vérifier r+b

u+d ≥ exp. Par conséquent, d = r+bexp − u. De plus, le principal doit envoyer au moins P PRÉ-PRÉPARATIONtoutes les M ms. Étant donné ces deux conditions, le principal malicieux peut retarder le prochainPRÉ -PRÉPARATIONde d = min(r+b

exp − u,nt) − λ ms, avec λ une constante qui prend en compte le temps de communication entre l’envoi d’un PRÉ-PRÉPARATION et sa réception1

La perte de débit théorique sous une charge dynamique est calculée à partir de la différence en pourcentage entre l’intégrale de la courbe du débit en cas d’attaque et l’aire du rectangle formé par la courbe dans le cas sans faute.

A.2.3 Spinning

La latence et le débit de Spinning dans le cas sans faute sont donnés par les formules suivantes :

Lsf = α(13f + 2b) + δ(b + 1) + σ(3 + b) + ρ(4f + b + 3) b

1. Cette constante dépend de la puissance de calcul des machines et du réseau. Dans nos expériences, λ = 10ms.

Tsf = κ Lsf

Soit Stle temps maximal avant que le minuteur de surveillance du principal n’expire, le considère comme malicieux et le mette sur liste noire, alors le débit de Spinning en cas d’attaque est donné par la formule suivante :

Tattaque= (n − f ) ∗ Tsf+

f κ

(Lsf+St)

n

De manière intuitive, cette formule correspond au débit moyen lorsque f réplicas sont malicieux et retardent l’ordonnancement des requêtes de St.

La perte de débit théorique de Spinning est calculée à partir de la différence en pourcentage entre Tattaqueet Tsf, lorsque St= 40ms. Cette valeur a été utilisée par les auteurs de Spinning dans leur évaluation [56].

A.2.4 RBFT

La latence et le débit de RBFT dans le cas sans faute sont donnés par les formules suivantes :

Lsf = max(θ +α(n+f )+δ +nσ +(2f +2)ρ, α2n + 4f − 1

b +δ +2nσ +(4f +2)ρ)

Tsf = κ Lsf

En cas d’attaque, les performances fournies lorsque le principal de l’instance maître n’est pas malicieux sont les suivantes (plus de détails sont présentés dans la Section A.3.1 ; g est la proportion de requêtes valides envoyées par les clients malicieux). Lincivil= max(θ g+ α( 1 g + n + f − 1) + δ g + nσ + ρ( 1 g + 2f + 1), α2n + 4f − 1 b + δ + 2nσ + (4f + 2)ρ) Tincivil= κ Lincivil

le débit minimal que peut fournir le système est le débit que peut fournir le principal de l’instance maître lorsqu’il est malicieux et lorsqu’il ne dépasse pas le seuil de détection. Plus précisément, le ratio entre son débit Tattaqueet le débit en cas d’attaque

Tincivildoit être supérieur ou égal à ∆ :

Tattaque− Tincivil

Tattaque ≥ ∆ ⇔ Tattaque

Tincivil

1 − ∆ Ainsi le débit minimal en cas d’attaque, dans le pire des cas, est :

Tattaque= Tincivil