|
1 <?xml version="1.0" encoding="utf-8"?> |
|
2 <!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. --> |
|
3 <!-- This component and the accompanying materials are made available under the terms of the License |
|
4 "Eclipse Public License v1.0" which accompanies this distribution, |
|
5 and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". --> |
|
6 <!-- Initial Contributors: |
|
7 Nokia Corporation - initial contribution. |
|
8 Contributors: |
|
9 --> |
|
10 <!DOCTYPE concept |
|
11 PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"> |
|
12 <concept id="GUID-BF4E220C-2388-517B-87D8-78AB1EA6382E" xml:lang="en"><title>Architecture</title><shortdesc>This topic describes the Network Interface Manager (NifMan) architecture. </shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody> |
|
13 <section id="GUID-43AC7095-C84C-401F-A1C9-084A56A47ED5"><title>NifMan Architecture</title> <p>The following diagram outlines |
|
14 the main components in the NifMan architecture: </p> <fig id="GUID-71FB9DE6-1171-5486-9480-8A8A6A8F0B29"> |
|
15 <image href="GUID-15F209D1-6BC6-5207-B443-25306C232CFC_d0e116318_href.png" placement="inline"/> |
|
16 </fig> <p>As shown, the NIFMAN configuration daemon architecture consists |
|
17 of two parts: </p> <ul> |
|
18 <li id="GUID-E2F1FCB0-9A25-52ED-BD80-4C91E271F099"><p>An ECom plug-in for |
|
19 NIFMAN </p> <p>The ECom plug-in manages the interface between NIFMAN and the |
|
20 configuration daemon. The ECom plug-in is referred to as the configuration |
|
21 daemon manager. </p> </li> |
|
22 <li id="GUID-335CBA17-63CF-5309-AA5B-009A3CC6198C"><p>The configuration daemon </p> <p>The |
|
23 configuration daemon is a Symbian platform server that runs in |
|
24 its own process. It does not run in the NIFMAN thread. Licensees can write |
|
25 new configuration daemons. </p> </li> |
|
26 </ul> <p>The framework for configuration daemons support the following: </p> <ul> |
|
27 <li id="GUID-5B004464-1411-5CDC-8504-0AEE9AFFCA82"><p>Deregistration events </p> <p>Deregistration |
|
28 events notify the daemon when the interface is shutting down. For Mobile IP, |
|
29 the phone can deregister its foreign agent address with the home agent. </p> <p>Alternatively, |
|
30 the daemon can instruct NIFMAN to maintain the logical state of a user session |
|
31 and release the resources associated with the wireless connection. This is |
|
32 called fast dormant mode. </p> </li> |
|
33 <li id="GUID-9D5648A1-0683-5B27-90CD-3C0836CAF09E"><p>Progress notifications </p> <p>Mobile |
|
34 IP reports progress notifications when it registers and deregisters with the |
|
35 foreign agent. The notifications are passed by NIFMAN to the sockets client |
|
36 using <codeph>RConnection::ProgressNotification()</codeph>, for the current |
|
37 interface. </p> </li> |
|
38 </ul> <p>The configuration daemon manager handles one outstanding daemon request |
|
39 at a time. If a request is already being processed, NIFMAN queues a deregistration |
|
40 request which is processed when the previous request is complete. Other types |
|
41 of request are not queued. This permits the handling of the following scenarios: </p> <ul> |
|
42 <li id="GUID-CDD25CFF-B4B1-5472-91C8-45EC27D6AF89"><p>Deregistration notification |
|
43 during registration. </p> </li> |
|
44 <li id="GUID-24E5A80D-50A3-5BAA-9B78-07C0872491E5"><p>Deregistration notification |
|
45 during an Ioctl request. </p> </li> |
|
46 <li id="GUID-8859117E-F118-5C21-B0F2-AB327A3C3C72"><p>Deregistration notification |
|
47 when the daemon is being requested to enter fast dormant mode. </p> </li> |
|
48 </ul> </section> |
|
49 </conbody><related-links> |
|
50 <link href="GUID-F8482AFB-BD49-5EF2-8092-EAA11862F9C4.dita"><linktext>What is Network |
|
51 Interface Management (NifMan)?</linktext></link> |
|
52 </related-links></concept> |