CA2637368A1 - Email server system and method - Google Patents
Email server system and method Download PDFInfo
- Publication number
- CA2637368A1 CA2637368A1 CA002637368A CA2637368A CA2637368A1 CA 2637368 A1 CA2637368 A1 CA 2637368A1 CA 002637368 A CA002637368 A CA 002637368A CA 2637368 A CA2637368 A CA 2637368A CA 2637368 A1 CA2637368 A1 CA 2637368A1
- Authority
- CA
- Canada
- Prior art keywords
- server
- servers
- data set
- configuration data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 238000000034 method Methods 0.000 title claims description 11
- 238000004891 communication Methods 0.000 claims abstract description 41
- 230000008859 change Effects 0.000 claims abstract description 5
- 230000008569 process Effects 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 7
- 230000000694 effects Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 5
- 101100492787 Caenorhabditis elegans mai-1 gene Proteins 0.000 description 5
- 238000009434 installation Methods 0.000 description 3
- 235000002020 sage Nutrition 0.000 description 3
- 240000005369 Alstonia scholaris Species 0.000 description 1
- 206010003445 Ascites Diseases 0.000 description 1
- 101100273639 Carassius auratus ccna1 gene Proteins 0.000 description 1
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 1
- 235000008247 Echinochloa frumentacea Nutrition 0.000 description 1
- 241001522296 Erithacus rubecula Species 0.000 description 1
- 241000282326 Felis catus Species 0.000 description 1
- 101001094545 Homo sapiens Retrotransposon-like protein 1 Proteins 0.000 description 1
- 101100286668 Mus musculus Irak1bp1 gene Proteins 0.000 description 1
- 240000004072 Panicum sumatrense Species 0.000 description 1
- 102100035123 Retrotransposon-like protein 1 Human genes 0.000 description 1
- 241001611608 Systena Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- KRTSDMXIXPKRQR-AATRIKPKSA-N monocrotophos Chemical compound CNC(=O)\C=C(/C)OP(=O)(OC)OC KRTSDMXIXPKRQR-AATRIKPKSA-N 0.000 description 1
- 238000012552 review Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/40—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/0816—Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0889—Techniques to speed-up the configuration process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/23—Reliability checks, e.g. acknowledgments or fault reporting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Abstract
An email system comprises a plurality of email servers connected by a data communications network. The email system avoids single points of failure by employing multiple email servers which self configure, without requiring dedicated servers, through self addressing and discovery and announcement protocols. An email server can act as a primary email server by executing an administration tool allowing an administrator to modify the configuration data set which the email servers utilize, and the primary email server will then announce the resulting change in the version level of the configuration data set to other email servers. Each email server will then determine and request any needed updates to its respective configuration data set from the primary email server or another email server. The resulting email system is: robust, avoiding single points of failure; scalable, as additional email processing capacity can be achieved by adding additional email servers; and is simple to administer as changes to the configuration data set can be made at any email server with a copy of the appropriate administration tool and such changes automatically propagate through the email system.
Description
EMAIL SERVER SYSTEM AND METHOD
FIELD OF THE INVENTION
[00011 The present invention relates to the provision of email services. More specifically, the present invention relates to an email server system and method.
BACKGROUND OF THE INVENTION
100021 Email has assumed increasing importance in corporate and other environments wherein email communications are now used for almost every imaginable communication.
While the ubiquity and take up of email has proven to be a boon to users, the sheer volume of email communications has offered many challenges to information technology departments and others who provide and maintain such services.
100031 In particular, in many circumstances the volume of email at an installation exceeds the communications bandwidth and/or processing capacity of a single email server. In such circumstances, or in circumstances wherein it is desired to provide some redundancy for fault tolerance purposes, an installation may include multiple email servers, which are used within appropriate load balancing strategy, to process the total email load without exceeding the capacity of any one email server.
100041 At the same time as providers of email services have had to deal with increasing volumes of email communication, they have also had to deal with evolving needs to control and/or regulate email communications. In particular, most email servers today include sets of policies, which must be enforced, routes, and/or services, such as aliases and groups, which must be implemented, as well as the ongoing need to administer email users' accounts.
100051 The administration of email servers has become increasing complex and increasingly time consuming and the burden of administrating such servers increases every time another email server is added to an installation.
100061 Previous attempts to deal with this increasing complexity and effort have employed a dedicated email administration server (DEAS) wherein the email provider makes any necessary changes and/or administration inputs and the DEAS then propagates the changes and/or inputs to each email server it administrates. However, such approaches are less than ideal as the DEAS is a single point of failure in the email system and, even if regular backups are maintained for the DEAS, in the event of a crash or other failure of the DEAS an email service outage will occur while the most recent backup is restored and/or the hardware of the DEAS is repaired.
100071 Further, the DEAS and/or email administrator must have a mechanism for ensuring that each administered email server has correctly received and processed any updates or changes input into the DEAS and this can be difficult to achieve when the number of administered email servers is high and/or updates or changes occur frequently.
SUMMARY OF THE INVENTION
100081 It is an object of the present invention to provide a novel system and method of clustering email servers which obviates or mitigates at least one disadvantage of the prior art.
100091 According to a first aspect of the present invention, there is provided an email system comprising: a plurality of email servers, each of said email servers being connected to each other of said email servers via a data communications network, each of said email servers being operable to self configure itself on said data communications network to communicate with the others of said email servers and being further operable to process email received from and/or sent to said data communications network in accordance with a configuration data set stored on each server; one of said email servers being further operable to receive and effect changes, from an administrator, for the configuration data set stored on said one email server and to announce that the configuration data set stored on said one email server has been changed to the others of the email servers connected by the network and, in response to requests from email servers, providing the changes to the configuration data set to each requesting email server for storage and use thereon.
[00101 Preferably, the administrator can select any server from of a subset of the email servers to be said one email server. Also preferably, upon a failure of said one email server, the administrator can select another of said plurality of email servers to be said one email server.
100111 According to another aspect of the present invention, there is provided an email server system, comprising: at least two email servers, each email server being in data
FIELD OF THE INVENTION
[00011 The present invention relates to the provision of email services. More specifically, the present invention relates to an email server system and method.
BACKGROUND OF THE INVENTION
100021 Email has assumed increasing importance in corporate and other environments wherein email communications are now used for almost every imaginable communication.
While the ubiquity and take up of email has proven to be a boon to users, the sheer volume of email communications has offered many challenges to information technology departments and others who provide and maintain such services.
100031 In particular, in many circumstances the volume of email at an installation exceeds the communications bandwidth and/or processing capacity of a single email server. In such circumstances, or in circumstances wherein it is desired to provide some redundancy for fault tolerance purposes, an installation may include multiple email servers, which are used within appropriate load balancing strategy, to process the total email load without exceeding the capacity of any one email server.
100041 At the same time as providers of email services have had to deal with increasing volumes of email communication, they have also had to deal with evolving needs to control and/or regulate email communications. In particular, most email servers today include sets of policies, which must be enforced, routes, and/or services, such as aliases and groups, which must be implemented, as well as the ongoing need to administer email users' accounts.
100051 The administration of email servers has become increasing complex and increasingly time consuming and the burden of administrating such servers increases every time another email server is added to an installation.
100061 Previous attempts to deal with this increasing complexity and effort have employed a dedicated email administration server (DEAS) wherein the email provider makes any necessary changes and/or administration inputs and the DEAS then propagates the changes and/or inputs to each email server it administrates. However, such approaches are less than ideal as the DEAS is a single point of failure in the email system and, even if regular backups are maintained for the DEAS, in the event of a crash or other failure of the DEAS an email service outage will occur while the most recent backup is restored and/or the hardware of the DEAS is repaired.
100071 Further, the DEAS and/or email administrator must have a mechanism for ensuring that each administered email server has correctly received and processed any updates or changes input into the DEAS and this can be difficult to achieve when the number of administered email servers is high and/or updates or changes occur frequently.
SUMMARY OF THE INVENTION
100081 It is an object of the present invention to provide a novel system and method of clustering email servers which obviates or mitigates at least one disadvantage of the prior art.
100091 According to a first aspect of the present invention, there is provided an email system comprising: a plurality of email servers, each of said email servers being connected to each other of said email servers via a data communications network, each of said email servers being operable to self configure itself on said data communications network to communicate with the others of said email servers and being further operable to process email received from and/or sent to said data communications network in accordance with a configuration data set stored on each server; one of said email servers being further operable to receive and effect changes, from an administrator, for the configuration data set stored on said one email server and to announce that the configuration data set stored on said one email server has been changed to the others of the email servers connected by the network and, in response to requests from email servers, providing the changes to the configuration data set to each requesting email server for storage and use thereon.
[00101 Preferably, the administrator can select any server from of a subset of the email servers to be said one email server. Also preferably, upon a failure of said one email server, the administrator can select another of said plurality of email servers to be said one email server.
100111 According to another aspect of the present invention, there is provided an email server system, comprising: at least two email servers, each email server being in data
-2-communication with each other email server in the system via a data communication network and each email server being operable to establish its presence in said data communication network, each email server being further operable to process, in accordance with a configuration data set, email messages received and/or sent over the data communication network and wherein an administrator can connect to one of said at least two email servers through the data communication network to change the configuration data set, the one of said at least two email servers announcing the changed configuration data set to each other of the at least two email servers and providing the changed configuration data set to each other of the at least two email servers in response to requests received therefrom.
[00121 The present invention provides a email system comprising a plurality of email servers connected by a data communications network. The email system avoids single points of failure by employing multiple email servers which self configure, without requiring dedicated servers, through self addressing and discovery and announcement protocols. An email server can act as a primary email server by executing an administration tool allowing an administrator to modify the configuration data set which the email servers utilize, and the primary email server will then announce the resulting change in the version level of the configuration data set to other email servers. Each email server will then determine and request any needed updates to its respective configuration data set from the primary email server or another email server. The resulting email system is: robust, avoiding single points of failure; scalable, as additional email processing capacity can be achieved by adding additional email servers; and is simple to administer as changes to the configuration data set can be made at any email server with a copy of the appropriate administration tool and such changes automatically propagate through the email system.
BRIEF DESCRIPTION OF THE DRAWINGS
100131 Preferred embodiments of the present invention will now be described, by way of example only, with reference to the attached Figures, wherein:
Figure 1 shows a schematic representation of an email system in accordance with the present invention; and Figure 2 shows a schematic representation of another embodiment of an email system
[00121 The present invention provides a email system comprising a plurality of email servers connected by a data communications network. The email system avoids single points of failure by employing multiple email servers which self configure, without requiring dedicated servers, through self addressing and discovery and announcement protocols. An email server can act as a primary email server by executing an administration tool allowing an administrator to modify the configuration data set which the email servers utilize, and the primary email server will then announce the resulting change in the version level of the configuration data set to other email servers. Each email server will then determine and request any needed updates to its respective configuration data set from the primary email server or another email server. The resulting email system is: robust, avoiding single points of failure; scalable, as additional email processing capacity can be achieved by adding additional email servers; and is simple to administer as changes to the configuration data set can be made at any email server with a copy of the appropriate administration tool and such changes automatically propagate through the email system.
BRIEF DESCRIPTION OF THE DRAWINGS
100131 Preferred embodiments of the present invention will now be described, by way of example only, with reference to the attached Figures, wherein:
Figure 1 shows a schematic representation of an email system in accordance with the present invention; and Figure 2 shows a schematic representation of another embodiment of an email system
-3-in accordance with the present invention.
DETAILED DESCRIPTION OF THE INVENTION
[0014] An email system in accordance with an embodiment of the present invention is indicated generally at 20 in Figure 1. Email system 20 includes a plurality of email servers 24 which are interconnected by a data communications network preferably comprising data communications links 28 and a data switch 32. It will be apparent to those of skill in the art that the data communications network interconnecting email servers 24 can also be configured in a variety of other manners, such as with a hub instead of data switch 32, or in different topologies such as a ring or bus and such configurations are also within the scope of the present invention.
[00151 The construction of email servers 24 is not particularly limited and can comprise and suitable computing device for executing an email server program to process email communications. An example of such a suitable computing device includes a general purpose computer with an Intel Pentium 4 CPU and one gigabyte of RAM and a 160GB hard drive, which executes the BSD Unix operating system and the Sendmail application.
However, as will be apparent to those of skill in the art, the present invention is not limited to email servers constructed in such a manner and can instead be used with a wide variety of hardware and software systems appropriately configured to provide email services.
100161 In particular, it should be noted that in the present invention email servers 24 need not be homogenously constructed, as one or more of email servers 24 can be constructed of hardware which differs from others of email servers 24, and need not even execute the same operating system, although this is presently preferred.
100171 As mentioned above, each email server in email system 20 is interconnected by a data communications link 28 and a data switch 32. Preferably, data communications links 28, which can use Ethernet or other suitable transport protocols as will be apparent to those of skill in the art, employ an addressable protocol such as the Internet Protocol (IP) to allow email servers 24 to intercommunicate. When IP is used with email system 20, it is presently preferred that non-routable (so called "private" or "RFC 1918") addresses are used by email servers 24. As is well known to those of skill in the art, the "C Class" of such addresses,
DETAILED DESCRIPTION OF THE INVENTION
[0014] An email system in accordance with an embodiment of the present invention is indicated generally at 20 in Figure 1. Email system 20 includes a plurality of email servers 24 which are interconnected by a data communications network preferably comprising data communications links 28 and a data switch 32. It will be apparent to those of skill in the art that the data communications network interconnecting email servers 24 can also be configured in a variety of other manners, such as with a hub instead of data switch 32, or in different topologies such as a ring or bus and such configurations are also within the scope of the present invention.
[00151 The construction of email servers 24 is not particularly limited and can comprise and suitable computing device for executing an email server program to process email communications. An example of such a suitable computing device includes a general purpose computer with an Intel Pentium 4 CPU and one gigabyte of RAM and a 160GB hard drive, which executes the BSD Unix operating system and the Sendmail application.
However, as will be apparent to those of skill in the art, the present invention is not limited to email servers constructed in such a manner and can instead be used with a wide variety of hardware and software systems appropriately configured to provide email services.
100161 In particular, it should be noted that in the present invention email servers 24 need not be homogenously constructed, as one or more of email servers 24 can be constructed of hardware which differs from others of email servers 24, and need not even execute the same operating system, although this is presently preferred.
100171 As mentioned above, each email server in email system 20 is interconnected by a data communications link 28 and a data switch 32. Preferably, data communications links 28, which can use Ethernet or other suitable transport protocols as will be apparent to those of skill in the art, employ an addressable protocol such as the Internet Protocol (IP) to allow email servers 24 to intercommunicate. When IP is used with email system 20, it is presently preferred that non-routable (so called "private" or "RFC 1918") addresses are used by email servers 24. As is well known to those of skill in the art, the "C Class" of such addresses,
-4-.
4Ma r,1 2 2Q8 12:31PM
~~.tl,...~..~._ ~ ~. ~. , , NIARCfj ~, 2 ?008. 12.0L08 which are xzi. th~ range af from 192.168Ø0 to 192,168,255,255, ure commonly used for such purposes. .
[00181 One of the design goals for systern 20 is to remove pas~ib1e single filure points ~
. from system 2O, For cxamPlc, while data switclt 32 is logically one devlce, it is prefened that data swlt~h 32 is physxca,lly implemnted as two or anore data switches with au~omatic fa,ilover. Further, a shown., email sysrem 20 comgrises a plural.%ty of email servers 24 such fihat failure Qf aR emsil sesver 24 does not prevent conthued opemtion of system 20, l00191 More signlf cantly} to fuurther remove single points af failuae, it xs d.esired tha.t netwo:rk protocol services requiriang a ded,icated server, such as DHCP or DN~, are avoided and distributed nelwork pratacol servlces are instead etriployed. Tberefore, self adth'essirig a~d announcement a,n.d discovery protocals are ernployed, in each email server 24 such that each email ~erver 24 is assigned a va1id and un.ique (within system 20) address and is sna.de aware af the other email servers 24 and devic~s on the data cmmmunications network of system 20 without the need for ~eUivatcd devi~~s in system. 20. Such ~ifadd.rcssiug and aunouncement ~d discovety ~~otoco1s a;e weu known to those Qf skill in the art and, in a present embodiment of the invention whYeh employs 1p' aver an Ethernet transport layer, the Link-Local Addressxng and refated Protoco1s an.d rnetlxods proposed lay the Zeroccnf Working Group (wovw.ze,~oconforg) are utxlized~ although uiy oth.er suitahle selfacldressing a.nd a-nnoimeezmnt and discovety protocols can be tsed as wi11 be a~parent ta thase of sldil in the ait Exam,ples of such other prota~ot~ ~an include the BanjnurTM pfotocol ud.vanced 'hy AppleTM Compu.ter and ot,hers, or the Universal Plug and Play (UpnP) protocol ad.vanced hy M1crosoftTM and, others, [0020] Email messages are supplied to and from email system 20 ower an external netwoxk 36, which can he the lnternet or muy other network. 1n a presently ,preferred embadiment of the inventiona a load balancer 40 intereonnects external network 36 and the datn communiaation netvark of email system 20. Load balancer 40 pexforms the neeess&y addt~~s franslatiQn (NAT) for devices on external network 36 to communicate with email servers 24 and also perfarms load baIancing betwecn email servers 24.
Specifica11y, load balancer 40 directs messages fiom extenna[ network 36 to specif c email servers 24 on a changing basis in an atter*pt to ensure that cinails servets 24 have sitnilar processing ltads ta _5W
=t _ -~
=~ ~' ~ ~ s~ ~ 3'~ ~ ' ~ ~'~ ~ ta~~ iiur w~
. ... r _d. ...J+L1 ..A.w.......e.... -.wWiwrVf .
ti o ia r12, 2U8 12:31PM oP
12 MARCEl 2008 12.O3O8 , prevent corgestian and/or tbra~birg at any email servex 24. Load bthinccrs are well known and can emp2ay simpl~ scbedulinglassxgmneiit al~aiithm~ sucb, as round robin, or mare compl~ac ad~ptivc algorithms such as those which monitor respQnse tunes from ~evices to which tasks a~e assigned to detennlne the actual grocessing load at a devicc, xf email scrvers 24 1n systeI,u 20 are not h~mog#':neoIls, th1s ldtter ackiptiVe type of laad balaf'1Cing 1s pref e,1'Ced, [00211 Sama laad halancers 40 can alsn pravide firewall sercrieesa such a~
those sold by .
FS NctworlsTM ~ f 401 Elli4tt Avenue west Satt1e, w,A 98 11 9. Tf 1oad balancer 40 does not pravide fircwall servi.ces and if such ~zviccs are dcsircd~ then aseparate ftrewall device can bc provided bekwcen laad ba1ancer 40 and ~xterna1 network 36.
(00221 It i~ also contemplatcd tbat load balancer ~~ can be ozrtittcd artd email servers 24 in system 20 caii instead ~c1f-imp1cment luad balancing via one Qr mure of the knowra me,hods, such as"~~und rnbin DNS", but this is less pmferred thin having aseparate load bibncer 40, ~speCially xf email system 20 has email servers 24 with different processi~~
~~pabili~~s as such ~elf implemented 1oad batan~ing methQds tcrtd tQ be 1es cffcctive at load balaucing and ure more suseeptible to device failuucs.
100231 An administratic~n terrnitial 44 is c~rnected tv load balancer 40 by adirect data tink or via cxterna1 netwark 36. Administtation terminal 44 can canneet ta that email server 24 in system 20 an,d is used to view ind/or modify the canf~guratiun data set uf systcm 20x as +described belaw. The coustruction Qf ternina144 is not Farticularly lituited and, in a pr~~ently preferred cnabadirncnt, is any device, such as ageneral purpose personal e4mputer, which can execute an HTNiL browser, r 1U024] As mentiancd abovc, each of email se.rvers 24 executes an email server program.
, Eacb email scrvcr 24 exe~utcs thc email scrver pragram in accordance with a varicty of , configuratl.o;n data provided to it by the admuustratur of email system 20, 'f ypically, this corifi;ura.tion dita comprises scveral configuration ~ata flI~s and ~~~ set uf couftguration data files is referred ta heein a~ the confxguration data set.
10025] Tht COflf1~uratiun data sex camprises a database of a11 of the wide varxety of infa-:rrnat~Qna including email user acowit infarmat[on, email rauting data, email accouut alias infarm$tit~ einii1 group informati.ori, etc. which ~ email server 24 requixcs to pruce~ ~mai1.
In a prcsent embodiment of syst~~ 20a ttis dat~base i a databazof flat (i,e. -~ non relatianal -~-,E
, .
. ..~
.w-..:.......
. . ' Mar, 12, 2UQ8 12:32PI~ pi ljj.
12 tJ\RCH 2p~p ~ ~ i2.Q3=~8 entries) ASCtt text files whi.ch the email sexver piogram parses tQ dte;xnlne its needed configumtion data.
10026] To chang~ the canfiguratlon thta st af email system 20, th~
adrniniitrator seleots One of emai1 server~ 24 and eÃ~cutes an admin~stration tooI thereon. Usirlg th~ ~dniinistration tool, the administratnr will set the state of the email server to reflect to the ath~~ email servets 24 that Yt is ~mail seruer 24 which ls exccuithg the admanlstration fiool.
This email server 24 executing the idmiuistratian too1 is refened to herein as a'primaiy" server.
[0027] Preferah1y, each emaiX server 24 fas a stored copy ~fthe adniinistra~orl t~ol an,d the almxxiastrator can access any email server 24 to execu.te the c+apy of the achriinistration tool stored thereon and pmmote t1at server t4 prlmary server status. While it 1~
presently preferred that the aclministratl.on to ol check, at start tip, to ensure that xt is the anly lnstmxce of the administration tool executiig ln emial system 20, thus ensuring that orly a siiigle prirn,ary server ex,xsts at any time, this ls merely a d~sir~d aspect and xt is not overly prablematic if twn ar email settets 24 ha.v~ primary server status at tlae sane time, as will b~come apparent frorn the diSGuSSian belaw.
[tO2S] The administntion tool includ~s an HTML server so th~t the administrator cnn access the administratio~ tool via aconventiona,l web browser on administxation terminal 44.
Accordingly~ in additinn to the above-mentlaned database of ASCTI flat files~
preferably the o4nf guration data set further incIud~s one Qr more HTML f les which correspon.d to the ASCIt contents ofthe f1at file dat$bas~. Thesv HTML files ~re used hy #he HTML
server component of the adrninistmfiion tool to cons#rx,tct the HTML pages displaying the present data stored in the ASCII flat Hene at least one email seruer 24 in the system 100 stores both at least one HTML f1e reflecting the current settings of the configuratlon data set and at least one data f 1e representing the confaguratian data set. The at least one email server 24 provldes cQpies of both the at least One HTML f le and the at least on~ data Fle to ttte plum.lity ofernail servers 24 in response ta the rrequests from tMe pluralil.y of.email ser-rers 24r requests from tbe Flurality ofe-m$il s~nrers described beIow.
[0029] The adninistrator interacts with the pages displ~,~yed hy the HTII~~
~erver ' com~~nent oftbe adrriinistrafiion tool to review lh~ ~Qufiguralaoaa ~~~ ~~~
~~ern~il systern ~~
and to ef fect deslred changes ft the ct-nf guratxon data set. Any changes made by the _7-.-, , ~s~y ~ ~ r~ ~~~ ~ - ~{r~ r~ ~Yl "L'C+ A7 d.zs6 :n , = -ae't Cd :i ~ utrE3 .
~,~i ~ "~~p ~ ~ f ~~=. ..w_~w,..,.
' . CttCaou6 ~ OI99 r ' Mar,12, 2cJ@8 12:32PM ~, ~348 P, 16 .
. 12 NIARCH A ~
~oo 12.O3O8 adminisfrtor aure stored in the ddabase and in the HTML files to ob#ain a.n updated configuration dat~ set, ~OO3O] T'he operation of emai1 system 20 wilz uow b~ desaribed. As m,entioned abov;
each email serrer 24 in email syslem 20 executes self addressing, annouiiceitient and discovery protaeo1s. With these protocols, when an email server 24 is ronnecled to the dat~
Coniflnunicntion n~~ijc, xt first obtaim a valid unique identifier which, in tha case of the presenaly pxef~~ed embudirnent wh;i~h uses II' as the network protocoi, is an 1F address.
Ncxtthe added~ eni1 server 24 announces ilself ~o the athcr dcvices in email system ~~, vii. a hroacicast rnessage, which ind,xcates its ad,dress and the type of d,evice it is (i.e. -- an email servei:).
~OO3 1 ] Each email server 24 in email system ~Q maintains a list of the other ds in email system 207 which list includ~s the address and type of each device.
Accordingly, when a newly added email server 24 announccs itse1fto email system 2O, each olhcr email server 24 updales its list with the broadcast inf4rmation. Fthther, each other email server 24 xn systena.
, 20 sends a message ta the newZy added email server 24 infarming it of ifs respective ad.dress and its type sa that the nevitly a+dded email server 24 can populatethe 1i~t it maintains of all of the dev%ces in email system 24. Depending upnn the implementation of load ba1ancer 40, load balaneer 40 will either auto discover t,he newly added eniail server 24~ ox the administrator witl exp1icit1y notify 1~ad balancer 40 of th~ presence of the newly added email server 24. 1t is cantemplated that, fn othei embolim.en#s, load balancer 40 can also li~ten for ~~oadcast .
messages fromnewly added email serr~rs 24 azd update its r~cord~ accordkngly.
[00321 Next, the added email server 24 broadcasts a m~~sage rcqucsting the current version of the configuration data set for email sewers 24 in email system 20.
Tn rsp~nse th this broadcast messag+~, the email server 24 which is the primy server, or ar,other designaked email set~ver 24, responds to the add,ed email server 24 prnvxding infbnmation allowin~ added email ;erver 24 to deternthie if it has an up to date canf guratlvn data set.
In apresent ernbodimetrt, this response mesae includes a timestamp, or othet' versxon indiatora xndicating the curirent version of theconf guratian data set far email system 20. Ad.ded email serrver 24 comFares the Xeveived ~inies1amp t+a the tirnestamp of its stared corliguration data set and determines if it is up ta date. rf it is not np to date, added email crver 24 requ~sts , .
L r, r ~ s ~
i.~ rn ~t7 ~ ~ ~d +1 {s ru ~ r ' ;.1=.... , , , . , .. ...,..A. r ,ab~.......
~ . ~~"~~~~~~~~ ~ ~ ~ ~ ~ ~ ~. ~ ~ ~
. ~_ 1 ' ~fa~,1~, ~a~$ 1~~;~3P~ ~1~, ~348 P, 1~
. ~~ ~
~ ~ ~~~ -~ ~~ ~~1;~ ~ ~ ~
E ~,~ ~~ ,~~
prin~~ ~m~il ~~rv~r ~r ~e~i~~'t~. ~m~'il ~er~r~r ~~ tc~ ~r~rvid~ ~. tim~e~t~np far each fi1~ in th~
~~~i~ati~n dataha~~. Aci~~~ ~m~i1 ~~~rv~t ~~ c~mp~r~~ th~ r~ived time~t~~~
~t~o ~i,~
~mn~tam.~~. ~f it~ ~ta~~ c+~~,fi~uux~ti~~: ~.atah~~~ ~d d~termine~ wh~i~h, if ~ny, ~ile~ ~~+~-~ t~
upd~t~d.
~~~~~~ A~~~d ~~~uil ~~rv~r ~~ ~rill t~,~ ~~qu~~t ~.~ ~rimaxy ~r d~~ignat~~
~n~il ~~rv~r ~~
to p~~v%~~ it with th~ inf~rm~.t,i~~, n~~~ tu upd~t~ the con~gurati~n data, ~t ~i1~~ w~i~~ ar~
autd~t~d.. ~n a pr~~~nt ~mh+c~dim.~~t, ~d~l~~. ~rver ~~ ask~ t~~ pri~ry ~r ~~i~n~t~ ~n~~i ~~r~rer ~4 fat ~h~ ti~i~~t~m.p ~f ~ach af#hc ccynfi~uxati~n da~a ~ ~le~ ~nd the add~d ~l s~r~r ~~ d~t~rmir~~ ~hi~h~ if ~,ny~ ~f th~ ~.1~~ i~a xt~ c~nfi~urati~n d~ta ~~t ~r~ ~ut ~f ~~~
fil~~. Th~ ~dd~d ~~n~il ~rv~~r ~~ ~n requests th+~ upd~~d ~1~~ ~~ th,~,~~ ~~
~~~i~lated ~lnail ~rv~F ~4. ~
~~~~4~ T~ a~~~~~ntly pr~f~d. ernhod~rn,~t, t1i~ ~1~.~dd ~~~il ~~r~er ~~
id~nt~ie~ tl~~ ~nt of ~~ ~~~ ~h~tt i~ wis~h~~ t~ upd~t~ atYd ~r~vid~s~ th~ t~n~+~~t~~ ~f ~~h ~f th~~~ ~~~~ t~- t~~
p~ ar ~~~i~na~d ~rr~ail se~v~r ~~ v~~~ ~t~~~s ~i~ r~iv~~. tarn.~~t~p~ ~f ~~~h r~~~i~v~ ~il~ ta th~ timesta~mp ~f ~i~ u~ ta ~at~ v~~~t~~,~ ~f ~~h ~~~~v~ f~l~
~d ~~l+~r~ain~s ~n~. ~n~t~ ~l.y t~.~ "~~~~~' ~i.~. ~ th~ d~~'~z~n~e~ b~vv~~n t~ie Qut ~f d~t~ ~"il~
~d th~ ~xa.r~nt fil~~ ~ r~1u~+~ th~ a~n~unt. ~f data trau~rr~itt~~. xt i~
h~~v~v~r ~~nt~r~plat~ t~
~~r~pl~~e r~pla~~~ne~at ~il~s c~n instea.d ~ ~can~rnitt~d if ~~sire~.
1~~~] ~+~~ ~+~~d ~mai1 ~erv~r ~4 ~has u~~at~d i~ conf'i~ati.an dat~, ~~t t~
th~ curr~aat l~v~l, ~d~~d ~ma~il ~~v~r ~4 i~ ~ fi~ly ~p~a~~~ d~~ri~~ i~ ~m~il ~y~t~. ~4 ~t~d can h~~in ~r~~~~si~n~ ~m~ii na~~~a~+~~. ~
1~~~] A~ ~~~il ~t~~m. ~~ ~p~r~e~, ~n a~mir~~trat~r ~axa fr~m tsn~.e t~ time l~~ in#~ the prirr~ ~m~il ~rv~ ~4 t~ ~.~~~~~ th~ ~~mini~tr~tion t~~l to ~dd +~r m~~ify th~
c~-nfi~r~~i~n da~' ~ ~f ~m~i~ ~ ~t~m ~~, ~n~~ ~r ~-r~ir~~#a~r ia~s na~~.x~~d~ ,an~ ~~.v~ #~~
~~a~.~ur~~,~~
y ~at~ ~et, prim,~ry ~ma~~ ~~~~~ ~4 ~~~~~~ ~ ~m~s~~~~ wi~.i~ ~;~~iX ~~~~ ~~
i~ndi~t~g ~~
v~r~i~fl l~~~i nf th~ u~d~,fi~~ ~~~~~ti~~ d~t~ ~~t. Ea~h ~m~.l ~~v~r ~4 ~rhi~l~ r~~~iv~ t~~
b~roadc~ ~t~~~~~ ~-~np~r~~ ~h~ ~~r~i~n ~fl~v~l ~f th~ npd~t~~. ~~n~~~r~i~n dat~ ~~ ~'ith th~
v~i~~ i~~~l ~-f it~ ~nfi.~ti~n d~t~ ~~t ta det~~rnin.e if xt need~ t~ ~~
updated. If ~' ~,~1 ~~rv~r ~~' det~nnin~~ that ti~,~ two v~rsiQn l~vel~ are ~,~t t1i+~ ~ame~ the ~mail s~r~'~x ~~ will ~~
-~
, r r' õ:1;; ,g~ ~ r~, r *
~a. ~ ~ ~~~ ;~., .. t. ~'' ;~ ~ '~ ~
il & Lf t3 ' . .. , s~ 'l ,~19 ; '' ~~r ~~~ ~ ~ ~ d.
~~- ~ ~' ~ ~ ~ . M.. _..~.....a,~,.~
...____-- _ ' ) uc16 uoiq ~ ..
' Mart I~~~ P.
12 20U8 12:33P1 a14~ ~
, 12 MARCH O8 12O3.o8 , implement the atove-decribed eommuniration with the prima.ty ar designated email server 24 to update the configuratiQn data set in the email server 24.
10037) For redundanuy, t4 ensure that eacli email server 24 is executing a current eonf gurati~n dat$ set wi.thin ~ aceasonable time, ttie message f~om primiiy or designatecl email Server 24 indicating tlae ver~ion level of the eonfiguration data set cin be bto~lcast seveFal times ta mitigate the ehanees of a corrupted laransrnission oz ather event preoluding an email server 24 frem reeelvlng the message, Further, it i~ presently pxeferred that eaeh email server 24 quety t13e prirnary or designated email server 24 frorn time te time ta ensure that the email , seiver is executing tlte curnent version level of the e+anfiguratian data set.
[0D38] It is eontemplatea that, if email systelu 20 has a large number af etnai1~ servers 24 thereint it ea,n be desiied p,r~auy ~rver 24 first update the eunfiguration data set of one or more de~igtiated email servers 24 hy directly notifying those designated email servers 24 of the current version 1eve1 of tb,e euif1gurt.~~~ data se1. Once thec clesxgnated email ~ervers have had their confguratiun data sets updated, a broadeast me~sage ear- b sent from the prrizuary email se:rver 24 to eaeh email server 24 indicating the current versiofl level af the corfiguicafiaen data set and 1ndicatlng the addresses of tht primary wnd designated eaaii1 serv'rs 24 from which the updated eozfiguration data set ean be obtained . Each email server 24 ean then seleet one ef'the primary or designatx1 email serv,rs 24 frona whirka to obtai.n the updated eonfigwation data set. In this mannec, the prlmary email server 24 wxll not be overloaded witb requests from email servers 24 to updHle theix cenfiguration data sets and, iI'pdmary server 24 should suffer u failure before all of email servers 24 have been updated, tlie updatin.g ' of the eeifguration data sets of the rernaining email servers ean be performed by the designated email sexvexs.
[0039] It is fuwther eontemplafed that any of email se.rvers 24 ean be selected to act as a priumary email server 24 at any time. Specifkally, an administratar cann l~g onta any email server 24 mnd execuxe the administration taol~ effectively prom.oting tlaat email server 24 to pri.mary status. Tt is preserttly prefcrred, altkaough not essentl.al, that only one email servex 24 be aet,in~ ~a prim*.ry server ~# u time. In such acase, as the administrati.un toal is exeented by th~ admxnistratvr the tovl braadcasts a n~essage informing eaeh email server 24 that it l~
., ~ 1 0.,, .w.,.. .. , , w..,..._.. o_,...... _ .
~
'~~
1 w .,~'~ .*~.~u'~' ~ .
~3 ~36 o~~i9~~ ~
1 ....-+=,.,.. .. t-+. ' d Ma r,12 , 2O8 12:34PM NoQ348 P, 19 ' 1MARCH 2OO 12.03.08 :~ flow the primaty server. Any other em,ail servec 24 which was acting as a primary server and which receives this message vi11 demote itslf and no langer act as apnrnary server.
tOo4ul In the case where a primary server ha an upclated cnnfiguration data set arad is in the gra~~~~ ofproviding updntes to emai1 sewers 24 when it suffers a failur, and ifno de~igated email sezver 24 i~ present in system 20~ then each email server 24 which Is unsuccessfn1ly attempting to receive the upda.ted configuration da,~ set from the prirnaiy server will tane out" after making a pr-s~lected num.her nf attempts ta cantact th.e prinary email server 24. Once ~n ~mai1 server has txperienced a iime Quta it will broadcast a m.~~sage 1o the other email servets 24 xn eznail system 20 requesring nntification, of th~ version Ievels of the other email ser3rers 24 and tie other email servers 24 will respond advising oftheix versiou 1eve1s. The em.ail server 24 win evlfw th~ xesponses nnd seiecl one emaif server 24 frum the exn~~ ~ervers 24 that have replied with the hlghest cutrent level con.f gauratxon datn set and vvilx pexform th~ ahuve-descrih+ed conmnunication with the selected email server 24 to upth~te th~
canfiguxation data set in the email server 24. In da~ case nf an email serrer 24 being added ta systEm 20 afte~r a failure of a primary server 24a n simrlar thne Out process will 1~~ ~~rforncd.
~
7t is :ftuther ccna.templated that one or mor~ ~ervets 24 n be designated reduced status emaiY servers which are preventel from being ~eIecfed 1o be primary or d.esignated +email servers. In such n case, the zeduced status email server~ operate a~
de5criI,ed above, excegt that thcy da nat store a copy of the aclminislratian tovl and thus cann,at ex~cute it.
Fxuxher; wthey have no need for the HTML fi~es for the ndminlstratlon tool, th.eir canfiguratinn data sets only in.clude the da#abase of flat ASCII fi1~s and they only update these fiIes s version 1eve1s nf the configuration data set change. FinaI1yfr such ieduced s1a~ ~mai1 h servers 24 carmot updake enaail servers 24 in th.e event of the failure of n primary ernail server 24, (00421 . Figure 2 shows waather emlodiment of an errail system 100 in acvordaxc~ wxth the prenl invenrion and wherein 1ike cornp~net%ts to thase nf emait system 20 are indicated with like Feference nurn~rals. As i11ustrated, sy~~em 100 includ~s a second ~ata comrnunicariou,s network com,prasing a swi1oh 1 04 a,ncl a set of +comnaunic~#lon linls 1 08 , (indicated in clashed Ilne) fio each emi1 server 24. As will ~e app~tent to those of sklli in fihe art, thu~ seonU data communications netwark operates un parauel to the fitst dau .,I1_ ~~~ ~
: ~~~~'~r ~ '~~ ~~ ~ ~ ~
~N
~ , . .r.......~...~õ,~
, nQia = Mar1 12, 2Q8 12:34PM 111a~348 P. ~@
.
MARCH ~8c 12.03 1~
.camn:~unictaons network but zs Iogically, and eiectrically} independent tram it atad 1s th~
~~ci;ire fiom it, .
[0043] Thi~ second clata eamrnunieatiQns is u.tilized as an adminzstration and configuration network ~or email system 100 arid messages and signals 1aetween email se:rvers b 24 refating to the abave-descrilecl cot~'iguxation da#abuse, self adtressing and announcement a nd di~eovery protocols aze effected through tl~s secon.d data commuthcation~
netwnrk, iath~r than the datn cnmmtnicatinn network of links 2$ ~nd swxtch 32. By using the second, data commuuications network for th~ rnessages and signals reIating tp the ci'-a'igurtion and adrninistration of email system 100, a higher level of security is ohtaained within email system 100 as a~ess to the conf guration and administ.ration da#a is not avai1ab1e to devices outsxd,e.
. hn addition, increased conamunication speeds are often an the second data conununicatxons netwoxk, re1atrve to those Qhtained on the first dat~
~omnunicationas netwo7rk, as there is le~s data traffic on ~~ secon.d data ccmmunxcati,ons netvork. hx this emhodirnent, the first data communications network carries email to and from each email server 23 and ecternal network 3 6 and global rnanagenent dataa such as DNS
laakups, tune sync mes~ages, LDAP andlor othee policy 1ookups109441 Tl'ie present xnvention provides a.n ernaii system 20, 100 comprising a plurality of ' email servers 24 connected hy a data commtua~~atians network Ema,i1 system 20,1 ~~ avoids single poin~ ~f f~i1nre by eamplnying multiple ernail servers 24 whtch se1f canfigure, withont rquuing dedxcated servers, tlarough ~elf addressing and discovery and annnuncement pratocols. An~mai1 server 24 can act as a gzimaxy email servex hy executing an aclministration tool allow~g an admthistrator to modify the configuration data. st whxch the ennail servers 24 utiti~e and the pritnry ctniiZ ~~~r wilI then ann,unce th~
resul~~ c1inge in the version level of tl~e configuration data set to other email servers 24.
Each emal seiver 24 will tlai determine and r~quest any needed updates tn its r~~ective confguratxon data set frorn the primary ~mail server or another email server 24. The resulting email system 2 0,1 00 is. robust, avaiding single points of failure; sc1ab1e, as additional email processing c~paei~y cat he achieved hy adding additia.nal email servers 24; and is ~impf e to administ~r as changes to the configuration data set can be m;ade at any emaiX server 24 with a copy ofthe appropriate administratinn tQQI and suoh changes automatxcally propagate through system 20,1O0 ~12-s ~~
~
u-.. .'.-..,.., ...._..,......_ ....,~.
~ w _r . d ~~:~~~ ~~- ~ =, ~ ~ ~ t h~ar1 12. 2O8 12:35PM . 21oi9a:
V
12 MARCH 2.003 12.O3.O8 to~451 The alove-described em~~diments af the itivexfli~n are intendd to be exampl~ ~f the present inrrention and alter,ations and modifications may be effected thereto, by those of skiXl in th~ art, withou~ ~~parling from the scope of the invention which is defined so1e1y by ' the clainls appende~ ~~~eto.
~ .
B
, .
. {
r 13- a 1J~ 1E1o31eoQ8 ~i3 ~38 -~416 9~0 15O I received /+
.. , , . .... www"~..~taW
4Ma r,1 2 2Q8 12:31PM
~~.tl,...~..~._ ~ ~. ~. , , NIARCfj ~, 2 ?008. 12.0L08 which are xzi. th~ range af from 192.168Ø0 to 192,168,255,255, ure commonly used for such purposes. .
[00181 One of the design goals for systern 20 is to remove pas~ib1e single filure points ~
. from system 2O, For cxamPlc, while data switclt 32 is logically one devlce, it is prefened that data swlt~h 32 is physxca,lly implemnted as two or anore data switches with au~omatic fa,ilover. Further, a shown., email sysrem 20 comgrises a plural.%ty of email servers 24 such fihat failure Qf aR emsil sesver 24 does not prevent conthued opemtion of system 20, l00191 More signlf cantly} to fuurther remove single points af failuae, it xs d.esired tha.t netwo:rk protocol services requiriang a ded,icated server, such as DHCP or DN~, are avoided and distributed nelwork pratacol servlces are instead etriployed. Tberefore, self adth'essirig a~d announcement a,n.d discovery protocals are ernployed, in each email server 24 such that each email ~erver 24 is assigned a va1id and un.ique (within system 20) address and is sna.de aware af the other email servers 24 and devic~s on the data cmmmunications network of system 20 without the need for ~eUivatcd devi~~s in system. 20. Such ~ifadd.rcssiug and aunouncement ~d discovety ~~otoco1s a;e weu known to those Qf skill in the art and, in a present embodiment of the invention whYeh employs 1p' aver an Ethernet transport layer, the Link-Local Addressxng and refated Protoco1s an.d rnetlxods proposed lay the Zeroccnf Working Group (wovw.ze,~oconforg) are utxlized~ although uiy oth.er suitahle selfacldressing a.nd a-nnoimeezmnt and discovety protocols can be tsed as wi11 be a~parent ta thase of sldil in the ait Exam,ples of such other prota~ot~ ~an include the BanjnurTM pfotocol ud.vanced 'hy AppleTM Compu.ter and ot,hers, or the Universal Plug and Play (UpnP) protocol ad.vanced hy M1crosoftTM and, others, [0020] Email messages are supplied to and from email system 20 ower an external netwoxk 36, which can he the lnternet or muy other network. 1n a presently ,preferred embadiment of the inventiona a load balancer 40 intereonnects external network 36 and the datn communiaation netvark of email system 20. Load balancer 40 pexforms the neeess&y addt~~s franslatiQn (NAT) for devices on external network 36 to communicate with email servers 24 and also perfarms load baIancing betwecn email servers 24.
Specifica11y, load balancer 40 directs messages fiom extenna[ network 36 to specif c email servers 24 on a changing basis in an atter*pt to ensure that cinails servets 24 have sitnilar processing ltads ta _5W
=t _ -~
=~ ~' ~ ~ s~ ~ 3'~ ~ ' ~ ~'~ ~ ta~~ iiur w~
. ... r _d. ...J+L1 ..A.w.......e.... -.wWiwrVf .
ti o ia r12, 2U8 12:31PM oP
12 MARCEl 2008 12.O3O8 , prevent corgestian and/or tbra~birg at any email servex 24. Load bthinccrs are well known and can emp2ay simpl~ scbedulinglassxgmneiit al~aiithm~ sucb, as round robin, or mare compl~ac ad~ptivc algorithms such as those which monitor respQnse tunes from ~evices to which tasks a~e assigned to detennlne the actual grocessing load at a devicc, xf email scrvers 24 1n systeI,u 20 are not h~mog#':neoIls, th1s ldtter ackiptiVe type of laad balaf'1Cing 1s pref e,1'Ced, [00211 Sama laad halancers 40 can alsn pravide firewall sercrieesa such a~
those sold by .
FS NctworlsTM ~ f 401 Elli4tt Avenue west Satt1e, w,A 98 11 9. Tf 1oad balancer 40 does not pravide fircwall servi.ces and if such ~zviccs are dcsircd~ then aseparate ftrewall device can bc provided bekwcen laad ba1ancer 40 and ~xterna1 network 36.
(00221 It i~ also contemplatcd tbat load balancer ~~ can be ozrtittcd artd email servers 24 in system 20 caii instead ~c1f-imp1cment luad balancing via one Qr mure of the knowra me,hods, such as"~~und rnbin DNS", but this is less pmferred thin having aseparate load bibncer 40, ~speCially xf email system 20 has email servers 24 with different processi~~
~~pabili~~s as such ~elf implemented 1oad batan~ing methQds tcrtd tQ be 1es cffcctive at load balaucing and ure more suseeptible to device failuucs.
100231 An administratic~n terrnitial 44 is c~rnected tv load balancer 40 by adirect data tink or via cxterna1 netwark 36. Administtation terminal 44 can canneet ta that email server 24 in system 20 an,d is used to view ind/or modify the canf~guratiun data set uf systcm 20x as +described belaw. The coustruction Qf ternina144 is not Farticularly lituited and, in a pr~~ently preferred cnabadirncnt, is any device, such as ageneral purpose personal e4mputer, which can execute an HTNiL browser, r 1U024] As mentiancd abovc, each of email se.rvers 24 executes an email server program.
, Eacb email scrvcr 24 exe~utcs thc email scrver pragram in accordance with a varicty of , configuratl.o;n data provided to it by the admuustratur of email system 20, 'f ypically, this corifi;ura.tion dita comprises scveral configuration ~ata flI~s and ~~~ set uf couftguration data files is referred ta heein a~ the confxguration data set.
10025] Tht COflf1~uratiun data sex camprises a database of a11 of the wide varxety of infa-:rrnat~Qna including email user acowit infarmat[on, email rauting data, email accouut alias infarm$tit~ einii1 group informati.ori, etc. which ~ email server 24 requixcs to pruce~ ~mai1.
In a prcsent embodiment of syst~~ 20a ttis dat~base i a databazof flat (i,e. -~ non relatianal -~-,E
, .
. ..~
.w-..:.......
. . ' Mar, 12, 2UQ8 12:32PI~ pi ljj.
12 tJ\RCH 2p~p ~ ~ i2.Q3=~8 entries) ASCtt text files whi.ch the email sexver piogram parses tQ dte;xnlne its needed configumtion data.
10026] To chang~ the canfiguratlon thta st af email system 20, th~
adrniniitrator seleots One of emai1 server~ 24 and eÃ~cutes an admin~stration tooI thereon. Usirlg th~ ~dniinistration tool, the administratnr will set the state of the email server to reflect to the ath~~ email servets 24 that Yt is ~mail seruer 24 which ls exccuithg the admanlstration fiool.
This email server 24 executing the idmiuistratian too1 is refened to herein as a'primaiy" server.
[0027] Preferah1y, each emaiX server 24 fas a stored copy ~fthe adniinistra~orl t~ol an,d the almxxiastrator can access any email server 24 to execu.te the c+apy of the achriinistration tool stored thereon and pmmote t1at server t4 prlmary server status. While it 1~
presently preferred that the aclministratl.on to ol check, at start tip, to ensure that xt is the anly lnstmxce of the administration tool executiig ln emial system 20, thus ensuring that orly a siiigle prirn,ary server ex,xsts at any time, this ls merely a d~sir~d aspect and xt is not overly prablematic if twn ar email settets 24 ha.v~ primary server status at tlae sane time, as will b~come apparent frorn the diSGuSSian belaw.
[tO2S] The administntion tool includ~s an HTML server so th~t the administrator cnn access the administratio~ tool via aconventiona,l web browser on administxation terminal 44.
Accordingly~ in additinn to the above-mentlaned database of ASCTI flat files~
preferably the o4nf guration data set further incIud~s one Qr more HTML f les which correspon.d to the ASCIt contents ofthe f1at file dat$bas~. Thesv HTML files ~re used hy #he HTML
server component of the adrninistmfiion tool to cons#rx,tct the HTML pages displaying the present data stored in the ASCII flat Hene at least one email seruer 24 in the system 100 stores both at least one HTML f1e reflecting the current settings of the configuratlon data set and at least one data f 1e representing the confaguratian data set. The at least one email server 24 provldes cQpies of both the at least One HTML f le and the at least on~ data Fle to ttte plum.lity ofernail servers 24 in response ta the rrequests from tMe pluralil.y of.email ser-rers 24r requests from tbe Flurality ofe-m$il s~nrers described beIow.
[0029] The adninistrator interacts with the pages displ~,~yed hy the HTII~~
~erver ' com~~nent oftbe adrriinistrafiion tool to review lh~ ~Qufiguralaoaa ~~~ ~~~
~~ern~il systern ~~
and to ef fect deslred changes ft the ct-nf guratxon data set. Any changes made by the _7-.-, , ~s~y ~ ~ r~ ~~~ ~ - ~{r~ r~ ~Yl "L'C+ A7 d.zs6 :n , = -ae't Cd :i ~ utrE3 .
~,~i ~ "~~p ~ ~ f ~~=. ..w_~w,..,.
' . CttCaou6 ~ OI99 r ' Mar,12, 2cJ@8 12:32PM ~, ~348 P, 16 .
. 12 NIARCH A ~
~oo 12.O3O8 adminisfrtor aure stored in the ddabase and in the HTML files to ob#ain a.n updated configuration dat~ set, ~OO3O] T'he operation of emai1 system 20 wilz uow b~ desaribed. As m,entioned abov;
each email serrer 24 in email syslem 20 executes self addressing, annouiiceitient and discovery protaeo1s. With these protocols, when an email server 24 is ronnecled to the dat~
Coniflnunicntion n~~ijc, xt first obtaim a valid unique identifier which, in tha case of the presenaly pxef~~ed embudirnent wh;i~h uses II' as the network protocoi, is an 1F address.
Ncxtthe added~ eni1 server 24 announces ilself ~o the athcr dcvices in email system ~~, vii. a hroacicast rnessage, which ind,xcates its ad,dress and the type of d,evice it is (i.e. -- an email servei:).
~OO3 1 ] Each email server 24 in email system ~Q maintains a list of the other ds in email system 207 which list includ~s the address and type of each device.
Accordingly, when a newly added email server 24 announccs itse1fto email system 2O, each olhcr email server 24 updales its list with the broadcast inf4rmation. Fthther, each other email server 24 xn systena.
, 20 sends a message ta the newZy added email server 24 infarming it of ifs respective ad.dress and its type sa that the nevitly a+dded email server 24 can populatethe 1i~t it maintains of all of the dev%ces in email system 24. Depending upnn the implementation of load ba1ancer 40, load balaneer 40 will either auto discover t,he newly added eniail server 24~ ox the administrator witl exp1icit1y notify 1~ad balancer 40 of th~ presence of the newly added email server 24. 1t is cantemplated that, fn othei embolim.en#s, load balancer 40 can also li~ten for ~~oadcast .
messages fromnewly added email serr~rs 24 azd update its r~cord~ accordkngly.
[00321 Next, the added email server 24 broadcasts a m~~sage rcqucsting the current version of the configuration data set for email sewers 24 in email system 20.
Tn rsp~nse th this broadcast messag+~, the email server 24 which is the primy server, or ar,other designaked email set~ver 24, responds to the add,ed email server 24 prnvxding infbnmation allowin~ added email ;erver 24 to deternthie if it has an up to date canf guratlvn data set.
In apresent ernbodimetrt, this response mesae includes a timestamp, or othet' versxon indiatora xndicating the curirent version of theconf guratian data set far email system 20. Ad.ded email serrver 24 comFares the Xeveived ~inies1amp t+a the tirnestamp of its stared corliguration data set and determines if it is up ta date. rf it is not np to date, added email crver 24 requ~sts , .
L r, r ~ s ~
i.~ rn ~t7 ~ ~ ~d +1 {s ru ~ r ' ;.1=.... , , , . , .. ...,..A. r ,ab~.......
~ . ~~"~~~~~~~~ ~ ~ ~ ~ ~ ~ ~. ~ ~ ~
. ~_ 1 ' ~fa~,1~, ~a~$ 1~~;~3P~ ~1~, ~348 P, 1~
. ~~ ~
~ ~ ~~~ -~ ~~ ~~1;~ ~ ~ ~
E ~,~ ~~ ,~~
prin~~ ~m~il ~~rv~r ~r ~e~i~~'t~. ~m~'il ~er~r~r ~~ tc~ ~r~rvid~ ~. tim~e~t~np far each fi1~ in th~
~~~i~ati~n dataha~~. Aci~~~ ~m~i1 ~~~rv~t ~~ c~mp~r~~ th~ r~ived time~t~~~
~t~o ~i,~
~mn~tam.~~. ~f it~ ~ta~~ c+~~,fi~uux~ti~~: ~.atah~~~ ~d d~termine~ wh~i~h, if ~ny, ~ile~ ~~+~-~ t~
upd~t~d.
~~~~~~ A~~~d ~~~uil ~~rv~r ~~ ~rill t~,~ ~~qu~~t ~.~ ~rimaxy ~r d~~ignat~~
~n~il ~~rv~r ~~
to p~~v%~~ it with th~ inf~rm~.t,i~~, n~~~ tu upd~t~ the con~gurati~n data, ~t ~i1~~ w~i~~ ar~
autd~t~d.. ~n a pr~~~nt ~mh+c~dim.~~t, ~d~l~~. ~rver ~~ ask~ t~~ pri~ry ~r ~~i~n~t~ ~n~~i ~~r~rer ~4 fat ~h~ ti~i~~t~m.p ~f ~ach af#hc ccynfi~uxati~n da~a ~ ~le~ ~nd the add~d ~l s~r~r ~~ d~t~rmir~~ ~hi~h~ if ~,ny~ ~f th~ ~.1~~ i~a xt~ c~nfi~urati~n d~ta ~~t ~r~ ~ut ~f ~~~
fil~~. Th~ ~dd~d ~~n~il ~rv~~r ~~ ~n requests th+~ upd~~d ~1~~ ~~ th,~,~~ ~~
~~~i~lated ~lnail ~rv~F ~4. ~
~~~~4~ T~ a~~~~~ntly pr~f~d. ernhod~rn,~t, t1i~ ~1~.~dd ~~~il ~~r~er ~~
id~nt~ie~ tl~~ ~nt of ~~ ~~~ ~h~tt i~ wis~h~~ t~ upd~t~ atYd ~r~vid~s~ th~ t~n~+~~t~~ ~f ~~h ~f th~~~ ~~~~ t~- t~~
p~ ar ~~~i~na~d ~rr~ail se~v~r ~~ v~~~ ~t~~~s ~i~ r~iv~~. tarn.~~t~p~ ~f ~~~h r~~~i~v~ ~il~ ta th~ timesta~mp ~f ~i~ u~ ta ~at~ v~~~t~~,~ ~f ~~h ~~~~v~ f~l~
~d ~~l+~r~ain~s ~n~. ~n~t~ ~l.y t~.~ "~~~~~' ~i.~. ~ th~ d~~'~z~n~e~ b~vv~~n t~ie Qut ~f d~t~ ~"il~
~d th~ ~xa.r~nt fil~~ ~ r~1u~+~ th~ a~n~unt. ~f data trau~rr~itt~~. xt i~
h~~v~v~r ~~nt~r~plat~ t~
~~r~pl~~e r~pla~~~ne~at ~il~s c~n instea.d ~ ~can~rnitt~d if ~~sire~.
1~~~] ~+~~ ~+~~d ~mai1 ~erv~r ~4 ~has u~~at~d i~ conf'i~ati.an dat~, ~~t t~
th~ curr~aat l~v~l, ~d~~d ~ma~il ~~v~r ~4 i~ ~ fi~ly ~p~a~~~ d~~ri~~ i~ ~m~il ~y~t~. ~4 ~t~d can h~~in ~r~~~~si~n~ ~m~ii na~~~a~+~~. ~
1~~~] A~ ~~~il ~t~~m. ~~ ~p~r~e~, ~n a~mir~~trat~r ~axa fr~m tsn~.e t~ time l~~ in#~ the prirr~ ~m~il ~rv~ ~4 t~ ~.~~~~~ th~ ~~mini~tr~tion t~~l to ~dd +~r m~~ify th~
c~-nfi~r~~i~n da~' ~ ~f ~m~i~ ~ ~t~m ~~, ~n~~ ~r ~-r~ir~~#a~r ia~s na~~.x~~d~ ,an~ ~~.v~ #~~
~~a~.~ur~~,~~
y ~at~ ~et, prim,~ry ~ma~~ ~~~~~ ~4 ~~~~~~ ~ ~m~s~~~~ wi~.i~ ~;~~iX ~~~~ ~~
i~ndi~t~g ~~
v~r~i~fl l~~~i nf th~ u~d~,fi~~ ~~~~~ti~~ d~t~ ~~t. Ea~h ~m~.l ~~v~r ~4 ~rhi~l~ r~~~iv~ t~~
b~roadc~ ~t~~~~~ ~-~np~r~~ ~h~ ~~r~i~n ~fl~v~l ~f th~ npd~t~~. ~~n~~~r~i~n dat~ ~~ ~'ith th~
v~i~~ i~~~l ~-f it~ ~nfi.~ti~n d~t~ ~~t ta det~~rnin.e if xt need~ t~ ~~
updated. If ~' ~,~1 ~~rv~r ~~' det~nnin~~ that ti~,~ two v~rsiQn l~vel~ are ~,~t t1i+~ ~ame~ the ~mail s~r~'~x ~~ will ~~
-~
, r r' õ:1;; ,g~ ~ r~, r *
~a. ~ ~ ~~~ ;~., .. t. ~'' ;~ ~ '~ ~
il & Lf t3 ' . .. , s~ 'l ,~19 ; '' ~~r ~~~ ~ ~ ~ d.
~~- ~ ~' ~ ~ ~ . M.. _..~.....a,~,.~
...____-- _ ' ) uc16 uoiq ~ ..
' Mart I~~~ P.
12 20U8 12:33P1 a14~ ~
, 12 MARCH O8 12O3.o8 , implement the atove-decribed eommuniration with the prima.ty ar designated email server 24 to update the configuratiQn data set in the email server 24.
10037) For redundanuy, t4 ensure that eacli email server 24 is executing a current eonf gurati~n dat$ set wi.thin ~ aceasonable time, ttie message f~om primiiy or designatecl email Server 24 indicating tlae ver~ion level of the eonfiguration data set cin be bto~lcast seveFal times ta mitigate the ehanees of a corrupted laransrnission oz ather event preoluding an email server 24 frem reeelvlng the message, Further, it i~ presently pxeferred that eaeh email server 24 quety t13e prirnary or designated email server 24 frorn time te time ta ensure that the email , seiver is executing tlte curnent version level of the e+anfiguratian data set.
[0D38] It is eontemplatea that, if email systelu 20 has a large number af etnai1~ servers 24 thereint it ea,n be desiied p,r~auy ~rver 24 first update the eunfiguration data set of one or more de~igtiated email servers 24 hy directly notifying those designated email servers 24 of the current version 1eve1 of tb,e euif1gurt.~~~ data se1. Once thec clesxgnated email ~ervers have had their confguratiun data sets updated, a broadeast me~sage ear- b sent from the prrizuary email se:rver 24 to eaeh email server 24 indicating the current versiofl level af the corfiguicafiaen data set and 1ndicatlng the addresses of tht primary wnd designated eaaii1 serv'rs 24 from which the updated eozfiguration data set ean be obtained . Each email server 24 ean then seleet one ef'the primary or designatx1 email serv,rs 24 frona whirka to obtai.n the updated eonfigwation data set. In this mannec, the prlmary email server 24 wxll not be overloaded witb requests from email servers 24 to updHle theix cenfiguration data sets and, iI'pdmary server 24 should suffer u failure before all of email servers 24 have been updated, tlie updatin.g ' of the eeifguration data sets of the rernaining email servers ean be performed by the designated email sexvexs.
[0039] It is fuwther eontemplafed that any of email se.rvers 24 ean be selected to act as a priumary email server 24 at any time. Specifkally, an administratar cann l~g onta any email server 24 mnd execuxe the administration taol~ effectively prom.oting tlaat email server 24 to pri.mary status. Tt is preserttly prefcrred, altkaough not essentl.al, that only one email servex 24 be aet,in~ ~a prim*.ry server ~# u time. In such acase, as the administrati.un toal is exeented by th~ admxnistratvr the tovl braadcasts a n~essage informing eaeh email server 24 that it l~
., ~ 1 0.,, .w.,.. .. , , w..,..._.. o_,...... _ .
~
'~~
1 w .,~'~ .*~.~u'~' ~ .
~3 ~36 o~~i9~~ ~
1 ....-+=,.,.. .. t-+. ' d Ma r,12 , 2O8 12:34PM NoQ348 P, 19 ' 1MARCH 2OO 12.03.08 :~ flow the primaty server. Any other em,ail servec 24 which was acting as a primary server and which receives this message vi11 demote itslf and no langer act as apnrnary server.
tOo4ul In the case where a primary server ha an upclated cnnfiguration data set arad is in the gra~~~~ ofproviding updntes to emai1 sewers 24 when it suffers a failur, and ifno de~igated email sezver 24 i~ present in system 20~ then each email server 24 which Is unsuccessfn1ly attempting to receive the upda.ted configuration da,~ set from the prirnaiy server will tane out" after making a pr-s~lected num.her nf attempts ta cantact th.e prinary email server 24. Once ~n ~mai1 server has txperienced a iime Quta it will broadcast a m.~~sage 1o the other email servets 24 xn eznail system 20 requesring nntification, of th~ version Ievels of the other email ser3rers 24 and tie other email servers 24 will respond advising oftheix versiou 1eve1s. The em.ail server 24 win evlfw th~ xesponses nnd seiecl one emaif server 24 frum the exn~~ ~ervers 24 that have replied with the hlghest cutrent level con.f gauratxon datn set and vvilx pexform th~ ahuve-descrih+ed conmnunication with the selected email server 24 to upth~te th~
canfiguxation data set in the email server 24. In da~ case nf an email serrer 24 being added ta systEm 20 afte~r a failure of a primary server 24a n simrlar thne Out process will 1~~ ~~rforncd.
~
7t is :ftuther ccna.templated that one or mor~ ~ervets 24 n be designated reduced status emaiY servers which are preventel from being ~eIecfed 1o be primary or d.esignated +email servers. In such n case, the zeduced status email server~ operate a~
de5criI,ed above, excegt that thcy da nat store a copy of the aclminislratian tovl and thus cann,at ex~cute it.
Fxuxher; wthey have no need for the HTML fi~es for the ndminlstratlon tool, th.eir canfiguratinn data sets only in.clude the da#abase of flat ASCII fi1~s and they only update these fiIes s version 1eve1s nf the configuration data set change. FinaI1yfr such ieduced s1a~ ~mai1 h servers 24 carmot updake enaail servers 24 in th.e event of the failure of n primary ernail server 24, (00421 . Figure 2 shows waather emlodiment of an errail system 100 in acvordaxc~ wxth the prenl invenrion and wherein 1ike cornp~net%ts to thase nf emait system 20 are indicated with like Feference nurn~rals. As i11ustrated, sy~~em 100 includ~s a second ~ata comrnunicariou,s network com,prasing a swi1oh 1 04 a,ncl a set of +comnaunic~#lon linls 1 08 , (indicated in clashed Ilne) fio each emi1 server 24. As will ~e app~tent to those of sklli in fihe art, thu~ seonU data communications netwark operates un parauel to the fitst dau .,I1_ ~~~ ~
: ~~~~'~r ~ '~~ ~~ ~ ~ ~
~N
~ , . .r.......~...~õ,~
, nQia = Mar1 12, 2Q8 12:34PM 111a~348 P. ~@
.
MARCH ~8c 12.03 1~
.camn:~unictaons network but zs Iogically, and eiectrically} independent tram it atad 1s th~
~~ci;ire fiom it, .
[0043] Thi~ second clata eamrnunieatiQns is u.tilized as an adminzstration and configuration network ~or email system 100 arid messages and signals 1aetween email se:rvers b 24 refating to the abave-descrilecl cot~'iguxation da#abuse, self adtressing and announcement a nd di~eovery protocols aze effected through tl~s secon.d data commuthcation~
netwnrk, iath~r than the datn cnmmtnicatinn network of links 2$ ~nd swxtch 32. By using the second, data commuuications network for th~ rnessages and signals reIating tp the ci'-a'igurtion and adrninistration of email system 100, a higher level of security is ohtaained within email system 100 as a~ess to the conf guration and administ.ration da#a is not avai1ab1e to devices outsxd,e.
. hn addition, increased conamunication speeds are often an the second data conununicatxons netwoxk, re1atrve to those Qhtained on the first dat~
~omnunicationas netwo7rk, as there is le~s data traffic on ~~ secon.d data ccmmunxcati,ons netvork. hx this emhodirnent, the first data communications network carries email to and from each email server 23 and ecternal network 3 6 and global rnanagenent dataa such as DNS
laakups, tune sync mes~ages, LDAP andlor othee policy 1ookups109441 Tl'ie present xnvention provides a.n ernaii system 20, 100 comprising a plurality of ' email servers 24 connected hy a data commtua~~atians network Ema,i1 system 20,1 ~~ avoids single poin~ ~f f~i1nre by eamplnying multiple ernail servers 24 whtch se1f canfigure, withont rquuing dedxcated servers, tlarough ~elf addressing and discovery and annnuncement pratocols. An~mai1 server 24 can act as a gzimaxy email servex hy executing an aclministration tool allow~g an admthistrator to modify the configuration data. st whxch the ennail servers 24 utiti~e and the pritnry ctniiZ ~~~r wilI then ann,unce th~
resul~~ c1inge in the version level of tl~e configuration data set to other email servers 24.
Each emal seiver 24 will tlai determine and r~quest any needed updates tn its r~~ective confguratxon data set frorn the primary ~mail server or another email server 24. The resulting email system 2 0,1 00 is. robust, avaiding single points of failure; sc1ab1e, as additional email processing c~paei~y cat he achieved hy adding additia.nal email servers 24; and is ~impf e to administ~r as changes to the configuration data set can be m;ade at any emaiX server 24 with a copy ofthe appropriate administratinn tQQI and suoh changes automatxcally propagate through system 20,1O0 ~12-s ~~
~
u-.. .'.-..,.., ...._..,......_ ....,~.
~ w _r . d ~~:~~~ ~~- ~ =, ~ ~ ~ t h~ar1 12. 2O8 12:35PM . 21oi9a:
V
12 MARCH 2.003 12.O3.O8 to~451 The alove-described em~~diments af the itivexfli~n are intendd to be exampl~ ~f the present inrrention and alter,ations and modifications may be effected thereto, by those of skiXl in th~ art, withou~ ~~parling from the scope of the invention which is defined so1e1y by ' the clainls appende~ ~~~eto.
~ .
B
, .
. {
r 13- a 1J~ 1E1o31eoQ8 ~i3 ~38 -~416 9~0 15O I received /+
.. , , . .... www"~..~taW
Claims (13)
1. An email system comprising:
a plurality of email servers, each of said email servers being connected to each other of said email servers via a data communications network, each of said email servers being operable to self configure itself on said data communications network to communicate with the others of said email servers and being further operable to process email received from and/or sent to said data communications network in accordance with a configuration data set stored on each server;
one of said email servers being further operable to receive and effect changes, from an administrator, for the configuration data set stored on said one email server and to announce that the configuration data set stored on said one email server has been changed to the others of the email servers connected by the network and, in response to requests from email servers, providing the changes to the configuration data set to each requesting email server for storage and use thereon.
a plurality of email servers, each of said email servers being connected to each other of said email servers via a data communications network, each of said email servers being operable to self configure itself on said data communications network to communicate with the others of said email servers and being further operable to process email received from and/or sent to said data communications network in accordance with a configuration data set stored on each server;
one of said email servers being further operable to receive and effect changes, from an administrator, for the configuration data set stored on said one email server and to announce that the configuration data set stored on said one email server has been changed to the others of the email servers connected by the network and, in response to requests from email servers, providing the changes to the configuration data set to each requesting email server for storage and use thereon.
2. An email system according to claim 1 wherein the administrator can select any server from of a subset of the email servers to be said one email server.
3. An email system according to claim 2 wherein the administrator can subsequently select another server from the subset of email servers to be said one email server.
4. An email system according to claim 3 wherein the selected one email server presents a graphical user interface to the administrator to effect the changes to the configuration data set.
5. An email system according to claim 4 wherein the graphical user interface is an HTML
server application executing on the selected one email server which the administrator accesses through an HTML browser executing on an administrator terminal over the data communications network.
server application executing on the selected one email server which the administrator accesses through an HTML browser executing on an administrator terminal over the data communications network.
6. An email system according to claim 5 wherein said one email server stores both at least one HTML file reflecting the current settings of the configuration data set and at least one data file representing the configuration data set, said at least one email server providing copies of both the at least one HTML file and the at least one data file to the plurality of email servers in response to the requests from the plurality of email servers.
7. An email system according to claim 3 wherein, upon a failure of said one email server, the administrator can select another of said plurality of email servers to be said one email server.
8. An email system according to claim 6 wherein a subset of the plurality of email servers are limited email servers, each limited email server only storing the at least one data file of the configuration data set and the administrator being unable to select a limited email server to be said one email server.
9. An email system according to claim 1 further comprising a second data communications network connecting each of said plurality of email servers and wherein communications between said plurality of email servers relating to the announcement that the configuration data set stored on said one email server has been changed and the provision of the changes to the configuration data set to requesting email servers occurs over the second data communications network.
10. An email server system, comprising:
at least two email servers, each email server being in data communication with each other email server in the system via a data, communication network and each email server being operable to establish its presence in said data communication network, each email server being further operable to process, accordance with a configuration data set, email messages received and/or sent over the data communication network and wherein an administrator can connect to one of said at least two email servers through the data communication network to change the configuration data set, the one of said at least two email servers announcing the changed configuration data set to each other of the at least two email servers and providing the changed configuration data set to each other of the at least two email servers in response requests received therefrom.
at least two email servers, each email server being in data communication with each other email server in the system via a data, communication network and each email server being operable to establish its presence in said data communication network, each email server being further operable to process, accordance with a configuration data set, email messages received and/or sent over the data communication network and wherein an administrator can connect to one of said at least two email servers through the data communication network to change the configuration data set, the one of said at least two email servers announcing the changed configuration data set to each other of the at least two email servers and providing the changed configuration data set to each other of the at least two email servers in response requests received therefrom.
11. The email server system of claim 10 wherein said data communication network employs the Internet Protocol.
12. The email server system of claim 11 wherein each said email server negotiates with each other email server to assign itself an IP address to establish it presence in said data communication network.
13. The email server system of claim 10 further comprising a second data communication network between the at least two email servers and wherein communications between the at least two email servers to announce a changed configuration data set and to provide the changed configuration data set to email servers occurs over the second data communication network.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/295,591 US7617305B2 (en) | 2005-12-07 | 2005-12-07 | Email server system and method |
US11/295,591 | 2005-12-07 | ||
PCT/CA2006/001989 WO2007065260A1 (en) | 2005-12-07 | 2006-12-07 | Email server system and method |
Publications (1)
Publication Number | Publication Date |
---|---|
CA2637368A1 true CA2637368A1 (en) | 2007-06-14 |
Family
ID=38120049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002637368A Abandoned CA2637368A1 (en) | 2005-12-07 | 2006-12-07 | Email server system and method |
Country Status (4)
Country | Link |
---|---|
US (3) | US7617305B2 (en) |
EP (1) | EP2027677A4 (en) |
CA (1) | CA2637368A1 (en) |
WO (1) | WO2007065260A1 (en) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4306674B2 (en) * | 2005-11-15 | 2009-08-05 | コニカミノルタビジネステクノロジーズ株式会社 | Image forming apparatus, program, and recording medium |
US7617305B2 (en) | 2005-12-07 | 2009-11-10 | Watchguard Technologies, Inc. | Email server system and method |
US7899894B2 (en) | 2006-08-30 | 2011-03-01 | International Business Machines Corporation | Coordinated timing network configuration parameter update procedure |
US7895303B2 (en) * | 2007-01-31 | 2011-02-22 | International Business Machines Corporation | Server time protocol control messages and methods |
US9112626B2 (en) * | 2007-01-31 | 2015-08-18 | International Business Machines Corporation | Employing configuration information to determine the role of a server in a coordinated timing network |
US7689718B2 (en) * | 2007-01-31 | 2010-03-30 | International Business Machines Corporation | Channel subsystem server time protocol commands and system therefor |
US8458263B1 (en) | 2007-03-27 | 2013-06-04 | Emc Corporation | Method and apparatus for electronic message archive verification |
US8032599B1 (en) | 2007-03-30 | 2011-10-04 | Emc Corporation | Display of archived email content in a preview pane |
US8856241B1 (en) * | 2007-03-30 | 2014-10-07 | Emc Corporation | Management of email archive server requests |
US7730147B1 (en) | 2007-03-30 | 2010-06-01 | Emc Corporation | Prioritizing archived email requests |
US8930464B1 (en) | 2007-03-30 | 2015-01-06 | Emc Corporation | Email content pre-caching to a local archive store |
US8156188B1 (en) | 2007-03-30 | 2012-04-10 | Emc Corporation | Email archive server priming for a content request |
US7730146B1 (en) | 2007-03-30 | 2010-06-01 | Emc Corporation | Local email archive store size management |
US8527593B1 (en) * | 2007-03-30 | 2013-09-03 | Emc Corporation | Change of an archived email property in the email system local store |
US7730148B1 (en) | 2007-03-30 | 2010-06-01 | Emc Corporation | Backfilling a local email archive store |
US20090144743A1 (en) * | 2007-11-29 | 2009-06-04 | Microsoft Corporation | Mailbox Configuration Mechanism |
CN101459625B (en) * | 2007-12-14 | 2011-05-04 | 鸿富锦精密工业(深圳)有限公司 | E-mail sending system and method |
US7925916B2 (en) | 2008-04-10 | 2011-04-12 | International Business Machines Corporation | Failsafe recovery facility in a coordinated timing network |
US8416811B2 (en) * | 2008-04-10 | 2013-04-09 | International Business Machines Corporation | Coordinated timing network having servers of different capabilities |
US9070115B2 (en) | 2008-07-14 | 2015-06-30 | Dynamic Network Services, Inc. | Intelligent electronic mail server manager, and system and method for coordinating operation of multiple electronic mail servers |
US7873862B2 (en) * | 2008-10-21 | 2011-01-18 | International Business Machines Corporation | Maintaining a primary time server as the current time server in response to failure of time code receivers of the primary time server |
JP5537181B2 (en) * | 2010-02-17 | 2014-07-02 | 株式会社日立製作所 | Message system |
US9819548B2 (en) * | 2013-01-25 | 2017-11-14 | Cisco Technology, Inc. | Shared information distribution in a computer network |
US10009224B1 (en) * | 2013-06-28 | 2018-06-26 | EMC IP Holding Company LLC | Computer system management in compliance with best practices |
EP3125110A4 (en) * | 2014-04-16 | 2017-04-19 | Huawei Technologies Co., Ltd. | Software upgrade method and terminal |
US10044663B2 (en) * | 2015-09-09 | 2018-08-07 | Bank Of America Corporation | System for electronic mail server configuration management |
Family Cites Families (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5694546A (en) * | 1994-05-31 | 1997-12-02 | Reisman; Richard R. | System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list |
KR100286008B1 (en) | 1995-12-30 | 2001-04-16 | 윤종용 | Method for automatically updating software program |
US5734831A (en) * | 1996-04-26 | 1998-03-31 | Sun Microsystems, Inc. | System for configuring and remotely administering a unix computer over a network |
US5919247A (en) | 1996-07-24 | 1999-07-06 | Marimba, Inc. | Method for the distribution of code and data updates |
US6636733B1 (en) * | 1997-09-19 | 2003-10-21 | Thompson Trust | Wireless messaging method |
US6014669A (en) | 1997-10-01 | 2000-01-11 | Sun Microsystems, Inc. | Highly-available distributed cluster configuration database |
US6457879B1 (en) * | 1997-12-17 | 2002-10-01 | Microsoft Corporation | Method for continouously processing electronic messages throughout a transition between online and offline states |
US6928614B1 (en) * | 1998-10-13 | 2005-08-09 | Visteon Global Technologies, Inc. | Mobile office with speech recognition |
US6460141B1 (en) * | 1998-10-28 | 2002-10-01 | Rsa Security Inc. | Security and access management system for web-enabled and non-web-enabled applications and content on a computer network |
US6691165B1 (en) * | 1998-11-10 | 2004-02-10 | Rainfinity, Inc. | Distributed server cluster for controlling network traffic |
US6487547B1 (en) * | 1999-01-29 | 2002-11-26 | Oracle Corporation | Database appliance comprising hardware and software bundle configured for specific database applications |
US6910068B2 (en) * | 1999-06-11 | 2005-06-21 | Microsoft Corporation | XML-based template language for devices and services |
US6892230B1 (en) * | 1999-06-11 | 2005-05-10 | Microsoft Corporation | Dynamic self-configuration for ad hoc peer networking using mark-up language formated description messages |
US6405219B2 (en) | 1999-06-22 | 2002-06-11 | F5 Networks, Inc. | Method and system for automatically updating the version of a set of files stored on content servers |
US6868426B1 (en) * | 1999-07-07 | 2005-03-15 | Jeffrey W. Mankoff | Virtual document organizer system and method |
US20020111990A1 (en) * | 1999-11-01 | 2002-08-15 | Wood Christopher Noah | Internet based message management system |
AU766248B2 (en) * | 1999-12-01 | 2003-10-09 | Amicus Software Pty Ltd | Method and apparatus for network access |
US20010054106A1 (en) * | 2000-03-23 | 2001-12-20 | Patrik Anderson | Method and apparatus for an image server |
US7222228B1 (en) * | 2000-06-14 | 2007-05-22 | Netwolves Corporation | System and method for secure management or remote systems |
US7340518B1 (en) * | 2000-07-10 | 2008-03-04 | Jenkins Gerald L | Method and system to enable contact with unknown internet account holders |
US6944662B2 (en) * | 2000-08-04 | 2005-09-13 | Vinestone Corporation | System and methods providing automatic distributed data retrieval, analysis and reporting services |
US7272662B2 (en) * | 2000-11-30 | 2007-09-18 | Nms Communications Corporation | Systems and methods for routing messages to communications devices over a communications network |
US8073967B2 (en) * | 2002-04-15 | 2011-12-06 | Fisher-Rosemount Systems, Inc. | Web services-based communications for use with process control systems |
GB2374689B (en) * | 2001-04-20 | 2005-11-23 | Eldama Systems Ip Ltd | Communications system |
US6941356B2 (en) * | 2001-06-29 | 2005-09-06 | International Business Machines Corporation | Automated configuration enabled via interrogation over network |
US7065599B2 (en) * | 2001-08-10 | 2006-06-20 | Sun Microsystems, Inc. | Multiprocessor systems |
US6889338B2 (en) * | 2001-08-15 | 2005-05-03 | Nortel Networks Limited | Electing a master server using election periodic timer in fault-tolerant distributed dynamic network systems |
US7028030B2 (en) | 2001-08-30 | 2006-04-11 | Bea Systems, Inc. | Cluster caching with concurrency checking |
US7406473B1 (en) * | 2002-01-30 | 2008-07-29 | Red Hat, Inc. | Distributed file system using disk servers, lock servers and file servers |
US20040034807A1 (en) * | 2002-08-14 | 2004-02-19 | Gnp Computers, Inc. | Roving servers in a clustered telecommunication distributed computer system |
US7849140B2 (en) * | 2002-08-29 | 2010-12-07 | Oracle America, Inc. | Peer-to-peer email messaging |
US20040073659A1 (en) | 2002-10-15 | 2004-04-15 | Carl Rajsic | Method and apparatus for managing nodes in a network |
US8364815B2 (en) * | 2005-03-18 | 2013-01-29 | Riverbed Technology, Inc. | Reliability and availability of distributed servers |
US7200636B2 (en) * | 2002-11-01 | 2007-04-03 | Sun Microsystems, Inc. | Method and apparatus for applying personalized rules to e-mail messages at an e-mail server |
US7650403B2 (en) * | 2002-11-20 | 2010-01-19 | Microsoft Corporation | System and method for client side monitoring of client server communications |
US20040172622A1 (en) * | 2003-02-28 | 2004-09-02 | Nokia Inc. | Systems, methods and computer program products for performing a task in a software application |
EP1482702B1 (en) * | 2003-05-30 | 2007-06-27 | Research In Motion Limited | System and methods for provisioning a service for a communication device |
TW200500899A (en) * | 2003-06-17 | 2005-01-01 | Ivan Liu | Electronic data management system and method using backup technique for professional service |
US7367048B2 (en) * | 2003-07-10 | 2008-04-29 | International Business Machines Corporation | Apparatus and method for autonomic email access control |
US7584256B2 (en) * | 2004-04-12 | 2009-09-01 | Borderware Technologies Inc. | Replicating message queues between clustered email gateway systems |
JP2006048122A (en) * | 2004-07-30 | 2006-02-16 | Ntt Docomo Inc | Communication system |
US7812986B2 (en) * | 2005-08-23 | 2010-10-12 | Ricoh Co. Ltd. | System and methods for use of voice mail and email in a mixed media environment |
US7552202B2 (en) * | 2005-03-10 | 2009-06-23 | International Business Machines Corporation | System and method to uniquely identify identically configured branches in a distributed enterprise |
US20060224704A1 (en) * | 2005-04-01 | 2006-10-05 | Vijay Parikh | Auto-configuration for data collection terminals |
US20060235997A1 (en) * | 2005-04-18 | 2006-10-19 | Sytex, Inc. | Methods And Sytems For Resolving Internet Protocol (IP) Address Conflicts Using Agents For A Zero Configuration Network |
US7729997B2 (en) * | 2005-06-13 | 2010-06-01 | At&T Intellectual Property I, L. P. | Determination of an entity's assets associated with an event |
US8045954B2 (en) * | 2005-08-19 | 2011-10-25 | University Of South Florida | Wireless emergency-reporting system |
US7617305B2 (en) | 2005-12-07 | 2009-11-10 | Watchguard Technologies, Inc. | Email server system and method |
-
2005
- 2005-12-07 US US11/295,591 patent/US7617305B2/en active Active
-
2006
- 2006-12-07 CA CA002637368A patent/CA2637368A1/en not_active Abandoned
- 2006-12-07 EP EP06828152A patent/EP2027677A4/en not_active Withdrawn
- 2006-12-07 WO PCT/CA2006/001989 patent/WO2007065260A1/en active Search and Examination
-
2009
- 2009-11-02 US US12/610,994 patent/US8176162B2/en active Active
-
2012
- 2012-05-08 US US13/466,826 patent/US8504675B2/en active Active - Reinstated
Also Published As
Publication number | Publication date |
---|---|
US7617305B2 (en) | 2009-11-10 |
US8176162B2 (en) | 2012-05-08 |
US8504675B2 (en) | 2013-08-06 |
EP2027677A4 (en) | 2009-04-15 |
EP2027677A1 (en) | 2009-02-25 |
US20120278415A1 (en) | 2012-11-01 |
WO2007065260A1 (en) | 2007-06-14 |
US20100049818A1 (en) | 2010-02-25 |
US20070130264A1 (en) | 2007-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2637368A1 (en) | Email server system and method | |
US11799720B1 (en) | Server-based service configuration system and approach | |
JP4545925B2 (en) | Method of mediating connection by agent system in computer network and medium storing software agent program | |
JP4393032B2 (en) | Information processing system having path switching function in case of failure and information terminal thereof | |
JP4421817B2 (en) | Method and system for a set of network devices that can be connected to provide improved collaboration, scalability, and reliability | |
US20030012182A1 (en) | Management method for network device | |
US8713159B2 (en) | Monitoring apparatus for monitoring communication configurations of client devices | |
WO2006023122A2 (en) | A system and method for affecting the behavior of a network device in a cable network | |
US7567573B2 (en) | Method for automatic traffic interception | |
US8769056B2 (en) | Method and arrangement for configuring a device in a data network | |
JP6106334B2 (en) | Method, system and computer readable medium for performing advanced service routing | |
JP5024195B2 (en) | Load balancing server, network load balancing method, and congestion avoidance method | |
JP2005530372A5 (en) | ||
JP2006310928A (en) | Gateway system | |
US20070211629A1 (en) | Method and system for controlling wireless LAN route, apparatus for managing wireless LAN, and wireless LAN access terminal | |
EP1518354A2 (en) | Windows management instrument synchronized repository provider | |
CA2293880A1 (en) | Computer network and method of clustering network servers | |
EP1530320B1 (en) | System and method for avoiding duplication of proxy functions in a home network | |
JP6147415B2 (en) | Service discovery method in a computer network that is resistant to network changes | |
JP2000187632A (en) | Cluster system | |
US7953087B1 (en) | Content filtering using static source routes | |
Cisco | SLIP Configuration and Management | |
CN114205401A (en) | Data transmission system and method for decentralized network service | |
JP2003140986A (en) | Remote monitoring system and communication control method | |
KR20050003598A (en) | Domain name service provide system and method using dual domain name server |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
FZDE | Discontinued |
Effective date: 20160128 |