여러 링크를 통하여 전달하여야 하는 문제를 해결하기 위하여 네트워크 계층이 설계되었다. 네트워크 계층은 호스트 대 호스트 전달과 라우터를 통한 패킷 라우팅을 수행한다.
교환
연결 장치는 한 포트를 다른 포트에 연결하는 교환기의 역할을 한다.
회선교환
회선 교환에서 전체 메시지는 패킷으로 분할되지 않고 발신지에서 목적지로 전달된다. 회선 교환은 네트워크 계층에서는 구현되지 않고 대부분 물리 계층에서 사용된다.
패킷 교환
패킷 교환에서 메시지는 발신지에서 관리 가능한 크기의 패킷으로 분할된 후 송신된다. 패킷들은 목적지에서 조립된다. 전송 방법에는 데이터그램 방법과 가상 회선 방법이 있다.
네트워크 계층에서의 패킷 교환
인터넷의 패킷 교환 네트워크 계층은 원래 비연결형 서비스로 설계되었다.
비연결형 서비스
비연결형 서비스에서 네트워크 계층은 각 패킷을 상호독립적으로 취급한다. 비연결형 패킷 교환 네트워크에서 패킷의 목적지 주소를 기반으로 포워딩 결정이 내려진다.
연결 지향 서비스
연결 지향 서비스에서 한 메시지에 속한 모든 패킷들 사이에는 관계성이 있다. 한 메시지에 속한 모든 데이터그램이 송신되기 전에 데이터그램들의 경로를 정의하는 가상 회선(Virtual Circuit)이 생성되어야 한다. 연결이 생성된 후 데이터그램들은 같은 경로를 따라 가게 된다. 연결 지향 패킷 교환 네트워크에서 패킷의 레이블에 기반하여 포워딩 결정이 내려진다.
- 설정 단계(Setup Phase) : 라우터는 가상 회선을 위한 엔트리를 생성한다. 송신자와 수신자 시이에 요청 패킷과 응답 패킷이 교환되어야 한다.
- 요청 패킷 : 발신지에서 목적지로 전달된다. 이 보조 패킷은 발신지와 목적지 주소를 전달한다.
- 확인응답 패킷 : 확인응답 패킷이라고 불리는 특별한 패킷이 교환 테이블 내의 엔트리들을 완성한다.
- 데이터 전송 과정 : 모든 라우터들이 특정 가상 회선을 위한 라우팅 테이블을 생성한 후 하나의 메시지에 속한 네트워크 계층 패킷들은 순서대로 전송될 수 있다. 메시지 내의 모든 패킷들은 목적지에 도달할 때까지 같은 레이블 순서(Sequence)를 따른다.
- 해제 과정 : 해제 과정에서 발신지가 목적저에게 모든 패킷을 보낸 후 해제 패킷이라는 특별한 패킷을 보낸다. 목적지는 확인 패킷으로 응답한다. 모든 라우터들은 자신의 테이블에서 해당하는 엔트리를 삭제한다.
네트워크 계층 서비스
논리 주소 체계
네트워크 계층은 종단 대 종단(end-to-end) 통신을 제공하므로 상호 통신하여야 하는 두 컴퓨터는 네트워크 계층 주소 또는 논리 주소라고 불리는 인터넷 공통의 식별자 시스템을 필요로 한다.
발신지 컴퓨터에서 제공되는 서비스
- 패킷화 : 상위계층으로부터 내려온 데이터를데이터그램으로 캡슐화 하는 것이다.
- 다음 홉의 논리 주소 찾기 : 준비된 데이터그램은 패킷의 발신지와 목적지 주소를 가지고 있다. 발신지 컴퓨터의 네트워크 계층은 라우팅 테이블을 참조하여 다음 홉의 논리 주소를 찾아야 한다.
- 다음 홉의 MAC 주소 찾기 : 전달을 위하여 데이터링크 계층은 다음 홉의 MAC 주소를 필요로 한다. 다음 홉의 MAC 주소를 찾기 위하여 네트워크 계층은 또 다른 테이블을 사용하여 다음 홉의 논리 주소를 MAC 주소로 변환하여야 한다.
- 단편화 : 대부분은 LAN과 WAN은 한 프레임에 전달할 수 있는 최대 데이터 크기를 가지고 있다. 네트워크 계층에서 준비된 데이터그램은 최대 데이터 크기보다 클 수 있으므로 데이터링크 계층에 전달되기 전에 작은 크기로 단편화되어야한다.
각 라우터에서 제공되는 서비스
네트워크 계층은 입력 인터페이스의 데이터링크 계층으로부터 데이터그램을 받아 필요한 경우 단편화를 수행항 후 출력 인터페이스의 데이터링크 계층에 단편들을 전달하여야 한다. 라우터는 검사합을 사용하영 데이터그램의 유효성을 검증한다.
목적지 컴퓨터에서 제공되는 서비스
목적지 컴퓨터는 데이터를 목적지에 전달하기 전에 단편들을 조립할 필요가 있다. 각 데이터그램의 유효성을 검증한 후 각 단편들로부터 데이터가 추출되고 저장된다. 모든 단편이 도착하면 데이터가 재조립되고 상위 계층에 전달된다.
다른 네트워크 계층 문제점들
이 사항들은 보통 네트워크 계층에서 설명되는 사항들ㅇ지만 네트워크 계층에서 부분적으로 구현되거나 전혀 구현되지 않을 수도 있다.
오류 제어
훼손되거나 손실되거나 중복된 데이터그램을 탐지하는 메커니즘을 포함하는 것을 의미한다. 각 라우터에서 검사되어야 하는데 이것은 네트워크 계층에서의 오류 검사를 매우 비효율적으로 만든다. 그러나 데이터그램 전체는 아니지만 헤더에서의 훼손을 제어하기 위하여 데이터그램에 검사합 필드를 추가하였다. 이 검사합은 종단 사이와 두 홉 사이에서 데이터그램 헤더의 변경이나 훼손을 방지할 수 있다.
흐름 제어
흐름 제어는 수신자의 수신 능력을 초과하지 않도록 발신지에서의 데이터 전송양을 조절한다. 인터넷의 네트워크 계층은 직접 흐름 제어를 제공하지 않는다. 데이터그램이 송신 준비가 되었다면 수신자가 준비되었는지를 확인하지 않고 즉시 송신된다.
혼잡 제어
네트워크 계층에서의 혼잡이란 인터넷 내부에 데이터그램이 너무 많이 존재하는 상황이다.
라우팅
인터넷 계층에서 매우 중요한 사항은 라우팅으로 비연결형 서비스에서 데이터그램을 포워드하는 것을 돕기 위해 또는 연결 지향 서비스에서 설정 단계에 가상 회선의 생성을 도울 수 있도록 라우터가 어떻게 라우팅 테이블을 생성하는 가의 문제이다. 이러한 임무는 호스트와 라우터가 라우팅 테이블을 생성하고 유지하고 갱신하는 것을 돕는 라우팅 프로토콜에 의해 수행된다.
보안
비연결형 네트워크 계층에 보안을 제공하기 위하여 비연결형 서비스를 연결 지향 서비스로 변경시키는 다른 수준에서의 가상화가 필요하게 되었다.
연습 문제
1. 인터넷이 시작되었을 때 네트워크 계층을 간단하게 만들기 위하여 네트워크 계층을 ________서비스로 만들리고 결정하였다.
a. 연결 지향
b. 비연결형
c. 가상
d. 정답 없음
2. 비연결형 서비스에거 각 패킷은 ________기반으로 포워드된다.
a. 발신지 주소
b. 목적지 주소
c. 레이블
d. 정답 없음
3. 연결 지향 서비스에서 각 패킷은 ________기반으로 포워드된다.
a. 발신지 주소
b. 목적지 주소
c. 레이블
d. 정답 없음
4. ________ 서비스에서 한 메시지에 속한 모든 패킷들 사이에 아무런 관계성이 없다.
a. 비연결형
b. 가상
c. 연결 지향
d. 정답 없음
5. ________에서 모든 메시지가 패킷을 나뉘지 않고 발신지에서 목적지로 전달된다.
a. 회선 교환
b. 패킷 교환
c. 셀 교환
d. 정답 없음
6. ________에서 메시지는 전송되기 전에 관리 가능한 패킷으로 나뉜다.
a. 회선 교환
b. 패킷 교환
c. 셀 교환
d. 정답 없음
7. ________ 제어는 훼손되거나 분실되거나 중복된 패킷을 탐지하는 메커니즘을 포함하는 것을 의미한다.
a. 흐름
b. 오류
c. 혼잡
d. 정답 없음
8. ________제어는 목적지에서 데이터가 넘치는 일이 발생하지 않도록 발신자가 보내는 데이터의 양을 조절하는 것을 의미한다.
a. 흐름
b. 오류
c. 혼잡
d. 정답 없음
9. 네트워크에서 ________ 제어는 인터넷 내에 너무 많은 수의 패킷이 존재하는 상황을 처리하는 것을 의미한다.
a. 흐름
b. 오류
c. 혼잡
d. 정답 없음
10 ________ 패킷은 라우터가 혼잡을 탐지한 경우 라우터에서 송신자에게 보내지는 특별한 패킷이다.
a. 초크
b. 데이터
c. 제어
d. 정답 없음
연습문제는 정답이 아닐수 있음
'네트워크 프로토콜' 카테고리의 다른 글
IPv4 패킷 형식 (0) | 2021.10.23 |
---|---|
IPv4 주소 (0) | 2021.10.22 |
기반 기술(1) (0) | 2021.10.18 |
기반 기술(2) (0) | 2021.10.17 |
TCP/IP 프로토콜 (0) | 2021.10.15 |