fengbojiang
f95b80ee63
Support automatic configuration of vlan and vlan ip, routing and the simplest policy routing
...
1. Automatic configuration of multi vlan vip(IPv4 and IPv6).
1.1 And support automatic multi default route for per vlan, via different fib num.
1.2 IPv6 not support set multi route fib now, just use RT_DEFAULT_FIB, And you can set multi fib use tool 'ff_route'.
1.3 If vlan_flag is true, all port's addrs/vips will not to set, just create the iface.
2. Automatic configuration of simple policy routing.
2.1 Only supports the simplest policy routing settings, like:
`ff_ipfw -P 0 add 100 setfib 0 ip from 125.94.59.0/24 to any out`
`from 125.94.59.0/24` need set addr is '125.94.59.0', netmask is '255.255.255.0'
2.2 IPv6 does not support automatic configuration of policy routing. If ipv6 policy routing is required, you still need to use ff_ipfw to manually configure it.
2024-10-17 15:01:51 +08:00
fengbojiang
38d9fdee68
Fix a build error with gcc-13.2.0.
2024-10-12 20:23:04 +08:00
Radu Nichita
6166910faa
Add POSIX Like functions for pthread_create and pthread_join
2024-08-14 10:17:35 +02:00
fengbojiang
ba2a7fe957
Add kni type argument in config.ini and FF_KNI_KNI in lib/Makefile to set exception path type.
...
FF_KNI_KNI disabled by default and then:
type 0 and 1 both use virtio_user.
If enabled FF_KNI_KNI(and you must set meson -Ddisable_libs=flow_classif to re-enable kni driver in DPDK first):
type:0 means use historical kni.
type:1 means use virtio_user(linux only), see https://doc.dpdk.org/guides/howto/virtio_user_as_exception_path.html#virtio-user-as-exception-path .
2023-09-19 18:28:57 +08:00
jfb8856606
fb1e8e99f8
upgrade F-STACK_VERSION to 1.24.
2023-09-13 08:40:14 +00:00
fengbojiang
761dee801d
Add VERSION file in root dir directory and upgrade version to 1.23.
2023-02-15 19:21:58 +08:00
fengbojiang
0763cdeb7f
enable -O2 by default. Ref #711 #721 .
2022-12-30 19:59:23 +08:00
Dmitriy Alexandrov
179cc5ed39
Removed deleted sources from Makefile
2022-11-14 17:44:12 +04:00
hao
4854315d0d
Added FDIR using general flow rules.
...
Added FDIR functionality that does not use flow in isolation mode. This is a part of the research work at RCSLab, University of Waterloo
2022-09-15 20:56:47 -04:00
ZZMarquis
6daadb0b5c
to avoid compiling errors when gcc version >= 10
...
to avoid compiling errors when gcc version >= 10
2022-06-17 22:05:59 +08:00
hao
9f7a1423a0
Added F-Stack FreeBSD support (This is a part of the research work at RCSLab, University of Waterloo)
2022-05-31 19:46:09 -04:00
fengbojiang
791e096154
Set lib/ DEBUG mode default.
2022-05-16 15:49:24 +08:00
fengbojiang
021aaded2c
Support zero copy while call `ff_write`, you can enable it by modify ‘FF_ZC_SEND=1' in `lib/Makefile`.
...
`FF_ZC_SEND` is same as `FF_USE_PAGE_ARRAY`, it will improve performance slightly in some scenarios, need to be tested in combination with real applications.
You can enable both compilation options at the same time or separately.
2022-05-07 12:02:49 +08:00
johnjiang
f35d059e51
Revert "Fix 'FF_KNI' ifdef in Makefile"
2022-01-10 15:39:36 +08:00
thegreathir
dfe277f731
Fix 'FF_KNI' ifdef in Makefile
2021-12-28 13:57:06 +03:30
fengbojiang
f318b88d4e
Modify net.inet.tcp.functions_default from bbr to freebsd, because extra
...
stacks(bbr and rack) can't work normaly now.
2021-10-15 12:52:22 +08:00
fengbojiang
21cfeb4372
Support extra tcp stacks, rack and bbr.
2021-09-23 15:16:09 +08:00
fengbojiang
4093ffd426
Update LICENCE.
2021-09-18 16:05:45 +08:00
fengbojiang
8fe2bf87f3
FreeBSD13 can simply work.
2021-09-18 14:50:06 +08:00
fengbojiang
e7b7fb6cc9
FreeBSD: Upgrade to FreeBSD-releng-13.0 compiled, to be tested.
2021-08-31 19:00:09 +08:00
fengbojiang
7b8cf09355
Support DPDK 20.11.0(LTS).
2021-03-06 19:18:57 +08:00
fengbojiang
4c0b1abdf1
upgrade F-STACK_VERSION to 1.21.
2021-03-06 19:18:57 +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(姜凤波)
56101252f6
upgrade F-STACK_VERSION to 1.21.
2020-06-19 10:54:34 +08:00
fengbojiang
f67a26a199
Add `ip6_fastfwd.c` in `Makefile`.
2019-11-23 11:40:18 +08:00
fengbojiang(姜凤波)
7cb21a2b2b
IPv6: support multi-processes, deep copy NDP packet and dispatch.
2019-07-17 17:31:47 +08:00
fengbojiang(姜凤波)
adfdf56113
IPv6: FreeBSD stack and f-stack support ipv6.
2019-07-12 20:56:01 +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
logwang
5f73f9b957
Merge branch 'dev' into master
2019-05-21 22:19:57 +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
fengbojiang(姜凤波)
e8591dc5c0
F-Stack's kni can work on DPDK 18.11 LTS now.
2019-03-14 17:17:58 +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
5523938c5b
add `base_virtaddr` config.
2018-08-20 16:44:33 +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
logwang
62a0d71654
Ipfw: fix "invalid argument" when using `divert`.
...
Note that this only fix the error, `divert` is still not usable, refer to #136 .
If you want to use NAT, you can just use the built-in `ipfw nat`
instead.
2018-01-08 21:53:39 +08:00
whl739
127dd473af
Add tool: ipfw.
...
ipfw -- interface for firewall, packet scheduler, NAT and so on.
It is comprised of several components: the kernel firewall filter rule processor and its integrated packet accounting facility, the logging facility, NAT, a forward facility, a bridge facility, and an ipstealth facility.
Note that the `dummynet` traffic shaper is not merged.
2017-11-14 16:44:32 +08:00
logwang
3b2bd0f641
Add tool: ngctl.
...
ngctl -- netgraph control utility.
The ngctl utility creates a new netgraph node of type socket which can be used to issue netgraph commands.
2017-11-01 17:38:22 +08:00
logwang
a416aa0841
FreeBSD misc: add a macro to turn on NETGRAPH option and return error when call sleep
2017-10-27 18:08:44 +08:00
logwang
c36e692a8e
Use `KMOD_SRCS` to pass extra kernel module sourcs.
...
For example, if you have an extra FreeBSD kernel module, and want to
compile it into F-Stack, you can do it like this:
```
cd f-stack/lib
export "KMOD_SRCS=/your/kmod/path/a.c /your/kmod/path/b.c"
export "CONF_CFLAGS=-I/your/kmod/path"
make
```
2017-10-25 15:26:01 +08:00
logwang
a1fd9364a9
FreeBSD: add module netgraph.
2017-10-25 14:38:15 +08:00
logwang
8cf1d457cb
Optimize makefile
2017-09-14 15:25:07 +08:00
YuYang
34b2fad45f
use CONF_CFLAGS to pass extra CLFAGS
2017-09-06 10:26:12 +08:00
Andy
08dba0109c
add lvs toa option
2017-09-04 23:19:12 -04:00
logwang
1eaf0ac36a
Add tool: netstat.
...
Including libraries: libutil,libmemstat,libxo.
2017-08-31 21:34:50 +08:00
logwang
3132126c98
Merge branch master of https://github.com/F-Stack/f-stack
2017-06-14 15:38:42 +08:00
logwang
144c6bcd95
Add tool: route.
...
This commit ports FreeBSD `route` to F-Stack, can be used to set the route
table.
2017-06-14 15:25:35 +08:00