IT CookBook, 최신 정보통신개론

Download Report

Transcript IT CookBook, 최신 정보통신개론

7장 인터넷과 서비스
• 인터넷의 개요
• 인터넷 프로토콜과 주소 체계
• 인터넷의 각 계층별 프로토콜의 종류
학습목표
 인터네트워킹과 인터넷의 정의, 인터넷의 등장 배경을 알아본다.
 인터넷에서 데이터 전송 과정, 프로토콜과 주소 체계를 학습한다.
 인터넷 각 계층에 있는 프로토콜의 종류, TCP/IP와 UDP/IP를
학습한다.
 인터넷 관련 최신 서비스와 기술을 학습한다.
2/80
Section 01 인터넷의 개요
 인터네트워킹과 인터넷의 정의
 인터네트워크(Internetwork)
• LAN 또는 WAN 등 독립적인 네트워크를 상호 연결하여 만들어진 복잡한 네트워크
 인터네트워킹(Internetworking)
• 인터네트워크를 연결하는 과정 또는 방법. 하나의 통신 기준을 바탕으로 종류가 다른
네트워크를 서로 연결하므로 다양한 하드웨어 기술 및 소프트웨어 기술을 요함
 관련 장비는 리피터, 브리지, 라우터, 게이트웨이 등
 인터네킹으로 구성된 대표 네트워크는 인터넷(Internet)
3/80
Section 01 인터넷의 개요
 인터넷의 기반 프로토콜
 TCP/IP 기술
• 가정과 대학 캠퍼스, 학교, 기업, 정부 연구기관 등을 서로 연결하여 전 세계적 규모의
인터넷을 구성하는 기반을 만듦
 4계층(네트워크 접근 계층, 인터넷 계층, 전송 계층, 응용 계층)으로 구성
 OSI 7계층과 비교하면 네트워크 접근 계층은 1, 2계층에, 인터넷 계층
은 3계층에, 전송 계층은 4계층에, 응용 계층은 5~7계층에 대응
4/80
Section 01 인터넷의 개요
 인터넷의 등장 배경과 필요성
 인터넷의 기원은 1969년 미국 국방성의 알파넷(ARPANET)
 연구기관에도 보급되면서 기능이 확대되고 정보를 주고받는 컴퓨터 사
이에 적용하는 일정한 약속이나 규정인 표준 규약이 만들어짐.
 인터넷 기반 프로토콜인 TCP/IP를 인터넷 프로토콜 슈트라고도 함.
 서로 연결된 네트워크라면 종류에 관계없이 통신 기본 프로토콜 사용
 미국의 알파(ARPA)가 주도한 연구는 인터넷 기술과 개념을 만들고 발
전시켜옴
 NSF, DOE, DOD, HHS, NASA 등의 미국 연구 기관이 인터넷을 창설
하는 데 참가하고, TCP/IP로 자신의 연구 사이트를 연결
5/80
Section 02 인터넷 프로토콜과 주소 체계
 인터넷의 계층별 대표 프로토콜
 인터넷에서 사용되는 프로토콜은 4계층으로 구성
6/80
Section 02 인터넷 프로토콜과 주소 체계
 인터넷에서 데이터 전송하는 과정
 송신 측 최상위 계층(응용 계층)에서 발생한 데이터는 하위 계층으로
차례로 전달. 각 계층에서는 헤더 정보에 전달 받은 데이터에 헤더 정
보를 추가해 바로 아래 계층으로 전달
 한 단계 낮은 계층에서는 전달받은 데이터(헤더1+데이터)를 하나의
데이터로 취급하고 또 다시 새로운 헤더(헤더2)를 추가해(헤더2+헤더
1+데이터) 다시 바로 아래 계층으로 전달. 이 과정을 거쳐 최하위 계
층(네트워크 접근 계층)에 도달
 송신 측에 있는 최하위 계층의 데이터는 원래의 데이터에 여러 개의 헤
더가 씌어진 형태(캡슐화)
 수신 측 최하위 계층(네트워크 접근 계층)에서의 데이터는 헤더가 여
러 개 씌어진 형태.
 각 계층의 헤더에 해당되는 부분을 벗겨내며 수신측의 최상위 계층으
로 전달(캡슐 해제)하여 송신 측 최상위 계층에서 보낸 원래의 데이터(
헤더가 없는 데이터)가 수신 측 최상위 계층(응용 계층)에 정확하게 전
달
7/80
Section 02 인터넷 프로토콜과 주소 체계
 인터넷에서 데이터 전송하는 과정
8/80
Section 02 인터넷 프로토콜과 주소 체계
 인터넷에서 데이터 전송하는 과정
9/80
Section 02 인터넷 프로토콜과 주소 체계
 주소 결정 및 관리
 전 세계 인터넷 주소 자원을 총괄/관리하는 곳은 IANA, 아/태 지역은
APNIC, 그 아래에 각 국가별 NIC가 존재
 우리나라에는 한국 인터넷 정보센터(KRNIC, Korea NIC)가 있는데 한
국인터넷진흥원(NIDA)에서 업무 수행. NIDA는 네트워크로 구현되는
사이버 대한민국의 국토청이라 할 수 있음.
 한국인터넷진흥원 기본 업무는 도메인과 IP 등 인터넷 주소 자원 관리
로, 인터넷 활성화, 차세대 인터넷 주소 자원 IPv6, 식별 체계의 통합
서비스 등 다양한 사업을 진행.
 인터넷 주소는 임의로 결정하는 것이 아니라 국내에서 인터넷 도메인
을 등록하려면 한국인터넷진흥원의 한국 인터넷 정보센터(KRNIC)로
부터 주소를 할당받아야 함
10/80
Section 02 인터넷 프로토콜과 주소 체계
 인터넷 주소
 인터넷 사용자가 다른 컴퓨터 사용자와 통신하려고 숫자로 표현하지
않고 영문자 및 .를 혼합해 주소를 표현하는 것을 인터넷 도메인
 도메인명(Domain Name) 규칙
• 도메인명의 길이는 최대 256자까지 가능
• 도메인명은 숫자(0-9)나 영문자(A - Z) 또는 영문자와 숫자의 조합으로 구성
• ,(쉼표)나 _(언더바) 등은 사용 불가. 단 -(하이픈)은 사용 가능
- 전 세계적으로 중복되지 않은 고유 주소를 사용해야 함
11/80
Section 02 인터넷 프로토콜과 주소 체계
 국가별 도메인명 예
12/80
Section 02 인터넷 프로토콜과 주소 체계
 기관 도메인명 예
13/80
Section 02 인터넷 프로토콜과 주소 체계
 IP 주소의 개념
 IP 주소는 10진수 4개와 .(점)으로 표현하며, 실제로 32비트로 구성
 각 10진수 숫자는 0~255까지 사용할 수 있으며 숫자가 256개인 8비
트가 필요하므로 전체적으로 32비트 필요
14/80
Section 02 인터넷 프로토콜과 주소 체계
 IP 주소 체계
 IP 주소는 네트워크 번호와 그 네트워크에 접속되어 부여되는 호스트
번호로 구성
 IP 주소 체계는 클래스 A~E까지 5종류며, 첫 번째부터 세 번째 비트
까지 번호를 할당하여 클래스 구분
15/80
Section 02 인터넷 프로토콜과 주소 체계
 IP 주소 체계
 A 클래스
• 첫 번째 비트가 0인 주소로, 범위는 1.X.X.X~127.X.X.X
• 64.X.X.X라면 64.0.0.0과 64.255.255.255은 특수 목적, 나머지는 망에 있는 호스트 주
소. 호스트 주소는 16,777,214(256*256*256-2)개. 64.0.0.0은 서브망 주소
 B 클래스
• 첫 번째와 두 번째 비트가 각각 1, 0인 주소로, 범위는128.0.X.X~191.255.X.X
• 149.11.X.X라면 149.11.0.0와 149.11.255.255은 특수 목적, 나머지는 망에 있는 호스
트 주소. 호스트 주소는 65,534(256*256-2). 149.11.0.0은 서브망 주소
 C 클래스
• 첫 번째~세 번째 비트가 각각 1, 1, 0인 주소로, 범위는 192.0.0.X~255.255.255.X
• 249.11.1.X라면 249.11.1.0과 249.11.1.255은 특수 목적. 나머지는 망에 있는 호스트
주소. 호스트 주소는 254(256-2). 249.11.1.0은 서브망 주소
 D 클래스
• 첫 번째~네 번째 비트가 각각 1, 1, 1, 0인 주소로, 나머지 28비트를 멀티캐스트용으로
사용. 범위는 224.X.X.X~239.255.255.255
 E 클래스
• 첫 번째~네 번째 비트가 각각 1, 1, 1, 1인 주소로, 향후 사용하려고 남겨둔 예비/실험
용 주소. 범위는 240.X.X.X~247.255.255.255
16/80
Section 02 인터넷 프로토콜과 주소 체계
 서브넷 주소
 IP 주소를 네트워크 번호와 호스트 번호로만 구분하여 나누지 않고 호
스트 번호 부분을 서브넷 번호와 호스트 번호로 더욱 세분하는 방식
 IP 주소의 비트를 더욱 효율적으로 사용하는 방법
17/80
Section 02 인터넷 프로토콜과 주소 체계
 서브넷 주소를 이용하는 이유
 외부 라우터가 내부 네트워크 조직을 모르게 하고, 라우팅 테이블 크기
를 줄이는 효과
 클래스 B 주소 193.055일 때 서브넷 주소를 사용하면 IP 주소가
193.055로 시작하는 호스트를 접근하려는 외부 라우터는 IP 주소의
경로만 알면 됨
 외부 라우터에서는 모든 IP 주소를 라우팅 테이블로 갖고 있을 필요 없
이 193.055 주소만 알면 됨
18/80
Section 02 인터넷 프로토콜과 주소 체계
 인터넷의 주소 체계
 도메인 네임 서비스(DNS, Domain Name System)
• 인터넷 도메인명과 IP 주소와 대응시켜 주는 거대 규모의 분산 시스템
• 인터넷 도메인명에서 IP 주소로의 변환을 해주는 프로토콜이 예
 URL(Uniform Resources Locator)
• 인터넷에서 자원의 위치를 통일적으로 표현하는 주소
• 웹 브라우저에서 URL을 입력하면 그 URL이 가리키는 웹 서버에 있는 하이퍼미디어들
의 문서를 찾는 주소로 사용
19/80
Section 03 인터넷의 계층별 프로토콜 종류
 네트워크 접근 계층 프로토콜
 네트워크 접근 계층은 네트워크 매체와 인터페이스에서 하드웨어 세부
사항을 처리하며, 상위 계층의 데이터를 수용하여 이와 연결된 다른 네
트워크로 전송
 네트워크인터페이스 카드(NIC)의 디바이스 드라이버처럼 하드웨어와
관련된 프로그램이 있음
 여기서 전달되는 데이터를 프레임이라고 함
 대표 프로토콜은 이더넷, FDDI, 토큰 링, X.25 등
20/80
Section 03 인터넷의 계층별 프로토콜 종류
 인터넷 계층 프로토콜
 인터넷 계층은 발신지에서 목적지로 데이터를 전송하는 일
 주소 지정, 패키징(Packaging), 라우팅(Routing) 등의 기능 제공
 주소는 지정하지만, 목적지의 호스트에서 성공적으로 정보를 받았다는
처리 과정이 없는 비연결형
 신뢰성이 없고, 오류 검사나 추적을 하지 않음
 패키징은 데이터에 헤더를 추가하는 것으로, 헤더에는 발신지와 목적
지 IP 주소, 전송 프로토콜, 체크섬, 생존 시간 등의 정보 포함
 발신지와 목적지 IP 호스트가 동일한 네트워크에 있다면 데이터그램은
목적지 호스트로 바로 전송되지만, 원격지의 네트워크에 있으면 발신
지와 목적지의 라우팅 테이블을 검색하여 최적의 경로를 찾고 설정
 여기서 전달되는 데이터를 데이터그램
 대표 프로토콜은 IP, ICMP, ARP, RARP 등
21/80
Section 03 인터넷의 계층별 프로토콜 종류
 IP(Internet Protocol)
 인터넷 계층에서 가장 중요한 프로토콜
 다양한 네트워크로 구성된 인터넷을 통하여 발신지에서 목적지까지 데
이터그램을 전송할 수 있도록 라우팅 기능 수행
 오류와 상황 보고, 경로 제어하는 정보 전달 기능 등은 미포함
 IP 데이터그램은 헤더와
데이터로 구성. 헤더에는
다양한 정보 포함
22/80
Section 03 인터넷의 계층별 프로토콜 종류
 IP 헤더의 항목
23/80
Section 03 인터넷의 계층별 프로토콜 종류
 IP 헤더의 항목
24/80
Section 03 인터넷의 계층별 프로토콜 종류
 IP 라우팅과 라우터
 IP 라우팅
• IP 패킷을 송신지에서 목적지로 보내기 위해 패킷을 전송할 경로를 직접 연결하지 않고
중간 노드를 경유하여 연결하는 기능
 라우터
• 라우팅 기능을 수행하는 장비
 라우팅 프로토콜과 라우팅 테이블
• 라우터가 경로를 결정하기 위해 사용하는 규칙을 라우팅 프로토콜.
• 라우팅은 경로 결정과 스위칭이라는 두 가지 기능으로 구성
• 결정된 경로는 라우팅 테이블이라는 곳에 저장
• 라우팅 프로토콜에 따라 한 번 결정한 경로를 계속 사용하는 경우도 있지만, 대부분은
결정한 경로가 유효한지 계속 확인
• 특정 경로를 사용할 수 없게 되면 또 다른 경로를 찾고, 더 좋은 경로를 찾으면 현재의
경로를 새것으로 대체
25/80
Section 03 인터넷의 계층별 프로토콜 종류
 IP 라우팅 예
26/80
Section 03 인터넷의 계층별 프로토콜 종류
 IP 라우팅 예
27/80
Section 03 인터넷의 계층별 프로토콜 종류
 IPv6(Internet Protocol Version 6)
 IPv4의 한계와 IPv6의 출현 배경
• IPv4는 지난 약 30년 동안 가장 광범위하게 사용해 온 주소 체계
• 주소의 표현 범위가 32비트기 때문에 인터넷 사용자의 급속한 증가에 비해서 주소의
표현에 있어서 한계
• 주소 할당 공간이 부족하고, 주소 설정이 어려우며, 보안 대책 등이 미흡
 IPv6의 주소 공간
• 128비트며, 32비트인 IPv4보다 주소 공간 많이 확대
• 예) 3122: FFAB: 1234: 3120: 1111: DCDD: 2241: 0099
 IPv6의 추진 조직
• 1990년대 초에 인터넷 기술 작업반(IETF)에서 연구와 표준화 작업을 수행
 IPv6의 특징
• 주소 공간은 128비트이며, 32비트인 IPv4의 주소 공간보다 많이 확대
• IPv4에 있는 헤더 길이 항목을 포함하지 않으며, 헤더 길이를 40 바이트로 고정되어 있
으므로 헤더를 처리하는 소프트웨어를 최적화하기 쉬움.
• 유니캐스트, 애니캐스트, 멀티캐스트 세 가지 형태에 관한 주소 규칙이 있음
28/80
Section 03 인터넷의 계층별 프로토콜 종류
 IPv6의 헤더 구조
29/80
Section 03 인터넷의 계층별 프로토콜 종류
 IPv6 헤더의 항목
30/80
Section 03 인터넷의 계층별 프로토콜 종류
 ICMP(Internet Control Message Protocol)
 오류 보고, 상황 보고, 경로를 제어하는 정보의 전달 기능이 있음
 ICMP의 예
• 시스템 A에서 시스템 B로 메시지를 전달할 때, 라우터 3에 있는 라우팅 테이블이 잘못
되어 데이터그램을 시스템 B로 전달할 수 없으면 ICMP 메시지를 출발지인 시스템 A로
되돌려 보냄
31/80
Section 03 인터넷의 계층별 프로토콜 종류
 ICMP(Internet Control Message Protocol)
 ICMP 메시지의 캡슐화
• ICMP 메시지는 인터넷과 라우터를 거쳐 운반되어야 하므로 IP로 캡슐화
• ICMP 메시지가 IP로 캡슐화되더라도 ICMP는 상위 계층 프로토콜로 간주하지 않음
32/80
Section 03 인터넷의 계층별 프로토콜 종류
 ICMP 헤더의 항목
33/80
Section 03 인터넷의 계층별 프로토콜 종류
 IGMP(Internet Group Message Protocol)
 IGMP
• 멀티캐스팅 기능을 수행하는 프로토콜
• 네트워크의 멀티캐스트 트래픽을 자동으로 조절하고 제한하며 수신자 그룹에 메시지를
동시에 전송하는 데 사용
 멀티캐스트(Multicast)
• 하나의 송신 노드가 네트워크에 연결된 하나 이상의 수신 노드에 데이터를 전송하는 것
• 송신 노드는 수신될 노드를 미리 지정
• 전자우편에서 주소록을 미리 등록하여 보내는 방식이 대표 예
 IGMP와 멀티캐스트 비교
• IGMP는 사용자와 라우터와의 관계고, 멀티캐스트 라우팅은 라우터에서 라우터로 경로
를 설정하는 것
34/80
Section 03 인터넷의 계층별 프로토콜 종류
 인터넷 라우팅 프로토콜
 인터넷에는 연결된 수많은 네트워크에서, 네트워크 내부의 라우팅이나
네트워크 관리를 독자적인 방식으로 운영하는 주체를 자율시스템
(Autonomous System)이라고 함
 자율 시스템의 구성요소가 라우팅 정보를 저장/관리하며, 이 정보를 이
용하는 프로토콜을 인터넷 라우팅 프로토콜
 자율 시스템 내부에 위치한 게이트웨이를 내부 게이트웨이, 자율 시스
템을 연결하는 게이트웨이를 외부 게이트웨이
 내부 게이트에서 동작하는 라우팅 프로토콜을 내부 게이트웨이 프로토
콜(IGP), 외부 게이트에서 동작하는 라우팅 프로토콜을 외부 게이트웨
이 프로토콜(EGP)
35/80
Section 03 인터넷의 계층별 프로토콜 종류
 인터넷 라우팅 프로토콜
36/80
Section 03 인터넷의 계층별 프로토콜 종류
 인터넷 라우팅 프로토콜의 종류
 주소 결정 프로토콜(ARP)
• IP 주소를 NIC의 물리적 하드웨어 주소인 이더넷 주소로 변환
• IP와 관련된 LAN 카드의 물리 주소를 알아냄
• ARP 기능을 이용해 스위치 아래에서 실제 동작 중인 단말의 IP, MAC 주소 알수 있음
• ARP는 RFC 826 규격
 역주소 결정 프로토콜(RARP)
• NIC의 물리적 하드웨어 주소인 이더넷 주소를 IP 주소로 변환
• RFC 903 규격
 내부 게이트웨이 프로토콜(IGP)
• 내부 게이트웨이와 외부 게이트에서
위치하며, 자율 시스템 내부에서
작동
 외부 게이트웨이
프로토콜(EGP)
• 외부 게이트에 위치하며,
서로 다른 자율 시스템 간에 작동
37/80
Section 03 인터넷의 계층별 프로토콜 종류
 전송 계층 프로토콜
 포트를 사용한 두 종단 호스트 간에 데이터 전달을 담당
 대표 프로토콜은 TCP와 UDP
 TCP(Transmission Control Protocol)
• 두 종단 간에 연결을 설정한 후에 데이터를 8비트의 바이트 스트림으로 교환하는 연결
형 프로토콜
 TCP와 IP의 도메인의 비교
38/80
Section 03 인터넷의 계층별 프로토콜 종류
 TCP의 캡슐화
 TCP 패킷은 IP가 캡슐화하여 운반. 이는 인터넷과 라우터를 거쳐 전
달되기 때문
39/80
Section 03 인터넷의 계층별 프로토콜 종류
 TCP의 세그먼트의 형식
40/80
Section 03 인터넷의 계층별 프로토콜 종류
 TCP 헤더의 항목
41/80
Section 03 인터넷의 계층별 프로토콜 종류
 TCP 헤더의 항목
42/80
Section 03 인터넷의 계층별 프로토콜 종류
 TCP의 연결 설정
➊ 송신 측이 수신 측에SYN 세그먼트를 보내 연결 설정을 요청한다.
➋ 수신 측이 송신 측에 수신 확인으로SYN 세그먼트를 전송한다.
➌ 송신 측이 수신 측에 응답 세그먼트의 확인 응답으로ACK를 보낸다.
43/80
Section 03 인터넷의 계층별 프로토콜 종류
 전송 계층 프로토콜
 TCP의 특징
• 상위 계층이 넘겨준 데이터를 세그먼트 단위로 쪼개어 가공한 후 하위층으로 넘겨줌
• 원래 IP에서 동작하도록 설계되었기에 하위층 대부분은 IP가 됨
• 쪼개진 세그먼트에 순서를 부여한 후 전송·수신하여 순서가 뒤바뀌는 일이 없도록 하는
데, 패킷이 왔다갔다해 순번이 뒤바뀌어도 다시 복구하여 상위층이 신뢰할 수 있는 연
결 방식을 제공
• TCP의 연결 지향형 방식을 신뢰성 스트림 서비스(Reliable Stream Service)라고도 함
44/80
Section 03 인터넷의 계층별 프로토콜 종류
 TCP의 연결 해제
➊ 송신 측이 수신 측에 FIN 세그먼트를 보내 연결 해제를 요청한다.
➋ 수신 측이 송신 측에 확인 응답으로ACK 세그먼트를 전송한다.
➌ 수신 측이 송신 측에 FIN 세그먼트를 전송하여 연결 해제 요청한다.
➍ 송신 측이 수신 측에 응답 세그먼트의 확인 응답으로ACK를 보낸다.
45/80
Section 03 인터넷의 계층별 프로토콜 종류
 UDP(User Datagram Protocol)
 두 종단 간에 연결을 설정하지 않고 데이터를 교환하는 비연결형 프로
토콜
 UDP의 캡슐화
• UDP 패킷은 인터넷과 라우터를 거쳐 전달되기 때문에 IP가 캡슐화하여 운반
46/80
Section 03 인터넷의 계층별 프로토콜 종류
 UDP의 데이터그램 형식
47/80
Section 03 인터넷의 계층별 프로토콜 종류
 UDP 헤더의 항목
48/80
Section 03 인터넷의 계층별 프로토콜 종류
 UDP의 특징
 TCP와는 달리 비연결성이라 수신 측이 제대로 도착했는지 확인하지
않는 비신뢰성 서비스
 사용자 데이터를 데이터그램에 포함하여 전송
 TCP와 UDP의 특징 비교
49/80
Section 03 인터넷의 계층별 프로토콜 종류
 클라이언트와 서버 모델
 클라이언트, 서버, 네트워크가 연결되어 있음
 클라이언트는 서버에게 작업 요청을 하는 장비나 프로세스를, 서버는
클라이언트의 요청을 받아 작업을 처리하거나 그 결과를 클라이언트에
통보하는 장비나 프로세스
 클라이언트와 서버의 협동 처리(cooperative processing)
50/80
Section 03 인터넷의 계층별 프로토콜 종류
 클라이언트와 서버 모델의 동작 원리
➊ 대기 상태와 요청 : 서버 프로세스는 임의의 컴퓨터시스템에서 수행
되며, 클라이언트의 요청을 기다리는 대기 상태(Sleep). 클라이언트
프로세스는 서버나 컴퓨터 네트워크와 연결된 컴퓨터시스템에서 가동
된다. 이 상태에서 클라이언트가 서버에 연결을 요청
➋ 처리 : 서버가 클라이언트의 요청에 해당하는 서비스를 처리
➌ 결과 통보 : 처리 결과를 클라이언트에 통보하는 응답
 클라이언트와 서버 모델의 종류
 연결 방식에 따라 연결형과 비연결형으로 분류
 연결형은 TCP/IP를, 비연결형은 UDP/IP를 사용
51/80
Section 03 인터넷의 계층별 프로토콜 종류
 인터넷 응용 서비스 관련 프로토콜의 종류
52/80
Section 03 인터넷의 계층별 프로토콜 종류
 HTTP(Hypertext Transfer Protocol)
 인터넷에서 하이퍼텍스트 문서를 교환하는 데 사용되는 통신 규약
 하이퍼텍스트는 문서 중간 중간에 특정 키워드를 두고 문자나 그림을
상호 유기적으로 결합하여 연결시킴으로써, 서로 다른 문서라 할지라
도 하나의 문서인 것처럼 보이면서 참조하기 쉽도록 하는 방식
 1989년 팀 버너스 리에 의해 처음 설계되어 인터넷을 통한 월드 와이
드 웹(WWW)에 기반을 두고 전 세계적으로 정보를 공유할 수 있게 함
 첫 번째 버전은 인터넷을 통하여 가공되지 않은 데이터를 전송하기 위
한 단순한 프로토콜이었으나, 데이터에 대한 전송과 요구․응답에 대한
수정 등 가공된 정보를 포함하는 프로토콜로 개선
 인터넷 주소를 지정할 때 'http://www....‘처럼 쓰는데 www로 시작되
는 URL인 인터넷 주소에서 하이퍼텍스트 문서의 교환을 http 통신규
약으로 처리하라는 뜻
53/80
Section 03 인터넷의 계층별 프로토콜 종류
 HTTP의 특징
 웹(Web)에서 HTML 문서를 송수신하는 데 사용하며, 텍스트, 이미지,
멀티미디어 파일 등 다양한 형태의 데이터를 전송 가능
 HTTP의 동작 원리와 예
 사용자가 인터넷에 접속해 웹 문서를 이용할 때는 클라이언트와 서버
방식을 이용
 웹 브라우저는 클라이언트가 서비스를 요구하면 TCP 연결 하나 생성
 웹 브라우저에서 요구한 URL 도메인명에 해당하는 컴퓨터 서버에 접
근하여 URL 경로의 HTML 파일을 요구하고, 서버에서 처리
 HTML 문서를 웹 브라우저를 이용해 클라이언트에 보여줌
 www.hanb.co.kr서버에 있는 book 폴더(디렉터리)에서 test.html 문
서를 찾아 클라이언트 쪽 웹 브라우저에 보여주는 과정
➊ 클라이언트의 웹 브라우저에서 http://www.hanb.co.kr/book/test.html을 입력하여
요청
➋ 웹 브라우저가 DNS에 http://www.hanb.co.kr의 IP 주소를 요청하면 DNS는
http://www.hanb.co.kr의 IP 주소를 응답
54/80
Section 03 인터넷의 계층별 프로토콜 종류
 도메인명을 IP 주소로 변환하는 과정
55/80
Section 03 인터넷의 계층별 프로토콜 종류
 FTP(File Transmission Protocol)
 파일을 효율적으로 주고받기 위한 파일 전송 프로토콜
 인터넷을 통하여 어떤 한 컴퓨터에서 다른 컴퓨터로 파일을 송수신할
수 있도록 지원하는 방법과 그런 프로그램을 통칭하기도 함
 FTP의 특징
 원하는 프로그램이나 각종 데이터를 무료나 저렴한 가격에 살 수 있음
 용량이 큰 파일도 빠르게 송수신 가능
 파일을 송수신할 때는 적당한 자격, 즉 원격 호스트 컴퓨터를 이용할
수 있는 사용자 ID와 패스워드가 있어야 접속할 수 있음
 인터넷에는 패스워드가 없어도 접속할 수 있는 공개 FTP 호스트도 있
음. 공개 FTP 호스트를 익명(Anonymous) FTP라고 하는데, 전 세계
적으로 수천 개에 달함
 사용자로 등록하지 않고서도 익명이라는 ID와 패스워드로 자신의 전
자우편 주소를 설정하면 원격지 호스트에 접속하여 파일을 쉽게 송수
신할 수 있음
56/80
Section 03 인터넷의 계층별 프로토콜 종류
 FTP의 동작 원리와 예
57/80
Section 03 인터넷의 계층별 프로토콜 종류
 FTP의 동작 원리와 예
 서버는 FTP의 포트 21로 수동적으로 개방 후 클라이언트 접속에 대기
 클라이언트는 제어를 연결하려고TCP 포트 21로 능동적으로 개방
 클라이언트는 연결된 제어를 이용해 파일 전송을 요청
 서버는 FTP의 임시 포트로 클라이언트와 연결을 설정. 이때, 서버 측
의 파일 전송용을 연결하는 포트 번호는 변경
 서버는 연결을 이용해 클라이언트에 파일을 전송
 파일 전송 후 서버는 연결을 해제
 클라이언트는 원하는 파일을 전부 수신했으면 연결을 해제
58/80
Section 03 인터넷의 계층별 프로토콜 종류
 텔넷(Telnet, Teletype network)
 원격지에서 컴퓨터를 이용한 가상 단말 기능 구현을 위한 프로토콜
 원격지에 위치한 호스트 컴퓨터를 사용자의 로컬 컴퓨터처럼 사용
 텔넷의 특징
 인터넷 사용자는 텔넷을 이용해 전 세계에 있는 다양한 온라인 서비스
를 제공받을 수 있음
 다른 컴퓨터에 접속하려면 그 컴퓨터를 사용할 수 있는 사용자 번호와
패스워드를 알아야 함
 텔넷 응용 서비스는 거리에 관계없이 쉽게 원격시스템에 접속할 수 있
어 매우 효과적
 텔넷은 클라이언트와 서버 모델을 사용하며, 서버는 의사 단말
(Pseudo Terminal)로 처리
59/80
Section 03 인터넷의 계층별 프로토콜 종류
 텔넷의 동작 원리와 예
 터미널에 있는 사용자는 로그인하려는 호스트와TCP 연결을 설정
 서버는 연결을 이용해 사용자에게 가상의 터미널을 제공
 사용자는 가상의 터미널을 실제 터미널처럼 이용
60/80
Section 03 인터넷의 계층별 프로토콜 종류
 SMTP(Simple Mail Transfer Protocol)
 전자우편 서비스(E-mail Service)를 사용할 수 있는 프로토콜
 SMTP의 특징
• 하위 계층에서 TCP 프로토콜을 사용하며, 전자우편을 송수신하려고 사용자 에이전트
(User Agent)와 메시지 전송 에이전트(MTA, Message Transfer Agent)를 사용
• 전자우편 사용자와는 직접 관계가 없고, 전자우편 메시지가 통과하는 로컬 메인시스템
하고만 정보를 교환
• 사용자의 메시지 접수방법, 사용자 인터페이스 구성방법, 사용자의 메시지 저장방법 등
은 지정하지 않음
 SMTP의 동작 원리와 예
• 송신 측에서 메일 명령(Mail Command)을 수행
• 송신 측에서SMTP에 규정된 전자우편의 형식에 따라 내용을 작성
• 송신 측에서 송신용 메일 큐나 스풀에 송신할 내용의 전자우편을 미리 저장
• 송신 측에서 수신용 메일 큐에 전자우편이 있는지 검색하여 있으면 헤더를 참조해
SMTP 규정에 따라 수신 측으로 발송
• 수신 측에서 수신용 메일 큐에 전자우편이 있으면 전자우편을 읽음
61/80
Section 03 인터넷의 계층별 프로토콜 종류
 SMTP의 동작 원리와 예
62/80
Section 03 인터넷의 계층별 프로토콜 종류
 SNMP(Simple Network Management Protocol)
 인터넷에서 네트워크를 관리하는 프로토콜. 네트워크의 관리 정보를
교환하는 데 사용
 SNMP의 특징
• 다른 응용 계층 프로토콜은 일반 사용자용이지만, SNMP는 네트워크를 관리
• 관리자 프로세스와 관리 프로세스 간에 정보를 주고받을 수 있는 기능만 지원하므로,
자신을 통과하는 관리 정보는 알 수 없음
• 하위 계층에서 UDP 프로토콜을 사용
 SNMP의 동작 원리와 예
• 관리 에이전트는 관리국(Management Station)과 관리 대상 노드에 있고, 기기의 상태
나 이력 공간인 데이터베이스를 관리하며, 기기의 조작에도 영향을 줌
• 관리국은 관리 에이전트와SNMP 프로토콜로 통신
• 관리 대상 노드는 디바이스고, 관리 에이전트(SNMP Agent)가 동작하며, 호스트, 프린
터, 라우터, 브리지 등 외부에 상태 정보를 통신하는 능력이 있음
• SNMP의 동작은 관리국이 에이전트에서 관리 정보를 가져오고, 설정하며, 오류 등 이
상이 발생하면 에이전트가 관리국에 이를 알리는 일련의 과정
63/80
Section 03 인터넷의 계층별 프로토콜 종류
 SNMP의 동작 원리와 예
64/80
Section 04 인터넷 관련 최신 서비스와 기술
 웹 서비스(Web Service)
 플랫폼에 독립적으로 시스템 간 연계, 통합과 자원 공유가 가능하도록
표준화된 XML 기반 웹 기술
 네트워크에서 서로 다른 종류의 컴퓨터가
상호작용하는 서비스 지향 분산 컴퓨팅 기술
 근간이 되는 기술에는 XML, 웹 서비스의
표준화 프로토콜 스택인 SOAP,
UDDI, WSDL 등이 있음
65/80
Section 04 인터넷 관련 최신 서비스와 기술
 웹 서비스의 구성요소
 웹 서비스제공자, 웹 서비스중개자, 웹 서비스요청자로 구성
66/80
Section 04 인터넷 관련 최신 서비스와 기술
 웹 서비스의 계층 구조
67/80
Section 04 인터넷 관련 최신 서비스와 기술
 웹 서비스의 계층 구조
 SOAP(Simple Object Access Protocol)
• HTTP, HTTPS, SMTP 등을 사용해 XML 형식 메시지를 컴퓨터 네트워크에서 교환
• 웹 서비스에서 기본 메시지를 전달하는 기반
• 보통 원격 프로시저 호출(RPC, Remote Procedure Call) 패턴으로, 네트워크 노드(클
라이언트)에서 다른 쪽 노드(서버)로 메시지를 요청하고, 서버는 즉시 응답
• XML을 근간으로 헤더와 바디를조합하는 디자인 패턴으로 설계
• 선택사항인 헤더에는 반복이나 보안, 트랜잭션 등 메타 정보가, 몸체에는 주요 정보
 UDDI(Universal Description, Discovery and Integration)
• 웹 서비스를 등록하고, 검색할 수 있는 웹 서비스 레지스트리에 관련된 명세
• 회사가 이름, 제품, 장소, 웹 서비스별 목록을 제공할 수 있게 해주고, 그 등록은 회사
규모에 상관없이 모든 기업에 개방되어 있음
 WSDL(Web Services Description Language)
• 웹 서비스 기술 언어 또는 기술된 정의 파일을 총칭하며 XML로 기술
• 서비스 제공 장소, 서비스 메시지 형식, 프로토콜 등 웹 서비스 내용 구체적으로 기술
• 특정 비즈니스가 제공하는 서비스를 설명하고, 개인이나 회사가 그 서비스에 전자적으
로 접근할 수 있는 방법을 제공하는 데 사용하는 XML 기반 언어
• 마이크로소프트, IBM, 아리바(Ariba) 등이 주도한 UDDI의 기본
68/80
Section 04 인터넷 관련 최신 서비스와 기술
 웹 서비스의 동작 원리
69/80
Section 04 인터넷 관련 최신 서비스와 기술
 웹 서비스의 진화
70/80
Section 04 인터넷 관련 최신 서비스와 기술
 유비쿼터스 웹 서비스 컴퓨팅
71/80
Section 04 인터넷 관련 최신 서비스와 기술
 SOA를 사용하는 목적
72/80
Section 04 인터넷 관련 최신 서비스와 기술
 웹 언어
 CGI언어와 마크업 언어로 구분
 CGI(Common Gate Interface)
• 서버와 외부 데이터, 응용 프로그램 간의 인터페이스
• 브라우저에서 서버로 보낸 데이터를 가공하여 다른 응용 프로그램으로 전달하고, 응용
프로그램에서 받은 데이터를 가공하여 서버를 이용해 웹 브라우저로 전달
• 다루는 정보는 사용자와 이용 시간대에 따라 내용과 표현이 달라지는 동적인 정보
 마크업 언어(Markup Language)
• 웹 서버에 저장된 문자, 그림, 표, 음성, 동영상 등을 모두 포함한 문서를 클라이언트가
다운로드받아 웹 브라우저에서 표현
• SGML, HTML 순으로 발전하고, XML은 SGML과HTML의 단점을 보완해 등장
73/80
Section 04 인터넷 관련 최신 서비스와 기술
 XML(eXtensible Markup Language)
 1996년 W3C에서 제안
 SGML을 복잡하게 하는 요인인 많은 선택 기법을 채택하지 않아 단순
하고 SGML의 장점인 구조성과 융통성을 유지
 SGML처럼 확장이 가능해 HTML보다 표현력이 좋음
 XML 문서는 웹에서 구조화된 문서를 전송할 수 있도록 내용(XML)과
구조(DTD), 표현(XSL)이 분리된 구조적 문서므로 WWW, 인트라넷
등에서 데이터와 형식 두 가
 지를 모두 공유할 때 유용
 XML을 이용하면 데이터베이스 조작이나 환경 설정, 서비스 관련 설정
을 더 쉽게 처리할 수 있음
 HTML과 달리 규정된 태그만 사용하는 것이 아닌 사용자가 원하는 태
그를 만들어 응용 프로그램에 적용 가능
74/80
Section 04 인터넷 관련 최신 서비스와 기술
 SGML, HTML, XML의 비교
75/80
Section 04 인터넷 관련 최신 서비스와 기술
 AJAX(Asynchronous JAvascript and XML)
 대화식 웹 응용 프로그램을 제작하는 데 조합을 이용하는 웹 개발 기법
 비동기 자바스크립트와 XML를 의미하며, 웹에 있는 DHTML, CSS,
XML, 마이크로소프트 객체인 XMLHttp-Request 등의 기술이 합쳐짐
 개발자가 좀 더 쉽게 접근할 수 있도록 인터페이스를 만드는 방법론으
로 볼 수 있음
76/80
Section 04 인터넷 관련 최신 서비스와 기술
 웹의 진화 과정과 특징
77/80
Section 04 인터넷 관련 최신 서비스와 기술
 웹의 진화와 웹 3.0의 특징
78/80
Section 04 인터넷 관련 최신 서비스와 기술
 지능형 웹 서비스
 웹 서비스의 정적이고 구문적인 접근 방식의 문제점을 해결하려고 시
맨틱 웹 에이전트 기술을 웹 서비스에 접목하는 시도
 시맨틱 웹, 미래의 인터넷
 현재처럼 사람이 마우스나 키보드를 이용해 원하는 정보를 찾아 눈으
로 보고 이해하는 웹이 아니라, 컴퓨터가 이해할 수 있는 웹
 컴퓨터가 이해할 수 있는 형태의 새로운 언어로 표현해 기계끼리 의사
소통을 할 수 있는 지능형 웹
 컴퓨터가 정보 자원의 뜻을 해석하고, 기계끼리 정보를 주고받으면서
필요한 일을 자체적으로 처리할 수 있음
79/80
IT CookBook, 최신 정보통신 개론