Save my data

오버헤드(Overhead) 본문

개인공부

오버헤드(Overhead)

양을 좋아하는 문씨 2023. 9. 12. 19:17

사전적인 의미는 '(비용등의) 간접비'라는 의미를 가지고 있다.

컴퓨터 공학에서는 함수가 아닌 함수를 호출하는데 드는 비용을 의미한다.

 

다른 블로그나 위키 보면 거의 초 단위로 몇 초 늘어나고 줄어들었다 설명 정도밖에 없어서 조금 더 찾아보았다.

 

예를 들어, 재귀함수의 오버헤드가 큰 이유는 다음과 같다.

  1. 함수를 호출할 때마다 프로그램은 현재 함수의 상태를 저장하고 새로운 함수 호출을 만들어야 한다.
  2. 이 작업은 스택 메모리를 사용하여 이루어진다.
  3. 재귀 호출이 깊어질수록 다시 원점으로 복귀하기까지 시간이 오래 걸린다. 즉 오버헤드가 커진다.

네트워크에도 Overhead라는 용어가 있다.

 

  • Overhead는 일반적으로 패킷이나 프레임 등의 선두에 위치하기 때문에 Header라고도 한다.
  • 올바른 목적지에 도달하기 위해, 목적지를 설정하는데 필요한 추가적인 정보들을 의미한다.
  • 이 정보들은 전송되는 원본 data와는 무관한, 목적지에 대한 정보만을 담은 데이터이다.
  • 따라서 Overhead가 커진다는 말은 보내는 원본 data의 크기는 작더라도, 그와 관련 없는 부대비용이 커지게 된다는 말과 같다.

유선 인터넷보다 WIFI에서 연결을 통해 전송 될 수있는 정보량이 더 낮아지는 이유도 프로토콜 오버헤드 때문이다.

무선 라우터에서 전송되는 신호들은 공중을 통해 이동하므로 가로채기 쉽다. 고로 보안, 권한 부여 등 추가적으로 필요한 정보들이 더욱 많아져 전송 시 매우 큰 헤더들을 포함하게 되고 헤더가 차지하는 부분이 많아짐에 따라 실제 데이터에서 사용할 수 있는 부분이 유선으로 연결된 컴퓨터보다 WIFI 프로토콜에서 더 줄어든다.

 

참고: 

 

TIL 70 | 프로그래밍 용어 [오버헤드 Overhead]

OSI 7계층과 HTTP를 공부할 때 '오버헤드가 발생한다'는 표현을 접했다. 경영이나 회계 쪽에서도 간접비용을 오버헤드라 하기도 하는데 프로그래밍에서는 정확한 어떤 경우에 어떤 의미로 사용되

velog.io

'개인공부' 카테고리의 다른 글

mac과 AWS EC2를 sftp로 연결하기  (0) 2023.10.16
DB 복제(Replication)  (0) 2023.09.14
Docker와 VM의 차이  (0) 2023.09.12
(리액트)error:0308010C:digital envelope routines::unsupported 해결  (0) 2023.05.24
정처기 필합 후기  (0) 2023.03.13
Comments