关于网卡的一些知识

1、UTP、STP是什么?

      计算机局域网中的双绞线可分为非屏蔽双绞线(UTP)和屏蔽双绞线(STP)两大类:STP外面由一层金属材料包裹,以减小辐射,防止信息被窃听,同时具有较高的数据传输速率,但价格较高,安装也比较复杂;UTP无金属屏蔽材料,只有一层绝缘胶皮包裹,价格相对便宜,组网灵活。除某些特殊场合(如受电磁辐射严重、对传输质量要求较高等)在布线中使用STP外,一般情况下我们都采用UTP。现在使用的UTP可分为3类、4类、五类和超五类四种。其中:3类UTP适应了以太网(10Mbps)对传输介质的要求,是早期网络中重要的传输介质;4类UTP因标准的推出比3类晚,而传输性能与3类UTP相比并没有提高多少,所以一般较少使用;五类UTP因价廉质优而成为快速以太网(100Mbps)的首选介质;超五类UTP的用武之地是千兆位以太网(1000Mbps)。

  

                            注: 左边为非屏蔽双绞线,右边为双绞线

2、网卡

     网卡(NetworkInterfaceCard,简称NIC),也称网络适配器,是电脑与局域网相互连接的设备。无论是普通电脑还是高端服务器,只要连接到局域网,就都需要安装一块网卡。如果有必要,一台电脑也可以同时安装两块或多块网卡。

  电脑之间在进行相互通讯时,数据不是以流而是以帧的方式进行传输的。我们可以把帧看做是一种数据包,在数据包中不仅包含有数据信息,而且还包含有数据的发送地、接收地信息和数据的校验信息。一块网卡包括OSI模型的两个层——物理层和数据链路层。物理层定义了数据传送与接收所需要的电与光信号、线路状态、时钟基准、数据编码和电路等,并向数据链路层设备提供标准接口。数据链路层则提供寻址机构、数据帧的构建、数据差错检查、传送控制、向网络层提供标准的数据接口等功能。

         网卡的功能主要有两个:一是将电脑的数据封装为帧,并通过网线(对无线网络说就是电磁波)将数据发送到网络上去;二是接收网络上其它设备传过来的帧,并将帧重新组合成数据,发送到所在的电脑中。

        以太网卡的结构:以太网卡中数据链路层的芯片一般简称之为MAC控制器,物理层的芯片我们简称之为PHY。许多网卡的芯片把MAC和PHY的功能做到了一颗芯片中,比如Intel 82559网卡的和3COM 3C905网卡。但是MAC和PHY的机制还是单独存在的,只是外观的表现形式是一颗单芯片。当然也有很多网卡的MAC和PHY是分开做的,比如D-LINK的DFE-530TX等。

①RJ-45接口 ②Transformer(隔离变压器) ③PHY芯片④MAC芯片   ⑤EEPROM   

⑥BOOTROM插槽⑦WOL接头   ⑧晶振    ⑨电压转换芯片⑩LED指示灯

3、MAC芯片     

           首先我们来说说以太网卡的MAC芯片的功能。以太网数据链路层其实包含MAC(介质访问控制)子层和LLC(逻辑链路控制)子层。一块以太网卡MAC芯片的作用不但要实现MAC子层和LLC子层的功能,还要提供符合规范的PCI界面以实现和主机的数据交换。     MAC从PCI总线收到IP数据包(或者其他网络层协议的数据包)后,将之拆分并重新打包成最大1518Byte,最小64Byte的帧。这个帧里面包括了目标MAC地址、自己的源MAC地址和数据包里面的协议类型(比如IP数据包的类型用80表示)。最后还有一个DWORD(4Byte)的CRC码。     可是目标的MAC地址是哪里来的呢?这牵扯到一个ARP协议(介乎于网络层和数据链路层的一个协议)。第一次传送某个目的IP地址的数据的时候,先会发出一个ARP包,其MAC的目标地址是广播地址,里面说到:”谁是xxx.xxx.xxx.xxx这个IP地址的主人?”因为是广播包,所有这个局域网的主机都收到了这个ARP请求。收到请求的主机将这个IP地址和自己的相比较,如果不相同就不予理会,如果相同就发出ARP响应包。这个IP地址的主机收到这个ARP请求包后回复的ARP响应里说到:”我是这个IP地址的主人”。这个包里面就包括了他的MAC地址。以后的给这个IP地址的帧的目标MAC地址就被确定了。(其它的协议如IPX/SPX也有相应的协议完成这些操作。)     IP地址和MAC地址之间的关联关系保存在主机系统里面,叫做ARP表,由驱动程序和操作系统完成。在Microsoft的系统里面可以用 arp -a 的命令查看ARP表。收到数据帧的时候也是一样,做完CRC以后,如果没有CRC效验错误,就把帧头去掉,把数据包拿出来通过标准的借口传递给驱动和上层的协议客栈,最终正确的达到我们的应用程序。还有一些控制帧,例如流控帧也需要MAC直接识别并执行相应的行为。    以太网MAC芯片的一端接计算机PCI总线,另外一端就接到PHY芯片上。以太网的物理层又包括MII/GMII(介质独立接口)子层、PCS(物理编码子层)、PMA(物理介质附加)子层、PMD(物理介质相关)子层、MDI子层。而PHY芯片是实现物理层的重要功能器件之一,实现了前面物理层的所有的子层的功能。

4、PHY芯片

         PHY在发送数据的时候,收到MAC过来的数据(对PHY来说,没有帧的概念,对它来说,都是数据而不管什么地址,数据还是CRC),每4bit就增加1bit的检错码,然后把并行数据转化为串行流数据,再按照物理层的编码规则(10Based-T的NRZ编码或100based-T的曼彻斯特编码)把数据编码,再变为模拟信号把数据送出去。(注:关于网线上数据是数字的还是模拟的比较不容易理解清楚。最后我再说)     收数据时的流程反之。     PHY还有个重要的功能就是实现CSMA/CD的部分功能。它可以检测到网络上是否有数据在传送,如果有数据在传送中就等待,一旦检测到网络空闲,再等待一个随机时间后将送数据出去。如果两块网卡碰巧同时送出了数据,那样必将造成冲突,这时候,冲突检测机构可以检测到冲突,然后各等待一个随机的时间重新发送数据。这个随机时间很有讲究的,并不是一个常数,在不同的时刻计算出来的随机时间都是不同的,而且有多重算法来应付出现概率很低的同两台主机之间的第二次冲突。     许多网友在接入Internt宽带时,喜欢使用”抢线”强的网卡,就是因为不同的PHY碰撞后计算随机时间的方法设计上不同,使得有些网卡比较”占便宜”。不过,抢线只对广播域的网络而言的,对于交换网络和ADSL这样点到点连接到局端设备的接入方式没什么意义。而且”抢线”也只是相对而言的,不会有质的变化。

5、PHY和MAC之间如何进行沟通
    下面继续让我们来关心一下PHY和MAC之间是如何传送数据和相互沟通的。通过IEEE定义的标准的MII/GigaMII(Media Independed Interfade,介质独立界面)界面连接MAC和PHY。这个界面是IEEE定义的。MII界面传递了网络的所有数据和数据的控制。而MAC对PHY的工作状态的确定和对PHY的控制则是使用SMI(Serial Management Interface)界面通过读写PHY的寄存器来完成的。PHY里面的部分寄存器也是IEEE定义的,这样PHY把自己的目前的状态反映到寄存器里面,MAC通过SMI总线不断的读取PHY的状态寄存器以得知目前PHY的状态,例如连接速度,双工的能力等。当然也可以通过SMI设置PHY的寄存器达到控制的目的,例如流控的打开关闭,自协商模式还是强制模式等。     我们看到了,不论是物理连接的MII界面和SMI总线还是PHY的状态寄存器和控制寄存器都是有IEEE的规范的,因此不同公司的MAC和PHY一样可以协调工作。当然为了配合不同公司的PHY的自己特有的一些功能,驱动需要做相应的修改。     一片网卡主要功能的实现就基本上是上面这些器件了。     其他的,还有一颗EEPROM芯片,通常是一颗93C46。里面记录了网卡芯片的供应商ID、子系统供应商ID、网卡的MAC地址、网卡的一些配置,如SMI总线上PHY的地址,BOOTROM的容量,是否启用BOOTROM引导系统等东西。     很多网卡上还有BOOTROM这个东西。它是用于无盘工作站引导操作系统的。既然无盘,一些引导用必需用到的程序和协议栈就放到里面了,例如RPL、PXE等。实际上它就是一个标准的PCI ROM。所以才会有一些硬盘写保护卡可以通过烧写网卡的BootRom来实现。其实PCI设备的ROM是可以放到主板BIOS里面的。启动电脑的时候一样可以检测到这个ROM并且正确识别它是什么设备的。AGP在配置上和PCI很多地方一样,所以很多显卡的BIOS也可以放到主板BIOS里面。这就是为什么板载的网卡我们从来没有看到过BOOTROM的原因。
6、网口变压器
    在以太网设备中,通过PHY接RJ45时,中间都会加一个网络变压器。有的变压器中心抽头接电源,有的又接电容到地。而且接电源时,电源值又可以不一样,3.3V,2.5V,1.8V都有。这个变压器的作用到底是什么呢?

下面是一个大概的解答:

   (1)中间抽头为什么有些接电源?有些接地?这个主要是与使用的PHY芯片UTP口驱动类型决定的,这种驱动类型有两种,电压驱动和电流驱动。电压驱动的就要接电源;电流驱动的就直接接个电容到地即可!所以对于不同的芯片,中心抽头的接法,与PHY是有密切关系的,具体还要参看芯片的datasheet和参考设计了。

   (2)为什么接电源时,又接不同的电压呢?这个也是所使用的PHY芯片资料里规定的UTP端口电平决定的。决定的什么电平,就得接相应的电压了。即如果是2.5v的就上拉到2.5v,如果是3.3v的就上拉到3.3v。

    (3)这个变压器到底是什么作用呢,可不可以不接呢。从理论上来说,是可以不需要接变压器,直接接到RJ45上,也是能正常工作的。但是呢,传输距离就很受限制,而且当接到不同电平网口时,也会有影响。而且外部对芯片的干扰也很大。当接了网络变压器后,它主要用于信号电平耦合。其一,可以增强信号,使其传输距离更远;其二,使芯片端与外部隔离,抗干扰能力大大增强,而且对芯片增加了很大的保护作用(如雷击);其三,当接到不同电平(如有的PHY芯片是2.5V,有的PHY芯片是3.3V)的网口时,不会对彼此设备造成影响。

     总的来说,网络变压器主要有信号传输、阻抗匹配、波形修复、信号杂波抑制和高电压隔离等作用。

     PHY芯片和RJ45之间需要一个变压器,8路以太线,用于抑制共模信号,导通差模信号,隔离直流信号。在变压前级一般有中心抽头借到2.5V或者3.3V;在次级的中心抽头接4个电阻75ohm加2000V放电电容到地。      如图net1,net2所示,在发送差分线和接收差分线之间会并联两个49.9或者50Ω(精度1%)的终接电阻,这个电阻的作用是为了实现阻抗匹配,对于初次比1:1的变压器,其输入电阻和输出电阻之比也是1:1,这样并联的结果,在输出端看来就是100Ω的匹配电阻,现在我们所用的双绞线的特征阻抗大多是100Ω。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值