(通信与信息系统专业论文)基于libnids开发包的pop3邮件还原.pdf_第1页
(通信与信息系统专业论文)基于libnids开发包的pop3邮件还原.pdf_第2页
(通信与信息系统专业论文)基于libnids开发包的pop3邮件还原.pdf_第3页
(通信与信息系统专业论文)基于libnids开发包的pop3邮件还原.pdf_第4页
(通信与信息系统专业论文)基于libnids开发包的pop3邮件还原.pdf_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 论文题目:基于l i b n i d s 开发包的p o p 3 邮件还原 学科专业:通信与信息系统 研究生:马鹏飞 指导教师:王林教授 要 甥耀。 签名: 签名: 码鹏己 由于因特网的普及和应用,许多人对网络的依赖性越来越强了,人们利用网络进行通 信和商业活动。显然,网络已经成为他们生活中不可或缺的部分,目前人们用的最多的通 信方式是电子邮件。通过网络信箱的方式,人们可以进行信息交流和互换。当然,电子邮 件之所以应用这么广泛,是因为它的价格很便宜,而且它可以很快的与世界上任何一个地 方的人进行通信。电子邮件的方式多种多样,它既可以用文字的方式传播,还可以用图片 与声音等附件的方式发送。但是,正当邮件给用户带来这么大的方便的同时,关于邮件的 安全问题也越来越严重,特别是垃圾邮件,严重影响人们的正常工作和学习。为了保证邮 件的安全,需要对局域网中邮件进行监控,而在监控邮件的工作中,对邮件内容的还原显 得特别的重要。因此,本文提出了一种邮件还原系统的设计方法,并在w i n d o w s 环境下实 现了此系统。 本文先阐述了电子邮件的发展过程和现状以及它的安全问题。其次又对电子邮件传输 原理及相关协议进行了相关说明。然后提出了设计的原理及基本框架,针对邮件信息的还 原,并详细描述了各个阶段( 网络数据包捕获阶段、p o p s 协议解析阶段与数据存储及查 询阶段) 的设计和实现过程。其中网络数据包捕获阶段主要是在w i n d o w s 下实现的,主要 利用l i b n id s 开发包捕获局域网中的数据包:p o p s 协议解析阶段是本文的重点,该阶段 首先对邮件相关信息进行提取,然后对提取的邮件进行还原;数据存储及查询阶段是把还 原后的电子邮件信息存到数据库,并进行查询分析。最后对网络环境进行布局,进行测试, 达到本文的目的,实现了对接收端邮件的还原。 关键词:网络安全;l i b n i d s ;p o p s 协议分析;邮件提取;还原 西安理工大学硕士学位论文 t i t l e =ap o p 3m a i lr e c o v e r yb a s e do nl i b n i d s m a j o r :c o m m u n i c a t i o na n di n f o r m a t i o ns y s t e m n a m e = p e n g f e im a s u p e r v i s o r = p r o f l i nw a n g a b s t r a c t s i g n a t u r e = s i g n a t u r e = d u et ot h ep o p u l a r i z a t i o na n da p p l i c a t i o no fn e t w o r k ,m a n yp e o p l eh a sd e p e n d e do ni t m o r ea n dm o r es t r o n g l y ,p e o p l eu s et h en e t w o r kt ou n d e r t a k ec o m m u n i c a t i o na n dc o m m e r c i a l a c t i v i t i e s o b v i o u s l y ,t h en e t w o r kh a sb e c o m ea ni n d i s p e n s a b l ep a r tf o rt h e i rl i v e s ,a tp r e s e n t , e m a i li sb e c o m i n gt h em o s tu s e f u lt o o lf o rp e o p l e t h r o u g ht h en e t w o r km a i l b o x ,p e o p l ec a n e x c h a n g ea n ds w a p si n f o r m a t i o n o fc o u r s e ,a si t sp r i c ei sv e r yc h e a p ,a n di tc a nc o m m u n i c a t e w i t ha n yp a r to ft h ew o r l dp e o p l eq u i c k l y ,e - m a i lh a sa p p l i e ds ow i d e l y e m a i lh a sm a n y v a r i o u sf o r m s ,f o re x a m p l e ,i tc a ns e n dt e x ts t r i g h t l i n e ,p i c t u r e ,s o u n da n do t h e ra c c e s s o r i e s w a y t h em a ib r i n g t ot h eu s e rs om u c hc o n v e n i e n t ,a tt h es a m e t i m e ,i th a sb r i n g e dt op e o p l e m a n ys e c u r i t yp r o b l e m se s p e c i a l l ys p a i n ,t h ep r o b l e m sh a v es e r i o u s l ya f f e c t e dp e o p l e sn o r m a l w o r ka n ds t u d y i no r d e rt og u a r a n t e et h es a f e t yo fm a i l ,w en e e dt os e tal o c a lm a i lm o n i t o r , t h em a i lc o n t e n t so fr e d u c t i o na p p e a r se s p e c i a l l yi m p o r t a n ti nt h em a i lm o n i t o r i n g t h e r e f o r e , t h i sp a p e rp r o p o s e sa ne m a i lr e d u c t i o ns y s t e m ,a n dr e a l i z et h es y s t e m su n d e rt h ew i n d o w s e n v i r o n m e n t i nt h i sp a p e r , f i r s t l y , i ti n t r o d u c e st h ee - m a i lo ft h ed e v e l o p m e n tp r o c e s sa n ds t a t u s ,s a f e t y p r o b l e m si nd e t a i l s e c o n d l y , i tr e s e a r c ho ne m a i lt r a n s m i s s i o np r i n c i p l ea n dt h er e l a t e d a g r e e m e n ti nd e t a i l t h e n ,i tp u tf o r w a r dt h ed e s i g np r i n c i p l eo fe m a i lr e c o v e r ya n dt h eb a s i c f r a m e w o r k fe m a i lr e c o v e r y , a n dd e s c r i b e st h ed e t a i l e dd e s i g np r i n c i p l ea n dr e a l i z a t i o np r o c e s s o fs t e p s ( n e t w o r kp a c k e tc a p t u r es t e p ,p o p 3p r o t o c o la n a l y s i ss t e pa n ds t o r a g es t e p ) t h e n e t w o r kp a c k e tc a p t u r es t e pm a i n l yd i s c u s s e sh o wt or e a l i z et h ec a p t u r et e c h n o l o g yo fn e t w o r k p a c k e t su s i n gl i b n i d su n d e rt h ew i n d o w se n v i r o n m e n t ;p o p 3p r o t o c o la n a l y s i ss t e pi st h ek e y o ft h ep a p e r , t h i ss t e ps t u d i e se m a i lm e s s a g e se x t r a c tf i r s t l y , a n dt h e nr e c o v e rt h em a i ld e c o d i n g t e c h n o l o g y d a t as t o r a g ea n dq u e r ys t e ps t o r et h er e d u c e de m a i lm e s s a g e sa n dq u e r ya n a l y s i s , i nt h ee n d ,t h en e t w o r ke n v i r o n m e n ti sb u i l t t h r o u g ht e s t ,i ta c h i e v et h ee x p e c t e dp u r p o s e ,a n d r e a l i z e dt ot h er e c e i v e rm a i lr e d u c t i o n k e yw o r d s :n e t w o r ks e c u r i t y ;l i b n i d s ;p o p 3a n a l y s i s ;m a i le x t r a c t ;r e c o v e r y i l 目录 目录 l 绪论1 1 1 电子邮件发展过程及安全问题1 1 2 国内外的研究现状1 1 2 1 国外的研究现状2 1 2 2 国内的研究现状2 1 3 论文的研究内容2 1 4 论文的组织结构3 2 电子邮件的原理及相关网络基础5 2 1 电子邮件原理概述5 2 2p o p 3 协议6 2 2 1 协议简述6 2 2 2 主要命令6 2 2 3p o p 3 的会话过程7 2 3 电子邮件的格式7 2 4 电子邮件的编码方式9 2 4 1m i m e 的信件头字段9 2 4 2m i m e 的编码方法1 0 2 4 3m i m e 的内容类型1 l 2 5t c p i p 网络理论基础1 1 2 5 1 封装和拆分数据包技术介绍1 2 2 5 2i p 协议1 3 2 5 3t c p 协议1 4 2 6 小结1 5 3l i b n i d s 和相关开发包的介绍1 7 3 1l i b n i d s 开发包1 7 3 1 1 概述1 7 3 1 2 使用范围1 7 3 1 3 主要的数据结构1 8 3 2l i b c a p 和w i n p c a p 开发包简介2 0 3 3l i b n i d s 的安装使用2 0 3 4 小结2 1 西安理工大学硕士学位论文 4 系统软件的整体设计及安装部署2 3 4 1 系统的设计目的2 3 4 2 系统的整体设计架构2 3 4 3 系统软件的安装部署2 4 4 3 1 网卡的工作原理2 4 4 3 2 软件的安装部署2 4 4 4 小结2 6 5 邮件还原系统的设计与实现2 7 5 1 数据包捕获模块2 7 5 1 1 数据包的过滤2 7 5 1 2 数据包的捕获过程2 8 5 2p o p 3 协议分析模块2 9 5 2 1t c p 的连接管理3 1 5 2 2 电子邮件的解码3 2 5 2 3 电子邮件相关信息的提取及还原3 2 5 3 数据存储及查询模块3 7 5 3 1 数据存储的设计3 7 5 3 2 数据查询的设计3 9 5 4 小结4 0 6 具体的实现及测试结果4 l 6 1 程序测试的网络环境4 1 6 2 具体的程序测试内容及结果4 l 6 3 小结4 4 7 结论4 5 7 1 本文的总结4 5 7 2 下一步的工作研究4 5 致谢4 7 参考文献一i 4 9 1 绪论 1 绪论 1 1 电子邮件发展过程及安全问题 电子邮件是网络中使用最多的通信工具。在2 0 世纪7 0 年代,邮件最早被人发明,由 于当时人们还没有普遍的使用网络,而且网络中传输的速度又特别的慢,迫于这样的客观 条件的限制,网络在当时很少被人们用到,更不用说电子邮件在网络中的应用了。因此在 当时的条件下,电子邮件只能被用来互换的发送一些短信息,利用电子邮件发送图片和声 音等功能在当时来说简直是不可能的。到了8 0 年代,特别是后几年,由于出现了个人大 批的使用电脑,电子邮件才在小批的人中间慢慢的传播使用,但这时的邮件由于使用的人 数还不是特别的多,因此邮件只是在特定的人群中使用,对于普通人来讲还基本上没有涉 及到。到了9 0 年代,互联网出现了,在以后的几年时间内开始慢慢的普及,使得越来越 多的人使用网络,全球的使用网络的人的数量越来越多。这时候电子邮件作为网络中人与 人之间的重要的通信手段,开始被普通人接受,使用的人变得越来越多。现在的电子邮件 已经变得非常灵活,不光是传输文字信息,还传输很多的图片,视频及音频等等,传输的 内容变得特别的丰富。人们可以通过邮件进行商业的活动,例如总公司要传达重要的通知, 就可以利用电子邮件这个重要的工具,向其分公司发送,分公司就可以及时的、快速的收 到指示,从而及时的做出部署和调整。 电子邮件在网络中的传输是从主机到主机之间进行的,用户通过电脑向其他的用户发 送电子邮件。当用户给其他的人发邮件时,不是想当然的如人们所想的把邮件传给要接收 的用户,还必须的用邮件代理,通过邮件代理来发邮件。这种网络的传播形式给人们带来 了一系列的安全问题,由于黑客和非法分子的存在,只要邮件传输到一个网络,就有可能 被别人把邮件信息截获,并对电子邮件做相关的处理,使收信人无法识别邮件的真伪。这 种情况下,不法分子的行为给用户带来很多不便,甚至是商业损失。因此,邮件的安全问 题是人们非常头疼的事情,研究电子邮件的安全性也看上去是有必要的。 1 2 国内外的研究现状 最近的几年来,正因为垃圾邮件和邮件的安全性问题一直困扰着很多人,因此越来越 多的人也对邮件的安全性问题特别的重视。他们都迫切希望有一种软件能够帮助他们消除 电子邮件的安全隐患。正是由于人们的需求,国内外许多的网络专家和技术人员都在为消 除电子邮件的隐患做出自己的努力。在电子邮件的监控技术上,他们都不断的进行实验, 来进一步的研究这方面的技术,研究的成果还是很不错的。但是,由于他们研究的技术是 不公开的,而且软件的代码也经过了很严密的封装,我们很难从现有的资料中查找和了解 西安理工大学硕士学位论文 它们的核心东西,只能了解它们的用途和使用方法。因此这方面的技术我们根本无法做进 一步的研究。 1 2 1 国外的研究现状 电子邮件在国外的起步比较早,已成为人生活中的一部分。特别是近些年,很多发达 国家都在研究电子邮件的安全问题。 美国是最先研究电子邮件安全问题的国家之一。美国投入了相当的人力和财力开发了 一套邮件的监控工具,该软件名叫“食肉猛兽”,名字现在已经被d c s l 0 0 0 所替代。该 软件是基于w i n d o w sn t 2 0 0 0 的系统,它的功能有很多,最基础的功能是可以实时监视 被怀疑的邮件,它既可以监视邮件头,还能监控邮件的所有内容;还可以查看被怀疑的网 络地址等等n 1 。 除了美国以外,日本、俄罗斯、英国等许多发达国家纷纷仿效美国。这些国家都研制 出类似于d c s l 0 0 0 的电子邮件监听工具。 1 2 2 国内的研究现状 在世界上,中国是e m a i l 账号最多的国家,虽然邮件的起步不是很早,但是中国的 电子邮件发展速度很快。现在国内使用电子邮件的人数越来越多了。基于市场的需求,很 多机构的专家和学者都对电子邮件的安全问题做了深入的研究。对电子邮件的监控的软件 也越来越多,这些软件被许多的公司应用。其中也有很多优秀的成果,如海天网络邮件监 控软件n 1 、金笛电子邮件网关等。这些邮件监控的工具可以为很多公司和个人消除许多邮 件的安全隐患。它们既可以防止垃圾邮件进入个人电脑中,也可以防止公司内部人员通过 电子邮件向外泄密,给公司造成经济上的损失。 1 3 论文的研究内容 基于上述的种种现状和原因,在局域网中,本文主要研究和分析了一个p o p 3 邮件还 原系统。它是在w i n d o w s 平台下通过网络入侵检测开发包l i b n i d s 来实现。本文主要对邮 件的相关信息进行了详细的说明和解析。并把这些信息保存在数据库中进行查询和分析, 具体来说,本文有以下几个方面的工作: ( 1 ) 对电子邮件的基本工作原理和相关协议进行了深入的研究。 ( 2 ) 对l i b n i d s 开发包的进行了详细的说明,并熟练掌握利用l i b n i d s 捕获数据包的 方法。 ( 3 ) 提出了系统设计的总体框架和软件的安装部署方法。本文是在w i n d o w s 网络环 2 1 绪论 境下编写邮件还原系统。提出系统设计的三个阶段,分别是捕获局域网中数据包阶段、 p o p 3 协议分析阶段、数据的存储及查询阶段。对以上三个阶段的设计都进行了深入的分 析和说明,并详细分析了各个阶段的实现过程。 ( 4 ) 详细分析了p o p 3 协议,重点描述邮件信息解析技术。 ( 5 ) 对代码进行调试并实现预期效果。 1 4 论文的组织结构 本论文包括以下章节: 第1 章:介绍了邮件的发展及安全状况,分析了国内外相关研究现状,提出了本文的 主要研究内容。 第2 章:对电子邮件的原理及相关的网络协议基础进行深入的分析。 第3 章:介绍了本系统所使用的l i b n i d s 及相关开发包的体系结构和使用方法。 第4 章:详细介绍系统的总体架构及软件安装部署方法。 第5 章:详细介绍了p o p 3 邮件还原系统各个模块的实现过程。 第6 章:详细说明了本文的部署环境和测试结果。 第7 章:对论文进行了工作总结,并提出了下一步的工作。 西安理工大学硕士学位论文 4 2 电子邮件的原理及相关网络基础 2 电子邮件的原理及相关网络基础 2 1 电子邮件原理概述 作为因特网上最受欢迎的通信工具,电子邮件的应用越来越广泛。收发信人的用户代 理a ) ,收发方邮件服务器和邮件要使用的相对应的邮件协议( s m t p 和p o p 3 ) 三部分 构成了整个电子邮件收发的过程。其中,用户代理就是我们常说的邮件客户端,例如微软 自带的邮件客户端o u t l o o k 等,它是主要用来写、查看和发邮件以及管理邮件的。邮件服 务器主要是用来收发邮件的,当邮件在发送过程中出现问题的时候,它可以给发放反馈信 息,确定邮件是否真的已经发给收信人。还有最重要的部分,就是我们通常说的邮件的协 议,我们通过协议控制邮件的收发。邮件的协议有两个,一个是用来发送电子邮件的协议, 我们称之为s m t p 协议,另一个是用来接收电子邮件的协议,我们称之为p o p 3 协议。由 于本文主要对邮件接收方的数据进行还原,因此本文主要对p o p 3 协议进行分析。 图2 1 所示是电子邮件的收发的整个过程。用户a 要给用户b 发一封邮件,首先, 用户a 先把邮件给他自身的邮件服务器,它的发送必须通过用户a 的代理才能给邮件服 务器。当然,这些动作必须依据s m t p 协议。当a 的邮件服务器收到用户a 发送的邮件 时,把该邮件保存到服务器的邮件存放区中,然后查找收件方的网络地址,我们可以得到 收件方服务器的地址。依据s m t p 协议,可以把邮件的发送从a 的邮件服务器到b 的邮 件服务器。当b 的邮件服务器接收邮件后,就把该邮件保存到服务器的邮件存放区中。 当用户b 要查看邮件时,就可以依据p o p 3 协议,把邮件从其服务器中取出来 4 1 0 至此, 电子邮件在网上的传输过程彻底完成。 ar 甸b 发送由b 件 图2 1 电子邮件收发的整个过程 f i g2 1t h em a i nc o m p o n e n to fe m a i l 西安理工大学硕士学位论文 2 2p o p 3 协议 2 2 1 协议简述 邮局协议有很多的版本,我们现在主要用的是它的第三个版本,也就是p o p 3 协议。 该协议是计算机网络中应用层的协议。通过该协议,用户可以把邮件读取出来,还可以把 邮件下载到电脑上。同时还可以根据客户的需求,对服务器上的邮件进行相应的操作1 5 1 。 在很多情况下,邮件用户不一定同时在线,我们就不能及时的接收邮件。如果用户离 线的时候,我们照样可以根据p o p 3 协议进行邮件处理,此时的邮件服务器不一定非要删 除邮件才能下载邮件,邮件可以直接下载1 。 2 2 2 主要命令 p o p 3 协议提供了许多的命令,表2 一l 是常见的p o p 3 命令,该表主要由命令、参数、 状态和对命令的描述组成n 1 。 表2 1p o p 3 的命令及用法 t a b l e2 1t h ec o m m a n d sa n du s a g eo f p o p 3 命令参数状态 描述 u s e ru s e m a m e 认可用户身份认可是提供用户名 p a s sp a s s w o r d 认可用户身份认可是提供密码 a p o p n a m e ,d i g e s t 认可d i g e s t 是m d 5 消息摘要 请求服务器发回关于邮箱的统计资料, s t a tn o n e处理 如邮件总数和总字节数 返回邮件的唯一标识符,p o p 3 会话的 u i d l m s g # 处理 每个标识符都将是唯一的 l i s t m s g # 处理返回邮件数量和每个邮件的大小 r e t r m s g # 处理返回由参数标识的邮件的全部文本 服务器将由参数标识的邮件标记为删 d e l e m s g # 处理 除,由q u i t 命令执行 服务器将重置所有标记为删除的邮件, r s e tn o n e 处理 用于撤销d e l e 命令 服务器将返回由参数标识的邮件前n 行 t o p m s g # 处理 内容,n 必须是正整数 n o o pn o n e 处理服务器返回一个肯定的响应 q u i t n o n e 更新结束会话 6 2 电子邮件的原理及相关网络基础 2 2 3p o p 3 的会话过程 p o p 3 的会话过程主要采用的是c s 模式,也就是请求应答模式。它分三个阶段,如 图2 2 所示酗1 。由于p o p 3 的默认t c p 端口号是1 1 0 ,因此服务器刚开始就监听此端口。 如果客户想要查看或取邮件的时候,就会发送请求建立t c p 连接。当连接建立以后,就 进入了p o p 3 的会话过程的第一个阶段,即确认阶段,在此阶段,作为客户端的一方,必 须给服务器提供自己的正确的用户名和密码才能进入自己的邮箱,享受服务器的服务。当 用户进入自己的邮箱后,此时就进入会话过程的第二个阶段,即操作阶段。在该阶段,客 户端就可以进行自己想要的操作了,如下载邮件等。但是用户必须向服务器发出请求,服 务器才能提供给客户端想要的东西。当用户不需要任何操作的时候,客户端就会发送给服 务器一个这样的命令,即q u i t 命令。此时的服务器就进入了最后一个阶段,即更新阶段。 在此阶段下,主要是服务器的运作,服务器就会把在操作阶段时得到的所有东西全部释放 掉,与此同时,还得把以前有删除标志的邮件彻底删除。此时p o p 3 的会话过程最终结束。 最后,也就是断开t c p 连接,一旦断开,整个过程彻底结束 9 1 0 警确认卜一 2 3 电子邮件的格式 重返确认状态 图2 - 2 p o p 3 的会话过程 f i g2 - 2t h es e s s i o no fp o p 3 所有邮件服务器都必须有一个统一的电子邮件报文格式,这样才能进行电子邮件的传 输,i 江c 8 2 2 规定了这样的格式。我们平常的电子邮件都要有两部分构成,即信封和报文。 信封和我们用书信通信时很类似,即邮件的收发方的地址。报文的内容是一封邮件的主要 内容,它主要由两部分,即我们通常说的邮件头部和邮件主体。邮件的头部包含了收发信 人、电子邮件的主题等等。而我们平常说的邮件的内容就是邮件的主体部分,也就是邮件 的正文1 1 0 1 。 如图2 3 所示,该图表示了一个电子邮件的简单格式的例子。该例子详细说明了电子 邮件的主要格式。通过此图我们可以看到一般情况下的邮件格式。 7 西安理工大学硕士学位论文 m a i lf r o m :f e i 30 6 16 3 c o m r c p tt o :f e g a n 12 6 c o m f r o m :f e i 3 0 6 t o :f e g a n d a t e :1 2 1 0 s u b j e c t :n e t w o r k d e a r m r f e g a n : w ew a n g tt o i n f o r my o u t h a to u rn e t w o r ki sw o r k i n g a f t e rl a s tr e p a i r y o u r s ,f e i 信 封 头 部 正 文 图2 - 3 电子邮件的简单格式 f i g2 - 3t h es i m p l ef o r m a to fe m a i l 表2 - 2 电子邮件头部关键字段 t a b l e2 - 2e m a i lh e a d e rk e y w o r ds e c t i o n 报 文 r e t u r n p a t h 表示回复地址,即退信的地址。 r e c e i v e d 表示路由信息,邮件的路径。 f r o m 表示邮件发送者。 s e n d e r表示发信人。 r e p l y t o 表示回复时的接收者 t o 表示收信人。 c c 抄送副本接收者。 b c c 密送 密件的收件人。 s u b j e c t 表示邮件的主题。 m e s s a g e - i d消息的标识,该字段由m u a 或者第一个m t a 产生。 d a t e 表示邮件的发送时间。 c o m m e n t s表示备注。 k e y w o r d s 表示邮件主题关键字,用来搜索邮件。 i n r e p l y - - t o 表示当前邮件回复的邮件i d 。 e n c r y p t e d 加密邮件的加密类型。 8 2 电子邮件的原理及相关网络基础 通常我们说的电子邮件,一般包括邮件头部和邮件内容。它的基本格式是邮件头部放 在前面,邮件内容放在邮件头部的后面。在分析电子邮件时,邮件头部的关键字段很有用, 每个关键字段代表不同的意思。我们要识别邮件头部字段,主要靠关键字识别。表2 2 说 明了邮件头部关键字段及其意义n 。 2 4 电子邮件的编码方式 电子邮件要想在网络中传输,只能通过a s c i i 码的形式,否则就不能传输。但是如 果我们要想在网络中传播非a s c l l 码的消息的时候,就必须进行编码,让它变成网络中 能识别的a s c l l 码形式。否则,我们收到的邮件信息必然是一堆乱码。因此,当传播非 a s c l l 码的消息时,必须先编码,才能在网络中传输。然后在接收方必须进行解码才能看 到我们想要的东西 1 2 1 。 邮件的编码方式有三种,第一种方式是u u 编码,它最早用于传输不是a s c i i 码的 东西,该编码方式主要是应用在d o s 下。第二种方式是m i m e 编码,这种编码现在已经 成为网络上的主流编码方式。许多电子邮件的都采用这种编码方式,该编码方式的优点是 可以把不同类型的东西装在一起并使用附件发出,本文重点阐述这种编码方式。第三种方 式b i n h e x 编码,我们目前很少使用这种方式。 2 4 1m i m e 的信件头字段 m i m e 是目前编码方式中应用最多的一种编码技术,其中它最主要的信头部字段有五 个,表2 3 详细说明了这些头字段 1 3 1 : 表2 - 3m i m e 信件头字段 t a b l e2 - 3e m a i lh e a d e rk e y w o r ds e c t i o n 标识m i m e 使用的版本。现行的版本号是1 1 ,如 m i m e v e r s i o n 果没这一行,则是英文文本。 c o n t e n t - d e s c r i p t i o n 内容描述说明此邮件是什么,和邮件的主题差不多。 c o n t e n t i d邮件的内容标识。 表示内容传输时的编码类型,即邮件的主体在传输 c o n t e n t - t r a n s f e r - e n c o d i n g 时是如何编码的。 表示内容类型,常见的有纯文本( t e x t p l a i n ) 和超 c o n t e n t t y p e 文本( t e x t h t m l ) 两种类型 如果一封邮件有许多部分组成,为了详细的说明邮件的各个部分,可以用一个参数把 各个部分分割开,这个关键的参数是b o u n d a r y ,它来源于字段c o n t e n t t y p e 中。 9 西安理工大学硕士学位论文 2 4 。2m i m e 的编码方法 电子邮件的编码出现在该邮件传输不是a s c i i 码,此时就需要将它变成a s c i i 码, 这样才能在网上顺利传送。m i m e 常用的编码方法有三种:7 b i t 、b a s e 6 4 与q p ( q u o t e p r i n t a b l e ) 。下面对这三种编码进行详细的说明。 第一种编码是7 b i t ,凡是在这种方式下不用经过编码,可以直接使用。 第二种编码方式是b a s e 6 4 编码,该编码方式在网络中的应用特别广泛,很多邮件的 编码使用这种方式。该方式的主要把三个字节转化成四个字节。具体操作如下:这三个字 节一共2 4 比特,把这2 4 比特的a s c i i 码平均分成4 份,每份6 比特,然后分别在这四 份6 比特码子前加上两个0 ,构成8 比特,这样就三个字节就转化成四个字节。如果编码 过程中总的字节数不是三的倍数,则先把字节数对3 取模,然后余数为多少,就在不够的 字节上补零,并在编码时后面加“= ”。然后把每个字节转化成十进制,并查找对应的b a s e 6 4 编码表,将十进制换成对应的编码表上的值| 1 5 1 。这样就完成了编码。b a s e 6 4 编码表如表 2 - 4 所示。 1 0 表2 4b a s e 6 4 编码表 t a b l e2 4b a s e 6 4c o d el i s t 6 位值字符6 位值字符6 位值字符6 位值字符 0a1 6 q 3 2 g 4 8w lb1 7r3 3h 4 9 x 2c 18 s 3 4 5 0 y 1 3d1 9 t 3 5 j 5 l z 4e2 0u3 6k5 20 5f2 1v3 7l5 31 6g2 2w3 8m5 42 7h2 3x3 9n5 53 8i2 4y4 005 64 9j2 5z4 l p 5 7 5 1 0k2 6 a 4 2 q 5 86 1 1l2 7b4 3r5 97 1 2m2 8c4 4s6 08 1 3n2 9d4 5t6 19 1 4o3 0e4 6u6 2 + 1 5p3 lf4 7v 6 3 p a d 2 电子邮件的原理及相关网络基础 另外一种编码是q p ( q u o t e p r i n t a b l e ) ,这是m i m e 编码的另一种方式,它只用于网络 中传输非常少的不是a s c i i 码的数据。具体编码操作如下:如果a s c i i 码在3 3 到6 0 和 6 2 到1 2 6 之间的时候,就不用进行编码,可以直接用,但在其他情况下,就需要编码, 此时就把a s c i i 码转化成两个十六进制码,并在转化后的代码前加等号。这样就完成了 编码。 2 4 3m i m e 的内容类型 m i m e 的内容类型很多,表2 5 对它定义的基本内容类型和子类型进行了详细的说明 和介绍n 6 1 。 表2 - 5m i m e 的内容类型及其意义 t a b l e2 - 5m i m ec o n t e n tt y p e sa n di t ss i g n i f i c a n c e 内容类型子类型说明 p l a i n 无格式的文本 t e x t ( 文本) r i c h t e x t有少量格式命令的文本 i m a g e ( 图 g i fg i f 格式的静止图像 像) j p e gj p e g 格式的静止图像 a u d i o ( 音 b a s i c可听见的声音 频) v i d e o ( 视 m p e gm p e g 格式的影片 频) a p p l i c a t i o n o c t e t s t r e a r n 不间断字节序列 ( 应用) p o s t s c r i p t p o s t s c r i p t 可打印文档 r f c 8 2 2m i m er f c8 2 2 邮件 m e s s a g e p a r t i a l 为传输将邮件分割 ( 报文) e x t e r n a l - b o d y 邮件必须从网上获取 m i x e d 按规定顺序的几个独立部分 m u l t i p a r t a l t e r n a t i v e 不同格式的统一邮件 ( 多部分) p a r a l l e l 必须同时读取的几个部分 d i g e s t 每一个部分是一个完整的r f c 8 2 2 邮件 2 5t c p i p 网络理论基础 t c w i p 协议是一个协议族,它可以使不同的计算机之间彼此通信。该协议族分为4 层,从底层到高层依次是链路层、网络层、传输层和应用层。详细功能见表2 6 。 西安理工大学硕士学位论文 表2 - 6t c p i p 协议族 t a b l e2 - 6t c p i pa g r e e m e n tc l a n t c p i p 主要协议主要功能 h t t p 、s m t p 、负责把数据传输到传输层或者接收从传输层返回的 应用层 p o p 3 、f t p 等 数据 为两台主机上的应用程序提供端到端的通信。t c p 为 两台主机提供高可靠性的数据通信,它所做的工作包 括把应用程序交给他的数据分割成大小合适的数据 传输层 t c p 、u d p 块交给网络层。u d p 则为应用层提供不可靠的数据 通信,它只负责把数据包分组从一台主机方发送到另 一台主机,不保证数据能否到达。 为数据包选路由,i p 为最核心的协议,所有的t c p 、 网络层 i c m p 、i p 、i g m p u d p 、i c m p 等数据都以i p 包格式传输。 a i 冲、r a r p 和设 发送时将i p 包作为帧发送,接收时把收到的位组装 链路层备驱动程序及接 成帧,同时提供链路管理,错误检测等。 口 从表中的功能介绍可以看出,对协议族来说,有两个非常重要的协议,它们分别是 t c p 和i p 协议,这两个协议虽然不同层,功能也不同,但是它们必须融合在一起才能使 网络运行正常,该网络一般是因特网。这也就是两者的重要作用1 7 1 。 2 5 1 封装和拆分数据包技术介绍 数据包要想在网络中传输,只有通过帧格式才能在网络中传输。因此必须在发送端把 数据进行封装,这样才能在网络中传输,当数据帧传到接收端主机时,数据帧必须进行拆 分并还原成原始数据 1 8 1 0 具体的过程如图2 4 所示。 1 2 2 电子邮件的原理及相关网络基础 a p p l 首部用户数据 一 i p 数据包 。 t c p 协议首 i p 协议首部应用数据 部 拆 分 封 装 卜- _ 一叫 以太网帧 卜一一i 一一叫 图2 4 数据的封装和拆分图 f i g2 4d a t ae n c a p s u l a t i o na n ds e p a r a t i o nf i g u r e 从图中可以看出,在发送端,数据包的封装过程是从应用层到数据链路层逐层加上头: 部字段的过程( 在数据链路层必须加上尾部字段) 。在接收端,数据包的拆分过程是从数 据链路层开始,应用层结束,把每个层中的头字段去掉,还原成用户数据。在数据链路层 必须去掉尾部字段。 2 5 2i p 协议 i p 是网络层中最重要的协议,也是一个核心协议。很多它上层的协议都是以此协 议为基础,这些协议中有包括应用层的协议如t c p 、u d p 等,还有本层的协议如i c m p 等。虽然i p 协议这么重要,但是该协议有个致命的缺点,就是该协议不能保证所传输的 数据包能够可靠的抵达目的地。为了弥补这个缺点,通常情况下我们会把它和t c p 协议 组合在一起搭配使用。该协议还是一个无连接的协议,它不会在收发方之间搭建一个路径。 还有一个特点,该协议发送数据报的先后顺序不确定,即它发送的数据包很独立。我们把 i p 数据报分为两部分,它们分别是报头和数据。通常的情况下,i p 数据报的头部字节为 2 0 。这2 0 个字节中有很多数据报字段,图2 5 所示为数据报格式,目前我们用的i p 版本 为第四版。通过图可以看出数据报的格式和各个字节含义 1 9 1 0 西安理工大学硕士学位论文 4 位4 位首8 位服务类型 1 6 位总长度( 字节数) 版本部长度 ( t o s ) 1 6 位标识 3 位 标志 1 3 位片偏移 8 位生存时间 ( t t l ) 8 位协议1 6 位首部检验和 3 2 位源i p 地址 3 2 位目的i p 地址 可选项( 如果有) 数据 2 5 3t c p 协议 图2 - 5i p 数据报格式 f i g2 - 5i pd a t ap a c k e t t c p 协议和i p 协议一样,也是t c p i p 协议族中的一个核心的协议。它是传输层的 协议。传输层位于网络层的上一层,现在应用层的许多协议都是基于t c p 协议的,因此, 该协议也被人们广泛的应用。它的主要功能对i p 数据包传输的可靠性进行控制,保证了 数据包在网络中传输时不会出错。t c p 同时也给上层提供了一种面向连接的服务,这同 样是它的一个重要的特点。图2 - 6 是t c p 首部的数据格式。一般情况下,它的首部长为 2 0 个字节,但是它很灵活,对可选项可以加数据可使首部总长度变得更长嘲1 。另外,t c p 报文段的设计非常灵活,我们可以在一个报文段中添加多个控制信息位,这样的报文段就 不止具有一个功

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论