计算机网络学习笔记--数据链据层之MAC子层(整理)

简介: 概述:   为什么需要介质访问控制子层(MAC)?   介质访问控制子层(MAC)是局域网体系结构中划分的子层,多路访问链路采用共享介质连接所有站点.发送站点通过广播方式发送数据并占用整个带宽,如果有多个站点同时发送信息,就会产生冲突,而在点对点链路网络中就不会存在这样的问题,因为在点对点网络中...

概述:

  为什么需要介质访问控制子层(MAC)?

  介质访问控制子层(MAC)是局域网体系结构中划分的子层,多路访问链路采用共享介质连接所有站点.发送站点通过广播方式发送数据并占用整个带宽,如果有多个站点同时发送信息,就会产生冲突,而在点对点链路网络中就不会存在这样的问题,因为在点对点网络中,目的节点是唯一的,不需要寻址,双方之间的通讯也只在彼此之间产生,不会有其他用户占用这个传输介质,所以,为了解决多路通信中介质征用的问题,IEEE把这种访问共享介质的功能专门划分出了一个子层,就是介质访问控制子层(MAC).

MAC的功能:

  一是用来寻址(这里指MAC地址),寻找目的节点.

  二是用来解决网络中多个用户争抢共享信道的现象.

为什么MAC子层之上又定义了一个LLC子层(逻辑链路控制子层)?

  从MAC功能上来看,MAC并不能保证可靠数据的传输,为了做到这一点,在其之上又增加了一个LLC,用来保证数据的可靠性传输,来为网络层提供服务.

说到共享信道,先来提一下信道的分类.

  点对点信道:有两个没有经过任何中间设备的节点构成的信道.点对点信道封装的是点对点类型的数据链路层协议(PPP协议).

  广播信道:一个信道被多条链路共享,一个节点发送的数据会被多个节点收到,对应的链路就是广播链路,广播信道封装是广播型数据链路层协议(以太网协议,WLAN协议).

MAC地址是什么?

  在局域网中,MAC的作用是用来找到我们要进行通信的计算机,MAC地址分为源地址(发送发的MAC地址),和目标地址(接收方MAC地址),源地址是单播地址(也叫单播帧),目标地址可能是单播地址,也可能是多播地址,或广播地址.

  单播地址:全球唯一,每个网卡上都有自己的一个MAC地址.

MAC地址的帧格式:

如何解决介质争用?

  在局域网中解决方案有CSMA协议(载波侦听多路访问),CSMA/CD协议(带冲突检测的载波侦听多路访问),后者是前者的改进版.

  在WLAN网络中解决方案是CSMA/CA协议,也是CSMA协议的改进版.

CSMA/CD的工作过程:

  1.   发送数据帧前先监听信道,信道忙,则持续监听,直到信道空闲,信道一旦空闲则立即发送数据.
  2.   边发送边检测冲突,如果发送完毕都没有检测到冲突,则发送成功.
  3.   如果检测到冲突,则停止发送,并发送一个32位干扰信号(阻塞信号),以加强冲突信号,采用二进制指数退避算法随机延迟一段时间后,再重复以上步骤.

  流程图:

以太网(802.3)的物理层:

扩展局域网:

用网桥(bridge)连接若干局域网(LAN)可以构造一个更大的局域网,成为桥接局域网或者扩展局域网.

原来的局域网成为了扩展局域网的一部分,称为这个扩展局域网的一个网段,

百度百科是这样定义网桥的:

  网桥(Bridge)像一个聪明的中继器。中继器从一个网络电缆里接收信号, 放大它们,将其送入下一个电缆。相比较而言,网桥对从关卡上传下来的信息更敏锐一些。网桥是一种对帧进行转发的技术,根据MAC分区块,可隔离碰撞。网桥将网络的多个网段在数据链路层连接起来

802.1d协议(STP 生成树协议):

  生成树协议的设计目的是要使二级交换网络中不存在二层环路,那么什么是环路呢?

  假设现在有两个交换机B,C之间有两条链路,主机A,D分别连接B,C.主机A在某一时刻发送了一个广播包到达了交换机A,交换机A接到广播信号,会通过两条链路向交换机B发送,这样交换机B就会受到两个广播信号,收到以后他也会通过两条链路向A广播,这样就形成了一个恶性循环,也就是形成了广播风暴,造成大量的网络设备,和带宽资源的浪费.

  上面说的两条链路成为"冗余链路",在显示网络设计中大量存在,本来的设计目的是当一条链路失效以后,另一条冗余链路可以马上接管所有工作,当然实际中冗余链路会带来广播风暴隐患.

  STP的工作原理是把整个交换网络看作是一个生成树实例,称之为公共生成树(CST),STP就是把一个物理网络拓扑结构变成无欢路的逻辑拓扑结构,采用两项主要技术:一是通过选举,使得交换网络中各个交换机处于特定的角色,另一个就是把交换机之间连接的端口划分为不同的角色,使可能形成环路的交换机端口在正常工作时处于堵塞状态.

802.1q协议(VLAN 虚拟局域网):

  

如图,如果网桥只在具有相同颜色的端口之间转发帧,就会把原来的局域网分割成多个多个相互隔离的小的局域网,称之为虚拟局域网(VLAN).

  虚拟局域网顾名思义,是一个虚拟的或者说逻辑的LAN,并不是一个物理的LAN,上面图中用的是网桥,实际更多的使用交换机,那么网桥和交换机有什么区别呢?

    这是一个网络上的一个总结:

局域网交换机的基本功能与网桥一样,具有帧转发、帧过滤和生成树算法功能。但是,交换机与网桥相比还是存在以下不同: 
  (1)交换机工作时,实际上允许许多组端口间的通道同时工作。所以,交换机的功能体现出不仅仅是一个网桥的功能,而是多个网桥功能的集合。即网桥一般分有两个端口,而交换机具有高密度的端口。 
  (2)分段能力的区别 
  由于交换机能够支持多个端口,因此可以把网络系统划分成为更多的物理网段,这样使得整个网络系统具有更高的带宽。而网桥仅仅支持两个端口,所以,网桥划分的物理网段是相当有限的。 
  (3)传输速率的区别 
  交换机与网桥数据信息的传输速率相比,交换机要快于网桥。 
  (4)数据帧转发方式的区别 
  网桥在发送数据帧前,通常要接收到完整的数据帧并执行帧检测序列FCS后,才开始转发该数据帧。交换机具有存储转发和直接转发两种帧转发方式。直接转发方式在发送数据以前,不需要在接收完整个数据帧和经过32bit循环冗余校验码CRC的计算检查后的等待时间。

 其实,我们只要把一个VLAN看成一个交换机(虚拟的),许多问题就比较好理解了,因为虚拟交换机和物理交换机有相同的基本属性,同一物理交换机上的不同VLAN之间就好像只有逻辑连接,没有物理连接的不同物理交换机一样,既然没有物理连接,那么不同的VLAN肯定是不能相互通信的,即使这些VLAN的成员处于同一IP网段.

  虚拟局域网的帧头部格式:

 

相关文章
|
4天前
|
存储 算法 网络虚拟化
【计算机网络】学习笔记,第三篇:数据链路层
现在的光纤宽带接入 FTTx 都要使用 PPPoE 的方式进行接入。在 PPPoE 弹出的窗口中键入在网络运营商购买的用户名和密码,就可以进行宽带上网了 利用 ADSL 进行宽带上网时,从用户个人电脑到家中的 ADSL 调制解调器之间,也是使用 RJ-45 和 5 类线(即以太网使用的网线)进行连接的,并且也是使用 PPPoE 弹出的窗口进行拨号连接的
17 5
|
12天前
|
网络协议 算法 C语言
C语言在网络编程中如何实现数据完整性
C语言在网络编程中如何实现数据完整性
20 0
|
13天前
|
安全 网络安全 数据安全/隐私保护
网络安全与信息安全:保护你的数据,保护你的未来
【5月更文挑战第30天】在数字化的世界中,网络安全和信息安全是每个人都需要关注的问题。本文将深入探讨网络安全漏洞、加密技术以及安全意识等方面的问题,帮助读者了解如何保护自己的数据,防止网络攻击。
|
14天前
|
安全 网络安全 量子技术
网络安全与信息安全:保护数据的关键策略
【5月更文挑战第30天】 在数字化时代,网络安全和信息安全已成为维护个人隐私、企业资产和国家安全不可或缺的一环。本文将深入探讨网络安全漏洞的概念、加密技术的最新进展以及提升安全意识的重要性。通过分析当前的网络威胁和挑战,我们展示了如何利用多层次的安全措施来防御潜在的攻击。文章不仅提供了对现有安全技术的深刻见解,还强调了教育和个人责任在构建坚固防线中的作用。
20 3
|
15天前
|
SQL 安全 网络安全
网络安全与信息安全:保护数据,从了解漏洞到强化意识
【5月更文挑战第29天】 在数字化时代,数据成为了新的货币,而网络安全和信息安全则是保护这些“货币”的保险箱。本文深入探讨了网络安全的核心议题,包括常见的安全漏洞、加密技术的基本原理以及提升个人和企业的安全意识。通过分析网络威胁的实际案例,我们强调了预防措施的重要性,并分享了如何通过教育和技术手段来构建一个更加安全的数字环境。
|
3天前
|
分布式计算 NoSQL 大数据
MaxCompute产品使用合集之自定义udf连接云上vpc网络的redis获取数据的步骤是什么
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
3天前
|
数据采集 DataWorks 安全
DataWorks产品使用合集之如何拉取经典网络的数据
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
6天前
网络编程中的互联网协议 , IP地址 , 域名 , 端口 , 架构 , 网页数据请求 , 响应码
网络编程中的互联网协议 , IP地址 , 域名 , 端口 , 架构 , 网页数据请求 , 响应码
|
8天前
|
Java 程序员 Linux
网络编程套接字(3)——Java数据报套接字(UDP协议)
网络编程套接字(3)——Java数据报套接字(UDP协议)
11 0
|
13天前
|
监控 安全 算法
保护数据:网络安全与信息安全探究
网络安全和信息安全日益成为当今社会关注的焦点话题。本文从网络安全漏洞、加密技术和安全意识等方面出发,深入探讨了如何保护个人和组织的数据安全。通过对不同类型的网络威胁和最新的安全技术进行分析,提出了有效的防范措施和加强安全意识的建议,以期为读者提供全面的网络安全知识,并帮助他们更好地保护自己的信息资产。
20 1