[dpdk-dev] [PATCH v6] Add toeplitz hash algorithm used by RSS

2015-07-27 Thread Vladimir Medvedkin
re ')' token > /u/zlu.bjg/git/dpdk.org/tile-tilegx-linuxapp-gcc/include/rte_thash.h:158: > warning: unused parameter 'targ' > make[3]: *** [test_thash.o] Error 1 > make[2]: *** [test] Error 2 > make[1]: *** [app] Error 2 > make: *** [all] Error 2 > > Thanks > -Zhigang Lu >

[dpdk-dev] [PATCH] Make the thash library arch-independent

2015-07-28 Thread Vladimir Medvedkin
Signed-off-by: Vladimir Medvedkin --- lib/librte_hash/rte_thash.h | 21 - 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/lib/librte_hash/rte_thash.h b/lib/librte_hash/rte_thash.h index 6156e8a..ddb650a 100644 --- a/lib/librte_hash/rte_thash.h +++ b/lib

[dpdk-dev] [PATCH] Make the thash library arch-independent

2015-07-28 Thread Vladimir Medvedkin
Hi Thomas, 2015-07-28 16:47 GMT+03:00 Thomas Monjalon : > Hi Vladimir, > Thanks for fixing. > Comments below. > > 2015-07-28 09:06, Vladimir Medvedkin: > > Signed-off-by: Vladimir Medvedkin > > Please explain how it was broken and how you fixed it. > It would be

[dpdk-dev] [PATCH] Make the thash library arch-independent

2015-07-28 Thread Vladimir Medvedkin
2015-07-28 19:05 GMT+03:00 Thomas Monjalon : > 2015-07-28 18:33, Vladimir Medvedkin: > > 2015-07-28 16:47 GMT+03:00 Thomas Monjalon : > > > 2015-07-28 09:06, Vladimir Medvedkin: > > > Please explain how it was broken and how you fixed it. > > > It wou

[dpdk-dev] [PATCH v2] Make the thash library arch-independent

2015-07-29 Thread Vladimir Medvedkin
v2 changes - Fix SSE to SSE3 typo - remove unnecessary comments - Leave unalligned union rte_thash_tuple if no support for SSE3 - Makes 32bit compiler happy by adding ULL suffix Signed-off-by: Vladimir Medvedkin --- lib/librte_hash/rte_thash.h | 23 +-- 1 file changed, 21

[dpdk-dev] [PATCH v6] Add toeplitz hash algorithm used by RSS

2015-07-29 Thread Vladimir Medvedkin
t; i686-native-linuxapp-gcc/include/rte_thash.h:63: error: integer constant > is too large for 'long' type > i686-native-linuxapp-gcc/include/rte_thash.h:63: error: integer constant > is too large for 'long' type > > > Thanks, > Michael > > On 2015/7/27 4:58, Vladimir Medv

[dpdk-dev] [PATCH v4] Add toeplitz hash algorithm used by RSS

2015-06-19 Thread Vladimir Medvedkin
@@ +/*- + * BSD LICENSE + * + * Copyright(c) 2015 Vladimir Medvedkin + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions

[dpdk-dev] [PATCH] Add unit test for thash library

2015-06-19 Thread Vladimir Medvedkin
est/test_thash.c new file mode 100644 index 000..4c863cc --- /dev/null +++ b/app/test/test_thash.c @@ -0,0 +1,164 @@ +/*- + * BSD LICENSE + * + * Copyright(c) 2015 Vladimir Medvedkin + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * m

[dpdk-dev] [PATCH v2] Add unit test for thash library

2015-06-19 Thread Vladimir Medvedkin
t test! diff --git a/app/test/test_thash.c b/app/test/test_thash.c new file mode 100644 index 000..148fd0a --- /dev/null +++ b/app/test/test_thash.c @@ -0,0 +1,157 @@ +/*- + * BSD LICENSE + * + * Copyright(c) 2015 Vladimir Medvedkin + * All rights reserved. + * + * Redistribution and

[dpdk-dev] [PATCH v4] Add toeplitz hash algorithm used by RSS

2015-06-19 Thread Vladimir Medvedkin
Hi Bruce, 2015-06-19 18:59 GMT+03:00 Richardson, Bruce : > > > > -Original Message- > > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Vladimir Medvedkin > > Sent: Friday, June 19, 2015 3:56 PM > > To: dev at dpdk.org > > Subject: [dp

[dpdk-dev] [PATCH] Add unit test for thash library

2015-06-19 Thread Vladimir Medvedkin
2015-06-19 19:14 GMT+03:00 Richardson, Bruce : > > > > -Original Message- > > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Vladimir Medvedkin > > Sent: Friday, June 19, 2015 3:56 PM > > To: dev at dpdk.org > > Subject: [dpdk-dev] [PA

[dpdk-dev] [PATCH v5] Add toeplitz hash algorithm used by RSS

2015-06-19 Thread Vladimir Medvedkin
copyright - rename bswap_mask constant, add rte_ prefix - change rte_ipv[46]_tuple struct - change rte_thash_load_v6_addr prototype v3 changes - Rework API to be more generic - Add sctp_tag into tuple v2 changes - Add ipv6 support - Various style fixes Signed-off-by: Vladimir Medvedkin --- lib

[dpdk-dev] [PATCH v3] Add unit test for thash library

2015-06-19 Thread Vladimir Medvedkin
Add unit test for thash library v3 changes - Fix checkpatch errors v2 changes - fix typo - remove unnecessary comments Signed-off-by: Vladimir Medvedkin --- app/test/Makefile | 2 + app/test/autotest_data.py | 13 app/test/test_thash.c | 176

[dpdk-dev] rte_lpm with larger nexthops or another method?

2015-06-22 Thread Vladimir Medvedkin
Hi Matthew, I just recently thought about next_hop extension. For ipv4 we can do something like: struct rte_lpm_tbl24_entry { /* Stores Next hop or group index (i.e. gindex)into tbl8. */ union { uint32_t next_hop :24; uint32_t tbl8_gindex :24;

[dpdk-dev] rte_lpm with larger nexthops or another method?

2015-06-23 Thread Vladimir Medvedkin
Hi all, Matthew, I think ipv6 lpm code need less changes struct rte_lpm6_tbl_entry { uint32_t next_hop: 21; /**< Next hop / next table to be checked. */ uint32_t depth :8; /**< Rule depth. */ /* Flags. */ uint32_t valid :1; /**< Validation flag.

[dpdk-dev] Can't allocate different number of TX and RX queues for single port of ixgbe NIC

2015-04-28 Thread Vladimir Medvedkin
Hi Pavel, I think mistake is here: -int eth_configure_ret = rte_eth_dev_configure(current_port, tx_queues, rx_queues, _port_conf); +int eth_configure_ret = rte_eth_dev_configure(current_port, rx_queues, tx_queues, _port_conf); according to

[dpdk-dev] Changes to 5tuple IPv4 filters in dpdk v2.0

2015-08-05 Thread Vladimir Medvedkin
Hi Kam, 1) The reason is discussed in http://dpdk.org/ml/archives/dev/2014-September/005179.html 2) No, it's still not supported (on current NICs). At the moment ntuple is supported only by igb and ixgbe. If you look at drivers/net/ixgbe/ixgbe_ethdev.c you can see ntuple_filter_to_5tuple function

[dpdk-dev] Changes to 5tuple IPv4 filters in dpdk v2.0

2015-08-05 Thread Vladimir Medvedkin
; 192.168.0.0/16 instead of host addresses)? What about flow director > filters? > > > --Kam > > On Tue, Aug 4, 2015 at 5:40 PM, Vladimir Medvedkin > wrote: > >> Hi Kam, >> >> 1) The reason is discussed in >> http://dpdk.org/ml/archives/dev/2014-S

[dpdk-dev] rte_lpm with larger nexthops or another method?

2015-06-24 Thread Vladimir Medvedkin
Hi Matthew, I published changes to rte_lpm_tbl24_entry only because it was just an idea :) So rte_lpm_tbl8_entry should look like: struct rte_lpm_tbl8_entry { uint32_t next_hop :24; /**< next hop. */ uint32_t valid :1; /**< Validation flag. */ uint32_t valid_group

[dpdk-dev] [PATCH v5] Add toeplitz hash algorithm used by RSS

2015-06-30 Thread Vladimir Medvedkin
Hi Bruce, 2015-06-29 15:40 GMT+03:00 Bruce Richardson : > On Fri, Jun 19, 2015 at 01:31:13PM -0400, Vladimir Medvedkin wrote: > > Software implementation of the Toeplitz hash function used by RSS. > > Can be used either for packet distribution on single queue NIC > > or

[dpdk-dev] Symmetric RSS Hashing, Part 2

2015-03-28 Thread Vladimir Medvedkin
Hi Matthew, I just verify RSS symmetric in my code, all works great. I have 82599 NIC and dpdk 1.7.0. Moreover, we can use not only 0x6d5a, but repeated random 2 bytes for 4 tuple, and repeated 4 bytes for 2 tuple in rss hash key. Bellow some code: uint8_t my_rss_key[40]; static const struct

[dpdk-dev] Symmetric RSS Hashing, Part 2

2015-03-30 Thread Vladimir Medvedkin
Matthew, I don't use any special tricks to make symmetric RSS work. Furthermore, it works not only with 0x6d5a. Regards, Vladimir 2015-03-28 23:11 GMT+03:00 Matthew Hall : > On Sat, Mar 28, 2015 at 12:10:20PM +0300, Vladimir Medvedkin wrote: > > I just verify RSS symmetric in my

[dpdk-dev] [PATCH v2] Add toeplitz hash algorithm used by RSS

2015-05-05 Thread Vladimir Medvedkin
-by: Vladimir Medvedkin --- lib/librte_hash/Makefile| 1 + lib/librte_hash/rte_thash.h | 209 2 files changed, 210 insertions(+) create mode 100644 lib/librte_hash/rte_thash.h diff --git a/lib/librte_hash/Makefile b/lib/librte_hash/Makefile index

[dpdk-dev] [PATCH v2] Add toeplitz hash algorithm used by RSS

2015-05-07 Thread Vladimir Medvedkin
cation Tag as well as SCTP source and > destination ports for RSS hash. > > Regards, > Andrey > > > -Original Message- > > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Vladimir > > Medvedkin > > Sent: Tuesday, May 5, 2015 2:20 PM > > To: dev a

[dpdk-dev] Who can correct me about 82599 RSS Hash Function

2013-12-12 Thread Vladimir Medvedkin
Hi, First, I hope you configure port_conf->rx_adv_conf.rss_conf.rss_key and .rss_hf properly. Secondly, -for(j=0;j<8;j++){ +for(j=7;j>=0;j--){ Regards, Vladimir 2013/12/11 chen_lp at neusoft.com > > I want calculate the NIC rss hash result by function,but the result is not > right, I don't

[dpdk-dev] TX IP checksum offloading

2013-11-08 Thread Vladimir Medvedkin
Hi, Did you set m->pkt.vlan_macip.f.l2_len = sizeof(struct ether_hdr); m->pkt.vlan_macip.f.l3_len = sizeof(struct ipv4_hdr); fields? Regards, Vladimir 2013/11/7 Daniel Kaminsky > Hi, > > Did anyone had an experience using the PKT_TX_IP_CKSUM flag? > I have an

[dpdk-dev] olflags in SRIOV VF environment

2013-11-12 Thread Vladimir Medvedkin
Hi Prashant, May be it doesn't work due to Known Issues and Limitations (see Release Notes) quote: 6.1 In packets provided by the PMD, some flags are missing In packets provided by the PMD, some flags are missing. The application does not have access to information provided by the hardware

[dpdk-dev] pci_unbind.py failure

2013-11-13 Thread Vladimir Medvedkin
Hi all, I have faced with similar problem on my real environment with 82599 nic. Looks like in some cases rte_eth_dev_count() return 0 instead of real number of igb_uio binded ports. After restarting app several times rte_eth_dev_count() return real number of ports and continue execute normaly.

[dpdk-dev] How to calculate checksum automically with NIC when sending a packet?

2013-11-22 Thread Vladimir Medvedkin
Hi, If you need only ip checksum: struct rte_mbuf *m; m->ol_flags |= PKT_TX_IP_CKSUM; if you need to calculate tcp checksum add also PKT_TX_TCP_CKSUM flag to ol_flags field and caclulate pseudoheader checksum (see get_ipv4_psd_sum() in app/test-pmd/csumonly.c) struct tcp_hdr *th; th->cksum

[dpdk-dev] How to calculate checksum automically with NIC when sending a packet?

2013-11-22 Thread Vladimir Medvedkin
Of course you have to properly set m->pkt.vlan_macip.f.l2_len and m->pkt.vlan_macip.f.l3_len fields. Regards, Vladimir 2013/11/22 Vladimir Medvedkin > Hi, > > If you need only ip checksum: > struct rte_mbuf *m; > m->ol_flags |= PKT_TX_IP_CKSUM; > > if you need

[dpdk-dev] Multiple LCore receiving from same port/queue

2013-10-17 Thread Vladimir Medvedkin
Hi, By default, you can't poll same queue on same port from different lcores. If you need poll same queue on several lcores use locks to avoid race conditions. 2013/10/17 Sambath Kumar Balasubramanian > Hi, > > I have a test dpdk application with 2 lcores receiving packets > using

[dpdk-dev] L3FWD LPM IP lookup performance question

2013-10-01 Thread Vladimir Medvedkin
Hi, Base concepts of algorithm used by LPM (DIR-24-8) described here http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.21.9617=rep1=pdf Best regards, Vladimir On 24/09/2013 15:53, Jun Han wrote: >* Hello,*>**>* We are trying to benchmark L3FWD application and have a >question

[dpdk-dev] L2FWD uses 'too much' CPU

2014-04-01 Thread Vladimir Medvedkin
Hi, One of the objectives of DPDK is avoiding of interrupts, so application (not only L2FWD) polls NIC infineteley. You can look at programmers guide section 24 "Power Management" and "L3 Forwarding with Power Management Sample Application" in Sample Applications User Guide. Regards, Vladimir.

[dpdk-dev] Signature filter for virtual function

2014-08-19 Thread Vladimir Medvedkin
Hi all, According to 82599 datasheet it is possible to route packets to different queues within VF. So in not VT mode rx_queue defines absolute queue number, and in VT rx_queue defines relative queue number within VF. I can make patch later when I will have free time. Regards, Vladimir

[dpdk-dev] pktgen offload checksum flag not able to make it work with pacp packets.

2014-01-27 Thread Vladimir Medvedkin
Hi Banashankar, For proper TCP checksum calculation you have to calculate checksum over pseudo header (see app/test-pmd/cmdline.c) and put result in tcp_hdr->cksum 2014-01-26 Wiles, Roger Keith > Hi Banashankar, > > The tx_conf is used in the pktgen_config_ports() with the >

[dpdk-dev] checking packet drop at NIC

2014-01-31 Thread Vladimir Medvedkin
Hi Sharath, In DPDK interrupts are disabled to eliminate the performance overhead. Interrupts used only for link status change. So you can poll rte_eth_stats_get and check struct rte_eth_stats for errors. Regards, Vladimir 2014-01-31 Sharath > Hi Daniel & all, > > can anyone please let me

[dpdk-dev] [PATCH 0/3] ixgbe: Add L2 Ethertype, SYN and Five tuple queue filters

2014-06-04 Thread Vladimir Medvedkin
and 5-tuple filters implementation. 2. I'll try to send checked patch today. Regards, Vladimir. 2014-05-28 3:09 GMT+04:00 Thomas Monjalon : > Hi Vladimir, > > Seems like hardware filtering becomes useful these days :) > > 2014-05-19 19:51, Vladimir Medvedkin: > > This patc

[dpdk-dev] [PATCH v2 0/3] ixgbe: Add L2 Ethertype, SYN and Five tuple queue filters

2014-06-04 Thread Vladimir Medvedkin
this gives capability to work with pools. This patch functionality can be merged with the patch above. V2 changes: * Fixing various checkpatch.pl errors Vladimir Medvedkin (3): ixgbe: Add L2 ethertype filter for ixgbe ixgbe: Add syn queue filter for ixgbe ixgbe: Add five tuple filter for ixgbe

[dpdk-dev] [PATCH v2 1/3] ixgbe: Add L2 ethertype filter for ixgbe

2014-06-04 Thread Vladimir Medvedkin
This patch adds ability to route packets according to ethertype, priority and pool to certain queue specified in rx_queue field. Signed-off-by: Vladimir Medvedkin --- lib/librte_ether/rte_ethdev.c | 81 + lib/librte_ether/rte_ethdev.h | 78

[dpdk-dev] [PATCH v2 2/3] ixgbe: Add syn queue filter for ixgbe

2014-06-04 Thread Vladimir Medvedkin
This patch adds ability to route TCP packets according to SYN flag presence to certain queue. Signed-off-by: Vladimir Medvedkin --- lib/librte_ether/rte_ethdev.c | 66 + lib/librte_ether/rte_ethdev.h | 63 +++ lib

[dpdk-dev] [PATCH v2 3/3] ixgbe: Add five tuple filter for ixgbe

2014-06-04 Thread Vladimir Medvedkin
This patch adds ability to route packets according to source, destination ip/ports, L4 proto and pool to certain queue. Signed-off-by: Vladimir Medvedkin --- lib/librte_ether/rte_ethdev.c | 81 ++ lib/librte_ether/rte_ethdev.h | 96

[dpdk-dev] [PATCH v2 0/4] NIC filters support for generic filter

2014-06-13 Thread Vladimir Medvedkin
as mine (not counting pools logic), so let's integrate it (it's will be great if jingjing change api according to my remarks). Regards, Vladimir 2014-06-12 19:36 GMT+04:00 Thomas Monjalon : > > 2014-06-11 17:45, Thomas Monjalon: > > > My main concern is that Vladimir Medvedkin su

[dpdk-dev] [PATCH v2 0/4] NIC filters support for generic filter

2014-06-13 Thread Vladimir Medvedkin
lter contains the fields used for comparison > and the queue is acted as result, and another concern is to keep consistent > with flow director?s implementation. > > About your second remark, I will accept it and integrate the change to > patch in new version. > > > > Do

[dpdk-dev] [PATCH v2 0/4] NIC filters support for generic filter

2014-06-14 Thread Vladimir Medvedkin
struct rte_syn_filter *filter, > uint16_t rx_queue)?. > > > > And about the pool and virtualization case, maybe you will send a new > patch about it, maybe me. Whatever, just leave it in future, not include > in this patch. > > > > Thank you! > > Jingjing &g

[dpdk-dev] Crafting a packet for transmission.

2014-03-13 Thread Vladimir Medvedkin
Hi, At first look at https://github.com/Pktgen/Pktgen-DPDK If you need your custom app: - alloc mbuf with rte_pktmbuf_alloc - fill up L2-4 headers fields (look at rte_pktmbuf_append func for example) - send packet via rte_eth_tx_burst Regards, Vladimir 2014-03-13 15:15 GMT+04:00 sabu kurian :

[dpdk-dev] Crafting a packet for transmission.

2014-03-13 Thread Vladimir Medvedkin
please notify me immediately by responding to this email and then > delete it from your system. Me myself is neither liable for the proper and > complete transmission of the information contained in this communication > nor for any delay in its receipt. > > > On Thu, Mar 13, 2014 at

[dpdk-dev] VM L2 control register (PFVML2FLT) configuring in VMDQ mode

2014-03-24 Thread Vladimir Medvedkin
Hi all, I found that there is no way to configure pool behavior, for example accept broadcasts, in VMDQ mode. For SR-IOV there is rte_eth_dev_set_vf_rxmode(), but according to datasheet it doesn't matter whether the 82599's virtual environment operates in IOV mode or in Next Generation VMDq

[dpdk-dev] Questions on use of multiple NIC interfaces

2014-03-28 Thread Vladimir Medvedkin
1. Yes. 2. Yes. Look at programmer's guide section 16 Multi-process support. 3. You can use blacklist eal option. Regards, Vladimir 2014-03-28 13:25 GMT+04:00 Sujith Sankar (ssujith) : > Hi all, > > Could someone answer the following questions about the usage of multiple > NIC interfaces with

[dpdk-dev] Question regarding concurrency and hash table

2014-05-12 Thread Vladimir Medvedkin
Hi, Programmer's guide section 22.1: The hash and LPM libraries are, by design, thread unsafe in order to maintain performance. However, if required the developer can add layers on top of these libraries to provide thread safety. Locking is not needed in all situations, and in both the hash and

[dpdk-dev] [PATCH 0/3] ixgbe: Add L2 Ethertype, SYN and Five tuple queue filters

2014-05-19 Thread Vladimir Medvedkin
this gives capability to work with pools. This patch functionality can be merged with the patch above. Vladimir Medvedkin (3): ixgbe: Add L2 ethertype filter for ixgbe ixgbe: Add syn queue filter for ixgbe ixgbe: Add five tuple filter for ixgbe lib/librte_ether/rte_ethdev.c | 228

[dpdk-dev] [PATCH 1/3] ixgbe: Add L2 ethertype filter for ixgbe

2014-05-19 Thread Vladimir Medvedkin
This patch adds ability to route packets according to ethertype, priority and pool to certain queue specified in rx_queue field. --- lib/librte_ether/rte_ethdev.c | 81 + lib/librte_ether/rte_ethdev.h | 78

[dpdk-dev] [PATCH 2/3] ixgbe: Add syn queue filter for ixgbe

2014-05-19 Thread Vladimir Medvedkin
This patch adds ability to route TCP packets according to SYN flag presence to certain queue. --- lib/librte_ether/rte_ethdev.c | 66 + lib/librte_ether/rte_ethdev.h | 63 +++ lib/librte_pmd_ixgbe/ixgbe/ixgbe_type.h

[dpdk-dev] [PATCH 3/3] ixgbe: Add five tuple filter for ixgbe

2014-05-19 Thread Vladimir Medvedkin
This patch adds ability to route packets according to source, destination ip/ports, L4 proto and pool to certain queue. --- lib/librte_ether/rte_ethdev.c | 81 ++ lib/librte_ether/rte_ethdev.h | 96 ++

[dpdk-dev] [PATCH] Add toeplitz hash algorithm

2015-04-08 Thread Vladimir Medvedkin
Software implementation of the Toeplitz hash function used by RSS. Can be used either for packet distribution on single queue NIC or for simulating of RSS computation on specific NIC (for example after GRE header decapsulating). Signed-off-by: Vladimir Medvedkin --- lib/librte_hash/Makefile

[dpdk-dev] [PATCH] Add toeplitz hash algorithm

2015-04-09 Thread Vladimir Medvedkin
Hi Stephen, 2015-04-09 1:24 GMT+03:00 Stephen Hemminger : > On Wed, 8 Apr 2015 15:06:13 -0400 > Vladimir Medvedkin wrote: > > > Software implementation of the Toeplitz hash function used by RSS. > > Can be used either for packet distribution on single queue NIC > &g

[dpdk-dev] [PATCH] Add toeplitz hash algorithm

2015-04-09 Thread Vladimir Medvedkin
Hi Gleb, 2015-04-09 9:37 GMT+03:00 Gleb Natapov : > On Wed, Apr 08, 2015 at 03:06:13PM -0400, Vladimir Medvedkin wrote: > > Software implementation of the Toeplitz hash function used by RSS. > > Can be used either for packet distribution on single queue NIC > > or

[dpdk-dev] [PATCH v6] Add toeplitz hash algorithm used by RSS

2015-06-30 Thread Vladimir Medvedkin
support - Various style fixes Signed-off-by: Vladimir Medvedkin --- lib/librte_hash/Makefile| 1 + lib/librte_hash/rte_thash.h | 231 2 files changed, 232 insertions(+) create mode 100644 lib/librte_hash/rte_thash.h diff --git a/lib/librte_hash

[dpdk-dev] [PATCH v4] Add unit test for thash library

2015-06-30 Thread Vladimir Medvedkin
Add unit test for thash library v4 changes - Reflect rte_thash.h changes v3 changes - Fix checkpatch errors v2 changes - fix typo - remove unnecessary comments Signed-off-by: Vladimir Medvedkin --- app/test/Makefile | 1 + app/test/test_thash.c | 176

[dpdk-dev] Could not achieve wire speed for 40GE with any DPDK version on XL710 NIC's

2015-07-01 Thread Vladimir Medvedkin
Hi Pavel, Looks like you ran into pcie bottleneck. So let's calculate xl710 rx only case. Assume we have 32byte descriptors (if we want more offload). DMA makes one pcie transaction with packet payload, one descriptor writeback and one memory request for free descriptors for every 4 packets. For

[dpdk-dev] Could not achieve wire speed for 40GE with any DPDK version on XL710 NIC's

2015-07-01 Thread Vladimir Medvedkin
wer and you can easier achieve line rate. > > > > /Bruce > > > >> On Wed, Jul 1, 2015 at 3:06 PM, Vladimir Medvedkin < > medvedkinv at gmail.com> wrote: > >> > Hi Pavel, > >> > > >> > Looks like you ran into pcie bottlenec

[dpdk-dev] Could not achieve wire speed for 40GE with any DPDK version on XL710 NIC's

2015-07-01 Thread Vladimir Medvedkin
uest for new descriptors) = > 111 bytes / packet > > This corresponds to 70.9 Mpps over PCIe 3.0 x8. Assuming 5% DLLP > overhead, rate = 67.4 Mpps > > --Anuj > > > > On Wed, Jul 1, 2015 at 9:40 AM, Vladimir Medvedkin > wrote: > > In case with syn flood you shou

[dpdk-dev] [PATCH v1 0/3] lpm: increase number of next hops for lpm (ipv4)

2015-10-23 Thread Vladimir Medvedkin
Hi all, I also have LPM library implementation. Main points: - First, we don't need two separate structures rte_lpm_tbl8_entry and rte_lpm_tbl24_entry. I think it's better to merge in one rte_lpm_tbl_entry because there is only one difference in name of one bit - valid_group vs ext_entry. Let

[dpdk-dev] [PATCH v1 0/3] lpm: increase number of next hops for lpm (ipv4)

2015-10-25 Thread Vladimir Medvedkin
Hi all, Here my implementation Signed-off-by: Vladimir Medvedkin --- config/common_bsdapp | 1 + config/common_linuxapp | 1 + lib/librte_lpm/rte_lpm.c | 194 +-- lib/librte_lpm/rte_lpm.h | 163 +++ 4

[dpdk-dev] [PATCH v1 0/3] lpm: increase number of next hops for lpm (ipv4)

2015-10-26 Thread Vladimir Medvedkin
m] > > Sent: Monday, October 26, 2015 12:55 PM > > To: Vladimir Medvedkin > > Subject: Re: [dpdk-dev] [PATCH v1 0/3] lpm: increase number of next hops > > for lpm (ipv4) > > > > On Sun, Oct 25, 2015 at 08:52:04PM +0300, Vladimir Medvedkin wrote: > > > Hi

[dpdk-dev] [PATCH v1 0/3] lpm: increase number of next hops for lpm (ipv4)

2015-10-26 Thread Vladimir Medvedkin
commit in my repo is 139debc42dc0a320dad40f5295b74d2e3ab8a7f9 2015-10-26 18:39 GMT+03:00 Michal Jastrzebski < michalx.k.jastrzebski at intel.com>: > esOn Mon, Oct 26, 2015 at 05:03:31PM +0300, Vladimir Medvedkin wrote: > > Hi Michal, > > > > Forwarding class can help u

[dpdk-dev] [PATCH v1 0/3] lpm: increase number of next hops for lpm (ipv4)

2015-10-27 Thread Vladimir Medvedkin
Hi Michal, Try patch below. I will send it via git. Regards, Vladimir 2015-10-26 21:40 GMT+03:00 Matthew Hall : > > I can't apply patch 0001-... , could You check it please? > > I generated it from a rebase of my own copy of DPDK against DPDK upstream > master. > > So I'm not sure why it would

[dpdk-dev] [PATCH v1 0/3] lpm: increase number of next hops for lpm (ipv4)

2015-10-27 Thread Vladimir Medvedkin
Signed-off-by: Vladimir Medvedkin --- config/common_bsdapp | 1 + config/common_linuxapp | 1 + lib/librte_lpm/rte_lpm.c | 194 +-- lib/librte_lpm/rte_lpm.h | 163 +++ 4 files changed, 219 insertions

[dpdk-dev] Release of Packet Journey

2015-10-30 Thread Vladimir Medvedkin
Hi Nikita, First of all thank you for published your project. Please apply this patch below diff --git a/app/acl.h b/app/acl.h index fb2f73a..74a1dd5 100644 --- a/app/acl.h +++ b/app/acl.h @@ -72,4 +72,21 @@ extern struct acl_parm acl_parm_config; extern struct rte_acl_ctx *ipv4_acx[NB_SOCKETS];

[dpdk-dev] lpm patches

2015-10-30 Thread Vladimir Medvedkin
Hi all, 2015-10-30 20:59 GMT+03:00 Matthew Hall : > On Fri, Oct 30, 2015 at 12:00:18PM +, Bruce Richardson wrote: > > Matthew's patches were attachments, I don't think they came through in > patchwork > > correctly :-(, but that is the relevant link there anyway.] > > Let me know if there is

[dpdk-dev] purifier

2016-07-19 Thread Vladimir Medvedkin
Hi all! I decided to open my project's code. It is fast scalable transparent statefull firewall which helps to mitigate transport layer DDoS attacks in datacenter environment. https://github.com/medvedv/purifier It was written with dpdk1.7.1 and I hope to rewrite it with the current stable

[dpdk-dev] perfomance of rte_lpm rule subsystem

2016-04-20 Thread Vladimir Medvedkin
Hi Alexander, Why next_hop is 64 bit long? 2016-04-19 18:46 GMT+03:00 Stephen Hemminger : > On Tue, 19 Apr 2016 14:11:11 +0300 > ? ??? wrote: > > > Hi. > > > > Doing some test with rte_lpm (adding/deleting bgp full table rules) I > > noticed that > > rule subsystem is very slow

[dpdk-dev] [PATCH v2] Add toeplitz hash algorithm used by RSS

2015-05-08 Thread Vladimir Medvedkin
by HW and also will be easily scalable for future > HW. Also, talking about different NICs ? Niantic and Fortville, for > example, have hash keys of different length, so rte_softrss() function > should take into account hash key?s length as well. > > Regards, > > Andrey > &

[dpdk-dev] [PATCH v2] Add toeplitz hash algorithm used by RSS

2015-05-08 Thread Vladimir Medvedkin
v2 changes - Add ipv6 support - Various style fixes Signed-off-by: Vladimir Medvedkin --- lib/librte_hash/Makefile| 1 + lib/librte_hash/rte_thash.h | 207 2 files changed, 208 insertions(+) create mode 100644 lib/librte_hash/rte_thash.h diff