A Grid Service-Based Collaborative Network ... - Semantic Scholar

3 downloads 10757 Views 122KB Size Report
A Grid Service-Based Collaborative Network Simulation Environment for ... with pedagogical interest for Computer Networks .... This information would be.
A Grid Service-Based Collaborative Network Simulation Environment for Computer Networks Education Miguel L. Bote-Lorenzo, Juan I. Asensio-Pérez, Eduardo Gómez-Sánchez, Guillermo Vega-Gorgojo, Yannis A. Dimitriadis, Sergio Guíñez-Molinos School of Telecommunications Engineering, University of Valladolid, Spain {migbot@, juaase@, edugom@, guiveg@, yannis@, sguinez@ulises.}tel.uva.es

Abstract This paper presents the design of a new simulation environment based on the well-known ns-2 network simulator with two significant characteristics. First, it enables the possibility of running a large number of simulations even if the computational and storage resources locally available are scarce. Second, it provides a number of features in order to facilitate collaboration among students. In this way, the proposed simulation environment enables the realization of many collaborative learning scenarios with pedagogical interest for Computer Networks education.

1. Introduction Understanding the behavior and characteristics of network protocols implies studying their functioning, both individually and interactively, under varying network conditions [3]. Such studies can be carried out by means of network simulators that enable the evaluation of protocols under different user-defined conditions. For this reason, simulators have become an essential tool in Computer Networks education. One of the most used simulators in Computer Networks education is ns-2 (Network Simulator 2). The ns-2 simulator [11] is an open source application that can be employed to evaluate different protocols typically used in both wired and wireless networks. With this aim, the user just has to provide ns-2 with a script describing the network scenario to be simulated. As a result of the simulation, ns-2 typically generates two types of output files: data files containing different measures taken during the simulation that can be plotted in x-y graphs, and a trace file that can be employed to visualize the behavior or the different elements defined in the scenario using nam (Network Animator) [10], a companion tool of the simulator. An

interesting example of the use of ns-2 in real educational settings can be found in [12]. Unfortunately, the actual use of ns-2 within educational contexts is hindered by the following two problems. First, the computational and storage resources available in many educational institutions are typically not enough to perform a large number of simulations that must be finished in a reasonable period of time or that may generate a huge amount of output data. This precludes the realization of many learning scenarios that may have great interest from a pedagogical point of view in which a large number of simultaneous simulations should be run. Second, the use of ns-2 in collaborative learning scenarios is hampered by its lack of collaborative features. This reduces the opportunities for students to profit from the well-known benefits of collaborative learning [4] such as fostering positive interdependence and individual accountability as a means to enhance the effectiveness of learning. Within this context, this paper introduces the design of a new Collaborative Network Simulation Environment (CNSE) based on ns-2. This environment leverages the advantages of grid service technology [5] in order to enable the use of the computational and storage resources required to carry out multiple simulations in a reasonable period of time. Besides, it provides a number of important collaborative features so that it can be employed to support a wide range of collaborative learning scenarios. The remaining of this paper is structured as follows. Section 2 introduces a sample scenario that cannot be supported with ns-2 and discusses the requirements that should be taken into account in the design of an environment conceived to support similar scenarios. Next, section 3 describes the proposed CNSE. Related work is then discussed in section 4. Finally, the main conclusions and future work can be found in section 5.

2. Application requirements There are many collaborative learning scenarios involving a large number of simulations that could be realized in a course in Computer Networks in order to foster the acquisition of knowledge and skills related to this discipline. This section introduces a sample scenario that was conceived by the educator in charge of the Network Management course delivered at the School of Telecommunications Engineering of the University of Valladolid, Spain. Then, the requirements that must be met to support scenarios such as the one presented are discussed.

2.1. A sample collaborative learning scenario The proposed scenario aims at helping students to understand the causes of congestion in computer networks. With this goal, students have to analyze the effect that different network parameters may have on the traffic that can be observed in a network scenario provided by the educator. This network scenario, which is depicted in figure 1, includes 2 traffic sources, 2 traffic sinks, 2 routers and 5 links. source 1

link 1

router 1

source 2

link 2

link 4 link 3

sink 1

router 2

link 5

sink 2

Fig 1. Network scenario provided by educator. The realization of the scenario requires students to be organized in groups of 7. The scenario includes the sequence of synchronous activities that are briefly described next. In the first activity, each of the group members is responsible for studying the effect of a different parameter on congestion. Such parameters are the bit rate of one of the 5 links or the size of the queues in one of the 2 routers. In order to understand the effect that a parameter has on network traffic, the students have to run simulations and study their results. In the next activity, the members of different groups that studied the same parameter discuss its effect on network congestion. Should they consider it necessary, students can run new simulations. In the third activity, the members of the same group that studied the same type of parameters (i.e. bit rates or queue sizes) should collaborate to study their joint effect on network traffic. This implies new simulations

whose results should be discussed. Then, in the fourth activity, the members of different groups that studied the same type of parameters discuss the conclusions that they obtained previously. Again, new simulations can be carried out if necessary. Next, in the fifth activity, all the members of each group collaborate to study the joint effect of all parameters on congestion. New simulations should thus be performed in this activity. Finally, all the members of different groups discuss their conclusions. The realization of this scenario has a number of pedagogical benefits for students. In this sense, it aims at making students put into practice the inquiry learning method by investigating the influence of different parameters in network congestion. This method helps learners to better structure knowledge [9] so that it can be easily applied in new situations. Besides, the design of the scenario reifies the jigsaw collaboration pattern [8]. This pattern promotes the feeling that group members need each other to succeed (positive interdependence), fosters discussions to construct students’ knowledge and ensures that students contribute their fair share (individual accountability).

2.2. Requirements concerning resource access The realization of many learning scenarios with pedagogical interest for Computer Networks education implies that students will generate a large number of simulations. This is the case of the scenario described before. For example, in its fifth activity, it would be reasonable that students decide to launch the 128 simulations required to make a study of the joint effect of parameters following a 27 factorial design [7]. Running such a large number of simulations requires access to computational resources that are not locally available in many educational institutions. For instance, the School of Telecommunications Engineering of the University of Valladolid has 25 Pentium-IV class machines with ns-2 installed. Running 128 simulations of the network scenario provided by the educator may take more than 108 minutes of CPU time. If each of the members of a group takes charge of running one seventh of the simulations in one of the available machines, they would have to wait more than 15 minutes to have the results of the simulations and go on with their discussions about the influence of the different parameters in congestion. This makes unfeasible the synchronous realization of the learning scenario. Access to storage resources that are not available in many educational institutions is also required to store the output data generated by the simulations carried

out in this scenario. For example, running the aforementioned 128 simulations may generate more than 1300 MB; i.e. an average of 185 MB per student. This amount exceeds the 100 MB per user available in the machines of the School or Telecommunications Engineering due to the fact that such machines are shared by a large number of students. The lack of enough storage resources thus also makes unfeasible the realization of the learning scenario.

2.3. Requirements concerning collaboration The technology employed to support many learning scenarios such as the one introduced before should provide a number of features that are not currently offered by ns-2 in order to enable collaboration. Those features are described next: • Shared repository. Each group of users should have a repository to share the scripts describing the network scenarios to be simulated as well as the output files generated by their simulations. This repository should be integrated with the simulator so that the output files generated by simulations are automatically stored without human intervention. The shared repository is a very important feature to enable the exchange of simulation scripts and the access of users to the results of simulations generated by their partners. • Collaborative visualization. The members of each group should be able to see at the same time the graphs and animations that can be generated with the output data. Any group member should be able to use a shared pointer to draw the attention of their partners to any point of their view of the collaborative visualization. Collaborative visualization is essential to facilitate the discussions of students about the results of simulations. • Group awareness. Basic awareness mechanisms should be provided in order to let users know which of their group partners are online as well as about their main actions (e.g. who has uploaded a given script in the repository, who has launched a collaborative visualization). Group awareness is a key issue in collaborative learning for students to learn and work together effectively [6]. • Group management. Facilities should be provided in order to define the groups of users that will collaborate in the learning scenario. Group management is also an important feature in order to ease the organization of the participants of a collaborative learning scenario.



Communication. Communication facilities are indispensable in order to support discussions in the case of remote collaboration.

2.4. Other requirements The possibility of making an statistical analysis of the results of simulations is another feature that can be very helpful in many learning scenarios. This is also the case of the scenario described before. In its fifth activity, it would be possible to compute the percentage of variation in each of the observed variables that can be attributed to each parameter or interaction of parameters. This information would be very useful for students to identify the simulations whose results deserve their attention.

3. CNSE CNSE has been designed according to the requirements stated in the previous section. This section first introduces the rationale behind the election of grid service technology to build it. Then, the design of CNSE is presented before introducing the prototype that is currently being developed.

3.1. Grid services for resource sharing A computational grid is an infrastructure that enables multiple administrative organizations to share heterogeneous software and hardware resources [1]. Such resources are exposed as services according to the Open Grid Services Architecture (OGSA) conceptual framework [5] in service-oriented grids. Consequently, the applications executed within the context of a service-oriented grid can transparently access the resources offered by any organization in the grid. The use of a service-oriented grid can thus be very useful within the context of educational institutions willing to share their resources in exchange for the right to access to the resources shared by others in case they need it. These can be not only computational or storage resources, but also any kind of application (e.g. a simulator, a collaborative map tool) or even hardware devices (e.g. a telescope, a laboratory of electronics). In this way, an educational institution participating in such a grid could use the simulations services shared by other institutions when the computational resources locally available are not enough to carry out the simulations. If needed, an educational institution could also use the storage resources shared as services by other institutions.

3.2. Design The design of any service-oriented application implies splitting up its functionality in a set of different services. This operation is typically performed trying to maximize the possibility of reusing the services to build other (different) applications while keeping their usual coarse granularity. Each of the identified services can be offered by one or more organizations participating in the grid which run them using their own local resources. The services that were defined in the case of CNSE can be seen in figure 2 and are described next. Participation Client

Management Client

Service-oriented grid Index Service Credential Rep. Service

Awareness Service Simulation Service

Group Context Service

Shared Rep. Service

Visualization Service Analysis Service

Fig 2. Services and clients of CNSE. The script files and the output files employed by CNSE users are stored for later retrieval in the shared repository service. It is noteworthy that the application can access to the instances of this service offered by any organization in the grid. In this way, the amount of data that can be stored by the application is not limited by the storage resources owned by the organization running the environment since the resources of other organizations can also be employed. The simulation service is in charge of carrying out the simulations of the networking scenarios described in the script files provided by users. The environment can also employ the instances of this service no matter what is the organization that provides them in the grid. This opens up the possibility of carrying out a large number of simulations in a reasonable period of time by using multiple instances of the service provided by other organizations. The statistical analysis of the data generated by simulations can be carried out by the analysis service. Again, the fact that CNSE can access to the instances of this service shared by any organization in the grid assures that the possibilities of performing analysis is not limited by local computational resources. The index service is a registry typically employed in service-oriented grids to enable the discovery of the

services shared by the organizations participating in a grid. In the case of CNSE, the index service is used to find a shared repository, a simulation service or an analysis service whenever they are needed. When registering these services, the organizations provide not only their location, but also information that is employed by the environment to choose the service that best suits its needs. The x-y graphs of the measures taken during simulations and the animations of the simulated network scenarios are generated by the visualization service. This service also implements the logic that allows sharing the view of a given graph or animation among the members of a group and that enables them to interact with it. The awareness service keeps the list of users that are online using the application. Besides, it is responsible for notifying the changes that may happen on the list of online users as well as the main actions made by them. The use of collaborative services in CNSE such as the shared repository or the visualization service implies that a reference to the shared context of each group in each service must be available for the application. In this way, the application can put users in contact with their group mates. Those references, as well as the identifiers of the users that belong to each group, are stored in the group context service. Finally, it must be taken into account that the access to services provided in a grid is typically done in a secure way. This is why CNSE, as many other gridenabled applications, uses a credential repository service to store and retrieve valid user credentials that enable secure access to grid services. The services that make up a grid-aware application must be coordinated so that they are accessed according to the functionality that the user demands from the application in every moment. This coordination can be made by light clients employed by users to interact with the application. In the case of CNSE, two such clients were defined: the participation client was conceived to allow learners collaborate using the simulator, while the management client allows educators to define the groups of students that will use the application. These clients are also graphically represented in figure 2. In this way, CNSE provides all the features identified in the previous section except for the communications facilities. This decision has been made because communication needs may significantly vary from one collaborative scenario to other (e.g. synchronous or asynchronous, structured or unstructured). A convenient communication tool should thus be chosen to be used along with CNSE to

fully support the realization of collaborative learning scenarios such as the one described in this paper.

includes completing the development of CNSE and evaluating its use in experiences with real students.

3.3. Prototype

Acknowledgements

CNSE is currently being developed following widely-accepted specifications typically employed for the implementation of grid service-oriented applications. Interestingly, ns-2 and nam are being extended to develop the simulation service and the visualization service, respectively. Figure 3 shows a snapshot of the participation client developed for CNSE prototype.

This work has been partially funded by projects ISTFP6-507838, IST-FP6-034567, TSI2005-08225-C0704, and VA009A05.

Fig 3. Snapshot of CNSE participation client.

4. Related work GIPSE [13] is a generic framework for parameterdriven simulations in grid environments. Although this framework could be applied in the specific case of ns-2 simulations, it does not provide the collaborative features supported by CNSE. Another interesting work is [14], which also proposes the use of grid technology to enable the access to additional storage resources within the context of educational institutions. However, it focuses on the design of a virtual storage system that could be used in e-learning environments. Finally, Gridcole [2] is a tailorable system that enables easy integration of grid service-based tools in order to support scripted collaborative learning. CNSE could be integrated in Gridcole to support scripted collaborative learning scenarios in a course on Computer Networks.

5. Conclusions and future work This paper presented the design of a new simulation environment for Computer Networks education. CNSE overcomes the limitations of ns-2 concerning the access to remote computational and storage resources to run multiple simulations and the features required to support collaborative learning scenarios. Future work

References [1] Bote-Lorenzo, M. L., Dimitriadis, Y. A., and GómezSánchez, E., "Grid characteristics and uses: a grid definition", Postproc. of the European Across Grids Conf. (AxGrids03), Santiago, Spain, Feb. 2004, pp. 291-298. [2] Bote-Lorenzo, M. L., Vaquero-González, L. M., VegaGorgojo, G., et al., "A tailorable collaborative learning system that combines OGSA grid services and IMS-LD scripting", Procs. of the Int. Wshp. on Groupware (CRIWG 2004), San Carlos, Costa Rica, Sept. 2004, pp. 305-321. [3] Breslau, L., Estrin, D., Fall, K., et al., "Advances in network simulation", Computer, vol. 33, no. 5, May 2000, pp. 59-67. [4] Dillenbourg, P. Collaborative Learning: cognitive and computational approaches, Oxford, UK: Elsevier, 1999. [5] Foster, I., Kesselman, C., and Tuecke, S. The Open Grid Services Architecture. In: The Grid 2: blueprint for a future computing infrastructure, eds. Foster, I. and Kesselman, C. San Francisco, CA, USA: MK Pub., 2004, pp. 215-258. [6] Gutwin, C., Stark, G., and Greenberg, S., "Support for workspace awareness in educational groupware", Procs. of the Conf. on Computer Supported Collaborative Learning (CSCL’95), Bloomington, IN, USA, Oct. 1995, pp. 147-156. [7] Jain, R. The art of computer systems performance and analysis, New York, NY, USA: John Wiley & Sons, 1991. [8] Johnson, D. W. and Johnson, R. T. Learning together and alone: cooperative, competitive and individualistic learning, 5th ed., Needham Heights, MA, USA: Allyn and Bacon, 1999. [9] Jong, T., "Technological advances in inquiry learning", Science, vol. 312, no. 5773, pp. 532-533. [10] nam version 1.11, http://www.isi.edu/nsnam/nam/, last visited: Jan. 2007. [11] ns-2 version 2.30, http://www.isi.edu/nsnam/ns/, last visited: Jan. 2007. [12] Papadopoulos, C. and Heidemann, J., "Using ns in the classroom and lab", Proceedings of the ACM SIGCOMM Workshop on Computer Networking, Pittsburgh, PA, USA, Aug. 2002, pp. 45-46. [13] Wozniak, J. M., Striegel, A., Salyers, D., et al., "GIPSE: streamlining the management of simulation on the grid", Procs. of the 38th Annual Simulation Symposium (ANSS'05), San Diego, CA, USA, Apr. 2005, pp. 130-137. [14] Yang C.T., Ho, H. C., and Pan, C. T., "Using grid computing and PVFS2 technologies for construction of an elearning environment", Procs. of the 5th Int. Conf. on Advanced Learning Technologies (ICALT'05), Kaohsiung, Taiwan, July 2005, pp. 898-902.

Suggest Documents