1460910891-74ba430a-9e35-4daf-a03f-17339ed637f2

What is claimed is:

1. A method for populating an electronic address book, said method comprising:
analyzing information stored in a billing database or call data record;
extracting at least one telephone number from the billing database or the call data record if at least some of the information stored in the billing database or call detail record meets predetermined criteria; and
adding the extracted at least one telephone number to the electronic address book.
2. The method according to claim 1, further comprising transferring data to a user, wherein the data transferred to the user relates to the at least one extracted telephone number.
3. The method according to claim 2, further comprising requesting information from the user, wherein the requested information relates to the data transferred to the user.
4. The method according to claim 3, wherein requesting information from the user comprises requesting the user to associate at least one nickname with the data transferred to the user.
5. The method according to claim 4, further comprising updating the electronic address book based on the information obtained from the user.
6. The method according to claim 1, wherein the address book is stored on a network server.
7. The method according to claim 1, wherein analyzing a billing database or call data record comprises analyzing telephone numbers dialed by a user.
8. The method according to claim 7, wherein analyzing a billing database or call data record further comprises analyzing originating telephone numbers for telephone calls received by the user.
9. The method according to claim 2, further comprising associating the at least one extracted telephone number with a corresponding name.
10. The method according to claim 9, wherein associating the extracted telephone number with a corresponding name comprises utilizing a telephone directory.
11. The method according to claim 10, wherein the data transferred to the user comprises a full name extracted from the telephone directory.
12. The method according to claim 2, wherein the transferred data comprises a telephone number.
13. The method according to claim 2, wherein the data transferred to the user is transferred in the form of synthesized speech.
14. The method according to claim 2, wherein the data transferred to the user is transferred in the form of an electronic mail message, a link in an electronic mail message, an SMS message, an instant message, a WAP message, or an MMS message.
15. The method according to claim 1, wherein the predetermined criteria can be configured by a user of the electronic address book.
16. The method according to claim 15, wherein the predetermined criteria can be configured by an operator of the electronic address book,
wherein predetermined criteria set by the user overwrites conflicting predetermined criteria set by the operator.
17. The method according to claim 1, wherein the predetermined criteria comprises a number of times a telephone number is dialed within a certain time period.
18. The method according to claim 1, wherein the predetermined criteria comprises a number of times the user receives a call from a telephone number within a certain time period.
19. The method according to claim 1, wherein the predetermined criteria comprises a duration of a telephone call.
20. The method according to claim 1, wherein telephone numbers can be deleted from the address book based on the predetermined criteria and sent to a trash folder.
21. The method according to claim 20, wherein, if it is later determined that the deleted telephone number should be reinserted within the address book, the deleted telephone number is extracted from the trash folder and reinserted in the address book.
22. The method according to claim 1, wherein the predetermined criteria comprises telephone numbers that are presently stored in the address book, such that numbers stored in the address book are not extracted.
23. A system for populating an electronic address book comprising:
an analyzing unit which analyzes information stored in a billing database or call data record;
an extracting unit which extracts at least one telephone number from the billing database or the call data record if at least some of the information stored in the billing database or call detail record meets predetermined criteria; and
a transferring unit which adds the extracted at least one telephone number to the electronic address book.
24. The system according to claim 23, further comprising a transferring unit which transfers data to a user, wherein the data transferred to the user relates to the at least one extracted telephone number.
25. The system according to claim 24, further comprising a requesting unit which requests information from the user, wherein the requested information relates to the data transferred to the user.
26. The system according to claim 25, wherein the requesting unit requests the user to associate at least one nickname with the data transferred to the user.
27. The system according to claim 26, wherein the address book is updated based on the information obtained from the user.
28. The system according to claim 23, wherein the address book is stored on a network server.
29. The system according to claim 23, wherein the analyzing unit analyzes telephone numbers dialed by a user.
30. The system according to claim 29, wherein the analyzing unit analyzes originating telephone numbers for telephone calls received by the user.
31. The system according to claim 24, wherein the at least one extracted telephone number is associated with a corresponding name by utilizing a telephone directory.
32. The system according to claim 31, wherein the data transferred to the user comprises a full name extracted from the telephone directory.
33. The system according to claim 24, wherein the transferred data comprises a telephone number.
34. The system according to claim 24, wherein the data transferred to the user is transferred in the form of synthesized speech.
35. The system according to claim 24, wherein the data transferred to the user is transferred in the form of an electronic mail message, a link in an electronic mail message, an SMS message, an instant message, a WAP message, or an MMS message.
36. The system according to claim 23, wherein the predetermined criteria is configured by a user of the electronic address book.
37. The system according to claim 36, wherein the predetermined criteria can be configured by an operator of the electronic address book,
wherein predetermined criteria set by the user overwrites conflicting predetermined criteria set by the operator.
38. The system according to claim 23, wherein the predetermined criteria comprises a number of times a telephone number is dialed within a certain time period.
39. The system according to claim 23, wherein the predetermined criteria comprises a number of times the user receives a call from a telephone number within a certain time period.
40. The system according to claim 23, wherein the predetermined criteria comprises a duration of a telephone call.
41. The system according to claim 23, wherein telephone numbers can be deleted from the address book based on the predetermined criteria and sent to a trash folder.
42. The system according to claim 41, wherein, if it is later determined that the deleted telephone number should be reinserted within the address book, the deleted telephone number is extracted from the trash folder and reinserted in the address book.
43. The system according to claim 23, wherein the predetermined criteria comprises telephone numbers that are presently stored in the address book, such that numbers stored in the address book are not extracted.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A method for configuration management of a distributed virtual switch comprising a managed collection of virtual switches configured as a single logical entity, each of the virtual switches comprising a software implementation of a network switch for connecting a set of virtual machines running on host computer hardware, the method comprising:
receiving a snapshot of a configuration associated with the distributed virtual switch, the configuration used by a management plane device operating in a management plane to manage the collection of virtual switches of the distributed virtual switch as the single logical entity, the snapshot including settings for the configuration at a time of taking the snapshot;
determining, by a computing device, a persistent storage location independent from the management plane device for storing the received snapshot of the configuration;
storing, by the computing device, the snapshot of the configuration of the distributed virtual switch in the persistent storage location, wherein the configuration stored in the persistent storage location is different from the configuration used by the management plane device operating in the management plane to manage the collection of virtual switches of the distributed virtual switch as the single logical entity; and
after the time of taking the snapshot, retrieving the configuration from the persistent storage location to apply the settings of the configuration to the distributed virtual switch, a new distributed virtual switch, or an existing distributed virtual switch in the management plane.
2. The method of claim 1, wherein applying the settings of the configuration to the distributed virtual switch comprises re-creating or re-storing the distributed virtual switch using the settings of the retrieved configuration, wherein the re-created or re-stored distributed virtual switch includes the settings of the configuration of the distributed virtual switch at the time of taking the snapshot.
3. The method of claim 1, wherein applying the settings of the configuration to the new distributed virtual switch comprises creating the new distributed virtual switch by using the settings of the retrieved configuration as a template for settings of the new distributed virtual switch.
4. The method of claim 3, wherein the new distributed virtual switch includes a new distributed virtual switch configuration and a new port group configuration based on the distributed virtual switch configuration and the port group configuration.
5. The method of claim 1, wherein applying the settings of the configuration to the existing distributed virtual switch comprises applying the settings of the configuration of the distributed virtual switch to restore the settings of the distributed virtual switch from a later version of the settings of the configuration to the settings of the configuration at the time of taking the snapshot.
6. The method of claim 1, wherein applying the settings of the configuration to the existing distributed virtual switch comprises using the settings of the configuration as a template to create a new distributed virtual switch and a new port group on the existing distributed virtual switch.
7. The method of claim 1, wherein the configuration comprises distributed virtual switch configuration information including settings at the distributed virtual switch level or port group configuration information including settings at a port level.
8. The method of claim 1, further comprising storing multiple snapshots taken at different times of the configuration of the distributed virtual switch in the persistent storage space to allow different configurations to be retrieved and applied to the distributed virtual switch, the new distributed virtual switch, or the existing distributed virtual switch.
9. The method of claim 1, further comprising:
determining the persistent storage location to store the configuration from a plurality of storage locations; and
storing the configuration in the determined persistent storage location, the persistent storage location being external to the management plane.
10. The method of claim 1, wherein the configuration comprises a distributed virtual switch configuration, a port group configuration, or both the distributed virtual switch configuration and the port group configuration.
11. A non-transitory computer-readable storage medium containing instructions for configuration management of a distributed virtual switch comprising a managed collection of virtual switches configured as a single logical entity, each of the virtual switches comprising a software implementation of a network switch for connecting a set of virtual machines running on host computer hardware, the instructions for controlling a computer system to be configured to:
receive a snapshot of a configuration associated with the distributed virtual switch, the configuration used by a management plane device operating in a management plane to manage the collection of virtual switches of the distributed virtual switch as the single logical entity, the snapshot including settings for the configuration at a time of taking the snapshot;
determine a persistent storage location independent from the management plane device for storing the received snapshot of the configuration;
store the snapshot of the configuration of the distributed virtual switch in the persistent storage location, wherein the configuration stored in the persistent storage location is different from the configuration used by the management plane device operating in the management plane to manage the collection of virtual switches of the distributed virtual switch as the single logical entity; and
after the time of taking the snapshot, retrieve the configuration from the persistent storage location to apply the settings of the configuration to the distributed virtual switch, a new distributed virtual switch, or an existing distributed virtual switch in the management plane.
12. The non-transitory computer-readable storage medium of claim 11, wherein apply the settings of the configuration to the distributed virtual switch comprises re-create or re-store the distributed virtual switch using the settings of the retrieved configuration, wherein the re-created or re-stored distributed virtual switch includes the settings of the configuration of the distributed virtual switch at the time of taking the snapshot.
13. The non-transitory computer-readable storage medium of claim 11, wherein apply the settings of the configuration to the new distributed virtual switch comprises create the new distributed virtual switch by using the settings of the retrieved configuration as a template for settings of the new distributed virtual switch.
14. The non-transitory computer-readable storage medium of claim 13, wherein the new distributed virtual switch includes a new distributed virtual switch configuration and a new port group configuration based on the distributed virtual switch configuration and the port group configuration.
15. The non-transitory computer-readable storage medium of claim 11, wherein apply the settings of the configuration to the existing distributed virtual switch comprises apply the settings of the configuration of the distributed virtual switch to restore the settings of the distributed virtual switch from a later version of the settings of the configuration to the settings of the configuration at the time of taking the snapshot.
16. The non-transitory computer-readable storage medium of claim 11, wherein apply the settings of the configuration to the existing distributed virtual switch comprises use the settings of the configuration as a template to create a new distributed virtual switch and a new port group on the existing distributed virtual switch.
17. The non-transitory computer-readable storage medium of claim 11, wherein the configuration comprises distributed virtual switch configuration information including settings at the distributed virtual switch level or port group configuration information including settings at a port level.
18. The non-transitory computer-readable storage medium of claim 11, further operable to store multiple snapshots taken at different times of the configuration of the distributed virtual switch in the persistent storage space to allow different configurations to be retrieved and applied to the distributed virtual switch, the new distributed virtual switch, or the existing distributed virtual switch.
19. An apparatus for configuration management of a distributed virtual switch comprising a managed collection of virtual switches configured as a single logical entity, each of the virtual switches comprising a software implementation of a network switch for connecting a set of virtual machines running on host computer hardware, the apparatus comprising:
one or more computer processors; and
a non-transitory computer-readable storage medium comprising instructions for controlling the one or more computer processors to be configured to:
receive a snapshot of a configuration associated with the distributed virtual switch, the configuration used by a management plane device operating in a management plane to manage the collection of virtual switches of the distributed virtual switch as the single logical entity, the snapshot including settings for the configuration at a time of taking the snapshot;
determine a persistent storage location independent from the management plane device for storing the received snapshot of the configuration;
store the snapshot of the configuration of the distributed virtual switch in the persistent storage location, wherein the configuration stored in the persistent storage location is different from the configuration used by the management plane device operating in the management plane to manage the collection of virtual switches of the distributed virtual switch as the single logical entity; and
after the time of taking the snapshot, retrieve the configuration from the persistent storage location to apply the settings of the configuration to the distributed virtual switch, a new distributed virtual switch, or an existing distributed virtual switch in the management plane.
20. The apparatus of claim 19, wherein the configuration comprises distributed virtual switch configuration information including settings at the distributed virtual switch level or port group configuration information including settings at a port level.