xref: /f-stack/doc/F-Stack_Release_Note.md (revision fa64a7ff)
1a9643ea8Slogwang# F-Stack Release Note
2a9643ea8Slogwang
3a9643ea8Slogwang F-Stack is an open source network framework based on DPDK.
43bd6304cSfengbojiang(姜凤波)
5*fa64a7ffSjfb88566062019.11 F-Stack v1.20
6*fa64a7ffSjfb8856606
7*fa64a7ffSjfb8856606  1. F-Stack lib:
8*fa64a7ffSjfb8856606
9*fa64a7ffSjfb8856606  - Fix some bugs. Corresponding upstream changeset from Freebsd releng-11.0/release-11.1/release-11.2/release-11.3/release-12
10*fa64a7ffSjfb8856606  - Fix bug of bind and connect. @jin.hao
11*fa64a7ffSjfb8856606  - Fix F-stack compile error in Red Hat 8.0 with gcc 8.2.1.
12*fa64a7ffSjfb8856606  - Add IPv6 supported.
13*fa64a7ffSjfb8856606  - Add `make install`, and you can not must set `FF_DPDK` and `FF_PATH`.
14*fa64a7ffSjfb8856606  - Add `FF_USE_PAGE_ARRAY` compile switch in `Makefile`, turn on it will not use mcopy when transmit packetes from bsd to dpdk. @jin.hao
15*fa64a7ffSjfb8856606  - Add vlan supported. @dragonorloong
16*fa64a7ffSjfb8856606  - Add bonding suopported. *Note: some bond driver can not work with multi processes.*
17*fa64a7ffSjfb8856606  - Add `pkt_tx_delay` parameter in `config.ini`.
18*fa64a7ffSjfb8856606  - Add `tx_csum_offoad_skip` parameter in `config.ini`. @JayathS
19*fa64a7ffSjfb8856606
20*fa64a7ffSjfb8856606  2. Nginx:
21*fa64a7ffSjfb8856606
22*fa64a7ffSjfb8856606  - Upgrade to 1.16.1.
23*fa64a7ffSjfb8856606
24*fa64a7ffSjfb8856606  3. Redis:
25*fa64a7ffSjfb8856606
26*fa64a7ffSjfb8856606  - Upgrade to 5.0.5
27*fa64a7ffSjfb8856606
28*fa64a7ffSjfb8856606  4. Tools:
29*fa64a7ffSjfb8856606
30*fa64a7ffSjfb8856606  - Fix the crash bug while excute `ff_netstat -n`.
31*fa64a7ffSjfb8856606  - IPv6 supported.
32*fa64a7ffSjfb8856606  - Add `make install`, and you can use `ff_<tool_name>` to run F-Stack tools.
33*fa64a7ffSjfb8856606  - `ff_traffic` support `-P <max process id>` to show traffic info of all processes.
34*fa64a7ffSjfb8856606  - `ff_top` support `-P <max process id>` to show cpu usage of all processes.
35*fa64a7ffSjfb8856606  - All tools can work in one time.
36*fa64a7ffSjfb8856606
37*fa64a7ffSjfb8856606  5. DPDK:
38*fa64a7ffSjfb8856606
39*fa64a7ffSjfb8856606  - Upgrade to 18.11.5 LTS.
40*fa64a7ffSjfb8856606
413bd6304cSfengbojiang(姜凤波)2019.11 F-Stack v1.13
423bd6304cSfengbojiang(姜凤波)
433bd6304cSfengbojiang(姜凤波)  1. F-Stack lib:
443bd6304cSfengbojiang(姜凤波)
453bd6304cSfengbojiang(姜凤波)  - Fix some bugs.
463bd6304cSfengbojiang(姜凤波)  - Add interface `ff_dup`, `ff_dup2``ff_ioctl_freebsd`, `ff_getsockopt_freebsd`, `ff_setsockopt_freebsd`.
473bd6304cSfengbojiang(姜凤波)  - Initial parameter `proc-type` can be NULL, default "auto".
483bd6304cSfengbojiang(姜凤波)  - Add "idle_sleep" parameter to reduce CPU usage when no pkts incomming, add `base_virtaddr` parameter for some vms.
493bd6304cSfengbojiang(姜凤波)  - Add arch arm64 compiler options.
503bd6304cSfengbojiang(姜凤波)  - Support Container(Docker).
513bd6304cSfengbojiang(姜凤波)  - Support vlan.
523bd6304cSfengbojiang(姜凤波)
533bd6304cSfengbojiang(姜凤波)  2. Nginx:
543bd6304cSfengbojiang(姜凤波)
553bd6304cSfengbojiang(姜凤波)  - Fix some bugs.
563bd6304cSfengbojiang(姜凤波)  - Hook `getpeername`,`getsockname`,`shutdown`.
573bd6304cSfengbojiang(姜凤波)  - Support "master_process off".
583bd6304cSfengbojiang(姜凤波)
593bd6304cSfengbojiang(姜凤波)  3. Redis:
603bd6304cSfengbojiang(姜凤波)
613bd6304cSfengbojiang(姜凤波)  - Reset cpu affinity when new process forked.
623bd6304cSfengbojiang(姜凤波)
633bd6304cSfengbojiang(姜凤波)  4. Tools:
643bd6304cSfengbojiang(姜凤波)
653bd6304cSfengbojiang(姜凤波)  - Add `traffic` tool.
663bd6304cSfengbojiang(姜凤波)
673bd6304cSfengbojiang(姜凤波)  5. DPDK:
683bd6304cSfengbojiang(姜凤波)
693bd6304cSfengbojiang(姜凤波)  - Upgrade to 17.11.4 LTS.
70a9643ea8Slogwang
711fefb4f6Sjohnjiang2018.5 F-Stack v1.12
721fefb4f6Sjohnjiang
731fefb4f6Sjohnjiang  1. Fixed some bugs.
741fefb4f6Sjohnjiang  2. Nginx: host event supported.
751fefb4f6Sjohnjiang  3. kern_timeout: decrease the cpu usage of timer.
761fefb4f6Sjohnjiang  4. DPDK: upgrade to 17.11.2 LTS.
771fefb4f6Sjohnjiang
784e73363eSlogwang2017.11 F-Stack v1.11
79a9643ea8Slogwang
804e73363eSlogwang  1. Intel DPDK network I/O module.
814e73363eSlogwang  2. FreeBSD Network Stack.
824e73363eSlogwang  3. Nic offload: checksum(IP/TCP/UDP), TSO, VLAN, etc.
834e73363eSlogwang  4. Network tools: sysctl, ifconfig, route, netstat, top, etc.
844e73363eSlogwang  5. Firewall supported: ipfw.
854e73363eSlogwang  6. Netgraph supported: ngctl.
864e73363eSlogwang  7. Posix-like API: socket,event.
874e73363eSlogwang  8. Coroutine API.
884e73363eSlogwang  9. Python bindings for F-Stack: pyfstack.
894e73363eSlogwang  10. App: Nginx/Redis supported.
90