Linux 计算机网络基础概论

一、网络基本概念

1、网络

网络是由若干节点和连接这些结点的链路组成,网络中的结点可以是计算机、交换机、路由器等设备。通俗地说就是把不同的主机连接起来就构成了一个网络,构成网路的目的是为了信息交互、资源共享。

网络设备有:交换机、路由器、集线器
传输介质有:双绞线、同轴电缆、光纤

简单的网络示意图:

在这里插入图片描述

2.互联网

把多个网络连接起来就构成了互联网。目前最大的互联网就是我们常说的因特网。

简单的互联网示意图:

在这里插入图片描述

3.IP地址(用来唯一标识一台主机

IP地址就是给因特网上的每一个主机(或路由器)的每一个接口分配一个在全世界范围内唯一的标识符。IP地址因其特殊的结构是我们可以在因特网上很方便地进行寻址。

(1)IP地址的两种类别格式

IP地址有分IPV4和IPV6两种类别格式,IPV4是类似“A.B.C.D”的格式,它是32位的,用“.”分成4段,每个段是8个位(值位0~255),用10进制表示。IPV6是128位,格式类似“XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX”,用“:”分成8个段,每个段16个位,用4个16进制数表示。

IPV4地址示例:“192.168.31.1”
IPV6地址示例:“2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b”

接下来描述的IP地址默认都指的是IPV4的地址。为了便于寻址,了解目标主机的位置,每个IP地址由网络号和主机号两部分组成。同一个物理网络上的所有主机都是用同一个网络号,只是主机号不同。

(3)IP地址组成

在这里插入图片描述

(4)IP地址分类

在这里插入图片描述

由于每类地址的开头是固定的,因此每类地址都有自己的范围:

A类IP地址范围:0.0.0.0~127.255.255.255
B类IP地址范围:128.0.0.0~191.255.255.255
C类IP地址范围:192.0.0.0~223.255.255.255

D类和E类一般不使用。

(5)IP地址的特点

寻址特别方便,可以方便地知道是哪个网络中的哪个主机。

使用命令“ifconfig”可以在Linux查看自己的IP地址,如下图:

在这里插入图片描述

主机环回地址是用来测试的,每台主机都有这个地址,在测试程序的时候就会用这个地址,127代表本主机,所以发给127的数据是不会离开本主机的,它会从网络的发送缓冲区直接导到接收缓冲区,这个数据不会离开网络。如果要测试这一段网络,要通过网络上两台不同的主机之间通讯就必须使用局域网的IP地址。在网络中如果两台主机要通讯,那么这两台主机要通过网络设备以及传输介质是首先在物理层面要是连通的。看两台主机之间的物理地址是否连通,需要用到ping命令。

主机环回是指地址为 127.0.0.1 的任何数据包都不应该离开计算机(主机),发送它的时候不是被发送到本地网络或互联网,它只是被自己“环回”,并且发送数据包的计算机成为接收者。这种形式的地址不得出现在主机之外。因此,拾取定向到 127.0.0.1 的流量的路由器应该立即丢弃数据包。这可确保没有专门用于主机上的流量进入 Internet。

4.MAC地址

在局域网中,硬件地址又称为物理地址或者MAC地址,长度48位,是固化在计算机适配器的ROM中的地址。因此假定连接在局域网上的一台计算机的适配器坏了而我们更换了一个新的适配器,那么这台计算机的局域网的地址也就改变了,虽然这台计算机的地理位置没有发生变化。其次当我们把笔记本电脑从一个城市带到另一个城市时,虽然物理位置改变了,但是电脑在局域网中的“地址”不会改变。由此可见,局域网上某个主机的“地址”根本不能告诉我们这台主机位于什么地方。在网络上方便地寻找某个主机,还得靠IP地址来实现。

在这里插入图片描述

5.端口

端口是表示主机上一个应用程序的代号,就是用来表示一个主机上的进程。因为IP虽然可以唯一标识一个主机,但是两个主机之间通讯往往是两个主机上的进程,所以就需要端口。

常见的端口:
HTTP协议用的80号端口
SSH远程登录协议用的22号端口

查看端口号的命令netstat -natp

在这里插入图片描述

6.套接字

可以通过套接字进行两台主机的数据的发送和接收。

套接字的地址由IP地址和端口号组成,由套接字的地址指定是哪台主机上的哪个进程。

最终通过套接字提供的是一个跨越主机的进程间通讯的能力。

7.网络协议

网络协议就是一组网络规则的集合,是我们共同遵守的约定或标准。

网络协议有多种,常见的协议:

HTTP:超文本传输协议

FTP: 文件传输协议

TELNET : 是internet 远程登陆服务的标准协议。

TCP : 传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议

UDP :用户数据报协议

IP : Internet Protocol 简称 IP,又译为网际协议或互联网协议

ICMP :因特网控制报文协议

ARP : 地址解析协议,是根据IP地址获取MAC地址的协议

RARP : 逆地址解析协议

二、网络分层模型

OSI的7层模型 和 tcp/ip协议族体系4层结构:

在这里插入图片描述

1.数据链路层

数据链路层的主要功能是:通过各种控制协议,将有差错的物理信道变为无差错的、能可靠传输数据帧的数据链路。

2.网络层

网络层实现数据包的选路和转发。广域网或者说互联网通常使用众多分级的路由器来连接分散的主机或者局域网,因此,通信的两台主机一般不是直接相连的,而是通过多个中间结点(路由器)连接的。网络层的任务就是选择这些中间结点,以确定两台主机之间的通信路径。 同时,网络层对上层协议隐藏了网络拓扑连接的细节,使得在传输层和网络应用程序
看来,通信的双方是直接相连的。

3.传输层

传输层为两台主机上的应用程序提供端到端的通信。 与网络层使用的逐跳通信的方式不同,传输层只关心通信的起始端和目的端,而不在乎数据包的中转过程。

4.应用层

应用层负责处理应用程序的逻辑。

三、网络应用程序通信流程

如下图,应用程序A要将数据”hello” 传给网络上另外一台主机上的应用程序 B, 数据“hello”从应用层发送给传输层后,传输层在数据前面加上 tcp 协议或 udp 协议的报头,将整条报文发给网络层,网络层添加自己的IP报头,再将整条数据发送给数据链路层。数据链路层将数据封装成能在网络中独立传输的数据单元,即数据帧。封装好的数据帧通过网络传输到另一台主机,然后再从下层依次拆包,将数据部分送往应用层。应用程序B就得到了数据”hello”。

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CSS中的display属性有哪些值?它们的作用?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ CSS display 属性的不同取值和作用1. block2. inline3. inline-block4. none5. flex6. grid7. table、table-row、table-cell8. list-item9. inline-table、table-caption、table-column 等 ⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#x…

云服务 Ubuntu 20.04 版本 使用 Nginx 部署静态网页

所需操作: 1.安装Nginx 2.修改配置文件 3.测试、重启 Nginx 4.内部修改防火墙 5.配置解析 6.测试是否部署成功 1.安装Nginx // 未使用 root 账号 apt-get update // 更新apt-get install nginx // 安装 nginx 1.1.测试是否安装没问题 在网页上输入云服务的公网…

头条移动端项目Day05 —— 延迟队列精准发布文章

❤ 作者主页:欢迎来到我的技术博客😎 ❀ 个人介绍:大家好,本人热衷于Java后端开发,欢迎来交流学习哦!( ̄▽ ̄)~* 🍊 如果文章对您有帮助,记得关注、点赞、收藏、…

安卓图形显示系统

Android图形显示系统 Android图形显示系统是Android比较重要的一个子系统,和很多其他子系统的关联紧密。 Android图形系统比较复杂,这里我们从整体上理一遍,细节留待后期再去深入。Android图形系统主要包括以下几个方面: - 渲染…

司徒理财:8.21黄金空头呈阶梯下移!今日操作策略

黄金走势分析 盘面裸k分析:1小时周期的行情局部于1896附近即下行通道上轨附近录得一系列的K线呈震荡下行并筑圆顶,上轨压制有效,下行通道并未突破,后市建议延续看下行。4小时周期局部录得一系列的纺锤线呈震荡,但行情整…

组合总和-LeetCode

给你一个无重复元素的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的所有不同组合 ,并以列表形式返回。你可以按 任意顺序返回这些组合。 candidates 中的同一个数字可以无限制重复被选取 。如果至少一个…

回归预测 | MATLAB实现SOM-BP自组织映射结合BP神经网络多输入单输出回归预测(多指标,多图)

回归预测 | MATLAB实现SOM-BP自组织映射结合BP神经网络多输入单输出回归预测(多指标,多图) 目录 回归预测 | MATLAB实现SOM-BP自组织映射结合BP神经网络多输入单输出回归预测(多指标,多图)效果一览基本介绍…

【python办公自动化】使用PysimpleGUI实现AHP指标的添加和删除及编号重新排序

使用PysimpleGUI实现AHP指标的添加和删除 1 运行界面2 添加指标3 删除指标4 编码重新排序5 全部代码1 运行界面 2 添加指标 输入框中输入内容,点击“添加指标”按钮 然后就会自动添加到上方列表中 3 删除指标 选中要删除的指标,点击“删除指标”按钮 此时就把第三个选…

Protocol Buffers [protobuf]

🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 &a…

牛股预测器V1.0实战(工银瑞信金融科技挑战赛排名第二)

全代码和数据关注公众号《三个篱笆三个班》免费提供!一键可跑,每日选股。 对AI炒股感兴趣的小伙伴可加WX群: 赛题概述: 基于人工智能的量化选股投资策略建模挑战 任务描述: 通过数学和计算机技术分析市场数据&…

Docker容器无法启动 Cannot find /usr/local/tomcat/bin/setclasspath.sh

报错信息如下 解决办法 权限不够 加上--privileged 获取最大权限 docker run --privileged --name lenglianerqi -p 9266:8080 -v /opt/docker/lenglianerqi/webapps:/usr/local/tomcat/webapps/ -v /opt/docker/lenglianerqi/webapps/userfile:/usr/local/tomcat/webapps/u…

视觉SLAM:一直在入门,如何能精通,CV领域的绝境长城,

目录 前言 福利:文末有chat-gpt纯分享,无魔法,无限制 1 什么是SLAM? 2 为什么用SLAM? 3 视觉SLAM怎么实现? 4 前端视觉里程计 5 后端优化 6 回环检测 7 地图构建 8 结语 前言 上周的组会上&…

【AGC】Publishing api怎么上传绿色认证审核材料

【问题描述】 华为应用市场会对绿色应用标上特有的绿色标识,代表其通过华为终端开放实验室DevEco云测平台的兼容性、稳定性、安全、功耗和性能的检测和认证,是应用高品质的象征。想要自己的应用认证为绿色应用就需要在发布应用时提供绿色认证审核材料&a…

uniapp条形码实现

条形码在实际应用场景是经常可见的。 这里教大家如何集成uniapp条形码。条形码依赖类库JsBarcode. 下载JsBarcode源码,对CanvasRenderer进行了改进兼容uniapp。 import merge from "../help/merge.js"; import {calculateEncodingAttributes, getTotal…

三分钟解决AE缓存预览渲染错误、暂停、卡顿问题

一、清除RAM缓存(内存) 你应该做的第一件事是清除你的RAM。这将清除当前存储在内存中的所有临时缓存文件。要执行此操作,请导航到编辑>清除>所有内存。这将从头开始重置RAM缓存 二、清空磁盘缓存 您也可以尝试清空磁盘缓存。执行此操作…

武汉凯迪正大—变比组别测试仪

一、概述 在电力变压器的半成品、成品生产过程中,新安装的变压器投入运行之前以及根据国家电力部的预防性试验规程中,要求变压器进行匝数比或电压比测试。传统的变比电桥操作繁琐,读数不直观,且要进行必要的换算,测试时…

案例-基于MVC和三层架构实现商品表的增删改查

文章目录 0. 项目介绍1. 环境准备2. 查看所有2.1 编写BrandMapper接口2.2 编写服务类,创建BrandService,用于调用该方法2.5 编写Servlet2.4 编写brand.jsp页面2.5 测试 3.添加3.1 编写BrandMapper接口 添加方法3.2 编写服务3.3 改写Brand.jsp页面&#x…

springboot数据库密码加密的配置方法_Java

前言 由于系统安全的考虑&#xff0c;配置文件中不能出现明文密码的问题&#xff0c;本文就给大家详细介绍下springboot配置数据库密码加密的方法&#xff0c;下面话不多说了&#xff0c;来一起看看详细的介绍吧 1.导入依赖 <!--数据库密码加密--> <dependency>&…

学习ts(五)类

定义 是面向对象程序设计&#xff08;OOP&#xff09;实现信息封装的基础 类是一种用户定义的引用数据类型&#xff0c;也称类类型 JavaScript的class,虽然本质是构造函数&#xff0c;但是使用起来已经方便了许多&#xff0c;js中没有加入修饰符和抽象类等特性 ts的class支持面…

爬虫逆向实战(十九)--某号站登录

一、数据接口分析 主页地址&#xff1a;某号站 1、抓包 通过抓包可以发现登录接口 2、判断是否有加密参数 请求参数是否加密&#xff1f; 通过查看“载荷”模块可以发现有一个jsondata_rsa的加密参数 请求头是否加密&#xff1f; 无响应是否加密&#xff1f; 无cookie是否…