Webmail邮件服务系统的设计与实现
某企业的邮件服务系统设计与实现

某企业的邮件服务系统设计与实现摘要:电子邮件(E-mail)在如今社会有着举足轻重的地位。
随着人们使用次数的增多,通过发送邮件、收集客户资料的移动商务方式受到众多企业的青睐。
本文叙述了电子邮件的定义,分析了Java Mail API和相关协议,开发设计基于Java mail某企业的邮件服务系统。
关键词:SMTP; POP; Javamail; 邮件收发1引言电子信箱、电子邮政,它主要是指个人利用各种电子邮件方式将个人信息通过邮件进行交换的一种通信方式及其手段,在国际互联网中已经得到广泛的普及和应用。
在Internet网络资源中,电子邮箱系统并不是端对端的服务,其核心是存储和发送的服务。
利用收发存储的功能可以实现无连接通信,称作是一种异步通信[1]。
随着技术人员的能力逐渐提高,进一步开发了基于JavaMail邮件系统。
技术人员采用多线程的设计手段,基于JavaMail邮件系统的通信效率得到了提高,大大降低了电子邮件系统使用成本,邮件系统采用新的MVC设计模式的也大大降低了系统的维护难度。
2国内外研究现状从安全的角度考虑:过去传统的邮件系统保护措施不足,到今天为止,仍然有许多网络用户使用安全版本低的邮件系统,缺少安全保护能力。
全球的木马邮件和垃圾邮件问题逐渐恶化,也使得电子邮件系统发展过程中变得举步维艰。
许多用户和企业希望电子邮件系统能进一步加强加密、防木马、杜绝垃圾邮件的措施,解决电子邮件安全性问题。
针对电子邮件存在的漏洞,国内外的技术人员深入分析电子邮件系统,在系统每个层次面上作大量开发研究。
多进程/多线程的技术能大大提高邮件系统处理任务的效率,高速缓存使得电子邮件在服务器中高速数据交换,快速队列机制能够实现用户之间邮件快速收发。
3邮件协议和JavaMail API3.1邮件协议(1)SMTP:全称“Simple Mail Transfer Protocol”顾名思义叫简单邮件传输协协议。
一般人们统称SMTP。
Web邮箱系统的设计

中 图分陈 类号 : T P 3 1 2
1引 富
ቤተ መጻሕፍቲ ባይዱ
文献 标识码 : A
文章编 号 : 1 0 0 9 — 9 1 4 X ( 2 0 1 5 ) 2 9 — 0 3 8 5 一 O 1
近年 来 , 随着 网络用 户要 求 的不断提 高 及计算 机科 学 的迅速 发展 , 特别 是 数据 库技 术在I n t e me t 中的广泛 应用 , We b 站点 向用 户提供 的服 务越来 越 丰富 , 越来 越人性 化 。 2 l 世纪是 一个 高度信 息化 的世纪 , 现代计 算机技 术的发展 , 为 各 行各 业的 发展创造 了一 个全新 的 时代 背景— —人 们的生 活 、 工作等 已经越 来越 离 不开计 算机 的运用 , 而I n t e r n e t 的应用 又加速 了这种 趋势 , 人们越 来越 需要在 互 联 网上 交 流各 种信 息和 讨论 各种 问题 。We b l  ̄ p 箱 是互联 网上一 种人 与人 之 间交互的 工具 , 是 一般 网站必 备的子 系统 。 随着计 算机 技术 的发展 , 邮箱 系统从 最初 的汉 字输入 、 字 处理 、 排版 编辑 、 查询检 索等 单机应 用软 件逐渐 发展成 为现 代 化的 网络 办公 系统 , 通 过联 网将 单项 办公 业务 系统联 成一 个办 公系 统 。 再通 过 远程 网络 将多 个 系统联 结成 更 大范 围的办 公 自动化 系 统。 在I n t e r n e t 的 发展 中we b 邮箱 的作用 将 是无 法替 代 的 。 随着社 会的 发展 , 邮件 已经变成 我们生 活 中人 与人之 间必不 可少 的联 络工 具。 越 来越多 的人注 册使 用邮箱 。 所 以就需要 一个 邮箱管理 系统 进行管 理 。 通过 邮箱管 理系 统 , 我们 可 以很方 便 的管理 注册 登陆 以及 注销 的帐户 , 用户可 以查 询 或修 改 、 添加、 删 除收件 箱 、 发件 箱 , 垃圾 箱里 的记 录 。 我 国从8 眸 代开 始 , 尤其是 进入9 哞 代, 邮箱 发展 迅猛 。 随着 计算机 技术 的 发展, 邮箱 系统 从最 初 的汉字 输入 、 字 处理 、 排 版编 辑 、 查询 检索 等单 机应用 软 件 逐渐发 展成为 现代 化的 网络办 公系统 , 通过 联 网将 单项办 公业 务系统联 成一 个办公系统。 再通过远程网络籽多个系统联结成更大范围的办公自动化系统。 建 立企 业 内部 网( I n t r a n e t ) 和企 业外 部 网( E x t r a n e t ) 已经 成为 办公 自动 化发展 的必然趋 势 。 多 媒体 技术 邮箱 发展 的又 一趋 势。 办公 自动 化系统 引入 多媒 体技 术, 使 之处理 语音 、 图形、 图像功 能加 强, 更 能够满 足办 公要求 , 提 高办公信 息处 理 的应 用 范围和 价 值 。 近来, 随着 技术 的 不断进 步 和市 场 的进一 步 需求 。 2系 统需 求分 析
电子邮件系统的设计与实现

电子邮件系统的设计与实现第一章前言课题来源当前流行的各大邮件客户端软件除了最主要的收发信件之外,功能越来越复杂,但是人们平常真正用到的功能很少,很多功能尤其对于那些计算机知识相对缺乏的人来说,更加显得太过于华丽而不太实用。
有鉴于此,在了解RFC底层协议的基础上,本人开发了这个各种功能相对简单实用的邮件客户端程序,简化了很多不必要的功能。
电子邮件介绍电子邮件(简称E-mail)又称电子信箱、电子邮政,它是一种用电子手段提供信息交换的通信方式。
它是全球多种网络上使用最普遍的一项服务。
这种非交互式的通信,加速了信息的交流及数据传送,它是一个简易、快速的方法。
通过连接全世界的Internet,实现各类信号的传送、接收、存储等处理,将邮件送到世界的各个角落。
到目前为止,可以说电子邮件是Internet资源使用最多的一种服务,E-mail不只局限于信件的传递,还可用来传递文件、声音及图形、图像等不同类型的信息。
电子邮件不是一种“终端到终端”的服务,是被称为“存储转发式”服务。
这正是电子信箱系统的核心,利用存储转发可进行非实用时通信,属异步通信方式。
即信件发送者可随时随地发送邮件,不要求接收者同时在场,即使对方现在不在,仍可将邮件读取信件,不受时空限制。
在这里,“发送”邮件意味着将邮件放到收件人的信箱中,而“接收”邮件则意味着从自己的信箱中读取信件,信箱实际上是由文件管理系统支持是一个实体。
因为电子邮件是通过邮件服务器(mail server)来传递的。
通常mail server 是执行多任务操作系统UNIX的计算机,它提供24小时的电子邮件服务,用户只要向mail server管理人员申请一个信箱账号,就可使用这项快递的邮件服务。
电子邮件的工作原理:电子邮件的发送是通过电子邮件简单传速协议(Simple Mail Transfer Protocol,简称SMTP)来完成的,电子邮件的接受是通过POP3协议来实现。
高可用的电子邮箱系统设计与实现

高可用的电子邮箱系统设计与实现一、引言电子邮件系统在现代社会中起着越来越重要的作用,无论是个人还是企业都会使用邮件进行日常的沟通和交流。
因此,保证电子邮件系统的高可用性对于保障个人和企业的正常运作是非常必要的。
高可用性是指即使在设备故障、网络中断等突发情况下,电子邮件系统仍能够正常地工作。
本文将围绕这一主题,探讨如何设计和实现高可用的电子邮箱系统。
二、基础设计首先,我们需要考虑的是电子邮箱系统的基础设计,也即如何实现邮件的传输、存储和检索。
在设计邮件传输系统时,我们可以采用集群的方式,将邮件服务器分布在多台物理服务器上。
这种方式可以提高整个系统的承载能力,防止单一服务器崩溃导致系统瘫痪。
同时我们可以采用邮件协议中的IMAP和POP协议来进行邮件的收发。
对于存储和检索,我们可以选择使用关系型数据库或者NoSQL 数据库。
关系型数据库一般使用MySQL或Oracle等,而NoSQL 数据库可以使用MongoDB或Redis等。
这些数据库都支持分布式存储,可以将数据存储在多台设备上,保证数据的可靠性和可扩展性。
三、负载均衡为了提高系统的可用性,我们需要保证系统的负载均衡。
负载均衡是指将用户请求均匀地分配到多个服务器上,防止单一服务器过载而导致系统崩溃。
负载均衡可以通过硬件设备(如F5)或者软件设备(如Nginx、HAProxy等)来实现。
负载均衡的实现过程中,我们需要考虑多个因素。
首先是会话保持,即将用户请求分配至同一台服务器上,保证用户在同一会话中的数据不会被中断。
其次是健康检查,即对服务器进行定期检查,将不可用的服务器从负载均衡中剔除。
此外,还需要考虑服务器的加权和调度算法,提高系统的灵活性和可用性。
四、容错与自动故障转移容错是指系统能够在硬件或软件故障发生时仍能够继续工作,保证系统的稳定性。
实现容错的方式有很多种,其中包括双机热备、故障转移、冗余等。
在电子邮箱系统中,我们可以通过实现自动故障转移来保证系统的高可用性。
设计与实现WEB浏览器中的电子邮件系统

1997年 第3期 中山大学学报论丛SUP PLEMENT TO THE JOURNAL OF SUN YATSEN UNIVERSI TY No .3 1997 设计与实现WEB 浏览器中的电子邮件系统郑昌睿(深圳大学电脑中心,深圳518000)摘 要 讨论如何设计与实现嵌于WEB 中的电子邮件系统,为构建内部电子邮件系统的用户提供一些参考。
关键词 Internet /Intranet ,Web 浏览器,电子邮件,客户/服务器模型1 引 言国际Internet 网的快速发展与广泛应用,使全球融入了信息发布与共享、快速传输与高效利用的洪流中。
在所有Internet 的应用中,电子邮件是使用时间最长、用户群最大、适用范围最广,同时也是最重要的应用之一。
仿效Internet 网,企事业单位在建设In -tranet 网的过程中,往往也把建立适合本单位内部使用的电子邮件系统,作为网络应用的重要目标。
而使用方便,又是设计一个符合中国国情的电子邮件系统的重要目标。
2 内部电子邮件系统的实现方法当今,Internet/Intranet 网上的软件是日新月异,提供敢件服务的软件也非常多,因此,内部电子邮件系统的实现方法也非常多样化。
可有3种途径。
2.1 在现有系统上的二次开发 NOTES 4.0,EXCHANGE 5.0提供了功能强大的二次开发环境,可以建造较先进完备的电子邮件系统,但系统的成本较高,维护复杂,用户需要通过大量学习,来提高使用系统的素质。
2.2 直接使用现有的Internet 电子邮件系统 如直接将这些系统做为单位内部的电子邮件系统使用,交流方式将受到限制,因这些系统主要提供点对点的交流方式。
同时,这些系统的可扩充性较差,不利于单位内部的改造,以适合单位自身的作用特点。
2.3 设计基于Web 浏览器中的内部电子邮件系统 单位中Intranet 的应用,多希望将各种信息集成到统一的界面下,以利于各种层次的用户共享信息。
基于java的邮件服务器以及webmail的搭建

基于java的邮件服务器以及webmail的搭建⼀、准备⼯作局域⽹中有两台电脑都⽤Windows XPSP2系统+JDK1.6.0_02,⼀台PCA,⼀台PCB,PCA当服务器,PCB当客户端测试⽤,当然PCA也可同时充当客户端。
Apache James(Java Apache Mail EnterpriseServer)是Apache组织的⼦项⽬之⼀,完全采⽤纯Java技术开发,实现了SMTP、POP3与NNTP等多种邮件相关协议。
James也是⼀个邮件应⽤平台,可以通过Mailet扩充其功能,如Mail2SMS、Mail2Fax等。
James提供了⽐较完善的配置⽅案,尤其是关于邮件内容存储和⽤户信息存储部分,可以选择在⽂件、数据库或其他介质中保存。
James性能稳定、可配置性强,还是开源项⽬,所有源代码不存在版权问题,因此,James在项⽬中的应⽤⽇益⼴泛,现在常⽤版本为2.1,但最新版本2.3已经推出,在本⽂中,我们将仍以james-2.3.1作为介绍蓝本。
⼆、安装与配置James的安装配置过程⾮常简单。
第⼀步:安装JDK并配置JAVA_HOME请使⽤JDK1.3以上版本(在此使⽤jdk1.6.0_02),假设安装在D:installedtoolsJavajdk1.6.0_02,配置java_home在此就不多说了。
第⼆步:下载James,并解压可以到Apache⽹站上下载最新版本james-2.3.1,下载将得到⼀个压缩⽂件james-2.3.1.zip,⼤⼩为4.45M,将此包解压到D:installed toolsjames-2.3.1.第三步:需要使⽤的端⼝:Remote Manager Service started plain:4555POP3 Service started plain:110SMTP Service started plain:25NNTP Service started plain:119检查端⼝4555,110,25,119 是否被占⽤:netstat -an|grep 25netstat -an|grep 110如果被占⽤,linux下⼀般是sendmail程序占⽤,咨询别的应⽤是否使⽤了sendmail,如果没有⽤户在使⽤sendmail就可以停⽌sendmail:ps -eaf|grep sendmailservice sendmail stop直接双击运⾏D:installedtoolsjames-2.3.1 in un.bat,若启动⽆误,将提⽰如下C:Documents andSettingsAdministrator>runUsing PHOENIX_HOME: E:ProgramFilesjames-2.3.1Using PHOENIX_TMPDIR: E:Program Filesjames-2.3.1 empUsingJAVA_HOME:E:Program FilesJavajdk1.6.0_02Phoenix 4.2James Mail Server 2.3.1Remote Manager Service started plain:4555POP3 Service started plain:110SMTP Service started plain:25NNTP Service started plain:119FetchMail Disabled也有可能启动不了,并报JAVA_HOME找不到,如果没有配置JAVA_HOME需要指定JAVA_HOME,或者另⼀⽐较简单的⽅法是在D:installedtoolsjames-2.3.1 in un.bat中指定JAVA_HOME,修改后的run.bat如下:……remrem Determine if JAVA_HOME is set and if so then use itremset JAVA_HOME= D:installed toolsJavajdk1.6.0_02if not "%JAVA_HOME%"=="" goto found_java……修改完后再运⾏run.bat,应该就可以正常启动了,如果再出现什么问题就再去官⽅查找解决了。
Web电子邮件系统的设计与实现

发送模块分为编辑 邮件和发 送 邮件 两部 分。登 录模块 主要 实现用户登录验证 ,并将 用 户信息 保存在 S s o ,方便 es n中 i 调用 。邮件接收模块包 括显 示 邮件列 表 和阅读 邮件两 个部 分 。接收到 的邮件将 直接 保存 在 收件箱 中,采用 邮件 列表
主题 、发件 人、发
We b页面 ,只需要在本地机器上使用 电子 邮件的相关 软件 ,
就可以直接收 发 、管理 电子邮 件。而且 ,邮 件可 以存 储在 本地 ,不用上 网就可 以查看 旧邮件 ,十 分方便 。这种 方 式 的缺点 是用户计算 机上必须 安装 邮件客 户端 软件 ,不能满 足移 动办公的需要 ,而 且用户 自己整 理好 的邮件 不能 在机 器间共 享 。二 是 通过 We b浏览 器 收 发 邮件 。使 用 这种 方 式 ,人们无 须安装 任何 E— i 客 户端 软 件 ,只要 有浏 览 ma l 器 ,就可通过 它直 接登 陆到 WeMa 服务 器 ( bi l 网页 邮件服 务器 ) ,通过身份验证后就能查阅收发邮件 ,这使得 邮件用 户可 以在 任何地方 使用 浏览器 收发 邮件。而且 ,这种方 式
维普资讯
总第 3 期 4
湖南广 播电视大 学学报
20 年第 2 08 期
We b电子 邮件 系统 的设计 与实现
王 进
内容 摘要 :本文介绍 了电子邮件 系统的体 系结 构和工作原理 ,分析 了Jv M i邮件技术 的体 系架构 。在 JP和 JvMa aa al S aa i l 技术 的基础上设计 了一个 Widw 平 台上 的基于 We nos b的电子 邮件系统 ,通过 S P协议和 I P协议 实现 了与特 定邮件服 MT MA
一种高效稳定的WebMail服务器系统的设计与优化

在传统 的 电子 邮件 系统 ,由于其主要 面 向少 量用 户 ,所 以 电子 邮件 的系统 认证 是基 于文 件方式 的 ,它 需 要对 文件 进行 追加 、更新 、删 除 、检 索等 操作 。但 在 大 容量 邮件 系统 中存 在很 多 问题 :1 .随着 用 户 数 量 的增 加 ,系统认 证文 件将很 庞大 ;2 .在 安 全性 上 ,传统 的 邮件 系统 用 户 可 以通 过 F TP方 式登 陆 系统 , 对 系统 密码文 件 的存取需 要在 该系统 上有相 应 的注册用 户权 限 ,这使 得在 分布式 系统 中安 全性很 差 。
电子邮件 ( l t nc i , E e r i Ma ) 亦称 E ni 是一 种通过计算机 网络与其 它用户进行联 系 的便 捷 、 co l —Ia , l 高效 、 廉 价
的通 信手段 。在 Itre 提供 的全部 服务 中, —Ia 是使 用最广 泛 的。传统 电子 邮件 系统 一般采 用集 中式 处 nen t E n订
一
种高效稳定 的 We Mal b i服务器系统的设计与优 化
归 达 伟
( 安 电 子 科技 大 学 . 西 西 陕 西安 70 7 10 1)
[ 摘 要]研 究了高效 稳定 的、基于 WE B的电子邮件 系统的实现及性 能优化,提高 了服务器效率,利 用开源免费
软 件 调 整 用 户认 证 、 邮件 存 储 、 负载 均 衡 ,实 现 了高 效 、稳 定 、 可 靠 、方 便 的大 规 模 邮 件 系 统 。
能完成 MT 功 能的应用程序 ,如 q i 、p sf A ma l otx等 。邮件 分发代 理 ,负责将 电子 邮件 分发 到它 的最终 位 置 i 或按照 用户 设置来完 成 自动转发 、回复 、删除等功 能 。认 证模块 、存储 模块 和负 载均衡模 块分 别完成 邮件 用 户 的权 限认证 、邮件 的存储 和整个 系统 的请求分 配均衡功能 。电子 邮件 系统 的基本 工作 流程如 图 1所示 。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2007年第4期福建电脑Webmail邮件服务系统的设计与实现陶欢华(苏州科技学院浙江苏州215011)【摘要】:Webmail邮件服务系统主要是基于网络收发邮件的系统,用户通过浏览器可以直接收发邮件,不需要对客户端计算机进行邮件服务器和个人邮箱的设置。
本论文给出了Webmail系统的设计思想、具体设计、PHP编码以及实现。
【关键词】:WebmailSMTPPOP3IMAP1.引言随着上网用户越来越多,上网速度越来越快,作为网络基础应用的电子邮件系统的应用越来越广泛,不管是使用免费的邮箱如hotmail.com,yahoo.com.cn,163.com,263.net,21cn.com,sina.com等、收费的个人邮箱、ISP提供的虚拟主机邮箱等都存在着种种问题。
邮件服务系统是信息沟通的桥梁,是因特网的重要组成部分。
自主设计开发邮件服务系统,对于各企事业单位以及各大高校来说具有非常重要的意义。
2.Webmail邮件服务系统的设计2.1Webmail邮件服务系统原理邮件服务器采用开放源代码的Linux系统。
Linux系统的特点之一是使软件模块化,对邮件系统功能进行的模块划分为分成三个模块:邮件分发代理(MDA);邮件传输代理(MTA);邮件用户代理(MUA)。
这三部分之间的界限并不十分明确,有时候一个程序模块可能既包含了MDA的功能同时又能实现MTA的功能,而另外一些时候又有可能是MTA和MDA的功能被组合在了一起。
Webmail就是使用者通过browser连到webserver,而由webserver上的程序负责作收信/发信的动作。
使用者直接通过browser作读信/写信等操作,信件其实并不存在于使用者的电脑上。
因此无论使用者用的是哪一部电脑,只要可以连上网络,都可以使用读到以前的和新收到的信件.另外一个好处是Webmail不容易因为读取含有病毒的档案而导致中毒,更不会发生个人邮件系统中毒后,寄送大量病毒信件给其他亲朋好友。
在发信方面,Webmail程序以SMTPprotocol和MailServer上的TransportAgent勾通,将信件经由MTA送往Inter-net。
而在信件的处理上则是通过POP3或是IMAP4server进行存取。
通过POP3/IMAP4server存取信件主要的优点是提供WebmailService的服务器和MailServer可以是不同的服务器。
因此在为已有的MailServer额外加上Webmail服务功能时,就不必担心会影响到原来的MailServer。
2.2Webmail的具体设计2.2.1系统功能需求模块图1系统功能需求模块图Webmail邮件服务系统能够完成以下任务:1)用户通过浏览器在Web界面上登录,输入个人帐号、密码,即时使用。
2)以Web方式阅读邮件,同时可对邮件一个、多个及整页删除、移动。
实现邮件的转发、回复、地址簿的加入,等等。
3)邮件的在线书写和发送,支持签名和附件功能。
4)具有文件夹的创建、重命名和删除等管理功能。
5)邮件检索功能,用户可选择查询条件,在单个或整个文件夹内查寻邮件。
6)系统提供个人和组的地址簿功能。
7)在配置信息里,用户可以管理自己的信箱。
2.2.2模块流程图本系统主要功能为收发邮件,接收邮件流程图、发送邮件流程图如图2、3所示。
3.webmail的实现3.1Webmail的实现邮件分为邮件信封(mailenvelope)和邮件内容(mailcontent),其中邮件信封只保留给MailServer,其他人看不到此信息。
邮件内容(mailcontent)包含1.邮件标头(header):有Re-ceived、MessageID、From、Subject、Date、To、Cc…等2.邮件主题(body):如有附件(attachedfile),也在此部分中。
邮件需要传输这些内容。
3.2传输(deliver)类包含的主要函数functionmail(¥message,¥stream=false)//准备传送的邮件functionwriteBody(¥message,¥stream,&¥length_raw,¥boundary='')//写总的邮件主题functionwriteBodyPart(¥message,¥stream,&¥length)//写邮件主题各个部分functionwriteToStream(¥stream,¥data)//写入字节流functionprepareMIME_Header(¥message,¥boundary)//准备MIME头信息functionprepareRFC822_Header(¥rfc822_header,¥re-ply_rfc822_header,&¥raw_length)//准备RFC822头信息3.3关键函数functionimaplogin(¥username,¥password,¥imap_server_ad-dress,¥imap_port,¥hide)//登录IMAP服务器functionimap_get_delimiter(¥imap_stream=false)//返回邮箱间的分隔符:INBOX/Test,INBOX.Testfunctionimap_run_command_list(¥imap_stream,¥query,¥handle_errors,&¥response,&¥message,¥unique_id=false)//发送命令以及接收命令的返回结果3.4传输安全图3发送邮件流程图图2接收邮件流程图本系统采用加密的Cookies认证技术,提高了认证系统的效率及安全性。
通过session记录用户的有关信(下转第183页)1602007年第4期福建电脑息,session中注册的变量可作为全局变量使用。
Cookie存在于客户端存有用户的SessionID也即Session号码,当用户浏览器请求服务器时,把SessionID也一起送到服务器,这样Server可识别用户,保证系统的安全性。
3.5编程工具与调试工具1.编程工具本系统的开发采用的编程工具为PHP4,任何的文本编辑器都可以进行代码的编写。
2.调试工具PHP语言最明显的特点是程序不容易调试,我们采用ZendStudio工具跟踪调试PHP程序的运行情况。
ZendStudio工具分为两部分如下,客户端:ZendStudio-3_0_0a安装在客户端跟踪调试)服务器端:ZendStudioServer-3.0.0-Linux_glibc21-i386(安装在邮件服务器端)。
4.总结Webmail邮件服务系统是-种利用电子手段提供信息交换的通信方式。
它是全球多种网络上使用最普遍的一项服务。
这种非交互式的通信,加速了信息的交流及数据传送,它是-个简易、快速的方法,E-mai1不只局限于信件的传递,还可用来传递文件、声音及图形、图像等不同类型的信息。
参考文献:1.刘善平,刘文峰等;Linux内核2.4版源代码分析大全;2002.1;机械工业出版社;北京2.梁如军;Redhat7.0安装配置与管理;2001.8;清华大学出版社;北京3.任永铮;LinuxC程序员指南;2000.9;国防工业出版社;北京4.[美]RichardBlum;开放源码邮件系统安全;2002;人民邮电出版社;北京OS-II的嵌入式开发平台。
在该平台中,ARMSDT2.5提供了良好的开发环境[1]。
利用该环境对本系统的开发过程为:运行该环境进APM窗口->新建工程文件EGWM.apj->配置项目工具->编辑源程序->编译、汇编、连接->目标文件->仿真、程序调试->下载到开发板->开启开发板自动运行等。
4.2软件设计思路在EGWM的设计中,整个软件采用模块化设计,这样可以提高其可维护性和可重用性。
本系统主要可以划分为以下几个工作模块:系统初始化模块、网络登录模块、服务器连接模块、通信机连接模块、网络状态检测模块。
各个模块的关系如图3所示:4.3系统流程图图4是系统实现时的程序流程图.流程图中的Modem指的ARM7微处理器S3C44B0X与通信模块所构成的嵌入式系统---EGWM.图4系统程序流程图4.4软件结构和实现设计在程序的编写中,程序中的所有代码都是采用C语言编写,兼用汇编语言,软件结构采用分层的结构,从底层到上层分别为:串口驱动层、GPRS模块驱动层、PPP协议层、IP协议层、UDP协议层与应用层。
在分层结构,底层函数的任务是为上层函数提供服务,最终可以完成数据传送的任务,在进行EGWM的设计时,各层的主要函数为下表1所示:编程实现,该部分对上面讨论的软件分层结构中各个层次的主要函数进行编程实现。
首先是对串行口驱动层进行编程,主要有:打开串口Open-Comm()、关闭串口CloseComm()、读串口数据ReadComm()、写串口数据WriteComm()等函数。
其次是在这些函数的基础上进行GPRS模块驱动层函数的编写。
主要有:初始化GPRS模块函数GPRSInit()、拨号函数GPRSDial()、断开连接函数GPRSHangup()、检测是否处于在线状态函数GPRSOnline()等函数。
最后,在上面这些底层驱动函数的基础上,上层协议的编写就相对简单,如果底层硬件做出修改、删除或添加等变化,只要对底层的驱动函数进行修改,不影响上层函数的功能,即上层各个函数的代码不用改变。
因此,其它各层如PPP协议层、IP协议层、UDP协议层与应用层协议各个函数的实现根据下层提供的服务,就很容易实现。
5.结束语本文在对ARM7微处理器和?C/OS-II嵌入式操作系统进行详细研究的基础上,给出了EGWM的实现方案。
讨论了EGWM所使用的相关通信协议,对EGWM硬件系统和软件系统分别进行了讨论,给出了硬件体系结构、软件设计的思路、软件的层次结构及主要函数的实现等。
随着信息技术的进步,人们对各个领域的需求越来越多,基于ARM与?C/OS-II的嵌入式系统的应用领域将占据一定的位置和地位。
在未来的信息社会,嵌入式系统与Internet的融合,将会在各个领域的应用中将发挥出越来越重要的作用,技术更加趋于成熟,其应用前景更加广阔。
参考文献:1.王田苗主编.嵌入式系统设计与实例开发.清华大学出版社,20022.陈坚,孙志月.Modem通信编程技术.西安电子科技大学出版社,1999.3.邵贝贝等译.嵌入式实时操作系统.北京航空航天大学出版社,20024.熊桂喜,王小虎译.计算机网络.清华大学出版社,20035.(美)DouglasE.Comer,InternetworkingWithTCP/IPVolI:Principles,Protocols,andArchitecturesFourthEdition,PublishingHouseofElectron-icsIndustry,2001.12.6.McGregor.G,PPPInternetProtocolControlProtocol(IPCP),RFC1332,1992.7.陈渝,李明等编著.源码开放的嵌入式系统软件分析与实践-----基于SkyEye和ARM开发平台.北京航空航天大学出版社,2004.9图3各个模块的关系(上接第160页)!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!183。