论文部分内容阅读
现在,如果你拿着一叠写好的信件走在办公室或者其他地方,所引来的关注程度一定不亚于PLMM——不过是因为你的落伍。随着网络的普及,传统信件已经逐步被电子邮件所取代,成为我们生活中不可或缺的一个环节。或许你已经忘记了邮局的位置,但是绝对不会忘记自己的Email地址。那么,当你坐在电脑前面,轻轻敲击键盘、点击鼠标来实现和外界邮件往来的时候,你知道自己调用了哪些协议,它们又是如何兢兢业业地为你默默服务的吗?假设有一个地址为abc@126.com、密码为123的网易邮箱,我们来看一下在邮件客户端软件中,它是如何工作的。
POP3协议
以前,当我们还在使用普通邮件的时候,我们常常会用一把带锁的箱子作为我们自己的信箱,邮递员会根据邮寄地址把我们的信件放入邮箱中。同样,电子邮件也有它们的暂时存放地,这便是POP服务器。我们使用账号和口令打开POP服务器,就好比是我们在日常生活中拿钥匙打开自己平日的信箱锁一样,开锁的过程便是验证的过程。
POP的全称是Post Office Protocol,即邮局协议,用于电子邮件的接收,它使用TCP协议的110端口。现在常用的是第三版,也就是POP3。我们的abc@126.com邮箱的POP3服务器地址就是pop3.126.com。POP3采用Client/Server工作模式,Client被称为客户端,一般我们日常使用电脑都是作为客户端工作的,而Server(服务器)则是由网管人员进行管理的。打个比方,我们的居民区将各个住户的信箱都集中在某个地方,由物业公司的人负责管理,当用户要取信的时候只要带上自己的钥匙去这个地方找到自己的信箱开锁取信就可以了。
那么,我们使用客户端软件来远程收取邮件时,其具体过程又是怎样的呢?首先,我们会在邮件客户端软件比方说Outlook、Foxmail的账号属性上设置一个POP服务器的地址(pop3.126.com),以及自己所注册邮箱的账号(abc)和密码(123)。当我们在软件中执行收取邮件的命令后,软件首先会调用DNS协议对POP服务器进行IP地址的解析工作,也就是获知服务器在互联网上的真实位置。当IP地址被解析出来后,邮件程序便开始使用TCP协议连接邮件服务器的110端口。
当邮件程序成功地连上POP服务器后,会先使用USER命令将邮箱的账号传给POP服务器,然后再使用PASS命令将邮箱的密码传给服务器。如果账号和密码通过了服务器的认证,邮件程序就可以使用STAT命令请求服务器返回邮箱的统计资料,比方说邮箱中邮件的总数、大小等,得到许可后便用LIST命令列出服务器里邮件数量。
接下来邮件程序就会使用RETR命令接收邮件,接收一封后便使用DELE命令将邮件服务器中的邮件置为删除状态。最后,当邮件接收完毕后,通过QUIT命令退出,邮件服务器便会将置为删除标志的邮件删除掉。因此,邮件程序从服务器接收邮件,其实就是一个对话过程,POP协议就是用于电子邮件的一门语言。当然了,这门语言我们不需要掌握,因为客户端程序会替我们来完成这一切。
SMTP协议
和POP相对,SMTP是一个用于邮件发送的协议,它是Simple Mail Transfer Protocal的简称,中文译名为简单邮件传输协议,目标是向用户提供高效、可靠的邮件传输服务,其通常使用的是25端口。不过,这种传输的范围非常广,除了邮件客户端软件常用的客户端到服务器之间的邮件传输外,SMTP还作为从某一个服务器传输到另一个服务器的邮件传输协议(见图1)。因此我们可以说,SMTP是事实上的在Internet传输Email的标准,远比我们所认为的“用客户端发送邮件”的看法要广阔得多。
我们还是以大家所熟悉的邮局传递邮件为例来说明SMTP协议的工作过程。首先,要在客户端软件中设置好SMTP服务器(smtp.126.com)。此外,还要设置注册邮箱的账号和密码(通常可以选择与POP设置相同),虽然发送邮件不需要打开信箱的钥匙,但是服务器也不可能给不属于自己的用户来当“雷锋”,这就好比我们要在普通信封上贴上邮票,邮局才会受理一样。邮件编辑完成后在软件中执行发送操作,软件便会首先对SMTP服务器的地址进行解析,当找到其真实IP地址后,便会向该服务器发送连接请求。这就好比写好信件后要先找到邮电局,然后要求邮电局发送你的邮包。
服务器收到连接请求后,会响应该请求并通过命令接收到客户端传来的账户密码信息。如果核对是自己的注册用户后,便开始进入邮件发送程序。这一步骤好比邮局验证邮包上的邮资是否足额一样。此后,SMTP服务器会判断要发送的邮件是否为本地邮件,也就是判断收件方和发件方是否都处于同一个网络上(比方说都是126邮箱的用户)。如果是,则直接将邮件传送至收件方。这就相当于邮局收到你邮包后,判断是否为本辖区内的邮件,若是,就可以直接投递到用户的信箱了。如果发件方和收件方不在同一个网络上,就需要通过一个或几个中间服务器进行转发了,类似于邮包通过多个地区的中间站进行中转。
SMTP有一个非常重要的特点,便是它能够在传送中接力传送邮件,即邮件可以通过不同网络上的主机接力式传送。在通过DNS服务器查询到远端邮件服务器的IP地址后(相当于邮局通过数据库查询到邮包收件人所在地的邮局),SMTP首先由发件方提出申请,要求与接收方SMTP建立双向的通信渠道,收件方可以是最终收件人也可以是中间转发的服务器。收件方服务器确认可以建立连接后,双发就可以开始通信了(如图2)。
同样,SMTP也是通过多个命令来实现多个服务器之间数据的交流的。具体的命令格式我们在此就不再赘述了。
SSL协议
也许细心的朋友注意到了,Gmail邮箱与通常的邮箱不同,它的SMTP服务器端口为465,而POP3服务器端口为995(如图3)。这是因为Gmail服务器要求安全连接(SSL)而使用了特殊端口的缘故。
SSL即Secure Socket Layer的简称,中文译为安全套接字层,是一种用来在Internet上传输个人信息的通信协议。该协议最初由Netscape企业发展,现已成为网络用来鉴别网站和网页浏览者身份,以及在浏览器使用者及网页服务器之间进行加密通讯的全球化标准。对于那些通过SSL连接来进行传输的数据,SSL要对其进行加密,大大提高了数据的安全性。
Web邮箱本地收
还有一类特殊的邮箱,并没有提供POP收件功能,通常情况下用户只能使用浏览器通过Web方式登录,才能进行邮件的收发。Hotmail/MSN免费邮箱是这类邮箱的代表,只有付费用户才可以使用POP收件功能。
对于这类邮箱,是无法直接使用邮件客户端软件收取邮件的,我们还需要一些辅助措施。FreePOPs这款小软件就可以帮助我们实现Hotmail邮件的POP方式收取。
我们以在Foxmail中的设置为例。先按照通常的方法建立一个Hotmail账户,然后在该账户的“账户属性→邮件服务器”栏目中将服务器设为127.0.0.1或者localhost,账户名为Homtail账户的全称,即XXX@hotmail.com,并取消对“自动启动Foxmail-Hotmail Proxy”的勾选。然后单击“高级”按钮,将POP3端口设置为2000即可(如图4)。以后,当要接收Hotmail/MSN邮件之前,只要先启动FreePOPs就可以通过POP方式接收邮件了。
FreePOPs小档案
软件版本:0.0.98
软件大小:813KB
软件性质:免费软件
适用平台:Windows 9x/Me/NT/2000/XP/2003
下载地址:http://sq3.onlinedown.net/down/FreePOPs-0.0.98-openssl.exe
小提示
FreePOPs还支持很多其他的Web邮箱,但其中很多国内用户很少用到。要注意的是它只能实现对这些邮箱的远程收信,对发信则无能为力。
POP3协议
以前,当我们还在使用普通邮件的时候,我们常常会用一把带锁的箱子作为我们自己的信箱,邮递员会根据邮寄地址把我们的信件放入邮箱中。同样,电子邮件也有它们的暂时存放地,这便是POP服务器。我们使用账号和口令打开POP服务器,就好比是我们在日常生活中拿钥匙打开自己平日的信箱锁一样,开锁的过程便是验证的过程。
POP的全称是Post Office Protocol,即邮局协议,用于电子邮件的接收,它使用TCP协议的110端口。现在常用的是第三版,也就是POP3。我们的abc@126.com邮箱的POP3服务器地址就是pop3.126.com。POP3采用Client/Server工作模式,Client被称为客户端,一般我们日常使用电脑都是作为客户端工作的,而Server(服务器)则是由网管人员进行管理的。打个比方,我们的居民区将各个住户的信箱都集中在某个地方,由物业公司的人负责管理,当用户要取信的时候只要带上自己的钥匙去这个地方找到自己的信箱开锁取信就可以了。
那么,我们使用客户端软件来远程收取邮件时,其具体过程又是怎样的呢?首先,我们会在邮件客户端软件比方说Outlook、Foxmail的账号属性上设置一个POP服务器的地址(pop3.126.com),以及自己所注册邮箱的账号(abc)和密码(123)。当我们在软件中执行收取邮件的命令后,软件首先会调用DNS协议对POP服务器进行IP地址的解析工作,也就是获知服务器在互联网上的真实位置。当IP地址被解析出来后,邮件程序便开始使用TCP协议连接邮件服务器的110端口。
当邮件程序成功地连上POP服务器后,会先使用USER命令将邮箱的账号传给POP服务器,然后再使用PASS命令将邮箱的密码传给服务器。如果账号和密码通过了服务器的认证,邮件程序就可以使用STAT命令请求服务器返回邮箱的统计资料,比方说邮箱中邮件的总数、大小等,得到许可后便用LIST命令列出服务器里邮件数量。
接下来邮件程序就会使用RETR命令接收邮件,接收一封后便使用DELE命令将邮件服务器中的邮件置为删除状态。最后,当邮件接收完毕后,通过QUIT命令退出,邮件服务器便会将置为删除标志的邮件删除掉。因此,邮件程序从服务器接收邮件,其实就是一个对话过程,POP协议就是用于电子邮件的一门语言。当然了,这门语言我们不需要掌握,因为客户端程序会替我们来完成这一切。
SMTP协议
和POP相对,SMTP是一个用于邮件发送的协议,它是Simple Mail Transfer Protocal的简称,中文译名为简单邮件传输协议,目标是向用户提供高效、可靠的邮件传输服务,其通常使用的是25端口。不过,这种传输的范围非常广,除了邮件客户端软件常用的客户端到服务器之间的邮件传输外,SMTP还作为从某一个服务器传输到另一个服务器的邮件传输协议(见图1)。因此我们可以说,SMTP是事实上的在Internet传输Email的标准,远比我们所认为的“用客户端发送邮件”的看法要广阔得多。
我们还是以大家所熟悉的邮局传递邮件为例来说明SMTP协议的工作过程。首先,要在客户端软件中设置好SMTP服务器(smtp.126.com)。此外,还要设置注册邮箱的账号和密码(通常可以选择与POP设置相同),虽然发送邮件不需要打开信箱的钥匙,但是服务器也不可能给不属于自己的用户来当“雷锋”,这就好比我们要在普通信封上贴上邮票,邮局才会受理一样。邮件编辑完成后在软件中执行发送操作,软件便会首先对SMTP服务器的地址进行解析,当找到其真实IP地址后,便会向该服务器发送连接请求。这就好比写好信件后要先找到邮电局,然后要求邮电局发送你的邮包。
服务器收到连接请求后,会响应该请求并通过命令接收到客户端传来的账户密码信息。如果核对是自己的注册用户后,便开始进入邮件发送程序。这一步骤好比邮局验证邮包上的邮资是否足额一样。此后,SMTP服务器会判断要发送的邮件是否为本地邮件,也就是判断收件方和发件方是否都处于同一个网络上(比方说都是126邮箱的用户)。如果是,则直接将邮件传送至收件方。这就相当于邮局收到你邮包后,判断是否为本辖区内的邮件,若是,就可以直接投递到用户的信箱了。如果发件方和收件方不在同一个网络上,就需要通过一个或几个中间服务器进行转发了,类似于邮包通过多个地区的中间站进行中转。
SMTP有一个非常重要的特点,便是它能够在传送中接力传送邮件,即邮件可以通过不同网络上的主机接力式传送。在通过DNS服务器查询到远端邮件服务器的IP地址后(相当于邮局通过数据库查询到邮包收件人所在地的邮局),SMTP首先由发件方提出申请,要求与接收方SMTP建立双向的通信渠道,收件方可以是最终收件人也可以是中间转发的服务器。收件方服务器确认可以建立连接后,双发就可以开始通信了(如图2)。
同样,SMTP也是通过多个命令来实现多个服务器之间数据的交流的。具体的命令格式我们在此就不再赘述了。
SSL协议
也许细心的朋友注意到了,Gmail邮箱与通常的邮箱不同,它的SMTP服务器端口为465,而POP3服务器端口为995(如图3)。这是因为Gmail服务器要求安全连接(SSL)而使用了特殊端口的缘故。
SSL即Secure Socket Layer的简称,中文译为安全套接字层,是一种用来在Internet上传输个人信息的通信协议。该协议最初由Netscape企业发展,现已成为网络用来鉴别网站和网页浏览者身份,以及在浏览器使用者及网页服务器之间进行加密通讯的全球化标准。对于那些通过SSL连接来进行传输的数据,SSL要对其进行加密,大大提高了数据的安全性。
Web邮箱本地收
还有一类特殊的邮箱,并没有提供POP收件功能,通常情况下用户只能使用浏览器通过Web方式登录,才能进行邮件的收发。Hotmail/MSN免费邮箱是这类邮箱的代表,只有付费用户才可以使用POP收件功能。
对于这类邮箱,是无法直接使用邮件客户端软件收取邮件的,我们还需要一些辅助措施。FreePOPs这款小软件就可以帮助我们实现Hotmail邮件的POP方式收取。
我们以在Foxmail中的设置为例。先按照通常的方法建立一个Hotmail账户,然后在该账户的“账户属性→邮件服务器”栏目中将服务器设为127.0.0.1或者localhost,账户名为Homtail账户的全称,即XXX@hotmail.com,并取消对“自动启动Foxmail-Hotmail Proxy”的勾选。然后单击“高级”按钮,将POP3端口设置为2000即可(如图4)。以后,当要接收Hotmail/MSN邮件之前,只要先启动FreePOPs就可以通过POP方式接收邮件了。
FreePOPs小档案
软件版本:0.0.98
软件大小:813KB
软件性质:免费软件
适用平台:Windows 9x/Me/NT/2000/XP/2003
下载地址:http://sq3.onlinedown.net/down/FreePOPs-0.0.98-openssl.exe
小提示
FreePOPs还支持很多其他的Web邮箱,但其中很多国内用户很少用到。要注意的是它只能实现对这些邮箱的远程收信,对发信则无能为力。