大厂linux面试题攻略一之网络基础

news2024/9/24 9:24:38

一、网络基础类面试题

1.简述ISO/OSI七层模型(理论模型)的分层与作用

        ISO:国际标准化组织

        OSI:开放系统互联

第7层应用层:为用户提供服务,给用户一个操作界面

第6层表示层:数据提供表示、加密(分为对称加密和非对称加密,一般用非对称加密,如ssh远程连接)、压缩

第5层会话层:确定数据是否需要进行网络传递

第4层传输层

        对报文进行分组(发送时)、组装( 接收时)

        提供传输协议的选择:(会问TCP、UDP那个好?各有好处,分开答)

                TCP( 传输控制协议 ) :可靠的(可靠,准确) ,面向连接的传输协议(慢)               

                UDP( 用户数据报协议) : 不可靠的(快),面向无连接的传输协议(不可靠)

        端口封装(源端口、目的端口)

        差错校验(收到错的包?TCP会告诉发送方,UDP会丢掉)

第3层网络层:

        IP地址编址(源IP、目的IP是唯一的,用于跨网段访问)

        路由选择:(哪个好?)

                静态路由(对路由器对消耗小、效率高,配置复杂,适合路由器少的网络)

                动态路由(会考虑带宽、路径,配置简单、会计算开销,需要消耗CPU运算)

        分组转发

第2层数据链路层:

        MAC地址编址(物理地址,用于同网段(局域网)访问)

        MAC地址寻址

        差错校验

第1层物理层:

        数据实际传输

        电气特性定义(决定那根线传输数据等)

2.TCP/IP四层模型(实际应用模型)与作用?

TCP/IP四层模型是指互联网协议套件中的四个层级,分别是网络接口层、网际(网络)层、传输层和应用层。

  1. 网络接口层:负责将网络数据分割为数据包并在物理网络上发送。它定义了数据包如何在物理网络上进行传输,包括物理接口、数据链路层协议等。

  2. 网际层:主要处理数据包的路由和转发。它负责将数据包从源主机传输到目标主机,通过IP地址来标识主机和网络。网际层使用路由表来确定传输路径,并通过网络层协议(如IP协议)来处理数据包的传输。

  3. 传输层:提供端到端的通信服务,确保数据在源和目标主机之间的可靠传输。传输层协议(如TCP和UDP)负责将数据划分为数据段,并提供错误检测、流量控制和拥塞控制等机制。

  4. 应用层:为应用程序提供网络服务。应用层协议(如HTTP、FTP和SMTP)定义了应用程序如何在网络上通信,并提供特定的功能和服务,如文件传输、电子邮件和网页浏览等。

TCP/IP四层模型的作用是确保互联网上的数据能够在不同的网络设备和协议之间进行有效传输和通信。通过分层的结构,可以使不同层次的协议相互独立,提高了网络的可靠性和可扩展性。

3.TCP协议与UDP协议工作在哪一层,作用是什么?

TCP协议(Transmission Control Protocol)和UDP协议(User Datagram Protocol)是两种常用的传输层协议,用于在计算机网络中实现数据传输。

TCP协议的作用是提供可靠的数据传输。它通过将数据分割为多个小的数据包,并使用序列号和确认机制来保证数据的可靠传输。TCP协议还提供流量控制、拥塞控制和错误恢复等功能,以确保数据在网络中按顺序到达,并且不丢失或损坏。

UDP协议的作用是提供快速的数据传输。与TCP协议不同的是,UDP协议不提供数据的可靠性保证,数据包的传输可能会出现丢失或乱序。UDP协议适用于一些实时性要求高、对数据可靠性要求较低的应用,例如视频流、音频流和在线游戏等。

总结来说,TCP协议适用于对数据可靠性要求较高的应用,而UDP协议适用于对实时性要求较高的应用。

4.简述TCP三次握手的过程

TCP三次握手是用于建立TCP连接的一种协议,过程可以简述如下:

  1. 第一次握手:客户端向服务端发送一个SYN(同步)报文段,该报文段中包含客户端的初始序列号。这表明客户端希望建立连接。

  2. 第二次握手:服务端收到客户端的SYN报文段后,会向客户端发送一个SYN+ACK(同步确认)报文段,其中的ACK表示接收到了客户端的SYN报文段,而SYN表示服务端也希望建立连接,并将服务端的初始序列号包含在报文段中。

  3. 第三次握手:客户端收到服务端的SYN+ACK报文段后,会向服务端发送一个ACK(确认)报文段,表示客户端接收到了服务端的SYN+ACK报文段。此时双方的连接就建立起来了。

在这个过程中,每次握手都需要等待对方的回应,以确保双方都能够正确地接收到对方的信息。这样可以保证连接的可靠性和正确性。

5.简述TCP包头的内容

TCP包头是TCP协议中的一部分,用于在数据传输过程中进行控制和管理。它包含以下内容(主要的是序列号、确认号和标志位):

  1. 源端口号和目的端口号: 源端口号表示发送端的应用程序的端口号,目的端口号表示接收端的应用程序的端口号。通过端口号来确定数据属于哪个应用程序。

  2. 序列号和确认号: 序列号表示发送方发送的数据的字节流编号,确认号表示接收方期望接收的下一个字节流编号。通过序列号和确认号来实现可靠数据传输。

  3. 标志位: TCP包头中有6个标志位,用来控制TCP连接的建立、终止和管理。其中常见的标志位有SYN、ACK和FIN等。

  4. 窗口大小: 窗口大小表示接收方能够接收的数据量。通过动态调整窗口大小可以实现流量控制,保证发送方不会发送过多的数据导致接收方无法处理。

  5. 校验和: 校验和用于检验TCP包头和数据在传输过程中是否出现错误。接收方通过校验和来验证数据的完整性。

  6. 紧急指针: 紧急指针用于指示紧急数据的位置,当发送方需要发送紧急数据时,可以通过紧急指针来告知接收方。

  7. 选项字段: 选项字段是可选的,用于扩展TCP协议的功能。常见的选项包括最大报文段长度(MSS)和窗口扩大因子等。

TCP包头的长度为20字节,如果存在选项字段,则会根据选项的长度进行扩展。通过解析TCP包头的内容,可以控制和管理TCP连接的建立、传输和终止。

6.简述TCP四次挥手的过程

TCP四次挥手是指在TCP连接断开时,双方进行的一系列关闭连接的步骤。过程如下:

  1. 主动关闭方发送FIN报文段:主动关闭方向被动关闭方发送一个FIN报文段,该报文段表示主动关闭方已经没有数据要发送了,并且请求被动关闭方关闭连接。

  2. 被动关闭方发送ACK报文段:被动关闭方接收到FIN报文段后,发送一个ACK报文段作为确认。此时,被动关闭方进入CLOSE_WAIT状态,表示被动关闭方已经准备好关闭连接。

  3. 被动关闭方发送FIN报文段:被动关闭方检测到没有数据要发送后,发送一个FIN报文段给主动关闭方,表示被动关闭方也要关闭连接。

  4. 主动关闭方发送ACK报文段:主动关闭方接收到FIN报文段后,发送一个ACK报文段作为确认,表示主动关闭方已经知道被动关闭方也要关闭连接了。此时,主动关闭方进入TIME_WAIT状态,等待一段时间后关闭连接。

这样,双方都知道对方要关闭连接,并完成了关闭连接的过程。

总结(与三次握手的区别): TCP握手是在建立TCP连接时的三次交互过程,确保双方都能正常通信; TCP挥手是在关闭TCP连接时的四次交互过程,确保双方都能安全关闭连接。

二、面试原题

1.172.22.141.231/26,该IP位于哪个网段?该网段拥有多少可用IP地址?广播地址是什么 ?

考察知识点

        子网掩码的作用:

                子网掩码必须和IP地址成对出现,否则没有意义

                子网掩码是用于给IP地址划分网络地址与主机地址的

                和子网掩码1对应的IP地址,代表网络位;和子网掩码0对应的IP地址,代表主机位

                子网中只要1是连续的,就是合理子网掩码

        IP地址与子网掩码划分:

        网络地址与广播地址的概念:

子网掩码为255.255.255.192(26指的是子网掩码中1的个数),计算网段可用IP地址数量的方法是通过子网掩码中主机位的数量来确定。子网字数有4个。子网掩码的主机位有6个(26位子网掩码 - 24位网络地址-2)。因此,可用IP地址的数量为2的6次方减二,即62个。广播地址是该网段的最后一个地址,它用于广播数据到该网段的所有设备。广播地址为172.22.141.255。

所以该IP位于网段172.22.141.192/26。 该网段拥有62个可用IP地址。 广播地址为172.22.141.255。

2.类似IP地址计算

3.IP地址分类

在A类划分中会排除0.0.0.0和127.x.x.x,因为127.0.0.0作为{127}集合中的一员,当然也是个回环地址。只不过127.0.0.1经常被默认配置为localhostIP地址。一般会通过ping 127.0.0.1来测试某台机器上的网络设备是否工作正常。而0.0.0.0是不能被ping通的。在服务器中,0.0.0.0并不是一个真实的的IP地址,它表示本机中所有的IPV4地址。监听0.0.0.0的端口,就是监听本机中所有IP的端口。

4.私有IP地址的作用

私有IP地址是用于在局域网内部进行通信的地址,它的作用如下:

  1. 节省公共IP地址资源:公共IP地址是有限的资源,私有IP地址可以在局域网内部重复使用,从而节省了公共IP地址资源的消耗。

  2. 提供内网通信:私有IP地址用于局域网内部的设备之间进行通信,包括局域网内部的计算机、服务器、打印机、路由器等设备之间的通信。

  3. 提供网络安全功能:私有IP地址可以增强网络的安全性。通过使用网络地址转换(NAT)功能,将私有IP地址转换为公共IP地址,在局域网内部和公共网络之间提供一定的隔离,减少了外部攻击的风险。

  4. 支持内部服务和资源共享:私有IP地址可以用于内部服务和资源的共享,例如提供文件共享、打印共享、内部网站访问等功能。

总的来说,私有IP地址的作用是在局域网内部提供内部通信、安全性、服务和资源共享等功能。

​​​​​​​

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1963964.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

从零入门 AI for Science(AI+药物) #Datawhale AI 夏令营 Task2

书接上回: 从零入门 AI for Science(AI药物) #Datawhale AI 夏令营 Task2 前面了解了赛题,这个主要讲baseline代码,入门RNN和特征工程 解读官方baseline set_random_seed 统一设置随机种子 def set_random_seed(seed):"""设…

一万亿token!34亿张图像,扩大10倍!史上最大开源多模态数据集MINT-1T发布!

众所周知,现在训练AI最需要的是什么? 数据,数据,还是数据。——毕竟只有让AI学好了,AI才能好好地回答你的问题,否则就会答非所问。 但是喂给AI的数据,现在和GPU一样,成了紧缺资源。…

Java:类集(List,Vector,Set,HashMap)

类集:就是一个动态的对象数组,是对一些实现好的数据结构的包装,这样在使用时会非常方便,而且最重要的是类集框架本身不受对象数组长度的限制。 类集的特性:(1)这种框架是高性能的,对基本类集(动态数组、链接表、树和散列表)的实现是高效率的。所以一般很少需要人工对…

汇舟问卷:从了解国外问卷工作室开始!

大家好,我是汇舟问卷。上个月有个互联网大厂上班的经理联系到我,向我们咨询了关于国外问卷调查工作室的情况。 他对当时稳定的生活状态感到担忧担忧:每月稳定的收入虽然足以应对家庭开支,却难以积蓄足够的资金,尤其是…

公布一批神马爬虫IP地址,真实采集数据

一、数据来源: 1、这批神马爬虫IP来源于尚贤达猎头公司网站采集数据; 2、数据采集时间段:2023年10月-2024年1月; 3、判断标准:主要根据用户代理是否包含“YisouSpider”,具体IP没做核实。 二、神马爬虫主…

Javascript前端基础面试(十)

MVVM Vue MVVM这一篇就够啦&#xff01;_vue r mvvm-CSDN博客 点容器内的图标,图标边框变成border 1px solid red&#xff0c;点空白处重置 <div id"container"> <img src"icon.png" alt"Icon" class"icon"> <!…

SpringSecurity登录认证流程及源码分析

目录 一 作用 二 流程及源码分析 一 作用 spring security作为spring家族中的一员&#xff0c;它的主要作用有两个&#xff0c;分别是认证和授权。 我们以前在实现登录功能的时候&#xff0c;前端会传来用户名和密码&#xff0c;然后我们根据前端传来的数据从用户表中的数据进…

【AI大模型】分布式训练:深入探索与实践优化

欢迎来到 破晓的历程的 博客 ⛺️不负时光&#xff0c;不负己✈️ 文章目录 一、分布式训练的核心原理二、技术细节与实现框架1. 数据并行与模型并行2. 主流框架 三、面临的挑战与优化策略1. 通信开销2. 数据一致性3. 负载均衡 4.使用示例示例一&#xff1a;TensorFlow中的数据…

深入解析Kubernetes(K8s)的核心技术与应用

一、引言 在云计算和容器化技术迅猛发展的今天&#xff0c;Kubernetes&#xff08;简称K8s&#xff09;凭借其强大的容器编排和管理能力&#xff0c;成为了云原生时代不可或缺的基础设施。本文旨在深入探讨Kubernetes的核心技术、应用场景、优势与挑战&#xff0c;以及如何在实…

图创价值 Live——解锁能源新未来!能源行业图技术解决方案深度探索

随着全球能源结构的深刻变革&#xff0c;能源系统正面临着前所未有的挑战与机遇。新能源的迅猛发展、电力市场化的推进以及电网调度的复杂性不断升级&#xff0c;都对能源系统的智能化、高效化提出了更高要求。为此&#xff0c;我们特别邀请了到了悦数解决方案专家-鲍翰林&…

数据结构第1天作业 7月31日

2.3按位置操作 1&#xff09;按照位置插入数据 void Insert_seqlist_single(Seqlist* sq,int arr_sub,int num){if(sq->posN ){ //判断顺序列表是否为满printf("error");return;}else if(arr_sub<0||arr_sub>sq->pos){printf("error…

微信小程序【五】好玩的点击展开弹框功能

弹出效果 步骤一、index.js步骤二、index.json步骤三、index.wxml步骤四、index.wxss 效果简述&#xff1a;恶搞的好玩点击效果&#xff0c;点击后展开 步骤一、index.js Page({data: {isPlaying: true,animationClass: music-icon,show_menu: false, // 菜单是否激活show_p…

异构算力的调度策略解析与实现

随着云计算、大数据和人工智能技术的飞速发展&#xff0c;异构算力调度成为了一个日益重要的课题。异构算力调度是指针对不同类型的计算资源&#xff08;如CPU、GPU、FPGA等&#xff09;进行合理分配与调度&#xff0c;以提高计算资源的利用率、降低功耗并加速任务执行。本文将…

浮点数的二进制表示

浮点数的二进制表示 浮点数在C/C中对应 float 和 double 类型&#xff0c;我们有必要知道浮点数在计算机中实际存储方式。 IEEE754规定&#xff1a; 单精度浮点数字长32位&#xff0c;尾数长度23&#xff0c;指数长度8,指数偏移量127&#xff1b;双精度浮点数字长64位&#xf…

Yarn UI 时间问题,相差8小时

位置 $HADOOP_HOME/share/hadoop/yarn/hadoop-yarn-common-2.6.1.jar 查看 jar tf hadoop-yarn-common-2.6.1.jar |grep yarn.dt.plugins.js webapps/static/yarn.dt.plugins.js 解压 jar -xvf hadoop-yarn-common-2.6.1.jar webapps/static/yarn.dt.plugins.js inflated: we…

mybatis-plus中出现Field ‘id‘ doesn‘t have a default value问题解决方法

问题分析&#xff1a; 出现这个原因&#xff0c;主要是因为mybatis-plus自身查询的特性&#xff0c;因为查询都是它自己内部设定好的参数&#xff0c;一般为了简便&#xff0c;都会默认自己底层的数据库对应的主键id字段是自增的&#xff0c;也就是mybatis-plus认为不需要id,每…

【Git】.gitignore全局配置与忽略匹配规则详解

设置全局配置 1&#xff09;在C:/Users/用户名/目录下创建.gitignore文件&#xff0c;在里面添加忽略规则。 如何创建 .gitignore 文件&#xff1f; 新建一个.txt文件&#xff0c;重命名&#xff08;包括后缀.txt&#xff09;为 .gitignore 即可。 2&#xff09;将.gitignore设…

Eagle平替?免费超强的素材管理神器!支持多级标签,满足素材快速收集!

作为设计师&#xff0c;你是不是下载了很多类型的素材资源&#xff0c;然而要每次使用的时候&#xff0c;还要通过文件夹一级一级去翻找&#xff0c;非常麻烦&#xff01;还好我找到了一款好用的素材管家神器—千鹿设计助手&#xff0c;如果你之前有用过Eagle或者BillFish的话&…

华为od机试真题:求字符串所有整数最小和(Python)

2024华为OD机试&#xff08;C卷D卷&#xff09;最新题库【超值优惠】Java/Python/C合集 题目描述 1.输入字符串s输出s中包含所有整数的最小和&#xff0c;说明&#xff1a;1字符串s只包含a~z,A~Z,,-&#xff0c; 2.合法的整数包括正整数&#xff0c;一个或者多个0-9组成&…