일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- Docker 원리
- error:0308010C:digital envelope routines::unsupported
- 동적 계획법
- 깊이 우선 탐색
- 파이썬
- Python
- 최장공통부분문자열
- lazy evaluation
- dfs
- npm start
- 냅색 알고리즘
- db replication
- 그래프 이론
- bfs
- 너비 우선 탐색
- Container vs VM
- 모듈러 연산 분배법칙
- 문자열
- 다이나믹 프로그래밍
- 최장공통부분수열
- 정처기 필기
- 클래스
- 그래프 탐색
- LCS 알고리즘
- 나는 바보야...
- 구현
- 일단 시도
- 배낭 문제
- 그래프탐색
- 수학
Archives
- Today
- Total
Save my data
오버헤드(Overhead) 본문
옛날에 적어놓았던 글인데 리뷰해보니 심각하게 잘못된 글이라 수정함. - 2025.02.10
오버헤드의 사전적인 의미는 '(비용등의) 간접비'라는 의미를 가지고 있다.
컴퓨터 공학에서는 어떤 명령어를 처리하는데 소비되는 간접적, 추가적인 컴퓨터 자원을 의미한다.
다른 블로그나 위키 보면 거의 초 단위로 몇 초 늘어나고 줄어들었다 설명 정도밖에 없어서 조금 더 찾아보았다.
예를 들어, 재귀함수의 오버헤드가 큰 이유는 다음과 같다.
- 함수를 호출할 때마다 프로그램은 현재 함수의 상태를 저장하고 새로운 함수 호출을 만들어야 한다.
- 이 작업은 스택 메모리를 사용하여 이루어진다.
- 재귀 호출이 깊어질수록 다시 원점으로 복귀하기까지 시간이 오래 걸린다. 즉 오버헤드가 커진다.
네트워크에도 Overhead라는 용어가 있다.
컴퓨터 공학과 비슷한 의미인데, 예를 들어 다음과 같은 경우가 있다.
- TCP 패킷에는 헤더가 있는데, 헤더에는 일반적으로 패킷이나 프레임 등의 선두에 위치한다.
- 이 정보들은 전송되는 원본 data와는 무관한, 올바른 목적지 설정과 관련된 정보들이 담겨있다.
- 따라서 여러 이유로 인해 TCP 패킷의 헤더가 커지게 되면 원본 데이터와는 무관한 것들이 자리를 차지하니까, Overhead가 커진다고 할 수 있다.
위와 관련된 부분인데, 유선 인터넷보다 WIFI에서 연결을 통해 전송 될 수있는 정보량이 더 낮아지는 이유도 프로토콜 오버헤드 때문이다. 무선 라우터에서 전송되는 신호들은 공중을 통해 이동하므로 일단 신호 간섭이나 충돌 방지, 액세스포인트 연결 정보 등이 필요하기 때문에 유선에 비해 기본적으로 크기가 커진다. 또 가로채기도 쉬워서 보안, 권한 부여 등 추가적으로 필요한 정보들이 더욱 많아진다.
이와 같은 이유들로 전송 시 헤더가 차지하는 부분이 많아짐에 따라 payload 비율이 유선 방식에 비해 더 줄어든다.
참고:
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