Commit Graph

222 Commits

Author SHA1 Message Date
Hawker 170b9c333f update init_flow 2021-03-06 19:18:50 +08:00
Hawker d5f823fe01 Replace deprecated filter api with generic flowapi 2021-03-06 19:18:50 +08:00
Hawker 55151ab9d2 Bugfix: support rte_flow_isolate for multi lcore (#562)
* Bugfix: support rte_flow_isolate

init flow isolate mode only run once
2020-11-25 11:31:04 +08:00
fengbojiang 62653ab1a5 Fix bug of `sysctl` in tools/compat/sysctl.c.
The ff msg shouldn't to free while `ff_ipc_send` success but `ff_ipc_recv` failed (such as F-Stack app are breaking by gdb).
2020-11-21 21:27:55 +08:00
zhangxiang10 eff1a060f0 解析file_prefix&pci-whitelist配置 2020-11-17 19:19:19 +08:00
zhangxiang10 c661338e72 解析file_prefix&pci-whitelist配置 2020-11-17 19:04:23 +08:00
fengbojiang 3a84cd1fec User APP can use AF_INET6/PF_INET6 directly whether call ff socket or linux API, such as inet_ntoa/inet_aton. 2020-09-03 01:35:22 +08:00
fengbojiang 1b5649a396 Add configuration options `symmetric_rss` to set whether to use symmetric RSS. 2020-08-30 00:55:08 +08:00
fengbojiang(姜凤波) 56101252f6 upgrade F-STACK_VERSION to 1.21. 2020-06-19 10:54:34 +08:00
johnjiang 37a7c72f09 DPDK: upgrade to DPDK 19.11.2(LTS). 2020-06-18 16:55:50 +00:00
johnjiang e27c5f4e3a Merge branch 'dev' into feature-knictl 2020-05-21 10:56:12 +08:00
pengtian 0b1e7c031e #add knictl support 2020-05-14 18:30:34 +08:00
johnjiang 53638472c1 Merge pull request #475 from jinhao2/dev
modify dump codes.
2020-01-10 14:36:47 +08:00
rolfliu 37720803e1 Fix #43 #434 for Nginx transparent proxy 2020-01-10 14:26:02 +08:00
jinhao2 cd5b4948de update ff_dump_packets 2020-01-08 21:23:33 +08:00
jinhao2 80d23aa1da update indent size 2020-01-08 21:13:12 +08:00
jin.hao1 a2728d1e67 Update ff_config.h
use 4 spaces indent.
2020-01-07 21:10:08 +08:00
jin.hao1 6d051c0454 update config.c
use 4 space other than tab.
2020-01-07 21:04:17 +08:00
jinhao2 ce40395e0c dump packets by core, instead of by ports;without fopen/fclose while dumping 2020-01-08 12:09:40 +08:00
fengbojiang f67a26a199 Add `ip6_fastfwd.c` in `Makefile`. 2019-11-23 11:40:18 +08:00
Jayath Sathyanarayana 316f2a31b4 Merge patch of Configuration param to skip "TX checksum offload", refer #448. 2019-11-04 13:10:27 +08:00
fengbojiang 86cd82dc87 SOCKET: support `SO_REUSEPORT`. 2019-11-04 10:44:07 +08:00
fengbojiang(姜凤波) b99e7124e8 Fixed #426, F-stack compile error in Red Hat 8.0 with gcc 8.2.1. 2019-10-31 15:58:26 +08:00
fengbojiang(姜凤波) 7abbdf7aa5 Fix crash of `netstat -n`, refer #438. 2019-10-29 15:31:14 +08:00
johnjiang a36df1e44e Merge pull request #441 from open-estuary/dev
lib/ff_config.c : Fix data overflow in more than 64 cores
2019-10-24 20:58:16 +08:00
beard-627 868cca5674 lib/ff_config.c 2019-09-18 17:01:54 +08:00
fengbojiang(姜凤波) d39775a93b Fix mac set bug. 2019-09-04 21:37:56 +08:00
fengbojiang(姜凤波) 5fbf4a15eb Bonding: supported. but it can't work in multi-processes, to be fix. 2019-09-04 21:17:10 +08:00
fengbojiang(姜凤波) 1e14958312 packet_dispatcher support vlan. 2019-08-06 22:19:12 +08:00
fengbojiang(姜凤波) 19dac219c8 Merge branch 'master' into dev
Fix bug of kni while set `vlan_strip=0`.
2019-08-06 22:11:54 +08:00
fengbojiang(姜凤波) a20fd2ae31 Fix bug of kni while set `vlan_strip=0`. 2019-08-06 22:05:27 +08:00
root 7a9cdd23b7 KNI: remove the feature of monitor port's link status.
And if you want to use kni, you should do one of two action:
1. `insmod rte_kni.ko carrier=on` while init dpdk running environment.
2. or run `echo 1 > /sys/class/net/veth0/carrier` after enable veth0 up.

Refer #401, but this is not the real reason of #401, it is the DPDK's ENA driver can't work correctly in multi-processes.
2019-07-29 13:38:10 +00:00
fengbojiang(姜凤波) 1068dedc41 Modified vlan code. 2019-07-29 15:29:24 +08:00
HongBo Long 86d95e99f0 set freebsd mbuf vlan information when the vlan_strip is enable && get ether_type error when the vlan_strip is disabled 2019-07-29 15:27:40 +08:00
fengbojiang(姜凤波) c6dae7f8fe Merge branch 'master' into dev
vlan bug fix
2019-07-29 15:08:46 +08:00
fengbojiang(姜凤波) ab2d620de6 Modified vlan code. 2019-07-29 14:47:11 +08:00
johnjiang 8eb6d4d5ae Merge pull request #403 from dragonorloong/master
vlan buf fix
2019-07-29 14:31:51 +08:00
johnjiang 185c857ebb Merge pull request #414 from jinhao2/dev
support more than 32 processes; support 52bytes rsskey; compile failed.
2019-07-29 13:58:21 +08:00
jin.hao1 fd7b974f08 Update ff_dpdk_if.c
update codes.
2019-07-29 08:43:45 +08:00
jin.hao1 a6e2dd0ebd Update ff_dpdk_if.c
code aligned.
2019-07-29 08:42:28 +08:00
fengbojiang(姜凤波) 7e4b7a1537 Merge branch 'master' into dev 2019-07-26 17:37:02 +08:00
10077240 58f65b59d5 fix bug: Can not support more than 32 processes 2019-07-26 16:52:57 +08:00
fengbojiang cea0be3c81 Tools: update top. 2019-07-25 22:33:42 +08:00
fengbojiang(姜凤波) a8ea1bed90 Tools: All tools can work in parallel now. 2019-07-25 17:19:28 +08:00
10077240 c005dd8b8e support more than 32 processes; support 52bytes rsskey; compile failed. 2019-07-25 11:27:30 +08:00
fengbojiang(姜凤波) 7cb21a2b2b IPv6: support multi-processes, deep copy NDP packet and dispatch. 2019-07-17 17:31:47 +08:00
root c84854ee3b IPv6: `netstat` tool support ipv6. 2019-07-15 21:04:09 +08:00
root 3f2c0f7483 Always define FF_IOCTL6, because `top` and other tools not distinguish between inet or inet6 2019-07-15 20:02:58 +08:00
root e49450aae1 Fix define PF_INET6_LINUX 2019-07-15 17:22:15 +08:00
fengbojiang(姜凤波) e499fe2b2a Merge branch 'dev' of https://github.com/F-Stack/f-stack into dev 2019-07-12 20:58:31 +08:00
fengbojiang(姜凤波) adfdf56113 IPv6: FreeBSD stack and f-stack support ipv6. 2019-07-12 20:56:01 +08:00
HongBo Long 2a7631a6bc set freebsd mbuf vlan information when the vlan_strip is enable && get ether_type error when the vlan_strip is disabled 2019-07-09 20:02:42 +08:00
root 5910503df7 fix the issue that set the incorrect crc_strip flag. 2019-07-05 14:45:00 +08:00
jfb8856606 ea837b1efb add `make install` and `make uninstall` in f-tack's lib and tools, refer #396 2019-07-01 19:18:54 +08:00
fengbojiang(姜凤波) dcc64c7196 remove unused code. 2019-06-27 18:21:45 +08:00
fengbojiang(姜凤波) ad241aff99 Add pkt_tx_delay parameter in config.ini.
It should be default while handling large concurrent requests, otherwise
it will reduce the throughput.
But if there are only a little, you can set it to less than 100, even to
0, to reduce the delay of the connection.
2019-06-27 17:44:19 +08:00
fengbojiang(姜凤波) 7f9cfd7ec2 modify RTE_MAX to RTE_ALIGN_CEIL while init mempool. 2019-06-27 12:12:59 +08:00
jfb8856606 d30ea9060e Reupgrade DPDK to 18.11. 2019-06-25 19:12:58 +08:00
fengbojiang(姜凤波) 173e66311e Merge branch 'master' into dev 2019-06-25 17:15:06 +08:00
fengbojiang(姜凤波) d9e0c21a28 Add dispatch API reference. 2019-06-25 12:38:19 +08:00
logwang 5f73f9b957 Merge branch 'dev' into master 2019-05-21 22:19:57 +08:00
10077240 04cef02d60 use 4 spaces instead tab 2019-04-01 15:42:01 +08:00
jin.hao1 6149c27496 Update ff_memory.c 2019-04-01 15:03:51 +08:00
10077240 5bf882b459 modify according to MR.Wang 2019-04-01 14:54:36 +08:00
10077240 0da6ab43f7 modify makefile as needes 2019-03-29 10:49:35 +08:00
10077240 ef5ab85936 not use mcopy when transmit from bsd to dpdk 2019-03-29 10:42:02 +08:00
johnjiang fba559f45b Merge pull request #355 from jinhao2/master
ff_traffic.tx info should save the sent packets
2019-03-18 11:07:06 +08:00
jin.hao1 49d7ad40cc recommit 2019-03-15 18:07:15 +08:00
jin.hao1 268488030d ff_traffic.tx info should save the sent packets
send_burst()  send several pkts which maybe composed by several mbufs, use rte_pktmbuf_pkt_len() to get actual length.
2019-03-15 16:18:17 +08:00
fengbojiang(姜凤波) e8591dc5c0 F-Stack's kni can work on DPDK 18.11 LTS now. 2019-03-14 17:17:58 +08:00
fengbojiang(姜凤波) ee6c3aa356 modify packet_dispatcher to support response package direct. 2019-03-08 15:12:57 +08:00
teacup-on-rockingchair d3f10a087d Add support for getsockopt TCP_INFO 2019-02-24 10:51:25 +02:00
fengbojiang(姜凤波) d3f2221c0c Fix the IP/TCP/UDP csum error of txmode offloads, refer #317. 2019-01-18 18:05:18 +08:00
fengbojiang(姜凤波) 5af785ecea Revert "DPDK:upgrade to 18.11.0 LTS."
This reverts commit 8850115bd8.
2019-01-18 17:27:45 +08:00
fengbojiang 2accbca75e Format code. 2018-12-06 22:41:39 +08:00
jfb8856606 28440c506f DPDK:upgrade to 18.11.0 LTS. 2018-12-06 22:17:51 +08:00
fengbojiang a3bbaff58f CONTAINER(DOCKER): support aggregation model while running in container with OVS-DPDK, refer to #298. 2018-11-27 02:02:38 +08:00
DonBearH cac3602237 Setting FF_DPDK with MACHINE_CPUARCH 2018-11-08 14:57:44 +08:00
DonBearH bf05b3b78b Update Makefile for reserving FF_DPDK for x86
The former patch, which add compiler option for arm64, removes the FF_DPDK for x86.
That's a mistake.
2018-11-08 10:03:22 +08:00
dongbo4 9bd490e8d3 Add arch arm64 compiler options 2018-11-07 08:55:09 +00:00
morishima311 7230b27cf0 fix static building path of FF_DPDK 2018-08-24 16:03:23 +09:00
root dfbc4ac350 Merge branch 'master' of https://github.com/F-Stack/f-stack 2018-08-20 16:46:28 +08:00
root 5523938c5b add `base_virtaddr` config. 2018-08-20 16:44:33 +08:00
zhanghaisen a8636dd5c0 fix for issue 261 2018-08-20 14:54:18 +08:00
fengbojiang c506e4369e add "idle_sleep" to reduce CPU usage when no pkts incomming. 2018-08-18 01:45:11 +08:00
fengbojiang 5a73eef15f fix a traffic bug 2018-08-17 17:42:21 +08:00
fengbojiang 03df98dea2 add traffic tool. 2018-08-16 20:29:12 +08:00
whl739 7b9d3e8700 F-Stack: disable kni module by default.
Some omissions.
2018-06-21 17:51:57 +08:00
whl739 dc42d452ae F-Stack: disable kni module by default.
This commit adds a macro `FF_KNI` to determine whether to enable kni.
In Makefile, uncomment the `FF_KNI=1`, kni will be compiled into f-stack.
2018-06-21 17:39:17 +08:00
whl739 86036c745d Config: if proc-id is not configured, use 0. 2018-06-14 22:50:11 +08:00
logwang 5f219b2cad Merge pull request #230 from mscbg/master
F-stack:fix bug, if ff_veth_softc malloc faild, memory should not be read
2018-06-11 11:10:16 +08:00
yanya b0c07b2440 F-stack:fix bug, if ff_veth_softc malloc faild, memory should no be read. 2018-06-11 10:53:38 +08:00
logwang ee889fa71c Merge pull request #228 from boat0/master
make use of numa when setting up rx/tx queues
2018-06-10 22:01:56 +08:00
Xiaozhou Liu c2eceaad4c make use of numa when setting up rx/tx queues 2018-06-10 20:48:48 +08:00
whl739 867abe45fa Misc: some updates.
1.add interface `ff_dup` and `ff_dup2`.
2.add interface `ff_ioctl_freebsd`/`ff_getsockopt_freebsd`/`ff_setsockopt_freebsd` for tools.
3.initial parameter `proc-type` can be NULL, default "auto".
2018-06-10 20:41:48 +08:00
chenwei 968058581b Fstack: fixbug, bad checksum would lead to memleak of dpdk mbuf 2018-05-30 10:36:16 +08:00
whl739 b3aff0ba02 Fix compling error in the newer version of gcc and openssl.
`RAND_pseudo_bytes` is deprecated in the newer version of openssl.
Use `RAND_bytes` instead.
2018-05-28 21:05:36 +08:00
logwang 2bfe3f2e55 DPDK: upgrade to 17.11.2 LTS.
Changes:
1. This version is downloaded from
https://fast.dpdk.org/rel/dpdk-17.11.2.tar.xz.
2. Adapt the new interface `rte_ring_dequeue_burst`.
3. Change the type of `port_id` from uint8_t to uint16_t.
4. Just link libdpdk.a instead of the other libaries.
5. Install libnuma-dev first.
6. Update the documents.
2018-05-15 17:49:22 +08:00
logwang 5e5c25c329 kern_timeout: decrease the cpu usage of timer.
There's a bug of last version, every tick, the timer will traverse all the
entries in callwheel, when lots of connections comming, the callout
process will use lots of cpu resources.

This commit fixes it, every tick, check the bucket which is hashed with current
tick, if there are entries, compare the callout tick, and invoke
callbacks.
2018-05-10 17:53:18 +08:00
chenwei d16cce93d7 API: [BugFix] On success, `ff_sendmsg` return the number of chars sent. 2018-04-09 11:22:26 +08:00