Transcript Solution

Chapter 6
IP 패킷 전달과
포워딩
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
1
▣ 학습목표(OBJECTIVES):
 네트워크 계층에서 패킷 전달(delivery), 그리고 직접 전달과
간접 전달 차이점 구분
 네트워크 계층에서 패킷 포워딩(forwarding), 그리고 목적지주소-기반 포워딩과 레이블-기반 포워딩
 다음-홉(next-hop), 네트워크-지정(network-specific),
호스트-지정(host-specific), 디폴트(default)를 포함한 서로
다른 포워딩 기술
 클래스 기반 주소지정과 클래스 기반이 아닌 주소지정에서의
라우팅 테이블과 테이블을 검색하기 위한 알고리즘
 MPLS 기술 소개 레이블 기반 포워딩이 수행되는 방법
 라우터 구성요소, 각 구성요소들의 목적과 관계
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
2
Chapter
Outline
6.1 Delivery
6.2 Forwarding
6.3 Structure of a Router
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
3
6-1 전달(DELIVERY)
네트워크 계층은 기반 물리 네트워크에 의해 패킷을
처리하는 과정을 감독한다. 이 처리과정을 패킷
전달(packet delivery)이라 한다. 최종 목적지까지
패킷 전달은 두 가지 방법(직접과 간접)에 의해
이루어진다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
4
▣ 직접 전달(direct delivery)
최종 목적지가 전달자(deliverer)와 같은 네트워크
에 연결되어 있는 호스트
패킷의 발신지와 목적지가 같은 네트워크에 위치
최종 라우터와 목적지 호스트 사이에 수행
목적지 주소에서 netid를 추출한 후 네트워크 주소
와 비교
같으면 직접 전달 수행
송신자는 목적지 IP 주소를 이용하여 목적지 물리
주소를 찾아서(ARP이용, 8장) 데이터 링크 계층으
로 보내어 패킷을 전달
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
5
직접 전달(direct delivery)
Direct delivery
Direct delivery
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
6
▣ 간접 전달(indirect delivery)
최종 목적지가 같은 네트워크에 있지 않은 호스트
최종 목적지와 같은 네트워크에 연결된 라우터에
도달 할 때 까지 여러 라우터를 경유해서 전달
목적지 IP 주소와 라우팅 테이블을 이용하여 패킷이 전
달되어야 하는 다음 라우터의 IP 주소를 찾는다
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
7
간접 전달(Indirect delivery)
A
B
Link
Indirect delivery
Http://netwk.hannam.ac.kr
Link
Link
Indirect delivery
HANNAM UNIVERSITY
8
6-2 포워딩(FORWARDING)
포워딩이란 패킷을 목적지로 가는 경로상에 놓는
것을 의미한다. 오늘날의 인터넷은 링크(네트워크)의
조합으로 되어 있으므로, 포워딩은 패킷을 다음
홉(최종 목적지 또는 중간 연결 장치)으로 배달하는
것 을 의 미 한 다 . IP 프 로 토 콜 이 원 래 비 연 결 형
프로토콜로 설계되었지만, 오늘날의 경향은 IP 를
연결-중심 프로토콜로 사용하고 있다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
9
▣ 포워딩(Forwording)
목적지 주소 기반 포워딩
다음-홉
네트워크-지정
호스트 지정
디폴트
레이블 기반 포워딩
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
10
▣ 다음-홉(Next-hop method)
 라우팅 테이블을 가장 작게 만드는 기술
 전체 경로 정보대신 다음 홉 주소만 저장
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
11
▣ 네트워크-지정(Network-specific) 방법
라우팅 테이블 작게, 검색과정 간단하게
같은 네트워크에 연결된 모든 호스트 별 엔트리
대신 네트워크 주소지정
Network-specific
routing table for host S
Host-specific
routing table for host S
Destination Next Hop
N2
R1
Destination Next Hop
A
R1
B
R1
C
R1
D
R1
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
12
호스트-지정-라우팅(Host-specific routing)
 라우팅 테이블에 목적지 주소 저장
 네트워크-지정 라우팅 반대
 관리자가 네트워크 제어 시 효과적
Routing table for host A
Destination
Next Hop
Host B
N2
N3
......
R3
R1
R3
......
Host A
N1
R1
R3
Host B
N2
Http://netwk.hannam.ac.kr
R2
N3
HANNAM UNIVERSITY
13
디폴트 라우팅(Default routing)
인터넷상의 모든 네트워크 나열대신 디폴트
엔트리만 지정
Routing table for host A
Destination Next Hop
N2
......
R1
......
Default
R2
N2
N1
Host A
R1
Default
router
R2
Rest of the Internet
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
14
서브넷팅 없는 클래스기반 주조지정에서 단순화된 포워딩 모듈
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
15
Example 6.1
다음 쪽 그림은 인터넷의 일부분에서 가상의 네트워크이다.
라우터 R1의 라우팅 테이블을 보이시오.
Solution
다음 쪽 그림은 라우터 R1에서 사용하는 3개의 테이블을
보여준다. 일부 엔트리에는 다음 홉 주소가 비어있는 경우가
있는데, 목적지가 라우터가 연결된 네트워크와 같은 네트워크에
있기 때문이다(직접 전달). 이 경우에, ARP가 사용하는 다음 홉
주소는 패킷의 목적지 주소이다(8장 참조).
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
16
▣ Example 6.1의 라우팅 구성
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
17
▣ Example 6.1에 대한 테이블
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
18
Example 6.2
그림에서 Router R1은 목적지 주소 192.16.7.14를 갖는 패킷을
받았다. 패킷이 어떻게 포워딩 되는지 보여라.
Solution
목적지 주소는
11000000 00010000 000001110 0001110 이다.
주소를 오른쪽으로 28 비트 이동하면, 결과는
00000000 00000000 00000000 00001100 또는 12 이다.
목적지 네트워크는 클래스 C 이다. 네트워크 주소는
주소의 왼쪽에서 24 비트를 뽑아내면 192.16.7.0 이다.
C의 테이블은 검색한다. 네트워크 주소는 첫 번째
찾아낸다. 다음-홉 주소 111.15.17.32. 와 인터페이스
ARP에 보내진다(8장 참조).
Http://netwk.hannam.ac.kr
목적지
클래스
향에서
m0 를
HANNAM UNIVERSITY
19
Example 6.3
그림에 있는 Router R1은 목적지 주소 167.24.160.5를 가진
패킷을 받았다. 패킷이 포워딩 되는 과정을 보이시오.
Solution
2진수로 목적지 주소는
10100111 00011000 10100000 00000101 이다.
주소를 오른쪽으로 24비트 이동한다. 결과는
00000000 00000000 00000000 00001010 또는 10 이다.
클래스 B 이다. 네트워크 주소는 목적지 주소에서 왼쪽 16
비트를 뽑아내면 결과는 167.24.0.0이다. 클래스 B에 대한
테이블을 검색한다. 매칭되는 네트워크 주소가 없다. 패킷은
디폴트 라우터로 포워딩하면 된다(네트워크는 인터넷 어딘가에
있다). 다음-홉 주소 111.30.31.18 와 인터페이스 번호 m0이
ARP에 전해진다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
20
서브넷팅이있는클래스기반주소에서단순화된포워딩모듈
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
21
Example 6.4
다음 쪽 그림은 4개의 서브넷이 연결된 라우터를 보여주고 있다.
몇 가지 점을 주목하라. 첫 째, 사이트 주소는 145.14.0.0/16
( 클 래 스 B 주 소 ). 목 적 지 주 소 가 범 위 145.14.0.0 에 서
145.14.255.255를 가진 모든 패킷은 인터페이스 m4로 전달되어
라우터에 의해 최종 목적지 서브넷에 전해진다. 둘 째, we have
used the address for the 인터페이스 m4에 대해 주소 x.y.z.t/n를
사용하는 이유는 이 라우터가 연결된 라우터를 모르기 때문이다.
세 째, 테이블은 외부로 나가는 패킷에 대한 디폴트 엔트리를
가지고 있다. 라우터는 모든 목적지 주소에 대해 서브넷 마스크
/18 를 적용하도록 구성되어 있다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
22
Example 6.4에 대한 네트워크 구성
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
23
Example 6.5
다음 쪽 그림의 router는 목적지 주소 145.14.32.78 를 가진
패킷을 수신하였다. 패킷이 포워딩되는 과정을 보이시오.
Solution
마스크는 /18이다. 마스크를 적용하면 서브넷 주소는 145.14.0.0
이다. 패킷은 next-hop 주소 145.14.32.78와 outgoing interface
m0와 함께 ARP(8장 참조)로 전달된다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
24
Example 6.6
앞쪽 그림에 145.14.0.0 네트워크 내의 호스트가 주소 7.22.67.91
인 호스트로 보내는 패킷을 가지고 있다. 패킷이 어떻게
전달되는지 보여라.
Solution
라우터는 패킷을 받아서 마스크 (/18)를 적용한다. 네트워크
주소는 7.22.64.0 이다. 테이블을 검색하면 부합하는 주소를 찾지
못하게된다. 라우터는 디폴트 라우터의 주소(그림에는 없음)를
사용하여 패킷을 라우터에 보낸다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
25
Note
In classful addressing we can have a
routing table with three columns;
in classless addressing,
we need at least four columns.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
26
클래스 기반이 아닌 주소체계에서 간단화된 포워딩 모듈
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
27
Example 6.7
다음 쪽 그림의 네트워크 구성에서 router R 의
라우팅 테이블을 작성하시오.
Solution
Table 6.1 은 라우팅 테이블이다
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
28
Example 6.7 네트워크 구성
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
29
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
30
Example 6.8
앞 쪽 그림의 R1에 목적지 주소 180.70.65.140 를 가진 패킷이
도착했다면 포워딩 과정을 보이시오.
Solution
라우터는 다음 단계를 수행한다:
1. 첫 째 목적지 주소에 마스크 (/26)를 적용한다. 결과는
180.70.65.128인데, 부합되는 네트워크 주소가 없다.
2. 둘 째 목적지 주소에 마스크(/25) 를 적용한다. 결과는
180.70.65.128가 네트워크 주소와 부합된디. 다음-홉 주소(이
경우에 패킷의 목적지 주소와 interface number m0 이
계속되는 처리 과정을 위해 ARP (8장 참조)에 보내진다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
31
Example 6.9
라 우 터 R1 에 목 적 지 주 소 201.4.22.35 를 가 진 패 킷 이
도착했다면 포워딩 처리 과정을 보이시오.
Solution
라우터는 다음 단계를 수행한다:
1. 첫 째 목 적 지 주 소 에 마 스 크 (/26) 를 적 용 한 다 . 결 과 는
201.4.22.0인데, 해당하는 네트워크 주소(row 1)와 부합되지
않는다.
2. 둘 째 목 적 지 주 소 에 마 스 크 (/25) 를 적 용 한 다 . 결 과 는
201.4.22.0인데, 해당하는 네트워크 주소(row 2)와 부합되지
않는다.
3. 세 째 목 적 지 주 소 에 마 스 크 (/24) 를 적 용 한 다 . 결 과 는
201.4.22.0인데, 해당하는 네트워크 주소와 부합된다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
32
Example 6.10
R1에 목적지 주소 18.24.32.78 를 가진 패킷이 도착했다면
포워딩 처리과정을 보이시오.
Solution
이번에는 목적지 주소에 모든 마스크를 적용하지만 부합되는
네트워크 주소를 찾지 못한다. 테이블의 맨 끝에 다다르면
모듈은 next-hop address 180.70.65.200 와 interface number
m2를 ARP(8장 참조)에게 보낸다. 이 패킷은 디폴트 라우터를
사용하여 외부 인터넷으로 보내는 패킷 일 것이다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
33
Example 6.11
이제 다른 유형의 예를 살펴보자. 만약 라우팅 테이블 내용을
알고 있다면 라우터의 네트워크 구성을 알아낼 수 있는가? router
R1의 라우팅 테이블은 Table 6.2 에 있다. 접속형태(topology)를
그릴 수 있는가?
Solution
라우팅 테이블 정보를 알고 있다 해도 정확한 접속형태를 모두
알 수는 없다. 분명한 것은 router R1에 3개의 인터페이스 m0,
m1, 와m2이 있다. 이는 3개의 네트워크가 router R1에 직접
연결되어 있다. 또, 2개의 네트워크가 R1에 간접적으로 연결되어
있다. Next-hop 열을 보면 적어도 R1외에 3개의 라우터가 있는
것이 분명하다. 네트워크 140.6.12.64은 router R3에 직접 또는
point-to-point network(WAN) 아 니 면 다 른 라 우 터 에
연결되어있는지 정확하게 알 수 없다. 다음 쪽 그림은 추축한
접속형태이다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
34
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
35
Guessed topology for Example 6.11
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
36
주소 집단화(Address aggregation)
 테이블 크기가 증가
하고 탐색시간 증가
를 완화
TCP/IP Protocol Suite
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
37
가장 긴 마스크 부합(Longest mask matching)
마스크 길이가 긴 것부터 부합 적용
TCP/IP Protocol Suite
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
38
라우팅
계층적 라우팅(Hierarchical Routing)
라우팅 테이블의 크기가 커지는 문제를 해결하기
위해 도입
인터넷을 백본, 지역, 로컬로 나누는 것처럼 계층구
조 개념 도입
지리적 라우팅(Geographical Routing)
국가간 라우팅을 위한 라우팅 테이블에 한 개의 엔
트리 사용
라우팅 테이블 탐색 알고리즘개선
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
39
Example 6.12
계층적 라우팅의 예로서 다음 쪽 그림을 생각해 보
자. 지역(regional) ISP는 주소 120.14.64.0로 시작하
는 16,384개의 주소를 할당받았다. 지역 ISP는 이 블
록을 각각 4096개의 주소를 갖는 4개의 서브블록으
로 나누었다. 이 중 3개는 local ISP에 할당하고s, 두
번째 블록은 나중에 사용하기 위해 예비용으로 두기
로 했다. 각 블록의 마스크는 원래의 블록 마스크 /18
을 4개로 나누었기 때문에 /20 이 되었다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
40
ISP가 갖는 계층적 라우팅
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
41
▣ 레이블 기반 포워딩
 라우팅을 교환(Switching)으로 대치하여 IP를
연결-지향 프로토콜처럼 동작
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
42
Example 6.13
다음 쪽 그림은 가장 긴 부합(longest match) 알고리
즘을 이용한 간단한 라우팅 테이블 탐색 예를 보여준
다. 오늘날, 보다 더 효율적인 알고리즘이 많이 있지
만, 원리는 같다. 포워딩 알고리즘이 패킷의 목적지
주소를 받으면, 마스크 열을 찾아보게 된다. 각 엔트
리에 대해, 목적지 네트워크 주소를 찾기 위해 마스크
를 적용한다. 부합되는 엔트리를 찾을 때까지 테이블
내의 네트워크 주소를 검사한다. 그런 다음 패킷을 다
음 홉으로 전달하기 위해 다음 홉 주소와 인터페이스
번호를 추출하여 ARP 프로토콜에 보내진다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
43
Example 6.13: 목적지 주소기반 포워딩
Destination
address
interface and
next-hop address
x
y
x
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
44
Example 6.14
다음 쪽 그림은 교환 테이블(switching table)에
접근하기 위해 레이블(label)을 이용한 간단한 예
를 보여준다. 레이블은 테이블에 있는 정보를 즉
시 찾기 위해 테이블에 대한 인덱스로 사용된다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
45
Example 6.14: 레이블 기반 포워딩
Switching Table
Label used
as index Interface Next label
0000
0001
0002
0003
0004
0012
2
0005
0006
Label
interface and
label address
1000
0
0004
Switch
1
2
Http://netwk.hannam.ac.kr
0012
HANNAM UNIVERSITY
46
MPLS(Multi-Protocol Label Switching)
1980년대 교환기술을 구현한 MPLS 라우터 개발
 라우터는 목적지 기반, 교환은 레이블 기반으로
패킷 포워딩
 이를 위해 새로운 헤더 추가
 IP 패킷에 추가된 MPLS 헤더
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
47
레이블의 스택으로 이루어진 MPLS header




레이블 : 20 비트, 라우팅 테이블 인덱스에 사용
Exp : 3 비트, 실험 목적 예약
S : 1 비트, 스텍내의 서브헤더 상황 정의(1:마지막)
TTL : 8 비트 필드, IP 데이그램의 TTL과 유사
 계층적 교환
 전통적인 계층적 라우팅과 유사
 패킷이 두 개의 레이블을 가진 경우, 상위는 조직 외부 교환기를 통하여 패킷
포워딩
 하위 레이블은 조직 내에서 패킷을 서브넷까지 전달 사용
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
48
6-3 라우터 구조
포워딩과 라우팅에 대한 설명에서, 러우터를 일력
포트(인터페이스) 중 하나로 들어오는 패킷을 받아서
라우팅 테이블을 사용하여 패킷이 나갈 출력 포트를
찾은 후에 이 출력 포트를 통하여 패킷을 내보내는
블랙박스로 표현하였다. 이 절에서, 블랙박스의
내부를 살펴보고자 한다. 그렇지만, 라우터에 관한
책들이 여러 권 출간되었으므로 자세한 설명은
피하고 대략적인 설명만 한다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
49
라우터 구성요소(Router components)
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
50
입력 포트(Input port)
라우터에서 물리 및 데이터 링크 계층 수행
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
51
출력 포트(Output port)
입력 포트와 같은 기능 수행, 수행 순서는 역
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
52
라우팅 처리기(Routing Processor)
네트워크 계층 기능 수행
목적지 주소를 이용, 다음 홉 주소를 찾고
패킷이 출력될 포트 번호 결정
교환 조직( switching Fabric)
라우터에서 가장 복잡한 기능 담당
패킷을 입력 큐에서 출력 큐로 이동
다양한 교환 조직 사용
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
53
크로스바 교환기(Crossbar switch)
각 접점(crosspoint)에서 micrpswitch사용
N개 입력과 m개 출력을 격자형태로 연결
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
54
배년 교환기(banyan switch)
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
55
▣ 배년 교환기 라우팅 예
도착한 패킷을 목적지 포트에 따라 정렬
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
56
배처-배년(Batcher-banyan) 교환기
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
57
알림
연습문제 풀이해서
Report로 다음주까지(일주일 후)
제출해 주세요!
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
58