Virtlab:Protokoly/Aktivační server

Z VirtlabWiki

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

Tento článek popisuje komunikační prokokol mezi rezervačním a aktivačním serverem distribuovaného Virtlabu.

Obsah

Vlastnosti

  • Textově orientovaný protokol.
  • Textové příkazy, oddělené <LF> (0x0A), (symbol <CR> (0x0D) je ignorován)
  • Komunikace přes TCP spojení, standardně na portu 50002.
  • Pro názvy příkazů a jména argumentů nerozlišuje velká a malá písmena (case insensitive).
  • První řádek a každý další první po prázdném řádku určuje příkaz, následující řádky jeho argumenty.
  • Na pořadí argumentů nezáleží a jsou case-insensitive.
  • Za názvem argumentu je dvojtečka, za kterou ihned nasledují jeho parametry, za dvojtečkou nesmí být mezera.
  • Bílé znaky (whitespace), jako tabelátory (0x09), mezery (0x20) nejsou povoleny, slouží jako oddělovače. parametrů pro argumenty. Výjimku tvoří mezery a tabelátory před názvem příkazu a argumentu. Tyto jsou odfiltrovány.
  • Odeslání prázdného řádku (jen <LF> (0x0A)), potvrdí, že všechny argumenty byly odeslány a je možno zpracovat příkaz.
  • Po odeslání prázdného řádku je možno psát další příkaz.
  • Spojení ukončeno vždy na žádost klienta, mimo speciální případy, kdy rezervační server přijímaným datům nerozumí, nebo je klient připojen příliš dlouho.
  • Při odpovědi serveru na příkaz je na prvním řádku návratový kód, mezera a za ní popis odpovědi.

Popis protokolu

Pokyn rezervačního serveru aktivačnímu serveru ke znovunačtení databáze

  • Příkaz: "kill\n"
  • Argument (povinný): "kill:10\n"
  • Odpověď: Návratový kód.

Příklad:

 kill\n
 kill:10\n
 \n

Pokyn rezervačního serveru aktivačnímu serveru k ukočení činnosti

  • Příkaz: "kill\n"
  • Argument (povinný): kill:15\n"
  • Odpověď: Návratový kód.

Příklad:

 kill\n
 kill:15\n
 \n


Poznámka

Volba příkazu kill a číselných kódů přímo vyplývá ze způsobu realizace oddělení serverů původně komunikujících skrze funkci OS kill.