网络基础I

embedded/2025/2/25 8:25:18/

目录

一、OSI七层模型

1.1 osi(Open System Interconnection,开放系统互连)

二、TCP\IP五层(或四层模型)

三、数据包的封装和分用

四、网络中的地址管理


一、OSI七层模型

1.1 osi(Open System Interconnection,开放系统互连)

  1. 应用层:针对特定应用的协议,负责应用程序间沟通,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问 协议(Telnet)等
  2. 表示层:设备固有数据格式和网络标准数据格式的转换
  3. 会话层:通信管理,负责建立和断开通信连接(数据流动的逻辑通路),管理传输层以下的分层,如:何时建立连接,何时断开连接,连接维持多久
  4. 传输层:负责两台主机之间的数据传输.,如传输控制协议 (TCP), 能够确保数据可靠的从源主机发送到目标主机
  5. 网络层:负责地址管理和路由选择.,例如在IP协议中, 通过IP地址来标识一台主机,,并通过路由表的方式规划出两台主机之间的数据传输的线路(路由), 路由器(Router)工作在网络
  6. 数据链路层:负责设备之间的数据帧的传送和识别,例如网卡设备的驱动、帧同步(就是说从网线上检测到什么信号算作新帧的开始)、冲突检测(如果检测到冲突就自动重发)、数据差错校验等工作,有以太网、令牌环网, 无线LAN等标准. 交换机(Switch)工作在数据链路层
  7. 物理层:负责光/电信号的传递方式,比如现在以太网通用的网线(双绞 线)、早期以太网采用的的同轴电缆 (现在主要用于有线电视)、光纤,现在的wifi无线网使用电磁波等都属于物理层的概念。物理层的能力决定了最大传输速率、传输距离、抗干扰性等,集线器(Hub)工作在物理层
  8. 应用层~会话层:对应应用程序部分,传输层~网络层:对应操作系统部分,数据链路层~物理层:对应设备驱动程序和网络接口

二、TCP\IP五层(或四层模型)

  • TCP/IP是一组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇,TCP/IP通讯协议采用了5层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求 

  • 对于一台主机,它的操作系统内核实现了从传输层到物理层的内容;对于一台路由器,它实现了从网络层到物理层;对于一台交换机,它实现了从数据链路层到物理层;对于集线器,它只实现了物理层

  • 但是并不一定,有些交换机也实现了网络层的传输,很多路由器也实现了部分传输层的内容比如端口转发

三、数据包的封装和分用

  • 不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据报 (datagram),在链路层叫做帧(frame)。
  •  应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header),称为封装 (Encapsulation)。
  •  首部信息中包含了一些类似于首部有多长, 载荷(payload)有多长, 上层协议是什么等信息。
  •  数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部,根据首部中的 "上层协议" 字段,将数据交给对应的上层协议处理。

四、网络中的地址管理

  • IP地址

  1.  IP协议有两个版本,IPv4和IPv6

  2. IP地址是在IP协议中,用来标识网络中不同主机的地址

  3. 对于IPv4来说,IP地址是一个4字节,32位的整数

  4. 通常也使用 "点分十进制" 的字符串表示IP地址,例如 192.168.0.1 ,用点分割的每一个数字表示一个MAC地址用来识别数据链路层中相连的节点字节,范围是 0 - 255;

  • MAC地址

  1. MAC地址用来识别数据链路层中相连的节点

  2. 长度为48位,及6个字节,一般用16进制数字加上冒号的形式来表示(例如: 08:00:27:03:fb:19)

  3. 在网卡出厂时就确定了,不能修改,mac地址通常是唯一的(虚拟机中的mac地址不是真实的mac地址,可能会冲突,有些网卡支持用户配置mac地址)


http://www.ppmy.cn/embedded/165004.html

相关文章

Qt 中集成mqtt协议

一,引入qmqtt 库 我是将整个头文件/源文件都添加到了工程中进行编译,这样 跨平台时 方便,直接编译就行了。 原始仓库路径:https://github.com/emqx/qmqtt/tree/master 二,使用 声明一个单例类,将订阅到…

飞天侠:用 aioredis 加速你的 Redis 操作

前言 如果你还在用同步方式操作 Redis,你的应用可能还停留在“慢跑”阶段,而不是极速奔跑!在现代高性能应用中,响应速度至关重要,而异步操作就是那把解锁高速的钥匙。而 aioredis,这款基于 asyncio 的 Redis 异步客户端,正是帮你提升性能、缩短延迟的得力助手。它能让你…

VoIP之音频3A技术

音频3A技术是改善语音通话质量的三种关键技术的简称,包括声学回声消除(Acoustic Echo Cancellation, AEC)、自动增益控制(Automatic Gain Control, AGC)、自噪声抑制(Automatic Noise Suppression, ANS&…

java难不难学?

Java的学习难度因人而异,但总体来说,它被认为是一门相对容易入门的编程语言,尤其是对于初学者。以下是关于Java学习难度的一些分析: Java容易学习的方面 语法清晰简洁 Java的语法类似于C,但去除了C中复杂的特性&#x…

VScode 使用Deepseek又方便又好用的另一款插件

一、Continue continue类似于copilot,包含5大核心功能:AI对话编程、代码自动补全、代码智能编辑、上下文提供器、快捷键操作,能满足编程的大部分需求。 在AI大模型的支持上,continue能连接包括DeepSeek、OpenAI、Claude在内的十…

医疗UI的特殊法则:复杂数据可视化的“零错误”设计守则

在当今医疗技术日新月异的时代,医疗UI设计不仅关乎用户体验,更直接关联到患者的生命健康。尤其是在处理复杂数据时,如何确保可视化的准确性和无误性,成为医疗UI设计的一大挑战。以下,我们将深入探讨医疗UI在复杂数据可…

【Gin-Web】Bluebell社区项目梳理6:限流策略-漏桶与令牌桶

本文目录 一、限流二、漏桶三、令牌桶算法四、Gin框架中实现令牌桶限流 一、限流 限流又称为流量控制,也就是流控,通常是指限制到达系统的并发请求数。 限流虽然会影响部分用户的使用体验,但是能一定程度上保证系统的稳定性,不至…

CSS滚动条原理与自定义样式指南,CSS滚动条样式失效,滚动条样式无效,-webkit-scrollbar无效,overflow不显示滚动条

滚动内容形成的必要条件 CSS Overflow属性解析 MDN官方文档-Overflow属性 菜鸟教程-Overflow属性 overflow 属性控制内容溢出元素框时在对应的元素区间内是否添加滚动条。 值描述visible默认值。内容不会被修剪,会呈现在元素框之外。hidden内容会被修剪&#xf…