Chinaunix首页 | 论坛 | 博客
  • 博客访问: 312799
  • 博文数量: 53
  • 博客积分: 2510
  • 博客等级: 少校
  • 技术积分: 598
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-09 13:20
文章分类

全部博文(53)

文章存档

2011年(2)

2010年(22)

2009年(29)

我的朋友

分类: WINDOWS

2010-05-11 17:38:03

我所知道的一些事情的来龙去脉和Intel网卡的调整方法
Gz不存在了,但是我觉得探索真知的精神还是在每一个GZer的心中,这正是GZ不同于国内其它论坛的地方。我新开一帖,集中解决一些Intel百兆网卡使用上的问题,还有谈谈自己的看法,欢迎拍砖。


Login Chris004


要用好Intel的网卡,还必须大致了解以太网的发展,因为Intel公司和以太网的发展息息相关。

罗伯特•麦卡夫博士(Dr.Robert Metcalfe,国内媒体习惯写作Bob Metcalfe)1979年以前工作于施乐公司,他在Palo Alto的Xerox Palo Research Center(PARC)发明了以太网,这里有他的最初的原理图。由他领队的开发小组制造了一个包含大约40台计算机的以太网系统,这个系统运行在大约2.9Mbps的以太网速,最初麦卡夫博士开发以太网就是为了充分利用打印机资源(所以我们一般买到的打印机都是支持网络打印的)。

1979年,Xerox,Digital Equipment Corporation和Intel组成XID联盟,研发10兆以太网,随后发表以太网“蓝皮书”。IEEE随即接受“蓝皮书”,用作802.3标准的基础。

同样是在1979年,罗伯特•麦卡夫博士离开施乐公司,组件了3com公司,他被后人尊为“以太网之父”,他在计算机发展的历史上留下了浓墨重彩的一笔。罗伯特•麦卡夫博士于1990年离开3com公司。

Intel贵为以太网标准的缔造者,起初并不重视网络产品的研发,或者说当时还没有发现网络设备市场的巨大潜力,Intel网络事业部成立时,还只是一个试验小组,可谁会想到二十多年后,Intel网络事业部会成为Intel的骨干部门?

ISA网卡时代,3com的产品是独步天下,它的ISA网卡,市场占有率最高时可以达到70%以上。Intel当时主打产品是EtherExpress Pro/10,我自己在十年前,成都的海森电脑城有幸购得一块。Intel研发奔腾芯片以后有这样一个习惯,就是不让别人抓住自己的软肋,比如芯片组,显卡,还有就是网卡。

进入百兆网络时代后,3com通过技术授权,让Lucent,Broadcom,Marvell,Agere,St为其生产网络芯片,正是这种做法,为其以后发展埋下隐患。

一方面是3com百兆网卡的高昂价格,另一方面是奔腾芯片的横空出世,高性能cpu必须有用武之地,网络应用就是其一,让Intel下定决心,加大网络产品的研发力度,反正HX芯片组都捣鼓出来了,制造百兆网卡芯片有何不可?正是在1995年,Intel开发出自己的百兆网卡芯片,主芯片核心的代号定为D100,物理层芯片代号为Phy-Tx。相应的制造出的网卡,主芯片为82557,物理层芯片为82555,其中D100核心是3K+3K的fifo,因为百兆以太网的一个数据包是1.5k,所以D100核心在极端的状态下,一个工作周期可以同时操作4个数据包,比2k+2K的组合效率高一些。Intel在马耳他,韩国和菲律宾的工厂都生产82557芯片组,然后运往波多黎各组装,82557网卡就这样被大量生产出来了。

起初82557网卡的推广,比起同门兄弟奔腾芯片,相当不顺利(当时Intel还是典型的工程师思维,也没有想到搞如今的“欢跃”,“迅驰”一类的平台,当时也没有现在这样的市场基础),单是卖孤零零的网卡芯片,结果谁都不重视,不过Intel的芯片价格实惠,兼容性又比较好,HP,IBM,Compaq还是采购了一些OEM的557网卡。

Intel出师不利,但是此后一直在寻找机会,苦练内功,于97年11月推出82558,三个月后推出82558B以太网卡控制芯片,将物理层芯片和主控制芯片整合到一起,也就是Phy-TX + D100的架构 ,这样做在当时还是比较超前的,其实Intel已经看到板载网卡的技术趋势,双芯片结构肯定不利于板载设计(所以后来业界公认的LAN on motherboard的领导者是Intel,既不是Broadcom,也不是Realtek)。82558网卡比82557网卡的发热量更小,制造工艺更加先进,这次终于获得各大计算机制造商的重视。很多公司,例如IBM,HP,Dell和gateway购买了为数不少的82558成品卡,就连NEC和富士通都要购买82558芯片。要知道,日系的厂商,除了以上两家,还有日本网友口中的网络“御三家”(即Buffalo,Corega和Planex)都在定购82558芯片,它们以前一般都是定购Davidcom和Realtek的芯片为主。尽管82558网卡卖得好,但是Intel还是无法撼动3com的市场,因为3com同期推出了3c905b,3c905c网卡,兼容性和cpu占用率较905TX有了很大的提高,更何况3com是金字招牌。

Intel还是抓住了属于自己的机会。1998年,Digital Equipment Corporation宣布破产,主体被康柏收购,康柏就采用DEC的设计,开发出自己的Presario m系列超薄笔记本,还有就是ev6总线(没这个,AMD肯定活不到现在)。Intel则收购了DEC的网络产品研发部门,DEC在高端网络产品,尤其是服务器产品和Unix领域颇有建树(所以后来的Intel网卡在Linux下的兼容性较好),Intel正是看中了DEC在服务器网络产品方面的实力。完成收购后,Intel网络事业部和DEC的新鲜血液还有一段磨合期,正是这段时期,打上Intel的logo的21143网卡出世了。21143网卡不属于Intel网络体系,这应该算是DEC的绝响了。联想到最近SGI的破产,人们总是感叹巨人一个个倒下,小丑一个个粉墨登场。

半年以后,Intel推出了82559芯片,82559采用bga封装(利用了PII的一点产能),支持pci2.2,支持高级电源管理标准,在Intel的规划中pro/100+网卡其实是为即将到来的PIII系统准备的(PIII内置的tcp/ip效验和单元就是对559网络芯片的补充,尽管实际效果不好),82559芯片还可和一颗加密芯片搭配,制造可进行3des加密的网卡。Intel在发布82559后,立即着手自己的第二代千兆网络产品的研发,网络事业部于1999年8月收购了物理层芯片公司Level-One更进一步加强了自身实力,后来又先收购了Ambient,2001年又收购了Xirom。这段时间3com的脚步还跟得上,2000年之前就完成了对美国机器人的收购,先后推出3c970,3xp,3c980,3c990(这些产品还是采用带引脚的集成块封装,3com的代工厂ic制造工艺毕竟敌不过Intel)一系列产品还击,但是它的的领袖地位已经岌岌可危,思科和Realtek从高端和低端研发网络产品,不断打压3com的市场。

2001年,Intel发布82550系列百兆以太网芯片,82550EY还是采用D100核心,但是功能是今非昔比了。82550GY作为此次发布的最高端的产品,在IPsec加密状态下的性能比起未加密时,衰减不到5%,将3com的3xp网卡在使用IPsec加密功能后的性能甩开,采用82550GY芯片的网卡的确是“最接近千兆网卡的百兆网卡”。82550,82540系列芯片的发布,in business(生意通),Netstructure品牌的推出,让Intel从幕后走到前台,让世界知道,网络产品不仅是3com和思科在研发,Intel有能力向任何一个网络设备厂商叫板。

2002年,Intel发布82551系列以太网芯片,推出82551系列芯片就是为了取代已经停产的82559芯片,82551系列芯片的特点是支持智能判断交叉连线和分载tcp/ip效验和。其中82551qm符合Rohs环保标准,采用lead free技术。

D100核心从95年到现在,走过了11个年头,可以说D100见证了Intel网络事业部由弱变强的一段历史,使用Intel网卡,就是在品味以太网发展的进程。
 
要优化Intel网卡,首先安装Proset网卡驱动,Proset驱动经历了两次变革,从win98时代低版本Proset到win2000时代的Proset2,再到现在用的高版本Proset,功能越来越强。

用我的Netserver网卡为例(HP向Intel定购的服务器网卡,安装82559公版驱动)在设备管理面板中双击要配置的Intel网卡,出现Proset面板。

Boot agent标签下有选项可以关闭开机时网卡启动画面,如果要一劳永逸地解决这个问题,其实只要按照下图中的最后两排字符(就是这块卡的eep),升级559网卡的eep,应该就可以了。

在Identify adapter的选项卡里面,可以查到网卡的Part Number,这个号码必须和网卡上的印刷条码严格一致,否则就是刷机卡或者是深圳寨卡。

寨卡还是比较好分辨,首先寨卡的条码明显和原装卡不同,而且号码只有一个,其次是82559和3c905cx的寨卡至少要卖120元以上(至少成都是这样),否则无利可图。

进入Advanced adapter setting中,pci总线效率应该禁用,就是让网卡自动控制coalescing packets的大小(其实这是adaptive技术的一项),只有在网络带宽极小时(和小猫拨号差不多时,校园网会出这种情况),才设置enable。

进入performance options,其中传输描述符和接合缓冲区都是设定网卡的发送数据能力,家用可以不管,而且82559芯片不能很好地使用较大的系统缓存进行发送,如果有需要调整,这两项最大调成极限值的50%。

接收描述符要调成512-1024之间的值,其中一个描述符使用2k内存,在大流量下载时,这一项参数比较重要。

如果其它网络设备不支持流程控制,那么应该关闭流程控制。

适应性技术应该开,因为适应性技术是一整套算法,定义网卡在不同工作条件下的工作模式,手工定义肯定不如打开适应性技术。

适应性传输阀值可以设定为190或者10(实验取值),一般设成200,这项参数最好不要动。

适应性性能调整,就是控制网卡产生中断的多少,这项在千兆网卡上特别重要,应该调整到“网络性能”一边。划杆在最左边,表示在网卡接收一帧之前,网卡都会产生一个中断,如果网卡产生的中断不够,就由cpu来产生,系统资源占用率就上去了。不是所有的Intel网卡原设定都是以网络性能优先。

适应性帧间距离调整,定义网卡抢线能力,要设定为1,表示“该功能打开,而且帧间距小于802.3的规定间隙”,如果将此项用在带宽不足的局域网的P2P上,就是其他用户的噩梦。

重新传输帧间距离调整,定义网卡抢线能力,可以设定为1,表示“如果遇到网络上的数据包冲突,不使用802.3规定的算法求解重传时间,以最快的速度再次重传,如果局域网中一群人都这么设定,当网络带宽变小时,那可能就会适得其反,使大家都上不好网(好在不会有一群人都在局域网上使用Intel卡的情况发生)。所以Intel建议只能加大此值,好让有可能到来的网络拥塞尽早消散。

如果高级电源管理有问题,可以调整Power Saver Options。

Wake on Lan Options 中的选项都选为“控制操作系统”,有日本网友指出PME选项应设定为启用,提高STR的兼容性,我倒是没有遇到这方面问题,但是PME是应该打开。

“低资源时的连接性”在任何情况下都要打开,表示无论系统资源如何紧张,系统都不会剥夺划分给网卡的资源。这也是adaptive技术的一部分。

“记录连接状态”可以关掉,毕竟只有在网络有故障时,用户才会查看系统日志中的网络信息。

如果交换机或者路由器支持Qos,那么就可以调整优先性级别调整,这个值根据不同的应用,要自己摸索,也不是越大或者越小越好,我就不给定值了。

人多力量大,打开Receive Load Balance选项。
 
 
悲喜不同路,3com的故事。

有很多人都有这样的疑问,3c905,920网卡的xp下的驱动程序为什么更新得那么慢?3com怎么不推出pcie网卡和10 Gbps网卡?这些其实和3com近年的境遇有很大关系。

前面提到过,3com授权其它厂商制造网络芯片,然后由自己的工厂组装网卡。这在百兆以太网络设备刚刚开始流行时,对3com的发展,的确大有裨益,自己的产能不够,拿其它厂商的来补。可是这种作法到了98年以后,弊病就出来了,就是3com找代工厂生产芯片,直接扶植了Marvell和Broadcom,同时3com没有培育出网络芯片的自有体系(如Marvell的800X,805X,Broadcom的570X,Intel坚持不懈搞了整整5代的千兆网络设备,就是这样一种体系),这种情况加大了3com新产品研发的难度。

说句老实话,网卡不像显卡,cpu那样,可以轻易分出三六九等,各个厂商只要遵照802.3协议的规定,就能设计出性能相近的网络芯片,但是3com妄自尊大,以为自己的技术优势是无可比拟的,在激烈的市场竞争中,还是生产高价位的网卡产品,但是性能的确不比其它厂商的产品高出很多(这一点和当时的帝盟相似)。在网卡芯片性能都差不多的情况下,消费者更看重产品的功能多少,以便让产品适用在不同领域,然后就是产品的价格,这个最实在。结果是Intel抓住了头一条,Realtek,Pctel,Adm就抓住了后一条。同时思科对所有的网络设备厂商的强力打压,3com也还要默默忍受。这些都还没完,更糟糕的还在后面。

2000年后,Palm脱离3com,引发了一系列连锁反应。首先Palm的脱离,一方面固然和handheld设备在全球销量的不景气有关,另一方面,Palm团队觉得3com暮气已深,留在3com还不如出来打拼。3com当时也觉得Palm是包袱,踢开Palm,还能获得为数不小的分手费,于是痛快地和Palm一刀两断。这样一来,无疑断送了3com多元化发展的道路,而且在公司内部,负面影响相当严重。当时至少还有两个3com的子公司以自身经营不善为由,跳槽到其它公司门户之下,接踵而来的就是2001年到2004年,3com连续的巨额亏损,这段时间,3com的核心竞争力已经丧失殆尽。此时的思科已是蒸蒸日上,收购亚特兰大科技后,思科根本没把3com放在眼里,当然它也不会去收购问题多多的3com。

进入2005年,3com终于多多少少找回了一些感觉,找准了自己的定位,在中低端网络设备市场频频出手,而且在更早的时候,3com先后和Nvidia,Via达成交叉授权(所以Nvidia的集成网卡上的选项是for cpu和for throughout,而Via的Velocity系列网卡也大有起色),值得一提的是新制程的3c990系列网卡还卖得不错,甚至华硕的p4p800还采用了3c940芯片。但是,现在人们如果想购买高端网络设备,首先会想到Cisco和北方电讯,其次是西门子,再次是Intel,很少有人会首先想到3com。

在这些年,3com的损失不仅是美元,还有标准制订者的地位。比如说97年制定802.11协议,那时3com还勉强出了一份力,但是最近一阵子打得火热的802.11n协议的制定,3com就是看客,WWiSE组织的成员有德州仪器、Broadcom、 Conexant、 Stmicro、 Airgo和Bermai,TGn Sync组织的成员包括Intel、Atheros(这是网络产品新贵,实力不容小觑)、Agere、英飞凌、思科、高通、北电、三菱、索尼、松下、飞利浦、三星、三洋和东芝(我倒是看好这一派,真是群星荟萃),幕后黑手是Intel。看这两派的激斗,3com心里肯定别有一番滋味。

转回前面的话题,3com使用代工厂生产的芯片生产的网卡,大部分是批量卖给计算机整机厂商,所以3c905系列网卡的售后服务是由Hp,Dell等厂商在做,这也是为什么我们下的驱动都是品牌机厂商发布的win2000驱动,但是归根到底驱动是3com负责开发。Palm出事以后,3com进入了一种不正常的发展路线,公司内部人心惶惶,因为3c905,3c905b,3c905c,3c990网卡的内部结构互不相同,3com要为这些网卡分别编写新平台下的驱动,的确有心无力,又或者委托代工厂编写驱动,的确得不偿失。试想2001年时3com的高层对公司的前途感到迷茫,那里还顾得上什么名家大厂的风范,命令研发人员为过时的网卡更新驱动呢?

3com的老式网卡没有驱动更新不要紧,在winxp还在制作时,3com就向微软提交了基本驱动,而且后来3com还是通过Hp,发布了winxp下的老网卡驱动(是由win2000下的驱动改造而来的,那个从win98时代起就让人费解的3com网络诊断程序的安装方法,到现在还是没有改过来),winxp下使用任何3com的网卡,还是没有任何问题的。我推测Vista正是发布以后,3com的老式网卡,应该还是可以在该系统下正常使用,但是玩家想安稳地使用3com的百兆网卡,还是推荐购买3com网站介绍的上的采用新制程的990系列零售产品,这样驱动才有保障。

还有一个悬而未决的问题,就是Broadcom5904芯片到底有多大的fifo缓存?我这里有一份资料,是加拿大Laurentian大学计算机与数学学院为了教学目的,开发3c905c网卡在Minix-vmd系统下的驱动时,向Broadcom索要的3c905c的基本信息。这份材料明白无误地指出3c905c网卡的fifo值。事实上一般的民用级ic,内置512k的缓存,是由northwood p4开始大规模流行,事实上任何一张百兆网卡,都不可能芯片内置512k的缓存。试想如果Broadcom在97年就生产出了内置512k高速缓存的廉价的强劲芯片,那么AMD,西林,高通,ti和Intel都应该关门大吉。


韬光养晦的Marvell。

Marvell在95年以前还是小规模的网络设备供应商,但是通过自身的努力,在千兆网络时代,终于打拼出属于自己的天空,旗下的网络产品均是以千兆为起点,但是好景不长,高端千兆网络设备的竞争实在太激烈,这里有两副图,是Marvell通过Syskonnect发布的网卡控制面板,从这里面可以看出端倪。

Marvell的网卡控制面板只开发到win2000版本下就停止了。在winxp下使用这个control panel,就显示乱码。

其实Marvell在2000年左右,还是很想持续发力,和Broadcom拼一拼高端市场份额,所以那时Marvell的网卡驱动作得相当出色,绑定,冗余,线路测试,流量统计,一个都不少。但是Broadcom的全线网络产品的性能,均压倒Marvell的同类产品。Marvell这个公司相当务实,东边不亮西边亮,转而主攻中低端,去和Realtek抢市场(Marvell的产品再怎么着,也比Realtek的产品质量好吧),结果大获成功。

现在,Marvell在千兆网络处理芯片市场上,做到了“三分天下有其一”,它的低端网卡芯片被国内的厂商广泛采用,在中端服务器主板上,一般采用一颗Intel芯片或者一颗Broadcom芯片,搭配另一颗Marvell的芯片组成双千兆的解决方案,由Intel或者Broadcom的驱动来组织Marvell网卡来协同工作。

我相信Marvell不会总是做配角。


王侯将相宁有种乎。Intel的荆棘之路。

正当3com日渐势微,Cisco疯狂扩张时,Intel一刻也没有停止前进的脚步,Intel网络事业部研发的第一代和第二代千兆网络产品,市面上很难买得到,但是第三代的Intel pro/1000t网卡,第四代的82540em芯片,第五代的82572ei和一系列无线网卡,在市场上是遍地开花,同时Intel网络事业部联合Broadcom,重创了AMD网络事业部,算是出了一口恶气。

AMD本是制造通讯设备出生,它的百兆网络设备芯片比起其它的同类产品性能不错,价格也不算高,日本的原装机厂商在96年左右,装机时采用了大量的使用pcnet am97c971芯片的独立pci网卡,至今还有AMD的爱好者为拥有一款使用AMD芯片的网卡而津津乐道。AMD网络事业部在AMD集团中不是太受重视,98年以前它的地位比开发主板芯片组的团队还低。04年的时候我还买过一块am772无线网卡(金浪出品)。大浪淘沙,现在市场上就找不到多少采用AMD解决方案的零售产品,但是AMD的网络研发还没有停止,配合AMD移动芯片的geode产品,一刻也没有停止研发,AMD网络产品在工控机领域还是有些份额,不过AMD网络事业部已经没有以前那么风光,正所谓物竞天择,适者生存,网络产品市场之中的竞争之激烈,可见一斑。

Intel网络事业部以后的道路,就是冲击高端,和思科展开正面交锋,这绝非痴人说梦,早在2000年左右,Intel就开始试探性地开始在官方报告中将自己的网络解决方案与思科的同类解决方案进行比较,同时提升全线Netstructure产品的性能和价格,04年更是发布完整的10 Gbps解决方案,努力塑造高端形象。不过思科收购Linksys以后,努力开拓中端和家庭市场,这是Intel没有预计到的。但是Intel在今年已经回过神来,找到了开拓中低端市场的秘方。

Intel计划从今年起,所有网络产品,都分步,分批引入SSE,SSE2和SSE3技术,配合“欢跃”平台,以高姿态把自己的网络产品切入家用pc领域,这实在是一招妙棋。网络产品引入SSE技术,拉开了与竞争对手的档次,同时这些产品也贴近了家庭用户,一举两得。

我分析Intel在中高端网络产品市场上,和其它厂商,特别是思科,达成了一定的默契。因为思科不好惹,一旦同思科展开全面交手,Intel网络事业部就可能变成第二个AMD网络事业部,所以Intel在2005年以后,网络设备的研发和销售方面,显得既谨慎,又暗藏锋芒。

不知道有生之年能不能看到Intel实现对微处理器领域和网络设备领域的统一,我倒是认为如果Intel做不成,还是会有其它厂商来实现。衷心祝愿Intel Networking一路走好。

本文部分材料来源于Intel,Broadcom,eTesting Labs和Department of Mathematics & Computer Science of Laurentian University。本文如要转载,请注明出处。
阅读(9146) | 评论(0) | 转发(0) |
0

上一篇:time命令详解

下一篇:GIF 文件格式分析

给主人留下些什么吧!~~