互联网架构与通信机制:从边缘到核心的深度解析

news2024/11/25 6:58:50


✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭
~✨✨

🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。

我是Srlua小谢,在这里我会分享我的知识和经验。🎥

希望在这里,我们能一起探索IT世界的奥妙,提升我们的技能。🔮

记得先点赞👍后阅读哦~ 👏👏

📘📚 所属专栏:计算机网络

欢迎访问我的主页:Srlua小谢 获取更多信息和资源。✨✨🌙🌙

目录

互联网的组成

互联网的边缘部分

(1)边缘部分:

(2)核心部分:

端系统之间通信的含义

端系统之间的两种通信方式

客户/服务器方式(C/S 方式)

对等方式(P2P 方式)

1.客户/服务器方式

2.对等连接方式

互联网的核心部分

1.电路交换的主要特点

使用交换机

“交换”的含义

电路交换特点

电路交换举例

电路交换缺点

2.分组交换的主要特点

添加首部构成分组

分组交换的传输单元

分组首部的重要性

收到分组后剥去首部

最后还原成原来的报文 

互联网的核心部分

分组交换网的示意图

 注意分组的存储转发过程

路由器

主机和路由器的作用不同

分组交换的优点

高效:

灵活:

迅速:

可靠:

分组交换带来的问题

三种交换的比较


互联网的组成

互联网的边缘部分

从互联网的工作方式上看,可以划分为两大块:

(1)边缘部分:

自由所有连接在互联网上的主机组成。这部分是用户直接使用的,用来进行通信(传送数据、音频或视频)和资源共享。

(2)核心部分:

由大量网络和连接这些网络的路由器组成。这部分是为边缘部分提供服务的(提供连通性和交换)。

处在互联网边缘的部分就是连接在互联网上的所有的主机。这些主机又称为端系统(endsystem).

端系统在功能上可能有很大的差别

  • 小的端系统可以是一台普通个人电脑,具有上网功能的智能手机,甚至是一个很小的网络摄像头。
  • 大的端系统则可以是一台非常昂贵的大型计算机。
  • 端系统的拥有者可以是个人,也可以是单位(如学校、企业、政府机关等),当然也可以是某个ISP。

端系统之间通信的含义

“主机 A 和主机 B 进行通信”实际上是指:“运行在主机 A 上的某个程序和运行在主机 B 上的另一个程序进行通信。

”即“主机 A 的某个进程和主机 B 上的另个进程进行通信”简称为“计算机之间通信”


端系统之间的两种通信方式

端系统之间的通信方式通常可划分为两大类:

客户/服务器方式(C/S 方式)

即 Client/Server方式,简称为 CS 方式。


对等方式(P2P 方式)

即 Peer-to-Peer方式,简称为P2P方式。

1.客户/服务器方式

客户(client)服务器都是指通信(server)中所涉及的两个应用进程

客户囗服务器方式所描述的是进程之间服务和被服务的关系。

客户是服务的请求方,服务器是服务的提供方

服务请求方和服务提供方都要使用网络核心部分所提供的服务。


2.对等连接方式

对等连接(peer-to-peer,简写为P2P)是指两个主机在通信时并不区分哪一个是服务请求方还是服务提供方。

只要两个主机都运行了对等连接软件(P2P软件),它们就可以进行平等的、对等连接通信

双方都可以下载对方已经存储在硬盘中的共享文档。


互联网的核心部分

网络核心部分是互联网中最复杂的部分。

网络中的核心部分要向网络边缘中的大量主机提供连通性,使边缘部分中的任何一个主机都能够向其他主机通信(即传送或接收各种形式的数据)。

在网络核心部分起特殊作用的是路由器(router)。

路由器是实现分组交换(packet switching)的关键构件,其任务是转发收到的分组,这是网络核心部分最重要的功能。

为了理解分组交换,首先了解电路交换的基本概念。

1.电路交换的主要特点

2 部电话机只需要用 1对电线直接连接就能够互相通话。

5 部电话机两两直接相连,需 10 对电线

N 部电话机两两直接相连,需 N(N-1)/2 对电线。这种直接连接方法所需要的电线对的数量与电话机数量的平方( N )成正比。

使用交换机

当电话机的数量增多时,就要使用交换机来完成全网的交换任务。

每一部电话都直接连接到交换机上,而交换机使用交换的方法,让电话用户彼此之间可以很方便地通信所采用的交换方式就是电路交换(circuit switching)。

“交换”的含义

在这里,“交换”(switching)的含义就是转接——把一条电话线转接到另一条电话线,使它们连通起来。

从通信资源的分配角度来看,“交换”就是按照某种方式动态地分配传输线路的资源。

电路交换特点

电路交换必定是面向连接的。

电路交换分为三个阶段:

  • 建立连接:建立一条专用的物理通路,以保证双方通话时所需的通信资源在通信时不会被其他用户占用;
  • 通信:主叫和被叫双方就能互相通电话:
  • 释放连接:释放刚才使用的这条专用的物理通路(释放刚才占用的所有通信资源)。
电路交换举例

A 和 B 通话经过四个交换机

通话在A到B的连接上进行


电路交换缺点

计算机数据具有突发性。

这导致在传送计算机数据时,通信线路的利用率很低(用来传送数据的时间往往不到10%甚至1%)。


2.分组交换的主要特点

分组交换则采用存储转发技术。

在发送端,先把较长的报文划分成较短的、固定长度的数据段。


添加首部构成分组

每一个数据段前面添加上首部构成分组(packet)。


分组交换的传输单元

 分组交换网以“分组”作为数据传输单元。

依次把各分组发送到接收端(假定接收端在左边)。


分组首部的重要性

每一个分组的首部都含有地址(诸如目的地址和源地址)等控制信息。

分组交换网中的结点交换机根据收到的分组首部中的地址信息,把分组转发到下一个结点交换机。

每个分组在互联网中独立地选择传输路径。

用这样的存储转发方式,最后分组就能到达最终目的地。


收到分组后剥去首部

接收端收到分组后剥去首部还原成报文。


最后还原成原来的报文 

最后,在接收端把收到的数据恢复成为原来的报文。

这里我们假定分组在传输过程中没有出现差错,在转发时也没有被丢弃。


互联网的核心部分

互联网的核心部分是由许多网络和把它们互连起来的路由器组成,而主机处在互联网的边缘部分。

互联网核心部分中的路由器之间一般都用高速链路相连接,而在网络边缘的主机接入到核心部分则通常以相对较低速率的链路相连接。

主机的用途是为用户进行信息处理的,并且可以和其他主机通过网络交换信息。路由器的用途则是用来转发分组的,即进行分组交换的。


分组交换网的示意图

 注意分组的存储转发过程

路由器

在路由器中的输入和输出端口之间没有直接连线。

路由器处理分组的过程是:

  • 把收到的分组先放入缓存(暂时存储);
  • 查找转发表,找出到某个目的地址应从哪个端口转发;
  • 把分组送到适当的端口转发出去。

主机和路由器的作用不同

  • 主机是为用户进行信息处理的,并向网络发送分组,从网络接收分组。
  • 路由器对分组进行存储转发,最后把分组交付目的主机。

分组交换的优点

高效:

在分组传输的过程中动态分配传输带宽,对通高效信链路是逐段占用。

灵活:

为每一个分组独立地选择最合适的转发路由。

迅速:

以分组作为传送单位,可以不先建立连接就能迅速向其他主机发送分组。

可靠:

保证可靠性的网络协议;分布式多路由的分组交换网,使网络有很好的生存性。


分组交换带来的问题

分组在各结点存储转发时需要排队这就会造成一定的时延(延迟)

分组必须携带的首部(里面有必不可少的控制信息)也造成了一定的开销。


存储转发原理并非完全新的概念

在20世纪40年代,电报通信也采用了基于存储转发原理的报文交换(message switching)。

报文交换的时延较长,从几分钟到几小时不等。现在报文交换已经很少有人使用了。


三种交换的比较

若要连续传送大量的数据,且其传送时间远大于连接建立时间,则电路交换的传输速率较快。

报文交换和分组交换不需要预先分配传输带宽,在传送突发数据时可提高整个网络的信道利用率。

由于一个分组的长度往往远小于整个报文的长度,因此分组交换比报文交换的时延小,同时也具有更好的灵活性。

希望对你有帮助!加油!

若您认为本文内容有益,请不吝赐予赞同并订阅,以便持续接收有价值的信息。衷心感谢您的关注和支持!

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

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

相关文章

vscode使用npm命令无反应,而终端可以的解决办法

如若你遇到这种情况 使用命令 get-command npm 去下面这个路径把它删掉就可以了

MyBatis拦截器四种类型和自定义拦截器的使用流程

文章目录 MyBatis拦截器四种类型和自定义拦截器的使用流程一、MyBatis拦截器四种类型的详细解释:1. **ParameterHandler 拦截器**:2. **ResultSetHandler 拦截器**:3. **StatementHandler 拦截器**:4. **Interceptor Chain 拦截器…

24-Java策略模式 ( Strategy Pattern )

Java策略模式 摘要实现范例 策略模式的重心不是如何实现算法,而是如何组织、调用这些算法,从而让程序结构更加灵活,具有更好的维护性和扩展性。 策略模式属于行为型模式 摘要 1. 意图 针对一组算法,将每一个算法封装到具有共…

基于Springboot的代驾管理系统(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的代驾管理系统(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构&…

从零搭建Vue项目

目录 环境准备 NodeJS安装 ​编辑 2. 选择安装目录 3. 验证NodeJS环境变量 4. 配置npm的全局安装路径 5. 切换npm的淘宝镜像 6. 安装Vue-cli Vue项目创建 1. 打开UI界面 2. 打开项目管理器 3. 创建项目 vue项目目录结构介绍 运行vue项目 Vue项目开发流程 Vue组…

工具篇--分布式定时任务springBoot 整合 elasticjob使用(3)

文章目录 前言一、Springboot 整合:1.1 引入jar:1.2 配置zookeeper 注册中心:1.3 定义job 业务类:1.4 job 注册到zookeeper:1.5 项目启动:1.5.1 zookeeper 注册中心实例:1.5.2 任务执行日志输出…

RANDOMIZE-IN-PLACE随机排列算法

给定一个长度为 n n n的数组,如何构造出一个随机排列呢?《算法导论》给了我们一个名为RANDOMIZE-IN-PLACE的随机算法,该算法在数组原址上进行排序,时间复杂度为 O ( n ) O(n) O(n)。下面本文将介绍RANDOMIZE-IN-PLACE的设计思想及…

代码随想录(day3)——链表

Leetcode.203 移除链表元素: 203. 移除链表元素 - 力扣(LeetCode) 对于本题,难点就在于对于头部结点的删除,以及给定链表为空时,如何进行遍历。因为需要遍历链表,假设访问链表下一个结点所对应…

开源绘图工具 PlantUML 入门教程(常用于画类图、用例图、时序图等)

文章目录 一、类图二、用例图三、时序图 一、类图 类的UML图示 startuml skinparam classAttributeIconSize 0 class Dummy {-field1 : String#field2 : int~method1() : Stringmethod2() : void } enduml定义能见度(可访问性) startumlclass Dummy {-f…

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的行人跌倒检测系统(深度学习+UI界面+完整训练数据集)

摘要:开发行人跌倒检测系统在确保老年人安全方面扮演着至关重要的角色。本篇文章详尽地阐述了如何利用深度学习技术构建一个行人跌倒检测系统,并附上了完整的代码实现。该系统采用了先进的YOLOv8算法,并对YOLOv7、YOLOv6、YOLOv5等先前版本进…

ARM64汇编05 - MOV系列指令

MOV(wide immediate) MOV 可以将一个立即数移动到寄存器中。 .text:0000000000000834 80 46 82 D2 MOV X0, #0x1234 ; Keypatch modified this from:MOV X0, #0x1234 对应的汇编代码为:80 46 82 D2 看手册可知&#xf…

多维时序 | Matlab实现VMD-CNN-BiLSTM变分模态分解结合卷积神经网络结合双向长短期记忆神经网络多变量时间序列预测

多维时序 | Matlab实现VMD-CNN-BiLSTM变分模态分解结合卷积神经网络结合双向长短期记忆神经网络多变量时间序列预测 目录 多维时序 | Matlab实现VMD-CNN-BiLSTM变分模态分解结合卷积神经网络结合双向长短期记忆神经网络多变量时间序列预测预测效果基本介绍程序设计参考资料 预测…

利用“定时执行专家”软件的25种任务与12种触发器,提升IT系统管理自动化水平

在IT系统管理中,自动化是提高工作效率、减少人为错误的关键。而《定时执行专家》这款软件,以其强大的功能、易用性和毫秒级的执行精度,成为了IT系统管理员的得力助手。今天,我们就来探讨一下如何利用这款软件的25种任务类型和12种…

如何在Linux系统安装SVN并配置固定公网地址远程访问【内网穿透】

文章目录 前言1. Ubuntu安装SVN服务2. 修改配置文件2.1 修改svnserve.conf文件2.2 修改passwd文件2.3 修改authz文件 3. 启动svn服务4. 内网穿透4.1 安装cpolar内网穿透4.2 创建隧道映射本地端口 5. 测试公网访问6. 配置固定公网TCP端口地址6.1 保留一个固定的公网TCP端口地址6…

2024-03-11,12(HTML,CSS)

1.HTML的作用就是在浏览器摆放内容。 2.HTML基本骨架 head:网页头部,是给浏览器看的代码,例如CSS body:网页主体,是给用户看的代码,例如图片,文字。 title:网页标题 3.标签的两种…

Redis中set,zset

集合类型set中的数据是无序的,不能重复的 SET SADD key value [value....] 将一个或者多个元素添加到集合set中,重复的元素是无法进行添加的 返回值为添加成功的数字smembers key 获取set中所有的元素,返回元素的顺序是无序的sismember key…

React Hooks 那些事儿

翻了波之前写的文章还有笔记,发现关于前端的文章并不多(好歹也划水做过点前端开发)。巧了,最近没什么好话题可写,做下 React Hooks 学习笔记吧。 Effect Hook 不得不说 Hook 的出现降低了我们在 React 中处理副作用&…

【漏洞复现】SpringBlade error/list SQL 注入漏洞

免责声明:文章来源互联网收集整理,请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该…

定时执行专家 —— 让工作更高效,生活更便捷

在现代社会,高效的时间管理已经成为我们工作和生活中不可或缺的一部分。为了实现这一目标,我们经常会借助各种工具和软件来辅助我们完成定时任务。今天,我要为大家介绍一款功能强大、操作简便的定时任务执行软件——《定时执行专家》。这款软…

上海计算机学会 2023年11月月赛 丙组T5 推箱子(数学 思维 排序)

第五题:T5推箱子 标签:排序、数学、思维题意:给定 t t t组数据,每组数据给定长度为 n n n的字符串, 表示箱子, _ \_ _表示空格,求把箱子都推到一起(即两两箱子之间没有空格&#…