「计算机网络」夺命连环12问
Python涨薪研究所
共 3982字,需浏览 8分钟
· 2021-06-10
谈一谈你对TCP/IP四层模型,OSI七层模型的理解?
数据链路层,也有称作网络访问层、网络接口层。他包含了OSI模型的物理层和数据链路层,把电脑连接起来。 网络层,也叫做IP层,处理IP数据包的传输、路由,建立主机间的通信。 传输层,就是为两台主机设备提供端到端的通信。 应用层,包含OSI的会话层、表示层和应用层,提供了一些常用的协议规范,比如FTP、SMPT、HTTP等。
说说TCP 3次握手的过程?
client端建立连接,发送一个SYN同步包,发送之后状态变成SYN_SENT server端收到SYN之后,同意建立连接,返回一个ACK响应,同时也会给client发送一个SYN包,发送完成之后状态变为SYN_RCVD client端收到server的ACK之后,状态变为ESTABLISHED,返回ACK给server端。server收到之后状态也变为ESTABLISHED,连接建立完成。
为什么要3次?2次,4次不行吗?
那么四次挥手的过程呢?
client端向server发送FIN包,进入FIN_WAIT_1状态,这代表client端已经没有数据要发送了 server端收到之后,返回一个ACK,进入CLOSE_WAIT等待关闭的状态,因为server端可能还有没有发送完成的数据 等到server端数据都发送完毕之后,server端就向client发送FIN,进入LAST_ACK状态 client收到ACK之后,进入TIME_WAIT的状态,同时回复ACK,server收到之后直接进入CLOSED状态,连接关闭。但是client要等待2MSL(报文最大生存时间)的时间,才会进入CLOSED状态。
为什么要等待2MSL的时间才关闭?
为了保证连接的可靠关闭。如果server没有收到最后一个ACK,那么就会重发FIN。 为了避免端口重用带来的数据混淆。如果client直接进入CLOSED状态,又用相同端口号向server建立一个连接,上一次连接的部分数据在网络中延迟到达server,数据就可能发生混淆了。
TCP怎么保证传输过程的可靠性?
说下浏览器请求一个网址的过程?
首先通过DNS服务器把域名解析成IP地址,通过IP和子网掩码判断是否属于同一个子网 构造应用层请求http报文,传输层添加TCP/UDP头部,网络层添加IP头部,数据链路层添加以太网协议头部 数据经过路由器、交换机转发,最终达到目标服务器,目标服务器同样解析数据,最终拿到http报文,按照对应的程序的逻辑响应回去。
知道HTTPS的工作原理吗?
用户通过浏览器请求https网站,服务器收到请求,选择浏览器支持的加密和hash算法,同时返回数字证书给浏览器,包含颁发机构、网址、公钥、证书有效期等信息。 浏览器对证书的内容进行校验,如果有问题,则会有一个提示警告。否则,就生成一个随机数X,同时使用证书中的公钥进行加密,并且发送给服务器。 服务器收到之后,使用私钥解密,得到随机数X,然后使用X对网页内容进行加密,返回给浏览器 浏览器则使用X和之前约定的加密算法进行解密,得到最终的网页内容
负载均衡有哪些实现方式?
说说BIO/NIO/AIO的区别?
那么你怎么理解同步和阻塞?
发起IO请求 实际的IO读写操作
谈一下你对Reactor模型的理解?
Reactor:负责查询、响应IO事件,当检测到IO事件时,分发给Handlers处理。 Handler:与IO事件绑定,负责IO事件的处理。
好文推荐
灵隐寺招聘:没有KPI,佛系上班……
JetBrains又出编程神器!
面试 Google, 我失败了 | Google 面经分享
一键三连「分享」、「点赞」和「在看」
技术干货与你天天见~
评论
知乎高问:程序员有必要知道为什么做某个功能吗?
将Python客栈设为“星标⭐”第一时间收到最新资讯前言知乎上有一个提问:程序员有必要知道为什么做某个功能吗?↓↓↓今天,我们就这个话题一起来做个讨论。不知道程序员的你,在接到产品经理提的一个需求后,是习惯马上动手开始撸代码呢?还是会先暂停一下,认真思考一会如下一些问题,比如这个需求产生的背景是什么
Python客栈
0
百问商业航天④|百亿农业遥感市场,机会在何方?
泰伯网【百问商业航天】是国内首档商业航天问答短视频栏目,拆解百个商业航天热议话题,汇聚百位产业创新者智识,以PUGC+AIGC铸造商业航天「创新者百科」。记录中国商业航天走向大时代的铿锵足音,为产业发展争取更大的话语权和影响力。本期问题:百亿农业遥感市场,机会在何方?揭榜嘉宾:戴维序 &n
泰伯网
0
面试必问:接口幂等性
欢迎关注微信公众号:互联网全栈架构一总体介绍幂等(Idempotence)是一个计算机领域中的概念,通俗来讲,如果用户对一个操作发起一次或者多次请求,得到的结果都是一样的,那么就认为这样的操作是幂等的。HTTP规范对于幂等的说明如下:A request method i
互联网全栈架构
96
面试官问:MySQL上亿大表,如何优化?
背景XX 实例(一主一从)xxx 告警中每天凌晨在报 SLA 报警,该报警的意思是存在一定的主从延迟。(若在此时发生主从切换,需要长时间才可以完成切换,要追延迟来保证主从数据的一致性)。XX 实例的慢查询数量最多(执行时间超过 1s 的 SQL 会被记录),XX 应用那方每天晚上在做删除一个月前数据
Java专栏
10
某大厂员工吐槽:今天拉肚子,在厕所突然听到领导叫自己,让快出来沟通工作。同事说领导先来工位问,得知他在厕所后,还真去找了...
上一篇:婆婆被一句“公积金都比你儿子高”整破防了近期,媒体报道了一些企业为了监控员工在岗时间而采取的极端措施,这让人不禁反思,我们的工作环境何时变得如此机械化和缺乏人情味。从办公室四处安装的监控摄像头,到每个工作台上的冷冰冰的感应装置,再到洗手间里设置的计时器,这些措施似乎在向员工传达一个信息:“你
开发者全社区
10
40个 Nginx 常问面试题
原文来源:blog.csdn.net/wuzhiwei549/article/details/122758937“Nginx 是一款轻量级的 Web 服务器、反向代理服务器,由于它的内存占用少,启动极快,高并发能力强,在互联网项目中广泛应用。那么关于 Nginx 的核心...
程序员面试吧
0
百问商业航天①|大运力时代,什么是火箭关键技术突破口?
泰伯网【百问商业航天】是国内首档商业航天问答短视频栏目,拆解百个商业航天热议话题,汇聚百位产业创新者智识,以PUGC+AIGC铸造商业航天「创新者百科」。记录中国商业航天走向大时代的铿锵足音,为产业发展争取更...
泰伯网
0
踩坑分享|终于明白为啥面试老是有人问 subList 了,原来这玩意会 OOM!
面试题库|自研短链项目|简历修改&模拟面试|招聘信息最近刚做到一个内存分页的需求,自测了几次就 OOM 了,找了半天原因,终于把这个坑填上来,下面整理一下发出来,各位小伙伴引以为鉴。我们经常会使用 List....
飞天小牛肉
0