OSI 7계층 쉽게 이해하기

컴퓨터와 컴퓨터가 통신을 시도합니다. 우리 눈에 보이지 않는 복잡한 과정을 거쳐 통신이 성공하겠죠. 이때 발생하는 일련의 과정을 기능별로 나눈 것이 OSI 모델(Open Systems Interconnect Model)입니다. 과정을 7개로 나누었기 때문에 OSI 7 계층이라고 부릅니다.

 

즉, 7개의 기능이 모두 정상적으로 수행돼야 컴퓨터와 컴퓨터가 통신에 성공합니다. 이렇게 계층을 나눌 수 있는 이유는 각 기능이 독립적이기 때문입니다. 독립적이라는 건 만약 통신이 이루어지지 않으면 정확히 어떤 계층에 문제가 발생했는지 파악하고 해당 계층에만 조치를 취해 문제를 해결할 수 있다는 의미입니다. OSI 모델을 이해하면 컴퓨터 간 통신이 어떻게 이루어지는지 이해할 수 있고 문제가 발생했을 때 원인을 좁힐 수도 있습니다.

OSI 7계층

인터넷에 OSI 7 계층 정보를 찾다 보면 어떤 곳에선 계층 1부터 7 순으로, 어떤 곳에선 계층 7부터 1 순으로 설명하는 걸 보셨을 겁니다. 어느 한쪽이 틀린 건 아닙니다. 데이터는 계층의 역방향에서 정방향으로 이동해 목적지에 도착하기 때문입니다. 예를 들어 A 컴퓨터에서 보낸 데이터가 계층 7 → 계층 6→ ... → 계층 1 순으로 이동하면 B 컴퓨터에 계층 1 → 계층 2 → ... → 계층 7 순으로 전달됩니다.

계층 1 : 물리 계층(Physical Layer)

물리 계층은 두 노드 사이에 트래픽을 전달합니다. 전송 장치에서 수신 장치로 1과 0으로 구성된 비트 전송합니다. 대표적으로 이더넷 케이블이 있습니다. 기기와 기기를 전선을 통해 물리적으로 연결한 모습을 상상하면 됩니다. 여기에는 와이파이처럼 무선의 형태도 포함됩니다. 물리 계층이라는 용어를 만들 당시에는 무선 통신 개념이 없었기 때문에 Physical이라고 명명한 것이고 지금도 그렇게 부르고 있습니다.

 

이더넷 케이블이 보인다.
이더넷 케이블. 출처=unsplash

계층 2 : 데이터 링크 계층(Data link Layer)

데이터 링크 계층은 물리 계층으로부터 받은 데이터를 전달합니다. 다른 말로 하면 패킷을 홉(hop)에서 홉으로 전달한다고 표현합니다. 홉은 출발지와 목적지 사이에 있는 거쳐가는 경로입니다. 데이터 링크 계층은 중간 거점 간의 이동을 담당하는 것이죠. 목적지로 가려면 주소가 필요할 텐데요, 데이터 링크 계층은 MAC 주소를 사용합니다.

 

데이터 링크 계층에서 사용되는 하드웨어는 NIC(Network Interface Card)입니다. NIC는 만들어질 때 MAC 주소가 부여됩니다. MAC 주소를 통해 NIC에서 NIC로 패킷이 이동합니다. 스위치도 데이터 링크 계층에서 작동하는 장비입니다. 스위치는 같은 네트워크에 있는 컴퓨터 간 통신을 지원합니다.

 

NIC
NIC. 출처=위키백과

계층 3: 네트워크 계층(Network Layer)

네트워크 계층은 End-to-End로 패킷을 전달합니다. 굳이 끝에서 끝이라고 표현하는 건 중간 거점에서 중간 거점으로 이동하는 데이터 링크 계층과 차이가 있어서입니다. 데이터 링크 계층에선 MAC 주소를 이용했지만 네트워크 계층은 IP 주소를 이용합니다. IP는 인터넷에 연결된 모든 컴퓨터를 논리적으로 식별해주는 주소 체계입니다. 참고로 IP는 ‘논리적’ 주소고 MAC은 ‘물리적’ 주소입니다. IP 주소는 바꿀 수 있지만 하드웨어 자체에 내장되는 MAC 주소는 바꿀 수 없습니다.

 

쉽게 말해 컴퓨터 → 홉 → 홉 → 홉 → 컴퓨터 순으로 패킷이 이동한다면 홉 → 홉 이동은 데이터 링크 계층이고 컴퓨터 -> 컴퓨터 이동은 네트워크 계층입니다.

 

네트워크 계층 기능을 수행하는 장비로 라우터가 있습니다. 앞서 데이터 링크 계층에서 언급한 스위치는 같은 네트워크 간 통신을 지원합니다. 반면 라우터는 다른 네트워크에 있는 컴퓨터와의 통신도 지원합니다. 즉 public 네트워크인 인터넷을 통해 전 세계 어디든 다른 네트워크에 있는 컴퓨터와 통신할 수 있도록 합니다.

 

라우터 모습
라우터. 출처=unsplash

계층 4: 전송 계층(Transport Layer)

전송 계층은 네트워크 스트림을 구별합니다. 이게 무슨 말이냐 하면, 컴퓨터가 받은 데이터가 뭔지 구별한다는 말입니다. 이때 구별 방법이 두 가지인데, 하나는 TCP(Transmission Control Protocol)고 하나는 UDP(User Datagram Protocol)입니다. 주로 TCP가 더 많이 사용됩니다.

계층 5 : 세션 계층(Session Layer)

세션 계층은 컴퓨터와 컴퓨터가 서로 통신할 수 있도록 세션을 만듭니다. 세션이 생성되면 전송 계층으로부터 데이터를 받거나 전송 계층에 데이터를 전달할 수 있습니다.

계층 6 : 표현 계층(Presentation Layer)

표현 계층은 번역 처리를 합니다. 흔히 이야기하는 인코딩, 암호화, 복호화 등을 수행합니다. 때문에 구문 계층이라고도 부릅니다.

계층 7 : 응용 계층(Application layer)

응용 계층은 일반적인 응용 서비스를 수행합니다. 사용자가 직관적으로 인식할 수 있는 계층입니다. 크롬, 사파리 같은 브라우저나 MS 오피스 같은 애플리케이션들이 그 예입니다.

 

사실상 현재는 OSI 모델보다는 TCP/IP 모델이 사용됩니다. TCP/IP 모델에서는 세션, 표현, 응용 계층인 5~7 계층을 묶어서 응용 계층으로 구분합니다. 네트워크를 통해서 전송된 데이터가 최종 사용자에게 표시되기 전 단계를 처리하는 과정입니다.

반응형

댓글

Designed by JB FACTORY