Table of Contents

preface xi
acknowledgments xiii

Part I     Business drivers and basic client/server concepts 1

1      Client/server: The business imperatives driving
the search for new solutions 2
          1.1     Overview 3
Scope of text 4
1.2An introduction and frame of reference 6
Frame of reference 6, Computing evolution 7, Definitions 8, Related computing initiatives 9, Enabling technologies 10
1.3Market motivations and trends 17
Motivations 18, Market trends 20, Obstacles and challenges 21
1.4Financials impact 22
Financial realities 22, Life-cycle costs 24, Savings opportunities 24
1.5Communications architectures 25
Infrastructure 25, Network operating systems 27, Network management 27, Systems management 27, Impact of application networks on design 29
1.6Technical foundation 30
Observations on sample tool providers 31, Product overviews 31, Foundation 33, Front-ends 33, Middleware 33, Back-ends 36, Object-oriented technology 36, Distributed databases 37, Application partitioning 38
1.7Implementation strategies 39
Getting started 39, Strategies 40, Mainframe legacy 42, Business process selection 43, Needs assessment 43, Component evaluation and selection 44, Vertical applications 44, Integration 45, Outsourcing 45
1.8Information Technology department role 46
Loss of control 50, Resistance to change 50
1.9Business department role 51
"Do your own thing" implications 52, Juggling control 52
1.10Impact on organization structure 52
Organization restructuring motivations and definitions 53, Organization structure suggestions 54
1.11A virtual future 54
1.12Conclusion 55
1.13References 55
 
2Present mode of operation: Computing client/server
environments now in place 56
2.1Background 58
2.2Client/server systems: Practical definition 59
Key client/server concepts 59, Motivations 62, Why client/server applications are being deployed 70, Transitioning to client/server computing 73, Using SQL 75
2.3Distributed computing environment 76
2.4Communication systems in place 77
Local connectivity 78, Wide area connectivity 88
2.5References 95
 
3Multidistributed databases: Client/server
systems and more 97
3.1Introduction and background 98
3.2Evolution of the database 99
What is a database? 99, Architectures 100, Practical applications for databases 102
3.3Client/server: A distributed computing environment 104
Understanding traditional computing 104, The appearance of client/server 106, The three components 107, Plethora of architectures 110
3.4Mainframes' role 113
3.5Middleware 114
3.6Distributed databases 117
Data replication/partitioning 119, Distributed database planning 123, Optimizing performance of distributed databases 124
3.7Client/server in the Internet and in intranets 125
3.8Object-oriented programming 127
The need for a new software development technique 127, Evolution of object-oriented programming 129, Applicability of object-oriented programming to client/server 129, Technical principles 131, Standards 137, Performance issues 138, Problems and limitations 138
3.9References 139

Part II     ATM basics 143

4An ATM primer 144
4.1Background 145
4.2The emergence of ATM 146
ATM's evolution 148, Packet transmission aspects 152
4.3The standardization of ATM 155
The ATM standard 155, Background research 156
4.4ATM as an enabling technology 158
4.5Challenges facing ATM 159
4.6Overview of key ATM features 161
The ATM cell 163, Addressing 164, The physical and ATM layers 165, Class of service: The Adaptation Layer 167
4.7LAN Emulation 172
Overview 172, Components of LAN Emulation 173, LAN Emulation operation 174
4.8Narrowband ATM access 177
4.9ATM switches 179
4.10Tasks receiving continuing attention 180
4.11Carrier-provided ATM services 183
4.12Relation to SONET rings and other transport technologies 184
4.13Commonly asked ATM service questions 185
4.14References 189

Part III     ATM-based approach to client/server 191

5LAN Emulation and Classical IP over ATM 192
5.1LAN Emulation motivation 193
LAN Emulation problem space 194, Issues with LAN Emulation 196
5.2Address resolution basics 199
5.3LAN Emulation components 201
LAN Emulation configuration server 201, LAN Emulation Server 203, LAN Emulation Broadcast and Unknown Server 203, LAN Emulation Clients 204
5.4LAN Emulation User Network Interface operation 204
LAN Emulation procedures 204, Address resolution 206, Multicast and unicast address forwarding 206
5.5Scalability and reliability 207
5.6Classical IP over ATM 208
Overview 208, Operation 210
5.7Migrating towards ATM LANs 211
5.8References 212
 
6Virtual LANs and Multiprotocol Over ATM 214
6.1Virtual LANs 215
Virtual LANs with ATM 216, Virtual LAN with Multiprotocol Over ATM 218
6.2Comparing Multiprotocol Over ATM with LAN Emulation 219
6.3Introduction to Multiprotocol Over ATM 220
Cut-through routing 221
6.4Multiprotocol Over ATM requirements 224
6.5Multiprotocol Over ATM overview 225
6.6Components and architecture 226
Multiprotocol Over ATM functional groups 227, Multiprotocol Over ATM information flows 229
6.7Multiprotocol Over ATM operation 229
Startup and configuration 230, Registration, discovery, and routing 230, Data exchange 231, Multicast support 232
6.8Summary 233
6.9References 234
 
7Client/server technology over ATM, the
Internet models 235
7.1The client/server model 236
7.2Real time communication: Standards and applications 237
Browser applications 238, Browser protocols 238, Audio/video applications 244, Audio/video standards 244, Application issues related to QoS 247
7.3Integration of IP, ATM, and Quality of Service 247
The integrated IP/ATM model 248, Adaptive protocols, working with today's networks 258
7.4The future of client/server technology 259
7.5Summary 260
7.6References 261
 
8Traffic management and performance of client/server
over ATM 262
8.1Traffic management introduction 263
8.2ATM services classes 265
Constant Bit Rate 266, Variable Bit Rate 266, Available Bit Rate 268, Unspecified Bit Rate 268
8.3Quality of Service parameters 269
Cell Loss Ratio 269, Cell Transfer Delay 270, Cell Delay Variation 270
8.4End-to-end traffic management 272
Traffic parameters 273, Source traffic descriptor 273
8.5Call admission control 274
8.6Conformance monitoring and enforcement 274
Leaky bucket algorithms 275, Traffic shaping 277
8.7Queuing strategies 277
Input buffering 278, Centralized buffering 279, Output buffering 279, Queue size 280
8.8Coping with congestion 280
ABR requirements 281, ABR implementation 281, Issues with ABR 283, Alternatives to ABR, Early Packet Discard 284
8.9Summary 287
8.10References 287
 
index 289