R&D/Survey2011.07.11 10:23
주니퍼 네트웍스 (www.juniper.net) 에서 작년 말쯤에 새로운 데이터 스트리밍 전략을 발표했었습니다. 미디어 플로우 컨트롤러 제품군인데요. 미디어 플로우 컨트롤러, 미디어 플로우 퍼블리셔, VXA 미디어 플로우 엔진의 세 가지 제품들로 이루어진 솔루션입니다. 이 중 VXA 미디어 플로우 엔진은 미디어 플로우 데이터 전송을 담당하는 하드웨어 박스입니다.

이 솔루션은 가정에 여러 대의 단말이 존재하고, 각각의 단말들이 서로 다른 전송율을 갖는 미디어 스트림을 통해 동일한 컨텐츠를 보게 될 것이라는 상황을 가정하고 있습니다. 일리가 있죠. 단말, 티비, PC가 요구하는 최적의 대역폭이 전부다 다르니까요. 같은 컨텐트를 서로 다른 단말로 이어보는 응용 (Hoppin과 같은)도 현실화되고 있는 상황이니, 그런 상황에 써먹으면 좋을만한 솔루션입니다.

출처: http://www.juniper.net/us/en/local/pdf/datasheets/1000344-en.pdf



이 솔루션은 컨텐츠를 배포하는 사업자가 스트리밍 주체인 환경을 가정하고 있습니다. 위에서처럼요. H.264로 인코딩 해서 주면 미디어 플로우 컨트롤러와 퍼블리셔, 그리고 VXA가 협동해서 트랜스코딩(Transcoding)하는 형태의 솔루션이죠.


요즘 너도 나도 클라우드 클라우드 하니까, 클라우드에 컨텐츠가 올라가 있는 상황에서는 어떻게 운용하면 되는지를 위와 같은 그림으로 친절하게(?) 보여주고 있습니다. 자사 솔루션을 사면 인코딩부터 배포까지 해결할수 있다는 식이죠. 별도의 배포 하드디스크나 서버를 구매할 필요가 없으므로, 좋다고 이야기합니다. (물론 대신 이 솔루션에 돈을 들이긴 해야 하죠. ㅎㅎㅎ)



그런데 네트워크의 에지(edge), 그러니까 위의 그림에서 지역 가입자 망(regional networks)에 해당하는 부분에서 단순히 트랜스코딩만 할 경우에는 전송효율이 사실 떨어질 수 있습니다. 가입자 별로 별도의 세션 관리를 해 주어야 하는데다, 소스에서 계속 인코딩해서 데이터를 보내지 않으면 단말에 대한 전송도 불가능하니까요.

그러니까 그런 점을 개선하기 위해서는 VXA 장비에 캐시(cache)가 붙어야 하죠. 한번 전송된 컨텐츠 원본(H.264로 인코딩 된)을 갖고 있다가, 동일한 컨텐츠에 대한 서비스 요청이 오면 저장된 원본을 서비스 하는 거죠. 물론 캐시니까 무한정 갖고 있을 수는 없겠습니다.

아무튼 그래서 VXA 제품군 가운데에는 1TB, 7TB 스토리지가 붙어 있는 것들이 있습니다. 네트워크 장비가 의례 그렇듯이 가격은 홈페이지 상에서는 미공개. 직접 문의해야 가르쳐 줍니다. ㅋㅋ

신고
Posted by 이병준

소중한 의견, 감사합니다. ^^

Thoughts2011.07.08 13:11
요즘 IT 업계에서 가장 큰 화두 중에 하나는 '클라우드' 입니다. 세상의 모든 정보와 서비스를 유틸리티(Utility)화 하겠다는 이 전략은 이제 단순한 개념의 수준을 넘어섰습니다.

이런 개념은 1969년 Leonard Kleinrock의 논문, "A Vision for the Internet"에서 언급된 바 있습니다.

As of now, computer networks are still in their infancy, but as they grow up and become sophisticated, we will probably see the spread of `computer utilities' which, like present electric and telephone utilities, will service individual homes and offices across the country.

결국 컴퓨팅이라는 것도 나중에는 하나의 유틸리티 처럼 될 것이라는 거였죠. 인터넷 발전과 더불어, 이 이상은 지금 실현 단계에 와 있습니다.

그런데 이 이상이 올바르게 실현되려면, 한 가지 가정이 만족되어야 합니다. 전기와 전화같은 것은 '인프라'입니다. 어떤 것이 인프라로 취급될 수 있으려면, 그 성능에 대한 모든 측면이 예측 가능해야 합니다. 천재지변이 일어나지 않는 다음에야, 거의 항상 정상적으로 동작해야 합니다.

 


그런데 인터넷을 통해 유입되는 데이터 양이 기하급수적으로 늘어나다 보니, 현재 인터넷은 인프라로서의 구실을 하지 못하게 되었습니다. 바이러스가 퍼지면 네트워크가 다운되고, 특정한 컨텐츠에 대한 요구가 폭증하면 인터넷 접속이 올바르게 이루어지지 못하는 일도 왕왕 있습니다.

결국, 인터넷을 통해 유통되는 데이터가 인터넷의 올바른 동작을 막는 일이 생긴다는 겁니다. 그래서 인터넷은 다른 인프라와는 좀 다릅니다. 수도를 예로 들어봅시다. 수도관을 통해 유통되는 데이터는 '물'입니다. 물이 '수도관' 자체를 공격하는 일은 없습니다. 수도 사용자가 늘면 물 공급량이 부족해서 물이 찔끔찔끔 나오게 되는 일은 있을 수 있어도, 물이라는 데이터가 수도관이라는 인프라 자체를 못쓰게 만들어 버리는 일은 없습니다. 물에 바이러스를 뿌린다고 해도 물을 마시는 사람들이 타격을 입을 지언정, 수도관이라는 인프라가 고장나 버리는 일은 좀처럼 발견하기 힘들죠.

하지만 인터넷의 경우는 확실히 다릅니다. 데이터를 조작하면, 데이터를 실어나르는 인프라를 망가뜨리는 일이 가능합니다. 그것은 인터넷이 자신이 유통하는 데이터의 코드를 '해석'해서 움직이기 때문입니다.


인터넷을 통해 돌아다니는 데이터의 앞부분에는 '헤더(header)'라는 좀 특별한 종류의 데이터가 붙습니다. 이 데이터를 해석해서 인터넷 장비들은 데이터를 '어디로 보낼지' 그리고 '어떻게 처리할 지'를 결정합니다. 문제는 이 헤더라는 것이 '조작 가능하다'는 점입니다.

생각해보면 인터넷에 붙어 있는 모든 단말과 장비들은 유통되는 데이터들을 어떤 식으로든 해석합니다. 그 해석 메커니즘을 교란하여 단말에 해를 끼치는 코드를 우리는 '바이러스'라고 부르고, 인터넷에까지 영향을 미치는 코드를 우리는 때로 '웜(Worm)'이라고 부릅니다.

그러므로 인터넷을 '인프라'의 수준으로 격상시키려면, 우리는 가급적 인터넷을 구성하는 장비들이 (단말은 제외합시다. 결국 단말들은 수도관을 통해 흘러나오는 물을 받아마시는 사람들과 같은 존재들이니까요) 데이터의 내용을 해석하지 않도록 만들 필요가 있습니다. 그래야 데이터를 조작해서 네트워크 자체를 교란할 가능성이 줄어듭니다. 

하지만 현대 네트워크는 헤더 없이는 동작하지 않습니다. 이는 네트워크를 통해 유통되는 데이터가 전적으로 목적 지향적이기 때문입니다. 물은 어디로 배달되더라도 그저 물일 뿐이고, 전기는 어디로 배달되더라도 전기일 뿐입니다. 원하는 양만큼만 배달될 수 있으면 됩니다. 하지만 네트워크를 통해 배송되는 데이터는 반드시 '사용자가 원한 바로 그 데이터'이어야 하고, 내가 접속한 '바로 그 웹 사이트'로부터 만들어진 데이터이어야 합니다. 여기에 '인프라로의 격상'을 원하는 인터넷의 딜레마가 있습니다. 

데이터와 네트워크의 전쟁을 목도하는 많은 네트워크 연구자들은, 바로 이 지점을 고민하고 있습니다. 그리고 기본적으로 사람들이 내 놓은 아이디어는 이런 겁니다. 수도관에서 물을 받아 마시는 사람들은 수도관에 자기 위치를 전송하지 않습니다. 하지만 인터넷은 다릅니다. 위치에 관한 기본적인 정보가 인터넷에 전달되지 않으면 (IP 주소라고 하죠) 인터넷에서 정보를 받아 먹을 수가 없습니다. 그러니 사람들은 '위치 정보를 인터넷의 핵심 부분에서 가급적 떼어 놓도록 하면 어떨까' 하고 생각하기 시작했습니다. 

그래서 나온 아이디어가 IP 주소는 기존의 인터넷 망에 흡수해 버리고, 사용자는 IP 주소와는 무관하게 인터넷을 이용하도록 하자는 방안입니다. IP 주소는 인터넷을 포설하는 데만 쓰고 (마치 수도관 처럼요) 사용자는 자기가 원하는 데이터가 무엇인지만 명시하면 그 데이터를 받아먹을 수 있도록 하자는 겁니다. 

이 아이디어가 성공적으로 정착되려면, (1) 네트워크를 공격하려는 사용자가 IP 체계를 교란하지 못하도록 해야 하고 (2) 네트워크 사용자는 데이터 중심적으로 네트워크를 사용할 수 있어야 합니다. 그래서 사람들은 그런 아이디어들을 묶어 '미래 인터넷(Future Internet)'이라고 부르기 시작했습니다.

클라우드 서비스가 본격화되고, 아이폰과 같은 스마트 단말들이 깔리고, 바야흐로 세상이 유틸리티로서의 컴퓨텅을 본격적으로 사용하게 됨에 따라, '인터넷이 예전같이 빠르게 움직이지 않는다'고 투덜거리는 사람들이 늘어가고 있습니다. 사용자 입장에서야 어떨런지 모르겠습니다만, 네트워크 연구자들은 그 문제를 해결하기 위해서 지금도 고군분투하고 있습니다. 데이터와 인터넷 사이의 전쟁은 사용자들에게는 드러나지 않습니다. 마치 사이버 공간에서 진행되는 서바이벌 게임과도 같습니다.

그러니, 네트워크가 예전같지 않다고 서비스 제공 업체들을 너무 나무라지는 마세요. 인터넷을 정말로 뛰어난 인프라로 만들기 위해, 지금도 전 세계의 연구자들이 밤잠을 줄여가며 애쓰고 있으니까요.

신고
Posted by 이병준

소중한 의견, 감사합니다. ^^

Thoughts2011.06.30 09:41
클라우드 시대가 되면서 인간의 온갖 지식이 데이터센터에 몰리다보니, 네트워크 속도 또한 점점 더 고도화되어야 한다는 필연적 요구가 생기고 있습니다. 최근의 주목할만한 활동들을 살펴보면...

1. 주니퍼, 노키아 시멘즈 네트웍스와 함께 100Gbps 이더넷 시연

주니퍼가 노키아시멘즈 네트웍스와 함께 100Gbps 이더넷 기술을 시연했습니다. 이 정도 스피드면 학계에서 예견했던 대로, 클라우드 데이터 센터 사이의 전송망을 100Gbps 이더넷으로 포설할 수 있습니다. 조만간 분산 클라우드 센터가 이더넷 네트워크로 묶여 하나의 클라우드 데이터 센터처럼 돌아갈 날이 올지도. http://www.rethink-wireless.com/2011/03/08/juniper-nsn-venture-ready-100g-transport.htm

2. 시스코의 에지 라우터 솔루션 ASR 9000

바야흐로 모바일 단말에 대한 데이터 트래픽 유통량이 스마트 폰 시대의 도래와 맞물려 엄청난 속도로 증가하게 되면서, 모바일 구간과 코어를 연결하는 에지 라우터의 중요성이 증가하게 되었습니다. 제타바이트 시대에 대비하기 위해 내놓은 것이라고 호언한 이 에지 라우터 장비는 슬롯별로 400Gbps 대역폭을 제공하고, 가격은 $80,000 수준입니다. IP over DWDM 기술을 사용합니다.

재미있는 것은 고속 비디오 스트리밍과 컨텐트 캐싱을 지원하기 위한 AVS (Advanced Video Services) 기능을 장비 자체적으로 지원한다는 점입니다. 네트워크 에지 구간에서 컨텐트 캐싱을 지원한다는 뜻이니, 단말 사용자들이 특정한 동영상을 경쟁적으로 스트리밍하려 시도하는 경우, 네트워크 대역폭 소모를 줄일 수 있겠습니다. 그런 측면에서 보면 클라우드 시대의 스마트폰 사용자들로 인한 트래픽 증가에 대처하는 좋은 솔루션이 될 수 있을지도. 하지만 역시 문제는 가격.
http://www.rethink-wireless.com/2008/11/13/cisco-mobile-video-explosion-asr-9000.htm



3. 에릭슨, LTE-Advanced 시연

LTE-Advanced 기술을 지원하기 위한 관련 업체들의 움직임이 활발한데요. 개인적으로는 우리나라에는 Wibro같은 기술도 있는데 왜 LTE (Long-term Evolution) 기술 도입에 그렇게 적극적인지 모르겠습니다. 요즘 티비 광고를 보면 전부 LTE를 깔려고 미쳐있는 것 같기도 하더군요. ㅎㅎ 반면 와이브로 기술이 탑재되어 있는 스마트폰은 찾아보기 힘든 실정이고...

무선 구간이 고속화되는 건 바람직한 일이긴 한데, Wibro가 소외되지 않도록 단말 제조사들도 조금 생각을 해 줬음 하는 바람입니다. LTE가 Wibro에 비해 더 나은 기술이라고 보기는 힘들거든요.
http://www.rethink-wireless.com/2011/06/29/ericsson-expects-lte-advanced-live-2013.htm

신고
Posted by 이병준

소중한 의견, 감사합니다. ^^

Thoughts2011.06.29 09:25
클라우드 개발자가 각광받고 있다는군요. 연봉이 20%~30% 정도는 뛰었고 팀장급은 아예 '부르는 게 값'일 정도라는데. 그런데 대관절 '클라우드 개발자'는 뭘까요?

1. 클라우드와 연동하는 앱 개발자

'연동가능한' 클라우드는 대부분 API가 있습니다. 이런 API를 제공하는 클라우드와의 연동은 웹 매쉬업 서비스를 개발하는 거나 마찬가지 수준입니다. 개발경험이 time to market을 낮추는데 기여할 수 있다는 이해하겠는데 20~30%나 연봉이 뛰어야 할 뭔가가 있는 건지는 알쏭달쏭한 영역. 하지만 여기까지 경험이 있다면 어차피 개발자들 연봉은 낮은 상태이므로 당연히 올려줘야 한다는 생각이 들기도. ㅎ



2. 클라우드 상에서 돌아가는 computing software 개발자

가령 구글의 Map-Reduce 모델 같은걸 사용해서 클라우드 computing resource 위에서 뭔가 대규모 데이터처리 어플리케이션 같은걸 개발해 보는 분들이 이 영역에 속하겠습니다. 종전의 GRID 컴퓨팅 하던 분들이 대거 이쪽으로 옮겨가는 통에 최근 각광받고 있는 듯. 그런데 이런 부분의 경험이 있는 개발자들은 (1) 학교에 계시거나 (2) 데이터센터를 보유한 대형 포털에 주로 몰려 계실 듯. 이 정도면 20~30% 정도 이상의 연봉 상승은 당연할 것 같고, 더 올려줘도 상관은 없을 듯.



3. 클라우드 플랫폼 소프트웨어 개발자

야후의 Hadoop이나 아마존의 Dynamo (Cassandra) 같은 소프트웨어를 개발하시는 분들이 여기에 해당. 이런 분야의 경력자라면 사실 100% 상승 정도는 당연하다고 봐도 아깝지 않을 정도의 초 고급 개발자로, 돈을 얼마 준다고 해도 아깝지 않을 정도의 희귀 인력.

4. 기타 영역

  • HIVE 같은 프로젝트를 이용해서 NOSQL DBMS에 SQL 인터페이스를 붙여봤다거나
  • Cassandra 같은 NoSQL 데이터베이스를 깔아서 데이터 처리에 응용해봤다거나
  • Google App Engine을 통해서 서비스하는 웹 기반 응용을 완벽하게 한번 만들어 봤다거나
  • 클라우드 기반의 인프라 서비스를 활용해서 뭔가를 만들어 봤다거나

이런 기술에 대한 경험이 있다면 20~30% 이상의 연봉향상을 기대하는 것이 타당할지도 모르겠군요. 어차피 돈이라는 것은 수요에 따라 변동하게 마련이니까요. 관련분야에서 석박사학위를 취득했거나 자격증이 있으면 좀 더 나을 수도 있겠습니다. 그런 경우에는 20~30% 보다 더 올려서 받을 수도 있겠죠. Hadoop Training을 받아서 Cloudera Certification을 취득하는 분도 있던데, 관심 있는 개발자라면 한번 시도해 볼 수도 있겠습니다.

개발자에 대한 요구가 늘어나고 개발자의 연봉이 늘어나는 건 좋은 일이지만, 한편으로는 현재 IT 업체들이 '굉장히 근시안적으로 사람을 뽑는' 경향이 드러난 것 같아서 씁쓸합니다. 사람을 뽑아서 문제를 해결하려고 하면 언제까지나 돌려막기가 될 수 밖에 없습니다. 쓸만한 사람을 뽑아서 미래를 보고 내부적으로 키워 인재로 만드는 것이 아니라, 이미 검증된 사람을 뽑아 일단 급한불을 끄겠다는 식으로 뭔가를 하면 그런 일은 급조된 농구팀으로 우승을 해 보겠다는 식의 이야기밖에 되질 않는 것 같네요.

인재로 만들어 놓으니 다른 데로 가버린다구요? 그럼 그건 '인재'로서의 대우를 제대로 안해줬다는 이야기겠죠. '인간적인 면'에 너무 기대시면, 나중에 더 큰 리스크가 다가옵니다. 요즘 같은 세상에선요.

신고
Posted by 이병준

소중한 의견, 감사합니다. ^^

  1. 댓글 보고 왔습니다. 사실 너무 놀랐습니다.

    열심히 사는 모습 살짝 엿보고 갑니다. 페이스북 친구와 블로그 북마크도 하고 갑니다.

    행복한 하루되세요. 저는 늘 똑같습니다. 세팍타크로 라이프 포에버~~~

    2011.06.29 21:40 신고 [ ADDR : EDIT/ DEL : REPLY ]
  2. 재미있게 잘 보았습니다. 좋은 하루 되십시오.

    2011.06.30 10:48 신고 [ ADDR : EDIT/ DEL : REPLY ]