1 / 20

Building Distributed Educational Applications using P2P

Building Distributed Educational Applications using P2P. Tomasz Müldner* and Gregory Leighton Jodrey School of Computer Science, Acadia University, Wolfville, NS, Canada * presenting. Contents. Distributed computing Peer-to-Peer (P2P) JXTA P2P framework APEX. Distributed Applications.

quade
Download Presentation

Building Distributed Educational Applications using P2P

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. Building Distributed Educational Applications using P2P Tomasz Müldner* and Gregory Leighton Jodrey School of Computer Science, Acadia University, Wolfville, NS, Canada * presenting Edmedia, June 23, 2004

  2. Contents • Distributed computing • Peer-to-Peer (P2P) • JXTA P2P framework • APEX Edmedia, June 23, 2004

  3. Distributed Applications A distributed system: data and functionality are distributed across multiple machines connected by a network Edmedia, June 23, 2004

  4. Examples of Distributed Educational Applications • groupware or computer-supported cooperative work (CSCW) • electronic classrooms • shared workspaces • others Edmedia, June 23, 2004

  5. Distributed Applications: Limitations Problems: • firewalls • dynamic IP addresses • network address translation (NAT) Edmedia, June 23, 2004

  6. Goals and Requirements for Distributed Educational Systems Platform Independence:users of heterogeneous systems must be able to access the application: • Corba • Web Services and the underlying XML technology • Java technology Security:an authentication and a permission system with access control rules: • authentication e.g. using digital signatures • encryption e.g. using private or public key systems • auditing Edmedia, June 23, 2004

  7. Goals and Requirements (2) Customizability: an application can be customized Extensibility: new tools can be added without affecting the operation of existing tools. Edmedia, June 23, 2004

  8. Goals and Requirements (3) Connectivity: • work on course documents while disconnected; • synchronized upon the next reconnection Identification: • Availability of the identities of users who are currently available (independent of her current location) Edmedia, June 23, 2004

  9. Goals and Requirements (4) Categorization: two kinds of user’s roles: - a single user - a group Collaboration: • threaded discussions, messaging, • collaborative viewing and editing of shared documents Edmedia, June 23, 2004

  10. Goals and Requirements (5) Discovery: users can discover and join course groups: • course group contains a set of services specified by the instructor • services are dynamically discovered when a user joins a course group Scalability: the addition of new entities or services to the network does not significantly hinder application performance Edmedia, June 23, 2004

  11. Goals and Requirements (6) Reliability: the availability of the application must not depend on the availability of any single application instance; Accessibility: application entities must be able to communicate with one another Edmedia, June 23, 2004

  12. P2P • Each peer typically acts in both the client and server roles • A peer may initiate requests on services hosted by other peers • A peer can service incoming requests on locally-hosted services Edmedia, June 23, 2004

  13. Introduction to JXTA • A set of protocols to establish an overlay network on top of existing network protocols such as TCP/IP and HTTP. • The overlay network transparently connects systems in a reliable and persistent manner • The atomic entity in the JXTA network is the peer: a software program that uses the JXTA protocols to interact with other peers. Edmedia, June 23, 2004

  14. APEX An extendable architecture:various components can be added to provide the required functionality; e.g.: • an instant messaging component • other components may be added as required, (e.g. components that support cooperation and collaboration) Edmedia, June 23, 2004

  15. Authentication • APEX performs authentication of each peer as it joins the network via a lookup on the institution’s registration records • Each course section is modelled as a separate JXTA peer group Edmedia, June 23, 2004

  16. User Roles • Student peers • Teaching assistants • Instructors • Administrators Edmedia, June 23, 2004

  17. Architecture and Functionality Edmedia, June 23, 2004

  18. Example of an Instant Messaging Component IM Each member of the course peer group runs an instance of IM: • maintaining a collection of ongoing conversation sessions involving the local user, • associating incoming chat messages with the appropriate conversation session • forwarding outgoing chat messages to the appropriate conversation partner • displaying an ongoing history of each ongoing conversation session to the end user. Edmedia, June 23, 2004

  19. Conclusions • We have designed and partially implemented APEX, an educational application, based on JXTA. • All implementation requirements have been satisfied. • APEX forms a base Edmedia, June 23, 2004

  20. Future Extensions Future extensions to APEX : • electronic submission and grading of course assignments • The addition of a component for audio/video conferencing • A dynamic course syllabus could be provided to specify assignment due dates and scheduling of midterms and final exams. Edmedia, June 23, 2004

More Related