网卡的主要功能
网卡的功能主要有两个:一是将电脑的数据封装为帧,并通过网线(对无线网络来说就是电磁波)将数据发送到网络上去;二是接收网络上其它设备传过来的帧,并将帧重新组合成数据,发送到所在的电脑中。网卡能接收所有在网络上传输的信号,但正常情况下只接受发送到该电脑的帧和广播帧,将其余的帧丢弃。然后,传送到系统CPU做进一步处理。当电脑发送数据时,网卡等待合适的时间将分组插入到数据流中。接收系统通知电脑消息是否完整地到达,如果出现问题,将要求对方重新发送。
怎么选择网卡
根据使用环境考虑,由于网卡种类繁多,不同类型的网卡使用条件可能是不一样的。因此,在选购网卡之前,应明确一下需要组建的局域网是通过什么介质来连接各个工作站的,有些客户会用到电口(RJ45)接口的网卡,有的客户则会用到光口的网卡,具体情况要根据客户的实际使用环境进行选购。
Intel的PCI-E总线具有明显的性能优势,而且支持“即插即用”,已被服务器广泛采用。用户在选择网卡前,应确认自己的计算机总线类型,选择与之匹配的网卡。一般来说,现在的服务器或工作站端都考虑PCI-E总线的网卡。
网卡的工作方式
主CPU用IN和OUT指令对网卡的I/O端口寻址并交换数据。这种方式完全依靠主CPU实现数据传送。当数据进入网卡缓冲区时,LAN控制器发出中断请求,调用ISR,ISR发出I/O端口的读写请求,主CPU响应中断后将数据帧读入内存。网卡采用共享内存方式,即CPU使用MOV指令直接对内存和网卡缓冲区寻址。接收数据时数据帧先进入网卡缓冲区,ISR发出内存读写请求,CPU响应后将数据从网卡送至系统内存。