Virtlab:Konfigurační server

Z VirtlabWiki

Přejít na: navigace, hledání

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