我们应该解决哪些计算机网络中的问题,才能实现进程之间基于网络的通信呢?

 ps:本文章的图片内容来源都是来自于湖科大教书匠的视频,声明:仅供自己复习,里面加上了自己的理解

这里附上视频链接地址:1.6 计算机网络体系结构(1)—常见的计算机网络体系结构_哔哩哔哩_bilibili
1.6 计算机网络体系结构(2)—分层的必要性_哔哩哔哩_bilibili

目录

 🚀计算机网络体系结构

🚀计算机网络体系结构分层的必要性


 🚀计算机网络体系结构

OSI体系结构,有7大结构,从下往上依次是,物理层,数据链路层,网络层,运输层,会话层,表示层,应用层——>属于法律上的国际标准

TCP/IP体系结构,有4大结构,从下往上依次是,网络接口层,网际层,运输层,应用层

——>事实上的国际标准

TCP/IP体系结构相当于将OSI体系结构的物理层和数据链路层合并为了网络接口层,并去掉了会话层和表示层

另外,由于TCP/IP在网络层使用的是协议是IP协议,IP协议的中文意思是网际协议,因此TCP/IP的网络层常称为网际层

你有接入因特网的需求,就要求你的主机使用TCP/IP协议

即使你不需要接入因特网,也可以使用TCP/IP协议

操作系统和路由器中都带有符合TCP/IP体系结构标准的TCP/IP协议族(用TCP和IP这两个协议来表示整个协议大家族,就称为TCP/IP协议族),只不过路由器一般只包含网络接口层和网际层

TCP/IP体系结构的网络层没有规定什么具体内容,因为这样可以互连全世界各种不同的网络接口,有线的以太网接口,无线的wifi接口等,因此,本质上TCP/IP体系结构只有上面的三层

IP协议是TCP/IP体系结构网际层的核心协议

TCP和UDP是TCP/IP体系结构运输层的两个重要协议

TCP/IP的应用层包含了大量的应用层协议,例如HTTP,SMTP,DNS,RTP

IP协议可以将不同的网络接口进行互连,并向其上的TCP协议和UDP协议提供网络互连服务,而TCP协议在享受IP协议提供的网络互连服务的基础上,可向应用层的相应协议提供可靠传输的服务,UDP协议在享受IP协议提供的网络互连服务的基础上,可向应用层的相应协议提供不可靠传输的服务

IP协议作为TCP/IP体系结构中的核心协议,一方面负责互连不同的网络接口,也就是IP over everything,另一方面为各种网络应用提供服务,也就是everything over IP

 原理体系结构,从下往上依次是物理层,数据链路层,网络层,运输层,应用层

🚀计算机网络体系结构分层的必要性

计算机网络是个非常负责的系统,早在最初的ARPANET设计时就提出了分层的设计理念

分层,可以将复杂的问题,转换为较小的局部问题

✨传输媒体并不属于物理层,它并不包含在体系结构之中

✨计算机网络中传输的信号,并不是方波信号,用方波信号是为了容易理解

✨如何表示网络中的各主机(主机编址问题,例如MAC地址)

✨目的主机如何从信号所表示的一连串比特流中区分出地址和数据,也就是需要解决分组的封装格式问题

✨如何协调各主机争用总线

对于上述问题,其实只要解决了物理层和数据链路层各自所面临的问题,就可以实现分组在一个网路上传输

✨ 如何标识各网络以及网络中的各主机(网络和主机共同编址的问题,例如IP地址)

如图,该网络上的笔记本电脑,服务器,以及路由器接口的IP地址前三个数都是192.168.1,因为它们都在网络N1上,而第四个十进制数分别为1,2,254,各不相同,用来表示它们自己

✨路由器如何转发分组,如何进行路由选择

以上问题我们划分到网络层

至此,如果我们解决了物理层,数据链路层以及网络层各自的问题,则可以实现分组在网络间传输的问题

但是这还不足够!!

✨如何解决进程之间基于网络的通信问题

✨出现传输错误时,如何处理

以上问题都划归为运输层

我们必须要解决物理层,数据链路层,网络层,以及运输层各自的问题则可以实现进程之间基于网络的通信

在此基础上,只需指定各种应用层协议,通过应用进程间的交互来完成特定的网络应用,例如,支持万维网应用的HTTP协议,支持电子邮件的SMTP协议,支持文件传送的FTP协议

✨通过应用进程间的交互来完成特定的网络应用,我们将这个问题划归到应用层


希望对你有帮助!

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

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

相关文章

YOLOv5中Ghostbottleneck结构shortcut=True和shortcut=False有什么区别

GhostBotleneck结构中的shodcutTrue和shorcutFalse的区别在干是否使用残差连接。当shorcuTrue时,使用残差连接,可以以加速模型的收敛速度和提高模型的准确率,当shorcuFalse时,不使用残差连接,可以减少模型的参数数量和…

what is `ContentCachingRequestWrapper` does?

ContentCachingRequestWrapper 是 Spring Framework 中提供的一种包装类,它扩展了 HttpServletRequestWrapper 类,用于缓存请求体的内容。 通常在处理 HTTP 请求时,原生的 HttpServletRequest 对象中的输入流 (getInputStream()) 只能被读取一…

Java玩转《啊哈算法》排序之桶排序

过去心不可得,现在心不可得,未来心不可得 目录在这里 楔子代码地址桶排序代码核心部分优缺点 完整代码演示 升级版核心代码完整代码演示 楔子 大家好!本人最近看了下《啊哈算法》,写的确实不错,生动形象又有趣&#x…

【多线程】多线程安全,为什么不安全,要怎么做保证其安全,实例

多线程安全是指在多线程环境下,对共享的数据进行操作时,保证这些操作能够正确、稳定地执行,不会导致数据不一致、异常等问题。多线程不安全通常是因为多个线程同时访问、修改了共享的数据,导致一些不可预料的结果。 一、多线程安…

训练自己的ai模型(一)学习笔记与项目实操

ai模型大火,作为普通人,我也想做个自己的ai模型 训练自己的ai模型通常需要接下来的的六步 一、 收集和准备数据集:需要收集和准备一个数据集,其中包含想要训练模型的数据。这可能需要一些数据清理和预处理,以确保数据…

Optional的使用(代替if判断是否为空)

Optional 前言 我的使用 package yimeng;import com.ruoyi.RuoYiApplication; import com.ruoyi.common.core.domain.entity.SysUser; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; import java.util.*;SpringBootTes…

C语言-算法-拓扑排序

【模板】拓扑排序 / 家谱树 题目描述 有个人的家族很大,辈分关系很混乱,请你帮整理一下这种关系。给出每个人的后代的信息。输出一个序列,使得每个人的后辈都比那个人后列出。 输入格式 第 1 1 1 行一个整数 N N N( 1 ≤ N …

OpenCV第 2 课 OpenCV 环境搭建

文章目录 第 2 课 OpenCV 环境搭建1.安装 Numpy2.从 Ubuntu 存储库安装 OpenCV3.验证 OpenCV 安装 第 2 课 OpenCV 环境搭建 1.安装 Numpy 每一张图像都有很多个像素点,这也导致了程序中会涉及大量的数组处理。Numpy 是一个 Python 的拓展库,它对多维数…

仿真机器人-深度学习CV和激光雷达感知(项目2)day7【ROS关键组件】

文章目录 前言Launch 文件了解 XML 文件Launch 文件作用Launch 文件常用标签实例--作业1的 Launch 文件TF Tree介绍发布坐标变换--海龟例程获取坐标变换--海龟自动跟随例程rqt_工作箱前言 💫你好,我是辰chen,本文旨在准备考研复试或就业 💫本文内容是我为复试准备的第二个…

LeetCode 每日一题 Day 51 - 53

670. 最大交换 给定一个非负整数,你至多可以交换一次数字中的任意两位。返回你能得到的最大值。 示例 1 : 输入: 2736 输出: 7236 解释: 交换数字2和数字7。 示例 2 : 输入: 9973 输出: 9973 解释: 不需要交换。 注意: 给定数字的范围是 [0, 108] 模拟&#xff1a…

mysql临时表简述

概述 业务中经常会对一些表进行聚合组装信息,然后筛选,有些表比较数据量大的时候,会对拖慢查询; 常用的mybatis的分页查询,在查询时会先count一下所有数据,然后再limit分页,即使分页也会有深度…

数据分析-Pandas如何用图把数据展示出来

数据分析-Pandas如何用图把数据展示出来 俗话说,一图胜千语,对人类而言一串数据很难立即洞察出什么,但如果展示图就能一眼看出来门道。数据整理后,如何画图,画出好的图在数据分析中成为关键的一环。 数据表&#xff…

「JavaSE」抽象类接口2

🎇个人主页:Ice_Sugar_7 🎇所属专栏:快来卷Java啦 🎇欢迎点赞收藏加关注哦! 抽象类&接口2 🍉接口间的继承🍉接口的应用🍉总结 🍉接口间的继承 和类的继承…

【每日一题】最长交替子数组

文章目录 Tag题目来源解题思路方法一:双层循环方法二:单层循环 写在最后 Tag 【双层循环】【单层循环】【数组】【2024-01-23】 题目来源 2765. 最长交替子数组 解题思路 两个方法,一个是双层循环,一个是单层循环。 方法一&am…

Structured Streaming基础--学习笔记

Structured streaming介绍 spark进行实时数据流计算时有两个工具: Spark Streaming:编写rdd代码处理数据流,可以解决非结构化的流式数据Structured Streaming:编写df代码处理数据流,可以解决结构化和半结构化的流式数据1,数据相关介绍 有界数据和无界数据 ①有界数据: …

yarn集群HDFS datanode无法启动问题排查

一、问题场景 hdfs无法访问,通过jps命令查看进程,发现namenode启动成功,但是所有datanode都没有启动,重启集群(start-dfs.sh)后仍然一样 二、原因分析 先看下启动的日志有无报错。打开Hadoop的日志目录 …

线程池中线程数量与队列大小参数的如何设置实践-基于QPS的计算公式

目录 概要 传统方式? 线程池理解? 基于QPS的设置思路? 总结? 概要 线程池是个既靠谱但又陌生的家伙, 像管家一样, 会踏踏实实的把你交代的任务完成, 但很死板, 没有自动安排人的能力, 需要你给它配好人手(线程实例)和承载容量(队列大小), 这些参数关系影响业务服务整体…

rabbitmq基础-java-5、Topic交换机

1、简介 Topic类型的Exchange与Direct相比,都是可以根据RoutingKey把消息路由到不同的队列。 只不过Topic类型Exchange可以让队列在绑定BindingKey 的时候使用通配符! BindingKey 一般都是有一个或多个单词组成,多个单词之间以.分割&#x…

常用电机的分类简介

常用电机的分类简介 文章目录 常用电机的分类简介前言有刷直流电机步进电机BLDC/PMSM重点讲讲前言 电机可以将电能转换成机械能,在现代社会中广泛地应用在各种设备和系统中,家用电器,工业生产设备,交通工具,几乎随处可见。 电机通常由两个主要部分组成:定子和转子; 定…

数据库选型其实技术维度不太重要

看到这个标题可能觉得我在乱说,数据库选型要从多个角度和维度看来,还有各种POC。很多供应商朋友告诉我POC是一个漫长的过程,非常痛苦,要解决各种技术问题。怎么能说和技术无关呢? 因为从我的经历和周围听说的经验来说…