Reţele de calculatoare EDIŢIA A PATRA f r
r Pentru Suzanne, Barbara, Marvin şi în memoria lui Bram şi a lui Sweetie n
Alte titluri de mare succes ale lui Andrew S. Tanenbaum: Sisteme distribuite: principii şi paradigme Această nouă carte, scrisă împreună cu Maarten van Steen, prezintă atât principiile, cât şi paradigmele sistemelor distribuite moderne. în prima parte sunt tratate în detaliu principiile de comunicare, procesele, numele, sincronizarea, consistenţa şi replicarea, toleranţa la erori şi securitatea. în cea de-a doua parte se trece la prezentarea unor paradigme diferite folosite pentru crearea sistemelor distribuite, inclusiv sisteme bazate pe obiecte, sisteme distribuite de fişiere, sisteme bazate pe documente şi sisteme bazate pe coordonare. Sunt discutate pe larg numeroase exemple.
Sisteme de operare moderne, ediţia a doua
Acest text de mare succes prezintă în detaliu principiile sistemelor de operare şi le ilustrează cu ajutorul a numeroase exemple inspirate din lumea reală. După un prim capitol introductiv, următoarele cinci capitole tratează conceptele de bază: procese şi fire de execuţie, situaţii de blocare, gestiunea memoriei, operaţii de intrare/ieşire. Următoarele şase capitole tratează noţiuni mai avansate, incluzând sisteme multimedia, sisteme multiprocesor, securitate. La sfârşitul cărţii sunt prezentate două studii de caz detaliate: UNIX/Linux şi Windows 2(XX).
Organizarea structurată a calculatoarelor, edipa a patra Această carte clasică, citită în lumea întreagă şi ajunsă acum la cea de-a patra ediţie, furnizează introducerea ideală în studiul arhitecturii calculatoarelor. Subiectul este prezentat într-o manieră uşor de înţeles începând cu prezentarea conceptelor de bază. Există un capitol dedicat începătorilor care prezintă logica digitală, urmat de capitole în care sunt prezentate microarhitectura, setul de instrucţiuni de la nivelul arhitecturii, sistemele de operare, limbajul de asamblare şi arhitecturile paralele de calculatoare.
Sisteme de operare: proiectare şi implementare, edipa a doua Acest text despre sisteme de operare, scris împreună cu Albert S. Woodhull, este singura carte ce acoperă atât principiile sistemelor de operare cât şi aplicaţiile acestora la un sistem real. Sunt tratate în detaliu toate subiectele tradiţionale legate de sistemele de operare. în plus, principiile sunt ilustrate cu grijă de MINIX, un sistem de operare gratuit, de tip UNIX, pentru calculatoare personale. Fiecare carte conţine un CD-ROM care conţine sistemul MINIX complet (cod binar şi sursă). Codul sursă este prezentat într-o anexă a cărţii şi este explicat în detaliu în text.
CUPRINS
XVII
PREFAŢĂ 1. INTRODUCERE 1.1 UTILIZĂRILE REŢELELOR DE CALCULATOARE 2 1.1.1 1.1.2
Aplicaţii comerciale 3 Aplicaţii domestice 5
1.1.3
Utilizatorii mobili 9
1.1.4
Aspecte sociale 11
HARDWARE-UL REŢELEI 13 1.2.1 Reţele locale 15 1.2.2 Reţele metropolitane 16 1.2.3 Reţele larg răspândite geografic 17 1.2.4 Reţele fără fir 19 1.2.5 Reţelele casnice (Home networks) 21 1.2.6 Inter-reţelele 23
1
CUPRLNS
13 PROGRAMELE DE REŢEA 24 1.3.1
Ierarhiile de protocoale 24
1.3.2
Probleme de proiectare a nivelurilor 28
1.3.3
Servicii orientate pe conexiuni şi servicii fără conexiuni 29
1.3.4
Primitive de serviciu 31
1.3.5
Relaţia dintre servicii şi protocoale 33
1.4 MODELE DE REFERINŢĂ 34 1.4.1
Modelul de referinţă OSI34
1.4.2
Modelul de referinţă TCP/IP 37
1.4.3
O comparaţie între modelele de referinţă OSI şi TCP 40
1.4.4
O critică a modelului şi protocoalelor OSI 41
1.4.5
O critică a modelului de referinţă TCP/IP 43
1.5 EXEMPLE DE REŢELE 44 1.5.1
Internet 44
1.5.5
Reţele orientate pe conexiune 53
1.5.3
Ethernet 59
1.5.4
Reţele fără fir: 802.11 61
1.6 STANDARDIZAREA REŢELELOR 64 1.6.1
Who’s Who în lumea telecomunicaţiilor 64
1.6.2
Who’s Who în lumea standardelor internaţionale 66
1.6.3
Who’s Who în lumea standardelor Internet 68
1.7 UNITĂŢI DE MĂSURA 69 1.8 RESTUL CĂRŢII ÎN REZUMAT 70 1.9 REZUMAT 71 1.10 PROBLEME 72
NIVELUL FIZIC 2.1 BAZELE TEORETICE ALE COMUNICĂRII DE DATE 77 2.1.1
Analiza Fourier 78
2.1.2
Semnalele cu bandă de frecvenţă limitată 78
2.1.3
Viteza maximă de transfer de date a unui canal 81
CUPRINS
2.2 MEDII I)E TRANSMISIE GHIDATĂ 82 2.2.1
Medii magnetice 82
2.2.2
Cablul torsadat 83
2.2.3
Cablu Coaxial 84
2.2.4
Fibre optice 84
23 COMUNICAŢIILE FĂRĂ FIR 90 2.3.1
Spectrul electromagnetic 91
2.3.2
Transmisia radio 93
2.3.3
Transmisia prin microunde 94
2.3.4
Undele infraroşii şi milimetrice 97
2.3.5
Transmisia undelor luminoase 97
2.4 SATELIŢI DE COMUNICAŢIE 98 2.4.1
Sateliţi geostaţionari 99
2.4.2
Sateliţi de altitudine medie 103
2.4.3
Sateliţi de joasă altitudine 103
2.4.4
Sateliţii în comparaţie cu fibrele optice 105
2.5 SISTEMUL TELEFONIC 107 2.5.1
Structura sistemului telefonic 107
2.5.2
Politica din domeniul telefonic 110
2.5.3
Bucla locală: Modemuri, ADSL şi transmisia fără fir 112
2.5.4
Trunchiuri şi multiplexare 123
2.5.5
Comutarea 132
2.6 SISTEMUL DE TELEFONIE MOBILĂ 136 2.6.1
Prima generaţie de telefoane mobile: Voce analogică 137
2.6.2
A doua generaţie de telefoane mobile: Voce digitală 141
2.6.3
A treia generaţie de telefoane mobile: Voce digitală şi date 149
2.7 TELEVIZIUNEA PRIN CABLU 151 2.7.1
Televiziune prin antena colectivă 151
2.7.2
Internet prin cablu 152
2.7.3
Alocarea de spectru 154
2.7.4
Modemuri de cablu 155
2.7.5
Comparaţie între ADSL şi cablu 157
2.8 REZUMAT 158
vii
8
CUPRINS
2.9 PROBLEME 159
3. NIVELUL LEGĂTURĂ DE DATE
165
3.1 ASPECTE ALE PROIECTĂRII NIVELULUI LEGĂTURĂ DE DATE 166 3.1.1
Servicii oferite nivelului reţea 166
3.1.2
încadrarea 169
3.1.3
Controlul erorilor 172
3.1.4
Controlul fluxului 173
3.2 DETECTAREA ŞI CORECTAREA ERORILOR 173 3.2.1
Coduri corectoare de erori 174
3.2.2
Coduri detectoare de erori 176
33 PROTOCOALE ELEMENTARE PENTRU LEGĂTURA DE DATE 179 3.3.1
Un protocol simplex fără restricţii 183
3.3.2
Un protocol simplu Stop-and-Wait (pas-cu-pas) 184
3.3.3
Un protocol simplex pentru un canal cu zgomote 186
3.4 PROTOCOALE CU FEREASTRĂ GLISANTĂ 189 3.4.1
Un protocol cu fereastră glisantă de un bit 191
3.4.2
Un protocol de revenire cu n paşi (Go Back n) 194
3.4.3
Un protocol cu repetare selectivă 199
3.5 VERIFICAREA PROTOCOALELOR 204 3.5.1
Modele de tip automat finit 204
3.5.2
Modele de tip reţea Petri 207
3.6 EXEMPLE DE PROTOCOALE ALE LEGĂTURII DE DATE 209 3.6.1 3.6.2
3.7 3.8
HDLC - Controlul de nivel înalt al legăturii de date 209 Nivelul legăturii de date în Internet 212
REZUMAT 216
PROBLEME 217
CUPRINS
4. SUBNTVELUL DE ACCES LA MEDIU 4.1 PROBLEMA ALOCĂRII CANALULUI 224 4.1.1
Alocarea statică a canalului în reţelele LAN şi MAN 224
4.1.2
Alocarea dinamică a canalului în reţelele LAN şi MAN 225
4.2 PROTOCOALE CU ACCES MULTIPLU 226 4.2.1 4.2.2
ALOHA 226 Protocoale cu acces multiplu şi detecţie de purtătoare 230
4.2.3
Protocoale fără coliziuni 233
4.2.4
Protocoale cu conflict limitat 235
4.2.5
Protocoale cu acces multiplu cu divizarea frecvenţei 238
4.2.6
Protocoale pentru reţele LAN fără fir 241
ETHERNET 243 4.3.1
Cablarea Ethernet 244
4.3.2
Codificarea Manchester 247
4.3.3
Protocolul subnivelului MAC Ethernet 248
4.3.4
Algoritmul de regresie exponenţială binară 250
4.3.5
Performantele Ethernet-ului 251
4.3.6
Ethemetul comutat 253
4.3.7
Ethernet-ul rapid 254
4.3.8
Ethernetul Gigabit 257
4.3.9
IEEE 802.2: Controlul legăturilor logice 260
>
4.3.10 Retrospectiva Ethernetului 261
REŢELE LOCALE FĂRĂ FIR 262 4.4.1. Stiva de protocoale 802.11 262 4.4.2. Nivelul fizical802.ll 263 4.4.3
Protocolul subnivelului MAC al 802.11 265
4.4.4
Formatul cadrului 802.11 269
4.4.5
Servicii 270
4.5 REŢELE FĂRĂ FIR DE BANDĂ LARGĂ 271 4.5.1
Comparaţie între 802.11 şi 802.16 272
4.5.2
Stiva de protocoale 802.16 273
4.5.3
Nivelul fizic 802.16 274
4.5.4
Protocolul subnivelului MAC la 802.16 276
4.5.5
Structura cadrului 802.16 278
CUPRINS
4.6 BLUETOOTH 278 4.6.1
Arhitectura Bluetooth 279
4.6.2
Aplicaţii Bluetooth 280
4.6.3
Stiva de protocoale Bluetooth 281
4.6.4
Nivelul Bluetooth radio 282
4.6.5
Nivelul bandă de baza Bluetooth 283
4.6.6
Nivelul L2CAP Bluetooth 284
4.6.7
Structura cadrului Bluetooth 284
4.7. COMUTAREA LA NIVELUL LEGĂTURII DE DATE 285 4.7.1
Punţi de la 802.x la 802.y 287
4.7.2
Interconectarea locală a reţelelor 289
4.7.3
Punţi cu arbore de acoperire 290
4.7.4
Punţi aflate la distanţă 292
4.7.5
Repetoare, Noduri, Punţi, Comutatoare, Rutere şi Porţi 292
4.7.6
LAN-uri virtuale 295
4.8 REZUMAT 302 4.9 PROBLEME 303
NIVELUL REŢEA
309
5.1 CERINŢELE DE PROIECTARE ALE NIVELULUI REŢEA 309 5.1.1
Comutare de pachete de tip Memorează-şi-Retransmite (Store-and-Forward) 310
5.1.2
Servicii furnizate nivelului transport 310
5.1.3 5.1.4 5.1.5
Implementarea serviciului neorientat pe conexiune 311 Implementarea serviciilor orientate pe conexiune 313 Comparaţie între subreţele cu circuite virtuale şi subreţele datagramă 314
5.2 ALGORITMI DE DIRIJARE 315 5.2.1
Principiul optimalităţii 317
5.2.2
Dirijarea pe calea cea mai scurtă 318
5.2.3
Inundarea 320
5.2.4
Dirijare cu vectori distanţă 321
5.2.5
Dirijarea folosind starea legăturilor 324
5.2.6
Dirijare ierarhică 329
5.2.7
Dirijarea prin difuzare 331
5.2.8
Dirijarea cu trimitere multiplă (multicast) 333
5.2.9
Dirijarea pentru calculatoare gazdă mobile 334
\
CUPRINS
5.2.10 Dirijarea în reţele AD HOC 337 5.2.11 Căutarea nodurilor în reţele punct la punct 341
5.3 ALGORITMI PENTRU CONTROLUL CONGESTIEI 345 5.3.1 5.3.2
Principii generale ale controlului congestiei 347 Politici pentru prevenirea congestiei 348
5.3.3
Controlul congestiei în subreţelele bazate pe circuite virtuale 349
5.3.4
Controlul congestiei în subreţele datagramă 351
5.3.5
Imprăştierea încărcării 353
5.3.6
Controlul fluctuaţiilor 355 . • :•* O' • -r: v; •• -•
CALITATEA SERVICIILOR 356 5.4.1
Cerinţe 356
5.4.2
Tehnici pentru obţinerea unei bune calităţi a serviciilor 357
5.4.3
Servicii integrate 367
5.4.4
Servicii diferenţiate 370
5.4.5
Comutarea etichetelor si MPLS 372 *
INTERCONECTAREA REŢELELOR 374 5.5.1
Prin ce diferă reţelele 376
5.5.2
Cum pot fi conectate reţelele 377
5.5.3
Circuite virtuale concatenate 378
5.5.4
Interconectarea reţelelor fără conexiuni 379
5.5.5
Trecerea prin tunel 380
5.5.6
Dirijarea în reţele interconectate 382
5.5.7
Fragmentarea 383
5.6 NIVELUL REŢEA ÎN INTERNET 386 5.6.1
Protocolul IP 388
5.6.2
Adrese IP 391
5.5.4
Protocoale de control în Internet 401
5.5.5
Protocolul de dirijare folosit de porţile interioare: OSPF 406
5.6.5
Protocolul de dirijare pentru porţi externe: BGP 411
5.6.6
Trimiterea multiplă în Internet 412
5.6.7
IP mobil 413
5.6.8
IPv6 415
5.7 REZUMAT 423
CUPRINS
5.8 PROBLEME 423
NIVELUL TRANSPORT 6.1 SERVICIILE OFERITE DE NIVELUL TRANSPORT 431 6.1.1
Servicii furnizate nivelurilor superioare 431
6.1.2
Primitivele serviciilor de transport 433
6.1.3
Socluri Berkeley 436
6.1.4
Un exemplu de programare cu socluri: server de fişiere pentru Internet 437
6.2 NOŢIUNI DE BAZĂ DESPRE PROTOCOALELE DE TRANSPORT 441 6.2.1
Adresarea 442
6.2.2
Stabilirea conexiunii 445
6.2.3
Eliberarea conexiunii 449
6.2.4
Controlul fluxului şi memorarea temporară (buffering) 453
6.2.5
Multiplexarea 457
6.2.6
Refacerea după cădere 458
6.3 UN PROTOCOL SIMPLU DE TRANSPORT 460 6.3.1
Primitivele serviciului ales ca exemplu 460
6.3.2
Entitatea de transport aleasă ca exemplu 461
6.3.3
Exemplul văzut ca un automat finit 468
6.4 PROTOCOALE DE TRANSPORT PRIN INTERNET: UDP 471 6.4.1. Introducere în UDP 471 6.4.2. Apel de procedură la distanţă (Remote Procedure Call) 472 6.4.3
Protocolul de transport în timp real - Real-Time Transport Protocol 474
6.5. PROTOCOALE DE TRANSPORT PRIN INTERNET: TCP 477 6.5.1
Introducere în TCP 477
6.5.2
Modelul serviciului TCP 478
6.5.3
Protocolul TCP 480
6.5.4
Antetul segmentului TCP 481
6.5.5
Stabilirea conexiunii TCP 484
6.5.6
Eliberarea conexiunii TCP 485
6.5.7
Modelarea administrării conexiunii TCP 485
6.5.8
Politica TCP de transmisie a datelor 487
6.5.9
Controlul congestiei în TCP 490
6.5.10 Administrarea contorului de timp în TCP 493 6.5.11 TCP şi UDP în conexiune fară fir 496 6.5.12 TCP Tranzacţional 498
6.6 ELEMENTE DE PERFORMANŢĂ 499 6.6.1
Probleme de performanţă în reţelele de calculatoare 500
431
CUPRINS
6.6.2
Măsurarea performanţelor reţelei 502
6.6.3
Proiectarea de sistem pentru performanţe superioare 504
6.6.4
Prelucrarea rapidă a TPDU-urilor 507
6.6.5
Protocoale pentru reţele gigabit 510
6.7 REZUMAT 514 6.8 PROBLEME 515
7. NIVELUL APLICAŢIE 7.1 DNS - SISTEMUL NUMELOR DE DOMENII 521 7.1.1
Spaţiul de nume DNS 522
7.1.2
Înregistrări de resurse 524
7.1.3
Servere de nume 527
7.2 POŞTA ELECTRONICĂ 529 7.2.1
Arhitectură şi servicii 530
7.2.2
Agentul utilizator 532
7.2.3
Formatele mesajelor 534
7.2.4
Transferul mesajelor 540
7.2.5
Livrarea finală 543
13 WORLD WIDE WEB 548 7.3.1
Aspecte arhitecturale 549
7.3.2
Documente Web statice 564
7.3.3
Documente Web dinamice 576
7.3.4 7.3.5
HTTP - HyperText Transfer Protocol 583 îmbunătăţiri ale performanţei 588
7.3.6
Web-ul fără fir 593
7.4 MULTIMEDIA 602 7.4.1
Introducere in sunetele digitale 603
7.4.2
Compresia audio 605
7.4.3
Fluxuri audio 607
7.4.4
Radio prin Internet 610
7.4.5
Voce peste IP 613
7.4.6
Introducere la video 618
7.4.7
Compresia video 621
7.4.8
Video la cerere 628
7.4.9
MBone - Coloana vertebrală pentru trimitere multiplă 634
xv
CUPRINS
7.5 REZUMAT 637 7.6 PROBLEME 638
8. SECURITATEA REŢELELOR 8.1 CRIPTOGRAFIA 648 8.1.1
Introducere în criptografie 648
8.1.2
Cifrurile cu substituţie 651
8.1.3
Cifrurile cu transpoziţie 652
8.1.4
Chei acoperitoare 653
8.1.5
Două principii criptografice fundamentale 657
8.2 ALGORITMI CU CHEIE SECRETĂ 658 8.2.1
DES - Data Enciyption Standard 660
8.2.2
AES - Advanced Encryption Standard 662
8.2.3
Moduri de cifrare 666
8.2.4
Alte cifruri 670
8.2.5
Criptanaliza 671
83 ALGORITMI CU CHEIE PUBLICĂ 671 8.3.1
RSA672
8.3.2
AJţi algoritmi cu cheie publică 674
8.4 SEMNĂTURI DIGITALE 674 8.4.1
Semnături cu cheie simetrică 675
8.4.2
Semnături cu cheie publică 676
8.4.3
Rezumate de mesaje 677
8.4.4
Atacul zilei de naştere 681
8.5 GESTIONAREA CHEILOR PUBUCE 682 8.5.1
Certificate 683
8.5.2
X.509 684
645
CUPRINS
8.5.3 Infrastructuri cu chei publice 685 8.6 SECURITATEA COMUNICAŢIEI 688 8.6.1
IPsec 689
8.6.2
Ziduri de protecţie 692
8.6.3
Reţele private virtuale 695
8.6.4
Securitatea în comunicaţiile fără fir 696
8.7 PROTOCOALE DE AUTENTIFICARE 700 8.7.1
Autentificare bazată pe cheie secretă partajată 701
8.7.2
Stabilirea unei chei secrete: schimbul de chei Diffîe-Hellman 705
8.7.3
Autentificarea folosind un Centru de Distribuţia Cheilor 707
8.7.4
Autentificarea folosind Kerberos 709
8.7.5
Autentificarea folosind criptografia cu cheie publică 711
8.8 CONFIDENŢIALITATEA POŞTEI ELECTRONICE 712 8.8.1
PGP-Pretty Good Privacy (rom.: Confidenţialitate Destul de Bună) 712
8.8.2
PEM-Privacy Enhanced Mail (Poştă cu Confidenţialitate Sporită) 716
8.8.3
S/MIME 717
8.9 SECURITATEA WEB-ULUI717 8.9.1
Pericole 718
j
8.9.2
Siguranţa numelor 718
8.9.3
SSL - Nivelul soclurilor sigure (Secure Sockets Layer) 725
8.9.4
Securitatea codului mobil 728
8.10 IMPLICAŢII SOCIALE 730 8.10.1 Confidenţialitate 731 8.10.2 Libertatea de exprimare 733 8.10.3 Dreptul de autor 736
8.11 REZUMAT 738 8.12 PROBLEME 739
RECOMANDĂRI DE LECTURĂ ŞI BIBLIOGRAFIE 9.1 SUGESTII PENTRU LECTURI VETOARE 745 9.1.1 9.1.2
Lucrări introductive şi generale 746 Nivelul fizic 747
xvi
9.1.3
CUPRINS Nivelul legătură de date 749
9.1.4
Subnivelul de control al accesului la mediu 750
9.1.5
Nivelul reţea 751
9.1.6
Nivelul transport 753
9.1.7
Nivelul aplicaţie 753
9.1.8
Securitatea reţelelor 754
9.2 BIBLIOGRAFIE ÎN ORDINE ALFABETICĂ 756
INDEX
777
PREFAŢA t
Această carte este acum la a patra ediţie. Fiecare ediţie a corespuns unei etape diferite în modul de utilizare a reţelelor de calculatoare. Când a apărut prima ediţie, în 1980, reţelele erau o curiozitate academică. în 1988, când a apărut a doua ediţie, reţelele erau folosite de universităţi şi de marile firme. Când a apărut a treia ediţie în 1996, reţelele de calculatoare, în special Intemet-ul, au devenit o realitate zilnică pentru milioane de oameni. Noutatea celei de a patra ediţii o reprezintă evoluţia rapidă a reţelelor fără fir, în numeroase forme. Imaginea reţelelor de calculatoare s-a modificat radical de la ediţia a treia. în anii ’90 a existat o varietate de reţele de tip LAN şi WAN, împreună cu stivele de protocoale aferente. în anul 2003, singura reţea de tip LAN larg utilizată ce utilizează mediul ghidat de transmisie este Ethernet şi practic toate reţelele WAN existente sunt conectate la Internet. în consecinţă, o importantă cantitate de informaţie referitoare la reţelele mai vechi a fost înlăturată. Oricum, noile realizări în domeniu sunt şi ele consistente. Cel mai important progres l-au înregistrat comunicaţiile fară fir, inclusiv 802.11, buclele locale de telefonie fără fir, a doua şi a treia generaţie de reţele celulare (2G şi 3G), Bluetooth, WAP, i-mode şi altele. în consecinţă, a fost adăugată o importantă cantitate de informaţie despre reţelele fără fir. Un alt subiect important de actualitate este securitatea în reţele, pentru care a fost adăugat în carte un capitol separat. Deşi cap. 1 are aceeaşi funcţie introductivă pe care o avea şi în ediţia a treia, cuprinsul a fost revizuit şi actualizat. De exemplu, sunt prezentate introduceri despre Internet, Ethernet, reţele LAN fără fir, împreună cu istoricul şi originile acestora. Sunt tratate pe scurt şi reţelele pentru utilizatori casnici. Cap. 2 a fost restructurat într-o oarecare măsură. După o scurtă introducere în principiile comunicaţiilor de date, există trei secţiuni majore despre transmisii (prin medii ghidate, medii fără fir şi sateliţi) urmate de încă trei secţiuni cu studii de caz (reţele comutate de telefonie publică, reţele de telefonie mobilă şi reţele de televiziune prin cablu). Printre noile subiecte expuse în acest capitol se numără ADSL, comunicaţia fără fir în bandă largă, reţele metropolitane fără fir, accesul Internet prin cablu şi DOCSIS. Cap. 3 s-a ocupat dintotdeauna cu principiile fundamentale ale protocoalelor punct-la-punct. Ideile expuse aici au rămas în vigoare timp de decenii. Ca urmare succesiunea detaliată de exemple de protocoale prezentate în acest capitol a rămas practic neschimbată de la a treia ediţie. Din contră, în zona subnivelului MAC a existat o activitate intensă în ultimii ani, aşa că s-au produs multe schimbări în cap. 4. Secţiunea dedicată Ethernet-ului a fost extinsă pentru a include şi Gigabit Ethernet. S-au introdus secţiuni complet noi despre LAN-uri fără fir, comunicaţie fără fir în bandă largă, Bluetooth şi comutare la nivel de legătură de date, inclusiv MPLS. Cap. 5 a fost de asemenea actualizat: au fost înlăturate toate materialele referitoare la ATM şi au fost adăugate materiale suplimentare despre Internet. Un alt subiect important este calitatea serviciilor, cuprinzând expuneri despre servicii integrate şi servicii diferenţiate. Sunt prezente în acest capitol şi reţelele fără fir, împreună cu o discuţie despre rutarea în reţele ad-hoc. Alte aspecte noi includ NAT şi reţelele de la egal la egal
PREFAŢĂ
xviii
(peer-to-peer). Cap. 6 tratează în continuare nivelul transport, dar şi aici au avut loc unele schimbări. Printre acestea se numără un exemplu de programare a soclurilor (sockets). Sunt prezentate şi comentate două programe de câte o pagină scrise în limbajul C. Aceste programe, disponibile şi pe situl Web al cărţii, pot fi compilate şi rulate. împreună ele furnizează o aplicaţie de server de fişiere sau server de Web, pentru experimentare. Alte subiecte noi includ apelul procedurilor la distanţă, RTP şi tranzacţii/TCP. Cap. 7, relativ la nivelul aplicaţie, a fost mai clar orientat. După o scurtă introducere în DNS, restul capitolului tratează trei aspecte: poştă electronică, Web şi multimedia. Fiecare dintre acestea este tratată foarte detaliat. Discuţia despre modul de funcţionare a Web-ului se întinde acum pe mai mult de 60 de pagini, acoperind multe subiecte, printre care pagini Web statice şi dinamice, HTTP, scripturi CGI, reţele cu livrare bazată pe conţinut, cookies şi păstrarea temporară în memoria ascunsă (cachc) a Web-ului. Sunt prezente şi materiale despre modul de scriere a paginilor Web moderne, cu scurte introduceri în XML, XSL, XHTML, PHP şi altele, toate însoţite de exemple funcţionale. Este menţionat şi accesul Web fără fir, cu accent asupra imode şi WAP. Secţiunea de multimedia cuprinde acum MP3, fluxuri audio, radio prin Internet şi transmisii de voce peste IP. Securitatea reţelelor a devenit azi atât de importantă încât i s-a acordat un nou capitol însumând peste 100 de pagini. Sunt prezentate atât principii de securitate (algoritmi simetrici şi algoritmi cu chei publice, semnături digitale şi certificate X.509) cât şi aplicaţii ale acestor principii (autentificare, securitatea poştei electronice şi securitatea Web). Acest capitol este atât întins ca arie de acoperire (de Ia criptografie cuantică până la cenzura guvernamentală) cât şi bogat în detalii (de exemplu modul de funcţionare al algoritmului SHA-1). Cap. 9, conţine o listă complet nouă de recomandări bibliografice* cât şi o bibliografie cuprinzătoare de peste 350 de titluri. Peste 200 dintre aceste lucrări sunt scrise după anul 2000. Cărţile despre computere conţin foarte multe acronime. Nici cartea de faţă nu face excepţie. După ce aţi terminat de citit această carte, următorii termeni ar trebui să însemne ceva pentru dumneavoastră: ADSL, AES, AMPS, AODV, ARP, ATM, BGP, CDMA, CDN, CGI, CIDR, DCF, DES, DHCP, DMCA, FDM, FHSS, GPRS, GSM, HDLC, HFC, HTML, HTTP, ICMP, IMAP, ISP, ITU, LAN, LMDS, MAC, MACA, MIME, MPEG, MPLS, MTU, NAP, NAT, NSA, NTSC, O FDM, OSPF, PCF, PCM, PGP, PHP, PKI, POTS, PPP, PSTN, QAM, QPSK, RED, RFC, RSA, RSVP, RTP, SSL, TCP, TDM, UDP, URL, UTP, VLAN, VPN, VSAT, WAN, WAP, WDMA, WEP, WWW şi XML. Dar nu vă îngrijoraţi. Ficare din aceşti termeni va fi cu atenţie explicat înainte de a fi utilizat. Pentru a-i ajuta pe instructorii care doresc să folosească această carte ca suport de curs, autorul a pregătit o varietate de materiale auxiliare, printre care: Un manual cu soluţiile problemelor. Fişiere conţinând toate figurile în diferite formate Un simulator (scris în C) pentru exemplele de protocoalc din Cap. 3. O pagină de web cu link-uri către îndrumare practice, organizaţii, întrebări frecvente, etc Manualul cu soluţii este disponibil la Prentice Hall (dar numai pentru instructori, nu şi pentru studenţi). Toate celelalte materiale pot fi găsite pe situl cărţii, la adresa:
http'.Hwww. prenhall comltanenbaum
PREFAŢĂ
xix
Dc acolo, faceţi click pe coperta cărţii. Multe persoane m-au ajutat în timpul lucrului la a patra ediţie. Aş dori în mod deosebit să mulţumesc .următoarelor persoane: Ross Anderson, Elizabeth Belding-Royer, Steve Bellovin, Chatschick Bisdikian, Kees Bot, Scott Bradner, Jennifer Bray, Pat Cain, Ed Felten, Warwick Ford, Kevin Fu, Ron Fulle, Jim Geier, Mario Gerla, Natalie Giroux, Steve Hanna, Jeff Hayes, Amir Herzberg, Philip Homburg, Philipp Hoschka, David Green, Bart Jacobs, Frans Kaashoek, Steve Kent, Roger Kermode, Robert Kinicki, Shay Kutten, Rob Lanphier, Marcus Leech, Tom Maufer, Brent Miller, Shivakant Mishra, Thomas Nadeau, Shlomo Ovadia, Kaveh Pahlavan, Radia Perlman, Guillaume Pierre, Wayne Pleasant, Patrick Powell, Thomas Robertazzi, Medy Sanadidi, Christian Schmutzer, Henning Schulzrinne, Paul Sevinc, Mihail Sichitiu, Bernard Sklar, Ed Skoudis, Bob Strader, George Swallow, George Thiruvathukal, Peter Tomsu, Patrick Verkaik, Dave Vittali, Spyros Voulgaris, Jan-Mark Warns, Ruediger Weis, Bert Wijnen, Joseph Wilkes, Leendert van Doom şi Maarten van Steen. Mulţumiri spccialc sunt adresate Iui Trudy Levine care a demonstrat că bunicile pot face o treabă excelentă recapitulând materialul tehnic. Shivakant Mishra s-a gândit la multe dintre problemele
PREFAŢĂ
XX
dificile de la sfârşitul capitolelor. Andy Doman mi-a recomandat lecturi suplimentare pentru Cap. 9. Jan Looyen a furnizat echipamente hardware indispensabile intr-un moment critic. Dr. F de Nies s-a dovedit un expert în materie de ”cut-and-paste” atunci când a fost necesar. Editorul meu de la Prentice Hali, Maiy Franz m-a aprovizionat cu mai multe materiale pentru citit decât consumasem în precedenţii 7 ani şi m-a ajutat în numeroase alte situaţii. In sfârşit, am ajuns la persoanele cele mai importante: Suzanne, Barbara şi Marvin. Suzannci pentru dragoste, răbdare şi prânzurile din excursiile la iarbă verde. Barbarei şi lui Marvin pentru că au fost veseli şi amuzanţi în permanenţă (mai puţin atunci cand se plângeau de îngrozitoarele manuale pentru colegiu, fapt ce m-a făcut să fiu mai cu picioarele pe pământ). Vă mulţumesc. ANDREW S. TANENBAUM
1 INTRODUCERE
Fiecare din ultimele trei secole a fost dominat de o anumită tehnologie. Secolul al XVIII-lea a fost secolul marilor sisteme mecanice care au însoţit Revoluţia Industrială. Secolul al XLX-lea a fost epoca maşinilor cu aburi. în secolul XX, tehnologia cheie este legată de colectarea, prelucrarea şi distribuirea informaţiei. Printre alte realizări, am asistat la instalarea reţelelor telefonice mondiale, la invenţia radioului şi a televiziunii, la naşterea şi creşterea nemaivăzută a industriei de calculatoare şi la lansarea sateliţilor de comunicaţii. Datorită progresului tehnologic rapid, aceste domenii converg în ritm alert, iar diferenţele între colectarea, transportul, stocarea şi prelucrarea informaţiei dispar pe zi ce trece. Organizaţii cu sute de birouri răspândite pe o arie geografică largă se aşteaptă să poată examina în mod curent printr-o simplă apăsare de buton chiar şi echipamentele lor cele mai îndepărtate. Pe măsură ce posibilităţile noastre de a colecta, prelucra şi distribui informaţia cresc tot mai mult, cererea pentru o prelucrarea şi mai sofisticată a informaţiei creşte şi mai rapid. Deşi industria de calculatoare este încă tânără în comparaţie cu alte industrii (de exemplu, construcţia de automobile şi transportul aerian), domeniul calculatoarelor a cunoscut un progres specA
taculos într-un timp scurt. In primele decenii de existenţă sistemele de calcul erau foarte centralizate, de obicei în interiorul unei singure încăperi. Adesea, această încăpere avea pereţi de sticlă prin care vizitatorii se puteau holba la marea minune electronică dinăuntru. O companie de mărime mijlocie sau o universitate ar fi putut avea unul sau
două calculatoare, în timp ce instituţiile mari aveau cel mult câteva zeci. Ideea că, în mai puţin de 20 de ani, calculatoare la fel de puternice, mai mici decât un timbru poştal, vor fi produse pe scară largă în milioane de exemplare părea desprinsă dintr-un scenariu ştiinţifico-fantastic. întrepătrunderea dintre domeniul calculatoarelor şi cel al comunicaţiilor a avut o influenţa profundă asupra modului în care sunt organizate sistemele de calcul. Conceptul de „centru de calcul” -
2
INTRODUCERE
CAP. 1
în accepţiunea sa de încăpere unde există un calculator mare la care utilizatorii vin să-şi ruleze programele este total depăşit. Vechiul model al unui singur calculator care serveşte rezolvării problemelor de calcul ale organizaţiei a fost înlocuit de un model în care munca este făcută de un număr mare de calculatoare separate, dar interconectate. Aceste sisteme se numesc reţele de calculatoare. Proiectarea şi organizarea acestor reţele reprezintă subiectul acestei cărţi. Pe parcursul cărţii vom folosi termenul „reţea de calculatoare” pentru a desemna o colecţie de calculatoare autonome interconcctate folosind o singură tehnologie. Se spune despre două calculatoare că sunt interconectate dacă sunt capabile să schimbe informaţie între ele. Conectarea nu se face neapărat printr-un cablu de cupru; pot fi folosite în acest scop fibra optică, radiaţii infraroşii, microunde sau sateliţi de comunicaţii. Reţelele pot fi de dimensiuni, tipuri şi forme diferite, aşa cum vom vedea ceva mai târziu. Deşi poate să pară straniu, nici Internet-ul şi nici World Wide Web-ul (reţea de întindere mondială) nu sunt reţele de calculatoare. Dacă parcurgeţi cartea până la sfârşit va fi clar şi de ce. Răspunsul simplist este următorul: Internet-ul nu este o singură reţea, ci o reţea de reţele, iar WWW este un sistem distribuit care funcţionează peste nivelul Internet-ului. A
In literatura de specialitate, se face deseori confuzie intre o reţea de calculatoare şi un sistem distribuit. Deosebirea esenţială este aceea că într-un sistem distribuit, o colecţie de calculatoare independente este percepută de utilizatorii ei ca un sistem coerent unic. De obicei, el are un model sau o unică paradigmă care îl reprezintă pentru utilizatori. Adesea, un modul software aflat pe nivelul superior al sistemului de operare (numit middleware) este responsabil pentru implementarea acestui model. Un bun exemplu de sistem distribuit arhicunoscut este chiar World Wide Web, în care totul ia în cele din urmă forma unui document (pagina Web). într-o reţea de calculatoare, coerenta, modelul si programele sunt absente. Utilizatorii au în faţa lor maşini locale, fără nici o intenţie de a face aceste staţii să arate si să se comporte într-adevăr ca un sistem unic coerent. Dacă însă maşinile se deosebesc prin structurile hardware sau chiar prin sistemul de operare, acest amănunt este vizibil pentru utilizatori. Dacă un utilizator doreşte să ruleze un program, el trebuie să se înregistreze pe maşina respectivă şi să lucreze acolo. De fapt, un sistem distribuit este un sistem de programe construit peste o reţea. Programele asigură reţelei un grad mare de coeziune şi transparenţă. De aceea, diferenţa majoră între o reţea şi un sistem distribuit nu apare la nivel de echipamente, ci de programe (în special la nivelul sistemului de operare). Nu mai puţin adevărat este faptul că între cele două subiecte există o suprapunere considerabilă. De exemplu, atât sistemele distribuite cât şi reţelele de calculatoare au nevoie să transfere fişiere. Diferenţa se referă la cine invocă transferul: sistemul sau utilizatorul. Deşi această carte are în vedere în primul rând reţelele, multe din subiectele abordate sunt importante şi în sistemele distribuite. Pentru mai multe informaţii despre sistemele distribuite, a se vedea (Tanenbaum şi Van Steen, 2002).
1.1 UTILIZĂRILE REŢELELOR DE CALCULATOARE înainte de examinarea în detaliu a problemelor tehnice, merită să arătăm de ce sunt oamenii interesaţi de reţelele de calculatoare şi la ce pot fi ele folosite. Până la urmă, dacă nimeni nu ar fi interesat de reţele de calculatoare, puţine reţele ar fi construite. Vom începe cu utilizările tradiţionale în cadrul companiilor şi pentru utilizatorii individuali, apoi ne vom deplasa spre dezvoltările recente privind utilizatorii mobili şi reţelele domestice.
SEC. 1.1
1.1.1
UTILIZĂRILE REŢELELOR DE CALCULATOARE
Aplicaţii comerciale
Multe companii au un număr semnificativ de calculatoare. De exemplu, o companie poate folosi calculatoare pentru monitorizarea producţiei, pentru urmărirea evoluţiei stocurilor, pentru calcularea statelor de plată. La început, fiecare din aceste calculatoare putea lucra izolat de celelalte, dar, la un moment dat, managerii au decis să le conecteze între ele pentru a putea extrage şi corela informaţii despre întreaga firmă. în termeni mai generali, subicctul se referă la împărţirea resurselor, iar scopul este de a face toate programele, echipamentele şi în special datele disponibile pentru oricine din reţea, indiferent de localizarea fizică a resursei şi a utilizatorului. Un exemplu uzual şi larg răspândit este existenţa unui grup de utilizatori care folosesc o imprimantă comună. Nici unul dintre utilizatori nu are nevoie de propria imprimantă, iar o imprimantă performantă de volum mare, legată în reţea este, de cele mai multe ori, mai ieftină, mai rapidă şi mai uşor de întreţinut decât o colecţie de imprimante individuale. Cu toate acestea, probabil chiar mai importantă decât partajarea resurselor fizice, cum sunt imprimantele, scannerele, dispozitivele de inscripţionat CD-uri, este partajarea informaţiei. Orice companie mare sau medie, dar şi multe dintre companiile mici sunt total dependente de informaţia prelucrată de calculatoare. Cele mai multe companii ţin înregistrările clienţilor, inventarele, evidenţa conturilor de încasări, rapoartele financiare, informaţiile despre taxe şi încă multe altele numai cu ajutorul calculatorului. Dacă toate calculatoarele sale se defectează, o bancă nu mai poate funcţiona mai mult de 5 minute. O fabrica modernă, cu o linie de asamblare condusă de calculator nu ar putea continua lucrul nici măcar atât. Chiar şi o mică agenţie de turism sau un birou de avocatură cu trei angajaţi sunt, în acest moment, dependente în mare măsură de reţelele de calculatoare, care le permit angajaţilor accesul instantaneu la informaţii relevante şi la documente. Pentru companiile mai mici, toate calculatoarele sunt cel mai probabil amplasate într-un singur birou sau poate într-o singură clădire, în timp ce pentru companiile mai mari calculatoarele şi angajaţii pot fi răspândiţi într-o mulţime de birouri şi fabrici din diferite ţări. Cu toate acestea, un agent de vânzări din New York poate avea uneori nevoie de acces la o bază de date cu inventarul produselor aflată în Singapore. Cu alte cuvinte, numai faptul ca un utilizator se află la 15.000 km de datele de care are nevoie nu îl poate împiedica să-şi folosească datele ca şi când ele ar fi locale. Pe scurt, scopul poate fi definit ca o încercare de a termina cu „tirania geografiei”. în termenii cei mai simpli se poate imagina sistemul informaţional al unei companii ai fiind alcătuit din una sau mai multe baze de date şi un număr de angajaţi care au nevoie de acces de la distanţă. în acest model, datele sunt memorate în calculatoare performante, numite servere (servers). Adesea, acestea sunt plasate şi întreţinute centralizat de un administrator de sistem. Din contră, angajaţii au maşini mai simple, numite clienţi (clients), plasate pe birourile lor, prin intermediul cărora accesează datele aflate la distanţă pentru a le include, de exemplu, în foile de calcul pe care le construiesc. (Uneori ne vom referi la operatorul care foloseşte o maşină client cu numele de „client”, dar va fi clar din context dacă referirea este la maşină sau la utilizatorul ei). Maşinile server si client sunt conectate în reţea, aşa cum este ilustrat în fig. 1-1. De notat că am reprezentat reţeaua ca un simplu oval, fără nici un alt detaliu. Vom mai folosi accastă formă pentru a reprezenta o reţea în mod abstract. Atunci când sunt necesare mai multe detalii, ele vor fi furnizate.
3
4
INTRODUCERE
CAP. 1
Fig. 1 - 1 . 0 reţea cu doi clienţi şi un server. Această structură reprezintă modelul client-server. Este folosit frecvent şi reprezintă baza pe care lucrează multe reţele. Este aplicabil atunci când clientul şi serverul se află în aceeaşi clădire (de exemplu, dacă ambele aparţin aceleiaşi companii), dar şi atunci când între ele este o distanţă mai mare. De exemplu, atunci când o persoană aflată acasă face un acces la o pagină Web, este folosit acelaşi model, în care serverul Web aflat la distanţă are rol de server, iar calculatorul personal al utilizatorului are rol de client. în cele mai multe situaţii, un server poate lucra cu un număr marc de clienţi. Dacă privim mai în detaliu modelul client-server, constatăm că sunt implicate două procese, unul aflat pe maşina client şi unul aflat pe maşina server. Comunicaţia ia forma transmiterii prin reţea a unui mesaj de la procesul client către procesul server. în continuare, procesul client va aştepta un mesaj de răspuns. Atunci când procesul server primeşte cererea, execută acţiunea solicitată sau caută datele cerute şi transmite un răspuns. Aceste mesaje sunt prezentate în fig. 1-2.
Fig. 1-2. Modelul client-server implică cereri şi răspunsuri. Un al doilea scop al construirii unei reţele de calculatoare este mai mult legat de oameni decât de informaţie sau chiar calculatoare. O reţea de calculatoare poate constitui un puternic mediu de comunicare între angajaţi. Aproape orice companie care are două sau mai multe calculatoare are acum poşta electronica (e-mail), pe care angajaţii o folosesc intens pentru comunicaţiile zilnice. De fapt, una dintre neplăcerile discutate intens între angajaţi este multitudinea de mesaje, în mare parte lipsite de sens, cu care trebuie să se confrunte zilnic pentru că şefii au descoperit că pot trimite acelaşi mesaj (de cele mai multe ori chiar fără conţinut) tuturor subordonaţilor, prin apăsarea unui singur buton. Dar poşta electronică nu este singura formă de comunicaţie îmbunătăţită care a fost făcută posibilă de reţelele de calculatoare. Cu o reţea, este uşor pentru doi oameni care lucrează la mare distanţă unul de altul să scrie un raport împreună. Când unul dintre ei face o modificare asupra unui document din reţea, ceilalţi vor putea vedea modificarea imediat, în loc să aştepte o scrisoare timp de mai multe zile. O astfel de accelerare face din cooperarea
SEC. 1.1
UTILIZĂRILE REŢELELOR DE CALCULATOARE
în cadrul grupurilor de oameni aflaţi la distanţă o simplă comunicare, fapt impasibil cu ceva timp în urmă. O altă formă de comunicare asistată de calculator o reprezintă videoconferinţele. Folosind această tehnologie, angajaţii din locuri aflate la distanţă pot ţine o întrunire, pot să se vadă şi să se audă între ei, şi pot scrie chiar pe o tablă virtuală partajată. Videoconferinţa este o modalitate eficientă de eliminare a costurilor şi timpului pierdute anterior pentru a călători. Se spune uneori că între comunicare şi transport este o competiţie şi că activitatea care câştigă o face pe cealaltă să pară depăşită. Un al treilea scop pentru tot mai multe companii este realizarea electronică a comerţului cu alte companii, în special cu furnizorii şi clienţii. De exemplu, producătorii de automobile, avioane sau calculatoare, printre alţii, cumpără subansamble de la diverşi furnizori şi apoi le asamblează. Folosind reţelele de calculatoare, producătorii pot plasa comenzile electronic, după cum este nevoie. Posibilitatea de a plasa comenzi în timp real (dacă este nevoie) reduce necesitatea stocurilor mari şi sporeşte eficienţa. Un al patrulea scop care devine din ce în ce mai important este realizarea de tranzacţii cu consumatorii prin Internet. Companiile aeriene, librăriile şi magazinele de muzică au descoperit că multor consumatori le place comoditatea de a-şi face cumpărăturile de acasă. în consecinţă, multe companii oferă on-line cataloage cu bunurile şi serviciile disponibile şi chiar primesc comenzi on-line. Este de aşteptat ca acest sector să se dezvolte rapid în continuare. El este numit comerţ electronic (e- commerce, electronic commcrce).
1.1.2
Aplicaţii domestice i
A
In 1977 Ken Olsen era preşedinte al Digital Equipment Corporation, care era pe vremea aceea a doua companie în lume în vânzarea de calculatoare (după IBM). Atunci când a fost întrebat de ce Digital nu se implică mai mult în piaţa calculatoarelor personale, el a răspuns: „Nu există nici un motiv ca fiecare individ să aibă un calculator acasă.” Istoria a arătat că răspunsul a fost greşit, iar Digital nu mai există. De ce cumpără oamenii calculatoare pentru a le folosi acasă? La început, pentru prelucrarea de texte şi pentru jocuri, dar în ultimii ani această imagine s-a schimbat radical. Probabil că în accst moment cel mai important motiv este accesul la Internet. Unele dintre cele mai populare utilizări ale Internct-ului pentru utilizatorii casnici sunt următoarele: 1. 2. 3. 4.
Accesul la informaţie de la distanţă. Comunicaţiile interpersonale. Divertismentul interactiv Comerţul electronic
Accesul informaţiei la distanţă ia forme multiple. Poate fi navigarea pe Web pentru informaţii sau doar pentru distracţie. Categoriile de informaţii disponibile includ artele, afacerile, gastronomia, guvernarea, sănătatea, istoria, preocupările din timpul liber, modalităţile de recreere, ştiinţa, sporturile, călătoriile, şi multe altele. Distracţia este de prea multe feluri ca să poată fi menţionate, plus câteva care e mai bine să rămână nemenţionate. Multe ziare sunt acum disponibile on-line şi pot fi personalizate. De exemplu, este uneori posibil să spui unui ziar că doreşti să obţii totul despre politicienii corupţi, despre marile incendii, despre scandalurile în care sunt implicate celebrităţile şi despre epidemii, dar nu despre fotbal. Uneori este ciliar posibil să vă aduceţi articolele selectate pe discul local, în timp ce dormiţi, sau să le tipăriţi înainte de micul dejun. Şi cum această tendinţă continuă să se dezvolte, va cauza o creştere importantă a ratei şomajului printre băieţii de 12 ani care distribuie ziare, dar redacţiilor ziarelor le place această variantă, pentru ca distribuţia a fost întotdeauna cea mai slabă verigă din întregul lanţ de producţie. Pasul următor după ziare (împreună cu revistele şi jurnalele ştiinţifice) este biblioteca digitală on- line. Multe organizaţii profesionale, cum sunt ACM (mvw.acm.org) şi IEEE Computer Society (www.computer.org) au deja disponibile on-line multe dintre jurnale şi prezentări de la conferinţe. Alte grupuri urmează rapid această tendinţă. în funcţie de costul, dimensiunile şi greutatea unui calculator portabil, cărţile tipărite vor deveni desuete. Scepticii
5
6
INTRODUCERE
CAP. 1
ar trebui să fie atenţi la efectul pe care l-a avut tiparul asupra manuscriselor medievale iluministe. Toate aceste aplicaţii presupun interacţiuni între o persoană şi o bază de date aflată la distanţă. O a doua categorie largă de utilizări ale reţelei este comunicarea între persoane - este vorba în primul rând de replica secolului XXI la telefonul din secolul al XIX-lea. Poşta electronică, sau e-mail- ul, este deja folosită zi de zi de milioane de oameni din toată lumea şi gradul de utilizare este în continuă creştere. Conţine deja, în mod curent, pe lângă text şi poze, secvenţe audio şi video. în schimb, va dura ceva mai mult până când se va pune la punct înglobarea mirosului în mesaje. Orice adolescent este dependent de mesageria instantanee (instant messaging). Această facilitate, derivată din programul UNIX talk (ro: vorbeşte) folosit încă din anii 1970, le permite celor doi care doresc să comunice săşi trimită mesaje unul altuia în timp real. O versiune multipersonală a acestei idei este chat-room-ul (ro: camera de discuţii) în care o persoană dintr-un grup poate trimite mesaje către întregul grup. Grupurile de ştiri de pe tot globul, cu discuţii privind orice subiect imaginabil, fac deja paite din realitatea cotidiană a unei anumite categorii de persoane, iar acest fenomen va creşte până la dimensiunile întregii omeniri. Discuţiile, în care o persoană trimite un mesaj şi toţi ceilalţi abonaţi ai grupului de interes pot să-l citească, se derulează în toate stilurile posibile, putând fi la fel de bine extrem de amuzante sau de pătimaşe. Spre deosebire de camerele de discuţii (chatroom-uri), grupurile de interese nu sunt în timp real şi mesajele sunt salvate astfel încât atunci când cineva se întoarce din vacanţă, toate mesajele care au fost primite între timp aşteaptă cuminţi să fie citite. Un alt tip de comunicaţie interpersonală se numeşte adesea comunicaţie de la egal-la-egal (peer- to-peer), pentru a o distinge de modelul client-server (Parameswaran et al., 2001). în această formă, persoanele independente care formează un grup oarecare comunică în cadrul grupului, după cum se vede în fig. 1 -3. Fiecare persoana poate, în principiu, să comunice cu una sau mai multe persoane; nu există o departajare clară între clienţi şi servere. Comunicaţiile de la egal-la-egal au explodat în jurul anului 2000 cu un serviciu numit Napster, care la apogeu avea peste 50 de milioane de fani ai muzicii care schimbau între ci melodii. A fost probabil cea mai mare înfrângere a drepturilor de autor din toată istoria lor (Lam şi Tan, 2001; şi Macedonia, 2000). Ideea era destul de simplă. Membrii înregistrau muzica pe care o aveau pe discurile locale într-o bază de date centrală întreţinută de serverul Napster. Dacă un membru dorea o melodie, verifica baza de date ca să vadă cine o are şi se ducea direct la sursă pentru a o lua. Şi pentru că Napster nu ţinea nici un fel de muzică pe maşinile proprii, Napster a argumentat că nu a încălcat drepturile de autor ale nimănui. Dar tribunalul nu a fost de acord şi a închis sistemul.
SEC. 1.1
UTILIZĂRILE REŢELELOR DE CALCULATOARE
Fig. 1-3. într-un sistem de la egal la egal nu sunt clienţi şi servere fixe. Oricum, următoarea generaţie de sisteme de la egal-la-egal elimină baza de date centrală deoarece fiecare utilizator îşi va întreţine propria bază locală şi va oferi o listă de alţi utilizatori membri ai sistemului aflaţi în apropiere. Un nou utilizator va putea atunci să viziteze fiecare membru şi să vadă ce anume are acesta şi care este lista de utilizatori aflaţi în apropierea sa. Acest proces de căutare poate fi repetat Ia infinit pentru a crea o bază de date de dimensiune mare cu ceea ce se regăseşte în sistem. Este o activitate care ar deveni tracasantă pentru utilizatori, dar pentru care calculatoarele sunt excelente. Există de asemenea şi aplicaţii legale pentru comunicaţiile de la egal-la-egal. De exemplu, fanii partajează muzica neprotejată de drepturile de autor sau noile extrase de melodii pe care formaţiile muzicale le oferă în scop publicitar, familiile partajează poze, filme şi informaţii genealogice, iar adolescenţii joacă on-line jocuri cu mai mulţi participanţi. De fapt, una dintre cele mai populare aplicaţii ale Internet-ului, poşta electronică, este în mod implicit de la egal-la-egal. Este de aşteptat ca această formă de comunicaţie să crească semnificativ în viitor. Criminalitatea electronică nu este limitată la încălcarea drepturilor de autor. O altă zonă fierbinte este cea a jocurilor de noroc electronice. Calculatoarele au simulat tot felul de lucruri timp de decenii. De ce să nu simuleze şi automatele cu fise, roata ruletei, masa de blackjack, şi multe alte echipamente pentru jocurile de noroc? Ei bine, deoarece este ilegal în multe locuri. Problema este că jocurile de noroc sunt legale în multe alte părţi (în Anglia de exemplu) şi proprietarii de cazinouri din astfel de state au înţeles potenţialul jocurilor de noroc pe Internet. Ce se întâmplă dacă jucătorul şi cazinoul se află în ţări diferite, cu legi diferite? Bună întrebare. Alte aplicaţii orientate pe comunicaţii includ utilizarea Internet-ului ca suport pentru convorbiri telefonice, conferinţe video sau radio, trei domenii în plină dezvoltare. O altă aplicaţie este învăţământul la distanţă, aceasta însemnând ca poţi să urmăreşti cursurile de la 8 dimineaţa fără a trebui să te dai mai întâi jos din pat. Pe termen lung, utilizarea calculatoarelor pentru a îmbunătăţi comunicaţiile interumanc se va putea dovedi mai importantă decât oricare alte utilizări. A treia categorie avută în vedere este divertismentul, care reprezintă o industrie uriaşă, în continuă creştere. în acest domeniu aplicaţia de cel mai mare succes (cea care poate să influenţeze tot restul) se numeşte video la cerere. Este plauzibil ca peste vreo zece ani să putem selecta orice film sau program de televiziune realizat vreodată în orice ţară şi acesta să fie imediat disponibil pe ecra
7
8
INTRODUCERE
CAP. 1
nul nostru. Filmele noi ar putea deveni interactive: spectatorul ar fi întrebat în anumite momente ce continuare a povestirii alege (să-l ucidă MacBeth pe Duncan sau să aştepte o ocazie mai bună?), fiind prevăzute scenarii alternative pentru toate cazurile. De asemenea, televiziunea în direct s-ar putea desfăşura interactiv, cu telespectatori care participă la concursuri, care aleg câştigătorul dintre concurenţii preferaţi şi aşa mai departe. Pe de altă parte, poate că nu sistemul de video la cerere, ci jocurile vor reprezenta aplicaţia de maxim succes. Există deja jocuri pentru mai multe persoane cu simulare în timp real, de exemplu v-aţi ascuns într-o închisoare virtuală sau simulatoare de zbor în care jucătorii unei echipe încearcă să-i doboare pe cei din echipa adversă. Dacă jocurile sunt jucate cu ochelari pentru realitatea virtuală, în medii tridimensionale, în timp real şi cu imagini de calitate fotografică, atunci avem un fel de realitate virtuală globală şi partajată. Cea de-a patra categorie este comerţul electronic în cel mai larg sens al cuvântului. Cumpărăturile făcute de acasă sunt deja populare şi permit utilizatorilor să inspecteze on-line cataloagele a mii de companii. Unele dintre aceste cataloage vor oferi în curând posibilitatea de a obţine o prezentare video imediată a oricărui produs printr-o simplă selectare a numelui produsului. După ce un client cumpără electronic un produs, dar nu poate să îşi dea seama cum să îl folosească, poate fi consultat departamentul de ajutor on-line. O altă arie de interes în care comerţul electronic este deja implementat este accesul la instituţiile financiare. Mulţi oameni îşi plătesc facturile, îşi administrează conturilc bancarc şi îşi manevrează investiţiile electronic. Acestea se vor dezvolta şi mai repede de îndată ce reţelele vor deveni mai sigure. O zonă de interes pe care nimeni nu o întrevedea ca interesantă este talciocul electronic (flea market). Licitaţiile on-line de bunuri la mâna a doua au devenit o industrie uriaşă. Spre deosebire de comerţul electronic tradiţional, care este construit după modelul client-scrver, licitaţiile on-line sunt mai aproape de sistemul de la egal-la-egal, un fel de consumator-la-consumator. Unele dintre aceste forme de comerţ electronic au obţinut porecle simpatice, plecând de la faptul că, în limba engleză, „2 (two) ” şi „to” se pronunţă la fel. Cele mai populare sunt prezentate în fig. 1-4. Prescurtare B2C B2B G2C C2C P2P
Nume întreg Companie la Consumator (Bussiness Consumer) Companie la Companie (Bussiness Bussiness) Guvern la consumator (Government Consumer) Consumator la Consumator (Consumer to Consumer) Punct la Punct (Peer-to-Peer)
to to to
Exemplu Comanda de cărţi online Fabricantul de maşini comandă cauciucuri de la furnizor Guvernul distribuie formularele pentru taxe în format electronic Licitarea de produse mâna a doua online Partajare de fişiere
Fig. 1-4. Unele forme de comerţ electronic. Fără îndoială că domeniile de utilizare pentru reţelele de calculatoare se vor dezvolta încă şi mai mult în viitor şi probabil că vor aborda direcţii pe care acum nu le poate prevedea nimeni. La urma urmei, câţi oameni ar fi crezut în 1990 că adolescenţii care îşi scriu plictisiţi mesaje pe telefoanele mobile în timp ce călătoresc cu autobuzul vor deveni o imensă sursă de bani pentru companiile de telefonie mobilă? Cu toate acestea, serviciul de mesaje scurte este extrem de profitabil. Reţelele de calculatoare pot deveni foarte importante pentru oamenii care se află în locuri mai greu accesibile cărora le pot oferi accesul la aceleaşi servicii la disponibile şi celor care stau în centrul oraşelor. învăţământul la distanţă poate afecta hotărâtor educaţia; universităţile vor deveni naţionale sau chiar internaţionale. Medicina la distanţă este abia la început (de exemplu monitorizarea pacienţilor de la distanţă), dar poate să devină mult mai importantă. Dar aplicaţia cea mai de succes poate să fie ceva mai practică, cum ar fi folosirea unei camere digitale în frigider pentru a vedea dacă trebuie să cumperi lapte când vii acasă de la serviciu.
1.13
Utilizatorii mobili
SEC. 1.1
UTILIZĂRILE REŢELELOR DE CALCULATOARE
Calculatoarele mobile, cum sunt portabilele sau PDA-urile (Personal Digital Assistant, rom: asistent digital personal) sunt unele dintre segmentele cu dezvoltarea cea mai rapidă din industria calculatoarelor. Mulţi posesori ai acestor calculatoare au calculatoare la birou şi doresc să fie conectaţi la ele chiar şi când sunt plecaţi de acasă sau pe drum. Şi cum a avea o conexiune pe fir este imposibil în maşini sau în avioane, există un interes deosebit pentru reţelele fără fir. In această secţiune vom studia pe scurt câteva dintre aplicaţiile reţelelor fără fir. De ce şi-ar dori cineva o astfel de reţea? Unul dintre motivele uzuale este că obţine un birou portabil. Oamenii care călătoresc mult doresc să-şi poată folosi echipamentele electronice portabile pentru a trimite şi pentru a primi apeluri telefonice, faxuri şi poşta electronică, pentru a naviga pe Web, pentru a acccsa fişiere la distanţă şi pentru a se putea conecta la maşini aflate la distanţă. Şi vor să poată face toate acestea în orice loc de pe Pământ, de pe mare sau din aer. De exemplu, în ultima vreme, la conferinţele legate de calculatoare organizatorii setează o reţea locală fară fir în încăperea în care se ţin conferinţele. Oricine are un calculator portabil cu un modem fară fir va trebui doar să îşi pornească propriul calculator pentru a fi conectat la Internet, ca şi cum calculatorul ar fi conectat cu un fir într-o reţea obişnuită. Similar, unele universităţi au instalat reţele fără fir în campus, astfel încât studenţii să poată sta la umbra copacilor şi să consulte catalogul bibliotecii sau să-şi citească poşta electronică. Reţelele fără fir sunt de mare valoare pentru parcurile de taximetre, camioane, vehicule utilizate pentru livrare şi chiar echipe de intervenţie, pentru a fi mereu în contact cu baza. De exemplu, în multe oraşe şoferii de taxi sunt oameni de afaceri independenţi, nu angajaţi ai unei companii de taximetre. în unele dintre aceste oraşe, taximetrele au un ecran pe care şoferul îl poate vedea. Când sună un client, un dispecer central introduce locul de unde trebuie preluat clientul şi destinaţia unde acesta doreşte să ajungă. Această informaţie este afişată pe ecranul din taximetru şi se generează un semnal sonor. Primul şofer care atinge un buton al ecranului este cel care preia apelul. Reţelele fără fir sunt de asemenea importante în domeniul militar. Dacă vrei să porneşti un război oriunde în lume într-un termen scurt, a conta pe infrastructura de reţea de la faţa locului nu este, cel mai probabil, o idee bună. Este mai bine să o aduci pe a ta de acasă. Deşi reţelele fără fir şi calculatoarele mobile sunt deseori în strânsă legătură, ele nu sunt domenii identice, după cum arată şi fig. 1-5. Aici se vede diferenţa între fix iară fir şi mobil fară fir. Chiar şi calculatoarele portabile au uneori nevoie de cablu. De exemplu, dacă un călător conectează firul de la calculatorul său portabil în priza de telefon din camera de hotel, el are mobilitate, folosindu-se totuşi de cablu. Fără fir Nu Nu Da Da
Mobil Nu Da Nu Da
Aplicaţii Calculate arele staţionare de pe mesele de lucru din birouri Un calcu ator portabil folosit într-o camera de hotel Reţelele n clădiri mai vechi, necablate Biroul po rtabil; PDA pentru inventarul magazinului
Fig. 1-5. Combinaţii de reţele fără fir şi echipamente mobile. Pe de altă parte, unele calculatoare fără fir nu sunt mobile. Un exemplu important este o companie care are o clădire mai veche, necablată pentru reţea şi doreşte să îşi interconecteze calculatoarele. Instalarea unei reţele fără fir necesită doar puţin mai mult decât a cumpăra o cutie care are ceva electronică, a o despacheta şi a o conecta. Totuşi, această soluţie poate fi mult mai ieftină decât a pune un tehnician să tragă cabluri pentru a cabla întreaga clădire. Există, desigur, aplicaţii cu adevărat mobile şi fară fire, de la birourile portabile până la oamenii care, intrând în magazin cu un PDA pot face inventarul. La multe aeroporturi aglomerate, óamenii care se ocupă de primirea maşinilor care au fost închiriate lucrează cu ajutorul calculatoarelor portabile iară fire. Ei introduc numărul de înmatriculare al maşinilor care sunt returnate şi echipamentul portabil, care are o imprimantă ataşată, apelează calculatorul principal, obţine informaţiile despre închiriere şi tipăreşte pe loc factura. Pe măsură ce tehnologiile de comunicaţie fără fir devin din ce în ce mai răspândite, sunt pe cale să apară tot mai multe aplicaţii. Să analizăm rapid unele posibilităţi. Aparatele de taxat fără fir pentru plata parcării au avantaje atât pentru utilizatori cât şi pentru mai marii oraşului. Aparatele de taxat pot să accepte cărţi de credit sau de debit şi să le verifice imediat prin conexiunea fără fir. Când perioada pentru care s-a plătit expiră, aparatul
9
10
INTRODUCERE
CAP. 1
poate să verifice existenţa unei maşini în locul de parcare (va trimite un semnal înspre ea şi, dacă acesta este reflectat, în spaţiul respectiv se găseşte o maşină) şi să raporteze poliţiei eventuala depăşire. S-a estimat că, numai la nivelul oraşelor din SUA, municipalităţile ar putea obţine un plus de 10 miliarde de dolari folosind această variantă (Harte et al., 2000). Mai mult, sancţionarea mai riguroasă pentru parcarea ilegală va ajuta mediul înconjurător, deoarece şoferii care ştiu că vor fi prinşi în cazul în care parchează ilegal ar putea să folosească transportul în comun. Automatele de gustări, băuturi şi alte bunuri se găsesc peste tot. Desigur, mâncarea nu ajunge în aceste automate prin puterea magiei. Periodic, cineva vine cu un camion pentru a le umple. Dacă automatele însele ar transmite printr-o conexiune fără fir un raport în fiecare zi pentru a comunica stocurile curente, şoferul camionului ar şti ce maşini trebuie re-aprovizionate şi ce cantitate din fiecare produs trebuie să aducă. O astfel de informaţie ar duce la o planificare mai eficientă a drumului. Desigur, această informaţie ar putea să fie transmisă şi prin liniile telefonice standard, dar soluţia de a da fiecărui automat o conexiune fixă de telefon pentru un singur apel pe zi este scumpă din cauza taxei lunare fixe. O altă zonă în care tehnologiile de conectare fără fir pot să ducă la economii sunt citirile contoarelor pentru diverse utilităţi. Varianta în care consumul la energie electrică, gaze, apă, şi alte utilităţi care se regăsesc în casele oamenilor ar putea să fie raportat folosind o astfel de conexiune fără fir, nu ar mai fi nevoie să fie trimişi pe teren angajaţi care să se ocupe de citirea contoarelor. Similar, detectoarele de fum fără fir ar putea să sune la divizia de Pompieri în Ioc să facă un zgomot infernal (care este lipsit de orice valoare dacă nu este nimeni acasă). Deoarece costul dispozitivelor radio şi cel al timpului de emisie scad, din ce în ce mai multe măsurători se vor face prin intermediul reţelelor fără fire. O arie de aplicaţii complet diferită pentru reţelele fără fir este mult aşteptata fuziune între telefoanele mobile şi PDA-uri în mici calculatoare fără cablu. O primă încercare a fost făcută cu micile PDA-uri, care puteau să afişeze pagini Web simplificate pe minusculele lor ecrane. Acest sistem, numit WAP 1.0 (Wireless Application Protocol, rom: protocolul aplicaţiilor fără fir) a eşuat, tocmai din cauza ecranelor prea mici, a lărgimii de bandă scăzute şi a serviciilor slabe calitativ. Dar dispozitivele şi serviciile mai noi vor funcţiona mai bine cu WAP 2.0. O zonă în care aceste dispozitive pot fi excelente este denumită comerţ mobil (m-commerce) (Senn, 2000). Forţa care stă în spatele acestui fenomen constă dintr-un amalgam de producători de dispozitive PDA fără fir şi operatori de reţea care încearcă din răsputeri să găsească o soluţie pentru a obţine o bucată din plăcinta comerţului electronic. Una dintre speranţele lor este să folosească PDA-urile fără fir pentru operaţiuni bancare şi pentru cumpărături. O idee este utilizarea PDA- urilor ca pc un fel de portofel electronic, autorizând plăţile în magazine, ca un înlocuitor pentru banii lichizi şi pentru cărţile de credit. Suma cheltuită apare apoi pe factura telefonului mobil. Din punct de vedere al magazinelor, această schemă aduce un câştig prin economisirea taxelor plătite companiei de cărţi de credit, taxă care poate fi de câteva procente. Desigur, acest plan poate fi dezavantajos, deoarccc clienţii dintr-un magazin îşi pot folosi PDA-urile pentru a verifica preţurile concurenţei înainte de a cumpăra. încă şi mai rău, companiile de telefoane pot oferi PDA-uri cu cititoare de coduri de bare care să permită unui clicnt să scaneze un produs dintr-un magazin şi apoi să obţină instantaneu un raport detaliat despre alte locuri în care acelaşi produs se găseşte şi despre preţul lui. Deoarece operatorul reţelei ştie unde anume se găseşte utilizatorul, unele servicii sunt în mod intenţionat dependente de loc. De exemplu, poate fi posibil să afli localizarea unui magazin de cărţi sau a unui restaurant chinezesc din apropiere. Hărţile mobile sunt un alt candidat La fel sunt şi prognozele meteo foarte localizate („Când o să se oprească ploaia în curtea mea din spate?”). Fără îndoială că multe alte aplicaţii or să apară pe măsură ce aceste dispozitive devin tot mai răspândite. Unul dintre lucrurile importante după care comerţul mobil s-a orientat este acela că utilizatorii de telefoane mobile sunt obişnuiţi să plătească pentru tot (spre deosebire de utilizatorii de Internet, care aşteaptă totul gratis). Dacă un sit Internet ar impune o taxă pentru a permite utilizatorilor săi să plătească prin intermediul cărţii de credit, s-ar naşte o grămadă de proteste zgomotoase din partea utilizatorilor. Dacă un operator de telefonie mobilă
SEC. 1.1
UTILIZĂRILE REŢELELOR DE CALCULATOARE
ar permite oamenilor să plătească pentru articolele dintr-un magazin folosind telefonul şi apoi le-ar fi impus o taxă pentru acest serviciu, probabil că totul ar fi fost perceput ca normal. Timpul va decide. Ceva mai departe în timp sunt reţelele personale (personal area networks) şi calculatoarele la purtător (wearable computers). IBM a dezvoltat un ceas care rulează Linux (inclusiv sistemul de ferestre XII) şi are conexiune fără fir la Internet pentru a trimite şi primi mesaje prin poşta electronică (Narayanaswami et al., 2002). în viitor, oamenii vor putea schimba cărţi de vizită numai prin punerea ceasurilor lor faţă în faţă. Calculatoarele la purtător, fără fir, vor putea permite accesul oamenilor în încăperi securizate în acelaşi fel în care cârdurile cu benzi magnetice o fac astăzi (probabil că vor lucra în combinaţie cu un cod PIN sau cu măsurători biometrice). Este pasibil ca aceste ceasuri să fie capabile chiar să obţină informaţiile relevante în vecinătatea utilizatorului (de exemplu restaurante locale). Posibilităţile sunt infinite. Ceasurile inteligente cu radio au fost parte din spaţiul nostru mental încă de când au apărut în benzile comice cu Dick Tracy în 1946. Dar praful inteligent? Cercetătorii de la Berkley au construit un calculator fără fir într-un cub cu latura de 1 mm (Warneke et al., 2001). Aplicaţiile potenţiale includ evidenţa stocurilor, pachetelor, ba chiar şi a păsărelelor, rozătoarelor şi insectelor.
1.1.4
Aspecte sociale
Introducerea pe scară largă a reţelelor va ridica noi probleme sociale, etice şi politice. Vom menţiona pe scurt câteva dintre ele; un studiu exhaustiv ar necesita cel puţin o carte. O aplicaţie populară a multor reţele sunt grupurile de interese sau sistemele de informare în reţea (BBS-urile), unde oa
11
12
INTRODUCERE
CAP. 1
menii pot schimba mesaje cu persoane având preocupări similare. Atâta vreme cât este vorba de subiecte tehnice sau de pasiuni precum grădinăritul, nu sunt motive să apară multe probleme. Problemele se ivesc în cazul grupurilor de interese care iau în discuţie subiecte delicate sau extrem de disputate, cum ar fi politica, religia sau sexul. Atitudinile exprimate în cadrul acestor grupuri pot fi considerate ofensatoare de către anumiţi oameni. Mai mult chiar, nu este obligatoriu ai mesajele să se limiteze la text. Fotografii color de înaltă rezoluţie şi chiar scurte clipuri video pot fi acum transmise cu uşurinţă prin reţelele de calculatoare. Unii oameni au o atitudine neutră („trăieşte şi lasă-mă să trăiesc”), dar alţii consideră că trimiterea anumitor materiale (de exemplu, atacuri la anumite ţări sau religii, pornografia etc.) este pur şi simplu inacccptabilă şi trebuie cenzurată. Diverse ţări au diverse legi în acest domeniu, uneori chiar contradictorii. De accea, discuţiile sunt în continuare aprinse. Unii oameni au dat în judecată operatori de reţea, pretinzând că ei sunt responsabili pentru informaţia care circulă, exact ca în cazul ziarelor şi revistelor. Răspunsul inevitabil este că reţeaua e ca o companie de telefoane sau ca un oficiu poştal şi nu poate controla ceea ce discută utilizatorii săi. Mai mult chiar, dacă operatorii reţelei ar cenzura mesajele, atunci probabil că ei ar putea şterge orice fără a exista nici cea mai mică posibilitate de a-i da în judecată, încălcând astfel dreptul utilizatorilor la exprimare liberă. Nu este, probabil, hazardat să afirmăm că această dezbatere va continua mult timp. O altă dispută animată are în atenţie drepturile angajaţilor în raport cu drepturile patronilor. Multe persoane citesc şi scriu poştă electronică la serviciu. Directorii unor firme au pretins că ar avea dreptul să citească şi eventual să cenzureze mesajele angajaţilor, inclusiv mesajele trimise dc la calculatoarele de acasă, după orele de program. Numai că nu toţi angajaţii agreează această idee. Dar chiar admiţând că directorii au o astfel dc putere asupra angajaţilor, există o relaţie similară şi între universităţi şi studenţi? Dar între licee şi elevi? în 1994 Universitatea Camegie-Mellon a hotărât să blocheze mesajele care veneau de la grupuri de interese legate de sex pe motivul că materialele nu erau potrivite pentru minori (adică pentru cei câţiva studenţi care nu aveau încă 18 ani). Disputa izvorâtă din această decizie va dura ani întregi. Un alt subiect cheie este relaţia guvern-cetăţean. FBI a instalat la mulţi furnizori de servicii Internet un sistem care să supravegheze toate mesajele de poştă electronică care vin şi pleacă în căutarea de amănunte din domeniile sale de interes (Blaze şi Bellovin, 2000; Sobei, 2001 şi Zacks, 2001). Sistemul a fost numit la început „Carnivore”, dar din cauza publicităţii negative de care a avut parte a fost redenumit cu un nume care suna ceva mai inocent: DCSI000. Dar scopul lui a rămas acclaşi: de a spiona milioane de oameni în speranţa că se vor găsi informaţii despre activităţi ilegale. Din păcate, al patrulea amendament al Constituţiei SUA interzice cercetările guvernamentale iară mandat de căutare. Dacă aceste 54 de cuvinte scrise în secolul al 18-lea au în continuare o oarecarc valoare în secolul 21, tribunalele vor rămâne ocupate până în secolul 22. Guvernul nu are monopol la ameninţarea intimităţii cetăţeanului. Sectorul privat îşi are şi cl partea lui. Dc exemplu, micile fişiere denumite cookies (prăjiturele) pe care programele de navigare le stochează pe calculatoarele utilizatorilor permit companiilor să urmărească activităţile utilizatorilor în cyberspace şi, de asemenea, pot face ca numerele cărţilor de credit, numerele de asigurări sociale sau alte informaţii strict confidenţiale să fie accesibile în Internet (Berghel, 2001). Reţelele de calculatoare oferă posibilitatea dc a trimite mesaje anonime. în anumite situaţii aşa ceva este de dorit. De exemplu, reprezintă un mijloc pentru studenţi, soldaţi, angajaţi, cetăţeni de a trage un semnal de alarmă fără teamă de represalii - în cazul comportamentului ilegal al profesorilor, ofiţerilor, directorilor sau politicienilor. Pe de altă parte, în Statele Unite şi în majoritatea democraţiilor, legea asigură în mod explicit dreptul unei persoane acuzate de a-şi chema acuzatorul în faţa Curţii. Acuzaţiile anonime nu pot servi drept probă. Pe scurt, reţelele de calculatoare, asemenea industriei tipografice cu 500 de ani în urmă, permit cetăţenilor obişnuiţi să-şi lanseze opiniile prin mijloace diferite şi către audienţe diferite faţă de cele de până acum. Această libertate nou descoperită aduce cu ea probleme nerezolvate de ordin social, politic şi moral.
SEC. 1.2
HARD WARE-UL REŢELEI
Odată cu binele vine şi răul. Viaţa pare a fi construită astfel. Internetul oferă posibilitatea de a găsi repede informaţii, dar multe dintre ele sunt greşit informate, tendenţioase sau chiar complet eronate. Sfatul medical pe care tocmai l-aţi luat de pe Internet poate să vină de la un laureat al premiului Nobel sau de la un repetent din liceu. Reţelele de calculatoare au introdus de asemenea şi noi tipuri de comportamente antisociale şi infracţionale. Transmiterea electronică a fleacurilor şi gunoaielor (eng.: junk) a devenit parte din viaţă pentru că oamenii au colecţionat milioane de adrese pe care le vând pe CD-ROM-uri aşa-zişilor agenţi de marketing. Mesajele care au un conţinut activ (de obicei programe sau macrouri care se execută pe maşina receptorului) pot avea efecte distructive. Furtul de identitate devine o problemă serioasă, pentru că hoţii colectează destule informaţii despre o potenţială victimă pentru a putea obţine cărţi de credit şi alte documente în numele acesteia. In fine, posibilitatea de a transmite digital muzică şi filme a deschis uşa pentru încălcarea masivă a drepturilor de autor care sunt greu de depistat şi pedepsit. Multe dintre aceste probleme puteau fi rezolvate dacă industria de calculatoare ar fi luat în serios securitatea calculatoarelor. Dacă toate mesajele erau criptate şi autentificate, ar fi fost mai greu să se comită nedreptăţi sau furturi. Această tehnologie este bine conturată şi o vom studia în detaliu în cap. 8. Problema este că vânzătorii de hardware şi aplicaţii software ştiu că introducerea unor atribute de securitate castă bani, iar cumpărătorii nu solicită astfel de atribute. Mai mult, un număr substanţial de probleme este determinat de aplicaţiile care funcţionează cu erori, ceea ce se întâmplă pentru că producătorii adaugă din ce în ce mai multe facilităţi programelor lor, ceea ce înseamnă inevitabil mai mult cod şi de aceea mai multe erori. O taxă pentru noile facilităţi ar putea ajuta, dar ar face produsele greu de vândut în anumite segmente de piaţă. Plata unei despăgubiri pentru programele care funcţionează eronat ar fi foarte cinstită, doar că ar duce la faliment întreaga industrie software chiar din primul an.
1.2 HARDWARE-UL REŢELEI A venit acum timpul să ne îndreptăm atenţia de la aplicaţiile şi problemele sociale ale interconectării (partea distractivă) Ia aspectele tehnice care intervin în proiectarea reţelelor (partea serioasă de lucru). Deşi nu există o taxonomic general acceptată în care pot fi încadrate toate reţelele de calculatoare, sunt extrem de importante două criterii: tehnologia de transmisie şi scara la care operează reţeaua. Vom examina pe rând fiecare din aceste aspecte. In principal există două tipuri de tehnologii de transmisie care se folosesc pe scară largă. Acestea sunt: 1. Legături cu difuzare. 2. Legături punct-la-punct. Reţelele cu difuzare au un singur canal de comunicaţii care este partajat de toate maşinile din reţea. Orice maşină poate trimite mesaje scurte, numite în anumite contexte pachete, care sunt primite de toate celelalte maşini. Un câmp de adresă din pachet specifică maşina căreia îi este adresat pachetul. La recepţionarea unui pachet, o maşină controlează câmpul de adresă. Dacă pachetul îi este adresat, maşina îl prelucrează; dacă este trimis pentru o altă maşină, pachetul este ignorat. Să considerăm, ca analogie, că cineva se află la capătul unui coridor cu multe încăperi şi strigă „Watson, vino aici: Am nevoie de tine.” Deşi pachetul poate fi primit (auzit) de multă lume, numai Watson va răspunde. Ceilalţi pur şi simplu îl ignoră. Un alt exemplu ar fi un aeroport unde se anunţă că toţi pasagerii zborului 644 sunt rugaţi să se prezinte la poarta 12. Sistemele cu difuzare permit în general şi adresarea unui pachet către toate destinaţiile, prin folosirea unui cod special în câmpul de adresă. Un pachet transmis cu acest cod este primit şi prelucrat de toate maşinile din reţea.
13
14
INTRODUCERE
CAP. 1
Acest mod de operare se numeşte difuzare. Unele sisteme cu difuzare suportă de asemenea transmisia la un subset de maşini, operaţie cunoscută sub numele de trimitere multiplă. Una din schemele posibile este să se rezerve un bit pentru a indica trimiterea multiplă. Restul de n -1 biţi de adresă pot forma un număr de grup. O maşină se poate „abona” la orice grup sau la toate grupurile. Un pachet trimis unui anumit grup va ajunge la toate maşinile abonate la grupul respectiv. Prin contrast, reţelele punct-la-punct dispun de numeroase conexiuni între perechi de maşini individuale. Pentru a ajunge de la sursă la destinaţie pe o reţea de acest tip, un pachet s-ar putea să fie nevoit să treacă prin una sau mai multe maşini intermediare. Deseori sunt posibile trasee multiple, de diferite lungimi, şi de aceea descoperirea drumurilor celor mai potrivite este foarte importantă. Ca o regulă generală (deşi există numeroase excepţii), reţelele mai mici, localizate geografic, tind să utilizeze difuzarea, în timp ce reţelele mai mari sunt de obicei punct-la-punct. Transmisiile punct la punct cu un sigur transmiţător şi un singur receptor sunt numite uneori şi unicasting. Exemplu Distanţa intre Procesoare localizate procesoare în acelaşi (aceeaşi)... 1m Metru pătrat 10 m 100 m 1 km
Cameră Clădire Campus
10 km
Oraş
100 km
Ţară
1000 km
Continent
10.000 km
Planetă
Reţea personală >- Reţea locală
Reţea metropolitană Reţea larg răspândită j geografic lnternet-ul
Fig. 1-6. Clasificarea procesoarelor interconectate în funcţie de dimensiune. Un criteriu alternativ pentru clasificarea reţelelor este mărimea lor. în fig. 1-6 este prezentată o clasificare a sistemelor cu procesoare multiple după mărimea lor fizică. Prima categorie o reprezintă reţelele personale (personal area networks), reţele gândite pentru o singură persoană. De exemplu,
HARD WARE-UL REŢELEI
SEC. 1.2
15
o reţea fără fir care conectează calculatorul cu perifericele sale (tastatură, imprimantă, mouse) este o reţea personală. De asemenea, un PDA care controlează aparatul auditiv al utilizatorului sau regulatorul lui de ritm cardiac se încadrează în aceeaşi categorie. Mai departe de aceste reţele personale sunt reţele cu domenii mai mari. Acestea pot fi împărţite în reţele locale, reţele metropolitane şi reţele larg răspândite geografic. în sfârşit, prin conectarea a două sau mai multe reţele rezultă o inter-reţea. Intemet-ul este un exemplu bine cunoscut de interreţea. Distanţa este un criteriu dc clasificare important, pentru că, la scări diferite, sunt folosite tehnici diferite. în această carte ne vom ocupa de reţele din toate aceste categorii. Prezentăm mai jos o scurtă introduce în subiectul echipamentelor de reţea.
1.2.1
Reţele locale
Reţelele locale (Local Area Networks), denumite în general LAN-uri, sunt reţele private localizate intr-o singură clădire sau într-un campus dc cel mult câţiva kilometri. Ele sunt frecvent utilizate pentru a conecta calculatoarele personale şi staţiile de lucru din birourile companiilor şi fabricilor, în scopul de a partaja resurse (imprimante, de exemplu) şi de a schimba informaţii. LAN-urile se disting de alte tipuri de reţele prin trei caracteristici: (1) mărime, (2) tehnologie de transmisie şi (3) topologie. LAN-urile au dimensiuni restrânse, ceea ce înseamnă că timpul de transmisie în cazul cel mai defavorabil este limitat şi cunoscut dinainte. Cunoscând această limită, este posibil să utilizăm anumite tehnici de proiectare care altfel nu ar fi fost posibile. Totodată, se simplifică administrarea reţelei. LAN-urile utilizează frecvent o tehnologie de transmisie care constă dintr-un singur cablu la care sunt ataşate toate maşinile, aşa cum erau odată cablurile telefonice comune în zonele rurale. LAN-urile tradiţionale funcţionează la viteze cuprinse între 10 şi 100 Mbps, au întârzieri mici (mi- crosccunde sau nanosecunde) şi produc erori foarte puţine. LAN-urile mai noi pot opera la viteze mai mari, până la 10 Gbps. în această carte vom păstra tradiţia şi vom măsura vitezele de transmisie pe linii în megabiţi/sec (1 Mbps reprezintă 1.000.000 biţi), şi gigabiţi/sec (1 Gbps reprezintă 1.000.000.000 biţi).
^ Cablu
(a)
(b)
Fig. 1-7. Două reţele cu difuzare, (a) Magistrală, (b) Inel. Pentru LAN-urile cu difuzare sunt posibile diverse topologii. Fig. 1-7 prezintă două dintre ele. într-o reţea cu magistrală (cu cablu liniar), în fiecare moment cel mult una dintre maşini este maşter şi are dreptul să transmită. Restul maşinilor nu pot transmite. Când două sau mai multe maşini vor
16
INTRODUCERE
CAP. 1
să transmită simultan, este necesar un mecanism de arbitrare. Mecanismul de arbitrare poate fi centralizat sau distribuit. De exemplu, IEEE 802.3, popular numită Ethernet™, este o reţea cu difuzare bazată pe magistrală cu control descentralizat, lucrând la viteze între 10 Mbps şi 10 Gbps. Calculatoarele dintr-un Ethernet pot transmite oricând doresc; dacă două sau mai multe pachete se ciocnesc, fiecare calculator aşteaptă o perioadă de timp aleatorie şi apoi încearcă din nou. Un al doilea tip de reţea cu difuzare este reţeaua în inel. într-un inel fiecare bit se propagă independent de ceilalţi, fără să aştepte restul pachetului căruia îi aparţine. în mod tipic, fiecare bit navighează pe circumferinţa întregului inel într-un interval de timp în care se transmit doar câţiva biţi, de multe ori înainte chiar ca întregul pachet să fi fost transmis. Ca în orice alt sistem cu difuzare, este nevoie de o regulă pentru a arbitra accesele simultane la inel. Pentru aceasta se utilizează diferite metode, care vor fi discutate în carte mai târziu. IEEE 802.5 (inelul cu jeton de la IBM) este un LAN popular de tip inel, care operează la 4 şi la 16 Mbps. Un alt exemplu de reţea de tip inel este FDDI (Fiber Distributed Data Interface, rom: Interfaţă de date distribuite pe fibră optică). Reţelele cu difuzare pot fi în continuare împărţite în statice şi dinamice, în funcţie de modul de alocare al canalului. O metodă tipică de alocare statică ar fi să divizăm timpul în intervale discrete şi să rulăm un algoritm round-robin, lăsând fiecare maşină să emită numai atunci când îi vine rândul. Alocarea statică iroseşte capacitatea amalului atunci când o maşină nu are nimic de transmis în cuanta de timp care i-a fost alocată, astfel că majoritatea sistemelor încearcă să aloce canalul dinamic (la cerere). Metodele de alocare dinamică pentru un canal comun sunt fie centralizate, fie descentralizate. în cazul metodei centralizate de alocare a canalului există o singură entitate, de pildă o unitate de arbitrare a magistralei, care determină cine urmează la rând. Poate face acest lucru acceptând cereri şi luând o decizie conform unui algoritm intern. în cazul metodei descentralizate de alocare a canalului nu există o entitate centrală; fiecare maşină trebuie să hotărască pentru ea însăşi dacă să transmită sau nu. S-ar putea crede că în acest fel se ajunge totdeauna la haos, dar lucrurile nu stau aşa. Vom studia mai târziu numeroşi algoritmi proiectaţi să refacă ordinea dintr-un potenţial haos.
1.2.2
Reţele metropolitane
O reţea metropolitană (Metropolitan Arca Network), sau MAN (plural: MAN-uri) deserveşte un oraş. Cel mai bun exemplu de MAN este reţeaua de televiziune prin cablu disponibilă în cele mai multe oraşe. Acest sistem s-a dezvoltat de la primele antene colective folosite în zone în care semnalul recepţionat prin aer era foarte slab. în aceste sisteme timpurii, o antenă foarte mare era amplasată pe vârful celui mai apropiat deal şi semnalul captat era retransmis către casele abonaţilor. La început, acestea erau sisteme proiectate local, ad-hoc. Apoi companiile au început să se implice în această afacere, obţinând contracte de la municipalităţile oraşelor pentru a cabla cliiar şi întreg oraşul. Următorul pas a fost programarea televiziunii şi chiar canale de televiziune produse numai pentru furnizarea prin cablu. De cele mai multe ori aceste canale sunt foarte specializate, pe domenii precum ştirile, sporturile, gastronomia, grădinăritul, şi altele. Dar încă de la începuturi şi până în ultima perioadă a anilor 1990, aceste reţele erau exclusiv dedicatc recepţiei de televiziune. Din momentul în care Intemet-ul a început să atragă audienţa de masă, operatorii de reţele de cablu TV au realizat că, dacă vor face anumite schimbări în sistem, ar putea să ofere serv icii bidirecţionale în Internet în părţile nefolosite ale spectrului. La acel moment, sistemul de cablu TV a început să se transforme dintr-o soluţie de a distribui semnalul TV în oraş într-o reţea metropolitană. La o primă aproximare, o MAN poate să arate oarecum similar cu sistemul prezentat în fig. 1-8.
SEC. 1.2
HARD WARE-UL REŢELEI
Fig. 1-8. O reţea metropolitană care se bazează pe cablu TV. A
In această figură se văd atât semnalele de televiziune cât şi Intemet-ul trimise într-un centralizator (head end) pentru a fi apoi redistribuite în casele oamenilor. Vom reveni la acest subiect în detaliu în cap. 2. Televiziunea prin cablu nu este singurul MAN. Ultimele dezvoltări în domeniul accesului la Internet fără fir, a dus la dezvoltarea unei noi reţele metropolitane care a fost standardizată cu numele de IEEE 802.16. Vom studia acest domeniu în cap. 2.
1.23 Reţele larg răspândite geografic O reţea larg răspândită geografic (Wide Area NetWork), sau WAN, acoperă o arie geografică întinsă deseori o ţară sau un continent întreg. Reţeaua conţine o colecţie de maşini utilizate pentru a executa programele utilizatorilor (adică aplicaţii). In concordanţă cu termenul uzual, vom numi aceste maşini gazde. Gazdele sunt conectate printr-o subreţea de comunicaţie sau, pe scurt, subre- ţca. Gazdele aparţin clienţilor (de exemplu calculatoarele personale ale oamenilor), deşi subreţeaua de comunicaţie aparţine şi este exploatată, de cele mai multe ori, de o companie de telefonie sau de un furnizor de servicii Internet (ISP). Sarcina subreţelei este să transporte mesajele de la gazdă la gazdă, exact aşa cum sistemul telefonic transmite cuvintele de la vorbitor la ascultător. Prin separarea aspectelor de pură comunicaţie ale reţelei (subreţelei) de aspectele referitoare la aplicaţii (gazde), proiectarea întregii reţele se simplifică mult. In majoritatea reţelelor larg răspândite geografic, subreţeaua este formată din două componente distincte: liniile de transmisie şi elementele de comutare. Liniile de transmisie transportă biţii între maşini. Ele pot fi alcătuite din fire de cupru, fibră optică sau chiar legături radio. Elementele de comutare sunt calculatoare specializate, folosite pentru a conecta două sau mai multe linii de transmisie. Când sosesc date pe o anumită linie, elementul de comutare trebuie să aleagă o nouă linie pentru a retransmite datele mai departe. Din păcate, nu există nici o terminologie standard pentru denumirea acestor calculatoare. Aceste elemente de comutare au primit diverse nume în trecut; numele de ruter (router1) este acum cel mai folosit. Din păcate, unii îl pronunţă ca cnglezcscu! „rooter” şi alţii preferă să îl asocieze ca pronunţie cu „doubter”. Determinarea pronunţiei corecte în limba engleză va fi lăsată ca exerciţiu cititorului, (răspunsul pe care îl veţi afla poate depinde de zona în care întrebaţi). 1
17
18
INTRODUCERE
CAP. 1
în acest model, prezentat în fig. 1-9, fiecare gazdă este de cele mai multe ori conectată la un LAN în care există un ruter, deşi în anumite cazuri o gazdă poate fi legată direct cu un ruter. Colecţia de linii de comunicaţie şi de rutere (dar nu şi gazdele) formează subreţeaua. Subreţea
Ruter
Fig. 1-9. Relaţia dintre gazde şi subreţea. Merită să facem un scurt comentariu în jurul termenului de „subreţea”. Iniţial, singura sa accepţiune se referea la colecţia rutcrelor şi liniilor de comunicaţie care mutau pachetele de la gazda sursă la gazda destinaţie. Totuşi, câţiva ani mai târziu, cuvântul a mai căpătat un al doilea înţeles, în conjuncţie cu adresarea reţelelor (pe care o vom discuta în Cap. 5). Din nefericire, nu există o alternativă larg acceptată pentru înţelesul său iniţial, drept care noi vom folosi acest termen, cu unele rezerve, în ambele sensuri. Din context, va fi totdeauna clar care din ele este subînţeles. în cazul celor mai multe WAN-uri, reţeaua conţine numeroase linii de transmisie, fiecare din ele legând o pereche de rutere. Dacă două rutere nu împart un acelaşi cablu, dar doresc să comunice, atunci ele trebuie să facă acest lucru indirect, prin intermediul altor rutere. Când un pachet este transmis de la un ruter la altul prin intermediul unuia sau mai multor rutere, pachetul este primit în întregime de fiecare ruter intermediar, este reţinut acolo până când linia de ieşire cerută devine liberă şi apoi este retransmis. O subreţea care funcţionează pe acest principiu se numeşte subreţea me- morează-şi-retransmite sau subreţea cu comutare de pachete. Aproape toate reţelele larg răspândite geografic (excepţie făcând cele care utilizează sateliţi) au subretele memorează-şiretransmite. Când pachetele sunt mici şi au aceeaşi mărime, ele sunt adesea numite celule. Principiul de funcţionare a unui WAN cu comutare de pachete este atât de important încât merită să mai adăugăm câteva cuvinte despre el. în general, atunci când un proces al unei gazde are un mesaj de transmis către un proces de pe o altă gazdă, gazda care transmite va sparge mesajul în pachete, fiecare dintre ele reţinându-şi numărul de ordine din secvenţă. Aceste pachete sunt apoi transmise în reţea unul câte unul într-o succesiune rapidă. Pachetele sunt transportate individual prin reţea şi depozitate la gazda receptoare, unde sunt reasamblate în mesajul iniţial şi furnizate pro-
SEC. 1.2
HARD WARE-UL REŢELEI
cesuluiSubreţea receptor. Un flux de pachete rezultat din descompunerea unui mesaj iniţial oarecare este prezentat în fig. 1-
Ruter
10.
şi nu lui D
Fig. 1-10. Un flux de pachete de la transmiţător Ia receptor. In această figură, toate pachetele parcurg ruta A-C-E, în loc de A-B-D-E sau A-C-D-E. In unele reţele, toate pachetele aparţinând unui mesaj dat trebuie să urmeze aceeaşi rută; în altele, fiecare pachet este dirijat separat. Desigur, dacă A-C-E este cea mai bună rută, toate pachetele pot fi transmise pe acolo, chiar dacă fiecare dintre ele este dirijat individual. Deciziile de dirijare se iau la nivelul local al ruterului. Când un pachet ajunge la ruterul A este de datoria lui A să decidă dacă acest pachet trebuie trimis pe linia către B sau pe linia către C. Modul în care ruterul A ia această decizie este denumit algoritm de rutare. Există mulţi astfel de algoritmi. Pe unii dintre ei îi vom studia în detaliu în cap. 5. Nu toate WAN-urile sunt cu comutare de pachete. O a doua posibilitate pentru un WAN este un sistem de sateliţi. Fiecare ruter are o antenă prin care poate trimite şi poate primi. Toate ruterele pot asculta ieşirea de la satelit, iar în anumite cazuri pot să asculte chiar şi transmisia celorlalte rutere către satelit. Uneori, ruterele sunt conectate la o reţea punct-la-punct şi numai unele dintre ele pot avea antene dc satelit. Reţelele satelit sunt în mod implicit reţele cu difuzare şi sunt foarte utile când proprietatea de difuzare este importantă.
1.2.4
Reţele fără fir
Comunicaţiile digitale fară fir nu reprezintă o idee nouă. încă din 1901, fizicianul italian Guglielmo Marconi a realizat legătura între un vapor şi un punct de pc coastă folosind telegraful fără fir şi codul Morse (punctele şi liniile sunt, în definitiv, binare). Sistemele radio moderne au performanţe mai bune, dar ideea fundamentală a rămas aceeaşi. La o primă aproximare, reţelele fără fir pot fi împărţite în 3 mari categorii: 1. 2. 3.
19
Interconectarea componentelor unui sistem LAN-uri fără fir WAN-uri fără fir
Interconectarea componentelor se referă numai la interconectarea componentelor unui calculator folosind unde radio cu rază mică de acţiune. Aproape orice calculator are un monitor, o tastatură, un mouse şi o imprimantă legate la unitatea centrală prin cabluri. Mulţi dintre noii utilizatori au probleme cu conectarea tuturor cablurilor exact în mufele micuţe în care trebuie (chiar dacă acestea
20
INTRODUCERE
CAP. 1
sunt de cele mai multe ori codificate pe culori), aşa că producătorii de calculatoare oferă opţiunea de a trimite un tehnician pentru instalare. In consecinţă, câteva companii s-au adunat pentru a proiecta o reţea fară fir cu rază mică de acţiune denumită Bluetooth pentru a conecta toate aceste componente fără cabluri. De asemenea, Bluetooth permite camerelor digitale, căştilor, scanerelor şi altor dispozitive să se conecteze la calculator prin simpla poziţionare în zona acoperită de reţea. Fără cabluri, fără instalarea de drivere, doar poziţionare, pornire şi... merge. Pentru mulţi oameni această uşurinţă în utilizare este un mare avantaj. în cea mai simplă formă, reţelele de interconectare în sistem folosesc paradigma stăpân-sclav (master-slave) din fig. 1-1 l(a). Unitatea centrală a sistemului este în mod normal stăpânul, care discută cu perifericele ca sclavi. Stăpânul le comunică sclavilor ce adrese să folosească, când pot să difuzeze mesaje, cât timp pot să transmită, ce frecvenţe pot să folosească, şi aşa mai departe. Vom discuta despre Bluetooth în detaliu în cap. 4. !
Fig. 1-11. (a) Configuraţie Bluetooth. (b) Reţea locală fără fir. Următoarea treaptă în reţelele fără fir o reprezintă reţelele locale fără fir. Acestea sunt sisteme în care fiecare calculator are un modem radio şi o antenă cu care poate comunica cu alte calculatoare. De multe ori există o antenă în tavan cu care maşinile vorbesc, aşa cum se poate vedea în fig. 1- ll(b). Oricum, dacă sistemele sunt destul de apropiate, ele pot comunica direct unul cu altul într-o configuraţie punct-la-punct. Reţelele locale fără fir devin din ce în ce mai utilizate în birouri mai mici şi acasă, unde instalarea unei reţele Ethernet este considerată prea complicată, precum şi în clădiri de birouri mai vechi, în cantinele'companiilor, în camerele de conferinţe, şi în alte asemenea locuri. Există un standard pentru reţele locale fără fir, numit IEEE 802.11, pe care îl implementează majoritatea sistemelor şi care devine din ce în ce mai răspândit. îl vom discuta în cap. 4. Cea de-a treia categorie de reţele fără fir este folosită în sistemele răspândite pe arii geografice largi (Wide Area Networks). Reţeaua radio utilizată de telefonia mobilă este un exemplu de sistem fară fir cu lărgime de bandă redusă. Acest sistem este deja la generaţia a treia. Prima generaţie era analogică şi numai pentru voce. A doua generaţie era digitală, dar numai pentru voce. Cea de-a treia generaţie este digitală şi este utilizată atât pentru voce cât şi pentru date. într-un anume sens, reţelele celulare fără fir sunt foarte asemănătoare cu reţelele locale fară fir, cu excepţia faptului că distan
SEC. 1.2
HARD WARE-UL REŢELEI
21
ţele implicate sunt mult mai mari, iar ratele de transfer sunt mult mai mici. Reţelele locale fără fir pot opera la rate de până la 50 Mbps pe distanţe de zeci de metri. Sistemele celulare pot opera sub 1 Mbps, dar distanţele dintre staţia de bază şi calculator sau telefon este măsurată mai degrabă în kilometri decât în metri. Vom avea multe de spus despre aceste reţele în cap. 2. în plus faţă de aceste reţele de viteză redusă, sunt dezvoltate şi WAN-uri cu lărgime de bandă mare. Important este în primul rând accesul la Internet de acasă sau din cadrul companiei prin conexiune rapidă fără fir, eliminând necesitatea folosirii sistemului de telefonie. Acest serviciu este de multe ori denumit serviciu local de distribuire multipunct. îl vom studia mai târziu în carte. A fost dezvoltat şi un standard al său, numit IEEE 802.16. îl vom examina în cap. 4. Aproape toate reţelele ajung mai devreme sau mai târziu să fie parte dintr-o reţea cablată pentru a oferi acces la fişiere, baze de date sau Internet. Sunt multe variante prin care aceste conexiuni pot fi realizate, în funcţie de circumstanţe. De exemplu, în fig. 1-12(a) este prezentat un avion în care un număr de persoane folosesc modemuri şi telefoane încorporate în spătarul scaunului (eng.: seat- back telephone) pentru a suna la birou. Fiecare apel este independent de toate celelalte. O opţiune mult mai eficientă este LAN-ul zburător (flying 1.AN) din fig. l-12(b). Aici, fiecare scaun este echipat cu un conector Ethernet în care pasagerii pot să îşi conecteze calculatoarele. Un singur ruter al avionului menţine o legătură radio cu un ruter de la sol, schimbând acest ruter pe măsură ce îşi parcurge traseul. Această configuraţie este o reţea locală tradiţională, doar că pentru a se conecta cu restul lumii foloseşte o legătură radio în loc de o linie cablată.
Fig. 1-12. (a) Calculatoare mobile individuale, (b) Un IAN zburător. Multă lume crede ca tehnologiile fără fir reprezintă valul viitorului (de ex. Bi et al., 2001; Leeper, 2001; Varshez şi Vetter, 2000), dar exisită cel puţin o părere contrară cunoscută. Bob Metcalfe, inventatorul Ethernetului, a scris următoarele: „Calculatoarele mobile fără fir sunt ca băile mobile fără ţevi - nişte oliţe de noapte portabile. Ele vor fi ceva comun în vehicule, pe şantiere şi la concerte rock. Sfatul meu este să vă racordaţi cabluri în casă şi să rămâneţi acolo” (Metcalfe, 1995). Istoria ar putea să reţină această afirmaţie în aceeaşi categorie cu a lui T.J. Watson, preşedintele IBM, care explica în 1945 de ce IBM nu se intră în afacerea calculatoarelor: „Patru sau cinci calculatoare ar trebui să fie suficiente pentru întreaga lume până în anul 2000”. i
1.2.5
Reţelele casnice (Home networks)
Reţelele în mediul casnic sunt la orizont. Ideea fundamentală este că în viitor, cele mai multe locuinţe vor fi pregătite pentru instalarea de reţele. Fiecare dispozitiv din casă va fi capabil să comunice cu orice alt dispozitiv şi toate vor fi accesibile prin Internet. Acesta este unul dintre acele concepte
22
INTRODUCERE
CAP. 1
revoluţionare pe care nu l-a cerut nimeni (cum sunt telecomenzile TV sau telefoanele mobile), dar de îndată ce au fost implementate nimeni nu şi-a mai putut închipui cum au trăit fără ele. Multe dispozitive sunt capabile să fie legate în reţea. Unele dintre categoriile cele mai simple, însoţite de exemple sunt cele care urmează: 1. Calculatoarele (PC-uri staţionare, PC-uri portabile, PDA-uri, periferice partajate) 2. Dispozitivele de divertisment (TV, DVD, VCR, camera video, combina muzicală) 3. Dispozitive pentru telecomunicaţii (telefonul, telefonul mobil, fax-ul, sistemul de comunicare interioară) 4. Aparatura casnică (cuptorul cu microunde, frigiderul, ceasul, cuptorul, aparatul de aer condiţionat, luminile) 5. Contoarele şi alarmele (contoarele pentru utilităţi, alarmele de fum sau hoţi, termosta- tele, sistemele de supraveghere a copilului) Reţelele casnice sunt deja implementate într-o oarecare măsură. Multe case au deja un dispozitiv pentru conectarea mai multor calculatoare la Internet printr-o conexiune rapidă. Divertismentul prin reţea nu este chiar la îndemână, dar pentru că din ce în ce mai multă muzică şi mai multe filme sunt disponibile pentru descărcare din Internet, va exista o cerere de conectare a combinelor muzicale şi a televizoarelor în reţea. De asemenea, oamenii vor dori să împartă propriile clipuri video cu prietenii şi familia, astfel că această conexiune va trebui să fie bidirecţională. Angrenajul telecomunicaţiilor este deja conectat la lumea exterioară, dar în curând aceste vor fi digitale şi transmise prin Internet. In medie, o casă are cam o duzină de ceasuri (de exemplu, cele de la aparatele electrocas- nice), care toate trebuie potrivite cel puţin de doua ori pe an, când se trece la ora de vară şi apoi la ora de iarnă. Dacă toate aceste ceasuri ar fi conectate la Internet, această potrivire s-ar face automat, în fine, monitorizarea de la distanţă a casei şi a interiorului sau este un posibil domeniu dc succes. Probabil că mulţi dintre părinţi ar fi gata să cheltuiască nişte bani pentru a-şi supraveghea copiii adormiţi, prin intermediul PDA-urilor, în timp ce iau masa în oraş, chiar şi dacă au angajat un adolescent pentru a avea grijă de ei. în timp ce unii îşi pot imagina o reţea separată pentru fiecare zonă de aplicaţii, integrarea tuturor într-o singură reţea mai mare este probabil o idee mult mai bună. Reţelele casnice au câteva proprietăţi fundamental diferite de alte tipuri de reţele. Mai întâi, atât reţeaua cât şi dispozitivele trebuie să fie uşor de instalat. Autorul a instalat multe componente hardware şi software pe diverse calculatoare de-a lungul anilor, cu diverse rezultate. O serie dc telefoane la biroul de suport tehnic al producătorului au rezultat în răspunsuri de tipul (1) Citiţi manualul, (2) Repomiţi calculatorul, (3) Scoateţi toate componentele hardware şi software cu excepţia celor furnizate de noi şi încercaţi din nou, (4) Descărcaţi cea mai nouă versiune a programului de configurare de pe situl nostru Web şi dacă toate acestea eşuează, (5) Reformataţi discul şi apoi reinstalaţi Windows de pe CD-ROM. A spune unui cumpărător de frigider care poate fi conectat la Internet să descarce şi să instaleze o nouă versiune a sistemului de operare pentru frigiderul său nu este de natură să facă prea mulţi clienţi fericiţi. Utilizatorii de calculatoare sunt obişnuiţi cu instalarea de produse care nu merg din prima; cumpărătorii de maşini, televizoare sau frigidere sunt mai puţin toleranţi. Ei se aşteaptă ca produsele să răspundă corect la 100% din comenzi. In al doilea rând, reţelele şi dispozitivele trebuie să fie protejate împotriva utilizării neglijente. Primele aparate de aer condiţionat aveau un buton cu patru poziţii: OPRII', SCĂZUT, MEDIU, RAPID. Acum au manuale de 30 de pagini. De îndată ce vor fi conectate în reţea, aşteptaţi-vă ca numai capitolul de securizare să aibă 30 de pagini. Ceea ce va depăşi capacitatea de înţelegere a majorităţii utilizatorilor. în al treilea rând, preţul scăzut este esenţial pentru succes. Cumpărătorii nu vor plăti 50 de dolari în plus pentru un termostat numai pentru că unii oameni consideră important să-şi supravegheze de la birou temperatura din casă. Pentru numai 5 dolari în plus, s-ar putea să se vândă. în al patrulea rând, programul principal este foarte probabil să implice facilităţi multimedia, aşa că reţeaua are nevoie de capacitate suficientă. Nu există piaţă pentru televizoare conectate la Internet care să prezinte filme de groază în rezoluţie de 320 x 240 pixeli şi la 10 cadre/s. Ethernet-ul rapid (fast Ethernet), mediul de lucru în
SEC. 1.2
HARD WARE-UL REŢELEI
majoritatea birourilor, nu este destul de bun pentru facilităţile multimedia. în consecinţă, reţelele casnice vor avea nevoie de performanţe mai bune decât cele are reţelelor care există acum în companii şi de preţuri mai mici pentru a deveni articole care se vând în masă. în cel de-al cincilea rând, trebuie să fie posibil să se pornească cu unul sau două dispozitive şi extinderea să se poată face gradat. Aceasta înseamnă fără schimbări revoluţionare. A spune consumatorilor să îşi cumpere periferice cu interfeţe IEEE 1394 (FireWire) şi apoi, după câţiva ani, să retractezi spunând că USB 2.0 este interfaţa lunii va face consumatorii să devină capricioşi. Interfaţa de reţea va trebui să rămână stabilă pentru mulţi ¿ini; cablajul (dacă există) va trebui să rămână acelaşi pentru decade întregi. în cel de-al şaselea rând, securitatea şi siguranţa vor fi foarte importante. Pierderea câtorva fişiere datorită unui virus de poştă electronică e una, dar dacă un hoţ îţi dezarmează sistemul de securitate al locuinţei de la PDA-ul său şi apoi intră în casă este cu totul altă situaţie. O întrebare interesantă este dacă reţelele casnice trebuie să fie cablate sau fără fir. Majoritatea locuinţelor au deja şase reţele instalate: electrică, telefonică, televiziune prin cablu, apă, gaz şi canalizare. Adăugarea unei a şaptea reţele în timpul construcţiei nu este dificilă, dar reamenajarca caselor deja construite este costisitoare. Cbstul este un motiv de a alege reţelele fără fir, dar securitatea este un motiv pentru cele cablate. Problema cu reţelele fără fir este aceea că undele radio pe care le folosesc trec foarte uşor prin garduri. Nimeni nu este foarte bucuros dacă vecinii îi pot intercepta conexiunea la Internet şi îi pot citi mesajele de poştă electronică în timp ce acestea sunt trimise la imprimantă. în cap. 8 vom vedea cum se poate folosi criptarea pentru a oferi securitate, dar în contextul unei reţele casnice, securitatea trebuie să fie şi ea protejată împotriva utilizării neglijente, chiar şi în cazul utilizatorilor fară experienţă. Aceasta este mai uşor de spus decât de făcut, chiar şi pentru utilizatori foarte pricepuţi. Pe scurt, reţelele casnice oferă multe facilităţi şi provocări. Multe dintre ele sunt legate de necesitatea de a fi uşor de administrat, sigure şi securizate, mai ales în mâinile utilizatorilor care nu sunt implicaţi în domeniul tehnic, concomitent cu necesitatea de a obţine performanţe ridicate la preţuri scăzute.
1.2.6
Inter-rcţelele
In lume există multe reţele, cu echipamente şi programe diverse. Persoanele conectate la o anumită reţea doresc adesea să comunice cu persoane racordate la alta. Această cerinţă impune conectarea unor reţele diferite, de multe ori incompatibile, ceea ce uneori se realizează utilizând maşini numite porţi (gateways). Acestea realizează conectarea şi asigură conversiile necesare, atât în termeni de hardware cât şi de software. O colecţie de reţele interconectate este numită inter-reţea sau internet. Aceşti termeni vor fi folosiţi în sens generic, spre deosebire de Intcrnet-ul mondial (care este un internet special), al cărui nume va fi scris mereu cu majusculă. O formă comună de inter-reţea este o colecţie de LAN-uri conectate printr-un WAN. De fapt, dacă am înlocui eticheta „subreţea” din fig. 1-9 prin „WAN”, în figură nu ar mai trebui schimbat nimic altceva. în acest caz, singura diferenţă tehnică reală între o subreţea şi un WAN se referă la prezenţa gazdelor. Dacă sistemul din interiorul zonei gri conţine numai rutere, atunci este o subre- ţea. Dacă el conţine atât rutere, cât şi gazde cu utilizatori proprii, atunci este un WAN. Diferenţele reale sunt legate de proprietate şi utilizare. Deseori se produc confuzii între subreţele, reţele şi inter-reţele. Termenul de subreţea este mai potrivit în contextul unei reţele larg răspândite geografic, unde se referă la colecţia de rutere şi linii de comunicaţie aflate în proprietatea operatorului de reţea. Ca o analogie, sistemul telefonic constă din centrale telefonice de comutare, care sunt conectate între ele prin linii de mare viteză şi sunt legate la locuinţe şi birouri prin linii de viteză scăzută. Aceste linii şi echipamente, deţinute şi întreţinute de către compania telefonică, formează subreţeaua sistemului telefonic. Telefoanele propriu- zise (care corespund în această analogie gazdelor) nu sunt o parte a subreţelei. Combinaţia dintre o subreţea şi gazdele sale formează o reţea. în cazul unui LAN, reţeaua este formată din cablu şi gazde. Aici nu există cu adevărat o subreţea. O inter-reţea se formează atunci când se leagă între ele reţele diferite. Din punctul nostru de vedere, legarea
23
24
INTRODUCERE
CAP. 1
unui LAN şi a unui WAN sau legarea a două LAN-uri formează o inter-reţea, dar nu există un consens asupra terminologiei din acest domeniu. O regulă simplă este aceea că dacă diferite companii sunt plătite să construiască diverse părţi ale unei reţele şi fiecare trebuie să îşi întreţină propria parte, avem o inter-reţea mai degrabă decât o singură reţea. De asemenea, dacă tehnologiile diferă în diverse zone ale reţelei (de exemplu: difuzare şi punct-lapunct), probabil că discutăm nu despre una ci despre două reţele. 2:
1.3 PROGRAMELE DE REŢEA y
2
In proiectarea primelor reţele de calculatoare, s-a acordat atenţie în primul rând echipamentelor, iar programele au fost gândite ulterior. Această strategie nu mai este valabilă. Programele de reţea sunt acum foarte structurate. în secţiunile următoare vom examina unele detalii ale tehnicii de structurare a programelor. Metoda descrisă aici formează punctul de sprijin al întregii cărţi şi ea va apărea mai departe în repetate rânduri.
13.1
Ierarhiile de protocoale
Pentru a reduce din complexitatea proiectării, majoritatea reţelelor sunt organizate sub forma unei serii de straturi sau niveluri, ficcare din ele construit peste cel de dedesubt. Numărul de niveluri, numele fiecărui nivel, conţinutul şi funcţia sa variază de la reţea la reţea. Oricum, în toate reţelele, scopul fiecărui nivel este să ofere anumite servicii nivelurilor superioare, protejându-le totodată de detaliile privitoare la implementarea efectivă a serviciilor oferite. într-un anumit sens, fiecare nivel este un fel de maşină virtuală, oferind anumite servicii nivelului de deasupra lui. Nivelul n de pe o maşină conversează cu nivelul n de pe altă maşină. Regulile şi convenţiile utilizate în conversaţie sunt cunoscute sub numele de protocolul nivelului ru în principal, un protocol reprezintă o înţelegere între părţile care comunică, asupra modului de realizare a comunicării. Ca o analogie, atunci când o femeie este prezentată unui bărbat, ea poate hotărî să-i întindă bărbatului mâna. La rândul său, bărbatul poate decide fie să-i strângă, fie să-i sărute mâna, decizie care depinde, să spunem, dacă femeia este o avocată americană care a venit la o întâlnire de afaceri sau este o
PROGRAMELE DE REŢEA
SEC. 13
25
prinţesă europeană prezentă la un bal. încălcarea protocolului va face comunicarea mai dificilă, dacă nu chiar imposibilă. în fig. 1-13 este ilustrată o reţea cu cinci niveluri. Entităţile din niveluri corespondente de pe maşini diferite se numesc egale. Entităţile egale pot fi procese, dispozitive hardware, sau chiar fiinţe umane. Cu alte cuvinte, entităţile egale sunt cele care comunică folosind protocolul. Gazda 1
,
Gazda 2
Protocolul nivelului 5 Nivel 5
Nivel 5
Protocolul nivelului 4
► Nivel 4
Nivel 4 Interfaţa 3/4
Protocolul nivelului 3 -► Nivel 3
Nivel 3 Interfaţa 2/3 Nivel 2
Protocolul nivelului 2
► Nivel 2
Interfaţa 1/2 f Protocolul nivelului 1 Nivel 1 -*•
► Nivel 1
Mediu fizic
Fig. 1-13. Niveluri, protocoale şi interfeţe. în realitate, nici un fel de date nu sunt transferate direct de pe nivelul n al unei maşini pe nivelul n al altei maşini. Fiecare nivel transferă datele şi informaţiile de control nivelului imediat inferior, până când se ajunge la nivelul cel mai de jos. Sub nivelul 1 se află mediul fizic prin care se produce comunicarea efectivă. în fig. 113, comunicarea virtuală este reprezentată prin linii punctate, iar comunicarea fizică prin linii continue. între două niveluri adiacente există o interfaţă. Interfaţa defineşte ce operaţii şi servicii primitive oferă nivelul de jos către nivelul de sus. Când proiectanţii de reţea decid câte niveluri să includă într-o reţea şi ce are de făcut fiecare din ele, unul din considerentele cele mai importante sc referă la definirea de interfeţe clare între niveluri. Aceasta presupune ca, la rândul său, fiecare nivel să execute o colecţie specifică de funcţii clar definite. Pe lângă minimizarea volumului de informaţii care trebuie transferate între niveluri, interfeţele clare permit totodată o mai simplă înlocuire a implementării unui nivel cu o implementare complet diferită (de exemplu, toate liniile telefonice se înlocuiesc prin canale de satelit). Aşa ceva este posibil, pentru că tot ceea ce i se cere noii implementări este să furnizeze nivelului superior exact setul de servicii pe care îl oferea vechea implementare. De altfel, este un fapt obişnuit ca doua gazde să folosească implementări diferite. O mulţime de niveluri şi protocoale este numită arhitectură de reţea. Specificaţia unei arhitecturi trebuie să conţină destule informaţii pentru a permite unui proiectant să scrie programele sau să construiască echipamentele necesare fiecărui nivel, astfel încât nivelurile să îndeplinească corect protocoalele corespunzătoare. Nici detaliile de implementare şi nici specificaţiile interfeţelor nu fac parte din arhitectură, deoarece acestea sunt ascunse în interiorul maşinilor şi nu sunt vizibile din afară. Nu este necesar nici măcar ca interfeţele de pe maşinile dintr-o reţea să fie aceleaşi - cu condi
26
INTRODUCERE
CAP. 1
ţia, însă, ca fiecare maşină să poată utiliza corect toate protocoalele. O listă de protocoale utilizate de către un anumit sistem, câte un protocol pentru fiecare nivel, se numeşte stivă de protocoale. Arhitecturile de reţea stivele de protocoale şi protocoalele propriu-zise constituie principalele sub- iectc ale acestei cărţi. O analogie poate ajuta la explicarea ideii de comunicare multinivel. Imaginaţi-vă doi filosofi (procesele egale de la nivelul 3), unul din ei vorbind limbile urdu şi engleză, iar celălalt vorbind chineza şi franceza. Deoarece filosofii nu cunosc o limbă comună, fiecare din ei angajează câte un translator (procesele egale de la nivelul 2), iar fiecare translator contactează la rândul său o secretară (procesele egale de la nivelul 1). Filosoful 1 doreşte să comunice partenerului afecţiunea sa pentru oryctolagus cuniculus. Pentru aceasta, el trimite un mesaj (în engleză) prin interfaţa 2/3 către translatorul său, căruia îi spune următoarele cuvinte: „I like rabbits”3 (ceea ce este ilustrat în fig. 1-14). Translatorii s-au înţeles asupra unei limbi neutre, olandeza, aşa că mesajul este convertit în „Ik vind konijnen leuk.” Alegerea limbii reprezintă protocolul nivelului 2 şi este la latitudinea proceselor pereche de pe acest nivel. Adresa A
^Propoziţia înseamnă “îmi plac iepurii.” (n.t.)
Adresa B
Mesaj L: Dutch Ik vind konijnen leuk
SEC. 1.3 Fax #— L: Dutch Ik vind konijnen leuk
Informaţii pentru translatorul de la distanţă
Translator
PROGRAMELE DE REŢEA Informaţii pentru secretara de la Secretara distanţă
L: Dutch Ik vind konijnen leuk
27 Fax #— L: Dutch Ik vind konijnen leuk
Fig. 1-14. Arhitectura filosof-translator-secretară.
I like rabbit s
Filozof
J’aime bien Ies lapins
28
INTRODUCERE
CAP. 1
Nivel
M
5
H* M
H, H «
Protocolul nivelului 4
1 H,| Mj
M,
......
Protocolul nivelului 3
H, M}
H, H4
•
1 H, h3
Protocolul nivelului 5
L~ 1•
[
H, M,
T,
H, H, Mj T,
Maşină sursă
Protocolul nivelului 2
H, Hs h4
M,
T
’i
H,
M,
T
>
Maşină destinaţie
Fig. 1-15. Exemplu de flux de informaţii pentru suportul comunicării virtuale la nivelul 5. • în continuare, translatorul înmânează mesajul secretarei, care îl trimite, de exemplu, prin fax (protocolul nivelului 1). Când mesajul este primit, el este tradus în franceză şi trimis prin interfaţa 2/3 către filosoful 2. Observaţi că, atâta timp cât interfeţele nu se modifică, fiecare protocol este complet independent de celelalte. Dacă doresc, translatorii pot schimba olandeza cu altă limbă, să spunem finlandezii, cu condiţia ca amândoi să se înţeleagă asupra acestui lucru şi ca nici unul din ei să nu îşi modifice interfaţa cu nivelul 1 sau cu nivelul 3. în mod similar, secretarele pot înlocui faxul cu poşta electronică sau cu telefonul fără a deranja (sau măcar a informa) celelalte niveluri. Fiecare proces poate adăuga anumite informaţii suplimentare destinate numai procesului său pereche. Aceste informaţii nu sunt transmise în sus, cătrc nivelul superior. Să considerăm acum un exemplu mai tehnic: cum se realizează comunicarea la ultimul nivel din reţeaua cu cinci niveluri din fig. 1-15. O aplicaţie care se execută în nivelul 5 produce un mesaj M şi îl furnizează nivelului 4 pentru a-1 transmite. Nivelul 4 inserează un antet în faţa mesajului, pentru a identifica respectivul mesaj şi pasează rezultatul nivelului 3. Antetul include informaţii de control, de exemplu numere de ordine care ajută nivelul 4 de pe maşina de destinaţie să livreze mesajele în ordinea corectă în cazul în care nivelurile inferioare nu păstrează această ordine. Pe unele niveluri, antetele conţin de asemenea câmpuri de control pentru mărime, timp şi alte informaţii. în numeroase reţele nu există nici o limită cu privire la mărimea mesajelor transmise în protocolul nivelului 4, dar există aproape întotdeauna o limită impusă de protocolul nivelului 3. în consecinţă, nivelul 3 trebuie să spargă mesajele primite în unităţi mai mici, pachete, ataşând fiecărui pachet un antet specific nivelului 3. în acest exemplu, M este descompus în două părţi, M\ şi M2. Nivelul 3 decide ce linie de transmisie să utilizeze şi trimite pachetele nivelului 2. Nivelul 2 adaugă nu numai câte un antet pentru fiecare bucată, ci şi o încheiere, după care furnizează unitatea rezultantă nivelului 1 pentru a o transmite fizic. în maşina receptoare mesajul este trimis în sus, din
nivel în nivel, pe parcurs fiind eliminate succesiv toate antetele. Nici un antet corespunzător nivelurilor de sub SEC. 29 n nu1.3 este transmis în sus nivelului n. PROGRAMELE DE REŢEA Ceea ce este important de înţeles în fig. 1-15 este relaţia dintre comunicaţia virtuală şi cea efectivă şi diferenţa între protocoale şi interfeţe. De exemplu, procesele egale de la nivelul 4 îşi imaginează conceptual comunicarea ca realizându-se pe „orizontală”, utilizând protocolul nivelului 4. Deşi fiecare din ele are, probabil, o procedură de genul TrimiieinCealaltăParte şi o alta PrimeşteDinCea- bUăParte, aceste proceduri nu comunică de fapt cu cealaltă parte, ci cu nivelurile inferioare prin interfaţa 3/4. Abstractizarea proceselor pereche este crucială pentru proiectarea întregii reţele. Cu ajutorul ei, această sarcină practic imposibilă poate fi descompusă în probleme de proiectare mai mici, rezolvabile, şi anume proiectarea nivelurilor individuale. Deşi Secţiunea 1-3 este intitulată „Programele de reţea”, merită să subliniem că nivelurile inferioare dintr-o ierarhie de protocoale sunt implementate frecvent în hardware sau în firmware. Nu e mai puţin adevărat că aici intervin algoritmi complecşi, chiar dacă ei sunt înglobaţi (parţial sau în totalitate) în hardware.
132
Probleme de proiectare a nivelurilor
O parte din problemele cheie care apar la proiectarea reţelelor de calculatoare sunt prezente în mai multe niveluri. Vom menţiona pe scurt unele probleme mai importante. Fiecare nivel are nevoie de un mecanism pentru a identifica emiţătorii şi receptorii. Dat fiind că o reţea cuprinde în mod normal numeroase calculatoare, iar o parte dintre acestea deţin mai multe procese, este necesară o modalitate prin care un proces de pe o anumită maşină să specifice cu cine doreşte să comunice. Ca o consecinţă a destinaţiilor multiple, pentru a specifica una dintre ele, este necesară o formă de adresare. Un alt set de decizii de proiectare se referă la regulile pentru transferul de date. în unele sisteme datele circulă într-un singur sens; în altele datele pot circula în ambele sensuri. Protocolul trebuie, de asemenea, să determine câtor canale logice le corespunde conexiunea şi care sunt priorităţile acestora. Multe reţele dispun de cel puţin două canale logice pe conexiune, unul pentru date normale şi unul pentru date urgente. Controlul erorilor este o problemă importantă deoarece circuitele fizice de comunicaţii nu sunt perfecte. Se cunosc multe coduri detectoare şi corectoare de erori, dar ambele capete ale conexiunii trebuie să se înţeleagă asupra codului utilizat. în plus, receptorul trebuie să aibă cum să-i spună emiţătorului care mesaje au fost primite corect şi care nu. Nu toate canalele de comunicaţii păstrează ordinea mesajelor trimise. Pentru a putea trata o eventuală pierdere a secvenţialităţii, protocolul trebuie să furnizeze cxplicit receptorului informaţia necesară pentru a putea reconstitui mesajul. O soluţie evidentă este numerotarea fragmentelor, dar această soluţie încă nu rezolvă problema fragmentelor care sosesc la receptor aparent fără legătură cu restul mesajului. O problemă ce intervine la fiecare nivel se referă la evitarea situaţiei în care un emiţător rapid trimite unui receptor lent date la viteză prea mare. Au fost propuse diverse rezolvări şi ele vor fi discutate mai târziu. Unele dintre acestea presupun o anumită reacţie, directă sau indirectă, prin care receptorul îl informează pe emiţător despre starea sa curentă. Altele limitează viteza de transmisie a emiţătorului la o valoare stabilită de comun acord cu receptorul. Acest subiect se numeşte controlul fluxului.
SEC. 1.3 PROGRAMELE DE REŢEA 30 O altă problema care apare la câteva niveluri priveşte incapacitatea tuturor proceselor de a accepta mesaje de lungime arbitrară. Acest fapt conduce Ia mecanisme pentru a dezasambla, a transmite şi apoi a reasambla mesajele. O problemă asemănătoare apare atunci când procesele insistă să A
transmită datele în unităţi atât de mici, încât transmiterea lor separată este ineficientă. In această situaţie, soluţia este să se asambleze împreună mai multe mesaje mici destinate aceluiaşi receptor şi să se dezasambleze la destinaţie mesajul mare obţinut astfel. Atunci când este neconvenabil sau prea costisitor sa se aloce conexiuni separate pentru fiecare pereche de procese comunicante, nivelul implicat în comunicare poate hotărî să utilizeze aceeaşi conexiune pentru mai multe conversaţii independente. Atâta timp cât această mutiplexare şi demul- tiplexare se realizează transparent, ea poate fi utilizată de către orice nivel. Multiplexarea este necesară, de exemplu, în nivelul fizic, unde traficul pentru toate conexiunile trebuie să fie transmis prin cel mult câteva circuite fizice. Atunci când există mai multe căi între sursă şi destinaţie, trebuie ales un anumit drum. Uneori această decizie trebuie împărţită pe două sau mai multe niveluri. De exemplu, este posibil ca trimiterea unor date de la Londra la Roma să necesite atât o decizie la nivel înalt pentru alegerea ca ţară de tranzit a Franţei sau a Germaniei * în funcţie de legile lor de protejare a secretului datelor - cât şi o decizie de nivel scăzut pentru alegerea unuia din multele trasee posibile, pe baza traficului curent. Acest subiect poartă numele de dirijare sau rutare (routing).
133
Servicii orientate pe conexiuni şi servicii fără conexiuni
. Nivelurile pot oferi nivelurilor de deasupra lor două tipuri de servicii: orientate pe conexiuni şi A
fără conexiuni. In această secţiune vom arunca o privire asupra acestor două tipuri şi vom examina diferenţele între ele. Serviciul orientat pe conexiuni este modelat pe baza sistemului telefonic. Când vrei să vorbeşti cu cineva, mai întâi ridici receptorul, apoi formezi numărul, vorbeşti şi închizi. Similar, pentru a utiliza un serviciu orientat pe conexiuni, beneficiarul trebuie mai întâi să stabilească o conexiune, să folosească această concxiune şi apoi să o elibereze. în esenţă conexiunea funcţionează ca o ţeavă: emiţătorul introduce obiectele (biţii) Ia un capăt, iar receptorul le scoate afară, în aceeaşi ordine, la celălalt capăt. în majoritatea cazurilor ordinea este menţinută, astfel încât biţii să ajungă în aceeaşi ordine în care au fost trimişi. în anumite cazuri când se stabileşte o concxiune, transmiţătorul, receptorul şi subreţeaua negociază parametrii care vor fi folosiţi, cum sunt dimensiunea maximă a mesajului, calitatea impusă a serviciilor, şi alte probleme de acest tip. De obicei, una dintre părţi face o propunere şi cealaltă parte poate să o acccpte, să o rejecteze sau să facă o contrapropunere. Serviciul iară conexiuni este modelat pe baza sistemului poştal. Toate mesajele (scrisorile) conţin adresele complete de destinaţie şi fiecare mesaj circulă în sistem independent de celelalte. în mod normal, atunci când două mesaje sunt trimise la aceeaşi destinaţie, primul expediat este primul care ajunge. Totuşi, este posibil ca cel care a fost expediat primul să întârzie şi să ajungă mai repede al doilea. în cazul unui serviciu orientat pe conexiuni, asa ceva este imposibil. Fiecare serviciu poate fi caracterizat printr-o calitate a serviciului. Unele servicii sunt sigure în sensul că nu pierd date niciodată. De obicei, un serviciu sigur se implementează obligând receptorul să confirme primirea fiecărui mesaj, astfel încât expeditorul să fie sigur că mesajul a ajuns la destinaţie. Procesul de confirmare introduce un timp suplimentar şi întârzieri. Aceste dezavantaje sunt adesea acceptate, însă uneori ele trebuie evitate. Transferul de fişiere eí>te una din situaţiile tipice în care este adecvat un serviciu sigur orientat pe conexiuni. Proprietarul fişierului doreşte să fie sigur că toţi biţii ajung corect şi în aceeaşi ordine în care au fost
SEC 1.3 PROGRAMELE DE RETEA 31 trimişi. Foarte puţini utilizatori ai transferului de fişiere ar prefera un serviciu care uneori amesteca sau pierde câţiva biţi, chiar dacă acest serviciu ar fi mult mai rapid. Serviciul sigur orientat pe conexiuni admite două variante: secvenţele de mesaje şi fluxurile de octeţi. Prima variantă menţine delimitarea între mesaje. Când sunt trimise două mesaje de 1024 de octeţi, ele vor sosi sub forma a două mesaje distincte de 1024 de octeţi, niciodată ca un singur mesaj de 2048 de octeţi. In a doua variantă, conexiunea este un simplu flux de octeţi şi nu există delimitări între mesaje. Când receptorul primeşte 2048 de octeţi, nu există nici o modalitate de a spune dacă ei au fost trimişi sub forma unui mesaj de 2048 octeţi, a două mesaje de 1024 de octeţi sau a 2048 mesaje de câte 1 octet. Dacă paginile unei cărţi sunt expediate unei maşini fotografice de tipărit printr-o reţea, sub formă de mesaje, atunci delimitarea mesajelor poate fi importantă. Pe de altă parte, în cazul unui utilizator care se conectează la un server aflat la distanţă, este nevoie numai de un flux de octeţi de la calculatorul utilizatorului la server. Delimitarea mesajelor nu mai este relevantă. Aşa cum am menţionat mai sus, întârzierile introduse de confirmări sunt inacceptabile pentru unele aplicaţii. O astfel de aplicaţie se referă la traficul de voce digitizată. Pentru abonaţii telefonici este preferabil să existe puţin zgomot pe linie sau să audă ocazional câte un cuvânt distorsionat decât să se producă o întârziere din cauza aşteptării confirmării. Similar, atunci când se transmite o video- conferinţă, câţiva pixeli diferiţi nu reprezintă o problemă, în schimb întreruperile pentru a corecta erorile ar fi extrem de supărătoare. Nu orice aplicaţie necesită conexiuni. De exemplu, în măsura în care poşta electronică devine ceva tot mai uzual, se poate să nu apară foarte curând publicitatea prin poştă electronică? Expeditorul de publicitate prin poştă electronică probabil că nu vrea să se complice stabilind şi apoi eliberând o conexiune doar pentru un singur mesaj. Nici furnizarea la destinaţie cu o rată de corectitudine de 100% nu este esenţială, mai ales dacă lucrul acesta costă mai mult. Tot ceea ce se cere este un mijloc de a trimite un singur mesaj cu o probabilitate mare de a ajunge la destinaţie, dar fără o garanţie în acest sens. Serviciul nesigur (adică neconfirmat) fără conexiuni este deseori numit serviciu datagramă, prin analogie cu serviciul de telegrame - care, la rândul său, nu prevede trimiterea unei confirmări către expeditor. A
In alte situaţii, avantajul de a nu fi necesară stabilirea unei conexiuni pentru a trimite un mesaj scurt este de dorit, dar siguranţa este de asemenea esenţială. Aceste aplicaţii pot utiliza serviciul datagrama confirmat. Este ca şi cum ai trimite o scrisoare recomandată şi ai solicita o confirmare de primire. In clipa în care soseşte confirmarea, expeditorul este absolut sigur că scrisoarea a fost livrată la destinaţia corectă şi nu a fost pierdută pe drum. Mai există un serviciu, şi anume serviciul cerere-răspuns. în acest serviciu emiţătorul transmite o singură datagramă care conţine o cerere; replica primită de la receptor conţine răspunsul. în această categorie intră, de exemplu, un mesaj către biblioteca locală în carc se întreabă unde este vorbită limba Uighur. Serviciul cerererăspuns este utilizat în mod frecvent pentru a implementa comunicarea în modelul client-server: clientul lansează o cerere şi serverul răspunde la ca. în fig. 1-16 sunt rezumate tipurile de servicii discutate mai sus. Conceptul de a utiliza comunicaţii nesigure poate părea derutant la început. La urma urmei, de ce ar prefera cineva comunicaţiile nesigure în locul comunicaţiilor sigure? Mai întâi, comunicaţiile sigure (ceea ce înseamnă, pentru noi, confirmate) pot să nu fie disponibile. De exemplu, Ethemet-ul nu oferă comunicaţii sigure. Pachetele pot fi uneori alterate în timpul tranzitului Urmează ca protocoalele nivelurilor superioare să se ocupe de această problemă.
Serviciu INTRODUCERE
32 Orientate pe conexiuni
Fără conexiuni
Exemplu
CAP. 1
Flux de mesaje sigur
Secvenţă de pagini
Flux de octeţi sigur
Conectare la distanţă
Conexiune nesigură
Voce digitizată
Datagramă nesigură
Publicitate prin e-mail
Datagramă confirmată
Scrisori cu confirmare
Cerere răspuns
Interogări baze de date
Fig. 1-16. Şase tipuri diferite de servicii. A
In al doilea rând, întârzierile inerente în cazul în care se oferă servicii sigure ar putea fi inacceptabile, mai ales în cazul aplicaţiilor de timp real cum sunt aplicaţiile multimedia. Pentru aceste motive, comunicaţiile sigure cât şi cele nesigure coexistă.
13.4
Primitive de serviciu
Un serviciu este specificat formal printr-un set de primitive (operaţii) puse la dispoziţia utilizatorului care foloseşte serviciul. Aceste primitive comandă serviciului să execute anumite acţiuni sau să raporteze despre acţiunile executate de o entitate pereche. Dacă stiva de protocoale este localizată în sistemul de operare, aşa cum se întâmplă de cele mai multe ori, primitivele sunt în mod normal apeluri sistem. Aceste apeluri cauzează o trecere a sistemului de operare în modul nucleu (kernel), care preia controlul maşinii pentru a trimite pachetele necesare. Setul de primitive disponibile depinde de natura serviciului oferit. Primitivele serviciilor orientate pe conexiuni sunt diferite de cele ale serviciilor fără conexiuni. Ca un exemplu minimal de primitive de serviciu care pot fi oferite pentru a implementa un flux de octeţi într-un mediu client-server, putem considera primitivele listate în fig. 1-17. Primitiva LISTEN (Ascultă) CONNECT (Conectează) RECEIVE (Primeşte) SEND (Trimite) DISCONNECT (Deconectează)
Semnificaţia Blocare în aşteptarea unei conexiuni Stabilirea unei conexiuni cu o entitate pereche aflată în aşteptare Blocare în aşteptarea unui mesaj Trimite un mesaj entităţii pereche Termină o conexiune
Fig. 1-17. Cinci primitive de serviciu pentru implementarea unui serviciu simplu orientat pe conexiune. Aceste primitive pot fi folosite în următorul mod: mai întâi serverul execută LISTEN pentru a indica faptul că este pregătit să accepte conexiuni. Un mod obişnuit de a implementa LISTEN este a
SEC 1.3 PROGRAMELE DE RETEA 33 face un apel de sistem blocant. După execuţia primitivei, procesul server este blocat până la apariţia unei cereri de conectare. Apoi procesul client execută CONNECT pentru a stabili o conexiune cu serverul. Apelul CON- NECT trebuie să specifice cu cine se doreşte conectarea, aşa că ar putea avea un parametru prin care se transmite adresa serverului. De cele mai multe ori, sistemul dc operare va trimite un prim pachet entităţii pereche cerându-i să se conecteze, după cum este arătat dc (1) în fig. 1-18. Procesul client este suspendat până când apare un răspuns. Când pachetul ajunge Ia server, el este procesat de sistemul de operare al acestuia. Când sistemul de operare observă că pachetul cere o conexiune, verifică dacă există vreun ascultător. Dacă da, va face doua lucruri: va debloca ascultătorul şi va trimite înapoi o confirmare (2). Sosirea acestei confirmări eliberează apoi clientul. In acest moment, atât clientul cât şi serverul sunt în execuţie şi au stabilit o conexiune între ei. Este important de observat că secvenţa de confirmare (2) este generată de codul protocolului însuşi, nu ca răspuns al unei primitive de la nivelul utilizatorului. Dacă apare o cerere de conexiune şi nu există nici un ascultător, A
rezultatul este nedefinit. In anumite sisteme, pachetul poate fi păstrat un scurt timp într-o coadă, anticipând o eventuală comandă LISTEN. Maşina client > Apeluri } sistem
Procesu l client
Nucleu Stiva de Programe proto- de concoale figurare Maşina server Procesul server
c
)
f Nucleu Stiva de Programe Sistem proto- de conde coale figurare operare
(1) Cerere de conectare (2) Confirmare (ACK) (3) Cerere de date (4) Răspuns (5) Deconectare (6) Deconectare
Fig. 1-18. Pachetele trimise într-o simplă interacţiune client-scrver pe o reţea orientată pe conexiuni. Analogia evidentă între acest protocol şi viaţa reală este cazul clientului care sună la directorul departamentului de service al unei companii. Directorul stă lângă telefon pentru a putea răspunde în cazul în care acesta sună. Clientul face un apel. Când directorul ridică receptorul, conexiunea este stabilită. Pasul următor este ca serverul să execute RECEIVE pentru a se pregăti să accepte prima cerere, în mod normal serverul face această operaţie de îndată ce a fost eliberat din blocarea impusă de LISTEN, înainte să ajungă confirmarea înapoi la client. Apelul RECEIVE blochează serverul. Apoi clientul execută SEND pentru a transmite cererea sa (3) urmat de execuţia unui RECEIVE pentru a obţine răspunsul. Sosirea pachetului de cerere la maşina server deblochează procesul server astfel încât acesta să poată procesa cererea. După ce a terminat lucrul, foloseşte SEND pentru a răspunde clientului (4). Sosirea acestui
34 INTRODUCERE CAP. 1 pachet deblochează clientul care poate acum să analizeze răspunsul obţinut. Daca mai există cereri din partea clientului, acesta le poate face acum. Dacă a terminat, poate folosi DISCONNECT pentru a termina conexiunea. De obicei, apelul iniţial DISCONNECTeste blocant, suspendând clientul şi trimiţând un pachet către server pentru a-i comunica faptul ca respectiva conexiune nu mai este necesară (5). Când serverul primeşte pachetul, el lansează un DISCONNECT propriu, confirmând cererea clientului şi eliberând conexiunea. Când pachetul serverului (6) ajunge
PROGRAMELE DE REŢEA
SEC. 1.3
35
înapoi la maşina clientului, procesul client este eliberat şi conexiunea este întreruptă. Foarte pe scurt, aşa funcţionează comunicaţiile orientate pe conexiuni. Desigur, viaţa nu este simplă. Multe dintre lucruri pot să nu funcţioneze corect. Sincronizarea poate ti proastă (de exemplu, daca se încearcă un CONNECT înainte de L1STEN), pachetele se pot pierde şi multe altele. Vom studia toate acestea în detaliu ceva mai târziu, dar deocamdată fig. 1-18 rezumă pe scurt modul în care ar putea să funcţioneze o comunicaţie client-server într-o reţea orientată pe conexiuni. Ştiind că acele şase pachete sunt necesare pentru a realiza acest protocol, cititorul se poate întreba de ce nu se foloseşte un protocol fără conexiune în locul său. Răspunsul este că ar fi posibil într-o lume perfectă, şi atunci ar fi nevoie de numai două pachete: unul pentru cerere şi unul pentru răspuns. Oricum, în cazul real cu mesaje lungi în oricare dintre direcţii (de exemplu un fişier de 1 MB), cu erori de transmisie şi cu pachete pierdute, situaţia se modifică. Dacă răspunsul ar avea sute de pachete, dintre care unele s-ar putea pierde în timpul transmisiei, cum ar putea clientul să îşi dea seama că unele piese lipsesc? Cum ar putea şti clientul dacă ultimul pachet recepţionat este de fapt ultimul pachet trimis? Să presupunem că de la client se face o cerere pentru un al doilea fişier. Cum ar putea clientul să diferenţieze pachetele din cel de-al doilea fişier de eventualele pachete pierdute din primul fişier? Pe scurt, în lumea reală, un simplu protocol cerere-răspuns implementat într-o reţea nesigură este de cele mai multe ori inadecvat. In cap. 3 vom studia în detaliu o largă varietate de protocoale, care pot rezolva aceste probleme şi altele similare. Pentru moment însă este de ajuns să spunem că a avea un flux de octeţi sigur şi ordonat între procese este de multe ori foarte convenabil.
13.5
Relaţia dintre servicii şi protocoale
Deşi sunt adesea confundate, scrviciile şi protocoalele reprezintă concepte distincte. Diferenţa între ele este atât de importantă, încât o subliniem din nou în această secţiune. Un serviciu este un set de primitive (operaţii) pe care un nivel le furnizează nivelului de deasupra sa. Serviciul defineşte ce operaţii este pregătit nivelul să realizeze pentru utilizatorii săi, dar nu spune nimic despre cum sunt implementate aceste operaţii. Un serviciu este definit în contextul unei interfeţe între două niveluri, nivelul inferior fiind furnizorul serviciului şi nivelul superior fiind utilizatorul serviciului. Prin contrast, un protocol este un set de reguli care guvernează formatul şi semnificaţia cadrelor, pachetelor sau mesajelor schimbate între ele de entităţile pereche dintr-un nivel. Entităţile folosesc protocoale pentru a implementa definiţiile serviciului lor. Ele sunt libere să îşi schimbe protocoalele după cum doresc, cu condiţia să nu modifice serviciul pe care îl văd utilizatorii. în acest fel, serviciul şi protocolul sunt complet decuplate. Nivelulk+1 1 Serviciu oferit de nivelul k
Nivelul k
Protocol
Nivelulk H-
Nivelul k
Nivelul k -1 Nivelul k -1
Fig. 1-19. Relaţia dintre un server şi un protocol. Cu alte cuvinte, serviciile sunt legate de interfeţele dintre niveluri, după cum este ilustrat şi în fig. 1-19. Prin contrast, protocoalele sunt legate de pachetele trimise între entităţile pereche de pe diferite maşini. Este important să nu existe confuzii între cele două concepte. Merită să facem o analogie cu limbajele de programare. Un serviciu este ca un tip de date abstracte sau ca
36 INTRODUCERE CAP. 1 un obiect într-un limbaj orientat pe obiecte. Acesta defineşte operaţiile care pot fi aplicate pe un obiect, dar nu specifică modul de implementare a operaţiilor. Un protocol se referă la implementarea serviciului şi nu este vizibil pentru utilizatorul serviciului. Multe protocoale mai vechi nu făceau diferenţa între serviciu şi protocol. Ca urmare, un nivel tipic putea avea o primitivă de serviciu SEND PACKET în care utilizatorul furniza o referinţă către un pachet complet asamblat. Acest aranjament însemna că toate modificările protocolului erau imediat vizibile pentru utilizatori. Majoritatea proiectanţilor de reţele privesc acum un astfel de mecanism ca pe o eroare gravă.
1.4 MODELE DE REFERINŢĂ Acum, după ce am discutat la modul abstract structura pe niveluri a reţelelor, a sosit timpul să studiem câteva exemple. In următoarele două secţiuni vom discuta două arhitecturi de reţea importante, modelul de referinţă OSI şi modelul de referinţă TCP/IP. Deşi protocoalele asociate cu modelul OSI nu sunt folosite aproape deloc, modelul în sine este destul de general şi încă valabil, iar caracteristicile puse în discuţie la fiecare nivel sunt în continuare foarte importante. Modelul TCP/IP are caracteristici opuse: modelul în sine nu este foarte util, dar protocoalele sunt folosite pe scară largă. Din acest motiv, le vom studia pe fiecare în detaliu. în plus, uneori poţi învăţa mai multe din eşecuri decât din succese.
1.4.1
Modelul de referinţă OSI
Modelul OSI este prezentat în fig. 1-16 (mai puţin mediul fizic). Acest model se bazează pe o propunere dezvoltată de către Organizaţia Internaţională de Standardizare (International Standards Organization - ISO) ca un prim pas către standardizarea internaţională a protocoalelor folosite pe diferite niveluri (Dayşi Zimmermann, 1983). A fost revizuit în 1995 (Day, 1995). Modelul se numeşte ISO OSI (Open Systems Interconnection, rom: interconectarea sistemelor deschise), pentru că el se ocupă de conectarea sistemelor deschise - adică de sisteme deschise comunicării cu alte sisteme, în continuare vom folosi mai ales termenul prescurtat de model OSI. Modelul OSI cuprinde şapte niveluri. Principiile aplicate pentru a se ajunge la cele şapte niveluri sunt următoarele: 1. 2. 3. 4. 5.
Un nivel trebuie creat atunci când este nevoie de un nivel de abstractizare diferit. Fiecare nivel trebuie să îndeplinească un rol bine definit. Funcţia fiecărui nivel trebuie aleasă acordându-se atenţie definirii de protocoale standardizate pe plan internaţional. Delimitarea nivelurilor trebuie făcută astfel încât să se minimizeze fluxul de informaţii prin interfeţe. Numărul de niveluri trebuie să fie suficient de mare pentru a nu fi nevoie să se introducă în acelaşi nivel funcţii diferite şi suficient de mic pentru ca arhitectura să rămână funcţională.
în continuare vom discuta fiecare nivel al modelului, începând cu nivelul cel mai dejos. Modelul OSI nu reprezintă în sine o arhitectură de reţea, pentru că nu specifică serviciile şi protocoalele utilizate la fiecare nivel. Modelul spune numai ceea ce ar trebui să facă fiecare nivel. ISO a produs de asemenea standarde pentru fiecare nivel, însă aceste standarde nu fac parte din modelul de referinţă propriu-zis. Fiecare din standardele respective a fost publicat ca un standard internaţional separat.
SEC. 1.4
MODELE DE REFERINŢĂ
37
Nivelul fizic Nivelul fizic se ocupă de transmiterea biţilor printr-un canal de comunicaţie. Proiectarea trebuie să garanteze că atunci când unul din capete trimite un bit 1, acesta e receptat în cealaltă parte ca un bit 1, nu ca un bit Ü. Problemele tipice se referă la câţi volţi trebuie utilizaţi pentru a reprezenta un 1 şi câţi pentru un 0, dacă transmisia poate avea Ioc simultan în ambele sensuri, cum este stabilită conexiunea iniţială şi cum este întreruptă când au terminat de comunicat ambele părţi, câţi pini are conectorul de reţea şi la ce foloseşte fiecare pin. Aceste aspecte de proiectare au o legătură strânsă cu interfeţele mecanice, electrice, funcţionale şi procedurale, ca şi cu mediul de transmisie situat sub nivelul fizic.
Nivelul legătură de date Sarcina principală a nivelului legăturii de date este de a transforma un mijloc oarecare de transmisie într-o linie care să fie disponibilă nivelului reţea fără erori de transmisie nedetectate. Nivelul legătură de date realizează această sarcină obligând emiţătorul să descompună datele de intrare în cadre de date (în mod tipic, câteva sute sau câteva mii de octeţi) şi să transmită cadrele secvcnţial. Dacă serviciul este sigur, receptorul confirmă fiecare cadru trimiţând înapoi un cadru de confirmare pozitivă. O altă problemă care apare la nivelul legătură de date (şi, de asemenea, la majoritatea nivelurilor superioare) este evitarea inundării unui receptor lent cu date provenite de la un emiţător rapid. în acest scop sunt necesare mecanisme de reglare a traficului care să permită emiţătorului să afle cât spaţiu tampon deţine receptorul la momentul curent. Controlul traficului şi tratarea erorilor sunt deseori integrate. Reţelele cu difuzare determină în nivelul legătură de date o problemă suplimentară: cum să fie controlat accesul la canalul partajat. De această problemă se ocupă un subnivel special al nivelului legătură de date şi anume subnivelul de control al acccsului la mediu.
Nivelul reţea Nivelul reţea se ocupă de controlul funcţionării subreţelei. O problemă cheie în proiectare este determinarea modului în care pachetele sunt dirijate de la sursă la destinaţie. Dirijarea se poate baza pe tabele statistice care sunt „cablate” intern în reţea şi care sunt schimbate rar. Traseele pot fi de asemenea stabilite la începutul fiecărei conversaţii, de exemplu la înccputu! unei sevsiuni la terminal (de ex. o operaţie dc login pe o maşină la distanţă). în sfârşit, dirijarea poate fi foarte dinamică, traseele detcrminându-sc pentru fiecare pachet în concordanţă cu traficul curent din reţea. Dacă în subreţea există prea multe pachete simultan, ele vor intra unul pe traseul celuilalt şi astfel se vor produce gâtuiri. Controlul unor astfel de congestii îi revine tot nivelului reţea. Mai general, calitatea serviciilor oferite (întârziere, timp de tranzitare, fluctuaţii, etc.) este tot o responsabilitate a nivelului reţea. Multe probleme pot apărea când un pachet trebuie să călătorească dintr-o reţea în alta ca să ajungă la destinaţie. Modul dc adresare folosit dc a doua reţea poate să difere de cel pentru prima.
38 INTRODUCERE CAP. 1 A doua reţea poate chiar să nu accepte deloc pachetul pentru că este prea mare. De asemenea, protocoalele pot fi diferite şi aşa mai departe. Rezolvarea acestor probleme în vederea interconectării AK reţelelor eterogene este sarcina nivelului reţea. In reţelele cu difuzare, problema dirijării este simplă, astfel că nivelul reţea este deseori subţire sau chiar nu există deloc.
Nivelul transport Rolul principal al nivelului transport este să accepte date de la nivelul sesiune, să le descompună, dacă este cazul, în unităţi mai mici, să transfere aceste unităţi nivelului reţea şi să se asigure că toate fragmentele sosesc corect Ia celălalt capăt. în plus, toate acestea trebuie făcute eficient şi într-un mod care izolează nivelurile de mai sus de inevitabilele modificări în tehnologia echipamentelor. Nivelul transport determină, de asemenea, ce tip de serviciu să furnizeze nivelului sesiune şi, în final, utilizatorilor reţelei. Cel mai obişnuit tip de conexiune transport este un canal punct-la-punct fără erori care furnizează mesajele sau octeţii în ordinea în care au fost trimişi. Alte tipuri posibile de servicii de transport sunt transportul mesajelor individuale - fără nici o garanţie în privinţa ordinii de livrare - şi difuzarea mesajelor către destinaţii multiple. Tipul serviciului se determină când se stabileşte conexiunea. (Ca un comentariu secundar: este imposibil de obţinut un canal fără erori; ceea ce oamenii înţeleg prin această expresie este că rata erorilor este destul de mică pentru a fi ignorată în practică). Nivel Numele unităţii schimbate Protocolul aplicaţie
Aplicaţie
Aplicaţie APDU
Interfaţă
Prft7ûntn ro 1 riocoiiidic
Protocolul prezentare i j. .
r rezentare
PPD U
Interfaţ ă5
Protocolul sesiune
Sesiune Transport
SPDU
Sesiune
Protocolul transport Limita subreţelei de
Transport TPDU
1 I Legătură L _ de date
i »
Ruter Protocolul gazdă-ruter de la nivelul reţea Protocolul gazdă- c ruter de la nivelul legăturii de date Protocolul gazdă-ruter
o
de la nivelul fizic
m
unicaţie Protocolul intern al subreţelei^'
lA Pachet
Legătură 1 de date 1
SEC. 1.4
MODELE DE REFERINŢĂ
39 Reţea
“1“ M CWip .. mii* p ••
• Fizic
Gazda B
Fig. 1-20. Modelul de referinţă OSI.
Bit
40
INTRODUCERE
CAP. 1
Nivelul transport este un adevărat nivel capăt-la-capăt, de la sursă la destinaţie. Cu alte cuvinte, un program de pe maşina sursă poartă o conversaţie cu un program similar de pe maşina destinaţie, folosind în acest scop antetele mesajelor şi mesaje de control. In nivelurile inferioare protocoalele au loc între fiecare maşină şi vecinii săi imediaţi (niveluri înlănţuite), şi nu direct între maşinile sursă şi destinaţie (niveluri capăt-la-capăt), care pot fi separate de numeroase rutere. Diferenţa între nivelurile de la 1 până la 3, care sunt înlănţuite şi nivelurile de la 4 la 7, care sunt capăt-la-capăt, este ilustrată în fig. 1-20.
Nivelul sesiune Nivelul sesiune permite utilizatorilor de pe maşini diferite să stabilească între ei sesiuni. Sesiunile oferă diverse servicii, incluzând controlul dialogului (respectarea ordinii în raport cu dreptul de a transmite), gestionarea jetonului (prevenirea situaţiei în care două entităţi încearcă aceeaşi operaţie critică în acelaşi timp) şi sincronizarea (introducerea de puncte de control pe parcursul transmisiilor lungi, astfel încât, în cazul unui eşec, acestea să poată fi reluate dc unde rămăseseră).
Nivelul prezentare în particular, spre deosebire de nivelurile inferioare, care se ocupă numai de transferul biţilor dintr-un loc în altul, nivelul prezentare se ocupă de sintaxa şi semantica informaţiilor transmise. Pentru a face posibilă comunicarea înde calculatoare cu reprezentări diferite ale datelor, structurile de date care se schimba între ele pot fi definite într-un mod abstract, alături de o codificare standardizată ce va fi utilizată „pe cablu”. Nivelul prezentare gestionează aceste structuri de date abstracte şi permite definirea şi comunicarea unor structuri dc date de nivel mai înalt (de ex. înregistrări bancare).
Nivelul aplicaţie Nivelul aplicaţie conţine o varietate de protocoale frecvent utilizate. Un exemplu de protocol utilizat pe scară largă este HTTP (HyperText Transfer Protocol, rom: protocol de transfer al hiper- textului), care sta la baza WWW (World Wide Web, rom: reţea de întindere planetară). Atunci când un program de navigare (browser) accesează o pagină Web, el trimite serverului numele paginii pe care o doreşte folosind HTTP. Serverul va trimite ca răspuns pagina. Alte protocoale de aplicaţie sunt folosite pentru transferul fişierelor, poştă electronica, ştiri în reţea.
1.4.2
Modelul de referinţă TCP/IP
Să ne îndreptăm acum atenţia de la modelul de referinţă OS1 spre modelul de referinţă utilizat de strămoşul tuturor reţelelor de calculatoare, ARPANET-ul, şi de succesorul său, Intemet-ul. Deşi vom prezenta mai târziu o scurtă istorie a ARPANET-ului, este util să menţionăm acum câteva aspecte esenţiale. ARPANET a fost o reţea dc cercetare sponsorizată de către DoD (U.S. Department of Defense, rom: Departamentul de Apărare al Statelor Unite). în cclc din urmă, reţeaua a ajuns să conecteze între ele, utilizând linii telefonice închiriate, sute de reţele universitare şi guvernamentale. Atunci când au fast adăugate, mai târziu, reţele prin satelit şi radio, interconectarea acestora cu protocoalele existente a pus diferite probleme. Era nevoie de o nouă arhitectură de referinţă. De aceea, posibilitatea de a interconecta fară probleme mai multe tipuri de reţele a reprezentat de la bun început un obiectiv de proiectare major. Această arhitectură a devenit cunoscută mai târziu sub denumirea de modelul de referinţă TCP/IP, dată după numele celor două protocoale fundamentale utilizate. Arhitectura respectivă a fost definită prima dată în (Cerf şi Kahn, 1974). O perspectivă ul
MODELE DE REFERINŢĂ
SEC. 1.4
41
terioară este prezentată în (Leiner ş.a., 1985). Filosofia de proiectare din spatele modelului este discutată în (Clark, 1988). Dată fiind îngrijorarea Departamentului de Apărare că o parte din preţioasele sale gazde, rutere şi porţi de interconectare ar putea fi distruse dintr-un moment în altul, un alt obiectiv major a fost ca reţeaua să poată supravieţui pierderii echipamentelor din subreţea fără a fi întrerupte conversaţiile existente. Cu alte cuvinte, DoD dorea ca, atâta timp cât funcţionau maşina sursă şi maşina destinaţie, conexiunile să rămână intacte, chiar dacă o parte din maşini sau din liniile de transmisie erau brusc scoase din funcţiune. Mai mult, era nevoie de o arhitectură flexibilă, deoarece se aveau în vedere aplicaţii cu cerinţe divergente, mergând de la transferul dc fişiere până la transmiterea vorbirii în timp real.
Nivelul internet Toate aceste ccrinţe au condus la alegerea unei reţele cu comutare de pachete bazată pe un nivel inter-reţea fără conexiuni. Acest nivel, numit nivelul internet, este axul pe care se centrează întreaga arhitectură. Rolul său este de a permite gctzdelor să emită pachete în orice reţea şi a face ca pachetele să circule independent până la destinaţie (fiind posibil ca aceasta să se găsească pe o altă reţea). Pachetele pot chiar să sosească într-o ordine diferită faţă de cea în care au fost trimise, caz în care - dacă se doreşte livrarea lor ordonată - rcaranjarea cade în sarcina nivelurilor superioare. De observat că „interneteste folosit aici într-un sens generic, chiar dacă acest nivel este prezent şi în Internet. Aici, analogia este cu sistemul de poştă (clasică). O persoană dintr-o anumită ţară poate depune într-o cutie poştală mai multe scrisori internaţionale şi, cu puţin noroc, majoritatea scrisorilor vor ajunge la adresa corcctă din ţara de destinaţie. Probabil că scrisorile vor trece pe drum prin mai multe oficii de cartare, dar acest lucru se face transparent pentru utilizatori. Mai mult, faptul că fiecare ţară (adică fiecare reţea) are propriile timbre, propriile mărimi favorite de plicuri şi propriile reguli de livrare este ascuns beneficiarilor. Nivelul internet defineşte oficial un format de pachet şi un protocol numit IP (Internet Protocol, rom: protocol Internet). Sarcina nivelului internet este să livreze pachete 1P către destinaţie. Problemele majore se referă la dirijarea pachetelor şi evitarea congestiei. în consecinţă, este rezonabil să spunem că nivelul internet din TCP/IP funcţionează asemănător cu nivelul reţea din OS1. Fig. 1-21 arată această corespondenţă. OSI
TCP/IP Aplicaţie
7 Aplicaţie 6 Prezentare 5 Sesiune
Transport Internet
4 Transport 3 Reţea 2
Legătură de date
Gazdă-la-reţea
Fizic
Fig. 1-21. Modelul de referinţă TCP/IP.
Nivelul transport
42
INTRODUCERE CAP. 1 Nivelul situat deasupra nivelului internet din modelul TCP/IP este frecvent numit nivelul transport. Acesta este proiectat astfel, încât să permită conversaţii între entităţile pereche din gazdele sursă şi, respectiv, destinaţie, la fel ai în nivelul transport OSI. în acest sens au fost definite două protocoale capât-la-capăt. Primul din ele, TCP (Transmission Control Protocol, rom: protocolul de control al transmisiei), este un protocol sigur orientat pe conexiuni care permite ca un flux de octeţi trimişi de pe o maşină să ajungă iară erori pe orice altă maşină din interreţea. Acest protocol fragmentează fluxul de octeţi în mesaje discrete şi pasează fiecare mesaj nivelului internet. I^a destinaţie, procesul TCP receptor reasamblează mesajele primite Intr-un flux de ieşire. TCP tratează totodată controlul fluxului pentru a se asigura că un emiţător rapid nu inundă un receptor lent cu mai multe mesaje decât poate acesta să prelucreze. Al doilea protocol din acest nivel, LT)P (User Da ta ¿»ram Protocol, rom: protocolul datagramelor utilizator), este un protocol nesigur, fără conexiuni, destinat aplicaţiilor care doresc să utilizeze propria lor secvenţiere şi control al fluxului, şi nu pe cele asigurate de TCP. Protocolul UDP este de asemenea mult folosit pentru interogări rapide întrebare-răspuns, client-server şi pentru aplicaţii în care comunicarea promptă este mai importantă decât comunicarea cu acurateţe, aşa cum sunt aplicaţiile de transmisie a vorbirii şi a imaginilor video. Relaţia dintre IP, TCP şi UDP este prezentată în fig. 1-22. De când a fost dezvoltat acest model, IP a fost implementat pe multe alte reţele. Nivelul (numele OSI) Aplicaţie TELNET
SMTP
FTP
TCF
Protocoale -
DNS
UDP
Transport
IP
ARPANET
SATNET
Radio cu pachete
LAN
Reţea Fizic + legătură de date
Fig. 1-22. Protocoale şi reţele din modelul TCP/IP iniţial.
Nivelul aplicaţie Modelul TCP/IP nu conţine niveluri sesiune sau prezentare. Acestea nu au fost incluse pentru că nu s-a simţit nevoia lor. Experienţa modelului OSI a dovedit că această viziune a fost corectă: în majoritatea aplicaţiilor, nivelurile respective nu sunt de mare folos. Deasupra nivelului transport se află nivelul aplicaţie. Acesta conţine toate protocoalele de nivel mai înalt. Aşa cum se vede din fig. 1-22, primele protocoale dc acest gen includeau terminalul virtual (TELNET), transferul de fişiere (FTP) şi poşta electronică (SMTP). Protocolul de terminal virtual permite unui utilizator de pe o maşină să se conecteze şi să lucreze pe o maşină aflată la distanţă. Protocolul de transfer de fişiere pune la dispoziţie o modalitate de a muta eficient date de pe o maşină pe alta. Poşta electronică a fost la origine doar un tip de transfer de fişiere, dar ulterior a fost dezvoltat un protocol specializat (SMTP - Simple Mail Transfer Protocol, rom: Protocol simplu de transfer al poştei) pentru acest serviciu. Pe parcursul anilor, la aceste protocoale s-au adăugat multe altele, aşa cum sunt Serviciul Numelor de Domenii (Domain Name Service DNS) pentru stabilirea corespondenţei dintre numele gazdelor şi adresele reţelelor, NNTP, protocolul
SEC. 1.4pentru a transfera articole dc MODELE DE REFERINŢĂ utilizat ştiri USENET, HTTP, folosit pentru aducerea paginilor de pe Web 43 şi multe altele.
Nivelul gazdă-reţea Sub nivelul internet se află necunoscutul. Modelul de referinţă TCP/IP nu spune mare lucru despre ce se întâmplă acolo, însă menţionează că gazda trebuie să se lege Ia reţea, pentru a putea trimite pachete IP, folosind un anumit protocol. Acest protocol nu este definit şi variază de la gazdă la gazdă şi de la reţea la reţea. Cărţile şi articolele despre TCP/IP rareori discută despre acest protocol.
1.43 O comparaţie între modelele de referinţă OSI şi TCP Modelele de referinţă OSI şi TCP/IP au multe lucruri în comun. Amândouă se bazează pe conceptul unei stive de protocoale independente. De asemenea, funcţionalitatea nivelurilor este în linii mari similară. De exemplu, în ambele modele, nivelurile până la nivelul transport inclusiv sunt necesare pentru a pune la dispoziţia proceselor care doresc să comunice un serviciu dc transport capăt-la- capăt independent de reţea. Nivelurile respective formează furnizorul de transport. Din nou, în ambele modele, nivelurile de deasupra transportului sunt beneficiari orientaţi pe aplicaţii ai serviciului de transport. In pofida acestor similitudini fundamentale, între cele două modele există şi multe deosebiri. În această secţiune ne vom concentra asupra diferenţelor cheie dintre cele două modele de referinţă. Este important de subliniat că vom compara aici modelele de referinţă, nu stivele de protocoale corespunzătoare. Protocoalele propriu-zise vor fi discutate mai târziu. Pentru o întreagă carte consacrată comparaţiei şi diferenţelor dintre TCP/IP şi OSI, a se vedea (Piscitello şi Chapin, 1993). Trei concepte sunt esenţiale pentru modelul OSI: 1. 2.
Servicii Interfete
3.
Protocoale
y
Probabil că cea mai mare contribuţie a modelului OSI este că a iacut explicită diferenţa între aceste trei concepte. Fiecare nivel realizează nişte servicii pentru nivelul situat deasupra sa. Definiţia serviciului spune ce face nivelul, nu cum îl folosesc entităţile de deasupra sa sau cum funcţionează nivelul. El defineşte semantica nivelului. Interfaţa unui nivel spune proceselor aflate deasupra sa cum să facă accesul. Interfaţa precizează ce reprezintă parametrii şi ce rezultat se obţine. Nici interfaţa nu spune nimic despre funcţionarea internă a nivelului. în sfârşit, protocoalele pereche folosite într-un nivel reprezintă treaba personală a nivelului. Nivelul poate folosi orice protocol doreşte, cu condiţia ca acesta să funcţioneze (adică să îndeplinească serviciul oferit). Nivelul poate de asemenea să schimbe protocoalele după cum vrea, fără ca acest lucru să afecteze programele din nivelurile superioare. Aceste idei se potrivesc foarte bine cu ideile modeme referitoare la programarea orientată pe obiect. Un obiect, ca şi un nivel, posedă un set de metode (operaţii) care pot fi invocate de către procese din afara obiectului. Semanticele acestor metode definesc mulţimea de servicii pe care le oferă obiectul. Parametrii şi rezultatele metodelor formează interfaţa obiectului. Codul intern al obiectului reprezintă protocolul său şi nu este vizibil şi nici important în afara obiectului. Deşi lumea a încercat ulterior să îl readapteze pentru a fi mai asemănător modelului OSI, modelul TCP/IP nu a făcut iniţial o distincţie clară între serviciu, interfaţă şi protocol. De exemplu, singurele servicii veritabile oferite de nivelul internet sunt SEND IP PACKET şi RECEIVEIP PACKET. în consecinţă, protocoalele din modelul OSI sunt mai bine ascunse decât în modelul TCP/IP şi pot fi înlocuite relativ uşor pe măsură ce se schimbă tehnologia. Capacitatea de a face asemenea modificări reprezintă
44 INTRODUCERE CAP. 1 unul din scopurile principale ale organizării protocoalelor pe niveluri în modelul OSI. Modelul de referinţă OSI a fost conceput înainte să fie inventate protocoalele corespunzătoare. Ordinea respectivă semnifică faptul că modelul nu a fost orientat către un set specific de protocoale, fiind prin urmare destul de general. Reversul este că proiectanţii nu au avut multă experienţă în ceea ce priveşte acest subiect şi nu au avut o idee coerentă despre împărţirea funcţiilor pe niveluri. De exemplu, nivelul legătură de date se ocupa iniţial numai cu reţelele punct-la-punct. Atunci când au apărut reţelele cu difuzare, a trebuit să fie introdus în model un subnivel nou. Când lumea a început să construiască reţele reale utilizând modelul OSI şi protocoalele existente, s-a descoperit că acestea nu se potriveau cu specificaţiile serviciului cerut (minunea minunilor), astfel că a trebuit introdusă în model convergenţa subnivelurilor, ca să existe un loc pentru a glosa pe marginea diferenţelor. în sfârşit, comitetul se aştepta iniţial ca fiecare ţară să aibă câte o reţea care să fie în custodia guvernului şi să folosească protocoalele OSI, aşa că nu s-a dat nici o atenţie interconectării. Pentru a nu mai lungi povestea, să spunem doar că lucrurile s-au petrecut altfel. în ceea ce priveşte TCP/IP, lucrurile stau exact pe dos: mai întâi au apărut protocoalele, iar modelul a fost de fapt doar o dcscricrc a protocoalelor existente. Cu protocoalele respective nu era nici o problemă: ele se potriveau perfect cu modelul. Singurul necaz era că modelul nu se potrivea cu nici o altă stivă de protocoale. Prin urmare, modelul nu a fost prea util pentru a descrie alte reţele non-TCP/lP. Pentru a ne întoarce de la subiectele filosofice la subiecte mai specifice, o diferenţă evidentă între cele două modele se referă la numărul de niveluri: modelul OSI are şapte niveluri, iar TCP/IP are patru. Ambele modele au niveluri (inter-)reţea, traasport şi aplicaţie, dar restul nivelurilor sunt diferite. O altă deosebire priveşte subiectul comunicaţiei fără conexiuni faţă de cel al comunicaţiei orientată pe conexiuni. Modelul OSI suportă ambele tipuri de comunicaţii la nivelul reţea, dar numai comunicaţii orientate pe conexiuni în nivelul transport, unde acest fapt are importanţă (pentru că serviciul de transport este vizibil utilizatorilor). Modelul TCP/IP are numai un mod (fără conexiuni) la nivelul reţea, dar suportă ambele moduri Ia nivelul transport, ceea ce lasă utilizatorilor posibilitatea alegerii. Această alegere este importantă în mod special pentru protocoale întrebare-răspuns simple.
1.4.4
O critică a modelului şi protocoalelor OSI
Nici modelul şi protocoalele OSI şi nici modelul şi protocoalele TCP/IP nu sunt perfecte. Asupra lor se pot formula, şi s-au formulat, câteva critici. în prezenta şi în următoarea secţiune vom vedea unele dintre aceste critici. Vom începe cu OSI, după care vom examina TCP/IP. La momentul când a fost publicată a doua ediţie a acestei cărţi (1989), majoritatea experţilor în domeniu credeau că modelul şi protocoalele OSI se vor impune peste tot şi vor elimina orice concurent. Accst lucru nu s-a întâmplat. De ce? O privire spre lecţiile trecutului poate fi utilă. Aceste lecţii pot fi rezumate astfel: 1. Ratarea momentului. 2. Tehnologii proaste. 3. Implementări proaste. 4. Politici proaste.
Ratarea momentului Să vedem mai întâi prima problemă: ratarea momentului. Momentul la care se stabileşte un standard este absolut critic pentru succesul acestuia. David Clark de la M.I.T. are o teorie asupra standardelor pe care o numeşte Apocalipsa celor doi elefanţi şi care este ilustrată în fig. 1-23.
SEC. 1.4
MODELE DE REFERINŢĂ
45
Timp —►
Fig. 1-23. Apocalipsa cclor doi elefanţi. Această figură arată volumul de activitate desfăşurată în jurul unui subiect nou. Când subiectul este lansat, are loc o explozie a activităţii de cercetare sub formă de discuţii, articole şi întâlniri. După un timp, cercetarea se reduce foarte mult, subiectul este descoperit de companii şi piaţa cunoaşte un val de investiţii de miliarde de dolari. Este esenţial ca standardele să fie definite în intervalul dintre cei doi „elefanţi”. Dacă ele sunt definite prea devreme, înainte să se încheie cercetarea, atunci subiectul poate să nu fie încă destul de bine înţeles, ceea ce conduce la standarde proaste. Dacă ele sunt definite prea târziu, atunci probabil că atât de multe firme au făcut deja investiţii majore realizând lucrurile altfel, încât standardele sunt efectiv ignorate. Dacă intervalul dintre cei doi elefanţi este foarte scurt (pentru că toată lumea arde de nerăbdare să treacă la lucru), atunci cei care dezvoltă standardele pot fi prinşi la mijloc şi striviţi. Acum se vede că protocoalele OSI standard au fost strivite. La momentul apariţiei lor, protocoalele concurente TCP/IP erau deja folosite pe scară largă în universităţi, în cercetare. înainte să vină valul investiţiilor de miliarde de dolari, piaţa din domeniul academic era destul de dezvoltată pentru ca multe firme să înceapă, prudent, să ofere produse TCP/IP. Când a apărut OSI, firmele nu au mai vrut, decât forţate, să sprijine o a doua stivă de protocoale, şi, prin urmare, n-au apărut nici un fel de oferte iniţiale din partea lor. Fiecare firmă aştepta să înceapă celelalte firme, aşa că până la urmă n-a mai început nici o firmă şi fenomenul OSI nu s-a mai produs niciodată.
Tehnologii proaste Al doilea motiv pentru care OSI n-a prins niciodată este că atât modelul cât şi protocoalele au defecte. Opţiunea pentru şapte niveluri a fost mai mult politică decât tehnică , şi două dintre niveluri (sesiune şi prezentare) sunt aproape goale, în timp ce alte două (legătura de date şi reţea) sunt prea aglomerate. Modelul OSI, alături de protocoalele şi definiţiile de servicii asociate, este extraordinar de complex. Atunci când sunt puse unul peste altul, standardele tipărite au o grosime de câţiva zeci de centimetri. Standardele sunt, de asemenea, dificil de implementat şi ineficiente în funcţionare. în acest context îmi vine în minte o ghicitoare formulată de Paul Mockapetris şi citată în (Rose, 1993): î: Ce obţii când aplici un standard internaţional unui gangster? R: O persoană care îţi face o ofertă pe care n-o poţi înţelege. Pe lângă faptul că este incomprehensibil, o altă problemă cu OSI este că unele funcţii, cum sunt adresarea, controlul fluxului şi controlul erorilor apar repetat în fiecare nivel. Saltzer ş.a. (1994), de exemplu, au arătat că, pentru a fi eficient, controlul erorilor trebuie făcut la nivelul cel mai înalt şi că repetarea sa de atâtea ori în nivelurile de mai jos este adesea inutilă şi ineficientă.
Implementări proaste Dată fiind enorma complexitate a modelului şi a protocoalelor, nu este de mirare în faptul că
46 1 implementările iniţiale erau uriaşe, greoaie şiINTRODUCERE ineficiente. Oricine le încerca se simţea ca opărit. Nu aCAP. trecut mult şi lumea a asociat „OSI” cu „calitate slabă.” Deşi odată cu trecerea timpului produsele au devenit mai bune, imaginea s-a deteriorat. Din contră, una din primele implementări de TCP/IP facea parte din Berkeley UNIX şi era destul de bună (ca să nu mai spunem că era şi gratuită). Lumea a început să o folosească repede, ceea ce a determinat apariţia unei comunităţi largi de utilizatori, ceea ce a dus mai departe la îmbunătăţiri, iar aceasta a dus la o comunitate şi mai numeroasă. în acest caz spirala nu cobora, ci urca.
Politici proaste Din cauza implementării iniţiale, multă lume, în special din mediul academic, a considerat TCP/IP ca o parte din Unix; iar în anii ‘80 Unix-ul era pentru oamenii din lumea academică cam la fel de popular ca paternitatea (numită apoi incorect maternitate) sau ca plăcinta cu mere. OSI, pe de altă parte, a fost gândit ca o creaţie a ministerelor de telecomunicaţii europene, apoi a Comunităţii Europene şi, mai târziu, a guvernului Statelor Unite. Această viziune s-a dovedit adevărată numai în parte; dar chiar ideea în sine - un grup de birocraţi guvernamentali încercând să bage un standard inferior tehnic pe gâtul bieţilor cercetători şi programatori care stau în tranşee şi dezvoltă efectiv reţelele de calculatoare - nu a ajutat prea mult. Unii oameni au văzut această abordare în aceeaşi lumină în care a fost văzut IBM când a anunţat în anii ‘60 că PIA era limbajul viitorului, sau DoD care a corectat IBM-ul anunţând că limbajul respectiv era de fapt Ada.
1.4.5
O critică a modelului de referinţă TCP/IP
Modelul şi protocoalele TCP/IP au şi ele problemele lor. Mai întâi, modelul nu face o distincţie clară între conceptele de serviciu, interfaţă şi protocol. O practică recomandabilă în ingineria programării este să se facă diferenţa între specificaţie şi implementare, ceea ce OSI face cu multă atenţie, pe când TCP/IP nu face. De aceea, modelul TCP/IP nu este un ghid prea bun de proiectare a reţelelor noi folosind tehnologii noi. In al doilea rând, modelul TCP/IP nu este deloc general şi nu este aproape deloc potrivit pentru descrierea altor stive de protocoale în afara celei TCP/IP. De exemplu, descrierea Bluetooth folosind modelul TCP/lP ar fi aproape imposibilă. In al treilea rând, nivelul gazdă-reţea nu este deloc un nivel - în sensul normal în care este folosit termenul în contextul protocoalelor organizate pe niveluri - ci este o interfaţă (între nivelurile reţea şi legătură de date). Distincţia între o interfaţă şi un nivel este crucială şi de aceea trebuie să i se acorde atenţia cuvenită. In al patrulea rând, modelul TCP/IP nu distinge (şi nici măcar nu menţionează) nivelurile fizic şi legătură de date. Acestea sunt complet diferite. Nivelul fizic are de-a face cu caracteristicile transmisiei prin cablu de cupru, fibre optice sau radio. Rolul nivelului legătură de date este să delimiteze începutul şi sfârşitul cadrelor şi să le transporte dintr-o parte în alta cu gradul de siguranţă dorit. Un model corect ar trebui să includă ambele niveluri ca niveluri separate. Modelul TCP/IP nu face acest lucru. în sfârşit, deşi protocoalele IP şi TCP au fost atent gândite şi bine implementate, multe din celelalte protocoale au fost construite ad-hoc, fiind în general opera câtorva absolvenţi care tot „meştereau” la ele până oboseau. Implementările protocoalelor erau apoi distribuite gratuit; ca urmare, ele erau larg utilizate, fără să li se asigure suportul necesar, fiind de aceea greu de înlocuit. Unele protocoale au ajuns acum să fie mai mult o pacoste. Protocolul de terminal virtual, TELNET, de exemplu, a fost proiectat pentru un terminal teletype mecanic de zece caractere pe secundă. Cu toate acestea, 25 de ani mai târziu, protocolul este încă foarte utilizat. Pentru a rezuma, în pofida acestor probleme, modelul OSI (mai puţin nivelurile sesiune şi prezentare) s-a dovedit a fi excepţional de util pentru a discuta reţelele de calculatoare. Din contră, protocoalele OSI nu au devenit populare. Pentru TCP/IP este adevărată afirmaţia inversă: modelul este practic inexistent, darprotocoalele sunt larg utilizate. Dat fiind faptul că informaticienilor le place să prepare - şi apoi să şi mănânce - propria lor prăjitură, în această carte vom folosi un model OSI modificat, dar ne vom concentra în
SEC. 1.4rând pe TCP/IP şi alte protocoale MODELE 47 primul înruditeDE cu REFERINŢĂ el; de asemenea, vom folosi şi protocoale mai noi, precum 802, SONET şi Bluetooth. Modelul de lucru folosit în carte este modelul hibrid prezentat în fig. 1-24. Nivelul aplicaţie ______________ Nivelul transport Nivelul reţea _________________ Nivelul legătură de date ________ Nivelul fizic __________________
Fig. 1-24. Modelul hibrid de referinţă care va fi utilizat în această carte.
1.5 EXEMPLE DE REŢELE Subiectul reţelelor de calculatoare acoperă diferite tipuri de reţele, mari şi mici, arhicunoscute sau mai puţin cunoscute. Ele au scopuri, dimensiuni şi tehnologii diverse. în următoarele secţiuni, vom studia câteva exemple, pentru a avea o idee despre varietatea pe care o poate regăsi oricine în domeniul reţelelor de calculatoare. Vom porni cu Internet-ul, probabil cea mai cunoscută reţea, şi vom studia istoria, evoluţia şi tehnologiile sale. Apoi vom discuta ATM, care este de multe ori utilizată în nucleul reţelelor (telefonice) mari. Din punct de vedere tehnic, este destul de diferită de Internet, ceea ce evidenţiază un contrast interesant. Apoi vom introduce Ethernet, dominanţă în cazul reţelelor locale. în final, vom studia IEEE 802.11, standardul pentru reţele fară cablu.
1.5.1
Internet
Internet-ul nu este deloc o reţea, ci o colecţie vastă de reţele diverse, care utilizează anumite protocoale comune şi oferă anumite servicii comune. Este un sistem neobişnuit prin aceea că nu a
48
INTRODUCERI:
CAP. 1
fost planificat de nimeni şi nu este controlat de nimeni. Pentru a-1 înţelege mai bine, să pornim de la începuturi şi să vedem cum s-a dezvoltat şi de ce. Pentru o istorie.foarte reuşită a Intemet-ului, este recomandată cartea lui John Naughton (2000). Este una dintre acele cărţi rare care nu este numai plăcută la citit, dar are şi 20 de pagini de ibid. şi op.cit. pentru istoricii serioşi. Unele dintre materialele de mai jos sunt bazate pe această carte. Desigur, au fost scrise nenumărate cărţi tehnice despre Internet, şi despre protocoalele sale de asemenea. Pentru mai multe informaţii vedeţi, de exemplu, (Maufer, 1999).
ARPANET-uI A.
Povestea începe la sfârşitul anilor 1950. In momentul în care Războiul Rece era la apogeu, DoD (Department of Dcfense, rom: Departamentul de Apărare al SUA) a vrut o reţea de comandă şi control care să poată supravieţui unui război nuclear. La momentul acela, toate comunicaţiile militare foloseau reţelele telefonice publice, care erau considerate vulnerabile. Motivul pentru o astfel de părere poate fi observat în fig. l-25(a). Aici punctele negre reprezintă oficii de comutare, la ele fiind conectate mii de telefoane. Aceste oficii erau, la rândul lor, conectate la oficii de comutare de nivel mai înalt (oficii de taxare), pentru a forma o ierarhie naţională cu un nivel scăzut de redundanţă. Vulnerabilitatea sistemului consta în aceea că distrugerea câtorva oficii de taxare putea fragmenta sistemul în mai multe insule izolate.
Fig. 1-25. (a) Structura sistemului telefonie. (b) Sistemul distribuit cu comutare al lui Baran.
de
în jurul anului 1960, DoD a oferit un contract corporaţiei RAND pentru a găsi o soluţie. Unul dintre angajaţii ei, Paul Baran, a venit cu ideea sistemului distribuit cu un nivel ridicat de toleranţa la defecte, prezentat în fig. l-25(b). Deoarece căile dintre oricare două oficii de comutare erau în acest caz mult mai lungi decât căile pe care semnale analogice puteau să circule fară distorsiuni, Baran a propus utilizarea unei tehnologii digitale cu comutare de pachete prin întregul sistem. Baran a scris câteva rapoarte pentru DoD în care a descris ideile sale în detaliu. Oficialii de la Pentagon au agreat
SEC. 1.5
EXEMPLE DE REŢELE
49
conceptul şi au apelat la AT&T, apoi la monopolul naţional al telefoniei SUA pentru a construi un prototip. AT&T a desconsiderat imediat ideile lui Baran. Cea mai marc si cea mai bogata companie din lume nu avea de gând să permită unui tânăr oarecare să spună cum să se construiască un sistem de telefonie. Ei au declarat că sistemul propus de Baran nu poate fi construit, şi ideea a fost abandonată. Au mai trecut câţiva ani şi DoD încă nu avea un sistem de comandă şi control mai bun. Pentru a înţelege ceea ce s-a întâmplat în continuare trebuie să ne întoarcem în Octombrie 1957, când Uniunea Sovietică a întrecut SUA în domeniul spaţial prin lansarea primului satelit artificial, Sputnik. Când preşedintele Eisenhower a încercat să afle cine adormise la comandă, a fost surprins să afle că Armata, Marina şi Forţele Aeriene îşi disputau bugetul de cercetiire al Pentagonului. Răspunsul lui imediat a fost crearea unei singure organizaţii de cercetare în domeniul apărării: ARPA (Advanced Research Projects Agency, rom: Agenţia dc Cercetare pentru Proiecte Avansate). ARPA nu avea nici oameni de ştiinţă, nici laboratoare; de fapt, nu avea decât un birou şi un mic buget (după standardele Pentagonului). îşi ducea misiunile la îndeplinire prin acordarea de granturi (fonduri pentru cercetarc) şi contracte universităţilor şi companiilor ale căror idei păreau promiţătoare. în primii câţiva ani, ARPA a încercat să afle care îi era misiunea. în 1967, atenţia directorului Larry Roberts a fost atrasă de domeniul reţelelor. A contactat diverşi experţi ca să decidă ce este de făcut. Unul dintre ei, Weslez Clark, a sugerat construirea unei subreţele cu comutare de pachete, dând fiecărei gazde propriul mter, aşa cum este ilustrat în fig. 1-12. După un oarecare sccpticism iniţial, Roberts a adoptat ideea şi a prezentat o lucrare destul de vagă despre ea la Simpozionul ACM SIGOPS ţinut în Gatlinburg, Tcnnessee la sfârşitul lui 1967 (Roberts, 1967). Spre surprinderea lui Roberts, o altă lucrare prezentată la aceeaşi conferinţă descria un sistem similar, care nu numai că fusese proiectat, dar fusese şi implementat sub comanda lui Donald Davies de la NPL (National Physical Laboratories, rom: Laboratoarele Naţionale dc cercetări în Fizică), Anglia. Sistemul propus dc NPL nu era un sistem naţional (conecta numai câtcva calculatoare în campusul NPL) dar demonstrase că comutarea de pachete poate fi funcţională. în plus, cita din rapoartele timpurii ale lui Baran care fuseseră desconsiderate la momentul respectiv. Roberts s-a întors de la Gatlinburg hotărât să construiască ceva ce urma să devină cunoscut sub numele de ARPANET. Subreţeaua trebuia să fie formată din minicalculatoare numite IMP-uri (Interface Messagc Processors - procesoare de mesaje de interfaţă) conectate prin linii de transmisie. Pentru o siguranţă mare, fiecare IMP trebuia legat la cel puţin alte două IMP-uri. Subreţeaua avea să fie o subreţea datagramă, astfel că dacă unele linii şi IMP-uri se defectau, mesajele puteau fi redirijate automat pe căi alternative. Fiecare nod al reţelei era format dintr-un IMP şi dintr-o gazdă, aflate în aceeaşi încăpere şi legate printr-un fir scurt. O gazdă putea să trimită mesaje dc până la 8063 biţi spre IMP-ul său, iar acesta descompunea apoi mesajele în pachete de cel mult 1008 biţi şi le retransmitea la destinaţie separat. Fiecare pachet era primit în întregime înainte de a fi reexpediat, astfel că subreţeaua a fost prima reţea electronică memorează-şiretransmite cu comutare de pachete. ARPA a căutat apoi o ofertă pentru construirea subreţelei. Au depus oferte douăsprezece firme. După evaluarea tuturor propunerilor, ARPA a selectat BBN, o firmă de consultanţă din Cambridge, Massachusctts, şi în 1968 a încheiat cu aceasta un contract pentru construirea subreţelei şi scricrea programelor de subreţea. BBN a decis să utilizeze pe post de IMP-uri minicalculatoare Honeywcll DDP-316 special modificatc, dispunând de o memorie internă de 12K cu cuvinte pe 16 biţi. IMP- urile nu aveau discuri, pentru că părţile mobile erau considerate nesigure. IMP-urile au fost interconectate prin linii de 56 Kbps închiriate de la companii de telefoane. Deşi 56 Kbps este acum o variantă pentru adolescenţii care nu îşi permit ADSL sau cablu, era cea mai bună alternativă a momentului respectiv. Programele au fost împărţite în două: pentru subreţea şi pentru gazde. Programele de subreţea cuprind gestionarea capătului dinspre IMP al conexiunii gazdă-IMP, protocolul IMP-IMPşi un protocol sursă IMP destinaţie IMP, proiectat pentru a mări siguranţa. Proiectul iniţial al reţelei ARPANET este prezentat în fig. 1-
50
INTRODUCERI:
CAP. 1
26.
Şi în afara subreţelei erau necesare programe: gestionarea capătului dinspre gazdă al conexiunii gazdă-IMP, protocolul gazdă-gazdă şi programe de aplicaţie. In scurt timp, a devenit clar că BBN considera sarcina sa încheiată din momentul în care acceptase un mesaj pe un fir gazdă-IMP şi îl plasase pe firul gazdă-IMP destinaţie. Robets avea o nouă problemă: gazdele aveau şi ele nevoie de programe. Pentru a rezolva aceasta problemă, el a convocat o adunare a cercetătorilor în reţele, majoritatea fiind tineri absolvenţi de facultate, la Snowbird, în Utah, în vara anului 1969. Absolvenţii se aşteptau ca nişte experţi în reţele să le explice proiectarea şi softwareul reţelei şi ca fiecare din ei să primească după aceea sarcina de a scrie o parte din programe. Au rămas însă muţi de uimire când au constatat că nu exista nici un expert în reţele şi nici o proiectare serioasă. Trebuiau să îşi dea seama singuri ce au de făcut. Cu toate acestea, în decembrie 1969 începea deja să funcţioneze o reţea experimentală cu patru noduri, la UCLA, UCSB, SRI şi Universitatea din Utah. Au fost alese aceste patru instituţii pentru că toate aveau un număr mare de contracte cu ARPA şi toate aveau calculatoare gazdă diferite şi complet incompatibile (doar ca treaba să fie mai amuzantă). Pe măsură ce se aduceau şi se instalau mai multe IMP-uri, reţeaua creştea rapid; în scurt timp, s-a întins pe tot spaţiul Statelor Unite. Fig. 1-27 arată cât de repede a crescut ARPA în primii 3 ani. Pe lângă ajutorul oferit pentru dezvoltarea tânărului ARPANET, ARPA a finanţat de asemenea cercetări în domeniul reţelelor de sateliţi şi reţelelor mobile radio cu pachete. într-o faimoasă demonstraţie, un camion care circula în California folosea reţeaua radio cu pachete pentru a trimite mesaje către SRI, aceste mesaje erau retransmise apoi prin ARPANET pe Coasta de Est, iar de aici mesajele erau expediate către University College din Londra prin reţeaua de sateliţi. Acest lucru permitea unui cercetător din camion să utilizeze un calculator din Londra în timp ce călătorea prin California.
EXEMPLE DE REŢELE
SEC. 1.5
SRI UTAH
SRI UTAH MIT
SRI UTAH
51
UCLA UCLA RAND HARVARD BURROUGHS
(a) LBL MCCLELLAN UTAH ILLINOIS MCCLELLAN SRI /UTAH
CCAp BBN HARVARDm/lINC Cl ABERDEEN ci NBSpA ETAC./ \
p
AMES TIP NCAR
GWC LINCOLN CASE
------------ O ------
ILLINOIS
/ AMESO UCSB \ STAN O
-O
AMES IMP X-PARC
RADCXT ^"•"CARN ^°LINC MIT MITRE
STANFORD OFNWC RAND TINKER
ETAC ÓUCSB OUCSD
UCLA
RAND TINKER
BBN HARVARD
(d)
NBS
!■•*•
UCLA
(e)
NOAA
ARPA O \ MITRE Q. \ RADC SAAC QA < BELVOIR Cí CMU Q
GWC
CASE
Fig. 1-27. (a) Dec.. 1969. (b) Iulie 1970. (c) Martie 1971. (d) Aprilie 1972. (e) Sept. 1972. Acest experiment a demonstrat totodată că protocoalele ARPANET existente nu erau potrivite pentru a rula pe mai multe reţele. Observaţia a condus la noi cercetări asupra protocoalelor, culminând cu invenţia modelului şi protocoalelor TCP/1P (Ceri' şi Kahn, 1974). TCP/IP a fost proiectat special pentru a trata comunicarea prin inter-reţele, un lucru care devenea din ce în ce mai important, pe măsură ce tot mai multe reţele erau legate la ARPANET. Pentru a încuraja adoptarea acestor noi protocoale, ARPA a semnat câteva contracte cu BBN şi cu University of California din Berkeley pentru a integra protocoalele în Berkeley UNIX. Cercetătorii de la Berkeley au dezvoltat o interfaţă de programare a reţelei (soclurile) şi au scris numeroase aplicaţii, utilitare şi programe de administrare care să simplifice interconectarea. Momentul era ideal. Multe universităţi tocmai achiziţionaseră un al doilea sau al treilea calculator VAX şi un LAN care să le conecteze, dar nu aveau nici un fel de programe de interconectare. Când a apărut 4.2BSD, cu TCP/IP, socluri şi multe utilitare de reţea, pachetul complet a fost adoptat imediat. Mai mult chiar, folosind TCP/IP, LAN-urile se puteau lega simplu la ARPANET şi multe LAN-uri au.făcut acest lucru. în anii ‘80 au fost conectate la ARPANET multe alte reţele, în special LAN-uri. Pe măsură ce creştea dimensiunea reţelei, găsirea gazdelor devenea tot mai costisitoare; de aceea, a fost creat DNS (Domain Name System, rom: Sistemul Numelor de Domenii), care organiza maşinile în domenii şi punea în corespondenţă numele gazdelor cu adrese IP. De atunci încoace, DNS a ajuns să
52
INTRODUCERE
CAP. 1
fie un sistem de baze de date distribuit, generalizat, folosit pentru a memora diverse informaţii referitoare la procedurile de atribuire a numelor. Vom studia detaliat acest sistem în cap. 7.
NSFNET La sfârşitul anilor 1970, NSF (U.S. National Science Foundation, rom: Fundaţia Naţională de Ştiinţă din SUA) a remarcat impactul imens pe care ARPANET-ul îl avea asupra cercetării universitare, reţeaua permiţând savanţilor din toată ţara să partajeze date şi să colaboreze la proiecte de cercetare. Dar, pentru a se conecta la ARPANET, o universitate trebuia să aibă un contract de cercetare cu DoD, iar multe universităţi nu aveau. Răspunsul NSF a fost proiectarea unui succesor al ARPANET care să fie deschis tuturor grupurilor de cercetare din universităţi. Pentru a avea ceva concret de la care să pornească, NSF a decis să construiască o reţea tip coloană vertebrală (backbone) pentru a conecta cele 6 centre de supercalculatoare pe care le deţinea în San Diego, Boulder, Champaign, Pittsburgh, Ithaca, Princeton. Fiecărui calculator i s-a dat un frate mai mic, care era de fapt un microcalculator LSI-11 denumit fuzzball. Aceste fuzzball-uri erau conectate cu linii închiriate de 56 Kbps şi formau o subreţea , care folosea aceeaşi tehnologie ca şi ARPANET. Tehnologia programelor era însă diferită: fuzzball-urile au fost proiectate pentru a conversa direct folosind TCP/IP, ceea ce a condus la crearea primei reţele pe arie larga bazată pe TCP/IP (TCP/IP WAN). NSF a finanţat, de asemenea, un număr de (aproximativ 20, până la urmă) reţele regionale care se concctau la coloana vertebrală, permiţând utilizatorilor din mii de universităţi, laboratoare de cercetare, biblioteci şi muzee să acceseze oricare dintre supercalculatoare şi să comunice între ei. Reţeaua completă, care includea coloana vertebrală şi reţelele regionale, a fost numită NSFNET. Aceasta a fost conectată la ARPANET printr-o legătură între un IMP şi un fuzzball din laboratorul de la Camegie-Mellon. Prima coloană vertebrală NSFNET este ilustrată în fig. l-2£.
NSFNET-ul a reprezentat un succes foarte rapid şi a fost suprasolicitat din clipa în care a început să funcţioneze. NSF a început imediat să planifice succesorul NSFNET-ului şi a semnat un contract cu consorţiul MERIT cu sediul în Michigan. Pentru realizarea coloanei vertebrale numărul 2, au fost închiriate de la MCI (care a fuzionat între timp cu WorldCom) canale cu fibre optice de 448 Kbps. Ca rutere s-au folosit IBM PCRT. Şi această reţea a devenit curând supraîncărcată, drept care, în 1990, a doua coloană vertebrală a fost adusă la viteza de 1.5 Mbps. Dar creşterea a continuat, iar NSF a realizat că guvernul nu poate finanţa interconectările la nesfârşit. în plus, o serie de organizaţii comerciale erau interesate să se conecteze, dar statutul NSF le interzicea să se lege la reţele finanţate de NSF. în consecinţă, NSF a încurajat MERIT, MCI şi IBM să formeze o corporaţie
SEC. 1.5
EXEMPLE DE REŢELE
53
nonprofit, ANS (Advanced Networks and Services, rom: reţele şi servicii ’î
A
avansate), ca un pas pe drumul spre comercializare. In 1990, ANS a preluat NSFNET şi a înlocuit legăturile de 1.5 Mbps cu legături de 45 Mbps, formând ANSNET. Această reţea a funcţionat timp de 5 ani şi apoi a fost cumpărată de America Online. Dar până atunci, diverse companii ofereau deja servicii IP comerciale şi era clar că guvernul trebuia să se retragă din afacerea cu reţele. Ca să uşureze tranziţia şi ca să fie sigur că orice reţea regională putea comunica cu orice altă reţea regională, NSF a semnat contracte cu patru operatori de reţele diferiţi în vederea stabilirii unui NAP (Network Access Point, rom: punct de acces la reţea). Aceşti operatori erau PacBcll (San Francisco), Amcritech (Chicago), MFS (Washington, D.C.), şi Sprint (New York City, unde - din raţiuni legate de NAP - Pennsauken, N.J. se consideră New York City). Fiecare operator de reţea care dorea să ofere servicii de infrastructură pentru reţelele regionale NSF trebuia să se lege la toate NAP-urile. De aceea, pentru a ajunge de la NAP-ul său la NAP-ul destinaţiei, un pachct trimis din orice reţea regională putea opta între mai multe companii care oferă servicii de transmisie pe coloana vertebrală. In consecinţă, pentru a fi alese de reţelele regionale, companiile de comunicaţii au fost forţate să intre în competiţie pe baza serviciilor şi preţurilor practicate - bineînţeles, aceasta era ideea. Ca rezultat, conceptul unei singure reţele de tip coloană vertebrală a fost înlocuit de o infrastructură competitivă condusă de criterii comerciale. Multora le place să critice Guvernul Federal pentru că nu este destul de inovator, dar în zona reţelelor, DoD şi NSF au fost cele care au creat infrastructura care a stat la bazele formării Intcmet-ului şi apoi a cedat-o industriei pentru operare şi exploatare. în timpul anilor 1990, multe alte ţări şi regiuni construiesc şi ele reţele naţionale, de multe ori modelate chiar după ARPANET şi NSFNET. Acestea includ EuropaNET şi EBONE în Europa, care au pornit cu linii de 2 Mbps şi apoi au avansat până la linii de 34 Mbps. în cele din urmă, şi infrastructura de reţea din Europa a fost cedată industriei spre operare şi exploatare.
Folosirea Internet-ului Numărul reţelelor , maşinilor şi utilizatorilor conectaţi la ARPANET a crescut rapid după ce TCP/IP a devenit, la 1 ian. 1983, unicul protocol oficial. Când au fost conectate NSFNET şi ARPANET, creşterea a devenit exponenţială. S-au alăturat multe reţele regionale şi s-au realizat legături cu reţele din Canada, Europa şi Pacific. Cândva, pe la mijlocul anilor 1980, lumea a început să vadă colecţia de reţele ca fiind un internet, iar apoi ca fiind Internet-ul; nu a existat însă nici un toast oficial cu politicieni desfăcând sticle de şampanie. Substanţa care ţine legat Internet-ul este modelul de referinţă TCP/IP şi stiva de protocoale TCP/IP. TCP/IP face posibile serviciile universale, putând fi comparată cu adoptarea lăţimii standard pentru căile ferate în secolul 19 sau cu adoptarea protocoalelor comune de semnalizare de către toate companiile telefonice. Ce înseamnă de fapt să fii pe Internet? Definiţia noastră este că o maşină este pe Internet dacă foloseşte stiva de protocoale TCP/IP, are o adresă IP şi are posibilitatea de a trimite pachete IP către toate celelalte maşini de pe Internet. Simpla posibilitate de a trimite şi primi poştă electronică nu este suficientă, deoarece poşta electronică este redirectată către multe reţele din afara Internet-ului. Oricum, subiectul este cumva umbrit de faptul că milioane de calculatoare personale pot să apeleze
69
INTRODUCERE
CAP. 1
Arhitectura Internet în această secţiune vom încerca să aruncăm o scurtă privire de ansamblu asupra Internet-ului de astăzi. Din cauza multor fuziuni între companiile de telefoane şi companiile ISP, apele au devenit tulburi, şi este de cele mai multe ori dificil de precizat care sunt atribuţiile fiecăruia, cine ce anume are de făcut. în consecinţă această descriere va fi simplificată în raport cu realitatea efectivă. Imaginea de ansamblu este prezentată în fig. 1-29. în continuare, vom analiza această figură bucată cu bucată.
Un bun punct de pornire este sistemul propriu al clientului. Să presupunem că acest client sună la ISP-uI său printr-o linie telefonică, aşa cum se vede în fig. 1-29. Modemul este o placă din PC-ul clientului care converteşte semnalele digitale pe care le produce calculatorul în semnale analogice care pot circula fără probleme prin sistemul telefonic. Aceste semnale sunt transferate la punctul de livrare (POP) al ISP-ului, unde sunt preluate din sistemul telefonic şi injectate în reţeaua regionala a ISP. De aici înainte, sistemul este în întregime digital şi foloseşte comutarea de pachete. Daca ISP-ul este acelaşi cu furnizorul local de telefonie, punctul de livrare va fi localizat, probabil, chiar în oficiul de comutare al serviciului telefonic, punctul în care se termină firul de telefon al utilizatorului. Chiar dacă ISP-ul nu este acelaşi cu furnizorul local de telefonie, punctul de livrare poate fi doar la distanţă de câteva oficii de comutare. Reţeaua regională a ISP este formată prin interconectarea ruterelor din diverse oraşe pe care le deserveşte compania. Dacă pachetul este destinat unei gazde deservite direct de către reţeaua ISP, pachetul va fi livrat direct gazdei. Altfel, el este livrat în continuare operatorului care furnizează companiei ISP servicii de comunicare prin coloana vertebrală (backbonc) a reţelei. un furnizor de servicii Internet folosind un modem, să primească o adresă IP temporară şi apoi să trimită pachete 1P spre alte gazde. Are sens să privim asemenea maşini ca fiind pe Internet numai atâta timp cât ele sunt conectate Ia rutenii furnizorului de servicii. Tradiţional (însemnând din 1970 până în jurul lui 1990), Intemet-ul şi predecesorii săi au avut patru aplicaţii principale, după cum urmează: 1.
Poşta electronica. Facilitatea de a compune, trimite şi primi poştă electronică a existat din primele
SEC 1.5
2.
3. 4.
EXEMPLE DE REŢELE
51
zile ale ARPANET-ului şi este extrem de populară. Mulţi oameni primesc zeci de mesaje pe zi şi consideră poşta electronică principalul lor mijloc de a interacţiona cu lumea exterioară, depăşind de departe telefonul şi poşta obişnuită. Programele de poştă electronică sunt astăzi disponibile practic pe orice tip de calculator. Ştiri. Grupurile de ştiri sunt forumuri specializate în care utilizatorii cu un anumit interes comun pot să facă schimb de mesaje. Există mii de grupuri de ştiri, pe subiecte tehnice sau non-tehnice incluzând calculatoarele, ştiinţa, divertismentul şi politica. Fiecare grup de ştiri are eticheta, stilul şi obiceiurile sale proprii şi nenorocirile se vor abate asupra celor carc Ic încalcă. Conectare la distanţă. Folosind programe ca telnet, rlogin sau ssh, utilizatorii aflaţi oriunde pe Internet pot să se conecteze la orice maşină pe care au un cont. Transfer de fişiere. Copierea fişierelor de pe o maşină din Internet pe alta este posibilă utilizând programul FTP. în acest fel sunt disponibile extrem dc multe articole, baze de date şi alte informaţii.
Până la începutul anilor 1990 Intemet-ul a fost foarte populat cu cercetători din domeniul academic, guvernamental şi industrial. O aplicaţie nouă, WWW (World Wide W'eb), a schimbat total situaţia şi a adus în reţea milioane de noi utilizatori care nu fac parte din mediul academic. Această aplicaţie, inventată de fizicianul Tim Bcrners Lee de la CERN, nu a modificat nici una din facilităţile existente, în schimb le-a făcut mai uşor de folosit. împreună cu programul dc navigare Mosaic, scris la Centrul Naţional pentru Aplicaţiile Supercalculatoarelor, WWW-ul a făcut posibil ca un sit să pună la dispoziţie un număr de pagini de informaţii conţinând text, poze, sunet şi chiar video, în fiecare pagină existând legături către alte pagini. Printr-un clic pe o legătură, utilizatorul este imediat transportat la pagina indicată de legătură. De exemplu, multe firme au o pagină principală cu intrări care trimit la alte pagini pentru informaţii asupra produselor, liste de preţuri, reduceri, suport tehnic, comunicare cu angajaţii, informaţii despre acţionari şi multe altele. într-un timp foarte scurt au apărut numeroase alte tipuri de pagini: hărţi, tabele cu cotaţii la bursă, cataloage de bibliotecă, programe radio înregistrate şi chiar o pagină care oferă legături spre textele complete ale multor cărţi cărora le-au expirat drepturile de autor (Mark Twain, Charles Dickens, etc.). De asemenea, mulţi oameni au pagini personale (home pages). Mare parte din creşterea Intcrnetului în timpul anilor ]990 a fost alimentată de companii denumite ISP (Intemet Service Providers, rom: Furnizori de Servicii Internet). Acestea sunt companii care oferă utilizatorilor individuali posibilitatea de a apela, de acasă, una dintre maşinile furnizorului şi de a se conecta la Internet, obţinând în consecinţă acces la poşta electronica, WWW şi alte servicii similare. La sfârşitul anilor 1990, aceste companii au înregistrat zeci de milioane de noi utilizatori în fiecare an, modificând astfel complet caracterul reţelei, care s-a transformat dintr-o reţea academică şi militară într-o utilitate publică, precum sistemul de telefonie. Numărul actual al utilizatorilor Internet nu este cunoscut, dar este cu siguranţă de ordinul sutelor de milioane la nivel mondial şi probabil că va ajunge la un miliard în curând.
EXEMPLE DE REŢELE
SEC. 1.5
53
în partea superioară a acestei ierarhii sunt operatorii principali de la nivelul de coloană vertebrală a reţelei, companii precum AT&T sau Sprint. Aceştia operează coloane vertebrale mari, internaţionale, cu mii de rutere conectate prin fibra optică cu bandă largă de transfer. Corporaţiile mari şi firmele care oferă servicii de găzduire (hosting), utilizează ferme de servere (maşini care pot servi mii de pagini Web pe secundă) sunt conectate adeseori direct la nivelul coloanei vertebrale. Operatorii încurajează această conectare directă prin închirierea de spaţii în ceea ce se numeşte „hotelul companiei de transport” (carrier hotel), şi reprezintă de cele mai multe ori sertare (racks) pentru echipamente aflate în aceeaşi cameră cu ruterul, pentru a permite conexiuni scurte şi rapide între fermele de servere si coloana vertebrală a reţelei. Dacă un pachet trimis în coloana vertebrală este destinat unui ISP sau unei companii deservite de aceeaşi coloană, el este transmis celui mai apropiat ruter. Oricum există multe astfel de coloane vertebrale în întreaga lume, astfel încât un pachet poate să treacă într-o coloană concurentă. Pentru a permite pachetelor să treacă dintr-o coloană în alta, toate aceste coloane principale sunt conectate în NAP-urile (NetWork Access Point, rom: Punct de acces în reţea) discutate mai devreme. în principiu, un NAP este o cameră plină cu rutere, cel puţin unul pentru fiecare coloană vertebrală conectată. O reţea locală camerei conectează toate accstc rutere, astfel încât pachetele să poată fi retransmise din orice coloană în orice altă coloană. în afară de interconectarea în NAP-uri, coloanele vertebrale de dimensiuni mari au numeroase conexiuni directe între ruterele lor, tehnică denumită conectare privată (private peering). Unul dintre multiplele paradoxuri ale Internet-ului este acela că ISP-urile care sunt la nivel public în competiţie pentru clienţi, cooperează de cele mai multe ori pentru a realiza astfel de conectări private (private peering) (Metz, 2001). Astfel se încheie acest scurt tur de orizont asupra Internet-ului. Vom avea multe de spus despre componentele individuale şi proiectarea lor, despre algoritmi şi despre protocoale în capitolele următoare. Merită de asemenea menţionat în trecere că anumite companii şi-au interconectat toate reţelele interne existente, folosind de multe ori aceleaşi tehnologii ca şi Intcrnct-ul. Aceste intranet- uri sunt accesibile de ccle mai multe ori numai din interiorul companiei, dar altfel funcţionează la fel ca Internet-ul.
1.5.5
Reţele orientate pe conexiune
i încă de la începuturile domeniului reţelelor, există un război între cei care susţin subreţelele iară conectare (de exemplu datagramele) şi cei care susţin subreţelele orientate pe conexiune. Susţinătorii subreţelelor fără conexiune provin din comunitatea ARPANET/Internet. Amintiţi-vă că dorinţa iniţială a DoD în finanţarea şi construirea ARPANET a fost să aibă o reţea care să continue să funcţioneze chiar şi după ce mai multe lovituri nucleare îndreptate direct împotriva ei au distrus numeroase rutere si linii de transmisie. De aceea, toleranţa la defecte se afla pe primele poziţii ale listei de priorităţi; taxarea clienţilor nu exista pc acea listă. Această abordare a condus la o proiectare fără conexiune în care fiecare pachet era rutat independent de orice alt pachet. Ca o consecinţă, dacă anumite rutere se defectează în timpul unei sesiuni, nu apare nici o problemă atâta timp cât sistemul se poate reconfigura singur, dinamic, astfel încât pachetelc următoare să găsească o rută către destinaţie, chiar dacă ea este diferită de cea utilizată până la momentul respectiv. Tabăra celor care susţin reţelele orientate conexiune provine din lumea comunicaţiilor pe linii telefonice. In sistemul telefonic, un utilizator trebuie să formeze numărul pe care doreşte să îl apeleze şi să aştepte formarea unei conexiuni înainte de a vorbi sau de a transmite date. Aceasta fază de conectare stabileşte o rută prin sistemul telefonic, rută care va fi menţinută până când apelul este încheiat. Toate cuvintele sau pachetele de date urmează aceeaşi rută. Dacă o linie sau un comutator de pe respectiva cale se defectează, apelul este încheiat forţat. Aceasta proprietate era exact cea care nu convenea deloc Departamentului de Apărare. De ce sunt companiile organizate astfel? Din două motive: 1. 2.
Calitatea serviciilor Facturarea
Prin setarea unei conexiuni în avans, subreţeaua poate rezerva resurse precum zone tampon de memorie sau
54
INTRODUCERE
CAP. 1
capacitatea de procesare a procesorului din ruter. Dacă se face o încercare de a iniţia un apel şi nu se găsesc suficiente resurse disponibile, apelul este rcjcctat şi apelantul primeşte un fel de semnal de „ocupat”. în acest fel, de îndată ce conexiunea a fost stabilită, conexiunea va obţine servicii bune din punct de vedere calitativ. într-o reţea fară conexiune, dacă prea multe pachete ajung la acelaşi ruter în acelaşi moment, ruterul va fi sufocat şi, probabil, va pierde din pachete. Eventual, utilizatorul va observa şi le va retrimite, dar calitatea serviciilor va fi proastă şi deloc potrivită pentru comunicaţii audio sau video, cu excepţia cazurilor în care reţeaua este doar foarte puţin încărcată. Nu mai este nevoie să precizăm că pentru companii calitatea de transmitere a semnalului audio este un parametru extrem de important, şi de aceea preferă reţelele orientate pe conexiune. Cel dc-al doilea motiv pentru care companiile de telefonie preferă serviciile orientate pe conexiune este acela că sunt obişnuite să taxeze utilizatorul în funcţie de timpul de conexiune. Atunci când se face un apel la distanţă (chiar şi local, dar în afara Americii de Nord) taxarea se face la minut. La apariţia reţelelor, aceste companii au fost automat atrase în acest sistem, în care taxarea la minut era uşor de făcut. Dacă trebuie stabilită o conexiune înainte de transmisia propriu-zisă a datelor, ceasul de taxare este pornit. Dacă nu există conexiune, nu poţi fi taxat pentru ea. Culmea, menţinerea sistemului de taxare este foarte scumpă. Dacă o companie de telefonie ar trebui să adopte o schemă de plată cu rate lunare fixe, fără a ţine cont de numărul de apeluri şi fără a ţine evidenţa facturărilor pe convorbire, cu siguranţă s-ar economisi sume mari de bani, în ciuda creşterii însemnate a numărului de apeluri care va rezulta. Factorii politici, de reglementare şi de altă natură sunt însă împotrivă. Destul de interesant este că o astfel de politică este funcţională în alte sectoare. De exemplu, cablul TV este facturat cu o rată lunară fixă, indiferent de cât de mult te uiţi la televizor. Ar fi putut să fie proiectat şi având la bază un principiu plată-pentru-utilizare (pay- per-view), dar nu s-a făcut aşa, în parte şi din cauza cheltuielilor impuse de o asemenea strategic de facturare (dată fiind calitatea slabă a majorităţii televiziunilor, trebuie luat în considerare chiar şi factorul Jenă”). Un alt exemplu sunt parcurile tematice care încasează o taxă de intrare zilnică, spre deosebire de caravane, care taxează plimbarea. Acestea fiind spuse, nu va fi o surpriză că toate reţelele proiectate de industria de telefonie au avut subreţelc orientate pe conexiune. Ceea ce este probabil surprinzător este că şi Internet-ul deviază în aceasta direcţie, pentru a oferi o calitate mai bună pentru serviciile audio şi video. Vom reveni la acest subiect în cap. 5. Dar, să examinăm în continuare câteva reţele orientate pe conexiune.
X.25 şi Frame Relay (releu de cadre) Primul exemplu de reţea orientată conexiune este X.25, care a fost prima reţea publică de date. A fost dată în folosinţă în anii 1970, într-un moment în care serviciile telefonice erau un monopol peste tot, şi compania de telefonie din fiecare ţară se aştepta să existe şi o reţea de date unică în ţară - a lor. Pentru a folosi X.25, un calculator a stabilit mai întâi o conexiune cu calculatorul aflat la distanţă, adică a făcut un apel telefonic. Pentru această conexiune s-a alocat un număr de conexiune folosit apoi în transferul pachetelor de date (deoarece pot fi deschise mai multe conexiuni în acelaşi timp). Pachetele de date erau foarte simple, fiind formate dintr-un antet de 3 ... 128 de octeţi de date. în antet se regăsea un număr de conexiune de 12 biţi, un număr de secvenţă al pachetului, un număr de confirmare pozitivă (ACK) şi câţiva biţi oarecare. Reţelele X.25 au funcţionat aproape un deceniu cu un oarecare succes. în anii 1980, reţelele X.25 au fost înlocuite pe scară largă cu un nou tip de reţea, denumit Frame Rclay (Releu de Cadre). în esenţă, este vorba de o reţea orientată pe conexiune, fără control al erorilor şi fără control al fluxului de date. Deoarece era orientată pe conexiune, pachetele erau furnizate în ordine (dacă erau furnizate). Aceste caracteristici - distribuire de pachete în ordine, lipsa de control al erorilor, lipsa de control al fluxului au făcut ca Frame Relay să se asemene cu o reţea locală de dimensiuni mari. Aplicaţia cea mai importantă a fost interconectarea reţelelor locale aflate în diverse birouri ale companiilor. Deşi Frame Relay a avut parte de un succes modest, este folosit şi astăzi în anumite companii.
SEC. li
EXEMPLE DE REfELE
55
ATM (Asynchronous Transfer Mode) încă o reţea orientată pe conexiune - una mult mai importantă de această dată - este ATM (ATM Asynchronous Transfer Mode, rom: Mod de Transfer Asincron). Acest nume, oarecum ciudat, este justificat prin aceea că, în timp ce în reţelele telefonice majoritatea transmisiilor sunt sincrone (strâns legate de un semnal de ceas), în reţelele ATM transmisiile nu sunt sincrone. ATM a fost proiectat la începutul anilor 1990 şi lansat la mijlocul acestei perioade incredibile (Ginsburg, 1996; Goralski, 1995; Ibe, 1997; Kim et al., 1994; at Stallings, 2000). ATM urma să rezolve toate problemele de reţele şi telecomunicaţii ale lumii, unificând transmisiile de voce, date, televiziune prin cablu, telex, telegraf, porumbei mesageri, cutii de conserve conectate prin sfori, semnale cu fum, şi orice altceva într-un singur sistem integrat care să poată face totul pentru toată lumea. Nu s-a întâmplat. în mare parte, problemele erau similare cu acelea care au fost descrise mai devreme în ceea ce priveşte OSI, adică: ratarea momentului, tehnologii slabe, implementări ineficiente, politici proaste. După ce tocmai învinseseră companiile telefonice în runda I, mulţi membri din comunitatea Internet au văzut ATM-ul pe poziţia Internct-ului în lupta cu companiile mixte telefonie-ISP: Următorul. Dar nu a fost aşa, şi de această dată chiar şi cei mai fanatici susţinători ai datagramelor au trebuit să recunoască faptul că Internet-ul lăsa mult de dorit în privinţa calităţii serviciilor. Pentru a scurta povestea, ATM a înregistrat un succes mult mai mare decât OSI şi este acum utilizat pe scară largă în cadrul sistemelor de telefonie, adeseori vehiculând chiar pachete IP. Deoarece ATM este utilizat la ora actuală de majoritatea companiilor numai pentru operaţiile de rutare şi transport intern, în cele mai multe cazuri utilizatorii nu sunt conştienţi de existenţa lui, chiar dacă el este operaţional.
Circuite virtuale ATM Deoarece reţelele ATM sunt orientate pe conexiune, transmisia datelor necesită mai întâi transmisia unui pachet pentru iniţializarea conexiunii. Pe măsură ce pachetul de iniţializare circulă prin subreţea, toate ruterele de pe drumul pe care îl parcurge îşi creează câte o înregistrare în tabelele de dirijare în care înregistrează existenţa conexiunii şi rezervă resursele necesare pentru ea. Conexiunile sunt de cele mai multe ori denumite circuite virtuale, în analogie cu circuitele fizice utilizate în sistemele de telefonie. Majoritatea reţelelor ATM suportă şi circuite virtuale permanente, care sunt conexiuni permanente între două gazde aflate la distanţă. Acestea sunt similare cu liniile închiriate din lumea telefoniei. Fiecare conexiune, fie ea temporară sau permanentă, are un identificator de conexiune unic. Un circuit virtual este prezentat în fig. 1-30.
56 Gazdă transmiţătoare
Proces transmiţător
INTRODUCERE Rute r i
Circuit virtual
CAP. 1 Gazdă receptoare
Proces receptor
Fig. 1-30. Un circuit virtual îndată ce o conexiune a fost stabilită, oricare dintre părţi poate să înceapă să transmită date. Ideea de bază în cazul reţelelor ATM este să se transmită toate informaţiile în pachete mici, de dimensiune fixă, denumite celule (cells). Celulele au 53 de octeţi, din care 5 octeţi reprezintă antetul, iar restul de 48 reprezintă încărcătura efectivă, după cum se poate vedea în figural-31. O parte din antet reprezintă identificatorul de conexiune, astfel încât atât transmiţătorul cât şi receptorul, precum şi toate ruterele intermediare pot şti corespondenţa dintre celule şi conexiuni (care celule aparţin cărci conexiuni). Această informaţie permite fiecărui ruter să dirijeze fiecare celulă pe care o primeşte. Dirijarea celulelor este implementată direct în partea hardware a ruterelor şi este o operaţie rapidă. De fapt, argumentul principal în alegerea de celule de dimensiune fixă este acela că este mai uşor de construit partea hardware pentru dirijare dacă ea are de a face cu pachete scurte şi egale ca dimensiune. Pachetele IP de lungime variabilă trebuie dirijate de programe (software), proces care este mai lent. Un alt avantaj al reţelelor ATM este acela că partea hardware poate fi configurată să multiplice o celulă pe care o primeşte la intrare pe mai multe linii de ieşire, o proprietate obligatorie în cazul în care trebuie abordată transmisia unui program de televiziune difuzat către mai mulţi receptori. La urma urmei, celulele mici nu blochează nici o linie pentru prea mult timp, ceea ce face garantarea calităţii serviciilor mai uşoară. Toate celulele urmează aceeaşi cale către destinaţie. Livrarea celulelor nu este garantată, dar ordinea lor da. Dacă doua celule 1 şi 2 sunt transmise în această ordine (1,2), dacă amândouă ajung, ele vor ajunge în aceeaşi ordine, niciodată nu va ajunge 2 înaintea lui 1. Dar oricare dintre ele, sau chiar amândouă se pot pierde pe drum. Este de datoria protocoalelor nivelului superior să repare eroarea cauzată de celulele pierdute. De reţinut că, deşi această garanţie nu este perfectă, este mai bună decât cea pe care o oferă Internet-ul. Acolo nu numai că pachetele se pot pierde, dar şi ordinea de ajungere la destinaţie poate fi oricare (nu are legătură cu ordinea de transmisie). Octeţi Datele utilizatorului
5
48
Antet
Fig. 1-31. O celulă ATM Reţelele ATM sunt organizate similar cu reţelele WAN tradiţionale, cu linii şi comutatoare (rutere). Cele mai des întâlnite viteze de lucru pentru reţelele ATM sunt 155 Mbps şi 622 Mbps, deşi sunt posibile şi viteze mai mari. Viteza de 155 Mbps a fost aleasă pentru că este foarte apropiată de viteza minimă obligatorie pentru transmisia de televiziune cu rezoluţie înaltă. Decizia de a alege viteza exactă de 155.52 Mbps a fost făcută pentru compatibilitatea cu sistemul de transmisie
SEC. 1.5
EXEMPLE DE REŢELE
57
SONET de la AT&T, care va fi studiat în cap. 2. Viteza de 622 Mbps a fost aleasă astfel încât să fie echivalentă cu transmisia simultană a 4 canale de 155 Mbps.
Modelul de referinţă ATM ATM are propriul său model de referinţă, diferit de modelul OSI şi diferit de asemenea de modelul TCP/TP. Acest model este ilustrat în fig. 1-32. El constă din trei niveluri - nivelul fizic, nivelul ATM şi nivelul de adaptare ATM - plus orice mai vrea utilizatorul să pună deasupra lor. Nivelul fizic se ocupă de mediul fizic: voltaj, planificare la nivel de biţi şi diverse alte aspecte. ATM nu prescrie un set particular de reguli, dar spune în schimb că celulele ATM pot fi trimise direct prin cablu sau fibre optice sau pot fi, la fel de bine, împachetate în interiorul datelor din alte sisteme de transmisie. Cu alte cuvinte, ATM-ul a fost proiectat pentru a fi independent de mediul de transmisie.
CS:
Convergence sublayer (subnivelul de convergenţă) SAR: Segmentation and reassembly sublayer (subnivelul de segmentare şi reasamblare) Transmission convergence sublayer (subnivelul de convergenţă a transmisiei) PMD: Physical medium dependent sublayer (subnivelul dependent de mediul fizic)
TC:
Fig. 1-32. Modelul de referinţă B-ISDN ATM. Nivelul ATM se ocupă de celule şi de transportul celulelor. Nivelul defineşte structura unei celule şi spune ce reprezintă câmpurile celulelor. Tot el se ocupă şi de stabilirea şi eliberarea circuitelor virtuale. Controlul congestiei se realizează tot aici. Deoarece cele mai multe aplicaţii nu vor să lucreze direct cu celule (deşi unele vor), deasupra nivelului ATM a fost definit un nivel care permite utilizatorilor să trimită pachete mai mari decât o celulă. Interfaţa ATM segmentează aceste pachete, transmite celulele individual şi le reasamblcază la celălalt capăt. Acest nivel este AAL (ATM Adaption Layer, rom: nivelul de adaptare ATM). Spre deosebire de cele două modele de referinţă anterioare, care erau bidimensionale, modelul ATM este definit ca fiind tridimensional, după cum se arată în fig. 1-32. Planul utilizator se ocupă, printre altele, cu transportul datelor, controlul fluxului, corectarea erorilor. Prin contrast, sarcina planului de control este să trateze conexiunile. Funcţiile dc administrare ale nivelurilor şi planurilor se referă la gestionarea resurselor şi coordonarea între niveluri. Fiecare din nivelurile fizic şi AAL sunt împărţite în două subniveluri: un subnivel care face munca efectivă, la bază, şi un subnivel de convergenţă, deasupra, carc pune la dispoziţia nivelului situat peste el interfaţa adecvată. Funcţiile nivelurilor şi subnivelurilor sunt prezentate în fig. 1-33. Subnivelul PMD (Physical Medium Dependent, rom: dependent dc mediul fizic) asigură interfaţa cu cablul propriu-zis. Acest subnivel transferă biţii şi se ocupă de planificarea transmisiei la nivel de biţi. In cazul unor companii telefonice şi a unor cabluri diferite, subnivelul va fi şi el diferit.
58
INTRODUCERE NivelNivel Subnivel OSI ATM 3/4 AAL
2/3
ATM
2
Fizic
1
ATM CS
Asigurarea interfeţei standard (convergenţei)
SAR
Segmentarea şi reasamblarea
CAP. 1
Controlul fluxului Generarea/extragerea antetelor din celule Administrarea circuitelor/căilor virtuale Multiplexarea/demultiplexarea celulelor TC
Decuplarea ratei celulelor Generarea şi verificarea sumelor de control din antete Generarea celulelor împachetarea/despachetarea celulelor din plic Generarea cadrelor
PMD
Temporizarea biţilor Accesul fizic la reţea
Fig. 1-33. Nivelurile şi subnivelurile ATM şi funcţiile acestora. Celălalt subnivel al nivelului fizic este subnivelul TC (Transmission Convcrgence, rom: convergenţa transmisiei). Când sunt transmise celulele, nivelul TC le expediază sub forma unui şir de biţi spre nivelul PMD. Acest lucru este uşor de făcut. La celălalt capăt, subnivelul TC primeşte de la subnivelul PMD un flux de biţi. Sarcina sa este să convertească acest flux de biţi intr-un flux de celule pentru nivelul ATM. Subnivelul TC se ocupă de tot ce este necesar pentru a putea spune unde încep şi unde se termină celulele din fluxul de biţi. În modelul ATM această funcţionalitate este înglobată în nivelul fizic. în modelul OSI şi în majoritatea celorlalte reţele, încadrarea, adică transformarea unui flux oarecare de biţi într-o secvenţă de cadre sau de celule, este sarcina nivelului legătură de date. De aceea, în această carte vom discuta funcţia respectivă împreună cu nivelul legătură de date, nu cu nivelul fizic. Aşa cum am menţionat mai devreme, nivelul ATM gestionează celulele, inclusiv generarea şi transportul lor. Mare parte din aspectele interesante ale ATM-ului apar aici. Nivelul ATM este un amestec între nivelurile legătură de date şi reţea de la OSI, dar nu este împărţit în subniveluri. Nivelul AAL este împărţit într-un subnivel SAR (Segmentation And Reassembly, rom: segmentare şi reasamblare) şi un subnivel CS (Convergence Sublayer, rom: subnivel de convergenţă). Subnivelul inferior descompune pachetele în celule - la capătul la care are loc transmisia - şi le recompune la destinaţie. Subnivelul superior face posibile sistemele ATM care oferă diverse tipuri de servicii pentru diverse aplicaţii (de exemplu, transferul de fişiere şi sistemul video Ia cerere au cerinţe diferite privitoare la gestionarea erorilor, planificare etc.). Deoarece se preconizează o evoluţie descendentă pentru reţelele ATM, ele nu vor fi discutate în continuare în această carte. Oricum, fiind instalate pe scară destul de largă, vor fi în continuare folosite pentru câţiva ani buni. Pentru mai multe informaţii despre ATM, vedeţi (Dobrowski şi Grise, 2001; Gadeki şi Heckart, 1997).
1.5.3
Ethernet
Internet-ul şi ATM au fost proiectate pentru WAN. Oricum, multe companii, universităţi şi alte organizaţii au multe calculatoare care trebuie conectate. Această necesitate a dus la o dezvoltare rapidă a reţelelor locale. în această secţiune vom prezenta câteva lucruri despre cea mai populară dintre reţelele locale, şi anume
SEC. 1.5
EXEMPLE DE REŢELE
59
Ethernet. Povestea începe în primitivul Hawaii la începutul anilor 1970. în acest caz, „primitiv” poate fi interpretat ca „fără sistem de telefonie funcţionar'. Chiar dacă faptul că nu te deranjează telefonul cât e ziua de lungă poate să facă viaţa mai plăcută în vacanţă, această situaţie nu era foarte plăcută pentru cercetătorul Norman Abramson şi colegii săi de la Universitatea din Hawaii, care încercau să conecteze utilizatorii din mai multe insule aflate la distanţă la calculatorul principal din Honolulu. Şi cum varianta de a-şi trage singuri cablurile pe fundul Oceanului Pacific nu părea viabilă, a trebuit să se caute o altă soluţie. Cea pe care au găsit-o a fost transmisia radio pe unde scurte. Fiecare terminal utilizator era echipat cu un mic sistem radio care avea două frecvenţe: Trimite (upstream - către calculatorul central) şi Primeşte (downstream - de la calculatorul central). Când utilizatorul dorea să contacteze calculatorul, trebuia doar să transmită un pachet care conţinea datele pe canalul Trimite. Dacă nu mai transmitea nimeni în acel moment, pachetul ajungea la calculatorul central şi i se dădea un răspuns pe canalul Primeşte. Dacă avea loc o dispută pentru canalul de transmisie, terminalul observa că nu primeşte confirmarea pozitivă pe canalul de recepţie şi trimitea din nou. Deoarece era un singur transmiţător pe canalul de primire (calculatorul centrai), aici erau imposibile coliziunile. Acest sistem, care a fost denumit ALOHANET, funcţiona destul de bine în condiţii de trafic redus, dar eşua de îndată ce traficul pe canalul de Transmisie era aglomerat. Cam în acelaşi timp, un student pe nume Bob Metcalfe şi-a obţinut diploma de absolvire la M.I.T. şi s-a mutat pentru a obţine doctoratul la Harvard. în timpul studiilor sale, a ajuns sa cunoască lucrarea lui Abramson. A devenit atât de interesat în acest domeniu încât după ce a absolvit la Harvard, a decis să petreacă vara în Hawaii lucrând împreună cu Abramson, înainte de a începe lucrul la Xerox PARC (Palo Alto Research Center, rom: Centrul de Cercetare de la Palo Alto) . Când a ajuns la PARC, a descoperit că cercetătorii de acolo proiectaseră şi construiseră maşinile care mai târziu aveau să fie denumite calculatoare personale. Dar maşinile erau izolate. Folosind cunoştinţele pe care le acumulase în timpul lucrului petrecut cu Abramson, a proiectat şi implementat - împreună cu colegul său David Boggs - prima reţea locală de calculatoare (Metcalfe şi Boggs, 1976). Au numit sistemul Ethernet după luminiferous ether (eter), prin care se credca odinioară că se propagă undele electromagnetice (în secolul 19, când fizicianul englez James Clerk Maxwell a descoperit că radiaţia electromagnetică poate fi descrisă printr-o ecuaţie de undă, oamenii de ştiinţă au presupus că spaţiul trebuie să fie umplut cu un mediu eteric prin care aceste radiaţii se propagau. Numai după faimosul experiment Michelson-Morley din 1887 fizicienii au descoperit ca radiaţia electromagnetică se poate propaga în vid). Mediul de transmisie în acest caz era un cablu coaxial gros, având o lungime de până la 2.5 km (cu repetoare la fiecare 500m). Până la 256 de maşini pot fi ataşate sistemului prin transivere conectate direct în cablu. Un cablu cu mai multe maşini ataşate în paralel CvSte numit cablu multidrop (multidrop cable). Sistemul funcţiona la 2.94 Mbps. O schiţă a arhitecturii sale este prezentată în fig. 134. Ethernct-ul avea o îmbunătăţire majoră faţă de AOHA.NET: înainte să transmită, un calculator asculta mediul pentru a vedea dacă nu cumva este altcineva care transmite. Dacă exista deja o transmisie în curs, calculatorul se oprea şi aştepta încheierea transmisiei curente. Astfel, se evita interferenţa cu transmisiunile existente, ceea ce creştea semnificativ eficienţa sistemului. ALOHANET nu putea să funcţioneze în această manieră pentru că era imposibil pentru un terminal de pe o insulă să detecteze transmisia unui alt terminal de pe o altă insulă. Pe un cablu unic, această problemă era rezolvată.
60
INTRODUCERE
CAP. 1
Fig. 1-34. Arhitectura Ethenet-ului original în ciuda faptului că fiecare calculator asculta mediul înainte să înceapă transmisia, exista în continuare o problemă: ce se întâmplă dacă două calculatoare aşteaptă amândouă încheierea transmisiei curente şi apoi pornesc propriile transmisii simultan? Soluţia este următoarea: fiecare calculator va asculta mediul şi în timpul propriei transmisii şi dacă detectează interferenţe, bruiază linia pentru a anunţa toţi transmiţătorii. Apoi se retrage şi aşteaptă un interval de timp generat aleator înainte să încerce din nou. Dacă apare o a doua coliziune, timpul de aşteptare se dublează, şi tot aşa, pentru a dispersa (în timp) transmisiile concurente oferind fiecăreia dintre ele şansa de a fi „servită” prima. Ethernet-ul Xerox a avut un succes atât de mare încât DEC, Intel şi Xerox au colaborat pentru a schiţa un standard pentru o reţea Ethernet de 10 Mbps, denumit standardul DIX. Cu două modificări minore, acesta a devenit standardul IEEE 802.3 în anul 1983. Din păcate pentru Xerox, compania avea deja reputaţia de a face invenţii (precum calculatorul personal) şi apoi să eşueze în valorificarea lor comercială, poveste spusă în Fumbling ihe Future (Smith şi Alexander, 1988). Şi pentru că Xerox nu a anunţat vreo intenţie de a face şi altceva cu Ethemet-ul - în afara standardizării lui - Metcalfe şi-a format propria companie, 3Com, care urma să producă şi să vândă adaptoare Ethernet pentru PC. A vândut peste 100 de milioane. Ethemet-ul a continuat să se dezvolte şi este încă în curs de dezvoltare. Noi versiuni, la 100 Mbps şi 1000 Mbps, ba chiar şi mai rapide au apărut deja. De asemenea, cablarea s-a îmbunătăţit, fiind adăugate şi alte facilităţi, precum comutarea (switching). Vom discuta în detaliu despre Ethernet în cap. 4. In trecere, merită menţionat că Ethernet (IEEE 802.3) nu este singurul standard LAN. Comitetul a standardizat de asemenea Token Bus (Jeton pe Magistrală - 802.4) şi Token Ring (Jeton pe Inel - 802.5). Necesitatea de a avea trei standarde mai mult sau mai puţin incompatibile ţine mai mult de politică decât de tehnologie. La momentul standardizării, firma General Motors promova o reţea în care topologia era aceeaşi ca la Ethernet (un cablu liniar), dar calculatoarele obţineau dreptul la transmisie pe rând, prin transmiterea unui scurt pachet denumit jeton (token). Un calculator putea să emită numai dacă era în posesia jetonului, fiind evitate astfel coliziunile. General Motors a
EXEMPLE DE REŢELE
SEC. 1.5
61
anunţat că această schemă era esenţială pentru fabricaţia de maşini şi nu era pregătită să se mişte de pe această poziţie. Dacă acest anunţ nu era susţinut, 802.4 nu ar fi existat. Similar, IBM avea propriul favorit: reţeaua proprietară cu jeton în inel. De această dată, jetonul era transmis prin inel şi orice calculator care avea jetonul putea să transmită înainte de a repune jetonul în circulaţie în inel. Spre deosebire de 802.4, această schemă, standardizată ca 802.5, este încă folosită în birouri şi filiale ale IBM, dar practic nicăieri în afara IBM. Oricum, cercetarea avansează către o versiune gigabit, dar pare foarte puţin probabil ca această tehnologie să ajungă la nivelul Ethernet. Pe scurt, chiar dacă a fost cândva un război între Ethernet, Token Ring şi Token Bus, Ethernet a câştigat, în special pentru că a fost primul şi pentru că oponenţii săi nu era destul de buni.
1.5.4
Reţele făra fin 802.11
Imediat după apariţia calculatoarelor portabile, mulţi utilizatori visau să intre cu calculatorul portabil personal într-un birou şi, miraculos, acesta să fie conectat la Internet. In consecinţă, mai multe grupuri de studiu am început să caute soluţii pentru a atinge acest scop. Cea mai practică abordare era echiparea biroului şi a calculatorului cu transmiţătoare şi emiţătoare radio cu rază mică de acţiune pentru a le permite să comunice. Această variantă a dus rapid la comercializarea soluţiilor de reţele locale tară fir de către diverse companii. Problema era că dintre aceste variante nu se găseau două compatibile. Această proliferare a standardelor însemna că un calculator care era echipat cu un radio marca X nu putea să se conecteze în reţeaua unui birou dacă acesta era echipat cu o staţie de la firma Y. în cele din urmă, comunitatea industrială a decis că ar trebui impus un standard pentru LAN fară fir. Astfel, comitetul IEEE care standardizase şi LAN-urile cu cablu a primit ca sarcină să schiţeze un standard pentru reţele LAN fără fir. Standardul astfel creat s-a numit 802.11. O denumire mai bine cunoscută în argou este WiFi. Este un standard important şi merită tot respectul, astfel că ne vcm referi la el cu numele oficial, 802.11. Standardul propus trebuia să lucreze în două moduri: 1. 2.
în prezenţa unei staţii de bază în absenţa unei staţii de bază
Staţie de bază
Către reţeaua
(a) Fig. 1-35. (a) Reţele fără fir cu staţie de bază. (b) Conectare ad-hoc.
(b)
62
INTRODUCERE
CAP. 1
în primul caz, toate comunicaţiile urmau să aibă loc prin intermediul staţiei de bază, denumită punct de acces (access point) 802.11. în cel de-al doilea caz, calculatoarele urmau să comunice direct unul cu celălalt. Acest mod este uneori denumit conectare ad-hoc (ad-hoc networking). Un exemplu tipic este cel al utilizatorilor care se află într-o cameră care nu este echipată cu o staţie de bază, calculatoarele lor comunicând direct. Aceste două moduri sunt ilustrate în fig. 1-35. Prima decizie a fost cea mai simplă: cum să se numească. Toate celelalte standarde LAN aveau numere cum sunt 802.1,802.2,802.3, până la 802.10. Aşa că noul standard de IAN fără fir s-a numit 802.11. Restul a fost mai dificil de realizat. în particular, câteva dintre obiectivele care trebuiau atinse erau : găsirea unei benzi de frecvenţe care să fie disponibilă, de preferinţă la nivel mondial; tratarea faptului că semnalele radio au o rază de acţiune limitată; asigurarea menţinerii confidenţialităţii utilizatorului; tratarea problemei duratei limitate de lucru a bateriei; considerarea eventualelor efecte pe care sistemul le putea avea asupra oamenilor (provoacă undele radio cancer?); înţelegerea implicaţiilor portabilităţii calculatoarelor; şi, în final, construirea unui sistem cu lărgime de bandă suficientă pentru a fi viabil din punct de vedere economic. La momentul în care s-a început procesul de standardizare (la mijlocul anilor 1990), Ethernet-ul domina deja domeniul reţelelor locale, aşa încât comitetul a decis să facă noul standard 802.11 compatibil Ethernet începând de deasupra nivelului legătură de date. Mai exact, ar trebui să se poate transmite un pachet IP într-un LAN fără fir în aceeaşi manieră în care un pachet IP este transmis prin Ethernet. Desigur, la nivelurile Fizic şi Legătură de date apar anumite diferenţe inerente faţă de Ethernet şi ele trebuie considerate de către standard. Mai întâi, un calculator din Ethernet va asculta eterul înainte de a transmite. Numai daca acesta este liber calculatorul va începe transmisia. În cazul reţelelor LAN fără fir, această idee nu funcţionează prea bine. Pentru a vedea de ce, analizaţi fig. 1-36. Să presupunem că A transmite către B, dar raza de acţiune a lui A este prea mică pentru a îl acoperi şi pe C. Atunci când C vrea să transmită, el poate asculta mediul înainte să înceapă, dar faptul că nu aude nimic nu înseamnă că transmisia lui va reuşi. Standardul 80?. 11 trebuia să rezolve şi această problemă.
Fig.1-36. Raza de acţiune a unui singur radio poate să nu acopere întregul sistem. O a doua problemă care trebuia rezolvată era aceea că semnalul radio poate fi reflectat de anumite obiecte solide şi deci poate ii recepţionat de mai multe ori (pe diverse căi). Această interferenţă duce la ceea ce se numeşte disipare pe mai multe căi (multipath fading).
SEC 1.5 EXEMPLE DE REŢELE 63 Cea de-a treia problemă era că o mare parte din aplicaţii nu erau conştiente de mobilitatea calculatoarelor. De exemplu, multe dintre editoarele de texte aveau o listă de imprimante dintre care una putea fi aleasă pentru tipărirea documentului. Atunci când calculatorul rulează în afara mediului său obişnuit, într-un mediu nou, lista de imprimante implicite nu mai este validă. Cea de-a patra problemă se referea la mutarea calculatorului portabil din raza de acţiune a unei staţii de bază în raza altei staţii de bază. într-un fel sau altul, trebuie găsită o soluţie de predare/primire între cele două staţii de bază. Deşi această problemă apare şi la nivelul telefoanelor mobile, ea nu apare la Ethernet şi nu avea o soluţie la momentul respectiv. Mai exact, reţeaua constă din mai multe celule, fiecare cu propria staţie de bază, conectate prin Ethernet, după cum se poate vedea în fig. 1-37. Din exterior, sistemul trebuie să arate ca o singură reţea Ethernet. Conexiunea dintre sistemele 802.11 şi lumea exterioară se numeşte portal (portal).
Fig.1-37. O reţea 802.11 cu mai multe celule După o oarecare muncă, comitetul a obţinut o variantă de standard în 1997, variantă care adresa aceste probleme şi altele asemănătoare. Reţelele locale fără fir pe care standardul le propunea puteau funcţiona la 1 Mbps sau 2 Mbps. Aproape imediat, utilizatorii au început să se plângă de viteza prea scăzută şi s-a pornit o nouă campanie pentru obţinerea unor standarde mai rapide. în cadrul comitetului a avut loc o ruptură, ceea ce a dus la apariţia a două standarde în 1999. Standardul 802.1 la foloseşte o bandă de frecvenţă mai largă şi poate ajunge la viteze mai mari de 54 Mbps. Standardul 802.1 lb foloseşte aceeaşi banda ca şi 802.11, dar foloseşte o tehnică de modulare diferită şi poate ajunge la 11 Mbps. Unii văd în aceasta un amănunt important la nivel psihologic, pentru că 11 Mbps este o viteză mai mare decât a Ethemet-ului original, cu cablu. Este foarte probabil ca standardul original 802.11 de 1 Mbps să moară în curând, dar nu se ştie care dintre noile standarde va ieşi învingător. Pentru a face lucrurile încă mai complicate decât erau, comitetul 802 a venit cu o nouă variantă, 802.1 lg, care foloseşte tehnica de modulare folosită şi de 802.11a, dar banda de frecvenţă a lui 802.11b. Vom reveni în detaliu la 802.11 în cap. 4. Faptul ca 802.11 urmează să ducă la o revoluţie în lumea calculatoarelor şi a accesului la Internet este mai presus de orice îndoială. Aeroporturile, gările, hotelurile, magazinele mari şi universităţile îl implementează foarte curând. Chiar si cafenelele aflate într-o perioadă de creştere a afacerilor instalează reţele 802.11 pentru ca grupurile de tineri rebeli să poată naviga pe Web în timp ce îşi savurează cafelele cu lapte. Este foarte probabil ca 802.11 să aibă asupra Internet-ului acelaşi efect pe care 1- au avut portabilele în lumea calculatoarelor: să-l facă mobil.
1.6 STANDARDIZAREA REŢELELOR
în prezent există numeroşi producători şi furnizori, fiecare cu propriile idei despre cum ar trebui realizate reţelele. în lipsa coordonării, ar fi un haos complet şi utilizatorii nu ar putea face nimic. Singura soluţie este să se convină asupra unor standarde de reţea. Standardele nu numai că permit diverselor calculatoare să comunice între ele, ci sporesc totodată piaţa pentru produsele care aderă la un anumit standard, cu următoarele consecinţe: producţie de masă, profituri
64
INTRODUCERE
CAP. 1
financiare, implementări VLSI şi alte beneficii care duc la scăderea preţurilor şi la acceptarea şi mai largă a respectivelor produse. în secţiunile următoare vom arunca o privire asupra importantei, dar puţin cunoscutei, lumi a standardizării internaţionale. Standardele fac parte din două categorii: de facto şi de jure. Standardele de facto (expresia latină pentru „de fapt”) sunt acelea care pur şi simplu au luat fiinţă, fără să existe vreun plan oficial. Deoarece zeci de producători au decis să copieze aproape identic maşinile IBM, PC-ul IBM şi succesorii *
săi reprezintă standarde de facto pentru calculatoarele birourilor mici şi pentru cele casnice. In secţiile de informatică ale facultăţilor, UNIX este standardul de facto pentru sisteme de operare. Standardele de jure (expresia latină pentru „de drept”) sunt, prin contrast, standarde legale, adoptate de un anumit organism de standardizare autorizat. Autorităţile de standardizare internaţionale sunt, în general, împărţite în două clase: organizaţii stabilite prin tratate între guvernele naţionale şi organizaţii voluntare neguvemamentale. în domeniul standardelor pentru reţele de calculatoare există câteva organizaţii din fiecare categorie. în continuare vom discuta despre aceste organizaţii.
1.6.1
Who’s Who în lumea telecomunicaţiilor
Statutul legal al companiilor telefonice de pe glob variază coasiderabil de la ţară la ţară. La una din extreme se situează Statele Unite, care au 1500 de firme de telefonie private. înainte să fie divizată, în 1984, AT&T, cea mai mare corporaţie din lume la vremea aceea, domina scena complet. AT&T furniza servicii telefonice pentru aproximativ 80 la sută din telefoanele Americii, răspândite pe jumătate din întinderea sa, în timp ce toate celelalte firme asigurau servicii pentru restul clienţilor (rurali, în majoritatea lor). De la divizarea sa AT&T continuă să furnizeze servicii de lungă distanţă, dar acum o face în concurenţă cu alte firme. Cele şapte Companii Regionale Bell în care a fost împărţit AT&T-ul, precum şi alte numeroase firme independente, oferă servicii de telefonie locală şi celulară. Datorită fuziunilor frecvente şi a altor modificări de acest tip, această industrie este într-o continuă mişcare. Firmele americane furnizoare de servicii de comunicaţii pentru public sunt numite companii telefonice publice. Ofertele şi preţurile lor sunt descrise printr-un document numit tarif. Acesta trebuie să fie aprobat de Comisia Federală de Comunicaţii, care se ocupă de traficul dintre statele SUA şi de traficul internaţional, precum şi de către comisiile publice de stat pentru traficul în interiorul său. La cealaltă extremă se află ţările în care guvernul are un monopol complet asupra tuturor mijloacelor de comunicaţie: poşta, telegraful, telefonul şi, de multe ori, chiar radioul şi televiziunea. Cea mai mare parte a lumii se încadrează în această categorie. în unele cazuri, autoritatea de telecomunicaţii este o companie naţionalizată, în altele, este o simplă filială a guvernului, cunoscută de obicei sub numele de PTT (Post, Telegraf & Telephone administraron). Tendinţa actuală în lumea întreagă este către liberalizare şi competiţie şi împotriva monopolului guvernamental. Majoritatea ţărilor europene şi-au privatizat - mai mult sau mai puţin - sistemele PTT, dar peste tot acest proces este lent. Din cauza tuturor acestor diverşi furnizori de servicii este nevoie de o compatibilitate la scară mondială. Compatibilitatea asigură faptul că oamenii (şi calculatoarele) dintr-o ţară pot să-şi apeleze partenerii din altă ţară. La drept vorbind, această necesitate există de mult timp. în 1865, reprezentanţi ai multor guverne din Europa s-au întâlnit pentru a forma predecesorul actualului ITU (International Télécommunication Union, rom: Uniunea Internaţională de Telecomunicaţii). Sarcina Uniunii era standardizarea telecomunicaţiilor internaţionale, care la vremea aceea însemnau telegrafia. Chiar de atunci, era clar cădacă jumătatedin naţională, ITU a preluat de asemenea şi sarcina standardizării telefoniei (tclephony - pronunţat şi te-LEF-ony). în 1947 ITU a devenit o agenţie a Naţiunilor Unite. ITU are trei sectoare principale: 1. 2.
Sectorul de Radiocomunicaţii (ITU-R). Sectorul deStandardizare a Telecomunicaţiilor (ITU-T).
ţări foloseau codul
M
STANDARDIZAREA REŢELELOR
SEC 1.6
3.
Sectorul de
65
dezvoltare (ITU-D).
ITU-R se ocupă de alocarea frecv enţelor internaţionale de radio către grupurile concurente interesate. Ne vom referi mai întâi la ITU-T, care se ocupă de sistemele de telefonie şi de comunicare de date. Din 1956 până în 1993, ITU-T a fast cunoscut ca CCITT, un acronim pentru numele său francez: Comité Consultatif International Télégraphique et Téléfonique. La 1 martie 1993, CCITT a fost reorganizat în scopul de a deveni mai puţin birocratic şi a fost redenumit pentru a reflecta noul său rol. Atât ITU-T cât şi CCITT au dat recomandări în domeniul telefoniei şi comunicaţiilor de date. Deşi, începând cu 1993, recomandările poartă eticheta ITU-T, recomandările CCITT, de genul CCITT X.25, mai sunt încă frecvent întâlnite. ITU-T are patru clase de membri: 1. 2. 3. 4.
Guverne naţionale Membri sectoriali Membri asociaţi Agenţii de reglementare
ITU-T are aproximativ 200 de membri guvernamentali, incluzând aproape fiecare membru al Naţiunilor Unite. Pentru că SUA nu are un sistem PTT, altcineva trebuia să o reprezinte în cadrul ITU-T. Această sarcină a revenit Departamentului de Stat, probabil pe principiul că ITU-T are de-a face cu ţări străine, tocmai specialitatea acestui departament. Sunt aproximativ 500 de membri sectoriali, incluzând aici companiile de telefonie (AT&T, Vodafone, WorldCom), producătorii de echipamente de telecomunicaţii (Cisco, Nokia, Nortel), producătorii de echipamente de calcul (Compaq, Sun, Toshiba), producătorii de cipuri (Intel, Motorola, TI), companii media (AOL Time, Warner, CBS, Sony) şi alte companii direct interesate (Boeing, Samsung, Xerox). Diverse organizaţii ştiinţifice non-profit, precum şi consorţii industriale sunt de asemenea membri sectoriali (IFIP, IATA). Membrii asociaţi sunt organizaţii mai mici care sunt interesate într-un anumit grup de studiu. Agenţiile de reglementare sunt reprezentate de oamenii care supraveghează lumea afacerilor în telecomunicaţii, cum este de exemplu US Federal Communications Comission (Comisia Federală pentru Comunicaţii). Sarcina pe care o are ITU-T este de a face recomandări tehnice asupra interfeţelor din telefonie, telegrafie şi comunicaţii de date. Acestea devin deseori standarde recunoscute internaţional; de exemplu, V.24 (cunoscut în Statele Unite şi ca ELA RS-232), specifică amplasarea şi semnificaţia pinilor din conectorul folosit de majoritatea terminalelor asincrone şi de modemurile externe. Nu trebuie uitat că recomandările date de ITU-T sunt numai sugestii tehnice, pe care guvernele le pot adopta sau ignora, după cum doresc (pentru că guvernele sunt asemenea băieţilor de 13 ani - nu reacţionează prea bine dacă li se dau ordine). în practică, o ţară care doreşte să adopte un standard de telefonie diferit de cel utilizat în restul lumii este liberă să o facă, dar o face cu preţul izolării de toate celelalte ţari. Lucrul acesta poate să meargă în cazul Coreei de Nord, dar în altă parte ar fi o adevărată problemă. Fantezia de a numi standardele ITU-T „recomandări” a fast şi este necesară pentru a calma forţele naţionaliste din multe ţări. Adevărata muncă de la ITU-T se desfăşoară în grupuri de studiu, care uneori cuprind chiar şi 400 de persoane. Momentan sunt 14 grupuri de studiu, care acoperă subiecte de la facturarea serviciilor telefonice până la serviciile multimedia. Pentru ca până la urmă munca să aibă un rezultat, Grupurile de Studiu se împart în Echipe de Lucru, care se împart la rândul lor în Echipe de Experţi, care, la rândul lor, se împart în grupuri ad-hoc. Birocraţie a fost, birocraţie rămâne. în pofida tuturor acestor lucruri, ITU-T reuşeşte să ducă la bun sfârşit ceea ce are de făcut. De Ia fondarea sa, a realizat mai bine de 3000 de recomandări, care ocupă peste 60.000 de pagini. Multe dintre acestea sunt folosite pe scară largă în practică. De exemplu, standardul V.90 56-Kbps pentru modemuri este o recomandare a ITU. Pe măsură ce telecomunicaţiile desăvârşesc tranziţia - începută în anii 1980 - de Ia un caracter strict
66
INTRODUCERE
CAP. 1
naţional la un caracter complet global, standardele vor deveni din ce în ce mai importante şi tot mai multe organizaţii vor dori să devină implicate în producerea acestora. Pentru mai multe informaţii privind ITU, a se vedea (Irmer, 1994).
1.6.2
Who’s Who în lumea standardelor internaţionale
Standardele internaţionale sunt produse de ISO (International Standards Organization', rom: Organizaţia Internaţională de Standardizare), o organizaţie voluntară, neguvernamentală fondată în 1946. Membrii săi sunt organizaţiile naţionale de standardizare din cele 89 de ţări membre. Aceşti membri cuprind ANSI (S.U.A.), BSl (Marea Britanie), AFNOR (Franţa), DIN (Germania) şi încă 85 de alte organizaţii. ISO produce standarde referitoare la un număr vast de subiecte, începând cu piuliţe şi şuruburi şi terminând cu vopsirea stâlpilor de telefon [pentru a nu menţiona aici boabele de cacao (ISO 2451), plasele de pescuit (ISO 1530), lenjeria de damă (ISO 4416) şi alte câteva subiecte la care nu v-aţi putea gândi ca subiecte de standarde). în total au fost create peste 5000 de standarde, inclusiv standardele OS1. ISO are aproape 200 de Comitete Tehnice (Technical Committees - TC), numerotate în ordinea creării lor, fiecare comitet ocupându-se de un subiect specific. TC1 se ocupă de piuliţe şi şuruburi (standardizarea înclinării filetelor). TC97 se ocupă de calculatoare şi prelucrarea informaţiei. Fiecare TC are subcomitete (SC-uri) împărţite în grupe de lucru (Work Groups - WG). Munca propriu-zisă se desfăşoară în principal în WG-uri, prin intermediul a peste 100.000 de voluntari din întreaga lume. Mulţi dintre aceşti „voluntari” sunt puşi să lucreze la probleme ale ISO de către patronii lor, ale căror produse sunt standardizate. Alţii sunt oficiali guvernamentali dornici să vadă că modalitatea de a face lucrurile în ţara lor devine standardul internaţional. în multe WG-uri sunt activi, de asemenea, experţi academici. în ceea ce priveşte standardele din telecomunicaţii, ISO şi ITU-T cooperează frecvent, (ISO este un membm al ITU-T) în ideea de a evita ironia a două standarde internaţionale oficiale şi mutual incompatibile. 'Adevăratul nume pentru ISO este International Organization for Standardization (n.a.)
STANDARDIZAREA REŢELELOR
SEC 1.6
Număr
67
Subiect
802.1
Principiile generale si arhitectura LAN-urilor
802.2 l
Controlul legâturii logice
802.3 *
Ethernet
802.4 i
TokenBus (Jeton pe Magistrală - utilizat câtva timp în fabrici)
802.5
TokenRing (Jeton în Inel - contribuţia IBM la lumea LAN)
802.6 i
Coadă duală, magistrală duală (reţea metropolitană timpurie)
802.7 i
Grupul de consiliere tehnică pe probleme de tehnologii de bandă largă
802.8 t
Grupul de consiliere tehnică pe probleme de tehnologii de fibră optică
802.9 l
LAN-uri izocrone pentru aplicaţii de timp real
802.10 i
LAN-uri virtuale şi securitate
802.11 *
LAN-uri fără fir
802.12 1
Prioritatea cererilor (AnyLAN de la HP)
802.13
Număr cu ghinion. Nimeni nu l-a vrut
802.14 i 802.15 *
Modemuri de cablu (decedat: un consorţiu industrial a abordat înainte domeniul) Reţele personale (Bluetooth)
802.16 *
Comunicaţii fără fir în bandă largă
802.17
Inel activ de pachete
Fig. 1-38. Grupurile de lucru ale 802. Cele importante sunt marcate cu *. Cele marcate cu i hibernează. Cele marcate cu f au renunţai şi s-au desfiinţat. Reprezentantul S.U.A. în ISO este ANSI (American National Standards Institute, rom: Institutul Naţional American de Standarde), care, în pofida numelui său, este o organizaţie privată negu- vemamentală şi nonprofit. Membrii săi sunt producători, companii telefonice publice şi alte părţi interesate. Standardele ANSI sunt frecvent adoptate de ISO ca standarde internaţionale. Procedura utilizată de ISO pentru adoptarea standardelor este concepută astfel încât să se obţină un consens cât mai larg posibil. Procesul începe când una din organizaţiile naţionale de standardizare simte nevoia unui standard internaţional într-un anumit domeniu. în acel moment, se formează un grup de lucru care vine cu un CD (Committee Drafl, rom: proiect de comitet). CD-ul circulă apoi pe la toate organizaţiile membre, care au la dispoziţie 6 luni pentru a-1 supune criticilor. Dacă se primeşte aprobarea din partea unei majorităţi substanţiale, atunci se produce un document revizuit, numit DIS (Draft International Standard, rom: proiect de standard internaţional), care va circula în scopul de a fi comentat şi votat. Pe baza rezultatelor din această rundă, se pregăteşte, se aprobă şi se publică textul final al respectivului IS (International Standard, rom: standard internaţional). în domeniile foarte controversate, un CD sau un DIS pot să treacă prin câteva versiuni înainte de a obţine suficiente voturi şi întregul proces poate dura ani de zile. N1ST (National Institute of Standards and Technology, rom: Institutul Naţional de Standarde şi Tehnologie) este o agenţie a Departamentului pentru Comerţ al Statelor Unite. NIST a fost cunoscut anterior sub numele de Biroul Naţional de Standarde. El produce standarde care sunt obligatorii pentru achiziţiile făcute
68
INTRODUCERE
CAP. 1
de guvernul U.S.A., mai puţin pentru cele care privesc Departamentul de Apărare, acesta având propriile sale standarde. Un alt actor important din lumea standardelor este IEEE (Institute of Electrical and Electronics Engineers, rom: Institutul Inginerilor Electricieni şi Electronişti), cea mai marc organizaţie profesională din lume. Suplimentar faţă de producerea a zeci de jurnale şi organizarea a numeroase conferinţe în fiecare an, IEEE are un grup de standardizare care dezvoltă standarde în domeniul ingineriei electrice şi tehnicii de calcul. Comitetul IEEE 802 a standardizat mai multe tipuri de reţele locale. Vom studia o parte dintre rezultatele sale ceva mai târziu în această carte. Munca efectivă este făcută de o sumă de grupuri de lucru, care sunt prezentate în fig. 1-38. Rata de succes a diverselor grupuri ale 802 a fost scăzută, aşadar chiar dacă ai un număr de forma 802.x, aceasta nu este o garanţie a succesului. Dar impactul poveştilor de succes (în special 802.3 şi 802.11) a fost enorm.
1.6.3
YVho’s VVho în lumea standardelor Internet
Internet-ul mondial are propriile sale mecanisme de standardizare, foarte diferite de cele ale ITU-T şi ISO. Diferenţa poate fi rezumată grosier spunând că lumea care vine la întâlnirile pentru standardizare iile ITU şi ISO poartă costum. Lumea care vine la întâlnirile pentru standardizarea Intemet-ului poartă blugi (iar dacă se întâlnesc la San Diego poartă pantaloni scurţi şi tricouri). La întâlnirile organizate de ITU-T şi ISO e plin de oficiali ai unor corporaţii şi de funcţionari guvernamentali pentru care standardizarea reprezintă meseria lor. Ei privesc standardizarea ca un lucru bun şi îşi dedică vieţile acestui scop. Lumea implicată în Internet, pe de altă parte, preferă, ca principiu de bază, anarhia. Oricum, dacă sute de milioane de oameni îşi văd fiecare numai de treaba lor, este puţin probabil să apară vreo modalitate de comunicare. De aceea, standardele, deşi regretabile, apar ocazional ca fiind necesare. Când a fost creat ARPANET-ul, DoD-ul a înfiinţat un comitet neoficial care să îl supravegheze. In 1983 comitetul a fost redenumit IAB (Internet Activities Board, rom: Consiliul Activităţilor Internet) şi a primit o misiune ceva mai amplă: să fie atent ca cercetătorii implicaţi în ARPANET şi Internet să se mişte, mai mult sau mai puţin, în aceeaşi direcţie - o activitate care ar putea fi asemănată cu „păstorilul” pisicilor. Semnificaţia acronimului „IAB” a fost schimbată mai târziu în Internet Architecture Board (Coasiliul Arhitecturii Internet). Fiecare din cei aproximativ 10 membri ai IAB-ului conducea un departament care se ocupa de o anumită problemă importantă. IAB-ul se întâlnea de câteva ori pe an pentru a discuta rezultatele şi a trimite informări către DoD şi NSF, care asigurau la acea vreme majoritatea fondurilor. Când era nevoie de un nou standard (de exemplu, un nou algoritm de dirijare), membrii IAB îl luau în discuţie şi apoi anunţau schimbarea, astfel ca absolvenţii facultăţilor - care erau sufletul muncii de programare - să îl poată implementa. Comunicările erau puse la dispoziţie printr-o serie de rapoarte tehnice, numite RFC-uri (Request For Comments, rom: cereri pentru comentarii). RFC-urile sunt memorate on-line şi pot fi citite de oricine este interesat de ele la adresa mw.ietf.org/rfc. RFC-urile sunt numerotate în ordinea cronologică a creării lor. Până acum există peste 3000. Ne vom referi la multe dintre ele în cursul acestei cărţi. 1*• In 1989 lntemet-ul crcscuse atât de mult, încât acest stil informai nu mai putea funcţiona. Multe firme vindeau la acea vreme produse TCP/IP şi nu erau dispuse să le modifice doar pcnlru că zece cercetători se gândiseră Ia o idee mai bună. în vara anului 1989, IAB a fost reorganizat. Cercetătorii au fost transferaţi la IRTF (Internet Research Task Force, rom: Departamentul de Cercetare Internet), care a fost pus în subordinea I AB-ului, alături de 1ETF (Internet Engineering Task Force, rom: Departamentul de Inginerie Internet). IAB-ul a fost repopulat cu persoane care reprezentau un palier de organizaţii mai larg decât stricta comunitate a cercetătorilor. La început a fost un grup care se auto- perpetua: membrii erau activi pe o perioadă de 2 ani, iar membrii noi erau selectaţi de către membrii mai vechi. Mai târziu, a fost înfiinţată Societatea Internet (Internet Society), care reunea oameni interesaţi de Internet. Societatea Internet este, prin urmare, comparabilă într-un sens cu ACM sau IEEE. Societatea este administrată de un comitet ales, iar comitetul desemnează membrii LAB.
UNITĂŢI DE MĂSURĂ
SEC 1.7
69
Ideea acestei divizări a fost ca IRTF să se concentreze asupra cercetării pe termen lung, iar IETF să se ocupe de probleme inginereşti pe termen scurt. IETF a fost împărţit în grupuri de lucru, fiecare cu o problemă specifică de rezolvat. Iniţial, preşedinţii grupurilor de lucru s-au reunit într- un comitet de organizare, în scopul de a coordona munca inginerească ce le revenea. Preocupările grupurilor de lucru includeau aplicaţii noi, informaţii de la utilizatori, integrare OSI, dirijare şi adresare, securitate, administrare de reţea, standarde. în final s-au format atât de multe grupuri de lucru (mai mult de 70), încât ele au fost grupate pe domenii, iar comitetul de organizare s-a constituit din preşedinţii domeniilor. în plus, a fost adoptat un proces de standardizare mai formal, preluat după modelul ISO. Pentru a deveni un standard propus (Proposed Standard), ideea fundamentală trebuie să fie complet explicată într-un RFC şi să prezinte destul interes din partea comunităţii pentru a merita să fie luată în considerare. Pentru a avansa la stadiul de proiect de standard (Draft Standard), este necesară o implementare de lucru care să fi fost testată în amănunţime de către două situri independente, timp de cel puţin 4 luni. Dacă IAB-ul este convins că ideea e bună şi că programul funcţionează, atunci poate să declare RFC-ul respectiv ca fiind un Standard Internet. Unele Standarde Internet au devenit standarde ale DoD-ului (MIL-STD), fiind, prin urmare, obligatorii pentru furnizorii DoD-ului. David Clark a făcut odată o remarcă devenită celebră privitoare la standardizarea Intemetului, care ar consta din „consens aproximativ şi programe care merg.”
1.7 UNITĂTI DE MĂSURĂ Pentru a ne feri de orice confuzie, merită să precizăm de la bun început că în această carte, ca şi în lumea ştiinţei calculatoarelor în general, vor fi folosite unităţile metrice în locul unităţilor tradiţionale englezeşti (sistemul furlong-stone-fortnight4). Principalele prefixe metrice sunt precizate în fîg. 1-39. Ale sunt în general abreviate folosindu-se prima literă, cu unităţile mai mari ca 1 scrise cu majuscule (KB, MB etc.). O excepţie (din motive istorice) este Kbps (kilobits per second) pentru kilobiţi pe secundă. Astfel, o linie de comunicaţie de 1 Mbps transmite IO4 biţi/secundă, în timp ce pentru 100 ps (psec), ceasul bate la fiecare IO' 10 secunde. Deoarece denumirile mili şi micro încep amândouă cu litera „m”, trebuia făcută o alegere. în mod normal, „m” este folosit pentru mili, iar ,¿1” (litera greacă miu) este folosit pentru micro. Exp. 10"3
Explicit 0.001
Prefix
Exp.
Explicit
Prefix
milli
103
1,000 1,000,000
Mega
1,000,000,000
Giga |
Kilo
1(T6
0.000001
micro
106
KT9
0.000000001
nano
109
1,000.000,000.000
Tera Peta
io-12
0.000000000001
pico
1012
IO"15
0.000000000000001
femto
1015
1,000,000,000,000,000 1,000,000,000,000,000,000
KT18
0.0000000000000000001
atto
1018
to-21
0.0000000000000000000001
zepto
1021
1,000,000,000,000,000,000,000
yocto
1024
1,000,000,000,000,000,000,000,000
10-24
0.0000000000000000000000001
Exa Zetta Yotta |
Fig. 1-39. Principalele prefixe metrice Este de asemenea important să subliniem că pentru măsurarea dimensiunilor memoriei, discurilor, fişierelor şi a bazelor de date se obişnuieşte folosirea acestor unităţi, deşi ele au valori uşor modificate. Astfel, kilo reprezintă 2IU (1024) şi nu de IO3 (1000), pentru că volumului memoriilor sunt întotdeauna puteri ale lui fortnight = 2 săptămâni
70
INTRODUCERE
CAP. 1
doi. Deci, o memorie de 1 KB are 1024 de octeţi, nu 1000. Similar, o memorie de 1 MB are 220 (1.048.576) octeţi, o memorie de 1 GB are 230 octeţi (1.073.741.824), iar o bază de date de 1 TB are 240 (1.099.511.627.776) octeţi. Oricum, o linie de comunicaţie de 1 Kbps transmite 1000 de biţi pc secundă şi o reţea locală de 10 Mbps rulează la 10.000.000 biţi/secundă, deoarece aceste unităţi nu sunt puteri ale lui 2. Din păcate, mulţi oameni tind să amestece aceste două sisteme, în special pentru capacitatea discurilor. Pentru a evita orice ambiguitate, în această carte vom folosi simbolurile KB, MB, GB pentru 210,220, 230, şi simbolurile Kbps, Mbps şi Gbps pentru 103,106 şi IO9 biţi pe secundă, respectiv.
1.8 RESTUL CĂRŢII ÎN REZUMAT Girtea de faţă discută atât principiile cât şi practica interconectării calculatoarelor. Majoritatea capitolelor încep printr-o discuţie a principiilor relevante, urmată de un număr de exemple care ilustrează principiile respective. Aceste exemple sunt în general preluate din Internet şi din reţele fără fir deoarece acestea sunt importante şi diferite. Acolo unde este relevant, vor fi date şi alte exemple. Cartea este structurată în concordanţă cu modelul hibrid din fig. 1-24. începând cu cap. 2, pornim la drum de la bază în sus, de-a lungul ierarhiei de protocoale. Cap. 2 prezintă cadrul pentru studierea domeniului comunicaţiilor de date. Gipitolul acoperă diferite subiecte: transmisii analogice şi digitale, multiplexare, comutare, sistemul telefonic trecut, actual şi viitor. Acoperă sisteme de transmisie cu cablu, fără cablu şi prin satelit. Accst material se referă la nivelul fizic, dar noi ne vom ocupa numai de aspectele arhitecturale, nu de cele privitoare la echipamente. Sunt discutate, de asemenea, câteva exemple de niveluri fizice, cum ar fi reţeaua cu comutare a telefoniei publice, telefoanele mobile şi televiziunea prin cablu. Cap. 3 discută modelul legătură de date şi protocoalele sale prin intermediul unui număr de exemple din ce în ce mai complexe. Se realizează, de asemenea, analiza acestor protocoale. După aceea, sunt discutate unele protocoale importante din lumea reală, printre care HDU2 (folosit în reţelele de viteză scăzută şi medie) şi PPP (folosit în Internet).
SEC 1.9
REZUMAT
71
Cap. 4 se referă la subnivelul de acces la mediu, care face parte din nivelul legătură de date. Problema fundamentală cu care se ocupă este cum să determine cine poate folosi reţeaua - atunci când reţeaua coastă dintr-un singur canal partajat, aşa cum se întâmplă în majoritatea LAN-urilor şi în unele reţele de sateliţi. Sunt date multe exemple din domeniul LAN-urilor cu cablu sau fără (în special Ethernet), din cel al MAN-urilor fără fir, din cadrul reţelelor bazate pe Bluetooth şi al reţelelor de sateliţi. Tot aici sunt discutate şi punţile, care se folosesc pentru a interconecta LAN-urile. Cap. 5 se ocupă de nivelul reţea, în special de dirijare, cu prezentarea mai multor algoritmi de dirijare, atât statici cât şi dinamici. Chiar dacă se folosesc algoritmi de rutare foarte buni, dacă traficul cerut este mai mare decât cel pe care îl poate dirija reţeaua, se ajunge la congestia reţelei, aşa că se va discuta despre congestie şi despre cum poate fi ea evitată. O variantă încă şi mai bună decât evitarea congestiei este oferirea unei garanţii de calitate a serviciilor. Şi acest subiect va fi abordat aici. Interconectarea reţelelor eterogene în inter-reţele conduce la numeroase probleme care sunt discutate aici. Se acordă mare atenţie nivelurilor din Internet. Cap. 6 se ocupă de nivelul transport. Se discută pe larg protocoalele orientate pe conexiuni, deoarece ele sunt necesare în numeroase aplicaţii. Se discută în detaliu un exemplu de serviciu de transport şi implementarea sa. Este prezentat chiar şi codul sursă pentru acest exemplu simplu, pentru a se putea demonstra modul în care poate fi el implementat. Ambele protocoale din Internet - UDP şi TCP - sunt discutate în detaliu şi este abordată problema performanţelor lor. în plus, se discută despre problemele impuse de reţelele fără fir. Cap. 7 se ocupă de nivelul aplicaţie, de protocoalele şi aplicaţiile sale. Primul subiect este DNS, care este cartea de telefoane a Intemet-ului. Apoi urmează poşta electronica, inclusiv o discuţie despre protocoalele sale. Apoi ne vom muta atenţia asupra Web-ului, cu discuţii detaliate despre conţinut static, conţinut dinamic, ce se întâmplă la client, ce se întâmplă pe server, protocoale, performanţă, Web fără fir. în cele din urmă vom examina informaţia multimedia care este transmisă prin reţea, inclusiv fluxuri audio, radio prin Internet şi video la cerere. Cap. 8 se referă la securitatea reţelelor. Acest subiect include aspecte legate de fiecare dintre niveluri, aşa că este mai uşor de tratat către final, când toate nivelurile au fost deja explicate pe larg. Capitolul începe cu o introducere în criptografie. în continuare, este prezentat modul în care criptografia poate fi utilizată pentru a securiza comunicaţiilor, poşta electronică şi Web-ul. Cartea se încheie cu o discuţie despre anumite domenii în care securitatea interferează cu intimitatea, libertatea de exprimare, cenzura, precum şi alte probleme sociale care decurg de aici. Cap. 9 conţine o listă adnotată de lecturi sugerate, aranjate în ordinea capitolelor. Lista este gândită ca un ajutor pentru cititorii care doresc să continue studiul reţelelor. Capitolul are de asemenea o bibliografie alfabetică a tuturor referinţelor citate în această carte. Situl Web al autorului de la Prentice Hali: http://www.prenhall.com/tanenbaum are o pagină cu legături la mai multe sinteze, liste de întrebări frecvente (FAQs), companii, consorţii industriale, organizaţii profesionale, organizaţii de standardizare, tehnologii, lucrări ştiinţifice şi altele.
1.9 REZUMAT Reţelele de calculatoare pot fi utilizate pentru numeroase servicii, atât pentru firme cât şi pentru persoane particulare. Pentru companii, reţelele de calculatoare personale care folosesc servere partajate asigură accesul la informaţiile corporaţiei. De obicci, acestea urmează modelul client-server, cu staţiile de lucru clienţi pe mesele de lucru ale angajaţilor accesând serverele puternice din camera maşinilor. Pentru persoane particulare, reţelele oferă acces la o mulţime de informaţii şi de resurse de divertisment. De cele mai multe ori persoanele particulare accesează Internet-ul folosind un modem pentru a apela un ISP, deşi din ce în ce mai mulţi
72
INTRODUCERE
CAP. 1
utilizatori au chiar şi acasă o conexiune Internet fixă, permanentă. Un domeniu care se dezvoltă rapid este acela al reţelelor fără fir, care conduc la dezvoltarea de noi aplicaţii, cum ar fi mobilitatea accesului la poşta electronică şi comerţul mobil. În mare, reţelele pot fi împărţite în LAN-uri, MAN-uri, WAN-uri şi inter-reţele, fiecare cu caracteristicile, tehnologiile, vitezele şi rolurile sale proprii. LAN-urile acoperă suprafaţa unei clădiri şi lucrează la viteze mari, MAN-urile acoperă suprafaţa unui oraş - de exemplu reţeaua de televiziune prin cablu, care este actualmente folosită de mulţi dintre utilizatori şi pentru conectarea la Internet. WAN-urile se întind pe suprafaţa unei ţări sau a unui continent. LAN-urile şi MAN-urile sunt necomutate (adică nu au rutere); WAN-urile sunt comutate. Reţelele fără fir devin din ce în ce mai populare, în special la nivelul reţelelor locale. Reţelele pot fi interconectate pentru a forma inter-reţele. Programele de reţea coastau din protocoale, adică reguli prin care procesele pot să comunice. Protocoalele pot fi fie fără conexiuni, fie orientate pe conexiuni. Majoritatea reţelelor asigură suport pentru ierarhiile de protocoale, fiecare nivel asigurând servicii pentru nivelurile de deasupra sa şi izolându-le de detaliile protocoalelor folosite în nivelurile de mai jos. Stivele de protocoale se bazează în mod tipic fie pe modelul OSI, fie pe modelul TCP/IP. Ambele modele posedă niveluri reţea, transport şi aplicaţie, dar ele diferă în ceea ce priveşte celelalte niveluri. Problemele care apar în procesul de proiectare a acestor protocoale includ multiplexarea, controlul traficului, controlul erorilor şi încă altele. O mare parte a acestei cărţi este dedicată protocoalelor şi proiectării lor. Reţelele oferă servicii utilizatorilor lor. Aceste servicii pot fi orientate pe conexiune sau fără conexiune. în anumite reţele, serviciile tară conectare sunt oferite la un anumit nivel şi pot fi completate cu serviciile orientate pe conexiune oferite de un alt nivel. Ca reţele bine-cunoscute sunt menţionate Internet-ul, reţelele ATM, Ethernet-ul şi LAN-ul fără fir, standard denumit IEEE 802.11. Internet-ul a evoluat din ARPANET, prin adăugarea de noi reţele pentru a se forma o inter-reţea. în prezent, lntemet-ul este în fapt o colecţie de multe mii de reţele şi nu o singură reţea. Ceea ce caracterizează această colecţie este folosirea stivei TCP/IP peste tot. Reţelele ATM sunt răspândite mai ales în sistemele de telefonie pentru trafic de date intensiv. Ethernet-ul este cea mai populară reţea locală şi este implementată în majoritatea companiilor mari şi în universităţi. în fine, reţelele locale fără fir, cu viteze de transfer surprinzător de mari (până la 54 Mbps) încep să fie folosite pe scară largă. Pentru a putea determina mai multe calculatoare să comunice între ele este nevoie de o importantă muncă de standardizare, atât pentru partea de echipamente (hardware), cât şi pentru partea de programe (software). Organizaţiile ca ITU-T, ISO, IEEE şi IAB administrează diverse părţi din procesul de standardizare.
1.10 PROBLEME 1. Imaginaţi-vă că v-aţi dresat câinele St. Bemard, pe nume Bernic, ca, în locul clasicei sticle cu rom, să poarte o cutie cu trei benzi de 8 mm. (Când ţi se umple discul, respectiva cutie reprezintă o urgenţă.) Acestc benzi conţin fiecare câte 7 gigabytes. Câinele poate călători până la dvs., oriunde v-aţi afla, cu 18 km/h. Pentru ce ordin de distanţe are Bemie o viteză mai mare de transmisie a datelor decât o linie a cărei viteză de transfer (fără supraîncărcare) este de 150 Mbps? 2. O alternativă la un LAN este pur şi simplu un mare sistem, cu divizarea timpului cu terminale pentru toţi utilizatorii. Prezentaţi două avantaje ale unui sistem client-server care foloseşte un LAN. 3. Performanţa unui sistem client-server este influenţată de doi factori ai reţelei: lărgimea de bandă (câţi biţi poate transporta într-o secundă) şi latenţa (câte secunde durează transferul primului bit de la client la
SEC. 1.10
PROBLEME
73
server). Daţi un exemplu de reţea care are şi lărgime de bandă ridicată şi latenţă mare. Apoi daţi un exemplu de reţea cu lărgime de bandă scăzută şi latenţă mică. 4. Pe lângă lărgime de bandă şi latenţă, ce alt parametru este necesar pentru a caracteriza calitatea serviciilor oferite de o reţea folosită pentru trafic de voce digitizată? 5. Un factor de întârziere al unui sistem memorează-şi-retransmite cu comutare de pachete este cât de mult timp ia operaţia de stocare şi retrimitere a unui mesaj printr-un comutator. Dacă timpul de comutare este de 10 /xs, este acesta un factor important în răspunsul unui sistem client-server în care clientul este în New York şi serverul în California? Presupuneţi că viteza de propagare a semnalului printr-un fir de cupru sau prin fibra optică ar fi de 2/3 din viteza luminii în vid. 6. Un sistem client-server foloseşte o reţea-satelit, cu satelitul amplasat la o înălţime de 40.000 km. în cazul optim, care este întârzierea cu care vine răspunsul la o cerere? A
7. In viitor, când toată lumea va avea acasă un terminal conectat Ia o reţea de calculatoare, vor deveni posibile referendumuri publice imediate pe subiecte de legislaţie importante. în ultimă instanţă ar putea fi chiar eliminate parlamentele, pentru a lăsa voinţa poporului să se exprime direct. Aspectele pozitive ale unei astfel de democraţii directe sunt destul de evidente; discutaţi unele din aspectele negative. 8. O colecţie de cinci rutere trebuie să fie conectată într-o subreţea punct-la-punct. între două rutere proiectanţii pot instala o linie de mare viteză, o linie de viteză medie, o linie de viteză scăzută sau nici o linie. Dacă generarea şi examinarea fiecărei topologii pe calculator durează 100 ms, cât timp va dura examinarea tuturor topologiilor pentru a o găsi pe cea care se potriveşte cel mai bine cu încărcarea prevăzută? 9. Un grup de 2n-l rutere sunt interconectate într-un arbore binar centralizat, cu un ruter în fiecare nod al arborelui. Ruterul / comunică cu ruterul j trimiţând un mesaj rădăcinii arborelui. Rădăcina trimite apoi mesajul înapoi în jos până la /. Deduceţi o expresie aproximativă pentru numărul mediu de salturi pe mesaj în cazul unui număr n mare, presupunând că toate perechile de rutere sunt la fel de probabile. 10. Un dezavantaj al unei subreţele cu difuzare este risipa de capacitate datorată multiplelor gazde care încearcă să acceseze canalul în acelaşi timp. Ca un exemplu simplist, să presupunem că timpul este împărţit în intervale discrete şi fiecare din cele n gazde încearcă să utilizeze canalul cu probabilitatea p în timpul fiecărui interval. Ce fracţiune din intervale se pierde datorită coliziunilor? 11. Care sunt două din motivele utilizării protocoalelor organizate pe niveluri? 12. Preşedintelui Companiei de Vopsele Speciale îi vine ideea să lucreze împreună cu un producător local de bere în scopul de a produce o cutie de bere invizibilă (ca o măsură anti-gunoi). Preşedintele comandă departamentului său juridic să analizeze ideea, iar acesta cere ajutorul, la rândul său, departamentului de ingineri. Ca rezultat, inginerul şef îl cheamă pe inginerul-şef de la cealaltă firmă pentru a discuta aspectele tehnice ale proiectului. Apoi, inginerii prezintă un raport către departamentele juridice respective, iar acestea aranjează prin telefon aspectele legale. în final, cei doi preşedinţi de firme discută partea financiară a afacerii. Este acesta un exemplu de protocol multinivel în sensul modelului OSI76. Care sunt adresele SAP în cazul difuzării radio FM ? 13. Care este principala diferenţă între comunicarea fară conexiuni şi comunicarea orientată pe conexiuni? 14. Două reţele furnizează, fiecare, servicii orientate pe conexiuni sigure. Una din ele oferă un flux sigur de octeţi, iar cealaltă oferă un flux sigur de mesaje. Sunt acestea identice? Dacă da, de ce se face această distincţie? Dacă nu, exemplificaţi prin ce diferă.
74
INTRODUCERE
CAP. 1
15. Ce înseamnă „negociere” atunci când se discută protocoalele de reţea? Daţi un exemplu. 16. în fig. 1-19 este prezentat un serviciu. Există şi servicii implicite în această figură? Dacă da, unde? Dacă nu, de ce nu? 17. în unele reţele, nivelul legătură de date tratează erorile de transmisie, solicitând retransmiterea cadrelor deteriorate. Dacă probabilitatea de a se strica un cadru este p, care este numărul mediu de transmisii necesare pentru a trimite un cadru, în cazul în care confirmările nu se pierd niciodată? 18. Care dintre nivelurile OSI se ocupă de fiecare din următoarele sarcini: a) Descompunerea fluxului de biţi transmişi în cadre. b) Determinarea traseului care trebuie folosit în subreţea. c) TDPU-rile încapsulează pachete sau invers? Discuţie. 19. Dacă unităţile de date schimbate la nivelul legătură de date se numesc cadre şi unităţile de date schimbate la nivelul reţea se numesc pachete, pachetele încapsulează cadre sau cadrele încapsulează pachete? Explicaţi răspunsul dat. 20. Un sistem are o ierarhic de protocoale organizată pe n niveluri. Aplicaţiile generează mesaje de lungime M octeţi. La fiecare nivel este adăugat un antet de h octeţi. Ce fracţiune din lăţimea benzii reţelei este ocupată de antete? 21. Prezentaţi două aspecte comune modelului de referinţă OSI şi modelului de referinţă TCP/IP. Prezentaţi apoi două aspecte prin care modelele diferă. 22. Care este principala deosebire între TCP şi UDP? 23. Subreţeaua din fig. l-25(b) a fost proiectată pentru a putea rezista unui război nuclear. Câte bombe ar fi necesare pentru a partiţiona nodurile sale în două seturi complet deconectate? Presupuneţi că orice bombă distruge un nod şi toate legăturile conectate cu el.
SEC. 1.10
PROBLEME
75
24. Intemet-ul îşi dublează dimensiunea o dată la aproximativ 18 luni. Deşi nimeni nu ştie cu siguranţă, se estimează numărul gazdelor la 100 de milioane în 2001. Folosiţi aceste date pentru a calcula numărul de gazde Internet prevăzut pentru anul 2010. Puteţi crede acest scenariu? Explicaţi de ce da sau de ce nu. 25. La transferul unui fişier între două calculatoare există (cel puţin) două strategii de confirmare. Conform primei strategii, fişierul este descompus în pachete care sunt confirmate individual de către server, dar transferul de fişiere pe ansamblu nu este confirmat. In a doua strategie, pachetele nu sunt confirmate individual, dar la sfârşit este confirmat întregul fişier. Discutaţi aceste două abordări. 26. De ce foloseşte ATM-ul celule mici, de lungime fixă? 27. Cât de lung era un bit în standardul original 802.3 măsurat în metri? Folosiţi viteza de transmisie de J0 Mbps şi presupuneţi că viteza de transmisie prin cablu coaxial este de 2/3 din viteza de propagare a luminii în vid. 28. O imagine are 1024 x 768 pixeli şi reţine câte 3 octeţi pentru fiecare pixel. Presupuneţi că imaginea este necomprimată. Cât durează transmisia ei pe un canal de modem de 56 Kbps ? Dar printr-un modem de cablu de 1 Mbps? Dar prin Ethernet la 10 Mbps? Dar prin Ethernet la 100 Mbps? 29. Ethernet-ul şi reţelele fără fir au unele asemănări şi deosebiri. O proprietate a Ethemet-ului este aceea că un singur cadru poate fi transmis la un moment dat pe mediu. Are şi 802.11 această proprietate? Discutaţi răspunsul dat. 30. Reţelele fără fir sunt uşor de instalat, ceea ce le face mai ieftine, deoarece de cele mai mult ori operaţia de instalare depăşeşte semnificativ costul echipamentelor. Totuşi, aceste reţele au şi unele dezavantaje. Numiţi două dintre ele. 31. Prezentaţi două avantaje şi două dezavantaje ale existenţei standardelor internaţionale pentru protocoalele de reţea. 32. Atunci când un sistem dispune de o parte permanentă şi de o parte detaşabilă, de exemplu un cititor de CD-uri şi un CD-ROM, este important ca sistemul să fie standardizat, astfel ca diferite firme să poată realiza atât părţile permanente cât şi cele mobile şi ca ele să se potrivească fără probleme. Daţi trei exemple din afara industriei de calculatoare unde există astfel de standarde internaţionale. Indicaţi apoi trei domenii din afara industriei de calculatoare unde nu există astfel de standarde. 33. Alcătuiţi o listă de activităţi pe care le faceţi zilnic şi în care sunt implicate reţele de calculatoare. Cum ar fi viaţa voastră alterată dacă aceste reţele ar fi deconectate la un moment dat ? 34. Descoperiţi ce reţele sunt utilizate în şcoala sau la locul de muncă. Descrieţi tipurile de reţele, topologiile şi metodele de comutare folosite acolo. 35. Programul ping vă permite să trimiteţi un pachet de test la o locaţie dată pentru a vedea cât de mult durează până când acesta ajunge acolo şi înapoi. încercaţi să folosiţi ping pentru a vedea cât de mult durează transferul pachetului între locul în care vă găsiţi şi alte câteva locuri cunoscute. Din aceste date, calculaţi timpul de tranzit într-o sigură direcţie în funcţie de distanţă. Este bine să folosiţi universităţile deoarece locaţiile serverelor lor sunt cunoscute foarte bine. De exemplu, berkley.edu este în Berkley, California, mit.edu este în Cambridge, Massachusetts, vu.nl este în Amsterdam, Olanda, www.usyd.edu.au este în Sydney, Australia şi www.uct.ac.za este în Cape Town, Africa de Sud. 36. Vizitaţi situl Web al TETF, www.ietf.org pentru a vedea ce mai fac. Alegeţi un proiect care vă place şi
76
INTRODUCERE
CAP. 1
scrieţi un raport de jumătate de pagină despre problemă şi despre o soluţie propusă. 37. Standardizarea este foarte importantă în lumea reţelelor. ITLÎ şi ISO sunt principalele organizaţii oficiale de standardizare. Vizitaţi siturile lor Web, www.itu.org şi www.iso.org, respectiv, şi aflaţi despre munca lor de standardizare. Scrieţi un scurt raport despre tipurile de lucruri pe care le-au standardizat. 38. Intemet-ul este alcătuit dintr-un mare număr de reţele. Aranjarea lor determină topologia In- temet-ului. O importantă cantitate de informaţii despre topologia Internet-ului este disponibilă online. Folosiţi un motor de căutare pentru a afla mai multe despre acest subiect şi scrieţi un scurt raport care să rezume informaţiile pe care le-aţi găsit.
2 NIVELUL FIZIC A
In continuare vom analiza trei tipuri de medii de transmisie: ghidate (cablu din cupru şi fibre optice), fără fir (unde radio terestre) şi prin satelit. Acest material furnizează informaţiile fundamentale referitoare la tehnologiile de comunicaţie folosite în reţelele modeme. Restul capitolului este dedicat descrierii a trei exemple de sisteme de comunicaţie folosite în practică pentru reţele cu răspândire geografică largă. Vom începe cu sistemul telefonic, studiind trei variante: sistemul de telefonie fixă, sistemul de telefonie mobilă şi sistemul bazat pe cablu de televiziune. Toate acestea folosesc fibra optică pentru implementarea coloanei vertebrale, dar sunt organizate diferit şi folosesc tehnologii diferite pentru ultima milă a legăturii.
2.1 BAZELE TEORETICE ALE COMUNICĂRII DE DATE Informaţia poate fi transmisă prin cablu folosind variaţia unor proprietăţi fizice ale semnalului cum ar fi tensiunea şi intensitatea curentului. Reprezentând valoarea tensiunii sau a intensităţii curentului ca o funcţie de timp, f(t), putem modela comportamentul semnalului şi îl putem analiza matematic. Această analiză face
subiectul următoarelor secţiuni.
77
78
NIVELUL FIZIC
CAP. 2
2.1.1 Analiza Fourier La începutul secolului XIX, matematicianul francez Jean-Baptiste Fourier a demonstrat că orice funcţie g(t), cu evoluţie rezonabilă şi periodică cu perioada T, poate fi construită prin însumarea unui număr (posibil infinit) de sinusoide şi cosinusoide:
(2-1)
unde/ = 1 / T este frecvenţa fundamentală, iar a„şi bn sunt amplitudinile sinusoidelor şi cosinusoide- lor armonicei (termenului) de ordinul n, iar c este o constantă. Această descompunere este numită serie Fourier. Pornind de la seria Fourier, funcţia poate fi reconstruită; aceasta înseamnă că, dacă perioada T este cunoscută şi amplitudinile sunt date, funcţia de timp originală poate fi obţinută prin evaluarea sumelor din ecuaţia 2-1. Un semnal de durată finită (proprietate pe care o au toate semnalele) poate fi tratat presupunându-se că el repetă un anumit tipar la infinit (de exemplu, semnalul este acelaşi în intervalul de la 7'la 2Tca în intervalul de la 0 la T, etc.). Amplitudinile tf„pot fi calculate pentru orice g(t) dat prin multiplicarea ambilor membri ai ecuaţiei 2-1 cu sin(27iA.//) urmată de integrarea de la 0 la T. Deoarece 0 pentru k * n o
T/2 pentru k = n
numai un singur termen al sumei nu se anulează: an. Suma de cosinusuri - cea cu bn - se anulează complet. Similar, multiplicând membrii ecuaţiei 2-1 cu cos(2nkft) şi integrând de la 0 la 7’, putem obţine bn. Prin integrarea ambilor membri ai ecuaţiei originale, se poate obţine c. Rezultatele obţinute prin efectuarea accstor operaţii sunt:
2.1.2
Semnalele cu bandă de frecvenţă limitata
Pentru a face legătura dintre cele prezentate şi comunicaţia de date să considerăm următorul exemplu: transmisia caracterului ASCII „b” codificat pc un octet. Biţii care urmează a fi transmişi sunt 01100010. Partea din stânga a fig. 2-l(a) reprezintă tensiunea la ieşire emisă de calculatorul care transmite. Din analiza Fourier a acestui semnal rezultă următorii coeficienţi:
an = —[cos(tiw /4) - cos(3tt/7 / 4) + cos(67r/?/4) - COS(77I/7/ 4)] bn = —[sin(37irt / 4) - $'\n(nn / 4) + sin(77rw / 4) - sin(67i/7 / 4)J c = 3/4
BAZELE TEORETICE ALE COMUNICĂRII DE DATE
SEC. 2.1
1
1
00
1
1 2 3 4 5 6 7 8 9 101112131415 Numărul armonicei
t
j
79
(a)
i T
Timp —* 0.50 0.25 ____ ___l ____ 1 _ ! _ I _____ 1 _ I _ I _ I _ t __ I __ I
1 armonică
(b)
2 armonici
I 12
■\
armonici
12 3 4
8 armonici L.. I 1
12345678 Numărul armonicei (e)
Fig. 2-1. (a) Un semnal binar şi radicalul sumei pătratelor amplitudinilor Fourier. (b) - (e) Aproximaţii succesive ale semnalului iniţial.
80
NIVELUL FIZIC
CAP. 2
Radicalul sumei pătratelor amplitudinilor, a~r + b) , pentru primii termeni este prezentat în partea dreaptă a fig. 2-1 (a). Aceste valori sunt cele care ne interesează, deoarece pătratele lor sunt proporţionale cu energia transmisă la frecvenţa respectivă. Nu există un mijloc de transmisie care să poată trimite semnale fără pierdere de putere în timpul procesului. Dacă toate componentele Fourier ar fi micşorate în aceeaşi măsură, atunci semnalul rezultat ar fi atenuat în amplitudine, dar nu ar prezenta distorsiuni [ar avea aceeaşi formă ca cea din fig. 2-l(a)). Din păcate, orice mijloc de transmisie atenuează componente Fourier diferite cu factori diferiţi, introducând astfel distorsiuni. De obicei, amplitudinile sunt transmise fără atenuări de la 0 la o anumită frecvenţă fp [măsurată în cicluri/secundă sau în Hertzi (Hz)] şi toate celelalte componente cu frecvenţe mai mari decât această frecvenţă de tăiere sunt puternic atenuate. Intervalul de frecvenţe transmise fără a fi atenuate semnificativ se numeşte lărgime de bandă. In practică, tăierea nu este verticală (şi deci frecvenţa de tăiere nu este exactă), astfel încât deseori lărgimea de bandă este aproximată ca intervalul dintre 0 şi frecvenţa de trecere pentru jumătate din puterea maximă. Lărgimea de bandă este o proprietate fizică a mediului de transmisie şi de obicei depinde de construcţia, grosimea şi lungimea mediului. în unele cazuri, în circuit este introdus un filtru pentru a limita lărgimea de bandă disponibilă pentru fiecare client. De exemplu, un fir de telefon poate avea lărgimea de bandă de 1 MHz pentru distanţe scurte, dar companiile telefonice adaugă un filtru ce limitează fiecare client la aproximativ 3100 Hz. Această variantă este adecvată pentru vorbire inteligibilă şi îmbunătăţeşte eficienţa sistemului prin limitarea utilizării de resurse de către clienţi. Să vedem cum va arăta semnalul transmis dacă banda de frecvenţă folosită ar fi atât de îngustă, încât numai frecvenţele foarte joase pot fi transmise [funcţia ar fi aproximată doar cu primii câţiva termeni ai ecuaţiei (21)]. Fig. 2-l(b) reprezintă semnalul rezultat dintr-un canal care permite numai primei armonici (J\ fundamentală) să fie transmisă. Similar, fig. 2-l(c)-(e) prezintă spectrele şi funcţiile reconstruite pentru canale cu lărgime de bandă mai mare. Fiind dată o rată de transmisie a biţilor de b biţi/secundă, timpul necesar pentru a transmite 8 biţi (de exemplu) este de S/b secunde, frecvenţa primei armonice fiind b/'S Hz. O linie telefonică obişnuită, deseori numită linie în bandă vocală (voice-grade line), este limitată artificial de o frecvenţă de tăiere puţin peste 3000 Hz. Accastă restricţie impune ca numărul celei mai mari armonice care poate fi transmisă este aproximativ de 3000/(6/8), adică 24000/6 (frecvenţa de prag nu este foarte exactă). Bps 300 600 1200 2400 4800 9600 19200 38400
T (msec)
Prima armonică (Hz)
nr. armonice transmise
26.27 13.33 6.67 3.33 1.67 0.83 0.42 0.21
37.5 75 150 300 600 1200 2400 4800
80 40 20 10 5 2 1 0
Fig. 2-2. Relaţia între viteza de transfer a datelor şi armonice. A
In fig. 2-2 sunt prezentate valorile pentru anumite viteze de transfer de date. Pornind de la aceste valori, este clar că încercarea de a transmite date la o viteză de 9600 bps folosind o linie telefonică obişnuită va transforma semnalul din fig. 2-1 (a) în ceva asemănător cu fig. 2-1 (c), fiind dificilă obţinerea secvenţei de biţi originale. Este evident că la viteze de transfer mai mari decât 38.4 Kbps nu
SEC. 2.1
BAZELE TEORETICE ALE COMUNICĂRII DE DATE
81
există nici o speranţă de a recupera semnalele binare, chiar dacă mediul de transmisie ar fi lipsit în totalitate de zgomote. Cu alte cuvinte, limitând lărgimea de bandă se limitează şi viteza de transfer chiar şi pentru canalele perfecte. Oricum, există tehnici de codificare sofisticate, care folosesc mai multe niveluri de tensiune şi care pot atinge rate de transfer mai mari. Vom discuta aceste tehnici mai târziu în acest capitol.
2.13 Viteza maximă de transfer de date a unui canal încă din 1924, un inginer AT&T, H. Nyquist a descoperit că şi un canal perfect are o capacitate limitată de transmisie. El a dedus o ecuaţie care exprimă viteza maximă de transfer de date pentru un canal fără zgomote, cu lărgime de bandă finită. în 1948, Qaude Shannon a continuat cercetările lui Nyquist exprimând această limită pentru un canal supus zgomotului aleatoriu (termodinamic) (Shannon 1948). Noi nu vom face aici decât o scurtă prezentare a acestor rezultate, acum devenite clasice. Nyquist a demonstrat că dacă un semnal arbitrar este transmis printr-un filtru de frecvenţe joase cu lărgime de bandă //, semnalul filtrat poate fi complet reconstruit prin efectuarea a numai 2 H eşantioane pe secundă. Eşantionarea semnalului la o viteză mai mare decât 2///secundă este inutilă, deoarece componentele cu o frecvenţă mai înaltă pe care aceste eşantioane le-ar putea obţine au fost deja filtrate. Dacă semnalul are V niveluri discrete, teorema lui Nyquist afirmă: viteza maximă de transfer de date = 2H log 2Kbiţi / sec De exemplu, un canal de 3kHz, fără zgomote, nu poate transmite semnale binare (pe două niveluri) la o viteză mai mare de 6000 bps. Până acum am studiat doar cazul canalelor fără zgomote. Dacă sunt prezente zgomote aleatoare, situaţia se deteriorează rapid. Iar un zgomot aleator (termic) datorat mişcării moleculelor în sistem va fi prezent întotdeauna. Dimensiunea zgomotului termic prezent se măsoară prin raportul dintre puterea semnalului şi puterea zgomotului, fiind numită raportul semnal-zgomot. Dacă notăm puterea semnalului cu S şi puterea zgomotului cu N, atunci raportul semnal-zgomot este S/N. De obicei, acest raport nu este specificat; în schimb, este dată expresia 10 logioSYA'. Aceste unităţi sunt numite decibeli (dB). Un raport S/N egal cu 10 este de 10 dB, un raport egal cu 100 este de 20 dB, un raport egal cu 1000 este de 30 dB şi aşa mai departe. De multe ori fabricanţii de amplificatoare stereo caracterizează banda de frecvenţă (domeniul de frecvenţă) în care produsul lor este liniar furnizând frecvenţele la care semnalul se atenuează cu 3 dB Ia fiecare capăt. Acestea sunt punctele în care factorul de amplificare este aproximativ înjumătăţită (deoarece Iog1(>3 -0.5). Rezultatul cel mai important obţinut de Shannon este expresia pentru viteza maximă de transfer de date a unui canal cu zgomote, având lărgimea de bandă de H Hz şi a cărui raport semnal-zgomot S/N este dat de: numărul maxim de biţi/sec = H log 2 (1+S/N) De exemplu, un canal cu o bandă de frecvenţă de 3000 Hz şi zgomot termic de 30 dB (parametri tipici părţii analogice a sistemului telefonic) nu va putea transmite mult mai mult de 30.000 bps, indiferent de cât de multe sau de puţine niveluri are semnalul sau cât de multe sau puţine eşantioane sunt luate. Rezultatele lui Shannon au fost obţinute folosind atât argumente teoretice cât şi argumente informaţionale şi se aplică oricărui canal supus zgomotelor termice. Contraexemplele ar trebui plasate în aceeaşi categorie cu maşinile perpetuum mobile. Ar trebui remarcat şi că această viteză nu este decât o limitare superioară pe care sistemele reale o ating rareori.
82
NIVELUL FIZIC
CAP. 2
2.2 MEDII DE TRANSMISIE GHIDATĂ Scopul nivelului fizic este de a transporta o secvenţă de biţi de la o maşină la alta. Pentru transmisia efectivă pot fi utilizate diverse medii fizice. Fiecare dintre ele este definit de lărgime proprie de bandă, întârziere, cost, dar şi de uşurinţa de instalare şi întreţinere. Aceste medii pot fi împărţite în două grupe mari: medii ghidate, cum sunt cablul dc cupru şi fibrele optice şi medii neghidate, cum sunt undele radio şi laserul. Vom arunca o privire asupra acestora în următoarele secţiuni. 2.2.1
Medii magnetice
Una din cele mai obişnuite metode de a transporta date de la un calculator la altul este să se scrie datele pe o bandă magnetică sau pe un suport reutilizabil (de exemplu, DVD-uri pentru înregistrare), să se transporte fizic banda sau discul la maşina de destinaţie, după care să se citească din nou datele. Cu toate că această metodă nu este la fel de sofisticată precum folosirea unui satelit de comunicaţie geosincron, ea este de multe ori mai eficientă din punct de vedere al costului, mai ales pentru aplicaţiile în care lărgimea de bandă sau castul pe bit transportat sunt factori cheie. Un calcul simplu va confirma acest punct de vedere. O bandă Ultrium standard industrial poate înmagazina 20() gigaocteţi. Intr-o cutie cu dimensiunile 60 x 60 x 60 cm pot să încapă cam 1000 de astfel de benzi, ceea ce înseamnă o capacitate totală de 200 de terraocteţi sau 1600 terrabiţi (1.6 petabiţi). O cutie cu benzi poate fi distribuită oriunde în Statele Unite în 24 de ore de către Federal Express sau de alte companii. Banda de frecvenţă efectivă a acestei transmisii este de 1600 terrabiţi / 84600 secundc, adică 19Gbps. Dacă destinaţia ar fi la distanţă de numai o oră cu maşina, lărgimea de bandă s-ar mări la peste 400Gbps. Nici o reţea de calculatoare nu poate să se apropie de o asemenea viteză. Pentru o bancă în care datele sunt de ordinul gigaocteţilor şi trebuie salvate zilnic pe o altă maşină (pentru ca banca să poată funcţiona în continuare chiar şi în urma unor inundaţii puternice sau unui cutremur), probabil că nici o altă tehnologie de transmisie nu e comparabilă cu performanţa atinsă de banda magnetică. Desigur, reţelele devin din ce în ce mai rapide, dar şi capacităţile benzilor magnetice cresc. Dacă ne uităm la cost, vom obţine aceeaşi situaţie. Atunci, dacă sunt cumpărate en-gros, benzile Ultrium ajung să coste în jur de 40 de dolari pe bucată. O bandă poate fi refolosită de cel puţin 10 ori, astfel încât costul benzii este aproape de 4000 de dolari/cutie/utilizare. Dacă adăugăm încă 1000 de dolari pentru traasport (probabil mult mai ieftin), vom avea un cost de 5000 de dolari pentru a transporta 200 de terraocteţi. De aici rezultă că un gigaoctet poate fi transportat la un preţ mai mic de 3 cenţi. Nici o reţea nu poate concura cu un astfel de preţ. Morala poveştii:
Niciodată nu subestima lărgimea de bandă a unui camion încărcat cu benzi magnetice care goneşte la vale pe autostradă.
MEDII DE TRANSMISIE GHIDATĂ
SEC. 2.2
83
2.2.2 Cablul torsadat
Deşi caracteristicile de lărgime de bandă ale mediilor magnetice sunt excelente, performanţele legate de întârzieri sunt slabe. Timpul de transmisie nu se măsoară în milisecunde, ci în minute sau ore. Pentru multe aplicaţii este nevoie de o conexiune on-line. Unul dintre cele mai vechi medii de transmisie, rămas cel mai utilizat mediu, este cablul torsadat. O pereche torsadată este formată din două fire de cupru izolate, fiecare având o grosime tipică de 1 mm. Firele sunt împletite într-o formă elicoidală, ca o moleculă de ADN. împletirea se face pentru că două lire paralele constituie o bună antenă. Dacă firele sunt împletite, undele din diferite împletiri se anulează, astfel încât radiaţia firului este scăzută eficient. Cea mai cunoscută aplicaţic a cablului torsadat este sistemul telefonic. Aproape toate telefoanele sunt conectate la centrala telefonică printr-un cablu torsadat. Cablurile torsadate se pot întinde pe mai mulţi kilometri fără amplificare, dar pentru distanţe mai mari, sunt necesare repetoare. Atunci când mai multe cabluri torsadate sunt grupate în paralel - cum sunt de exemplu toate firele de la un bloc de locuinţe legate la centrala telefonică - ele sunt legate împreună şi încapsulate într-un material protector. Dacă perechilc de fire nu ar fi fast împletite, cablurile grupate astfel împreună ar fi interferat. în anumite părţi ale lumii, unde liniile telefonice sunt montate pe stâlpi, sunt des întâlnite cablurile cu diametrul de câţiva centimetri. *
Cablurile torsadate pot fi folosite atât pentru transmisia semnalelor analogice cât şi pentru transmisia de semnale digitale. Lărgimea de bandă depinde de grăsimea firului şi de distanţa parcursă, dar, în multe cazuri, se poate atinge o viteză de mai mulţi megabiţi pe secundă pe distanţe de ordinul a câţiva kilometri. Datorită performanţei satisfăcătoare şi a costului scăzut, cablurile torsadate sunt foarte larg folosite în prezent şi probabil că vor rămâne larg folosite şi în următorii ani. Există numeroase tipuri de cabluri torsadat, două dintre acestea fiind importante pentru reţelele de calculatoare. Perechile torsadate din Categoria 3 sunt formate din două fire izolate răsucite unul în jurul celuilalt cu pas mare. De obicei, patru astfel de perechi sunt grupate într-un material plastic, pentru a le proteja şi pentru a le ţine împreună. Până în 1988, cele mai multe clădiri cu birouri aveau un cablu de categoria 3, care pornea din panoul central de la fiecare etaj către fiecare birou. Această schemă permitea ca maxim patru telefoane obişnuite, sau maxim două telefoane cu mai multe linii, toate aflate în acelaşi birou, să poată fi cuplate la centrala telefonică prin panoul central. începând din 1988, au fost introduse cablurile de Categoria 5, mai performante. Ele sunt similare celor din categoria 3, dar au mai multe răsuciri pe centimetru (pas de răsucire mai mic), rezultând o interferenţă (diafonie) scăzută şi o mai bună calitate a semnalului pe distanţe mari, ceea ce le face mai adecvate comunicaţiilor Ia viteze mari între calculatoare. Categoriile mai noi sunt 6 şi 7, care sunt capabile să trateze semnale cu banda de frecvenţă de 250 MHz şi, respectiv, 600 MHz (faţă de numai 16MHz sau 100MHz pentru categoriile 3 şi, respectiv, 5). Pentru a lc deosebi de cablurile torsadate voluminoase, ecranate şi scumpe, pe care IBM le-a introdus la începutul anilor '80, dar care nu au devenit populare în afara instalaţiilor IBM, aceste tipuri de cabluri sunt cunoscute sub numele de cabluri UTP (Unshielded Twisted Pair, rom: cablu torsadat neecranat). Torsadarea firelor este ilustrată în fig. 2-3.
(a) Fig. 2-3. (a) Cablu UTP cat. 3. (b) Cablu UTP cat. 5.
(b)
84
NIVELUL FIZIC
CAP. 2
2.23 Cablu Coaxial Un alt mediu uzual de transmisie este cablul coaxial (cunosc ut printre utilizatorii săi sub numele de „coax” şi este pronunţat “co-ax”). El are o ecranare mai bună decât cablurile torsadate, putând acoperi distanţe mai mari la rate de transfer mai mari. Există două tipuri de cabluri coaxiale folosite pe scară largă. Primul, cablul de 50 de ohmi, este folosit frecvent când se doreşte transmisie digitală de la început. Al doilea tip, cablul de 75 de ohmi, este frecvent folosit în transmisia analogică şi televiziunea prin cablu, dar devine tot mai important o data cu apariţia Intemetului prin cablu. Această clasificare are la bază un criteriu stabilit mai mult pe considerente istorice decât pe considerente tehnice (de exemplu, primele antene dipol aveau o impedanţă de 300 de ohmi şi existau transformatoare de impedanţă 4:1, care erau uşor de folosit). Un cablu coaxial este format dintr-o sârmă de cupru rigidă, protejată dc un material izolator. Acest material este încapsulat într-un conductor circular, de obicei sub forma unei plase strâns întreţesute. Conductorul exterior este acoperit cu un înveliş de plastic protector. în fig. 2-4 este prezentată o vedere în secţiune a cablului coaxial. Miez de cupru
Material izolator
Conductor exterior întreţesut
înveliş protector din plastic
Fig. 2-4. Un cablu coaxial. Structura şi ecranarea cablului coaxial asigură o bună împletire a necesităţilor semnificative de lărgime de bandă şi totodată de imunitate excelcntă la zgomot. Lărgimea de bandă poate depinde de calitatea cablului, de lungime, şi de raportul semnal-zgomot al semnalului de date. Cablurile moderne au o bandă de frecvenţă de aproape 1 GHz. Cablurile coaxiale erau folosite pe scară largă în sistemul telefonic pentru linii întinse pe distanţe mari, dar au fost în mare parte înlocuite cu fibre optice. Oricum, cablul coaxial este utilizat în continuare în televiziunea prin cablu şi în unele reţele locale.
2.2.4
Fibre optice
Mulţi dintre cei implicaţi în industria calculatoarelor sunt foarte mândri dc viteza de evoluţie a tehnologiei calculatoarelor. Originalul (1981) IBM PC rula la o frecvenţă de ceas de 4,77 MHz. Douăzeci de ani mai târziu, calculatoarele personale pot rula la 2 GHz, ceea ce reprezintă o creştere a frecvenţei de 20 de ori pentru fiecare deceniu. Nu e rău deloc. în aceeaşi perioadă, comunicaţiile de date pe arii întinse au evoluat de la o viteza de 56 Kbps (ARPANET) până la 1 Gbps (comunicaţiile optice modeme), o creştere de mai bine de 125 de ori pentru fiecare deceniu. în aceeaşi perioadă, frecvenţa erorilor a scăzut de la IO'5 per bit până aproape de zero. Mai mult, procesoarele se aproprie de limitele lor fizice, date de viteza luminii şi de problemele de disipare a căldurii. Din contră, folosind tehnologiile actuale de fibre optice, lărgimea de bandă care poate fi atinsă este cu siguranţă mai mare decât 50,000 Gbps (50 Tbps) şi sunt încă mulţi cei
SEC. 2.2
MEDII DE TRANSMISIE GHIDATĂ
85
care caută materiale şi tehnologii mai performante. Limitarea practică actuală la aproximativ 10 Gbps este o consecinţă a impasibilităţii de a converti mai rapid semnalele electrice în semnale optice, deşi, în laborator, 100 Gbps a fost atinsă într-o singură fibră. în cursa dintre calculatoare şi comunicaţii, acestea din urmă au învins. Implicaţiile complete ale lărgimii de bandă infinite (deşi nu la un cast nul) nu au fost încă abordate de o generaţie de oameni de ştiinţă şi ingineri învăţaţi să gândească în termenii limitărilor calculate de Nyquist şi Shannon, limitări stricte impuse de firele de cupru. Noua paradigmă convenţională spune că maşinile de calcul sunt extrem de lente, astfel că reţelele trebuie să evite cu orice preţ calculele, indiferent de lărgimea de bandă risipită. în această secţiune vom studia fibrele optice pentru a ne familiariza cu această tehnologie de transmisie. Un sistem de transmisie optică este format din trei componente: sursa de lumină, mediul de transmisie şi detectorul. Prin convenţie, un impuls de lumină înseamnă un bit cu valoarea 1, iar absenţa luminii indică un bit cu valoarea 0. Mediul de transmisie este o fibră foarte subţire de sticlă. Atunci când interceptează un impuls luminos, detectorul generează un impuls electric. Prin ataşarea unei surse de lumină la un capăt al fibrei optice şi a unui dctcctor la celălalt, obţinem un sistem unidirecţional de transmisie a datelor care primeşte un semnal electric, îl converteşte şi îl transmite ca impulsuri luminoase şi apoi reconverteşte ieşirea în semnale electrice la recepţie. Acest sistem de transmisie ar fi pierdut din semnalele luminoase şi ar fi fost lipsit de importanţă în practică, dacă nu s-ar fi folosit un principiu interesant al fizicii: când o rază luminoasă trece de la un mediu la altul, de exemplu de la siliciu la aer, raza este refractată (frântă) la suprafaţa de separaţie siliciu / aer ca în fig. 2-5. Se observă o rază de lumină incidenţă pe suprafaţa de separaţie la un unghi ai care se refractă la un unghi Pi. Mărimea refracţiei depinde de proprietăţile celor două medii (în particular, de indicii lor de refracţie). Pentru unghiuri de incidenţă mai mari decât o anumită valoare critică, lumina este refractată înapoi în siliciu fără nici o pierdere. Astfel o rază de lumină, la un unghi egal sau mai mare decât unghiul critic, este încapsulată în interiorul fibrei, ca în fig. 2-5(b) şi se poate propaga pe mulţi kilometri, aparent fără pierderi.
(ai
(b)
Fig. 2-5. (a) Trei exemple de raze de lumină în interiorul unei fibre de siliciu care cad pe suprafa- ţa de separaţie aer/siliciu la unghiuri diferite, (b) încapsularea luminii prin reflexie totală. în fig. 2-5(b) se poate observa o singura rază încapsulată, dar se pot transmite mai multe raze cu unghiuri de incidenţă diferite, datorită faptului că orice rază de lumină cu unghi de incidenţă la suprafaţa de separaţie mai mare decât unghiul critic va fi reflectată total. Se spune că fiecare rază are un mod diferit, iar fibra care are această proprietate se numeşte fibră multi-niod. Oricum, dacă diametrul fibrei este redus la câteva lungimi de undă ale luminii, fibra acţionează ca un ghid de undă şi lumina se va propaga în linie dreaptă, fără reflexii, rezultând o fibră mono- mod. Aceste fibre sunt mai scumpe, dar sunt des folosite pentru distante mai mari. Fibrele mono- mod curente pot transmite date la 50 Gbps pe distanţe de 100 Km iară amplificare. în condiţii de laborator şi pentru distanţe mai mici s-au obţinut rate de transfer chiar şi mai mari.
86
NIVELUL FIZIC
CAP. 2
Transmisia luminii prin fibre Fibrele optice sunt fabricate din sticlă, iar sticla este fabricată la rândul ei din nisip, un material brut necostisitor, care se găseşte în cantităţi nelimitate. Producerea sticlei era cunoscută de egiptenii din Antichitate, dar pentru ei sticla trebuia să nu fie mai groasă de 1 mm pentru ca lumina să poată să treacă prin ea. Sticla suficient de transparentă pentru a putea fi folosită ca fereastră a apărut abia în timpul Renaşterii. Sticla folosită pentru fibrele optice modeme este atât de transparentă încât, dacă oceanele ar fi fost pline cu astfel de sticlă în loc de apă, fundul oceanului s-ar vedea de la suprafaţă tot atât de clar precum se vede pământul din avion într-o zi senină. Atenuarea luminii prin sticlă depinde de lungimea de undă a luminii (şi de alte câteva proprietăţi fizice ale sticlei). Pentru tipul de sticlă folosit la fibre optice, atenuarea este prezentată în fig. 2-6, măsurată în decibeli pe kilometru liniar de fibră. Atenuarea în decibeli este dată de formula: ..... puterea transmisă Atenuarea _in _aecibeli = 101og10 — ---- ---------- = ---------------puterea _ recepţionată De exemplu, pentru un factor de pierdere egal cu 2 rezultă o atenuare de 10 logio2 = 3 dB. Fig. prezintă valorile atenuării pentru lungimi de undă apropiate spectrului razelor infraroşii, care sunt folosite în practică.
Banda de
Lumina vizibilă are lungimi de undă puţin mai mici, de la 0.4 la 0.7 microni (1 micron este 10' 6 metri). Banda de
Banda de
Trei benzi din acest spectru sunt folosite în comunicaţii. Ele sunt centrate respectiv la 0.85,1.3 şi 1.55 microni. Ultimele două au proprietăţi bune de atenuare (mai puţin de 5% pierderi pe kilometru). Banda de 0.85 microni are o atenuare mai mare, dar o proprietate care o avantajează este că, la această lungime de undă, laserul şi echipamentul electronic pot fi făcute din acelaşi material (arseni- ură de galiu). Toate cele trei benzi au o lărgime de bandă între 25.000 şi 30.000 GHz.
0.8
0.9
1.0
1.1 1.2 1.3 1.4 Lungimea de undă (microni)
1.5
1.6
Fig. 2-6. Atenuarea luminii prin fibră în spectrul infraroşu.
1.7
MEDII DE TRANSMISIE GHIDATĂ
SEC. 2.2
87
Impulsurile de lumină transmise prin fibră îşi extind lungimea în timpul propagării. Această extindere se numeşte dispersie cromatică, şi mărimea ei este dependentă de lungimea de undă. Un mod de a preveni suprapunerea acestor impulsuri extinse este de a mări distanţa dintre ele, dar aceasta se poate face doar prin reducerea ratei semnalului. Din fericire, s-a descoperit că, dând acestor impulsuri o formă specială, legată de reciproca cosinusului hipcrbolic, se anulează toate efectele de dispersie, şi este astfel posibil să se trimită impulsuri pe mii de kilometri, fără distorsiuni semnificative ale formei. Aceste impulsuri se numesc solitonuri. Cercetările pentru implementarea practică a acestei soluţii de laborator sunt în plină desfăşurare.
Cablurile din fibră optica Cablurile din fibră optică sunt similare celor coaxiale, cu singura deosebire că nu prezintă acel material conductor exterior sub forma unei plase. Fig. 2-7(a) prezintă o secţiune a unei singure fibre, în centru se află miezul de sticlă prin care se propagă lumina. în fibrele multi-mod, miezul are un diametru de 50 microni, aproximativ grosimea părului uman. în fibrele mono-mod miezul este de 8 până la 10 microni. Miezul este îmbrăcat în sticlă cu un indice de refracţie mai mic decât miezul, pentru a păstra lumina în miez. Totul este protejat cu o învelitoare subţire din plastic. De obicei, mai multe fibre sunt grupate împreună, protejate de o teacă protectoare. Fig. 2-7(b) prezintă un astfel de cablu cu trei fibre. Teac ă
(sticlă)
(a)
Protecţie
Protecţie (plastic)
(b)
Fig. 2-7 (a) Vedere perspectivă a unei singure fibre. (b) Vedere în secţiune a unei teci cu trei fibre. Fibrele terestre sunt îngropate în pământ până la adâncimi de un metru, fiind ocazional deteriorate de buldozere sau de cârtiţe. Lângă ţărm, fibrele transoceanice sunt îngropate în şanţuri cu ajutorul unui fel de plug de mare. în apele adânci, ele stau pe fundul apei, unde pot fi agăţate de traule- re de pescuit sau pot fi atacate de calmari. Fibrele pot fi conectate în trei moduri. Primul mod constă în ataşarea la capătul fibrei a unor conectori care se pot lega la un soclu pentru fibră. Conectorii pierd între 10% şi 20% din lumină, dar avantajul acestor sisteme este că sunt uşor de reconfigurat. Al doilea mod constă în îmbinarea mecanică. îmbinările mecanice se obţin prin ataşarea celor două capete unul lângă altul, într-un înveliş special, şi fixarea lor cu ajutorul unor clame. Alinierea se poate face prin trimitere de semnale prin joncţiune şi realizarea de mici ajustări pentru a maximiza semnalul. Unui specialist îi trebuie în jur de 5 minute să facă o îmbinare mecanică, aceasta având ca rezultat o pierdere de lumină de 10%. A treia posibilitate este de a îmbina (topi) cele două bucăţi de fibră, pentru a forma o conexiune solidă. O îmbinare prin sudură este aproape Ia fel de bună ca şi folosirea unui singur fir, dar chiar şi aici, apare o mică atenuare.
88
NIVELUL FIZIC
CAP. 2
Pentru toate cele trei tipuri de îmbinare poate să apară fenomenul de reflexie la punctul de îmbinare, iar energia reflectată poate interfera cu semnalul. Criteriu Viteza de transfer a datelor Tip de fibră Distanţă Durata de viată Sensibilitate la temperatură Cost
LED Joasă Multi-mod Scurtă Viaţă lungă Minoră Cost redus
Laser cu semiconductor Mare Multi-mod sau uni-mod Lungă Viaţă scurtă Substanţială Scump
Fig. 2-8. O comparaţie între laserele semiconductoare şi LED-uri ca surse de lumină. Pentru transmiterea semnalului se pot folosi două tipuri de surse de lumină: LED-uri (Light Emitting Diode - diodă cu emitere de lumină) şi laserul cu semiconductor. Ele au proprietăţi diferite, după cum arată fig. 2-8. Ele se pot ajusta în lungime de undă prin introducerea interferometre- lor Fabry-Perot sau Mach-Zender între sursă şi fibra optică. Interferometrele Fabry-Perot sunt simple cavităţi rezonante, formate din două oglinzi paralele. Lumina cade perpendicular pe oglinzi. Lungimea acestei cavităţi selectează acele lungimi de undă care încap în interior de un număr întreg de ori. Interferometrele Mach-Zender separă lumina în două fascicole. Cele două fascicole se propagă pe distanţe uşor diferite. Ele sunt apoi recombinate şi se află în fază doar pentru anumite lungimi de undă. Capătul fibrei optice care recepţionează semnalul constă dintr-o fotodiodă, care declanşează un impuls electric când primeşte o rază de lumină. Timpul de răspuns tipic al unei diode este de Ins, ceea ce limitează viteza de transfer de date la aproximativ lGbps. Pentru a putea fi detectat, un impuls luminos trebuie să aibă suficientă energie ca să evite problema zgomotului termic. Viteza de apariţie a erorilor se poate controla prin asocierea unei puteri suficient de mari a semnalului.
Reţelele din fibre optice Fibrele optice pot fi folosite atât pentru LAN-uri cât şi pentru transmisia pe distanţe foarte lungi, deşi conectarea într-o reţea bazată pe acest mediu este mult mai complexă decât conectarea la Ethernet. O soluţie pentru a evita această problemă este prezentarea unei reţele în inel ca fiind o colecţie de legături punct la punct, aşa ca în fig. 2-9. Interfaţa fiecărui calculator lasă să treacă impulsul de lumină către următoarea legătură şi totodată are rolul unei joncţiuni în T pentru a face posibilă transmiterea şi recepţia mesajelor. La/de la calculator Sârmă de cupru
de interfaz
Fibră optică
Interfaţă
Receptor optic (fotodiodă)
Fig. 2-9. Un inel din fibră optică
Regenerat or de semnal cu repetoare active. (electric)
Direcţia de propagare a luminii Transmiţător optic (LED)
MEDII DE TRANSMISIE GHIDATĂ
SEC. 2.2
89
Se folosesc două tipuri de interfeţe. O interfaţă activă constă din doi conectori sudaţi pe fibra centrală. Unul din ei are la un capăt un LED sau o diodă cu laser (pentru transmisie) şi celălalt are la capăt o fotodiodă (pentru recepţie). Conectorul este complet pasiv şi este viabil, deoarece un LED sau o fotodiodă defectă nu întrerupe inelul, ci doar scoate un calculator din circuit. Un alt model de interfaţă, prezentat în fig. 2-9, este repetorul activ. Lumina recepţionată este convertită într-un semnal electric, regenerat la putere maximă, dacă este atenuat şi retransmis ca semnal luminos. Interfaţa cu calculatorul este un fir de cupru obişnuit care se leagă la regeneratorul de semnal. în prezent, sunt folosite şi repetoare integral optice. Aceste echipamente nu necesită conversii de tipul optic-electric-optic, ceea ce înseamnă că pot opera la lărgimi de bandă foarte mari. In cazul în care repetorul activ se deteriorează, inelul este întrerupt şi reţeaua nu mai funcţionează. Pe de altă parte, deoarece semnalul este regenerat de fiecare interfaţă, legăturile între două calculatoare adiacente pot avea lungimi de kilometri, practic fără nici o limitare asupra dimensiunii totale a inelului. Interfeţele pasive diminuează lumina la fiecare joncţiune, având ca efect restricţii drastice în ceea ce priveşte numărul de calculatoare ce pot fi conectate şi lungimea totală a inelului. O topologie în inel nu este singura modalitate de a construi un LAN folosind fibre optice. Este '
A
posibilă şi o arhitectură de tip stea pasivă, ca aceea prezentată în fig. 2-10. In această schemă, fiecare interfaţă prezintă o fibră care face conexiunea între transmiţător şi un cilindru de siliciu, cu toate aceste fibre sudate la un capăt al cilindrului. Similar, fibrele sudate la celălalt capăt al cilindrului se conectează la fiecare receptor. Ori de câte ori o interfaţă transmite un semnal, el este difuzat în interiorul stelei pasive pentru a ilumina toţi receptorii, realizându-se astfel difuzarea. Steaua pasivă combină toate semnalele de la intrare şi transmite semnalul combinat pe toate liniile. Deoarece energia de la intrare este împărţită între toate liniile de la ieşire, numărul de noduri în reţea este limitat de senzitivitatea fotodiodelor.
toate fibrele de intrare Fig. 2-10. Conectarea unei stele pasive în reţelele de fibră optică.
90
NIVELUL FIZIC
CAP. 2
Comparaţie intre fibrele optice şi firul de cupru O comparaţie între fibra optică şi Grele de cupru este instructivă. Fibra are multe avantaje. Mai întâi, lărgimea de bandă pe care o suportă este mai mare decât a firelor de cupru. Numai acest lucru şi ar fi suficient pentru a fi utilizată în reţelele performante. Datorită atenuării scăzute, repetoarele sunt necesare la fiecare 30 km pe liniile lungi, în comparaţie cu 5 Km pentru cupru. Fibra are avantajul că nu este afectată de şocurile electrice, de interferenţa câmpului electromagnetic sau de căderile de tensiune. De asemenea, nu este afectată nici de substanţele chimice corozivc din aer, fiind ideală pentru mediile aspre din fabrici. Destul de surprinzător, companiile de telefoane preferă fibra dintr-un alt motiv: este subţire şi foarte uşoară. Multe dintre canalele cu cabluri sunt pline până la refuz şi prin înlocuirea cuprului cu fibră se obţine ceva spaţiu, iar cuprul are o valoare excelentă pe piaţă, deoarece fabricile îl consideră un minereu de mare importanţă. De asemenea, fibra este mai uşoară decât cuprul. O mie de cabluri torsadate cu o lungime de 100 Km lungime cântăresc 8000 Kg. Două fibre au o capacitatc mai mare şi cântăresc doar 100 Kg, acest lucru reducând drastic necesitatea unor echipamente mecanice scumpe care trebuie întreţinute. Pe traseele noi, fibra câştigă detaşat în faţa cuprului datorită costului de instalare foarte scăzut. în sfârşit, fibrele nu disipă lumina şi de aceea sunt foarte dificil de interceptat. Aceste proprietăţi le oferă o excelentă securitate împotriva unor potenţiale tentative de interceptare. Pe de altă parte, fibra este o tehnologie mai puţin familiară şi necesită o pregătire pe care nu toţi inginerii o au, iar fibrele pot fi stricate uşor dacă sunt îndoite prea mult. Deoarece transmisia optică este prin natura ei unidirecţională, comunicaţiile bidirecţionale necesită fie două fibre, fie două benzi de frecvenţă diferite pe aceeaşi fibră. în sfârşit, interfeţele pentru fibră costă mai mult decât interfeţele electrice. Nu mai puţin adevărat este faptul că toate comunicaţiile de date pe lungimi mai mari de câţiva metri se vor face în viitor cu fibre. Pentru o discuţie asupra tuturor aspectelor fibrelor optice şi asupra reţelelor construite cu ele, vedeţi (Hecht, 2001).
2.3 COMUNICAŢIILE FĂRĂ FIR y Epoca noastră a generat dependenţa de informaţie: oameni care au nevoie să fie în permanenţa conectaţi la informaţii. Pentru aceşti utilizatori mobili, cablul torsadat, cablul coaxial şi fibrele optice nu sunt de nici un folos. Ei au nevoie de date pentru calculatoarele lor portabile, fără a fi legaţi de infrastructura comunicaţiilor terestre. Pentru aceşti utilizatori comunicaţiile fără fir reprezintă soluţia optimă. în secţiunile ce urmează, vom discuta la modul general asupra comunicaţiilor fără fir, deoarece acestea au multe alte aplicaţii importante în afara serviciilor de conectare oferite utilizatorilor care doresc să navigheze pe WEB de pe plajă. Sunt voci care susţin că viitorul rezervă numai două tipuri de comunicaţii: prin fibre optice şi fără fir. Toate calculatoarele, faxurile, telefoanele fixe (nemobile) vor folosi fibre, iar cele mobile vor folosi comunicaţia iară fir. Comunicaţiile fără fir sunt avantajoase chiar şi pentru echipamentele fixe, în anumite împrejurări. De exemplu, în cazul în care conectarea unei clădiri cu ajutorul fibrei este dificilă datorită terenului (munţi, jungle, mlaştini etc.), comunicaţia fără fir poate fi mai bună. Este de remarcat faptul că sistemele moderne de comunicaţie digitală fără fir au apărut în Insulele Hawaii, unde utilizatorii erau despărţiţi de mari întinderi de apă din oceanul Pacific, sistemul telefonic fiind inadecvat.
SEC. 2.3
23.1
COMUNICAŢIILE FĂRĂ FIR
91
Spectrul electromagnetic
Atunci când electronii se află în mişcare, ei creează unde electromagnetice care se pot propaga prin spaţiu (chiar şi în vid). Aceste unde au fost prezise de fizicianul britanic James Clerk Maxwell în 1865 şi au fost observate pentru prima dată de fizicianul german Heinrich Hertz în 1887. Numărul de oscilaţii ale unei unde într-o secundă poartă numele de frecvenţă, /, şi este măsurată în Hz (în onoarea lui Heinrich Hertz). Distanţa dintre două maxime (sau minime) consecutive este numită lungime de undă. Notaţia universală a lungimii de undă este X (lambda). Gând o antenă dimensionată corespunzător este ataşată unui circuit, undele electromagnetice pot fi difuzate eficient şi interceptate de un receptor, aflat la o anumită distanţă. Acest principiu stă la baza tuturor comunicaţiilor fără fir. în vid, toate undele electromagnetice se transmit cu aceeaşi viteză, indiferent de frecvenţă, Această viteză, numită de obicei viteza luminii, c, este de aproximativ de 3 x 10s m/s, sau aproape 1 picior (30 cm) pe nanosccundă. (Ar fi o ideea redefinirea piciorului feng: foot) ca fiind distanţa pe care o parcurge lumina în vid într-o nanosecunda, mai degrabă decât definirea pe baza mărimii pantofului unui rege oarecare mort demult). în cupru sau în fibră, viteza scade la aproape 2/3 din această valoare şi devine uşor dependentă de frecvenţa undei. Viteza luminii este viteza maximă care poate fi atinsă - nici un obiect sau semnal nu se deplasează vreodată cu o viteza mai mare ca aceasta. Relaţia fundamentală dintre/, X şi c (în vid) este
Âf = c
(2-2)
Deoarece c este o constantă, ştiind / putem afla X, dar şi invers. Ca o regulă clară, reţineţi că atunci când  este în metri şi/este în MHz, Zf=300. De exemplu, undele cu frecvenţa de 100 MHz au lungimea de undă de aproape 3 metri, cele cu frecvenţa de 1000 MHz au lungimea de undă de 0.3 metri, iar cele cu lungimea de undă de 0.1 metri au frecvenţa de 3000 MHz. în fig. 2-11 este prezentat spectrul electromagnetic. Domeniile corespunzătoare undelor radio, microundelor, undelor infraroşii şi luminii vizibile din spectru pot fi folosite pentru transmiterea informaţiei prin modularea amplitudinii, frecvenţei sau fazei undelor. Lumina ultravioletă, razele X şi razele gama ar fi chiar mai performante datorită frecvenţelor lor mai înalte, dar ele sunt greu de produs şi de modulat, nu se propagă bine prin clădiri şi sunt periculoase pentru fiinţele vii. Benzile listate în partea de jos a fig. 2-11 sunt numele oficiale ITU şi se bazează pe lungimile de undă, LF acoperind intervalul de la 1 Km la 10 Km (aproximativ de la 30 KHz la 300 KHz). Termenii de LF, MF şi HF se referă la frecvenţele joase, medii şi înalte, respectiv. Este evident că atunci când au fast date aceste nume, nimeni nu se aştepta ca frecvenţe mai mari de 10 MHz să se folosească vreodată. Benzile mai înalte au fost numite mai târziu benzi de frecvenţă Foarte, Ultra, Super, Extrem şi Extraordinar de înalte. Dincolo de aceste frecvenţe nu mai există denumiri consacrate, dar am putea să folosim expresii de genul frecvenţe Incredibil, Uimitor sau Miraculos de înalte. Cantitatea de informaţie pe care o undă electromagnetică o poate transporta este legată de lărgimea ei de bandă. Folosind tehnologia curentă, este posibil să codificăm câţiva biţi pe Hertz la frecvenţe joase şi deseori până la 8 biţi pe Hertz la frecvenţe înalte; în concluzie, un cablu torsadat cu lărgimea de bandă de 750MHz poate transporta date de ordinul a câţiva gigabiţi/s. Din fig. 2-11 ar trebui să reiasă de acum foarte clar de ce profesioniştii din domeniul reţelelor apreciază atât de mult fibrele optice.
92
NIVELUL FIZIC
10?
f (Hz) 10°
10*
10°
10*
Radio
f (Hz) 10?
10* IO18
106
107
1010
101?
1014
Microunde Infraroşu Lumină vizibilă
!10®
109
1010
CAP. 2
IO16 1018 UV
10”
10,?
102° Raze X
io”
IO13
1014
1024 Raze Gamma
10lS
'
Cablu torsadat Coax Maritim
Radi o VI
Radio ■ FM
Microunde terestre Sateliţi
optice Fibre
TV
Bandă LF MF HF VHF UHF SHF EHT THF
Fig. 2-11. Spectrul electromagnetic aşa cum este folosit în comunicaţii. Dacă rezolvăm Ec. (2-2) pentru/şi o diferenţiem în raport cu lungimea de undă, obţinem
df ____ c_ dÂ~ Ă2 Dacă trecem la diferenţe finite în loc de diferenţiale şi alegem doar valorile pozitive, obţinem:
că A Af =
(2-3)
Astfel, fiind dată lărgimea unei benzi de lungimi de undă, AX, putem calcula banda de frecvenţă corespunzătoare, Af şi, în continuare, viteza de transfer de date pe care banda o poate produce. Cu cât banda este mai largă, cu atât creşte viteza de transfer a datelor. De exemplu, să considerăm banda de 1.30 microni din fig. 2-6. Aici avem X = 1.3 x 10"6 şi AX = 0.17 x IO"6, cu Af aproape 30 THz. La , să zicem, 8 biţi/Hz, avem 240 Tbps. Majoritatea transmisiilor folosesc o bandă îngustă de frecvenţă (Af / f < < 1) pentru a obţine cea mai bună recepţie (cât mai mulţi Watts/Hz). Totuşi, banda largă este folosită în două situaţii. în cazul utilizării metodei salturilor de frecvenţa într-un spectru larg (frequency hopping spread spec- trum), transmiţătorul sare de la o frecvenţă la alta de sute de ori pe secundă. Ea este foarte populară în comunicaţiile armatei, deoarece face transmisia greu de detectat şi aproape imposibil de bruiat. De asemenea, oferă un grad ridicat de imunitate la atenuarea multi-căi, deoarece semnalul direct ajunge întotdeauna primul la receptor. Semnalele reflectate urmăresc o cale mai lungă si ajung mai târziu. Până atunci receptorul a schimbat deja frecvenţa şi nu mai primeşte semnale cu frecvenţa anterioară, eliminând astfel orice interferenţă între semnalele directe şi cele reflectate. în ultimii ani, această tehnică a fost aplicată comercial - de exemplu, pentru 802.11 şi pentru Bluetooth. Ca o curiozitate, tehnica a fost co-inventată de Hedy Lamarr, o senzuală actriţă născută în Austria, prima femeie care a apărut goală intr-un film (în 1933, în filmul cehesc Extase). Primul ei soţ era fabricant de armament, şi i-a spus cât de uşor era să blochezi undele radio, folosite pe atunci
COMUNICAŢIILE FAR A FIR
SEC. 23
93
pentru ghidarea torpilelor. îngrozită când a descoperit că el îi vindea arme lui Hitler, ea s-a deghizat în servitoare pentru a fugi şi a zburat la Hollywood pentru a-şi continua cariera de actriţă de film. în timpul liber, a inventat metoda salturilor de frecvenţe pentru a-i ajuta pe aliaţi în război. Schema ei folosea 88 de frecvenţe, numărul de clape (si frecvenţe) de la pian. Pentru invenţia lor, ea şi prietenul ei, compozitorul de musical-uri George Antheil, au primit patentul U.S. cu numărul 2.292.387 . Totuşi, nu au reuşit sa convingă marina americană că invenţia lor putea fi pusă în practică şi nu au primit niciodată nici un fel de onoruri. Abia peste ani, după ce patentul expirase, metoda a devenit o tehnică populară. Şi cealaltă formă de spectru larg, spectru larg cu succesiune directă (direct sequence spread spectrum), metodă care împrăştie semnalul pe o bandă de frecvenţă largă câştigă popularitate în lumea comercială. In particular, unele telefoane mobile din cea de-a doua generaţie folosesc această tcluiică, şi va deveni predominantă pentru generaţia a treia, datorită eficienţei spectrale bune, imunităţii la zgomot şi a altor proprietăţi. Este folosită şi în unele LAN-uri fără fir. Vom reveni la discuţia despre spectrul larg mai târziu în acest capitol. Pentru o istorie fascinantă şi detaliată a comunicaţiilor în spectru larg, vezi (Scholtz, 1982). Pentru moment, vom considera că toate transmisiunile folosesc o bandă de frecvenţă îngustă. Vom discuta despre modul în care diverse părţi ale spectrului electromagnetic din fig. 2-11 sunt folosite, începând cu banda radio.
2.3.2
Transmisia radio
Undele radio sunt uşor de generat, pot parcurge distanţe mari, penetrează cu uşurinţă zidurile clădirilor, fiind larg răspândite în comunicaţii, atât interioare cât şi exterioare. De asemenea, undele radio sunt omnidirecţionale, ceea ce înseamnă că se pot propaga în orice direcţie de la sursă, deci nu este nevoie de o aliniere fizică a transmiţătorului cu rcccptorul. Uneori această proprietate de propagare omnidirecţională este bună, alteori nu. în anii ‘70, General Motors a dccis să ccliipeze noile sale Cadillac-uri cu un calculator care să prevină blocarea frânelor. Atunci când şoferul apăsa pedala de frână, calculatorul frâna treptat, în loc să preseze frâna complet. Intr-o zi frumoasă dc vară, un ofiţer de pe o autostradă din Ohio a început să-şi folosească staţia radio mobilă pentru a chema sediul central şi deodată un Cadillac situat în apropriere a început să se cabreze ca un cal sălbatic. Atunci când ofiţerul a oprit maşina, şoferul a pretins că cl nu a făcut nimic, dar maşina a înnebunit. în cele din urmă a reieşit că lucrurile se petreceau după un anumit tipar: maşinile Cadillac erau scăpate uneori de sub control, dar numai pe marile autostrăzi din Ohio şi numai când o patrulă de poliţie era în zonă. Pentru o foarte lungă perioadă de timp, cci de la General Motors nu au înţeles de ce maşinile mergeau foarte bine în toate celelalte state, ca şi pe străzile secundare din Ohio. După îndelungi căutări au descoperit că, în Cadillac, cablajul forma o antenă foarte bună pentru frecvenţa folosită de noul sistem radio al poliţiei rutiere din Ohio. Proprietăţile undelor radio sunt dependente de frecvenţă. La frecvenţe joase, undele radio se propagă bine prin obstacole, dar puterea semnalului scade mult odată cu distanţa de la sursă, aproximativ cu l/r2 în aer. La frecvenţe înalte, undele radio tind să se propage în linie dreaptă şi să ricoşeze din obstacole. De asemenea, sunt absorbite de ploaie. Mai mult, toate frecvenţele radio sunt supuse la interferenţe datorate motoarelor şi altor echipamente clcctrice.
94
NIVELUL FIZIC
CAP. 2
Datorită capacităţii undelor radio de a se propaga pe distanţe mari, interferenţa dintre utilizatori devine o problemă. Acesta este principalul motiv pentru care toate guvernele acordă cu foarte mare atenţie licenţele pentru utilizatorii de transmiţătoare radio, cu o singură excepţie (discutată mai jos). In benzile de frecvenţă foarte joasă (VLF), joasă (LF) şi medie (MF), undele radio se propagă la sol, după cum este ilustrat în fig. 2-12(a). Aceste unde pot fi detectate pe distanţe de până la aproximativ 1000 Km pentru frecvenţele mai joase şi pe distanţe mai mici pentru cele mai înalte. Pentru difuzarea undelor radio AM se foloseşte banda MF, acesta fiind motivul pentru care staţia radio AM din Boston nu poate fi auzită cu uşurinţă în New York. Undele radio în această bandă trec uşor prin clădiri, fiind astfel posibilă utilizarea radiourilor portabile în spaţii interioare. Problema principală care apare la comunicaţia de date la aceste frecvenţe este lărgimea mică a benzii pe care o oferă [vezi ecuaţia (2-2)]. în benzile de frecvenţă înaltă şi foarte înaltă, undele de la sol tind să fie absorbite de pământ. Totuşi, undele care ating ionosfera (un strat de particule care înveleşte atmosfera la o înălţime de 100 până la 500 Km), sunt refractate de aceasta şi trimise înapoi spre pământ, după cum arată fig.
Undă la suprafaţa pământului
212(b). în anumite condiţii atmosferice, semnalele pol parcurge acest drum de mai multe ori.
^ Suprafaţa pământului (a) Fig. 2-12. (a) în benzile VLF, VF şi MF, undele radio urmăresc curbura pământului, (b) în banda HF undele
revin din ionosferă. Operatorii radio amatori folosesc aceste benzi pentru a realiza convorbiri la mare distanţă. De asemenea, comunicaţiile armatei se desfăşoară în benzile de frecvenţe înalte şi foarte înalte. 2.33 Transmisia prin microunde Peste 100 MHz, undele se propagă în linii aproximativ drepte şi pot fi, din acest motiv, direcţio- nate. Concentrând toată energia într-un fascicol îngust, cu ajutorul unei antene parabolice (ca o antenă de satelit obişnuită) rezultă o valoare mult mai ridicată a raportului semnal-zgomot, dar antenele care transmit şi cele care recepţionează trebuie să fie aliniate cu precizie una cu alta. în plus, faptul că aceste unde sunt orientate permite ca mai multe transmiţătoare să fie aliniate şi să comunice cu mai multe receptoare aflate în linie, fară interferenţe, cu condiţia să se respecte câteva reguli de distanţare. înaintea fibrelor optice, microundele au format, timp de decenii, inima sistemului telefonic de comunicaţie pe dislanţe mari. De fapt, MCI, una dintre primele competitoare AT&T, şi-a construit întregul sistem prin comunicaţii cu microunde, din turn în turn, Ia distanţe de zeci de kilometri între ele. Chiar şi numele companiei reflectă acest lucru (MCI înseamnă Microwave Communications, Inc.). MCI a trecut apoi pe fibră şi a fuzionat cu WorldCom. Datorită faptului că microundele se propagă în linii drepte, dacă turnurile sunt foarte depărtate, atunci în calea lor stă chiar Pământul (gândiţi-vă la o legătură între San Francisco şi Amsterdam). în consecinţă trebuie instalate repetoare din loc în loc. Cu cât turnurile sunt mai înalte, cu atât distanţa
SEC. 2.3
COMUNICAŢIILE FĂRĂ FIR
95
dintre repetoare este mai mare. Distanţa dintre repetoare creşte direct proporţional cu radicalul înălţimii turnului. Pentru turnuri cu o înălţime de 100 m, distanţa dintre repetoare poate fi de 80 km. Spre deosebire de undele radio de frecvenţe joase, microundele nu trec cu uşurinţă prin zidurile clădirilor. în plus, cu toate că unda poate fi bine direcţionată la transmiţător, apare o divergenţă în spaţiu. Unele unde pot fi refractate de straturile atmosferice joase şi pot întârzia mai mult decât undele directe. Undele întârziate pot sosi defazate faţă de unda directă, anulând astfel semnalul. Acest efect este numit atenuare multi-căi (multipath fading) şi constituic deseori o problemă serioasă. Este dependentă de vreme şi de frecvenţă. Unii operatori păstrează nefolosit un procent de 10 la sută din canalul propriu pentru a putea comuta pe acesta atunci când atenuarea multi-căi le anulează temporar anumite benzi de frecvenţă. Cererea de benzi este din ce în ce mai mare şi duce operatorii către frecvenţe tot mai înalte. Benzi de până la 10 GHz sunt acum uzuale, dar la aproape 8 GHz apare o nouă problemă: absorbţia de către apă. Aceste unde au lungimi de doar câţiva centimetri şi sunt absorbite de ploaie. Acest efect ar fi potrivit pentru cineva care ar fi încercat să construiască un imens cuptor cu microunde în aer liber, dar pentru comunicaţii este o problemă dificilă. La fel ca şi în cazul atenuării multi-căi, singura soluţie posibilă este întreruperea legăturilor acolo unde plouă şi găsirea unei rute alternative. Comunicaţiile cu microunde sunt atât de larg folosite de telefonia pe distanţe mari, telefoanele celulare, televiziune şi altele, încât a apărut o criză în ceea ce priveşte spectrul. Microundele au mai multe avantaje semnificative faţă de fibră. Cel mai important avantaj este că nu sunt necesare drepturi de acces la drum, cumpărând un mic teren la fiecare 50 Km şi montând un turn pe el, se poate ocoli sistemul telefonic şi se poate realiza o comunicare directă. Astfel a reuşit MCI să pornească atât de rapid ca o companie de telefoane pe distanţe mari. (Sprint a aplicat o altă tactică : a fost formată de Southern Pacific Railroad (căile feroviare sudice), care deja deţinea destule drepturi de acces şi tot ce a avut de făcut a fost să îngroape fibra lângă şine). Comunicaţiile cu microunde, prin comparaţie cu alte medii de transmisie, sunt ieftine. Preţul ridicării a două turnuri simple (doi stâlpi înalţi asiguraţi cu patru cabluri) şi de montare a unei antene pe fiecare turn, poate fi mai mic decât preţul îngropării a 50 de Km de fibră intr-o zonă urbană foarte populată sau peste un munte şi poate fi mai mic decât costul închirierii fibrei de la o companie telefonică, mai ales atunci când acestea nu au plătit încă integral cuprul care a fost înlocuit cu fibră.
Politica din domeniul spectrului electromagnetic Pentru a preveni haosul general, există convenţii naţionale şi internaţionale care reglementează modul de folosire al frecvenţelor - cine ce frecvenţă foloseşte. Deoarece toată lumea doreşte o rată de transfer cât mai mare, toată lumea doreşte cât mai mult din spectru. Guvernele naţionale alocă spectru pentru radio AM şi FM, televiziune, telefoane mobile, ca de altfel şi pentru companii telefonice, poliţie, marină, navigatori, armată, guvern şi mulţi alţi clienţi competitori. La nivel internaţional agenţia ITU-R (WARC) încearcă să coordoneze această alocare, astfel încât să poată fi construite dispozitive care să funcţioneze în diverse ţări. Totuşi, ţările nu sunt obligate să respecte recomandările 1TU, iar FCC (Comisia Federală de Comunicaţii), comisia care se ocupă cu alocarea de spectru în Statele Unite, a respins de câteva ori recomandările ITU (de obicei pentru că acestea cercau unui grup puternic din punct de vedere politic să renunţe la o parte din spectru). Chiar şi atunci când o parte din spectru a fost alocată unei anumite utilizări, cum ar fi telefonia mobilă, apare discuţia legată de modul de alocare a frecvenţelor către companiile de telecomunicaţii. în trecut, erau utilizaţi trei algoritmi. Cel mai vechi algoritm, adesea denumit concursul de frumuseţe, cerea fiecărei companii de telecomunicaţii să explice de ce propunerea sa serveşte cel mai bine interesul public. Oficialii guvernului decideau apoi care dintre poveşti le place cel mai mult. Posibilitatea ca unul dintre oficialii să premieze compania favorită cu o proprietate valorând miliarde de dolari ducea adesea la mită, corupţie, nepotism şi chiar mai rău. Mai mult, chiar şi un oficial cinstit al guvernului, căruia i se părea că o companie străină ar face o treabă mai bună decât companiile naţionale, ar fi avut de dat multe explicaţii. Această observaţie a condus la algoritmul 2: organizarea unei loterii între companiile interesate, fn acest
96
NIVELUL FIZIC
CAP. 2
caz, problema este că pot participa la loterie chiar şi companii care nu au nici o intenţie de utilizare a spectrului. Să zicem că un restaurant cu servire rapidă sau un lanţ de magazine de pantofi ar câştiga: acesta ar putea revinde spectrul unei companii de telecomunicaţii, cu un profit imens şi fără riscuri. Scandaluri furtunoase datorate unor astfel de situaţii alarmante, deşi aleatoare, au dus la critici severe din partea multora, ceea ce a condus la algoritmul 3: licitarea benzii de frecvenţă şi atribuirea ei celui care dă mai mult. în anul 2000, când Anglia a licitat frecvenţele necesare pentru generaţia a treia de sisteme mobile, se aşteptau să primească înjur de 4 miliarde de dolari. De fapt, au primit 40 de miliarde de dolari, deoarece companiile de telecomunicaţii au intrat într-o frenezie molipsitoare, fiind speriate de moarte că vor rata trenul telefoniei mobile. Acest eveniment a declanşat lăcomia guvernelor din jur şi le-a inspirat să organizeze propriile licitaţii. A funcţionat, dar a şi lăsat unele dintre companiile de telecomunicaţii cu foarte multe datorii, aproape de faliment. Chiar şi în cele mai bun variante, vor trccc mulţi ani până când acestea vor reuşi să acopere taxele de licenţă. O modalitate cu totul diferită de a aborda problema alocării frecvenţelor este să nu fie alocate în nici un fel. Toată lumea este lăsată să transmită cât doreşte, fiind reglementată doar puterea folosită, astfel încât staţiile să aibă o rază de acţiune suficient de scurtă ca să nu interfereze între ele. în consecinţă, cele mai multe guverne au pus deoparte câteva benzi de frecvenţă, numite benzi ISM (Industriale, Ştiinţifice, Medicale) pentru utilizare nelicenţiată. Sistemele de deschidere de uşi de garaj, telefoane fără fir, jucării telecomandate, mousc-uri fără fir, şi multe alte aparate casnice fără fir folosesc benzile ISM. Pentru a minimiza interferenţa între aceste dispozitive necoordonate, FCC a impus ca toate dispozitivele din benzile ISM să folosească tehnici de spectru larg. Reguli asemănătoare sunt aplicate şi în alte ţări. 835 Lărgime de 26 125 bandă _MHz_ __ ______ MHz ______
iti i.$ _______ _____ _
Frecv. 902 928 MHz MHz
2.4 GHz
2.4835 GHz
5.735 GHz
5.860 GHz
Fig. 2-13. Benzile ISM în Statele Unite. Localizarea benzilor ISM diferă oarecum de la o ţară la alta. în Statele Unite, de exemplu, dispozitivele a căror putere este sub 1 Watt pot folosi benzile din fig. 2.13 fără a cere licenţă FCC. Banda 900Mhz este cea mai bună, dar este aglomerată şi nu este disponibilă în întreaga lume. Banda 2.4GHz este disponibilă în cele mai multe ţări, dar este supusă interferenţei cu instalaţiile radar sau cuptoarele cu microunde. Bluetooth şi unele dintre LAN-urile fără fir conforme 802.11 operează pe această bandă. Banda 5.7GHz este nouă şi relativ nedezvoltată, astfel că echipamentele pentru ea sunt scumpe; dar pentru că 802.11 o foloseşte, va deveni rapid mai populară.
SEC. 2.3
2.3.4
COMUNICAŢIILE FĂRĂ FIR
97
Undele infraroşii şi milimetrice
Undele infraroşii şi milimetrice neghidate sunt larg folosite pentru comunicaţiile pe distanţe mici. Telecomenzile pentru televizoare, aparate video sau combine muzicale folosesc comunicaţiile în infraroşu. Ele sunt relativ direcţionale, ieftine şi uşor de construit, dar au un dezavantaj major: nu penetrează obiectele solide (încercaţi să staţi între telecomandă şi televizor şi vedeţi dacă telecomanda mai dă comenzi televizorului). în general, pe măsură ce ne deplasăm de la undele radio lungi către lumina vizibilă, undele se comportă din ce în ce mai mult ca lumină şi din ce în ce mai puţin ca unde radio. Pe de altă parte, faptul că razele infraroşii nu trec prin obiecte constituie un avantaj. Aceasta înseamnă că un sistem cu infraroşii dintr-o cameră a unei clădiri nu va interfera cu un sistem similar situat în camerele sau clădirile adiacente: nu poţi controla televizorul vecinului tău cu telecomanda ta. Mai mult, sistemele de protecţie cu radiaţii infraroşii asigură o mai bună protecţie împotriva interceptărilor în raport cu sistemele radiofonice, tocmai din acest motiv. Datorită acestor motive, pentru operarea unui sistem cu infraroşii nu este necesară procurarea unei licenţe, spre deosebire de sistemele radiofonice, care trebuie să deţină o licenţă.
23.5
Transmisia undelor luminoase
Semnalele optice neghidate au fost folosite secole întregi. înaintea faimoasei lui călătorii, Paul Revere a folosit semnalizarea optică binară de la Old North Church. O aplicaţie mai modernă este conectarea reţelei locale între două clădiri prin intermediul laserelor montate pe acoperişurile acestora. Semnalizarea optică folosind laserul este inerent unidirecţională, deci Fiecare clădire are nevoie de propriul ei laser şi de propria ei fotodiodă. Această schemă oferă o bandă foarte largă la un cost foarte redus. De asemenea, este uşor de instalat şi, spre deosebire de microunde, nu necesită o licenţă FCC. Puterea laserului, un fascicol foarte îngust, este aici o slăbiciune. îndreptarea unui fascicol de lumină de lmm lăţime către o ţintă de lăţimea unui ac cu gămălie aflată la 500 de metri depărtare necesită o tehnică de vârf. De obicei sunt folosite lentile pentru o uşoară defocalizare a fascicolului. Un alt dezavantaj este că fascicolul laser nu penetrează ploaia şi ceaţa groasă, dar în mod normal ele funcţionează bine în zilele însorite. Totuşi, autorul a participat odată într-un hotel modem din Europa la o conferinţă la care organizatorii conferinţei s-au gândit să pună la dispoziţie o cameră plină cu terminale, în care participanţii să-şi poată citi poşta electronică în timpul prezentărilor plictisitoare. Deoarece PTT-ul local nu dorea să instaleze un număr mare de linii telefonice doar pentru 3 zile, organizatorii au montat pe acoperiş un laser orientat către clădirea departamentului de calculatoare al universităţii de calculatoare aflată la o distanţa de câţiva kilometri. Ei l-au testat cu o noapte înainte şi totul a decurs perfect. în dimineaţa următoare, într-o zi însorită, la ora 9, legătura a căzut şi a rămas nefuncţională toata ziua. Seara, organizatorii au testat-o din nou cu atenţie şi a funcţionat încă o dată perfect. Acelaşi lucru s-a întâmplat încă două zile la rând. După conferinţă, organizatorii au descoperit problema. Căldura datorată soarelui din timpul zilei a determinat naşterea unor curenţi de convecţie din acoperişul clădirii, ca în fig. 2-14. Acest aer turbulent a deviat fascicolul şi l-a făcut să oscileze în jurul detectorului. Această „vedere” atmosferică face ca stelele să pâlpâie (acesta este motivul pentru care astronomii îşi pun telescoapele pe vârful munţilor - ca să fie cât se poate de mult deasupra atmosferei). Efectul respectiv este responsabil şi pentru „tremurul” şoselei într-o zi însorită şi a imaginii vălurite deasupra unui radiator fierbinte.
98
NIVELUL FIZIC
CAP. 2
/ M' Fascicolul laser ratează detectorul Fotodetector - Laser
Regiune de
Fig. 2-14. Curenţii de convecţie pot interfera cu sistemele de comunicaţie prin laser. Aici este prezentat un sistem bidirecţional, cu două lasere.
2.4 SATELITI DE COMUNICAŢIE 9
9
In anii 1950 şi la începutul anilor 1960, oamenii au încercat să construiască sisteme de comunicaţie pe baza reflectării semnalelor de către baloanele meteorologice metalizate. Din nefericire, semnalele recepţionate erau prea slabe ca să poată fi folosite practic la ceva. Apoi, Marina S.U.A. a observat pe cer un fel de balon meteorologic permanent - Luna - şi a construit, pe baza reflectării semnalelor de către Lună, un sistem operaţional pentru comunicaţii navă-ţărm. Progresul în domeniul comunicaţiilor celeste a trebuit să mai aştepte până când a fost lansat primul satelit de comunicaţii, în 1962. Principala diferenţă între un satelit artificial şi unul natural este aceea că satelitul artificial poate amplifica semnalele înainte de a le transmite înapoi, transformând ceea ce era doar o curiozitate într-un sistem puternic de comunicaţie. Sateliţii de comunicaţie au câteva proprietăţi interesante, care îi fac tentanţi pentru multe aplicaţii. Un satelit de comunicaţie poate fi gândit ca un mare repetor de microunde, aflat în cer. Acesta conţine mai multe dispozitive de recepţie-transmisie automata (transpordcr); fiecare dintre ele ascultă pe o anume porţiune din spectru, amplifică semnalul recepţionat şi apoi îl redifuzează pe o altă frecvenţă, pentru a evita interferenţa cu semnalul recepţionat. Unda descendentă poate fi difuzată, acoperind astfel o fracţiune substanţială din suprafaţa Pământului sau poate fi concentrată, caz în
SATELIŢI DE COMUNICAŢIE
SEC. 2.4
99
care va acoperi numai o zonă de câteva sute de kilometri în diametru. Acest mod de operare este cunoscut şi sub numele de ţeava îndoită (bent pipe). Conform legii lui Kepler, perioada de rotaţie a unui satelit variază cu puterea 3/2 a razei orbitei. Cu cât un satelit este mai sus, cu atât este mai lungă perioada. în apropierea suprafeţei Pământului, perioada este dc aproximativ 90 de minute. în consecinţă, sateliţii cu orbita mai mică dispar din raza vizuală destul de repede, astfel că mulţi dintre ci sunt necesari pentru a oferi acoperire continuă. La o altitudine de aproximativ 35.800 km, perioada unui satelit este de 24 de ore. La o altitudine de aproximativ 384.000 km, perioada unui satelit este de aproape o lună, aşa după cum poate confirma oricine care a urmărit luna în mod regulat. Perioada unui satelit este importantă, dai’ nu este singurul criteriu în determinarea locului în care va fi plasat satelitul. Un alt criteriu este prezenţa centurilor lui Van Allen, straturi dc particule foarte încărcate prinse în câmpul magnetic al pământului. Aceşti factori conduc la formarea a trei regiuni în care sateliţii pot fi plasaţi în siguranţă. Aceste regiuni şi unele dintre proprietăţile lor sunt ilustrate în fîg. 2-15. în continuare vom descrie pe scurt sateliţii care sunt plasaţi în fiecare dintre aceste regiuni. întârziere (ms) Sateliţi necesari Tip GEO
270
MEO
35-85
10
1-7
50
Centura Van Allen Superioară -
cn Centura Van Allen Inferioară
LEO
Fig. 2-15. Sateliţii de comunicaţie şi câteva dintre proprietăţile lor, inclusiv altitudinea, întârzierea pentru un drum dus-întors şi numărul de sateliţi necesari pentru acoperirea globală. 2.4.1
Sateliţi geostaţionari
în 1945, scriitorul de proză ştiinţifico-fantastică Arthur C. Qarke a calculat că un satelit aflat Ia altitudinea de 35.800 km pe o orbită ecuatorială circulară apare ca staţionar pe cer, astfel încât nu este nevoie să fie urmărit (Clarke, 1945). El a mers mai departe şi a descris un sistem complet de comunicare care folosea aceşti sateliţi geostaţionari, inclusiv orbitele lor, panourile solare, frecvenţele radio şi procedurile de lansare. Din păcate, a ajuns Ia concluzia că sateliţii nu erau o soluţie practică datorită imposibilităţii de a lansa pe orbită amplificatoare cu tub catodic, acestea fiind fragile şi mari consumatoare de energie, aşa că nu a mai continuat pe aceasta idee, deşi a scris câteva povestiri ştiinţifico-fantastice bazate pe ea.
1(M)
NIVELUL FIZIC
CAP. 2
Inventarea tranzistorului a schimbat toate acestea şi a fost lansat primul satelit artificial pentru comunicaţii, Telstar, în iulie 1962. Din acel moment, sateliţii pentru comunicaţii au devenit o afacere de miliarde de dolari şi totodată singurul aspect al explorării spaţiului cosmic care a devenit foarte profitabil. Aceşti sateliţi care zboară la altitudini mari sunt adeseori numiţi sateliţi GEO (Geostationary Earth Orbit, rom: cu orbită geostaţionară terestră). Pentru a evita interferenţa, în condiţiile tehnologiilor actuale, nu este recomandat să existe sateliţi mai apropiaţi de 2 grade în planul ecuatorial de 360 grade. La o spaţiere de 2 grade, pot exista pe cer, la un moment dat, doar 360/2=180 sateliţi de comunicaţie geostaţionari. Totuşi, fiecare trans- ponder poate folosi mai multe frecvenţe şi polarizări pentru a creşte lungimea de bandă disponibilă. Pentru a preveni un haos total pe cer, alocarea locurilor pe orbită este făcută de către ITU. Acest proces este mult influenţai de politică, existând ţări de abia ieşite din epoca de piatra care îşi cer locurile „lor” pe orbită (pentru a le închiria celui care oferă mai mult). Alte ţări susţin că drepturile naţionale de proprietate nu se extind până la lună, precum şi că nici o ţară nu are dreptul să revendice locurile de pe orbita de deasupra teritoriului său. Pentru a pune paie pe foc, telecomunicaţiile comerciale nu reprezintă singurul domeniu interesat de aceşti sateliţi. Canalele de televiziune, guvernele şi armata doresc şi ele câte o felie din „plăcinta” reprezentată de orbita terestra. Sateliţii moderni pot fi destul de mari, cântărind până la 4000 de kg şi consumând câţiva KW de energie electrică produsă de panourile solare. Efectele forţelor de gravitaţie solare, lunare şi planetare tind să îi deplaseze din locurile şi orientările prevăzute pentru ei pe orbită, efect contracarat de motoarele de rachetă cu care sunt echipaţi. Această activitate de reglare fină se numeşte menţinerea staţiei. Cu toate acestea, când combustibilul pentru motoare se epuizează, de obicei în vreo 10 ani, satelitul pluteşte în derivă şi se roteşte neajutorat, astfel încât trebuie să fie scos din funcţionare, in cele din urma, orbita sa se deformează şi satelitul reintră în atmosfera unde este distrus prin ardere sau, uneori, se prăbuşeşte pe pământ. Alocarea locurilor pe orbită nu este singurul măr al discordiei. Alocarea frecvenţelor este de asemenea un motiv de a se isca noi conflicte, deoarece transmisiile descendente de la sateliţi interferează cu utilizatorii dispozitivelor de comunicaţie prin microunde deja existente. Prin urmare, ITU a alocat anumite benzi de frecvenţă utilizatorilor comunicaţiilor prin sateliţi. Cele mai importante benzi comerciale sunt listate în fig. 216. Banda C a fost desemnată iniţial pentru traficul comercial prin sateliţi. în banda C sunt asigurate două domenii de frecvenţă, cea mai mică pentru traficul descendent (dinspre satelit), iar cea superioară pentru traficul ascendent (către satelit). Pentru o conexiune full-duplex este necesar un canal în ambele sensuri. Aceste benzi sunt deja supraaglomerate, deoarecc sunt folosite şi de purtătoarele obişnuite pentru legăturile terestre pe microunde. Benzile L şi S au fost adăugate prin acordul internaţional din anul 2000. Oricum, şi ele sunt înguste şi aglomerate. Legătura descendentă
Legătura ascendenta
Lăţime de bandă
Probleme
L
1.5 GHz
1.6 GHz
15 MHz
S
1.9 GHz
2.2 GHz
70 MHz
C Ku Ka
4.0 GHz 11GHz 20 GHz
6.0 GHz 14 GHz 30 GHz
500 MHz 500 MHz 3500 MHz
Lăţime mică de bandă; aglomerata Lăţime mică de bandă; aglomerata Interferenţe terestre Ploaia
Banda
Fig. 2-16. Principalele benzi de satelit.
Ploaia; costul echipamentelor
SEC. 2.4
SATELIŢI DE COMUNICAŢIE
101
Următoarea bandă, cea mai înaltă, disponibilă pentru companiile comerciale de telecomunicaţii, este banda Ku (K under, rom: sub K). Această bandă nu este (încă) congestionată şi - Ia aceste frecvenţe - sateliţii pot fi poziţionaţi la o distanţă de un grad. Totuşi, există şi aici o altă problemă: ploaia. Apa este un absorbant excelent al acestor microunde scurte. Din fericire, furtunile torenţiale sunt de obicei localizate şi, prin urmare, folosind mai multe staţii terestre separate de distanţe mari (în loc de una singură), problema poate fi evitată cu preţul surplusului de antene, cabluri şi electronică necesare pentru a comuta rapid între staţii, l-ăţimea de bandă pentru Ka (K above, rom: peste K) a fost şi ea alocată pentru traficul comercial prin satelit, dar echipamentele necesare pentru folosirea ei sunt încă foarte scumpe. In plus faţă de aceste benzi comerciale, există multe benzi guvernamentale şi militare. Un satelit modern arc înjur de 40 dc transpondere, fiecare cu o lăţime de bandă de 80 MHz. Un transponder dc 50 Mbps poate fi folosit pentru a codifica un singur flux de date de 50 Mbps, 800 canale vocale digitale de 64 Kbps sau diverse alte combinaţii. De obicci, fiecare transponder funcţionează ca un repetor, dar, mai nou, sateliţii au şi o anumita capacitate de procesare integrată, permiţând operaţii mai sofisticate, l-a sateliţii mai vechi, împărţirea transponderilor pe canale s-a făcut A
static, prin împărţirea lărgimii de bandă în benzi fixe de frecvenţă (FDM). In prezent, fiecare fascicol de transponder este împărţit în intervale dc timp, cu mai mulţi utilizatori comunicând pe rând. Vom studia aceste două tehnici (multiplexarea cu divizare în frecvenţă şi multiplexarea cu divizare în timp) într-o sccţiune următoare din acest capitol. Primii sateliţi geostaţionari aveau un singur fascicol spaţial care ilumina aproximativ 1/3 din suprafaţa Pământului, suprafaţă numită rază de acţiune. Odată cu scăderea masivă a preţului, dimensiunii şi cerinţelor de putere ale microelectronicii, a devenit posibilă o strategic de difuzare mai complexă. Fiecare satelit este echipat cu antene şi transpondere multiple. Fiecare fascicol descendent poate fi focalizat pe o arie geografică mică şi prin urmare pot avea loc simultan, transmisii ascendente şi descendente multiple. Aceste aşa numite fascicole punctuale sunt în mod obişnuit de formă eliptică şi pot avea până la câteva sute de km în diametru. Un satelit de comunicaţii pentru Statele Unite are în mod normal un singur fascicol larg pentru cele 48 de state alăturate, plus fascicole punctuale pentru Alaska şi Hawaii. O nouă realizare în lumea comunicaţiilor prin satelit o constituie dezvoltarea microstaţiilor de cost scăzut, denumite şi VSAT-uri (Very Small Aperture Terminals, rom: terminale cu deschidere foarte mică) (Abramson, 2000). Aceste mici terminale au antene de 1 metru sau mai mici (fata de cei lOm ai unei antene GEO standard) şi pot emite cu o putere de aproximativ 1 Watt. Legătura ascendentă este în general bună pentru 19.2Kbps, dar cea descendentă este mai mare, deseori de 512 Kbps. Televiziunea cu difuzare directă prin satelit foloseşte această tehnologic pentru transmisia uni-direcţională. în multe sisteme VSAT, microstaţiile nu au suficientă putere pentru a comunica direct între ele (prin intermediul satelitului, desigur). în schimb, se foloseşte o staţie terestră specială, un hub, cu o antenă mare, dc câştig ridicat, pentru a retransmite traficul dintre VSAT-uri, aşa cum este prezentat în fig. 2-17. In acest fel, atât emiţătorul cât şi receptorul dispun dc o antenă mare şi de un amplificator puternic. Compromisul constă într-o întârziere mai mare în schimbul unor staţii mai ieftine Ia utilizatorul final. VSAT-urile au un potenţial ridicat în special pentru zonele rurale. Nu este un lucru foarte cunoscut, dar peste jumătate din populaţia globului locuieşte la peste o ora de mers pe jos de cel mai apropiat post telefonic. A instala fire tclefonice până la fiecare dintre miile de sate mici este mult peste bugetele majorităţii guvernelor din lumea a treia, dar instalarea de antene VSAT de 1 metru alimentate dc celule solare este o soluţie adeseori posibilă. VSAT-urile oferă o tehnologie care va conecta întreaga lume.
102
NIVELUL FIZIC ,SAT
Hub
CAP. 2 Satelit de comunicaţii
Fig. 2-17. VSAT-uri care folosesc un hub. Sateliţii de comunicaţie au câteva proprietăţi prin care se deosebesc radical de legăturile terestre punct-la-punct. Ca un prim aspect, cu toate că semnalele spre şi dinspre satelit se propagă cu viteza luminii (aproximativ 300.000 km/sec), lungimea semnificativă a traseului dus-întors introduce o întârziere substanţială pentru sateliţii GEO. Funcţie de distanţa dintre utilizator şi staţia terestră, precum şi de înălţimea satelitului deasupra orizontului, timpul de propagare este între 250 şi 300 msec. O valoare uzuală este de 270 msec (540 msec pentru un sistem VSAT cu un hub). Trebuie spus, pentru comparaţie, că legăturile terestre prin microunde au o întârziere de propagare în jur de 3 josec/km, iar legăturile pe cablu coaxial sau fibră optică au o întârziere de aproximativ 5(osec/km. Transmisia prin cel de-al doilea mediu este mai înceată decât prin primul deoarece semnalele electromagnetice se propagă mai repede prin aer decât prin materiale solide. O altă proprietate importantă a sateliţilor este aceea că ei sunt în mod inerent sisteme cu difuzare. Traasmiterea unui mesaj către miile de staţii din raza de acţiune a unui transponder costă tot atât de mult cât pentru o singură staţie. Pentru unele aplicaţii, această proprietate este foarte utilă. Dc exemplu, se poate imagina un satelit difuzând pagini Web populare către memoriile cache ale unui mare număr de computere răspândite pe o arie largă. Chiar şi atunci când difuzarea poate fi simulată folosind linii punct-la-punct, difuzarea prin satelit poate fi mult mai ieftină. Pe de altă parte, din punct de vedere al securităţii şi confidenţialităţii, sateliţii sunt un dezastru complet: oricine poate asculta orice. Criptarea este esenţială dacă securitatea este o necesitate. Sateliţii au şi proprietatea că preţul transmisiei unui mesaj este independent de distanţa parcursă. Un apel peste ocean nu costă mai mult decât un apel peste stradă. Sateliţii au rate de eroare foarte scăzute şi pot fi instalaţi aproape instantaneu, un considerent major pentru comunicaţiile militare. I
SATELIŢI DE COMUNICAŢIE
SEC. 2.4
2.4.2
103
Sateliţi de altitudine medie
La altitudini mult mai joase, între cele două centuri Van Allen, găsim sateliţii MEO (Mcdium- Earth Orbit, rom: orbită terestră medie). Văzuţi dc pe Pământ, aceşti sateliţi se deplasează lent în plan longitudinal, iar un ocol în jurul Pământului durează cam de 6 ore. în consecinţă, ei trebuie urmăriţi în timp ce trec pe deasupra Pământului. Având altitudine mai mică decât GEO, au o rază de acţiune mai mică pe Pământ şi este nevoie de emiţătoare mai puţin puternice pentru a comunica cu ei. Deocamdată nu sunt folosiţi pentru comunicaţii, deci nu vor mai fi examinaţi aici. Cei 24 de sateliţi GPS (Global Positioning System, rom: sistem de poziţionare global) care orbitează la aproximativ 18.000 km sunt exemple de sateliţi MEO. 2.43 Sateliţi de joasă altitudine Coborând în altitudine, ajungem la sateliţii LEO (Low-Earth Orbit, rom: orbită terestră joasă). Datorită mişcării lor rapide, este nevoie de mulţi astfel de sateliţi pentru a realiza un sistem complet. Pe de altă paite, datorită faptului că sateliţii sunt atât de aproape de Pământ, staţiile terestre nu au nevoie de multă putere, iar întârzierea dus-întors este numai de câteva milisecunde. In acest paragraf vom examina trei exemple, două concepute pentru comunicaţiile de voce şi unul pentru seivicii Internet.
Iridium Aşa cum am menţionat şi mai sus, în primii 30 de ani ai erei sateliţilor, sateliţii de joasă altitudine au fost rareori folosiţi, deoarece ei apar şi dispar destul de repede din câmpul vizual. în 1990, Motorola a declanşat o acţiune în acest domeniu prin punerea la punct a unei noi aplicaţii. Motorola a obţinut acordul FCC în vederea lansării a 77 de sateliţi de joasă altitudine pentru proiectul Iridium (elementul 77 este Iridium). Planul a fost mai târziu revăzut, astfel încât să se utilizeze numai 66 de sateliţi şi, ca urmare, proiectul ar fi trebuit să fie redenumit Dysprosium (elementul 66), dar probabil că sună prea mult ca o boală. Ideea era că în momentul în care un satelit dispare din câmpul vizual, un alt satelit ar putea să-i ia locul. Această propunere a generat printre celelalte companii de telefoane o poftă nebună: dintr-o dată, toată lumea dorea să lanseze un lanţ de sateliţi de joasă altitudine. După şapte ani în care s-au adunat parteneri şi finanţări, sateliţii Iridium s-au lansat în 1997. Serviciile de comunicaţii au început în noiembrie 1998. Din păcate, cererea comercială pentru telefoane mari şi grele, chiar dacă acestea comunicau prin satelit, era neglijabilă deoarece reţeaua de telefonie mobilă crescuse spectaculos din 1990. In consecinţă, Iridium nu era profitabil şi a fost forţat să intre în faliment în august 1999, într-unul din cele mai spectaculoase fiasco-uri de corporaţii din istorie. în consecinţă, sateliţii şi celelalte bunuri (în valoare de 5 miliarde $) au fost cumpărate de un investitor cu 25 milioane $ intr-un fel de vânzare cu reducere dintr-un garaj extraterestru. Serviciul Iridium a fost repornit în martie 2001. Scopul principal al sistemului Iridium era (şi este) să furnizeze servicii mondiale de telecomunicaţie, folosind dispozitive portabile care să comunice direct cu sateliţii Iridium. Sistemul furnizează servicii vocale, de date, paging, fax şi navigare, oriunde pe pământ, apă şi aer. Printre clienţi se numără industriile maritimă, aviatică şi de explorare de petrol, ca şi persoanele care călătoresc în părţi ale lumii lipsite de o infrastructură de telecomunicaţii (de exemplu deserturi, munţi, jungle şi unele ţări din lumea a treia).
104
(a)
NIVELUL FIZIC
CAP. 2
(b)
Fig. 2-18. (a) Sateliţii Iridium formează şase coliere în jurul Pământului, (b) 1628 de celule mişcătoare acoperă Pământul. Sateliţii Iridium sunt poziţionaţi la o altitudine de 750 km pe orbite polare circulare. Ei sunt aranjaţi în formă de coliere nord-sud, cu un satelit la fiecare 32 grade latitudine. După cum se sugerează în fig. 2-18(a), cu şase coliere de sateliţi s-ar putea acoperi întregul Pământ. Cei care nu cunosc prea multe despre chimic, se pot gândi la această dispunere ca la un atom de dysprosium foarte mare, având Pământul pe post de nucleu şi sateliţii pe post de electroni. După cum este prezentat în fig. 2-18(b), fiecare satelit va avea cel mult 48 de raze punctuale, cu un total de 1628 celule pe suprafaţa Pământului. Fiecare satelit are o capacitate de 3840 de canale, sau 253.440 în total. O parte din acestea sunt folosite pentru paging şi navigare, altele pentru date şi voce. O proprietate interesantă a sistemului Iridium este aceea că o comunicaţie între clienţi aflaţi la distanţă are loc în spaţiu, cu un satelit transmiţând date la altul, cum este ilustrat în fig. 2-19(a). Aici putem vedea un apelant de la Polul Nord contactând un satelit aflat direct deasupra sa. Apelul este transmis prin ceilalţi sateliţi şi trimis în cele din urma la apelatul de la Polul Sud.
Globalstar Un proiect alternativ pentru Iridium este Globalstar. Acesta se bazează pe 48 de sateliţi LEO, dar foloseşte o schemă de comutare diferită de cea folosită de Iridium. In timp ce Iridium transmite apeluri de la satelit la satelit, ceea ce necesita echipamente complicate de comutare în cadrul sSateliţilor, Globalstar utilizează un sistem de repetoare tradiţional. Apelul pornit de la Polul Nord din fig. 2-19(b) este trimis înapoi către pământ şi preluat de staţia terestră mare de la Atelierul lui Moş Crăciun. Apelul este apoi dirijat printr-o reţea terestră către staţia terestră cea mai apropiată de apelat şi livrat printr-o conexiune cu satelitul repetor, aşa cum se vede şi în figură. Avantajul acestei scheme este că transferă mare parte din complexitate pe Pământ, unde este mai prelucrările sunt mai uşor de efectuat. De asemenea, dacă pentru staţiile terestre se vor folosi antene mari, care pot emite un semnal puternic şi pot recepţiona unul slab, atunci în sistem pot fi folosite telefoane cu putere mică. Până la urmă, telefonul debitează o putere de câţiva mW, deci semnalul care se întoarce la staţia terestră este destul de slab, chiar după ce a fost amplificat de satelit.
SATELIŢI DE COMUNICAŢIE
SEC. 2.4
Comutatoare pe sateliţii din spaţiu
105
Satelit
X '1 \
Fig. 2-19. (a) Transmisia în spaţiu, (b) Transmisia pe Pământ.
Teledesic Iridium este conceput pentru utilizatorii de telefoane aflaţi în locuri ciudate. Următorul nostru exemplu, Teledesic, este conceput pentru utilizatorii de Internet din întreaga lume doritori de cât mai multă lărgime de bandă. A fost conceput în 1990 de către pionierul telefoniei mobile Craig McCaw şi de către fondatorul Microsoft, Bill Gates, care era nemulţumit de viteza de melc cu care companiile telefonice din lume ofereau lăţime ridicată de bandă utilizatorilor de calculatoare. Scopul sistemului Teledesic este să ofere milioanelor de utilizatori Internet care accesează sistemul simultan o legătură ascendentă de până Ia 100 Mbps şi o legătură descendentă de până la 720 Mbps, utilizând o antenă de tip VSAT mică şi fixă, dar şi ocolind total sistemul telefonic. Pentru companiile telefonice, acesta este un ideal de neatins. Proiectul original consta dintr-un sistem format din 288 de sateliţi cu rază mică de acţiune, poziţionaţi în 12 planuri imediat sub centura Van Allen, Ia o altitudine de 1350 km. Acest proiect a fost schimbat ulterior la 30 de sateliţi cu raze de acţiune mai mari. Transmisia se petrece în banda Ka, relativ neaglomerata şi cu lăţime de bandă ridicată. Sistemul funcţionează cu comutare de pachete în spaţiu, fiecare satelit fiind capabil să dirijeze pachete către vecinii săi. Când un utilizator are nevoie de lăţime de bandă pentru a trimite pachete, aceasta este cerută şi alocată dinamic în aproximativ 50msec. Este prevăzut ca sistemul să intre în funcţiune în anul 2005, dacă totul merge conform planului.
2.4.4
Sateliţii în comparaţie cu fibrele optice
O comparaţie între comunicaţiile prin satelit şi comunicaţiile terestre este instructivă. Cu numai 20 de ani în urmă s-ar fi putut crede că viitorul va aparţine comunicaţiilor prin satelit. La urma urmei, sistemul telefonic s-a schimbat puţin în ultimii 100 de ani şi nici nu dă semne de schimbare în următorii 100 de ani. Această evoluţie lentă s-a datorat în marc măsură mediului înconjurător, în care companiilor de telefoane li se cerea să furnizeze un serviciu vocal calitativ la un preţ rezonabil (ceea ce au şi făcut) în schimbul unui profit garantat al investiţiilor lor. Prin urmare, pentru cei care
106
NIVELUL FIZIC
CAP. 2
aveau date de transmis, erau disponibile modemuri de 1200 bps. Aceasta era destul de bine pentru ceea ce exista atunci. Introducerea competiţiei în 1984 în Statele Unite şi, ceva mai târziu, în Europa a schimbat radical situaţia. Companiile de telefoane au început înlocuirea cu fibre optice a reţelelor exploatate un timp atât de îndelungat şi au introdus servicii cu lăţimi de bandă ridicate, cum este ADSL (Asymetric Digital Subscriber Line, rom: linie de abonat digitală asimetrica). în plus, şi-au încetat practica îndelungată de a factura utilizatorii aflaţi la distanţe mai mari cu sume mărite artificial pentru a subvenţiona utilizatorii locali. Dintr-o dată, se părea că legăturile terestre pe fibră optică reprezintă câştigătorul pe termen lung. Cu toate acestea, sateliţii de comunicaţie au câteva nişe pe piaţă, în care fibra optică nu a pătruns (şi în unele cazuri nici nu o va putea face). Vom analiza acum o parte dintre acestea. în timp ce o singură fibră optică are, în principiu, mai multă lăţime potenţială de bandă decât toţi sateliţii lansaţi vreodată, această lăţime de bandă nu este disponibilă majorităţii utilizatorilor. Fibrele optice instalate la ora actuală sunt folosite în sistemul telefonic pentru a gestiona simultan mai multe apeluri de distanţă lungă, şi nu pentru a furniza utilizatorilor individuali lăţime dc bandă ridicată. In cazul sateliţilor, un utilizator poate foarte bine să scoată o antenă pe acoperişul clădirii şi să ocolească sistemul telefonic. Teledesic se bazează pe această idee. O a doua nişă o reprezintă comunicaţiile mobile. în zilele noastre, mulţi oameni doresc să comunice în timp ce fac jogging, conduc, navighează sau zboară. Legăturile terestre prin fibre optice nu le sunt de nici un folos, în schimb le pot fi utile legăturile prin satelit. Este posibil, totuşi, ca o combinaţie între radioul celular şi fibra optică să fie satisfăcătoare pentru cerinţele majorităţii utilizatorilor (probabil cu excepţia acelora carc se află la bordul unui avion sau pe mare). O a treia nişă o reprezintă situaţiile în care este esenţială difuzarea. Un mesaj transmis de satelit poate fi recepţionat simultan de mii de staţii terestre. De exemplu, o firmă care transmite acţiuni, titluri de proprietate sau preţurile mărfurilor către mii de distribuitori, ar putea descoperi că utilizarea unui sistem prin satelit este mult mai ieftină decât simularea difuzării pe Pământ. O a patra nişă o constituie comunicaţia în locurile cu terenuri greu accesibile sau cu o infrastructură terestră slab dezvoltată. Indonezia, de exemplu, are propriul satelit pentru traficul telefonic intern. Lansarea unui satelit a fost mult mai simplă decât întinderea a mii de cabluri submarine între cele 13.677 de insule din arhipelag. O a cincea nişă pentru piaţa sateliţilor este acolo unde dreptul de instalare a fibrei optice este dificil de obţinut sau nejustificat de scump. în al şaselea rând, atunci când instalarea rapidă este critică, cum este în cazul sistemelor de comunicaţii militare pe timp de război, sateliţii obţin câştig de cauză fără probleme. Pe scurt, se pare că în viitor fluxul principal de comunicaţie va fi pe fibră optică în combinaţie cu radioul celular, iar pentru câţiva utilizatori specializaţi, vor rămâne preferabili sateliţii. Totuşi, există un avertisment valabil pentru toate acestea: economia. Cu toate că fibra optică oferă mai multă lăţime de bandă, este posibil, fără îndoială, ca în viitor comunicaţiile terestre şi cele prin satelit să intre într-o competiţie agresivă pe baza preţului practicat. Dacă progresele tehnologice vor reduce radical costul de instalare al unui satelit (de exemplu, unele viitoare navete spaţiale vor putea împrăştia în spaţiu mai multe zeci de sateliţi la o singură lansare) sau dacă vor deveni populari sateliţii de joasă altitudine, atunci s-ar putea ca fibrele optice să-şi piardă, pe unele pieţe, poziţia lor de lider.
2.5 SISTEMULTELEFONIC Două calculatoare ale aceleiaşi companii sau organizaţii, aflate la mică distanţă, pot fi conectate simplu printr-un cablu, pentru a comunica între ele. Acesta este modul de funcţionare al reţelelor locale. Oricum, când distanţele sunt mari sau sunt multe calculatoare, ori când cablurile ar trebui să treacă printr-un loc public, costul instalării de cabluri particulare este de obicei prohibitiv. Mai mult, în aproape toate ţările din lume, instalarea de cabluri de-a lungul (sau pe sub) proprietăţile publice este ilegală. în consecinţă, proiectanţii de reţele trebuie să se bazeze pe facilităţile de comunicaţie existente.
SEC. 2.5
SISTEMUL TELEFONIC
107
O astfel de facilitate este PSTN, (Public Switched Telephone Nctwork, rom: reţea telefonică publică comutată), care a fost proiectată cu mulţi ani în urmă, în cu totul alt scop: transmisia vocii umane într-o formă mai mult sau mai puţin recognoscibilă. Acest sistem nu este destul de potrivit pentru comunicaţiile între calculatoare, dar situaţia se schimbă rapid odată cu introducerea fibrelor optice şi a tehnologiei digitale. In orice caz, sistemul telefonic este atât de strâns legat de reţelele de calculatoare (larg răspândite geografic), încât merită să îi acordăm mai multă atenţie. Pentru avea o idee despre ordinul de mărime al problemei, să facem o comparaţie scurtă dar semnificativă între proprietăţile unei conexiuni tipicc între calculatoare printr-un cablu local şi printr-o linie telefonică. Un cablu care face legătura între două calculatoare poate transfera date la 10 g bps, poate şi mai mult. Prin contrast, o linie telefonică are o viteza maximă de transfer de date de 56 Kbps, o viteză de aproape 20.000 de ori mai mică. Aceasta este diferenţa dintre o raţă care merge legănându-se în tihnă prin iarba şi o rachetă care zboară spre lună. Dacă linia telefonică este înlocuită de o conexiune ADSL, viteza este mai mică de 1000-2000 de ori. Desigur, proiectanţii sistemelor dc calculatoare cheltuiesc mult timp şi efort pentru a analiza cum pot fi acestea folosite cât mai eficient şi au dificultăţi cu un sistem a cărui performanţă (din punctul lor de vedere) este cu 3 sau 4 ordine de mărime mai slabă. în paragrafele care urmează vom descrie sistemele telefonice şi vom prezenţa istoria şi viitorul lor. Pentru informaţii suplimentare despre structura sistemelor telefonice vezi (Bellamy 1991). 2.5.1
Structura sistemului telefonic
Curând după ce Alexander Graham Bell a brevetat telefonul în 1876 (doar cu câteva ore înaintea rivalului său, Elisha Gray), cererea pentru noua sa invenţie a fost imensă. Piaţa iniţială coasta în vânzarea telefoanelor, existente numai sub formă de perechi. Era la latitudinea clientului să întindă un fir între ele. Dacă proprietarul unui telefon dorea să comunice cu alţi n proprietari de telefoane, trebuiau folosite fire separate pentru conectarea tuturor celor n case. în mai puţin de un an, oraşele erau acoperite cu fire care treceau peste case şi copaci într-o încrengătură sălbatică. A devenit imediat evident că modelul conectării fiecărui telefon la fiecare alt telefon, ca în fig. 2-14(a), nu va putea funcţiona. Bell a observat acest lucru şi a înfiinţat Bell Telephone Company, companie care a deschis primul oficiu de comutare (în New Haven, Connecticut), în 1878. Compania a întins câte un fir către casa sau biroul fiecărui client. Pentru a da un telefon, clientul lovea furca, generând astfel un semnal sonor în centrală, care atrăgea atenţia operatorului; acesta conecta apoi manual cei doi clienţi cu ajutorul unui cablu. Modelul unui oficiu de comutare este ilustrat în fig. 2-20(b).
108
NIVELUL FIZIC
CAP. 2
Destul de repede, oficiile de comutare Bell Systems au apărut peste tot şi oamenii au simţit nevoia unor convorbiri interurbane, oficiile Bell System începând sa se conecteze între ele. Problema iniţială a redevenit actuală: conectarea fiecărui oficiu de comutare cu fiecare alt oficiu prin intermediul unui cablu a scăpat rapid de sub control, şi astfel s-au inventat oficiile de comutare de nivelul doi. După un timp, au fost necesare mai multe oficii de nivelul doi, ca în fig. 2-20(c). în cele din urmă, ierarhia a ajuns până la 5 niveluri.
(a)
(b) Fig. 2-20. (a) Reţea conectată integral, (b) Comutator centralizat, (c) Ierarhie pe două niveluri.
în 1890, cele trei componente majore ale sistemului telefonic erau puse la punct: oficiile de comutare, cablurile între clienţi şi oficiile de comutare (acum echilibrate, izolate, cablu torsadat în locul firelor neizolate, legate la pământ) şi legăturile între oficiile de comutare pe distanţă lungă. Cu toate că au apărut îmbunătăţiri în toate cele trei domenii, modelul de bază al sistemului Bell a rămas esenţialmente intact mai bine de 100 de ani. Pentru o scurtă istorie a sistemului telefonic, vezi (Hawley, 1991). Anterior pătrunderii în forţă pe piaţă a companiei AT&T în 1984, sistemul telefonic era implementat ca o ierarhie pe multe niveluri cu un grad mare de redundanţă. Descrierea care urmează, deşi foarte simplificată, conţine totuşi esenţialul. Fiecare telefon are două fire de cupru conectate direct la cel mai apropriat oficiu final (deseori numit oficiu central local). Distanţa este în mod uzual între 1 şi 10 Km, fiind mai mică în oraşe decât în zonele rurale. Numai în Statele Unite sunt peste 19.000 de oficii finale. Concatenarea codului zonei şi a primelor trei cifre din numărul de telefon specifică în mod unic un oficiu final. Legătura formată de cele două fire între un telefon şi oficiul final corespunzător este cunoscută în termeni tehnici sub numele de buclă locală. Dacă toate buclele locale din toată lumea ar fi fost puse cap la cap, ele ar acoperi distanţa de la pământ la Lună şi înapoi de 1000 de ori. La un moment dat, 80 la sută din capitalul AT&T era constituit de cuprul din buclele locale. AT&T era atunci, de fapt, cea mai mare mină de cupru din lume. Din fericire, acest lucru nu era prea mult cunoscut în lumea investiţiilor. Dacă s-ar fi cunoscut, AT&T putea fi cumpărată, lichidate toate serviciile telefonice din Statele Unite, smuls tot cablul şi vândut unei rafinării de cupru pentru un profit imediat. Dacă un abonat ataşat la un anumit oficiu final apelează alt abonat ataşat la acelaşi oficiu final, mecanismul de comutare din acel oficiu stabileşte o legătură electrică directă între cele două bucle locale. Această legătură rămâne intactă pc toată durata convorbirii.
Dacă alt oficiu TELEFONIC final, trebuie folosită o altă procedură. Fiecare oficiu final SEC. 2.5 telefonul apelat este ataşat la un SISTEMUL 109 are un număr de linii conectate la unul sau mai multe centre de comutare apropriate, numite oficii de taxare (sau, dacă sunt în aceeaşi zonă, oficii în tandem). Aceste linii se numesc trunchiuri de conectare la oficiile de taxare (toii connecting trunks). Dacă se întâmplă ca oficiul final al cclui carc apelează şi oficiul celui apelat să aibă trunchi de conectare către acelaşi oficiu de taxare (ceea ce este probabil dacă sunt relativ apropriate), legătura poate fi stabilită de către oficiul de taxare. O reţea telefonică formată din telefoane (punctele mici), oficii finale (punctele mari) şi oficiile de taxare (pătratele) este prezentată în fig. 2-20(c). Dacă apelantul şi apelatul nu au un oficiu de taxare în comun, calea va trebui să fie stabilită undeva mai sus în ierarhic. Oficiile de taxare sunt conectate prin intermediul unei reţele formate din oficii primare, sectoriale şi regionale. Comunicaţiile între oficiile de taxare primare, sectoriale şi regionale se realizează prin intermediul trunchiurilor de comunicaţie de bandă foarte largă (numite şi trunchiuri de comunicaţie inter-oficii). Varietatea centrelor de comutare şi a topologiei acestora (pot două oficii sectoriale să fie conectate direct sau prin intermediul unui oficiu regional ?) diferă de la o ţară Ia alta în funcţie de densitatea telefonică. Fig. 2-21 prezintă un mod posibil de a realiza o legătură pe distanţe medii. In telecomunicaţii sunt folosite diverse medii de transmisie. In prezent, buclclc locale constau din cabluri torsadate de categoria 3 - cu toate că în primele zile ale telefoniei erau uzuale firele neizolate - aflate Ia o distanţa dc 25 cm între ele, la polii telefonului. între oficiile de comutare sunt larg folosite cablurile coaxiale, microundele şi mai ales fibrele optice. Telefon
Oficiu
Oficiu de
comutare
Oficii de Oficiu de
Oficiu
Telefon
Buclă Trunchiuri de Trunchiuri Trunchiuri de Buclă locală conectare la de bandă foarte largă conectare la locală oficiile de taxare între oficiile de taxare oficiile de taxare
Fig. 2-21. Circuitul unei rute uzuale pentru o convorbire la distanţă medie A
In trecut, transmisia în sistemul telefonic era analogică, semnalul vocal fiind transmis de la sursă la destinaţie sub forma unei tensiuni electrice. Odată cu apariţia fibrei optice, a electronicii digitale şi a calculatoarelor, toate trunchiurile şi comutatoarele sunt acum digitale, bucla locala rămânând ultima parte dc tehnologie analogică a sistemului. Transmisia digitală este preferată, nefiind necesar să se reproducă exact o formă de undă analogică după ce a trecut prin mai multe amplificatoare într-o convorbire la distanţă. Distincţia între 1 şi 0 este suficientă. Această proprietate face ca transmisia digitală să fie de mai mare încredere decât cca analogică. De asemenea, este mai ieftină şi mai uşor de întreţinut. Pe scurt, sistemul telefonic constă din trei componente majore: 1. Bucle locale (cablu torsadat analogic tras în interiorul caselor şi al companiilor). 2. Trunchiuri (fibre optice digitale care conectează oficiile dc comutare). 3. Oficii de comutare (unde apelurile sunt transferate dintr-un trunchi în altul). După o scurtă prezentare a politicii în domeniul telefonic, vom studia aceste trei componente mai în detaliu. Buclele locale oferă tuturor acces la întregul sistem, deci sunt critice. Din păcate, ele reprezintă şi veriga cea mai slabă a sistemului. Pentru trunchiurile pe distanţe mari, problema principală va fi gruparea mai multor convorbiri împreună şi trimiterea lor simultană. Soluţia se numeşte multiplexare şi vom studia trei modalităţi diferite de multiplexare. în sfârşit, există două moduri fundamental diferite de a face comutarea* aşa că le vom studia pe amândouă.
2.5.2 Politica din domeniul telefonic 110 NIVELUL FIZIC CAP. 2 Timp de mai multe zeci de ani, până în 1984, Bell Systems a asigurat servicii, atât pe distanţe scurte cât şi pe distanţe lungi, pentru aproape toată suprafaţa Statelor Unite. în anii 70, guvernul S.U.A. a ajuns la concluzia că acesta era un monopol ilegal şi a hotărât să îl anuleze. Guvernul a câştigat pe 1 ianuarie 1984, AT&T fiind destrămată în AT&T Long Lines, 23 de companii BOC (Bell Operating Companies) şi alte câteva părţi. Cele 23 de companii BOC erau grupate în şapte BOC regionale (RBOC) pentru a le face viabile din punct de vedere economic. întreaga natură a telecomunicaţiilor în Statele Unite a fost schimbată peste noapte de o hotărâre judecătorească (nu de un act al Congresului). Detaliile exacte ale acestei privaţiuni sunt descrise în aşa numita MFJ (Modified Final Judgement, rom: hotărâre llnală modificată, un bun exemplu de oximoron\ dacă a existat vreodată vreunul - dacă hotărârea putea fi modificată, este evident că nu era finală). Acest eveniment a condus la o creştere a competiţiei, la asigurarea unor servicii mai bune şi la scăderea preţurilor pentru clienţi. Totuşi, preţurile pentru serviciile locale au crescut şi subvenţiile încrucişate de la apelurile de lungă distanţa au fost eliminate, iar serviciile locale au trebuit să se susţină singure. Multe alte ţări iau în considerare introducerea competiţiei după acelaşi model. Să clarificăm cum s-a putut atinge acest scop: Statele Unite au fost împărţite în aproape 160 de IATA (Local Access and Transport Areas, rom: zone de acces şi transport local). Pe scurt, o LATA acoperă o suprafaţă echivalentă ca dimensiuni cu o regiune acoperită de un acelaşi cod zonal. De obicei, în cadrul unei LATA există un LEC (Local Exchange Carrier, rom: transportator local), care deţine monopolul pentru un serviciu telefonic tradiţional din interiorul regiunii sale. Cele mai importante LEC sunt BOC-urile, cu toate că unele LATA conţin una sau mai multe din cele peste 1500 de companii telefonice independente care funcţionează ca LEC-uri. Tot traficul inter-LATA este asigurat de un alt tip de companie, IXC (IntereXchange Carrier. rom: transportator intcr-oficii). Iniţial, AT&T Long Lines era singura companie IXC serioasă, dar acum WorldCom şi Sprint sunt competitori consacraţi în domeniu. Una dintre preocupările apărute la separarea companiilor a fost ca toate IXC să fie tratate egal în ce priveşte calitatea liniilor, tarifele impuse şi numărul de cifre pe care un client trebuie să le formeze pentru a telefona. Modul în care acest lucru a fast îndeplinit este prezentat în fig. 222. Aici vedem trei exemple de LATA, fiecare cu mai multe oficii finale. LATA-urile 2 şi 3 au de asemenea o mică ierarhie formată din oficii tandem (oficii intra-LATA). Orice IXC care doreşte să asigure convorbiri provenite dintr-o LATA poate construi un oficiu de comutare, numit POP (Point of Presence, rom: punct de livrare). LEC-ul trebuie să conecteze fiecare DCC la fiecare oficiu final, direct, ca în 1ATA 1 şi 3, sau indirect, ca în I ATA 2. Mai mult, condiţiile în care se face această conectare, atât tehnice cât şi financiare, trebuie să fie aceleaşi pentru toate IXC-urile. în acest mod, un abonat din LATA 1, să zicem, poate alege ce IXC să folosească pentru a apela abonaţi din IATA 3. 5
Oximoron = contradicţic evidentă între termenii expresiei (n.t.)
Primul oficiu de SEC. 2.5 taxare IXC
Al doilea oficiu de SISTEMUL TELEFONIC taxare IXC
111
Fig. 2-22. Relaţia dintre LATA-uri, LEC-uri şi IXC-uri. Toate cercurile sunt oficii de comutare LEC. Fiecare hexagon aparţine câte unui IXC. Printr-o clauză a MFJ, companiilor IXC le era interzis să ofere servicii telefonice locale şi tuturor LEC le era interzis să ofere servicii telefonice inter-LATA, cu toate că amândouă erau libere să intre în orice altă afacere, cum ar fi chiar deschiderea de restaurante. în 1984, această declaraţie era lipsită de ambiguităţi. Din păcate, tehnologia are un fel de a face ca legea să pară depăşită. Nici televiziunea prin cablu şi nici telefoanele celulare nu erau acoperite de această înţelegere. Atunci când televiziunea prin cablu a trecut de la forma unidirecţională la cea bidirecţională şi când a crescut brusc popularitatea telefoanelor celulare, atât LEC-urilc cât şi IXC-urile au început să cumpere sau să se asocieze cu companiile din aceste domenii. în 1995, Congresul a observat că menţinerea unei deosebiri între diferite tipuri de companii nu mai era posibilă şi a aprobat o notă prin care permitea companiilor de cablu TV, companiilor telefonice locale, transportatorilor pe distanţe mari şi operatorilor celulari să facă afaceri unul în domeniul celuilalt. Ideea era ca orice companie să poată oferi clienţilor săi un serviciu complet, cuprinzând cablul TV, telefon şi servicii informaţionale şi că diferite companii ar putea concura în ceea ce priveşte calitatea serviciilor asigurate şi preţul acestora. Această notă a fost legiferată în februarie 1996. în urma acestei hotărâri, unele BOC au devenit IXC şi alte companii, precum operatorii de televiziune prin cablu, au început să ofere servicii telefonice locale în competiţie cu LEC-urile. O proprietate interesantă a legii din 1996 este cerinţa ca LEC-urile să implementeze portabilita- tea locală a numerelor. Aceasta înseamnă ca un client poate schimba companiile locale de telefoane fără să trebuiască să obţină un nou număr de telefon. Aceasta prevedere scuteşte mulţi clienţi de o problemă serioasă şi îi poate ajuta în decizia de a schimba LEC-ul, ceea ce conduce la creşterea competiţiei. Ca rezultat, peisajul telecomunicaţiilor din SUA trece printr-o restructurare radicală. Din nou, multe alte ţări încep să urmeze acest model. Deseori, celelalte ţări aşteaptă să vadă cum funcţionează un experiment în SUA. Dacă funcţionează bine, fac acelaşi lucru; dacă funcţionează râu, încearcă altceva. 2.5.3 Bucla locală: Modemuri, ADSL şi transmisia fară fir Este timpul să pornim studiul nostru detaliat despre funcţionarea sistemului telefonic. Principalele părţi ale sistemului sunt ilustrate în figura2-23. Aici se văd buclele locale, trunchiurile, oficiile de taxare şi oficiile finale, ambele conţinând echipamente de comutare care comută apelurile. Un oficiu final are până la 10.000 de
bucle locale (în SUA şi alte ţări mari). De fapt, până de curând, codul şi prefixul de zonă indicau oficiul final, 112 NIVELUL FIZIC CAP. astfel încât numărul (212) 601-xxxx aparţinea unui anumit oficiu final cu 10.000 de abonaţi, numerotaţi de 2la 0000 la 9999. Odată cu evoluţia competiţiei pentru serviciile locale, acest sistem nu mai era viabil, deoarece mai multe companii doreau să aibă codul oficiului final. De asemenea, numărul de coduri era practic epuizat, astfel încât au trebuit introduse scheme de organizare mai complexe. Să începem cu partea cu care cei mai mulţi oameni sunt familiarizaţi: bucla locală, formată din două fire care vin de la un oficiu final al unei companii telefonice şi intră în case sau companii mai mici. Bucla locală mai este numită adesea şi „ultima milă”, deşi lungimea ei poate fi de până la câteva mile. în ultimii 100 de ani, bucla locală a folosit semnalizarea analogică şi probabil va continua să o folosească timp de ani buni, datorită costului mare al conversiei la digital. Totuşi, până şi în acest ultim bastion al transmisiei analogice au loc schimbări. în acest capitol, vom studia bucla locală tradiţională şi noile îmbunătăţiri care au loc în acest domeniu, concentrându-ne pe comunicaţia de date de la calculatoarele casnice. Atunci când un calculator doreşte să trimită date numerice pe o linie telefonică, datele trebuie să fie convertite în prealabil în formă analogică pentru a putea fi transmise pe o buclă locală . Aceasta conversie este făcută de către un modem, dispozitiv pe care îl vom studia în curând. La oficiul final al companiei telefonice, aceste date sunt convertite la forma digitală pentru a fi transmise pe trunchiurile pentru distanţe mari. Dacă la celălalt capăt se află un calculator cu un modem, este necesara conversia inversă - digital la analogic pentru a putea traversa bucla locală către destinaţie. Această schemă este prezentată în fig. 2-23 pentru ISP-ul 1 (Internet Service Provider, rom: furnizor de servicii internet), care dispune de o bancă de modem-uri, fiecare fiind conectat la o altă buclă locală. Acest ISP poate servi atâtea conexiuni câte modemuri are (presupunând că serverul sau serverele sale au destulă putere de calcul). Această schemă era considerată normală până când au apărut modem-urile de 56 Kbps, din motive care se vor vedea în curând. Codificarea analogică a semnalului constă în modificarea tensiunii electrice în funcţie de timp, pentru de a reprezenta un şir de date. Dacă mediul de transmisie ar fi fost ideal, receptorul ar fi primit exact acelaşi semnal pe care l-a expediat transmiţătorul. Din păcate, mediile nu sunt perfecte, iar semnalul recepţionat nu este identic cu semnalul transmis. Pentru datele numerice, aceste diferenţe pot conduce la erori. Pe liniile de transmisie apar trei mari probleme: atenuarea, distorsiunea datorată întârzierii şi zgomotul. Atenuarea reprezintă pierderea de energie în timpul propagării semnalului. Pierderea se exprimă în decibeli pe kilometru. Energia pierdută depinde de frecvenţa semnalului. Pentru a vizualiza efectul acestei dependenţe de frecvenţă, să ne imaginăm un semnal nu ai o simplă undă, ci sub forma unei serii de componente Fourier. Fiecare componentă este atenuată diferit, ceea ce are ca rezultat la receptor un spectru Fourier diferit. Pentru a agrava situaţia, diferitele componente Fourier se propagă cu viteze diferite de-a lungul firului. Aceste diferenţe de viteză duc la distorsionarea semnalului recepţionat la celălalt capăt.
SEC. 25
z.
SISTEM UL TELEFONIC
Calculator
Buclă Locală (analogică, 'pereche torsadată) Codor , Modem
Trunchi cu lăţime de bandă medie (digital, \ fibră optică)
Decodor
Oficiu final
113
ISP 2
Linie digitală Oficiu de taxare
Oficiu Oficiu de de taxare taxare Trunchi cu lăţime de bandă mare (digital, fibră optică)
Până la 10.000 de bucle locale
Codor/
Bancă de ^/modemuri
ISP 1
Fig. 2-23. Conectarea între calculatoare foloseşte transmisia analogică şi cea digitală. Conversia este realizată de către modemuri si de către codoare/decodoare. O altă problemă este zgomotul, care reprezintă energie nedorită, provenită din alte surse decât transmiţătorul. Zgomotul termic este cauzat de mişcarea aleatorie a electronilor printr-o sârmă şi nu se poate evita. Interferenţa este produsă de cuplajul inductiv care se formează între două fire care sunt apropriate unul de altul. Atunci când vorbim la telefon, putem auzi o altă conversaţie în fundal. Aceasta este interferenţa. în sfârşit, există şi zgomote de tip impuls, determinate de şocuri electrice sau de alte cauze. Pentru datele digitale, zgomotele de tip impuls pot duce la dispariţia unuia sau a mai multor biţi. Modem urile Datorită problemelor prezentate anterior, în special datorită faptului că atât atenuarea cât şi viteza de propagare sunt dependente de frecvenţă, se doreşte evitarea prezenţei unui domeniu larg de frecvenţe într-un semnal. Din păcate, undele pătratice, precum cele din datele numerice, au un spectru larg şi, în concluzie, suferă o atenuare puternică şi distorsiuni de întârziere. Aceste efecte fac din codificarea analogică în bandă de bază (DC) o alegere nepotrivită, cu excepţia situaţiilor în care se utilizează viteze mici şi transmisia are loc pe distanţe scurte. Pentru a evita problemele asociate cu codificarea analogică în bandă de bază (DC), în special pe liniile telefonice, se utilizează codificarca analogică AC. Se introduce un ton continuu în domeniul 1000 - 2000 de Hz, numit undă purtătoare sinusoidală. Amplitudinea, frecvenţa sau faza acestei unde pot fi modulate. In modularea în amplitudine, sunt folosite două niveluri de tensiune pentru a reprezenta 0 şi 1, respectiv. în modularea în frecvenţă, cunoscută de asemenea sub denumirea de codare prin deplasarea frecvenţei (frequency shift keying), se folosesc două (sau mai multe) tonuri diferite. (Termenul de codare este larg folosit în industrie ca sinonim pentru modulare). în varianta cea mai simplă, cea a modulării în fază, unda purtătoare este sistematic comutată la intervale egale
114 NIVELUL FIZIC CAP. 2 la 45, 135, 225, sau 315 grade. Fiecare schimbare de fază transmite 2 biţi de informaţie. De asemenea, obligativitatea unei schimbări de fază la sfârşitul fiecărui interval face receptorul să recunoască mai uşor limitele intervalelor de timp. Fig. 2-24 ilustrează cele trei forme de modulare. în figura2-24(a) una dintre amplitudini este diferită de zero şi una este zero. în fig. 2-24(b) sunt folosite două frecvenţe. în fig. 2-24(c) o deplasare de fază este sau nu prezentă la marginile fiecărui bit. Un echipament care acceptă un şir serial de biţi la intrare şi produce o purtătoare modulată la ieşire (sau vice-versa) se numeşte modem (modulator- demodulator). Modemul este inserat între calculator (digital) şi sistemul telefonic (analogic). 0
1
1
1
1
1
Fig. 2-24. (a) Un semnal binar, (b) Modularea în amplitudine. (c) Modularea în frecvenţă, (d) Modularea în fază. Atingerea unor viteze din ce în ce mai mari nu este posibilă doar prin creşterea continuă a ratei de eşantionare. Teorema lui Nyquist afirmă că eşantionarea la o frecvenţa mai mare de 6000 de Hz este lipsită de interes chiar şi pentru o linie ideală de 3000 de Hz (nu este nici pe departe cazul unei linii telefonice). în practică, majoritatea modem-urilor eşantionează de 2400 ori/sec şi se concentrează să transmită cât mai mulţi biţi pe eşantion. Numărul de eşantioane pe secundă se măsoară în baud. Pe durata fiecărui baud este trimis un simbol. Astfel, o linie de n baud trimite n simboluri/sec. De exemplu, o linie de 2400 baud trimite un simbol la aproximativ fiecare 416,667^sec. Dacă simbolul codifică prin tensiune nulă un bit 0 logic şi
SEC. 2.5
SISTEMUL TELEFONIC
115
prin tensiunea de IV un bit 1 logic, rata de bit este de 2400 bps. Dacă însă sunt folosite tensiunile de 0, 1, 2 şi 3 volţi, fiecare simbol codifică 2 biţi, astfel că o linie de 2400 baud poate transmite 2400 simboluri/sec la o rată de date de 4800 bps. în mod similar, pentru patru deplasări de fază posibile, sunt codificaţi tot 2 biţi/simbol, deci avem din nou o rată de bit dublă faţă de viteza de transmisie a liniei. Cea de-a doua tehnică este larg folosită şi se numeşte QPSK (Quadrature Phase Shift Keying, rom: modulaţia cuadratică în fază). Conceptele de lărgime de bandă, viteza de traasmisie (eng: baudrate), rată de simboluri şi rată de biţi sunt adeseori confundate, deci le vom reformula aici. Lărgimea de bandă a unui mediu reprezintă spectrul de frecvenţe care trec prin el cu atenuare minima. Este o proprietate fizică a mediului (de obicci de la 0 la o frecvenţă maximă) şi se măsoară în Hz. Viteza de transmisie reprezintă numărul de eşantioane preluate într-o secundă. Prin fiecare eşantion se transmite o parte din informaţie, adică un simbol. Deci, viteza de transmisie şi rata de simboluri sunt unul şi acelaşi lucru. Tehnica de modulare (de exemplu QPSK) determină numărul de biţi/simbol. Rata de biţi reprezintă cantitatea de informaţie trimisă prin canal şi este egală cu numărul de simboluri/sec înmulţit cu numărul de biţi/simbol. Toate modemurile performante folosesc o combinaţie de tehnici de modulare pentru a transmite mai mulţi biţi pe baud. Deseori mai multe amplitudini şi mai multe deplasări de faza sunt combinate pentru a transmite mai mulţi biţi/simbol. în fig. 2-25(a), vedem puncte la 45,135,225 şi 315 grade, cu amplitudine constanta (distanţa faţă de origine). Faza unui punct este indicata de unghiul pe care 1- ar face axa x cu o linie care uneşte punctul cu originea. Fig. 2-25(a) circ patru combinaţii posibile şi poate fi folosită pentru a transmite 2 biţi pe simbol. Este exact QPSK. A.
O
CD
In fig. 2-25(b) vedem o schemă diferită de modulare, în care sunt folosite 4 amplitudini şi 4 diferenţe de fază, în total 16 combinaţii. Această schemă de modulare poate fi folosită la transmiterea a 4 biţi pe simbol şi este numită QAM (Quadrature Amplitude Modulation, rom: modulaţia cuadratică în amplitudine) atunci când este folosită pentru transmisia a 9600 biţi pe secundă pe o linie de 2400 baud. Fig. 2-25(c) reprezintă încă o schemă de modulare, care implică amplitudine şi faza. Ea permite 64 de combinaţii, astfel încât pot fi transmişi 6 biţi pe simbol. Se numeşte QAM-64. Sunt folosite şi QAM-uri de ordine mai înalte. Diagramele de genul celor din fig. 2-25, care reprezintă combinaţiile posibile de amplitudine şi fază, sunt numite tipare de constelaţii. Fiecare standard de modem de viteze înalte are propriul lui tipar de constelaţie şi poate comunica numai cu alte modemuri care folosesc acelaşi standard (cu toate că majoritatea modemurilor pot simula modemuri mai lente). 90 90
•
••••
•
0 180
18 0
•
•
270
270
(c)
(a)
••
!
270
(b) Fig. 2-25. (a) QPSK. (b) QAM-16. (c) QAM-64
116 NIVELUL FIZIC CAP. 2 Cu atâtea puncte în tiparul de constelaţie, chiar şi un mic nivel de zgomot detectat în amplitudine sau fază poate conduce la o eroare, adică la mai mulţi biţi eronaţi. Pentru a reduce posibilitatea de a genera o eroare, standardele pentru modemuri cu viteze mari fac corecţia erorilor, adăugând biţi suplimentari la fiecare eşantion. Astfel de scheme sunt cunoscute sub numele de TCM (Trellis Coding Modulation, rom: modulaţie prin codificare matricială). De exemplu, modemul standard V.32 foloseşte 32 de puncte în constelaţie pentru a transmite 4 biţi de date şi un bit de paritate pe simbol, la 2400 baud, şi obţine 9600 bps cu corecţie de erori. Tiparul său de constelaţie este cel din fig. 2-26(a). Decizia de a fi „rotită” cu 45 de grade în jurul originii a fost luată din motive inginereşti; constelaţiile rotite sau nerotite au aceeaşi capacitate de informaţie. 90 90
(b)
(c)
Fig. 2-26. (a) V.32 pentru 9600 Kbps. (b) V.32 bis pentru 14.400 Kbps Următorul pas peste 9600 bps este 14.400 bps. Este numit V.32 bis. Această viteză este atinsă prin transmiterea a 6 biţi de date şi un bit de paritate pe eşantion la o rată de 2400 baud. Tiparul de constelaţie are 128 de puncte atunci când se foloseşte QAM-128, aşa cum se vede în fig. 2-26(b). Fax- modemurile folosesc această viteză pentru a transmite pagini care au fost scanate ca o hartă de biţi (bitmap). QAM-256 nu este folosit în nici unul din modemurile telefonice standard, dar este folosit în reţelele de cablu, aşa cum vom vedea mai târziu. Următorul modem telefonic după V.32 bis este V34, care atinge 28.800 bps la 2400 baud cu 12 biţi de date/simbol. Ultimul modem în aceasta serie este V34 bis, care foloseşte 14 biţi de date/simbol la 2400 baud şi atinge 33.600 baud. Pentru a creste în continuare rata efectivă, multe modemuri comprimă datele înainte de a le transmite, şi pot obţine o rată efectivă de transmisie a datelor de peste 33.600 bps. Pe de alta parte, aproape toate modemurile testează linia înainte de a începe să transmită date de la utilizator şi, dacă observă că sunt probleme care ţin de calitatea transmisiei, reduc viteza sub cea maxima. Astfel, viteza efectivă observată de utilizator poate fi mai mică, egală sau mai mare faţă de cea oficială. Toate modemurile moderne permit traficul din ambele direcţii în acelaşi timp (folosind frecvenţe diferite pentru direcţii diferite). O conexiune care permite traficul simultan în ambele direcţii se numeşte ftill duplex. O şosea cu două benzi este full duplex. O conexiune care permite traficul în oricare dintre sensuri, dar pe rând se numeşte half duplex. O şină de cale ferata este half duplex. O conexiune care permite traficul într-o singura direcţie se numeşte simplex. O stradă cu sens unic este
SEC. 2.5
SISTEMUL TELEFONIC
117
simplex. Un alt exemplu de conexiune simplex este o fibră optică cu un laser la un capăt şi un detector de lumină la celălalt. Motivul pentru care modemurile standard se opresc la 33.600 este că limita Shannon pentru sistemul telefonic este de aproximativ 35 Kbps, aşa că o viteza mai mare ar încălca legile fizicii (departamentul termodinamică). Pentru a afla dacă modemurile de 56 Kbps sunt posibile teoretic, urmăriţi discuţia în continuare. De ce este limita teoretică dc 35 Kbps? Are de-a face cu lungimea medie a buclelor locale şi cu calitatea acestor linii. Cei 35 Kbps sunt determinaţi de lungimea medie a buclelor locale. In fig. 2-23, un apel pornit de la computerul din stânga şi terminat la ISP1 trece prin două bucle locale ca semnal analogic, una la sursă şi una la destinaţie. Fiecare dintre acestea adaugă semnalului zgomote. Dacă am putea scăpa de una dintre aceste bucle locale, rata maximă s-ar dubla. ISP2 face exact acest lucru. Are o conexiune pur digitală de la cel mai apropiat oficiu final. Semnalul digital folosit în trunchiuri ajunge direct la ISP 2, eliminând codoarele/decodoarele, modemurile şi transmisia analogică finală. Astfel, când unul din capetele conexiunii este total digital, cum se întâmplă cu majoritatea lSP-urilor în zilele noastre, rata maxima de date poate fi până Ia 70 Kbps. Intre doi utilizatori cu modemuri şi linii analogice, rata maximă este de 33,6 Kbps. Motivul pentru care se folosesc modemurile de 56 Kbps are de-a face cu teorema lui Nyquist. Canalul telefonic este lat de aproximativ 4(XX) Hz (incluzând benzile suplimentare). Numărul maxim de eşantioane independente care se pot prelua pe secunda este astfel de 8000. Numărul de biţi per eşantion în SUA este 8, dintre care unul este folosit pentru comandă, permiţând astfel numai 56.000 bps pentru date de la utilizator. în Europa, toţi cei 8 biţi sunt disponibili pentru date de la utilizator, deci puteau fi folosite modemuri de 64.000 bps, dar pentru a se conveni asupra unui standard internaţional, s-a ales 56.000. Acest standard de modem este numit V.90. Oferă un canal ascendent de 33,6 Kbps (utilizator către ISP) şi un canal descendent de 56 Kbps (ISP către utilizator), pentru că de obicei sunt mai multe date de transportat de la ISP la utilizator decât invers (de exemplu, cererea unei pagini web ocupă doar câţiva octeţi, în timp ce pagina efectivă poate fi de câţiva megabiţi). în teorie, un canal ascendent de peste 33,6 Kbps era posibil, dar deoarece multe bucle locale sunt prea zgomotoase chiar şi pentru 33,6 Kbps, s-a decis să se aloce mai multa lărgime de banda pentru canalul descendent, pentru a creşte şansele ca acesta să ajungă să funcţioneze la 56 Kbps. Următorul pas dincolo de V.90 este V.92. Aceste modemuri sunt capabile să transfere cu 48 Kbps pe canalul ascendent, dacă linia telefonică suportă. De asemenea, ele determină viteza potrivită de funcţionare în aproximativ jumătate din timpul uzual de 30 de secunde cerut de vechile modemuri. în sfârşit, permit unui apel telefonic să întrerupă o sesiune Internet, dacă linia telefonică suporta serviciul dc apel în aşteptare. Linii digitale pentru abonat (xDSL) Când industria telefonică a ajuns în sfârşit la 56 Kbps, s-a bătut singură pe spate ca pentru o treabă bine făcută. Intre timp, industria televiziunii prin cablu oferea viteze de până Ia 10 Mbps pe cabluri partajate, iar companiile dc servicii prin satelit plănuiau să ofere trafic ascendent spre satelit de 50 Mbps. Cum accesul la Internet devenise o parte din ce în ce mai importantă din afacerile lor, companiile telefonice (LEC-urile) au început să înţeleagă că aveau nevoie de un produs mai competitiv. Răspunsul găsit a fost să înceapă să ofere noi servicii digitale peste bucla locală. Serviciile cu mai multa lăţime de bandă decât serviciul telefonic standard sunt numite uneori broadband (rom: de bandă larga), deşi termenul este mai mult un concept de marketing decât un real concept tehnic.
118
NIVELUL FIZIC
CAP. 2
Metri
Fig. 2-27. Lăţime în funcţie de distanţă pentru UTP categoria 3 pentru DSL. Iniţial, erau mai multe oferte care se suprapuneau, toate purtând numele generic de xDSL (Digital Subscriber Line, rom: linie digitală pentru abonat), cu diferite variabilex. în continuare vom discuta aceste servicii, dar ne vom concentra în primul rând spre ceea ce probabil va deveni cel mai popular dintre aceste servicii, ADSL (Asymmetric DSL, rom: DSL asimetrice). Cum ADSL încă se mai dezvolta şi nu toate standardele sunt cu totul finalizate, unele dintre detaliile date mai jos s-ar putea să se schimbe în timp. Dar ideea de baza ar trebui să rămână valabilă. Pentru mai multe informaţii despre ADSL, se poate vedea (Summers, 1999; şi Vetter et al., 2(X)0). Motivul pentru care modemurile sunt încete este acela că telefoanele au fost inventate pentru a transporta vocea umană şi întregul sistem a fost optimizat pentru acest scop. Datele au fost mereu copiii vitregi. In punctul în care fiecare buclă locală se conectează în oficiul final, firul intra într-un filtru care atenuează toate frecvenţele de sub 300 IIz şi peste 3400 Hz. Filtrarea nu este exactă - 300 Hz şi 3400 Hz sunt punctele de la 3 dB - aşa că lărgimea de bandă este considerată de 4000 Hz, chiar dacă distanţa dintre punctele de 3 dB este de 3100 Hz. Deci şi datele sunt restricţionate în aceasta bandă îngustă. Trucul care face ca xDSLsă funcţioneze este că linia unui client abonat la un astfel de serviciu este conectată la un tip diferit de comutator, care nu are acest filtru, făcând astfel disponibilă întreaga capacitate a buclei. Factorul limitator este constitut de legile fizice aplicate buclei locale şi nu de lăţimea de bandă artificială de 3100 Hz, creată de filtru. Din păcate, capacitatea buclei locale depinde de câţiva factori, inclusiv lungimea, grăsimea şi calitatea la modul general. Un grafic al lăţimii de bandă potenţiale în funcţie de distanţă este prezentat în fig. 2-27. Aceasta figură presupune că toţi ceilalţi factori sunt optimi (fire noi, legături bune, etc.). Implicaţiile acestei figuri creează o problemă pentru compania de telefoane. Când alege viteza pe care o va oferi abonaţilor, alege în acelaşi timp o rază de acţiune în funcţie de oficiile sale finale, dincolo de care serviciul nu poate fi oferit. Aceasta înseamnă că atunci când utilizatori aflaţi la distanţă încearcă să se înscrie la acest serviciu, s-ar putea să li se spună „Mulţumim mult pentru interesul dumneavoastră, dar locuiţi cu 100 de m prea departe de cel mai apropiat oficiu final prin care puteţi a beneficia de acest serviciu. Puteţi să vă mutaţi?”. Cu cât este mai mică viteza aleasă, cu atât mai mare este raza, fiind astfel acoperiţi mai mulţi clienţi. Dar cu cât este mai mică viteza, cu atât este mai puţin atractiv serviciul şi oamenii care vor dori să plătească pentru el vor fi mai puţini. Aici afacerile se întâlnesc cu tehnologia. (O potenţială soluţie este să se construiască mini-oficii finale în toate cartierele, dar aceasta este o propunere cam scumpă.) Serviciile xDSL au fost proiectate cu anumite scopuri. In primul rând, serviciile trebuie să funcţioneze
SEC. 25 SISTEM UL TELEFONIC 119 peste buclele locale de cabluri cu perechi torsadate de categoria 3 existente. în al doilea rând, nu trebuie să afecteze telefoanele şi faxurile clienţilor. în al treilea rând, trebuie să fie mult mai rapi- * de decât 56 Kbps. In al patrulea rând, ar trebui să funcţioneze tot timpul, contra unei taxe lunare, dar nu a unei taxe pe minut. Oferta ADSL iniţială a venit de la AT&T şi funcţiona prin divizarea spectrului disponibil în bucla locală, care este de aproximativ 1.1 MHz, în trei benzi de frecvenţa: POTS (Plain Old Telephone Service, rom: serviciul telefonic tradiţional), canalul ascendent (de la utilizator la oficiul final) şi canalul descendent (de la oficiul final la utilizator). Tehnica de a avea mai multe benzi de frecvenţă se numeşte multiplexare prin divizarea frecvenţei; o vom studia în detaliu într-un paragraf ulterior. Ofertele care au urmat, de la alţi furnizori, au urmat o alta abordare şi se pare că aceasta va avea câştig de cauză, aşa că o vom descrie în continuare. Abordarea alternativă, numita DMT (Discrete MuItiTone, rom: ton multiplu discret), este ilustrată în figura2-28. De fapt, spectrul disponibil de 1.1 MHz al buclei locale se divizează în 256 canale independente de 4312,5 Hz fiecare. Canalul 0 este folosit pentru POTS. Canalele 1-5 sunt nefolosite, pentru a preveni interferenţele între semnalele de voce şi date. Dintre cele 250 de canale rămase, unul este folosit pentru controlul fluxului ascendent şi unul pentru controlul fluxului descendent. Restul sunt disponibile pentru date de la utilizator. 256 Canale de 4 KHz
0 25
iilif
Voce Flux ascendent
1100 kHz
Flux descendent Fig. 2-28. Funcţionarea ADSL folosind modulaţie cu ton multiplu discret
în principiu, fiecare dintre canalele rămase poate fi folosit pentru flux de date full-duplex, dar armonicele, interferenţele şi alte efecte ţin sistemele practice departe de limitele teoretice. Este la latitudinea furnizorului de servicii să determine câte canale să fie folosite pentru fluxul ascendent şi câte pentru cel descendent. Un raport de egalitate între fluxurile ascendent şi descendent este tehnic posibil, dar majoritatea furnizorilor de servicii alocă în jur de 80%-90% din lăţimea de bandă canalului descendent, deoarece majoritatea utilizatorilor primesc mai multe date decât trimit. Această alegere dă naştere „A”-ului din ADSL O variantă de divizare des întâlnită este alocarea a 32 de canale pentru fluxul ascendent, restul fiind alocate pentru cel descendent. De asemenea, este posibil să se folosească unele dintre canalele cu frecvenţa cea mai ridicată din fluxul ascendent în mod bidirecţional, pentru creşterea lăţimii de bandă, deşi această optimizare cere adăugarea unui circuit special • pentru anularea ecourilor. Standardul ADSL (ANSI T1.413 şi ITU G.992.1) permite viteze de până la 8 Mbps pentru fluxul descendent şi 1 Mbps pentru cel ascendent. Totuşi, puţini furnizori de servicii oferă acest flux. De
120 NIVELUL FIZIC CAP. 2 obicei, furnizorii oferă 512 Kbps pentru fluxul descendent şi 64 Kbps pentru cel ascendent în cazul serviciului standard, respectiv 1 Mbps pentru flux descendent şi 256 Kbps pentru flux ascendent în cazul serviciului premium. în cadrul fiecărui canal este folosită o schemă de modulare similară cu V.34, deşi rata de eşantionare este de 4000 baud în loc de 2400 baud. Calitatea liniilor din fiecare canal este constant monitorizata şi rata de transmisie este constant ajustată, aşa că pe canale diferite pot fi folosite rate diferite. Datele efective sunt trimise cu modulaţie QAM, cu până la 15 biţi per baud, folosind o diagramă constelaţie analoagă cu aceea din figura2-25(b). Având, de exemplu, 224 de canale de flux descendent şi 15 biţi pe baud la 4000 baud, lăţimea de bandă pe flux descendent este de 13,44 Mbps. în practică, raportul semnal-zgomot nu este destul de bun pentru a se atinge aceasta rată, dar se poate atinge rata de 8 Mbps pe distanţe scurte şi pe bucle de calitate superioara, motiv pentru care standardul merge până la aceasta valoare.
Comutat or de voce
Codor / Separator frecvenţ ă
Separator de frecvenţă
Linie telefonică
ţ
Calculator
Mode m ADSL Spre ISP ___________ Oficiu final al companiei de telefoane
Clădirile clientului
Fig. 2-29. O configuraţie tipică pentru echipamente ADSL. O schema tipică ADSL este ilustrata în fig. 2-29. în aceasta schemă, un tehnician al companiei de telefoane trebuie să instaleze un NID (Network Interface Device, rom: dispozitiv de interfaţare reţea) la cererea utilizatorului. Această cutie mică de plastic marchează sfârşitul proprietăţii companiei de telefoane şi începutul proprietăţii clientului. Aproape dc NID (sau uneori combinat cu acesta) se află un separator (eng. splitter), un filtru analogic care separă din fluxul de date banda de 0-4000 Hz, folosită de POTS. Semnalul POTS este dirijat la telefonul sau faxul existent, iar semnalul de date este dirijat către modemul ADSL. Modemul ADSL este de fapt un procesor de semnal digital configurat să funcţioneze ca 250 de modemuri QAM care operează în paralel la diferite frecvenţe. Cum majoritatea modemurilor ADSL sunt externe, calculatorul trebuie sa fie conectat cu ele la o viteza mare. De obicei, aceasta se face punând o placă Ethernet în calculator şi operând o reţea Ethernet foarte mică, de două noduri, conţinând doar calculatorul şi modemul ADSL.
SEC. 2.5
SISTEMUL TELEFONIC
121
Uneori este folosit portul USB în loc de Ethernet. Pe viitor vor fi disponibile, fără îndoială, plăci interne de modem ADSL. La celălalt capăt al firului, pe partea oficiului final, este iastalat un separator de frecvenţe similar. Aici.este filtrată partea de voce a semnalului şi este trimisă către un comutator de voce normal. Semnalul de peste 26 KHz este rutat către un nou tip de dispozitiv numit DSLAM (Digital Subscriber Line Access Multiplexor, rom: multiplexor pentru acces la linie digitală pentru abonat), care conţine acelaşi tip de procesor de semnal digital ca şi modemul ADSL. Odată ce semnalul digital recepţionat a fost convertit într-un şir dc biţi, sunt formate pachete şi acestea sunt trimise ISP-ului. Această separare completă între sistemul de voce şi ADSL simplifică furnizarea serviciilor ADSL de către companiile telefonice. Nu este nevoie decât de cumpărarea unui DSLAM şi a unui separator, urmată de ataşarea abonaţilor ADSL la separator. Alte servicii de lăţime mare de bandă (de exemplu ISDN) necesită schimbări mult mai mari la nivelul echipamentelor de comutare deja existente. Un dezavantaj al soluţiei din figura2-29 este prezenţa NID-ului şi a separatorului în locuinţa clientului. Instalarea acestora se poate face doar de către un tehnician al companiei de telefonie, fiind nevoie de o intervenţie specială scumpă (adică de trimiterea unui tehnician la locuinţa clientului). Prin urmare, s-a standardizat o variantă alternativă iară separator. Neoficial este numit G.litc dar numărul de standard ITU este G.992.2. Este acelaşi ca în fig. 2-29, dar fără separator. Linia telefonică existentă este folosită fără nici o modificare. Singura diferenţă este că microfiltrul trebuie să fie introdus în fiecare mufa de telefon dintre telefon sau modem ADSL şi fir. Microfiltrul pentru telefon este un filtru-trece-jos care elimină frecvenţele mai mari de 3400 Hz; microfiltrul pentru ADSL este un filtru-trcce-sus care elimină frecvenţele sub 26 KHz. Oricum, acest sistem nu este la fel dc fiabil ca şi cel cu separator, deci G.lite poate fi folosit doar până la 1,5 Mbps (faţă de cei 8 Mbps de la ADSL cu separator). G.lite are nevoie oricum de separator la oficiul terminal, dar instalarea nu mai necesită mii de drumuri pentru intervenţii la clienţi. ADSL e doar un standard pentru nivelul fizic. Ceea ce rulează la nivelurile superioare depinde de distribuitorul de Internet. Deseori, acesta alege ATM datorită posibilităţii ATM-ului dc a satisface calitatea serviciului şi datorită faptului că multe companii telefonice conţin ATM la baza reţelei.
Bucle locale fără fir Din 1996 în SUA şi ceva mai târziu în alte ţări, companiile care doreau să intre în competiţie cu puternicele companii locale de telefonie (fastele monopoluri), numite ILEC (Incumbent LEC, rom: LEC-uri de facto), sunt libere să o facă. Cei mai probabili candidaţi sunt companiile de telefoane pe distanţă lungă (DCC-urile). Orice IXC care dorea să intre în telefonia locală trebuia să îndeplinească unele condiţii. în primul rând, trebuie să cumpere sau să închirieze o clădire pentru primul oficiu terminal dintr-un oraş. în al doilea rând, trebuie să pună comutatoare dc telefoane şi alte echipamente în oficiul terminal, dispozitive care sunt puse în vânzare de diverşi producători. în al treilea rând, trebuie tras un cablu cu fibră optică între oficiul terminal şi cel mai apropiat oficiu, pentru ca noii consumatori să aibă acces la reţeaua naţională. în al patrulea rând, trebuie să racoleze clienţi, de obicei prin reclamă care anunţă preţuri mai mici şi servicii mai bune decât cele ale ILEC De aici începea parte grea. Să presupunem că apar câţiva clienţi. Cum are de gând noua companie de telefoane locală, numită CLEC (Competitive LEC, rom: LEC competitivă) să conecteze telefoanele clienţilor la oficiul final proaspăt deschis? Obţinerea drepturilor necesare şi întinderea firelor sau a fibrei sunt acţiuni foarte costisitoare. Mute CLEC-uri au descopcrit o alternativă la bucla tradiţională de cablu torsadat: WLL-ul (Wireless Ix>cal Loop, rom: bucla locală fără fir). Intr-un anumit fel, un telefon fix care foloseşte o buclă locală fără fir seamănă cu un telefon mobil, dar sunt trei diferenţe importante. Prima: clienţii din bucla locală fără fir doresc deseori Internet de mare viteză, la viteze care să egaleze ADSL-ul. A doua: noul client nu are probabil nimic împotrivă ca un tehnician al CLEC să instaleze o antenă mare pe acoperişul său, dirccţionată către oficiul CLEC. A treia: utilizatorul nu se mută,
122
NIVELUL FIZIC
CAP. 2
eliminând toate problemele de mobilitate şi timpii morţi datoraţi celulelor despre care vom vorbi mai târziu în acest capitol. Şi astfel se naşte o nouă industrie: fixa fara fir (fixed wireless) (telefonie locală şi servicii Internet oferite de CLEC pe o buclă locală fară fir). Deşi WLL şi-a început activitatea semnificativă în 1998, trebuie să ne întoarcem în 1969 pentru A
a-i vedea originile. In acel an, FCC. a alocat două canale TV (de 6MHz fiecare) pentru televiziunea educativă la 2,1GHz. în anii ce au urmat, au mai fost adăugate 31 de canale la 2,5GHz, cu un total de 198 MHz. Televiziunea educativă nu a prins, iar în 1998 FCC a retras frecvenţele şi le-a alocat radioului bidirecţional. Au fost imediat acaparate de buclele locale fără fir. La aceste frecvenţe, microundele au 10-12 cm. Au un domeniu de 50 km şi penetrează vegetaţia şi ploaia destul de bine. Cei 198 MHz noi din spectru au fot puşi în uz pentru buclele locale fără fir ca un serviciu numit MMDS (Multichanncl Multipoint Distribution Service, rom: serviciu de distribuţie multicanal multipunct). MMDS poate fi privit ca un MAN (Reţea de acoperire Metropolitană), la fel ca şi varul său LMDS (discutat mai jos). Marele avantaj al acestui serviciu este că tehnologia este bine stabilită şi echipamentele sunt disponibile. Dezavantajul este că lăţimea de bandă disponibilă este modestă şi trebuie folosită în comun de mulţi utilizatori dintr-o arie geografică desul de mare. Lăţimea mică de bandă a MMDS a făcut din undele milimetrice o alternativă interesantă, l-a 28-31 GHz în SUA şi 40 GHz în Europa nu se alocau frecvenţe deoarece este dificil să construieşti circuite integrate cu siliciu atât de rapide. Problema a fost rezolvată de inventarea circuitelor integrate cu galiu şi arseniu, deschizându-se astfel banda milimetrică pentru radio-comunicaţii. FCC a răspuns cererii alocând 1,3 GHz unei noi bucle locale fără fir numită LMDS (Local Multipoint Distribution Service, rom: serviciu local de distribuţie multipunct). Această alocare este cea mai mare alocare de lăţime de bandă pe care a facut-o FCC vreodată. O lăţime similară este alocată şi în Europa, dar la 40 GHz. Modul de operare al LMDS este prezentat în fig. 2-30. în figură este prezentat un turn cu mai multe antene, fiecare fiind îndreptată într-o altă direcţie. Cum razele milimetrice sunt foarte bine di- recţionate, fiecarc antenă defineşte un sector, independent de celelalte. La această frecvenţă, raza de acţiune este de 2-5 km, ceea ce înseamnă că e nevoie de multe turnuri pentru a acoperi un oraş întreg. Ca şi ADSL, LMDS foloseşte o alocare de lăţime de bandă asimetrică, favorizând canalul de recepţie. Cu tehnologia curentă, fiecare sector poate avea 36 Gbps pentru recepţie şi 1 Mbps pentru transmisie, bandă folosită în comun de toţi utilizatorii sectorului. Dacă fiecare utilizator activ descarcă trei pagini de 5 KB pe minut, utilizatorul ocupa in medie 200bps din spectru, ceea ce permite maxim 18000 de utilizatori activi pe sector. Totuşi, pentru a se menţine întârzierile Ia un nivel rezonabil, ar trebui să nu fie mai mult de 9.000 de utilizatori. Cu patru sectoare, ca în fig. 2-30, poate fi deservită o populaţie activă de 36.0CKJ de locuitori. Presupunând ca unul din trei utilizatori este conectat în momentele de vârf, un singur turn cu patru antene poate deservi 100.000 de oameni într-o rază de 5 km faţă de turn. Aceste calcule au fost făcute de multe CLEC-uri, dintre care unele au ajuns la concluzia că făcând o investiţie modestă în turnuri pentru unde milimetrice pot oferi utilizatorilor viteze comparabile cu cablul TV la un preţ mai mic.
SEC. 25
SISTEMUL TELEFONIC
123
Fig. 2-30. Arhitectura unui sistem LMDS. LMDS are totuşi câteva probleme. Pentru început, undele milimetrice se propagă în linie dreaptă, deci trebuie să existe vizibilitate între antena de pe acoperiş şi turn. O alta este că frunzele absorb aceste unde destul de bine, deci tumul trebuie să fie suficient de înalt pentru ca drumul până la antenă să treacă pe deasupra copacilor. Iar ceea ce pare un drum liber în decembrie s-ar putea să nu mai fie în iulie, când copacii sunt plini de frunze. Ploaia absoarbe şi ea aceste unde. Totuşi, erorile introduse de ploaie pot fi compensate cu un cod corector de erori sau prin mărirea puterii atunci când plouă. Oricum, serviciul LMDS e mult mai probabil să fie introdus Reţea mai întâi în ISP telefonică ţinuturile uscate, să zicem în Arizona, decât în Seattle. Buclele locale fără fir nu au şanse să prindă dacă nu există standarde, pentru a încuraja vânzătorii de echipamente să producă şi să asigure clienţii că pot schimba CLEC-ul fără să fie nevoie să cumpere un alt echipament. Pentru a asigura acest standard, IEEE a întrunit un comitet numit 802.16 pentru a stabili standardul pentru LMDS. Standardul 802.16 a fost publicat în aprilie 2002. IEEE numeşte 802.16 MAN iară fir (wireless MAN). IEEE 802.16 a fast proiectat pentru telefonia digitală, acces la Internet, conectarea a două IAN-uri îndepărtate, emisie radio şi TV, precum şi pentru alte utilizări. îl vom studia mai în detaliu în cap. 4. 2.5.4
Trunchiuri şi multiplexare
Economiile rezultate din scalabilitate joacă un rol important în sistemul telefonic. Instalarea şi întreţinerea unor trunchiuri de bandă largă între două oficii de comutare costă cam tot atât cât instalarea şi întreţinerea unui trunchi de bandă joasă (castul provine de la săparea şanţului, nu de la firul de cupru sau de la fibra optică). în consecinţă, companiile telefonice au dezvoltat metode sofisticate pentru multiplexarea mai multor convorbiri pe aceeaşi magistrală fizică. Aceste metode de multiplexare se pot împărţi în două categorii principale: FDM (Frequency Division Multiplexing, rom: multiplexare cu
124
NIVELUL FIZIC
CAP. 2
divizare în frecvenţă) şi TDM (Time Division Multiplexing, rom: multiplexare cu divizare în timp), l-a FDM, spectrul de frecvenţă este împărţit în mai multe canale logice, fiecare utilizator având drepturi exclusive asupra unei anumite benzi de frecvenţă. La TDM, utilizatorii îşi aşteaptă rândul (în mod repetat, circular), fiecare utilizator obţinând întreaga bandă de frecvenţă pentru o scurtă perioadă. Difuzarea radio AM ilustrează ambele metode de multiplexare. Spectrul alocat este de aproape 1MHz, aproximativ între 500 şi 1500 de KIIz. Pentru diferite canale logice (staţii) sunt alocate frecvenţe diferite. Fiecare canal logic operează într-un anumit domeniu al spectrului, distanţele între canale fiind destul de mari pentru a preveni interferenţa. Acest sistem este un exemplu de multiplexare prin divizarea frecvenţei. în plus (în unele ţări), staţiile individuale au două subcanale logice: muzică şi publicitate. Acestea două alternează în timp pe aceeaşi frecvenţă, la început muzică şi după un timp o secvenţă de reclame, apoi din nou muzică şi aşa mai departe. Această situaţie se numeşte multiplexare prin divizare în timp. în continuare, vom studia multiplexarea prin divizarea în frecvenţă. După aceea vom analiza cum se poate aplica FDM fibrelor optice (multiplexare prin divizarea lungimii de undă). Apoi ne vom întoarce la TDM, iar în final vom studia un sistem TDM avansat folosit în fibrele optice (SONET).
Multiplexarea prin divizarea în frecvenţă Fig. 2-31 ne prezintă cum sunt multiplexate trei canale de bandă vocală folosind FDM. Filtrele limitează lărgimea de bandă folosită la 3100 de Hz pe canal de bandă vocală. Atunci când sunt multiplexate împreună mai multe canale, fiecărui canal îi sunt alocaţi 4000 de Hz, astfel încât canalele să fie bine separate. Mai întâi, canalele de voce sunt deplasate în frecvenţă, fiecare cu o valoare diferită. Apoi ele pot fi combinate, deoarece nu există două canale care să ocupc aceeaşi zonă a spectrului. Este de remarcat că, deşi există spaţii (spaţii de gardă) între canale, poate să apară o suprapunere între canalele adiacente, deoarece filtrele nu au marginile abrupte. Această suprapunere îaseamnă că un semnal puternic la capătul unui canal va fi simţit în canalul adiacent ca un zgomot non-termic.
Frecvenţă (Hz)
Frecvenţă (kHz)
(a)
Interval de eşantionare
*■
CAP. 2
SEC. 25
SISTEMUL TELEFONIC
131
4 secvenţe T1 la intrare 7 secvenţe T2 la intrare 6 secvenţe T3 la intrare /
1 secvenţă T2 la ieşire
TI I l I UlOk^
1 1 1 msin-j I /_ 1 1 1 1 1 mu . ____ ,
HBQHHDH
O. 1
I I l I I I7l3l^ 1,544 Mbps
6,312 Mbps
44,736 Mbps
T1
T2
T3
274,176 Mbps
Fig. 2-35. Multiplexarea secvenţelor TI în purtătoare cu capacitate mai mare. O îmbunătăţire pentru PCM diferenţial se obţine dacă se extrapolează câteva valori precedente pentru a prezice noua valoare şi apoi se codifică diferenţa dintre semnalul actual şi cel prevăzut. Desigur, atât transmiţătorul cât şi receptorul trebuie să folosească acelaşi algoritm de predicţie. O astfel de schemă se numeşte codificare pred ic ti vă. Această tehnică este utilă, pentru că reduce dimensiunea datelor care trebuie codificate şi, prin urmare, reduce dimensiunea datelor care trebuie transmise. Multiplexarea prin divizare în timp permite ca mai multe purtătoare TI să fie multiplexate împreună în purtătoare de un grad mai înalt. Fig. 2-35 arată cum se poate face acest lucru. In stânga se văd patru canale TI multiplexate într-un canal T2. Multiplexarea la T2 şi peste T2 se face bit cu bit şi nu octet cu octet, ca în cazul celor 24 de canale care constituie un cadru TI. Patru secvenţe TI la 1.544 Mbps ar trebui să genereze 6.176 Mbps, dar T2 transmite de fapt la 6.312 Mbps. Biţii suplimentari sunt folosiţi la încadrare şi la recuperare, în cazul în care purtătoarea este pierdută. TI şi T3 sunt folosite pe scară largă de consumatori, în timp ce T2 şi T4 sunt folosite numai în cadrul sistemului de telefonie, deci nu sunt foarte cunoscute. La nivelul următor, şapte T2 sunt combinate pentru a forma o secvenţă T3. Apoi şase T3 sunt grupate pentru a forma o secvenţă T4. La fiecare pas, se adăugă, pentru încadrare şi recuperare, o mică supraîncărcare în cazul în care sincronizarea dintre transmiţător şi receptor se pierde. Aşa cum există neînţelegeri privind purtătoarea de bază, între Statele Unite şi restul lumii, tot aşa există neînţelegeri privitoare la modul în care se face multiplexarea în purtătoarele de bandă mai largă. Ierarhia implementată în S.U.A., care este făcută prin grupuri de 4, 7 şi 6 secvenţe, nu s-a impus ca un standard, standardul CCITT multiplexând 4 secvenţe în una singură la fiecare nivel. De asemenea, încadrarea şi recuperarea datelor se fac diferit. Ierarhia CCITT cu 32, 128, 512, 2048 şi 8192 de canale funcţionează la viteze de 2.048,8.848,34.304,139.264 şi 565.148 Mbps.
SONET/ SDH La apariţia fibrelor optice, fiecare companie telefonică avea propriul sistem optic TDM. După cc AT&T-ul a fost divizat în 1984, companiile telefonice locale au fost obligate să se conecteze la diverse companii de telecomunicaţii pe distanţe mari, fiecare companie având sisteme TDM diferite; a devenit astfel evidentă necesitatea unei standardizări. în 1985, Bellcore, divizia de cercetare a RBOC, a început să lucreze la un nou standard, numit SONET (Synchronous Optical NETwork, rom: reţea optică sincronă). Mai târziu s-a alăturat şi CCITT, fapt care s-a materializat în 1989 prin standardul SONET şi printr-un set paralel de recomandări CCITT (G.707, G.708 şi G.709). Recomandările CCITT sunt numite SDH (Synchronous Digital Hierarchy, rom: ierarhie digitală sincronă), dar diferă de SONET numai în mică măsură. Practic, aproape tot traficul pe distanţe mari din Statele Unite şi
T4
132
NIVELUL FIZIC
CAP. 2
cea mai mare parte a traficului din alte zone foloseşte acum trunchiuri cu SONET pe nivelul fizic. Pentru informaţii suplimentare vezi (Bellamy 2000; Goralski, 2000; şi Shcpard, 2001). Proiectul SONET a urmărit patru obiective principale. Primul şi cel mai important, SONET trebuia să permită conlucrarea mai multor companii de telecomunicaţii. Pentru atingerea acestui obiectiv a fost necesară definirea unui standard comun de codificare a semnalului care să facă referire la lungimea de undă, la sincronizare, la structura cadrelor etc. în al doilea rând, erau necesare câteva metode de a unifica sistemele digitale din S.U.A., Europa şi Japonia, toate bazându-se pe canale PCM de 64 Kbps, însă combinate diferit şi devenind totodată incompatibile între ele. în al treilea rând, SONET trebuia să permită multiplexarea mai multor canale digitale. Atunci când a fost elaborat SONET, cea mai rapidă purtătoare digitală utilizată efectiv pe scară largă în Statele Unite era T3, la 44.736 Mbps. T4 era definit, dar nu era atât de folosit, iar deasupra vitezei lui T4 nu era definit nimic. O parte a misiunii SONET era să ridice ierarhia la nivel de gigabiţi/sec şi chiar mai mult. Era de asemenea necesară o modalitate standard de multiplexare a canalelor mai lente într-un canal SONET. în al patrulea rând, SONET trebuia să asigure suportul de operare, administrare şi întreţinere (OAM Operations, Administration, Maintenance). Sistemele precedente nu au realizat acest lucru foarte bine. O decizie anterioară era să se facă din SONET un sistem TDM tradiţional, în care toată banda de frecvenţă a fibrei optice atribuită unui singur canal să conţină diferite intervale de timp pentru subcanale diferite. Astfel, SONET este un sistem sincron. El este controlat de un ceas principal, cu o eroare de aproximativ IO' 9. Biţii sunt transmişi pe o linie SONET la intervale extrem de precise, controlate de ceasul principal. Atunci când comutarea celulelor a fost propusă ca bază pentru ATM în bandă largă, faptul că ea permitea sosirea neregulată a celulcior a determinat etichetarea sa ca mod de transfer asincron (ATM), pentru a contrasta astfel cu operaţiile sincronc ale SONET-ului. Cu SONET, transmiţătorul şi receptorul sunt legaţi de un ceas comun; cu ATM nu sunt. Cadrul de bază SONET este un bloc de 810 octeţi, lansat la fiecare 125 fosec. Deoarece SONET este sincron, cadrele sunt emise, chiar dacă nu există date utile de transmis. Rata de 8000 cadrc/sec coincide cu viteza de eşantionare a canalelor PCM folosite în sistemele telefonice digitale. Cadrele SONET de 810 octeţi sunt cel mai bine descrise prin matrice cu 90 de coloane şi 9 rânduri. Cei 8x810 = 6480 biţi ai unui cadru sunt transmişi de 8000 de ori pe secundă, la o viteză de traasfer a datelor de 51,84 Mbps. Acesta este canalul de bază SONET şi este numit STS-1 (Synchronous Transport Signal, rom: semnal sincron de transport). Toate trunchiurile SONET sunt multiple de STS-1. Primele trei coloane ale fiecărui cadru sunt rezervate pentru informaţia de administrare a sistemului, aşa cum este prezentat în fig. 2-36. Primele trei rânduri conţin informaţia suplimentară (eng: overhead) pentru secţiune; următoarele şase conţin informaţia suplimentară pentru linie. Informaţia suplimentară pentru secţiune este generată şi verificată la începutul şi la sfârşitul fiecărei secţiuni, în timp ce informaţia suplimentară pentru linie este generată şi verificată la începutul şi la sfârşitul fiecărei linii. Un transmiţător SONET trimite cadre succesive de 810 octeţi, fără pauze între ele, chiar şi atunci când nu există date de transmis (situaţie în care trimite cadre fără semnificaţie). Din punct de vedere al receptorului, informaţia este doar un şir continuu de biţi, deci cum să ştie de unde începe un cadru? Răspunsul este că primii doi octeţi ai fiecărui cadru conţin un şablon fix pe care receptorul îl caută. Dacă găseşte şablonul în acelaşi loc la mai multe cadre consecutive, presupune ca s-a sincronizat cu transmiţătorul. Teoretic, un utilizator ar putea trimite acest şablon în informaţia utilă din ca
SEC. 2.5
SISTEMUL TELEFONIC
133
dru, dar practic acest lucru nu poate fi realizat din cauza multiplexării mai multor utilizatori în acelaşi cadru şi din alte motive. Restul de 87 de coloane conţin 87 x 9 x 8 x 8000 = 50.112 Mbps de date ale utilizatorului. Totuşi, datele utilizatorului, numite SPE (Synchronous Payload Envelope, rom: înveliş pentru informaţie utilă sincronă) nu încep întotdeauna cu rândul 1, coloana 4. SPE poate începe oriunde în interiorul cadrului. Un pointer către primul octet este conţinut în primul rând al informaţiei suplimentare pentru linie. Prima coloană din SPE este informaţia suplimentară pentru cale (adică un antet pentru protocolul subnivelului de conexiune capăt-la-capăt). Posibilitatea ca SPE să înceapă oriunde în cadrul SONET şi chiar să se întindă pe două cadre, aşa cum este prezentat în fig. 2-36, conferă sistemului un grad suplimentar de flexibilitate. De exemplu, dacă la sursă ajung dale în timp ce se construieşte un cadru SONET gol, aceste date pot fi inserate în cadrul curent în loc să fie reţinute până la începutul următorului cadru. 3 coloane pentru supraîncărcare
Cadru Sonet (125 msec)
Cadru Sonet (125 msec)
□
Supraîncărcare rni Supraîncărcare h Supraîncărcare
w\
de secţiune
^ de linie
de cadru
Fig. 2-36. Două cadre SONET succesive.
Ierarhia de multiplexare SONET este prezentată în fig. 2-37. Au fost definite viteze de la STS-1 până la STS-192. Purtătoarea optică pentru STS-n este numită OC-n şi este identică bit cu bit cu STS-h, cu excepţia unui rearanjări a biţilor folosită pentru sincronizare. Numele SDH sunt diferite şi încep de la OC-3, deoarece sistemele bazate pe standardele CCITT nu au o viteză de transfer apropriată de 51.84 Mbps. Purtătorul OC-9 este prezent, deoarece este apropriat de viteza de transfer a unui trunchi de mare viteza folosit în Japonia. OC18 şi OC-36 sunt folosite în Japonia. La calculul vitezei de transfer a datelor sunt incluse toate informaţiile suplimentare. La calculul vitezei de transfer SPE se exclud informaţiile suplimentare pentru linie şi secţiune. Pentru a determina viteza de transfer a datelor utile este exclusă orice informaţie suplimentară, fiind luate în consideraţie numai cele 86 de coloane puse la dispoziţie pentru datele utile. Ca un comentariu suplimentar, reţineţi că atunci când o purtătoare, cum este OC-3, nu este multiplexată, dar transportă date de la o singură sursă, se adaugă la notaţie litera c (de la concatenare), astfel că OC-3 indică o purtătoare de 155,52 Mbps care constă din trei purtătoare OC-1 diferite, în timp ce OC-3c indică o secvenţă de date de la o singură sursă la 155,52 Mbps. Cele trei secvenţe OC-1 dintr-o secvenţă OC-3c sunt întreţesute pe coloane, prima coloană din secvenţa 1, apoi coloana din secvenţa 2, apoi coloana 1 din secvenţa 3, urmată de coloana 2 din secvcnţa 1 şi aşa mai departe, ceea ce conduce la un cadru de 270 de coloane şi 9 rânduri.
134
NIVELUL FIZIC SO MET Electric Optic STS-1 STS-3 STS-9 STS-12 STS-18 STS-24 STS-36 STS-48 STS-192
OC-1 OC-3 OC-9 OC -12 OC -18 OC -24 OC -36 OC -48 OC -192
SDH Optic STM-1 STM-3 STM-4 STM-6 STM-8 STM-12 STM-16 STM-64
Totală
CAP. 2
Rata de date (Mbps) SPE Client
51.84 155.52 466.56 622.08 933.12 1244.16 1866.24 2488.32 9953.28
50.112 150.336 451.008 601.344 902.016 1202.688 1804.032 2405.376 9621.504
49.536 148.608 445.824 594.432 891.648 1188.864 1783.296 2377.728 9510.912
Fig. 2-37. Ratele de multiplexare pentru SONET şi SDH. 2.5.5 Comutarea Din punctul de vedere al unui inginer obişnuit specialist în telefonie, sistemul telefonic se împarte în două: domeniul exterior (buclele locale şi trunchiurile, deoarece ele sunt în afara oficiilor de comutare) şi domeniul interior (comutatoarele). Tocmai am aruncat o privire asupra domeniului exterior. Acum a venit timpul să examinăm domeniul interior. In sistemul telefonic se utilizează două tehnici de comutare diferite: comutarea de circuite şi comutarea de pachete. Vom face în continuare câte o scurtă introducere pentru fiecare dintre cele două tehnici. Apoi vom studia în detaliu comutarea de circuite, acesta fiind modul de funcţionare actual al sistemul telefonic. Comutarea de pachete va fi studiată în detaliu în capitolele care urmează.
Comutarea de circuite Atunci când formezi - tu sau calculatorul tău - un număr de telefon, echipamentele de comutare din sistemul telefonic caută o cale fizică între telefonul tău şi telefonul apelat. Această tehnică se cheamă comutare de circuite şi este prezentată schematic în fig. 2-38(a). Fiecare dintre cele 6 dreptunghiuri reprezintă un oficiu de comutare al companiei de telecomunicaţii (oficiu final, oficiu de taxare etc.). în acest exemplu, fiecare oficiu are trei linii dc intrare şi trei linii de ieşire. Atunci când o cerere trece prin oficiu, se stabileşte (conceptual) o legătură între linia de pe care a venit cererea şi una din liniile de ieşire; aceste legături sunt reprezentate în figură de liniile punctate. In primele zile ale telefoniei, legătura era făcută de un operator care conecta un cablu în mufele de intrare şi de ieşire. De fapt, există şi o povestioară simpatia! legată de invenţia echipamentelor de comutare automată a circuitelor. Aceste echipamente au fost inventate în secolul XIX de un proprietar al unei firme de Pompe Funebre din Missouri, pc nume Almon B. Strowger. Puţin timp după ce telefonul a fost inventat, când cineva a murit, unul dintre supravieţuitori ar fi sunat operatorul oraşului şi spunând: „Vă rog, faceţi-mi legătura cu o firmă de Pompe Funebre”. Din păcate pentru domnul Strowger, existau două firme de Pompe Funebre în oraş, iar proprietarul celeilalte era soţul operatoarei telefonice a oraşului. Domnul Strowger şi-a dat repede seama că fie va inventa echipamentul telefonic de comutare automată, fie va renunţa la afacere. A ales prima opţiune. Timp de 100 de ani, echipamentele de comutare a circuitelor au fost cunoscute în toată lumea drept cutia Strowger. (Istoria nu a consemnat însă dacă operatoarea de comutare, rămasă şomeră, a obţinut ulterior un post de operator de informaţii, răspunzând la întrebări dc genul „Care este numărul de telefon al unei firme de Pompe Funebre ?”).
SEC. 25
SISTEMUL TELEFONIC
135 Conectarea fizică realizată pe durata convorbirii
z.
Oficiu de comutare
Fig. 2-38. (a) Comutare de circuite, (b) Comutare de pachete
Modelul prezentat în fig. 2-39(a) este, desigur, foarte simplificat, deoarece unele porţiuni din „drumul de cupru” între cele două telefoane pot fi, de fapt, legături prin microunde pe care sunt multiplexate mii de convorbiri. în orice caz, ideea de baza este validă: odată ce apelul a fost stabilit, există o cale dedicată între cele două capete şi va continua să existe până când convorbirea se termină. Alternativa la comutarea circuitelor este comutarea de pachete, descrisă în fig. 2-38(b). în cazul acestei tehnologii, se vor trimite pachete individuale la cerere, fără ca o cale dedicată să fie construită în prealabil. Fiecare pachet trebuie să-şi găsească singur drumul către destinaţie. O proprietate importantă a comutării de circuite este nevoia de a stabili o cale de la un capăt la celălalt, înainte ca datele să poată fi transmise. Intervalul de timp dintre momentul formării numărului şi până când se aude sunând telefonul apelat poate ajunge uşor la 10 sec, chiar mai mult pe distanţe mari sau în cazul convorbirilor internaţionale. în acest interval de timp, sistemul telefonic caută un drum prin cupru, după cum e prezentat în fig. 2-39(a). De remarcat că, înainte ca transmisia de date să poată începe, semnalul de apel trebuie să se propage până la destinaţie. Pentru multe aplicaţii pe calculator (de ex. verificarea creditului la punctul de vânzare), se doreşte evitarea perioadelor lungi de setare. Ca o consecinţă a căii rezervate dintre cele două părţi care vorbesc, odată ce conexiunea a fost realizată, singura întârziere a datelor este dată de timpul de propagare a semnalului electromagnetic, de aproximativ 5 ms la 1000 Km. Totodată, ca o consecinţă a prestabilirii traseului, pericolul de congestie dispare - aceasta înseamnă că, odată ce apelul s-a efectuat, nu vei mai primi semnalul „ocupat”. Desigur, poţi primi semnalul „ocupat” înainte de a stabili legătura, datorită imposibilităţii de comutare sau a capacităţii insuficiente a trunchiului.
136
NIVELUL FIZIC
CAP. 2
Semnal de cerere convorbire Pkt 1 întârziere de propagare
Pkt 2 Pkt 1 Pkt 3 Pkt 2
Q.
E P
Pkt 1
întârziere datorată aşteptării în coadă
/ Timp petrecut în aşteptarea unui trunchi
Pkt 3 Pkt 2
/
Pkt 3
Semnal de acceptare a convorbirii Date Trunchi Trunchi Trunchi AB BC CD D B
(a)
B
D
(b)
B
D
(c)
Fig. 2-39. Apariţia evenimentelor în (a) comutarea de circuite. (b) comutarea de mesaje, (c) comutarea de pachete
Comutarea de mesaje O alternativă la strategia de comutare de circuite este comutarea de mesaje, prezentată în fig. 2-39(b). Atunci când se utilizează acest tip de comutare, nu se stabileşte de la început o cale între apelant şi apelat. în schimb, atunci când apelantul are de transmis un bloc de date, acesta este memorat în primul oficiu de comutare (ruter) şi este retransmis mai târziu, pas cu pas. Fiecare bloc este recepţionat în întregime, verificat pentru a detecta eventualele erori şi apoi retransmis. După cum a fost menţionat în cap. 1, o reţea care foloseşte această tehnică se numeşte reţea memorează- şi-retransmite. Primul sistem de telecomunicaţie electromecanic se baza pe comutarea de mesaje şi a fost folosit pentru telegrame. Mesajul era perforat pe o bandă de hârtie la oficiul de transmisie, bandă care era apoi citită şi transmisă pe o linie de comunicaţie către următorul oficiu de pe traseu, unde era perforat pe o altă bandă de hârtie. Un operator de acolo rupea banda de hârtie şi o citea pe unul din multele cititoare de bandă hârtie, câte unul pentru fiecare magistrală de ieşire. Un astfel de oficiu de comutare era numit oficiu de tocare a benzilor (tom tape office). Benzile de hârtie nu mai se folosesc şi nici comutarea mesajelor, deci nu vom mai discuta acest subiect în această carte.
SEC. 2.5
SISTEMUL TELEFONIC
137
Comutarea de pachete în cazul comutării de mesaje, nu există nici o limită a dimensiunii blocului, ceea ce înseamnă că ruterele (din sistemele modeme) necesită discuri pentru memorarea unor blocuri mari. De asemenea, acest lucru înseamnă că un singur bloc poate ocupa o linie ruter-ruter minute întregi, comutarea de mesaje nefiind utilă pentru traficul interactiv. Pentru a rezolva aceste probleme, a fast inventată comutarea de pachete, aşa cum a fost descrisă în cap. 1. Reţelele cu comutare de pachete fixează o limită superioară precisă pentru dimensiunea blocului, permiţând pachetelor să fie păstrate în memoria principală a ruterului, în loc să fie salvate pe disc. Asigurându-se faptul că nici un utilizator nu va putea monopoliza o linie de transmisie mult timp (milisecunde), reţelele cu comutare de pachete au devenit adecvate pentru traficul interactiv. Un alt avantaj al comutării de pachete faţă de comutarea de mesaje este prezentat în fig. 2-39(b) şi (c): primul pachet al unui mesaj multipachet poate fi transmis mai departe înainte ca cel de-al doilea pachet să fie complet recepţionat, micşorând întârzierea şi îmbunătăţind productivitatea. Din aceste motive, reţelele de calculatoare folosesc, de obicei, comutarea de pachete, ocazional, comutarea de circuite, dar niciodată comutarea de mesaje. Comutarea de circuite şi comutarea de pachete diferă în multe privinţe. Pentru început, comutarea de circuite necesită construirea unui circuit între transmiţător şi receptor înainte să înceapă comunicaţia. Comutarea de pachete nu are nevoie de pregătiri prealabile. Primul pachet poate fi trimis atunci când este disponibil. Rezultatul unei conexiuni stabilite cu comutare de circuite este rezervarea lărgimii de bandă pe tot traseul de la transmiţător la receptor. Toate pachetele urmează această cale. Faptul că toate pachetele urmează aceeaşi cale înseamnă că nu pot ajunge la destinaţie în altă ordine decât aceea în care au fost trimise. La comutarea cu pachete nu există o cale, deci pachete diferite pot urma căi diferite, în funcţie de condiţiile de reţea din momentul în care sunt trimise. Acestea pot ajunge în altă ordine decât cea iniţială. Comutarea cu pachete este mult mai tolerantă la erori decât comutarea cu circuite. De fapt, acesta este motivul pentru care a fost inventată. Dacă un comutator se defectează, toate circuitele care îl folosesc se termină şi nu se mai poate face trafic pe acestea. în cazul comutării cu pachete, pachetele pot fi redirecţionate astfel încât să poată ocoli comutatoarele defecte. De asemenea, rezervarea unei căi oferă posibilitatea rezervării de lăţime de bandă. Dacă lăţimea de bandă e rezervată, atunci când un pachet ajunge la destinaţie el este transmis imediat mai departe. în cazul comutării de pachete, lăţimea de bandă nu este rezervată, şi deci pachetele ar putea aştepta până să fie trimise mai departe. Prin rezervarea lăţimii de bandă se asigură că nu poate să apară congestie când soseşte un pachet (doar dacă apar mai multe pachete decât sunt aşteptate). Pe de altă parte, când se încearcă stabilirea unui circuit, există posibilitatea unui eşec datorat congestiei. Deci, congestia poate interveni la momente diferite în cazul comutării de circuite (la stabilirea circuitului) şi în cazul comutării de pachete (la transmisia pachetele). Dacă un circuit a fost rezervat pentru un anumit utilizator şi nu există trafic, lăţimea de bandă a circuitului e irosită, şi nu poate fi folosită pentru alt trafic. Comutarea de pachete nu iroseşte lăţime de bandă, deci este mai eficientă dintr-o perspectivă de ansamblu. înţelegerea acestui compromis este crucială pentru înţelegerea diferenţei dintre comutarea de circuite şi comutarea de pachete. Compromisul este între serviciul garantat cu resurse irosite şi serviciul negarantat cu resurse neirosite. Comutarea de pachete foloseşte transmisia de tip memorează-şi-trimite. Un pachet e salvat în memoria unui ruter, apoi trimis către următorul ruter. în cazul comutării de circuite, biţii curg continuu prin fir. In cazul comutării de pachete, transmisia memorează-şi-trimite adaugă o întârziere. O altă diferenţă este transparenţa completă a comutării dc circuite. Transmiţătorul şi receptorul pot folosi orice viteză de transfer, orice format sau orice metoda de formare a cadrului. Compania de telecomunicaţii nu cunoaşte aceste lucruri şi nici nu este interesată de ele. In cazul comutării de pachete, compania de telecomunicaţie determină parametrii de bază. O analogie grosieră ar fi o comparaţie între şosea şi calea ferată. în cazul celei dintâi, utilizatorul determină mărimea, viteza şi natura vehiculului; în cazul celei de-a doua, acest lucru îl face societatea de cale ferată. Această transparenţă face posibilă coexistenţa vocii, a faxurilor şi a
138
NIVELUL FIZIC
CAP. 2
datelor în sistemul telefonie. O ultimă diferenţă între comutarea de circuite şi comutarea de pachete se referă la algoritmul de taxare. La comutarea de circuite, acesta a fost bazat de la început pe distanţă şi timp. De obicei, pentru telefoanele mobile distanţa nu contează, excepţie făcând convorbirile internaţionale, iar timpul are doar un rol minor (de exemplu un abonament cu 2000 de minute gratuite costă mai mult decât unul cu 1000 de minute gratuite, iar uneori convorbirile în timpul nopţii şi în weekend sunt mai ieftine decât în mod normal). La comutarea de pachete, timpul de conectare nu contează, dar volumul de trafic da. Pentru utilizatorii simpli, distribuitorii de Internet taxează o anumită sumă lunar pentru că e mai puţin de lucru pentru ei şi mai uşor de înţeles de către clienţi, dar reţelele de infrastructură taxează reţelele regionale pe baza volumului de trafic. Diferenţele sunt prezentate în fig. 2-40. Criteriu Realizarea conectării Cale fizică dedicată Fiecare pachet urmează aceiaşi cale Pachetele ajung în ordine Defectarea unui comutator e fatală Banda de frecvenţă disponibilă Când poate să apară congestia Banda de frecvenţă eventual risipită Transmisia memorează şi transmite Transparenţă Taxarea
Comutarea de circuite Comutarea de pachete Necesară Da Da Da Da Fixă La momentul setării Da Nu Da Pe minut
Nu e necesară Nu Nu Nu Nu Dinamică La fiecare pachet Nu Da Nu Pe pachet
Fig. 2-40. Comparaţie între reţelele cu comutare de circuite şi cu comutare de pachete. Datorită faptului că atât comutarea de circuite cât şi comutarea de pachete sunt foarte importante, vom reveni la ele în curând şi vom prezenta în detaliu diversele tehnologii folosite.
2.6 SISTEMUL DE TELEFONIE MOBILĂ Sistemul tradiţional de telefonie (chiar dacă uneori înseamnă fibră optică multi-megabit), nu va putea satisface un grup tot mai mare de utilizatori: oamenii în mişcare. Oamenii se aşteaptă să efectueze convorbiri telefonice din avion, din maşină, din piscină sau în timp ce aleargă prin parc. Nu mai departe de câţiva ani se vor aştepta să trimită e-mail-uri şi să navigheze pe Internet din toate aceste locuri şi din altele. Prin urmare, există un interes extrem de mare în telefonia fară fir. în următoarele paragrafe vom studia în detaliu acest subiect. Telefoanele fără fir există în două variante de bază: telefoanele fără fir şi telefoanele mobile (uneori numite şi celulare). Telefoanele iară fir sunt dispozitive constând dintr-o staţie bază şi un receptor, vândute ca set pentru uzul casnic. Aceste dispozitive nu sunt folosite pentru reţele, deci nu le vom mai prezenta în continuare. în schimb ne vom concentra asupra telefoanelor mobile, care sunt folosite pentru comunicaţia de date şi voce pe arii mari. Telefoanele mobile sunt împărţite în trei generaţii, fiecare cu o tehnologie diferită: 1. 2. 3.
Voce analogic. Voce digital. Voce şi date (Internet, e-mail, etc.) digital.
Deşi mare parte a discuţiei se va referi la tehnologia acestor sisteme, e interesant de văzut în ce fel politica
SEC. 2.6
SISTEMUL DE TELEFONIE MOBILĂ
139
şi micile decizii de marketing pot avea un impact uriaş. Primul sistem mobil din SUA a fost inventat de AT&T şi extins la nivelul întregii ţări de FCC. Drept urmare, pe tot teritoriul SUA era un singur sistem (analogic), iar un telefon cumpărat în California funcţiona şi în New York. în contrast, când telefonia mobilă a ajuns în Europa, fiecare ţară şi-a inventat propriul sistem, rezultatul fiind un fiasco. Europa a învăţat din propriile greşeli şi când s-a pus problema digitizării, guvernele s-au întâlnit şi au standardizat un singur sistem (GSM), aşa încât orice telefon mobil european sâ poată funcţiona oriunde în Europa. Până atunci, SUA hotărâse că guvernul nu ar trebui să intervină în procesul de standardizare, deci a lăsat digitizarea pe mâna pieţei. Această decizie a dus la telefoane diferite, fabricate de producători diferiţi. Drept urmare, SUA are două sisteme digitale mari incompatibile (plus încă unul mai mic). în ciuda unui avans iniţial în SUA, deţinerea şi folosirea unui telefon mobil în Europa este mult mai mare ca în SUA. Crearea unui singur sistem pentru toată Europa este unul din motive, dar mai sunt şi altele. Un al doilea domeniu unde Europa şi SUA se diferenţiază este problema atribuirii numerelor de telefon. în SUA, numerele de telefoane mobile sunt amestecate cu cele de telefoane normale (fixe). Deci, este imposibil pentru o persoană care sună , să zicem la (212) 234 +5678 să ştie dacă e un post telefonic fix (mai ieftin sau gratis) sau un telefon mobil (convorbire scumpă). Pentru a preveni enervarea oamenilor la folosirea telefoanelor, companiile telefonice au decis ca posesorul telefonului mobil să plătească apelurile recepţionate. Drept urmare, mulţi oameni au ezitat sa-şi cumpere un telefon mobil de frică să nu ajungă cu o notă de plată foarte mare doar pentru că au fost sunaţi. în Europa, telefoanele mobile au un prefix special (analog numerelor cu 800 si 900) deci sunt foarte uşor de recunoscut. Prin urmare, regula că acela care sună plăteşte se aplică şi telefoanelor mobile în Europa (cu excepţia convorbirilor internaţionale, unde costul este împărţit). Un al treilea aspect care a avut un impact semnificativ este folosirea telefoanelor preplătite în Europa, (până la 75 % în unele zone). Acestea pot fi cumpărate din multe magazine, cu cât mai puţine formalităţi, nu mai multe decât pentru cumpărarea unui radio. Plăteşti şi pleci. Acestea sunt preîncăr- cate cu, de exemplu, 20 sau 50 Euro şi pot fi reîncărcate (folosind un cod PIN secret) când suma se termină. în consecinţă, practic fiecare adolescent şi mulţi dintre copiii mici din Europa au telefoane mobile (de obicei preîncărcate), pentru ca părinţii să îi poată găsi, fără să existe pericolul unei note de plată imense pentru telefonul copilului. Dacă telefonia mobilă e folosită doar ocazional, este practic gratuită, din moment ce nu există o taxă lunară sau taxare pentru apelurile recepţionate. 2.6.1
Prima generaţie de telefoane mobile: Voce analogică
Am discutat suficient despre politica şi aspectele de marketing ale telefoanelor mobile. Acum să ne uităm la tehnologie, pornind cu primele sisteme. Radiotelefoanele mobile au fost folosite sporadic, pentru comunicaţii maritime şi militare, încă din timpul primelor decenii ale secolului XX. în 1946, primul sistem de telefoane pentru automobile a fost pus în funcţiune în St. Louis. Acest sistem folosea un singur emiţător amplasat pe o clădire înaltă şi avea un singur canal folosit atât pentru emisie cât şi pentru recepţie. Pentru a vorbi, un utilizator trebuia să apese un buton care activa emiţătorul şi dezactiva receptorul. Astfel de sisteme, cunoscute sub denumirea de sisteme cu buton de emisie au fost instalate în câteva oraşe, spre sfârşitul anilor 1950. Radioul CB, taxiurile şi maşinile de poliţie folosesc deseori această tehnologie. în 1960 a fost instalat IMTS (Improved Mobile Telephone System, rom: sistem îmbunătăţit de telefonie mobilă). Şi acesta foloseşte un emiţător de mare putere (200 W), amplasat pe vârful unui deal, dar utilizează două frecvenţe: una pentru emisie şi una pentru recepţie. Prin urmare, nu mai este nevoie de butonul de emisie. Deoarece toată comunicaţia dinspre telefoanele mobile se desfăşoară pe un canal diferit de cel pe care telefoanele ascultă, utilizatorii telefoanelor mobile nu se mai pot auzi unii pe alţii (spre deosebire de sistemul cu buton de emisie folosit la taxiuri). IMTS suportă 23 de canale distribuite între 150 MHz şi 450 MHz. Din cauza numărului mic de canale, utilizatorii trebuie să aştepte deseori perioade lungi de timp până când obţin tonul. De asemenea, datorită
140
NIVELUL FIZIC
CAP. 2
puterii mari a emiţătorului aflat la înălţime, sistemele adiacente trebuie să se afle la câteva sute de kilometri distanţă, pentru a se evita interferenţa. în concluzie, sistemul a fost impracticabil datorită posibilităţilor limitate.
Sistemul avansat de telefonie mobilă Totul s-a schimbat odată cu AMPS (Advanced Mobile Phone System, rom: sistem avansat de telefonie mobilă), inventat de Bell Labs şi instalat pentru prima dată în S.U.A. în 1982. Sistemul a fost folosit şi în Anglia, unde purta denumirea TACS şi în Japonia, unde se numea MCS-L1. Deşi nu mai este la modă, îl vom studia mai în detaliu, deoarece multe din proprietăţile sale fundamentale au fost moştenite de succesorul sau digital, D-AMPS, din considerente de compatibilitate. în toate sistemele de telefonie mobilă, o regiune geografică e împărţită în celule şi de aceea telefoanele sunt uneori numite telefoane celulare. în AMPS, o celula are de obicei 10 până la 20 km lăţime; în sistemele digitale celulele sunt mai mici. Fiecare celulă foloseşte un set de frecvenţe, nefolosit de nici unul dintre vecinii săi. Ideea de bază care conferă sistemelor celulare o capacitate semnificativ mai mare decât a tuturor sistemelor anterioare, constă în folosirea de celule relativ mici şi refolosirea frecvenţelor de transmisie în celule apropiate (dar nu adiacente). în timp ce într-un sistem IMTS de 100 km lăţime poate exista un singur apel pe fiecare frecvenţă, un sistem AMPS poate avea 100 de celule de 10 km în aceeaşi regiune şi este capabil să suporte 10 până la 15 apeluri pe fiecare frecvenţă, în celule separate de distanţe mari. Astfel, proiectarea celulară determină creşterea capacităţii sistemului cu cel puţin un ordin de mărime, cu atât mai mult cu cât celulele devin mai mici. Mai mult, celulele de dimensiuni reduse necesită puteri mici, ceea ce implică folosirea de transmiţătoare mai ieftine si de dimensiuni mai mici. Telefoanele de mână emit 0,6W; emiţătoarele 7
*
T
*
7
7
»
de pe maşini au de obicei 3 W, valoarea maximă permisă dc FCC. Ideca refolosirii frecvenţelor este ilustrată în fig. 2-4 l(a). în mod normal, celulele sunt aproximativ circulare, dar ele pot fi modelate mai uşor ca hexagoane. în fig. 2-41 (a), celulele au toate aceeaşi dimensiune. Ele sunt grupate împreună în unităţi de 7 celule. Fiecare literă indică un grup de frecvenţe. Trebuie remarcat că pentru fiecare set de frecvenţe există o zonă tampon, de lăţime aproximativ egală cu dublul mărimii unei celule, în care acea frecvenţa nu este refolosită, realizând astfel o delimitare mai bună şi o interferenţă scăzută.
SISTEMUL DE TELEFONIE MOBILĂ
SEC. 2.6
141
O problemă majoră o constituie găsirea locurilor înalte pentru instalarea antenelor staţiei de bază. Această problemă a determinat pc unii furnizori de servicii de telecomunicaţii să încheie contracte cu Biserica Romanocatolică pentru că aceasta dispune de un număr substanţial de potenţiale locuri înalte pentru antene, toate aflate, în mod convenabil, sub o singură administraţie. într-o zonă în care numărul de utilizatori s-a mărit atât de mult încât sistemul a devenit supraîncărcat, se reduce puterea, iar celulele supraîncărcate se divizează în microcelule, pentru a permite mai multe refolosiri de frecvenţe, aşa cum este arătat în fig. 2-41 (b). Determinarea dimensiunii maxime a celulelor constituie o problemă complexă şi este tratată în (Hac, 1995).
(a)
(b)
Fig. 2-41. (a) Frecvenţele nu sunt refolosite în celule adiacente. (b) Pentru a adăuga mai mulţi utilizatori se pot folosi celule mai mici. în centrul fiecărei celule se află o staţie de bază către care transmit toate telefoanele din celulă. Staţia de bază cuprinde un calculator şi un emiţător/receptor conectat la o antenă. într-un sistem de dimensiuni reduse, toate staţiile de bază sunt conectate la un singur dispozitiv, denumit MTSO (Mobile Telephone Switching Office, rom: oficiu de comutare pentru telefonie mobilă) sau MSC (Mobile Switching Center, rom: centru de comutare mobil). într-un sistem de dimensiuni mari, pot fi necesare mai multe MTSO-uri, toate acestea conectându-se la un al doilea nivel MTSO şi aşa mai departe. MTSO-urile sunt în esenţă oficii finale - ca şi în sistemul telefonic - şi sunt de fapt conectate la cel puţin un oficiu final din sistemul telefonic. MTSO-urile comunică între ele, cu staţiile de bază şi cu PSTN-ul folosind o reţea cu comutare de pachete. în orice moment, orice telefon mobil se află, în mod logic, într-o anumită celulă şi sub controlul staţiei de bază a celulei respective. Când un telefon mobil părăseşte o cclulă, staţia sa de bază sesizează o scădere a semnalului dinspre telefon şi întreabă toate staţiile de bază înconjurătoare cât de puternic este semnalul pe care îl recepţionează de la respectivul telefon. Staţia de baza transferă apoi proprietatea asupra telefonului către celula care recepţionează cel mai puternic semnal, aceasta fiind şi celula în care se află acum telefonul. Telefonul este informat despre noul său şef, iar dacă un apel este în derulare în acel moment, telefonul va fi rugat să comute pe un canal nou (deoarece canalul vechi nu este refolosit în nici o celulă adiacentă). Acest proces poartă denumirea de timp mort şi durează aproximativ 300 ms. Atribuirea canalului se face de către MTSO, care este centrul nervos al sistemului. Staţiile de bază sunt, de fapt, doar nişte radio-relee.
142
NIVELUL FIZIC
CAP. 2
Timpii morţi pot fi eliminaţi în două feluri. într-un timp mort soft telefonul e luat în primire de noua staţie de bază înainte ca staţia veche să îl cedeze. Astfel, nu apare nici o discontinuitate. Partea proastă a acestei variante este că telefonul trebuie să fie capabil să se seteze pe două frecvenţe în acelaşi timp (cea veche şi cea nouă). Nici telefoanele de primă generaţie, nici cele de generaţia a doua nu pot face acest lucru. Intr-un timp mort hard, vechea staţie de bază deconectează telefonul înainte ca staţia nouă să îl preia. Dacă noua staţie de bază nu poate să preia telefonul (de ex. pentru că nu există nici o frecvenţă disponibilă), convorbirea se termină brusc. Utilizatorii constată acest lucru, dar câteodată situaţia este inevitabilă din cauza modului în care sunt proiectate telefoanele actuale.
Canale Sistemul AMPS utilizează 832 canale full-duplex, fiecare constând dintr-o pereche de canale simplex. Există astfel 832 amale simplex pentru transmisie de la 824 la 849 MHz şi 832 canale simplex pentru recepţie de la 869 la 894 MHz. Fiecare din aceste canale simplex are o lăţime de 30 KHz. Din această cauză AMPS foloseşte FDM pentru a separa canalele. In banda de 800 MHz, undele radio au aproximativ 40 cm lungime şi se propagă în linie dreaptă. Ele sunt absorbite de copaci şi plante şi sunt deviate de pământ şi clădiri. Este posibil ca un semnal emis de un telefon mobil să ajungă la staţia de bază pe calea directă, dar tot la fel de bine poate să ajungă puţin mai târziu, după ce este deviat de pământ sau clădiri. Aceasta poate să conducă la un efect de ecou sau la distorsionarca semnalului (atenuare multi-căi). Uneori este posibil să se audă chiar şi o convorbire îndepărtată care a suferit mai multe deviaţii. Cele 832 de canale se împart în patru categorii: 1. Comandă (baza către mobil) pentru gestionarea sistemului. 2. Semnalizare (baza către mobil) pentru a anunţa utilizatorii de telefoane mobile că sunt apelaţi. 3. Acces (bidirecţional) pentru stabilirea apelului şi alocarea canalului. 4. Date (bidirecţional) pentru voce, fax sau date. Pentru comenzi sunt rezervate douăzeci si unu de canale si acestea sunt fixate în fiecare telefon »»
într-un PROM. Deoarecc aceleaşi frecvenţe nu pot fi rcfolosite în celule învecinate, numărul real de canale de voce disponibile pe celulă este mult mai mic decât 832, de regulă 45.
Gestiunea apelului Fiecare telefon mobil din AMPS are un număr serial pe 32 biţi şi un număr de telefon de 10 cifre în PROMuI propriu. Numărul de telefon este format dintr-un cod al zonei de 3 cifre pe 10 biţi şi un număr de abonat de 7 cifre pe 24 de biţi. Atunci când este activat, un telefon scanează o listă prepro- gramată cu 21 canale de comandă, pentru a descoperi semnalul cel mai puternic. Apoi telefonul difuzează propriul număr serial de 32 de biţi şi numărul de telefon de 34 de biţi. Ca orice altă informaţie de comandă din AMPS, acest pachet este transmis în formă digitală, de mai multe ori şi cu un cod corector de erori, deşi canalele de voce sunt analogice. Atunci când staţia de bază aude anunţul, sesizează MTSO-ul care înregistrează existenţa noului său client şi informează de asemenea MTSO-ul clientului asupra poziţiei sale curente. în timpul unei funcţionări normale, telefonul mobil se reînregistrează la fiecare aproximativ 15 minute. Pentru a face un apel, un utilizator de telefon mobil activează telefonul, introduce de la taste numărul de apelat şi apasă butonul SEND. Telefonul transmite apoi numărul de apelat şi identitatea proprie pe canalul de acces. Dacă pe canalul de acces apare o coliziune, se încearcă din nou mai târziu. Atunci când primeşte o cerere, staţia de bază informează MTSO-ul. Dacă apelantul este un client al companiei MTSO (sau unul din parteneri), MTSO-ul caută un canal liber pentru apel. Dacă se găseşte unul, numărul canalului este transmis înapoi pe canalul de comandă. Telefonul mobil comută apoi automat pe canalul de voce selectat şi aşteaptă până când partea apelată ridică telefonul.
SEC. 2.6
SISTEMUL DE TELEFONIE MOBILĂ
143
Apelurile primite acţionează diferit, la început, toate telefoanele libere ascultă continuu canalul de semnalizare (paging) pentru a detecta mesajele adresate lor. Atunci când se face apel către un telefon mobil (fie de la un telefon fix, fie de la un alt telefon mobil), se transmite un pachet către MTSO-ul apelatului pentru a descoperi unde se află acesta. Se transmite apoi un pachet către staţia de bază din celula sa curcntă, care transmite apoi pe canalul de semnalizare (paging) un mesaj de difuzare de forma următoare: „Unitatea 14, eşti acolo?”. Telefonul apelat răspunde apoi cu „Da” pe canalul de acces. Baza spune apoi ceva de genul „Unitatea 14, ai un apel pe canalul 3”. în acest moment, telefonul apelat comută pe canalul 3 şi începe să sune (sau cântă o melodie pe care proprietarul a primit-o cadou de ziua lui). 2.6.2
A doua generaţie de telefoane mobile: Voce digitală
Prima generaţie de sisteme celulare a fost analogică. Cea de-a doua generaţie este digitală. Aşa cum nu a existat o standardizare la prima generaţie, nu a existat nici la a doua. Patru sisteme se folosesc în prezent. DAMPS, GSM, CDMA şi PDC. Mai jos le vom discuta pe primele trei. PDC e folosit doar în Japonia şi este practic D-APMS modificat pentru a respecta compatibilitatea cu sistemul analogic de primă generaţie din Japonia. Numele de PCS (Personal Communications Services, rom: serviciu de comunicaţii personale) este folosit câteodată în literatura de marketing pentru a indica un sistem de generaţia a doua (adică digital). Iniţial se referea la un telefon mobil care folosea banda de 1900 MHz, dar distincţia nu se mai face acum.
D-AMPS - Sistem digital avansat de telefonie mobilă A doua generaţie a sistemelor AMPS este D-AMPS fOie Digital Advanced Mobile Phone System, rom: sistem digital avansat de telefonie mobilă) şi este complet digital. Este descris în Standardul Internaţional IS-54 şi în succesorul acestuia, IS-136. D-AMPS a fost proiectat cu atenţie pentru a coexista cu AMPS, aşa încât ambele generaţii de telefoane mobile, şi cele de primă generaţie şi cele de a doua, să poată opera simultan în aceeaşi celulă. D-AMPS foloseşte aceleaşi canale de 30KHz ca şi AMPS şi aceleaşi frecvenţe, astfel încât un canal poate fi analogic şi cele adiacente digitale. în funcţie de ponderile tipurilor telefoanelor dintr-o celulă, MTSO-ul celulei determină care canale sunt analogice şi care sunt digitale şi poate modifica dinamic tipul canalului, după cum se schimbă ponderile telefoanelor în celulă. Când D-AMPS a fost introdus ca serviciu, s-a adăugat o nouă bandă de frecvenţă disponibilă pentru a gestiona încărcarea care se aştepta să crească. Canalele ascendente (de traasmisie) erau în domeniul de frecvenţe 1880-1910 MHz, iar cele descendente (de recepţie) corespunzătoare erau în domeniul 1930-1990 MHz, organizate tot în perechi, ca şi la AMPS. în această bandă, undele au 16 cm lungime, aşa că antena standard VA din lungimea de undă este de numai 4 cm, rezultând astfel telefoane mai mici. Oricum, multe telefoane D-AMPS pot folosi atât banda de 850 MHz cât şi pe cea de 1900 MHz, pentru a avea un domeniu mai mare de canale disponibile. Pe un telefon mobil D-AMPS, semnalul de voce captat de microfon este digitizat şi comprcsat folosind un model mai complicat decât varianta cu modulaţie delta şi codificare predictivă studiată mai devreme. Compresia ia în considerare proprietăţi detaliate ale vocii umane pentru a transforma lărgimea de bandă standard de la codarea PCM (56 Kbps) la 8 Kbps sau mai puţin. Compresia este realizată de un circuit numit vocoder (Bellamy,2000). Compresia este făcută în telefon, şi nu în staţia
144
NIVELUL FIZIC
CAP. 2
de bază sau la oficiul final, pentru a se reduce numărul de biţi trimişi prin aer. In cazul telefoniei fixe, nu există nici un beneficiu dacă se face compresia în telefon, pentru că reducerea traficului pe bucla locală nu măreşte deloc capacitatea sistemului. La telefonia mobilă se câştigă atât de mult prin digitizarea şi comprcsia în telefon. încât la D- AMPS trei utilizatori pot împărţi o pereche de frecvenţe folosind multiplexarea prin divizare în timp. Fiecare pereche dc frecvenţe suportă 25 cadre/sec, adică 40 ms pentru fiecare cadru. Fiecare cadru este împărţit în şase intervale de timp de câte 6,67 ms, după cum se arată în fig. 2-42(a) pentru cea mai joasă pereche de frecvenţe. Fiecare cadru cuprinde trei utilizatori, care stau la rând pentru a transmite şi a recepţiona. în timpul intervalului 1 din fig. 2-42 (a), de exemplu, utilizatorul 1 poate transmite către staţia de bază şi utilizatorul 3 recepţionează de la staţia de baza. Fiecare interval cuprinde 324 de biţi, dintre care 64 sunt folosiţi pentru timpii dc gardă, sincronizare şi comandă, lăsând 260 de biţi pentru informaţia utilă utilizatorului. Dintre biţii de informaţie utilă, 101 sunt folosiţi pentru corectarea erorilor datorate mediului aerian perturbat şi în final rămân doar 159 de biţi pentru semnalul de voce comprimai. Având 50 de intervale/sec, lăţimea de bandă disponibilă pentru semnalul de voce comprimat este puţin sub 8 Kbps, adică 1/7 din lărgimea de bandă standard de la PCM.
Flux ascendent Flux descenden t
1
Cadru TDM 40 msec 2 3 1 2
3
3
1
2
2
3
1
Cadru TDM 40 msec 1850,01 1MHz2 3 4 5 mobil catre bază 6 1 1930,05 MHz bază către mobil
2
3
4
6
5
interval (secvenţă) de 324 de biţi: 64 de biţi de comandă 101 biţi pentru corectarea erorilor 159 biţi pentru datele corespunzătoare convorbirii
(a) (b) Fig. 2-42. (a) Un canal S-AMPS cu trei utilizatori, (b) un canal D-AMPS cu şase utilizatori Folosind algoritmi de compresie mai buni este posibil să se reducă datele de voce la 4 Kbps, caz în care şase utilizatori pot fi cuprinşi într-un cadru, după cum se arată în fig. 2-42(b). Din punctul de vedere al operatorului, posibilitatea de a înghesui de trei sau de şase ori mai mulţi utilizatori D-AMPS în acelaşi spectru dedicat unui singur utilizator de AMPS este un câştig uriaş şi aşa se explică popularitatea PCS-ului. Bineînţeles, calitatea vorbirii la 4 Kbps nu se compară cu cea atinsă la 56 Kbps, dar puţini operatori PCS îşi fac reclame cu referire la calitatea sunetului. De asemenea, ar trebui să fie clar că, pentru date, un canal de 8 Kbps nu este nici măcar la fel de bun ca un antic modem de 9600 bps. Structura de comandă a D-AMPS este destul de complicată. Descriere sumară: grupuri de 16 cadre formează un supercadru, cu informaţii de comandă specifice prezente în fiecare supercadru de un număr limitat
SEC. 2.6
SISTEMUL DE TELEFONIE MOBILĂ
145
de ori. Şase canale principale de comandă sunt folosite pentru configurarea sistemului, comanda în timp real sau offline, semnalizare, răspunsul la cererea de acces şi mesajele scurte. în principiu, funcţionează ca un AMPS. Când un mobil este deschis, el contactează staţia de bază, pentru a-şi anunţa apariţia, şi apoi ascultă pe un canal de comandă eventualele apeluri. Gând recepţionează un mobil nou, MTSO informează baza utilizatorului despre locul unde se află acesta, pentru a se putea nita corcct convorbirile.
146
NIVELUL FIZIC
CAP. 2
O diferenţă între AMPS şi D-AMPS este modul în care se tratează timpii morţi. în AMPS, MTSO se descurcă singur, fară nici un ajutor de la dispozitivul mobil. După cum se poate vedea în fig. 2-42, în D-AMPS, 1/3 din timp telefonul nici nu trimite nici nu primeşte. Ele folosesc acest timp pentru a măsura calitatea liniei. Când descoperă că semnalul începe să slăbească, anunţă MTSO, care apoi poate întrerupe conexiunea, moment în care mobilul poate încerca să se conecteze la o altă staţie de bază cu un semnal mai puternic. La fel ca la AMPS, acest timp mort durează totuşi 300mscc. Această tehnică se numeşte MAHO (Mobile Assisted HandOff, rom: timpi morţi asistaţi de mobil).
GSM - Sistemul global pentru comunicaţii mobile D-AMPS este larg folosit în SUA şi (într-o formă modificată) în Japonia. Practic, în rest, peste tot în lume se foloseşte un sistem numit GSM (Global System for Mobile Communications, rom: sistemul global pentru comunicaţii mobile), care a început să fie folosit şi în SUA la o scară limitată. La o privire generală, GSM este similar D-AMPS-ului. Amândouă sunt sisteme celulare. în ambele sisteme se foloseşte multiplexarea prin divizarea de frecvenţă, fiecare mobil transmiţând pe o frecvenţă şi recepţionând pe una mai ridicată (cu 80 MHz mai mare pentru D-AMPS şi cu 55 MHz mai mare pentru GSM). De asemenea, în ambele sisteme se foloseşte multiplexarea cu divizare în timp pentru a împărţi o singură pereche dc frecvenţe în intervale de timp folosite în comun de mai multe dispozitive mobile. Oricum, canalele GSM sunt mult mai largi decât canalele AMPS (200kHz faţă de 30 KHz) şi servesc doar câţiva utilizatori în plus (8 faţă de 3), permiţând GSM-ului o rată de transmisie per utilizator mult mai mare decât la D-AMPS. Mai jos vom discuta pe scurt unele dintre proprietăţile principale ale GSM. Oricum, standardul GSM are peste 5000 [sic] de pagini. O mare parte din acest material se referă la aspecte inginereşti ale sistemului, în special la proiectarea receptoarelor pentru a fi capabile să gestioneze propagarea semnalelor pe mai multe căi, Şi sincronizarea transmiţătoarelor şi receptoarelor. Nici unul dintre acestea nu va fi menţionat în continuare. Cadru TDM Canal
959.8 MHz
11
11
124
11
Bază
>
935.4 MHz 935.2 MHz > 0 914.8 MHz 3,
c U_
< D 890.4 MHz > O 890.2 MHz
im iiii i i iii
±n i i i i
I N I M I l l l l l l l
l l l l l l
câtre mobil
l l l l l l l
Î N M I I
n i I I I I I I l i ii i iiml l l l l l l l 1
l l l l l l l • • #
_l i i i i m ...UIMII Timp
iii
i
ii
i
l l l l l l l
im i i m I I 1 1 1 L I 1 1 J l Il. Li 1 1 M 1 1
Fig. 2-43. GSM foloseşte 124 canale de frecvenţă, fiecare dintre ele folosind un sistem TDM cu opt intervale
12 4
Mobil către bază
SEC. 2.6 SISTEMUL DE TELEFONIE MOBILĂ 147 Fiecare bandă de frecvenţă are 2(X) KHz, după cum se arată în Cg. 2-43. Un sistem GSM are 124 de perechi de canale simplex. Fiecare canal simplex, are 200 KHz şi suportă opt conexiuni diferite, folosind multiplexarea prin divizarea în timp. Fiecărei staţii active la momentul respectiv i se atribuie un interval de timp dintr-o pereche de canale. Teoretic, pot fi suportate 992 de canale în fiecare celulă, dar multe dintre ele nu sunt disponibile, pentru a se evita conflictele de frecvenţă, cu celulele vecine. în fig. 2-43, toate cele opt intervale de timp marcate aparţin aceleiaşi conexiuni, câte patru dintre ele în fiecare direcţie. Transmisia şi recepţia nu se fac în acelaşi interval de timp pentru că aparatele GSM nu pot trimite şi primi în acelaşi timp şi durează până se face comutarea între emisie şi recepţie. Dacă staţia mobilă asociată frecvenţei 890.4/935.4 MHz şi intervalului de timp 2 ar vrea să transmită la staţia de bază, trebuie să folosească acele patru intervale de timp inferioare (şi pe cele care le urmează cronologic), punând informaţie în fiecare interval până când toată informaţia este transmisă. Intervalele TDM prezentate în fig. 2-43 fac parte dintr-o ierarhie complexă de cadre. Fiecare interval TDM are o structură specifică, iar grupurile de intervale TDM formează multicadre, şi acestea având o structură specifică. O variantă simplificată a acestei ierarhii este prezentată în fig. 244. Aici putem vedea că fiecare interval TDM constă dintr-un cadru de 148 de biţi care ocupă canalul pentru 577 [is (incluzând şi un timp de gardă de 30 ps după fiecare interval). Fiecare cadru de date începe şi se termină cu trei biţi de 0, pentru aliniere. De asemenea conţine două câmpuri de informaţie de 57 de biţi, fiecare având un bit de comandă care spune dacă următorul cadru va fi de date sau de voce. A
Intre câmpurile de informaţie se află un câmp de 26 de biţi de sincronizare (antrenare) care este folosit de receptor pentru sincronizarea la extremităţile cadrului de la transmiţător. -« --------------------------------- Multicadru de 32500 biţi trimis în 120 msec -------------------------------------- ► 0 1 2 3 4 5 6 7 8 9 10 11 C 13 14 15 16 17 18 19 20 21 22 23 24 T L
Cadru TDM de 1250 biţi trimis în 4,615 msec » I
l
’
l
L l
i
1
3
M
l
-
l
M
Cadru de date de 148 biţi trimis în 547 psec 000 Information Sync Information
Biţi
3
57
\26/
57
ru
H
^ ■'1
Rezervat pentru o utilizare ulterioar ă
000
3
Bit de voce/date Fig. 2-44. Un fragment din structura de cadre GSM
8.25-bit (30 psec) timp de gardă
Un cadru de date e transmis în 547 nsec, dar un transmiţător are voie să trimită câte un cadru de date la fiecare 4,615 msec, deoarece este pe acelaşi canal cu alte şapte staţii. Rata totală a fiecărui canal este de 270.833 bps, împărţită între opt utilizatori. Aceasta înseamnă 33.854 Kbps în total, mai mult decât dublu faţă de D-AMPS, 324 de biţi de 50 de ori pe secundă, adică 16,2 Kbps. Oricum, ca şi la APMS, informaţia suplimentară consumă o mare parte din lărgimea de bandă, lăsând 24,7 Kbps fiecărui utilizator pentru informaţia utilă, înainte de corectarea erorilor. După corectarea erorilor,
148
NIVELUL FIZIC
CAP. 2
13 Kbps rămân pentru voce, rezultând o calitate mult mai bună decât la D-AMPS (dar folosind mai multă lăţime de bandă). După cum se poate vedea în fig. 2-44, opt cadre de date formează un cadru TOM şi 26 cadre TDM formează un multicadru de 120 msec. Dintre cele 26 de cadre TDM dintr-un multicadru, cadrul 12 e folosit pentru comandă, iar cadrul 25 e rezervat pentru o utilizare ulterioară, deci numai 24 sunt disponibile efectiv pentru traficul utilizatorilor. Oricum, pe lângă multicadrul de 26 de intervale din fig. 2-44, se foloseşte un multicadru de 51 de intervale (nu este desenat). Unele dintre aceste intervale sunt folosite pentru a menţine câteva canale de comandă folosite pentru gestiunea sistemului. Canalul de difuzare a comenzii este un flux continuu de ieşire de la staţia de bază, care conţine elemente pentru identificarea staţiei şi starea canalului. Toate staţiile mobile îşi monitorizează puterea semnalului, pentru a constata dacă s-au mutat într-o celulă nouă. Canalul dedicat de comandă este folosit pentru actualizarea locaţiei, înregistrarea şi setările convorbirii. în particular, fiecare staţie de bază reţine o bază de date a staţiilor mobile care se află sub jurisdicţia sa. Informaţiile necesare pentru a menţine această bază de date se trimit pe canalul dedicat de comandă. în sfârşit, există canalul comun de comandă, care este împărţit în trei subcanale logice. Primul dintre ele este canalul de semnalizare, pe care staţiile de bază îl folosesc pentru a anunţa apelurile primite. Fiecarc mobil monitorizează continuu acest canal pentru a vedea dacă sunt convorbiri la care trebuie să răspundă. Al doilea este canalul de acces aleator, care le permite utilizatorilor să ceară un loc pe canalul dedicat de comandă. Dacă două cereri intră în coliziune, ele sunt bruiate şi ambele trebuie să încerce mai târziu. Folosind canalul dedicat de comandă, staţiile pot iniţializa un apel. Intervalul primit este anunţat prin cel de al treilea subcanal, canalul de acces permis.
CDMA - Acces multiplu cu divizarea codului D-AMPS şi GSM sunt sisteme convenţionale. Amândouă folosesc FDM şi TDM pentru a împărţi spectrul în canale şi canalele în intervale de timp. Mai există totuşi un al treilea tip, CDMA (Code Division Multiple Acces, rom: acces multiplu cu divizarea codului) care funcţionează complet diferit. Când CDMA a fost propus prima dată, industria i-a răspuns cu aceeaşi atitudine cu care regina Isabella i-a răspuns lui Columb când acesta i-a propus să ajungă în India navigând în direcţia opusă. Totuşi, prin insistenţa unei singure companii, Qualcomm, CDMA s-a maturizat într-atât încât nu este doar acceptat, ci este acum văzut ca fiind cea mai bună soluţie tehnică disponibilă şi de bază pentru sistemele mobile de generaţia a treia. De asemenea, în SUA se foloseşte pe scară largă în sistemele de generaţia a doua, concurând cu D-AMPS. Spre exemplu, Sprint PCS foloseşte CDMA, iar AT&T Wireless foloseşte D-AMPS. CDMA este descris în standardul internaţional IS-95 şi uneori este referit cu acest nume. Numele de marcă cdmaOne este de asemenea folosit. CDMA e complet diferit de AMPS, D-AMPS şi GSM. în loc să se împartă domeniul de frecvenţe disponibil în câteva sute de canale mici, CDMA permite fiecărei staţii sa transmită tot timpul în tot spectrul. Mai multe transmisii simultane sunt separate folosind teoria codării. CDMA renunţă la ideea că toate cadrele care intră în coliziune sunt total bruiate. în schimb, mai multe semnale recepţionate vor fi sumate liniar. înainte de a prezenta algoritmul, să considerăm analogia cu o sală de aşteptare a unui aeroport cu mai multe perechi de oameni discutând. TDM ar însemna că toţi oamenii sunt în centrul încăperii, dar vorbesc pe rând. FDM ar însemna că fiecare om este într-un colţ, fiecare vorbeşte în acelaşi timp cu ceilalţi, dar independent de ei. CDMA ar însemna că fiecare persoană este în centrul încă
SISTEMUL DE TELEFONIE MOBILĂ
SEC. 2.6
149
perii, toţi vorbesc în acelaşi timp, dar fiecare pereche de vorbitori conversează într-o limbă diferita. Cei ce vorbesc în franceză ascultă doar ceea ce este în franceză, ignorând orice nu este în limba franceză. Astfel, cheia CDMA este posibilitatea de a extrage semnalul dorit şi de a respinge restul de semnale. O descriere simplificată a CDMA este prezentată mai jos. în CDMA durata fiecărui bit este divizată în m intervale scurte numite felii (eng.: chips). în mod normal sunt 64 sau 128 de felii pe bit, dar în exemplul de mai jos vom folosi doar opt pentru simplificare. Fiecare staţie are un cod unic pe m biţi numit secvenţă de felii (chip sequence). Pentru a transmite un bit 1, o staţie trimite propria secvenţă de felii. Pentru a transmite un bit 0, trimite complementul faţă de unu al secvenţei sale de felii. Nici un alt şablon nu este permis. Deci, pentru m= 8, dacă staţiei A îi este asociată secvenţa 00011011, ea trimite un bit 1 trimiţând 0001011 şi un bit 0 trimiţând 11100100. Creşterea cantităţii de informaţie de trimis de la b biţi/sec la mb felii/sec se poate face doar dacă lărgimea de bandă disponibilă creşte de m ori, făcând din CDMA o formă de comunicaţie cu spectru larg, (presupunând că nu se fac schimbări în tehnicile de modulaţie sau codificare). Dacă avem o bandă de 1MHz pentru 100 de staţii, folosind FDM fiecare ar avea 10 KHz şi ar trimite lOKbps (presupunând un bit pe Hz). Cu CDMA, fiecare staţie foloseşte toată banda de 1 MHz, deci rata feliilor este de 1 Mcga pe secundă. Cu mai puţin de 100 de felii pe bit, lărgimea de bandă efectivă pentru fiecare staţie este mai mare la CDMA decât la FDM, iar problema alocării canalului este de asemenea rezolvată. A: 000 1 1 0 1 1 B: 00 1 0 1 1 1 0 C: 0 1 0 1 1 1 00 D: 0 1 00 00 1 0
(_1 _i
-1 +1 +1 _i +1 +1)
(-1 -1
+1 -1 +1 +1 +1
-1 )
(-1 +1 (-1 +1
-1 +1 +1 +1 -1 -1 -1 -1 -1 +1
-1) -1)
(b)
(a) Şase exemple:
c -111
0- -
B + + B B + A+B A+B
C A A + C +C+D +C+D
S! =(-1 +1 -1 +1 +1 +1 -1 -1)
52 = (-2 0 0 0+2+2 0-2) 53 = ( 0 0-2+2 0 -2 0+2) 54 = (-1+1 -3+3+1 -1 -1 +1) 55 = (-4 0-2 0+2 0+2-2) S6= (2 -2 0-2 0-2+4 0)
10 1111 1 (c) 110 ST • 1 C = (1 +1 +1+1 +1 +1 +1 +l)/8 = 1 52 • C = (2 +0 +0+0 +2 +2 +0 +2)/8 = 1 53 • C = (0 +0 +2+2 +0 -2 +0 -2)/8 = 0 S 4 * C = { 1 +1 +3+3+1 -1 +1 — 1 )/8 = 1 S5* C = (4 +0 +2 +0 +2 +0-2 +2)/8 = 1 S6 • C = (2 -2 +0 -2 +0 -2 -4 +0)/8 = -1 (d) Fig.2-45. Secvenţele de felii binare pentru patru staţii, (b) Secvenţele de felii bipolare, (c) Şase exemple de transmisii, (d) Recuperarea semnalului staţiei C
150
NIVELUL FIZIC
CAP. 2
Din motive pedagogice, este mai convenabilă folosirea unei notaţii bipolare, cu 0 binar reprezentat ca -1 şi 1 binar reprezentat ca +1. Vom scrie secvenţele de felii în paranteze, deci un bit 1 pentru staţia A devine (-1 -1 -I -l-l +1-1 +1 +1). în fig. 2-45(a) sunt prezentate secvenţele de felii binare asociate celor patru staţii luate ca exemplu. în fig. 2-45(b) ele sunt prezentate în notaţia noastră bipolară. Fiecare staţie are propria sa secvenţă de felii. Vom folosi simbolul S pentru a indica vectorul de m felii pentru staţia S, şi S pentru negaţia sa. Toate secvenţele de felii sunt ortogonale pe perechi, prin aceasta înţelegând că produsul scalar normat al oricăror două secvenţe distincte de aşchii S şi T (notat ca S*T) este 0. Se cunoaşte cum se generează asemenea secvenţe de felii ortogonale, folosind metoda codurilor Walsh. în termeni matematici, ortogonalitatea secvenţelor de felii poate fi exprimată după cum urmează:
S»T = —¿^7’ = 0
(2-4)
™m-
Altfel spus, toate perechile care se pot forma sunt diferite între ele. Această proprietate de orto- gonalitate se va dovedi crucială mai târziu. De notat că dacă S*T=0 atunci şi S • T =0. Produsul scalar normat al oricărei secvenţe de felii cu ea însăşi este 1:
im
s.s—¿sa m
=-£s,
1m
1m 2
m ,=1
m /=I
2
=—¿(±D = i
Acest lucru se întâmplă deoarece fiecare din cei m termeni ai produsului scalar este 1 deci suma este m. De asemenea se observă că S* S = -1. în timpul fiecărui interval de bit, o staţie poate să transmită un 1 emiţând propria secvenţă de felii, sau poate transmite un 0 emiţând complementul secvenţei sale de felii, sau poate să nu transmită nimic. Pentru moment, vom presupune că toate staţiile sunt sincronizate în timp, deci toate secvenţele de felii încep în acelaşi moment. Când două sau mai multe staţii transmit simultan, semnalele lor bipolare se adună liniar. De exemplu, dacă într-un interval de felie trei staţii emit +1 şi una -1, rezultatul este +2. Putem privi aceasta ca pe o adunare de tensiuni: trei staţii emit +1 volt şi o staţie emite -lvolt, rezultând 2 volţi. în fig. 2-45(c) avem şase exemple de una sau mai multe staţii transmiţând simultan. în primul exemplu, C transmite un bit de 1, deci avem doar secvenţa de felii a lui C. în al doilea exemplu, atât B cât şi C transmit biţi de 1, deci vom obţine suma secvenţelor lor de felii bipolare, şi anume:
(-1 -1 +1-1 +1 +1 +1 -1) + (-1 +1 -1 +1 +1 +1-1-1) = (-2000 +2 +20-2). A
A
In cel de al treilea exemplu, staţia A emite un 1 iar staţia B emite un 0. Celelalte tac. In al patrulea exemplu, A şi C emit câte un bit 1, în timp ce B emite un 0. în al cincilea exemplu, toate cele 4 staţii emit câte un bit 1. în final, în ultimul exemplu, A, B şi D emit câte un bit 1, în timp ce C emite un bit 0. Să notăm că fiecare dintre cele şase secvenţe, S, - S6, date în fig. 2-45(c), reprezintă durata unui singur bit. Pentru a reface şirul de biţi al unei staţii individuale, receptorul trebuie să cunoască dinainte secvenţa de felii a staţiei. El face recuperarea calculând produsul scalar normat între secvenţa de felii recepţionată (suma liniară a tuturor staţiilor care au transmis) şi secvenţa de felii a staţiei al cărei şir de biţi încearcă să-l refacă. Dacă secvenţa de felii recepţionată e S şi receptorul încearcă să asculte de la o staţie a cărei sccvenţă de felii e C, atunci va calcula doar produsul scalar normat S*C. Pentru a vedea de ce se întâmplă aşa, imaginaţi-vă două staţii A şi C, ambele transmiţând un bit 1 în acelaşi timp în care B transmite un bit 0. receptorul primeşte suma S=A+ B +C şi calculează:
S*C= (A+IÎ +C) • C = A*C + Bw*C + C*C=0+0+l=l Primii doi termeni dispar, deoarece toate perechile de secvenţe de felii au fost alese cu grijă pentru a fi
SEC. 2.6
SISTEMUL DE TELEFONIE MOBILĂ
151
ortogonale, ca în ecuaţia (2-4). Acum ar trebui să fie clar de ce această proprietate trebuie impusă secvenţelor de felii. Un alt mod de a gândi relativ la această situaţie este de a ne imagina toate cele trei secvenţe de felii sosite separat, în loc să fie însumate. Atunci receptorul ar calcula produsul scalar cu fiecare în parte şi ar aduna rezultatele. Datorită proprietăţii de ortogonalitate, toate produsele scalare în afară de C*C ar fi 0. Adunându-le şi apoi făcând produsul lor scalar, este de fapt acelaşi lucru cu calculul produselor scalare, şi adunarea acestora. Pentru a concretiza procesul de decodificare, să considerăm din nou cele şase exemple din fig. 2- 45(c), ilustrat din nou în 2.45(d). Să presupunem că receptorul e interesat de extragerea bitului trimis de staţia C din fiecare din cele şase sume S| - S6. Se calculează acest bit prin însumarea perechilor de produse între vectorul S recepţionat şi vectorul C din figura2-45(b), luând apoi 1/8 din rezultat (pentru că în acest caz m=8). Aşa cum am arătat, de fiecare dată este decodificat bitul corect. Este ca şi cum s-ar fi vorbit franceza. într-un sistem CDMA ideal, fără zgomote, capacitatea (adică numărul de staţii) poate fi mărită oricât de mult, aşa cum şi capacitatea unui canal Nyquist fără zgomote poate fi mărită oricât de mult, A
prin utilizarea unui număr tot mai mare de biţi pe eşantion. In practică, limitările fizice reduc considerabil capacitatea. La început, am presupus că toate feliile sunt sincronizate în timp. In realitate, aceasta este imposibil de realizat. Ceea ce se poate face este ca emiţătorul şi receptorul să se sincronizeze prin expedierea de către emiţător a unei secvenţe de felii cunoscute, suficient de lungă pentru ca receptorul să o poată localiza. Astfel, toate celelalte transmisii (nesincronizate) sunt percepute ca un zgomot aleator. Dacă ele nu sunt prea numeroase, algoritmul fundamental de decodificare funcţionează, totuşi, destul de bine. Există multă teorie referitoare la suprapunerea secvenţei de felii peste nivelul de zgomot (Pickholtz, şi alţii 1982). Aşa cum vă puteţi aştepta, cu cât secvenţa de felii este mai lungă, cu atât este mai mare probabilitatea detectării ei corccte în prezenţa zgomotului. Pentru o mai mare siguranţă, secvenţa de biţi poate folosi un cod corector de erori. Secvenţele de felii nu folosesc niciodată coduri corectoare de erori. O presupunere implicită în discuţia anterioară este că nivelurile de putere ale tuturor staţiilor sunt aceleaşi cu cele percepute de receptor. Protocolul CDMA este folosit în mod obişnuit pentru sistemele fără fir cu o staţie de bază fixă şi multe staţii mobile la distanţe variabile de aceasta. Nivelurile de putere, recepţionate la staţia de bază depind de cât de departe sunt emiţătorii. în acest caz, o euristică bună este ca fiecare staţie mobilă să emită către staţia de bază la un nivel complementar de putere faţă de cel primit de la staţia de bază. Altfel spus, o staţie mobilă care recepţionează un semnal slab va folosi mai multă putere decât una care primeşte un semnal puternic. De asemenea, staţia de bază dă comenzi explicite către staţiile mobile pentru a-şi creşte/descreşte puterea de transmisie. De asemenea, am presupus că receptorul ştie cine este emiţătorul. în principiu, dată fiind suficientă putere de calcul, receptorul poate asculta toţi emiţătorii în acelaşi timp, prin rularea algoritmului de decodificare pentru fiecare dintre ei în paralel. în viaţa reală, este de ajuns să spunem că e mai uşor de zis decât de făcut. De asemenea, CDMA are mulţi alţi factori care complică soluţia şi care au fast comentaţi în această scurtă introducere. Totuşi, CDMA este o schemă inteligentă care este rapid introdusă pentru comunicaţii mobile fără fir. în mod normal, operează într-o bandă de 1.25 MHz (faţă de 30 KHz pentru D-AMPS şi 200 KHz pentru GSM), dar suportă în aceeaşi bandă mai mulţi utilizatori decât oricare dintre celelalte sisteme. în practică, lărgimea de bandă disponibilă pentru fiecare utilizator este cel puţin la fel de bună ca la GSM şi deseori mult mai bună. Inginerii care doresc să înţeleagă foarte bine CDMA ar trebui să citească (Lee şi Miller, 1998). O schemă alternativă de împrăştiere, în care împrăştierea se face în timp, şi nu în frecvenţă, este descrisă în (Crespo et al., 1995). încă o schemă este descrisă în (Sari et al., 2000). Toate aceste referinţe necesită ceva cunoştinţe în ingineria comunicaţiilor.
152
NIVELUL FIZIC
CAP. 2
2.63 A treia generaţie de telefoane mobile: Voce digitală şi date Care este viitorul în telefonia mobilă? Să aruncăm o privire rapidă. Un număr de factori dirijează industria. în primul rând, traficul de date depăşeşte deja traficul de voce pe reţeaua fixă şi creşte exponenţial, pe când traficul de voce este constant. Mulţi experţi din industrie se aşteaptă ca traficul de date să domine traficul de voce şi pe dispozitivele mobile, cât de curând. în al doilea rând, industriile telefonice, de divertisment şi de calculatoare au devenit toate digitale şi converg rapid. Mulţi oameni îşi doresc un dispozitiv uşor, portabil care să se comporte ca un telefon, CD player, DVD player, terminal pentru poşta electronică, interfaţă Web, staţie pentru jocuri, procesor de text, şi chiar mai mult, totul însoţit de conectivitate internaţională fără fir la Internet cu lărgime de bandă ridicată. Dispozitivul şi modul de conectare al acestuia sunt ceea ce înseamnă generaţia a treia de telefonie mobilă. Pentru mai multe informaţii, vezi (Huber et al., 2000; şi Sarikaya, 2000). în 1992, ITU a încercat să fie mai precis în ceea ce priveşte acest vis şi a iniţiat un plan pentru a-şi atinge scopul, numit IMT-2000, unde IMT înseamnă International Mobile Telecommunications (rom: Telecomunicaţii Mobile Internaţionale). Numărul 2000 vine de la trei lucruri: (1) anul în care trebuia să intre în utilizare, (2) frecvenţa la care trebuia să funcţioneze (în MHz), şi (3) lărgimea de bandă pe care serviciul trebuia să o aibă (în KHz). Nu a reuşit în nici unul dintre aspectele propuse Nimic nu a fost implementat până în 2000. ITU a recomandat ca toate guvernele să rezerve spectru la 2 GHz, astfel încât dispozitivele să comunice fără redirectări între ţări. China a rezervat respectiva bandă de frecvenţă, dar nimeni altcineva nu mai făcut la fel. în sfârşit, a fost recunoscut că 2 Mbps nu este în prezent posibil pentru utilizatori care sunt prea mobili (datorită dificultăţii de a realiza schimburile suficient de repede). Mai realist este 2 Mbps pentru utilizatori staţionari, în spaţii închise (ceea ce va rivaliza direct cu ADSL), 384 Kbps pentru oameni care merg, şi 144 Kbps pentru conexiuni din maşini. Oricum, întreaga arie a 3G, după cum este denumită, este un larg domeniu de activitate. A treia generaţie se poate să fie un pic mai puţin decât se aştepta şi un pic mai târzie, dar este sigur că va apărea. Principalele servicii pe care reţeaua IMT-2000 ar trebui să le ofere utilizatorilor săi sunt: 1. 2. 3. 4.
Transmisie de voce de înaltă calitate. Mesagerie (înlocuirea poştei electronice, fax-ului, SMS-ului, chat-ului etc.). Multimedia (muzică, vizualizare video, filme, televiziune) . Acces la Internet (navigare pe Web, inclusiv pagini cu audio şi video).
Servicii adiţionale ar putea fi videoconferinţele, prezentările televizate, jocurile în grup şi comerţul mobil (fluturarea mobilului către casieră pentru a plăti într-un magazin). Mai mult, toate aceste servicii ar trebui să fie disponibile oriunde pe glob (prin conectare automată printr-un satelit atunci când nici o reţea terestră nu poate fi localizată), instant (întotdeauna conectat), şi cu garanţii pentru calitatea serviciului.
SEC. 2.7
TELEVIZIUNEA PRIN CABLU
ITU a imaginat o singură tehnologie internaţională pentru IMT-2000, astfel încât fabricanţii să poată construi un singur dispozitiv care să fie vândut şi folosit oriunde în lume (cum ar fi CD player- ele şi calculatoarele şi nu cum sunt telefoanele mobile şi televizoarele). O singură tehnologie ar face viaţa mult mai simplă şi pentru operatorii de reţea şi ar încuraja mai mulţi oameni să folosească serviciile. Războaiele de format, cum a fost cel dintre Betamax şi VHS atunci când au apărut videocase- tofoanele, nu sunt benefice pentru afaceri. Au fost făcute câteva propuneri, iar după mai multe trieri au rămas în discuţie două propuneri mai interesante. Prima, W-CDMA, adică Widcband CDMA (rom: CDMA de bandă largă), a fost propusă de Ericsson. Acest sistem foloseşte secvenţă directă în spectru larg de tipul descris mai sus. Funcţionează la o lărgime de bandă de 5 MHz şi a fost proiectat să interacţioneze cu reţele GSM actuale, fară a încerca să includă şi compatibilitatea cu versiuni GSM anterioare. Are, totuşi, proprietatea că un apelant poate părăsi o celulă WCDMA şi poate intra într-o celulă GSM fără a pierde apelul. Acest sistem a fost puternic susţinut de Uniunea Europeană, care l-a numit UMTS (Universal Mobile Telecominunications System, rom: sistem universal de telecomunicaţii mobile). Cealaltă propunere a fost CDMA2000. propus de Qualcomm. Şi acesta este un proiect bazat pe secvenţa directă în spectru larg, fiind de fapt o extensie a lui IS-95 şi compatibil cu acesta. Foloseşte de asemenea o bandă de frecvenţă de 5 MHz, dar nu a fost proiectat să interacţioneze cu GSM şi nu poate redirecta apeluri către o celulă GSM (sau o celulă D-AMPS). Alte diferenţe tehnice faţă de W-CDMA sunt vitezele de cip diferite, timpii de cadre diferiţi, spectru diferite şi moduri diferite de sincronizare. Dacă inginerii de la Ericsson şi de la Qualcomm ar fi fost închişi într-o singură cameră şi li s-ar ii spus să găsească o soluţie comună, probabil că ar fi reuşit. De fapt, principiul de bază din spatele ambelor sisteme este CDMA într-un canal de 5 MHz şi nimeni nu vrea să moară pentru viteza de cip preferată. Necazul este că problema reală nu este ingineria, ci politica (ca de obicei). Europa a vrut un sistem care să poată interacţiona cu GSM, iar S.U.A. doreau un sistem care să fie compatibil cu unul deja popular în Statele Unite (IS-95). în plus, fiecare parte a sprijinit compania locală (Ericsson este originară din Suedia, iar Qualcomm este din California). în fine, Ericsson şi Qualcomm au fost implicate în numeroase procese privind patentele asupra respectivelor proiecte CDMA. In martie 1999, ccle două companii au terminat cu procesele atunci când Ericsson a fost de acord să cumpere infrastructura Qualcomm. S-au înţeles de asemenea asupra unui singur standard 3G, dar unul cu multe opţiuni incompatibile, care până la urmă recunoaşte pe hârtie diferenţele tehnice. Aceste dispute fiind încheiate, dispozitivele 3G şi serviciile ar putea începe să apară în viitorii ani. Multe s-au scris despre sistemele 3G, multe lucrări lăudându-le ca pe cel mai mare lucru de la pâinea feliată încoace. Unele referinţe sunt (Collins şi Smith, 2001; De Vriendt et al., 2002; Harţe et al., 2002; Lu, 2002 şi Sarikaya, 2000). Totuşi, unii pesimişti încă mai cred că industria se îndreaptă în direcţia greşită (Garber, 2002 şi Goodman, 2000). In aşteptarea sfârşitului disputei asupra 3G, unii operatori fac cu prudenţă un pas mic şi atent în direcţia 3G prin a merge .spre ceea ce este numit uneori 2.5G, deşi 2.1G este mai exact. Un astfel de sistem este EDGE (Enhanced Data rates for GSM Evolution, rom: viteze de transfer de date mărite pentru evoluţia GSM), ceea ce este chiar GSM cu mai mulţi biţi pe baud Problema este că mai mulţi biţi pe baud înseamnă mai multe erori pe baud, astfel că EDGE dispune de nouă scheme diferite de modulare şi corectare de erori, în funcţie de ce parte din bandă este dedicat corectării erorilor introduse de viteza mai mare. O altă schemă 2.5G este GPRS (General Packet Radio Service, rom: serviciul radio pentru pachete generice), care este o reţea de pachete generale peste D-AMPS sau GSM. Ea permite staţiilor mobile să trimită şi să primească pachete IP într-o celulă folosind sistemul pentru voce. în timpul operării GPRS, unele intervale de timp ale unor frecvenţe sunt rezervate pentru traficul de pachete. Numărul şi poziţia intervalelor pot fi administrate dinamic de către staţia de bază, în funcţie de raportul între de trafic de voce şi de date din celulă.
153
154
NIVELUL FIZIC
CAP. 2
Intervalele de timp disponibile sunt împărţite în câteva canale logice, folosite în diverse scopuri. Staţia de bază determină alocarea de canale logice peste intervalele de timp. Un canal logic este utilizat pentru preluarea de pachete de la staţia de bază la o staţie mobilă, fiecare pachet indicând cui îi este destinat. Pentru a trimite un pachet IP, o staţie mobilă solicită unul sau mai multe intervale de timp prin trimiterea unei cereri la staţia de bază. Dacă această cerere ajunge iară probleme, staţia de bază anunţă frecvenţa şi intervalele de timp alocate mobilului pentru a trimite pachetul. O dată ce pachetul a ajuns la staţia de bază, este transferat în Internet printr-o conexiune cu fir. Deoarece GPRS este doar un nivel suplimentar suprapus peste sistemul de voce deja existent, el reprezintă în cel mai bun caz o soluţie de umplere a golului până la sosirea lui 3G. Deşi reţelele 3G nu sunt complet dezvoltate deocamdată, unii cercetători privesc 3G ca pe o afacere încheiată şi, deci, care nu mai prezintă interes. Ace*şti oameni lucrează deja la sistemele 4G (Berezdivin et al., 2002; Guo şi Chaskar, 2002; Huang şi Zhuang, 2002; Keller et al., 2002; şi Misra et al., 2002). Unele dintre caracteristicile propuse pentru sistemele 4G includ lărgime de bandă mare, omniprezenţă (conectivitate oriunde), integrare simplă cu reţelele cablate şi mai ales cu IP, administrare de resurse şi spectru, transmisii radio software şi calitatea serviciilor pentru aplicaţii multimedia. Pe de altă parte, sunt amenajate la tot pasul o sumedenie de puncte de acces pentru LAN-urile fără fir 802.11, astfel încât unii oameni cred că 3G este nu numai o afacere neîncheiată, ci şi că este condamnat la dispariţie. în această viziune, oamenii se vor plimba de la un punct de acces 802.11 la altul pentru a rămâne conectaţi. A spune că „industria este într-o continuă creştere” este doar o imensă subestimare. Reveniţi la această discuţie peste 5 ani, ca să vedeţi ce s-a întâmplat.
2.7 TELEVIZIUNEA PRIN CABLU Am studiat până acum atât sistemele de telefonie fixă cât şi pe cele de telefonie fără fir în mod egal. Ambele vor juca un rol important în reţelele viitorului. Totuşi, o nouă alternativă disponibilă pentru reţelele fixe devine acum un jucător important: reţelele de televiziune prin cablu. Mulţi oameni primesc deja telefonul şi serviciile Internet prin cablu, iar operatorii de cablu muncesc din greu pentru a-şi creşte cota pe piaţă. în următoarele paragrafe vom privi mai în detaliu televiziunea prin cablu ca sistem de reţele şi îl vom compara cu sistemele de telefonie pe care tocmai le-am studiat. Pentru mai multe informaţii despre televiziunea prin cablu, vezi (Laubach et al.,2001; Louis, 2002; 0vadia,2001; şi Smith, 2002).
2.7.1
Televiziune prin antena colectivă
Televiziunea prin cablu fost concepută la sfârşitul anilor 1940 ca un mijloc de a oferi recepţie mai bună oamenilor care trăiau în zone rurale sau muntoase. Iniţial, sistemul era format dintr-o antenă mare montată pe vârful unui deal pentru a capta semnalul de televiziune din aer, un amplificator, numit amplificator terminal (eng: head cnd), pentru a spori puterea semnalului, şi un cablu coaxial pentru a transmite semnalul în casele oamenilor, după cum este ilustrat în fig. 2-46. In primii ani, televiziunea prin cablu era numită televiziune prin antena colectivă. Se asemăna foarte mult cu o operaţie mama-şi-tata; oricine era destul de îndemânatic la electronică putea pune la punct un serviciu pentru oraşul lui, pentru ca apoi utilizatorii să participe la plata costurilor. Deoarece numărul de abonaţi a crescut, au trebuit adăugate cabluri în derivaţie din cablul original şi s-au adăugat noi amplificatoare acolo unde a fost nevoie de ele. Transmisia era într-un singur sens, de la amplificatorul din capăt, de lângă antenă, spre utilizatori. Până în 1970, existau mii de astfel de sisteme independente. Antenă pentru captarea
SEC. 2.7
TELEVIZIUNEA PRIN CABLU
Robinet Cablu coaxial Fig. 2-46. Un sistem primitiv de televiziune prin cablu A
In 1974, Time Inc., a pas bazele unui nou canal, Home Box Office, cu conţinut nou (filme) şi distribuit doar prin cablu. Au urmat alte canale distribuite doar pe cablu, cu ştiri, sport, gastronomie şi multe alte subiecte. Această dezvoltare a dat naştere la două schimbări în industrie. In primul rând, mari corporaţii au început să cumpere sisteme de cablu deja existente şi să întindă noi cabluri pentru a atrage noi abonaţi. In al doilea rând, exista acum cerinţa de a se conecta mai multe sisteme de cablu, adesea aflate în oraşe îndepărtate, pentru a fi distribuite canalele noi de televiziune prin cablu. Companiile de cablu au început să întindă cabluri între oraşele lor pentru a le conecta pe toate într-un sistem unic. Acest model a fost analog cu ceea ce s-a întâmplat în industria telcfonică în urmă cu 80 de ani în cazul concctării oficiilor periferice izolate pentru a face posibile apelurile la distanţă mare.
2.7.2
Internet prin cablu
De-a lungul anilor sistemul de cablu a crescut şi cablurile dintre diversele oraşe au fost înlocuite cu fibră cu lărgime de bandă mare, similar cu ceea ce s-a întâmplat în sistemul telefonic. Un sistem cu fibră pentru transportul pe distanţe lungi şi cu cablu coaxial până la casele clienţilor este numit sistem HFC (Hybrid Fiber Coax, rom: hibrid fibră-coaxial). Convertoarele electro-optice folosite pentru interfaţarea părţilor optice şi electrice ale sistemului sunt numite noduri de fibră. Pentru că lărgimea de bandă a fibrei este mult mai mare decât cea a cablului coaxial, un nod de fibră poate alimenta mai multe cabluri coaxiale. O parte a unui sistem HFC modern este prezentat în fig. 2-47(a). In ultimii anii, mulţi operatori de cablu au decis să intre în afaceri legate de accesul la Internet, şi adesea şi în afaceri legate de telefonie. Totuşi, diferenţele tehnice dintre centralele de cablu şi cele de telefon au efecte semnificative asupra operaţiilor care trebuie făcute pentru a atinge aceste scopuri. De exemplu, toate amplificatoarele unidirecţionale din sistem trebuie înlocuite cu amplificatoare bidirecţionale.
155
156 Comutator
Trunchi de fibră de lărgime de bandă mare
NIVELUL FIZIC
i1
CAP. 2 se I 1
m
Cablu coaxial
i Nod de fibră
l ■]
il
i Êt^Êk
SS ■ ÏÏ
Sffl | * *
«m
Ampli ficator terminal
/ Robinet Casă
Oficiu de taxare
Trunchi de fibră de lărgime de
Buclă Oficiu locală (a)
Cablu torsadat din cupru (b)
Fig. 2-47. (a) Televiziune prin cablu, (b) Sistemul de telefonie fixă. Totuşi, există între sistemul HFC din fig. 2-47(a) şi sistemul telefonic din fig. 2-47(b) o diferenţă care este mult mai greu de înlăturat. In inima cartierelor, un singur cablu este utilizat în comun de mai multe case, pe când în sistemul telefonic, fiecare casă are propria buclă locală. Când este folosit pentru difuzarea televiziunii, această utilizare multiplă nu joacă nici un rol. Toate programele sunt difuzate pe cablu şi nu are nici o importanţă dacă sunt 10 telespectatori sau 10.000 de telespectatori. Când acelaşi cablu este utilizat pentru acces la Internet, contează foarte mult dacă sunt 10 utilizatori sau 10.000. Dacă unul dintre utilizatori se decide să preia de pe Internet un fişier foarte mare, lărgimea de bandă respectivă este teoretic luată de la alţi utilizatori. Cu cât sunt mai mulţi utilizatori, cu atât este mai mare compctiţia pentru lărgimea de bandă. Sistemul telefonic nu are această caracte
SEC. 2.7
TELEVIZIUNEA PRIN CABLU
157
ristică: salvarea unui fişier foarte mare prin intermediul unei linii ADSL nu reduce banda de frecvenţă a vecinului. Pe de altă parte, lărgimea de bandă a cablului coaxial este mult mai mare dccât cea a perechilor torsadate. Soluţia prin care industria cablului a rezolvat această problemă a fast separarea cablurilor lungi şi conectarea fiecăreia dintre bucăţi direct la un nod de fibră. Lărgimea de bandă de la amplificator până la fiecare nod de fibră este teoretic infinită, aşa că atâta timp cât nu sunt foarte mulţi abonaţi pe fiecare segment de cablu, cantitatea de trafic este rezonabilă. în prezent, cablurile obişnuite deservesc 500-2000 de case. Din ce în ce mai mulţi oameni se abonează la Internet prin cablu, aşa că încărcarea ar putea să devină prea mare, necesitând mai multe separări şi mai multe noduri de fibră. 2.73 Alocarea de spectru Renunţarea la toate canalele TV şi utilizarea infrastructurii de cablu strict pentru accesul la Internet ar genera probabil un număr considerabil de clienţi iritaţi, astfel încât companiile de cablu ezită să facă acest lucru. Mai mult, cele mai multe oraşe cenzurează serios ceea ce este pe cablu, astfel că operatorii de cablu nu ar putea face acest lucru nici dacă ar dori într-adevăr. Ca o consecinţă, a fost nevoie să se găsească o modalitate ca televiziunea si Internetul sa coexiste pe acelaşi cablu. Canalele televiziunii prin cablu din America de Nord ocupă în mod normal regiunea de 54-550 MHz (mai puţin regiunea de la 88 la 108 MHz, atribuită radioului FM). Aceste canale au 6 MHz lăţime, inclusiv benzile de siguranţă. în Europa, limita inferioară este de obicei de 65 MHz şi canalele au 6-8 MHz lăţime pentru rezoluţia mai înaltă cerută de PAL şi SECAM, dar altfel schema de alocare este similară. Partea de jos a benzii nu este folosită. De asemenea, cablurile moderne pot opera cu mult peste 550 MHz, adesea la 750 MHz sau mai mult. Soluţia aleasă a fost introducerea de canale ascendente în banda 5-42 MHz (ceva mai sus în Europa) şi utilizarea frecvenţelor de la limita superioară pentru canale descendente. Spectrul cablului este ilustrat în fig. 2-48. 5 42 54 88 LA
108
550
i=l, restricţionând numerele de secvenţă la 0 şi 1, dar versiuni mai sofisticate pot utiliza o valoare arbitrară a lui«. Esenţa protocoalelor cu fereastră glisantă este aceea că, la orice moment de timp, emiţătorul menţine o mulţime de numere de secvenţă care corespund cadrelor pe care are permisiunea să le trimită. Se spune că aceste cadre aparţin ferestrei de transmisie (eng.: sending window). Similar, receptorul menţine de asemenea o fereastră de recepţie (eng.: receiving window), ce corespunde mulţimii de cadre care pot fi acceptate. Fereastra emiţătorului şi fereastra receptorului nu trebuie să aibă aceleaşi limite minime şi maxime şi nici măcar aceeaşi dimensiune. în unele protocoale ele au dimensiune fixă, dar în altele ele pot creşte sau scădea pe măsură ce cadrele sunt emise sau recepţionate. Chiar dacă aceste protocoale dau nivelului legătură de date mai multă independenţă în ceea ce priveşte ordinea în care poate primi sau recepţiona cadre, nu am renunţat la cerinţa ca protocolul să livreze pachetele la nivelul reţea destinaţie în aceeaşi ordine în care acestea sunt trimise către nivelul legătură de date de pe maşina emiţătoare. Nu am modificat nici condiţia impusă canalului fizic de comunicaţie, care trebuie să se comporte "ca un fir", adică trebuie să trimită toate cadrele în ordinea emiterii. Numerele de secvcnţă din cadrul ferestrei emiţătorului reprezintă cadre transmise sau cadre ce pot fi transmise, dar încă neconfirmate. De fiecare dată când de la nivelul reţea soseşte un nou pachet, acestuia îi este atribuit următorul număr de secvenţă, iar marginea superioară a ferestrei este avansată cu unu. Atunci când soseşte o confirmare, creşte cu unu limita inferioară a ferestrei, în acest mod, fereastra menţine continuu o listă de cadre neconfirmate. Un exemplu este prezentat în fig. 3-13.
CAP.
3
SEC. 3.4
PROTOCOALE CU FEREASTRĂ GLISANTĂ
193
Receptor
Fig. 3-13.0 fereastră glisantă de dimensiune 1, cu număr de secvenţă de 3 biţi. (d) (c (a (b ) ) ) (a) Iniţial, (b) După ce a fost transmis primul cadru, (c) După ce a fost recepţionat primul cadru. (d) După ce a fost recepţionată prima confirmare. Deoarece cadrele din fereastra curentă a emiţătorului pot fi pierdute sau modificate pe traseu, emiţătorul trebuie să păstreze toate aceste cadre în memoria sa pentru o posibilă retransmisie. Astfel, dacă dimensiunea maximă a ferestrei este ny emiţătorul are nevoie de n tampoane pentru a păstra cadrele neconfirmate. Dacă fereastra creşte Ia dimensiunea maximă, nivelul legătură de date al emiţătorului trebuie să forţeze închiderea nivelului reţea până când se eliberează un tampon. Fereastra nivelului legătură de date receptor corespunde cadrelor pe care acesta le poate accepta. Orice cadru din afara ferestrei este eliminat fără comentarii. Atunci când este recepţionat un cadru al cărui număr de secvenţă este egal cu marginea inferioară a ferestrei, acesta este trimis nivelului reţea, este generată o confirmare şi fereastra se deplasează cu o unitate. Spre deosebire de fereastra emiţătorului, fereastra receptorului rămâne întotdeauna la dimensiunea iniţială. De notat că o fereastră de dimensiune 1 înseamnă că nivelul legătură de date acceptă numai cadre ordonate, dar pentru ferestre mari afirmaţia nu mai este valabilă. Nivelul reţea este, dimpotrivă, alimentat întotdeauna cu date în ordine corectă, indiferent de dimensiunea ferestrei nivelului legătură de date. Fig. 3-13 prezintă un exemplu cu o fereastră de dimensiune maximă 1. Iniţial, nu sunt emise cadre, aşa că marginile inferioară şi superioară ale ferestrei emiţătorului sunt egale, dar o dată cu trecerea timpului, situaţia evoluează ca în figură. 3.4.1
Un protocol cu fereastră glisantă de un bit
.
înainte de a analiza cazul general, să examinăm mai întâi un protocol cu fereastră glisantă având dimensiunea maximă a ferestrei 1 i Un astfel de protocol utilizează metoda stop-and-wait, deoarece emiţătorul transmite un cadru şi aşteaptă confirmarea sa înaintea transmiterii următorului cadru. Fig. 3-14 prezintă un astfel de protocol. Ca şi alte protocoale, acesta începe prin definirea unor variabile. Next Jramejojend arată ce cadru încearcă să transmită emiţătorul. Similar, fratne_ ex- pected arată ce cadru este aşteptat de receptor. în ambele cazuri singurele posibilităţi sunt 0 şi 1.
NIVELUL LEGĂTURĂ DE DATE
194 / * P r o t o c o l u l 4 ( f e r e a s t r ă gl i s a n t ă ) e s t e b i d i r e c ţ i o n a l . */
/ * p e n t r u p r o t o c o l u l 4 t r e b u i e s ă fi e 1 */
t fd e fi n e M AX _ S E Q 1
t yp e d e f e n u m { fr a m e a r r i va l , c ks u m e r r , t i m e o u t } e ve n t _ t yp e ; ¿ i n c l u d e "p r o t o c o l . h " vo i d p r o t o c o l 4 ( vo i d )
start timer(s.seq);
{
}
s e q _ n r n e x t _ fr a m e _ t o _ s e n d ; s e q _ n r f r a m e _ e xp e c t e d ; f r a m e
/* doar 0 sau 1 * / * doar 0 sau 1 * / * variabile t e mp o r a r e * / * p a c h e t u l c u r e n t , c a r e e s t e
r, s; packet buffer; e v e n t _ t yp e e v e n t ;
transmis *
n e xt _ f r a m e _ t o _ s e n d = 0 ; f r a m e _ e xp e c t e d = 0 ; fr o m _ n e t w o r k_ l a ye r ( & b u f f e r ) ;
/ * u r m ă t o r u l c a d r u p e fl u x u l d e i e ş i r e / * n u m ă r u l d e s e c ve n ţ ă a l c a d r u l u i a ş t e p t a t / * p r e i a u n p a c h e t d e l a n i ve l u l r e ţ e a / * p r e g ă t e ş t e t r i m i t e r e a c a d r u l u i i n i ţ i a l
s . i n fo = b u f fe r ; s . s e q = n e xt _ f r a m e _ t o _ s e n d ; s . a c k = 1 -
/ * i n s e r e a z ă î n c a d r u n u m ă r u l d e s e c ve n ţ ă / * c o n fi r m a r e a t a ş a t ă / * t r a n s m i t e c a d r u l / * p o r n e ş t e
f r a m e _ e xp e c t e d ; t o p h ys i c a l _ 1 a ye r ( & s ) ; s t a r t _ t i m e r ( s . s e q ) ; wh i l e ( t r u e ) {
ceasul
w a i t _ fo r e v e n t ( & e v e n t ) ; i f ( e ve n t = = f r a m e _ a r r i va l ) fr o m _ p h ys i c a 1 _ l a ye r ( & r ) ; i f ( r . s e q = = fr a m e _ e xp e c t e d ) { t o _ n e t wo r kJ a ye r ( & r . i n fo ) ; i n c ( f r a m e e xp e c t e d ) ;
/ * f r a m e a r r i v a l , c k s u m_ e r r s a u t i m e o u t / * u n c a d r u a a j u n s n e d e fo r m a t / * p r e i a c a d r u l / * t r a t e a z ă f l u xu l de cadre sosite / * predă pachetul nivelului reţea / * i n ve r s e a z ă n u m ă r u l d e s e c ve n ţ ă a ş t e p t a t
} if (r.ack == n e xt _ f r a m e _ t o _ s e n d )
{
{ / * t r a t e a z ă f l u xu l d e c a d r e d e i e ş i r e /* opreşte ceasul / * preia un nou pachet de la n i ve l u l r e ţ e a n ve r s e a z ă n u m ă r u l d e s e c ve n ţ ă a l
s t o p _ t i m e r ( r . a c k) ; f r o m_ n e t wo r k_ l a ye r ( & b u f f e r ) ;
e mi ţ ă t o r u l u i
i n c ( n e xt _ f r a m e _ t o _ s e n d ) ;
} } /* construieşte cadrul care iese / * inserează un
s . i n fo = b u f fe r ; s . s e q = n e xt _ fr a m e _ t o _ s e n d ; s . a c k = 1 - fr a m e _ e xp e c t e d ; t o _ p h ys i c a l _ l a ye r ( & s ) ;
n u m ă r d e s e c ve n ţ ă n u m ă r u l d e s e c v e n ţ ă a l u l t i m u l u i c a d r u p r i mi t
/*i
/ * t r a n s mi t e u n c a d r u / * p o r n e ş t e c e a s u l
Fig. 3-l4.Un protocol cu fereastră glisantă de 1 bit. în mod normal, unul dintre cele două niveluri legătură de date porneşte primul trimiţând primul cadru. Cu alte cuvinte, numai unul din programele nivelului legătură de date va conţine apelurile procedurilor iojphysicaljayer şi start jitner în afara buclei principale. în eventualitatea că ambele niveluri legătură de date pornesc simultan, apare o situaţie specială, care va fi discutată mai târziu. Maşina care porneşte prima preia primul pachet de la nivelul reţea propriu, construieşte din el un cadru şi îl trimite. Când acest cadru (sau oricare altul) soseşte, nivelul legătură de date receptor verifică dacă nu cumva este un duplicat, exact ca în protocolul 3. Dacă respectivul cadru este cel aşteptat, atunci este trimis nivelului reţea şi fereastra receptorului este deplasată.
CAP.
3
PROTOCOALE CU FEREASTRĂ GLISANTĂ
SEC. 3.4
195
Câmpul de confirmare conţine numărul ultimului cadru recepţionat fără eroare. Dacă acest număr corespunde cu numărul de secvenţă al cadrului pe care emiţătorul încearcă să-l transmită, emiţătorul ştie că a terminat cu cadrul memorat în tampon şi poate prelua următorul pachet de la nivelul său reţea. Dacă numărul de secvenţă nu corespunde, el trebuie să continue să trimită acelaşi cadru. De fiecare dată când este recepţionat un cadru, un alt cadru este trimis de asemenea înapoi. Să examinăm acum cât de fiabil este protocolul 4 la condiţiile limită. Să presupunem că,4 încearcă să trimită cadrul 0 lui B şi B încearcă să trimită cadrul său 0 lui/4. Să presupunem că A trimite un cadru lui By dar timpul de expirare al lui/l este puţin prea scurt. în consecinţă, datorită expirării repetate a timpului,/! va trimite o serie de cadre identice, toate cu seq=0 şi ack= 1. Atunci când la B soseşte primul cadru corect, el va fi acceptat şi frame_expected va fi setat la 1. Toate cadrele următoare vor fi respinse, deoarece B aşteaptă cadre cu numărul de secvenţă 1, nu 0. Mai mult, deoarece toate duplicatele au ack=1 şi B este încă în aşteptarea confirmării lui 0, B nu va prelua un nou pachet de la nivelul său reţea. După sosirea fiecărui duplicat respins, B trimite lui A un cadru conţinând seq=0 şi ack=0. în cele din urmă, unul dintre acestea soseşte corect la A, facându-1 pe A să înceapă să trimită următorul pachet. Nici o combinaţie de cadre pierdute sau de intervale de ceas reduse nu poate face ca protocolul să furnizeze pachete duplicate către vreunul dintre nivelurile reţea, să sară un pachet sau să se blocheze. A0) ^
A trimite (0,1, A0)
B primeşte (0, 1,A0) B trimite (0, 0, B0) 0, B0)*"* A primeşte (0, 1, B0)* A A1) ____ trimite (0, A0) B 0, primeşte AC 2: A-» A 3: AD -> BE 4: B —> B 5: C-> 6: D -» 7: E-> 8: CF -» DF 9: EG-> DG 10: CG —» DF 11: EF-»DG C: Cadru 0 pe linie D: Confirmare pe linie (Ack) E: Cadru 1 pe linie
. Starea transmiţătorului
. ;
Canal
Starea receptorului
Fig. 3-23. Model de tip reţea Petri pentru protocolul 3. Reţelele Petri pot fi utilizate pentru a detecta erori în protocol, într-un mod similar folosirii automatelor finite. De exemplu, dacă o secvenţă executabilă a inclus tranziţia 10 de două ori fară a include tranziţia 11 ca intermediar, protocolul ar fi incorect. Conceputul de interblocare într-o reţea Petri este de asemenea similar corespondentului său de la automatul finit. Interesant de observat este cum s-a reuşit reducerea unui protocol complex la 11 reguli gramaticale simple,
CAP.
3
EXEMPLE DE PROTOCOALE ALE LEGĂTURII DE DATE
SEC. 3.6
209
care pot fi uşor manipulate de un program. Starea curentă a reţelei Petri este reprezentată ca o colecţie neordonată de locuri, fiecare loc fiind reprezentat în colecţie de un număr de ori egal cu numărul de jetoane pe care le conţine. Orice regulă ale cărei locuri din membrul stâng sunt prezente, poate fi executată, ştergând aceste locuri din starea curentă şi adăugând locurile sale de ieşire la starea curentă. Marcajul din ftg. 3-23 este ACG (adică A, C şi G au fiecare câte un jeton), şi astfel, regula 10 (CG-+DF) poate fi aplicată, ducând la o nouă stare (posibil cu acelaşi marcaj ca cea iniţială), dar regula 3 (AD->BE) nu poate fi aplicată.
3.6 EXEMPLE DE PROTOCOALE ALE LEGĂTURII DE DATE In următoarele secţiuni vom examina câteva protocoale larg folosite pentru legătura de date. Primul dintre ele, HDLC, este un protocol clasic orientat pe bit ale cărui variante sunt folosite de decenii întregi în multe aplicaţii. Cel de-al doilea, PPP, este protocolul de nivel legătură de date folosite pentru conectarea calculatoarelor casnice la Internet. 3.6.1
HDLC - Controlul de nivel înalt al legăturii de date
A
In această secţiune vom examina un grup de protocoale strâns legate, puţin mai vechi, dar care sunt încă foarte utilizate. Ele sunt toate derivate din protocolul pentru legătura de date utilizat în lumea mainframc-urilor IBM, numit SDLC (Synchronous Data Link Control, rom.: protocolul de control sincron al legăturii de date). După ce a dezvoltat SDLC, IBM l-a supus examinării ANSI şi ISO pentru acceptarc ca standard SUA şi, respectiv, internaţional. ANSI a modificat protocolul, astfel încât acesta a devenit ADCCP (Advanced Data Communication Control Procedure, rom.: procedură de control avansat al comunicaţiilor de date), iar ISO la modificat şi a produs HDLC (High-level Data Link Control, rom.: control de nivel înalt al legăturii de date). CCITT a adoptat şi modificat HDLC pentru al său L\P (Link Access Procedure, rom.: procedură de acces la legătură) care este parte a standardului pentru interfaţa de reţea X.25, dar, mai târziu l-a modificat din nou, rezultând LAPB, în scopul de a-1 face mai compatibil cu o versiune ulterioară de HDLC. Un lucru frumos în ccea ce priveşte standardele este că sunt multe, dintre care poţi alege. în plus, dacă nu îţi place nici unul dintre ele, poţi aştepta modelul care va apărea anul viitor. Aceste protocoale se bazează pe aceleaşi principii. Toate sunt orientate pe biţi şi folosesc inserarea de biţi pentru transparenţa datelor. Ele diferă doar în puncte minore, şi totuşi supărătoare. Discuţia care urmează, despre protocoalele orientate pe biţi, intenţionează a fi o introducere generală. Pentru detaliile specifice fiecărui protocol, consultaţi definiţia corespunzătoare. Toate protocoalele orientate pe biţi folosesc structura de cadru prezentată în fig. 3-24. Câmpul Adresă este primul ca importanţă pentru liniile cu terminale multiple, unde el este folosit nentru a identifica unul dintre terminale. Pentru liniile punct-la-punct, el este folosit uneori pentru a deosebi comenzile de răspunsuri. Biţi
8 01111110
8 Adresă
8 Control
>0 Date
16 Sumă de
8 01111110
control
Fig. 3-24. Format de cadru pentru protocoalele orientate pe biţi. Câmpul Control este folosit pentru numere de secvenţă, confirmări şi alte scopuri, după cum se va arăta în
NIVELUL LEGĂTURĂ DE DATE
210
continuare. Câmpul Date poate conţine informaţii arbitrare. Poate avea lungime arbitrară, cu toate că eficienţa sumei de control scade odată cu creşterea lungimii cadrului, datorită creşterii probabilităţii de apariţie a erorilor în rafală. Câmpul Suma de Control este o variantă CRC (Cyclic Redundancy Code - cod ciclic redundant), folosind tehnica prezentată in Sec. 3-2.2. Cadrul este delimitat cu o altă secvenţă indicator (01111110). Pe liniile punct-la-punct inactive secvenţele indicator sunt transmise continuu. Un cadru minim conţine trei câmpuri şi are în total 32 de biţi, excluzând indicatorii de la capete. Există trei tipuri de cadre: Informaţie, Supervizor şi Nenumerotat. Conţinutul câmpului Control pentru fiecare dintre aceste trei tipuri este prezentat în fig. 3-25. Acest protocol foloseşte o fereastră glisantă, cu un număr de secvenţă reprezentat pe 3 biţi. în fereastră pot fi păstrate, la un moment dat, până la şapte cadre neconfirmate. Câmpul Secvenţă din fig. 3-25(a) este numărul de secvenţă al cadrului. Câmpul Următor este o confirmare ataşată. Oricum, toate protocoalele aderă la convenţia că, în loc să ataşeze numărul ultimului cadru recepţionat corect, să folosească numărul primului cadru nerecepţionat (adică următorul cadru aşteptat). Opţiunea pentru ultimul cadru primit sau următorul cadru recepţionat este arbitrară; nu are importanţă ce convenţie este utilizată, dacă este folosită cu consecvenţă. Biţi (a)
1 0
(b)
1
(c)
1
1
3 Secvenţă
1 P/F
3 Următor
Tip
P/F
Următor
Tip
P/F
Modificator
Fig. 3-25. Câmpul Control pentru (a) un cadru de informaţie, (b) un cadru de supervizare, (c) un cadru nenumerotat. Bitul P/F înseamnă Test/Final (eng.: Poli/Final). El este folosit atunci când un calculator (sau un concentrator) interoghează un grup de terminale. Când este folosit ca P, calculatorul invită terminalul să trimită date. Toate cadrele trimise de terminal, cu excepţia celui final, au bitul P/F setat pe P. Pentru cadrul final bitul este setat la F. în câteva dintre protocoale, bitul P/F este folosit pentru a forţa cealaltă maşină să trimită imediat un cadru Supervizor, în loc să aştepte fluxul invers la care să se ataşeze informaţia despre fereastră. Bitul are de asemenea câteva utilizări minore referitoare la cadrele nenumerotate. Numeroasele tipuri de cadre Supervizor sunt diferenţiate prin câmpul Tip. Tipul 0 este un cadru de confirmare (numit oficial RECEIVE READY) folosit pentru a indica următorul cadru aşteptat. Cadrul este folosit atunci când nu există flux invers care să poată fi folosit pentru ataşare. Tipul 1 este un cadru de confirmare negativă (oficial numit REJECT). Este folosit pentru a indica detecţia unei erori de transmisie. Câmpul Următor indică primul cadru din secvenţă ce nu a fost recepţionat corect (deci cadrul ce trebuie retransmis). Transmiţătorului i se cere să retransmită toate cadrele neconfirmate, începând cu Următor-ui. Această strategie este similară mai degrabă protocolului 5 decât protocolului 6. Tipul 2 este RECEIVE NOT READY. El confirmă toate cadrele, cu excepţia lui Următor, exact ca RECEIVE READY, dar spune transmiţătorului să oprească transmisia. RECEIVE NOT READY este destinat să semnaleze anumite probleme temporare apărute la receptor, cum ar fi lipsa zonelor tampon, şi nu ca o alternativă la controlul fluxului cu fereastră glisantă. Când problema a fost rezolvată, receptorul trimite un
CAP.
3
EXEMPLE DE PROTOCOALE ALE LEGĂTURII DE DATE
SEC. 3.6
211
RECEIVE READY, REJECT sau anumite cadre de control. Tipul 3 este SELECTIVE REJECT. El cere retransmiterea, însă doar pentru cadrul specificat. Din acest punct de vedere este mai apropiat de protocolul 6 decât de protocolul 5 şi de aceea este folositor atunci când dimensiunea ferestrei transmiţătorului este jumătate sau mai puţin din dimensiunea spaţiului secvenţei. Astfel, dacă receptorul doreşte să păstreze cadre care erau în afara secvenţei pentru posibila folosire ulterioară, el poate să forţeze retransmiterea oricărui cadru, folosind SELECTIVE REJECT. HDLC şi ADCCP permit acest tip de cadru, dar SDLC şi LAPB nu îl permit (adică nu există Selective Reject) şi cadrele de tipul 3 nu sunt definite. Cea de-a treia clasă o reprezintă cadrul Nenumerotat. El este folosit uneori în scopuri dc control, dar poate fi folosit şi pentru transportul datelor atunci când se recurge la un serviciu nesigur, neoriental pe conexiune. Diversele tipuri de protocoale orientate pe biţi diferă considerabil aici, spre deosebire de celelalte două tipuri, unde erau aproape identice. Pentru a indica tipul cadrului sunt disponibili cinci biţi, dar nu sunt folosite toate cele 32 de posibilităţi. Toate protocoalele furnizează o comandă, DISC (DISConnect), care permite ca o maşină să anunţe că se va opri (de exemplu pentru întreţinere preventivă). De asemenea există o comandă ce permite ca o maşină, care tocmai s-a reconectat, să-şi anunţe prezenţa şi să forţeze resetarca tuturor numerelor de secvenţă la zero. Această comandă poartă numele de SNRM (Set Normal Response Mode - stabileşte modul normal de răspuns). Din nefericire, „modul normal de răspuns” numai normal nu este. Este un mod neechilibrat (adică asimetric) în care unul din capctele liniei este maşter iar celălalt este slave. SNRM datează din timpurile când comunicaţia datelor presupunea un terminal neinteligent comunicând cu un calculator gazdă puternic, ceea ce este, evident, asimetric. Pentru a face protocolul mai potrivit cazurilor în care cei doi parteneri sunt egali, HDLC şi I-APB au o comandă suplimentară, SABM (Set Asynchronous Balanced Mode - stabileşte modul asincron echilibrat), care resetează linia şi declară ambii parteneri ca fiind egali. De asemenea, aceste protocoale au comenzile SABME şi SNRME, care sunt identice cu SABM şi, respectiv, SNRM, cu excepţia faptului că ele permit folosirea unui format extins pentru cadru, care utilizează numere de secvenţă pe 7 biţi în locul unora pe 3 biţi. A treia comandă prevăzută dc toate protocoalele este FRMR (FRaMc Reject), folosită pentru a indica sosirea unui cadru cu suma de control corectă, dar cu semantică imposibilă. Exemple de semantică imposibilă sunt cadru de tipul 3 Supervizor în LAPB, un cadru mai scurt de 32 de biţi, un cadru de control nepermis, confirmarea unui cadru care a fost în afara ferestrei etc. Cadrele FRMR conţin un câmp de date de 24 de biţi care arată ceea ce a fost eronat la cadrul respectiv. Datele includ câmpul de control al cadrului eronat, parametrii ferestrei şi o colecţie de biţi folosiţi pentru a semnala erori specifice. Cadrele de control pot fi pierdute sau deteriorate ca şi cadrele de date, de aceea şi ele trebuie A.
confirmate. In acest scop este furnizat un cadru special de control, numit UA (Unnumbered Acknowledgement). Deoarecc poate exista un singur cadru de control neconfirmat, nu există niciodată ambiguităţi asupra cadrului care este confirmat. Cadrele de control rămase sunt folosite pentru iniţializare, interogare şi raportarea stării. Există, de asemenea, un cadru de control care poate conţine informaţii arbitrare, UI (Unnumbered Information). Accste date nu sunt livrate nivelului reţea, ci sunt destinate a fi primite chiar de nivelul legătură dc date. în ciuda utilizării pe scară largă, HDLC este departe de a fi perfect. O discuţie despre diversitatea problemelor asociate cu acest protocol poate fi găsită în (Fiorini ş.a., 1995). 3.6.2
Nivelul legăturii de date în Internet
Intemet-ul constă din maşini individuale (calculatoare gazdă şi rutere) şi o infrastructură de comunicaţie care le conectează. în cadrul unei singure clădiri sunt larg utilizate LAN-urile pentru interconectare, dar infrastructura de arie largă este construită din linii închiriate, punct-la-punct. în Cap. 4 vom studia LAN-urile; aici vom examina protocoalele legăturii de date folosite pe liniile punct-la-punct în Internet.
NIVELUL LEGĂTURĂ DE DATE
212
in practică, comunicaţia punct-la-punct este folosită în principal în două situaţii. în primul rând, mii de organizaţii au una sau mai multe LAN-uri, fiecare cu un anumit număr de calculatoare gazdă (calculatoare personale, staţii de lucru ale utilizatorilor, servere ş.a.m.d.) şi un ruter (sau o punte care este funcţional similară). Adeseori, ruterele sunt interconectate printr-un trunchi LAN. în mod tipic, toate conexiunile cu lumea exterioară se fac printr-unul sau două rutere care au linii punct-la- punct închiriate spre rutere aflate la distanţă. Internet-ul este construit din aceste rutere şi liniile lor închiriate care realizează subreţelele de comunicaţie. Acasă la utilizator
Biroul furnizorului de servicii Internet
Fig. 3-26. Un calculator personal lucrând ca un calculator gazda în Internet. A doua situaţie în care liniile punct-la-punct joacă un rol major în Internet o reprezintă milioanele de utilizatori individuali care au conexiuni de acasă la Internet folosind modemuri şi linii telefonice comutate. De obicei PC-ul de acasă al unui utilizator apelează ruterul unui furnizor de servicii Internet, şi poate acţiona astfel ca orice calculator gazdă Internet. Această metodă de operare nu este diferită de accea în care există o linie închiriată între PC şi ruter, cu excepţia faptului că atunci când utilizatorul îşi termină sesiunea, conexiunea va fi închisă. în fig. 3-26 este ilustrat un PC casnic ce apelează un furnizor de servicii Internet. Modem-ul este prezentat ca fiind extern, tocmai pentru a-i accentua rolul, dar calculatoarele modeme dispun de modem-uri interne. Atât pentru conexiunea pe linie închiriată ruter-ruter cât şi pentru conexiunea comutată calculator gazdăruter, este necesar un protocol de legătură de date punct-la-punct pentru încadrare, controlul erorilor şi pentru alte funcţii ale nivelului legătură de date pe care le-am studiat în acest capitol. Cel folosit în Internet este PPP. în continuare acesta va fi prezentat în detaliu.
PPP - Point-to-Point Protocol (rom.: protocol punct-la-punct) Intemetul are nevoie de un protocol punct-la-punct care să servească mai multor scopuri, incluzând trafic ruter-la-ruter şi trafic utilizator-la-ISP. Acest protocol este PPP (Point-to-Point Protocol, rom.: protocolul punct-la-punct), care este definit in RFC 1661 şi dezvoltat în alte câteva RFC-uri (de exemplu RFC-urile 1662,1663). PPP face detecţia erorilor, suportă mai multe protocoale, permite ca adresele IP să fie negociate în momentul conectării, permite autentificarea şi are multe alte capabilităţi. PPP furnizează trei lucruri: 1. O metodă de împărţire în cadre care delimitează, fără ambiguitate, sfârşitul unuia şi începutul următorului. Formatul cadrului permite şi detecţia de erori. 2. Un protocol de control al legăturii pentru a obţine liniile, a le testa, a negocia opţiunile şi pentru a elibera liniile atunci când nu mai este nevoie de ele. Acest protocol se numeşte LCP(Link Control Protocol, rom: protocolul de control al legăturii). El suportă circuite sincrone şi asincrone şi codificări
CAP.
3
EXEMPLE DE PROTOCOALE ALE LEGĂTURII DE DATE
SEC. 3.6
213
orientate atât pe bit, cât şi pe caracter. 3. Un mod de a negocia opţiunile nivelului reţea într-un mod independent de protocolul folosit pentru nivelul reţea. Metoda aleasă este de a avea un NCP (Network Control Protocol, rom: protocol de control al reţelei) pentru fiecare nivel de reţea suportat. Pentru a vedea cum lucrează împreună aceste părţi, să considerăm un scenariu tipic în care un utilizator sună de la domiciliu un furnizor de servicii Internet pentru a transforma PC-ul său de acasă într-un calculator gazdă Internet temporar. PC-ul apelează mai întâi ruterul furnizorului prin intermediul unui modem. După ce modemul ruterului a răspuns la telefon şi s-a stabilit o conexiune fizică, PC-ul trimite ruterului o serie de pachete LCP în câmpul de informaţie utilă (payload) al unuia sau mai multor cadre PPP. Aceste pachetc şi răspunsurile lor selectează parametrii PPP ce vor fi utilizaţi. Odată ce parametrii s-au stabilit de comun acord, mai multe pachete NCP sunt trimise pentru a configura nivelul reţea. în mod obişnuit, PC-ul vrea să ruleze o suită de protocoale TCP/IP şi va avea nevoie de o adresă IP. Deoarece nu există adrese IP suficiente, fiecare furnizor de Internet ia o parte din ele şi asociază dinamic câte una pentru fiecare PC ataşat în reţea, pe durata sesiunii de conectare. Dacă un furnizor posedă n adrese IP, el poate avea până la n maşini conectate simultan, dar numărul total de clienţi poate fi de mai multe ori pe atât. NCP pentru IP este folosit pentru a realiza asocierea adreselor IP. în acest moment, PC-ul este un calculator gazdă Internet şi poate trimite şi primi pachete IP, exact aşa cum o pot face calculatoarele conectate prin cabluri. Când utilizatorul termină, NCP întrerupe conexiunea la nivelul reţea şi eliberează adresa IP. Apoi LCP întrerupe conexiunea la nivelul legătură de date. în final, calculatorul spune modemului să închidă telefonul, eliberând conexiunea la nivel fizic. Formatul cadrului PPP a fost ales foarte asemănător cu formatul cadrului HDLC deoarece nu exista nici un motiv pentru a se reinventa roata. Diferenţa majoră între PPP şi HDLC este că primul este mai degrabă orientat pe caractere decât pe biţi. în particular, PPP foloseşte umplerea cu caractere pe liniile comutate prin modem, astfel încât toate cadrele au un număr întreg de octeţi. Nu este posibil să se trimită un cadru constând din 30.25 octeţi, aşa cum era la HDLC. Cadrele PPP pot fi transmise nu numai pe liniile telefonice comutate, ele pot fi transmise şi pe linii SONET sau linii HDLC, cu adevărat orientate pe biţi (de exemplu pentru conexiuni ruterruter). Formatul cadrului PPP este prezentat în fig. 3-27. 1
1
1
Adresă Control 11111111 00000011
1 sau 2
Variabil
2 sau 4
jj Sumă de Informaţie control utilă Fig. 3-27. Formatul complet de cadru PPP pentru operarea în mod nenumerotat. Indicator 01111110
Protocol
1 Indicator 01111110
Toate cadrele PPP încep cu octetul indicator HDLC standard (01111110), pentru care se foloseşte umplerea cu caractere, dacă apare în cadrul câmpului ce specifică informaţia utilă. După acesta urmează câmpul Adresa, care este întotdeauna setat la valoarea binară 11111111, indicând astfel că toate staţiile trebuie să accepte cadrul. Folosirea acestei valori evită problema necesităţii dc a se asocia adrese legăturii de date. Câmpul Adresă este urmat de câmpul Control, a cărui valoare implicită este 00000011. Această valoare indică un cadru nenumerotat. Cu alte cuvinte, PPP nu oferă o transmisie sigură folosind numere dc secvenţă şi confirmări în mod implicit. în medii cu zgomote, cum ar fi reţelele fără fir, poate fi folosită transmisia sigură utilizând numere de secvenţă. Detaliile exacte sunt definite în RFC 1663, dar această facilitate este rar utilizată. Deoarece câmpurile Adresă şi Control sunt întotdeauna constante în configuraţiile implicite, LCP furnizează mecanismul necesar ca cele două părţi să negocieze opţional omiterea amândurora şi să economisească astfel doi octeţi pe cadru. Cel de-al patrulea câmp PPP este câmpul PTOHKOI. Sarcina lui este să spună ce tip de pachet este în câmpul Informaţie utilă. Sunt definite coduri pentru LCP, NCP, IP, IPX, AppleTalk şi alte protocoale. Protocoalele ce
214
NIVELUL LEGĂTURĂ DE DATE
încep cu un bit 0 sunt protocoale pentru nivelul reţea, cum ar fi IP, IPX, OSI CLNP, XNS. Acelea care încep cu un bit 1 sunt folosite pentru a negocia alte protocoalc. Acestea includ LCP şi un NCP diferit pentru fiecare protocol dc reţea suportat. Dimensiunea implicită a câmpului Protocol este de 2 octeţi, dar ea poate fi negociată la 1 octet folosind LCP. Câmpul Informaţie utilă este de lungime variabilă, până la o anumită limită maximă negociată. Dacă lungimea nu este negociată folosind LCP în timpul setării liniei, este folosită o lungime implicită de 1500 de octeţi. Dacă este necesar, după informaţia utilă pot fi adăugate caractere de umplere. După câmpul Infonnaţie utilă urmează câmpul Sumă de control, care este în mod normal dc 2 octeţi, dar poate fi modificat la 4 octeţi.
CAP.
3
EXEMPLE DE PROTOCOALE ALE LEGĂTURII DE DATE
SEC. 3.6
215
în concluzie, PPP este un mecanism de încadrare multiprotocol potrivit pentru folosirea pe linii cu modem, linii seriale orientate pe biţi HDLC, SONET şi alte niveluri fizice. Suportă detecţia erorilor, negociere opţională, compresia antetului şi, opţional, transmisie sigură folosind cadre HDLC. Să ne întoarcem acum de la formatul cadrului PPP la modul în care liniile sunt stabilite (eng.: brought up) şi eliberate (eng.: brought down). Diagrama simplificată din fig. 3-28 arată fazele prin care trece o linie atunci când este stabilită, folosită şi eliberată. Secvenţa se aplică atât pentru conexiunile prin modem cât şi pentru conexiunile ruter-ruter. Purtătoare Ambele părţi se pun detectată de acord asupra opţiunilor
Autentificare reuşită
eliberată
NCP
Fig. 3-28.0 diagramă de faze simplificată pentru stabilirea şi eliberarea unei linii. Protocolul se iniţializează cu linia în starea DEAD, stare care semnifică faptul că nu este prezentă nici o purtătoare la nivel fizic şi nu există nici o conexiune fizică. După ce este stabilită conexiunea fizică, linia trece în ESTABLISH. în acest punct începe negocierea opţională LCP care, dacă reuşeşte, conduce \aAUTHENTICATE. Acum cele două părţi pot să-şi verifice una alteia identitatea, dacă doresc. Când se intră în faza NETWORK, este invocat protocolul NCP corespunzător pentru a configura nivelul reţea. Dacă configurarea se face cu succes, este atinsă faza OPEN şi poate avea loc transportul datelor. Când transportul datelor este terminat, linia este trecută în faza TERMINATE şi, de aici, înapoi în DEAD unde purtătoarea este întreruptă. Nume
Direcţie
Descriere
Configure-request
l->R
Lista opp'unilor şi valorilor propuse
Configure-ack
lR
Cerere de eliberare a liniei
Terminate-ack
U-R
OK, linia este eliberată
Code-reject
k-R
Primire cerere necunoscută
Protocol-reject
l«-R
Cerere protocol necunoscut
Echo-request
l->R
Rog trimiterea acestui cadru înapoi
Echo-replay
lR
Ignoră cadrul (pentru testare)
Fig. 3-29. Tipurile de cadre LCP.
216
NIVELUL LEGĂTURĂ DE DATE
LCP negociază opţiunile protocolului legăturii de date în timpul fazei ESTABUSH. Protocolul LCP nu se ocupă chiar de opţiuni, ci de mecanismul de negociere. El furnizează procesului iniţiator un mod de a face o propunere şi procesului de răspuns un mod de a accepta sau refuza această propunere. De asemenea, el furnizează celor două proccse un mecanism de a testa calitatea liniei, de a verifica dacă aceasta este suficient de bună pentru a defini o conexiune. în fine, protocolul LCP permite liniilor să fie eliberate atunci când nu mai este nevoie de ele. în RFC 1661 sunt definite unsprezece tipuri de cadre LCP. Acestea sunt listate în fig. 3-29. Cele patru tipuri Configure- permit iniţiatorului (I) să propună valori pentru opţiuni şi celui care răspunde (R) să le accepte sau să le refuze. In ultimul caz, cel care răspunde poate face o propunere alternativă sau poate anunţa că nu este gata să negocieze în nici un fel anumite opţiuni. Opţiunile ce vor fi negociate şi valorile propuse pentru ele sunt conţinute în cadrele LCP. Codurile Terminate- sunt folosite pentru a elibera o linie atunci când ea nu mai este necesară. Codurile Qxie-reject şi frotocol-reject sunt folosite de către cel ce răspunde pentru a spune că a primit ceva ce nu înţelege. Această situaţie poate însemna că a avut loc o eroare de transmisie, dar, mai degrabă, înseamnă că iniţiatorul şi cel ce răspunde folosesc versiuni diferite ale protocolului LCP. Tipurile Echo- sunt folosite pentru a testa calitatea liniei. în sfârşit, Discard-request este folosit pentru depanare. Dacâ unul din capete are probleme cu transmiterea biţilor, programatorul poate folosi acest tip pentru testare. Dacă el reuşeşte să meargă de la un capăt la celălalt, receptorul doar îl rejectează, fără a întreprinde nici o acţiune care ar putea genera confuzii pentru persoana care testează. Opţiunile care pot fi negociate includ definirea dimensiunii maxime pentru informaţia utilă din cadrele de date, activarea autentificării şi alegerea protocolului ce va fi folosit, activarea monitorizării calităţii liniei în timpul operaţiunilor normale şi selectarea diferitelor opţiuni pentru comprimarea antetului. Nu se pot spune multe despre protocoalele NCP în general. Fiecare este specific unui anumit protocol dc nivel reţea şi permite să se facă cereri de configurare ce sunt specifice unui anumit protocol. De exemplu, pentru IP, asocierea dinamică a adreselor este cea mai importantă posibilitate.
3.7 REZUMAT Sarcina nivelului legătură de date este de a converti şirurile de biţi oferite de nivelul fizic în şiruri dc cadre pentru a fi folosite de către nivelul reţea. Sunt utilizate diferite metode de încadrare, incluzând numărarea caracterelor, inserarea de octeţi şi umplerea cu biţi. Protocoalele legăturii de date pol oferi controlul erorilor pentru retransmiterea cadrelor distruse sau pierdute. Pentru a împiedica un emiţător rapid să suprasolicite un receptor lent, protocolul legăturii de date poate realiza şi controlul fluxului. Mccanismul cu fereastră glisantă este foarte folosit pentru a integra controlul erorilor şi controlul fluxului într-un mod convenabil. Protocoalele cu fereastră glisantă pot fi clasificate după dimensiunea ferestrei emiţătorului şi după dimensiunea ferestrei receptorului. Când ambele sunt egale cu 1, protocolul este pas-cu-pas (eng.: stop-andwait). Gând fereastra emiţătorului este mai mare ca 1, de exemplu pentru a împiedica emiţătorul să blocheze un circuit cu o întârziere mare de propagare, receptorul poate fi programat fie să elimine toate celelalte cadre cu excepţia următorului din secvenţă, fie să memoreze cadrele neordonate până când ele vor fi necesare. în acest capitol au fost prezentate o serie de protocoale. Protocolul I a fost conceput pentru un mediu fară erori, în care receptorul poate face faţă oricărui flux de la emiţător. Protocolul 2 presupune existenţa unui mediu fără erori, dar introduce controlul fluxului. Protocolul 3 tratează problema erorilor prin utilizarea numerelor de secvenţă şi a algoritmului pas-cu-pas. Protocolul 4 permite comunicaţia bidirecţională şi introduce conceptul de
CAP.
3
SEC. 1.10
PROBLEME
217
ataşare (eng.: piggybacking). Protocolul 5 foloseşte un protocol cu fereastră glisantă şi revenire cu n paşi (eng.: go back n). Protocolul 6 foloseşte repetarea selectivă şi confirmări negative. Protocoalele pot fi modelate folosind diferite tehnici ce ajută la demonstrarea corectitudinii lor (sau a lipsei acesteia). Modelele bazate pe automate finite şi modelele bazate pe reţele Petri sunt larg utilizate în acest scop. Multe reţele folosesc la nivelul legătură de date unul dintre protocoalele orientate pe biţi - SDLC, HDLC, ADCCP sau LAPB. Toate aceste protocoale folosesc octeţi indicatori pentru delimitarea cadrelor şi inserarea de biţi pentru a preveni apariţia octeţilor indicatori în cadrul datelor. De asemenea toate aceste protocoale folosesc fereastra glisantă pentru controlul fluxului. Internct-ul foloseşte PPP ca principal protocol al legăturii de date pe liniile de tip punct-la-punct.
3.8 PROBLEME 1. Un mesaj de la un nivel mai înalt este spart în 10 cadre, fiecare dintre acestea având 80% şansă de a ajunge nemodificat. Dacă nu se face nici un control al erorilor de către protocolul legăturii de date, de câte ori va trebui transmis mesajul în medie pentru a-1 obţine întreg la destinaţie? 2. Următoarea codificare a caracterelor este utilizată în cadrul unui protocol de nivel legătură de date: A: 01000111; B: 11100011; FLAG: 01111110; ESC: 11100000 Determinaţi secvenţa de biţi transmisă (în binar) pentru cadrul format din următoarele 4 caractere: A B ESC FLAG, când fiecare din metodele de încadrare următoare sunt utilizate: a) numărarea caracterelor b) octeţi indicatori şi inserarea de octeţi c) octeţi indicatori de început şi sfârşit, cu inserare de biţi. 3. Următorul fragment de date apare în mijlocul unui şir de date pentru care este folosit algoritmul de inserare de octeţi descris în text: A B ESC C ESC FLAG FI AG D. Care este ieşirea după inserare? 4. Unul dintre colegii Dvs. de clasă, Scrooge, a remarcat faptul că este ineficientă folosirea a 2 octeţi indicatori, unul pentru începutul cadrului, celălalt pentru sfârşit. Un singur octet indicator ar fi suficient, câştigându-se astfel un octet. Sunteţi de acord? 6. Când este utilizată inserarea de biţi, este posibil ca prin pierderea, inserarea sau modificarea unui singur bit să se provoace o eroare nedetectabilă prin suma de control? Dacă nu, de ce? Dacă da, de ce? Lungimea sumei de control joacă vreun rol aici? 7.
Puteţi concepe o situaţie în care un protocol cu buclă deschisă (dc exemplu un cod Hamming) poate fi preferabil protocoalelor cu buclă de reacţie (feedback), discútate pe parcursul acestui capitol?
8.
Pentru a oferi o siguranţă mai mare decât cea pe care o poate da un singur bit dc paritate, o schemă de codificare cu detecţic de erori foloseşte un bit de paritate pentru verificarea tuturor biţilor de ordin impar şi un al doilea bit de paritate pentru toţi biţii de ordin par. Care este distanţa Hamming pentru un astfel de cod?
9.
Se transmit mesaje de 16 biţi folosind un cod Hamming. Câţi biţi de control sunt necesari pentru a asigura detectarea şi corectarea de către receptor a erorilor de un bit? Prezentaţi secvenţa de biţi transmisă pentru
218
NIVELUL LEGĂTURĂ DE DATE
mesajul 1101001100110101. Presupuneţi că se foloseşte paritare pară. 10. Un octet (8 biţi) cu valoarea binară 10101111 trebuie codificat utilizând un cod Hamming cu paritate pară. Care este valoarea binară după codificare? 11. Un cod Hamming de 12 biţi a cărui valoare în hexazecimal este 0xE4F soseşte la receptor. Care este valoarea hexazecimală originală? Presupuneţi ca maxim un bit este eronat. 12. Un mod de a detecta erorile este de a transmite datele ca un bloc de n rânduri a câte k biţi pe rând şi adăugarea de biţi de paritate pentru fiecare rând şi fiecare coloană. în colţul din dreapta jas este bitul de paritate care verifică linia şi coloana sa. Va detecta această schemă toate erorile singulare? Dar erorile duble? Dar erorile triple? 13. Un bloc de biţi cu n rânduri şi k coloane foloseşte biţi de paritate verticală şi orizontală pentru detecţia erorilor, Să presupunem că datorită erorilor de transmisie sunt inversaţi exact 4 biţi. Deduceţi o expresie pentru exprimarea probabilităţii ca eroarea să nu fie detectată. 14. Ce rest se obţine prin împărţirea lui x7+x5 +1 la polinomul generator x3* 1? 15. Secvenţa de biţi 10011101 este transmisă folosind metoda CRC descrisă anterior. Polinomul generator este x3+l. Prezentaţi secvenţa de biţi transmisă. Se presupune că al treilea de la stânga este inversat în timpul transmisiei. Arătaţi că această eroare este detectată de receptor. 16. Protocoalele legăturii de date pun aproape întotdeauna CRC-ul în partea finală şi nu în antet. De ce? 17. Un canal are o rată de transmisie a biţilor de 4 Kbps şi o întârziere de propagare dc 20 ms. Pentru ce domeniu al dimensiunii cadrelor metoda pas-cu-pas (stop-and-wait) are o eficienţă dc cel puţin 50%? 18. Un trunchi TI lung de 3000 km este folosit pentru a transmite cadre de 64 de biţi folosind protocolul 5. Dacă viteza de propagare este de 6 ^sec/km, pe câţi biţi trebuie reprezentate numerele dc secvenţă?
5
Dacă în şirul de biţi 0111101111101111110 se inserează biţi, care este şirul de ieşire?
CAP.
3
SEC. 2.9 PROBLEME 219 19. în protocolul 3, este posibil ca emiţătorul să pornească contorul de timp, atunci când acesta merge deja? Dacă da, când se poate întâmpla acest lucru? Daca nu, de ce este imposibil?
20. Imaginaţi un protocol cu fereastră glisantă ce foloseşte suficienţi biţi pentru numerele de secvenţă, astfel încât să nu apară niciodată suprapuneri. Ce relaţie trebuie să existe între cele patru limite ale ferestrelor şi dimensiunea ferestrei? 21. Dacă în procedura between din protocolul 5 este verificată condiţia a b £ c în locul condiţiei a < b < c, ar avea aceasta vreun efect asupra corectitudinii protocolului sau eficienţei sale? Explicaţi răspunsul. 22. în protocolul 6, când soseşte un cadru de date, este făcută o verificare pentru a se vedea dacă numărul de secvenţă diferă de cel aşteptat şi nojiak este adevărat. Dacă ambele condiţii sunt îndeplinite, este trimis un NAK. Altfel, este pornit contorul de timp auxiliar. Presupuneţi că ar fi omisă clauza else. Ar afecta aceasta corectitudinea protocolului? 23. Presupunem că bucla while cu trei instrucţiuni din finalul protocolului 6 a fost ştearsă din cod. Ar afecta aceasta corectitudinea protocolului sau doar performanţa? Explicaţi răspunsul. 24. Presupunem că instrucţiunea case pentru erorile de sumă de control a fost scoasă din instrucţiunea switch din protocolul 6. Cum ar afecta aceasta operarea protocolului? 25. în protocolul 6 codul pentru fratne jirrival are o secţiune folosită pentru NAK-uri. Această secţiune este invocată în cazul în care cadrul sosit este un NAK şi este îndeplinită încă o condiţie. Indicaţi un scenariu în care prezenţa acestei condiţii este esenţială. 26. Imaginaţi-vă că scrieţi un program la nivelul legătură de date pentru o linie folosită pentru a primi date, dar nu şi pentru a trimite. Celălalt capăt foloseşte HDLC, cu un număr de secvenţă pe 3 biţi şi o dimensiune a ferestrei de 7 cadre. Aţi dori să memoraţi cât mai multe cadre din secvenţă pentru a creşte eficienţa, dar nu vă este permis să modificaţi programul transmiţătorului. Este posibil să aveţi o fereastră la receptor mai mare ca 1 şi totuşi să existe garanţia că protocolul nu va eşua? Dacă da, care este fereastra cea mai mare care poate fi utilizată în siguranţă? 27. Consideraţi operarea protocolului 6 pe o linie fără erori de 1 Mbps. Dimensiunea maximă a cadrului este 1000 biţi. Pachetele noi sunt generate la un interval de aproape o secundă. Intervalul de expirare a timpului este de 10 ms. Dacă ar fi eliminate confirmările speciale pentru contorul de timp, ar putea apărea expirări de timp inutile. De câte ori ar trebui transmis în medie un mesaj? A
28. In protocolul 6, MAXSEQ = 2n-l. Deşi această condiţie este evident necesară pentru a utiliza eficient biţii din antet, nu s-a demonstrat că ea este şi esenţială. Ar funcţiona protocolul corect pentru MAX SEQ = 4 de exemplu? 29. Cadrele de 1000 de biţi sunt transmise pe un canal printr-un satelit geostaţionar de 1 Mbps a cărui întârziere de propagare de la Pământ este de 270 milisecundc. Confirmările sunt întotdeauna ataşate cadrelor de date. Antetele sunt foarte scurte. Sunt folosite numere de secvenţă pe 3 biţi. Care este utilizarea maximă realizabilă a canalului pentru: a) Pas-cu-pas (stop-and-wait); b) Protocolul 5; c) Protocolul 6. 30. Calculaţi fracţiunea din lărgimea de bandă ce este pierdută datorită supraîncărcării (antete şi retransmisie)
NIVELUL LEGĂTURĂ DE DATE
220
pentru protocolul 6 pe un canal de satelit de 50 Kbps, foarte încărcat cu cadre de date constând din 40 de biţi antet şi 3960 biţi de date. Presupuneţi o întârziere de la Pământ la satelit de 270 milisecunde. Cadrele ACK nu apar niciodată. Cadrele NAK sunt de 40 de biţi. Rata de erori pentru cadrele de date este de 1% şi rata de erori pentru cadrele NAK este neglijabilă. Numerele de secvenţă sunt pe 8 biţi. 31. Se consideră un canal prin satelit fără erori, de 64 Kbps, folosit pentru a transmite cadre de date de 512 octeţi într-o singură direcţie, cu confirmări foarte scurte ce se întorc pe ccalaltă cale. Care este productivitatea maximă pentru dimensiuni ale ferestrei de 1, 7,15 şi 127? Presupuneţi o întârziere de la Pământ la satelit de 270 milisecunde. 32. Un cablu lung de 100 km funcţionează la rata de transmisie de date TI. Viteza de propagare pe cablu este 2/3 din viteza luminii. Câţi biţi încap pe cablu? 33. Se presupune că se modelează protocolul 4 utilizând modelul automatelor finite. Câte stări există pentru fiecare maşină? Câte stări există pentru canalul de comunicaţie? Dar pentru un sistem complet (două maşini şi canalul)? Se ignoră erorile de sumă de control. 34. Determinaţi o secvenţă executabilă pentru reţeaua Petri din fig. 3-23 corespunzătoare secvenţei de stări (000), (01 A), (01-), (010), (01 A) în fig. 3-21. Explicaţi în cuvinte ce reprezintă sccvenţa respectivă. 35. Date fiind regulile de tranziţie AC->B, B->AC, CD->E şi E-»CD, desenaţi reţeaua Petri descrisă de ele. Folosind reţeaua Petri, desenaţi graful finit al stărilor accesibile din starea iniţială ACD. Ce concept binecunoscut din ştiinţa calculatoarelor foloseşte acest model de reguli de tranziţie? 36. PPP se bazează pe HDLC, care foloseşte inserarea de biţi pentru a împiedica octeţii indicatori accidentali din interiorul informaţiei utile să provoace confuzii. Daţi cel puţin un motiv pentru care PPP foloseşte în locul acesteia iascrarea de octeţi. 37. Care este supraîncărcarea minimă în transmiterea unui pachet IP folosind PPP? Luaţi în considerare doar supraîncărcarea introdusă de PPP însuşi, nu şi supraîncărcarea produsă de antetul IP. 38. Scopul acestui exerciţiu este implementarea unui mecanism de detectare a erorilor folosind algoritmul standard CRC prezentat în text. Scrieţi două programe, generator şi verificator. Programul generator citeşte de la intrarea standard mesaje de n biţi ca şiruri de 1 şi 0, ca o linie de text ASCII. A doua linie este polinomul generator pe k biţi, citit tot ca text ASCII. La ieşire, programul va afişa la ieşirea standard (standard output) o linie de text ASCII cu n+k caractere 0 şi 1, reprezentând mesajul de transmis. Apoi afişează polinomul, aşa cum l-a citit. Programul verificator citeşte ieşirea programului generator şi afişează un mesaj care indică dacă aceasta este corectă sau nu. Se va scrie apoi un program, alterează, care inversează un bit din prima linie depinzând de unul din parametri cu care a fost apelat (bitul cel mai din stânga se consideră bitul 1), dar copiază restul corect. Tastând: generator < fişier | verificator ar trebui să vedeţi că mesajul este corect, dar tasând: generator < fişier | alterează argument | verifica ar trebui să primiţi un mesaj de eroare. 39. Scrieţi un program care să simuleze comportamentul unei reţele Petri. Programul trebuie să citească regulile de tranziţie şi o listă de stări corespunzând nivelului legătură al reţelei ce emite un nou pachet sau acceptă un pachet. Din starea iniţială, de asemenea citită de pe mediul de intrare, programul trebuie să aleagă tranziţiile permise şi să le execute aleator, verificând dacă un calculator gazdă acceptă două mesaje
CAP.
3
SEC. 3.8
PROBLEME
fără ca un alt calculator gazdă să emită unul nou între ele.
221
240
4 SUBNIVELUL DE ACCES LA MEDIU
Aşa cum am arătat în Cap. 1, reţelele pot fi împărţite în două categorii: cele care utilizează conexiuni punct-la-punct şi cele care utilizează canale cu difuzare (broadcast channels). Acest capitol se ocupă de reţelele cu difuzare (broadcast networks) şi de protocoalele lor. în orice reţea cu difuzare, una dintre probleme este determinarea utilizatorului cu drept de acces la canal în cazul în care există mai mulţi utilizatori concurenţi. Pentru a lămuri lucrurile, să considerăm o teleconferinţă în care şase persoane, vorbind de la şase telefoane diferite, sunt conectate astfel încât fiecare îi poate auzi pe ceilalţi şi poate vorbi cu ei. Este foarte probabil ca atunci când cineva se opreşte din vorbit, doi sau mai mulţi să înceapă să vorbească simultan, ceea ce va duce la haos. într-o întâlnire faţă-în-faţă, haosul este evitat prin mijloace externe - de exemplu, prin ridicarea mâinii pentru a cere permisiunea de a vorbi. Când este disponibil un singur canal de comunicaţie, este mult mai greu să determini cine urmează să ia cuvântul. Sunt cunoscute multe protocoale de rezolvare a acestei probleme şi ele constituie conţinutul acestui capitol. în literatura de specialitate, canalele cu difuzare sunt uneori numite canale multiacces (multiaccess channels), sau canale cu acces aleator (random access channels). Protocoalele folosite pentru a determina cine urmează într-un canal multiacces aparţin unui subnivel al nivelului legătură de date, numit subnivelul MAC (Medium Access Control, rom: controlul accesului la mediu). Subnivelul MAC este important mai ales pentru reţelele de tip LAN - Local Arca Network (le vom numi prescurtat LAN-uri), care utilizează aproape toate un canal multiacces c
Fig. 7-32.0 pagină de stil in XSL
Un exemplu de fişier XSL pentru fonnatarea conţinutului din fig. 7-31 este dat în fig. 7-32. După câteva declaraţii necesare ce includ URL-ul standardului XSL, fişierul conţine marcaje începând cu şi . Acestea definesc începutul unei pagini de Web, ca de obicei. Urmează apoi o definiţie de tabel ce include titlurile celor trei coloane. Să observăm că în plus faţă de marcajele
, lucru care nu ne-a preocupat până acum. Specificaţiile XML şi XSL sunt mult mai stricte decât specificaţia HTML. Ele statuează că rejectarea fişierelor incorecte din punct de vedere sintactic este obligatorie, chiar dacă programul de navigare poate determina ce a intenţionat proiectantul paginii Web. Un program de navigare care acceptă fişiere XML sau XSL incorecte din punct de vedere sintactic şi repară eroarea el însuşi este ncconform cu standardul şi va fi rejcctat la un test de conformanţă cu standardele. Programelor de navigare li se permite însă să identifice exact eroarea. Această măsură întrucâtva draconică este necesară pentru a rezolva problema numărului imens de pagini de Web scrise neglijent, care există în prezent. Instrucţiunea
este comparabilă cu o instrucţiune for în C. Execuţia ei determină programul de navigare să execute corpul buclei (terminată de ) câte o dată pentru fiecare carte. Fiecare iteraţie afişează cinci linii:
. După această buclă, sunt transmise la ieşire marcajele de închidere şi . Rezultatul operaţiei programului de navigare de a interpreta această pagină de stil este acelaşi ca şi în cazul când pagina de Web ar fi conţinut direct tabelul. Totuşi, în acest format, programele pot analiza fişierul XML şi găsi cu uşurinţă cărţile publicate după 2000, de exemplu. Merită subliniat faptul că deşi fişierul nostru XSL conţinea un fel de buclă, paginile de Web în XML şi XSL sunt în continuare statice deoarece conţin pur şi simplu instrucţiuni pentru programul de navigare despre modul de afişare a paginii, la fel ca şi paginile H'ITvlL. Desigur, pentru a folosi XML şi XSL, programul de navigare trebuie să fie capabil să interpreteze XML şi XSL, dar marca majoritate a acestora au deja această capacitate. Nu este încă foarte clar dacă XSL va prelua paginile de stil tradiţionale. Nu am arătat cum se poate face acest lucru, dar limbajul XML permite proiectantului de situri Web să creeze fişiere de definiţie în care structurile sunt definite în avans. Aceste fişiere de definiţii pot fi incluse unele în altele, făcând posibilă construcţia de pagini Web complexe. Pentru informaţii suplimentare despre aceasta şi multe alte caracteristici ale limbajelor XML şi XSL, consultaţi una din multele cărţi despre acest subiect. Două exemple sunt (Livingston, 2002; şi Williamson, 2001). înainte de a încheia discuţia despre XML şi XSL, merită să comentăm pe marginea luptei ideologice din interiorul consorţiului WWW şi a comunităţii dezvoltatorilor de pagini Web. Scopul iniţial al limbajului HTML era să specifice structura documentului şi nu modul de afişare. De exemplu,
SEC. 7.3
instruieşte programul de navigare să sublinieze titlul, dar nu spune nimic despre tipului font-ului, dimensiune sau culoare. Acestea sunt lăsate pe seama programului de navigare, care cunoaşte proprietăţile ecranului (de ex.: câţi pixeli arc). Totuşi, mulţi dezvoltatori de pagini Web doreau controlul absolut asupra modalităţii în care erau afişate paginile lor, astfel că au fost adăugate noi marcaje la HTML pentru a controla modul de afişare, cum ar fi Deborah's Photos
De asemenea, au fost adăugate modalităţi de a controla poziţionarea precisă pe ecran. Această abordare este că nu este portabilă, ceea ce reprezintă desigur o problemă. Deşi o pagină poate fi afişată perfcct de programul de navigare cu care este dezvoltată, un alt program de navigare, sau chiar altă versiune a aceluiaşi program sau o altă rezoluţie a ecranului poate fi un dezastru. XML este parţial o încercare de întoarcere la scopul originar de a specifica doar structura nu modalitatea de afişare a documentului. Totuşi, XSL este oferit în plus, pentru a controla modul de afişare. Ambele formate pot avea însă utilizări eronate. Puteţi conta pc asta. XML poate fi utilizat şi în alte scopuri decât acela dc a descrie pagini de Web. O utilizare din ce în ce mai frecventă este aceea de limbaj de comunicare între aplicaţii. în particular, SOAP (Simple Object Access Protocol - Protocol simplu pentru accesul la obiectc) este o modalitate dc a executa apeluri dc tip RPC între aplicaţii într-un mod independent de limbaj şi dc sistem. Clientul construieşte cererea ca mesaj XML şi o transmite serverului, utilizând protocolul HTTP (descris mai departe). Serverul trimite înapoi un răspuns sub formă de mesaj XML. în acest mod pot comunica aplicaţii de pe sisteme heterogene.
XHTML - eXtended HyperText Markup Language Limbajul HTML continuă să evolueze pentru a se conforma noilor cereri. Multe persoane din acest domeniu cred că în viitor majoritatea dispozitivelor cu acces la Web nu vor fi calculatoarele personale, ci dispozitive cu conexiuni fără fir, de tip PDA. Aceste dispozitive au memorie limitată pentru programe de navigare mari cu metode euristice cc încearcă să trateze într-un anumit mod paginile dc Web incorecte din punct de vedere sintactic. Astfel, următorul pas după HTML 4 este un limbaj care este Foarte Selectiv. Acest limbaj este numit XHTML (eXtended HyperText Markup Language, rom.: Limbaj extins de marcaje hipertext) mai degrabă decât HTML 5, pentru că, de fapt, este HTML 4 reformulat în XML. Prin aceasta vrem să spunem că marcaje precum nu au nici o însemnătate prin clc însele. Pentru a obţine efectul din HTML 4 este nevoie dc o definiţie în fişierul XSL. XHTML este noul standard pentru Web şi ar trebui folosit pentru toate paginile dc Web noi pentru a asigura un maxim de portabilitate pe diverse platforme şi programe de navigare. Există şase diferenţe majore şi mai multe diferenţe minore între XHTML şi HTML 4. Să trecem acum în revistă diferenţele majore. Mai întâi, paginile XHTML şi programele de navigare trebuie să se supună în mod strict standardului. Gata cu paginile de Web de proastă calitate. Această proprietate a fast moştenită din XML. în al doilea rând, toate marcajele şi atributele trebuie să fie scrise cu litere mici. Mareaje ca nu sunt valide în XHTML Folosirea marcajelor precum este acum obligatorie. Similar, este interzis pentru că are în componenţă un atribut scris cu litere mari. în al treilea rând, sunt necesare marcaje de terminare, chiar şi pentru . Pentru marcaje carc nu au un marcaj natural de terminare, cum ar fi
, şi , un caracter / trebuie să preceadă caracterul de terminare dc exemplu
CAP. 7
în al patrulea rând, atributele trebuie să fie conţinute între ghilimele. De exemplu,
nu mai este permis. Valoarea 500 trebuie pusă între ghilimele, cum este numele fişierului JPEG, chiar dacă 500 este doar un număr. în al cincilea rând, marcajele trebuie să se conţină unul pe altul într-un mod corespunzător. în trccut, acest lucru nu era necesar atât timp cât starea finală atinsă era corcctă. Dc exemplu, Vacation Pictures
era legal. în XHTML nu mai este. Marcajele trebuie închise în ordinea inversă în care au fost deschise. A
In al şaselea rând, fiecare document trebuie să-şi specifice tipul documentului. De exemplu, am văzut acest lucru în fig. 7-32. Pentru o discuţie asupra schimbărilor, fie ele majore sau minore, vezi www.w3.org. 7.3.3 Documente Web dinamice i:
Până acum, modelul pc carc l-am folosit este cel din Fig. 6-6: clientul transmite numele fişierului către server, care apoi întoarce fişierul. \a începutul Wcb-ului, tot conţinutul era de fapt static în acest mod (doar fişiere). Totuşi, în ultimii ani, din ce în ce mai mult conţinut a devenit dinamic, adică generat la cerere şi nu doar stocat pc disc. Generarea de conţinut poate avea loc fie la server, fie la client. Să examinăm acum pe rând fiecare din aceste cazuri.
Generare dinamică de pagini de Web la server Pentru a vedea dc ce este neccsară generarea de conţinut la server, să luăm în considerare utilizarea formularelor, aşa cum a fost descrisă mai devreme. Atunci când un utilizator completează un formular şi apasă butonul submit, se transmite un mesaj către server, mesaj ce arată că arc în interior conţinutul unui formular, împreună cu acele câmpuri completate de utilizator. Acest mesaj nu este numele unui fişier cc trebuie întors. în schimb, acest mesaj trebuie să fie oferit unui program, sau
SEC. 7.3
script, pentru a fi procesat. De obicei, procesarea implică folosirea informaţiilor oferite de utilizator pentru căutarea unei înregistrări într-o bază de date de pe discul serverului şi generarea unei pagini HTML personalizate pentru a fi trimisă înapoi clientului. De exemplu, într-o aplicaţie de comerţ electronic, atunci când utilizatorul face un clic pe MERGI LA CASĂ, programul de navigare întoarce cookie-ul ce conţine produsele din coşul de cumpărături, dar la server trebuie apelat un program, sau script, care procesează acest cookie şi generează o pagină HTML ca răspuns. Pagina HTML ar putea afişa un formular ce conţine lista de produse din coş şi ultima adresă de expediere cunoscută a utilizatorului, împreună cu o cerere de verificare a informaţiilor şi de specificare a modalităţii de plată. Etapele necesare pentru procesarea informaţiei dintr-un formular HTML sunt ilustrate în fig. 7-33. Program de navigare
1. Utilizatorul completează formularul 2. Formularul este transmis 3. Trimis CGI-ului 4. CGI-ul interoghează baza de date 5. înregistrarea este găsită 6. CGI-ul construieşte pagina 7. Pagina este întoarsă clientului 8. Pagina este afişată
Fig. 7-33. Etapele de procesare a informaţiei dintr-un formular HTML
Modalitatea tradiţională de a trata formularele şi alte pagini de Web interactive este sistemul numit CGI (Common Gateway Interface - Interfaţă comună de conversie). Aceasta este o interfaţă standardizată ce permite serverelor de Web să discute cu programele din fundal şi cu scripturile care acceptă o intrare (de ex.: formulare) şi să genereze pagini HTML ca răspuns. De obicei, aceste programe de fundal sunt scripturi scrise în limbajul Perl deoarece scripturile Perl sunt mai uşor şi mai rapid de scris dccât programele (cel puţin dacă ştii să programezi în Perl), in mod obişnuit, ele sunt localizate într-un director numit egi-bin, care este vizibil în URL. Câteodată un alt limbaj de scripturi, Python, este utilizat în loc de Perl. Ca un exemplu de cât de frecvent lucrează CGI, să considerăm cazul unui produs al companiei Truly Great Products Company (rom. Compania Produselor cu Adevărat Bune) care vine cu o fişă de înregistrare a produsului pentru garanţie. în loc de a completa această fişă, clientului i se spune să meargă la www.tgpc.com pentru a se înregistra on-line. Pe acea pagină există o hipcr-legătură care spune Apăsaţi aici pentru a va înregistra produsul
Această legătura indică spre un script Perl, să spunem www.tgpc.com/cgi-binlreg.perL Când acest script este executat fără parametri, transmite înapoi o pagină HTML conţinând formularul dc înregistrare. Atunci când utilizatorul completează formularul şi face un clic pc submit se transmite un mesaj acestui script, mesaj ce conţine valorile completate după modelul din fig. 7-30. Scriptul Perl analizează parametrii, adaugă o înregistrare în baza de date pentru noul client şi transmite înapoi o pagină HTML cc conţine numărul de înregistrare şi un număr de telefon dc la serviciul dc asistenţă. Aceasta nu este singura modalitate de a trata formularele, dar este o modalitate des întâlnită. Există un număr mare de cărţi despre scricrea scripturilor CGI şi programarea în Perl. Câteva exemple sunt: (Hanegan, 2001; Lash, 2002; şi Meltzerşi Michalski, 2001).
CAP. 7
Scripturile CGI nu sunt singura modalitate de a genera conţinut dinamic la server. O altă modalitate des întâlnită este de a îngloba mici scripturi în paginile IITML şi a lăsa serverul să le execute pentru a genera pagina. Un limbaj popular pentru scrierea accstor scripturi este PHP (PUP: Hyper- text Procesor; rom.: Procesor Hipertext). Pentru a fi folosit, serverul trebuie să înţeleagă PHP (exact cum programul de navigare trebuie să înţeleagă XMJL pentru a interpreta paginile de Web scrise în XML). De obicei, scrvcrclc se aşteaptă ca paginile de Web ce conţin PHP să aibă extensia php mai degrabă decât html sau htnt. Un mic script PHP este ilustrat în fig. 7-34; ar trebui să funcţioneze pe orice server care are PHP instalat. Conţine HTML normal cu exccpţia scriptului PHP dintre marcajele . Ceea ce generează este o pagină de Web cc afişează ceea ce ştie despre programul de navigare care o apelează. Programele de navigare trimit de obicei o seric dc informaţii odată cu cererea lor (şi orice cookic aplicabil) şi această informaţie este pusă în variabila HTTPJJSER_AGENT. Când acest program este pus în fişierul test.php în directorul de WWW al companiei ABCLX tastând URL-ul www.abcdcomltest.php se va afişa o pagină de Web care spune utilizatorului ce program dc navigare, ce limbă şi cc sistem dc operare foloseşte.
Fig. 7-34.0 pagină HTML cu PHP înglobat PHP este folositor în special la tratarea formularelor şi este mai simplu de utilizat decât scripturile COI. Ca un exemplu al modului său de funcţionare, să considerăm exemplul din fig. 7-35(a). Această figură conţine o pagină HTML normală cu un formular în interior. Singurul lucru neobişnuit la accastă pagină este prima linie, care spune că fişierul action.php va tl invocat pentru a trata parametrii după ce utilizatorul a completat şi transmis formularul. Pagina afişează două căsuţe dc text, una cerând numele şi cealaltă vârsta. După cc aceste căsuţe au fost completate şi formularul transmis, serverul analizează şirul de caractere dc forma celui din fig. 7-30, punând numele în variabila name şi vârsta în variabila age. înccpe apoi să proceseze fişierul action.php, arătat în fig. 7-35(b) pentru obţinerea răspunsului. în timpul procesării acestui fişier sunt executate comenzile PHP. Dacă utilizatorul a completat valorile „Barbara” şi „24” în căsuţele formularului, fişierul transmis înapoi este cel dat în fig. 7-35(c). Astfel, tratarea formularelor devine extrem de simplă în PHP. Deşi PUP este uşor de utilizat, este de fapt un limbaj de programare puternic, orientat pe interfa- ţarca dintre Web şi o baza dc date a serverului. Suportă variabile, şiruri dc caractere, vectori şi majoritatea structurilor de control din C, dar un sistem de I/E mult mai puternic decât printf. PHP este un program public (open source) şi disponibil gratuit. A fost conceput special să lucrczc bine cu Apache, care este de asemenea gratuit şi care este cel mai larg utilizat server de Web din lume. Pentru mai multe informaţii despre PHP, vezi (Valade, 2002). Am văzut până acum două moduri diferite de a genera pagini HTML dinamice: script-urile CGI şi PHPul înglobat. Există şi o a treia tehnica, numită JSP (JavaServer Pages), care este similară cu PHP, cu exccpţia faptului că partea dinamică este scrisă în limbajul de programare Java în loc de PHP. Paginile ce folosesc această tehnică au în numele fişierului extensia jsp. O a patra tehnică, ASP (Activc Server Pages), este versiunea de la Microsoft a PHP şi JavaScrver Pagcs. Pentru generarea conţinutului dinamic foloseşte limbajul de script proprietar al Microsoft-ului, Visual Basic Script. Paginile ce folosesc această tehnică au extensia asp. Alegerea dintre PHP, JSP, şi ASP are în general mai mult de-a face cu politici (open-soucc vs. Sun vs. Microsoft) decât cu tehnologia, cele trei limbaje fiind comparabile. Colecţia de
SEC. 7.3
tehnologii pentru generarea din zbor a conţinutului este uneori denumită HTML dinamic.
Generare dinamică de pagini de Web la client Scripturile CGI, PHP, JSP şi ASP rezolvă problema formularelor şi a interacţiunilor cu bazele de date din server. Toate pot să accepte informaţii care vin din formulare, să caute informaţii într-una sau mai multe baze de date şi să genereze pagini HTML cu rezultate. Ceea ce nu poate face nici unul dintre scripturi este să răspundă la mişcările mouse-ului sau să interacţioneze direct cu utilizatorii. In acest scop, este necesar ca scripturile să fie înglobate în paginile HTML care sunt cxccutate mai degrabă pe maşina clientului, decât pc maşina serverului. începând cu HTML 4.0, astfel de scripturi erau permise folosind marcajul
Fig. 7-39.0 pagină Web interactivă care răspunde la mişcarea mouse-ului. JavaScript nu este singura cale dc a face paginile Web foarte interactive. Altă metodă populară este bazată pe folosirea applet-urilor. Acestea sunt mici programe Java carc au fost compilate într- un cod maşină pentru un calculator virtual numit JVM (Java Virtual Machine - Maşina Virtuală Java). Applct-urile pot fi incluse în paginile HTML (între şi ) şi sunt interpretate de programe de navigare carc cunosc JVM. Deoarece applet-urile nu sunt executate, ci interpretate, interpretorul Java poale să le împiedice să facă Lucruri Rele. Cel puţin în teorie. în practică, autorii de applet-uri au găsit şi exploatat un şir aproape nesfârşit de erori în bibliotecile Java dc I/E. Răspuasul Microsoft la applct-urile Java de la Sun au fast paginile Web cu controale Activc-X (Active-X Controls), care sunt programe compilate pentru o maşină Pentium şi sunt executate dircct
SEC. 7.3
în hardware. Această proprietate le face mult mai rapide şi mai flexibile decât applet-urile interpretate, pentru că pot face orice poate face un program. Când Internet Explorer vede un control Acti- vc-X într-o pagină Web, îl descarcă, îi verifică identitatea şi îl execută. Totuşi, descărcarea şi executarea de programe străine ridică probleme de securitate, la care ne vom referi în cap. 8. Din moment ce aproape toate programele de navigare pot să interpreteze atât programe Java cât şi JavaScript, un programator care vrea să facă o pagină Web foarte interactivă va putea să aleagă între două tehnici, iar dacă nu se doreşte portabilitatea pe mai multe platforme, poate să aleagă şi Active-X. Ca o regulă generală, programele JavaScript sunt mai uşor de scris, applet-urile Java se execută mai rapid iar controalele Active-X cel mai rapid dintre toate. De asemenea, din moment ce toate programele de navigare implementează exact aceeaşi JVM, dar nu există două programe de navigare care să ştie aceeaşi versiune de JavaScript, applet-urile Java sunt mai portabile decât programele JavaScript. Pentru mai multe detalii despre JavaScript, există multe cărţi, fiecare cu multe (deseori peste 1000) pagini. Câteva exemple sunt (Easttom, 2001; Harris 2001; şi McFerdries, 2001). înainte de a părăsi subiectul conţinutului dinamic al Wcb-ului, să recapitulăm pe scurt ce am atins până acum. Pagini Web complete se pot genera din mers, folosind diverse script-uri pe maşina server. Odată ce sunt primite de programul de navigare, ele sunt tratate ca pagini HTML normale şi sunt doar afişate. Scripturile pot fi scrise în Perl, PHP, JSP sau ASP, după cum este arătat în fig. 7-40. Interpretor XSL
Fig. 7-40. Diverse moduri de a genera şi afişa conţinut. Interpreto r HTML Generarea conţinutului dinamic este posibilă şi în partea clientului. Paginile Web pot fi scrise în XML şi Interpretor Plug-in JavaScript convertite la HTML conform unui fişier XSL. Programele JavaScript pot să efectueze diverse calcule. în sfârşit, plug-in-urile (plug-ins) şi aplicaţiile ajutătoare (helper applications) pot fi folosite pentru afişarea conţinutului într-o varietate de forme.
Protocolul de transfer utilizat pe Web este HTTP (HyperText Transfer Protocol, rom.:ProtocoI de Transfer al Hipcrtextului). Acesta specifică ce mesaje pot trimite clienţii către servere şi ce răspunsuri primesc înapoi. Fiecare interacţiune constă dintr-o cerere ASCII, urmată de un răspuns MIME conform RFC 822. Toţi clienţii şi toate serverele trebuie să se supună acestui protocol. Este definit în RFC 2616. In această
secţiune vom trata câteva din proprietăţile sale cele mai importante.
CAP. 7
SEC. 7.3
Conexiuni Modul uzual prin care un program de navigare contactează un server este de a stabili o conexiune TCP pe portul 80 pe maşina serverului, deşi această procedură nu este cerută formal. Avantajul de a folosi TCP este că nici programele de navigare şi nici scrvcrele nu trebuie sa se preocupe de mesajele pierdute, mesajele duplicate, mesajele lungi, sau mesajele de confirmare. Toate aceste aspecte sunt tratate de implementarea TCP. A
In HTTP 1.0, după ce conexiunea era stabilită, o singură cerere era transmisă şi un singur răspuns era primit înapoi. Apoi conexiunca TCP era eliberată. într-o lume în care pagina tipică Web consta în întregime din text HTML, această metodă era adecvată. în câţiva ani însă, o pagină medie Web conţinea un număr mare de iconiţc, imagini şi alte lucruri plăcute vederii, astfel ca stabilirea unei conexiuni TCP pentru a prelua o singură iconiţă a devenit un mod foarte costisitor de a opera. Această observaţie a dus la apariţia HTTP 1.1, care suportă conexiuni persistente. Cu ele, este posibilă stabilirea unei conexiuni TCP, trimiterea unei cereri şi obţinerea unui răspuns, apoi trimiterea unor cereri adiţionale şi obţinerea de răspunsuri adiţionale. Prin distribuirea pornirii şi eliberării unei conexiuni TCP peste mai multe cereri, supraîncărcarea relativă datorată TCP-ului este mult mai mică pe fiecare cerere. Hste de asemenea posibilă trimiterea cererilor prin mecanismul pipeline, adică trimiterea cererii 2 înainte ca răspunsul la cererea 1 să fi sosit.
Metode Cu toate că HTTP a fost proiectat pentru utilizarea în Web, cl a fost creat intenţionat mai general decât era necesar în perspectiva aplicaţiilor orientate pe obiecte. Pentru aceasta sunt suportate operaţiile, denumite metode, care fac mai mult decât cele care doar cer o pagină Web. Această consideraţie generală a permis apariţia SOAP. Fiecare cerere constă din una sau mai multe linii de text ASCII, în care primul cuvânt din prima linie este numele metodei cerute. Metodele incorporate sunt listate în fig. 7-41. Pentru accesarea unor obiecte generale, metode adiţionale specifice obiectelor pot fi de asemenea disponibile. în numele metodelor este semnificativă utilizarea literelor mari/mici, de exemplu GET este o metodă acceptată, dar nu şi get. Metoda GET HEAD PUT POST DELETE TRACE CONNECT OPTIONS
Descriere Cerere de citire a unei pagini Web Cerere de citire a antetului unei pagini de Web Cerere de memorare a unei pagini de Web Adăugarea la o resursă anume (de exemplu o pagină de Web) Ştergerea unei pagini de Web Tipărirea cererii care a sosit Rezervat pentru o utilizare în viitor Interogarea anumitor opţiuni
Fig. 7-41. Metode de cerere standard pentru HTTP. Metoda GET cere serverului să trimită pagina (prin care noi înţelegem obiect, în cel mai general caz, dar în practică de obicei doar un fişier). Pagina este codată corespunzător în MI MB. Marca majoritate a cererilor cătrc servere Web sunt metode GET. Forma uzuală a metodei GET este GET fişier HTTP-1.1
undc fişier denumeşte resursa (fişierul) ce va li adusă, şi 1.1 este versiunea dc protocol utilizat. Metoda HEAD ccrc doar antetul mesajului, fără să ceară şi pagina propriu-zisă. Această metodă poate să fie utilizată pentru a afla când s-a făcut ultima modificare, pentru a obţine informaţii pentru indexare, sau numai pentru a verifica corectitudinea unui URL. Metoda PUT aste inversa metodei GET: în loc să citească o pagină, o scrie. Această metodă permite
CAP. 7
crearea unei colecţii dc pagini de Web pe un server la distanţă. Corpul cererii conţine pagina. Pagina poate să fie codificată utilizând MIME, caz în care liniile care urmează după PUT pot includc Content-Type şi an tete de autentificare, pentru a demonstra că într-adevăr ccl care face cererea are dreptul de a realiza operaţia cerută. Similară metodei PUT este metoda POST. Şi ca conţine un URL, dar în loc să înlocuiască date existente, noile date se vor adăuga într-un mod generalizat. De exemplu, se poate transmite un mesaj la un grup de ştiri sau adăuga un fişier la un sistem de informare în reţea. în practică, nici PUT şi nici POST nu sunt utilizate prea mult. DELETE realizează ce era de aşteptat: ştergerea unei pagini. Ca şi la PUT, autentificarea şi drepturile de acces joacă aici un rol important. Nu există nici o garanţie asupra succesului operaţiei DELETE, deoarece chiar dacă serverul doreşte să execute ştergerea, fişierul poate să aibă atribute care să interzică serverului HTTP să îl modifice sau să îl şteargă. Metoda TRACE este pentru verificarea corectitudinii. Ea cere serverului să trimită înapoi cererea. Această metodă este utilă când cererile nu sunt procesate corect şi clientul vrea să ştie ce fel de cerere a ajuns de fapt la server. Metoda CONNECT nu este utilizată în prezent. Este rezervată pentru utilizări ulterioare. Metoda OPTIONS asigură o modalitate pentru client de a interoga serverul despre proprietăţile acestuia sau despre cele ale unui anumit fişier. Fiecare cerere obţine un răspuns ce constă din linia de stare şi posibile informaţii suplimentare (dc exemplu, o parte sau toată pagina Web). Linia de stare conţine un cod dc stare de trei cifre, indicând dacă ccrcrca a fost satisfăcută şi dacă nu, cauza. Prima cifră este utilizată pentru împărţirea răspunsurilor în cinci mari grupuri, ca în fig. 7-42. Codurile lxx sunt utilizate în practică foarte rar. Codurile 2xx indică tratarea cu succes a cererii şi conţinutul (dacă există) este returnat. Codurile 3xx spun clientului să caute în altă parte, prin folosirea unui URL diferit, sau în propria memorie ascun- să (discutată mai târziu). Codurile 4xx indică insuccesul cererii din cauza unei erori la client, precum o cerere invalidă sau o pagină inexistentă. In fine, erorile 5xx indică o problemă în server, datorată codului său sau unei supraîncărcări temporare. Cod 1xx 2xx 3xx
Exemple 100 = serverul acceptă tratarea cererii de la client 200 = cerere reuşită; 204 = nu există conţinut 301 = pagină mutată; 304 = pagina din memoria ascunsă este încă validă 403 = pagină interzisă; 404 = pagina nu a fost găsită 500 = eroare internă la server; 503 = încearcă mai târziu
Fig. 7-42. Grupuri de răspunsuri ale codurilor de stare.
Antete de mesaje Linia de cerere (dc exemplu linia cu metoda GET) poate fi urmată de linii adiţionale cu mai multe informaţii. Acestea poartă numele dc antete de cerere. Această informaţie poate fi comparată cu parametrii unui apel de procedură. Răspunsurile pot avea de asemenea antete de răspuns. Anumite antete pot fi folosite în orice sens. O selecţie a celor mai importante este dată în fig. 7-43. Antetul User-Agent permite clientului să informeze serverul asupra programului său de navigare, sistemului de operare şi altor proprietăţi. In flg. 7-34 am văzut că serverul avea în mod magic această informaţie şi că o poate obţine la cerere într-un script PIIP. Antetul este utilizat de client pentru a-i asigura serverului această informaţie.
SEC. 7.3 Antet User-Agent Accept Accept-Charset Accept-Encoding Accept-Language Host Authorization Cookie Date Upgrade Server Content-Encoding Content-Language Content-Length Content-Tzpe Last-Modified Location Accept-Ranges Set-Cookie
WORLD WIDE WEB Tip Cerere Cerere Cerere Cerere Cerere Cerere Cerere Cerere Ambele Ambele Răspuns Răspuns Răspuns Răspuns Răspuns Răspuns Răspuns Răspuns Răspuns
Descriere Informaţie asupra programului de navigare şi a platformei Tipul de pagini pe care clientul le poate trata Seturile de caractere care sunt acceptabile la client Codificările de pagini pe care clientul le poate trata Limbajele naturale pe care clientul le poate trata Numele DNS al serverului 0 listă a drepturilor clientului Trimite un cookie setat anterior înapoi la server Data şi ora la care mesajul a fost trimis Protocolul la care transmiţătorul vrea să comute Informaţie despre server Cum este codat conţinutului (de exemplu, gzip) Limbajul natural utilizat în pagină Lungimea paginii în octeţi Tipul MIME al paginii Ora şi data la care pagina a fost ultima dată modificată 0 comandă pentru client pentru a trimite cererea în altă parte Serverul va accepta cereri în anumite limite de octeţi Serverul vrea să salveze un cookie la client
Fig. 7-43. Câteva antcte de mesaje HTTP. Cele patru antcte Accept spun serverului ce este dispus clientul să accepte în cazul în care accsta are un repertoriu limitat despre ccca ce este acceptabil. Primul antet specifică ce tipuri MIME sunt acceptate (de exemplu, text/html). Al doilea reprezintă setul de caractere (de exemplu ISO-8859 sau Unicode-1-1). Al treilea se referă la metode de compresie (de exemplu, gzip). Al patrulea indică un limbaj natural (de exemplu, spaniola). Dacă serverul are mai multe pagini din care poate să aleagă, el poate utiliza această informaţie pentru a furniza clientului pagina pe care o caută. Dacă nu poate satisface cererea, este întors un cod de eroare si cererea eşuează. »
Antetul Host denumeşte serverul. El este luat din URL. Antetul este obligatoriu. Este utilizat deoarece anumite adrese IP pot servi mai multe nume dc DNS şi serverul are nevoie de o anumită modalitate de a spune cărui calculator să-i trimită cererea. Antetul Authorization este necesar pentru protecţia paginilor. în acest caz, clientul trebuie să demonstreze că are dreptul de a vedea pagina cerută. Acest header este utilizat în acest scop. Deşi cookie-urile sunt tratate în RFC 2109 mai mult decât în RFC 2616, şi ele au două antete. Antetul Cookie este utilizat de clienţi pentru a întoarce serverului un cookic care a fost anterior trimis de o maşină aflată în domeniul serverului. Antetul Date poate fi utilizat în ambele sensuri şi conţine ora şi data la care a fost trimis mesajul. Antetul Upgrade este folosit pentru a face mai uşoară crearea unei tranziţii cătrc o viitoare (posibil incompatibilă) versiune a protocolului HTTP. Acesta permite clientului, să anunţe ce anume suportă, şi serverului să afirme ccca ce foloseşte. Acum am ajuns la antctele utilizate exclusiv de cătrc server în răspunsul ccrerilor. Primul, Server,, permite serverului să spună cinc este şi câtcva proprietăţi, dacă doreşte.
Următoarele patru antetc, toate începând cu Contentpermit serverului să descrie proprietăţile paginii pe care o transmite. Antetul Last-Modifkd spune când a fost modificată ultima dată pagina. Acest antet joacă un rol important în mecanismul de memorie ascunsă. Antetul Location este utilizat de server pentru a informa clientul că ar trebui să utilizeze un alt URL. Acesta poate fi folosit dacă pagina a fost mutată, sau pentru a da permisiunea mai multor URL-uri de a referi aceeaşi pagină (posibil pe servere diferite). Este de asemenea utilizată pentru companiile care au o pagină de Web principală în domeniul corn, dar care redirecţionează clienţii la o pagină naţională sau regională în funcţie de adresa lor IP sau limba preferată. Dacă o pagină este foarte mare, un client mic poate nu o doreşte dintr-o dată. Unele servere acceptă cereri în anumite intervale de octeţi, astfel că pagina poate fi citită în mai multe unităţi mai mici. Antetul Accept-Ranges anunţă asentimentul severului de a trata acest tip de cerere parţială de pagini. Al doilea antet pentru cookie, Set-Cookiey se referă la modul în care serverele trimit cookie-uri la clienţi. Este de aşteptat salvarea cookie-ului de către client şi retumarea acestuia la cereri ulterioare ale serverului.
Exemplu de utilizare HTTP Deoarece HTTP este un protocol ASCII, este destul de uşor pentru o persoana aflată la un terminal (ca opus al programului de navigare) să vorbească direct cu serverele de Web. Este necesară doar o conexiune TCP la portul 80 pe server. Cititorii sunt încurajaţi să încerce personal acest scenariu (preferabil dintr-un sistem UNIX, deoarece anumite sisteme nu retumează starea conexiunii). Trying 4.17.168.6... Connected to www.ietf.org. Escape character is 'Al\ HTTP/1.1 200 OK Date: Wed, 08 May 2002 22:54:22 GMT Server: Apache/1.3.20 (Unix) mod_ssl/2.8.4 OpenSSL/0.9.5a Last-Modified: Mon, 11 Sep 2000 13:56:29 GMT ETag: "2a79d-c8b-39bce48d" Accept-Ranges: bytes Content-Length: 3211 Content-Type: text/html X-Pad: avoid browser bug
Următoarea secvenţă de comenzi va realiza acest lucru: telnet wAvw.ietf.org 80 >log GET /rfc.html HTTP/1.1 Host: www.ietf.org close Această secvenţă de comenzi porneşte o conexiunc telnet (adică TCP) pe portul 80 al serverului Web al Fig. 7-44. Primele linii ale fişierului www.ietf.org/rfc.html.
SEC. 7.3
IETF, www.ietf.ors. Rezultatul sesiunii este redircctat către fişierul log pentru o inspecţie ulterioară. Apoi urmează comanda GET denumind fişierul şi protocolul. Următoarea linie este antetul obligatoriu Host. Linia rămasă liberă este de asemenea cerută. Ea semnalează serverului că nu mai sunt antete de cerere. Comanda close indică programului de telnet să întrerupă conexiunea. Fişierul log poate fi inspectat folosind un editor. Acesta ar trebui să înceapă similar cu liniile de cod din fig. 7-44, cu excepţia unei modificări recente de către IETF. Primele trei linii reprezintă ieşirea programului telnet, şi nu de la serverul la distanţă. Linia ce începe cu HTTP/1.1 este răspunsul IETF prin care spune că este dispus să vorbească HTTP/1.1 cu tine. Apoi urmează un număr de antete şi apoi conţinutul. Am văzut deja toate antelele, cu excepţia lui ETag care este un identificator de pagină unic, referitor la memoria ascunsă, şi X-Pad care nu este standardizat, probabil o calc de scăpare pentru vreun program de navigare cu erori. 73.5
Popularitatea Web-ului aproape că a fost propria sa distrugere. Servere, ruterc şi linii folosite de Web sunt adesea supraîncărcate. Multă lume a început să denumească WWW-ul ca World Widc Wait (rom: aşteptare de întindere planetară). Ca o consecinţă a acestor întârzieri fără sfârşii, cercetătorii au dezvoltat diverse tehnici pentru îmbunătăţirea performanţelor. Vom examina acum trei dintre ele: memoria ascunsă, replicarea servcrelor şi reţele de livrare a conţinutului.
Memoria ascunsă Un mod simplu de a îmbunătăţi performanţa este de a salva paginile care au fost cerute pentru cazul în care ele vor fi utilizate din nou. Această tehnică este efectivă în special pentru paginile care sunt vizitate foarte mult, ca www.vahoo.com şi www.cnri.com. Paginile pot fi păstrate pentru utilizări ulterioare în memoria ascunsă (eng.: cache). Procedura uzuală este ai un proces, denumit proxy (rom.: delegat), să întreţină această memorie. Pentru a utiliza memoria ascunsă, un program de navigare poate fi configurat să adreseze toate cererile de pagini proxy-ului, şi nu serverului real unde se află pagina respectivă. Dacă proxy-ul are pagina, o returnează imediat. Dacă nu, aduce pagina de la server, o adaugă în memoria ascunsă pentru utilizarea ulterioară şi o întoarce clientului care a cerut-o. Două întrebări importante aferente memoriei ascunse sunt: 1. Cine ar trebui să deţină memoria ascunsă? 2. Cât de mult timp ar trebui să stea paginile în memoria ascunsă? Există mai multe răspunsuri la prima întrebare. PC-urile individuale de obicei rulează proxy-uri, deci pot să caute rapid pagini vizitate anterior. într-un LAN al unei companii, proxy-ul este în general o maşină ce poate fi accesată de toate maşinile din acel IAN, astfel că dacă un utilizator se uită la o anumită pagină şi apoi alt utilizator din acelaşi LAN vrea aceeaşi pagină, ea poate fi adusă din memoria ascunsă a proxy-ului. Multe ISP-uri rulează proxy-uri, pentru a accelera accesul clienţilor
CAP. 7
lor. Dc obicei toate memoriile ascunse operează în acelaşi timp, deci cererile se duc iniţial la proxy- ul local. Dacă eşuează, proxy-ul local cere pagina proxy-ului din LAN. Dacă şi aceasta eşuează, proxy-ul din LAN încearcă la proxy-ul ISP-ului. Ultimul trebuie să reuşească să aducă paginile, fie din memoria sa ascunsă, fie de la o memorie ascunsă de nivel superior, fie de la însuşi serverul ce deţine pagina. O schemă ce include mai multe memorii ascunse care pot fi încercate în secvenţă este denumită memorie ascunsă ierarhică (hierarchical caching). O pasibilă implementare este ilustrată în fig. 7-45.
Reţeaua locală a ISP-ului Fig. 7-45. Memorie ascunsă ierarhică cu 3 proxy-uri.
Cât timp ar trebui paginile să rămână în memoria ascunsă este un pic mai dificil de aflat. Anumite pagini nu ar trebui să fie păstrate deloc în memoria ascunsă. De exemplu, o pagină ce conţine preţurile pentru cele mai active 50 de acţiuni la bursă se schimbă la fiecare sccundă. Dacă s-ar păstra în memoria ascunsă, un utilizator ce ia o astfel dc copie ar lua date vechi (adică depăşite). Pe dc altă parte, din momentul în care schimbul de acţiuni s-a închis pc ziua respectivă, pagina va rămâne validă ore sau zile, până când începe următoarea licitaţie. Astfel, eficienţa menţinerii unei pagini în memoria ascunsă poate varia foarte mult în timp. Problema-cheic în determinarea eliminării unei pagini din memoria ascunsă este legată de vechimea pe care utilizatorii sunt dispuşi să o accepte (din moment ce paginile din memoria ascunsă sunt ţinute pe disc, cantitatea dc memorare consumată reprezintă rareori o problemă). Dacă un proxy elimină repede paginile, el va întoarce rar o pagină veche, dar nu va fi prea eficient (adică va avea o rată scăzută dc succes). Dacă păstrează paginile prea mult, poate avea o rată mai mare dar cu preţul de a întoarce deseori pagini cu informaţie expirată. Există două abordări în tratarea acestei probleme. Prima utilizează o euristică pentru a şti cât timp să menţină fiecare pagină. O euristică dCvS întâlnită este cea în carc se ţine cont dc antetul Last- Modificd (vezi fig. 7-43). Dacă o pagină a fost modificată cu o oră în urmă, sc ţine în memoria ascunsă o oră. Dacă a fost modificată cu un an în urmă, este evident o pagină foarte veche (de exemplu, o listă a zeilor din mitologia greacă şi cea romană), deci poate fi păstrată în memoria ascunsă pentru un an, cu o probabilitate rezonabilă că nu sc va modifica în decursul anului. Deşi această euristică funcţionează bine în practică, ea întoarce, totuşi, pagini vechi din când în când. Cealaltă abordare este mai costisitoare dar elimină posibilitatea paginilor vcchi prin utilizarea unor caractcristici speciale ale RFC 2616 carc tratează administrarea memoriei ascunse. Una din cele mai utilizate caractcristici este antetul dc cerere If-Modified-Since, pc care un proxy poate să-l trimită unui server. El specifică pagina pe care o vrea proxy-ul şi momentul la carc pagina din memoria ascunsă a fost modificată ultima dată (din antetul Last-Modified). Dacă pagina nu a mai fost modificată de atunci, serverul trimite înapoi un scurt mesaj Not Modified (codul de stare 304 din fig. 7-42), care indică proxy-ului să utilizeze pagina din memoria ascunsă. Dacă pagina a mai fost modificată de atunci, este rctumată noua pagină. în timp ce pentru această abordare este întotdeauna ne
SEC. 7.3
voie de un mesaj de cerere şi unul de răspuns, mesajul de răspuns va fi foarte scurt când intrarea în memoria ascunsă este încă validă. Aceste două abordări pot fi combinate uşor. Pentru primul AT după aducerea paginii, proxy-ul doar retumează pagina clienţilor ce o cer. După ce pagina a stat un timp în memoria ascunsă, proxy- ul utilizează mesajul If-Modified-Since pentru a verifica valabilitatea acesteia. Alegerea AT implică invariabil o euristică, depinzând de cât de mult timp a trecut dc la modificarea paginii. Paginile Web cu conţinut dinamic (de exemplu, cele generate de un script PI IP) nu ar trebui niciodată păstrate în memoria ascunsă, deoarece parametrii pot fi diferiţi la următoarea accesare. Pentru a trata aceasta şi alte cauze, există un mecanism general prin care un server instruieşte toate proxy-urile până la client să nu folosească din nou pagina curentă până nu îi verifică valabilitatea. Acest mecanism poate fi folosit dc asemenea pentru orice pagină pasibilă să fie modificată curând. Diverse mecanisme dc control al memoriei ascunse sunt definite în RFC 2616. Mai exisă o abordare în îmbunătăţirea performanţei, memoria ascunsă proactivă. Când un proxy aduce o pagină de la un server, el poate inspecta pagina pentru a vedea dacă ea conţine hiper- legături. Dacă este aşa, poate să lanseze cereri serverelor corespunzătoare pentru a preîncărca în memoria ascunsă paginile la care punctează, pentru cazul în care va fi nevoie de ele. Această tehnică poate reduce timpul de acces pentru cererile ulterioare, dar poate, la fel de bine, să inunde liniile dc comunicaţie cu pagini care nu vor fi niciodată necesare. A
In mod clar, memoria ascunsă în Web este departe de a fi banală. Mult mai multe se pot spune despre ea. Dc fapt, s-au scris cărţi întregi pe această temă, de exemplu (Rabinovich şi Spatschcck, 2002; şi Wcssels, 2001). Dar este timpul ca noi să trecem la un alt subiect.
Replicarea serverelor Memoria ascunsă este o tehnică orientată spre client pentru îmbunătăţirea performanţelor, dar există şi tehnici orientate pe server. Cea mai întâlnită abordare pentru îmbunătăţirea performanţelor serverelor este replicarea conţinutului lor în mai multe locuri separate. Accastă tehnică este câteodată denumită oglindire (mirroring). A
Intr-o utilizare tipică a oglindirii într-o companie, pagina principală de Web conţine câteva imagini cu legături către siturile Web regionale, de exemplu siturilc din est, vest, nord şi sud. Utilizatorul urmează legătura cea mai apropiată. Din acel moment, toate cererile se duc la serverul selectat. Siturilc oglindite sunt în general complet staticc. Compania decide unde să plaseze copiile, dispune de un server în ficcarc regiune, şi plasează (mai mult sau mai puţin) întregul conţinut în fiecare loc (omiţând, probabil, dezăpczitoarele în situl dc la Miami şi şezlongurile în situl din Anchoragc). Alegerea siturilor rămâne în general stabilă luni sau chiar ani de zile. Din păcate, Web-ul prezintă un fenomen cunoscut ca aglomerare bruscă (flash crowds) în care un sit Web care era anterior necunoscut, nevizitat, aproape mort, devine dintr-o dată centrul universului. De exemplu, până pe 6 noiembrie 2000, situl Web al secretarului de stat din Florida, www.dos.state. fi.us, informa tacit despre întâlnirile cabinetului statului Florida şi oferea instrucţiuni pentru a deveni notar în Florida. Dar pe 7 noiembrie 2000, când preşedinţia Statelor Unite depindea dintr-o dată de câteva mii dc voturi disputate în câteva provincii din Florida, a devenit unul din primele 5 situri Web din lume. Evident, nu a putut suporta încărcarea şi aproape că a murit strivit sub ca. Este necesar un mod prin care un sit Web, cc observă dintr-o dată o cerere masivă a traficului, să se doneze automat în atâtea locaţii cât este necesar şi să păstreze aceste situri operaţionale până când trece furtuna, moment în care opreşte majoritatea sau chiar totalitatea acestora. Pentru a avea această abilitate, un sit are nevoie de o înţelegere prealabilă cu o companie care deţine mai multe situri, prin
CAP. 7
care se pot crea replici la cerere şi pentru care se plăteşte în funcţie de capacitatea pe care o foloseşte în realitate. O strategie şi mai flexibilă este de a crea replici dinamice la nivel de pagini, în funcţie de unde vine traficul. Câteva cercetări pe această temă sunt raportate în (Picrrc ş.a.., 2001; şi Pierre ş.a.., 2002).
Reţele de livrare de conţinut Culmea capitalismului este că cineva a descoperit cum să câştige bani din World Wide Wait. Funcţionează în felul următor. Companiile denumite CDN (Content Delivery Networks, rom: reţele de livrare de conţinut) vorbesc cu deţinătorii conţinutului (situri muzicale, ziare, şi alţii carc doresc să facă disponibil conţinutul uşor şi rapid) şi se oferă să livreze acest conţinut utilizatorilor finali în mod cficicnt, contra cost. După semnarea contractului, deţinătorul conţinutului oferă CDN-ului conţinutul sitului său Web pentru preprocesare (care va fi discutată imediat) şi apoi distribuţie. Apoi CDN vorbeşte cu un număr mare de ISP-uri şi se oferă să îi plătească bine pentru dreptul de a plasa un server administrat la distanţă, plin de conţinut valoros, pe LAN-urile lor. Nu numai că este o sursă de venit, dar asigură de asemenea clienţilor ISP-urilor timpi de răspuns excelenţi pentru a ajunge la conţinutul CDN-ului, oferind astfel ISP-uIui un avantaj competitiv faţă de alte ISP-uri care nu au acceptat oferta CDNului. în aceste condiţii, colaborarea cu un CDN este ceva la mintea cocoşului pentru ISP. Ca o consecinţă, cele mai mari CDN-uri au mai mult de 10.000 de servere răspândite în toată lumea.
Click below for free samples.
Click below for free samples.
Cu un conţinui rcplicat pc mii de situri în lumea întreagă, există în mod clar un potenţial ridicat pentru îmbunătăţirea performanţelor. Cu toate acestea, pentru o funcţionare bună, trebuie să existe o modalitate prin care să se rcdirectezc cererea clientului la cel mai apropiat server CDN, preferabil unul aflat la ISP-ul
SEC. 7.3
clientului. De asemenea, această redirectare trebuie făcută fără modificarea DNS-ului sau a oricărei alte părţi a infrastructurii standard a lnternet-ului. O descriere puţin simplificată despre cum lucrează Akamai, cel mai mare CDN, este oferită în continuare. întregul proces începe din momentul în care furnizorul conţinutului trimite CDN-ului silul său Web. Apoi CDN-ul trcce fiecare pagină printr-un preprocesor care înlocuieşte toate URL-urile cu unele modificate. Modelul de lucru din spatele acestei strategii este acela că situl Web al furnizorului de conţinut este constituit din multe pagini foarte mici (doar text HTML), dar că aceste pagini au de obicci referinţe către fişiere mari, precum imagini, audio şi video. Paginile HTML modificate sunt păstrate pe serverul furnizorului de conţinut şi sunt aduse în mod obişnuit; doar imaginile, comunicaţiile audio şi video merg pc scrverele CDN-ului. Pentru a vedea cum funcţionează această schemă în realitate, se consideră pagina Web a lui Furry (rom.: îmblănit) Video din fig. 7-46(a). După prcprocesare, ea este transformată în fig. 7-46(b) şi plasată pe serverul Furry Video ca www.funyvideo.comlindex.html. Când un utilizator introduce ca URL www.furryvideo.com, DNS-ul întoarce adresa IP a sitului Furry Video, permiţând ca pagina (HTML) principală să Ge adusă în mod obişnuit. Când se face clic pe oricare din hipcr-lcgături, programul dc navigare cere DNS-ului să caute cdn-server.com, ceea ce acesta chiar face. Programul de navigare trimite apoi o cerere HTTP către această adresă IP, contând pc faptul că va primi înapoi un fişier MPEG. Accasta nu se întâmplă deoarccc cdn-server.com nu găzduieşte nici un conţinut. în schimb, acesta este pe serverul fals de HTTP al CDN-ului. El examinează numele fişierului şi numele serverului pentru a afla care pagină este necesară cărui furnizor dc conţinut. Dc asemenea, examinează adresa IP a cererii sosite şi o caută în baza sa de date pentru a determina unde este posibil să se afle utilizatorul. Cu o astfel de informaţie, el determină care servere CDN de conţinut pot oferi utilizatorului serviciul cel mai bun. Această decizie este dificilă deoarece serverul situat geografic cel mai aproape poate să nu fie cel mai apropiat în termeni de topologic dc reţea, iar cel mai apropiat în termeni dc topologie de reţea poate fi foarte aglomerat în acel moment. După cc se face o alegere, cdn-server.com trimite înapoi un răspuns cu codul de stare 301 şi un antet Location cu URL-ul fişierului pe serverul CDN de conţinut ccl mai apropiat de client. Pentru acest exemplu, să presupunem că URL-ul este www.CDN-0420.com/ furry'video/bears.mpg. Programul de navigare procesează apoi acest URL în mod normal pentru a obţine fişierul MPEG real. Paşii urmaţi sunt ilustraţi în fig. 7-47. Primul pas este căutarea www.funyvideo.com pentru a obţine adresa lui IP. După aceea, pagina HTML poate fi adusă şi afişată în mod obişnuit. Pagina conţine trei hiper-Iegături la cdn-server [vezi fig. 7-46(b)]. Când, să zicem, este selectată prima, este căutată (pasul 5) şi rctumată (pasul 6) adresa sa de DNS. Când o cerere pentru bears.mpg este trimisă la cdn-server (pasul 7), clientul este înştiinţat că trebuie să se ducă de fapt la CDN-0420.com (pasul 8). Când fece accst lucru (pasul 9), i se dă fişierul din memoria ascunsă a proxy-ului (pasul 10). Proprietatea care face ca întregul mecanism să funcţioneze este pasul 8, serverul fals de H'ITP redircctând clicntul la un proxy CDN aflat aproape dc client.
CAP. 7 Caută www.furryvideo.com Este întoarsă adresa IP a lui Furry Pagina HTML este cerută de la Furry Este întoarsă o pagină HTML După selecţia cu mouse-ul, se caută cdn-server.com Este întoarsă adresa IP a lui cdn- server Bears.mpg este cerut de la cdn- server Clientul este redirecţionat către CDN-0420 Este cerut fişierul bears.mpg Fişierul bears.mpg este întors din memoria ascunsă.
Fig. 7-47. Paşii în căutarea unui URL când se foloseşte un CDN Serverul CDN la care este redirectat clientul este în mod tipic un proxy cu o CDN-0420.com memorie ascunsă preîncărcată cu conţinutul cel mai important. Dacă lotuşi cineva cere un fişier care nu este în memoria ascunsă, acesta este adus de la serverul real şi dispus în memoria ascunsă pentru o utilizare ulterioară. Făcând din serverul de conţinut un proxy şi nu o replică completă, CDN are abilitatea de a schimba dimensiunea discului, timpul de preîncărcare şi diverşi parametri de performanţă. Mai multe despre reţele de livrare a conţinutului găsiţi în (Huli, 2002; şi Rabinovich şi Spatscheck, 2002). 73.6
Există un interes considerabil pentru dispozitivele mici, portabile, capabile să acceseze Web-ul printr-o legătură fără fir. De fapt, primii paşi în această direcţie au fost deja făcuţi. Cu siguranţă că vor fi o mulţime de schimbări în acest domeniu în anii ce vin, dar toi merită să examinăm câteva din idele actuale legate de web-ul fară fir, pentru a vedea unde suntem acum şi încotro ne putem îndrepta. Ne vom concentra asupra primelor două sisteme Web fără fir de scară largă care au spart piaţa: WAP şi i-modc.
WAP-The Wireless Application Protocol (Protocolul pentru aplicaţii tară fir) O dată ce Intcmct-ul şi telefoanele mobile au devenit lucruri comune, nu a durat mult până când cuiva i-a venit ideea să le combine într-un telefon mobil cu ecran încorporat pentru acccs fără fir la poşta electronică şi la Web. Acel „cineva” a fost consorţiul condus iniţial de Nokia, Ericsson, Motorola şi phone.com (fosta Unwired Planet) şi care acum se laudă cu sute de membri. Sistemul se numeşte WAP (Wireless Application Protocol - protocolul pentru aplicaţii fără fir). Un dispozitiv WAP poate fi un telefon mobil îmbunătăţit, PDA, sau calculator portabil fără servicii pentru vocc. Specificaţia lc permite pe toate şi multe altele. Ideea de bază este să se folosească infrastructura digitală fără fir existentă. Utilizatorii pot accesa o poartă (cng.: gateway) WAP prin legătura iară fir şi îi pot trimite cereri de pagini Web. Apoi, poarta controlează memoria ascunsă pentru pagina cerută. Dacă există, o trimite; dacă nu există, o ia de pe Intcrnet-ul cu fir. In esenţă, această înseamnă că WAP 1.0 este un sistem cu comutare de circuite cu o taxă de
CAP. 7
conectare pe minut relativ mare. Pentru a scurta o poveste lunga, oamenilor nu le-a plăcut sa acceseze Internet-ul pe un ecran mic şi plătind la minut, astfel că WAP-ul a fost un fel de nereuşită A
(deşi au mai fost şi alte probleme). In orice caz, WAP-ul şi competitorul sau, i-mode (prezentat mai jos), par să conveargă spre o aceeaşi tehnologie, astfel că WAP 2.0 ar mai putea să fie un marc succes. întrucât WAP 1.0 a fost prima încercare pentru Internet-ul fără fir, merită să fie dcscris cel puţin pe scurt. WAP este de fapt o stivă de protocoale pentru accesarea Web-ului, optimizată pentru conexiuni cu o bandă de transfer mică folosind dispozitive fără fir ce au un procesor lent, puţină memorie şi un ccran mic. Aceste cerinţe sunt evident diferite de cele pentru un PC standard de birou, scenariu care duce la nişte diferenţe între protocoale. Nivelurile sunt prezentate în fig. 7-48. ________ Mediul aplicaţiilor fără fir (WAE) ________ ________ Protocolul sesiune fără fir (WSP) _______ ________ Protocolul tranzacţie fără fir (WTP) ______ Securitatea la nivelul transport fără fir (WTLS) Protocolul pentru datagrame fără fir (WDP) Nivelul fizic (GSM, CPMA, D-AMPS, GPRS, etc.)
Fig. 7-48. Stiva de protocoale WAP. Nivelul cel mai de jos suportă toate sistemele de telefonie mobilă existentă, inclusiv GSM, D- AMPS şi CDMA. Rata de transfer pentru WAP 1.0 este de 9600 bps. Deasupra acestora se află protocolul pentru datagrame, WDP (Wireless Datagram Protocol - protocolul pentru datagrame Iară fir), carc este de fapt UDP. Apoi vine un nivel pentru securitate, evident necesar într-un sistem tară fir. WTLS este un subset al SSL-ului de la Netscape, la carc nc vom uita în cap. 8. Deasupra acestuia este un nivel tranzacţie sigură sau nesigură, care se ocupă de cereri şi răspunsuri. Acest nivel înlocuieşte TCP, care nu este folosit peste legătura prin aer din motive legate de eficienţă. Apoi vine un nivel sesiune, care este similar cu HTTP/1.1, dar cu câteva restricţii şi extensii pentru motive de optimizare. Deasupra acestuia se află micro-programul de navigare (WAE).
în afara costului, celălalt aspect care cu siguranţă a afectat acceptarea WAP-ului este faptul că nu
Fig. 7-49. Arhitectura WAP.
foloseşte HTML. in locul acestuia, nivelul WAE foloseşte un limbaj de marcare numit WML (Wireless NIVELUL APLICAŢIE CAP. 7 Markup Language - limbajul de marcare fără fir), care este o aplicaţie a XML Drept consecinţă, în principiu, un dispozitiv WAP nu poate accesa decât acele pagini carc au fost convertite la WML Oricum, având în vedere că asta restricţionează mult valoarea WAP-ului, arhitectura reclamă un filtru direct dc la HTML la WML pentru a creşte mulţimea paginilor disponibile. Arhitectura este ilustrată în fig. 7-49. Ca să fim corecţi, WAP-ul a fost, probabil, puţin înaintea vremii sale. Când WAP-ul a fost lansat prima dată, XML abia era cunoscut în afara W3C şi astfel presa a anunţat lansarea sa spunând WAP NU FOLOSEŞTE HTML. Un titlu mai clar ar fi fost: WAP DEJA FOLOSEŞTE NOUL STANDARD HTML Dar cum răul fusese făcut, a fost greu dc reparat şi WAP 1.0 nu a prins niciodată. Vom rediscuta WAP-ul după ce ne vom uita mai întâi la competitorul său major.
In timp ce un consorţiu multi-industrial de companii de telecomunicaţii şi de calculatoarc a fost ocupat cu construcţia unui standard deschis folosind cea mai avansată versiune de HTML disponibilă, alte dezvoltări aveau loc în Japonia. Acolo, o japoneză, Mari Matsunaga, a inventat o altă soluţie pentru Web-ul fără fir numită i-niode (information mode - modul informaţie). Ea a convins divizia „fără fir” a fostului monopol dc telefonie japoneză că idcca sa era corectă şi în februarie 1999 N'IT DoCoMo (în traducere literală: Compania Japoneză pentru Telefoane şi Telegraf oriunde tc-ai duce) a lansat serviciul în Japonia. în 3 ani a avut peste 35 de milioane dc abonaţi japonezi, care puteau A
accesa peste 40.000 de situri Web speciale i-mode. In plus, a mai făcut ca majoritatea companiilor dc telecomunicaţii să saliveze după succesul său financiar, mai ales datorită faptului că WAP nu părea sa ducă nicăieri. Să vedem acum ce este i-mode şi cum funcţionează. Sistemul i-mode are trei componente de bază: un nou sistem de transmisie, un nou telefon şi un nou limbaj pentru proiectarea paginilor Web. Sistemul dc transmisie constă în două reţele separate: reţeaua de telefonic mobilă cu comutare dc circuite existentă (oarecum comparabilă cu D-AMPS) şi o nouă reţea cu comutare de pachete construită în mod special pentru serviciile i-mode. Modul voce foloseşte reţeaua cu comutare de circuitc şi este taxat la fiecare minut de conectare. I-mode foloseşte reţeaua cu comutare de pachete şi este întotdeauna activ (la fel ca la ADSL sau la cablu), astfel că nu există taxarea pentru timpul dc conectare. în locul acesteia, există o taxă pentru fiecare pachet trimis. Momentan nu este posibil să fie folosite ambele reţele în acclaşi timp. Telefoanele arată ca nişte telefoane mobile cărora li s-a adăugat un mic ecran. NTT DoCoMo promovează masiv dispozitivele i-mode ca fiind mai degrabă telefoane mobile decât terminale Web fără fir, deşi ele chiar asta sunt. Dc fapt, probabil că majoritatea clienţilor nici nu sunt conştienţi că sunt conectaţi la Internet. Ei consideră dispozitivele lor i-mode ca fiind telefoane mobile cu facilitaţi sporite. Pentru a păstra acest model de i-mode la nivel de serviciu, telefoanele nu pot fi programate de utilizatori, deşi ele conţin echivalentul unui PC din 1995 şi ar putea probabil rula Windows 95 sau UNIX. Când telefonul i-mode este pornit, utilizatorului îi este prezentată o listă cu categoriile dc servicii aprobate oficial. Sunt mult peste 1000 de servicii grupate în aproximativ 20 de categorii. Fiecare serviciu, care este dc fapt un mic sit Web i-mode, este oferit de către o companie independentă. Categoriile importante din meniul oficial includ poşta electronică, ştiri, meteo, sport, jocuri, cumpărături, hărţi, horoscop, distracţie, călătorii, ghiduri regionale, tonuri ale soneriei, reţete, jocuri de noroc, servicii bancare si cotaţiilc bursei. Serviciul este oarecum orientat către adolescenţi şi oameni dc 20- 30 de ani, care au tendinţa să se ataşeze de jucăriile electronice, mai ales dacă sunt în culori frumos asortate. Simplul fapt că peste 40 de companii vând tonuri ale soneriei spune ceva. Cea mai populară aplicaţic este poşta electronică, care permite mesaje de până la 500 de octeţi şi din acest motiv este văzută ca o marc îmbunătăţire faţă de SMS (Short Message Scrvice serviciul de mesaje scurte) care permite mesaje de numai 160 de octeţi. Jocurile sunt şi ele populare. Sunt de asemenea peste 40.000 de situri Web i-mode, dar ele trebuie accesate mai degrabă scriindu-se URL-ul lor, decât selectându-le dintr-un meniu. Dintr-un punct de vedere, lista oficială este ca un portal
Internet care permite altor situri Web să fie accesate prin selecţie în loc să li se scrie URL-ul. SEC. 7.3 WORLD WIDE WEB 597 NIT DoCoMo controlează îndeaproape serviciile oficiale. Pentru a fi acceptat pc listă, un serviciu trebuie să îndeplinească o serie de criterii publice. De exemplu, un serviciu nu trebuie să aibă o influenţă negativă asupra societăţii, dicţionarele japonez-englcz trebuie să aibă suficicnte cuvinte, serviciile cu tonuri pentru sonerie trebuie să adauge frecvent noi tonuri şi nici un sit nu poate să promoveze comportarea vicioasă sau să se rcflccte negativ asupra NTT DoCoMo (Frangle, 2002). Cele 40.000 de situri Internet pot face orice vor ele. Modelul afacerii i-modc este atât de diferit de acela al Intemet-ului convenţional încât merită explicat. Taxa pentru abonamentul de bază i-mode este dc câţiva dolari pe lună. Cum există o taxă pentru fiecare pachet primit, abonamentul dc bază include şi un mic număr dc pachete. Ca alternativă, clientul poate opta pentru un abonament cu mai multe pachctc gratuite, cu o taxă pc pachet ce scade repede pc măsură ce trece de la 1 MB pe lună Ia 10 MB pe lună. Dacă pachetele gratuite sunt folosite până la jumătatea lunii, pot fi cumpărate on-line alte pachete adiţionale. Pentru a folosi un serviciu trebuie să te abonezi la el, fapt care se realizează printr-o simplă selecţie şi introducerea codului PIN personal. Majoritatea serviciilor oficiale costă înjur dc 1S-2S pe lună. NTT DoCoMo adaugă taxa la factura de telefon şi transferă 91% celui care oferă serviciul, păstrând 9%. Dacă un serviciu neoficial arc 1 milion de clienţi, trebuie sa trimită 1 milion de facturi de (aproximativ) 1$ în fiecare lună. Dacă acel serviciu devine oficial, NTT DoCoMo se ocupă de taxare şi transferă lunar 910.000$ în contul din bancă al serviciului. A nu avea dc manipulat note dc plată este un mare stimulent pentru ca cineva să devină distribuitor oficial de servicii, ceea ce generează venituri mai mari pentru NTT DoCoMo. De asemenea, fiind oficial ajungi în meniul iniţial, ccea ce face situl tău mult mai uşor dc găsit. Factura utilizatorului include convorbirile, taxele de abonamente i- modc, taxele dc abonamente pentru servicii şi pachetele suplimentare. In ciuda succesului său masiv în Japonia, nu este de loc clar că i-mode va prinde şi în SUA şi Europa. Din unele puncte de vedere, situaţia din Japonia este diferită de aceea din Vest. în primul rând, majoritatea potenţialilor clienţi din Vest (spre exemplu adolescenţii, studenţii şi oamenii de afaceri) au deja un PC cu ecran marc acasă şi aproape sigur o concxiune la Internet dc ccl puţin 56 Kbps, adesea mult mai rapidă. în Japonia, puţini oameni au PC-uri conectate la Internet acasă, pc de o parte din cauza lipsei de spaţiu, dar şi din cauza taxelor exorbitante ale NTT pentru serviciile de telefonie locală (undeva în jur dc 700$ pentru instalarea unei linii şi 1.50$ pe oră pentru convorbiri locale). Pentru majoritatea utilizatorilor, i-modc este singura lor concxiune la Internet. în al doilea rând, locuitorii din Vest nu sunt obişnuiţi sa plătească 1$ pc lună pentru a accesa situl Web al CNN, 1$ pe lună pentru a accesa situl Yahoo, 1$ pc lună pentru a accesa situl Googlc şi aşa mai departe, fără să mai menţionăm câţiva dolari pentru fiecare MB descărcat. Majoritatea distribuitorilor de Internet din Vest au acum o taxă fixă pe lună, independentă de utilizarea reală, în mare măsură ca răspuns la cererea clienţilor.
în al treilea rând, pentru mulţi japonezi, perioada de vârf in care folosesc i-mode este perioada în care se deplasează la sau de la serviciu sau şcoală în tren sau în metrou. în Europa, mai puţini oameni se deplasează SEC.decât 7.3 în Japonia, iar în SUA abia WORLD WIDE WEBcâţiva. Folosirea i- mode acasă, lângă un 598 cu trenul dacă se deplasează calculator cu un monitor de 17 ţoii, conexiune ADSL de 1 Mbps şi toţi megaocteţii gratuiţi, nu se prea justifică. Cu toate acestea, nimeni nu a prezis imensa popularitate a telefoanelor mobile în general, astfel că imode mai poate încă să-şi găsească o nişă în Vest. Aşa cum am menţionat mai sus, telefoanele i-mode folosesc reţeaua cu comutare de circuite existentă pentru voce şi o nouă reţea cu comutare de pachete pentru date. Reţeaua pentru date se bazează pe CDMA şi transmite pachete de 128 de octeţi la 9600 bps. O diagramă a reţelei este dată în fig. 7-50. Telefoanele folosesc LTP (Lightweight Transport Protocol - protocol simplificat de transport) pe o legătură prin aer până la o poartă pentru conversie de protocoale. Poarta are o conexiune de bandă largă prin fibră optică la serverul i-mode, care este conectat la toate serviciile. Când utilizatorul selectează un serviciu din meniul oficial, cererea este trimisă serverului i-mode, care ţine majoritatea paginilor în memoria ascunsă pentru a-şi spori performanţa. Cererile pentru situri carc nu sunt în meniul oficial ocolesc serverul i-mode şi merg direct pe Internet.
Fig. 7-50. Structura reţelei de date i-mode, arătând protocoalele de transport. Telefoanele actuale au procesoare carc funcţionează la aproximativ 100 MHz, câţiva megaocteţi de memorie ROM rapidă, poate 1 MB RAM şi un ecran mic încorporat. I-mode necesită un ecran de cel puţin 72x94 pixeli, dar unele dispozitive mai mari au chiar 120x160 pixeli. Ecranele au de obicei culori pe 8 biţi, ceea ce permite 256 de culori. Aceasta nu este suficient pentru fotografii, dar este adecvat pentru desenarea de linii şi imagini animate simple. Cum nu există mouse, navigarea pe ecran se face cu săgeţile direcţionale. _______________________________________ ___________ Modulul de interacţiune cu utilizatorul ___________ Elemente de intrare ] Interpretor cHTML 1 Java ______________ Coordonator simplu de ferestre _____________ _________________ Comunicaţie de reţea _________________ ______________ Sistem de operare în timp real ______________
Structura aplicaţiilor este prezentată în fig. 7-51. Nivelul cel mai de jos conţine un sistem simplu de operare în timp real pentru controlul echipamentelor. Apoi vine un modul pentru comunicarca pe reţea, folosind protocolul proprietar al NTT DoCoMo, LTP. Deasupra acestuia vine un simplu coordonator de ferestre care se ocupă dc text şi de imaginile simple (fişiere GIF). Cu ecranele având doar aproximativ 120x160 de pixeli în cel mai bun caz, nu sunt prea multe de coordonat. Al patrulea nivel conţine intcrpretorul pagini Web aplicaţiilor (de exemplu, programul de navigare). I- mode nu Fig.de 7-51. Structura i-mode.
foloseşte întregul HTML, ci numai un subset al acestuia, numit cHTML (compact HTML - H TML. Acest nivel permite de asemenea şi aplicaţii ajutătoare şi SEC 7.3 compact), bazat în mare pe HTML WORLD1.0. WIDE WEB 599 elemente de intrare, la fel cum fac şi programele de navigare pentru PC-uri. O aplicaţie ajutătoare standard este un interpretor pentru o versiune puţin modificată a JVM. La nivelul cel mai înalt se află modulul dc interacţiune cu utilizatorul, care controlează comunicaţia cu acesta. Să ne uităm acum mai în detaliu la cHTML. După cum am menţionat, este aproximativ HTML 1.0, cu câteva omisiuni şi câteva extensii pentru a fi folosit cu telefoane mobile. A fost trimis la W3C pentru standardizare, dar W3C nu a arătat interes pentru el, aşa că probabil va rămâne un produs privat. Majoritatea etichetelor de bază HTML sunt permise, incluzând aici , , , , , ,