计算机网络|数据流向剖析与分层模型详解

文章目录

    • 一、网络中的数据流向
    • 二、计算机网络通信模型
      • 1.OSI 模型
      • 2.TCP/IP 模型
      • 3.TCP/IP五层模型
        • 3.1 分层架构描述
        • 3.2各层地址结构
        • 3.3UDP数据包报头结构
      • 三、总结

一、网络中的数据流向

在计算机网络中,数据的流向是指数据从发送端到接收端的传输路径。数据流向涉及到多个层次的网络通信模型,包括物理层、数据链路层、网络层、传输层和应用层。理解数据流向对于网络通信的设计、管理和故障排除至关重要。下图展示了数据流的简单流向
在这里插入图片描述

二、计算机网络通信模型

1.OSI 模型

OSI(Open Systems Interconnection)模型是一个概念模型,它定义了网络通信的七层结构,从下到上分别是:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。OSI 模型的每一层都有特定的功能和协议,用于实现数据的传输和通信。

2.TCP/IP 模型

TCP/IP(Transmission Control Protocol/Internet Protocol)模型是实际应用中最广泛的网络通信模型,它将 OSI 模型简化为四层,分别是:网络接口层、网络层、传输层和应用层。TCP/IP 模型的每一层也有特定的功能和协议,用于实现数据的传输和通信。

3.TCP/IP五层模型

3.1 分层架构描述

TCP/IP 五层模型,它是对 TCP/IP 协议族的一种分层架构描述,包括以下五层:
1. 应用层(Application Layer)
功能:这是最接近用户的一层,主要负责为用户提供网络服务,如文件传输、电子邮件、网页浏览等。应用层协议包括 HTTP(超文本传输协议,用于网页浏览)、FTP(文件传输协议)、SMTP(简单邮件传输协议)等。
数据单元:应用层的数据单元是消息(Message)。
2. 传输层(Transport Layer)
功能:主要负责在源主机和目的主机的应用程序之间提供端到端的通信服务,确保数据的可靠传输或优化传输效率。这一层有两个重要的协议:TCP(传输控制协议,提供可靠的、面向连接的服务)和 UDP(用户数据报协议,提供不可靠的、无连接的服务)。
数据单元:传输层的数据单元是段(Segment,对于 TCP)或报文(Datagram,对于 UDP)。
3. 网络层(Internet Layer)
功能:负责将分组从源主机发送到目标主机,通过 IP 地址进行寻址和路由选择,使得数据能够跨越不同的网络到达目的地。核心协议是 IP(互联网协议)。
数据单元:网络层的数据单元是分组(Packet)。
4. 数据链路层(Data Link Layer)
功能:负责将网络层传来的分组封装成帧,并将帧从一个节点(如计算机、交换机等)传输到相邻节点,主要处理物理地址(MAC 地址)、差错检测和流量控制等。
数据单元:数据链路层的数据单元是帧(Frame)。
5. 物理层(Physical Layer)
功能:最底层,负责处理物理介质上的比特流传输,包括物理介质的电气特性、机械特性、功能特性和过程特性等,如网线的类型、光纤的规格、无线信号的频段等。

在这里插入图片描述

3.2各层地址结构

在这里插入图片描述

在这里插入图片描述

3.3UDP数据包报头结构

在这里插入图片描述

  • UDP 报头的定义:UDP 报头本身由 4 个字段组成:源端口(16 位)、目的端口(16 位)、长度(16 位)和检验和(16 位)。这
    4 个字段构成了 UDP 报头,其长度是固定的 8 字节。
  • UDP 伪首部的性质:UDP 伪首部是在计算 UDP检验和时临时构造出来的,它并不属于 UDP 报头的实际组成部分。伪首部包含源 IP 地址(32 位)、目的 IP 地址(32位)、全零(8 位)、协议(8 位,对于 UDP 是 17)、UDP 长度(16 位)。
  • 伪首部的作用主要是在计算检验和时,让 UDP能够结合 IP 层的信息来增强错误检测能力。

三、总结

计算机网络的层次模型是一种抽象概念,用于规范和解释网络通信的流程。实际上,在数据于物理介质上传输的过程中,是严格遵循这些层次所定义的功能和规则来进行处理的,各层之间相互协作,共同完成数据的传输任务。每一层负责特定功能,分层体系有助于更高效地管理网络,包括网络的构建、维护、优化以及故障排查等工作,同时也为网络技术的不断发展和创新提供了清晰的框架和基础。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/945021.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ensp、HCL环境部署vm版

ensp、HCL环境部署vm版 前言部署环境vmware安装下载镜像创建虚拟机安装ensp、HCL创建快照 问题此平台不支持虚拟化的 AMD-V/rvi。 前言 因为我换了电脑,锐龙版的win11,我按照以前的思路去装软件,发现有很多问题,特别是跳hyper-v弹…

鸿蒙项目云捐助第二十九讲云捐助项目云数据库商品的批量增加功能实现

鸿蒙项目云捐助第二十九讲云捐助项目云数据库商品的批量增加功能实现 关于鸿蒙云捐助项目,前面的内容已使用云函数,云数据库分别实现云捐助项目首页中的项分类导航,底部导航,轮播图功能,这里继续实现云数据库加载捐赠…

【LeetCode: 83. 删除排序链表中的重复元素 + 链表】

🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

Spring源码_05_IOC容器启动细节

前面几章,大致讲了Spring的IOC容器的大致过程和原理,以及重要的容器和beanFactory的继承关系,为后续这些细节挖掘提供一点理解基础。掌握总体脉络是必要的,接下来的每一章都是从总体脉络中, 去研究之前没看的一些重要…

2024-12-29-sklearn学习(25)无监督学习-神经网络模型(无监督) 烟笼寒水月笼沙,夜泊秦淮近酒家。

文章目录 sklearn学习(25) 无监督学习-神经网络模型(无监督)25.1 限制波尔兹曼机25.1.1 图形模型和参数化25.1.2 伯努利限制玻尔兹曼机25.1.3 随机最大似然学习 sklearn学习(25) 无监督学习-神经网络模型(无监督) 文章参考网站&a…

BUG分析 - 重启有时失败

1. 倒查版本 1.0_11 - ok1.0_12 - fail 2.对比1.0_11和1.0_12 失败时的日志 ================================== 1.0_11 ============================== 2024-12-26 09:46:51.886 INFO [26332] [ThreadPLCPool::in

git注意事项

提交代码的备注 feat : 开发 新增功能 fix: 修复 git相关 1. git安装及全局用户设置 Git安装 npm install git -ggit修改用户名邮箱密码 git config --global --replace-all user.name "要修改的用户名" git config --global --replace-all user.email"要修改…

LeetCode每日三题(六)数组

一、最大子数组和 自己答案: class Solution {public int maxSubArray(int[] nums) {int begin0;int end0;if(numsnull){//如果数组非空return 0;}else if(nums.length1){//如果数组只有一个元素return nums[0];}//初值选为数组的第一个值int resultnums[0];int i…

一个通用的居于 OAuth2的API集成方案

在现代 web 应用程序中,OAuth 协议是授权和认证的主流选择。为了与多个授权提供商进行无缝对接,我们需要一个易于扩展和维护的 OAuth 解决方案。本文将介绍如何构建一个灵活的、支持多提供商的 OAuth 系统,包括动态 API 调用、路径参数替换、…

小程序配置文件 —— 15 页面配置

页面配置 小程序的页面配置,也称为局部配置,每一个小程序页面也可以使用自己的 .json 文件来对页面的窗口表现进行配置; 需要注意的是:页面配置文件的属性和全局配置文件中的 window 属性几乎一致,只不过这里不需要额…

【从零开始入门unity游戏开发之——C#篇37】进程、线程和C# 中实现多线程有多种方案

文章目录 进程、线程和C#多线程一、进程的基本概念二、线程的基本概念三、C#中的多线程1、为什么需要多线程?2、*C# 中如何实现多线程**2.1 **使用 Thread 类**(1)示例(2)线程休眠(3)设置为后台…

评分模型在路网通勤习惯分析中的应用——提出问题(1)

1、问题的由来、目标和意义 最近一段时间和公司其它业务部门讨论时,发现一个有趣的交通路网问题,车辆从S点行驶到V点共用时40分钟,这段时间内路网中的卡口摄像头识别到了车辆通过的信息。如下图所示: 设计师需要通过这些有限的路…

机器学习DAY7: 特征工程和特征选择(数据预处理)(完)

本文通过特征提取、特征转换、特征选择三个过程介绍数据预处理方法,特征提取将原始数据转换为适合建模的特征,特征转换将数据进行变换以提高算法的准确性,特征选择用来删除无用的特征。 知识点 特征提取特征转换特征选择 本次实验的一些示…

【Unity3D】Jobs、Burst并行计算裁剪Texture3D物体

版本:Unity2019.4.0f1 PackageManager下载Burst插件(1.2.3版本) 利用如下代码,生成一个Texture3D资源,它只能脚本生成,是一个32*32*32的立方体,导出路径记得改下,不然报错。 using UnityEditor; using Uni…

紫光同创-盘古200pro+开发板

本原创文章由深圳市小眼睛科技有限公司创作,版权归本公司所有,如需转载,需授权并注明出处(www.meyesemi.com) 一、开发系统介绍 开发系统概述 MES2L676-200HP 开发板采用紫光同创 logos2 系列 FPGA,型号:…

【后端】LNMP环境搭建

长期更新各种好文,建议关注收藏! 本文近期更新完毕。 LNMPlinuxnginxmysqlphp 需要的资源 linux服务器 web服务软件nginx 对应的语言编译器代码文件 数据库mysql安装 tar.gz包或者命令行安装 进入root: sodu 或su mkdir path/{server,soft}…

VSCode设置Playwright教程

1.安装扩展 打开VS Code,在扩展—>搜索"Playwright Test for VSCode",点击安装 按快捷键CommandShiftP,输入install playwright,点击安装Playwright 安装成功会有如下提示 2.调试脚本 打开tests/example.spec.ts文…

RK3566和Robo_C的EMC防护设计细节

USB部分的防护细节: ROBO C的USB接口: PF级别的电容滤波: TVS电容(TVS Capacitor):用于与TVS二极管配合,保护电路免受瞬态电压冲击。电容一般较小,通常为几十皮法(pF&am…

MicroDiffusion——采用新的掩码方法和改进的 Transformer 架构,实现了低预算的扩散模型

介绍 论文地址:https://arxiv.org/abs/2407.15811 现代图像生成模型擅长创建自然、高质量的内容,每年生成的图像超过十亿幅。然而,从头开始训练这些模型极其昂贵和耗时。文本到图像(T2I)扩散模型降低了部分计算成本&a…

使用 Three.js 创建一个 3D 人形机器人仿真系统

引言 在这篇文章中,我们将探讨如何使用 Three.js 创建一个简单但有趣的 3D 人形机器人仿真系统。这个机器人可以通过键盘控制进行行走和转向,并具有基本的动画效果。 技术栈 HTML5Three.jsJavaScript 实现步骤 1. 基础设置 首先,我们需要…