当前位置: 首页 > ds >正文

网络原理-

文章目录

    • 局域网(LAN)
    • 广域网(WAN)
    • IP地址
    • 端口号
    • 协议
      • 1. 通信的基本条件
      • 2. 协议的作用
      • 3. 协议的定义
    • TCP/IP 五层网络模型
    • 协议分层
      • 1. 为什么要分层
      • 2. 分层带来的好处
      • 3. 互联网中的协议分层(TCP/IP 五层协议)
    • 封装与分用
      • 1. 封装(Encapsulation)
      • 2. 分用(Decapsulation)

局域网(LAN)

定义:
局域网(Local Area Network,简称LAN),是指在本地、局部范围内组建的私有网络。
“Local”表明其覆盖范围有限,通常用于办公室、学校、家庭等场所。

特点:

  • 局域网内的主机可以方便地进行网络通信,也称为“内网”。
  • 没有连接的情况下,不同局域网之间是无法通信的。

局域网组建方式:

  1. 基于网线直连
    两台设备通过网线直接连接,适合小规模、临时组网。
  2. 基于集线器组建
    多台设备通过集线器(Hub)连接,早期常用,数据传输效率较低。
  3. 基于交换机组建
    多台设备通过交换机(Switch)连接,现代局域网的主流方式,效率高。
  4. 基于交换机和路由器组建
    交换机负责局域网内设备互联,路由器用于连接外部网络(如互联网),实现内外网通信。

广域网(WAN)

定义:
广域网(Wide Area Network,简称WAN),是指覆盖范围广泛的网络,可以连接不同地区、城市、甚至国家的多个局域网。

特点:

  • 通过路由器,将多个局域网连接起来,物理上组成大范围的网络,就形成了广域网。
  • 广域网内部的每个局域网都可以看作是广域网的子网。

应用举例:

  • 互联网就是最大的广域网。
  • 银行、企业、政府机构跨地域的分支机构互联。

IP地址

定义:
IP地址(Internet Protocol Address)是分配给网络中每一个设备的唯一标识,用于设备之间的通信和定位。

作用:

  • 标识网络中的主机或设备。
  • 实现数据包在网络中的寻址和转发。

类型:

  • IPv4地址:由4组数字组成,每组0~255,比如:192.168.1.1
  • IPv6地址:由8组十六进制数构成,比如:2001:0db8:85a3:0000:0000:8a2e:0370:7334

分类:

  • 公网IP:可以在互联网中访问,全球唯一。
  • 私有IP(内网IP):仅在局域网内使用,比如192.168.x.x10.x.x.x172.16.x.x~172.31.x.x

端口号

定义:
端口号是用来标识主机上的不同服务或应用程序的编号。一个IP地址可以对应多个端口,用于区分不同的数据通信。

作用:

  • 区分同一台设备上的不同网络服务(如网页、邮件、FTP等)。
  • 使得一台主机能同时提供多种服务。

范围:

  • 端口号是一个16位整数,范围:0~65535
  • 其中:
    • 0~1023:知名端口(系统端口),如HTTP(80),HTTPS(443),FTP(21),SMTP(25)
    • 1024~49151:注册端口(用户程序或服务)
    • 49152~65535:动态/私有端口(临时使用)

协议

网络中最核心的概念。

  • 协议是进行一切通信的基础。

1. 通信的基本条件

  • 通信至少得有两个主机。
  • 让发送方发的数据,接收方能够理解。

2. 协议的作用

  • 双方需要按照同样的规则来构造/解析数据。

3. 协议的定义

  • 协议,就是在约定通信双方、交互数据的“规则”。
  • 协议确定了,双方就在一个频道上了,才能进行有意义的通信。

TCP/IP 五层网络模型

(当前世界上最主流的网络协议模型)

  1. 应用层
    • 程序员能干预到的部分。
    • 负责处理用户的应用需求。
  2. 传输层
    • 关注网络通信中的“起点和终点”,不关心通信的中间细节。
    • 负责数据的可靠传输,比如TCP、UDP协议。
  3. 网络层
    • 进行网络通信的路径规划和地址管理。
    • 负责数据包的路由选择和转发。
  4. 数据链路层
    • 在网络层规划好的路径上,进行具体的数据传输实施。
    • 负责数据的帧传输和物理地址(MAC地址)管理。
  5. 物理层
    • 描述硬件设备需要满足的条件,比如网线、水晶头等。
    • 相当于“公路”“铁路”“航线”,负责数据的物理传输。
    • 程序员无法干预,已由操作系统或硬件设备实现。
  • 数据转发过程:主要涉及传输层、网络层和数据链路层三者协作,将数据从一台设备发送到另一台设备。
  • 应用层:是用户和程序员最常接触的部分,比如网页、邮件、聊天等应用。
  • 物理层:底层硬件,保证数据可以在设备间流动。

协议分层

1. 为什么要分层

  • 网络问题复杂,一个协议难以解决所有问题,需要拆分成多个协议。
  • 协议多了之后,需要分类管理。

2. 分层带来的好处

  • a) 使用某一层协议,不必理解其他层的细节。
  • b) 解耦合,可以更换某一层的指定协议。

3. 互联网中的协议分层(TCP/IP 五层协议)

层级主要作用说明备注/实现方式
应用层传输数据,用于具体应用应用程序
传输层关注传输中的起点和终点系统内核实现
网络层关注传输路径规划选择,并负责地址管理
数据链路层关注相邻节点之间的传输数据的具体实施硬件设备/驱动程序
物理层传输数据的硬件基础设施

封装与分用

1. 封装(Encapsulation)

定义
封装是指在数据传输过程中,每经过一层协议,都会在原有数据的基础上加上一些该层协议特有的信息(如头部header、尾部trailer),这样一层层包裹起来,最终形成完整的“数据包”或“帧”来进行传输。

举例说明

  • 应用层生成数据(如邮件内容)。
  • 传输层(如TCP)给数据加上TCP头部,变成“TCP段”。
  • 网络层(如IP)再加上IP头部,变成“IP包”。
  • 数据链路层(如以太网)再加上帧头和帧尾,变成“以太网帧”。
  • 物理层负责将这些数据转化为电信号、光信号等传输出去。

形象比喻
就像寄快递,原始物品(数据)先用盒子包装(TCP头),再装进更大的箱子(IP头),最后贴上快递单(以太网头),一路装到最外层。


2. 分用(Decapsulation)

定义
分用是封装的逆过程。接收方收到数据后,从最外层开始一层层“拆包”,每拆掉一层协议的头部/尾部,就交给上一层协议继续处理,直到还原出最初的数据。

举例说明

  • 物理层收到信号,转换成比特流,交给数据链路层。
  • 数据链路层去掉帧头帧尾,交给网络层。
  • 网络层去掉IP头,交给传输层。
  • 传输层去掉TCP头,交给应用层,还原出原始数据。

形象比喻
就像收到快递,先拆掉最外层的快递箱,再拆里面的小盒子,一层层拆,最后拿到你真正要的东西(数据)。

http://www.xdnf.cn/news/20440.html

相关文章:

  • 在Ubuntu平台搭建RTMP直播服务器使用SRS简要指南
  • Qt 基础教程合集(完)
  • 分布式数据架构
  • 硬件开发_基于物联网的老人跌倒监测报警系统
  • 数据结构——栈(Java)
  • MySQL数据库约束和设计
  • 附050.Kubernetes Karmada Helm部署联邦及使用
  • C++_哈希
  • 基于阿里云ECS搭建Tailscale DERP中继服务器:提升跨网络连接速度
  • 前端登录鉴权详解
  • C++面试10——构造函数、拷贝构造函数和赋值运算符
  • 西门子S7-200 SMART PLC:编写最基础的“起保停”程序
  • [特殊字符] 从零到一:打造你的VSCode圈复杂度分析插件
  • Linux内核源码获取与编译安装完整指南
  • Java8函数式编程之Stream API
  • 预闪为什么可以用来防红眼?
  • C/C++动态爱心
  • Caffeine Weigher
  • 蓓韵安禧DHA纯植物藻油纯净安全零添加守护母婴健康
  • 基于STM32智能阳台监控系统
  • Unity 如何使用ModbusTCP 和PLC通讯
  • 用 Go + HTML 实现 OpenHarmony 投屏(hdckit-go + WebSocket + Canvas 实战)
  • 《sklearn机器学习——绘制分数以评估模型》验证曲线、学习曲线
  • 鸿蒙Next开发指南:UIContext接口解析与全屏拉起元服务实战
  • DevOps实战(2) - 使用Arbess+GitPuk+Docker实现Java项目自动化部署
  • Rsyslog日志采集
  • 快捷:常见ocr学术数据集预处理版本汇总(适配mmocr)
  • js闭包问题
  • B.50.10.07-分布式锁核心原理与电商应用
  • 操作系统之内存管理