Changeset 068d7aa7 in rtems


Ignore:
Timestamp:
Feb 5, 2008, 10:28:17 PM (11 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.9, master
Children:
5c62b53
Parents:
19cbe603
Message:

2008-02-05 Joel Sherrill <joel.sherrill@…>

  • networking/networkapp.t: Add configuration parameters for network stack efficiency multiplier and default socket buffer sizes.
Location:
doc
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • doc/ChangeLog

    r19cbe603 r068d7aa7  
     12008-02-05      Joel Sherrill <joel.sherrill@oarcorp.com>
     2
     3        * networking/networkapp.t: Add configuration parameters for network
     4        stack efficiency multiplier and default socket buffer sizes.
     5
    162008-02-01      Joel Sherrill <joel.sherrill@oarcorp.com>
    27
  • doc/networking/networkapp.t

    r19cbe603 r068d7aa7  
    9696  char                *name_server[3];         /* BOOTP      */
    9797  char                *ntp_server[3];          /* BOOTP      */
     98  unsigned long        sb_efficiency;          /* 2          */
     99  /* UDP TX: 9216 bytes */
     100  unsigned long        udp_tx_buf_size;
     101  /* UDP RX: 40 * (1024 + sizeof(struct sockaddr_in)) */
     102  unsigned long        udp_rx_buf_size;
     103  /* TCP TX: 16 * 1024 bytes */
     104  unsigned long        tcp_tx_buf_size;
     105  /* TCP TX: 16 * 1024 bytes */
     106  unsigned long        tcp_rx_buf_size;
    98107@};
    99108@end group
     
    144153@item char *gateway
    145154The Internet host number of the network gateway machine,
    146 specified in `dotted decimal' (@code{129.128.4.1}) form.
     155specified in 'dotted decimal' (@code{129.128.4.1}) form.
    147156
    148157@item char *log_host
     
    157166The Internet host numbers of up to three machines to be used as
    158167Network Time Protocol (NTP) Servers.
     168
     169@item unsigned long sb_efficiency
     170This is the first of five configuration parameters related to
     171the amount of memory each socket may consume for buffers.  The
     172TCP/IP stack reserves buffers (e.g. mbufs) for each open socket.  The
     173TCP/IP stack has different limits for the transmit and receive
     174buffers associated with each TCP and UDP socket.  By tuning these
     175parameters, the application developer can make trade-offs between
     176memory consumption and performance.  The default parameters favor
     177performance over memory consumption.  See
     178@uref{http://www.rtems.org/ml/rtems-users/2004/february/msg00200.html}
     179for more details but note that after the RTEMS 4.8 release series,
     180the sb_efficiency default was changed from @code{8} to @code{2}.
     181
     182The user should also be aware of the @code{SO_SNDBUF} and @code{SO_RCVBUF}
     183IO control operations.  These can be used to specify the
     184send and receive buffer sizes for a specific socket.  There
     185is no standard IO control to change the @code{sb_efficiency} factor.
     186
     187The @code{sb_efficiency} parameter is a buffering factor used
     188in the implementation of the TCP/IP stack.  The default is @code{2}
     189which indicates double buffering.  When allocating memory for each
     190socket, this number is multiplied by the buffer sizes for that socket.
     191
     192@item unsigned long udp_tx_buf_size
     193This configuration parameter specifies the maximum amount of
     194buffer memory which may be used for UDP sockets to transmit
     195with.  The default size is 9216 bytes which corresponds to
     196the maximum datagram size.
     197
     198@item unsigned long udp_rx_buf_size
     199This configuration parameter specifies the maximum amount of
     200buffer memory which may be used for UDP sockets to receive
     201into.  The default size is the following length in bytes:
     202
     203@example
     20440 * (1024 + sizeof(struct sockaddr_in)
     205@end example
     206
     207@item unsigned long tcp_tx_buf_size
     208This configuration parameter specifies the maximum amount of
     209buffer memory which may be used for TCP sockets to transmit
     210with.  The default size is sixteen kilobytes.
     211
     212@item unsigned long tcp_rx_buf_size
     213This configuration parameter specifies the maximum amount of
     214buffer memory which may be used for TCP sockets to receive
     215into.  The default size is sixteen kilobytes.
    159216
    160217@end table
     
    254311@example
    255312static struct rtems_bsdnet_ifconfig netdriver_config = @{
    256         RTEMS_BSP_NETWORK_DRIVER_NAME,
    257         RTEMS_BSP_NETWORK_DRIVER_ATTACH
     313  RTEMS_BSP_NETWORK_DRIVER_NAME,
     314  RTEMS_BSP_NETWORK_DRIVER_ATTACH
    258315@};
    259316struct rtems_bsdnet_config rtems_bsdnet_config = @{
    260         &netdriver_config,
    261         rtems_bsdnet_do_bootp,
     317  &netdriver_config,
     318  rtems_bsdnet_do_bootp,
    262319@};
    263320@end example
Note: See TracChangeset for help on using the changeset viewer.