OSI 7계층은 ISO(국제표준기구)에서 정해둔 데이터 전송방식의 표준 모델이다.
총 7개의 계층으로 이루어져서 OSI7계층이라 불리는데, 사실 현대의 데이터 전송은 TCP/IP 모델을 주로 사용하기 때문에 실전에 맞는 이론이라기보단 각 계층을 나누어서 설명하기에 적합하기에 아직까지 통용되는 지식 정도라 생각된다.
* tcp/ip 에서는 5~7 단계가 어플리케이션 계층으로 묶인다.
OSI 7계층(전송단위)
□ 1단계: 물리 계층(비트: bit)
- 비트 단위 데이터를 전기 신호로 변환하여 송수신하는 물리적 매체의 특성과 전송 방식을 정의합니다.
□ 2단계: 데이터링크 계층(frame)
- 물리 계층에서 송수신된 데이터를 프레임 단위로 나누어 전송하고, 오류 검출과 복구 기능, 흐름 제어, 접근 제어 등을 수행합니다.
□ 3단계: 네트워크 계층(packet)
- 다양한 경로 중 최적의 경로를 선택하고, 패킷을 분할하거나 재조립하여 목적지에 전송합니다. 주소 체계와 라우팅 알고리즘을 정의합니다.
□ 4단계: 전송 계층(TPC - segment, UDP - datagram)
- 데이터를 송수신하는 애플리케이션 프로세스 간의 연결을 설정하고, 신뢰성 있는 데이터 전송을 보장하기 위해 오류 검출과 복구, 흐름 제어, 혼잡 제어 등을 수행합니다.
□ 5단계: 세션 계층
- 양 끝단의 애플리케이션들이 통신을 관리하고, 동기화를 유지합니다. 세션 연결의 설정, 유지, 종료 등의 기능을 제공합니다. 체크포인트를 이용하여 세션의 복구도 가능하다.
□ 6단계: 표현 계층
- 데이터 표현 형식을 정의하고, 애플리케이션이 보내는 데이터를 네트워크로 전송 가능한 형식으로 변환합니다. 예를 들면, ASCII 코드로 표현된 문자열을 전송 가능한 형태인 바이너리 형태로 변환하는 등의 작업을 수행합니다. 데이터의 압축, 암호화, 암호해독 등도 표현 계층에서 수행됩니다.
□ 7단계: 응용 계층
- 최종 사용자의 서비스를 지원하는 계층입니다. 사용자와 직접적으로 상호작용하며, 사용자의 요구를 처리합니다. 이 계층에는 HTTP, FTP, SMTP 등의 프로토콜이 포함됩니다.
* 2계층(데이터 링크 계층)과 4계층(전송 계층)의 흐름제어의 차이점 :
데이터 링크 계층의 흐름 제어는 같은 네트워크 상에서 통신하는 장비들 간에 이루어집니다. 예를 들어, 내 컴퓨터와 라우터 사이에 데이터를 전송할 때, 라우터가 받은 데이터를 처리할 수 있는 속도보다 내 컴퓨터가 데이터를 전송하는 속도가 더 빠르면, 라우터에서는 버퍼 오버플로우 현상이 발생할 수 있습니다. 이때, 데이터 링크 계층에서는 라우터가 받을 수 있는 양만큼만 내 컴퓨터에서 데이터를 보내도록 흐름을 제어합니다.
반면, 전송 계층의 흐름 제어는 서로 다른 네트워크 상에서 통신하는 호스트들 간에 이루어집니다. 예를 들어, 내 컴퓨터에서 서버로 파일을 전송할 때, 서버에서 받을 수 있는 데이터의 양을 초과해서 보내면 네트워크 혼잡이 발생할 수 있습니다. 이때, 전송 계층에서는 데이터를 보낼 때 윈도우 크기를 조절하여, 서버가 받을 수 있는 데이터 양만큼만 보내도록 흐름을 제어합니다.
두 계층 모두 흐름 제어를 통해 데이터 전송 시 손실이나 오류를 방지하고, 효율적인 데이터 전송을 가능하게 합니다.
'Back-end > Linux' 카테고리의 다른 글
[리눅스마스터2] ip와 서브넷마스크 (0) | 2023.02.27 |
---|---|
[리눅스마스터2] nice와 renice (0) | 2023.02.26 |
[리눅스 마스터2] 자격증 시험 접수 (2) | 2023.02.24 |
rsync : 원격지간 파일 전송 (0) | 2023.02.15 |
Linux : vmstat, sar, top(os 상태조회) (0) | 2023.01.27 |