Virtlab:Protokoly/Konfigurační server
Z VirtlabWiki
Protokol konfiguračního serveru
Klient předává přes port 60001/tcp:
- Příkaz UPLOAD
- Název spojovacího prvku (tunserver, ASSSK, dříve VL-MUX C3550) jako parametr příkazu upload oddělený mezerou
- obsah souboru, který se má do prvku uploadovat
Po navázání spojení klienta zašle textový řádek s příkazem UPLOAD <jméno-spojovacího-prvku>. Řádek je ukončen LF, pokud mu předchází CR, pak se ignoruje.
Nepříjde-li takto formátovaný řádek, server ohlásí chybu a uzavře spojení. Hlavička požadavku je dále ukončena prázdným řádkem ([<CR>]<LF>).
Následují data od klienta (obsah souboru pro upload do spojovacího prvku), která server nijak neinterpretuje a pouze bufferuje v pomocném souboru pro následné překopírování do příslušného spojovacího prvku. Mohou tedy např. obsahovat i prázdné řádky. Ukončení dat klient signalizuje polovičním (half-close) uzavřením TCP spojení (aby mohl přečíst odpověď od serveru, až upload doběhne). Program pro obsluhu kopírování do spojovacího prvku podporuje příkazy {WAIT sec}, {ENTER} a {^Z}.
Server následně provede upload a po jeho skončení nebo v okamžiku chyby zašle klientovi chybový kód a uzavře druhou polovinu spojení. Odpověď může chvíli trvat (čeká se na dokončení uploadu).
Příklad:
UPLOAD tunserver@ostrava redir 1 2 redir 3 9.9.9.9 redir 9.9.9.9 3
Chybové kódy:
200 OK 400 Bad request 401 Bad request format 402 Unknown switching element 500 Internal server error 501 Error accessing temporary file 502 Error uploading temporary file into switching element