Protokol PPP slouží k propojení 2 bodů IP sítě po sériové lince ve formátu IPGW. Poskytuje podobné pracovní režimy jako kanál Ethernet v MR25ET.
Viz také článek Ethernet v dokumentu MORSE Firmware dostupný na www.racom.eu, kapitola Software / Service Terminal / MORSE Firmware-Dokumentace / Ethernet.
2. Formát dat
Data protokolu PPP obsahují IP datagram opatřený návěštím PPP:
| ppf/8 | lch/8 | IP datagram | fcs/16 | ppf/8 | 7E 21 ........... .... 7E
kde je:
ppf flag PPP 21 LCP header IP datagram (zabalený do escape sekvence) informativní popis je v článku: "Format of UDP datagram IPGW for Morse" fcs frame check sequence (kontrolní součet PPP)
Příklad dat PPP protokolu:
|ppf|lch| IP header | UDP header 7E 21 4500 0036 000F 4000 4011 B814 C0A8 00A1 C0A8 00A2 22B8 22B8 0022 | pseudoframe | FA55 D000 0000 690F 12A2 690F 12A1 0E09 690F 12A2 690F 12A1 AAAA C5D7 | fcs | ppf | 083C 7E
Viz – RFC-1661, RFC-1662
– Formát UDP datagramu IPGW pro MORSE
3. Implementace protokolu v systému MORSE
Protokol PPP umožňuje komunikaci ve třech režimech:
3.1. Retranslace přes IP, to je M-IP-M
Paketu v síti MORSE je vložen do jeho trasy úsek vedený po IP síti. Používá se například při dohledu na vzdálenou síť MORSE (na jiném kontinentu).
\|/......\|/ _|_ _|_ _____ ________ | | | |Net | PPP | | | |___| |___|.........|_____|.................|________|... SCC0 serial line router : M-IP-M : : ..............( Internet )..............: : \|/......\|/ : ________ _____ _|_ _|_ : | | | PPP |ret | | | | :...|________|................|_____|.......|___| |___| router serial line SCC0 M-IP-M
Konfigurace
- síťový výstup nódu (Net) jde na SCC s protokolem PPP
- retranslační výstup SCC (ret) jde na nód
Paket vystupující z nódu sítě MORSE je opatřen MORSE adresou „to“ a síťovým výstupem nódu se dostane na SCC kanál. Zde je mu přidělena IP adresa nalezená v tabulce (A)rt podle jeho adresy MORSE „to“. Pak je paket zabalen do UDP datagramu, jsou připojeny flagy PPP a kontrolní součet a paket je odeslán po sériové lince do routeru.
V cílovém routeru (IP hostu) je provedena kontrola, zda je zde definována cesta IP sítí také opačným směrem. Pokud ne, je paket odmítnut (REJ), pokud ano, je z přijatého paketu odstraněn UDP obal. Takto získaný původní MORSE paket se přes retranslační výstup SCC dostane do nódu MORSE s adresou „to“, odtud dále pokračuje sítí MORSE.
3.2. IP2MORSE, to je IP-M-IP
Paketu v síti IP je vložen do jeho trasy úsek vedený po síti MORSE. Používá se například pro přístup na Internet prostřednictvím sítě MORSE.
\|/......\|/....... _______ _____ _|_ _|_ : | | | PPP |user | | | | : ( Internet )....|_______|...........|_____|........|___| |___| : router serial line SCC0 : IP-M-IP : \|/....... -> <- ...............: _|_ _____ ______ MORSE network | |user | PPP | | PC | |___|.........|_____|...........|______| SCC0 serial line IP-M-IP
Konfigurace
- uživatelský výstup nódu (user) jde na SCC s protokolem PPP
- uživatelský výstup SCC (user) jde na nód
IP adresa paketu přicházejícího z IP sítě se hledá v tabulce (I)PArt.
- Pokud je nalezena, je příslušná gw použita jako MORSE adresa destination.
- Není-li nalezena a pokud souhlasí s vlastní IP adresou v rozsahu masky (m)ask, pak je adresa MORSE dest sestavena z vlastní adresy MORSE a dolní části IP adresy v rozsahu (m)ask.
- V ostatních případech se použije default gw z tabulky (I)PArt.
V cílovém nódu MORSE trasy je paket user výstupem odeslán na SCC kanál. Odstraní se MORSE obal a paket UDP je odeslán na sériovou linku.
3.3. Morse Applicaton Server MAS, to je M-MAS-IP
MAS zprostředkovává komunikaci mezi několika aplikacemi v připojené síti LAN a sítí MORSE.
| MorseDst <---------------------------| |dst MorseDst | ____ | | MORSE | |APor| <---| |src AppPort network | | | to | | __V______ |<--IPMas| \|/. |"dest" < (s)Art < "gw"= |....|....| | port | _|_ . <--| | ^ | 8888 | | | . | V ______|__ | | |___| . | MorseSrc | IPA|ddr | <---| |src IPAddr . . IPMas IPAddr \|/.....\|/ port8888 ____ _____ _|_ __|__ _____ ___ | |.AppPort..|_____| | | | |<...u| | | | | | _____ |___| | | | PPP | | |..(LAN)..| PC |...port2..|_____| | ->L>|u...>|_____|...........|___| | | _____ |_____| SCC0 async link |____|...port3..|_____| . CU MAS router appli- . cations . \|/ | MorseSrc --------------------------->| |src MorseSrc _|_ | ____ | | | | -->| |APor| --->| |dst AppPort |___| | ^ | from | | __|______ |-->IPMas| |"dest" > (s)Art > "gw"= |....|....| | port | | ^ | | 8888 | | | ______V__ | | | MorseDst | IPA|ddr | --->| |dst IPAddr
Ve schematu uprostřed je znázorněna HW trasa. Vlevo je síť MORSE, ze které přicházejí pakety do centrální CU s protokolem PPP a nakonfigurovaným MAS. Odtud asynchronní linkou do routeru, který je přes LAN (ne však přes WAN nebo Internet) propojen s počítačem PC. Na jeho portech pak běží různé aplikace, které touto cestou komunikují se stanicemi sítě MORSE.
V horní části schematu je naznačeno zpracování adres cestou z aplikace do sítě MORSE. Paket vyslaný z aplikace nese cílovou adresou MorseDst, která je beze změny použita v MORSE paketu vyslaném z CU. Dále je paket opatřen zdrojovou IP adresou IPAddr a číslem portu AppPort. Paket s touto sadou údajů je odeslán na port 8888 MORSE Aplikačního serveru IPMas. Zde je níže popsaným postupem z AppPort a IPAddr vytvořena zdrojová adresa MorseSrc. Paket vybavený adresami MorseDst a MorseSrc je pak vyslán do sítě MORSE.
Tuto adresu MorseSrc pak použije cílová MORSE stanice k odeslání odpovědi do MAS, viz dolní část obrázku. Adresa MorseSrc přijatého paketu projde přímo, z adresy MorseDst jsou vytvořeny dst AppPort a dst IPAddr, na které je odpověď doručena, viz další popis.
Funkce MAS se dá také přiblížit na provozu monitorovacího systému RANEC. Zde je obvolávaná síť Morse spojena přes CU ve funkci MAS se sítí LAN, ke které je připojen počítač RANEC server se šesti aplikacemi (démony). Démoni volají postupně na body sítě Morse přes MAS, který každému paketu, který odchází od démona do sítě, přidělí jeho MORSE adresu source. Na tyto adresy pak přijdou odpovědi ze sítě a funkcí "multiaddressing" (znázorněno pomocí ->L> ) se všechny tyto odpovědi vyšlou z nódu user portem na MAS. Ten je podle těchto adres, dříve source nyni dest, rozdělí po síti LAN příslušným aplikacím.
Konfigurace
- uživatelský výstup nódu jde na SCC s protokolem PPP
- uživatelský výstup SCC jde na nód
- zapneme funkci Multiaddressing (Ne, 1MLo)
IP paket vysílaný z aplikace na bod MORSE sítě je opatřen IP adresou MAS serveru a číslem portu 8888 dec. V MAS se ze zdrojové IP adresy a čísla portu aplikace sestaví položka gw:
- číslo portu vysílající aplikace vytvoří 16 MSB (Most Significant Bits) položky gw
- 14 LSB (Least Significant Bits) IP adresy aplikace vytvoří 14 LSB položky gw. Těchto 14 bitů tvoří adresní prostor sítě LAN, ve kterém se můžeme pohybovat.
- 15. bit je 0, v případě broadcastového paketu je 1
- 16. bit je rezervován pro funkci automatického přidělování adres
Podle gw je v (s)Art nalezena adresa Morse. Tato adresa je v sestavovaném paketu MORSE použita jako adresa source, adresa destination je již obsažena v přicházejícím IP paketu. Takto vytvořený paket MORSE je přes user výstup SCC odeslán do nódu a dále do sítě MORSE.
Paket ze sítě MORSE s dest MORSE adresou některé z aplikací přijde do nódu, odkud je funkcí Multiaddressing vyslán přes user port na MAS. Zde je v tabulce (s)Art podle MORSE adresy aplikace nalezena položka gw, ze které se vytvoří IP adresa a číslo portu:
- 18 MSB z adresy IPMas doplněno o 14 LSB z gw vytvoří IP adresu
- 16 MSB z gw definuje číslo portu aplikace
Paket je odeslán po síti LAN na aplikaci, která běží na této IP adrese a portu.
3.4. Příklady komunikace
Příklad průchodu paketu v režimu M-IP-M. Z nódu na SCC jsou vyslána data AAAA, z SCC je pak vyslán rámec PPP:
>> 06:07:18.674 OUT 2 node (1): 690F110E 690F1109 |0809 0| AAAA 06:07:18.677 tx 59 | S01 7E21 4500 0036 0000 4000 4011 B94F C0A8 0009 C0A8 000E 22B8 22B8 0022 E708 D000 0000 690F 110E 690F 1109 0809 690F 110E 690F 1109 AAAA E6A8 4885 7E
Pokud neprobíhá komunikace, je každých 20 sec vyslán udržovací rámec:
06:07:31.842 tx 14 | S01 7EC0 2109 0100 0800 0000 00C7 437E 06:07:52.340 tx 14 | S01 7EC0 210A 0100 0800 0000 0017 C97E
Další příklady viz předcházející odstavce.
4. Nastavení parametrů protokolu
Uspořádání parametrů v menu Setru:
PPP parameters: Wanted options: (L)oc IP:C0A80009h 192.168.0.9 (R)mt IP:C0A8000Eh 192.168.0.14 Got options: C0A80009h 192.168.0.9 C0A8000Eh 192.168.0.14 mr(u):1500 (h)ayes simulator:OFF LCP m(a)gic:ON obsolete LCP ma(G)ic (sv465..sv479):OFF (F)lags:0 IPG(W) (q)uit >>W (L)oc IP - IP adresa lokálního konce PPP linky (R)mt IP - IP adresa vzdáleného konce PPP linky Do protokolu stačí vložit (L) a (R) na jedné straně linky, protější protokol PPP tato data získá při navazování spojení protokolem LCP. Podobně je možno vložit na každé straně jen (L) nebo jen (R). Got options - IP adresy získané při navazování spojení protokolem LCP. Tyto adresy se pak objevují ve vysílaném paketu. mr(u) - max. délka přenášeného paketu po fragmentaci, max.1600 (h)ayes simulator - emuluje funkci telefonního modemu při komunikaci počítače s IP sítí prostřednictvím kanálu MORSE LCP m(a)gic - zapnutí funkce vyjednávání magického čísla, nastavuje se ON obsolete LCP ma(G)ic - nepoužívá se (F)lags - rezerva, 0000 IPG(W) - otevírá menu parametrů pro IPGW. Parametry jsou společné s parametry kanálu Ethernet a jejich funkce je popsána v popisu Setru, tedy v materiálu "Morse Firmware Dokumentace" dostupném na www.racom.eu, kapitola Software / Service Terminal / MORSE Firmware-Dokumentace.
Příklad parametrů IPGW:
INTERNET PROTOCOL GATEWAY: M-IP-M: (A)rt:1 (r)epeats:0002 (t)imeout:500 (p)roxy timeout:0s (f)rag size:400bytes (g)lue (append) up to:0packets IP-M-IP: (I)PArt:0 (m)ask:00000000 IP(F)rag. size:552 MAS: (s)Art:0 (B)ase:00000000 (M)ask:00000000 BEWARE! IF YOU CHANGE CONTENT OF THE ART TABLE, YOU SHOULD RESTART (INIT) THIS PROTOCOL!(P)inger (S)tatus (q)uit >>