DAMA protokoll

Innen: HamWiki
Ugrás a navigációhoz Ugrás a kereséshez

DAMA - Egy módszer a csomagrádió hálózat ütközéseinek elkerüléséhez

Hegytetőn található csomagrádiós átjátszók (node-ok) esetén egyre nagyobb problémát okozott, hogy a ezeket a node-ot több irányból egyidejűleg szólították meg olyan állomások, amelyek egymást a domborzati viszonyok miatt nem hallhatták. Ez csomagütközést, ezáltal a már félig átjuttatott adatcsomag elveszítését okozták. Szerencsére a CSMA véletlenszerű elérésének köszönhetően nem lehetetlenítette el a kapcsolódást, de forgalmas átjátszók esetén igen komoly csomagvesztéshez és a válaszidő rendkívüli megnövekedéséhez vezetett.

Erre a problémára kínál megoldást a DAMA (Demand Assigned Multiple Access) nevű megoldás, amely arra épít, hogy a központi szerepet játszó node mindenkivel képes kommunikálni, ezáltal ha a torony periodikusan szólítja a rá csatlakozó többi node-ot, amely node-ok csak akkor szólalnak meg, ha megszólítják őket, akkor a csomagütközések és a vele járó kellemetlenségek elkerülhetők.

Ez nem új probléma ...

Számos különféle kísérlet született az amatõr packet rádió e dilemmájának legyõzésére. Egy lehetséges esetnek mutatkozik a full duplex digipeater (BTMA) használata, de számos hátránya van ennek a megközelítésnek. Full duplexben a hardver költsége magasabb és a rendszer két frekvenciát foglal le, de csak egyen valósítja meg a maximális eredményt. A legjobb megközelítés a hatásfok növelésére a csomagütközések csökkentése egycsatornás rendszeren, mintsem a terhelés kiterjesztése két csatornára. Ez ideális lenne, ha tudnánk olyan rendszert készíteni, ami csak minimális szoftvercserét jelentene (mint pl. EPROM csere a TNC-ben) vagy néhány mûködési paraméter megváltoztatását.

Az egyik módszer, amivel megkísérelhetjük megoldani a problémát mialatt egyetlen frekvenciát használunk: a DAMA (Demand Assigned Multiple Access).

A módszer lényege

A kapcsolat-orientált protokollban egy felhasználó a master-hez próbál csatlakozni ALOHA módszerrel (csatorna hozzáférés koordináció nélkül). Csomagütközések elofordulhatnak ebben a fázisban, de ez elviselhetõ, mivel relatíve ritkán van ilyen. Ha egyszer a kapcsolatfelvételi kérelmet a master veszi, a hívó állomás azonosítója hozzáíródik egy listához, és ettõl a ponttól a master vezérel minden csatlakozott állomást. A felhasználó csak akkor kezdheti adását, ha a master-tõl "engedélyt" (poll) kap. Egy engedély több keret küldését is megengedheti egy blokkban. Ha az állomás nem válaszol egy bizonyos idon belül (kb. 1/2 sec.), a master körbeadja az engedélyt a többi állomásnak, és mikor végzett, visszatér az elsõhöz és ad neki egy újabb esélyt.

Másrészrol, ha az állomás (slave) veszi a poll-t és I-kerettel válaszol, a master nem nyugtázza azt, míg újra rá nem kerül a sor a többi aktív állomás kiszolgálása után. Ha a master megszólítja az állomást, és az üres kerettel válaszol (Receive Ready), a master csökkenti az állomás prioritását a sorban, és a következõ körben nem fogja megszólítani.

Amint nõ az aktivitás a frekvencián, az inaktív állomások prioritása tovább csökken, de mikor ezek az állomások I-kerettel válaszolnak, visszakapják eredeti prioritásukat. A protokoll különbözo fázisai külön részletezve.

Kapcsolatfelvétel folyamata

Mikor a NODE megkísérel hívni egy állomást, a NODE a jegyzékéhez veszi az állomás azonosítóját (ID), és elkezdi küldeni a SABM-kereteket. Ha bizonyos számú kísérlet után nem érkezik UA-keret, azt jelenti, hogy az állomás nem mûködik, és lekerül a listáról.

Ha egy új állomás kezdeményez hívást a NODE felé, megkezdi a SABM-keretek küldését a master-nek egyszeru CSMA módszerrel, amit manapság használunk. Ütközések elofordulhatnak ebben a fázisban, így szükséges lehet a SABM-keretek többszöri ismétlése, amíg a NODE UA-val nem válaszol. Ha a NODE egyszer felismerte a hívási kísérletet, az állomásazonosító (ID) fel- kerül a listára és a NODE (master) mostantól vezérli a rajta lévõ állomásokat. Miután az állomás SABM-et küldött és a NODE UA-val válaszolt, a hívó válaszként küld egy RR0-t, hogy jelezze a NODE-nak, sikeresen vette az UA-t.

Idle (tétlen) állapot

Amíg nincs információ áramlás a NODE és az állomás között (idle), a NODE RR kereteket küld egy számlálónak megfelelöen. Ha a válasz az állomás felol csak egy RR#, az idõ a következõ RR-ig meghosszabbodik, megelozendõ a felesleges csatornaterhelést. A pontos idõlépték a teljes csatorna aktivitástól függ.

Ha más állomás által a NODE-on az információátvitel nagy (az elküldött I-keretek számától függõen), akkor egy kis idõ mindig hozzáadódik az inaktiv állomás megszólítási gyakoriságához, így az csak nagyon kis aktivitást okoz a csatornán. Így, ha a frekvencia lényegében tiszta, a várakozási idõ a minimumra csökken, a csatorna hatásfoka nem romlik. Ez az alapelve a DAMA önszabályozó mechanizmusának, ahol a csatorna mindig szabályozott a lehetséges maximális hatásfok biztosítására.

Ha a NODE nem vesz RR-keretet az állomástól, a poll listán következõ más állomásokat szólítja meg. Miután a NODE minden listán szereplõ állomást kiszolgál, a kör végén ismét próbálkozik. Ha egy bizonyos számú poll küldése után ez az állomás még mindig nem válaszol, a NODE használaton kívülinek tekinti és a listájáról leveszi. Ez hasonlít a ma használatos CSMA módszerhez.

Adatáátvitel: NODE-tól a felhasználó felé

Nincs különbség ebben az esetben a szokványos CSMA és a DAMA között, mivel a NODE kezdeményezi az átvitelt egy vagy több I-keret adásával vagy az állomás megszólításával. A felhasználó közvetlenül nyugtázhatja az I-kereteket egy RR#- kerettel, de küldheti a saját I-keretét is.

Adatátvitel: felhasználótól a NODE felé

Ahogy az elõbb láttuk, a NODE megszólítja a felcsatlakozott állomásokat, és azok nem válaszolhatnak mindaddig, amíg nem õket szólították meg, illetve amíg nem kapnak I-keretet a NODE-tól. Ekkor viszont valamilyen választ kell adniuk, még ha az RNR#- keret is. Ha a NODE nem veszi a választ az állomástól (pl. ütközés miatt), a következo, listán szereplõ állomást szólítja meg.

Ez a módszer mindig megvárja az adással a poll-t: ez a lényege a csomagütközés elkerülésének egymást nem "látó" (rejtett) állomások esetén. Ez a fõ különbség a szokványos CSMA módhoz képest, ahol több állomás is adásra kapcsolhat egy- idejüleg. Ezzel a holtidõ-ütközés problémája is megoldott. A holtidõ az a periódus, amitol a TNC felismeri, hogy szabad a csatorna és elkezdi az adást, addig, amíg a többi TNC felismeri a vivõjét. A DAMA használatával a NODE nem nyugtázza a vett I-kereteket azonnal. E helyett elöször kiszolgálja a többi felcsatlakozott állomást, aztán tér vissza egy RR#- keret küldésével, ami egyben a poll (engedély) is egyben. Ez a poll azt jelenti: "van még küldenivalód számomra ?".

Kapcsolat bontása

Ha a master meg kívánja szakítani a kapcsolatot, DISC-keretet küld az állomás felé. Az állomás rögtön UA-val válaszol. Ha a NODE nem vette az UA-t és újra küldi a DISC-et, az állomás DM-kerettel válaszol. Ez egyébként ugyanígy történik a CSMA esetében is.

Ha az állomás kívánja megszakítani a kapcsolatot, meg kell várnia a DISC küldésével, míg a master meg nem szólítja.

UI-keretek kezelése

A CSMA-ban éppúgy, mint a DAMA-ban az UI-keretek speciálisan kezeltek. Ezek a keretek használatosak információk átvitelére a szabályos protokoll mellett. Normális esetben UI-keret sohasem küldhetõ a felhasználótól a NODE felé, és nem jó szokás a NODE felmenõ frekvenciáján direkt QSO-kkal UI-kereteket küldeni. Mégis, ellentétben a duplex rendszerekkel ez lehetséges, így ezek az UI-keretek csökkenthetik a CSMA hatásfokát. A NODE által küldött UI-keretekkel nincs gond, mivel minden állomás veszi azokat. Egyéb protokoll-elemek

Nem érintettünk minden AX.25 elemet, csak amelyek speciális jelentoségûek a DAMA számára. Többségük megtartotta eredeti jelentését. A DM, RNR, REJ, stb. ugyanúgy használatos, mint elõbb. Az egyedüli eltérés az egyszerü CSMA-hoz képest az, hogy az adásuk csak a master (NODE) engedélyével (poll) történhet. A NODE csak akkor küldi ezeket a kereteket, ha minden, listáján szereplõ állomást kiszolgált a sorrendjüknek megfelelõen.

A DAMA és a CSMA kompatibilitása

A DAMA teljes elönye a NODE és a felhasználó master/slave (mester/szolga)viszonyú muködésével érhetõ el. Amíg a felhasználók TNC-je alkalmas mind a normál, mind a DAMA mód használatára, marad egy kérdés: hogy mondható meg az állomásnak, hogy kapcsoljon DAMA módra? Ennek számos esete van: A protokoll verzió automatikus detektálása a protokoll azonosító byte vagy a foglalt SSID-bit értelmezésével (ajánlott mód). Csatorna-specifikus paraméterek alkalmazása, melyek a protokoll verziót meghatározzák. Új UPLINK parancs használata a meglévö CONNECT mellett. További protokoll-elem alkalmazása, mint egy SABM-keret (hasonlóan az X.25-höz), így a hívási idõszakban a NODE tudja figyelmeztetni az állomást a más protokollra.

Az elsõ eset elegendõ, hogy az állomást egyszer DAMA módba kapcsoljuk, mégpedig a connect ideje alatt. Ez az állapot aztán fennmarad a DISCONNECT-ig. Mivel nincs PID mezõ a SABM-keretben, az információ más úton, a NODE SSID címmezejének 5., rejtett bitjének használatával jut el az állomásig.

Következtetés

A meglévõ AX.25 verzió 1982-ben lett bevezetve, amikor a csomagrádió még nem volt olyan széles körben elterjedt, mint ma. A legtöbb állomás a kezdetekben meglehetõsen egyenlõ volt, és nem volt megkülönböztetés a DTE és DCE funkciók között. Ma a hálózati csomópontok DCE funkcióban mûködnek, figyelembe véve a vezérlési és információ-csere szempontokat. Ezek a funkciók jobban kiszolgáltak a DAMA bevezetésével.

A DAMA egy lehetõség a rendszerösszeomlás megelõzésére, ami a csatorna túlterheltségébõl következhet, használatával a hatásfok folyamatosan növekszik a lehetséges maximumig.

Erõsen "szociális" megfontolásból jött létre a DAMA, amelyben a gyenge jelû állomások is megbízhatóan tudnak dolgozni, a NODE-hoz közeli állomások általi elnyomás nélkül.

Lehetséges direkt kapcsolat létrehozása is más amatorökkel a felmenö frekvencián, eltéroen a duplex rendszerektöl. Minden protokoll-elem megtartja eredeti jelentését, ami mindkét verziójú rendszer használatát lehetõvé teszi ugyanazon frekvencián, míg a hatásfok növekedése egyre több felhasználót csábít át az új rendszerre...


Összeállította és a fordítást készítette: HG3FHH, Gábor. Eredeti szerzõ: Detlef J. SCHMIDT, DK4EG