数据传输之计算机是如何通过网卡传输信息的

以太网卡

网络接口卡(Network Interface Card,NIC)通常也简称为“网卡”,它是计算机,交换机,路由器等网络设备与外部网络世界相连的关键部件。根据所使用的技术不同·,网络接口卡分为很多类型,例如令牌环接口卡、FDDI接口卡、SDH接口卡、以太网接口卡等我们这里主要讲的是以太网接口卡,所以下面所提到的网卡都是指以太网接口卡。

计算机上的网卡

假设计算机上有一个网络接口(简称“网口”或“端口”),则现在网口处会安装一块网卡。从逻辑上讲,网卡包含7个功能模块,分别是CU(Control Unit,控制单元)、OB(Output Buffer,输出缓存)、IB(Input Buffer,输入缓存)、LC(Line Coder,线路编码器)、LD(Line Decoder,线路解码器)、TX(Transmitter,发射器)、RX(Receiver,接收器)。

(1)首先,计算机上的应用软件会产生等待发送的原始数,这些数据经过TCP/IP模型的应用层、传输层、网络层处理后,得到一个一个的数据包(Packet)。然后网络层会将这些数据包这个下传给网卡的CU。

(2)CU从网络层那里既收到数据包之后,会将每个数据包封装成帧(Frame)。因为所说的网卡都是以太网,所以分装成的帧都是以太帧(Ethernet Frame)。然后,CU会将这些帧逐个传给OB。

(3)OB从CU那接收到帧后,会按帧的接受顺序将这些真排成一个队列,然后将队列中的帧逐个传递给LC(Line Coder,线路解码器)。先从CU那里接收到的帧会被先传递给LC。

(4)LC从OB那里接收到帧后,会对这些帧进行线路编码。从逻辑上讲,一个帧就是长度有限的一串“0”和“1”。OB中的“0”和“1”所对应的物理量(指电平、电流、电荷等)只适合于待在缓存中,而不适合于在线路(传输介质,例如双绞线)上进行传输。LC的作用就是将这些“0”和“1”所对应的物理量转换成适合于在线路上进行传输的物理信号(指电流/电压波形等),并将物理信号传递给TX(Transmitter,发射器)。

(5)TX从LC那里即受到物理信号后,会对物理信号的功率等特性进行调整,然后将调整后的物理信号,然后将调整后的屋里信号通过线路(例如双绞线)发送出去。

再来看看计算机是如何通过网卡接收信息的。

(1)首先,RX(Receiver,接收器)从传输介质(例如双绞线)哪里接受到物理信号(指电流/电压波形等),然后对物理信号功率等特性进行调整,然后将调整后的物理信号传递给LD(Line Decoder,线路解码器)。

(2)LD会对来自RX的物理信号进行线路解码。所谓线路解码,就是从物理信号中识别出逻辑上的“0”和“1”,并将这些“0”和“1”重新表达为适合呆在缓存中的物理量(指电平、电流、电荷等),然后将这些“0”和“1”以帧为单位逐个传递给IB(Input Buffer,输入缓存)。

(3)IB从LD那里接收到帧帧后,会按帧的接受顺序将这些帧排成一个队列,然后将队列中的帧逐个传给CU。先从LD(Line Decoder,线路解码器)哪里接收到的帧会被先传送给CU。

(4)CU(Control Unit,控制单元)从IB那里接收到帧后,会对帧进行分析和处理。一个帧的处理结果有且只有两种可能:直接将这个帧丢弃,或者将这个帧的帧头和帧尾去掉,得到数据包,然后将数据包上传给TCP/IP模型的的网络层。

(5)从CU上传送到网络层的数据包会经过网络层、传输层、应用层逐层处理,处理后的数据被送达给计算机应用软件使用。当然,数据也可能会在某一层的处理过程中被提前丢弃了,从而无法传送给应用软件。

今天的内容是不是让你对计算机如何发送接收数据豁然开朗,用手机和电脑的时候也更开心了,喜欢计算机、金融方面内容的可以关注小编,在未来的路上,让我们一起进步!

举报
评论 0