Transcript Document

Chapter 8
주소 변환
프로토콜(ARP)
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
1
▣ 학습목표(OBJECTIVES):
 논리 주소 (IP 주소)와 물리 주소 (MAC 주소)간의 차이점을 이해
 논리 주소가 물리 주소로 변환하는 방법인 정적(static) 과
동적(dynamic) 방법에 대해 설명
 ARP (address resolution protocol )에 의하여 논리 주소가
동적으로 물리 주소로 변환하는 방법 설명
 서브넷팅 효과를 얻기 위해 프록시(proxy) ARP를 사용하는 방법
 기반 네트워크가 ATM WAN 인 경우 ATMARP를 사용하여 IP
주소를 변환하는 방법 설명
 ARP 소프트웨어가 5개의 구성요소로 되어있음을 보여줌
 ARP 소프트웨어 패키지에서 사용된 각 모듈에 대해 pseudocode
를 보여줌
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
2
Chapter
Outline
8.1 주소 변환(Address Mapping)
8.2 ARP Protocol
8.3 ATM ARP
8.4 ARP Package
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
3
8-1 주소 변환(ADDRESS MAPPING)
호스트나 라우터로 패킷을 전달하기 위해서는 두
레 벨 의 주 소 지 정 이 필 요 하 다 : 논 리 (logical) 와
물리(physical). 따라서, 논리 주소를 대응하는 물리
주소로 또는 그 반대로 변환하는 기능이 필요하다.
이것을 정적(static) 또는 동적(dynamic) 변환으로
가능하다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
4
▣ 인터넷에서 사용하는 주소
1. 논리 주소(logical address)
호스트나 라우터가 사용하는 네트워크 레벨 주소
전세계적으로 유일한 주소
IP 주소
32 비트 길이
2. 물리 주소(physical address)
로컬 네트워크에서 유효한 주소
로컬 주소(local address)
로컬에서만 유일하면 됨
보통 하드웨어로 구현
호스트나 라우터내에 설치된 NIC에 들어 있음
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
5
▣ 인터넷에서 사용하는 주소
정적 변환(static mapping)
논리 주소와 물리 주소 연관 테이블 생성
네트워크상의 각 시스템에 저장
필요시 테이블 검색
물리 주소가 변경될 경우 정적 테이블의 주기적인
갱신으로 인한 오버헤드
(NIC 변경, 이동 컴퓨터의 네트워크 이동 등)
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
6
▣ 인터넷에서 사용하는 주소
동적 변환(dynamic mapping)
물리 주소와 논리 주소 쌍 중 하나만 알면 프로토콜
을 이용하여 다른 하나를 알아냄
ARP : 논리 주소를 물리 주소로 변환
RARP : 물리 주소를 논리 주소로 변환
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
7
▣ 인터넷에서 사용하는 주소
 ARP와 RARP
 Address Resolution Protocol
 Reverse Address Resolution Protocol:현재 사용하지 않음
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
8
8-2 ARP 프로토콜
어떤 호스트나 라우터가 다른 호스트나 라우터에 보낼 IP
데이터그램을 가지고 있다면 송신자는 수신자의 논리주소인 IP
주소를 가지고 있다. 그러나 IP 데이터그램은 물리 네트워크를
통과하기 위해 프레임으로 캡슐화되어야 한다. 즉, 송신자는
수신자의 물리 주소를 알아야 한다. 변환(mapping)이란 논리
주소를 물리 주소로 변환하는것이다. ARP는 IP 프로토콜로부터
논리 주소를 받아 이를 해당하는 물리 주소로 변환한 후
데이터링크계층에 전달한다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
9
TCP/IP 프로토콜에서 ARP의 위치
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
10
ARP 동작
TCP/IP Protocol Suite
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
11
ARP 패킷
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
12
▣ ARP 패킷
 Hardware type : 네트워크 유형 정의(이더넷 : 1)
 Protocol type : 프로토콜 정의(IPv4 : 080016)
 Hardware length : 물리 주소의 바이트 단위 길이
 Protocol length : 논리 주소의 바이트 단위 길이
 Operation : 패킷 유형-ARP 요청(1), ARP 응답(2)
 Sender hardware address : 송신자 물리 주소
 Sender protocol address : 송신자 논리 주소
 Target hardware address : 타깃 물리 주소
 Target protocol address : 타깃 논리 주소
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
13
ARP 패킷 캡술화
Type: 0x0806
Preamble
and SFD
Destination
address
Source
address
Type
8 bytes
6 bytes
6 bytes
2 bytes
Http://netwk.hannam.ac.kr
Data
CRC
4 bytes
HANNAM UNIVERSITY
14
Note
An ARP request is broadcast;
an ARP reply is unicast.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
15
▣ ARP 동작
 ARP 프로세스의 캡슐화 동작 과정
1. 송신자는 타깃 IP 주소를 알고 있다
2. IP가 ARP에게 ARP 요청 메시지 생성 요청
(송신자 물리 주소, IP 주소; 타깃 IP 주소, 물리 주소(O))
3. 데이터링크층에 전달되면 발신지 주소는 송신자
의 물리주소, 목적지 주소는 물리 브로드캐스트 주
소로 하는 프레임에 캡슐화
4. 모든 호스트나 라우터가 프레임을 수신하여 자신
의 ARP에 전달
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
16
▣ ARP 동작
5. 타겟 시스템을 자신의 물리 주소를 포함한 ARP 응
답 메시지 송신(유니케스트)
6. 송신자는 응답 메시지를 받고 타겟 시스템의 물리
주소를 알게 된다
7. IP 데이터그램은 프레임으로 캡슐화 되어 목적지
에 유니캐스트
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
17
▣ ARP가 사용되는 4가지 case
1. 송신자가 호스트로서 같은 네트워크상에 다른 호스
트에 패킷 전송(논리주소는 목적지 IP주소)
2. 송신자가 호스트이고 다른 네트워크상에 있는 다른 호스
트에게 패킷 전송(논리 주소는 라우터의 IP 주소)
3. 송신자는 다른 네트워크상에 있는 호스트로 가는 데
이터그램을 수신한 라우터(논리 주소는 다음 홉 라
우터의 IP 주소)
4. 송신자는 같은 네트워크 상에 있는 호스트로 가는 데이
터그램을 수시한 라우터(논리 주소는 목적지 IP 주소)
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
18
ARP가 사용되는 4가지 경우
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
19
Example 8.1
IP 주소가 130.23.43.20이고 물리주소가 B2:34:55:10:22:10인
호 스 트 가 IP 주 소 가 130.23.43.25 이 고 물 리 주 소 가
A4:6E:F4:59:83:AB인 호스트에게 보낼 패킷을 가지고 있다. 두
호스트는 같은 이더넷 네트워크에 있다. 이더넷 프레임에
캡슐화된 ARP 요청(request)과 응답(reply) 패킷을 보여라.
Solution
다음 쪽 그림은 ARP 요청과 응답 패킷을 보여준다. 이 경우 ARP
데이터 필드는 28 바이트이고 각 주소는 4 바이트 경계에 맞지
않는다. 이것이 주소를 위한 4 바이트 경계에 맞지 않는
이유이다. IP 주소는 16 진수로 나타나 있다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
20
Example 8.1
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
21
Proxy ARP
 서브넷팅 효과를 얻기 위해 사용
Request
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
22
8-3 ATM ARP
7장에서 ATM 상의 IP에 대해 설명하였다. IP 패킷이
ATM
WAN을 통과하는 경우, ATM WAN 내 진출점 라우터의 물리
주소를 찾기 위해 프로토콜이 필요하다. 이는 LAN에서
ARP에 의해 수행되는 작업과 동일하다. 그렇지만, LAN과
ATM 네 트 워 크
사 이 의
차 이 점 이
있 다 . LAN
데이터링크계층에서 브로드캐스트 네트워크이고; ARP는
ARP 요구를 전송하기 위해 LAN의 브로드캐스트 기능을
이용한다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
23
ATM ARP 패킷
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
24
▣ ATMARP 패킷 형식
 Hardware type : 네트워크 유형 정의(ATM: 1316)
 Protocol type : 프로토콜 정의(IPv4 : 080016)
 Hardware length : 물리 주소의 바이트 단위 길이
 operation : 패킷 유형- 표 8.1 참조
 Sender Protocol Length: 프로토콜 주소 길이(IPv4: 4)
 Target Hardware Length: 수신자 물리주소 길이(ATM:20)
 Target Protocol Length: 프로토콜 주소 길이(IPv4: 4)
 Sender hardware address : 송신자 물리 주소(ATM: 20)
 Sender protocol address : 송신자 논리 주소
 Target hardware address : 타깃 물리 주소
 Target protocol address : 타깃 논리 주소
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
25
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
26
▣ ATMARP 동작-두 라우터 연결
1. PVC(Permanent Virtual Circuit) 연결
 네트워크 사업자에 의해 두 종단 사이에 설정
 VPI와 VCI가 영구적인 연결위해 정의
 이 값들은 각 교환기의 테이블에 입력
 ATMARP 서버 필요 없음
 회선이 설정되면 라우터는 물리주소를 IP주소와 결합 필요
 인버스 요청 메시지와 인버스 응답 메시지 이용
 교환 뒤에 양 라우터는 물리주소를 PVC에 테이블 항목 추가
 다음 쪽 그림 참조
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
27
Note
The inverse request and inverse
reply messages can bind the
physical address to an IP
address in a PVC situation.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
28
PVC 결합(Binding)
Two routers connected through PVC
ATM
I
II
III
1
Inverse Reque
st
Inverse Reply
time
Http://netwk.hannam.ac.kr
2
time
HANNAM UNIVERSITY
29
▣ ATMARP 동작-두 라우터 연결
1. SVC(Switched Virtual Circuit) 연결
 라우터가 다른 라우터(컴퓨터)와 연결생성을 원할 때마다 새
로운 가상회선 살정
 가상회선은 진입점 라우터가 진출점 라우터 물리주소를 아
는 경우만 연결 생성
 각 라우터는 클라이언트 ATMARP 프로그램 동작
 다음 쪽 그림 참조
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
30
ATMARP 결합(Binding)
ATMARP
Server
Entering-point
router
I
ATM
II
III
Exiting-point
router
Using PVC or SVC
connection
1
Request
Reply
or
NACK
Time
Http://netwk.hannam.ac.kr
2
2
Finding physical
address
Time
HANNAM UNIVERSITY
31
▣ 가상연결 설정 단계
1. 서버에 연결하기
보통은 각 라우터와 서버 사이에 PVC 존재
없으면 SVC 연결 위해 라우터의 물리주소를 알아야 함
2. 물리주소 받기
진입점 라우터와 서버 사이에 연결이 있을 때
ATMARP 요청을 서버에게 보냄
서버는 찾으면 ATMARP 응답을 보냄
3. 가상회선 설정하기
진입점 라우터가 진출점 라우터와 SVC 요청(물리
주소 사용)
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
32
Note
The request and reply message can be
used to bind a physical address to an
IP address in an SVC situation.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
33
▣ 테이블 만들기
ATM 서버가 맵핑 테이블 만드는 방법
ATMARP와 두 개의 인버스 메시지(요청과 응답) 사용
라우터가 ATM 네트워크에 처음 연결되고 영구가
상회선이 라우터와 서버 사이에 설정되면 서버는
라우터에 인버스 요청 메시지 보냄
라우터는 자신의 IP 주소와 물리 주소를 포함한 인
버스 응답 메시지로 응답
두 주소를 사용하여 서버는 라우팅 테이블에 추가
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
34
테이블 만들기
ATMARP
server
ATM
A newly connected
router
I
II
III
1
t
Inverse reques
2
Time
Http://netwk.hannam.ac.kr
Inverse reply
Time
HANNAM UNIVERSITY
35
Note
The inverse request and inverse reply
can also be used to build the
server’s mapping table.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
36
Figure 8.12
Http://netwk.hannam.ac.kr
LIS
HANNAM UNIVERSITY
37
▣ LIS(Logical IP Subnet)
대규모 ATM 네트워크도 논리적(물리적이 아
님) 서브네트워크로 나눌 수 있다
B, C, D 하나의 논리적 서브넷
F, G, H 하나의 논리적 서브넷
A, E 는 양쪽 서브넷에 속함
서로 다른 서브넷에 속한 라우터끼리 통신시에는
반드시 A나 E를 통해서 가능
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
38
Note
LIS allows an ATM network to be divided
into several logical subnets.
To use ATMARP, we need a separate
server for each subnet.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
39
8-4 ARP PACKAGE
이 절에서, 간단화된 ARP 소프트웨어 패키지 예를
보인다. 목적은 가상적 ARP 패키지의 구성요소와
구성요소들간의 상호작용을 보이는 것이다. 다음 쪽
그림은 이들 구성요소와 상호작용을 보여준다. ARP
패키지는 5개의 구성요소로 구성되어있는데, 이는
cache
table,
queues,
output
module,
input
module, cache-control module 이다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
40
ARP 구성요소
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
41
▣ ARP 패키지
캐쉬 테이블
송신자가 같은 목적지에 여러 개의 IP 데이터그램을 보낼 때
매번 ARP 프로토콜을 사용하는 것은 비 효율적
호스트나 라우터가 IP 데이터그램에 해당되는 물리 주소를
수신하면 캐쉬 테이블에 저장
그런 다음 같은 수신자로 보내지는 데이터그램에 사용
테이블의 용량은 한정되어 무한정 유지될 수 없음
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
42
▣ ARP 패키지
 캐쉬 테이블의 엔트리 구성
 상태(State) : FREE, PENDING, RESOLVED
 하드웨어 유형(Hardware type) :
 하드웨어 길이(Hardware length) :
 프로토콜 길이(Protocol length) :
 인터페이스 번호(Interface number) :
 큐 번호(Queue number) :
 시도(Attempt) : ARP 요청 횟수
 타임아웃(Time-out) : 엔트리 수명
 하드웨어 주소(Hardware address) : 목적지 하드웨어 주소
 프로토콜 주소(Protocol address) : 목적지 IP 주소
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
43
출력 모듈
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
44
입력 모듈
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
45
캐쉬-제어 모듈
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
46
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
47
예에 사용되는 초기 캐쉬 테이블
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
48
Example 8.2
ARP 출력 모듈은 IP 계층으로부터 목적지 주소가 114.5.7.89인
데이터그램을 수신한다. 케쉬 테이블을 확인한 결과 이 주소를
위한 엔트리가 RESOLVED 상태(테이블의 R)임을 알 수 있다.
하드웨어 주소 457342ACAE32를 꺼내어, 패킷과 이 주소를
데이터 링크층에 전달한다. 캐쉬 테이블은 변화가 없다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
49
Example 8.3
20초 후에, ARP 출력 모듈은 IP 계층으로부터 목적지 주소가
6.1.7.22인 IP 데이터그램을 받는다. 캐쉬 테이블을 확인한 결과
이 목적지에 해당하는 엔트리가 없음을 알 수 있다. 모듈은 새
엔트리를 테이블에 추가하고 이 엔트리의 상태를 PENDING으로
설정한 후 시도 값을 1로 설정한다. 그런 다음, 모듈은 이
목적지에 해당하는 새로운 큐를 만들고 패킷을 이 큐에 넣는다.
그 다음에 이 목적지를 위해 데이터링크층에 ARP 요청을
보낸다. 새로운 캐쉬 테이블은 Table 8.6에 나타나 있다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
50
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
51
Example 8.4
15 초 후 , ARP 입 력 모 듈 은 타 깃 프 로 토 콜 (IP) 주 소 가
188.11.8.71 인 ARP 패 킷 을 수 신 하 였 다 . 모 듈 은 테 이 블 을
검사하고 이 주소가 있음을 확인한다. 엔트리에 대한 상태를
RESOLVED로 바꾸고 time-out 값을 900으로 설정한다. 모듈은
엔 트 리 에 대 한 타 깃 하 드 웨 어 주 소 (E34573242ACA) 를
삽입한다. 큐 18에 접근하여, 이 큐에서 기다리고 있는 모든
패킷을 데이터링크층에 하나씩 보낸다. 새로운 캐쉬 테이블은
표 8.7과 같다.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
52
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
53
Example 8.5
25초 후에, cache-control 모듈은 모든 엔트리를 갱신한다. 처음
세 개의 resolved 엔트리의 타임아웃 값을 60씩 감소한다. 마지막
resolved 엔트리에 대한 타임아웃 값은 25만큼 감소한다. 마지막
엔트리 바로 위의 엔트리에 대한 상태는 타임아웃이 zero이므로
상태를 FREE로 바꾼다. 세 개의 pending 엔트리 각각에 대해
시도 필드 값을 1씩 증가시킨다. 증가시킨 후에, 한 엔트리(IP
주소가 201.11.56.7인)의 시도 값이 최대치이므로; 상태를
FREE로 바꾸고, 큐는 제거된다, 그리고 ICMP 메시지가 원래의
목적지에 보내진다 (9장 참조). 표 8.8을 보라.
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
54
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
55
알림
연습문제 풀이해서
Report로 다음주까지(일주일 후)
제출해 주세요!
Http://netwk.hannam.ac.kr
HANNAM UNIVERSITY
56