网络通信的基本概念与设备

发布于:2025-08-18 ⋅ 阅读:(12) ⋅ 点赞:(0)

 

目录

一、互联网

二、JAVA跨平台与C/C++的原理

1、JAVA跨平台的原理

2、C/C++跨平台的原理

三、网络互连模型

四、客户端与服务器

五、计算机之间的通信基础

1、IP地址与MAC地址

2、ARP与ICMP对比

①ARP协议(地址解析协议)

②ICMP协议(互联网控制报文协议)

六、计算机之间的连接方式

1、集线器(Hub)

2、网桥

3、交换机

4、路由器


        数据是如何从一个设备传递到另一个设备的? 这一切都是由网络协议来规定的。没有网络协议,就没有今天的互联网。互联网、移动互联网、物联网,都离不开网络协议,为了满足各种需求,有各式各样的网络协议(HTTPS、SMTP、MQTT、RTMP等)。

一、互联网

互联网如何工作?

以访问网站为例,互联网的运作流程如下:

        ​输入网址:在浏览器输入 https://www.example.com。

        ​DNS解析:将域名转换为对应的IP地址(如 93.184.216.34)。

        ​建立连接:通过TCP协议与目标服务器三次握手,建立可靠连接。

        ​发送请求:HTTP协议向服务器请求网页数据。

        ​数据传输:数据被拆分为“数据包”,经路由器逐跳转发到目标服务器。

        ​服务器响应:服务器返回HTML、CSS、JavaScript等文件,浏览器渲染页面。

二、JAVA跨平台与C/C++的原理

1、JAVA跨平台的原理

JVM(Java Virtual Machine):Java虚拟机

·JAVA的跨平台:一次编译,到处运行编译

·生成跟平台无关的字节码文件(文件) 

·由对应平台的解析字节码为机器指令(01010

          编译                加载        Window/Mac/Linux

*.java------->  *.class --------->   JVM-->机器指令

注意:

如果代码有语法错误,将编译失败,并不会生成字节码文件

那就不会去运行一个程序。最后导致程序运行失败

2、C/C++跨平台的原理

C/C++的跨平台:使用平台相关的编译器生成对应平台的可执行文件

三、网络互连模型

什么是协议?

        协议(Protocol)是计算机或设备之间通信时遵循的规则和标准,定义了数据如何传输、格式如何组织、错误如何处理等,确保不同系统能正确交互。它类似于人类交流中的“语言”和“礼仪”,是数字世界协同工作的基础。为了更好地促进互联网络的研究和发展,国际标准化组织 ISO 在 1985 年制定了网络互连模型-->OSI 参考模型(Open System Interconnect Reference Model),具有 7 层结构

按功能分层:

具体分层内容:

协议如何工作?

以发送邮件为例

        ​用户写邮件:在客户端(如Outlook)输入内容,点击“发送”。

        应用层协议(SMTP):将邮件内容按SMTP格式封装(包括发件人、收件人)。

        ​传输层协议(TCP):将数据拆分为“段”,通过三次握手建立可靠连接。

        ​网络层协议(IP):添加源IP和目标IP地址,将数据包路由到邮件服务器。

        ​物理层:通过光纤/电缆将电信号传输到目标服务器。

        ​收件方:服务器按协议反向解析数据,最终将邮件投递到收件人邮箱

  四、客户端与服务器

客户端:​​​​请求服务的终端​​   --> 主动发起请求

​​服务器​​:​​提供服务的终端​​  -->  被动响应请求

请求过程

客户端发送数据(自上而下封装)​

①应用层:

生成原始数据(如HTTP请求:“获取首页内容”)。

添加应用层协议头(如HTTP头部:GET /index.html)。

②传输层:

将数据分割为“段”(Segment),添加端口号(如目标端口80)。

TCP协议附加序列号、校验和(确保可靠传输)。

③网络层:

封装为“数据包”(Packet),添加源IP和目标IP地址(如客户端IP 192.168.1.2 → 服务器IP 93.184.216.34)。

④数据链路层:

封装为“帧”(Frame),添加MAC地址(如客户端MAC 00:1A:2B:3C:4D:5E → 路由器MAC)。

⑤物理层:

将帧转换为比特流(电信号/光信号),通过网线或无线传输。

服务器接收数据(自下而上解封装)​

①物理层 → 数据链路层:

接收比特流,转换为帧,校验MAC地址是否匹配。

②数据链路层 → 网络层:

剥离MAC头部,检查IP地址是否为服务器自身IP。

③网络层 → 传输层:

剥离IP头部,根据端口号(如80)将数据交给对应服务(如Web服务器)。

④传输层 → 应用层:

TCP重组数据段(按序列号排序),校验完整性,最终传递原始HTTP请求到应用层。

⑤应用层处理:

解析HTTP请求,生成响应(如返回HTML文件),反向封装并发送回客户端。

总结:

        客户端与服务器的本质区别在于​​服务方向​​(请求 vs 响应),而非物理形态。当你在手机上滑动屏幕时——指尖触发客户端代码生成请求,跨越层层协议栈抵达云端服务器,CPU执行微秒级的计算,再将结果穿透无数路由器精准返回,整个过程就像一场由协议导演、数据担纲主角的环球接力赛。

五、计算机之间的通信基础

1、IP地址与MAC地址

IP地址是通信的起点:计算机需先获取目标设备的IP地址(通过DNS解析、手动输入等方式),这是跨网络寻址的基础。

最终是根据MAC地址(网卡地址),输送数据到网卡,被网卡接收

​目标MAC匹配:若数据帧的MAC地址与网卡自身地址一致,网卡将数据上传至网络层(如IP协议)处理。

​目标MAC不匹配:若MAC地址不匹配,网卡直接丢弃数据,避免无关流量占用系统资源。

关键设备:

​交换机:基于MAC地址转发数据(数据链路层)。

​路由器:基于IP地址跨网络路由(网络层)。

​网关:协议转换(如连接IPv4和IPv6网络)。

应用场景:

设备A(IP: 192.168.1.20)向设备B(IP: 192.168.1.21)发送数据:

        设备A检查本地ARP缓存表,若未找到B的MAC地址,发送ARP广播请求。

        设备B响应ARP请求,返回自己的MAC地址。

        设备B检查本地ARP缓存表,若未找到A的MAC地址,发送ARP广播请求。

        设备A响应ARP请求,返回自己的MAC地址。

        设备A将数据封装为帧(目标MAC=设备B的MAC),通过交换机发送。

        设备B的网卡检测到目标MAC匹配,接收数据并上传至网络层处理。

总结流程:

IP地址的获取:

用户通过域名(如 www.example.com)访问资源时,需先通过DNS协议将域名解析为IP地址。

若目标设备在局域网内,可直接通过ARP协议获取其MAC地址(无需经过路由器)。

IP地址 → MAC地址的转换:

通过ARP协议(Address Resolution Protocol)广播查询目标IP对应的MAC地址。

目标设备响应ARP请求,返回自身MAC地址,并存储在本地ARP缓存表中。

数据封装与传输:

数据在网络层封装为IP数据包(包含源/目标IP地址)

数据链路层封装为以太网帧(添加源/目标MAC地址)

通过物理介质(网线、光纤等)传输到目标设备的网卡。

网卡对数据帧的校验:

网卡检查帧头中的目标MAC地址:

​ ·匹配:拆解帧,将IP数据包传递给网络层协议。

​ ·不匹配:直接丢弃,不进行后续处理。

2、ARP与ICMP对比

①ARP协议(地址解析协议)

定义与作用:

        ARP(Address Resolution Protocol)用于将网络层的IP地址解析为数据链路层的MAC地址,使得同一局域网内的设备能够直接通信。

工作原理:

ARP请求(广播):当设备A需要与设备B通信,但不知道B的MAC地址时,会发送一个广播ARP请求,包含目标IP地址。

ARP响应(单播):设备B收到请求后,若IP匹配,则回复一个单播ARP响应,包含自己的MAC地址。

缓存机制:设备A将B的IP-MAC映射存入本地ARP缓存表(通常有效期几分钟),减少重复请求。

②ICMP协议(互联网控制报文协议)

定义与作用:

        ICMP(Internet Control Message Protocol)用于传递网络控制信息,如错误报告、状态查询,帮助诊断网络问题。

工作原理:

封装在IP数据包中(协议号1),不直接关联传输层(如TCP/UDP)。

设备根据ICMP报文类型执行操作,例如:

​  ·目标不可达(类型3):路由器无法转发数据包时发送。

​  ·超时(类型11):数据包TTL归零时触发。

​  ·回显请求/应答(类型8/0):用于ping命令测试连通性。

总结:

六、计算机之间的连接方式

1、集线器(Hub)

集线器(Hub)是一种工作在物理层(OSI第一层)的网络设备,主要功能是将接收到的电信号广播到所有连接的端口,实现多台设备的物理连接。

应用场景:

基于集线器的局域网,揭示了集线器的广播泛洪、冲突域共享和低效转发特性

2、网桥

网桥(Bridge)是一种工作在数据链路层(OSI第二层)的网络设备,主要用于分割冲突域 和 过滤网络流量,通过MAC地址学习实现智能转发,解决集线器的广播泛洪问题。以下是其核心特性:

·冲突域分割:每个网桥端口独立冲突域,避免全网冲突(集线器所有端口共享一个冲突域)。

·MAC地址表学习:记录设备的MAC地址与端口映射,仅转发必要流量。

·帧过滤:若目标设备在源端口同一侧,网桥丢弃帧,避免冗余传输。

应用场景:

先通过广播学习到每个计算机的MAC地址,再选择性的发送数据

广播域与冲突域的对比​:

总结对比:

3、交换机

交换机是一种工作在数据链路层(OSI第二层)的网络设备,,但三层交换机可处理网络层(IP路由)。通过记录源MAC地址和端口的对应关系构建MAC地址表,减少广播域,提升网络效率。

转发方式:

        ​存储转发:接收完整帧并校验错误后再转发(可靠性高)。

        ​直通转发:读取目标MAC后立即转发(延迟低,但可能传输错误帧)。

交换机 vs 集线器/网桥的对比:

        连接的设备必须在同一网段

        连接的设备处在同一广播域

4、路由器

路由器(Router)是连接不同网络的核心设备,工作在​​网络层(OSI第三层)​​,承担着​​跨网段寻址、数据包转发和路径控制​​的关键职能。

路由器的本质作用​​:

​​跨网络通信​​:实现跨越IP子网的数据传输(例:从192.168.1.0/24到10.0.0.0/8)
​​智能路径选择​​:基于路由表选择最优路径

应用场景:

交换机 vs 集线器/网桥/交换机的对比:

◼网线直连、同轴电缆、集线器、网桥、交换机

        连接的设备必须在同一网段

        连接的设备处在同一广播域

◼路由器

        可以在不同网段之间转发数据

        隔绝广播域

总结:

        交换机专注“快速连通同网段设备”,路由器负责“跨网段寻路与安全管控”——二者协同构建完整网络(如企业内交换机互联设备,路由器连接外网并隔离风险)。


网站公告

今日签到

点亮在社区的每一天
去签到