Documente Academic
Documente Profesional
Documente Cultură
1.Care este diferena dintre un sistem de capt i o gazd? Enumerai tipurile de sisteme
terminale (de capt). Este un server WEB sistem terminal?
R: Nu este nicio diferenta. Pe tot parcursul testului, cuvintele host si end system sunt
folosite alternativ.Sistemele terminale includ PCs, statii de lucru, servere Web, servere mail,
Internet-connected PDAs, WebTVs, etc.
2. Cuvntul protocol este adesea utilizat pentru a descrie relaiile diplomatice. Dai un
exemplu de protocol diplomatic.
R: S presupunem c Alice, ambasador a rii A dorete s-l invite pe Bob, ambasador al
rii B la cina. Alice nu-l suna pur si simplu pe Bob i-i spune, "vino la cina noastra acum ". n
schimb, ea l suna pe Bob i ii sugereaz o dat i or. Bob poate sa rspunda prin a spune ca
nu e disponibil la acea data, dar el este disponibil alt dat. Alice i Bob continua s trimit
"mesaje" nainte i napoi pn cnd sunt de acord cu o dat i or. Bob apoi apare la
ambasada la data stabilita, sperm, nu mai mult de 15 minute nainte sau dup ora stabilita.
Protocoale diplomatice permit, de asemenea,pentru oricare dintre Alice sau Bob sa anuleze
politicos angajamentul n cazul n care au scuze rezonabile.
3. Ce este un program client? Ce este un program server? Cere i primete un program
de tip server servicii de la un program client?
R: Un program networking are de obicei dou programe, fiecare rulnd pe o gazd diferit,
comunicand ntre ele. Programul care iniiaz comunicarea este clientul. De obicei, programul
client cere si primete servicii din programul server.
4. Enumerai 6 tehnologii de acces. Clasificai-le pe fiecare fie ca acces rezidenial, acces
la nivelul companiei, sau acces mobil.
1. Dial-up modem la liniile telefonice: rezidential;
2. DSL la liniile telefonice: rezidential sau acces la nivelul unei companii mici;
3. Cablu la HFC: rezidential;
4. 100 Mbps switched Etherent: companie;
5. Wireless LAN: acces mobil;
6. Acces telefon mobil (de exemplu, WAP): mobil
5. Viteza de transmise n HFC este dedicat sau partajat ntre utilizatori? Exist
posibilitatea apariiei coliziunilor n canalul HFC pentru descrcare (downstream)? De ce
sau de ce nu?
R:Lime de band HFC este mprit intre utilizatori. Pe canalul de
descarcare(downstream), toate pachetele provin de la o singur surs, i anume, terminalul(the
head end??). Astfel, nu exist coliziuni pe canalul descarcare.
6. Enumerai tehnologiile de acces rezidenial din oraul vostru. Pentru fiecare tip de
acces furnizai viteza permis pentru descrcare, pentru ncrcare i preul lunar.
R:Posibilitile actuale includ: dial-up, DSL, cablu modem, fibre-to-the-home.
7.Care este viteza de transmisie a reelelor locale de tip Ethernet? Pentru o vitez dat
se poate ca fiecare utilizator din LAN s transmit continuu la acea vitez?
R:LAN Ethernet au rate de transmisie de 10 Mbps, 100 Mbps, 1 Gbps i 10 Gbps.
Pentru un X Mbps Ethernet (unde X = 10, 100, 1000 sau 10000), un utilizator poate
transmite continuu la rata X Mbps daca acel utilizator este singura persoana care trimite date.
Dac exist mai mult de un utilizator activ, atunci fiecare utilizator nu poate transmite continuu la
X Mbps.
8. Care sunt mediile fizice pe care poate lucra Ethernet-ul?
R:Ethernet cel mai frecvent ruleaza pe srm de cupru perechi rasucite(over twisted-pair
copper wire) i cablu coaxial "subire".De asemenea, poate rula pe link-uri fibre optice i cablu
coaxial gros.
9. Modem-urile cu apel, HFC, DSL i FFTH sunt utilizate pentru accesul rezidenial. Pentru
fiecare dintre aceste tehnologii specificai gama vitezelor de comunicaie i comentai
dac viteza respectiv este partajat sau dedicat.
R:Modemuri dial-up: pn la 56 Kbps, lime de band este dedicata, ISDN: pn la 128
kbps, lime de band este dedicata; ADSL: canal de descarcare(downstream) este 0.5-8 Mbps,
canal de incarcare(upstream) este de pn la 1 Mbps, lime de band este dedicata, HFC,
canalul descarcare este de 10-30 Mbps i canal incarcare este, de obicei, mai puin de ctiva
Mbps, lime de band este partajat. FTTH: 2 -10Mbps ncrcare, 10-20 Mbps descrcare, de
lime de band nu este partajata.
10.Descriei cele mai populare tehnologii fr fir de acces la Internet din ziua de astzi.
Comparai-le.
R:Exist dou tehnologii de acces la Internet fr fir cele mai populare astzi:
a) LAN Wireless
ntr-o reea LAN fr fir, utilizatorii wireless transmit / primesc pachete la / de la o staie de
baza(punct de acces fr fir), pe o raz de civa zeci de metri. Staia de baz este de obicei
conectat la Internet prin cablu i astfel servete pentru a conecta utilizatorii wireless la reeaua
cablat.
b) reele de acces wireless wide-area
n aceste sisteme, pachetele sunt transmise prin aceeai infrastructur wireless utilizate pentru
telefonie mobila, cu staia de baz fiind astfel gestionate de un furnizor de telecomunicaii.
Aceasta ofer acces wireless la utilizatori pe o raz de zeci de kilometri de staia de baz.
11.Care sunt avantajele unei reele cu comutare de circuite fa de o reea cu comutare
de pachete?
R:O reea cu comutare de circuite poate garanta o anumit cantitate de lime de band end-
to-end pe durata unui apel. Cele mai multe reele de pachete comutate de astzi (inclusiv
Internet) nu pot face nicio garanie end-to-end a limii de band.
12.Ce avantaje are TDM fa de FDM ntr-o reea cu comutare de circuite?
R:ntr-o reea cu comutarea de pachete, pachetele din diferite surse fluxeaza pe un link
neurmand un tipar fix, predefinit. n circuitul de comutare TDM, fiecare gazd ocupa acelai slot
pe un cadru TDM rotativ(revolving).
14.Presupunei c exist exact un pachet comutat ntre o gazd emitoare i o gazd
receptoare. Vitezele de comunicaie ntre gazda emitoare i switch i switch i gazda
receptoare sunt R1 i respectiv R2. Presupunei ca switch-ul utilizeaz
comutarea de pachete de tipul memoreaz i trimite mai departe, care este ntrzierea
total capt-la-capt la trimiterea unui pachet de lungime L? (se ignor coada, ntrzierea
de propagare i ntrzierea de propagare).
R:La momentul t0 gazd care trimite ncepe s transmit. La momentul t1 = L/R1, gazda care
trimite completeaza transmisia i ntregul pachet este primit la router (fara ntrziere de
propagare). Deoarece router are ntregul pachet n momentul t1,poate ncepe s transmit
pachetul la gazda care primete n momentul t1. La momentul t2 = T1 + L/R2, router-ul
completeaz transmisia i ntregul pachet este primit de gazda care primeste (din nou, fr
ntrziere de propagare). Astfel, ntrzierea cap-la-capt este L/R1 + L/R2.
15.Care este cheia pentru a distinge ntre tier 1 ISP i tier 2 ISP?
R:Un Tier-1 ISP se conecteaz la toate celelalte Tier-1 ISP;un tier-2 ISP se conecteaz la
numai cteva din tier-1 ISP. De asemenea, un tier-2 ISP este un client al unuia sau mai multor
tier-1.
16.Presupunei c un utilizatorii partajeaz o legtur de 2 Mbps. Presupunei de
asemenea c fiecare utilizator transmite continuu la 1 Mbs atunci cnd transmite, dar
fiecare transmite doar 20% din timp.
a). Dac se utilizeaz comutarea cu circuite ci utilizatori pot fi suportai?
b). Pentru restul problemei se presupune utilizarea de pachete comutate. De ce nu exist
o ntrziere n coad dac transmit n acelai timp doi sau mai puini utilizatori?
c). Gsii probabilitatea ca un anumit utilizator s transmit.
d). Presupunei acum c exist trei utilizatori. Gsii probabilitatea ca la un moment de
timp dat s transmit toi utilizatorii. Gsii fracia de timp pe durata creia coada de
ateptare crete.
R:a).2 utilizatori pot fi susinuti, deoarece fiecare utilizator necesit jumtate din limea de
band.
b)Din moment ce fiecare utilizator are nevoie de 1Mbps la transmitere, n cazul n care
doi sau mai puini utilizatori transmit simultan, se va cere un maxim de 2Mbps. Deoarece lime
de band disponibila a link-ului partajat este 2Mbps, nu va fi nici o ntrziere de ateptare
nainte de link. ntruct, n cazul n care trei utilizatori transmit simultan, limea de band
necesar va fi 3Mbps, care este mai mult dect limea de band disponibil a link-ul partajat.
In acest caz, va exista ntrziere de ateptare nainte link-ul.
c) Probabilitatea c un utilizator dat transmite = 0.2
SSL operates at the application layer. The SSL socket takes unencrypted data from the
application layer, encrypts it and then passes it to the TCP socket. If the
application developer wants TCP to be enhanced with SSL, she has to include the SSL code
in the application.
SSL opereaz la nivelul de aplicaie.Socket SSL preia datele necriptate din stratul de cerere,
il cripteaz i apoi il trece in priza TCP. Dac dezvoltatorul de aplicaii vrea ca TCP s fie
mbuntit cu SSL, el trebuie s includ codul SSL n aplicare.
10. Care este scopul protocolului cu confirmare (handshaking protocol)?
A protocol uses handshaking if the two communicating entities first exchange control packets
before sending data to each other. SMTP uses handshaking at the application layer whereas
HTTP does not.
Un protocol foloseste handshaking n cazul n care intre cele dou entiti de comunicare primul
schimb al pachetelor de control trimite date la fiecare celellalte. SMTP utilizeaz handshaking
la stratul de aplicaie n timp ce HTTP nu.
11. De ce ruleaz HTTP, FTP, SMTP i POP3 pe TCP mai degrab dect pe UDP?
The applications associated with those protocols require that all application data be received in
the correct order and without gaps. TCP provides this service whereas UDP does not.
Aplicaiile asociate cu aceste protocoale cer ca toate datele de aplicare s fie primite n ordinea
corect i fr lacune. TCP ofer acest serviciu n timp UDP nu
12. Peresupunei c exist un site e-commerce care dorete s pstreze nregistrrile
vnzrilor pentru fiecare client. Descriei modul n care se realizeaz acest lucru
utiliznd cookies.
When the user first visits the site, the site returns a cookie number. This cookie number is stored
on the users host and is managed by the browser. During each subsequent visit (and purchase),
the browser sends the cookie number back to the site. Thus the site knows when this user (more
precisely, this browser) is visiting the
Atunci cnd utilizatorul viziteaz prima data site-ul, acesta returneaz un numr de cookie. Acest
numr cookie este stocat pe gazda utilizatorului i este gestionat de ctre browser. n timpul
fiecrei vizite ulterioare (si a cumprarii), browser-ul trimite numrul cookie napoi la site.
Astfel, site-ul cnd acest utilizator (mai exact, acest browser), viziteaza site-ul.
13. Descriei cum cache-ul unei pagini Web (Wen caching) poate reduce ntrzierea
privind cererea unui obiect. Va reduce acest cache ntrzierea pentru toate
obiectele cerute de un utilizator sau doar pentru unele? De ce?
Web caching can bring the desired content closer to the user, perhaps to the same LAN to
which the users host is connected. Web caching can reduce the delay for all objects, even objects
that are not cached, since caching reduces the traffic on links.
Web caching poate aduce coninutul dorit "aproape" utilizatorului, probabil la aceeai reea
LAN la care este conectat gzda utilizatorului. Cache-ul poate reduce ntrziere pentru toate
obiectele, chiar i obiecte care nu sunt n cache, deoarece caching reduce traficul pe link-uri.
14. Utilizai telnet ntr-un server Web i trimitei un mesaj multilinie. Includei n
mesajul cerere linia header If-modified-since: pentru a fora un mesaj de rspuns
cu codul 304 Not Modified.
Issued the following command (in Windows command prompt) followed by the HTTP GET
message to the utopia.poly.edu web server:
> telnet utopia.poly.edu 80
Since the index.html page in this web server was not modified since Fri, 18 May 2007 09:23:34
GMT, the following output was displayed when the above commands were issued on Sat, 19
May 2007. Note that the first 4 lines are the GET message and header lines input by the user and
the next 4 lines (starting from HTTP/1.1 304 Not Modified) is the response from the web server.
A emis urmtoarea comand (n Windows command prompt), urmata de HTTP GET mesajul la
"utopia.poly.edu" server de web:
> Telnet utopia.poly.edu 80
Deoarece pagina index.html din acest server de web nu a fost modificat inca din vineri
2007-5-18 09:23:34 GMT, urmtoarea ieire a fost afiata cnd toate comenzile de mai
sus au fost emise pe 19/05/2007. Reinei c n primele 4 linii sunt mesaje GET si linii
antet introduse de ctre utilizator i n urmtoarele 4 linii (ncepnd de la HTTP/1.1 304
nemodificate) este rspunsul de la serverul de web.
With download and delete, after a user retrieves its messages from a POP server, the messages
are deleted. This poses a problem for the nomadic user, who may want to access the messages
from many different machines (office PC, home PC, etc.). In the download and keep
configuration, messages are not deleted after the user retrieves the messages. This can also be
inconvenient, as each time the user retrieves the stored messages from a new machine, all of non-
deleted messages will be transferred to the new machine (including very old messages).
Cu descrcarea i tergerea, dup ce un utilizator preia mesajele de pe un server POP, mesajele
sunt terse. Acest fapt reprezint o problem pentru utilizator nomazi, care ar putea dori s
acceseze mesajele de la mai multe masini diferite (PC de birou, PC-ul acas, etc). n download si
in keep configuration, mesajele nu sunt terse dup ce utilizatorul preia mesajele. Acest lucru
poate fi, de asemenea, incomod, ca de fiecare dat cnd utilizatorul preia mesajele stocate la o
main nou, toate mesajele non-terse vor fi transferate la noua main (inclusiv mesaje foarte
vechi).
19. Este posibil ca la nivelul unei organizaii serverul de mail i cel de Web s aib
exact acelai alias pentru numele gazdei (de exemplu foo.com)? Care va fi tipul
pentru RR care conine numele gazdei al serverului de mail?
Yes an organizations mail server and Web server can have the same alias for a host name. The
MX record is used to map the mail servers host name to its IP address.
Da serverul de mail al organizaiei i serverul Web poate avea aceleai alias-uri pentru un nume
de gazd. nregistrarea MX este folosita pentru a mapa numele de gazd al serverului de mail de
la adresa IP.
20. Presupunei c n BitTorrent, Alice ofer lui Bob blocuri de date (chunks) la un
interval de 30 de secunde. Va trebui Bob s ntoarc favoarea i s-i ofere blocuri
de date lui Alice n acelai interval? De ce sau de ce nu?
It is not necessary that Bob will also provide chunks to Alice. Alice has to be in the top 4
neighbors of Bob for Bob to send out chunks to her; this might not occur even if Alice is
provides chunks to Bob throughout a 30-second interval.
Nu este necesar ca Bob sa ofere de asemenea chunks lui Alice. Alice trebuie s fie n primii 4
vecinii ai lui Bob pentru ca Bob sa-i trimita chunks ei ;acest lucru s-ar putea s nu apar chiar
dac Alice ofer chunks lui Bob de-a lungul a 30-lea cel de-al doilea interval.
21. Considerai un nou partener Alice care se altur la BitTorrent fr a procesa nici
un chunk. Fr nici un chunk, ea nu poate deveni un ncrctor (uploader) de vrf
dintre cei 4 pentru nici un partener deoarece nu are nimic de ncrcat. Cum va
prelua atunci Alice primul chunk?
Alice will get her first chunk as a result of she being selected by one of her neighbors as a result
of an optimistic unchoke, for sending out chunks to her.
Alice va primi primul chunk, ca urmare a a fost selectat de ctre unul dintre vecinii ei, ca urmare
a unui "unchoke optimist," pentru a-i trimite chunk-uri ei.
22. Ce este overlay network. Include rutere? Care sunt marginile ntr-o astfel de
reea? Cum se creeaz i se menine o query-flooding overlay network
(interogare prin inundare)?
The overlay network in a P2P file sharing system consists of the nodes participating in the file
sharing system and the logical links between the nodes. There is a logical link (an edge in
graph theory terms) from node A to node B if there is a semi-permanent TCP connection between
A and B. An overlay network does not include routers. With Gnutella, when a node wants to join
the Gnutella network, it first discovers (out of band) the IP address of one or more nodes
already in the network. It then sends join messages to these nodes. When the node receives
confirmations, it becomes a member of the of Gnutella network. Nodes maintain their logical
links with periodic refresh messages.
Reeaua de acoperire ntr-un sistem de partajare de fiiere P2P este format din nodurile
participante la sistemul de partajare de fiiere i legturile logice ntre noduri. Exist o legtur
logic (un "avantaj" n ceea ce privete teoria grafurilor) de la nodul A la nodul B, n cazul n
care exist o conexiune semi-permanenta TCP ntre A i B. O reea de suprapunere nu include
routere. Cu Gnutella, atunci cnd un nod dorete s adere la reeaua Gnutella, se descoper mai
nti ("n afara benzii"), adresa IP a unuia sau mai multor noduri deja n reea. Acesta trimite apoi
se alture mesaje de la aceste noduri. Cnd nodul primete confirmri, ea devine un membru al
reelei Gnutella. Nodurile menin legturile logice cu mesaje de remprosptare periodic.
23. n ce mod o mesagerie instantanee cu index centralizat este un hibrid ntre
arhitecturile client-serve i P2P?
It is a hybrid of client server and P2P architectures:
a)There is a centralized component (the index) like in the case of a client server system.
b)Other functions (except the indexing) do not use any kind of central server. This is similar to
what exists in a P2P system.
24. Presupunei o DHT cu o topologie suprapus de tip plas (adic, fiecare partener
urmrete toi partenerii din sistem). Care sunt avantajele i dezavantajele unui
DHT circular (fr surtturi)?
Mesh DHT: The advantage is to a route a message to the peer closest to the key, only one hop
is required; the disadvantage is that each peer must track all other peers in the in the
DHT. Circular DHT: the advantage is that each peer needs to track only a few other peers;
the disadvantage is that O(N) hops are needed to route a message to a peer responsible for
the key.
Mesh DHT: Avantajul este ca pentru trasa un mesaj egal cu cel mai apropiat key, este necesar
doar un hop, dezavantajul este c fiecare la egal la egal trebuie s urmrii toate celelalte colegii
din in DHT. Circular DHT: avantaj este c fiecare egal nevoie pentru a urmri doar cteva alte
colegii; dezavantajul este c O (n) hamei sunt necesare pentru a ruta un mesaj de la un egal
responsabile pentru cheie.
Este un hibrid intre un client-server i arhitecturi P2P:
Este o component centralizata (index) ca i n cazul unui sistem client-server.
Alte funcii (cu excepia indexarii), nu folosesc nici un fel de server central. Acest lucru este
similar cu ceea ce exist ntr-un sistem P2P.
25. Skype utilizeaz tehnica P2P pentru dou funcii importante. Care sunt acestea?
a) User location
b) NAT traversal
26. Enumerai cel puin 4 aplicaii diferite care sunt n mod natural potrivite pentru
arhitecturi P2P (Indicaie: fiiere distribuite i mesageria instantanee sunt dou
dintre ele).
a) File Distribution
b) Instant Messaging
c) Video Streaming
d) Distributed Computing
a) distribuie fiier
b) Instant Messaging
c) Video Streaming
d) Distributed Computing
27. Serverul UDP descris n seciunea 2.8 are nevoie numai de un socket, n timp ce
serverul TCP descris n seciunea 2.7 are nevoie de dou socket-uri. De ce? Cte
socket-uri trebuie s utilizeze serverul TCP pentru ca s suporte n conexiuni
simultane, fiecare de la un alt client gazd?
With the UDP server, there is no welcoming socket, and all data from different clients enters the
server through this one socket. With the TCP server, there is a welcoming socket, and each time a
client initiates a connection to the server, a new socket is created. Thus, to support n
simultaneous connections, the server would need n+1 sockets.
Cu serverul UDP, nu exist nici un soclu primitor, i toate datele de la diferii clieni intr la
server prin acest soclu . Cu serverul TCP, exist un soclu primitor, i de fiecare dat cnd un
client iniiaz o conexiune la server, este creat un nou soclu. Astfel, pentru a sprijini n conexiuni
simultane, serverul va avea nevoie de n +1 prize.
28. De ce trebuie ca programul server s fie executat nainte de programul client
pentru aplicaia client-server pe TCP descris n seciunea 2.7? De ce trebuie ca
programul client s fie executat nainte de programul server pentru aplicaia
client-server pe UDP descris n seciunea 2.8?
For the TCP application, as soon as the client is executed, it attempts to initiate a TCP connection
with the server. If the TCP server is not running, then the client will fail to make a connection.
For the UDP application, the client does not initiate connections (or attempt to communicate with
the UDP server) immediately upon execution
Pentru aplicarea TCP, de ndat ce clientul este executat, se ncearc a iniia o conexiune TCP
cu serverul. Dac TCP Server nu se execut, atunci clientul va eua pentru a face o conexiune.
Pentru aplicarea UDP, clientul nu iniiaza conexiuni (sau ncearca sa comunice cu serverul UDP)
imediat dup executare.
P1. Adevrat sau fals?
a. Un utilizator cere o pagin Web care const din text i imagini. Pentru
aceast pagin, clientul va trimite un mesaj de tip cerere i va recepiona
patru mesaje de tip rspuns.
b. Dou pagini distincte (de exemplu www.mit.edu/research.html i
www.mit.edu/students.html) pot trimite peste aceeai conexiune
persistent.
c. Fr o conexiune persistent ntre (navigator) browser i serverul de
origine, este posibil ca un singur segment TCP s transporte dou mesaje
distincte HTTP de tip cerere.
d. The Date: este header n mesajul HTTP de rspuns, indicnd momentul n
care obiectul din mesajul rspuns a fost modificat ultima.
e. Mesajul de rspuns HTTP nu are nici o dat gol corpul mesajului.
a) F
b) T
c) F
d) F
e
Citii RFC 959 pentru FTP. Enumerai comenzile clientului care sunt suportate de
RFC.
Access control commands:
USER, PASS, ACT, CWD, CDUP, SMNT, REIN, QUIT.
Transfer parameter commands:
PORT, PASV, TYPE STRU, MODE.
Service commands:
RETR, STOR, STOU, APPE, ALLO, REST, RNFR, RNTO, ABOR, DELE, RMD,
MRD, PWD, LIST, NLST, SITE, SYST, STAT, HELP, NOOP.
a)Timpul de transmitere a unui obiect de marimea L printr-o legatura sau rata R este L/R. Timpul
mediu este media marimii obiectului divizat prin R:
= (850,000 bits)/(15,000,000 bits/sec) = .0567 sec
b) Intensitatea traficului pe link-ul de acces este redus cu 60% fiindca 60% din cereri sunt satisfcute
n cadrul reelei instituionale. Astfel ntrzierea medie de acces este (0.0567 sec) / [1 - (0.4) (0.907)]
= 0.089 secunde. Timpul de rspuns este aproximativ zero, n cazul n care cererea este satisfcut
de cache (ceea ce se ntmpl cu probabilitatea 0.6), timpul mediu de rspuns este de 0.089 sec + 3
sec = 3.089 sec pentru lipsurile din cache(cache misses) (ceea ce se ntmpl in 40% din timp). Deci,
timpul mediu de rspuns este (0.6) (0 sec) + (.4) (3.089 sec) = 1.24 secunde. Astfel timpul mediu de
rspuns este redus de la 3,6 pn la 1,24 sec sec.
Se consider scenariul introdus n problema P10. Presupunei acum c legtura
este partajat de Bob cu ali patru utilizatori. Bob utilizeaz instane paralele ale HTTP-
ului non-persistent, iar ceilali patru utilizatori utilizeaz HTTP non-persistent fr
descrcri paralele.
a. l ajut pe Bob conexiunile paralele s preia pagina Web mult mai repede?
De ce sau de ce nu?
b. Dac toi cei cinci utilizatori deschid cinci instane paralele de HTTP non-
persistent, atunci vor fi nc benefice conexiunile paralele ale lui Bob? De
ce sau de ce nu?
a). Da, pentru c Bob are mai multe conexiuni, astfel nct el poate obine proporional lime de
band adunata din latimea de banda a legaturii.
b) Da, Bob nc mai trebuie s efectueze descrcarea n paralel, n caz contrar el va primi mai putina
lime de band dect alti patru utilizatori. De fapt, toi utilizatorii pot avea tendina de a deschide
mai multe conexiuni, n scopul de a obine mai multa lime de band.
P12 Scriei un program TCP simplu pentru un server care accept liniile de intrare de la
un client i le tiprete pe ieirea standard a serverului (se poate face prin modificarea
programului TCPServer.java din carte). Compilai i executai programul. Pe oricare alt
calculator ce conine un browser Web, setai serverul proxy n browser cu gazda care
ruleaz programul server; configurai de asemenea portul corespunztor. Browser-ul
trebuie s trimit acum mesajul GET de cerere ctre server, iar acesta trebuie s
afieze mesajul pe ieirea sa standard. Utilizai aceast platform pentru a determina
dac browser-ul genereaz mesaje de tip GET condiional pentru obiecte din cache-ul
local.
TCPServer.java
import java.io.*;
import java.net.*;
class TCPServer {
public static void main(String argv[]) throws Exception
{
String clientSentence;
ServerSocket welcomeSocket = new ServerSocket(6789);
while(true) {
Socket connectionSocket = welcomeSocket.accept();
BufferedReader inFromClient = new BufferedReader(new
InputStreamReader(connectionSocket.getInputStream( ) ) );
clientSentence = inFromClient.readLine();
System.out.println(RECEIVED FROM CLIENT : + clientSentence + \n);
}
}
}
P13 Care este diferena dintre MAIL FROM: n SMTP i From: din mesajul de mail
insui?
The MAIL FROM: in SMTP este un mesaj de la un client SMTP care identifica expeditorul
mesajului mail catre serverul SMTP. The From:in mesajul mail insusi nu este un mesaj SMTP, ci mai
degraba doar o linie in corpul mesajului mail.
P14 Cum marcheaz SMTP sfritul unui mesaj? Dar HTTP? Poate HTTP utiliza
aceeai metod ca SMTP pentru a marca sfritul mesajului? Explicai.
SMTP utilizeaza o linie (line) continand doar o perioada pentru a marca sfarsitul corpului mesajului.
HTTP utilizeaza Content-Length header field pentru a indica lungimea mesajului(message body).
Nu, HTTP nu poate folosi metoda utilizata de SMTP, deoarece mesajul HTTP poate fi informative
binara, iar in SMTP, mesajul trebuie se fie in format 7-bit ASCII.
P15 Citii RFC 5321 pentru SMTP. Pentru ce se folosete MTA? Considerai urmtorul
email recepionat ca spam (modificat dintr-un email spam real). Presupunnd c numai
iniiatorul acestui email spam este tendenios i toate celelalte gazde sunt oneste,
identificai gazda tendenioas care a generat acest email spam.
MTA stands for Mail Transfer Agents. A mail is forwarded by a source to a MTA and then it follows
a sequence of MTAs to reach the receivers mail reader.
We see that this spam email follows a chain of MTAs. An honest MTA should report where it
receives the message. Notice that in this email, asusus-4b96 ([58.88.21.177]) does not
report where it receives the email. As we assume that the only the originator is dishonest, so
asusus-4b96 ([58.88.21.177]) must be the originator.
P16 Citii RFC-ul pentru POP3, RFC 1939. Care este scopul comenzii UIDL din POP3?
UIDL abreviaza unique-ID listing.Cand un client POP3 trimite comanda UIDL, serverul raspunde
cu un ID unic de mesaj pentru toate mesajele prezente in mailbox-ul utilizatorilor. Aceasta comanda
este folositoare pentru download and keep. Prin pastrarea unui fisier care listeaza mesajele primite
in sesiunile anterioare(retrieved in earlier sessions), clientul poate folosi comanda UIDL pentru a
determina ce mesaje de pe server au fost deja vazute.
4. P2. Consider figura 3.5. Care sunt valorile porturilor pentru surse i destinaii
pentru segmentele care sunt trimise de la server napoi la procesele clienilor?
Care sunt adresele de IP n datagramele nivelului reea care transport
segmentele nivelului transport?
Presupunem adresele IP ale gazdelor A,B,C sunt a,b,c (a,b,c sunt distincte)
Gazda A: Port sursa=80, adresa IP sursa = b, port destinatie=26145, adresa IP dest=a
Spre gazda C, process stanga: port sursa=80, IP sursa=b,port dest=7532, IP dest=c
Spre gazda C,process dreapta: port sursa=80, IP sursa=b,port dest=26145, IP dest=c
5. P3. UDP i TCP utilizeaz complementul fa de 1 pentru sumele lor de
control. Presupunem c avei urmtorii 3 octei de cte 8 bii:
01010011,01010100,01110100. Care este complementul fa de 1 a sumei
acestor octei? ( De notat c, dei UDP i TCP folosesc cuvinte pe 16-bit n
calculul sumelor de control, pentru aceasta problem eti rugat s consideri
sume pe 8 bii) De ce folosete UDP-ul complementul fa de 1 al sumei i
nu doar suma? Cum detecteaz receptorul erorile utiliznd schema cu
complement fa de 1? Este posibil ca o eroare la un 1 bit s treac
nedetectat? Dar o eroare la 2 bii?
Pentru detectia erorilor, receptorul adauga 4 cuvinte(words) (cele trei cuvinte originale si
checksum). Daca suma contine un zero, receptorul stie ca a fost identificata o eroare.
Toate erorile de un singur bit (one-bit errors) vor fi detectate, dar erorile de doi biti (two-
bit errors) se poate sa nu fie detectate (ex. Daca ultimul bit al primului cuvant este
convertit la 0 si ultimul bit al celui de-al doilea cuvant este convertit la 1).
6. P4.
a. Presupunei c avei urmtorii 2 octei: 01011100 i 01010110. Care
este complementul fa de 1 pentru suma acestor 2 octei?
Adunand cei doi octeti obtinem: 10110010. Complement fata de 1: 01001101
b. Presupunei c avei urmtorii 2 octeti: 11011010 i 00110110. Care
este complementul fa de 1 pentru suma acestor 2 octei?
Adunand cei doi octeti obtinem: 00010001. Complementul fata de 1: 11101110
c. Pentru octetii de la subpunctul a) dai un exemplu n care un octet
este comutat n fiecare din ceilali 2 octei i totui complementul
fa de 1 a sumei celor doi octei nu se schimb.
Primul octet: 01011110 Al doilea octet: 01010100
7. P5. S presupunem c receptorul UDP calculeaz suma de control Internet
pentru un segmentul UDP primit i constat c aceasta corespunde valorii
transportate n cmpul din antet alocat sumei de control. Poate receptorul
sa fie absolut sigur c nu au aprut erori de bii? Explicai.
Nu receptorul nu poate fi sigur ca nu au aparut erori de biti. Aceasta din cauza modului
in care este calculat checksum pentru pachet. Daca bitii corespunzatori (vor fi adunati
impreuna) celor doua cuvinte de 16-biti din pachet au fost 0 si 1 atunci chiar daca acesti
biti se transforma in 1 si 0, suma ramane aceeasi.Prin urmare, complementul fata de 1
pe care-l calculeaza receptorul va fi acelasi. Asta inseamna ca checksum va verifica
chiar daca au fost erori la transmitere.
8. P6. Luai n considerare motivaia pentru corectarea protocolului rdt2. 1.
Artai c receptorul, prezentat n figura 3.57, atunci cnd funcioneaz cu
emitorul prezentat n figura 3.11, poate conduce la situaia n care
emitorul i receptorul intr ntr-o stare de blocaj (deadlock), n care
fiecare ateapt un eveniment care nu apare niciodat.
Presupune
m ca expeditorul (sender) este in starea Wait for call 1 from above si
receptorul(receptorul din problema de la tema acasa) este in starea Wait for 1 from
below. Expeditorul trimite un pachet cu nr de secventa 1, si in tranzitie la Wait for ACK
or NAK 1, asteptand un ACK sau NAK. Presupunem ca receptorul primeste pachetul
cu nr de secventa 1 corect, trimite un ACK, si tranzitia spre starea Wait for 0 from
below asteptand pentru un pachet de date cu nr de secventa 0. Oricum, ACK este
corupt(ACK is corrupted). Cand expeditorul rdt2.1 primeste ACK corupt, retrimite
pachetul cu nr de secventa 1.Oricum receptorul asteapta un pachet cu nr de secventa 0
si (asa cum se arata in problema de tema acasa) intotdeauna trimite un NAK atunci
cand NU primeste un pachet cu numarul de secventa 0. Prin urmare expeditorul va
trimite intotdeauna un pachet cu nr de secventa 1 si receptorul va trimite un NAK pt acel
pachet. Astfel niciunul din cei doi nu vor progresa din starea in care se afla.
9. P7. n protocolul rdt3. 0, pachetele ACK care vin de la receptor ctre
emitor nu au numere de secven (dei acestea au un cmp ACK care s
conin numrul de secven al pachetului pe care l recunosc). De ce
aceste pachete ACK nu au nevoie de numere de secven?
Vedem ca expeditorul are nevoie de nr de secventa astfel incat receptorul sa poata
spuna daca un pachet este duplicat a unui pachet pe care l-a primit deja.In cazul ACKs,
expeditorul nu are nevoie de aceasta informatie(ex un nr de secventa pe un ACK)
pentru a spune daca a detectat un pachet duplicat. Un ACK este evident la receptorul
rdt3.0, intr-ucat atunci cand a primit ACK original trece la urmatoarea stare. ACK
duplicat nu este ACK de care expeditorul are nevoie si prin urmare este ignorat de
expeditorul rdt3.0
10. P8. Desenai FSM pentru partea de receptor a protocolului rdt3. O. (wtf!?)
Partea expeditorului pt protocolul rdt3.0 difera de partea expeditorului de la protocolul
2.2 prin faptul ca a fost adaugat un timeout. Am observat ca timeout introdus adauga
posibilitatea pachetelor duplicate de la expeditor la receptor. Totusi receptorul in
protocolul rdt2.2 poate deja manipula pachetele duplicat.(partea receptorului in
pachetele duplicate in rdt2.2 va aparea daca receptorul trimite un ACK pt pachetul care
a fost pierdut, si expeditorul retransmite vechea data). Prin urmare receptorul in
protocolul rdt2.2 va lucra ca si receptorul din protocolul rdt3.0
11. P9. Furnizai o explicare a funcionrii protocolului rdt3.0 pentru cazul
cnd pachetele de date i pachetele confirmare sunt eronate. Explicarea
Dvs. ar trebui s fie similar cu cea utilizata n Figura 3.16.
Pentru a evita scenariul din figura 3.27 ne dorim sa evitam marginea de conducere a
ferestrei receptorului(the leading edge of the receivers window) (ex cea cu nr de
secventa cel mai mare ) infasurrata in spatiul nr de secventa si suprapusa cu marginea
apropiata (the trailing edge) (cea cu nr de secventa cel mai mic in fereastra
expeditorului). Spatiul nr de secventa trebuie sa fie destul de mare pt a se potrivi cu
intreaga fereastra a receptorului si cu intreaga fereastra a expeditorului fara aceasta
conditie de suprapunere. Deci ne dorim sa determinam cat de larga trebuie sa fie o
gama de nr de secventa pt a putea acoperi oricand fereastra receptorului si a
expeditorului.
Presupunem ca cel mai mic nr de secventa pe care receptorul il asteapta este pachetul
m. In acest caz, fereastra sa este [m,m+1] si a primit (si a ACKed) pachetul m-1 si w-1
pachete inainte, w este dimensiunea ferestrei. Daca niciun w ACK nu a fost inca primit
de catre expeditor atunci mesajele cu ACK de valoare [m-w,m-1] se pot propaga inapoi.
Daca niciun ACKs cu aceste numere ACK nu au fost primite de expeditor atunci
fereastra expeditorului va fi [m-w,m-1].
Astfel cea mai mica margine a ferestrei expeditorului este m-w si the leading edge of
the receivers window este m+w-1. In order for the leading edge of the receiver's
window to not overlap with the trailing edge of the sender's window, the sequence
number space must thus be big enough to accommodate 2w sequence numbers. That
is, the sequence number space must be at least twice as large as the window size, .
wk2
24. P22. Rspundei adevrat sau Fals la urmtoarele ntrebri i justificai
scurt rspunsul dvs.:
a. Cu protocolul SR, este posibil pentru expeditor s primeasc un ACK
pentru un pachet care se ncadreaz n afara ferestrei sale curente.
b. Cu GBN, este posibil pentru expeditor s primeasc un ACK pentru
un pachet care cade n afara a ferestrei curente.
c. protocolul alternativ-bit este aceeai ca protocolul SR cu o fereastr
pentru expeditor i receptor avnd dimensiunea 1.
d. protocol alternativ-bit este aceeai ca protocolul GBN cu o fereastr
pentru expeditor i receptor avnd dimensiunea 1.
a. Adevarat. Presupunem ca expeditorul are o fereastra de marime 3 si trimite
pachetele 1,2,3 la timpul t0. La t1 (t1>t0) ACKS receptorului 1,2,3. La t2 (t2>t1)
expeditorul termina??? ( times out ) si retrimite 1,2,3. La t3 receptorul primeste
duplicatele si reconfirma 1,2,3. La t4 expeditorul primeste ACK pe care receptorul
le-a trimis la t1 si avanseaza fereastra la 4,5,6. La t5 expeditorul primeste ACK
1,2,3 pe care receptorul le-a trimis la t2. Aceste ACK se afla in afara ferestrei.
b. Adevarat. Acelasi scenariu va in cazul a.
c. Adevarat
d. Adevarat.Observam ca o fereastra de marime 1, SR, GBN si protocolul bit
alternativ sunt functional echivalente. Fereastra de marime 1 se opune
posibilitatii de a trimite pachetele in inordine(fara fereastra). Un ACK cumulativ
este doar un ACK ordonta in aceasta situatie, intrucat se poate referi doar la
pachetul fara fereastra.
25. P23. Am spus c o aplicaie poate alege UDP pentru protocolul de transport
deoarece UDP ofer controlul fin de la nivelul aplicaie (dect TCP) a
datelor care sunt trimise ntr-un segment i cnd sunt trimise.
a. De ce are o aplicaie mai mult control asupra datelor trimise ntr-un
segment?
b. De ce are o aplicaie mai mult control asupra momentului cnd este
trimis un segment?
a. Consideram trimiterea unei aplicatii pe un protocol de transport. Cu TCP,
aplicatia scrie datele la in buffer de conexiune (connection send buffer) si TCP va
lua octeti fara a pune un singur mesaj in segmental TCP; TCP poate pune unul
sau mai multe mesaje intr-un segment. UDP, pe de alta parte, incapsuleaza intr-
un segment tot ceea ce primeste de la aplicatie; deci daca aplicatia da UDP-ului
un mesaj aplicatie, acest mesaj va fi incarcatura utila a segmentului UDP. Astfel,
cu UDP, o aplicatie are mai mare control asupra datelor trimise intr-un segment.
b. Cu TCP, prin controlul fluxului si a congestiei, pot aparea intarzieri importante de
la timpul in care o aplicatie scrie data in send buffer si pana cand data este
transmisa nivelului retea. UDP nu are intarzieri in timpul controlului fluxului si a
congestiei.
26. P24. Luai n considerare un transfer al unui fiier enorm de octei L de la
gazda la A la B. Presupunei c MSS este de 536 octei.
a. Care este valoarea maxim pentru L, astfel nct numerele de
secven TCP s nu fie epuizate? Amintii-v c locaia din antet care
conine numrul de secven pentru TCP are mrimea de 4 octei.
b. Pentru L obinut n (a), gsii ct timp este necesar pentru a transmite
fiierul. Presupunei c se adaug un total de 66 de octei
corespunztori nivelurilor transport, reea, i legtur de date, pentru
fiecare segment nainte ca pachetul rezultat s fie trimis pe o
legtur cu viteza de 155 Mbps. Ignorai controlul fluxului i controlul
congestiei, astfel ca A s poat trimite segmentele n mod continuu
unul dup altul.
Sunt 232 = 4.294.967.296 nr de secventa posibile
a. Nr de secventa nu se incrementeaza cu unul cu fiecare segment. Mai degraba,
se incrementeaza cu nr de octeti de date trimise. Deci marimea MSS este
irelevanta marimea maxima a unui fisier ce poate fi trimis de la A la B este nr
de octeti reprezentati de 232 = 4.19 GB
d.
b.
c.
32. P30. n seciunea 3.5.3, am discutat despre estimarea TCP pentru RTT. De
ce credei c TCP evit msurarea valorii SampleRTT pentru segmentele
retransmise?
Sa ne uitam la ce ar putea fi gresit la masurile TCP SampleRTT pentru retransmiterea
unui segment. Presupunem ca sursa trimite pachetul P1, timer pt P1 a experitat, si
sursa trimite apoi P2, o noua copie a aceluiasi pachet. Mai departe presupunem ca
sursa masoara SampleRTT pentru P2 [the source measures SampleRTT for P2]
(pachetul retransmis). In final presupunem ca la putin timp dupa transmiterea lui P2
apare o confirmare pentru P1. Sursa va prelua din greseala aceasta confirmare ca fiind
pentru P2 si va calcula o valoarea incorecta pentru SampleRTT.
33. P31. Care este relaia dintre variabila SendBase din seciunea 3.5.4 i
variabila LastByteRcvd din seciunea 3.5.5?
La orice moment de timp t, SendBase-1 este nr de secventa al ultimului octet pe care
expeditorul il cunoaste ca fiind primit corect, si in ordide de catre receptor. De fapt
ultimul octet primit (corect si in ordine) la receptor la timpul t poate fi mai mare daca
sunt confirmari in teava (pipe).Astfel SendBase 1 LastByteRcvd
34. P32. Care este relaia dintre variabila LastByteRcvd din seciunea 3.5.5 i
variabila y din seciunea 3.5.4?
Cand la momentul t, expeditorul primeste o confirmare cu valoarea y, expeditorul stie
sigur ca receptorul a primit tot pana la y-1. De fapt ultimul octet primit (corect si in
ordine) la receptor la momentul t poate fi mai mare y SendBase sau daca sunt alte
confirmari in teava (pipe). Astfel y-1 LastByteRvcd.
35. P33. n Seciunea 3.5.4, am vzut c TCP ateapt pn cnd aceasta a
primit trei ACK dublate nainte de efectuarea unei retransmisii rapide. De
ce credei c designerii TCP nu au ales s efectueze o retransmisie rapid
dup primul ACK dublat pentru un segment primit ?
Presupunem ca pachetele n,n+1 si n+2 sunt trimise, si ca pachetul n a primit un ACKed.
Daca pachetele n+1 si n+2 sunt reordonate in timpul end-to-end-path (ex sunt primate
in ordinea n+2,n+1) atunci primirea pachetului n+2 va genera un duplicat ack pentru n si
va triggera o retransmisie sub o politica de a astepta numai pentru al doilea ACK
duplicat ce va fi retransmis. Asteptarea celui de-al treilea ACK duplicat, trebuie sa fie
cazul in care doua pachete au fost primite corect dupa pachetul n, in timp ce n+1 nu a
fost primit. Proiectantii schemei pentru triplu ACK duplicat s-au gandit ca asteptarea
pentru doua pachete (decat 1) era compromisul cel mai bun intre triggerarea unei
transmisii rapide cand este nevoie, dar nu retransmisia premature in fata reordonarii
pachetelor.
36. P34. Comparai GBN, SR, i TCP (nu ACK ntrziat). S presupunem c
valorile timeout pentru toate cele trei protocoale sunt suficient de lungi
astfel nct pot fi primite 5 segmente consecutive de date i confirmrile
lor corespunztoare (n cazul n care nu sa-au pierdut n canal) de ctre
gazda primitoare (Host B) i, respectiv, de gazda care a trimis (Host A). S
presupunem c gazd A trimite 5 segmente de date la gazda B, i
segmentul 2 (trimis de la A) este pierdut. n final, toate cele 5 segmente de
date au fost primite n mod corect de ctre gazd B.
Observam ca este un tip in textbook
Part b, 5 nu apare in .RTT
Daca valorile timeout pentru toate trei protocoalele sunt mult mai lungi decat .RTT
Daca valorile timeout pentru toate trei protocoale sunt mult mai lungi decat 5*RTT
a. Ct de multe segmente a trimis gazda A n total i cte ACK-uri a trimis
gazda B n total? Care sunt numerele lor de secven? Rspundei la
aceast ntrebare pentru toate cele trei protocoale.
b. n cazul n care valorile timeout pentru toate cele trei protocoale sunt mai
lungi de 5 RTT, atunci care protocol furnizeaz cu succes toate cele cinci
segmente de date n cel mai scurt interval de timp?
a. GoBackN:
A trimite 9 segmente in total.Initial trimite segmentele 1,2,3,4,5 si mai tarziu retrimite
segmentele 2,3,4,5.
B trimite 8 ACKs. 4 ACK cu nr de secventa 1, si 4ACK cu nr de secventa 2,3,4,5
Selective Repeat:
A trimite 6 segmente in total. Initial trimite segmentele 1,2,3,4,5 si apoi retrimite
segmental 2
B trimite 5 ACK. 4 ACK cu nr de secventa 1,3,4,5 si un ACK cu nr de secventa 2
TCP:
A trimite 6 segmente in total. Initial sunt trimise segmentele 1,2,3,4,5 si apoi
retransmis segmental 2.
B trimite 5 ACK. 4 ACK cu nr de secventa 2. Un ACK cu nr de secventa 6. Observam
ca TCP trimite intotdeauna un ACK cu nr de secventa asteptat.
b. TCP. Asta deoarece TCP foloseste retransmisia rapida fara a astepta timeout.
53. P35. n descrierea TCP-ului n figura 3.53, valoarea pragului, ssthresh, este
setat ca ssthresh = cwnd / 2 n mai multe locuri i valoarea ssthresh este
menionat ca fiind stabilit la jumtate din dimensiunea ferestrei atunci
cnd a avut loc un eveniment de tip pierdere de pachet. Trebuie ca rata la
care expeditorul trimite, atunci cnd a avut loc un eveniment de tip
pierdere, s fie aproximativ egal cu cwnd segmente/ RTT? Explic
rspunsul tu. Daca rspunsul tu este nu, poi sugera un mod diferit n
care ar trebui s fie setat ssthresh?
300 1 10 25
(decreases window size as the
avg. total sending rate to the link
in last 100msec is 45= (20+25)
400 1 10 2 10
(no further decrease, (decreases window
as window size is size as the avg. total
already 1) sending rate to the
link in last 200msec
is 40= (20+10)/2 +
(25+25)/2)
500 2 20 10
600 3 30 3 15
700 1 10 15
800 2 20 1 5
900 3 30 5
1000 1 10 2 10
(decreases window (increases window
size as the avg. total size as the avg. total
sending rate to the sending rate to the
link in last 100msec link in last 200msec
is 35= (30+5) is 30= (20+30)/2 +
(5+5)/2)
1100 2 20 10
1200 3 30 3 15
1300 1 10 15
1400 2 20 1 5
1500 3 30 5
1600 1 10 2 10
1700 2 20 10
1800 3 30 3 15
1900 1 10 15
2000 2 20 1 5
2100 3 30 5
2200 1 10 2 10
Bazate pe datele din tabelul de mai sus, gasim ca dupa 2200 msec, vedem ca fereastra
lui C1 este de un sement si a lui C2 de 2 segmente.
b) Nu. Pe termen lung latimea de banda a lui C1 este de doua ori cat C2, deoarece
C1 are RTT mai scurt, doar jumatate din C2, deci C2 poate sa isi ajusteze
marimea ferestrei de 2 ori mai repede decat C2. Daca de uitam mai sus in table
vedem cicluri la fiecare 600 ms , e.g de la 1400 ms pana la 1900 ms inclusive.
Intr-un ciclu rata de transmisie a lui C1 este (20+30+10+20+30+10)/6=120, care
este de 2 ori mai mare ca a lui C2 ca este (5+5+10+15+15)/6=60.
66. P48. Considerai reeaua descris n problema precedent. Presupunei
acum c cele dou conexiuni C1 i C2 au acelai RTT de 100 msec.
Presupunei c la momentul t0, fereastra de congestie a conexiunii C! este
de 15 segmente, iar a conexiunii C2 este de 10 segmente.
a. Care sunt ferestrele lor de congestie dup 2200 msec?
b. n cazul unei execuii lungi aceste dou conexiuni vor avea aceeai
partajare a lrgimii de band al conexiunii congestionate?
c. Spunem c dou conexiuni sunt sincronizate dac ambele conexiuni
ating mrimea maxim i minim a ferestrei n acelai timp. n cazul
unei execuii lungi se sincronizeaz eventual aceste conexiuni? Dac
da, care este mrimea maxim a ferestrelor lor?
d. Va ajuta aceast sincronizare la mbuntirea utilizrii legturii
partajate? De ce? Dai o idee pentru a rupe aceast sincronizare.
a) utemcalculamarimeaferestrelorintimpinurmatorultable.AmbeleCsiCau
aceeasimarimeaaferestreidupa00msec.
C1 C2
Time (msec) Window Size Data sending Window Data sending
(num. of speed (segments Size(num. of speed (segments
segments sent in per second, segments sent in per second,
next 100msec) =Window/0.1) next 100msec) =Window/0.1)
0 15 150 (in [0- 10 100 (in [0-
100]msec] 100]msec)
100 7 70 5 50
200 3 30 2 20
300 1 10 1 10
400 2 20 2 20
500 1 10 1 10
600 2 20 2 20
700 1 10 1 10
800 2 20 2 20
900 1 10 1 10
1000 2 20 2 20
1100 1 10 1 10
1200 2 20 2 20
1300 1 10 1 10
1400 2 20 2 20
1500 1 10 1 10
1600 2 20 2 20
1700 1 10 1 10
1800 2 20 2 20
1900 1 10 1 10
2000 2 20 2 20
2100 1 10 1 10
2200 2 20 2 20
b) Da, asta este datorita algoritmului AIMD din TCP si ambele conexiuni au acelasi
RTT.
c) Da, asta se vede clar din tabelul de mai sus. Marimea maxima a ferestrelor este
2.
d) Nu, acesta sincronizare nu va ajuta la imbunatatirea utilizarii lunk-ului, aceste 2
conexiuni se comporta ca o singura conexiune oscilaland intre marimea max si
min a ferestrei. Astfel, lunk-ul nu este utilizat la maxim. O cale posibila de oprire a
sincronizarii este adaugarea unui buffer finit link-ului si pierderea aleatorie a
pachetelor din buffer inainte de buffer overflow. Aceasta cauzeaza diferite
conexiuni sa taie din marimea ferestrei in timpuri diferite. Sunt multe AQM (Active
Queue Management) tehnici, precum RED (Random Early Detect), Pi
(Proportional and Integral AQM), AVQ (Adaptive Virtual Queue), si REM
(Random Exponential Marking), etc.
67. P49. Considerai o modificare a algoritmul TCP de control al congestiei. n
loc de creterea prin adunare, s utilizm creterea prin multiplicare. Un
emitor TCP i crete fereastra sa printr-o cantitate pozitiv mic (0< a <l)
ori de cte ori primete o confirmare valid. Gsii relaia funcional ntre
viteza de pierdere L i maximul ferestrei de congestie W. Argumentai de
ce, pentru acest TCP modificat, indiferent de viteza medie a TCP-ului,
conexiunea TCP petrece ntotdeauna aceeai cantitate de timp pentru a
crete mrimea ferestrei de control de la W/2 la W.
De retinut ca W reprezinta marimea maxima a ferestrei.
Pentru inceput putem gasi numarul total de segmente trimise in intervalul cand TCP isi
schimba marimea ferestrei de la W/2 pana la W inclusiv. Asta este data de:
S= W/2 + (W/2)*(1+) + (W/2)*(1+)^2 + (W/2)*(1+)^3 + + (W/2)*(1+)^k
Gasim k= log(1+)2, then S=W*(2+1)/(2).
Rata de pierderi L este data de:
L= 1/S = (2) / (W*(2+1) ).
Timpul ca ii trebuie TCP-ului sa mareasca fereastra de la W/2 la W este dat de:
k*RTT= (log(1+)2) * RTT,
este clar independent de rata medie de transfer TCP.
De retinut rata media de transfer TCP este data de:
B=MSS * S/((k+1)*RTT) = MSS / (L*(k+1)*RTT).
Reinei c acest lucru este diferit de TCP care are un randament mediu:
69. P51. n discuia asupra controlului congestiei n TCP din seciunea 3.7, am
presupus implicit c emitorul TCP are ntotdeauna date de transmis.
Considerai acum cazul n care emitorul TCP trimite o cantitate mare de
date dup care ntr n ateptare (idle) la momentul t1. TCP rmne idle
pentru o perioad relativ lung de timp dup care vrea s transmit mai
multe date ncepnd cu t2. Care sunt avantajele i dezavantajele utilizrii
de ctre TCP a valorilor cwnd i ssthresh de la momentul t1 atunci cnd
pornete din nou la momentul t2? Ce alternativ recomandai? De ce?
Un avantaj in utilizarea valorilor CWND si SSTHRESH la t2, TCP-ul nu ar trebui sa
treaca lent prin inceputul lent si evitarea congestiei pana la valoarea de transfer obtinuta
la t1. Un dezavantaj este ca aceste valori nu pot fi precise. In particular, daca calea ar
devenit congestionata intre t1 si t2, expeditorul va trimite o fereastra in valoare de
segmente in calea deja congestionata.
70. P52. n aceast problem se va investiga modul n care UDP i TCP ofer
posibilitatea autentificrii la punctele de capt.
a. Considerai un server DNS care recepioneaz o cerere printr-un
pachet UDP i rspunde la acea cerere cu un pachet UDP ( ca
exemplu, cum face un server DNS). Dac un client cu adresa IP X
imit adresa Y, unde va trimite serverul rspunsul?
b. Presupunei c un server primete un SYN cu Y adresa IP surs, i
dup ce rspunde cu un SYNACK, recepioneaz un ACK cu adresa
surs Y cu numrul de recunoatere corect. Presupunei c serverul
alege un numr de secven iniial aleatoriu i nu exist un man-in-
the-middle , poate serverul fi sigur c clientul este ntr-adevr Y (i
nu este o alt adres X care imit adresa Y)?
a) Serverul va trimite raspuns catre Y.
b) Serverul poate fi sigur c acesta este ntr-adevr la Y. Daca ar fi la o alta adresa
decat (spoofin) Y, SYNACK-ul va fi trimis catre adresa Y, si TCP-ul din
gazda nu va trimite segmentul TCP ACK inapoi. Chiar daca atacatorii vor trimite
un timer TCP ACK corespunzator, nu va sti secventa de numere corecta a
serverului (de cand serverul utilizeaza numere de secventa aleatorii).
71. P53. n aceast problem se va considera ntrzierea introdus de faza
startului lent n TCP. Considerm un client i un server Web conectai
direct pe o conexiune de vitez R. Presupunei c clientul dorete s preia
un obiect a crui mrime este egal cu exact 15 S, unde S este mrimea
maxim a segmentului (MSS). Notai timpul dus-ntors ntre client i server
cu RTT (se presupune a fi constant). Ignornd header-ele protocolului,
determinai timpul pentru a prelua obiectul (incluznd timpul de stabilire a
conexiunii) cnd:
a. 4 S/R > S/R + RTT > 2S/R
b. S/R + RTT > 4 S/R
c. S/R > RTT.
a) Facand referinta la figura de mai jos vedem intarzierile care sunt:
RTT + RTT + S/R + RTT + S/R + RTT + 12S/R = 4RTT + 14 S/R
b) Intarzieri similar si in acest caz:
RTT+RTT + S/R + RTT + S/R + RTT + S/R + RTT + 8S/R = 5RTT +11 S/R
c) Intarzieri similar si in acest caz:
RTT + RTT + S/R + RTT + 14 S/R = 3 RTT + 15 S/R