OSI 7계층은 프로토콜의 한 종류로, 국제표준화기구(International Standard Organization, ISO)에서 정보통신업체 간 장비호환성을 위해 1984년에 발표한 '표준구조'입니다. 통신이 일어나는 단계를 7단계로 구분하고 있습니다. 하지만 기능에 따라 개념적으로 나누었을 뿐, 실제로 계층별로 차곡차곡 쌓여있는 것은 아닙니다.
OSI 7계층은 장비간 호환성을 통한 비용 절감 효과와 통신 과정을 잘 정립하여 학습에 이용하기 위한 표준과 학습도구 두 가지 목적으로 만들어졌습니다. 즉, 장비개발자들이 어떻게 표준을 잡을지 결정하기 위해 사용되는데, 구조가 나뉘어져 있어 공부하기 좋기 때문입니다.
OSI 7계층은 미국의 컴퓨터 과학자 찰스 바크만(Charles William "Charlie" Bachman)이 처음으로 생각해냈습니다. '현대적 데이터베이스의 아버지'라고도 불리는 그는 자료의 조작과 저장, 관리를 프로그램과는 별개로 분리하는 개념을 처음으로 고안해냈습니다. 이 때문에 1973년에는 컴퓨터 과학의 노벨상이라고도 불리는 튜링상을 수상하기도 했습니다. 또한 최초의 사용화된 DBMS(DataBase Management System; 데이터베이스 관리 시스템) 중 하나인 IDS(Integrated Data Store)를 개발했습니다.
OSI 7계층은 물리 계층, 데이터 링크 계층, 네트워크 계층, 전송 계층, 세션 계층, 표현 계층, 응용 계층의 7단계로 구성되어 있으며, 크게 상위 계층과 하위 계층으로 구분할 수 있습니다. 하위 계층은 하드웨어 형태로 1계층인 물리 계층부터 4계층인 전송 계층까지이며 상위 계층은 소프트웨어 형태로 5계층인 세션 계층부터 7계층인 응용 계층까지 입니다. 상위계층에 있다고 좋은 것은 아니며 단지 기계에 가까울 수록 하위계층에 위치하는 것입니다.
따라서 계층이 올라갈수록 우리에게는 친숙한 기술이라고 할 수 있습니다. 7계층인 응용 계층(Application Layer)는 사용자(사람, 소프트웨어)가 네트워크에 접근할 수 있게 합니다. 사용자 인터페이스 제공, 전자우편 & 원격 파일 접근과 전송, 공유 데이터베이스 관리 및 다양한 분산정보 서비스를 제공합니다. 6계층인 표현 계층(Presentation Layer)은 두 시스템 사이에서 교환되는 정보의 구문과 의미에 관련된 변환, 압축 및 암호화를 담당합니다. 즉, 상대방이 읽을 수 있도록 데이터를 변환하는 것인데 응용 프로그램간에 교환되는 데이터의 구문에 대한 표현과 형식의 차이를 해결합니다. 5계층인 세션 계층(Session Layer)는 네트워크의 '대화 조정자'로, 통신하는 시스템들 사이의 상호작용을 설정·유짛고 동기화합니다. 포트별로 여러 종류이 응용프로그램에 연결합니다.
4계층인 전송 계층(Transport Layer)는 응답, 순서, 흐름제어 등을 이용하여 데이터가 에러 없이 순서에 맞게, 중복되거나 없어지는 일 없이 전송되도록 합니다. 전체 메시지의 프로세스-대-프로세스의 역할을 합니다. 3계층인 네트워크 계층(Network Layer)은 패킷을 발신자로부터 여러 네트워크(링크)를 통해 목적지까지 안전하게 전달합니다. 네트워크 라우팅 및 네트워크 세그먼트 간의 통신 기술입니다. 2계층인 데이터 링크 계층(Data Link Layer)은 가공되지 않은 내용 전송을 담당하는 물리층의 신뢰성을 높여주며 링크의 활성화, 유지, 비활성화 작용을 할 수 있는 수단을 제공합니다. 송신과 수신측이 아닌 노드-대-노드(node-to-node) 간 안전한 전송이 목적입니다. 마지막으로 1계층인 물리 계층(Physical Layer)는 물리적 매체를 통해 비트 흐름을 전송하기 위해 필요한 기능들을 조정하고, 인터페이스의 기계적·전기적 규격, 전송매체를 다룹니다. 실질적으로 통신을 하기 위한 통신매체라고 할수 있습니다.
다시 정리하자면, L7~L5는 서로 상관없는 소프트웨어 시스템 사이의 상호 연동을 가능하게 하는 사용자 지원 계층으로 L7의 대표적 프로토콜은 HTTP, SMTP, FTP, Telnet, L6는 ASCII, MPEG, JPEG, MIDI, L5는 NetBIOS, SAP, SDP, NWLink입니다. L4는 종단대 종단간 신뢰할 수 있는 데이터 전송을 보장하는 전송층으로 대표 디바이스는 게이트웨이와 L4 스위치가 있으며 대표 프로토콜은 TCP, UDP가 있습니다. 그리고 L3~L1은 한 장치에서 다른 장치로 데이터를 이동할 때 전기적인 규격, 물리적인 연결, 물리 주소, 전송 시간과 신뢰도 등 물리적인 면을 처리하는 네트워크 지원계층이라고 할 수 있습니다. 라우터와 L3 스위치가 L3의 대표적 디바이스며, IP, ICMP, ARP, RARP는 대표적 프로토콜입니다. L2에는 L2스위치, 브릿지 등의 디바이스가 있으며 Ethernet, Token Ring, FDDI등의 프로토콜이 있습니다. L1에는 프로토콜이 없으며, 랜선, 허브 리피터들의 디바이스만 존재합니다.
그렇다면 OSI 7계층에서 통신은 어떻게 이루어질까요? Sender와 Receiver 간에 각각 OSI 7계층이 존재하는데, Sender측에서 송신된 데이터는 L7에서 L1로 흐르며 이 데이터는 Receiver측의 L1에서 L7의 흐름으로 수신됩니다. 이때, 각 계층은 바로 아래와 위의 계층에 대해 각각 클라이언트와 서버 역할을 합니다.
이러한 계층 모델을 본 적이 있으실텐데요, 바로 TCP/IP계층입니다. TCP/IP계층은 OSI 7계층 모델을 기반으로 상업적이고 실무적으로 상요할 수 있도록 단순화하는 과정에서 채택된 것으로, 현재 실질적으로 이용되고 있는 것은 TCP/IP계층입니다.
두 계층을 비교하자면, OSI 7계층의 L7~L5는 TCP/IP 4계층의 L4로 응용계층+표현계층+세션계층의 효율성을 고려하였으며, OSI 7계층의 L4는 TCP/IP 4계층의 L3입니다. 신뢰도, 흐름제어, 에러 제어를 위한 재전송을 책임지며 논리적 연결을 통한 TCP의 연결형 서비스를 제공합니다. OSI 7계층의 L3는 TCP/IP 4계층은 L2로, IP를 의미합니다. 경로설정, 패킷 스위칭 등의 네트워크 계층이며, OSI 7계층의 L2~L1 기능은 TCP/IP 4계층의 L1에서 담당합니다.