计算机网络

文章目录

一文读懂计算机网络参考模型:从分层思想到实际应用

在数字化时代,我们每天刷视频、发消息、传文件,背后都是计算机网络在默默支撑。但你是否想过:一条消息从你的手机发到朋友的电脑,要经过多少"工序"?为什么同一台电脑能同时和多个设备通信?这些问题的答案,都藏在计算机网络的参考模型里。

今天,我们就从分层思想讲起,一步步揭开OSI模型、TCP/IP模型的神秘面纱,再聊聊IP地址、子网划分这些"硬核"知识,让你轻松掌握网络通信的底层逻辑。

一、分层思想:网络世界的"分工合作"

想象一下:你要给远方的朋友寄一箱水果。首先,你需要把水果打包(应用层),写上地址(表示层),联系快递公司(会话层),快递车规划路线(传输层),经过多个中转站(网络层),最后由快递员送到家门口(数据链路层、物理层)。整个过程分工明确,任何一环出问题都能快速定位------这就是网络分层思想的核心:"分而治之"

为了让大家更直观理解,我们可以把网络设备比作现实中的"交通设施":

  • 交换机:像城市里的公交站,负责同一区域内的"短途运输"(同一网段内的设备通信);
  • 防火墙:类似火车站的安检,过滤危险"包裹"(拦截不安全的网络数据);
  • 路由器:好比长途火车,负责跨区域的"长途运输"(不同网段间的通信);
  • 计算机:就像远在各地的亲朋好友,是数据的发送者和接收者。

端到端 vs 点到点:通信的两种"姿势"

在分层通信中,有两个易混淆的概念需要明确:

  • 点到点通信:指"主机到主机"的通信(对应网络层及以下)。比如你的电脑(192.168.1.10)给公司服务器(192.168.1.20)发数据,通过IP地址就能定位目标主机,这就是点到点。

  • 端到端通信:指"进程到进程"的通信(对应传输层)。比如你用QQ同时和A、B聊天,此时光靠IP地址不够了------需要用"IP+端口号"区分两个会话(比如A的端口是12345,B的是67890),这就是端到端。

简单说:点到点帮你找到"对方的电脑",端到端帮你找到"电脑上的具体程序"。

二、OSI七层模型:网络通信的"标准工序"

OSI(开放系统互连)模型是国际标准化组织(ISO)提出的网络通信标准,将网络通信分为7层,每一层都有明确的分工。我们结合"QQ聊天"的场景,逐个拆解:

层级 功能描述 QQ通信案例
应用层 为应用程序提供网络接口(用户与网络的"交互窗口") 你在QQ对话框输入文字、发送表情,就是应用层在工作
表示层 负责数据格式转换、加密/压缩("翻译官"+"安全员") QQ对消息加密(比如敏感信息加密传输)、压缩图片,避免数据传输过大
会话层 建立、管理、终止应用进程间的会话("连接管家") QQ发起聊天请求("对方正在输入")、断开聊天连接,都是会话层在控制
传输层 定义端口号,实现端到端的可靠传输("物流调度员") QQ通过端口号(比如默认端口8000)区分不同聊天窗口,TCP协议保证消息不丢失
网络层 进行IP地址寻址,选择跨网段的传输路径("导航系统") 你的消息从家里的WiFi(192.168.1.0网段)传到朋友的公司网络(10.0.0.0网段),路由器靠IP地址规划路线
数据链路层 处理MAC地址(物理地址),校验数据完整性("邻居间的快递员") 交换机通过MAC地址(网卡的物理地址),把数据准确送到同一网段内的目标电脑
物理层 传输二进制比特流(0和1),负责电信号/光信号转换("网线/光纤"的工作) 你的消息最终变成电信号,通过网线或无线电波传到对方设备

小提醒:高低层的"职责边界"

  • 高三层(应用层、表示层、会话层):主要由应用程序实现(比如QQ、浏览器),负责和用户交互、处理数据格式。
  • 传输层:是"高低层的桥梁",向上给应用程序提供端口,向下对接网络层的IP地址。
  • 低三层(网络层、数据链路层、物理层):由硬件设备(路由器、交换机、网卡)实现,负责数据的实际传输。

三、TCP/IP模型:实际应用中的"简化版"

OSI模型虽然理论完美,但太复杂。实际中我们更常用TCP/IP模型(互联网的"事实标准"),它将OSI的7层简化为4层或5层(5层更易理解):

TCP/IP 4层模型 TCP/IP 5层模型(常用) 对应OSI层 核心功能
应用层 应用层 应用层、表示层、会话层 各类应用协议(HTTP、FTP、SSH等),直接面向用户需求
传输层 传输层 传输层 TCP(可靠传输)、UDP(高效传输),用端口号区分进程
网络层 网络层 网络层 IP协议(寻址)、ICMP(差错控制)、路由器负责跨网段传输
网络接口层 数据链路层 数据链路层 MAC地址、交换机工作,处理同一网段内的数据帧
- 物理层 物理层 比特流传输,处理电信号/光信号

协议"大家族":TCP/IP协议族的核心成员

TCP/IP不是单个协议,而是一群协议的统称,我们日常用到的很多功能都依赖它们:

  • 应用层协议

    • HTTP(80端口):网页浏览,比如打开百度;
    • HTTPS(443端口):加密的HTTP,用于支付、登录等安全场景;
    • SSH(22端口):远程管理服务器,比如用Xshell连接虚拟机;
    • DNS(53端口):域名解析,把"www.baidu.com"变成IP地址。
  • 传输层协议

    • TCP:像"挂号信",可靠但稍慢(三次握手建立连接,保证数据不丢不重),适合文件传输、视频通话;
    • UDP:像"普通快递",高效但不可靠(发完就走,不管对方收没收到),适合直播、QQ消息。
  • 网络层协议

    • IP:给每个设备分配"网络身份证"(IP地址),比如192.168.1.1;
    • ARP:通过IP地址找MAC地址("知道对方名字,找他家门牌号");
    • ICMP:网络诊断工具(比如ping命令)的底层协议,用来检测网络连通性。

四、数据传输:从"比特"到"文件"的旅程

我们常说"百兆宽带""千兆网卡",但你知道这些速度单位的区别吗?

  • bps(比特率):网络设备的速度单位,指每秒传输的二进制位数(bit/s)。比如"100Mbps"就是每秒传输100兆比特。
  • Bps(字节率):下载工具显示的速度单位,1字节(Byte)=8比特(bit)。所以100Mbps的理论最大下载速度是100/8=12.5MB/s。

这就是为什么100Mbps宽带,实际下载速度很难超过12MB/s------单位不一样!

数据传输方式:单工、半双工、全双工

  • 单工:数据只能单向传输,比如电视直播(你只能看,不能给电视台发数据);
  • 半双工:数据能双向传输,但同一时间只能一个方向,比如对讲机("收到请回答,完毕"------说完才能听);
  • 全双工:数据能同时双向传输,比如视频通话(你说话的同时,也能听到对方说话)。

五、IP地址与子网划分:网络世界的"地址簿"

IP地址是设备在网络中的"身份证",好比现实中的"家庭住址"。我们常用的IPv4地址由32位二进制组成,为了方便记忆,写成"点分十进制"(比如192.168.1.1)。

IP地址的"分类"与"公私之分"

  • 分类:IPv4地址分A、B、C、D、E五类,我们常用的是A、B、C类:

    • A类:1.0.0.1~126.255.255.254,默认子网掩码255.0.0.0(适合大型网络);
    • B类:128.0.0.1~191.255.255.254,默认子网掩码255.255.0.0(适合中型网络);
    • C类:192.0.0.1~223.255.255.254,默认子网掩码255.255.255.0(适合小型网络,比如家庭WiFi)。
  • 公私之分

    • 公网IP:互联网上唯一的地址,比如网站服务器的IP,需要向运营商申请;
    • 私网IP:局域网内使用,不联网,比如家庭WiFi里的设备(192.168.x.x),节省公网地址资源。

子网划分:给网络"分段"

想象一个大公司有1000台设备,如果用一个网段(比如192.168.1.0/24,最多254台设备)肯定不够。这时候就需要"子网划分"------把一个大网段分成多个小网段,比如用255.255.255.128(/25)作为子网掩码,能把192.168.1.0分成两个网段:

  • 网段1:192.168.1.1~192.168.1.126(126台设备);
  • 网段2:192.168.1.129~192.168.1.254(126台设备)。

子网划分的核心是通过子网掩码(用1表示网络位,0表示主机位),灵活分配网络和主机的数量,既避免浪费,又提高安全性(不同子网默认隔离)。

六、写在最后:网络模型的"前世今生"

从OSI的理想化七层模型,到TCP/IP的实用主义四层模型,网络参考模型的发展始终围绕一个核心:让复杂的网络通信变得有序、可控

理解这些模型,不仅能帮你解决"为什么Xshell连不上虚拟机""为什么下载速度慢"这类实际问题,更能让你看清网络世界的运行规律------就像看懂了交通规则,才能更好地驾驶"数据"这辆车。

最后,留给大家一个小问题:你手机的IP地址是公网还是私网?不妨打开设置看看,然后想想它是怎么通过基站、路由器,把消息送到朋友手机里的~ 欢迎在评论区分享你的发现!

相关推荐
xlntj40 分钟前
VsCode远程连接服务器后安装Github Copilot无法使用
服务器·vscode·github
Wy_编程9 小时前
Linux-文本搜索工具grep
linux·运维·服务器
qq998999 小时前
AAA服务器技术
运维·服务器
xujiangyan_9 小时前
linux的sysctl系统以及systemd系统。
linux·服务器·网络
Lovyk9 小时前
Linux Shell 常用操作与脚本示例详解
linux·运维·服务器
泡泡龙~~10 小时前
计算机网络:2、TCP和UDP
tcp/ip·计算机网络·udp
iCan_qi10 小时前
【Mac】【Minecraft】关于如何在Mac上搭建基岩版MC服务器的方法
运维·服务器·macos·minecraft
xixingzhe212 小时前
多人同时导出 Excel 导致内存溢出
服务器·设计
吱吱企业安全通讯软件12 小时前
吱吱企业通讯软件保证内部通讯安全,搭建数字安全体系
大数据·网络·人工智能·安全·信息与通信·吱吱办公通讯