网络的基础理解

news2024/11/20 3:30:37

文章目录

        • 网络的基础认识
    • 网络协议
      • 协议分层
        • OSI七层模型
        • TCP/IP 五层/四层 模型

网络的基础认识

先来看下面几个问题

  • 什么是网络?
    • 网络就是有许多台设备包括计算机单不仅限于计算机,这些设备通过相互通信所组成起来系统,我们称之为网络
    • 所以如何计算机如何进行网络通信也就是计算机网络的关键
  • 网络概念:
    • LAN:局域网,部分计算机或者设备连接在一起的就是局域网。比如我们常说的WLAN,其实就是无线局域网。思考以下,你家的WLAN是不是就几台手机链接,这其实就是一种LAN
    • WAN:广域网,许多设备连接在一起通信的系统。
  • 计算机之间是如何通信的呢?
  • 首先我们要明白,计算机的世界本质就是二进制,通信的时候也是电信号的2进制数据。拿如何识别这些数据进行转换成我们呢?答案是协议
  • 什么是协议呢?
    • 协议就是一种约定,我们彼此就像电影里面的摩斯密码,对应的符号表示对应的信息.计算机通信时,我们把对应的01数据做合适的解析就能够彼此识别。

网络协议

众所周知,计算机有许多硬件,以及底层的操作系统都有好多(对应的厂商也有很多),如果说彼此之间通信协议都不同意,如同打电话交流一样,你说英语,我说汉语该如何理解彼此的意思呢?
基于上述原因,不同计算机厂商都遵守的通信标准,来使得计算机能正常通信的标准,叫网络协议。

协议分层

协议实际时是由多层协议,一层一层的封装的。就好之你打电话,你们都说汉语是一种协议,底层无线电传输振动与电磁波相互转换也涉及协议。
网络协议也是分层的

OSI七层模型

请添加图片描述

  • 应用层:**针对特定应用的协议,**比如电子邮件,你网盘的文件传输,linux的ssh远程登陆等等。
  • 表示层:设备固有数据格式 与 网络标准数据格式之间的转换。比如传输图片二进制或者其他格式作为网络数据传播。
  • 会话层:通信管理,负责建立与断开通信链接。 (如何建立链接,建立多久,比如你用一些如xshell等软件远程登录linux时,每一个窗口其实也就是会话管理)
  • 传输层:负责管理两个结点之间数据传输。 比如A主机到B主机的数据发送成功与否。
  • 网络层:地址管理与路由选择。 网络中有许多主机,该如何让数据在主机之间选择正确的路径传播。
  • 数据链路层:互联设备之间传送与识别数据帧。
  • 物理层:传输的物理信号,也就是01。

OSI(Open System Interconnection,开放系统互连)七层网络模型称为开放式系统互联参考模型,是一个逻辑上的定义和规范。

  • 优点是将服务、接口和协议这三个概念明确地区分开来,概念清楚,理论也比较完整. 通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯
  • 缺点,过度的逻辑抽象与划分,对初学网络的很不友好 反而使得理解的成本增加
TCP/IP 五层/四层 模型
  • TCP/IP是一组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇

  • TCP/IP通讯协议采用了5层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求.

五层协议:其中四层就是不考虑物理层
在这里插入图片描述

  • 应用层:负责应用程序间的沟通。如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。我们的网络编程主要就是针对应用层。
  • 传输层:负责两台主机之间的数据传输。如传输控制协议(TCP),能够确保数据可靠的从源主机发送到目标主机。
  • 网络层: 负责地址管理和路由选择
  • 数据链路层: 负责设备之间的数据帧的传送和识别
  • 物理层:采用光电信号传输

对于程序员而言,应用层和传输层应当是需要十分和熟悉的,应为平常写代码等业务逻辑主要就是在这两层。网络层和数据链路层并非不重要,需要非常了解,出了问题才方便排查

如图:每层数据传输时,都会添加对应的报头(header),那些形状就是表示对应的报头。
**下图的数据传输也并非就是所有的网络通信都是如下图,实际还有中间路由转发等。
请添加图片描述

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

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

相关文章

通过 Spring 操作 Redis

要想通过 Java 操作 redis,首先要连接上 redis 服务器,推荐看通过 Java 操作 redis -- 连接 redis 创建项⽬ 勾选 NoSQL 中的 Spring Data Redis 当然, 把 Web 中的 Spring Web 也勾选⼀下.⽅便写接进⾏后续测试. 配置 redis 服务地址 在 application.…

CF451E: Devu and Flowers(容斥原理 + 考虑反面 + golang组合模版)

题目截图 题目翻译 题目分析 正难则反,考虑所有不符合的例子 由于n很小,所以可以状态压缩二进制遍历完全部不符合例子的组合 对于不符合的例子,假设其中第i个不符合,那么就消耗掉fi 1个球 以此类推,减剩下s2个球 这时…

盘点28个免费域名申请大全

盘点28个免费域名申请大全 免费域名推荐学习使用,免费就意味着没任何保障。 名称稳定时间支持解析模式后缀格式说明地址EU.org28 年NS.eu.org/. 国家简写.eu.org需要审核,稳定性高,限制少,国内访问有问题,可 CFeu.orgp…

关于「公 告」根据中华人民共和国法律,Bing 在中国内地暂停 “搜索自动建议” 功能 30 天

当我看见我们大家都这样我可放心了,我打开电脑搜索图片就发生了。 当我看见我们大家都这样我可放心了,坐等攻城狮修复。

前端vue用el-table如何实现表头内容过长换行处理,实现换行效果

前端vue用el-table如何实现表头内容过长换行处理,实现换行效果 这是效果图 有两种方法,一种简易版本,一种万能方法,都是el-table,先看文档 表头标题是可以自定义的 方法一 label的解释写在代码里面了,这里会自动形成换…

六零导航页 file.php 任意文件上传漏洞复现(CVE-2024-34982)

0x01 产品简介 LyLme Spage(六零导航页)是中国六零(LyLme)开源的一个导航页面。致力于简洁高效无广告的上网导航和搜索入口,支持后台添加链接、自定义搜索引擎,沉淀最具价值链接,全站无商业推广,简约而不简单。 0x02 漏洞概述 六零导航页 file.php接口处任意文件上传…

中银基金软件开发工程师春招群面记录

本文介绍2024届春招中,中国银行下属中银基金管理有限公司的软件开发工程师岗位1场面试的基本情况、提问问题等。 2024年04月投递了中国银行的共计4个部门或单位,包括中银基金管理有限公司的软件开发工程师岗位,暂时不清楚所在部门。目前完成了…

AWS安全性身份和合规性之Artifact

AWS Artifact是对您很重要的与合规性相关的信息的首选中央资源。AWS Artifact是一项服务,提供了一系列用于安全合规的文档、报告和资源,以帮助用户满足其合规性和监管要求。它允许按需访问来自AWS和在AWS Marketplace上销售产品的ISV的安全性和合规性报告…

I.MX6Ull交叉编译QT项目并用u盘拷贝到开发板下

1.安装交叉编译器 2.命令行交叉编译Qt项目 3.拷贝编译好的执行程序到开发板运行 下载到虚拟机 修改权限chom u x 名称 执行完后,变色 执行脚本文件,使能 source /opt/fsl-imx-x11/4.1.15-2.1.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi …

利用远控工具横向

一.横向移动介绍和方式 1.介绍 内网渗透的横向移动是指攻击者在成功进入内网后,通过利用内部系统的漏洞或者获取的合法访问权限,从一个受感染的系统向其他系统扩散或移动。这种横向移动的目的通常是为了获取更多的敏感信息、提升权限、扩大攻击面或者更…

将PCD点云投影到BEV平面得到图片

前言 点云数据作为一种丰富的三维空间信息表达方式,通常用于自动驾驶、机器人导航和三维建模等领域。然而,点云数据的直观性不如二维图像,这限制了它在一些需要快速视觉反馈的应用场景中的使用。本文将探讨如何将点云数据转换为二维图像&…

【传知代码】从零开始搭建图像去雾神经网络-论文复现

文章目录 概述原理介绍网络结构 核心逻辑迁移学习子网数据拟合子网 环境配置训练本次复现代码所用数据集测试本次复现代码所用的评价指标 结果展示在O-Haze数据集上的结果在I-Haze数据集上的结果 小结 本文涉及的源码可从从零开始搭建图像去雾神经网络该文章下方附件获取 本文复…

React中显示数据

SX 会让你把标签放到 JavaScript 中。而大括号会让你 “回到” JavaScript 中&#xff0c;这样你就可以从你的代码中嵌入一些变量并展示给用户。例如&#xff0c;这将显示 user.name&#xff1a; return (<h1>{user.name}</h1> ); 你还可以将 JSX 属性 “转义到 …

内网安全之搭建ADCS证书服务

在域控上安装ADCS服务时&#xff0c;默认会自动配置完LDAPS&#xff0c;如果不是在域控上安装ADCS服务&#xff0c;需要手动配置LDAPS 安装证书服务ADCS 打开服务器管理器——>添加角色和功能 选择“基于角色或基于功能的安装”选项&#xff0c;然后点击下一步 选择“从…

我的前端封装之路

最近有粉丝提问了我一个面试中遇到的问题&#xff0c;他说面试的时候&#xff0c;面试官问我&#xff1a;你在以前的项目中封装过组件吗&#xff1f;或者做过npm公共库吗&#xff1f;遇到过什么问题吗&#xff1f;当时自己突然觉得好像没什么可回答的啊&#xff0c;但面试结束想…

实现顺序表各种基本运算的算法

实验一&#xff1a;实现顺序表各种基本运算的算法 一、实验目的与要求 目的: 领会顺序表存储结构和掌握顺序表中各种基本运算算法设计。 内容: 编写一个程序sqlist.cpp,实现顺序表的各种基本运算和整体建表算法(假设顺序表的元素类型ElemType为char),并在此基础上设计一个…

【免费】支持向量机回归预测(SVR)的MATLAB实现(含源代码)

支持向量机&#xff08;Support Vector Machine, SVM&#xff09;是一种常用于分类和回归分析的机器学习算法。虽然SVM最为人熟知的是其分类应用&#xff0c;但它同样适用于回归任务&#xff0c;被称为支持向量回归&#xff08;Support Vector Regression, SVR&#xff09;。以…

温故而知新-JUC篇【面试复习】

温故而知新-JUC篇【面试复习】 前言版权推荐温故而知新-JUC篇多线程Java语言中的线程安全线程安全的实现方法线程的创建线程的状态wait和sleep的区别ThreadLocalsynchronize的优化synchronize和Reentrant的对比AQS线程池ThreadPoolExecutorThreadPoolExecutor源码ConcurrentHas…

javaSwing电影票购票管理系统(视频+源码)

摘要 运行环境&#xff1a;jdk1.8 mysql5.7 eclipse 系统实现 联系 q:3996962787 完整代码、sql、报告、程序资源

【Shell脚本】文本三剑客之sed编辑器

目录 一.sed编辑器的相关介绍及执行过程 1.sed介绍 2.sed编辑器的执行过程 二.sed命令格式 1.基本格式 2.在一个脚本文件里定义操作命令 3.常用操作 三.打印功能 1.默认打印方式 2.防止出现重复打印 2.1. 2.2. 2.3. 2.4. 3.使用地址打印 3.1.以数字形式打印行区…