【嵌入式笔试题】网络编程笔试题

news2024/11/20 12:20:57
非常经典的笔试题。

2.网络编程(29道)

2.1列举一下OSI协议的各种分层。说说你最熟悉的一层协议的功能。

1 )七层划分为:应用层、表示层、会话层、传输层、网络层、数据链路层、物理
层。
2 )五层划分为:应用层、传输层、网络层、数据链路层、物理层。
3 )四层划分为:应用层、传输层、网络层、网络接口层。( TCP/IP 协议对应模型)
4 )各层功能:
应用层 :在实现多个应用进程相互通信的同时,完成一系列业务处理所需的服务,比如电子邮件、文件传输、远程登录等。
传输层 :为通信双方的主机提供端到端的服务,有两个不同的传输协议TCP UDP ,TCP提供可靠交付,而 UDP 并不能保证可靠交付。
网络层 :处理分组在网络中的活动,例如分组的选路。
网络接口层 :处理与电缆(或其他任何传输媒介)的物理接口细节。

2.2 TCP/IP协议包括?

应用层 :Telnet(远程登录服务)、 FTP (文件传输,使用 TCP )、 SMTP (建立于FTP上的邮件服务)、DNS(域名与IP地址相互转换)等
传输层 :UDP(无连接、不可靠)、 TCP (面向连接、可靠传输)
网络层 :IP(为主机提供一种无连接、不可靠、尽力而为的数据服务)、 ICMP (主机与路由器之间传递控制信息)、IGMP (主机与路由器之间进行组播成员信息交互)
网络接口层 :ARP( IP 地址 -> MAC 地址)、 RARP MAC 地址 -> IP 地址)等

2.3 TCP通信建立和释放的过程?端口的作用?

1 )连接是三次握手,释放是四次挥手。
2 )端口是一个软件结构,被客户进程或服务进程用来发送和接收信息。一个端口
对应一个 16 比特的数。服务进程通常使用一个固定的端口。

2.4 IP地址转换成物理地址的协议?反之?

答案:
1 )将 IP 地址转换成物理地址的协议是 ARP (地址解析协议)。
2 )反之则是 RARP (反地址解析协议)。
解读:
1 ARP 协议工作流程:
①首先,每台主机都会在自己的 ARP 缓冲区 ( ARP Cache ) 中建立一个 ARP 列表,以
表示 IP 地址和 MAC 地址的对应关系。
②当源主机需要将一个数据包要发送到目的主机时,会首先检查自己 ARP 列表中是否
存在该 IP 地址对应的 MAC 地址,如果有﹐就直接将数据包发送到这个 MAC 地址;如果
没有,就向本地网段发起一个 ARP 请求的广播包,查询此目的主机对应的 MAC 地址。
ARP 请求数据包里包括源主机的 IP 地址、硬件地址、以及目的主机的 IP 地址。
③网络中所有的主机收到这个 ARP 请求后,会检查数据包中的目的 IP 是否和自己的 IP
地址一致。如果不相同就忽略此数据包;如果相同,该主机首先将发送端的 MAC 地址
IP 地址添加到自己的 ARP 列表中,如果 ARP 表中已经存在该 IP 的信息,则将其覆
盖,然后给源主机发送一个 ARP 响应数据包,告诉对方自己是它需要查找的 MAC
址;
④源主机收到这个 ARP 响应数据包后,将得到的目的主机的 IP 地址和 MAC 地址添加到
自己的 ARP 列表中,并利用此信息开始数据的传输。如果源主机一直没有收到 ARP
应数据包,表示 ARP 查询失败。
2 RARP 协议工作流程:
①网络上的每台设备都会有一个独一无二的硬件地址,通常是由设备厂商分配的 MAC
地址。 PC1 从网卡上读取 MAC 地址,然后在网络上发送一个 RARP 请求的广播数据
包,请求 RARP 服务器回复该 PC IP

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

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

相关文章

vue 脚手架 创建vue3项目

创建项目 命令:vue create vue-element-plus 选择配置模式:手动选择模式 (上下键回车) 选择配置(上下键空格回车) 选择代码规范、规则检查和格式化方式: 选择语法检查方式 lint on save (保存就检查) 代码文件中有代码不符合 l…

国家开放大学2024年春《Matlab语言及其应用》实验一熟悉Matlab 操作环境参考答案

实验报告 姓名: 学号: 实验一名称:熟悉 Matlab 操作环境 实验目标:通过简单变量和矩阵的录入、计算和查看相关信息,了解 Matlab 操作界面 及各子窗口使用方法。熟悉一系列便于使用的 Matlab 函数和文件的工具。 实…

java-springmvc 01 补充 javaweb 三大组件Servlet,Filter、Listener(源码都是tomcat8.5项目中的)

01.JavaWeb三大组件指的是:Servlet、Filter、Listener,三者提供不同的功能 这三个在springmvc 运用很多 Servlet 01.Servlet接口: public interface Servlet {/*** 初始化方法* 实例化servlet之后,该方法仅调用一次 * init方法必须执行完…

【GitHub】github学生认证,在vscode中使用copilot的教程

github学生认证并使用copilot教程 写在最前面一.注册github账号1.1、注册1.2、完善你的profile 二、Github 学生认证注意事项:不完善的说明 三、Copilot四、在 Visual Studio Code 中安装 GitHub Copilot 扩展4.1 安装 Copilot 插件4.2 配置 Copilot 插件&#xff0…

【机器学习-19】集成学习---投票法(Voting)

一、引言 集成学习(Ensemble Learning)是机器学习领域中的一种重要策略,它通过结合多个模型的预测结果来提高整体性能。在单个模型容易过拟合或欠拟合的情况下,集成学习能够通过综合多个模型的优点来减少这种风险,从而…

ESP32 和 Arduino 之间建立蓝牙连接

ESP32 和 Arduino Uno 可以通过蓝牙进行通信。为此,您必须使用与 Arduino 兼容的蓝牙模块。我们将使用 HC-05(06) 蓝牙模块。 连接Arduino Uno和HC-05蓝牙模块 将 HC-05 蓝牙模块连接到 Arduino 板。将模块的VCC、GND、RX、TX引脚连接到Ard…

Python 与 TensorFlow2 生成式 AI(二)

原文:zh.annas-archive.org/md5/d06d282ea0d9c23c57f0ce31225acf76 译者:飞龙 协议:CC BY-NC-SA 4.0 第四章:教授网络生成数字 在前一章中,我们涵盖了神经网络模型的构建基块。在这一章中,我们的第一个项目…

04 Docker练习赛从0开始到 docker 镜像提交

1.1 本地安装 docker 工具 这里以ubutun下安装docker为例,其他操作系统安装命令略有不同,可自行百度。(建议使用阿里源安装速度快) sudo apt install docker.io如果你本地有gpu,请继续执行如下命令以支持gpu调用: 注意: 英伟达对 docker 支持的 linux 发行版:https:/…

【计算智能】基本遗传算法在优化问题中的应用与实验【理论到程序】

文章目录 1. 引言:遗传算法简介2. 基本遗传算法(SGA)2.1 基本遗传算法的构成要素1. 染色体编码2. 适应度函数3. 遗传算子 2.2 实验设计与方法1. 算法流程2. 伪代码3. python实现1. 导入模块2. 目标函数 f(x)3 初始化种群4. 计算适应度5. 选择…

20232906 2023-2024-2 《网络与系统攻防技术》第七次作业

20232906 2023-2024-2 《网络与系统攻防技术》第七次作业 1.实验内容 一、使用Metasploit进行Linux远程渗透攻击 任务:使用Metasploit渗透测试软件,攻击Linux靶机上的Samba服务Usermap_script安全漏洞,获取目标Linux靶机的主机访问权限。实…

如何在Spring Boot中配置数据库密码加密

如何在Spring Boot中配置数据库密码加密? alibaba/druid Wiki GitHub 使用ConfigFilter alibaba/druid Wiki GitHub 巧用Druid数据源实现数据库连接密码的加密解密功能 import com.alibaba.druid.filter.config.ConfigTools;public class Testttt {public stat…

汽车CAN总线技术详解

1. 历史 2. 应用 3. 优点 4. 基础概念 5. 组成 6. 应用 7. 网关 8. 波形分析 参考文献 汽车CAN总线技术详解(100多页支持下载)

帮助 Python 用户构建 CLI 界面:直观易写、简单高效 | 开源日报 No.240

tiangolo/typer Stars: 13.7k License: MIT typer 是一个构建出色命令行界面(CLI)的库,基于 Python 类型提示。它旨在让开发者轻松创建用户喜欢使用的 CLI 应用程序。其主要功能和核心优势包括: 直观易写:强大编辑器…

MySQL中怎么存放一条记录

2.2.1. MySQL中一行记录是怎么存储的? MySQL的数据存储在那个文件? 每创建一个 database(数据库)都会在 /var/lib/mysql/ 目录里面创建一个以 database 为名的目录,然后保存表结构和表数据的文件都会存放在这个目录里…

透视天气:数据可视化的新视角

数据可视化在天气方面能够为我们带来极大的帮助。天气是人类生活中一个重要的因素,对于农业、交通、航空、能源等各个领域都有着重要的影响。而数据可视化技术通过将复杂的天气数据转化为直观、易懂的图表、图像或地图等形式,为我们提供了更深入、更全面…

Windows系统下安装Mosquitto的步骤(2)

接前一篇文章:Windows系统下安装Mosquitto的步骤(1) 本文内容参考: Windows10上安装Mosquitto的步骤(win10、win11 安装mqtt) - IPS99技术分享 MQTT:windows环境下配置MQTT服务器(mosquitto)_…

第7篇:创建Nios II工程之控制LED<二>

Q:上一期我们完成了Quartus硬件工程部分,本期我们创建Nios II软件工程这部分。 A:创建完BSP和Nios II Application之后,在source文件main.c中添加LED控制代码:system.h头文件包含了Platform Designer系统中IP的硬件信…

复旦 北大 | 从头训练中文大模型:CT-LLM

引言 当前,绝大多数大模型(LLMs)基本上都是以英文语料库训练得到的,然后经过SFT来匹配不同的语种。然而,今天给大家分享的这篇文章旨在从头开始训练中文大模型,在训练过程中「主要纳入中文文本数据」&…

易查分如何使用导出PDF功能?

易查分的导出PDF文件功能可以将查询结果下载到本地,也可用于打印出纸质资料。老师和学生家长都可以自主导出PDF文件,下面就来教大家如何使用此功能。 📌老师如何导出PDF? 在查询管理页,点击管理按钮-导出,可…

完美解决AttributeError: module ‘backend_interagg‘ has no attribute ‘FigureCanvas‘

遇到这种错误通常是因为matplotlib的后端配置问题。在某些环境中,尤其是在某些特定的IDE或Jupyter Notebook环境中,可能会因为后端配置不正确而导致错误。错误信息提示 module backend_interagg has no attribute FigureCanvas 意味着当前matplotlib的后…