Ethernet以太网作用

物理层:

物理层主要是基于电器特性发送高低电平信号,电平即"电压平台",指的是电路中某一点电压的高低状态,在网络信号中高电平用数字"1"表示,低电平用数字"0"表示。电平的高低是个相对概念,3V对于7V是低电平,但对于1V就是高电平。

数据链路层:

由于单纯的电平信号"0"和"1"没有任何意义,在实际应用中,我们会将电平信号进行分组处理,多少位一组、每组什么意思,这样数据才有具体含义。数据链路层的功能就是定义电平信号的分组方式。

1:以太网协议:

数据链路层使用以太网协议进行传输,基于MAC地址的广播方式实现数据传输,只能在局域网内广播。早起各个公司都有自己的分组方式,后来形成了统一标准,即以太网协议Ethernet。

2:Ethernet以太网

由一组电平信号构成一个数据包,叫做"帧",每一个数据帧由报头Head和数据Data两部分组成。

 3:Ethernet以太网帧格式

以太网上使用两种标准帧格式。

  1. 第一种是上世纪80年代初提出的DIXv2格式,即EthernetII帧格式。EthernetII后来被IEEE802标准接纳,并写进了IEEE802.3x-1997的3.2.6节。
  2. 第二种是1983年提出的IEEE802.3格式。

这两种格式的主要区别在于,EthernetII格式中包含一个Type字段,标识以太帧处理完成之后将被发送到哪个上层协议进行处理。

IEEE802.3格式中,同样的位置是长度字段。不同的Type字段值可以用来区别这两种帧的类型,当Type字段值小于等于1500(或者十六进制的0x05DC)时,帧使用的是IEEE802.3格式。当Type字段值大于等于1536(或者十六进制的0x0600)时,帧使用的是EthernetII格式。

以太网中大多数的数据帧使用的是EthernetII格式。

以太帧中还包括源和目的MAC地址,分别代表发送者的MAC和接收者的MAC,此外还有帧校验序列字段,用于检验传输过程中帧的完整性。

4:Ethernet_II帧格式

 

  • Ethernet_II帧类型值大于等于1536(0x0600)。
  • 以太网数据帧的长度在64-1518字节之间。

Ethernet_II的帧中各字段说明如下:

  1. DMAC(DestinationMAC)是目的MAC地址。DMAC字段长度为6个字节,标识帧的接收者。
  2. SMAC(SourceMAC)是源MAC地址。SMAC字段长度为6个字节,标识帧的发送者。
  3. 类型字段(Type)用于标识数据字段中包含的高层协议,该字段长度为2个字节。类型字段取值为0x0800的帧代表IP协议帧;类型字段取值为0806的帧代表ARP协议帧。
  4. 数据字段(Data)是网络层数据,最小长度必须为46字节以保证帧长至少为64字节,数据字段的最大长度为1500字节。
  5. 循环冗余校验字段(FCS)提供了一种错误检测机制。该字段长度为4个字节。

5:EEE802.3帧格式

EEE802.3帧长度字段值小于等于1500(0x05DC)。

EEE802.3帧格式类似于Ethernet_II帧,只是Ethernet_II帧的Type域被802.3帧的Length域取代,并且占用了Data字段的8个字节作为LLC和SNAP字段。

  1. Length字段定义了Data字段包含的字节数。
  2. 逻辑链路控制LLC(LogicalLinkControl)由目的服务访问点DSAP(DestinationServiceAccessPoint)、源服务访问点SSAP(SourceServiceAccessPoint)和Control字段组成。
  3. SNAP(Sub-networkAccessProtocol)由机构代码(OrgCode)和类型(Type)字段组成。Orgcode三个字节都为0。Type字段的含义与Ethernet_II帧中的Type字段相同。IEEE802.3帧根据DSAP和SSAP字段的取值又可分为以下几类:
  • 当DSAP和SSAP都取特定值0xff时,802.3帧就变成了Netware-ETHERNET帧,用来承载NetWare类型的数据。
  • 当DSAP和SSAP都取特定值0xaa时,802.3帧就变成了ETHERNET_SNAP帧。ETHERNET_SNAP帧可以用于传输多种协议。
  • DSAP和SSAP其他的取值均为纯IEEE802.3帧。

6:以太网和互联网区别

 主要差别:

以太网是一种局域网,只能连接附近的设备。

因特网是广域网,我们可以通过因特网连接到美国去得到消息。


两者都算是用来连接电脑的网络,但是两者的范围是不同的。以太网是局限在一定的距离之内的,我们可以有成千上百个以太网;但是因特网呢,是最大的广域网了,我们只有一个因特网,所以因特网又可以说是网络中的网络。

因特网是一个超大的国际化的系统,它能够把世界上的各个地方的网络连接起来,私人的,公共的,学术的还是商业的网络或者政府的网络,都可以互相连接,共享资源。形象的来说,因特网就是我们在打开网页,发送邮件,在线听音乐看电影所用的网络,它包括了非常广泛的信息,现在的我们已经习以为常了。


而以太网呢,基本上就是只允许本地的几台电脑互相连接。电脑之间相互传送消息是有一组技术支持的。一般来说,连接到以太网上的电脑都在同一栋楼里,或者在周围附近。但是随着以太网网线的发展,以太网的范围可以扩展到十公里了。但是因为都是用网线互联,要想连接到很远的地方是不现实的。

生活化一点,以太网就是把你家的电脑,笔记本连接到猫上,然后再通过猫连接到因特网上去,这样你才能和国外的朋友Skype。因此,你家的电脑,笔记本和猫就组成了一个以太网。可以想象,世界上有成千上万个以太网。商业上应用以太网,将他们所有的电脑连接到主服务器上。
以太网可以有一个或者几个管理员。因特网上可能有一些部分是由管理员的,但是没有一个可以操控整个因特网的管理员。
另外一个区别就是安全性。以太网是比较安全的,因为他是一个封闭的内部网络,外部人员是没有权限的。但是因特网是公开连接的,每个人都可以浏览。

7: ARP协议

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

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

ARP的功能是在32bit的IP地址和采用不同网络技术的硬件地址之间提供动态映射,为上层将底层的物理地址差异屏蔽起来,这样上层的因特网协议就可以灵活地使用IP地址进行通信了。ARP协议的基本功能是使用目标主机的IP地址,查询其对应的MAC地址,以保证底层链路上数据包通信的进行。为了实现在网络接口物理地址与IP地址间的转换,ARP协议中引入了ARP缓存表的概念。ARP缓存表中记录了一条一条的<IP地址,MAC地址>对,他们是主机最近运行获得的关于周围其他主机的IP地址到物理地址的绑定,当需要发送IP数据包时,ARP层根据目的IP地址来查找ARP缓存表,并将匹配的MAC地址装入以太网帧首部,最后发送以太网数据。

ARP缓存表的建立与ARP数据包是密切相关的。在以太网中,ARP数据包和IP数据包是两个独立的部分,它们都封装在以太网帧中发送。ARP数据包的种类有两种:一是ARP请求包,它是通过以太网广播的方式发送的,用于向具有某个IP地址的主机发送请求,希望该主机返回其MAC地址;二是ARP应答包,收到ARP请求的主机会比对该数据包中的IP地址与自己的IP地址是否符合,若是,则该主机向源主机返回一个ARP应答包。向源主机报告自己的MAC地址。源主机通过提取ARP应答包中的相关字段来更新ARP缓存表。在Windows控制台上输入arp -a,可以查看操作系统中使用的ARP缓存表。

举一个简单的例子来看看ARP的功能。假如我们的主机(192.168.1.11)需要向开发板(192.168.1.37)发送一个IP数据包,当发送数据时,主机会在自己的ARP缓存表中寻找是否有目标IP地址。如果找到了,也就知道了目标MAC地址为(04-02-35-00-00-01),此时,主机直接把目标MAC地址写入以太网首部发送就可以了;如果在ARP缓存表中没有找到相对应的IP地址,此时比较不幸,我们的数据需要被延迟发送,随后主机会先在网络上发送一个广播(ARP请求,以太网目的地址为FF-FF-FF-FF-FF-FF),广播的ARP请求表示同一网段内所有主机将会收到这样一条信息:“192.168.1.37的MAC地址是什么?请回答”。网络IP地址为192.168.1.37(开发板)的主机接收到这个帧后,它有义务做出这样的回答(ARP应答):“192.168.1.37的MAC地址是(04-02-35-00-00-01)”。这样,主机就知道了开发板的MAC地址,先前被延时的数据包就可以被发送了,此外,主机将这个地址对保存在缓存表中,以便后续数据包发送时使用。

ARP协议的核心就是对ARP缓存表的操作。发送数据包时,查找缓存表以得到目的MAC地址,此外,ARP还需要不断地处理ARP请求包和ARP应答包,以保证缓存表中各个表项的有效性。ARP的实质就是对缓存表的建立、更新、查询等操作。

在局域网中,以太bai网协议规定,数据包是从一块网卡传du送到另一块网卡zhi。而网卡地址就是数据包dao的发送地址和接收地址,也就是帧首部所包含的MAC地址,MAC地址是每块网卡的身份标识。
假设有个网卡A需要向网卡B发送一个数据包,该数据包里就会写入网卡B的MAC地址,然后把这个数据包发送给子网中所有的主机,即广播发送。子网中所有的主机都会收到该数据包,而只有网卡B会保留该数据包,其他主机在核对MAC地址后发现不是发给自己的,就会丢弃该数据包。
广播发送:每个数据包的发送都会发送给子网中的所有主机。

 

8:以太网的单播,广播,组播

单播

单播 MAC 地址是帧从一台发送设备发送到一台目的设备时使用的唯一地址。

例如,IP 地址为 192.168.1.5 的主机(源)向 IP 地址为 192.168.1.200 的服务器请求网页。要传送和接收单播数据包,目的 IP 地址必须包含于 IP 数据包头中。相应的目的 MAC 地址也必须出现于以太网帧帧头中。只有 IP 地址和 MAC 地址相结合,才能将数据传送到特定的目的主机。

广播

发送广播时,数据包以主机部分全部为一 (1) 的地址作为目的 IP 地址。这种地址计数法表示本地网络(广播域)中的所有主机都将接收和处理该数据包。许多网络协议,如动态主机配置协议 (DHCP) 和地址解析协议 (ARP) 等,都使用广播。关于 ARP 如何使用广播将第 2 层地址映射到第 3 层地址的内容,本章将稍后论述。

网络的广播 IP 地址需要在以太网帧中包含相应的广播 MAC 地址。在以太网中,广播 MAC 地址长 48 位,全部为一,以十六进制显示时则为 FF-FF-FF-FF-FF-FF。 

组播

我们回顾一下,组播地址允许源设备向一组设备发送数据包。属于某一组播组的设备都被分配了该组播组 IP 地址。组播地址的范围为 224.0.0.0 到 239.255.255.255。由于组播地址代表一组地址(有时称为主机组),因此只能用作数据包的目的地址。源地址始终为单播地址。

组播地址常用于远程游戏中,许多玩家远程连接同一个游戏并玩该游戏;通过视频会议远程学习也使用组播地址,许多学生连接到同一个课程。

如同单播和广播地址一样,组播 IP 地址也需要相应的组播 MAC 地址才能在本地网络中实际传送帧。组播 MAC 地址是一个特殊的十六进制数值,以 01-00-5E 开头。然后将 IP 组播组地址的低 23 位换算成以太网地址中剩余的 6 个十六进制字符,作为组播 MAC 地址的结尾。MAC 地址剩余的位始终为 "0"。

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值