首页 > 系统相关 >【Linux】网络基础_1

【Linux】网络基础_1

时间:2024-07-19 16:56:45浏览次数:17  
标签:协议 主机 Linux 基础 网络 TCP 传输 IP

文章目录


十、网络基础

1. 协议

“协议” 是一种约定。在网络环境下,主机距离过远时,必定会引发新的问题,比如数据可靠性,主机定位问题,数据传输等问题。为了解决这些问题, 让这些不同计算机之间能够相互顺畅的通信,就需要有人站出来, 约定一个共同的标准, 大家都来遵守, 这就是 网络协议

OSI七层模型和TCP/IP四层模型

在这里插入图片描述
在这里插入图片描述
OSI(Open System Interconnection,开放系统互连)七层网络模型称为开放式系统互联参考模型,是一个逻辑上的定义和规范,把网络从逻辑上分为七层,概念非常清楚。但是!,它既复杂又不实用; 所以我们按照 TCP/IP五层(或四层)模型 来讲解。
我们将OSI七层模型中的上三层合并成一个 应用层
在这里插入图片描述
TCP/IP是一组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇。TCP/IP通讯协议采用了5层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。

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

由于最底层的物理层我们考虑得比较少,所以将其忽略,于是TCP/IP协议就变成了四层模型。

由上图可发现,网络层次模型很像操作系统的层次模型。其实本质上都是一样的,传输层和网络层都是操作系统的部分,网络其实也是操作系统源代码的一部分。因此,从语言角度来看:协议 本质就是双方都能识别的结构体类型!

网络传输基本流程

数据从一台计算机到另一台计算机需要通过 以太网 (或其他)传输。
在这里插入图片描述

用户想要将数据发送到另一台主机上,数据无法直接传输,数据必须从本主机的应用层开始,自上而下 经过物理层(网卡),然后经过 以太网 传输到另一台电脑的物理层,在 自下而上 到达对面主机的应用层。移动过程跟大写的 U 一样。

报文与封装

报文是在网络中传输的数据单元,是数据在网络中的一种封装格式。用户打算发送的消息,在经过本主机每一层的时候,每层协议都会给从上一层发下来的数据中加上一节 协议报头 。这个过程叫做 封装 。最后将层层封装后的数据报文通过网络传输到接收方主机上时,上述过程将逆向进行。报文会被每层协议 逐层解封
在这里插入图片描述


未完待续

标签:协议,主机,Linux,基础,网络,TCP,传输,IP
From: https://blog.csdn.net/m0_69828905/article/details/140549845

相关文章

  • Python网络爬虫从入门到实战
    什么是爬虫?所谓爬虫,其本质是一种计算机程序,它的行为看起来就像是蜘蛛在网上面爬行一样,顺着互联网这个“网”,一条线一条线地“爬行”。所以爬虫在英文中又叫作“Spider”,正是蜘蛛这个单词。爬虫能做什么?电商分析抓取天猫、京东、淘宝等电商网的评论及销量数据,对各种商......
  • JAVA基础知识
    注释单行注释//多行注释/**/文档注释(JavaDoc)/**标识符和关键字关键字标识符以字母、$、_开始区分大小写可以中文或拼音(不建议)数据类型强类型语言与弱类型语言Java:强类型变量需要先定义再使用(安全性高速度慢)基本数据类型与引用数据类型基......
  • Linux环境离线安装docker&docker-compose(包含一键安装脚本和一键安装包)
    一、docker离线安装1、下载docker离线安装包下载最新版本的docker(或者选择自己想要安装的版本)到本地。1)docker下载地址:Docker版本获取备注:此地址自2024年7月无法访问下载docker版本,小编已经将可以使用的docker、docker-compose版本整理在百度网盘中如有需要可以自行获取......
  • ArchLinux Vmware安装指北
    ArchLinuxVmware安装指北在本文开始之前,首先允许我提前声明一点,ArchLinux的安装并不算难,但是绝对也算不上简单,中间的安装可能会遇到很多问题,本篇文章不能保证完全贴合你的真实机器环境,但是我会在我安装过程中遇到的一点点小问题都说出来,给大家避个坑,这里我安装Arch的时候参考的......
  • Ubuntu 22.04.4 LTS (linux) Tomcat 下载 安装配置详细教程
    1官网下载下载链接2ubuntu服务器安装#下载wgethttps://dlcdn.apache.org/tomcat/tomcat-9/v9.0.91/bin/apache-tomcat-9.0.91.tar.gz#解压tarzxvfapache-tomcat-9.0.91.tar.gzsudomvapache-tomcat-9.0.91//data/tomcat#配置环境变量sudovi/etc/profile......
  • MySQL 学习笔记 基础(数据模型,DDL,DML)
    数据模型 SQLSQL通用语法SQL语句可以单行或多行书写,以分号结尾。SQL语句可以使用空格/缩进来增强语句的可读性。MySQL数据库的SQL语句不区分大小写,关键字建议使用大写。注释:·单行注释:--注释内容或#注释内容(MYSQL特有)·多行注释:/*注释......
  • LLM 大模型学习必知必会:大模型基础知识篇
    魔搭ModelScope开源的LLM模型魔搭ModelScope欢迎各个开源的LLM模型在社区上做开源分享。目前社区上已经承载了来自各个机构贡献的不同系列的LLM模型。并且社区的开发者也在这些模型的基础上,贡献了许多创新应用,并在ModelScope的创空间上进行分享。本专题初步梳......
  • 虚幻引擎 游戏开发基础
    1.Actor和Component在UnrealEngine中,Actor和Component是构建游戏世界的两个基本概念,它们之间有一些重要区别:Actor(角色):Actor是游戏世界中的实体,它可以被放置在场景中,并且可以是可见的或不可见的。每个Actor都有一个Transform(位置、旋转和缩放信息),它定义了Actor......
  • 一文全懂:Linux磁盘分区
    一、物理设备的命名规则在Linux系统中一切都是文件,硬件设备也不例外。所有的硬件设备文件都在/dev文件夹中。硬件在Linux内的文件名SCSI/SATA/USB/dev/sd[a-p]VirtI/O界面/dev/vd[a-p]软盘/dev/fd[0-1]打印机/dev/lp[0-2](25針印表機)/dev/usb/lp[0-1......
  • Linux常用命令
    Linux常用命令文件操作命令ls命令ls-l//列出文件和目录的详细信息ls-R//列出所有文件ls-a//列出隐藏文件mv命令mvexample.txt/lem///移动目录下mvoldnamenewname//重命名rm命令rmexample.txt//移除文件cp命令cpexample.txtexample_c......