【概率和计数】

本文介绍了概率论中的基本概念,包括样本空间和事件,以及概率的定义。文章通过实例解释了概率的计算,强调了有限样本空间和等概率的前提。接着,文章探讨了计数规则,特别是乘法规则,用独立实验的例子进行说明,并应用到从52张扑克牌中选取特定组合的概率计算。此外,还讨论了从n个人中选择k个人的不同情况,尤其是当选择可以重复且不考虑顺序时的计数问题,提出了从n-1+k个位置中选择k个的组合公式。

一些基本概念

样本空间:样本空间表示某个实验所有可能结果的集合

事件:事件是样本空间的子集

概率的简单定义:P(A)=事件A发生的频数样本空间事件个数P(A)=\frac{事件A发生的频数}{样本空间事件个数}P(A)=样本空间事件个数事件A发生的频数

  • 例如假设我们投掷2枚硬币,那么其可能的结果有{HH,HT,TH,TT}

  • 因此P(两次都是反面朝上)=14P(两次都是反面朝上)=\frac14P(两次都是反面朝上)=41

  • 同时这个定义有两个前提假设

    • 样本空间的事件个数是有限的
    • 样本空间中所有事件发生的概率是相同的

计数规则

整体上我们使用的是乘法规则,即假设我们做了rrr个独立的实验,第一次实验的实验结果有n1n_1n1种,第二次实验结果有n2n_2n2种,第rrr次实验结果有nrn_rnr种,那么这些组合实验的实验结果有

在 **Prestera 交换设备** 中,**采样(Sampling)** **计数(Counting)** 是 **Packet Analyzer(PA)** 系统中用于监控统计特定数据包流量的两个关键功能。它们允许用户对符合特定规则的数据包进行跟踪、计数或记录,以帮助进行网络调试、性能分析异常检测。 --- ### 🔍 采样(Sampling) **采样** 是指从数据流中选择一部分数据包进行分析,而不是对所有数据包进行处理。这样可以降低系统资源消耗,同时仍然获取具有代表性的数据。 #### 采样的常见方式: - **随机采样(Random Sampling)**:以一定概率抽取数据包。 - **周期性采样(Periodic Sampling)**:每隔固定数量的数据包抽取一个。 - **基于规则的采样(Rule-based Sampling)**:根据预定义规则(如字段匹配)选择数据包。 #### 采样相关配置: - 在创建 **Action** 时启用采样功能: ```c actionConfig.samplingEnable = GT_TRUE; ``` --- ### 📊 计数(Counting) **计数** 是指对符合特定规则的数据包进行统计,记录其匹配次数。这是最常用的监控手段之一。 #### 计数器的使用方法: - 在定义 **Action** 时指定动作类型为 `COUNT`: ```c actionConfig.actionType = CPSS_DXCH_PACKET_ANALYZER_ACTION_TYPE_COUNT_E; ``` #### 获取计数结果: - 使用 API 获取某个规则的匹配计数: ```c cpssDxChPacketAnalyzerRuleMatchCounterGet(devNum, paManagerId, ruleId, &matchCounter); ``` --- ### 🧩 示例:配置采样计数 ```c /* 定义 Action:计数 + 采样 */ CPSS_DXCH_PACKET_ANALYZER_ACTION_STC actionConfig; actionConfig.actionType = CPSS_DXCH_PACKET_ANALYZER_ACTION_TYPE_COUNT_E; actionConfig.samplingEnable = GT_TRUE; /* 创建 Action */ cpssDxChPacketAnalyzerActionCreate(devNum, paManagerId, actionId, &actionConfig); /* 创建 Rule 并绑定 Action */ cpssDxChPacketAnalyzerRuleCreate(devNum, paManagerId, ruleId, keyId, fieldValue, actionId); /* 激活 Group 开始匹配 */ cpssDxChPacketAnalyzerGroupActivateEnableSet(devNum, paManagerId, groupId, GT_TRUE); /* 获取匹配计数 */ cpssDxChPacketAnalyzerRuleMatchCounterGet(devNum, paManagerId, ruleId, &matchCounter); printf("Matched packets count: %d\n", matchCounter); ``` --- ### ✅ 小结 | 功能 | 描述 | |------|------| | **采样(Sampling)** | 有选择地抽取部分数据包用于分析,节省资源 | | **计数(Counting)** | 统计符合规则的数据包数量,用于监控分析 | | **配置方式** | 在 Action 中设置 `samplingEnable` `actionType` | | **查看结果** | 使用 `cpssDxChPacketAnalyzerRuleMatchCounterGet` 获取计数 | ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菜鸟炼丹师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值