본문 바로가기

CS/네트워크

OSI 7계층

 

OSI 7계층은 네트워크에서 통신이 일어나는 과정을 7개의 계층으로 나눈 것이다.

이렇게 나눈 이유는 통신이 일어나는 과정을 단계별로 파악할 수 있고, 문제가 발생하면 문제가 발생한 해당 단계만 수정할 수 있기 때문이다.

이제 각 계층별로 알아보자.

 

1계층 - 물리 계층 (Physical Layer)

물리 계층에서는 주로 전기적, 기계적, 기능적인 특성을 이용하여 통신 케이블로 데이터를 전송하게 된다.

이 계층에서 사용되는 통신 단위는 비트이며, 이는 0과 1로 나타나며 전지적으로 On, Off 상태이다.

물리 계층에서는 단지 데이터를 전송하는 역할만 하며, 데이터가 무엇인지, 어떤 에러가 있는지 등은 전혀 신경쓰지 않는다.

리피터, 케이블, 허브 등

 

2계층 - 데이터링크 계층 (DataLink Layer)

데이터링크 계층은 물리 계층을 통해 송수신되는 정보의 오류와 흐름을 관리하여 안전한 정보의 전달을 수행할 수 있도록 도와준다.

이 계층에서는 MAC 주소를 통해 통신하며, 통신 단위는 프레임이다.

프레임에 MAC 주소를 부여하고 에러검출, 재전송, 흐름제어를 진행한다.

브리지, 스위치 등

 

3계층 - 네트워크 계층 (Network Layer)

송신 호스트가 전송한 데이터가 어떤 경로를 통해 전달되는지 결정하는 라우팅 문제를 다룬다.

이 계층에서의 전송 데이터를 패킷이라고 부른다.

라우터를 통해 이동할 경로를 선택하여 IP 주소를 지정하고(routing), 해당 경로에 따라 패킷을 전달(forwarding)한다.

네트워크에 지나치게 많은 패킷이 전송되면 전송속도가 떨어질 수 있으므로 이를 제어하는 혼잡제어 기능도 담당한다.

라우터, IP 등

 

4계층 - 전송 계층 (Transport Layer)

전송 계층은 양 끝단(End to End)의 사용자들이 데이터를 주고 받을 수 있게 한다.

대표적으로 TCP, UDP 프로토콜이 있다.

TCP에서 사용하는 패킷은 세그먼트, UDP에서 사용하는 패킷은 데이터그램이다.

데이터 전송을 위해 port 번호를 사용한다.

TCP, UDP

 

5계층 - 세션 계층 (Session Layer)

양 끝단에서 데이터가 통신하기 위한 논리적 연결을 담당한다.

TCP/IP 세션을 만들고 없애는 책임을 가지며, 통신하는 사용자들을 동기화하고 오류 복구 명령들을 일괄적으로 다룬다.

API, Socket 등

 

6계층 - 표현 계층 (Presentation Layer)

표현 계층은 코드 간의 번역을 담당하여 사용자 시스템에서 데이터의 형식상 차이를 다루는 부담을 응용 계층으로부터 덜어준다.

데이터 표현에 대한 독립성을 제공하고 암화화하는 역할을 담당한다.

우리가 자주 사용하는 데이터의 압축이나 인코딩 등을 여기서 다룬다고 볼 수 있다.

JPEG, MPEG 등

 

7계층 - 응용 계층 (Application Layer)

응용 계층은 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행한다.

사용자 인터페이스를 제공하며, 전자우편, 데이터베이스 관리 등의 서비스를 제공한다.

HTTP, FTP, DNS 등

 

'CS > 네트워크' 카테고리의 다른 글

HTTP와 HTTPS  (0) 2022.09.16
GET과 POST의 차이  (0) 2022.09.15
HTTP  (0) 2022.09.12
TCP와 UDP  (0) 2022.09.09
TCP 3-way handshake & 4-way handshake  (0) 2022.09.06