구글의 개발자 컨퍼런스인 구글 I/O 컨퍼런스 2010이 5/19일 ~ 20일 양일간에 걸쳐 개최되고 있는데, 첫날인 5/19일에 드디어 구글의 비디오 코덱 오픈 소스 프로젝트(일명 WebM)가 런칭되었다. 필자가 이 이슈와 관련해서 구글의 VP8 비디오 코덱 오픈 소스화??? 빠른 HTML5 기반 비디오 활성화 예상!!!와 HTML5 비디오 영향으로 플래시 쇄퇴?라는 글을 통해 언급한 적이 있다. 그러나 실제로 발표한 내용을 보니 필자가 예상한 것보다도 훨씬 큰 영향을 줄 것으로 예상된다.

일단 공식적인 프로젝트명이 WebM(an open web media project)이며 아래와 같은 내용을 목표로 한다.
  • BSD 스타일 로열티 프리 라이센스 형태의 VP8(고화질 비디오 코덱) 개발
  • 기존 오픈 소스 오디오 코덱인 Vorbis 개발
  • Matroska 미디어 콘테이너의 일부분을 기반으로 컨테이너 포맷 개발(확장자는 .webm)

일단 VP8이 주목을 받을 수 밖에 없는 이유는 기존에 비디오 코덱에 대한 오픈 소스 프로젝트가 없었던 것은 아니지만 H.264에 비해서 효율성이나 성능에 대한 부분이 크게 떨어져서 실제로 상용 서비스에 채택해서 활용되지 못한 상황에서, VP8은 오픈 소스 프로젝트이지만 H.264 보다 훨씬 더 좋은 효율성과 성능을 자랑하기 때문이다. 따라서 지금처럼 로열티를 지불하면서 H.264를 사용할 의미가 없을 것으로 보인다.

또한 한가지 더 놀라운 것은 WebM 프로젝트 런칭 시점임에도 불구하고 이를 지원하는 기업들의 수가 상당히 많고(아래그림 참조), 또한 빠른속도로 증가하고 있다는 것이다. 추가적으로 재밌는 것은 어도비도 지원 업체 중 하나라는 것인데, 이는 예전에 플래쉬에서 On2의 VP6를 사용했었다는 것을 생각하면 이해가 편할 것 같다. 어도비 입장에서도 로열티가 없는 코덱이 있다면 이를 마다할 이유가 없다. 그리고 지원업체들 중 하드웨어 업체들 대부분은 칩을 개발하는 업체들인데 이를 통해서 아마도 VP8에 대한 하드웨어 가속기능들이 빠르게 지원되지 않을까 생각된다.



WebM 프로젝트의 공식적인 런칭을 통해서 앞으로 HTML5 비디오 코덱에 대한 이슈는 해결이 될 것으로 조심스럽게 예측해 본다. 이미 크롬, 오페라, 파이어폭스가 곧바로 VP8을 지원할 것이라고 발표를 했으며, 5/19일 마이크로소프트 블로그에 IE9도 H.264와 함께 별도 플러그인 형태로 별도의 설치가 필요하지만 VP8을 지원할 것이라는 글이 올라온 것을 감안하며, VP8이 그야말로 웹 비디오의 공식적인 표준 코덱의 1순위임에 의심할 여지가 없어보인다. 또한 개인적으로 기존에 코덱에 대한 표준을 개발해온 MPEG(ISO/IEC JTC1 SC29 WG11) 표준화 활동이 향후 어떻게 대응이 가능할지 궁금증이 생긴다.


(참고문서)
Posted by 이원석(wonsuk73@gmail.com)

댓글을 달아 주세요

  1. arozin 2010.05.20 13:52 신고  댓글주소  수정/삭제  댓글쓰기

    국내 포탈들이 더 이상 H.264를 지원할 필요가 없을까요? 정말이요?
    국내 포탈들은 아직도 IE6도 지원을 해야하는 상황인데 너무 성급한 판단인 것 같습니다. 먼 훗날에 VP8이 윈도에 기본으로 설치되어 있고 IE9 이하 버전을 지원하지 않아도 되는 상황이면 생각해볼 수 있는 시나리오라고 생각됩니다. 특정 플랫폼(예를들어 맥?)이 H.264만 지원한다고 하면 H.264를 버릴 수는 없을 것입니다.

    IPTV나 모바일 IPTV도 단 기간에 H.264를 버릴 수는 없을 것입니다. 단말기에서 코덱이 지원되어야 하는데 이제 공개되면 칩셋, 소프트웨어 코덱이 단말에 들어가는 시간동안에는 당연히 실현 불가능한 솔루션이겠지요. 그리고 대부분의 비디오 표준에 H.264가 박혀 있는데(!) 여러 정치적인 이슈들 때문에도 단말에서 H.264를 몰아내는 상황은 일어나지 않을 것입니다. H.264를 사용하지 않으면 로얄티를 내지 않아도 되어서 좋겠지만 말입니다...

    물론 공개되어 있는 라이센스를 하지 않아도 되는 표준이 있다는 것은 좋은 것(!)입니다.

    짧은 생각 남겨봅니다. ^^;

  2. 이원석(wonsuk73@gmail.com) 2010.05.20 14:57 신고  댓글주소  수정/삭제  댓글쓰기

    전적으로 동의합니다~^^ 댓글 감사합니다~ ;)

  3. 김성훈 2010.05.20 18:18 신고  댓글주소  수정/삭제  댓글쓰기

    퍼가도 될까요? HTML5정보에 대해 잘 정리 되있는거 같아서요 ^^;;

  4. 최인묵 2010.05.20 21:47 신고  댓글주소  수정/삭제  댓글쓰기

    구글이 인수한 On2가 자체코덱뿐만 아니라 해당 코덱의 스트리밍 엔진까지도 만들고 있었던 것으로 볼때 VP8 코덱 영상의 전송을 위해 구글이 스트리밍 엔진까지도 무료화할지에 관심이 갑니다. 현재 H.264 코덱을 스트리밍하는 대표적인 엔진인 FMS(Flash Media Server)와 어도비출신의 엔지니어들이 만든 Wowza 엔진(짝퉁이지만 기능은 훨씬 더 훌륭합니다.) 모두 상용으로 판매되고 있는 상황에서, 영상의 코덱과는 필수불가분의 관계에 있는 스트리밍 엔진 시장도 많은 변화가 불가피한 것으로 보입니다.

  5. 이원석(wonsuk73@gmail.com) 2010.05.21 09:05 신고  댓글주소  수정/삭제  댓글쓰기

    좋은 이슈에 대해서 말씀해 주셔서 감사합니다. 사실 현재 HTML5 비디오 남아있는 큰 이슈 중의 하나가 스트리밍입니다. 애플은 HTTP Live Streaming 이라는 이름으로 IETF, MPEG, 3GPP 등에서 표준화를 진행하고 있습니다. 구글은 어떤 방식을 들고나올지 있는지 궁금하네요^^

  6. 정태영 2010.06.03 00:46 신고  댓글주소  수정/삭제  댓글쓰기

    일부 내용에서 오해를 일으킬 수 있을 것으로 예상됩니다. WebM 비디오 코덱은 VP8입니다.

    VP8의 오픈소스 구현물은 BSD License (코드 저작권과 관련된 라이센스이죠)를 가지므로 무료가 맞습니다. 하지만 VP8에 사용된 기술들에 대한 특허 라이센스는 어떻게 될지 아직 미지수라고 생각합니다.

    H.264에 동일한 이야기를 적용해보겠습니다.

    H.264의 오픈소스 구현물은 x264이며 x264는 GPL License (역시 코드 저작권과 관련된 라이센스이죠)를 가지므로 제한적으로나마 무료라고 볼 수 있을겁니다. 하지만 H.264에 사용된 기술들에 대한 특허 라이센스는 무료가 아닙니다. 그렇기 때문에 MPEG-LA가 있는거고 라이센스료를 지불해야하는 것이겠죠. ;)

    다시 말해 오픈소스라는 것은 코드 저작권에 대한 라이센스 프리를 의미하는 것이지 기술에 대한 라이센스 프리를 의미하는 것이 아닙니다.

    얼마전 x264 개발자의 블로그에서 비교되었듯이 VP8에 사용된 기술들은 H.264에 체택되어 있는 기술들과 굉장히 유사(동일)합니다. VC-1이 라이센스 프리 코덱을 지향하며 표준으로 만들어졌지만 결과적으로 현재 특허 풀이 생성되었고, 라이센스 프리는 꿈이 되어버렸습니다.

    저는 VP8이 VC-1과 마찬가지의 수순을 밟을 것으로 예상하는데 생각이 조금 다르신 거 같네요. ;)

    • 이원석(wonsuk73@gmail.com) 2010.06.03 15:54 신고  댓글주소  수정/삭제

      좋은 댓글을 올려주셔서 감사합니다~

      말씀하신 특허이슈와 관련해서 저두 관심을 갖고 있는데 HTML5 관련 표준화를 하는 친구들은 이 부분이 이미 구글 내부적으로 정리가 되었다고 하더군요. 구글은 완전 무료로 쓸 수 있는 기술이 아니면 이렇게 공개하는 의미가 없습니다. 그리고 남은 특허 이슈들이 있다면 모질라는 파이어 폭스에 절대로 이 코덱을 넣지 않았을 겁니다.

      모든 것이 그렇지만 항상 다양한 의견들이 있을 수 있습니다^^ 어떤 것이 맞을지는 사실 잘 모르구요... 좀더 시간이 지나야 정확히 알 수 있겠죠.

      할튼 저의 개인적인 생각은 VP8 코덱에 대한 특허 이슈는 문제가 되지 않을 것으로 생각합니다. 그리고 혹시나 구글이 예상하지 못한 문제가 되더라도 구글이 해결을 할 것으로 예상해 봅니다^^

      앞으로도 좋은 의견 부탁드립니다~

  7. water cooling 2012.02.17 12:28 신고  댓글주소  수정/삭제  댓글쓰기

    도바나나다이어트해는

  8. this url 2012.04.01 08:41 신고  댓글주소  수정/삭제  댓글쓰기

    그의아이들(가족들이라네.정 벽고멋 리얼리즘 품입니.와~ 그냥사람이분하고 있 느낌입니.대하네요...

  9. massagem tantrica sp 2014.04.25 02:19 신고  댓글주소  수정/삭제  댓글쓰기

    기술들은 H.264에 체택되어 있는 기술들과 굉장히 유사(동일)합니다. VC-1이 라이센스 프리 코덱을 지향하며 표준으로 만들어졌지만 결과적으로 현재 특허

  10. acompanhantes em sp 2014.04.30 06:39 신고  댓글주소  수정/삭제  댓글쓰기

    HTML5 관련 표준화를 하는 친구들은 이 부분이 이미 구글 내부적으로 정리가 되었다고 하더군요. 구글은 완전 무료로 쓸 수 있는 기술이 아니면 이렇게 공개하는 의미가 없습니다. 그리고 남은 특허 이슈들이 있다면 모질라는 파이어 폭스에 절대로 이 코덱을 넣지 않았을 겁니다.

애플이 최근 세계적으로 주목받고 있는 아이폰과 아이패드에서 플래시를 지원하지 않고, 구글의 유튜브에서 HTML5 기반의 비디오 서비스를 시작하면서 인터넷 콘텐츠 서비스들이 크게 동요되고 있는 것으로 보인다. 또한 그동안 HTML5를 지원하지 않았던 MS의 IE가 IE9에서 HTML5의 비디오를 지원하고, 구글이 이번달에 있을 구글 I/O 컨퍼런스에서 H.264보다 기술적으로 우위에 있는 VP8 코덱을 오픈소스 프로젝트로 런칭할 것으로 예상되어 향후 표준 기반의 HTML5 비디오가 대세가 될 것으로 예상된다.

본 글에서는 이러한 예상은 좀더 구체적인 근거를 보여주는 자료가 있어 간단하게 소개하고자 한다. 아래 그래프는 encoding.com에서 제공한 것으로 온디맨드(On-demand) 비디오 인코딩에서 사용된 코덱에 대한 통계를 2009년 2사분기 부터 2010년 1사분기까지 보여준다. 이 자료는 MySpace에서 부터 MTV까지 다양한 클라이언트 를 위한 온디맨드 비디오 인코딩에 대한 통계이며, 작년에 대략 5백만 비디오가 인코딩되어 어떤 포맷의 활용이 늘었는지 또는 줄었는지 트랜드를 아주 잘 볼 수 있는 자료이다.




위의 그래프에서는 Flv와 Flash VP6가 플래시 비디오를 의미하고 이와 함께 현재까지 HTML5의 비디오 포맷으로 활용되고 있는 H.264와 Ogg Theora의 활용 통계를 보여준다. H.264의 경우 2009년 2사분기에 31%이던 점유율이 2010년 1사분기에는 66%까지 상승한 반면에 플래시(Flv와 Flash VP6 포함)의 경우는 69%에서 26%정도로 점유율이 급격히 떨어지는 대조적인 모습을 볼 수 있다. 이는 인터넷 동영상 시장을 거의 장악하고 있는 플래시의 힘이 약화되고 있음을 볼 수 있다. 

향후 어떻게 변할지 모르겠지만 다음과 같은 세가지 이유로 어도비 플래시가 지속적으로 궁지에 몰릴 가능성이 크다고 생각된다. 첫째, 주요 브라우저들의 공개 표준인  HTML5 비디오를 거의 모두 지원하고 있다. 거기에 MS에서 IE9을 공개할 때 OS의 하드웨어 가속화 API를 사용하는 등 브라우저의 발전이 상당히 빨라지고 있다.둘째, 애플을 포함한 제조업체들이 향후 출시할 수많은 제품들을 고려할 때 더이상 플래시 플러그인을 추가할 이유가 약해지고 있다는 것이다. 플래시 플러그인을 사용한다는 것은 제조업체 입장에서는 제품 개발이 타사에 의존성을 갖는 것이므로 바람직하지 않다. 셋째는 HTML5에서 큰 이슈중의 하나였던 코덱에 대한 문제가 구글의 VP8 오픈소스 코덱을 통해 해결이 될 예정이라는 것이다. 인터넷 콘텐츠 제공자 또는 관련 소프트웨어 개발 업체(브라우저 업체 포함)에서는 로열티 없이 사용할 수 있는 성능 뛰어난 오픈소스 코덱을 사용할 가능성이 크다. 또한 VP8 오픈 소스 프로젝트가 러칭한 후 바로 이를 지원하는 구글의 크롬과 파이어폭스 브라우저가 공개될 예정이다. 참고로 구글의 VP8에 대해 내용은 예전에 올렸던 "구글의 VP8 비디오 코덱 오픈 소스화??? 빠른 HTML5 기반 비디오 활성화 예상!!!" 글을 참고하기 바란다.


Posted by 이원석(wonsuk73@gmail.com)

댓글을 달아 주세요


올해 4월15일에 제 블로그에서 "내 브라우저는 HTML5 기능을 얼마나 지원할까?"라는 글을 통해서 단지 사이트에 접속하는 것만으로 본인이 사용하는 브라우저가 HTML5를 지원하는 정보를 분석해주는 The HTML5 TEST를 소개한 적이있다. 이 시험 사이트에 가보면 알겠지만 아직 버전이 0.9로 되어 있으며 현재 1.0 버전을 개발 중에 있다. 0.9 버전에서는 총점을 160점으로 하고 있으나, 1.0 버전에서는 총점을 250점을 기준으로 평가하며 현재는 베타 형태로 운영하고 있다.  The HTML5 TEST 1.0 베타 서비스를 기준으로 주요 데스크탑 브라우저와 모바일 브라우저를 시험한 결과는 아래와 같다.
 

Desktop Browsers

BrowserVersionScoreBonus
Opera 10.5 118 1
Safari 4.0.5 123 4
Firefox 3.6.3 139 1
Chrome 5.0.342.9 167 4
Chrome 5.0.377.0 178 0
Safari r57509 190 4


Mobile devices

DeviceOperating SystemVersionScoreBonus
- Android 1.6 42 0
Apple iPhone iPhone OS 3.0 116 4
Apple iPhone iPhone OS 3.1 119 4
Apple iPad iPhone OS 3.2 121 4
Palm Pre WebOS 1.4 122 2
- Firefox Mobile 1.0 139 1
- Android 2.0 – 2.1 145 0
Apple iPhone iPhone OS 4.0 177 4

시험 결과를 보면 데스크탑, 모바일 구분없이 애플과 구글의 브라우저가 최상위권을 유지하고 있음을 확인할 수 있다. 애플의 Safari와 아이폰의 경우 그리고 구글의 크롬과 안드로이드의 경우를 볼때 새롭게 출시되는 브라우저 버전에서 크게 향상된 HTML5 기능을 지원하고 있는 것을 볼 수 있다. 이는 모두 웹킷 기반의 브라우저를 기반으로 하고 있지 때문이 아닌가 생각되며 또한 두 회사 모두 HTML5에 많은 노력을 하고 있음을 알 수 있다.


Posted by 이원석(wonsuk73@gmail.com)

댓글을 달아 주세요

  1. polos ralph lauren 2013.04.20 16:26 신고  댓글주소  수정/삭제  댓글쓰기

    지독한 네게 의미를 준 너의 사랑

  2. acompanhantes em sp 2014.04.30 06:35 신고  댓글주소  수정/삭제  댓글쓰기

    미디어가 보여질 때 이들의 픽셀을 캔

HTML5에 관심이 있는 사용자라면 당연히 자신이 사용하는 브라우저가 HTML5 기능을 얼마나 지원하고 있는지 궁금할 것이다. The HTML5 TEST 사이트는 이와 같은 궁금증을 해결해 준다. HTML5의 다양한 기능들을 세분화하여 시험한 후 이에 대한 결과를 깔끔히 정리하여 보여주는데 재밌는 것은 이를 점수화하여 보여준다는 것이다. 기준이 되는 총 점은 160점이며 이를 기준으로 브라우저를 시험한 후 점수를 보여준다. HTML5의 기능은 아래와 같은 그룹으로 나누어 평가해서 보여준다.

- Doctype
- Canvas
- Video
- Audio
- Geolocation
- Storage
- Offline Web Applications
- Workers
- Section elements
- Grouping content elements
- Text-level semantic elements
- Forms
- User interaction

아래의 사진은 Opera 10.51 브라우저로 시험한 결과로 총점은 102점!



구글 크롬 4.1.249.1045 버전의 총점은 118점!  오페라보다 훨씬 높은 점수.



파이어폭스 3.6.3 버전의 총점은 101점! 오페라와 거의 비슷.



아이폰 사파리 브라우저는 예상보다 높은 113점!!! Good Job~




안드로이드 폰도 해보고 싶은데 없어서 아쉽다...




Posted by 이원석(wonsuk73@gmail.com)

댓글을 달아 주세요

  1. 에테르 2010.05.26 22:04 신고  댓글주소  수정/삭제  댓글쓰기

    안드로이드폰에서 돌핀브라우저로 테스트해보았는데
    118점 나왔네요. 10년 5월 26일 기준 최신버전(1.2.0)

  2. karazhan 2010.07.30 09:43 신고  댓글주소  수정/삭제  댓글쓰기

    아이폰 4.0 의 사파리로 185점 +7 보너스 나왔습니다.
    2010.7.30 오전에 테스트했어요.

  3. karazhan 2010.07.30 10:04 신고  댓글주소  수정/삭제  댓글쓰기

    구글 HTC 디자이어에 내장된 브라우저 151점 +0 보너스 나왔습니다.
    역시 비슷한 시간이에요.
    크롬을 내장하고 있을줄 알았는데 HTC 커스텀 브라우저가 내장되어 있네요.
    안드로이드 2.1 에서 확인했습니다.

  4. massagista 2014.05.14 12:53 신고  댓글주소  수정/삭제  댓글쓰기

    기고있다는 점을 제외하고 말을해야할지 모르겠어요. 블로그가 멋지 네요.

안드로이드 SDK 2.0의 주요기능

구글이 지난해 10월말 안드로이드 2.0 SDK(코드명 Eclair)를 발표하였다. 이번 2.0 SDK의 주요 기능을 보면 하나의 디바이스에서 여러 개의 구글 계정을 추가하여 각 계정별로 이메일과 전화번호부 등을 관리할 수 있는 다중 계정 기능을 지원하며, 전화번호부 정보를 기반으로 전화, SMS, 이메일 등을 편리한 GUI를 통해서 선택할 수 있도록 하는 새로운 API를 지원한다. 또한 대표적인 이메일 서버인 마이크로소프트의 익스체인지(Exchange) 서버 지원 기능, 업무용 및 개인용 이메일 구분 기능 등을 지원한다. 이외에도 저장된 SMS, MMS 검색 기능, 카메라에 플래쉬, Scene, 화이트 밸런스, 컬러 효과 등 지원 기능, P2P 연결이나 게임기능에 활용 가능한 블루투스 API 지원, 향상된 입력을 위한 가상 키보드 기능, 멀티 터치 기능 등이 추가되었다. 이렇게 정말 빠른 속도로 안드로이드가 새로운 기능을 보완해 나가는 모습을 볼 때 앞으로 안드로이드가 모바일 플랫폼 시장에서 주요 플랫폼 중의 하나가 되는 것은 너무나 자연스러운 일이라 생각된다. 그러나 필자가 안드로이드 2.0 SDK에 대해 아직 언급하지 않은 기능이 한가지 있다. 그것은 웹 브라우저에 HTML5의 일부 기능이 추가되었다는 것이다. HTML5는 1997년 HTML4 표준이 제정된 이후에 10년이 넘는 공백기간을 통해 새롭게 만들어지는 차세대 HTML 표준이다. 추가된 HTML5 관련 기능을 보면, 클라이언트의 데이터베이스에 대한 API 지원, 오프라인 응용을 위한 캐쉬 지원, 단말의 위치정보 지원을 위한 Geolocation API 지원, <video> 태그 지원이다. 이러한 기능은 HTML5의 전체기능 중 많지 않은 기능이지만 HTML5가 아직 제정된 표준이 아닌 초안이라는 점을 고려하면 상당히 공격적인 행보라고 할 수 있다.


HTML5의 특징

HTML5의 특징을 간단하게 표현하면 웹 응용을 위한 HTML 표준으로 표현할 수 있다. 기존의 HTML은 텍스트와 이미지에 대한 포맷팅 언어로 정보 보여주기 위한 것에 주안점을 두고 있다. 그러나 웹의 사용이 크게 증가하고 기술이 발전하면서 기업들은 점차 윈도우와 같은 특정 운영체제를 위해 개발해 사용하던 응용이나 서비스들을 웹 브라우저에서 실행할 수 있는 웹 응용 형태로 개발을 진행하고 있다. 대표적인 예로 구글 Docs가 있다. 구글 Docs는 윈도우 응용에서 가장 많이 사용되는 MS 오피스와 유사한 기능을 지원하는 응용이다. 그러나 웹 응용을 개발할 때 현재의 HTML 표준은 많은 한계들을 갖는다. 예를 들어 인터넷이 연결이 되지 않은 오프라인 상황에서 웹 응용이 동작하지 않는 문제, 파워포인트에서 여러 도형을 이용하여 그림을 그리는 기능 등 다양한 GUI(Graphic User Interface) 표현의 한계, 채팅이나 주식 정보 등 실시간 메시징 기능의 한계, 그리고 달력, 비디오, 오디오 등 기존 HTML 표준의 한계에 대한 문제까지 포함하여 해결해야 할 많은 문제점이 존재한다. HTML5는 이러한 기존의 문제를 해결하는 차세대 HTML 표준이며 브라우저 밴더들을 중심으로 W3C를 거점으로 표준개발이 진행되고 있다.

HTML5 기반의 웹 응용은 어떤 장점을 가질 것인가? 무엇보다도 가장 큰 장점은 응용이 플랫폼에 독립적인 특성을 갖는다는 것이다. 즉, 웹 응용은 표준을 준수하는 웹 브라우저가 탑재된 어떤 단말에서도 실행 될 수 있다. 만일 아이폰, 안드로이드, 윈도우 모바일, 심비안 등에 표준 지원 브라우저만 있으면 응용을 각 플랫폼에 맞추어 중복 개발할 필요가 없다. 다음으로는 응용 개발이 쉽고, 개발 속도가 빠르다는 것이다. 이미 웹에는 구글이나 야후의 지도 서비스, 유튜브의 동영상 서비스, 구글 Docs 서비스, 구글 리더 서비스, 플리커의 사진 서비스, 트위터의 단문 메시징 서비스, 페이스북이나 마이스페이스의 소셜 네트워킹 서비스 등 다양한 플랫폼 서비스들이 존재하고 이들의 기능을 Open API를 활용하여 새로운 응용을 개발할 수 있다. 이러한 응용 개발의 가능성은 이미 아이폰 응용을 통해서 확인할 수 있다. 또한 웹 응용은 주로 HTML, CSS 그리고 자바스크립트(Javascript)로 개발되기 때문에 기존에 많은 웹 개발자들을 모바일 응용 개발자로 흡수할 수 있는 장점이 있다.


HTML5 기반 웹 응용의 향후 전망

현재 구글은 지난해에 있었던 구글 I/O 개발자 컨퍼런스에서 구글 웨이브를 발표하면서 앞으로 모든 구글의 응용은 웹 응용 형태로 개발하겠다고 선언하였다. 이러한 연장선상에서 구글의 크롬OS와 안드로이드 2.0의 HTML5 일부 기능 지원을 이해할 수 있다. 또한 현재 구글은 W3C의 HTML5 표준 개발에 적극적으로 참여하여 표준 개발을 최대한 빨리 마무리하기 위해 노력하고 있으며, 오페라, 모질라 재단 등이 브라우저 벤드들도 표준화 활동 뿐아니라 HTML5 일부 기능을 빠르게 브라우저에 추가하고 있다. 앞으로도 상당기간 동안은 특정 모바일 플랫폼 위에서 실행되는 네이티브(Native) 응용이 대세를 이룰 것이나 아이폰의 구글 모바일 응용(Google Mobile App)을 사용해 볼 때 앞으로 웹 응용의 성장도 만만치 않을 것으로 생각된다. 특히 W3C에서 진행 중인 HTML5 표준 개발이 마무리될 것으로 예상되는 2011년 이후에는 훨씬 더 빠른 속도로 웹 응용이 확산될 것으로 기대된다.

Posted by 이원석(wonsuk73@gmail.com)

댓글을 달아 주세요

  1. massagem 2014.05.01 21:47 신고  댓글주소  수정/삭제  댓글쓰기

    다시 올려 주실 수 있을까요??

  2. massagem 2014.05.09 01:11 신고  댓글주소  수정/삭제  댓글쓰기

    우 둘은늘곁 었다.그러나남몰래 소리없이

구글 크롬 개발자 채널 버전 4.0.249.0.에서 Web Socket을 기본기능으로 지원하기 시작했다. Web Socket은 웹을 위한 TCP로 W3C에서 HTML5의 일부분으로 표준 개발이 진행되고 있는 차세대 양방향 통신 기술이다.

Web Socket API는 웹 응용이 서버측의 프로세스와 직접적으로 양방향 통신을 가능하게 한다. 개발자는 이런 기능을 위해 XMLHttpRequest(XHR)을 사용해 왔으나 XHR은 웹 응용이 서버와 통신할 때 불필요한 복잡성을 만들었다. XHR은 기본적으로 비동기 HTTP(Asynchronous HTTP)이기 때문에 서버에서 브라우저로 데이터를 전달하기 위해 긴 세션을 유지하는 GET(long-handling GET)을 사용해야 하기 때문에 간단한 일을 복잡하게 처리해야 했다. 이와는 반대로 Web Socket은 브라우저에서 실제로 양방향 통신 채널을 제공한다. 일단 Web Socket을 획득하면, 응용은 send() 메소드를 이용해서 브라우저에서 서버로 데이터를 전송할 수 있고, onmessage event handler를 이용해서 서버에서 브라우저로 전송하는 데이터를 받을 수 있다. 간단한 예는 아래와 같다.


if ("WebSocket" in window) {
  var ws = new WebSocket("ws://example.com/service"); 
  ws.onopen = function() {
  // Web Socket is connected. You can send data by send() method.
  ws.send("message to send"); ....
};
  ws.onmessage = function (evt) { var received_msg = evt.data; ... };
  ws.onclose = function() { // websocket is closed. };

else {
  // the browser doesn't support WebSocket.
}

Web Socket API와 더블에 브라우저가 서버와 통신을 하기위한 Web Socket Protocol이라는 새로운 프로토콜이 있다. 이 프로토콜은 브라우저의 "same-origin" 보안 모델을 제공해야 하기 때문에 우리가 알고 있는 TCP 형태가 아니다. 또한 이는 web socket 트래픽은 HTTP의 요청-응답 모델이 아니기 때문에 HTTP도 아니다. 새로운 프로토콜을 이용하는 Web Socket 통신은 GET을 가지고 연속적인 XHR을 사용하지 않고 단일 커넥션이 연결된 후에는 헤더 교환이 필요없기 때문에 더적은 Bandwidth를 사용한다. 따라서 이러한 새로운 API와 프로토콜을 사용하면 간단한 프로그램밍 모델과 네트웍 트랙픽에 효과적인 장점이 있다. 이를 위해서는 새로운 서버 구현이 필요하지만 아파치 확장 모듈로 사용 하거나 독립적으로도 실행할 수 있는 pywebsocket [3]이 이미 개발되어 있어 있다.

구글 크롬과 pywebsocket을 사용해서 Web Socket을 이용한 웹 응용을 지금 개발할 수 있다.



참고문헌

Posted by 이원석(wonsuk73@gmail.com)

댓글을 달아 주세요

  1. doctors note 2012.02.29 23:26 신고  댓글주소  수정/삭제  댓글쓰기

    저는 최근 블로그를 통해 와서 함께 읽고있다. 내가 처음으로 덧글을 남길 것입니다 생각합니다. 내가 읽고 즐기고있다는 점을 제외하고 말을해야할지 모르겠어요. 블로그가 멋지 네요. 나는 자주이 블로그를 방문하도록 노력하겠습니다.

  2. sacoche longchamp 2013.04.22 02:15 신고  댓글주소  수정/삭제  댓글쓰기

    전통발효식품으로 쌀 위주인 한국

  3. massagem tailandesa 2014.04.14 23:42 신고  댓글주소  수정/삭제  댓글쓰기

    난 당신이 게시 새로운 물건 좀 봐 할 인터넷 사이트를 당신이 즐겨 찾기 되요.

  4. acompanhantes em sp 2014.04.30 06:36 신고  댓글주소  수정/삭제  댓글쓰기

    미디어가 보여질 때 이들의 픽셀을 캔

  5. massagista 2014.05.14 12:52 신고  댓글주소  수정/삭제  댓글쓰기

    기고있다는 점을 제외하고 말을해야할지 모르겠어요. 블로그가 멋지 네요.