그리드 컴퓨팅

(그리드 딜리버리에서 넘어옴)

1 개요

Grid Computing. 네트워크로 연결된 컴퓨터들이 서로 정보를 공유할 수 있듯이 컴퓨터의 자원들- CPURAM의 처리능력, 하드디스크의 저장공간 등 -을 서로 공유하여 컴퓨팅 능력을 향상시키기 위해 사용되는 병렬 분산 시스템의 한 종류이다.

기본적인 개념은 주변에 전력망(Power Grid)이 구축되어 있으면 전력선을 따오는 것만으로도 전기를 쉽게 공급받을 수 있는 것처럼, 구축된 컴퓨팅 망(Grid)에 연결하는 것만으로도 언제 어디서나 쉽게 컴퓨팅 능력을 공급받을 수 있도록 하자는 것이었다. 한국에서 그리드 컴퓨팅을 설명할 때 격자란 표현에 집착하는 경향이 있는데 집착할 이유가 없다. 그럼 모눈? 격자 연산

100의 작업을 처리하는데, CPU 하나에서 처리하면 아무리 고성능 CPU를 사용하더라도 물리적인 한계가 존재한다. 이를 뛰어넘어 더 빠른 처리를 하기 위하여 여러 대의 CPU를 병렬 연결하여 작업을 나누어 처리하게 되며. 이 때문에 한 CPU를 여러 코어의 병렬 구조로 구성한 듀얼코어, 쿼드코어, 헥사코어 등의 CPU가 나오는 것으로, 슈퍼컴퓨터는 데이터처리를 위한 최소한의 컴퓨터 수백대를 병렬 연결한 것이라고 할 수 있다.

이 개념을 하나의 컴퓨터가 아니라 네트워크에 적용하면 네트워크에 연결된 불특정 다수의 컴퓨터에 데이터를 전송하여 연산하게 한 다음 이를 서버에서 취합하여 전체 데이터를 내는 기술이 된다. 특히 과학공학 분야에서 주로 처리하는 데이터는 비슷한 계산을 조건만 약간씩 바꿔 가며 결과를 얻는 병렬 연산이 많기 때문에 이러한 기술을 이용하면 슈퍼 컴퓨터로도 수십 년이 걸릴 데이터를 불과 수 개월에서 수 년 정도만에 처리가 가능하다고 한다. 대표적인 예로 SETI@home, Folding@home [1], Hentai@home이 있다. 한국에서는 KISTI가 Korea@Home을 운영하고 있었으나 서비스 중단.

개념적으론 그리드 컴퓨팅은 분산컴퓨팅의 한 종류이나 어감상 차이가 있는데, 분산 컴퓨팅은 서버가 병렬 연결된 다수의 클라이언트를 다수의 독립된 연산코어처럼 활용하는 쪽에 초점을 두고 클라이언트는 단지 자신이 지닌 연산 및 처리능력을 제공하기만 한다면, 그리드 컴퓨팅은 이들을 무지막지한 능력을 지닌 가상의 컴퓨터로 재구성하는 쪽에 초점이 맞춰져 있으며, 병렬로 연결된 컴퓨터들은 서로 연산 및 처리능력을 제공하기도 하고 제공받기도 하는 관계이다. 비유하자면 그리드 컴퓨팅은 인수합병이고, 분산컴퓨팅은 하청업체 내지 아웃소싱 정도?

SETI@home 프로젝트의 경우 BOINC이란 프로그램을 이용하고 있는데, 이 프로그램이 하는 일이 연결된 컴퓨터들을 다수의 연산코어처럼 활용하여 연산 및 처리능력을 제공받는 형식이다. 공익 목적으로 사용되는 그리드 프로그램의 대표주자라고 할 수 있다.

2 한국의 그리드 컴퓨팅

한편, 한국에서는 인터넷 콘텐트(content) 서비스 업자들 가운데 상당수가 애용하는 개념이기도 하다. 동영상 서비스로 말하자면

  1. 사용자 1이 동영상 1을 재생한다.
2. 동영상 1의 내용이 사용자 1의 컴퓨터에 잠시 저장된다.
3. 사용자 2가 동영상 1을 재생한다.
4. 동영상 1의 내용이 사용자 2의 컴퓨터에 잠시 저장된다. 이 때, 동영상 1의 내용은 원(原) 서버가 아닌 사용자 1의 컴퓨터에서 가져온다.
5. 사용자 X가 동영상 1을 재생한다.
6. 동영상 1의 내용이 사용자 X의 컴퓨터에 잠시 저장된다. 이 때, 동영상 1의 내용은 원 서버가 아닌 사용자 1과 사용자 2의 컴퓨터에서 가져온다.

간단히 사용자에게 원 서버 관리자의 짐을 나누어 지게 하는 것이라고 생각하면 된다. 즉 원 서버를 관리하는 업자 입장에서는 원 서버 관리에의 지출을 줄일 수 있다는 유리함이 있는 것이다.

그러나 사용자가 원 서버 관리자의 짐을 나누어 지는 식이기 때문에 사용자 입장에서는 디스크, 네트워크, 메모리 등 컴퓨터 전반의 자원을 평소보다 더 많이 사용하게 된다는 불리함이 있다.

그 밖에도 인터넷을 통한 그리드 컴퓨팅 자체가 크래킹에 악용될 수 있다는 불리함도 있을 수 있으며 이 과정이 사용자의 명시적 동의를 일절 받지 않은 채 이루어진다는 점에서 윤리적 논란의 소지가 될 수도 있다. 또한 한국에서 이 기술을 사용하는 인터넷 콘텐트 서비스 업자들 가운데 대부분이 사용자의 컴퓨터의 자원을 쓰기 위해 사용자의 컴퓨터에 특정 소프트웨어의 설치를 요구하는데 이러한 소프트웨어가 대부분 액티브X 기반이다 보니 이것이 한국 인터넷 환경의 인터넷 익스플로러를 위시한 마이크로소프트 제품군에의 의존을 심화하고 다양한 플랫폼에 대한 접근성 향상의 발목을 잡는 주범이 되기도 한다.

2004~2005년 사이에 네이버에서 동영상 재생을 터보 플레이어로 했는데 터보 플레이어에서 이 그리드 컴퓨팅을 사용했기 때문에 네이버에서 동영상만 보면 인터넷이 많이 느려졌고, 아예 몇몇 대학교 및 공공기관에서는 구내 컴퓨터에 터보 플레이어를 설치하지 말라는 공문을 띄우기까지 했다. 2004년 11월경 이게 공론화되면서 비판이 쏟아졌고, 결국 네이버는 2005년 6월 27일 터보플레이어를 버리고 윈도우에 내장된 미디어 플레이어로 스트리밍하는 방식으로 바꿨지만 2014년(?)에 TV캐스트의 독점계약으로 방송사에게 퍼주다보니 설치하게 하고 있다(...)가 현재는 설치안해도 된다. 모바일 빼고

안드로이드 버전 네이버 미디어 플레이어는 그리드 컴퓨팅을 사용한다. 아이폰 버전에서는 사용하지 않는다(애초에 아이폰 버전에서는 고화질 동영상 재생시 앱을 설치할 필요가 없다).

싸이월드 배경음악 재생 서비스도 이 방식을 사용한다.
판도라TV도 사용했었는데, 나중에 플래시로 바꿨다. 하지만 모질라 파이어폭스 등에서 일부 동영상이 플래시로 인식이 되지 않는 것으로 보아 아직도 판도라TV에 이 방식을 사용하는 동영상이 일부 있는 것으로 판단된다.

클럽박스도 이 방법을 사용한다. 원래부터 클럽박스는 단순한 웹하드가 아니라 그리드 컴퓨팅을 사용한 공유 방식을 사용했는데, 이후에 욕을 상당히 먹게 되면서 2점을 추가로 주는 옵션을 추가하였다. 여기서 2점을 추가하는 의미는 그리드 컴퓨팅 자체를 허용한다는 의미가 아니라 이미 실행되고 있던 그리드 컴퓨팅의 대역폭을 넓힌다는 의미이다. 결국 실행하고만 있어도 컴퓨터의 속도를 깎아먹는 셈.(...) 이를 두고 조삼모사라고 까이기도 한다.
한편 기술적인 면에서 클럽박스의 솔루션은 꽤 유명해서, 게임사에서 게임 클라이언트를 배포하는데서도 쓰고 있다. WOW의 경우 그리드 컴퓨팅은 아니지만 원리가 비슷한 토렌트 방식으로 게임을 배포한다.

사실 널리 알려지지는 않은 사실이지만, 대부분의 국내 웹하드 사는 그리드 컴퓨팅을 사용하고 있다. 지금 당장 작업 관리자를 켜서 qdownupdate.exe, qdownagent.exe, qdownservice.exe, ExpressService.exe, microcloudengine.exe, cloudmanager.exe, winnetplus.exe[2] 등의 파일이 메모리에 상주되어 있지 않은가 살펴보자.(혹은 회원가입 시 뜨는 이용약관에 Ctrl + F로 grid를 검색해서 해당 사이트의 이용 여부를 확인할 수 있다.) 이게 바로 대부분의 웹하드 다운로더를 설치하면 함께 설치하는 퀵다운 서비스라는 그리드 컴퓨팅 프로그램이다. 컴퓨터를 켜면 자동으로 SYSTEM 계정 권한으로 실행되며, 강제종료를 해도 알아서 다시 켜진다. 이것은 해당 프로세스가 인스톨시에 서비스에 등록되어 실행되기 때문인데, 서비스가 강제중단되었을때 자동으로 다시 시작 이라는 옵션이 지정되어 있어 죽여도 죽여도 한도끝도 없이 살아나는 것처럼 보인다.[3] 시작-실행 으로 들어가거나 단축키 Window(특수키)-R을 누른 후, services.msc(즉, 관리도구의 서비스 관리부분을 실행하는 것과 같다.)를 실행해서 서비스 리스트를 보면 쉽게 종료할 수 있다. (XP 기준으로) 이 관리 콘솔에서 서비스를 삭제하는 것은 불가능하나 사용하지 않음 상태로 만들어서 서비스를 더이상 실행되지 못하게고자로 만들 수 있다.
웹하드를 쓰는 사람들은 가급적 받을 것만 받고 나서 해당 프로그램을 강제종료하고 다운로더를 언인스톨하자. 필요할 때 다시 깔면 되니까. 이 과정 자체가 번거롭다면 그리드관련서비스를 처음부터 실행이 되지 않게 설정할 수도 있다. XP이상의 윈도우는 각 실행파일에 접근권한을 설정할 수 있는데 XP에서는 cacls 7에서는 icacls를 사용해 ACL을 편집함으로 권한을 지정할 수 있다. 관련 명령어를 bat파일로 만들어 접근권한을 필요에 따라 변경할 수 있다. 더 쉬운 방법으로 해당 그리드서비스의 실행파일을 찾아 우클릭->속성->보안(탭)->편집 란에서 권한을 지정할 수 있다. (System,Administrators,사용자계정) 모든권한이나 읽기,쓰기,실행등의 권한을 '거부' 로 설정하면 해당 프로그램은 실행도,읽기도,쓰기도,삭제도 안된다. 당연히 재설치도 되지 않는다.
뭐...MSE나 사제 방화벽을 설치해서 위의 프로그램들을 강제로 차단할 수 있다. 윈도우7에선 보다 확장된 기능 덕분에 별도의 유틸 없이도 차단이 가능하다.

사실 위의 방법 외에도 그냥 프로세스 끄자마자 삭제하고 새폴더를 만들어서 이름을 위 응용프로그램으로 바꾸면 된다. 이렇게 하면 삭제된 프로그램을 다시 만들려고 해도 이미 있는 파일이기 때문에 생성이 안 되고 당연 그리드가 돌아가지도 않는다.

다음에서도 이를 적용해 충격과 공포를 주고 있다. 플래시 동영상 중에서 재생 시간이 긴 것[4]은 반드시 피노(Pino)라는 것을 깔아야 볼 수 있게 해서, 이 피노가 그리드 컴퓨팅을 하게 만드는 것이다.[5] 판도라가 어떻게 됐는지를 생각하면 욕먹을 짓. 그리고 다음은 판도라의 교훈을 잊고 판도라가 하던 짓을 다시 하고 있다. 한데 다음 입장에서는 그리드 컴퓨팅 도입이 트래픽 해소 목적이 아니라 동영상 사업 비중을 줄이기 위한 수단이라는 말이 있다.(...) 하긴 얘들 너무 좋은 서비스였다는 듯.
팟플레이어를 사용하거나 약간의 꼼수[6]로 피할 수 있다. 안티피노라는 방법도 있으니 참고하자.#

어떤 외국 안티바이러스 프로그램은 그리드 컴퓨팅을 사용하는 프로그램을 악성 코드로 진단하여 삭제하기도 한다.

이것은 SETI@home이나 Korea@Home의 그리드 컴퓨팅과 차이가 있는데, SETI@home이나 Korea@Home은 CPU의 연산을 필요로 하는 반면 판도라TV나 클럽박스 등의 웹하드류는 CPU보다는 트래픽과 저장장치 엑세스에 초점이 맞춰져있다는 점이다. 물론 둘 다 용어상 그리드 컴퓨팅이지만. 뭐 정확히 나누자면, 전자는 컴퓨팅 그리드이고, 후자는 데이터 그리드로 나눌수 있다.

2012년6월 부터는 KT이용자는 그리드 컴퓨팅을 악용하는 웹하드 업체 이용이 어려워지니 참고하자.

2014년 2월 5일부터 네이버 웹툰에서도 스피드뷰라는 이름의 그리드 컴퓨팅 프로그램이 나왔다. 당연히 이용자들에게 욕을 있는대로 먹고 2월 28일자로 내렸다. 망했어요 허나 네이버 웹툰 안드로이드 앱에서는 유사한 개념으로 여전히 사용되고 있다
위에서 말했듯이 TV캐스트에서도 사용중이었는데 이쪽은 대부분(90%) 방송사에게 퍼주다보니 어쩔수가 없다.(...)[7]
단점만 있는 것은 아니고 스마트폰의 경우 항상 켜져있고 자고 있을땐 사용 하지 않아 자원을 쓸 일이 없을때 그 자원을 다른 곳에 빌려 줌으로서 기부 할 수 있는 애플리케이션도 개발 되어있다.

2.1 웹하드 그리드 컴퓨팅 파일 삭제

레알신세계라는 유틸로 간편하게 삭제할 수 있다. 파일 링크 비스타 혹은 윈7의 경우 삭제 후 마데카솔을 바를 수 있다. 마데카솔은 해제하기 전까진 그리드 컴퓨팅 파일이 다시 못 깔리게 한다.

그리드 스위치라는 프로그램도 있다. 실시간 감시 기능까지 달려있어 사용자가 모르게 컴퓨터에 그리드 컴퓨팅 파일이 실행될때 알아차릴 수 있다.홈페이지네이버 블로그

'그리드킬러'라는 프로그램도 있다.

3 창작물에서의 그리드 컴퓨팅

주의. 내용 누설이 있습니다.

이 틀 아래의 내용은 이 문서가 설명하는 작품의 줄거리나 결말, 반전 요소가 직, 간접적으로 포함되어 있습니다. 작품의 내용 누설을 원치 않으시면 이하 내용을 읽지 않도록 주의하거나 문서를 닫아주세요.
  • 어떤 마술의 금서목록에 등장하는 미사카 네트워크레벨 어퍼는 그리드 컴퓨팅과 같은 원리이다.
  • 공각기동대에서 이시카와는 자신이 운영하는 파칭코 가게에 죽치고 있는 할아버지들의 전뇌를 그리드 컴퓨팅에 이용한다. 물론 몰래 이용하는 것이지만, 전뇌를 쓰는 대신 (댓가삼아) 그 할아버지들의 승률을 유리하게 만들어준다고 한다.
  • 디지몬 테이머즈에서 아이들을 현실로 귀환시킬 와일드 번치 팀의 아크[8]를 띄울 메모리가 데리파의 방해로 인해 휴프노스로도 부족해지자, 곽소룡의 아버지 곽성치의 묘안으로 전 세계 사람들에게 협조를 구한 후 엄청난 수의 컴퓨터들의 그리드 컴퓨팅을 통해 아크를 띄우는 데 성공한다.
  • 터미네이터 시리즈스카이넷(터미네이터3에 의한 설정 변경 이후)도 그리드 컴퓨팅을 위한 프로그램이다.
  • PSYCHO-PASS시빌라 시스템공식적으로는 수도권 각지에 위치한 서버들을 이용해 그리드 컴퓨팅을 통한 병렬 분산 처리를 통해 사람의 범죄계수와 심리, 생각과 적성 등을 판단하는 시스템이다. 그러나 실상은...
  • 총몽 라스트 오더에서 등장하는 중앙전뇌 멜키제데크가 그리드 컴퓨팅을 사용한다. 여기에 숨겨져 있던 무서운 사실이 있으니, 바로 멜키제데크는 자렘의 시민들의 성인식때 척출하는 뇌를 이용해 구성된 것이다. 즉, 반도체 따위가 아닌 인간의 살아있는 뇌를 이용한 그리드 컴퓨팅. 이용된 뇌의 주인들의 의식은 가상세계 속에서 살아가는 상태가 된다. 이런 점에서 영화 매트릭스의 설정과 비슷하나, 매트릭스에선 인간을 건전지로써 사용한다면 이쪽은 뇌만 따로 추출해서 연산능력만을 활용한다.
  • 어쌔신 크리드 시리즈유노는 앱스테르고의 헬릭스 서버에 기생하면서 전세계 네트워크를 돌아다니며 인류를 세뇌하고 있다. 엄밀히 따지면 유노 본인은 프로그램이 아니나, 그리드 컴퓨팅이나 다름 없는 행동양식을 취한다는 점에서 그리드 컴퓨팅의 성격을 강하게 띄고 있으며, 헬릭스 서버와 사용자의 헬릭스 기기들을 제 멋대로 드나들며 데이터를 섞고 조합한다.[9]
  1. 소니스탠포드 대학이 협력하는 그리드 컴퓨팅을 이용한 질병 연구 프로그램이다. 이전에는 플레이스테이션 전용이었지만, 2015년부터는 엑스페리아에 한정해 스마트폰 애플리케이션을 다운받을수 있다
  2. 어째 모 웹하드사이트의 이름이 90%인것같지만 ...
  3. Service 관련 API를 약간이라도 다뤄 본 사람은 쉽게 이해가 가능할 듯.
  4. 대체로 20분이 넘어가는 동영상에 적용되는 것으로 보인다.
  5. 윈도우즈 한정. 리눅스에서는 이런 거 없이 그냥 재생할 수 있다.
  6. 일단 설치를 해 준 후, 시작프로그램과 작업관리자에서는 피노를 제거한다. 이러면 PC를 부팅하자마자 피노가 작동하는 것을 막을 수 있다. 단, 이럴 경우 피노 해당동영상을 재생할 때마다 피노를 설치하라는 메시지가 뜨는데...검색기(시작-검색)에서 pinomate.exe 파일을 찾아 바로가기를 떠 두고 피노 해당동영상을 볼 때만 피노 바로가기를 실행하면 된다. 이 방법은 시작프로그램에 피노를 올리지도 않으므로 익숙해지면 제법 편하게 피노 그리딩을 피할 수 있다.
  7. 근데 다른 웹브라우저에서는 플러그인방식이 아닌 플래시(...)기반의 플레이어인데 아마 NPAPI가 종료되어 설치를 하게 할수없다보니 이렇게 된것.오오 역차별 오오
  8. 후에 그라니가 된다.
  9. 어쌔신 크리드: 신디케이트에서는 헬릭스 유전자 메모리 라이브러리를 대놓고 끌어들여 플레이어에게 플레이하게 하기도 했다.