Tanenbaum Komp Seti

501
NataHaus.RU COMPUTER NETWORKS 4th edition Andrew S. Tanenbaum Prentice Hall PTR Upper Saddle River, New Jersey 07458 www.phptr.com HARCCMHR COtTlPUTER SCIENCE Э. ТАНЕНБАУМ КОМПЬЮТЕРНЫЕ СЕТИ 4-Е ИЗДАНИЕ Москва • Санкт-Петербург • Нижний Новгород • Воронеж Ростов-на-Дону • Екатеринбург • Самара Киев • Харьков • Минск 2003 NataHaus.RU COMPUTER NETWORKS 4th edition Andrew S. Tanenbaum Prentice Hall PTR Upper Saddle River, New Jersey 07458 www.phptr.com HARCCMHR COtTlPUTER SCIENCE Э. ТАНЕНБАУМ КОМПЬЮТЕРНЫЕ СЕТИ 4-Е ИЗДАНИЕ Москва • Санкт-Петербург • Нижний Новгород • Воронеж Ростов-на-Дону • Екатеринбург • Самара Киев • Харьков • Минск 2003

description

Tanenbaum Komp Seti

Transcript of Tanenbaum Komp Seti

COMPUTER NETWORKS4th edition Andrew S. Tanenbaum

HARCCMHR COtTlPUTER SCIENCE

.

4-

NataHaus.RU

Prentice Hall PTR Upper Saddle River, New Jersey 07458 www.phptr.com

- --

2003

32.973.202 681.324 18

1. 2. 3. 4. 5. 7. NataHaus.RU 9. 6. 8. -|5 -\j 21 -4 222 291 399 551 658 814 941 971

18 . 4- . / . . .: , 2003. 992 : . ( computer science). ISBN 5-318-00492-

, . , , . , , . , , ATM . 32.973.202 681.324

, , , . , , , .

ISBN 0-13-066102-3 (.) ISBN 5-318-00492-

2003, 1996 Pearson Education, Inc. , , 2003 , , , 2003

Ethernet : 802.11

92 95 98 99 102 104 106 107 108 110

16 1720

2. : , ADSL,

114115 115 115 118 119 119 120 121 122 129 130 133 134 138 138 140 141 145 145 148 149 150 153 156 171 182 187 189 193 203

1. OSI TCP/IP OSI TCP OSI TCP/IP : .25, , ATM

2123 23 26 31 35

NataHaus.RU37 39 40 42 44 46 49 50 50 54 56 58 61 62 62 66 69 70 73 74 75 86

: : : . . . .

COMPUTER NETWORKS4th edition Andrew S. Tanenbaum

HARCCMHR COtTlPUTER SCIENCE

.

4-

NataHaus.RU

Prentice Hall PTR Upper Saddle River, New Jersey 07458 www.phptr.com

- --

2003

32.973.202 681.324 18

1. 2. 3. 4. 5. 7. NataHaus.RU 9. 6. 8. -|5 -\j 21 -4 222 291 399 551 658 814 941 971

18 . 4- . / . . .: , 2003. 992 : . ( computer science). ISBN 5-318-00492-

, . , , . , , . , , ATM . 32.973.202 681.324

, , , . , , , .

ISBN 0-13-066102-3 (.) ISBN 5-318-00492-

2003, 1996 Pearson Education, Inc. , , 2003 , , , 2003

Ethernet : 802.11

92 95 98 99 102 104 106 107 108 110

16 1720

2. : , ADSL,

114115 115 115 118 119 119 120 121 122 129 130 133 134 138 138 140 141 145 145 148 149 150 153 156 171 182 187 189 193 203

1. OSI TCP/IP OSI TCP OSI TCP/IP : .25, , ATM

2123 23 26 31 35

NataHaus.RU37 39 40 42 44 46 49 50 50 54 56 58 61 62 62 66 69 70 73 74 75 86

: : : . . . .

206 207 208 209 211 214 215 216

9

ADSL ?

304 307 . . . . 310 313 Ethernet Ethernet Ethernet 802.3 Ethernet Ethernet Ethernet IEEE 802.2: LLC Ethernet 802.11: 802.11: 802.11: . . . . 802.11: 802.11 802.16 802.16: 802.16: 802.16: MAC 802.16: 317 317 321 322 325 326 329 330 334 339 340 341 341 342 345 350 351 353 354 355 356 358 360 361 362 363 365 367 367 368 369 370 372 375 377 378 379 382 391 394

3. , HDLC

222223 224 227 230 231 232 233 236 240 245 246 248

NataHaus.RU252 254 257 264 270 270 273 276 276 280 285

Bluetooth Bluetooth Bluetooth Bluetooth: Bluetooth: Bluetooth: Bluetooth: L2CAP Bluetooth: 802.x 802. , , , ,

4. ALOHA

291292 292 294 295 295 300

286

10

' 5. , MPLS IP IP- OSPF

3994004 0 0

401 402 404 405 406 408 409 412 413 417 424 426 428 430 433 439 444 446 448 450 451 454 456

BGP IP IPv6

526 528 529 532 542 543

6. , : -

551551 552 554 557 559 563 564 567 573 577 582 583 585 585 587 595 598 598 600 603 607 607 608 610 611 614 616 616 619 623 626 629 632 633 634 637

NataHaus.RU458 458 460 472 475 478 481 483 484 486 487 489 490 492 495 498 501 515 520

: UDP UDP : TCP TCP TCP TCP TCP- TCP- TCP TCP- TCP TCP TCP UDP TCP

12

6 4 0

13

TPDU-

644 648 652 653

7. DNS DNS (WWW) - - HTTP l-mode - IP

658658 659 662 665 668 670 672 675 683 686 693 694 712 727 735 741 748 750

DES DES AES RSA .509 IPsec , : Kerberos PGP S/MIME SSL

832 834 836 837 841 847 848 849 850 852 853 853 855 856 861 863 864 866 867 871 871 876 879 881 886 887 892 894 897 900 901 901 906 907 907 908 909 916 920 923 924 927 931

NataHaus.RU760 761 764 767 771 774 782 786 795 803 807 808

8.

814818 819 821 823 824 830

9. . .' .' .' . . . . . . . . . . 934 . 935 941 . 941 . 942 . 943 946 . 947 . 949 . 950 . 951 . 952 971

, , ,

NataHaus.RU

. , . , . ( , , ). . , , . , . www.cs.vu.nl/globe. , , 2003 , . . . (Amsterdam Compiler Kit), , MINIX, UNIX, . Amoeba, . MINIX Amoeba . , , . . IEEE, , 1994 , ACM/SIGCSE 1997 Texty 2002 . . http://www.cs.vu.nl/~ast/.

. . , 1980 , , . (1988 ) , . 1996 , , , . , . , , . 90- LAN WAN . 2003 , LAN, Ethernet, WAN , . . , , , . : 802.11, , 2G 3G, Bluetooth, WAP, i-mode , . , . 1, , , . , , Ethernet, , . . 2 . , , ( , , ). : , , . , ADSL, , , DOCSIS.

NataHaus.RU

.o^ate...

18

19 9 , 350 , . 200 , 2000 . . . : 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, OFDM, OSPF, PCF, PCM, PGP PHP, PKI, POTS, PPP, PSTN, QAM, QPSK, RED, RFC, RPC, RSA, RSVP, RTP, SSL, TCP, TDM, UDP, URL, UTP, VLAN, VPN, VSAT, WAN, WAP, WDMA, WEP, WWW XML. , . . , , : ; , ; Power Point ; 3 ( ); - (, , . .). ( !) Prentice Hall. http://www.prenhall.com/tanenbaum. . , . (Ross Anderson), - (Elizabeth Belding-Royer), (Steve Bellovin), (Chatschik Bisdikian), (Kees Bot), (Scott Bradner), (Jennifer Bray), (Pat Cain), (Ed Felten), (Warwick Ford), (Kevin Fu), (Ron Fulle), (Jim Geier), (Mario Gerla), (Nathalie 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), (Guilaumme Pierre), (Wayne Pleasant), (Patrick Powell), (Thomas Robertazzi), (Medy

3 (point-to-point) . . , . (MAC) , 4. , Ethernet, Ethernet. , , , Bluetooth, ( MPLS). 5 , ATM, , . . , , . , NAT . 6 - , . , . , . - -, . - , . RTP, / . 7, , . DNS , : e-mail, Web . . , Web 60 , : -, HTTP, CGI-, , cookie-, -. , XML, XSL, XHTML, PHP . . , . , i-mode WAP. , , , , -, IP. , 100 . 8 ( , , .509), (, e-mail, Web). , ( ), ( SHA-1).

NataHaus.RU

20

Sanadidi), (Christian Schmutzer), (Henning Schulzrinne), (Paul Sevinc), (Mihail Sichitiu), (Bernard Sklar), (Ed Skodius), (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) (Maarten van Steen). (Trudy Levine), , . (Shivakant Mishra) , . (Andy Dornan) . (Jan Looyen) . . (Dr. F. de Nies) . (Mary Franz) Prentice Hall, , , 7 , . , : (Suzanne), (Barbara) (Marvin). , , . , ( , ), . . .

1

NataHaus.RU

, [email protected] ( , ). ! web- http://www.piter.com. . XVIII . XIX . XX , . , , , . . , , . , , , . , .

22

1.

23

(, ), . , , . , . - , . , - 20 , . . , , . , , , , . . . . , . . , , . . , , (WWW) . , . : , . . , . , . ( ), . (World Wide Web), , , (-). , . , . , , .

, . , . . , ( ), . . , , . , . , . : ., . . . .: , 2003 (Tannenbaum and van Steen, 2002).

, , . , , . , , , , .

NataHaus.RU

, . , , , . , - { , . , , , , . , , . , , , , , .

24

1.

25

, , , (, , -), . , , , . , , , , . , , , . . , , , , . , , . , , . , -, , . , , 15 , . , . , . , . . , , , , . ( . , , , .) , . 1.1. : , . . , . - . . , , . , -, . - , . .

. 1 . 1 . ,

- , , : . . . , . . 1.2.-

NataHaus.RU

. 1.2. -

, . , . , (e-mail), . , , : , . e-mail , . . , , (on-line), , -

26

1.

27

. . . , , , , , . , , ( ). , , . , . - , . . . , , , , . . , , . -. . , , , -. , , - , , . , (on-line) . .

NataHaus.RU

1977 (Ken Olsen) DEC (Digital Equipment Corporation), ( IBM) , . , DEC , : , . , , , , DEC . ? . , , , . , , : ; ;

; . . . , . , , , , , , , , , , . , . , . , , , , , , , . , , , , . , , , , . . , (www.acm.org) IEEE (www.computer.org), . . , , , , . , . . , XXI XIX . , . , -, . (). , , talk, UNIX 1970 . . , , , , . , , , , . ,

28

1.

29

, , , . , , , - . , , , , . (peer-to-peer). - (Parameswaran ., 2001). , , . , , . . 1.3. 2000 , Napster. 50 (!) , , , , . . , Napster. - - , , , . Napster , , . .

NataHaus.RU

. 1.3.

, , , . . , - Napster, , -

- . , , , . , , , . . . , , - . , , , , , . . , , . , - e-mail . , . , , . . . , . .? , , . , , (, ), , , -, . , , ? . , , IP-, , -. . . , , , 8 , . . , . . - - . , ( ?) , . , . .

30

1.

31

, . , . - , , . , - . . . , , - -, , . , , . , , , . : . , . , , . , - , . , , . , -, ( ). , . 1.1. ( to, ?, ?, , 2 (two). .) 1 . 1 . 2 2 (Business-to-Consumer) (Business-to-Business) (Government-to-Client) (Client-to-Client) (Peer-to-Peer) on-line

NataHaus.RU

, . . 10 , , SMS-, , , ? , . , , , , . ; . ( , ), . - , - , .

G2C 2 2

(PDA) , . , . , , , . . , ? . , , , , . . , . , , . , , , . , , , . -

32

1.

33

, . , , - . . , . . , , . . . , . . 1.2. , . . , , , . , . , , , . , - , . , , , . , , . 1.2. , ; PDA,

NataHaus.RU

, PDA, , . , , . , , , PDA . . . , -

, , . , . , ( ), , . , 10 (Harte ., 2000). , , , , , , , . , - , . , . . , , . , , , , . , , . , , , . . , , . , , , . , , , . , , PDA. PDA, - . WAP 1.0 (, ). - , , , . WAP 2.O. , , (m-commerce). PDA . , , PDA -. , . --

34

1.

35

. . , . , , : , , PDA , . , PDA , . , , , . , , . . ? , , : , , ? , . , , - . , . - , - , . , , . , . , , , . . IBM Linux ( XII). , (Narayanaswami ., 2002). , . . . PIN- - . - (, ). . , (Dick Tracy) 1946 . , , . 1 (Warneke ., 2001). , , !

, . , , , . , . , , , , . , , , , . , , . . , , , . . , , (, ) . ; , . , , . , , , . , , , , , , . , . , . , , , , . . , ? ? 1994 (CarnegieMellon University) , , ( 18 ). , . . , , , ,

NataHaus.RU

36

1.

37

(Blaze, Bellovin, 2000; Sobel, 2001; Zacks, 2001). Carnivore ( . . .), . DCS 1000. . . , - . , 54 - XXI , , XXII . , . , , -. cookie, , , (Berghel, 2001). . . , , , , , , . , , . . , 500 , . , . . , . , ? , , , , . . , , , , , e-mail . , -, -. , , . , , . . . , , , . , - -

. . , . , , , . , , 8. , , , , . ( ), . . , , . , , , , . , , , , .

NataHaus.RU

. , , , : . . , : ; 4- . , . , , , . , . . , . , , . , : , . . () , . . , 644 12. . , . -

38

1.

39

. , . . -1 . , . , , . , , . , , . , . ( ) , , . , . . . 1.4 . , , . , , , . PDA, , . . , . . 1 100 1 10 100 1000 10 000

. , . , . .

, , , - . (, ) . : , . , . , . , . , , . , . 10 100 /, ( ) . , 10 /. (1 1 000 000 ) (1 1 000 000 000 ). . . 1.5 . ( ) (master) . . - , , . . , IEEE 802.3, Ethernet, , 10 / 10 /. Ethernet . , .

NataHaus.RU

. 1.4.

40

1.

41

999999\. . 1.5. : (); ()

. , . , . , . . IEEE 802.5 ( ) , 4 16 /. FDDI ( ). . , . , , . ( ) . . , , . . , - . , , . , .

NataHaus.RU

. - , . , . - , . , . - . , , , - . . 90- . , , , , , ( ) . . MAN , . 1.6. , , . . .

ffiSE

fflffi

fflffi

| I |

I ss

| si

as .

(metropolitan area network, MAN) . . ,

. 1.6.

, . , , MAN, IEEE 802.16. 2.

42

1.

43

(wide area network, WAN) , . , ( ). . , . ( ), . , . , () (), . : . , , . , . , . . (router), , . , - router doubter, , router rooter (). , . 1.7, , , . ( ) .

NataHaus.RU

(subnet). , . , ( 5). , , . , , . , . , . - , . , , , , . , , (store-and-forward) (packetswitched). ( ) . (cell). , . , - , , , . . . . 1.8.

, D

. 1.8.

. 1.7.

, , ABDE ACDE. . .

44

1.

45

. , , . . , 5. . . , . , , . , . , .

. 1901 (Guglielmo Marconi) , , . , . : ; (LAN); (WAN). . : , , , ... , , . , , ? , , , . Bluetooth, , . , Bluetooth , , . , , . , , . , -

NataHaus.RU

, . . - . , . ? , , , , . . Bluetooth 4. ( ). , . , , , , . , Ethernet , , , , , - . IEEE 802.11, . 4. . , . . . , , , - . , , , , . , , . 50 / , 1 /, , . 2 . -, . : , . . . , IEEE 802.16, 4. - , , , , . . , . 1.9, -

46

1.

47

, , , . . (. 1.9, ). Ethernet, . , , . . , , , . , (., , Bi ., 2001; Leeper, 2001; Varshey Vetter, 2000), , . , , Ethernet (Bob Metcalfe) 1995 : . , -. . , , , IBM . . (. J. Watson), 1945 , : , 2000 - .

NataHaus.RU

\

. 1.9. (); ()

. , , , , . , , , (, , ), , , .

, . : ( , , PDA, ); (, DVD, VCR, , , -); + (, , , ); ( , , , , , ); (, , , ). , , . . , - , . , , , , , , . , , , , . ( ). . , . , , . , , , , PDA. , , , , , , . , . -, . ; . , . : + ; ;

48

1. , , ; 4- - . , Windows -.

49

- , , . , - , , , . , , , . , . -, . , (, , ), . , , , . , , . -, . , . $50 -, . , . -, , , . , . -, 320x240 10 , . Ethernet . , : , . . -, , - , . , . , , IEEE 1394 (FireWire), , USB 2.0 . . , ( ) .

NataHaus.RU

-, . , - , e-mail, , PDA . , . : , , ,, , . , . , . , , , . , , , . 8 , , , , . , , , , . , . , . , , , , . .

. , , , . . , , , . . , (internet, ) , ( ). , . , . 1.7 , . . , . , , . , .

50

1.

51

, . , , . , , . , . ( ) . . . . . , , . : , , . (, ), , .

. , . , , . , , , , . , , . . 1.10 . , , , , , , . .1 2

5 i

t

4 <

4

4

, , . . . , . .

NataHaus.RU

3/4

3 2/3

3

....> 3

\ 2 4

4

4

2i

3

4 >

Mi

3 2

2

2 4

Mi

2

2

2

4

2

2

2 2

-

-

. 1.12. 5

NataHaus.RU

. 4, , , 4- . SendToOtherSide ( ) GetFromOtherSide ( ), , 3/4. . , . , , -. , .

. , , , , . , . . , . , , . : . , . , , , . , , , . . , , . , : , ? , : , ? , . , . . .

, , . .

, , . : , , ? . , . , , , . , , , .

56

1.

57

, . . , , , , . .

: . , . . -, , , . : , . : , . . , : , . , , . , . , . , , . . , . , , , . . , , . . , , -

NataHaus.RU

. - , , . : . . 1 , 1 . , . 2048 , , 2 , 1 2048 . , , , . , . , , , , . . , , . , , . . , . 100- , , . , , , . ( ) , , . , , , . . . , , , . , , , , . , , -. -: , . . 1.13.

58

1.

59

1.3. , LISTEN () CONNECT () RECEIVE () SEND () DISCONNECT ()

<

. 1.13.

. , , ? -, ( , , ) . , Ethernet . , . -, , , , . .

NataHaus.RU

() , . . ( ), . , , . . , . . 1.3 , -. . LISTEN, , . . , .

CONNECT, . , . , . , . 1.14 (1). . , , . , , . : (2). . , . , (2) , . , , . . , LISTEN. (1) (2) (3) (4) (5) (6)

?s

I

I

m

. 1.14.

() . -

60

1.

61

, , . . , , . RECEIVE, . (LISTEN), , . RECEIVE . SEND, (3) RECEIVE, . , . SEND, (4). , . , . DISCONNECT. DISCONNECT , , (5). DISCONNECT, , . , , , . . , . , - (, CONNECT LISTEN). , , , . , - . . 1.14. , , , ? : , , , , . (, ), , , . ., . , , , ? , ? , . 1 1 , ? , - . 3 , , . : .

, . , , , . ( ) (), < , , , . , , . , , , , . . , , . , . , , , , . . 1.15. . . - . , , , . , , . + 1 , I

NataHaus.RU

+ 1

- 1

I

- 1

. 1.15.

. SEND PACKET, . , . .

62

1.

63

, . OSI TCP/IP. , OSI, , , , , . TCP/IP , . , , . , .

7 -

i

APDU

^ Y 6 ^ 5

i 1

-i

1

SPDU

OSI OSI ( ) . 1.16. (International Organization for Standardization, ISO) , (Day Zimmerman, 1983). 1995 (Day, 1995). ISO (ISO OSI (Open System Interconnection) Reference Model), , , . OSI. OSI . . 1. . 2. . 3. . 4. , . 5. , , , . , . : OSI , , . , . ISO , . .

4

f

TPDU t \ i

3

>

- -

>

2

NataHaus.RU1

i

--

>>

I

- - - >

-

- -

I

- - . 1.16. OSI

. , , , . : , ; ; ; , ; . , , , .

, -

64

1.

65

. , . , . , ( ), , . , . . : . .

. . . , , . , , . , , . . ( , , ). . , , , . - , . , . . , . , .

NataHaus.RU

- . , , , . , , . , . . ( , . , , .) , . , - . , . 1- 3-, , 4- 7-, , . 1.16.

. , ( ), ( ) ( , , ).

, , . , , . , (, ).

, , , . , ,

, . -

66

1.

67

HTTP (HyperText Transfer Protocol), . -, () , HTTP. . , , .

TCP/IP , ARPANET, , , . ARPANET , . ARPANET , . . , . . , . TCP/IP . Cerf (1974). , Leiner . 1985 . Clark, 1988. , , , , , , . , , , , . , , , .

, . . , , . , , . ( ) , , . , IP (Internet Protocol). IP- . . , TCP/IP OSI. . 1.17.OSI 7 6 5 4 3 2 1 TCP/IP

NataHaus.RU

. 1.17. TCP/IP

, TCP/IP, , . , , OSI. . , TCP (Transmission Control Protocol ), , . . TCP- . , TCP , .

- , . , - , . , (, ). , . , . , -

68

1.

69

, UDP (User Data Protocol - ), , TCP . - , , , . IP, TCP UDP . 1.18. IP .

- , IP-. . , TCP/IP, .

OSI TCP OSI TCP . . . , , , , , . . . , . . , , . . (Piscitello Chapin, 1993), TCP/IP OSI. OSI : 1. . 2. . 3. .

TCP/IP . , OSI : . " ( OSI) TELNET FTP SMTP DNS

. .

2

3

4" " ' " " - - . -

5

6

'

\

148- 547 000 000 57

-

8,25- (40 )

57

J 935,2

I

I

11

. 2

/ . 2.38. GSM

W

1J1124

914,8 [890,4 890,2

I

I II II I I I I

i i

I I I I I I II I II I -

II II 1 1 1 I II I I I I

I I II I 11 II II II 1

I,

. 2.37. GSM 124 , 8-

547 , 4,615 , . 270 883 /. 8 . 33,854 /, 16,2 / D-AMPS (324 50 ). , AMPS, , 24,7 / ( ). 13 /, . , D-AMPS ( ).

198

2.

199

. 2.38, 8 TDM, a 26 TDM 120- . , , 24 . , 26- , . 2.38, 51- ( ). . , , . , . , , . , , . , , . , , . , . , . , . (), , . , . .

NataHaus.RU

CDMA D-AMPS GSM . . CDMA (Code Division Multiple Access ), -. CDMA , , , , , . , , Qualcomm, CDMA , . , D-AMPS. , Sprint CDMA, a AT&T Wireless D-AMPS. CDMA IS-95,

. cdmaOne. , CDMA AMPS, D-AMPS GSM. CDMA . . CDMA , . , . , . . . , . , , . , . CDMA , , . , . , CDMA . CDMA. CDMA , , (chip). 64 128 . , 8 , . m- , . 1 , . 0, ( , ). . , = 8 8- 00011011, 1 00011011 ( ), 0 11100100 ( ). , ( /, mb ), . , CDMA (, ). 1 , 100 , . 10 10 / (, 1 /). CDMA

200

2.

201

(1 ), 1 /. , 100, CDMA , FDM, . 0 1, 1 +1. . , (-1 -1 -1 +1 +1 -1 +1 +1). . 2.39, . . 2.39, , . : 0 0 0 1 1 0 1 1 : 0 0 1 0 1 1 1 : 0 1 0 1 1 1 0 0 D: 0 1 0 0 0 0 1 0 : (-1-1-1 +1 +1-1 +1 +1) :(-1 -1 +1 -1 +1 +1 +1 -1) :(-1 +1-1 +1 +1 +1-1-1) D:(-1 +1 -1 -1 -1 -1 +1 -1)

, , . . : S = 0, S 0. 1:

:

1- S, = (-1+1-1+1+1+1-1-1) - 1 1 - + S2 = ( 2 0 0 0 +2 +2 0 -2) 1 0 - - + S 3 = ( 0 0 -2 +2 0 -2 0 +2) 1 0 1 - + + S4 = ( 1 +1 -3 +3 +1 -1 -1 +1) 1111 + + + D S5 = ( 4 0 -2 0 +2 0 +2 -2) 110 1 + + + D S6 = ( 2 -2 0 -2 0 -2 +4 0)51 C = (1 +1 +1 +1 +1 +1 +1 +1)/8= 1 5 2 = (2 +0 +0 +0 +2 +2 +0 +2) /8 = 1 5 3 = (0 +0 +2 +2 +0 -2 +0 -2) /8 = 0 5 4 = ( 1 + 1 + 3 + 3 + 1 - 1 +1-1)/8= 1 5 5 = (4 +0+2+0+2+0-2+2)/8 = 1 5 6 = (2 -2 +0 -2 +0 -2 - 4 +0) /8 =-1

NataHaus.RU

, m 1, . , S S = 1. 1, , 0, , . , , . , . , +1, - 1 , +2. : +1 , -1 . +2 . . 2.39, , . , . , , , : (-1 - 1 + 1 - 1 + 1 + 1 + 1 -1) + (-1 + 1 - 1 + 1 + 1 + 1 - 1 -1) = (-2 0 0 0 +2 +2 0 -2).

. 2.39. (); (); (); ()

. S S, S. . , Sn ( 5 ) 0. , , . , :

s Ts

\ f

=0

(2.4)

1, 0. . 1, 0. 1. , , D , . , ( 5, 5 6 ), . 2.39, , . , , . ( ) , . S , , S . , , , . , -

202

2.

203

. , S = + + :S = ( ++ ) = + + =0 + 0 +1 = 1.

, , , . (2.4). , . -. , . , . , , , 0. . , . 2.39, . . 2.39, . , , , 5,-56. (5) (. . 2.39, ), 8 ( = 8 ). , . , -! CDMA ( ) , . , , . -, , . . , , . () . , . (. Pickholtz ., 1982). , , . . . , , , , . CDMA , , . , , , , -

NataHaus.RU

. : , , . , , , , , . , . , , . , , . , . CDMA , . , , . CDMA 1,25 ( 30 D-AMPS 200 GSM), , . , , , , GSM, . , CDMA, (Lee and Miller, 1998). , , , (Crespo ., 1995). (Sari ., 2000). .

: ? . . -, , , . : . -, . , , -, DVD-, , -, , . . . . (Huber ., 2000; Sarikaya, 2000). 1992 , ITU, -

204

2.

205

IMT-2000, IMT (International Mobile Telecommunications). 2000, : -, , ; -, ( ) ; -, ( ). . 2000 . ITU 2000 (2 ) . . , - , 2 /, ( ). 2 / , ( ADSL), 384 / , , 144 / , . , 3G, , . , , . , IMT-2000: 1. . 2. ( e-mail, , SMS, . .). 3. ( , , , . .). 4. ( - ). , , , ( ). , ( , ) . ITU IMT-2000 , , ( - ). . ( Betamax VHS ), , . , . CDMA (W-CDMA, Wideband CDMA) Ericsson. , .

NataHaus.RU

5 GSM, GSM. , W-CDMA GSM . , UMTS (Universal Mobile Telecommunications System ). CDMA2000, Qualcomm. , IS-95 ( , ). 5 , CDMA2000 GSM, GSM ( D-AMPS) . W-CDMA , , . Ericsson Qualcomm , , , . , CDMA 5 . - . , , , , . , GSM; , (IS-95). (Ericsson , Qualcomm ). , , CDMA. 1999 , Ericsson Qualcomm. 3G, , , , , . , 3G. 3G , . , . : (Collins and Smith, 2001; De Vriendt ., 2002; Harte ., 2002; Lu, 2002; Sarikaya, 2000). , , , (Garber, 2002; Goodman, 2000). 3G, 3G, , , 2.5G, 2.1G. EDGE (Enhaced Data rates for GSM Evolution - GSM) GSM . , -

206

2.

207

, . EDGE . , , . GPRS (General Packet Radio Service ) D-AMPS GSM. IP- . GPRS . . , . , . , . IP-, , . , , IP-. , . GPRS , , , 3G. , 3G , . (Berezdivin ., 2002; Guo and Chaskar, 2002; Huang and Zhuang, 2002; Kellerer ., 2002; Misra ., 2002). 4G , , , IP, , . , 802.11, 3G , . , , . , . , . , .

, . , . , . (Laubach ., 2001; Louis, 2002; Ovadia, 2002; Smith, 2002).

1940- . , , , , , , . 2.40.

NataHaus.RU

i l l

. 2.40.

. , , . , -

, . - . , , , , . . : . 1970 . 1974 Time , . : , , . . . -, . -, , -

208

2.

209

, . , . . , .

, . . , , HFC (Hybrid Fiber Coax ). , , . , , . HFC . 2.41, . , . , , . , . . HFC (. 2.41, ) (. 2.41, ), . , . , . , , 10 10 000 . , , , . , . : ADSL . , , . ? : , . , , , . 500-2000 , , , .

NataHaus.RU

. 2 . 4 1 . (); ()

, , . , , , - . , - .

210

2.

211

54 550 ( 88 108 , FM-pa). 6 , . 65 , 6-8 , , PAL SECAM, . . 550 , 750 . 5-42 ( ), . . 2.42.

1

180

550

750

QAM-64 . , - . , QPSK. (. . 2.21) 6 8, QAM . , , . 2.42. , . . : CMTS (Cable Modem Termination System ). - .

TV

TV

NataHaus.RU

. 2.42. ,

: (), , 5-42 , 54 , . , , -. , , , . , DSL-, , . , . . , 6 8 QAM-64 ( ) QAM-256. 6 QAM-64 36 /. , 27 /. QAM-256 39 /. .

, : , . , . , , . , ( V.9x) . CableLabs . DOCSIS (Data Over Cable Service Interface Specification ) . EuroDOCSIS. . , , , . . Ethernet 10 / ( USB). , . . ,

212

2.

213

. , , , , ADSL-, . , . , , , . , . , . . , . , , , . , . , . . , . -. . -, , . , , -. - . 8 . . , - , . , , - . , . , - . , -. , . - , , . , . ( , : ALOHA . Ethernet , . 4.)

, . -, , -, , , . -, , , 204 . . 184 . , MPEG-2, . . 2.43. : 27 / QAM-64 184

NataHaus.RU : 9 / QPSK 8- - . 2.43. ,

/ . , -, . , , IP-, DHCP ( 5). . . , , . (), . . . , , , , 8 (: ). , . . .

214

2.

215

, . (Adams and Dulchinos, 2001; Donaldson and Jones, 2001; DuttaRoy, 2001).

ADSL ? , ADSL ? , . . . , . ADSL . , , . , ADSL . , , . , , . . ADSL (, 1 / , 256 / ) 80 % . , , . , ADSL, . , , . , , , , , , .

NataHaus.RU

, ADSL . , ADSL-, . , , , . , , , . , ADSL , . , . . , , , . , , . , , . - , , , . , ADSL. . . - . : ADSL . , , -, .

ADSL , . . . , . , , . , , - . , , . , , . * , , .

. , . . , , . . , . , , , . , LEO ( ). . , . , . ADSL 50 /, -

216

2.

217

. , LMDS. , , (FDM), (TDM) (WDM). , . . , . , AMPS. , D-AMPS, GSM CDMA. CDMA. , , , , . , , .

NataHaus.RU

1. f{t) = t (0 < t ; ; , . , , . , . . 3.1. . . > i

2 ( ). , . , , > (, ). , , , , . , , , , ix . , [ . , , . . . ia . 1 , , , -

. 3 . 1 .

, , , , . , . , , . , .

223

3

. , . . , .

. : ; ; , . , , . , . . 3.1. . . t

2 ( ). , . , , (, ). , , , , . , , , , . , . , , . . . . , , , -

J. 3 . 1 .

, , , , . , . , , . , .

224

3.

225

, . . , , . , , . 3.2, . , . 3.2, , , . , . 3.2, .1 2s

1

2

4 3 2 ^ 11

i

I. 3.2. (); ()

. . . 1. , . 2. , . 3. , . . , ,

. . - - , . . , , . , , , . . , . , . , , . , . , , . , , , . . , . , , . . , 10 20 % , . , . , , , , , . , , . , , . , , . , , . , , , , , . .

2 2 6 3.

227

. , , , , . . , , , . : , , . , ( , ) ( ). , , , , , , . , . . 3.3.

, . . . , ; , . , , . . ( .) , . , , , (, ). , . , , . , , , , . , . . 1. . 2. . 3. . 4. . . , , , , . . 3.4, 5, 5, 8 8 . , . , 5 - 7, . 3.4, , . ( ) , , , . , , . .

| . 3.3.

, , . , . , . , , .

228

3.

229

4 5 6 8 7 8 9 0 \ 1 2 3

5

1 2

3

4

5

6

7

8

9

8

0

1

2

1 5

2 5

8

4 8

12

3

4

7

7 8 9 8

0 1 2 3 4 5 6 9

7

9

0

12

3

1

()

. 3.4. : (); ()

. , , . . 3.5, FLAG. , , , . , .FLAG FLAG

FLAG

ESC FLAG

ESC

ESC

ESC

ESC

FLAG

ESC

ESC

ESC

FLAG

ESC

ESC

ESC

ESC

ESC

ESC

. 3.5. , (); ()

, . , . , , . escape- ( , ESC) . escape-, . . , ESC. : , ESC ? : escape . ESC escape-, , . . 3.6, . , . , . 3.5, , -. . , 8- . 8 . , UNICODE 16- . . , . / , . . , 01111110 ( ). , . , escape-. , , . , , . (01111110) , 011111010, : 01111110. . 3.6 . . -

230

3.

231

, , , . 011011111111111111110010 011011111011111011111010010

011011111111111111110010

. 3.6. : (); (); , ()

, , . , . 1 ( ), 0 , ( ). , . ( ) , . , . , . , . , .

, . , . , , . , , , - . , - - (, ) . , , , . . , . , , . , , , . , , . . . , , . , , , , , . .

( ) , , , . , ( ) , . , . . , - .

, : . , , , . , .

232

3.

233

. , , , , , , . , , , , . . , (, 5). , . , , . , , , . , : , , . , .

. . , , . , , ( ) . , , . . . , , . , , . , , , , , , , . , , , , . , , , . ( ) . ( = + ). , , - . , 10001001 10110001, . / 3 . 2 ( ) , : 10001001 10110001 00111000 , , , (Hamming, 1950). , d, d . 2 , 2" . , ,

2, , . . , . , . , , , . : . . , , (, ) , . , . , . 1000 0,001 . , . , 100 , 100 . , , .

234

3.

23i

. , . . d , d + 1, d , . , , . , d , Id + 1, d , , , , . , . , ( ). , 10110101 101101011, 10110001 101100010. , 2, . . , : 0000000000, 0000011111, 1111100000 1111111111 , 5, , . 0000000111, , 0000011111. 0000000000 0000000111, . , , . 2"' , 1. - . , 2'" + 1 . 2", , ( + 1)2 < 2". = + , ( + + 1) < . . (1950). , 1. , 2 (1, 2, 4, 8, 16 . .), . (3, 5, 6, 7, 9, 10 . .) .

( ) , . , , : k- , k 2. , 11 = 8 + 2 + 1 29 =16 + 8 + 4 + 1. , (, 11- 1, 2 8). , . k (k = 1, 2, 4, 8,...) . , k . : , , . . , 1, 2 8, , 11, : , 1, 2 8. . 3.7 ! ASCII-, 11- . , 3, 5, 6, 7, 9, 10 11. ASCII

m m i n g d e

1001000 1100001 1101101 1101101 1101001 1101110 1100111 0100000 1100011 1101111 1100100 1100101x

00110010000 10111001001 11101010101 11101010101 01101011001 01101010110 01111001111 10011000000 11111000011 10101011111 11111001100 ' 00111000101

. 3.7.

. . k , . , . ,

234

3.

235

. , . . d , d + 1, d , . , , . , d , 2d + 1, d , , , , . , . , ( ). , 10110101 101101011, 10110001 101100010. , 2, . . , : 0000000000, 0000011111, 1111100000 1111111111 , 5, , . 0000000111, , 0000011111. 0000000000 0000000111, . , , . 2 , 1. - . , 2 + 1 . 2", , ( +1)2 < 2". = + , ( + + 1) < 2. . (1950). , 1. , 2 (1, 2, 4, 8, 16 . .), . (3, 5, 6, 7, 9, 10 . .) .

( ) , . , . , k- , k 2. , 11 = 8 + 2 + 1, 29 =16 + 8 + 4 + 1. , (, 11- 1, 2 8). , . k(k = \, 2, 4, 8, ...) . , k . , , . . , 1, 2 8, , 11, , 1, 2 8. . 3.7 ASCII-, 11- . , 3, 5, 6, 7, 9, 10 11. ASCII

m m i n g d e

1001000 1100001 1101101 1101101 1101001 1101110 1100111 0100000 1100011 1101111 1100100 1100101 '

00110010000 10111001001 11101010101 11101010101 01101011001 01101010110 01111001111 10011000000 11111000011 10101011111 11111001100 00111000101

. 3.7.

. . k , . , . , -

236

3.

237

. . k , . ., . 3.7. , . , , 1 . , . , km .

, , , . -, , . , , , . , 1(6 . 1000 . , , 10 . 10 000 . 1- , . 1000 (1001 ). , 2001 10 000 , . , 0,5, . , ( ). . . , . , . , . , 1 . + 1 , , . ( , , ,

.) , , ( ), 0,5, 2~". , , CRC (Cyclic Redundancy Check ). , 0 1. - 1, k *~ . ( ) ~ , 2 ~ , . . , 110001 6 , , 5 4 1, 1, 0, 0, 0 1: + + . 2 . . , (XOR): 10011011 + 11001010 01010001 00110011 +11001101 11111110 11110000 -10100110 01010110 01010101 -10101111 11111010

, , , 2, . , G(x). 1. , (), , . , G(x) . , , , G(x). . : 1. G(x). , + ?(). 2. 2 , x'Mix), , G{x). 3. 2 ( ) , (). , (). . 3.8 1101011011 G(x) = + + 1.

238

3.

239

:

1 1 0 10 1 1 0 11 10 0 11 11010110110000

:

4 : 1 10011

10 0 0 0 10 10

1 1 0 1 0 1 1 0 1 1 0 0 0 0

10 0 1 1 I 10 0 11 10 0 110 0 0 0 1 0 0 0 0 0 0 0 0 10 0 0 0 0 0 0 0 10 1 0 0 0 0 0 0 10 11 0 0 0 0 0 10 1 1 0 10 0 11 0 10 10 0 0 0 0 0 10 10 0 10 0 11 0 1 1 1 0 0 0 0 0 0 1110 : 11010110111110

. 3.8.

. . .' , , () () + (). () . -

a 109 4 1 >2 3 9 9 TZ!"f3^Zo^ 2399 210 278, (207 879) 10 941 -

^ 6 R I T b ' ( 2) G(x) , , . ,

() k 1, , k . , , 0. G(x), [() + E(x)]/G(x). T(x)/G(x) 0, E(x)/G(x). , G(x), , . , () = 1, i . G(x) , () , . () =* + 1, i >j, () = '('~-' +1). , G(x) , G(x) * + 1 k 1 i - j, . , . , 15 + + 1 * + 1 k 1 32 768. , () (, 5 + *+ 1, 2 + 1). , 2 + 1. , + 1, , . , + 1, , () + 1. , () () = ( + l)Q(x). = 1: (1) = (1 + l)Q(l). 1 + 1 = 0 ( 2), (1) 0. () , 1 1. , , + 1. , , < . k ^*"1 +...+ 1), i , . G(x) , 1 , G(x), . + 1, , G(x). , 1, -

240

3.

241

, - 1 . , (1/2)~'. , + 1 (1/2) , . . , , , IEEE 802: : 32 , . , (Peterson) (Brown) 1961 , . , . , , , . . , . , , (Partridge ., 1995).

. - (. ). , , . , , , . -, . (, -; , , . .). , , .

, , . , . , , , . , . ( .) , . , , . , , , . , , . , , (. . 3.1). , , ( ) ( ). . , , to_physical Jayer from_physical_layer . ( ), . , , . . , , - . -=wait_for_event(&event). , (, ). event , . . , , , , . . , , . , . ( ), (event = cksum_err). , (euew=frame_arrival), from_physical_layer.

L,

242

3.

243

, , , , . . : . , , . , . 3.1 ( ), , . : boolean, seq_nr, packet, framejdnd frame. boolean , true false. seq_nr , . 0 MAX_SEQ , , . packet , . _ , . frame : kind, seq, ack info, , , . . kind , , , , . seq ack . . , info, . info . info , . . , . , info . , . , , . 3.1 . , , . , wait_ for_event - . to_network_layer from_network_layer

. : from_physical_layer to_phy s i 1 _1 aye , tojietworkjayer from_ networkjayer . , tojietworkjayer from_ networkj ayer 2 3, from_physical_layer to_physical_1ayer 1 2. , . , , . , -, . event=timeout, wait_for_event. start_timer stop_timer . timeout , . start_timer . , ( -, ). start_ack_timer stop_ack_timer . enable_network_layer disable_network_layer , , . , , . event=network_layer_ready. , . , , , . 0 _ SEQ (). MAX_SEQ . 1 ( MAXJSEQ) inc. , , . , . , . , _ SEQ , , , . .

244

3.

245

3 . 1 . . protocol.h

#define MAX_PKT 1024 typedef typedef */ typedef typedef

/* */ /* boolean */ /*

enum {false, true} boolean; unsigned int seqjir:

3.1 . , , , . #include protocol.h, .

struct {unsigned char data[MAX_PKT];} packet; /* */ enum {data, ack. nak} frante_kind: /* */ /* /* /* /* /* */ */ */ */

. . . . . , . , , 3.2. , sender () receiver (). sender , receiver . , , _ SEQne . frame_arrival ( ). sender , while, . : ( ) , s . info, , . . , - , . , wait_for_event , event frame_arriva1 ( ). from_physi ca 1 _1 . , , . 3.2.

typedef struct { */ frame_kind kind; seqjir seq; seqjir ack; packet info; } frame;

/* event */ void wait_for_event(event_type *event): /* */ void from_network_layer(packet * p ) ; /* */ void to_network_layer(packet * p ) ; /* */ void from_physical_layer(frame * r ) ; /* */ void to_physical_layer(frame * s ) ; /* timeout */ void start_timer(seqjir k); /* timeout */ void stop_timer(seq_nr k ) ; /* ack_timeout */ void start_ack_timer(void): /* ack timeout */ void stop_ack_timer(void); /* network_layer_ready */ void enable_network_layer(void): /* network layer ready */ void disable_network_layer(void): /* inc : */ fdefine inc(k) if ( < MAX SEQ) = + 1; else = 0

/* 1 () - . , . , . */ typedef enum {frame_arrival} event_type:

A

246

3.

247

#include "protocol.h" void senderl(void) { frame s; packet buffer; */while (true) { from_network_layer(&buffer); s.info = buffer; to_physical_1ayer(&s):

/* */ /* */ /* /* s */ /* s */ /* , . . - . V, v */

void receiverl(void) { frame r;

event_type event; /* , */ while (true) { wait_for_event(&event); /* - , frame_arrival */ from_physical_layer(&r): /* */ to_network_layer(&r.info); /* */

(, , ) 1, , . , , , . , , . . . . . , , . , , . , , , . 3.3 . 3.3.

, 1, (, , , ). , . . , , , , . t, from_physica1_layer to_network_layer, , t. , , , , from_physical_layer. .

/* 2 ( ) . . , . , , , . , . */ typedef enum {frame_arrival} event_type; finclude "protocol.h" void sender2(void) { frame s: /* */ packet buffer; /* */ event_type event: /* - ( frame arrival)*/ while (true) { from network layer(&buffer): /* * /

s.info = buffer: to_physi cal_layer(&s); wait_for_evint(&event); */

/* s */ /* , , */ /* ,

248

3,

249

void receiver2(void) /* */ frame , s; /* frame arrival event_type event; */ while (true) { /* - wait_for_event(&event); ( frame_arriva1)*/ /* */ from_physical_layer(&r); */ to_network_1ayer(&r.info); /* /* , to_physical_layer(&s); */ 1, , . , 1, , . : , : . receiver2 receiverl , receiver2 , . , , .

: , . , . , , . , , , ( ) . , 2. . . , . , , , . . , , .

, , , . , . , , , . . 1. 1 . . . 2. . . , , , , . 3. . , , , . 4. . , , , . , . 5. , , . . , . , : , ? + 1. , . , . . , , + 1. + 2 + 1. , . , . , ( 0 1). -

250

3.

251

. . , , 2 ( 0 1, 1 0). 3.4. , , , PAR (Positive Acknowledgement with Retransmission ) ARQ (Automatic Repeat reQuest ). 2, . 3.4.

event_type event; frame expected = 0; while~(true) { wait_for_event(&event); /* : frame_arrival. cksum_err */ if (event == frame_arrival) { /* */ /* */ from_physical_layer(&r); if (r.seq = frame_expected) { /* */ /* */ to_network_layer(&r.info); /* i nc(frame_expected); */ /* , } s.ack = 1 - frame_expected; /* */ */ to_physical_layer(&s); } , , . next_frame_to_send, frame_expected. . , . , . , , . , , , . , -, , , . , . - . : , , . . , . , , . , . , , . .

/* 3 (PAR) . */ fdefine MAX_SEQ I /* 3 1 */ typedef enum {frame_arrival, cksum_err, timeout} event_type; #iinclude "protocol .h" void sender3(void) seq_nr next_frame_to_send: / */ frame s; packet buffer; event_type event: /* /* */ /* */

next_frame_to_send = 0; /* */ from_network_layer(&buffer): /* */ while (true) { s.info = buffer; /* */ s.seq = next_frame_to_send: /* */ /* */ to_physical_layer(&s): /* */ start_timer(s.seq); wait_for_event(&event): /* frame_arrival, cksum_err timeout */ if (event == frame_arrival) { from_physical_layer(&s): /* */ if (s.ack = next_frame_to_send) { from_network_layer(&buffer); /* */ inc(next_frame_to_send); /* next_ frame_to_send */ }

void receiver3(void) { seqjir frame_expected:frame r. s:

252

3.

253

. . , . , . . , . . , 2 3 , , . . kind . , . , , , . . . piggybacking (, , ). . , . , , , , , , ( ). 1 . . . , ? , , , . , , . , , , (, ), .

, . (sliding window). , , . ( 0 ). , 2" 1. , 0 1, . , , , . , . , , . . , . , , , , . , . , , . , , . , . , . , . , , , . , , . , , . , . , , . , , , -

254

3.

255

. , . , , . , , , . . 3.9 1. , .

. , . ( ) , , , 3. , , . 3 . 5 . 1- /* 4 ( ) , 3. */ f d e f i n e MAX_SEQ I /* 4 1 */ typedef enum {frame_arrival. cksum_err, timeout} event_type; finclude "protocol.h"

void protocol4 (void) {

seq_nr next_frame_to_send: seq_nr frame_expected; frame r. s: packet buffer; event_type event:

/* /* /* /*

0 1 */ 0 1 */ */ */

. 3.9. 1 3- : (); (); (); ()

next_frame_to_send = 0: frame_expected = 0; from_network_layer(&buffer); s.info = buffer: s.seq = next_frame_to_send; s.ack = 1 - frame_expected: */ to_physical_layer(&s): start_timer(s.seq); while (true) {

/* /* /* /* /* /*

*/ */ */ */ */ ,

/* */ /* */

, , 1. , , , , , . 3.5. , . next_f rame_to_send , . frame_expected , . 0 1. . , to_physica1_layer start_timer . , -

wait_for_event(&event): /* : frame_arrival, cksum_ "err timeout */ if (event = frame_arrival) /* */ from_physical_layer(&r); /* */ if (r.seq == frame_expected) { /* */ to_network_layer(&r.info); /* */ inc(frame_expected); /* , */

if (r.ack == next_frame_to_send) { /* */ from_network_layer(&buffer): /* */ inc(next_frame_to_send): /* */

^j^.

256

3. s.info = buffer: s.seq = next_frame_to_send; s.ack = 1 - frame_expected; /* */ /* */ /* /* */ /* */

257

*/

to_physica1_layer(&s); startjtimer(s.seq):

. , , , , . . 4 , . , , 0 . , . , seq=0 ack=l. , , frame_expected 1. , 1, 0. , =1, 0, . , , , seq=O =. , , (0, 1, ) (0, 1, )* (0, 0, ) (, , )* (1, , 1) (1, 1, 1)* (0, 1, 2) (, , 2)* (1,0, A3) (0, 1, ) \/ (0, 1, ) /** (0, 1, )* / . (0, 0, ) * / (0, 1, )* / (0, 0, ) -vC^w / * (0, 0, ) (1, , 1) (0, 0, ) (1, 0, 1) - -__sw ^ " " ^ (1, 0, 1 )* (1, 1, 1) (1, 0, 1)* (1, 1, 1) (1, 1,1) (0, 1, 2)

. , , . , , , . 3.10. . . , , , . . , 6. . , . , . , , .

, , , , , . . . 50 / , , 500 . 4 1000 . t = 0 . ~1= 20 . = 270 . 520 . , , . , 500/520, 96 % . , 4 % . , , . , , . , . , , , -

(1, 0, 1)* 8 (1, 1, 1) ( 0 , 1 , 2)* (0, , 2) (1, 0, A3)* (1,1, )

. 3 . 1 0 . 4: (); (). : (seq, ack, ). ,

258

3.

259

. w , . w , , 26. , , 0. , 26 ( t = 520 ), 0. 20 . , . 25 26 , , 26. . /, / , 1/ . R . R/2 R/2 . R . 1/ R , //(/ + ). / < bR 50 %. , . , . . -, , ? , , . , , , , ? , , . . 3.11 , . . . , . . 1. , - , , . , , . , , , , . .

. 3.11, . 0 1 , . 2 . , 2. , 2 ( 2, 3, 4 . .)

, >

!

2-8

. 3 . 1 1 . : 1 (); > 1 ()

, , , , . . , - ( ), , , . 3.11, . , , .

260

3.

261

(NAK Negative Acknowledgement) , , . NAK , . , . . 3.11, 0 1 , 2 . 3 , . 2 NAK, 3 . 4 5, . NAK 2 , 2. , 2, 3, 4 5, . , , . NAK , 2 2 ( !), , NAK. , NAK . 1. , , . . 3.6. I* 5 () . MAX_SEQ , . , , , . network_ layer_ready */ #define MAX_SEQ 7 /* 2An-l */ typedef enum {frame_arrival. cksum_err, timeout, network_layer_ready} event_type: linclude "protocol,h" static boolean between(seqjir a, seq_nr b, seqjir c) a) && (a 8 : CF - DF 9 : EG - > DG 10: CG - > DF 1 1 : EF - > DG

. 3.15.

: 0 D: : 1 1

, . , . . , . , , . , . 3.15, (, : , , , , . .). , . . 3.16 , , 3.4. , . , . 1 2 ( -) 0. 3 4 , 1. 5, 6 7 0, 1. 8 9 . 10 11 . , , . , - 10 11 , , . . , . . . . 3.16 , 11 . , . , . 3.16, :

1

1

1

0

7

. 3.16. 3

, 11 , . , , . , , , () . () , . 3.16, ACG, , , 10

276

3. _

277

(CG > DF) , 3 {AD - BE) , D .

Control ( ) , , . 8 01111110 8 8 i 0 16 8 0 1111110

. , - HDLC, . , , , .

. 3.17. -

HDLC , , . , IBM , SDLC (Synchronous Data Link Control ). SDLC IBM ANSI ISO . ANSI ADCCP (Advanced Data Communication Control Procedure ), a ISO HDLC (High-level Data Link Control ). CCITT, HDLC LAP (Link Access Procedure ), .25, LAPB, HDLC. , , . , . . -, , . , , , . - . . - , . 3.17. Address () , . , .

Data () . , - . Checksum ( ) , . (01111110). , , . , 32 , . : , . Control . 3.18. 3- . . Seq . 3.18, . Next . , Next ( ). , , , . , . 1 0 3 Seq 1 P/F 3 Next

1

0

P/F

Next

1

1

P/F

Modifier

. 3.18. : (); (); ()

278

3.

279

P/F Poll/Final (/). , ( ) . . , , , P/F . F. P/F, , . . . = 0, , . R E C E I V E R E A D Y ( ). . = 1 , R E J E C T (). . Next ( , ). , Next. 5, 6. - 2 R E C E I V EN O TR E A D Y ( ). , R E C E I V ER E A D Y , Next-i, , . , - , . , , . = 3 S E L E C T I V ER E J E C T ( ). . 6, 5, , . , , S E L E C T I V E REJECT. HDLC ADCCP , SDLC LAPB , , 3 . . , , , . , - , . 5 , , 32 .

DISC (DISConnect ), , (, ). , , (on-line), . S N R M (Set Normal Response Mode ). , , . ( ) , (master), (slave). SNRM , , , , . , HDLC LAPB SABM (Set Asynchronous Balanced Mode ), . , SABME SNRME, SABM SNRM , 7- 3-. , , F R M R (FRaMe Reject ), , , . , 3 LAPB, 32 , , . . , , . , , . , UA (Unnumbered Acknowledgement ). , , . , . , , UI (Unnumbered Information). , . , HDLC . , , . (Fiorini ., 1994).

( ) . , -

280

3.

281

, . 4, , . . -, , ( , , . .) ( ). . , . , . , , , . , , , -. , , , . , , . 3.19. , . I , TCP/IP!

, , . .

, , . (Point-to-Point Protocol ), RFC 1661 RFC (, RFC 1662 1663). , , IP- , , . : 1. , . . 2. , , , , . LCP (Link Control Protocol). , - . 3. , . (NCP, Network Control Protocol). , , , , . . , , , LCP-na -. . , NCP . TCP/IP, IP-. IP- , , . IP-, , . IP- NCP IP. IP- , .

-, SLIP

. 3.19. ,

, , , , . -

282

3.

Z83

, NCP , IP-. LCP . , , . , , HDLC. - HDLC, -. , , . , 30,25 , HDLC. , SONET - HDLC- (, , ). . 3.20. Flag 01111110 Address 11111111 Control 00000011 1 2 2 4 Protocol Payload

-

Checksum

-

Flag 01111110

. 3.20.

Payload ( , ) , . LCP, 1500 . . Payload Checksum ( ), 2 , 4. , , , , HDLC, SONET . , , , , , HDLC. . . 3.21 , , . , .

- HDLC (01111110). , . Address (), 11111111, , . . Control, 00000011. . , . , , . RFC 1663, . Address Control , LCP 0 , , 2 . Protocol (). , (Payload). LCP, NCP, IP, IPX, AppleTalk . , , IP, IPX, OSI CLNP, XNS, 0. 1 , . LCP, NCP . Protocol 2 , LCP 1 .

NCP

. 3 . 2 1 .

: (DEAD), , . , ESTABLISH (). LCP.

284

3.

285

AUTHENTICATE (). , . NETWORK () NCP . , OPEN (), . , TERMINATE (), DEAD (), . LCP (ESTABLISH). , . . , , , . , LCP , . RFC 1661 LCP-. . 3.1. , Configure- (), (I) , (R) . , . LCP-. , Terminate (), , . Code-reject ( ) Protocol-reject ( ) , - . , LCP. , Echo (), . , Discard-request . , , , . 3 . 1 . LCP-

Echo-request Echo-reply Discard-request

( )

, , , , . NCP . , . , IP IP-.

, , , . , , . , . . . . . 1 , , , , , . . 1 , , , . 2 , , . 3 . 4 . 5 . , 6 (NAK).

Configure-request Configure-ack Configure-nak Configure-reject Terminate-request Terminate-ack Code-reject Protocol-reject

L

286

3.

287

, ( ). . - SDLC, HDLC, ADCCP LAPB. , , , . . .

8. , , , , . ? 9. 16- . , ? : 1101001100110101? , . 10. , 10101111. ? 11. 12- , 0xE4F. ( ) ? , 1 . 12. k . ? ? ? 13. k . , 4 ? 14. 1 + X" + 1 X" + 1 ? 15. 10011101 (CRC), . 3'+ 1. ? , . , . 16. CRC , . ? 17. 4 /, 20 . 50 %? 18. 1 3000 64- 5. 6 /, ? 19. 3 , ? , ? , ?

1. 10 , 80 %. , ? 2. : : 01000111; : 11100011; FLAG: 01111110; ESC: 11100000, , , , ESC, FLAG, : ; ; . 3. , , : ESC ESC FLAG FLAG D. ? 4. , , , , . . ? 5. : 0111101111101111110? 6. , ? , ? , ? ? 7. (, ) , ?

288

3.

289

20. , , . ? 21. , between 5 < < < b < . ? . 22. , 6 , nojiak true. N A K . . , else. ? 23. , 6 while. ? . 24. , case, , switch 6. ? 25. 6 , frame_ arrival, , (NAK). , N A K , . , . 26. , , , . HDLC 3- 7 . , . 1 , , ? , ? 27. 6 1 /. 1000 . . - 10 . , -. ? 28. 6 MAX_SEQ=2" - 1. , , , . , , MAX_SEQ=4?

29. 1000 1 /. . . 3- . : 1) ; 2) 5; 3) 6. 30. 6 50 /. 40- 3960 . 270 . . N A K 40 . 1 %, N A K . 8 . 31. , 64 / 512- , . , 1, 7, 15 127? 270 . 32. 100 1. 2/3 . ? 33. 4 . ? ? ( )? . 34. , . 3.16, (000), (01), (01-), (010), (01) . 3.14. , . 35. : -+, -, CD-^E E-+CD. , ACD. ? 36. HDLC . , HDLC . , . 37. IP- ? , IP.

290

3.

38. (CRC), . : (generator) (verifier). - - , ASCII-. ^- ( ASCII). + k , , . , . - , , . , (alter), , (, , , 1). . generator N. ( N 0) , , G&N. , , G> N. , 5 G, , S = GPQ, , . , , . 4.2. ? t , . - t0 t0 +1, . , , , ALOHA , , . , t0 +1 tu + 2t, .

, . , .

298

4.

299

I

ALOHA: S = Ge~G

I00

0,5

1,0

1,5

2,0

3,0

to+2t.

( + 3 f

G ( ) . 4.3. ALOHA

. 4 . 2 .

, k , : [*] = (4.2)

, ~. , , 2G. , , = e~2G. , 5 = GP0, :S=Ge-2C.

, ALOHA, ALOHA , Enter. . , ALOHA . , , , ~. : S=Ge~c. (4.3) . 4.3, ALOHA G = 1. S = 1/, 0,368, , ALOHA. ALOHA 37 % , 37 % 26 % . G , . , , . , , ~. , , . , 1 - e~G. k ( k - 1 , ), p

. 4.3. 5= 1/2, 0,184 G = 0,5. , , , 18 %. , , , , .

ALOHA 1972 . (Roberts) , ALOHA (Roberts, 1972). , . . , .

k = ke'

'=

3 0 0 4. G, . ALOHA , . 1970- , , . , . ALOHA. He , (, - , ), , . , , , , . , .

3 0 1

ALOHA , , 1/. , , , , . . , . , 1/. , . , , . . (Kleinrock) (Tobagi) 1975 . .

CSMA , , 1- CSMA (Carrier Sense Multiple Access ). , , , . , - , , . , . -

, , , , . CSMA 1, 1, , . . , , . , , , , . , . . , - , , , , . , . ALOHA, , . , ALOHA. CSMA. , . , . , . , , , , . , . , , CSMA 1. , , , CSMA . . , . , . q-\-p . , - . , . , . , , . . 4.4 , ALOHA.

302

4.

303

CSMA 0,01 CSMA CSMA 0,1

, ( ).

CSMA 0,5

1

t*1

.

, IIIIIIII

II

3

4

5

6

7

8

9

. 4 . 5 . CSMA/CD : ,

G ( ) . 4.4.

CSMA CSMA, , ALOHA, , , , . , , . , , , , , . , , . . , CSMA/CD (Carrier-Sense Multiple Access with Collision Detection ), MAC. , Ethernet, CSMA/CD. CSMA/CD, , , . 4.5. t0 . , , . , . . , , , , . , CSMA/CD -

. , t0. , , ? , , . . , , , , , , . , , , . . . , , . t0 . - , , , . , , , , 2 - . , , , , 2 . ALOHA 2. 1 * 5 . , 2 1 . , , 1 2 . , . . , , , , , , .

304

4,

305

(, ). . , , . CSMA/CD . , . , MAC . (, - ).

. , , .8 8 0 12 3 4 5 6 7 0 12 1 3 4 5 6 7

0 12 3 4 6 6 / 1 1 1

1

3

7

1

1

1

5

1

2

. 4.6.

CSMA/CD , , . , ( ) . CSMA/CD . , , . N , 0 N- 1. , , . , . : ? - , . 4.5, .

, , , N . 0 , 0- . . 1 1 , , 1 0. N , . (. 4.6). , , . , , , N . ( ) , , ,

. , d . - , . , , 0 1. , , - -. N/2 N () , , , . . (N/2 ). . 1,5JV , ^ N/2 , N . . JV , d d/(N + d). , - , N N . , d/(d +1). N(d + l)/2 , .

- 1 . , . , , , . , . ( ). -

L

306

4.

307

. Datakit (Fraser, 1987). , , . : 0 , 0 , . , 0010, 0100, 1001 1010 , 0, 0, 1 1 . 1. , 0010 0100 , 1001 1010 . 0 , . 1, 1001 . 1010, . , , . . 4.7. , . , .

(7 6), 1 (, 4, 5). , : , , A, G, , , F, D. D , . , , . , - .

, : , CSMA, . : . ( ALOHA) , . , , . . , , , , . , , . . , . , . , , . , . , k . . , - , kp(l -'1 , , . , 1/k. 1/k, : [ ] = . (4-4)

0 12 3 0 0 10 1 0 0 1| 10 10

0 10 0 10 1010 10

| 0 1 0 01 0

\ 0010 1001 0100 . 4 . 7 . .

d/(d + g^ , , logjiV 100 %. () (Ward) 1979 , , . . , , 0, , . , , , D, A, G, , , F 7, 6, 5, 4, 3, 2, 1 0 , D , 0.

3 0 8 4,

309

. 4.8. , , , 1/.1,0 0,8 0,6 0,4 0,2 0,0 5 10 15 20 25

, (Dorfman, 1943). N. . . , . , . , . (Capetanakis, 1979) , . 4.9. . - , 4 . , , , 2 . , ( 3 ). , , 4.

. 4.8.

, - , . . ( ). 0 0. - , . , 1 1, . . , (. ). , . , . . , . (, ). , . , , 2, . , -, , . , ( ALOHA). ( , ), .

CD E F G . 4.9.

, 0, . . , . , , , . 1, , , . 2 3. ? , ,

310

4.

311

. , q ( ), . . 4.9 - 1 0, 2 3 1 . . , i 2"' . q , i 2-'q. , , 1, , 2-'q - 1. i = \og2q. , (Bertsekas) (Gallager) 1992 . , , G . 1 , 2. . 3 , . ( , 1 2 , 2 , 3.) 3 6. 6 , 7 G.

, ( , ). , 0 , . .

i IX i 11

+ 1

, . , ( ). (Humblet ., 1992). (. . 2.8). , . , . , , . . ( ), . 2.27. WDMA (Wavelength Division Multiple Access ) . , . , . 4.10. , + 1, -

. 4.10.

: 1) , , ; 2) , , ; 3) , , , UDP-. , , C O N N E C T I O NR E Q U E S T ( ) . , . . 1. . 2. . 3. . 4. . , ,

312

4.

313

. , , . , 2 , , . . , , . , . 4.10 , 0, 4 5. ( ). , , 4, ( C O N N E C T I O N REQUEST). , , 4 . . , , . , , . , 4 . . , . . , . , : , 3. . , , . , , . , 3. , . . , : 3? ( 3 ), . , . () . C O N N E C T I O NR E Q U E S T

(4), D A T AF O RY O U IN S L O T 3 ( 3). 3, . . . . , , . ; , . , . , + 1 . , , , . WDMA-, . , . , . , . , . DWDM (Dense Wavelength Division Multiplexing ). . (Bogineni ., 1993; Chen, 1994; Goralski, 2001; Levine and Akyildiz, 1995).

. . , . (on-line), . , , . , ( ). , . , , , : 802.11. , (MAC). . (Geier, 2002; ' and Petrick, 1999).

314

4.

315

( ). . , 3-4 , , , , 2. , , , . 1 2 /. , . , , CDMA. , , . , . CSMA (Carrier-Sense Multiple Access ) , . , , , . , . 4.11, . , , . , , , D, .

, , , .

: , . 4.11, 5. , D, , . . , , , - . CSMA , . , . , , , , . -. , . , , . , , , , . , , - , - . , , .

MACAW , , (Multiple Access with Collision Avoidance ) (, 1990). , , , , , . . 4.12. , . , RTS (Request To Send - ), . 4.12, . (30 ) , . CTS (Clear To Send ), . 4.12, . CTS ( RTS). CTS, . , , . , RTS, , CTS . , CTS, , -

hk . 4 . 1 1 . : (); ()

, , , . 4.11, . , , , , . , , . ,

316

4.

Ethernet

317

, , , CTS.

. , CSMA RTS, - . ( ) , , - . . , . , , .

Ethernet . 4.12. : RTS (); S CTS ()

. 4.12 , . RTS, , CTS,