다음을 통해 공유


IMS 연결

IMS 연결 프로그래밍 모델은 TCP/IP를 사용하여 IMS(정보 관리 시스템) 트랜잭션에 대한 액세스를 제공합니다. 이 모델은 데이터 처리에 IMS 메시지 큐를 사용합니다.

다음 그림에는 클라이언트, 기본 IMS 수신기, 동시 서버, 메인프레임 트랜잭션 프로그램 간에 발생하는 워크플로가 요약되어 있습니다. 괄호 안의 숫자는 이벤트가 발생하는 대략적인 순서를 나타냅니다. 이벤트에 대한 자세한 설명은 그림 뒤에 나옵니다.

클라이언트가 입력 데이터를 ITOC 수신기에 전달하는 프로세스를 보여 주는 이미지입니다.
클라이언트가 ITOC 수신기에 입력 데이터를 전달하면 HWSIMSO0이 클라이언트에 응답 데이터를 제공하는 IMS 프로그램에 대한 액세스를 제공하는 프로세스

IMS 연결 프로그래밍 모델의 워크플로 요약 다이어그램

IMS 연결 프로그래밍 모델은 다음과 같이 작동합니다.

  1. 애플리케이션은 구성 요소 서비스 또는 .NET Framework에 구성된 TI 구성 요소에서 메서드를 호출합니다.

  2. TI 런타임은 TI 자동화 프록시를 호출합니다.

  3. 애플리케이션이 .NET Framework 어셈블리인 경우 TI 자동화 프록시는 다음을 수행합니다.

    1. TI 디자이너에서 이전에 만든 어셈블리 및 메타데이터를 읽습니다.

    2. .NET 데이터 형식을 COBOL 데이터 형식에 매핑합니다.

      그런 다음, TI 자동화 프록시는 다음을 수행합니다.

    3. 변환 루틴을 호출하여 애플리케이션 데이터를 메인프레임 COBOL 형식으로 변환합니다.

    4. COBOL 선언 또는 copybook을 나타내는 일반 데이터 스트림 버퍼를 작성합니다.

    5. 메시지를 TCP 전송 구성 요소에 전달합니다.

  4. TI 런타임은 메인프레임 컴퓨터의 IP(인터넷 프로토콜) 주소와 IBM에서 제공하는 TCP/IP 프로필 데이터 세트(hlq.PROFILE.TCPIP)에 저장된 IMS 연결의 포트 주소를 사용하여 IMS 연결(HWSIMSO0 또는 HWSIMSO1)에 IRM(초기 요청 메시지)을 보냅니다.

    HWSIMSO0 및 HWSIMSO1은 TI 자동화 서버(TI .NET Framework 애플리케이션)와 ITOC 간의 요청 및 회신 프로토콜을 정의하는 IBM 제공 HWS(호스트 웹 서버) 종료 루틴입니다. HWS는 IMS 지역과 별개인 z/OS 주소 공간에서 실행되며 IMS 연결에 대한 수신기 서비스를 수행합니다.

  5. IMS 연결 종료 루틴은 IMS 애플리케이션(ITOC(IMS TCP/IP OTMA(Open Transaction Management Architecture) 연결)라고도 함)을 제어합니다.

  6. TI 런타임 환경에서 ITOC 및 HWSIMSO0에 ITOC 요청 헤더를 보냅니다.

  7. HWSIMSO0 종료 루틴을 다음을 수행합니다.

    • ITOC 요청 헤더의 유효성을 검사합니다.

    • TI 런타임 환경의 모든 요청 데이터를 받습니다.

    • 보안 루틴과 통신합니다.

    • OTMA 프로세스를 구동하여 IMS 데이터 저장소에 연결합니다.

    • OTMA를 통해 메시지 세그먼트를 IMS 메시지 큐에 배치하고 IMS 메시지 큐에서 검색합니다.

    • 모든 회신 데이터 세그먼트를 TI 런타임 환경으로 보냅니다.

    • IMS 내에서 복구 작업을 제어합니다.

  8. ITOC는 ITOC 헤더 정보를 읽고, 올바른 IMS 지역을 찾고, 해당 IMS 지역에서 IMS 트랜잭션의 실행을 예약합니다. ITOC 헤더에는 다음 정보가 포함되어야 합니다.

    • ITOC HWS 종료 루틴 식별자(기본값 '*IRMREQ*')

    • IMS 데이터 저장소 식별자

    • 트랜잭션 식별자

    • 흐름 제어 정보

    • IBM의 RACF(Resource Access Control Facility) 보안 자격 증명

    • 프로토콜 제어 플래그

  9. HWSIMSO0에서 올바른 IMS 메시지 큐를 예약합니다.

  10. TI 런타임에서 요청 데이터 세그먼트를 ITOC로 보냅니다.

  11. TI 런타임에서 EOM을 보냅니다.

  12. IMS 제어 지역이 MPR(메시지 처리 지역)에 전송됩니다.

  13. 모든 요청 데이터가 IMS 메시지 큐에 배치되면 트랜잭션이 실행되도록 예약됩니다.

  14. IMS 서버 애플리케이션 프로그램은 표준 CBLTDLI GU(Get Unique), GN(Get Next) 및 INSRT(Insert) 호출 인터페이스 명령을 사용하여 요청 데이터를 검색하고 IMS 메시지 큐에 회신 데이터를 배치합니다.

  15. MPR은 TI에 데이터를 반환합니다. ITOC는 EOM-CSMOKY ITOC를 보내고 TI 런타임 환경에 다음 정보를 반환합니다.

    • 요청 mod 메시지

    • 회신 데이터 세그먼트

    • 메시지 끝 세그먼트

    • CSMOKY 세그먼트

  16. ITOC 및 ITOC 종료 루틴은 메시지 큐에서 회신 데이터를 제거하고 TI 런타임 환경에 다시 제공합니다.

  17. TI 자동화 프록시는 회신 데이터를 받고 회신을 처리합니다. TI 자동화 프록시는 다음을 수행합니다.

    1. TCP 전송 구성 요소에서 메시지를 받습니다.

    2. 메시지 버퍼를 읽습니다.

      애플리케이션이 .NET Framework 어셈블리인 경우 TI 자동화 프록시는 다음을 수행합니다.

    3. COBOL 데이터 형식을 .NET Framework 데이터 형식에 매핑합니다.

    4. 변환 루틴을 호출하여 COBOL 데이터 형식을 애플리케이션 데이터로 변환합니다.

  18. TI 런타임은 메서드를 호출한 .NET Framework 애플리케이션에 변환된 데이터를 다시 보냅니다.

    메인프레임 구성 및 TCP/IP용 서버 애플리케이션 작성에 대한 자세한 내용은 z/OS용 TCP/IP V3R2: IMS TCP/IP 애플리케이션 개발자 가이드(IBM 문서 #SC31-7186) 및 IMS Connect 가이드 및 참조 V1R2(IBM 문서 #SC27-0946)를 참조하세요.

    Host Integration Server에는 IMS Connect 프로그래밍 모델을 구현하는 방법을 보여 주는 샘플 코드가 포함되어 있습니다. 샘플 코드는 \installation directory\SDK\Samples\AppInt에 있습니다. Visual Studio를 시작하고 사용하려는 자습서를 연 다음, 추가 정보의 지침을 따릅니다.

참고 항목

트랜잭션 통합자 구성 요소
Automation에서 z/OS COBOL로 데이터 형식 변환]
z/OS COBOL에서 Automation으로 데이터 형식 변환
IMS 구성 요소
TI 런타임
적절한 프로그래밍 모델 선택
프로그래밍 모델