图书介绍
TCP/IP网络互连技术 卷Ⅲ 客户/服务器编程和应用 Windows套接字版 英文版2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

- (美)(D.E.科默)Douglas E.Comer,(美)(D.L.史蒂文斯)David L.Stevens著 著
- 出版社: 北京:清华大学出版社
- ISBN:7302030944
- 出版时间:1998
- 标注页数:513页
- 文件大小:14MB
- 文件页数:535页
- 主题词:
PDF下载
下载说明
TCP/IP网络互连技术 卷Ⅲ 客户/服务器编程和应用 Windows套接字版 英文版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
Chapter 1 Introduction And Overview1
1.1 Use Of TCP/IP1
1.2 Designing Applications For A Distributed Environment2
1.3 Standard And Nonstandard Application Protocols2
1.4 An Example Of Standard Application Protocol Use2
1.5 An Example Connection3
1.6 Using TELNET To Access An Alternative Service4
1.7 Application Protocols And Software Flexibility5
1.8 Viewing Services From The Provider s Perspective6
1.9 The Remainder Of The Text7
1.10 Summary7
Chapter 2 The Client Server Model And Software Design9
2.1 Introduction9
2.2 Motivation10
2.3 Terminology And Concepts10
2.3.1 Clients And Servers10
2.3.3 Standard Vs.Nonstandard Client Software11
2.3.2 Privilege And Complexity11
2.3.4 Parameterization Of Clients12
2.3.5 Connectionless Vs.Connection-Oriented Servers13
2.3.6 Stateless Vs.Stateful Servers14
2.3.7 A Stateful File Server Example14
2.3.8 Statelessness Is A Protocol Issue16
2.3.9 Servers As Clients17
2.4 Summary18
Chapter 3 Concurrent Processing In Client-Server Software21
3.1 Introduction21
3.2 Concurrency In Networks22
3.3 Concurrency In Servers23
3.4 Terminology And Concepts24
3.4.1 The Process Concept25
3.4.2 Threads25
3.4.4 Procedure Calls26
3.4.3 Programs vs.Threads26
3.5.1 A Sequential C Example27
3.5 An Example Of Concurrent Thread Creation27
3.5.2A Concurrent Version28
3.5.3 Timeslicing30
3.6 Diverging Threads31
3.7 Context Switching And Protocol Software Design32
3.8 Concurrency And Asynchronous I/O32
3.9 Concurrency Under UNIX33
3.10 Executing A Separately Compiled Program34
3.11 Summary35
Chapter 4 Program Interface To Protocols37
4.1 Introduction37
4.2 Loosely Specified Protocol Software Interface37
4.2.1 Advantages And Disadvantages38
4.3 Interface Functionality38
4.5 Implementation Of An API39
4.4 Conceptual Interface Specification39
4.6 Two Basic Approaches To Network Communication41
4.7 The Basic I/O Functions Available In ANSI C42
4.8 History Of The UNIX Socket API43
4.9 Summary44
Chapter 5 The Socket API47
5.1 Introduction47
5.2 The History Of Sockets47
5.3 Specifying A Protocol Interface48
5.4 The Socket Abstraction49
5.4.1 Socket Descriptors49
5.4.2 System Data Structures For Sockets50
5.4.3 Using Sockets51
5.5 Specifying An Endpoint Address51
5.6 A Generic Address Structure52
5.7.1 The WSAStartup Function53
5.7 Functions In The Socket API53
5.7.2 The WSACleanup Function54
5.7.3 The Socket Function54
5.7.4 The Connect Function54
5.7.5 The Send Function54
5.7.6 The Recv Function55
5.7.7The Closesocket Function55
5.7.8 The Bind Function55
5.7.9The Listen Function55
5.7.10 The Accept Function56
5.7.11 Summary Of Socket Calls Used With TCP56
5.8 Utility Routines For Integer Conversion56
5.9 Using Socket Calls In A Program58
5.10 Symbolic Constants For Socket Call Parameters59
5.11 Summary59
6.2 Learning Algorithms Instead Of Details61
6.1 Introduction61
Chapter 6 Algorithms And Issues In Client Software Design61
6.3 Client Architecture62
6.4 Identifying The Location Of A Server62
6.5 Parsing An Address Argument64
6.6 Looking Up A Domain Name65
6.7Looking Up A Well-Known Port By Name66
6.8 Port Numbers And Network Byte Order66
6.9 Looking Up A Protocol By Name67
6.10 The TCP Client Algorithm67
6.11 Allocating A Socket68
6.12 Choosing A Local Protocol Port Number69
6.13 A Fundamental Problem In Choosing A Local IP Address69
6.14 Connecting A TCP Socket To A Server70
6.15 Communicating With The Server Using TCP70
6.16 Reading A Response From A TCP Cnnection71
6.17.2 A Partial Close Operation72
6.17.1 The Need For Partial Close72
6.17 Closing A TCP Connection72
6.18 Programming A UDP Client73
6.19 Connected And Unconnected UDP Sockets73
6.20 Using Connect With UDP74
6.21 Communicating With A Server Using UDP74
6.22 Closing A Socket That Uses UDP74
6.23 Partial Close For UDP75
6.24 A Warning About UDP Unreliability75
6.25 Summary75
Chapter 7 Example Client Software79
7.1 Introduction79
7.2 The Importance Of Small Examples79
7.3 Hiding Details80
7.4 An Example Procedure Library For Client Programs80
7.5 Implementation Of ConTCP81
7.7A Procedure That Forms Connections82
7.6 Implementation Of ConUDP82
7.8 Using The Example Library85
7.9 The DAYTIME Service85
7.10 Implementation Of A TCP Client For DAYTIME86
7.11 Reading From A TCP Connection87
7.12 The TIME Service88
7.13 Accessing The TIME Service88
7.14 Accurate Times And Network Delays89
7.15 A UDP Client For The TIME Service89
7.16The ECHO Service91
7.17 A TCP Client For The ECHO Service92
7.18 A UDP Client For The ECHO Service94
7.19 Summary96
Chapter 8 Aigorithms And Issues In Server Software Design99
8.1 Introduction99
8.2 The Conceptual Server Algorithm99
8.4 Connection-Oriented Vs.Connectionless Access100
8.3 Concurrent Vs.Iterative Servers100
8.5 Connection-Oriented Servers101
8.6 Connectionless Servers101
8.7 Failure , Reliability , And Statelessness102
8.8 Optimizing Stateless Servers103
8.9 Four Basic Types Of Servers105
8.10 Request Processing Time106
8.11 Iterative Server Algorithms106
8.12 An Iterative, Connection-Oriented Server Algorithm107
8.13 Binding To A Well-Known Address Using INADDR_ANY107
8.14 Placing The Socket In Passive Mode108
8.15 Accepting Connections And Using Them108
8.16 An Iterative , Connectionless Server Algorithm108
8.17 Forming A Reply Address In A Connectionless Server109
8.19 Master And Slave Threads110
8.18 Concurrent Server Algorithms110
8.20 A Concurrent, Connectionless Server Algorithm111
8.21 A Concurrent , Connection-Oriented Server Algorithm111
8.22 Using Separate Programs As Slaves112
8.23 Apparent Concurrency Using A Single Thread113
8.24 When To Use Each Server Type114
8.25 A Summary of Server Types115
8.27 Alternative Implementations116
8.26 The Important Problem Of Server Deadlock116
8.28 Summary117
Chapter 9 Iterative , Connectioniess Servers(UDP)119
9.1 Introduction119
9.2 Creating A Passive Socket119
9.3 Thread Structure122
9.4 An Example TIME Server123
9.5 Summary125
10.2 Allocating A Passive TCP Socket127
10.1 Introduction127
Chapter 10 Iterative , Connection-Oriented Servers(TCP)127
10.3 A Server For The DAYTIME Service128
10.4 Thread Structure128
10.5 An Example DAYTIME Server129
10.6 Closing Connections132
10.7 Connection Termination And Server Vulnerability132
10.8 Summary133
Chapter 11 Concurrent, Connection-Oriented Servers(TCP)135
11.1 Introduction135
11.2 Concurrent ECHO135
11.3 Iterative Vs.Concurrent Implementations136
11.4 Thread Structure136
11.5 An Example Concurrent ECHO Server137
11.6 Summary140
12.1 Introduction143
12.2 Data-driven Processing In A Server143
Chapter 12 Singly-Threaded, Concurrent Servers(TCP)143
12.3 Data-Driven Processing With A Single Thread144
12.4 Thread Structure Of A Singly-Threaded Server145
12.5 An Example Singly-Threaded ECHO Server146
12.6 Summary148
Chapter 13 Multiprotocol Servers(TCP,UDP)151
13.1 Introduction151
13.2 The Motivation For Reducing The Number Of Servers151
13.4 Thread Structure152
13.3 Multiprotocol Server Design152
13.5 An Example Multiprotocol DAYTIME Server153
13.6The Concept Of Shared Code157
13.7 Concurrent Multiprotocol Servers157
13.8 Summary157
Chapter 14 Multiservice Servers(TCP, UDP)159
14.1 Introduction159
14.2 Consolidating Servers159
14.3 A Connectionless, Multiservice Server Design160
14.4 A Connection-Oriented, Multiservice Server Design161
14.5 A Concurrent, Connection-Oriented, Multiservice Server162
14.6 A Singly-Threaded,Multiservice Server Implementation162
14.7 Invoking Separate Programs From A Multiservice Server163
14.8 Multiservice , Multiprotocol Designs164
14.9 An Example Multiservice Server165
14.10 Static and Dynamic Server Configuration171
14.11 An Example Super Server,Inetd172
14.12 Summary174
Chapter 15 Uniform,Efficient Management Of Server Concurrency177
15.1 Introduction177
15.2 Choosing Between An Iterative And A Concurrent Design177
15.3 Level Of Concurrency178
15.4 Demand-Driven Concurrency179
15.5 The Cost Of Concurrency179
15.6 Overhead And Delay179
15.7 Small Delays Can Matter180
15.8 Thread Preallocation181
15.8.1 Preallocation Techniques182
15.8.2 Preallocation In A Connection-Oriented Server182
15.8.3 Preallocation In A Connectionless Server183
15.8.4 Preallocation, Bursty Traffic, And NFS184
15.8.5 Preallocation On A Multiprocessor185
15.9 Delayed Thread Allocation185
15.10 The Uniform Basis For Both Techniques186
15.11 Combining Techniques187
15.12 Summary187
Chapter 16 Concurrency In Clients189
16.1 Introduction189
16.2 The Advantages Of Concurrency189
16.3 The Motivation For Exercising Control190
16.4 Concurrent Contact With Multiple Servers191
16.5 Implementing Concurrent Clients191
16.6 Singly-Threaded Implementations193
16.7 An Example Concurrent Client That Uses ECHO194
16.8 Execution Of The Concurrent Client198
16.9 Managing A Timer199
16.10 Example Output200
16.11 Concurrency In The Example Code200
16.12 Summary201
17.1 Introduction203
17.2 Multiprotocol Environments203
Chapter 17 Tunneling At The Transport And Application Levels203
17.3 Mixing Network Technologies205
17.4 Dynamic Circuit Allocation206
17.5 Encapsulation And Tunneling207
17.6 Tunneling Through An IP Internet208
17.7 Application-Level Tunneling Between Clients And Servers208
17.8 Tunneling, Encapsulation, And Dialup Phone Lines209
17.9 Summary210
18.2.1 The Reality Of Multiple Technologies213
18.2Clients And Servers In Constrained Environments213
Chapter 18 Application Level Gateways213
18.1 Introduction213
18.2.2 Computers With Limited Functionality214
18.2.3 Connectivity Constraints That Arise From Security214
18.3 Using Application Gateways215
18.4 Interoperability Through A Mail Gateway216
18.5 Implementation Of A Mail Gateway217
18.6 A Comparison Of Application Gateways And Tunneling217
18.7 Application Gateways And Limited Functionality Systems219
18.8 Application Gateways Used For Security220
18.9 Application Gateways And The Extra Hop Problem221
18.10 An Example Application Gateway223
18.11 Details Of A Web-Based Application Gateway224
18.12 Invoking A CGI Program225
18.14 A General-Purpose Application Gateway226
18.13 URLs For The RFC Application Gateway226
18.15 Operation Of SLIRP227
18.16 How SLIRP Handles Connections227
18.17 IP Addressing And SLIRP228
18.18 Summary229
Chapter 19 External Data Representation(XDR)231
19.1 Introduction231
19.2 Representations For Data In Computers231
19.3 The N-Squared Conversion Problem232
19.4 Network Standard Byte Order233
19.5 A De Facto Standard External Data Representation234
19.6 XDP Data Types235
19.7 Implicit Types236
19.8 Software Support For Using XDR236
19.9 XDR Library Routines236
19.10 Building A Message One Piece At A Time236
19.11 Conversion Routines In The XDR Library238
19.12 XDR Streams,I/O, and TCP240
19.13 Records, Record Boundaries, And Datagram I/O241
19.14 Summary241
Chapter 20 Remote Procedure Call Concept(RPC)243
20.1 Introduction243
20.2 Remote Procedure Call Model243
20.3 Two Paradigms For Building Distributed Programs244
20.4 A Conceptual Model For Conventional Procedure Calls245
20.5 An Extension Of the Procedural Model245
20.6 Execution Of Conventional Procedure Call And Return246
20.7 The Procedural Model In Distributed Systems247
20.8 Analogy Between Client-Server And RPC248
20.9 Distributed Computation As A Program249
20.10 Sun Microsystem s Remote Procedure Call Definition250
20.11 Remote Programs And Procedures250
20.13 Identifying Remote Programs And Procedures251
20.12 Reducing The Number Of Arguments251
20.14 Accommodating Multiple Versions Of A Remote Program252
20.15 Mutual Exclusion For Procedures In A Remote Program253
20.16 Communication Semantics254
20.17 At Least Once Semantics254
20.18 RPC Retransmission255
20.19 Mapping A Remote Program To A Protocol Port255
20.20 Dynamic Port Mapping256
20.21 RPC Port Mapper Algorithm257
20.22 RPC Message Format259
20.23 Marshaling Arguments For A Remote Procedure260
20.24 Authentication260
20.25 An Example Of RPC Message Representation261
20.26 An Example Of An Authentication Field262
20.27 Summary263
21.1 Introduction267
Chapter 21 Distributed Program Generation(Rpcgen Concept)267
21.2 Using Remote Procedure Calls268
21.3 Programming Mechanisms To Support RPC269
21.4 Dividing A Program Into Local And Remote Procedures270
21.5 Adding Code For RPC271
21.6 Stub Procedures271
21.7 Multiple Remote Procedures And Dispatching272
21.8 Name Of The Client-Side Stub Procedure273
21.10 Rpcgen Output And Interface Procedures274
21.9 Using Rpcgen To Generate Distributed Programs274
21.11 Rpcgen Input And Output275
21.12 Using Rpcgen To Build A Client And Server276
21.13 Summary276
Chapter 22 Distributed Program Generation(Rpcgen Example)279
22.1 Introduction279
22.2 An Example To Illustrate Rpcgen280
22.3 Dictionary Look Up280
22.4 Eight Steps To A Distributed Application281
22.5 Step 1 : Build A Conventional Application Program282
22.6 Step 2 : Divide The Program Into Two Parts286
22.7 Step 3 : Create An Rpcgen Specification292
22.8 Step 4 : Run Rpcgen294
22.9 The.h File Produced By Rpcgen294
22.10 The XDR Conversion File Produced By Rpcgen296
22.11 The Client Code Produced By Rpcgen297
22.12 The Server Code Produced By Rpcgen298
22.13 Step 5 : Write Stub Interface Procedures301
22.13.1 Client-Side Interface Routines301
22.13.2 Server-Side Interface Routines304
22.14 Step 6 : Compile And Link The Client Program305
22.15 Step 7 : Compile And Link The Server Program309
22.16 Step 8 : Start The Server And Execute The Client311
22.17 Summary311
23.2 Remote File Access Vs.Transfer313
Chapter 23 Network File System Concepts(NFS)313
23.1 Introduction313
23.3 Operations On Remote Files314
23.4 File Access Among Heterogeneous Computers314
23.5 Stateless Servers315
23.6 NFS And UNIX File Semantics315
23.7 Review Of The UNIX File System315
23.7.1 Basic Definitions315
23.7.2 A Byte Sequence Without Record Boundaries316
23.7.3 A File s Owner And Group Identifiers316
23.7.4 Protection And Access316
23.7.5 The UNIX Open-Read-Write-Close Paradigm318
23.7.6 UNIX Data Transfer319
23.7.7 Permission To Search A Directory319
23.7.8 UNIX Random Access320
23.7.9 Seeking Beyond The End Of A UNIX File320
23.7.10 UNIX File Position And Concurrent Access321
23.7.11 Semantics Of Write During Concurrent Access322
23.7.12 UNIX File Names And Paths322
23.7.13 The UNIX Inode : Information Stored With A File323
23.7.14 The UNIX Stat Operation324
23.7.15 The UNIX File Naming Mechanism325
23.7.16 UNIX File System Mounts326
23.7.17 UNIX File Name Resolution328
23.8 Files Under NFS329
23.7.18 UNIX Symbolic Links329
23.9 NFS File Types330
23.10 NFS File Modes330
23.11 NFS File Attributes331
23.12 NFS Client And Server332
23.13 NFS Client Operation333
23.14 NFS Client And UNIX334
23.15 NFS Mounts335
23.17 NFS Handles Replace Path Names336
23.16 File Handle336
23.18 An NFS Client Under Windows338
23.19 File Positioning With A Stateless Server338
23.20 Operations On Directories339
23.21 Reading A Directory Statelessly339
23.22 Multiple Hierarchies In An NFS Server340
23.23 The Mount Protocol340
23.24 Summary341
Chapter 24 Network File System Protocol(NFS,Mount)343
24.1 Introduction343
24.2 Using RPC To Define A Protocol343
24.3 Defining A Protocol With Data Structures And Procedures344
24.4 NFS Constant,Type, And Data Declarations345
24.4.1 NFS Constants345
24.4.2 NFS Typedef Declarations346
24.4.3 NFS Data Structures346
24.5 NFS Procedures348
24.6 Semantics Of NFS Operations349
24.6.1 NFSPROC_NULL(Procedure 0)350
24.6.2 NFSPROC_GETATTR(Procedure1)350
24.6.3 NFSPROC_SETATTR(Procedure2)350
24.6.4 NFSPROC_ROOT(Procedure3)[Obsolete in NFS3]350
24.6.5 NFSPROC_LOOKUP(Procedure4)350
24.6.6 NFSPROC_READLINK(Procedure 5)350
24.6.7 NFSPROC_READ(Procedure 6)350
24.6.8NFSPROC_WRITECACHE(Procedure7)[Obsolete in NFS 3]350
24.6.9 NFSPROC_WRITE(Procedure 8)351
24.6.10 NFSPROC_CREATE(Procedure 9)351
24.6.11 NFSPROC_REMOVE(Procedure 10)351
24.6.12 NFSPROC_RENAME(Procedure 11)351
24.6.13 NFSPROC_LINK(Procedure 12)351
24.6.14 NFSPROC_SYMLINK(Procedure 13)351
24.6.18 NFSPROC_STATFS(Procedure 17)352
24.6.17 NFSPROC_READDIR(Procedure 16)352
24.6.15 NFSPROC_MKDIR(Procedure 14)352
24.6.16 NFSPROC_RMDIR(Procedure 15)352
24.7 The Mount Protocol353
24.7.1 Mount Constant Definitions353
24.7.2 Mount Type Definitions353
27.7.3 Mount Data Structures354
24.8 Procedures In The Mount Protocol355
24.9 Semantics of Mount Operations355
24.9.1 MNTPROC_NULL(Procedure 0)355
24.9.2 MNTPROC_MNT(Procedure 1)355
24.9.3 MNTPROC_DUMP(Procedure 2)356
24.9.4 MNTPROC_UMNT(Procedure 3)356
24.9.5 MNTPROC_UMNTALL(Procedure 4)356
24.9.6 MNTPROC_EXPORT(Procedure 5)356
24.10 NFS And Mount Authentication356
24.11 Changes In NFS Version 3358
24.12 Summary359
Chapter 25 A TELNET Client(Program Structure)361
25.1 Introduction361
25.2 Overview362
25.2.1 The User s Terminal362
25.2.2 Command And Control Information362
25.2.3 Terminals, Windows,and Files362
25.2.4 The Need For Concurrency363
25.3 A TELNET Client Algorithm364
25.2.5 A Thread Model For A TELNET Client364
25.4 keyboard I/O In Windows365
25.5 Global Variables Used For Keyboard Control366
25.6 Initializing The Keyboard Thread367
25.7 Finite State Machine Specification370
25.8 Embedding Commands In A TELNET Data Stream370
25.9 Option Negotiation371
25.11 TELNET Character Definitions372
25.10 Request/Offer Symmetry372
25.12 A Finite State Machine For Data From The Server373
25.13 Transitions Among States374
25.14 A Finite State Machine Implementation376
25.15 A Compact FSM Representation376
25.16 Keeping The Compact Representation At Rum-Time378
25.17 Implementation Of A Compact Representation378
25.18 Building An FSM Transition Matrix380
25.19 The Socket Output Finite State Machine382
25.20 Definitions For The Socket Output FSM384
25.21 The Option Subnegotiation Finite State Machine385
25.22 Definitions For The Option Subnegotiation FSM386
25.23 FSM Initialization387
25.24 Arguments For The TELNET Client387
25.25 The Heart Of The TELNET Client389
25.26 TELNET Synchronization391
25.27 Handling A Severe Error392
25.28 Implementation Of The Main FSM393
25.29 A Procedure For immediate Disconnection394
25.30 Abort Procedure395
25.31 Summary395
nt(Implementation Details)399
26.1 Introduction399
26.2 The FSM Action Procedures399
26.3 Recording The Type Of An Option Request400
26.4 Performing No Operation401
26.5 Responding To WILL/WONT For The Echo Option401
26.6 Sending A Response402
26.7 Responding To WILL/WONT For Unsupported Options403
26.8 Responding TO WILL/WONT For The No Go-Ahead Option404
26.9 Generating DO/DONT For Binary Transmission405
26.10 Responding To DO/DONT For Unsupported Options406
26.11 Responding To DO/DONT For Transmit Binary Option406
26.12 Responding TO DO/DONT For The Terminal Type Option408
26.13 Option Subnegotiation409
26.14 Sending Terminal Type Information410
26.15 Terminating Subnegotiation412
26.16 Sending A Character To The Server412
26.17 Displaying Incoming Data On The User s Terminal414
26.18 Writing A Block Of Data TO The Server417
26.19 Interacting With The Local Client418
26.20 Responding To Illegal Commands419
26.21 Scripting To A File419
26.22 Implementation Of Scripting420
26.23 Initialization Of Scripting420
26.24 Collecting Characters Of The Script File Name421
26.25 Opening A Script File422
26.27 Printing Status Information425
26.28 Summary426
27.2 Operating In Background429
Chapter 27 Porting Servers From UNIX To Windows429
27.1 Introduction429
27.3 Shared Descriptors And Inheritance431
27.4 The Controlling TTY431
27.5 Working Directories432
27.6 File Creation And Umask432
27.7 Process Groups433
27.8 Descriptors For Standard I/O433
27.9 Mutual Exclusion For A Server434
27.10 Recording A Process ID434
27.11 Waiting For A Child Process TO Exit435
27.12 Using A System Log Facility435
27.12.1 Generating Log Messages435
27.13 Miscellaneous incompatibilities437
27.14 Summary438
28.1 Introduction441
Chapter 28 Deadlock And Starvation In Client-Server Systems441
28.2 Definition Of Deadlock442
28.3 Difficulty Of Deadlock Detection442
28.4 Deadlock Avoidance443
28.5 Deadlock Between A Client And Server443
28.6 Avoiding Deadlock in A single interaction444
28.7 Starvation Among A Set Of Clients And A Server444
28.8 Busy Connections And Starvation445
28.10 Threads, Connections, And Other Limits446
28.9 Avoiding Blocking Operations446
28.11 Cycles Of Clients And Servers447
28.12 Documenting Dependencies447
28.13 Summary448
Appendix 1 Functions And Library Routines Used With Sockets451
Appendix 2 Manipulation Of Windows Socket Descriptors485
Bibliography489
Index499
热门推荐
- 3077489.html
- 2546708.html
- 1338631.html
- 3086774.html
- 2094883.html
- 1443041.html
- 524743.html
- 807085.html
- 3438318.html
- 1491751.html
- http://www.ickdjs.cc/book_817500.html
- http://www.ickdjs.cc/book_1226346.html
- http://www.ickdjs.cc/book_279647.html
- http://www.ickdjs.cc/book_409991.html
- http://www.ickdjs.cc/book_2878839.html
- http://www.ickdjs.cc/book_3515062.html
- http://www.ickdjs.cc/book_3125776.html
- http://www.ickdjs.cc/book_1381316.html
- http://www.ickdjs.cc/book_2209765.html
- http://www.ickdjs.cc/book_1041340.html