windows azure platform
DESCRIPTION
Overview of the Microsoft cloud computing platform, Windows Azure Platform.TRANSCRIPT
Private(On-Premise)
Infrastructure
(as a Service)
Platform(as a
Service)
Types of Clouds
Storage
Server HW
Networking
Servers
Databases
Virtualization
Runtimes
Applications
Security & Integration
Storage
Server HW
Networking
Servers
Databases
Virtualization
Runtimes
Applications
Security & Integration
Storage
Server HW
Networking
Servers
Databases
Virtualization
Runtimes
Applications
Security & Integration
You m
anage M
anaged b
y v
endor
Managed b
y v
endor
You m
anage
You m
anage
Private(On-Premise)
Types of Clouds
Infrastructure
(as a Service)
Platform(as a
Service)
Abstract Resources
Private Cloud(on-premise)
Physical Resources
Public Cloud(off-premise)
Customizability Ease of Provisioning
Global ReachSecurity & Privacy
Real-Time Performance Redundancy & Resiliency
Scalability & AvailabilityConsistency & Control
A Hybrid World
HomogeneityHeterogeneity
The Microsoft Cloud~100 Globally Distributed Data Centers
Quincy, WA Chicago, IL San Antonio, TX Dublin, Ireland Generation 4 DCs
Platform Services
Software Services
Application Services
Infrastructure Services
The Microsoft CloudCategories of Services
Windows Azure Platform Internet-scale, highly available cloud fabric Globally distributed Microsoft data centers (ISO/IEC 27001:2005 and SAS
70 Type I and Type II certified) Consumption and usage-based pricing; enterprise-class SLA commitment
Compute – auto-provisioning 64-bit application containers in Windows Server VMs; supports a wide range of application models
Storage – highly available distributed table, blob, queue, & cache storage services
Languages – .NET 3.5 (C#, VB.NET, etc.), IronRuby, IronPython, PHP, Java, native Win32 code
Data – massively scalable & highly consistent distributed relational database; geo-replication and geo-location of data
Processing – relational queries, search, reporting, analytics on structured, semi-structured, and unstructured data
Integration – synchronization and replication with on-premise databases, other data sources
Service Bus – connectivity to on-premises applications; secure, federated fire-wall friendly Web services messaging intermediary; durable & discoverable queues
Access Control – rules-driven federated identity; AD federation; claims-based authorization
Workflows – declarative service orchestrations via REST-based activities
Pricing
Compute• $0.12 / CPU hour
Storage• $0.15 / GB / month
• $0.01 / 10k transactions / month
Bandwidth• $0.10 in / GB
• $0.15 out / GB
Web Edition (1GB)• $9.99 / month
Business Edition (10GB)• $99.99 / month
Bandwidth• $0.10 in / GB
• $0.15 out / GB
Service Bus• $0.15 / 100k
messages
Access Control• $0.15 / 100k tokens
Bandwidth• $0.10 in / GB
• $0.15 out / GB
Virtual Machine instances
Load balancers, routers, etc.Automated service management
- Fabric controller operations (deploy/upgrade/delete/scale)
- Load balancer programming
Blob StorageTable StorageMultiple replicas
Ingress/Egress (to/from internet only)
Host OS Windows Server 2008 x64Guest OS Windows Server 2008 Enterprise x64
Hypervisor Hyper-VCPU 1.5 - 1.7 GHz x64 equivalent
Memory 1.7GBNetwork 100Mbps
Transient storage 250GB
Compute connectivit
y
Your service is connected and reachable via web
Internet facing roles will have external connectivity
>99.95%
Database availability
Database is connected to the internet gateway
Availability monitoring every 5-minute interval
Storage servicewill be available/ reachable (connectivity)
Your storage requests willbe processed successfully
>99.9%
Storage availability
>99.9%
.NET Service Bus endpoint willhave external connectivity
Message operation requests willbe processed successfully
Serviceavailability
>99.9%
All runningroles will be continuously monitored
If role is unhealthy, we will detect and initiate corrective state
Automated Systems
Management
Service Guarantee
Role instance
monitoring and restart
Benefits
BUSINESSDEMANDS
TECHOLOGYDEMANDS
WINDOWS AZURE PLATFORM OFFERS
• Cost-effective solution to manage IT resources
• Less infrastructure to buy/configure and support
• Lower TCO• Predictable cost
• Focus on delivering compelling software not on managing infrastructure
• Monetize new offering quickly without investment in billing and other enablement technologies.
• Speed of development• Interoperability • Leverage existing IP• Simplified deployment• Scale up or down as business needs
change• Go to market faster
• Reliable service• SLAs• Security• Global data centers
Lower costs Efficiency
Stay Competitive
Innovation
AgilityGenerate New
Revenue Quickly
ReliabilityReducedRisk
Platform of Choice
Sign up at the Windows Azure Platform developers’ portal
Windows Azure accessDeveloper tools White papersSample applications
Plan pilot applications, proofs of concept, and architectural design sessions with Windows Azure partners
http://www.azure.com
Application Architecture
Application Models
Web Hosting Massive scale infrastructure
Burst & overflow capacity
Temporary, ad-hoc sites
Application Hosting On-premise extensions
Composite applications
Automated agents / jobs
Media Hosting & Processing CGI rendering
Content transcoding
Media streaming
Distributed Storage External backup and storage
High performance computing
Parallel & distributed processing
Massive modeling & simulation
Advanced analytics
Information Sharing Common data repositories
Reference data
Knowledge discovery & mgmt
Collaborative Processes Multi-enterprise integration
B2B & e-commerce
Supply chain management
Health & life sciences
Domain-specific services
Internet-Scale Application Architecture
Design Horizontal scaling
Service-oriented composition
Eventual consistency
Fault tolerant (expect failures)
Security Claims-based authentication
& access control
Federated identity
Data encryption & key mgmt.
Management Policy-driven automation
Aware of application lifecycles
Handle dynamic data schema and configuration changes
Data & Content
De-normalization
Logical partitioning
Distributed in-memory cache
Diverse data storage options (persistent & transient, relational & unstructured, text & binary, read & write, etc.)
Processes Loosely coupled components
Parallel & distributed processing
Asynchronous distributed communication
Idempotent (handle duplicity)
Isolation (separation of concerns)
Storage• Relational & transactional data• Federated databases• Unstructured, de-normalized data• Logical partitioning• Persistent file & blob storage• Encrypted storage
Connectivity• Message queues• Service orchestrations• Identity federation• Claims-based access control• External services connectivity
Presentation• ASP.NET C#, PHP, Java• Distributed in-memory cache
Services• .NET C#, Java, native code• Distributed in-memory cache• Asynchronous processes• Distributed parallel processes• Transient file storage
Internet-Scale Application Architecture
SERVICE BUS
ACCESS CONTRO
L
WORKFLOWS
User
Private Cloud
Public Cloud Services
Application Patterns
Table StorageService
Blob StorageService
QueueService
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
Web Svc(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
Jobs(Worker
Role)
SilverlightApplication
Web Browser
MobileBrowser
WPFApplication
Service Bus
Access Control Service
WorkflowService
UserData
ApplicationData
Reference Data
Cloud Web Application
Enterprise Data
Enterprise Web Svc
Enterprise Application
DataService
StorageService
IdentityService
ApplicationService
Enterprise Identity
User
Private Cloud
Public Services
Application Patterns
Table StorageService
Blob StorageService
QueueService
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
Web Svc(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
Jobs(Worker
Role)
SilverlightApplication
Web Browser
MobileBrowser
WPFApplication
Service Bus
Access Control Service
WorkflowService
UserData
Application Data
Reference Data
Composite Services Application
Enterprise Data
Enterprise Web Svc
Enterprise Application
DataService
StorageService
IdentityService
ApplicationService
Enterprise Identity
User
Private Cloud
Public Services
Application Patterns
Table StorageService
Blob StorageService
QueueService
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
Web Svc(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
Jobs(Worker
Role)
SilverlightApplication
Web Browser
MobileBrowser
WPFApplication
Service Bus
Access Control Service
WorkflowService
UserData
Application Data
Reference Data
Cloud Agent Application
Enterprise Data
Enterprise Web Svc
Enterprise Application
DataService
StorageService
IdentityService
ApplicationService
Enterprise Identity
User
Private Cloud
Public Services
Application Patterns
Table StorageService
Blob StorageService
QueueService
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
Web Svc(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
Jobs(Worker
Role)
SilverlightApplication
Web Browser
MobileBrowser
WPFApplication
Service Bus
Access Control Service
WorkflowService
UserData
Application Data
Reference Data
B2B Integration Application
Enterprise Data
Enterprise Web Svc
Enterprise Application
DataService
StorageService
IdentityService
ApplicationService
Enterprise Identity
User
Private Cloud
Public Services
Application Patterns
Table StorageService
Blob StorageService
QueueService
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
Web Svc(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
Jobs(Worker
Role)
SilverlightApplication
Web Browser
MobileBrowser
WPFApplication
Service Bus
Access Control Service
WorkflowService
UserData
Application Data
Reference Data
Grid / Parallel Computing Application
Enterprise Data
Enterprise Web Svc
Enterprise Application
DataService
StorageService
IdentityService
ApplicationService
Enterprise Identity
User
Private Cloud
Public Services
Application Patterns
Table StorageService
Blob StorageService
QueueService
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
Web Svc(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
ASP.NET(Web Role)
Jobs(Worker
Role)
SilverlightApplication
Web Browser
MobileBrowser
WPFApplication
Service Bus
Access Control Service
WorkflowService
UserData
Application Data
Reference Data
Hybrid Enterprise Application
Enterprise Data
Enterprise Web Svc
Enterprise Application
DataService
StorageService
IdentityService
ApplicationService
Enterprise Identity
BUSINESSES CONSUMERS
INTERNET
Windows Azure Architecture
Fabric
Compute Storage
Fabric controller
The Fabric Controller communicates with every server within the Fabric. It manages Windows Azure, monitors every application, decides where new applications should run – optimizing hardware utilization.
Windows Azure Architecture
Computation provides application scalability. Developers can build a combination of web and worker roles. Those roles can be replicated as needed to scale the applications and computational processing power.
Storage Services allow customers to scale to store large amounts of data – in any format – for any length of time, only paying for what they use or store.
The Fabric Controller automates load balancing and computes resource scaling
Security and Control Features include storage encryption, access authentication, and over-the-wire encryption using HTTPS. Industry certification is part of the Windows Azure roadmap.
Geographically distributed, state-of-the-art data centers host your applications and data, internet-accessible from everywhere you choose to allow.
Windows Azure Architecture
Interacts with a “Fabric Agent” on each machine
Monitors every VM, application and instance
Performs load balancing, check pointing and recovery
Windows Azure ArchitectureFabric Controller
GOAL:SCALABILITYScale out by replicating worker instances as needed.
Allow applications to scale user and compute processing independently.
Two instance types: Web Role & Worker RoleWindows Azure applications are built with web role instances, worker role instances, or a combination of both.
Each instance runs on its own VM (virtual machine), replicated as needed
Windows Azure ArchitectureCompute
GOAL:SCALABLE, DURABLE STORAGE
Windows Azure storage is an application managed by the Fabric Controller
Windows Azure applications can use native storage or SQL Azure
Application state is kept in storage services, so worker roles can replicate as needed
Blobs: large, unstructured data (audio, video, etc)
Tables: simply structured data, accessed using ADO.NET Data Services
Queues: serially accessed messages or requests, allowing web-roles and worker-roles to interact
Windows Azure ArchitectureStorage
GOAL:AUTOMATED APPLICATION MANAGEMENT AND CONTROL
Fabric
The Fabric Controller automates service management
Windows Azure ArchitectureServices Management
Value Propositions :• XSPs, Server Ops• SQL CLR• 100% compatibility
Reso
urc
es
Dedicated
Shared
Low High“Friction”/Control
SQL Azure Database (RDBMS)
Hosted RDBMS
SQL Server
Value Propositions:• Auto HA, Fault-Tolerance• Friction-free scale• Self-provisioning• High compatibility
• Virtual DB server• Logical user database
(LUDB)• Resource governance @
LUDB• Security @LUDB
• Hosted SQL Server• Resource governance
@ VM• Security @ SQL
Server/OS
Roll-your-own HA/DR/scale
• SQL Server on-premises• Resource governance @
machine• Security @ SQL
Server/OS
Roll-your-own HA/DR/scale
Value Propositions :• Full h/w control –
size/scale• 100% compatibility
Data Storage Options
SQL Azure Architecture
SQL Azure
TDS + TSQL Model
Web App
SQL Client*
Windows Azure
BrowserApplicatio
n
Application
REST Client
REST(Astoria)
ADO.Net +EF
Application
SQL Client*
Cloud
HTTP
HTTP+
RES
T
TD
S
* Client access enabled using TDS for ODBC, ADO.Net, OLEDB, PHP-SQL, Ruby, …
Data
Cente
r
ODBC, OLEDB, ADO.Net PHP, Ruby, …
Flexible access to data in the cloud
• Create client applications that access data in the cloud via TDS – just like on-premise SQL Server
• Create cloud-based Web applications in Azure that use standard SQLClient libraries with ADO.NET
• Create cloud-based REST data interfaces in Azure with ADO.NET Data Services and the Entity Framework
Low friction data storage provisioning
• Web interface for simple, database provisioning
• Scale seamlessly as needed
Self-managing data center• Automated maintenance
• Built in high-availability and data recoverability
Simple storage and hosted RDBMS
• Goal: A storage platform built for extreme scale and low cost
• Architecture:– An Azure account provides
access to SQL Azure– Each account can have one
or more logical server• Implemented as multiple physical
servers within a given geo-location
– Each logical server can contain one or more logical database• Implemented as replicated
partitioned data across multiple physical databases
AccountAzure wideBilling instrument
ServerDatabase metadataUnit of authorizationUnit of geo-location
DatabaseUnit of consistencyContains Users, Tables, Views, etc…
Has one or more
Has one or more
Data Platform Design
Scalability and Availability: Fabric, Failover, Replication, and Load balancing
• Uses shared infrastructure at SQL database and below– Each user database is replicated to one or more servers (configurable based on SLA)– Client requests are routed to current “primary server” for read and write operations (based on SQL
session)– Security, lockdown and isolation enforced in SQL tier
• Highly scalable and state-of-the-art HA technology– Automatic failure detection; client request re-routed to new primary on failure – High SLA guarantee using logical replication (hot standby replicas)– Automatic management, self-healing and load balancing across shared resource pool
• SQL Azure Database provides provisioning, metering and billing infrastructure
Machine 5
SQL Instance
SQL DBUserDB1
UserDB2
UserDB3
UserDB4
SQL Azure Database Provisioning (databases, accounts, roles, …, Metering, and Billing
Machine 6
SQL Instance
SQL DBUserDB1
UserDB2
UserDB3
UserDB4
Machine 4
SQL Instance
SQL DBUserDB1
UserDB2
UserDB3
UserDB4
DBA role will change to focus on policy/logical management
Logical User Databases
• Connect using common client libraries– ADO.NET, OLE DB, ODBC, etc.
• Clients connect to a database directly• Cannot hop across DBs• Large surface of SQL supported within the database
boundary– Future work will relax many of these constraints
Security
Connections
Security and Connection Models
• Uses regular SQL security model– Authenticate logins, map to users and roles
– Authorize users and roles to SQL objects
• Supports standard SQL logins– Logins are username + password strings
– Service enforces use of SSL to secure credentials
– Future support for AD Federation, WLID, etc as alternate authentication protocols
• Account and server provisioning– Portal and API based access
– Ex: enumerate my servers, show server usage metrics, etc
• Each account has one or more servers– Ex: srv123.data.database.windows.net
• Each server has a virtual master database– Has subset of SQL Server master DB interface
• Each server has one or more SQL logins
– System creates sysadmin login on “server creation”
• Databases created using “CREATE DATABASE”– Can be called by sysadmin or anyone with create DB
permission
* *
Provisioning Model
• SQL Server has many patterns for accomplishing tasks– SQL Azure Database supports a subset of full
SQL Server patterns– Focus on logical and policy based administration– Patterns work in both SQL Azure Database and
SQL Server• Enables migration of on-premise application to/from SQL
Azure
• SQL Azure Database is a multi-tenant service– Throttling and load balancing policies– Examples: limit on DB size, duration of
transaction, …
In Scope for v1
• Create/Alter/Drop on Database/Index/View• Stored Procedures (Transact-SQL)• Triggers• Constraints• Table variables, session temp tables (#t)• + lots of others
Out of Scope for v1• CLR• Service Broker• Distributed Transactions• Distributed Query• Spatial• All server level DDL• All physical DDL and physical catalog
views
SQL Server Compatibility
Departmental Applications
Departmental workgroup applications with low concurrency and cyclical usage patterns
Web Applications
Small customers or start ups with Web applications of all scale that have simple RDBMS needs
Data Hubs
Secure data hubs that consolidate multiple data sources and enable access from multiple locations and devices
ISV/SaaS Offerings
Traditional ISVs extending offering or selling software hosted in the cloud (including SaaS ISVs)
Application Scenarios
Common patterns and problems• How can you use cloud services to connect apps and
services across deployment locations?– Bridge cloud, on-premises, and hosted assets– Navigate network and security boundaries, securely and simply– Handle identity and access across organizations and ID
providers– Interoperate across languages, platforms, standards– Perform protocol mediation and schema mapping
• Customers need a way to:
Connect endpoints Control & secure access
Service Bus Access Control
.NET Services provides solutionsfor developers facing those problems
Service Bus
•Expose RESTful or SOAP services over the internet through firewall and NAT boundaries•Communicate bi-directionally between apps and services in an interoperable manner•Choose relays, queues, routers, and other message patterns and types•Scale out naturally and reliably as apps and services grow
Access Control Service
•Authorization management and federation infrastructure•Provides internet-scope federated identity integration for distributed applications•Use it to•Secure Service Bus communications•Manage user-level access to apps across organizations and ID providers
Connect Endpoints
firewall NATfirewall
01
01
0
11
1
00
11
0
11
1
0101
0111
0011
0111
Your app Customer/partner app
01
01
0
11
1 0
01
1 0
11
1
01
01
0
11
1
00
11
0
11
1
Service Bus
.NET Services provides solutionsfor developers facing those problems
Service Bus
•Network abstraction and virtualization infrastructure•Enables many common shapes of communication in an efficient and interoperable manner•Use it to•Connect applications across any network topology, including firewalls and NAT boundaries•Exchange data between loosely coupled applications
Access Control Service
•Integrate authorization into apps to control “what users are allowed to do”•Federate with multiple identity systems across organizations and ID providers•Easily apply fine-grained access control rules•Secure Service Bus communications•Scale out naturally and reliably as apps and services grow
Control Access
4. Token
2. Claims
3. Map input claimsto output claims
5. Msg w/token
0. p
erio
dic c
ert e
xcha
nge
1. Define access control rules for a customer
6. Check claims
Your app Customer/partner users & apps
Access Control Service
Private Network Space
Service Bus: Core Capabilities
• Internet-scoped overlay-network bridging across IP NATs and Firewalls with federated access control – Network Listen/Send from any Internet-Connected Device– Internet-scoped, per-endpoint Naming and Discovery– NAT/FW Traversal via TCP, TCP/Direct, and HTTP Web
Streams
Internet Space
B
C
DA
ACS
ACS
ACS
ACS
ACS
Service Bus: Core Capabilities
• Transfer raw and structured data allowing for any common shape of communication– Raw Data, Text, XML, JSON, …– Datagrams, Sessions, Correlated Messages– Unicast, Multicast
Octet-Streams
Text
JSON …
XML
…
A B
A B
A B
SOAP
XML-RPC
…
Service Bus: Core Capabilities
• Built-In messaging primitives for temporally decoupled communication, routing, and message processing– Push/Pull translation for occasionally connected receivers– Publish/subscribe and message processing (after V1)
BAPush Pull
B
APush
C
DE
Push
Pattern: Notification Fan-Out(Sessionless Unicast or Multicast Datagrams)
Windows Azure, Datacenter, Hosting, Amazon EC2, Google App Engine
“Worker Role” App Instance
AppInstance
Client Client Client Client Client Client
NATs
multicast
unicastunicast
ACS
ACS AC
SACS
ACS
ACS
ACS
ACS
ACS
Pattern: REST Resource Management(Request/Response HTTP/HTTPS w/ arbitrary payloads)
Windows Azure, Datacenter, Hosting, Amazon EC2, Google App Engine
AppInstance
Storage
AppInstance
AppInstance
Storage
Storage
On-Premise App(s)
Cache
GET
POSTPUTDELETEPOST, PUT, DELETE
POST, PUT, DELETE POST, PUT, DELETE
On-Demand ‘Pull’ Sync
Continuous ‘Push’ Sync
ACS
ACS
ACSAC
S
ACS
In-House Outsourced
Pattern: Document Exchange(session-bound, app-level ack’d document transfers + notifications)
Hosted
E-CommerceFront
Storage
Inventory / ShippingSystem
OrderingSystem
Storage
Storage
Hi-Fi Client Experience
PO SO Shipped
Order AcceptedOrder Processed
Ready
Delivered
ACK ACK
Web Client Experience
ACS
ACS
ACS
ACS
ACS
Pattern: External DMZ(any communication style, secure NAT traversal for TCP & HTTP/S)
Home
Home Automation or Home Media Server
Storage
Devices
Web or Hi-Fi Client Experience
Internal Datacenter
Enterprise App Instance
Enterprise App
Instance
Enterprise App
Instance
Storage
Web or Hi-Fi Client Experience
Balance / Filter Reverse Proxy
Storage
net.
tcp/d
irect
htt
p(s
) /
net.
tcp AC
SACS
ACS
Pattern: Integrate “Anything” (session-bound, raw-binary transport tunneling)
Windows Azure, Datacenter, Hosting, Amazon EC2 (Windows)
AppInstance
On-Premise Data
NP Bridge
SQL Server
TDSPassthrough
ASP.NETADO.NET
NP Agent
ACS
On-Premise Infra
Socket Bridge
Exchange/Mail (SMTP/IMAP)Active Directory (LDAP)System Center (SNMP)
…
Socket Agent
ACS
SocketPassthrough
Apps & Services
HTTP Bridge
ERP, CRM, Custom Apps.NET, J2EE, ROR, PHP
…
J2EE, JDBC, JMS
HTTP/HTTPSPassthrough
w/ URI Rewriting
[email protected]/dachou
Thank you
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.