计算机网络--数据链路层(1)

2023-10-27

一、数据链路层的功能:

数据链路的建立、维护与拆除帧包装、帧传输、帧同步帧的差错恢复,

流量控制

MAC地址(也叫做物理地址或者硬件地址)是唯一的,只有支持tcp/ip协议的才有;

二、交换机的工作原理

1、

交换机里有mac地址表,记录哪台电脑接的拿个接口,会读取帧里的源mac地址写到mac地址表里去,

MAC地址表存放在内存中,停电之后会丢失,MAC地址会更新,MAC的条目有老化时间;

2、

具体工作原理:

1、学习:学习帧里面的源MAC地址,写入交换机的MAC地址表中;

2、转发:如果不知道目的地址的MAC地址,则进行广播,给每一个接口复制一份数据转发过去,这样每个接口都能收到;如果不知道目的地址的MAC地址则进行单播;

总结:数据包(源mac和目的mac)封装好发给交换机,交换机收到数据包之后,先学习源mac地址,写到交换机的mac地址表中,之后转发,如果mac地址里面没有目的mac地址则广播,有则进行单播

思考:在第一次封装数据的时候如何知道目的地址的MAC地址?

解答:因为有arp协议(地址解析协议);arp广播将已知的ip地址(在网络层会只知道ip地址不知道MAC地址)转化为MAC地址

三、小练习

答案:

使用wait的目的是怕子进程比父进程慢,父进程等一下子进程,&>是指不管正确还是错误的输出都写到/dev/null里面  --并行执行,把整个小圆括号里面的当作一个命令,if语句加个括号就是将串行程序变成并行程序,清空日志文件的作用是:不管ping得通啵都使用的是追加符,之前的数据会保存下来,所以每次执行时先把日志文件清空 

问题:为什么没有按照顺序来?

解答: 进程产生后,在就绪队列排队,之后依次对他们进行调度,他们的优先级不一样,ping不通会有1秒阻塞,之后继续排队回到就绪状态,在就绪队列排队的顺序和调度的顺序不一样,所以命令执行完成的时间也不一样。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

计算机网络--数据链路层(1) 的相关文章

随机推荐

  • 如何解决git上传文件出错[rejected] master -> master (fetch first) error: failed to push some refs to '

    rejected master gt master fetch first error failed to push some refs to git gitee co 上传到码云的时候 报了这个错误 rejected master gt
  • 使用sklearn学习多项式回归(三)

    目录 1 什么是线性 1 1 变量之间的线性关系 1 2 数据间的线性与非线性 1 3 线性模型与非线性模型 1 4 使用分箱处理非线性问题 2 多项式回归PolynomialFeatures 2 1 什么是多项式回归 2 2 多项式回归处
  • 使用 Openssl 验证自签名证书

    原文地址 http blog csdn net kmyhy article details 6546072 iOS的 security framework 框架前面已经介绍 这个框架提供有限的功能 使用它能做到的 比你想象的要少 笔者一直想
  • html input 禁用缓存

    多数浏览器默认会缓存input的值 只有使用ctl F5强制刷新的才可以清除缓存记录 如果不想让浏览器缓存input的值 有2种方法 input 的属性autocomplete 默认为on 其含义代表是否让浏览器自动记录之前输入的值 很多时
  • word编辑公式简单方法

    安装Python包 pix2tex 在终端输入 pip install pix2tex gui i https pypi doubanio com simple 就可以安装 安装好以后 在终端输入pix2tex gui就可以启动 第一次启动
  • Android多级树形选择列表案例 - 手把手教你快速实现

    公司项目中有一个选择联系人的界面 一看里面关系极其复杂 最多时有5层关系嵌套 层数还不一定 有的是第五级是人员 有的是第四级是人员 崩溃中 原来的实现方式是分了三个Activity去分别加载 个人觉得太过臃肿麻烦 选个人要调四次页面 太繁琐
  • Vite原理学习之预编译

    前言 Vite是下一代的前端开发与构建工具 为什么称为下一代 根本原因在于其基于原生ES Module 在目前的前端工程化生态中 webpack rollup esbuild等非常流行 而Vite真是构建在一些流行的技术上 Vite的出现实
  • mysql按升序创建索引_MySQL中如何使用索引

    原标题 MySQL中如何使用索引 者 Airy 在数据分析之路狂奔 立志成为大咖级人物 前言 学完基础的MySQL知识 以及MySQL的增删改查 我们要学习一些性能方面的东西 今天来讲一下索引 Index 索引 在关系数据库中 索引是一种单
  • BUUCTF学习笔记-EasySQL

    BUUCTF学习笔记 EasySQL 时间 2020 03 14 考点 堆叠注入 SQL模式 打开是一个输入框 提交参数查询 随意提交几个参数 发现存在堆叠注入 输入1显示Array 0 gt 1 输入2显示Array 0 gt 1 输入2
  • SQL基础之增、删、改、查

    文章目录 SQL基础之增 删 改 查 SELECT INSERT UPDATE DELETE 参考 SQL基础之增 删 改 查 SQL Structured Query Language SELECT 查 SELECT FROM 整张表查询
  • ACwing算法基础课全程笔记(2021年8月12日开始重写+优化)

    更好的阅读体验 基础模板 2021年8月12日开始对基础课笔记进行重写 优化 请大家支持AcWing正版 购买网课能让自己获得更好的学习体验哦 链接 https www acwing com about 比赛常用技巧及库函数 1 快速读 快
  • win11 install wsl2

    在 Windows 11 上安装 WSL 2 的步骤如下 首先 确保你的 Windows 版本是 Windows 11 或者更新的版本 并且支持 WSL 2 然后 打开 设置 应用 在 更新与安全 页面的 开发人员选项 中 启用 Windo
  • 用200行C语言代码写出一个贪吃蛇——1.0(基本版)

    1 设计思路 总的来说 贪吃蛇这个小游戏涉及到的东西不多 但是对逻辑思维是比较吃基本功的 贪吃蛇 显示给我们看的有三部分 蛇 食物 地图边界 我们可以用一个二维数组来标记这些部分 例如这里我创建了一个 5 10 的二维数组 其中 1 表食物
  • 手写模拟Spring的底层原理2.1

    先来引入两个问题 第一个懒加载还是立即加载的问题 这个问题还是在于就是说 当我们xml配置了一个对象bean的时候 它在spring容器里面是什么时候开始会给我们创建这个对象 那如果我们想对某个对象启动懒加载 可以添加 lazy这个注解 这
  • Fiddler抓包工具保姆级使用教程(超详细)

    超文本传输协议 HTTP 是一个简单的请求 响应协议 其主要是基于TCP来实现的 可以通过Chrome开发者工具或者Wireshark或者Fiddler抓包 以便分析 HTTP 请求 响应的细节 本篇博客主要谈论如何使用Fiddler抓取H
  • vector 二维数组

    动态数组 int p p new int m 注意 int m 表示一个有m个元素的指针数组 p new int 8 表示分配一个int空间并初始化为8 for int i 0 i lt m i p i new int 5 利用Vector
  • OpenGL Shading language学习总结

    这篇文章是根据
  • 基于Ymodem协议的STM32串口IAP的实现(IAP + APP + 上位机)

    基于Ymodem协议的STM32串口IAP的实现 IAP APP 上位机 HavenXie关注 0 1832017 06 05 00 35 09字数 1 373阅读 10 038 1 什么是IAP IAP In Application Pr
  • 单元测试Mock工具TestableMock使用

    单元测试原则 单元测试必须遵循AIR Automatic Independent Repeatable 原则 单元测试在线上运行时 感觉像空气 AIR 一样感觉不到 但在测试质量的保障上 却是非常关键的 好的单元测试宏观上来说 具有自动化
  • 计算机网络--数据链路层(1)

    一 数据链路层的功能 数据链路的建立 维护与拆除帧包装 帧传输 帧同步帧的差错恢复 流量控制 MAC地址 也叫做物理地址或者硬件地址 是唯一的 只有支持tcp ip协议的才有 二 交换机的工作原理 1 交换机里有mac地址表 记录哪台电脑接