Wprowadzenie do tworzenia własnego modułu w kontrolerze Floodlight.
|
|
- Barbara Karpińska
- 6 lat temu
- Przeglądów:
Transkrypt
1 Instrukcja do laboratorium 4 Wprowadzenie do tworzenia własnego modułu w kontrolerze Floodlight. 1. Cel ćwiczenia Celem ćwiczenia jest implementacja własnego modułu sterownika Floodlight w języku Java. Moduł ten nasłuchiwał będzie pakietów OpenFlow typu Packet_IN, rozpakowywał je i wyświetlał na konsolę informacje w nich zawarte. 2. Przygotowanie środowiska 2.1 Instalacja wymaganych zależności Przed zbudowaniem i uruchomieniem środowiska należy zainstalować potrzebne repozytoria poleceniem: $ sudo apt-get update $ sudo apt-get install build-essential ant maven python-dev eclipse 2.2 Pobieranie i budowanie kontrolera Proszę pobrać kontroler (version 1.2) ze strony projektu a następnie rozpakować go, np. poleceniem: $ tar -xf floodlight* Następnie należy przejść do rozpakowanego katalogu i zbudować kontroler ze źródeł poleceniem $ ant eclipse 2.3 Import projektu do środowiska Eclipse IDE Proszę uruchomić środowisko Eclipse i utworzyć nowe Workspace. W celu importu projektu proszę wybrać kolejno: File -> Import -> General -> Existing Projects into Workspace Kliknąć na przycisk Browse obok Select root directory i odnaleźć katalog, do którego został pobrany wcześniej projekt Floodlight W oknie Projects zaznaczyć Floodlight Kliknąć przycisk Finish. Po tym procesie cały projekt powinien zostać zaimportowany. W lewej części środowiska Eclipse w oknie Package Explorer powinno pojawić się drzewo katalogów projektu Floodlight. 2.4 Budowanie i uruchamianie projektu w środowsku Eclipse Aby zbudować projekt (np. po zmianach w kodzie źródłowym) należy utworzyć cel: Wybrać Run->External Tools->External Tools Configurations Wybrać Ant->New Configuration W polu nazwy wpisać FloodlightLaunch W polu Buildfile wybrać plik build.xml W polu Base directory wybrać floodlight W zakładce Targets wybrać run Kliknąć przycisk Apply 1
2 3. Implementacja 3.1 Przygotowanie klasy nasłuchującej (Listenera) pakietów OpenFlow Przed przystąpieniem implementacji klas i metod należy utworzyć własną paczkę, w której to nowe klasy będą umieszczone. W tym celu proszę kliknąć prawym przyciskiem myszy na src/main/java i wybrać New->Package. Proszę nazwać nową paczkę pl.edu.agh.kt tak jak na rysunku 1. Rysunek 1. Dodawanie paczki Następnie klikając prawym przyciskiem myszy na paczkę pl.edu.agh.kt proszę wybrać New->Class. W polu nazwa klasy proszę wpisać SdnLabListener. W ramce interfejsów proszę wybrać przycisk Add i dodać następujące interfejsy: IOFMessageListener oraz IFloodlightModule. Okno dodawania klasy powinno wyglądać tak jak na rysunku 2. Zanim zaczną Państwo implementować kolejne metody warto dodać wymagane zależności. Oczywiście środowisko Eclipse upraszcza sposób importowania zależności (włącznie z automatyzacją tego procesu) jednak, aby uniknąć błędów proszę ręcznie w sekcji importów dodać następujące wpisy: import net.floodlightcontroller.core.ifloodlightproviderservice; import java.util.arraylist; import org.slf4j.logger; import org.slf4j.loggerfactory; Następnie w ciele klasy SdnLabListener proszę dodać kilka zmiennych, które będą wykorzystywane w tej klasie. Ponieważ nasłuchiwać będziemy wiadomości protokołu OpenFlow należy zarejestrować się w klasie FloodlightProvider (usługa IFloodlightProviderService). Potrzebujemy także dodać zmienną logger, za pomocą której logowane będą informację na wyjście (konsolę). protected IFloodlightProviderService floodlightprovider; protected static Logger logger; 2
3 Rysunek 2. Okno dodawania nowej klasy do projektu Następnie należy zaimplementować metodę pozwalającą systemowi ładowania modułów znaleźć naszą klasę. W tym celu należy dodać następującą implementację metody getmoduledependencies(). public Collection<Class<? extends IFloodlightService>> getmoduledependencies() { Collection<Class<? extends IFloodlightService>> l = new ArrayList<Class<? extends IFloodlightService>>(); l.add(ifloodlightproviderservice.class); return l; 3
4 Następnie należy zaimplementować metodę Init(), która jest wywoływana podczas startu kontrolera. Służy ona do ładowania wszystkich zależności oraz inicjacji struktur danych. public void init(floodlightmodulecontext context) throws FloodlightModuleException { floodlightprovider = context.getserviceimpl(ifloodlightproviderservice.class); logger = LoggerFactory.getLogger(SdnLabListener.class); Należy także zaimplementować metodę zwracającą nazwę naszej klasy: getname(). public String getname() { return SdnLabListener.class.getSimpleName(); 3.2 Obsługa wiadomości PacketIN protokołu OpenFlow W celu obsługi wiadomości PACKET_IN protokołu OpenFlow należy dodać naszą klasę do Listenera tych wiadomości. Dodatkowo dodajemy prostą informację do loggera, dzięki której w przyszłości będziemy widzieć, że nasz moduł wystartował. W tym celu należy w metodzie startup() dokonać następującej implementacji. public void startup(floodlightmodulecontext context) throws FloodlightModuleException { floodlightprovider.addofmessagelistener(oftype.packet_in, this); logger.info("******************* START **************************"); Następnie należy dodać obsługę otrzymanych wiadomości (metoda receive()). Prezentowany poniżej przykład po odbiorze nowego pakiety typu PACKET_IN wyświetla stosowny komunikat. Proszę zwrócić uwagę na ostatnią linię metody receive(). Komenda CONTINUE pozwala, aby kolejne klasy obsługujące wiadomości typu PACKET_IN mogły je obsłużyć. public net.floodlightcontroller.core.ilistener.command receive(iofswitch sw, OFMessage msg, FloodlightContext cntx) { logger.info("************* NEW PACKET IN *************"); return Command.CONTINUE; 4
5 3.3 Rejestracja modułu Utworzona klasa jest już gotowa. Aby można było w niej odbierać pakiety, moduł należy zarejestrować w kontrolerze. W tym celu w plikach: src/main/resources/meta- INF/services/net.floodlightcontroller.core.module.IFloodlightModule należy dodać następującą linijkę: pl.edu.agh.kt.sdnlablistener src/main/resources/floodlightdefault.properties dodać moduł pl.edu.agh.kt.sdnlablistener tak jak na rysunku 3 (linia 20, zmiany w linii 19). Rysunek3. Rejestracja modułu w kontrolerze - plik floodlightdefault.properties 3.4 Uruchomienie i testy Proszę zbudować projekt. Można go od razu uruchomić. Kontroler w konsoli powinien powiadamiać, że nasłuchuje przełączników OpenFlow. W celu przetestowania należy uruchomić środowisko Mininet na przykład z podstawową topologią. Jednocześnie należy wskazać, że wykorzystany zostanie zewnętrzny kontroler: $ sudo mn --controller=remote,ip=<controller_ip>,port=6653 gdzie jako controller_ip można podać wartość (korzystamy z tej samej maszyny do uruchomienia zarówno przełączników OpenFlow jak i kontrolera) 4. Wypakowywanie zawartości otrzymywanych pakietów W tej części zajęć laboratoryjnych utworzymy nową klasę, której zadaniem będzie wypakowywanie oraz wyświetlanie zawartości pakietów widzianych przez kontroler (pakietów protokołu OpenFlow). Proszę utworzyć nową klasę o nazwie PacketExtractor w paczce pl.edu.agh.kt. Na starcie proszę dodać do ciała klasy kilka zmiennych, które później będą wykorzystywane podczas implementacji kolejnych metod. private static final Logger logger = LoggerFactory.getLogger(PacketExtractor.class); private FloodlightContext cntx; private OFMessage msg; protected IFloodlightProviderService floodlightprovider; private Ethernet eth; private IPv4 ipv4; private ARP arp; private TCP tcp; private UDP udp; 5
6 Uwaga: Środowisko samo powinno dodać potrzebne importy. W razie problemów należy kliknąć na symbol białego krzyżyka na czerwonym w lewej części kodu, gdzie znajdują się numery linii kodu, a program sam zaproponuje potrzebne importy. Proszę zwykle wybierać te, które należą do projektu Floodlight, np. dla TCP paczka net.floodlightcontroller.packet.tcp. Poniżej zamieszczam gotową listę: import org.projectfloodlight.openflow.protocol.ofmessage; import org.projectfloodlight.openflow.types.ethtype; import org.slf4j.logger; import org.slf4j.loggerfactory; import net.floodlightcontroller.core.floodlightcontext; import net.floodlightcontroller.core.ifloodlightproviderservice; import net.floodlightcontroller.packet.arp; import net.floodlightcontroller.packet.ethernet; import net.floodlightcontroller.packet.ipv4; import net.floodlightcontroller.packet.tcp; import net.floodlightcontroller.packet.udp; Pierwszą wymaganą metodą jest metoda kontruktora klasy. Metoda ta jest pusta. Proszę ją dodać: public PacketExtractor() { Kolejną metodą jest metoda packetextract(), która za argument przyjmuje odebrany kontekst, tj. pakiet. Z niego wyciągane będą wartości pól nagłówków w poszczególnych warstwach. Proszę zauważyć, że wewnątrz tej metody jest odwołanie do kolejnej: extracteth(). public void packetextract(floodlightcontext cntx) { this.cntx = cntx; extracteth(); Następnie należy zaimplementować metodę extracteth() odpowiedzialną za wyświetlanie zawartości poszczególnych pól nagłówka ramki ethernetowej. Przykładowa (proponowana implementacja) znajduje się poniżej: public void extracteth() { eth = IFloodlightProviderService.bcStore.get(cntx, IFloodlightProviderService.CONTEXT_PI_PAYLOAD); logger.info("frame: src mac {", eth.getsourcemacaddress()); logger.info("frame: dst mac {", eth.getdestinationmacaddress()); logger.info("frame: ether_type {", eth.getethertype()); if (eth.getethertype() == EthType.ARP) { arp = (ARP) eth.getpayload(); //extractarp(); if (eth.getethertype() == EthType.IPv4) { ipv4 = (IPv4) eth.getpayload(); //extractip(); 6
7 Proszę zauważyć, że w metodzie tej wyświetlany jest źródłowy/docelowy adres MAC otrzymanej ramki oraz wartość pola EtherType. Następnie w zależności od wartości pola EtherType wypakowywany jest kolejny nagłówek. W prezentowanym przykładzie ARP lub IPv4. W wyszarzonych liniach (komentarz) zaproponowano implementację kolejnych metod w zależności od typu pakietu (patrz zadania). Uwaga: Aby wyświetlanie zawartości ramki ethernetowej działało w klasie SdnLabListener należy doimplementować tworzenie nowego obiektu klasy PacketExtractor w metodzie receive(). Poniżej prezentowana jest pełna implementacja metody receive(). public net.floodlightcontroller.core.ilistener.command receive(iofswitch sw, OFMessage msg, FloodlightContext cntx) { logger.info("************* NEW PACKET IN *************"); PacketExtractor extractor = new PacketExtractor(); extractor.packetextract(cntx); return Command.CONTINUE; Zadanie 1. Proszę własnoręcznie dokończyć implementację metod extractarp() oraz extractip(). Ich zadaniem jest wyświetlanie zawartości poszczególnych pól nagłówków. Zadanie 2. Proszę zaproponować implementację metod wyświetlających zawartość pól nagłówków TCP, UDP oraz ICMP (niekoniecznie wszystkich, tych które uznane zostaną za ważne). Metody te mają być wykonywane, jeśli pakiet danego typu pojawi się w kontrolerze. Uwaga: Do wykonania obu zadań przydatny może być poradnik umieszczony pod adresem: In+Message 7
REST API w module kontrolera Floodlight. Implementacja kolektora statystyk OpenFlow.
Instrukcja do laboratorium 6 REST API w module kontrolera Floodlight. Implementacja kolektora statystyk OpenFlow. 1. Cel ćwiczenia Celem ćwiczenia jest implementacja własnego rutera REST API pozwalającego
W celu uruchomienia kontrolera należy w katalogu głównym kontrolera z wiersza poleceń wydać następujące polecenie: $ java -jar target/floodlight.
Instrukcja do laboratorium 3 Rest API. Proaktywna instalacja przepływów. 1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z Rest API kontrolera Floodlight. Podczas zajęć przedstawione zostaną metody
Zapoznanie ze środowiskiem Mininet. Instalacja zewnętrznego kontrolera SDN.
Instrukcja do laboratorium 1 Zapoznanie ze środowiskiem Mininet. Instalacja zewnętrznego kontrolera SDN. 1. Cel ćwiczenia Celem ćwiczenia jest zaznajomienie się ze środowiskiem Mininet, protokołem OpenFlow
1. Czynności przygotowujące aplikację działającą na platformie Java SE Biblioteka5 (należy ją pobrać z załącznika z p.1)
Instrukcja tworzenia aplikacji EE na podstawie aplikacji z dostępem do bazy danych, prezentowanej na zajęciach lab.5 z PIO umożliwiająca przez sieć dostęp wielu użytkownikom. Projektowanie i wdrażanie
Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl
Narzędzia i aplikacje Java EE Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl Niniejsze opracowanie wprowadza w technologię usług sieciowych i implementację usługi na platformie Java EE (JAX-WS) z
D:\DYDAKTYKA\ZAI_BIS\_Ćwiczenia_wzorce\04\04_poprawiony.doc 2009-lis-23, 17:44
Zaawansowane aplikacje internetowe EJB 1 Rozróżniamy dwa rodzaje beanów sesyjnych: Stateless Statefull Celem tego laboratorium jest zbadanie różnic funkcjonalnych tych dwóch rodzajów beanów. Poszczególne
Instrukcja tworzenia aplikacji EE na bazie aplikacji prezentowanej na zajęciach lab.4 z PIO umożliwiająca przez sieć dostęp wielu użytkownikom.
Instrukcja tworzenia aplikacji EE na bazie aplikacji prezentowanej na zajęciach lab.4 z PIO umożliwiająca przez sieć dostęp wielu użytkownikom. Projektowanie i wdrażanie systemów informatycznych Przekształcenie
Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA.
Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA. Celem ćwiczenia jest przygotowanie prostej aplikacji wykorzystującej architekturę CORBA. Aplikacja składa się z usługodawcy (serwera)
Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione
Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf Materiały poprawione Rozwiązanie zadania w NetBeans IDE 7.4: Jarosław Ksybek, Adam Miazio Celem ćwiczenia jest przygotowanie prostej aplikacji
Warsztaty AVR. Instalacja i konfiguracja środowiska Eclipse dla mikrokontrolerów AVR. Dariusz Wika
Warsztaty AVR Instalacja i konfiguracja środowiska Eclipse dla mikrokontrolerów AVR Dariusz Wika 1.Krótki wstęp: Eclipse to rozbudowane środowisko programistyczne, które dzięki możliwości instalowania
WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.
WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM NetBeans Wykonał: Jacek Ventzke informatyka sem. VI 1. Uruchamiamy program NetBeans (tu wersja 6.8 ) 2. Tworzymy
Wprowadzenie do projektu QualitySpy
Wprowadzenie do projektu QualitySpy Na podstawie instrukcji implementacji prostej funkcjonalności. 1. Wstęp Celem tego poradnika jest wprowadzić programistę do projektu QualitySpy. Będziemy implementować
Tworzenie projektu zawierającego aplet w środowisku NetBeans. lab1. Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych
Tworzenie projektu zawierającego aplet w środowisku NetBeans. lab1 Dr inż. Zofia Kruczkiewicz Etap 1 - Tworzenie apletu 1. Wybierz z menu File\ New Project. Na formularzu New Project wybierz w oknie Categories
Projektowanie aplikacji internetowych laboratorium
Projektowanie aplikacji internetowych laboratorium Programowanie w języku Java Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne NetBeans 7 (zrzuty ekranów pochodzą z wersji
ZAPOZNANIE SIĘ Z TWORZENIEM
LABORATORIUM SYSTEMÓW MOBILNYCH ZAPOZNANIE SIĘ Z TWORZENIEM APLIKACJI MOBILNEJ W J2ME I. Temat ćwiczenia II. Wymagania Podstawowe wiadomości z zakresu języka Java Podstawowa znajomość środowiska Eclipse
Zaawansowane aplikacje internetowe
Zaawansowane aplikacje internetowe EJB 1 Rozróżniamy dwa rodzaje beanów sesyjnych: Stateless Statefull Celem tego laboratorium jest zbadanie różnic funkcjonalnych tych dwóch rodzajów beanów. Poszczególne
Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.
Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu. Dr inż. Zofia Kruczkiewicz Dwa sposoby tworzenia apletów Dwa sposoby
Ćwiczenie 1. Kolejki IBM Message Queue (MQ)
Ćwiczenie 1. Kolejki IBM Message Queue (MQ) 1. Przygotowanie Przed rozpoczęciem pracy, należy uruchomić "Kreator przygotowania WebSphere MQ" oraz przejść przez wszystkie kroki kreatora, na końcu zaznaczając
Testowanie I. Celem zajęć jest zapoznanie studentów z podstawami testowania ze szczególnym uwzględnieniem testowania jednostkowego.
Testowanie I Cel zajęć Celem zajęć jest zapoznanie studentów z podstawami testowania ze szczególnym uwzględnieniem testowania jednostkowego. Testowanie oprogramowania Testowanie to proces słyżący do oceny
Załącznik 1 instrukcje instalacji
Załącznik 1 instrukcje instalacji W poniższym załączniku przedstawione zostaną instrukcje instalacji programów wykorzystanych w trakcie tworzenia aplikacji. Poniższa lista przedstawia spis zamieszczonych
Java pierwszy program w Eclipse «Grzegorz Góralski strona własna
Strona 1 z 9 «Przykładowe zadania do cz. III ćwiczeń z genetyki Java pierwsze kroki w programowaniu (01)» Kategoria: java, Tagi: eclipse - java - programowanie. Autor: Grzegorz, napisał dnia: February
Zaawansowane aplikacje WWW - laboratorium
Zaawansowane aplikacje WWW - laboratorium Przetwarzanie XML (część 2) Celem ćwiczenia jest przygotowanie aplikacji, która umożliwi odczyt i przetwarzanie pliku z zawartością XML. Aplikacja, napisana w
Wprowadzenie do laboratorium. Zasady obowiązujące na zajęciach. Wprowadzenie do narzędzi wykorzystywanych podczas laboratorium.
Wprowadzenie do laboratorium. Zasady obowiązujące na zajęciach. Wprowadzenie do narzędzi wykorzystywanych podczas laboratorium. Prowadzący Dr inż. Zofia 1 La1 La2 Forma zajęć - laboratorium Wprowadzenie
cmt + CODESYS, oraz zdalne wejścia/ wyjścia
Instrukcja użytkownika cmt + CODESYS, oraz zdalne wejścia/ wyjścia W tej instrukcji przedstawiono krok po kroku, jak skonfigurować panel cmt3090 i zdalne wejścia/ wyjścia. V1.00 Spis treści 1. Instalacja
Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA.
Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA. Celem ćwiczenia jest przygotowanie prostej aplikacji wykorzystującej architekturę CORBA. Aplikacja składa się z usługodawcy (serwera)
Pakiety i interfejsy. Tomasz Borzyszkowski
Pakiety i interfejsy Tomasz Borzyszkowski Pakiety podstawy W dotychczasowych przykładach nazwy klas musiały pochodzić z jednej przestrzeni nazw, tj. być niepowtarzalne tak, by nie doprowadzić do kolizji
Programowanie obiektowe
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia.
Git, Bitbucket, IntelliJ IDEA
Państwowa Wyższa Szkoła Zawodowa w Tarnowie Zakład Informatyki Narzędzia i środowiska programistyczne Laboratorium 3 Git, Bitbucket, IntelliJ IDEA Prowadzący: Kierunek: Semestr: Rok: Informatyka Zimowy
Języki i metody programowania Java. Wykład 2 (część 2)
Języki i metody programowania Java INF302W Wykład 2 (część 2) Autor Dr inż. Zofia Kruczkiewicz 1 Struktura wykładu 1. Identyfikacja danych reprezentowanych przez klasy podczas opracowania koncepcji prostego
Laboratorium - Przechwytywanie i badanie datagramów DNS w programie Wireshark
Laboratorium - Przechwytywanie i badanie datagramów DNS w programie Wireshark Topologia Cele Część 1: Zapisanie informacji dotyczących konfiguracji IP komputerów Część 2: Użycie programu Wireshark do przechwycenia
Laboratorium - Wykorzystanie programu Wireskark do badania ramek Ethernetowych
Laboratorium - Wykorzystanie programu Wireskark do badania ramek Ethernetowych Topologia Cele Część 1: Badanie pól nagłówka w ramce Ethernet II. Cześć 2: Użycie programu Wireshark do przechwycenia i analizy
Aplikacje internetowe i rozproszone - laboratorium
Aplikacje internetowe i rozproszone - laboratorium Enterprise JavaBeans (EJB) Celem tego zestawu ćwiczeń jest zapoznanie z technologią EJB w wersji 3.0, a w szczególności: implementacja komponentów sesyjnych,
Aplikacje w środowisku Java
Aplikacje w środowisku Java Materiały do zajęć laboratoryjnych Klasy i obiekty - dziedziczenie mgr inż. Kamil Zieliński Katolicki Uniwersytet Lubelski Jana Pawła II 2018/2019 W ramach poprzedniego laboratorium
2) W wyświetlonym oknie należy zaznaczyć chęć utworzenia nowej aplikacji (wygląd okna może się różnić od powyższego); kliknąć OK
Zaawansowane aplikacje internetowe EJB 2 Celem tego laboratorium jest pokazanie, w jaki sposób aplikacje stworzone w różnych technologiach mogą korzystać z funkcjonalności udostępnianej przez komponenty
Javadoc. Piotr Dąbrowiecki Sławomir Pawlewicz Alan Pilawa Joanna Sobczyk Alina Strachocka
Javadoc Piotr Dąbrowiecki Sławomir Pawlewicz Alan Pilawa Joanna Sobczyk Alina Strachocka Wprowadzenie do Javadoc Treść prezentacji: http://students.mimuw.edu.pl/~as219669/javadoc.pdf Zadania: http://students.mimuw.edu.pl/~as219669/zadanie.rar
Aplikacje w środowisku Java
Aplikacje w środowisku Java Materiały do zajęć laboratoryjnych Graficzny Interfejs Użytkownika mgr inż. Kamil Zieliński Katolicki Uniwersytet Lubelski Jana Pawła II 2018/2019 Spis treści Graficzny Interfejs
Instalowanie VHOPE i plików biblioteki VHOPE
Instalowanie VHOPE i plików biblioteki VHOPE Krok 1. Zainstaluj aplikację VHOPE Przed rozpoczęciem korzystania z materiałów prezentacyjnych znajdujących się na tym dysku USB należy zainstalować na komputerze
Programowanie Systemów Czasu Rzeczywistego
Programowanie Systemów Czasu Rzeczywistego Laboratorium Wprowadzenie Mariusz RUDNICKI mariusz.rudnicki@eti.pg.gda.pl 2016 Spis treści Przygotowanie platform docelowej.... 3 Przygotowanie środowiska programistycznego
Db4o obiektowa baza danych wersja.net
Wstęp Db4o obiektowa baza danych wersja.net Db4o (database for objects) to obiektowa baza danych na platformę Java i.net. Pełna wersja bazy db4o jest dostępna na dwóch licencjach: open source: pozwala
Microsoft.NET: LINQ to SQL, ASP.NET AJAX
Microsoft.NET: LINQ to SQL, ASP.NET AJAX Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2008 oraz serwer bazy danych SQL Server Express 2005 (lub
MentorGraphics ModelSim
MentorGraphics ModelSim 1. Konfiguracja programu Wszelkie zmiany parametrów systemu symulacji dokonywane są w menu Tools -> Edit Preferences... Wyniki ustawień należy zapisać w skrypcie startowym systemu
Enkapsulacja, dziedziczenie, polimorfizm
17 grudnia 2008 Spis treści I Enkapsulacja 1 Enkapsulacja 2 Spis treści II Enkapsulacja 3 Czym jest interfejs Jak definuje się interfejs? Rozszerzanie interfejsu Implementacja interfejsu Częściowa implementacja
Instrukcja instalacji oprogramowania dla środowiska Linux
Instrukcja instalacji oprogramowania dla środowiska Linux Kurs Python od podstaw Przygotuj się jeszcze przed zajęciami! Specyfikacja komputera Python od podstaw minimum 8 GB RAM, rekomendowany procesor
Programowanie Urządzeń Mobilnych. Laboratorium nr 7, 8
Programowanie Urządzeń Mobilnych Laboratorium nr 7, 8 Android Temat 1 tworzenie i uruchamianie aplikacji z użyciem Android SDK Krzysztof Bruniecki 1 Wstęp Platforma Android jest opartym na Linuxie systemem
Instrukcja instalacji
Instrukcja instalacji Niniejsza instrukcja obejmuje instalację krok po kroku narzędzi potrzebnych do uruchomienia aplikacji ERS pod systemem Windows. Ze względu na uniwersalność użytych rozwiązań możliwe
Aplikacje WWW - laboratorium
Aplikacje WWW - laboratorium Serwlety Celem ćwiczenia jest przygotowanie kilku prostych serwletów ilustrujących możliwości tej technologii. Poszczególne ćwiczenia prezentują sposób przygotowania środowiska,
Instrukcja 10 Laboratorium 13 Testy akceptacyjne z wykorzystaniem narzędzia FitNesse
Instrukcja 10 Laboratorium 13 Testy akceptacyjne z wykorzystaniem narzędzia FitNesse 1 Cel laboratorium: Nabycie umiejętności przygotowywania testów akceptacyjnych za pomocą narzędzia FitNesse 1. Wg wskazówek
Zadanie 2. Tworzenie i zarządzanie niestandardową konsolą MMC
Zadanie 2. Tworzenie i zarządzanie niestandardową konsolą MMC W tym zadaniu utworzymy niestandardową konsolę MMC. Będziemy dodawać, usuwać i zmieniać kolejność przystawek. Następnie przygotujemy konsolę
SIECI KOMPUTEROWE I TECHNOLOGIE INTERNETOWE
Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania SIECI KOMPUTEROWE I TECHNOLOGIE INTERNETOWE Temat: Identyfikacja właściciela domeny. Identyfikacja tras
Klasy i obiekty cz II
Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Klasy i obiekty cz II Hermetyzacja, mutatory, akcesory, ArrayList Rozwijamy aplikację Chcemy, aby obiekty klasy
Aplikacje RMI Lab4
Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Lab4 Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych 1 1. Koncepcja budowy aplikacji RMI (aplikacja rozproszonych
Instrukcja do laboratorium. Wprowadzenie do problematyki wirtualizacji. Wirtualizacja sieci.
Instrukcja do laboratorium Wprowadzenie do problematyki wirtualizacji. Wirtualizacja sieci. Przed zajęciami proszę dokładnie zapoznać się z instrukcją i materiałami pomocniczymi dotyczącymi laboratorium
Instalacja NOD32 Remote Administrator
Instalacja NOD32 Remote Administrator Program do zdalnego zarządzania stacjami roboczymi, na których zainstalowany jest program NOD32, składa się z dwóch modułów. Pierwszy z nich Remote Administrator Server
Aplikacje w środowisku Java
Aplikacje w środowisku Java Materiały do zajęć laboratoryjnych Klasy i obiekty - wprowadzenie mgr inż. Kamil Zieliński Katolicki Uniwersytet Lubelski Jana Pawła II 2018/2019 Klasa zbiór pól i metod Obiekt
xmlns:prism=http://www.codeplex.com/prism c. <ContentControl prism:regionmanager.regionname="mainregion" />
1 Tworzenie Shella a. W pierwszej kolejności tworzymy nowy projekt: WPF Application. Name: Shell SolutionName: PrismApp b. Dodajemy bibliotekę PRISM za pomocą NuGet Managera (dla.net Framework 4.5 Prism
Architektury Usług Internetowych. Laboratorium 2. Usługi sieciowe
Architektury Usług Internetowych Laboratorium 2. Usługi sieciowe Wstęp Celem laboratorium jest zapoznanie się z modelem usług sieciowych na przykładzie prostego serwera Apache Axis2. Apache Axis2 Apache
Programowanie obiektowe
Programowanie obiektowe IV. Interfejsy i klasy wewnętrzne Małgorzata Prolejko OBI JA16Z03 Plan Właściwości interfejsów. Interfejsy a klasy abstrakcyjne. Klonowanie obiektów. Klasy wewnętrzne. Dostęp do
Programowanie w Javie
Programowanie w Javie Andrzej Czajkowski Lista nr 0 Debugger w Javie Celem ćwiczenia jest poznanie podstawowych funkcji narzędzia debugera (odpluskwiacz) w środowisku Eclipse. Po ukończeniu ćwiczenia student
Microsoft.NET: ASP.NET MVC + Entity Framework (Code First)
Microsoft.NET: ASP.NET MVC + Entity Framework (Code First) Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2012. W ramach projektu budowana jest prosta
Informatyka I : Tworzenie projektu
Tworzenie nowego projektu w programie Microsoft Visual Studio 2013 Instrukcja opisuje w jaki sposób stworzyć projekt wykorzystujący bibliotekę winbgi2 w programie Microsoft Visual Studio 2013. 1. Otwórz
Podstawy technologii WWW
Podstawy technologii WWW Ćwiczenie 8 PHP, czyli poczatki nowej, dynamicznej znajomosci Na dzisiejszych zajęciach rozpoczniemy programowanie po stronie serwera w języku PHP. Po otrzymaniu żądania serwer
Opis instalacji programu Scratch
Opis instalacji programu Scratch 1. Pobieranie programu (opisane w podręczniku) Otwórz stronę http://scratch.mit.edu, widoczną na poniższym rysunku. Kliknij na niej przycisk Download Scratch. Wyświetli
Tworzenie pliku źródłowego w aplikacji POLTAX2B.
Tworzenie pliku źródłowego w aplikacji POLTAX2B. Po utworzeniu spis przekazów pocztowych klikamy na ikonę na dole okna, przypominającą teczkę. Następnie w oknie Export wybieramy format dokumentu o nazwie
Laboratorium - Używanie programu Wireshark do obserwacji mechanizmu uzgodnienia trójetapowego TCP
Laboratorium - Używanie programu Wireshark do obserwacji mechanizmu uzgodnienia trójetapowego Topologia Cele Część 1: Przygotowanie Wireshark do przechwytywania pakietów Wybór odpowiedniego interfejsu
namespace HostedReceiver { public class Receiver: IConfigureThisEndpoint, AsA_Server {
Pobranie i instalacja: - http://www.nservicebus.com/ - download v3.0 now - rozpakować - MSMQ powinno być zainstalowane (Panel Sterowania -> Dodaj/Usuń programy -> Składniki systemu Windows -> Kolejkowanie
Aplikacje WWW - laboratorium
Aplikacje WWW - laboratorium JavaServer Faces Celem ćwiczenia jest przygotowanie aplikacji internetowej z wykorzystaniem technologii JSF. Prezentowane ćwiczenia zostały wykonane w środowisku Oracle JDeveloper
Instrukcja obsługi programu:
Instrukcja obsługi programu: MODUŁ USER ADMIN ADMINISTRACJA UŻYTKOWNIKÓW Przeznaczenie programu Program przeznaczony jest do administracji użytkownikami. Program umożliwia dodawanie, usuwanie oraz modyfikację
Język JAVA podstawy. wykład 2, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna
Język JAVA podstawy wykład 2, część 2 Jacek Rumiński 1 Język JAVA podstawy Plan wykładu: 1. Rodzaje programów w Javie 2. Tworzenie aplikacji 3. Tworzenie apletów 4. Obsługa archiwów 5. Wyjątki 6. Klasa
Wykład 7: Pakiety i Interfejsy
Wykład 7: Pakiety i Interfejsy Plik Źródłowy w Javie Składa się z: instrukcji pakietu (pojedyncza, opcjonalna) instrukcji importujących (wielokrotne, opcjonalne) deklaracji klasy publicznej (pojedyncza,
Java Platform Micro Edition
Java Platform Micro Edition Instalacja środowiska programistycznego Java Platform Micro Edition Software Development Kit 3.0 for Windows z lokalizacji http://www.oracle.com/technetwork/java/javame/downloads/sdk30-jsp-139759.html
Projektowanie oprogramowania. Warstwa integracji z bazą danych oparta na technologii ORM Platforma Java EE Autor: Zofia Kruczkiewicz
Projektowanie oprogramowania Warstwa integracji z bazą danych oparta na technologii ORM Platforma Java EE Autor: Zofia Kruczkiewicz 1 Wykonanie czterowarstwowej aplikacji EE z dostępem do bazy danych,
Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html
Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Dr inż. Zofia Kruczkiewicz wykład 4 Programowanie aplikacji internetowych, wykład 4 1 1. Zadania aplikacji rozproszonych obiektów
E:\DYDAKTYKA\ZAI\ZWWW\Laboratoria\L07\Java Persistence.doc 2011-lis-24, 17:0 Zaawansowane aplikacje internetowe Laboratorium Java Persistence.
Zaawansowane aplikacje internetowe Laboratorium Java Persistence. Adaptacja rozwiązania dla środowiska NetBeans 7.0.1: Łukasz Przytuła, opracowanie materiałów: Andrzej Dawidowicz Do wykonania ćwiczeń potrzebne
Języki i metody programowania Java Lab1 https://docs.oracle.com/javase/tutorial/ Zofia Kruczkiewicz
Języki i metody programowania Java Lab1 https://docs.oracle.com/javase/tutorial/ Zofia Kruczkiewicz Zadanie 1. Wykonanie projektu Java SE w środowisku Netbeans- File/New Project W formularzu New Project
Komunikatory typu TCP/IP lab2. Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych
Komunikatory typu TCP/IP lab2 Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych Zadanie1 - klient wysyła jeden komunikat (typu String) do serwera i kończy swoje istnienie, a serwer go odbiera
ASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3
3 ASP.NET MVC Podstawy 1 1. Cel zajęć Celem zajęć jest zapoznanie się z podstawami ASP.NET MVC 2.0 Framework. 2. Zadanie Proszę zbudować prostą aplikację WWW przy zastosowaniu framework a ASP.NET MVC 2.0
Instrukcja instalacji oprogramowania dla środowiska MacOS
Instrukcja instalacji oprogramowania dla środowiska MacOS Kurs Python od podstaw Przygotuj się jeszcze przed zajęciami! Specyfikacja komputera Python od podstaw minimum 8 GB RAM, rekomendowany procesor
Programowanie obiektowe
Programowanie obiektowe I. Obiekty i klasy Małgorzata Prolejko OBI JA16Z03 Plan Klasy i obiekty Odnośniki (referencje) Używanie klas predefiniowanych Tworzenie własnych klas Relacje pomiędzy klasami: dziedziczenie
Podręcznik użytkownika Konfiguracja Rejestracji Online
Podręcznik użytkownika Konfiguracja Rejestracji Online Dotyczy wersji: Spis treści 1. Licencja... 3 2. OpenVPN... i Agent 3 3. Adres portalu... rejestracji online 4 4. Konfiguracja... systemu 4 4.1. 4.2.
PHP 5 język obiektowy
PHP 5 język obiektowy Wprowadzenie Klasa w PHP jest traktowana jak zbiór, rodzaj różnych typów danych. Stanowi przepis jak stworzyć konkretne obiekty (instancje klasy), jest definicją obiektów. Klasa reprezentuje
Zaawansowane aplikacje internetowe - laboratorium Web Services (część 1).
Zaawansowane aplikacje internetowe - laboratorium Web Services (część 1). Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej wykorzystującej technologię usług sieciowych (ang. Web Services).
Programowanie Obiektowe GUI
Programowanie Obiektowe GUI Swing Celem ćwiczenia jest ilustracja wizualnego tworzenia graficznego interfejsu użytkownika opartego o bibliotekę Swing w środowisku NetBeans. Ponadto, ćwiczenie ma na celu
Instrukcja implementacji sterownika wirtualnego portu szeregowego dla systemu Android. Opracowanie: Elzab Soft sp. z o.o.
Instrukcja implementacji sterownika wirtualnego portu szeregowego dla systemu Android. Opracowanie: Elzab Soft sp. z o.o. 29.06.2015 2 Spis treści 1. Wymagania...4 2. Uprawnienia systemowe...4 3. Uprawnienie
TIME MARKER. Podręcznik Użytkownika
TIME MARKER Podręcznik Użytkownika SPIS TREŚCI I. WPROWADZENIE... 3 II. Instalacja programu... 3 III. Opis funkcji programu... 7 Lista skrótów... 7 1.1. Klawisz kontrolny... 7 1.2. Klawisz skrótu... 8
LABORATORIUM SIECI KOMPUTEROWYCH (compnet.et.put.poznan.pl)
Wydział Elektroniki i Telekomunikacji POLITECHNIKA POZNAŃSKA fax: (+48 61) 665 25 72 ul. Piotrowo 3a, 60-965 Poznań tel: (+48 61) 665 22 93 LABORATORIUM SIECI KOMPUTEROWYCH (compnet.et.put.poznan.pl) Sieci
Aplikacje internetowe - laboratorium
Aplikacje internetowe - laboratorium Administracja serwerem aplikacji. Celem ćwiczenia jest zainstalowanie i administracja prostym serwerem aplikacji. Ćwiczenie zostanie wykonane przy użyciu popularnego
Instrukcja instalacji oprogramowania Systemu e-kt
Instrukcja instalacji oprogramowania Systemu e-kt Proces instalacji oprogramowania Systemu e-kt... 2 Konfiguracja programu Java... 9 Konfiguracja Systemu e-kt w przeglądarce Mozilla Firefox... 10 Konfiguracja
Laboratorium 9 (Więcej Aktywności, w Androidzie)
Dr Mirosław Łątka Informatyka dla medycyny Jesień 2012 Laboratorium 9 (Więcej Aktywności, w Androidzie) Aplikacje systemu Android składają się z luźnego zbioru aktywności (ang. activities), z których każda
Wstęp - Prosta aplikacja internetowa w technologii Java EE 5. Programowanie komponentowe 1
Wstęp - Prosta aplikacja internetowa w technologii Java EE 5 Programowanie komponentowe 1 Przykład 1- Wykonanie prostej aplikacji internetowej w technologii JavaEE w środowisku Netbeans 5.5 z wykorzystaniem
I. Spis treści I. Spis treści... 2 II. Kreator szablonów... 3 1. Tworzenie szablonu... 3 2. Menu... 4 a. Opis ikon... 5 3. Dodanie nowego elementu...
Kreator szablonów I. Spis treści I. Spis treści... 2 II. Kreator szablonów... 3 1. Tworzenie szablonu... 3 2. Menu... 4 a. Opis ikon... 5 3. Dodanie nowego elementu... 7 a. Grafika... 7 b. Tekst... 7 c.
Leszek Stasiak Zastosowanie technologii LINQ w
Leszek Stasiak Zastosowanie technologii LINQ w C# 1. Wstęp - połączenie Do naszych zadań będziemy używać Microsoft Visual Studio 2010. Stwórzmy nowy projekt Windows Form Application. Mając do dyspozycji
Programowanie obiektowe
Programowanie obiektowe III. Refleksja Małgorzata Prolejko OBI JA16Z03 Plan Klasa Class. Analiza funkcjonalności klasy. Podstawy obsługi wyjątków. Zastosowanie refleksji do analizy obiektów. Wywoływanie
Instalacja i konfiguracja serwera SSH.
Instalacja i konfiguracja serwera SSH. Podczas wykonywania poniższych zadań w zeszycie w sprawozdaniu 1. podaj i wyjaśnij polecenia, które użyjesz, aby: wyjaśnić pojęcia związane z ssh, zainstalować serwer
Programowanie wielowarstwowe i komponentowe
Programowanie wielowarstwowe i komponentowe JSF 2 wprowadzenie Konfiguracja Eclipse - dodanie szablonu XHTML dla potrzeb JSF 1. Otwórz menu Window/Preferences. Następnie z drzewka wybierz Web/HTML Files/Editor/Templates.
Uruchamianie bazy PostgreSQL
Uruchamianie bazy PostgreSQL PostgreSQL i PostGIS Ten przewodnik może zostać pobrany jako PostgreSQL_pl.odt lub PostgreSQL_pl.pdf Przejrzano 10.09.2016 W tym rozdziale zobaczymy, jak uruchomić PostgreSQL
Programowanie obiektowe
Laboratorium z przedmiotu - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia. Wprowadzenie teoretyczne.
Instrukcja użytkownika
Instrukcja użytkownika ul. Zawalna 1/5 51-118 Wrocław e-mail: biuro@innotechtion.pl www.innotechtion.pl Spis treści 1 Instalacja oprogramowania SMS Studio...2 2 Pierwsze uruchomienie... 4 2.1 Rejestracja...
Konfiguracja serwera DNS w systemie Windows Server 2008 /2008 R2
Konfiguracja serwera DNS w systemie Windows Server 2008 /2008 R2 Procedura konfiguracji serwera DNS w systemie Windows Server 2008/2008 R2, w sytuacji gdy serwer fizyczny nie jest kontrolerem domeny Active
Architektury usług internetowych. Laboratorium 5. JADE
Wstęp Architektury usług internetowych Laboratorium 5. JADE Celem laboratorium jest zapoznanie się z usługami udostępnianymi przez agenty w systemie agentowym JADE. Każdy z agentów udostępniający usługę
Wczytywanie cenników z poziomu programu Norma EXPERT... 2. Tworzenie własnych cenników w programie Norma EXPERT... 4
Spis treści Wczytywanie cenników z poziomu programu Norma EXPERT... 2 Tworzenie własnych cenników w programie Norma EXPERT... 4 Wczytywanie cenników z poziomu serwisu internetowego www.intercenbud.pl do