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

本文涉及的产品
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
.cn 域名,1个 12个月
简介: SMTP使用持久连接、SMTP要求报文(首部和主体)必须为7位ASCII编码、SMTP服务器使用CRLF.CRLF决定报文的尾部、 HTTP是拉(PULL)SMTP是推(PUSH)、二者都是ASCII形式的命令、响应交互、状态码、HTTP:每个对象都封装在各自的响应报文中,SMTP:多个对象包含在一个报文中

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的字节范围首部、更快地检索一个文件
目录
相关文章
|
5月前
|
存储 分布式计算 监控
应用层---网络模型
应用层---网络模型
47 3
|
1月前
|
Ubuntu 网络安全 图形学
Ubuntu学习笔记(二):ubuntu20.04解决右上角网络图标激活失败或者消失,无法连接有线问题。
在Ubuntu 20.04系统中解决网络图标消失和无法连接有线网络问题的方法,其中第三种方法通过检查并确保Windows防火墙中相关服务开启后成功恢复了网络连接。
537 0
Ubuntu学习笔记(二):ubuntu20.04解决右上角网络图标激活失败或者消失,无法连接有线问题。
|
5月前
|
存储 算法 网络虚拟化
【计算机网络】学习笔记,第三篇:数据链路层
现在的光纤宽带接入 FTTx 都要使用 PPPoE 的方式进行接入。在 PPPoE 弹出的窗口中键入在网络运营商购买的用户名和密码,就可以进行宽带上网了 利用 ADSL 进行宽带上网时,从用户个人电脑到家中的 ADSL 调制解调器之间,也是使用 RJ-45 和 5 类线(即以太网使用的网线)进行连接的,并且也是使用 PPPoE 弹出的窗口进行拨号连接的
83 5
|
1月前
|
域名解析 网络协议 前端开发
【第四期】网络层、传输层、应用层
【第四期】网络层、传输层、应用层
26 3
|
1月前
|
XML JSON 网络协议
【网络】TCP/IP五层网络模型:应用层
【网络】TCP/IP五层网络模型:应用层
22 1
|
1月前
|
机器学习/深度学习 数据可视化 Linux
Seaborn可视化学习笔记(一):可视化神经网络权重分布情况
这篇文章是关于如何使用Seaborn库来可视化神经网络权重分布的教程,包括函数信息、测试代码和实际应用示例。
43 0
|
3月前
|
机器学习/深度学习 自然语言处理 并行计算
【深度学习+面经】Transformer 网络学习笔记
Transformer模型的核心概念、优缺点以及在多个领域的应用,并提供了针对Transformer架构的面试问题及答案。
165 2
|
4月前
|
域名解析 存储 网络协议
一次读懂网络分层:应用层到物理层全解析
**网络五层模型简介:** 探索网络服务的分层结构,从应用层开始,包括HTTP(网页传输)、SMTP(邮件)、DNS(域名解析)和FTP(文件传输)协议。传输层涉及TCP(可靠数据传输)和UDP(高效但不可靠)。网络层由IP(路由数据包)、ICMP(错误报告)和路由器构成。数据链路层处理MAC地址和帧传输,物理层规定了电缆、连接器和信号标准。了解这些基础,有助于深入理解网络运作机制。
363 5
|
5月前
|
域名解析 存储 缓存
【基础计算机网络】应用层
【基础计算机网络】应用层
|
5月前
|
网络协议
计算机网络学习记录 应用层 Day6(1)
计算机网络学习记录 应用层 Day6(1)
35 0
下一篇
无影云桌面