본문 바로가기
IT_정보보안/인프라 & 보안기초

2. OSI 7 Layer

by jys275 2023. 11. 1.

이번에는 네트워크에서 데이터가 통신되는 과정을 분류한 OSI 모델 / OSI 7 Layer를 알아보았다.

 

 

OSI모델이란?

 

OSI = 개방형 시스템 상호 연결

OSI모델은 *표준 프로토콜을 사용하여 다양한 통신 시스템이 통신할 수 있도록 국제표준화기구(ISO)에서 만든 개념 모델이다.

쉽게 풀면 상이한 컴퓨터 시스템끼리 서로 원활한 통신을 할 수 있도록 표준을 제공한 것이다.

 

*프로토콜 : 나중에 프로토콜을 자세하게 알아볼 예정이지만 간단하게 알아보았다.

우리가 외국인들과 대화를 할 때 서로의 모국어를 모르는 상태에서 서로의 모국어로 대화가 가능할까? 

벽을 보고 떠드는 것처럼 뭐라고 하는지도 모르고 대화도 안 될 것이다. 우리가 서로의 언어를 모르면 대화가 불가능한 것처럼

컴퓨터 또한 어떠한 규칙(사람을 예시로 들면 서로 간의 통하는 제3의 언어)이 없으면

상이한 컴퓨터 간의 통신(Communication)이 불가할 것이다.

즉, 컴퓨터 또한 서로 이해할 수 있는 언어가 필요한데... 이것을 해결하기 위해서 프로토콜을 사용하면 된다.

이러한 표준화된 프로토콜은 컴퓨터가 사용할 수 있는 공통된 언어 혹은 형식을 제공한다.

이 규칙들은 데이터의 형식, 전송 방법, 오류 처리 등 다양한 측면을 다룬다.

 

그러면, 이 ISO에서 국제표준을 만든 것인데 왜 이러한 표준이 생겼을까?

 

옛날에는 네트워크에서의 통신이 표준화되지 않은 상태였기 때문에,

여러 시스템과 애플리케이션이 호환되지 않는 문제와 더불어서 통신이 불가능하기도 했다.

이 말은 통신이 원활하지 못했다는 뜻이다.

 

하지만 OSI 모델과 같은 표준이 되는 것이 만들어지며 여러 문제점이 발생하는 게 줄어들었고,

네트워크 기기 간 원활한 호환 및 통신 환경이 구축되었다.

 

이 OSI 모델은 통신 시스템을 7개의 추상적 Layer(계층)로 나누었고, 이것을 OSI 7 Layer, OSI 7계층이라고 한다.

 

 

OSI 7 Layer의 장점

 

앞에서 알아보았듯이 네트워크 기기 간의 원활한 통신 환경도 있을 것이다.

 

OSI 모델은 아무래도 통신 시스템을 7개의 계층으로 세분화해서 나누었다 보니 문제가 발생했을 때,

어느 포인트에서 문제가 발생했는지 정확하게 좁힐 수 있다는 장점이 있다.

 

즉, 모델의 특정 계층으로 문제를 좁힐 수 있다는 것이고 이는 불필요한 작업이 최소화됨을 의미한다.

 

또 다른 장점으로는 지금 나의 상황과 같이 교육할 때도 큰 도움이 된다.

계층이 7개로 세분되어 있다 보니 교육하고자 할 때,

"이 계층은 이렇구나! 저 계층과 이런 게 다르구나!" 상세하게 내용들을 구분하고 알아볼 수 있다는 장점이 있다.

 

 


 

 

OSI 모델은 네트워크에서의 통신 과정을 7개의 계층으로 세분되었고, 이것을 OSI 7 Layer라고 한다는 것은 알겠다.

 

 

그렇다면 7개의 계층은 무엇이 있을까?

 

7. 응용 or 응용 프로그램(Application) 계층
6. 프레젠테이션(Presentation) 계층
5. 세션(Session) 계층
4. 전송(Transport) 계층
3. 네트워크(Network) 계층
2. 데이터 연결(Data Link) 계층
1. 물리(Physical) 계층

 

그렇다면 저러한 계층들이 어떻게 작동하는지 간단하게 알아보자

 

 

위 그림은 빨간색 컴퓨터 사용자가 파란색 컴퓨터 사용자에게 데이터를 전송하는 과정에서

OSI 7 Layer가 작동하는 방식이다.

 

즉, 데이터를 보내는 송신하는 과정은 7계층 → 1계층이라고 할 수 있고, '캡슐화'라고 한다.

그리고 데이터를 받는 수신하는 과정은 1계층 → 7계층이라고 할 수 있고, '디캡슐레이션(역캡슐화)'이라고 한다.

 

이러한 전송방식에서 알아야 할 것이 있다. PDU(전송단위)와 위에서 잠시 알아보았던 Protocol(프로토콜)이다.

 

왜냐하면 위의 7개의 서로 다른 계층에서 통신하면서 무언가 행위를 할 것인데, 여기서 전송단위가 다르기 때문이다.

 

이 전송단위가 다른 것을 해결하기 위해 데이터를 송신하는 과정 중 위에서 알아보았던,

'캡슐화' 라는 동작이 이루어지는 것이다. 이 캡슐화 과정은 프로토콜을 통해 이루어진다.

 

예를 들어, 상위 계층의 데이터가 하위 계층의 전송 단위에 맞추어야 하는 경우,

캡슐화는 각 계층이 서로 다른 통신 단위를 이해하고 처리할 수 있도록 해결책을 제공한다.

 

송신자 입장을 볼 때, 응용계층에서 데이터가 생성되면 응용 계층에서는

해당 데이터에 응용계층 '헤더'라는 것이 추가되어 데이터를 포장하고, 전송계층으로 전달된다.

그걸 받은 전송계층에서는 전송계층 헤더가 추가되고, 이러한 과정이 계속해서 이어지는 것이다.

반대로, 수신자 입장에서는 각 계층에서 해당 계층의 헤더를 제거하는 과정, '디캡슐레이션'이다.

 

번역기와도 비슷한 역할을 수행하는 것이 '캡슐화'라고 볼 수 있다.

 

간단하게 이 정도만 알아보고 각 계층을 알아보자

 

 


 

 

7. 애플리케이션(Application) 계층

 

응용계층이라고도 하는 7계층.

이는 우리와 같은 사용자와 직접적으로 상호 하는 유일한 계층이다.

 

전문 용어로 사용자와의 인터페이스와 근접해 있다, 인터페이스를 지원한다...라고도 한다.

 

어떻게 우리 같은 사용자와 상호 하는 걸까?

예시로는 이메일 전송, 웹 사이트 접속 등과 같은 서비스를 사용자에게 제공해 주는 것과 같다.

 

이렇게 사용자에게 의미 있는 데이터를 제공하기 위해 데이터를 처리하고 프로토콜을 조작한다.

 

- PDU : Data, Massage 두 개의 개념 모두 사용된다. 이 두 전송단위는 계속 알아볼 6계층, 5계층에서도 동일하다.

- Protocol : HTTP, FTP, SMTP, DNS...

 

처음 보는 프로토콜들이 많이 보인다. 나중에 자세히 알아볼 예정이지만

우리에게 조금은 익숙한 HTTP가 응용계층에서 작동하는 방식을 간단하게 알아보자.

HTTP는 클라이언트(일반적으로 웹 브라우저)와 서버 간에 통신을 관리하는 프로토콜로,

웹 페이지와 관련된 데이터를 주고받을 수 있도록 한다.

우리가 일반적으로 웹 브라우저를 사용하여 웹 페이지에 접속하면, 웹 브라우저는 HTTP를 사용하여 해당 웹 서버에 요청을 보내고,

서버는 요청에 대한 적절한 응답을 생성하여 웹 브라우저에 전송한다.

 

이렇게 응용계층에서의 프로토콜은 주로 데이터를 형식화하고 처리하는 기능을 수행한다.

 

 

6. 프레젠테이션(Presentation) 계층

 

6계층은 7계층인 응용계층에서 만들어진 데이터를 표현(Presentaion) 해 준다.

표현? 무슨 말일까.

 

7계층에서는 우리에게 인터페이스를 지원하기 위해 여러 동작을 하면서 데이터를 만들 것이다.

이러한 데이터들이 7계층에서 6계층으로 내려오면서 '표현'이라는 것을 하게 되는데, 어떻게 할까?

 

쉽게 7계층에서 만들어진 데이터에 '확장자'를 부여한다고 이해하면 된다.

그림 데이터의 경우 JPEG, PNG 등이 있을 것이고, 동영상 데이터의 경우 AVI, MPEG 등이 있다.

 

이렇게 확장자를 부여를 하는 역할을 주로 하는데, 이를 전문적으로 표현하자면

데이터의 형식을 변환하거나 암호화한다  압축, 암호화, 인코딩한다 등의 표현이 있다.

 

- PDU : Data, Massage 두 개의 개념 모두 사용된다. 

- Protocol : JPEG, MPEG, SMB...

 

 

5. 세션(Session) 계층

 

세션계층은 세션(Session)이 무슨 뜻인지를 알면 편하다.

 

세션(Session) : 통신을 시작하는 과정부터 통신을 잘 유지하며 마지막에 통신이 종료되는 이 모든 일련의 과정을 모두 묶은 개념.

 

이렇게 세션계층은 연결된 통신상태의 전체적인 부분을 보존, 유지하는 역할을 하며,

이를 위해 다양한 프로토콜을 사용하여 데이터 교환의 원활한 진행을 도와준다.

 

전문적인 표현으로 컴퓨터 간의 대화(상호 간의 통신)의 시작과 끝을 담당한다고 한다.

 

- PDU : Data, Massage 두 개의 개념 모두 사용된다.

- Protocol : PTTP 등

 

 

4. 전송(Transport) 계층

 

다음 글에 다룰 TCP / UDP를 포함한다. 

 

전송계층은 데이터의 전송을 담당한다.

전문적인 표현으로 종단 간(end-to-end) 통신을 제공한다.

 

예를 들면, 내 PC에서 상대 PC로 데이터를 전송할 때

전송계층은 데이터의 출발지와 목적지 간의 연결을 설정하고 데이터의 안정적인 전송을 보장한다.

 

여기서 출발지와 목적지가 각각 데이터의 시작과 끝을 나타내는 종단(end point)이 될 수 있다.

 

아무래도 전송계층은 이러한 담당 역할(데이터 전송) 때문에 데이터를 올바르게 전송 잘하고 있는지 컨트롤을 해야 하는데,

이를 위해 흐름제어 • 오류제어 등 제어에 대한 역할을 통해 데이터가 올바르게 갈 수 있도록 한다.

 

전송계층은 TCP나 UDP와 같은 프로토콜을 사용하여 데이터를 처리한다.

 

- PDU : Segment(TCP를 이용해서 통신할 때), Datagram(UDP를 이용해서 통신할 때)

- Protocol : TCP, UDP

 

 

3. 네트워크(Network) 계층

 

여기서는 우리가 흔히 알고 있는 주소 체계, IP가 생긴다.

IP는 출발지 IP와 목적지 IP라는 개념을 갖고 있다.

 

네트워크 계층은 이 출발지와 목적지 서로 간의 최적의 경로를 통해서 통신하고자 경로를 할당한다.

우리가 그 기능을 보고 라우팅(Routing)이라고 한다.

 

(이 라우팅이라는 개념을 잘 알아두자)

 

이러한 데이터의 안전하고 신속한 전달을 보장하기 위해

프로토콜과 다양한 기술이 사용되며, 네트워크의 안정성과 성능을 유지하는 데 중요한 역할을 한다. 

 

- PDU : Packet

- Protocol : IP, ICMP, ARP

 

 

2. 데이터 연결(Data Link) 계층

 

1계층인 물리 계층까지 엮어서 알아보자.

 

물리 계층은 전기적인 신호를 바탕으로 1과 0이라고 불리는 전시적인 신호로 통신하는 계층이다.

 

사실상 어떻게 보면 전기적인 신호를 바탕으로 통신하기에 데이터라고 불릴 수 있을 만한 덩어리가 없다.

 

물리 계층에서 이런 전기적인 신호를 2계층인 데이터 연결계층으로 올렸을 때

데이터 연결계층은 전기적인 신호를 데이터의 형태로 만들어야 할 것이다.

 

이때, 4계층인 전송계층과 유사하게 '제어' 역할을 통해

전기적인 신호를 적절히 다루어 데이터의 형태로 만든다.

 

이렇게 전기적인 신호를 다루어 해석하고 데이터 연결 계층은 본인의 계층에서 정의된

Frame 형식으로 변환하여 다시 상위계층으로 전달한다.

 

데이터 연결 계층의 중요 포인트는

물리 계층에서 만들어진 전기적인 신호를 데이터의 형태로 만드는 '제어'에 대한 역할을 한다는 것을 잘 알아두자.

 

- PDU : Frame

- Protocol : Ethernet, PPP, HDLC

 

반대로 데이터 연결 계층이 물리 계층으로 Frame을 전달할 때는,

Frame을 전기적인 신호로 변환하여 물리 계층에 송신한다.

 


1. 물리(Physical) 계층

 

전기적 신호인 1과 0을 바탕으로 통신하는 계층이다.

물리계층은 완전한 물리적인 계층이며 하드웨어적인 성격을 가졌다.

 

즉, 물리적인 장비의 형태를 통해서 통신이 된다.

 

흔히 알고 있는 허브, 케이블 등과 같은 데이터를 전송하는 물리적인 장비들이 있다.

 

- PDU : Bit

- Protocol : RS-232, HDMI, USB, Bluetooth, WIFI

 

물리계층은 프로토콜이라기 보다는 기술, 인터페이스 및 규격(표준)이 존재한다.

 

즉, 물리계층의 RS-232, HDMI, USB 등은 프로토콜이라기 보다는

기술, *인터페이스 및 연결 규격(표준)을 나타내며,

데이터의 물리적인 전송을 가능하게 한다.

 

*인터페이스 (Interface)

두 시스템 또는 장치 간의 상호 작용을 위한 연결점이나 경계를 나타낸다.

USB나 HDMI는 특정한 디바이스를 컴퓨터나 모니터에 연결하는 데 사용되는 인터페이스이면서,

각 기술에 대한 규격이 표준으로 정의되어 있다.

이는 물리적으로 USB 포트나 HDMI 포트 등으로 나타낼 수 있다.


 

이렇게 OSI 모델 및 OSI 7 Layer를 알아보았다.

 

다음에는 4계층인 전송계층에서의 프로토콜인 TCP/UDP를 알아보겠다.

'IT_정보보안 > 인프라 & 보안기초' 카테고리의 다른 글

6. 계층 별 프로토콜(2)  (0) 2023.11.28
5. 계층 별 프로토콜 (1)  (1) 2023.11.28
4. 계층 별 장비  (2) 2023.11.13
3. TCP / UDP  (2) 2023.11.06
1. 네트워크 보안  (1) 2023.10.31