Differences

This shows you the differences between two versions of the page.

Link to this comparison view

rl:labs:07:contents:04 [2013/11/13 20:50]
razvan.deaconescu [04. Tabela ARP]
rl:labs:07:contents:04 [2023/11/05 12:43] (current)
vlad_iulius.nastase
Line 1: Line 1:
-==== 04. Tabela ARP ====+==== 4. [10p] Copiere fișiere cu diverse protocoale: durată și consum de resurse ​====
  
-ARP (//Address Resolution Protocol//) este protocol care face intern fiecărui sistem ​de operare asocierea ​între ​adresele IP și adresele MAC ale stațiile cu care comunică. De multe ori stațiile cunosc adresele IP ale vecinilor dar nu știu adresele MAC; protocolul ARP completează o tabelă ARP locală sistemului cu intrările necesareProtocolul ARP este rulat implicit de sistemul de operare atunci când se comunică cu o stație a cărei adresă MAC nu este cunoscută.+Ne propunem să măsurăm timpul ​de copiere și consumul de resurse pentru un transfer realizat ​între ​două stații folosind, pe rând, transfer direct, FTP și SSH. În directorul home al utilizatorului ''​student''​ de pe stația ''​green''​ există un fișier ''​file-100M.dat''​. Vom transfera acest fișier în directorul home al utilizatorului ''​student''​ de pe stația ''​host''​. Vom folosi transfer direct, transfer FTP și transfer SSHPentru fiecare caz, stația ''​host''​ va rula server-ul, iar stația ''​green''​ clientul.
  
-Ne propunem ​să urmărim tabela ARP a unui sistem Linux.+<note tip> 
 +Dați copy-paste la comenzile de mai jos ca să vă asigurați că le scrieți corect. Pentru paste folosiți, în terminal, combinația de taste ''​Shift+Insert''​. 
 +</​note>​
  
-Pe stația ''​host''​ urmăriți tabela ARP folosind comanda:<​code>​ +**Transfer direct**
-TODO +
-</​code>​ +
-Este posibil ca tabela să fie vidă (neexistând comunicație recentă) sau să aibă unele intrări (cele mai recente comunicații).+
  
-Pentru ​a popula tabela ARP inițiați ​comunicație cu celelalte ​stații folosind comanda ​''​ping'':<​code>​ +Pentru ​transfer direct vom porni un server simplu TCP pe stația ''​host''​ și un client pe stația ''​green'';​ vom folosi utilitarul ''​netcat'',​ prescurtat ș''​nc''​. Rulați pe stația ''​host''​, în contul utilizatorului ''​student'',​ comanda<​code bash> 
-TODO+student@host:~$ nc -l 12345 > file-100M-nc.dat 
 +</code> ​Comanda deschide un server TCP care ascultă conexiuni pe portul ''​12345''​. Comanda rămâne activă în așteptarea unei conexiuni de la un client. 
 + 
 +De pe stația ''​green'',​ din contul utilizatorului ''​student'',​ transferați fișierul și măsurați timpul de transfer și consumul de resurse prin rularea comenzii((În cazul unui transfer prin rețea folosind ''​netcat''​ nu se face verificare de integritate (//​integrity check//). Există riscul (mic, dar există) ca fișierul să nu fie transferat corespunzător. De aceea e bine să verificați integritatea acestuia prin calcularea sumei de control (//​checksum//​) folosind, de exemplu, utilitarul ''​sha512sum''​.))<​code bash> 
 +student@green:​~$ time cat file-100M.dat | nc -q0 host 12345
 </​code>​ </​code>​
  
-Urmărițdin nou tabela ARP:<​code>​ +Comanda de mai sus trimite un fișier comenzii ''​nc'',​ iar comanda ''​nc''​ are rolul unui client TCP care se conectează la stația ''​host''​ pe portul ''​12345''​. 
-TODO+ 
 +**Transfer FTP** 
 + 
 +Pentru transfer FTP, serverul de FTP este deja pornit pe stația ''​host''​. De pe stația ''​green'', ​din contul utilizatorului ''​student'',​ transferați fișierul și măsurați timpul de transfer și consumul de resurse prin rularea comenzii<​code ​bash
 +student@green:​~$ time curl -T file-100M.dat -u student:​student ftp://​host/​file-100M-ftp.dat
 </​code>​ </​code>​
-Observați că fiecare stație (''​red'',​ ''​green''​ și ''​blue''​) are câte o intrare aferentă în tabela ARP. 
  
-Realizați pașii ​de mai sus pentru fiecare dintre ​stațiile ''​red''​''​green'' ​și ''​blue''​+**Transfer SSH** 
-  - Urmăriți tabela ARP. + 
-  Inițiați comunicație cu celelalte stații pentru a popula tabela ARP. +Pentru transfer SSH, serverul ​de SSH este deja pornit și configurat pe stația ''​host''​. De pe stația ​''​green''​, în contul utilizatorului ​''​student''​, transferați fișierul și măsurați timpul de transfer și consumul de resurse prin rularea comenzii<​code bash> 
-  ​Urmăriți din nou tabela ARP.+student@green:​~$ time scp file-100M.dat student@host:​file-100M-scp.dat
 </​code>​ </​code>​
  
-Observați că în tabela ARP a fiecăreia dintre stațiile ''​red'',​ ''​green'' ​și ''​blue''​ se găsește câte o intrare ARP, corespunzătoare stației ''​host''​Aceasta se întâmplă întrucât comunicațiile trec prin //default gateway// (adică prin stația ''​host''​iar fiecare stație trebuie să cunoască doar adresa MAC gateway-ului.+Urmăriți timpii de rulare ​și consumul de memorie ​și de procesor pentru cele trei cazuri de mai susObservați valorile ridicate pentru SSH pentru timpul utilizator (//User time//) și procentul de procesor ​(//Percent of CPU//). Acesta valori ridicate se datorează componentei de criptare ​SSH: această componentă asigură securizarea datelor cu un cost de reducere de performanță.
rl/labs/07/contents/04.1384368642.txt.gz · Last modified: 2013/11/13 20:50 by razvan.deaconescu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0