제 7 장 인터넷 프로토콜 : IP 7.1 데이터그램 7.2 단편화 7.3 옵션 7.4 검사합 7.5 IP 설계 7.6 요약.

Slides:



Advertisements
Similar presentations
TCP / IP. TCP & UDP  TCP (Transmission Control Protocol) - Connection-Oriented Protocol - Error 체크기능 - Sequencing - Acknowledgments - Flow Control -
Advertisements

멀티미디어 서비스를 위한 IP 네트워크 순천향대학교 정보기술공학부 이 상 정
16장 X.25 패킷 교환망 16.1 X.25 계층 구조 16.2 패킷 계층 프로토콜 16.3 요약.
Chapter 7 ARP and RARP.
TCP/IP 통신망 특론 3장 인터넷프로토콜( IP ).
Internet Protocol Version4
Next Generation: IPv6 and ICMPv6
차세대 IPv6와 ICMPv 데이터그램 25.2 단편화 25.3 옵션 25.4 검사합 25.5 IP 설계
암호화 기술(SSL, IPSec) 손재성 권기읍 안복선 최준혁
3 장 OSI 기본 참조 모델 OSI : Open System Interconnection
제 1장 인터네트워킹.
20 장 네트워크층 프로토콜 : ARP, IPv4, ICMP, IPv6, ICMPv6
Internet Group Management Protocol (IGMP)
Delivery and Routing of IP Packets
제 9 장 ICMP 목원대학교 정보통신공학과 이 명 선.
Internet Control Message Protocol (ICMP)
제 7장 정적 라우팅 프로토콜.
24 장 TCP/IP 24.1 개요 24.2 네트워크층 24.3 주소 지정 24.4 서브넷팅틍
23 장 TCP/IP 23.1 개요 23.2 네트워크층 23.3 전송층 23.4 응용층 24.5 요약.
Internet Group Management Protocol (IGMP)
9장 데이터 링크층 개요 (Introduction To Data-Link Layer)
제 17 장 TCP : 전송 제어 프로토콜 정보통신연구실.
Internet Control Message Protocol Version 4 (ICMPv4)
PPP (Point-to-Point Protocol)
제 15 장 점 대 점 프로토콜 15.1 천이상태 15.2 PPP 계층 15.3 링크 제어 프로토콜 15.4 인증
UDP (User Datagram Protocol)
15장 X.25 패킷 교환망 15.1 X.25 계층 15.2 X.25와 관련된 기타 프로토콜 15.3 요약.
Access Control Lists Access Control List
IP.
Chapter 21 Network Layer: ARP, ICMP (IGMP).
제 19 장 TFTP 19.1 메시지 19.2 연결 19.3 데이터 전송 19.4 UTP 포트 19.5 TFTP 예제
TCP/IP 응용 프로그램에 적용 가능한 다양한 소켓 옵션을 이해하고 활용한다.
TCP/IP 통신망 특론 2장 Link Layer 컴퓨터 네트워크 실험실 이희규.
17장 X.25 패킷 교환망 17.1 X.25 계층 17.2 X.25와 관련된 기타 프로토콜 17.3 요약.
Chapter 19 솔라리스 네트워크 관리 Solaris1 . TCP/IP 개요
IP(Internet Protocol)
WOL(Wake-On Lan) 컴퓨터공학과 4학년 박기웅.
U D P 전공 : 정보보호 학번 : 이름 : 배 지 태.
TCP/IP 인터네트워킹 INTERNETWORKING with TCP/IP <vol
제 11 장 UDP 11.1 프로세스-대-프로세스 통신 11.2 사용자 데이터그램 11.3 검사합 11.4 UDP 동작
22 장 전송층(Transport Layer)
제 15 장 BOOTP와 DHCP BOOTP 15.2 동적 호스트 설정 프로토콜.
Transmission Control Protocol (TCP)
21 장 전송층(Transport Layer)
User Datagram Protocol (UDP)
TCP/IP 네트워크 구조 TCP/IP 개요 TCP/IP 프로토콜 한빛미디어(주).
9 TCP의 이해 학습 목표 전송 계층 프로토콜이 제공하는 기능을 이해한다.
Chapter 01. OSI 계층 모델.
TCP/IP TCP/IP의 이해 TCP UDP IP 한빛미디어(주).
Internet Protocol Objectives Chapter 8
팀 프로젝트 [데이터통신] 김진억 성보라 문제명 박상민 이혜영.
20 장 네트워킹과 인터네트워킹 장치 20.1 리피터(Repeaters) 20.2 브리지(Bridges)
2 네트워크 모델 학습 목표 모듈 개념을 알아보고 계층 구조의 필요성을 이해한다.
10 기타 전송 계층 프로토콜.
Chapter 26 IP over ATM.
제 11장 User Datagram Protocol(UDP)
Ping Test.
Chapter 27 Mobile IP.
통신프로토콜 전산정보학부 모바일인터넷과 권 춘 우
통신프로토콜 전산정보학부 모바일인터넷과 권 춘 우
Part TCP / IP 1. TCP / IP 프로토콜 2. 기본 프로토콜.
7 IP 프로토콜의 이해 학습 목표 네트워크 계층의 필요성과 역할을 이해한다.
제 13 장 인터넷 그룹 관리 프로토콜 정보통신연구실.
9 장 오류 검출 및 오류 정정 9.1 오류 종류 9.2 검출 9.3 오류 정정 9.4 요약.
제 9 장 ICMP 9.1 메시지 유형 9.2 메시지 형식 9.3 오류 보고 9.4 질의 9.5 검사합 9.6 ICMP 설계
제 6 장 IP 패킷 전달과 라우팅 6.1 연결형 서비스와 비연결형 서비스 6.2 직접 전달과 간접 전달 6.3 라우팅 방법
4. IP 데이터그램과 라우팅 (6장. 인터넷과 IP) IP 데이터그램 : 특정 물리망에 종속되지 않은 가상의 패킷 형식.
통신프로토콜 전산정보학부 모바일인터넷과 권 춘 우
ARP.
Presentation transcript:

제 7 장 인터넷 프로토콜 : IP 7.1 데이터그램 7.2 단편화 7.3 옵션 7.4 검사합 7.5 IP 설계 7.6 요약

인터넷 프로토콜(IP) TCP/IP에서 사용하는 전송 메커니즘 신뢰성 없는 비연결형 데이터그램 프로토콜 최선노력(best effort) 전달 서비스 오류 검사 및 추적 기능을 수행하지 않음 각 데이터그램은 독립적으로 처리 각 데이터그램은 서로 다른 경로로 전달될 수 있음 각 데이터그램은 순서가 바뀌어 전달될 수 있음

7.1 데이터그램(datagram) IP 계층의 패킷

IP 데이터그램 가변 길이 패킷 헤더와 데이터 부분으로 구성 헤더 : 20 ~ 60 바이트 길이, 라우팅과 전달에 필요한 정보 헤더 내의 필드 버전(Ver) - IP 프로토콜 버전(4비트) 헤더길이(HLEN) - 헤더의 전체 길이를 4 바이트 단위로 표시(4 비트)

IP 데이터그램(계속) 서비스 유형(Service type) - (8 비트) 라우터에 의해 처리하는 방법 3 bit는 우선 순위, 4 bit는 서비스 유형

IP 데이터그램(계속) 우선 순위(precedence) 3 bit(000 ~ 111) 버전 4에서는 사용하지 않음 혼잡과 같은 문제가 발생하였을 경우 데이터그램의 우선 순위 정의

IP 데이터그램(계속) TOS Bits Description 0000 Normal (default) TOS(type of service) 비트 서비스 유형 TOS Bits Description 0000 Normal (default) 0001 Minimize cost 0010 Maximize reliability 0100 Maximize throughput 1000 Minimize delay

IP 데이터그램(계속) 응용 프로그램들의 기본 서비스 유형 값 Protocol TOS Bits Description ICMP 0000 Normal BOOTP 0000 Normal NNTP 0001 Minimize cost IGP 0010 Maximize reliability SNMP 0010 Maximize reliability TELNET 1000 Minimize delay FTP (data) 0100 Maximize throughput FTP (control) 1000 Minimize delay TFTP 1000 Minimize delay SMTP (command) 1000 Minimize delay SMTP (data) 0100 Maximize throughput DNS (UDP query) 1000 Minimize delay DNS (TCP query) 0000 Normal DNS (zone) 0100 Maximize throughput

IP 데이터그램(계속) 전체 길이(total length) 16 bit 필드(65,535 까지 표현) 데이터 길이 = 전체 길이 – 헤더 길이 이더넷 프레임에서 작은 데이터그램의 캡슐화

IP 데이터그램(계속) 식별(Identification) – 단편화에 사용 플래그(flag) – 단편화에 사용 단편 옵셋(fragmentation offset) – 단편화에 사용 수명(time to live) – 데이터그램의 수명

IP 데이터그램(계속) 프로토콜(protocol) – IP 계층의 서비스를 사용하는 상위 계층 프로토콜 검사합(checksum) – 오류 확인 발신지 주소 (source address) 목적지 주소 (destination address) OSPF 89 IPv6 41 UDP 17 EGP 8 TCP 6 IGMP 2 ICMP 1 protocol address

7.2 단편화 네트워크가 사용하는 프로토콜에 따라 프레임 형식과 크기가 서로 다르다 각 네트워크에서 전달되는 최대 전송 길이를 MTU (Maximum Transfer Unit) 라고 함 MTU 길이에 따라 나누어 보내는 것을 단편화 (fragmentation) 라고 함

단편화(계속) MTU(Maximum Transfer Unit)

단편화(계속) 서로 다른 네트워크의 MTU Protocol MTU Hyperchannel 65,535 Token Ring (16 Mbps) 17,914 Token Ring (4 Mbps) 4,464 FDD 4,352 Ethernet 1,500 X.25 576 PPP 296

단편화(계속) 단편화와 관련된 필드 식별자(identification) – 단편들은 같은 식별자 값을 가짐 플래그(flag) – 3 비트 필드

단편화(계속) 단편화 옵셋(Fragmentation offset) : 13 비트 필드 전체 데이터그램에서 단편의 상대적인 위치(8 바이트 단위) 단편화 예

단편화(계속) 상세한 단편화 예

7.3 옵션 IP 데이터그램 헤더 내의 가변 부분(최대 40바이트) 옵션 형식

옵션(계속) 코드 필드(8 비트) : 고정 길이 길이 필드(8 비트) : 고정길이 데이터 필드 : 가변 길이 복사(copy) 단편화에 옵션을 포함시킨 것인지 제어 클래스(class) 옵션의 목적을 나타냄 번호(number) 옵션 유형 길이 필드(8 비트) : 고정길이 옵션의 전체 길이 데이터 필드 : 가변 길이

옵션(계속) 옵션 유형

옵션(계속) 무연산(No Operation) 옵션 사이의 여백을 채워줌(1byte option)

옵션(계속) 종료 옵션(End of Option) 옵션 필드의 패딩 목적으로 사용 (1byte option)

옵션(계속) 경로 기록(Record Route) 옵션 데이터그램을 처리한 인터넷 라우터들 기록

옵션(계속) 데이터그램이 라우터를 경유하여 이동하는 과정

옵션(계속) 엄격한 발신지 경로(Strict Source Route) 옵션 데이터그램이 거쳐야할 경로를 미리 지정하기 위해 사용 데이터그램은 옵션에 정의된 모든 라우터 방문

옵션(계속) 엄격한 발신지 경로 개념

옵션(계속) 느슨한 발신지 경로(Loose Source Route) 옵션 엄격한 발신지 경로와 비슷하지만 리스트에 없는 라우터도 방문 가능

옵션(계속) 타임스탬프(Timestamp) 옵션 라우터가 데이터그램을 처리하는 시간 기록 세계 표준시 이용 millisecond 단위 표시

옵션(계속) 타임스탬프에서 플래그 사용

옵션(계속) 타임스탬프 개념

7.4 검사합 TCP/IP 프로토콜에 의해 사용되는 오류 검출 방법

검사합(계속) 1의 보수를 이용한 검사합

검사합(계속) IP 패킷의 검사합 예

7.5 IP 설계 IP 구성 요소 헤더 추가 모듈 처리 모듈 큐 라우팅 테이블 라우팅 모듈 MTU 테이블 단편화 모듈 재조립 모듈

IP 설계(계속) IP 구성 요소

IP 설계(계속) 헤더 추가 모듈(Header-Adding Module) 알고리즘 Receive: data, destination address 1. Encapsulate the data in an IP datagram. 2. Calculate the checksum and insert it in the checksum field. 3. Send the data to the corresponding input queue. 4. Return.

IP 설계(계속) 처리 모듈(Processing Module) 알고리즘 Processing Module 1. Remove one datagram from one of the input queues. 2. If (destination address is 127.X.Y.Z or matches one of the local addresses) 1. Send the datagram to the reassembly module. 2. Return. 3. If (machine is a router) 1. Decrement TTL. 4. If (TTL less than or equal to zero) 1. Discard the datagram. 2. Send an ICMP error message. 3. Return. 5. Send the datagram to the routing module. 6. Return.

IP 설계(계속) 큐(Queue) – 입/출 큐 라우팅 테이블 : 패킷의 다음 홉 주소 결정하기 위해 라우팅 모듈이 사용 라우팅 모듈 : 6장 참조 MTU 테이블 : 단편화 모듈이 특정 인터페이스의 MTU를 찾기 위해 사용

IP 설계(계속) 단편화 모듈(Fragmentation Module) Receive: an IP packet from routing module 1. Extract the size of the datagram. 2. If (size > MTU of the corresponding network) 1. If (D (do not fragment) bit is set) 1. Discard the datagram. 2. Send an ICMP error message 3. Return. 2. Else 1. Calculate the maximum size. 2. Divide the datagram into fragments. 3. Add header to each fragment. 4. Add required options to each fragment. 5. Send the datagrams. 6. Return. 3. Else 1. Send the datagram. 4. Return.

IP 설계(계속) 재조립 테이블(Reassembly table) 재조립 모듈에 의해 사용 재조립 테이블

IP 설계(계속) 재조립 테이블 필드 상태(state) : FREE 또는 IN-USE IP 주소 : 발신지 주소 데이터그램 ID : 단편을 구분하는 번호 타임 아웃 : 단편이 도착해야 하는 시간 단편 : 연결 리스트의 포인터

IP 설계(계속) 재조립 모듈(Reassembly Module) Receive: an IP datagram from the processing module 1. If (offset value is zero and the M bit is 0) 1. Send the datagram to the appropriate queue. 2. Return. 2. Search the reassembly table for the corresponding entry. 3. If (not found) 1. Create a new entry.

IP 설계(계속) 재조립 모듈(Reassembly Module) (계속) 4. Insert the fragment at the appropriate place in the link list. 1. If(all fragments have arrived) 1. Reassemble the fragments. 2. Deliver the datagram to the corresponding upper layer protocol. 3. Return. 2. Else 1. Check the time-out. 2. If(time-out expired) 1. Discard all fragments. 2. Send an ICMP error message(see chapter 9). 5. return

7.6 요약