Sunteți pe pagina 1din 5

Laboratoare PCom

Recomandări
Vă recomandăm să utilizați un IDE precum VS Code. Vom folosi Linux în cadrul
laboratoarelor. Este recomandat ca înainte de orice laborator să parcurgeți lectura
indicată. Laboratoarele și temele pot fi făcute în C sau C++. Laboratoarele pot fi navigate
folosind săgețile de pe tastatură → ←.

Contribuții laborator
Oricine poate contribui pentru a îmbunătăți laboratoarele. Scheletul laboratoarelor se
găsește pe Gitlab. Textul laboratoarelor îl găsiti în acest repo. În partea de sus dreaptă a
fiecărei pagini există un buton de edit pe care îl puteți folosi pentru a sugera modificări.

Mașina virtuală
Vă punem la dispoziție o mașină virtuală echipată cu toate uneltele necesare pe parcursul
semestrului. Puteți obține mașina de la această adresă. Instructiunile de import le gasiti
aici. Deasemenea găsiți aici codul pe baza căreia este creată mașina; puteți să urmăriți
instrucțiunile din README și să folosiți Vagrant ca să o creați direct (un proces care
durează mai mult, dar e configurabil).

Mașina este similară cu cea folosită în cadrul cursului de SO. Dacă aveți instalată mașina
respectivă, puteți doar să instalați lucrurile necesare pentru PCom, fără a descărca
întreaga mașină. Descărcați acest repository și urmăriți instrucțiunile din README ,
secțiunea "Building on top of the SO VM".
Lectură laborator

De parcurs înainte de laborator:

Sending digital information over a wire | Networking tutorial (1 of 13)

Materiale video opționale:

The first Internet connection, with UCLA's Leonard Kleinrock


UCLA's Leonard Kleinrock displays Internet's first router.
Despre laboratoarele de PCom
Laboratoarele de PCom presupun cunoștințe despre USO, PC, SD și SO. În aceste
laboratoare vom implementa și utiliza protocoalele de comunicație. Un protocol de
comunicație este un set de reguli bine definite pe care interlocutorii trebuie să le urmeze
în timpul comunicatiei.

Urmatorul slideshow prezinta ceea ce vom face la laboratoarele de PCom:

1. Laboratoare PCom
2.
3. 01. Networking warmup
4.
5. 1. Lectură laborator
6. 2. Despre laboratoarele de PCom
7. 3. Nivelul fizic
8. 4. Internetul
9. 5. Networking de mână
10. 6. Monitorizarea traficului

11. 1. 6.1. Wireshark
2. 6.2. tcpdump
12. 7. Noțiuni generale de programare

13. 1. 7.1. Compilare
2. 7.2. Debugging
3. 7.3. File descriptors
14. 8. Exerciții
15.
16. Nivelul Datalink
17.
18.
19. 02. Datalink. Framing
20.
21. 9. Lectură laborator
22. 10. Framing

23. 1. 10.1. Bit Stuffing
2. 10.2. Character (byte) stuffing
24. 11. Tipuri de comunicatie

Înainte de fiecare laborator, vă recomandăm să parcurgeți lectură recomandată în prima


parte a laboratorului. În cazul de față, video-ul intitulat Sending Digital Information
over a Wire (durata de 4 minute). În general, timpul necesar pentru a studia lectură
recomandată este de câteva minute.

Exercițiile din laboratoare pot fi rezolvate atât în C cât și C++, cu toate aceste
recomandăm implementări în versiuni moderne de C++. Recomandăm Visual Studio Code
cu extensia de C/C++ pentru laboratoare și teme. Atât temele cât și laboratoarele se vor
face pe Linux.
Nivelul fizic
Nivelul fizic se referă la protocoalele și tehnicile utilizate pentru a permite schimbul de
informații. Schimbul de informații se face peste un mediu de transmisie (link).

Exemple de medii de transmisie:

wireless
cablu electric
fibră optică
semnale de fum

În cazul comunicației prin cablu, nivelul fizic se ocupă cu codificarea biților în semnale
electrice. Un exemplu de codificare este următoarea:

Transmițător (Sender):

la fiecare milisecundă cablul electric va fi conectat la 5V pentru a transmite bitul 1


și la 0V pentru a transmite bitul 0.

Receptor (Receiver):

la fiecare milisecundă va măsura tensiunea de pe fir

S-ar putea să vă placă și