📌 OSI 7 Layer
- OSI 7 Layer 는 1984년 국제 표준기구 ISO가 발표한 네트워크 모델이다.
📌 OSI 7 Layer의 구성
- 통신이 일어나는 과정을 7단계로 크게 구분하여 한 눈에 들어올 수 있도록 정의
계층 | 이름 |
7 | 응용 계층 (Application Layer) |
6 | 표현 계층 (Presentation Layer) |
5 | 세션 계층 (Session Layer) |
4 | 전송 계층 (Transport Layer) |
3 | 네트워크 계층 (Network Layer) |
2 | 데이터링크 계층 (DataLink Layer) |
1 | 물리 계층 (Physical Layer) |
📌 등장 배경
- 1980년 대 컴퓨터 통신망이 확산되면서 다양한 통신망 혼재 상황에서의 기능별 분류가 필요해졌다.
- 다른 제조업자의 시스템이라도 네트워크 유형에 관계없이 상호 통신이 가능한 지침이 필요했다.
- 계층을 나눈 이유는 통신이 일어나는 과정을 단계별로 파악할 수 있기 때문에, 7단계 중 특정한 곳에 이상이 생기면 다른 단계의 장비 및 소프트웨어를 건드리지 않고도 이상이 생긴 단계만 해결할 수 있다.
📌 작동 원리
- 전송 시 7계층에서 1계층으로 각각의 층마다 인식할 수 있어야 하는 헤더를 붙인다. (캡슐화)
- 수신 시 1계층에서 7계층으로 헤더를 떼어낸다. (디캡슐화)
- 출발지에서 데이터가 전송될 때 헤더가 추가되는데 2계층에서만 오류제어를 위해 꼬리 부분에 추가된다.
- 물리계층에서 1,0의 신호가 되어 전송매체 (동축케이블, 광섬유 등)을 통해 전송된다.
📌 제 1계층 : 물리 계층 (Physical Layer)
- OSI 모델의 맨 밑에 있는 계층으로서, 네트워크 데이터가 전송되는 물리적인 매체이다.
- 데이터는 0과 1의 비트열로, ON/OFF의 전기적 신호 상태로 이루어져있다.
- 두 대의 컴퓨터가 통신하기 위해서는 전자기파를 주고 받을 수 있으면 된다.
- 전선은 모든 주파수를 다 통과시키지는 못한다. 특정 주파수만 통과시킬 수 있다.
(전선 뿐만 아니라 모든 매질이 마찬가지)
- 때문에 디지털에서(0101 0101....) 아날로그 신호로 바꿔서 전선으로 내보내야한다.
-> 0과 1의 나열을 아날로그 신호로 바꾸어 전선으로 흘려보낸다. (encoding)
-> 아날로그 신호가 들어오면 0과 1의 나열로 해석한다. (decoding)
물리적으로 연결된 두 대의 컴퓨터가 0과 1의 나열을 주고 받을 수 있게 해주는 모듈(module)이다.
해당 계층은 단지 데이터 전달의 역할을 하기 때문에 알고리즘, 오류제어 기능이 없다.
1계층 장비로는 케이블, 리피터 , 허브가 있다.
📌 제 2계층 : 데이터링크 계층 (DataLink Layer)
- 1계층 기술만으로는 여러 대의 컴퓨터가 통신하는 것이 어렵다.
- 전선 하나를 가지고 여러 대의 컴퓨터와 통신할 방법을 모색해야한다.
- 데이터링크 계층(DataLink Layer, 2계층)은 물리적인 네트워크를 통해 데이터를 전송하는 수단을 제공한다.
- 같은 네트워크에 있는 여러 대의 컴퓨터들이 데이터를 주고받기 위해 필요한 모듈이다.
- 물리적 연결을 통하여 인접한 두 장치 간의 신뢰성 있는 정보 전송을 담당한다.(Point-To-Point 전송)
- 안전한 정보의 전달이라는 것은 오류나 재전송하는 기능이 존재.
- MAC 주소를 통해서 통신한다.
- Framing을 통해 데이터를 전송하는데 , 데이터 0000 1111 이런 식으로 구분자 역할을 할 수 있도록 감싸주는 작업을 한다.
- 데이터 링크 계층에서 데이터 단위는 프레임(frame)이다.
2계층 장비로는 브리지, 스위치가 있다.
📌 제 3계층 : 네트워크 계층 (Network Layer)
- 데이터를 목적지까지 가장 안전하고 빠르게 전달하는 기능(라우팅)을 제공한다.
- 이 계층은 경로를 선택하고 주소를 정하고, 경로에 따라 패킷을 전달해주는 것이 역할이다.
- 데이터 앞에 목적지 주소를 붙여준다.
- 각 컴퓨터들이 갖는 고유한 주소를 IP라고 하는데, 데이터 앞에 주소를 감싼 것을 패킷이라고 한다.
- 다양한 길이의 데이터들을 네트워크를 통해 전달하고 그 과정에서 전송 계층이 요구하는 서비스 품질을 제공하기 위한 기능적, 절차적 수단을 제공한다.
- 네트워크 계층은 라우팅, 흐름 제어, 세그멘테이션, 오류제어, 인터네트워킹 등을 수행한다.
3계층 장비로는 라우터, L3스위치가 있다.
📌 제 4계층 : 전송 계층 (Transport LayerSession Layer)
- 하위 계층에 신뢰할 수 있는 데이터 전송 서비를 제공하는데 목적이 있다.
- 신뢰성 있는 데이터를 서로 주고 받을 수 있게 해주어 상위 계층들의 역할 부담을 덜어준다. (유효성, 효율성 등)
- 오류검출 및 복구, 흐름제어와 중복검사 등을 수행한다.
- 데이터 전송을 위해서 Port 번호를 사용한다. (대표적으로 TCP와 UDP)
- 데이터 단위는 세그먼트(Segment)를 사용한다.
📌 제 5계층 : 세션 계층 (Session Layer)
- 데이터가 통신을 하기 위한 논리적인 연결.
- 하지만 4계층에서도 연결을 맺고 종료할 수 있기 때문에 4계층과 무관하게 응용 프로그램 관점에서 본다.
(어느 계층에서 통신이 끊어졌는지 판단하기 어려움)
- 세션 설정, 유지, 종료, 전송 중단 시 복구 등의 기능을 제공한다.
- 연결 세션에서 데이터 교환과 에러 발생 시의 복구를 관리한다.
📌 제 6계층 : 표현 계층 (Presentation Layer)
- 데이터를 어떻게 표현할 지 정하는 계층
- 코드 간의 번역을 담당한다.
- 사용자 시스템에서 데이터의 형식상 차이를 다루는 부담을 응용 계층으로부터 덜어준다.
- 인코딩, 암호화 등 동작이 이루어진다.
- ex) 해당 데이터가 text인지, 그림인지, GIF인지 구분하는 것 등의 역할을 맡고있다.
📌 제 7계층 : 응용 계층 (Application Layer)
- 사용자가 네트워크 자원에 접근하는 방법을 제공한다.
- 최종적으로 사용자가 볼 수 있는 유일한 계층으로 모튼 네트워크 활동의 기반이 되는 인터페이스를 제공한다.
- 응용 프로세스 간의 정보 교환을 담당한다.
ex) 텔넷, 구글의 크롬 등
📌 OSI 모델 vs TCP/IP 모델
- 사실 현대의 인터넷은 OSI 모델이 아니라 TCP/IP 모델을 따르고 있다.
- 시장 점유 싸움에서 OSI 모델이 졌기 때문에.
reference!
사진
https://velog.io/@amuse/OSI-7-Layers
https://gyoogle.dev/blog/computer-science/network/OSI%207%EA%B3%84%EC%B8%B5.html
내용
http://wiki.hash.kr/index.php/OSI_7_%EA%B3%84%EC%B8%B5
https://shlee0882.tistory.com/110
https://www.youtube.com/watch?v=1pfTxp25MA8