Virtlab:Konfigurační server

Z VirtlabWiki

(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
Verze z 11:21, 25. 11. 2007
Gry72 (Diskuse | příspěvky)

← Předchozí porovnání
Aktuální verze
Gry72 (Diskuse | příspěvky)
(Konfigurace)
Řádka 1: Řádka 1:
== Funkce a konfigurace == == Funkce a konfigurace ==
-Konfigurační server přijme přes TCP spojení nejprve jméno spojovacího prvku, do kterého se má uploadovat v TCP spojení následně předaný obsah. Obsah uloží do pomocného souboru a podle své konfigurace ze jména spojovacího prvku zjistí device (/dev/ttyX) nebo IP adresu a port, kam se má konfigurace poslat. Pak spustí pomocný externí uploadovací program, kterému předá jméno pomocného souboru s obsahem a jméno device, resp. IP adresu a port, přes které se konfigurace do příslušného spojovacího prvku uploaduje.+Konfigurační server přijme přes TCP spojení nejprve jméno spojovacího prvku, do kterého se má uploadovat v TCP spojení následně předaný obsah. Obsah uloží do pomocného souboru a podle své konfigurace ze jména spojovacího prvku zjistí device (/dev/ttyX) nebo IP adresu a port, kam se má konfigurace poslat. Pak spustí pomocný externí uploadovací program '''upload-conndevice-cfg''', kterému předá jméno pomocného souboru s obsahem a jméno device, resp. IP adresu a port, přes které se konfigurace do
 +příslušného spojovacího prvku uploaduje.
 + 
 +Syntaxe parametrů příkazové řádky upload-conndevice-cfg:
 + 
 + upload_conndevice_cfg <jmeno_souboru_ovladace_com_portu>|<ip_addr>:<port> <jmeno_souboru_pro_upload> <ms_mezi_znaky>
Protože požadavky na úpravy konfigurace spojovacích prvků (spojení/rozpojení topologie) lokality obsluhované konfiguračním serverem mohou přicházet z mnoha lokalit asynchronně, musí je konfigurační server serializovat. Je tedy pouze 1-vláknový a obsluhuje naráz jen jediného klienta (upload skripty spuštěné CRONem). Upload skripty proto musí být napsány tak, aby při navazování spojení s konfiguračními servery byly schopny pár desítek sekund počkat, je-li obsazeno. Reálně by upload konfigurací neměl trvat déle než desítky sekund (přenos do tunelovacího serveru jde přes TCP a měl by být prakticky okamžitý, přenos do ASSSK vyžaduje z implementačních důvodů ASSSK 100ms pauzy mezi znaky, avšak konfigurace jsou krátké, typicky ne více než 8 řádků (pro 16-portový ASSSK) po cca 10 znacích). Protože požadavky na úpravy konfigurace spojovacích prvků (spojení/rozpojení topologie) lokality obsluhované konfiguračním serverem mohou přicházet z mnoha lokalit asynchronně, musí je konfigurační server serializovat. Je tedy pouze 1-vláknový a obsluhuje naráz jen jediného klienta (upload skripty spuštěné CRONem). Upload skripty proto musí být napsány tak, aby při navazování spojení s konfiguračními servery byly schopny pár desítek sekund počkat, je-li obsazeno. Reálně by upload konfigurací neměl trvat déle než desítky sekund (přenos do tunelovacího serveru jde přes TCP a měl by být prakticky okamžitý, přenos do ASSSK vyžaduje z implementačních důvodů ASSSK 100ms pauzy mezi znaky, avšak konfigurace jsou krátké, typicky ne více než 8 řádků (pro 16-portový ASSSK) po cca 10 znacích).
-=== Non-urgent TODO ===+'''Na dokončení uploadu souboru do spojovacího prvku (ukončení běhu upload-conndevice-cfg z forkovaného procesu Konfigurační server čeká (waitpid()).'''
 + 
 +==Konfigurace ==
 +* Server se spouští s parametrem IP adresy rozhraní, na které má poslouchat (veřejná adresa dostupná ostatním lokalitám).
 +* [[Virtlab:Konfigurační soubory/uploads.conf | Konfigurační soubor]] - společný s Mazacím serverem.
 + 
 +== Protokol konfiguračního serveru ==
 +[[Virtlab:Protokoly/Konfigurační server]]
 + 
 +== Non-urgent TODO ==
* Do protokolu doplnit autentizaci klienta (nemá smysl aktuálně řešit s ohledem na plánované přepracování při přechodu na Spojovač verze 3). * Do protokolu doplnit autentizaci klienta (nemá smysl aktuálně řešit s ohledem na plánované přepracování při přechodu na Spojovač verze 3).
Řádka 12: Řádka 26:
[[Kategorie:Server]] [[Kategorie:Server]]
[[Kategorie:Konfigurační server]] [[Kategorie:Konfigurační server]]
-[[Kategorie:UNCOMPLETE]] 

Aktuální verze

Obsah

Funkce a konfigurace

Konfigurační server přijme přes TCP spojení nejprve jméno spojovacího prvku, do kterého se má uploadovat v TCP spojení následně předaný obsah. Obsah uloží do pomocného souboru a podle své konfigurace ze jména spojovacího prvku zjistí device (/dev/ttyX) nebo IP adresu a port, kam se má konfigurace poslat. Pak spustí pomocný externí uploadovací program upload-conndevice-cfg, kterému předá jméno pomocného souboru s obsahem a jméno device, resp. IP adresu a port, přes které se konfigurace do příslušného spojovacího prvku uploaduje.

Syntaxe parametrů příkazové řádky upload-conndevice-cfg:

upload_conndevice_cfg <jmeno_souboru_ovladace_com_portu>|<ip_addr>:<port> <jmeno_souboru_pro_upload> <ms_mezi_znaky>

Protože požadavky na úpravy konfigurace spojovacích prvků (spojení/rozpojení topologie) lokality obsluhované konfiguračním serverem mohou přicházet z mnoha lokalit asynchronně, musí je konfigurační server serializovat. Je tedy pouze 1-vláknový a obsluhuje naráz jen jediného klienta (upload skripty spuštěné CRONem). Upload skripty proto musí být napsány tak, aby při navazování spojení s konfiguračními servery byly schopny pár desítek sekund počkat, je-li obsazeno. Reálně by upload konfigurací neměl trvat déle než desítky sekund (přenos do tunelovacího serveru jde přes TCP a měl by být prakticky okamžitý, přenos do ASSSK vyžaduje z implementačních důvodů ASSSK 100ms pauzy mezi znaky, avšak konfigurace jsou krátké, typicky ne více než 8 řádků (pro 16-portový ASSSK) po cca 10 znacích).

Na dokončení uploadu souboru do spojovacího prvku (ukončení běhu upload-conndevice-cfg z forkovaného procesu Konfigurační server čeká (waitpid()).

Konfigurace

  • Server se spouští s parametrem IP adresy rozhraní, na které má poslouchat (veřejná adresa dostupná ostatním lokalitám).
  • Konfigurační soubor - společný s Mazacím serverem.

Protokol konfiguračního serveru

Virtlab:Protokoly/Konfigurační server

Non-urgent TODO

  • Do protokolu doplnit autentizaci klienta (nemá smysl aktuálně řešit s ohledem na plánované přepracování při přechodu na Spojovač verze 3).
Osobní nástroje