Title: Network Location Awareness Vision And Scenarios
1Network Location Awareness Vision And Scenarios
- Tracey Yao
- Program ManagerWindows Wireless
Networkingtraceyy _at_ microsoft.com - Microsoft Corporation
2Session Outline
- Introduction
- Scenarios
- Features
- Architecture
- Demo
- Resources
- QA
3Introduction
- Windows users are becoming more mobile
Applications must adapt to changing network
environments - The Windows Longhorn Network Location Awareness
(NLA) service provides the latest network
information - Applications can query or register with NLA for
network change indications
4Scenarios Longhorn
- User Friendly Connections UXThe updated
connections User Interface (UI) shows a user that
they are connected to ABC Corpnet whenever any of
the PCs interfaces are connected to ABCs
corporate network - Switch Default PrinterAs a user travels between
home and office, their default printer is
automatically switched - Opportunistic Certificate UpdateThe digital
identity management service opportunistically
connects to the domain controller to refresh
certificates that are about to expire - Switch Firewall ProfileThe users firewall
automatically applies the corporate profile when
it is connected to a corporate network - Reduced Boot TimeAt boot time, Group Policy
attempts to connect to the domain controller to
apply policy only when there is corporate
network connectivity
5Scenarios Opportunities
- Network Specific SettingsApplications can
associate settings with a specific network - Adapt to Bandwidth ChangesApplications can
adjust their network usage based on available
bandwidth and network latency - Opportunistic Use of InternetApplications can
check for internet capability before attempting
to use resources on the internet - Restrict Use of Corporate ApplicationsLine of
business applications can restrict access or
reduce functionality in the absence of corporate
network connectivity
6Planned Longhorn Features
7Network Signature
48 bytes
Hop ID
Link ID
Network ID
8Architecture
Firewall
RAS
ConnectionUX
App
App
App
Provided by
API Client
MS Core
Indicate network characteristics of choice
MS NLA Clients
NLA Service
ISV NLA Clients
React to network changes and collect network data
WirelessService
DNS
Directory Services
IPHelper
9Simple Internet Aware App
demo
10Demo
- This demonstration illustrates how network
location awareness (NLA) detects changes in
network connectivity - We implement a simple internet aware application
that uses NLA to display the network connectivity
state - We launch the application to show changes in
network connectivity
11Demo
- NLA Data
- NLA_TRI_STATE
- A NLA_TRI_STATE object can have a value of TRUE,
FALSE, or UNKNOWN. - NLA data with the NLA data type
NLA_DATA_TYPE_INTERNET_CAPABILITY are
NLA_TRI_STATE objects. - NLA_QUERY_FILTER
- This is used to construct a NLA filter. Filters
are used to specify the conditions that the NLA
data must satisfy before an application is to be
notified.
12Demo
- NLA Data
- NLA_COMPLETION
- This represents the mechanism in which an
application wants to be notified. NLA supports
notification through - Eventing
- Completion calls
- Overlapped structure
- Windows messages
13Demo
- NLA Application Programming Interface (API)
Functions - NlaRegisterQueryThis function allows an
application to register for notification with NLA - NlaGetInternetCapabilityThis function allows an
application to query for the internet capability
of a given network - NlaCloseQueryThis function closes the
application session with NLA
14Demo
- NLA API Supporting Functions
- NlaCreateTypeSetThis function creates a new type
set to be used in constructing the set and filter
for an NLA query - NlaCreateFilterThis function creates a filter to
be used in an NLA query - NlaAddToTypeSetThis function adds an NLA data
type to an existing type set - NlaNotEqualThis function creates an NOT EQUALS
expression to be used in an NLA filter - NlaDeleteFilterThis function deletes an existing
filter - NlaDeleteTypeSetThis function deletes an
existing type set
15Demo
NLA Service
Application Process
Construct NLA Filter (hFilter)
Construct NLA type set (hTypeSet)
hQ ? NlaRegisterQuery(hFilter, hTypeSet)
Build application context
Receive WM_NLA notification bInternet?
NlaGetInternetCapability(hQ)
Sense network events (cable connected)
Local RPC channel
Update network state
Send network change notifications to applications
Receive WM_NLA notification bInternet?
NlaGetInternetCapability(hQ)
Network state is monitored continuously Notificati
ons are delivered to each existent application
session
Application is continuously updated on the
network state, based on its needs
Cleanup context and terminate application session
NlaCloseQuery(hQ)
t
t
NLA data acquisition process NLA ? Application
interaction
16Simple Internet Aware App
demo
17Call To Action
- Determine how NLA can improve your application
experience - Read the NLA whitepapers
- Familiarize yourself with the network data types
and APIs your application needs - Post comments and questions on our blog
18NLA Specific Resources
- E-Mail nlafdbck _at_ microsoft.com
- Web Resources
- Whitepapers
- http//msdn.microsoft.com/library/default.asp?url
/library/en-us/dnlong/html/lhnla.asp - http//www.microsoft.com/whdc/system/platform/mobi
lepc/NLA.mspx - Blog http//blogs.msdn.com/nla/
- Related Sessions
- Track Networking
- Wireless Vision Windows Longhorn and Beyond
19Community Resources
- Community Sites
- http//www.microsoft.com/communities/default.mspx
- List of Newsgroups
- http//communities2.microsoft.com/communities/news
groups/en-us/default.aspx - Attend a free chat or Webcast
- http//www.microsoft.com/communities/chats/default
.mspx - http//www.microsoft.com/seminar/events/webcasts/d
efault.mspx - Locate a local user group(s)
- http//www.microsoft.com/communities/usergroups/de
fault.mspx - Non-Microsoft Community Sites
- http//www.microsoft.com/communities/related/defau
lt.mspx
20Community Resources
- Windows Hardware and Driver Central (WHDC)
- www.microsoft.com/whdc/default.mspx
- Technical Communities
- www.microsoft.com/communities/products/default.msp
x - Non-Microsoft Community Sites
- www.microsoft.com/communities/related/default.mspx
- Microsoft Public Newsgroups
- www.microsoft.com/communities/newsgroups
- Technical Chats and Webcasts
- www.microsoft.com/communities/chats/default.mspx
- www.microsoft.com/webcasts
- Microsoft Blogs
- www.microsoft.com/communities/blogs