UNIVERSIDADE FEDERAL DA PARAÍBA
CENTRO DE CIÊNCIAS E TECNOLOGIA
CURSO DE MESTRADO EM SISTEMAS E COMPUTAÇÃO
UM COMPILADOR PARA A TÉCNICA DE DESCRIÇÃO FORMAL E s t e l l e / 8 3
E d i l s o n Ferneda
EDILSON FERNEDA
UM COMPILADOR PARA R TECNICR DE DESCRIÇÃO FORMRL E s t e l l e / 8 3
Dissertação a p r e s e n t a d a ao Curso de
MESTRADO EM SISTEMAS E COMPUTAÇÃO
da U n i v e r s i d a d e F e d e r a l da P a r a i b a ,
em c u m p r i m e n t o às exigências p a r a
obtenção do Grau de M e s t r e .
HREA DE CONCENTRAÇÃO: Redes de Computadores
WANDERLEY LOPES DE SOUZA
o r i e n t a d o r
CAMPINA GRANDE
MAIO - 1988
UM C O M P I L A D O R PARA R T E C N I C R DE D E S C R I Ç Ã O FORMAL E s t e l l e / 8 3 E D I L S O N FERNEDR D i s s e r t a ç ã o a p r e s e n t a d a em 0 9 / 0 5 / 8 6
WANDERLEY LOPES DE S O U Z A - D r .
Presidente
-tlfiLIO DE MENEZES S I L V A - M . S c
Examinador
-SÓLON BENAYON DA S I L V A - M . S c
Examinador
-C A M P I N A GRANDE M A I O - 1 9 8 8A G R A D E C I M E N T O S A g r a d e ç o a t o d o s o s c o l e g a s d o D e p a r t a m e n t o d e S i s t e m a s e C o m p u t a ç ã o d a UFPb q u e , d i r e t a o u i n d i r e t a m e n t e , c o l a b o r a r a m n e s t e t r a b a l h o . A g r a d e ç o t a m b é m a o s c o l e g a s d o c u r s o d e m e s t r a d o , p e l a a m i z a d e . A g r a d e ç o p r i n c i p a l m e n t e a o m e u o r i e n t a d o r , P r o f . W a n d e r l e y L o p e s d e S o u z a , p e l o i n c e n t i v o e p e l a g r a n d e p a c i ê n c i a .
S u m á r i o
1 . I N T R O D U Ç Ã O 0 1
2 . E S P E C I F I C A Ç Ã O E V A L I D A Ç Ã O DE S E R V I Ç O S E PROTOCOLOS 1 1
2 . 1 T D F s e m é t o d o s d e v e r i f i c a ç ã o a s s o c i a d o s 1 3
2 . 2 T D F s em v i a s d e p a d r o n i z a ç ã o 2 1
3. E s t e l l e / 8 3 : UMA TDF BASEADA EM MEFE 2 3 3 . 1 A a r q u i t e t u r a d e um s i s t e m a 2 3 3 . 2 E s p e c i f i c a ç ã o d e um p r o t o c o l o em E s t e l l e / 8 3 2 6 4 . 0 C O M P I L A D O R E s t e l l e / 8 3 3 3 4 . 1 A r q u i t e t u r a d o c o m p i l a d o r 3 4 4 . 2 A c o n s t r u ç ã o d o c o m p i l a d o r 3 9 4 . 2 . 1 Os a n a l i s a d o r e s l é x i c o e s i n t é t i c o 4 1 4 . 2 . 2 0 g e r a d o r d e c ó d i g o 5 3 5. I M P L E M E N T A Ç Ã O E V A L I D A Ç Ã O DE UM PROTOCOLO A T R A V É S DO C O M P I L A D O R E s t e l l e / 8 3 6 6 6 . A P L I C A Ç Õ E S DO C O M P I L A D O R E s t e l l e / 8 3 EM S I S T E M A S DE S I M U L A Ç Ã O 7 7 6 . 1 S i m u l a d o r p a r a a v a l i d a ç ã o d e e s p e c i f i c a ç ã o 7 7 6 . 2 S i m u l a d o r p a r a a a n á l i s e d e d e s e m p e n h o 8 2 7 . C O N C L U S Ã O 8 5 R E F E R E N C I A S B I B L I O G R Á F I C A S 8 3
ANEXO A: S i n t a x e d a TDF E s t e U e / f i 3 9 6 ANEXO B: S u b c o n j u n t o d a s i n t a x e d a l i n g u a g e m P a s c a l / V S u t i l i z a d o 1 0 3 ANEXO C: E s p e c i f i c a ç ã o d e um p r o t o c o l o em E s t e l t e / 8 3 1 0 6 ANEXO D: I m p l e m e n t a ç ã o g e r a d a a p a r t i r d a e s p e c i f i c a ç ã o d o A n e x o C 1 1 3 ANEXO E: N ú c l e o d e e x p l o r a ç ã o p a r a a i m p l e m e n t a ç ã o a p r e s e n t a d a n o A n e x o D 1 2 4 ANEXO F: E s p e c i f i c a ç ã o d e um s i s t e m a p a r a a a n á l i s e d o p r o t o c o l o a p r e s e n t a d o n o A n e x o C ( m e i o i d e a l ) 1 3 0 ANEXO G: I m p l e m e n t a ç ã o d o s i s t e m a a p r e s e n t a d o n o A n e x o F 1 3 5 ANEXO H: E s p e c i f i c a ç ã o d e um s i s t e m a p a r a a a n á l i s e d o p r o t o c o l o a p r e s e n t a d o n o A n e x o C ( m e i o c o m p e r d a s ) . . 1 4 7 ANEXO I : I m p l e m e n t a ç ã o d o s i s t e m a a p r e s e n t a d o n o A n e x o H 1 5 2 ANEXO J : N ò c l e o d e e x p l o r a ç ã o p a r a a s i m p l e m e n t a ç õ e s a p r e s e n t a d a s n o s A n e x o s 6 e 1 1 6 4 ANEXO K: R o t i n a s d e s u p o r t e p a r a a c r i a ç ã o e m a n i p u l a ç ã o d a s e s t r u t u r a s d e d a d o s 1 7 2 ANEXO L: R e s u l t a d o d a a n á l i s e d a s i m u l a ç ã o c o m m e i o i d e a l . . . . 1 7 6 ANEXO M: R e s u l t a d o d a a n á l i s e d a s i m u l a ç ã o c o m m e i o c o m p e r d a s 1 8 0 ANEXO N: M a n u a l d e u t i l i z a ç ã o d o c o m p i l a d o r E s t e l l e / 8 3 1 8 2
L i s t a d e f i g u r a s 1 . 1 : Uma r e d e d e c o m p u t a d o r e s 0 1 1 . 2 : M o d e l o B á s i c o d e R e f e r ê n c i a 0 5 1 / 1 5 0 0 2 1 . 3 : R e l a ç ã o e n t r e a s c l a s s e s d o p r o t o c o l o d e t r a n s p o r t e . . . . 0 6 1 . 4 : E s p e c i f i c a ç ã o d o s p r o t o c o l o s d e uma c a m a d a d e um s i s t e m a d e s c r i t o h i e r a r q u i c a m e n t e 0 7 2 . 1 : C i c i e d e d e s e n v o l v i m e n t o d e um p r o t o c o l o 1 1 2 . 2 : E x e m p l o d o e m p r e g o d e MEF c o m o TDF 1 4 2 . 3 : E x e m p l o d o e m p r e g o d e R e d e d e P e t r i c o m o TDF 1 6 2 . 4 : E x e m p l o d o e m p r e g o d e L i n g u a g e m F o r m a l c o m o TDF 17 2 . 5 : E x e m p l o d o e m p r e g o d e l i n g u a g e m d e p r o g r a m a ç ã o c o m o TDF 1Q 2 . 6 : E x e m p l o d o e m p r e g o d e t é c n i c a h i b r i d a c o m o TDF 2 0 3 . 1 : E s p e c i f i c a ç ã o d e um s e r v i ç o d e c o m u n i c a ç ã o 2 4 3 . 2 : R e f i n a m e n t o d e um m ó d u l o 2 5 3 . 3 : E s t r u t u r a d e uma t r a n s i ç ã o 2 7 3 . 4 : E x e m p l o d e a r q u i t e t u r a d e um s i s t e m a d e t r a n s m i s s ã o d e m e n s a g e n s 2 6 3 . 5 : E x e m p l o d e e s p e c i f i c a ç ã o d e c a n a i s 2 8 3 . 6 : E x e m p l o d e e s p e c i f i c a ç ã o a b s t r a t a d e m ó d u l o s 2 9 3 . 7 : E x e m p l o d e r e f i n a m e n t o d e um m ó d u l o em s u b m ó d u t o s 2 9 3 . 8 : E x e m p l o d e e s p e c i f i c a ç ã o d e um r e f i n a m e n t o 3 0 3 . 9 : E x e m p l o d e e s p e c i f i c a ç ã o d o c o m p o r t a m e n t o d o m ó d u l o PROTOCOLO 3 1 4 . 1 : E t a p a s e p r o c e d i m e n t o s n e c e s s á r i o s p a r a s e a l c a n ç a r um c ó d i g o e x e c u t á v e l 3 5 4 . 2 : E s t r u t u r a d o c o m p i l a d o r E s t e l l e / 8 3 3 6 4 . 3 : E s t r u t u r a i n t e r n a d o p r è - p r o c e s s a d o r E s t e l l e / 8 3 3 7 4 . 4 : S u b c o n j u n t o d a s c l á u s u l a s P r o l o g r e s p o n s á v e i s p e t o g e r e n c i a m e n t o d a e x e c u ç ã o d o c o m p i l a d o r E s t e l l e / 8 3 4 1 4 . 5 : E x e m p l o d e r e g r a d e p r o d u ç ã o d a BNF d a TDF E s t e l l e / 8 3 . . 4 2
4 . 6 : C l á u s u l a , em P r o l o g , q u e t r a d u z uma r e g r a d e p r o d u ç ã o d a BNF d a TDF E s t e l l e / 8 3 4 2 4 . 7 : S u b c o n j u n t o d a s c l á u s u l a s P r o l o g q u e i m p l e m e n t a m o p r e d i c a d o t e r m i n a l 4 3 4 . 8 : S u b c o n j u n t o d a s c l á u s u l a s P r o l o g q u e i m p l e m e n t a m o a n a l i s a d o r l é x i c o d o c o m p i l a d o r E s t e l l e / 8 3 4 8 4 . 9 : E x e m p l o d e a ç ã o s e m â n t i c a 4 5 4 . 1 0 : E x e m p l o d e t e s t e d e c o n t e x t o 4 6 4 . 1 1 : E x e m p l o d e e s t r u t u r a s i n t e r n a s E s t e l l e / 8 3 p a r a e s p e c i f i c a ç õ e s d e c a n a i s 4 7 4 . 1 2 : E x e m p l o d e e s t r u t u r a s i n t e r n a s E s t e l l e / 8 3 p a r a e s p e c i f i c a ç õ e s d e m ó d u l o s 4 7 4 . 1 3 : E x e m p l o d e e s t r u t u r a s i n t e r n a s E s t e l l e / 8 3 p a r a e s p e c i f i c a ç õ e s d e r e f i n a m e n t o s 4 9 4 . 1 4 : E x e m p l o d e e s t r u t u r a s i n t e r n a s E s t e l l e / 8 3 p a r a e s p e c i f i c a ç õ e s d e p r o c e s s o s 5 1 4 . 1 5 : S u b c o n j u n t o d a s c l á u s u l a s P r o l o g q u e i m p l e m e n t a m a f u n ç ã o d e g e r a ç ã o d e c ó d i g o 5 3 - 5 4 4 . 1 6 : E x e m p l o d e e s t r u t u r a i n t e r n a P a s c a l 5 5 4 . 1 7 : S u b c o n j u n t o d a s c l á u s u l a s P r o l o g r e s p o n s á v e i s p e l a g e r a ç ã o d a s e q u ê n c i a d e i t e n s l é x i c o s d a i m p l e m e n t a ç ã o P a s c a l 5 7 4 . 1 8 : S u b c o n j u n t o d a s c l á u s u l a s P r o l o g r e s p o n s á v e i s p e l a g r a v a ç ã o d a i m p l e m e n t a ç ã o P a s c a l 5 8 4 . 1 9 : D e c l a r a ç õ e s d e t i p o s d e d a d o s e d e v a r i á v e i s d e um s e g m e n t o P a s c a l g e r a d o p e l o p r è - p r o c e s s a d o r E s t e l l e / 8 3 . 6 0 4 . 2 0 : D e c l a r a ç õ e s d e f u n ç õ e s e p r o c e d i m e n t o s d e um s e g m e n t o P a s c a l g e r a d o p e l o p r è - p r o c e s s a d o r E s t e l l e / 8 3 6 2 4 . 2 1 : E s t r u t u r a s d e d a d o s q u e r e p r e s e n t a m a s c o n t r u ç õ e s a r q u i t e t u r a i s d o e x e m p l o u t i l i z a d o 6 4 4 . 2 2 : C o r p o d e um p r o c e d i m e n t o , r e l a t i v o à s t r a n s i ç õ e s d e um p r o c e s s o , g e r a d o p e l o p r è - p r o c e s s a d o r E s t e l l e / 8 3 . ... 6 6 5 . 1 : D e s c r i ç ã o d o s m ó d u l o s e d a s i n t e r a ç õ e s ( m e n s a g e n s e p r i m i t i v a s d e b a i x o n i v e l ) d o p r o t o c o l o EXEMPLO 6 9 5 . 2 : M ó d u l o s d o s i s t e m a a s e r s i m u l a d o p a r a a a n á l i s e d i n â m i c a d o p r o t o c o l o EXEMPLO 7 0 5 . 3 : E s p e c i f i c a ç ã o d o c o m p o r t a m e n t o d o m e i o d e t r a n s m i s s ã o i d e a l 7 0
5 . 4 : E s p e c i f i c a ç ã o d o c o m p o r t a m e n t o d o m e i o d e t r a n s m i s s ã o s u j e i t o a p e r d a s d e i n f o r m a ç ã o 7 1 5 . 5 : N ú c l e o d e e x p l o r a ç ã o u t i l i z a d o n a s a n á l i s e s 7 2 - 7 3 6 . 1 : E s p e c i f i c a ç ã o d e um m ó d u l o d e o b s e r v a ç ã o u s a n d o um m é t o d o f o r m a l s e m e l h a n t e a o E s t e l l e / 8 3 8 0 6 . 2 : D e f i n i ç ã o d o s o b s e r v a d o r e s p a r a a o b t e n ç ã o do • t r a c i n g ' 8 1 6 . 3 : S i s t e m a a s e r s i m u l a d o p a r a a a n á l i s e d e d e s e m p e n h o . . . . 8 3
L i c t a d e a b r e v i a t u r a s RBNT : fissociação B r a s i l e i r a d e N o r m a s T é c n i c a s . BNF : " B a c k u s N a u r F o r m " . C C I T T : " C o m i t é C o n s u l t a t i f I n t e r n a t i o n a l T è l è g r a f i q u e e t T è l è f o n i q u e " . CCS : " C a l c u l u s o f C o m m u n i c a t i n g 5 y s t e m s " . E s t e l l e : " E x t e n d e d S t a t e T r a n s i t i o n L a n g u a g e " . FTRM : " F i l e T r a n s f e r , flccess a n d M a n a g e m e n t " . I S O : " I n t e r n a t i o n a l S t a n d a r d s 0 r g a n i z a t i o n " . L o t o s : " L a n g u a g e o f T e m p o r a l O r d e r i n g S p e c i f i c a t i o n ' . MEF : M á q u i n a d e E s t a d o F i n i t a . MEFE : M á q u i n a d e E s t a d o F i n i t a E s t e n d i d a . NB5 : " N a t i o n a l B u - a u o f S t a n d a r d s " . O S I : " O p e n S y s t e m l n t e r c o n n e c t i o n " . PR5 : P o n t o d e R c e s s o a o S e r v i ç o . PS : P r i m i t i v a d e S e r v i ç o . R M - 0 5 I : " B a s i c R e f e r e n c e M o d e t - O p e n S y s t e m s I n t e r c o n n e c t i o n " . 5 D L : " S p e c i f i c a t i o n a n d D e s c r i p t i o n L a n g u a g e " . TDF : T é c n i c a d e D e s c r i ç ã o F o r m a l . U F P b : U n i v e r s i d a d e F e d e r a l d a P a r a i b a .
UM C O M P I L A D O R PARA A T É C N I C A DE D E S C R I Ç Ã O FORMAL E s t e l l e / 8 3 RESUMO N e s t e t r a b a l h o è a p r e s e n t a d o um c o m p i l a d o r , em P r o l o g , p a r a a t é c n i c a d e d e s c r i ç ã o f o r m a l ( T D F ) " E x t e n d e d s t a t e t r a n s i t i o n l a n g u a g e ( E s t e l l e ) " , v e r s ã o d e 1 3 8 3 , d e s e n v o l v i d a p e l a " I n t e r n a t i o n a l S t a n d a r d s O r g a n i z a t i o n ( I S O ) ' . E s s a f e r r a m e n t a p e r m i t e a o b t e n ç ã o s e m i - a u t o m à t i c a d e i m p l e m e n t a ç õ e s d e p r o t o c o l o s ( e s p e c i f i c a d o s em E s t e l l e / 8 3 ) , f a c i l i t a n d o a s u a l e g i b i l i d a d e e t r a n s p o r t a b i l i d a d e . Uma i m p l e m e n t a ç ã o s e m i - a u t o m à t i c a , a s s i m o b t i d a , é uma r e f e r ê n c i a c o n f i à v e l t a n t o p a r a a p a d r o n i z a ç ã o d e i m p l e m e n t a ç õ e s ( d o m e s m o p r o t o c o l o ) p e r t e n c e n t e s a a m b i e n t e s c o m p u t a c i o n a i s h o m o g é n e o s , c o m o p a r a a a n á l i s e d o c o m p o r t a m e n t o d e i m p l e m e n t a ç õ e s d e s e n v o l v i d a s m a n u a l m e n t e ( d e s d e q u e e l a s s e j a m d e r i v a d a s d a mesma e s p e c i f i c a ç ã o ) . 0 c o m p i l a d o r E s t e l l e / 6 3 p o d e t a m b é m s e r u t i l i z a d o p a r a r e a l i z a r a n á l i s e s e s t á t i c a s e d i n â m i c a s d e e s p e c i f i c a ç õ e s . A l é m d i s s o , e l e p o d e s e r i n s e r i d o em a m b i e n t e s a m i g á v e i s d e s i m u l ç ã o , q u e v i s e m a v a l i d a ç ã o d e e s p e c i f i c a ç õ e s e / o u a a n á l i s e d e d e s e m p e n h o d e s i s t e m a s d e s c r i t o s em E s t e l l e / 8 3 .
Fl C O M P I L E R FOR THE FORMRL D E S C R I P T I O N T E C H N I Q U E E s t e l l e / 8 3 RB5TRRCT T h i s w o r k p r e s e n t s a c o m p i l e r w r i t t e n i n P r o l o g f o r t h e f o r m a l d e s c r i p t i o n t e c h n i q u e ( F D T ) " E x t e n d e d s t a t e t r a n s i t i o n l a n g u a g e ( E s t e l l e ) " , 1 3 8 3 v e r s i o n , d e v e l o p e d b y t h e " I n t e r n a t i o n a l S t a n d a r s O r g a n i z a t i o n ( 1 5 0 ) " . T h i s t o o l p e r m i t s t h e s e m i - a u t o r n a t i c g e n e r a t i o n o f p r o t o c o l i m p l e m e n t a t i o n s ( s p e c i f i e d i n E s t e l l e / 8 3 ) , f a c i l i t a t i n g i t s l e g i b i l i t y a n d t r a n s p o r t a b i l i t y . 5 u c h a n i m p l e m e n t a t i o n , o b t a i n e d i n t h i s w a y , i s a r e l i a b l e r e f e r e n c e f o r n o r m a l i z i n g i m p l e m e n t a t i o n s ( f r o m t h e s a m e p r o t o c o l ) b e l o n g i n g t o h o m o g e n e o u s c o m p u t a t i o n a l e n v i r o n m e n t s , a n d f o r a n a l i z i n g t h e b e h a v i o r o f m a n u a l l y d e v e l o p e d i m p l e m e n t a t i o n s ( p r o v i d i n g i t s a r e d e r i v e d f r o m t h e s a m e s p e c i f i c a t i o n ) . T h e E s t e l l e / 8 3 c o m p i l e r m a y a l s o b e u s e d f o r p e r f o r m i n g s t a t i c a n d d y n a m i c a n a l y s i s o f s p e c i f i c a t i o n s . B e s i d e s t h i s , i t c a n b e i n s e r t e d i n s i m u l a t i o n f r i e n d l y e n v i r o n m e n t s f o r s p e c i f i c a t i o n v a l i d a t i o n s a n d / o r f o r p e r f o r m a n c e a n a l y s i s o f s y s t e m s d e s c r i b e d i n E s t e l l e / 8 3 .
1 . I N T R O D U Ç Ã O P n e c e s s i d a d e d e o t i m i z a r a u t i l i z a ç ã o d o s r e c u r s o s c o m p u t a c i o n a i s a s s o c i a d a a o a u m e n t o c o n s t a n t e d o s b e n e f í c i o s f o r n e c i d o s p e l o s s e r v i ç o s d e c o m u n i c a ç ã o , v i a b i l i z a r a m o c o m p a r t i l h a m e n t o d e s s e s r e c u r s o s e c o n s e q u e n t e m e n t e o a c e s s o a i n f o r m a ç õ e s d i s t r i b u í d a s g e o g r a f i c a m e n t e , a t r a v é s d a s a s s i m c h a m a d a s r e d e s d e c o m p u t a d o r e s ( F i g . 1 . 1 ) I T a n e 0 1 3 . E l I E I I E I I E I
\ / \ /
W \ / < N D C > - - - < N D C > - - - I E I E I //
I E I <NDC> / \ / \ / I E ! < N D Ç > / \ / \ I E I \ \ \ \ \ \ I E \ / \ / < N D Ç > -/ \ / \ _ / I E E l / E l < N D Ç > -/ \ / \_ < N D Ç > 1 1/ \
_ / \ I E I IÊI / _ _ / < N D Ç > - - - < N D Ç > - - - l | l / \ \ / \ _ \ _ < N D Ç > I E I I E I / \ / V IÊI I E I E : E s t a ç ã o d e t r a b a l h o NDC : N6 d e c o m u t a ç ã o F i g u r a 1 . 1 : Uma r e d e d e c o m p u t a d o r e s . Em f u n ç ã o d a s u a a b r a n g ê n c i a , em t e r m o s d e d i s t â n c i a , as r e d e s d e c o m p u t a d o r e s s ã o c l a s s i f i c a d a s em d u a s g r a n d e s c a t e g o r i a s : r e d e s l o c a i s , c u j a a b r a n g ê n c i a m á x i m a e s t á em t o r n o d e 1 Km, e r e d e s a l o n g a d i s t â n c i a .fi f i m d e f a c i l i t a r a c o m p r e e n s ã o d o s p r o b l e m a s i n e r e n t e s à c o m u n i c a ç ã o e n t r e o s e l e m e n t o s i n t e g r a n t e s d e um s i s t e m a de t a l p o r t e e a f i m d e f a c i l i t a r a e s p e c i f i c a ç ã o d a s f u n ç S e s q u e uma r e d e d e c o m p u t a d o r e s d e v e d e s e m p e n h a r , e s p e c i a l i s t a s d a á r e a p r o p u s e r a m uma e s t r u t u r a ç ã o d e s s a s f u n ç ã e s em c a m a d a s ( o u n í v e i s ) s o b r e p o s t o s h i e r a r q u i c a m e n t e , d a n d o o r i g e m a o M o d e l o B á s i c o d e R e f e r ê n c i a p a r a I n t e r c o n e x ã o d e S i s t e m a s R b e r t o s ( R M - O S I ) ( F i g . 1 . 2 ) C Z i m m 8 0 ) . S i s t e m a S i s t e m a B b e r t o A b e r t o Rp l i c a ç ã o P r o t o c o l o d e R p l i c a ç ã o V 1 Rp l i c a ç ã o Rp l i c a ç ã o T 1 Rp l i c a ç ã o A p r e s e n t a ç ã o P r o t o c o l o d e R p r e s e n t a ç ã o * 1 R p r e s e n t a ç ã o A p r e s e n t a ç ã o T 1 R p r e s e n t a ç ã o S e s s ã o P r o t o c o l o d e S e s s ã o
> 1
S e s s ã o S e s s ã o> 1
S e s s ã o T r a n s p o r t e P r o t o c o l o d e T r a n s p o r t e* 1
T r a n s p o r t e T r a n s p o r t e* 1
T r a n s p o r t e R e d a I « -I P r o t o c o l o d e R e d e -I* 1
R e d e E n l a c e I P r o t o c o l o d e E n l a c e t * I E n l a c e F i s i c o I i -I P r o t o c o l o F i s i c o -I+ 1
F i s i c o M e i o s F í s i c o s p a r a a I n t e r c o n e x ã o d e S i s t e m a s R b e r t o s F i g u r a 1 . 2 : M o d e l o B á s i c o d e R e f e r ê n c i a O S I / I S O . 0 m o d e l o a c i m a e a s f u n ç S e s a s e r e m d e s e m p e n h a d a s p o r c a d a c a m a d a s ã o d e f i n i d o s p e l a " I n t e r n a t i o n a l S t a n d a r d s O r g a n i z a t i o n ( I S O ) " em [ I S O 8 3 a ) e p e l o " C o m i t é C o n s u l t a t i f I n t e r n a t i o n a l T é l é g r a p h i q u e e t T è l è p h o n i q u e ( C C I T T ) " em I C C I T 8 4 1 . N e s t e t r a b a l h o s e r ã o e m p r e g a d o s o s p a d r ã e s e a n o m e n c l a t u r a d e f i n i d o sp e l a 1 5 0 , u t i l i z a n d o - s e , n a m e d i d a d o p o s s í v e l , a s t r a d u ç õ e s já n o r m a l i z a d a s p e l a A s s o c i a ç ã o B r a s i l e i r a d e N o r m a s T é c n i c a s ( A B N T ) . A a r q u i t e t u r a d o R M - O S I è d i v i d i d a em s e t e c a m a d a s , c a d a uma d e l a s c o m um c o n j u n t o d e f u n ç õ e s bem d e f i n i d a s . E s s a s c a m a d a s p r o p o r c i o n a m uma m e l h o r i a p r o g r e s s i v a d o s s e r v i ç o s d e c o m u n i c a ç ã o , p e r m i t i n d o q u e o s p r o c e s s o s d e a p l i c a ç ã o , a t r a v é s d e s s e s s e r v i ç o s , p o s s a m c o o p e r a r e n t r e s i . A s e g u i r è d a d o uma d e s c r i ç ã o d e c a d a uma d a s c a m a d a s d o R M - 0 5 I : ( a ) c a m a d a d e a p l i c a ç ã o : è o n i v e l m a i s a l t o d a a r q u i t e t u r a 0 5 1 , s e n d o q u e a s o u t r a s c a m a d a s e x i s t e m a p e n a s p a r a l h e d a r s u p o r t e . E l a s e r v e d i r e t a m e n t e à s a p l i c a ç õ e s d o s u s u á r i o s f i n a i s , f a z o g e r e n c i a m e n t o d e s s a s a p l i c a ç õ e s e o g e r e n c i a m e n t o d a s a t i v i d a d e s d e c o m u n i c a ç ã o d o s i s t e m a . A l é m d o s p r o t o c o l o s d e u s o g e r a l , c a d a u s u á r i o p o d e d e f i n i r n e s s a c a m a d a m a i s a l g u n s p r o t o c o l o s d e u s o p a r t i c u l a r i z a d o ; ( b ) c a m a d a d e a p r e s e n t a ç ã o : v i s a c o m p a t i b i l i z a r a s r e p r e s e n t a ç õ e s d a s e s t r u t u r a s d e d a d o s r e f e r e n c i a d a s p e l o s p r o c e s s o s de a p l i c a ç ã o c o m u n i c a n t e s e d o s p r ó p r i o s d a d o s q u e s ã o t r a n s f e r i d o s e n t r e e s s e s p r o c e s s o s . Com e s s a s t r a n s f o r m a ç õ e s , p u r a m e n t e s i n t é t i c a s , a d a p t a - s e f o r m a s p a r t i c u l a r e s d e m a n i p u l a ç ã o d e i n f o r m a ç ã o p e r t i n e n t e s a t a i s p r o c e s s o s . E r e s p o n s á v e l t a m b é m , q u a n d o n e c e s s á r i o , p e l a s e g u r a n ç a d a i n f o r m a ç ã o , p e l a c o m p r e s s ã o d e d a d o s e p e l o o f e r e c i m e n t o d e um " t e r m i n a l v i r t u a l " ;
( c ) c a m a d a d e s e s s ã o : f o r n e c e o s m e i o s n e c e s s á r i o s p a r a q u e d u a s e n t i d a d e s d e a p r e s e n t a ç ã o p a r e s p o s s a m o r g a n i z a r e s i n c r o n i z a r o d i á l o g o e g e r e n c i a r a t r o c a d e d a d o s . P c a m a d a d e s e s s ã o t a m b é m p r e o c u p a - s e c o m a s n e c e s s i d a d e s d a s a p l i c a ç õ e s , n a m e d i d a em q u e g e r ê n c i a a a l t e r n â n c i a d o e n v i o d e i n f o r m a ç ã o e n t r e o s p r o c e s s o s c o m u n i c a n t e s ; ( d ) c a m a d a d e t r a n s p o r t e : f a z a r e c u p e r a ç ã o d o s e r r o s i n e r e n t e s à p e r d a o u d e s o r d e n a m e n t o d a s i n f o r m a ç õ e s , q u e t r a n s i t a m n a s c a m a d a s i n f e r i o r e s , e a o t i m i z a ç ã o d a r e l a ç ã o c u s t o / b e n e f i c i o d o s s e r v i ç o s d e c o m u n i c a ç ã o . R s s i m , t o r n a t r a n s p a r e n t e à s c a m a d a s s u p e r i o r e s a s c a r a c t e r í s t i c a s d a s u b r e d e d e c o m u n i c a ç ã o e g a r a n t e a t r a n s f e r ê n c i a d e d a d o s d e m a n e i r a c o r r e t a e e f i c i e n t e ; ( e ) c a m a d a d e r e d e : f o r n e c e o s m e i o s n e c e s s á r i o s p a r a a t r o c a d e u n i d a d e s d e d a d o s d e s e r v i ç o d e r e d e e n t r e e n t i d a d e s p a r e s d e t r a n s p o r t e , a t r a v é s d a s c o n e x õ e s d e r e d e . I s s o è f e i t o e s t a b e l e c e n d o - s e um " c i r c u i t o v i r t u a l " , o n d e t r a n s i t a m d a d o s c o r r e t o s e c o r r e t a m e n t e o r d e n a d o s , o u è f e i t o a t r a v é s d e " d a t a g r a m a " , o n d e a o r d e m d e e n t r e g a d o s d a d o s n ã o é g a r a n t i d a . E x e c u t a t a m b é m a f u n ç ã o d e r e p a s s e e r o t e a m e n t o d e s s a s u n i d a d e s d e d a d o s a t r a v é s d a s u b r e d e ; ( f ) c a m a d a d e e n l a c e : g a r a n t e a c o n f i a b i l i d a d e d a s u n i d a d e s d e d a d o s d e s e r v i ç o d e e n l a c e , t r o c a d a s a t r a v é s d o m e i o f í s i c o d e c o m u n i c a ç ã o ( s e j a e l e q u a l f o r ) , e p e r m i t e à c a m a d a d e r e d e c o n t r o l a r a i n t e r c o n e x ã o d e c i r c u i t o s d e d a d o s d e n t r o d a c a m a d a f í s i c a . F a z t a m b é m , q u a n d o n e c e s s á r i o , o c o n t r o l e d o c o m p a r t i l h a m e n t o d o m e i o f i s i c o d e t r a n s m i s s ã o e
( g ) c a m a d a f í s i c a : p r o v ê o s m e i o s m e c â n i c o s , f u n c i o n a i s e o s p r o c e d i m e n t o s n e c e s s á r i o s p a r a a t i v a r , m a n t e r e d e s a t i v a r c o n e x õ e s f í s i c a s , p a r a a t r a n s m i s s ã o d e b i t s e n t r e e n t i d a d e s d e e n l a c e d e d a d o s . Nem t o d o s o s s i s t e m a s a b e r t o s r e p r e s e n t a m a o r i g e m o u o d e s t i n o d o s d a d o s . A l g u n s s i s t e m a s a b e r t o s a g e m a p e n a s c o m o r e p e t i d o r e s , r e p a s s a n d o o s d a d o s p a r a o u t r o s s i s t e m a s a b e r t o s . 0 e s t a b e l e c i m e n t o e a c o n s o l i d a ç ã o d e p a d r õ e s e n v o l v e m n ã o s ô q u e s t õ e s t é c n i c a s mas t a m b é m c o n s i d e r a ç õ e s p o l l t i c o -m e r c a d o l ò g i c a s . Os p a d r õ e s p a r a p r o t o c o l o s d e c o -m u n i c a ç ã o t ê -m s i d o b e m a c e i t o s p e l o s f a b r i c a n t e s q u e a t u a m em t e l e i n f o r m á t i c a . I s s o è c o n s e q u ê n c i a , em p a r t e , d a c o o p e r a ç ã o e n t r e a 1 5 0 e o C C I T T . Em r e l a ç ã o a o s p r o t o c o l o s 0 5 1 , r e l a t i v o s à s c a m a d a s i n f e r i o r e s , f o i a p r o v e i t a d a a r e c o m e n d a ç ã o X . 2 5 d o C C I T T j á e x i s t e n t e C C C I T 7 7 ] . A p r i m e i r a p a d r o n i z a ç ã o r e a l m e n t e e f e t u a d a p e l a 1 5 0 f o i a d o p r o t o c o l o d e t r a n s p o r t e C I S O 8 4 a , 1 5 0 8 4 b ] . 0 p r i m e i r o o b j e t i v o d o T r a n s p o r t e f o i c o m p e n s a r a s d i f e r e n ç a s e n t r e a s r e d e s d e s e n v o l v i d a s , a f i m d e f o r n e c e r um s e r v i ç o h o m o g é n e o a o n i v e l s u p e r i o r I L o F r 8 7 ] . A s s i m s e n d o , a 1 5 0 d e f i n i u c i n c o c l a s s e s p a r a e s s e p r o t o c o l o , com d i f e r e n t e s n i v e i s d e c o m p l e x i d a d e ( F i g . 1 . 3 ) : ( a ) c l a s s e 0 - è a m a i s s i m p l e s e d e v e s e r u t i l i z a d a c o m r e d e s d e a l t a q u a l i d a d e . ( b ) c l a s s e 1 - c o n t é m a s f u n ç õ e s d a c l a s s e 0 e f u n ç õ e s a d i c i o n a i s d e r e a c ã o a o s e r r o s s i n a l i z a d o s p e l o n í v e l i n f e r i o r .
( c ) c l a s s e 2 - t a m b é m d e v e s e r u t i l i z a d a c o m r e d e s d e a l t a q u a l i d a d e e a l é m d a s f u n ç õ e s d a c l a s s e 0 , o f e r e c e , e n t r e o u t r o s s e r v i ç o s , a s p o s s i b i l i d a d e s d e m u l t i p l e x a ç ã o d a s c o n e x õ e s d e t r a n s p o r t e e d e e n v i o d e d a d o s e x p r e s s o s . ( d ) c l a s s e 3 - a l é m d a s f u n c i o n a l i d a d e s d a c l a s s e 2 , o f e r e c e a d e t e c ç ã o d e e r r o s b á s i c o s . ( e ) c l a s s e 4 - a l é m d a s f u n c i o n a l i d a d e s o f e r e c i d a s p e l a c l a s s e 3, o f e r e c e t a m b é m a r e c u p e r a ç ã o d e e r r o s r e l a t i v o s à t r a n s f e r ê n c i a d e d a d o s . T C C l a s s e A I 0 I M I P C l a s s e 3 I L I E I I X C l a s s e 1 I C l a s s e 2 I I I I I D I P C l a s s e 0 I D I E F i g u r a 1 . 3 : R e l a ç ã o e n t r e a s c l a s s e s d o p r o t o c o l o d e t r a n s p o r t e . P a r a a s c a m a d a s d e s e s s ã o e a p r e s e n t a ç ã o já e x i s t e m a s p r o p o s t a s d e p a d r o n i z a ç ã o [ I S O 8 3 b , I S O 8 3 c ] e [ I S O 8 4 c , I S O 8 4 d ] r e s p e c t i v a m e n t e . No c a s o d a c a m a d a d e a p l i c a ç ã o , a l g u m a s p r o p o s t a s jà f o r a m e f e t u a d a s . P o r e x e m p l o , o p r o t o c o l o p a r a a t r a n s f e r ê n c i a d e a r q u i v o s FTPM [ I S O 8 6 a ] . Uma v e z q u e a s r e d e s d e c o m p u t a d o r e s a t e n d e m a s i s t e m a s c o m p u t a c i o n a i s h e t e r o g é n e o s e uma v e z q u e a s i m p l e m e n t a ç õ e s d o s
p r o t o c o l o s d e c o m u n i c a ç ã o s ã o n o r m a l m e n t e r e a l i z a d a s em e q u i p e , é i m p o r t a n t e uma d e s c r i ç ã o c l a r a e c o n c i s a d e t a i s p r o t o c o l o s . Na d e s c r i ç ã o d e uma r e d e d e c o m p u t a d o r e s , d o i s c o n c e i t o s s ã o f u n d a m e n t a i s : s e r v i ç o e p r o t o c o l o I L o p e 8 7 a ] . U t i l i z a n d o o s s e r v i ç o s o f e r e c i d o s p e l a c a m a d a ( N - l ) , a s e n t i d a d e s d a c a m a d a ( N ) c o o D e r a m e n t r e s i , d e a c o r d o c o m o p r o t o c o l o ( N ) , p a r a f o r n e c e r um s e r v i ç o ( N ) c o m m a i s r e c u r s o s à c a m a d a ( N + 1 ) ( F i g . 1 . 4 ) . • I [ ] I P A S ( N + 1 ) 1 I I I I e n t i d a d e ( N + 1 ) 1 I [ ] I P A S C N + 1 ) 2 I I I I e n t i d a d e ( N + 1 ) 2 I c a m a d a ( N + 1 ) I i I P 5 ( N ) 1 : i ! I
• [ 3
-P A S ( N ) 1 I e n t i d a d e ( N ) 1 I T i í P 5 Í N - 1 ) 1 t ] -P A S Í N - 1 ) 1 ! P 5 ( N ) 2 I I I - I t ] I P A 5 ( N ) 2 I I t I e n t i d a d e ( N ) 2 I I T I I P S Í N - 1 ) 2 * I P A S ( N - Í ) 2 I s e r v i ç o s ( N - l )I
s e r v i ç o ( N ) c a m a d a ( N ) F i g u r a 1 . 4 : E s p e c i f i c a ç ã o d o s p r o t o c o l o s d e uma c a m a d a d e um s i s t e m a d e s c r i t o h i e r a r q u i c a m e n t e . A n o ç ã o d e s e r v i ç o í N ) è a b s t r a t a , p o i s c o n d e n s a t o d a s a s n c a m a d a s , o m i t i n d o o f l u x o d e d a d o s e n t r e e l a s . A e s p e c i f i c a ç ã o d e s s e s e r v i ç o è a d e s c r i ç ã o , p o r um o b s e r v a d o r e x t e r n o , d o c o m p o r t a m e n t o d e uma " c a i x a p r e t a " , s u j e i t a à s t r o c a s d ep r i m i t i v a s d e s e r v i ç o ( N ) ( P 5 ( N ) ) c o m a c a m a d a s u p e r i o r , s e n d o q u e t a i s t r o c a s s ã o r e a l i z a d a s a t r a v é s d o s p o n t o s d e a c e s s o a o s e r v i ç o ( N ) ( P A S ( N ) ) . Na e s p e c i f i c a ç ã o d o p r o t o c o l o ( N ) è d e s c r i t o o c o m p o r t a m e n t o d a s e n t i d a d e s q u e s e c o m u n i c a m , s e s i n c r o n i z a m e o p e r a m d e f o r m a c o n c o r r e n t e v i a o s P A 5 I N - 1 ) C B o c h 8 0 3 . 0 p r o j e t o e i m p l e m e n t a ç ã o d e s i s t e m a s d e c o m u n i c a ç ã o , a l é m d o s p r o b l e m a s i n e r e n t e s a t o d o p r o j e t o d e d e s e n v o l v i m e n t o d e s o f t w a r e , a p r e s e n t a a l g u m a s p a r t i c u l a r i d a d e s C B o c h 8 3 3 : ( a ) d e v e - s e g a r a n t i r a c o m p a t i b i l i d a d e e n t r e s e u s d i v e r s o s c o m p o n e n t e s ; ( b ) q u a s e s e m p r e t a i s c o m p o n e n t e s s ã o i m p l a n t a d o s p o r g r u p o s d i s t i n t o s d e t é c n i c o s t r a b a l h a n d o em o r g a n i z a ç õ e s d i s t i n t a s ; ( c ) o f u n c i o n a m e n t o d o s i s t e m a c o m o um t o d o é d e d i f í c i l c o m p r e e n s ã o , d e v i d o a o p a r a l e l i s m o d a s o p e r a ç õ e s q u e s ã o e x e c u t a d a s n o s s e u s d i f e r e n t e s c o m p o n e n t e s . P e x p e r i ê n c i a t e m m o s t r a d o q u e e s p e c i f i c a ç õ e s i n f o r m a i s d e s i s t e m a s d e c o m u n i c a ç ã o c a u s a m a m b i g u i d a d e s , d i f i c u l t a n d o o s e u d e s e n v o l v i m e n t o t l s R o 8 5 3 . 0 e m p r e g o d e t é c n i c a s f o r m a i s d e d e s c r i ç ã o p a r a a e s p e c i f i c a ç ã o d e s e r v i ç o s e d e p r o t o c o l o s d e c o m u n i c a ç ã o , a l é m d e g e r a r e s p e c i f i c a ç õ e s n ã o a m b í g u a s , q u e s e r v e m c o m o r e f e r ê n c i a s c o n f i á v e i s p a r a o t r a b a l h o em e q u i p e , f a c i l i t a a s t a r e f a s s u b s e q u e n t e s d e v e r i f i c a ç ã o , i m p l e m e n t a ç ã o e t e s t e d e s s e s p r o t o c o l o s . A 1 5 0 , i n t e r e s s a d a t a m b é m n a f i x a ç ã o d e p a d r õ e s p a r a a e s p e c i f i c a ç ã o f o r m a l d o s p r o t o c o l o s d e c o m u n i c a ç ã o , c r i o u o
g r u p o d e t r a b a l h o I S O T C 9 7 / 5 C 1 6 / W 6 1 p a r a o d e s e n v o l v i m e n t o d e t é c n i c a s d e d e s c r i ç ã o f o r m a l ( T D F ) . E s s e g r u p o f o i d i v i d i d o em t r ê s s u b g r u p o s , s e n d o q u e o p r i m e i r o ( s u b g r u p o A ) f i c o u r e s p o n s á v e l p e l a d e f i n i ç ã o d o s c o n c e i t o s a r q u i t e t u r a i s , q u e d a r i a m s u p o r t e a o d e s e n v o l v i m e n t o d e T D F s p e l o s o u t r o s s u b g r u p o s . 0 s u b g r u p o B f i c o u r e s p o n s á v e l p e l o d e s e n v o l v i m e n t o d e uma TDF b a s e a d a n o c o n c e i t o d e m á q u i n a d e e s t a d o s f i n i t a e s t e n d i d a ( M E F E ) , q u e d e u o r i g e m à t é c n i c a " E x t e n d e d s t a t e t r a n s i t i o n l a n g u a g e ( E s t e l l e ) " . 0 s u b g r u p o C, p o r s u a v e z , c r i o u a t é c n i c a ' L a n g u a g e o f t e m p o r a l o r d e r i n g s p e c i f i c a t i o n ( L o t o s ) " , q u e ê b a s e a d a em o r d e m t e m p o r a l d e p r i m i t i v a s d e i n t e r a ç ã o . V a l e r e s s a l t a r q u e e s s a s t é c n i c a s e s t ã o em e v o l u ç ã o , n ã o t e n d o a l c a n ç a d o a i n d a s e u e s t á g i o f i n a l . Um c o m p i l a d o r , p a r a uma t é c n i c a d e d e s c r i ç ã o f o r m a l , p e r m i t e a o b t e n ç ã o s e m i - a u t o m á t i c a d e p r o t ó t i p o s d e i m p l e m e n t a ç õ e s , c u j a s e s p e c i f i c a ç õ e s s ã o r e a l i z a d a s n e s s a t é c n i c a . I s s o f a c i l i t a a l e g i b i l i d a d e , a t r a n s p o r t a b i l i d a d e e o d e s e n v o l v i m e n t o d e i m p l e m e n t a ç õ e s d e f i n i t i v a s , j á q u e e l i m i n a b o a p a r t e d a c o d i f i c a ç ã o p e r s o n a l i z a d a C L o F e 8 7 a ] . Uma i m p l e m e n t a ç ã o s e m i - a u t o m a t i c a p o d e s e r t a m b é m uma r e f e r ê n c i a c o n f i á v e l p a r a a p a d r o n i z a ç ã o d e i m p l e m e n t a ç õ e s , p e r t e n c e n t e s a a m b i e n t e s c o m p u t a c i o n a i s h o m o g é n e o s , e p a r a a c o m p a r a ç ã o c o m o c o m p o r t a m e n t o d e uma i m p l e m e n t a ç ã o d e s e n v o l v i d a m a n u a l m e n t e ( d e s d e q u e a m b a s s e j a m d e r i v a d a s d a m e s m a e s p e c i f i c a ç ã o ) . P o r f i m , e s s e c o m p i l a d o r p o d e s e r i n t e g r a d o a s i s t e m a s q u e v i s a m :
( a ) um c e r t o g r a u d e v e r i f i c a ç ã o ( o u v a l i d a ç ã o d o d e s i g n ) p a r a a s d i v e r s a s e s p e c i f i c a ç õ e s ( r e f e r e n t e s a o s d i v e r s o s n í v e i s d e a b s t r a ç ã o ) d e um p r o t o c o l o o u ( b ) e s t u d o s d e s i m u l a ç ã o p a r a a a n á l i s e d e d e s e m p e n h o d e s s e p r o t o c o l o . 0 o b j e t i v o d e s s e t r a b a l h o è a p r e s e n t a r o s r e s u l t a d o s d o d e s e n v o l v i m e n t o d e um c o m p i l a d o r p a r a a TDF E s t e l l e e s u a u t i l i d a d e c o m o p a r t e d e um a m b i e n t e d e s i m u l a ç ã o . No c a p i t u l o 2 s ã o a p r e s e n t a d a s a l g u m a s t é c n i c a s d e d e s c r i ç ã o f o r m a l p a r a p r o t o c o l o s , c o m s e u s m é t o d o s d e v a l i d a ç ã o p e r t i n e n t e s e n o c a p i t u l o 3 é i n t r o d u z i d a a TDF E s t e l l e . No c a p i t u l o A é d e s c r i t o o c o m p i l a d o r E s t e l l e / 8 3 . Os r e s u l t a d o s o b t i d o s , c o m o s t e s t e s d e s s e c o m p i l a d o r , s ã o a p r e s e n t a d o s n o c a p i t u l o 5. No c a p i t u l o 6 s ã o s u g e r i d a s f u t u r a s d i r e ç õ e s d e t r a b a l h o , q u e p o d e m f a z e r u s o d e s s e c o m p i l a d o r . F i n a l m e n t e a s c o n c l u s õ e s s ã o a p r e s e n t a d a s n o c a p i t u l o 7 .
2. E S P E C I F I C A Ç Ã O E V A L I D A Ç Ã O DE S E R V I Ç O S E PROTOCOLOS O d e s e n v o l v i m e n t o d e um p r o t o c o l o d e c o m u n i c a ç ã o p o d e s e r r e a l i z a d o a t r a v é s d a s s e g u i n t e s e t a p a s ( c i c l o d e d e s e n v o l v i m e n t o ) ( F i g . 2 . 1 ) [ L o S t 8 8 3 : v a l i d a ç ã o i n f o r m a l v a i i d a ç ã o i n f o r m a l
• +
l e s p e c i f i c a ç ã o t »l i n f o r m a l d o I - - •I I _ S 8 £ Y Í £ g ( _ N 2 _ I
I v a l i d a ç ã o d o _ d e s i g n I I* £
e s p e c i f i c a ç ã o I f o r m a l d o _ £ E £ v i £g(. N2 I i v e r i f i c a ç ã o I f o r m u l t d e I 1 Q t e n T I a ç ã o I I ç_8es I I E I I I E 2 I I s e r v i ç o I l - Í N - 1 ) _ l_
I v a i i d a ç ã o I I i n f o r m a l _ I I •_ I i i
I l e s p e c i f i c a ç ã o t I e s p e c i f i c a ç ã o I« * l i n f o r m a l d o I I f o r m a l d o I 1 2 £ 2 Í 2 Ç g i g ( . N )__ I I B £ S Í 2 Ç 2 Í & ( . N 2 _ I * T I v a l i d a ç ã o • i n f o r m a l I i m p l e m e n t a ç ã o I I d o I * I B £ 2 Í 2 £ 2 Í 2 l N 2 _ ' - v e r i f i c a ç ã o t e s t e d e I c o n f o r m i d a d e F i g u r a 2 . 1 : C i c l o d e d e s e n v o l v i m e n t o d e um p r o t o c o l o . ( a ) f o r m u l a ç ã o d e i n t e n ç õ e s , o n d e s ã o d e f i n i d a s , d e m a n e i r a g e r a l , a s p r i n c i p a i s c a r a c t e r í s t i c a s d o p r o t o c o l o ; ( b ) e s p e c i f i c a ç ã o i n f o r m a l , e s c r i t a em l i n g u a g e m n a t u r a l e c o n t e n d o uma d e s c r i ç ã o d e t a l h a d a d o s o f t w a r e a s e r p r o d u z i d o ; ( c ) e s p e c i f i c a ç ã o f o r m a l , r e a l i z a d a a t r a v é s d e uma TDF, o q u e a t o r n a uma r e f e r ê n c i a c o n f i á v e l p a r a o t r a b a l h o em e q u i p e , jà q u e e l i m i n a a s a m b i g u i d a d e s i n t r o d u z i d a s p e l a e s p e c i f i c a ç ã oi n f o r m a l . E l a è ó t i l t a m b é m p a r a o d e s e n v o l v i m e n t o d a f a s e p o s t e r i o r e p a r a a s a t i v i d a d e s d e v a l i d a ç ã o e ( d ) i m p l e m e n t a ç ã o , q u e t e m p o r o b j e t i v o a g e r a ç ã o d e um c ó d i g o e x e c u t á v e l a p a r t i r d a e s p e c i f i c a ç ã o f o r m a l . A s s o c i a d a s a e s s a s e t a p a s , p o d e - s e t a m b é m i d e n t i f i c a r a l g u m a s a t i v i d a d e s d e v a l i d a ç ã o : ( a ) v a l i d a ç ã o i n f o r m a l , o n d e d e v e s e r v e r i f i c a d a i n f o r m a l m e n t e a c o n f o r m i d a d e d a s i n t e n ç õ e s d o e s p e c i f i c a d o r em r e l a ç ã o à s e s p e c i f i c a ç õ e s g e r a d a s ; ( b ) v e r i f i c a ç ã o d a o c o r r ê n c i a d e p r o p r i e d a d e s g e r a i s ( a u s ê n c i a d e i m p a s s e s , a u s ê n c i a d e c i c l o s i m p r o d u t i v o s , v i v a c i d a d e , t e r m i n o a p r o p r i a d o , a t e . . . ) I B o c h 7 8 ] e p r o p r i e d a d e s e s p e c i f i c a s q u e g a r a n t a m a c o r r e ç ã o d o p r o t o c o l o ; ( c ) v a l i d a ç ã o d o d e s i g n d o p r o t o c o l o , i s t o è , v e r i f i c a r s e o f u n c i o n a m e n t o c o n j u n t o d e d u a s e n t i d a d e s ( N ) , q u e o p e r a m s e g u n d o a e s p e c i f i c a ç ã o d o p r o t o c o l o ( N ) e s e c o m u n i c a m a t r a v é s d o s e r v i ç o ( N - 1 ) , s a t i s f a z a e s p e c i f i c a ç ã o d o s e r v i ç o ( N ) e ( d ) t e s t e d e c o n f o r m i d a d e d a i m p l e m e n t a ç ã o em r e l a ç ã o à e s p e c i f i c a ç ã o . P a r a q u e a s e s p e c i f i c a ç õ e s f o r m a i s p o s s a m f o r n e c e r d e s c r i ç õ e s c l a r a s e c o n c i s a s , d o s i s t e m a q u e e s t á s e n d o c o n c e b i d o , e p o s s a m p e r m i t i r uma a n á l i s e r i g o r o s a d a s d i f e r e n t e s f a s e s d o c i c l o d e d e s e n v o l v i m e n t o d e um p r o t o c o l o , è n e c e s s á r i o q u e a s T D F s u t i l i z a d a s , p a r a a o b t e n ç ã o d e s s a s e s p e c i f i c a ç õ e s f o r m a i s , p o s s u a m :
( a ) um a l t o g r a u d e a b s t r a ç ã o , n o s e n t i d o d e i n d e p e n d ê n c i a em r e l a ç ã o a o s m é t o d o s d e i m p l e m e n t a ç ã o e n o s e n t i d o d e o m i s s ã o , em q u a l q u e r e t a p a d a e s p e c i f i c a ç ã o , d o s d e t a l h e s i r r e l e v a n t e s ; ( b ) p o d e r d e e x p r e s s ã o , i s t o é , s u a s c o n s t r u ç õ e s a l é m d e f o r n e c e r m e i o s p a r a e x p r i m i r c o m u n i c a ç ã o , s i n c r o n i z a ç ã o e c o n c o r r ê n c i a , d e v e m p e r m i t i r a d e s c r i ç ã o d o s s e r v i ç o s e p r o t o c o l o s d a s s e t e c a m a d a s O S I d e f o r m a h i e r á r q u i c a , m o d u l a r e i n t u i t i v a e ( c ) p o d e r d e a n á l i s e , o u s e j a , p o s s u a m um m o d e l o m a t e m á t i c o , q u e p e r m i t a a v e r i f i c a ç ã o f o r m a l d e p r o p r i e d a d e s d e s e j a d a s p a r a o s o b j e t o s q u e e s t ã o s e n d o e s p e c i f i c a d o s . 2 . 1 T D F s e m é t o d o s d e v e r i f i c a ç ã o a s s o c i a d o s V á r i a s t é c n i c a s f o r a m p r o p o s t a s p a r a a e s p e c i f i c a ç ã o d e s e r v i ç o s e p r o t o c o l o s d e c o m u n i c a ç ã o . E s s a s t é c n i c a s p o d e m s e r a g r u p a d a s em t r ê s g r a n d e s c a t e g o r i a s : ( a ) t é c n i c a s b a s e a d a s em m o d e l o s d e t r a n s i ç ã o ; ( b ) t é c n i c a s b a s e a d a s em l i n g u a g e n s d e p r o g r a m a ç ã o e ( c ) t é c n i c a s h í b r i d a s . fis T D F s b a s e a d a s em m o d e l o s d e t r a n s i ç ã o s ã o e f i c a z e s p a r a a d e s c r i ç ã o d o s a s p e c t o s d e c o n t r o l e d o s p r o t o c o l o s ( f a s e s d e i n i c i a l i z a ç ã o , d e e s t a b e l e c i m e n t o e d e e n c e r r a m e n t o d e c o n e x ã o ) . D e n t r o d e s s a c a t e g o r i a , a l g u m a s d a s t é c n i c a s m a i s c o n h e c i d a s s ã o : a s b a s e a d a s em M á q u i n a d e E s t a d o s F i n i t a ( M E F ) C B o c h 7 8 ) , R e d e s
d e P e t r i t D a n t 8 0 ] e L i n g u a g e n s F o r m a i s I T e L i 7 8 ] .
Uma MEF è uma q u i n t u p l a < X , E , S , T , R > , o n d e X è um c o n j u n t o f i n i t o d e e s t a d o s , E um c o n j u n t o f i n i t o d e e n t r a d a s , S um c o n j u n t o f i n i t o d e s a l d a s , T a f u n ç ã o d e t r a n s i ç ã o d e e s t a d o ( T : E x X -> X ) e R a f u n ç ã o d e s a l d a ( R : E x X -> 5 ) . Um p r o t o c o l o p o d e s e r d e s c r i t o a t r a v é s d e uma MEF, j à q u e a uma e n t i d a d e p o d e s e r a t r i b u í d o um n u m e r o f i n i t o d e e s t a d o s . fi p a r t i r d e um n u m e r o f i n i t o d e e v e n t o s ( e n t r a d a s ) , t r a n s i ç õ e s d e e s t a d o , a s s o c i a d a s ( o u n ã o ) a um n ú m e r o f i n i t o d e a t o e s ( s a l d a s ) , p o d e m o c o r r e r . R F i g u r a 2 . 2 i l u s t r a um s i s t e m a s i m p l i f i c a d o d e t r a n s m i s s ã o d e m e n s a g e n s r e c e b e m e n s a g e m d o u s u a r i g t r a n s m i t e m e n s a g e m , a c i o n a t e m p o r i z a d o r I I £ e ç e b e _ r e ç g n h e c i_men_t o d e s l i g a t e m p o r i z a d o r ESPERRNDO R E C O N H E C I M E N T O t e m g o £ Í z aç_ão r e t r a n s m i t e m e n s a g e m , a c i o n a t e m p o r i z a d o r F i q u r a 2 . 2 : E x e m p l o d o e m p r e g o d e MEF c o m o TDF
o n d e o s e s t a d o s e s t ã o r e p r e s e n t a d o s p o r q u a d r a d o s , a s t r a n s i ç õ e s p o r a r c o s d i r e c i o n a d o s e uma l i n h a s e p a r a o s e v e n t o s ( p a r t e s u p e r i o r ) d a s a ç õ e s ( p a r t e i n f e r i o r ) . I n i c i a l m e n t e o e s t a d o d o s i s t e m a è O C I O S O . Ro r e c e b e r uma m e n s a g e m d o u s u á r i o , o s i s t e m a " t r a n s i t a r á ' p a r a o e s t a d o E 5 P E R P N D 0 _ R E C 0 N H E C I M E N T O , h a v e n d o a o c o r r ê n c i a d e d u a s a ç õ e s : t r a n s m i s s ã o d a m e n s a g e m e a c i o n a m e n t o d o t e m p o r i z a d o r . fio r e c e b e r um r e c o n h e c i m e n t o em t e m p o h á b i l , o s i s t e m a r e t o r n a r á a o e s t a d o O C I O S O e o t e m p o r i z a d o r s e r á d e s l i g a d o . C a s o o c o r r a o f i m d a t e m p o r i z a ç ã o , a m e n s a g e m s e r á r e t r a n s m i t i d a e o t e m p o r i z a d o r s e r á a c i o n a d o o u t r a v e z , p e r m a n e c e n d o i n a l t e r a d o o e s t a d o d o s i s t e m a . Uma R e d e d e P e t r i è uma q u á d r u p l a < L , T , E , S > , o n d e L è um c o n j u n t o f i n i t o d e n ó s ( o u l u g a r e s ) , T um c o n j u n t o d e t r a n s i ç õ e s ( o u e v e n t o s ) , E a f u n ç ã o d e e n t r a d a e S a f u n ç ã o d e s a l d a . G r a f i c a m e n t e , a s R e d e s d e P e t r i s ã o c o n s t i t u í d a s d e n ó s ( r e p r e s e n t a n d o c o n d i ç õ e s ) , b a r r a s ( r e p r e s e n t a n d o t r a n s i ç õ e s ) e a r c o s d i r e c i o n a d o s ( l i g a n d o n ó s a b a r r a s e b a r r a s a n ó s ) . Uma f i c h a è a t r i b u í d a a um n ó , d e s d e q u e a c o n d i ç ã o , a e l e a s s o c i a d a , s e j a s a t i s f e i t a . P a r a q u e uma t r a n s i ç ã o p o s s a o c o r r e r , è n e c e s s á r i o q u e t o d a s a s c o n d i ç õ e s d e e n t r a d a e s t e j a m s a t i s f e i t a s ( p e l o m e n o s uma f i c h a em c a d a um d o s n ó s d e e n t r a d a ) . 0 o c o r r ê n c i a d e uma t r a n s i ç ã o i m p l i c a n a r e m o ç ã o d e uma f i c h a d e c a d a um d o s n ó s d e e n t r a d a e a a l o c a ç ã o d e uma f i c h a em c a d a um d o s n ó s d e s a l d a . 0 e s t a d o d a r e d e , n u m d e t e r m i n a d o i n s t a n t e , è d a d o p e l a d i s t r i b u i ç ã o d e f i c h a s em s e u s n ó s ( m a r c a ç ã o ) , fl f i g u r a 2 . 3 d e s c r e v e o mesmo s i s t e m a , a p r e s e n t a d o a n t e r i o r m e n t e , a t r a v é s d e uma R e d e d e P e t r i . E s s a t é c n i c a g r á f i c a è b a s t a n t e u t i l i z a d a c o m o T D F , d e v i d o à s u a s i m p l i c i d a d e c o n c e i t u a i e d e v i d o à s u a c a p a c i d a d e p a r a a a n á l i s e d o f l u x o d e d a d o s q u e o c o r r e m num
s i s t e m a d e c o m u n i c a ç ã o [ C a C u 8 7 ] \ / \ I I I I B I * . . . u s u á r i o / \ / I I
t
I•
I I V í I/ \
• * l C 1 i !\ /
t 1 ! e 1 1 ( r e ) t r a n s m i t e m e n s a g e m , m * a c i o n a t e m p o r i z a d o r í p 1 : i i o..
* 1 » . . . 1 r ! v ! i/ \ / \
! z 1 1 D 1 I E U . . . 1 a\ / \ /
1 ç í 1 1 !_ ã ! ( d e s l i g a : o i v 4- t e m p o r i z a d o r 1 i i _ _ _ 1..
< i i | I I • Io
\__
I F i g u r a 2 . 3 : E x e m p l o d o e m p r e g o d e R e d e d e P e t r i c o m o T D F . R i n c l u s ã o d e l i n g u a g e n s f o r m a i s , n a c a t e g o r i a d a s T D F s b a s e a d a s em m o d e l o d e t r a n s i ç ã o , d e v e - s e à c o r r e s p o n d ê n c i a e x i s t e n t e e n t r e MEFs e g r a m á t i c a s f o r m a i s I M o n t 8 2 ] . R r e p r e s e n t a ç ã o d e um m o d e l o d e t r a n s i ç ã o em BNF ( " B a c k u s N a u r F o r m " ) p o s s i b i l i t a a d e s c r i ç ã o d e um s i s t e m a em d i v e r s o s g r a u s d e a b s t r a ç ã o , a t r a v é s d o u s o d e s i m b o l o s n ã o - t e r m i n a i s . Rs a ç ã e s d o s i s t e m a s ã o d e f i n i d a s p e l a c a d e i a d e s i m b o l o s t e r m i n a i s , a q u a l é g e r a d a a t r a v é s d a a p l i c a ç ã o d a s r e g r a s d e p r o d u ç ã o ( F i g . 2 . 4 ) .< 0 C I 0 5 0 > ::= " r e c e b e m e n s a g e m " " t r a n s m i n t e m e n s a g e m " " l i g a t e m p o r i z a d o r " <ESPERANDO R E C O N H E C I M E N T O ) . < E 5 P E R R N D 0 R E C O N H E C I M E N T O ) ::= " r e c e b e r e c o n h e c i m e n t o " " d e s l i g a t e m p o r i z a d o r * < 0 C I O S O > I " t e m p o r i z a ç ã o " " r e t r a n s m i t e m e n s a g e m * " a c i o n a t e m p o r i z a d o r " < E 5 P E R A N D 0 R E C O N H E C I M E N T O ) F i g u r a 2 . 4 : E x e m p l o d o e m p r e g o d e L i n g u a g e m F o r m a l c o m o TDF A t é c n i c a d e v e r i f i c a ç ã o ( T v T ) , a s e r e m p r e g a d a p a r a a v a l i d a ç ã o d e um s i s t e m a d e c o m u n i c a ç ã o , d e p e n d e d a TDF u t i l i z a d a p a r a a s u a e s p e c i f i c a ç ã o . P a r a a s T D F s b a s e a d a s em m o d e l o s d e t r a n s i ç ã o , a s T V F s m a i s e m p r e g a d a s s ã o b a s e a d a s em m é t o d o s d e e x p l o r a ç ã o d e e s t a d o s . 0 g r a n d e i n c o n v e n i e n t e d e s s e t i p o d e m é t o d o e s t á n a p o s s i b i l i d a d e d e um c r e s c i m e n t o e x c e s s i v o d o n u m e r o d e e s t a d o s ( e x p l o s ã o d e e s t a d o s ) , i n v i a b i l i z a n d o q u a l q u e r t i p o d e a n á l i s e [ B o S u 8 0 ) . L i n g u a g e n s d e P r o g r a m a ç ã o p o d e m t a m b é m s e r u t i l i z a d a s p a r a a e s p e c i f i c a ç ã o d e s e r v i ç o s e p r o t o c o l o s I B o c h 7 5 ) . I s t o p o r q u e p r o t o c o l o s p o d e m s e r r e p r e s e n t a d o s a t r a v é s d e p r o c e s s o s c o n c o r r e n t e s , o s q u a i s p o d e m s e r d e s c r i t o s u t i l i z a n d o - s e l i n g u a g e n s d e p r o g r a m a ç ã o d e a l t o n i v e l ( F i g . 2 . 5 ) . E s s e t i p o d e TDF é e f i c a z p a r a a d e s c r i ç ã o d o s a s p e c t o s r e l a t i v o s à t r a n s f e r ê n c i a e e s t r u t u r a d e d a d o s d o s p r o t o c o l o s . T a i s m é t o d o s p e r m i t e m t a m b é m a o b t e n ç ã o d e e s p e c i f i c a ç o e s p r ó x i m a s à s s u a s i m p l e m e n t a ç õ e s . P o r o u t r o l a d o , o a l t o g r a u d e d e t a l h a m e n t o p r e s e n t e n a s e s p e c i f i c a ç õ e s r e s t r i n g e a s a l t e r n a t i v a s d e i m p l e m e n t a ç ã o .
c o n s t PARA_SEMPRE = f a l s e ; t y p e MENSAGEM = p r o c e d u r e R E C E B E _ M E N 5 A 6 E M ( v a r M : M E N S A G E M ) ; b e g i n ( e s p e r a o r e c e b i m e n t o d e m e n s a g e m d o u s u á r i o ) e n d ; f u n c t i o n T E M P O R I Z A Ç Ã O : b o o l e a n ; b e g i n ( r e t o r n a TRUE s e o t e m p o d e r e c o n h e c i m e n t o e x p i r o u - s e ) e n d ; p r o c e d u r e L I G A _ T E M P O R I Z A C A O ; b e g i n { i n i c i a a t e m p o r i z a ç ã o d a m e n s a g e m e n v i a d a } e n d ; p r o c e d u r e D E 5 L I G A _ T E M P 0 R I Z A C A 0 ; b e g i n { d e s l i g a a t e m p o r i z a ç ã o d a m e n s a g e m e n v i a d a } e n d ; p r o c e d u r e T R A N S M I T E C M : M E N S A G E M ) ; b e g i n í e n v i a m e n s a g e m } e n d ; p r o c e d u r e R E T R A N S M I T E ; b e g i n { r e t r a n s m i t e a m e n s a g e m e r e i n i c i a l i z a a t e m p o r i z a ç ã o ) e n d ; f u n c t i o n RECEBE_RECONHECIMENTO : b o o l e a n ; b e g i n { r e t o r n a TRUE s e um r e c o n h e c i m e n t o f o i r e c e b i d o } e n d ; p r o c e d u r e PROCESSO; v a r M : MENSAGEM; b e g i n R E C E B E _ M E N S A G E M ( M ) ; r e p e a t T R A N S M I T E C M ) ; L I G A _ T E M P O R I Z A C A O ; w h i l e n o t ( T E M P O R I Z A Ç Ã O o r R E C E B E _ R E C O N H E C I M E N T O ) d o ; i f T E M P O R I Z A Ç Ã O t h e n R E T R A N S M I T E e l s e b e g i n D E 5 L I G A _ T E M P 0 R I Z A C A 0 ; R E C E B E _ M E N S A G E M ( M ) e n d ; u n t i l PARA_SEMPRE e n d ; F i g u r a 2 . 5 : E x e m p l o d o e m p r e g o d e l i n g u a g e m d e p r o g r a m a ç ã o c o m o T D F .