计算机网络-基本概念

news2024/9/22 11:32:59

目录

计算机网络-基本概念

互联网

Java的跨平台原理

​编辑 C\C++的跨平台原理

解释性语言的跨平台原理(python,js等)

客户端 vs 服务器

什么是协议?

网络互连模型

请求过程

计算机之间的通信基础

计算机之间的连接方式-网线直连(需要用交叉线,而不是直通线)

 计算机之间的连接方式-同轴电缆(Coaxial)

 计算机之间的连接方式-集线器(Hub)

计算机之间的连接方式-网桥

计算机之间的连接方式-交换机

计算机之间的连接方式-路由器


计算机网络-基本概念

互联网

Java的跨平台原理

 C\C++的跨平台原理

 

解释性语言的跨平台原理(python,js等)

 

客户端 vs 服务器

阶段1:

阶段2:

 整体图:

请求url地址解析:

什么是协议?

网络互连模型

(1) 如果多个生产商生产出多个服务器系统,对于多个服务器系统不同的生产商规定不同的协议标准,那么客户端和服务器进行数据交互的成本就会大幅度增加,因此国际标准化组织站了出来。

(2)

ISO组织规定了理论上的一套协议:OSI(分为七层)

实战中总结出的一套协议为:TCP/IP(分为四层)

 高校学习研究的一套协议:分为五层

请求过程

过程:

(1)客户端请求服务器数据这一过程需要通过国际标准所规定的协议,学习研究时视其为五层。

(2) 客户端的请求会经过这五层不断的进行包装,包装之后传递到服务器。

(3) 服务器对于这一包装后的数据再一层层的进行解包,最终得到客户端最原始的请求。

(4)这一原始请求会通过应用层给到服务器软件(Tomcat),然后进行解析。

(5)当服务器进行响应数据给客户端时,同样遵循(1)-(4)的步骤。先一层层封装,传递给客户端,再一层层解包,客户端应用层最后得到的数据为服务器最原始的响应数据。

计算机之间的通信基础

两个计算机传输数据的交互过程:

(1) 两个计算机进行传输数据需要:源ip地址,目标ip地址,源MAC地址,目标MAC地址。

(2) 源计算机得知目标ip地址才可以通过ICMP协议进行传输数据给对方的(比如:互相ping)。

但是在传输数据之前需要通过ARP协议进行广播获取到目标计算机的MAC地址,通过MAC地址才可以找到目标计算机对应的端口,最终找到目标计算机对应的网卡进行传输数据。

注释:一个计算机可以有多个网卡,所以MAC地址不是唯一的,一个MAC地址对应一个网卡

补充:通过ARP协议获取到的MAC地址是有缓存的。当进行一次新的传输数据过程时,可能就无需进行ARP广播啦!

计算机之间的连接方式-网线直连(需要用交叉线,而不是直通线)

 计算机之间的连接方式-同轴电缆(Coaxial)

分析:

(1) 半双工通信:计算机1传输数据给计算机2时,计算机2不可以传输给计算机1

(2) 容易冲突,不安全:同轴电缆是随机发送数据传输给任意计算机的

 计算机之间的连接方式-集线器(Hub)

 分析:

集线器相对于同轴电缆的好处:

一个计算机连接集线器的线断了,不会影响其它计算机的正常运行

集线器的问题:

当集线器上连接的计算机达到1000台时,任意一个计算机给另外一个计算机发送数据时,集线器会广播传输数据,会发送给1000台设备。这样会很长时间占用带宽(通过ICMP协议传输数据占用的时间+通过ARP协议获取MAC地址占用的时间)。后面引入网桥解决这个问题!

计算机之间的连接方式-网桥

(1)网桥通过自学习得知每一个计算机接口的MAC地址,可以分清左右两边分别有哪些计算机

(2)网桥左边的计算机传输数据就不会达到网桥右边,网桥右边的计算机传输数据也不会传输到网桥左边,这样形成隔绝冲突域。

网桥存在的问题:

即使网桥使其左右两边形成隔绝冲突域,但是左右两边的集线器也会随机传输数据给链接的计算机,当计算机数量巨大时 同样会形成较大的资源消耗。所以后面引入了智能的交换机!

计算机之间的连接方式-交换机

注释:

(1) 相当于接口更多的网桥:更加智能,记住每一个计算机的MAC地址,指定计算机ip地址进行传输数据时,不会随机传输给所有的计算机!

(2) 全双工通信 : 可以同时传输数据。eg:计算机1传输数据给计算机2时,计算机3也可以同时传输数据给计算机4,计算机2也可以同时传输数据给计算机1。

(3) 思考:全球所有的设备都使用交换机连接会是什么情况?

交换机仍然存在问题:

在不同计算机之间进行传输数据之前,会先进行ARP协议广播传输给所有计算机进行获取MAC地址,交换机需要学习这些MAC地址是和哪些计算机对应着的!

全球所有的设备都使用交换机的话,全球的计算机传输之前都需要先进行ARP广播,这个工作量也是十分大的!这即是广播风暴。

所以引入了路由器。

计算机之间的连接方式-路由器

 网络直线,同轴电缆,集线器,网桥,交换机:

(1)连接的设备对应的ip地址必须在同一网段。eg:192.168.3.10和192.168.3.11处于同一网段,

192.168.3.10和192.168.2.11处于不同网段,

(2)连接的设备处于同一广播域。意思即是ARP广播协议进行获取MAC地址时,对于同一广播域的计算机都会接收到该传播。

我们知道,不同网段的计算机是不可以跨网段进行传输数据的,但是如果全世界处于同一网段的话,势必会出现ARP广播风暴等问题,所以我们引入了路由器。

我们在路由器的两边接上两个网关,左边的网关的ip地址是与左边的计算机处于同一网段的,右边的网关同理即可。

提出问题:计算机1是如何传输数据给计算机4的,分析一下这个过程?

 (1) 计算机1在传输数据之前需要先进行获取左边网关的MAC地址:会先通过ARP广播获取到左边网关的MAC地址。补充:【计算机1的ARP同样会发送给计算机2,因为ARP是广播发送,同一交换机连接的所有计算机处于同一广播域,但是在对比目标ip地址后 就会被丢弃该数据包。】

(2)获取网关的MAC后,计算机1开始真正的传输数据给左边的网关,交换机通过目标ip地址,目标MAC地址智能识别后,传输数据给左网关

(3) 左网关会通过路由器传输数据给右网关

(4)右网关是和计算机4处于同一网段的,所以可以进行传输数据。同理,右网关会先获取计算机4的MAC地址,然后进行传输数据(具体过程参考前三条)。

 

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

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

相关文章

GIS数据经纬度投影坐标转换总结(涵盖几乎全行业的坐标转换方法)

在处理GIS数据的过程中,避免不了要与坐标和坐标系打交道。这篇文章对能够进行地理坐标转换的所有软件框架做一个一次性总结。 软件类: 1.arcgis arcgis能够进行很全面的很方便的坐标处理,无论是经纬度坐标转投影坐标还是投影坐标转经纬度坐标都非常的简单。arcgis能够对导…

Qt编写视频监控系统70-0SD标签和图形信息(支持写入到文件)

一、前言 作为一个完整的视频监控系统,用户还需要自定义一些OSD标签信息显示在对应通道上面,而且不止一个OSD标签信息,位置可以在四个角或者指定坐标显示。最开始本系统设计的时候,由于本人擅长的是painter绘制,所以直…

MySQL视图特性

文章目录MySQL视图特性基本使用准备测试表创建视图修改视图影响基表修改基表影响视图删除视图视图规则和限制MySQL视图特性 视图的概念 视图是一个虚拟表,其内容由查询定义,同真实的表一样,视图包含一系列带有名称的列和行数据。视图中的数据…

opencv读取摄像头和视频数据

大家好,我是csdn的博主:lqj_本人 这是我的个人博客主页: lqj_本人的博客_CSDN博客-微信小程序,前端,python领域博主lqj_本人擅长微信小程序,前端,python,等方面的知识https://blog.csdn.net/lbcyllqj?spm1011.2415.3001.5343哔哩哔哩欢迎关注…

TensorRT和DLA(Deep Learning Accelerator)

TensorRT和DLA(Deep Learning Accelerator) 点击此处加入NVIDIA开发者计划 文章目录TensorRT和DLA(Deep Learning Accelerator)12.1. Running On DLA During TensorRT Inference注意:对于任何张量,索引维度的总体积加上请求的批量大小不得超过此函数返回…

Docker 面试知识点

Docker 是什么? 是实现容器技术的一种工具是一个开源的应用容器引擎使用 C/S 架构模式,通过远程API 来管理 (我们本机是 C,docker 引擎是 S,实际的构建过程是在 docker 引擎下完成的)可以打包一个应用及依赖包到一个轻量级、可移植的容器中 …

Hbase 数据迁移

Hbase 数据迁移 可选方案对比 l 已验证方案操作说明: n Export&import u 导出命令及示例 hbase org.apache.hadoop.hbase.mapreduce.Export “表名” 文件路径 导出至本地文件系统: ./bin/hbase org.apache.hadoop.hbase.mapreduce.Export ‘defa…

UnityBurst系统批量计算的插件入门

什麽是Burst系統做一些批量計算需要,比较难用,针无两头利如果不需要“密集”计算,就帧的不需要,到底什么是密集计算呢,for循环不密集么,while循环不密集么?安装Burst因为发现一个不错项目的插件…

Zookeeper实现分布式锁

文章目录ZK节点类型watch监听机制Zookeeper实现分布式锁锁原理创建锁的过程释放锁的过程ZK锁的种类代码实现Zookeeper是一个开源的分布式协调服务,是一个典型的分布式数据一致性解决方案。 分布式应用程序可以基于Zookeeper实现诸如数据发布/订阅,负载均…

【C/C++基础练习题】简单指针与数组使用练习题

🍉内容专栏:【C/C要打好基础啊】 🍉本文内容:简单指针与数组练习题(复习之前写过的实验报告) 🍉本文作者:Melon西西 🍉发布时间 :2023.2.12 目录 1.vector​编…

async thunk 解决 API 调用的依赖问题

async thunk 解决 API 调用的依赖问题 一句话节省看下面一堆内容的时间就是: async thunk 中可以使用 async/await 锁住其他的 action 操作 一般 API 之间存在三种情况: A 和 B 之间没有依赖关系 这样的情况下,A 和 B 可以各调用各的&#x…

最近大热的 chatGPT 会取代你的工作吗?

ChatGPT 由于其高效的自然语言处理能力,它最容易取代的领域可能是: 文本分类:ChatGPT 可以用作文本分类系统,对文本进行分类 聊天机器人:ChatGPT 可以制作聊天机器人,提供人性化的交互体验 文本生成&…

策略游戏与实践反馈

早上看到time(李培楠)居然击败maru得了IEM的冠军,加上即时战略游戏的没落,星际2的研发停止,以及最近曾经被大家膜拜的暴雪闹出的各种事情,各种百感交集吧,从2000年上手星际争霸1开始&#xff0c…

【SPSS】数据预处理基础教程(附案例实战)

🤵‍♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞&#x1f4…

2.10、时间片轮转、优先级调度算法、多级反馈队列调度算法

Tips:各种调度算法的学习思路 算法思想 算法规则 这种调度算法是用于作业调度还是进程调度? 抢占式? 非抢占式? 优点和缺点 是否会导致饥饿\color{red}饥饿饥饿 某 进程/作业 长期得不到服务 1、时间片轮转(RR, Round-Robin) 1.1、例…

别具一格,原创唯美浪漫情人节表白专辑,(复制就可用)(html5,css3,svg)表白爱心代码(2)

别具一格,原创唯美浪漫情人节表白专辑,(复制就可用)(html5,css3,svg)表白爱心代码(2) 目录 ​​​​​​​款式二:心形实时显示认识多长时间桃花飞舞(爱心)款 1、拷贝完整源代码 2、拷贝完整js代码 3、…

漏洞修复 Zookeeper、MySQL、Elasticsearch

漏洞修复 一、HTTP漏洞修复 1.1 漏洞说明 1.2 漏洞修复 1.2.1 升级HTTPD到最新版本(2.4.53) 1.2.1.1 服务器有网的情况下执行以下操作: 安装CodeIT库 cd /etc/yum.repos.d wget https://repo.codeit.guru/codeit.el7.repo 更新httpd y…

解决需求变更难题的8大方案

需求变更8大原因为什么会出现需求变更,这是由于需求约束、规则有了新的变化、由于政策发生变化,客户、沟通方式、流程化、标准化的问题等导致。这里在在过去的项目经验中,提出了常见的8大需求变更的原因。政策发生变化:指由于国家…

牛客网Python篇数据分析习题(三)

1.现有一个Nowcoder.csv文件,它记录了牛客网的部分用户数据,包含如下字段(字段与字段之间以逗号间隔): Nowcoder_ID:用户ID Level:等级 Achievement_value:成就值 Num_of_exercise&a…

华为OD机试 - 去除多余空格(Python)| 真题+思路+代码

去除多余空格 题目 去除文本多余空格,但不去除配对单引号之间的多余空格。给出关键词的起始和结束下标,去除多余空格后刷新关键词的起始和结束下标。 条件约束: 不考虑关键词起始和结束位置为空格的场景;单词的的开始和结束下标保证涵盖一个完整的单词,即一个坐标对开…