Case Study - VoIP Model Graph Transformation Rules
|
|
|
- Sharleen James
- 10 years ago
- Views:
Transcription
1 Case Study - VoIP Model Graph Transformation Rules Mayur Bapodra, Reiko Heckel Department of Computer Science, University of Leicester, UK [email protected], [email protected] 1 Introduction This report details a case study based on a very simple overview of peer-to-peer (P2P) connections over a voice over IP (VoIP) network such as that used for Skype. We present the concrete version of the model (with aggregating attributes already added) followed by the resulting abstract model. Rule name abbreviations that have been used in accompanying research are given after each rule name. 2 Concrete Model The VoIP network is constructed from Client and Super nodes, each servicing a single user, administrated by a central registry. Figure 1 shows the concrete type graph. User represents a physical user. Client represents a node that users attach to in order to make a call. Users can also attach to a Super node, but since Supers form the overall communication network via ovl edges, linking Clients to each other through this network, the user in question must meet a bandwidth threshold. In our model, we simplify this threshold by not explicitly measuring bandwidth, but instead controlling the likelihood that a user has the minimum bandwidth through stochastic parameters. Our smallest start graph is shown in Figure 2. It consists of the registry node, one super node (with associated user) and six disconnected users. In the abstract model we aim to simplify the type graph by hiding User and Client types. There are therefore three aggregating attributes in this model to retain information. The Registry stores the number of clients not yet connected to the overlay network via a link edge to a Super (as freeclients). It also stores the number of users that have not yet turned on their VoIP program and therefore do not have an associated Client or Super node (as offlineusers). Additionally, Supers store the number of clients linked to them. The OCL constraints giving their values in the concrete model are as follows: context: Registry inv: self.offlineusers = User.allInstances -> count (u:user Node.allInstances -> forall(n:node n.usr u))
2 2 Fig. 1. Concrete type graph context: Registry inv: self.freeclients = Client.allInstances -> count (c:client c.link -> isempty()) context: Super inv: self.clients = Client.allInstances -> count (c : Client c.link = self) The behavioural semantics of the model are explained through the GT rules. Figure 3 shows the creation of a new client when a user connects to the VoIP program. The NAC shows that the user must not already be connected. The new client is connected at the registry. The condition on the offlineusers aggregating attribute is naturally redundant since we have the user node and the NAC at the concrete level. Figure 4 illustrates a user wishing to communicate with another via the overlay network set up between Super nodes. The client must not have an existing link to a super node, and the super it connects to must have fewer than five clients. This is considered the maximum shareable bandwidth before a super node is overloaded. Note that ideally, although redundant, a NAC should also be present to represent this condition, but we omit it and leave the condition on the aggregating attribute only for simplicity. Figure 5 shows the promotion of a client to a super when it is connected to an overloaded super node. This reduces some of the pressure on the overused super node. Figure 6 depicts the rule that is analogous to the creation of a new client, except that the user has sufficient bandwidth to support a super node. The super node is immediately connected to the overlay network via an existing super node.
3 3 Fig. 2. Concrete start graph Fig. 3. New client, concrete GT rule (NC ) Fig. 4. Link client, concrete GT rule (LC )
4 4 Fig. 5. Promote client, concrete GT rule (PC ) Fig. 6. New super, concrete GT rule (NS) Figure 7 shows the termination of a client while it is connected to the overlay network (i.e., during a call). The rule represents the shutting down of the VoIP program by a user. Fig. 7. Terminate linked client, concrete GT rule (TL) The rule in Figure 8 represents the shutting down of the VoIP program by a user that is connected directly through a super node. This is only allowed if there is at least one other super node present. To prevent violation of the dangling condition, we must explicitly represent all other graph vertices the deleted node is connected to. Furthermore, all clients that were connected to the deleted super node are returned to the registry. Through the deletion of a super node by this rule, the overlay network may become disconnected so that some clients may become unreachable from others. Figure 9 depicts the loss of an unlinked client, i.e., a user switching off the VoIP program without being in a call.
5 5 Fig. 8. Terminate super, concrete GT rule (TS) Fig. 9. Terminate unlinked client, concrete GT rule (TU ) Finally, Figure 10 describes the creation of redundant links between supers in order to make the overlay network more robust. Client pairs are less susceptible to becoming disconnected when a super is terminated if there is more than one path between the supers to which they are connected. Note that the rule has two NACs: one stating that there should be no existing overlay connection between the supers that are to be newly linked, and secondly, that there is no alternate pathway between these supers via a fourth super node. Fig. 10. Create shortcut, concrete GT rule (CS) The global behaviour of interest in this model is the proportion of total clients at any time that are connected to the overlay network, and the proportion of total super node pairs that are unreachable from each other (i.e., there is no transitive closure of the ovl edge between them).
6 6 For the former, we create a probe rule that searches matches for Client nodes, and another that searches matches for Client nodes linked to Super nodes, dividing the second by the first to find the measure we require. This measurement is taken after every step in the simulation and we use the average value over each of these steps as our result. Transitive closure measurements require modifications to the standard VIA- TRA2 installation [1]. A description of the necessary steps are outlined by the authors in an online addendum to [1] at We specify the pattern between just two super nodes with a pair of oppositely directed ovl edges between them. The transitive closure version of the probe then looks for all pairs of super nodes between which there is a chain of ovl edges. A negation of this pattern then finds all such pairs between which there is no such transitive connection. We divide this number of pairs by the total number of super node pairs to find our measure. Just as with the connected client measure, we take the average of this value over all simulation steps. Code Fragment 1.1 shows the VTCL specification implementing the entire behaviour of the concrete model, complete with probes and auxiliary patterns. Code Fragment 1.1. VTCL Specification of Concrete Model 1 2 namespace p2p ; 3 4 import DSM. metamodels. p2p TG ; 5 import datatypes ; 6 8 machine r u l e s a n d c o n s t r a i n t s { 9 10 // ///////////////////////////////////////// 11 // PATTERNS 12 // //////////////////////////////////////// pattern UserConnected (U) = { 15 User (U) ; 16 P2PNode (N) ; 17 P2PNode. usr (U1, N, U) ; 18 } p a t t e r n C l i e n t L i n k e d (C) = { 21 C l i e n t (C) ; 22 Super ( S ) ; 23 C l i e n t. l i n k (L, C, S ) ; 24 } p a t t e r n C l i e n t s (C) = { 27 C l i e n t (C) ; 28 } pattern SuperPairs ( S1, S2 ) = { 31 Super ( S1 ) ; 32 Super ( S2 ) ; 33 } s h a r e a b l e p a t t e r n SuperLinked ( S1, S2 ) = { 36 Super ( S1 ) ; 37 Super ( S2 ) ; 38 Super. o v l (Ov1, S1, S2 ) ; 39 Super. o v l (Ov2, S2, S1 ) ; 40 }
7 41 42 ( r e i n t e r p r e t=t r a n s i t i v e C l o s u r e, o f P a t t e r n=superlinked ) 44 p a t t e r n t r a n s i t i v e C l o s u r e O f S u p e r L i n k e d ( S1, S2 ) = {} // ///////////////////////////////////////// 49 // CONCRETE RULES 50 // //////////////////////////////////////// g t r u l e NewClient ( ) = { p r e c o n d i t i o n p a t t e r n l h s (U, OU, FC, R) = { 55 R e g i s t r y (R) ; 56 R e g i s t r y. O f f l i n e U s e r s (OU) i n R; 57 R e g i s t r y. o f f l i n e U s e r s (Ou, R, OU) ; 58 R e g i s t r y. F r e e C l i e n t s (FC) i n R; 59 R e g i s t r y. f r e e C l i e n t s ( Fc, R, FC) ; 60 User (U) ; 61 neg f i n d UserConnected (U) ; 62 } a c t i o n { 65 l e t C=undef, 66 C1=undef, 67 U1=undef, 68 Model=DSM. models. model 69 i n seq { 70 new ( C l i e n t (C) i n Model ) ; 71 rename (C, c l +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name (C) ),, ), un, ) ) ; 72 new ( P2PNode. u s r (U1, C, U) ) ; 73 rename (U1, u s r ) ; 74 new ( R e g i s t r y. c l i e n t (C1, R, C) ) ; 75 rename (C1, c l i e n t +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name (C1) ),, ), un, ) ) ; 76 s e t V a l u e (OU, t o S t r i n g ( t o I n t e g e r ( v a l u e (OU) ) 1) ) ; 77 s e t V a l u e (FC, t o S t r i n g ( t o I n t e g e r ( v a l u e (FC) ) + 1) ) ; 78 p r i n t l n ( GT RULE... NewClient a p p l i e d to c r e a t e C l i e n t + name (C) ) ; 79 } 80 } 81 } g t r u l e L i n k C l i e n t ( ) = { p r e c o n d i t i o n p a t t e r n l h s (FC, Cl1, C, S, S C ) = { 87 Super ( S ) ; 88 Super. C l i e n t s ( S C ) i n S ; 89 Super. c l i e n t s ( S Cx, S, S C ) ; 90 check ( t o I n t e g e r ( v a l u e ( S C ) ) < 5) ; 91 R e g i s t r y (R) ; 92 R e g i s t r y. F r e e C l i e n t s (FC) i n R; 93 R e g i s t r y. f r e e C l i e n t s ( Fc, R, FC) ; 94 C l i e n t (C) ; 95 R e g i s t r y. c l i e n t ( Cl1, R, C) ; 96 neg f i n d C l i e n t L i n k e d (C) ; 97 } a c t i o n { 100 l e t L=undef 101 i n seq { 102 d e l e t e ( Cl1 ) ; 103 new ( C l i e n t. l i n k (L, C, S ) ) ; 104 rename (L, l i n k ) ; 105 s e t V a l u e ( S C, t o S t r i n g ( t o I n t e g e r ( v a l u e ( S C ) ) + 1) ) ; 7
8 8 106 s e t V a l u e (FC, t o S t r i n g ( t o I n t e g e r ( v a l u e (FC) ) 1) ) ; 107 p r i n t l n ( GT RULE... L i n k C l i e n t a p p l i e d to l i n k C l i e n t + name (C) ) ; 108 } 109 } 110 } g t r u l e PromoteClient ( ) = { p r e c o n d i t i o n p a t t e r n l h s ( S, C, U, L, U1, S C ) = { 116 Super ( S ) ; 117 Super. C l i e n t s ( S C ) i n S ; 118 check ( t o I n t e g e r ( v a l u e ( S C ) ) >= 5) ; 119 Super. c l i e n t s ( S Cx, S, S C ) ; C l i e n t (C) ; 122 C l i e n t. l i n k (L, C, S ) ; User (U) ; 125 P2PNode. usr (U1, C, U) ; 126 } a c t i o n { 129 l e t S2=undef, 130 S CNew=undef, 131 S CNew X=undef, 132 Ovl1=undef, 133 Ovl2=undef, 134 U2=undef, 135 Model=DSM. models. model 136 i n seq { 137 p r i n t ( GT RULE... PromoteClient a p p l i e d to promote C l i e n t + name (C) ) ; 138 d e l e t e (L) ; 139 d e l e t e (U1) ; 140 d e l e t e (C) ; new ( Super ( S2 ) i n Model ) ; 143 rename ( S2, s u p e r +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name ( S2 ) ),, ), un, ) ) ; new ( e n t i t y ( S CNew ) i n S2 ) ; 146 rename ( S CNew, C l i e n t s ) ; 147 setvalue ( S CNew, 0) ; 148 new ( i n s t a n c e O f ( S CNew, r e f ( DSM. metamodels. p2p TG. Super. C l i e n t s ) ) ) ; 149 new ( Super. c l i e n t s ( S CNew X, S2, S CNew ) ) ; 150 rename ( S CNew X, c l i e n t s ) ; new ( Super. o v l ( Ovl1, S2, S ) ) ; 153 rename ( Ovl1, o v l +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name ( Ovl1 ) ),, ), un, ) ) ; 154 new ( Super. o v l ( Ovl2, S, S2 ) ) ; 155 rename ( Ovl2, o v l +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name ( Ovl2 ) ),, ), un, ) ) ; 156 s e t V a l u e ( S C, t o S t r i n g ( t o I n t e g e r ( v a l u e ( S C ) ) 1) ) ; new ( P2PNode. u s r (U2, S2, U) ) ; 159 rename (U2, u s r ) ; p r i n t l n ( to Super + name ( S2 ) ) ; 162 } 163 } 164 } g t r u l e NewSuper ( ) = {
9 p r e c o n d i t i o n p a t t e r n l h s (U, S, OU) = { 170 R e g i s t r y (R) ; 171 R e g i s t r y. O f f l i n e U s e r s (OU) i n R; 172 R e g i s t r y. o f f l i n e U s e r s (Ou, R, OU) ; 173 User (U) ; 174 Super ( S ) ; 175 neg f i n d UserConnected (U) ; 176 } a c t i o n { 179 l e t S2=undef, 180 S CNew=undef, 181 S CNew X=undef, 182 Ovl1=undef, 183 Ovl2=undef, 184 Us1=undef, 185 Model=DSM. models. model 186 i n seq { new ( Super ( S2 ) i n Model ) ; 189 rename ( S2, s u p e r +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name ( S2 ) ),, ), un, ) ) ; new ( e n t i t y ( S CNew ) i n S2 ) ; 192 rename ( S CNew, C l i e n t s ) ; 193 setvalue ( S CNew, 0) ; 194 new ( i n s t a n c e O f ( S CNew, r e f ( DSM. metamodels. p2p TG. Super. C l i e n t s ) ) ) ; 195 new ( Super. c l i e n t s ( S CNew X, S2, S CNew ) ) ; 196 rename ( S CNew X, c l i e n t s ) ; new ( P2PNode. u s r ( Us1, S2, U) ) ; 199 rename ( Us1, u s r ) ; 200 new ( Super. o v l ( Ovl1, S2, S ) ) ; 201 rename ( Ovl1, o v l +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name ( Ovl1 ) ),, ), un, ) ) ; 202 new ( Super. o v l ( Ovl2, S, S2 ) ) ; 203 rename ( Ovl2, o v l +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name ( Ovl2 ) ),, ), un, ) ) ; 204 s e t V a l u e (OU, t o S t r i n g ( t o I n t e g e r ( v a l u e (OU) ) 1) ) ; 205 p r i n t l n ( GT RULE... NewSuper a p p l i e d to c r e a t e Super + name ( S2 ) + with C l i e n t s a t t r i b u t e v a l u e + v a l u e ( S CNew ) ) ; 206 } 207 } 208 } g t r u l e TerminateLinkedClient ( ) = { p r e c o n d i t i o n p a t t e r n l h s (C, S, S C, OU, U1, L) = { 214 R e g i s t r y (R) ; 215 R e g i s t r y. O f f l i n e U s e r s (OU) i n R; 216 R e g i s t r y. o f f l i n e U s e r s (Ou, R, OU) ; 217 Super ( S ) ; 218 Super. C l i e n t s ( S C ) i n S ; 219 Super. c l i e n t s ( S Cx, S, S C ) ; 220 User (U) ; 221 C l i e n t (C) ; 222 P2PNode. usr (U1, C, U) ; 223 C l i e n t. l i n k (L, C, S ) ; 224 } a c t i o n { 227 d e l e t e (L) ; 228 d e l e t e (U1) ; 229 s e t V a l u e ( S C, t o S t r i n g ( t o I n t e g e r ( v a l u e ( S C ) ) 1) ) ; 9
10 s e t V a l u e (OU, t o S t r i n g ( t o I n t e g e r ( v a l u e (OU) ) + 1) ) ; 231 p r i n t l n ( GT RULE... TerminateLinkedClient a p p l i e d to t e r m i n a t e C l i e n t + name (C) ) ; 232 d e l e t e (C) ; 233 } 234 } g t r u l e TerminateUnlinkedClient ( ) = { p r e c o n d i t i o n p a t t e r n l h s (C, OU, FC, U1, C1) = { 240 R e g i s t r y (R) ; 241 R e g i s t r y. O f f l i n e U s e r s (OU) i n R; 242 R e g i s t r y. o f f l i n e U s e r s (Ou, R, OU) ; 243 R e g i s t r y. F r e e C l i e n t s (FC) i n R; 244 R e g i s t r y. f r e e C l i e n t s ( Fc, R, FC) ; User (U) ; 247 C l i e n t (C) ; 248 P2PNode. usr (U1, C, U) ; 249 R e g i s t r y. c l i e n t (C1, R, C) ; 250 } a c t i o n { 253 d e l e t e (C1) ; 254 d e l e t e (U1) ; 255 s e t V a l u e (FC, t o S t r i n g ( t o I n t e g e r ( v a l u e (FC) ) 1) ) ; 256 s e t V a l u e (OU, t o S t r i n g ( t o I n t e g e r ( v a l u e (OU) ) + 1) ) ; 257 p r i n t l n ( GT RULE... T e rminateunlinkedclient a p p l i e d to t e r m i n a t e C l i e n t + name (C) ) ; 258 d e l e t e (C) ; 259 } 260 } g t r u l e TerminateSuper ( ) = { p r e c o n d i t i o n p a t t e r n l h s (OU, FC, S2, R, S C ) = { 266 R e g i s t r y (R) ; 267 R e g i s t r y. O f f l i n e U s e r s (OU) i n R; 268 R e g i s t r y. o f f l i n e U s e r s (Ou, R, OU) ; 269 R e g i s t r y. F r e e C l i e n t s (FC) i n R; 270 R e g i s t r y. f r e e C l i e n t s ( Fc, R, FC) ; Super ( S1 ) ; 273 Super ( S2 ) ; 274 Super. C l i e n t s ( S C ) ; 275 Super. c l i e n t s (S CX, S2, S C ) ; 276 } a c t i o n { 279 s e t V a l u e (FC, t o S t r i n g ( t o I n t e g e r ( v a l u e (FC) ) + t o I n t e g e r ( v a l u e ( S C ) ) ) ) ; 280 i t e r a t e choose with apply r e l i n k C l i e n t s ( S2, R) ; 281 s e t V a l u e (OU, t o S t r i n g ( t o I n t e g e r ( v a l u e (OU) ) + 1) ) ; 282 p r i n t l n ( GT RULE... TerminateSuper a p p l i e d to t e r m i n a t e Super + name ( S2 ) ) ; 283 d e l e t e ( S2 ) ; 284 } 285 } g t r u l e C r e a t e S h o r t c u t ( ) = { p r e c o n d i t i o n p a t t e r n l h s ( S1, S2 ) = { 291 Super ( S1 ) ; 292 Super ( S2 ) ; 293 Super ( S3 ) ;
11 294 Super. o v l (O1, S3, S1 ) ; 295 Super. o v l (O2, S3, S2 ) ; 296 neg f i n d SupersConnected ( S1, S2 ) ; 297 neg f i n d SupersBypass ( S1, S2, S3 ) ; 298 } a c t i o n { 301 l e t Ovl1=undef, 302 Ovl2=undef 303 i n seq { 304 new ( Super. o v l ( Ovl1, S1, S2 ) ) ; 305 rename ( Ovl1, o v l +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name ( Ovl1 ) ),, ), un, ) ) ; 306 new ( Super. o v l ( Ovl2, S2, S1 ) ) ; 307 rename ( Ovl2, o v l +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name ( Ovl2 ) ),, ), un, ) ) ; 308 } 309 } 310 } g t r u l e c o u n t C l i e n t s ( i n S, i n R, i n Count ) = { p r e c o n d i t i o n p a t t e r n l h s ( S, L, C) = { Super ( S ) ; 318 C l i e n t (C) ; 319 C l i e n t. l i n k (L, C, S ) ; 320 R e g i s t r y (R) ; 321 } 322 a c t i o n { 323 l e t C1=undef 324 in seq { 325 s e t V a l u e ( Count, t o S t r i n g ( t o I n t e g e r ( v a l u e ( Count ) ) + 1) ) ; 326 d e l e t e (L) ; 327 new ( R e g i s t r y. c l i e n t (C1, R, C) ) ; 328 rename (C1, c l i e n t +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name (C1) ),, ), un, ) ) ; 329 } 330 } 331 } g t r u l e r e l i n k C l i e n t s ( i n S, i n R) = { p r e c o n d i t i o n p a t t e r n l h s ( S, L, C, R) = { Super ( S ) ; 339 C l i e n t (C) ; 340 C l i e n t. l i n k (L, C, S ) ; 341 R e g i s t r y (R) ; 342 } 343 a c t i o n { 344 l e t C1=undef 345 in seq { 346 d e l e t e (L) ; 347 new ( R e g i s t r y. c l i e n t (C1, R, C) ) ; 348 rename (C1, c l i e n t +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name (C1) ),, ), un, ) ) ; 349 } 350 } 351 } // ///////////////////////////////////////// 356 // PROBE RULES 357 // //////////////////////////// 11
12 g t r u l e Probe ConnectedClients ( inout C) = { 360 p r e c o n d i t i o n f i n d C l i e n t L i n k e d (C) 361 } g t r u l e P r o b e A l l C l i e n t s ( i n o u t C) = { 364 p r e c o n d i t i o n f i n d C l i e n t s (C) 365 } g t r u l e Probe Disconnected ( inout S1, inout S2 ) = { 368 p r e c o n d i t i o n p a t t e r n l h s ( S1, S2 ) = { 369 Super ( S1 ) ; 370 Super ( S2 ) ; 371 neg f i n d t r a n s i t i v e C l o s u r e O f S u p e r L i n k e d ( S1, S2 ) ; 372 } 373 } g t r u l e Probe AllSuperPairs ( inout S1, inout S2 ) = { 376 p r e c o n d i t i o n f i n d S u p e r P a i r s ( S1, S2 ) 377 } g t r u l e Probe Supers ( i n o u t S1 ) = { 380 p r e c o n d i t i o n p a t t e r n l h s ( S1 ) = { 381 Super ( S1 ) ; 382 } 383 } } 3 Abstract Model In the abstract model, we retain only the Super and Registry types, with the inheritance of Super from Node as an inconsequential artefact. The abstract type graph is shown in Figure 11. The abstraction in this case does not reduce the number of rules, but with fewer graph elements in each rule and in each instance graph, there are fewer and smaller matches for each rule. Therefore, an increase in performance during stochastic simulation is still expected. The start graph is reduced to just two elements: the registry and the first super node, as shown in Figure 12. Fig. 11. Abstract type graph
13 13 Fig. 12. Abstract start graph Figures 13 to 19 show the projection of the concrete rules to the abstract type graph. Note that except for those of create shortcut, all NACs are lost but conditions on aggregating attributes still remain. Fig. 13. New client, abstract GT rule (A NC ) Fig. 14. Link client, abstract GT rule (A LC ) The probes responsible for finding disconnected pairs of super nodes can still be used in the abstract model since the Super type is still present. However, to calculate the proportion of clients that are connected to the overlay network, the clients attribute of Super must be accessible along with the freeclients attribute of Registry. The sum of the clients attribute for all super nodes divided by this value plus the freeclients value gives us the measure we require. Since the reading of attribute values is not currently supported by VIA- TRA2, a hard coded, model specific solution was implemented as a temporary measure. Probe rules were created to pass required attribute entities in the modelspace to the simulation engine. The hard coded solution recognized the probe by name and returns/sums the required attribute value for all matches of the probe rather than simply counting matches themselves. The solution will be incorporated into the stochastic simulation package of VIATRA2 once a naming convention/methodology for attribute value probes is decided upon.
14 14 Fig. 15. Promote client, abstract GT rule (A PC ) Fig. 16. New super, abstract GT rule (A NS) Fig. 17. Terminate linked client, abstract GT rule (A TL) Fig. 18. Terminate super, abstract GT rule (A TS) Fig. 19. Terminate unlinked client, abstract GT rule (A TU ) Fig. 20. Create shortcut, abstract GT rule (A CS)
15 15 The portion of the rules.vtcl file that defines these abstract rules is given in Code Fragment 1.2. Code Fragment 1.2. VTCL Specification of Abstract Model 1 2 // ///////////////////////////////////////// 3 // ABSTRACT RULES 4 // //////////////////////////////////////// 5 6 g t r u l e Abstract NewClient ( ) = { 7 8 p r e c o n d i t i o n p a t t e r n l h s (OU, FC) = { 9 R e g i s t r y (R) ; 10 R e g i s t r y. O f f l i n e U s e r s (OU) i n R; 11 R e g i s t r y. o f f l i n e U s e r s (Ou, R, OU) ; 12 R e g i s t r y. F r e e C l i e n t s (FC) i n R; 13 R e g i s t r y. f r e e C l i e n t s ( Fc, R, FC) ; 14 check ( t o I n t e g e r ( v a l u e (OU) ) > 0) ; 15 } a c t i o n { 18 s e t V a l u e (OU, t o S t r i n g ( t o I n t e g e r ( v a l u e (OU) ) 1) ) ; 19 s e t V a l u e (FC, t o S t r i n g ( t o I n t e g e r ( v a l u e (FC) ) + 1) ) ; 20 p r i n t l n ( GT RULE... NewClient a p p l i e d to c r e a t e C l i e n t ) ; 21 } 22 } g t r u l e A b s t r a c t L i n k C l i e n t ( ) = { p r e c o n d i t i o n p a t t e r n l h s (FC, S, S C ) = { 28 R e g i s t r y (R) ; 29 R e g i s t r y. F r e e C l i e n t s (FC) i n R; 30 R e g i s t r y. f r e e C l i e n t s ( Fc, R, FC) ; 31 check ( t o I n t e g e r ( v a l u e (FC) ) > 0) ; 32 Super ( S ) ; 33 Super. C l i e n t s ( S C ) i n S ; 34 Super. c l i e n t s ( S Cx, S, S C ) ; 35 check ( t o I n t e g e r ( v a l u e ( S C ) ) < 5) ; 36 } a c t i o n { 39 s e t V a l u e ( S C, t o S t r i n g ( t o I n t e g e r ( v a l u e ( S C ) ) + 1) ) ; 40 s e t V a l u e (FC, t o S t r i n g ( t o I n t e g e r ( v a l u e (FC) ) 1) ) ; 41 p r i n t l n ( GT RULE... L i n k C l i e n t a p p l i e d to l i n k Super + name ( S ) ) ; 42 } 43 } g t r u l e A b s t r a c t P r o m o t e C l i e n t ( ) = { p r e c o n d i t i o n p a t t e r n l h s ( S, S C ) = { 49 Super ( S ) ; 50 Super. C l i e n t s ( S C ) i n S ; 51 Super. c l i e n t s ( S Cx, S, S C ) ; 52 check ( t o I n t e g e r ( v a l u e ( S C ) ) >= 5) ; 53 } a c t i o n { 56 l e t S2=undef, 57 S CNew=undef, 58 S CNew X=undef, 59 Ovl1=undef, 60 Ovl2=undef, 61 Model=DSM. models. model 62 i n seq {
16 16 63 new ( Super ( S2 ) i n Model ) ; 64 rename ( S2, s u p e r +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name ( S2 ) ),, ), un, ) ) ; new ( e n t i t y ( S CNew ) i n S2 ) ; 67 rename ( S CNew, C l i e n t s ) ; 68 s e t V a l u e ( S CNew, 0) ; 69 new ( i n s t a n c e O f ( S CNew, r e f ( DSM. metamodels. p2p TG. Super. C l i e n t s ) ) ) ; 70 new ( Super. c l i e n t s ( S CNew X, S2, S CNew ) ) ; 71 rename ( S CNew X, c l i e n t s ) ; new ( Super. o v l ( Ovl1, S2, S ) ) ; 74 rename ( Ovl1, o v l +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name ( Ovl1 ) ),, ), un, ) ) ; 75 new ( Super. o v l ( Ovl2, S, S2 ) ) ; 76 rename ( Ovl2, o v l +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name ( Ovl2 ) ),, ), un, ) ) ; s e t V a l u e ( S C, t o S t r i n g ( t o I n t e g e r ( v a l u e ( S C ) ) 1) ) ; p r i n t l n ( GT RULE... PromoteClient a p p l i e d to new Super + name ( S2 ) ) ; 81 } 82 } 83 } g t r u l e Abstract NewSuper ( ) = { p r e c o n d i t i o n p a t t e r n l h s ( S, OU) = { 89 R e g i s t r y (R) ; 90 R e g i s t r y. O f f l i n e U s e r s (OU) i n R; 91 R e g i s t r y. o f f l i n e U s e r s (Ou, R, OU) ; 92 check ( t o I n t e g e r ( v a l u e (OU) ) >0) ; 93 Super ( S ) ; 94 } a c t i o n { 97 l e t S2=undef, 98 S CNew=undef, 99 S CNew X=undef, 100 Ovl1=undef, 101 Ovl2=undef, 102 Model=DSM. models. model 103 i n seq { 104 new ( Super ( S2 ) i n Model ) ; 105 rename ( S2, s u p e r +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name ( S2 ) ),, ), un, ) ) ; new ( e n t i t y ( S CNew ) i n S2 ) ; 108 rename ( S CNew, C l i e n t s ) ; 109 setvalue ( S CNew, 0) ; 110 new ( i n s t a n c e O f ( S CNew, r e f ( DSM. metamodels. p2p TG. Super. C l i e n t s ) ) ) ; 111 new ( Super. c l i e n t s ( S CNew X, S2, S CNew ) ) ; 112 rename ( S CNew X, c l i e n t s ) ; new ( Super. o v l ( Ovl1, S2, S ) ) ; 115 rename ( Ovl1, o v l +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name ( Ovl1 ) ),, ), un, ) ) ; 116 new ( Super. o v l ( Ovl2, S, S2 ) ) ; 117 rename ( Ovl2, o v l +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name ( Ovl2 ) ),, ), un, ) ) ; 118 s e t V a l u e (OU, t o S t r i n g ( t o I n t e g e r ( v a l u e (OU) ) 1) ) ; 119 p r i n t l n ( GT RULE... NewSuper a p p l i e d to c r e a t e Super + name ( S2 ) ) ; 120
17 121 } 122 } 123 } g t r u l e Abstract TerminateLinkedClient ( ) = { p r e c o n d i t i o n p a t t e r n l h s ( S, S C, OU) = { 129 R e g i s t r y (R) ; 130 R e g i s t r y. O f f l i n e U s e r s (OU) i n R; 131 R e g i s t r y. o f f l i n e U s e r s (Ou, R, OU) ; 132 Super ( S ) ; 133 Super. C l i e n t s ( S C ) i n S ; 134 Super. c l i e n t s ( S Cx, S, S C ) ; 135 check ( t o I n t e g e r ( v a l u e ( S C ) ) > 0) ; 136 } a c t i o n { 139 s e t V a l u e ( S C, t o S t r i n g ( t o I n t e g e r ( v a l u e ( S C ) ) 1) ) ; 140 s e t V a l u e (OU, t o S t r i n g ( t o I n t e g e r ( v a l u e (OU) ) + 1) ) ; 141 p r i n t l n ( GT RULE... TerminateLinkedClient a p p l i e d to t e r m i n a t e C l i e n t on Super + name ( S ) ) ; 142 } 143 } g t r u l e Abstract TerminateUnlinkedClient ( ) = { p r e c o n d i t i o n p a t t e r n l h s (OU, FC) = { 149 R e g i s t r y (R) ; 150 R e g i s t r y. O f f l i n e U s e r s (OU) i n R; 151 R e g i s t r y. o f f l i n e U s e r s (Ou, R, OU) ; 152 R e g i s t r y. F r e e C l i e n t s (FC) i n R; 153 R e g i s t r y. f r e e C l i e n t s ( Fc, R, FC) ; 154 check ( t o I n t e g e r ( v a l u e (FC) ) >0) ; 155 } a c t i o n { 158 s e t V a l u e (FC, t o S t r i n g ( t o I n t e g e r ( v a l u e (FC) ) 1) ) ; 159 s e t V a l u e (OU, t o S t r i n g ( t o I n t e g e r ( v a l u e (OU) ) + 1) ) ; 160 p r i n t l n ( GT RULE... T e rminateunlinkedclient a p p l i e d ) ; 161 } 162 } g t r u l e Abstract TerminateSuper ( ) = { p r e c o n d i t i o n p a t t e r n l h s (OU, FC, S2, R, S C ) = { 168 R e g i s t r y (R) ; 169 R e g i s t r y. O f f l i n e U s e r s (OU) i n R; 170 R e g i s t r y. o f f l i n e U s e r s (Ou, R, OU) ; 171 R e g i s t r y. F r e e C l i e n t s (FC) i n R; 172 R e g i s t r y. f r e e C l i e n t s ( Fc, R, FC) ; Super ( S1 ) ; 175 Super ( S2 ) ; // to d e l e t e 176 Super. C l i e n t s ( S C ) ; 177 Super. c l i e n t s (S CX, S2, S C ) ; } a c t i o n { 182 s e t V a l u e (FC, t o S t r i n g ( t o I n t e g e r ( v a l u e (FC) ) + t o I n t e g e r ( v a l u e ( S C ) ) ) ) ; 183 s e t V a l u e (OU, t o S t r i n g ( t o I n t e g e r ( v a l u e (OU) ) + 1) ) ; 184 p r i n t l n ( GT RULE... TerminateSuper a p p l i e d to t e r m i n a t e Super + name ( S2 ) ) ; 185 d e l e t e ( S2 ) ; 17
18 } 187 } g t r u l e A b s t r a c t C r e a t e S h o r t c u t ( ) = { p r e c o n d i t i o n p a t t e r n l h s ( S1, S2 ) = { 193 Super ( S1 ) ; 194 Super ( S2 ) ; 195 Super ( S3 ) ; 196 Super. o v l (O1, S3, S1 ) ; 197 Super. o v l (O2, S3, S2 ) ; 198 neg f i n d SupersConnected ( S1, S2 ) ; 199 neg f i n d SupersBypass ( S1, S2, S3 ) ; 200 } a c t i o n { 203 l e t Ovl1=undef, 204 Ovl2=undef 205 i n seq { 206 new ( Super. o v l ( Ovl1, S1, S2 ) ) ; 207 rename ( Ovl1, o v l +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name ( Ovl1 ) ),, ), un, ) ) ; 208 new ( Super. o v l ( Ovl2, S2, S1 ) ) ; 209 rename ( Ovl2, o v l +s t r. r e p l a c e A l l ( s t r. r e p l a c e A l l ( s t r. tolowercase ( name ( Ovl2 ) ),, ), un, ) ) ; 210 } 211 } 212 } // ///////////////////////////////////////// 215 // PROBE RULES 216 // //////////////////////////// g t r u l e Probe Disconnected ( inout S1, inout S2 ) = { 219 p r e c o n d i t i o n p a t t e r n l h s ( S1, S2 ) = { 220 Super ( S1 ) ; 221 Super ( S2 ) ; 222 neg f i n d t r a n s i t i v e C l o s u r e O f S u p e r L i n k e d ( S1, S2 ) ; 223 } 224 } g t r u l e Probe AllSuperPairs ( inout S1, inout S2 ) = { 227 p r e c o n d i t i o n f i n d S u p e r P a i r s ( S1, S2 ) 228 } g t r u l e Probe Supers ( i n o u t S1 ) = { 231 p r e c o n d i t i o n p a t t e r n l h s ( S1 ) = { 232 Super ( S1 ) ; 233 } 234 } g t r u l e P r o b e A t t r i b u t e F r e e C l i e n t s ( i n o u t FC) = { 237 p r e c o n d i t i o n p a t t e r n l h s (FC) = { 238 R e g i s t r y (R) ; 239 R e g i s t r y. F r e e C l i e n t s (FC) i n R; 240 R e g i s t r y. f r e e C l i e n t s ( Fc, R, FC) ; 241 } 242 } g t r u l e Probe AttributeConnectedClients ( inout S C ) = { 245 p r e c o n d i t i o n p a t t e r n l h s ( S C ) = { 246 Super ( S ) ; 247 Super. C l i e n t s ( S C ) ; 248 Super. c l i e n t s (S CX, S, S C ) ; 249 } 250 }
19 19 4 Bayesian Network The dynamic incidence matrix produced for abstract rules over the concrete model (i.e., diagonal analysis) is given in Table 1. The arbitrary partial order on rules names was decided as LC > NS > NC > T U > P C > T S > T L > CS. The resulting Bayesian network is shown in Figure 21. Fig. 21. BN generated for VoIP case study (TP abbreviates throughput)
20 20 Table 1. Dynamic incidence matrix for abstract rules over concrete model (aggregate of diagonal conflicts and dependencies) Rule name A LC 0 A NC A NS A PC 0 A TL 0 Applied Rule Start LC NC NS PC TL TS TU CS 1.0 (0.0) 1.0 (0.0) A TS A TU (0.106) 1.26 (0.104) (0.0353) (0.51) ( ) (0.0991) (0.025) (0.0311) (0.0338) (0.031) (0.124) (0.086) (0.155) (0.267) (0.155) ( ) (0.0) ( ) ( ) (0.0314) (0.0401) (0.0342) (0.0314) A CS (0.0273) 1.88 (0.171) (0.0278) (0.0320) (0.141) (0.0304) (0.323) (0.131) (0.144) (0.0368) (0.103) (0.0512) (0.133)
21 21 References 1. Bergmann, G., Ráth, I., Szabó, T., Torrini, P., Varró, D.: Incremental pattern matching for the efficient computation of transitive closure. In: Sixth International Conference on Graph Transformation. Bremen, Germany (09/ )
Model Transformation by Graph Transformation: A Comparative Study
Model Transformation by Graph Transformation: A Comparative Study Gabriele Taentzer 1, Karsten Ehrig 1, Esther Guerra 2, Juan de Lara 3, Laszlo Lengyel 4, Tihamer Levendovszky 4, Ulrike Prange 1, Daniel
Influence of Load Balancing on Quality of Real Time Data Transmission*
SERBIAN JOURNAL OF ELECTRICAL ENGINEERING Vol. 6, No. 3, December 2009, 515-524 UDK: 004.738.2 Influence of Load Balancing on Quality of Real Time Data Transmission* Nataša Maksić 1,a, Petar Knežević 2,
SIP Service Providers and The Spam Problem
SIP Service Providers and The Spam Problem Y. Rebahi, D. Sisalem Fraunhofer Institut Fokus Kaiserin-Augusta-Allee 1 10589 Berlin, Germany {rebahi, sisalem}@fokus.fraunhofer.de Abstract The Session Initiation
Elena Baralis, Silvia Chiusano Politecnico di Torino. Pag. 1. Active database systems. Triggers. Triggers. Active database systems.
Active database systems Database Management Systems Traditional DBMS operation is passive Queries and updates are explicitly requested by users The knowledge of processes operating on data is typically
On translating UML models into graph transformation systems $
ARTICLE IN PRESS Journal of Visual Languages and Computing 17 (2006) 78 105 Journal of Visual Languages & Computing www.elsevier.com/locate/jvlc On translating UML models into graph transformation systems
Series and Parallel Resistive Circuits
Series and Parallel Resistive Circuits The configuration of circuit elements clearly affects the behaviour of a circuit. Resistors connected in series or in parallel are very common in a circuit and act
Stability of QOS. Avinash Varadarajan, Subhransu Maji {avinash,smaji}@cs.berkeley.edu
Stability of QOS Avinash Varadarajan, Subhransu Maji {avinash,smaji}@cs.berkeley.edu Abstract Given a choice between two services, rest of the things being equal, it is natural to prefer the one with more
Policy Distribution Methods for Function Parallel Firewalls
Policy Distribution Methods for Function Parallel Firewalls Michael R. Horvath GreatWall Systems Winston-Salem, NC 27101, USA Errin W. Fulp Department of Computer Science Wake Forest University Winston-Salem,
LOAD BALANCING WITH PARTIAL KNOWLEDGE OF SYSTEM
LOAD BALANCING WITH PARTIAL KNOWLEDGE OF SYSTEM IN PEER TO PEER NETWORKS R. Vijayalakshmi and S. Muthu Kumarasamy Dept. of Computer Science & Engineering, S.A. Engineering College Anna University, Chennai,
Impact of Remote Control Failure on Power System Restoration Time
Impact of Remote Control Failure on Power System Restoration Time Fredrik Edström School of Electrical Engineering Royal Institute of Technology Stockholm, Sweden Email: [email protected] Lennart
Measurement with Ratios
Grade 6 Mathematics, Quarter 2, Unit 2.1 Measurement with Ratios Overview Number of instructional days: 15 (1 day = 45 minutes) Content to be learned Use ratio reasoning to solve real-world and mathematical
Modeling and Performance Analysis of Telephony Gateway REgistration Protocol
Modeling and Performance Analysis of Telephony Gateway REgistration Protocol Kushal Kumaran and Anirudha Sahoo Kanwal Rekhi School of Information Technology Indian Institute of Technology, Bombay, Powai,
On the Interaction and Competition among Internet Service Providers
On the Interaction and Competition among Internet Service Providers Sam C.M. Lee John C.S. Lui + Abstract The current Internet architecture comprises of different privately owned Internet service providers
Acano Manager. Acano Manager is a single point of management for enterprise and Service Provider collaboration infrastructure.
Acano Manager Acano Manager is a single point of management for enterprise and Service Provider collaboration infrastructure. One integrated platform with a single user interface brings together proactive
International Journal of Advanced Research in Computer Science and Software Engineering
Volume 2, Issue 9, September 2012 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com An Experimental
Load Balancing Mechanisms in Data Center Networks
Load Balancing Mechanisms in Data Center Networks Santosh Mahapatra Xin Yuan Department of Computer Science, Florida State University, Tallahassee, FL 33 {mahapatr,xyuan}@cs.fsu.edu Abstract We consider
LMPS: Localized Multi-Path Selection for QoS Routing in VoIP Networks Khaled M. F. Elsayed [email protected]
LMPS: Localized Multi-Path Selection for QoS Routing in VoIP Networks Khaled M F Elsayed khaled@ieeeorg Hassan Fadel Amin M Nassar anassar@engcuedueg hassanfadel@egticomeg Department of Electronics and
Latency on a Switched Ethernet Network
Application Note 8 Latency on a Switched Ethernet Network Introduction: This document serves to explain the sources of latency on a switched Ethernet network and describe how to calculate cumulative latency
8.1 Min Degree Spanning Tree
CS880: Approximations Algorithms Scribe: Siddharth Barman Lecturer: Shuchi Chawla Topic: Min Degree Spanning Tree Date: 02/15/07 In this lecture we give a local search based algorithm for the Min Degree
Traffic Engineering & Network Planning Tool for MPLS Networks
Traffic Engineering & Network Planning Tool for MPLS Networks Dr. Associate Professor, Department of Electrical Engineering Indian Institute of Technology Bombay, Powai, Mumbai 76 Founder & Director, Vegayan
--------- Virtual Office Network Tests Version 2.0 Revision 1.0 8x8, Inc. 2125 O'Nel Drive San Jose, CA 95131 Phone: 408.727.1885 Fax: 408.980.
--------- Virtual Office Network Tests Version 2.0 Revision 1.0 8x8, Inc. 2125 O'Nel Drive San Jose, CA 95131 Phone: 408.727.1885 Fax: 408.980.0432 Contents Important Notes for all Tests... 3 Tests and
Tools for Peer-to-Peer Network Simulation
Tools for Peer-to-Peer Network Simulation draft-irtf-p2prg-core-simulators-00.txt Alan Brown and Mario Kolberg University of Stirling, UK IETF65 P2PRG - March 24, 2006 1 Overview Provide survey of tools
Modeling Guidelines Manual
Modeling Guidelines Manual [Insert company name here] July 2014 Author: John Doe [email protected] Page 1 of 22 Table of Contents 1. Introduction... 3 2. Business Process Management (BPM)... 4 2.1.
Chapter 4. VoIP Metric based Traffic Engineering to Support the Service Quality over the Internet (Inter-domain IP network)
Chapter 4 VoIP Metric based Traffic Engineering to Support the Service Quality over the Internet (Inter-domain IP network) 4.1 Introduction Traffic Engineering can be defined as a task of mapping traffic
HPAM: Hybrid Protocol for Application Level Multicast. Yeo Chai Kiat
HPAM: Hybrid Protocol for Application Level Multicast Yeo Chai Kiat Scope 1. Introduction 2. Hybrid Protocol for Application Level Multicast (HPAM) 3. Features of HPAM 4. Conclusion 1. Introduction Video
Reuse Contracts: Managing the Evolution of Reusable Assets
Reuse Contracts: Managing the Evolution of Reusable Assets Patrick Steyaert, Carine Lucas, Kim Mens, Theo D Hondt Programming Technology Lab Vrije Universiteit Brussel Pleinlaan 2, 1050 Brussels, Belgium
TalkShow Advanced Network Tips
TalkShow Advanced Network Tips NewTek Workflow Team TalkShow is a powerful tool to expand a live production. While connecting in a TalkShow unit is as simple as plugging in a network cord and an SDI cable,
Autoconfiguration and maintenance of the IP address in ad-hoc mobile networks
1 Autoconfiguration and maintenance of the IP address in ad-hoc mobile networks M. Fazio, M. Villari, A. Puliafito Università di Messina, Dipartimento di Matematica Contrada Papardo, Salita Sperone, 98166
Approximation Algorithms
Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms
International journal of Engineering Research-Online A Peer Reviewed International Journal Articles available online http://www.ijoer.
RESEARCH ARTICLE ISSN: 2321-7758 GLOBAL LOAD DISTRIBUTION USING SKIP GRAPH, BATON AND CHORD J.K.JEEVITHA, B.KARTHIKA* Information Technology,PSNA College of Engineering & Technology, Dindigul, India Article
DATA ANALYSIS II. Matrix Algorithms
DATA ANALYSIS II Matrix Algorithms Similarity Matrix Given a dataset D = {x i }, i=1,..,n consisting of n points in R d, let A denote the n n symmetric similarity matrix between the points, given as where
Survey on Load Rebalancing for Distributed File System in Cloud
Survey on Load Rebalancing for Distributed File System in Cloud Prof. Pranalini S. Ketkar Ankita Bhimrao Patkure IT Department, DCOER, PG Scholar, Computer Department DCOER, Pune University Pune university
System Requirement Specification for A Distributed Desktop Search and Document Sharing Tool for Local Area Networks
System Requirement Specification for A Distributed Desktop Search and Document Sharing Tool for Local Area Networks OnurSoft Onur Tolga Şehitoğlu November 10, 2012 v1.0 Contents 1 Introduction 3 1.1 Purpose..............................
SHARP BOUNDS FOR THE SUM OF THE SQUARES OF THE DEGREES OF A GRAPH
31 Kragujevac J. Math. 25 (2003) 31 49. SHARP BOUNDS FOR THE SUM OF THE SQUARES OF THE DEGREES OF A GRAPH Kinkar Ch. Das Department of Mathematics, Indian Institute of Technology, Kharagpur 721302, W.B.,
An Optimization Model of Load Balancing in P2P SIP Architecture
An Optimization Model of Load Balancing in P2P SIP Architecture 1 Kai Shuang, 2 Liying Chen *1, First Author, Corresponding Author Beijing University of Posts and Telecommunications, [email protected]
Module 7. Routing and Congestion Control. Version 2 CSE IIT, Kharagpur
Module 7 Routing and Congestion Control Lesson 4 Border Gateway Protocol (BGP) Specific Instructional Objectives On completion of this lesson, the students will be able to: Explain the operation of the
Automatic Generation of Consistency-Preserving Edit Operations for MDE Tools
Automatic Generation of Consistency-Preserving Edit Operations for MDE Tools Michaela Rindt, Timo Kehrer, Udo Kelter Software Engineering Group University of Siegen {mrindt,kehrer,kelter}@informatik.uni-siegen.de
IP Traffic Engineering over OMP technique
IP Traffic Engineering over OMP technique 1 Károly Farkas, 1 Zoltán Balogh, 2 Henrik Villför 1 High Speed Networks Laboratory Department of Telecommunications and Telematics Technical University of Budapest,
Scaling 10Gb/s Clustering at Wire-Speed
Scaling 10Gb/s Clustering at Wire-Speed InfiniBand offers cost-effective wire-speed scaling with deterministic performance Mellanox Technologies Inc. 2900 Stender Way, Santa Clara, CA 95054 Tel: 408-970-3400
New QOS Routing Algorithm for MPLS Networks Using Delay and Bandwidth Constraints
New QOS Routing Algorithm for MPLS Networks Using Delay and Bandwidth Constraints Santosh Kulkarni 1, Reema Sharma 2,Ishani Mishra 3 1 Department of ECE, KSSEM Bangalore,MIEEE, MIETE & ISTE 2 Department
MikroTik RouterOS Workshop Load Balancing Best Practice. Warsaw MUM Europe 2012
MikroTik RouterOS Workshop Load Balancing Best Practice Warsaw MUM Europe 2012 MikroTik 2012 About Me Jānis Meģis, MikroTik Jānis (Tehnical, Trainer, NOT Sales) Support & Training Engineer for almost 8
Research on P2P-SIP based VoIP system enhanced by UPnP technology
December 2010, 17(Suppl. 2): 36 40 www.sciencedirect.com/science/journal/10058885 The Journal of China Universities of Posts and Telecommunications http://www.jcupt.com Research on P2P-SIP based VoIP system
Non-blocking Switching in the Cloud Computing Era
Non-blocking Switching in the Cloud Computing Era Contents 1 Foreword... 3 2 Networks Must Go With the Flow in the Cloud Computing Era... 3 3 Fat-tree Architecture Achieves a Non-blocking Data Center Network...
P2P VoIP for Today s Premium Voice Service 1
1 P2P VoIP for Today s Premium Voice Service 1 Ayaskant Rath, Stevan Leiden, Yong Liu, Shivendra S. Panwar, Keith W. Ross [email protected], {YongLiu, Panwar, Ross}@poly.edu, [email protected]
Lecture 7: Concurrency control. Rasmus Pagh
Lecture 7: Concurrency control Rasmus Pagh 1 Today s lecture Concurrency control basics Conflicts and serializability Locking Isolation levels in SQL Optimistic concurrency control Transaction tuning Transaction
Skype characteristics
Advanced Networking Skype Renato Lo Cigno Credits for part of the original material to Saverio Niccolini NEC Heidelberg Skype characteristics Skype is a well known P2P program for real time communications
Detecting rogue systems
Product Guide Revision A McAfee Rogue System Detection 4.7.1 For use with epolicy Orchestrator 4.6.3-5.0.0 Software Detecting rogue systems Unprotected systems, referred to as rogue systems, are often
PROPOSAL AND EVALUATION OF A COOPERATIVE MECHANISM FOR HYBRID P2P FILE-SHARING NETWORKS
PROPOSAL AND EVALUATION OF A COOPERATIVE MECHANISM FOR HYBRID P2P FILE-SHARING NETWORKS Hongye Fu, Naoki Wakamiya, Masayuki Murata Graduate School of Information Science and Technology Osaka University
Component visualization methods for large legacy software in C/C++
Annales Mathematicae et Informaticae 44 (2015) pp. 23 33 http://ami.ektf.hu Component visualization methods for large legacy software in C/C++ Máté Cserép a, Dániel Krupp b a Eötvös Loránd University [email protected]
Modeling and Performance Evaluation of Computer Systems Security Operation 1
Modeling and Performance Evaluation of Computer Systems Security Operation 1 D. Guster 2 St.Cloud State University 3 N.K. Krivulin 4 St.Petersburg State University 5 Abstract A model of computer system
An optimisation framework for determination of capacity in railway networks
CASPT 2015 An optimisation framework for determination of capacity in railway networks Lars Wittrup Jensen Abstract Within the railway industry, high quality estimates on railway capacity is crucial information,
Fuzzy Active Queue Management for Assured Forwarding Traffic in Differentiated Services Network
Fuzzy Active Management for Assured Forwarding Traffic in Differentiated Services Network E.S. Ng, K.K. Phang, T.C. Ling, L.Y. Por Department of Computer Systems & Technology Faculty of Computer Science
Euler Paths and Euler Circuits
Euler Paths and Euler Circuits An Euler path is a path that uses every edge of a graph exactly once. An Euler circuit is a circuit that uses every edge of a graph exactly once. An Euler path starts and
Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification
Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 5 Outline More Complex SQL Retrieval Queries
A Review And Evaluations Of Shortest Path Algorithms
A Review And Evaluations Of Shortest Path Algorithms Kairanbay Magzhan, Hajar Mat Jani Abstract: Nowadays, in computer networks, the routing is based on the shortest path problem. This will help in minimizing
6.02 Practice Problems: Routing
1 of 9 6.02 Practice Problems: Routing IMPORTANT: IN ADDITION TO THESE PROBLEMS, PLEASE SOLVE THE PROBLEMS AT THE END OF CHAPTERS 17 AND 18. Problem 1. Consider the following networks: network I (containing
Internet Infrastructure Measurement: Challenges and Tools
Internet Infrastructure Measurement: Challenges and Tools Internet Infrastructure Measurement: Challenges and Tools Outline Motivation Challenges Tools Conclusion Why Measure? Why Measure? Internet, with
EXTENDING NETWORK KNOWLEDGE: MAKING OLSR A QUALITY OF SERVICE CONDUCIVE PROTOCOL
EXTENDING NETWORK KNOWLEDGE: MAKING OLSR A QUALITY OF SERVICE CONDUCIVE PROTOCOL by Pedro Eduardo Villanueva-Pena, Thomas Kunz Carleton University January, 2006 This report examines mechanisms to gradually
Chapter 6: Conclusion
Chapter 6: Conclusion In this research we have designed the bandwidth optimization control protocol to manage the proposed Dual-bandwidth data path for the CDMA2000-WLAN integrated network. The user s
Influences of Communication Disruptions on Decentralized Routing in Transport Logistics
Influences of Communication Disruptions on Decentralized Routing in Transport Logistics Bernd Scholz-Reiter, Christian Zabel BIBA Bremer Institut für Produktion und Logistik GmbH University of Bremen Hochschulring
An Empirical Study of Two MIS Algorithms
An Empirical Study of Two MIS Algorithms Email: Tushar Bisht and Kishore Kothapalli International Institute of Information Technology, Hyderabad Hyderabad, Andhra Pradesh, India 32. [email protected],
Neural Voting Machines
massachusetts institute of technology computer science and artificial intelligence laboratory Neural Voting Machines Whitman Richards & H. Sebastian Seung AI Memo 2004-029 December 2004 2004 massachusetts
Skype network has three types of machines, all running the same software and treated equally:
What is Skype? Why is Skype so successful? Everybody knows! Skype is a P2P (peer-to-peer) Voice-Over-IP (VoIP) client founded by Niklas Zennström and Janus Friis also founders of the file sharing application
Decentralized supplementary services for Voice-over-IP telephony
Decentralized supplementary services for Voice-over-IP telephony Christoph Spleiß and Gerald Kunzmann Technische Universität München 80333 Munich, Germany {christoph.spleiss,gerald.kunzmann}@tum.de Abstract.
KNX IP using IP networks as KNX medium
KNX IP using IP networks as KNX medium Dipl.-Ing. Hans-Joachim Langels Siemens AG Industry Sector Building Technologies Control Products and Systems Regensburg [email protected] Overview
A Simple Model for Calculating SIP Signalling Flows in 3GPP IP Multimedia Subsystems
A Simple Model for Calculating SIP Signalling Flows in 3GPP IP Multimedia Subsystems Alexander A. Kist and Richard J. Harris RMIT University, BOX 2476V, Victoria 3001, Australia {kist,richard}@catt.rmit.edu.au
Moab and Fabriscale s Fabric Manager White Paper
Moab and Fabriscale s Fabric Manager White Paper Unleashing the Power of your Data Center Executive Summary The data center today needs to be operational at the highest levels of efficiency to ensure all
VMware Infrastructure 3 Pricing, Packaging and Licensing Overview W H I T E P A P E R
VMware Infrastructure 3 Pricing, Packaging and Licensing Overview W H I T E P A P E R Table of Contents Introduction................................................................ 3 Summary...................................................................3
A Performance Study of VoIP Applications: MSN vs. Skype
This full text paper was peer reviewed by subject matter experts for publication in the MULTICOMM 2006 proceedings. A Performance Study of VoIP Applications: MSN vs. Skype Wen-Hui Chiang, Wei-Cheng Xiao,
SYSM 6304: Risk and Decision Analysis Lecture 5: Methods of Risk Analysis
SYSM 6304: Risk and Decision Analysis Lecture 5: Methods of Risk Analysis M. Vidyasagar Cecil & Ida Green Chair The University of Texas at Dallas Email: [email protected] October 17, 2015 Outline
Nodal and Loop Analysis
Nodal and Loop Analysis The process of analyzing circuits can sometimes be a difficult task to do. Examining a circuit with the node or loop methods can reduce the amount of time required to get important
Network Virtualization Server for Adaptive Network Control
Network Virtualization Server for Adaptive Network Control Takashi Miyamura,YuichiOhsita, Shin ichi Arakawa,YukiKoizumi, Akeo Masuda, Kohei Shiomoto and Masayuki Murata NTT Network Service Systems Laboratories,
QuickStart Guide vcenter Server Heartbeat 5.5 Update 2
vcenter Server Heartbeat 5.5 Update 2 This document supports the version of each product listed and supports all subsequent versions until the document is replaced by a new edition. To check for more recent
Normalization in OODB Design
Normalization in OODB Design Byung S. Lee Graduate Programs in Software University of St. Thomas St. Paul, Minnesota [email protected] Abstract When we design an object-oriented database schema, we need
Performance Analysis of AQM Schemes in Wired and Wireless Networks based on TCP flow
International Journal of Soft Computing and Engineering (IJSCE) Performance Analysis of AQM Schemes in Wired and Wireless Networks based on TCP flow Abdullah Al Masud, Hossain Md. Shamim, Amina Akhter
Rev. A, March 2016. Application Guide Q-SYS Core 110f VoIP Conference System
Rev. A, March 2016 Application Guide Q-SYS Core 110f VoIP Conference System Q-SYS DESIGNER COMES WITH SAMPLE DESIGNS. Q-SYS Designer 5.0 and higher software automatically installs sample designs. This
Probe Station Placement for Robust Monitoring of Networks
Probe Station Placement for Robust Monitoring of Networks Maitreya Natu Dept. of Computer and Information Science University of Delaware Newark, DE, USA, 97 Email: [email protected] Adarshpal S. Sethi
A Topology-Aware Relay Lookup Scheme for P2P VoIP System
Int. J. Communications, Network and System Sciences, 2010, 3, 119-125 doi:10.4236/ijcns.2010.32018 Published Online February 2010 (http://www.scirp.org/journal/ijcns/). A Topology-Aware Relay Lookup Scheme
Network (Tree) Topology Inference Based on Prüfer Sequence
Network (Tree) Topology Inference Based on Prüfer Sequence C. Vanniarajan and Kamala Krithivasan Department of Computer Science and Engineering Indian Institute of Technology Madras Chennai 600036 [email protected],
2. Research and Development on the Autonomic Operation. Control Infrastructure Technologies in the Cloud Computing Environment
R&D supporting future cloud computing infrastructure technologies Research and Development on Autonomic Operation Control Infrastructure Technologies in the Cloud Computing Environment DEMPO Hiroshi, KAMI
FortiBalancer: Global Server Load Balancing WHITE PAPER
FortiBalancer: Global Server Load Balancing WHITE PAPER FORTINET FortiBalancer: Global Server Load Balancing PAGE 2 Introduction Scalability, high availability and performance are critical to the success
Quality of Service Routing Network and Performance Evaluation*
Quality of Service Routing Network and Performance Evaluation* Shen Lin, Cui Yong, Xu Ming-wei, and Xu Ke Department of Computer Science, Tsinghua University, Beijing, P.R.China, 100084 {shenlin, cy, xmw,
Evaluation of Complexity of Some Programming Languages on the Travelling Salesman Problem
International Journal of Applied Science and Technology Vol. 3 No. 8; December 2013 Evaluation of Complexity of Some Programming Languages on the Travelling Salesman Problem D. R. Aremu O. A. Gbadamosi
Application Note No. 12
Application Note No. 12 Product: Keywords: Problem: Softing OPC Easy Connect OPC Server, Redundancy How to configure redundant server connections Solution: Initial situation: An OPC client application
2) Write in detail the issues in the design of code generator.
COMPUTER SCIENCE AND ENGINEERING VI SEM CSE Principles of Compiler Design Unit-IV Question and answers UNIT IV CODE GENERATION 9 Issues in the design of code generator The target machine Runtime Storage
Content Delivery Networks. Shaxun Chen April 21, 2009
Content Delivery Networks Shaxun Chen April 21, 2009 Outline Introduction to CDN An Industry Example: Akamai A Research Example: CDN over Mobile Networks Conclusion Outline Introduction to CDN An Industry
SDMX technical standards Data validation and other major enhancements
SDMX technical standards Data validation and other major enhancements Vincenzo Del Vecchio - Bank of Italy 1 Statistical Data and Metadata exchange Original scope: the exchange Statistical Institutions
