관리 메뉴

Rootable의 개발일기

OSI 7 Layer 본문

Network

OSI 7 Layer

dev-rootable 2023. 7. 6. 16:01

OSI 및 TCP/IP 모델(출처: https://carnival.tistory.com/58)

 

📌 OSI 7 계층이란?

 

통신 접속에서 완료까지의 과정을 네트워크 통신을 구성하는 요소들에 따라 7단계로 정의한 국제 통신 표준 규약

 

이를 통해 계층별 기능과 통신 과정을 단계별로 파악할 수 있어, 특정한 곳에 이상이 생기면 그 단계만 수정할 수 있기 때문에 편리하다.

 

📌 OSI 모델 데이터 교환 방식

 

출처 : https://velog.io/@hidaehyunlee/%EB%8D%B0%EC%9D%B4%ED%84%B0%EA%B0%80-%EC%A0%84%EB%8B%AC%EB%90%98%EB%8A%94-%EC%9B%90%EB%A6%AC-OSI-7%EA%B3%84%EC%B8%B5-%EB%AA%A8%EB%8D%B8%EA%B3%BC-TCPIP-%EB%AA%A8%EB%8D%B8

 

🔎 캡슐화(Encapsulation)/역캡슐화(Decapsulation)

 

✔ 캡슐화

 

상위 계층의 데이터가 하위 계층으로 보내지면, 하위 계층 프로토콜은 자신의 기능 수행을 위해 필요한 부가 정보(Header)를 추가해서 새롭게 전송 메시지를 완성한다.

 

우리가 알아볼 수 있는 Data -> Bit

 

캡슐화

 

 역캡슐화

 

수신 측에서는 상위 계층으로 데이터를 보낼 때, 해당 계층의 헤더 정보를 확인한 후(추가된 헤더의 기능 수행) 이를 제거하고 상위 계층으로 데이터를 보낸다.

 

Bit -> 우리가 알아볼 수 있는 Data

 

📌 계층 별 특징

 

🔎 응용 계층(Application Layer)

 

사용자와 가장 가까운 계층으로 응용 서비스나 프로세스가 바로 이 계층에서 동작한다. 그리고 사용자 또는 애플리케이션이 네트워크에 접근할 수 있도록
인터페이스를 제공
한다.

 

User Interface를 제공하는 계층/응용 프로그램이 동작하는 계층

 

🔎 표현 계층(Presentation Layer)

 

데이터의 변환을 작업하는 계층으로 데이터의 암호화, 복호화, 압축, 파일 인코딩 등을 수행한다. 데이터 송수신 시, 아래와 같은 역할을 한다.

 

  • 데이터 수신 : 응용 계층으로부터 전달받은 데이터를 해석
  • 데이터 송신 : 수신측 응용 계층에서 데이터를 올바르게 이해하도록 데이터 표현 차이를 해소

 

응용 프로그램에 맞게 표현 차이를 해소하는 계층

 

🔎 세션 계층(Session Layer)

 

네트워크상 양쪽 연결을 관리하고 지속시켜 주는 계층으로 통신하는 사용자들을 동기화한다. 또한, 세션이 종료되거나 전송이 중단될 시 복구하는 기능을 수행한다. 그리고 전이중(Full Duplex), 반이중(Half Duplex), 단방향 통신(Simplex) 등 통신 방식을 결정한다.

 

네트워크상 양쪽 연결을 관리하고 지속시켜 주는 계층

 

전이중

 

반이중

 

단방향

 

💡 세션(Session)

방문자가 웹 브라우저를 통해 웹 서버에 접속한 시점부터 웹 브라우저를 종료함으로써 연결을 끝내기까지 사용자로부터 들어오는 일련의 요구를 하나의 상태로 보고 그 상태를 일정하게 유지하는 기술
즉, 방문자가 웹 서버에 접속해 있는 상태를 하나의 단위로 보고 세션이라 부른다.

Reference:
https://steady-coding.tistory.com/504
 

[네트워크] OSI 7 계층

cs-study에서 스터디를 진행하고 있습니다. 개념 OSI 7 계층은 네트워크에서 통신이 일어나는 과정을 7단계로 나눈 것을 말한다. 계층을 나눈 이유 통신이 일어나는 과정을 단계 별로 파악할 수 있

steady-coding.tistory.com

 

🔎 전송 계층(Transport Layer)

 

각 종단(END) 노드 간의 신뢰성 있는 데이터 전송을 담당한다. 이를 위해 연결/흐름/오류/혼잡 제어와 분할과 재조합 등을 제공한다. 또한, 각 종단 노드의
해당 프로세스 간 신뢰성 있는 데이터 전송을 가능하게 한다. 이를 위해 프로세스를 식별하기 위한 Port 주소를 사용한다.

 

종단(END) 노드 간 신뢰성 있는 데이터 전송을 담당하는 계층

 

🔎 네트워크 계층

 

네트워크 계층에서는 목적지가 되는 노드가 속해 있는 네트워크를 식별하고 그곳으로 가는 경로를 찾는 역할을 담당한다. 그리고 해당 계층에서 네트워크를 식별하기 위해
IP(Internet Protocol) 주소를 사용한다.

 

💡 노드(Node)

노드(Node) : 네트워크에 연결되어 있는 1개의 기기
예) PC, 라우터, 스위치, 서버 등

 

 종단(END) 노드 간의 라우팅을 담당하는 계층

 

라우팅 : 네트워크에서 최적의 경로를 선정하여 목적지를 찾아가는 프로세스

 

🔎 데이터 링크 계층(Data Link Layer)

 

인접한(직접 연결된) 노드 간의 신뢰성 있는 데이터 전송을 담당한다.

 

데이터의 안전한 전송을 보장하기 위해 흐름/오류/회선 제어 기능을 제공한다.

 

데이터 링크 계층과 물리 계층은 MAC주소를 통해 데이터를 전달하고, 그 위의 네트워크 계층은 논리적인 주소인 IP 주소를 사용한다. 따라서 이를 변환해 주는 ARP/RARP 프로토콜이 데이터 링크 계층과 네트워크 계층 사이에서 동작한다.

 

직접 연결된 이웃 노드 간의 신뢰성 있는 데이터 전송을 담당하는 계층

 

💡 ARP와 RARP

ARP(Address Resolution Protocol, 주소 결정 프로토콜)
: IP 주소 -> MAC 주소 대응
RARP(Reverse Address Resolution Protocol, 역순 주소 결정 프로토콜) : MAC -> IP 주소 대응

 

✔ ARP 프로토콜이 필요한 이유

 

PC의 IP주소만 알고 있다고 해서 데이터를 최종 목적지로 전송할 수 있는 것이 아니다. IP주소는 인터넷에 연결되어 있는 호스트나 라우터 장비의 인터페이스에
할당된 주소이므로 PC에 할당된 주소가 아니라 네트워크에 할당된 주소다. 따라서, IP를 통해 접근 가능한 것은 네트워크까지이다.

 

예를 들어, 통신사가 가정집에 설치하는 공유기는 공용 IP를 사용하여 인터넷과 직접 연결이 가능하지만 해당 공유기에 연결된 집 안의 모든 기기들은 사설 IP를 사용하므로
중개자 없이 인터넷 접속이 불가능하다.

 

따라서, ARP 프로토콜을 통해 기기마다 고유하게 부여된 MAC주소를 알아내서 정확한 위치를 찾아야 하는 것이다.

 

그렇다면 IP를 MAC 주소로 변환하는 과정 없이 IP주소나 MAC주소만 활용하여 통신을 하는 방법을 생각해 볼 수 있다. 하지만 이것은 2가지 이유 때문에 불가능하다.
하나는 IP주소는 변경이 가능하기 때문이다. 나머지 하나는 MAC주소는 MAC 주소 테이블이란 곳에 등록된 곳으로만 통신이 가능하기 때문이다.
즉, MAC주소로만 통신을 하려면 통신할 상대방 주소를 모두 등록해야 한다. 이러한 문제들로 인해 여러 대의 노드를 묶어 IP주소를 할당하고, 그 IP주소로 식별된
네트워크에 접근하여 고유한 MAC주소를 통해 목적지 노드를 식별하는 방식으로 데이터를 전달하는 것이다.

 

Reference:

https://coding-factory.tistory.com/720

 

[Network] ARP(주소 결정 프로토콜)에 대하여

ARP(주소 결정 프로토콜)이란? 주소 결정 프로토콜(Address Resolution Protocol, ARP)은 네트워크 상에서 IP 주소를 MAC 주소로 대응시키기 위해 사용됩니다. 처음 통신을 시작할 때는 상대방의 Mac Address를

coding-factory.tistory.com

 

💡 공용 IP 주소와 사설 IP 주소

공용 IP 주소: 인터넷에 직접 접속할 수 있는 주소
사설 IP 주소: 인터넷에 직접 접속하지 못하고 중개자(공유기 또는 라우터)를 통해 접속할 수 있는 주소

Reference:
https://m.post.naver.com/viewer/postView.naver?volumeNo=35563762&memberNo=512601
 

IP 주소는 어떻게 결정될까? IP 주소의 형식 알아보기

[BY 보누스 출판사] '192.168.59.6'처럼 점과 함께 나열된 숫자를 본 적이 있나요? 아마 인터넷을 많이 ...

m.post.naver.com

 

🔎 물리 계층(Physical Layer)

 

데이터를 전기적인 아날로그 신호로 변환해서 전기적(기계적) 신호로 데이터를 주고 받는 계층으로 통신 케이블로 데이터가 전송된다. 데이터를 전달만 할 뿐
데이터의 종류에 대한 인지가 없고, 오류 제어 기능도 없다.

 

데이터를 전기적 신호로 변환하여 전달하는 계층

 

📌 TCP/IP 4계층과 비교

 

현재의 인터넷에서 컴퓨터들이 서로 정보를 주고받는데 쓰이는 통신 규약(프로토콜)의 모음이다.

 

TCP/IP 프로토콜은 OSI 모델보다 먼저 개발되었으며, 인터넷 개발 이후 계속 표준화되어 신뢰성이 우수하다. 반면, OSI 모델은 표준이 되기는 하지만 실제적으로 구현되는 예가 거의 없어 신뢰성이 저하되어 있다.

 

OSI 모델은 장비 개발과 통신 자체를 어떻게 표준으로 잡을지 등 개념적으로 사용되는 반면 TCP/IP 모델실질적인 통신 자체에 사용된다.

 

References:

https://carnival.tistory.com/58

 

OSI 7계층과 TCP/IP 4계층

OSI 7계층 OSI 7계층이란, 통신 접속에서 완료까지의 과정을 네트워크 통신을 구성하는 요소들에 따라 7단계로 정의한 국제 통신 표준 규약이다. 이를 통해 계층별 기능과 통신 과정을 단계별로 파

carnival.tistory.com

 

 

https://steady-coding.tistory.com/504

 

[네트워크] OSI 7 계층

cs-study에서 스터디를 진행하고 있습니다. 개념 OSI 7 계층은 네트워크에서 통신이 일어나는 과정을 7단계로 나눈 것을 말한다. 계층을 나눈 이유 통신이 일어나는 과정을 단계 별로 파악할 수 있

steady-coding.tistory.com

 

https://abangpa1ace.tistory.com/147

 

[Web] OSI 7계층 vs TCP/IP 4계층

오늘 면접을 본 회사에서, 가장 기본적인 개념을 물어보았다. 웹페이지의 도메인을 엔터했을 때, 이것이 브라우저까지 보여지는 일련의 과정. 나는 브라우저 렌더링 절차에 관해서만 설명하였

abangpa1ace.tistory.com

 

https://goitgo.tistory.com/25

 

OSI 7 Layer 과 TCP/IP 4 Layer(TCP/IP Protocol suite) 비교

OSI 7 Layer vs TCP/IP Protocol Suite 1. OSI 7 Layer 개요 ➀ 네트워크 통신을 체계적으로 다루고 있는 ISO 표준은 개방시스템 상호연결 (OSI) 모델 이다. OSI 모델은 1984년에 정의 되었다. ➁ 개방시스템(Open Syste

goitgo.tistory.com

 

'Network' 카테고리의 다른 글

API vs HTTP API vs REST API  (0) 2023.07.10
HTTP 메서드  (0) 2023.07.10
HTTP  (0) 2023.07.07
TCP(Transmission Control Protocol)  (0) 2023.07.07
IP 프로토콜  (0) 2023.07.06