Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 59 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
59
Dung lượng
1,27 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI ––––––––––––––––––––––––––––––––––––––– Nguyễn Trung Hưng CÀI ĐẶT VÀ ĐÁNH GIÁ CHẤT LƯỢNG DỊCH VỤ CÁC PROXY SERVER MÃ MỞ Chuyên ngành : Công nghệ thông tin LUẬN VĂN THẠC SĨ KỸ THUẬT CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN: TS Nguyễn Tuấn Dũng Hà Nội – 2016 SĐH.QT9.BM11 CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc BẢN XÁC NHẬN CHỈNH SỬA LUẬN VĂN THẠC SĨ Họ tên tác giả luận văn: Nguyễn Trung Hưng Đề tài luận văn: Cài đặt đánh giá chất lượng dịch vụ proxy server mã mở Chuyên ngành: Công nghệ thông tin Mã số Học viên: CA140201 Tác giả, Người hướng dẫn Hội đồng chấm luận văn xác nhận tác giả sửa chữa, bổ sung luận văn theo biên họp Hội đồng ngày 29/10/2016 với nội dung sau: - Bổ sung trích dẫn tài liệu tham khảo giới thiệu Proxy Server; - Bổ sung mơ tả cho hình luận văn; - Bổ sung ví dụ minh họa cấu hình Proxy Server để chặn/hạn chế truy cập Hà Nội, ngày tháng 11 năm 2016 Giáo viên hướng dẫn Tác giả luận văn TS Nguyễn Tuấn Dũng Nguyễn Trung Hưng CHỦ TỊCH HỘI ĐỒNG PGS TS Nguyễn Đức Nghĩa LỜI CẢM ƠN Em xin gửi lời cảm ơn chân thành tới thầy TS Nguyễn Tuấn Dũng tận tình hướng dẫn, bảo có nhận xét, góp ý quý báu giúp em suốt trình thực luận văn Em xin cảm ơn tất thầy, cô giáo Viện Cơng nghệ thơng tin Truyền thơng nói riêng, trường Đại học Bách Khoa Hà Nội nói chung, tận tình giảng dạy, bảo tạo điều kiện để em nghiên cứu, học tập môi trường thuận lợi Hà Nội, ngày 25 tháng 11 năm 2016 Học viên Nguyễn Trung Hưng LỜI CAM ĐOAN Những kiến thức trình bày luận văn tơi tìm hiểu, nghiên cứu trình bày theo kiến thức tổng hợp cá nhân Kết nghiên cứu luận văn chưa công bố cơng trình khác Trong q trình làm luận văn, tơi có tham khảo tài liệu có liên quan ghi rõ nguồn tài liệu tham khảo Tôi xin cam đoan công trình nghiên cứu tơi khơng chép ai, sai tơi xin chịu hình thức kỷ luật theo quy định Hà Nội, ngày 25 tháng 11 năm 2016 Học viên Nguyễn Trung Hưng MỤC LỤC trang Danh mục kí hiệu, chữ viết tắt Danh mục bảng .9 Danh mục hình vẽ, đồ thị 10 MỞ ĐẦU 12 Chương – TỔNG QUAN VỀ PROXY SERVER 14 1.1 Tổng quan proxy server 14 1.1.1 Khái niệm proxy server 14 1.1.2 Tác dụng chức 14 1.1.3 Kết nối thông qua proxy 16 1.2 Đặc điểm proxy server 17 1.2.1 Mục đích sử dụng proxy 17 1.2.2 Hạn chế proxy 18 1.2.3 Các dạng proxy server 18 1.2.4 Phân loại proxy .19 1.3 Tìm hiểu firewall .22 1.3.1 Khái niệm firewall 22 1.3.2 Đặc điểm chung .22 1.3.3 Phân loại firewall 23 Chương – GIỚI THIỆU CÁC PHẦN MỀM PROXY MÃ NGUỒN MỞ 28 2.1 Lựa chọn proxy server 28 2.2 Squid 29 2.2.1 Giới thiệu Squid 29 2.2.2 Tính Squid 30 2.2.3 Tùy chỉnh Squid 31 2.2.4 Nguyên tắc hoạt động Squid 33 2.3 Apache Traffic Server 33 2.3.1 Giới thiệu Apache Traffic Server 33 2.3.2 Tính Apache Traffic Server 34 2.3.3 Tùy chỉnh ATS 35 2.3.4 Nguyên tắc hoạt động ATS .36 Chương – CÀI ĐẶT, THỬ NGHIỆM VÀ ĐÁNH GIÁ PROXY SERVER 39 3.1 Cài đặt Squid 39 3.1.1 Mơ hình mạng 39 3.1.2 Cấu hình máy chủ cài đặt 39 3.1.3 Thông số cài đặt 40 3.2 Cài đặt Apache Traffic Server .40 3.2.1 Mơ hình mạng 40 3.2.2 Cấu hình máy chủ cài đặt 41 3.2.3 Thông số cài đặt 41 3.3 Các thông số cần đánh giá 42 3.4 Phương pháp thử nghiệm .43 Chương – KẾT QUẢ VÀ THẢO LUẬN 44 4.1 Kịch mô 44 4.2 Thử nghiệm cấu hình mặc định 44 4.2.1 Đo thông số 44 4.2.2 Mô 100 người sử dụng 45 4.2.3 Mô 200 người sử dụng 46 4.3 Thử nghiệm sau điều chỉnh số thông số 47 4.3.1 Các thông số điều chỉnh 47 4.3.2 Kết 47 4.4 Đánh giá kết 48 4.4.1 Đánh giá với cấu hình mặc định .48 4.4.2 Đánh giá với cấu hình điều chỉnh 52 4.5 Xây dựng mơ hình mạng 54 KẾT LUẬN VÀ KIẾN NGHỊ 56 TÀI LIỆU THAM KHẢO .57 Danh mục kí hiệu, chữ viết tắt Viết tắt Giải nghĩa ATS Apache Traffic Server – Một phần mềm Proxy server mã nguồn mở CARP Cache Array Routing Protocol – Giao thức định tuyến dãy cache CGI Common Gateway Interface – Phương thức giao tiếp ứng dụng máy tính định dạng đặc tả thông tin CNTT Công nghệ thông tin CPU Central Processing Unit – Bộ xử lý trung tâm CSS Cascading Style Sheets – Ngôn ngữ sử dụng để tìm định dạng lại phần tử tạo ngôn ngữ đánh dấu DNS Domain Name System – Hệ thống phân giải tên miền FTP File Transfer Protocol – Giao thức truyền tập tin HTTP Hyper Text Transfer Protocol – Giao thức truyền tải siêu văn Internet Control Message Protocol – Giao thức điều khiển internet, giao thức gói Internet Protocol Giao thức ICMP thiết bị mạng định tuyến sử dụng để gửi thông báo lỗi dịch vụ địa máy chủ hay định tuyến có tồn hay không Internet Cache Protocol – Giao thức đệm internet sử dụng để cập ICP nhật thay đổi nội dung URL sẵn có cache thay ghi đè tồn cache dẫn đến tăng tốc độ lượng liệu cần truy cập Viết tắt ICQ Giải nghĩa I Seek You – Một chương trình nhắn tin tức (Instant Messaging) máy tính IP Internet Protocol – Giao thức kết nối internet ISP Internet Service Provider – Nhà cung cấp dịch vụ Internet LAN Local Area Network – Mạng máy tính cục NFS Network File System – Giao thức chia sẻ tập tin phổ biến UNIX RAM Random Access Memory – Bộ nhớ truy cập ngẫu nhiên RTSP Real Time Streaming Protocol – Giao thức truyền tin thời gian thực Simple Network Management Protocol – Giao thức quản lý mạng đơn SNMP giản, giao thức tầng ứng dụng quy định Hội đồng Kiến trúc Internet RFC1157 để trao đổi thông tin quản lý thiết bị mạng SMP Symmetric multiprocessing – Đa xử lý đối xứng, chế hỗ trợ nhiều CPU CPU đa nhân chạy song song để tăng hiệu suất SMTP Simple Mail Transfer Protocol – Giao thức truyền thư điện tử đơn giản SSL Secure Sockets Layer – Giao thức bảo mật internet TCP Transmission Control Protocol – Giao thức điều khiển truyền vận TMG Threat Management Gateway – Sản phẩm Firewall thương mại có tính proxy Microsoft Viết tắt Giải nghĩa UDP User Datagram Protocol – Giao thức truyền liệu ngắn URL Uniform Resource Locator – Định vị tài nguyên thống WCCP Web Cache Communication Protocol – Giao thức định tuyến liệu Cisco phát triển Thông số STT Đơn vị Số yêu cầu phản hồi Số yêu cầu lỗi (error + timeout) request Thời gian phản hồi trung bình giây Lưu lượng internet MB Lưu lượng nội MB 3.4 request Nội dung Tổng số yêu cầu xử lý thành công Tổng số yêu cầu lỗi timeout Thời gian phản hồi trung bình cho yêu cầu Lưu lượng internet sử dụng Lưu lượng liệu truyền mạng nội nộ Phương pháp thử nghiệm Thử nghiệm proxy server 02 cấu hình: − Cấu hình mặc định: • Đo thời gian tải số website phổ biến; • Đo thời gian tải lại website; (Mỗi phép đo thực 03 lần lấy giá trị trung bình để đảm bảo tính khách quan) • Đo thơng số mơ 100 người sử dụng; • Đo thơng số mơ 200 người sử dụng; − Điều chỉnh số thơng số: • Đo thông số mô 200 người sử dụng 43 Chương – KẾT QUẢ VÀ THẢO LUẬN 4.1 Kịch mô Với bước thử mô người sử dụng, em sử dụng công cụ mô StressStimulus Đây công cụ mô mạnh, cho phép mô lên đến 10.000 người sử dụng cách lặp lại thao tác theo kịch ghi lại Kịch mô người sử dụng truy cập internet, đọc báo, xem video số trang phổ biến: − Truy cập dantri.com.vn, vnexpress.net, 24h.com.vn trang truy cập 03 tin tức, riêng 24h.com.vn truy cập thêm 01 video; − Không sử dụng cache ứng dụng trình duyệt để đảm bảo tính xác thử nghiệm Các thơng số mơ chính: − Số request kịch bản: 540; − Dung lượng request: 429,1 KB; − Dung lượng phản hồi: 64.001,3 KB; − Mơi trường mơ phỏng: trình duyệt Mozilla/5.0, hệ điều hành Windows SP1 x64 4.2 Thử nghiệm cấu hình mặc định 4.2.1 Đo thông số Bảng Đo thông số Squid Nội dung STT Thời gian tải số website phổ biến Lần Lần Lần Trung Đơn bình vị 11,30 11,00 13,10 44 11,80 giây Nội dung STT Thời gian tải lại website (cache hit) Lần Lần Lần Trung Đơn bình vị 6,21 6,01 6,30 6,17 giây Lần Trung Đơn bình vị Bảng Đo thơng số ATS Nội dung STT Thời gian tải số website phổ biến Thời gian tải lại website (cache hit) Lần Lần 11,90 11,60 13,10 12,20 giây 5,86 5,97 6,61 6,15 giây 4.2.2 Mô 100 người sử dụng Bảng Kết mơ 100 người sử dụng với cấu hình mặc định STT Giá trị Nội dung Squid Đơn vị ATS Thời gian hoàn thành Tài nguyên chiếm dụng 25,14 16,19 % CPU Tốc độ xử lý yêu cầu 57,48 49,13 request/s Số yêu cầu gửi 54.000 54.000 request Số yêu cầu phản hồi 53.496 53.610 request 939 45 1.099 giây STT Giá trị Nội dung Squid Đơn vị ATS Số yêu cầu lỗi (error + timeout) 504 390 request Thời gian phản hồi trung bình 1,39 1,55 giây Lưu lượng internet 1.992 2.214 MB Lưu lượng nội 3.332 4.810 MB 4.2.3 Mô 200 người sử dụng Bảng Kết mơ 200 người sử dụng với cấu hình mặc định STT Giá trị Nội dung Squid Đơn vị ATS Thời gian hoàn thành 1.806 2.613 giây Tài nguyên chiếm dụng 21,31 15,54 % CPU Tốc độ xử lý yêu cầu 59,78 41,33 request/s Số yêu cầu gửi 108.000 108.000 request Số yêu cầu phản hồi 103.295 107.236 request Số yêu cầu lỗi (error + timeout) 4.705 764 request Thời gian phản hồi trung bình 4,90 2,49 giây Lưu lượng internet 3.070 2.867 MB Lưu lượng nội 5.321 9.421 MB 46 4.3 Thử nghiệm sau điều chỉnh số thông số 4.3.1 Các thông số điều chỉnh − Tăng cấu hình máy chủ lên 02 CPU 3.4 GHz để thử nghiệm xử lý đa nhân − Cấu hình lại Squid: Tăng RAM cache Ý nghĩa Thông số Tăng lên 3GB RAM làm cache cache_mem GB maximum_object_size_in_memory Tăng kích thước tối đa object lưu MB RAM lên 5MB − Cấu hình lại ATS: Tăng RAM cache CONFIG Dùng 3GB RAM làm cache proxy.config.cache.ram_cache.size INT 3GB CONFIG Kích thước object tối đa cache Proxy.config.cache.ram_cache_cutoff nhớ 5MB = 5242880 Bytes INT 5242880 4.3.2 Kết Bảng 10 Kết mô 200 người sử dụng với cấu hình điều chỉnh STT Giá trị Nội dung Squid Đơn vị ATS Thời gian hoàn thành 1.742 1.673 giây Tài nguyên chiếm dụng 25,48 16,12 % CPU Tốc độ xử lý yêu cầu 61,99 64,55 request/s Số yêu cầu gửi 108.000 47 108.000 request Giá trị Nội dung STT Squid Số yêu cầu phản hồi Số yêu cầu lỗi (error + timeout) Thời gian phản hồi trung bình Đơn vị ATS 105.754 107.183 request 2.246 817 request 3,01 2,31 giây Lưu lượng internet 3.891 2.867 MB Lưu lượng nội 6.451 9.523 MB 4.4 Đánh giá kết Khi sử dụng Squid ATS làm proxy server với thông số tải web khác biệt sử dụng RAM làm cache nên tốc độ cache hit cải thiện đáng kể 4.4.1 Đánh giá với cấu hình mặc định Ta có biểu so sánh: Thời gian hồn thành 2.613 Mơ 200 VU 1.806 ATS 1.099 Mô 100 VU Squid 939 500 1.000 1.500 2.000 2.500 3.000 Giây Hình 16 So sánh thời gian hồn thành mơ với cấu hình mặc định 48 Tốc độ xử lý yêu cầu 41,33 Mô 200 VU 59,78 ATS 49,13 Mô 100 VU Squid 57,48 - 10,00 20,00 30,00 40,00 50,00 60,00 70,00 request/s Hình 17 So sánh tốc độ xử lý yêu cầu mơ với cấu hình mặc định Từ kết thấy với cấu hình mặc định, Squid có thời gian hồn thành nhanh hơn, tốc độ xử lý request vượt trội so với ATS tăng số lượng người sử dụng Thời gian phản hồi trung bình request 2,49 Mơ 200 VU 4,90 ATS Squid 1,55 Mô 100 VU 1,39 - 1,00 2,00 3,00 4,00 5,00 6,00 Giây Hình 18 So sánh thời gian phản hồi u cầu trung bình mơ với cấu hình mặc định 49 Tuy nhiên thời gian phản hồi trung bình với request ATS lại nhanh ATS chế xử lý đa luồng ATS để hỗ trợ xử lý request bị nghẽn với CPU đơn nhân Hình 19 cho thấy ATS sử dụng 18 luồng để xử lý việc chuyển tiếp yêu cầu luồng để kiểm sốt Hình 19 Số luồng proxy server sử dụng Khi tăng số lượng người dùng lên gấp đôi, ATS khơng xử lý kịp request cịn trống nhiều tài nguyên máy Hình 20 cho thấy Squid tận dụng tài nguyên tốt với máy tính đơn nhân Tài nguyên chiếm dụng 15,54 Mô 200 VU 21,31 ATS 16,19 Mô 100 VU Squid 25,14 - 5,00 10,00 15,00 20,00 25,00 30,00 % CPU Hình 20 So sánh tài nguyên sử dụng mô với cấu hình mặc định 50 Nhưng chế multi–thread giúp ATS hạn chế lỗi trình xử lý request, với số lượng yêu cầu lúc lớn, biểu đồ so sánh tỉ lệ lỗi Tỉ lệ request lỗi 0,71 Mô 200 VU 4,36 ATS 0,72 Mô 100 VU Squid 0,93 - 1,00 2,00 3,00 4,00 5,00 % Hình 21 So sánh tỉ lệ yêu cầu lỗi mơ với cấu hình mặc định Squid phần mềm tiên phong áp dụng công nghệ ICP đề cập giúp cập nhật thay đổi nội dung URL sẵn có cache ATS có tính nên lưu lượng sử dụng internet proxy server tương đương Ngoài ra, tỉ lệ lỗi ATS thấp nên lưu lượng truyền vào mạng nội bộ, hay nói cách khác liệu máy trạm nhận có nội dung hồn thiện hơn, ưu điểm lí nên chọn ATS sử dụng hệ thống trung tâm liệu lớn để tằng tốc độ tính sẵn sàng hệ thống Từ biểu đồ nhận thấy lợi ích lớn việc giảm lưu lượng internet sử dụng proxy server, liệu mô giống nên tỉ lệ cache hit cao dẫn đến lưu lượng internet giảm nhiều 51 Lưu lượng 2.867 3.070 Mô 200 VU 9.421 5.321 ATS Internet Squid Internet ATS nội 2.214 1.992 Mô 100 VU Squid nội 4.810 3.332 - 2.000 4.000 6.000 8.000 10.000 MB Hình 22 So sánh lưu lượng sử dụng mơ với cấu hình mặc định 4.4.2 Đánh giá với cấu hình điều chỉnh Ta có biểu so sánh: Thời gian hoàn thành 1.673 1.742 Điều chỉnh ATS 2.613 Mặc định Squid 1.806 - 500 1.000 1.500 2.000 2.500 3.000 Giây Hình 23 So sánh thời gian hồn thành mơ cấu hình 52 Từ biểu đồ ta thấy rõ ATS tận dụng tốt tài nguyên hệ thống CPU đa nhân tăng cấu hình máy tính điều chỉnh cache sử dụng, ATS cho thời gian hoàn thành nhanh 36% (so với cấu hình đơn nhân), Squid nhanh 4% Ngược lại, với hệ thống đơn nhân, Squid tỏ hiệu Hình 24 Cơ chế đa luồng Cơ chế đa luồng hình 24 cho phép tiến trình tách vào song song cho CPU xử lý, nhờ tận dụng tốt tài nguyên máy đại tăng tốc độ xử lý ATS Squid sử dụng chế đa luồng dựa SMP, nhiên, ATS tận dụng tài nguyên hệ thống tốt Trong trình xử lý, ATS tăng số luồng từ 18 (đơn nhân) lên 20 phân bố tất CPU hệ thống hình 25 Hình 25 ATS phân bổ tài ngun sử dụng Cịn Squid tiến trình xử lý CPU nên dẫn đến phân tải khơng CPU hình 26: 53 Hình 26 Squid phân bổ tài nguyên sử dụng Biểu đồ so sánh tốc độ xử lý yêu cầu thể hiệu ATS so với Squid hệ thống đa nhân: Tốc độ xử lý yêu cầu 64,55 61,99 Điều chỉnh ATS 49,13 Mặc định Squid 57,48 0,00 10,00 20,00 30,00 40,00 50,00 60,00 70,00 request/s Hình 27 So sánh tốc độ xử lý yêu cầu mơ cấu hình 4.5 Xây dựng mơ hình mạng Từ kết trên, ta nhận thấy ATS thiên sử dụng cho mơ hình mạng quy mơ vừa lớn tương tự sản phẩm TMG Microsoft có hỗ trợ đa luồng Tuy vậy, ATS sản phẩm mới, khó quản lý triển khai, Squid dễ triển khai hơn, có giao diện đồ họa hỗ trợ Webmin, không cần cài đặt máy chủ cấu hình lớn, phù hợp với mơ hình nhỏ, chủ yếu để kiểm sốt truy cập internet Em đề xuất số mơ hình mạng sử dụng ATS Squid làm forward proxy tương ứng với quy mô người sử dụng sau: 54 Bảng 11 Mơ hình mạng tương ứng với quy mơ người sử dụng STT Mục đích Kiểm sốt truy cập internet (dưới 50 người) soát Vừa (từ 100 truy cập đến 200 người) Kiểm soát truy cập internet Nhỏ Kiểm internet Quy mô Lớn (trên 200 người) Tăng hiệu cho hệ thống website Đề xuất Ưu điểm Tận dụng máy tính cấu Squid hình thấp, giảm chi phí đầu tư, tăng tốc độ truy cập internet Giảm chi phí đường truyền, tăng Squid ATS tốc độ truy cập internet Tăng tốc độ truy cập internet ATS Nhiều máy ATS 55 chủ Tăng hiệu tốc độ truy cập toàn hệ thống KẾT LUẬN VÀ KIẾN NGHỊ Ngày nay, việc sử dụng proxy server phổ biến mơ hình mạng hệ thống lớn Đồng thời, phát triển proxy server nói chững, qua nghiên cứu luận văn cho thấy proxy server làm thành phần quan trọng hệ thống mạng, nắm giữ liệu vào nên cần bảo vệ Ngoài việc giới thiệu khái niệm firewall proxy, luận văn cịn vào phân tích vai trị proxy, cơng nghệ bên trong, từ mặt tích cực proxy như: tốc độ chi phí truy cập internet rẻ, việc sử dụng proxy server vị trí quan trọng ISP giúp giảm băng thơng quốc tế, tăng tính sẵn sàng dịch vụ; ra, proxy server phương pháp đơn giản để truy cập internet an tồn bí mật Việc so sánh tính năng, thử nghiệm đánh giá giúp cho nhà phát triển dịch vụ cơng nghệ thơng tin q trình xây dựng hệ thống có nguồn tham khảo lựa chọn cơng nghệ Trên sở phân tích proxy server nói chung 02 proxy server mã nguồn mở phổ biến nói chung, em thu nhiều kiến thức mạng, hệ thống mạng nhiều khái niệm, thuật ngữ làm tiền đề cho việc thiết kế proxy sau Em xin đưa hướng nghiên cứu tiếp theo: − Tìm hiểu sâu chế proxy server Cache–Control, ICP …; − Tìm hiểu thiết lập dãy proxy server với tính kế thừa cache; − Thử nghiệm thêm sản phẩm mã đóng; − Xây dựng mơ hình reverse proxy kết hợp với công nghệ khác để cân tải cho máy chủ Web 56 TÀI LIỆU THAM KHẢO Apache Software Foundation (2015), Apache Traffic Server Manual, https://docs.trafficserver.apache.org; Bradley Mitchel (2008), “Introduction to Proxy Servers in Computer Networking”, Aboutech, https://www.lifewire.com/introduction-to-proxy-serverscomputer-networking-816448; Duane Wessels (2001), Web Caching, O'Reilly Media; Kulbir Saini (2011), Squid Proxy Server 3.1: Beginner's Guide, Packt Publishing 57 ... giải pháp proxy server phù hợp để triển khai Em chọn luận văn đề tài ? ?Cài đặt đánh giá chất lượng dịch vụ proxy server mã mở? ?? nhằm mục đích thử nghiệm, đánh giá tính phần mềm mã nguồn mở, từ đưa... quan proxy server, firewall đặc điểm; − Chương – Giới thiệu phần mềm proxy mã nguồn mở: Tìm hiểu tính proxy mã nguồn mở, so sánh lựa chọn 02 proxy để đánh giá; − Chương – Cài đặt, thử nghiệm đánh. .. tác giả luận văn: Nguyễn Trung Hưng Đề tài luận văn: Cài đặt đánh giá chất lượng dịch vụ proxy server mã mở Chuyên ngành: Công nghệ thông tin Mã số Học viên: CA140201 Tác giả, Người hướng dẫn Hội