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

ops/2024/9/23 14:23:22/
非常经典的笔试题。

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.ppmy.cn/ops/26816.html

相关文章

基于Springboot的web后端开发三层架构上手实操

引言 我们拿到了xml文件 我们要将将xml文件中的数据加载并解析 完成数据的处理 并且返回给前端页面(result格式) 1.将xml文件放在resources目录下 xml是我们需要解析的文件 查看xml文件 2.在springboot中引入dom4j依赖 解析xml需要在springboot中引入dom4j依赖 这边我们…

使用 LlamaIndex 和 Llama 2-Chat 构建知识驱动的对话应用程序

文章目录 使用 LlamaIndex 和 Llama 2-Chat 构建知识驱动的对话应用程序Llama 2-70B-聊天LlamaIndex 解决方案概述先决条件使用 SageMaker JumpStart 部署 GPT-J 嵌入模型使用 SageMaker Python SDK 进行部署在 SageMaker Studio 中使用 SageMaker JumpStart 进行部署使用 Sage…

【C语言】动态内存分配

即使行动导致错误,却也带来了学习与成长;不行动则是停滞与萎缩。💓💓💓 目录 •🌙知识回顾 🍋知识点一:为什么要有动态内存分配 🍋知识点二:malloc和free • &#x1…

ElasticSearch教程入门到精通——第二部分(基于ELK技术栈elasticsearch 7.x新特性)

ElasticSearch教程入门到精通——第二部分(基于ELK技术栈elasticsearch 7.x新特性) 1. JavaAPI-环境准备1.1 新建Maven工程——添加依赖1.2 HelloElasticsearch 2. 索引2.1 索引——创建2.2 索引——查询2.3 索引——删除 3. 文档3.1 文档——重构3.2 文…

Java_从入门到JavaEE_06

一、方法 1.静态方法 理解:特定功能的代码块 好处:解决代码的冗余 语法结构: 访问修饰符 static 返回值类型 方法名([参数列表]){ ​ …代码块… } 分类: 无参数无返回值的方法 带参数的方法 带返回值的方法 2.无参数无返回值…

【已解决】pandas读excel中长数字变成科学计数法的问题

pandas 读excel中的长数字时,即使excel中已经设置为文本,读进df后也会自动变成科学计数法。 在日常的数据分析和处理工作中,Excel和pandas是数据分析师们不可或缺的得力助手。然而,在使用pandas读取Excel文件时,我们有…

Java面试题:解释Java中的并发工具类ConcurrentHashMap的工作原理,并列举经典应用案例

Java中的ConcurrentHashMap是Java并发包(java.util.concurrent)中的一个线程安全的HashMap实现。它是为高并发场景设计的,能够在多线程环境下提供高效的键值存储和查询操作。以下是ConcurrentHashMap的工作原理和一些经典应用案例的解释。 工作原理 数据结构&#…

Golang Colly实现CSDN内容部分图片爬取

语言:Golang 库:Iris/Colly 日志输出: Received Url: https://blog.csdn.net/smile_sundays/article/details/137207581?spm=1001.2100.3001.7377&utm_medium=distribute.pc_feed_blog_category.none-task-bl og-classify_tag-4-137207581-null-null.nonecase&dep…