当前位置: 首页 > article >正文

day08|计算机网络重难点之 DNS查询过程、CDN是什么,有什么作用?、Cookie和Session是什么?有什么区别?

day08|计算机网络重难点之 DNS查询过程、CDN是什么,有什么作用?、Cookie和Session是什么?有什么区别?

    • 21.DNS查询过程
    • 22.CDN是什么,有什么作用?
    • 23.Cookie和Session是什么?有什么区别?

21.DNS查询过程

DNS 的作用是 将主机名和域名 转换为 IP地址,查询过程一般包括以下几个步骤:

  • 第一步是 检查 本地DNS缓存:如果 本地缓存中有对应的IP地址,则直接返回结果
  • 第二步,如果本地缓存中没有,则向 本地DNS服务器【注1】 发送一个DNS查询请求
  • 第三步,如果本地DNS域名解析器 有该域名的IP地址,则直接返回结果;如果没有,则向 根DNS服务器 发送 查询请求。根DNS服务器 本身并不负责 解析域名,而是会告诉 本地DNS域名解析器 应该向 哪个顶级域DNS服务器 发送查询
  • 第四步,本地DNS域名解析器 向指定的 顶级域DNS服务器 发送查询请求。顶级域DNS服务器 同样不负责 域名解析,而是会告诉 本地DNS域名解析器 应该向 哪个权威DNS服务器 发送查询
  • 第五步,本地DNS域名解析器 向 权威DNS服务器 发送查询请求。权威DNS服务器 是负责 存储 特定域名和IP地址之间的映射。收到请求后,它会 查找域名对应的IP地址,并将结果返回
  • 第六步,本地DNS域名解析器 将收到的IP地址 返回给 浏览器,并且 将结果缓存在本地,方便 下次访问时 更快地响应
  • 第七步,浏览器发起连接,使用获得的IP地址与目标服务器建立连接,获取网页内容

【注1】通常由你的互联网服务提供商(ISP)提供, 比如中国移动

22.CDN是什么,有什么作用?

CDN是一种 分布式网络服务,将内容 存储在 分布式服务器 上。用户可以 从较近的服务器 获取所需内容,从而加速网络的内容传输。主要有以下几个方面的功能和作用:

  • 第一个是 **就近访问:**CDN在全球范围内 部署了 多个服务器节点,用户请求会被 定向 到 最近的CDN节点,提供 快速的内容访问
  • 第二个是 **内容缓存:**CDN节点会缓存 静态资源,如图片、样式表、脚本等。当用户发送请求时,CDN首先会检查自己是否已经缓存了该资源,如果有,则直接返回结果;如果没有,CDN节点 回向 源服务器 获取资源并缓存,以便后续再次访问。内容缓存可以减少对 源服务器的请求,从而减少 源服务器的负载
  • 第三个是 **可用性:**即使某些节点出现问题,用户的请求 可以被重定向 到 其他健康的节点

23.Cookie和Session是什么?有什么区别?

(1)Cookie和Session是什么?

Cookie和Session都用于 管理 用户的状态和身份,不同在是, Cookie在客户端记录信息,而Session在服务器端记录信息

对于 Cookie:

  • 首先,服务器会将一个或多个 Cookie 发送到 用户浏览器,随后浏览器将这些 Cookie 存储在本地
  • 然后,浏览器向服务器发出请求之后,服务器通过分析 请求头中的 Cookie,得到 客户端 特有的信息,从而 动态生成 与该客户端 相对应的内容

对于 Session:

  • 当 客户端浏览器 访问 服务器的时候,服务器 把客户端的信息 记录在服务器上,这就是 Session。它主要用于 维护用户登录状态、存储用户的临时数据和上下文信息等。
  • 服务器为每个用户 分配一个唯一的Session ID,通常存储在 Cookie中

(2)Cookie和Session的区别?

  • 第一个是 存储位置:Cookie 数据存储在用户的浏览器中,而Session 数据存储在服务器上
  • 第二个是 数据容量:Cookie存储容量较小,一般为 几KB;而Session 存储容量较大,一般没有固定限制,主要取决于服务器的配置和资源
  • 第三个是 安全性:由于 Cookie存储在 用户浏览器中,所以容易被 用户读取和篡改;而Session 存储在服务器上,拥护难以访问和修改,安全性更高
  • 第四个是 生命周期:Cookie可以设置 过期时间,Session依赖于 会话的持续时间或用户活动
  • 第五个是 传输方式:Cookie 通过 HTTP请求 自动 发往 服务器;而Session ID 通常 通过 Cookie 或 URL 传递参数

http://www.kler.cn/a/394249.html

相关文章:

  • 小程序租赁系统开发指南与实现策略
  • 游戏引擎学习第58天
  • flask基础
  • 今日总结 2024-12-24
  • 【python高级】342-TCP服务器开发流程
  • SSD目标检测算法
  • 【CSS】opacity 影响 z-index 不生效
  • 【Java语言】String类
  • Spring源码(十二):Spring MVC之Spring Boot
  • PPT技巧:如何合并PPT文件?
  • SpringBoot+MyBatis+MySQL的Point实现范围查找
  • MATLAB用CNN-LSTM神经网络的语音情感分类深度学习研究
  • [DDNS][SSL][HTTPS]阿里云ACME Ubuntu22.04Server 安装教程
  • Mysql每日一题(行程与用户,困难※)
  • Vue3 项目权限控制最佳实践
  • 消息队列系列一:RabbitMQ入门讲解
  • git 提交报错 Error updating changes: bad signature 0x00000000index file corrupt
  • STM32编程遇到的问题随笔【一】
  • 深入探索React合成事件(SyntheticEvent):跨浏览器的事件处理利器
  • Windowos系统部署mino
  • Spring Boot应用开发实战:构建高效、可维护的Web应用
  • linux startup.sh shutdown.sh (kkFileView)
  • HBase理论_HBase架构组件介绍
  • IEC61850服务分类说明
  • SpringBoot 3.3.5 试用CRaC,启动速度提升3到10倍
  • 【学习率】