网络通信过程

网络通信过程

Wed Oct 02 2024
zzcoe
7 分钟
计网
未分配标签
1751 字

网络通信概述#

通过对 TCP、UDP 的编程学习,能够完成对实际项目需求中网络功能的开发,为了提高程序的稳定性以及效 率等等,通常会使用多线程、多进程开发: 根据功能需求的不同,可以利用 C/S(客户端服务器)、B/S(浏览器服务器) 模式进行开发

作为嵌入式工程师,需要对整个网络通信的过程进行掌握,从一个整体的角度来开发出更加稳定、效率的网 络程序

想一想 PCO 怎样才能够访问到www.gfedu.com

通过软件模拟多台电脑通信#

网络通信过程分析软件 PacketTracer 是由 Cisco 公司发布的一个辅助学习工具,提供了设计、配置、排除网络故障网络模拟环境 可以直接使用拖曳方法建立网络拓扑,并可提供数据包在网络中行进的详细处理过程,观察网络实时运行情况 Pasted image 20240522215902

Pasted image 20240522215558

[!NOTE] 补充

  1. 网络层:路由器、防火墙
  2. 数据链路层:网卡、网桥、交换机
  3. 物理层:中继器、集线器

通信过程-交换机#

交换机介绍#

网络交换机 (又称“网络交换器”),是一个扩大网络的器材,可以把更多的计算机等网络设备连接到当前的网络中。具有谁价比高、高度灵活、相对简单、易于实现等特点 以太网技术已成为当今最重要的一种局域网组网技术,网络交换机也就成为了最普及的交换机

交换机功能#
  1. 转发过滤:当一个数据的目的地址在 MAC 地址表中有映射时,它被转发到连接目的节点的端口而不是所有端口 (如该数据为广播/组播帧则转发至所有端口)
  2. 学习功能:以太网交换机了解每一端口相连设备的 MAC 地址,并将地址同相应的端口映射起来存放在交换机缓存中的 MAC 地址表中
  3. 目前交换机还具备了一些新的功能,如对 VLAN (虚拟局域网》的支持、对链路汇聚的支持,甚至有的还具有防火墙的功能

通过交换机可以组成一个简单的网络 Pasted image 20240523132012

使用 PacketTracer 软件模拟#

创建四台电脑连接到交换机,设置他们的 ip 地址在同一个字段下,就可以相互 ping 通,表示四台电脑已经相互连接并可以通信 Pasted image 20240523135241

仿真 通过仿真来了解数据包的发送过程 Pasted image 20240523151251 Pasted image 20240523151443 Pasted image 20240523151952 注意: 这是第一轮的流程在,这次之后两台主机就知道了相互的 MAC 地址,直接发送就可以,不需要交换机再进行广播直接发送就可以

总结: Pasted image 20240523154706 Pasted image 20240523155255

通信过程-路由器(PC+switch)#

路由器介绍#

路由器 (Router) 又称网关设备 (Gateway) 是用于连接多个逻辑上分开的网络所谓逻辑网络是代表一个单独的网络或者一个子网。当数据从一个子网传输到另一个子网时,可通过路由器的路由功能来完成,具有判断网络地址和选择 IP 路径的功能

路由器 ( Router ) 又称网关设备 ( Gateway ) 是用于连接多个逻辑上分开的网络所谓逻辑网络是代表一个单独的网络或者一个子网。当数据从一个子网传输到另一个子网时,可通过路由器的路由功能来完成具有判断网络地址和选择 IP 路径的功能路由器工作在网络层,可以实现不同网段的主机之间进行通信

路由数据转发过程#
  1. 主机发送数据
  2. 到了路由器以后,会将数据解析到网络层,找到数据里面的 IP 地址,根据路由表寻找下一跳的地址
  3. 路由表中有目的主机所在网络,下一条地址,以及 MAC 地址 Pasted image 20240530111746
使用 PacketTracer 软件模拟#

Pasted image 20240523175540 同网段的主机可以通信,不同网段的主机因为找不到对方的 MAC 地址而通信失败

Pasted image 20240523180148 注意: 非同一网段的两台主机无法通信,因为找不到对方的 MAC 地址,

不同网段的主机如何通信#

逻辑很简单,当与不同网段的主机通信时,必然要经过路由器,前提是告诉计算机谁是路由器,同样任何外部的数据要传送的主机也必然经过路由器,路由器也就具有了阻挡非法信息的功能像个保安一样,所以称为网关。

在尝通信的过程中会先把数据包发给网关,那就需要配置默认网关,不然电脑找不到谁是网关,也就是说当主机与不用网段的主机通信时会把数据先交给默认网关,所谓默认网关也就是路由器的 IP 地址。 Pasted image 20240523193517 这时候又遇到了新的问题,如何让发送方的路由器找到接收方的路由器 设置路由器让他能够和另一个路由器通信,同样对面的路由器要进行同样的设置才能回消息 Pasted image 20240523195906

Pasted image 20240523200435

[!NOTE] 总结 不在同一网段的 PC,需要设置默认网关才能把数据传送过去通常情况下,都会把路由器设为默认网关,当路由器收到一个其它网段的数据包时,会根据“路由表”来决定把此数据包发送到哪个端口; 路由表的设定有静态和动态方法。

通信过程-浏览器跨网访问 Web 服务器#

主要流程与上述相同,但需要额外配置客户端的 DNS 服务器 Pasted image 20240523201824 然后就可以使用浏览器访问服务器的 web 内容 Pasted image 20240523201928