[테마특강] 분산처리기술시대의 도래;김명준 ETRI단장

김명준 <>프랑스 낭시 제1대학교 응용수학.전산학과 이학박사 <>86년 ETRI 타이컴I.II사업 참여 바다 DBMS개발과제 책임자 역임 체신부 정보통신연구개발사업인 "분산시스템 소프트웨어 기술개발 책임자" 컴퓨터를 사용하는 형태를 시대별로 살펴보면 60년대는 일괄처리(Batch Proc essing), 70년대는 컴퓨터 능력을 작은 시간대로 나누어 여럿이 사용하는 시분할처리 Time Sharing)를 그 특성으로 볼 수 있다. 80년대에 들어와서 개인용 컴퓨터(PC)나 워크스테이션의 등장으로 개인처리(Personal C-omputing)를 그 특성으로 볼 수 있다. 90년대에 들어와선 분산처리(Distributed Processi ng/Computing) 시대가 시작되었다.

분산처리기술과 그에 관련된 이웃 용어들을 정의하기에 앞서 개방시스템(Ope n System)은 그 기능이 표준을 따르는 시스템으로 정의한다. 개방시스템의목 적은 시스템들 사이에 상호운용성(Interoperab-ility)를 높이는 것이다. 개방시스템의 반대말은 닫힌 시스템이 아니라 독자시스템이다. 즉 각 컴퓨터생 산업자들이 그들 독자적인 기능을 제공했던 과거의 시스템을 가리킨다.

분산처리란 "컴퓨터 통신망에 연결된 여러대 컴퓨터 시스템들이 서로 도와 한목적의 일을 처리하는 것"을 일컫는 매우 넓은 뜻을 갖는다. 분산처리기술 의 목적은 통신망에 연결된 여러자원들을 마치 사용자 혼자서 사용하는 것처럼 지원해주는 것으로 이를 투명성(Transparency)이라 부른다. 이 투명성의수준을 가리기 위해 먼거리에 있는 자원에 접근하는 투명성, 지역 투명성, 동시 사용 투명성, 중복성, 고장, 이주, 성능, 그리고 구성 투명성으로 구분하기도 한다. 여기서 한가지 유의할 것은 영어 "Transparency"와 한글번역어인 "투명성"이 갖는 음영(뉘앙스) 차이이다. "투명하다"는 낱말은 속이 훤히들여다보여 무언가를 감추지 않는다고 풀이할 수 있다. 그런데 분산처리에선 이와 반대로 통신망에 연결된 여러 전산처리 자원을 복잡하게 운용하는 것을사용자들에게 보다 많이 감추는 기술수준을 투명성이라고 한다. 그래서 Tran sparency를 다시 의역한다면 분산처리환경을 사용하기 쉬운 정도(속이 투명 한 사람과 만나면 마주하기 쉽듯이)라고 본다.

고객-서버(Client-Server)기술은 분산처리기술의 한가지 특수한 형태로서 순전히 일을 처리하는 논리적인 모형을 가리키는 것이다. 고객이란 이름으로 일을 의뢰하는 자(사용자, 응용 프로그램, 컴퓨터시스템 등)와 그 일을 처리하여 결과를 내놓는 서비스제공자라는 개념으로 응용 프로그램 사이를 서로연결하는 방식이다.

요사이 새로 사용하는 낱말로 사이모(미들웨어:Middleware)가 있다. 분산처리 기술현황분산처리에 관한 연구는 지난 70년대말부터 선진대학교에서 연구 를 해왔다. 대표적인 것 몇가지를 예로 들면 70년대말 미국 캘리포니아대학에서 연구한 로커스(LOCUS) 분산 운용체계, 제록스 DS, 80년대 네덜란드 브 리제대학에서 연구한 아모에바(Amoeba), 영국의 안사(ANSA)사업, 프랑스의 코러스(CHORUS) 분산운용체계, 미국 카네기-멜론대학의 MACH운용체계,AFS분 산파일시스템, 캐미로트(Camelot)분산 트랜잭션 처리환경등이다. 90년대 들어와선 이들 연구결과가 직접 또는 간접적으로 여러 상품이 되어 세상에 나와 쓰이기 시작한다.

아울러 이런 기술과 상품에 관한 표준화로 시작하여 대표적으로 OSF의 분산 처리환경(DCE)이나 분산관리환경(DME)은 상용화되기 시작했다. 국제표준기구 (ISO)와 국제전기통신연합(ITU)에선 개방형 분산처리(ODP)에 대한 표준을 만들고 있다.

분산처리시스템 소프트웨어분산처리기술로 풀고자 하는 문제를 살펴볼 때 기존 정보처리기술로는 불가능한 새로운 문제영역도 있겠지만 그보다는 기존문제를 보다 효율적으로 풀 수 있다는 것에 관점을 둔다. 그래서 다음 <그림 1>에서 보듯이 온라인 트랜잭션처리나 데이터베이스 응용이 여전히 가장 중요한 응용분야로 생각할 수 있다. <그림1>은 현재 상품화되었거나 상품화되 고 있는 분산처리관련시스템 소프트웨어 모습을 개략적으로 보여주고 있다.

분산처리 기본 소프트웨어의 대표적인 것으로 OSF/DCE와 선마이크로시스템 즈사의 ONC , 그리고 노벨사의 유닉스웨어를 꼽을 수 있다. DCE는 IBM, 휴렛팩커드 디지털이퀴프먼트(DEC)등과 같은 OSF의 굵직한 회원사들이 적극 지지하면서 내놓은 제품이다.

OSF/DCE의 기능을 간단히 열거하면 분산환경에서 스레드(Thread) 지원, 원격 프러시저 호출(RPC), 분산된 컴퓨터 사이들에서 일관된 시간을 유지해주 는 기능, 분산 자원들의 이름을 관리하는 기능, 보안기능, 그리고 분산파일 시스템 등을 꼽을 수 있다.

분산 트랜잭션 처리 소프트웨어는 분산환경에서 여러개의 이질적인 데이터베이스 관리시스템(DBMS)들을 이용하면서 온라인 트랜잭션 처리응용을 개발할 수 있게 하는 소프트웨어로 일반적으로 트랜스잭션 처리 모니터라고 부른다.

트랜스아크사의 엔시나 (Encina), 노벨사의 턱시도(Tu.edo), AT&T GIS사의 톱엔드(TopEnd), IBM사의 CICS/6000 등을 대표적인 상품으로 꼽을 수 있다.

엔시나와 CICS/6000은 DCE위에서 동작하며 턱시도와 톱엔드도 DCE위에서 동작하는 제품을 내놓을 계획을 최근에 발표하였다. 표준으로는 X/Open이분산 트랜잭션 처리(DTP)기본 모형을, ISO에선 OSI TP규약을 제정하고 있다.

분산처리 환경은 자원들이 다양하고 구성 기종들이 다른 기종이면서 확장성 을 갖고 있기 때문에 기존 단일 시스템을 관리하던 방식은 더이상 통신망을 이용하는 분산환경에 적용할 수 없다. 따라서 컴퓨터 통신망 관리와 시스템 자원관리에 분산처리의 특징을 고려한 새로운 관리기법과 기술이 필요하다.

분산시스템관리 소프트웨어가 제공하는 서비스기능은 장해관리, 성능관리, 구성관리, 회계 및 보안 관리, 그리고 각종 운용 지원 기능을 제공한다. 관련된 표준규격을 열거하면 관리 기본구조에 OMNIpoint1과 OSF/DME, 통신규격으론 TCP/IP와 OSI, 관리 규격엔 SNMP와 CMIP, 프로토콜 접속에 XOM/XM P, 그밖에도 DCE, 사용자 접속, 데이터베이스에 관련된 규격이 있다.

분산처리 환경을 이용한 응용을 개발하기 위한 도구는 현재 가장 활발하게 상품이 나오고 있는 분야이다. 제4세대 언어 형식의 도구들이 제안되어 응용 개발을 도와주고 있지만 이 분야의 주요 관건은 사이모이다. 고객-서버 모형 분산처리기술의 발전 추세를 설명하기에 앞서 지금 분산처리기술 가운데 가장 널리 알려지고 현실에 적용되는 고객-서버 모형을 알아본다. 고객-서버모형은 개인용 컴퓨터와 지역망(LAN)이 널리 보급되면서 등장한다. 91년도 통계치를 보면 세계에서 소형 시스템(개인용 컴퓨터와 워크스테이션) 시장은 9백30억달러 규모로 4백90억달러인 대형 시스템 시장규모의2배에 육박했다.

가트너그룹의 예측을 보면 개인용 컴퓨터 보급대수가 오는96년에 1억6천만대 에 이르는데 이중 75%는 통신망에 연결될 것으로 본다. 이런 집계를 통해고객-서버 시장규모를 가늠해 볼 수 있다. IDC는 96년 고객-서버 관련 소프트웨어가 전체 소프트웨어시장의 25%를 차지할 것으로 예상한다. 92년 이 점유율은 1.5%에도 못미쳤다.

가트너그룹이 제안한 고객-서버모형의 여러 형태는 다음 <그림2, 3>과 같다.

<그림2>에서주의할 것은 오른쪽으로 갈수록 진보된 것이라고 해석해서는안된다. 협동처리 모형인 세번째와 네번째 모형은 사용환경의 규모나 응용에따라 적합도가 다르다. 현재 가장 많이 사용되는 모형은 데이터베이스 서버모 형인 네번째이지만 이 기종 DBMS를 통합하고 대규모 트랜잭션을 처리하기위 해선 세번째 트랜잭션 처리모니터가 적합하다고 현장에서는 말한다. <그림3> 에 보인 분산 DBMS 모형은 분류하다보니 구색을 맞추기 위해 또는 기술적으로 예측하여 그린 것이지만 현실적으로 성능에 만족하면서 이 모형을 사용하기까지는 아직도 많은 문제를 풀어야 할 것이다.

분산처리 발전추세객체지향 소프트웨어 기술발전은 분산처리시스템을 구현하고 관리하는 것을 보다 쉽게 해준다. 분산객체처리란 개념은 이제 막 등장하였지만 분명히 정보처리 분야에서 중요한 흐름이 될 것이다(약 97년경부터).

분산객체처리가가져다 줄 이익은 빠른 분산응용개발과 보다 쉬운 유지보수 이다. 그렇지만 이 기술을 도입하고자 하는 사용자는 분산시스템 관리문제와 정보처리요원 재교육이란 도전이 남아 있다. 그래서 OMG가 표준화하고 있는분산객체처리 구조인 CORBA를 만족시키는 새로운 소프트웨어들을 한창 개발 하고 있다.

선사의 분산객체환경(DOE)전략은 Sun OS/ONC 위에 OMG CORBA 표준을 만족 하는 분산객체시스템을 구축하고 사용자환경은 넥스트 스텝에 바탕을 둔 오픈스텝을 제안한다. 이 모든 것을 통틀어 계속 솔라리스라 부른다. 금년안에오픈스텝 Developer Starter Kit을 내놓고 내년엔 OMG표준을 만족하는 DOE Rel.1을 내놓을 계획이다.

디지털사는 마이크로소프트사의 객체지향 기술인 OLE(OLE v.1, v.2, COM 와 협력하기로 했다. 분산기능을 위해선 OSF/DCE의 필요한 기술을 이용하며 응용환경으론 오픈독(Open Doc)을 사용한다. 디지털사가 마이크로소프트 사와 동반자가 된 이유는 세상에서 현재 객체지향 시스템 소프트웨어기술을1 백명 이상이 다루고 있는 조직은 넥스트스텝사, 탤리전트사(IBM과 애플의 합작사 그리고 마이크로소프트사가 있는데 다른 두군데는 이미 경쟁자와 협업을 하니 선택의 여지가 없기 때문이다.

OLE와 CORBA는 우선 IDL(Interface Definition Language)가 전혀 다르고 객 체클라스 계층을 구성하는 기본철학도 다르기 때문에 상호연동하기가 어려워향후 큰 싸움이 예상된다. 80년대 TCP/IP와 OSI처럼 한쪽은 실제제품으로, 다른 쪽은 표준규격의 장점으로 한판 승부를 벌일 것이다.

분산처리의 장점과 걸림돌분산처리의 장점은 첫째 경비감소와 투자효과의 지속성을 꼽을 수 있다. 응용개발비용과 유지보수 비용의 감소는 다음 사실로부터 가능하다.

*데이터베이스 서버와 같은 서버들을 공동으로 나눠 씀 *이식성과 상호운 용성을 높일 수 있는 표준제품들을 통합하여 구축함 *컴퓨터 기계, 소프트 웨어, 그리고 통신망과 같은 현존하는 이질적인 구성요소들을 점진적으로 통합하여 구성함.

둘째 장점은 사용자의 생산성 향상이다. 전산처리 환경에서 전통적으로 피동 적이었던 사용자가 능동적인 사용자로 탈바꿈하여 개인화된 도구들을 잘 갖추면서 주인공이 된다.

셋째 장점은 고객의 개인용 컴퓨터와 서버 컴퓨터사이에 능력을 분산시킴으로써 통신망에서 발생하는 혼잡을 줄인다. 이는 자원분배를 최적화하고 고객 컴퓨터에 일부 기능을 이양하여 고객과 서버사이에 균형잡힌 상호교류 횟수 를 늘릴 수 있기 때문이다.

그리고 분산처리구조는 사업절차가 중앙집중방식에서 벗어나 권력분산으로 바뀌는 현 상황에 알맞은 구조이다.

그밖에 여러 장점들이 있지만 그래도 걸림돌도 남아있다. 첫째는 적절한 고객-서버 응용이나 분산응용설계를 위한 인정할 만한 방법론이 없다. 기존 대형 컴퓨터환경에서 분산된 작은 기종들을 이용하기 위해 밑으로 내려가는 방법도 없고 지역망을 통해 개인용 컴퓨터나 워크스테이션을 엮어 올라가는 좋은 방법도 없다. 기존 어느 분석방법이나 설계방법도 분산응용개발에 딱 맞지 않는다.

분산처리기술을 제대로 적용하려면 컴퓨터, 통신, 데이터베이스, 사용자 인터페이스 분산시스템 관리 등과 같은 여러 분야에 전문성을 지닌 개인이나 조직이 필요하다. 아직은 이 분야에 능력과 경험을 갖춘 전문가가 부족하다.

그래서분산처리구조가 완전히 정착하기까지는 아직 시간이 필요하다.

마지막 걸림돌은 통신망이 갖고 있는 문제들을 그대로 상속받는 것이다. 맺음말분산처리 기술이나 환경의 도입은 피할 수 없다. 왜냐하면 사용자가 중심이 되어버린 정보처리 세계에서 일어난 돌이킬 수 없는 진화과정속에서분산 처리기술은 조직에 돈과 시간을 벌게 해줄 뿐만 아니라 미래의 경쟁력을 준비해 주는 기술이기 때문이다.

분산처리의 중요한 도전은 기술 발전에만 있지 않다. 그것은 이 기술을 쓰는인간과 조직에 더 많이 있다. 소극적이고 너무 신중한 사람과 조직이 분산처리 환경의 도래를 늦춘다. 지금부터 더욱 투자해야 할 것은 기술적인 문제를 푸는데가 아니고 이 기술을 이용할 전문가 양성, 이 기술을 이해할 관리자 교육, 이 기술을 적용할 새로운 조직 구조이다. 분산처리 기술이 제공하는 도구는 한 조직내 구성원들이 서로 다르면서도 함께(팀워크 정신으로) 효과 적으로 먼거리에서, 그리고 낮은 비용으로 일을 할 수 있게 해준다.