浅谈交换原理(3)——交换网络

news2024/10/6 8:34:18

一、基本概念

        交换网络是由若干个交换单元按照一定的拓扑结构和控制方式构成的网络。交换网络的三个基本要素是:交换单元、不同交换单元间的拓扑连接和控制方式。

1.1 单机交换网络与多级交换网络

        交换网络按拓扑连接方式可分为:单级交换网络和多级交换网络

        单级交换网络是由一个或者多个位于同一级的交换单元所构成的交换网络,即需要交换的信息从交换网络入线到交换网络出线只经过一个交换单元,并且当同一级有多个交换单元构成时,不同交换单元的入线与出线之间可建立连接。

        如果一个交换网络中的交换单元可以分为K级,顺序命名为第1,2,…,K级,并且满足:所有入线都只与第1级交换单元连接;所有第1级交换单元都只与入线和第2级交换单元连接;所有第2级交换单元都只与第1级和第3级交换单元连接;依此类推,所有第K级交换单元都只与第K-1级和出线连接;则称这样的交换网络为多级交换网络,或K级交换网络。

1.2 有阻塞交换网络和无阻塞交换网络

        交换网络的阻塞是指从交换网络不同输入端来的信息在交换网络中交换时发生了对同一公共资源争抢的情况,这时在竞争资源中失败的信息就会被阻塞,直到这个公共资源被释放。阻塞一般可以分成2种情况:内部竞争和出线竞争。

        对于无阻塞网络,还可以细分成严格无阻塞网络、可重排无阻塞网络和广义无阻塞网络。

  • 严格无阻塞网络:不管网络处于何种状态,任何时刻都可以在交换网络中建立一个连接,只要这个连接的起点、终点是空闲的,而不会影响网络中已建立起来的连接。
  • 可重排无阻塞网络:不管网络处于何种状态,任何时刻都可以在交换网络中直接或对已有的连接重选路由来建立一个连接,只要这个连接的起点、终点是空闲的,而不会影响网络中已建立起来的连接。
  • 广义无阻塞网络:指一个给定的网络存在着固有的阻塞可能,但又可能存在着一种精巧的选路方法,使得所有的阻塞均可避免,而不必重新安排网络中已建立起来的连接。

1.3 单通路交换网络和多通路交换网络

二、CLOS网络 

        假设我们要构造一个100×100的交换网络,最简单的思路就是采用100×100的交换单元,这样的方式需要用到10000个开关。

        10000个开关显然是稍微多了一点,我们想办法优化以下,我们可以考虑采用多个10 X 10 交换单元(单通路),这样的话,我们就只需要用到2*10*10*10=2000个开关。

        当然,也可以考虑采用多通路的方式,采用多个10 X 10 交换单元,这样的话,我们需要用到3*10*10*10=3000个开关。

        但是以上的优化方式都容易造成阻塞的问题,为了减少交叉点总数而同时具有严格的无阻塞特性,CLOS C.很早就提出一种多级结构,推出了严格无阻塞的条件,这就是著名的CLOS网络。 其中3 级 CLOS 网络应用广泛,除特别说明,一般 CLOS 网络也指 3 级 CLOS 网络。

        这里我们就考虑一种比较简单的情况,即输入线和输出线的数量是一致的,都为N,则其CLOS网络结构如下:

        经典的 Clos 结构是一个三阶段的网络,每一阶段由若干数量的 crossbar 开关组成。通常使用三元组(m, n, r)来表示一个 Clos 的参数:

  • m 是中间阶段 switch 的数量。
  • n 是每个input/output switch 的端口数量。
  • r 是 input、output 阶段 switch 的数量。

每个中间级的switch 会和所有的 input switch 和 output switch 相连。

  • 第一阶段的 r 个 input switch 是 n x m 的 crossbar,每个 switch 将各自 n 个输入端口连接到 m 个 middle switch 上。
  • 第二阶段的 m 个 middle switch 是 r x r 的 crossbar,每个 switch 将 r 个 input switch 与 r 个 output switch 相连。
  • 第三阶段的 r 个 output switch 是 m x n 的 crossbar,每个 switch 将 m 个 middle switch 与 n 个输出端口相连。

        在 CLOS 的路由选择上,唯一可以进行选择的地方在 input switch。只要 input switch 到 middle switch 的 channel 没有被占用,input switch 就可以选择该 middle switch 作为建立连接的中间节点。一旦 middle switch 被选定,剩下的路径也就被唯一确定了(或者路径繁忙路由失败)。根据定理可知:如果对于一个CLOS, m≥2n-1,则他就可以做到严格无阻塞(任意入线到任意出线在任何情况下都可连接)。如果m≥n,那么它还满足是可重排无阻塞的(只要对已有连接进行重排, 就能保证任意入线到任意出线可连接)。

        因此,其路由算法可以归纳如下:

从 input swtich a 向 output swtich b 建立连接。

  • 1、如果有可用的 middle switch,a、b 两端均为空闲,则选择该 middle swtich。
  • 2、如果没有可用的 middle swtich,则选择 a 端空闲的 middle switch,建立连接。
  • 3、之前的 switch c 通过该 middle switch 与 swtich b 的连接断开。重新为 input switch c 到 output switch b 尝试建立连接。
  • 4、如此循环迭代。回到步1。

三、TST网络

        TST网络是电话交换系统中经常使用的一种3级网络,由两级T接线器与一级S接线器组合而成。T接线器:时分,采用PCM;S接线器:空分。

        它具有32条双向时分复用线,且每条时分复用线上由32个时隙,编号相同的入线和出线共同组成一条双向时分复用线。TST交换网络的第1级有32个T接线器,第2级为一个32 x 32的S接线器,第3级由32个T接线器组成,分别连在每一条输出线上。第1级T接线器采用的是输出控制方式,第3级T接线器采用的是输入控制方式(当然第1和第3级的控制方式也可以调换),而对于第2级S接线器采用何种方式均可。

        其主要特点是:每一条PCM线路连接到一个T接线器,有多少条输入或输出PCM线路,就有多少个T接线器;S级的出入线数决定于两侧T接线器的数量,即等于输入输出线数。

 四、Banyan 网络

        Banyan 网络的基本结构如下:

  • L级banyan(任何输入到任何输出之间的通路都经过L级)
  • 规则banyan(各个交换单元是相同)
  • 不规则banyan (各个交换单元不相同)
  • 矩形banyan(每个交换单元的入线数等于出线数)

        Banyan网络是一种常用的并行计算机网络拓扑结构,它被广泛应用于高性能计算和分布式系统中。Banyan网络的拓扑结构类似于一棵二叉树,每个节点都有两个输入端口和两个输出端口。

        在Banyan网络中,数据通过节点之间的连接进行传输。每个节点都有一个控制器,用于决定输入端口的数据应该通过哪个输出端口发送。这种控制方式使得Banyan网络具有高度的并行性和可扩展性。

        Banyan网络的主要特点包括:

  1. 低延迟:由于节点之间的连接是直接的延迟较低。
  2. 高带宽:每个节点都多个输入和输出端口,可以同时传输多个数据。
  3. 可扩展性:Banyan通过增加节点和连接来扩展系统的规模。
  4. 容性:Banyan网络可以通过冗余路径来提高系统的错性。

        Banyan网络在并行计算和分布式系统中有广泛的应用,例如在超级计算机、云计算中心和数据中心等场景中。它能够提供高性能的数据传输和处理能力,满足大规模计算和通信的需求。

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

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

相关文章

JavaScript基础第二天

JavaScript基础第二天 今天我们学习if分支语句、三元表达式和switch-case语句。 1. if分支语句 1.1 语法 if (条件表达式){// 满足条件要执行的语句 } else {// 不满足条件要执行的语句 }if中的内容如果为true,就执行大括号的代码块,如果为false执行…

【JS逆向七】逆向某翻译网站的sign参数,并模拟生成 仅供学习

逆向日期:2024.02.07 使用工具:Node.js 文章全程已做去敏处理!!! 【需要做的可联系我】 可使用AES进行解密处理(直接解密即可):AES加解密工具 1、打开某某网站(请使用文章开头的AES…

时间序列之季节性

什么是季节性? 当一个时间序列的均值有规律的、周期性的变化时,我们就说这个时间序列表现出季节性。季节性的变化通常是遵循时间的——以一天、一周或一年为单位重复。 时间序列中的四种季节性模式 这里介绍两种季节性特征。一种适用于观测较少的季节&a…

告别mPDF迎来TCPDF和中文打印遇到的问题

mPDF是一个用PHP编写的开源PDF生成库。它最初由Claus Holler创建,于2004年发布。原来用开源软件打印中文没有问题,最近发现新的软件包中mPDF被TCPDF代替了,当然如果只用西文的PDF是没有发现问题,但要打印中文就有点抓瞎了如图1&am…

网络爬虫,使用存放在C的谷歌驱动报错

月 06, 2024 11:43:40 上午 org.openqa.selenium.os.OsProcess checkForError 严重: org.apache.commons.exec.ExecuteException: Execution failed (Exit value: -559038737. Caused by java.io.IOException: Cannot run program "C:\chromedriver121.exe" (in dir…

【Linux系统化学习】文件描述符fd

目录 基础IO预备知识 C语言文件接口 "w"的方式打开,fputs写入 以"a"的方式打开,fputs写入 使用位图传参 系统调用操作文件 open的使用 第一种形式 第二种形式 write() 文件描述符 文件描述符和进程的关系 默认的三个IO流…

Bagging的随机森林;Boosting的AdaBoost和GBDT

集成学习应用实践 import numpy as np import os %matplotlib inline import matplotlib import matplotlib.pyplot as plt plt.rcParams[axes.labelsize] 14 plt.rcParams[xtick.labelsize] 12 plt.rcParams[ytick.labelsize] 12 import warnings warnings.filterwarnin…

【Java】ArrayList和LinkedList的区别是什么

目录 1. 数据结构 2. 性能特点 3. 源码分析 4. 代码演示 5. 细节和使用场景 ArrayList 和 LinkedList 分别代表了两类不同的数据结构:动态数组和链表。它们都实现了 Java 的 List 接口,但是有着各自独特的特点和性能表现。 1. 数据结构 ArrayList…

微调实操二: 有监督微调(Supervised Finetuning)

1、背景 在上一章《微调实操一: 增量预训练(Pretraining)》中进行了第一阶段的增量专业知识训练,这篇开始实践一下指令微调的训练,在预训练模型基础上做指令精调,以对齐指令意图。通过输入中添加指令,使得模型可以将指令作为上下文的信息&am…

kmp算法板子及例题

对板子的详细解释见&#xff1a;pecco:kmp 板子 void get_pmt(const string& p) {//求pmt数组for (int i 1, j 0;i < p.size();i) {while (j && p[i] ! p[j])j pmt[j - 1];if (p[i] p[j])j;pmt[i] j;} }void kmp(const string& s, const string&…

亚信安慧AntDB零故障割接方案的实践

亚信安慧AntDB秉持着为客户提供最佳数据库解决方案的理念&#xff0c;不断探索并创新&#xff0c;最近取得了重大的突破。他们成功地研发出一种先进的数据库割接方案&#xff0c;实现了不停服、零故障的数据库割接操作&#xff0c;有效地将替换所带来的业务影响降至最低。 这一…

spring boot整合 cache 以redis服务 处理数据缓存 便捷开发

我们常规开发中 就是程序去数据库取数据 然后返回给客户端 但是 如果有些业务业务量非常庞大 不断访问数据库 性能就会非常糟糕 从而造成不好的用户体验 那么 我们自然就可以将数据查到缓存中 然后 用户访问 从缓存中取 这样就会大大提高用户的访问效率 之前 我的文章 java …

【Linux开发工具】gcc/g++的使用

&#x1f4d9; 作者简介 &#xff1a;RO-BERRY &#x1f4d7; 学习方向&#xff1a;致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 &#x1f4d2; 日后方向 : 偏向于CPP开发以及大数据方向&#xff0c;欢迎各位关注&#xff0c;谢谢各位的支持 目录 1.前言2.gcc/g使用方…

python实现k路归并排序

从归并排序中可以衍生出来一个新的问题&#xff0c;关于k路归并排序&#xff0c;给定k个已经排好序的数组&#xff0c;每个数组含有n各元素&#xff0c;要求将这k个数组合并成一个排好序的大数组。在对两路排好序的数组进行归并时候&#xff0c;会用两个指针指向两个数组首元素…

单片机学习笔记---串口通信(2)

目录 串口内部结构 串口相关寄存器 串口控制寄存器SCON SM0和SM1 SM2 REN TB8和RB8 TI和RI 电源控制寄存器PCON SMOD 串口工作方式 方式0 方式0输出&#xff1a; 方式0输入 方式1 方式1输出。 方式1输入 方式2和方式3 方式2和方式3输出&#xff1a; 方式2和…

ArcGIS学习(五)坐标系-2

3.不同基准面坐标系之间的转换 在上一关中,我们学习了ArcGIS中的投影(投影栅格)工具,并以"WGS1984地理坐标系与WGS1984的UTM投影坐标系的转换”为例进行讲解。 "WGS1984地理坐标系与WGS1984的UTM投影坐标系的转换”代表的是同一个基准面下的两个坐标的转换。 …

jsp课程管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 JSP 课程管理系统是一套完善的java web信息管理系统&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发&#xff0c;数据库为Mysql5.0&…

[office] Excel如何快速统一数字编号长度 #经验分享#其他

Excel如何快速统一数字编号长度 我们在办公室使用Excel统计数据的时候&#xff0c;经常会遇到第一列数据全部是数字编号&#xff0c;但是因为数字的位数不一样&#xff0c;长短不一的样子看起来不是很协调。那么如何快速统一数字编号长度呢&#xff1f;一起来了解一下吧 我们在…

11 插入排序和希尔排序

1. 插入排序 基本思想 直接插入排序是一种简单的插入排序法&#xff0c;基本思想&#xff1a; 把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中&#xff0c;直到所有的记录插入完为止&#xff0c;得到一个新的有序序列 在玩扑克牌时&#xff0c;就用…

【Spring】Spring 对 Ioc 的实现

一、Ioc 控制反转 控制反转是一种思想 控制反转是为了降低程序耦合度&#xff0c;提高程序扩展力&#xff0c;达到 OCP 原则&#xff0c;达到 DIP 原则 控制反转&#xff0c;反转的是什么&#xff1f; 将对象的创建权利交出去&#xff0c;交给第三方容器负责 将对象和对象之…