Developers guide
Chapter 12: RAS (Remote Access Service)
Overview
Psion Teklogix Mobile Devices SDK Developers Guide 75
12.1 Overview
Microsoft Windows CE .NET and Windows Mobile provide support for a Remote Access Service
(RAS) server. You can use RAS in any computing environment that has a wide area network
(WAN) or a virtual private network (VPN). RAS makes it possible to connect a remote client com-
puter to a network server over a WAN or a VPN.
A Windows-based device can function as a RAS server that allows clients to connect to it using a
WAN connection.
A Windows-based RAS server can accept connections through any Network Driver Interface
Specification (NDIS) miniport in a WAN, including the Point-to-Point-Tunneling Protocol (PPTP)
and AsyncMAC miniports. AsyncMAC is an NDIS WAN miniport driver that manages the
sending and receiving of packets over TAPI devices. These devices include direct serial and
modem connections.
The RAS server implementation supports authentication through the Password Authentication
Protocol (PAP), Challenge Handshake Authentication Protocol (CHAP) and Microsoft Challenge
Handshake Authentication Protocol (MSCHAP). The Point-to-Point Protocol (PPP) supports 128-
bit and 40-bit encryption.
In Windows, a RAS server is configured through the registry and I/O control codes (IOCTLs).
Registry settings are used for boot-time configuration, and the IOCTLs are used for dynamic
information.
Unlike Windows 2000, the Windows versions supported by Psion Teklogix computers do not
support server callback or multilink connections. These Windows versions also do not support
user domains. In user credentials, you can specify the user name and password, but not the domain
name.
12.2 RAS Architecture
In the Windows networking architecture, the Windows-based device functioning as a RAS server
communicates directly with PPP. This corresponds with the underlying WAN miniport — either
PPTP or AsyncMAC — through Transmission Control Protocol/Internet Protocol (TCP/IP).
When PPP receives requests to send IP packets from TCP/IP, it passes the packet on to the Async-
MAC miniport. After receiving a packet from PPP, the AsyncMAC miniport performs the
asynchronous framing, and then forwards the packet to the TAPI device by calling Microsoft
Win32 serial APIs. When receiving a packet through the network, the AsyncMAC miniport strips
the asynchronous framing off the packet, verifies the Cyclic Redundancy Check (CRC), and
passes the packet to PPP through the NDIS layer.
In a VPN, the PPTP WAN miniport communicates directly with TCP/IP. After receiving a packet
that is addressed to the private network from TCP/IP, PPP performs the framing, and then for-
wards the packet to the PPTP WAN miniport. The PPTP WAN miniport encapsulates the
information contained in the packet header, and then reroutes the packet back to TCP/IP. IP then
attaches another header that contains the address of the PPTP server to the packet, and passes the
packet on to PPP. PPP forwards the packet to either the AsyncMAC WAN miniport or a local area
network (LAN) adaptor, such as an NE2000 adaptor. After receiving the packet over the network,
the PPTP server strips the PPTP header off the packet, and then passes the packet to PPP.