OSI 7 계층 모델 요약
OSI(Open Systems Interconnection) 7 계층 모델은 네트워크 통신을 7단계로 나누어 설명하는 모델입니다. 이 모델은 서로 다른 시스템이나 네트워크 장치들이 데이터를 주고받을 때 발생하는 복잡한 과정을 단계별로 나누어 이해하기 쉽게 만들었습니다. 각 계층은 고유한 역할을 하며, 상호 독립적으로 작동합니다.
OSI 7 계층의 구성
- 물리 계층(Physical Layer): 전기 신호, 빛, 무선 신호 등 물리적 매체를 통해 데이터가 전송되는 방식과 관련된 계층입니다.
- 데이터 링크 계층(Data Link Layer): 물리적 매체에서 데이터를 어떻게 오류 없이 전달할지를 결정합니다. 이 계층에서는 MAC 주소를 사용하여 데이터를 전송합니다.
- 네트워크 계층(Network Layer): 데이터를 목적지까지 전달하는 경로를 찾고, IP 주소와 같은 논리적 주소를 이용해 데이터를 관리합니다.
- 전송 계층(Transport Layer): 데이터 전송의 신뢰성을 보장하고, 패킷의 오류 수정, 흐름 제어 등의 기능을 제공합니다. TCP와 UDP가 전송 계층에서 사용하는 대표적인 프로토콜입니다.
- 세션 계층(Session Layer): 통신 세션을 설정하고 관리하며, 데이터 전송을 동기화하는 역할을 합니다.
- 표현 계층(Presentation Layer): 데이터를 사용자나 애플리케이션이 이해할 수 있는 형태로 변환합니다. 데이터 압축, 인코딩, 암호화 등의 역할을 담당합니다.
- 응용 계층(Application Layer): 네트워크 서비스와 애플리케이션 간의 상호작용을 지원하는 계층입니다. 이메일, 웹 브라우징 등 사용자가 직접 접하는 서비스가 이 계층에서 동작합니다.
OSI 모델 - 데이터 링크 계층 (Data Link Layer) 상세 설명
1. 데이터 링크 계층이란?
데이터 링크 계층(Data Link Layer)은 OSI 7 계층 모델에서 두 번째 계층으로, 물리 계층과 네트워크 계층 사이에서 중요한 역할을 수행합니다. 물리 계층에서 받은 비트를 프레임으로 묶어 전달하며, 데이터를 물리적 매체를 통해 오류 없이 전달하도록 보장합니다. 이 계층은 전송된 데이터가 손상되지 않고, 순서대로 전달될 수 있도록 다양한 오류 검출 및 수정 메커니즘을 적용합니다.
데이터 링크 계층은 두 하위 계층으로 나뉩니다:
- MAC 계층(MAC: Media Access Control): 네트워크 장치가 물리적 매체에 접근하는 방법을 제어하고, 물리 계층과 상호작용하며, 데이터 프레임의 시작과 끝을 정의합니다.
- LLC 계층(LLC: Logical Link Control): 오류 검출 및 흐름 제어를 담당하며, 네트워크 계층에서 데이터를 적절하게 송수신할 수 있도록 보장합니다.
데이터 링크 계층의 주요 기능
- 프레임 분할 및 재조립: 비트 스트림을 의미 있는 데이터 단위인 프레임으로 나누고, 수신 시 다시 재조립합니다.
- 주소 지정(MAC 주소): 데이터 링크 계층에서는 MAC 주소를 사용하여 네트워크 장치 간에 데이터를 전달합니다.
- 오류 검출 및 수정: 패리티 비트, CRC(Cyclic Redundancy Check)와 같은 오류 검출 기술을 사용하여 전송 중 발생한 오류를 탐지하고 수정합니다.
- 흐름 제어: 데이터 흐름을 관리하여 송신 측이 너무 빨리 데이터를 보내 수신 측이 처리하지 못하는 상황을 방지합니다.
2. 데이터 링크 계층에서 사용되는 프레임 구조
데이터 링크 계층에서 데이터는 프레임(Frame)의 형태로 전송됩니다. 프레임은 다음과 같은 요소로 구성됩니다.
- 프리앰블(Preamble): 수신 측이 데이터가 시작됨을 인지할 수 있도록 하는 비트 패턴.
- 목적지 MAC 주소: 데이터를 받을 네트워크 장치의 고유 주소.
- 출발지 MAC 주소: 데이터를 보내는 장치의 고유 주소.
- 데이터 필드: 상위 계층(네트워크 계층)에서 전달된 실제 데이터(패킷)가 포함됩니다.
- 에러 검출 코드(CRC): 오류 검출을 위해 사용되는 코드. 프레임 전송 중 발생한 오류를 감지하는 데 사용됩니다.
3. 데이터 링크 계층에서 사용되는 프로토콜
데이터 링크 계층에서는 다양한 프로토콜이 사용되며, 이들은 주로 프레임 구조와 매체 접근 제어 방식을 정의합니다.
주요 프로토콜
-
Ethernet (IEEE 802.3):
- 가장 널리 사용되는 유선 네트워크 프로토콜로, CSMA/CD(Carrier Sense Multiple Access/Collision Detection) 기술을 이용해 충돌을 탐지하고 이를 해결합니다.
- 10Mbps에서 400Gbps까지 다양한 속도를 지원합니다.
-
Wi-Fi (IEEE 802.11):
- 무선 네트워크에서 사용되는 데이터 링크 계층 프로토콜로, CSMA/CA(Carrier Sense Multiple Access/Collision Avoidance)를 통해 무선 네트워크 간 충돌을 피하는 기술을 사용합니다.
- 다양한 주파수 대역과 속도를 지원하며, 보안 기능(WPA, WPA2 등)도 포함합니다.
-
PPP (Point-to-Point Protocol):
- 두 장치 간의 직렬 통신 링크에서 데이터를 전송하기 위한 프로토콜로, 데이터 링크 계층에서 사용됩니다.
- 오류 검출, 인증 및 다중 프로토콜 전송을 지원합니다.
-
HDLC (High-Level Data Link Control):
- 데이터 링크 계층의 비트 지향형 프로토콜로, 주로 WAN(Wide Area Network)에서 사용됩니다. 데이터 프레임의 오류 제어와 흐름 제어 기능을 제공합니다.
4. 데이터 링크 계층에서 사용되는 장비
데이터 링크 계층의 장비는 네트워크 상에서 프레임을 전달하고, 충돌 및 충돌 도메인을 관리합니다.
-
스위치(Switch):
- 설명: 스위치는 데이터 링크 계층에서 작동하며, 각 장치로 정확한 데이터를 전달하는 기능을 수행합니다. 스위치는 MAC 주소 테이블을 사용하여 각 장치가 연결된 포트를 기억하고, 데이터를 특정 장치로만 전달합니다.
- 특징: 스위치는 각 포트마다 충돌 도메인을 분리하여 네트워크 성능을 크게 향상시킵니다.
-
브리지(Bridge):
- 설명: 브리지는 두 개의 네트워크 세그먼트를 연결하는 장비로, 서로 다른 네트워크를 연결하고 프레임을 전달합니다.
- 용도: 네트워크 성능을 향상시키고, 트래픽을 관리하기 위해 사용됩니다.
-
네트워크 인터페이스 카드(NIC, Network Interface Card):
- 설명: NIC는 컴퓨터나 네트워크 장치가 물리적 네트워크에 연결되도록 해주는 장비입니다. NIC는 각 장치의 고유한 MAC 주소를 가지고 있으며, 이를 통해 데이터 링크 계층에서 통신을 수행합니다.
- 용도: 유선 또는 무선 네트워크에 장치를 연결할 수 있습니다.
5. 데이터 링크 계층의 주요 이슈 및 해결 방법
1. 프레임 충돌(Collision):
- 문제: 같은 네트워크에서 여러 장치가 동시에 데이터를 전송하려 할 때 프레임 충돌이 발생할 수 있습니다.
- 해결 방법:
- CSMA/CD 사용: Ethernet은 CSMA/CD를 통해 충돌을 감지하고 충돌이 발생했을 때 데이터를 재전송하는 방법을 사용합니다.
- 스위치 사용: 스위치는 각 장치를 개별 포트로 연결하여 충돌 도메인을 분리하고 충돌 발생을 방지합니다.
2. 프레임 오류(Errors in Frames):
- 문제: 데이터가 전송 중 손상되거나 왜곡되는 경우가 발생할 수 있습니다.
- 해결 방법:
- CRC 사용: 대부분의 데이터 링크 계층 프로토콜은 CRC와 같은 오류 검출 메커니즘을 사용하여 전송된 데이터의 무결성을 확인합니다.
- 에러 수정 기법: FEC(Forward Error Correction) 등의 기술을 통해 손상된 데이터를 재전송하지 않고 수정할 수 있습니다.
3. 전송량 제어:
- 문제: 수신 장치가 너무 많은 데이터를 받아서 처리하지 못하는 경우 데이터 손실이 발생할 수 있습니다.
- 해결 방법:
- 흐름 제어(Flow Control): 데이터 링크 계층에서는 흐름 제어 메커니즘을 통해 송신 측이 수신 측의 처리 능력에 맞춰 데이터를 전송하도록 제어할 수 있습니다. XON/XOFF, ACK/NAK와 같은 방법이 대표적입니다.
6. 데이터 링크 계층의 보안 이슈
데이터 링크 계층에서도 보안 문제가 발생할 수 있습니다. 대표적인 보안 문제와 대응 방안은 다음과 같습니다.
1. MAC 주소 스푸핑(MAC Address Spoofing):
- 문제: 공격자가 네트워크 상에서 허용되지 않은 장치로 자신을 위장하여 네트워크에 침입할 수 있습니다.
- 해결 방법:
- MAC 주소 필터링: 네트워크에서 허용된 MAC 주소만 통과할 수 있도록 필터링을 설정합니다.
- 네트워크 모니터링: 비정상적인 MAC 주소 변경 시 경고를 발생시키고 이를 모니터링합니다.
2. 스위칭 허브 공격(Switch Hijacking):
- 문제: 공격자가 스위칭 허브의 MAC 주소 테이블을 오염시키거나 포트 미러링을 통해 네트워크 트래픽을 도청할 수 있습니다.
- 해결 방법:
- 포트 보안 설정: 각 포트에서 허용된 MAC 주소의 개수를 제한하고, 이상이 발생하면 해당 포트를 차단합니다.
- VLAN 설정: 네트워크를 가상 네트워크(VLAN)로 나누어 물리적 연결을 차단하고, 불필요한 트래픽이 다른 네트워크로 흐르지 않도록 합니다.