计算机网络 —— 应用层(电子邮件)

计算机网络 —— 应用层(电子邮件)

  • 电子邮件
  • 发送电子邮件的过程
  • SMTP
      • 特性
      • 工作流程
  • 电子邮件格式
  • MIME
      • 关键组件
      • 工作方式
  • POP/IMAP
      • POP(邮局协议)
      • IMAP(因特网邮件访问协议)
  • 基于万维网的电子邮箱
      • 特点
      • 优势
      • 常见的基于万维网的电子邮件服务:

今天我们来看电子邮件的相关内容:

电子邮件

电子邮件服务是应用层中的一个重要组成部分。电子邮件服务允许用户通过网络交换文本、图片、文件等信息。以下是一些关键概念和技术,涉及电子邮件在计算机网络中的工作方式:

SMTP(Simple Mail Transfer Protocol)

  • 作用:SMTP是电子邮件系统中最基础的协议之一,用于在邮件服务器之间传输邮件。它定义了邮件如何在服务器间路由以及邮件格式的标准。
  • 过程:当用户通过电子邮件客户端(如Outlook、Gmail客户端)发送邮件时,客户端通过SMTP与邮件发送方的服务器通信,将邮件传递给该服务器。然后,服务器通过SMTP与其他邮件服务器通信,将邮件一步步转发至接收方的邮件服务器。

POP3(Post Office Protocol version 3)和IMAP(Internet Message Access Protocol)

  • POP3:允许用户从邮件服务器下载邮件到本地设备,通常在下载后服务器上的邮件会被删除或标记为已取。适用于偶尔从单一设备检查邮件的用户。
  • IMAP:提供了一种更灵活的方式访问邮件,允许用户在邮件服务器上保留邮件,并从多个设备访问邮件的最新状态,包括邮件夹结构、邮件标记等。适合需要在多设备间同步邮件的用户。

MIME(Multipurpose Internet Mail Extensions)

  • 作用:MIME扩展了SMTP协议,使得电子邮件可以包含非ASCII文本内容,如图片、音频、视频和各种文档格式。通过定义一系列的内容类型和编码方案,MIME确保了这些多媒体内容能够正确地通过电子邮件传输。

邮件客户端

  • 作用:邮件客户端(或称为邮件用户代理,MUA)是用户直接交互的软件,用于撰写、发送、接收和管理电子邮件。常见的客户端包括Microsoft Outlook、Mozilla Thunderbird、以及Web界面如Gmail、Outlook.com等。

邮件服务器

  • 作用:邮件服务器负责接收、存储、转发邮件。主要有两部分功能:SMTP服务器用于发送邮件;POP3或IMAP服务器用于接收邮件。常见的邮件服务器软件有Microsoft Exchange Server、Postfix、Qmail等。

电子邮件地址格式

  • 格式:电子邮件地址遵循username@domain.example的格式,其中username是用户在邮件服务器上的标识符,domain.example是邮件服务器所属的域名。

安全与加密

  • TLS/SSL:为了保护邮件传输过程中的安全,SMTP、POP3和IMAP协议支持使用TLS/SSL(Transport Layer Security/Secure Sockets Layer)加密通信,确保数据在传输过程中不被窃听或篡改。
  • SPF、DKIM、DMARC:为了防止垃圾邮件和钓鱼邮件,电子邮件系统还采用了一系列安全策略和验证机制,如Sender Policy Framework (SPF)、DomainKeys Identified Mail (DKIM) 和 Domain-based Message Authentication, Reporting & Conformance (DMARC),来验证发件人的身份和邮件的完整性。

在这里插入图片描述

综上所述,电子邮件服务是一个涉及多个协议和技术的复杂系统,它不仅需要处理邮件的发送和接收,还要确保邮件的安全、完整和便捷访问。

发送电子邮件的过程

发送电子邮件的过程涉及多个步骤,主要通过SMTP(简单邮件传输协议)完成。以下是一个简化版的电子邮件发送流程:

  1. 撰写邮件:用户在邮件客户端(如Outlook、Gmail网页界面)中撰写邮件,包括填写收件人地址、主题、正文以及可能的附件。
  1. 客户端与SMTP服务器通信
  • 用户点击“发送”按钮后,邮件客户端将收集邮件的所有信息,包括发件人、收件人、主题、正文和附件。
  • 客户端通过SMTP协议连接到用户的邮件发送服务器(通常是用户邮箱提供商的SMTP服务器)。连接过程中,如果服务器要求,客户端还需进行身份验证,例如输入邮箱账号密码。
  1. 邮件传输过程
  • 客户端通过SMTP协议向邮件服务器发送邮件内容。在传输过程中,邮件被分解成多个部分,包括邮件头部(包含发件人、收件人、主题等元数据)和邮件体(正文和附件)。
  • 邮件服务器使用SMTP协议与互联网上的其他邮件服务器通信,根据收件人地址的域名部分(例如,@example.com),查询DNS(域名系统)以找到接收方邮件服务器的地址。
  • 一旦找到接收方邮件服务器的地址,发送方服务器会建立一个SMTP连接,并通过这个连接将邮件转发过去。如果接收方服务器暂时不可用,发送方服务器可能会尝试再次发送或暂时存储邮件,直到可以成功投递。
  1. 加密传输:在现代电子邮件系统中,SMTP连接通常会使用TLS(Transport Layer Security)加密,以保护邮件内容在传输过程中的安全,避免被第三方截取和阅读。
  1. 接收方邮件服务器处理
  • 接收方邮件服务器接收邮件后,会进行反垃圾邮件检查、病毒扫描等安全处理,并根据邮件地址将邮件存入相应用户的邮箱中。
  1. 用户接收邮件
  • 收件人通过POP3或IMAP协议连接到他们的邮件服务器,下载或在线查看邮件。如果使用的是IMAP协议,收件人可以在多个设备上同步邮件状态。

在这里插入图片描述

整个过程确保了电子邮件能够从发件人的客户端出发,经过一系列的服务器中转,最终安全、准确地送达收件人的邮箱。

SMTP

SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)是一种互联网标准,用于在邮件服务器之间传输电子邮件。它是应用层协议,基于TCP/IP协议栈,确保了电子邮件在全球范围内的可靠投递。SMTP的主要任务是控制邮件的中转方式,从邮件的源头(发件人的邮件服务器)到目的地(收件人的邮件服务器)。以下是SMTP协议的关键特性和工作流程:

特性

  1. 基于文本的协议:SMTP使用简单的文本命令和响应进行通信,易于实现和调试。
  2. 可靠性:SMTP设计确保邮件能够可靠地传输,即使在短暂的网络中断期间也能存储邮件并在网络恢复时重新尝试发送。
  3. 推动式协议:SMTP是一种推动式协议,意味着它主动将邮件从发送方推向接收方,而非接收方主动拉取。
  4. 端口:SMTP默认使用TCP端口25进行通信,但也有使用端口587(提交邮件)和465(SMTPS,安全SMTP)的现代实践。
  5. 认证与安全:虽然早期SMTP没有内置安全机制,但现在普遍采用TLS(Transport Layer Security)加密通信,以保护邮件内容在传输过程中的安全。
  6. 邮件中继:SMTP支持邮件中继,允许邮件在多个服务器之间跳跃,直至达到目标服务器,这有助于跨越不同的网络和地域传输邮件。
  7. 命令与响应:SMTP定义了一系列命令(如HELO、MAIL FROM、RCPT TO、DATA、QUIT等)和对应的服务器响应代码,用于指导邮件的传输过程。

工作流程

  1. 建立连接:客户端(发件人邮件服务器)与服务器(收件人邮件服务器)通过TCP建立连接。
  2. 握手与认证:连接建立后,客户端发送HELO/EHLO命令以标识自身,随后可能需要进行TLS加密握手和SMTP AUTH认证。
  3. 邮件传输:认证成功后,客户端通过MAIL FROM命令指定发件人地址,使用RCPT TO命令指定一个或多个收件人地址,然后发送DATA命令开始邮件内容的传输,最后以.结束数据传输。
  4. 服务器响应:在整个过程中,服务器会以三位数字代码和相应的消息响应每个命令,如250表示操作成功,5xx表示永久错误,4xx表示临时错误。
  5. 断开连接:邮件发送完毕,客户端发送QUIT命令,双方断开TCP连接。

在这里插入图片描述

SMTP协议是电子邮件系统的基础,几乎所有的电子邮件服务都依赖它来实现邮件的传递。随着技术发展,虽然出现了像IMAP和POP3用于邮件接收的新协议,但SMTP依然是电子邮件发送的核心标准。

电子邮件格式

电子邮件的格式包含以下几个关键组成部分:

  1. 收件人(To): 收件人的电子邮件地址,表示这封邮件的主要接收者。可以有多个收件人,地址之间用逗号或分号隔开。
  1. 抄送(Cc): Carbon Copy的缩写,表示希望知晓邮件内容的人员,他们不是直接的行动负责人,但需要了解邮件内容。同样,可以有多个抄送人。
  1. 密送(Bcc): Blind Carbon Copy的缩写,用于隐藏收件人列表,即密送列表中的收件人互相看不到彼此的邮箱地址。这是为了保护隐私和减少不必要的邮件暴露。
  1. 主题(Subject): 邮件的主题行,简明扼要地概括邮件内容,帮助收件人快速了解邮件主旨。一个好的主题行应当清晰、具体,便于收件人判断邮件的重要性及是否需要立即处理。
  1. 正文(Body): 邮件的主体内容。正文通常遵循一定的礼仪规范,包括:
  1. 格式: 电子邮件可以是纯文本格式或HTML格式。纯文本格式只包含文字,不支持样式和图片直接嵌入;HTML格式则可以包含丰富的格式化元素、图片、超链接等。

在这里插入图片描述

MIME

MIME(Multipurpose Internet Mail Extensions,多功能互联网邮件扩展)是一种标准,它扩展了电子邮件的标准(最初只支持文本),使其能够支持更广泛的媒体类型,包括图像、声音、视频以及各种文档格式。MIME使得电子邮件能够变得更加丰富和多功能。以下是MIME的一些关键概念和工作方式:

关键组件

  1. 内容类型(Content-Type): MIME最核心的部分是定义了如何在邮件头中声明邮件内容的类型。例如,text/plain表示纯文本,image/jpeg表示JPEG图像,application/pdf表示PDF文档等。这样,接收方的邮件客户端就知道如何处理接收到的内容。
  1. 编码方案(Encoding): 对于非文本内容或某些特殊文本内容(如国际化字符),MIME定义了多种编码方案来确保邮件的兼容性和可传输性。常用的编码有Base64和Quoted-Printable,它们能将二进制数据转换为可打印的ASCII字符,以便通过邮件系统安全传输。
  1. 多部分邮件(Multipart Messages): MIME还支持在单个邮件中包含多种不同类型的内容,这就是所谓的多部分邮件。例如,一封邮件可能同时包含文本、图片和一个PDF附件。这种情况下,邮件头会包含一个multipart/mixedmultipart/alternative(用于提供邮件内容的不同版本,如纯文本和HTML)的内容类型,且邮件体内会详细描述每个部分的内容类型和编码。
  1. 内容传输编码(Content-Transfer-Encoding): 用于指示邮件内容在传输过程中所使用的编码方式,确保内容能够通过任何邮件传输系统,即使这些系统不支持8位或二进制数据传输。

工作方式

  • 当邮件客户端准备发送含有非文本元素(如图片、附件)的邮件时,它会按照MIME规范对这些内容进行编码,并在邮件头部添加适当的MIME头字段,说明邮件的内容类型、编码方式以及邮件的结构(如果是多部分邮件)。
  • 邮件服务器和客户端之间通过SMTP协议传输邮件时,MIME编码的信息作为邮件的一部分被透明传输。
  • 当邮件到达接收方的邮件服务器,并最终被接收方的邮件客户端下载或查看时,客户端会读取邮件头中的MIME信息,解码内容,并根据内容类型正确显示邮件的各个部分。例如,图片直接显示在邮件正文中,附件则提供下载或直接打开的功能。

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

总之,MIME是电子邮件系统中不可或缺的一部分,它极大地扩展了电子邮件的实用性,使之能够适应互联网上日益多样化的内容类型需求。

POP/IMAP

POP(Post Office Protocol)和IMAP(Internet Message Access Protocol)是两种用于电子邮件接收的协议,它们定义了客户端(如邮件应用程序)如何从邮件服务器检索邮件。尽管它们的目的相似,但在工作方式和提供的功能上有显著差异:

POP(邮局协议)

  1. 主要目的:POP设计用于下载邮件并将其从邮件服务器上删除或保存副本。它假定用户会一次性下载所有邮件并处理,之后可能不需要再次访问服务器上的邮件。
  1. 版本:常用版本为POP3(第三版),较旧的版本还有POP2。POP3不支持在邮件服务器上管理邮件文件夹或邮件状态(如已读/未读)。
  1. 工作流程
  • 客户端连接到邮件服务器的POP3端口(通常是110,或使用SSL时为995)。
  • 客户端通过用户名和密码认证。
  • 客户端下载邮件到本地设备,并可选择在下载后从服务器删除邮件或保留副本。
  • 会话结束后,客户端断开连接。
  1. 适用场景:适合那些不经常需要从多个设备访问邮件,或偏好将邮件存储在本地的用户。

IMAP(因特网邮件访问协议)

  1. 主要目的:IMAP提供了一种更为灵活的邮件访问方式,允许用户在邮件服务器上管理和存储邮件,同时在多个设备上查看邮件时保持同步。这意味着用户可以在不下载邮件的情况下浏览邮件标题、创建和管理文件夹,并查看邮件状态。
  1. 版本:主流版本为IMAP4(第四版),支持更多的功能,如邮件分拣规则、搜索、标记等。
  1. 工作流程
  • 客户端连接到邮件服务器的IMAP端口(通常是143,或使用SSL/TLS时为993)。
  • 客户端进行身份验证。
  • 客户端可以检索邮件列表、邮件内容、文件夹结构等,所有操作几乎实时同步到服务器。
  • 用户可在服务器上直接管理邮件(移动、删除、标记等),操作结果会即时反映在所有已登录的客户端上。
  • 即使断开连接,邮件仍保留在服务器上,除非用户明确选择删除。
  1. 适用场景:适合需要跨设备访问邮件、频繁处理邮件且需要邮件状态保持一致的用户。

在这里插入图片描述

总结来说,POP更适合一次性下载邮件并存储在本地的简单场景,而IMAP则提供了更强大的邮件管理功能,适合需要在多设备间保持邮件同步的用户。

基于万维网的电子邮箱

基于万维网的电子邮件,通常指的是Webmail服务,是一种通过网页浏览器访问和管理电子邮件的方式,无需在个人电脑或设备上安装专门的电子邮件客户端软件。用户只需要有网络连接和浏览器,就能在全球任何地方访问自己的电子邮箱。以下是基于万维网的电子邮件服务的一些特点和优势:

特点

  1. 访问便捷性:用户只需记住邮箱地址和密码,通过任意设备上的浏览器登录Webmail网站即可查看和管理邮件,不受地点限制。
  1. 跨平台兼容:Webmail服务支持各种操作系统和浏览器,无论是Windows、macOS、Linux,还是Chrome、Firefox、Safari等浏览器,都能无缝使用。
  1. 即时更新:服务提供商负责维护和升级系统,用户无需手动更新软件,即可享受最新的功能和服务。
  1. 集成服务:许多Webmail服务(如Gmail、Outlook.com、Yahoo! Mail等)除了基本的邮件收发功能外,还集成了日历、联系人管理、任务列表、云存储等附加服务,形成一套完整的个人信息管理系统。
  1. 安全性:大多数Webmail服务提供安全连接(HTTPS),保障数据传输过程中的安全,同时也会采取措施防范垃圾邮件、病毒和网络攻击。
  1. 存储空间:服务商通常提供较大容量的邮箱空间,有的甚至是无限存储,用户不必担心邮箱满载问题。

优势

  • 灵活性:用户可以在任何有网络的地方访问邮件,尤其适合经常出差或使用多种设备的人群。
  • 成本效益:对于个人用户而言,许多Webmail服务是免费的,减少了购买和维护邮件客户端软件的成本。
  • 协作便利:对于团队和企业,Webmail服务常常与办公套件集成,便于共享日程、文档和任务,促进团队协作。

常见的基于万维网的电子邮件服务:

  • Gmail:由谷歌提供,以其高效的搜索功能、大存储空间和良好的垃圾邮件过滤著称。
  • Outlook.com:微软旗下的服务,与Office 365套件紧密集成,适合需要高级办公功能的用户。
  • Yahoo! Mail:提供免费邮箱服务,具有大容量存储和直观的用户界面。
  • Zoho Mail:为企业用户提供专业的邮件解决方案,包括自定义域名、协作工具等。

在这里插入图片描述

总的来说,基于万维网的电子邮件服务极大地方便了用户的邮件管理和沟通,成为现代生活中不可或缺的一部分。

最后,我们来看两道题:
在这里插入图片描述在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/728362.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

vscode c++ 开发环境配置

今天各位同学已经安装了mingw环境,但部分同学vscode开发环境又问题,究其原因,还是vscode 编译环境配置错误,有问题的同学 按如下步骤处理: 1、卸载相关插件。按下列步骤重新安装插件。 2、继续在搜索框中搜索并安装 C…

SpringSecurity6从入门到实战之登录后操作

SpringSecurity6从入门到实战之登录后操作 上次已经了解了如何进行自定义登录页面,这次主要是详细讲解登录成功,登录之后的跳转以及包括退出登录等一系列操作.让我们来看看SpringSecurity需要如何进行配置 登录之后的跳转 定义 Spring Security 配置类 Configuration EnableW…

一个简单好用安全的开源交互审计系统,支持SSH,Telnet,Kubernetes协议

前言 在当今的企业网络环境中,远程访问和交互审计成为了保障网络安-全的重要组成部分。然而,现有的解-决方案往往存在一些痛点,如复杂的配置、有限的协议支持、以及审计功能的不足。这些问题不仅增加了IT管理员的负担,也为企业的…

第一个Java程序

编写第一个Java程序通常从经典的"Hello,World!"程序开始。下面是一个简单的Java程序示例,它将打印出"Hello, World!"到控制台: 1.编写代码: 打开文本编辑器(如记事本、Notepad、Visual StudioCode等&#x…

JavaSE 利用正则表达式进行本地和网络爬取数据(爬虫)

爬虫 正则表达式的作用 作用1:校验字符串是满足规则 作用2:在一段文本中查找满足需要的内容 本地爬虫和网络爬虫 Pattern类 表示正则表达式 Matter类 文本编译器,作用按照正则表达式的规则去读取字符串,从头开始读取&#xf…

永磁同步电机最大转矩电流比(MTPA)与弱磁(FW)算法以及模型设计

永磁同步电机数学模型如下: 上式中: vd为 d 轴电压(V)。 vq为 q 轴电压(V)。 id为 d 轴电流(A)。 iq为 q 轴电流(A)。 Rs为定子相绕组电阻(Ω…

SM9加密算法:安全、高效的国产密码技术

随着信息技术的飞速发展,网络安全问题日益凸显。加密算法作为保障信息安全的核心技术,受到了广泛关注。在我国,一种名为SM9的加密算法逐渐崭露头角,凭借其卓越的安全性能和高效计算能力,成为了新一代国产密码技术的代表…

【鸿蒙】HUAWEI DevEco Studio安装

HUAWEI DevEco Studio介绍 面向HarmonyOS应用及元服务开发者提供的集成开发环境(IDE), 助力高效开发。 DevEco Studio当前最新版本是: 3.1。 DevEco Studio计划里程碑 版本类型说明 下载 下载网址:DevEco Studio安装包官⽅下载 双击运行…

2024广东省职业技能大赛云计算赛项实战——编排部署ERP管理系统

编排部署ERP管理系统 前言 编写docker-compose.yaml文件,要求使用镜像mysql、redis、nginx和erp完成ERP管理系统的编排部署。 编写docker-compose.yaml完成ERP管理系统的部署,要求定义mysql、redis、nginx和erp共四个Service,分别使用镜像e…

前端 CSS 经典:flex + margin 布局

前言&#xff1a;如今我们布局大多时候都是用的 flex 布局&#xff0c;但是有时我们也可以使用 margin 小技巧去完成布局。在弹性盒中当我们把 margin 某一个方向上设置为 auto&#xff0c;他的含义是用 margin 吃掉这个方向的剩余空间。 1. 元素垂直和水平居中 <!DOCTYPE…

微软TTS最新模型,发布9种更真实的AI语音

很高兴与大家分享 Azure AI 语音翻译产品套件的两个重大更新&#xff1a; 视频翻译和增强的实时语音翻译 API。 视频翻译&#xff08;批量&#xff09; 今天&#xff0c;我们宣布推出视频翻译预览版&#xff0c;这是一项突破性的服务&#xff0c;旨在改变企业本地化视频内容…

《车载以太网通信测试》课程来袭!!!

本课程包含教程和脚本两部分内容。 教程 详细介绍以太网&#xff0c;如何理解TCP/IP协议&#xff0c;CAPL中涉及以太网的代码&#xff0c;以太网测试环境如何搭建&#xff0c;从物理层、链路层、网络层、传输层到应用层多种协议测试点的测试原理和测试方法介绍&#xff0c;中…

基于微信共享充电桩小程序毕业设计作品成品(3)开发技术文档_充电桩小程序前端技术栈

后台管理系统文件 所在路径&#xff1a;后台源码ht目录是后台 绿色显示的是系统框架&#xff0c;不要动 位置程序名说明源码根目录login.php后台登录页面源码根目录check_u_login.php后台登录处理程序ht 后台根目录index.php后台首页left.php后台左侧菜单u_logout.php退出登…

LeetCode 算法:K 个一组翻转链表 c++

原题链接&#x1f517;&#xff1a;K 个一组翻转链表 难度&#xff1a;困难⭐️⭐️⭐️ 题目 给你链表的头节点 head &#xff0c;每 k 个节点一组进行翻转&#xff0c;请你返回修改后的链表。 k 是一个正整数&#xff0c;它的值小于或等于链表的长度。如果节点总数不是 k …

【计算机网络仿真】b站湖科大教书匠思科Packet Tracer——实验5 交换机的自学习算法

一、实验目的 1.验证交换机的自学习算法&#xff1b; 2.了解交换机对帧的过滤特性&#xff1b; 3.学习交换机如何登记接收到的数据包&#xff1b; 4.学习交换机如何转发数据包&#xff08;明确转发&#xff0c;盲目转发&#xff0c;丢弃&#xff09;。 二、实验要求 1.使用Cisc…

前端:2024年非常受欢迎非常火的 VueUI 库

目录 1、iView | 参考地址 2、Vux UI | 参考地址 3、Element UI | 参考地址 4、Mint UI | 参考地址 5、Bootstrap | 参考地址 6、Ant Design Vue | 参考地址 7、Vue Material | 参考地址 8、Vuetify | 参考地址 9、 Vuesax | 参考地址 10、Buefy | 参考地址 11、Va…

分布式理论与设计 四、分布式系统设计策略

在分布式环境下&#xff0c;有几个问题是普遍关心的&#xff1a; 如何检测当前节点还活着&#xff1f;如何保障高可用&#xff1f;容错处理负载均衡 1.心跳检测 在分布式环境中&#xff0c;我们提及过存在非常多的节点&#xff08;Node&#xff09;。那么就有一个非常重要的…

抉择与未来:高考后专业与学校的深度选择思考

引言 随着2024年高考的尘埃落定&#xff0c;数百万考生及其家庭正面临一个至关重要的决策&#xff1a;在有限的分数条件下&#xff0c;是优先选择专业还是学校&#xff1f;这一选择不仅影响着个人的未来职业道路&#xff0c;也关系到大学生活的质量和个人综合素质的培养。本文将…

C++ | Leetcode C++题解之第171题Excel表列序号

题目&#xff1a; 题解&#xff1a; class Solution { public:int titleToNumber(string columnTitle) {int number 0;long multiple 1;for (int i columnTitle.size() - 1; i > 0; i--) {int k columnTitle[i] - A 1;number k * multiple;multiple * 26;}return num…

ubuntu16因swap分区uuid错误启动慢排查

感觉ubuntu16启动特别慢 dmesg查看如下&#xff1a; [ 10.050123] audit: type1400 audit(1718608189.395:11): apparmor"STATUS" operation"profile_load" profile"unconfined" name"webbrowser-app//oxide_helper" pid708 comm&q…