Index
Search
1. IP
1.1. IP 개요
•
TCP/IP 기본 구조
•
IP
◦
인터넷 프로토콜. OSI 모델의 네트워크 계층의 기능
◦
사용자에게 복잡한 인터넷 개별 네트워크 구조를 숨겨 모든 호스트들을 연결하는 1개의 가상 네트워크로 보이도록 함
◦
네트워크 계층의 투명성을 제공함
1.2. 비연결형 서비스
•
인터넷 계층의 투명성
•
IP의 역할
◦
호스트의 주소 지정 및 데이터그램 전송
•
경유해야하는 데이터 링크 및 라우터 정보 무시
•
신뢰성 없는 데이터 전송
1.3. 데이터그램
•
IP 계층의 패킷
◦
32 Bit → 4 Byte (word), 헤더 - 총 6개의 word로 구성되어있음
•
헤더 부분 구성
◦
버전 (4비트)
▪
IP version 식별 번호
◦
헤더길이 (4비트)
▪
20~60 bytes
◦
서비스 유형 (8비트): QoS
▪
3개 비트: 우선순위
▪
4개 비트: 서비스 유형
•
0000: 기본
•
0001: 비용 최소
•
0010: 신뢰성 최대
•
0100: 처리량 최대
•
1000: 지연최소
•
1개비트: 사용 X
◦
전체 길이(16비트)
▪
데이터그램 길이
◦
식별자(16비트)
▪
데이터그램이 단편화 되었을때 각 단편은 동일한 식별자를 가짐
◦
플래그 (3비트)
▪
단편화 했냐 안했냐 판단
▪
1개 비트: 사용하지 않음
▪
1개 비트 (DF)
•
1: Don’t Fragment
•
0: Fragment
▪
1개 비트 (MF)
•
1: More Fragment
•
0: 마지막 단편, 유일한 단편
◦
단편 오프셋(13비트)
▪
메세지가 단편화 되었을 때 데이터그램 내의 데이터가 원래 메세지의 어느 위치에 있었는지 나타냄
◦
TTL (8비트)
▪
데이터그램이 폐기되기 전까지 활동 기간
▪
거쳐야하는 최대 라우터 수를 나타냄. 보통 두 호스트 사이의 라우터 수의 두배로 설정함
▪
라우터를 지날때마다 1씩 감소.
▪
0되면 폐기
◦
프로토콜 (8비트)
▪
상위 계층 프로토콜 식별
▪
1: ICMP
▪
6: TCP
▪
17: UDP
◦
헤더 검사합 (16비트)
▪
헤더만의 검사합
◦
발신자 IP 주소
◦
적지 IP 주소
◦
옵션
◦
패딩
1.4. IP 단편화 (Fragmentation)
•
IP 데이터그램의 분할
•
MTU (Maximum Transfer Unit)
◦
네트워크 링크에서 허용하는 프레임당 데이터 최대 길이
◦
Ethernet LAN: MTU = 1,500 byte
◦
CCIT X.25: MTU = 128 byte
•
IP 데이터그램은 전송 중 각 네트워크의 MTU에 적합한 크기로 분할되었다가 목적지 호스트에서 각 Fragment들을 재조립함
•
단편화 예시
1.5. 인터넷 상에서의 라우팅
•
IP 데이터그램이 목적이 호스트까지 진행하면서 경유할 경로를 결정하는 것
•
비교
◦
IP: 송신자, 수신자 그리고 그 사이의 경로 상에 있는 모든 라우터들이 IP 데이터그램 전달에 관여
◦
TCP: 송신자와 수신자만 TCP 세그먼트 전달에 관여
•
라우팅 테이블
◦
호스트는 자신의 물리적 네트워크에 연결된 라우터에 대한 정보를 자신의 라우팅 테이블에 관리
•
동일한 물리적 네트워크에서의 데이터그램 전송
우측 상단에 목적지 네트워크 주소는 오타. 163.100.21.33이어야함
•
다른 물리적 네트워크에서의 데이터그램 전송
2. 주소 변환 (ARP, RARP)
2.1. ARP
•
Address Resolution Protocol
•
상대방 호스트의 IP 주소는 알고 물리주소를 모를때 물리주소를 알기위해 사용
•
IP 주소를 물리주소로 매핑해주는 프로토콜
•
동적 바인딩
◦
ARP는 호스트의 IP 주소를 대응하는 물리주소로 변환하여 실제 데이터 통신이 가능하게 해줌
▪
IP 주소: 32비트 (4바이트) - IPv4
▪
물리주소: 48비트 (6바이트) - MAC 주소
◦
ARP 요청: broadcasting
▪
모든 호스트에게 다보냄 (호스트 A → every host)
◦
ARP 응답: unicasting
▪
응답이 온 호스트가 응답함 (호스트 B → A)
•
프록시 ARP
2.2. RARP
•
Reverse ARP
•
물리주소를 알고 IP 주소를 모르는 경우 사용
•
일반적으로는 호스트의 IP 주소는 디스크에 저장된 구성파일에서 확인
•
디스크가 없는 호스트는 물리주소만 알고 있으므로 이를 이용하여 IP 주소를 얻고자함
•
RARP 프로토콜
◦
RARP 요청 (broadcasting)
◦
RARP 응답 (unicasting)
3. ICMP
3.1. ICMP 프로토콜
•
Internal Control Message Protocol
•
인터넷 계층 프로토콜
•
전송 오류 제어
◦
IP는 비연결성 비신뢰성 전송 서비스 (실패 가능성 있음)
◦
IP는 데이터그램 전송의 오류가 발생 시 오류/제어 메세지 제공해주는 프로토콜
◦
IP 데이터그램의 전송과정에서 발생하는 오류를 라우터나 발신지 호스트에게 보고하는 매커니즘 제공
◦
IP의 전송 실패를 대신 처리해줌
3.2. ICMP 메세지
•
ICMP 메세지 형식
•
ICMP 메세지 유형
◦
오류 보고 메세지 (error reporting)
▪
ICMP는 오류를 수정하지 않고 단지 보고만 수행
▪
IP 주소를 이용하여 발신지에 오류 전송
◦
질의 메세지 (simple query)
▪
일부 네트워크의 문제를 진단
◦
종류
4. IGMP
4.1. IP 멀티캐스트
•
IGMP 정의
◦
Internal Group Management Protocol
◦
인터넷 계층 프로토콜
◦
인터넷에서 멀티캐스트 서비스를 위해 사용되는 프로토콜
◦
IP 호스트가 어떤 멀티캐스트 그룹에 참가하고 있는지를 멀티캐스트 라우터에 통보하는 프로토콜
•
Multicast
◦
하나의 그룹에 속한 호스트에게 메세지 전송 (1-to-many)
◦
cf) broadcast (1-to-all)
•
IP Multicast
◦
클래스 D 주소 사용
◦
주소 범위: 224.0.0.0 ~ 239.255.255.255
◦
예약된 멀티캐스트 주소
4.2. IGMP 메세지
•
IGMP 버전 2 메세지 형식
•
유형 (8비트)
◦
Query (general / special)
◦
Membership report
◦
Leave report
•
최대 응답시간 (8비트)
◦
질의에 응답해야하는 최대 허용시간
•
검사합 (16비트)
◦
전체 IGMP 메세지의 오류 검사
•
그룹 주소 (32비트)
◦
멀티캐스트 주소 (클래스 D IP 주소)
4.3. IGMP 프로토콜
•
IGMP 동작
◦
IGMP 보고 및 질의
5. DHCP
Dynamic Host Configuration Protocol
5.1. IP 주소 관리
•
IP 주소 관리 방법
◦
IP 주소 (32비트)
◦
기억하기 어려움 → IP 주소 관리 방법의 필요
▪
Host Table
▪
DNS (Domain Name System)
▪
BOOTP (Bootstrap Protocol)
▪
DHCP (Dynamic Host Configuration Protocol)
•
호스트 테이블
◦
모든 IP 주소와 맵핑되는 호스트 이름으로 구성된 테이블
◦
장점
▪
중앙집중형 관리 방식
▪
호스트 테이블 구조 간단
◦
단점
▪
호스트의 급속한 증가와 변화에 대응 어려움
•
매핑정보의 일관성 유지 어려움
▪
계층적 구조가 아닌 평면 구조
•
중복 정보 포함
•
DNS
◦
계층적 구조 및 분산 관리 특성
▪
예) knou.ac.kr
◦
분산 관리문제
▪
name sever는 특정 네트워크 영역만의 정보를 가지며 다른 영역에 대해서는 다른 name server 정보를 참조
◦
name server 데이터의 복잠성
▪
수작업에 의한 데이터 오류 가능성
•
BOOTP
◦
기존의 방식은 IP 주소를 수작업으로 할당 (정적 할당)
◦
BOOTP는 동적으로 IP 주소 할당
◦
디스크가 없는 호스트(X터미널)에 대해 주소 및 설정 정보를 자동적으로 할당하고 관리하는 프로토콜
•
DHCP
◦
응용계층 프로토콜
◦
BOOTP에서 발전된 동적 주소 할당 프로토콜로서 IP주소 사용이 가능
◦
DHCP 메세지 형식은 BOOTP와 동일
◦
동적 주소 할당 프로토콜
▪
IP 주소 pool에서 사용가능한 IP 주소를 선택하여 원하는 호스트에게 일정 기간 임대해줌
5.2. DHCP 메시지 형식
•
메시지 형식
5.3. DHCP 프로토콜
•
DHCP 네트워크의 구성
•
IP 주소 자동 할당
◦
DHCPDISCOVER
◦
DHCPOFFER
◦
DHCPREQUEST
◦
DHCPACK