湛江有人做网站 的吗,做违规网站,网站优化怎么做关键词排名,app网站推广平台目录
#xff08;1#xff09;同一网段两台计算机通信过程
#xff08;2#xff09;不同网段的两台计算机通信过程
#xff08;3#xff09;目的主机收到数据包后的解包过程 #xff08;1#xff09;同一网段两台计算机通信过程
如果两台计算机在同一个局域网中的同…目录
1同一网段两台计算机通信过程
2不同网段的两台计算机通信过程
3目的主机收到数据包后的解包过程 1同一网段两台计算机通信过程
如果两台计算机在同一个局域网中的同一网段中它们之间的通信链路大致如下 1.源主机
应用层生成数据。传输层将数据封装成段TCP或数据报UDP。网络层将段或数据报封装成IP数据包并设置目标IP地址即目标主机的IP地址。数据链路层将IP数据包封装成帧并添加MAC地址信息源MAC地址和目标MAC地址。
2.本地网络
源主机将帧发送到本地网络。图中以太网驱动程序在链路层以太网驱动程序是软件它使操作系统能够与网卡进行通信和控制。网卡是硬件它提供了与网络连接的物理接口。当操作系统需要发送数据时它会将数据发送给以太网驱动程序驱动程序再将数据封装成帧传递给网卡进行传输。同样地当网卡接收到数据时它会将数据传递给驱动程序驱动程序再将数据传递给操作系统进行处理。以太网驱动程序与网卡之间通过特定的接口和协议进行通信以确保数据的正确传输和接收。如果有交换机的话一般路由器会兼有交换机的功能网卡将帧发送到交换机中后交换机会根据帧中的目标MAC地址查找对应的端口并将帧转发到该端口。如果交换机不知道目标MAC地址在哪个端口它可能会发送ARP请求来查询目标MAC地址。在没有交换机的情况下如果局域网是一个简单的点对点或总线型网络这在现代网络中很少见但在某些老旧的网络架构或特定应用中可能仍然存在 点对点连接如果局域网中只有两个主机并且它们之间是通过点对点连接如直接连接的两根网线或一个点对点设备进行通信的那么源主机发送的帧将直接到达目的主机无需经过任何中间设备。在总线型网络中所有的主机都连接在同一条通信电缆称为总线上。源主机将帧发送到本地网络后这个帧就会在整个本地网络上进行传播。总线上的所有主机都会接收到这个帧但是只有目标MAC地址与帧中指定的目标MAC地址相匹配的主机才会处理这个帧。其他主机则会忽略这个帧。
3.目标主机
当帧到达目标主机时数据链路层会解封装帧提取IP数据包并将其传递给网络层。网络层解封装IP数据包提取传输层的数据段或数据报并将其传递给传输层。传输层解封装数据段或数据报提取应用层的数据并将其传递给应用层。 在同一网段时两台主机通信不需要经过路由器直接网卡到网卡。因为当两台主机在同一网段时它们之间的通信是直接的它们之间的通信通常不会经过路由器Router。路由器主要用于连接不同的网络如局域网与广域网WAN或两个不同的局域网并基于IP地址中的网络部分网络号或子网号来决定数据包的转发路径。 2不同网段的两台计算机通信过程
如果两台计算机在不同的网段中那么数据从一台计算机到另一台计算机传输过程中要经过一个或多个路由器如下图所示 链路层有以太网、令牌环网等标准链路层负责网卡设备的驱动、帧同步即从网线上检测到什么信号算作新帧的开始、冲突检测如果检测到冲突就自动重发、数据差错校验等工作。交换机是工作在链路层的网络设备可以在不同的链路层网络之间转发数据帧比如十兆以太网和百兆以太网之间、以太网和令牌环网之间由于不同链路层的帧格式不同交换机要将进来的数据包拆掉链路层首部重新封装之后再转发。网络层的IP协议是构成Internet的基础。Internet上的主机通过IP地址来标识Internet上有大量路由器负责根据IP地址选择合适的路径转发数据包数据包从Internet上的源主机到目的主机往往要经过十多个路由器。路由器是工作在第三层网络层的网络设备同时兼有交换机的功能可以在不同的链路层接口之间转发数据包因此路由器需要将进来的数据包拆掉链路层和网络层两层首部并重新封装。IP协议不保证传输的可靠性数据包在传输过程中可能丢失可靠性可以在上层协议或应用程序中提供支持。数据包通常是通过网卡先发送到交换机再从交换机发送路由器通常路由器一般具备交换机的功能所以很多也是直接发送到路由器然后路由器根据路由表决定下一个发送的路由。网络层负责点到点ptoppoint-to-point的传输这里的“点”指路由器不过在同一网段时两台主机不需要经过路由器直接网卡到网卡而传输层负责端到端etoeend-to-end的传输这里的“端”通常指的是源主机上的应用进程和目的主机上的应用进程传输层可选择TCP或UDP协议。
3目的主机收到数据包后的解包过程
目的主机收到数据包后如何经过各层协议栈最后到达应用程序呢其过程如下
以太网驱动程序首先根据以太网首部中的“上层协议”字段确定该数据帧的有效载荷payload指除去协议首部之外实际传输的数据是IP、ARP还是RARP协议的数据报然后交给相应的协议处理。假如是IP数据报IP协议再根据IP首部中的“上层协议”字段确定该数据报的有效载荷是TCP、UDP、ICMP还是IGMP然后交给相应的协议处理。假如是TCP段或UDP段TCP或UDP协议再根据TCP首部或UDP首部的“端口号”字段确定应该将应用层数据交给哪个用户进程。IP地址是标识网络中不同主机的地址而端口号就是同一台主机上标识不同进程的地址IP地址和端口号合起来标识网络中唯一的进程。 虽然IP、ARP和RARP数据报都需要以太网驱动程序来封装成帧但是从功能上划分ARP和RARP属于链路层IP属于网络层。虽然ICMP、IGMP、TCP、UDP的数据都需要IP协议来封装成数据报但是从功能上划分ICMP、IGMP与IP同属于网络层TCP和UDP属于传输层。 end