제 09 장 인터넷과 월드와이드웹 한국대학교 홍길동 교수
인터넷의 역사 인터넷의 시초 : 알파넷 1968년에 알파에서 구축한 알파넷(ARPANet) UCLA를 중심으로 캘리포니아 산타바바라 주립대학(UCSB), 스탠퍼드 연구소(SRI), 유타 대학(UTAH) 사이에 전화선을 통한 하나의 네트워크 탄생 대규모 패킷(packet) 교환망 구 소련과 미국의 냉전체제에서 나온 산물 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
인터넷의 발전 1983년 알파넷은 군사용 네트워크인 MILNET과 민간용인 ARPANET으로 구분 1980년대에 ARPANET 상의 모든 네트워크들은 TCP/IP 프로토콜로 완전히 교체 미국과학연구기금(NSF: National Science Foundation)이 정부와 대학연구기관의 연구를 목적으로 미국 전역에 걸쳐 4 대의 수퍼컴퓨터센터를 중심으로 NSFNET를 구축 NSFNET는 TCP/IP를 프로토콜로 채용하게 되며 이때부터 인터넷은 더욱 큰 네트워크로 성장 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
인터넷 인터넷 지구 전역에서 서로 다른 기종의 컴퓨터들이 통일된 프로토콜을 사용해 자유롭게 통신을 주고 받을 수 있는 세계 최대의 통신망 1969년 미국 국방부에서 시작된 ARPANET이 모체 인터넷은 네트워크의 네트워크 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
국가별 인터넷 사용자 수의 변화 인터넷 사용자 수에 따른 그 국가의 크기를 표현한 세계지도 각각 2001년과 미래의 2015년에 인터넷 사용자 수를 표현 다음 지도를 클릭하세요. http://www.conceptualdevices.com/ENG/Human%20World/Internet_Users_Animation.html 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
WWW World Wide Web(줄여서 Web 또는 WWW, W3) 클라이언트/서버(Client/Server) 구조 방식 하이퍼텍스트(Htpertext) 기반의 하이퍼미디어(Hypermedia) 정보를 인터넷의 HTTP(Hyper Text Transfer Protocol) 규약을 이용하여 저장 공유하는 기술 클라이언트/서버(Client/Server) 구조 방식 서버의 정보를 요청하는 클라이언트에게 정보를 제공하는 방식 정보를 검색하는 클라이언트는 웹 브라우저(Web Browser)라는 클라이언트 프로그램을 이용 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
전자우편 전자메일 전자우편 주소 문자 중심의 메시지에 첨부하여 멀티미디어 파일의 전송이 가능한 기능 SMTP(Simple Mail Transfer Protocol) 통신 규약 이용 자신의 컴퓨터에 내려 받아 우편을 보려면 POP(Post Office Protocol) 서버를 지정 전자우편 주소 사용자 이름이 kdhong이고 전자우편 계정을 제공하는 도메인 이름이 korea.com kdhong@korea.com 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
FTP, Usenet, Telnet FTP(File Transfer Protocol) 유즈넷(Usenet) 텔넷(Telnet) 파일을 인터넷 상에서 주고 받는 서비스에 이용하는 프로토콜 유즈넷(Usenet) 게시판과 같이 주제별로 서로의 의견을 파일로 저장하여 여러 뉴스들을 공유하는 인터넷을 이용한 전자 게시판 텔넷(Telnet) 현재의 컴퓨터에서 인터넷과 연결된 다른 컴퓨터를 내 컴퓨터처럼 사용하는 도구 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
국내의 인터넷 발전 인터넷 시초 인터넷 강국 대한민국 1982년 서울대학교와 한국전자기술연구소(Korea Institute of Electronics Technology, KIET : (한국전자통신연구원(ETRI)의 전신) 사이에 1200bps 모뎀을 사용하여 시스템 개발 네트워크(SDN: System Development Network)가 연결 인터넷 강국 대한민국 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
TCP/IP TCP/IP(Transmission Control Protocol/Internet Protocol) 서로 다른 통신망, 서로 다른 통신 프로토콜을 이용하더라도 서로 통신할 수 있는 통신 프로토콜의 필요성에 의해 개발된 통신 프로토콜 TCP/IP의 특징 TCP/IP는 개방된 프로토콜 표준 TCP/IP는 컴퓨터 하드웨어 또는 소프트웨어 그리고 네트워크 망의 종류에 관계없이 이용이 가능 TCP/IP는 인터넷 주소를 유일하게 보장하여 인터넷 상에서 언제 어디서나 쉽게 통신할 수 있다는 것 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
TCP/IP 계층구조 4개 계층으로 구분 TCP/IP의 계층구조를 OSI 7층 계층구조와 대응 네트워크 계층(Network Interface Layer) 인터넷 계층(Internet Layer) 전송 계층(Transport Layer) 응용 계층(Application Layer) TCP/IP의 계층구조를 OSI 7층 계층구조와 대응 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
IP 주소 IP 주소 IPv6 TCP/IP 기반 하에서 인터넷에 연결된 전세계의 모든 컴퓨터를 식별하는 것 네 부분으로 나뉘어 각각 0에서 255사이의 값 IP 주소는 203.237.160.218의 형태 IP주소는 32비트로 구성되므로 전세계의 모든 IP 주소 수는 최대 232개보다 적은 유한 개 IPv6 1995년 인터넷 엔지니어링 태스크 포스(IETF ; Internet Engineering Task Force)에서 개발 차세대 IP라 하여 IPng(IP next generation)라고도 명명 즉 IPv4의 대안으로 나온 IP 주소인 IPng를 IPv6 인터넷 프로토콜 버전 6(internet protocol version 6)라는 의미 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
도메인 주소 도메인 이름(Domain Name) 계층구조 숫자로 된 IP 주소를 기억하기 어렵고 사용하기도 불편하기 때문에 그에 대응하는 단어로 된 주소 IP Address가 211.218.150.250인 컴퓨터의 도메인 이름은 www.naver.com 계층구조 최상위 도메인(Top-level domain) 두 번째 도메인(Second-level domain) 세 번째 도메인(Third-level domain) 마지막은 컴퓨터 이름을 나타내는 호스트(Host) 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
국가, 기관 도메인 이름 미국 TLD 우리나라의 SLD 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
DNS DNS(Domain Name System or Service) DNS 서버 도메인 이름의 체계 또는 도메인 이름을 실제의 IP의 주소로 바꾸는 시스템 DNS 서버 컴퓨터(호스트)에 할당된 도메인 이름을 IP 주소로 변환시키는 역할을 수행하는 컴퓨터(호스트) URL(Uniform Resource Locator) 서비스 프로토콜, 도메인 이름, 호스트 내부 위치로 구성 도메인 이름은 대소문자를 구분하지 않으나 호스트 내부 위치는 호스트의 종류에 따라 대소문자를 구분하기도 함. 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
웹페이지 표시 과정 컴퓨터의 웹 페이지를 요청 도메인 이름을 IP 주소로 변환하기 위해 가장 먼저 지정된 DNS 서버를 접속하여 IP주소를 알아냄 알아낸 IP주소를 이용하여 실제 웹 서비스를 이용하려는 웹 서버에 접속하여 요청한 웹 페이지를 받아 브라우저를 이용하여 화면에 표시 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
서버 찾기 과정 현재 컴퓨터에 지정된 DNS 서버에 세계의 모든 도메인에 대한 IP 주소 정보가 저장된 것은 아님. DNS 서버는 DNS를 요청하는 컴퓨터에게 여러 DNS 서버에 계층적 이름 구조를 갖는 분산형 데이터 베이스로 구성된 자료를 이용하여 요청한 도메인 이름의 IP 주소를 알아냄. 즉 처음 요청을 받은 지역 DNS 서버는 루트 도메인 서버에게 이 요청을 전달 루트 서버는 전세계에 십여 대가 가동 중이며 루트 서버는 이 요청을 받으면 그 도메인의 IP주소 대신, IP 주소를 찾기 위한 그 다음 단계의 DNS 서버 주소를 알려줌. 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
웹 개요 WWW 역사 월드와이드웹(World Wide Web)은 유럽입자물리연구소(CERN:the European Laboratory for Particle Physics)의 연구원인 팀 버너스 리(Tim Berners Lee)가 1989년에 제안하여 개발된 정보 공유 방안 WWW는 전 세계의 연결된 인터넷 기반에서 하이퍼텍스트(hypertext) 기반의 정보를 구축하여 누구나가 쉽게 공유할 수 있는 정보 구축 방법 하이퍼텍스트 자료들은 HTML이라는 언어를 통해 표현 이러한 문서들은 HTTP라는 통신 프로토콜을 사용하여 전송 클라이언트 서버 구조 요청과 응답 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
웹브라우저(1) 웹 브라우저(Web Brower) 모자이크(Msaic) 넷스케이프 사의 내비게이터(Navigator) 웹의 정보를 쉽게 참조할 수 있도록 고안된 응용프로그램 모자이크(Msaic) 1993년 처음으로 공용 웹 브라우저인 모자이크가 개발 모자이크는 미국 일리노이 대학의 연구소인 NCSA(National Center for Supercomputer Applications) 연구소의 마크 앤더슨(Marc Andreessen)과 에릭 비나(Eric Bina)가 개발하여 공개한 최초의 웹 브라우저 넷스케이프 사의 내비게이터(Navigator) 1994년 2월, 모자이크를 개발한 앤더슨과 NCSA의 그의 동료들, 그리고 스탠포드 대학의 교수겸 실리콘 그래픽스사의 설립자였던 짐 클라크(Jim Clark)는 넷스케이프 커뮤니케이터(Netscape Communications)라는 회사를 설립 넷스케이프 커뮤니케이터 사는 1994년 12월에 모자이크 브라우저보다 더 성능이 우수한 웹 브라우저인 내비게이터 1.0을 개발 내비게이터 1.0은 모질라(Mozilla)라는 이름으로도 알려져 있음. 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
웹브라우저(2) 마아크로스프트 사의 인터넷 익스플로러(IE: Internet Explorer) 파이어폭스 마이크로소프트 사의 인터넷 익스플로러는 1995년 8월 버전1.0이 발표 마이크로소프트 사는 NCSA의 모자이크의 소스를 사들여 인터넷 익스플로러라는 제품으로 발표 1998년 발표된 버전5.0은 안정된 서비스로 넷스케이프 사의 내비게이터를 위협 파이어폭스 공개된 웹 브라우저 넷스케이프 사를 인수 합병한 AOL-타임워너가 2003년 6월 모질라를 별도의 비영리재단으로 독립시켜 공개 프로젝트로 네티즌과 함께 개발 2004년 11월 버전 1.0을 발표 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
웹 서버 웹 서버 정의 웹 서버 종류 웹 서버는 웹의 HTTP를 사용하여 클라이언트의 요청에 응답을 하는 프로그램 웹 서버는 서버의 역할을 수행하기 위해 항상 실행되어 있어야 하며 클라이언트가 요청한 페이지 또는 프로그램을 실행하여 파일이나 그 결과를 사용자들에게 제공 웹 서버 종류 아파치(Apache) IIS(Internet Information Server) 아파치 소프트웨어 파운데이션(Apache Software Foundation)에서 열린 소스(Open Source)로 개발되고 있는 공개 프로젝트인 아파치 HTTP 서버(Apache HTTP Server)에서 개발 장점 리눅스와 같이 누구나 자유롭게 이용할 수 있다는 장점 그 성능도 뛰어나 현재 가장 많이 이용하는 웹 서버 다운로드 홈페이지 http://httpd.apache.org/download.cgi 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
HTML(Hypertext Markup Language) 웹을 통하여 정보를 전달하기 위한 문서를 작성하는 표준 언어 하이퍼미디어를 생성하고 문서 요소를 묘사하는 태그로 구성된 언어로 이전의 표준 범용 마크 언어인 SGML(Standard Generalized Markup Language)을 기반으로 정의 HTML은 문서의 구성 요소를 태그를 이용하여 표현 태그는 일반적으로 <HTML>와 같은 시작 태그와 </HTML>와 같은 종료 태그로 구성 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
HTML 태그 기본 기본 태그 예 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
HTML 태그(1) 폰트 관련 태그 목록 태그 링크태그 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
HTML 태그(2) 표를 위한 태그 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
XML XML 1996년 W3C(World Wide Web Consortium)의 후원으로 형성된 XML Working Group에 의해 개발 HTML의 단점을 보완하고 SGML의 장점을 결합시킨 마크 업 언어로, XML 1.0이 1998년 2월에 발표 XML 문서의 가장 큰 장점은 원하는 문서 내용을 태그로 정의하여 이용할 수 있을 뿐 아니라 그 내용과 디자인이 완전히 분리할 수 있다는 것 즉, XML은 문서의 구조와 프리젠테이션을 분리하여 구현 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
VBScript와 JavaScript 스크립트 언어 JavaScript VBScript 컴파일 없이 웹 브라우저 상에서 직접 수행이 가능한 스크립트 언어로 HTML문서에서 태그로 표현할 수 없는 로직 처리를 담당하기 위해 개발된 언어 스크립트 언어는 태그 <script>를 이용해 HTML 문서에서 이용 가능 JavaScript 선마이크로시스템즈 사와 넷스케이프 커뮤니케이션스사가 공동 개발한 스크립트 언어 1996년 2월에 발매한 웹 브라우저인 넷스케이프 내비게이터 2.0에서부터 사용 가능 VBScript JavaScript에 대항하여 마이크로소프트사가 비주얼베이직(Vusual Basic) 언어를 기초로 만든 스크립트 언어 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
인터넷 서버 프로그래밍 ASP JSP 마이크로소프트사가 1995년도에 IIS 3.0을 발표하면서 함께 발표한 기술 비주얼 베이직을 기본으로 개발된 VBScript를 HTML 문서에 직접 코딩하여 동적인 웹 페이지를 구현하는 기술 JSP 선마이크로시스템즈 사가 개발한 인터넷 서버 프로그래밍 기술 선마이크로시스템즈 사는 자바 언어를 기반으로 하는 인터넷 서버 프로그래밍 방식인 서블릿(Servlets)을 먼저 개발하여 과거의 CGI(Common Gate Interface) 개발 방식을 대체 그러나 자바를 이용한 서블릿 개발 방식이 그리 쉽지 않고 PHP, ASP등과 같이 HTML 코드 내에 직접 비즈니스 로직을 삽입할 수 있는 개발 방식이 필요하게 되어 개발한 기술이 JSP 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
웹 2.0 패러다임 웹 2.0(Web 2.0)은 웹 2.0은 새로운 기술이 아니라 미래의 인터넷 또는 웹에 대한 방향성을 제시한 일종의 패러다임 정보의 개방성, 이동성, 연결성 등과 관련된 개념 대표적 사이트 구글 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
Ajax(1) Ajax Asynchronous Javascript And XML의 머리글자의 조합 일반적으로 에이잭스라고 발음 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
Ajax(2) 장점 Ajax 기법을 이용하면 단순한 사용자의 응답으로 페이지 전체를 다시 수정하거나 다시 실행하는 비효율성을 줄일 수 있음. 기존의 방식이 새로운 데이터를 불러오려면 전체 페이지를 다시 로딩해야 것과 달리 Ajax는 SOAP(Simple Object Access Protocol), XML(eXtensible Markup Language) 등 소프트웨어 통신 프로토콜을 이용해 브라우저의 사용자 화면 구성에 필요한 서비스만을 서버에 호출하며 웹 서버의 응답을 처리하기 위해 클라이언트 쪽에서는 자바스크립트를 이용해 그 결과를 화면에 적용할 수 있음. 응용 프로그램의 응답성이 좋아짐. 웹 서버에서 전적으로 처리되던 데이터 처리의 일부분이 클라이언트 쪽에서 처리되므로 웹 브라우저와 웹 서버 사이에 교환되는 데이터량과 웹 서버의 데이터 처리량도 줄어들기 때문에 전체적인 웹 서버 처리량도 줄어들게 됨 웹 서버의 데이터 처리에 대한 부하를 줄여주는 일이 요청을 주는 수많은 컴퓨터에 대해서 일어나기 때문에 한국대학교 컴퓨터과 객체지향연구실 홍길동 교수
Thank You !