范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

2022年计算机网络编程热门面试题总结(附标准答案)

  前言
  如今计算机网络基本可以说是中、大厂面试必问的内容
  但是现在好多文章的答案并不够全面深刻,有的则过于详细,不利于面试
  以下是借鉴资料和他人文章,总结常见计算机网络面试题,希望为大家带来帮助1、计算机网络分层体系结构(五层举例)
  应用层:为应用程序提供交互服务。在互联网中的应用层协议很多,如域名系统DNS、HTTP协议、SMTP协议等。
  传输层:负责向两台主机进程之间的通信提供数据传输服务。传输层的协议主要有传输控制协议TCP和用户数据协议UDP。
  网络层:选择合适的路由和交换结点,确保数据及时传送。主要包括IP协议。
  数据链路层:在两个相邻节点之间传送数据时,数据链路层将网络层交下来的 IP 数据报组装成帧,在两个相邻节点间的链路上传送帧。
  物理层:实现相邻节点间比特流的透明传输,尽可能屏蔽传输介质和物理设备的差异。2、三次握手
  3、四次挥手
  4、为什么不是两次握手
  5、四次挥手中为什么等待2MSL
  6、HTTP和HTTPS区别http 协议是免费使用的,而 https 协议需要到CA机构申请证书,需要缴纳费用http 是超文本传输协议,信息是明文传输,https 则是具有安全性的 ssl/tls 加密传输协议,信息是密文http 的连接很简单,是无状态的;https 协议是由SSL/TLS+HTTP协议构建的可进行加密传输、身份认证的网络协议,比 http 协议安全和 http 通信相比,https 通信会由于加减密处理消耗更多的CPU和内存资源http 和 https 使用的端口也不一样,前者是80,后者是4437、对称加密与非对称加密
  对称加密:
  对称加密是指加密和解密使用同一个密钥的方式,一方通过密钥将信息加密后,把密文传给另一方,另一方通过这个相同的密钥将密文解密,转换成可以理解的明文。
  非对称加密:
  使用一对非对称密钥加密,即公钥和私钥,公钥可以随意发布,任何人都能获得,但私钥只有自己知道
  发送密文的一方使用对方的公钥进行加密处理,对方接收到加密信息后,使用自己的私钥进行解密。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以叫作非对称加密8、什么是数字证书
  9、HTTPS工作流程
  HTTPS 协议是安全的,因为 HTTPS 协议会对传输的数据进行加密,而加密过程是使用了非对称加密实现。但是 HTTPS 在内容传输使用的是对称加密,在证书验证阶段使用非对称加密
  所以HTTPS加密方式是:对称加密 + 非对称加密混合
  ① 证书验证阶段:
  1)浏览器发起 HTTPS 请求;
  2)服务端返回 HTTPS 证书;
  3)客户端验证证书是否合法,如果不合法则提示告警。
  ② 数据传输阶段:
  1)当证书验证合法后,在本地生成随机数;
  2)通过公钥加密随机数,并把加密后的随机数传输到服务端;
  3)服务端通过私钥对随机数进行解密;
  4)服务端通过客户端传入的随机数构造对称加密算法,对返回结果内容进行加密后传输。10、HTTP常见状态码
  200 OK:表示从客户端发送给服务器的请求被正常处理并返回成功301 Moved Permanently:永久性重定向,表示请求的资源被分配了新的URL,之后应使用更改的URL;302 Found:临时性重定向,表示请求的资源被分配了新的URL,希望本次访问使用新的URL;400 Bad Request:表示请求报文存在语法错误;403 Forbidden:服务器拒绝该次访问(访问权限问题)404 Not Found:表示服务器上无法找到请求的资源(也可以在服务器拒绝请求但不想给拒绝原因时使用)500 Inter Server Error:表示服务器在执行请求时发生了错误,也有可能是web应用存在的bug或某些临时的错误时;503 Server Unavailable:表示服务器暂时处于超负载或正在进行停机维护,无法处理请求;
  相关视频推荐
  《tcp/ip详解卷一》: 150行代码拉开协议栈实现的篇章
  为什么不推荐做mcu与qt开发,c++ linux后台服务器开发很香吗?
  学习地址:C/C++Linux服务器开发/后台架构师【零声教育】-学习视频教程-腾讯课堂
  需要C/C++ Linux服务器架构师学习资料加群 812855908 获取(资料包括 C/C++,Linux,golang技术,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,流媒体,CDN,P2P,K8S,Docker,TCP/IP,协程,DPDK,ffmpeg 等),免费分享
  11、HTTP长连接和短连接,流水线是什么
  长连接和短连接:
  HTTP1.0默认使用的是短连接。浏览器和服务器每进行一次HTTP操作,就建立一次连接,任务结束就中断连接。
  HTTP/1.1起默认使用长连接。要使用长连接,客户端和服务器的HTTP响应头部的Connection要设置为keep-alive,才能支持长连接。
  HTTP长连接,指的是复用TCP连接。多个HTTP请求可以复用同一个TCP连接,这就节省了TCP连接建立和断开的消耗。
  流水线:
  默认情况下,HTTP 请求是按顺序发的,下一个请求只有在当前请求收到响应之后才会被发出,有点像停止等待协议。而在收到下一个请求之前,可能需要很长时间。流水线就是在一个 HTTP 长连接下连续发出请求,不用等待响应返回,减少延迟。12、GET和POST区别和应用
  GET产生的URL地址可以在书签收藏,而POST不可以。
  GET请求会被浏览器主动缓存,而POST不会,除非手动设置。
  GET请求只能进行url编码,而POST支持多种编码方式。
  GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。
  GET请求在URL中传送的参数是有长度限制的(通常URL不大于2048个字符),而POST没有。
  对参数的数据类型,GET只接受ASCII字符,而POST没有限制。
  GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。
  GET参数通过URL拼接传递,POST参数通过请求体传递
  GET产生一个TCP数据包;POST产生两个TCP数据包。对于GET方式的请求,浏览器会把请求头和请求体一并发送出去;而对于POST,浏览器先发送请求头,服务器响应100 continue,浏览器再发送请求体。13、TCP和UDP区别和应用
  TCP是可靠传输,UDP是不可靠传输;
  TCP面向连接,UDP无连接,即发送数据之前不需要建立连接
  TCP传输数据有序,UDP不保证数据的有序性;
  TCP面向字节流,把数据看成一连串字节流,UDP是面向报文的
  TCP传输速度相对UDP较慢;
  TCP有流量控制和拥塞控制,UDP没有;
  TCP是重量级协议,UDP是轻量级协议;
  TCP首部20字节,UDP首部8字节;
  TCP连接只能是一对一的(端到端);UDP支持一对一、一对多、多对一和多对多的通信方式。14、浏览器输入URL到页面返回详细过程
  输入网址 输入要访问的网址,即URL
  缓存解析 浏览器获取URL后,先去缓存中查找资源,从浏览器缓存-系统缓存-路由器缓存中查看; 如果有就从缓存中显示界面,不再发送请求; 如果没有,则发送http请求;
  域名解析 发现缓存中没有资源,发送http请求; 在发送http请求之前,需要进行DNS解析(域名解析); DNS解析:域名到IP地址的转换过程,域名的解析工作由DNS服务器完成,解析后可以获取域名相应的IP地址;
  tcp连接 三次握手在域名解析后,浏览器向服务器发起了http请求,tcp连接; 因为tcp协议时面向连接的,所以在传输数据前必须建立连接,即三次握手;tcp连接建立后,浏览器开始向服务器发送http请求报文
  收到请求 服务器收到浏览器发送的请求信息,返回响应
  页面渲染 浏览器收到服务器发送的响应,显示页面内容。15、什么是Cookie和Session,二者区别
  区别:
  16、什么是ARP协议
  17、什么是XSS攻击
  XSS攻击原理是攻击者向有XSS漏洞的网站中输入恶意的 HTML 代码,当用户浏览该网站时,这段 HTML 代码会自动执行,从而达到攻击的目的。
  例如:
  XSS 攻击类似于 SQL 注入攻击,SQL注入攻击中以SQL语句作为用户输入,从而达到查询/修改/删除数据的目的,而在xss攻击中,通过插入恶意脚本,实现对用户游览器的控制,获取用户的一些信息。18、DNS解析过程
  浏览器搜索自己浏览器的DNS缓存
  若没有,则搜索本地操作系统中的DNS缓存和hosts文件
  若没有,则操作系统将域名发送至本地域名服务器,本地域名服务器查询自己的DNS缓存,查找成功则返回结果,否则依次向根域名服务器、顶级域名服务器、权限域名服务器发起查询请求,最终返回IP地址给本地域名服务器
  本地域名服务器将得到的IP地址返回给操作系统,同时自己也将IP地址缓存起来
  操作系统将 IP 地址返回给浏览器,同时自己也将IP地址缓存起来
  浏览器得到域名对应的IP地址19、谈谈IP地址和MAC地址
  20、TCP流量控制(滑动窗口机制)
  21、TCP拥塞控制
  拥塞控制和流量控制不同,前者是一个全局性的过程,而后者指点对点通信量的控制。在某段时间,若对网络中某一资源的需求超过了该资源所能提供的可用部分,网络的性能就要变坏。这种情况就叫拥塞。
  拥塞控制就是为了防止过多的数据注入到网络中,这样就可以使网络中的路由器或链路不致于过载。拥塞控制所要做的都有一个前提,就是网络能够承受现有的网络负荷。拥塞控制是一个全局性的过程,涉及到所有的主机,所有的路由器,以及与降低网络传输性能有关的所有因素。相反,流量控制往往是点对点通信量的控制,是个端到端的问题。流量控制所要做到的就是抑制发送端发送数据的速率,以便使接收端来得及接收。
  为了进行拥塞控制,TCP 发送方要维持一个拥塞窗口(cwnd)的状态变量。拥塞控制窗口的大小取决于网络的拥塞程度,并且动态变化。发送方让自己的发送窗口取为拥塞窗口和接收方的接受窗口中较小的一个。 TCP的拥塞控制采用了四种算法,即:慢开始、拥塞避免、快重传和快恢复。在网络层也可以使路由器采用适当的分组丢弃策略(如:主动队列管理AQM),以减少网络拥塞的发生。
  慢开始:
  慢开始算法的思路是当主机开始发送数据时,如果立即把大量数据字节注入到网络,那么可能会引起网络阻塞,因为现在还不知道网络的符合情况。经验表明,较好的方法是先探测一下,即由小到大逐渐增大发送窗口,也就是由小到大逐渐增大拥塞窗口数值。cwnd初始值为 1,每经过一个传播轮次,cwnd 加倍。
  拥塞避免: 拥塞避免算法的思路是让拥塞窗口 cwnd 缓慢增大,即每经过一个往返时间 RTT 就把发送方的 cwnd 加 1。
  快重传与快恢复: 在 TCP/IP 中,快速重传和快恢复(FRR)是一种拥塞控制算法,它能快速恢复丢失的数据包。
  没有 FRR,如果数据包丢失了,TCP 将会使用定时器来要求传输暂停。在暂停的这段时间内,没有新的或复制的数据包被发送。有了FRR,如果接收机接收到一个不按顺序的数据段,它会立即给发送机发送一个重复确认。如果发送机接收到三个重复确认,它会假定确认件指出的数据段丢失了,并立即重传这些丢失的数据段。有了FRR,就不会因为重传时要求的暂停被耽误。当有单独的数据包丢失时,快速重传和快恢复(FRR)能最有效地工作。当有多个数据信息包在某一段很短的时间内丢失时,它则不能很有效地工作。22、TCP 如何保证可靠传输
  数据包校验:目的是检测数据在传输过程中的任何变化,若校验出包有错,则丢弃报文段并且不给出响应,这时 TCP 发送数据端超时后会重发数据;
  对失序数据包重排序:既然 TCP 报文段作为 IP 数据报来传输,而 IP 数据报的到达可能会失序,因此 TCP 报文段的到达也可能会失序。TCP 将对失序数据进行重新排序,然后才交给应用层;
  丢弃重复数据:对于重复数据,能够丢弃重复数据;
  应答机制:当 TCP 收到发自 TCP 连接另一端的数据,它将发送一个确认。这个确认不是立即发送,通常将推迟几分之一秒;
  超时重发:当 TCP 发出一个段后,它启动一个定时器,等待目的端确认收到这个报文段。如果不能及时收到一个确认,将重发这个报文段;
  流量控制:TCP 连接的每一方都有固定大小的缓冲空间。TCP 的接收端只允许另一端发送接收端缓冲区所能接纳的数据,这可以防止较快主机致使较慢主机的缓冲区溢出,这就是流量控制。TCP 使用的流量控制协议是可变大小的滑动窗口协议。23、HTTP请求转发和重定向的区别
  24、什么是DHCP协议
  DHCP(动态主机配置协议) 是一个局域网的网络协议。
  指的是由服务器控制一段IP地址范围,给用户提供了即插即用的联网方式,用户不需要再手动配置 IP 地址等信息
  该协议自动为用户分配TCP/IP参数信息,如:IP地址,子网掩码,网关等信息。25、什么是SQL注入
  SQL注入就是将原本的SQL语句的逻辑结构改变,使得SQL语句的执行结果和原本开发者的意图不一样;
  比如说我们通过账号密码进行登录,首先需要进行查询判断:
  "select * from t_user where name = "张三" and password = "123456"
  如果我们把or 1 = 1作为拼接在密码末尾传入进来,执行查询的时候sql会变成
  "select * from t_user where name = "张三" and password = "123456" or 1 = 1
  密码永远都是成立的,所以,前面无论密码正确与否都会成功登录
  我们使用预编译语句就可以避免这个问题,例如:JDBC中的PrepareStatement或MyBatis中#{}
  将sql预编译,传参数的时候,不会改变sql语句结构,就可以避免注入。26、URL和URI区别
  URL,统一资源定位符,URL 其实就是我们平时上网时输入的网址,它标识一个互联网资源,并指定对其进行操作或获取该资源的方法。例如 https://leetcode-cn.com/problemset/all/ 这个 URL,标识一个特定资源并表示该资源的某种形式是可以通过 HTTP 协议从相应位置获得。
  URI,统一资源标识符,URL 是 URI 的一个子集,两者都定义了资源是什么,而 URL 还定义了如何能访问到该资源。URI 是一种语义上的抽象概念,可以是绝对的,也可以是相对的,而URL则必须提供足够的信息来定位,是绝对的。简单地说,只要能唯一标识资源的就是 URI,在 URI 的基础上给出其资源的访问方式的就是 URL。
  通俗理解:URI表示的是一个抽象的地址,URL表示的是一个详细的地址。抽象的地址:辽宁省大连市(这是一个抽象的地址,相当于URI)详细的地址:辽宁省大连市高新园区软件园B2(这是一个详细的地址,相当于URL)为什么URL是URI的子集,高新园区软件园B2(URL)属于辽宁省大连市(URI)那么https://www.csdn.net 是一个URI(URI只指明了服务器的地址,没有具体到文件是什么类型)那么https://www.csdn.net/image/logo.gif就是一个URL(他具体到了logo文件的位置并且logo文件是gif类型的)27、粘包与拆包
  产生原因:要发送的数据小于TCP发送缓冲区的大小,TCP将多次写入缓冲区的数据一次发送出去,将会发生粘包;接收数据端的应用层没有及时读取接收缓冲区中的数据,将发生粘包;要发送的数据大于TCP发送缓冲区剩余空间大小,将会发生拆包;待发送数据大于MSS(最大报文长度),TCP在传输前将进行拆包。即TCP报文长度-TCP头部长度>MSS。
  解决策略:消息定长。发送端将每个数据包封装为固定长度(不够的可以通过补0填充),这样接收端每次接收缓冲区中读取固定长度的数据就自然而然的把每个数据包拆分开来。设置消息边界。服务端从网络流中按消息边界分离出消息内容。在包尾增加回车换行符进行分割,例如FTP协议。将消息分为消息头和消息体,消息头中包含表示消息总长度(或者消息体长度)的字段。更复杂的应用层协议。28、什么是阻塞和非阻塞,同步和异步
  阻塞和非阻塞:调用者在事件没有发生的时候,一直等待事件发生,不能处理其他任务是阻塞。调用者在事件没有发生的时候,可以去处理别的事务这是非阻塞。
  同步和异步:调用者循环查看事件有没有发生,这种情况是同步。调用者不用自己去查看事件有没有发生,而是等待注册在时间上的回调函数自己通知自己,这是异步。29、HTTP版本区别(1.0,1.1,2.0)
  HTTP1.0:HTTP1.0仅提供了最基本的认证,用户名和密码都未加密(明文)
  HTTP1.0仅支持短连接,每次发送数据都会经过TCP三次握手和四次挥手,效率低
  HTTP1.0只使用了header的if=modified-Since和Expires作为缓存失效的标准
  HTTP1.0不支持端点续传,每次发送数据都会发送全部数据
  HTTP1.0认为每台计算机都只能绑定一个IP地址,不支持虚拟网络
  HTTP1.1:HTTP1.1使用了摘要算法进行身份验证
  HTTP1.1默认使用长连接:只需要建立一次连接,可以传输多次数据,传输完成之后,只需要一次切断即可。通过请求头的 Connection: keep-alive设置
  HTTP1.1支持端点续传:通过请求头的Range实现
  HTTP1.1使用了虚拟网络:在一台物理服务器上可以存在多个虚拟主机,共享一个IP地址
  HTTP2.0:HTTP2.0支持头部压缩:利用HPACK算法进行压缩,由于HTTP1.1头部经常出现Cookie、Accept、Sever、Range等字段可能会占用几百到几千字节,而body有时只有几十字节("头重身轻")
  HTTP2.0使用二进制格式:HTTP2.0选择了更靠近TCP/IP的二进制格式,抛弃了ASCII码,提高了解析效率
  HTTP2.0强化安全:HTTP2.0一般都跑在HTTPS上
  HTTP2.0多路复用:一个连接上可以有多个请求30、IP地址的分类

酷睿i910900K亮相5。3GHz频率,187帧每秒游戏性能!在电脑装机领域又传来了好消息牙膏厂Intel发布了最新的Intel酷睿S系列桌面处理器,这次第10代英特尔核心处理器一下子达到5。3GHz最大时钟速度,根据英特尔称Intel酷睿S我国一体化政务大数据建设实践与探讨政务大数据建设是数字政府建设的核心。从现阶段的数字政府管理架构业务架构与技术架构来看,政务大数据建设主要包括政务网政务云平台大数据平台三个组成部分。本文笔者从这三个部分出发,探讨我ATFXTeamUpAPP在拉美正式发布,引全球百家知名媒体共同关注ATFX动态随着金融市场不断发展,以及互联网时代的到来。社交已经从飞鸽传书驿站,演变成利用手机就能进行,沟通的成本越来越简化,时间的传输也越来越简短。而现在社交APP时代的到来,无对话EBC金融英国CEO脱欧背景下英国监管的未来EBCFinancialGroup(UK)的现任首席执行官DavidBarrett曾在美国AIGNatWestBank现苏格兰皇家银行,里昂证券,荷兰银行,野村证券等国际金融集团任USGFX英国公司2020财年亏损34。76万英镑在线零售外汇及差价合约经纪商USG联准集团(UnionStandardInternationalGroupLimited)受英国FCA监管的子公司USGFXUK在2020财年中亏损憎恨比特币的成功,巴菲特副手芒格痛批令人恶心股神巴菲特(WarrenBuffett)与助手芒格(CharlieMunger)向来都不是比特币的支持者,日前举行的投资会议上,两人再被问及对比特币的看法,已年届97岁的芒格痛批比误导与欺诈客户,外汇经纪商ForexCT被澳洲法院重罚2000万澳元澳大利亚联邦法院发布决议,向零售外汇经纪商ForexCapitalTradingPtyLtd(ForexCT)处以2000万澳元(约1549万美元)的罚款,该公司运营ASIC许可的高盛比特币将成为数字黄金实乃言之过早随着比特币价格的不断攀升,越来越多的人将其比作数字黄金,甚至将之与黄金相提并论。不过,华尔街投行高盛集团(GoldmanSachs)质疑比特币是否具备长期储存的价值和数字黄金的称谓交易案例解析我是如何从这笔黄金交易中盈利40余点本文是交易员KennethMowat以一笔成功的黄金交易为案例,说明如何确定最佳入场点如何设置止损水平如何计算获利目标以及如何为最大盈利制定退出策略。作为一名交易者,在正式进行交易Plus500宣布收购美国期货经纪商,借道进入美期货期权市场伦交所上市公司知名在线差价合约经纪商Plus500日前宣布,该公司将有条件收购受监管的美国期货经纪商CunninghamCommoditiesLLC和美国期货及期权市场技术提供商C今年首季全球黄金需求下降23,中国ETF持仓创新高世界黄金协会(WGC)发布黄金需求趋势报告,2021年首季全球黄金总需求量为815。7吨,与上季基本持平,但按年下降23,主要由于全球黄金ETF净流出177。9吨。由于黄金ETF的
华为最新折叠屏专利曝光三折叠手机,共有7个屏目前华为旗下的折叠屏手机一共有两种形态,分别是只能内折或外折的大尺寸屏幕,但据外媒LetsGoDigital报道,2021年3月1日华为向世界知识产权组织(WIPO)申请了实用型手如何评价OPPO秋季新品发布会?网友们都是这样说的继苹果召开秋季新品发布会后,国产品牌OPPO也在16号如期召开OPPO秋季新品发布会。这场发布会看下来感觉就是OPPO的全面发力,OPPOFindX3Pro摄影师版的推出再度巩固了未来几年,什么样的车型可能成为新能源市场风向标?在过去,还没有什么新能源车型可选的时候,大家会时常讨论,该买轿车还是SUV。当然,结果是显而易见的,这些年在国内,SUV是相当火的。转眼间到了当下,纯电动车型是越来越多。那么,未来为父母购机怎么选?苹果小米华为适老化横评转眼又是一年中秋,不少小伙伴应该都会利用三天假期,回家好好陪陪父母。中秋节作为阖家团圆的日子,除了送月饼,给父母换一部新手机也是一个不错的选择。相较于年轻人更看重性能拍照颜值等方面腾讯刚砸出1000亿,微信就要收费?用户会买单吗?声明原创不易,禁止搬运,违者必究!微信变了?微信是我们常用的一款软件,集社交支付为一体的一款软件。微信并不是一款装机必备的软件,但是从目前来看,微信已经非常普及了,微信的用户量达到北京知产法院驳回腾讯扫黑风暴禁令申请近日,北京知识产权法院裁定驳回了腾讯提交的扫黑风暴诉讼禁令申请。法院认为,抖音已主动删除了涉嫌侵权的视频,并无必要采取行为保全措施。如果不适当地采取或扩大行为保全范围,不仅会妨碍被多项北京硬科技亮相服贸会百变屏高智商自动驾驶能大规模提升自动驾驶算法效率的超大规模视觉识别技术让数据可用不可见的多方安全计算技术滑卷超20万次无折痕的滑卷屏服贸会期间,一系列北京科技企业的原创科技成果集中亮相。当前,自动驾驶发生了什么?苹果与中国AI企业侵权案败诉,胜诉方要求禁售iphone苹果与中国AI企业侵权案败诉,胜诉方要求禁售iphone。中国企业近年来正在成为专利诉讼的大户,随着中国企业科技实力的提升,专利申请数量明显增长。按照世界知识产权组织公布的2020苹果返校季优惠将于9月27日结束,快来囤货啊苹果于7月16日正式宣布在国内开启了返校季优惠活动,活动内容基本与去年相同。而今年这项活动的结束日期也已公布。苹果方面表示,2021年苹果返校季优惠活动将于9月27日结束。在此之前2021年世界上最有钱的20个人都有谁在过去的一年中,平均每17小时就会产生一位新的亿万富翁。总的来说,世界上的富豪们资产规模比一年前增加了5万亿美元。我们来看一下前20名都有哪些人!1。杰夫贝索斯1770亿美元57岁第一时间升级到iOS15正式版凌晨一点刚过,就收到了iOS15正式版的推送。二话不说马上升级!因为之前已经在主机上面升级到测试版玩了好几个月了所以,对新版本没那么多期待和好奇新鲜感了。点完升级我就睡了,早上才看