💻 Computer Basics
1、计算机网络
1.1 传输层:TCP和UDP
1.1.1 三次握手
1.1.2 四次挥手
1.1.3 流量控制
1.1.4 拥塞控制
1.1.5 TCP和UDP的区别
1.1.6 TCP如何保证传输的可靠性
1.1.7 TCP长连接和短连接
1.1.8 应用层提高UDP协议可靠性的方法
1.1.9 UDP和IP的首部结构
1.2 应用层:HTTP和HTTPS
1.2.1 HTTP和HTTPS的区别
1.2.2 GET和POST的区别
1.2.3 Session与Cookie的区别
1.2.4 从输入网址到获得页面的过程(越详细越好)
1.2.5 HTTP请求有哪些常见的状态码
1.2.6 什么是RIP,算法是什么
1.2.7 HTTP1.1和HTTP2.0的主要区别
1.2.8 DNS
1.2.9 HTTPS加密和认证过程
1.2.10 常见网络攻击
1.2.11 REST
1.3 计算机网络体系结构
1.4 网络层协议
1.4.1 IP地址的分类
1.4.2 划分子网
1.4.3 什么是ARP协议
1.4.4 NAT协议
2、操作系统
2.1 进程和线程
2.1.1 进程和线程的区别
2.1.2 进程间通信方式
2.1.3 同步原语
2.1.4 进程状态
2.1.5 进程调度策略
2.1.6 僵尸进程和孤儿进程
2.1.7 协程
2.1.8 异常控制流
2.1.9 IO多路复用
2.1.10 用户态和内核态
2.2 死锁
2.3 内存管理
2.3.1 分段与分页
2.3.2 虚拟内存
2.3.3 页面置换算法
2.3.4 局部性原理
2.3.5 缓冲区溢出
2.4 磁盘调度
-
+
tourist
register
Sign in
从输入网址到获得页面的过程(越详细越好)
1. **域名解析**,即浏览器查询 DNS,获取域名对应的 IP 地址,具体可参考[1.2.8 DNS](https://notebook.ricear.com/project-26/doc-796)。 2. **建立 TCP 连接**,即浏览器获得域名对应的 IP 地址以后,向服务器请求建立链接,发起三次握手,这里使用**五层协议**更详细的描述如何建立这个 TCP 连接的: 1. 使用**应用层发起 HTTP 请求**,这个可以根据我们本身输入的 URL 访问时,用的什么协议就发起对应协议去进行请求。 2. 然后是**传输层的 TCP 协议为传输报文提供可靠的字节流服务**,这里使用了**TCP 三次握手**。 3. 接着是**网络层把 TCP 分隔好的各种数据包传送给接收方**,而且要保证确实能传到接收方还需要接收方的 MAC 地址,也就是物理地址。 4. 最后是**链路层将数据发送到数据链路层传输**。 5. 至此,请求报文已发出,客户端发送请求的阶段结束。 6. 然后是服务端接收请求处理阶段,将数据按照原路进行处理,即 $ 链路层 \rightarrow 网络层 \rightarrow 传输层 \rightarrow 应用层 $,然后响应客户端的发送报文。 3. TCP/IP 链接建立起来后,**浏览器向服务器发送 HTTP 请求**。 4. **服务器**收到这个请求之后,**根据路径参数映射到特定的请求处理器进行处理**,**并将处理结果及相应的视图返回给浏览器**。 5. **浏览器解析并渲染视图**,若**遇到对 `js`、`css` 及图片等静态资源的引用**时,则**重复上述步骤并向服务器请求这些资源**。 6. **浏览器**根据其请求到的资源、数据**渲染页面**,最终向用户呈现一个完整的页面 ## 参考文献 1. [HTTP 和 HTTPS 有什么区别?](https://github.com/wolverinn/Waking-Up/blob/master/Computer%20Network.md#HTTP%E5%92%8CHTTPS%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB) 2. [(3)字节跳动面试题:从输入网址到获得页面的网络请求的过程,请详细说一下](https://blog.csdn.net/qq_36520235/article/details/82559847)。
ricear
July 18, 2021, 3:29 p.m.
©
BY-NC-ND(4.0)
转发文档
Collection documents
Last
Next
手机扫码
Copy link
手机扫一扫转发分享
Copy link
Markdown文件
share
link
type
password
Update password