Zadanie 3.4 Sieci edukacyjne i społecznościowe - Aplikacje Krzysztof Juszczyszyn, Politechnika Wrocławska Warszawa 27-28.05.2013
Zadanie 3.4 Aplikacja: System zarządzania usługami e-learning z usługami wideokonferencji HD i testowania wiedzy
Architektura systemu System zarządzania funkcjonalnością E-Learning przeznaczony do zadań testowania wiedzy i umiejętności (Computer Aided Assessment). System składa się z komunikujących się autonomicznych modułów, luźno powiązana architektura rozproszona, moduły są zdolne realizować swoją podstawową funkcję nawet w przypadku braku łączności sieciowej. Moduły zgrupowane w 2 częściach systemu: Część serwerowa – rozproszona baza danych, zarządzanie, sterowanie modułami klienckimi, Cześć kliencka – moduły realizujące faktyczną (dydaktyczną) funkcjonalność systemu, możliwe do integracji z częścią serwerową. Komunikacja między elementami systemu możliwa w każdych warunkach: Internet, LAN, IPv6 QoS – z użyciem dedykowanych metod komunikacji, wykorzystujących zalety danego środowiska. Offline – z użyciem zabezpieczonych paczek danych.
Architektura systemu – struktura modułowa Funkcjonalność systemu dostarczana jest przez zbiór samowystarczalnych modułów – mogą one funkcjonować niezależnie, współpracować z innymi aplikacjami/systemami lub tworzyć zintegrowany, zarządzany system. Moduły serwerowe – odpowiadają za stworzenie zintegrowanego, zarządzanego systemu rozproszonego, przechowywanie oraz zarządzanie danymi realizują wybrane usługi Moduły klienckie – realizują podstawową funkcjonalność dydaktyczną systemu. Ścisła modułowość pozwala na wybiórcze wdrażanie wybranych modułów.
Architektura systemu – komunikacja w każdych warunkach Zalety architektury: Odporność na awarie, Ściśle określony, standaryzowany format danych pozwala na łatwą integrację w zewnętrznymi systemami, Opisana architektura pozwala na stopniowe/częściowe wdrożenie systemu w integracji z innymi rozwiązaniami i zachowaniu spójności jego funkcjonowania, Wsparcie dla najszerszego (pod względem rodzaju dostępu do sieci) możliwego zbioru klientów, Full client – daleko idąca kontrola nad środowiskiem użytkownika, Dostosowanie do środowiska wirtualnego. W powiązaniu z modułem komunikacyjnym – stworzenie rozproszonego systemu eLearning pozostającego zarządzalną całością w możliwie najszerszym spektrum warunków łączności sieciowej, włącznie ze scenariuszem offline (brakiem bezpośredniej łączności).
Komunikacja międzymodułowa Realizuje zadania komunikacyjne na potrzeby systemów e-learning. Pracuje w jednym z 5 scenariuszy komunikacyjnych: LAN, Internet, Periodic, Offline i Local. Składniki: warstwa koordynacji, moduły obsługi technologii sieciowych, moduły aplikacyjne. Mechanizmy bezpieczeństwa: Uwierzytelnianie i autoryzacja, transmisja danych, przechowywanie danych.
Architektura systemu – cześć serwerowa Rozproszona baza danych podzielona na partycje: konfiguracyjną – replikacja, materiałów dydaktycznych – indeksowanie/dostęp. Serwery typu „mirror” – hot-standby. Struktura logiczna systemu (łącza logiczne między węzłami) konfigurowana przez administratora – możliwość wykorzystania połączeń planowanych.
Funkcjonalność dydaktyczna Dostęp użytkownika. Test wyboru. Ocena w czasie rzeczywistym. Symulacja. Moduły zarządzania i część serwerowa. Wideokonferencja HD.
Elementy systemu wideokonferencji HD Infrastruktura SIP (serwery proxy, serwery rejestracji) Klient usługi wideokonferencji Kodowanie oraz dekodowanie obrazów HD (kodek H264) Kodowanie oraz dekodowanie dźwięku wysokiej jakości (kodek Speex) Możliwość podłączenia profesjonalnych kamer HD (obsługa karty z interfejsem HD-SDI oraz HDMI) Możliwość uruchomienia na komputerze klasy PC Oprogramowanie Open-Source Reflektor pakietów (MCU) umożliwiający komunikację wielu uczestnikom jednocześnie Brak re-kodowania sygnału – potrzeba większego pasma, ale mniejszej mocy obliczeniowej
Rozszerzenia systemu wideokonferencji HD Szyna danych ESB umożliwiająca integrację dodatkowych usług Usługa zarządcy połączeń planowanych Usługa zarządcy wydarzeń Integracja z systemem zarządzania usługami e-learning Integracja z modułem RACF Internetu Równoległego IPv6 QoS
Funkcjonalność systemu wideokonferencji HD Scenariusz zdalnego wykładu Planowanie wykładu, rezerwacja połączeń w sieci IPv6 QoS Łatwe nawiązywanie połączenia Transmisja z gwarancją jakości połączenia Możliwość konferencji wielopunktowej (np. wiele grup studentów biorących udział w wykładzie)
Zrealizowane zadania Rozszerzenie systemu wideokonferencji: Obsługa IPv6 Stworzenie usług zarządcy wydarzeń oraz usługi zarządcy połączeń Integracja z IR IPv6 QoS Implementacja sygnalizacji wewnątrz systemu Integracja z RACF – sygnalizacja do sieci Ustawianie pól DSCP wysyłanych pakietów Integracja z systemem zarządzania e-learning Stworzenie interfejsu komunikacji
Zrealizowane zadania Testy funkcjonalne i jednostkowe: Testy jednostkowe poszczególnych usług i komponentów Scenariusz planowanego wykładu Testy integracji z IR IPv6 QoS Testy sygnalizacji (planowanie, modyfikacja, kończenie rezerwacji) Testy komunikacji (połączenie z gwarancją QoS) Testy integracji z systemem zarządzania e-learning Komunikacja w zakresie planowania wydarzeń edukacyjnych
Zadanie 3.4 Aplikacja: Wirtualne laboratorium obliczeniowe Online Lab
Online Lab - o aplikacji Prototyp aplikacji Online Lab jest rozproszonym, wirtualnym laboratorium obliczeniowym pozwalającym na: definiowanie przez użytkowników zadań obliczeniowych zdalne wykonywanie zadań obliczeniowych współdzielenie przez użytkowników wyników wykonania zadań, kodu i danych rekomendację użytkownikom zadań, kodu oraz wyników wykonania zadań obliczeniowych
Online Lab -architektura systemu
Online Lab - moduły aplikacji
Online Lab - implementacja prototypu Moduły systemu OnlineLab Bazy danych: użytkowników i usług obliczeniowych Prototypowa wersja modułu LoadBalancer Integracja usług obliczeniowych z interfejsem wirtualnego pulpitu Doskonalenie modułu wirtualny pulpit Integracja z IPv6 QoS Przesyłanie komunikatów sygnalizacyjnych wewnątrz systemu Zaimplementowanie usługi komunikacji z IPv6 QoS Integracja z RACF sieci IPv6 QoS (z wykorzystaniem UPK) 18
Online Lab -funkcjonalność aplikacji Funkcjonalność Online Lab udostępniana jest przez graficzny interfejs WWW – rozwiązanie dedykowane jest do zastosowań edukacyjnych Online Lab korzysta z usług IPv6 QoS oraz Uniwersalnej Platformy Komunikacyjnej w celu dystrybucji zadań obliczeniowych oraz zapewnienia jakości usług
Online Lab -funkcjonalność aplikacji Osiągnięta funkcjonalność prototypu: Kontrola dostępu i zarządzanie kontami użytkowników (moduł OL-Core) Dostęp i zarządzanie aplikacją poprzez webowy interfejs użytkownika z możliwością personalizacji (moduł OL-UI) Definiowanie i wykonywanie zadań obliczeniowych (OL-Services) Przydział zasobów obliczeniowych do zadań (Load Balancer) Gromadzenie danych o wykorzystaniu zasobów obliczeniowych i komunikacyjnych przez usługi – tworzenie profili zadań oraz użytkowników (OL-Core) 20
Online Lab - wyniki testów Zakres i wyniki testów prototypu aplikacji: Testy całości systemu Wynikiem jest w pełni funkcjonalny prototyp, udostepniający usługi obliczeniowe dla użytkowników oraz grup użytkowników, wraz z mechanizmami kontroli dostępu i panelem administratora (konfiguracja środowiska) Testy integracyjne – IPv6 QoS Rezerwacja planowanych połączeń na potrzeby komunikacji między komponentami aplikacji Testy z użytkownikami Realizacja prostych zadań obliczeniowych Gromadzenie danych o żądaniach użytkowników oraz wykorzystaniu usług obliczeniowych
Online Lab - końcowa funkcjonalność Szacowanie zapotrzebowania na zasoby sieci IIP QoS oraz ich rezerwacja i przydział z wykorzystaniem funkcji UPK (OL-Core) Integracja z IPv6 QoS Rezerwacja planowanych połączeń na podstawie wymagań uzytkowników Obsługa repozytorium zadań obliczeniowych oraz dużych (>50MB) plików danych (OL-Core, Baza danych OL-Core) Rekomendacja usług obliczeniowych 22
Online Lab - końcowe testy Testy funkcjonalne wirtualnego laboratorium Scenariusz kursu zdalnego dla wielu użytkowników Scenariusz eksperymentu obliczeniowego Testy wydajnościowe dla zestawu złożonych zadań obliczeniowych Testy integracji z siecią IPv6 QoS Testy sygnalizacji (planowanie, modyfikacja, kończenie rezerwacji) Testy komunikacji (równoległa realizacja zadań obliczeniowych) 23