diff --git a/README.md b/README.md index 3c1b415fabdaf6daf50ba3b42e3cb09f4d1b17be..e22d9b36d2383c2c190db412c5bf5e6fdc9a5879 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,9 @@ Przeznaczone dla grupy L5 (I rok EE-DI, 2016/2017). PDF pobierz w zakĹadce [Pipelines](http://git.dms-serwis.com.pl/henrietta/inf2_eedi/pipelines) z pozycji **latest**, opcjÄ _download build artifacts_. +Po wybraniu katalogu z odpowiednim numerem zajÄÄ laboratoryjnych, wybierz wersjÄ o numerze podanym +przez prowadzÄ cego. + # Stan * Lab 1 - **gotowe** diff --git a/src/header.md b/src/header.md index 2e3f33ec07355f1be71f4f7017cd58ec13e78c65..6ea64a9ab24f1293ba18ab3950b3281c7eeea670 100644 --- a/src/header.md +++ b/src/header.md @@ -6,5 +6,5 @@ EE-DI, WEiI PRz Instrukcja ta jest dostÄpna w formie ĹşrĂłdĹowej pod adresem [http://git.dms-serwis.com.pl/henrietta/inf2_eedi](http://git.dms-serwis.com.pl/henrietta/inf2_eedi). -BÄdÄ tu pojawiaÄ siÄ instrukcje do kolejnych laboratoriĂłw. +Pod tym adresem bÄdÄ pojawiaÄ siÄ rĂłwnieĹź instrukcje do kolejnych laboratoriĂłw. diff --git a/src/lab1.md b/src/lab1.md index 92527651a9b5a3bb21ebafe27cf1bc9120eedf6d..339fcf46f52795244d2d4b48605dba065327afdd 100644 --- a/src/lab1.md +++ b/src/lab1.md @@ -21,15 +21,15 @@ bÄdzie to konieczne, pomagaÄ sobie wyszukiwarkÄ internetowÄ . Teoria jest wpleciona w zadania. Po prostu czytaj, wykonuj polecenia i zadawaj sobie duĹźo pytaĹ. JeĹli zupeĹnie utkniesz, a [Google](https://google.com/) nie bÄdzie Ci w stanie pomĂłc, zapytaj -siÄ prowadzÄ cego. +siÄ prowadzÄ cego. ChÄtnie wyjaĹni Ci on rĂłwnieĹź, dlaczego coĹ zrobiono _tak, a nie inaczej_. # HTTP jako protokóŠtekstowy TCP JednÄ z rzeczy, ktĂłrÄ poczÄ tkujÄ cym informatykom trudno jest zrozumieÄ, jest róşnica w protokoĹach TCP i UDP. Oba sÄ protokoĹami warstwy transportowej OSI dziaĹajÄ cymi -na podstawie protokoĹu IP (czyli do komunikacji naleĹźy mieÄ adres IP), jednak -implementujÄ cymi nieco inne usĹugi. +na podstawie protokoĹu IP (czyli do komunikacji naleĹźy mieÄ adres IP), jednak o nieco innych +charakterystykach i zakresach uĹźycia. -TCP, czyli _Transmission Control Protocol_, to poĹÄ czeniowy, niezawodny i strumieniowy protokĂłĹ. +TCP, czyli _Transmission Control Protocol_, to **poĹÄ czeniowy**, **niezawodny** i **strumieniowy** protokĂłĹ. * **poĹÄ czeniowy** - zanim dojdzie do transmisji danych, naleĹźy zestawiÄ _poĹÄ czenie_. Obie maszyny muszÄ wiÄc uzgodniÄ, Ĺźe bÄdÄ ze sobÄ rozmawiaÄ. Nie moĹźna wysĹaÄ pakietu TCP tak po prostu (no, @@ -213,20 +213,26 @@ DNS). Nie jest jednak uĹźywany w pracy codziennej - TCP wymaga 3 pakietĂłw, do p odpowiedzi i zapytania 4 (1 na dane, 1 na potwierdzenie odbioru), a do rozĹÄ czenia siÄ aĹź 4. Ze wzglÄdĂłw wydajnoĹci do DNS najczÄĹciej stosuje siÄ do niego wiÄc UDP. -UDP to drugi najczÄĹciej wykorzystywany protokóŠwarstwy transportowej korzystajÄ cy -z IP. Jest on protokoĹem bezpoĹÄ czeniowym - czyli moĹźemy do kaĹźdego wysĹaÄ pakiet +UDP (_User Datagram Protocol_) to drugi najczÄĹciej wykorzystywany protokóŠwarstwy transportowej korzystajÄ cy +z IP. Jest on protokoĹem *bezpoĹÄ czeniowym* - czyli moĹźemy do kaĹźdego wysĹaÄ pakiet UDP i nie musi siÄ on go spodziewaÄ. Pakiety UDP mogÄ jednak byÄ: * dostarczane nie po kolei * duplikowane (wysyĹasz jeden, dostajesz dwa) * gubione -Podobnie jak TCP wykorzystuje on porty. Tutaj jednak programista wysyĹa caĹe -pakiety (czyli ciÄ g bajtĂłw o ustalonej dĹugoĹci), a po drugiej stronie odbiera -rĂłwnieĹź te same pakiety. Nie sÄ one modyfikowane, jak w TCP, ale mogÄ podlegaÄ +Podobnie jak TCP wykorzystuje on porty. Jest to jednak w przeciwieĹstwie do TCP +protokóŠ*datagramowy*, czyli tutaj programista wysyĹa caĹe +tzw. datagramy (czyli ciÄ g bajtĂłw o ustalonej dĹugoĹci), a po drugiej stronie odbiera +rĂłwnieĹź te same pakiety (czyli taki sam ciÄ g bajtĂłw). Nie sÄ one dzielone, ani ĹÄ czone, +jak w TCP, ale mogÄ podlegaÄ wczeĹniej wymienionym zjawiskom. Programista **musi o tym pamiÄtaÄ**. -PoniewaĹź nie wymaga on pamiÄtania zestawionych poĹÄ czeĹ, jest bardziej wydajny +JeĹli programista wyĹle wiÄkszy pakiet UDP niĹź zalecany (zazwyczaj 512 bajtĂłw), moĹźe on +ulec fragmentacji. Zjawiska **fragmentacji UDP** naleĹźy unikaÄ, bo wtedy moĹźliwa jest +sytuacja w ktĂłrej jeden fragment dotrze, a drugi nie, co skutkuje chaosem. + +PoniewaĹź UDP wymaga on pamiÄtania zestawionych poĹÄ czeĹ, jest wydajniejszy od TCP. Dlatego teĹź zastosowano go w protokole DNS, sĹuĹźÄ cym zasadniczo do zamiany nazw domen postaci **wp.pl** na adresy postaci **212.77.98.9**. Dopiero taki adres umoĹźliwia wysĹanie czegoĹ (lub poproszenie o poĹÄ czenie w TCP) do drugiej maszyny @@ -249,11 +255,13 @@ szukamy - nie musi byÄ wszechwiedzÄ cy. WymieĹ przynajmniej 3 organizacje, bÄdÄ ce operatorami serwera root DNS. -Jest to protokóŠbinarny, nie moĹźemy wiÄc wpisywaÄ go rÄcznie. Musimy uĹźyÄ klienta -DNS. System Windows ma wbudowanego klienta o nazwie **nslookup**. +Jest to protokóŠbinarny, nie moĹźemy wiÄc wpisywaÄ go rÄcznie jako tekst. Musimy uĹźyÄ +specjalnego programu, tzw. **resolvera**. +System Windows udostÄpnia wbudowanego klienta DNS o nazwie **nslookup**. -OtwĂłrz liniÄ poleceĹ Windows. WywoĹaj narzÄdzie **nslookup**. W jego linii poleceĹ -wydaj polecenie **help**. Przeczytaj uwaĹźnie i zrozum je. + OtwĂłrz liniÄ poleceĹ Windows. WywoĹaj narzÄdzie **nslookup**. + W jego linii poleceĹ wydaj polecenie **help**. Przeczytaj uwaĹźnie i + zrozum je. Ustaw nslookup, aby udzielaĹ wyczerpujÄ cych informacji o debugowaniu. @@ -344,4 +352,4 @@ To juĹź prawie koniec zajÄÄ. Zapisz swoje sprawozdanie. W tytule umieĹÄ imiÄ, nazwisko i numer zadania. ZaĹÄ cz sprawozdanie, lub wklej je w treĹÄ maila. -MiĹego dnia! +Gotowe!