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

非常经典的笔试题。

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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

视频改字祝福/豪车装X系统源码/小程序uniapp前端源码

uniapp视频改字祝福小程序源码,全开源。创意无限!AI视频改字祝福,豪车装X系统源码开源,打造个性化祝福视频不再难! 想要为你的朋友或家人送上一份特别的祝福,让他们感受到你的真诚与关怀吗?现在…

VALSE 2024年度进展评述内容分享-视觉基础大模型的进展

2024年视觉与学习青年学者研讨会(VALSE 2024)于5月5日到7日在重庆悦来国际会议中心举行。本公众号将全方位地对会议的热点进行报道,方便广大读者跟踪和了解人工智能的前沿理论和技术。欢迎广大读者对文章进行关注、阅读和转发。文章是对报告人…

探无止境,云游未来 | “游戏出海云”发布

4月28日下午,2024中国移动算力网络大会之“游戏出海”分论坛在江苏省苏州金鸡湖国际会议中心圆满落幕。 此次论坛由中国移动海南公司主办,中国移动通信集团政企事业部、中国移动云能力中心、中国移动国际公司共同协办。海南省工业与信息化厅副厅长黄业晶…

【栈】Leetcode 1047. 删除字符串中的所有相邻重复项

题目讲解 1047. 删除字符串中的所有相邻重复项 算法讲解 使用栈这个数据结构,每一次入栈的时候观察此时的字符和当前栈顶字符是否相等,如相等:栈顶出栈;不相等:入栈 class Solution { public:string removeDuplica…

Linux 基础IO篇

1. C语言中的文件操作 1 #include<stdio.h>2 3 int main()4 {5 FILE* pf fopen("log.txt", "w");6 if(NULL pf)7 {8 perror("fopen");9 return 1; 10 }11 fprintf(pf, &quo…

Spring框架学习笔记(一):Spring基本介绍(包含容器底层结构)

1 官方资料 1.1 官网 https://spring.io/ 1.2 进入 Spring5 下拉 projects, 进入 Spring Framework 进入 Spring5 的 github 1.3 在maven项目中导入依赖 <dependencies><!--加入spring开发的基本包--><dependency><groupId>org.springframework<…

ICode国际青少年编程竞赛- Python-1级训练场-变量的计算

ICode国际青少年编程竞赛- Python-1级训练场-变量的计算 1、 a 2 for i in range(4):Spaceship.step(a-1)Dev.step(a)Dev.step(-a)a a 12、 a 2 for i in range(4):Dev.step(2 a)Dev.step(-a)Dev.turnRight()a a 13、 y 4 for i in range(3):Dev.step(y)Dev.turnRigh…

数据同步新突破!一招解决文化公司系统对接难题!

一、客户介绍 某文化传播有限公司&#xff0c;是一家专注于文化艺术领域&#xff0c;集创作、制作、交流等多功能于一体的公司。公司始终秉承创意和质量的双重标准&#xff0c;为观众带来一系列高质量的文化艺术作品。该公司的经营范围广泛&#xff0c;涵盖了组织文化艺术交流…

cmake进阶:变量的作用域说明三(从函数作用域方面)

一. 简介 前一篇文章从函数作用域方面学习了 变量的作用域。文章如下&#xff1a; cmake进阶&#xff1a;变量的作用域说明一&#xff08;从函数作用域方面&#xff09;-CSDN博客cmake进阶&#xff1a;变量的作用域说明二&#xff08;从函数作用域方面&#xff09;-CSDN博客…

VALSE 2024年度进展评述内容分享-视觉通用人工智能

2024年视觉与学习青年学者研讨会&#xff08;VALSE 2024&#xff09;于5月5日到7日在重庆悦来国际会议中心举行。本公众号将全方位地对会议的热点进行报道&#xff0c;方便广大读者跟踪和了解人工智能的前沿理论和技术。欢迎广大读者对文章进行关注、阅读和转发。文章是对报告人…

优雅处理返回信息状态码:Result对象在Spring Boot中的应用

前言 在开发过程中&#xff0c;处理返回的信息状态码是一个重要的问题&#xff0c;尤其是在大型项目中。为了统一处理这些状态码&#xff0c;我在Spring Boot中创建了一个名为Result的Java对象&#xff0c;用于封装返回的信息和状态码。在本文中&#xff0c;我将分享如何实现这…

【C++题解】1435. 数池塘(八方向)

问题&#xff1a;1435. 数池塘&#xff08;八方向&#xff09; 类型&#xff1a;深搜 题目描述&#xff1a; 农夫约翰的农场可以表示成 NM&#xff08;1≤N,M≤100&#xff09;个方格组成的矩形。由于近日的降雨&#xff0c;在约翰农场上的不同地方形成了池塘。 每一个方格或…

重写muduo之获取线程tid代码

目录 1、概述 2、CurrentThread.h 3、 CurrentThread.cc 1、概述 我们的服务器程序不一定就只有1个Eventloop&#xff0c;我们可能有很多的Eventloop&#xff0c;每个Eventloop都有很多channel&#xff0c;自己channel上的事件要在自己的Eventloop线程上去处理&#xff0c;E…

免费开源的tiktok加速软件

背景 tiktok是国内企业出海做的比较成功的案例&#xff0c;可以简单的理解为海外版的抖音&#xff0c;关于tiktok的运营和变现不是我们擅长的领域&#xff0c;这里就不多说了&#xff0c;这篇文章主要着重在解决tiktok的网络问题&#xff0c;介绍如何用开源的软件自己搭建一套…

基于 Ubuntu22.04 安装 SSH 服务

文章目录 一、Ubuntu22.04 安装 SSH 服务二、配置 OpenSSH&#xff08;安全性&#xff09;1. 更改 OpenSSH 端口2. 限制使用 SSH 登录尝试次数3. 禁止 SSH 以 root 身份连接 三、设置防火墙&#xff08;UFW&#xff09;锁定 SSH四、远程终端软件通过 SSH 连接 Ubuntu22.041. 远…

SpringMVC简介和体验

一、SpringMVC简介和体验 1.1 介绍 Spring Web MVC :: Spring Framework Spring Web MVC是基于Servlet API构建的原始Web框架&#xff0c;从一开始就包含在Spring Framework中。正式名称“Spring Web MVC”来自其源模块的名称&#xff08; spring-webmvc &#xff09;&#…

算法学习007-进制转换 c++递归算法实现 中小学算法思维学习 信奥算法解析

目录 C进制转换 一、题目要求 1、编程实现 2、输入输出 二、算法分析 三、程序编写 四、程序说明 五、运行结果 六、考点分析 七、推荐资料 C进制转换 一、题目要求 1、编程实现 小明学c有一段时间了&#xff0c;今天他想做一个进制转换的小程序&#xff0c;将十进…

LEETCODE LCR 041. 数据流中的移动平均值

class MovingAverage:def __init__(self, size: int):"""Initialize your data structure here."""self.sizesize1self.front0self.rear0self.queue[None for _ in range(size1)]self.sum0def next(self, val: int) -> float:# 满了if (self.…

flutter 生成单选组件

一、效果图 二、主要代码 import package:company_manage_flutter/xcClass/dicDataProp.dart; import package:flutter/material.dart; import package:get/get.dart;class CheckListWidget extends StatefulWidget {final List<Map<String, dynamic>> list;final…

Vue中Element的下载

打开vscode让项目在终端中打开 输入npm install element-ui2.15.3 然后进行下载 在node_modules中出现element-ui表示下载完成 然后在输入Vue.use(ElementUI); import Vue from vue import App from ./App.vue import router from ./router import ElementUI from element-ui…