网络流量测量

server/2025/1/18 9:50:52/

网络测量的重要性:网络测量对于网络运营、拥塞控制、负载均衡和异常检测等至关重要。其中,大流检测是网络测量的关键任务之一,它记录流的大小和ID(通常由5元组或源/目的IP地址组成)。

基于Sketch的方法

牺牲精度换空间
  • 原理:Sketch方法通过哈希函数将数据映射到一个较小的固定大小的数据结构(如计数器数组)中,从而大大减少了所需的空间。由于多个数据项可能被映射到同一个位置,这就导致了哈希冲突,进而使得计数结果存在误差,即牺牲了精度。

  • 举例:以Count-Min Sketch为例,假设我们有一个数据流,包含元素A、B、C、D等,我们使用两个哈希函数h1和h2,以及一个2行n列的计数器数组。当元素A到来时,通过h1和h2分别计算出其在数组中的位置,并在对应位置的计数器上加1。如果元素B的哈希值与A相同,那么它也会在相同位置的计数器上加1,这就导致了计数器上的值是A和B的累加值,而不是单独的A或B的值,从而产生了误差。

  • 误差范围:虽然存在误差,但Sketch方法通常可以控制误差在一个可接受的范围内。例如,Count-Min Sketch的误差范围可以通过调整哈希函数的数量和计数器数组的大小来控制,一般情况下,误差范围可以控制在数据总量的一定比例之内。

基于Count的方法

牺牲空间换精度
  • 原理:基于Count的方法直接对每个数据项进行计数,不进行任何压缩或映射。这意味着每个数据项都需要一个独立的计数器来记录其出现次数,因此需要的空间大小与数据项的数量成正比,空间开销较大。但这种方法可以确保计数结果的完全精确,不会出现任何误差。

  • 举例:假设我们有一个数据流,包含元素A、B、C、D等,我们使用一个简单的计数器数组来记录每个元素的出现次数。数组的索引对应元素的标识,数组的值对应元素的出现次数。当元素A到来时,我们直接在数组中A对应的索引位置的计数器上加1。这样,每个元素的出现次数都能被精确记录,不会出现任何误差。

  • 适用场景:这种方法适用于数据量较小、对精度要求极高的场景。例如,在一些小型的数据库查询中,需要精确统计每个用户的访问次数,这时可以使用基于Count的方法来确保统计结果的精确性。


http://www.ppmy.cn/server/159323.html

相关文章

计算机网络 (44)电子邮件

一、概述 电子邮件(Electronic Mail,简称E-mail)是因特网上最早流行的应用之一,并且至今仍然是因特网上最重要、最实用的应用之一。它利用计算机技术和互联网,实现了信息的快速、便捷传递。与传统的邮政系统相比&#…

LeetCode 2859. 计算 K 置位下标对应元素的和

在本篇文章中,我们将探讨如何求解 LeetCode 上的 2859. 计算 K 置位下标对应元素的和问题。这个问题要求我们找到一个数组中特定元素的和,这些特定元素的下标在二进制表示中恰好有 k 个置位。 问题描述 算法分析 为了解决这个问题,我们可以…

软件测试 —— 自动化测试(Selenium)

软件测试 —— 自动化测试(Selenium) 什么是SeleniumPython安装Selenium1.安装webdirver-manager2.安装Selenium 写一个简单用例CSS_SELECTOR和XPATH浏览器快速定位页面元素浏览器的前进(forward),后退(bac…

父组件数据更新后通过属性传递给子组件,子组件页面未更新问题记录

改老项目bug时&#xff0c;发现父组件数据更新后通过属性传递给子组件&#xff0c;子组件页面未更新&#xff1b;查看代码原来是使用shallowRef定义的属性导致的&#xff1b;这里记录一下 子组件如下 <template> <ul><li v-for"b in filterList" :k…

学成在线_内容管理模块_创建模块工程

学成在线模块工程 1.各个微服务依赖基础工程2.每个微服务都是一个前后端分离的项目3.xuecheng-plus-content&#xff1a;内容管理模块工程xuecheng-plus-content-modelxuecheng-plus-content-servicexuecheng-plus-content-api 1.各个微服务依赖基础工程 2.每个微服务都是一个前…

Openstack持久存储-Swift,Cinder,Manila三者之间的区别

总结不易&#xff0c;给个三连吧&#xff01;&#xff01;&#xff01; 补充&#xff1a; 文件共享存储服务Manila 在OpenStack生态系统中&#xff0c;Cinder和Manila分别提供了两种不同类型的存储服务&#xff0c;类似于传统的SAN&#xff08;存储区域网络&#xff09;和NAS&…

数据结构(堆)

一.概念及其介绍 1.堆(Heap)是计算机科学中一类特殊的数据结构的统称。 堆就是以二叉树的顺序存储方式来存储元素&#xff0c;同时又要满足父亲结点存储数据都要大于等于儿子结点存储数据&#xff08;也可以是父亲结点数据都要小于等于儿子结点数据&#xff09;的一种数据结构…

从零深度学习:(2)最小二乘法

今天我们从比较简单的线性回归开始讲起&#xff0c;还是一样我们先导入包 import numpy as np import torch import matplotlib as mpl import matplotlib.pyplot as plt a torch.arange(1,5).reshape(2,2).float() a 我们利用刚刚导入的画图的包将这两个点画出来&#xff0…