확인 처리를 위한 이벤트 시퀀스는 다음과 같습니다.
동기화 수준을 설정합니다.
확인 요청을 보냅니다.
데이터 및 확인 요청을 받습니다.
확인 요청에 응답합니다.
대화 할당을 취소합니다.
TP는 확인 처리를 사용하여 데이터와 함께 확인 요청을 보냅니다. 파트너 TP는 데이터 수신을 확인하거나 오류가 발생했음을 나타냅니다. 두 TP가 확인 요청과 응답을 교환할 때마다 동기화됩니다.
참고
이 섹션의 예제에서는 이를 표시하지 않지만 모든 TP는 TP가 호출 TP인지 호출 가능한 TP인지에 관계없이 데이터를 보내거나 받을 수 있습니다.
다음 예제에서는 확인 처리를 보여 줍니다.
| 호출하는 TP에서 발급 | 호출 가능한 TP에서 발급 |
|---|---|
| TP_STARTED | |
| MC_ALLOCATE | |
| (synclevel=AP_CONFIRM_SYNC_LEVEL) | |
| MC_SEND_DATA | |
| (type=AP_SEND_DATA_CONFIRM) | |
| RECEIVE_ALLOCATE | |
| MC_RECEIVE_AND_WAIT | |
| MC_SEND_DATA | |
| (type=AP_SEND_DATA_DEALLOC_SYNC_LEVEL) | |
| MC_RECEIVE_AND_WAIT | |
| (primary_rc=AP_OK) | |
| (rtn_status=AP_YES) | |
| (what_rcvd= AP_DATA_COMPLETE_CONFIRM_ DEALLOCATE) | |
| MC_CONFIRMED | |
| TP_ENDED | TP_ENDED |
동기화 수준 설정
MC_ALLOCATEsynclevel 매개 변수는 대화의 동기화 수준을 결정합니다. 다음과 같은 세 가지 동기화 수준이 있습니다.
확인 처리가 수행되지 않는 AP_NONE.
AP_CONFIRM_SYNC_LEVEL TP가 데이터 수신 확인을 요청하고 데이터 확인 요청에 응답할 수 있습니다.
AP_SYNCPT. TP가 동기화 지점 수준 2에서 작동하여 데이터 수신 확인을 지원합니다.
확인 요청 보내기
형식이 AP_SEND_DATA_CONFIRM MC_SEND_DATA 두 가지 효과가 있습니다.
로컬 LU의 송신 버퍼를 플러시하고 버퍼에 포함된 모든 데이터를 파트너 TP로 보냅니다.
파트너 TP가 수신 동사의 what_rcvd 매개 변수를 통해 수신하는 확인 요청을 보냅니다.
MC_SEND_DATA 실행한 후 로컬 TP는 파트너 TP의 확인을 기다립니다.
데이터 수신 및 확인 요청
MC_RECEIVE_AND_WAIT what_rcvd 매개 변수는 다음을 나타냅니다.
받은 데이터의 상태: 완전하거나 불완전합니다.
로컬 TP의 향후 처리가 필요합니다.
이 예제에서 what_rcvd AP_DATA_COMPLETE_CONFIRM 상태 완료되고 확인이 요청되었음을 나타냅니다.
확인 요청에 응답
파트너 TP는 MC_CONFIRMED 발급하여 데이터 수신을 확인합니다. 이렇게 하면 로컬 TP가 처리를 다시 시작할 수 있습니다.
대화 할당 취소
MC_SEND_DATA 다음 조건이 모두 충족되면 데이터와 함께 확인 요청을 보냅니다.
대화의 동기화 수준(MC_ALLOCATEsynclevel 매개 변수에 의해 설정됨)은 AP_CONFIRM_SYNC_LEVEL.
MC_SEND_DATA 형식 매개 변수가 AP_SEND_DATA_DEALLOC_SYNC_LEVEL 설정됩니다.
최종 MC_RECEIVE_AND_WAIT what_rcvd 매개 변수가 AP_DATA_COMPLETE_CONFIRM_DEALLOCATE APPC 에서 대화의 할당을 취소하기 전에 데이터 수신 확인이 필요함을 나타냅니다. 로컬 TP는 파트너 TP가 MC_CONFIRMED 문제를 해결할 때까지 이 확인을 기다립니다.