Foundry
네트워크
기초
핵심

OSI 7계층

물리, 데이터링크, 네트워크, 전송, 세션, 표현, 응용

계층을 내려갈 때마다 자기 헤더를 붙이는 것이 캡슐화이고, 올라갈 때 벗기는 것이 역캡슐화입니다. 각 계층은 아래가 어떻게 하는지 모른 채 자기 일만 합니다.

OSI 7계층

계층 구조

보낼 때는 층마다 머리말을 덧붙이고 받을 때는 반대로 벗긴다 보내는 쪽. 층마다 머리말을 붙인다 내 데이터 TCP 내 데이터 IP TCP 내 데이터 이대로 나간다 받는 쪽은 같은 순서를 거꾸로 벗겨 원래 데이터를 얻는다 각 층은 자기 머리말만 보고 위층 내용은 모른다 그래서 라우터는 IP 만 보고 방화벽은 포트까지 본다 어디까지 볼 수 있는지가 그 장비가 일하는 층을 정한다
계층이름예
7응용 (Application)HTTP, FTP, DNS
6표현 (Presentation)암호화, 압축
5세션 (Session)연결 관리
4전송 (Transport)TCP, UDP
3네트워크 (Network)IP, 라우팅
2데이터링크 (Data Link)MAC, 이더넷
1물리 (Physical)케이블, 전기신호

실무에서 중요한 계층

계층핵심실무 연관
L7 응용HTTP, DNSAPI 개발, 디버깅
L4 전송TCP/UDP, Port소켓 프로그래밍, 방화벽
L3 네트워크IP, 라우팅서브넷, VPC 설계
L2 데이터링크MAC스위치, ARP

TCP/IP 4계층 vs OSI 7계층

TCP/IP 4계층OSI 7계층
응용7. 응용, 6. 표현, 5. 세션
전송4. 전송
인터넷3. 네트워크
네트워크 접근2. 데이터링크, 1. 물리

계층으로 나눠 얻은 것

7개를 외우는 것이 목적이 아닙니다. 한 층을 바꿀 때 다른 층을 안 고쳐도 되는 것이 값입니다.

무엇이 바뀌어도위층은 그대로
유선에서 무선으로응용은 아무것도 모른다
주소 체계가 바뀜응용 코드는 그대로다
응용 규약을 새로 만듦아래 전부를 다시 쓰지 않는다

이 독립성이 인터넷이 확장된 이유입니다. 새 기술이 한 층에만 들어오고 나머지를 안 건드립니다.

장애를 어느 층부터 보나

실무에서 계층은 문제를 좁히는 순서로 씁니다.

주소가 풀리나. 안 되면 이름 해석 문제다
연결이 맺어지나. 안 되면 경로나 방화벽이다
연결은 되는데 응답이 이상하다. 그러면 응용 층이다

아래에서 위로 올라가는 것이 빠릅니다. 응용 코드를 먼저 뒤지면 아래 문제일 때 오래 헤맵니다. 그리고 실무에서 실제로 다루는 것은 대개 3, 4, 7 층이고 5와 6은 응용에 묻혀 있습니다.

면접 키워드

면접에서는 OSI 7계층 전부를 암기하기보다, L4/L7 로드밸런서 차이, 각 계층에서 사용하는 프로토콜을 중심으로 설명하면 좋음.

면접에서 이렇게 나옵니다

Q.OSI 7계층과 TCP/IP 4계층의 차이를 설명해주세요

목적이 다릅니다. 하나는 교육과 표준을 위한 참조 모델, 하나는 실제로 쓰이는 구현입니다.

TCP/IP 4계층OSI 7계층
응용7 응용, 6 표현, 5 세션
전송4 전송
인터넷3 네트워크
네트워크 접근2 데이터링크, 1 물리

OSI 는 역할을 세밀하게 나눠 설명하기 좋고, TCP/IP 는 실제 프로토콜 구조에 맞습니다. 현실의 인터넷은 TCP/IP 로 동작합니다.

계층을 나누는 이유는 각 층을 독립적으로 바꿀 수 있게 하기 위해서입니다. 유선을 무선으로 바꿔도 위 계층은 그대로입니다.

흔한 실수: OSI 를 실제 구현으로 설명하는 것. 표현과 세션 계층에 딱 대응하는 구현이 없어 응용 계층이 그 역할을 함께 합니다.

Q.HTTP는 몇 계층 프로토콜인가요?

응용 계층입니다. OSI 로는 7계층, TCP/IP 로는 응용 계층입니다.

계층프로토콜 예
응용HTTP, DNS, SMTP, FTP
전송TCP, UDP
네트워크IP, ICMP
데이터링크이더넷, ARP

HTTP 는 전송 계층 위에서 동작합니다. HTTP/1.1 과 HTTP/2 는 TCP 위, HTTP/3 는 UDP 위의 QUIC 위입니다.

HTTPS 는 별도 계층이 아니라 HTTP 와 전송 계층 사이에 TLS 를 끼운 것입니다. TLS 를 어디에 둘지는 애매해서 표현 계층이나 세션 계층으로 설명하기도 합니다.

흔한 실수: L7 로드밸런서를 설명하며 HTTP 를 전송 계층이라고 답하는 것. L7 이 응용 계층을 뜻하고, 그래서 경로와 헤더를 보고 라우팅할 수 있습니다.

Q.각 계층에서 사용하는 대표 프로토콜을 말해주세요

계층프로토콜다루는 단위장비
7 응용HTTP, DNS, SMTP, SSH메시지
6 표현암호화, 압축, 인코딩
5 세션연결 관리
4 전송TCP, UDP세그먼트L4 로드밸런서
3 네트워크IP, ICMP, 라우팅패킷라우터
2 데이터링크이더넷, ARP, 와이파이프레임스위치
1 물리케이블, 전기와 광 신호비트허브, 리피터

주소 체계도 계층마다 다릅니다. 3계층은 IP 주소로 최종 목적지를, 2계층은 MAC 주소로 바로 다음 장비를 가리킵니다. IP 는 끝까지 유지되고 MAC 은 홉마다 바뀝니다.

흔한 실수: ARP 를 3계층으로 답하는 것. IP 주소를 다루지만 MAC 주소를 알아내는 역할이라 2계층으로 분류합니다.

먼저 스스로 답해보고 아래 답변과 견줘보세요. 막히는 부분은 문제로 확인할 수 있어요.

읽었으면 문제로 확인해보세요

네트워크 문제를 풀면 틀린 문제가 자동으로 노트에 쌓입니다. 가입 없이 5문제를 먼저 풀어볼 수도 있어요.