1 / 24

A Set of Tools to Solve NMS Scaling Using Aspects

A Set of Tools to Solve NMS Scaling Using Aspects. Shay Raz Advisor: Prof. Amiram Yehudai. Overview. Background Model Basic Aspects Optimizations Package Plug-in Summary Future Work. Background. Atrica Network Management System (NMS)

laird
Download Presentation

A Set of Tools to Solve NMS Scaling Using Aspects

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Set of Tools to Solve NMS Scaling Using Aspects Shay Raz Advisor: Prof. Amiram Yehudai

  2. Overview • Background • Model • Basic Aspects • Optimizations • Package Plug-in • Summary • Future Work

  3. Background • Atrica • Network Management System (NMS) • Inventory management, Fault management, Performance management, Service Management, Security Management, Fraud Detection, and Billing. • Scaling problem • Solution is setup dependent. • Small setup -> in memory virtual network. • Big setup -> system collapse!

  4. Background (Cont.) • Solution – complete system reengineering • Constraints • On going development of new features. • Support and maintain existing solution. • Usual time/manpower constraints. • Thesis – why don’t use Aspect to solve scaling program • Use same code base. • Plug in and out scaling issue as needed. • Dynamically refine pointcuts to include new development.

  5. Model • Elements • Device, Port, Link, Connection • Managers • Element manager • Element Database manager • Application • Connection Analyzer • Simulation • Topology creator • Test runner

  6. Device Connection Link Port Class Diagram * 2 1 * *

  7. Database Scheme

  8. Topology

  9. Connections

  10. Initial Results

  11. Basic Aspects • Load control aspects • PreventLoadAspect • Getting elements aspects • XXGetElementAspect • XXGetRelatedYYIdsAspect

  12. Basic Results

  13. Optimization • Development aspect • TraceDatabaseAspect • Elements are selected from database one by one • Db overhead • DB latency • We can do better then that…

  14. Optimization (Cont.) • Enhance the get related aspect to do the loading also. • XXGetRelatedYYAspect

  15. Optimized Results

  16. Optimization 2 • Development aspect • CountObjectCreationAspect • Topology elements are created many times more there needed. • Selective loading • Caching mechanism

  17. Optimization 2 (Cont.) • Change load strategy to load topology only • TopologyOnlyLoadAspect • ConnectionGetRelatedLinkAspect

  18. Optimized 2 Results

  19. Package Plug-in • Develop in house caching solution is expensive. • There are a lot of off-the-shelf solutions • Use Aspect to plug-in an off-the-shelf solution into the system

  20. JDO - Java Data Object • Java JSR. • Separate persistency model from data model. • Use XML to describe DB schema and mapping. • Use enhancer (byte code to byte code) to introduce persistency code. • Has many implementations : RI, LiDO, KoDO, etc. • Not very stable (yet)

  21. JDO Aspects • Transaction aspect • JDOTransactionAspect • Get elements aspect • XXGetElementAspect

  22. Results Summary

  23. Summary • Aspects can be used to easily change software strategy. • Useful for product-line • Development Aspects can be use to optimize software. • Instrumentation is very specific • Aspects can be used to easily plug-in off-the-shelf products

  24. Future Work • Objects scope detection • Dynamic optimization • Dynamic loading strategy • Distribution using aspects • Clients scaling

More Related