programarea retelelor - curs
Post on 06-Jul-2018
218 views
Embed Size (px)
TRANSCRIPT
8/18/2019 Programarea Retelelor - CURS
1/85
PROGRAMAREA
RE
ŢELELOR DE
CALCULATOARE
8/18/2019 Programarea Retelelor - CURS
2/85
CUPRINS 1. REŢELE DE CALCULATOARE. PROTOCOALE
1.1. Componentele reţelelor de calculatoare
1.2. Modele de referinţă. 1.2.1. Modelul OSI 1.2.2. Modelul TCP/IP 1.2.3. Modelul client – server 1.2.4. Probleme generale de proiectare
1.3. Familia de protocoale TCP/IP 1.3.1. Nivelul reţea: IP 1.3.2. Nivelul transport: UDP şi TCP 1.3.3. Nivelul aplicaţie 2
8/18/2019 Programarea Retelelor - CURS
3/85
1. REŢELE
DE CALCULATOARE.
PROTOCOALE
1.1. Componentele reţelelor de calculatoare 1.2. Modele de referinţă. 1.2.1. Modelul OSI 1.2.2. Modelul TCP/IP 1.2.3. Modelul client – server 1.2.4. Probleme generale de proiectare
1.3. Familia de protocoale TCP/IP 1.3.1. Nivelul reţea: IP 1.3.2. Nivelul transport: UDP şi TCP 1.3.3. Nivelul aplicaţie
3
8/18/2019 Programarea Retelelor - CURS
4/85
• O reţea de calculatoare este formatădintr-un grup de calculatoare (de orice tip) şi periferice care partajeazăresursele. Tendinţa actualăa utilizatorilor o reprezintă folosirea calculatoarelor, nu izolat, ci cuplate într -o reţea.
• Termenul re ţ ea de calculatoare are cel pu ţ in dou ă utilizări distincte:
1. mai multe calculatoare, î mpreun ă cu un sistem (hard+soft) de comunica ţ ii
2. un sistem de calcul , bazat pe o re ţ ea î n sensul 1, dar comport ându-se ca un sistem unitar (de exemplu, prezint ă acelea şi conturi de utilizatori pe toate calculatoarele)
1.1. Componentele reţelelor de calculatoare
4
8/18/2019 Programarea Retelelor - CURS
5/85
Tipuri
de
reţele
: Du p ă t ehnologia de t ransmis ie : • - re ţ ele cu difuzare (broadcast); • - re ţ ele punct - la - punct; Du p ă scara la care op ereaz ă re ţ eaua (dis tan ţ a); • - re ţ ele locale LAN; • - re ţ ele metropolitane MAN; • - re ţ ele de arie intins ă WAN; • - Internet-ul; (GAN= Global Area Network) Du p ă topologie : • - re ţ ele tip magistral ă (bus);
• - re ţ ele tip stea (star);• - re ţ ele tip inel (ring); • - re ţ ele combinate.; Du p ă t ipu l s is temu lui de op erare ut i l i zat : • - re ţ ele peer-to-peer; • - re ţ ele bazate pe server. Du p ă t ipu l mediulu i de t ransm is ie a semn alelor : • - re ţ ele prin medii ghidate (cablu coaxial, perechi de fire r ăsucite, fibra optic ă) • -re ţ ele prin medii neghidate (transmitere î n infrarosu, unde radio, microunde) Du p ă t ipu l u t i l izator i lor • -private (de uz industrial, militar, civil) • -publice Du p ă t ipu l accesulu i la mediu • - Ethernet • -token ring
• -token bus
• -arcnet
1.1. Componentele reţelelor de calculatoare
5
8/18/2019 Programarea Retelelor - CURS
6/85
• Pentru ca între calculatoarele dintr-o reţea să se poată desfăşura cu succeso comunicare, este necesar să se stabilească anumite protocoale.
• Un protocol poate fi definit ca un set de reguli şi convenţiistabilite între participanţiila o activitate comună.
• Deoarece protocoalele utilizate în reţelelede calculatoare s-au dovedit a fi deosebit de complexe, s-a convenit ca ele să fie proiectate pe niveluri sau straturi pentru a simplifica implementarea.
• Fiecare nivel defineşte anumite servicii şi eventual protocoale corespunzătoareacelor servicii. Astfel rezultămodelele de referinţă.
1.2. Modele de referinţă
6
8/18/2019 Programarea Retelelor - CURS
7/85
8/18/2019 Programarea Retelelor - CURS
8/85
Modelul OSI
8
8/18/2019 Programarea Retelelor - CURS
9/85
Modelul OSI
CARACTERISTICILE MODELULUI OSI
- Modelul OSI a fost construit av ând la bază principiul comunicaţieipe nivele:
• Împartecomplexitatea interreţelelor în paşi discreţi • Permite dezvoltarea de software bazate pe standarde (IPSec) • Permite dezvoltarea specializată a software-ului modular (IP
mai multe protocoale ale nivelului Legăturilor de date) • Permite comunicaţia pereche, pe baza nivelelor pereche
(comenzile TELNET sunt executate la nivelul de aplicaţie al calculatorului destinaţie
9
8/18/2019 Programarea Retelelor - CURS
10/85
Funcţiile nivelurilor • Nivelul Aplicaţie- realizează interfaţa cu utilizatorul şi interfaţa cu aplicaţiile,specifică interfaţa de lucru cu utilizatorul şi gestionează comunicaţia între aplicaţi
Acest strat nu reprezintă o aplicaţie de sine stătătoare, ci doar interfaţa între aplica şi componentele sistemelui de calcul. Unitatea de date: mesajul
• Nivelul Prezentare - transformă datele în formate înţelese de fiecare aplicaţie şi decalculatoarele respective, asigurăcompresia datelor şicriptarea .
• Nivelul Sesiune - furnizează controlul comunicaţiei între aplicaţii. Stabileşte, menţine, gestionează şi închide conexiuni (sesiuni) între aplicaţii.
• Nivelul Transport - transferul fiabil al informaţiei între două sisteme terminale (end points ) ale unei comunicaţii. Furnizează controlul erorilor şi controlul fluxului de d între două puncte terminale, asigurând ordinea corectă a pachetelor de date. Unitatea de date: segmentul, datagrama
Modelul OSI
10
http://ro.wikipedia.org/w/index.php?title=Interfa%C5%A3a&action=edit&redlink=1 http://ro.wikipedia.org/w/index.php?title=Compresia&action=edit&redlink=1 http://ro.wikipedia.org/wiki/Criptare http://ro.wikipedia.org/wiki/Fiabilitate http://ro.wikipedia.org/wiki/Fiabilitate http://ro.wikipedia.org/wiki/Criptare http://ro.wikipedia.org/w/index.php?title=Compresia&action=edit&redlink=1 http://ro.wikipedia.org/w/index.php?title=Interfa%C5%A3a&action=edit&redlink=1
8/18/2019 Programarea Retelelor - CURS
11/85
Funcţiile nivelurilor • Nivelul Reţea- determinarea căii optime pentru realizarea transferului de informaţ
într -o reţea constituită din mai multe segmente, prin fragmentarea şi reasamblarea informaţiei Unitatea de date: pachetul
• Nivelul Legături de Date- furnizează un transport sigur, fiabil, al datelor de-a lungul unei legături fizice, realizând: Controlul erorilor de comunicaţie; Controlul fluxulu date; Controlul legăturii; Sincronizarea la nivel de cadru Unitatea de date: cadrul
• Nivelul Fizic - transmiterea unui şir de biţi pe un canal de comunicaţie. Se precizează modulaţii, codări , sincronizări la nivel de bit. Un standard de nivel fizic defineşte 4 tipuri de caracteristici:
• Mecanice (forma şi dimensiunileconectorilor , numărul depini ) • Electrice (modulaţia, debite binare, codări, lungimi maxime ale canalelor de
comunicaţie) • Funcţionale (funcţia fiecărui pin) • Procedurale (succesiunea procedurilor pentru activarea unui serviciu)
Unitatea de date: bitul
Modelul OSI
11
http://ro.wikipedia.org/wiki/Informa%C5%A3ie http://ro.wikipedia.org/wiki/IP http://ro.wikipedia.org/w/index.php?title=Cadru&action=edit&redlink=1 http://ro.wikipedia.org/wiki/Modula%C5%A3ie http://ro.wikipedia.org/w/index.php?title=Codare&action=edit&redlink=1 http://ro.wikipedia.org/w/index.php?title=Sincronizare&action=edit&redlink=1 http://ro.wikipedia.org/wiki/Bit http://ro.wikipedia.org/w/index.php?title=Conector&action=edit&redlink=1 http://ro.wikipedia.org/wiki/Pin http://ro.wikipedia.org/wiki/Pin http://ro.wikipedia.org/w/index.php?title=Conector&action=edit&redlink=1 http://ro.wikipedia.org/wiki/Bit http://ro.wikipedia.org/w/index.php?title=Sincronizare&action=edit&redlink=1 http://ro.wikipedia.org/w/index.php?title=Codare&action=edit&redlink=1 http://ro.wikipedia.org/wiki/Modula%C5%A3ie http://ro.wikipedia.org/w/index.php?title=Cadru&action=edit&redlink=1 http://ro.wikipedia.org/wiki/IP http://ro.wikipedia.org/wiki/Informa%C5%A3ie
8/18/2019 Programarea Retelelor - CURS
12/85
Exemple de protocoale din stiva OSI
Modelul OSI
ex.: HTTP , FTP , Telnet , etc.
ex.: AFP , NCP , etc.
Ex.: RPC , NetBIOS , BSD sockets , NCP (Network Core Protocol), NFS (Network File System), etc.
ex.: TCP , UDP, ATP , etc.
ex.: IP, IPX, BGP , OSPF , RIP, IGRP , EIGRP , ARP , (Packet Switchin g )
ex.: Token ring , ISDN , ATM, 802.11 Wi-Fi , FDDI , etc.
ex.: cablu coaxial , radio , fibră optică, cablu bifilar torsadat , fire cupru , Ethernet
12
http://ro.wikipedia.org/wiki/HTTP http://ro.wikipedia.org/wiki/HTTP http://ro.wikipedia.org/wiki/File_transfer_protocol http://ro.wikipedia.org/wiki/Telnet http://ro.wikipedia.org/w/index.php?title=Apple_Filing_Protocol&action=edit&redlink=1 http://ro.wikipedia.org/w/index.php?title=Apple_Filing_Protocol&action=edit&redlink=1 http://ro.wikipedia.org/w/index.php?title=NetWare_Core_Protocol&action=edit&redlink=1 http://ro.wikipedia.org/w/index.php?title=Remote_procedure_call&action=edit&redlink=1 http://ro.wikipedia.org/w/index.php?title=NetBIOS&action=edit&redlink=1 http://ro.wikipedia.org/w/index.php?title=Berkeley_sockets&actio