Linux网络基础

news2024/11/15 12:10:58

目录

一.计算机网络背景

二、认识协议 

三.OSI七层模型

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

五.网络传输基本流程

 六.数据包封装和分用

七.网络中的地址管理


一.计算机网络背景

网络本质是一个层状结构,同时也是操作系统的一部分

网络发展

独立模式: 计算机之间相互独立;
 网络互联: 多台计算机连接在一起, 完成数据共享;

局域网LAN: 计算机数量更多了, 通过交换机和路由器连接在一起;

广域网WAN: 将远隔千里的计算机都连在一起;

所谓 “局域网” 和 “广域网” 只是一个相对的概念, 广域网也可以看做一个比较大的局域网

二、认识协议 

 "协议" 是一种约定,例子:

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

协议分层
因为网络本质就是一个层状结构,所以对于网络协议也需要进行分层制定协议,便于进行同层之间的数据交流

例子:打电话

在这个例子中, 我们的协议只有两层; 但是实际的网络通信会更加复杂, 需要分更多的层次.分层最大的好处在于 "封装" . 面向对象例子

三.OSI七层模型

概念:

OSI(Open System Interconnection,开放系统互连)七层网络模型称为开放式系统互联参考模型,是一个逻辑上的定义和规范,把网络从逻辑上分为了7层,每一层都有相关、相对应的物理设备,比如路由器,交换机

OSI 七层模型是一种框架性的设计方法,其最主要的功能使就是帮助不同类型的主机实现数据传输

它的最大优点是将服务、接口和协议这三个概念明确地区分开来,概念清楚,理论也比较完整;通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯,但是它既复杂又不实用,实际中应用的是TCP/IP四层模型

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

 概念

TCP/IP是一组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇

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

 接下来说一下上图每一层的作用:

1.物理层: 负责光/电信号的传递方式,即硬件设备间的数据传输

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

2.数据链路层: 负责设备之间的数据帧的传送和识别

例如网卡设备的驱动、帧同步(就是说从网线上检测到什么信号算作新帧的开始)、冲突检测(如果检测到冲突就自动重发)、数据差错校验等工作. 有以太网、令牌环网, 无线LAN等标准。交换机(Switch)工作在数据链路层

3.网络层: 负责地址管理和路由选择,即决策数据传输的方向

例如在IP协议中, 通过IP地址来标识一台主机, 并通过路由表的方式规划出两台主机之间的数据传输的线路(路由). 路由器(Router)工作在网路层

4.传输层: 负责两台主机之间的数据传输,保障数据传输的可靠性

如传输控制协议 (TCP), 能够确保数据可靠的从源主机发送到目标主机

5.应用层: 负责应用程序间沟通,为用户进程提供服务

如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等. 我们的网络编程主要就是针对应用层

 注意:物理层我们考虑的比较少. 因此很多时候也可以称为 TCP/IP四层模型

一般而言,对于一台主机,它的操作系统内核实现了从传输层到物理层的内容;

对于一台路由器,它实现了从网络层到物理层;

对于一台交换机,它实现了从数据链路层到物理层;

对于集线器,它只实现了物理层;

但是并不绝对,很多交换机也实现了网络层的转发,很多路由器也实现了部分传输层的内容(比如端口转发)

五.网络传输基本流程

网络传输类型:

同一个网段内的两台主机进行文件传输,同一个局域网内的主机是能够直接进行通信的每层都有自己的协议定制方案,每层协议都要有自己的协议报头 ,从上到下交付数据的时候,要添加报头,从下到上递交数据的时候,要去掉报头,封装的本质:添加报头,解包:去掉报头&&展开分析

跨网段的主机的文件传输,数据从一台计算机到另一台计算机传输过程中要经过一个或多个路由器

接下来解释一下上面图片中每一个的含义: 

1.以太网Ethernet 、令牌环网、ATM网、FDDI网可以算作一类,按照传输技术来分类,属于OSI参考类型的数据链路层
2.以太网:就是指总线型网络,它的名字是从光学上得来的(科学家幻想出一中叫以太的物质),网络中大家共用一条信息通道,大家要传输数据就要等,只有网络空闲时才可以发送信息(同时传输会造成消息碰撞,也就成为了垃圾数据)
3.令牌环网:简单点理解就是,大家要想发信息就必须取得一个叫令牌的东西,令牌总线把总线形或树形网络中的各个工作站按一定顺序(如按接口地址大小)排列形成一个逻辑环,只有令牌持有者才能控制总线,才有发送信息的权力
4.对于跨网段的数据传输,由于链路层的不同网段存在不同的协议,为了保证数据传输的通畅,此时就需要路由器将数据包针对不同协议进行协议的替换,即数据报头的更换
5.路由器的第一个作用是分发数据,将数据从一个网段传输到另一个网段;第二个作用是对数据进行路由选择,即传输给哪一个网段

 六.数据包封装和分用

概念:

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

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

3.首部信息中包含了一些类似于首部有多长,载荷(payload)有多长(解决如何将数据包进行分离-解包),上层协议是什么等信息(解决将数据传输到哪里-分用)

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

5.经过封装和分用的过程,对于网络交互的接收和发送两方,每一层所看到的数据都是一样的,注:这里指的是IP层之上,因为IP层下的数据传输可能是在不同的网段传输,协议不同对应的报头数据也就不同

6.数据和报头的组合叫做数据包,而数据又被叫做有效载荷

7.其实在实际封装的过程中,不仅需要对数据进行添加报头,还需要解决报头和有效数据的分界问题,因为当数据包传送到对方的网卡上时,对方还需要进行解包

数据封装的过程:

数据分用的过程:

协议共性:提供一个将报头与有效载荷分离的方法,协议当中必须包含一个字段,表明应该将有效载荷交付给上层的哪个协议。

七.网络中的地址管理

认识IP地址:

1.lP协议有两个版本, IPv4和IPv6

2.IP地址是在IP协议中, 用来标识网络中不同主机的地址

3.对于IPv4来说,IP地址是一个4字节,32位的整数

4.我们通常也使用 “点分十进制” 的字符串表示IP地址,例如 192.168.0.1 ; 用点分割的每一个数字表示一个字节, 范围是 0 - 255

认识MAC地址:

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

区别IP地址与mac地址:

区别IP地址与mac地址,我们可以用一个故事来说明,例如,西游记中,唐僧是要从东土大唐去往西天,然后唐僧现在在车迟国,下一站是黑风岭。

源IP:东土大唐

目的IP:西天

源mac地址:车迟国

下一站mac地址:黑风岭

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

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

相关文章

学术速运|利用机器学习进行有机反应机理分类

​题目:Organic reaction mechanism classification using machine learning 文献来源: Nature | Vol 613 | 26 January 2023 | 691 代码:https://doi.org/10.48420/16965271 简介:对催化有机反应的机理的理解,有助于设计新的催化剂、反应…

微服务一 实用篇 - Docker安装

《微服务一 实用篇 - Docker安装》 提示: 本材料只做个人学习参考,不作为系统的学习流程,请注意识别!!! 《微服务一 实用篇 - Docker安装》《微服务一 实用篇 - Docker安装》0.安装Docker1.CentOS安装Docker1.1.卸载(可选)1.2.安装docker1.3.启动docker…

聚观早报|文心一言将于3月16日发布;字节Pico调低VR设备销售目标

今日要闻:百度「文心一言」将于3月16日发布;字节Pico调低VR设备销售目标;iPhone16Pro将采用屏下Face ID;京东低调重试前置仓卖菜业务;名创优品上季度净利增八成 百度「文心一言」将于3月16日发布 百度计划于 3 月 16 日…

DAGA : 基于生成方法的低资源标记任务数据增强 精读笔记

DAGA : 基于生成方法的低资源标记任务数据增强 精读笔记 文章目录DAGA : 基于生成方法的低资源标记任务数据增强 精读笔记1 Introduction2 BackgroundName Entity RecognitionPart-of-Speech (POS) TaggingTarget Based Sentiment Analysis3 Proposed Method3.1 Labeled Senten…

金三银四面试必备,“全新”突击真题宝典,阿里腾讯字节都稳了

前言招聘旺季就到了,不知道大家是否准备好了,面对金三银四的招聘旺季,如果没有精心准备那笔者认为那是对自己不负责任;就我们Java程序员来说,多数的公司总体上面试都是以自我介绍项目介绍项目细节/难点提问基础知识点考…

长短记忆神经网络(LSTM,Long Short-Term Memory)

长短记忆神经网络定义 长短记忆神经网络(Long-short term memory, LSTM)是一种特殊的RNN结构。该神经网络可以有效保留历史信息,实现对文本的长期依赖信息进行学习。 关键问题:控制长期状态信息 解决方法:门控开关 门的…

在windows安装python3.11同时进行一个数据的练习

安装包百度网盘如下: 链接:https://pan.baidu.com/s/1l9H1GWP64LOxLaXXLie2uA?pwd6666 提取码:6666 1.我们选择自定义安装 2.当我们点了自定义安装后就直接next 3.修改路径,之后点击安装(install) 4.安装完成,进行…

南卡Neo骨传导运动耳机发布,重塑骨传导耳机舒适听感新体验!

近日,在骨传导耳机领域中最专业的南卡发布了今年全新系列——NEO,如果说南卡Runner Pro4的音质是偏向于节奏性,那么这款南卡NEO是更加偏向于沉稳性节奏,能够轻松征服轻运动场景,此系列在舒适度以及音质上,更…

3.3 利用群晖:群辉与PC电脑直连,实现万兆/2.5G速度文件互传(解决 直连后 网络/外网/网页 访问变慢,直连后群辉无网络 cloud sync无网络)

为黑群晖和电脑装备了万兆X540 T2网卡,为实现万兆速度的文件互传,决定将黑群晖直连PC,其需要注意的点有以下三点:修改PC和群辉的IPv4:为实现固定IP访问群辉,这里建议修改PC和群辉均为固定IP。1)…

JS#3 事件监听

一. 简介事件:HTML事件是发生在HTML元素上的"事情"例如:按钮被点击鼠标移动到元素之上按下键盘按键事件监听: JavaScript 可以在事件被侦测到时执行代码二. 事件绑定事件绑定有两种方式方式一:通过HTML标签中的事件属性进行绑定方式二:通过DOM元素属性绑定代码<!D…

2.4 群辉驱动:多网口,系统网络只能识别两个网口 解决教程

所需工具下载&#xff1a;链接&#xff1a;https://pan.baidu.com/s/1CMLl6waOuW-Ys2gKZx7Jgg?pwdchct提取码&#xff1a;chct安装的黑群晖华硕z490i主板自带一个i225 2.5G&#xff0c;后又插了一个4口8125B四口网卡&#xff0c;发现控制面板->网络->网络界面 只识别了其…

kafka入门到实战一(认识kafka)

kafka入门到实战一&#xff08;认识kafka&#xff09; 本次kafka的学习打算从三方面开始 认识kafka&#xff0c;掌握基础知识搭建kafka&#xff0c;为使用kafka创建条件使用kafka&#xff0c;基本的使用和解决顺序消费等问题 kafka消费流程 kafka大体消费流程&#xff1a;生…

webpack优化环境配置和webpack配置详解

目录 4 webpack优化环境配置 17 优化配置介绍 18 HMR 19 source-map 20 oneOf 21 缓存 22 tree shaking 23 code split (代码分割) 24 lazy loading 25 PWA 26 多进程打包 27 externals 28 dll 5 webpack配置详解 29 entry 30 output 31 module 32 resolve …

axios的二次封装

方式一&#xff1a;将axios单独分装到某个配置文件中import axios from axios; const axiosApi axios.create({baseURL:http://127.0.0.1:3000,timeout:3000 }) export default axiosApi在组件中使用:import $http from axios配置文件的地址 $http.get(/student/test).then(re…

数仓之拉链表分区设计

目录 适用场景 优缺点 案例 适用场景 当数据量较大&#xff0c;表中某些字段有变化&#xff0c;但变化频率不是很高&#xff0c;而业务需求又需要统计这种变化状态&#xff0c;如果每天存储一份全量数据&#xff0c;不仅浪费存储空间&#xff0c;且不便于业务统计&#xff1b…

51单片机入门————LED灯的控制

LED的电路图通过原理图看出&#xff0c;LED灯是接单片机芯片的P20~P27的一共有8个LED&#xff0c;51单片机也是8字节的P20x010xFE————1111 1110P20xFE可以表示把在P2端的第一个灯点亮1 表示高电平0表示低电平当为0的时候形成一个完整回路&#xff0c;电流从高电平流向低电平…

【备战面试】每日10道面试题打卡-Day2

本篇总结的是Java基础知识相关的面试题&#xff0c;后续也会更新其他相关内容 文章目录1、 和 equals 的区别是什么&#xff1f;2、你重写过 hashcode 和 equals 吗&#xff0c;为什么重写equals时必须重写hashCode方法&#xff1f;3、为什么Java中只有值传递&#xff1f;4、BI…

SQL SERVER中SCHEMA的詳解

SQL SERVER中SCHEMA的講解1. Introduction1.1 優勢1.2 內置schema2. Create Schema2.1 Parameters2.2 Sql3.Awakening1. Introduction 1.1 優勢 数据库模式为我们提供了在数据库中创建逻辑对象组的灵活性。如果多个团队使用同一个数据库&#xff0c;我们可以设计各种模式来分組…

基于Ubuntu的Brainframe视觉AI分析平台搭建的详细步骤

目录 引言&#xff1a; 过程&#xff1a; 下载Brainframe安装包&#xff1a; 搭建Brainframe命令接口&#xff1a; 解决下载Docker速度慢的方法&#xff1a; 安装Docker : Unable to find image hello-world:latest locally 问题的解决&#xff1a; Step1&#xff1a;进…

Vue3创建项目(四)axios封装及接口配置

项目结构: 目录 &#x1f349;&#x1f349;&#x1f349;index.ts &#x1f349;&#x1f349;&#x1f349; api.ts 看完需要预计花费10分钟。 请求拦截器与响应拦截器 阅读下面代码需先了解以下内容&#xff1a; 请求拦截器&#xff1a; 请求拦截器的作用是在请求发送前进…