본문 바로가기
네트워크

[네트워크] OSI 7 계층 (Layer)

by 느링 2017. 12. 14.

OSI 7 계층 (Layer)

 

이전에는 상호 이질적인 네트워크간의 열결에 어려움이 많았었습니다.

이러한 불편함을 막기위해 네트워크 장비들의 통신 표준을 정의한 OSI 7계층이 탄생했습니다.

 

OSI 7계층은 총 7개의 단계로 이루어진 7계층 구조로 국제 표준 기구(ISO)에서 제시한 네트워크 모델입니다.

 

계층 7개는 서로 독립적이므로 어느 한 계층의 변경이 다른 계층에는 영향을 미치지 않습니다.

 

 

 

 

1계층 물리계층 (Physical Layer)

주로 전기적 및 기계적인 특성으로 통신 케이블로 데이터를 전송하는 기능입니다.

즉, 상위 계층에서 받아온 데이터들을 물리매체를 통해 다른 시스템에 전기적으로 보내는 일을 담당합니다.

 

* 전송단위 : 비트(bit)

  장비 : 허브, 리피터

  프로토콜 : Ethernet.RS-232C

 

※ 허브

하나의 링크에서 들어온 비트를 다른 링크로 보내주는 역할을 합니다.

즉, 데이터를 수신하면 뿌려주는 역할

단방향 통신이며, 여러 사용자가 허브를 동시에 사용할 경우 충돌이 생기고 느려집니다.

 

정확히 말하면 허브속에는 스위치(데이터 링크 장비)라는 것이 있는데, 허브는 데이터가 모이는 곳을 의미하고 스위치는 데이터를 어떻게 그리고 어디로 보낼지 결정하는 것이라는 세부적인 차이가 있습니다. 또한 허브의 단점인 단방향 전송때문에 데이터 충돌, 지연이 발생합니다.

따라서 허브는 구시대의 기술이기에 허브를 대신하여 양방향 통신이 가능한 스위치로 대체합니다.

 

※ 리피터 (repeater)

 

서울    →     리피터    →    대구

             (데이터 전송)

 

예를들어 서울에서 대구로 데이터를 전송한다고 가정하면 약 300km의 거리를 이동하게 됩니다.

이동하는 과정에서 신호가 약해져 데이터 손실이 일어날 수 있기 때문에 리피터라는 장비를 통해 신호를 증폭해주어 데이터 손실없이 전송을 가능하게 해줍니다.

 

 

2계층 데이터 링크 계층 (Data Link Layer)

3계층에서 받은 데이터를 프레임 단위로 구성하여 물리계층으로 전송합니다.

또한 2계층은 MAC주소를 가지고 통신이 가능한 계층입니다.

(네트워크 계층 → 데이터 링크 계층 → 물리 계층으로 현재 데이터가 어떻게 전송되는지 설명하고 있고 반대로의 과정도 동일합니다.)

 

이 때 데이터의 오류 제어 및 흐름 제어 담을 합니다.

 

* 전송 단위 : 프레임(bit의 모음)

  장비 : 브릿지, L2스위치

  프로토콜 : Ethernet, Token Ring, MAC

 

※ 오류제어

오류의 종류에는 프레임 변형(데이터가 깨져서 도착)과 프레임 분실(데이터가 목적지에 도착하지 못함)이 있습니다.

오류를 감지하면 오류 복구 과정이 진행됩니다.

컴퓨터 네크워크에서는 일반적으로 송신 호스트가 원래의 데이터를 재전송하는 기법을 사용합니다.

 

※ 흐름제어

전송 데이터의 속도를 조절합니다.

송신 호스트는 수신 호스트가 감당할 수 있을 정도의 전송 속도를 유지하면서 데이터 프레임을 전송해야합니다.
 

※ 스위치와 브릿지 차이점

스위치와 브릿지는 유사하지만 차이점은 스위치가 브릿지에 비해 프레임 처리 속도가 훨씬 빠릅니다.

스위치는 포트별로 서로 다른 속도를 설정할 수 있으며 스위치는 브릿지에 비해 제공하는 포트 수가 훨씬 많습니다.

 

※ 이더넷 (Ethernet) , 토큰링(Token Ring)

이더넷과 토큰링은 네트워킹의 한 방식입니다.

 

- 이더넷

이더넷은 충돌을 사용하기 시작함( 먼저 쓰는 사람이 임자 )

CSMA / CD (Carrier Sense Multiple Access / Collision Detection) 프로토콜을 사용해 통신합니다.

→ "대충 알아서 눈치로 통신하자"

그렇기 때문에 충돌이 자주 일어날 수 있으므로 안정성이 낮습니다. 대신에 먼저 쓰는 사람만 사용 가능하기 때문에 빠릅니다.

 

우리나라는 주로 이더넷을 사용합니다.

 

토큰링은 토큰을 가지고 있는 컴퓨터만 통신을 가능하게 하여 안정적이지만 거의 쓰지 않습니다.

 

 

 

3계층 네트워크 계층(Network Layer)

라우팅 프로토콜을 이용하여 데이터를 목적지까지 가장 안전하고 빠르게 전달하는 것입니다. (최적의 경로 선택)

 

* 전송 단위 : 패킷

  장비 : 라우터, L3스위치

  프로토콜 : IP, IPX

 

※ 라우터

흔히 집에서 이용하는 공유기가 라우터 일종입니다.

라우터는 서로 다른 네트워크를 연결해주는 역할을 할 뿐 아니라 최적의 경로를 선택해주는 역할을 합니다.

 

※ 이전 계층인 데이터 계층은 노드 VS 노드 전달을 감독하는 것이고 네트워크 계층은 시작점에서 목적지까지 성공적으로 전달되도록 하는 역할을 수행하는 것입니다.

 

4계층 전송 계층(Transport Layer)

정보를 분할하고 다시 합치는 과정을 담당합니다.

패킷의 전송이 유효한지 확인하고 전송에 실패된 패킷을 다시 보내는 것과 같은 신뢰성 있는 통신을 보장합니다.

 

통신과정에 있어 오류 및 흐름 제어를 합니다.

 

* 전송 단위 : 세그먼트(segment)

  장비 : 게이트웨이, L4스위치

  프로토콜 : UDP, TCP 등

 

UDP                               

- 신뢰성 x                                

- 비연결성                              

- 재전송 x                             

고속의 데이터 전송 가능          

- 문자 메시지 같은 서비스와 비슷

- 데이터 전송이 확인이 안됨

- 소규모 통신에 적합

 

TCP

- 신뢰성 o

- 연결성

- 재전송

- 흐름제어로 인해 속도는 비교적 느림

- 전화와 같은 서비스와 비슷

- 상대방이 데이터를 잘 수신했는지 확인이 가능

- 대규모 통신에 적합

 

 

 

 

5계층 세션 계층(Session Layer)

통신사이의 연결이 끊이지 않게 세션을 열어 관리하는 역할을 합니다.

 

* 프로토콜 : NetBIOS, SAP, SDP, SSH 등

 

 

6계층 표현계층(Presentation Layer)

다양한 데이터의 포멧을 일정한 포멧으로 변환하고 압축과 암/복호화 작업을 수행하는 역할을 합니다.

 

* 프로토콜 : MPEG, ASCII, JPEG 등

 

 

※ 5,6 계층은 추상적인 계층으로, 정확하게 표현되지 않습니다. (실제 전송과는 상관이 없는 계층)

 

7계층 응용 계층(Application Layer)

응용프로그램(ex.크롬 등)과 사용자사이의 인터페이스를 제공하는 역할을 합니다.

 

* 프로토콜 : HTTP, FTP, Telnet, DNS, DHCP 등

 

 

 

 

★ 각 계층을 지나면서 캡슐화와 디캡슐화가 이루어지며 송/수신이 이루어집니다. ex) 택배과정