Taking into account the above presentation and trying to balance the need ..... QuickTime Streaming Server: http://developer.apple.com/darwin/projects/ ...
An E-Tutoring Service Architecture Based on Overlay Networks N. Minogiannis, Dr. Ch. Patrikakis, A. Rompotis, and F. Ninos Telecommunications Laboratory National Technical University of Athens, Heroon Politechniou 9, Zographou Campus, Greece 15773, tel: +30 210 7721513, fax: +30 210 7722534 {minogian,bpatr,arobot,ninosf}@telecom.ntua.gr Abstract. In this paper, a comprehensive e-tutoring service framework is presented. It compromises a set of individual applications implemented based on the use of existing open source tools. The significant point here is the flexibility of the implementation proposed, that allows it to use a combination of unicast and multicast without posing any requirements for the supporting network infrastructure. This is achieved through the use of an overlay network architecture that allows for dynamic configuration of the media transmission and relay points.
1
Introduction
Recently, there is a remarkable increase in research around online tutoring and learning and their respective use in educational technology. There are many academic journals in research community study this area, while IEEE has appointed a relative committee, Computer Society Learning Technology Task Force (LTTF) to work on the topic. There is a focus on collaborative discourse [1], [2] and the individual development of meaning through construction and sharing of texts, image, video streaming and other social artifacts. From these perspectives, learners are apprenticed into ”communities of practice” which embody certain interests and educational behaviors. An e-tutoring service imposes a great burden to the underlying network in terms of bandwidth resources and packet traffic administration. In order to fulfill such requirements, many technologies have been utilized, such as Multi-agent systems [3], multicasting [4] and adaptive network mechanisms for controlling and adjusting the generated traffic. This paper proposes an implementation of an e-tutoring service based on standard IP and using overlay networks. The rest of the paper is organized as follows: First a definition of the service framework for an e-tutoring application is provided in which the requirements for such a service, together with a presentation of the supporting technology for implementing such a service are presented. In the next section, and after having set the framework for the e-tutoring service to be presented, the actual implementation scheme is provided in details covering both architectural issues and specific implementation details. Closing the paper, a section about future (and in fact ongoing work) for providing a more dynamic model of the presented idea is provided.
2
2
N. Minogiannis, Dr. Ch. Patrikakis, A. Rompotis, and F. Ninos
Definition of the Service Framework for E-Tutoring
The methodology for the definition of the required application components for an e-tutoring service arises by answering the following questions: what is the functionality provided by a real classroom, which applications can support it and what are the features of these applications. The criterion for the success is to efficiently provide all the necessary tools available in a real school environment. 2.1
The E-Classroom Framework
This service framework is presented in Figure 1, in which the outside circle entities represent the actual needs of a real life classroom, covering the whole process of lectures, while the inner grey circle gives the equivalent applications offered by this platform to cover these needs, respectively [6].
Fig. 1. E-classroom framework in relation to real classroom needs
Lecture in class. This is the lesson itself delivered through the presentation provided by the tutor. It is covered by a Live Video or Video on Demand application that is used to send the video of the class presentation to the students. Questions in class and group discussion. This covers the process of interaction between the teacher and the students during the presentation. To cover this need in the most efficient and cost effective way, a chat application can be used. Blackboard. This represents the means for communicating with the students through written or image projected information. In the blackboard, not only the teacher, but also the students (having the consent of the teacher) may have access. The related application is a whiteboard, access to which is administered by the teacher. Taking into account the above presentation and trying to balance the need for a comprehensive e-tutoring service with the need for supporting it through a cost effective, easy to install service platform, we will proceed in the following
An E-Tutoring Service Architecture Based on Overlay Networks
3
sections of the paper by presenting such a platform for covering the lecturing phase of the lesson. Before we proceed in the design and implementation details of the e-tutoring service, we have to stress the requirements that drove us to the selection of overlay networks as the supporting infrastructure. For this, a presentation of the requirements of an e-learning (and especially e-tutoring) service follows, together with the existing state of the art for supporting them in real implementations. 2.2
Requirements for Collaborative Applications
There is a diverse range of applications that inherently require group communication and collaboration: video conferencing, distance tutoring, distance learning, distributed databases, data replication, multi-party games and distributed simulation, network broadcast services and many others. The diversity of these applications demands versatile support from the underlying system in many dimensions. Examples of these dimensions include bandwidth, latency, reliability, multi-source, scalability and dynamics requirements. The main interest of this paper is focused on distance learning, and specifically in e-tutoring. Supporting these applications has imposed a serious challenge to the current communication systems. Due to the prevalence of underlying point-to-point connections, communication systems are quickly reaching their limit. A typical example is that requests to a popular web server usually experience long response time due to server overload since it has to establish individual connections for each incoming data request, even for requests for the same objects. The inadequacy of unicast-only systems is more significant for these forward-looking applications, especially in distributed systems where data needs to be constantly updated and synchronized. 2.3
The Native IP Multicast Deployement and Torsion to Overlay Architectures
The IP Multicast service was proposed as an extension to the Internet architecture to support efficient multi-point packet delivery at the network level. In a multicast network, the connections of the routers that form a multicast tree are maintained by a multicast routing protocol. Many protocols have been proposed and are in use today on the Internet. In spite of the rigorous efforts of a generation of researchers, there remains many unresolved issues in the IP multicast model that hinder its development and deployment of multicast applications. To overcome the fundamental problems related to IP multicasting global deployment, research effort has been turned to other solutions based on application layer data forwarding. As a consequence overlay network architectures have been proposed for supporting data distribution and in some cases used for serving streaming applications. The primary advantage of an overlay network architecture is that it does not require universal network support (which has become increasingly hard to achieve) to be useful. This enables faster deployment of desired network functions and adds flexibility to the service infrastructure, as
4
N. Minogiannis, Dr. Ch. Patrikakis, A. Rompotis, and F. Ninos
it allows the co-existence of multiple overlay networks each supporting a different set of service functions. An Overlay Multicast Network is one type of overlay network that provides multicast services to end users on top of the general Internet unicast infrastructure [7]. For this, the present model focuses on the deployment of an overlay network incorporating and exploiting the application-layer multicasting capabilities.
3
Presentation of the Implementation
In the following paragraphs, an implementation of an e-tutoring service based on the above ideas will be presented with specific implementation details on the modules developed and the open source tools used. 3.1
Description of the Architecture
The proposed platform provides a solution for media distribution through peripheral reflector points. The whole architecture incorporates multicasting techniques deployed at a local level while the further communication with users dont reside at the same network neighbourhood can be accomplished through unicast streams. The group of students participate in the e-tutoring framework accessing the lecture information through different serving points. A dedicated Video Server -VS is used in order to transmit and manage the streams produced by the camera located near the teachers site. These streams before entering the VS should be encoded in appropriate formats. In our architecture the MPEG-4 encoding technique is selected. The main components of the distribution chain are the Video Streaming Server used for sending the video and the Video Relay Nodes VRNs (both based on a QTSS implementation), used for retransmitting the video to neighbouring nodes in the overlay architecture. The VRN is also responsible for transforming a unicast stream coming from the VS to multicast for supporting the clients within its vicinity (e.g. a LAN). Another significant part of the architecture is the Web Server. Web Server is used as staring point to which students are addressing their requests for participating in an e-tutoring session. The Web-Server (Content Management Element) is the key component for the provisioning of a user-friendly interface for Chat and Whiteboard applications and also for the redirection of user requests for Streaming Video access to the VS or the closest VRN. The students terminals, make use of the Chat and Whiteboard applications through separate software modules. Live Video Application/Streaming Service. In Live Video Application, digitally compressed video and audio streams are sent to the end-user upon demand and can be retrieved on an individual basis. The Live Video System supports the MPEG family of protocols, namely MPEG-2 and MPEG-4. For the implementation, MPEG4 standard was adopted due to its inherent ability to support video transmission even to very low rates. Figure 2 depicts the stages
An E-Tutoring Service Architecture Based on Overlay Networks
5
that the overlay architecture encompasses in order to provide real-time services (live video) as well as e-tutoring applications.
Fig. 2. Stages followed in live video distribution procedure
The top row represents the content production procedure, while the bottom row provides the description of the distribution mechanism in terms of network elements. Apart from the camera located at the teachers site, the main components of the content production stage are the VS and the encoder. Content Preparation: The MPEG4IP encoder [10] used for this purpose, provides a tool that incorporates the necessary functionality for MPEG-4 real-time encoding. The package includes many existing open source packages and the ”glue” to integrate them together. This is a tool for streaming video and audio that is standards-oriented and free from proprietary protocols and extensions. Input to the MPEG4IP was provided through a camera connected to a PC running LINUX. Content Management: The Web Server initiates the communication between the teacher and the students group. Once the e-tutoring session starts, the students follow a URL in order to open the corresponding Web page hosted by the Server (in our case an Apache web server). Through the HTTP protocol, the students have intermediate access to the video content. The Web Server is responsible for the users redirection to a Video Streaming Server (this being the VS itself or a VRN according the process described later in the paper) which is streaming the teachers lecture video to the students. Content Distribution: The QTSS server [9] is the key component in the distribution chain. It is responsible for the manipulation and transmission of the video content to the rest network infrastructure, with ulterior scope the video delivery to students group. The distribution of the video content may be accomplished through two different methods: Unicast transmission used in cases where the student does not reside in the same cluster as the origin VS is located and Unicast/Multicast transmission in cases the overlay procedure is activated. In this approach QTSSs are placed at the edges of the network or other cooperating
6
N. Minogiannis, Dr. Ch. Patrikakis, A. Rompotis, and F. Ninos
networks exploiting application data forwarding capabilities. This architecture appeals to peer-to-peer collaboration activities. Content Relaying: A QTSS is also used for this purpose. Each client instead of using a direct connection to the VS, as it would in normal data distribution; it receives the distributed data through the use of the nearest relay server. This is supported by the overlay network management mechanism. In this way, we avoid multiple unicast connections to the VS, and instead, we serve these requests through peripheral reflectors. Redirection of the clients requests to the peripheral reflectors is provided through the Web Server, which is kept aware of the overlay architecture, through reports from the overlay network management mechanism. Content Reproduction: At the clients, a video player that is capable of supporting MPEG4 playback is used for content reproduction. In our implementation the QuickTime player was used. Overlay Network Implementation and Management. Proceeding to our analysis, we will introduce the basic notions of the applied overlay structure implemented for supporting the e-tutoring service. As it is depicted in Figure 3, the overlay architecture is based on four modules: the Overlay Architecture Server (OAS), the Overlay Architecture Relay (OAR), the Overlay Architecture Client (OAC) and the Overlay Architecture Manager (OAM). These three modules are responsible for the manipulation of the video access requests of the clients, the connection of each client to the most suitable point (this being either a VRN or a VS) for video access.
Fig. 3. Overlay network architecture
The way this architecture works is the following: Prior to the connection of a students terminal to the VS serving the live transmission of the e-lecture stream, the student connects to the web server in order to request access to the e-tutoring service. Once access is granted, the OAC (located at the students
An E-Tutoring Service Architecture Based on Overlay Networks
7
terminal) is activated and by communicating with the OAM (located on the Web server), it receives the address of the OAS, (located on the same node as the VS), and of all the available OARs for the specific e-lecture class (located at the VRNs). Following, the OAC initiates an inquiry mechanism for determining the closest node for video transmission (or video relaying). This mechanism is based on the sending ping like messages to all the nodes reported by the OAM as possible video serving nodes. Upon receipt of all the answers to this ping, the OCM selects the closest one and reports this selection to the OAM. This in turn, provides the address of the selected video serving node to the web server, which presents it to the student. Now the student can be directed to this node for accessing the video of the lecture. The OAM keeps a list of all connections to a VS or VRN during an e-lecture session for monitoring and administrative purposes (i.e indication of a problematic relay node as we will present later). The above procedure covers the discovery of the closest video serving point. But what happens when we need to deploy multicasting for a number of clients in the same LAN, and how is the students player notified about this possibility of receiving video over multicast? The answer is the ping like message used for closest server discovery. This message, instead of transporting only information about the distance between a server/relay node and the requesting client, it also transfers information about the availability of multicast transmission, the local domain of the video serving node and the clients it can serve. The last is needed in cases where a relay node is serving clients through unicast, where a limited number of clients is supported in order to avoid degradation in the QoS of relayed video due to insufficient processing power. Based on this information, the client may perform a comprehensive selection over the available solutions, and report this selection to the web server through OAC to OAM communication. The overlay modules are independent from these responsible for video distribution. In this way, they introduce a dynamic video distribution configuration through the use of an administrating web server acting as the intermediate link. Completing the Service Framework with Chat and Whiteboard Applications. As it has been presented earlier, to support the e-tutoring process the service framework needs to be completed by some additional applications that assist the tutor students communication. These are the chat and whiteboard applications that may operate individual and autonomously in relation to the live video application. Chat Application. The most significant part is the creation of a multi-channel environment, where students participating in a working group could be able to talk with each other in virtual rooms managed by their teacher. The teachers role in this case is to create and manage the channels according to the existing working groups. In order to achieve this, the e-lecturing chat application consists of three IRC sub-components: a typical IRC server application and two versions of the chat client, each providing student and teacher functionality respectively. Whiteboard Application. The Whiteboard application allows the user (a teacher or student) to draw an arbitrary number of elements on a single surface
8
N. Minogiannis, Dr. Ch. Patrikakis, A. Rompotis, and F. Ninos
and share that surface with other participants of an e-learning session. The application also allows a surface to be persisted between sessions by use of the Save command. All these commands are easily accessible through a typical Windows GUI. At last, a custom protocol was designed to guarantee that all participants share the same Whiteboard surface.
4
Future Work
The implementation presented here, though it makes use of an overlay architecture for providing dynamic configuration of the e-tutoring service in terms of media distribution, is still depending on some decisions taken from the student regarding the connection to the video serving node. This is due to the fact that the web server is treated as the link point between the open source components used for serving video transport and the developed modules for overlay network architecture management. An alternative implementation in which these modules are integrated within a compact application deployed at the relay points and the users terminals would offer the ability for providing a dynamically selfconfigured e-tutoring service, transparently to the user.
References 1. D. Keegan: Theoretical Principles of Distance Education. Routledge (1993) 2. C. J. Bonk, K. S. King (eds.): Electronic collaborators: Learner-centered technologies for literacy, apprenticeship, and discourse. Erlbaum (1998) 3. A. Garro: An XML Multi-Agent System for e-Learning and Skill Management. Third International Symposium on Multi-Agent Systems, Large Complex Systems, and E-Businesses (MALCEB’2002), Erfurt, Thuringia Germany, (2002) 4. Sirgio Deusdado, Paulo Carvalho: An Adaptive e-learning System based on IP Multicast Technology. International Conference on Information and Communication Technologies in Education (ICTE2002), Badajoz, Espanha, Nov 20-23 (2002) 5. Ch. Patrikakis, K. Karapetsas, N. Minogiannis, S. Vrontis, N. Igoumenidis, G. Diakonikolaou: A QoS aware e-learning service framework: The MOICANE case. International Conference on Cross-Media Service Delivery, Santorini, May (2003) 6. Y. S. Shi: Design of Overlay Networks for Internet Multicast. Washington University Severe Institute of Technology, Dept of Computer Science, Phd Thesis, August 2002 7. QuickTime Streaming Server: http://developer.apple.com/darwin/projects/streaming 8. MPEG4IP Project: http://www.mpeg4ip.net