Araina’s Blog

4. OSI 참조 모델 본문

Develop Study/Network

4. OSI 참조 모델

Araina 2023. 5. 16. 00:48


 

 

1. OSI 참조 모델의 개요

네트워크 기술이 발전하던 초창기 시절에는 HW, SW의 종류에 따라 시스템이 제각각이었다.

이 때문에 마치 과거 스마트폰이 탄생하기 이전, 온갖 휴대폰 충전기 규격이 모두 달랐을 때처럼 많은 어려움과 불편함을 초래했다.

국제표준화기구, ISO는 이러한 문제를 해결하기 위해 컴퓨터 간의 통신 기능을 7개의 계층으로 구분하여 각 계층마다 적합한 표준 서비스, 프로토콜을 규정하였다.

이렇게 규정된 7개의 계층을 OSI 참조 모델이라고 부른다.

OSI 참조 모델의 목적은 기본적인 HW, SW에 변형을 가하지 않고 시스템 간에 통신이 가능하도록 만드는 것이다.

 


 

2. OSI 참조 모델의 데이터 전송

OSI 참조 모델은 총 7개의 계층으로 이루어져 있다.

각 계층은 헤더, 데이터 단위로 정의된다.

헤더에는 각 계층의 기능과 관련된 정보가 포함된다.

즉, 각 계층을 거칠 때마다 헤더가 하나씩 붙으면서 다음 계층에게 필요한 정보가 더해지는 방식이다.

상위 계층, 하위 계층 사이에 데이터를 주고받는 것을 서비스 데이터 단위, SDU라고 부른다.

같은 계층 사이에서 데이터를 주고받는 것은 프로토콜 데이터 단위, PDU라고 부른다.

데이터는 응용 계층에서 생성되어 하위 계층을 1단계씩 거치면서 헤더를 붙인다.

마지막 데이터 링크 계층에 도착하면 트레일러가 추가로 붙어서 물리 계층으로 넘어간다.

물리 계층을 통해 데이터를 전달할 때는 전자적 신호로 변환되어 전송 매체를 타고 전송된다.

그렇게 수신 측에 전자적 신호가 도착하면, 물리 계층을 타고 응용 계층까지 역순으로 올라가게 된다.

상위 계층을 올라갈 때마다 붙어있던 헤더가 제거되면서 최종적으로 응용 계층에 도착하면 데이터만 남게 된다.

OSI 참조 모델은 각 계층이 구분되기 때문에 독립적으로 동작한다.

만약 사용자가 유선 LAN으로 컴퓨터를 연결했다가 무선 LAN으로 연결 방식을 변경했다면, 맨 아래에 있는 물리 계층 부분만 변경되고 나머지 계층은 아무런 영향을 미치지 않는다.

 


 

3. 네트워크 접속 계층

OSI 참조 모델의 7 계층은 4 계층으로 단순화할 수 있다.

이렇게 4 계층으로 단순화된 접속 계층을 TCP/IP 모델이라고 한다.

요즘은 대부분이 이 TCP/IP 모델을 사용한다.

TCP/IP 모델은 주로 하나의 네트워크나 다른 네트워크의 송신지에서 수신지까지 데이터를 주고받는다.

여기서 네트워크 접속 계층의 역할은 LAN과 WAN을 연결하여 인터넷을 구성하는 것이다.

 


 

4. 물리 계층

물리 계층은 OSI 참조 모델의 최하위에 위치한 계층이다.

두 시스템 사이에 데이터를 전송하고자 링크를 활성화하고 관리하는 역할을 수행한다.

허브, 라우터, LAN 카드, 케이블 등 다양한 전송 매체를 통해 비트를 전송한다.

물리 계층은 다음과 같은 기능을 수행한다.

  • 회선 구성: 점대점, 다중점 등 2개 이상 장치의 회선 구성 결정.
  • 데이터 전송 모드: 단방향, 양방향 등 연결된 시스템 간의 데이터 전송 모드 결정.
  • 접속 형태: 성형, 버스형 등 네트워크 접속 형태 결정.
  • 전송 매체 유형: 허브, 케이블 등 데이터를 전송하는 물리적 장치 결정.

 

4.1) 물리 계층의 데이터 단위

물리 계층은 0, 1로 구성된 비트열의 데이터(프레임)를 받아서 전기 신호로 변환한 뒤, 전송 매체를 통해 수신 측으로 보낸다.

수신 측의 물리 계층은 전기 신호를 0, 1로 구성된 비트열로 복원해 데이터 링크 계층으로 올려 보낸다.

LAN 카드는 연결된 케이블을 통해서 전기 신호를 0, 1로 구성된 비트열로 복원하거나, 컴퓨터에서 전달된 0,1로 구성된 비트열을 전기 신호로 변환하는 일을 담당한다.

 

4.2) 물리 계층의 네트워크 접속 장치

물리 계층에서 동작하는 네트워크 접속 장치, 리피터는 신호의 세기가 약해지면 전기 신호를 복원하고 증폭한다.

또한 멀리 떨어져 있는 상대방과 통신이 가능하도록 파형을 정상으로 만드는 역할도 수행한다.

허브는 여러 개의 통신 포트를 가지고 있기 때문에 동시에 여러 컴퓨터와 통신할 수 있는 네트워크 접속 장치이다.

리피터와 역할은 동일하다.

허브는 연결된 모든 컴퓨터에 전달받은 데이터를 동시에 뿌리는 특징이 있다.

즉, 1번 컴퓨터가 데이터를 허브로 전송하면, 허브는 다른 2, 3, 4번 컴퓨터 모두에게 동일한 데이터를 전송한다.

이는 상당히 비효율적이기 때문에 요즘은 특정 컴퓨터만 골라서 데이터를 전송할 수 있는 스위치를 사용한다.

 


 

5. 데이터 링크 계층

데이터 링크 계층은 물리적 링크로 받은 데이터를 전송하는 계층이다.

즉, 네트워크로 데이터를 전달하는 전송로 역할을 한다.

이 계층에서는 비트를 프레임이라는 논리적 단위로 구성한다.

프레임에는 전송하려는 데이터와 인접한 노드의 주소가 더해진다.

이는 최종 수신지의 주소가 아니다.

물리 계층에서 일어난 오류를 검출하고 복구하는 기능, 동기화, 흐름 제어 등의 역할도 수행한다.

데이터 링크 계층은 물리 계층 바로 위에 위치해 있다.

네트워크 계층에서 전달받은 데이터 단위에 트레일러, 헤더를 붙여 물리 계층으로 전달한다.

이 트레일러, 헤더에는 송신지에서 수신지로 데이터를 전송할 때 필요한 여러 정보(경유하는 지점의 물리 주소, 프레임이 경유하는 지점의 정보 등)들이 들어 있다.

 

4.1) 데이터 링크 계층의 데이터 단위

네트워크 계층에서 내려온 데이터 단위, 패킷을 받아서 프레임을 만든 뒤, 물리 계층에 전달한다.

수신 측은 반대로 물리 계층에서 받은 0, 1로 된 비트를 받아서 프레임으로 변환한 뒤, 네트워크 계층으로 전달한다.

여기서 프레임은 헤더와 트레일러, 데이터가 결합되어 있는 형태를 띤다.

다음에 접근할 노드의 물리 주소를 지정하거나, 순서, 흐름, 오류를 제어하고, 프레임, 동기화, 데이터 링크 설정 등과 같은 기능들을 수행한다.

 

4.2) 데이터 링크 계층의 규칙

LAN에서 데이터를 송수신하려면 데이터 링크 계층의 기술이 필요하다.

데이터 링크 계층은 네트워크 접속 장치 간에 신호를 주고받는 규칙을 정하는 계층이다.

이더넷이 가장 일반적으로 쓰이는 규칙이다.

 

- 이더넷 헤더

이더넷 헤더는 수신지 MAC 주소, 송신지 MAC 주소, 이더넷 유형까지 총 14바이트로 구성된다.

이더넷 유형은 이더넷으로 전송되는 상위 계층 프로토콜의 종류를 나타낸다.

 

- 트레일러

이더넷 헤더 외에 데이터 뒤에 붙으며, FCS라고도 한다.

이는 데이터 송신 도중에 오류가 발생하는지를 확인하는 용도로 쓴다.

이더넷 헤더, 트레일러가 추가된 데이터는 프레임이라고 부른다.

 

- 이더넷 데이터 전송 규칙

허브를 사용할 경우, 송신 대상이 아닌 다른 컴퓨터들도 데이터를 전달받기 때문에 보안 상 데이터를 읽을 수 없도록 하는 규칙이 요구된다.

이 규칙에 따라 데이터를 송신하는 대상이 아닌 컴퓨터들은 데이터가 들어와도 이를 무시하게 되어 있다.

여러 컴퓨터가 데이터를 동시에 전송할 경우, 충돌이 발생하지 않도록 이더넷은 CSMA/CD 방식을 사용해 데이터 전송 시점을 늦춘다.

하지만 CSMA/CD 방식이 효율이 좋지 않아서 요즘은 대부분 스위치를 사용하고 있다.

 

4.3) 데이터 링크 계층의 데이터 전송 과정

이더넷 헤더를 이용해 네트워크 통신을 한다고 가정하자.

이때 허브를 사용한다.

컴퓨터 1이 컴퓨터 3에 데이터를 전송하기 위해서는 이더넷 헤더에 데이터 수신지(컴퓨터 3)에 대한 MAC 주소, 송신지(컴퓨터 1)에 대한 MAC 주소를 추가해야 한다.

컴퓨터 1이 보낸 데이터가 허브를 거쳐 나머지 포트에 연결된 컴퓨터들에게 모두 전송된다.

하지만 수신지의 MAC 주소가 아닌 컴퓨터들은 MAC 주소가 다르기 때문에 데이터를 읽지 않고 그대로 파기해 버린다.

컴퓨터 3은 MAC 주소가 일치하므로, 데이터를 정상적으로 수신한다.

만약 동시에 데이터를 전송하려고 할 경우, CSMA/CD 방식에 따라 데이터 전송을 지연시킨다.

 


 

6. 스위치

데이터 링크 계층의 네트워크 접속 장치로 스위치를 사용하면 허브와 달리 데이터 충돌이 발생하지 않는다.

스위치는 스위칭 허브 또는 레이어 2 스위치라고도 부르며, 허브와 생김새는 유사하지만 동작하는 방식은 전혀 다르다.

허브는 회선 하나를 송수신에 쓰는 반이중 통신 방식이기 때문에 2대 이상의 컴퓨터가 동시에 데이터를 전송하고자 한다면 충돌이 발생한다.

스위치는 데이터를 동시에 송수신할 수 있는 전이중 통신 방식을 사용하여 충돌이 발생하지 않는다.

이 덕분에 충돌이 발생할 때 영향을 미치는 범위, 충돌 도메인의 범위도 스위치가 허브보다 더 좁다.

 

6.1) MAC 주소 학습 기능

스위치는 데이터 링크 계층에서 동작하며, 스위치 내부에는 MAC 주소 테이블이 존재한다.

이 테이블은 스위치의 포트 번호, 해당 포트에 연결된 컴퓨터의 MAC 주소가 기록된다.

스위치의 전원을 넣어서 처음 가동하면 테이블은 백지상태로 시작된다.

이때 컴퓨터가 수신지 MAC주소가 추가된 프레임을 전송하면 MAC 주소 테이블을 확인한다.

MAC 주소 테이블에 송신지 MAC 주소가 없다면 그 주소와 포트를 테이블에 기록한다.

이후에 다시 동일한 MAC 주소로 데이터를 전달하고자 한다면, 스위치는 테이블에 기록된 주소를 참조하여 데이터를 전달한다.

주소 테이블에 MAC 주소가 등록되어 있지 않은 상태에서는 스위치의 모든 포트에 프레임이 전달된다.

이를 플러딩이라고 부르며, MAC 주소가 테이블에 등록되어 있을 경우에는 발생하지 않는다.

MAC 주소가 테이블에 등록되어 있을 경우에는, 특정 컴퓨터에게만 데이터를 전달한다.

이를 MAC 주소 필터링이라고 부른다.

 


 


수고하셨습니다!


'Develop Study > Network' 카테고리의 다른 글

6. 전송 계층 (TCP)  (0) 2023.05.17
5. 네트워크 계층 (IP)  (0) 2023.05.17
3. 네트워크 통신  (0) 2023.05.09
2. 네트워크의 구성  (0) 2023.05.07
1. 네트워크의 이해와 설정  (0) 2023.05.06
Comments