[STUDY] OSI 7계층
OSI 7계층이란?
OSI 7계층은 네트워크에서 통신이 일어나는 과정을 7단계로 나눈 것을 말합니다
네트워크 전송 시 데이터 표준을 정리한 것이 OSI 7계층이라면, 이 이론을 실제 사용하는 인터넷 표준이 TCP/IP 계층입니다
OSI 7 계층을 나누는 이유?
- 통신이 일어나는 과정을 단계별로 파악할 수 있다
- 흐름을 한 눈에 알아보기 쉽다
- 특정 계층에 문제가 생기면 다른 계층은 수정할 필요 없이 해당 계층만 수리하면 된다
1계층 - 물리계층(Physical Layer)
- 전기적 신호로 데이터를 전송하는 계층
- 통신 단위는 비트이며 1과 0으로 나타난다
- 이 계층에서는 단지 데이터를 전달하기만 할 뿐 데이터를 검증하지 않습니다
- 대표적인 장비로는 통신 케이블, 리피터, 허브 등이 있습니다
리피터
케이블이 길어질수록 신호가 약해지기 때문에 신호를 멀리 보내기 위한 증폭 장치입니다.
지금은 다른 네트워크 장비에 기본적으로 리피터 기능이 탑재되어 있어 사용하지 않습니다
허브
리피터 역할을 하며, 기존 리피터와 다르게 여러 장비를 연결할 수 있습니다
2계층 - 데이터 링크계층(DataLink Layer)
- 포인트 투 포인트(Point to Point) 간 신뢰성 있는 전송을 보장하기 위한 계층
👉 Point to Point :
교환기와 같은 중개 장치를 통하지 않고 한 지점에서 다른 지점으로 직접 가는 채널을 뜻함 - 회선제어 : 신호 간의 충돌이 발생하지 않도록 제어
흐름 제어 : 송수신자 간 데이터를 처리하는 속도 차이를 해결하기 위한 제어
오류 제어 : 오류나 손실이 발생하면 에러를 탐지하고 재전송 - 맥 주소(MAC address)를 가지고 통신합니다
👉 맥 주소 :
인터넷을 할 수 있는 이더넷 기반 기기에는 모두 다 하나씩 할당되어 있는 고유한 ID이며 거의 재활용하지 않습니다 - 전송 단위는 프레임입니다
- 대표적인 장비로는 브리지, 스위치 등이 있습니다
- 데이터 링크 계층의 가장 잘 알려진 예는 이더넷입니다
네트워크란?
여러 컴퓨터나 기기들이 상호 연결되어 정보를 공유할 수 있도록 하는 시스템입니다
LAN(Local Area Network)이란?
제한된 지리적 범위(건물이나 캠퍼스 내부)에 있는 컴퓨터 및 다른 장치들이 통신할수 있는 네트워크입니다
(<-> WAN, Wide Area Network)
이더넷(Ethernet)
유선 연결을 통해 컴퓨터 및 다른 네트워크 장치들 간에 데이터를 교환하는 데 사용됩니다. LAN은 이더넷 같은 기술을 사용하여 구축될 수 있습니다
스위치
네트워크 세그먼트들을 서로 연결해주는 장치. 여기서 세그먼트란 하나의 큰 네트워크를 구성하는 작은 네트워크를 말합니다. CRC 검사(순환중복검사) 등을 수행합니다
L2, L3, L4 스위치가 있고 해당 번호의 계층에 대응하는 일을 합니다
예를 들면 L4 스위치는 4계층 프로토콜인 TCP/UDP를 이용합니다
3계층 - 네트워크 계층(Network Layer)
- 라우팅으로 경로를 선택하여 빠르게 패킷을 전달합니다
- IP 주소를 가집니다
👉 인터넷 디바이스마다 할당되는 고유한 주소입니다 - 전송 단위는 패킷입니다
- 대표적인 장비는 라우터입니다
- 인터넷이 가능하게 만드는 계층입니다
라우터
네트워크 간 데이터 전송을 위해 최적 경로(Route)를 설정하며, 이 경로를 따라 데이터를 전송하는 장치
4계층 - 전송 계층(Transport Layer)
- End to end의 사용자들 간의 신뢰성 있는 데이터를 주고 받게 해주는 역할을 합니다
- 전송 단위는 세그먼트입니다
- 오류검출 및 복구와 흐름제어, 중복검사 등을 수행합니다
- 데이터 전송을 위해 포트(Port)번호가 사용됩니다
- 대표적인 프로토콜로는 TCP와 UDP가 있습니다
TCP 프로토콜(Transmission Control Protocol)
1. 연결형 프로토콜로 신뢰성을 보장한다
2. 속도가 느리다
3. 파일 전송 등에 사용된다
UDP 프로토콜(User Datagram Protocol)
1. 비연결형 프로토콜로 신뢰성이 낮다
2. TCP보다 속도가 빠르다
3. 실시간 스트리밍 서비스 등에 사용된다
5계층 - 세션 계층(Session Layer)
- 응용 프로세스가 통신을 관리하기 위한 방법을 정의한다
- TCP/IP 세션을 만들고 없애는 역할을 한다
- 세션 설정, 유지, 종료, 전송 중단시 복구 등의 기능이 있다
세션이란?
일정 시간 동안 같은 사용자로부터 들어오는 일련의 요구를 하나의 상태로 보고 그 상태를 일정하게 유지하는 기술
6계층 - 표현 계층(Presentation Layer)
- 코드 간의 번역을 담당하여 사용자 시스템에서 데이터의 형식상 차이를 다루는 부담을 응용 계층으로부터 덜어 준다
- MIME 인코딩이나 암호화 등의 동작이 이 계층에서 이루어진다
👉 MIME 인코딩:
'음악파일', '영상파일' , '워드파일' 등의 바이너리 파일을 텍스트 파일인 ASCII 표준으로 변환하는 것
👉 암호화
: 일반 평문을 의미 없는 다른 문자로 만들어 중간에 유출되더라도 원문을 이해할 수 없게 만드는 것 - 해당 데이터가 TEXT인지, 그림인지, GIF인지의 구분 등이 표현 계층의 몫이다
7계층 - 응용 계층(Application Layer)
- 사용자와 가장 가까운 계층입니다
- 사용자가 사용하는 응용 서비스나 프로세스가 동작합니다
- HTTP, FTP등의 프로토콜이 사용됩니다