Friday, October 7, 2011

MPLS and VPN Architectures, Volume II







By Jim Guichard, Ivan Pepelnjak, Jeff Apcar

Publisher: Cisco Press
Pub Date: June 06, 2003
ISBN: 1-58705-112-5
Pages: 504

With MPLS and VPN Architectures, Volume II , you'll learn:
How to integrate various remote access technologies into the backbone providing VPN
service to many different types of customers The new PE-CE routing options as well as other advanced features, including per-VPN Network Address Translation (PE-NAT)
How VRFs can be extended into a customer site to provide separation inside the
customer network The latest MPLS VPN security features and designs aimed at protecting the MPLS VPN backbone

How to carry customer multicast traffic inside a VPN The latest inter-carrier enhancements to allow for easier and more scalable deployment of inter-carrier MPLS VPN services Advanced troubleshooting techniques including router outputs to ensure high availability MPLS and VPN Architectures, Volume II , builds on the best-selling MPLS and VPN Architectures, Volume I (1-58705-002-1), from Cisco Press. Extending into more advanced topics and deployment architectures, Volume II provides readers with the necessary tools they need to deploy and maintain a secure, highly available VPN.
MPLS and VPN Architectures, Volume II , begins with a brief refresher of the MPLS VPN
Architecture. Part II describes advanced MPLS VPN connectivity including the integration of service provider access technologies (dial, DSL, cable, Ethernet) and a variety of routing protocols (IS-IS, EIGRP, and OSPF), arming the reader with the knowledge of how to integrate these features into the VPN backbone. Part III details advanced deployment issues including security, outlining the necessary steps the service provider must take to protect the backbone and any attached VPN sites, and also detailing the latest security features to allow more advanced topologies and filtering. This part also covers multi-carrier MPLS VPN deployments. Finally, Part IV provides a methodology for advanced MPLS VPN troubleshooting.

MPLS and VPN Architectures, Volume II , also introduces the latest advances in customer
integration, security, and troubleshooting features essential to providing the advancedservices based on MPLS VPN technology in a secure and scalable way.
This book is part of the Networking Technology Series from Cisco Press, which offers
networking professionals valuable information for constructing efficient networks,
understanding new technologies, and building successful careers.


With MPLS and VPN Architectures, Volume II , you'll learn:
How to integrate various remote access technologies into the backbone providing VPN
service to many different types of customers
The new PE-CE routing options as well as other advanced features, including per-VPN
Network Address Translation (PE-NAT)
How VRFs can be extended into a customer site to provide separation inside the
customer network
The latest MPLS VPN security features and designs aimed at protecting the MPLS VPN
backbone
How to carry customer multicast traffic inside a VPN
The latest inter-carrier enhancements to allow for easier and more scalable deployment
of inter-carrier MPLS VPN services
Advanced troubleshooting techniques including router outputs to ensure high availability
MPLS and VPN Architectures, Volume II , builds on the best-selling MPLS and VPN
Architectures, Volume I (1-58705-002-1), from Cisco Press. Extending into more advanced
topics and deployment architectures, Volume II provides readers with the necessary tools
they need to deploy and maintain a secure, highly available VPN.
MPLS and VPN Architectures, Volume II , begins with a brief refresher of the MPLS VPN
Architecture. Part II describes advanced MPLS VPN connectivity including the integration of
service provider access technologies (dial, DSL, cable, Ethernet) and a variety of routing
protocols (IS-IS, EIGRP, and OSPF), arming the reader with the knowledge of how to
integrate these features into the VPN backbone. Part III details advanced deployment issues
including security, outlining the necessary steps the service provider must take to protect the
backbone and any attached VPN sites, and also detailing the latest security features to allow
more advanced topologies and filtering. This part also covers multi-carrier MPLS VPN
deployments. Finally, Part IV provides a methodology for advanced MPLS VPN
troubleshooting.
MPLS and VPN Architectures, Volume II , also introduces the latest advances in customer
integration, security, and troubleshooting features essential to providing the advanced

• Table of Contents
• Index
MPLS and VPN Architectures, Volume II
By Jim Guichard, Ivan Pepelnjak, Jeff Apcar

Publisher: Cisco Press
Pub Date: June 06, 2003
ISBN: 1-58705-112-5
Pages: 504

Copyright
About the Authors
About the Technical Reviewers
About the Content Reviewer
Acknowledgments
Introduction
Who Should Read This Book?
How This Book Is Organized
Icons Used in This Book
Command Syntax Conventions
Part I. Introduction
Chapter 1. MPLS VPN Architecture Overview
MPLS VPN Terminology
Connection-Oriented VPNs
Connectionless VPNs
MPLS-Based VPNs
New MPLS VPN Developments
Summary
Part II. Advanced PE-CE Connectivity
Chapter 2. Remote Access to an MPLS VPN
Feature Enhancements for MPLS VPN Remote Access
Overview of Access Protocols and Procedures
Providing Dial-In Access to an MPLS VPN
Providing Dial-Out Access via LSDO
Providing Dial-Out Access Without LSDO (Direct ISDN)
Providing Dial Backup for MPLS VPN Access
Providing DSL Access to an MPLS VPN
Providing Cable Access to an MPLS VPN
Advanced Features for MPLS VPN Remote Access
Summary
Chapter 3. PE-CE Routing Protocol Enhancements and Advanced Features
PE-CE Connectivity: OSPF
PE-CE Connectivity: Integrated IS-IS
PE-CE Connectivity: EIGRP
Summary

MPLS and VPN Architectures, Volume II
By Jim Guichard, Ivan Pepelnjak, Jeff Apcar

Publisher: Cisco Press
Pub Date: June 06, 2003
ISBN: 1-58705-112-5
Pages: 504

With MPLS and VPN Architectures, Volume II , you'll learn:
How to integrate various remote access technologies into the backbone providing VPN
service to many different types of customers
The new PE-CE routing options as well as other advanced features, including per-VPN
Network Address Translation (PE-NAT)
How VRFs can be extended into a customer site to provide separation inside the
customer network
The latest MPLS VPN security features and designs aimed at protecting the MPLS VPN
backbone
How to carry customer multicast traffic inside a VPN
The latest inter-carrier enhancements to allow for easier and more scalable deployment
of inter-carrier MPLS VPN services
Advanced troubleshooting techniques including router outputs to ensure high availability
MPLS and VPN Architectures, Volume II , builds on the best-selling MPLS and VPN
Architectures, Volume I (1-58705-002-1), from Cisco Press. Extending into more advanced
topics and deployment architectures, Volume II provides readers with the necessary tools
they need to deploy and maintain a secure, highly available VPN.
MPLS and VPN Architectures, Volume II , begins with a brief refresher of the MPLS VPN
Architecture. Part II describes advanced MPLS VPN connectivity including the integration of
service provider access technologies (dial, DSL, cable, Ethernet) and a variety of routing
protocols (IS-IS, EIGRP, and OSPF), arming the reader with the knowledge of how to
integrate these features into the VPN backbone. Part III details advanced deployment issues
including security, outlining the necessary steps the service provider must take to protect the
backbone and any attached VPN sites, and also detailing the latest security features to allow
more advanced topologies and filtering. This part also covers multi-carrier MPLS VPN
deployments. Finally, Part IV provides a methodology for advanced MPLS VPN
troubleshooting.
MPLS and VPN Architectures, Volume II , also introduces the latest advances in customer
integration, security, and troubleshooting features essential to providing the advanced
Chapter 4. Virtual Router Connectivity
Configuring Virtual Routers on CE Routers
Linking the Virtual Router with the MPLS VPN Backbone
VRF Selection Based on Source IP Address
Performing NAT in a Virtual Router Environment
Summary
Part III. Advanced Deployment Scenarios
Chapter 5. Protecting the MPLS-VPN Backbone
Inherent Security Capabilities
Neighbor Authentication
CE-to-CE Authentication
Control of Routes That Are Injected into a VRF
PE to CE Circuits
Extranet Access
Internet Access
IPSec over MPLS
Summary
Chapter 6. Large-Scale Routing and Multiple Service Provider Connectivity
Large Scale Routing: Carrier's Carrier Solution Overview
Carrier Backbone Connectivity
Label Distribution Protocols on PE-CE Links
BGP-4 Between PE/CE Routers
Hierarchical VPNs: Carrier's Carrier MPLS VPNs
VPN Connectivity Between Different Service Providers
Summary
Chapter 7. Multicast VPN
Introduction to IP Multicast
Enterprise Multicast in a Service Provider Environment
mVPN Architecture
MDTs
Case Study of mVPN Operation in SuperCom
Summary
Chapter 8. IP Version 6 Transport Across an MPLS Backbone
IPv6 Business Drivers
Deployment of IPv6 in Existing Networks
Quick Introduction to IPv6
In-Depth 6PE Operation and Configuration
Complex 6PE Deployment Scenarios
Summary
Part IV. Troubleshooting
Chapter 9. Troubleshooting of MPLS-Based Solutions
Introduction to Troubleshooting of MPLS-Based Solutions
Troubleshooting the MPLS Backbone
Other Quick Checks
MPLS Control Plane Troubleshooting
MPLS Data Plane Troubleshooting
MPLS VPN Troubleshooting
In-Depth MPLS VPN Troubleshooting
Summary
Index

Another Network Books
Another VPN Books
Download
Continue Reading ...

Thursday, October 6, 2011

GRAY HAT PYTHON Python Programming for Hackers and Reverse Engineers








C O N T E N T S I N D E T A I L
FOREWORD by Dave Aitel xiii
ACKNOWLEDGMENTS xvii
INTRODUCTION xix
1
SETTING UP YOUR DEVELOPMENT ENVIRONMENT 1
1.1 Operating System Requirements ......................................................................... 2
1.2 Obtaining and Installing Python 2.5 ................................................................... 2
1.2.1 Installing Python on Windows ............................................................ 2
1.2.2 Installing Python for Linux .................................................................. 3
1.3 Setting Up Eclipse and PyDev ............................................................................ 4
1.3.1 The Hacker’s Best Friend: ctypes ........................................................ 5
1.3.2 Using Dynamic Libraries ................................................................... 6
1.3.3 Constructing C Datatypes .................................................................. 8
1.3.4 Passing Parameters by Reference ....................................................... 9
1.3.5 Defining Structures and Unions .......................................................... 9
2
DEBUGGERS AND DEBUGGER DESIGN 13
2.1 General-Purpose CPU Registers......................................................................... 14
2.2 The Stack....................................................................................................... 16
2.3 Debug Events ................................................................................................. 18
2.4 Breakpoints .................................................................................................... 18
2.4.1 Soft Breakpoints.............................................................................. 19
2.4.2 Hardware Breakpoints..................................................................... 21
2.4.3 Memory Breakpoints ....................................................................... 23
3
BUILDING A WINDOWS DEBUGGER 25
3.1 Debuggee, Where Art Thou?............................................................................ 25
3.2 Obtaining CPU Register State........................................................................... 33
3.2.1 Thread Enumeration ........................................................................ 33
3.2.2 Putting It All Together....................................................................... 35
3.3 Implementing Debug Event Handlers ................................................................. 39
3.4 The Almighty Breakpoint .................................................................................. 43
3.4.1 Soft Breakpoints.............................................................................. 43
3.4.2 Hardware Breakpoints..................................................................... 47
3.4.3 Memory Breakpoints ....................................................................... 52
3.5 Conclusion..................................................................................................... 55
PYDBG—A PURE PYTHON WINDOWS DEBUGGER 57
4.1 Extending Breakpoint Handlers......................................................................... 58
4.2 Access Violation Handlers................................................................................ 60
4.3 Process Snapshots........................................................................................... 63
4.3.1 Obtaining Process Snapshots ........................................................... 63
4.3.2 Putting It All Together....................................................................... 65
5
IMMUNITY DEBUGGER—THE BEST OF BOTH WORLDS 69
5.1 Installing Immunity Debugger............................................................................ 70
5.2 Immunity Debugger 101 .................................................................................. 70
5.2.1 PyCommands ................................................................................. 71
5.2.2 PyHooks ........................................................................................ 71
5.3 Exploit Development........................................................................................ 73
5.3.1 Finding Exploit-Friendly Instructions ................................................... 73
5.3.2 Bad-Character Filtering .................................................................... 75
5.3.3 Bypassing DEP on Windows ............................................................ 77
5.4 Defeating Anti-Debugging Routines in Malware .................................................. 81
5.4.1 IsDebuggerPresent .......................................................................... 81
5.4.2 Defeating Process Iteration ............................................................... 82
6
HOOKING 85
6.1 Soft Hooking with PyDbg ................................................................................. 86
6.2 Hard Hooking with Immunity Debugger ............................................................. 90
7
DLL AND CODE INJECTION 97
7.1 Remote Thread Creation .................................................................................. 98
7.1.1 DLL Injection ................................................................................... 99
7.1.2 Code Injection .............................................................................. 101
7.2 Getting Evil .................................................................................................. 104
7.2.1 File Hiding ................................................................................... 104
7.2.2 Coding the Backdoor .................................................................... 105
7.2.3 Compiling with py2exe.................................................................. 108
8
FUZZING 111
8.1 Bug Classes ................................................................................................. 112
8.1.1 Buffer Overflows ........................................................................... 112
8.1.2 Integer Overflows ......................................................................... 113
8.1.3 Format String Attacks..................................................................... 114
8.2 File Fuzzer ................................................................................................... 115
8.3 Future Considerations .................................................................................... 122
8.3.1 Code Coverage............................................................................ 122
8.3.2 Automated Static Analysis.............................................................. 122
SULLEY 123
9.1 Sulley Installation .......................................................................................... 124
9.2 Sulley Primitives ............................................................................................ 125
9.2.1 Strings ......................................................................................... 125
9.2.2 Delimiters..................................................................................... 125
9.2.3 Static and Random Primitives.......................................................... 126
9.2.4 Binary Data.................................................................................. 126
9.2.5 Integers ....................................................................................... 126
9.2.6 Blocks and Groups........................................................................ 127
9.3 Slaying WarFTPD with Sulley ......................................................................... 129
9.3.1 FTP 101....................................................................................... 129
9.3.2 Creating the FTP Protocol Skeleton .................................................. 130
9.3.3 Sulley Sessions ............................................................................. 131
9.3.4 Network and Process Monitoring .................................................... 132
9.3.5 Fuzzing and the Sulley Web Interface ............................................. 133
10
FUZZING WINDOWS DRIVERS 137
10.1 Driver Communication ................................................................................. 138
10.2 Driver Fuzzing with Immunity Debugger......................................................... 139
10.3 Driverlib—The Static Analysis Tool for Drivers................................................. 142
10.3.1 Discovering Device Names .......................................................... 143
10.3.2 Finding the IOCTL Dispatch Routine............................................... 144
10.3.3 Determining Supported IOCTL Codes ............................................ 145
10.4 Building a Driver Fuzzer .............................................................................. 147
11
IDAPYTHON—SCRIPTING IDA PRO 153
11.1 IDAPython Installation.................................................................................. 154
11.2 IDAPython Functions .................................................................................... 155
11.2.1 Utility Functions........................................................................... 155
11.2.2 Segments ................................................................................... 155
11.2.3 Functions ................................................................................... 156
11.2.4 Cross-References......................................................................... 156
11.2.5 Debugger Hooks......................................................................... 157
11.3 Example Scripts .......................................................................................... 158
11.3.1 Finding Dangerous Function Cross-References................................. 158
11.3.2 Function Code Coverage ............................................................. 160
11.3.3 Calculating Stack Size................................................................. 161
12
PYEMU—THE SCRIPTABLE EMULATOR 163
12.1 Installing PyEmu.......................................................................................... 164
12.2 PyEmu Overview......................................................................................... 164
12.2.1 PyCPU ....................................................................................... 164
12.2.2 PyMemory.................................................................................. 165
12.2.3 PyEmu ....................................................................................... 165
12.2.4 Execution ................................................................................... 165
12.2.5 Memory and Register Modifiers .................................................... 165
12.2.6 Handlers.................................................................................... 166
12.3 IDAPyEmu .................................................................................................. 171
12.3.1 Function Emulation ...................................................................... 172
12.3.2 PEPyEmu.................................................................................... 175
12.3.3 Executable Packers...................................................................... 176
12.3.4 UPX Packer ................................................................................ 176
12.3.5 Unpacking UPX with PEPyEmu ...................................................... 177
INDEX 183


Another Phyton Books
Another Programming Language Books
Download
Continue Reading ...

Wednesday, October 5, 2011

Head First Python






Table of Contents
Your brain on Python. Here you are trying to learn something, while
here your brain is doing you a favor by making sure the learning doesn’t stick.
Your brain’s thinking, “Better leave room for more important things, like which
wild animals to avoid and whether naked snowboarding is a bad idea.” So how
do you trick your brain into thinking that your life depends on knowing Python?
Intro
Who is this book for? xxiv
We know what you’re thinking xxv
Metacognition xxvii
Bend your brain into submission xxix
Read me xxx
The technical review team xxxii
Acknowledgments xxxiii
What’s to like about Python? 2
Install Python 3 3
Use IDLE to help learn Python 4
Work effectively with IDLE 5
Deal with complex data 6
Create simple Python lists 7
Lists are like arrays 9
Add more data to your list 11
Work with your list data 15
For loops work with lists of any size 16
Store lists within lists 18
Check a list for a list 20
Complex data is hard to process 23
Handle many levels of nested lists 24
Don’t repeat code; create a function 28
Create a function in Python 29
Recursion to the rescue! 31
Your Python Toolbox 32
Everyone loves lists 1
meet python
You’re asking one question: “What makes Python different?”
The short answer is: lots of things. The longer answers starts by stating that there’s
lots that’s familiar, too. Python is a lot like any other general-purpose programming
language, with statements, expressions, operators, functions, modules, methods,
and classes. All the usual stuff, really. And then there’s the other stuff Python provides
that makes the programmer’s life—your life—that little bit easier. You’ll start your tour
of Python by learning about lists. But, before getting to that, there’s another important
question that needs answering…

3. Dealing with errors
It’s simply not enough to process your list data in your code.
You need to be able to get your data into your programs with ease, too. It’s no surprise then that Python makes reading data from files easy. Which is great, until you
consider what can go wrong when interacting with data external to your programs…
and there are lots of things waiting to trip you up! When bad stuff happens, you need a
strategy for getting out of trouble, and one such strategy is to deal with any exceptional situations using Python’s exception handling mechanism showcased in this chapter.
Data is external to your program 74
It’s all lines of text 75
Take a closer look at the data 77
Know your data 79
Know your methods and ask for help 80
Know your data (better) 82
Two very different approaches 83
Add extra logic 84
Handle exceptions 88
Try first, then recover 89
Identify the code to protect 91
Take a pass on the error 93
What about other errors? 96
Add more error-checking code… 97
…Or add another level of exception handling 98
So, which approach is best? 99
You’re done…except for one small thing 101
Be specific with your exceptions 102
Your Python Toolbox 103

4 Persistence: Saving Data to Files 105
5 Comprehending Data: Work That Data! 139
6 Custom Data Objects: Bundling Code with Data 173
7 Web Development: Putting It All Together 213
8 Mobile App Development: Small Devices 255
9 Manage Your Data: Handling Input 293
10 Scaling Your Webapp: Getting Real 351
11 Dealing with Complexity: Data Wrangling 397
i Leftovers: The Top Ten Things (We Didn’t Cover) 435

Another Phyton Books
Download
Another Programming Language Books
Continue Reading ...

The Android Developer’s Cookbook






Table of Contents
1 Overview of Android 1
The Evolution of Android 1
The Dichotomy of Android 2
Devices Running Android 2
HTC Models 6
Motorola Models 6
Samsung Models 6
Tablets 7
Other Devices 7
Hardware Differences on Android Devices 8
Screens 8
User Input Methods 9
Sensors 9
Features of Android 10
Multiprocess and App Widgets 11
Touch, Gestures, and Multitouch 11
Hard and Soft Keyboards 11
Android Development 11
How to Use the Recipes in This Book 12
Designing Applications Well 12
Maintaining Forward Compatibility 13
Robustness 13
Software Development Kit 14
Installing and Upgrading 14
Software Features and API Level 15
Emulator and Android Device Debug 16
Using the Android Debug Bridge 18
Signing and Publishing 18
Android Market 19
End-User License Agreement 19
Improving App Visibility 19
Differentiating an App 20
Charging for an App 20
Managing Reviews and Updates 21
Alternatives to the Android Market 22
�viii Contents
2 Application Basics: Activities and Intents 23
Android Application Overview 23
Recipe: Creating a Project and an Activity 24
Directory Structure of Project and Autogenerated
Content 26
Android Package and Manifest File 28
Renaming Parts of an Application 30
Activity Lifecycle 30
Recipe: Utilizing Other Lifecycle Functions 31
Recipe: Forcing Single Task Mode 33
Recipe: Forcing Screen Orientation 34
Recipe: Saving and Restoring Activity Information 34
Multiple Activities 35
Recipe: Using Buttons and TextView 36
Recipe: Launching Another Activity from an Event 37
Recipe: Launching an Activity for a Result Using
Speech to Text 41
Recipe: Implementing a List of Choices 43
Recipe: Using Implicit Intents for Creating an
Activity 44
Recipe: Passing Primitive Data Types Between
Activities 46
3 Threads, Services, Receivers, and Alerts 51
Threads 51
Recipe: Launching a Secondary Thread 51
Recipe: Creating a Runnable Activity 55
Recipe: Setting a Thread’s Priority 57
Recipe: Canceling a Thread 57
Recipe: Sharing a Thread Between Two
Applications 58
Messages Between Threads: Handlers 58
Recipe: Scheduling a Runnable Task from the Main
Thread 59
Recipe: Using a Countdown Timer 61
Recipe: Handling a Time-Consuming Initialization 62
Services 64
Recipe: Creating a Self-Contained Service 65
���������������Contents
Adding a Broadcast Receiver 69
Recipe: Starting a Service When the Camera Button Is
Pressed 70
App Widgets 72
Recipe: Creating an App Widget 72
Alerts 74
Recipe: Using Toast to Show a Brief Message on the
Screen 74
Recipe: Using an Alert Dialog Box 75
Recipe: Showing Notification in Status Bar 76
4 User Interface Layout 79
Resource Directories and General Attributes 79
Recipe: Specifying Alternate Resources 81
Views and ViewGroups 82
Recipe: Building Layouts in the Eclipse Editor 83
Recipe: Controlling the Width and Height of UI
Elements 86
Recipe: Setting Relative Layout and Layout ID 89
Recipe: Declaring a Layout Programmatically 90
Recipe: Updating a Layout from a Separate
Thread 92
Text Manipulation 94
Recipe: Setting and Changing Text Attributes 95
Recipe: Providing Text Entry 98
Recipe: Creating a Form 100
Other Widgets: From Buttons to Seek Bars 101
Recipe: Using Image Buttons in a Table Layout 102
Recipe: Using Check Boxes and Toggle Buttons 105
Recipe: Using Radio Buttons 108
Recipe: Creating a Drop-Down Menu 110
Recipe: Using a Progress Bar 112
Recipe: Using a SeekBar 114
5 User Interface Events 117
Event Handlers and Event Listeners 117
Recipe: Intercepting a Physical Key Press 117
Recipe: Building Menus 121
Recipe: Defining Menus in XML 126
Recipe: Utilizing the SEARCH Key 127
Recipe: Reacting to Touch Events 128
Recipe: Listening for Fling Gestures 130
Recipe: Using Multitouch 133
Advanced User Interface Libraries 136
Recipe: Using Gestures 136
Recipe: Drawing 3D Images 140
6 Multimedia Techniques 147
Images 148
Recipe: Loading an Image for Manipulation 148
Audio 154
Recipe: Choosing and Playing Back Audio Files 154
Recipe: Recording Audio Files 157
Recipe: Manipulating Raw Audio 158
Recipe: Using Sound Resources Efficiently 163
Recipe: Adding Media and Updating Paths 165
Video 165
7 Hardware Interface 169
Camera 169
Recipe: Customizing the Camera 170
Other Sensors 175
Recipe: Getting a Device’s Rotational Attitude 176
Recipe: Using the Temperature and Light Sensor 179
Telephony 180
Recipe: Utilizing the Telephony Manager 181
Recipe: Listening for Phone States 183
Recipe: Dialing a Phone Number 185
Bluetooth 185
Recipe: Turning on Bluetooth 186
Recipe: Discovering Bluetooth Devices 187
Recipe: Pairing with Bonded Bluetooth Devices 188
Recipe: Opening a Bluetooth Socket 188
Recipe: Using Device Vibration 191
Recipe: Accessing the Wireless Network 191
���������������xi Contents
8 Networking 195
Using SMS 195
Recipe: Autosend an SMS Based on a Received
SMS 197
Using Web Content 204
Recipe: Customizing a Web Browser 204
Recipe: Using an HTTP GET 204
Recipe: Using HTTP POST 209
Social Networking 210
Recipe: Integrating with Twitter 210
9 Data Storage Methods 221
Shared Preferences 221
Recipe: Creating and Retrieving Shared
Preferences 222
Recipe: Using the Preferences Framework 222
Recipe: Changing the UI Based on Stored Data 225
Recipe: Adding a EULA 228
SQLite Database 232
Recipe: Creating a Separate Database Package 232
Recipe: Using a Separate Database Package 236
Recipe: Creating a Personal Diary 239
Content Provider 243
Recipe: Creating a Custom Content Provider 244
File Saving and Loading 249
10 Location-Based Services 251
Location Basics 251
Recipe: Retrieving Last Location 253
Recipe: Updating Location Upon Change 254
Recipe: Listing All Enabled Providers 256
Recipe: Translating a Location to Address (Reverse
Geocoding) 258
Recipe: Translating an Address to Location
(Geocoding) 261
Using Google Maps 263
Recipe: Adding Google Maps to an Application 265
Recipe: Adding Markers on a Map 267
���������������xii Contents
Recipe: Adding Views to a Map 271
Recipe: Marking the Device’s Current Location on a
Map 274
Recipe: Setting up a Proximity Alert 274
11 Advanced Android Development 277
Android Custom View 277
Recipe: Customizing a Button 277
Android Native Components 283
Recipe: Developing a Native Component 284
Android Security 287
Recipe: Declaring and Enforcing Permissions 288
Android Inter-Process Communication 288
Recipe: Implementing a Remote Procedure Call 289
Android Backup Manager 294
Recipe: Creating a Backup of Runtime Data 294
Recipe: Backing Up Files to the Cloud 296
Recipe: Triggering Backup and Restore 296
Android Animation 298
Recipe: Creating an Animation 299
12 Debugging 303
Eclipse Built-in Debug Tools 303
Recipe: Specifying a Run Configuration 303
Recipe: Using the DDMS 304
Recipe: Debugging Through Breakpoints 306
Android SDK Debug Tools 307
Recipe: Using the Android Debug Bridge 307
Recipe: Using LogCat 307
Recipe: Using the Hierarchy Viewer 309
Recipe: Using TraceView 311
Android System Debug Tools 313
Recipe: Setting up GDB Debugging 315
Index 317

Another Android Books
Download
Continue Reading ...

Cost Optimization of Structures






Contents
Preface xi
Acknowledgments xiii
About the Authors xv
1 Introduction 1
1.1 The Case for Cost Optimization 1
1.2 Cost Optimization of Concrete Structures 2
1.2.1 Concrete Beams and Slabs 3
1.2.2 Concrete Columns 11
1.2.3 Concrete Frame Structures 12
1.2.4 Bridge Structures 14
1.2.5 Water Tanks 16
1.2.6 Folded Plates and Shear Walls 17
1.2.7 Concrete Pipes 17
1.2.8 Concrete Tensile Members 17
1.2.9 Cost Optimization Using the Reliability Theory 18
1.2.10 Concluding Comments 20
1.3 Cost Optimization of Steel Structures 20
1.3.1 Deterministic Cost Optimization 20
1.3.2 Cost Optimization Using the Reliability Theory 31
1.3.3 Fuzzy Optimization 33
1.3.4 Concluding Comments 35
2 Evolutionary Computing and the Genetic Algorithm 37
2.1 Overview and Basic Operations 37
2.2 Coding and Decoding 39viii Contents
2.3 Basic Operations in Genetic Algorithms 40
2.4 GA with the Penalty Function Method 43
2.4.1 Problem Formulation for Axial Force (Truss)
Structures 43
2.4.2 Genetic Algorithm with the Penalty Function
Method 45
2.5 Augmented Lagrangian Method 47
2.6 GA with the Augmented Lagrangian Method 48
2.6.1 Problem Formulation for Axial Force (Truss)
Structures 48
2.6.2 Genetic Algorithm with the Augmented Lagrangian
Method 49
3 Cost Optimization of Composite Floors 53
3.1 Introduction 53
3.2 Minimum Cost Design of Composite Beams 54
3.2.1 Cost Function 54
3.2.2 Constraints 55
3.2.3 Problem Formulation as a Mixed Integer–Discrete
Nonlinear Programming Problem 61
3.3 Solution by the Floating-Point Genetic Algorithm 62
3.3.1 Binary Versus Floating-Point GA 62
3.3.2 Crossover Operation for the Floating-Point GA 62
3.3.3 Mutation Operation for the Floating-Point GA 63
3.3.4 Floating-Point GA for Cost Optimization
of Composite Floors 63
3.4 Solution by the Neural Dynamics Method 65
3.5 Counter Propagation Neural (CPN) Network for Function
Approximations 68
3.6 Examples 71
3.6.1 Example 1 71
3.6.2 Example 2 72
4 Fuzzy Genetic Algorithm for Optimization of Steel Structures 77
4.1 Introduction 77
4.2 Fuzzy Set Theory and Structural Optimization 79
4.3 Minimum Weight Design of Axially Loaded Space
Structures 82
4.4 Fuzzy Membership Functions 85
4.5 Fuzzy Augmented Lagrangian Genetic Algorithm 87Contents ix
4.6 Implementation and Examples 92
4.6.1 Example 1 93
4.6.2 Example 2 93
4.7 Conclusion 98
5 Fuzzy Discrete Multi-criteria Cost Optimization of Steel
Structures 101
5.1 Cost of a Steel Structure 101
5.2 Primary Contributing Factors to the Cost of a Steel
Structure 102
5.3 Fuzzy Discrete Multi-criteria Cost Optimization 105
5.4 Membership Functions 110
5.4.1 Membership Function for Minimum Cost 110
5.4.2 Membership Function for Minimum Weight 110
5.4.3 Membership Function for Minimum Number of
Section Types 110
5.5 Fuzzy Membership Functions for Criteria with Unequal
Imortance 112
5.6 Pareto Optimality 112
5.7 Selection of Commercially Available Discrete Shapes 114
5.8 Implementation and a Parametric Study 117
5.9 Application to High-Rise Steel Structures 118
5.9.1 Example 1 118
5.9.2 Example 2 119
5.10 Concluding Comments 123
6 Parallel Computing 125
6.1 Multiprocessor Computing Environment 125
6.2 Parallel Processing Implementation Environment 128
6.2.1 OpenMP Data Parallel Application Programming
Interface (API) 128
6.2.2 Message Passing Interface (MPI) 130
6.3 Performance Optimization of Parallel Programs 130
7 Parallel Fuzzy Genetic Algorithms for Cost Optimization of
Large Steel Structures 133
7.1 Genetic Algorithm and Parallel Processing 133
7.2 Cost Optimization of Moment-Resisting Steel Space
Structures 135
7.3 Data Parallel Fuzzy Genetic Algorithm for Optimization
of Steel Structures Using OpenMP 136
7.4 Distributed Parallel Fuzzy Genetic Algorithm for
Optimization of Steel Structures Using MPI 138
7.4.1 Processor Farming Scheme 138
7.4.2 Migration Scheme 140
7.5 Bilevel Parallel Fuzzy GA for Optimization of Steel
Structures Using OpenMP and MPI 142
7.5.1 Bilevel Parallel Fuzzy GA with the Processor
Farming Scheme 145
7.5.2 Bilevel Parallel Fuzzy GA with the Migration Scheme 146
7.6 Application to High-Rise Building Steel Structures 147
7.6.1 Example 1 147
7.6.2 Example 2 149
7.7 Parallel Processing Performance Evaluation 155
7.7.1 Data Parallel Fuzzy GA Using OpenMP 155
7.7.2 Distributed Parallel Fuzzy GA Using MPI 157
7.7.3 Bilevel Parallel Fuzzy GA Using OpenMP and MPI 160
7.8 Concluding Comments 164
8 Life-Cycle Cost Optimization of Steel Structures 165
8.1 Introduction 165
8.2 Life-Cycle Cost of a Steel Structure and the Primary
Contributing Factors 167
8.3 Formulation of the Total Life-Cycle Cost 170
8.4 Fuzzy Discrete Multi-criteria Life-Cycle Cost Optimization 171
8.5 Application to a High-Rise Building Steel Structure 174
Appendix A 177
Appendix B 181
References 185
Index 201


Another Fuzzy Logic Books
Another Genetic Algorithm Books
Another Parallel Programming Books
Download
Continue Reading ...

Tuesday, October 4, 2011

Facebook For Dummies , 3 rd Edition








Contents at a Glance
Introduction ................................................................ 1
Part I: Getting Started with Facebook ........................... 7
Chapter 1: The Many Faces of Facebook ........................................................................ 9
Chapter 2: Adding Your Own Face to Facebook .......................................................... 29
Chapter 3: Finding Your Way Around Facebook ......................................................... 41
Chapter 4: Finding Facebook Friends ............................................................................ 51
Chapter 5: Privacy and Safety on Facebook ................................................................. 67
Part II: Sharing Your Life on Facebook ........................ 83
Chapter 6: Building Out Your Pro le ............................................................................. 85
Chapter 7: Social Stories ............................................................................................... 107
Chapter 8: Filling Facebook with Photos, Videos, and Notes................................... 117
Chapter 9: Keeping Up with Your Friends .................................................................. 141
Part III: Getting Organized ....................................... 161
Chapter 10: Creating and Joining Groups on Facebook ............................................ 163
Chapter 11: Scheduling Your Life with Facebook ...................................................... 183
Chapter 12: Creating a Page for Your Business ......................................................... 197
Part IV: Delving Further into Facebook ...................... 231
Chapter 13: Facebook and the Web ............................................................................. 233
Chapter 14: Facebook on the Go .................................................................................. 259
Chapter 15: A Different Kind of Advertising ............................................................... 275
Part V: The Part of Tens ........................................... 291
Chapter 16: Ten Great Third-Party Applications ....................................................... 293
Chapter 17:Ten Ways Facebook Uniquely Impacts Lives ......................................... 297
Chapter 18: Ten Questions That Leah and Carolyn Get a Lot.................................. 305
Chapter 19: Ten True Facebook Tales ........................................................................ 313
Index ...................................................................... 319

Another Social Network Books
Download
Continue Reading ...

Monday, October 3, 2011

Delphi for .NET Developer’s Guide






Contents at a Glance
Introduction . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Part I Introduction to the .NET Framework
1 Introduction to .NET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 Overview of the .NET Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Part II Delphi for .NET Programming Language
3 Introduction to Delphi for .NET and the New IDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4 Programs, Units, and Namespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5 The Delphi Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Part III The .NET Framework Class Library Development
6 Assemblies—Libraries and Packages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
7 GDI+ Programming—Drawing in .NET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
8 Mono—A Cross Platform .NET Project. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
9 Memory Management and Garbage Collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
10 Collections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
11 Working with the String and StringBuilder Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
12 File and Streaming Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
13 Developing Custom WinForms Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
14 Threading in Delphi for .NET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
15 Reflection API. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
16 Interoperability—COM Interop and the Platform Invocation Service. . . . . . . . . . . . . . . . 356
Part IV Database Development with ADO.NET
17 Overview of ADO.NET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
18 Using the Connection Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
19 Using Command and DataReader Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
20 DataAdapters and DataSets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
21 Working with WinForms—DataViews and Data Binding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
22 Saving Data to the Data Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
23 Working with Transactions and Strongly-Typed Datasets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 504
24 The Borland Data Provider. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523
Part V Internet Development with ASP.NET
25 ASP.NET Fundamentals. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534
26 Building ASP.NET Web Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551
27 Building Database Driven ASP.NET Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581
28 Building Web Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 620
29 .NET Remoting and Delphi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 643
30 .NET Remoting in Action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 669
31 Securing ASP.NET Applications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699
32 ASP.NET Deployment and Configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716
33 Caching and Managing State in ASP.NET Applications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 738
34 Developing Custom ASP.NET Server Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 763
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 791

Another Delphi Books

Another .NET Books
Download
Continue Reading ...

Python for Dummies







How This Book Is Organized
This book gives you an overview of Python; the lowdown about all of its major parts, structures, and libraries; and a glimpse into some more advanced features. You also find out where to go to discover more.

Part I: Getting StartedIn this part, we introduce Python and situate it among the myriad other programming languages available. Python is good for some things and not for others; you find out which is which. We provide a hands-on introduction to some of Python's abilities, using its helpful interactive mode and its IDLE programming environment. We briefly describe each of Python's basic building blocks and show how all these blocks come together by dissecting a working program. We sketch an overview of how professional programmers design programs and debug code and show you how to put these practices to work to make your own programming life easier.

Part II: Building BlocksPython has six basic data types and many ways to work with each of them. In this part, we describe how to work with strings (chunks of text), numbers, lists and tuples (both of which store multiple data elements), dictionaries (which associate one element with another), and sets (which always contain unique elements, never duplicates).

Part III: StructuresPython code usually comes in chunks, both small and big, and each chunk does a particular thing. This part also includes a brief introduction to some advanced features and the new features of Python 2.5.

Part IV: LibrariesPython comes with everything you need to write a very powerful program, and other people have already solved lots of programming conundrums for you. Its libraries include primary services such as communication with the operating system, text processing tools, various ways of reading and writing information to disk, and Internet access methods.

Part V: The Part of TensAll For Dummies books include The Part of Tens. In this part, we give you ten useful but not-so-obvious programming idioms and ten resources where you can find out more about Python.

Part VI: AppendixesHere you find instructions on how to install Python and its documentation, as well as a list of new features introduced with each new version of Python since 2.0.Icons appear throughout the book to indicate special material. Here's what they mean: Tip A Tip explains how to do something a little bit more easily and efficiently.Warning A Warning gives you a heads-up about tricky stuff or common mistakes that might cause data loss or some other sort of headache. It's best to read Warnings to make sure a tricky feature doesn't "getcha."TECHNICAL STUFF A Technical Stuff icon flags text that's of interest to readers who like to know about the inner workings or history of a subject. You don't need to read Technical Stuff material. After you've internalized a little about a subject, reading this text might help you understand it from a different angle.REMEMBER Remember icons highlight imprtant concepts or pieces of information to keep in mind.Another Phyton BooksAnother Programming Language BooksDownload
Continue Reading ...

Practical Studies in E-Government






Contents
1 Back to Practice, a Decade of Research in E-Government ................. 1
Saïd Assar, Imed Boughzala, and Isabelle Boydens
2 E-Procurement, from Project to Practice:
Empirical Evidence from the French Public Sector ............................ 13
Godefroy Beauvallet, Younès Boughzala, and Saïd Assar
3 Implementation of E-Government in Mexico:
The Case of Infonavit .............................................................................. 29
Lizbeth Herrera and J. Ramon Gil-Garcia
4 The Casualty Assistance Readiness Enhancement System:
A Case Study in Rapid Prototyping and Design for Flexibility .......... 49
Simon R. Goerger, Ernest Y. Wong, Dale L. Henderson,
Brian K. Sperling, and William Bland
5 An Overview of Some Electronic Identification
Use Cases in Europe ................................................................................ 71
Fabrice Mattatia
6 Privacy and Personal Information Held by Government:
A Comparative Study, Japan and New Zealand .................................. 93
Rowena Cullen
7 Strategic Issues Relating to Data Quality for E-Government:
Learning from an Approach Adopted in Belgium ............................... 113
Isabelle Boydens
8 Long-Term Verifiability of Remote Electronic Elections .................... 131
Lucie Langer
9 Law-Based Ontology for E-Government Services
Construction – Case Study: The Specification of Services
in Relationship with the Venture Creation in Switzerland ................. 149
Abdelaziz Khadraoui, Wanda Opprecht, Michel Léonard,
and Christine Aïdonidis
10 Architectural Principles for Orchestration
of Cross-Organizational Service Delivery:
Case Studies from the Netherlands ....................................................... 167
Anne Fleur van Veenstra and Marijn Janssen
11 Achieving Interoperability Through Base Registries
for Governmental Services and Document Management .................... 187
Yannis Charalabidis, Fenareti Lampathaki, and Dimitris Askounis
12 Envisioning Advanced User Interfaces for E-Government
Applications: A Case Study .................................................................... 205
Gaëlle Calvary, Audrey Serna, Joëlle Coutaz, Dominique Scapin,
Florence Pontico, and Marco Winckler
13 Practices to Develop Spatial Data Infrastructures:
Exploring the Contribution to E-Government ..................................... 229
Joep Crompvoets, Glenn Vancauwenberghe, Geert Bouckaert,
and Danny Vandenbroucke
Index ................................................................................................................. 249



Another eGovernment Books
Download
Continue Reading ...

PowerPoint 2010 For Dummies






Contents at a Glance
Introduction ................................................................ 1
Part I: Basic PowerPoint 2010 Stuff ............................. 7
Chapter 1: Welcome to PowerPoint 2010 ....................................................................... 9
Chapter 2: Editing Slides ................................................................................................. 31
Chapter 3: Working in Outline View .............................................................................. 47
Chapter 4: Proofi ng Your Presentations ...................................................................... .53
Chapter 5: Don’t Forget Your Notes! ............................................................................. 63
Chapter 6: Show Time! .................................................................................................... 69
Chapter 7: Getting Help ................................................................................................... 83
Part II: Creating Great-Looking Slides ......................... 87
Chapter 8: All about Fonts and Text Formatting ......................................................... 89
Chapter 9: Designing Your Slides................................................................................. 105
Chapter 10: Animating Your Slides .............................................................................. 119
Chapter 11: Masters of the Universe Meet the Templates of Doom ....................... 135
Part III: Embellishing Your Slides ............................. 157
Chapter 12: Inserting Pictures and Clip Art ................................................................ 159
Chapter 13: Drawing on Your Slides ............................................................................ 177
Chapter 14: Charting for Fun and Profi t ...................................................................... 197
Chapter 15: Working with SmartArt ............................................................................ 213
Chapter 16: Lights! Camera! Action! (Adding Sound and Video) ............................. 225
Chapter 17: More Things to Insert on Your Slides .................................................... 237
Part IV: Working with Others .................................... 261
Chapter 18: Using PowerPoint’s Collaboration Tools ............................................... 263
Chapter 19: Using a Slide Library and Other Ways to Reuse Slides ........................ 275
Chapter 20: Creating a Video Version of Your Presentation .................................... 281
Part V: The Part of Tens ........................................... 287
Chapter 21: Ten PowerPoint Commandments ........................................................... 289
Chapter 22: Ten Tips for Creating Readable Slides ................................................... 293
Chapter 23: Ten Ways to Keep Your Audience Awake ............................................. 297
Chapter 24: Ten Things That Often Go Wrong ........................................................... 301
Index ...................................................................... 305


Another Microsoft Books

Download
Continue Reading ...

Sunday, October 2, 2011

Distributed Operating Systems






For software development professionals and computer science students, Modern Operating Systems gives a solid conceptual overview of operating system design, including detailed case studies of Unix/Linux and Windows 2000.

What makes an operating system modern? According to author Andrew Tanenbaum, it is the awareness of high-demand computer applications--primarily in the areas of multimedia, parallel and distributed computing, and security. The development of faster and more advanced hardware has driven progress in software, including enhancements to the operating system. It is one thing to run an old operating system on current hardware, and another to effectively leverage current hardware to best serve modern software applications. If you don''t believe it, install Windows 3.0 on a modern PC and try surfing the Internet or burning a CD.

Readers familiar with Tanenbaum''s previous text, Operating Systems, know the author is a great proponent of simple design and hands-on experimentation. His earlier book came bundled with the source code for an operating system called Minux, a simple variant of Unix and the platform used by Linus Torvalds to develop Linux. Although this book does not come with any source code, he illustrates many of his points with code fragments (C, usually with Unix system calls).


The first half of Modern Operating Systems focuses on traditional operating systems concepts: processes, deadlocks, memory management, I/O, and file systems. There is nothing groundbreaking in these early chapters, but all topics are well covered, each including sections on current research and a set of student problems. It is enlightening to read Tanenbaum''s explanations of the design decisions made by past operating systems gurus, including his view that additional research on the problem of deadlocks is impractical except for "keeping otherwise unemployed graph theorists off the streets."

It is the second half of the book that differentiates itself from older operating systems texts. Here, each chapter describes an element of what constitutes a modern operating system--awareness of multimedia applications, multiple processors, computer networks, and a high level of security. The chapter on multimedia functionality focuses on such features as handling massive files and providing video-on-demand. Included in the discussion on multiprocessor platforms are clustered computers and distributed computing. Finally, the importance of security is discussed--a lively enumeration of the scores of ways operating systems can be vulnerable to attack, from password security to computer viruses and Internet worms.

Included at the end of the book are case studies of two popular operating systems: Unix/Linux and Windows 2000. There is a bias toward the Unix/Linux approach, not surprising given the author''s experience and academic bent, but this bias does not detract from Tanenbaum''s analysis. Both operating systems are dissected, describing how each implements processes, file systems, memory management, and other operating system fundamentals.

Tanenbaum''s mantra is simple, accessible operating system design. Given that modern operating systems have extensive features, he is forced to reconcile physical size with simplicity. Toward this end, he makes frequent references to the Frederick Brooks classic The Mythical Man-Month for wisdom on managing large, complex software development projects. He finds both Windows 2000 and Unix/Linux guilty of being too complicated--with a particular skewering of Windows 2000 and its "mammoth Win32 API." A primary culprit is the attempt to make operating systems more "user-friendly," which Tanenbaum views as an excuse for bloated code. The solution is to have smart people, the smallest possible team, and well-defined interactions between various operating systems components. Future operating system design will benefit if the advice in this book is taken to heart. --Pete Ostenson

Another Core of CS Books
Download
Continue Reading ...

Saturday, October 1, 2011

IPSec VPN Design







By Vijay Bollapragada, Mohamed Khalid, Scott Wainner

Publisher : Cisco Press
Pub Date : April 07, 2005
ISBN : 1-58705-111-7
Pages : 384





Master IPSec-based Virtual Private Networks with guidance from the Cisco Systems® VPN Solutions group

Understand how IPSec VPNs are designed, built, and administered

Improve VPN performance through enabling of modern VPN services such as performance, scalability, QoS, packet processing, multicast, and security

Integrate IPSec VPNs with MPLS, Frame Relay, and ATM technologies

As the number of remote branches and work-from-home employees grows throughout corporate America, VPNs are becoming essential to both enterprise networks and service providers. IPSec is one of the more popular technologies for deploying IP-based VPNs. IPSec VPN Design provides a solid understanding of the design and architectural issues of IPSec VPNs. Some books cover IPSec protocols, but they do not address overall design issues. This book fills that void.

IPSec VPN Design consists of three main sections. The first section provides a comprehensive introduction to the IPSec protocol, including IPSec Peer Models. This section also includes an introduction to site-to-site, network-based, and remote access VPNs. The second section is dedicated to an analysis of IPSec VPN architecture and proper design methodologies. Peer relationships and fault tolerance models and architectures are examined in detail. Part three addresses enabling VPN services, such as performance, scalability, packet processing, QoS, multicast, and security. This book also covers the integration of IPSec VPNs with other Layer 3 (MPLS VPN) and Layer 2 (Frame Relay, ATM) technologies; and discusses management, provisioning, and troubleshooting techniques. Case studies highlight design, implementation, and management advice to be applied in both service provider and enterprise environments.


Copyright
About the Authors
About the Technical Editors
Acknowledgments
This Book Is Safari Enabled
Icons Used in This Book
Command Syntax Conventions
Introduction
Chapter 1. Introduction to VPNs
Motivations for Deploying a VPN
VPN Technologies
Summary
Chapter 2. IPSec Overview
Encryption Terminology
IPSec Security Protocols
Key Management and Security Associations
Summary
Chapter 3. Enhanced IPSec Features
IKE Keepalives
Dead Peer Detection
Idle Timeout
Reverse Route Injection
Stateful Failover
IPSec and Fragmentation
GRE and IPSec
IPSec and NAT
Summary
Chapter 4. IPSec Authentication and Authorization Models
Extended Authentication (XAUTH) and Mode Configuration (MODE-CFG)
Mode-Configuration (MODECFG)
Easy VPN (EzVPN)
Digital Certificates for IPSec VPNs
Summary
Chapter 5. IPSec VPN Architectures
IPSec VPN Connection Models
Hub-and-Spoke Architecture
Full-Mesh Architectures
Summary
Chapter 6. Designing Fault-Tolerant IPSec VPNs
Link Fault Tolerance
IPSec Peer Redundancy Using SLB
Intra-Chassis IPSec VPN Services Redundancy
Summary
Chapter 7. Auto-Configuration Architectures for Site-to-Site IPSec VPNs
IPSec Tunnel Endpoint Discovery
Dynamic Multipoint VPN
Summary
Chapter 8. IPSec and Application Interoperability
QoS-Enabled IPSec VPNs
VoIP Application Requirements for IPSec VPN Networks
IPSec VPN Architectural Considerations for VoIP
Multicast over IPSec VPNs
Summary
Chapter 9. Network-Based IPSec VPNs
Fundamentals of Network-Based VPNs
The Network-Based IPSec Solution: IOS Features
Operation of Network-Based IPSec VPNs
Network-Based VPN Deployment Scenarios
Summary
Index


Another Network Books
Download
Continue Reading ...

Nitty Gritty Delphi 6






Preface xi
Acknowledgments xiii
Part I – Start up! 1
1 Before you get started … 3
1.1 What is Delphi? 3
1.2 Delphi is object-oriented 4
1.3 Delphi is event-oriented 5
1.4 Delphi’s development environment 5
1.4.1 Main window 6
1.4.2 Object Inspector 7
1.4.3 Object Treeview 8
1.4.4 Code Editor 8
1.4.5 Code Explorer 8
1.5 Options in Delphi 9
1.5.1 Environment Options 9
1.5.2 Editor Properties 11
1.5.3 Project Options 12
1.6 Programming help 15
1.6.1 Code completion 15
1.6.2 Code parameters 16
1.6.3 Evaluation via tooltips 17
1.6.4 Code templates 17
1.6.5 Class completion 17
1.6.6 Hyperlinks in source code 17
1.6.7 To-Do List 17
1.7 New in Delphi 6 18
1.7.1 Object Inspector 18
1.7.2 Code Editor 19
1.7.3 Object Treeview 19
1.7.4 Subcomponents 20
1.7.5 New components 20
1.8 Choosing a version 21
2 Hello World … ? 23
2.1 Creating the interface 23
2.2 Adding the base functionality 24
2.2.1 Closing the program 24
2.2.2 Configuring the result field 24
2.2.3 Tab sequence 25
2.2.4 Text in the input fields 25
2.3 Adding the main function 25
2.4 Preventing incorrect input 28
Part II – Take that! 31
3 Object Pascal 33
3.1 Basic language components 33
3.1.1 Symbols and separators 33
3.1.2 Reserved words and directives 33
3.1.3 Variables and constants 35
3.1.4 Data types 37
3.1.5 Arrays 38
3.1.6 Sets 42
3.1.7 Records 42
3.1.8 Pointers 44
3.1.9 Objects and classes 46
3.2 Loops 50
3.2.1 The forloop 50
3.2.2 The whileloop 51
3.2.3 The repeatloop 52
3.3 Branches 52
3.3.1 If–then–else branching 52
3.3.2 Case branching 53
3.3.3 Procedures and functions 54
3.3.4 Passing parameters 55
3.3.5 Overloading procedures and functions 56
3.4 Units 57
3.4.1 Structure of a unit 57
3.4.2 Mutual visibility of units 58
3.4.3 Units in Delphi 59
4 Delphi’s base elements 61
4.1 Visual components library 61
4.1.1 Common properties 61
4.1.2 Component Palette Standard page 64
4.1.3 Component Palette Additional page 68
4.1.4 Component Palette Win32 page 73
4.1.5 Component Palette System page 79
4.1.6 Component Palette BDE page 81
4.1.7 Component Palette Data Controls page 84
4.1.8 Component Palette dbExpress page 87
4.1.9 Component Palette Internet page 89
4.1.10 Component Palette FastNet page 92
4.1.11 Component Palette Dialogs page 94
4.1.12 Component Palette Samples page 102
4.2 Base classes of a program 103
4.2.1 TApplicationclass 103
4.2.2 TScreenclass 104
4.2.3 TPrinterclass 106
5 Basic elements of an application 109
5.1 Forms 109
5.1.1 Main form of the application 109
5.1.2 Displaying forms 109
5.1.3 Creating forms at runtime 111
5.1.4 Evaluating form contents 111
5.1.5 Transparent forms 113
5.2 Menus 114
5.2.1 Menu Designer 114
5.2.2 Menu templates 116
5.2.3 Important properties 116
5.3 Toolbars 116
5.3.1 TToolbarproperties 116
5.3.2 TToolbuttonproperties 116
5.3.3 Grouping buttons 116
5.4 Status bar 118
5.4.1 Splitting the status bar 119
5.4.2 Modifying panels at runtime 119
5.4.3 Filling the status bar with text 120
5.5 TActionListcomponent 121
5.5.1 ActionList Editor 121
5.5.2 TActionproperties 122
5.5.3 Defining the functionality of actions 122
5.5.4 Adding images 123
5.6 TImageListcomponent 123
5.6.1 ImageList Editor 124
5.6.2 TImageListproperties 124
5.7 Action Manager 125
5.7.1 Adding actions 126
5.7.2 Using actions 126
5.7.3 Modifying actions 127
5.7.4 Mimicking Office 2000 128
6 Functions and procedures 131
6.1 Dialog and message windows 131
6.1.1 ShowMessage 131
6.1.2 InputBox 132
6.1.3 InputQuery 132
6.1.4 MessageDlg 132
6.1.5 Application.Messageboxand Messagebox 134
6.1.6 SelectDirectory 136
6.2 Arithmetical functions 137
6.3 Files and folders 139
6.4 Type conversions 144
6.5 Date and time 146
6.6 Other functions and procedures 148
Part III – Go ahead! 151
7 Program development techniques 153
7.1 String lists 153
7.1.1 List components 153
7.1.2 TStringListclass 155
7.2 Working with one-line strings 156
7.2.1 String formats in Delphi 156
7.2.2 String functions 157
7.3 Working with multiline text 160
7.3.1 TMemo component 160
7.3.2 TRichEditcomponent 162
7.4 Forms and components 166
7.4.1 Finding components 166
7.4.2 Senderparameter 167
7.4.3 Generating components dynamically 167
7.5 Frames 169
7.5.1 Creating a frame 169
7.5.2 Properties and events 169
7.5.3 Example of a frame 170
7.5.4 Accessing a frame’s components 172
7.6 Checking entries 173
7.6.1 Input field restrictions 173
7.6.2 Predefined input masks 174
7.6.3 Global hotkeys query 176
7.7 Working with files 177
7.7.1 Typed files 177
7.7.2 Non-typed (text) files 178
7.7.3 Streams 179
7.8 Registry 184
7.8.1 Structure of the Registry database 184
7.8.2 TRegistryclass 184
7.9 Threads 186
7.9.1 Synchronizemethod 186
7.9.2 Declaring a thread 187
7.9.3 Initializing a thread 188
7.10 Dynamic link libraries 189
7.10.1 Structure of a dynamic link library in Delphi 189
7.10.2 Integrating a dynamic link library 191
7.11 Linking and embedding objects 194
7.11.1 TOleContainercomponent 194
7.11.2 Using TOleContainer 196
7.12 Dynamic data exchange 201
7.12.1 Dynamic data exchange components 202
7.12.2 Example dynamic data exchange project 203
7.13 Drag and drop 207
7.13.1 Drag and drop events 208
7.13.2 Example project 209
8 Delphi and databases 211
8.1 Back to basics 211
8.1.1 Structure of a database 211
8.1.2 BDE database components 212
8.1.3 ADO components 214
8.1.4 dbExpress components 215
8.1.5 Data module 216
8.2 Creating a database with BDE 216
8.2.1 Planning the database 216
8.2.2 Creating the database 218
8.2.3 Creating the interface 224
8.2.4 Programming the functionality 226
8.3 Master/detail databases 234
8.3.1 Specifying the master database 234
8.3.2 Creating a master database 235
8.3.3 Linking databases 237
8.3.4 Modifying the program interface 238
8.3.5 Extending the functionality 239
8.4 Other BDE functions 241
8.4.1 Splitting a database 241
8.4.2 Defining the start and end 241
8.4.3 Bookmarks 242
8.5 Database interface 242
8.5.1 Structure information 242
8.5.2 Restructuring the database 243
8.5.3 Defining aliases 245
8.6 ADO 246
8.6.1 Example ADO project 246
9 Delphi and the internet 251
9.1 TWebBrowsercomponent 251
9.2 NetMasters components 252
9.2.1 Common properties 252
9.2.2 TNmFTPcomponent 252
9.2.3 TNmNNTPcomponent 254
9.2.4 TNmPop3component 256
9.2.5 TNmSMTPcomponent 258
9.3 Your own browser 259
9.3.1 Program interface 259
9.3.2 Programming the functionality 260
9.4 Creating a cgi counter with Delphi 264
9.4.1 Basic requirements 264
9.4.2 OnActionevent 265
10 Developing components 271
10.1 Back to basics 271
10.2 Conventions 272
10.3 Structure of a component class 273
10.4 Properties 275
10.4.1 Property variables and properties 275
10.4.2 Accessing a property 276
10.4.3 Publishing properties 276
10.4.4 Loading and saving property values 277
10.5 Windows messages 278
10.5.1 Basic principles of messages 278
10.5.2 Defining message-handling routines 279
10.5.3 Declaring your own messages 279
10.6 Events 280
10.6.1 Declaring events 280
10.6.2 Intercepting messages 281
10.6.3 Publishing events 282
10.7 Methods 283
10.7.1 Published methods 283
10.7.2 Constructors and destructors 283
10.8 Property editors 284
10.8.1 Programming a property editor 284
10.8.2 Registering a property editor 286
10.9 Numerical components 286
10.9.1 Framework for the new component 286
10.9.2 Features of the new component 287
10.9.3 Component properties 287
10.9.4 Access methods for IntValue 288
10.9.5 Restricting the input field 290
10.9.6 Finished framework 291
10.9.7 Installing the component 293
11 Error-handling and debugging 295
11.1 Exceptions 295
11.1.1 What is an exception? 295
11.1.2 Protecting source code 295
11.1.3 Exception-handling 298
11.1.4 Silent exceptions 300
11.2 Debugging 300
11.2.1 Breakpoints 301
11.2.2 Evaluating variables 303
11.2.3 Watched expressions 304
11.2.4 CPU window 304
Appendix
A ASCII table 307
B Virtual key codes 309
Index 313

Another Delphi Books
Another Programming Language
Download
Continue Reading ...

Related Posts with Thumbnails

Put Your Ads Here!

Recent Posts