1
OSI 참조 모델과 TCP/IP
2003. 3.
Chapter 1:
TCP/IP 프로토콜 분석 및 네트워크 프로그래밍
제1장 OSI 참조 모델과 TCP/IP 2
프로토콜 (Protocol)
표준화된 통신 규약
장치간의 정보를 송수신하기 위한 협정
무전기의 예 Over: 송신 완료 통지 Roger: 수신 완료 통지
제1장 OSI 참조 모델과 TCP/IP 3
OSI 참조 모델
목표 이기종 컴퓨터 간에도 통신이 가능한 개방형 시스템
상호 접속 모델 제시
표준화 기관 ISO(International Organization for Standardization) ITU(International Telecommunication Union)
제1장 OSI 참조 모델과 TCP/IP 4
OSI 참조 모델
응용 계층
표현 계층
세션 계층
전송 계층
네트워크 계층
데이터링크 계층
물리 계층
응용 계층
표현 계층
세션 계층
전송 계층
네트워크 계층
데이터링크 계층
물리 계층
네트워크 계층
데이터링크 계층
물리 계층물리계층 프로토콜
데이터링크계층프로토콜
네트워크계층프로토콜
물리계층 프로토콜
데이터링크계층프로토콜
네트워크계층프로토콜
전송계층 프로토콜
세션계층 프로토콜
표현계층 프로토콜
응용계층 프로토콜
Upper Layers
Lower Layers
전송 매체 전송 매체
IMB PC MacintoshRouter
Internet
제1장 OSI 참조 모델과 TCP/IP 5
OSI 참조 모델에서의 정보 교환
L2
L3
L4
L5
L6
L7
L1
L7 데이터
L7 데이터 H6
L6 데이터 H5
L5 데이터 H4
L4 데이터 H3
L3 데이터 H2
1 0 1 0 0 0 1 … 0 0 0 1 0
T2 L2
L3
L4
L5
L6
L7
L1
근원지 목적지라우터
Internet
L2
L3
L1
정보의 흐름
L7 데이터
L7 데이터 H6
L6 데이터 H5
L5 데이터 H4
L4 데이터 H3
L3 데이터 H2
1 0 1 0 0 0 1 … 0 0 0 1 0
T2
제1장 OSI 참조 모델과 TCP/IP 6
OSI 계층별 기능: 물리 계층
물리 계층의 기능 정보를 물리적인 전송 매체(구리선, 동축케이블, 광케
이블 등)를 통해 전송 기계적, 전기적, 기능적, 절차적 규격
L2 데이터
1 0 1 0 1 0 0 0 1 1 0 1물리계층
데이터링크계층
L2 데이터
1 0 1 0 1 0 0 0 1 1 0 1물리계층
데이터링크계층
전송매체 : SAP(Service Access Point)
제1장 OSI 참조 모델과 TCP/IP 7
OSI 계층별 기능: 데이터 링크 계층
데이터 링크 계층의 기능 인접 통신 장치간의 신뢰성 있는 정보 전송 보장 프레임 수신 확인, 프레임화, 동기화, 순서제어, 매체
접근제어, 흐름제어, 에러제어, 물리 주소 지정
L3 데이터
1 0 1 0 1 0 0 0 1 1 0
데이터링크계층
1 0 1 0 1 0 0 0 1 1 0
데이터링크계층
: SAP(Service Access Point)
T2 H2
L3 데이터
물리계층
네트워크계층
L3 데이터T2 H2
L3 데이터
물리계층
네트워크계층
제1장 OSI 참조 모델과 TCP/IP 8
OSI 계층별 기능: 네트워크 계층
네트워크 계층의 기능 여러 네트워크를 거쳐 데이터를 전송 라우팅, 스위칭 기능 제공
: SAP(Service Access Point)
L4 데이터
L3 데이터
네트워크계층
H3
L4 데이터
데이터링크계층
전송계층
L4 데이터
L3 데이터
H3
L4 데이터
네트워크계층
데이터링크계층
전송계층
제1장 OSI 참조 모델과 TCP/IP 9
OSI 계층별 기능: 전송 계층
전송 계층의 기능 근원지에서 송신한 데이터를 목적지까지 전달 종단간 프로세스간 투명한 데이터 전송 보장
L4 데이터
전송계층
H4
L5 데이터
네트워크계층
세션계층
H4 H4
L4 데이터
L4 데이터
L4 데이터
전송계층
H4
L5 데이터
네트워크계층
세션계층
H4 H4
L4 데이터
L4 데이터
제1장 OSI 참조 모델과 TCP/IP 10
OSI 계층별 기능: 세션 계층
세션 계층의 기능 사용자 위주의 논리적인 연결 서비스 제공 전이중(full-duplex), 반이중(half-duplex), 단방향
(simplex) 전송 모드
L5 데이터
세션계층
H5
L6 데이터
전송계층
표현계층
syn syn syn
L5 데이터
세션계층
H5
L6 데이터
전송계층
표현계층
syn syn syn
제1장 OSI 참조 모델과 TCP/IP 11
OSI 계층별 기능: 표현 계층
표현 계층의 기능 정보의 코드화 체계를 통일 데이터의 압축/압축 해제
L6 데이터
표현계층
H6
L7 데이터
세션계층
응용계층
암호화,압축된 데이터
L6 데이터
표현계층
H6
L7 데이터
세션계층
응용계층
암호화,압축된 데이터
제1장 OSI 참조 모델과 TCP/IP 12
OSI 계층별 기능: 응용 계층
응용 계층의 기능 사용자 인터페이스 제공 웹, 전자우편, 원격파일 접근, 디렉토리 서비스…
응용계층
L7 데이터
응용계층
L7 데이터
제1장 OSI 참조 모델과 TCP/IP 13
네트워크의 분류
거리에 의한 분류 근거리 통신망 (LAN: Local Area Network) 대도시 통신망 (MAN: Metropolitan Area Network) 광역 통신망 (WAN: Wide Area Network)
주요 LAN 구축 기술 Ethernet, Fast Ethernet, Gigabit Ethernet…
주요 WAN 구축 기술 PSTN, PSDN, Frame Relay, ISDN, Leased line…
제1장 OSI 참조 모델과 TCP/IP 14
토폴로지 (Topology)
버스(bus) 토폴로지
: 노드 : 링크
링(ring)토폴로지
스타(star)토폴로지
계층적 트리(tree)토폴로지
메시(mesh)토폴로지
네트워크를 구성하는 노드와 노드들간의 연결 상태에 대한 기하학적 배치
제1장 OSI 참조 모델과 TCP/IP 15
TCP/IP 프로토콜 집합
TCP/IP Protocol suite 인터넷 표준 프로토콜 계층 구분이 OSI 참조 모델과 정확히 일치하지 않음. TCP, IP 및 UDP, ARP, ICMP, SMTP등 다양한 프로토
콜의 집합체
애플리케이션 계층(Application Layer)
트랜스포트 계층(Transport Layer)
네트워크 계층(Network Layer)
네트워크 인터페이스 계층(Network Interface Layer)
TCP/IP 프로토콜 계층
Telnet FTP SMTP DNS SNMP
TCP UDP
IP, ARP, ICMP, IGMP
Ethernet Token Ring Frame Relay ATM
TCP/IP 프로토콜 집합
제1장 OSI 참조 모델과 TCP/IP 16
TCP/IP 프로토콜 계층
네트워크 인터페이스 계층 OSI 7계층의 데이터 링크 계층과 물리 계층에 해당 Ethernet, Token ring, 무선 LAN, X.25, Frame relay…
인터넷 계층 OSI 7계층의 네트워크 계층에 해당 IP, ARP, ICMP, IGMP…
전송 계층 OSI 7계층의 전송 계층에 해당 TCP, UDP
응용 계층 OSI 7계층의 세션, 표현, 응용 계층에 해당 HTTP, FTP, SMTP, Telnet…
OSI 7 계층 TCP/IP 프로토콜 계층
인터넷계층
네트워크인터페이스계층
트랜스포트계층
애플리케이션계층
물리계층
데이터링크계층
네트워크계층
트랜스포트계층
세션계층
프레젠테이션계층
애플리케이션계층
제1장 OSI 참조 모델과 TCP/IP 17
물리 주소 표현
0000 0000 0100 0000 1101 0000 0001 0101 1000 0001 1100 0101
Universally/locally administered bit
MAC 주소(16진수 표현) : 00-40-D0-15-81-C5
제조회사 식별번호 카드의 일련번호
Intel: 00-A0-C9 3Com: 00-50-DA Realtek: 00-40-D0
대표적인 제조회사 식별 번호의 예
1 24 25 48
물리 주소란? 데이터링크계층의 MAC 계층에 의해 사용되는 48비트의 하드웨어
주소
제1장 OSI 참조 모델과 TCP/IP 18
IP 주소 표현
1 8 9 16 17 24 25 32
네트워크 ID 호스트 ID
네트워크 ID
네트워크 ID
호스트 ID
호스트 ID
0
1 0
1 1 0
멀티케스트 주소(multicast address)1 1 01
장래 사용 예정(reserved for future use)1 1 1 1
Class A
Class B
Class C
Class D
Class E
네트워크 ID 호스트 ID클래스 종류
32 비트
IP 주소의 구조 32비트로 구성, 10진 도트표기법 사용
논리적인 네트워크 규모에 따라 클래스 별로 IP 주소 부여
제1장 OSI 참조 모델과 TCP/IP 19
포트 주소 (포트 번호)
목적 멀티프로세싱 시스템에서 통신하는 프로세스를
구분하기 위해 사용되는 16bit 크기의 번호
종류 공인 포트(Well-known port) 등록된 포트 (Registered port) 동적 포트 (Dynamic port)
제1장 OSI 참조 모델과 TCP/IP 20
서브넷팅 (Subnetting)
165.229.1.0
서브네트워크
165.229.1.20
165.229.1.27
165.229.1.100
165.229.3.0
서브네트워크
165.229.3.50165.229.3.29
165.229.3.140
165.229.46.0
서브네트워크
165.229.46.50
165.229.46.29
165.229.46.140
라우터
165.229.0.0
인터넷
네트워크
서브넷(Subnet), 서브네트워크(subnetwork) 하나의 네트워크를 관리하기 쉽도록 논리적으로 나누어 만든 작은
규모의 네트워크
제1장 OSI 참조 모델과 TCP/IP 21
수퍼네팅 (Supernetting)
211.214.135.38
211.214.135.60211.214.135.18
211.214.132.47
211.214.132.100
211.214.133.64
211.214.133.14 211.214.133.84211.214.134.64
211.214.132.0수퍼네트워크
인터넷
211.214.134.64
211.214.132.12
클래스 C 네트워크 주소(211.214.135.X)
클래스 C 네트워크 주소(211.214.132.X)
클래스 C 네트워크 주소(211.214.133.X)
클래스 C 네트워크 주소(211.214.134.X)
작은 네트워크 여러 개를 묶어서 하나의 큰 네트워크로 통합
제1장 OSI 참조 모델과 TCP/IP 22
라우팅 (Routing)
패킷을 전송하기 위해 가장 적합한 경로를 선정하는 것
S0
S1
S2
211.214.138.0165.229.127.0
192.168.30.0
목적지 주소 출력포트
165.229.127.0 S1
211.214.138.0 S0
192.168.30.0 S2
라우팅 테이블
발신지
목적지
(211.214.138.100)
(192.168.30.200)
발신지 주소
목적지 주소
제1장 OSI 참조 모델과 TCP/IP 23
직접 전달과 간접 전달
패킷이 최종 목적지로 전송되는지 아니면 라우터로 전송되는지에 따른 분류
라우터 1 라우터 2
호스트 1 호스트 3호스트 2 호스트 4
간접 전달 직접 전달
허브
직접전달
직접전달
크로스케이블
(a)
(b)
(c)
제1장 OSI 참조 모델과 TCP/IP 24
라우팅 방법: Next-Hop routing
목적지 경로
호스트 B R1, R2, 호스트 B
호스트 A의 라우팅 테이블
목적지 경로
호스트 B R1, R2, 호스트 B
라우터 R1의 라우팅 테이블
목적지 경로
호스트 B R1, R2, 호스트 B
라우터 R2의 라우팅 테이블
a) 경로에 기반 한 라우팅 테이블
목적지 다음 홉
호스트 B R1
호스트 A의 라우팅 테이블
목적지 다음 홉
호스트 B R2
라우터 R1의 라우팅 테이블
목적지 다음 홉
호스트 B ---
라우터 R2의 라우팅 테이블
b) 다음 홉에 기반 한 라우팅 테이블
Network Network Network
호스트 A호스트 B
라우터 R1 라우터 R2
라우팅 테이블의 크기를 작게 만들기 위한 기술 특정 라우터는 다음 라우터(Next-Hop)의 주소만 가짐
제1장 OSI 참조 모델과 TCP/IP 25
라우팅 방법: Network-Specific routing
같은 네트워크에 연결된 모든 호스트를 하나의 엔티티로 취급
Network 1 Network 2
AB C
D
S
목적지 다음 홉
A R1
B R1C R1D R1
목적지 다음 홉
N2 R1
a) 호스트 지정 라우팅에기반 한 호스트 S의 라우팅 테이블
b) 네트워크 지정 라우팅에기반 한 호스트 S의 라우팅 테이블
R1
제1장 OSI 참조 모델과 TCP/IP 26
라우팅 방법: Host-Specific routing
A
Network 2 Network 3
B
목적지 다음 홉
호스트 B R3
Network 2 R1Network 3 R3… …
호스트 A의 라우팅 테이블
Network 1
R1
R2
R3
Network-Specific routing의 반대 개념
라우팅 테이블에 네트워크에 속한 각 호스트의 주소를 가짐
경로 점검 및 보안을 위한 경우 사용
제1장 OSI 참조 모델과 TCP/IP 27
라우팅 방법: Default routing
A
Network 1Network 2
목적지 다음 홉
Network 2 R1… …
Default R2
호스트 A의 라우팅 테이블
Internet
R1
R2 디폴트 라우터
인터넷 상의 모든 네트워크를 대신하여 0.0.0.0으로 된 디폴트 엔트리를 가짐