Tìm hiều ngôn ngữ ASP (Active server Page

Từ khi xuất hiện cho đến nay, World Wide Web ngày càng trở nên phổ biến, là một phương tiện truy nhập mạng đơn giản và rất thân thiện với người sử dụng. Với các trang Web, người sử dụng có thể tìm kiếm và tải về rất nhiều thể loại hình thông tin trên mạng mà không cần phải có nhiều hiểu biết về mạng. Đứng trên quan điểm của người sử dụng, họ không cần quan tâm đến việc thông tin mà họ tìm kiếm ở một hệ thống ngay bên cạnh hay ở một nơi ở đầu kia của quả đất. Chính điều này dẫn đến sự bùng nổ về lưu lượng trên các mạng đường trục khu vực. Việc sử dụng dịch vụ Web đang tǎng theo cấp số mũ, lưu lượng WWW trên các mạng Internet quốc gia và quốc tế cũng tǎng đột biến. Và Việt Nam cũng không thể nằm ngồi vòng xốy của cơn lốc WWW, các cổng giao tiếp điện tử, các hệ thống E-leanrning đang là những ứng dụng mới và đang được áp dụng ở Việt Nam. Các ứng dụng này trong tương lai sẽ càng phát triển mạnh hơn cùng sự phát triển của hạ tầng mạng máy tính và đòi hỏi tin học hố ngày càng cao của xã hội. Tuy nhiên để có được sự phát triển rộng rãi đó không phải là vấn đề đơn giản. Các hệ thống này càng phát triển thì người ta càng thấy thêm nhiều hạn chế, cản trở của cơ sở hạ tầng mạng cũng như các giải pháp sẵn có. Thứ nhất, mặc dù mạng máy tính đang ngày một phát triển nhưng với điều kiện của nước ta, cơ sở vật chất hạ tầng mạng máy tính vẫn còn rất thấp kém. Chất lượng dịch vụ và thời gian đáp ứng có thể được cải thiện bằng cách giảm tải cho mạng. Một cách để đạt được yêu cầu này là sử dụng kỹ thuật Web caching. Kĩ thuật Web Caching ra đời đã nâng cao được hiệu quả trong việc thực hiện tăng tốc các ứng dụng Web.

Cùng với việc nghiên cứu về Web Caching, trong khuôn khổ đồ án tốt nghiệp này em cũng xây dựng một Website nhằm hỗ trợ cho các bạn học sinh, sinh viên những người quan tâm đến kiến thức về hạ tầng mạng cơ sở, nhằm đem lại một kiến thức tốt nhất trong việc xây dựng và bảo trì một hệ thống mạng máy tính.

Đồ án của em sẽ trình bày lần lượt các khái niệm về Internet, cách thức hoạt động của một trang Web, tìm hiểu về Web Caching và sau đó là phân tích thiết kế và xây dựng hệ thống.

Đồ án được chia làm 5 chương với nội dung chính như sau:

Chương I : Tổng quan về Internet và Intranet

Chương này sẽ đưa ra các khai niệm cơ bản về Internet, về Web và cách thức mà một trang Web hoạt động trên Internet

Chương II : Tìm hiều về Web Caching

Chương này sẽ đưa ra những khái niệm cơ bản của Web Caching. Giải pháp để tối ưu hố tốc độ duyệt Web và cách cài đặt Web Caching trên các máy Client

Chương III :Tìm hiều ngôn ngữ ASP (Active server Page)

Tìm hiểu công cụ ASP ngôn ngữ lập trình VB script để xây dựng hệ thống

Chương IV : Phân tích và thiết kế hệ thống

Đưa ra những phân tích về chức năng, thiết kế hệ thống cơ sở dữ liệu để có thể triển khai hệ thống.

Chương V : Cài đặt và thử nghiệm

 

docx70 trang | Chia sẻ: luyenbuizn | Lượt xem: 1291 | Lượt tải: 0download
Bạn đang xem trước 20 trang nội dung tài liệu Tìm hiều ngôn ngữ ASP (Active server Page, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Lời cảm ơn Em xin chân thành cảm ơn cô giáo Dỗn Hồ Liên là người đã trực tiếp hướng dẫn em trong quá trình thực hiện đồ án này. Cô đã nhiệt tình chỉ bảo, giải đáp mọi thắc mắc, cung cấp các kiến thức cần thiết giúp em hồn thành đề tài. Quan trọng hơn, cô là người định hướng để em tiếp cận được với phương pháp nghiên cứu khoa học nói chung và phương pháp nghiên cứu thực hiện phân tích, thiết kế một ứng dụng thực tế. Qua đây em cũng xin được cảm ơn các thầy cô trong khoa CNTT đã tận tình dạy bảo em trong 5 năm học tại trường cùng các bạn sinh viên đã đóp góp những ý kiến quý báu cho chương trình. LỜI NÓI ĐẦU Từ khi xuất hiện cho đến nay, World Wide Web ngày càng trở nên phổ biến, là một phương tiện truy nhập mạng đơn giản và rất thân thiện với người sử dụng. Với các trang Web, người sử dụng có thể tìm kiếm và tải về rất nhiều thể loại hình thông tin trên mạng mà không cần phải có nhiều hiểu biết về mạng. Đứng trên quan điểm của người sử dụng, họ không cần quan tâm đến việc thông tin mà họ tìm kiếm ở một hệ thống ngay bên cạnh hay ở một nơi ở đầu kia của quả đất. Chính điều này dẫn đến sự bùng nổ về lưu lượng trên các mạng đường trục khu vực. Việc sử dụng dịch vụ Web đang tǎng theo cấp số mũ, lưu lượng WWW trên các mạng Internet quốc gia và quốc tế cũng tǎng đột biến. Và Việt Nam cũng không thể nằm ngồi vòng xốy của cơn lốc WWW, các cổng giao tiếp điện tử, các hệ thống E-leanrning đang là những ứng dụng mới và đang được áp dụng ở Việt Nam. Các ứng dụng này trong tương lai sẽ càng phát triển mạnh hơn cùng sự phát triển của hạ tầng mạng máy tính và đòi hỏi tin học hố ngày càng cao của xã hội. Tuy nhiên để có được sự phát triển rộng rãi đó không phải là vấn đề đơn giản. Các hệ thống này càng phát triển thì người ta càng thấy thêm nhiều hạn chế, cản trở của cơ sở hạ tầng mạng cũng như các giải pháp sẵn có. Thứ nhất, mặc dù mạng máy tính đang ngày một phát triển nhưng với điều kiện của nước ta, cơ sở vật chất hạ tầng mạng máy tính vẫn còn rất thấp kém. Chất lượng dịch vụ và thời gian đáp ứng có thể được cải thiện bằng cách giảm tải cho mạng. Một cách để đạt được yêu cầu này là sử dụng kỹ thuật Web caching. Kĩ thuật Web Caching ra đời đã nâng cao được hiệu quả trong việc thực hiện tăng tốc các ứng dụng Web. Cùng với việc nghiên cứu về Web Caching, trong khuôn khổ đồ án tốt nghiệp này em cũng xây dựng một Website nhằm hỗ trợ cho các bạn học sinh, sinh viên những người quan tâm đến kiến thức về hạ tầng mạng cơ sở, nhằm đem lại một kiến thức tốt nhất trong việc xây dựng và bảo trì một hệ thống mạng máy tính. Đồ án của em sẽ trình bày lần lượt các khái niệm về Internet, cách thức hoạt động của một trang Web, tìm hiểu về Web Caching và sau đó là phân tích thiết kế và xây dựng hệ thống. Đồ án được chia làm 5 chương với nội dung chính như sau: Chương I : Tổng quan về Internet và Intranet Chương này sẽ đưa ra các khai niệm cơ bản về Internet, về Web và cách thức mà một trang Web hoạt động trên Internet Chương II : Tìm hiều về Web Caching Chương này sẽ đưa ra những khái niệm cơ bản của Web Caching. Giải pháp để tối ưu hố tốc độ duyệt Web và cách cài đặt Web Caching trên các máy Client Chương III :Tìm hiều ngôn ngữ ASP (Active server Page) Tìm hiểu công cụ ASP ngôn ngữ lập trình VB script để xây dựng hệ thống Chương IV : Phân tích và thiết kế hệ thống Đưa ra những phân tích về chức năng, thiết kế hệ thống cơ sở dữ liệu để có thể triển khai hệ thống. Chương V : Cài đặt và thử nghiệm Đưa ra được một số hình ảnh minh hoạ của hệ thống. CHƯƠNG I: TỔNG QUAN INTERNET - INTRANET I.1 Internet là gì ? Internet là một mạng máy tính tồn cầu sử dụng một ngôn ngữ truyền thông chung nó tương tự như một hệ thống điện thoại quốc tế nhưng nó được nối kết theo cách làm việc của một mạng lớn. World Wide Web (WWW) cho ta một hình ảnh dễ dàng giao tiếp và tìm kiếm dữ liệu trên Internet. Các dữ liệu này được liên kết với nhau thông qua trang Web. Các file, các trang được nối kết với nhau thông qua các mối liên kết là text hoặc hình ảnh được gọi là HyperLink. Các trang Web có thể chứa văn bản, hình ảnh, phim, âm thanh. Các trang này có thể được đặt trên một máy tính ở nơi nào đó trên thế giới. Khi ta nối kết tới Internet ta có thể truy xuất thông tin trên tồn cầu. HyperLink là các text hay hình ảnh mà được gắn địa chỉ Web trên đó. Bằng cách click vào hyperlink ta có thể nhảy tới một trang thành phần của một Web site. Mỗi một Web site có một trang chủ của Web site đó và có một địa chỉ duy nhất được gọi là Uniform Resource Locator (URL). URL xác định chính xác tên của máy tính và đường dẫn tới một trang Web xác định. I.2 Intranet là gì ? Intranet dựa vào TCP/IP Network nhưng không nối kết tới Internet mà chỉ sử dụng chuẩn truyền thông Internet và các công cụ của nó dùng để cung cấp thông tin tới người sử dụng trên một mạng riêng. Ví dụ một công ty có thể cài đặt một Web server chỉ cho các thành viên của công ty trao đổi thư từ tin tức,thông tin thương mại...Các thành viên truy xuất thông tin bằng cách dùng các Web browser. I.3 Internet Information Server là gì ? Internet Information Server (IIS) là một Web server cho phép ta công bố thông tin trên mạng Intranet hay Internet. Internet Information Server truyền tải thông tin bằng cách dùng Hypertext Transfer Protocol (HTTP), Internet Information Server cũng có thể dùng phương thức FTP hoặc Gopher. I.3.1 Internet Information Server làm việc như thế nào ? Web là một hệ thống yêu cầu (Request) và đáp ứng (Response). Web browser yêu cầu thông tin bằng cách gửi một URL tới Web server, Web server đáp ứng lại bằng cách trả lại một trang HTML cho Web browser. HTML có thể là một trang Web tĩnh được lưu sẵn ở trên Web server hoặc có thể là một trang Web động mà server tạo ra khi đáp ứng yêu cầu của người sử dụng hoặc là một trang ở thư mục nào đó trên server. I.4 Web Browser URL Request Mỗi trang Web trên Intranet hoặc Internet có một URL duy nhất. Web browser yêu cầu một trang bằng cách gửi một URL tới một Web server. Web server sử dụng thông tin trong URL để xác định và cho hiển thị trang Web theo yêu cầu của Browser. Cú pháp URL là một chuỗi văn bản tuần tự gồm có : Protocol, Domain Name, và đường dẫn (Path) tới thông tin yêu cầu. Protocol là chuẩn truyền thông dùng để truyền tải thông tin như là : HTP, FTP và Gopher. Domain Name chính là Domain Name System (DNS) của máy tính chứa thông tin. Path là đường dẫn tới thông tin yêu cầu trên máy tính.Ví dụ : Phương thức Tên Domain Đường dẫn (Path) Http:// www.microsoft.com /backoffice Https:// (secure HTTP) www.company.com /catalog/orders.htm Gopher:// gopher.college.edu /research/astronomy/index.htm ftp:// orion.bureau.gov /stars/alpha quadrant/starlist.txt Một URL cũng có thể chứa thông tin mà Web server cần phải xử lý trước khi trả lại một trang, dữ liệu trong URL được gắn thêm vào cuối đường dẫn. Web server gửi dữ liệu này tới một chương trìng hay một Scirpt để xử lý và trả lại kết quả trong một trang web.Ví dụ : Request Type URL Static HTML page ISAPI application Internet Database Connector Common Gateway Interface (CGI) script I.5 Web Server Response Web server đáp ứng yêu cầu của Web browser bằng cách trả lại một trang HTML. Trang trả lại có thể là trang HTML tĩnh, trang HTML động hoặc là trang trong danh sách thư mục. I.6 Trang HTML tĩnh (Static Page) Một trang HTML tĩnh là trang đã được chuẩn bị sẵn cho các yêu cầu nhất định và được đặt sẵn trên Web server. Người sử dụng yêu cầu một trang HTML tĩnh bằng cách gõ trực tiếp URL hoặc là Click vào Hyperlink của URL nào đó, URL được gửi tới server. Server đáp ứng bằng cách trả lại trang HTML tĩnh. I.7 Trang động (Dynamic Page) Các trang động được tạo ra trong quá trình đáp ứng cho yêu cầu của người sử dụng. Một Web browser thu thập thông tin bằng cách thực hiện một trang có các Textbox, Menu, Checkbox... cho phép người sử dụng điền vào hoặc lựa chọn. Khi người sử dụng click vào một nút (button) trên Form, dữ liệu từ Form được gửi tới Web server. Server đưa dữ liệu này tới một Script hoặc một trình ứng dụng để xử lý. Sau đó server gửi lại kết quả cho browser bằng một trang HTML. Ví dụ sau đây cho phép ngưới sử dụng gửi một yêu cầu tới một Internet Server API (ISAPI), ứng dụng này dùng để cộng 2 số. Ngưới sử dụng ngập 2 số được cộng sau đó click một button để gửi 2 số đó tới web server. Web server gọi một ISAPI để cộng 2 số, sau đó trả lại kết quả cho browser bằng một trang HTML. Minh họa sau đây cho phép người sử dụng truy cập vào database bằng cách dùng Internet Database Conector. Người sử dụng hồn thành một Form sau đó click vào một button để gửi dữ liệu tới server. Server nạp dữ liệu vào database sau đó trả lại một trang HTML kết quả cho browser. I.8 Sử dụng Internet Information Server như thế nào ? Internet Information Server đủ khả năng đáp ứng các chức năng quan trọng cho các tổ chức khác nhau. Chúng ta có thể sử dụng một Server cho một Web site hoặc cũng có thể sử dụng nhiều server cho một Web site. Một trong những nhân tố để xác định cấu hình Internet Information Server là nó được sử dụng bên trong nội bộ của một mạng Intranet hay nó được nối kết tới Intetnet. Các kịch bản sau đây giúp ta hiểu thêm phạm vi và khả năng sử dụng của Internet Information Server. I.9 Các kịch bản Intranet Trong một nhóm(Workgroup) ta có thể tích hợp Internet Information Server với một Server. Web server của Workgroup có khả năng tổ chức các loại trang web để đáp ứng cho các ứng dụng trong workgroup như là cho phép giao tiếp với Database SQL hay là cho phép truy xuất tài nguyên từ xa(Remote Access Service). Trong một mạng thương mại lớn có nhiều bộ phận (workgroup), mỗi bộ phận chạy Internet Information Server trên server của mình. Một server trung tâm được dùng để phối hợp và quản lý tất cả thông tin trên mạng. I.10 Các kịch bản Internet. Internet Information server có thể là một Web server đơn giản trên Internet như ví dụ minh họa sau đây Trong các Site lớn hơn, ta có thể cho phép các thành viên trong mạng truy xuất tới Web server và sử dụng các công cụ chế tác như FrontPage để chế tác nội dung cho Web server. Sự tích hợp Internet Information Server với Windows NT có thể tạo ra các server có nhiều chức năng. Ví dụ như một công ty có nhiều site khác nhau trên thế giới, có thể dùng Internet Information Server để truyền thông giữa các site này với nhau, và ta cũng có thể dùng RAS để cho phép truy cập tới Intranet hoặc Internet. Nhiều kịch bản nối kết tới Internet còn liên quan tới thành phần thứ ba là các Routersvà các thiết bị an ninh nằm giữa máy tính của ta và Internet dùng để lọc các gói(packets) thông tin gửi qua chúng. Các trường hợp này chưa được đề cập trong các kịch bản ở trên. CHƯƠNGII : TÌM HIỂU WEB CACHING II.1 Các thuật ngữ cơ bản Tuy nhiên trước khi đi vào các khái niệm về Web caching ta sẽ tìm hiểu một số thuật ngữ hay được dùng trong khi giải thích các khái niệm và nó cũng là những thuật ngữ chuẩn của Internet. II.1.1 Client – Server Đây là những khái niệm nền tảng để xây dựng nên một hệ thống ứng dụng Web. - Client: là các chương trình ứng dụng dùng để thiết lập kết nối với mục đích gửi đi các yêu cầu cung cấp dịch vụ. Đó là các trình duyệt Web, các trình biên tập (editor) hoặc các công cụ người sử dụng cuối khác. Các client thông dụng nhất thường chạy trên máy của người sử dụng cuối - Server: là chương trình ứng dụng dùng để chấp nhận kết nối với mục đích phục vụ các yêu cầu cung cấp dịch vụ bằng cách gửi các đáp ứng trở lại phía yêu cầu. Đối với các hệ thống cung cấp dịch vụ lớn, các chương trình này thường chạy trên các hệ thống phần cứng riêng và thường được phân biệt là phần cứng server và phần mềm server. Một máy chủ Web (Web server) thì quản lý và cung cấp việc truy cập tới một tập hợp các tài nguyên trên nó. Tài nguyên trên nó thì có thể đơn giản chỉ là các file văn bản, hình ảnh hoặc có thể là các dữ liệu phức tạp hơn chẳng hạn như các cơ sở dữ liệu. Trên nền tảng Web thì hầu hết các yêu cầu chủ yếu là các công việc download. Các máy client thì download thông tin từ server. Trong trường hợp này chính nó gửi thông tin yêu cầu chứa tên của tài nguyên cộng thêm với một vài thông tin từ phía client thì hồn tồn nhỏ (200 B) trong đó thông tin download về thì thường là các dữ liệu văn bản hoặc hình ảnh với kích thước trung bình khoảng 10000B. Đây chính là một trong những đặc điểm cơ bản của hệ thống Web. Tốc độ nhận dữ liệu bao giờ cũng cao hơn tốc độ truyền dữ liệu đi bởi vậy hầu hết người sử dụng Web thì thường xuyên nhận thông tin. Web client thường dùng được gọi là trình duyệt (browser). Những ứng dụng này chẳng hạn như là Nescape và Microsoft Internet Explore. Mục đích của những trình duyệt này là hiện thị nội dung của một trang Web Có một số lượng lớn các server được sử dụng rộng rãi trên Web. Apache HTTP server là một trong những server Web thông dụng và hồn tồn miễn phí. Netcape , Microsoft và các công ty khác cũng có một số các sản phẩm. Nhưng hầu hết tất cả các sản phẩm thì đều tập trung và hiệu năng của các server. Một site nổi tiếng trên Net thì có thể nhận 10 triệu yêu cầu một ngày. Trong trường hợp này thì cả phần cứng lẫn phần mềm đều phải được thiết kế một cách cẩn thận để có thể đáp ứng được nhiều yêu cầu một lúc như vậy. Có rất nhiều site chạy trên nhiều server song song với nhau để có thể đáp ứng được tỉ lệ cao các yêu cầu như vậy và còn phục vụ cho việc dự phòng. II.1.2 Proxy Một chương trình trung gian có thể hoạt động với vai trò của server hoặc của client nhằm mục đích thay mặt các client tạo ra các yêu cầu. Yêu cầu được phục vụ tại chỗ hoặc chuyển qua các proxy đến các server khác. Một proxy phải biết biên dịch và nếu cần có thể viết lại các thông điệp yêu cầu trước khi chuyển tiếp yêu cầu. Các proxy thường được sử dụng như các bộ đóng gói phía client qua các firewall của mạng và như các chương trình hỗ trợ để xử lý các yêu cầu thông qua các giao thức không được triển khai ở phía người sử dụng. II.1.3 Cache Một nơi lưu trữ tạm thời các bản tin đáp ứng của chương trình, một hệ thống phụ trợ điều khiển việc lưu trữ, cung cấp và huỷ các tài liệu. Cache lưu các bản tin đáp ứng có thuộc tính có thể lưu trữ được (cacheable) để giảm thời gian đáp ứng và bǎng thông tiêu thụ cho mỗi yêu cầu. Bất cứ client hay server nào đều có thể có cache. - Mạng lưới cache server (caching mesh): hệ thống các caching server phối hợp hoạt động với nhau. - Web cache server cục bộ (local cache): cache server chạy trên cùng một mạng LAN với client.s - Web cache server cấp một: Web cache server mà client của người sử dụng kết nối trực tiếp đến . Loại này gần giống loại cục bộ. - Web cache server cấp cao (upper-level cache hay entry cache): nhìn từ phía client, tất cả các cache tham gia vào mạng lưới caching không kết nối thẳng đến client là các cache server cấp cao. Trong các loại Web cache server cấp cao có loại Parent cache được kết nối trực tiếp đến Web server. Như vậy, trong một mạng lưới thì tên của các Web cache chỉ mang tính chất tương đối. II.1.4 Các đối tượng Web( Web Object) “Đối tượng” ở đây có thể được hiểu là các loại dữ liệu khác nhau trên server chẳng hạn như file audio, file Zip,.. Đối tượng Web thì có một số các đặc điểm quan trọng như kích thước, kiểu file (HTML, image, audio..), thời gian tạo ra file, thời gian chỉnh sửa gần nhất. II.1.5 Nhận biết tài nguyên (Resource Indentifier) Nhận biết tài nguyên cũng là một trong những khái niệm cơ bản của kiến trúc Web. Đó có thể là tên hay địa chỉ của một đối tượng Web. Nó cũng giống như là địa chỉ của một con đường hay số điện thoại. Thông thường thì người ta hay gọi là Universal Resource Identifiers (URI). Chúng thì thường được sử dụng cho cả người và máy tính.Caches thì thường được sử dụng để nhận biết chúng. Uniform Resource Locators (URLs) là một dạng thông dụng của URI. Dưới đây là một vài ví dụ vể URLs ftp://ftp.freebsd.org/pub/FreeBSD/README.TXT II.1.6 Các giao thức truyền Web Cả Client và Server thì thường sử dụng các giao thức vận chuyển khác nhau để trao đổi thông tin cho nhau.Các giao thức trên được xây dựng chủ yến dựa trên giao thức TCP/IP. The Hypertext Transfer Protocol (HTTP) là một trong những giao thức phổ biến nhất hiện nay bởi vì chúng được thiết kế cho Web. Một trong số những giao thức khác như File Tranfer Protocol (FTP) hay Gopher thì vẫn được sử dụng cho đến ngày nay. Ngồi ra một số giao thức mới xuất hiện gần đây như Secure Sockét Layer (SSL) hay Real-time Transport Protocol (RTP) cũng thường xuyên được sử dụng . II.2 Định nghĩa Web Caching Kỹ thuật Web Caching chính là việc chuyển bản copy của các tài liệu Web từ Web server đến gần với Web client hơn. Nhìn chung, người sử dụng Web client sẽ chỉ nhận thấy độ trễ rất thấp khi yêu cầu một URL, phía nhà quản lý mạng sẽ nhận thấy ít lưu lượng hơn và các Web server có số lượng các yêu cầu cung cấp dịch vụ thấp hơn. Web client yêu cầu tài liệu từ Web server hoặc trực tiếp hoặc thông qua Web cache server hay proxy. Web cache server có chức nǎng như Web server khi nhìn từ phía client và có chức nǎng như client khi nhìn từ phía Web server. Chức nǎng của Web cache server là lưu trữ các tài liệu Web (có thể là các trang HTML, các hình ảnh hoặc các tệp tin) tại vị trí gần với người sử dụng để tránh phải chuyển về nhiều lần cùng một tài liệu qua cùng một kết nối và do đó làm giảm thời gian tải về và tạo ra ít tải hơn trên các server đầu xa II.3 Tại sao phải sử dụng Cache đối với Web ? Đơn giản vì nó tiết kiệm được thời gian cho người duyệt Web. Nó cung cấp một cách hiệu quả khả năng phân bổ thông tin trên Web. Chúng ta hãy xem xét một ví dụ thực tế về việc phân bổ sách. Chúng ta hãy suy nghĩ làm sao các cuốn sách được phân bố tới tay của những độc giả ? Các nhà xuất bản in những cuốn sách và bán chúng với số lượng lớn tới các nhà bán buôn. Các nhà bán buôn thì lại bán các cuốn sách với số lượng nhỏ hơn tới các cửa hàng sách. Độc giả có thể đến các cửa hàng sách và mua các cuốn sách đó. Trên internet thì Web caches cũng hoạt động tương tự như các cửa hàng sách và các nhà phân phối. 3 lợi ích chính của Web caching + Làm cho trang Web được load nhanh hơn (giảm thời gian trễ) + Giảm băng thông sử dụng + Giảm số lần truy cập lại trên server gốc II.3.1 Thời gian trễ Thời gian trễ chính là khoảng thời gian mà dữ liệu được chuyển từ nơi này đến nơi khác. Một nguồn gốc khác của việc trễ mạng chính là ngẽn mạng. Khi các đường kết nối đã được sử dụng tối đa thì các gói tin sẽ được xếp hàng trong các Router hay Switch. Khi các gói tin đã được xếp đầy trong hàng đợi thì nó sẽ loại bỏ tất các các gói tin tiếp theo đến. Với những giao thức tin cậy như TCP/IP việc mất gói tin thì tương đương với việc truyền lại gói tin. Vì vậy việc truyền lại sẽ gây mất rất nhiều thời gian, làm giảm tốc độ của mạng trong việc truyền tin. II.3.2 Băng thông Băng thông chính là dung lượng đường truyền mà dữ liệu đi qua. Với mỗi yêu cầu mà dữ liệu là kết quả trong web caching thì nó sẽ tiết kiệm được băng thông. Khi đó sẽ không tốn băng thông để dữ liệu truyền từ máy server gốc mà nó lấy luôn dữ liệu trong cache. Web cache thì giảm băng thông sử dụng bởi các luồng dữ liệu HTTP. Điều này có thể nói là web cache làm tăng hiệu quả của băng thông. Nếu một mạng hỗ trơ 100 người dùng khi không có web cache thì sẽ hỗ trợ được 150 người dùng khi có web cache. II.3.3 Server Load Cũng giống như việc giảm băng thông thì việc giảm thời gian khi sử dụng server gốc. Các server thì đáp ứng liên tục các yêu cầu từ phía các client. Một server rỗi thì chắc chắn sẽ nhanh hơn so với server bận. Vì vậy chiến lược ở đây là sử dụng Web caching để giảm thời gian load dữ liệu của các hệ thống server. II.4 Phân loại Web caching Nội dung của một trang Web thì có thể được lưu trữ ở nhiều vị trí khác nhau dọc theo các đường dẫn giữa các client và các server gốc. Đầu tiên các trình duyệt cũng tự mình xây dựng hệ thống cache trong nó. Người ta gọi nó là Browser caches. Tiếp theo là caching proxy (proxy cache) kết hợp tất cả các yêu cầu của các client thành một nhóm.Cuối cùng một hệ thống đại diện có thể được đặt tại đầu các server gốc để lưu trữ những đáp ứng thường xuyên. II.4.1 Browser Caches (Client Cache) Các trình duyệt thì cũng xây dựng trong nó hệ thống cache. Mỗi khi ta nhấn nút Back trên trình duyệt thì nó đọc lại cho ta trang ta vừa xem trong cache của nó. Đối tượng cache có thể là các file tạm thời trên đĩa hoặc có thể là trong bộ nhớ trong. Trong khi trình duyêt Web Netscape yêu cầu bạn phải xác định xem không gian đĩa dành cho caching là bao nhiêu. Microsoft thì yêu cầu bạn cần phải điều khiển kích thước cache dành cho đĩa của bạn là bao nhiêu. Thông thường thì ta thường sử dụng 10-100 MB không gian đĩa cứng dành cho Browser cache. II.4.2 Caching Proxy (Server Cache) Loại cache này nằm trên một server trong mạng lưới gồm nhiều client và nhiều server. Thông thường, nó không nằm trong cùng một hệ thống chạy một loại Web client hay một HTTP server nào đó. Không giống như Browser caches, dịch vụ cache này có thể phục vụ nhiều user cùng một lúc. Khi có nhiều người cùng tới thăm một website tại một thời điểm thì caching proxies thường được sử dụng hơn Browser cache. Caching proxies thì cần thiết đối với rất nhiều tổ chức như các nhà cung cấp dịch vụ Web, các tổng công ty lớn, các trường đại học, viện nghiên cứu. Caching Proxies thì thường được đặt ở các gateway (như router) hay nói một cách khác thì nó thường được sử dụng để có thể phục vụ một số lượng người lớn nhất. II.5 Web caching hoạt động như thế nào ? Tất cả các hệ thống cache đều sử dụng một bộ nguyên tắc để xác định thời điểm cung cấp các đối tượng (hay các tài liệu Web), tất nhiên là với điều kiện các đối tượng đó đã được lưu trong cache. Trường hợp các đối tượng được yêu cầu chưa được lưu sẵn trong cache thì cache server sẽ gửi yêu cầu đó đến server gốc. Một số nguyên tắc được thiết lập trong các giao thức HTTP/1.0, HTTP/1.1 và một số khác được thiết lập bởi những người quản trị cache (có thể là người sử dụng browser cache hoặc người quản trị proxy). II.5.1 Các nguyên tắc chung + Nếu phần tiêu đề của đối tượng cho cache biết không phải lưu đối tượng thì cache không lưu đối tượng đó. Nếu biến logic xác nhận (biến validator) không xuất hiện, phần lớn các cache sẽ đánh dấu đối tượng là không thể lưu (uncacheable). + Nếu đối tượng có yêu cầu nhận thực hay bảo mật, nó sẽ được lưu. + Một đối tượng được lưu được coi là còn tươi - "fresh" (có nghĩa là có thể được gửi tới client mà không cần sự kiểm tra của server gốc) - Nó có thời gian tồn tại (hoạt động theo dạng một loại bộ đếm) còn nằm trong khoảng thời gian fresh (chưa quá hạn) - Nếu một browser cache đã từng hiển thị đối tượng và đối tượng này đã được đánh dấu là đã kiểm tra trong một phiên trước đó. - Nếu proxy cache mới xử lý nó gần đây và nó đã được sửa đổi trước đó tương đối lâu. Các đối tượng fresh được lấy trực tiếp từ cache mà không cần kiểm tra với server gốc. +Nếu một đối tượng được coi là cũ, server gốc sẽ được yêu cầu xác nhận đối tượng hoặc báo cho cache rằng đối tượng đó vẫn còn giá trị sử dụng. Quá trình xác nhận và kiểm tra xem đặc tính "fresh" của đối tượng là những biện pháp quan trọng giúp cache làm việc với các đối tượng. Một đối tượng "mới" sẽ khả dụng tức thời từ cache, trong khi một đối tượng "phải xác nhận" (validated) sẽ tránh phải gửi lại một lần nữa từ server gốc nếu nó không có gì thay đổi. II.5.1.1 HTTP requests Client thì luôn sử dụng HTTP khi chúng giao tiếp với proxy. Điều này cũng đúng khi client yêu cầu một FTP hoăc Gopher URL. Client sẽ đưa ra những yêu cầu không khác nhau là mấy đối với proxy server cũng như đối với server gốc. Trong trường hợp này thì các yêu cầu được tham chiếu tới proxy được xem như là yêu cầu proxy HTTP. II.5.1.2 Yêu cầu đối với server gốc Trước tiên ta hãy xem một yêu cầu được gửi đến cho server gốc. Giả sử ta yêu cầu một URL như sau: . Khi Client mà không cấu hình sử dụng proxy thì nó sẽ kết nối trực tiếp tới server gốc (www.nlanr.net) để gửi yêu cầu này. GET /index.html HTTP/1.1 Host: www.nlanr.net Accept: */* Connection: Keep-alive Trong thực tế thì yêu cầu này gồm nhiều header hơn so với những gì đã đưa ra ở trên đây. Ở đây ta thấy rằng URL đã được chia làm 2 phần. Dòng request line(dòng đầu) chỉ bao gồm thành phần tên của URL. Trong đó phần hostname được xuất hiện trong phần Host header. Host header là một đặc điểm của HTTP/1.1, nó hỗ trợ hosting ảo, hay nhiều website logic trên một server vật lý(một địa chỉ IP). Nếu server gốckhông hỗ trợ domain ảo thì Host header dùng để làm dự trữ. II.5.1.3 Yêu cầu Proxy Khi Client giao tiếp với proxy, các yêu cầu cũng không có sự khác biệt so với server gốc. Tuy nhiên dòng yêu cầu proxy sẽ bao gồm một URL đầy đủ. GET HTTP/1.1 Host: www.nlanr.net Accept: */* Proxy-connection: Keep-alive HTTP đưa ra một sự thật là: yêu cầu và đáp ứng có thể được đưa qua một số các proxies giứa Client và Server gốc. Một số HTTP header được định nghĩa như là end to end(điêm cuối tới điểm cuối) và một số như là hop to hop(điểm tới điểm). End to end header thì vận chuyển thông tin tới các hệ thống cuối(Client và Ser

Các file đính kèm theo tài liệu này:

  • docxTin06.docx
Tài liệu liên quan