diff --git a/docs/aboutvpp/releasenotes/v18.01.rst b/docs/aboutvpp/releasenotes/v18.01.rst
new file mode 100644
index 0000000..e760de2
--- /dev/null
+++ b/docs/aboutvpp/releasenotes/v18.01.rst
@@ -0,0 +1,382 @@
+Release notes for VPP 18.01
+===========================
+
+More than 560 commits since the 17.10 release.
+
+Features
+--------
+
+-  Infrastructure
+
+   -  DPDK 17.11
+   -  TCP Checksum Offload
+   -  Arm64/Arm-v8 support
+   -  SUSE packaging
+   -  bihash_vec8_8 variant
+   -  PCI rework to support VFIO
+   -  chi-squared test calculator
+
+-  SNAT / NAT
+
+   -  One armed NAT
+   -  Twice NAT44
+   -  NAT hairpinning rework
+   -  NAT64 multi-thread
+   -  NAT64 IPFIX
+   -  NAT64 Fragmentation
+   -  NAT: DS-Lite
+   -  Remove old SNAT API
+   -  ACL-based NAT
+
+-  VNET
+
+   -  DNS name resolver
+   -  BIER
+   -  GENEVE Tunnel
+   -  IPSec Openssl 1.1.0 api support
+   -  FIB improvements
+   -  tap v2
+
+-  API
+
+   -  VPP stats (Broadcast & Multicast support)
+   -  SR MPLS
+   -  VPP Object Model (VOM)
+
+-  Host Stack
+
+   -  VPP TCP Stack scale / congestion improvements
+   -  Refactor UDP
+   -  Namespace support
+   -  Session rules table
+   -  VPP Comms Library (VCL) improvements
+
+-  ACL
+
+   -  ACL stats
+
+-  Plugins
+
+   -  Kube-proxy
+   -  L2 Emulation
+   -  Memif
+
+Known issues
+------------
+
+For the full list of issues please refer to fd.io
+`JIRA <https://jira.fd.io>`__.
+
+Issues fixed
+------------
+
+For the full list of fixed issues please refer to:
+
+- fd.io `JIRA <https://jira.fd.io>`__
+- git `commit log <https://git.fd.io/vpp/log/?h=stable/1801>`__
+
+
+API changes
+-----------
+
+===================================== ==================
+Message Name                          Result
+===================================== ==================
+af_packet_set_l4_cksum_offload        definition changed
+api_versions                          definition changed
+app_namespace_add_del                 definition changed
+application_attach                    definition changed
+bier_disp_entry_add_del               definition changed
+bier_disp_entry_details               only in image
+bier_disp_entry_dump                  only in image
+bier_disp_table_add_del               definition changed
+bier_disp_table_details               only in image
+bier_disp_table_dump                  only in image
+bier_imp_add                          definition changed
+bier_imp_del                          definition changed
+bier_imp_details                      only in image
+bier_imp_dump                         only in image
+bier_route_add_del                    definition changed
+bier_route_details                    only in image
+bier_route_dump                       only in image
+bier_table_add_del                    definition changed
+bier_table_details                    only in image
+bier_table_dump                       only in image
+bind_sock_reply                       definition changed
+connect_session_reply                 definition changed
+connect_sock                          definition changed
+connect_uri                           definition changed
+dhcp_proxy_details                    definition changed
+dhcp_proxy_set_vss                    definition changed
+dns_enable_disable                    definition changed
+dns_name_server_add_del               definition changed
+dns_resolve_ip                        definition changed
+dns_resolve_name                      definition changed
+dslite_add_del_pool_addr_range        definition changed
+dslite_set_aftr_addr                  definition changed
+geneve_add_del_tunnel                 definition changed
+geneve_tunnel_details                 only in image
+geneve_tunnel_dump                    only in image
+ip_add_del_route                      definition changed
+ip_container_proxy_add_del            definition changed
+ip_mroute_add_del                     definition changed
+ip_neighbor_details                   definition changed
+ip_punt_police                        definition changed
+ip_punt_redirect                      definition changed
+ipsec_sa_details                      only in image
+ipsec_sa_dump                         only in image
+ipsec_sad_add_del_entry               definition changed
+ipsec_tunnel_if_set_key               definition changed
+ipsec_tunnel_if_set_sa                definition changed
+kp_add_del_pod                        definition changed
+kp_add_del_vip                        definition changed
+kp_conf                               definition changed
+l2_emulation                          definition changed
+l2_fib_table_details                  definition changed
+l2fib_add_del                         definition changed
+memclnt_keepalive                     definition changed
+memfd_segment_create                  definition changed
+mpls_ip_bind_unbind                   definition changed
+mpls_route_add_del                    definition changed
+nat44_add_del_address_range           definition changed
+nat44_add_del_identity_mapping        definition changed
+nat44_add_del_interface_addr          definition changed
+nat44_add_del_lb_static_mapping       definition changed
+nat44_add_del_static_mapping          definition changed
+nat44_address_details                 definition changed
+nat44_del_session                     definition changed
+nat44_forwarding_enable_disable       definition changed
+nat44_forwarding_is_enabled           definition changed
+nat44_identity_mapping_details        only in image
+nat44_identity_mapping_dump           only in image
+nat44_interface_addr_details          definition changed
+nat44_lb_static_mapping_details       definition changed
+nat44_static_mapping_details          definition changed
+nat64_add_del_interface_addr          definition changed
+nat_get_reass                         definition changed
+nat_reass_details                     only in image
+nat_reass_dump                        only in image
+nat_set_reass                         definition changed
+reset_vrf                             definition changed
+session_rule_add_del                  definition changed
+session_rules_details                 only in image
+session_rules_dump                    only in image
+snat_add_address_range                definition changed
+snat_add_del_interface_addr           definition changed
+snat_add_det_map                      definition changed
+snat_add_static_mapping               definition changed
+snat_address_details                  only in file
+snat_address_dump                     only in file
+snat_control_ping                     definition changed
+snat_det_close_session_in             definition changed
+snat_det_close_session_out            definition changed
+snat_det_forward                      definition changed
+snat_det_get_timeouts                 definition changed
+snat_det_map_details                  only in file
+snat_det_map_dump                     only in file
+snat_det_reverse                      definition changed
+snat_det_session_details              only in file
+snat_det_session_dump                 only in file
+snat_det_set_timeouts                 definition changed
+snat_interface_add_del_feature        definition changed
+snat_interface_add_del_output_feature definition changed
+snat_interface_addr_details           only in file
+snat_interface_addr_dump              only in file
+snat_interface_details                only in file
+snat_interface_dump                   only in file
+snat_interface_output_feature_details only in file
+snat_interface_output_feature_dump    only in file
+snat_ipfix_enable_disable             definition changed
+snat_set_workers                      definition changed
+snat_show_config                      definition changed
+snat_static_mapping_details           only in file
+snat_static_mapping_dump              only in file
+snat_user_details                     only in file
+snat_user_dump                        only in file
+snat_user_session_details             only in file
+snat_user_session_dump                only in file
+snat_worker_details                   only in file
+snat_worker_dump                      only in file
+sockclnt_create                       definition changed
+sockclnt_delete                       definition changed
+sr_localsids_details                  only in image
+sr_localsids_dump                     only in image
+sr_mpls_policy_add                    definition changed
+sr_mpls_policy_assign_endpoint_color  definition changed
+sr_mpls_policy_del                    definition changed
+sr_mpls_policy_mod                    definition changed
+sr_mpls_steering_add_del              definition changed
+sr_set_encap_source                   definition changed
+stn_add_del_rule                      definition changed
+stn_rule_details                      only in image
+stn_rules_dump                        only in image
+sw_interface_set_geneve_bypass        definition changed
+sw_interface_set_lldp                 definition changed
+sw_interface_set_rx_mode              definition changed
+sw_interface_tap_v2_details           only in image
+sw_interface_tap_v2_dump              only in image
+tap_create_v2                         definition changed
+tap_delete_v2                         definition changed
+udp_encap_add_del                     definition changed
+udp_encap_details                     only in image
+udp_encap_dump                        only in image
+vnet_ip4_mfib_counters                only in image
+vnet_ip6_mfib_counters                only in image
+want_ip4_mfib_stats                   definition changed
+want_ip6_mfib_stats                   definition changed
+===================================== ==================
+
+Found 142 api message signature differences
+
+Patches that changed API definitions
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+* ``./src/examples/sample-plugin/sample/sample.api`` 0d056e5e vppapigen:
+  support per-file (major,minor,patch) version stamps
+* ``./src/vnet/interface.api b8d4481a`` Break up vpe.api ad8015be devices: Add
+  binary API for set interface rx-mode 0d056e5e vppapigen: support
+  per-file (major,minor,patch) version stamps
+* ``./src/vnet/feature/feature.api`` b8d4481a Break up vpe.api
+* ``./src/vnet/srv6/sr.api`` 1a5e301f SRv6 improvements to binary API 0d056e5e
+  vppapigen: support per-file (major,minor,patch) version stamps
+* ``./src/vnet/bier/bier.api`` be302d72 BIER coverity fix in route downlaod
+  ceb4d05b BIER disposition default route fa1da15c BIER: API documentation
+  fixes. 9128637e BIER in non-MPLS netowrks d792d9c0 BIER
+* ``./src/vnet/vxlan-gpe/vxlan_gpe.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/vnet/unix/tap.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/vnet/lldp/lldp.api`` 9a6fcef4 LLDP: Add Management Address TLV
+  0d056e5e vppapigen: support per-file (major,minor,patch) version stamps
+* ``./src/vnet/dns/dns.api`` d2080159 Add reverse DNS (ip to name) resolution
+  6545716c VPP-1027: DNS name resolver
+* ``./src/vnet/session/session.api`` dcf55ce2 vppcom: improve listener session
+  handling 6e8c6679 session: add app ns index to ns create api c97a7398
+  session: add rule tags 6c36f53f session: add api to dump rules 1c710451
+  session: rules tables ade70e45 session: return local transport endpoint
+  in connect reply cea194d8 session: add support for application
+  namespacing 0d056e5e vppapigen: support per-file (major,minor,patch)
+  version stamps
+* ``./src/vnet/devices/af_packet/af_packet.api`` 92b0275a af_packet: invalid
+  TCP/UDP offload checksum on RX node recalculation 0d056e5e vppapigen:
+  support per-file (major,minor,patch) version stamps
+* ``./src/vnet/devices/netmap/netmap.api`` 0d056e5e vppapigen: support
+  per-file (major,minor,patch) version stamps
+* ``./src/vnet/devices/tap/tapv2.api`` 73e7f427 tap_v2: include host-side
+  parameters in the dump binary API 2df39094 tapv2: multiple improvements
+  c99b4cd1 tap_v2: move code to vnet/devices/tap
+* ``./src/vnet/devices/virtio/vhost_user.api`` 0d056e5e vppapigen: support
+  per-file (major,minor,patch) version stamps
+* ``./src/vnet/lisp-gpe/lisp_gpe.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/vnet/srmpls/sr_mpls.api`` 42998828 SR-MPLS: binary API and automated
+  steering
+* ``./src/vnet/l2/l2.api`` b8d4481a Break up vpe.api 57938f63 l2fib: MAC: Fix
+  uint64 to u8 byte array 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/vnet/udp/udp.api`` 810086d8 UDP Encapsulation.
+* ``./src/vnet/policer/policer.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/vnet/bfd/bfd.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/vnet/geneve/geneve.api`` 556033a0 Add API versioning to GENEVE
+  tunnel implementation. b598f1d3 Initial GENEVE TUNNEL implementation and
+  tests.
+* ``./src/vnet/gre/gre.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/vnet/map/map.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/vnet/flow/flow.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/vnet/pg/pg.api`` b8d4481a Break up vpe.api
+* ``./src/vnet/dhcp/dhcp.api`` 70bfcaf4 Add Support of DHCP VSS Type 0 where
+  VPN-ID is ASCII 0d056e5e vppapigen: support per-file (major,minor,patch)
+  version stamps
+* ``./src/vnet/ipsec/ipsec.api`` ca514fda Allow IPsec interface to have SAs
+  reset 75d85609 Add API call to set keys on IPsec tunnel intf 0d056e5e
+  vppapigen: support per-file (major,minor,patch) version stamps 28029530
+  Add API support to dump IPsec SAs
+* ``./src/vnet/mpls/mpls.api`` c42fc05b Remove the unused ‘create VRF if
+  needed’ API parameters b8d4481a Break up vpe.api d792d9c0 BIER d0a59722
+  Revert “Enforce FIB table creation before use” f9342023 Enforce FIB
+  table creation before use 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/vnet/ethernet/p2p_ethernet.api`` 0d056e5e vppapigen: support
+  per-file (major,minor,patch) version stamps
+* ``./src/vnet/span/span.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/vnet/lisp-cp/lisp.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/vnet/lisp-cp/one.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/vnet/vxlan/vxlan.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/vnet/ipsec-gre/ipsec_gre.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/vnet/classify/classify.api`` b8d4481a Break up vpe.api 8527f12b add
+  classify session action set-sr-policy-index 0d056e5e vppapigen: support
+  per-file (major,minor,patch) version stamps
+* ``./src/vnet/ip/punt.api`` b8d4481a Break up vpe.api
+* ``./src/vnet/ip/ip.api`` c42fc05b Remove the unused ‘create VRF if needed’
+  API parameters b8d4481a Break up vpe.api af8dfbf6 Add sw_if_index to the
+  ip_neighbor_details_t response. d792d9c0 BIER 810086d8 UDP
+  Encapsulation. 595992c5 ip: add container proxy api 0164a06d Remove
+  unused ‘not_last’ parameter from ip_add_del_route d0a59722 Revert
+  “Enforce FIB table creation before use” 054c03ac Source Lookup
+  progammable via API f9342023 Enforce FIB table creation before use
+  d91c1dbd punt and drop features: - new IPv4 and IPv6 feature arcs on the
+  punt and drop nodes - new features: - redirect punted traffic to an
+  interface and nexthop - police punted traffic. 0d056e5e vppapigen:
+  support per-file (major,minor,patch) version stamps 6f631156 Distributed
+  Virtual Router Support
+* ``./src/vnet/cop/cop.api`` 0d056e5e vppapigen: support per-file (major,minor,patch) version stamps
+* ``./src/vnet/l2tp/l2tp.api`` 0d056e5e vppapigen: support per-file (major,minor,patch) version stamps
+* ``./src/vpp/oam/oam.api`` b8d4481a Break up vpe.api
+* ``./src/vpp/stats/stats.api`` ff233898 Stats for Multicast FIB 0d056e5e
+  vppapigen: support per-file (major,minor,patch) version stamps
+* ``./src/vpp/api/vpe.api`` b8d4481a Break up vpe.api d792d9c0 BIER 0d056e5e
+  vppapigen: support per-file (major,minor,patch) version stamps b598f1d3
+  Initial GENEVE TUNNEL implementation and tests.
+* ``./src/plugins/ioam/udp-ping/udp_ping.api`` 0d056e5e vppapigen: support
+  per-file (major,minor,patch) version stamps
+* ``./src/plugins/ioam/ip6/ioam_cache.api`` 0d056e5e vppapigen: support
+  per-file (major,minor,patch) version stamps
+* ``./src/plugins/ioam/lib-pot/pot.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/plugins/ioam/lib-trace/trace.api`` 0d056e5e vppapigen: support
+  per-file (major,minor,patch) version stamps
+* ``./src/plugins/ioam/export/ioam_export.api`` 0d056e5e vppapigen: support
+  per-file (major,minor,patch) version stamps
+* ``./src/plugins/ioam/export-vxlan-gpe/vxlan_gpe_ioam_export.api`` 0d056e5e
+  vppapigen: support per-file (major,minor,patch) version stamps
+* ``./src/plugins/ioam/lib-vxlan-gpe/ioam_vxlan_gpe.api`` 0d056e5e vppapigen:
+  support per-file (major,minor,patch) version stamps
+* ``./src/plugins/pppoe/pppoe.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/plugins/dpdk/api/dpdk.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/plugins/acl/acl.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/plugins/gtpu/gtpu.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/plugins/l2e/l2e.api`` 4ec38711 L2 emulation: remove usued
+  ip-table-id from API 55d03788 L2 Emulation
+* ``./src/plugins/flowprobe/flowprobe.api`` 0d056e5e vppapigen: support
+  per-file (major,minor,patch) version stamps
+* ``./src/plugins/nat/nat.api`` 7b929793 Translate matching packets using NAT
+  (VPP-1069) b932d26e NAT: Twice NAT44 (VPP-969) ab7a805f NAT44: identity
+  NAT (VPP-1073) c6fb36fc NAT: Remove old SNAT API (VPP-1070) 0938dcf1
+  NAT64 to use IPv4 address from interface (VPP-1051) efcd1e9e SNAT: IP
+  fragmentation (VPP-890) 8ebe6253 NAT: DS-Lite (VPP-1040) 5ba86f72 NAT:
+  delete session API/CLI (VPP-1041) 36ea2d6d One armed NAT (VPP-1035)
+  0d056e5e vppapigen: support per-file (major,minor,patch) version stamps
+* ``./src/plugins/memif/memif.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/plugins/kubeproxy/kp.api`` c91f5024 Support kube-proxy data plane
+* ``./src/plugins/lb/lb.api`` 0d056e5e vppapigen: support per-file
+  (major,minor,patch) version stamps
+* ``./src/plugins/stn/stn.api`` 0906c5cf Plugin for IP-Address to Interface
+  Punting
+* ``./src/vlibmemory/memclnt.api 0d056e5e`` vppapigen: support per-file
+  (major,minor,patch) version stamps 59b2565c Repair vlib API socket
+  server
