## 3 A Generalized Approach for Multiple Event Types
### Simulations
When the packet generation rate is small and there is sufficient network capacity, the  
Figure 14: Pi values of different types of _Event_ packets for chain topology. Figure 13: Aggregate system throughput for chain topology. successful transmission probability is higher. When the packet generation rate is high and the network becomes congested, the probability of successful transmission becomes smaller. The most important validation here is that when the network is highly congested, the ratio of average \(P_{i}\) values is almost the same as the ratio of price. For example, when the packet generation rate is 272 kbps, \(P_{1}=0.1253\), \(P_{2}=0.2686\), and \(P_{3}=0.5176\), which is in the same ratio as the price for the different types of packets namely, \(2:4:8\). Figure 15 plots the \"value\" as a function of the packet generation rate. We see that the \"value\" of Pricing System is much better than FIFO when network is congested. When the traffic generation rate is low, the \"value\" is smaller than FIFO due to the low utilization of the queue buffer. It is not the case when \(Q_{min}=1/3*QueueSize\) and \(Q_{max}=2/3*QueueSize\), which will be shown in the random topology simulation. Figure 16 to Figure 19 show the simulation results for random topologies; the results are average of \(25\) simulation experiments which corresponds to \(25\) different random topologies. Each random topology contains \(25\) nodes, including a sink. Eight of the nodes send _Non-Event_ packets and \(3\) types of _Event_ packets with the price \(2:4:8\). Other nodes do not generate packets but forward packets to the sink. The X-axis in the figures is the packet generation rate which is the same for each of the different types. In these simulations, we set \(Q_{min}=1/3*QueueSize\) and \(Q_{max}=2/3*QueueSize\) and the dropping functions are linear functions shown in Figure 5.  
Figure 16 shows the throughput of different types of packets using FIFO and our _Pricing System_. First, the throughput of different types packets using FIFO are almost the same, since FIFO does not differentiate different type of packets. Second, when the network is not or lightly congested, FIFO and Pricing System has the similar throughput. But the throughput of _Non-Event_ packets using _Pricing System_ is smaller than that using FIFO, because the _Pricing System_ begins to selectively drop some _Non-Event_ packets so as to avoid congestion. Third, when network is highly congested, the throughput of type \(3\) and type \(2\) packets using Pricing System are much higher than those using FIFO. The _Pricing System_ is able to guarantee higher probability of successful transmission of packets with higher priority when network is congested. Furthermore, the ratio of successful transmission of packets is consistent with the ratio of price decided by the network operator. Figure 15: Comparison of value for chain topology. Figure 17 shows the total throughput of all types of packets using FIFO and our Pricing System. We can see that their throughputs are similar. In a wireless network, throughput increases as packet generation rate increasing. When the network is saturated, the total throughput decreases lightly because of the severe MAC layer contention. The FIFO line is more smooth since FIFO only drop packets when the buffer size is full. However, the pricing line has some randomness, since our _Pricing System_ drop packet using the probability obtained from our optimization algorithm. We show [PERSON]'s Fairness Index of different types of packets in Figure 18. Our optimization algorithm lets packets with the same price have the same probability of success to reach the sink. Our simulation results show that our _Pricing System_ has higher fairness than FIFO. But the fairness of _Non-Event_ packets using _Pricing System_ has lower fairness than FIFO. This is because we drop all _Non-Event_ packets when buffer size is bigger than \(Q_{max}\). Figure 19 shows the simulation results of our newly defined metric \"value\".