| Size: 6247 Comment:  | Size: 7396 Comment:  | 
| Deletions are marked like this. | Additions are marked like this. | 
| Line 3: | Line 3: | 
| 2010/2011 -- zimný semester | = cviko 1 = [[attachment:cviko1_skus.pdf]] 2011/2012 -- zimný semester <<Pozor>> * Prvé zápočtové cvičenie bude v pondelok 24.10 počas cvičenia. * Na predmet chodí 22 študentov, v miestnosti je 16 počítačov. * Z toho vyplýva, že 6 ľudí bude musieť robiť na svojom vlastnom prinesenom počítači. * Domáce zadanie je rovnaké, ako minulý rok. * Zadanie je [[attachment:cviko1.pdf|tu]]. * Vzorové riešenie nájdete na mpm.svf.stuba.sk, TCP port 9999. * Odovzdávať sa bude cez bitbucket. * Dajte si domácu prípravu na bitbucket; na cviku si repozitár vyklonujete, prerobíte podľa toho, čo budem chcieť a potom spravíte commit+push. * Výsledkom cvika pre mňa bude zoznam URL repozitárov na bitbuckete. <<Pohov>> <<TableOfContents()>> | 
| Line 9: | Line 27: | 
| == Oznamy == <<Pozor>> Prvé skúšobné/zápočtové cvičenie bude 5.11.2010, zadanie je nižšie. <<Pohov>> | === Konzultácie === Pondelok 16:00 -- 17:00 | 
| Line 51: | Line 68: | 
| == O mercuriali == [[mercurial]] | |
| Line 95: | Line 115: | 
| == Skúška == 1. "Teoretická otázka", vysvetliť dôležité aspekty niektorej z týchto tém. a. IP protokol - adresácia, smerovanie a. TCP a UDP protokol, spoločné vlastnosti, rozdiely, spôsob použitia v programoch. a. HTTP protokol - základy. a. CGI skripty - spôsob fungovania, použitie s HTML formulármi. a. Pokročilé aspekty HTTP - cookies, autorizácia. 1. Budem chcieť navrhnúť a ústne obhájiť nejaký aplikačný protokol. Podrobnosti toho, ako si to predstavujem, poviem na prednáške. | |
| Line 97: | Line 127: | 
| * Prvé zápočtové cvičenie [[attachment:cviko1.pdf]]  [[attachment:cviko1_skus.pdf]] | |
| Line 151: | Line 179: | 
| || Stránka so základnými XHTML elementami || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/simple.html || | || Stránka so základnými XHTML elementami || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/simple2.html || | 
| Line 158: | Line 186: | 
| ## == Výsledky == ## [[/Vysledky]] | 
Počítačové siete
cviko 1
2011/2012 -- zimný semester
|   | 
 
 | 
Contents
Vyučujúci
- Gejza Jenča gejza.jenca@stuba.sk 
Konzultácie
Pondelok 16:00 -- 17:00
Stručná osnova predmetu
- Taxonómia počítačových sietí
- Vrstvový model
- Sieťová vrstva, routing
- Základy konfigurácie sietí a služieb
- Transportná vrstva, sockety
- Aplikačná vrstva
- Aplikačné protokoly
- HTTP
- HTML a CSS, dizajn web stránok
- Dynamické webové stránky pomocou CGI skriptov
- JavaScript, AJAX 
Literatúra
- Andrew S. Tanenbaum, Computer Networks, 4. vydanie, Prentice-Hall 
- Craig Hunt, TCP/IP Network administration, 3. vydanie, O'Reilly, http://docstore.mik.ua/orelly/networking_2ndEd/tcp/index.htm 
- David Gourley, Brian Totty, Marjorie Sayer, Anshu Aggarwal, Sailu Reddy, et al., HTTP: The Definitive Guide, O'Reilly (2002) 
- David Flanagan, JavaScript: The Definitive Guide, O'Reilly Media, Inc.; 5th edition (2006) 
Webové stránky
- HTML and CSS Tutorials, References, and Articles, http://htmldog.com/ 
- Jak psát web, http://www.jakpsatweb.cz/ 
- Color scheme designer, http://colorschemedesigner.com/ 
- Selectutorial: CSS selectors, http://css.maxdesign.com.au/selectutorial/ 
- Allowed nesting of elements in HTML 4 (and XHTML 1.0), http://www.cs.tut.fi/~jkorpela/html/nesting.html 
- The W3C Markup Validation Service, http://validator.w3.org/ 
- The W3C CSS Validation Service, http://jigsaw.w3.org/css-validator/ 
- CSS Zen Garden, http://www.csszengarden.com/ 
- Mercurial SCM, http://mercurial.selenic.com/ 
- Mercurial: The Definitive Guide by Bryan O'Sullivan, http://hgbook.red-bean.com/ 
O mercuriali
Podmienky na zápočet
- Počas semestra sa bude udeľovať 40 bodov. Na zápočet je potrebných 20 bodov.
- 40 bodov bude udeľovaných za tieto veci: - Tri zápočtové cvičenia vypracované ako rozšírenie domácich zadaní - TCP/IP a sockety
- CGI skripty
- Jedno zápočtové cvičenie z CSS
 
 
- Tri zápočtové cvičenia vypracované ako rozšírenie domácich zadaní 
Témy jednotlivých prednášok
- Vrstvové referenčné modely. - Model ISO/OSI
- Model TCP/IP
 
- Problém riadenia súbežného prístupu (MAC) - Centralizované a decentralizované modely, deterministické a nedeterministické modely
- Modely s centrálnym arbitrom, token ring
- ALOHA, slotted ALOHA, CSMA, CD, Ethernet
 
- Sieťová vrstva, adresácia, smerovanie - IPv4 adresy, triedy A,B,C
- Privátne adresy
- Sieťová a broadcast adresa
- Preklad IP adries (masquerading)
 
- Transportná vrstva, UDP, TCP - Protokoly TCP a UDP
- Softwarové rozhranie pre prístup k transportnej vrstve - sockety
- Šablóny programov "klient" a "server" - fork prístup k servru.
 
- Aplikačné protokoly - Základy fungovania DNS, SMTP
- Protokol HTTP
 
- HTML a CSS - XHTML 1.0
- Štylizácia HTML pomocou kaskádových štýlov
 
- Dynamický web - Základné princípy dynamického webu
- CGI
 
- Pokročilé aspekty HTTP - Autorizácia (Basic)
- Cookies
 
- Web 2.0 - JavaScript cez jquery 
- Techniky AJAX
 
Skúška
- "Teoretická otázka", vysvetliť dôležité aspekty niektorej z týchto tém. - IP protokol - adresácia, smerovanie
- TCP a UDP protokol, spoločné vlastnosti, rozdiely, spôsob použitia v programoch.
- HTTP protokol - základy.
- CGI skripty - spôsob fungovania, použitie s HTML formulármi.
- Pokročilé aspekty HTTP - cookies, autorizácia.
 
- Budem chcieť navrhnúť a ústne obhájiť nejaký aplikačný protokol. Podrobnosti toho, ako si to predstavujem, poviem na prednáške.
Zadania na cviko
Šablóny programov, programy, html a css súbory
Na bitbucket.org: http://bitbucket.org/gjenca/python_vyuka_public/ .
Stiahnuť všetko naraz ako zip
http://bitbucket.org/gjenca/python_vyuka_public/get/tip.zip
alebo (s inštalovaným mercurialom) príkazom
hg clone http://bitbucket.org/gjenca/python_vyuka_public/
Ak už máte raz stiahnuté dáta pomocou hg clone, stačí už len v adresári projektu napísať
hg pull hg update
.
V prípade, že sa mercurial pri príkaze update sťažuje na konflikty, znamená to, že ste niečo zmenili v pracovnom adresári. Vtedy treba napísať
hg update -C
TCP/UDP klient/server
| TCP server bez súbežnej obsluhy viacerých klientov | http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/tcp_server.py | 
| TCP server so súbežnou obsluhou viacerých klientov | http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/tcp_server_fork.py | 
| TCP klient | http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/tcp_client.py | 
| UDP server | http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/udp_server.py | 
| UDP klient | http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/udp_client.py | 
Sumátor klient a server
| Sumátor server | http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/tcp_sumator_server.py | 
| Sumátor klient | http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/tcp_sumator_client.py | 
Jednoduchý HTTP server
| Jednoduchý HTTP server | http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/http_server.py | 
CGI skripty
| Testovací bez CGI modulu | http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/cgiserver/cgi-bin/test.py | 
| Testovací s CGI modulom | http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/cgiserver/cgi-bin/test2.py | 
| Vypisovanie a spracovanie formulára | http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/cgiserver/cgi-bin/form.py | 
| Vypisovanie a spracovanie formulára - matematika | http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/cgiserver/cgi-bin/matika.py | 
XHTML stránky
| Stránka so základnými XHTML elementami | http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/simple2.html | 
| Stránka pre skúšanie CSS | http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/pagelayout.html | 
| Minimálna stránka | http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/kostra.html | 

