카테고리 없음

Chapter3. 네트워크층 개요

ttoance 2026. 3. 29. 08:28
반응형

학습 목표 

- 교환(switching)과 네트워크층의 데이터 전달 메커니즘인 패킷 교환을 소개한다. 

- 패킷 교환망이 제공하는 연결형 서비스와 비연결형 서비스를 설명한다.

- 비연결형 패킷 교환망에서 패킷의 목적지 주소와 라우팅 테이블을 사용하여 라우터가 패킷을 전달하는 과정을 설명한다. 

- 연결형 패킷 교환망에서 패킷의 레이블과 라우팅 테이블을 사용하여 라우터가 패킷을 전달하는 과정을 설명한다. 

- 논리 주소 체계와 발신지, 각 라우터, 그리고 목적지로 전달 등과 같이 네트워크 층에서 제공되는 서비스에 관해 설명한다. 

- 네트워크층에서는 직접 제공되지는 않지만, 간혹 보조 프로토콜이나 인터넷에 이후 추가될 프로토콜에 의해 제공되는 서비스에 대해 설명한다. 

 

 

1.개요 

- 개념적인 수준에서 인터넷은 수백만 대의 컴퓨터를 연결하는 블랙박스 네트워크로 생각할 수 있다. 

ㄴ 그러나 인터넷은 하나의 네트워크로 구성된 것이 아니고 연결 장치 통하여 연결된 수많은 네트워크 (또는 링크)로 구성된다. 

- 이 모델에서 라우터와 같은 연결 장치는 교환기로서 동작한다. 

ㄴ 패킷이 라우터의 한 포트에 도착하면 이 패킷은 다른 포트 통하여 다음 교환기로 전달된다. 

2. 교환 

연결 장치는 한 포트를 다른 포트에 연결하는 교환기 역할을 한다. 

 

2.1 회선 교환 

- 교환에 대한 한 가지 해결책은 회선 교환 (circuit switching) 이라고 한다. 

- 회선 교환에서는 메시지 전달 전에 발신지와 목적이 사이에 물리 회선이 생성된다. 

- 회선이 생성된 후 전체 메시지가 발신지에서 목적지로 전달된다. 

- 발신지는 메시지 전달이 완료되면, 이를 네트워크에 통보해서 네트워크가 다른 연결 위해 사용할 수 있게 한다. 

- 회선 교환은 네트워크 층에는 구현되지 않고 대부분 물리층에서 사용된다. 

 

2.2 패킷 교환 packet switching

- 오늘날 인터넷의 네트워크층은 패킷 교환망이다. 

- 이 네트워크에서는 상위 계층의 메시지가 관리 가능한 크기의 패킷(datagram)으로 분할되고 각 패킷이 네트워크를 통하여 전달된다. 

- 메시지 발신지는 패킷을 한개씩 송신하고 목적지는 패킷을 한 개씩 수신한다. 

- 목적지는 같은 메시지에 속하는 모든 패킷이 도착하면, 메시지를 상위 계층으로 전달한다. 

- 패킷 교환망의 연결 장치는 패킷을 최종 목적지까지 어떻게 보낼지 결졍해야 한다. 

 

3. 네트워크층에서의 패킷 교환 

인터넷의 패킷 교환 네트워크층은 원래 비연결형 서비스로 설계되었으나 최근에 연결형 서비스로 전환되고 있는 추세이다. 

 

3.1 비연결형 서비스

- 인터넷이 시작되었을 때 네트워크층은 비연결형 서비스를 제공하도록 설계되었는데 이 서비스에서 네트워크층은 각 패킷을 상호 독립적으로 다룬다. 

- 한 메시지 내의 패킷은 목적지까지 같은 경로로 전송될 수도 있고 아닐 수도 있다. 

- 이 네트워크 내의 교환기를 라우터 라고 한다. 

- 각 패킷은 헤더에 속한 정보인 발신지 주소와 목적지 주소를 기반으로 전달된다. 

 

3.2 연결형 서비스

- 연결형 서비스에서 한 메시지에 속한 모든 패킷 사이에는 관계성이 있다. 

- 한 메시지에 속한 모든 데이터그램이 송신되기 전에 데이터그램의 경로를 나타내는 가상 회선 virtual circuit 이 생성되어야 한다. 

- 연결이 생성된 후 데이터그램은 같은 경로를 따라 전달된다. 

- 연결형 서비스의 경우 패킷은 발신지 주소, 목적지 주소와 함께 패킷이 전달되는 가상 회선을 지정하는 가상 회선 식별자 virtual circuit identifier 인 흐름 레이블 flow label 도 가지고 있어야 한다. 

- 연결형 서비스를 생성하기 위해 연결 과정 setup, 데이터 전송 data transfer과 연결 해제 teardown로 구성된 세 단계 과정이 사용된다. 

 

3.2.1 설정 단계 setup phase 

- 라우터는 가상 회선을 위한 엔트리를 생성한다. 

 

3.2.2 데이터 전송 과정 data transfer

- 모든 라우터는 특정 가상 회선을 위한 라우팅 테이블을 생성한 후 하나의 메시지에 속한 네트워크층 패킷을 순서대로 전송한다. 

- 메시지 내의 모든 패킷은 목적지에 도달할 때까지 같은 레이블 순서를 따른다. 

- 패킷은 목적지에 순서대로 도달한다. 

 

3.2.3 연결 해제 과정 teardown phase

- 발신지 A가 B에게 모든 패킷을 보낸 후 해제 패킷이라는 특별한 패킷을 보낸다. 

- 목적지 B는 확인 패킷으로 응답한다. 

- 모든 라우터는 자신의 테이블에서 해당하는 엔트리를 삭제한다. 

 

4. 네트워크층 서비스 

인터넷에서 주로 사용되는 비연결형 서비스를 기반으로 한다. 

 

4.2 논리 주소 체계 

- 네트워크층은 종단-대-종단 통신을 제공하므로 상호 통신하는 두 컴퓨터는 네트워크층 주소 또는 놀리 주소라는 인터넷 공통의 식별자 시스템이 필요하다. 

- 이 유형의 식별자 시스템은 전역 주소 시스템을 통하여 네트워크층에서 제공된다. 

- 인터넷을 사용하는 각 개체는 모든 주소 공간에서 유일한 주소를 할당받는다. 

 

4.3 발신지 컴퓨터에서 제공되는 서비스

- 발신지 컴퓨터의 네트워크층에서는 네 가지 서비스를 제공하는데, 이는 패킷화, 다음-홉 논리 주소 찾기, 다음-홉 물리 주소 찾기, 필요한 경우 데이터그램 단편화이다. 

 

 

 

1) 패킷화 

- 네트워크층의 첫 번째 임무는 상위 계층으로부터 받은 데이터를 데이터그램으로 패킷화하는 것이다. 

- 이 과정에서 데이터에 패킷 발신지와 목적지 논리 주소, 단편화 정보, 서비스를 요청한 프로토콜의 ID, 데이터 길이를 포함하는 헤더를 추가한다. 

- 데이터그램 헤더만을 대상으로 계산된 검사합도 포함한다. 

 

2) 다음 홉의 논리 주소 찾기

- 준비된 데이터그램은 패킷의 발신지와 목적지 주소를 가지고 있다. 

- 데이터그램은 최종 목적지에 도달하기 위하여 여러 네트워크를 통과해야 한다. 

- 목적지 컴퓨터가 발신지와 같은 네트워크에 연결되어 있지 않으면 데이터그램은 다음 라우터로 전달해야 한다. 

- 데이터그램의 발신지 주소와 목적지 주소로는 다음 홉의 논리 주소를 알지 못하고 발신지 컴퓨터의 네트워크층은 라우팅 테이블을 참조하여 다음 홉의 논리 주소를 찾아야 한다. 

 

3) 다음 홉의 MAC 주소 찾기 

- 네트워크층은 실제로 데이터그램 전달하지 않고 데이터 링크층에 전달을 맡기는데 전달 위해 MAC 주소가 필요하다. 

- 다음 홉의 MAC 주소를 찹기 위하여 또 다른 테이블을 사용하여 다음 홉의 논리 주소를 MAC 주소로 변환해야 한다. 

- 이 임무는 ARP Address Resolution Protocol 을 사용하는데 ARP로 논리 주소를 받아 다음 홉의 MAC 주소를 알려준다. 

 

4) 단편화 

- 데이터그램은 아직 데이터 링크층에 전달될 수 없을 수도 있다. 

ㄴ 대부분의 LAN과 WAN은 한 프레임에 전달할 수 있는 최대 데이터 크기를 가지고 있고 이 크기를 최대 전송 단위 MTU 라고 한다. 

- 네트워크층에 준비된 데이터그램이 MTU 보다 큰 경우 단편화 과정이 이루어진다. 

- 단편화 과정에서도 헤더은 같은 내용이어야 한다. 

 

4.5 목적지 컴퓨터에서 제공되는 서비스 

- 목적지 컴퓨터의 네트워크층은 간단하다. 

ㄴ 전달은 더이상 필요없으나 목적지 컴퓨터는 데이터를 목적지에 전달하기 전에 단편들을 조립할 필요가 있다. 

- 각 데이터그램의 유효성을 검증한 후 각 단편에서 데이터 추출하고 저장된다.

- 네트워크층은 재조립 타이머를 설정한다.

- 만약 타이머가 만료되면 모든 데이터 단편은 폐기되고 모든 단편을 재전송해야 한다는 오류 메시지가 전송된다. 

 

5. 네트워크층 문제점들

5.1 오류 제어 error control

- 오류 제어란 훼손되거나 손실되거나 중복한 데이터그램을 탐지하는 메커니즘을 호맣하는 것을 의미한다. 

ㄴ 오류를 탐지한 후 수정하는 메커니즘도 포함한다. 

- 인터넷에서 네트워크층은 오류 제어 메커니즘을 제공하지 않는다. 

- 직접 오류 제어는 제공하지 않지만 인터넷은 ICMP라는 프로토콜 이용해서 데이터그램이 폐기되거나 헤더 내에 알려지지 않은 정보가 포함되는 경우 이에 대한 오류 제어 할 수 있는 메커니즘을 제공한다. 

 

5.2 흐름 제어 flow control

- 수신자의 수신 능력을 초과하지 않도록 발신지의 데이터 전송 양을 조절한다. 

- 인터넷의 네트워크층은 직접 흐름 제어를 제공하지 않는다. 

 

5.3 혼잡 제어 congestion control 

- 혼잡이란 인터넷 내부에 데이터그램이 너무 많이 존재하는 상황이다. 

- 발신지 컴퓨터에 의해 송신된 데이터그램의 수가 네트워크나 라우터의 용량을 넘는 경우 혼잡이 발생한다. 

ㄴ 이 경우 일부 라우터는 데이터그램의 일부를 폐기할 수 있다. 

- 그러나 더 많은 데이터그램이 폐기될 수록 상위 계층의 오류 제어 메커니즘에 의해 송신자가 분실된 패킷을 중복하여 송신하게 되므로 상황은 더 약화될 수 있다. 

 

- 비연결형 네트워크에서의 혼잡 제어 

ㄴ 해결책 중의 하라는 신호방식 signaling 이다. 

ㄴ 후향 신호방식 backward signaling 에서는 혼잡이 발생한 방향과 반대 방향으로 전달되는 데이터그램 내의 한 비트를 1로 설정하여 송신자에게 혼잡이 발생하였음을 알리고 송신자가 패킷을 전송하는 속도를 낮추도록 한다. 

 

- 연결형 네트워크에서 혼잡 제어 

ㄴ 설정 과정에서 진보된 협상 advanced negotiation 

ㄴ 가상 회선 설정할 때 송신자와 수신자는 트래픽 수준을 합의할 수 있다. 

 

5.4 서비스 품질 

- 가능하면 네트워크층을 수정하지 않기 위해 서비스 품질 QOS 은 상위 계층에 구현되어있다. 

 

반응형