当你在浏览器中键入“https://www.google.com”并按 Enter 键时会发生什么?

        互联网是我们每天使用的奇迹,在其表面之下隐藏着一层层的复杂性。有没有想过当你输入一个URL时,幕后会发生什么?今天,让我们满足我们的好奇心,揭开由一个简单的命令启动的错综复杂的进程网络:键入“https://www.google.com”并按 Enter。

        URL“https://www.google.com”是一个统一资源定位符 (URL),用于唯一标识网络上的资源,例如“https://www.google.com”。HTTPS 代表安全超文本传输协议。Google Chrome 等 Web 浏览器使用 HTTPS 来安全地加密对 www.google.com 的请求。像“google.com”这样的域名是网站的人类可读地址,而像“www.google.com”这样的子域名则用于组织和导航到网站的各个部分。

        现在我们了解了“https://www.google.com”代表什么,让我们继续在浏览器中输入它并点击“Enter”。在几毫秒内(假设我们从未接触过 URL),DNS 递归解析就会发生。域名系统 (DNS) 服务器就像互联网的电话簿。当您在浏览器中输入类似“www.google.com”的 URL 时,DNS 服务器会将此人类可读的域名转换为您的计算机可以理解的 IP 地址(例如 172.22.16.1)。这类似于在手机中查找联系人姓名并查找他们的电话号码。
        DNS 递归解析过程依赖于 DNS 解析器,该解析器充当服务器,负责确定与特定域名关联的 IP 地址。此解析器在各种 DNS 服务器之间启动一系列查询,从根服务器开始,遍历域名系统的层次结构。获取 IP 地址 (172.22.16.1) 后,解析器会临时存储或缓存该地址。这种缓存机制有助于优化未来的请求,确保后续尝试访问“https://www.google.com”或任何相关资源时不需要重复整个解析过程。相反,解析器可以直接使用缓存的信息快速将用户连接到目标网站。


        IP 地址是分配给连接到计算机网络的设备的数字标签。它们充当唯一标识,允许设备通过 Internet 或本地网络相互通信。然后,我们的计算机向 Google 的 IP 地址发送 TCP/IP 请求。
TCP/IP 代表传输控制协议/互联网协议。TCP/IP 是一组网络协议,允许我们的计算机在 Internet 等网络上进行通信以访问“google.com”。它支持设备之间的端到端通信,而不管底层网络基础设施如何。想象一下发送一封信:你写下内容(数据),把它放在信封(数据包)中,然后写地址(目的地)。TCP/IP 执行类似操作,但在四个主要层中:

  • 应用层:将其视为“内容”层。它包括 Web 浏览器、电子邮件和其他使用 Internet 的应用程序。键入 URL 时,此图层将处理数据和格式。

  • 传输层:此层确保“信封”正确到达目的地。

  • 互联网层:与信封寻址类似,该层处理数据包的“寻址”,添加发送方和接收方 IP 地址。它有助于跨网络路由数据包。

  • 链接层:这一层类似于物理“发送”过程。它处理实际的硬件(如以太网或Wi-Fi)以在设备之间传输数据包。

        在我们请求的内容交付给我们之前,我们必须通过一些称为防火墙的安全系统。就像我们用栅栏围住房屋以保护贵重物品免受入侵者侵害一样,防火墙是防止未经授权访问网络的网络安全系统。它根据预先确定的安全规则监视和控制传入和传出的网络流量。

        我们已经成功通过了防火墙。数据(“google.com”中包含的内容)使用HTTPS/SSL在我们的浏览器和“google.com”IP之间传输。HTTPS/SSL通过加密增加了一层安全保护,确保浏览器和网站之间交换的数据保持机密,并防止未经授权的访问。
        安全套接字层 (SSL) 是确保互联网上安全数据传输的基础技术。SSL确保我们与网站之间的安全、加密和身份验证通信,保护敏感信息免遭窃听和未经授权的访问。

        想象一下,多个人阅读此博客,试图同时在他们的浏览器上输入“https://google.com”,您猜对了会有流量。为了缓解这种情况,引入了负载均衡器来均匀分配传入请求。负载平衡器是网络架构中的关键组件,它有效地在多个服务器之间分配传入的网络流量,使应用程序可靠、高效且可供用户使用。


        我们的应用程序,例如“google.com”,托管在服务器组合上,包括 Web 服务器、应用程序服务器和数据库。


        Web 服务器是提供 Web 内容、响应客户端(如 Web 浏览器)的请求以及通过 Internet 传送网页、文件或其他资源的软件或硬件。当用户在 Web 浏览器(如 Chrome、Firefox 等)中输入 URL(“https://www.google.com”)时,会向与该 URL 关联的 Web 服务器发送请求,然后它会处理该请求并使用我们之前研究的网络协议 (TCP/IP) 将请求的内容发送回用户的浏览器。
        应用程序服务器是幕后的强大引擎,为动态内容提供动力,使网站和服务栩栩如生。它们在打造动态和个性化的用户体验方面发挥着关键作用。应用程序服务器是 Web 动态的架构师。想象一个新闻网站;每次您访问时,主页上都会出现新文章,反映最新事件或感兴趣的主题。这种动态由应用程序服务器编排,动态组合从数据库、新闻 API 或其他来源获取的内容。这些服务器实时处理请求,根据用户的偏好或浏览行为定制内容。
        数据库是网站不可或缺的一部分,作为存储和管理各种类型数据的后端存储,以促进网站功能。数据库通常由数据库管理系统 (DBMS) 控制。DBMS 用于轻松访问、管理、修改、更新、控制和组织数据。它充当用户、应用程序和数据库本身之间的接口。两种类型的数据库是关系型数据库(如 SQL)和 Postgre SQL 和非关系型数据库(如 NoSQL)。


        一旦服务器收集了所有必要的文件和数据,它就会将它们发送回您的浏览器,然后在您的屏幕上显示 Google 网站。
        嗯,它就在这里!当您在浏览器中输入“https://www.google.com”并按 Enter 键时,会发生这种情况。这可能看起来很多,但这个过程进行得非常快。

网络数据流动图:

推荐阅读:《网络是怎样连接的》--户根勤

部分图片来源于网络。

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

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

相关文章

世微 锂电池保护IC DW01 充电器检测过充保护SOT23-6

一、 描述 DW01A 是一个锂电池保护电路,为避免锂电池因过充电、过放电、电流过大导致电池寿命缩短或电池被损坏而设计的。它具有高精确度的电压检测与时间延迟电路。 二、 主要特点 工作电流低 过充检测 4.3V,过充释放 4.05V; 过放检测 2.4…

5.1 C++11强类型枚举

一、C枚举的缺陷 1.类型冲突 枚举值和类型都是全局可见的, 与正常C的namespace、类等都是格格不入的,并且还容易导致冲突。 enum Type { General, Light, Medium, Heavy }; enum Category { General, Pistol, MachineGun, Cannon }; 如果在相同作用域…

0x21 树与图的遍历

0x21 树与图的遍历 树与图最常见的储存方式就是使用一个邻接表保存它们的边集。邻接表以head数组为表头,使用ver和edge数组分别存储边的终点和权值,使用next数组模拟链表指针(就像我们在0x13节中讲解邻接表所给出的代码那样)。 …

计算机网络:应用层(二) Web与http协议

我最近开了几个专栏,诚信互三! > |||《算法专栏》::刷题教程来自网站《代码随想录》。||| > |||《C专栏》::记录我学习C的经历,看完你一定会有收获。||| > |||《Linux专栏》&#xff1…

编辑器Sublime text 常用快捷命令 列模式 替换空行

平替notepad 下载可取官网 www.sublimetext.com 据说可以无限试用,没有功能限制 1、快速删除空行 ctrl h选择正则表达式 .*Find输入: ^(\t)*$\nReplace输入:点击Replace All 2、快速选择指定字符 用鼠标选中alt f3修改 3、列编辑模式 ct…

基于ssm框架仓库系统论文

摘 要 使用旧方法对仓库信息进行系统化管理已经不再让人们信赖了,把现在的网络信息技术运用在仓库信息的管理上面可以解决许多信息管理上面的难题,比如处理数据时间很长,数据存在错误不能及时纠正等问题。 这次开发的仓库管理系统有管理员和…

240Wqps,美团用户中台, 如何使用DDD架构?

尼恩说在前面 在40岁老架构师 尼恩的读者交流群(50)中,最近有小伙伴拿到了一线互联网企业如阿里、滴滴、极兔、有赞、希音、百度、网易、美团的面试资格,遇到很多很重要的面试题: 谈谈你的DDD落地经验? 谈谈你对DDD的理解&#x…

DCMM数据管理能力成熟度需要具备什么条件?

DCMM,全称为数据管理能力成熟度评估模型,是一个组织数据管理和应用能力的评估框架。该模型可以帮助组织清晰地定义其数据当前所处的发展阶段以及未来发展方向。具体来说,DCMM将数据管理能力划分为8个核心能力域:数据战略、数据管理…

FPGA竞赛_考试赢积分免费兑换FPGA项目课(每周更新积分排名情况)

明德扬特别组织了考试竞赛赢积分兑换FPGA项目课活动,欢迎大家积极参加考试! 我是本次活动的负责人小易老师,有任何问题可以联系我:13112063618(微信同步) 一.考试兑换FPGA项目课 可以兑换FPGA项目课&#…

Composer 安装与使用

Composer 是 PHP 的一个依赖管理工具。我们可以在项目中声明所依赖的外部工具库,Composer 会帮你安装这些依赖的库文件,有了它,我们就可以很轻松的使用一个命令将其他人的优秀代码引用到我们的项目中来。 Composer 默认情况下不是全局安装&a…

微服务黑马头条(简略笔记)

Linux中nacos的拉取安装 拉取naocs镜像:docker pull nacos/nacos-server:1.2.0创建容器:docker run --env MODEstandalone --name nacos --restartalways -d -p 8848:8848 nacos/nacos-server:1.2.0访问地址:http://192.168.200.130:8848/n…

迈入数据结构殿堂——时间复杂度和空间复杂度

目录 一,算法效率 1.如何衡量一个算法的好坏? 2.算法效率 二,时间复杂度 1.时间复杂度的概念 2.大O的渐进表示法 3.推导大O的渐进表示法 4.常见时间复杂度举例 三,空间复杂度 一,算法效率 数据结构和算法是密…

LeetCode Hot100 25.K个一组翻转链表

题目: 给你链表的头节点 head ,每 k 个节点一组进行翻转,请你返回修改后的链表。 k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。 你不能只是单纯…

C++相关闲碎记录(14)

1、数值算法 &#xff08;1&#xff09;运算后产生结果accumulate() #include "algostuff.hpp"using namespace std;int main() {vector<int> coll;INSERT_ELEMENTS(coll, 1, 9);PRINT_ELEMENTS(coll);cout << "sum: " << accumulate(…

软考科目如何选择?

软考科目繁多&#xff0c;让许多学弟学妹感到困惑&#xff0c;不知道该选择哪个科目。以下是一些建议&#xff0c;可以根据个人实际需求选择备考的科目。 1、初级是可选的 软考初级非常简单&#xff0c;适合刚刚入门学习的朋友报考。对于一些有基础的朋友&#xff0c;建议直接…

微信公众号(私域)的运营和变现方式

运营微信公众号也有一段时间了&#xff0c;现在将自己学习到的知识和一些心得体会分享给大家&#xff0c;希望能够对一些公众号新手有所帮助。 01 清楚公众号的变现方式 如果你注册公众号写文章不仅仅是为了记录生活、抒发感情&#xff0c;而是带着成长和赚钱的目的&#xff0…

【餐饮创业系列】创业指南

目录 一、地理位置二、菜品特色三、装修风格四、服务质量五、人力资源六、食材采购七、成本控制八、营销推广九、服务创新十、经营管理系列文章版本记录 开一间餐饮店是许多创业者的梦想&#xff0c;然而&#xff0c;要实现这个梦想并不容易。开店前&#xff0c;需要做很多准备…

FLStudio20最新2024年中文汉化版

FLStudio21.0.2.3中文版完整下载是最好的音乐开发和制作软件也称为水果循环。它是最受欢迎的工作室&#xff0c;因为它包含了一个主要的听觉工作场所。最新FL有不同的功能&#xff0c;如它包含图形和音乐音序器&#xff0c;帮助您使完美的配乐在一个美妙的方式。此程序可用于Mi…

【unity小技巧】unity最完美的CharacterController 3d角色控制器,实现移动、跳跃、下蹲、奔跑、上下坡,复制粘贴即可

最终效果 文章目录 最终效果前言为什么使用CharacterControllerSimpleMove和Move如何选择&#xff1f;1. SimpleMove2. Move 配置CharacterController参数控制相机移动跳跃下蹲处理下坡抖动问题实现奔跑和不同移速控制完整代码完结 前言 其实一开始我是不打算写的&#xff0c;…

LetNet、AlexNet、ResNet网络模型实现手写数字识别

本篇文章是博主在AI、强化学习等领域学习时&#xff0c;用于个人学习、研究或者欣赏使用&#xff0c;并基于博主对人工智能等领域的一些理解而记录的学习摘录和笔记&#xff0c;若有不当和侵权之处&#xff0c;指出后将会立即改正&#xff0c;还望谅解。文章分类在AI学习&#…