들어가며
LINE 앱은 전 세계 많은 사용자들이 이용하는 다양한 실시간 커뮤니케이션 서비스를 제공하고 있습니다. 저희 팀은 그중에서 1:1 통화와 그룹 통화, LINE 미팅과 같은 통화 서비스를 맡고 있으며, 각 기능들이 안정적으로 작동해 사용자에게 좋은 품질 경험을 제공할 수 있도록 지속적으로 기술 개선에 힘쓰고 있습니다.
이번 글에서는 LINE 통화의 품질을 높이기 위해 적용하고 있는 다양한 기술 중 하나인 네트워크 적응 기술을 개선한 사 례를 소개하려고 합니다.
네트워크 적응 기술이란
LINE 통화나 라이브 스트리밍과 같은 실시간 커뮤니케이션 서비스에서는 음성이나 영상 등의 미디어 데이터가 인터넷을 통해 패킷 단위로 사용자 간에 전송됩니다. 이때 패킷들은 네트워크를 통해 상대방에게 전달되는 과정에서 전송이 지연되거나 손실될 수 있으며, 이는 실시간 통신 품질을 떨어뜨리는 주요 원인이 됩니다.
지연이나 패킷 손실로 인한 품질 저하를 최소화하려면 네트워크 적응 기술을 적용해야 합니다. 네트워크 적응 기술이란 네트워크의 상태에 따라 전송 비트레이트(bitrate)나, 전송 타이밍, 미디어 품질 등을 실시간으로 조절해 끊김 없이 통신할 수 있게 해주는 기술들을 의미하며, 현재 LINE 통화 품질에 큰 영향을 미치는 기술 중 하나입니다.
그런데 LINE 통화에 적용된 네트워크 적응 기술은 다른 실시간 서비스들에 적용된 기술과는 조금 차이가 있습니다. 예를 들어 한 방향으로만 데이터를 전송하는 라이브 스트리밍에서는 어느 정도의 버퍼링을 통해 지연을 감수하면서도 안정적인 품질을 유지할 수 있습니다. 영상이 몇 초 늦게 도착하더라도 시청자는 큰 불편을 느끼지 않을 수 있기 때문입니다. 반면 LINE 통화와 같은 양방향 실시간 통신에서는 상대방의 말이 1초라도 늦게 들리면 자연스러운 대화가 어렵습니다. 이 때문에 네트워크 상태에 따라 즉각 반응하는 전송 제어가 필요합니다. 더 민감하고 정교한 네트워크 적응 기술이 요구되는 것입니다.
네트워크 혼잡과 혼잡 제어
네트워크 적응 기술 중에서 특히 중요한 것이 '네트워크 혼잡(network congestion)'을 효과적으로 회피하는 기술입니다. 네트워크 혼잡이란 네트워크 경로에 패킷이 과도하게 몰리는 상황을 말합니다. 아래 그림과 같이 입력이 출력보다 더 커지면 네트워크가 패킷을 원활하게 처리하지 못하며, 이로 인해 패킷이 네트워크 큐에 누적되면서 점진적으로 지연이 증가하고 결국 패킷 손실로 이어집니다.

이런 상황이 발생하는 것을 방지하기 위해 사용하는 기술이 바로 '혼잡 제어(congestion control)'입니다. 혼잡 제어는 네트워크가 혼잡할 때 전송 속도를 조절해 지연과 손실을 줄여서 안정적인 품질을 유지하기 위한 기술입니다. 네트워크 상태는 시간에 따라 빠르게 변화하기 때문에 영상 통화처럼 큰 대역폭이 필요한 서비스에서는 혼잡 제어 성능이 영상 재생 품질에 큰 영향을 미칩니다.
제가 이번 글에서 소개하고자 하는 내용은 LINE 통화의 지표를 분석하던 중 발견한 이상 패턴의 원인을 분석하고, 이를 개선하기 위해 LINE 통화의 혼잡 제어 기술을 개선한 이야기입니다.
LINE 통화의 지표 분석 중 발견한 이상 패턴과 발생 원인
먼저 LINE 통화의 혼잡 제어 기술을 개선하게 된 계기를 구체적인 데이터와 함께 살펴보겠습니다.