408计算机网络--基础概论

news2025/1/19 14:18:36

学习计算机网络走以前需要首先明白一个大的概念,计算机网络通常分为通信子网(实现数据通信)资源子网(实现资源共享/数据处理)==七层妖塔
pFE9tzQ.png

计算机网络:是一个将分散的、具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。

重点探讨网络为什么要分层?(七层OSI法定标准,四层TCP/IP事实标准

两台电脑之间传输pdf文件需要在发送文件前完成哪些工作:

  1. 发起通信的计算机必须将数据通信的通路进行激活。
  2. 要告诉网络如何识别目的主机。
  3. 发起通信的计算机要查明目的主机是否开机,并且与网络连接正常。
  4. 发起通信的计算机要弄清楚,对方计算机中文件管理程序是否已经做好准备工作。
  5. 确保差错和意外可以解决。
  6. ……

映射出来的问题就是做这样一堆十分复杂的事,那就考虑到把大问题拆解成一堆堆小问题

分层的基本规则:各层独立,每层界面清晰,下层独立,为上层提供服务

ISO提出的OSI参考模型:为了解决垄断性网络体系结构,打造全球异构网络的互联互通,可以让全球不同网络不同设备不同软硬件都可以在网络上面进行连接。但是OSI在理论学习上是很成功的,可以借鉴学习,但是在实际检验中是失败的。【周期长—生不逢时,不合理—重复交叉,不实用—市场检验】

介绍一下:OSI七层从下至上分别是【物联网淑惠试用—物链网输会示用】
pFZfOKg.png

由图可知,OSI七层妖塔,下三层是通信子网主要用于数据通信,后面介绍A–>中间系统–>B底层点到点的数据通路,传输层相当于上下层的接口,而最上面三层资源子网主要用于数据处理A–>B端到端协议进程与进程之间通过端口通信),通信双方只需要关注消息本身,不需要关注底层二进制信息的传输
pFZfqxS.pngpFZfb28.png
上述通信双方的打招呼通信过程:

写在前面:什么是PDU?
AI回答:PDU是协议数据单元,是用来描述在网络模型的不同层级中,数据经过封装后形成的特定格式的数据块。每层网络协议会给原始数据添加相应的头部信息和可能的尾部信息,形成该层的PDU。物理层PDU是比特流(bits);数据链路层PDU是数据帧(frames);网络层PDU是数据包(packets);传输层PDU是数据段(segments);高层协议如会话层、表示层、应用层PDU可以是HTTP消息(messages)

应用层首先对数据加了一个头部h7,代表加的是第七层的头部。就形成了一个第七层的pdu协议数据单元,第六层表示层的头部h6加上七层的pdu又形成了一个新的第六层的pdu。那第六层pdu组往下传,传到会话层,再加上会话层的首部h5,就形成了第五层的这个pdu。然后呢,继续往下依次到数据链路层不仅加了首部还有尾部【记忆:我字有五个比你们都多两个字】再到物理傻瓜层形成0101的比特流序列放到传输介质上,同样的根据网络协议,另外一台主机就可以知道如何去掉头部和首部的信息,依次向上还原。这样一层一层的往上加一层一层的拆解过程可以看作是现实场景中的打包和拆包过程

下面就简要介绍一下OSI七层参考模型每层的功能和作用:

  • 应用层:联网使用的程序属于应用层的范畴。文件传输(FTP)电子邮件(SMTP)万维网(HTTP)

  • 表示层:负责数据的语法表示和意义解释,确保不同系统之间的数据格式能够被对方理解并正确处理,相当于翻译官。数据格式转化,加密解密,恢复压缩,数据一致性校验。JPEG、ASCII

  • 会话层:需要为表示层提供服务,为表示层打通通话的服务建立连接并在连接上有序地传输数据。也是建立同步(SYN),就像是百度搜索电影,在一个窗口打开一个视频就建立一个会话,快进不会影响主机和其他窗口建立的会话,只会在当前会话中。可以建立、管理、终止会话,也可以通过校验点实现中断恢复。ADSP、ASP

  • 传输层:负责两个进程之间的通信,首先是作为自下而上第一个面向端到端通信的层次,同时呢,也是上面三层资源子网和下面三层通信子网之间的一个接口。传输层主要负责的是主机当中两个进程的通信及端到端的通信传输单位是报文段或用户数据报。TCP/UDP。主要功能【可差流用】:

    • 可靠传输、不可靠传输:基于确认机制的过程,区别就在于需不需要建立可靠的连接,例如QQ消息小数据就不需要可靠性连接,因为确认机制可靠链接非常耗时。
    • 差错控制:顺序错了,丢失数据等问题来纠正错误
    • 流量控制:解决两台终端之间发送和接收速率不一样的问题,让我发快点还是发慢点
    • 复用分用:两台手机之前用QQ和微信分别发送信息,发送端QQ和微信的数据包会带指定端口【不同的应用程序通过各自对应的端口将数据发送出去,实现了复用技术】,接收端收到消息后根据端口判断是哪个进程的数据包【网络接口卡接收到数据包后,根据数据包中的目标端口号,将数据包分发给正确的进程(QQ或微信),这就是分用技术】,就送给哪个进程去处理实现复用技术。
  • 网络层:主要任务是把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务,传输单位是数据报。数据报相当于父,分组相当于子。主要功能:路由选择(选择最优路径)、流量控制、差错控制、拥塞控制。IP、IPX、ICMP、IGMP、ARP、RARP、OSPF

  • 数据链路层:主要任务是把网络层传下来的数据报组装成帧,传输单位是帧。主要功能:成帧(定义帧的开始和结束)、差错控制(帧错+纠错)、流量控制、访问/接入控制(控制主机对于信道的访问权限)。SDLC、HDLC、PPP、STP

  • 物理层:主要任务是在物理媒体上实现比特流的透明传输(不管所传数据是什么样的比特组合,都应当能够在链路上传送),传输单位是比特。主要功能:定义接口特性(确定金属引脚)、定义传输模式(单工—单方向传输接收、半双工—对讲机、双工—打电话)、定义传输速率(宽度传输速率)、比特同步(发送方传1接收方收到1,实时同步)、比特编码(高低电平代表0和1的规范)Rj45、802.3

5层参考模型(物联网传用)综合了OSI和TCP/IP的优点

pFZjICF.png

  • 应用层:支持各种网络应用。FTP、SMTP、HTTP
  • 传输层:进程—进程的数据传输。TCP、UDP
  • 网络层:源主机到目的主机的数据报分组切割和路由转发。IP、ICMP
  • 数据链路层:把数据报分组进行组装成帧。Ethernet、PPP
  • 物理层:比特流信息传输。010101

pFZj44U.png
图中的AB两台主机通信:首先,主机A上准备好数据,应用层会加一定的控制信息,然后这个控制信息形成的这个单位传输单元就叫做报文。接下来把这些报文分成段放到传输层上面进行传输,再加上传输层的控制协议就形成了一个个报文段。接下来,这个报文段再到网络层,把上层的数据单元再加上网络层的控制信息即网络层的头部形成一个数据报,如果数据过长那可以进行切割分组,接下来把这个数据报传到数据链路层需要封装成帧,并且在数据报组的头部和尾部加上链路层的控制信息形成的这样一个传递单元就是帧,接下来物理层不会去添加控制信息而是把这个数据帧转化成比特流的形式然后在链路上传输,那接下来传输到中间系统或者B端系统的时候,就需要进行一个解封装的过程(也就是还原),在物理层上就把这个传输单元还原成一个帧的形式,接下来在链路层需要把这个控制信息脱掉,脱下后就只剩下网络层的数据和控制信息,那在网络层识别出来控制信息后就把网络层的首部脱掉,剩下的就是传输层的一个协议数据单元,传输单元,那接下来再把传输层的控制信息去掉剩下的就是应用层的一个传输单元,再脱掉应用层的控制信息之后就返回给系统主机B了,最后收到的数据就是这个—数据DATA。总结下来就是快递传输和打包的过程,在每个地方加上每个地方的标识。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Leetcode 2415】反转二叉树的奇数层 —— 回溯法 | BFS

2415. 反转二叉树的奇数层 给你一棵 完美 二叉树的根节点root,请你反转这棵树中每个 奇数 层的节点值。 例如,假设第 3 层的节点值是[2,1,3,4,7,11,29,18],那么反转后它应该变成[18,29,11,7,4,3,1,2]。 反转后,返回树的根节点。…

【Redis,Java】Redis的两种序列化方式—nosql数据库

redis和mysql的区别: redis是属于nosql的数据库,而mysql是属于sql数据库,redis是属于nosql数据库。mysql是存储在磁盘中的,redis是存储在内存中的,所以redis的读取书读快。这里所说的redis代表nosql,而mysq…

【elk查日志 elastic(kibana)】

文章目录 概要具体的使用方式一:查找接口调用历史二:查找自己的打印日志三:查找错误日志 概要 每次查日志,我都需要别人帮我,时间长了总觉得不好意思,所以这次下定决心好好的梳理一下,怎么查日…

更改WordPress作者存档链接author和用户名插件Change Author Link Structure

WordPress作者存档链接默认情况为/author/Administrator(用户名),为了防止用户名泄露,我们可以将其改为/author/1(用户ID),具体操作可参考『如何将WordPress作者存档链接中的用户名改为昵称或ID…

【大模型 幻觉】CRAG:改进传统的 RAG,增加纠正机制提升生成文本的准确性

CRAG:改进传统的 RAG,增加纠正机制提升生成文本的准确性 提出背景CRAG 框架轻量级检索评估器大规模网络搜索分解再重组算法 提出背景 论文:https://arxiv.org/abs/2401.15884 代码:https://github.com/HuskyInSalt/CRAG 大型语言…

适合tiktok运营的云手机需要满足什么条件?

TikTok作为一款全球热门的社交媒体平台,具有无限的市场潜力。然而,卖家在运营过程中常常会面临到视频0播、账号被降权、限流等问题,甚至可能因为多人同时使用一个IP而导致封号的风险。为了规避这些问题,越来越多的卖家将目光投向了…

k8s学习(RKE+k8s+rancher2.x)成长系列之简配版环境搭建(四)之Helm及cert-manager安装

安装Helm(三台都安装) 下载helm安装包并加入执行目录 tar zxf helm-v3.2.4-linux-amd64.tar.gz cd linux-amd64 cp helm /usr/bin/ helm version添加rancher稳定版仓库(三台都安装) helm repo add rancher-stable http://rancher-mirror.oss-cn-beijing.aliyuncs.com/serve…

8.2 新特性 - 透明的读写分离

文章目录 前言1. 安装部署1.1 下载安装包1.2 MySQL Shell1.3 配置 MySQL 实例1.4 启动 ReplicaSet1.5 启动 8.2 Router 2. 测试路由总结 前言 MySQL 8.0 官方推出过一个高可用方案 ReplicaSet 主要由 Router、MySQL Shell、MySQL Server 三个组件组成。 MySQL Shell 负责管理…

qt-双臂SCARA机器人动画

qt-双臂SCARA机器人动画 一、演示效果二、核心程序三、下载链接 在Qt opengl中完成的双臂SCARA机器人的简单模拟。 一、演示效果 二、核心程序 #include "glwidget.h"#include <GL/glu.h>GLWidget::GLWidget(QWidget *parent) :QGLWidget(parent),pitch(30.…

Java集合框架-1

目录 List集合 常见方法 迭代器&#xff08;Iterator&#xff09; List集合特有方法 List 的特点 创建 List 遍历List Java集合框架是Java编程语言提供的各种数据结构和算法的实现。它提供了不同类型的集合类&#xff0c;如列表(List)、集(Set)、映射(Map)等&#xff0c…

iOS通过p12导出公钥失败

通过p12文件导出证书crt文件一直报invalid password错误。 adminJiaozl Downloads % openssl pkcs12 -in ce.p12 -clcerts -nokeys -out MyCertificate.crt Enter Import Password: Mac verify error: invalid password?解决&#xff1a; 在 https://developer.apple.com/acc…

MongoDB文档插入

文章目录 MongoDB文档插入对比增删改查文档插入 MongoDB写安全机制非确认式写入 MongoDB文档查询参数说明查询操作符比较查询操作符逻辑查询操作符元素查询操作符数组查询操作符 模糊查询区别:$regex操作符中的option选项 MongoDB游标介绍游标函数手动迭代游标示例游标介绍 Mon…

AMC8美国数学思维竞赛2000-2024年真题练一练,你能做对几道?

为帮助备考AMC8美国数学竞赛的孩子们了解比赛的题型&#xff0c;掌握相关的知识&#xff0c;我会陆续分享2000-2024年的比赛真题&#xff0c;每道题都有解析&#xff0c;帮助孩子们不但会做题&#xff0c;还掌握背后的知识&#xff0c;从而达到举一反三的效果&#xff0c;提升比…

QT-LCD模拟显示

QT-LCD模拟显示 一、演示效果二、关键程序三、下载链接 一、演示效果 二、关键程序 #include "lcd_widget.h" #include <QDebug> #include <QPainter>LCDWidget::LCDWidget(QWidget *parent) : QWidget(parent),display(nullptr), display_char_buffer(…

LeetCode JS专栏刷题笔记(二)

一、前言 LeetCode - JavaScript 专栏刷题笔记第二篇。 第一篇刷题笔记详见&#xff1a;LeetCode JS专栏刷题笔记&#xff08;一&#xff09; 二、算法题目 1. 复合函数 LeetCode地址&#xff1a;2629. 复合函数 请你编写一个函数&#xff0c;它接收一个函数数组 [f1, f2, …

Mac清理系统垃圾软件CleanMyMac X2025免费版本下载

嘿&#xff0c;Mac用户们&#xff0c;你是否经常感觉你的Mac就像是在背着一个沉重的包袱在跑步&#xff1f;是的&#xff0c;我在说那些堆积如山的系统垃圾。清理这些垃圾不仅可以让你的Mac跑得更快&#xff0c;还能让它“呼吸”更畅快。今天&#xff0c;让我们一起来探索如何M…

【医学大模型】MEDDM LLM-Executable CGT 结构化医学知识: 将临床指导树结构化,便于LLM理解和应用

MEDDM LLM-Executable CGT 结构化医学知识: 将临床指导树结构化&#xff0c;便于LLM理解和应用 提出背景对比传统医学大模型流程步骤临床指导树流程图识别临床决策支持系统 总结解决方案设计数据收集与处理系统实施临床决策支持 提出背景 论文&#xff1a;https://arxiv.org/p…

代码智能生成插件‘通义灵码‘使用指南

介绍 通义灵码&#xff0c;通义灵码&#xff0c;是阿里云出品的一款基于通义大模型的智能编码辅助工具&#xff0c;提供行级/函数级实时续写、自然语言生成代码、单元测试生成、代码优化、注释生成、代码解释、研发智能问答、异常报错排查等能力&#xff0c;并针对阿里云的云服…

相机图像质量研究(36)常见问题总结:编解码对成像的影响--块效应

系列文章目录 相机图像质量研究(1)Camera成像流程介绍 相机图像质量研究(2)ISP专用平台调优介绍 相机图像质量研究(3)图像质量测试介绍 相机图像质量研究(4)常见问题总结&#xff1a;光学结构对成像的影响--焦距 相机图像质量研究(5)常见问题总结&#xff1a;光学结构对成…

Leo赠书活动-16期 名校毕业生教材

Leo赠书活动-16期 名校毕业生教材 ✅作者简介&#xff1a;大家好&#xff0c;我是Leo&#xff0c;热爱Java后端开发者&#xff0c;一个想要与大家共同进步的男人&#x1f609;&#x1f609; &#x1f34e;个人主页&#xff1a;Leo的博客 &#x1f49e;当前专栏&#xff1a; 赠…