xref: /f-stack/doc/F-Stack_Release_Note.md (revision e846ec33)
1a9643ea8Slogwang# F-Stack Release Note
2a9643ea8Slogwang
3a9643ea8Slogwang F-Stack is an open source network framework based on DPDK.
43bd6304cSfengbojiang(姜凤波)
592bcc6b4Sfengbojiang2021.01 F-Stack v1.21
692bcc6b4Sfengbojiang
792bcc6b4Sfengbojiang    1. F-Stack lib:
892bcc6b4Sfengbojiang  - Fix use after free issue in mbuf free. #565 #556 @tanjianfeng @zouyonghao @freak82
992bcc6b4Sfengbojiang  - Fix insufficient condition in ff_rte_frm_extcl function.
1092bcc6b4Sfengbojiang  - Fix wrong msg_flags in struct msghdr after calling ff_recvmsg in a Linux application.
1192bcc6b4Sfengbojiang  - Modify dump codes. @jinhao2
1292bcc6b4Sfengbojiang  - Feature knictl. @pengtianabc
1392bcc6b4Sfengbojiang  - Add configuration options `symmetric_rss` to set whether to use symmetric RSS.
1492bcc6b4Sfengbojiang  - Add IPv6 net addr parameters in config. @zengyi1001
1592bcc6b4Sfengbojiang  - Add `ff_regist_pcblddr_fun` to regist a pcb lddr function in F-Stack.
1692bcc6b4Sfengbojiang  - Config: Support parse "--file-prefix"&"--pci-whitelist" for multi-processes. @hawkxiang
1792bcc6b4Sfengbojiang  - Support rte_flow_isolate for multi lcore. @hawkxiang
1892bcc6b4Sfengbojiang
1992bcc6b4Sfengbojiang  2. Nginx:
2092bcc6b4Sfengbojiang
2192bcc6b4Sfengbojiang  - Fix some issues of nginx transparent proxy. @rolfliu
2292bcc6b4Sfengbojiang
2392bcc6b4Sfengbojiang  3. micro_thread:
2492bcc6b4Sfengbojiang
2592bcc6b4Sfengbojiang  - Add micro_thread_auto_adjust_thread_cnt. @WoolenWang
2692bcc6b4Sfengbojiang  - Fix compile error of micro_thread with gcc 8.3. @Xin Wang
2792bcc6b4Sfengbojiang
2892bcc6b4Sfengbojiang  4. Tools:
2992bcc6b4Sfengbojiang
3092bcc6b4Sfengbojiang  - Fix a crash bug while use `ff_ifconfig`.
3192bcc6b4Sfengbojiang  - Fix bug of `ff_sysctl`.
3292bcc6b4Sfengbojiang  - Fix some other bugs while use ff msg.
3392bcc6b4Sfengbojiang  - IPFW: supported IPv6. @zjwsoft
3492bcc6b4Sfengbojiang  - Add ff_ipc_exit() to clean temp files in /var/ while run F-Stack tools arp/ifconfig/route/ipfw. @zjwsoft
3592bcc6b4Sfengbojiang  - Add ndp tool for ipv6 neighbor. @chopin11
3692bcc6b4Sfengbojiang
3792bcc6b4Sfengbojiang
3892bcc6b4Sfengbojiang  5. DPDK:
3992bcc6b4Sfengbojiang
40*e846ec33Sfengbojiang  - Upgrade to 19.11.6 LTS.
4192bcc6b4Sfengbojiang
4292bcc6b4Sfengbojiang  6. Others:
4392bcc6b4Sfengbojiang
4492bcc6b4Sfengbojiang  - Update README.md. @soroshsabz
4592bcc6b4Sfengbojiang
4692bcc6b4Sfengbojiang
4792bcc6b4Sfengbojiang
48fa64a7ffSjfb88566062019.11 F-Stack v1.20
49fa64a7ffSjfb8856606
50fa64a7ffSjfb8856606  1. F-Stack lib:
51fa64a7ffSjfb8856606
52fa64a7ffSjfb8856606  - Fix some bugs. Corresponding upstream changeset from Freebsd releng-11.0/release-11.1/release-11.2/release-11.3/release-12
53fa64a7ffSjfb8856606  - Fix bug of bind and connect. @jin.hao
54fa64a7ffSjfb8856606  - Fix F-stack compile error in Red Hat 8.0 with gcc 8.2.1.
55fa64a7ffSjfb8856606  - Add IPv6 supported.
56fa64a7ffSjfb8856606  - Add `make install`, and you can not must set `FF_DPDK` and `FF_PATH`.
57fa64a7ffSjfb8856606  - 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
58fa64a7ffSjfb8856606  - Add vlan supported. @dragonorloong
59fa64a7ffSjfb8856606  - Add bonding suopported. *Note: some bond driver can not work with multi processes.*
60fa64a7ffSjfb8856606  - Add `pkt_tx_delay` parameter in `config.ini`.
61fa64a7ffSjfb8856606  - Add `tx_csum_offoad_skip` parameter in `config.ini`. @JayathS
62fa64a7ffSjfb8856606
63fa64a7ffSjfb8856606  2. Nginx:
64fa64a7ffSjfb8856606
65fa64a7ffSjfb8856606  - Upgrade to 1.16.1.
66fa64a7ffSjfb8856606
67fa64a7ffSjfb8856606  3. Redis:
68fa64a7ffSjfb8856606
69fa64a7ffSjfb8856606  - Upgrade to 5.0.5
70fa64a7ffSjfb8856606
71fa64a7ffSjfb8856606  4. Tools:
72fa64a7ffSjfb8856606
73fa64a7ffSjfb8856606  - Fix the crash bug while excute `ff_netstat -n`.
74fa64a7ffSjfb8856606  - IPv6 supported.
75fa64a7ffSjfb8856606  - Add `make install`, and you can use `ff_<tool_name>` to run F-Stack tools.
76fa64a7ffSjfb8856606  - `ff_traffic` support `-P <max process id>` to show traffic info of all processes.
77fa64a7ffSjfb8856606  - `ff_top` support `-P <max process id>` to show cpu usage of all processes.
78fa64a7ffSjfb8856606  - All tools can work in one time.
79fa64a7ffSjfb8856606
80fa64a7ffSjfb8856606  5. DPDK:
81fa64a7ffSjfb8856606
82fa64a7ffSjfb8856606  - Upgrade to 18.11.5 LTS.
83fa64a7ffSjfb8856606
843bd6304cSfengbojiang(姜凤波)2019.11 F-Stack v1.13
853bd6304cSfengbojiang(姜凤波)
863bd6304cSfengbojiang(姜凤波)  1. F-Stack lib:
873bd6304cSfengbojiang(姜凤波)
883bd6304cSfengbojiang(姜凤波)  - Fix some bugs.
893bd6304cSfengbojiang(姜凤波)  - Add interface `ff_dup`, `ff_dup2``ff_ioctl_freebsd`, `ff_getsockopt_freebsd`, `ff_setsockopt_freebsd`.
903bd6304cSfengbojiang(姜凤波)  - Initial parameter `proc-type` can be NULL, default "auto".
913bd6304cSfengbojiang(姜凤波)  - Add "idle_sleep" parameter to reduce CPU usage when no pkts incomming, add `base_virtaddr` parameter for some vms.
923bd6304cSfengbojiang(姜凤波)  - Add arch arm64 compiler options.
933bd6304cSfengbojiang(姜凤波)  - Support Container(Docker).
943bd6304cSfengbojiang(姜凤波)  - Support vlan.
953bd6304cSfengbojiang(姜凤波)
963bd6304cSfengbojiang(姜凤波)  2. Nginx:
973bd6304cSfengbojiang(姜凤波)
983bd6304cSfengbojiang(姜凤波)  - Fix some bugs.
993bd6304cSfengbojiang(姜凤波)  - Hook `getpeername`,`getsockname`,`shutdown`.
1003bd6304cSfengbojiang(姜凤波)  - Support "master_process off".
1013bd6304cSfengbojiang(姜凤波)
1023bd6304cSfengbojiang(姜凤波)  3. Redis:
1033bd6304cSfengbojiang(姜凤波)
1043bd6304cSfengbojiang(姜凤波)  - Reset cpu affinity when new process forked.
1053bd6304cSfengbojiang(姜凤波)
1063bd6304cSfengbojiang(姜凤波)  4. Tools:
1073bd6304cSfengbojiang(姜凤波)
1083bd6304cSfengbojiang(姜凤波)  - Add `traffic` tool.
1093bd6304cSfengbojiang(姜凤波)
1103bd6304cSfengbojiang(姜凤波)  5. DPDK:
1113bd6304cSfengbojiang(姜凤波)
1123bd6304cSfengbojiang(姜凤波)  - Upgrade to 17.11.4 LTS.
113a9643ea8Slogwang
1141fefb4f6Sjohnjiang2018.5 F-Stack v1.12
1151fefb4f6Sjohnjiang
1161fefb4f6Sjohnjiang  1. Fixed some bugs.
1171fefb4f6Sjohnjiang  2. Nginx: host event supported.
1181fefb4f6Sjohnjiang  3. kern_timeout: decrease the cpu usage of timer.
1191fefb4f6Sjohnjiang  4. DPDK: upgrade to 17.11.2 LTS.
1201fefb4f6Sjohnjiang
1214e73363eSlogwang2017.11 F-Stack v1.11
122a9643ea8Slogwang
1234e73363eSlogwang  1. Intel DPDK network I/O module.
1244e73363eSlogwang  2. FreeBSD Network Stack.
1254e73363eSlogwang  3. Nic offload: checksum(IP/TCP/UDP), TSO, VLAN, etc.
1264e73363eSlogwang  4. Network tools: sysctl, ifconfig, route, netstat, top, etc.
1274e73363eSlogwang  5. Firewall supported: ipfw.
1284e73363eSlogwang  6. Netgraph supported: ngctl.
1294e73363eSlogwang  7. Posix-like API: socket,event.
1304e73363eSlogwang  8. Coroutine API.
1314e73363eSlogwang  9. Python bindings for F-Stack: pyfstack.
1324e73363eSlogwang  10. App: Nginx/Redis supported.
133