※"컴퓨터 네트워킹 하향식 접근 8판" 책을 간단하게 정리한 내용의 글입니다.※
1.5.1 계층구조
어떤 복잡한 시스템을 계층화하여 단순화하는 것은 매우 중요하다. 계층화 하는 것은 전체 시스템을 파악하기 쉽게 해주고, 각 계층이 제공하는 서비스의 구현을 바꾸는 것도 쉽게 해준다.
한 계층은 상위 계층에 같은 서비스를 제공하고, 하위 계층의 서비스를 이용한다. 여기서 한계층의 구현이 변한다고 하더라도 다른 계층은 아무런 영향이 없다.
인터넷은 많은 요소로 구성된 복잡한 시스템이다. 인터넷 또한 계층화를 통해 네트워크 구조를 파악할 수 있다.
프로토콜 계층화
네트워크 계층은 프로토콜로 이루어져 있다. 프로토콜은 네트워크 계층의 한 계층에 속해서 상위 계층에 서비스를 제공한다. 이 서비스는 그 계층 내부에서 어떤 기능을 수행하거나 하위 계층의 서비스를 사용한다.
- 계층화의 장점
- 모듈화를 통해 시스템 구성요소 갱신이 쉬워짐
- 표준화를 통해 전세계의 네트워크 장비와 시스템이 원활하게 상호작용할 수 있게됨
프로토콜의 계층화는 개념과 구조 측면에서 이점이 있다. 하지만 결점도 존재한다.
- 계층화의 잠재된 결함
- 한 계층의 기능이 하위 계층과 기능적으로 중복된다.
ex) 패킷 손실 방지를 위한 재전송 기능이 여러 계층에 중복적으로 존재한다. - 어느 한 계층에서의 기능이 다른 계층에만 존재하는 정보를 필요로 할 수 있다.
ex) 네트워크 계층에서 애플리케이션 계층의 정보(url)를 사용함
- 한 계층의 기능이 하위 계층과 기능적으로 중복된다.
애플리케이션 계층
네트워크 애플리케이션과 애플리케이션 계층 프로토콜이 있는 곳이다.
애플리케이션 계층에서의 패킷을 메시지(message)라고 한다.
ex) HTTP, SMTP, FTP 프로토콜 및 DNS 등
트랜스포트 계층
클라이언트와 서버 간에 애플리케이션 계층 메시지를 전송하는 서비스를 제공한다.
트랜스포트 계층에서의 패킷을 세그먼트(segment)라고 한다.
ex) TCP, UDP
네트워크 계층
한 호스트에서 다른 호스트로 데이터그램(datagram)을 라우팅하는 책임을 진다. 트랜스포트 계층에서 세그먼트와 목적지 주소를 받고, 세그먼트를 목적지 트랜스포트 계층으로 운반하는 서비스를 제공한다.
네트워크 계층을 가지는 모든 인터넷 요소는 IP 프로토콜을 수행해야만 한다.
ex) IP 프로토콜, 여러 라우팅 프로토콜
링크 계층
네트워크 계층에서 목적지로 데이터그램을 라우트할 때 경로상에 여러 노드를 이동하게 되는데, 링크 계층은 한 노드에서 다른 노드로 패킷을 전달하는 역할을 맡는다.
네트워크 계층은 전송의 전체 경로에 거쳐서 주로 IP 프로토콜을 이용한다. 하지만 링크 계층은 노드간 이동마다 서로 다른 프로토콜을 사용할 수 있다.(구간에 따라 이더넷 프로토콜, PPP 프로토콜 등 여러가지가 사용될 수 있다.)
링크 계층에서의 패킷을 프레임(frame)이라고 한다.
물리 계층
링크 계층에서 네트워크의 다음 요소로 이동하는 것을 맡았다면, 물리 계층에서는 프레임 내부의 각 비트를 한 노드에서 다음 노드로 이동하는 것을 맡는다.
이 계층의 프로토콜은 노드 간 링크와 링크의 실제 전송 매체(UTP 등)에 의존한다.
1.5.2 캡슐화
- 인터넷 구조
링크 계층 스위치와 라우터는 하위 계층만을 구현한다. 하지만 호스트는 5개 계층 모두를 구현한다. 이는 인터넷 구조가 네트워크의 '가장자리'에서 그 복잡성을 유지한다는 관점과 일치한다. - 캡슐화
상위 계층으로 부터 받은 패킷(페이로드)은 해당 계층의 헤더 정보가 추가되고 하위 계층으로 전달된다. 이때 헤더에는 해당 계층에서 제공하는 서비스를 위한 정보가 포함되게 된다. 예를 들어 네트워크 계층에서는 트랜스포트 계층에서 받은 세그먼트에 출발지와 목적지 종단 시스템 주소에 대한 헤더 정보를 추가하여 데이터그램을 만들고, 이를 링크 계층으로 전달한다.
또한 모든 계층에서의 패킷은 헤더 필드와 페이로드 필드로 나뉘어진다.
'CS > 컴퓨터네트워크' 카테고리의 다른 글
[하향식 접근 8판] Chapter 2 애플리케이션 계층 - 2.4~ (0) | 2024.10.16 |
---|---|
[하향식 접근 8판] Chapter 2 애플리케이션 계층 - 2.1~2.3 (2) | 2024.10.16 |
[하향식 접근 8판] 1.4 패킷 교환 네트워크에서의 지연, 손실과 처리율 (1) | 2024.09.14 |
[하향식 접근 8판] 1.3 네트워크 코어 (0) | 2024.09.14 |
[하향식 접근 8판] 1.1 인터넷이란 무엇인가? (1) | 2024.09.14 |