Print this page
11553 Want pluggable TCP congestion control algorithms
Portions contributed by: Cody Peter Mello <cody.mello@joyent.com>
Reviewed by: Dan McDonald <danmcd@joyent.com>
Reviewed by: Robert Mustacchi <robert.mustacchi@joyent.com>
        
*** 20,30 ****
   */
  /*
   * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
   * Copyright 2019 Joyent, Inc.
   * Copyright (c) 2013, OmniTI Computer Consulting, Inc. All rights reserved.
!  * Copyright (c) 2013, 2016 by Delphix. All rights reserved.
   */
  
  #ifndef _INET_TCP_IMPL_H
  #define _INET_TCP_IMPL_H
  
--- 20,30 ----
   */
  /*
   * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
   * Copyright 2019 Joyent, Inc.
   * Copyright (c) 2013, OmniTI Computer Consulting, Inc. All rights reserved.
!  * Copyright (c) 2013, 2017 by Delphix. All rights reserved.
   */
  
  #ifndef _INET_TCP_IMPL_H
  #define _INET_TCP_IMPL_H
  
*** 560,569 ****
--- 560,571 ----
                                          tcps_propinfo_tbl[56].prop_min_uval
  #define tcps_wroff_xtra                 tcps_propinfo_tbl[57].prop_cur_uval
  #define tcps_dev_flow_ctl               tcps_propinfo_tbl[58].prop_cur_bval
  #define tcps_reass_timeout              tcps_propinfo_tbl[59].prop_cur_uval
  #define tcps_iss_incr                   tcps_propinfo_tbl[65].prop_cur_uval
+ #define tcps_abc                        tcps_propinfo_tbl[67].prop_cur_bval
+ #define tcps_abc_l_var                  tcps_propinfo_tbl[68].prop_cur_uval
  
  
  /*
   * As defined in RFC 6298, the RTO is the average estimates (SRTT) plus a
   * multiple of the deviation estimates (K * RTTVAR):
*** 731,740 ****
--- 733,743 ----
                      mblk_t **, uint32_t, boolean_t, uint32_t *, boolean_t);
  
  /*
   * Input related functions in tcp_input.c.
   */
+ extern void     cc_cong_signal(tcp_t *, uint32_t, uint32_t);
  extern void     tcp_icmp_input(void *, mblk_t *, void *, ip_recv_attr_t *);
  extern void     tcp_input_data(void *, mblk_t *, void *, ip_recv_attr_t *);
  extern void     tcp_input_listener_unbound(void *, mblk_t *, void *,
                      ip_recv_attr_t *);
  extern boolean_t        tcp_paws_check(tcp_t *, const tcp_opt_t *);