- Published on
OSI 7 Layer
- Authors
- Name
- JaeHyeok CHOI
- none
Open Systems Interconnection Reference Model
ISO 에서 개발한 모델로, 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 개념적으로 설명한 것.
Layer 1: 물리 계층
전송 단위 | 비트 |
---|---|
대표 장치 | 케이블, 안테나, 앰프, 네트워크 허브, 리피터 |
프로토콜 | 이더넷, USB 등의 케이블, Bluetooth, Wi-Fi, LTE, 5G, 안테나 등 |
물리 계층은 실제 장치들을 연결하기 위해 필요한 전기적, 물리적 세부 사항들을 정의함. 핀들의 배치나 전압, 전선의 명세 등이 이 계층에 포함.
- 물리적인 정보 전달 매개체에 대한 연결의 성립, 종료
- 여러 사용자들 간의 통신 자원을 효율적으로 분배하는데 관여
- 통신 채널을 통해 전송되는 사용자 장치의 디지털 데이터를 이에 상응하는 신호들로 변환, 변조함. 이 신호들은 구리선이나 광섬유 선 무선 통신을 통해 전달되는 신호.
- 물리 계층은 네트워크 상에서 데이터 비트를 전송하는 계층이다. 데이터 링크 개체 간의 비트 전송을 위한 물리적 연결을 설정, 유지, 해제하기 위한 수단을 제공. 전송 매체는 신호를 보내는 방법을 정의한다.
Layer 2: 데이터 링크 계층
전송 단위 | frame |
---|---|
대표 장치 | L2 Switch |
프로토콜 | CSMA/CD, CSMA/CA, MAC주소 관리 등 |
데이터 링크 계층은 포인트 투 포인트 (Point to Point) 간 디지털화된 데이터들에 대해 비트 단위로 신호화 및 동기화를 하여 최대한 신뢰성 있는 전송을 보장하기 위한 계층.
일반적으로 물리 계층에서 구현된 한 단위의 데이터인 프레임을 받아 통신 링크를 따라 전송 가능한 형태로 변환하는 역할로 비트의 흐름을 전자기 또는 광 신호로 변환 후 매체를 통해 신호를 전송하는 역할을 한다. 주로 사용되는 장비에는 데이터 단말장비(Data Terminal Equipment, DTE)와 데이터 통신장비 (Data Communication Equipment, DCE)가 있다.
ASK, PSK, FSK, DM, PCM 등이 있음.
About Details
DTE, DCE
- DTE : 데이터 수신장치의 예로 송신 또는 송수신 장비로서 사용되며 데이터 제어 통신 기능을 가지는 단말장치나 주 컴퓨터 장치에 해당.
- DCE : DTE와 전송로 사이에서 접속을 유지, 해제, 부호 변환, 신호 변환의 기능을 제시해 주는 역할. 네트워크 위의 개체들간 데이터를 전달하고, 물리 계층에서 발생할 수 있는 오류를 찾아내고, 수정하는데 필요한 기능적 절차적 수단을 제공함.
에러 가능성
데이터 전송 간에 에러가 생길 수 있는데, 신호와 임의의 에러 간 결합으로 인해 전송 가능성이 열화되는 현상으로 디지털 데이터의 경우 BER을 높이는 역할을 한다. 디지털의 경우 노이즈가 있어도 이를 판별하는 데에 있어 별 분제가 없으나, 아날로그의 경우 감쇠, 지연, 잡음이 생기게 된다.
인코딩 방식
인코딩은 잡음을 줄이기 위한 여러 노력들로 주로 높은 대역폭 및 bps, BER, 낮은 SNR을 목적으로 함. NRZ-L, NRZ-I, B2ZS, HDB, 맨체스터 등이 있다.
- NRZ-L : 두 바이너리 비트를 다른 전압으로 사용한 가장 쉬운 방식.
- NRZ-I : 긴 0에서 사용하지 않은 것을 주 원칙으로 하며, 주변 극성에 따라 인코딩을 진행한다.
- B2ZS : 두 개 이상의 신호 레벨을 사용하는 방식으로 긴 1에 대해서 동기 감쇠가 없으나, 긴 0에 대해서는 동기 감쇠가 있음.
- 맨체스터 : 0, 1에 대해 NRZ를 하는 방식으로 대역포이 낮고 각 비트 주기에서 발생하며 중간 비트 전이는 데이터 표현시 에러체크가 되어 클럭과 같이 동작한다. 동축 케이블, LAN, CSMA/CD에서 사용하는 Twisted Pair 등이 있음.
- 차동 맨체스터
인터페이스
인터페이스는 데이터링크의 통신 선로를 따라 데이터가 송수신될 때 전기적으로 동시에 연결되고 시간 순서에 논리정연하게 기능이 안정하게 유지될 수 있도록 운용하는 기계적인 부가신호를 일컫는다. 프로토콜에는 전기적, 기능적, 기계적, 시간적인 것이 명시되며 인터페이스는 물리적 계층의 link to link 방식을 따르는 규범과 유사하며, 전기적인 신호를 보다 정확하고 시간 순서에 맞추어 전달하는 것을 목적으로 함.
응용
CRC 기반의 오류 제어, 흐름 제어가 필요함. 주소 값은 물리적으로 할당 받는데, 네트워크 카드가 만들어질 때부터 맥 주소가 정해져 있다는 뜻이다. 주소 체계는 계층이 없는 단일 구조이며, 데이터 링크 계층의 가장 잘 알려진 예는 이더넷이다. 이 외에도 HDLC나 ADCCP 같은 point-to-point 프로토콜이나 패킷 스위칭 네트워크나 LLC 같은 근거리 네트워크용 프로토콜이 있다.
OSI 7계층 데이터 통신모델에서 소위 '1계층(Layer 1)/2계층(Layer 2)'이 보통 통합 칩 형태로 구현된다. 즉 SW가 아닌 하드웨어로 이다. Layer 1은 물리계층(Physical Layer)이며 보통 무선 RF소자, 유선 케이블 접점을 말한다. Layer 2는 MAC계층 (Medium Access Control layer)로 멀티플렉서(Multiplexer), 디멀티플렉서(Demultiplexer), 디지털-아날로그 신호 간 변환(DAC/ADC)과 오류정정 등 디지털 신호처리, 간단한 통신트래픽 제어(Slott Aloha 알고리즘, CSMA/CD, CSMA/CA등) 등 다양한 기능이 디지털 논리회로로 구현된다. 컴퓨터 공학(Computer Science)와 전자 공학(Electric Engineering)의 연계접점인 임베디드 시스템 형태가 아닌 보다 하위단의 회로설계 관점이며 ASIC/FPGA와 같은 반도체 설계 단계에서 구현된다. 보통 컴퓨터 공학에서는 Layer 3계층 즉 컴퓨터 운영체제 커널단에 구현된 TCP/IP 와 애플리케이션 계층과의 접점인 버클리소켓등을 활용해 통신S/W를 구현한다. Layer 3이상에서 Layer1/2계층으로 데이터를 떨어뜨리면 소위 '프레임'이라는 데이터조각을 생성해 유무선 통신회선으로 흘려보낸다. 전산학에서 Layer 2계층 기능을 가르치는 이유는 실제 구현 보단 Layer 3에서 처리된 패킷이 어떻게 처리되어 통신선로를 타고 흘러가는지에 대한 원리을 설명하기 위함이며, 실제 구현은 정보통신학과나 전자공학 전공자들에 의해 심도 깊게 연구된다. 조금더 알기 쉽게 예를 들어 설명하면 모뎀혹은, 랜카드가 1계층(PHY계층)과 2계층(MAC계층) 통신 프로토콜 스택이 결합된 형태이다. 3계층 이상부터 컴퓨터 커널(운영 체제)내부에 구현하거나 응용소프트웨어(앱)으로 구현한다.
- 나무위키
Layer 3: 네트워크 계층
전송 단위 | 패킷 |
---|---|
대표 장치 | Router, L3 Switch |
프로토콜 | IP, ARP/NDP, RIP, RIP v2, IGRP, BGP Routing Protocol, NAT 등. |
네트워크 계층은 여러 개의 노드를 거칠 때마다 찾아주는 역할을 하는 계층으로 다양한 길이의 데이터를 네트워크들을 통해 전달하고, 그 과정에서 전송 계층이 요구하는 서비스 품질(QoS)을 제공하기 위한 기능적, 절차적 수단을 제공한다. 네트워크 계층은 라우팅, 패킷 포워딩, 세그멘테이션, 인터네트워킹 등을 수행한다. 라우터가 이 계층에서 동작하고 이 계층에서 동작하는 스위치도 있다.
데이터를 연결하는 다른 네트워크를 통해 전달함으로써 인터넷이 가능하게 만드는 계층이다. 논리적인 주소 구조 (IP), 네트워크 관리자가 직접 주소를 할당하는 구조를 가지며, 계층적이다. 3/4 계층은 TCP/IP 프로토콜 스택은 컴퓨터 커널 내부에 구현되며, 하위 2계층과 디바이스 드라이버(NIC)를 통해 컴퓨터 내부에서 데이터를 통신한다. 선결조건으로 OS에서 네트워크 장치가 사전에 인식되어 있어야 하며, TCP/IP 프로토콜 스택은 2계층에서 받은 데이터(프레임)을 소켓 인터페이스를 통해 7계층으로 올려보낸다.
Layer 4: 전송 계층
전송 단위 | 세그먼트 |
---|---|
대표 장치 | L4 Switch |
프로토콜 | TCP, UDP |
전송 계층은 양 끝단 (End-to-End)의 사용자들이 신뢰성 있는 데이터를 주고 받을 수 있도록 해 주어, 상위 계층들이 데이터 전달의 유효성이나 효율성을 생각하지 않도록 해준다. 시퀀스 넘버 기반의 오류 제어 방식을 사용하며, 전송 계층은 특정 연결의 유효성을 제어하고, 일부 프로토콜은 상태 개념이 있고, 연결 기반이다. (전송 계층이 패킷들의 전송이 유효한지 확인하고 전송 실패한 패킷들을 다시 전송한다.)
Layer 5: 세션 계층
대표 장치 | L4 Switch |
---|---|
프로토콜 | TCP, UDP |
세션 계층은 양 끝단의 응용 프로세스가 통신을 관리하기 위한 방법을 제공. 동시 송수신 방식, 반이중 방식, 전이중 방식의 통신과 함께, 체크 포인팅과 유휴, 종료, 다시 시작 과정 등을 수행한다. TCP/IP 세션을 만들고 없애는 책임을 진다. 통신하는 사용자들을 동기화하고 오류복구 명령들을 일괄적으로 다룬다.
Layer 6: 표현 계층
프로토콜 | ASCII, 유니코드, MIME, EBCDIC, UTF-8, EUC-KR, JPG, MP3, MPEG 등. |
---|
코드 간의 번역을 담당, 사용자 시스템에서 데이터의 형식상 차이를 다루는 부담을 응용 계층으로부터 덜어준다.
기능
- 수신자 장치에서 적합한 APP을 사용해 송신자 장치로부터 온 데이터를 해석하기 위한 응용 계층 데이터 부호화, 변환
- 수신자에서 압축을 풀 수 있는 방식으로 된 데이터 압축
- 전송을 위한 암호화와 복호화
MIME 인코딩이나 암호화 등의 동작이 이 계층에서 이루어진다. EBCDIC로 인코딩된 문서 파일을 ASCII로 인코딩된 파일로 바꿔 주는 것이 표현 계층의 몫임.
Layer 7: 응용 계층
전송 단위 | Message 혹은 Data |
---|---|
대표 장치 | L7 Switch, 방화벽 |
프로토콜 | FTP, HTTP, HTTPS, XML, Telnet, SSH, SMTP, POP3, IMAP 등 |
TCP/IP 4계층일 경우 하위 3계층 TCP/IP 프로토콜 스택을 통해 전달받은 패킷을 다시 파싱해 응용 S/W(네트워크 SW)를 통해 최종적으로 사용자까지 데이터를 전달한다.
응용 계층은 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행한다. 일반적인 응용 서비스는 관련된 응용 프로세스들 사이의 전환을 제공한다.