Virtlab:Protokoly/Aktivační server

Z VirtlabWiki

(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
Verze z 13:35, 11. 8. 2007
Dol72 (Diskuse | příspěvky)
(Popis protokolu)
← Předchozí porovnání
Verze z 06:49, 15. 8. 2007
Bam015 (Diskuse | příspěvky)
(uprava komunikacniho protokolu)
Následující porovnání →
Řádka 18: Řádka 18:
=== Pokyn rezervačního serveru aktivačnímu serveru ke znovunačtení databáze === === Pokyn rezervačního serveru aktivačnímu serveru ke znovunačtení databáze ===
-* Příkaz: "kill\n"+* Příkaz: "reload\n"
-* Argument (povinný): "kill:10\n"+
* Odpověď: Návratový kód. * Odpověď: Návratový kód.
Příklad: Příklad:
- kill\n+ reload\n
- kill:10\n+
\n \n
=== Předání seznamu spojení pro konfiguraci od rezervačního serveru aktivačnímu serveru === === Předání seznamu spojení pro konfiguraci od rezervačního serveru aktivačnímu serveru ===
* Příkaz: "linkconf\n" * Příkaz: "linkconf\n"
-* Argument (povinný): resid:''rezervační ID''.dat\n"+* Argument (povinný): resid:''ID rezervace''\n"
* Argument (povinný, opakuje se alespoň jednou): link:''popis_spojení''\n" * Argument (povinný, opakuje se alespoň jednou): link:''popis_spojení''\n"
* Odpověď: Návratový kód. (objeví-li se v resid lomítko, jde o špatnou syntaxi parametrů) * Odpověď: Návratový kód. (objeví-li se v resid lomítko, jde o špatnou syntaxi parametrů)
Řádka 36: Řádka 34:
<pre> <pre>
linkconf\n linkconf\n
-resid:1@koleje.dat\n+resid:1@koleje\n
link:rp@koleje:fastethernet1, rm@koleje:fastethernet1;\n link:rp@koleje:fastethernet1, rm@koleje:fastethernet1;\n
link:ro@koleje:fastethernet1, rp@koleje:fastethernet0;\n link:ro@koleje:fastethernet1, rp@koleje:fastethernet0;\n
Řádka 45: Řádka 43:
=== Pokyn rezervačního serveru aktivačnímu serveru ke zrušení popisu topologií konfigurace === === Pokyn rezervačního serveru aktivačnímu serveru ke zrušení popisu topologií konfigurace ===
* Příkaz: "dellinkconf\n" * Příkaz: "dellinkconf\n"
-* Argument (povinný): delresid:''rezervační ID''.dat\n"+* Argument (povinný): delresid:''ID rezervace''\n"
* Odpověď: Návratový kód. (objeví-li se v delresid lomítko, jde o špatnou syntaxi parametrů) * Odpověď: Návratový kód. (objeví-li se v delresid lomítko, jde o špatnou syntaxi parametrů)
Řádka 51: Řádka 49:
<pre> <pre>
dellinkconf\n dellinkconf\n
-delresid:1@koleje.dat\n+delresid:1@koleje\n
\n \n
</pre> </pre>
- 
- 
- 
-=== Poznámka === 
-Volba příkazu <code>kill</code> a číselných kódů přímo vyplývá ze způsobu realizace oddělení serverů původně komunikujících skrze funkci OS [http://en.wikipedia.org/wiki/Kill_(Unix) kill]. 

Verze z 06:49, 15. 8. 2007

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: "reload\n"
  • Odpověď: Návratový kód.

Příklad:

 reload\n
 \n

Předání seznamu spojení pro konfiguraci od rezervačního serveru aktivačnímu serveru

  • Příkaz: "linkconf\n"
  • Argument (povinný): resid:ID rezervace\n"
  • Argument (povinný, opakuje se alespoň jednou): link:popis_spojení\n"
  • Odpověď: Návratový kód. (objeví-li se v resid lomítko, jde o špatnou syntaxi parametrů)

Příklad:

linkconf\n
resid:1@koleje\n
link:rp@koleje:fastethernet1, rm@koleje:fastethernet1;\n
link:ro@koleje:fastethernet1, rp@koleje:fastethernet0;\n
link:rn@koleje:fastethernet1, ro@koleje:fastethernet0;\n
link:rm@koleje:fastethernet0, rn@koleje:fastethernet0;\n
\n

Pokyn rezervačního serveru aktivačnímu serveru ke zrušení popisu topologií konfigurace

  • Příkaz: "dellinkconf\n"
  • Argument (povinný): delresid:ID rezervace\n"
  • Odpověď: Návratový kód. (objeví-li se v delresid lomítko, jde o špatnou syntaxi parametrů)

Příklad:

dellinkconf\n
delresid:1@koleje\n
\n