【网络协议详解】——电子邮件系统协议(学习笔记)

网络协议之邮件协议(SMTP、POP3与IMAP) SMTP、POP3和IMAP协议作为电子邮件系统的核心组件,在邮件传输、接收和管理方面发挥着重要作用。它们各自具有独特的功能和优缺点,适用于不同的应用场景和需求。随着技术的不断发展和用户需求的不断变化,这些协议也在不断更新和扩展,以适应现代电子邮件系统的需求。 阅读详情
AI摘要

文章详细介绍了电子邮件系统的基本构成,包括用户代理、邮件服务器和相关协议,如SMTP的命令和响应机制,邮件传输阶段,以及MIME协议在处理非ASCII码内容中的作用。此外,还讨论了POP3协议的工作流程和邮件读取方式。

🕒 1. 电子邮件系统概述

电子邮件(e-mail)是因特网上最早流行的一种应用,并且仍然是当今因特网上最重要、最实用的应用之一。

电子邮件把邮件发送到收件人使用的邮件服务器,并放在其中的收件人邮箱中,收件人可随时上网到自己使用的邮件服务器进行读取。

电子邮件不仅使用方便,而且还具有传递迅速和费用低廉的优点。

现在电子邮件不仅可传送文字信息,而且还可附上声音和图像。

电子邮件系统的三个主要组成构件:用户代理,邮件服务器,以及电子邮件所需的协议

  • 用户代理是用户与电子邮件系统的接口,又称为电子邮件客户端软件。
  • 邮件服务器是电子邮件系统的基础设施。因特网上所有的ISP都有邮件服务器,其功能是发送和接收邮件,同时还要负责维护用户的邮箱。
  • 协议包括邮件发送协议(如SMTP)和邮件读取协议(如POP3,IMAP)。

在这里插入图片描述

用户代理 UA (User Agent)

  • 用户代理 UA 就是用户与电子邮件系统的接口,是电子邮件客户端软件。
  • 用户代理的功能:撰写、显示、处理和通信。

邮件服务器

  • 邮件服务器的功能是发送和接收邮件,同时还要向发信人报告邮件传送的情况(已交付、被拒绝、丢失等)。
  • 邮件服务器按照客户——服务器方式工作。邮件服务器需要使用发送和读取两个不同的协议。

注:

  • 一个邮件服务器既可以作为客户,也可以作为服务器。
  • 例如,当邮件服务器 A 向另一个邮件服务器 B 发送邮件时,邮件服务器 A 就作为 SMTP 客户,而 B 是 SMTP 服务器。
  • 当邮件服务器 A 从另一个邮件服务器 B 接收邮件时,邮件服务器 A 就作为 SMTP 服务器,而 B 是 SMTP 客户。

🕒 2. 简单邮件传送协议SMTP

简单邮件传送协议SMTP(Simple Mail Transfer Protocol)所规定的就是在两个相互通信的 SMTP 进程之间应如何交换信息。

由于 SMTP 使用客户-服务器方式,因此负责发送邮件的 SMTP 进程就是 SMTP 客户,而负责接收邮件的 SMTP 进程就是 SMTP 服务器。

🕒 3. SMTP协议的命令和响应

SMTP使用命令和响应在用户代理和邮件服务器之间传送邮件。

SMTP 规定了 14 条命令和 21 种应答信息。

  • 每条命令用 4 个字母组成
  • 每一种应答信息一般只有一行信息,由一个 3 位数字的代码开始,后面附上(也可不附上)很简单的文字说明。

🕘 3.1 命令

命令由用户代理发送给邮件服务器,命令包括关键词,后面跟着零个或多个参数。

一般形式是:COMMAND [Parameter] <CRLF>

命令参数命令参数
HELO发送方的主机名NOOP——
MAIL FROM发件人TURN——
RCPT TO预期的收件人EXPN邮件发送清单
DATA邮件的主体HELP命令
QUIT——SEND FROM预期的收件人
REST——SOML FROM预期的收件人
VRFY收件人名字SAML FROM预期的收件人

🕤 3.1.1 HELO

HELO命令用于用户标识自己,其参数是用户主机的域名。

格式举例:HELO hins.mail.qq.com

🕤 3.1.2 MAIL FROM

MAIL FROM命令用于标识发件人。

命令使用的参数是发件人的电子邮件地址(用户名加上主机的域名)。

格式举例:MAIL FROM: 10001@mail.qq.com

🕤 3.1.3 RCPT TO

RCPT TO 命令用于标识预期的收件人。

命令使用的参数是收件人的电子邮件地址。

若有多个收件人,则该命令要重复使用。

格式举例:RCPT TO: 10001@mail.qq.com

🕤 3.1.4 DATA

DATA 用于初始化数据传输。

在DATA命令后面所有的行都被当作是邮件内容,邮件内容以只包含一个“.”的行表示结束。

格式举例:

DATA
This is a Test Message。
Please don’t reply.
.

🕤 3.1.5 QUIT

QUIT命令指示结束会话。

格式举例:QUIT

🕤 3.1.6 REST

REST命令用于重置会话,取消当前传输。

所存储的关于发件人和收件人的信息都被删除。连接将被复位。

格式举例:REST

🕤 3.1.7 VRFY

VRFY命令用于验证指定的用户/邮箱是否存在;

由于安全方面的原因,服务器常禁止此命令。

格式举例:VRFY: mayun@mail.qq.com

🕤 3.1.8 NOOP

NOOP命令表示无操作,服务器应响应OK,通常用于测试。

格式举例:NOOP

🕤 3.1.9 TURN

TURN命令用于让发件人和收件人交换位置,即发件人变成收件人,收件人变成发件人。

大多数SMTP服务器并不支持该功能。

格式举例:TURN

🕤 3.1.10 EXPN

EXPN命令用于要求接收邮件的主机把作为参数的发送清单进行扩展,并返回组成清单的收件人的邮箱地址。

格式举例:EXPN:xyz

🕤 3.1.11 HELP

HELP命令用于查询服务器支持的命令。

格式举例:HELP:TURN

🕤 3.1.12 SEND FROM

SEND FROM命令指明邮件是要交付到收件人的终端,而不是邮箱。

若收件人没有登录,邮件就被返回。参数就是收件人地址。

格式举例:SEND FROM: 10001@mail.qq.com

🕤 3.1.13 SOML FROM

SOML FROM 命令指明邮件是要交付到收件人的终端或邮箱。

表示若收件人已登录,邮件就只交付到终端;若收件人未登录,邮件就交付到邮箱。

参数是收件人地址。

格式举例:SOML FROM: 10001@mail.qq.com

🕤 3.1.14 SAML FROM

SAML FROM命令指明邮件是要交付到收件人的终端和邮箱。

表示若收件人己登录,邮件就交付给终端和邮箱;若收件人未登录,邮件就只交付给邮箱。

参数是收件人地址。

格式举例:SAML FROM:10001@mail.qq.com

🕘 3.2 响应

  • 响应是从邮件服务器发送到用户代理
  • 响应用三位十进制数字表示,后面跟着附加的文本信息。
  • 一般形式是:XXX Readable Illustration
  • 下表列出了常用的一些响应。
代码说明
——正面完成应答
211系统状态或系统帮助响应
214帮助信息
220服务器就绪
221服务关闭
250要求的邮件操作完成
251用户非本地,将转发向
——正面中间回答
354开始邮件输入,以“.”结束
——过渡负面完成回答
421服务器未就绪,关闭传输信道
450邮箱不可用
451放弃要求的操作,处理过程中出错
452系统存储不足,要求的操作未执行
——永久负面完成回答
500语法差错:不能识别的命令
501参数格式错误
502命令不可实现
503错误的命令序列
504命令参数不可实现
550要求的邮件操作未完成,邮箱不可用
551用户非本地,请尝试
552过量的存储分配,要求的操作未执行
553邮箱名不可用,要求的操作未执行
554操作失败

🕒 4. SMTP协议的邮件传输阶段

基本工作过程:

在这里插入图片描述

连接建立:
当用户代理与SMTP邮件服务器熟知端口25建立了TCP连接后,SMTP邮件服务器准备进入连接建立阶段。该阶段包括3个步骤:
① 邮件服务器发送代码220(表示服务就绪)告诉用户代理已准备好接收邮件。若邮件服务器未就绪,发送代码421(表示服务不可用)。
② 用户代理发送HELO命令,并使用自己的域名地址进行标识。用于将用户的域名通知邮件服务器。
③ 邮件服务器响应代码250(请求命令完成)或根据不同情况给出其它代码。若邮件服务器响应代码250,表示连接建立成功。

邮件传送:
在用户代理与邮件服务器之间建立连接后,发件人可以与一个或多个收件人交换单个邮件。该阶段包括8个步骤:
① 用户代理发送MAIL FROM命令声明邮件的发送人。包括发件人的邮件地址(邮箱和域名)。可以把需要返回邮件地址交给服务器,以便返回差错或报告邮件传递状况时使用。
② 服务器响应代码250(请求命令完成)或其它适当的代码。
③ 用户代理发送RCPT TO命令,需要在参数中声明收件人的邮件地址。
若收件人超过一个,则步骤③和 ④将重复进行。
④ 服务器响应代码250(请求命令完成)或其它适当的代码。若收件人超过一个,则步骤③和 ④将重复进行。
⑤ 用户代理发送DATA命令对邮件的传输进行初始化。
⑥ 服务器响应代码354(开始邮件输入)或其它适当的代码。
⑦ 用户代理用连续的行发送邮件的内容。每一行以二字符的行结束标记(回车和换行)终止,最终邮件以仅有一个点的行结束。
⑧ 服务器响应代码250(请求命令完成)或其它适当的代码。

连接终止:
在邮件传送成功后,用户代理终止连接。该阶段包括两个步骤:
① 用户代理发送QUIT命令
② 邮件服务器响应代码221或其它适当的代码。在连接终止阶段后,TCP连接必须关闭。

🕒 5. 电子邮件的信息格式

电子邮件的信息格式并不是由SMTP定义的,而是在RFC 822中单独定义的。这个RFC文档已在2008年更新为RFC 5322。一个电子邮件有信封和内容两部分。而内容又由首部和主体两部分构成。

在这里插入图片描述

🕒 6. 多用途因特网邮件扩展MIME

🕘 6.1 概述

  • SMTP协议只能传送ASCII码文本数据,不能传送可执行文件或其他的二进制对象。
  • SMTP不能满足传送多媒体邮件(例如带有图片、音频或视频数据)的需要。并且许多其他非英语国家的文字(例如中文、俄文、甚至带有重音符号的法文或德文)也无法用SMTP传送。
  • SMTP 服务器会拒绝超过一定长度的邮件。
  • 某些 SMTP 的实现并没有完全按照[RFC 821]的 SMTP 标准。
  • 为解决SMTP传送非ASCII码文本的问题,提出了多用途因特网邮件扩展MIME (Multipurpose Internet MailExtensions)

🕘 6.2 特点

MIME 并没有改动 SMTP 或取代它。

MIME 的意图是继续使用目前的邮件格式,但增加了邮件主体的结构,并定义了传送非 ASCII 码的编码规则。

  • 增加了5个新的邮件首部字段,这些字段提供了有关邮件主体的信息。
  • 定义了许多邮件内容的格式,对多媒体电子邮件的表示方法进行了标准化。
  • 定义了传送编码,可对任何内容格式进行转换,而不会被邮件系统改变。

实际上,MIME不仅仅用于SMTP,也用于后来的同样面向ASCII字符的HTTP。

工作过程:

在这里插入图片描述

🕘 6.3 MIME首部

在这里插入图片描述

  • MIME-Version: 标志 MIME 的版本。现在的版本号是 1.1。若无此行,则为英文文本。
  • Content-Description: 这是可读字符串,说明此邮件是什么。和邮件的主题差不多。
  • Content-Id: 邮件的唯一标识符。
  • Content-Transfer-Encoding: 在传送时邮件的主体是如何编码的。
  • Content-Type: 说明邮件的性质。

🕘 6.4 MIME内容类型

  • MIME标准规定 Content-Type 说明必须含有两个标识符,即内容类型(type)和子类型(subtype),中间用“/”分开。
  • MIME 标准定义了 7 个基本内容类型和 15 种子类型。
类型 子类型 说明
Text
(文本)
plain(纯文字)无格式的文本
richtext含有格式命令的文本
Multipart
(多部分)
mixed(混合)按规定顺序的几个独立部分部分
parallel(并行)必须同时读取的几部分
digest(摘要)每一个部分是一个完整的RFC 822邮件
alternative(交替)不同格式的同一邮件
Message
(报文)
rfc822主体是被封装的邮件
partial(部分)主体是更大邮件的分片
external-body(外部主体)主体是到另一个邮件的索引
Image
(图像)
jpegJPEG格式的图像
gifGIF格式的图像
Video
(视频)
mpegMPEG格式的视频信号
Audio
(音频)
basic(基本)8kHz的单声道语音编码
Application
(应用)
postscriptAdobe PostScript
octet-stream(字节流)不间断的字节序列
  • 文本
    • 原始邮件是7位的ASC II格式,不需要用MIME来转换。
    • 现在有两种子类型:plain(纯文字)、richtext
  • 多部分
    • 主体包含多个独立的部分。
    • 多部分首部需要定义每一个部分的边界。为此目的使用了一个参数。
    • 该参数是一个标记串,放在每部分的前面:单独占据一行,前面有两个“-”字符。
    • 主体结束的位置也使用边界标记,前面仍然有“-”字符,后面以两个“-”字符结束。
    • 该类型定义了4种子类型:混合、并行、摘要和交替
    • 多部分举例
Content-Type: multipart/mixed; boundary=xxxx

--xxxx
Content-Type: text/plain
………………………………………………….
--xxxx
Content-Type: image/gif
………………………………………………….
--xxxx—
  • 报文
    • 在邮件类型中,主体就是完整的邮件、邮件的一部分或到邮件的指针。
    • 现在使用的有3种子类型:
      • RFC822:主体被封装在另一个邮件中(包括首部和主体)
      • 部分:原始邮件被分片成不同的邮件,而邮件是分片之一
      • 外部主体:主体不包含真正的邮件,而仅有对原始邮件的索引(指针)。
  • 图像
    • 原始邮件是一幅静止图像,没有动画。
    • 当前使用的两种子类型:JPEG、GIF
  • 视频
    • 原始邮件是时变图像(动画)。
    • 唯一的子类型是mpeg。
    • 若动画包括声音,则必须使用音频内容类型分开发送。
  • 音频
    • 原始邮件是声音。
    • 唯一的子类型是使用8kHz标准音频数据的基本子类型。
  • 应用
    • 原始邮件是一种前面没用定义的数据类型。
    • 现在使用的只有两种子类型:
      • PostScript:数据为Adobe PostScript格式
      • 字节流:数据必须解释为8位字节序列(二进制文件)

🕘 6.5 MIME传送编码

MIME内容传送编码(Content-Transfer-Encoding)共有5种类型:

类型说明
7bitASCII字符和短行
8bit非ASCII字符和短行
二进制ASCII字符和长度不限的行
Base646位数据块被编码成8位ASCII字符
引用可打印非ASCII字符被编码成等号后跟随一个ASCII码
  • 7bit
    • 7位ASCII编码
    • 不能传输特殊的信息
    • 行的长度不能超过1000字符。
  • 8bit
    • 8位编码。
    • 非ASCII字符可以发送
    • 行的长度仍不能超过1000字符。
  • 二进制
    • ASCII字符和长度不限的行
  • Base64
    • 最常见的用于传输8bit字节码的编码方式之一;
    • 基于64个可打印字符来表示二进制数据的方法。
    • 编码表
值代码值代码值代码值代码值代码值代码
0A11L22W33h44s553
1B12M23X34i45t564
2C13N24Y35j46u575
3D14O25Z36k47v586
4E15P26a37l48w597
5F16Q27b38m49x608
6G17R28c39n50y619
7H18S29d40o51z62+
8I19T30e41p52063/
9J20U31f42q531
10K21V32g43r542

在这里插入图片描述

  • 引用可打印字符(Quoted-printable)
    • Base64的冗余编码方案;
    • 把24比特变为4个字符(32比特),开销为25%;
    • 若邮件数据由大部分的ASCII字符和一小部分非ASCII字符组成,可以使用可打印字符引用编码;
    • 若字符是ASCII,原样发送;若字符是非ASCII,用3个字符发送;
    • 第一个字符是等号“=”,后两个字符是用十六进制表示;
    • 适用于当所传送的数据中只有少量的非 ASCII 码。

在这里插入图片描述

🕒 7. 邮件读取协议

常用的邮件读取协议有以下两个:

  • 邮局协议POP (Post Office Protocol),POP3是其第三个版本,是因特网正式标准(RFC 1939)。
    • 非常简单、功能有限的邮件读取协议。用户只能以下载并删除方式或下载并保留方式从邮件服务器下载邮件到用户方计算机。不允许用户在邮件服务器上管理自己的邮件。(例如创建文件夹,对邮件进行分类管理等)。
  • 因特网邮件访问协议IMAP (Internet Message Access Protocol),IMAP4是其第四个版本,目前还只是因特网建议标准。
    • 功能比POP3强大的邮件读取协议。用户在自己的计算机上就可以操控邮件服务器中的邮箱,就像在本地操控一样,因此IMAP是一个联机协议。
  • POP3和IMAP4都采用基于TCP连接的客户/服务器方式。POP3使用熟知端口110,IMAP4使用熟知端口143。

🕒 8. POP3协议

🕘 8.1 工作过程

在这里插入图片描述

两种工作方式:

  • 删除方式
    • 每一次读取邮件后就把邮箱中的该邮件删除。
    • 通常用于用户使用固定计算机工作的场合,而用户在读取或回答邮件后可以保存或整理所收到的邮件。
  • 保存方式
    • 读取邮件后仍然在邮箱中保存该邮件。
    • 通常用于用户离开自己的主要计算机时来读取邮件。邮件读取后还保存在系统中,供日后读取和整理。

🕘 8.2 命令

POP3命令的一般形式是:COMMAND [Parameter] <CRLF>

  • COMMAND是ASCII形式的命令名
  • Parameter是相应的命令参数
  • 是回车换行符(0DH,0AH)

POP3命令不区分大小写,但参数区分大小写

命令参数使用在何种状态中描述
USERUsername认证此命令与下面的PASS命令若成功,将导致状态转换
PASSPassword认证此命令若成功,状态转化为处理状态
APOPName, Digest认证Digest是MD5消息摘要
STATNone处理请求服务器发回关于邮箱的统计资料
UIDL[Msg#]
(邮件号,下同)
处理返回邮件的唯一标识符
LIST[Msg#]处理返回邮件数量和每个邮件的大小
RETR[Msg#]处理返回由参数标识的邮件的全部文本
DELE[Msg#]处理服务器将由参数标识的邮件标记为删除,由QUIT命令执行
TOP[Msg# n]处理处理服务器将返回由参数标识的邮件前n行内容,n必须是正整数
NOOPNone处理服务器返回一个肯定的响应,用于测试连接是否成功
QUITNone处理
认证
1. 若服务器处于“处理”状态,将进入“更新”状态以删除任何标记为删除的邮件,并重返“认证”状态,结束会话,释放连接。
2. 若服务器处于“认证”状态,则结束会话,退出连接。

🕘 8.3 响应

POP3邮件服务器响应是由一个或多个命令行组成

响应第一行“+OK”或“-ERR”开头,其后附加若干ASCII文本信息。

“+OK”和“-ERR”分别指出相应的操作状态成功还是失败。

🕘 8.4 三种工作状态

  • 认证状态
  • 处理状态
  • 更新状态

在这里插入图片描述

🕒 9. 基于万维网的电子邮件

  • 通过浏览器登录(提供用户名和口令)邮件服务器万维网网站就可以撰写、收发、阅读和管理电子邮件。这种工作模式与IMAP很类似,不同的是用户计算机无需安装专门的用户代理程序,只需要使用通用的万维网浏览器。
  • 邮件服务器网站通常都提供非常强大和方便的邮件管理功能,用户可以在邮件服务器网站上管理和处理自己的邮件,而不需要将邮件下载到本地进行管理。
  • 这种工作模式在用户浏览器与邮件服务器网站之间使用HTTP协议,而邮件服务器之间使用SMTP协议。

🕒 10. 实验

🔎 原来自己可以搭建邮箱服务器发送邮件

实验步骤:
一、准备两台PC机,PC1部署邮件服务器,PC2作为客户端,访问邮件服务器
二、在PC1上使用hmailServer部署邮件服务器
三、在PC2使用Wireshark进行抓包,并使用Foxmail软件进行邮件服务器的访问,包括收邮件和发邮件

使用hmailServer部署邮件服务器:
一路next安装后,进入hMailServer

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

点击【Advanced】中【TCP/IP ports】的【0.0.0.0/25/SMTP】、【0.0.0.0/110/POP3】、【0.0.0.0/143/IMAP】、【0.0.0.0/587/SMTP】,将TCP/IP address设置为本机IP。

在这里插入图片描述

使用Foxmail软件进行邮件服务器的访问:

  1. 选择“其他邮箱”
  2. 点击“手动设置”
  3. 如下图填入【接收服务器类型】,【邮件账号】,【密码】为123456,【POP服务器】、【SMTP服务器】填入hMailServer设置的IP地址

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


❗ 转载请注明出处
作者:HinsCoder
博客链接:🔎 作者博客主页

电子邮件(E-mail)和电子邮件协议 一、电子邮件是什么 1.1、电子邮件简介 电子邮件(electronic mail,简称E-mail)又称电子信箱、电子邮箱,它是—种用网络手段提供信息交换的通信方式,利用电信号传递和存储电子文件、图片、音视频等各类型信息,可以使人们在任何地点、任何时间进行收发信件,解决了时空的限制,极大的提高了工作效率。用户除了使用电子邮件交流之外;也可通过电子邮件订阅新闻、注册软件等用途,并且电子邮箱还能够存储管理邮件内容,方便查阅记录。 在网络中,电子邮箱可以自动接收网络中的任何电子邮箱所发送的... 阅读详情

相关推荐

网络协议都有哪些?

SMTP协议:简单邮件传输协议,是用于在网络中传输电子邮件的协议。TCP/IP协议:传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协议、Internet国际互联网络的基础。由网络层的IP协议和传输层的TCP协议组成,它将数据分割成小的数据包进行传输,并通过IP地址定位目标设备。HTTPS协议:安全超文本传输协议,是在HTTP的基础上增加SSL外壳,对数据进行加密,保证安全性。UDP协议:用户数据报协议,是一种无连接的、不可靠的、面向数据报的传输协议。

QQ_778132974的博客 988

邮件协议讲解(SMTP、POP3、IMAP)

4、收件人通过邮件客户端使用POP3/IMAP协议接收邮件(邮件客户端通过POP3/IMAP协议去通知POP3/IMAP服务器,有POP3/IMAP服务器去用户邮箱中将邮件读取出来,然后发给邮件客户端软件)2、发送方的SMTP服务器收到用户发来的邮件后,将其存放在邮件缓存列表中(等待时间取决于邮件服务器的性能和要传输的邮件数量),然后发送给接收方的SMTP服务器。用户在读取邮件时,直接对服务器上的邮件进行操作,不需要把所有邮件下载到本地在进行各项操作(需要与服务器定时同步)

m0_49864110的博客 2万+

探索IT术语:信息安全与网络协议的核心

本文深入探讨了信息安全和网络协议领域的关键术语,如S/MIME、SSL、SSH和SQL等。这些术语不仅是IT专业人士的核心工具,也是确保网络通信安全和数据保护的基础。文章通过分析每个术语的功能和应用场景,为读者提供了深入理解这些技术概念的视角,旨在帮助读者构建更加稳固的网络安全知识框架。

weixin_42602726的博客 380

电子邮件协议(SMTP,MIME,POP3,IMAP)

电子邮件协议(SMTP,MIME,POP3,IMAP,PGP)

weixin_69884785的博客 5966

4 种方法识别Linux系统 USB 设备

导读 如果在系统中插入一个设备,尤其是在桌面环境下,比如 USB 设备,它会自动挂载到一个指定目录,一般是在 /media/username/device-label 目录下,之后你就可以进入到该目录下访问那些文件了。然而,在服务器上就不是这么回事了,你必须手动挂载这个设备,并且指定一个挂载点。 查询USB设备 Linux 系统使用 /dev 目录下特定的设备文件来标识插入的

郑帅的博客 1986

Anthropic API接入指南:连接失败、403鉴权与Claude Code集成排查

在AI应用开发中,API接入与鉴权机制是开发者绕不开的基础工程问题。无论是调用云端模型服务还是自建网关,网络连通性、HTTP状态码语义、模型路由映射都会直接影响服务可用性。本文从通用的网络诊断与鉴权原理出发,梳理了从TCP连接失败到403权限拒绝的典型链路,并深入解析网关模型路由匹配机制。在此基础上,进一步说明如何通过环境变量完成Claude Code与VS Code的本地集成,以及一套基于Python的可复现接入方案。内容涵盖Anthropic API高频报错定位、curl冒烟测试、SDK工程化实践,适合

weixin_28743405的博客 465

【邮件协议】深入理解邮件系统及其协议

在我们日常开发过程中,经常会涉及到邮件的发送、接收。一方面,邮件服务相比于短信服务会更便宜,其对接方式也更方便,不像短信的发送,需要很多东西进行审核。在对邮件开发前,我们必须对邮件协议有一个整体了解,如使用场景、特性等。SMTP称为简单邮件传输协议(Simple Mail Transfer Protocal),目标是向用户提供高效、可靠的邮件传输。它的一个重要特点是它能够在传送中接力传送邮件,即邮件可以通过不同网络上的主机接力式传送。通常它工作在两种情况下:一是邮件从客户机传输到服务器;

qq_20623849的博客 9347

【科研学习】Demo3D2015安装包以及图文安装步骤

安装包 点击下图的.exe文件,安装 不需要解压,打开注册机 如下图: 点击上图的.exe文件,出现下图 先点击 patch 打开安装目录下的Demo3D.licensing.dll文件,然后点击Generate,生成dvt-license文件,保存即可 打开安装完成的Demo3D 2015(64-bit),一般破解没完成的,会出现一个request a license 的问题,点击find license 的那一行 点击后找到自己Generate,生成dvt

KaelCui的博客 1万+

网络协议分析

Internet:Network of Networks(网络之网络)异构网络互联技术:Vinton Cerf,每个网络内部使用各自的通信协议,每个网络与其它网络通信时使用TCP/IP协议族。

缘友一世的博客 3194

用workbuddy自定义Skill:手把手搭建AI炒股分析助手

AI Agent正成为个人投资研究的重要工具,而Skill作为行为规范,能让AI输出保持稳定与专业。在AI Agent应用中,很多人分不清Skill与Agent的区别:Agent负责目标拆解与执行,Skill则固化分析流程与输出模板。借助本地工作台workbuddy,用户可自定义Skill,实现从市场环境检查到财务排雷的五段式分析。通过调低温度参数、设定数据验证规则,该方案能有效避免大模型凭空编造数据,帮助个人投资者快速完成基本面体检、资金面观察与风险清单生成。本文基于一套可直接套用的配置与一个月实测,展示

weixin_29038537的博客 517

免费获取船舶轨迹数据?手把手教你用Python处理中国海洋卫星AIS数据

本文详细介绍了如何免费获取中国海洋卫星AIS数据,并使用Python进行船舶轨迹数据的处理与分析。从数据源评估到自动化处理流水线,再到高级分析与可视化技巧,手把手教你避开常见问题,实现高效数据处理。特别适合航运数据分析、物流优化和海上安全研究等领域的研究者和开发者。

weixin_42616115的博客 320

FTP协议、电子邮件系统、Telnet远程控制

一、FTP协议 FTP定义 文件传输协议(File Transfer Protocol) 用于因特网文件传输(RFC 959) FTP特性 使用客户端/服务器模式 使用TCP提供可靠的传输 FTP属于维护状态的协议 FTP使用两条TCP连接完成数据传输 FTP的两条连接 数据连接问题 当有具体文件或目录内容传输时,临时建立数据连接 主动模式下由服务器方发起,服务器端口号20 被动模式下由...

tsundere_x的博客 696

MT4/MT5 第三代移动平均线(MetaTrader 指标)

第三代移动平均线(3G-MA)是传统MA指标的升级版本,通过"时滞压缩"算法将信号滞后降至理论极限(λ=2)。该指标在保留平滑性的同时,信号速度比EMA快1.5-2.3倍,适用于MT4/MT5平台。核心参数包括计算周期(默认34)、滞后压缩系数(2-10)和应用价位选择,支持斜率变色功能。安装简单,无需外部依赖,通过多周期共振可提升12-18%胜率。指标代码包含完整的MT4/MT5实现方案,采用双缓冲计算结构,通过相位前移算法抵消群延迟。风险提示:需配合其他技术指标和严格风控(≤2%账户

JanLEE 579

网络协议初学

网络协议就像是确保世界各地的员工能够有效沟通的一套公司规则。这些规则包括如何发送和接收信息(IP),确保信息准确无误地传递(TCP),以特定方式交换信息(HTTP),以及如何找到需要沟通的正确人员(DNS)。通过这些基本的协议,互联网能够作为一个全球性的、高效的通信网络运行。

chen的博客 517

RK3288芯片MIPI-DSI显示疑难杂症大揭秘:从点不亮到花屏全攻克

本文针对RK3288芯片MIPI-DSI接口常见的显示异常问题进行系统性分析,提出了完整的排查解决方案。硬件方面,重点检查排线连接、电源供应和散热问题;软件方面,强调屏参配置、驱动版本及时序参数的精确调整。通过两个典型案例(点不亮与花屏)具体说明排查流程,并指出未来优化方向应包括提升芯片抗干扰能力、开发智能自适应驱动程序等。该手册为开发者提供了从基础原理到实际问题的全面指导,能有效缩短故障排查时间,确保显示系统稳定运行。

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 659

Jetson AGX Orin平台Jetpack5升级Jetpack6,自研载板USB不工作问题调试

1. 问题描述将AGX Orin工业的新板放到定制的载板上当在ubuntu 22和Jetpack 6.1上使用SDKManager刷机时,lsusb为空,并且在引导时没有发现/注册xusb设备。USB C端口正常打开并供电,但似乎没有数据传输。在Ubuntu 18 Jetpack 5.1.4 SDKManager上同样刷机之后,usb C集线器在引导时被正确地发现,显示在lsusb中,并识别/挂载外部驱动器。

jzwjzw19900922的博客 1509

python 网络协议_【Python】python网络协议

套接字是常见的低级别的网络通讯协议,在此基础上,还有很多其他的网络通讯协议。用于实现client-server的网络互联,以下对这些协议做一个简单的介绍。1、文件传输FTP:文件传输协议。能够上传或下载文件,採用了Unix多用户的概念,用户一定要输入有效的username和password才干使用,只是也支持匿名登录。在底层实现上,FTP仅仅使用TCP而不使用UDP。主动模式下使用两个套接字,各自...

weixin_39922534的博客 333

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

OSI模型中的网络协议

本文分析了电子邮件协议(SMTP、POP3、IMAP)及其扩展技术MIME,探讨了MIME如何通过多部分消息结构、Base64/Quoted-Printable编码实现多媒体邮件传输。同时,文章详细介绍了HTTPS、PGP、SSH等安全协议的工作原理与应用场景,包括TLS握手流程、PGP端到端加密机制及SSH端口转发功能。此外,还对比了远程登录协议(如RFB)和文件传输协议(FTP/SFTP/FTPS)的优缺点,并提供了协议选择建议。全文覆盖了从邮件传输到网络安全的多方面技术要点,为不同场景下的协议选用提供

小李同学的博客 1312

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

网络协议分析工具Ethereal的使用

大学时计算机网络课的实验报告,当时提不起兴趣,今天看来还挺有用的。可以学习下怎样抓数据包,然后分析程序的通信协议。 一:学习使用网络协议分析工具Ethereal的方法,并用它来分析一些协议。 实验步骤: 1.用“ipconfig”命令获得本机的MAC地址和缺省路由器的IP地址;(注:缺省路由器即”Default Gateway”) 命令行:Start-&gt;Run-&gt;C...

网站开发初中级代码参考-转载 950

【Python】python网络协议

套接字是常见的低级别的网络通讯协议,在此基础上,还有很多其他的网络通讯协议。用于实现client-server的网络互联,以下对这些协议做一个简单的介绍。 1、文件传输 FTP:文件传输协议。能够上传或下载文件,採用了Unix多用户的概念,用户一定要输入有效的username和password才干使用,只是也支持匿名登录。 在底层实现上,FTP仅仅使用TCP而不使用UDP。主动模式下使用两个套接字,各自是控制命令port和数据port。被动模式下使用一个套接字,为控制命令接口。client工作流程为:

qq_64778067的博客 540

网络协议层次

OSI七层模型 OSI模型全称位开放式通信系统互联参考模型。OSI将计算机网络体系结构划分为七层,每一层实现各自的功能和协议,并完成相邻层的接口通信。 应用层 应用层位于OSI参考模型的第七层,其作用是通过应用程序间的交互来完成特定的网络应用。该层协议定义了应用进程之间的交互规则,通过不同的应用层协议为不同的网络应用提供服务。例如域名系统DNS,支持万维网应用的HTTP协议,电子邮件系统采用的SMTP协议等。在应用层交互的数据单元称为报文。 表示层 表示层的作用是使通信的应用程序能够解释交换数据的

qq_36553387的博客 868

电子邮件系统实验:SMTP与POP3协议抓包分析实战

对于需要持续运行的协议分析服务,平台的一键部署功能可将配置好的环境转化为在线应用,方便随时调取历史抓包数据。相比传统实验方式,省去了反复配置环境的麻烦。可以快速创建网络协议分析演示环境,无需本地安装Wireshark等工具。实测发现其内置的终端模拟器和网络工具能直接复现实验流程,特别适合教学演示场景。实验需重点关注协议握手过程、命令序列和数据传输格式。获取服务器IP后筛选SSL流量。Wireshark筛选器使用。大量无关流量时可先用。

SilvermistFalcon67的博客 486

网络协议分析(5):电子邮件相关协议

初识电子邮件相关协议

可达鸭的笔记簿 823

计算机网络原理梳理丨TCP/IP 协议族内含网络协议汇总及工作原理

DNS 解析过程 Domain Name System,域名解析系统,将域名解析为IP地址,DNS的默认缺省端口号为53 当DNS客户机提出查询请求时,首先查询本机缓存。若没有此记录,则产生一个查询请求发送至本地DNS服务器。本地DNS服务器首先查询该服务器管理的区域内资源,找到后将解析结果返回,若没有找到结果则产生请求发送至根DNS服务器,根DNS服务器要么返回查询的IP地址,要...

全栈工程师 378

深入了解常见的应用层网络协议

未来,随着网络技术的不断发展,我们可以期待更多新的协议涌现,为互联网通信带来更多创新和安全性的保障。本文将深入探讨几种常见的应用层协议,包括HTTP、SMTP、FTP等,解析它们的工作原理、应用场景以及安全性考虑。随着互联网的不断发展,一些新兴的应用层协议如QUIC(Quick UDP Internet Connections)等也逐渐崭露头角,提供更快、更安全的通信方式。随着网络安全意识的提高,越来越多的应用层协议采用TLS/SSL协议进行加密通信,以保护数据的隐私和完整性。

qq_52645134的博客 4363

HCIA——26E-mall、MIME、POP3、IMAP、电子邮件系统的组成结构、电子邮件的发送,接收过程、MIME 与SMTP 的关系

概念、组成——功能组成上(资源子网、通信子网)与功能(主要是数据通信、资源共享)分类性能指标——重要的是带宽、速率、吞吐量、RTT体系结构ISO/OSI参考模型----—-----计算机网络中的地位、功能、工作方式及原理UDP及TCP(如首部格式、可靠传输、流量控制、拥塞控制、连接管理等)TCP报文分析、流量控制与拥塞控制机制,出选择题、综合题的概率均较大。

2301_79807099的博客 1379
上一篇: 【网络协议详解】——FTP系统协议(学习笔记)
下一篇: 【网络协议详解】——万维网WWW系统协议(学习笔记)
HinsCoder
博客等级 码龄5年 1万+粉丝 220原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值