文章目录

  • 前言
  • 一、分层思想
    • 1.1 分层的基本概念
    • 1.2 点到点与端到端通信的区别
  • 二、OSI参考模型
    • 2.1 OSI七层模型的结构
    • 2.2 各层功能示例(以QQ为例)
    • 2.3 单工,半双工和全双工
    • 2.4 OSI七层模型总结
  • 三、TCP/IP模型
    • 3.1 TCP/IP四层与五层模型
    • 3.2 TCP/IP协议族的组成
  • 四、数据封装与解封装
    • 4.1 封装过程
    • 4.2 解封装过程
  • 五、计算机的数制
    • 5.1 常见数制
    • 5.2 数制的计算
    • 5.3 数制转换
      • 5.3.1 十进制转二进制
        • 5.3.1.1 方法一:除2取余法
        • 5.3.1.2 方法二:权重法
      • 5.3.2 二进制转十六进制
      • 5.3.3 二进制转八进制
  • 六、IP地址简介
    • 6.1 IPv4和IPv6
    • 6.2 IPv4地址分类
  • 七、子网划分
    • 7.1 IP地址组成结构
    • 7.2 子网掩码原理
    • 7.3 网络地址计算方法
    • 7.4 关键计算公式
    • 7.5 C类地址子网划分表
    • 7.6 实用案例解析
      • 7.6.1 案例1:172.16.0.0/12
      • 7.6.2 案例2:192.168.100.100/26
  • 总结

前言

计算机网络参考模型是理解网络通信的基础框架,它通过分层思想将复杂的网络通信过程简化为多个功能模块。同时,子网划分是网络规划中的重要技术,能够有效管理IP地址资源。

本文档综合了分层模型、OSI与TCP/IP模型的对比、数据封装与解封装过程、计算机数制转换以及子网划分等内容,旨在为读者提供清晰、系统的知识结构。


一、分层思想

1.1 分层的基本概念

分层思想通过将复杂的网络通信过程分解为多个功能相对独立的子层,简化了问题的复杂性。每一层专注于特定的功能,并通过接口与相邻层交互。

1.2 点到点与端到端通信的区别

  • 点到点通信:发生在网络层及以下,是主机到主机之间的通信,通过IP地址区分不同主机。
  • 端到端通信:发生在传输层,是进程到进程之间的通信,通过IP地址和端口号唯一标识一个会话。

例如:同一台计算机同时可以和很多台计算机通信,使用IP对不同的计算机加以区分。(点到点)

一台计算机上的一个程序(如qq)和很多其他计算机上的程序通信,需要使用IP+端口才能唯一的表示一个会话。如你用QQ同时和a、b、c三个用户通信,就是用三个用户连接的IP和端口号来区分的.


二、OSI参考模型

2.1 OSI七层模型的结构

OSI模型由七层组成,从上到下依次为:

  1. 应用层:网络服务与最终用户的一个接口(如QQ聊天窗口)。
  2. 表示层处理数据格式、加密和压缩(如数据翻译为二进制)。
  3. 会话层:建立、管理和终止会话(如QQ建立连接)。管理是否允许不同机器上的用户之间建立会话连接关系
  4. 传输层:定义传输数据的协议端口号,以及流控和差错校验(防火墙 端到端),将上层数据分片并加上端口号封装成数据段,或通过对报文头中的端口识别,实现网络中不同主机上的用户进程之间的数据分发。
  5. 网络层:进行逻辑地址IP地址)寻址,实现不同网络之间的路径选择(路由器)。
  6. 数据链路层:建立逻辑连接、进行硬件(MAC)地址寻址,提供差错校验(如交换机)。
  7. 物理层:负责比特流的传输(如网线、光纤)。报文头部和上层数据信息都是由二进制数组成的,物理层将这些二进制数字组成的比特流转换成电信号在网络中传输。

2.2 各层功能示例(以QQ为例)

  • 用户在QQ界面输入文字(应用层)。
  • 数据加密和解密(表示层)。
  • 找到对方实体,也就是对方的qq进程,建立与对方的会话(会话层)。
  • 找到对方端口,就是qq传输的信息用的是哪个端口(传输层)。
  • 通过路由器要找到对方网络地址(网络层)。
  • 通过物理地址找到主机(数据链路层)。
  • 数据以二进制比特流传输(物理层)。

2.3 单工,半双工和全双工

  1. 单工数据传输仅支持单向传输,在同一时间只能由一方发送或接收信息,无法实现双向通信。典型应用包括电视和广播系统。

  2. 半双工数据传输支持双向传输,但在特定时刻仅允许单向传输,本质上是可切换方向的单工通信。虽然同一时间只能单向传输,但支持双向交互。典型代表是对讲机系统。

  3. 全双工数据通信支持数据同时双向传输,实质上是两个单工通信的结合,要求设备具备独立的收发能力。这种模式可实现实时双向通信,电话系统是典型应用场景。

2.4 OSI七层模型总结

OSI七层模型的分层结构

上层结构(应用相关):

  • 应用层:为应用程序提供网络服务接口
  • 表示层:负责数据格式转换、加密解密及压缩处理
  • 会话层:管理应用程序间的会话建立、维护和终止

核心传输层:

  • 传输层:定义TCP/UDP等传输协议

底层结构(硬件相关):

  • 网络层:负责IP路由选择和流量控制
  • 数据链路层:通过校验、确认等机制确保数据传输可靠性
  • 物理层:处理原始比特流在物理介质上的传输

实际应用说明:

  1. 上层三层功能通常被整合到应用层,由应用服务器(如Tomcat、Nginx)实现
  2. 传输层是应用开发的主要关注点,定义数据传输协议
  3. 数据链路层功能由交换机实现
  4. 网络层功能由路由器实现

三、TCP/IP模型

3.1 TCP/IP四层与五层模型

  • TCP/IP四层模型:应用层、传输层、网络层、网络接口层。
  • TCP/IP五层模型:应用层、传输层、网络层、数据链路层、物理层。

3.2 TCP/IP协议族的组成

  • 应用层

    • HTTP(超文本传输协议):80端口
    • HTTPS:443端口
    • FTP(文件传输协议):20端口(数据传输)、21端口(控制连接)
    • DNS(域名系统):53端口
    • TFTP(简单文件传输协议):69端口
    • SMTP(简单邮件传输协议):25端口
    • SNMP(简单网络管理协议):161端口(代理进程)、162端口(通知接收)
    • Telnet:23端口
    • SSH:22端口
    • DHCP:67端口(服务器)、68端口(客户端)
  • 传输层

    • TCP(传输控制协议):面向连接,可靠传输
    • UDP(用户数据报协议):无连接,高效传输
  • 网络层

    • ICMP(互联网控制报文协议)
    • IGMP(互联网组管理协议)
    • IP(互联网协议)
    • ARP(地址解析协议)
    • RARP(反向地址解析协议)
      • IGMP:实现主机与路由器之间的组播管理,使物理网络上的系统能识别当前组播组成员
      • ARP:将IP地址解析为MAC地址
      • RARP:实现MAC地址到IP地址的反向解析
  • 数据链路层与物理层

    • IEEE 802.3(有线以太网标准)
    • IEEE 802.11(无线网络标准)

四、数据封装与解封装

4.1 封装过程

数据从上层向下层传递时,每一层会添加头部信息:

  • 应用层数据 → 传输层添加TCP头部 → 网络层添加IP头部 → 数据链路层添加MAC头部 → 物理层转换为比特流。

4.2 解封装过程

数据从下层向上层传递时,逐层解析头部信息并移除,最终还原为原始数据。


五、计算机的数制

5.1 常见数制

  • 二进制:逢二进一,以B2结尾(如 (1010)2,1010B)。
  • 十进制:逢十进一,以D、10结尾或省略(如(1010)10,1010D,1010)。
  • 十六进制:逢十六进一,以H或16结尾(如(1010)16,1010H)。

5.2 数制的计算

在数制中,还有一个规则,就是N进制必须是逢N进一。

  • 十进制采用逢十进一的计数规则
    (1010)₁₀ = 1×10³ + 0×10² + 1×10¹ + 0×10⁰

  • 二进制采用逢二进一的计数规则
    (1010)₂ = 1×2³ + 0×2² + 1×2¹ + 0×2⁰ = (10)₁₀

  • 十六进制采用逢十六进一的计数规则
    (1010)₁₆ = 1×16³ + 0×16² + 1×16¹ + 0×16⁰ = (4112)₁₀

5.3 数制转换

  • 十进制转二进制:除2取余法或权重法。
  • 二进制转十六进制:每4位一组转换为十六进制数。
  • 二进制转八进制:每3位一组转换为八进制数。

5.3.1 十进制转二进制

5.3.1.1 方法一:除2取余法
  1. 将十进制数除以2,记录商和余数
  2. 将商继续除以2,重复上述步骤直到商为0
  3. 将余数按从后到前的顺序排列,得到二进制数

示例:将25转换为二进制

25 ÷ 2 = 12 余 1
12 ÷ 2 = 6  余 0
6 ÷ 2 = 3   余 0
3 ÷ 2 = 1   余 1
1 ÷ 2 = 0   余 1

从后向前读取余数:11001,因此25(10) = 11001(2)

5.3.1.2 方法二:权重法
  1. 列出2的幂次方:1,2,4,8,16,32,…(从右到左)
  2. 找出最大的不超过目标数的2的幂次
  3. 用目标数减去该数,标记该位为1
  4. 重复上述步骤直到余数为0
  5. 未使用的位标记为0

示例:将37转换为二进制

32(2^5) < 37 → 1
37-32=5 → 16>5 → 0
8>5 → 0
4<5 → 1
5-4=1 → 2>1 → 0
1=1 → 1

结果为:100101(2)

5.3.2 二进制转十六进制

  1. 从右向左将二进制数每4位分为一组(不足4位左侧补0)
  2. 将每组二进制数转换为对应的十六进制数(0-9对应0-9,10-15对应A-F)
  3. 合并各组结果即为十六进制数

十六进制对应表

0000 = 0   0100 = 4   1000 = 8   1100 = C
0001 = 1   0101 = 5   1001 = 9   1101 = D
0010 = 2   0110 = 6   1010 = A   1110 = E
0011 = 3   0111 = 7   1011 = B   1111 = F

示例:将1101011011(2)转换为十六进制

  1. 分组:0011 0101 1011(左侧补两个0)
  2. 转换:3 5 B
  3. 结果为:35B(16)

5.3.3 二进制转八进制

  1. 从右向左将二进制数每3位分为一组(不足3位左侧补0)
  2. 将每组二进制数转换为对应的八进制数(0-7)
  3. 合并各组结果即为八进制数

八进制对应表

000 = 0   011 = 3   110 = 6
001 = 1   100 = 4   111 = 7
010 = 2   101 = 5

示例:将10110110(2)转换为八进制

  1. 分组:010 110 110(左侧补一个0)
  2. 转换:2 6 6
  3. 结果为:266(8)

六、IP地址简介

6.1 IPv4和IPv6

IP地址分为IPv4和IPv6两种格式:

IPv4地址:

  • 由32位二进制数构成
  • 采用点分十进制表示法
  • 实际存储时分4组,每组8位
  • 示例:
    • 二进制:11000000.10101000.00000000.00000010
    • 转换后:192.168.0.2 255.255.255.0

IPv6地址:

  • 长度为128位
  • 采用冒号分隔的十六进制表示法

IPv4地址由网络部分(NETWORK)和主机部分(HOST)组成。以192.168.1.132为例:

  • 网络部分:192.168.1
  • 主机部分:132
    其中:
    • 192.168.1.0 为网络地址
    • 192.168.1.255 为广播地址

IPv4地址分为私有地址和公有地址,公有地址是全球唯一的互联网IP地址。2019年11月26日是一个具有历史意义的日子,全球近43亿个IPv4地址在这一天正式宣告耗尽。

6.2 IPv4地址分类

IPv4地址主要分为A、B、C、D、E五类:

A类地址

  • 地址范围:1.0.0.1~126.255.255.254
  • 结构组成:网络部分+主机部分+主机部分+主机部分
  • 默认子网掩码:/8(255.0.0.0)

B类地址

  • 地址范围:128.0.0.1~191.255.255.254
  • 结构组成:网络部分+网络部分+主机部分+主机部分
  • 默认子网掩码:/16(255.255.0.0)

C类地址

  • 地址范围:192.0.0.1~223.255.255.254
  • 结构组成:网络部分+网络部分+网络部分+主机部分
  • 默认子网掩码:/24(255.255.255.0)

D类地址

  • 地址范围:224.0.0.1~239.255.255.254
  • 用途:专用于组播通信(一对多通信)
  • 通信类型说明:
    • 单播:一对一通信
    • 广播:一对多通信
    • 组播:一对特定组通信

E类地址

  • 地址范围:240.0.0.1~255.255.255.254
  • 用途:保留用于科学研究

特殊地址说明:

  • 127.x.x.x系列地址表示本机(广播地址127.255.255.255除外),其中127.0.0.1为本机回环地址
  • 169.254.0.0~169.254.255.255:当DHCP服务失效时自动分配的地址

(重点)私有网络地址(简称私网地址)是指用于内部网络或主机的专用IP地址。根据IANA(互联网数字分配机构)规定,以下IP地址段被保留为私网地址,不在公网中分配,仅供单位或公司内部使用。RFC1918中定义的私有地址范围如下:

  • A类私有地址:10.0.0.0~10.255.255.255(10.0.0.0/8)
  • B类私有地址:172.16.0.0~172.31.255.255(172.16.0.0/12)
  • C类私有地址:192.168.0.0~192.168.255.255(192.168.0.0/16)

七、子网划分

7.1 IP地址组成结构

  • 网络地址:标识网络本身的地址
  • 可用IP范围:可分配给主机的IP地址
  • 广播地址:用于向该网络所有主机广播的地址

示例:

192.168.1.189/24
网络号: 192.168.1.0
可用IP: 192.168.1.1~192.168.1.254
广播地址: 192.168.1.255

7.2 子网掩码原理

  • 32位二进制数
  • 对应IP地址的网络部分用1表示
  • 对应IP地址的主机部分用0表示

7.3 网络地址计算方法

IP地址和子网掩码进行"与"运算得到网络地址:

  • 0和任何数相与等于0
  • 1和任何数相与等于该数本身

示例:

IP: 192.168.1.189/26 (11000000.10101000.00000001.10111101)
掩码: 255.255.255.192 (11111111.11111111.11111111.11000000)
网络地址: 192.168.1.128 (11000000.10101000.00000001.10000000)
广播地址: 192.168.1.191 (主机位全置1)

7.4 关键计算公式

  1. 子网数 = 2ⁿ,其中n=子网掩码位数-原网络类默认位数

    • A类:n=掩码-8
    • B类:n=掩码-16
    • C类:n=掩码-24
  2. 主机数 = 2ᴺ - 2,其中N=32-子网掩码位数

7.5 C类地址子网划分表

子网掩码/24/25/26/27/28/29/30/31/32
掩码值0128192224240248252254255
子网数1248163264128256
IP总数2561286432168421
可用IP25412662301462-1

7.6 实用案例解析

7.6.1 案例1:172.16.0.0/12

IP: 172.16.0.0 (10101100 00010000 00000000 00000000)
掩码: 255.240.0.0 (11111111 11110000 00000000 00000000)
网络地址: 172.16.0.0(10101100 00010000 0000 0000)
广播地址: 172.31.255.255(10101100 00011111 11111111 11111111)
子网数: 2^4=16
主机数: 2^20-2=1,048,574

7.6.2 案例2:192.168.100.100/26

网络地址: 192.168.100.64
广播地址: 192.168.100.127
子网数: 4
主机数: 62
可用范围: 4个子网(0-63,64-127,128-191,192-255)

总结

本文档系统介绍了计算机网络的分层模型、OSI与TCP/IP的对比、数据封装与解封装过程、数制转换以及子网划分技术。通过分层思想,可以更好地理解网络通信的复杂性;而子网划分则为IP地址管理提供了灵活性和效率。掌握这些基础知识,是进一步学习网络技术和解决实际问题的关键。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/93761.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/93761.shtml
英文地址,请注明出处:http://en.pswp.cn/bicheng/93761.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Elasticsearch全文检索中文分词:IK分词器详解与Docker环境集成

目录一、IK分词器介绍与选择1. IK分词器详细介绍1.1 基本概念1.2 核心功能1.3 适用场景2. 如果不使用IK分词器&#xff0c;有哪些替代方案&#xff1f;2.1 默认分词器的局限性2.2 替代方案及对比2.3 示例&#xff1a;Ngram Tokenizer配置3. 如何选择分词器&#xff1f;3.1 决策…

实用软件推荐

作者给大家推荐两个软件&#xff1a;typedown,typora typedown在microsoft上即可下载&#xff0c;免费 如果有更多的需求建议下载typora,typora为付费软件 typora官网&#xff1a;typora官网 typedown下载&#xff1a;typedown下载 作者曾经发布的一些以"md"为后…

地图导航怎么测?

地图导航的测试需要结合功能验证、性能评估和场景模拟等多维度方法,以下是基于行业标准和实践的系统化测试方案: 一、核心测试维度与方法 (一)功能测试:覆盖导航全流程 1、基础功能验证 路线规划:输入起点 / 终点后,验证系统是否能生成最短、最快或避开拥堵的路线,并…

力扣70:爬楼梯

力扣70:爬楼梯题目思路代码题目 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢&#xff1f; 思路 首先我们先列出来前几个台阶的答案从第一个开始&#xff1a;1&#xff0c;2&#xff0c;3&#xff0c;5。…

CoRL 2025|隐空间扩散世界模型LaDi-WM大幅提升机器人操作策略的成功率和跨场景泛化能力

内容源自计算机科研圈在机器人操作任务中&#xff0c;预测性策略近年来在具身人工智能领域引起了广泛关注&#xff0c;因为它能够利用预测状态来提升机器人的操作性能。然而&#xff0c;让世界模型预测机器人与物体交互的精确未来状态仍然是一个公认的挑战&#xff0c;尤其是生…

Rust 入门 生命周期-next2 (十九)

生命周期消除实际上&#xff0c;对于编译器来说&#xff0c;每一个引用类型都有一个生命周期&#xff0c;那么为什么我们在使用过程中&#xff0c;很多时候无需标注生命周期&#xff1f;例如&#xff1a;fn first_word(s: &str) -> &str {let bytes s.as_bytes();f…

Three.js 动画循环学习记录

在上一篇文章中&#xff0c;我们学习了Three.js 坐标系系统与单位理解教程&#xff1a; Three.js 坐标系系统与单位理解教程 接下来我们要学习的是Three.js 的动画循环 一、动画循环基础原理 1. 什么是动画循环&#xff1f; 动画循环是连续更新场景状态并重新渲染的过程&am…

ktg-mes 改造成 Saas 系统

ktg-mes 改造成 Saas 系统 快速检验市场&#xff0c;采用最简单的方案&#xff0c;即添加表字段 截止2025年8月16日上传的ktg-mes搭建存在一些问题&#xff0c;搭建可看文章&#xff1a; 搭建ktg-mes 改造 1. 添加租户表 create table sys_tenant (tenant_id bigint au…

【新手易混】find 命令中 -perm 选项的知识点

find 命令是 Linux/Unix 系统中强大的文件查找工具&#xff0c;广泛用于根据文件名、类型、时间、权限等条件搜索文件。其中&#xff0c;-perm 选项用于按文件权限查找文件&#xff0c;而在 -perm /mode 中出现的斜杠 / 是一种特殊的语法&#xff0c;表示“按位或&#xff08;O…

gdb的load命令和传给opeocd的monitor flash write_image erase命令的区别

问&#xff1a; "monitor flash write_image erase ${workspaceFolder}/obj/ylad_led_blink.elf", 和 "load", "executable" : "${workspaceFolder}/obj/ylad_led_blink.elf", 的区别&#xff1f;答&#xff1a; 你提到的 "monit…

1. Docker的介绍和安装

文章目录1. Docker介绍核心概念核心优势与虚拟机的区别一句话总结2. Docker的安装Windows 10/11 安装 Docker Desktop&#xff08;推荐 WSL2 方式&#xff09;Linux&#xff08;以 Ubuntu / Debian 系为例&#xff09;Docker 是一个开源的容器化平台&#xff0c;它允许开发者将…

fastdds.ignore_local_endpoints 属性

Fast DDS 的 fastdds.ignore_local_endpoints 属性用于控制同一 DomainParticipant 下的本地端点&#xff08;即 DataWriter 和 DataReader&#xff09;是否自动匹配。以下是对该功能的详细解释&#xff0c;并翻译为中文&#xff0c;结合其上下文、实现原理和使用场景&#xff…

华清远见25072班C语言学习day11

重点内容:函数&#xff1a;定义&#xff1a;返回值类型 函数名(参数列表) { //函数体 }函数的参数列表中可以有多个数据返回值&#xff1a;如果函数没有返回值可以写成void 返回值的作用&#xff0c;函数的结果用来返回给主调函数的&#xff0c;如果主调函数处不需要函数的结果…

视觉语言导航(7)——VLN的数据集和评估方法 3.2

这是课上做的笔记&#xff0c;因此很多记得比较急&#xff0c;之后会逐步完善&#xff0c;每节课的逻辑流程写在大纲部分。成功率(SR)导航误差(NE)成功加权路径长度&#xff08;SucceedPLength&#xff09;轨迹长度&#xff08;TL&#xff09;先知成功率&#xff08;OS&#xf…

ElasticSearch不同环境同步索引数据

目的&#xff1a;在生产环境把一个索引的数据同步到测试环境中1、在生产环境导出json数据curl -u "adims_user:xkR%cHwR5I9g" -X GET "http://172.18.251.132:9200/unify_info_mb_sp_aggregatetb_0004/_search?scroll1m" -H Content-Type: applicatio…

咨询进阶——解读咨询顾问技能模型

适应人群为咨询行业从业者、咨询团队管理者、想提升咨询技能的职场人士及咨询公司培训人员。主要内容围绕咨询顾问技能模型展开,核心包括五大核心能力(解决问题能力,涵盖洞察力、分析技巧、问题构建等,从识别问题实质到构建新分析方法分层次阐述;管理能力,涉及管理他人与…

2025年- H98-Lc206--51.N皇后(回溯)--Java版

1.题目描述2.思路 二维数组集合 (1&#xff09;N皇后规则 1&#xff09;不能同行&#xff08;同一行不能出现2个皇后&#xff09; 2&#xff09;不能同列&#xff08;同一列不能出现2个皇后&#xff09; 3&#xff09;不能说45度或135度&#xff08;斜对角线不能出现2个皇后&am…

5G + AI + 云:电信技术重塑游戏生态与未来体验

在数字娱乐蓬勃发展的今天&#xff0c;游戏产业已然成为科技创新的前沿阵地。电信网络也经历了一场深刻的蜕变&#xff0c;从最初仅仅是 “内容传输管道”&#xff0c;摇身一变成为与游戏深度绑定的技术共生体。5G 不断刷新着体验的边界&#xff0c;AI 彻底颠覆传统的创作模式&…

【React Hooks】封装的艺术:如何编写高质量的 React 自-定义 Hooks

【React Hooks】封装的艺术&#xff1a;如何编写高质量的 React 自-定义 Hooks 所属专栏&#xff1a; 《前端小技巧集合&#xff1a;让你的代码更优雅高效》 上一篇&#xff1a; 【React State】告别 useState 滥用&#xff1a;何时应该选择 useReducer 作者&#xff1a; 码力…

华为GaussDB的前世今生:国产数据库崛起之路

在数据库领域&#xff0c;华为GaussDB已成为一颗耀眼的明星&#xff0c;为企业核心业务数字化转型提供坚实的数据底座。但这并非一蹴而就&#xff0c;其背后是长达二十余年的技术沉淀、战略投入与持续创新。本文将深入探寻华为GaussDB的历史沿革与核心技术细节&#xff0c;展现…