✒️SAP BASIS Internet Communication Manager (ICM)
SAP BASIS Internet Communication Manager (ICM)
INTERNET COMMUNICATION MANAGER (ICM)
Las nuevas aplicaciones de SAP Basadas en Business Server Pages (BSPs) y servicios SOAP se implementan en una compañía en el contexto de cambiar a una arquitectura moderna de IT y orientada a servicios.
Como administradores de sistema, es nuestra tarea configurar los sistemas SAP en virtud de estos requerimientos. Para esto, necesitamos tener una visión del proceso central para las conexiones de Intranet e Internet, el Internet Communication Manager (ICM)
ARQUITECTURA DEL PROCESO ICM
Algunos aspectos importantes son:
Soporte para protocolos Web estándar tales como HTTP, HTTPS, WebDAV, SOAP y SMTP.
Salida en formatos Web estándar tales como HTRMl,XML y XSLT
Completa integración dentro del entorno SAP (desarrollo, administración, concepto de autorización, monitoreo y protocolos de comunicación).
El Sap Web Aplication Server puede funcionar tanto como un servidor como un cliente web (rol de servidor y rol de cliente.)
El rol de servidor, el SAP WEB AS acepta y procesa solicitudes HTTP de cualquier cliente WEB (un navegador) y envía una respuesta HTTP.
Dentro de un work process, el Internet Communication Framework (ICF) provee el entorno para manejar las solicitures HTTP.
EL ICF es el puente entre el kernel del SAP y el programa en ABAP.
Desde la versión 6.10 de SAP WEB AS, los work process pueden generar directamente contenido web-compatible de tal forma que pueden ser enviados a un navegador web mediante el ICM.
Una forma de crear contenido de este tipo es utilizar aplicaciones con Business Server Pages (BSPs), estas se desarrollan mediante la transacción SE80.
Desde un punto de vista técnico:
1. El proceso ICM está separado (icman a nivel del sistema operativo) y es iniciado y monitoread por el dispatcher de ABAP.
2. La tarea del ICM es asegurar que el sistema SAP puede comunicarse con el mundo exterior (usando HTTP, HTTPS y SMTP).
En el caso del rol de servidor web, puede procesar solicitudes que llegan desde internet mediante URLs con el servidor y puerto para el cual el ICM está escuchando.
El ICM luego llama al local handler apropiado, dependiendo de la URL.
El proceso ICM utiliza threads (hilos) de ejecución para procesar la carga de trabajo en paralelo.
Los componentes del ICM son:
Thread control: recibe la solicitud TCP/IP entrante y crea (o despierta) un worker thread del pool de threads para procesar la solicitud.
Worker Thread: maneja las solicitudes y respuesta para una conexión. Contiene un administrador I/O para las entradas y salidas de red, varios plug-uins para los diferentes protocolos soportados.
Watchdog: toma el control sobre una tarea que está esperando respuesta (timeout)
Signal Handler: procesa las señales que son enviadas por el sistema operativo u otro proceso tal como el ABAP dispatcher.
Connection info: tabla que contiene información sobre las conexiones de red existentes.
Memory Pipes: objetos de comunicación basados en memoria que permita la transferencia de datos entre el ICM y el work process ABAP.
El ICM usa plug-ins para implementar varios protocolos de comunicación. HTTP, HTTPS y SMTP pueden usarse nada más instalar el SAP WEB AS.
INTERNET SERVER CACHE (ISC)
El Internet Server Cache (ICS) es una parte del ICM que es importante para el rendimiento.
Almacena objetos HTTP(S) antes de que sean enviados al navegado Web. Mientras no haya vencido el tiempo de expiración la próxima solicitud de un objeto la cargara desde la cache.
Algunos aspectos del ISC:
Jerarquía de dos niveles: cuando se almacenan objetos, las ventajas de la velocidad de la memoria principal (cache de memoria) y la capacidad de almacenamiento (chace de disco) son utilizadas.
Cacheo dinámico: El ISC pude almacenar en cache contenido dinámico tal como las páginas JSP o BSP.
Cacheo Activo: La aplicación tiene control total sobre la actualizadode los objetos que se encuentran en cache, por lo que debe asegurar que estén actualziados.
Cacheo UFO: solicitudes invalidad (UnFoun Objects) que generan situaciones de error en el servidor de aplciacion o la base de datos son directamente rechazadas, de eta manera el sistema queda protegido contra solicitudes invalidas o mailintencionadas.
Cacheo dependiente de navegador Web: Los desarrolladores de un BSP pueden definir si su aplicación es dependiente del tipo de navegador web. Si este indicado está marcado, el ISC usa los datos en el cache solamente para las solicitudes enviadas por desde tipo de navegador.
El ISC se configura mediante los parámetros de perfil icm/HTTP/server_cache* y puede ser monitoreado e invalidado desde el sistema SAP.
PROCEDIMIENTO DE INICIO Y MONITOREO DEL ICM
El parámetro de perfil rdsip/start_icman controla si un proceso ICM se inicia cuando un servidor de aplicación (instancia) se inicia.
Si no se especifica valor, el valor por defecto es true.
El ICM se configura mediante los parámetros de perfil que en su mayoría comienzan con icm/.
La configuración del parámetro icm/server_port_ es muy importante, este parámetro de perfil especifica el puerto utilizado para cada protocolo y las propiedades del protocolo asó como el time out.
Podemos obtener una vista rápida de los servidores de aplicación que están corriendo con un ICM mediante la vista de servidores de la aplicación, transacción SM51.
Para información más detallada, tal como el ID de hilo de ejecución, podemos usar el monitor de ICM, transacción SMICM.
Desde la transacción SMICM es posible finalizar el proceso de ICM, mediante el MENU -> ADMINISTRACION -> ICM y seleccionar soft termination (corresponde a una señal 2 en UNIX) o hard termination (corresponde a una señal 9 en UNIX).
El dispatcher iniciará un nuevo proceso de ICM.
Mediante MENU -> ADMINISTRACION -> RESTART -> YES/NO, controlamos si el ABAP dispatcher reinicia el ICM cuando este finaliza por un error o de forma manual por el administrador.
Las herramientas más importantes para un administrador en el entono ICM es el monitor ICM transacción SMICM. Los datos visualizados son dependientes de la instancia donde correo el ICM, de la misma manera que la vista de work processes en la transacción SM50
Algunas actividades administrativas de la transacción SMICM:
1. Monitorear y reiniciar el ICM
2. Configurar el nivel de traza (Goto -> Trace level -> ), los valores pueden ir de 0 a 3.
3. Evaluar los archivos de traza (Goto -> Trace file -> ), el sistema lee el archivo dev_icm desde el directorio work de la instancia.
4. Visualización de los parámetros de perfil (Goto -> parameters -> Display/Change). Los valores de los parámetros visualizados aplican para la instancia en la que estamos logados.
5. Para ver la documentación de los parámetros podemos ir desde el monitor ICM (Goto -> Parameters -> cuange y luego el botón documentación) o la transacción RZ11 y en la Liberia de SAP.
6. Visualización de estadísticas (Goto -> Statistics -> display) Podemos visualizar las estadísticas para ver la cantidad de solicitudes que el ICM ha procesado desde que se inició o desde que se reiniciaron las estadísticas. También muestra información sobre la duración del procesamiento
7. Monitoreo del Cache de ICM (Goto -> HTTP Server Cache -> Display).
El programa a nivel de sistema operativo icmon muestra información sobre el ICM.
Si llamamos a icmon –h muestra los parámetros que pueden usarse para este programa, este programa genera carga de trabajo.
Notas útiles sobre ICM
SAP NOTE: 737625: Parameters recommendatios for the ICM
SAP NOTE: 634006: ICM Messages explanatory note
 
 
 
Sobre el autor
Publicación académica de Josep Antoni Lopez Moyano, en su ámbito de estudios para la Carrera Consultor Basis NetWeaver.
Josep Antoni Lopez Moyano
Profesión: It Manager - España - Legajo: QP26P
✒️Autor de: 375 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor en SAP HCM Nivel Inicial
- Carrera Consultor Basis NetWeaver Nivel Avanzado
- Carrera Consultor Basis NetWeaver Nivel Inicial
- Máster Funcional ABAP
- Máster ABAP Orientado a Objetos
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial