3.1以太网卡

网络接口卡(Network Interface Card,NIC):通常称为网卡,是计算机、交换机、路由器等网络设备与外部网络世界相连的关键部件。

网卡分为很多种:例如 令牌环接口卡、FDDI接口卡、以太网接口卡等等。

以太网接口卡,简称:以太网卡、以太卡

网卡的主要工作原理是整理计算机上发往网线上的数据,并将数据分解为适当大小的数据包之后向网络上发送出去。

逻辑上,网卡包含7个功能模块:CU(control Unit,控制单元)、OB(output buffer,输出缓存)、IB(input buffer,输入缓存)、LC(line coder,线性编码器),LD(line decoder,线性解码器)、TX(transmitter,发射器)、RX(receiver,接收器)

计算机通过网卡发送信息流程:

应用软件产生原始数据----原始数据经过TCP/IP协议中的应、传、网层处理后,得到一个一个的数据包(Package)------网络层将这些数据包传给网卡CU------CU将每个数据包封装成帧(Frame,以太网中就是以太帧,Ethernet Frame,见3.2)-----之后CU将这些帧传给OB------OB将帧排成队列,将帧传给LC------LC会对接受到的帧进行编码,逻辑上,一个帧就是长度有限的“0”和“1”,LC编码就是讲这些帧对应的物理状态实现转换,并将这些信号传给TX------TX接受到物理信号,对物理型号的功率进行调整,然后再发送出去,例如双绞线。

计算机通过网卡接受信息流程:

RX从传输介质(例如双绞线)接受到信号,物理信号,对信号功率进行调整以后传给LD------LD对接受到的信号进行解码,就是将物理信号转换成“0”和“1”的组合,以帧为单位传给IB------IB对接受到的帧进行排列,之后传给CU-------CU对帧进行分析处理,一个帧的处理结果有且只有两种结果:①直接将帧丢弃  ②将帧的帧头和帧尾去掉,得到数据包,然后将数据包上传给TCP/IP模型的网络层------经过网络层、传输层、应用层的处理,被应用软件使用。

3.1.2 交换机上的网卡

一台交换机上有多个用来转发数据的网络接口(网口),每个网口总有一个网卡跟他对应。

需要说明的是:如果一台计算机上有多个端口(网口),一般这些网口都是以独立器件的形式出现。而在交换机上,网卡一般都是以集成芯片的形式出现的。



3.2以太网帧

IEEE802项目 :美国电气电子工程师协会(IEEE),在1980年2月(802)指定的标准化项目。

IEEE802旨在指定一系列局域网LAN标准:以太网标准(802.3)、令牌环网络标准(802.5)、令牌总线网络标准(802.4)

凡是符合IEEE802标准的网卡,都必须有一个MAC地址(Mdeium Access Control)。不遵从IEEE802标准的网卡不需要有MAC地址。

MAC地址长度为48bit(6个字节),具有全球唯一性。

MAC地址的组成:

制造商跟IEEE申请,获得一个长度为24bit的厂商代码,也称为:OUI。之后厂商生产好网卡后,会将每一个网卡中烧录一个48bit的BIA地址,BIA地址的前三位就是该制造商的OUI,后三个字节由厂商自己决定。无法更改,只能读取。

OUI:organizationally-Unique Identifier

BIA:Burned-In Address,固化地址

2.【以太网】笔记

BIA只是MAC地址的一种,更准确说,MAC地址是一种单播MAC地址。MAC地址一共分三类:单播MAC地址、组播MAC地址、广播MAC地址。

1.单播MAC地址是指第一个字节的最低位是0的MAC地址。代表了一块特定的网卡。

2.组播MAC地址是指第一个字节的最低位是1的MAC地址。代表了一组网卡。

3.广播MAC地址是指每一个比特都是1的MAC地址。广播MAC地址是组播MAC地址的一个特例。代表了所有网卡。

2.【以太网】笔记

MAC地址是有48bit。为了方便,通常采用十六进制数的方式标识一个MAC地址。每两个十六进制数1组(即一个字节)。一共六组,中间使用“-”或者“:”来连接。也可以使用每四位十六进制一组。

2.【以太网】笔记

3.2.1 以太帧的格式

以太网技术所用的帧,称为以太网帧,或者以太帧(Ethernet Frame)

以太帧有两个标准:一个是由IEEE802.3定义,称为IEEE802.3格式;一个是由DEC、Intel、Xerox三家公司联合定义,称为Ethernet II格式,也称为:DIX格式。

两种格式存在一定的差别,但是都可以用在以太网。DIX格式用的更广泛一些。承载了某些特殊协议信息的以太帧采用IEEE802.3格式。

帧格式

  •  Ethernet II

是DIX以太网联盟推出的,它由6个字节的目的MAC地址,6个字节的源MAC地址,2个字节的类型域(用于表示装在这个Frame、里面数据的类型),以上为Frame Header,接下来是46--1500 字节的数据,和4字节的帧校验CRC)

2.【以太网】笔记

  • IEEE 802.3/802.2

   802.3的Frame Header和Ethernet II的帧头有所不同,它把EthernetII类型域变成了长度域(与Novell Ethernet相同)。其中又引入802.2协议(LLC)在802.3帧头后面添加了一个LLC首部,由DSAP(Destination Service Access Point) 1 byte,SSAP(Source SAP) 1 byte,一个控制域 1 byte! SAP用于表示帧的上层协议。

2.【以太网】笔记

根据目的MAC地址的种类不同,以太帧可以分为三类:单播以太帧、组播以太帧、广播以太帧



3.3 以太网交换机

3.3.1 三种转发操作

交换机(Switch)会对通过传输介质进入其端口的每一个帧都进行转发操作,交换机的基本作用就是用来转发帧的。

转发操作有三种:泛洪(Flooding)、转发(Forwarding)、丢弃(Discarding)。

泛洪(Flooding):一对多的转发行为,从某一端口进来的帧,通过其他端口转发出去。

转发(Forwarding):一对一的转发行为,从某一端口进来的帧,通过另外一个端口转发出去。

丢弃(Discarding):交换机直接吧某一端口进来的帧直接丢弃,不进行转发。

3.3.2 交换机的工作原理(转发原理)

2.【以太网】笔记

2.【以太网】笔记

后面有详细的讲解整个工作流程,可以参考《HCNA网络技术学习指南》P66-P70

其他重要的知识点:

⒈如果计算机的网卡接受到一个单播帧,会将该单播帧的目的MAC和自己的MAC地址做一个比较,如果相同,会将该单播帧中的载荷数据送至网络层进行处理;否则直接丢弃。

2.当计算机的网卡接受到一个广播帧,会直接根据该广播帧的类型字段直接上送到响应的模块进行处理。

3.交换机的网卡接受到单播帧时,不会将该单播帧的目的MAC和自己的MAC地址做一个比较,而是直接去查MAC表,然后做出处理动作。

4.交换机的网卡接受到一个广播帧,直接对该广播帧进行一个泛洪操作。

3.3.3 多交换机的数据转发实例:

后面有详细的讲解整个工作流程,可以参考《HCNA网络技术学习指南》P70-P75

《HCNA网络技术学习指南》 具体下载地址: http://h5ip.cn/rcee



3.4 MAC地址表

MAC地址表也被称为MAC地址映射表,每一个条目被称为一个地址表项。

MAC地址表要设计老化机制的原因:

1.现实中,交换机或计算机在网络中的位置可能会发生变化。当发生变化以后,原本MAC交换机中的地址表项可能就会错误地反应当前MAC地址和端口的映射关系。

2.MAC地址表项中的项目太多,交换机查一次所需要的时间就会太长(交换机为了决定对单播帧实施某种操作,需要时间去查找),交换机的转发速度会受到一定的影响。

MAC地址表的老化机制:

设置一个倒数机制。当表中不存在这样一个地址表时,新建这个地址表,并将开始倒数计时,默认值为300s;

当表中已经存在这样一个地址表,则将其内容进行更新,同时将倒计时重置为300s

当倒计时中的时间降为0时,删除该表项(老化掉了)

由此可见,倒计时的初始值越小,该MAC地址表的动态性越强,但是太小或者太大都是不理想的。

现实中,一台低档的交换机的MAC地址表通常最多可以存放数千条地址表项。中档:数万条。高档:几十万条。

计算机中的MAC地址表没有老化机制。



3.5 ARP

ARP:Address Resolution Protocol 地址解析协议,属于网络层协议

其基本作用是:根据已知的IP地址获得其对应的MAC地址 

每一台主机在本地的ARP 报文缓冲区里都会维护一张ARP 列表,里面存放的是IP 地址与MAC 地址的映射关系。

工作过程:

1.当源主机目标主机发送数据包时,在数据链路层传输时需要知道目标主机的MAC 地址。因此,源主机 会首先在本地的ARP 列表中查询该目标主机IP 地址所对应的MAC 地址。

如果存在,则说明查询成功,于是源主机便向这个MAC 地址发送数据包即可。

如果不存在,源主机会在本地网段内发起一个ARP 请求的广播包,用来查询目标主机IP 地址对应的MAC 地址。

2.于是,在本地网段内的所有主机都会收到这个ARP 请求包。当主机收到这个ARP 请求包后,会首先提取出ARP 请求包里面的目标主机IP地址,查看这个IP 是否与自己的IP 一致,如果不一致,则丢弃这个请求包,ARP缓存中保存下源主机的MAC地址和IP地址对。如果一致,则该主机便会将这个请求包里的源主机IP 地址和源主机MAC 地址一添加到本地的ARP 列表中(如果已经存在了,便会覆盖它)。然后,这台主机便会返回一个单播帧包含了本机MAC 地址的ARP 响应数据包给源主机,告诉它自己的MAC 地址。

3.源主机收到这个ARP 响应数据包后,将目标主机的IP 地址和MAC 地址一添加到自己的ARP 列表中。然后,便根据此信息进行数据的传输。如果源主机一直得不到ARP 响应数据包,则说明ARP 查询失败。

同时,ARP缓存表也具有动态机制,生存期默认时间是180s,可以修改。

3.5.1 ARP的报文类型

2.【以太网】笔记

硬件类型:表示硬件地址的类型,值为1表示以太网地址

协议类型:表示要映射的协议地址类型。它的值为0x0800表示IP地址类型

硬件地址长度和协议地址长度以字节为单位,对于以太网上的IP地址的ARP请求或应答来说,他们的值分别为6和4;

操作类型(op):1表示ARP请求,2表示ARP应答

发送端MAC地址:发送方设备的硬件地址;

发送端IP地址:发送方设备的IP地址;

目标MAC地址:接收方设备的硬件地址。

目标IP地址:接收方设备的IP地址。

相关文章:

  • 2022-02-08
  • 2021-11-28
  • 2021-11-18
  • 2021-09-21
  • 2022-02-12
  • 2021-11-01
  • 2021-10-13
  • 2022-01-11
猜你喜欢
  • 2021-12-02
  • 2021-07-19
  • 2021-05-29
  • 2022-01-09
  • 2021-08-21
  • 2021-08-01
  • 2021-03-31
相关资源
相似解决方案