【计算机网络】用户从输入网址到网页显示,期间发生了什么?

请添加图片描述

1.URL解析

  • 浏览器分解URL:https://www.example.com/page
    • 协议:https
    • 域名:www.example.com
    • 路径:/page

2.DNS查询:

浏览器向DNS服务器发送查询请求,将域名解析为对应的IP地址。

3.CDN检查(如果有):

  • 若域名使用CDN,DNS会返回边缘节点IP
  • 浏览器优先从最近的CDN节点获取静态资源

4.TCP连接:

  • 浏览器与目标服务器三次握手建立TCP连接(HTTPS还需TLS/SSL握手)

客户端 → SYN → 服务端
客户端 ← SYN-ACK ← 服务端
客户端 → ACK → 服务端

5.HTTP请求:

  • 发送带有请求头的HTTP报文:

GET /page HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0
Accept: text/html

6.服务器处理:

  • 静态资源:直接返回文件
  • 动态内容:通过后端程序生成HTML

7.HTTP响应:

  • 返回状态码+数据
HTTP/1.1 200 OK
Content-Type: text/html
<!DOCTYPE html><html>xxx</html>

8.浏览器渲染:

关键流程:
1.解析HTML构建DOM树
2.解析CSS生成CSSOM树
3.合并为渲染树
4.布局计算元素位置
5.绘制像素到屏幕

9.资源加载:

  • 解析到 <img> <script> 等标签时,触发额外HTTP请求
  • 现代浏览器会并行加载资源

上面是期间的重要过程,下面介绍一些有关的网络技术

关键网络技术:

  • HTTP/HTTPS应用层协议,定义数据传输格式
  • TCP/IP:确保可靠传输的分组交换协议
  • TLS加密(HTTPS):加密通信内容
  • CDN加速:通过边缘节点减少延迟

上面提到了CDN,初次看到我也不知道CDN是什么?有什么用?我赶紧去搜集了一下,下面是一些有关CDN的简单总结。

1.什么是CDN?

CDN(Content Delivery NetWork,内容分发网络) 是一种分布式网络。
用于高效、快速地向全球用户分发静态和动态内容(如网页、图片、视频、JS/CSS文件等)。
它的核心目标是 减少延迟、提高访问速度、减轻源服务器负载。

2.CDN的工作原理

传统无CDN的访问流程

用户直接请求源服务器,如果服务器离用户较远,延迟高,尤其是跨国访问时,速度慢。
请添加图片描述

3.使用CDN的访问流程

CDN在全球部署多个边缘节点,用户访问时,自动从最近的节点获取内容,大幅降低延迟。

请添加图片描述

4. CDN的核心技术:

1.缓存:

  • CDN节点会缓存静态资源(如HTML、CSS、JS、图片、视频),减少回源请求。
  • 缓存策略:
    • TTL: 控制缓存有效期
    • Cache-Control:HTTP头控制缓存行为。

2.负载均衡

  • 通过DNS等技术,将用户请求路由到最优节点。

3.动态加速

  • 对动态内容(如API请求)优化传输路径,减少延迟(如TCP优化、BGP路由优化)。

4.DDoS 防护

  • CDN可以吸收恶意流量,保护源服务器免受攻击。

5.CDN的典型应用场景:

1.静态资源加速

图片、CSS、JS、字体等文件的分发

2.视频/直播流媒体:

降低缓冲,提升观看体验

3.软件/游戏下载:

大文件快速分发

4.全球网站加速:

解决跨国访问延迟问题

5.安全防护:

地狱DDos、WAF(Web应用防火墙)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值