加载中...

分层思想和网络模型


OSI参考模型

OSI参考模型各个层次的基本功能如下:

1.物理层:在设备之间传输比特流。

2.数据链路层:将比特组合成字节,再将字节组合成帧,使用链路层地址(以太网使用MAC地址)来访问介质,并进行差错检测。

3.网络层:提供逻辑地址的寻址,供路由器确定路径。

4.传输层:提供面向连接或非面向连接的数据传递以及进行重传前的差错检测。

5.会话层:负责建立、管理和终止表示层实体之间的通信会话。该层的通信由不同设备中的应用程序之间的服务请求和响应组成。

6.表示层:提供各种用于应用层数据的编码和转换功能,确保一个系统的应用层发送的数据能被另一个系统的应用层识别。

7.应用层:OSI参考模型中最靠近用户的一层,为应用程序提供网络服务。

OSI

TCP/IP参考模型

TCP/IP参考模型各个层次的基本功能如下:

1.TCP/P模型同样采用了分层结构,层与层相对独立但是相互之间也具备非常密切的协作关系。

2.TCP/IP模型将网络分为四(五)层。

3.TCP/IP模型不关注底层物理介质,主要关注终端之间的逻辑数据流转发。(针对四层模型)

4.TCP/IP模型的核心是网络层和传输层,网络层解决网络之间的逻辑转发问题,传输层保证源端到目的端之间的可靠传输。

5.TCP/IP模型将OSI中应用层、表示层、会话层合并为了一层——应用层。最上层的应用层通过各种协议向终端用户提供业务应用。

6.TCP/IP模型具备了OSI的全部优点并且简化了结构。

TCP/IP

tcp/ip 5层模型

设备与层的对应关系

设备与层的对应关系

封装与解封装

1.PDU的种类

PDU协议数据单元:每一层的层协议在其对等层之间交流的信息叫做协议数据单元

上三层(应用层):message 高层数据/数据信息

传输层:segment 段

网络层:packet 包/报文

数据链路层:frame 帧

物理层:bit 比特

2.封装与解封装的定义

封装:当一台主机要通过网络发送数据时,数据要从高层一层一层的向下传输,每一层的协议会把“数据”装到一个I特殊的协议报头中

解封装:当一台主机收到了“数据”,要从低层一步一步摘掉报头。也就是说解封装时封装的逆向过程

封装与解封装

封装就是一层一层的添加包头,解封装就是一层一层拆包头。

各层间通信

TCP/IP协议族的组成

TCP/IP协议族的组成

数据链路层是OSI参考模型中的第二层,介乎于物理层和网络层之间。数据链路层在物理层提供的服务的基础上向网络层提供服务,其最基本的服务是将源自物理层来的数据可靠地传输到相邻节点的目标机网络层。

数据链路层的传输单元:帧

工作在二层的网络设备:交换机

Ethernet_II介绍

1.上世纪80年代初提出的DIX v2格式,即Ethernet II帧格式。

2.Ethernet II后来被IEEE 802标准接纳,并写进了IEEE 802.3x-1997的3.2.6节。

IEEE802.3介绍

1.1983年提出IEEE 802.3格式。

2.Ethernet_II 和IEEE802.3两种格式的主要区别在于Ethernet II格式中包含一个Type字段,标识以太帧处理完成之后将被发送到哪个上层协议进行处理,IEEE 802.3格式中,同样的位置是长度字段。

帧格式

D.MAC是目的物理地址(6字节)
S.MAC是源物理地址(6字节)

如何区别Ethermet_II和IEEE802.3

1.不同的Type字段值可以用来区别这两种帧的类型。

2.当Type字段值小于等于1500(或者十六进制的ex05DC)时,帧使用的是IEEE 802.3格式。

3.当Type字段值大于等于1536(或者十六进制的0x0600)时,帧使用的是Ethernet II格式。

4.以太网中大多数的数据帧使用的是Ethernet II格式。

Ethernet_II介绍

1.上世纪80年代初提出的DIX v2格式,即Ethernet II帧格式。

2.Ethernet II后来被IEEE 802标准接纳,并写进了IEEE 802.3x-1997的3.2.6节。

IEEE802.3介绍

1.1983年提出IEEE 802.3格式。

2.Ethernet_II 和IEEE802.3两种格式的主要区别在于Ethernet II格式中包含一个Type字段,标识以太帧处理完成之后将被发送到哪个上层协议进行处理,IEEE 802.3格式中,同样的位置是长度字段。

帧结构分析

帧头帧尾

1.以太帧中还包括源和目的MAC地址,分别代表发送者的MAC和接收者的MAC———(目标MAC源MAC加type字段称之为帧头)

2.此外还有帧校验序列字段,用于检验传输过程中帧的完整性。———(FCS帧校验序列称之为帧尾)

Ethernet_II帧格式

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

1.DMAC(Destination MAC)是目的MAC地址。DMAC字段长度为6个字节,标识帧的接收者。

2.SMAC(Source MAC)是源MAC地址。SMAC字段长度为6个字节,标识帧的发送者。

3.类型字段(Type)用于标识数据字段中包含的高层协议,该字段长度为2个字节。类型字段取值为0x0800的帧代表IP协议帧;类型字段取值为ex0806的帧代表ARP协议帧。

4.数据字段(Data)是网络层数据,最小长度必须为46字节以保证帧长至少为64字节,数据字段的最大长度为1500字节。

5.循环冗余校验字段(FCS)提供了一种错误检测机制。该字段长度为4个字节。

IEEE802.3帧格式

IEEE802.3的帧中各字段说明如下:

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

2.Length字段定义了Data字段包含的字节数。

3.逻辑链路控制LLC(Logical Link Control)由目的服务访问点D.SAP (Destination Service Access Point)、 源服务访问点S.SAP(Source Service Access Point)和Control字段组成。

(1)SAP服务访问点,它是一个层次系统的上下层之间进行通信的接口,N层的SAP就是N+1层可以访问N层服务的地方。

(2)S.SAP可以理解为来源设备的服务点。(3)D.SAP可以理解为目的设备的服务点。

4.SNAP (Sub-network Access Protoco1)由机构代码(org Code)和类型(Type)字段组成。org Code三个字节都 为0。Type字段的含义与Ethernet_II帧中的Type字段相同。

MAC地址

请添加图片描述

1.如同每一个人都有一个名字一样,每一台网络设备都用物理地址来标识自己,这个地址就是MAC地址。

2.网络设备的MAC地址是全球唯一的。

3.MAC地址长度为48比特,通常用十六进制表示。

4.MAC地址包含两部分:前24比特是组织唯一标识符(OUI,organizationally Unique Identifier),由IEEE统一分 配给设备制造商。例如,华为的网络产品的MAC地址前24比特是0x00e0fc。后24位序列号是厂商分配给每个产品的唯一数值,由各个厂商自行分配(这里所说的产品可以是网卡或者其他需要MAC地址的设备)。

MAC组成

MAC地址=厂家标识+内部编号====实现了全球唯一!怎么查看自己的MAC地址?

ipconfig/all

MTU分析

​ 以太网和802.3对数据帧的长度都有一个限制,其最大值分别是1500字节和1492字节。链路层的这个特性称为MTU,即最大传输单元。不同类型网络的数帧长度大多数都有一个上限。如果IP层有一个数据报要传,而且数据帧的长度比链路层的MTU还大,那么IP层就需要进行分片即把数据报分成干片,这样每一片就都小于MTU

MTU:(最大传输单元)

Ethernet_II帧结构最终效果图如下:

Ethernet_II帧结构

面试官:你描述一下帧结构?

答:帧是由帧头+上三层数据+帧尾,帧头包括目的MAC、源MAC、类型,帧尾是FCS,MTU:1500字节,最小46字节。

eNSP实验

ping抓包查看帧结构

PC基础配置
拓扑图
抓包

数据链路层——数据帧的传输

数据帧传输

1.以太网在二层链路上通过MAC地址来唯一标识网络设备,并且实现局域网上网络设备之间的通信。

2.发送端使用接收端的MAC地址作为目的地址。

3.以太帧封装完成后会通过物理层转行成比特流在物理介质上传输。

单播

单播

单播指从单一源发送到单一目的端。

在冲突域中,所有主机都能收到源主机发送的单播帧,但是其他主机在收到帧后发现目的地址和本地MAC地址不一致,后会丢弃该帧,只有真正的目的主机才能接受并处理该帧。

广播

广播

广播,表示帧从单一的源发送到共享以太网上的所有主机。广播帧的目的MAC地址为十六进制的FF:FF:FF:FF:FF:FF,所有接受到该广播帧的主机都要接受并处理这个帧。

广播会产生大量流量,导致带宽利用率下降,进而影响整个网络性能。

组播

组播

组播比广播更加高效。组播转发可以理解为选择性的广播,主机侦听特定组播地址,接收并处理目的MAC地址为该组播MAC地址的帧。

组播MAC地址和单播MAC地址是通过第一字节中的第8个比特区分的。组播MAC地址的第8个比特为1,而单播MAC地址的第8个比特为0。

数据帧的发送和接收

当主机接收到的数据帧所包含的目的MAC地址是自己时会把以太网封装剥掉向上层协议传输。

数据帧的发送和接收

1.帧从主机的物理接口发送出来后,通过传输介质传输到目的端。共享网络中,这个帧可能到达多个主机。主机检查帧头中的目的MAC地址,如果目的MAC地址不是本机MAC地址,也不是本机侦听的组播或广播MAC地址,则主机会丢弃收到的帧。

2.如果目的MAC地址是本机MAC地址,则接收该帧,检查帧校验序列(FCS)字段,并与本机计算的值对比来确定帧在传输过程中是否保持了完整性。如果帧的FCS值与本机计算的值不同,主机会认为帧已被破坏,并会丢弃该帧。如果该帧通过了FCS校验,则主机会根据帧头郎中的Type字段来确定将帧发送给上层哪个协议处理。本例中,Type字段的值为ex0800,表明该帧需要发送到IP协议上处理。在发送给IP协议之前,帧的头部和尾部会被剥掉。

思考总结

  1. 网络设备如何确定以太网数据帧的上层协议?

    以太网帧中包含一个Type字段,表示帧中数据应该发往上层哪个协议处理。IP协议对应Type值为0x0800,ARP协议对应Type值为0x0806。

  2. 终端设备接收到数据帧,会如何处理?

    主机检查帧头中的目的MAC地址,如果目的MAC地址不是本机MAC地址,也不是本机侦听的组播或广播MAC地址,则主机会丢弃收到的帧。如果目的MAC地址是本机MAC地址,则接收该帧,检查帧校验序列(FCS)字段,并与本机计算的值对比来确定帧在传输过程中是否保持了完整性。如果检查通过,就会剥离帧头和帧尾,然后根据帧头中的Type字段来决定把数据发送到哪个上层协议进行后续处理。


文章作者: okra2saber
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 okra2saber !
评论
  目录