본문 바로가기

Backend Study/Server

네트워크 계층별 프로토콜 (OSI 7 Layer)

OSI (Open system Interconnection) 7 Layer은 ISO, 즉 국제표준기구에서 만든 네트워크를 7계층으로 만든 모델이다. 

이것이 필요한 이유는 통신 과정 중 특정한 곳에 이상이 생길 경우 다른 단계를 건들지 않고 그 단에서 해결할 수 있다는 것이다. 
다른 계층들은 대화를 할 수 없고, 대화를 하기 위해서는 약속이 필요하다. 
os는 계층이 없는데 이는 성능을 가장 우선시하기 때문이다.

 

 

1. 구조

- Application Layer (응용 프로그램 계층) 
[DATA]

일반적인 응용 서비스를 수행하는 계층이며, 사용자에게 직접 보이는 부분이다.
ex. HTTP, FTP, POP3/IMAP, SSH, DNS 

 

- Presentation Layer (표현 계층)
[Data]

코드간 번역을 담당한다. 데이터의 형식상 차이를 다루는 부담을 응용계층으로부터 덜어주고, 인코딩이나 암호화가 이 계층이서 이루어진다. 
즉 응용 프로그램이나 네트워크를 위해 데이터를 표현한다.

ex. SSL, FTP, IMAP, SSH

 

- Session Layer (세션 계층)

[Data]

양 끝단의 응용 프로세스가 통신을 관리하는 방법을 제공하는 계층이다.

ex. SOCKETS

 

- Transport Layer (전송 계층) 

[Segments]

통신을 활성화하기 위한 계층으로 포트를 열어 응용 프로그램들이 전송을 할 수 있게한다. 만약 데이터가 왔다면 4계층에서 해당 데이터를 하나로 통합하여 5계층으로 전달한다. 

ex. TCP, UDP 

 

- Network Layer (네트워크 계층)
[Packets]

경로를 선택하고 주소를 정하고 경로에 따라 패킷을 전달해주는 것이 주 역할이다. 데이터를 목적지까지 가장 안전하고 빠르게 전달하는 기능 즉 라우팅이 중요한 기능이다. 

ex. IP, IPSec

 

- Data link Layer (데이터 링크 계층)
[Frames]

장치 간 신호를 전달하는 물리계층을 이용하여 네트워크 상의 주변 장치들 간의 데이터를 전송하는 역할을 한다.

ex. Ethernet, wifi, DSL PPP

 

- Physical Layer (물리 계층)
[Bits]

실제 장치를 연결하기 위한 전기적 및 물리적 세부 사항을 정의한 계층이다. 인터넷 케이블, 라우터 스위치 등의 전기적 신호가 물리적인 장치에 의해 왔다 갔다 하는 계층이다. 

ex. ethernet, coaxial cables, Fiber-opticlines, modems

 

*TCP
- TCP
는 인터넷 상에서 데이터를 메세지의 형태로 보내기 위해   IP와 함께 사용하는 프로토콜이다.

TcpIP는 함께 사용하는데, IP가 데이터의 배달을 처리한다면 TCP는 패킷을 추적 및 관리한다.

 

- TCP는 연결형,
가상 회선 방식을 제공
(
발신지와 수신지를 연결하여 패킷을 전송하기 위한 논리적 경로를 배정, 미리 통로 만듬)
(3-way handshaking
을 이용하여 목적지와 수신지를 확실하게)
신뢰성이 있지만 느림
➡️ 연속성보다 신뢰성있는 전송이 중요할 사용

 

*UDP

- UDP (user datagram protocol) 는 비연결형
데이터를 데이터그램 단위로 처리하는 프로토콜
연결을 위한 논리적 경로가 없기 때문에 각각 다른 경로로 전송 (통로 없음)
패킷이 흩어져서 전달되기 때문에 신뢰성이 떨어지지만 속도가 빠르다. (받는쪽에서 순서 배열)
➡️ 실시간 스트리밍같은 신뢰성보다 연속성이 중요한 서비스에서 사용

 

 

참고) https://needjarvis.tistory.com/158

https://onecoin-life.com/19