【测试开发面试复习(一)】计算机网络:计算机网络体系结构(P1)补充ing

news2024/11/18 1:34:12

我每次复习的第一趴都是网络。。

一、高频面试题记录

1.1 计算机网络为什么要分层?

网络庞大而且复杂(大量的软硬件系统、大量的程序和协议等),分层可提高整体结构的灵活性、将层次之间结构解耦,各层相互独立、隔离,每层只考虑当前层如何实现即可,不用考虑其他层。

1.2 是怎么分层的?

在这里插入图片描述

1.3 三种计算机网络模型的关系是什么?每一层分别包含哪些协议?

1.4 计算机网络中,数据如何在各层中传播?数据在网络各层中的存在形式是怎么样的?、

1.5 各模型之间的关系

OSI是现有模型,后有协议,先有标准,再进行实践,是理论下的模型;【它引入了服务、接口、协议、分层的概念】
TCP/IP 模型是先有协议和应用,再参考了OSI模型,被广泛使用。【它借鉴了OSI的服务、接口、协议、分层的概念】

二、关键学习细节

2.1 OSI 七层模型(等我补充一个信的逻辑,更容易理解)

应用层:通过应用程序间的交互来完成特定的网络应用。
表示层:解释交换数据的含义。该层提供的服务主要包括数据压缩,数据加密以及数据描述。
会话层:负责建立、管理和终止表示层实体之间的通信会话。该层提供了数据交换的定界和同步功能,包括了建立检查点和恢复方案的方法。
传输层:负责因特网中两台主机的进程提供通信服务。
网络层:选择合适的网间路由和交换节点,确保数据按时成功传送。
数据链路层(链路层):数据链路层将网络层交下来的 IP 数据报组装成帧,在两个相邻节点间的链路上传送帧。
物理层:实现计算机节点之间比特流的透明传送,尽可能屏蔽掉具体传输介质和物理设备的差异。该层的主要任务是确定与传输媒体的接口的一些特性(机械特性、电气特性、功能特性,过程特性)

2.2 五层体系 和 TCP/IP

五层体系的协议结构是综合了 OSI 和 TCP/IP 优点的一种协议,包括应用层、传输层、网络层、数据链路层和物理层。其中应用层对应 OSI 的上三层,下四层和 OSI 相同。五层协议的体系结构只是为介绍网络原理而设计的,实际应用还是 TCP/IP 四层体系结构。

应用层 :为特定应用程序提供数据传输服务。
传输层 :为进程提供通用数据传输服务。
网络层 :为主机提供数据传输服务。而传输层协议是为主机中的进程提供数据传输服务。
数据链路层 :网络层针对的还是主机之间的数据传输服务,而主机之间可以有很多链路,链路层协议就是为同一链路的主机提供数据传输服务。
物理层 :负责比特流在传输介质上的传播。

2.3 对比各网络模型

在这里插入图片描述

2.4 数据的传输

在这里插入图片描述
假设一个主机上的一个应用向另一个主机的一个应用发送数据。

在发送主机端,一个应用层报文被传送到传输层。在最简单的情况下,传输层收取到报文并附上附加信息,该首部将被接收端的传输层使用。
应用层报文和传输层首部信息一道构成了传输层报文段。附加的信息可能包括:允许接收端传输层向上向适当的应用程序交付报文的信息以及差错检测位信息。该信息让接收端能够判断报文中的比特是否在途中已被改变。
传输层则向网络层传递该报文段,网络层增加了如源和目的端系统地址等网络层首部信息,生成了网络层数据报文。
该数据报文接下来被传递给链路层,在数据链路层数据包添加发送端 MAC 地址和接收端 MAC 地址后被封装成数据帧。
在物理层数据帧被封装成比特流,之后通过传输介质传送到对端。而在接收主机端,整个过程正好反过来。

三、推荐的书(如果我写的不对,请大家一定和我一起交流指正~)

《图解HTTP》人民邮电出版社

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

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

相关文章

轻松三步制作电子签名

一、在纸上签名,并且拍照。 二、新建空白word文档,使用WPS方式打开,再将图片复制进来。 三、点击图片,先选择【图片工具】中的【设置透明色】,然后点击签名之外的图片背景,即可制作为矢量图&#xff1b…

Redis 面试指南:常见问题及最佳答案

Redis 是一个高性能的键值存储系统,已经成为了许多企业和互联网公司的核心技术之一。本文将总结 Redis 面试中常见的问题,并提供最佳答案,以帮助读者更好地准备 Redis 面试。 引言: Redis 是一个开源、高性能、键值存储系统&…

朴素贝叶斯(带你从原理到实践)

目录 一、引言 二、朴素贝叶斯算法原理 1 贝叶斯定理 2 特征条件独立假设 3 分类过程 三、实践事例 四、朴素贝叶斯算法应用 1 文本分类 2 垃圾邮件过滤 3 情感分析 五、朴素贝叶斯算法未来发展 1 特征选择优化 2 半监督学习与无监督学习 3 结合深度学习 4 处理…

vue中动态引入图片

分析 很多时间,不管是vue2,还是vue3开发中都会遇到,动态渲染图片的功能,但是为什么我们直接将图片的路径直接赋值给变量的时候,图片渲染不出来,而通过require引入加载图片后却能正常渲染呢?主要…

数仓开发环境链接

这里写目录标题 1开发工具链接大数据组件1.1 启动hiveserver21.2配置DataGrip连接1.3测试使用 2 环境问题排查思路 1开发工具链接大数据组件 1.1 启动hiveserver2 数仓开发工具datagrip 需要用到JDBC协议链接到Hive,需要启动hiveserver2。 cd /opt/module/hive h…

PHP项目中composer和Git的组合使用

highlight: 在国内由于众所周知的原因,composer的package可能无法访问,解决办法是使用中国的全镜像: composer config -g repositories.packagist composer http://packagist.phpcomposer.com 在需要使用composer package的地方创建composer…

算法沉淀——动态规划之两个数组的 dp(上)(leetcode真题剖析)

算法沉淀——动态规划之两个数组的 dp 01.最长公共子序列02.不相交的线03.不同的子序列04.通配符匹配 01.最长公共子序列 题目链接:https://leetcode.cn/problems/longest-common-subsequence/ 给定两个字符串 text1 和 text2,返回这两个字符串的最长 …

ADS-B Ground Receiver Radarcape

目录 Radarcape ADS-B MLAT Receiver Web Browser User Interface Radarcape Technical Data Radarcape Software Features Radarcape Basics Radarcape ADS-B MLAT Receiver Radarcape is a professional ADS-B receiver made for 24/7 operation. High performance rec…

2.29作业

T课上实现通信代码总结&#xff1a; 程序代码&#xff1a; TCPSER.c #include<myhead.h> #define SER_IP "192.168.244.140" //服务器IP #define SER_PORT 9999 //服务器端口号 int main(int argc, const char *argv[]) {//1.创建用于监…

踩坑之MysqlClient 安装

本以为就简单的 pip 就安装上了结果 报错 error: Microsoft Visual C 14.0 or greater is required. Get it with "Microsoft C Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/ 报错这个 让我下载 我也下载了可能没重启问题 再次安装还…

JS api基础初学

轮播图随机版 需求&#xff1a;当我们刷新页面&#xff0c;页面中的轮播图会显示不同图片以及样式 分析&#xff1a;①&#xff1a;准备一个数组对象&#xff0c;里面包含详细信息&#xff08;素材包含&#xff09; ②&#xff1a;随机选择一个数字&#xff0c;选出数组对应…

layui中,父页面与子页面,函数方法的相互调用、传参

<%--父页面--%> <script type"text/javascript">var KaoHaoType 0; // 考号类型 自定义参数1// 选取考号类型function SelectKaoHaoType(callBack) {KaoHaoType 0; // 默认选择填涂考号layer.open({type: 2, title: 请选择 考号区类型, ar…

java BIO深入学习

一、BIO的工作原理 传统Io(BIO)的本质就是面向字节流来进行数据传输的 ①:当两个进程之间进行相互通信&#xff0c;我们需要建立一个用于传输数据的管道(输入流、输出流)&#xff0c;原来我们传输数据面对的直接就是管道里面一个个字节数据的流动&#xff08;我们弄了一个 by…

靶机渗透之ConnectTheDots

对于vulnhub中的靶机&#xff0c;我们都需先下载镜像&#xff0c;然后导入VM&#xff0c;并将网络连接改为NAT模式。首先我们再来看一下靶机渗透的步骤&#xff1a;信息收集-漏洞分析-漏洞利用-提权。基本都是这个三个步骤&#xff0c;接下来开始我们今天的靶机渗透吧&#xff…

数据库系统实验

一、数据库管理系统软件的使用 1、实验概要 创建用于学生管理的数据库&#xff0c;数据库名为xsgl&#xff0c;包含学生的基本信息&#xff0c;课程信息和选课信息。数据库xsgl包含下列3个表&#xff1a; student&#xff1a;学生基本信息&#xff1b;course&#xff1a;课程…

流水账-20240229

目录 git本地回滚到到120bc409ee3b8f63a23d0060e55118bcce557acf提交记录本地提交到已有代码分支 IDEA批量导入快捷键无效更换背景主题快捷键快捷键可以设置eclipse模式&#xff0c;但是有些不生效&#xff0c;可能是冲突了Ctrl单击&#xff0c;Eclipse里面是可以跳转到代码内部…

计网 - 子网掩码的改变与内网之间通信的关系

文章目录 面试题A与B通信的全过程 面试题 想要弄清楚这个问题&#xff0c;必须了解数据包在网络上是如何传输的&#xff1a; 首先B想向A发送数据包&#xff0c;会根据双方IP来判断是否在同一子网&#xff1a; A的IP地址属于192.168.26.0/24这个网段。B的IP地址属于192.168.26.…

微信小程序构建npm失败解决方式

安装完所需要的依赖后&#xff0c;在微信开发者工具菜单栏中选择&#xff1a;“工具” -> “构建 npm”&#xff0c;但是失败。 解决方法&#xff1a;修改 project.config.json 开发者工具创建的项目&#xff0c;miniprogramRoot 默认为 miniprogram&#xff0c;package.js…

LVGL的基础知识总结

详细的内容可以参考正点原子的LVGL开发指南&#xff0c;本文只记录重点内容 正点原子后续的例程都是基于操作系统来写的 面向对象 在 LVGL 中&#xff0c;用户界面的基本构建成分是对象&#xff0c;也称为小部件&#xff0c;例如&#xff1a;按钮、标签、图片、列表、图表、文…

【Python_Zebra斑马打印机编程学习笔记(三)】解决ZPL指令无法显示中文的问题

解决ZPL指令无法显示中文的问题 解决ZPL指令无法显示中文的问题前言一、问题描述二、字符集、码表文件、字库文件1、字符集2、码表文件3、字库文件 三、两种设置中文字体的方式1、通过设置字符集、码表文件、字库文件改变默认字体2、通过^CF指令设置标准字体名称改变默认字体 解…