TCP-IP 高频面试题及详细答案(实战版)_第1页
TCP-IP 高频面试题及详细答案(实战版)_第2页
TCP-IP 高频面试题及详细答案(实战版)_第3页
TCP-IP 高频面试题及详细答案(实战版)_第4页
TCP-IP 高频面试题及详细答案(实战版)_第5页
已阅读5页,还剩1页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

TCP/IP高频面试题及详细答案(实战版)一、基础概念类1、简单说下TCP/IP四层模型,以及各层的作用和常用协议?TCP/IP协议栈分为四层,和OSI七层模型有对应区别,实际工作中以四层模型为准,从上到下依次是:应用层:直接面向用户和应用程序,负责应用程序之间的数据交互,对接用户操作。常用协议:HTTP、HTTPS、FTP、SSH、DNS、SMTP。传输层:负责端到端的通信,建立主机间的传输通道,管控数据传输的可靠性、速度和顺序。常用协议:TCP、UDP。网络层:负责跨网段寻址和路由转发,确定数据从源主机到目标主机的传输路径。常用协议:IP、ICMP、ARP、RARP。网络接口层(数据链路层+物理层):负责将网络层数据包封装成帧,通过物理介质传输,完成物理寻址和差错检测。常用协议:以太网协议、PPP。2、TCP和UDP的核心区别是什么?日常哪些场景用TCP、哪些用UDP?核心区别主要体现在可靠性、连接性、实时性、开销四个方面:1.连接性:TCP是面向连接的协议,传输数据前必须先建立连接;UDP是无连接协议,无需建立连接,直接发数据包。2.可靠性:TCP可靠,具备确认应答、重传、排序、校验、拥塞控制等机制,数据不丢失、不乱序;UDP不可靠,无任何保障机制,数据可能丢失、乱序、重复。3.实时性:TCP实时性差,机制繁琐有延迟;UDP实时性高,开销小、传输快。4.开销:TCP首部最少20字节,开销大;UDP首部固定8字节,开销极小。使用场景:TCP:文件传输、网页访问、邮件、远程登录,要求数据完整无误的场景。UDP:直播、视频通话、游戏、DNS解析,允许少量丢包、优先保证实时性的场景。3、IP地址、MAC地址、端口的区别和作用?1.MAC地址:物理地址,固化在网卡硬件中,全球唯一,48位。作用是局域网内设备寻址,用于同一网段内的数据帧传输。2.IP地址:逻辑地址,可手动/动态修改,IPv4为32位。作用是跨网段全网寻址,用于不同网络、不同网段之间的路由转发。3.端口:逻辑端口,0-65535。作用是进程寻址,一台主机多个程序联网时,通过端口区分数据该交给哪个应用进程处理。简单总结:MAC找局域网设备,IP找全网主机,端口找主机内的程序。二、TCP核心机制(面试重点)1、详细说下TCP三次握手的过程,为什么是三次而不是两次、四次?TCP三次握手的核心目的:双向确认客户端和服务端的发送、接收能力都正常,同步双方初始序列号。第一次握手(SYN):客户端向服务端发送SYN报文,携带客户端初始序列号,请求建立连接。此时客户端进入SYN_SENT状态。第二次握手(SYN+ACK):服务端收到SYN报文后,确认客户端发送能力正常,返回SYN+ACK报文,携带服务端初始序列号和对客户端的确认应答。此时服务端进入SYN_RCVD状态。第三次握手(ACK):客户端收到SYN+ACK报文后,确认服务端发送、接收能力都正常,发送ACK确认报文。客户端、服务端同时进入ESTABLISHED(连接建立)状态,可开始传输数据。为什么不是两次:两次握手只能确认客户端的收发能力、服务端的接收能力,无法确认服务端的发送能力正常。会导致服务端单方面建立连接、占用资源,可能引发资源浪费。为什么不是四次:第二次握手中,服务端的SYN(请求建立连接)和ACK(确认客户端请求)可以合并为一个报文,无需拆分,四次会造成多余开销。2、详细说下TCP四次挥手的过程,为什么断开连接需要四次?TCP连接是全双工的,读写通道相互独立,断开连接需要分别关闭两个方向的通道,因此需要四次挥手。第三次挥手(FIN):被动方数据全部传输完毕后,发送FIN报文,请求关闭自己的发送通道,进入LAST_ACK状态。需要四次的核心原因:建立连接时,SYN和ACK可合并;但断开连接时,被动方收到关闭请求后,可能还有残留数据要传输,不能立刻关闭,必须先确认、再传数据、最后发关闭请求,无法合并报文,因此需要四次。1.保证被动方能收到最后一次ACK:如果最后一次ACK报文丢失,被动方会超时重发FIN报文。主动方等待2MSL,可及时收到重发的FIN并补发ACK,避免被动方一直处于LAST_ACK状态、无法释放资源。2.清空网络中残留的失效报文:等待2MSL可以让本次连接的所有延迟、滞留报文全部在网络中消失,避免新建立的连接收到旧连接的无效数据包,防止数据错乱。简单理解:2MSL是网络报文最长的存活时间,足够清理所有残留数据,保障新连接干净可用。4、TCP如何保证传输可靠性?有哪些核心机制?TCP依靠六大核心机制实现百分百可靠传输:1.校验和:收发双方都会校验报文数据,出错直接丢弃,保证数据完整性。2.序列号+确认应答:每个报文都有唯一序列号,保证数据按序接收、不重复;接收方返回ACK确认,告知发送方数据已收到。3.超时重传:发送方发送数据后,超时未收到ACK,默认报文丢失,自动重传对应数据,解决丢包问题。4.滑动窗口:流量控制机制,通过窗口大小控制发送速率,避免发送方发送太快,导致接收方缓冲区溢出、数据丢失。5.拥塞控制:针对网络全局拥堵,动态调整发送速度,避免网络过载丢包,包含慢启动、拥塞避免、快重传、快恢复四个算法。6.连接管理:三次握手建立可靠连接,四次挥手有序释放连接,避免无效连接占用资源。5、TCP流量控制和拥塞控制的区别?很多人容易混淆,核心区别是管控对象不同:流量控制:点对点控制,解决发送方和接收方速率不匹配的问题。接收方缓冲区有限,如果发送方发得太快,接收方处理不过来就会丢包。通过接收方告知自己的接收窗口大小,限制发送方速率。拥塞控制:全局网络控制,解决整个网络链路拥堵的问题。和接收方能力无关,是中间路由器、链路带宽不足导致的丢包、延迟。发送方根据网络状态,主动降低发送速率。总结:流量控制怕“接收方接不住”,拥塞控制怕“网络堵不住”。6、TCP粘包、拆包是什么原因?怎么解决?现象:TCP是流式协议,无数据边界,发送的多段数据会被TCP缓冲区合并或拆分,导致接收方收到的数据不完整、粘连在一起。产生原因:1.发送方发送数据间隔太短、数据量小,TCP缓冲区会自动合并数据发送,造成粘包;2.数据包大于TCP缓冲区大小或MSS最大分片大小,会被自动拆分,造成拆包。解决方案(四种常用):1.固定长度:每次传输固定字节数据,不足补零,接收方按固定长度读取;2.尾部分隔符:数据包末尾添加自定义分隔符,接收方按分隔符切割数据;3.头部携带长度:数据包头部预留字段,记录数据体长度,接收方先读长度、再读取对应字节数据(企业最常用);4.关闭Nagle算法:少量高频数据场景,关闭合并发送机制,避免粘包。三、网络层与协议面试题1、ARP协议的作用?ARP缓存中毒是什么?ARP作用:地址解析协议,核心是通过IP地址获取对应的MAC地址。主机发送数据前,先通过ARP广播查询目标IP的MAC,存入本地ARP缓存,后续直接使用,无需重复广播。ARP缓存中毒:一种网络攻击方式,攻击者伪造虚假的ARP响应报文,篡改局域网内主机的ARP缓存表,将网关IP对应的MAC改为攻击者设备MAC。导致全网流量经过攻击者设备,实现流量劫持、窃听、断网等效果。2、ICMP协议的作用?PING命令的原理是什么?ICMP是网络层控制协议,主要用于网络探测、故障排查、错误反馈,不传输业务数据。PING原理:1.本机向目标主机发送ICMP回显请求报文;2.目标主机收到后,返回ICMP回显应答报文;3.本机根据往返时间、丢包情况,判断目标主机是否在线、网络是否通畅。补充:PING不通不代表网络不通,可能是对方防火墙拦截了ICMP报文。3、私网IP地址有哪些?为什么需要私网IP?IPv4私网地址段(全网通用,不占用公网IP):1.~55(A类)2.~55(B类)3.~55(C类)使用原因:IPv4公网IP资源稀缺,无法给每一台内网设备分配独立公网IP。私网IP可在局域网内重复使用,配合NAT地址转换,多个内网设备共用一个公网IP上网,极大节省公网IP资源。4、NAT的作用和原理?作用:私网IP与公网IP相互转换,实现内网设备共享公网IP上网,同时隐藏内网真实地址,起到基础防护作用。原理:内网设备访问外网时,路由器将数据包的私网源IP+端口,替换为公网IP+随机端口,并记录映射关系;外网响应数据返回时,路由器根据映射表,将公网端口数据转发到对应内网设备。四、实战故障与高频追问1、浏览器输入网址到页面展示,完整的全过程?1.DNS解析:浏览器缓存、系统缓存、本地DNS、根服务器逐级查询,将域名解析为目标服务器IP;2.建立TCP连接:浏览器与服务器IP+80/443端口,通过三次握手建立TCP连接;3.发送HTTP/HTTPS请求:HTTPS会先完成SSL/TLS握手加密,再发送业务请求报文;4.服务器处理请求:后端程序接收请求、查询数据、拼接响应结果,返回HTTP响应报文;5.浏览器解析渲染:浏览器接收HTML、CSS、JS资源,解析页面、加载图片视频、渲染界面;6.关闭连接:根据协议规则,长连接保持复用,短连接通过四次挥手断开TCP连接。2、TCP为什么会出现丢包?丢包后怎么处理?丢包原因:网络链路拥堵、路由器缓冲区溢出、物理链路不稳定、防火墙拦截、设备性能瓶颈。处理机制:发送方超时未收到ACK,触发超时重传;若收到重复ACK,触发快重传机制,立刻重

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论