计算机网络学习笔记(II)——应用层(二)

news2024/9/17 9:12:47

2.4、Email

电子邮件(Email)

主要由三个部分组成:

  • 用户代理
  • 邮件服务器
  • 简单邮件传输协议:SMTP

用户代理(邮件阅读器):

  • 撰写、编辑和阅读邮件
  • 输入和输出邮件保存在服务器上

EMail:邮件服务器

  • 邮件中管理和维护发送给用户的邮件
  • 输出报文队列保持发送邮件报文
  • 邮件服务器之间的SMTP协议:发送email报文
    • 客户:发送方邮件服务器
    • 服务器:接收端邮件服务器

EMail: SMTP[RFC 2821]

  • 使用TCP在客户端和服务器之间传送报文,端口号为25
  • 直接传输:从发送方服务器到接收方服务器
  • 传输的3个阶段:握手、传输报文、关闭
  • 命令/响应交互:命令:ASCII文本、响应:状态码和状态信息
  • 报文必须为7位ASCII码

image-20221203225907429

SMTP总结与HTTP比较:

  • SMTP使用持久连接
  • SMTP要求报文(首部和主体)必须为7位ASCII编码
  • SMTP服务器使用CRLF.CRLF决定报文的尾部
  • HTTP是拉(PULL)SMTP是推(PUSH)
  • 二者都是ASCII形式的命令、响应交互、状态码
  • HTTP:每个对象都封装在各自的响应报文中,SMTP:多个对象包含在一个报文中

邮件报文格式

SMTP:交换Email报文的协议RFC822

文本报文格式:

  • 首部行:TO、From、Subject
  • 主体:报文只能是ASCII码字符
  • MIME:多媒体邮件扩展RFC 2045,2056
  • 在报文首部用额外的行申明MIME内容类型

邮件访问协议

image-20221203230606134

**POP3:**全名为“Post Office Protocol - Version 3”,即“邮局协议版本3”。是TCP/IP协议族中的一员,由RFC1939 定义。本协议主要用于支持使用客户端远程管理在服务器上的电子邮件。提供了SSL加密的POP3协议被称为POP3S

**IMAP(Internet Message Access Protocol):**一种邮件获取协议。它的主要作用是邮件客户端可以通过这种协议从邮件服务器上获取邮件的信息,下载邮件等

2.5、DNS

DNS(域名管理系统):是互联网使用的命名系统,用来便于人们使用的机器名字转换为IP地址。

DNS的总体思路和目标

  • DNS的主要思路
    • 分层的、基于域的命名机制
    • 若干分布式的数据库完成名字到IP地址转换
    • 运行在UDP之上端口号为53的应用服务
    • 核心的Internet功能,但以应用层协议实现
  • DNS主要的目的
    • 实现主机名—IP地址的转换
    • 主机别名到规范名字的转换
    • 邮件服务器别名到邮件服务器的正规名字的转换
    • 负载均衡:Load Distribution

DNS名字空间

DNS域名结构
  • DNS采用层次树状结构的命名方法

    • Internet根被划为几百个顶级域名(top lever domains)
      • 通用的(generic):.com;.edu;.gov; .int; .mil; .net; .org; .firm; .hsop; .web; .arts; .rec;
      • 国家的(countries):.cn; .us; .nl; .jp等
  • 域名(Domain Name)

    从本域往上,直到树根、域的域名:可以用于表示一个域、主机的域名:一个域上的一个主机

  • 域名的管理

    • 一个域管理其下的子域
    • 创建一个新的域,必须征的它所属域的同意
    • 域与物理网络无关:域遵从组织界限,而不是物理网络、域划分是逻辑的,而不是物理的
域名服务器

区:一个服务器所负责管辖的(或有权限)范围,每个区应设置响应的权限域名服务器,用来保存该区中的所有主机域名到IP地址的映射

  • 根域名服务器:根域名服务器是最高层次的域名服务器,也是最重要的域名服务器
  • 顶级域名服务器(TLD服务器):负责顶级域名(如com、org、net、edu和gov)和所有国家级的顶级域名(如cn等),顶级域名服务器负责管理在该服务器注册的所有二级域名。
  • **权限域名服务器:**负责一个区的域名服务器
  • **本地域名服务器:**一个ISP提供者,或者一个大学,都拥有一个本地域名服务器

域名解析的过程:

第一:主机向本地域名服务器的查询一般都采用递归查询。

image-20221204203121340

第二:本地域名服务器向根服务器的查询通常采用迭代查询

image-20221204203729187

DNS协议和报文

**DNS协议:**查询和响应报文的报文格式相同

**报文首部:**标识符(ID):16位、flags:查询应答、希望递归、递归可用、应答权威

image-20221204204055409

2.6、P2P的应用

纯P2P架构

  • 没有(或极少)一直运行的服务器
  • 任意端系统都可以直接通信
  • 利用peer的服务能力
  • 例如:文件分发(BitTorrent)、流媒体(KanKan)、VoIP(Skype)

文件分发:C/S和P2P

问题: 从一台服务器分发文件(大小F)到N个peer需要多少时间?

  • C/S模式:

image-20221204205348555

  • P2P模式:

image-20221204205427862

查询洪泛:Gnutella

  • 全分布式:没有中心服务器
  • 开放文件共享协议
  • 许多Gnutella客户端实现了Gnutella协议

Gnutella协议:

  • 在已有的TCP连接上发送查询报文
  • 对等方转发查询报文
  • 以反方向返回查询命中报文

KaZaA:查询

  • 每个文件有一个散列标识码和一个描述符
  • 客户端向其组长发送关键字查询
  • 组长用匹配进行响应:对每个匹配:元数据、散列标识码和IP地址
  • 如果组长将查询转发给其他组长,其他组长也以匹配进行响应
  • 客户端选择要下载的文件
    • 向拥有文件的对等方发送一个带散列标识码的
      HTTP请求
  • Kazaa小技巧
    • 请求排队 :限制并行上载的数量、 确保每个被传输的文件从上载节点接收一定量的带宽
    • 激励优先权: 鼓励用户上载文件、加强系统的扩展性
    • 并行下载:从多个对等方下载同一个文件的不同部分、 HTTP的字节范围首部、更快地检索一个文件

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

UDS入门至精通系列:Service 27

文章目录 前言一、Service 27的功能二、企业规范中怎么定义Service 27三、AUTOSAR关于Service 27实现策略四、关于Service 27集成测试五、用于解锁的dll文件怎样得来?总结前言 本文将近8000字,详细分享了从需求规范提出、功能实现、集成测试等方面对Service 27的介绍! 在引…

PTA编程的一些总结

PTA 1.首先是float单精度浮点数和double双精度浮点数 float占4字节,有效数字7位,double占8字节,有效数字15位 double类型输入16位数字会有误差 老师给的PTA中的练习题中第一题的买U盘需要在结果后面0.000001来弥补double精度 2.判断浮点数…

从ASM看jacoco运行原理

前言 我们在开发中如何保证代码质量,我的回答是做充分的代码测试。Jacoco的出发点是为基于JVM运行的代码提供代码覆盖率统计,期望提供轻量级的、可伸缩的、文档较全的库文件来集成各类构建和开发工具。 ASM介绍 ASM 是一个通用的 Java 字节码操作和分…

架构设计(消息队列)

架构设计(消息队列) 消息队列 发送者将消息发送到topic,消费者从topic中拉取消息进行消费 发送端消息发送方式 同步发送:消息发送后,需要等待消息发送响应结果,发送失败可重试 异步发送:消息发…

Numpy入门[17]——数组广播机制

Numpy入门[17]——数组广播机制 参考: https://ailearning.apachecn.org/NumPy广播机制 使用Jupyter进行练习 NumPy 中的广播机制(Broadcast)旨在解决不同形状数组之间的算术运算问题。我们知道,如果进行运算的两个数组形状完全相…

linux网络编程epoll详解

目录epoll原理解析epoll提供的接口epoll的触发模式epoll原理解析 从socket接收网络数据说起: 1、网络传输中,网卡会把接收到的数据写入内存,网卡向 CPU 发出一个中断信号,操作系统便能得知有新数据到来,再通过网卡中断…

第二证券|行业重磅白皮书发布,超高清视频产业规模剑指3万亿

在5G和超高清交融开展的布景下,下流使用需求有望迸发,超高清视频工业前景可观。 超高清工业规模有望突破3万亿 据报道,12月1日,2022国际显现工业大会分论坛——新式显现超高清主题论坛在成都举行。论坛上,中国电子信息…

文本编辑器vi--常用命令查阅版(记得收藏)

一.为何要学习vi   # 所有的UNIX-like系统都会内置vi文本编辑器,其他的文本编辑器则不一定会存在;   # 很多软件的编辑接口都会主动调用vi;   # vim具有程序编辑的能力,可以主动地以字体颜色辨别语法的正确性,方…

双元科技过会:计划募资6.5亿元,比亚迪和蜂巢能源为主要客户

近日,上海证券交易所披露的信息显示,浙江双元科技股份有限公司(下称“双元科技”)获得科创板上市委会议通过(即IPO过会)。接下来,双元科技将提交注册。 据贝多财经了解,双元科技于20…

关于天干地支及其计算

以天干地支计算日期是我国悠良的传统文化,最近在看如何计算人的生辰八字,写了个程序,但是只能算年的干支,月、日的干支计算方法太复杂了,望之只能却步,还是乖乖去查万年历比较好。这里记下关于干支的一些东…

[附源码]Python计算机毕业设计Django框架的资产管理系统设计与实现

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

[附源码]Python计算机毕业设计SSM京津冀区域产学研项目管理信息系统(程序+LW)

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

50、IO流

*学习的难点:要知道在什么情况,该用什么流 补:ANSI码就是gbk码 一、基本概念: 1、什么是文件: 文件是保存数据的地方 2、文件流: 文件在程序中是以流的形式来操作的 (1)流&am…

XXL-Job海量数据处理-分片任务实战

文章目录一、需求1. 场景2. 分析3. 案例二、什么是分⽚任务2.1. 分⽚路由策略2.2. 海量数据处理2.3. 分片数量2.4. 分片值颁发2.5. 案例三、解决思路3.1. 数据拆分3.2. 分片数量3.3. 分⽚⽅式3.4. 路由策略3.5. 程序实战一、需求 1. 场景 有⼀个任务需要处理100W条数据&#…

【JavaScript 逆向】极验四代无感验证码逆向分析

前言 四代无感验证码相较于滑块验证码区别就是没有底图,一键通过模式,所以不需要轨迹以及计算缺口距离,步骤更少,四代滑块可以阅读:【JavaScript 逆向】极验四代滑块验证码逆向分析 声明 本文章中所有内容仅供学习交…

C++最后一次实验及实验总结

忙活了大半个学期,终于学完了C,虽然很基础,但是至少算是写完了实验,开心~~ 实验一 实验二 实验三 实验四 实验五 实验六 题目一 一、分析下面的程序,写出其运行时的输出结果。上机运行该程序,观察运行…

[附源码]计算机毕业设计ssm新能源电动汽车充电桩服务APP

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

ROS action客户端和服务端通信(Ubuntu )

ROS action客户端和服务端通信 gcusms ROS 一般都是用 service 和 topic 进行数据之间的交互传输,因为这种通信方式无法满数据实时反馈的要求,所以采用 action 动作消息反馈通信机制(实时反馈的任务进度,并且可以随时终止运行&am…

用 AWTK 和 AWPLC 快速开发嵌入式应用程序 (6)-在线调试

AWPLC 目前还处于开发阶段的早期,写这个系列文章的目的,除了用来验证目前所做的工作外,还希望得到大家的指点和反馈。如果您有任何疑问和建议,请在评论区留言。 1. 背景 AWTK 全称 Toolkit AnyWhere,是 ZLG 开发的开源…

vuex学习记录

为什么要用vuex 由于vue本身的特点。及页面是由多个组件构成。而组件又呈现一个二叉树状态。然后父向子需要进行通信。那如果是非父子关系,应该如何传值呢? 什么是vuex 专门为vue.js应用程序开发的状态管理模式。它采用集中式存储管理数据&#xff0c…