当前位置: 代码网 > it编程>操作系统>苹果Mac > OSI七层模型中的MAC和PHY

OSI七层模型中的MAC和PHY

2024年08月06日 苹果Mac 我要评论
最近做服务器项目在学习MAC和PHY,总结了一些知识点,拿来分享一下

最近做服务器项目在学习mac和phy,总结了一些知识点,拿来分享一下

说到mac和phy首先要提到osi七层模型

osi七层模型

tcp/ip四层模型

对应网络协议

应用层(application)

应用层

http、tftp, ftp, nfs, wais、smtp

表示层(presentation)

telnet, rlogin, snmp, gopher

会话层(session)

smtp, dns

传输层(transport)

传输层

tcp, udp

网络层(network)

网络层

ip, icmp, arp, rarp, akp, uucp

数据链路层(data link)

数据链路层

fddi, ethernet, arpanet, pdn, slip, ppp

物理层(physical)

ieee 802.1a, ieee 802.2到ieee 802.11

 在osi七层模型中,最下面两层是硬件层面,上面五层是软件层面,由于博主是硬件,主要关注硬件的这两层。

数据链路层:

mac即media access control,即媒体访问控制子层协议.该协议位于osi七层协议中数据链路层的下半部分,主要负责控制与连接物理层的物理介质.在发送数据的时候,mac协议可以事先判断是否可以发送数据,如果可以发送将给数据加上一些控制信息,最终将数据以及控制信息以规定的格式发送到物理层;在接收数据的时候,mac协议首先判断输入的信息并是否发生传输错误,如果没有错误,则去掉控制信息发送至llc层.该层协议是以太网mac由ieee-802.3以太网标准定义.最新的mac同时支持10mbps和100mbps两种速率.

以前,每个公司会定义自己的电路信号分组方式,后来出现了以太网。一组电信号就是一个数据包,也就是帧(frame),它分为两部分,标头(head)和数据(data),标头里一般会放一些说明的东西,比如发送者、接收者和数据类型等等。

那么数据包中是如何确定发送者位置的呢?

以太网规定每个网卡必须包含一个mac地址,mac地址就是这个网卡的身份证。接入网络的所有设备都得有网卡,数据包中就是通过mac地址进行网卡定位的。每块网卡出厂时就有一个唯一的mac地址。48位的二进制,但是一般用12个16进制数字表示,前6个16进制是厂商编号,后6个16进制是网卡流水号。

那么以太网的数据包是怎么从一个mac地址发送到另一个mac地址的呢?这个其实不是点对点的,而是会广播给局域网内的所有网卡,然后每个网卡会从数据包中获取接收者的mac地址进行比对,如果相同就说明是给自己的数据包。

以太网数据链路层其实包含mac(介质访问控制)子层和llc(逻辑链路控制)子层.一块以太网卡mac芯片的作用不但要实现mac子层和llc子层的功能,还要提供符合规范的pci界面以实现和主机的数据交换.

 物理层phy

物理层协议定义电气信号、线的状态、时钟要求、数据编码和数据传输用的连接器

物理层负责用网线、wifi、光纤等方式把电脑连接起来,形成一个网络。它传输的是计算机最底层的0 1信号

网线上传输的是模拟信号.因为它传出和接收是采用的模拟的技术.虽然它传送的信息是数字的(并不是传送的信息是数字的信号就可以叫做数字信号).

cpu<---pcie bus-->mac<----mii&smi bus--->phy<----mdi bus--->ac coupling/lan transformer<--rj45网口-->网线

在这里插入图片描述

在这里插入图片描述

mii(media independent interface)即媒体独立接口,mii接口是mac与phy连接的标准接口。它是ieee-802.3定义的以太网行业标准。

"媒体独立"表明在不对mac硬件重新设计或替换的情况下,任何类型的phy设备都可以正常工作.它包括一个数据接口,以及一个mac和phy之间的管理接口.

通过管理接口,上层能监视和控制phy.其管理是使用smi(serial management interface)总线通过读写phy的寄存器来完成的.phy里面的部分寄存器是ieee定义的,这样phy把自己的目前的状态反映到寄存器里面,mac通过smi总线不断的读取phy的状态寄存器以得知目前phy的状态,例如连接速度,双工的能力等.当然也可以通过smi设置phy的寄存器达到控制的目的, 

lan transformer

把phy送出来的差分信号用差模耦合的线圈耦合滤波以增强信号,并且通过电磁场的转换耦合到连接网线的另外一端.这样不但使网线和phy之间没有物理上的连接而换传递了信号,隔断了信号中的直流分量,还可以在不同0v电平的设备中传送数据.

隔离变压器本身就是设计为耐2kv~3kv的电压的.也起到了防雷感应保护的作用

一张网卡的传输最大距离和与对端设备连接的兼容性主要是phy决定的.但是可以将信号送的超过100米的phy其输出的功率也比较大,更容易产生emi的问题.这时候就需要合适的transformer与之配合.作phy的老大公司marvell的phy,常常可以传送180~200米的距离,远远超过ieee的100米的标准.

             

rj-45的接头实现了网卡和网线的连接.它里面有8个铜片可以和网线中的4对双绞(8根)线对应连接.其中100m的网络中1,2是传送数据的,3,6是接收数据的.1,2之间是一对差分信号,也就是说它们的波形一样,但是相位相差180度,同一时刻的电压幅度互为正负.这样的信号可以传递的更远,抗干扰能力强.同样的,3,6也一样是差分信号.
————————————————

本文参考了以下大佬的文章:

mac和phy的关系_mac phy_王哥来了快跑的博客-csdn博客

大白话聊osi七层模型和tcp/ip四层模型-腾讯云开发者社区-腾讯云 (tencent.com)

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com