티스토리 뷰

반응형

OSI 7계층 썸네일 이미지

이번 포스팅에서는 OSI 7 계층(OSI 7 layer)의 구조 및 계층 별 기능에 대해서 알아보려고 합니다. 네트워크 공부를 처음 시작하면 거의 필수적으로 배우고 넘어가는 내용입니다. 네트워크와 관련된 내용을 더 깊게 공부하기 전에 전체적인 흐름을 알고 간다고 생각하면 될 것 같습니다. 

 

 

OSI 참조 모델

OSI 참조 모델은 ISO(국제표준화기구)에서 정의한 것입니다. 7개의 계층으로 나뉘어 있는 이 모델은 각각의 계층에 다른 시스템과의 통신을 위한 방법, 계층 별 기능, 사용 장비 등이 규정되어 있습니다. 1 계층부터 순서대로 물리 계층, 데이터링크 계층, 네트워크 계층, 전송 계층, 세션 계층, 표현 계층, 응용 계층으로 이루어져 있으며 각각의 계층은 하위 계층의 기능을 이용해 상위 계층에게 기능을 제공합니다.

 

데이터가 전송될 때에는 7 계층에서 시작해 1 계층으로 내려가며 각각의 계층을 내려갈 때마다 제어 정보가 포함된 헤더가 하니씩 붙습니다. 이를 인캡슐레이션이라고 하며, 반대로 수신하는 측에서는 1 계층에서 7 계층으로 올라가며 각 계층을 지날 때마다 헤더가 하나씩 제거됩니다. 이를 디캡슐레이션이라고 합니다. 송신 측에서 이메일을 보낸다고 할 때, 응용 계층에서는 이메일이라는 데이터와 함께 헤더를 붙여서 표현 계층으로 내려보내면 표현 계층에서는 이메일과 응용 계층의 헤더를 하나의 데이터라고 생각하고 거기에 자신의 헤더를 추가로 붙여서 세션 계층으로 내려보내는 것입니다. 반대로 수신 측에서는 헤더를 하나씩 벗겨서 상위로 올려보내 최종적으로 수신 측 응용 계층에서는 데이터만 남게 되는 것입니다. 

 

 

OSI 7계층 구조 및 기능

1. 물리 계층

물리 계층에서는 케이블이나 연결 장치 등의 기계적 특성과 전압 등의 전기적인 특성을 이용해서 데이터를 전송합니다. 바로 위의 계층인 데이터 링크 계층에서 내려온 데이터를 bit(전기적 신호)로 변환해서 수신 측으로 통신하면 수신 측에서는 다시 bit를 데이터로 변환해 데이터 링크 계층으로 올려 보냅니다. 이때 물리 계층에서 사용하는 데이터는 0과 1로 이루어진 비트열 데이터입니다. 각 계층마다 PDU라고 해서 데이터 전송 단위가 있는데 물리 계층의 PDU는 bit입니다. 

 

2. 데이터 링크 계층

데이터 링크 계층에서는 오류 제어와 흐름 제어를 통해 데이터를 더욱 신뢰성 있는 데이터 전송이 가능합니다. 오류 검출 기능이 없는 물리 계층과 달리 데이터 링크 계층에서는 데이터 재전송을 통한 오류 제어를 합니다. 또한 송신 측에서 데이터를 보내는 속도가 수신 측이 데이터를 처리하는 속도에 비해 너무 빠를 경우 흐름 제어를 통해 속도 차이를 해결합니다. 데이터 링크 계층의 PDU는 frame이고, 관련 프로토콜로는 PPP, HDLC, Frame-Relay 등이,  대표 장치는 브리지와 스위치가 있습니다. 

 

3. 네트워크 계층

데이터가 전송될 때 송신 측에서 수신 측까지의 전달 방법은 다양하게 있습니다. 네트워크 계층에서는 라우팅 프로토콜을 이용해 다양한 방법 중 최적의 경로를 선택합니다. 추가적으로 한 곳으로 트래픽이 몰리지 않도록 하는 혼잡 제어 기능, 인터네트워킹 등의 기능을 수행합니다. 네트워크 계층의 PDU는 packet이고, 관련 프로토콜로는 IP, RIP, OSPF 등이, 대표 장치는 라우터와 L3 스위치가 있습니다. 

 

4. 전송 계층

전송 계층에서는 종단 간의 안전한 데이터를 주고받을 수 있도록 도와주는 기능을 합니다. 흐름 제어, 오류 검출 및 복구 등의 기능을 하는데 특히 전송 계층의 주요 프로토콜인 TCP와 UDP의 기능이 중요합니다. TCP의 경우 패킷이 중복되거나 중간에 누락되거나 전송 도중 순서가 바뀌는 것을 방지해주며 연결 지향적인 특성이 있어 송, 수신 간의 연결 설정, 수락, 확인이 완료된 후 데이터 전송을 시작합니다. 또한 갑작스러운 트래픽 증가로 네트워크 용량이 초과될 경우 송신 데이터 크기를 변화하는 혼잡 제어 기능도 합니다. 이러한 기능들로 인해 더욱 신뢰성 있는 데이터 전송이 가능합니다. UDP의 경우 TCP와 달리 비신뢰성의 특징을 가지고 있기는 하지만 실시간으로 빠른 응답이 필요한 상황에서 이용되는 프로토콜입니다. 전송 계층의 PDU는 세그먼트라고 합니다. 

 

5. 세션 계층

세션 계층은 세션 연결과 관련된 역할을 합니다. 사용자 사이에 대화를 제어하고, 통신 중에 연결이 끊어지지 않도록 해줍니다. 세션 계층의 PDU는 데이터이며 관련 프로토콜로는 SSH, TLS 등이 있습니다.

 

6. 표현 계층

표현 계층에서는 전송하는 데이터의 암호화와 해독을 하며, 상황에 맞추어 압축 및 압축해제를 진행합니다. 또한 EBCDIC로 인코딩 된 것을 ASCII로 바꿔주는 번역 작업을 하여 데이터의 표현을 일관되게 만들어줍니다. 표현 계층의 PDU 또한 데이터이며 관련 프로토콜로는 ASCII, JPEG 등이 있습니다.

 

7. 응용 계층

응용 계층은 우리가 평소에 이용하는 메일 서비스, 웹 서비스, 파일 전송 서비스와 같은 응용 프로그램과 연관되어 서비스를 수행합니다. 사용자와 가장 가까운 계층이라고 볼 수 있습니다. 응용 계층의 PDU 또한 데이터이며 관련 프로토콜은 HTTP, FTP, POP3 등이 있습니다. 

반응형
댓글
공지사항
최근에 달린 댓글