以太网基础

1. 以太网简介

以太网(Ethernet):是一种局域网组网规范。“以太”一词来源于19世纪的物理学家假设的电磁辐射媒体-光以太。
根据传输速率的不同,以太网分为标准以太网(10Mbit/s)、快速以太网(100Mbis)、千兆以太网(1000Mbs)和万兆以太网(10Gbit/s),还有100Gbit/s以太网。

以太网通信符合OSI(open system interconnection)模型(一个试图使各种计算机在世界范围内互连为网络的标准框架)。
说下OSI模型,包括以下七层:
在这里插入图片描述

  • 物理层:实现电子信号和数据之间的转换。相当于邮局中的搬运工人。
  • 数据链路层:将数据分帧,并提供硬件寻址。相当于邮局中的装拆箱工人。
  • 网络层:使用权数据路由经过大型网络。相当于邮局中的排序工人。
  • 传输层:提供终端到终端的可靠连接。相当于公司中跑邮局的送信职员。
  • 会话层: 允许用户使用简单易记的名称建立连接。相当于公司中收寄信、写信封与拆信封的秘书。
  • 表示层: 协商数据交换格式。相当公司中简报老板、替老板写信的助理。
  • 应用层: 用户的应用程序和网络之间的接口。

以太网描述了物理层、数据链路层、网络层、传输层、应用层,如下图所示:在这里插入图片描述

下文根据以太网的层进行介绍。

2.以太网的层

2.1 物理层

以太网通信时,外部信号通过以太网接口,经过PHY和CPU里的MAC进行通信。

2.1.1 以太网接口

以太网接口形式一般为RJ45。
在这里插入图片描述
HR911105A是一种自带网络变压器(包含了差模扼流圈和共模扼流圈)和LED的RJ45接口,下图是其外形和内部结构。
在这里插入图片描述
在这里插入图片描述
使用网络变压器的好处:

  • 增加传输距离,减小干扰
  • 增加phy芯片接收端和发送端的兼容性
  • 抑制共模信号,减小EMC

2.1.2 传输介质

根据传输速率不同,以太网传输物理介质不同。
在这里插入图片描述
(注:此表是根据网上资料总结得出,仅做参考)

上表中介质种类以下面为例进行说明。
100base-TX:100指的是传输速率为100Mbps,base指的是baseland基带,,T指的是传输介质为双绞线,分为非屏蔽双绞线UTP(Unshielded Twisted Pair)和屏蔽双绞线STP(Shielded Twicted Pair),表中F指的是光纤,单独的数字表示传输距离,X用来区分不同类别。

网线种类如下,不同类型的线对应的速率不同,对信号的抗干扰、抗衰减等作用越好:
在这里插入图片描述

2.1.3 PHY

与CPU直接连接的有两种形式,一种是CPU里有以太网接口内核,一种是没有。有内核的用PHY芯片,没有的用以太网控制器。
常用的以太网控制器有W5300,与CPU的接口是总线接口,内部包括PHY,MAC和TCP/IP核,如下图所示:
在这里插入图片描述
PHY:Physical Layer物理层接口,与物理介质相连。作为网络接口和处理器之间的媒介。
常用的PHY芯片有DP84838i,内部框图如下图所示,上部与CPU相连,下部TD,RD与接口相连:
在这里插入图片描述
图中涉及到MII/RMII,那这两个是什么东西?
MII(Media Independent Interface)即媒体独立接口,是MAC与PHY连接的标准接口。是一种接口形式。该接口支持10Mb/s与100Mb/s的数据传输速率,数据传输的位宽为4位。
MII接口如下图所示:
在这里插入图片描述
在这里插入图片描述
除了MII,MAC与PHY连接的接口还有RMII,GMII,RGMII,SGMII等等。
RMII: 简化媒体独立接口。比MII有更少的I/O传输。RMII口的RX,TX都是两根线,而MII口是4根线。
GMII(Gigabit MII) 千兆网MII接口:GMII采用8位接口数据,工作时钟125MHz,因此传输速率可达1000Mbps。
RGMII:相比于GMII,RX,TX都是四根线。
SMII即Serial MII,串行MII的意思,跟RMII相比,信号线数据进一步减少到3根。
SGMII即Serial GMII,串行GMII,收发各一对差分信号线。

2.2 数据链路层

数据链路层:数据传输的起始位置就是由它定义的并且通过一些规则来为数据传输提供保障。

2.2.1 硬件原理

上节中涉及到了MAC,那么什么是MAC?
MAC:Media Access Control媒体存取控制。负责控制与连接物理层的物理介质。MAC一般集成在处理器里。
PHY相当于把差分信号整合成了串行传输信号,MAC相当于把串行信号变成并行信号挂在总线上。
MAC硬件图如下:
在这里插入图片描述

2.2.2 MAC地址

MAC地址:网卡出厂的时候被厂家固化的硬件地址。

2.2.2.1 特点

1.通信双方的物理地址应在同一局域网中。
2.物理地址是用来标记网络中的设备的。
3.传输的数据包都会包含发送方和接收方的物理地址。
4.物理地址(MAC地址)具有唯一性,因此MAC地址都是有生产厂家生产时固化的网络硬件,是硬件预留的地址。

2.2.2.2 格式

由六个字节(48位)组成, 整个地址可以分为两段,第一段是前24位。第二段是后24位。
• 前24位成为组织唯一标识符(OUI ,Organizationally Unique Identifier), 是由IEEE注册管理机构分配给不同厂家的代码,是区分厂家用的。
• 后24位就交给厂家自己分配,称为扩展标识符 。
在这里插入图片描述

2.2.2.3 工作过程
  • 在发送数据的时候,MAC协议事先判断是否可以发送数据,如果可以,将给数据加上一些控制信息,最终将数据以及控制信息以规定的格式发送到物理层;
  • 在接收数据时,MAC协议首先判断输入的信息并是否发生传输错误,如果没有,则去掉控制信息发送至LLC(逻辑链路控制)层。

2.3 网络层

数据链路层有MAC地址,网络层有IP地址。

2.3.1 IP地址

IP地址(Internet Protocol Address):互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。
DNS:Domain Name System域名系统。IP地址对应的网址。

2.3.1.1 地址构成

IP地址可分为两个部分,分别是网络ID和主机ID。
• 网络ID :用于识别网络设备所在的网络,每一个物理网络仅有一个网络ID。它的位数决定了可以分配的网络数量 。
• 主机ID : 每一个物理网络可能有很多的网络设备(工作站,路由器,计算机等),每一个网络设备都有一个主机ID与其对应。主机ID的位数直接决定了一个网络中最大的主机数量。

2.3.1.2 基本类别

分为A.B.C三类。
• A类:前8位表示网络ID,后24位表示主机ID(分配给政府机关单位)
• B类:前16位表示网络ID,后16位表示主机ID;(分配给中等规模企业)
• C类:前24位表示网络ID,后8位表示主机ID;(可分配给任何人有需要的人)
另外两类为隐藏地址,也就是D类和E类地址。
• D类:不分网络ID和主机ID,该地址用于多播。
• E类:也不区分网络ID和主机ID,此类地址用于实验。
A,B,C三类按照开头进行了固定,用户可通过此进行识别。A类开头为0然后接着7(8-1)位网络号和24位主机号。B类则是开头为10,然后后接14(16-2)位网络号和16位主机号。C类开头为110,后接21(24-3)位网络号和8位主机号。
• A类:IP地址范围0.0.0.0~127.255.255.255
• B类:IP地址范围128.0.0.0~191.255.255.255
• C类:IP地址范围192.0.0.0~223.255.255.255
• D类:IP地址范围224.0.0.0~239.255.255.255
• E类:IP地址范围240.0.0.0~255.255.255.254
特殊IP地址
所谓特殊IP地址,其实是说一些具有特殊意义的不会分配给互联网主机的IP地址。这些被保留的IP地址有一部分用于私有网络,这些地址被称为私有地址。
• A类地址: 私有地址范围10.0.0.0~ 10.255.255.255。保留地址范围127.0.0.0~127.255.255.255
• B类地址:私有地址范围172.16.9.9~172.31.255.255。保留地址169.254.X.X
• C类地址:私有地址范围192.168.0.0~192.168.255.255
路由的作用:将分为4段8位的IP地址集中起来进行分配,避免最小分配地址为256.

2.3.2 ARP解析原理

IP地址和MAC地址之间的关联关系保存在主机系统里面,叫做ARP表,由驱动程序和操作系统完成.
ARP(Address Resolution Protocol)协议:介乎于网络层和数据链路层的一个协议,作用是解析IP地址,找到对应的MAC地址。
ARP解析原理如下:
1、每个主机都会在自己的ARP缓冲区中建立一个ARP列表,以表示IP地址和MAC地址之间的对应关系。
2、当源主机要发送数据时,首先检查ARP列表中是否有对应IP地址的目的主机的MAC地址,如果有,则直接发送数据,如果没有,就向本网段的所有主机发送ARP数据包,该数据包包括的内容有: 源主机IP地址,源主机MAC地址,目的主机的IP地址。
3、当本网络的所有主机收到该ARP数据包时,首先检查数据包中的IP地址是否是自己的IP地址,如果不是,则忽略该数据包,如果是,则先从数据包中取出源主机的IP和MAC地址写入到ARP列表中,如果已经存在,则覆盖,然后将自己的MAC地址写入ARP响应包中,告诉源主机自己是它想要找的MAC地址。
4、源主机收到ARP响应包后。将目的主机的IP和MAC地址写入ARP列表,并利用此信息发送数据。如果源主机一直没有收到ARP响应数据包,表示ARP查询失败。

2.3.3 IP协议

IP协议是一种寻址系统。作用有:

  • 通过它可以在复杂的网络间传递数据
  • 将多个交换网络连接起来,在本机与目的地址间传递数据。
  • 对数据重新组装来适应不同网络对数据包大小的要求。

IP协议工作方法
在路由式网络中,IP协议在同网段与不同网段的工作方式是不一样的。

  1. 同网段
    如果与目标主机在同一网段,那么目标主机的IP地址会被ARP协议解析为MAC地址,然后再根据MAC地址将数据包发送。
  2. 不同网段
    不在同一网段 ,数据包如此发送:
    • 首先用ARP协议将网关(通常就是路由器)的IP地址解析为MAC地址,然后再根据解析出的MAC地址 ,主机将数据包发送到网关。
    • 网关根据数据包里的网段ID找到对应目标网络,若成功,则将数据包传送到目标网段;若未成功,则重复上一步将数据发送到网关。
    • 数据包被发到正确的网段中后,ARP协议将目标IP地址解析为MAC地址,根据MAC地址,数据包最终被传递到目标主机。

IP协议包结构
在这里插入图片描述
当使用IP协议传输数据时,传输数据的包就被称为IP数据包,它由固定部分和可变部分组成:
固定部分由以下组成:
(1)版本占4位。
(2)首部长度占4位。
(3)区分服务占8位,用来获得更好的服务。
(4)总长度。总长度指首部和数据之和的长度。
(5)标识占16位。
(6)标志占3位,但只有2位有意义。
(7)片偏移占13位。
(8)生存时间占8位,生存时间表明是数据报在网络中的寿命。由发出数据报的源点设置这个字段。其目的是防止无法交付的数据报无限制地在因特网中兜圈子,因而白白消耗网络资源。
(9)协议占8位,协议字段指出此数据报携带的数据是使用何种协议,以便使目的主机的IP层知道应将数据部分上交给哪个处理过程。
(10)首部检验和占16位。这个字段只检验数据报的首部,但不包括数据部分。这是因为数据报每经过一个路由器,路由器都要重新计算一下首部检验和(一些字段,如生存时间、标志、片偏移等都可能发生变化)。不检验数据部分可减少计算的工作量。
(11)源地址。占32位。
(12)目的地址。占32位。
可变部分
IP首部的可变部分就是一个可选字段。此字段的长度可变,从1个字节到40个字节不等,取决于所选择的项目。

IP地址协议版本有IPV4和IPV6。
IPv6与IPv4比较

  1. 地址空间不同,IPv4中规定IP地址长度为32,而IPv6中IP地址的长度为128。
  2. 路由表大小不同,IPv6的路由表相比IPv4的更小。IPv6的组播支持以及对流的支持要强于IPv4。
  3. 安全性不同,IPv6的安全性更高,在使用IPv6的网络时,用户可对网络层的数据进行加密。
  4. 协议扩充不同。IPv6允许协议进行扩充而IPv4不允许。

2.4 传输层

网络协议:计算机网络中进行数据交换而建立的规则。网络协议使上网的设备能够相互交换信息。
在网络层使用IP协议,在传输层使用TCP协议。IP协议主要解决网络路由和寻址问题,TCP协议主要解决如何在IP层之上可靠地传递数据包。
传输层协议包括两种,TCP和UDP协议
TCP(Transmission Control Protocol)协议是一种面向连接(连接导向)的、基于字节流的传输层通信协议。TCP将用户数据打包成报文段,它发送后启动一个定时器,另一端收到的数据进行确认、对失序的数据重新排序、丢弃重复数据。
TCP的特点:

  • TCP是面向字节流的协议。
  • 每一条TCP连接只能有两个端点,每一条TCP连接只能是点对点的
  • TCP提供可靠交付的服务
  • TCP提供全双工通信。数据在两个方向上独立的进行传输。因此,连接的每一端必须保持每个方向上的传输数据序号。

TCP协议格式如下图:
在这里插入图片描述
TCP协议的三次握手和四次挥手
三次握手:A告诉B要发送信息,B接收到告诉A你可以发信息,A收到B的反馈,进行确认。
四次挥手:A发送完成给B, B接收到告诉A你可以结束,B结束自己的任务后关闭连接并发送完成,A接收后确认。过程中每次都需要返回确认数据段ACK。

UDP(UserDatagramProtocol)协议:用户数据报协议,也称透明协议,不需要建立连接。

UDP VS TCP
在这里插入图片描述

其他术语
网关:一种充当转换重任的计算机系统或设备,是一个网络连接到另一个网络的“关口”。
子网掩码:一个32位地址,用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是在广域网上。
路由器:在网络层,能够判断网络地址以及选择IP路径。
交换机:在数据链路层,用来将数据分配给对应的MAC地址。
集线器:把所有节点集中在以它为中心的节点上,再采用广播方式发送数据。

2.5 应用层

HTTP(Hyper Text Transfer Protocol)超文本传输协议是一个应用层协议,一个简单的请求-响应协议,它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。
它的主要特点可概括如下:
• 简单快速
• 灵活
• 无连接
• 无状态

发送请求的过程是从客户端发送一个HTTP请求,在传输层,TCP协议对HTTP报文进行分割,并在报文上打上序号和端口号后给网络层,网络层增加mac地址后给链路层,通过以太网接口传出。
接收请求的过程是从最底层(网络接口层)开始,每一层的协议负责解析属于自己的东西,比如网络层(IP)处理ip信息,传输层(TCP)处理点对点的端口,应用层(HTTP)处理Request或Response。
在这里插入图片描述

  • 5
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值