1) Parameter t to Analyze for ICM : Currently we Get messages in ICM as below [Thr 5876] *** ERROR => IcmBufFree(id=13/16099): MpiFreeBuf failed (rc=14), MPI_ESTALE: outdated MPI handle [icxxplugin.c 1692] Root cause Analysis : Current values for ICM seems to be tuned further as per SAP Note 2007212. As per SAP Note further tunning need to be done. # Example value for icm/max_conn current value is 500 it is to be set to be higher value like 2000. icm/max_conn = 2000 mpi/total_size_mb For lower Kernel the value and assumptions were as per below.refer to SAP Note 737625 - Parameter recommendations for Internet Communication Manager (ICM) If you have 50 users, 3 requests per click, a keep_alive_value of 30 seconds (if the ICM notices that the resources are scarce, it automatically reduces the timeout for new connections) and an average think time of 20 seconds, the maximum values are as follows: concurrent_conn = 225 and mpi/total_size_mb = 14. With 500 users, 3 requests per click, a keep_alive_timeout of 60 seconds and a think time of 20 seconds, the following maximum values result: concurrent_conn = 4500 and mpi/total_size_mb = 281. If you have 1,000 users, 3 requests per click, a keep_alive_timeout of 30 seconds and a think time of 20 seconds, the maximum values are as follows: concurrent_conn = 4500 and mpi/total_size_mb = 281. With 12,000 users, 3 requests per click, a keep_alive_timeout of 5 seconds and a think time of 30 seconds, the following maximum values result: concurrent_conn = 6000 and mpi/total_size_mb = 375. Check the following parameters. please increase the default settings to avoid the time-out: The 'rdisp/plugin_auto_logout' customizing parameter of the SAP Web Application Server is relevant for the automatic logout of a HTTP link. (The value is in seconds, the default is 1,800 seconds). You should select this parameter with care because in the case of status-dependent Web applications an existing HTTP link occupies resource on the server.
The Internet Connection Manager (ICMAN) parameter 'icm/conn_timeout' sets the maximum time for a HTTP connection setup. The value is in milliseconds, the default is 5,000 milliseconds (5 seconds). The Internet Connection Manager (ICMAN) parameter 'icm/keep_alive_timeout' sets the latent time allowed for an existing HTTP connection. The value is in seconds, the default is 60 seconds. The 'servertimeout' parameter of the Web.xml sets the maximum idle time (in minutes) that a session on the java side before the session times out. The default value is 180 minutes. If this value is set too low, the IC agents can lose their sessions when taking a break or during other inactivity. This parameter is located in the J2EE file structure at: <j2ee home directory>/cluster/server/services/servlet-jsp/work/jsptemp/ jsptemp/icserver/root/web-inf. The parameter 'J2EEHTTPTIMEOUT' in the IC_SYSTEM_PROPERITES xml file sets the length of time that ABAP/BSP wait for a Java connection from the J2EE. If this value is set too low the session will time out when trying to start the IC WebClient. The property can be set in the CRM system with transaction code CRMS_IC_SYSTEM_PROPS. The value set for the http_request_timeout variable in the include CRM_SOAPINCL_TRANSPORT sets the length of time that the Integrated Communication Interface (ICI) waits for an HTTP reponse from a contact center software in certain scenarios. For instace, during IC WebClient start up and login into the contact center. Please refer to the note 805806 for further details. The default timeout value is set to 300 seconds. Refer Note 538405 ( for mpi/total_size_mb ) mpi/total_size_mb = 1000 Note : Assumption: An end user executes 60 requests per peak hour. icm/max_conn = NUMBER_OF_ACTIVE_CONCURRENT_USERS * 1.2 icm/max_sockets = icm/max_conn *2 mpi/total_size_mb = NUMBER_OF_ACTIVE_CONCURRENT_USERS / 10 rdisp/tm_max_no and rdisp/max_comm_entries and gw/max_conn = NUMBER_OF_ACTIVE_CONCURRENT_USERS 2) Parameter Recommendations for Gate way Interface for CRM <-> SAP ECC calls : As per SAP Note 384971 ( SAP parameters for high interface Load ) rdisp/max_comm_entries: 2000 (higher values are possible) Number of communications from and to an instance (not including dialog users). rdisp/max_arq: 2000 (= rdisp/max_comm_entries, higher values are possible)
Limits the maximum number of asynchronous messages used for internal communication to make information known throughout the system. This parameter must be set to the same value as rdisp/max_comm_entries see also Note 311930. gw/max_conn: 2000 (higher values possible) Number of logical connections to a gateway, that is, the number of connected gateways and external programs. gw/max_sys: 2000 Maximum number of Gateway clients Note that an R/3 server is only a single client with regard to Gateway. gw/max_overflow_size: 100000000 (100,000,000) Maximum swap space for CPIC requests in the gateway, uses swap space on the disk, will be used from Core Release 4.6D instead of gw/max_shm_req for all TCP/IP connections. gw/max_shm_req: 400 Maximum number of CPIC requests in the gateway that are in the shared memory. As of Kernel Release 4.6D, it will only be used for SNA connections (for example, R2). It will be ignored elsewhere. If the system does not have any SNA connections, the parameter does not have to be set as of Release 4.6D. rdisp/appc_ca_blk_no: 2000 + 2 * rdisp/wp_no_dia(+vb+vb2+enq+btc+spo) For further details about the calculation, see Note 3223. If the parameter rdisp/tm_max_no or rdisp/max_comm_entries or the number of work processes is increased, this value must be recalculated. Buffer for TCP/IP communication. Note the following: This parameter uses space in the shared memory. Keep in mind the operating system-dependent requirements for some of the 32-bit operating systems regarding pool size and shared memory segments and/or the size of the entire shared memory area (for example, Note 103747).
3) Parameter Recommendations for Network Performance : ( To be Analysed ) Note 1162605 In all cases, you should make sure that you plan your network with a safety margin. The necessary margin depends on the network technology and other factors such as the nature of competing applications running on the same network. As a rule of thumb do not plan total network utilization higher than 75%. You will find a rule of thumb for bandwidth sizing in the document "Front-end Network Requirements for SAP Solutions". C = X * N * D * 0.25 where the parameters are as follows: - C: Bandwidth in kbit/sec that is needed for the Webclient - X: Amount of data per dialog step in kilo bytes - N: Number of active users (independent of the number of sessions) - D: Average number of dialog steps per minute per user - Numerical factor: ~0.25 = 8 (bit/byte) * 1.25 (protocol overhead) * 1/60 (min/s) * safety factor 1.57 (response time, peak load, different technologies). Please note that the factor handles conversion of kbyte to kbit and dialog steps/min to dialog steps/sec Example: The amount X of data transfered per dialog step for CRM Webclient is about 20 kbyte. Let's assume we have N=100 concurrent users which execute a process step every 10 seconds. This delivers D = 6/min. Therefore the required bandwidth only for the CRM scenario would be: C = 20 kbyte * 100 * 6/min * 0,25 (kbit/kbyte) = 3000 kbit/sec = 3 MBit/sec CRM Webclient Network performance investigation points: A. Verify that HTTP 1.1 protocol is activated from server to client Note: CRM Webclient is only supported with HTTP 1.1 protocol Using HTTP 1.1 is the key to make usage of keep-alive of TCP/IP sockets and accordingly reduce the influence of high latency significantly. This means that all network components from the server to the client have to support HTTP 1.1. While most modern browsers and the SAP NetWeaver speak natively HTTP 1.1, sometimes routers, proxies, loadbalancers, firewalls, etc. may downgrade the protocol to HTTP 1.0 if they are not able to communicate
via HTTP 1.1. As HTTP 1.1 is downward compatible to HTTP1.0 the components can fall back to stateless communication without the user recognizing this. Analyze your network traffic for the correct usage of HTTP 1.1. B. Monitor for TCP/IP socket issues On most operating systems there are limitations about the default number of open sockets. E.g. see for SUN Solaris SAP Note 538405. The following lines in the configuration file /etc/system define the number of sockets allowed by the OS: set rlim_fd_max=2048 set rlim_fd_cur=2048 Each socket on the client opens a couterpart socket on the server. If many server side TCP/IP sockets are left open for extended periods of time performance issues can occur. To control this situation review the standard ICM keep_alive_timeout settings described in Note 824554. A reasonable timeout is a balance between client performance requirements and server resources: See http://help.sap.com/saphelp_nw70/helpdata/en/7b/72092aaa1342c5a3af7ce0b9a11ff9/fra meset.htm Quote: "Depending on the type of network connection (internal, LAN, WAN, and so on), it may be best to increase the parameter value. However, the value should not be less than 10 seconds. If, on the other hand, a value is too high, the network connections will be very slow and the performance of the server will suffer." On the client side the Microsoft Internet Explorer e.g. has a built-in keep-alive-timeout of 60 seconds. Nevertheless, there are known issues under Windows XP in case of https connections if not all Microsoft OS patches are implemented. See Note 900804, recommending a minimum of 90 secs for keep_alive_timeout on the server. 3) Caching Client-Side Caching Configuration: Using client-side caching reduces the number of requests crossing the network and therefore the latency effect of "bad" networks. Ideally all static resources are served by the cache whereas most of the dynamically created content is requested from the server. See Note 1162685 for SAP recommended cache settings on the client. See Note 1048388 with recommendations to consider for your own developed BSP pages. Server-Side Caching Configuration: The SAP NetWeaver ICM has a server side cache. See http://help.sap.com/saphelp_nw70/helpdata/en/72/c2153aab4a0c0ee10000000a114084/fr ameset.htm For most static objects using the server side cache reduces calls to the CRM server's database e.g. for the retrieval of objects from the MIME repositories. If you have more than one application server with an ICM, the usage of the SAP Web Dispatcher is recommended. See Note 1040325. You can set up the SAP Web Dispatcher as a Web Cache. See http://help.sap.com/saphelp_nw70/helpdata/en/9f/89e2edfde645fca1636fa8468d2e74/fram eset.htm 4) Load Balancing The SAP WebDispatcher is part of the SAP NetWeaver 2004s (NW7.0) basis of CRM. It is the
central component for load balancing http(s) based client-server communication. Using the SAP WebDispatcher has the following advantages: It is more precise at HTTP load distribution than the Message server and a must in case of mixed J2EE and ABAP content. In case you use a third-party load balancer (e.g. hardware based), make sure session handling respects stickyness and transparency. Otherwise sporadic session losses and security flaws in case the header is mangled may occur. 5) Compression Using HTTP compression reduces the amount of data sent across the network. Especially for "slow" connections compressing content on the server and uncompressing the content on the client is best for performance. Possible performance improvements: The usage of HTTP1.1 is a prerequisite for using compression and mandatory for CRM Webclient. Make sure all components in the network support HTTP1.1 and don't strip the compression of content. This can e.g. be the case if a hardware loadbalancer or proxy based virus scanner requires de-compressing the content for analysis and does not recompress before sending to the client. See SAP Note 1048388 with recommendations to consider for your own developed BSP pages in terms of compression. Make sure you have not disabled compression on the CRM server side. Check if the instance profile parameter ict/disable_compression is not switched to active. See SAP Note 715598 for details. Check, that you have not added something generic (like.htm) to the profile parameter defining objects not to be compressed (in case they are already compressed ones like.jpg). Check that you have not raised the minimum value for objects to be compressed. See SAP Note 1037677. Further information: For general information on network performance improvements possibilities check the SAP Developer Network. In situations where high latency over WAN reduces the performance, using a terminal service can be an alternative. 4) Parameter Recommendations for CRM Web UI Client : a) Browser : SAP note 1114557 tell about Supported browser. As per this Note Internet Explorer -Internet Explorer 8.0 on WIN XP as of R2C -Internet Explorer 7.0 on WIN XP as of R2C -Internet Explorer 7.0 on Vista (32-bit) as of R2C -Internet Explorer 6.0 on WIN XP as of R2C Firefox 2.0 and Firefox 3.0 and Firefox 3.5 on Windows XP: Exceptions to the released scope are: o o o Right to left languages Accessibility Across all applications:
o o Firefox crops long tooltips ActiveX applications: Firefox 2.0, 3.0 and 3.5 MacOS and Linux: Not released The functions of the CRM Interaction Center are not released for SAFARI browsers. b) Caching We highly recommend that caching be active. If caching is not active then the end user will experience slow response the first time they access Webclient pages after every browser restart. We recommend checking for newer versions of stored pages be set to either every time you start the browser or automatic. These setting may be set differently based upon your browser and version. For IE 6.0 these settings can be found under Tools>Internet Options>General>Temporary Internet Files>Settings c) Virus Checker Scriptscan Some Enterprise Virus checking software performs a scan of JavaScripts. This can have a significant performance impact on the Webclient. If you determine that this is impacting Webclient performance refer to SAP note 1061240. Webclient Settings: Assignment Blocks The performance of all CRM processes (example:create Sales Order) is directly related to the number of assignment blocks set as "Display Expanded". We recommend only setting the "Display Expanded" flag for assignment blocks that have a business requirement to be displayed open with every interaction. Browser Back Support Set the flag "Disable Browser Back Support" to lower the number of round trips from the client to the server for every screen change. This is especially useful in high latency network environments. This setting can be found in the configuration under CRM>UI Framework>Technical Role Definition>Define Technical Profile Fast Performance Mode If the user community does not require features such as column width adjusting, drag and drop assignment blocks, and mouseover effects such as underlining and highlighting you can disable these UI features to achieve better performance. This setting is found under Personalize>Personalize Layout>Performance Settings Enable fast Performance mode with fewer UI features = check d) Check Setting of BSP called. SAP Note 1048388 There are many requests in the http stream containing accesses that should be satisfied by the browser's cache, but they are requested again from the webserver. The reason for this is that the content expiration time in the webserver is not set properly (or not set at all). This results in the fact that many MIME files are loaded from the webserver over and over, though they already exist in the browser cache. Some of them are not loaded again completely, but the browser sends a request to the webserver and asks if there is a newer version available (http 304 status code). In the case of an http 304 request the content of the http request is empty, but the headers are still transmitted and the browser waits for the reply. These unnecessary requests can be avoided by setting the expiration time properly, which results in less network traffic. This can be done by changing the expiration time for the mime objects. - Call transaction SE80 - Choose MIME Repository. - Expand the tree to SAP -> BC -> BSP. - Then choose the above mentioned path and repeat the following steps for each necessary static mime file: - Right Click with the mouse on the mime file - Choose "Other functions" -> "Expiration Time Client Cache"
- Enable "Individual Expiry Date" and "Expiry Active" - Then enter under Days "1" Evaluate SAP Note 1171444 Make sure that the system settings for profile parameter ict/exclude_compression do not include *.JS to ensure the basic availability for JS files in your system. Check transaction RZ11 for this. Please see note 1171444 for more detail. 2. Implement the corrections of this note Additionally, please change the following settings manually using transaction SE80: Select BSP application THTMLB_SCRIPTS. Under "Pages with flow logic" delete the following entries clientsidedh.js dh_pluginhtmlb.js menu.js sapajax.js 5. Optimization of Monitoring Activity 6.Patch Update For WEB UI compoenent 7. Web UI Shared Memory Optimization : As per SAP Note 1276708 1. ABAP Shared memory parameter (abap/shared_objects_size_mb) not set high enough. Please set this parameter to a minimum of 350 and increase as necessary. 2. Important shared objects not loaded in SHMM. The following classes are critical to minimize consumption in user session memory. CL_BSP_WD_SHM_AREA (see note 1042618) CL_CRM_GENIL_MODEL_SHM_AREA (see notes 1161923 and 1276708) Note that productive clients will attempt to load these classes automatically. In non-productive clients they will not load automatically (see note 1161923 for background). These classes can be manually loaded for a client in transaction SHMM with the action Start Cons