네트워크는 다수의 시스템을 전송 매체로 연결해 구성한 시스템들의 집합체이다.
소규모의 네트워크들은 전송 매체로 연결되어 더 큰 네트워크로 확장할 수 있다.
컴퓨터 네트워크는 외형상 호스트 시스템과 전송 매체로 구분하며, 수행하는 내부 기능을 기초로 하여 다양한 구조로
세분화할 수 있다. (호스트가 제공하는 복잡한 네트워크 기능을 연관될 그룹으로 묶어 계층 모델로 설명할 수 있다.)
계층 모델
특징이 다른 여러 호스트를 서로 연결해서 통신하려면 연결 방식을 표준화 해야 한다. 국제표준화 단체인 ISO(International Standard Organization)에서는 OSI(Open System Interconnection) 7계층 모델을 제안하여,
네트워크에 연결된 시스템이 갖춰야 할 기능을 상세히 정의했다.
OSI 7계층 모델 소개
네트워크에 연결된 호스트들은 7개 계층으로 모듈화된 통신 기능을 갖추어야 한다.
일반 사용자는 OSI 7계층 맨 위에 있는 응용계층을 통해 데이터의 송수신을 요청하며 이 요청은 하위 계층에 순차적으로 전달되어 맨 아래에 있는 물리계층을 통해 상대 호스트에 전송된다.
요청이 각 계층으로 하달되는 과정에서 계층별로 자신이 담당하는 기능을 수행하여 데이터를 안전하게 전달한다.
데이터를 수신하는 호스트에서는 송신 호스트와는 반대 방향으로 처리가 이루어진다.
수신 호스트에서 처리가 완료된 결과를 회신할 때는 반대 과정을 순차적으로 밟아서 송신 호스트로 되돌아간다.
데이터를 송수신하는 최종 주체는 송수신 호스트 양쪽에 위치한 응용계층이며, 하부의 계층들은 응용 계층을 지원하기 위하여 데이터 전송에 팔요한 기능을 나누어 처리한다.
OSI 7계층 모델의 계층별 기능
물리 계층
- 네트워크에서 호스트들이 데이터를 전송하려면 반드시 전송 매체로 연결되어 있어야 한다.
- 물리계층은 호스트를 전송 매체와 연결하기 위하여 인터페이스 규칙과 전송 매체의 특성을 다룬다.
데이터 링크 계층
- 물리 계층으로 데이터를 전송하는 과정에서 잡음(Noise)등과 같은 여러 외부 요인에 의하여
물리적인 오류가 발생할 수 있다. - 데이터링크계층(Data Link Layer)은 물리적 전송 오류를 감지하는 기능을 제공해
송수신 호스트가 오류를 인지할 수 있도록 해준다. - 대표적인 물리적 오류로는 데이터가 도착하지 못하는 데이터 분실과 내용이 깨져서 도착하는 데이터 변형이 있다.
- 일반적으로 컴퓨터 네트워크에서 오류제어(Error Control)는 송신자가 원래의 데이터를
재전송 하는 방식으로 처리한다.
네트워크 계층
- 송신 호스트가 전송한 데이터가 수신 호스트까지 안전하게 도착하려면 여러 개의 중개 시스템을 거쳐야 한다.
이 과정에서 데이터가 올바른 경로를 선택할 수 있도록 지원하는 계층이 네트워크 계층이다. - 중개 시스템의 기능은 일반적으로 라우터가 수행한다.
- 네트워크 부하가 증가하면 특정 지역에 혼잡(Congestion)이 발생할 수 있는데, 혼잡제어(Congestion Control)도
데이터의 전송 경로와 관계되므로 네트워크 계층이 담당한다.
전송 계층
- 컴퓨터 네트워크에서 데이터를 교환하는 최종 주체는 호스트 시스템이 아니고,
호스트 내부에서 실행되는 네트워크 프로세스이다. - 전송 계층(Transport Layer)은 송신 프로세스와 수신 프로세스 간의 연결 기능을 제공하기 때문에
프로세스 사이의 안전한 데이터 전송을 지원한다. - 전송 계층은 데이터가 전송되는 최종적인 경로상의 양 끝단 사이의 연결이 완성되는 곳 이다.
- 일반적으로 계층4까지의 기능은 운영체제에서 시스템 콜 형태로 상위 계층에 제공하며
계층 5~7의 기능은 사용자 프로그램으로 작성된다.
세션 계층
- 세션 계층은 전송 계층에서 제공하는 연결의 개념과 유사한 세션 연결을 지원하지만,
이보다는 더 상위의 논리적 연결이다. - 응용 환경에서 사용자 간의 대화 개념의 연결로 사용되기 때문에 전송 계층의 연결과 구분된다.
표현 계층
- 표현 계층(Presentation Layer)은 전송되는 데이터의 의미를 잃지 않도록 올바르게 표현하는 방법을 다룬다.
- 정보를 교환하는 시스템이 표준화된 방법으로 데이터를 인식할 수 있게 해준다.
- 데이터의 표현이라는 본래의 기능에 더해, 현재의 표현 계층은 압축과 암호화라는 기능도 중요하게 다루고 있다.
- 동영상과 같은 대용량의 멀티미디어 데이터를 압축하면 전송 데이터의 양을 줄일 수 있다.
- 암호화는 외부의 침입자로부터 데이터를 안전하게 보호하는 기능인데, 인터넷을 통한 개인 정보의 유통과 상거래가 증가하면서 중요성이 커지고 있다.
응용 계층
- 응용계층(Application Layer)은 사용자를 위한 다양한 네트워크 응용환경을 지원한다.
그 기능은 특정 분야에 한정되지 않고 매우 광범위하다.
프로토콜과 인터페이스
- 네트워크 사용자가 통신한다는 것은 데이터를 서로 주고 받는다는 것을 의미한다.
- 최종 사용자가 데이터를 보내고 받으려면 양쪽 호스트에서 실행되는 OSI 7계층의 모듈이 유기적으로 연동되어야 한다. 즉, 호스트끼리 통신하는 과정에서는 각 계층의 모듈이 상대 호스트의 동일 계층과 개별적으로 논리적인 통신을 수행해야 한다.
- 각각의 계층은 정해진 방식과 절차에 따라 상대 계층과 통신하는데, 이 과정에서 필요한 규칙을 프로토콜이라고 한다.
- 상하위 계층 간에는 인터페이스라는 규칙이 존재하고, 하위 계층이 상위 계층에 제공하는 인터페이스를
특별히 서비스라 부른다. - 상대 호스트에 물리적으로 데이터를 전송하는 것은 맨 아래의 물리계층이다.
- 물리계층 위에 위치한 계층 프로토콜들을 각자의 정해진 기능을 수행하면서 논리적인 통신을 하는 것이다.
인터넷 계층 구조
FTP의 계층 구조
- 인터넷에서는 IP가 네트워크 계층의 기능을 수행하여 TCP와 UDP가 전송 계층의 기능을 수행한다.
- 전송 계층 이하의 기능들은 호스트의 운영체제 내부에서 구현되며 FTP, Telnet, 전자메일 등과 같은 응용 프로그램은 사용자 프로그램 환경에서 계층 5 ~ 7이 합쳐져 구현된다.
- 양쪽 호스트에는 동일한 기능을 수행하는 프로토콜 스택이 각각 존재한다.
- 프로토콜 스택은 계층 구조로 이루어진 통신 프로토콜의 집합이다.
- 호스트 사이에는 중개 기능을 수행하는 라우터가 존재하며, 인터넷에서는 IP프로토콜이 중개 기능을 수행하므로
라우터에는 계층 3까지의 기능이 구현되어 있다. - FTP 클라이언트가 FTP 서버에 데이터를 전송하려면 먼저 하위 TCP에 데이터를 보내야 한다. TCP로 보내진 데이터는 IP 프로토콜과 LAN 카드를 거쳐서 FTP 서버가 위치하는 호스트 LAN 카드에 전달된다. 서버 호스트에 도착한 데이터는 송신 순서의 반대인 LAN 카드, IP 프로토콜, TCP 프로토콜을 거쳐서 FTP 서버 프로그램에 도착한다.
Reference
쉽게 배우는 데이터 통신과 컴퓨터 네트워크
'CS > Network' 카테고리의 다른 글
[Chapter 2] 네트워크 모델(계층 구조의 개념) (0) | 2025.02.07 |
---|---|
[Chapter 1] 네트워크의 기초 용어와 기능(주소 정보의 관리) (0) | 2025.02.06 |
[Chapter 1] 네트워크의 기초 용어와 기능(네트워크 주소의 표현) (0) | 2025.02.06 |
[Chapter 1] 네트워크의 기초 용어와 기능(시스템 기초 용어) (0) | 2025.02.06 |
[Chapter 1] 네트워크의 기초 용어와 기능(네트워크 기초 용어) (0) | 2025.02.06 |