U.S. patent application number 12/766878 was filed with the patent office on 2011-10-27 for apparatus, and associated method, for synchronizing directory services.
This patent application is currently assigned to RESEARCH IN MOTION LIMITED. Invention is credited to Joseph Daniel Burjoski.
Application Number | 20110264621 12/766878 |
Document ID | / |
Family ID | 44816650 |
Filed Date | 2011-10-27 |
United States Patent
Application |
20110264621 |
Kind Code |
A1 |
Burjoski; Joseph Daniel |
October 27, 2011 |
APPARATUS, AND ASSOCIATED METHOD, FOR SYNCHRONIZING DIRECTORY
SERVICES
Abstract
An apparatus, and an associated method, synchronizes directory
services based on group membership. A synchronization scope is
defined by the group membership to a specified nesting level of
nestable groups. Groups within the synchronization scope are
fetched and de-nested. And, once fetched, the members of the
fetched and de-nested groups are fetched. The fetched object names
are used to update the destination directory service.
Inventors: |
Burjoski; Joseph Daniel;
(Waterloo, CA) |
Assignee: |
RESEARCH IN MOTION LIMITED
WATERLOO
CA
|
Family ID: |
44816650 |
Appl. No.: |
12/766878 |
Filed: |
April 24, 2010 |
Current U.S.
Class: |
707/610 ;
707/E17.005 |
Current CPC
Class: |
H04L 61/1552 20130101;
H04L 61/1523 20130101; H04L 29/12132 20130101; H04L 67/1095
20130101 |
Class at
Publication: |
707/610 ;
707/E17.005 |
International
Class: |
G06F 17/30 20060101
G06F017/30 |
Claims
1. An apparatus for facilitating directory synchronization of a
first set of source directory services with a corresponding set of
destination directory services in accordance with a synchronization
scope, directory object being nestable, said apparatus comprising:
a group fetcher configured to fetch, responsive to initiation
information, and to de-nest each nestable group of directory
objects within the synchronization scope, an object fetcher
configured to fetch an identification of directory objects of each
de-nested group of directory objects fetched and de-nested by said
group fetcher.
2. The apparatus of claim 1 wherein the synchronization scope
comprises nesting level information, and wherein said group fetcher
is configured to fetch each group of the nestable groups to a
nesting level identified by the nesting level information.
3. The apparatus of claim 1 wherein the synchronization scope
comprises scope group identification and wherein said group fetcher
is configured to fetch each group identified by said scope group
identification to a specified nesting level.
4. The apparatus of claim 1 further comprising a watermark fetcher
configured to fetch a watermark reference for each destination
directory service of the first set.
5. The apparatus of claim 4 further comprising a memory element
configured to store the watermark reference fetched by said
watermark fetcher.
6. The apparatus of claim 4 wherein said object fetcher is
configured to fetch an identification of changed directory objects
of each de-nested group of directory objects fetched and de-nested
by said group fetcher.
7. The apparatus of claim 6 wherein said object fetcher is
configured to fetch an identification of changed directory objects
that are above the watermark reference of each destination
directory service.
8. The apparatus of claim 4 wherein the first set of source
directory services comprises a plurality of source directory
services, wherein said watermark fetcher fetches a plurality of
watermark references, and wherein said object fetcher is configured
iteratively to fetch identifications of changed directory objects
above water mark references of the plurality of source directory
services.
9. The apparatus of claim 1 wherein said object fetcher is
configured to fetch an identification of each directory object of
each de-nested group of directory objects fetched and de-nested by
said group filter.
10. The apparatus of claim 1 further comprising a destination
updater configured to update the corresponding set of destination
directory services responsive to fetching by said object fetcher of
the directory objects of each de-nested group.
11. The apparatus of claim 10 wherein said destination updater is
configured to update the corresponding set of destination directory
services with changed directory objects.
12. The apparatus of claim 10 wherein said destination updater is
configured to update the corresponding set of destination directory
services to create additional directory objects at the
corresponding set of destination directory services.
13. The apparatus of claim 10 wherein said destination updater is
configured to update the corresponding set of destination directory
services to delete removed directory objects at the corresponding
set of destination directory services.
14. A method for facilitating directory synchronization of a first
set of source directory services with a corresponding set of
destination directory services in accordance with a synchronization
scope, directory object groups being nestable, said method
comprising: fetching each nestable group of directory objects
within the synchronization scope; de-nesting the nestable groups
fetched during said fetching; fetching an identification of
directory objects of each de-nested group of directory objects.
15. The method of claim 14 further comprising a watermark reference
for each destination directory service of the first set.
16. The method of claim 14 wherein said fetching the identification
of the objects comprises fetching an identification of changed
directory objects of each de-nested group of directory objects
fetched and de-nested by said group fetcher.
17. The method of claim 16 wherein said fetching the identification
of the object comprises fetching an identification of changed
directory objects that are above the watermark reference of each
destination directory service.
18. The method of claim 14 wherein said fetching the identification
of the object comprises fetching an identification of each
directory object of each de-nested group of fetched directory
objects.
19. The method of claim 14 further comprising updating the
corresponding set of destination directory services responsive to
fetching the directory objects of each de-nested group.
Description
[0001] The present disclosure relates generally to a manner by
which to synchronize a source directory service with a destination
directory service. More particularly, the present disclosure
relates to an apparatus, and an associated methodology, by which to
synchronize directory services in which the scope of
synchronization is based upon group membership.
[0002] De-nesting of nested groups is performed, and updating of a
destination directory service is performed using directory objects
of the de-nested groups.
BACKGROUND
[0003] Business, and other, enterprises make use of directory
services related to enterprise operations. Directory services are
created and maintained for various purposes within the enterprise.
More generally, a directory service is a software system that
stores information. A directory service is typically configured in
a manner so that the stored information can readily be looked-up.
While a directory service is used to store any of many varied types
of information, a common usage of a directory pertains to the
storage and retrieval of user identities for the purpose of
authentication and authorization.
[0004] An existing protocol, referred to as LDAP (Lightweight
Directory Access Protocol), is a frequently-used protocol by which
to query and to update information in a directory. Entries stored
in the directory are referred to as objects or members. Each object
has an associated set of named attributes/value pairs.
[0005] An Active Directory.TM. (AD) is an example of a LDAP
directory service that stores identity, and other, information.
Examples of directory services sometimes used by an enterprise
include a directory service used to store employee payroll
information and a directory service used to store email
information. The different directory services sometimes store the
same identity information, such as the first and last name of
enterprise personnel. That is to say, the different directory
services sometimes contain common identity information. A directory
service is sometimes created through keyboard entry of the identity
information and other associated information of the directory
service. When there are large numbers of objects, the entry of the
required information quickly becomes a time-consumptive operation.
The objects of the directory services are susceptible to change
over time, and the directory services must be updated to reflect
the changes. For example, when existing personnel depart an
enterprise or additional personnel become part of the enterprise,
the directory services must be updated to reflect the changes.
[0006] Directory synchronization services are available that
provide for the sharing of the common identity information and
subsequent synchronization of the common information due to changes
in the objects. A directory synchronization service, sometimes
software-implemented, functions to aggregate and to synchronize
identity information between the multiple directory services. When,
for example, two directory services are connected by a directory
synchronization service and a new identity is created at one of the
directory services, the directory synchronization service functions
automatically to create an equivalent identity in the other of the
directory services. Analogously, when an existing identity is
deleted from one of the directory services, the directory
synchronization service functions automatically to delete the
corresponding identity in the other of the directory services. And,
when an attribute of an identity changes in one of the directly
services, the directory synchronization service functions
automatically to update the value of the attribute for the
corresponding identity of the other directory service.
[0007] A complicating factor in directory synchronization service
operation is that in some situations, not every identity in each of
the directory services should be synchronized with one another. By
way of an example, in an enterprise, sometimes, only a portion of
the enterprise personnel are granted email privileges. In a
directory synchronization service that synchronizes an email
directory service with a directory service that includes the
entire, enterprise personnel, the directory synchronization service
should not synchronize all of the objects of both of the directory
services. A directory synchronization service, in a scenario such
as this, must provide a mechanism by which to define an appropriate
set of identities that are to be synchronized between directory
services by the directory synchronization service. This is
sometimes referred to as the scope of synchronization. LDAP
directory services sometimes establish the scope of synchronization
by designating an attribute to be of a particular value. For
example, a directory synchronization service is sometimes
configured to synchronize all users that have an email address. In
this example, the scope of synchronization is defined by an LDAP
search filter "mail=*" used in the synchronization operation to
distinguish between personnel that have an email address and
personnel that do not have an email address.
[0008] Directory services also sometimes store information about
groups. A group is a directory object that has a multi-value
attribute to represent membership. Existing directory
synchronization services are generally unable to establish a scope
of synchronization using group membership as membership in a group
is an attribute of the group, not the member. Also, group
membership is nestable, and a single group can contain members that
belong to more than one directory service.
[0009] It is in light of this background information related to
directory synchronization services that the significant
improvements of the present disclosure have evolved.
BRIEF DESCRIPTION OF THE DRAWINGS
[0010] FIG. 1 illustrates a scheme including a directory
synchronization service of an embodiment of the present
disclosure.
[0011] FIG. 2 illustrates a functional block diagram of a directory
synchronization service apparatus of an embodiment of the present
disclosure.
[0012] FIG. 3 illustrates a process diagram representative of the
process of operation of an embodiment of the present
disclosure.
[0013] FIG. 4 illustrates a process diagram, similar to that shown
in FIG. 3, but representative of alternate, example operation of an
embodiment of the present disclosure.
[0014] FIG. 5 illustrates an example system in which the directory
synchronization service apparatus shown in FIG. 1 forms a
portion.
DETAILED DESCRIPTION
[0015] The present disclosure, accordingly, advantageously provides
an apparatus, and an associated methodology, by which to
synchronize a source directory service with a destination directory
service.
[0016] Through operation of an embodiment of the present
disclosure, a manner is provided by which to synchronize directory
services in which the scope of synchronization is based upon group
membership.
[0017] In one aspect of the present disclosure, de-nesting of
nested groups is performed, and updating of a destination directory
service is performed using directory objects of the de-nested
groups.
[0018] In another aspect of the present disclosure, group
membership establishes the scope of synchronization for a directory
synchronization service to synchronize objects of one directory
with another directory. By establishing the scope of
synchronization based upon group membership, a system administrator
is able merely to add an identity to the group in the source
directory, which automatically causes creation of the added
identity in the destination directory pursuant to synchronization
of the directory services. And, when an identity is to be removed,
the system administrator merely removes the identity from the
special group in the source directory, thereby automatically to
delete the identity from the destination directory pursuant to
synchronization operations.
[0019] In another aspect of the present disclosure, a manner is
provided by which to synchronize objects of an LDAP directory
service based upon group membership. Group-based synchronization to
an LDAP directory service, such as ACTIVE DIRECTORY (AD is
performed. In one implementation, the directory synchronization
service synchronizes the LDAP directory service, such as ACTIVE
DIRECTORY with a destination directory positioned at an application
mobile device servicing system positioned in communication
connectivity with a mobile device of a mobile radio communication
system. Although ACTIVE DIRECTORY, a commercial implementation of a
directory service, is mentioned herein, the subject matter of this
disclosure could be used in conjunction with any appropriate
directory service, including but not limited to directory services
complying with the LDAP protocol.
[0020] In another aspect of the present disclosure, the directory
synchronization service provides for full-scan synchronization. In
a full-scan synchronization, the directory synchronization service
carries out a complete resynchronization of all objects within the
scope of the synchronization from the source directory service to
the destination directory service. Pursuant to a full-scan
synchronization operation, all of the objects within the scope of
the synchronization are fetched from a source directory service and
used to update a destination directory service. At the end of a
full-scan synchronization, a high-water mark associated with a
directory service is ascertained and stored.
[0021] In another aspect of the present disclosure, delta-scan
synchronization is provided. In a delta-scan synchronization
operation, a partial resynchronization of directory services is
performed. In a partial resynchronization operation, only objects
that are within the scope of the synchronization and that have
changed in the source directory since a previous synchronization
operation are updated at the destination directory service. A
delta-scan synchronization makes use of high-water marks, which
indicate current points of synchronization. Subsequent to each
delta-scan synchronization operation, a high-water mark associated
with a directory service is ascertained and stored. This value of
the high-water mark is stored and subsequently accessed, used for a
starting point in the determination of subsequent changes to
objects of the source directory service.
[0022] In another aspect of the present disclosure, a scope of
synchronization is utilized pursuant to the synchronization
operations performed by a directory synchronization service. The
scope of synchronization includes synchronization scope
information, such as scope group information and nesting level
information. The scope group information identifies a group in the
source directory service that is used to establish the scope of
synchronization by membership in the group. And, the nesting level
information identifies the nesting level, i.e., the number of
levels of nested group membership that are to be within the scope
of synchronization.
[0023] In another aspect of the present disclosure, full-scan
synchronization operations are performed responsive to a scan
initiation, such as that initiated by a control element forming a
scan initiator. The scan is initiated automatically, such as at
timed intervals or responsive to another triggering event. The scan
is dependent upon the synchronization scope, which is defined,
e.g., by identification of a scope group and identification of the
nesting level, in the example implementation, an integer value. The
synchronization scope, in one implementation, includes more than
one scope group. For each scope group, all nested groups, to the
specified nesting level, are retrieved and stored, sorted by the
domain to which the groups belong. Then, the unique name, or other
identity, of every object within the synchronization scope is
retrieved. The identity is obtained by iterating over each
de-nested scope group of each domain. The retrieved identities are
sorted by domain and stored. Then the stored values are used to
update the destination directory service.
[0024] In another aspect of the present disclosure, delta-scan
synchronization operations are performed starting at directory
service locations identified by previous high-water marks of each
directory service. Nested groups, to the specified nesting level,
are retrieved and stored, sorted by the domain to which the groups
belong. And, for each scope group, changed members are retrieved,
sorted, and stored. These changed identities are used to update the
destination directory.
[0025] Inter alia, the operation of de-nesting upon nested groups
to a specified level of nesting, pursuant to the synchronization
operation, makes possible the synchronization based upon group
membership.
[0026] In these and other aspects, therefore, an apparatus, and an
associated method, is provided for facilitating directory
synchronization of a first set of source directory services with a
corresponding set of destination directory services in accordance
with a synchronization scope. Directory object groups are nestable.
A group fetcher is configured to fetch, responsive to initiation
information, and to de-nest each nestable group of nestable
directory objects within the synchronization scope. An object
fetcher is configured to fetch an identification of directory
objects of each de-nested group of directory objects fetched and
de-nested by the group fetcher.
[0027] Referring first to FIG. 1, an example scheme, shown
generally at 110, functionally illustrates a directory
synchronization service 114 that operates to synchronize objects of
a first set of source directory services 116 with a corresponding
set of destination directory services 122. A single source
directory service 116 and a single destination directory service
122 are shown in FIG. 1 for purposes of simplicity. The sets of
directory services 116 and 122 in other example implementations
comprise multiple numbers of directory services.
[0028] The directory synchronization service synchronizes objects
of the source directory service 116, which are within the scope of
the synchronization, with corresponding objects of the destination
directory service 122. The source directory 116 here forms an LDAP
directory service that provides an LDAP interface with the
directory synchronization service 114. In operation, the directory
synchronization service causes an LDAP search, indicated by arrow
126 to be performed and results to be provided, indicated by the
segment 132, by the source directory service to the directory
synchronization service. Once obtained, the directory
synchronization service updates the destination directory with
object creations, deletions, and updates, indicated by the arrow
136. Object read indications are returned, indicated by the segment
138, by the destination directory to the directory synchronization
service. Although LDAP directory services are mentioned herein by
way of example, the subject matter of this disclosure could be
applied to any appropriate directory services or collections
thereof that provide synchronization among source and destination
directory services.
[0029] The directory synchronization service provides
synchronization based, inter alia, upon group membership, which
permits ready identification of group members, thereby facilitating
synchronization of the source and destination directories.
[0030] FIG. 2 illustrates the directory synchronization service
114, which, forms part of the scheme 110 in FIG. 1. The elements
forming the directory synchronization service are implemented in
any desired manner including a hardware implementation, a software
implementation and in combinations thereof. The directory
synchronization service is positionable to be in connectivity with
both source directories and destination directories. A scan
initiator 142 initiates synchronization operations and, in the
example implementation, is provided with input information
including synchronization scope information 142 including, for
instance, scope group information 146 and nesting level information
148, here an integer value. Additional input information includes
identification of a synchronization type, i.e., a full-scan
synchronization or a delta-scan synchronization 152 and a start
indication 154.
[0031] Responsive to the input information, the scan initiator
initiates synchronization operations. The directory synchronization
service is here shown further to include a water mark fetcher 162,
a memory element 164, a group fetcher and de-nester 168, a sorter
172, a memory element 174, an updater 182, and an object name
fetcher 175 having a group member fetcher 176, a sorter 178, a
memory 180, and an object fetcher 181.
[0032] The water mark fetcher 162 functions to fetch high-water
marks for each source directory service from which synchronizations
is to be performed. In general, a water mark describes an object of
a predefined format that provides a point of reference for
directory services to establish synchronization. Values of fetched
water marks are stored at the memory element 164.
[0033] The group fetcher and de-nester operates to fetch and
de-nest all nested groups, to the specified nesting level 148 of
the scope group or groups. Fetching operations are here controlled
by the initiator 142, based upon the synchronization scope, and
other, information. The group fetcher fetches the groups to the
specified nesting level and the fetched groups are sorted by the
sorter 172 and stored at the memory 174.
[0034] The object name fetcher 175 operates to fetch the identity,
e.g., unique name, of the members of the de-nested groups that have
been fetched, sorted, and stored at the memory element 174. The
group member fetcher 176 retrieves the names (or another
appropriate member identifier) of all members and retrieves the
names (or another appropriate member identifier) of all of the
members added and removed. The fetched member names are sorted by
domain by the sorter 178 and then saved at the memory 180. The
object fetcher 181 retrieves the named member objects from each
domain and presents them to the updater 182. The fetched identities
are provided to an updater 182 that functions to update
corresponding groups of the destination directory service. [***
What is the distinction between the retrieved named member objects
and the fetched identities of the prior 2 sentences? Are they
equivalent?] The updater 182 also receives an input from a
destination directory, analogous to the object read 138 indication
shown in FIG. 1.
[0035] When the synchronization type comprises a full-scan
synchronization, the object name fetcher 178 fetches all of the
objects within the synchronization scope of the fetched, sorted,
de-nested and stored groups. When the synchronization type
comprises a delta-scan synchronization, the object name fetcher
fetches changed objects, that is, objects that have changed
attributes, new objects, and objects that have been deleted. In a
delta-scan synchronization, a series of operations are carried out.
First, the names of members added to and removed from de-nested
scope groups are fetched. Then, these fetched names are sorted and
stored by domain. Then, for each domain, the members that have been
added are fetched and synchronized with a destination. Members that
have been removed are handled as deletions from the destination
directory server. Additionally, detection is made of members that
have changed attributes are detected and their corresponding
objects are updated at the destination directory.
[0036] Thereby, even though membership is an attribute of the
group, not of the member, groups are nestable, and groups can
contain members that belong to more than one directory service, the
directory synchronization service 114 provides for synchronization
based upon a group membership. Problems associated with
conventional attempts to synchronize directory services based upon
group membership are mitigated.
[0037] Turning next to FIG. 3, a process diagram, shown generally
at 196 shows an example full-scan synchronization process in a
scenario having scoping groups over multiple domains, i.e.,
multiple directory services. Subsequent to start, indicated by the
initiate scan block 198, water marks are fetched and stored,
indicated by the section 202. That is, for each enabled domain,
indicated by the block 204, as known from the list of enabled
domains 208, a high-water mark is fetched and stored, indicated by
the block 212. A high-water mark is stored, indicated by the block
214 for each domain. As indicated by the portion 202, operation is
iterative through all of the enabled domains.
[0038] At portion 218, the scope groups are de-nested. The scope
groups are de-nested, as indicated by the block 222, sorted by
domain, and stored with associated DN values. A DN (distinguished
name) is or includes the name of the member. The DN also identifies
the domain to which the member belongs. This enables sorting by
domain. In performance of these operations, and as indicated by the
block 226, the specified nesting level and the identification of
the user scope groups are provided.
[0039] At the portion 232, member enumeration is performed. For
each enabled domain, indicated by the block 234, and for each
de-nested scope group in the domain, indicated by the block 236,
the distinguished name (DN) of group members is fetched, as
indicated by the block 238. This is a paged operation, in that the
results of the LDAP search are typically received as some number of
"pages" or groups containing a subset of matching records, with
successive pages being serially obtained until all matching records
have been received. Then, and as indicated by the block 240,
members are sorted by domain and stored. Storage is indicated by
the block 242. This process is iterative, as indicated by page,
scope group, and domain.
[0040] At the portion 252, object fetching is performed. For each
enabled domain, indicated by the block 254, and for each page of
members in the domain, indicated by the block 256, a page of
objects by DN is fetched, indicated by the block 262. And, for each
sub-page of objects, indicated by the block 264, the object is sent
to the destination directory, indicated by the block 266 and the
arrow 268. Here also, the portion 252 is iterative by sub-page,
page, and domain. Portions 232 and 252 are iterated or repeated for
as many different directory object types as desired.
[0041] FIG. 3 also illustrates optional performance of a subsequent
delta-scan, indicated by the block 348. A delta-scan
synchronization might be performed to synchronize for changes made
to the source directory service subsequent to the full scan
synchronization. And, thereafter, the process is finished,
indicated by the done block 352.
[0042] FIG. 4 illustrates a process, shown generally at 452,
representative of delta-scan synchronization over multiple domains
with scoping groups.
[0043] Subsequent to start, indicated by the initiate scan block
454, watermark management is performed at the portion 456. For each
enabled domain, indicated by the block 462, using a list 464 of
enabled domains, a next high-water mark candidate is fetched and
stored, indicated at the block 468. Storage is indicated at the
block 472.
[0044] At the portion 482, scope groups are de-nested. The scoping
groups are, indicated by the block 484, de-nested, sorted by
domain, and stored with DN making use of user scope groups and
specified nesting levels, indicated by the block 488.
[0045] At the portion 492, names of members that have been added to
or removed from a de-nested scope group are detected. For each
enabled domain, indicated by the block 494 and for each de-nested
scope group in the domain, indicated by the block 496, DirSync LDAP
control is used to fetch DNs of members added to, and removed from,
the de-nested scope group. This is indicated at the block 498.
Then, and as indicated by the block 500, DNs of members added to or
removed from the de-nested scope group in the scan are stored,
sorted by domain. And, a list of members added to and removed from
the scope groups, sorted by domain are indicated as being stored at
the block 502.
[0046] At portion 508, object fetching and updating of objects
added to scope are performed. For each enabled domain, indicated by
the block 514, and for each available page of members in the domain
that were added to scope, as indicated by the block 516, a page of
objects is fetched, indicated by the block 522. Then, for each
sub-page of objects fetched, indicated by the block 524,
corresponding objects are added to the destination directory,
indicated by the block 526 and the arrow 528. The portion 508 is
iterative by sub-page, pages, and domain.
[0047] At portion 532, objects removed from scope are fetched. For
each enabled domain, indicated by the block 534, and for each
available page of members in this domain that were removed from
scope, indicated by the block 536, the page of objects is fetched,
indicated by the block 538. Then, for each sub-page of fetched
objects, indicated by the block 594, corresponding objects are
removed from the destination directory, indicated by the block 598
and the arrow 602 The portion 532 is iterated by sub-page, page,
and domain.
[0048] At portion 604, objects that have changed attributes are
fetched and updated. For each enabled domain, indicated by the
block 605, DirSync LDAP control is used, indicated by the block
606, to fetch objects in the domain whose attributes have changed
since the last scan. Then, for each page of fetched objects, the
objects are taken in turn as indicated by the block 608. As
indicated by the block 609, if an object is not a member of a scope
group, it is ignored. Then, for each sub-page of fetched objects
which are members of a scope group, the destination directory is
updated with the changed objects, as indicated by blocks 610 and
612 and arrow 614. At the portion 654, water mark management is
performed. For each enabled domain, indicated by the block 656, the
respective high-water mark candidate earlier fetched and stored in
block 468 is persisted as the next high-water mark for that domain.
This portion 654 is iterative by domain.
[0049] Then, as indicated by the done block 672, the process
ends.
[0050] FIG. 5 illustrates an example communication system, shown
generally at 750, in which an embodiment of the present invention
forms a portion. The communication system 750 forms a mobile
communication system and includes a mobile station 756 that is
positionable in communication connectivity with a network 758 by
way of a radio air interface 762. Communication entities are
connected to the network entity 758, here including an application
mobile device servicing system 766 positioned behind an optional
firewall 768. An application server 772 is also shown in the
figure, positioned in connectivity with the servicing system 766.
The communication system 750 is by way of example only; an
embodiment of the present invention is analogously implementable in
any of various other communication systems.
[0051] The servicing system 766 includes the directory
synchronization service 114. The synchronization service, in this
example, operates to perform synchronization of directory services,
here positioned at the server 772 and the mobile station 756. For
purposes of example, a source directory service 116 is shown to be
formed at the mobile station and a destination directory service
122 is embodied at the server 772. Operation in which the source
directory service is embodied at the server 772 and the directory
destination service is embodied at the mobile station 756 can be
analogously represented.
[0052] Thereby, a manner is provided by which to synchronize
directory services on a group basis that overcomes the problems
associated with the existing art.
[0053] Presently preferred embodiments of the disclosure and many
of its improvements and advantages have been described with a
degree of particularity. The description is of preferred examples
of implementing the disclosure, and the description of examples is
not necessarily intended to limit the scope of the disclosure. The
scope of the disclosure is defined by the following claims.
* * * * *