数据链路层相关知识

1.1 以太网(横跨数据链路层和物理层)

  数据帧格式

  数据链路层,引入另外一套地址体系,称为“mac地址” / 物理地址。(mac地址和IP地址是独立的俩套地址体系) 

1.2 mac

MAC 地址,即 Media Access Control Address ,用于标识网络设备的硬件物理地址。
   1.主机具有一个或多个网卡,路由器具有两个或两个以上网卡;其中每个网卡都有唯一的一个 MAC 地址。
   2.网络通信,即网络数据传输,本质上是网络硬件设备,将数据发送到网卡上,或从网卡接收数据。
   3.硬件层面,只能基于 MAC 地址识别网络设备的网络物理地址。
   4.MAC地址用来识别数据链路层中相连的节点;
   5.长度为48位,及6个字节。一般用16进制数字加上冒号的形式来表示(例如: 08:00:27 :03:fb:19)
   6.在网卡出厂时就确定了,不能修改。虚拟机中的MAC地址不是真实的MAC地址,可能会冲突;也有些网卡支持用户配置MAC地址。

 

对于网络数据传输,不是想象中那样,数据直接从源主机到达目的主机,而是类似在地图中,从 A B 的过程:
  唐僧去西天取经,行程为长安、五指山、黑风山、女儿国……大雷音寺。
  IP地址描述的是路途总体的起点和终点:
  源IP就是整个行程的起点:长安;
  目的IP对应为整个行程的终点:大雷音寺
而行进也必须一个地点一个地点的前进,由MAC地址来描述路途上每一个区间的起点和终点:
  从长安到五指山,为一跳的区间,源MAC为长安,目的MAC为五指山;
  从五指山到黑风山,为下一跳的区间,源MAC为五指山,目的MAC为黑风山。

IP和mac的总结 

  IP地址描述的是路途总体的起点和终点;是给人使用的网络逻辑地址。MAC地址描述的是路途上的每一个区间的起点和终点,即每一跳的起点和终点;是给网络硬件设备使用的网络物理地址。

 2. ARP协议

  虽然我们在这里介绍ARP协议,但是需要强调,ARP不是一个单纯的数据链路层的协议,而是一个介于数据链路层和网络层之间的协议;

  ARP作用:ARP协议建立了主机 IP地址 和 MAC地址 的映射关系。

  在网络通讯时,源主机的应用程序知道目的主机的IP地址和端口号,却不知道目的主机的硬件地址;数据包首先是被网卡接收到再去处理上层协议的,如果接收到的数据包的硬件地址与本机不 符,则直接丢弃;因此在通讯前必须获得目的主机的硬件地址;   

  工作流程: 

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

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

相关文章

ProcessSlot构建流程分析

ProcessorSlot ProcessorSlot构建流程 // com.alibaba.csp.sentinel.CtSph#lookProcessChain private Entry entryWithPriority(ResourceWrapper resourceWrapper, int count, boolean prioritized, Object... args)throws BlockException {// 省略创建 Context 的代码// 黑盒…

冻结Prompt微调LM: T5 PET

T5 paper: 2019.10 Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer Task: Everything Prompt: 前缀式人工prompt Model: Encoder-Decoder Take Away: 加入前缀Prompt,所有NLP任务都可以转化为文本生成任务 T5论文的初衷如…

node-sass版本与NodeJS版本不匹配的问题

npm install 报错如下 npm ERR! code 1 npm ERR! path D:\Project\git_Product\YYYY\user\node_modules\node-sass npm ERR! command failed npm ERR! command C:\WINDOWS\system32\cmd.exe /d /s /c node scripts/build.js 问题原因 node-sass 与 node 版本不匹配 卸载Node…

【Linux取经路】进程控制——程序替换

文章目录 一、单进程版程序替换看现象二、程序替换的基本原理三、程序替换接口学习3.1 替换自己写的可执行程序3.2 第三个参数 envp 验证四、结语一、单进程版程序替换看现象 #include <stdio.h> #

VSCODE使用ssh远程连接时启动服务器失败问题

错误情况 ping服务器的ip可通并且使用terminal可以ssh连接到远程服务器。但使用vscode的remote-ssh时&#xff0c;在「输出」栏出现了一直报 Waiting for server log… 的情况&#xff01; 解决方法一 重置服务器设置&#xff0c;包括以下手段&#xff1a; 1.清理服务器端的…

Java并发基础:FutureTask全面解析!

内容概要 FutureTask结合了Future和Runnable接口&#xff0c;它能够异步执行任务&#xff0c;提高程序响应性&#xff0c;可以获取任务执行结果&#xff0c;并且支持任务取消机制&#xff0c;提高了灵活性&#xff0c;同时&#xff0c;它简化了并发编程&#xff0c;使多线程开…

深入学习《大学计算机》系列之第1章 1.6节——你真的了解计算机存储器吗

一.欢迎来到我的酒馆 第1章 1.6节&#xff0c;你真的了解计算机存储器吗。 目录 一.欢迎来到我的酒馆二.计算机存储器2.1 计算机存储器简介2.2 计算机存储器发展史2.3 计算机存储器发展史总结 三.计算机存储器分类3.1 主存储器3.2 内存3.3 缓存3.4 寄存器3.5 二级存储器3.6 存…

【C/C++ 11】贪吃蛇游戏

一、题目 贪吃蛇游戏机制是通过控制蛇上下左右移动并吃到食物得分。 蛇头碰到墙壁或者碰到蛇身就游戏结束。 食物随机生成&#xff0c;蛇吃到食物之后蛇身变长&#xff0c;蛇速加快。 二、算法 1. 初始化游戏地图并打印&#xff0c;地图的边缘是墙&#xff0c;地图的每个坐…

计算机毕业设计 基于SpringBoot的宠物爱心组织管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精…

【双周赛】第123场双周赛

&#x1f525;博客主页&#xff1a; A_SHOWY&#x1f3a5;系列专栏&#xff1a;力扣刷题总结录 数据结构 云计算 数字图像处理 力扣每日一题_ 【1】三角形类型Ⅱ 100222. 三角形类型 IIhttps://leetcode.cn/problems/type-of-triangle-ii/ 简单题&#xff0c;直接过了 cl…

高级Java开发工程师岗位的基本职责(合集)

高级Java开发工程师岗位的基本职责1 职责&#xff1a; 1、负责区块链产品的研发&#xff0c;独立或与团队合作&#xff0c;按时保质完成软件开发项目; 2、参与产品系统设计、概要设计工作&#xff0c;核心功能的代码编写; 3、独立解决和指导其他同事处理开发中遇到的难点问题; …

智能决策的艺术:探索商业分析的最佳工具和方法

文章目录 一、引言二、商业分析思维概述三、数据分析在商业实践中的应用四、如何培养商业分析思维与实践能力五、结论《商业分析思维与实践&#xff1a;用数据分析解决商业问题》亮点内容简介作者简介目录获取方式 一、引言 随着大数据时代的来临&#xff0c;商业分析思维与实…