菜鸟写的,大佬轻喷。。
计算机网络
-
OSI和TCP/IP模型各个层的名称
(参考资料:https://www.cnblogs.com/qishui/p/5428938.html)
OSI七层结构:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。
TCP/IP结构 :物理层、数据链路层、网络层、传输层、--------------、应用层 -
TCP/IP模型每层的功能
2.1 物理层:传输比特流。
2.2 数据链路层:封装成帧、点对点传递、差错控制
2.3 网络层:分组交换、路由选择
2.4 运输层:负责两个主机进程之间的通信。
2.5 应用层:直接为用户的应用进程提供服务。 -
TCP/IP模型每层的协议
3.1 物理层:忽略
3.2 数据链路层:CMSA/CD(载波监听多点接入碰撞检测协议),PPP(点对点协议,传输数据报的一种方法)
3.3 网络层:ARP(地址解析协议),RARP 3.4 运输层:TCP(传输控制协议)、UDP(用户数据报协议,可靠性低)
3.5 应用层:HTTP(超文本传输协议,客户端/服务器访问协议)、SSH、FTP(文件传输协议)、DHCP(动态分配IP地址) -
计算机网络为什么要分层?优点?
4.1 各层之间互相独立,上层不需要知道下层的结构,只使用下层提供的服务。
4.2 灵活性,促进标准化。 -
简述一下层次路由的原理
每个路由器只知道将数据包发送到自己所在区域内的目标地址,对于其他区域的内部结构不知道。节省了路由表的空间。 -
协议三要素
语义:控制信息每部分的意义
语法:用户数据与控制信息的格式,数据出现的顺序
时序:对事件发生顺序的详细说明 -
香农公式意义是什么
香农公式给出了在信道上进行无差错传输的最大速率。 -
简述一下CSMA/CD协议
在一个半双工信道上,先听再发,边听边发,冲突停止,随机重发
先听再发:在发送数据前,检测信道是否空闲,空闲了在发送。
边听边发:发送数据时,检测信道。
冲突停止,随机重发:因为冲突而重发丢失的数据。 -
TCP和UDP的异同点
相同点:都是传输层的协议,进行传输数据
不同点:
TCP:是一个有连接的可靠协议,可靠性高,速度慢。
UDP:是一个无连接的不可靠协议,不可靠,但是速度快。 -
TCP的三次握手四次挥手过程?
(1)三次握手
主机A$\longrightarrow$(SYN)主机B
主机A$\longleftarrow$(ACK)主机B
主机A$\longrightarrow$(ACK)主机B
(2)四次挥手
主机A$\longrightarrow$(FIN)主机B
主机A$\longleftarrow$(ACK)主机B
主机A$\longleftarrow$(FIN)主机B
主机A$\longrightarrow$(ACK)主机B -
为什么会采用三次握手,若采用二次握手可以吗?
如果采用二次握手,如果第一次主机B给主机A回ACK包时发生了延迟,导致主机A重新给主机B发送SYN包,最终可能会主机A和主机B建立了两个TCP连接。 -
简述下TCP建立连接的过程,TCP如何保证可靠传输?
检验和:保证数据一样
序列号:应答作用,保证数据有序,不重复
超时重传:保证对方收到数据包
连接管理:三次握手、四次挥手
流量控制:尽可能多发
拥塞控制:控制滑动窗口大小,保证网络不堵塞 -
在TCP拥塞控制中,什么是慢开始、拥塞避免、快重传和快恢复算法?
慢开始:拥塞窗口大小每次×2
拥塞避免:当拥塞窗口增大到一定阈值之后,拥塞滑动窗口大小每次+1
快重传:收到1个报文的3个ACK之后立即重传,不需要等到超时
快恢复:阈值设置为当前当前拥塞窗口的一半,拥塞窗口大小等于阈值,然后进行拥塞避免算法 -
流量控制和拥塞控制是什么关系?
流量控制:让对方来得及接收数据。
拥塞控制:避免给整体网络带来堵塞。
流量控制是一个点对点的问题,拥塞控制是一个全局性的过程。 -
简述下DNS域名解析的过程。 (1) 在本地缓存中查找,在linux中就是/etc/hosts文件
(2) 在本地DNS服务器查找
(3) 在根域名DNS服务器查找,返回对应根域名的服务器
(4) 在顶级域名DNS服务器查找,返回对应顶级域名的服务器
(5) 在权威域名DNS服务器查找,返回对应IP地址 -
点击网页一次HTTP请求过程?
(1) 通过DNS将域名解析为ip地址
(2) 根据ip,建立TCP连接,三次握手
(3) 发起HTTP请求,获得html页面
(4) 客户端解析页面并渲染
(5) 服务器断开连接,四次挥手 -
MAC地址和ip地址区别?
mac地址用来局域网电脑的通信,有了ip地址可以完成互联网中电脑之间的通信 -
HTTP状态码及其含义, HTTP和HTTPS的区别
1xx:信息提示性
2xx:请求成功
3xx:资源重定向
4xx:客户端错误
5xx:服务器错误
HTTPS比HTTP多了一个SSL加密的过程,更安全。
-
DHCP的作用:
一个应用层的协议,动态为主机分配IP地址。 -
什么是socket?
socket是基于TCP/IP协议的应用程序之间的通信方式,通信前程序需要知道另一个程序的IP地址和端口。 -
简述一下Cookie和Session的区别
(1) 存储位置不同,Cookie的数据信息存在客户端,Session的数据信息存在服务器当中。
(2) 有效期不同,Cookie可设置为长时间,Session一般失效时间短,客户端关闭或者超时Session就失效了 (3) 安全性不同,Cookie存储在本地,Session比较安全。
(4) 存储大小不同,Cookie不超过4K,而Session存储的数据远高于4K。
参考资料
B站:https://www.bilibili.com/video/BV124411k7uV?spm_id_from=333.999.0.0 牛客:https://www.nowcoder.com/discuss/751740?channel=666&source_id=feed_index_nctrack