상세 보기
리눅스 커널 네트워크 성능 분석을 위한 트레이싱 기반의 net-perf 구현
Implementation of Tracing-based Net-perf for Linux Kernel Network Performance Analysis
- 강주희;
- 김태성;
- 신재원;
- 안윤진;
- 김익수
초록
복잡한 네트워크 시스템에 가해진 수정 사항에 대한 성능을 분석하는 것은 어렵다. 이에 관한 대표적인 사례로 리눅스가 있지만, 다양한 네트워킹 요구사항들을 모두 만족하도록 개발되다 보니 매우 복잡하게 구성되어 있다. 실제로 현시점에 커널의 네트워킹 스택에 변경을 가하고, 이에 따른 성능 변화를 분석하기 위한 상용 도구는 찾아보기 어렵다. 그나마 iperf3라는 도구를 사용해서 성능 개선 전후의 네트워크 속도를 측정하고, 비교함으로써 시도해볼 수는 있지만, 이 경우 복잡하게 구성된 코드 속에서 개발자가 의도한 특정 지점에서 속도 개선이 일어났는지에 대해 알 수 없다는 문제가 있다. 따라서 본 논문에서는 이러한 문제를 개선하기 위해 트레이싱을 결합한 새로운 성능 분석 도구를 제안한다. 제안되는 도구에서는 트레이싱이라는 기술을 이용하여 리눅스 커널 함수 호출 과정을 추적함으로써 성능 개선이 일어난 명확한 지점을 가시화하고자 한다. 따라서 사용자는 해당 지점의 함수 실행 latency가 감소하였는지 혹은 함수의 호출 depth가 감소하였는지 등의 다양한 정보를 바탕으로 성능 개선의 정확한 원인을 파악할 수 있다. 또한, 본 논문에서는 리눅스 커널 HSR 모듈의 Hash List로의 자료구조 변경으로 속도 개선이 이루어진 성능 개선 사례를 분석하여 해당 도구의 유용성을 증명하고자 한다.
키워드
Linux kernel network performance; Ftrace; HSR; Tracing; Performance analysis
- 제목
- 리눅스 커널 네트워크 성능 분석을 위한 트레이싱 기반의 net-perf 구현
- 제목 (타언어)
- Implementation of Tracing-based Net-perf for Linux Kernel Network Performance Analysis
- 저자
- 강주희; 김태성; 신재원; 안윤진; 김익수
- 발행일
- 2022-08
- 저널명
- 한국지식정보기술학회 논문지
- 권
- 17
- 호
- 4
- 페이지
- 565 ~ 574