华为OD技术面真题 - 计算机网络 - 1

文章目录

  • 计算机网络体系
  • 计算机网络为什么要分层
  • 应用进程的数据在各层之间传递过程
  • 端口、IP地址和MAC地址分别的作用
  • 说说不同层经典网络协议

计算机网络体系

计算机网络体系结构标准主要分为三种:

  • OSI体系结构:概念清楚,理论也比较完整,但是它既复杂又不实用。整体分为七层
  • TCP/IP体系结构: TCP/IP是一个四层体系结构。
  • 五层体系结构:为了方便学习,折中OSI体系结构TCP/IP体系结构,综合二者的优点,这样既简洁,又能将概念讲清楚。

OSI是一个理论上的网络通信模型,而TCP/IP则是实际运行的网络协议。五层结构就是为了介绍网络原理而折中的网络通信模型

OSI七层模型各层的功能:

  • 物理层:网络通信的最底层,主要关注物理媒介和传输数据的硬件特性。数据传输的物理介质,如电缆、光纤、无线电波等。- 主要任务包括数据的编码、传输速率、电压水平等。
  • 数据链路层:负责将原始比特流组织成数据帧,并在物理介质上进行可靠的传输。负责物理地址(MAC地址)的识别和帧的错误检测与校正。常见数据链路层协议包括以太网(Ethernet)和Wi-F。
  • 网络层:路由数据包,决定数据包的最佳路径从源到目的地。这一层比较典型协议为IP协议,,负责地址分配和数据包转发。
  • 运输层:提供端到端的数据传输服务,确保数据的可靠性和完整性。常见传输协议有TCP(传输控制层协议)和UDP(用户数据报协议)。
  • 会话层:会话层负责建立、管理和终止会话(会话是指两个设备之间的通信会话。它还可以处理会话中的同步和恢复问题。
  • 表示层:关注数据的格式化和编解码,以确保不同系统间的数据交换。- 它可以处理数据的加密、压缩和数据格式转换。
  • 应用层:为最终用户提供应用程序和网络服务。包括诸如Web浏览器、电子邮件客户端、文件传输协议(FTP)等应用。与用户界面和应用程序通信的所有应用层协议都属于此层。

TCP/IP四层模型各层介绍

  • 网络接口层:这一层将OSI七层模型的数据链路层和物理层合并在一起,负责管理物理硬件和数据链路协议,以便将数据从一个设备传输到下一个。关注物理媒介和传输数据的硬件特性和数据链路相关协议。
  • 网络层: 与OSI模型的网络层相对应,负责路由数据包,确保它们能够从源主机传输到目的主机。
  • 传输层:它负责端到端的数据传输,确保数据的可靠性和完整性。- 在TCP/IP模型中,最著名的协议是TCP和UDP。TCP提供可靠的、面向连接的通信,而UDP提供不可靠但更快速的通信。
  • 应用层:应用层与OSI模型的应用层、会话层、表示层相对应,它包括了应用程序和用户接口。

五层体系结构,结合上面两种结构来理解即可。

计算机网络为什么要分层

分层的好处有以下几点:

  • 降低复杂度:分层的思想本质,把一个难问题,拆成多个“只关心自己”的小问题。每一层只做一件事。
  • 各层之间相互独立:各层之间相互独立,各层之间不需要关心其他层是如何实现的,只需要知道自己如何调用下层提供好的功能就可以了(可以简单理解为接口调用)这个和我们对开发时系统进行分层是一个道理。
  • 提高了整体灵活性:每一层都可以使用最适合的技术来实现,你只需要保证你提供的功能以及暴露的接口的规则没有改变就行了。

应用进程的数据在各层之间传递过程

发送方逐层将数据进行封装,接收端逐层解封装,以下以五层模型发送端视角介绍:

  1. 应用层:
    • 输入:应用进程产生的数据,例如HTTP请求报文。
    • 处理:按照应用层协议进行封装:
    • 输出:应用层数据单元。
  2. 传输层:
    • 输入:应用层数据单元。
    • 处理:加上传输层首部(TCP/UDP).添加的关键内容:源端口、目的端口、序号、校验和。
    • 输出:报文段。
  3. 网络层:
    • 输入:传输层片段。
    • 处理:加上IP首部。添加关键内容:源IP、目的IP。
    • 输出:IP数据报。
  4. 数据链路层:
    • 输入: IP数据报
    • 处理:加上帧头和帧尾。添加关键信息:源MAC、目的MAC、帧校验。
    • 输出:帧。
  5. 物理层:
    • 输入:帧(比特流形式)
    • 处理:编码成电信号或者光信号。
    • 输出:比特流(0/1)形式。

接收方处理顺序和发送端顺序完全相反。

端口、IP地址和MAC地址分别的作用

MAC地址:

  • 解决的问题:在同一条链路上,数据帧该交给哪一个网卡?
  • 特点:
    • 是物理地址
    • 属于数据链路层
    • 理论上全球唯一由厂商控制(但有些厂商的网卡可以自定义修改)。
      IP地址:
  • 解决的问题:网络上这么多主机,数据应该发送至哪台主机?
  • 特点:
    • 属于网络层。
    • 是逻辑地址。
    • 会随网络发生变化,例如电脑切换wifi,ip地址就会发送改变。
      端口号:
  • 解决的问题:一台主机上有多个应用,数据该交给哪一个应用程序处理?
  • 特点
    • 属于传输层。
    • 只在主机内部有意义。

说说不同层经典网络协议

应用层:

  • HTTP/HTTPS:
    • 作用:万维网数据传输
    • 对应端口:80/443
    • 特点:
      • 无状态
      • 基于请求响应交互模式
  • FTP:
    • 作用:文件传输。
    • 端口:21控制 + 20数据
    • 特点:控制 / 数据分离
  • DNS:
    • 作用:域名转换为IP地址。
    • 对应端口:53
  • SSH:
    • 作用:远程登录
    • 端口:22

传输层:

  • TCP:
    • 特点:
      • 面向连接
      • 可靠传输
      • 提供流量控制、拥塞控制
  • UDP:
    • 特点:
      • 无连接
      • 不可靠
      • 开销小

网络层:

  • IP(IPV4和IPV6)
    • 作用:逻辑寻址、分组转发
  • ICMP:
    • 作用:差错报告、网络诊断。常见ping命令和traceroute就是基于ICMP协议实现。
  • ARP协议:
    • 作用:将IP转换为MAC地址。
    • 严格来说ARP属于网络层和数据链路层跨层协议。

数据链路层:

  • Ethernet(以太网)
    • 作用:局域网通信
  • VLAN:
    • 作用:逻辑划分广播域

物理层更多的是一些传输比特规范,而不是具体协议。

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

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

相关文章

基于氢储能的热电联供型微电网优化调度方法Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和数学建模资料 &#x1f34…

编程实战:从原理到代码的完整指南

请提供具体的编程语言和代码要求,以便生成符合需求的代码示例。例如:编程语言:Python代码要求:实现一个函数,计算两个数的和并返回结果或编程语言:JavaScript代码要求:创建一个异步函数&#xf…

深度学习毕设选题推荐:基于 python深度学习的罗马数据集训练识别人工智能

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

深入解析HMAC:消息认证码的核心原理

好的!我们来对 HMAC(Hash-based Message Authentication Code,基于哈希的消息认证码) 进行一次全面、深入且结构清晰的详解。 HMAC 是现代密码学和网络安全中确保数据完整性与身份认证的核心工具。它不是用来加密数据的&#xff…

iir滤波器的理论分析与matlab仿真,对比butter/cheby1/cheby2/ellip/yulewalk

目录 1.butter函数,巴特沃斯滤波器 2. cheby1函数,切比雪夫I型滤波器 3. cheby2函数,切比雪夫II型滤波器 4.ellip函数,椭圆滤波器 5.yulewalk函数,Yule-Walker滤波器 6.各函数对比分析 IIR滤波器即无限长单位冲激响应滤波器…

java进阶--多线程学习

java进阶–多线程学习 java进阶–多线程学习(1) java进阶–多线程学习(1) 1.并行与并发的概念 并发是指一个处理器同时处理多个任务。 并行是指多个处理器或者是多核的处理器同时处理多个不同的任务。 并发是逻辑上的同时发生&…

Java进阶教程(一)关键字

Java进阶教程(一) 关键字 synchronized:当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。 instanceof:在运行时指出对象是否是特定类的一个实例。 result object instanc…

AI(人工智能)是模拟人类智能行为的技术,如学习、推理、识别

AI(人工智能)是模拟人类智能行为的技术,如学习、推理、识别等。大模型通常指参数量巨大的深度学习模型(如GPT、BERT),依赖海量数据和算力进行训练,在自然语言处理、图像生成等领域表现卓越。前端…

C++内存序

在 C 中&#xff0c;内存序&#xff08;Memory Order&#xff09;是多线程编程中原子操作的重要概念&#xff0c;它用于控制原子操作的内存同步行为。C11 引入了 <atomic> 头文件&#xff0c;提供了内存序来控制多线程环境下的内存访问顺序。内存序的作用内存序主要解决两…

【课程设计/毕业设计】基于机器学习python深度学习的道路坑洼识别

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

FPGA应用开发和仿真【3.3】

7.1.4 离散量化信号的信噪比 不失一般性,考虑一个幅度为1、频率为1的正弦信号a(t)=sin(2πt),经过采样周期Ts的采样离散化之后,如果被DAC以零阶保持特性输出,将得到信号: 如果还经过分辨力δ的量化,取最接近的量化阶梯,将得到信号: 其中 符号表示取最接近自变量的…

linux redis简单操作

linux redis简单操作 1、centOS 系统安装redis https://blog.csdn.net/weixin_42835409/article/details/119562074 2、安装完成后终端输入redis-cli 报 redis-cli -bash: redis-cli: command not found 问题解决 进入到redis文件下src/bin目录下 将redis-cli 复制到 /usr/loc…

要实现应用的高弹性、可扩展性与快速迭代,可以结合现代云原生技术栈,包括容器化(如Docker)、Kubernetes编排、微服务架构

要实现应用的高弹性、可扩展性与快速迭代&#xff0c;可以结合现代云原生技术栈&#xff0c;包括容器化&#xff08;如Docker&#xff09;、Kubernetes编排、微服务架构、服务网格&#xff08;如Istio&#xff09;以及CI/CD流水线。以下是整体架构设计与关键实践&#xff1a;容…

Java进阶文件输入输出实操(图片拷贝)

Java进阶文件输入输出实操&#xff08;图片拷贝&#xff09;把某个目录下的全部图片&#xff0c;全部拷贝到另外一个目录 package test; import domee.chapter6_7.B; import java.io.*; public class Ex10_10 { public static void main(String[] args) throws IOException { S…

深度测评8个一键生成论文工具,专科生毕业论文轻松搞定!

深度测评8个一键生成论文工具&#xff0c;专科生毕业论文轻松搞定&#xff01; AI 工具如何助力论文写作&#xff1f; 在当今学术环境中&#xff0c;越来越多的专科生开始借助 AI 工具来提升论文写作效率。这些工具不仅能够快速生成初稿&#xff0c;还能有效降低 AIGC&#xff…

爆火!7款AI写论文神器,20分钟生成2.5万字问卷类论文,真实参考文献!

深夜急救&#xff01;论文Deadline倒计时3天&#xff1f;这7款AI工具能救你 凌晨2点&#xff0c;电脑屏幕上的论文文档还是空白页——导师催稿的消息弹了出来&#xff0c;问卷数据还没整理&#xff0c;参考文献格式一团糟&#xff0c;查重率更是飙到40%以上……如果你正在经历…

深度测评2026最新!9款AI论文软件评测:本科生毕业论文全场景推荐

深度测评2026最新&#xff01;9款AI论文软件评测&#xff1a;本科生毕业论文全场景推荐 2026年AI论文工具测评&#xff1a;为何值得一看&#xff1f; 随着人工智能技术的不断进步&#xff0c;AI论文辅助工具在学术领域的应用日益广泛。对于本科生而言&#xff0c;撰写毕业论文不…

在软件开发中,熟练掌握一些常用工具如 Git、Docker 和 IDE 可以极大提升开发效率和协作质量

在软件开发中&#xff0c;熟练掌握一些常用工具如 Git、Docker 和 IDE 可以极大提升开发效率和协作质量。以下是这些工具的实用使用技巧&#xff1a; Git 使用技巧 合理使用分支管理 使用 git feature/xxx 命名功能分支&#xff0c;hotfix/xxx 修复紧急问题。推荐使用 Git Flow…

在磁盘调度中,当进程请求读写磁盘时,操作系统需依次进行移臂调度和旋转调度,以高效定位数据所在的物理位置

一、磁盘调度部分 在磁盘调度中&#xff0c;当进程请求读写磁盘时&#xff0c;操作系统需依次进行移臂调度和旋转调度&#xff0c;以高效定位数据所在的物理位置。移臂调度&#xff08;最短寻道时间优先&#xff0c;SSTF&#xff09; 当前磁头位于 18 号柱面。根据最短寻道时间…

什么是Leader AP

文章目录为什么需要Leader APLeader AP是如何工作的Leader AP有哪些组网方式哪些Wi-Fi设备支持Leader APLeader AP是FAT AP的一个扩展功能&#xff0c;是指FAT AP能够像WAC一样&#xff0c;可以和多个FIT AP一起组建WLAN&#xff0c;由FAT AP统一管理和配置FIT AP&#xff0c;为…