CN101529399B - 代理服务器和代理方法 - Google Patents
代理服务器和代理方法 Download PDFInfo
- Publication number
- CN101529399B CN101529399B CN200780024502.6A CN200780024502A CN101529399B CN 101529399 B CN101529399 B CN 101529399B CN 200780024502 A CN200780024502 A CN 200780024502A CN 101529399 B CN101529399 B CN 101529399B
- Authority
- CN
- China
- Prior art keywords
- data
- client computer
- server
- proxy
- data file
- 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.)
- Active
Links
Classifications
-
- 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/212—Monitoring or handling of messages using filtering or selective blocking
-
- 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/42—Mailbox-related aspects, e.g. synchronisation of mailboxes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种用于为诸如电子邮件客户机或web浏览器之类的客户机(108)下载数据文件的代理服务器(102),包括:外部代理(204),用于基于与存储在代理服务器(102)上的与客户机(108)相关联的概况数据为客户机(108)在网络(106)上从外部服务器(104)下载数据文件;用于存储数据文件的存储器模块;以及内部代理(208),用于在被客户机(108)请求时将数据文件传递给该客户机(108)。外部代理(204)与内部代理(208)异步地操作,并且代理服务器(102)相对于客户机(108)透明地操作。
Description
领域
本发明涉及用于从外部服务器下载一个或更多数据文件的代理服务器。
背景
在组网计算环境中,用户可以具有经由局域网(例如,LAN或WAN)和局域网服务器连接到因特网的计算机。在一些环境中,局域网服务器可能仅提供到因特网的连接,而没有诸如电子邮件或防火墙之类的其他服务。例如,当用户首先建立局域网并希望连接到因特网时,将只需要最基本的连接。用户随后可以经由因特网访问外部服务器,并且发送和检索文件,包括电子邮件文件(例如,使用POP3协议)或Web文档(例如,使用RSS订阅源)用户还可以希望经由交替因特网连接来访问外部服务器;例如,局域网服务器可以在用户的工作场所中提供因特网接入,而因特网服务供应商(ISP)可以在用户家里提供因特网接入。
与上述境况相关联的一个问题是当本地服务器(例如,工作场所中的)具有较慢的因特网连接时,用户要访问外部服务器上的文件可能要花费较长时间。第二个问题是本地服务器(例如,工作场所中的)在针对例如广告邮件、计算机病毒、木马和蠕虫等‘恶意程序’对传入数据进行过滤时可能导致进一步的时间延迟。
电子邮件协议‘POP3’是当内容数据已与用户访问外部服务器异步地传递到该服务器时客户机用来访问该服务器上的内容数据以供该用户即时或后续使用的协议的示例。这种类型的异步内容传输与其他传输协议不同。POP3并非用于服务器之间的电子邮件传输;POP3是在邮件传输系统已与客户机访问用户(在该外部服务器上)的邮箱异步地将消息传递到该邮箱之后使用的。POP3由用户的邮件客户机或‘邮件用户代理’(MUA)使用。从位于服务器的邮箱检索电子邮件的此类客户机的示例包括微软公司的Outlook和苹果计算机公司的Mail。
尽管用户可以在他们的工作场所的LAN中使用POP3来访问其邮箱,但他们也可以在该环境外这样做。经由局域网以及经由替代因特网供应商两者使用POP3的用户可以包括路边销售人员、从家里访问公司邮箱的执行者、以及小公司中使用外部服务器上的电子邮箱的职员。访问延迟问题适用于这两种境况。
期望解决以上问题,或至少提供有用的替换方案。
概述
根据本发明,提供了一种用于为客户机下载数据文件的代理服务器,包括:
下载模块,用于基于与客户机相关联并存储在代理服务器上的概况数据为客户机在网络上从外部服务器下载数据文件;
存储器模块,用于存储概况数据和数据文件;以及
传输模块,用于在被客户机请求时将数据文件传递给该客户机。
本发明还提供了一种处理过程,包括:
存储与客户机相关联的概况数据;
使用所存储的概况数据为该客户机在网络上从外部服务器下载数据文件;
存储该数据文件;以及
在被客户机请求时将该数据文件传递给该客户机。
附图说明
此后参照附图仅以示例的方式描述本发明的优选实施例,在附图中:
图1是包括根据本发明的优选实施例配置的代理服务器的组件的安排;
图2是图1中的代理服务器的示意图;
图3是由代理服务器执行的数据文件下载过程的流程图;
图4是由代理服务器执行的数据文件删除过程的流程图;
图5是客户机与代理服务器之间的数据文件传输过程的流程图;
图6是客户机与代理服务器之间的认证和删除过程的流程图;
图7是由代理服务器执行的用于接收和确认概况数据的过程的流程图;
图8是包括代理服务器、路由器和防火墙的组件安排;
图9是包括代理服务器和路由器的组件安排;
图10是示出连接到局域网服务器的代理服务器的组件安排;
图11是示出两个防火墙之间的代理服务器的组件安排;
图12是示出不通过代理服务器连接到网络的客户机的组件安排。
优选实施例的详细描述
如图1中所示,代理服务器102经由诸如因特网之类的通信网106从外部服务器104下载数据文件。代理服务器102存储这些数据文件,随后当被请求时将它们传递给客户机108。这些数据文件是与用户访问服务器异步地传送给服务器的诸如电子邮件、MP3等内容文件。以下参考加速邮局协议(POP)版本3(POP3)来描述代理服务器102,但其也可用于涉及内容——诸如以XML格式指明并使用诸如结合到web浏览器Firefox和Safari中的聚集器或订阅源阅读器来获得的RSS订阅源文档——的类似异步传递的其他协议。出于本说明书的目的,示例数据文件包括使用POP3协议下载的电子邮件消息;示例网络106是因特网;并且示例客户机108是在诸如PC、PDA或Apple Macbook之类的标准个人计算机设备上运行的邮件用户代理(MUA)。POP3协议在RFC1939(http://www.ietf.org/rfc/rfc1939.txt)中讨论并且在附录中略述。
LAN或WAN上的本地服务器形式的代理服务器102能够经由网络106从外部服务器104下载期望文件并存储它们,准备好在被请求时传递给客户机108(例如,邮件用户代理MUA)。这是‘预下载’过程,其有利地允许在客户机108请求文件之前,这些文件将能够在较慢因特网连接上从外部服务器104下载并且存储在本地代理服务器102上。所存储的文件在驻留于代理服务器102之上时并且在这些文件被客户机请求之前还可以被‘预扫描’:即,扫描不想要的内容,例如计算机病毒。最后,当被客户机108请求时,这些文件可以在本地网络上快速地传递。在一个示例应用中,代理服务器102在夜间使用POP3协议从外部服务器104上的电子邮箱检索电子邮件,扫描该电子邮件以寻找病毒/广告邮件/等,并且随后当接下来被用户的MUA请求时将该电子邮件传送给该MUA。
如图2中所示,代理服务器102包括:
(a)外部网络连接器202和外部代理202形式的下载模块;
(b)中间数据存储206和认证数据存储212形式的存储器模块;以及
(c)内部代理208和本地网络连接器210形式的用于传递给客户机的传输模块。
代理服务器102能使用数个不同硬件和/或软件组件来实现。服务器102可以包括诸如由IBM公司或Apple(苹果)公司生产的带有网卡以提供网络连接器202和210的标准计算机服务器、以及用诸如C++或Perl语言编写的在操作系统(诸如Unix、Linux或Mac OS X)上运行以定义和提供外部代理202和内部代理208的计算机程序代码。数据库服务器(诸如MySQL)可用于维护和提供数据存储206和212。替换地,这些组件可以被分开,例如通过提供分开的数据存储206和212,并且外部代理202和内部代理206可由分开的硬件机器来提供。也可以采用诸如ASIC或FPGA之类的专用硬件电路来代替至少一部分计算机代码并且以更快的处理速度执行与该代码相同的过程。
代理服务器102有利地是透明代理,即外部代理204充当对外部服务器104的客户机,而内部代理208充当对客户机108的服务器。外部服务器104和客户机108以类似的方式与代理服务器102通信(例如,使用相同的协议和标识数据),就像没有代理服务器102一样(即,就像客户机108是经由网络106直接与外部服务器104通信一样)。
认证数据存储212存储客户机108的概况数据。概况数据包括用户名、口令和网络106上的外部服务器104的地址。例如,认证数据存储212可以存储以连接到因特网的电子邮件服务器形式的外部服务器104的因特网地址、加上允许外部代理204从该电子邮件服务器下载电子邮件消息的用户名和口令;以此方式,外部代理204能够充当从外部服务器104的视角来看的邮件客户机。
外部代理204使用如图3中所示的下载过程从外部服务器104下载数据并且将其存放在中间数据存储206。在步骤302处,外部代理204通过建立经由外部网络连接器202和网络106到外部服务器104的连接来开始。一旦建立了连接,在步骤304处,外部代理204以认证数据的形式将概况数据发送给外部服务器104。外部服务器104随后向外部代理204发送数据文件的至少一部分;该数据文件被发送的部分是由外部服务器104基于包括由外部代理204提供的一个客户机108的概况数据的信息来选择的。在步骤306处,外部代理204至少接收数据文件的头部详情。外部代理204随后在步骤308处开始该数据文件的下载并且在步骤310处执行对该文件的安全性过滤;如果在步骤312处被测试时安全性过滤发现该数据文件是不可接受的(例如,如果该数据文件包含计算机病毒或广告邮件),则该数据文件在步骤314处被隔离、修改或删除。如果在步骤312处该数据文件是可接受的,则其在步骤316处被存储在中间数据存储206中。在步骤318处,外部代理检查以确认是否有对应于客户机108的概况数据的任何其余数据文件还要从外部服务器104下载。如果进一步的数据文件还要被下载,则要下载的下一个数据文件的头部由外部代理204再一次重复地在步骤306处接收。如果在步骤318处被测试时没有其余数据文件要被下载,则外部代理204在步骤320处断开与外部服务器104的连接。
在步骤312处,外部代理204提供安全性相关的过滤以隔离、修改或移除不想要的——例如被计算机病毒感染的或可能是广告邮件文件的——数据文件。由于客户机108只访问中间数据存储206,由安全性过滤所造成的伪象对于客户机108而言是不可见的,由此当不想要的数据文件被移除时不需要“占位符”数据文件来代替这些不想要的文件。
外部代理204与内部代理208异步地操作,优选地甚至在客户机108不存在时访问外部服务器104并更新中间数据存储206。外部代理204可以周期性地(例如,每小时)或当其他条件出现时(例如,当网络106上的话务拥塞较低时)下载并扫描文件。下载是基于由存储器模块存储在代理服务器上的定义或提供异步下载的基础的时基数据来执行的。时基数据可以是因客户机而异的并且作为客户机概况数据的一部分来存储。
外部代理204删除中间数据存储206中已被内部代理208标记为删除的数据文件,但仅在对应数据文件已从外部服务器104删除之后才删除。如图4中所示,在文件删除过程中,外部代理204连接到外部服务器104并且访问对应于代理服务器102中存储的认证数据形式的概况数据的数据文件(步骤402和404)。在认证以后,外部代理204在步骤406处请求删除外部服务器104上已在以上参考图3描述的文件下载过程中被复制到中间数据存储206的所有消息。外部代理204随后在步骤408处断开与外部服务器104的连接。最后,外部代理204在步骤410处删除中间数据存储206中已被内部代理208由于与客户机108的通信(以下进一步描述)而标注为删除的所有消息。
如图5中所示,内部代理208执行数据文件传输过程,该过程在步骤502处当客户机108连接到内部代理208时开始。在步骤504处,客户机108引导内部代理208从中间数据存储206下载已由外部代理204预下载和预扫描的一个或更多文件。
内部代理208还执行如图6中所示的文件删除。客户机108在步骤602处连接到内部代理208,并且内部代理208在步骤604处对照认证数据存储212中存储的概况数据来认证该客户机。一旦被认证,客户机就可以在步骤606处将中间数据存储206中存储的数据文件标注为删除,并且在步骤608处断开连接。一旦被标注为删除,中间数据存储206中的数据文件留待由外部代理204使用以上参考图4描述的数据文件删除过程来删除。
当客户机108请求数据文件的传输时,代理服务器102执行如图7中所示的用于验证概况数据的过程。客户机108在步骤702处向内部代理208展示概况数据,包括例如用户名、口令和/或外部服务器地址。在步骤702处,内部代理208接收来自客户机108的认证数据形式的用户概况数据。内部代理在步骤704处将该用户概况数据发送给外部代理204。为确认该用户概况数据是正确的,外部代理204随后在步骤706处连接到外部服务器104,在步骤708处发送该概况数据并且在步骤710处测试该概况数据是否有效。如果该概况数据是无效的,则代理服务器102在步骤712处执行错误处理程序;其可能致使客户机108接收到中间数据存储206不包含新数据文件的消息。另一方面,如果发现该概况数据是有效的,则外部代理204在步骤714处将概况数据存储在认证数据存储212中,并且在步骤716处断开与外部服务器104的连接。
包括代理服务器102的本地网络可以如图1、8、9、10和11中所示地配置。图8示出代理服务器102可以通过路由器802连接到网络106,并且通过网络防火墙804连接到一个或更多个客户机108。替换地,如图9中所示,代理服务器102可以在不使用防火墙的情况下直接连接到一个或更多个客户机108;或者如图11中所示,代理服务器102可以位于第一防火墙804与第二防火墙1102之间。在图10中所示的进一步替换安排中,这一个或更多个客户机108可以经由本地网络服务器1002连接到网络106,并且代理服务器102可以通过本地网络服务器1002与客户机108和外部服务器104通信。其他安排对本领域技术人员也将是显而易见的。
如图12中所示,客户机108还可以经由网络106直接访问外部服务器104,例如通过经用户家里的专用ISP来连接膝上型计算机。在这种情形中,代理服务器102不知晓数据文件正从外部服务器104下载到客户机108、或客户机概况数据(例如,用户的口令)的改变。
如果客户机108在与内部代理102的两次会话之间改变其在外部服务器104上的概况数据(例如,通过直接访问外部服务器104),则外部代理204随后将不能访问外部服务器104,由于代理服务器102上存储的概况数据将不会改变;代理服务器102上的概况数据将仅在客户机108下一次建立与内部代理208的会话并且提供该新的概况数据时被更新。当概况数据被更新时,外部服务器104上对应于经更新的概况数据(例如,属于用户的用户名/口令组合)的任何数据文件将在外部代理204执行对外部服务器104的下一次安排好的访问时被下载(到中间数据存储206);有利地,可以在代理服务器102上存储的概况数据被更新时自动执行访问。
客户机108还可以在直接访问外部服务器104时删除其上的数据文件;例如,客户机108可以从电子邮件服务器形式的外部服务器104删除电子邮件消息。外部代理204在其执行下一次下载程序(以上参考图3描述的)时将发现数据文件已从外部服务器104删除;如果数据文件已从外部服务器104删除但仍保留在中间数据存储206中,则外部代理204将删除中间数据存储206中的该数据文件。客户机108不能访问中间数据存储206,直至已通过访问外部服务器104验证了经改变的概况数据(例如,认证数据);访问外部服务器104随后将致使已从外部服务器104删除的数据文件的标识以及由此它们从中间数据存储206被删除。
对于加速POP3,内部代理208具有与常规POP3服务器类似的事务处理状态,但对于RFC1939中和附录中描述的授权状态和更新状态具有不同的处理。
在授权状态下,内部代理208对照外部服务器104测试客户机提供的认证令牌形式的概况数据,并且——如果正确——在代理102断开与外部服务器104的连接并且内部代理208恢复作为POP3服务器的正常操作之前(即,从中间数据存储206供给数据)将它们存储在认证数据存储212中供以后使用。
内部代理208简单地并不实现POP3服务器的更新状态处理的一些部分:尽管其将消息标记为删除,但其实际上从不执行该删除。删除是由外部代理204来执行的。
只要网络106是连接着的,外部服务器104的地址就是固定的,但在数个实例中,网络地址尤其是IP地址可以改变,例如如果外部服务器是因特网服务供应商的服务器场的一部分。为了正确地标识外部服务器104,代理服务器102可以执行如由本申请人在与本申请同一日提交的题为“A system for classifying an Internetprotocol address(用于分类网际协议地址的系统)”的国际(PCT)专利申请(并且其通过援引纳入于此)的专利说明书中所描述的标识或分类过程。
许多修改对于本领域技术人员将是显而易见的,而不背离如本文中参考附图描述的本发明的范围。
附录:POP3协议细节
以下是POP3协议的简化解释。
POP3协议支持数种命令和数种状态。
服务器主机通过在TCP端口110上侦听来开始POP3服务。当客户机希望打开会话时,其在TCP端口110上与服务器通信。当建立了连接时,POP3服务器发送问候。客户机和POP3服务器随后交换命令和响应(分别)直至连接被关闭或中止。
POP3中的命令由以下不分大小写的关键词组成,在一些情形中跟随有一个或更多自变量:
在每种情形中,服务器用状态指示符和关键字来回复,可能跟随有附加信息。可能的状态指示符是“+OK”或“-ERR”,其在上例中必须发送。除STAT、LIST、和UIDL命令以外,跟随在“+OK”或“-ERR”之后的任何文本可以被客户机忽略。
对某些命令的响应有多行。在这些情形中,在第一条响应行之后发送任何其他行,跟随着是一行上单独的单个终止句点(“.”)。
从上表可以看出,POP3会话在其生存期间可处于数种状态。其以认证状态开始。客户机向POP3服务器标识其自身。一旦客户机已成功地这样做,服务器尝试获取与该客户机的邮箱相关联的资源(典型地是锁住该资源),并且如果这是成功的,则会话进入事务处理状态。
在这种情形中,客户机请求在POP3服务器的该部分上动作。当客户机已发出QUIT(退出)命令,则会话进入更新状态。在这种情形中,POP3服务器释放在事务处理状态期间获取的任何资源并且说再见。连接随后被关闭。
授权状态
当TCP连接最初由POP3客户机打开时,服务器发出单行问候。这可以是任何正面响应。一个示例可以是标语问候,诸如:
+OK jeeves上的POP3服务器已准备好
POP3会话现在处于授权状态。客户机现在必须向POP3服务器标识和认证其自身。有两种可能的机制来这样做:
1.USER(用户)和PASS(通行)命令。
源 | 命令/响应 | 注释 |
客户机 | USER charles | 客户机提供用户名 |
服务器 | +OK | 最少正面响应 |
客户机 | PASS windsor | 客户机提供口令 |
服务器 | +OK | 最少正面响应 |
其他可能的负面回复:
源 | 命令/响应 | 注释 |
客户机 | PASS windsor | 客户机提供口令 |
服务器 | -ERR邮箱已锁定 | 详细负面响应 |
2.APOP命令。
APOP命令是可任选命令:其不是POP3服务器的必要条件并且不受本发明支持。
如果授权成功完成,并且邮箱被锁定,则POP3会话进入事务处理状态。如果授权或邮箱锁定失败,则服务器用负面状态指示符来响应,并且在此时服务器和客户机都可以关闭连接。如果服务器没有这样做,则客户机可以选择尝试再次认证。
当服务器打开邮箱时,其向每条消息指派消息编号(从1开始),并且用八位字节注明每条消息的大小。这些消息编号随后被客户机使用。注意,在此时没有消息被标记为删除。
事务处理状态
一旦处于事务处理状态中,客户机可以重复发出对于该状态有效的命令中的任一条。在每条命令之后,服务器发出响应。最后,客户机发出QUIT命令而POP3会话进入更新状态。
轮流讨论这些命令之中在事务处理状态下有效的每一条。
1.STAT(状态)命令。
POP3服务器发出由“+OK”、接着的单个空格、邮箱中消息的总数、单个空格、以及以8位字节计的邮箱总大小组成的正面响应。被标记为删除的消息不计算在任何总数中。
源 | 命令/响应 | 注释 |
客户机 | STAT | |
服务器 | +OK 3 648 | 有3条消息总共648个8位字节。 |
2.LIST(列表)命令。
客户机发送带有或不带消息编号的LIST命令。如果给出消息编号,则其必须指代未删除的消息。
如果没有给出消息编号,则服务器对邮箱中每条未删除的消息用一行来响应。
如果给出消息编号,则服务器用该条消息的详情来响应或者在该消息无效的情况下用负面响应来响应。
源 | 命令/响应 | 注释 |
客户机 | LIST 2 | |
服务器 | +OK 2 327 | 消息2的大小是327个8位字节。 |
源 | 命令/响应 | 注释 |
客户机 | LIST 4 | |
服务器 | -ERR没有这样的消息 | 邮箱中只有3条消息。 |
3.RETR(检索)命令。
客户机发送跟随有消息编号的RETR命令,该消息编号必须标识未删除的消息。POP3服务器发出负面响应或者由“+OK”、接着的包含该消息编号指示的电子邮件消息的文本的多行响应组成的正面响应。
源 | 命令/响应 | 注释 |
客户机 | RETR 2 | |
服务器 | -ERR消息已删除 | 消息2已被标记为删除。 |
源 | 命令/响应 | 注释 |
客户机 | RETR 4 | |
服务器 | -ERR没有这样的消息 | 邮箱中只有3条消息。 |
4.DELE(删除)命令。
客户机发送跟随有消息编号的DELE命令,该消息编号必须标识未删除的消息。POP3服务器或者发出负面响应或者将该消息标记为删除,并且发出由“+OK”组成的正面响应。注意,POP3服务器实际上并不删除该消息,直至POP3会话进入更新状态。
源 | 命令/响应 |
客户机 | DELE 2 |
服务器 | +OK |
源 | 命令/响应 | 注释 |
客户机 | RETR 2 | |
服务器 | -ERR消息已删除 | 消息2已被删除。 |
源 | 命令/响应 | 注释 |
客户机 | RETR 4 | |
服务器 | -ERR没有这样的消息 | 邮箱中只有3条消息。 |
5.NOOP命令。
客户机发送不带自变量的NOOP命令;服务器用正面响应来回复。
源 | 命令/响应 | 注释 |
客户机 | NOOP | |
服务器 | +OK |
6.RSET命令。
客户机发送不带自变量的RSET命令。服务器必须标识未删除的消息。POP3服务器发出负面响应或者由“+OK”、接着的单个空格、邮箱中消息的总数、单个空格、以及以8位字节计的邮箱总大小组成的正面响应。被标记为删除的消息不计算在任何总数中。
更新状态
当(并且仅当)客户机从事务处理状态发出QUIT命令时,POP3会话进入更新状态。
POP3服务器从邮箱中移除被标记为删除的所有消息并且回复关于该操作的状态。如果当移除这些消息的同时出错,诸如资源短缺,则这可能致使邮箱中被标记为删除的消息中的一些或全部没有被移除。服务器决不能移除未被标记为删除的任何消息。
无论该移除成功与否,服务器随后释放对该邮箱的任何排他访问锁定并且关闭TCP连接。
源 | 命令/响应 | 注释 |
客户机 | QUIT | |
服务器 | +OK | 标记为删除的任何消息已被移除。 |
源 | 命令/响应 | 注释 |
客户机 | QUIT | |
服务器 | -ERR | 出现问题(通常是资源修相关的)。 |
任选POP3命令
有3条任选POP3命令。
1.TOP命令
客户机发送带有两个自变量的TOP命令:消息编号和行数n。服务器用负面响应或者正面响应和该消息的前n行来回复。如果该消息中只有少于n行,则这不是出错,并且整条消息被发送。
源 | 命令/响应 | 注释 |
客户机 | top 3 35 | 请求消息编号3的前35行。 |
服务器 | -ERR消息已删除 | 消息3已被标记为删除。 |
2.UIDL命令
客户机发送带有任选自变量的UIDL命令:消息编号,其必须指示未删除消息。服务器在出错的情形中用负面响应来回复。
否则,如果给出自变量,则服务器用对应消息的唯一ID串来响应。如果没有给出自变量,则服务器用包括对每条未被标记为删除的消息有一行的多行响应来响应,其中每一行包含该消息的消息编号和唯一ID串。
源 | 命令/响应 | 注释 |
客户机 | UIDL 2 | 请求消息编号2的唯一ID。 |
服务器 | +OK 2 lsdfljlksdks82 |
源 | 命令/响应 | 注释 |
客户机 | UIDL 4 | |
服务器 | -ERR没有这样的消息 | 邮箱中仅有3条消息。 |
消息的唯一ID是服务器决定的任意串,由范围0x21到0x7E中的1到70个字符组成,其唯一地标识邮箱内的消息并且跨会话持续。该持续性是必须的,即便一会话没有进入更新状态就结束。只要使用某唯一ID的实体存在,服务器在给定邮箱中就不应重用该唯一ID。
3.APOP命令(先前已解决)。
示例POP3会话
Claims (31)
1.一种用于为客户机下载数据文件的代理服务器,包括:
下载模块,所述下载模块包括外部代理,所述外部代理用于在被所述客户机请求之前基于与所述客户机相关联并存储在所述代理服务器上的概况数据为所述客户机在网络上从外部服务器下载所述数据文件,所述外部服务器和所述客户机在所述代理服务器的外部;
存储器模块,用于存储所述概况数据和所述数据文件;以及
传输模块,所述传输模块包括内部代理,所述内部代理用于在被所述客户机请求时将所述数据文件传递给所述客户机,
所述下载模块的所述外部代理被配置成与所述传输模块异步地操作,所述外部代理在被所述客户机请求之前在网络上连接至所述外部服务器、代表所述客户机进行认证、以及为所述客户机下载所述数据文件,
其中所述概况数据包括与所述客户机相关联的认证数据、以及定义或提供异步下载的基础的时基数据,且所述下载模块基于所述时基数据下载对应于所述概况数据的数据文件。
2.如权利要求1所述的代理服务器,其特征在于,所述代理服务器与所述客户机之间的连接比所述代理服务器与所述外部服务器之间的连接具有更高的数据速率。
3.如权利要求1所述的代理服务器,其特征在于,所述下载模块扫描所述数据文件以检测所述数据文件中的未授权内容。
4.如权利要求3所述的代理服务器,其特征在于,当在所述数据文件中检测到未授权内容时,删除、隔离所述文件或者从所述数据文件中移除所述未授权内容。
5.如权利要求3或4所述的代理服务器,其特征在于,所述未授权内容包括计算机病毒和广告邮件消息。
6.如权利要求1至4中任一项所述的代理服务器,其特征在于,所述数据文件是内容文件,诸如电子邮件、RSS订阅源文档或网页。
7.如权利要求1至4中任一项所述的代理服务器,其特征在于,所述代理服务器获得来自所述客户机的概况数据,并且通过与所述外部服务器通信来验证所述概况数据。
8.如权利要求7所述的代理服务器,其特征在于,所述概况数据包括网际协议地址和与所述客户机相关联的认证数据。
9.如权利要求8所述的代理服务器,其特征在于,所述认证数据包括所述客户机的用户的用户名和口令。
10.如权利要求8所述的代理服务器,其特征在于,所述客户机包括MUA并且所述概况数据是使用邮局协议(POP)来获得的。
11.如权利要求1至4中任一项所述的代理服务器,其特征在于,所述代理服务器使用所述邮局协议(POP)与所述外部服务器和所述客户机通信。
12.如权利要求1至4中任一项所述的代理服务器,其特征在于,所述存储器模块包括用于所述数据文件的中间数据存储和用于所述概况数据的认证数据存储。
13.如权利要求12所述的代理服务器,其特征在于,所述内部代理在授权状态下使用邮局协议(POP)命令来验证认证数据并且将经验证的数据存储在所述认证数据存储中。
14.如权利要求13所述的代理服务器,其特征在于,所述外部代理使用POP命令以从所述外部服务器获得数据文件并将所述数据文件存储在所述中间数据存储中,并且所述内部电路在更新状态下使用POP命令将所述中间数据存储中的数据文件标记为由所述外部代理删除。
15.如权利要求1至4中任一项所述的代理服务器,其特征在于,所述代理服务器相对于所述客户机透明地操作。
16.一种代理方法,包括:
在代理服务器上存储与客户机相关联的概况数据,其中所述概况数据包括与所述客户机相关联的认证数据、以及定义或提供异步下载的基础的时基数据;
在被所述客户机请求之前使用所述存储的概况数据在网络上连接至外部服务器、代表所述客户机进行认证、为所述客户机从所述外部服务器下载数据文件,其中所述下载包括基于所述时基数据下载对应于所述概况数据的数据文件,所述外部服务器和所述客户机在所述代理服务器的外部;
存储所述数据文件;以及
在被所述客户机请求时将所述数据文件传递给所述客户机,其中所述下载与所述传递是异步地执行的。
17.如权利要求16所述的代理方法,其特征在于,到所述客户机的传输连接比到所述外部服务器的下载连接具有更高的数据速率。
18.如权利要求16中任一项所述的代理方法,其特征在于,包括扫描所述数据文件以检测所述数据文件中的未授权内容。
19.如权利要求18所述的代理方法,其特征在于,当在所述数据文件中检测到未授权内容时,删除、隔离所述文件或者从所述数据文件中移除所述未授权内容。
20.如权利要求18或19所述的代理方法,其特征在于,所述未授权内容包括计算机病毒和广告邮件消息。
21.如权利要求16到19中任一项所述的代理方法,其特征在于,所述数据文件是内容文件,诸如电子邮件、RSS订阅源文档或网页。
22.如权利要求16到19中任一项所述的代理方法,其特征在于,包括获得来自所述客户机的概况数据,并且通过与所述外部服务器通信来验证所述概况数据。
23.如权利要求22所述的代理方法,其特征在于,所述概况数据包括网际协议地址和与所述客户机相关联的认证数据。
24.如权利要求23所述的代理方法,其特征在于,所述认证数据包括所述客户机的用户的用户名和口令。
25.如权利要求23所述的代理方法,其特征在于,所述客户机包括MUA并且所述概况数据是使用邮局协议(POP)来获得的。
26.如权利要求16到19中任一项所述的代理方法,其特征在于,包括使用所述邮局协议(POP)与所述外部服务器和所述客户机通信。
27.如权利要求16到19中任一项所述的代理方法,其特征在于,包括将所述数据文件存储在中间数据存储中并且将所述客户机概况数据存储在认证数据存储中。
28.如权利要求27所述的代理方法,其特征在于,包括在授权状态下使用邮局协议(POP)命令来验证认证数据并且将经验证的数据存储在所述认证数据存储中。
29.如权利要求28所述的代理方法,其特征在于,包括使用POP命令从所述外部服务器获得数据文件并将所述数据文件存储在所述中间数据存储中,并且在更新状态下使用POP命令将所述中间数据存储中的数据文件标记为删除。
30.如权利要求16到19中任一项所述的代理方法,其特征在于,所述方法相对于所述客户机透明地操作。
31.一种在执行如权利要求16到30中的任一项所述的方法时使用的装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU2006903548 | 2006-06-30 | ||
AU2006903548A AU2006903548A0 (en) | 2006-06-30 | Proxy server | |
PCT/IB2007/001785 WO2008004064A1 (en) | 2006-06-30 | 2007-06-29 | Proxy server |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101529399A CN101529399A (zh) | 2009-09-09 |
CN101529399B true CN101529399B (zh) | 2014-12-03 |
Family
ID=38894240
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200780024502.6A Active CN101529399B (zh) | 2006-06-30 | 2007-06-29 | 代理服务器和代理方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8365270B2 (zh) |
EP (1) | EP2035939A4 (zh) |
CN (1) | CN101529399B (zh) |
AU (1) | AU2007270872B2 (zh) |
WO (1) | WO2008004064A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8468271B1 (en) * | 2009-06-02 | 2013-06-18 | Juniper Networks, Inc. | Providing privacy within computer networks using anonymous cookies |
US9479812B2 (en) * | 2009-06-05 | 2016-10-25 | Time Warner Cable Enterprises Llc | User selection of software components in a television set-top box |
US20110207503A1 (en) * | 2010-02-19 | 2011-08-25 | Ruperto Netzer A | Facilitating assisted gps and other network services in mobile phones across disparate mobile communications networks |
US9348927B2 (en) | 2012-05-07 | 2016-05-24 | Smart Security Systems Llc | Systems and methods for detecting, identifying and categorizing intermediate nodes |
US9325676B2 (en) | 2012-05-24 | 2016-04-26 | Ip Ghoster, Inc. | Systems and methods for protecting communications between nodes |
US10778659B2 (en) | 2012-05-24 | 2020-09-15 | Smart Security Systems Llc | System and method for protecting communications |
EP3100405A4 (en) | 2014-01-29 | 2017-08-30 | Smart Security Systems LLC | Systems and methods for protecting communications |
US10305861B2 (en) | 2016-08-29 | 2019-05-28 | Microsoft Technology Licensing, Llc. | Cross-tenant data leakage isolation |
US10558641B2 (en) | 2017-04-21 | 2020-02-11 | Microsoft Technology Licensing, Llc | Trigger system for databases using proxy |
CN109218163B (zh) * | 2017-07-05 | 2021-05-07 | 北京二六三企业通信有限公司 | 邮件投递方法及服务器 |
US11194930B2 (en) | 2018-04-27 | 2021-12-07 | Datatrendz, Llc | Unobtrusive systems and methods for collecting, processing and securing information transmitted over a network |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1159645C (zh) * | 1996-04-10 | 2004-07-28 | 莱克斯特朗系统公司 | 增强访问因特网服务器的计算机功能的代理服务器系统 |
Family Cites Families (29)
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 |
US5918013A (en) * | 1996-06-03 | 1999-06-29 | Webtv Networks, Inc. | Method of transcoding documents in a network environment using a proxy server |
US6009462A (en) * | 1997-06-16 | 1999-12-28 | Digital Equipment Corporation | Replacing large bit component of electronic mail (e-mail) message with hot-link in distributed computer system |
US5983348A (en) * | 1997-09-10 | 1999-11-09 | Trend Micro Incorporated | Computer network malicious code scanner |
US6654787B1 (en) * | 1998-12-31 | 2003-11-25 | Brightmail, Incorporated | Method and apparatus for filtering e-mail |
GB2347053A (en) * | 1999-02-17 | 2000-08-23 | Argo Interactive Limited | Proxy server filters unwanted email |
US7305473B2 (en) * | 1999-05-28 | 2007-12-04 | The Coca-Cola Company | Provision of transparent proxy services to a user of a client device |
US20030140112A1 (en) * | 1999-11-04 | 2003-07-24 | Satish Ramachandran | Electronic messaging system method and apparatus |
US6850968B1 (en) * | 2000-02-01 | 2005-02-01 | Service Co. | Reduction of network server loading |
EP1729445B1 (en) * | 2000-08-23 | 2009-05-06 | Sony Deutschland GmbH | Method for remotely controlling a device |
GB2366965A (en) * | 2000-09-01 | 2002-03-20 | Ncr Int Inc | Downloading data to a requesting client form the local cache of another client |
US20060235723A1 (en) * | 2001-02-20 | 2006-10-19 | Steve Millard | System and method for management of content associated with digital distribution and updatable storage media |
WO2002095553A2 (en) * | 2001-05-18 | 2002-11-28 | Imprivata Inc. | Biometric authentication for remote initiation of actions and services |
US7240095B1 (en) * | 2002-02-22 | 2007-07-03 | Bellsouth Intellectual Property Corporation | Electronic mail notification |
US7475146B2 (en) * | 2002-11-28 | 2009-01-06 | International Business Machines Corporation | Method and system for accessing internet resources through a proxy using the form-based authentication |
US20040117450A1 (en) | 2002-12-13 | 2004-06-17 | Campbell David T. | Gateway email concentrator |
US20040117785A1 (en) * | 2002-12-13 | 2004-06-17 | Samsung Electronics Co., Ltd. | Component download manager for a wireless mobile station and method of operation |
JP4794815B2 (ja) * | 2003-03-12 | 2011-10-19 | キヤノン株式会社 | 画像通信装置および画像通信方法 |
US20040216173A1 (en) * | 2003-04-11 | 2004-10-28 | Peter Horoszowski | Video archiving and processing method and apparatus |
WO2004100010A1 (en) * | 2003-04-30 | 2004-11-18 | Iptv Systems, Llc | Secure, continuous, proxy-optimized, device-to-device data download reception system and method of use |
JP4245986B2 (ja) * | 2003-06-02 | 2009-04-02 | Kddi株式会社 | ネットワークシステム、該ネットワークシステムにおける端末切替時のデータ・ダウンロード継続方法及びそのプログラム |
US7591017B2 (en) * | 2003-06-24 | 2009-09-15 | Nokia Inc. | Apparatus, and method for implementing remote client integrity verification |
US20050216564A1 (en) * | 2004-03-11 | 2005-09-29 | Myers Gregory K | Method and apparatus for analysis of electronic communications containing imagery |
US20050240773A1 (en) * | 2004-04-21 | 2005-10-27 | Fuji Xerox Co., Ltd. | Secure file sharing |
US7606762B1 (en) * | 2004-11-05 | 2009-10-20 | Rdm Corporation | System and method for providing a distributed decisioning environment for processing of financial transactions |
US8721446B2 (en) * | 2004-12-09 | 2014-05-13 | Wms Gaming Inc. | Background downloading of gaming content to a gaming machine prior to a scheduled shutdown |
CN1645392A (zh) * | 2005-03-01 | 2005-07-27 | 北京立通无限科技有限公司 | 无线移动终端Email的接收、发送和管理方法 |
US8214827B2 (en) * | 2005-12-05 | 2012-07-03 | Flash Networks, Ltd | Method and system for improving user confidence and experience in content purchasing via a service provider premises |
US7836132B2 (en) * | 2005-12-13 | 2010-11-16 | Microsoft Corporation | Delivery confirmation for e-mail |
-
2007
- 2007-06-29 WO PCT/IB2007/001785 patent/WO2008004064A1/en active Application Filing
- 2007-06-29 AU AU2007270872A patent/AU2007270872B2/en active Active
- 2007-06-29 CN CN200780024502.6A patent/CN101529399B/zh active Active
- 2007-06-29 EP EP07766595A patent/EP2035939A4/en not_active Withdrawn
-
2008
- 2008-12-22 US US12/341,837 patent/US8365270B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1159645C (zh) * | 1996-04-10 | 2004-07-28 | 莱克斯特朗系统公司 | 增强访问因特网服务器的计算机功能的代理服务器系统 |
Also Published As
Publication number | Publication date |
---|---|
US20090249467A1 (en) | 2009-10-01 |
US8365270B2 (en) | 2013-01-29 |
WO2008004064A1 (en) | 2008-01-10 |
AU2007270872B2 (en) | 2013-05-02 |
EP2035939A4 (en) | 2013-02-27 |
AU2007270872A1 (en) | 2008-01-10 |
EP2035939A1 (en) | 2009-03-18 |
CN101529399A (zh) | 2009-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101529399B (zh) | 代理服务器和代理方法 | |
US7146402B2 (en) | E-mail system providing filtering methodology on a per-domain basis | |
US6965920B2 (en) | Profile responsive electronic message management system | |
EP1110347B1 (en) | Unique digital signature | |
US8819410B2 (en) | Private electronic information exchange | |
US7284045B1 (en) | Method and system for determining information to access an electronic mail account | |
US7249175B1 (en) | Method and system for blocking e-mail having a nonexistent sender address | |
US6965918B1 (en) | System and method for integrated management of electronic messages | |
AU2008204378B2 (en) | A method and system for collecting addresses for remotely accessible information sources | |
US20060085504A1 (en) | A global electronic mail classification system | |
US20090077649A1 (en) | Secure messaging system and method | |
US20040181581A1 (en) | Authentication method for preventing delivery of junk electronic mail | |
AU782333B2 (en) | Electronic message filter having a whitelist database and a quarantining mechanism | |
US20050216587A1 (en) | Establishing trust in an email client | |
WO2000033203A1 (en) | An electronic communication delivery confirmation and verification system | |
US20070299926A1 (en) | Method and Apparatus for Dynamically Managing Electronic Mail Messages on a Remote Electronic Mail Messaging System | |
WO2001044953A1 (en) | Method and system for confirming receipt of electronic mail transmitted via a communications network | |
US8321512B2 (en) | Method and software product for identifying unsolicited emails | |
JP2000353133A (ja) | 電子メッセージの望ましくない送信または受信を妨害するためのシステムおよび方法 | |
CN101030972A (zh) | 电子信息与数据跟踪系统 | |
WO2000049776A1 (en) | Method and apparatus for proxying and filtering electronic mail | |
AU2007325944B2 (en) | Apparatus and method for automated inventory tracking and authentication | |
US20050055404A1 (en) | E-mail server registry and method | |
CN100393028C (zh) | 数据传输方法、数据传输程序和数据传输服务器 | |
JP4276105B2 (ja) | 電子メールシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |