Architecture of the Routing and Remote Access Service
The architecture of the Routing and Remote Access service is shown in Figure 2.1.
Figure 2.1 Architecture of the Routing and Remote Access Service
Note
The Network Address Translation (NAT) component of the Routing and Remote Access service is not shown in Figure 2.1. NAT is not a routing protocol. For more information about how the NAT component interacts with Routing and Remote Access components and the TCP/IP protocol, see "Unicast IP Routing" in this book.
SNMP Agent
The Windows 2000 Routing and Remote Access service supports the Simple Network Management Protocol (SNMP) management information bases (MIBs) previously described in the "Features of the Routing and Remote Access Service" section earlier in this chapter.
Management Applications
Management applications for the Routing and Remote Access service include the Routing and Remote Access snap-in, available from the Administrative Tools folder and the Netsh command-line utility.
AAAA
A set of components that provides authentication, authorization, auditing, and accounting (AAAA) for the Routing and Remote Access service when it is configured for Windows authentication and Windows accounting. When the Routing and Remote Access service is configured for RADIUS authentication and accounting, the local AAAA components are not used.
The AAAA components are also used by the Internet Authentication Service (IAS).
DIM (Mprdim.dll)
The dynamic interface manager (DIM) is a component that:
Supports a remote procedure call (RPC) interface for SNMP-based management functions used by management utilities such as the Routing and Remote Access snap-in.
Loads configuration information from the Windows 2000 registry.
Communicates with the Connection Manager for demand-dial connections.
Communicates configuration information to the router managers (such as the IP Router Manager and IPX Router Manager).
Manages all routing interfaces including LAN, persistent demand-dial, and IP-in-IP interfaces
Connection Manager
A set of components that:
Manages WAN devices.
Establishes connections using TAPI.
Negotiates PPP control protocols, including Extensible Authentication Protocol (EAP).
Implements Multilink and Bandwidth Allocation Protocol (BAP).
TAPI
The Telephony Application Programming Interface, also known as Telephony API(TAPI), provides services to create, monitor, and terminate connections in a hardware-independent manner. Connection Manager uses TAPI to create or receive demand-dial connections. For more information about TAPI, see "Telephony Integration and Conferencing" in this book.
IP Router Manager (Iprtmgr.dll)
A component that:
Obtains configuration information from the DIM.
Communicates IP packet filtering configuration to the IP filtering driver.
Communicates IP routing configuration information to the IP forwarder in the TCP/IP protocol.
Maintains an interface database of all IP routing interfaces.
Loads and communicates configuration information to IP routing protocols (such as RIP for IP and OSPF supplied with Windows 2000).
Initiates demand-dial connections on behalf of routing protocols by communicating with the DIM.
IPX Router Manager (Ipxrtmgr.dll)
A component that:
Obtains configuration information from the DIM.
Communicates IPX packet filtering configuration to the IPX filtering driver.
Communicates IPX routing configuration information to the IPX forwarder driver.
Maintains an interface database of all IPX routing interfaces.
Loads and communicates configuration information to IPX routing protocols (RIP for IPX, SAP for IPX).
Initiates demand-dial connections on behalf of routing protocols by communicating with the DIM.
Unicast Routing Protocols
The Routing and Remote Access service provides the following unicast routing protocols.
RIP for IP (Iprip2.dll)
A component that:
Communicates RIP for IP learned routes with the Route Table Manager.
Uses Windows Sockets to send and receive RIP for IP traffic.
Exports management APIs to support MIBs and management applications through the IP Router Manager.
OSPF Routing Protocol (Ospf.dll)
A component that:
Communicates OSPF learned routes with the Route Table Manager.
Uses Windows Sockets to send and receive OSPF traffic.
Exports management APIs to support MIBs and management applications through the IP Router Manager.
RIP for IPX (Ipxrip.dll)
A component that:
Communicates RIP for IPX learned routes with the Route Table Manager.
Uses Windows Sockets to send and receive RIP for IPX traffic.
Exports management APIs to support MIBs and management applications through the IPX Router Manager.
SAP for IPX (Ipxsap.dll)
A component that:
Communicates SAP for IPX learned services with the Route Table Manager.
Uses Windows Sockets to send and receive SAP for IPX traffic.
Exports management APIs to support MIBs and management applications through the IPX Router Manager.
IP Multicast Protocols
The Routing and Remote Access service provides the following IP multicast protocol.
IGMP Version 1 and 2
A component that:
Communicates multicast group membership information to the Multicast Group Manager.
Uses Windows Sockets to send and receive IGMP traffic.
Exports management APIs to support MIBs and management applications through the Multicast Group Manager.
Route Table Manager (Rtm.dll)
A component that:
Maintains a user mode route table for all routes for those protocols being routed (IP and IPX). The route table includes all routes from all possible route sources.
Exposes APIs for adding, deleting, and enumerating routes that are used by the routing protocols.
Ages learned routes.
Communicates only the best routes to the appropriate forwarder driver. The best routes are the routes with the lowest preference level (for IP routes) and lowest metrics. The best routes become the routes in the IP forwarding table and the IPX forwarding table.
Multicast Group Manager
A component that:
Maintains all multicast group memberships.
Communicates multicast forwarding entries (MFEs) in the IP multicast forwarder.
Reflects group membership between IP multicast routing protocols.
IP Filtering Driver (Ipfltdrv.sys)
A component that:
Obtains configuration information from the IP Router Manager.
Applies IP filters after the IP forwarder has found a route.
IP Unicast Forwarder
A component of the TCP/IP protocol (Tcpip.sys) that:
Obtains configuration information from the IP Router Manager.
Stores the IP forwarding table, a table of the best routes obtained from the route table manager.
Can initiate a demand-dial connection.
Forwards unicast IP traffic.
IP Multicast Forwarder
A component of the TCP/IP protocol (Tcpip.sys) that:
Stores multicast forward entries (MFEs) obtained from IP multicast routing protocols through the Multicast Group Manager.
Based on multicast traffic received, communicates new [source, group] information to the Multicast Group Manager.
Forwards IP multicast packets.
IPX Filtering Driver (Nwlnkflt.sys)
A component that:
Obtains configuration information from the IPX Router Manager.
Applies IPX filters after the IPX forwarder driver has found a route.
IPX Forwarder Driver (Nwlnkfwd.sys)
A component that:
Obtains configuration information from the IPX Router Manager.
Stores the IPX forwarding table, a table of the best routes obtained from the route table manager.
Can initiate a demand-dial connection.
Forwards IPX traffic.