diff options
author | Hanoh Haim <hhaim@cisco.com> | 2016-02-24 14:55:59 +0200 |
---|---|---|
committer | Hanoh Haim <hhaim@cisco.com> | 2016-02-24 14:55:59 +0200 |
commit | 5a844c9d72411435842e5a0674c6fdc04e5d4e84 (patch) | |
tree | dc2738fe0638ac0ed856c70564bc7096bb33868e /src/stateless/cp/trex_stream.h | |
parent | 9e616d8eecaefbf538174328edfce8fd96336ce6 (diff) | |
parent | 3eb4f868ef5bc728a46c8012c914f6a9381f4cdb (diff) |
Merge GARP example
Diffstat (limited to 'src/stateless/cp/trex_stream.h')
-rw-r--r-- | src/stateless/cp/trex_stream.h | 37 |
1 files changed, 20 insertions, 17 deletions
diff --git a/src/stateless/cp/trex_stream.h b/src/stateless/cp/trex_stream.h index cc05c198..36f9d407 100644 --- a/src/stateless/cp/trex_stream.h +++ b/src/stateless/cp/trex_stream.h @@ -244,29 +244,29 @@ private: double get_pkt_size(); void calculate_from_pps() { - m_bps_L1 = m_pps * (get_pkt_size() + 24) * 8; - m_bps_L2 = m_pps * (get_pkt_size() + 4) * 8; + m_bps_L1 = m_pps * (get_pkt_size() + 20) * 8; + m_bps_L2 = m_pps * get_pkt_size() * 8; m_percentage = (m_bps_L1 / get_line_speed_bps()) * 100.0; } void calculate_from_bps_L1() { - m_bps_L2 = m_bps_L1 * ( (get_pkt_size() + 4.0) / (get_pkt_size() + 24.0) ); - m_pps = m_bps_L2 / (8 * (get_pkt_size() + 4)); + m_bps_L2 = m_bps_L1 * ( get_pkt_size() / (get_pkt_size() + 20.0) ); + m_pps = m_bps_L2 / (8 * get_pkt_size()); m_percentage = (m_bps_L1 / get_line_speed_bps()) * 100.0; } void calculate_from_bps_L2() { - m_bps_L1 = m_bps_L2 * ( (get_pkt_size() + 24.0) / (get_pkt_size() + 4.0)); - m_pps = m_bps_L2 / (8 * (get_pkt_size() + 4)); + m_bps_L1 = m_bps_L2 * ( (get_pkt_size() + 20.0) / get_pkt_size()); + m_pps = m_bps_L2 / (8 * get_pkt_size()); m_percentage = (m_bps_L1 / get_line_speed_bps()) * 100.0; } void calculate_from_percentage() { m_bps_L1 = (m_percentage / 100.0) * get_line_speed_bps(); - m_bps_L2 = m_bps_L1 * ( (get_pkt_size() + 4.0) / (get_pkt_size() + 24.0) ); - m_pps = m_bps_L2 / (8 * (get_pkt_size() + 4)); + m_bps_L2 = m_bps_L1 * ( get_pkt_size() / (get_pkt_size() + 20.0) ); + m_pps = m_bps_L2 / (8 * get_pkt_size()); } @@ -394,11 +394,19 @@ public: } /* create new stream */ - TrexStream * clone() const { + TrexStream * clone(bool full = false) const { /* not all fields will be cloned */ TrexStream *dp = new TrexStream(m_type,m_port_id,m_stream_id); + + /* on full clone we copy also VM */ + if (full) { + m_vm.clone(dp->m_vm); + + } + + /* copy VM DP product */ if (m_vm_dp) { dp->m_vm_dp = m_vm_dp->clone(); } else { @@ -500,10 +508,10 @@ public: /* RX check */ struct { - bool m_enable; + bool m_enabled; bool m_seq_enabled; bool m_latency; - uint32_t m_stream_id; + uint32_t m_user_id; } m_rx_check; @@ -559,12 +567,7 @@ public: */ void remove_stream(TrexStream *stream); - /** - * remove all streams on the table - * memory will be deleted - */ - void remove_and_delete_all_streams(); - + /** * fetch a stream if exists * o.w NULL |