网站首页 > 技术文章 正文
1.流量控制
滑动窗口机制实现点到点的流量控制
2.拥塞控制
慢开始:收到一个ACK,则cwnd加倍 达到慢开始门限后执行拥塞避免
拥塞避免:收到一个ACK,则cwnd+1 发生拥塞(没有按时收到确认)将慢开始门限设为当前拥塞窗口的一半 将拥塞窗口设为1 执行慢开始算法
快重传:每收到一个失序的报文段就立即发送重复确认,而不是在发送数据才捎带确认
快恢复:当发送方连续收到三个重复确认时,将慢开始门限设为当前拥塞窗口的一半,将拥塞窗口设置为新的慢开始门限,执行拥塞避免算法。
3.为什么有了滑动窗口还要有拥塞控制,滑动窗口不就可以知道对方的处理能力了吗?为什么不能直接遵照对方的处理能力发数据?
滑动窗口主要是流量控制,是根据接收端的接收能力控制发端的发送速率
而拥塞控制是指根据全局网络的处理能力来控制发送速率
4.在TCP/UDP传输段中,源端口地址和目的端口地址可以相同吗?
在TCP/UDP传输段中,源端口地址和目的端口地址是不能相同的,否则就会建立自己到自己的连接,白白耗费资源。网络攻击中的LAND 攻击就是利用这个这一点进行攻击的。LAND 攻击是指一种使用相同的源和目的主机和端口发送数据包到某台机器的攻击。效果通常使存在漏洞的机器崩溃。
5.IP报文段的TTL最大多少
TTL字段8bit,最大255,常用64或32
6.ARP协议是什么,工作在哪一层
工作在网络层
ARP协议 地址解析协议是将IP地址转化为MAC地址
7.ping traceroute实现原理
ping用于测试两个主机的连通性 / 另一台主机是否可达(不可达的问题、往返时间)
ping程序是发送一份类型码为0的ICMP回显请求报文给目的主机,并等待返回类型码为8的ICMP回显应答。不经过传输层(TCP/UDP)
Traceroute可以看到IP数据报从源站到终点所经过的路由,还可以使用IP源路由选项。
原理:通过发送TTL=1、2、3....的UDP数据报(不存在的UDP端口),中途路由器会回复ICMP时间超过报文,目的主机会回复ICMP端口不可达报文。
8.MTU
最大传送单元MTU:数据链路层的帧的数据部分的长度上限
MTU的作用,如何设置,设置得不好会出现什么?
最大传送单元MTU,数据链路层的数据部分的最大值,限制了在数据链路层的帧长度。
1、本地MTU值大于网络MTU值时,本地传输的数据包过大导致网络会拆包后传输,不但产生额外的数据包,而且消耗了“拆包、组包”的时间。2、本地MTU值小于网络MTU值时,本地传输的数据包可以直接传输,但是未能完全利用网络给予的数据包传输尺寸的上限值,传输能力未完全发挥。3、合理的设置MTU值,就是让本地的MTU值与网络的MTU值一致,既能完整发挥传输性能,又不让数据包拆分。
9.应用层有哪些协议?
10.http的缓存机制,哪些http头和缓存相关,作用
强制缓存:服务器给客户端一个资源过期时间
对比缓存:客户端给服务器发送对比标识,服务器判断是否使用缓存
last-modified资源最后修改的时间(S->C)
if-modified-since客户端将修改时间传给服务器(C->S)
Etag服务器端存储消息的唯一标识(S->C)
if-none-match客户端将标识发送给服务器,服务器判断标识是否存在
猜你喜欢
- 2024-11-13 「直击面试」- 搞定计算机网络,这些问题还没有我答不出来的
- 2024-11-13 HTTP面试题 高校毕业生就业难 面试题
- 2024-11-13 HTTP的起源与发展 http的具体内容是什么
- 2024-11-13 前端优化的步骤 前端优化的步骤包括
- 2024-11-13 Python最常见的170道面试题全解析答案(四)
- 2024-11-13 前端项目中 浏览器缓存的更新不及时问题及解决方法
- 2024-11-13 你还没弄懂浏览器的缓存机制吗? 介绍一下浏览器缓存
- 2024-11-13 如何使用缓存提高系统性能? 提高缓存速度
- 2024-11-13 网络相关面试题 网络相关面试问题
- 2024-11-13 为什么你做的H5开屏那么慢?H5首屏秒开方案探讨
- 标签列表
-
- content-disposition (47)
- nth-child (56)
- math.pow (44)
- 原型和原型链 (63)
- canvas mdn (36)
- css @media (49)
- promise mdn (39)
- readasdataurl (52)
- if-modified-since (49)
- css ::after (50)
- border-image-slice (40)
- flex mdn (37)
- .join (41)
- function.apply (60)
- input type number (64)
- weakmap (62)
- js arguments (45)
- js delete方法 (61)
- blob type (44)
- math.max.apply (51)
- js (44)
- firefox 3 (47)
- cssbox-sizing (52)
- js删除 (49)
- js for continue (56)
- 最新留言
-