Linux------网络基础1

2023-11-08

计算机网络的发展历程

简单的了解一下就行,图就不提供了。
1,最开始,计算机之间是相互独立的,不能沟通交流。
2,通过网络互联的方式, 多台计算机连接在一起, 完成数据共享。
3,局域网(LAN)计算机数量更多了, 通过交换机和路由器连接在一起.。
4, 广域网(WAN):将远隔千里的计算机都连在一起。

网络协议

什么是协议:就是“约定“
举个例子:
在上高中的时候,你漂亮的女神小方,坐在你的斜对面(斜上方),你们规定:只要你用脚踢2下椅子,就是要传纸条了,
你把纸条扔到小方椅子的旁边地上,小方默契的弯腰捡起来。
这就是你和小方之间的协议,这就是一种约定。
同样的:人和人之间有协议,计算机网络中的每一层都有协议。
例如:
在这里插入图片描述

这三要素看一下就行,了解一下就行。
三要素:
1,语法。 数据与控制信息的结构或者格式
2,语义。 各个控制信息的具体含义。
3,同步。 事件实现的顺序和时间的详细说明。

计算机网络分层体系结构

例如上图的邮政系统的分层结构,每一层为其上层提供服务,利用下层提供的服务完成本层的功能
它的优点:
1,各层之间相互独立。某一层并不需要知道下一层是如何实现的,仅仅需要知道通过层与层间提供的接口去享受服务。
2,灵活性好,任何一层受到影响,都不影响上下层。
3,结构上完全可以分割,意味着各层之间的实现方式完全可以采用最适合自己的方式。
4,易于实现和维护,将庞大的计算机网络体系结构分解成若干个相对独立的子结构
5,有利于功能复用,因为每一层只需要完成自己的工作,所以也可以利用功能单一的特点为不同的层提供服务。
6,能促进标准化工作,对每一层的功能和其提供的服务都有精确的说明。

OSI(Open System Interconnection,开放系统互连)七层网络模型称为开放式系统互联参考模型,是一个逻辑上的定义和规范。

因为它复杂且不实用
了解一下,看一下就行。
在这里插入图片描述

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

物理层: 负责光/电信号的传递方式.

数据链路层: 负责设备之间的数据帧的传送和识别.。 ,交换机工作在该层,数据单位是
功能还有:帧同步,差错控制,流量管理,链路管理,网络拓扑结构
并且还进行报头和报尾的封装。

网络层: 负责地址管理和路由选择. 路由器(Router)工作在网路层. 。
网络层协议是IP,网络层又称网际层或者IP层,数据单位是数据段

传输层: 向两台主机中的应用进程之间的通信提供通用的数据传输服务。
该层的主要两个协议
TCP(传输控制协议): 提供面向链接的,可靠的数据传输服务,数据传输的单位是报文段
UDP(用户数据报协议):提供无连接,不可靠的传输服务。 数据单位是用户数据报

应用层: 通过应用进程间的交互来完成特定的网络应用,该层协议规定的是应用进程间的通信和交互的规则。
这里的进程是指正在运行的程序。 应用层交互的数据单元称为报文。 而且网络通信的本质就是
两台主机之间应用进程之间的通信。

在这里插入图片描述

数据的封装和分用(大致逻辑图):
当数据从上层传递给下层的时候,都要封装加上报头数据。报头实际上就是一种结构化的数据(类似于位段)。
报头的作用是什么呢?
1,需要报头中的数据来指导当前层进行协议选择
2,明确报头和有效载荷(数据/报文)的边界。

应用进程间通过复杂的过程才能送到目的站的应用进程,但是这些过程对于用户来说已经屏蔽掉了,
看上去是应用进程和应用进程之间在通信。
同理可得:网络中的每一层认为是在和同等层之间经过共同的协议在通信。
再次总结: 协议是水平的, 服务是垂直的。
在这里插入图片描述

局域网通信的原理

本质就是通过网络资源共享的方式
如果多台计算机同时发送数据,可能发送数据碰撞的问题。
每台主机都要有碰撞检测的能力,
每台主机都要有碰撞避免算法
也就是说,局域网中的任何时刻,都只能允许一台主机发送消息。

在这里插入图片描述

IP地址和 MAC地址的区别

IP协议有两个版本, IPv4和IPv6. 默认是IPv4 (网络层
IP地址是在IP协议中, 用来标识网络中不同主机的地址;
对于IPv4来说, IP地址是一个4字节, 32位的整数;

认识MAC地址
MAC地址用来识别数据链路层中相连的节点;
长度为48位, 及6个字节.
在网卡出厂时就确定了, 不能修改.

所以:
一台主机可以有多个MAC地址,因为一台主机可以绑定多个网卡。
也就是一个IP地址可以对应多个MAC地址。

TCP/IP体系结构

两个主机之间沟通大致逻辑图解

在这里插入图片描述

沙漏计时器形状的TCP/IP协议族示意图:
在这里插入图片描述
应用层相关的主要协议有:
简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet
域名解析(DNS

传输层:传输控制协议 (TCP),用户数据报协议(UDP

网络层:网际协议(IP协议) 地址解析协议 (ARP协议) 控制报文协议(ICMP) ,IGMP

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux------网络基础1 的相关文章

  • ssh 连接超时

    我无法在 git 中 ssh 到 github bitbucket 或 gitlab 我通常会收到以下错误消息 如何避免它 输出 ssh T email protected cdn cgi l email protection i ssh
  • vmsplice() 和 TCP

    在原来的vmsplice 执行 有人建议 http lwn net Articles 181169 如果您的用户态缓冲区是管道中可容纳的最大页面数的 2 倍 则缓冲区后半部分成功的 vmsplice 将保证内核使用缓冲区的前半部分完成 但事
  • ioctl 命令的用户权限检查

    我正在实现 char 驱动程序 Linux 并且我的驱动程序中有某些 IOCTL 命令仅需要由 ADMIN 执行 我的问题是如何在 ioctl 命令实现下检查用户权限并限制非特权用户访问 IOCTL 您可以使用bool capable in
  • 为什么 Linux 原始套接字的 RX 环大小限制为 4GB?

    背景 我试图mmap 我的原始套接字的 RX 环形缓冲区64 bitLinux 应用程序 我的环由 4096 个块组成 每个块大小为 1MB 总共 4GB 请注意 每个 1MB 块中可以有许多帧 如果您好奇 请参阅此文档了解背景信息 htt
  • SSH,运行进程然后忽略输出

    我有一个命令可以使用 SSH 并在 SSH 后运行脚本 该脚本运行一个二进制文件 脚本完成后 我可以输入任意键 本地终端将恢复到正常状态 但是 由于该进程仍在我通过 SSH 连接的计算机中运行 因此任何时候它都会登录到stdout我在本地终
  • 适用于 Linux 的轻量级 IDE [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • docker 非 root 绑定安装权限,WITH --userns-remap

    all 尝试让绑定安装权限正常工作 我的目标是在容器中绑定安装卷 以便 a 容器不以 root 用户身份运行入口点 二 docker daemon 配置了 userns remap 这样容器 主机上没有 root c 我可以绑定挂载和读 写
  • 通过 Visual Studio 2017 使用远程调试时 Linux 控制台输出在哪里?

    我的Visual Studio 2017 VS2017 成功连接Linux系统 代码如下 include
  • 如何使用 Cloud Init 挂载未格式化的 EBS 卷

    Context 我正在使用https wiki jenkins io display JENKINS Amazon EC2 Plugin https wiki jenkins io display JENKINS Amazon EC2 Pl
  • 如何在 Ubuntu 中创建公共 HTML 文件夹?

    简单的问题 但由于某种原因我无法在谷歌上找到确切的答案 我在 Slicehost 上安装了全新的 Ubuntu 并且想在我的主目录中为包含一堆静态 HTML 文件的简单网站创建一个公共目录 我该怎么做呢 只是打字的问题吗mkdir publ
  • C 语言的符号表

    我目前正在开发一种执行模式匹配的静态分析工具 我在用Flex https github com westes flex生成词法分析器 我编写了代码来管理符号表 我不太有经验C 所以我决定将符号表实现为线性链表 include
  • 为什么 fopen("any_path_name",'r') 不给出 NULL 作为返回值?

    在调试一些代码时 我得到如下内容 include
  • 并行运行 shell 脚本

    我有一个 shell 脚本 打乱大型文本文件 600 万行和 6 列 根据第一列对文件进行排序 输出 1000 个文件 所以伪代码看起来像这样 file1 sh bin bash for i in seq 1 1000 do Generat
  • 从 Xlib 转换为 xcb

    我目前正在将我的一个应用程序从 Xlib 移植到 libxcb 但在查找有关我有时使用的 XInput2 扩展的信息时遇到了一些麻烦 libxcb 中有 XInput2 实现吗 如果是的话 在哪里可以找到文档 目前我在使用此功能时遇到问题
  • 如何在 Linux 中使用 C 语言使用共享内存

    我的一个项目有点问题 我一直在试图找到一个有据可查的使用共享内存的例子fork 但没有成功 基本上情况是 当用户启动程序时 我需要在共享内存中存储两个值 当前路径这是一个char and a 文件名这也是char 根据命令参数 启动一个新进
  • Intel 上的 gcc 中的 _mm_pause 用法

    我参考过这个网页 https software intel com en us articles benefitting power and performance sleep loops https software intel com
  • Mac OS X 上的 /proc/self/cmdline / GetCommandLine 等效项是什么?

    如何在不使用 argc argv 的情况下访问 Mac OS X 上的命令行 在 Linux 上 我会简单地阅读 proc self cmdline or use GetCommandLine在 Windows 上 但我找不到 Mac OS
  • Linux 为一组进程保留一个处理器(动态)

    有没有办法将处理器排除在正常调度之外 也就是说 使用sched setaffinity我可以指示线程应该在哪个处理器上运行 但我正在寻找相反的情况 也就是说 我想从正常调度中排除给定的处理器 以便只有已明确调度的进程才能在那里运行 我还知道
  • 如何让 Node.js 作为后台进程运行并且永不死掉?

    我通过 putty SSH 连接到 linux 服务器 我尝试将其作为后台进程运行 如下所示 node server js 然而 2 5 小时后 终端变得不活动 进程终止 即使终端断开连接 我是否也可以使进程保持活动状态 Edit 1 事实
  • 从 Linux 内核模块中调用用户空间函数

    我正在编写一个简单的 Linux 字符设备驱动程序 以通过 I O 端口将数据输出到硬件 我有一个执行浮点运算的函数来计算硬件的正确输出 不幸的是 这意味着我需要将此函数保留在用户空间中 因为 Linux 内核不能很好地处理浮点运算 这是设

随机推荐

  • CNN(卷积神经网络)、RNN(循环神经网络)、DNN(深度神经网络)的内部网络结构有什么区别?

    CNN 卷积神经网络 RNN 循环神经网络 DNN 深度神经网络 的内部网络结构有什么区别 CNN 卷积神经网络 RNN 循环神经网络 DNN 深度神经网络 的内部网络结构有什么区别 以及他们的主要用途是什么 只知道CNN是局部感受和参数共
  • ElasticSearch 8.0脚本评分查询

    使用脚本来提供返回的文档的自定义评分 script score查询非常有用 例如 评分函数成本比较高且我们仅仅需要计算一组过滤后的文档的评分 请求的样例 下面的script score查询设置每个返回的文档的评分等于my int字段值除以1
  • 机器视觉介绍

    机 器 视 觉 介 绍 机器视觉介绍 机器视觉介绍 机器视觉检测系统任务 尺寸测量 条码识别 外观测量
  • 【图文教程】若依前后端分离版本-菜单怎么设置

    在使用若依前后端分离版本作为基础架构的时候 需要新建菜单怎么操作 本文凯哥将详细讲解怎么添加 1 登录若依系统后 系统管理 gt gt 菜单 先新建一个一级菜单 可以模仿 系统管理 菜单来创建 系统菜单 我们自己创建的 淘宝客 菜单如下 这
  • 存够20万才敢结婚!算算你的工资够了吗?

    前程无忧2015年白领婚恋成本调查 报告 乔治 克鲁尼结婚了 本尼迪克特 康伯巴奇结婚了 福山雅治结婚了 堀北真希结婚了 恐婚的最后还是踏入了婚姻殿堂 永远的偶像派也闪婚了 真是应验了 凡是有钱的单身汉总想娶位太太 这已经成了一条举世公认的
  • 微信公众号授权(java后端)

    一 授权开发的流程 详情的东西请以官网为准 在此就不多说了 具体而言 网页授权流程分为四步 1 引导用户进入授权页面同意授权 获取code 2 通过code换取网页授权access token 与基础支持中的access token不同 3
  • Django组件介绍

    文章目录 Django组件介绍 1 分页器的使用 1 1 数据库内插入大量数据 1 2 导入模块 1 3 实例化一个分页器 1 4 分页器对象相关的方法 1 5 一个简单的分页示例 2 forms组件 2 1 检验字段功能 2 11 导入f
  • python中[:,2]是什么意思

    这是numpy的切片操作 一般结构如num a b c d 分析时以逗号为分隔符 逗号之前为要取的num行的下标范围 a到b 1 逗号之后为要取的num列的下标范围 c到d 1 如果是这种num b c d a的值未指定 那么a为最小值0
  • 农业土壤墒情监测系统解决方案

    一 方案概述 土壤墒情监测系统能够实现对土壤墒情 土壤湿度 的长时间连续监测 用户可以根据监测需要 灵活布置土壤水分传感器 也可将传感器布置在不同的深度 测量剖面土壤水分情况 系统还提供了额外的扩展能力 可根据监测需求增加对应传感器 监测土
  • Java如何将date日期格式转换为时间戳

    可以使用Java中的java util Date类的getTime 方法将日期转换为时间戳 例如 import java util Date public class Main public static void main String
  • Advanced Installer汉化版教程(打包程序,安装包制作)

    Advanced Installer汉化版教程 转载 打包程序 安装包制作 下载地址 http www crsky com soft 6776 html 1 新建一个安装工程 2 详细的设置工程文件 A 设置产品信息以及在控制面板里的一些信
  • C++扫雷制作(新手上路)

    文章目录 前言 制作软件 代码结构 结构体 刷新屏幕 创建雷区 游戏过程 按钮的制作 总结 前言 在熟读C primer plus 之后 为了进一步熟悉C 编程 制作了一个简易版扫雷 有何不足 有何见地 请大家评论留言 以下是游戏图片 制作
  • vue+elementUI的el-form的回车键登录,监听键盘来触发事件

    vue elementUI的el form的回车键登录 监听键盘来触发事件 1 当只有一个el input的时候 可以用elementUI的自带的回车键触发提交事件 但是有时候会同时触发刷新页面 这样可以在el form上添加 submit
  • [转]Linux存储入门:简易数据恢复方案--分区和LVM实战

    数据恢复有没有简易方案 IT工程师一般都知道如何操作和使用文件和目录 但是 对于系统如何构建出 抽象出文件和目录 一般就不熟悉了 至于更下层的概念 可能大家知道最多的就是驱动了 所以 为了规避这点 可行的简易方案之一 就是以黑箱方式使用te
  • 51. N-Queens

    The n queens puzzle is the problem of placing n queens on an n n chessboard such that no two queens attack each other Gi
  • 数据分析与可视化-R语言分析 (选择练习)

    1 多选题 可以运行R语言的操作系统包括 选项 A Linux B Windows C Mac OS D Android 答案 Linux Windows Mac OS 2 单选题 可以命令将R语言升级到最新版本 选项 A fleshR B
  • vue 的事件修饰符(v-on, v-model)

    先谈谈我对vue 的一些指令的理解吧 v bind 顾名思义是绑定的意思 但是只能绑定属性 语法糖 而 v on 是绑定一个事件 语法糖 v model 是双向数据的绑定 只能用于表单中 而值得一说的v model 相当于是 v bind
  • linux系统数据盘挂载

    前言 挂载前 最好是新的服务器 不要安装宝塔 我之前先安装宝塔 再挂载就有点费劲 需要考虑原来文件是否受损 当前教程属于新服务器下 先挂载数据盘 挂载步骤 查看磁盘信息 gt gt 将数据盘分区 gt gt 格式化数据盘 gt gt 创建一
  • Python怎么输出换行

    python怎样输出换行 Python怎么输出换行 0 摘要 由于特殊的输出要求 我们在使用print 函数时 不希望输出结束后自动换行 1 print 指定结束符 Print hello end Print world result he
  • Linux------网络基础1

    文章目录 计算机网络的发展历程 网络协议 计算机网络分层体系结构 局域网通信的原理 IP地址和 MAC地址的区别 TCP IP体系结构 计算机网络的发展历程 简单的了解一下就行 图就不提供了 1 最开始 计算机之间是相互独立的 不能沟通交流