기능은 열고 위협은 막는다…오픈소스로 만든 ‘웨일’의 매력 [DEVIEW 2023]

네이버가 오픈소스를 활용해 개발한 웹 브라우저 ‘웨일(Whale)’의 장점은 무엇일까. 기본으로 제공되는 기능에 더해 추가로 보안과 편의성을 높인 것이 웨일의 매력이다. 주기적인 패치로 성능을 높이고 토종 브라우저의 장점을 십분 발휘해 우리나라 웹 환경에 맞춘 것도 특징이다.

28일 네이버는 서울 코엑스에서 이날까지 개최하는 ‘데뷰(DEVIEW 2023)’에서 웨일의 개발 스토리를 소개했다.

이형욱 네이버클라우드 웨일 엔진팀 리더는 “브라우저란 무엇인 묻는다면 ‘플랫폼’이라고 답하고 싶다”며 “핵심은 웹페이지를 렌더링하는 것”이라고 말했다.

브라우저를 개발하기 위해 필요한 핵심 고려 사항은 크게 세 가지다. 웹표준 준수를 비롯해 성능과 보안까지 세 마리 토끼를 잡아야 한다.

이형욱 리더는 “빠르고 안정적으로 웹표준을 제공하는 것은 물론 웹페이지의 빠른 랜딩과 빠른 입력 처리가 필요하다”면서 “항상 네트워크와 연결돼 있는 특성상 보안 패치의 빠른 업데이트도 필요하다”고 말했다.

이형욱 네이버클라우드 웨일 엔진팀 리더가 28일 서울 코엑스에서 열린 데뷰 2023에서 발표하고 있는 모습.

웨일은 구글의 오픈소스 프로젝트 크로미움(Chromium) 프레임워크를 바탕으로 개발했다. 크로미움은 웨일을 비롯해 구글 크롬, 마이크로소프트 엣지 등 다수의 웹브라우저에 사용되고 있다.

웨일이 크로미움을 활용하는 건 빠른 웹 발전 속도 때문이다. 웨일 또한 개발 초기에는 자체 엔진을 쓰려고 했다. 하지만 갈수록 늘어나는 다채로운 웹 기능을 구현하는 데는 오픈소스가 제격이라는 게 이 리더의 설명이다.

그는 “웹은 이미 하나의 거대한 플랫폼으로 한 회사에서 커버하기 힘든 볼륨을 가졌다“며 “오픈소스 활용은 옵션이 아닌 필수“라고 강조했다.

크로미움은 이미 웨일을 비롯해 오페라 등 다양한 브라우저가 적용하며 일종의 공통 프레임워크로 자리 잡았다. 서로 다른 브라우저임에도 불구하고 탭의 모양이나 메인메뉴의 모양이 비슷한 것도 이 때문이다.

크게 ▲사용자 인터페이스(UI) ▲콘텐츠 ▲베이스 등 3가지 디렉토리로 구성되는 크로미움 프레임워크는 필요에 따라 브라우저뿐 아니라 다른 영역에도 적용할 수 있는 게 장점이다. 콘텐츠 모듈에서 웹엔진 영역만 떼내 안드로이드 운영체제 개발에 사용하거나, 베이스 모듈을 라이브러리로 활용하는 식이다.

이 리더는 오픈소스 활용에 따른 고충도 토로했다. 기본 뼈대에 필요한 기능을 덧붙여야 하고 오픈소스 버전이 바뀔 때 수정사항을 옮기는 ‘리베이스(Rebase) ’도 적지 않은 공수가 든다고 언급했다.

웨일은 크로미움에 딸린 기본 기능뿐 아니라 사이드바나 듀얼탭, 모바일 윈도우 등 UI 부분을 비롯해 확장앱과 로그인과 같은 컴포넌트 부분, 기계번역, 음성인식 ·합성과 같은 웹엔진 부분, 광고차단과 세이프 브라우징 등 보안 부분에서까지 다양한 기능을 추가했다.

이 리더는 “리베이스가 따라가지 못하면 사이트 호환성, 보안 등이 취약해진다”고 말했다. 네이버는 현재 크로미움의 업데이트 주기에 발맞춰 8주 단위로 웨일의 리베이스를 진행한다.

이전까지는 기능 개발의 페이스에 맞춰 리베이스를 수행하는 ‘기능 기반 배포’의 형태였지만, 크로미움이 4주마다 업데이트를 단행하며 네이버도 리베이스 주기를 8주로 정했다. 크로미움의 업데이트 주기보다 리베이스 주기를 더 길게 잡은 건 안정성 때문이다.

네이버는 ‘리베이스-봇’을 통해 자동으로 웨일의 소스 코드에 크로미움 패치를 적용한다. 매 리페이스마다 약 1만2000개의 패치가 들어간다.

리베이스에서 고려해야 할 건 또 있다. 변경된 파일의 충돌(Conflict)을 최소화하는 게 과제다. 80% 정도는 충돌이 없지만 나머지는 관리가 필요하다는 게 그의 설명이다.

컨플릭트가 난 부분은 커밋(Commit) 단위가 아닌 파일 단위로 관리한다. 커밋 방식을 취하면 커밋의 순서대로 오류를 수정해야 하지만, 파일 방식은 동시에 각 파일을 수정할 수 있어 컨플릭트를 상대적으로 쉽게 해결할 수 있다.

또한 새 버전을 배포하기 전에는 350여개의 테스트 케이스를 성능 봇으로 검증해 품질도 확보한다는 게 이 리더의 말이다. 모든 구성원이 공식 릴리스에 앞서 검수를 진행하는 ‘데브(Dev)’채널도 운영한다.

그는 “오픈소스를 활용하는 것 뿐만 아니라 컨트리뷰션도 활발하게 진행하고 있다”며 “자체 기준으로 2021년도에 5위였던 크로미움 컨트리뷰션 순위가 지난해에는 4위로 올랐다”고 되짚었다.

이 리더에 따르면 웨일은 역설적으로 국산이기 때문에 가진 장점도 많다. 우리나라가 주로 쓰는 공인인증서 호환성을 높이는 등 한국의 웹 환경에도 특화했다는 설명이다.

또한 국내 포털 아이디를 통한 로그인 과정의 피싱을 예방해 사용자 정보를 지키고, 피싱 웹사이트와 그렇지 않은 웹사이트를 머신러닝으로 구분해 내는 기능을 심는 등 보안성도 높인 게 웨일의 특징이다.

이 리더는 “웨일이 미래의 기술 플랫폼으로 웹환경을 리드하며 새로운 경험을 만들어 가겠다”고 강조했다.

글. 바이라인네트워크
<이진호 기자>jhlee26@byline.network

관련 글

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다