TIL

OSI 7 계층

Open Systems Interconnection

개요

컴퓨터 통신망이 확산되면서 다양한 통신망 혼재 상황에서의 기능별 분류가 필요했다.

OSI 7 계층은 네트워크 프로토콜이 통신하는 구조를 7개의 계층으로 분리하여 각 계층 간 상호 작동하는 방식을 정해 놓은 것이다. OSI 계층 모델을 통해 네트워크에서 트래픽의 흐름을 꿰뚫어 볼 수 있으며, 각 계층은 독립 되어 있다. 7단계 중 이상이 생기면 다른 단계의 장비 및 소프트웨어를 건들지 않고 문제가 되는 계층만 고칠 수 있다.

계층 모델 덕분에 분산된 이기종 시스템 간 네트워크 상호 호환을 위한 표준 아키텍처를 정의할 수 있었다. 또한 통신에 관련된 목적을 달성하기 위해 계층 별로 분할 및 분업이 가능해 졌으며 기존 TCP 4계층 모델이 계층 별로 역할이 불명확하여 발생했던 많은 문제들에 대한 해답을 제시한다.

Physical Layer

여러 컴퓨터들이 통신하려면 전선으로 연결 되어 있어야 한다. 여러 컴퓨터들이 서로에게 전선을 꼽는 것은 불가능하다. 때문에 컴퓨터들은 라우터들에게 연결 되어 있고, 전 세계 컴퓨터들이 계층 구조로 연결 되어 있는 것을 인터넷이라고 한다.

Network Layer

Transport Layer

OSI 모델 vs TCP/IP 모델

현대의 인터넷은 TCP/IP 모델을 따른다. 이유는 OSI 모델이 시장 점유 싸움에서 졌기 때문이다. TCP/IP는 4계층 모델이며 Application, Transport, Internet, Network 계층으로 이루어져 있다. 업데이트 이후에는 Application, Transport, Network, Data Link, Physical 계층으로 나누어져 있다.

TCP/IP 소켓 프로그래밍

운영 체제의 Transport 계층에서 제공하는 API를 활용해서 통신 가능한 프로그램을 만드는 것을 TCP/IP 소켓 프로그래밍, 또는 네트워크 프로그래밍이라고 한다. 소켓 프로그래밍 만으로도 클라이언트, 서버 프로그램을 만들 수 있다. 누구든 자신만의 Application 계층 프로토콜을 이를 통해 만들 수 있다.

Session Layer

Presentation Layer

Application Layer


https://youtu.be/1pfTxp25MA8

[http://wiki.hash.kr/index.php/OSI_7계층](http://wiki.hash.kr/index.php/OSI_7%EA%B3%84%EC%B8%B5)

[https://itwiki.kr/w/OSI_7계층#Layer_1:_물리_계층(Physical_layer)](https://itwiki.kr/w/OSI_7%EA%B3%84%EC%B8%B5#Layer_1:%EB%AC%BC%EB%A6%AC%EA%B3%84%EC%B8%B5(Physical_layer))

https://www.imperva.com/learn/application-security/osi-model/