Linux系统邮件客户端开发毕业论文设计.doc
《Linux系统邮件客户端开发毕业论文设计.doc》由会员分享,可在线阅读,更多相关《Linux系统邮件客户端开发毕业论文设计.doc(56页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 北京邮电大学毕业设Linux系统邮件客户端开发摘 要在日常的生活中,书信往来是我们日常生活中不可缺少的一个环节。随着Internet的普及,传统信件的Internet版本电子邮件已经逐渐步入了我们的生活与工作。但是,目前大多数电子邮件客户端收发软件都功能多样,实现复杂,也或多或少的存在一些缺陷与兼容性等问题。这样的程序在嵌入式等小型化载体上运行十分不便。并且,网络上流行的自制电子邮件客户端收发模块也多是基于Windows操作系统下的集成开发环境编写,很难直接应用到Linux系统中。本文对于Linux系统设计一种简易电子邮件收发客户端。本文首先研究了邮件客户端在Linux中的应用。随后,讲解了
2、与电子邮件相关的各项协议,包括:与发送邮件相关的简单邮件传输协议SMTP(ESMTP),与接收邮件相关的邮局协议POP3,以及对它们进行补充的通用因特网扩充协议MIME。重点编写并完成了对SMTP和POP3协议的相关邮件处理和报文解析。设计中使用了QT C+编程技术,完成了用户图形界面编写与显示。查询了Linux相关磁盘文件操作函数要求,通过硬盘文件进行前后台程序的消息传递,将电子邮件客户端收发模块最终整合起来。本文最后运行简易电子邮件客户端收发模块,并对其进行了多项测试,完成了电子邮件的收发功能,可以实现在网络中的邮件传输通信。关键词:电子邮件客户端;Linux;SMTP; POP3; Qt
3、iLinux system mail client developmentAbstractIn daily life, the correspondence is an indispensable link in our daily life. With the popularity of Internet, the Internet version of the traditional letters, E-mail has gradually stepped into our life and work. But, at present most of the send and recei
4、ve E-mail client software functional diversity, complex, also there are some more or less defects and compatibility and so on. Such programs run on smaller machine is very inconvenient. Popular homemade email client and network transceiver module is also based on the integrated development environme
5、nt to write under the Windows operating system, it is difficult to directly apply to the Linux system. This paper for Linux system design a simple and easy to send and receive E-mail client.This paper studied the mail client application in Linux. Then, explained the E-mail related agreements, includ
6、ing: the simple mail transfer protocol associated with email SMTP (ESMTP), post office protocol related to receive email POP3, and to supplement their general Internet expand agreement MIME. Focus on writing and completed the SMTP and POP3 protocols of the message processing and message parsing.Used
7、 in the design of the QT c + + programming technology, completed the user to compose and display a graphical interface. With the attention to requirement of Linux document operation on disk,the client module is assembled via file communication between Daemon and foreground program.This article final
8、ly run simple email client transceiver module, and have done many tests, completed the email to send and receive function, can realize mail transfer in network communication.Key Words: E-mail client;Linux;SMTP;POP3;Qtii目 录摘 要iAbstractii1 绪论11.1 电子邮件收发软件的历史与现状11.1.1 电子邮件收发软件的历史11.1.2 电子邮件收发软件的现状21.2
9、电子邮件简介21.2.1 电子邮件原理21.2.2 电子邮件工作过程21.2.3 电子邮件地址格式31.2.4 电子邮件特点41.2.5 电子邮件系统41.3 本文的主要研究内容与组织结构51.3.1 本文的主要研究内容51.3.1 本文的组织结构52 电子邮件客户端可行性分析62.1 研究课题的意义62.2 可行性报告62.2.1 编写目地62.2.2 背景62.2.3 需求72.2.4 目标72.2.5 开发语言与环境的选择72.2.6 条件与限制82.2.7 可行性结论83 系统的总体设计93.1 系统总体构成93.2 发送邮件93.3 后台电子邮件传输协议的实现103.4 前台用户界面
10、的显示114 后台电子邮件传输协议的实现124.1 操作系统的选用124.2 Linux套接字(Socket)编程134.2.1 安全套阶层协议简介134.2.2 SSL协议环境搭建144.3 网络应用层编程164.3.1 邮件的发送处理164.3.2 邮件的接收处理184.3.3 报文的收发处理194.3.4 编解码的处理224.3.5 主机I P地址和时间的获取245 前台用户显示界面的实现255.1 Qt界面显示模块的实现255.1.1 Qt对象间的通信255.1.2 Qt界面设计265.2 前后台连接模块的实现295.2.1 QLineEdit组件后台函数295.2.2 QPushBu
11、tton组件后台函数325.2.3 其他组件后台函数336 设计模块的测试与结果346.1 MIME协议发送测试和结果346.2 SSL协议加密后端口测试35结论36参考文献37致 谢38外文文献原文39外文文献翻译4821 绪论1.1 电子邮件收发软件的历史与现状1.1.1 电子邮件收发软件的历史电子邮件(标志:,也被大家昵称为“伊妹儿”),是种用电子手段提供信息交换的通信方式,是互联网应用最广的服务。通过网络的电子邮件系统,用户可以以非常低廉的价格(不管发送到哪里,都只需负担网费)、非常快速的方式(几秒钟之内可以发送到世界上任何指定的目的地),与世界上任何一个角落的网络用户联系。电子邮件可
12、以是文字、图像、声音等多种形式。同时,用户可以得到大量免费的新闻、专题邮件,并实现轻松的信息搜索。电子邮件的存在极大的方便了人与人之间的沟通与交流,促进了社会的发展。起源对于世界上第一封电子邮件(e-mail),根据资料,有两种说法:电子邮件第一种说法1969年10月世界上的第一封电子邮件是由计算机科学家Leonard K.教授发给他的同事的一条简短消息。据互联网周刊报道世界上的第一封电子邮件是由计算机科学家Leonard K.教授发给他的同事的一条简短消息(时间应该是1969年10月),这条消息只有两个字母:“LO”。Leonard K.教授因此被称为电子邮件之父。Leonard K.教授解
13、释,“当年我试图通过一台位于加利福尼亚大学的计算机和另一台位于旧金山附近斯坦福研究中心的计算机联系。我们所做的事情就是从一台计算机登录到另一台计算机。当时登录的办法就是键入L-O-G。于是我方键入L,然后问对方:收到L了吗?对方回答:收到了。然后依次键入O和G。还未收到对方收到G的确认回答,系统就瘫痪了。所以第一条网上信息就是LO,意思是你好!”第二种说法1971年,美国国防部资助的阿帕网正在如火如荼的进行当中,一个非常尖锐的问题出现了:参加此项目的科学家们在不同的地方做着不同的工作,但是却不能很好地分享各自的研究成果。原因很简单,因为大家使用的是不同的计算机,每个人的工作对别人来说都是没有用
14、的。他们迫切需要一种能够借助于网络在不同的计算机之间传送数据的方法。为阿帕网工作的麻省理工学院博士Ray Tomlinson把一个可以在不同的电脑网络之间进行拷贝的软件和一个仅用于单他使用这个软件在阿帕网上发送了第一封电子邮件,收件人是另外一台电脑上的自己。尽管这封邮件的内容连Tomlinson本人也记不起来了,但那一刻仍然具备了十足的历史意义:电子邮件诞生了。Tomlinson选择符号作为用户名与地址的间隔,因为这个符号比较生僻,不会出现在任何一个人的名字当中,而且这个符号的读音也有着在的含义。阿帕网的科学家们以极大的热情欢迎了这个石破天惊般的创新。他们天才的想法及研究成果,现在可以用最快的
15、-快得难以觉察-速度来与同事共享了。许多人回想起来,都觉得阿帕网所获得的巨大成功当中,电子邮件功不可没。(这个说法也是较为广传的。)虽然电子邮件是在70年代发明的,它却是在80年才得以兴起。70年代的沉寂主要是由于当时使用Arpanet网络的人太少,网络的速度也仅为目前56Kbps标准速度的二十分之一。受网络速度的限制,那时的用户只能发送些简短的信息,根本别想象现在那样发送大量照片;到80年代中期,个人电脑兴起,电子邮件开始在电脑迷以及大学生中广泛传播开来;到90年代中期,互联网浏览器诞生,全球网民人数激增,电子邮件被广为使用。1.1.2 电子邮件收发软件的现状时至今日,Google 与几个大
16、型的网络公司都有提供免费或者是付费的邮件服务器,其中,免费的电子邮件账号甚至已经提供高达数个 GB 的邮件储存量!对于一般用户来说真是非常够用了!而对于企业级的大客户,一般选择在IDC中搭建自己的邮件服务器,由专人负责日常的维护。而网络办公平台OA的兴起,也在逐步弱化电子邮件的地位。未来充满了未知,电子邮件的前景尚不明朗。1.2 电子邮件简介1.2.1 电子邮件原理1、电子邮件的发送和接收电子邮件在Internet上发送和接收的原理可以很形象地用我们日常生活中邮寄包裹来形容:当我们要寄一个包裹时,我们首先要找到任何一个有这项业务的邮局,在填写完收件人姓名、地址等等之后包裹就寄出而到了收件人所在
17、地的邮局,那么对方取包裹的时候就必须去这个邮局才能取出。同样的,当我们发送电子邮件时,这封邮件是由邮件发送服务器(任何一个都可以)发出,并根据收信人的地址判断对方的邮件接收服务器而将这封信发送到该服务器上,收信人要收取邮件也只能访问这个服务器才能完成。2、电子邮件地址的构成电子邮件地址的格式由三部分组成。第一部分“USER”代表用户信箱的帐号,对于同一个邮件接收服务器来说,这个帐号必须是唯一的;第二部分“”是分隔符;第三部分是用户信箱的邮件接收服务器域名,用以标志其所在的位置。1.2.2 电子邮件工作过程1.电子邮件系统是一种新型的信息系统,是通信技术和计算机技术结合的产物。电子邮件的传输是通
18、过电子邮件简单传输协议(Simple Mail Transfer Protocol,简称SMTP)这一系统软件来完成的,它是Internet下的一种电子邮件通信协议。2.电子邮件的基本原理是在通信网上设立“电子信箱系统”,它实际上是一个计算机系统。系统的硬件是一个高性能、大容量的计算机。硬盘作为信箱的存储介质,在硬盘上为用户分一定的存储空间作为用户的“信箱”,每位用户都有属于自己的个电子信箱。并确定个用户名和用户可以自己随意修改的口令。存储空间包含存放所收信件、编辑信件以及信件存档三部分空间,用户使用口令开启自己的信箱,并进行发信、读信、编辑、转发、存档等各种操作。系统功能主要由软件实现。3.
19、电子邮件的通信是在信箱之间进行的。用户首先开启自己的信箱,然后通过键入命令的方式将需要发送的邮件发到对方的信箱中。邮件在信箱之间进行传递和交换,也可以与另个邮件系统进行传递和交换。收方在取信时,使用特定帐号从信箱提取。电子邮件的工作过程遵循客户-服务器模式。每份电子邮件的发送都要涉及到发送方与接收方,发送方构成客户端,而接收方构成服务器,服务器含有众多用户的电子信箱。发送方通过邮件客户程序,将编辑好的电子邮件向邮局服务器(SMTP服务器)发送。邮局服务器识别接收者的地址,并向管理该地址的邮件服务器(POP3服务器)发送消息。邮件服务器识将消息存放在接收者的电子信箱内,并告知接收者有新邮件到来。
20、接收者通过邮件客户程序连接到服务器后,就会看到服务器的通知,进而打开自己的电子信箱来查收邮件。通常Internet上的个人用户不能直接接收电子邮件,而是通过申请ISP主机的一个电子信箱,由ISP主机负责电子邮件的接收。一旦有用户的电子邮件到来,ISP主机就将邮件移到用户的电子信箱内,并通知用户有新邮件。因此,当发送一条电子邮件给一另一个客户时,电子邮件首先从用户计算机发送到ISP主机,再到Internet,再到收件人的ISP主机,最后到收件人的个人计算机。ISP主机起着“邮局”的作用,管理着众多用户的电子信箱。每个用户的电子信箱实际上就是用户所申请的帐号名。每个用户的电子邮件信箱都要占用ISP
21、主机一定容量的硬盘空间,由于这一空间是有限的,因此用户要定期查收和阅读电子信箱中的邮件,以便腾出空间来接收新的邮件。1.2.3 电子邮件地址格式domain_name为域名的标识符,也就是邮件必须要交付到的邮件目的地的域名。而somebody则是在该域名上的邮箱地址。后缀一般则代表了该域名的性质,与地区的代码。域名真正从技术上而言是一个邮件交换机,而不是一个机器名。常见的电子邮件协议有以下几种:SMTP(简单邮件传输协议)、POP3(邮局协议)、IMAP(Internet邮件访问协议)。这几种协议都是由TCP/IP协议族定义的。SMTP(Simple Mail Transfer Protoco
22、l):SMTP主要负责底层的邮件系统如何将邮件从一台机器传至另外一台机器。POP(Post Office Protocol):版本为POP3,POP3是把邮件从电子邮箱中传输到本地计算机的协议。IMAP(Internet Message Access Protocol):版本为IMAP4,是POP3的一种替代协议,提供了邮件检索和邮件处理的新功能,这样用户可以完全不必下载邮件正文就可以看到邮件的标题摘要,从邮件客户端软件就可以对服务器上的邮件和文件夹目录等进行操作。IMAP协议增强了电子邮件的灵活性,同时也减少了垃圾邮件对本地系统的直接危害,同时相对节省了用户察看电子邮件的时间。除此之外,IM
23、AP协议可以记忆用户在脱机状态下对邮件的操作(例如移动邮件,删除邮件等)在下一次打开网络连接的时候会自动执行。在大多数流行的电子邮件客户端程序里面都集成了对SSL连接的支持。除此之外,很多加密技术也应用到电子邮件的发送接受和阅读过程中。他们可以提供128位到2048位不等的加密强度。无论是单向加密还是对称密钥加密也都得到广泛支持。1.2.4 电子邮件特点简单来说,即(1)传播速度快(2)非常便捷(3)成本低廉(4)广泛的交流对象(5)信息多样化(6)比较安全1.2.5 电子邮件系统电子邮件服务由专门的服务器提供,Gmail, Hotmail,网易邮箱,新浪邮箱等邮箱服务也是建立在电子邮件服务器
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 系统 邮件 客户端 开发 毕业论文 设计
限制150内