ZASTOSOWANIE SYSTEMU CZASU RZECZYWISTEGOW URZA˛DZENIACH DZIAŁAJA˛CYCHW INTERNECIE RZECZY THE APPLICATION OF REAL TIME OPERATING SYSTEM IN THE DEVICES THAT ARE OPERATING IN THE INTERNET OF THINGS DOI:10.15199/59.2016.8-9.19
W artykule zaproponowano zastosowanie minimalistycznego
systemu czasu rzeczywistego do budowy
urza˛dzenia działaja˛cego w Internecie Rzeczy. W artykule
przedstawiono projekt serwera dost˛epowego, który umo˙zliwia
zdalna˛obsługe˛ 16 portów szeregowych oraz steruje 16 liniami
zasilania za pos´rednictwemsieci Ethernet.Wurza˛dzeniu
wykorzystano system operacyjny, dzi˛eki temu oprogramowanie
mo˙zna było podzieli´c na wiele równoległych, komunikuja
˛cych sie˛ mie˛dzy soba˛, zadan´ .
Abstract: In the article application of minimalistic Real Time
Operating System (RTOS) for construction devices that are
working in Internet of Things was proposed. The paper presents
the design of the access server, which allows for remote
operation 16 serial ports and controls 16 power lines
via Ethernet. By using operating system the software consists
of a number of tasks running in parallel and being in close
communication with one another.
1. WPROWADZENIE
Wej´scie na rynek mikrokontrolerów i procesorów
spowodowało rewolucje˛ technologiczna˛ podobna˛ do tej,
jaka powstała po zasta˛pieniu lamp elekronowych przez
tranzystory. Dzi˛eki zastosowaniu procesorów, mo˙zna łatwo
skonstruowa´c sterownik, który do tej pory budowany
były z układów zawieraja˛cych pojedyncze bramki
logiczne. Co wi˛ecej, zbudowane w ten sposób sterowniki
sa˛ znacznie bardziej elastyczne pod wzgle˛dem rekonfiguracji.
Do niedawna w systemach przemysłowych i
amatorskich wykorzystano podobne konstrukcje. Pozwala
to na uproszczenie procesu projektowania i budowy systemów.
Podobne rozwia˛zania wykorzystano w urza˛dzeniach
stosowanych w Internecie Rzeczy [1]. Wiele urza˛-
dze´n oparto na mikrokomputerze i systemie operacyjnym.
Łatwo zauwa˙zy´c, ˙ze z perspektywy mo˙zliwo´sci współczesnych
urza˛dzen´ rozwia˛zanie to jest mało efektywne,
głównie z uwagi na nadmierne - w stosunku do potrzeb -
wykorzystanie procesora i pami˛eci.
Obserwuja˛c trendy rozwojowe urza˛dzen´ projektowanych
do [...]
BADANIA SYMULACYJNE WIELOUSŁUGOWYCH SYSTEMÓW KOLEJKOWYCH SIMULATION STUDIES OF MULTISERVICE QUEUEING SYSTEMS DOI:10.15199/59.2016.8-9.54
W artykule przedstawiony został autorski symulator
wielousługowych systemów kolejkowych. Jest on
modułem wchodza˛cym w skład programu do badania systemów
kolejkowych i słuz˙y do weryfikacji istnieja˛cych oraz
nowo rozwijanych modeli analitycznych systemów tego typu.
W pracy zobrazowano mo˙zliwo´sci symulatora na przykładzie
systemu kolejkowego z dyscyplina˛ obsługi kolejki
cFIFO. Symulator pozwala na obsług˛e dobrze znanych z literatury
przedmiotu strumieni zgłosze ´n typu Poisson, Bernoulli
i Pascal (BPP) a tak˙ze innych, w tym takich, których
parametry zostały otrzymane empirycznie. Prezentowany
symulator pozwala uzyska´c wszystkie parametry badanych
systemów kolejkowych, a modułowa budowa symulatora
umo˙zliwia rozbudow˛e o nowe dyscypliny obsługi kolejek.
Abstract: In this paper the authors presents a simulator of
multiservice queueing systems of their own design. The simulator
is a module of a more elaborate program designed
to investigate queueing systems and is specifically designed
for verification of existing and newly developed algorithms
for modelling systems of this type. The paper identifies key
capabilities of the simulator with an example of a queueing
system with the cFIFO priority queue discipline. The simulator
makes it possible to service a number of call streams,
known from the literature of the subject, such as Poisson,
Bernoulli and Pascal streams (BPP) as well as other streams,
including those in which traffic parameters have been
obtained empirically. The simulator presented in the paper
allows researches to obtain all parameters of queueing systems
under scrutiny, while its module-like structure makes
its development to include new disciplines in queue service
possible.
1. WPROWADZENIE
Przed in˙zynierami odpowiedzialnymi za projektowanie
i optymalizacj˛e współczesnych systemów telekomunikacyjnych
stoi nie lada wyzwanie. Gwałtownie rosna
˛ca liczba urza˛dzen´ korzystaja˛cych z doste˛pu do sieci
ora[...]
ANALIZA MOZ˙ LIWOS´CI ZASTOSOWANIA ALGORYTMÓWSPLOTOWYCH DO MODELOWANIA SYSTEMÓWZ DOWOLNYMI STRUMIENIAMI ZGŁOSZE´N DOI:10.15199/59.2017.8-9.30
W pracach [18, 24] zaproponowano algorytm splotowy
do modelowania wia˛zki pełnodoste˛pnej, która jest
systemem z procesem przyjmowania zgłosze´n niezale˙znym
od stanu. W pracach [7, 8, 9, 10] przedstawiono modyfikacje
˛ algorytmów splotowych umoz˙liwiaja˛cych modelowanie
systemów z procesem przyjmowania zgłoszen
´ zalez˙nym od stanów, takich jak wia˛zka pełnodoste
˛pna z rezerwacja˛ [24], wia˛zka z ograniczona˛ doste˛pno-
s´cia˛ [8], systemów progowych [8] oraz systemów z przelewami
[10]. We wszystkich wymienionych powy˙zej modelach
zastosowanie algorytmu splotowego ograniczono
do modelowania systemów ze skon´czona˛ lub nieskon´-
czona˛ liczba˛ poissonowskich strumieni zgłoszen´. Do tej
pory nie została podj˛eta analiza mo˙zliwo´sci zastosowania
algorytmu splotowego dla innych, ni˙z poissonowskie,
strumieni zgłosze´n.
W pracach [24, 25, 21, 1, 15, 23, 18, 11, 12, 13]
zaproponowano algorytmy rekurencyjne do modelowania
wielousługowych systemów zale˙znych i niezale˙znych od
stanu. Algorytmy te, podobnie jak wcze´sniej przedstawione
algorytmy splotowe, wykorzystywane były tylko
do modelowania systemów, którym oferowane sa˛ klasy
zgłoszen´ z ograniczona˛ lub nieskon´czona˛ liczba˛ poissonowskich
´zródeł.
W pracy [17] zaproponowano model systemu kolejkowego
z dyscyplina˛ obsługi cFIFO, w którym rozwa
˙zono wykorzystania algorytmu splotowego do modelowania
systemów, którym oferowane sa˛ klasy z innymi,
niz˙ wykładniczy, rozkładami opisuja˛cymi czas pomie˛dzy
zdarzeniami. Poniewa˙z model systemu cFIFO jest przybli
˙zony, wi˛ec na podstawie otrzymanych rezultatów nie
mo˙zna jednoznacznie oceni´c wpływu niepoissonowskich
strumieni zgłosze´n na dokładno´s´c modelu.
Jak dota˛d nie dokonano analizy moz˙liwos´ci modelowania
wielousługowej wia˛zki pełnodoste˛pnej (systemu z
procesem przyjmowania zgłosze´n niezale˙znym od stanu),
której oferowane sa˛ niepoissonowskie strumienie zgłosze
´n. Nie zbadano te˙z jaki wpływ ma typ rozkładu, [...]
SYSTEM Z PRZELEWEM RUCHU ORAZ KOLEJKAMI W ZASOBACH PIERWOTNYCH ORAZ WTÓRNYCH DOI:10.15199/59.2018.8-9.23
1. WSTĘP
Systemy z przelewami są jedną z podstawowych
technik optymalizacji wykorzystywania zasobów sieciowych.
Pozwalają na zmniejszanie prawdopodobieństw
blokad występujących w systemie, spełniając
jednocześnie żądane parametry jakościowe niezależnie
od technologii sieci. Aspekt ten pozwolił na rozpowszechnienie
się tej technologii w wielu zastosowaniach
m.in. w sieciach Public Switched Telephone Networks
[2, 6, 33, 36, 37, 39, 44], w sieciach komórkowych 2G,
3G, 4G [5, 11, 23, 28, 29, 38, 41, 42] oraz w sieciach
pakietowych [7, 10, 12].
Podstawowym założeniem tego mechanizmu jest
podział zasobów na dwa typy. Pierwszym z nich są
zasoby pierwotne, zwane także bezpośrednimi, ponieważ
to na nie trafiają zgłoszenia pojawiające się na wejściu
systemu. Zwykle są to zasoby o wysokim wykorzystaniu,
którym ruch oferowany jest z natężeniem powodującym
przekraczanie założonego współczynnika strat dla
systemu. Zgłoszenia, które nie mogą zostać obsłużone w
zasobach pierwotnych, ze względu na poziom ich zajętości
lub politykę przyjmowania zgłoszeń, przekierowywane
są na drugi typ zasobów. Są nimi zasoby o małych
stratach, nazywane wtórnymi lub alternatywnymi. Jeżeli
stan w jakim się znajdują również nie pozwala na obsługę
zgłoszenia, to dopiero wtedy takie zgłoszenie jest
tracone [41, 44].
Początkowo modele systemów z ruchem przelewowym
projektowane były dla jednousługowych, jednokanałowych
hierarchicznych sieci telekomunikacyjnych[
2, 6, 21, 24, 26, 33, 35, 36, 37, 39, 43, 44, 45].
Badania nad systemami z przelewami ruchu wielousługowego
rozpoczęły się wraz z wprowadzeniem sieci z
integracją usług, takich jak ISDN (ang. Integrated Services
Digital Network) lub bezprzewodowy UMTS (ang.
Universal Mobile Telecommunications System0. Wraz z
rozwojem tych sieci rosło także zapotrzebowanie na
dokładne metody analizy wielousługowych systemów
sieciowych z przelewem ruchu [4, 5, 22, 27, 28, 29, 38,
41, 42].
Decyzja dotycząca przyjmowania[...]
Wykorzystanie modelu idealnej wiązki niepełnodostępnej w modelowaniu systemów teleinformatycznych
Wiązki niepełnodostępne [1], [2] charakteryzują trzy parametry:
liczba łączy wejściowych (nazywanych w teorii ruchu grupami
obciążeniowymi), pojemność oraz dostępność. Pojemność
określa całkowitą liczbę zasobów wiązki, natomiast dostępność
tę ich część, która może być zajęta przez zgłoszenia danej grupy
obciążeniowej. Spośród wiązek niepełnodostępnych szczególne
miejsce zajmują tzw. idealne wiązki niepełnodostępne (w skrócie
IWN). Charakteryzuje je ściśle zdefiniowana zależność pomiędzy
parametrami wiązki, tj. pojemnością, dostępnością i liczbą grup
obciążeniowych. Strukturę idealnej wiązki niepełnodostępnej
obsługującej ruch jednousługowy oraz odpowiedni dla niej model
analityczny zaproponował Erlang już w 1917 roku [1]. Jest to
zatem jeden z najstarszych modeli zaproponowanych w dziedzinie
inżynierii ruchu. Wzór dla określenia prawdopodobieństwa
blokady w idealnej wiązce niepełnodostępnej nosi nazwę
interkoneksyjnego wzoru Erlanga EIF (Erlang’s Interconnection
loss Formula). Ze względu na swoją złożoność wiązka ta długo
nie znajdowała praktycznych zastosowań. Dopiero w latach 70.
ubiegłego wieku model IWN zaczęto wykorzystywać do przybliżonego
modelowania innych systemów telekomunikacyjnych [2].
Zauważono bowiem, że charakterystyki większości realizowanych
wówczas w węzłach sieciowych równomiernych wiązek niepełnodostępnych
są zbliżone do charakterystyk wiązek idealnych
i mogą stanowić podstawę do efektywnych aproksymacji wykorzystywanych
w praktyce inżynierskiej. Później model zaproponowany
przez Erlanga zaczęto wykorzystywać do modelowania
jednousługowych pól komutacyjnych. W pracach [3],[4], wzór EIF
zastosowano do modelowania jednousługowych pól komutacyjnych
metodą tzw. efektywnej dostępności. W [5] metodę tę uogólniono
dla jednousługowych pól komutacyjnych obsługujących
połączenia z ruchem rozgałęźnym (multicast traffic). Pojawienie
się sieci wielousługowych ograniczyło możliwości zastosowania
modelu idealnej w[...]
Platforma rozwijania i testowania nowych protokołów rutingu
Nowe protokoły rutingu najczęściej są testowane z wykorzystaniem
specjalistycznych narzędzi symulacyjnych, takich jak
np. NS3. Takie podejście umożliwia prowadzenie testów zachowania
się protokołów w sieci składającej się z bardzo dużej liczby
węzłów. Wiarygodność otrzymanych wyników zależy jednak
od poprawności implementacji samego środowiska testowego.
Otrzymane rezultaty przybliżają efektywność działania nowego
protokołu rutingu. W dalszej fazie rozwijania tego protokołu
konieczna jest jego implementacja i ponowne testowanie.
Implementacja z wykorzystaniem specjalizowanych urządzeń jest
jednak skomplikowana. Wymaga dostępu do API (Application
Programming Interface) danej platformy sprzętowej lub kodu
z oprogramowaniem urządzenia. Konieczne jest zatem podpisanie
specjalnej umowy z producentem. Pojawiają się kłopoty z licencjonowaniem rutingu zaimplementowanego na potrzeby
testu algorytmu. Istnieje możliwość, że z przyczyn prawnych tak
powstała implementacja nie będzie mogła być kodem referencyjnym.
Alternatywą dla implementacji protokołów z wykorzystaniem
dedykowanych urządzeń są rozwiązania typu ruter programowy.
Oprogramowanie takie może działać na fizycznej lub wirtualnej
maszynie. Nie narzuca ono architektury procesora. Do jego
działania wystarczy urządzenie z systemem operacyjnym, np.
Windows, Linux, Free BSD, Solaris.
Testowanie nowo opracowanego protokołu rutingu z wykorzystaniem
rutera programowego stanowi jednak czynność dość
czasochłonną. W każdym węźle konieczna jest instalacja tego
rutera. Każda modyfikacja implementacji algorytmu rutingu wymaga
aktualizacji oprogramowania każdego z węzłów. W przypadku
najprostszej instalacji (bez kompilacji skrośnej) jest to związane
z koniecznością rekompilacji kodu w każdym z węzłów.
Zastosowanie maszyn wirtualnych upraszcza aktualizację
oprogramowania, jednak nie rozwiązuje w pełni problemu. Praca
w sieci wirtualnej nie daje również rzeczywistych rezultatów. Węzły
58 PRZEGL[...]
SPLOTOWY MODEL SYSTEMU KOLEJKOWEGO Z DYSCYPLINA˛OBSŁUGI cFIFO DOI:10.15199/59.2015.8-9.90
W artykule przedstawiono przybli˙zony model systemu kolejkowego
z cia˛gła˛dyscyplina˛FIFO, która umoz˙liwia obsługe
˛ pierwszego zgłoszenia z kolejki z szybkos´cia˛mniejsza˛niz˙
z˙a˛dana. Efektem takiego podejs´cia do obsługi zgłoszen´ jest
bardziej efektywne (w porównaniu z dyscyplina˛FIFO) wykorzystanie
zasobów serwera. W modelu przyj˛eto, ˙ze systemowi
kolejkowemu oferowana jest mieszanina niezale˙znych,
wielousługowych strumieni BPP (Bernoulli-Poisson-
Pascal). Podstawa˛ zaproponowanego modelu jest algorytm
splotowy. Przeprowadzone badania potwierdziły duz˙a˛ dokładno
´s´c proponowanego modelu.
1. WPROWADZENIE
Dynamiczny rozwój sieci telekomunikacyjnych, rosna
˛ca liczba oferowanych usług o s´cis´le zdefiniowanych
parametrach jako´sci obsługi oraz coraz wi˛eksza liczba
uz˙ytkowników sprawiaja˛, z˙e operatorzy sieci wykorzystaja
˛ róz˙ne mechanizmy zarza˛dzania ruchem. Przykładami
takich mechanizmów sa˛ mechanizmy progowe, umoz˙liwiaja
˛ce obsługe˛ ruchu elastycznego i adaptacyjnego. W
przypadku systemów z usługami czasu rzeczywistego konieczne
jest zapewnienie odpowiedniego poziomu opó´znienia
i/lub zmienno´sci opó´znienia (jitter). Analiza takich
systemów nie jest mo˙zliwa bez odpowiednich modeli systemów
kolejkowych uwzgle˛dniaja˛cych ruch wielousługowy.
Niestety, w literaturze przedmiotu opisano niewiele
takich modeli.Wpracy [1] zastosowano model Erlanga C,
zakładaja˛c, z˙e wszystkie klasy zgłoszen´ maja˛ identyczne
charakterystyki i warunki obsługi, w tym identyczna˛pre˛dkos
´c´ bitowa˛. Przyje˛to, z˙e jest to pre˛dkos´c´ tego strumienia,
który ma na najwie˛ksza˛ pre˛dkos´c´ spos´ród wszystkich
strumieni oferowanych systemowi. W innym rozwia˛zaniu
zaproponowano wykorzystanie rekurencyjnego wzoru
dla pełnodost˛epnych wielousługowych systemów z ruchem
elastycznym [2], [3]. W modelu tym zakłada si˛e,
˙ze wszystkie strumienie obsługiwanego ruchu - w przypadku
braku wolnych zasobów w systemie - be˛da˛ kompresowane,
co[...]