计算机网络-数据链路层和物理层

Aki 发布于 2023-07-20 257 次阅读


网卡(NIC)、

一、定义:

网卡是工作在第一、二层的网络组件,是局域网中连接计算机和传输介质的接口,不仅能实现与局域网传输介质之间的物理连接和电信号匹配,还涉及帧的发送与接收、帧的封装与拆封、介质访问控制、数据的编码与解码以及数据缓存的功能等。

二、功能详解:

网卡和局域网之间的通信是通过电缆或双绞线以串行传输方式进行的(物理层)。而网卡和计算机之间的通信则是通过计算机主板上的I/O总线以并行传输方式进行(数据链路层)。因此,网卡的一个重要功能就是要进行串行/并行转换。

其中一块网卡包括OSI 模型的两个层,物理层和数据链路层:

1、物理层定义了数据传送与接收所需要的电与光信号、线路状态、时钟基准、数据编码和电路等,并向数据链路层设备提供标准接口。

2、数据链路层则提供寻址机构、数据帧的构建、数据差错检查、传送控制、向网络层提供标准的数据接口等功能。

三、作用:

网络是通过模拟信号将信息转化为电流传播的,网卡在这里面就充当了一个解码器的作用,将电信号重新转换文文字图像等就是网卡的责任。网卡的其他功能还有监控上传及下载流量,控制网速稳定的作用,它就相当于电脑的港口,所有信息上传到网络之前都要先到网卡这里走一遭。

网卡是网络接口卡NIC(NetworkInterfaceCarD.的简称,也称为网络适配器,通信适配器或网络接口卡,它是连接计算机与网络的硬件设备,是局域网最基本的组成部分之一。网卡作为计算机与计算机间进行通信的桥梁,主要有以下两大功能一是读入由网络设备传输过来的数据包,经过拆包,将其变成计算机可以识别的数据,并将数据传输到所需设备中;另一个功能是将计算机发送的数据,打包后输送到其他网络设备中。

无论是普通电脑还是高端服务器,只要连接到局域网,就都需要安装一块网卡。没有网卡无法上网。如果有必要,一台电脑也可以同时安装两块或多块网卡。

物理层、

OSI模型中最低的一层,位于OSI参考模型的最底层,它直接面向实际承担数据传输的物理媒体(即通信通道),物理层的传输单位为比特(bit),即一个二进制位(0或1)。实际的比特传输必须依赖于传输设备和物理媒体。但是需要注意的一点是,物理层并不是指具体的物理设备,也不是指用来传输信息的物理媒体,指的是传输原始比特流的物理连接。对于数字应用来说,我们只需要两种物理信号来分别表示0和1,比如用高电压表示1,低电压表示0,就构成了简单的物理层协议

主要任务:

  • 编码与调制:物理层负责将数字数据(0和1的比特流)转换成适合在传输媒介上传输的模拟信号或数字信号。这个过程称为编码和调制。编码和调制的方式因传输媒介的不同而有所不同。
  • 传输介质管理:物理层管理数据在传输媒介上的传输。它定义了传输媒介的规范、特性和传输方式,以确保信号能够在媒介上可靠地传输。
  • 数据帧同步:物理层负责在数据流中插入特定的同步字节或信号,以便接收方能够正确地识别数据帧的开始和结束,确保数据的正确接收。
  • 传输时序:物理层定义了数据传输的时序,包括时钟同步和速率匹配等,以保证发送方和接收方之间的数据传输速率和时钟同步一致。
  • 物理拓扑:物理层规定了网络的物理连接方式和拓扑结构,包括点对点连接、总线、环形、星形等,以及如何进行连接和断开。

同步字节或信号和帧头帧尾都涉及到数据帧的同步和边界识别,但它们的具体功能和作用是不同的。同步字节或信号是在物理层上使用的,主要用于在数据传输中帮助接收方同步数据帧的开始和结束。帧头和帧尾则是在数据链路层上使用的,主要用于标识帧的开始和结束,帮助接收方正确分离出数据包进行处理。

三种信息传输的方式

信道一般表示向一个方向传送信息的媒体,所以平常说的通信线路往往包含一条发送信息的信道和一条接受信息的信道

  1)单工通信:也就是单向通信,只能有一个方向的通信而没有反方向的交互,例:生活中的无线广播、有线广播等

  2)半双工通信:也就是能双向通信,但是不能同时通信,一方在发送数据,另一方必须接受数据,等待对方发完,然后自己才能发,例如,电视里面军方的对讲机,都是只有等待一方说完话,另外一方才能说话。

  3)全双工通信:相对于半双工通信来讲,就是能同时通信且双向,例如,电话。

信道复用技术:

复用:通信线路的架设费用较高,需要尽可能地充分使用每个信道的容量,尽可能不重复建设通信线路;把一个物理信道按一定的机制划分为多个互不干扰互不影响的逻辑信道,每个逻辑信道各自为一个通信过程服务,每个逻辑信道均占用物理信道的一部分通信容量。通过下图,就可以很容易知道什么是复用,就是同时公用一条信道来进行传输信息。信道复用技术:频分复用、时分复用、统计时分复用、波分复用,

(1)频分复用 

用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带(这个是一个范围,例如下图)所有用户在同样的时间占用不同的带宽资源(请注意,这里的“带宽”是频率带宽而不是数据的发送速率),采用频带传输技术的模拟通信系统,如:广播电视系统、有线电视系统、载波电话通信、调频立体声广播系统等;为避免相邻子频带之间的相互串扰影响,一般在两个相邻的子频带之间流出一部分空白频带(保护频带)。频分复用技术的特点是所有子信道传输的信号以并行的方式工作,每一路信号传输时可不考虑传输时延,因而频分复用技术取得了非常广泛的应用。

(2)时分复用

按时间轮流分配带宽资源给不同的用户,每个用户只在分配的时间里使用线路传输数据。 通俗来讲:就是每个用户都有自己的时间段来传输数据,没到自己时间就需要等待,直到属于自己的传输时间段的到来,周期性的周转。应用:电话、ATM等。

特点:在信道中,每个资源都有先后顺序,并且不会乱,一直是按照一定的顺序传输数据。

优点:不存在保护频带,对频带利用率高。缺点:计算机数据的突发性质,用户对分配的子信道的利用率不高,因为不知道什么时候通道就会发送数据,可能别的通道都不发数据,就一个通道需要发送,但也还是要等待一定的时间,即使信道是空的。

(3)波分复用

 波分复用就是光的频分复用,在光通信领域,人们习惯按波长而不是按频率来命名。因此,所谓的波分复用(WDM,Wavelength Division Multiplexing)其本质上也是频分复用而已,主要应用光纤

(4)码分复用(CDM)

常用的名词是码分多址 CDMA (Code Division Multiple Access)。

码分复用CDM(Code Division Multiplexing)是各用户使用经过特殊挑选的不同码型,在同样的时间使用同样的频带进行通信,但彼此不会造成干扰。

这些码有个特殊的数学性质,那就是每个码自己的自相关函数的值很高,而不同码之间的互相关函数的值很小,暂且理解求相关函数的值为一种数学运算

这种系统发送的信号有很强的抗干扰能力,其频谱类似于白噪声,不易被敌人发现。

常用介质、

目前物理链路的介质有多种,不同的链路介质适用于不同的通信需求和环境。以下是一些常见的物理链路介质:

  • 光纤(Fiber Optics):光纤是一种使用光信号传输数据的高带宽介质。它由玻璃或塑料制成,通过内部的光反射来传输光信号。光纤通信具有高速、低损耗和抗干扰性能,被广泛应用于长距离通信、互联网骨干网络和高速数据传输。
  • 同轴电缆(Coaxial Cable):同轴电缆由中心导体、绝缘层、外导体和外部护套组成。它常用于电视信号传输、有线电视、局域网(LAN)和一些短距离通信需求,使用电磁波来传递。
  • 双绞线(Twisted Pair):双绞线是一种由两根绝缘的铜线绕在一起的电缆,常用于局域网(LAN)和电话系统。双绞线有不同等级,如Cat5、Cat6等,提供不同的带宽和传输性能,使用电磁波来传递。
  • 无线电波:无线电波是一种通过空气传播的电磁波,用于无线通信。它包括无线电广播、移动通信、Wi-Fi、蓝牙等。
  • 微波:微波通信使用微波频段的电磁波传输数据,常用于卫星通信和某些长距离传输场景。
  • 气体(如空气):在某些情况下,通信可以通过空气传输声波或其他形式的波来实现。
  • 电力线(Power Line Communication,PLC):电力线通信利用电力线传输数据,常用于家庭电力网和一些特定的通信场景。

这些物理链路介质在不同应用中各有优劣,选择适合的链路介质取决于通信需求、传输距离、带宽要求、环境条件以及成本等因素。

数据链路层、

数据链路层位于第二层主要是在物理层提供的服务基础上向网络层提供服务,工作在数据链路层的设备与组件主要有网卡、网桥和交换机。

主要功能:

  • 1.数据链路层的建立,维护与拆除
  • 2.帧包装,帧传输,帧同步,数据链路层传输的数据单位为帧
  • 3.物理层在传输过程中很容易受到环境干扰,进而产生错误但物理层无法察觉:1 可能会变成 0 而 0 也可能变成 1,因此数据链路层负责起“差错监测”的工作。并采用重传的方法进行帧的差错恢复
  • 4.流量控制确保中间传输设备的稳定及收发双方传输速率的匹配。

帧的封装过程:

 数据链路层就是在ip数据报的前面和末尾加了一个首部和尾部来代表ip数据包的开始和结束,首部和尾部都是由8位二进制数表示的,可以一样也可以不一样。

透明传输:

有一个这样的问题, 在ip数据包中如果有一个跟帧尾部一样的8位二进制数,则会提前结束接受数据包,这样数据就被破坏了。

解决:通过在特殊字符前面增加一个转义字符 ESC, 就可以解决上面所遇到的问题,在接收端,将数据包中所有ESC的字符删除,遇到两个ESC的,就删除第一个,这样一开始传输的时候有ESC转义字符,接受完就没了,所以说的是透明传输

假设我帧开始符号是1,帧结束符号是9,传输的数据是123456789,转义后的数据是1ESC12345678ESC99,接收方得到转义后的数据开始处理数据,1为帧头,处理到第一个ESC时抛弃掉该字符,继续处理,处理到第二个ESC时,抛弃它继续处理,到最后9时,到达帧尾,处理结束,最后得到的数据是123456789。

数据链路层的基本协议

  • 以太网协议(Ethernet Protocol):以太网是最常见的局域网技术,它定义了数据在局域网上的传输方式。以太网使用MAC地址来标识网络设备,采用CSMA/CD(载波监听多点接入/碰撞检测)访问控制方法来协调节点之间的数据传输。
  • PPP协议(Point-to-Point Protocol):PPP协议用于在点对点连接中传输数据,例如在拨号连接或通过串行线路进行数据传输时。PPP提供了数据链路层的封装和封装解除功能,允许在点对点连接中传输IP数据包和其他网络层协议。
  • HDLC协议(High-Level Data Link Control):HDLC是一种数据链路层协议,常用于广域网(WAN)中的数据传输。它提供了可靠的数据传输,支持全双工通信和异步传输模式。
  • SLIP协议(Serial Line Internet Protocol):SLIP协议是一种简单的串行线路协议,用于在串行线路上传输IP数据包。它不提供数据帧的定界和错误检测功能,需要上层协议(如TCP/IP)来处理这些问题。
  • PPPoE协议(Point-to-Point Protocol over Ethernet):PPPoE协议将PPP协议封装在以太网帧中,用于在以太网上建立点对点连接,通常用于DSL(数字用户线路)拨号上网。

数据链路层使用MAC地址(Media Access Control Address)来寻址和唯一标识网络接口卡(NIC)。当两个设备在同一局域网内进行通信时,数据链路层使用目标设备的MAC地址来将数据包直接传送到目标设备。

ARP(Address Resolution Protocol)协议是在局域网中解析IP地址到MAC地址的一种协议。因为在网络层(IP层),设备通常使用IP地址来寻址和标识。当源设备需要发送数据包到目标设备时,它首先需要知道目标设备的MAC地址才能在数据链路层上正确传送数据。

ARP协议的主要功能是根据目标设备的IP地址查询目标设备的MAC地址。当源设备知道目标设备的IP地址时,它会广播一个ARP请求(ARP Request)消息到局域网内,询问目标设备的MAC地址。目标设备接收到ARP请求后,会回复一个ARP响应(ARP Reply)消息,其中包含了它的MAC地址。

接收到ARP响应后,源设备就知道了目标设备的MAC地址,并且可以使用该MAC地址来在数据链路层上直接传送数据包到目标设备,实现了IP地址到MAC地址的映射。这样,在同一局域网内,数据链路层就能够正确地将数据包送达目标设备。

总结:ARP协议在数据链路层和网络层之间起着桥梁的作用,通过解析IP地址到MAC地址的映射,使得数据链路层能够在局域网内正确地传送数据包到目标设备。

差错检测、

链路层的差错检测是通过添加冗余信息(校验码)来实现的。冗余信息允许接收方在接收到数据时检测出是否在传输过程中发生了位错误或帧损坏。

常见的链路层差错检测技术包括:

  • 循环冗余校验(CRC):CRC是一种广泛使用的差错检测技术。发送端在发送数据帧之前,会将数据帧计算出一个固定长度的冗余码,并将这个冗余码附加到数据帧的末尾。接收端在接收数据帧后,也会进行CRC计算,并与接收到的冗余码进行比较。如果接收到的数据帧在传输过程中没有发生错误,那么接收端计算出的CRC与接收到的冗余码应该是一致的。如果两者不一致,说明数据帧在传输过程中发生了差错,接收方将丢弃该数据帧或请求重新发送。
  • 奇偶校验(Parity Check):奇偶校验是一种简单的差错检测技术。发送端在发送数据时,可以在每个字节(或每个字符)的最高位(或最低位)添加一个奇偶校验位。校验位的值设为使数据字节中包含的“1”的个数为奇数(奇校验)或偶数(偶校验)。接收端在接收数据后,检查校验位与数据是否匹配。如果不匹配,说明数据在传输过程中发生了错误。

这些差错检测技术都有一个共同的特点,即在数据帧中添加冗余信息,这样接收方可以利用这些冗余信息来检测并纠正传输过程中发生的差错。虽然这些方法可以检测出错误,但不能纠正错误。如果发现数据帧有错误,通常的做法是丢弃该数据帧并要求重新发送。在高可靠性的通信环境中,差错检测技术是非常重要的,它们可以帮助确保数据的可靠传输。