【网络】基础知识1

目录

网络发展

独立模式

网络互联

局域网LAN

广域网WAN

什么是协议

 初识网络协议

协议分层 

OSI七层模型

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

 OSI和TCP/IP对比

网络传输流程

什么是报头

局域网通信原理

同网段的主机通讯

跨网段的主机通讯

数据包封装和分用

数据封装的过程

 数据分用的过程

IP地址和MAC地址

IP地址

MAC地址

IP地址和MAC地址的感性理解


网络发展

计算机的出现是要给人们提供计算任务的,人与人之间的生产和工作需要相互协作。比如:数据的获取,数据的整理,数据的分析以及应用,可能需要一大批人协同工作。人与人之间需要协作也就有了计算机之间相互协作的需求,这也能说明计算机网络发展的必然。

独立模式

独立阶段的每个计算机之间是相互独立的。在这种模式下,假如有一项工作需要三个人共同完成,李华对数据进行汇总,小明对数据进行分析和筛选,而老王完成最后的测试和发布工作。在独立模式下,由于计算机之间相互独立,所以它们之间的工作模式就是串行的。如下图:小明在李华处理完工作前始终是等待状态,而老王在李华+小明处理工作期间一直处于等待状态。

网络互联

网络互联的模式下,多台计算机连接在一起,完成数据共享。如下图所示:当多台计算机连接在一起后,每个人虽然使用的是各自的专属计算机,但是业务之间可以随时切换,共享数据由服务器集中管理。

局域网LAN

当计算机数量越来越多的时候,就需要交换机和路由器连接在一起。局域网:是局部地区形成的一个区域网络,分布地区范围有限。

●交换机的主要功能是在局域网内部进行数据包的转发和过滤,以提高网络的传输效率和安全性。

●路由器的主要功能是在不同网络之间进行数据包的转发和路由选择,以实现网络之间的通信。

总的来说,交换机主要用于局域网内部的数据包转发和过滤,而路由器主要用于不同网络之间的数据包转发和路由选择。

 如上图所示,寒假期间你组织高中班上的一批同学开展cs游戏比赛,他们分布在县城的各个地方,但是每个同学都有一个计算机,通过交换机和路由器连接在一起(当然这中间有很多细节,暂时不关心,重点理解什么是局域网),就可以愉快的进行游戏竞技了。

广域网WAN

广域网:是连接不同地区局域网或城域网计算机通信的远程网。比如:将远隔千里的计算机连接在一起。

需要注意的是,所谓“局域网”和“广域网”只是相对的概念。上述场景中描述的广域网,也能将其看做一个较大的局域网。

什么是协议

“协议”是一种约定。

生活中的“约定”很好理解,比如你今天要和网友在公园见面,你们提前约定好了暗号。你先说“¥¥¥¥¥¥¥¥”,它回复“###########”。通过这个暗号,你们就能确定对方的身份。

计算机之间的传输媒介是光信号和电信号,通过“频率”和“强弱”来表示0和1这样的信息。要想传递各种不同的信息,就需要约定好双方的数据格式。

 初识网络协议

计算机生产厂商有很多,操作系统有很多,计算机网络硬件设备也有很多。为了解决不同厂商之间生产的计算机能够相互顺畅的通信,就需要有人站出来,约定一个共同的标准,大家都遵守,这就是网络协议。

一台计算机的内部,也是一个小型的网络结构。计算机的体系结构中有网络,网络中有体系结构。

协议分层 

协议分层,将功能比较集中,耦合度比较高的模块分在一层(高内聚)。层与层之间一个改变不要影响其他层(低耦合)。每一层都要解决特定的问题。每一层都有自己匹配的协议,每一层协议解决当前层的问题。

通过一个例子理解协议分层:

示例场景:小明(A)和小红(B)都讲汉语,他们通过电话机进行通信。这个简单的通话场景,实际上在语言层将所说的汉语(汉语协议)以音频的方式通过听筒传递给电话机,在通讯设备层将音频转换为电信号(电话机协议)传递到对方的电话机,在转换为音频传递给对方。

场景变更1:通讯设备层保持不变,仅在语言层变更。小红(B)和小王(C)都讲英语。只要更改语言层的协议,就能让B和C完成通话。

场景变更2:语言层保持不变,仅在通讯设备层进行变更。小明(A)和小红(B)依然用汉语进行交流,但是通讯设备层改为用无线电。只需要更改通讯设备层。

需要注意的是,上述的例子中的协议只有两层,是为了方便描述。但是在实际的网络通信中会更加复杂,会有更多的层次划分。

OSI七层模型

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

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

●物理层: 负责光/电信号的传递方式. 比如现在以太网通用的网线(双绞 线)、早期以太网采用的的同轴电缆(现在主要用于有线电视)、光纤, 现在的wifi无线网使用电磁波等都属于物理层的概念。物理层的能力决定了最大传输速率、传输距离、抗干扰性等. 集线器(Hub)工作在物理层。

双绞线线序口诀:


●数据链路层: 负责设备之间的数据帧的传送和识别. 例如网卡设备的驱动、帧同步(就是说从网线上检测到什么信号算作新帧的开始)、冲突检测(如果检测到冲突就自动重发)、数据差错校验等工作. 有以太网、令牌环网, 无线LAN等标准. 交换机(Switch)工作在数据链路层。
●网络层: 负责地址管理和路由选择. 例如在IP协议中, 通过IP地址来标识一台主机, 并通过路由表的方式规划出两台主机之间的数据传输的线路(路由). 路由器(Router)工作在网路层。
●传输层: 负责两台主机之间的数据传输. 如传输控制协议 (TCP), 能够确保数据可靠的从源主机发送到目标主机。
●应用层: 负责应用程序间沟通,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等. 我们的网络编程主要就是针对应用层。

 OSI和TCP/IP对比

网络传输流程

什么是报头

计算机网络报头是指在计算机网络中传输的数据包中的一部分,用于描述数据包的一些基本信息。感性的去理解,就是类似快递单的东西。

局域网通信原理

两台局域网的主机能够直接通信。每一台机器都有网卡,每一张网卡都有自己的地址,MAC地址,能够标识其在局域网中的唯一性。

●在任何一个时刻,只允许一台主机在局域网中发送消息。否则会发生碰撞。

●假设Mac1给Mac7发送消息“我爱你!”,这个信息不仅仅Mac7收到。其余的“吃瓜群众2-6“也都看到了,但是通过分析知道这不是发送给自己的,就将其丢弃了。最后只有Mac7接受这个信息。

同网段的主机通讯

如下图所示,两台计算机通过TCP/IP协议通讯的过程:

 ●报文 = 报头+有效载荷。

跨网段的主机通讯

如下图所示,跨网段的主机传输,数据从一台计算机到另一台计算机传输的过程中要经过一个或多个路由:

数据包封装和分用

●不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据报 (datagram),在链路层叫做帧(frame)。
●应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header),称为封装
(Encapsulation)。
●首部信息中包含了一些类似于首部有多长, 载荷(payload)有多长, 上层协议是什么等信息。
●数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部, 根据首部中的 "上层协议字段" 将数据交给对应的上层协议处。

数据封装的过程

 数据分用的过程

IP地址和MAC地址

IP地址

IP协议有两个版本, IPv4和IPv6。下述的描述指的是IPV4:
●IP地址是在IP协议中, 用来标识网络中不同主机的地址。
●对于IPv4来说, IP地址是一个4字节, 32位的整数;通常使用 "点分十进制" 的字符串表示IP地址, 例如 192.168.1.5 ; 用点分割的每一个数字表示一个字节, 范围是 0 - 255

MAC地址

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

IP地址和MAC地址的感性理解

IP地址:从“北京“ 去  “桂林” 旅游。终极目标。为我们未来的每一个阶段要做的选择,提供方向目标,进行路径选择。

MAC地址:上一站从哪来,下一站去哪里。“北京 -- 河南”  “河南 -- 深圳” “深圳 -- 桂林”该类地址一直在变化。

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

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

相关文章

数据治理8大核心模块建设

数据治理是一个去中心化、多元参与的系统工程。一个全面且明确的数据治理体系,可以帮助组织构建生态式、协同化治理路径,最大化地提升整体数据质量,实现数据战略,激活新型生产力。 本文以元数据、主数据、数据标准、数据质量、数…

jenkins主从节点安装及pipeline构建

一、背景 通过Jenkins主节点配置的pipeline下发给从节点执行,从而兼容容器化执行 二、安装主节点 docker-compose.yml jenkins:user: rootrestart: alwaysimage: jenkinsci/blueoceancontainer_name: jenkins# network_mode: hostports:- "8081:8080"-…

【算法与数据结构】209.长度最小的子数组

文章目录 题目一、暴力穷解法二、滑动窗口法完整代码 所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。 题目 一、暴力穷解法 思路分析:这道题涉及到数组求和,那么我们很容易想到利用两个for循环来写,…

移动端浏览器性能优化探索

目录 前言 如何衡量卡顿 FPS 与卡顿的关系 新的衡量指标 浏览器动画渲染 GPU扮演的角色 合理避免回流和重绘 浏览器工作流程 解决方案 在移动端的页面开发过程中,我们经常提及页面性能优化、消除页面卡顿的话题,如何确定优化策略,我…

“老年养生”APP的设计与开发

摘要:我国人口老龄化呈上升趋势,老年人口比重增加。这是我国经济发展的一大挑战,也是老年健康产业的一大机遇。随着我国经济发展,越来越多的人开始关注自己的身体,这导致各种关于健康的网络应用层出不穷。但是经过分析…

【python技能树】python简介

1 Python定义 Python 是一种简单易学并且结合了解释性、编译性、互动性和面向对象的脚本语言。Python提供了高级数据结构,它的语法和动态类型以及解释性使它成为广大开发者的首选编程语言。 Python 是解释型语言: 开发过程中没有了编译这个环节。类似于…

Python中打印彩色信息的方法

在Python中,可以使用print()函数打印出彩色信息。在使用print()打印之前,需要调用os标准库对系统进行设置。 1 os标准库 1.1 简介 os是Operating System的简写,即“操作系统”。os标准库是一个操作系统接口模块,提供了使用操作…

学生成绩管理系统(Java)

目录 ​编辑 需求分析: 登录界面(LoginPanel) 主界面(MainApp) 重写 1.班级重写(cs.practics.bean.BjBean.java) 2.课程重写(cs.practics.bean.CourseBean.java) 3.成绩重写(cs.practics.bean.MarkBean.java) 4.学生重写(cs.practics.bean.StudentBean.java…

Spring Cloud 容错机试 Hystrix 服务降级 RestTemplate:

Ribon的服务降级操作 雪崩效应: 如果短信服务炸了后面的所有服务就会起连锁反应造成全部服务挂掉,这就是雪崩效应,那么其实短信服务又不是我们主要业务,这个时候我们可以采用服务降级,服务降级就是暂时的把短信服务停…

springboot服务端接口公网远程调试 - 实现HTTP服务监听【端口映射】

文章目录 前言1. 本地环境搭建1.1 环境参数1.2 搭建springboot服务项目 2. 内网穿透2.1 安装配置cpolar内网穿透2.1.1 windows系统2.1.2 linux系统 2.2 创建隧道映射本地端口2.3 测试公网地址 3. 固定公网地址3.1 保留一个二级子域名3.2 配置二级子域名3.2 测试使用固定公网地址…

安装CHATGPT保姆级教程(windows版)

ai包链接: 链接:https://pan.baidu.com/s/1tKuG4OfkewlDRU292vx8mw?pwdtw8t 提取码:tw8t 一、安装篇 安装python,使用软件包中的python安装程序安装后检查是否安装成功,cmd窗口运行命令: python –vers…

python自动化爬虫实战

python自动化爬虫实战 偶然的一次机会再次用到爬虫,借此机会记录一下爬虫的学习经历,方便后续复用。 需求:爬取网站数据并存入的csv文件中,总体分为两步 爬取网站数据存到到csv文件中 1、配置爬虫环境 1.1、下载自动化测试驱动 …

【2023最新】Python + Pycharm + Anaconda安装配置一条龙

【2023最新】Python Pycharm Anaconda安装配置一条龙 文章目录 【2023最新】Python Pycharm Anaconda安装配置一条龙1. Python1.1 Python下载1.2 Python安装1.3 测试 2. Pycharm2.1 Pycharm下载2.2 Pycharm安装配置2.3 你好Pycharm 3. Anaconda3.1 Anaconda下载3.2 Anacond…

【网络】TCP通讯(三次握手、四次挥手;滑动窗口;TCP状态转换;端口复用;TCP心跳检测机制)

前言:建议看着图片,根据文字描述走一遍TCP通讯过程,加深理解。 目录 TCP通信时序: 1)建立连接(三次握手)的过程: 2)数据传输的过程: 3)关闭连…

opencv4 傅里叶变换

傅里叶变换 ① 高频:变化剧烈的灰度分量,例如边界礁石。 ② 低频:变化缓慢的灰度分量,例如一片大海。 ③ 高通滤波器:只保留高频,会使得图像细节增强。高频边界锐化了,增强了,细节…

网瘾少年转行软件测试,月薪20k? 叛逆少年终归成长...

前言: 高中住校期间沉迷游戏(DNF),尤其是高三那年,晚上翻墙出去通宵,白天上课睡觉,高考自然是考了个稀碎,高考结束那个暑假刚开始觉得整个人都自由了,爸妈看我没考上大学,知道我心情…

Sql Server 自动备份

Sql Server 自动备份 文章目录 Sql Server 自动备份1. 打开SQL Server,在管理下找到”维护计划”,右键点击”维护计划向导”,如图;2. 再次点击维护计划向导3. 在选择维护任务下勾选”备份数据库”、”清楚维护任务”4.选择需要备份…

北邮22信通:二叉树显示路径的两种方法 递归函数保存现场返回现场的实例

北邮22信通一枚~ 跟随课程进度每周更新数据结构与算法的代码和文章 持续关注作者 解锁更多邮苑信通专属代码~ 获取更多文章 请访问专栏~ 北邮22信通_青山如墨雨如画的博客-CSDN博客 一.讲解 要想实现二叉树的路径显示,我们要按照…

每日一题——三数之和(双指针)

每日一题 三数之和 题目链接 思路 解析函数原型 首先我们来看一下题目给的函数原型: int** threeSum(int* nums, int numsSize, int* returnSize, int**returnColumnSizes)题目要求我们返回一个二维数组,数组的行数代表着存在多少个满足条件的三元组&…

基于SVM的鸢尾花数据集回归分析

目录 1. 作者介绍2. SVM支持向量机算法2.1 鸢尾花数据集2.2 鸢尾花数据集可视化2.2.1 散点图2.2.2 箱型图2.2.3 三维散点图(3D) 3. SVM算法实现3.1 完整代码3.2 运行结果3.3 问题与分析 1. 作者介绍 张佳伦,男,西安工程大学电子信…