文章目录
网络作为IT行业内众多领域的基础,如:云计算、信息安全、物联网、人工智能等,由此可以看出,网络是非常重要的,在学习信息安全之前,了解网络的知识是必不可少的。
本文大致的介绍一些信息安全经常用到的网络基础知识,详细的信息可到本人博客首页网络专题查看。
典型园区网络架构
在大、中型网络中,通常通过模块化方式将网络功能结构进行分解。但是在各个模块内部,还是存在结构的扩展和弹性问题。譬如一个园区网络需要接入大量用户等,这个问题一般通过网络的层次化来解决。
传统的网络采用三个层次,核心、汇聚、接入各司其职
- 核心层提供数据高速通路(无脑的信息转发)
- 汇聚层进行流量汇聚和控制策略(流量分类,流量标记等)
- 接入层为终端提供多种接入方式
OSI七层模型
Open System Interconnect Reference Model, 开放式系统互联参考模型。
OSI模型的设计目的是成为一个开放网络互联模型,来克服使用众多网络模型所带来的互联困难和低效性。(原因是但是在网络刚兴起的时候,各大厂家为了抢占市场,都推出了自己家的网络协议以及相对应的网络设备,导致网络发展受阻)
OSI参考模型很快成为计算机网络通信的基础模型。在设计时遵循了以下原则:
- 各个层之间有清晰的边界,便于理解;
- 每个层实现特定的功能,且相互不影响;
- 每个层是服务者又是被服务者,即为上一层服务,又被下一层服务;
- 层次的划分有利于国际标准协议的制定;
- 层次的数目应该足够多,以避免各个层功能重复。
OSI参考模型具有以下优点:
- 简化了相关的网络操作;
- 提供即插即用的兼容性和不同厂商之间的标准接口;
- 使各个厂商能够设计出互操作的网络设备,加快数据通信网络发展;
- 防止一个区域网络的变化影响另一个区域的网络,因此,每一个区域的网络都能单独快速升级;
- 把复杂的网络问题分解为小的简单问题,易于学习和操作。
七层
以下是我自己做的一个汇总,仅供参考:
对等层通信
TCP/IP模型
TCP/IP(Transfer Control Protocol/Internet Protocol,传输控制协议/网际协议)
由于OSI七层模型在实际使用中比较繁琐,设计难度大等原因,目前我们并没有采用OSI模型进行通信。因为TCP/IP模型的开放性和易用性,以致在实践中得到了广泛应用,从而使TCP/IP协议栈成为事实上的标准协议。
对OSI模型的七层相比,TCP/IP模型将层数减少到了四层。将OSI模型中的应用层,表示层,会话层合并成应用层;将数据链路层和物理层合并成网络接口层。(为了方便理解:一般还是将数据链路层和物理层分来,所有有些地方也是TCP/IP五层模型)。
各层的作用与OSI模型各层作用基本一致,这里不再赘述。
数据封装解封装过程
封装:可以理解为装快递,在每一层快递(数据)都被包了一层,并贴上了一张写有信息的快递单(报头)
解封装:可以理解为拆快递的过程,在每一层快递(数据)都被拆开一层快递,并读快递单(报头),然后看快递单中的信息,得知交给上层的谁处理。
发送方将用户数据提交给应用程序把数据送达目的地,整个数据封装流程如下:
1. 用户数据首先传送至应用层,添加应用层信息;
2. 完成应用层处理后,数据将往下层传输层继续传送,添加传输层信息(如TCP或UDP,应用层协议已规定是TCP还是UDP);
3. 完成传输层处理后,数据将往下层网络层继续传送,添加网络层信息(如IP)。
4. 完成网络层处理后,数据将往下层数据链接层继续传送,添加数据链层信息(如Ethernet、802.3、PPP、HDLC等),而后以比特流方式传输至对端(中间根据不同类型设备处理方式不同,交换机一般只进行数据链路层信息处理,而路由器进行更高层网络层处理,只有到达最终目的地才能恢复原用户数据);
- 1
- 2
- 3
- 4
用户数据到达目的地后,将完成解封装流程:
1. 数据包先传送至数据链路层,经过解析后数据链路层信息被剥离,并根据解析信息知道网络层信息,比如为IP;
2. 网络层接收数据包后,经过解析后网络层信息被剥离,并根据解析信息知道上层处理协议,比如TCP;
3. 传输层(TCP)接收数据包后,经过解析后传输层信息被剥离,并根据解析信息知道上层处理协议,比如HTTP;
4. 应用层接收到数据包后,经过解析后应用层信息被剥离,最终展示的用户数据与发送方主机发送的数据完全相同。
5. 应用层和传输层提供端到端服务,网络层和数据链路层提供段到段服务。
- 1
- 2
- 3
- 4
- 5
五元组
五元组=源IP+目的IP+协议(传输层协议)+源端口+目的端口
通过五元组可以确定唯一的数据。
常见网络层协议介绍
ARP
ARP(Address Resolution Protocol)地址解析协议,通过目的IP地址来获取目的MAC地址
注意:ARP为网络层协议,但是工作在数据链路层
报文格式
ARP报文中包含以下字段:
字段 | 解释 |
---|---|
Hardware Type | 表示硬件地址类型,一般为以太网 |
Protocol Type | 表示三层协议地址类型,一般为IP |
Hardware Length | MAC地址长度,单位是字节 |
Protocol Length | P地址的长度,单位是字节 |
Operation Code | 指定了ARP报文的类型,包括ARP Request和ARP Reply |
Source Hardware Address | 发送ARP报文的设备MAC地址 |
Source Protocol Address | 发送ARP报文的设备IP地址 |
Destination Hardware Address | 接收者MAC地址,在ARP Request报文中,该字段值为0 |
Destination Protocol Address | 接收者的IP地址 |
工作原理
主机A发送一个数据包给主机C之前,首先要获取主机C的MAC地址。
网络设备一般都有一个ARP缓存(ARP Cache),ARP缓存用来存放IP地址和MAC地址的关联信息。**在发送数据前,设备会先查找ARP缓存表。如果缓存表中存在对方设备的MAC地址,则直接采用该MAC地址来封装帧,然后将帧发送出去。**如果缓存表中不存在相应信息,则通过发送ARP Request报文来获得它。学习到的IP地址和MAC地址的映射关系会被放入ARP缓存表中存放一段时间。在有效期内,设备可以直接从这个表中查找目的MAC地址来进行数据封装,而无需进行ARP查询。过了这段有效期(缺省20min),ARP表项会被自动删除。
如果目标设备位于其他网络,则源设备会在ARP缓存表中查找网关的MAC地址,然后将数据发送给网关,网关再把数据转发给目的设备。
如上图,主机A的ARP缓存表中不存在主机C的MAC地址,所以主机A会发送ARP Request来获取目的MAC地址。ARP Request报文封装在以太帧里。帧头中的源MAC地址为发送端主机A的MAC地址。
此时,由于主机A不知道主机C的MAC地址,所以目的MAC地址为广播地址FF-FF-FF-FF-FF-FF。ARP Request报文中包含源IP地址、目的IP地址、源MAC地址、目的MAC地址,其中目的MAC地址的值为0(代表未知)。ARP Request报文会在整个网络上传播,该网络中所有主机包括网关都会接收到此ARP Request报文。网关将会阻止该报文发送到其他网络上。
注意:ARP请求报文为广播报文
所有的主机接收到该ARP Request报文后,都会检查它的目的协议地址字段与自身的IP地址是否匹配。
如果不匹配,则该主机将不会响应该ARP Request报文。
如果匹配,则该主机会将ARP报文中的源MAC地址和源IP地址信息记录到自己的ARP缓存表中,然后通过ARP Reply报文进行响应。
主机C会向主机A回应ARP Reply报文。ARP Reply报文中的源协议地址是主机C自己的IP地址,目标协议地址是主机A的IP地址,目的MAC地址是主机A的MAC地址,源MAC地址是自己的MAC地址,同时Operation Code被设置为Reply。ARP Reply报文通过单播传送。
注意:ARP响应报文为单播报文
最后主机A接收到了来自主机C的ARP Reply报文之后,首先会检查目的MAC地址是否是自己,若不是则丢弃,若是自己,则接收,并将报文中源IP和源MAC地址记录到自己的ARP表中
常见ARP应用
免费ARP:用来检测一个局域网内IP地址是否冲突,以及宣告IP地址
注意:免费ARP的ARP请求报文中,源、目的IP都是自己,因此来达到检测IP地址冲突的效果。
ICMP
Internet控制消息协议ICMP(Internet Control Message Protocol)
ICMP协议用来在网络设备间传递各种差错和控制信息,并对于收集各种网络信息、诊断和排除各种网络故障等方面起着至关重要的作用。(由于IP协议本身不存在控制、传递差错等功能,所以用ICMP协议,来做这些)
ICMP就好像网购时的物流查询一样,若是没有物理查询,那么你在购买了东西之后,卖家是不是发货,你会不得而知。你有没有收到货,卖家也不知道。
ICMP应用
Ping:Ping是检测网络连通性的常用工具,同时也能够收集其他相关信息。
Tracert:Tracert基于报文头中的TTL值来逐跳跟踪报文的转发路径。为了跟踪到达某特定目的地址的路径,源端首先将报文的TTL值设置为1。该报文到达第一个节点后,TTL超时,于是该节点向源端发送TTL超时消息,消息中携带时间戳。然后源端将报文的TTL值设置为2,报文到达第二个节点后超时,该节点同样返回TTL超时消息,以此类推,直到报文到达目的地。这样,源端根据返回的报文中的信息可以跟踪到报文经过的每一个节点,并根据时间戳信息计算往返时间。Tracert是检测网络丢包及时延的有效手段,同时可以帮助管理员发现网络中的路由环路。
工作原理如上图:
- 源端(RTA)向目的端(主机B)发送一个UDP报文,TTL值为1,目的UDP端口号是大于30000的一个数,(因为在大多数情况下,大于30000的UDP端口号是任何一个应用程序都不可能使用的端口号。)
- 第一跳(RTB)收到源端发出的UDP报文后,判断出报文的目的IP地址不是本机IP地址,将TTL值减1后,判断出TTL值等于0,则丢弃报文并向源端发送一个ICMP超时(Time Exceeded)报文(该报文中含有第一跳的IP地址10.0.0.2),这样源端就得到了RTB的地址。
- 源端收到RTB的ICMP超时报文后,再次向目的端发送一个UDP报文,TTL值为2。
- 第二跳(RTC)收到源端发出的UDP报文后,回应一个ICMP超时报文,这样源端就得到了RTC的地址(20.0.0.2)。
- 以上过程不断进行,直到目的端收到源端发送的UDP报文后,判断出目的IP地址是本机IP地址,则处理此报文。根据报文中的目的UDP端口号寻找占用此端口号的上层协议,因目的端没有应用程序使用该UDP端口号,则向源端返回一个ICMP端口不可达(Destination Unreachable)报文。
- **源端收到ICMP端口不可达报文后,判断出UDP报文已经到达目的端,则停止Tracert程序,**从而得到数据报文从源端到目的端所经历的路径(10.0.0.2;20.0.0.2;30.0.0.2)。
路由协议
路由协议请查看本人网络专题文章,里面介绍了常见的路协议:OSPF、RIP、IS-IS、BGP
汇总:
常见路由协议以及分类
OSPF:
OSPF协议简介
DR与BDR选举
OSPF域内路由
OSPF外部路由
OSPF特殊区域之Stub和Totally Stub区域详解及配置
OSPF特殊区域之NSSA和Totally NSSA详解及配置
OSPF的LSA总结
OSPF的其他特性:区域间路由汇总、外部路由汇总、OSPF更新、认证机制
IS-IS:
IS-IS中的重要概念
IS-IS协议配置
IS-IS路由计算过程:邻居建立、链路信息交换、路由计算
BGP:
BGP协议基本概念:BGP作用与特点、BGP邻居关系建立与配置
SNMP
简单网络管理协议:simple network management protocol。SNMP提供了一种通过运行网络管理软件NMS(Network Management System)的网络管理工作站来管理网络设备的方法。
SNMP支持以下几种操作:
- NMS通过SNMP协议给网络设备发送配置信息。
- NMS通过SNMP来查询和获取网络中的资源信息。
- 网络设备主动向NMS上报告警消息,使得网络管理员能够及时处理各种网络问题。
传输层协议
传输控制协议TCP
TCP报文头部
字段 | 解释 | 长度 |
---|---|---|
源端口号 | 源主机的应用程序使用的端口号。 | 16b |
目的端口号 | 目的主机的应用程序使用的端口号。每个TCP头部都包含源和目的端的端口号,这两个值加上IP头部中的源IP地址和目的IP地址可以唯一确定一个TCP连接。 | 16b |
源端口号+目的端口号+源IP+目的IP=唯一确定一个TCP连接 | ||
序列号 | 用于标识从发送端发出的不同的TCP数据段的序号。数据段在网络中传输时,它们的顺序可能会发生变化;接收端依据此序列号,便可按照正确的顺序重组数据。(面向字节流,所以每个字节按顺序编号) 缩写:seq(注意下文过程中的seq) 例:第一台发送出去的数据:seq=1,第二次发送数据:seq=1+1=2… | 32b |
确认序列号 | 用于标识接收端确认收到的数据段。确认序列号为成功收到的数据序列号加1。 缩写:ack 例:主机A发送消息给主机B,主机A seq=1,主机B回复消息ack=1+1=2 | 32b |
为了保证数据传输的准确无误,TCP传输协议将用于传输的数据包分为若干个部分(每个部分的大小根据当时的网络情况而定)(window来定),然后在它们的首部添加一个检验字节。当数据的一个部分被接收完毕之后,服务端会对这一部分的完整性和准确性进行校验,校验之后如果数据的完整度和准确度都为100%,在服务端会要求客户端开始数据下一个部分的传输,如果数据的完整性和准确性与原来不相符,那么服务端会要求客户端再次传输这个部分 | ||
头部长度 | 表示头部占32bit字的数目,它能表达的TCP头部最大长度为60字节。 | 4b |
Resv. | 保留字段,为将来定义新的用途 | |
6个控制位 | 说明报文的性质。每个标志位表示控制一个功能(谁为1,表示开启该功能。为0表示关闭) | |
UGR | 紧急指针标志,为1时表示紧急指针有效,表示某一位需要被优先处理。为0则忽略紧急指针 | |
ACK | 确认序号标志,为1时表示确认号有效,为0表示报文中不含确认信息,忽略确认号字段 | |
PSH | push标志,为1表示是带有push标志的数据,指示接收方在接收到该报文段以后,应尽快将这个报文段交给应用程序,而不是在缓冲区排队 | |
RST | 重置连接标志,用于重置由于主机崩溃或其他原因而出现错误的连接。或者用于拒绝非法的报文段和拒绝连接请求 | |
SYN | 同步序号,用于建立连接过程,在连接请求中,SYN=1和ACK=0表示该数据段没有使用捎带的确认域,而连接应答捎带一个确认,即SYN=1和ACK=1 | |
FIN | finish标志,用于释放连接,为1时表示发送方已经没有数据发送了,即关闭本方数据流 | |
窗口大小 | 表示接收端期望通过单次确认而收到的数据的大小。 由于该字段为16位,所以窗口大小的最大值为65535字节,该机制通常用来进行流量控制。 | 16b |
校验和 | 校验整个TCP报文段,包括TCP头部和TCP数据。 该值由发送端计算和记录并由接收端进行验证。 | 16b |
紧急指针 | 只有当 URG 标志置 1 时紧急指针才有效。紧急指针是一个正的偏移量,和顺序号字段中的值相加表示紧急数据最后一个字节的序号。 TCP 的紧急方式是发送端向另一端发送紧急数据的一种方式 | |
选项 | 可选项,做了解。 最常见的可选字段是最长报文大小MSS(Maximum Segment Size),每个连接方通常都在通信的第一个报文段中指明这个选项。它指明本端所能接收的最大长度的报文段。 | |
填充 | 选项长度不一定是32位的整数倍,所以要加填充位,即在这个字段中加入额外的零,以保证TCP头是32的整数倍。 |
工作原理
建立连接过程(三次握手)
TCP的连接建立是一个三次握手过程,目的是为了通信双方确认开始序号,以便后续通信的有序进行。主要步骤如下:
- 连接开始时,连接建立方(Client)发送SYN包,并包含了自己的初始序号a;
- 连接接受方(Server)收到SYN包以后会回复一个SYN+ACK包,其中包含了对上一个a包的回应信息ACK,回应的序号为下一个希望收到包的序号,即a+1,然后还包含了自己的初始序号b;
- 连接建立方(Client)收到回应的SYN包以后,回复一个ACK包做响应,其中包含了下一个希望收到包的序号即b+1。
断开连接(四次挥手)
TCP终止连接的四次挥手过程如下:
- 客户端进程发出连接释放报文,并且停止发送数据。释放数据报文首部,FIN=1,其序列号为seq=a(这里的a和建立握手的a不同,都为a是为了方便理解。a等于前面已经传送过来的数据的最后一个字节的序号加1),此时,客户端进入FIN-WAIT-1(终止等待1)状态;
- 服务器收到连接释放报文,发出确认报文,ACK=1,ack=a+1,并且带上自己的序列号seq=b,此时,服务端就进入了CLOSE-WAIT(关闭等待)状态;
- 客户端收到服务器的确认请求后,此时,客户端就进入FIN-WAIT-2(终止等待2)状态,等待服务器发送连接释放报文;
- 服务器将最后的数据发送完毕后,就向客户端发送连接释放报文,FIN=1,ack=a+1,由于在半关闭状态,服务器很可能又发送了一些数据,假定此时的序列号为seq=c,此时,服务器就进入了LAST-ACK(最后确认)状态,等待客户端的确认;
- 客户端收到服务器的连接释放报文后,必须发出确认,ACK=1,ack=c+1,而自己的序列号是seq=a+1,此时,客户端就进入了TIME-WAIT(时间等待)状态;
- 服务器只要收到了客户端发出的确认,立即进入CLOSED状态,就结束了这次的TCP连接。
TCP还有重传机制,流量控制等重要概念这里不再解释。
用户数据包协议UDP
当应用程序对传输的可靠性要求不高,但是对传输速度和延迟要求较高时,可以用UDP协议来替代TCP协议在传输层控制数据的转发。UDP将数据从源端发送到目的端时,无需事先建立连接。UDP采用了简单、易操作的机制在应用程序间传输数据,没有使用TCP中的确认技术或滑动窗口机制,因此UDP不能保证数据传输的可靠性,也无法避免接收到重复数据的情况。
UDP报文头部
UDP适合于实时数据传输,如语音和视频通信。相比于TCP,UDP的传输效率更高、开销更小,但是无法保障数据传输的可靠性。
TCP与UDP大致区别
TCP | UDP | |
---|---|---|
连接 | 面向连接的传输 | 无连接、尽力而为的传输 |
点对点传输 | 支持一对一、一对多、多对一、多对多传输 | |
安全性 | 可靠的(安全) | 不可靠(不安全) |
对系统要求资源 | 多 | 少 |
速率 | 慢 | 快 |
准确性 | 保证数据正确性(重传机制) | 不保证(丢了就丢了) |
应用 | web浏览器、电子邮件、文件传输程序 | 域名系统(DNS)、视频流、IP语音(VoIP)、游戏、QQ |
应用层协议
DNS
域名解析系统(Domain Name System,简称DNS)
域名解析服务器:
- 根服务器:主要用来管理互联网的主目录,全世界只有13个根逻辑服务器节点。这13个节点其中10个设置在美国,另外各有一个设置于英国、瑞典和日本。虽然网络是无国界的,但服务器还是有国界的。所有根服务器均由美国政府授权的互联网域名与号码分配机构ICANN统一管理。
- 顶级域名服务器:一般用于存储.com、.edu、.cn等顶级域名。
- 递归服务器:也可理解为存储着官方域名解析授权的授权服务器,一般存储着这个网络中域名和IP地址的解析关系,也就是DNSPod充当的角色。试想一下,如果每个上网用户在上网的时候都向授权服务器发送请求,那授权服务器必然承受不住,所以就有了缓存服务器存在的必要。
- 缓存服务器:缓存服务器就相当于是授权服务器的一个代理,可以缓解授权服务器的压力。我们每次上网的时候,域名解析的请求都是发给缓存服务器的,缓存服务器第一次收到用户请求的时候,会向授权服务器请求域名和IP地址的解析表,然后储存在本地,等后续再有用户请求相同的域名时,就会直接答复,不再请求。毕竟一个网站的IP地址不是经常变换的。当然,这个解析表是有一定的有效期的,等有效期到了,这个解析表就会自动老化,等下次有用户请求时重新向授权服务器询问。这个定期老化机制,可以保证缓存服务器上域名解析的定期更新。
DNS解析过程如下:
- DNS客户端查询通常采用递归方式,缓存服务器首先会判断本地是否有这个域名的解析缓存。
- 如果本地没有缓存,就会把域名发送到根服务器。根服务器收到www.vmall.com请求后,会判断.com是谁授权管理,并返回.com所在的顶级域名服务器IP地址。
- 缓存服务器继续向顶级域名服务器发送www.vmall.com解析请求,顶级域名服务器收到请求后,会返回下一级.vmall.com的递归服务器IP地址。
- 缓存服务器继续向递归服务器发送www.vmall.com解析请求,递归服务器收到请求后,返回www.vmall.com的解析地址。如果域名层级较多,则递归服务器也会存在多级。
- 缓存服务器得到www.vmall.com的解析IP地址后,将IP地址发送给客户端,同时在本地缓存。
- 后续一段时间内,当有客户端再次请求www.vmall.com这个域名解析时,缓存服务器直接回应解析的IP地址,不再重复询问
FTP
使用FTP进行文件传输时,会使用两个TCP连接。第一个连接是FTP客户端和FTP服务器间的控制连接。FTP服务器开启21号端口,等待FTP客户端发送连接请求。FTP客户端随机开启端口,向服务器发送建立连接的请求。控制连接用于在服务器和客户端之间传输控制命令。
第二个连接是FTP客户端和FTP服务器间的数据连接。服务器使用TCP的20号端口与客户端建立数据连接。通常情况下,服务器主动建立或中断数据连接。
FTP建立连接分为两种模式:
1. 主动模式
2. 被动模式
- 1
- 2
两者的主要区别为:数据连接是由服务器发起还是由客户端发起
1. 主动模式:服务器端向客户端发起
2. 被动模式:客户端向服务器端发起
- 1
- 2
主动模式
FTP连接主动模式建立过程:
- 服务器打开端口 21 启动监听,等待连接。 启动监听,等待连接。
- 客户端发起控制连接的建立请求,服务器响应。
- 客户端通过控制连接发送PORT命令,将客户端数据连接的临时口号告诉服务器。
- 服务器的 20 号端口与客户建立起数据连接。
被动模式
FTP连接被动模式建立过程:
- 服务器打开端口 21 启动监听,等待连接。
- 客户端发起控制连接的建立请求,服务器响应。
- 客户端通过控制连接发送命令字PASV,告知服务器处于被动模式。
- 服务器回应,将数据连接的临时端口号告诉客户。
- 客户端与服务器的临时口建立起数据连接。
由此可以看出主动模式和被动模式还有一个区别就是:服务器端的数据连接是否使用20号端口。
HTTP/HTTPS-Web应用基本组成部分
超文本传输协议(英文:HyperText Transfer Protocol,缩写:HTTP)是互联网上应用最为广泛的一种网络协议。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。通过HTTP或者HTTPS协议请求的资源由统一资源标识符(Uniform Resource Identifiers,URI)来标识。
Web基于客户端(Client)/服务器(Server)架构实现,包含三个部分:
- 使用HTML(HyperText Mark-up Language)描述文件
- 使用URL(Uniform Resource Locator)指定文件的所在
- 透过HTTP(HyperText Transfer Protocol)协议与服务器沟通
HTTP工作流程:
- 客户机(浏览器)主动向服务器(web server)发出连接请求
- 服务器接受连接请求并建立起连接。(1,2步即我们所熟知的TCP三次握手)
- 客户机通过此连接向服务器发出GET等http命令(HTTP请求报文)
- 服务器接到命令并根据命令向客户机传送相应的数据(HTTP响应报文)
- 客户机接收从服务器送过来的数据
- 服务器发送完数据后,主动关闭此次连接(TCP四次挥手)
邮件收发机制(SMTP/POP3/IMAP)
简单邮件传输协议:SMTP(Simple Mail Transfer Protocol)
邮局协议版本3:POP3(Post Office Protocol 3)
交互式邮件存取协议:IMAP(Internet Mail Access Protocol)
一个完整的邮件发送过程包括4步:
- PC将邮件内容封装在SMTP消息中寄给发送方SMTP Server。
- 发送方SMTP Server将邮件封装在SMTP消息中寄给接收方SMTP Server,接收方SMTP Server储存起来。
- POP3 Server收到用户的请求后,读取SMTP Server储存的邮件。
- POP3 Server将邮件封装到POP3消息中发送给PC。
SMTP用于将邮件把发送方的服务器转到到接收方的服务器
POP3、IMAP两者都是负责将邮件从接收端服务器给到接口者
IMAP与POP3主要区别在于:使用POP3,客户端软件会将所有未阅读邮件下载到计算机,并且邮件服务器会删除该邮件。使用IMAP,用户直接对服务器上的邮件进行操作,不需要把所有邮件下载到本地再进行各项操作。