Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.



Published on

  • Be the first to comment

  • Be the first to like this


  1. 1. Network Configuration with plug-and-play Components Summer 2001,Seminar Jong – wook , Choi [email_address] .kr <ul><ul><li>IM '99 IM'99 Sixth IFIP/IEEE International Symposium on </li></ul></ul><ul><ul><li>Integrated Network Management </li></ul></ul><ul><ul><li>Boston Park Plaza Hotel, Boston, MA, USA 24 - 28 May 1999 </li></ul></ul><ul><ul><li>by Syed Kamran Raza </li></ul></ul>
  2. 2. <ul><li>Introduction </li></ul><ul><li>Mobile Agent Technology </li></ul><ul><li>The Plug-and-Play Printer </li></ul><ul><li>Conclusions and future work </li></ul>Contents
  3. 3. <ul><li>Network management is getting increasingly complex and harder because of the rapid growth of today’s computer and telecommunication networks </li></ul><ul><li>One of these important management tasks is </li></ul><ul><ul><li>installation and configuration of a new component in an existing network </li></ul></ul>1.Introduction
  4. 4. <ul><li>One of the solutions to the problem is </li></ul><ul><ul><li>to automate the installation and configuration process of a new network component using the plug-and-play concept </li></ul></ul><ul><li>In this paper, </li></ul><ul><ul><li>focous on an implementation of a network plug-and-play scheme using mobile agents technology </li></ul></ul><ul><ul><li>The flexibility and power of the mobile agent paradigm is well suited to any application dealing with a dynamic network environment </li></ul></ul>1.Introduction
  5. 5. <ul><li>Traditionally, computer communication networks are </li></ul><ul><ul><li>based on computing paradigms that operate in client/server manner </li></ul></ul><ul><ul><li>The major problem with client/server transactions is the consumption of network bandwidth because network remains engaged for the entire duration of a transaction </li></ul></ul>2.Mobile Agent Technology
  6. 6. <ul><li>An alternative computing paradigm that has </li></ul><ul><ul><li>evolved recently is Remote Programming(RP) </li></ul></ul><ul><ul><li>In this approach, instead of shouting a request across the network to the server, the client computer supplies the procedures to be performed to other computer </li></ul></ul><ul><ul><li>The salient feature of the RP approach is saving network bandwidth as the network is used only one time during the transportation of procedures </li></ul></ul>2.Mobile Agent Technology
  7. 7. <ul><li>Code Mobility </li></ul><ul><ul><li>The idea of moving software programs by means of the network is quite old </li></ul></ul><ul><ul><li>More recently, the trend has been to “move programs while they run”, such software programs are termed as Mobile Code </li></ul></ul><ul><ul><li>this approach yields a powerful computing paradigm that is called Code Mobility </li></ul></ul><ul><ul><li>Code Mobility is defined </li></ul></ul><ul><ul><li>the capability to dynamically change the bindings between code fragments and the locations where they are executed </li></ul></ul>2.Mobile Agent Technology
  8. 8. <ul><li>Mobile Agent </li></ul><ul><ul><li>A running computation that has a migration capability is called a Mobile Agent </li></ul></ul><ul><ul><li>Mobile Agent is a software agent(procedure and state) that can move from one host to another host over the network </li></ul></ul><ul><ul><li>Mobile Agent System(MAS) provide benefits in many application domains : </li></ul></ul><ul><ul><li>distributed informaiton retrieval, telecommunication service management,remote device control and configuration ….. </li></ul></ul>2.Mobile Agent Technology
  9. 9. <ul><li>Mobile Agent (Cont.) </li></ul><ul><ul><li>This paper explores </li></ul></ul><ul><ul><li>the use of mobile agents for the configuration of the components in telecommunication and computer networks </li></ul></ul>2.Mobile Agent Technology
  10. 10. <ul><li>Infrastructure for Code Mobility </li></ul><ul><ul><li>Mobile agents require an environment in which to execute </li></ul></ul><ul><ul><li>The environment should support agent facilities for agent execution,migration,serialization,communication,lifecycle,security etc. </li></ul></ul><ul><ul><li>Object Management Group(OMG) is working on defining standard facilities that are called Mobile Agent Facilities(MAF) </li></ul></ul>2.Mobile Agent Technology
  11. 11. <ul><li>Infrastructure for Code Mobility(Cont.) </li></ul><ul><ul><li>The MAF specifications mainly address agent management, tracking and transport facilities </li></ul></ul><ul><ul><li>It is obvious that </li></ul></ul><ul><ul><li>the basic requirement for the Code Mobility is the presence of an infrastructure that can support specified mobility facilities . </li></ul></ul><ul><ul><li>It is called that a mobility framework </li></ul></ul>2.Mobile Agent Technology
  12. 12. <ul><li>Infrastructure for Code Mobility(Cont.) </li></ul><ul><ul><li>To implement such an infrastructure, the choice of technology is critical </li></ul></ul><ul><ul><li>Java supports the kind of services required for this infrastructure </li></ul></ul><ul><ul><li>One of the basic requirements for a mobility framework is that a mobile agent must be able to run on each network component in a machine-independent manner </li></ul></ul><ul><ul><li>The Java Virtual Machine(JVM) provides the solution to this requirement by ensuring safe and secure execution of received mobile code, independent of underlying executing machine </li></ul></ul>2.Mobile Agent Technology
  13. 13. <ul><li>Mobile Code Toolkit </li></ul><ul><ul><li>The infrastructure that we have used for building our application is called the ‘Mobile Code Toolkit’ </li></ul></ul><ul><ul><li>It is necessary to have an infrastrusture that provides a framework for code mobility </li></ul></ul><ul><ul><li>Three major interacting components: </li></ul></ul><ul><ul><ul><li>Mobile Code Daemon(MCD), </li></ul></ul></ul><ul><ul><ul><li>Mobile Agents </li></ul></ul></ul><ul><ul><ul><li>Interface to Network Resources </li></ul></ul></ul>2.Mobile Agent Technology
  14. 14. Mobile Code Toolkit(Cont.) 2.Mobile Agent Technology <ul><li>every Network Component(NC) contains a Mobile Code daemon(MCD) running within a Java Virtual Machine </li></ul><ul><ul><li>the MCD provides a number of services that facilitate the excution of mobile agents </li></ul></ul><ul><li>assumed that a mobile code daemon runs within a Java virtual machine on each network component </li></ul><ul><ul><li>the deglet is then injected into the network and travels by the means of the implemented migration patterns </li></ul></ul>
  15. 15. <ul><li>Mobile Code Toolkit(Cont.) </li></ul><ul><ul><li>MCD Included are: </li></ul></ul><ul><ul><li>a Mobile Code Manager(MCM) that manages the life cycle of a mobile agent from its arrival and authentication at the network component to its migration or perhaps destruction </li></ul></ul><ul><ul><li>a Migration Facilitate(MF) to trnasport mobile agents between NCs </li></ul></ul><ul><ul><li>The VMC is responsible for management of the mobile agents access rights and the allocation of resources to that agent </li></ul></ul><ul><ul><li>the VMC is the only interface to managed resources and ensures secure access to them </li></ul></ul>2.Mobile Agent Technology
  16. 16. <ul><li>Mobile Code Toolkit(Cont.) </li></ul>2.Mobile Agent Technology NC NC MCD JVM kenel(managed resources) MCD JVM MF MCM vmc Port compressed code NC MCD JVM NC : Network Component MCD : Mobile Code Daemon MF : Migration Fcility MCM : Mobile Code Manager VMC : Virtual Managed Component JVM : Java Virtual Machine Fig 1:Mobile Code Toolkit framework
  17. 17. <ul><li>Simple scenario </li></ul><ul><ul><li>The printer is plugged-in and attached to the network </li></ul></ul><ul><ul><li>As soon as it is turned on (by discovery agent), its bootstrap program installs and activates some software modules </li></ul></ul><ul><ul><li>These modules are capable of sending mobile agents on the network . The configuration process(agent) starts with the dispatch of a mobile agent to the vendor site for the registration purposes (#1 on Fig.2) </li></ul></ul><ul><ul><li>After successful registration, another mobile agent is sent over the network to discover the configuration requirements of other network components (#2 on Fig.2) </li></ul></ul>3.The Plug-and-Play Printer
  18. 18. <ul><li>Simple scenario(Cont.) </li></ul><ul><ul><li>when the mobile agent returns to its origin(printer), the plug-and-plug component’s software determines the configuration requirements of the supported network and sends another mobile agent with these demands( request for drivers ) towards the vendor site(#3 on fig2) </li></ul></ul><ul><ul><li>The agent arrives at the vendor component and access the corresponding interface to the driver repository </li></ul></ul>3.The Plug-and-Play Printer
  19. 19. <ul><li>Simple scenario(Cont.) </li></ul><ul><ul><li>Through this interface, the requested drivers are copied into mobile agent’s data structure and sent back to the printer </li></ul></ul><ul><ul><li>The printer prepares and dispatches separate dedicated setup mobile agents towards each discovered component, carrying corresponding drivers (#4 on fig.2) </li></ul></ul>3.The Plug-and-Play Printer
  20. 20. Simple scenario(Cont.) 3.The Plug-and-Play Printer Fig 2:The Plug-and-Plug printer scenario
  21. 21. <ul><li>Implementation </li></ul><ul><ul><li>General setup </li></ul></ul><ul><ul><ul><li>simple network comprised of three main interacting components </li></ul></ul></ul><ul><ul><ul><li>-Plug-and-play component(printer) </li></ul></ul></ul><ul><ul><ul><li>-Vendor components </li></ul></ul></ul><ul><ul><ul><li>-Other Network Components </li></ul></ul></ul>3.The Plug-and-Play Printer
  22. 22. <ul><li>Implementation </li></ul><ul><ul><li>Assumptions </li></ul></ul><ul><ul><ul><li>Each network component is Java-enabled </li></ul></ul></ul><ul><ul><ul><li>Each network component is running a mobility framework </li></ul></ul></ul><ul><ul><ul><li>The PnP component(printer) is shipped with a vendor-supplied plug-and-play module , called PnP-VMC </li></ul></ul></ul><ul><ul><ul><li>The PnP component knows the URL/IP address of its vendor </li></ul></ul></ul><ul><ul><ul><li>Migration paths are already established among the existing network components </li></ul></ul></ul><ul><ul><ul><li>Migration paths are configured on components so as to form a single complete ring. </li></ul></ul></ul>3.The Plug-and-Play Printer
  23. 23. <ul><li>Implementation </li></ul><ul><ul><li>Detailed Description </li></ul></ul><ul><ul><ul><li>have developed two kinds of modules: </li></ul></ul></ul><ul><ul><ul><li>1.Mobile Agents : that are to be sent to different network components with specific delegated tasks </li></ul></ul></ul><ul><ul><ul><li>2.VMCs interfaces : that provide access to actual network resource and component </li></ul></ul></ul>3.The Plug-and-Play Printer
  24. 24. <ul><li>Implementation </li></ul><ul><ul><li>Detailed Description(Cont.) </li></ul></ul><ul><ul><ul><li>The steps of the Plug-and-Play scenario can be listed </li></ul></ul></ul><ul><ul><ul><li>1. Installation, booting and initial configuration of the plug-and-play printer </li></ul></ul></ul><ul><ul><ul><li>2. Registration of the plug-and-play printer with the vendor </li></ul></ul></ul><ul><ul><ul><li>3.Scan of the existing network to discover configuration requirements </li></ul></ul></ul><ul><ul><ul><li>4. Fetching the required printer drivers from the vendor site </li></ul></ul></ul>3.The Plug-and-Play Printer
  25. 25. <ul><li>Implementation </li></ul><ul><ul><li>Detailed Description(Cont.) </li></ul></ul><ul><ul><ul><li>The steps of the Plug-and-Play scenario can be listed(Cont.) </li></ul></ul></ul><ul><ul><ul><li>5. Distribution of the drivers to the network components </li></ul></ul></ul><ul><ul><ul><li>6.Auto-discovery of a new network component in future </li></ul></ul></ul><ul><ul><ul><li>7.Upgrade notifications sent by the vendor to the printer </li></ul></ul></ul>3.The Plug-and-Play Printer
  26. 26. <ul><li>Evalution </li></ul><ul><ul><li>Having implemented a plug-and-play scheme, we feel that </li></ul></ul><ul><ul><li>the scheme based on mobile agents is superior to traditional client/server schemes </li></ul></ul><ul><ul><li>the flexibility provided by the mobile agents is the biggest advantage </li></ul></ul><ul><ul><li> </li></ul></ul>3.The Plug-and-Play Printer
  27. 27. <ul><li>Evalution(Cont.) </li></ul><ul><ul><li>The other notable advantages of this mobile agent scheme are: </li></ul></ul><ul><ul><li>platform-independent </li></ul></ul><ul><ul><li>The auto-discovery of network components(by discovery agent) </li></ul></ul><ul><ul><li>There are,however, some drawbacks associated with the scheme : </li></ul></ul><ul><ul><li>big overhead is associated with running a JVM and a mobility framework on each network component </li></ul></ul><ul><ul><li>sending code over the network has inherent security risks </li></ul></ul><ul><ul><li>considerable network bandwidth may be consumed by the permanent discovery agents </li></ul></ul>3.The Plug-and-Play Printer
  28. 28. <ul><li>Mobile Agent </li></ul><ul><ul><li>makes building applications for dynamic telecommunications and computer networks </li></ul></ul><ul><ul><li>results validated the theme that dynamic networks of plug-and-play services are possible in the near future </li></ul></ul><ul><li>Future work </li></ul><ul><ul><li>is in progress for making enhancements like error control and recovery, auto-discovery of components and notification facilities for driver updates </li></ul></ul><ul><ul><li>extended the idea of plug-and-play from a printer to other network components like routes and switches </li></ul></ul>4.Conclusions and future work