❶ SMTP服务器与POP服务器有什么区别
POP3(Post Office Protocol 3) POP适用于C/S结构的脱机模型的电子邮件协议,目前已发展到第三版,称POP3。,它规定怎样将个人计算机连接到Internet的邮件服务器和下载电子邮件的电子协议。它是因特网电子邮件的第一个离线协议标准,POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮件的。 POP适用于C/S结构的脱机模型。脱机模型即不能在线操作,不像IMAP4(netscape支持IMAP4)当客户机与服务器连接并查询新电子邮件时,被该客户机指定的所有将被下载的邮件都将被程序下载到客户机,下载后,电子邮件客户机就可以删除或修改任意邮件,而无需与电子邮件服务器进一步交互。POP3客户向POP3服务器发送命令并等待响应,POP3命令采用命令行形式,用ASCII码表示。 服务器响应是由一个单独的命令行组成,或多个命令行组成,响应第一行以ASCII文本+OK或-ERR指出相应的操作状态是成功还是失败在POP3协议中有三种状态,认可状态,处理状态,和更新状态。 当客户机与服务器建立联系时,一旦客户机提供了自己身份并成功确认,即由认可状态转入处理状态, 在完成相应的操作后客户机发出quit命令,则进入更新状态,更新之后最后重返认可状态。如下图 等待连接 身份确认 quit命令 —— |认可|————— |处理|——————|更新| |__________________________________| 重返认可状态 POP3命令码如下: 命令 参数 状态 描述 ------------------------------------------ USER username 认可 此命令与下面的pass命令若成功,将导致状态转换 PASS password 认可 APOP Name,Digest 认可 Digest是MD5消息摘要 ------------------------------------------ STAT None 处理 请求服务器发回关于邮箱的统计资料,如邮件总数和总字节数 UIDL [Msg#] 处理 返回邮件的唯一标识符,POP3会话的每个标识符都将是唯一的 LIST [Msg#] 处理 返回邮件数量和每个邮件的大小 RETR [Msg#] 处理 返回由参数标识的邮件的全部文本 DELE [Msg#] 处理 服务器将由参数标识的邮件标记为删除,由quit命令执行 RSET None 处理 服务器将重置所有标记为删除的邮件,用于撤消DELE命令 TOP [Msg#] 处理 服务器将返回由参数标识的邮件前n行内容,n必须是正整数 NOOP None 处理 服务器返回一个肯定的响应
❷ p0p3服务器是什么
POP3 :是Post Office Protocol 3的简称,是访问Internet上电子邮箱的常用方法。 POP3服务允许你设置你的本地浏览器的输入/输出邮件服务器名称,就像使用你的本地电子信箱一样使用你自己的E-mail软件来收发邮件。以371.net为例,当你使用nescape、Iemail、outlook express等软件收信时,必须在这些软件上设SMTP server和POP3 server的地址。
http://news.shang.com/70/2002-10-17/20021017-47767-70.shtml
什么叫pop3服务
POP3(Post Office Protocol 3) POP适用于C/S结构的脱机模型的电子邮件协议,目前已发展到第三版,称POP3。,它规定怎样将个人计算机连接到Internet的邮件服务器和下载电子邮件的电子协议。它是因特网电子邮件的第一个离线协议标准,POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮件的。
POP适用于C/S结构的脱机模型。脱机模型即不能在线操作,不像IMAP4(netscape支持IMAP4)当客户机与服务器连接并查询新电子邮件时,被该客户机指定的所有将被下载的邮件都将被程序下载到客户机,下载后,电子邮件客户机就可以删除或修改任意邮件,而无需与电子邮件服务器进一步交互。POP3客户向POP3服务器发送命令并等待响应,POP3命令采用命令行形式,用ASCII码表示。
服务器响应是由一个单独的命令行组成,或多个命令行组成,响应第一行以ASCII文本+OK或-ERR指出相应的操作状态是成功还是失败在POP3协议中有三种状态,认可状态,处理状态,和更新状态。
当客户机与服务器建立联系时,一旦客户机提供了自己身份并成功确认,即由认可状态转入处理状态,
在完成相应的操作后客户机发出quit命令,则进入更新状态,更新之后最后重返认可状态。如下图
等待连接 身份确认 quit命令
—— |认可|————— |处理|——————|更新|
|__________________________________|
重返认可状态
POP3命令码如下:
命令 参数 状态 描述
------------------------------------------
USER username 认可 此命令与下面的pass命令若成功,将导致状态转换
PASS password 认可
APOP Name,Digest 认可 Digest是MD5消息摘要
------------------------------------------
STAT None 处理 请求服务器发回关于邮箱的统计资料,如邮件总数和总字节数
UIDL [Msg#] 处理 返回邮件的唯一标识符,POP3会话的每个标识符都将是唯一的
LIST [Msg#] 处理 返回邮件数量和每个邮件的大小
RETR [Msg#] 处理 返回由参数标识的邮件的全部文本
DELE [Msg#] 处理 服务器将由参数标识的邮件标记为删除,由quit命令执行
RSET None 处理 服务器将重置所有标记为删除的邮件,用于撤消DELE命令
TOP [Msg#] 处理 服务器将返回由参数标识的邮件前n行内容,n必须是正整数
NOOP None 处理 服务器返回一个肯定的响应
------------------------------------------
QUIT None 更新
❸ 什么叫接收邮件服务器(POP)
邮件接收服务器,顾名思义,就是指接收邮件的服务器,使用的大都是POP协议,POP协议具体是什么呢?
Post Office Protocol
:邮局协议 POP 协议允许工作站动态访问服务器上的邮件,目前已发展到第三版,称为 POP3。POP3 允许工作站检索邮件服务器上的邮件。POP3
传输的是数据消息,这些消息可以是指令,也可以是应答。
创建一个分布式电子邮件系统有多种不同的技术支持和途径:POP(邮局协议)、DMSP(分层式电子邮件系统协议)和 IMAP(因特网信息访问协议)。
其中,POP
协议创建最早因此也最为人们了解;DMSP 具有较好的支持“无连接”操作的性能,但其很大程度上仅限于单个应用程序(PCMAIL);IMAP 提供了 POP 和
DMSP 的扩展集并提供对远程邮件访问的三种支持方式:离线、在线和无连接。
POP
协议支持“离线”邮件处理。其具体过程是:邮件发送到服务器上,电子邮件客户端调用邮件客户机程序以连接服务器,并下载所有未阅读的电子邮件。
这种离线访问模式是一种存储转发服务,将邮件从邮件服务器端送到个人终端机器上,一般是
PC 机或 MAC。一旦邮件发送到 PC 机或 MAC 上,邮件服务器上的邮件将会被删除。
POP3
并不支持对服务器上邮件进行扩展操作,此过程由更高级的 IMAP4 完成。 POP3 使用 TCP 作为传输协议
(3)ascii是什么服务器扩展阅读
当多个工作组、部门和骨干网连接在一起的时候,企业间需要连网,一个系统连接了很多很多的网络,Internet已经变得十分普遍和重要,电子邮件是因特网上最为流行的应用之一。
如同邮递员分发投递传统邮件一样,电子邮件也是异步的,也就是说人们是在方便的时候发送和阅读邮件的,无须预先与别人协同。
与传统邮件不同的是,电子邮件既迅速,又易于分发,而且成本低廉。另外,现代的电子邮件消息可以包含超链接、HTML格式文本、图像、声音甚至视频数据。
我们将在本文中查看处于因特网电子邮件核心地位的应用层协议。但在深入讨论这些协议之前,让我们先概览一下因特网邮件系统及其重要部件。
❹ js的mqtt传输16进制对应的ASCII码到服务器而服务器接收到的转回16进制却多了几个字节,请问该怎么解决
1.Unicode是什么Unicode(中文:万国码、国际码、统一码、单一码)是计算机科学领域里的一项业界标准。它对世界上大部分的文字系统进行了整理、编码,使得电脑可以用更为简单的方式来呈现和处理文字。简单说来,就是把世界上所有语言的字,加上所有能找到的符号(如高音谱号、麻将、emoji)用同一套编码表示出来。2.UTF-8是什么UTF-8(8-)是一种针对Unicode的可变长度字符编码。可变长度的意思在于,如果能使用1字节编码,UTF-8绝对不会使用2字节去表示。举个例子,UTF-8的1字节部分和ASCII码是相同的。所以表示'A'这个字符的时候,UTF-8与ASCII码不仅编码相同,而且都是只使用1字节。3.CharacterSet和Collation是什么CharacterSet是一套符号以及编码。Collation是characterset的排序方法。在中文版的MySQL中,characterset被翻译为“字符集”,collation被翻译为“整理”。举个例子,UTF-8是characterset,utf8_unicode_ci和utf8mb4_unicode_ci就是collation。Collation的作用主要有二:字符排序与查找字符。字符排序的作用是显而易见的,不过还是要用几个例子加以说明。比如要比较a和b的大小,因为在26个英文字母里面,a在b前,所以在编码的时候,也把a放在b前面。这样就产生了第一种排序方式,通过字符编码的大小来排序。而在中文里面,“年”和“日”的排序,除了按照字符编码大小,还可以有另外一些标准。比如可以按照笔画序,“年”的第一笔是丿,“日”的第一笔是丨,而丨是排在丿前的,所以就将“日”排在前面;也可以按拼音序,“年”是n开头,“日”是r开头,于是把“年”排在前面。除此以外,还可以定义部首序、笔画数序等等,而不同的排序方法会有不同的结果。英文也有大小写敏感与不敏感的排序方式。种种不同的排序方式,就形成了不同的collations。Collation的第二个作用则是查找字符是否在一个字符集里面。既然是一个有序的集合,则可以快速地通过一个编码值确定一个字符是否在集合内。这个特性是我们在不知不觉中使用的。比如使用中文输入法,就是通过输入法找到一个编码,通过collation把它查找出来的。4.Unicode再深入:Plane和中日韩越统一表意文字utf8_unicode_ci和utf8mb4_unicode_ci这两个collations都是基于UTF-8编码的,但排序方面或多或少会有差别。可是更大的差别是它查找字符的集合。这需要提到一个Unicode的概念:Plane。4.1.PlanePlane中文译作“Unicode平面字符映射”,不过我们还是叫它plane好啦。目前的Unicode字符分为17个planes,而每个plane拥有65536(即2^16)个代码点。可以认为一个plane就是一个范围的编码。Plane0也叫做BMP(BasicMultilingualPlane,基本多文种平面),存放着世界上各种语言与标记中最常用的字符。Plane1也叫做SMP(,多文种补充平面),放着表情符号(emoji)、字母与数学符号、音乐符号、太玄经(太极符号)、装饰符号、扑克牌、麻将符号、箭头扩展和一些世界上各种语言不太常用的文字等等。Plane2也叫做SIP(SupplementaryIdeographicPlane,表意文字补充平面),用于存放统一汉字(见4.2)的一些罕用字与汉藏语系其他语言的用字(如粤语用字)。4.2.统一汉字的分布对于统一汉字(中日韩越统一表意文字,CJKVUnifiedIdeographs)来说,BMP存放着最初的版本(也是最常用字)与扩展A区的汉字。扩展B区到即将到来的扩展E区都放在SIP中。在这些区中,除了独立字源的字,还有同一个字源或部首不同的变体或写法。比如“户”的第一笔,中国大陆与香港写作“户”,台湾写作“户”,日本则写作“戸”。这些差异也会在Unicode中用三个不同的编码去表示。所以B区到E区有不少此种字体。举些B区的例子。网络上之前流行的“不会功夫不要艹我”被写成““xx巭嫑莪”,其中“xx”这个字就是在B区。而粤语“x鸡”(阉鸡)、“x完松”(和一个人发生关系后弃之而去)两个词的首字也是在B区。5.utf8_unicode_ci和utf8mb4_unicode_ci的异同这两种collations所对应的字符都是UTF-8编码的一个子集。utf8_unicode_ci最多能找到3个字节的Unicode编码,而utf8mb4_unicode_ci则能找到4个字节的编码。由于调整后的UTF-8编码格式规定最多使用4字节(原来是6字节)编码,所以utf8mb4系列可以说是覆盖了整个Unicode编码。由于utf8_unicode_ci最多能找到3个字节的编码,意味着它只支持BMP中的字符,对于SMP与SIP以及其他头一字节不为0x00、需要4字节编码的planes来说,utf8_unicode_ci这种collation是无法支持。当使用4字节的字符(如emoji与B区以后的统一汉字)对使用此种collation的字段进行增删查改时,数据库会报一个非法字符的异常。而utf8mb4则没有此问题。由此也看出,utf8mb4_unicode_ci是utf8_unicode_ci的超集。6.utf8mb4_unicode_ci的优缺点utf8mb4系列的Collation在MySQL5.5以上开始支持。相比起utf8_unicode_ci,它有如下的特性:1)在数据表中,对于BMP中的字符(最多使用3字节的字符,最常用的字符),两种collations具有完全相同的存储特性:相同的码值,相同的编码方式,相同的存储长度。不会增加任何的存储开销。2)在数据表中,对于其他plains的字符,utf8系列的collation根本不能存储,而utf8mb4系列的collations则可以存储。3)在数据表中,对于变长的字段(如VARCHAR2,TEXT),utf8mb4最大可存储的字符可能少于utf8系列的collation。4)在索引中,对于文本类型的字段,utf8mb4可索引的字符少于utf8系列的collations。如InnoDB的索引最多使用767字节。如果使用utf8mb4,每一个字符都会预留4字节做索引,而utf8则预留3字节。故此前者是191个字符,后者是255个字符。5)由于4)的原因,加上字符集大,utf8mb4的性能可能比utf8系列的collations低。6)若升级前的字段做了索引,需要把索引字符限制在191字符或以内。7.当前系统用哪个好在当前的系统,全部都使用utf8_unicode_ci这种collation。但是在存储网页标题时,标题带有SMP或者SIP的字符,如emoji、粤语字,会引发数据库写入异常。于是,就有两种解决方向:1)扔掉。1.1)扔掉或截断引发异常的字。采取此种方法,需要对每一个标题进行扫描。1.2)扔掉整条记录。可以采取扫描法,或者扔掉引发异常的记录。2)升级到utf8mb4。会略为降低数据库性能。7.1.性能考虑首先对于写入性能,查找字体的性能损耗由于在写入前字符都已经变成编码,基本可以忽略。对于网络传输的性能,则需要继续查找相关资料继续查证。但初步估计由于目前数据库在本地,故此这部分开销的增长不太明显。而对于索引的性能,由于网页标题这一字段没有做索引,在可预见的将来也未有此计划,故此没有性能的损耗,也没有升级兼容性的担心。况且,倘若走扔掉数据的方向,若采取扫描法,则需要付出扫描的开销。若采取扔掉记录法,则会先触发事务回滚,其他记录需要下次重新写入。而且当一批记录写入时有k个记录引发异常,则需要回滚与重试k次,除非使用扫描法预先扫描出这些异常的记录。但这也会引入额外的程序与数据库开销。若不使用事务,则数据库总体写入性能会大为降低。虽然没有实测过,但从感觉上来定性判断,似乎扔掉记录比升级collation带来的性能退化要大。7.2.存储空间考虑当前的网页标题是使用VARCHAR2存储。对于现在可用的、常见的BMP字符,不会引入额外的存储开销。BMP字符在VARCHAR的类型下不会为每一字符引入额外33%的空间开销。反之,定长的CHAR就会引入这种额外开销。7.3.目标数据考虑网页标题作为以后特征分析的数据源。在分析需求完全没有确定的情况下,我认为扔掉任何数据都是不宜采取的法,特别是整条记录扔掉更是不推荐。因为现阶段我们没有一套标准去判定何为有效数据、何为无效数据。有可能引发异常的那部分数据确实是没用的数据,也有可能那部分人群更倾向于在我们平台上活跃使用。既然各种可能性都存在,我们主动放弃一部分可能性,似乎不太恰当。7.4.API设计与兼容性考虑由于utf8_unicode_ci与utf8mb4_unicode_ci都是使用UTF-8编码,所以对于JAVA,使用MyBatis生成的代码是一样的,都是使用String类型。这点已经实测过。加上这两种collations在BMP中的编码完全一致,所以使用3字节与4字节的系统,对于BMP中的字符都是完全兼容、正常显示的。而对于3字节的系统,4字节的字符一般会显示成一个方框,或者在一个方框中有几个小数字,不会引发系统异常。8.总结诚然,emoji对分词分析目前来说还没有什么效果,粤语词而且在SIP中也只是其中一部分,也不知道有多少日本动漫或者爱情动作片的网页会遇到这些生僻字,音乐符号也少人用,太极符号也不是每次都出现,一些数学增补的字符与箭头增补图案也不是每个人都会用。这些加起来可能不知够不够全部的千分之一。但是倘若每一两个小时就会由于字符不能写入,引发数据库的异常。通过上面的分析,我认为增加这种兼容性带来的成本是可以接受的。故此,我建议使用升级的方法,兼容所有Unicode字符。