MS-구글, 웹용 실시간 통신 API 공동 표준화

일반입력 :2014/08/22 16:34    수정: 2014/08/23 16:51

마이크로소프트(MS)와 구글이 공동으로 웹용 실시간 통신기술을 표준화하는 중이다. 해당 웹표준 기술은 MS 인터넷익스플로러(IE)와 구글 크롬 차기 버전에 구현될 예정이다.

MS는 지난 19일 오픈테크놀러지 공식블로그를 통해 구글 등과 함께 작성한 웹용 실시간 통신 규격 초안(draft) 개정판을 내놨다고 밝혔다. 명칭은 '객체 실시간통신(Object Real-Time Communication, ORTC)'이다.

ORTC 표준화를 주관하는 월드와이드웹컨소시엄(W3C)의 'ORTC 커뮤니티그룹'에 MS와 구글을 포함한 50개 이상 업체가 회원으로 활동 중이다. 서로 경쟁 관계인 두 회사가 공동 표준화에 나선 ORTC는 어떤 기술일까?

ORTC 규격은 개발자들이 PC나 모바일 기기에 추가 프로그램 설치과정 없이도 브라우저에서 실시간 음성대화, 화상회의 및 채팅 등 기능을 만들 수 있는 애플리케이션프로그래밍인터페이스(API)를 제공한다.

ORTC는 다른 웹표준 API와 마찬가지로 자바스크립트를 통해 웹앱에 구현된다. 웹사이트 개발자들은 웹브라우저, 모바일 기기, 클라우드 기술 등 환경에서 자바스크립트로 ORTC API를 사용해 플러그인 없는 실시간 통신 웹앱을 만들 수 있다.

즉 ORTC는 웹애플리케이션 개발자들이 MS 스카이프, 구글 행아웃, 시스코 웹엑스같은 제품을 웹 기반으로 만들 때 유용한 기술이다. 이는 조만간 일반 사용자들에게 익숙한 MS와 구글의 브라우저에도 탑재된다.

MS 수석(Lead) 기술 에반젤리스트 더그 매휴는 커뮤니티그룹이 새로 내놓은 ORTC API 편집자 초안은 (브라우저 신기능으로) 구현되기에 충분하다며 (이후 표준화 과정인) '구현 요청' 단계로 진행된다고 말했다.

이어 매휴 에반젤리스트는 양사 개발팀이 추후 배포할 브라우저 새 버전에 ORTC 지원을 검토 중이라고 언급했다. 구현 요청 단계에 접어들면 MS와 구글 이 자사 브라우저에 ORTC API 기능을 우선 탑재할 전망이다.

기존 ORTC 관련 오픈소스 프로젝트도 구현 요청 단계로 가면서 바뀐 최신 내용에 맞게 수정돼야 한다. 모바일 기기용 ORTC API 라이브러리 프로젝트(ortclib)나 서버사이드 개발용 코드(ortc-node)가 그런 사례다.

MS 오픈테크놀러지 개발자들은 이런 오픈소스 프로젝트의 업데이트를 돕기 위해 최신 ORTC 규격을 반영한 구현체를 시범 공개했다. 이렇게나마 웹표준 기능을 활용하려는 오픈소스 커뮤니티 활동을 지원할 방침이다.

매휴는 최근 나온 프로토타입(시범 공개한 구현체)은 최신 규격의 ORTC 객체와 맞물려 돌아가도록 업데이트됐고 새로워진 API의 변화도 반영했다고 밝혔다.

MS와 구글이 공동 표준화 중인 ORTC는 앞서 등장한 '웹RTC(WebRTC)' 표준을 더 쉽게 활용할 수 있도록 만들어진 성격도 있다. 개발자가 웹RTC에 대응하는 더 좋은 기능을 더 쉽게 쓰게 할 징검다리란 얘기다.

일례로 ORTC는 '스케일러블 비디오 코딩'과 '시뮬캐스트'같은 고급 영상처리 기능을 직접 지원한다. 이 기능은 화면 크기가 다양한 여러 모바일 및 PC 단말 사용자들이 한 화상회의에 원활히 참가할 수 있게 해준다.

21일(현지시각) 영국 더레지스터는 웹RTC용 ORTC API는 스카이프같은 음성 및 영상을 감싸는 프레임워크를 제공하는데, 상호운용성 없는 외부플러그인에 기대지 않고 인터넷프로토콜(IP) 기반으로 브라우저에 직접 전한다고 표현했다.

지난 5월 W3C 웹RTC 1.0 규격 안에서 ORTC 객체를 통합하는 내용의 초안이 웹RTC 워킹그룹에서 만어졌고 7월엔 웹RTC 1.0 API가 ORTC를 지원하는 방식에 일부 개선이 이뤄졌다. ORTC와 웹RTC는 호환된단 얘기다.

매휴 에반젤리스트는 ORTC는 기존 웹RTC 1.0 API와 나란히 부분적으로 구현하든, 'shim'같은 기술로 전체 ORTC API 환경에서 웹RTC 1.0 API를 지원하든, 웹RTC 1.0 API와의 호환성을 이어갈 수 있다고 말했다.

이어 우리는 ORTC 커뮤니티그룹의 동료들이 이 훌륭한 노정의 업계 확산과 개발자들이 상호운용성을 갖춘 개방형 웹용 RTC 애플리케이션을 더 쉽게 만들 수 있도록 돕기를 바란다고 덧붙였다.

관련기사

MS와 구글이 ORTC를 표준화하는 근본 이유는 브라우저 상호운용성 확보를 위해서다. 기술적으로 표현하면 국제인터넷표준화기구(IETF)의 세션기술프로토콜(SDP)과 그 SDP를 사용하는 통신방식(Offer/Answer 모델) 상태기기에 대한 의존성을 피하기 위해서다.

ORTC는 SDP라는 프로토콜과 그 구현을 위한 통신방식 모델을 쓰지 않고 표준안 내용에 직접 자체적인 모델을 설정하고 있다. 이 모델에는 '송신자'와 '수신자'와 '전송'이라는 객체, 이들이 수행하는 일을 묘사하는 '캐퍼빌리티'와 작업 수행을 정의하는 '파라미터', 송수신자간 전송 환경의 '데이터 채널'과 '트랙' 등을 기술했다.