• 직접전달과 간접전달에 대한 이해
• 목적지 주소 기반과 레이블 기반 포워딩 개념
• 다음 홉, 네트워크 지정, 호스트 지정, 디폴트 라우팅 방법
• 클래스기반과 클래스없는 주소 체계에서의 포워딩 방법
• 라우터의 구성 요소에 대한 이해
Objectives
Chapter 6
IP 패킷의 전달과 포워딩
목 차
• 전달
• 포워딩
• 라우팅 라우터의 구조
전달
6.1
6.1 전달
네트워크계층에서의 연결 유형
1. 연결형 서비스
패킷을 보내기 전에 원격지 네트워크계층 프로토콜과 연결 설정
경로를 결정하는 과정이 연결 설정 때 한번 수행
같은 발신지에서 같은 목적지로 패킷을 순서대로 전달
모든 패킷을 같은 경로로 전달
모든 패킷이 전달된 후 연결 종료
2. 비연결형 서비스
각 패킷을 상호 독립적으로 처리
한 메시지의 패킷들이 서로 다른 경로를 통해서 전달될 수 있다
6.1 전달 (계속)
IP is a connectionless protocol.
Note:
6.1 전달 (계속)
최종 목적지까지 패킷을 전달하는 방법
1. 직접 전달(direct delivery)
최종 목적지가 전달자(deliverer)와 같은 네트워크에 연결 되어 있는 호스트
패킷의 발신지와 목적지가 같은 네트워크에 위치
최종 라우터와 목적지 호스트 사이에 수행
목적지 주소에서 netid를 추출한 후 자신의 네트워크 주소 와 비교
같으면 직접 전달 수행
송신자는 목적지 IP주소를 이용하여 목적지 물리 주소를 찾아서(ARP이용) 데이터 링크 계층으로 보내어 패킷을 전달
6.1 전달 (계속)
직접 전달(Direct delivery)
6.1 전달 (계속)
2. 간접 전달(indirect delivery)
최종 목적지가 같은 네트워크에 있지 않은 호스트
최종 목적지와 같은 네트워크에 연결된 라우터에 도달 할 때 까지 여러 라우터를 경유해서 전달
목적지 IP 주소와 라우팅 테이블을 이용하여 패킷이 전달되 어야 하는 다음 라우터의 IP 주소를 찾는다
6.1 전달 (계속)
간접 전달(Indirect delivery)
Link Link
Link
A B
Indirect delivery Indirect delivery
포워딩
6.2
6.2 포워딩
라우팅 테이블 이용
포워딩 기술
다음 홉 (Next-Hop) 방법
네트워크 지정 (Network-Specific) 방법
호스트 지정 (Host-Specific)방법
디폴트 (Default) 방법
6.2 포워딩 (계속)
다음 홉 방법
라우팅 테이블의 크기를 작게 만드는 기술 중 하나
전체 경로에 대한 정보 대신 다음 홉 주소만 저장
6.2 포워딩 (계속)
네트워크 지정 방법
네트워크에 연결된 모든 호스트에 대해 각 호스트별 엔트리 대신에 네트워크에 대한 엔트리만 저장
N2 R1
Destination Next Hop Network-specific routing table for host S
A B C D Destination
R1 R1 R1 R1 Next Hop Host-specific routing table for host S
6.2 포워딩 (계속)
호스트 지정 방법
라우팅 테이블에 호스트 주소 저장
관리자가 라우팅 테이블을 제어할 때 사용
경로 점검이나 보안성 제공에 매우 좋음
R2
Host B
R3
Host A
R1 N1
N2 N3
Routing table for host A
R3 R1 R3 ...
Destination Next Hop Host B
N2 N3 ...
R1
6.2 포워딩 (계속)
디폴트 (Default) 방법
인터넷상의 모든 네트워크 나열대신 디폴트 엔트리만 지정
R1
Host A N1
Default
router R2
Routing table for host A N2
Destination Next Hop ...
N2 Default
...
R1 R2
6.2 포워딩 (계속)
클래스 기반 주소 체계에서의 포워딩
서브넷팅이 없는 경우
서브넷팅이 있는 경우
6.2 포워딩 (계속)
서브넷팅 없는 경우 포워딩
6.2 포워딩 (계속)
포워딩 과정
1. 목적지 주소를 추출
2. 주소를 오른쪽으로 28비트 쉬프트한 결과로부터 주소 의 클래스를 알 수 있다.
3. 네트워크 주소를 찾는다.
4. 클래스와 네트워크 주소를 사용하여 다음 홉 주소를 찾는다. 부합되는 엔트리가 없으면 디폴트가 사용된 다. 직접 전달인 경우, 다음 홉 주소는 목적지 주소이 다.
5. 다음 홉 주소와 인터페이스 번호를 ARP 에게 전달한 다.
6.2 포워딩 (계속)
Example
다음의 네트워크에 대한 라우터 R1의 라우팅 테이블을 보여라.
6.2 포워딩 (계속)
Solution
6.2 포워딩 (계속)
Example
R1은 목적지 192.16.7.14로 가는 패킷을 받아다. 어떻게 포워딩되는가?
Solution
-목적지 주소로부터 클래스를 찾는다. =>클래스 C -네트워크 주소를 찾는다.=> 192.16.7.0
-클래스 C의 테이블에서 192.16.7.0 엔트리를 찾는다.
-다음 홉 주소 111.15.17.32와 인터페이스 번호 m0를 ARP에게 전달한다.
6.2 포워딩 (계속)
Example
R1은 목적지 167.24.160.5로 가는 패킷을 받아다. 어떻게 포워딩되는가?
Solution
-목적지 주소로부터 클래스를 찾는다. =>클래스 B -네트워크 주소를 찾는다.=> 167.24.0.0
-클래스 B의 테이블에 부합되는 엔트리가 없으므로 디폴트 라우터로 전달되어야 한다.
-다음 홉 주소 111.30.31.18과 인터페이스 번호 m0를 ARP에게 전달한다.
6.2 포워딩 (계속)
서브넷팅 있는 경우 포워딩
6.2 포워딩 (계속)
포워딩 과정
1. 목적지 주소를 추출
2. 목적지 주소와 마스크를 사용하여 서브넷 주소를 추 출한다.
3. 테이블에서 서브넷 주소를 탐색하여 다음 홉 주소와 인터페이스 번호를 찾는다. 부합되는 엔트리가 없으 면 디폴트가 사용된다. 직접 전달인 경우, 다음 홉 주 소는 목적지 주소이다.
4. 다음 홉 주소와 인터페이스 번호를 ARP에게 전달한 다.
6.2 포워딩 (계속)
Example
6.2 포워딩 (계속)
Example
라우터가 145.14.32.78로 가는 패킷을 받아다. 어떻게 포워딩되는가?
Solution
-마스크 /18을 적용한 서브넷 주소를 찾는다. =>
145.14.0.0
-직접 전달이므로 다음 홉 주소 145.14.32.78과 인터페이스 번호 m0를 ARP에게 전달한다.
6.2 포워딩 (계속)
Example
145.14.0.0 네트워크 내의 호스트가 7.22.67.91인
호스트에게 보낼 패킷을 가지고 있다. 어떻게 포워딩되는가?
Solution
-마스크 /18을 적용한 서브넷 주소를 찾는다. =>
7.22.64.0
-테이블에 엔트리가 없으므로 다음 홉 주소를 디폴트 라우터의 주소를 사용하여 패킷을 전달한다.
6.2 포워딩 (계속)
클래스 없는 주소 체계에서 포워딩
포워딩 과정에서는 가장 긴 마스크부터 적용시킨다.
6.2 포워딩 (계속)
Example
다음의 가상 네트워크에 대한 라우터 R1의 라우팅 테이블을 보여라.
6.2 포워딩 (계속)
Solution
6.2 포워딩 (계속)
Example
R1에 목적지 주소가 180.70.65.140인 패킷이 도착한 후의 포워딩 과정은?
Solution
-목적지 주소에 첫 번째 마스크 /26을 적용한 결과, 180.70.65.128은 네트워크 주소와 일치하지 않는다.
-목적지 주소에 두 번째 마스크 /25를 적용한 결과, 180.70.65.128은 네트워크 주소와 일치한다.
-직접 전달이므로 목적지 주소를 다음 홉 주소로 하여
6.2 포워딩 (계속)
Example
R1에 목적지 주소가 201.4.22.35인 패킷이 도착한 후의 포워딩 과정은?
Solution
-목적지 주소에 세 번째 마스크 /24을 적용한 결과, 201.4.22.0은 네트워크 주소와 일치한다.
-직접 전달이므로 목적지 주소를 다음 홉 주소로 하여 인터페이스 번호 m3과 함께 ARP로 전달한다.
6.2 포워딩 (계속)
Example
R1에 목적지 주소가 18.24.32.78인 패킷이 도착한 후의 포워딩 과정은?
Solution
-목적지 주소에 모든 마스크를 적용하여도 일치하는 네트워크 주소가 없으므로 디폴트 라우터를 사용하여 전달한다.
-디폴트 라우터의 주소 180.70.65.200을 다음 홉 주소로 하고 인터페이스 번호 m2와 함께 ARP로 전달한다.
6.2 포워딩 (계속)
Example
라우터 R1의 라우팅 테이블에 대한 토폴로지를 그려라.
6.2 포워딩 (계속)
Solution
6.2 포워딩 (계속)
주소 집단화
클래스 없는 주소체계에서 라우팅 테이블의 엔트리 수를 줄이기 위한 기술
6.2 포워딩 (계속)
R2에서는 목적지 주소가 140.24.7.0 ~ 140.24.7.255사 이에 있는 패킷을 받으면 어느 조직으로 가는 것일지 라도 m0 인터페이스를 통하여 전달한다.
6.2 포워딩 (계속)
가장 긴 마스크 부합
다른 조직과 지리적으로 떨어져 있는 조직이 다른 라 우터로 연결되어 있는 경우, 주소 집단화를 사용하기 위한 기술
라우팅 테이블은 가장 긴 마스크부터 짧은 순으로 정 렬
6.2 포워딩 (계속)
목적지 주소가 140.24.7.200인 패킷을 R2가 받은 경우,
라우터의 구조
6.3
6.3 라우터의 구조
구성 요소
6.3 라우터의 구조 (계속)
입력 포트
물리계층 및 데이터 링크 계층 기능 담당
6.3 라우터의 구조 (계속)
출력 포트
물리계층 및 데이터 링크 계층 기능 담당
라우팅 처리기
네트워크 계층 기능 담당
6.3 라우터의 구조 (계속)
라우팅 처리기
네트워크 계층 기능 수행
목적지 주소를 이용, 다음 홉 주소를 찾고,
패킷이 출력될 포트 번호 결정
교환 조직( switching Fabric)
라우터에서 가장 복잡한 기능 담당
패킷을 입력 큐에서 출력 큐로 이동
다양한 교환 조직 사용