Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 17 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
17
Dung lượng
199,97 KB
Nội dung
HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG KHOA VIỄN THÔNG I - TIỂU LUẬN INTERNET VÀ GIAO THỨC Đề tài: Nghiên cứu lý thuyết Hệ thống truyền tệp FTP Server Giảng viên: Nguyễn Đình Long Nhóm: Nguyễn Minh Cường – B18DCVT042 Hoàng Kỳ Anh – B18DCVT010 Đỗ Minh Hiếu – B18DCVT148 HÀ NỘI – 2021 MỤC LỤC LỜI MỞ ĐẦU I Giới thiệu FTP Khái niệm: Mục đích giao thức FTP: II Nguyên lý hoạt động Mơ hình hoạt động FTP a Tiến trình bên phía server: b Các tiến trình bên phía Client: Nguyên lý hoạt động FTP III Thiết lập kênh điều khiển chứng thực người dùng FTP .9 Trình tự truy cập chứng thực FTP: Quản lí kênh liệu FTP 10 Các phương thức truyền liệu FTP 13 Đặc trưng liệu FTP 14 TÀI LIỆU THAM KHẢO 17 THUẬT NGỮ FTP PI DTP Server-PI Server-DTP UI User-PI User-DTP LỜI MỞ ĐẦU Ngày với phát triển chóng mặt khoa học kỹ thuật, kỷ nguyên mở kỷ nguyên công nghệ thông tin Nhu cầu người lớn đặc biệt ngành khoa học kỹ thuật khác cần đến hỗ trợ cơng nghệ thơng tin Mọi người đếu có nhu cầu truy cập internet để cung cấp lấy thông tin cần thiết qua máy chủ Trong môi trường Internet, cần truyền nhận file file có kích thước lớn vài chục KB người sử dụng thường gặp trường hợp việc truyền nhận file bị gián đoạn Tuy nhiên có giao thức đời từ sớm không thay đổi Nói khơng có nghĩa phủ nhận tầm quan trọng nó, mà trái lại, làm tảng cho ổn định, phát triển Internet ngày cho tương lai Đó giao thức FTP (File Transfer Protocol) – Giao thức truyền tập tin thường dùng để trao đổi tập tin qua mạng lưới truyền thông dùng giao thức TCP/IP Xin gửi lời cảm ơn chân thành chúng em Thầy Nguyễn Đình Long nói chung thấy truyền đạt tận tình giúp đỡ em suốt năm học qua Chúng em xin chân thành cảm ơn! I Giới thiệu FTP Khái niệm: Giao thức FTP (File Transfer Protocol) giao thức truyền file mạng dựa chuẩn TCP nên đáng tin cậy, sử dụng nhiều vào mục đích truyền tải liệu FTP tạo với mục tiêu cho phép máy tính mạng gián tiếp dễ dàng chuyển file từ máy tính sang máy tính khác Giống hầu hết giao thức TCP/IP, dựa mơ hình client-server, với FTP client máy tính người dùng tạo kết nối đến FTP server để gửi lấy tập tin đến từ máy chủ Những mục tiêu FTP để làm cho chuyển tập tin đơn giản, che chắn người dùng từ việc thực chi tiết làm tập tin thực di chuyển từ nơi khác Để kết thúc, FTP thiết kế để tự động đối phó với nhiều vấn đề có khả phát sinh có khác biệt định dạng tập tin lưu trữ hệ thống khác Để đảm bảo tập tin gửi nhận mà không làm liệu hỏng chúng, FTP sử dụng giao thức điều khiển truyền dẫn tin cậy tầng giao vận Một hệ thống xác thực sử dụng để đảm bảo máy khách ủy quyền cho phép để truy cập vào máy chủ Cùng lúc đó, tính đơi gọi ẩn danh FTP cho phép tổ chức mong muốn để thiết lập máy chủ tổng hợp thông tin để cung cấp tập tin cho lấy chúng Sau kết nối TCP thiết lập, điều khiển kết nối FTP tạo Nội lệnh FTP truyền qua kết nối logic dựa định dạng quy tắc thiết lập giao thức Telnet Mỗi lệnh gửi khách hàng nhận trả lời từ máy chủ để thơng báo thành cơng hay thất bại Kết nối liệu thiết lập cho liệu cá nhân chuyển FTP hỗ trợ kết nối liệu bình thường thụ động, cho phép máy chủ khách hàng bắt đầu kết nối liệu Nhiều loại liệu loại tệp hỗ trợ phép linh hoạt với nhiều loại hình dịch vụ đưa đón Giao diện người sử dụng FTP giao thức cung cấp dạng tập lệnh tương tác người dùng Sau thiết lập kết nối, hoàn tất xác thực hai lệnh sử dụng để gửi nhận tệp Ngoài lệnh bổ sung cung cấp để quản lý kết nối FTP, để thực hỗ trợ chức chẳng hạn danh sách nội dung thư mục xóa đổi tên tập tin Những năm gần đây, đồ họa thực FTP tạo phép người sử dụng để chuyển tập tin cách sử dụng chuột thay ghi nhớ lệnh FTP sử dụng trực tiếp ứng dụng khác để di chuyển tập tin từ nơi khác Mục đích giao thức FTP: - Truyền tải liệu cách đáng tin cậy có hiệu cao - Khuyến khích việc dùng chung tập tin (như chương trình ứng dụng vi tính liệu) - Khuyến khích việc sử dụng máy tính xa cách gián tiếp / ngấm ngầm (implicit) - Che đậy khác biệt hệ thống lưu trữ tập tin máy chủ, hầu cho người dùng không cần phải quan tâm đến khác biệt riêng tư chúng AI Nguyên lý hoạt động Mơ hình hoạt động FTP Mơ hình FTP thiết kế xung quanh kênh logic trình giao tiếp client FTP server FTP control connection data connection: Control connection: Đây kết nối TCP logic tạo phiên làm việc thiết lập Nó trì suốt phiên làm việc cho thông tin điều khiển qua ví dụ lệnh trả lời Nó khơng sử dụng để gửi liệu Data connection: Mỗi liệu gửi từ sever tới client ngược lại, kết nối liệu TCP riêng biệt thiết lập chúng Dữ liệu truyền qua kết nối Khi hoàn tất việc truyền liệu, kết nối hủy bỏ Do chức điều khiển liệu truyền tải cách sử dụng kênh riêng biệt nên mơ hình FTP chia phần mềm thiết bị thành thành phần giao thức logic chịu trách nhiệm cho kênh: Protocol interpreter (PI): thành phần quản lý kênh điều khiển, phát nhận lệnh trả lời Data transfer process (DTP): chịu trách nhiệm gửi nhận liệu client server Tiến trình bên phía người dùng cịn có thành phần thứ ba giao diện người dùng (user interface) dùng để tương tác với người dùng FTP, thành phần khơng có phía sever Như vậy, có hai thành phần tiến trình bên phía server ba thành phần tiến trình bên phía client Các thành phần nhắc đến mơ hình FTP tên cụ thể, sử dụng tiêu chuẩn để mô tả chi tiết hoạt động giao thức Dưới mô hình hoạt động FTP: Hình 2: Mơ hình hoạt động trình truyền tệp a Tiến trình bên phía server: Server Protocol Interpreter (Server-PI): chịu trách nhiệm quản lý điều khiển kết nối server Nó lắng nghe yêu cầu kết nối hướng từ users cổng dành riêng Khi kết nối thiết lập, nhận lện từ User-PI, gửi trả lời lại quản lí tiến trình truyền liệu server Server Data Transfer Process (Server-DTP): Làm nhiệm vụ gửi nhận file từ phận User-DTP Server DTP vừa làm nhiệm vụ thiết lập kết nối kênh liệu lắng nghe kết nối kênh liệu từ user Nó tương tác với server file hệ thống cục để đọc chép file b Các tiến trình bên phía Client: User Interface: Đây chương trình chạy máy tính, cung cấp giao diện xử lí cho người dùng Nó cho phép sử dụng lệnh đơn giản hướng tới người dùng, cho phép người điều khiển phiên FTP theo dõi thông tin kết xảy tiến trình User Protocol Interpreter (User-PI): Chịu trách nhiệm quản lý kênh điều khiển phía Client Nó khởi tạo phiên kết nối FTP việc phát yêu cầu tới phía server-PI Khi kết nối thiết lập, xử lí lệnh nhận giao diện người dùng, gửi chúng tới Server-PI, nhận phản hồi trở lại Nó quản lý tiến trình User-DTP User Data Transfer Process (User-DTP): phận DTP nằm phía người dùng, làm nhiệm vụ gửi nhận liệu từ Server-DTP User-DTP thiết lập lắng nghe yêu cầu kết nối kênh liệu server Nó tương tác với thiết bị lưu trữ file phía client Nguyên lý hoạt động FTP Trình tự chung FTP hoạt động sau: - - - FTP Client mở Control connection đến FTP server (trên port 21) định cổng Client để Server gửi lại phản hồi Đường kết nối dùng để truyền lệnh liệu Control connection mở suốt thời gian phiên làm việc (telnet hệ thống) Client chuyển tiếp thông tin username, password tới Server để thực xác thực (authentication) Server trả lời mã chấp nhận hay từ chối request Client gửi thêm lệnh với tên tệp, kiểu liệu, … để vận chuyển, thêm luồng liệu (tức chuyển tập tin từ máy khách đến máy chủ ngược lại) Server phản hồi với mã (reply code) chấp nhận từ chối - - - Khi liệu sẵn sàng, bên mở kết nối TCP cổng 20 Dữ liệu vận chuyển Client Server cổng 20 Dữ liệu vận chuyển mã hóa theo số định dạng bao gồm NVTASCII nhị phân(binary) Khi trình vận chuyển liệu hồn thành, phiên làm việc FTP Server đóng lại Data Connection cổng 20 Nhưng giữ Control Connection công 21 Control connection sử dụng để thiết lập truyền liệu khác đóng liên kết Thiết lập kênh điều khiển chứng thực người dùng FTP Trước kết nối sử dụng để thực truyền file, kênh điều khiển cần phải thiết lập Như giao thức client/server khác, FTP server tuân theo luật passive kênh điều khiển Bộ phận Server Protocol Interpreter (Server-PI) lắng nghe cổng TCP dành riêng cho kết nối FTP cổng 21 Phía User-PI tạo kết nối việc mở kết nối TCP từ thiết bị người dùng tới server cổng Nó sử dụng cổng làm cổng nguồn phiên kết nối TCP BI Khi TCP cài đặt xong, kênh điều khiển thiết bị thiết lập, cho phép lệnh thực truyền từ User-PI tới Server-PI, Server-PI đáp trả kết mã thông báo Bước sau vào hoạt động bước đăng nhập người dùng (login sequence) Bước có hai mục đích: Access Control (Điều khiển truy cập): Quá trình chứng thực cho phép hạn chế truy cập tới server với người dùng định Nó cho phép server điều khiển loại truy cập người dùng Resource Selection (Chọn nguồn cung cấp): Bằng việc nhận dạng người dùng tạo kết nối, FTP server đưa định cung cấp nguồn cho người dùng nhận dạng Trình tự truy cập chứng thực FTP: Quy luật chứng thực FTP đơn giản, cung cấp username/password để đăng nhập Quy trình thể hình sau: Hình 3: Thiết lập kết nối xác thực người dùng Trình tự việc chứng thực sau: Người dùng gửi username từ User-PI tới Server-PI lệnh USER Sau password người dùng gửi lệnh PASS Server kiểm tra tên người dùng password database người dùng Nếu người dùng hợp lệ, server gửi trả lời thông báo tới người dùng phiên làm việc mở Nếu người dùng không hợp lệ, server yêu cầu người dùng thực lại việc chứng thực Sau số lần chứng thực sai định, server ngắt kết nối Giả sử q trình chứng thực thành cơng, server sau thiết lập kết nối phép loại truy cập người dùng cấp quyền Một số người dùng truy cập vào số file định vào số loại file định Một số server cấp quyền cho số người cụ thể dùng đọc viết lên server, người khác lấy tập tin Người quản trị mạng nhờ mà đáp ứng nhu cầu truy cập FTP Một kết nối thiết lập, server thực lựa chọn tài nguyên dựa vào nhận diện người dùng Ví dụ, hệ thống nhiều người dùng, người quản trị thiết lập FTP để có người dùng kết nối tới, tự động đưa tới home directory Lệnh tùy chọn ACCT (account) cho phép người dùng chọn tài khoản cá nhân có nhiều tài khoản Quản lí kênh liệu FTP 10 Kênh điều khiển tạo Server-PI User-PI sử dụng trình thiết lập kết nối chứng thực trì suốt phiên kết nối FTP Các lệnh hồi đáp trao đổi phận PI (Protocol Interpreter) qua kênh điều khiển, liệu khơng Mỗi cần phải truyền liệu server client, kênh liệu cần phải tạo Kênh liệu kết nối phận User-DTP ServerDTP Kết nối cần thiết cho hoạt động truyền file trực tiếp (gửi nhận file) việc truyền liệu ngầm, yêu cầu danh sách file thư mục server Chuẩn FTP định hai phương thức khác để tạo kênh liệu Khác biệt hai phương thức mặt thiết bị: phía Client hay phía server phía đưa yêu cầu khởi tạo kết nối Điều nghe qua đơn giản lại quan trọng Normal (Active) Data Connections: Phương thức gọi tạo kết nối liệu bình thường (vì phương pháp mặc định) hay cịn gọi kết nối kênh liệu dạng chủ động Trong dạng kết nối này, phía Server-DTP tạo kênh liệu cách mở cổng kết nối tới User-DTP Server sử dụng cổng đặc biệt dành riêng cho kết nối liệu cổng số 20 Trên máy client, cổng mặc định sử dụng cổng sử dụng để kết nối điều khiển, server thường chọn cổng khác cho chuyển giao Một ví dụ cụ thể cho cách làm việc này: Giả sử User-PI thiết thiết lập kết nối điều khiển từ cổng cổng số 1678 tới cổng điều khiển FTP bên phía server cổng số 21 Sau đó, để tạo kết nối liệu cho trình truyền liệu, Server-PI báo cho phía Server-DTP để khởi tạo kênh kết nối TCP từ cổng 20 tới cổng 1678 phía client Client nhận biết điều sau liệu gửi theo hai chiều (nhớ TCP truyền theo chiều) Trên thực tế, có kết nối điều khiển kết nối bên phía Client cổng khơng ý tưởng hay, làm phức tạp hoạt động FTP dẫn tới số vấn đề khó khan Do đó, Client định cổng khác cách sử dụng lệnh PORT trước truyền liệu Ví dụ, giả sử phía client định cổng 1742 với lệnh PORT.Sau phía Server-DTP tạo kết nối từ cổng số 20 tới cổng 1472 bên phía client thay cho 1678 Tiến trình trình bày hình sau: 11 Hình 4: Kết nối liệu hoạt động FTP Passive Data Connections: Phương pháp thứ hai gọi thiết lập kết nối dạng bị động Các client gọi server “bị động” (passive), điều có nghĩa chấp nhận yêu cầu kết nối liệu khởi tạo Client Server trả lời lại phía client với địa IP địa cổng mà sử dụng Sau phía Server-DTP lắng nghe cổng kết nối TCP đến từ User-DTP Theo mặc định, phía client sử dụng cổng mà sử dụng cho kết nối điều khiển trường hợp chủ động Tuy nhiên, phương pháp này, Client chọn sử dụng cổng khác cho kết nối liệu cần thiết Xét lại ví dụ trên, với kết nối điều khiển từ cổng 1678 bên phía client tới cổng 21 bên phía server, lần ta xem xét liệu chuyển phương pháp kết nối dạng bị động Phía client lệnh PASV để nói với server muốn sử dụng điều khiển liệu dạng bị động Server-PI trả lời lại với giá trị cổng mà phía client sử dụng, cổng 2223 Server-PI sau hướng dẫn Server-DTP lắng nghe cổng 2223 User-PI hướng dẫn User-DTP tạo kết nối từ cổng 1742 bên phía client tới cổng 2223 bên phía server Phía server nhận biết điều sau liệu gửi nhận theo hai hướng Quá trình diễn mơ hình sau: 12 Hình 5: Kết nối mật FTP Các phương thức truyền liệu FTP Khi kênh liệu thiết lập xong Server-DTP với User-DTP, liệu truyền trực tiếp từ phía client tới phía server, ngược lại, dựa theo lệnh sử dụng Do thông tin điều khiển gửi kênh điều khiển, nên tồn kênh liệu sử dụng để truyền liệu FTP có ba phương thức truyền liệu, là: stream mode, block mode, compressed mode Stream mode: Trong phương thức này, liệu truyền dạng byte không cấu trúc liên tiếp Thiết bị gửi đơn đầy luồng liệu qua kết nối TCP tới phía nhận Khơng có trường tiêu đề định sử dụng phương thức làm cho khác so với nhiều giao thức gửi liệu rời rạc khác Phương thức chủ yếu dựa vào tính tin cậy truyền liệu TCP Do khơng có cầu trúc dạng header, nên việc báo hiệu kết thúc file đơn giản thực việc phía thiết bị gửi ngắt kênh kết nối liệu truyền xong Trong số ba phương thưc, stream mode phương thức sử dụng nhiều triển khai FTP thực tế Có số lý giải thích điều Trước hết, phương thức mặc định đơn giản nhất, việc triển khai dễ dàng Thứ hai, phương pháp phổ biến nhất, xử lý với file đơn xử lý dòng byte, mà không để ý tới nội dung file Thứ ba, phương thức hiệu khơng tốn lượng byte “overload” để thơng báo header 13 Block mode: Đây phương thức truyền liệu mang tính quy chuẩn hơn, với việc liệu chia thành nhiều khối nhỏ đóng gói thành FTP blocks Mỗi block có trường header byte báo hiệu độ dài, chứa thông tin khối liệu gửi Một thuật toán đặc biệt sử dụng để kiểm tra liệu truyền để phát hiện, khởi tạo lại phiên truyền liệu bị ngắt Compressed mode: Đây phương thức truyền sử dụng kỹ thuật nén đơn giản, “run-length encoding” – có tác dụng phát xử lý đoạn lặp liệu truyền để giảm chiều dài tồn thơng điệp Thông tin nén, xử lý block mode, với trường header Trong thực tế, việc nến liệu thường sử dụng chỗ khác, làm cho phương thức truyền kiểu compressed mode trở nên khơng cần thiết Ví dụ: bạn truyền file qua internet với modem tương tự, modem bạn thông thường thực việc nén lớp 1; file lớn FTP server thường nén sẵn với số định dạng ZIP, làm cho việc nén tiếp tục truyền liệu trở nên không cần thiết Đặc trưng liệu FTP Cách xây dựng quát giao thức truyền tập tin có để làm cho xử lý tất tập tin "hộp đen" Các tập tin coi tập hợp byte FTP không ý đến nội dung tập tin, đơn giản di chuyển tập tin, byte thời điểm, từ nơi sang nơi khác Ở đây, tương tự "sao chép" lệnh thực hầu hết hệ thống tập tin, tương tự tạo mà khơng cần tìm kiếm vào tập tin để xem có Vì vấn đề với điều đó? Đối với số loại tập tin, khơng có vấn đề gì, loại khác, vấn đề Lý số loại tập tin khác sử dụng hệ thống khác Nếu bạn chép tập tin từ nơi khác máy tính cách sử dụng lệnh "copy", khơng có vấn đề đại diện cho tập tin sử dụng khắp nơi máy tính Nhưng bạn chép vào máy tính sử dụng đại diện khác nhau, bạn gặp khó khăn Ví dụ phổ biến điều loại tập tin làm bạn ngạc nhiên: tập tin văn đơn giản Tất tập tin văn ASCII sử dụng ký tự ASCII, chúng khác kí tự điều khiển sử dụng để đánh dấu kết thúc dòng văn Trên UNIX, dòng nguồn cấp liệu ký tự (LF) sử dụng; máy tính Apple, vận chuyển trở lại (CR); máy windownsử dụng hai (CR + LF) 14 Nếu bạn di chuyển tập tin văn từ loại hệ thống khác cách sử dụng FTP thông thường, tất liệu được di chuyển xác Di chuyển tập tin văn từ hệ thống UNIX tới PC chuyển tập hợp byte, có nghĩa chương trình khơng nhận kết thúc dịng dấu hiệu Tránh tình trạng khó khăn đòi hỏi phải dịch FTP chuyển qua ý tưởng “all files are just bytes” kết hợp chút thông minh để xử lý loại khác tập tin Các tiêu chuẩn FTP công nhận điều cách cho phép đặc tảc số chi tiết định biểu diễn nội dung tập tin trước chuyển FTP Data Types: Phần thơng tin đưa tập tin kiểu liệu nó, mà dứng đại diện tổng thể cho tập tin Có bốn kiểu liệu khác quy định chuẩn FTP • ASCII: Định nghĩa file văn ASCII, với dòng đánh dấu số loại dịng đánh dấu kết thúc mơ tả • EBCDIC: Khái niệm tương tự loại ASCII, tập tin cách sử dụng kí tự EBCDIC IBM đặt • Image: Các tập tin khơng có cấu trúc nội thức gửi byte thời điểm mà khơng có xử lý; chế độ "hộp đen" đã đề cập • Local: Kiểu liệu sử dụng để xử lý tập tin lưu trữ liệu byte logic có chứa số bit khác Cách xác định loại với cách liệu có cấu trúc cho phép liệu lưu trữ hệ thống đích cách phù hợp với đại diện địa phương Trong thực tế, hai loại kiểu liệu thường xuyên sử dụng ASCII Image Kiểu ASCII sử dụng cho tập tin văn bản, cho phép chúng di chuyển hệ thống với dòng kết thúc mã chuyển đổi tự động Loại hình ảnh sử dụng cho tập tin nhị phân chung, chẳng hạn đồ họa hình ảnh, tập tin ZIP liệu khác thể cách phổ quát Nó thường gọi nhị phân loại lý FTP Format Control: Đối với loại ASCII EBCDIC, FTP định nghĩa tham số tùy chọn gọi format control Điều cho phép người dùng định đại diện cụ thể cho định sử dụng để mô tả tập tin theo chiều dọc dạng Ba tùy chọn là: • Khơng in: Mặc định, cho biết khơng có định dạng thẳng đứng • Dạng thức Telnet: Chỉ định dạng thẳng đứng điều khiển nhân vật, định giao thức Telnet, sử dụng tập tin 15 • Kiểm sốt vận chuyển / FORTRAN: tệp sử dụng định dạng điều khiển ký tự làm ký tự dòng, quy định FORTRAN ngơn ngữ lập trình Các tùy chọn kiểm sốt định dạng tạo cho mục đích cụ thể cách xử lý tập tin chuyển giao từ thiết bị máy chủ đến máy in Nó khơng sử dụng ngày nay, sử dụng, ứng dụng đặc biệt FTP Data Structures: Ngoài để xác định kiểu liệu tập tin, để xác định cấu trúc liệu tập tin Hiện có khả năng: • Cấu trúc tập tin: Các tệp dòng byte với cấu trúc bên khơng tiếp giáp • Cấu trúc ghi: Tập tin bao gồm hồ sơ tuần tự, số phân cách điểm đánh dấu kết thúc hồ sơ • Cấu trúc trang: Các tập tin chứa tập hợp liệu đặc biệt lập mục trang Cấu trúc tập tin mặc định sử dụng cho hầu hết loại tập tin Cấu trúc ghi sử dụng cho tập tin văn ASCII, chúng thường gửi với cấu trúc file thường xuyên sử dụng kiểu liệu ASCII Cấu trúc trang không sử dụng phổ biến; ban đầu tạo cho loại máy tính sử dụng thời kì đầu ARPANET 16 TÀI LIỆU THAM KHẢO TS Nguyễn Chiến Trinh “Bài giảng Internet giao thức” (2014) Đoàn Phan, Tân "Internet dịch vụ thông tin." (2014) 17 ... định, phát triển Internet ngày cho tương lai Đó giao thức FTP (File Transfer Protocol) – Giao thức truyền tập tin thường dùng để trao đổi tập tin qua mạng lưới truyền thông dùng giao thức TCP/IP Xin... hoạt động giao thức Dưới mơ hình hoạt động FTP: Hình 2: Mơ hình hoạt động q trình truyền tệp a Tiến trình bên phía server: Server Protocol Interpreter (Server- PI): chịu trách nhiệm quản lý điều... Long nói chung thấy truyền đạt tận tình giúp đỡ em suốt năm học qua Chúng em xin chân thành cảm ơn! I Giới thiệu FTP Khái niệm: Giao thức FTP (File Transfer Protocol) giao thức truyền file mạng