Lekcja 1. Środowisko OMNeT++

Podobne dokumenty
Lekcja 4. Wektory bram i wektory modułów

Spis treści 1. Oprogramowanie wizualizacyjne IFTER EQU Dodanie integracji CKD Wprowadzanie konfiguracji do programu EQU... 6 a.

Ćwiczenie 6. Wiadomości ogólne.

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

Instrukcja EQU Kantech

4. Podstawowa konfiguracja

Instrukcja konfiguracji programu Fakt z modułem lanfakt

Opis szybkiego uruchomienia programu APBSoft

Adobe InDesign lab.1 Jacek Wiślicki, Paweł Kośla. Spis treści: 1 Podstawy pracy z aplikacją Układ strony... 2.

KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED

INSTRUKCJA INSTALACJI ORAZ UŻYTKOWANIA PROGRAMU FORMULARZ OFERTOWY

Windows Server Active Directory

Kancelaria instalacja programu

Kurs walut. Specyfikacja projektu. Marek Zając

Lekcja 5. Funkcje handlemessage() i initialize(), konstruktor i destruktor

Konfiguracja konta pocztowego w Thunderbird

StacjaSQL.2012 / PIERWSZE URUCHOMIENIE I PODSTAWOWE USTAWIENIA / / USUNIĘCIE "BAZY TESTOWEJ, PRZEJŚCIE NA WERSJĘ KOMERCYJNĄ / oraz. str.

OPROGRAMOWANIE DEFSIM2

INSTRUKCJA INSTALACJI I URUCHOMIENIA PROGRAMÓW FINKA DOS W SYSTEMACH 64 bit

INSTRUKCJA UŻYTKOWNIKA. Spis treści. I. Wprowadzenie II. Tworzenie nowej karty pracy a. Obiekty b. Nauka pisania...

INTENSE PLATFORM Zmiany w wersji Wersja 7.2

Instrukcja wypełniania formularza Ankieta Trwałości

I. Spis treści I. Spis treści... 2 II. Kreator szablonów Tworzenie szablonu Menu... 4 a. Opis ikon Dodanie nowego elementu...

Ćwiczenie Zmiana sposobu uruchamiania usług

OBIEKTY TECHNICZNE OBIEKTY TECHNICZNE

MasterEdytor. Podprogram pomocniczy do programu mpfotoalbum 1.2 INSTRUKCJA

PWI Instrukcja użytkownika

Podstawy konfiguracji środowiska graficznego. Umieszczamy kursor na pustym obszarze na pulpicie i naciskamy prawy guzik:

Cyfrowe Przetwarzanie Obrazów i Sygnałów

Backend Administratora

Produkcja by CTI. Proces instalacji, ważne informacje oraz konfiguracja

Compas 2026 Personel Instrukcja obsługi do wersji 1.05

Opis preprocesora graficznego dla programu KINWIR -I

Jak zainstalować i skonfigurować komunikator MIRANDA, aby wyglądał i funkcjonował jak Gadu Gadu Tutorial by t800.

Instrukcja konfiguracji programu Fakt z modułem lanfakt

Jak przesłać mapę do urządzenia lub na kartę pamięci?

Rozdział 1. Przegląd bramofonu SAFE

etrader Pekao Podręcznik użytkownika Strumieniowanie Excel

Skrócona instrukcja korzystania z Platformy Zdalnej Edukacji w Gliwickiej Wyższej Szkole Przedsiębiorczości

Definiowanie drukarek w programie ZAFIR

Podstawy pracy w systemie Doradca.

Poniższy przykład przedstawia prosty sposób konfiguracji komunikacji między jednostkami centralnymi LOGO! w wersji 8 w sieci Ethernet.

TM PROGRAM TERMINALA RS232 DLA MULTIPLEKSERA 8XRS232 / ETHERNET 10BASE-T

Budowa argumentacji bezpieczeństwa z użyciem NOR-STA Instrukcja krok po kroku

podstawowa obsługa panelu administracyjnego

Cechy systemu X Window: otwartość niezależność od producentów i od sprzętu, dostępny kod źródłowy; architektura klient-serwer;

Projektowanie układów na schemacie

VComNet Podręcznik użytkownika. VComNet. Podręcznik użytkownika Wstęp

Program dla praktyki lekarskiej

5.2. Pierwsze kroki z bazami danych

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

Rozdział 4: PIERWSZE KROKI

Podręcznik użytkownika programu. Ceremonia 3.1

Udostępnianie drukarek za pomocą systemu Windows (serwer wydruku).

Podręcznik Użytkownika LSI WRPO

WPROWADZENIE DO ŚRODOWISKA SCICOS

Expo Composer Garncarska Szczecin tel.: info@doittechnology.pl. Dokumentacja użytkownika

Kadry Optivum, Płace Optivum

MODUŁ OFERTOWANIE INSTRUKCJA OBSŁUGI

Site Installer v2.4.xx

mfaktura Instrukcja instalacji programu Ogólne informacje o programie biuro@matsol.pl

PC0060. ADAPTER Kabel Easy Copy PC-Link USB 2.0 Proste kopiowanie, bez instalacji. Instrukcja obsługi

Aby uruchomić Multibooka, należy podłączyć nośnik USB do gniazda USB w komputerze, na którym program ma być używany.

1. Instalacja Programu

SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD

BeeOffice. Konfiguracja i obsługa modułu Urządzenia

Instrukcja instalacji i konfiguracji Karty EDGE/GPRS SonyEricsson GC85

Tworzenie nowego projektu w asemblerze dla mikroprocesora z rodziny 8051

learningpanel - logowanie


Wprowadzenie do środowiska Qt Creator

Instrukcja korzystania z Systemu Telnom - Nominacje

Autorzy. Zespół SABUR Sp. Z o.o. Wydanie Data. Sierpień SABUR Sp. Z o. o. Wszelkie prawa zastrzeżone

Produkcja by CTI. Proces instalacji, ważne informacje oraz konfiguracja

wersja 1.0 ośrodek komputerowy uj cm ul. mikołaja kopernika 7e, Kraków tel

Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa TECHNIKI REGULACJI AUTOMATYCZNEJ

Lokalizacja jest to położenie geograficzne zajmowane przez aparat. Miejsce, w którym zainstalowane jest to urządzenie.

Satel Integra FIBARO

MentorGraphics ModelSim

3.4. Opis konfiguracji layoutów.

Programowanie w języku Python. Grażyna Koba

INSTRUKCJA INSTALACJI APLIKACJI PROF- EAN 2

Komunikacja Master-Slave w protokole PROFIBUS DP pomiędzy S7-300/S7-400

I. Program II. Opis głównych funkcji programu... 19

Mazowiecki Elektroniczny Wniosek Aplikacyjny

Podręcznik użytkownika Obieg dokumentów

Formatowanie tekstu za pomocą zdefiniowanych stylów. Włączanie okna stylów. 1. zaznaczyć tekst, który chcemy formatować

Po otrzymaniu maila zapraszającego do udziału w korzystaniu z aplikacji ProfiAuto Usługi dla Serwisu, należy użyć przycisku Aktywuj aplikację.

7 Business Ship Control dla Symfonia Handel

Joanna Domańska, Krzysztof Grochla, Sławomir Nowak. Symulator. OMNeT++ dla studentów i inżynierów

VSS podgląd obrazów z rejestratora na żywo poprzez sieć komputerową, jak skonfigurować krótka instrukcja.

Instalacja PPPoE w systemie Windows XP za pomocą kreatora nowego połączenia sieciowego

WinUcz procedura uprzedniego wywozu

WOJEWÓDZTWO PODKARPACKIE

NetDrive czyli jak w prosty sposób zarządzać zawartością FTP

e-podręcznik dla seniora... i nie tylko.

Projektowanie Skinów w programie Taboret2

Tworzenie prezentacji, PowerPoint

Transkrypt:

Lekcja 1. Środowisko OMNeT++ W przygotowanym materiale zostanie omówione środowisko OMNeT++, pokazane zostanie, w jaki sposób tworzyć modele topologii. Język topologii NED Model OMNeT ++ składa się z hierarchicznie zagnieżdżonych modułów. Moduły są opisane w języku NED i często odnoszą się do sieci (networks). Moduły komunikują się ze sobą przez przekazywane komunikaty (messages), które mogą zawierać dowolne struktury danych. Moduły mogą wysłać komunikaty bezpośrednio do ich celu lub wzdłuż pierwotnie zdefiniowanej ścieżki, przez bramy (gates) i połączenia (connections). Moduły mogą mieć własne parametry. Moduł najwyższego poziomu to moduł systemowy (system module), który zawiera podmoduły (submodules), które same również mogą zawierać podmoduły. Moduły w najniższym poziomie hierarchii są określone jako moduły proste (simple module) i ich zachowanie jest opisywane w języku C++ z wykorzystaniem bibliotek symulacyjnych. Moduły zawierające moduły proste to moduły złożone (compound module). Rys. 1. Modularna struktura obiektu symulacji Programy mogą być uruchamiane z wykorzystaniem interfejsu linii poleceń lub dostarczanego środowiska graficznego z użyciem bibliotek Tcl/Tk (CMDEnv, TkEnv, Envir). Do stworzenia symulacji potrzebne są pliki: *.ned, *.cpp, *.h oraz plik sterujący omnetpp.ini. W prezentowanym materiale opisana zostanie budowa pliku.ned (informacje o konstrukcji plików *.h, *.cpp i omnetpp.ini znajdują się w lekcji 2). Przykład modelu W celu zapoznania się z językiem NED zostanie wykonany przyjęty model serwera bazodanowego. Schemat modelu przedstawiony jest na rysunku 2. 1

serwer klient CPU dysk Rys. 2a. Schemat sieci do serwera bazodanowego źródło: wykonanie własne serwer klient CPU dysk Rys. 2b. Schemat sieci do serwera bazodanowego źródło: wykonanie własne Model możemy tworzyć na dwa sposoby: definiując model w pliku tekstowym zapisanym z rozszerzeniem.ned lub tworząc poszczególne moduły w środowisku symulacyjnym. W celu dokładnego wyjaśnienia budowy modelu wykorzystany zostanie pierwszy sposób. Pierwszym krokiem w tworzeniu modelu jest stworzenie roboczego katalogu o nazwie np. Lekcja1. Następnie należy stworzyć plik topologii, który jest plikiem tekstowym zapisanym z rozszerzeniem.ned. Definiowanie modelu rozpoczyna się od modułów podrzędnych (simple module). Wszystkie moduły są obiektami o typach zdefiniowanych przez użytkownika i zbudowane są z sekcji: parameters (parametry) określa cechy topologii modelu lub modułu. Parametry mogą być wartościami o różnych typach (string, bool, numeric, const, random, xml). Umownie nazwy parametrów piszemy z małej litery. gates (bramy) określa wejście input, wyjście output lub brama dwukierunkowa inout modułu, przez które przesyłane są komunikaty. Każde połączenie modułów, które ma wejście musi mieć też wyjście. Do jednej bramy wyjściowej może być podłączona tylko jedna brama wejściowa i na odwrót do każdej bramy wejściowej tylko jedna brama wyjściowa. Można również definiować wektory bram zwierające pewną liczbę pojedynczych bram za pomocą pary nawiasów [], a ich wielkość podać w module złożonym (więcej na ten temat znajduje się w Lekcji 4). Dodatkowo moduły złożone mają sekcje: connections (połączenia) określa połączenia między wejściami i wyjściami modułów podrzędnych, oraz połączenia modułów nadrzędnych z podrzędnymi. submodules (podmoduły) zawiera definicje podmodułów. Typy podmodułów muszą być podane do kompilatora NED, dlatego to muszą one ukazać się wcześniej w tym 2

samym pliku NED albo zostać importowane z innego pliku NED. Można również definiować wektory podmodułów (więcej na ten temat w Lekcji 4). Do zadania potrzebne są trzy podmoduły: dla klienta, procesora oraz dysku. Umownie nazwy modułów zarówno prostych jak i złożonych zaczynają się z wielkich liter, więc nazwiemy je odpowiednio Klient, Procesor, Dysk_twardy. simple Klient gates: inout oddo_klienta; simple Procesor gates: inout oddo_klienta; inout oddo_dysku; simple Dysk_twardy gates: inout oddo_procesora; Komentarze w plikach *.ned umieszcza się po znaku dwóch ukośników slash (//). Komentarze są ignorowane przez kompilator NED. Jak na razie nie potrzebujemy parametrów więc zostawimy pustą sekcje parameters. Parametry są zmiennymi należącymi wyłącznie do danego modułu. Parametry są identyfikowane nazwą umownie rozpoczynającą się z małych liter. Jeśli typ parametru jest pominięty to standardowo przyjęty jest typ numeric. Wartości parametrów mogą być podane w sekcji parameters lub w pliku konfiguracyjnym omnetpp.ini (więcej informacji na ten temat w lekcji nr.2). Jeśli nie są zadeklarowane wartości to symulator zapyta o nie przy starcie symulacji. Tak jak już wcześniej było wspomniane połączenia bram nie mogą być multipleksowane, tzn. do jednego wejścia może być podłączone tylko jedno wyjście. Można zadeklarować większą liczbę bram w postaci wektora, używając w tym celu podwójnego kwadratowego nawiasu []. Teraz możemy rozpocząć tworzenie modułów złożonych z wcześniej opisanych podmodułów. 3

Sekcje gates i parameters definiujemy analogicznie jak dla modułów prostych. module Serwer gates: inout oddo_komputera; submodules: cpu: Procesor dysk: Dysk_twardy connections: oddo_komputera <--> cpu.oddo_klienta; cpu.oddo_dysku <--> dysk.oddo_procesora; Podobnie jak wcześniej w modułach prostych tak i teraz w sekcji parameters nie zadeklarowaliśmy na razie żadnych zmiennych. Parametry w tej sekcji mogą być wykorzystywane przez podmoduły. Mogą również zostać użyte w definiowaniu wewnętrznej struktury modułu złożonego, np. liczby submodułów. Parametry oddziałujące na wewnętrzną strukturę powinny zawsze być deklarowane jako const, wówczas za każdym razem jak będzie uzyskiwany do nich dostęp będą one miały taką samą wartość. W sekcji submodules zadeklarowane są moduły podrzędne zadeklarowane wcześniej. W tej sekcji mogą znajdować się również przypisania konkretnych wartości do parametrów modułów podrzędnych. Jeśli w podmodułach zadeklarowane były wektory bramy to można w tej sekcji zadeklarować sekcję podrzędną gatesize, w której zostaną przypisane wielkości dla poszczególnych wektorów wejść/wyjść dla każdego z modułów prostych. Rozmiar bram nie jest obowiązkowy. Jeśli nie zostanie podany to zostanie stworzony z rozmiarem zerowym. W sekcji Connections zadeklarowane są połączenia pomiędzy modułami w danym module złożonym. Po zadeklarowaniu wszystkich modułów prostych i złożonych, do stworzenia kompletnego modelu potrzebna jest definicja sieci. network Lekcja1 @display("bgb=414,330"); submodules: Host: Klient @display("p=333,156;i=device/server2"); Komputer: Serwer @display("p=79,156;i=device/pc4"); connections: Host.oddo_klienta <--> Komputer.oddo_komputera; Sieć również może zawierać sekcję parameters. 4

Model topologii NED jest już gotowy do uruchomienia. Edytor graficzny GNED. Do budowy, edycji i odczytu plików.ned służy edytor graficzny. Rys. 3. Model w trybie graficznym Przełączając miedzy zakładkami można oglądać model w trybie graficznym i w języku NED. 5

Rys. 4. Model w języku NED W lewej części okna aplikacji przedstawione jest drzewo modułów wraz z ich bramami, parametrami, a w przypadku modułów złożonych i sieci również submoduły i połączenia. Jest możliwość wygodnego przełączania podglądu pomiędzy komponentami składowymi modelu (na górze okna aplikacji). Rys. 5. Moduły Można również otworzyć moduł Komputer w osobnym oknie klikając na ikonę modułu Serwer. Jest to przydatne przy obserwowaniu ruchu podczas działania symulacji. 6

Rys. 6. Model serwera w trybie graficznym Automatycznie przy uruchomieniu modelu do kodu dopisane zostały linijki kodu: display: b=36,33;p=72,88 ; oraz display: b=30,40;p=281,88 ; odpowiadające ikonom modułu Klient i Serwer ich rozmiar oraz położenie. Klikają prawym przyciskiem myszki na poszczególne elementy modelu można oglądać i zmieniać parametry i właściwości podmodułów. 7

Rys. 7. Okno ustawień submodułu W zakładce General znajdują się pola nazwy modułu, typ modułu i rozmiar wektora. W zakładce Position można zmienić pozycję modułu, a zakładka Appearance pozwala na zmianę jego wyglądu. 8

Można także zmienić położenie i wygląd modułu bezpośrednio w pliku *.ned. Rys. 8. Moduł komputer w języku NED Zadanie do samodzielnego przygotowania: Wykonaj model topologii NED dla sieci przedstawionej na schemacie. Klient1 CPU serwer dysk Klient2 Rys. 10. Schemat serwera bazodanowego 9