计算机网络应用层(期末、考研)

计算机网络总复习链接🔗

目录

  • DNS
    • 域名服务器
    • 域名解析过程分类
      • 递归查询(给根域名服务器造成的负载过大,实际中几乎不用)
      • 迭代查询
    • 域名缓存(了解即可)
    • 完整域名解析过程
    • 采用UDP服务
  • FTP
    • 控制连接与数据连接
  • 电子邮件
  • 万维网WWW
    • HTTP
  • 本章小结及疑难点

DNS

域名服务器

在这里插入图片描述

  • 根域名服务器:ICANN机构维护着一张根域名列表,里面记载着顶级域名服务器地址和对应的托管商,全世界有13个根服务器。
  • 顶级域名服务器:管理该顶级域名服务器注册的所有二级域名。
  • 权限域名服务器:负责一个区的域名服务器。按照上面的逻辑,权限域名服务器应该是管理注册在二级域名下的所有三级域名的,但实际不是这样的,如果一个二级域名或者一个三级域名对应一个域名服务器则域名服务器的数量会很多,我们需要使用划分区的办法来解决这个问题。
  • 本地域名服务器:本地域名服务器是电脑解析时的默认域名服务器,即电脑中的设置的首选DNS服务器和备选DNS服务器。

域名解析过程分类

  • 迭代就是A请求B,B告诉A去找C,但是B不会去找C。
  • 递归就是A请求B,那么最后一定是B把答案告诉A,B亲自去访问C。

递归查询(给根域名服务器造成的负载过大,实际中几乎不用)

在这里插入图片描述

迭代查询

在这里插入图片描述

域名缓存(了解即可)

  • 计算机中的DNS记录在本地有两种缓存方式:浏览器缓存和系统缓存。
  • 浏览器的缓存过期时间比较短,Chrome的过期时间是1分钟。
  • 系统缓存是存放在C:\Windows\System32\drivers\etc\hosts中。Windows默认开启DNS缓存服务。
  • 使用命令ipconfig /displaydns可以查看本地缓存。
  • 在浏览器中进行访问的时候,会优先查询浏览器缓存,如果未命中则继续查询操作系统缓存,最后再查询本地域名服务器,然后本地域名服务器会递归的查找域名记录,最后返回结果。主机与本地域名服务器之间的查询方式是递归查询。

完整域名解析过程

在这里插入图片描述

  1. 首先搜索浏览器的DNS缓存,缓存中维护一张域名与IP的对应表。
  2. 若没有命中则继续搜索操作系统的DNS缓存。
  3. 没有命中则操作系统将域名发送至本地域名服务器,本地域名服务器查询自己的DNS缓存。
  4. 没有命中则本地域名服务器向根域名服务器发送请求,根域名返回顶级域名服务器对应IP地址,本地域名服务器向顶级域名服务器发送请求获取权限域名服务器,本地域名服务器向权限域名服务器发送请求,最终得到该域名对应的IP地址。
  5. 本地域名服务器将IP返回给操作系统,同时建立缓存。
  6. 操作系统将IP地址返回给浏览器,同时建立缓存。
  7. 浏览器得到域名对应IP,同时也将IP地址缓存起来。

采用UDP服务

  • DNS采用客户/服务器模型,其协议运行在UDP之上。

FTP

  • FTP文件传输协议提供交互式的访问,允许客户指明文件类型与格式,并允许文件具有存取权限,并允许文件具有存取权限。
  • FTP采用TCP可靠的传输服务,一个TCP服务器进程可同时为多个客户进程提供服务。
  • 工作步骤如下:
    1. 打开熟知端口21(控制端口),使客户进程能够连接上。
    2. 等待客户进程发送连接请求。
    3. 启动从属进程来处理客户进程发来的请求。主进程与从属进程并发执行,从属进程对客户进程的请求处理完毕后即终止。
    4. 回到等待状态,继续接受其他客户进程的请求。
  • FTP服务器必须在整个会话期间保留用户的状态信息。特别是服务器必须把指定的用户账户与控制连接联系起来,服务器必须追踪用户在远程目录树上的当前位置。

控制连接与数据连接

  • FTP在工作时使用两个并行的TCP连接,一个是控制连接(端口号21),一个是数据连接(端口号20).使用两个不同的端口号可使协议更加简单和更容易实现。
  1. 控制连接。服务器监听21号端口,等待客户链接,建立在这个端口上的连接成为控制连接。控制连接用来传输控制信息(如连接请求、传送请求等),并且控制信息都以7位ASCII格式传送。FTP客户发出的传送请求,通过控制连接发送给服务器的控制进程,但控制连接并不用来传送文件。
  2. 数据连接。通过20端口和客户端开放的端口连接,发送数据。
  • 控制连接始终保持,数据连接保持一会。
  • 是否使用TCP20端口建立数据连接与传输模式有关,主动方式使用TCP20端口,被动方式由服务器和客户端自行协商决定(端口>1024)。

电子邮件

电子邮件系统最主要的组成构件

万维网WWW

HTTP

本章小结及疑难点

  1. 如何理解客户进程端口号与服务器进程端口号?
  2. 互联网、因特网和万维网的区别是什么?
  3. 域名的高速缓存是什么?
    每个域名服务器都维护一个高速缓存,存放最近通过的名字以及从何处获得名字映射信息的记录,可大大减轻根域名服务器的负荷,使因特网上的DNS查询请求和回答报文的数量大为减少。为保持高速缓存中的内容正确,域名服务器应为每项内容设置计时器,并处理超过合理时间的项。当权限域名服务器回答一个查询请求时,在响应中都指明绑定有效存在的时间值。增加此时间值可减少网络开销,减少此时间值可以提高域名转换的准确性。

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

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

相关文章

Flutter Dart FFI Pointer<Uint8>类型如何转成数组或String

前言 继上一次发布的 Flutter 直接调用so动态库,或调用C/C源文件内函数 内容,最终我选择了第二种方式,直接把整个 Native C 的项目源代码放进了 Flutter 工程里编译(放在iOS的目录是因为它不支持自定义源码路径,Andro…

Linux免密实现文件拷贝(建立机器之间的SSH密钥认证)

背景: 在之前的工作中,我需要在我的shell脚本中实现将机器A的文件拷贝至机器B,然后去执行一系列的操作。由于我将我想要执行的动作完全写入了shell脚本中,并且不想每次执行时都去输入密码,因此这里,我们需要…

大数据机器学习与深度学习——过拟合、欠拟合及机器学习算法分类

大数据机器学习与深度学习——过拟合、欠拟合及机器学习算法分类 过拟合,欠拟合 针对模型的拟合,这里引入两个概念:过拟合,欠拟合。 过拟合:在机器学习任务中,我们通常将数据集分为两部分:训…

HBase 高可用集群详细图文安装部署

目录 一、HBase 安装部署 1.1 Zookeeper 正常部署 1.2 Hadoop 正常部署 1.3 HBase 安装 1.4 HBase 的配置文件 1.4.1 hbase-env.sh 1.4.2 hbase-site.xml 1.4.3 regionservers 1.4.4 创建目录 1.5 HBase 远程发送到其他节点 1.6 HBase 服务的启动 1.6.1 单点…

Linux---创建、删除文件及目录命令

1. 创建、删除文件及目录命令的使用 命令说明touch 文件名创建指定文件mkdir 目录名创建目录(文件夹)rm 文件名或者目录名删除指定文件或者目录rmdir 目录名删除空目录 touch命令效果图: mkdir命令效果图: rm命令效果图: rm删除目录效果图 说明: rm命令想要删除目录需要加上…

CSS实现鼠标移动到图片上显示遮罩层效果

这是一张图片&#xff0c;我希望鼠标移动到上面的时候显示一个遮罩层&#xff0c;层级上有两个按钮&#xff0c;一个查看&#xff0c;一个删除 首先是要写一个大盒子包裹两个部分&#xff0c;一个是图片部分&#xff0c;一个是遮罩层部分&#xff0c;然后再用CSS样式控制 <e…

C# 提取PDF中指定文本、图片的坐标

获取PDF文件中文字或图片的坐标可以实现精确定位&#xff0c;这对于快速提取指定区域的元素&#xff0c;以及在PDF中添加注释、标记或自动盖章等操作非常有用。本文将详解如何使用国产PDF库通过C# 提取PDF中指定文本或图片的坐标位置&#xff08;X, Y轴&#xff09;。 ✍ 用于…

每日一练【最大连续1的个数 III】

一、题目描述 给定一个二进制数组 nums 和一个整数 k&#xff0c;如果可以翻转最多 k 个 0 &#xff0c;则返回 数组中连续 1 的最大个数 。 二、题目解析 本题同样是利用滑动窗口的解法。 首先进入窗口&#xff0c;如果是1&#xff0c;就直接让right&#xff0c;但是如果是…

【超详细】创建vue3+ts项目(引入ElementPlus、Axios)

目录 前言1、使用vue脚手架创建项目1.1检查vue版本1.2 使用vue脚手架创建项目 2、删除项目多余文件&#xff0c;修改配置项目2.1、删除以下文件2.1、在views下创建index文件2.2、修改router/index.ts路由文件&#xff1a;2.3、修改App.vue文件&#xff1a;2.4、初始化页面样式以…

Flutter在Visual Studio Code上首次创建运行应用

一、创建Flutter应用 1、前提条件 安装Visual Studio Code并配置好运行环境 2、开始创建Flutter应用 1)、打开Visual Studio Code 2)、打开 View > Command Palette。 3)、在搜索框中输入“flutter”&#xff0c;弹出内容如下图所示&#xff0c;选择“ Flutter: New Pr…

记录 | vscode禁止插件自动更新的方法

shift command p 打开然后输入 > setting.json&#xff0c;选择用户设置 在 settings.json 配置文件中增加一项&#xff1a; "extensions.autoUpdate": false,

Pycharm使用--环境搭建/快捷键/高亮自定义/保存网络批量保存图片

新手Pycharm使用 文章目录 新手Pycharm使用前言一、环境搭建常用conda 指令总结&#xff1a; 二、Pycharm快捷键三、高亮自定义四、批量保存网络&图片 前言 新手初次使用pycharm&#xff0c;记录一些包括 环境搭建/快捷键/高亮自定义/批量保存网络&图片 的方法 省略安…

西班牙语 Alt 代码表

西班牙语 Alt 代码表&#xff0c;请参考下图。 输入方法就是按住 Alt 键不松开&#xff0c;然后在小键盘上输入字符&#xff0c;松开 Alt 键&#xff0c;计算机就能输出上面的字符了。 西班牙语的字符没有法语和德语的多。 西班牙语 Alt 代码表 - 系统容器 - iSharkFly西班牙语…

C语言结构体和位段

自定义类型&#xff1a;结构体及联合和枚举 一.结构体类型的声明1.1 结构体的概念1.2结构的声明1.3特殊的声明1.4结构体的自引用1.5可以使用typedef重命名 二.结构体变量的创建和初始化2.1结构体变量的初始化使用{}2.2初始化&#xff1a;定义变量的同时赋初值。2.3结构体嵌套及…

mysql数据库相关知识【MYSQL】

mysql数据库相关知识【MYSQL】 一. 库1.1 登录数据库管理系统1.2 什么是数据库1.2.1 mysqld与mysql 1.3 编码集和校验集1.3.1 什么是编码集和校验集1.3.2 查看库对应的编码集和校验集1.3.3 用指定的编码集和校验集 1.4 库的操作 一. 库 1.1 登录数据库管理系统 这个算是第一个…

IntelliJ IDEA 自带HTTP Client接口插件上传文件示例

如何使用IntelliJ IDEA自带的HTTP Client接口插件进行文件上传的示例。在这个示例中&#xff0c;我们将关注Controller代码、HTTP请求文件&#xff08;xxx.http&#xff09;&#xff0c;以及文件的上传和处理。 Controller代码 首先&#xff0c;让我们看一下处理文件上传的Co…

【云原生kubernets】Ingress 功能与应用

一、Ingress 介绍 1.1.Ingress产生原因&#xff1a; 当我们使用Service的时候&#xff0c;Service对集群之外暴露服务的主要方式有两种&#xff1a;NotePort和LoadBalancer&#xff0c;但是这两种方式&#xff0c;都有一定的缺点&#xff1a; &#xff08;1&#xff09;Node…

为养宠家庭量身打造,352 X63 Pet宠物专效空气净化器“养宠安馨,人宠共护”

当下,养宠人群日益增多,宠物在给家庭带来了欢乐的同时,也产生了一系列困扰,如何在健康环境中快乐养宠,成为很多家养宠家庭的新需求。成立于2014年的北京三五二环保科技有限公司是一家立足于家庭洁净空气和安全用水领域的科技创新型公司。以“安全、健康、舒适”等消费需求为核心…

阅读笔记——《UTOPIA: Automatic Generation of Fuzz Driverusing Unit Tests》

【参考文献】Jeong B, Jang J, Yi H, et al. UTOPIA: automatic generation of fuzz driver using unit tests[C]//2023 IEEE Symposium on Security and Privacy (SP). IEEE, 2023: 2676-2692.【注】本文仅为作者个人学习笔记&#xff0c;如有冒犯&#xff0c;请联系作者删除。…

Apache OfBiz 反序列化命令执行漏洞(CVE-2023-49070)

项目介绍 Apache OFBiz是一个非常著名的电子商务平台&#xff0c;是一个非常著名的开源项目&#xff0c;提供了创建基于最新J2EE/XML规范和技术标准&#xff0c;构建大中型企业级、跨平台、跨数据库、跨应用服务器的多层、分布式电子商务类WEB应用系统的框架。OFBiz最主要的特…