소개

본 절에서는 OpenFrame AIM 기본 구조 및 기능에 대해 간략히 소개하고, 각 장에서 다뤄질 전반적인 개요에 대해 기술한다.

1. 개요

OpenFrame AIM은 Mainframe에서 사용하던 업무 애플리케이션과 데이터를 수정없이 오픈 시스템으로 이관하여 사용할 수 있도록 하는 리호스팅 솔루션인 OpenFrame 제품군 중 Fujitsu Mainframe을 대상으로 하는 제품이다.

OpenFrame AIM은 기존 시스템에서 사용하던 업무 애플리케이션과 데이터는 물론 시스템 설정 등의 리소스도 그대로 사용할 수 있어, 오픈 시스템으로 이관된 후에도 업무와 운영의 연속성을 보장한다. 또한, 사용자는 기존 Mainframe의 리소스를 이관하는 툴을 이용하여 간단한 작업만으로 오픈 시스템으로 이관할 수 있다.

OpenFrame AIM은 오픈 시스템에서 안정성 및 성능이 검증된 TP-Monitor인 Tmax를 기반으로 하기 때문에 이관 후 오픈 시스템에서도 기존의 Mainframe 시스템 상에서의 성능을 보장함은 물론 다음과 같은 장점이 있다.

  • 편리한 프로세스 관리

    OpenFrame AIM에서 사용자가 생성한 프로세스들은 Tmax에 의하여 기동부터 종료까지 관리되며, Tmax가 제공하는 다양한 모니터링 정보를 사용할 수 있다.

  • 대용량 트랜잭션 지원

    Tmax는 대용량 트랜잭션 처리를 위해 스케줄링 및 서비스 큐 관리 기능을 내포하고 있다. 따라서 Tmax는 미션 크리티컬한 업무를 수행하는 시스템에서 다수 활용되고 있으며, 이를 기반으로 한 OpenFrame AIM도 안정적이고 빠른 트랜잭션을 지원한다.

  • 부하 분산 및 장애극복(failover)지원

    Mainframe과 오픈 시스템의 하드웨어 사이즈 차이(대부분의 오픈 시스템에 사용되는 머신은 Mainframe 머신보다 작다) 및 시스템 확장성을 위해 오픈 시스템은 보통 여러 대의 하드웨어로 구성된다.

    두 대 이상의 하드웨어로 시스템을 구성하는 경우 머신 간 부하 분산 및 하드웨어 레벨의 장애 대책이 중요한 이슈가 될 수 있는데, Tmax가 이러한 부하 분산 및 장애 극복에 대한 대책을 지원함으로써 하드웨어적인 문제에 대한 해결책을 제시한다.

  • 오픈 환경에서의 자유로운 연동

    Tmax는 X/Open DTP 모델을 준수하는 다른 TP-Monitor 제품들과 연동이 가능하기 때문에 이를 기반으로 하는 OpenFrame AIM은 시스템의 확장과 연동에 있어서 매우 유연하다는 장점을 갖는다.

    특히 TmaxSoft의 WAS(Web Application Server) 제품인 JEUS와 연동함으로써 기존의 클라이언트 환경을 웹 환경으로 이관할 수 있다.

  • 자유로운 메모리 할당(allocate) 및 해제(free)

    각 프로그램별로 사용할 버퍼의 크기를 설계할 필요가 없다.

  • 최적의 시스템 제공

    컴파일러, 데이터베이스 등의 컴포넌트를 선택할 수 있으므로 사용자에게 최적의 시스템을 제공한다.

2. 주요 기능

OpenFrame AIM은 기존 Mainframe 환경에서 운영되던 업무 애플리케이션을 그대로 사용하기 위해 다음과 같은 기능을 제공한다.

  • 데이터셋 지원

    OpenFrame AIM은 기존 Mainframe 환경에서 사용하던 데이터셋을 그대로 사용할 수 있다.

  • 네트워크 데이터베이스 지원

    네트워크 데이터베이스(NDB)를 사용하기 위한 인터페이스를 제공하므로 기존의 NDB 데이터와 NDB를 사용하는 업무 애플리케이션을 그대로 사용할 수 있다.

  • TN3270 기반 통신 지원

    OpenFrame AIM은 TN3270 프로토콜을 지원한다.

  • 표시서비스(PSAM, Presentation Service Access Method) 제공

    기존 Mainframe에서 제공되던 표시 서비스를 지원한다. 따라서 기존에 사용되던 화면 및 장표 정의 리소스를 그대로 사용할 수 있다.

  • 마스터 콘솔 지원

    OpenFrame AIM은 Mainframe에서 지원하던 마스터 콘솔을 오픈 시스템 상에 구현함으로써 기존의 업무방식을 보존한다.

  • 통신 파일 인터페이스 제공

    OpenFrame AIM은 메시지 파일, 프리젠테이션 파일 및 통신 파일 인터페이스를 그대로 지원하므로 기존의 업무 애플리케이션을 그대로 사용할 수 있다.

  • 조작 커맨드

    OpenFrame AIM은 시스템 접속 및 업무군 접속 등 업무에 필요한 기본적인 조작 커맨드를 지원하므로 기존의 업무방식을 그대로 사용할 수 있다.

3. 기본 구조

OpenFrame AIM은 서버 프로세스로 동작하는 시스템 컴포넌트와 각종 리소스를 관리 및 사용할 수 있는 각종 유틸리티로 구성된다.

figure 1 1
OpenFrame AIM 구조도

다음은 OpenFrame AIM의 구성요소에 대한 설명이다.

구분 설명

OpenFrame GW

외부 단말(Workstation)의 접속과 메시지 송수신을 담당하는 모듈이다.

AIMOMSVR

애플리케이션의 상태를 조작 및 관리하고 OpenFrame Manager 제품과 통신하는 서버 프로세스이다.

AIMDCMS

단말 혹은 애플리케이션 간의 메시지 큐잉과 송수신을 관리하는 서버 프로세스이다.

AIMAPSVR

사용자가 작성한 애플리케이션을 실행 및 관리하는 서버 프로세스이다.

AIMPRTSV

ONLINE PRINT 단말에 장표 데이터 전송을 관리하는 서버 프로세스이다.

AIMIDCM

VTAM에서 한 번의 사인온으로 DCMS/TSO 세션을 자유롭게 선택할 수 있게 하는 SMR 기능을 지원하기 위한 서버 프로세스이다.

OpenFrame AIM을 구성하는 컴포넌트 중 서버 프로세스는 애플리케이션 레이어와 시스템 레이어로 나눌 수 있다.

  • 시스템 레이어

    단말의 접속 및 단말과의 메시지 송수신을 처리하기 위한 OpenFrame GW, 애플리케이션 상태의 조작/관리 및 OpenFrame Manager 제품과의 메시지 송수신을 처리하기 위한 AIMOMSVR, 메시지의 큐잉 및 분배를 담당하는 AIMDCMS, 프린트 데이터를 관리하는 AIMPRTSV, DCMS 및 TSO와의 세션 관리를 지원하는 AIMIDCM이 이에 해당한다.

  • 애플리케이션 레이어

    업무 로직이 담긴 애플리케이션 프로그램을 실행시키는 레이어로 AIMAPSVR이 해당된다. 실행시킬 애플리케이션의 수만큼 프로세스가 준비된다.

모든 OpenFrame AIM의 컴포넌트들은 운영 및 환경 정보를 정의하는 ADL(AIM Descript Language) 리소스의 정보를 참조하여 동작한다. 이를 위해서는 ADL 리소스를 저장할 DB 테이블을 생성하고, 각 테이블에 ADL 리소스를 적재해 두어야 한다.

3.1. OpenFrame GW

OpenFrame GW(OpenFrame Gateway)는 업무 처리자가 사용하는 단말과 AIM과의 통신을 담당하는 모듈이다. TN3270 프로토콜을 지원하며, 지원하는 단말의 종류는 TN3270 프로토콜을 사용하여 3270 에뮬레이터와 Web 브라우저에서 터미널 기능을 사용할 수 있는 웹터미널(Web Terminal)이 있다.

게이트웨이는 접속하는 단말 이외에 기본적으로 AIM의 기반 시스템인 TP-Monitor와 연결되어 있고 단말의 숫자가 하나의 OpenFrame GW가 감당할 수 있는 것보다 많으면 게이트웨이를 2개 이상 운영하는 것도 가능하다.

OpenFrame GW에 대한 상세한 설명은 OpenFrame GW "운영자 안내서"를 참고한다.

3.2. AIMOMSVR

AIMOMSVR(AIM Online Management Server, 이하 OMSVR)는 AIM의 기반 시스템인 TP-Monitor의 기능을 활용하여 애플리케이션의 상태 조작 및 관리를 위한 모듈이다. 애플리케이션의 기동 혹은 종료을 수행하고 애플리케이션의 상태 정보를 조회하는 역할도 수행한다.

3.3. AIMDCMS

AIMDCMS(AIM Data Communication Management System, 이하 DCMS)는 메시지의 전달과 스케줄링을 담당하는 모듈로, AIM에서 중추 역할을 한다. 단말과 애플리케이션간 전달되는 메시지를 스케쥴링하고, 애플리케이션의 상태에 따라 단말로 에러 메시지를 전달하는 역할을 수행한다.

다음은 DCMS의 동작 과정에 대한 설명이다.

  1. 단말로부터 들어온 메시지는 게이트웨이를 거쳐 DCMS에 전달된다. 게이트웨이로부터 DCMS에 전달된 메시지는 TN3270 프로토콜 스트림의 형식을 따른다.

  2. DCMS는 메시지가 입력된 화면을 정의하고 있는 자원인 포맷 ID를 확인하여 TN3270 스트림에서 데이터를 분리해내고, 분리된 메시지는 버퍼에 저장한다.

  3. DCMS는 저장된 메시지가 전달되어야 할 업무 애플리케이션이 실행 중인지 확인하여, 실행 중이면 메시지를 전달하고 그렇지 않으면 게이트웨이로 에러 메시지를 돌려보낸다. 메시지가 전달되어야 할 업무 애플리케이션이 현재 다른 요청을 처리 중인 상태이면 DCMS는 이 메시지를 큐잉(Queuing)했다가 해당 애플리케이션이 처리를 끝내고 대기상태로 돌아오면 전달한다.

  4. 업무 애플리케이션에서 요청한 메시지의 처리가 끝나 결과 메시지가 돌아오면 DCMS는 이 메시지를 게이트웨이로 전달한다. 업무 애플리케이션에서 게이트웨이로 전달되는 메시지는 게이트웨이에서 업무 애플리케이션으로 전달될 때와는 반대의 과정을 거친다. 업무 애플리케이션으로부터 전달된 레코드 형식의 메시지를 TN3270 스트림으로 변환하여 게이트웨이에 전달하게 된다.

업무의 구현에 따라 하나의 애플리케이션이 요청을 모두 처리하지 못하고 다른 애플리케이션으로 전달하는 경우가 있는데, 이 경우에는 DCMS가 메시지를 게이트웨이로 보내지 않고 다시 요청된 업무 애플리케이션으로 전달한다. 이렇게 애플리케이션으로부터 나온 결과 메시지가 다른 애플리케이션으로 전달되는 경우에는 코드 페이지 변환을 하지 않는다.

3.4. AIMAPSVR

AIMAPSVR(AIM Application Server, 이하 APSVR)는 사용자가 작성한 업무프로그램을 실행시키는 모듈이다. DCMS로부터 전달받은 메시지를 처리할 수 있도록 사용자 애플리케이션이 실행될 수 있는 환경을 제공한다. 전달받은 메시지를 사용자 애플리케이션에서 사용할 수 있도록 해당 애플리케이션이 사용하는 통신 인터페이스에 맞게 데이터를 가공하며, 사용자 애플리케이션에서 메시지 처리가 끝나면 해당 메시지를 DCMS로 다시 전달하는 역할을 수행한다.

AIMAPSVR에 대한 상세한 설명은 OpenFrame AIM "개발자 안내서"를 참고한다.

3.5. AIMPRTSV

AIMPRTSV(AIM Print Server, 이하 PRTSV)는 ONLINE PRINT 단말로 장표 데이터를 전송하는 역할을 수행한다.

다음은 PRTSV의 동작 과정에 대한 설명이다.

  1. 업무 프로그램이 PRINT를 수행하면, APSVR는 PRINT 단말과 요청 내용을 DB에 저장하고 PRTSV에 알람을 전달한다.

  2. PRTSV가 요청을 전달받으면 DB에서 정보를 가져와 전송하고자하는 목적지, 포맷 ID와 데이터를 확인하여 전송을 위한 장표 데이터를 생성한다.

  3. 생성된 장표 데이터를 게이트웨이로 전달한다.

  4. 동일한 목적지로 동일한 포맷 ID를 가지는 장표 데이터 전송이 완료 되었다면 데이터의 끝을 알려주는 데이터를 게이트웨이로 전달한다.

3.6. AIMIDCM

AIMIDCM(AIM Integrated Data Communication Manager, 이하 IDCM)은 SMR(Session Management Region)을 지원하기 위한 서버 프로세스이다. SMR은 한 번의 사인온으로 여러 DCMS/TSO 업무 애플리케이션을 편하게 선택할 수 있는 기능을 제공한다. 사용자에게 DCMS/TSO 업무 애플리케이션들을 할당하여 해당 사용자가 IDCM에 사인온하면 할당된 업무들의 리스트를 메뉴 화면으로 구성하여 보여주며, 원하는 업무를 선택하여 실행시킬 수 있도록 편리한 인터페이스를 제공한다.

figure 1 2
IDCM 구조도

다음은 IDCM에서 지원하고 있는 SMR의 기능에 대한 설명이다.

  • OpenFrame AIM의 IDCM에서 제공하는 SMR은 포맷 정의 소스를 사용하며 사용자가 원하는 화면으로 수정이 가능하다.

  • 사인온 화면에서 OpenFrame TACF에 등록된 사용자 ID로 인증을 할 수 있으며 한 번 인증받은 사용자는 IDCM의 SMR에서 로그오프하기 전까지 SMR의 기능을 이용할 수 있다.

  • 인증을 거친 사용자는 메뉴 화면에서 자신에게 할당된 AIM(DCMS)/TSO 업무 애플리케이션을 선택해서 로그온할 수 있다. (IDCM의 SMR이 없는 환경에서는 사용자가 업무마다 LOGON 명령어를 사용해 로그온해야 한다.)

  • 특정 메뉴에 DCMS/TSO 업무 애플리케이션을 할당하여 실행할 수 있을 뿐만 아니라, 하위 업무를 할당하여 메뉴 화면이 계층 구조를 가질 수 있도록 구성할 수도 있다.

  • 단말을 특정 사용자와 매핑시켜 해당 단말로 접속하는 경우 매핑된 사용자의 접속으로 간주하는 전용 단말 기능도 제공한다.

  • openframe_aim.conf에 지정된 키를 통해 사이온 화면과 이전 메뉴 화면으로 이동하거나, 메뉴의 목록이 화면에 보여질 수 있는 개수를 초과하는 경우에 이전 페이지와 다음 페이지로 이동할 수 있고 로그오프도 가능하다.

  • openframe_aim.conf에 지정된 키를 통해 사이온 화면에서 패스워드 변경 화면으로 이동하여 패스워드를 변경할 수 있다.

IDCM에서 SMR 메뉴 화면을 구성할 때 필요한 정보들은 aimsmradm 툴에서 등록한다.

aimsmradm 툴에 관한 자세한 내용은 OpenFrame AMI "툴 참조 안내서”를 참고한다. 툴을 이용해 입력받는 명령어에 관한 자세한 내용은 SMR 명령어를 참고한다.