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!