面向卫星链路的电子邮件传送方法与系统的制作方法

文档序号:8945666阅读:886来源:国知局
面向卫星链路的电子邮件传送方法与系统的制作方法
【技术领域】
[0001]本发明涉及网络应用层协议设计领域,更具体的说,涉及一种面向卫星链路的电子邮件传送方法与系统。
【背景技术】
[0002]卫星数据通信带宽有限,速率非常低,如铱星为24kbps,而全球星的传输速率为9.6kbps。由于造价较高,所以使用卫星链路进行数据通信价格高昂,如中国大陆铱星数据套餐50元/兆,或每分钟9.8元。尽管诸多缺点,但全球范围内移动状态下的高可用性,使得许多机构必须依赖卫星链路来与其他机构或外界联系,如军事部门、灾难应急响应机构、航空企业、海事机构、海洋运输和钻探等行业、铁路部门等。而收发电子邮件是这些机构通信的一种重要手段。
[0003]现有电子邮件Email标准的设计最早是针对有线网络和无线局域网络设计的,其规定客户端到服务器之间使用SMTP协议进行发送(由标准RFC 532KRFC 2822,RFC 3461定义),使用IMAP协议(由标准RFC 3501定义)或POP3协议(由RFC 1939定义)进行接收。邮件内容格式采用MHffi扩展邮件格式,其标准由RFC2822、RFC2045、RFC2046、RFC2047、RFC2049、RFC2231、RFC2387等进行了定义。这些协议和邮件格式并没有考虑成本高昂的卫星链路的通信特点,因为其通信冗余较多,引起的费用较高。

【发明内容】

[0004]本发明的目的是克服现有的电子邮件系统在卫星链路传输时通信开销较大的缺点,提供一种面向卫星链路的电子邮件传送方法与系统,使接收者可从同一子网内的其他接收者处获得邮件正文或附件,并允许接收者自由选择是否下载大尺寸正文和附件,从而减少需要通过卫星链路传输的数据量。
[0005]本发明的第一个目标是提出面向卫星链路的电子邮件收发方法。所述方法先分析服务器到各邮件客户端的通信代价,以及各邮件客户端之间的通信代价;发送客户端将邮件中较大的正文和附件分离出来形成多个独立文件(称为子件),并用标签在邮件源码中标识,再分别将邮件源码和子件传送给邮件服务器;收到接收客户端的请求后,邮件服务器分析各子件的缓存位置,并选择通信代价最低的若干缓存位置,再用标签将所有子件缓存位置的IP插入邮件源码,并发送邮件源码给邮件接收客户端;接收客户端依据源码中子件位置IP,从同一子网内该邮件的其他接收者或服务器处获取各子件。
[0006]以上技术方案中,服务器在物理网络拓扑上构造链路具有权重的覆盖网络,通过权重来反映物理链路(卫星链路、微波链路、有线链路等)的通信代价;
[0007]以上技术方案中,所述客户端缓存所有发送或接收过的子件一段时间,所述服务器永久缓存所有接收过的子件;
[0008]以上技术方案中,用户可根据邮件主题和其他信息自由选择是否需要获取大尺寸正文或附件。
[0009]以上技术方案中,所述子网由彼此之间通信代价较低的客户端组成。
[0010]本发明的第二个目标是提出一种面向卫星链路的电子邮件传送系统。所述系统主要由服务器和客户端组成。
[0011]以上系统中,所述邮件服务器包括:邮件收发服务器,用于使用P0P3/SMTP/IMAP和客户端交互,完成电子邮件的收发管理;覆盖网维护单元,用于在物理网络上构造和维护链路具有权重的覆盖网络;子件索引单元,用于维护子件在网络中的位置的索引和查询子件的记录;源码处理单元,用于分离子件、增加扩展标签、合并子件和去除扩展标签等邮件源码修改工作;子件缓存单元,用于以文件形式永久缓存邮件中较大的子件,并对缓存进行管理;子件传输单元,用于接收客户端发送的子件、为其他请求获取子件的客户端提供子件和提供子件缓存位置等。
[0012]以上系统中,所述客户端包括:用户代理,用于以图形化界面形式,允许用户编写、发送、接收、阅读、回复、转寄、保存邮件;源码处理单元,用于分离子件、增加扩展标签等邮件源码修改工作;子件缓存单元,用于以文件形式缓存邮件子件,并对缓存进行管理;子件传输单元,用于向服务器发送子件、为其他请求获取子件的客户端提供子件和获取子件缓存位置等。
[0013]本发明的优点在于:1)允许用户根据主题自由选择是否需要获取大尺寸的超文本正文、资源文件和附件,避免下载无意义的内容带来的开销。2)邮件接收者所在子网通常有其他客户端发送过或接收过同一邮件,本发明允许接收者直接从其他客户端获取邮件大尺寸的超文本正文、资源文件和附件,从而避免了直接通过卫星链路重复传输这些内容。
【附图说明】
[0014]图1为本发明的邮件服务器生成覆盖网络的流程图。
[0015]图2为本发明的邮件服务器生成的覆盖网络的示例图。
[0016]图3A为发送邮件时客户端处理的主流程图。
[0017]图3B为发送邮件时客户端处理邮件源码和分离大段体的流程图。
[0018]图4为发送邮件时服务器端处理的主流程图。
[0019]图5为发送子件时客户端和服务器端之间交互的协议序列图。
[0020]图6为接收邮件时客户端处理的主流程图。
[0021]图7为接收邮件时服务器端处理的主流图。
[0022]图8为邮件服务器获取子件缓存位置的流程图。
[0023]图9A为获取子件时接收节点单次成功获取的协议序列图。
[0024]图9B为获取子件时子件缓存节点无文件或出错的协议序列图。
[0025]图9C为获取子件时子件缓存节点正在接收子件的协议序列图。
[0026]图10为邮件服务器获取更多子件缓存位置的协议序列图。
[0027]图11为本发明的面向卫星链路的电子邮件投递系统的结构示意图。
【具体实施方式】
[0028]以下结合附图和具体实施例对本发明加以说明。
[0029]本方法主要由生成覆盖网络、节点维护子件缓存、维护全局子件映射表、维护已查询节点映射表、邮件源码修改、文件收发协议等技术要素组成。
[0030]在本方法中,邮件服务器需要维护一个覆盖网络,它描述了包含邮件服务器和所有客户端在内所组成网络的链路通信代价,各链路代价通过与链路关联的代价值来反映。覆盖网络的生成过程如图1所示。步骤101在覆盖网络中加入邮件服务器。每个物理世界的局域网都对应一个子网,步骤102将这些子网都加入覆盖网络,并根据各子网到邮件服务器的物理链路的通信代价,设置子网的代价值。代价反映了物理链路的对于卫星链路应设置较高代价值,对于有线链路应设置较低代价值。步骤103再将各子网的所有邮件客户端加入覆盖网络,并设置子网内的通信代价。步骤104将邮件服务器和每个邮件客户端作为一个节点,在同一子网内的各节点之间都增加I条链路,链路代价值为步骤103设置的该子网内的通信代价。此外,为所有普通节点增加I条到邮件服务器节点的链路,链路代价值为该普通节点所在子网的代价值,即步骤102设置的子网代价值。图2是覆盖网络的一个实例。
[0031]邮件服务器和所有邮件客户端都维护一个缓存,用于缓存邮件超文本正文、内嵌资源、附件。在本发明中,这几类缓存的文件也称为子件。每个节点发送和接收的邮件中满足条件的超文本正文、内嵌资源和附件都会进入节点自身的缓存。邮件服务器的缓存为永久缓存。而普通
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1