网工干货知识

超全学习笔记
当前位置:首页 > 干货知识

计算机网络中不同层的运作方式

更新时间:2026年03月27日   作者:spoto   标签(Tag):

有没有想过,网络中的各个层是如何协同工作以传递信息的呢?在深入了解之前,我们先来了解一下一些基本的概念吧。
 

  • A 默认网关它充当着一个接入点或IP路由器,网络中的计算机可以通过它来向另一个网络或互联网中的计算机发送信息。
     
  • 地址解析协议(ARP)请求这是一种能够将IP地址转换为MAC地址的协议。
     
  • A 路由表它是一组规则,通常以表格形式呈现。这些规则用于确定通过互联网协议(IP)网络传输的数据包应该被发送到哪里。
     


通常情况下,主机或计算机拥有从应用层到物理层的全部层次结构;而路由器则只拥有网络层、数据链路层以及物理层。
现在,让我们通过一个例子来理解不同层的工作原理。
 


假设你想向主机2上的某个应用程序发送消息(假设该应用程序位于不同的网络中)。
假设主机1的IP地址和MAC地址分别为I1和M1,而主机2的IP地址和MAC地址则分别为I2和M2。假设主机1的默认网关是路由器1(IP地址为IR1,MAC地址为MR1),而主机2的默认网关则是路由器2(IP地址为IR2,MAC地址为MR2)。
在Host1上: 
假设应用层希望将消息M发送给host2。那么,host1的应用层会将该消息传递给host1的传输层。传输层会在消息M上添加一些头部信息,其中包括host1和host2的端口号。因此,现在消息的形式就变成了(M,x,y)。之后,该消息会被传递给host1的网络层。网络层同样会在消息上添加一些头部信息,这些信息包含了host1和host2的IP地址。
现在,该消息将被表示为 (M, x, y, I1, I2),然后会被传递给DataLink层。 数据链路层还会在将数据传递给物理层之前,为消息添加一个头部信息。 由于 host2 并不位于同一网络中,因此它无法获取 host1 的MAC地址以及默认网关的MAC地址。不过,它可以通过发送ARP请求来得知这些MAC地址。 现在,该消息将被表示为 (M, x, y, I1, I2, M1, MR1)。这个消息会被传递给物理层。 物理层将接收到的消息转换为二进制数据,然后将其发送给路由器1。
 


在路由器1上: 
物理层会将比特位转换为消息,并通知数据链路层:在看到Router1的MAC地址后,该数据包应该被处理。当Router1的数据链路层接收到该数据包后,它会向数据链路层主机1发送确认信号,同时会删除在主机1的数据链路层中添加的头部信息,然后再将其传递给Router1的网络层。网络层接收到的消息为(M, x, y, I1, I2)。
网络层会看到目标设备的IP地址。由于目标设备并不在其网络中,因此网络层会决定将其转发给路由器2来处理。 路由器1的网络层在查看了路由表之后,会做出相应的决策。现在,路由器的DLL会在消息中添加相关头信息。 这次,源MAC地址将是MR1,而目标MAC地址则是MR2(通过Arp工具来确定的)。 通过这种方式,接收方只能知道源设备的IP地址,而永远无法得知源设备的MAC地址。 现在,该消息将被表示为 (M, x, y, I1, I2, MR1, MR2),然后会被传递给物理层。 物理层将信号转换为比特数据,然后将其发送给路由器2。
 


在路由器2处: 
物理层会将这些比特数据转换为消息,并通知路由器2的DLL。随后,路由器2的DLL在收到该消息后,会向路由器1的DLL发送确认信号。最后,路由器2的DLL会移除MAC地址,并将其交给网络层处理。
现在,网络层发现host2处于路由器2所连接的网络中,因此它会将消息发送给host2。 在网络层,当看到路由器2中存在的路由表后,系统得知host2也处于同一网络中。现在,该DLL会添加包含路由器2的MAC地址作为头部信息(发送方),以及M2的MAC地址作为头部信息(接收方)。这一信息是通过ARP请求来确定的。 现在,该消息将被转换为 (M, x, y, I1, I2, MR2, M2)。然后,该消息会被传输到物理层,物理层会将它转换成二进制数据,之后再将其发送给host2。
 


在Host2上: 
物理层会将这些数据转换为二进制数据,然后将其传递给DLL。DLL会向router2发送确认消息,同时还会从消息中移除MAC地址信息。这些信息将被传递给NL。接下来,网络层会移除IP地址信息,并将其传递给传输层。
现在,传输层会向主机1的传输层发送一个确认消息(在TCP协议中,因为该主机1具有IP地址)。这个消息的格式为(M, y, x, I2, I1)。之后,传输层会去除消息中的端口号,然后将该消息传递给位于y处的进程或应用程序。
 


注意: 
 

  1. 由于传输层负责实现端到端的连接,因此Host2的传输层会向Host1的传输层发送确认消息。
     
  2. 数据链路层负责实现不同节点之间的连接。每当一个路由器或主机接收到数据包的确认消息时,该消息会被传递给相应的数据链路层。
     
  3. 网络层负责处理比特级别的错误,而传输层则负责处理数据包的错误。
     
  4. 路由器的MAC地址是临时的,因为ISP通常会更换包含MAC地址的网络接口卡。因此,默认网关的IP地址是共享给各种主机和其他路由器的,而不是MAC地址本身。
     


这就是一个主机上的消息如何被传输到不同网络中的另一个主机上的过程。
 

              马上抢免费试听资格
意向课程:*必选
姓名:*必填
联系方式:*必填
QQ:
思博SPOTO在线咨询

相关资讯

即刻预约

免费试听-咨询课程-获取免费资料