当前位置: 首页 > news >正文

网络类型(通信分类)

网络类型是根据数据链路层所使用的协议及规则进行划分,大致可分为两类网络:

  1. 点到点(p2p,point to point)
  2. MA(multiple access)多路访问:BMA、NBMA

不同的网络类型实际为不同的数据链路层技术,由于二层同时作为了物理层的大脑,所以当选择不同的数据链路层技术,也将调用不同的物理层技术

1、点对点

物理上一个网段内仅存在两个节点,不用存在唯一的二层单播地址

1.1 HDLC

HDLC:高级数据链路控制协议

物理网线:串线

串线速率:T1 1.544M/S、T2 2.048m/s

北美的24路脉码调制PCM简称T1,速率为1.544Mbit/S

欧洲的30路脉码调制PCM简称E1,速率为2.048Mbit/S

HDLC实际在二层没有其他的特殊功能,只是单纯实现数据链路层需要的基本工作:控制物理层

默认华为设备的串线接口,二层封装默认为PPP,需要手工修改为HDLC

[r1]interface s4/0/0[r1-Serial4/0/0]link-protocol hdlc Warning: The encapsulation protocol of the link will be changed. Continue? [Y/N]:y

注:所有厂家的HDLC技术均为私有技术 --- 互相不通

HDLC技术最早由cisco公司提出,故各种抓包类软件在识别到HDLC数据帧时,会进行cisco标识

1.2 PPP

PPP:点对点协议

物理网线:串线

PPP可视为HDLC的升级版,它比较与HDLC多出了一个拨号功能,拨号

  1. 直连间配置不同网段ip地址可以正常互通,即PPP协议会在链路物理连接时进行互相的协商,共享各自接口的真实ip地址并生成到达对端接口的32位主机路由;
  2. 可以进行身份的核实与认证
  3. 可以建立虚链路,分配ip地址

PPP认证(在接口正常工作时配置完需重启接口)

1、Pap 明文发送账号密码  

主认证方[r1]aaa[r1-aaa]local-user a password cipher 123456[r1-aaa]local-user a service-type ppp[r1]int s4/0/0[r1-Serial4/0/0]ppp authentication-mode pap
被认证方[r2]int s4/0/0[r2-Serial4/0/0]ppp pap local-user a password cipher 123456

2、Chap 密文发送账号密码

主认证方[r1]aaa[r1-aaa]local-user a password cipher 123456[r1-aaa]local-user a service-type ppp[r1]int s4/0/0[r1-Serial4/0/0]ppp authentication-mode chap
被认证方[r2]int s4/0/0[r2-Serial4/0/0]ppp chap password cipher 123456

1.3 GRE

GRE:通用路由封装,标准简单的VPN技术,属于虚拟的点到点网络类型

VPN:虚拟专用网络,通过虚拟手段将两个独立网络穿越中间一个公共网络进行互联,模拟出点到点专线的效果

[r1]interface Tunnel 0/0/0  创建隧道接口
[r1-Tunnel0/0/0]ip address 192.168.3.1 24  配置ip
[r1-Tunnel0/0/0]tunnel-protocol gre   定义该接口转发流量时需要GRE封装
GRE实则在源IPV4报头前方再封装一个IPV4报头,必须定义封装报头的中源目ip地址
[r1-Tunnel0/0/0]source 12.1.1.1
[r1-Tunnel0/0/0]destination 23.1.1.2

2、MA多路访问

MA多路访问又可分为BMA广播型多路访问和NBMA非广播型多路访问

2.1 BMA(以太网)

BMA广播型多路访问:一个网段内可以放置多个物理节点,同时该范围内可以实施广播洪泛机制

以太网就属于经典的BMA类型

以太网技术的核心为频分,即在同一物理介质上,使用多个相互不干涉的频率来共同传输数据,实现带宽的不断提升

使用的物理传输介质:

1、RJ-45双绞线:可全双工通讯    民用带宽最大2.5G/s     商用最大100G/S

2、光纤:可适用于远距离传输  在大带宽要求时成本低于电口

3、同轴电缆

4、wifi 

以太网的频分为物理技术,主要在于提升带宽;逻辑上以太网选择了加入BMA类型;

一个网段内以太网允许存在多个节点,故需要二层单播地址(MAC地址)

存在广播和洪泛来实现BMA功能

2.2 NBMA(MGRE)

MGRE:多点GRE,GRE的一种扩展配置,属于一种虚拟的NBMA网络

所有节点存在一个MA网段,且为中心到站点结构,该结构中,默认仅中心站点需要固定公有ip地址,分支站点地址可变化————大大降低的管理难度、资源占有量,成本

中心站点配置[r1]interface Tunnel 0/0/0  创建隧道接口[r1-Tunnel0/0/0]ip address 192.168.4.1 24  隧道接口ip地址[r1-Tunnel0/0/0]tunnel-protocol gre p2mp  定义该隧道为多点gre隧道[r1-Tunnel0/0/0]source 14.1.1.1  该隧道加封装的报头源ip地址通过NHRP协议来获取加封装的目标ip地址[r1-Tunnel0/0/0]nhrp entry multicast dynamic  本地成为NHRP服务端[r1-Tunnel0/0/0]nhrp network-id 100  NHRP的工作编号,该网段所有设备必须在同一id
分支站点:[r2]interface Tunnel 0/0/0[r2-Tunnel0/0/0]ip address 192.168.4.2 24[r2-Tunnel0/0/0]tunnel-protocol gre p2mp加封装的源ip地址,为本地的隧道实际通过接口的ip地址
填写接口,而不是接口ip,原因在于该接口ip地址可变    [r2-Tunnel0/0/0]source GigabitEthernet 0/0/0加封装的目标ip地址,需要到NHRP中心站点获取[r2-Tunnel0/0/0]nhrp entry 192.168.4.1 14.1.1.1 register[r2-Tunnel0/0/0]nhrp network-id 100
[r1]dis nhrp peer all  查看分支站点注册结果

若所有tunnel对应的公有ip均为固定ip地址,可以让每台路由器均成为中心站点,两两间均进行手工注册

当拓扑结构为全连网状结构拓扑,rip这种存在水平分割机制的协议能够正常收敛

当拓扑结构为中心到站点(轴辐状、星型),不是所有网点均为固定的公有ip,无法所有tunnel设备相互注册;只能通过关闭水平分割来实现路由的全网正常收敛

[r1-Tunnel0/0/0]undo rip split-horizon 
关闭水平分割

NHRP:下一跳路径发现协议;存在服务端和客户端;服务端需要固定公有ip地址,客户端ip地址可变;客户端在本地公有ip变化后,主动向服务端进行注册;服务端生成MAP,

MAP中记录客户端的公有ip与tunnel接口的ip地址对应关系;若其他客户端需要访问另一个客户端,可以到服务端下载该MAP

伪广播:当目标IP地址为组播或广播地址时,将流量基于每个用户进行一次单播;外层报头(新增报头)为单播报头,内层报头为组播或广播报头;该功能不开启,正常基于组播和广播工作的动态路由协议将无法正常使用

相关文章:

网络类型(通信分类)

网络类型是根据数据链路层所使用的协议及规则进行划分,大致可分为两类网络: 点到点(p2p,point to point)MA(multiple access)多路访问:BMA、NBMA 不同的网络类型实际为不同的数据链…...

python基础语法(一)

目录 常量和表达式变量和类型变量是什么变量的语法定义变量使用变量 变量的类型整形浮点数(小数)字符串布尔其他 变量为什么会有这么多类型动态类型特征 常量和表达式 python中有许多和C语言相同的知识,但是也有一些不同的知识,比如: print(1 2 - 3)打印12-3的结果 print(1 …...

C语言学习笔记——常见问题

VS执行结果一闪而过 生成的 *.exe 文件打开时会一闪而过,从而观察不到其运行的结果————这是因为 main() 函数结束时,DOS 窗口会自动关闭 1、通过改变设置来解决 按以下顺序打开配通过改变设置来置窗口:项目->属性->配置属性->…...

使用GPU虚拟化技术搭建支持3D设计的职校学生机房(云教室)

背景 学校为职业学校,计算机教室需要进行Maya、Adobe Illustrator、Adobe Dreamweaver、Adobe PhotoShop等软件的教学。每个教室为35用户。资源需求为4核、8G内存、80G硬盘。 基于桌面虚拟化VDI技术的机房在成本、可管理性方面,相对于传统胖终端的机房…...

【C++入门】C语言的不足之处

概要 C入门主要讲的是C语言的一些不足,C作为补充,来补充C的不足之处 C的关键字有63个,C语言有32个(作为了解,不需要专门记) 变量的命名规则: 变量名必须以字母或下划线开头。变量名只能包含字…...

【已解决】oracle获取最近2学年的数据

已解决 :oracle获取最近2学年的数据 SELECT * FROM (SELECT * FROM xx.JWXT_XSKB WHERE AND xn IN (‘2023-2024’,‘2022-2023’)); 问题 某某系统课表数据过大,要求只获取最近2学年的数据,不能写死。 思路 mysql 在子查询的WHERE子句中…...

【图卷积神经网络】1-入门篇:为什么使用图神经网络(下)

为什么使用图神经网络? 在本书中,我们将重点介绍图学习技术中的深度学习家族,通常称为图神经网络。GNNs是一种新的深度学习架构类别,专门设计用于处理图结构化数据。与主要用于文本和图像的传统深度学习算法不同,GNNs明确地用于处理和分析图数据集(见图1.4)。 图1.4 - …...

AIGC(生成式AI)试用 2 -- 胡言乱语

小时候曾希望做个科学家,才师笑着说:努力、加油,一定会实现的。 也曾说要做个发明家,家人一笑了之:你那笨手笨脚的,想啥呢。 也曾幻想自己要成为英雄,被朋友嘲笑:连架都不敢…...

爬虫逆向实战(30)-某查查股东关联公司(HmacSHA512)

一、数据接口分析 主页地址:某查查 1、抓包 通过抓包可以发现数据接口是api/people/getRelatCompany 2、判断是否有加密参数 请求参数是否加密? 无 请求头是否加密? 通过查看“标头”可以发现,请求头中有一个key和value都是…...

多态(个人学习笔记黑马学习)

多态分为两类 静态多态: 函数重载和 运算符重载属于静态多态,复用函数名动态多态: 派生类和虚图数实现运行时多态 静态多态和动态多态区别: 静态多态的函数地址早绑定 编译阶段确定函数地址动态多态的函数地址晚绑定 运行阶段确定函数地址 1、基本语法 #include &…...

线程中future/atomic/async及nlohmann json的学习

1)std::future的其他成员函数 wait_for()成员函数&#xff0c;wait_for返回的是一个std::future_status枚举类型,根据返回值做相应处理 std::future_status state result.wait_for(std::chrono::seconds(1)); if(state std::future_status::ready) { cout<<result.get…...

windows安装MongoDB后进入命令交互界面失败解决方案

MongoDB下载链接&#xff1a;https://www.mongodb.com/download-center MongoDB安装教程&#xff1a;https://juejin.cn/post/6844903912000978952 不要安装最新的高版本MongoDB&#xff0c;因为配置方法可能会有差别&#xff0c;比如7.0一直失败的话就换5.0及以下版本试试&am…...

基于Java+SpringBoot+Vue前后端分离高校专业实习管理系统设计和实现

博主介绍&#xff1a;✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专…...

E. Hanging Hearts

Problem - E - Codeforces 思路&#xff1a;我们考虑用树形dp&#xff0c;用f[i][0]表示以i为根&#xff0c;并且当前节点不在最长上升子序列中&#xff0c;用f[i][1]表示以i为根&#xff0c;当前节点在最长上升子序列中&#xff0c;那么f[i][0]max(f[j][0],f[j][1])&#xff0…...

docker安装RabbitMQ教程

可以通过Docker来安装RabbitMQ&#xff0c;具体步骤如下&#xff1a; 安装Docker&#xff1a;请参考官方文档进行安装。 拉取RabbitMQ镜像&#xff1a;通过以下命令拉取最新版本的RabbitMQ镜像。 docker pull rabbitmq:latest运行RabbitMQ容器&#xff1a;通过以下命令运行Rab…...

Java虚拟机整型数加载指令学习

JVM中 int 类型数值&#xff0c;根据 取值范围将 入栈的 字节码指令 就分为4类&#xff1a; 取值 -1~5 采用 iconst 指令&#xff1b; 取值 -128~127 采用 bipush 指令&#xff1b; 取值 -32768~32767 采用 sipush指令&#xff1b; 取值 -2147483648~2147483647 采用 ldc 指令。…...

Docker 实现 MySQL 一主一从配置

1、新建主服务器容器实例&#xff0c;端口&#xff1a; 3307 docker run \ -p 3307:3306 \ --name mysql-master \ -v /var/docker/mysql-master/log:/var/log/mysql \ -v /var/docker/mysql-master/data:/var/lib/mysql \ -v /var/docker/mysql-master/conf:/etc/mysql \ --p…...

Python编程练习与解答 练习113:避免重复

本练习将创建一个程序&#xff0c;从用户处读取单词&#xff0c;直到用户输入空行&#xff0c;在用户输入空行之后&#xff0c;程序应该显示一次用户输入的每个单词。单词应该按照他们最初的输入顺序显示。例如如果用户输入&#xff1a; first second first third second …...

线上 udp 客户端请求服务端客户端句柄泄漏问题

本题分别从如下三个方面来分享&#xff1a; 问题描述 自定义连接池的编写 common_pool 的使用 问题描述 线上有一个业务&#xff0c;某个通服务通知 udp 客户端通过向 udp 服务端&#xff08;某个硬件设备&#xff09;发送 udp 包来进行用户上线操作 当同时有大量的请求打到…...

合宙Air724UG LuatOS-Air LVGL API控件-窗口 (Window)

窗口 (Window) 分 享导出pdf 示例代码 win lvgl.win_create(lvgl.scr_act(), nil) lvgl.win_set_title(win, "Window title") -- close_btn lvgl.win_add_btn_right(win, "\xef\x80\x8d") -- --lvgl.obj_set_event_cb(cl…...

Oracle查询表空间大小

1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...

【JVM】- 内存结构

引言 JVM&#xff1a;Java Virtual Machine 定义&#xff1a;Java虚拟机&#xff0c;Java二进制字节码的运行环境好处&#xff1a; 一次编写&#xff0c;到处运行自动内存管理&#xff0c;垃圾回收的功能数组下标越界检查&#xff08;会抛异常&#xff0c;不会覆盖到其他代码…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。

1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj&#xff0c;再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...

基于TurtleBot3在Gazebo地图实现机器人远程控制

1. TurtleBot3环境配置 # 下载TurtleBot3核心包 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git git clone -b noetic https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git clone -b noetic-dev…...

【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看

文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...

全面解析数据库:从基础概念到前沿应用​

在数字化时代&#xff0c;数据已成为企业和社会发展的核心资产&#xff0c;而数据库作为存储、管理和处理数据的关键工具&#xff0c;在各个领域发挥着举足轻重的作用。从电商平台的商品信息管理&#xff0c;到社交网络的用户数据存储&#xff0c;再到金融行业的交易记录处理&a…...

电脑桌面太单调,用Python写一个桌面小宠物应用。

下面是一个使用Python创建的简单桌面小宠物应用。这个小宠物会在桌面上游荡&#xff0c;可以响应鼠标点击&#xff0c;并且有简单的动画效果。 import tkinter as tk import random import time from PIL import Image, ImageTk import os import sysclass DesktopPet:def __i…...

【版本控制】GitHub Desktop 入门教程与开源协作全流程解析

目录 0 引言1 GitHub Desktop 入门教程1.1 安装与基础配置1.2 核心功能使用指南仓库管理日常开发流程分支管理 2 GitHub 开源协作流程详解2.1 Fork & Pull Request 模型2.2 完整协作流程步骤步骤 1: Fork&#xff08;创建个人副本&#xff09;步骤 2: Clone&#xff08;克隆…...

欢乐熊大话蓝牙知识17:多连接 BLE 怎么设计服务不会乱?分层思维来救场!

多连接 BLE 怎么设计服务不会乱&#xff1f;分层思维来救场&#xff01; 作者按&#xff1a; 你是不是也遇到过 BLE 多连接时&#xff0c;调试现场像网吧“掉线风暴”&#xff1f; 温度传感器连上了&#xff0c;心率带丢了&#xff1b;一边 OTA 更新&#xff0c;一边通知卡壳。…...

作为点的对象CenterNet论文阅读

摘要 检测器将图像中的物体表示为轴对齐的边界框。大多数成功的目标检测方法都会枚举几乎完整的潜在目标位置列表&#xff0c;并对每一个位置进行分类。这种做法既浪费又低效&#xff0c;并且需要额外的后处理。在本文中&#xff0c;我们采取了不同的方法。我们将物体建模为单…...