【lesson60】网络基础

文章目录

  • 网络发展
  • 认识协议
  • 网络协议初识
  • OSI七层模型
  • TCP/IP五层(或四层)模型
  • 网络传输基本流程
  • 数据包封装和分用
  • 网络中的地址管理

网络发展

以前没有网络剧的工作模式是:独立模式:,计算机之间相互独立
所以多个计算机要协同开发比较难。
在这里插入图片描述
有了网络以后:网络互联:,多台计算机连接在一起,
这样多个人就可以协同开发了
在这里插入图片描述
局域网LAN: 计算机数量更多了, 通过交换机和路由器连接在一起;
在这里插入图片描述
广域网WAN: 将远隔千里的计算机都连在一起
在这里插入图片描述

认识协议

“协议” 是一种约定.
例子
小华刚到学校准备给家里人报平安,以前还没有网络的时候只能打电话,又因为电话费很贵,所以小华就和他爸爸约定好:
电话零
响一声就说明它安全到学校了
响两声说明没有生活费了
响三声说明有其它紧急情况需要爸爸接听电话。

在月初的时候没钱了,小华打电话给爸爸当电话响两声就挂掉,爸爸一看小华响两声就挂掉于是就想起来之前的协议瞬间明白小华没钱了。小华爸爸立马给小华的银行卡汇钱。

上面这就是协议
在这里插入图片描述
计算机生产厂商有很多;
计算机操作系统, 也有很多;
计算机网络硬件设备, 还是有很多;
如何让这些不同厂商之间生产的计算机能够相互顺畅的通信?就需要有人站出来, 约定一个共同的标准, 大家都来遵守, 这就是网络协议

网络协议初识

协议的本质是软件,软件是可以“分层的”。
在这里插入图片描述
在这个例子中, 我们的协议只有两层; 但是实际的网络通信会更加复杂, 需要分更多的层次.
分层最大的好处在于 “封装”

为什么要划分成层状结构呢?
a.解决复杂场景下的问题
b.功能解耦,便于人们进行各自维护

OSI七层模型

OSI(Open System Interconnection,开放系统互连)七层网络模型称为开放式系统互联参考模型,是一个逻辑上的定义和规范;
网络从逻辑上分为了7层. 每一层都有相关、相对应的物理设备,比如路由器,交换机;
OSI 七层模型是一种框架性的设计方法,其最主要的功能使就是帮助不同类型的主机实现数据传输;
它的最大优点是将服务、接口和协议这三个概念明确地区分开来,概念清楚,理论也比较完整. 通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯;
但是, 它既复杂又不实用; 所以我们之后之后学的就是TCP/IP五层模型
在这里插入图片描述
在这里插入图片描述

TCP/IP五层(或四层)模型

通信的复杂本质是和距离成正相关的!
复杂体现在哪里?
不就是我们协议栈要解决的问题吗?

复杂体现:
通信范畴:
1.丢包问题
2.定位问题
3.解决下一跳主机的问题(这是什么意思?)

例子:
从福建去新疆旅游,我们是直接立马就到新疆的吗?肯定不是
在这里插入图片描述
我们又许多路线可以走但一定不是一步就到新疆
路线:福建–>江西–>湖南–>重庆–>四川–>青海–>新疆
在这里插入图片描述
虽然我们可能不知道要经过哪些省份才能到大新疆,但是我们知道自己的目的地是新疆就可以,我们可以哦问问当地人我要去新疆该怎么走等等。

应用范畴:
如何处理数据问题—应用层解决
通信范畴:
1.丢包问题-----传输层解决
2.定位问题----网络层解决
3.解决下一跳主机的问题(这是什么意思?)—数据链路层解决

所以就有了TCP/IP五层(或四层)模型

在这里插入图片描述
先有OSI模型再由TCP/IP---->他们之间的区别就是蓝图跟实际的区别

网络传输基本流程

网络传输流程图
同一个局域内的两台主机进行文件传输.
逻辑上局域网中的两台主机可以直接通信,但是物理上两台主机都必须具有自顶向下交付数据和自底向上读取数据的能力。
在这里插入图片描述
每层都有自己的协议定制方案,每层协议都要有自己的协议报头,从上到下交付数据都适合要添加报头。
为什么要添加报头?
在这里插入图片描述
自顶向下交付数据的过程:
比如上层发了个你好,那么它的过程如下:
在这里插入图片描述
每一个图形,形象的标识每一层的报头
自底向上解包的过程:
解包:去掉报头&&解析数据
在这里插入图片描述
有了协议的存在那么就确定了只能同层通信,不会有数据链路层的数据跑到TCP层的情况。

那么两个不同局域网的主机如何通信?
可以通过路由器来通信
在这里插入图片描述
通信过程:
在这里插入图片描述

在使用TCP/IP协议的网络中,IP层机及其往上的协议,看到的报文都是一样的!

数据包封装和分用

**不同的协议层对数据包有不同的称谓,**在传输层叫做段(segment),在网络层叫做数据报 (datagram),在链路层叫做帧(frame).

应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header),称为封装(Encapsulation)

首部信息中包含了一些类似于首部有多长,有效载荷(payload)有多长, 上层协议是什么等信息.

数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部, 根据首部中的 “上层协议字段” 将数据交给对应的上层协议处理

数据封装的过程:
在这里插入图片描述

数据分用的过程:
在这里插入图片描述

网络中的地址管理

认识IP地址
IP协议有两个版本, IPv4和IPv6. 我们整个的课程, 凡是提到IP协议, 没有特殊说明的, 默认都是指IPv4

  • IP地址是在IP协议中, 用来标识网络中不同主机的地址;
  • 对于IPv4来说, IP地址是一个4字节, 32位的整数;
  • 我们通常也使用 “点分十进制” 的字符串表示IP地址, 例如 192.168.0.1 ; 用点分割的每一个数字表示一个字节, 范围是 0-255;

认识MAC地址

  • MAC地址用来识别数据链路层中相连的节点;
  • 长度为48位, 及6个字节. 一般用16进制数字加上冒号的形式来表示(例如: 08:00:27:03:fb:19)
  • 在网卡出厂时就确定了, 不能修改. mac地址通常是唯一的(虚拟机中的mac地址不是真实的mac地址, 可能会冲突;也有些网卡支持用户配置mac地址)

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

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

相关文章

6.s081 学习实验记录(九)lock parallelism

文章目录 一、Memory allocator简介提示实验代码实验结果 二、Buffer cache简介提示实验代码实验结果 该实验将重构某些代码以提高并发度。 首先切换到lock分支: git fetchgit checkout lockmake clean 一、Memory allocator 简介 user/kalloctest 这个程序会对…

关于投资,房地产,AI

各位朋友,新年好! 过个年,世界发生了很多大事! 投资 先是证监会,证监会年前换帅,吴清接棒,吴清何许人也?江湖人称“券商屠夫”,成功处置了2008年的券商风险&#xff0…

Eclipse - Format Comment

Eclipse - Format & Comment 1. Correct Indentation2. Format3. Toggle Comment4. Add Block Comment5. Remove Block CommentReferences 1. Correct Indentation Ctrl A: 选择全部代码 Ctrl I: 校正缩进 or right-click -> Source -> Correct Indentation 2. F…

【开工大吉】推荐4款开源、美观的WPF UI组件库

WPF介绍 WPF 是一个强大的桌面应用程序框架,用于构建具有丰富用户界面的 Windows 应用。它提供了灵活的布局、数据绑定、样式和模板、动画效果等功能,让开发者可以创建出吸引人且交互性强的应用程序。 HandyControl HandyControl是一套WPF控件库&#xf…

安全技术和防火墙

1.安全技术和防火墙 1.1安全技术 入侵检测系统(Intrusion Detection Systems):特点是不阻断任何网络访问,量化、定位来自内外网络的威胁情况,主要以提供报警和事后监督为主,提供有针对性的指导措施和安全决…

普中51单片机学习(九)

蜂鸣器 蜂鸣器简介 在单片机应用的设计上,很多方案都会用到蜂鸣器,大部分都是使用蜂鸣器来做提示或报警,比如按键按下、开始工作、工作结束或是故障等等。改变单片机引脚输出波形的频率,就可以调整控制蜂鸣器音调,产…

Python操作Kafka基础教程

01 Python操作Kafka基础教程 创建ZooKeeper容器 docker run -d --name zookeeper -p 2181:2181 -v /etc/localtime:/etc/localtime wurstmeister/zookeeper创建Kafka容器 语法是: docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID0 -e KAFKA_ZOOKE…

世界顶级名校计算机专业,都在用哪些书当教材?(文末送书)

目录 01《深入理解计算机系统》02《算法导论》03《计算机程序的构造和解释》04《数据库系统概念》05《计算机组成与设计:硬件/软件接口》06《离散数学及其应用》07《组合数学》08《斯坦福算法博弈论二十讲》参与规则 清华、北大、MIT、CMU、斯坦福的学霸们在新学期里…

讨好型人格的职业分析,如何改变讨好型人格

一味讨好他人,忽略自己感受,凡事以人为先,忽视自己需求,这就是讨好型人格。 讨好型人格最典型的表现就是非常注重外界的看法,不管做什么事都会小心翼翼,生怕自己所做的事会引发别人的不满。 如果自己哪方…

MAC电脑系统清理空间免费版软件CleanMyMac X2024

大家好,我是那个总是被苹果电脑“内存已满”提示搞得焦头烂额的专业博主。如果你也像我一样,在使用Mac时经常遭遇卡顿、慢吞吞的情况,那么今天的Mac清理空间妙招分享绝对适合你! CleanMyMac X全新版下载如下: https://wm.makedi…

【Redis快速入门】深入解读哨兵模式

个人名片: 🐼作者简介:一名大三在校生,喜欢AI编程🎋 🐻‍❄️个人主页🥇:落798. 🐼个人WeChat:hmmwx53 🕊️系列专栏:🖼️…

HTML 入门指南

简述 参考:HTML 教程- (HTML5 标准) HTML 语言的介绍、特点 HTML:超级文本标记语言(HyperText Markup Language) “超文本” 就是指页面内可以包含图片、链接等非文字内容。“标记” 就是使用标签的方法将需要的内容包括起来。…

电阻(二):希尔伯特(Hilbert)曲线

1、Hilbert简介 希尔伯特曲线是一种能在 2D平面完美填充正方形的曲线,连续且稳定(当细分足够小时,线构成面)而又不可导的曲线。只要恰当选择函数,画出一条连续的参数曲线,当参数 t 在 [0、1 ] 区间取值时&a…

ESP32-Cam学习(2)——PC实时显示摄像头画面

具体代码和操作过程见: 3. 实时显示摄像头画面 (itprojects.cn)https://doc.itprojects.cn/0006.zhishi.esp32/02.doc/index.html#/e03.showvideo我主要记录一下我在复现的过程中,遇到的问题以及解决方法。 1.安装第三方库 首先电脑端的代码需要用pych…

备战蓝桥杯---动态规划(入门3之子串问题)

本专题再介绍几种经典的字串问题。 这是一个两个不重叠字串和的问题,我们只要去枚举分界点c即可,我们不妨让c作为右区间的左边界,然后求[1,c)上的单个字串和并用max数组维护。对于右边,我们只要反向求单个字串和然后选左边界为c的…

java中x++和++x的区别,执行后x的值是多少

在Java和C等编程语言中,x 和 x 都是用来对变量 x 进行自增操作的表达式,它们的主要区别在于自增操作发生的时机以及返回值: 后置递增运算符 x: 先使用当前 x 的值进行表达式计算,然后将 x 的值加 1。 执行后的 x 值为…

django连接本地数据库并执行增删改查

1,首先需要将本地数据库的表同步到django的models.py文件 py manage.py inspectdb tb_books tb_heros > demo001/models.py 2,同步成功后models.py会根据每张表映射出不同的类 models.py文件根据数据库表映射出对应的类 3,然后根据不同…

初识 Rust 语言

目录 前言一、Rust 的背景二、Rust的特性三、部署开发环境,编写一个简单demo1、在ubuntu 20.04部署环境2、编写demo测试 四、如何看待Linux内核引入Rust 前言 自Linux 6.1起,初始的Rust基础设施被添加到Linux内核中。此后为了使内核驱动程序能够用Rust编…

应如何看待用AI写论文一事? AI写论文有助科研还是助长作弊?

自大语言模型问世后,许多高校学生都在悄悄利用ChatGPT等AI(人工智能)写作软件代写论文,或者用AI辅助论文写作,如罗列提纲、润色语言、降低重复率等。 国内类似ChatGPT的AI写作软件并不少见。在各大等网站上&#xff0…

管理员分级管控三大模式,提高企业内部管理效率

随着公司规模的不断扩大和部门的持续增加,权限管理问题日益凸显。每当新员工入职,都需要经过一系列繁琐的步骤来为其匹配相应的权限。然而,这种传统的、基于手动更新的管理方式不仅效率低下、安全风险大,给企业带来了巨大的数据安…