OSI 7 계층이란, 컴퓨터와 컴퓨터가 통신하는 네트워크 통신에서 거치게 되는 단계를 표준화하여 만든 7개의 단계(계층) 입니다. 이러한 표준으로 네트워크 통신시 통신 방법에 대한 차이로 불편함을 겪을 일이 없으며, 계층 구조로 이루어져 있어, 특정 계층의 설정을 변경하거나, 특정 계층에서 문제 발생시 다른 계층에 영향을 주지 않고 원하는 작업을 할 수 있습니다.
각 계층별 정보
1. 물리 계층(Physical Layer)
물리 계층에서는 실제 하드웨어를 통해 데이터가 전송되는 방식을 정의합니다. 이 때, 실제 데이터 송수신을 위해 물리적 연결 및 데이터를 비트로 변환하여 데이터 송수신이 원활하게 되도록 합니다.
2. 데이터 링크 계층(Data Link Layer)
데이터 링크 계층에서는 물리 계층에서의 안전한 데이터 전송을 보장하기 위한 계층으로, 이를 위해 데이터의 오류와 흐름을 제어합니다. 이 계층에서는 서로를 MAC 주소로 식별하며, 프레임 헤더와 트레일러를 통해 데이터의 오류와 흐름 제어의 역할을 수행합니다.
프레임
데이터 링크 계층에서는 데이터를 프레임 형식으로 다룹니다. 프레임은 헤더, 데이터, 페이로드 로 이루어져 있습니다.
헤더 - 프레임 헤더에는 송신자와 수신자의 MAC 주소(고유 식별자)가 포함되어 있으며, 데이터 전달 속도를 조정하는 흐름 제어, 오류를 검출하고 회복하는 오류 제어, 데이터를 순차적으로 전송하는 순서 제어 를 위한 데이터가 포함되어 있습니다.
데이터 - 실제 전송할 데이터가 포함되며, 상위 계층인 네트워크 계층에서 전달된 패킷을 포함합니다.
트레일러 - CRC 값을 포함하며, 오류(데이터 손실 등)가 발생하였는지 체크합니다.
3. 네트워크 계층(Network Layer)
네트워크 계층은 다른 네트워크의 목적지까지 효율적으로 데이터를 전달하기 위한 계층입니다.
송신지의 네트워크와 수신지의 네트워크가 다를 때, 여러 네트워크를 거치며 데이터를 전달해야 하는데 이 과정에서 효율적인 데이터 전달을 위해 라우팅 과정을 거쳐 최적의 경로를 통해 데이터를 전달하게 됩니다.
네트워크 계층에서는 IP 주소를 기반으로 송신지와 수신지를 식별합니다.
4. 전송 계층(Transport Layer)
전송 계층은 프로세스 간의 데이터 전송을 신뢰성 있게 관리하기 위한 계층입니다. 이를 위해 흐름 제어, 오류 제어, 혼잡 제어 등을 사용하며, Port 를 사용하여 목적지를 식별하고, 데이터를 전송합니다. 대표적인 프로토콜은 UDP, TCP 등이 존재합니다.
5. 세션 계층(Session Layer)
세션 계층은 애플리케이션간 논리적인 연결인 세션을 관리하는 계층입니다. 세션은 데이터 송수신 전 연결되며, 데이터 전송시 문제가 발생했을 경우 특정 지점에서 다시 데이터를 전송할 수 있도록 지원합니다.
6. 표현 계층(Presentation Layer)
표현 계층은 데이터의 표현 방식을 결정하고, 변환하는 역할을 담당하는 계층입니다. 이를 통해 상위 계층과 하위 계층의 데이터 형식을 각 계층에 맞게 변환할 수 있습니다. 주로 데이터 인코딩, 디코딩, 압축, 암/복호화를 수행합니다.
7. 응용 계층(Application Layer)
응용 계층은 사용자와 직접 상호작용을 하는 계층으로, 인터페이스를 통해 사용자가 서비스를 이용하여 네트워크를 통해 데이터를 송수신 할 수 있도록 합니다. 대표적인 프로토콜은 HTTP, FTP, SMTP 등이 존재합니다.
TCP/IP 4계층
TCP/IP 4계층은 OSI 7 계층을 사용하기 쉽게 단순화한 형태입니다.
OSI 7 계층의 Application, Presentation, Session 계층이 Application 계층으로 통합되었으며, Datalink, Physical 계층이 Link 계층으로 통합되었습니다.