Linux知识点 -- 网络基础(一)

news2024/11/21 0:12:45

Linux知识点 – 网络基础(一)

文章目录

  • Linux知识点 -- 网络基础(一)
  • 一、网络发展
  • 二、协议
    • 1.OSI七层模型
    • 2.TCP/IP五层(或四层)模型
  • 三、网络传输基本流程
    • 1.局域网中的两台主机通信流程
    • 2.跨网段的两台主机间通信
    • 四、网络中的地址管理
    • 1.IP地址
    • 2.MAC地址


一、网络发展

  • 独立模式:计算机之间相互独立
    在这里插入图片描述
  • 网络互联:多台计算机连接在一起,完成数据共享
    在这里插入图片描述
  • 局域网LAN:计算机数量更多了,通过交换机和路由器连接在一起:
    在这里插入图片描述
  • 广域网WAN:将远隔千里的计算机都连接在一起
    在这里插入图片描述
    注:局域网和广域网只有规模上的差别;

二、协议

1.OSI七层模型

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

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

在这里插入图片描述
TCP/IP通讯协议采用了5层的层级结构,每一层都呼叫它的下一-层所提供的网络来完成自己的需求。

  • 物理层:负责光/电信号的传递方式。比如现在以太网通用的网线(双绞线)、早期以太网采用的的同轴电缆(现在主要用于有线电视)、光纤,现在的wifi无线网使用电磁波等都属于物理层的概念。物理层的能力决定了最大传输速率、传输距离、抗干扰性等。集线器(Hub)工作在物理层。
  • 数据链路层负责设备之间的数据帧的传送和识别。例如网卡设备的驱动、帧同步(就是说从网线上检测到什么信号算作新帧的开始)、冲突检测(如果检测到冲突就自动重发)、数据差错校验等工作;有以太网、令牌环网,无线LAN等标准;交换机(Switch)工作在数据链路层;
  • 网络层负责地址管理和路由选择;例如在IP协议中,通过IP地址来标识一台主机,并通过路由表的方式规划出两台主机之间的数据传输的线路(路由);路由器(Router)工作在网路层;
  • 传输层负责两台主机之间的数据传输.如传输控制协议(TCP),能够确保数据可靠的从源主机发送到目标主机;
  • 应用层负责应用程序间沟通,如简单电子邮件传输(SMTP) 、文件传输协议(FTP) 、网络远程访问协议(Telnet) 等;我们的网络编程主要就是针对应用层。

对于一台主机,,它的操作系统内核实现了从传输层到网络层的内容;
对于一台路由器,它实现了从网络层到物理层;
对于一台交换机,它实现了从数据链路层到物理层;
对于集线器,它只实现了物理层;

划分为层状结构的原因:

  • 场景复杂;
  • 功能解耦,便于维护;

TCP/IP协议各个层对应计算机的结构:
在这里插入图片描述

三、网络传输基本流程

1.局域网中的两台主机通信流程

在这里插入图片描述
局域网中两台主机是可以直接通信的;
从逻辑上讲,两台主机的应用层在直接通信;
从物理上讲,两台主机的应用层是不能直接通信的;
每层都有自己的协议定制方案;
每层协议都要有自己的协议报头;
从上到下交付数据的时候,要添加报头;
从下到上递交数据的时候,要去掉报头;

在这里插入图片描述
封装的本质:添加报头;
解包的本质:去掉包头,展开分析;

局域网通信就是一台主机在局域网中发送信息,给特定的另一台主机,其他主机在识别到自己不是目标主机后,就将报文丢弃了,只有目标主句收到后会进行通信;

局域网中标识主机的唯一性:MAC地址

2.跨网段的两台主机间通信

在这里插入图片描述
两台主机(A和B)不在同一个局域网中,他们之间需要通过路由器进行通信;
跨网段的两台主机通信,链路层之间不能直接通过以太网传输;
路由器也是一台主机,AB两台主机分别于该路由器处于同一个局域网中;
两台主机不在一个局域网,无法直接通信,但可以通过路由器进行通信;
A主机拿不到B主机的MAC地址,但可以通过路由器拿到;

IP地址就相当于通信的起点和终点,在通信期间是一直不变的(源IP,目的IP);
MAC地址相当于通信路程中的一段段小目的地,在通信期间是不断变化的(源MAC,下一站MAC);

  • 通信过程:
    A主机的IP地址通过以太网驱动程序加上了以太网驱动程序的报文,传到路由器中;
    路由器去掉了以太网驱动程序的报文,从路由器传到B主机的过程中,经过令牌环驱动程序又加上了报文;
    从B主机链路层到网络层的过程中又去掉了这个报文;

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

四、网络中的地址管理

1.IP地址

IP协议有两个版本,IPv4和IPv6;

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

2.MAC地址

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

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

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

相关文章

JOJO的奇妙冒险

JOJO,我不想再做人了。 推荐一部动漫 JOJO的奇妙冒险 荒木飞吕彦创作的漫画 《JOJO的奇妙冒险》是由日本漫画家荒木飞吕彦所著漫画。漫画于1987年至2004年在集英社的少年漫画杂志少年JUMP上连载(1987年12号刊-2004年47号刊),2005年后在集英…

盖革计数管——核辐射测量仪核心部件

一:外形尺寸(最大值) 1、直径6.2mm 2、长度56mm 二:参数 1、起始计数电压:≦350V 2、坪区范围:380—480V 3、坪区范围斜率:≦15%/100V 4、工作温度范围:-40℃—55℃ 5、放电电压:550V 6、死时间:20us 7、推荐工作电压4…

信息系统项目管理师(第四版)教材精读思维导图-第六章项目管理理论

请参阅我的另一篇文章,综合介绍软考高项: 信息系统项目管理师(软考高项)备考总结_计算机技术与软件专业技术_铭记北宸的博客-CSDN博客 本章思维导图PDF格式 本章思维导图XMind源文件 目录 6.1 PMBOK的发展 6.2 项目基本要素 6.3…

51社区滑块验证码

url aHR0cHM6Ly9wYXNzcG9ydC41MS5jb20vP2dvdXJsPWh0dHBzOi8vd2FuLjUxLmNvbS92dWUvaW5kZXg 接口分析 圈起来的两个接口,一个拿滑块,一个验证。 参数分析 没用特别难的加密 验证识别 需要注意的是,我们先拿到的图片是混乱的,需…

人员闯入检测告警算法

人员闯入检测告警算法通过yolov5网络模型识别检测算法,人员闯入检测告警算法对未经许可或非法进入的人员进行及时识别告警,确保对危险区域的安全管理和保护。YOLO系列算法是一类典型的one-stage目标检测算法,其利用anchor box将分类与目标定位…

图解Spring三级缓存的工作流程

一级缓存:保存了完整的Bean实例,可以直接使用 二级缓存:保存了实例化以后还没有设置属性值的Bean实例,也就是一个空的对象,没有做依赖注入 三级缓存 :存放Bean工厂,它用来生成原始Bean对象并且…

「Redis」1. 数据类型的底层实现

前言:在这篇博文中,我们将简单总结在面试中怎么回答Redis数据类型的底层实现。 因为面试时间就那么点,言简意赅的描述自己会的知识显得尤为重要‼️ 文章目录 0.1. String 的底层实现原理0.2. 列表的底层实现原理0.3. 字典的底层实现原理0.4.…

【Interaction交互模块】AngularJointDrive角度关节驱动

文章目录 一、预设体位置二、案例:做一个“能开合的门” 1、在已建好的门框下,建门 2、设置参数 3、解决产生的问题 一、预设体位置 交互模块——可控制物体——物理关节——角度关节驱动 二、案例:做一个“能开合的门” 1…

深入了解fcntl函数:Linux系统编程中的文件控制

文章目录 概述介绍函数原型与参数 拓展:fcntl改文件属性总结 概述 摘要: fcntl函数是Linux系统编程中一个重要的函数,用于对文件描述符进行各种控制操作。本文将详细介绍fcntl函数的原型、各个参数的用法,以及阻塞和非阻塞模式切换的方法&am…

Code Lab - 34

GAT里面有一些地方看的不是太懂(GAT里Multi Attention的具体做法),暂时找了参考代码,留一个疑问 1. 一个通用的GNN Stack import torch_geometric import torch import torch_scatter import torch.nn as nn import torch.nn.fun…

package.json 详解

文章目录 package.json1. name2. version3. description4. homepage5. bugs6. license7. author, contributors8. funding9. files10. main11. module12. browser13. bin14. man15. directories15.1 directories.bin15.2 directories.man 16. repository17. scripts18. config1…

Unity引擎修改模型顶点色的工具

大家好,我是阿赵。   之前分享过怎样通过MaxScript在3DsMax里面修改模型的顶点色。不过由于很多时候顶点色的编辑需要根据在游戏引擎里面的实际情况和shader的情况来动态调整,所以如果能在引擎里面直接修改模型的顶点色,将会方便很多。于是…

指向任意节点的带环链表

🌈图示指向任意节点的带环链表 如图: 🌈快慢指针法判断链表是否带环 🌟思路:快指针fast一次走2步,慢指针slow一次走1步,fast先进环在换中运动,随后slow进入环。两指针每同时移动…

复原20世纪复古修仙游戏

前言 在本教程中,我突发奇想,想做一个复古的修仙游戏,考虑到以前的情怀决定做个古老的躺平修仙游戏 📝个人主页→数据挖掘博主ZTLJQ的主页 个人推荐python学习系列: ☄️爬虫JS逆向系列专栏 - 爬虫逆向教学 ☄️python…

英特尔Raptor Lake Refresh第14代CPU:传闻发布日期、价格、规格等

英特尔预计将在今年秋天推出第14代Raptor Lake-S Refresh CPU。虽然即将推出的系列芯片沿用了当前的第13代英特尔核心系列,但它们实际上是相同CPU的更新版本。 Raptor Lake-s Refresh芯片没有任何官方消息,但几次所谓的泄露让我们了解了我们可能会期待什…

发光太阳聚光器的蒙特卡洛光线追踪研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

C++字符串详解

C 大大增强了对字符串的支持,除了可以使用C风格的字符串,还可以使用内置的 string 类。string 类处理起字符串来会方便很多,完全可以代替C语言中的字符数组或字符串指针。 string 是 C 中常用的一个类,它非常重要,我们…

uniapp 项目实践总结(一)uniapp 框架知识总结

导语:最近开发了一个基于 uniapp 框架的项目,有一些感触和体会,所以想记录以下一些技术和经验,在这里做一个系列总结,算是对自己做一个交代吧。 目录 简介全局文件全局组件常用 API条件编译插件开发 简介 uniapp 是…

Matlab(变量与文本读取)

目录 1.变量(数据)类型转换 1.1 字符 1.2 字符串 1.3 逻辑操作与赋值 2.Struct结构体数组 2.1函数的详细介绍: 2.1.1 cell2struct 2.1.1.1 垂直维度转换 2.1.1.2 水平维度转换 2.1.1.3 部分进行转换 2.1.2 rmfield 2.1.3 fieldnames(查…

Git分布式版本控制系统与github

第四阶段提升 时 间:2023年8月29日 参加人:全班人员 内 容: Git分布式版本控制系统与github 目录 一、案例概述 二、版本控制系统 (一) 本地版本控制 (二)集中化的版本控制系统 &…