Releases: iqiyi/dpvs
Releases · iqiyi/dpvs
Release v1.7.8: Stability Enhancement
Feature
- IPVS IPv6 tunnel forwarding mode
- IPVS IPv6 over IPv4 tunnel forwarding mode (NAT64 tunnel)
- Enable dedicated queue for bonding mode 4
- Simple ipset and outwall route for IPv4
- DPVS asynchronous logging
- DPVS memory pool
- Add more debug info
Bugfixes
- Fix keepalived vrrp process crash problem
- Fix IPv4 fragment problem for OSPF protocol
- Fix crash problem when cpu worker number over DPVS_MAX_LCORE
- Fix serveral problems in ip_vs_redirect
- Simplify dpvs msg and fix its crash problem
- Fix inaccuracy problem when carry for DPVS timer
- Fix contention problem for DPVS global timer
- Fix templated-conn invalidation problem for DPVS persistent sessions
- Fix some memory leak problems
- Fix some formatting problem
Release v1.7.2: NAT64 support
Features
- NAT64(IPv6-to-IPv4 Forwarding) support for Full-NAT forwarding, including kmods TOA and UOA.
- Connection redirect for the case of FDIR not work, like tunneling ICMP SNAT, multicore NAT forwarding.
- TCP window close support during synproxy.
- HW checksum offload for UDP.
- More flexible RSS modes using bitwise OR.
- Support SAPOOL creation in SNAT mode.
- Weighted fail over scheduler.
- Documentation and examples updates, including config files, tutorials,toa/uoa examples, NAT64 nginx patch.
Bugfixes
- Keepalived: Keep checker's state correct when command fail.
- Conhash: Update dests in a more efficient way.
- Ipvsadm: Fix IPv6 laddr display problem.
- Checksum: Fix checksum problem for packets with IP options or private protocol data(such as UOA).
- ARP: Reply ARP request when IP address matched instead of route matched.
- Route: Remove route entry by refcnt.
- Service: Fix memory leak problem when getting non-existing service, and refcnt problem when getting service failed.
- Netif: Fix assertiong problem when lcore number over 64.
- Inetaddr: Allow existing routes when adding address.
- TOA kmod: Fix crash problem for IPv6 packets.
- Ctrl: Remove useless multicast msg lock.
- Synproxy: Fix mbuf clone problem for TCP retransmission.
- Sapool: Fix SNAT sapool leak problem.
- Indentation fixes.
Feature Checklist
For checked features of v1.7.2, click here.
Notes: Kmod UOA(uoa.ko) for this version is not compatible with previous ones. Update uoa.ko on RealServers when updating DPVS to v1.7.2.
Release v1.7.0: IPv6 support
IPv6
- IPv6 Protocol
- neighbor
- route6
- icmpv6
- inet6 and inet_addr
- ipv6 sapool
- ipv6 extension headers
- IPv6 IPVS forwarding
- support tcp/udp protocol
- support FullNat/Tunnel/DR/NAT mode
- support ipv6 tcp synproxy
- add dual-stack toa
- auxiliary supports
- ipvsadm/keepalived support ipv6
- add ipv6 configs in config file
- dual-stack udp test server and concurrent client
bugfixes
- fix crash problem in consistent hash
- fix conn refcnt problem when freed
- fix port number overflow problem
- fix log type error in neighbor
- fix crash problem when enable forward2kni
- fix dpip coredump problem when dpvs not started
- fix possible crash and connection broken problem when add/del real servers
- add fast_xmit support in nat-mode
- get DPVS version from git tags or commit id
docs and configs
- add frequent asked questions doc: faq.md
- add contributing doc: CONTRIBUTING.md
- update tutorial doc: tutorial.md
- update dpvs config sample files
known issues
- IPv6 flow director is not well-supported by ixgbe driver, only one local ip can be set in signature mode.
- IPv6 snat forwarding has not been tested yet.
- IPv6 tunnel device is not supported.
- IPv6 uoa.ko is not supported.
- Only one slave is slected in bonding mode 4, and cannot perform failover.
- Dpip cannot set nic link down.
- SNAT forwarding cannot ping if packets come from tunnel device and rss is set to 'ip' mode.
- Synproxy consumes too many mbufs when network between dpvs and rs is slow.
- Time consumed by each loop is not fairly equal, long lcore loop happens sometimes and may lead to nic buffer overflow, msg timeout ...
- Dpvs timer does not work properly when timer wheel carry-in happens.
- Packet capture is not well supported.
- Session sharing is not supported.
Release v1.6.1
sched
: consistent hashuoa
support to get UDP client IP/port.- integration with
DPDK 17.1
neigh
state and confirm.- more RSS mode
- performance optimization for
blacklist
,neighbour
, etc. - doc update and VM support.
- bug fix:
timer
: self-contained timer frees itself in handlerdpip
: link show issues withkeepalived
fixes.- other bug fixings.