POP3是Post Office Protocol 3的简称,即邮局协议的第3个版本,它规定怎样将个人计算机连接到Internet的邮件服务器和下载电子邮件的电子协议。它是因特网电子邮件的第一个离线协议标准,POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮件的。
永久链接: http://gaojingsong.iteye.com/blog/2391513
预览文章: 【JAVA之Mail介绍】
POP 协议支持“离线”邮件处理。其具体过程是:邮件发送到服务器上,电子邮件客户端调用邮件客户机程序以连接服务器,并下载所有未阅读的电子邮件。这种离线访问模式是一种存储转发服务,将邮件从邮件服务器端送到个人终端机器上,一般是PC机或 MAC。一旦邮件发送到 PC 机或MAC上,邮件服务器上的邮件将会被删除。但目前的POP3邮件服务器大都可以“只下载邮件,服务器端并不删除”,也就是改进的POP3协议。
IMAP全称是Internet Mail Access Protocol,即交互式邮件存取协议,它是跟POP3类似邮件访问标准协议之一。不同的是,开启了IMAP后,您在电子邮件客户端收取的邮件仍然保留在服务器上,同时在客户端上的操作都会反馈到服务器上,如:删除邮件,标记已读等,服务器上的邮件也会做相应的动作。所以无论从浏览器登录邮箱或者客户端软件登录邮箱,看到的邮件以及状态都是一致的。
永久链接: http://gaojingsong.iteye.com/blog/2280895
预览文章: java编程之--邮件发送例子
与IMAP有什么区别
POP3协议允许电子邮件客户端下载服务器上的邮件,但是在客户端的操作(如移动邮件、标记已读等),不会反馈到服务器上,比如通过客户端收取了邮箱中的3封邮件并移动到其他文件夹,邮箱服务器上的这些邮件是没有同时被移动的 。
而IMAP提供webmail 与电子邮件客户端之间的双向通信,客户端的操作都会反馈到服务器上,对邮件进行的操作,服务器上的邮件也会做相应的动作。同时,IMAP像POP3那样提供了方便的邮件下载服务,让用户能进行离线阅读。IMAP提供的摘要浏览功能可以让你在阅读完所有的邮件到达时间、主题、发件人、大小等信息后才作出是否下载的决定。此外,IMAP 更好地支持了从多个不同设备中随时访问新邮件。
总之,IMAP 整体上为用户带来更为便捷和可靠的体验。POP3 更易丢失邮件或多次下载相同的邮件,但 IMAP 通过邮件客户端与webmail 之间的双向同步功能很好地避免了这些问题。
协议特性
POP3协议默认端口:110
POP3协议默认传输协议:TCP
POP3协议适用的构架结构:C/S
POP3协议的访问模式:离线访问
POP协议
协议支持离线邮件处理,当邮件发送到服务器后,电子邮件客户端会调用邮件客户端程序,下载所有未阅读的电子邮件(这种离线访问模式是一种存储转发服务).当邮件从邮件服务器发送到个人计算机上,同时邮件服务器会删除该邮件(但是目前很多POP3服务器都支持“下载邮件,服务器并不删除邮件”,也就是说在POP3中改进了POP协议)。
命令响应
POP3客户向POP3服务器发送命令并等待响应,POP3命令采用命令行形式,用ASCII码表示。服务器响应是由一个单独的命令行组成或多个命令行组成,响应第一行以ASCII文本+OK或-ERR(OK指成功,-ERR指失败)指出相应的操作状态是成功还是失败。
三种状态
认证状态,处理状态和更新状态。当客户机与服务器建立连接时,客户机向服务器发送自己身份(这里指的是账户和密码)并由服务器成功确认,即客户端由认可状态转入处理状态,在完成列出未读邮件等相应的操作后客户端发出quit命令,退出处理状态进入更新状态,开始下载未阅读过的邮件到计算机本地之后最后重返认证状态确认身份后断开与服务器的连接。
POP3服务原理
当客户机与服务器建立联系时,一旦客户机提供了自己身份并成功确认,即由认可状态转入处理状态,
在完成相应的操作后客户机发出quit命令,则进入更新状态,更新之后最后重返认可状态。如下图
等待连接 身份确认 quit命令
—— |认可|————— |处理|——————|更新|
|__________________________________|
重返认可状态
相关推荐
《POP3协议》RFC1939 是互联网标准草案,主要描述了Post Office Protocol的第三版,即POP3,这是一个用于接收电子邮件的协议。该协议主要用于小型设备或资源有限的节点,比如个人计算机或工作站,这些设备无法长期...
- `Pop3.cpp`:这是实现POP3协议的主要代码,通常包含了连接服务器、认证、邮件列表获取、邮件下载等功能。 - `Main.cpp`:这是应用程序的主入口点,可能包含用户界面的初始化和调用POP3服务的逻辑。 - `StdAfx.cpp`...
下面将详细介绍POP3协议的工作原理、特点以及如何通过POP3进行邮件收发。 一、POP3协议工作原理 POP3协议基于客户端/服务器模型。当用户想要检查新的邮件时,他们的邮件客户端(如Outlook、Thunderbird或Apple ...
pop3 协议 源代码 java Jpop3.java
pop3协议封装类pop3协议封装类pop3协议封装类pop3协议封装类pop3协议封装类pop3协议封装类pop3协议封装类
### POP3协议详解 #### 一、概述 **POP3协议**(Post Office Protocol Version 3)是一种互联网标准协议,主要用于客户端从服务器上获取电子邮件。该协议最初是为了满足那些资源有限的小型网络节点的需求,例如...
#### 二、POP3协议介绍 **POP3协议**是一种用于接收电子邮件的标准协议之一。它定义了一种客户端与服务器之间通信的方式,使得用户可以从远程邮件服务器上下载邮件到本地计算机进行查看。与**Simple Mail Transfer ...
### 基于SMTP_POP3协议的电子邮件自动收发系统的开发 #### 1. 引言 随着互联网技术的发展,电子邮件已经成为人们日常生活中不可或缺的一部分。它不仅提供了快速、便捷的信息交流方式,还支持多种格式的数据传输,...
POP3协议则用于从邮件服务器下载邮件到本地客户端。它通常工作在TCP的110号端口。Wireshark可以捕获到如CAPA、USER、PASS、LIST、RETR、DELE、QUIT等POP3命令,这些命令反映了用户登录、查看邮件列表、下载邮件等...
在本文中,我们将深入探讨如何使用Qt库通过POP3协议登录126邮箱,并实现查看IP地址、邮件数量以及删除邮件的功能。首先,让我们了解一下Qt、POP3协议和126邮箱的基础知识。 Qt是一个跨平台的应用开发框架,由挪威Qt...
Wireshark 抓包分析 POP3 和 SMTP 协议 Wireshark 是一个功能强大且免费的网络协议 analyzer,能够抓包并分析各种网络协议。在这个实验中,我们将使用 Wireshark 抓包分析 POP3 和 SMTP 协议。 一、POP3 协议...
在这个“提供接收电子邮件的POP3协议.zip”压缩包中,包含了一系列与实现POP3协议相关的源代码文件,适合于VC++开发环境。 首先,我们看到的`Pop3.cpp`和`Pop3.h`是实现POP3功能的核心文件。`Pop3.cpp`通常包含了...
### POP3协议深入解析 #### 一、POP3协议概览 **Post Office Protocol Version 3**(简称POP3)是一种互联网标准协议,主要用于电子邮件客户端从邮件服务器上下载邮件。POP3协议的设计目的是为了简化电子邮件的...
在这个“一个POP3协议 MFC程序”中,我们可以学习如何利用MFC来实现一个基于POP3的邮件客户端。 1. **POP3协议基础知识**: - POP3协议的主要功能是让用户下载存储在邮件服务器上的邮件。 - 它采用客户端-服务器...
POP3协议允许用户通过简单的邮件传输协议(SMTP)发送邮件,并通过POP3从邮件服务器上检索这些邮件,以便在本地计算机上进行查看、存储或删除。 POP3协议的工作流程主要包括以下几个步骤: 1. **连接建立**:...
本项目是使用C++实现的一个基于POP3协议的电子邮件接收端,它允许用户从邮件服务器下载并管理他们的邮件。 POP3协议的基本工作流程如下: 1. 客户端连接到服务器:用户使用电子邮件客户端(在这种情况下,是用C++...
【项目介绍】基于SMTP和POP3协议的邮箱服务器与客户端python实现源码+超详细注释.zip基于SMTP和POP3协议的邮箱服务器与客户端python实现源码+超详细注释.zip基于SMTP和POP3协议的邮箱服务器与客户端python实现源码+...
POP3协议规范(中文版) POP3协议是邮局协议的第三个版本,旨在为小型结点提供邮件存储功能,使其可以通过互联网访问服务器上的邮件。POP3协议规范中定义了客户主机和服务器主机之间的通信协议,包括连接建立、命令...
1. **POP3协议原理**:POP3协议的工作流程,包括TCP连接建立、用户身份验证、邮件列表获取、邮件下载和断开连接。 2. **SMTP与POP3的区别**:了解SMTP(Simple Mail Transfer Protocol)是用于发送邮件,而POP3用于...
在给定的“pop3.rar”压缩包中,包含了一个名为“pop3.c”的源代码文件,这可能是用C语言实现的一个程序,用于分析POP3协议。 **libnids库** `libnids`是网络入侵检测系统(NIDS,Network Intrusion Detection ...