(1) OSI 참조 모델이란?
OSI 7 계층(Open System Interconnection 7 Layer)이란 무엇일까?
1970년대 후반부터 네트워크 기술의 발전에 따라
여러 통신 업체에서 서로 다른 네트워크 장비를 만들었다.
그 결과는?
자신들의 시스템에만 적용되는 개별적인 네트워크 구조나
프로토콜 등의 차이로 통신의 어려움을 겪게 된다.
이를 위해 국제표준화기구 ISO(International Network Architecture)에서
서로 다른 통신 기능을 일곱 계층으로 구분하여
각 계층마다 표준화된 서비스와 프로토콜을 규정했다.
- OSI 참조 모델의 목적
- 네트워크 장비 간의 호환
- 즉, 하드웨어나 소프트웨어의 논리적인 변경 없이 시스템 간의 통신 개발
- OSI 참조 모델의 장점
- 통신이 일어나는 일련의 과정을 단계 별로 파악 가능
- 즉, 각 계층의 원인 분석 및 해결의 용이
(2) OSI 참조 모델의 구조
- 계층
- 7 Layer - Application Layer
- 6 Layer - Presentation Layer
- 5 Layer - Session Layer
- 4 Layer - Transport Layer
- 3 Layer - Network Layer
- 2 Layer - Data Link Layer
- 1 Layer - Physical Layer
각 계층마다 서로 다른 데이터 단위, 프로토콜, 장치를 가진다.
- AH : Application Header
- PH : Presentation Header
- SH : Session Header
- TH : Transport Header
- NH : Network Header / NT : Network Tail
- DH : Data Link Header / DT : Data Link Tail
각 계층은 헤더, 데이터 단위로 정의된다.
헤더는 각 계층의 기능과 관련된 정보가 포함된다.
송신 측에서 계층을 지날 때마다 헤더를 생성 및 추가하면,
수신 측의 해당되는 계층에서 헤더를 사용한다.
데이터 단위는 물건을 배송할 때 상자 단위로 포장하듯이,
헤더를 추가한 데이터를 전송하는 기본 단위이다.
상위 계층이나 하위 계층 사이에 주고받는 것을 SDU(Service Data Unit, 서비스 데이터 단위)라고 하고,
같은 계층 사이에 주고받는 것을 PDU(Protocol Data Unit, 프로토콜 데이터 단위)라고 한다.
(3) OSI 참조 모델의 데이터 전송
위 그림과 같이 계층 별 데이터 전송 시의 데이터 단위는 다르다.
상위 계층과 하위 계층 사이에 주고받는 데이터는 SDU이다.
동일 계층 간에는 SDU에 제어 정보인 PCI(Protocol Control Information)을 추가한 데이터 단위를 사용하며,
제어 정보에는 흐름 제어 정보, 오류 제어 정보, 주소 정보 등이 포함된다.
송신 측에서의 데이터 송신은 위의 그림과 같다.
상위 계층에서 하위 계층으로 데이터에 헤더를 추가하여 전송한다.
데이터 링크 계층에서 헤더 + 트레일러가 추가된 데이터는,
물리 계층에서 수신 측 시스템에 전송할 수 있는 형태로 변환한다.
물리 계층을 거쳐 데이터를 보낼 때는,
전자적 신호로 변환하여 전송 매체를 통해 수신 측으로 전송한다.
수신 측에 전기적 신호로 변환되어 도착한 데이터는,
물리 계층으로 전송되어 디지털 형태로 복원된다.
수신된 데이터가 하위 계층에서 상위 계층으로 전송되면,
각 계층은 송신 측 계층에서 추가된 헤더와 트레일러를 제거한 후
각 계층에서 해야 할 일을 수행한다.
최종적으로 응용 계층에 데이터가 전송되면,
데이터를 적절한 형태로 변환하여 수신자에게 전송한다.
이처럼 OSI 참조 모델은 데이터 처리 과정을 계층으로 구분함으로써,
각 계층을 다른 계층과 독립적으로 설계, 분석 등을 할 수 있다.
서로 다른 시스템 간에 데이터를 전송하는 경우,
송신 측에서 수신 측으로 데이터를 전송하며 많은 중간 노드를 거친다.
이 때 네트워크의 기본적인 동작인 데이터 전송과 경로 설정에 있어서
하위 계층인 물리 계층, 데이터 링크 계층, 네트워크 계층을 사용한다.
즉, 데이터 송신자에서 수신자에게 전달되는 과정에서 이 세 계층의 역할이 필수적이란 말이다.
다만 상위 계층이 사용되지 않는다는 것이 아니다.
예를 들어, 상위 계층은 아래와 같은 역할을 한다.
- 전송 계층 (4계층) : TCP, UDP는 데이터의 신뢰성과 순서를 보장하며, 포트 번호로 응용 프로그램을 식별
- 세션 계층 (5계층) : 세션 관리 및 동기화 담당
- 표현 계층 (6계층) : 데이터의 인코딩, 암호화, 압축 등을 처리
- 응용 계층 (7계층) : HTTP, FTP, SMTP 등의 프로토콜이 작동하며, 최종 사용자에게 직접 서비스 제공
즉, 네트워크 인프라의 기본적인 동작에 있어서 하위 세 계층의 프로토콜이 필수적인 것이며,
실제 통신 과정에서는 상위 계층의 프로토콜도 역시 사용되고 있다는 점은 명확히 해야 한다.
(4) OSI 참조 모델과 TCP/IP 모델
OSI 참조 모델의 각 계층은 서로 독립적이다.
그렇기에 특정 계층의 변경이 다른 계층에 영향을 미치지 않는다.
그러나 현재는 OSI 참조 모델을 잘 사용하지 않는다.
그러면 무엇을 사용하는가?
OSI 참조 모델을 단순화한 4계층으로 이루어진 TCP/IP 모델이다.
인터넷의 표준 프로토콜로 개발되었으며, 실질적인 통신을 위해 사용된다.
즉, 전 세계적인 인터넷 보급에 TCP/IP를 사용하였기에 사실상 표준인 것이다.
이러한 TCP/IP와 OSI 참조 모델은 서로 보완재로 활용된다.
TCP/IP는 실제 통신에서 사용하는 프로토콜로,
인터넷 및 네트워크 구성에 필수적이다.
OSI 참조 모델은 말 그대로 이론적인 참조 모델로 실제 통신에는 사용되지 않지만,
네트워크 기술 및 프로토콜의 표준화를 위해 사용한다.
각 계층의 역할과 기능을 이해하고 분석하는 데 도움이 되는 것이다.
🍉 참고
- https://sproutinghye.tistory.com/79
- [N/W] OSI 7계층이란? - OSI 계층별 특징, TCP/IP 4계층 (tistory.com)
- 2023-CS-Study/Network/network_osi_7_layer.md at main · devSquad-study/2023-CS-Study (github.com)
- 네트워크 개론 3판
'CS > Network' 카테고리의 다른 글
[Network] API란? (0) | 2024.10.15 |
---|---|
[Network] MAC 주소 + ARP (0) | 2024.06.04 |
[Network] 네트워크 토폴로지 (0) | 2024.05.31 |
[Network] 네트워크의 분류 (LAN, WAN, MAN) (0) | 2024.05.30 |
[Network] 네트워크란? (0) | 2024.03.23 |