네트워크 통신이 일어나는 과정을 7계층으로 나눈 것이다. 통신이 일어나는 과정을 단계적으로 이해할 수 있고, 특정 단계에 이상이 생기면 다른 계층의 장비 및 소프트웨어를 건드리지 않고도 해당 단계만 고치면 되기 때문에 네트워크 통신을 계층화하여 나누는 것이다.
리피터, 허브
전기적인 신호를 주고받아 데이터를 전송하는 계층이다. 이 계층에서는 데이터를 단순히 전달할 뿐 어떤 데이터가 오고가는지, 에러 등에 대해서는 관여하지 않는다. 비트 단위의 데이터를 주고 받으며 통신한다.
브릿지, 스위치
물리 계층에서 송수신 정보를 관리하여서 안전하게 전달되도록 도와주는 역할을 한다. Mac주소를 가지고 통신하며 프레임이라는 단위에 Mac 주소를 부여하여 에러검출, 재전송, 흐름제어를 한다.
라우터, IP
데이터를 목적지까지 안전하고 빠르게 전달하는 기능을 담당한다. 라우터를 통해 이동할 경로를 선택하여 IP주소를 지정하고 해당 경로에 따라 패킷을 전달해준다.
여러개의 노드를 거칠 때 마다 경로를 찾아주는 역할을 한다. 라우팅, 흐름제어, 세그먼테이션, 인터네트워킹 등을 수행한다. 데이터를 연결하는 다른 네트워크를 통해 전달하므로써 인터넷 통신이 가능하게 하는 계층이다.
TCP, UDP
통신을 활성화하기위 한 계층이다. 보통 TCP 프로토콜을 사용하며 포트를 열어서 응용 프로그램들이 통신할 수 있도록 한다. 패킷을 생성하고 전송하는 역할을 한다.
API, Socket
데이터가 통신하기 위한 논리적 연결을 담당한다. TCP/IP 세션을 만들고 없애는 책임을 지닌다.
JPEG, MPEG
데이터 표현에 대한 독립성을 제공하고 암호화하는 역할을 한다. 파일 인코딩, 명령어 포장, 압축, 암호화한다.
예를 들어 해당 데이터가 TEXT 인지, JPEG, GIF 등 인지를 구분하거나 EBCDIC로 인코딩된 파일을 ASCII 코드로 인코딩하는 등의 역할을 한다.
HTTP, DNS, FTP
최종 목적지로, 응용 프로세스로 관계하여서 일반적인 응용 서비스를 수행한다.
사용자 인터페이스, 전자 우편, 데이터베이스 관리 등의 서비스를 제공한다.
참고