CAN学习笔记1:计算机网络

news2024/11/16 17:40:08

计算机网络

1 概述

计算机网络就是把多种形式的计算机用通信线路连接起来,并使其能够互相进行交换的系统。实际上,计算机网络包括了计算机、各种硬件、各种软件、组成网络的体系结构、网络传输介质和网络通信计数。因此,计算机网络是计算机和通信技术结合的产物。

2 计算机网络体系结构

要想让两台计算机进行通信,必须使他们采用相同的信息交换规则。在计算机网络中,我们把用于规定信息的格式以及如何发送和接收信息等为数据交换而建立的规则、标准和约定称为网络协议。具体来说,一个网络协议主要由以下三个要素组成:

  1. 语法:是指数据与控制信息的结构或格式,语法确定通信双方“如何讲”,定义传输的信息格式,相当于说明语言中语句的格式。
  2. 语义:指需要发出何种控制信息,完成何种动作以及作出何种应答,语义确定通信双方之间“讲什么”,对请求、执行的功能等进行解释,包括识别结果的处理,相当于对一个语句含义的说明。
  3. 同步:事件实现顺序、速度匹配等的详细说明。
    我们将计算机网络的各层次及其协议的集合称为网络的体系结构。

2.1 协议分层

为了减少网络设计的复杂性,绝大多数网络采用分层设计方法。所谓分层设计方法,就是按照信息的流动过程将网络的整体功能分解成一个个的功能层,不同机器上的同等功能之间采用相同的协议,同一机器上的相邻功能层之间通过接口进行信息传递。
协议是不同机器同等层之间的通信约定,而接口是同一机器相邻层之间的通信约定。不同的网络中,分层数量、各层的名称和功能以及协议都各不相同。然而,在所有的网络中,每一层的目的都是向它的上一层提供一定的服务。

2.2 服务类型

服务(Service)这个极普通的术语在计算机网络中无疑是一个极重要的概念。在网络体系结构中,服务就是网络中各层向其相邻上层提供的一组操作,是相邻两层之间的界面。
服务和协议常常被混淆,而实际上两者是截然不同的概念。为此我们再强调一下两者的区别。服务是网络体系结构中各层向他的上层提供的一组原语(操作),尽管服务定义了该层能够代表他的用户完成的操作,但丝毫未涉及这些操作是如何实现的。服务描述两层之间的接口,下层是服务提供者,上层是服务用户,而协议是定义同层对等实体之间交换帧、数据包的格式和意义的一组规则。网络各层实体利用协议来实现他们的服务。只要不改变提供给用户的接口和服务,实体可以随意地改变它们所使用的协议。这样,服务和协议就完全被分离开来。在 OSI 参考模型之前的很多网络都没有把服务从协议中分离出来,造成网络设计的困难。

2.3 ISO/OSI 参考模型

2.3.1 什么是 OSI 模型

OSI(Open System Interconnect),即开放式系统互连。OSI 参考模型是研究如何把开放式系统(即为了与其它系统通信而相互开放的系统)连接起来的标准。

2.3.2 为什么用 OSI 模型

OSI 参考模型将计算机网络分为 7 层,将联网计算机间传输信息的任务划分为 7 个更小、更易于处理的任务组。每一个任务或任务组则被分配到各个 OSI 层、每一层都是独立存在的,因此分配到各层的任务能够独立地执行。
在网络发展的初期,许多研究机构、计算机厂商和公司都大力发展计算机网络。这种自行发展的网络,在体系结构上差异很大,以至于他们之间互不相容,难以相互连接以构成更大的网络系统。为此,国际标准化组织(ISO)提出了开发系统互联参考模型(OSI/RM)。

2.3.3 OSI 七层模型的分层结构

OSI划分的七个层次由高到低依次为:Application(应用层)、Presentation(表示层)、Session(会话层)、Transport(传输层)、Network(网络层)、DataLink(数据链路层)和Physical(物理层)。
在这里插入图片描述

  1. 应用层
    应用层是网络服务与最终用户的一个接口,是OSI模型中的最高层,是直接面向用户的一层。应用层是人机交互的窗口,通过应用层把人的语言输入到计算机当中去,为网络用户之间的通信提供专用的程序服务。
  2. 表示层
    表示层为在应用过程之间传送的信息提供表示方法的服务。负责将接收到的数据翻译成二进制数组成的计算机语言,主要通过数据格式变化、数据加密与解密、数据压缩与解压等。表示层提供的数据加密服务是重要的网络安全要素,其确保了数据的安全传输,也是各种安全服务最为重视的关键。
  3. 会话层
    会话层用于建立、管理、中止会话。会话层的主要功能是负责维护两个节点之间的传输联接,确保点到点传输不中断,以及管理数据交换等功能。会话层还可以通过对话控制来决定使用何种通信方式,全双工通信或半双工通信。
  4. 传输层
    传输层是计算机通信体系结构中关键一层,传输层定义了传输数据的协议端口号,以及流控和差错校验(两个端之间建立tcp、udp连接,对数据完整性要求高使用tcp,保障数据传输的完整性 ,但是成本比udp高,速度慢,语音视频这类实时采集的数据,没有文件完整性一说,而是采集多少就传输 多少,就用udp)。将上层应用数据分片并加上端口号封装成数据段,或通过对报文头中的端口识别。传输层实现了网络中不同主机上的用户进程之间的数据通信,为用户提供了端到端的服务。传输层起到了承上启下的作用,承接上层软件应用,下启网络数据传输。
  5. 网络层
    网络层是以路由器为最高节点俯瞰网络的关键层,它负责将上层数据加上源和目的方的逻辑(IP)地址封装成数据包,实现数据从源端到目的端的传输。网络层进行逻辑地址寻址,实现不同网络之间的路径选择,这也就是我们所说的网络层的寻址功能。传输层为端到端通信,而网络层以下为点对点通信。
  6. 数据链路层
    数据链路层的主要功能是如何在不可靠的物理线路上进行数据的可靠传输,它完成的是网络中相邻节点之间可靠的数据通信。为了保证数据的可靠传输,发送方把用户数据封装成帧,并按顺序传递各帧。由于物理线路的不可靠,因此发送方发出的数据帧有可能在线路上发生出错或丢失(所谓丢失实际上是数据帧的帧头或帧尾出错),则发送方必须重传这一帧数据,知道这一帧没有错误的到达接受方为止。这样,数据链路层就把一条实际可能出凑的链路转变成对网络层来说好像是不出错的一条链路。
  7. 物理层(Physical Layer)
    物理层的主要功能是完成相邻节点之间原始比特流的传输。物理层协议关心的典型问题是使用什么样的物理信号来表示数据“1” 和“0”。物理层连接报文头部和上层数据信息都是由二进制数组成的,物理层将这些二进制数字组成的比特流转换成电信号在网络中传输。

3 参考资料

  1. OSI参考模型
  2. OSI七层模型

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

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

相关文章

第G3周:CGAN|生成手势图像

目录 一、准备工作1. 导入数据2. 数据可视化 二、构建模型1. 构建生成器2. 构建鉴别器 三、训练模型1. 定义损失函数2. 定义优化器3. 训练模型 四、理论基础1.DCGAN原理2.DCGAN网络3.个人感悟 🍨 本文为🔗365天深度学习训练营 中的学习记录博客&#x1f…

自动化测试:让软件测试更高效更愉快!

谈谈那些实习测试工程师应该掌握的基础知识(一)_什么时候才能变强的博客-CSDN博客https://blog.csdn.net/qq_17496235/article/details/131839453谈谈那些实习测试工程师应该掌握的基础知识(二)_什么时候才能变强的博客-CSDN博客h…

【C++ 进阶】学习导论:C/C++ 进阶学习路线、大纲与目标

目录 一、C 学习路线 二、C 课程大纲与学习目标 (1)第一阶段:C 语言基础 (2)第二阶段:C 高级编程 (3)第三阶段:C 核心编程与桌面应用开发 (4&#xf…

Cpp03 — 类和对象、this指针

一、类和对象 类由两部分构成:1.成员变量2.成员函数 C中的struct兼容C的所有用法,同时C中把struct升级成类 注意:类中的成员函数和成员数据都是声明,不是定义 类里的函数不是存到了对象中,而是存在公共区域&#x…

8.7 PowerBI系列之DAX函数专题-排名逻辑的4种实现-rankx详解

需求 实现 1 度量值 序号1排名 rankx(all(成绩表),成绩表[scoreandname],sum(成绩表[scoreandname])) --按照组合列排序2 rankx稀疏排名 rankx(all(成绩表),成绩表[分数],sum(成绩表[分数]),desc,skip) 3 rankx稠密排名 switch(true(),hasonevalue(成绩表[姓名])&#xff…

CCD光斑图像质量分析仪的作用和工作原理

激光光斑的成型在激光加工中起着至关重要的作用,在实际加工中激光可以被变换成各种形状以满足加工需求,激光光斑的形状大致可以被分为四种:矩形、环形、椭圆形、线形。矩形的激光光斑适用于激光切割、激光焊接,环形的激光光斑适用…

契约测试之 - 使用Pact-JS编写契约测试

契约测试是一种通过对每个应用程序进行孤立检查,以确保其发送或接收的消息符合在“合同”中记录的共享理解的集成点测试技术。对于通过HTTP进行通信的应用程序,这些“消息”将是HTTP请求和响应,而对于使用队列的应用程序,则是放入…

代码版本管理工具 git

1. 去B站看视频学习,只看前39集: 01-Git概述(Git历史)_哔哩哔哩_bilibili 2.学习Linux系统文本编辑器的使用 vi编辑器操作指令分享 (baidu.com) (13条消息) nano编辑器的使用_SudekiMing的博客-CSDN博客 windows下载安装Git官…

《入门级-Cocos2d 4.0塔防游戏开发》---第三课:欢迎界面开发(一)

目录 一、开发环境介绍 二、开发内容 三、显示效果 四、知识点总结 4.1 场景转场 4.2 场景转场流程 4.3 MenuItemSprite和Sprite区别 一、开发环境介绍 操作系统:UOS1060专业版本。 cocos2dx:版本 环境搭建教程: 统信UOS下配置安装cocos2dx开…

Packet Tracer – 配置系统日志和 NTP

Packet Tracer – 配置系统日志和 NTP 目标 第 1 部分:配置系统日志服务 第 2 部分:生成日志记录事件 第 3 部分:手动设置交换机时钟 第 4 部分:配置 NTP 服务 第 5 部分:验证带时间戳的日志 拓扑图 场景 在本…

js的变量

目录 变量 var和let 1.for循环中的声明 2.暂时性死区 3.全局声明 4.条件声明 const声明 变量 java是一种强数据类型语言,对数据类型要求高,要声明清楚变量的类型 数据类型 变量名 值 -----> int a 10 而javaScrit是一种弱类型语言,在声明变…

mac cli文件管理器

背景 最近研究了一下在控制台查看文件的插件ranger, 官方的解释是:一个cli下的文件管理器。觉得效果也很酷炫,所以在此展示一下。 安装 brew install ranger配置生成 建议第一次使用的时候使用 ranger --copy-configall将会在~/.config/ranger目录输…

如何做好IT类的技术面试

目录 一、IT行业的招聘渠道 二、如何做好技术面试官 三、谈谈IT行业如何做好招聘工作 四、面试IT公司的小技巧 五、面试有哪些常见的问题 六、关于面试的一些建议 面试可能是我们每个人都必须会遇到的事情,而技术面试更具有专业性,以下会从几个方面…

实现一个简单的前端MVVM框架类似VUE

在本篇博客中,我们将使用原生JavaScript实现一个简单的前端MVVM框架,类似于VUE。MVVM是Model-View-ViewModel的缩写,是一种用于构建现代化、可维护的前端应用程序的架构模式。MVVM框架通过数据绑定和组件化的方式实现了视图与数据的双向绑定&…

【Docker】使用docker-maven-plugin插件构建发布推镜像到私有仓库

文章目录 1. 用docker-maven-plugin插件推送项目到私服docker1.1. 构建镜像 v1.01.2. 构建镜像 v2.01.3. 推送到镜像仓库 2. 拉取私服docker镜像运行3. 参考资料 本文描述了在Spring Boot项目中通过docker-maven-plugin插件把项目推送到私有docker仓库中,随后拉取仓…

读发布!设计与部署稳定的分布式系统(第2版)笔记25_互联层之路由和服务

1. 控制请求数量 1.1. 这个世界可以随时摧毁我们的系统 1.1.1. 要么拒绝工作 1.1.2. 要么扩展容量 1.1.3. 没有人会在与世隔绝的环境中使用服务,现在的服务大多必须处理互联网规模的负载 1.2. 系统的每次失效,都源自某个等待队列 1.3. 每个请求都会…

【雕爷学编程】Arduino动手做(97)---10段LED光柱模块2

37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的&am…

C#,数值计算——逻辑斯谛分布(logistic distribution)的计算方法与源程序

逻辑斯谛分布即增长分布,增长分布的分布函数是“增长函数”,亦称“逻辑斯谛函数”(logistic function),故增长分布亦称做“逻辑斯谛分布”。逻辑斯谛分布(logistic distribution)是一种连续型的概率分布,记为L(μ,γ),…

#systemverilog# 说说Systemverilog中《automatic》那些事儿

前面我们学习了有关systemverilog语言中有关《static》的一些知识,同static 关系比较好的哥们,那就是 《automatic》。今天,我们了解认识一下。 在systemveriog中,存在三种并发执行语句,分别是fork..join,fork...join_any和fork..join_none,其中只有fork...join_none不…

OSPF路由协议(红茶三杯CCNA)

链路状态路由协议 OSPF(开放式最短路径优先)Open Shortest Path First 是一种链路状态路由协议,无路由循环(全局拓扑),RFC2328 “开放”意味着非私有的 管理型距离:110 OSPF采用SPF算法计算到达…