Daniel A. Menascé, John M. Ewing, Hassan Gomaa, Sam Malek, and João P. Sousa The Volgenau School of Information Technology and Engineering Department of Computer Science George Mason University www.cs.gmu.edu/faculty/menasce.html 1
• SASSY Overview • From Service Activity Schemas to System Service Architectures • Optimal Architecting and Re-Architecting • Experimental Results • Concluding Remarks 2
High-level view of the SASSY framework 3
4
5
• Performance Model • Utility Function α Avail β Avail − a ( ) e U Avail ( a ) = K Avail ( ) α Avail β Avail − a 1 + e ( ) ) α Avail β Avail − 1 K Avail = (1 + e ( ) α Avail β Avail − 1 e α Avail = − 100.0 β Avail = 0.95 6
• Three SC levels of security – low, medium, high • Overall SC level is equal to minimum level • Performance overhead on a service instance: – Low: none – Medium: +0.05 s & -1.5 tps – High: +0.12 s & -3.0 tps • Utility Function – Low = 0.2 – Medium = 0.8 – High = 1.0 7
• Performance Model • Utility Function ( ) α ExTi β ExTi − e e U ExTi ( e ) = K ExTi ( ) α ExTi β ExTi − e 1 + e K ExTi = (1 + e α ExTi ⋅ β ExTi ) e α ExTi ⋅ β ExTi α ExTi = 0.5 β ExTi = 65.0 8
• Performance Model • Utility Function ( ) α Xput β Xput − x e U Xput ( x ) = ( ) α Xput β Xput − x 1 + e α Xput = − 0.5 β Xput = 14.0 9
SSS Name w i Secure Communication 0.2 Secure Storage 1 0.1 Secure Storage 2 0.1 Execution Time 0.2 Availability 0.2 Throughput 0.2
• SASSY Overview • From Service Activity Schemas to System Service Architectures • Optimal Architecting and Re-Architecting • Experimental Results • Concluding Remarks 11
• SSA offers structural and behavioral models for an SOA system: • Structural: eXtensible Architectural Description Language (xADL) extended with service instances. – A service instance is the realization of a service type defined in the ontology • Behavioral: state machine view based on Finite State Processes (FSP). • SASSY automatically generates base structural and behavioral models from the SAS. 12
Class Diagram for SSSs Pattern SSS Has Includes 1..* 1 Includes Component Utility Function 1..* Includes Uses 1..* 1 1..* Service Type QoS Metric ComputedBy ImplementedBy 1..* 1 Service QoS Model Provider Influences
• SASSY Overview • From Service Activity Schemas to System Service Architectures • Optimal Architecting and Re-Architecting • Experimental Results • Concluding Remarks 15
Find an architecture A* and a corresponding service provider allocation Z* such that ( A * , Z * ) = argmax ( A , Z ) U g ( A , Z ) This is an NP-hard problem. We will use heuristic techniques.
• SASSY Overview • From Service Activity Schemas to System Service Architectures • Optimal Architecting and Re-Architecting • Experimental Results • Concluding Remarks 19
Service Type & Capacity (tps) ExTi (s) Availability Cost Vendor Road Map Acme 15.0 0.2 0.900 50.00 Road Map Pinnacle 12.5 3.0 0.990 100.00 Road Map ServiceTron 7.5 0.3 0.985 150.00 Road Map Apex 17.5 1.0 0.975 250.00 Weather Acme 16.5 0.1 0.980 100.00 Weather Pinnacle 13.5 5.0 0.999 200.00 Weather ServiceTron 10.0 0.8 0.995 300.00 Weather Apex 18.0 0.6 0.990 250.00 ID Threat Intellifort 13.0 1.5 0.990 500.00 ID Threat InfoSafe 15.5 2.9 0.985 400.00 ID Threat CryptIT 17.0 1.8 0.995 550.00 Make Plan DataCrunch 15.0 48.5 0.940 1500.00 Make Plan OR Gurus 19.0 92.0 0.990 2000.00 Make Plan MasterPlan 7.0 83.2 0.965 1600.00 Eval Plan DataCrunch 17.0 5.2 0.985 150.00 Eval Plan OR Gurus 14.5 9.8 0.995 200.00 Eval Plan Master Plan 7.5 3.9 0.990 250.00
• Three Patterns: – Basic (B) • Minimum: 1 service instance • Maximum: 1 service instance – fast Fault Tolerant (fFT) • Helps with Availability and Execution Time • Minimum: 2 service instances • Maximum: 3 service instances – Load Balancing (LB) • Helps with Throughput and Execution Time • Minimum: 2 service instances • Maximum: 3 service instances
• Sends copy of request to each connected service instance. • Returns first response immediately. • Assumption: fFT connector is not aware of a service instance’s status (“up” or “down”).
• Forwards request to a service instance using weighted round-robin based on capacity • Assumption: LB connector is not aware of a service instance’s status (“up” or “down”)
Service Type Instance # Vendor Utility Type Metric Score Road Map 1 Pinnacle Global N/A 0.141 Weather 1 Acme Sec. Communication Low 0.200 ID Threat 1 Intellifort Secure Storage 1 Low 0.400 Make Plan 1 Data Crunch Secure Storage 2 Low 0.400 Eval Plan 1 Data Crunch Availability 0.889 0.002 Execution Time 56.70 0.997 Utility Throughput Utility 12.38 0.307
• Initial neighborhood of Base: – fFT n = 2, Road Map, U g =0.170 – fFT n = 2, Weather, U g =0.203 – fFT n = 2, ID Threats, U g =0.169 – fFT n = 2, Make Plan, U g =0.391 – fFT n = 2, Eval Plan, U g =0.185 – Sec Com Lvl = Med, U g =0.173 • Move search to visited 1: – fFT n = 2, Make Plan, U g =0.391
Service Type Instance # Vendor Utility Type Metric Score Road Map 1 Pinnacle Global N/A 0.391 Weather 1 Acme Sec. Communication Low 0.200 ID Threat 1 Intellifort Secure Storage 1 Low 0.400 Make Plan 1 Data Crunch Secure Storage 2 Low 0.400 Make Plan 2 OR Gurus Availability 0.946 0.393 Eval Plan 1 Data Crunch Execution Time 59.29 0.946 Utility Throughput Utility 12.38 0.307
• Initial neighborhood of visited 1: – Sec Com Lvl = Med, U g = 0.479 – LB n = 2, Road Map, U g = 0.361 – LB n = 2, Weather, U g =0.425 – LB n = 2, ID Threats, U g =0.378 – LB n = 2, Make Plan, U g =0.046 – LB n = 2, Eval Plan, U g =0.402 – fFT n = 3, Make Plan, U g =0.000 • Move search to visited 2: – Sec Com Lvl = Med, U g = 0.479
Service Type Instance # Vendor Utility Type Metric Score Road Map 1 Pinnacle Global N/A 0.479 Weather 1 Acme Sec. Communication Med 0.800 ID Threat 1 Intellifort Secure Storage 1 Low 0.400 Make Plan 1 Data Crunch Secure Storage 2 Low 0.400 Make Plan 2 OR Gurus Availability 0.946 0.393 Eval Plan 1 Data Crunch Execution Time 59.39 0.943 Utility Throughput Utility 11.39 0.213
• Initial neighborhood of visited 2: – LB n = 2, Road Map, U g = 0.438 – LB n = 2, Weather, U g =0.521 – LB n = 2, ID Threats, U g =0.498 – LB n = 2, Make Plan, U g =0.054 – LB n = 2, Eval Plan, U g =0.493 – fFT n = 3, Make Plan, U g =0.000 – fFT n = 2, Road Map, U g = 0.528 – fFT n = 2, Weather, U g =0.555 – fFT n = 2, ID Threats, U g =0.530 – fFT n = 2, Eval Plan, U g =0.543 • Move search to visited 3: – fFT n = 2, Weather, U g =0.555
Service Type Instance # Vendor Utility Type Metric Score Road Map 1 Pinnacle Global N/A 0.555 Weather 1 Acme Sec. Communication Med 0.800 Weather 2 Pinnacle Secure Storage 1 Low 0.400 ID Threat 1 Intellifort Secure Storage 2 Low 0.400 Make Plan 1 Data Crunch Availability 0.965 0.820 Make Plan 2 OR Gurus Execution Time 59.39 0.943 Utility Eval Plan 1 Data Crunch Throughput Utility 11.39 0.213
Service Type Instance # Vendor Utility Type Metric Score Road Map 1 Pinnacle Global N/A 0.655 Weather 1 Acme Sec. Communication Med 0.800 Weather 2 Pinnacle Secure Storage 1 Med 0.700 ID Threat 1 Intellifort Secure Storage 2 Med 0.700 ID Threat 2 InfoSafe Availability 0.965 0.823 ID Threat 3 CryptIT Execution Time 59.43 0.942 Utility Make Plan 1 Data Crunch Throughput Utility 12.10 0.279 Make Plan 2 OR Gurus Eval Plan 1 Data Crunch
• A sudden change occurs in the behavior of a key service instance. • Either SASSY monitoring services detect the change or service provider notifies SASSY. • Begin architecture search starting from current architecture.
Service Type & Capacity (tps) Execution Time (s) Availability Cost Vendor Road Map Acme 15.0 0.2 0.900 50.00 Road Map Pinnacle 6.5 (12.5) 12.0 (3.0) 0.75 (0.990) 100.00 Road Map ServiceTron 7.5 0.3 0.985 150.00 Road Map Apex 17.5 1.0 0.975 250.00 Weather Acme 16.5 0.1 0.980 100.00 Weather Pinnacle 13.5 5.0 0.999 200.00 Weather ServiceTron 10.0 0.8 0.995 300.00 Weather Apex 18.0 0.6 0.990 250.00 ID Threat Intellifort 13.0 1.5 0.990 500.00 ID Threat InfoSafe 15.5 2.9 0.985 400.00 ID Threat CryptIT 17.0 1.8 0.995 550.00 Make Plan DataCrunch 15.0 48.5 0.940 1500.00 Make Plan OR Gurus 19.0 92.0 0.990 2000.00 Make Plan MasterPlan 7.0 83.2 0.965 1600.00 Eval Plan DataCrunch 17.0 5.2 0.985 150.00 Eval Plan OR Gurus 14.5 9.8 0.995 200.00 Eval Plan Master Plan 7.5 3.9 0.990 250.00
Service Type Instance # Vendor Utility Type Metric Score Road Map 1 Acme Global N/A 0.643 Road Map 2 Apex Sec. Communication Med 0.800 Weather 1 Acme Secure Storage 1 Low 0.400 Weather 2 Pinnacle Secure Storage 2 Med 0.700 ID Threat 1 Intellifort Availability 0.984 0.975 ID Threat 2 InfoSafe Execution Time 58.81 0.957 Utility Make Plan 1 Data Crunch Throughput Utility 12.10 0.279 Make Plan 2 OR Gurus Eval Plan 1 Data Crunch Eval Plan 2 OR Gurus
40
• SASSY Overview • From Service Activity Schemas to System Service Architectures • Optimal Architecting and Re-Architecting • Experimental Results • Concluding Remarks 41
Recommend
More recommend