网络:用2个IP地址描述一个连接

用2个IP地址描述一个连接。这是在阅读了《TCP/IP指南》后的感想,与工业标准不同,需注意区分。

如果一个IP地址有48位,则用96位描述一个连接

对于单播,是每个IP分别描述位置。位置包括:邮局编号+主机编号,采用固定长度。全球有80亿人,按100亿计算,开平方,得10万。每10万人分配一个“邮局”。

对于多播,第一个IP描述发起方,第二个IP仅是一个编号,说明这个连接是该IP发起的第几个多播,一般来说,值为1,第一个。

对于广播,和多播格式相同,只是编号为0。

例:
单播:0.2597.765->0.3254.99873(0表示单播,从2597号邮局的765号主机,向3254号邮局的99873号主机发送的数据包)

多播:1.25987.33765=>1.1(1表示多播,它发起的第1个直播,不同于->,这里用的是=>)

广播:1.25987.33765=>1.0(特殊值0表示广播)

若一个IP宽48位,则1位M,23位网络地址,24位主机地址。1+23+24=48,1+47=48
对多播和广播,也有1比特M,这是冗余设计。M=multi,“多”的意思。M=0单播,M=1多播和广播。

为了防止过度占用网络地址,也为了修改方便,用公式roundup(log2(全局人口/地区人口))算出每个地区(国家)占用多少比特。
例如,中国:
roundup(log2(80/14))=roundup(2.515)=3
美国:
roundup(log2(80/3.33))=roundup(4.586)=5
这些计算结果用于在单播地址的“邮局编号”中使用。再把二进制转化为十进制,这样一来,做两次减法,或进行几次位运算,就能知道邮局编号的归属地。

这里使用的是“邮局编号+主机编号”,书上的说法是“网络地址+主机地址”。

交换机的处理逻辑:
交换机有许多端口,连接着其它交换机或主机。它能记住去哪个IP地址需要从几号端口走,按照标准设计,一个邮局有10万主机,有约10万个邮局。一台交换机不一定要直接和10万台设备相连,但它要记住10万个地址,占用的内存约是:
100K×8B=800KB
不是很大,内存里装得下。
邮局之间也用交换机连接,算法相似。跨邮局的通信,先查看邮局编号是否相同?不同,则先转移到邮局,再在邮局间传递,最后送往目标主机。

多播的原理:
需要把从一个起点,到多个终点,的链路进行压缩。如:
45->36->99
45->36->98->47
这是个一对二的多播,有两条链路,压缩的结果是:节点45把数据传递给36,36要传递给98和99,98还要传递给47,99不用再传递了。
把链路集压缩,再传递给链路上的交换机,交换机只记住和自己相关的那一部分,这是种分布式吗?

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

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

相关文章

Qt 信号与槽机制概述

在 Qt 中,emit 是一个用于发射信号的关键字。它是 Qt 的信号与槽(Signals and Slots)机制的一部分,用于在某个条件满足时通知其他对象。发射信号是一种实现对象之间通信的方式,特别是在事件驱动编程模型中。 Qt 信号与…

示例:WPF中TreeView自定义TreeNode泛型绑定对象

一、目的&#xff1a;在开发中经常需要绑定TreeView&#xff0c;所以定义了一个泛型的TreeNode<T>用来方便绑定对象和复用 二、实现 public partial class TreeNodeBase<T> : SelectBindable<T>, ITreeNode{public TreeNodeBase(T t) : base(t){}private Obs…

MySQL常见的命令

MySQL常见的命令 查看数据库&#xff08;注意添加分号&#xff09; show databases;进入到某个库 use 库; 例如&#xff1a;进入test use test;显示表格 show tables;直接展示某个库里面的表 show tables from 库&#xff1b; 例如&#xff1a;展示mysql中的表格 show tabl…

前端三大件速成 05 javascript(2)字符串对象、数组对象、函数对象、BOM对象、DOM对象

文章目录 一、字符串对象1、创建字符串对象的两种方式2、字符串属性3、字符串的方法&#xff08;1&#xff09;编排方法&#xff08;2&#xff09;查询字符串索引&#xff08;3&#xff09;字符串切片&#xff08;4&#xff09;大小写转换&#xff08;5&#xff09;获取指定字符…

Python网络数据抓取(9):XPath

引言 XPath 是一种用于从 XML 文档中选取特定节点的查询语言。如果你对 XML 文档不太熟悉&#xff0c;XPath 可以帮你完成网页抓取的所有工作。 实战 XML&#xff0c;即扩展标记语言&#xff0c;它与 HTML&#xff0c;也就是我们熟知的超文本标记语言&#xff0c;有相似之处&am…

python脚本之解析命令参数

import requests import argparseprint(f"{__name__}:start")parser argparse.ArgumentParser(description使用方法) parser.add_argument(-p, --prefix, typestr, help域名) parser.add_argument(-t, --token, typestr, helptoken) parser.add_argument(-i, --queu…

pyqt 鼠绘椭圆 椭圆标注

目录 pyqt 椭圆标注 四个方向可以调整,调整时,另一端固定,只调整当前端,椭圆参数保存加载json pyqt 画椭圆中心点固定,调整是,两端一起调整。 pyqt 椭圆标注 四个方向可以调整,调整时,另一端固定,只调整当前端,椭圆参数保存加载json import sys import json from …

ClickHouse快速安装教程(MacOS)

文章目录 ClickHouse快速安装教程&#xff08;MacOS&#xff09;1.ClickHouse2.快速安装3.快速启动3.1.启动服务器3.2.启动客户端 4.使用案例1.配置文件2.启动CK服务3.创建数据库4.创建表5.插入数据6.查询数据 ClickHouse快速安装教程&#xff08;MacOS&#xff09; 1.ClickHo…

前端开发之HTTP协议

上一篇&#x1f449;: 前端开发之WebSocket通信 文章目录 1. HTTP 1.0 和 HTTP 1.1 之间有哪些区别1.连接方面&#xff1a;2.资源传输优化&#xff1a;3.缓存机制增强&#xff1a;4.主机头识别5.请求方法扩展 2.HTTP 1.1 和 HTTP 2.0 的区别1. 二进制分帧层&#xff1a;2.多路…

【UEditorPlus】后端配置项没有正常加载,上传插件不能正常使用

接上文【UEditorPlus】后端配置项没有正常加载&#xff0c;上传插件不能正常使用_ueditor ruoyi vue后端配置项没有正常加载,上传插件不能正常使用!-CSDN博客 成功解决图片、视频上传问题后&#xff0c;当服务部署在公网时&#xff0c;会存在大文件无法正常上传的问题。 出现…

makefile中连接使用-lssh2 连接命令提示找不到lssh2 解决

一&#xff1a; 第一种方式自己下载源码编译生成.so 库 安装libssh2之前需要先安装openssl&#xff0c;否则将导致libssh2无法安装 openssl 的下载地址: https://www.openssl.org/source/ libssh2下载地址&#xff1a; https://www.libssh2.org/download/ openssl 的下载…

C# range

基本概念索引范围前缀和后缀范围完整范围示例用法访问数组的子集使用范围进行迭代使用范围进行切片生成一个范围的整数序列步进范围使用范围表达式进行条件过滤 注意事项 在 C# 8.0 及以上版本中&#xff0c;引入了一种新的语法特性&#xff0c;称为“范围”&#xff08; ran…

电感的本质是什么

什么是电感&#xff1f; 电感器件一般是指螺线圈&#xff0c;由导线圈一圈靠一圈地绕在绝缘管上&#xff0c;绝缘管可以是空心的&#xff0c;也可以包含铁芯或磁粉芯。 为什么把’线’绕成’圈’就是电感&#xff1f; 电感的工作原理非常抽象&#xff0c;为了解释什么是电感…

Python写一个MES系统和ERP系统协同任务流程

在这个示例中&#xff0c;我将向您展示如何使用Python编写一个简单的MES&#xff08;制造执行系统&#xff09;和ERP&#xff08;企业资源规划系统&#xff09;协同任务流程。我们将通过一个简单的示例来展示这两个系统如何协同工作。 首先&#xff0c;我们需要了解MES和ERP系统…

游戏服务器要注意哪些安全事项?

网络安全对于游戏行业来说是至关重要的&#xff0c;当游戏行业受到恶意的攻击者进行网络攻击时&#xff0c;严重的会导致服务器崩溃&#xff0c;使业务无法正常进行工作运行&#xff0c;给企业造成巨大的经济损失&#xff0c;那么对于网络安全&#xff0c;游戏服务器需要注意哪…

04通讯录管理系统——退出功能实现

功能描述&#xff1a;退出通讯录 思路&#xff1a;根据用户不同的选项&#xff0c;进入不同的功能&#xff0c;可以选择switch分支结构&#xff0c;将整个架构进行搭建 当用户选择0时&#xff0c;执行退出&#xff0c;选择其他时先不做操作&#xff0c;也不退出程序 代码&am…

2024年6月10日~2024年6月16日周报

文章目录 一、前段时间工作二、完成情况2.1 可变形卷积的学习2.1.1 Introduction-介绍2.1.2 Related Work-相关工作2.1.3 Method-方法2.1.3.1 可变形卷积动态属性的重认识2.1.3.2 Speeding up DCN—加速DCN 2.2 部署可变形卷积 三、假期计划 一、前段时间工作 在之前一段时间主…

------构造类型数据—结构体---- + ----函数-----

构造类型数据——结构体 1&#xff09;结构体的基本概念 结构体&#xff08;struct&#xff09;是C语言&#xff08;以及其他一些编程语言&#xff09;中用于将不同类型的数据组合成一个单一类型的方式。这种数据类型允许你将多个变量&#xff08;可能是不同类型&#xff09;…

事实空间与价值空间的等价

如何通过理论建模和推导&#xff0c;将事实空间&#xff08;Fact space&#xff09;层间变换或态射 f&#xff0c;等价映射到&#xff0c;价值空间(Value space) 因果态&#xff08;Causal states&#xff09;或隐藏态&#xff08;Hidden states&#xff09;之间的态射&#xf…

结合Boosting理论与深度ResNet:ICML2018论文代码详解与实现

代码见&#xff1a;JordanAsh/boostresnet: A PyTorch implementation of BoostResNet 原始论文&#xff1a;Huang F, Ash J, Langford J, et al. Learning deep resnet blocks sequentially using boosting theory[C]//International Conference on Machine Learning. PMLR, 2…