Nhập môn mạng máy tính báo cáo bài tập 5 bảng hash dùng để làm gì

13 1 0
Nhập môn mạng máy tính  báo cáo bài tập 5 bảng hash dùng để làm gì

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Ngoài ra, Hash table còn được sử dụng để tạo checksums và kiểm tra tính toàn vẹn của dữ liệu.. Checksums là các giá trị nhỏ được tạo ra từ dữ liệu, ví dụ như một tệp hoặc một khối dữ liệ

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & NHẬP MƠN MẠNG MÁY TÍNH LỚP: IT005.O118 BÁO CÁO BÀI TẬP – NHÓM 12 Giảng viên hướng dẫn: ThS Trần Mạnh Hùng NoName – “Không tên không vô danh” IT005 - Nhập mơn Mạng máy tính MỤC LỤC I DANH SÁCH THÀNH VIÊN II BÁO CÁO BÀI TẬP Câu Bảng Hash dùng để làm Câu Checksum dùng để làm gì, cho ví dụ tính check sum 16 bit Câu Phân biệt Multiplexing vs Demultiplexing internet Câu Vì phải dùng nguyên lý truyền tin tin cậy, so sánh khác nguyên lý rdt 1.0, rdt 2.0, rdt 2.1, 2.2 rdt 3.0 Câu Vẽ lại mơ hình FSM rdt 3.0 bên nhận Review Question Review Question Review Question Problem Problem III NHẬN XÉT 10 IV THẮC MẮC 10 V NGUỒN THAM KHẢO 11 IT005 - Nhập mơn Mạng máy tính I DANH SÁCH THÀNH VIÊN MSSV Họ tên Phân công Đánh giá 22521301 Mai Văn Tân (nhóm trưởng) Trình bày báo cáo, Cùng kiểm tra lại 100% câu 1, R4 tất câu sau 22520512 Nguyễn Bá Hưng hoàn thành 100% 22521539 Nguyễn Thị Trinh R4, P4 đáp án 100% 22521394 Trần Ỷ Thiên Câu 4, Câu 100% 22520518 Nguyễn Thanh Hùng Câu 1, Câu Nhận xét, nêu 100% 22520108 Nguyễn Gia Bảo thắc mắc tồn R6, R7 đọng Câu 2, P1 100% Giảng viên hướng dẫn: ThS Trần Mạnh Hùng IT005 - Nhập mơn Mạng máy tính II BÁO CÁO BÀI TẬP Câu Bảng Hash dùng để làm Hashing sử dụng rộng rãi việc tìm kiếm truy xuất liệu từ sở liệu có kích thước lớn Bằng cách tạo giá trị băm (hash values) cho liệu, hệ thống nhanh chóng xác định vị trí liệu cần truy cập, giúp giảm thời gian tìm kiếm Ngồi ra, Hash table cịn sử dụng để tạo checksums kiểm tra tính tồn vẹn liệu Checksums giá trị nhỏ tạo từ liệu, ví dụ tệp khối liệu cụ thể, nhằm kiểm tra xem liệu có bị thay đổi khơng Khi bạn tải xuống tệp từ internet, chương trình kiểm tra tính tồn vẹn tạo giá trị băm từ tệp tải so sánh với giá trị băm ban đầu tệp gốc Nếu hai giá trị băm khác nhau, điều cho thấy tệp bị thay đổi hỏng Câu Checksum dùng để làm gì, cho ví dụ tính check sum 16 bit Checksum giá trị tính tốn từ tập liệu để xác minh tính toàn vẹn liệu Checksum sử dụng nhiều ứng dụng, bao gồm truyền liệu, lưu trữ liệu kiểm tra lỗi Checksum sử dụng để: • Xác minh tính tồn vẹn liệu: Checksum sử dụng để xác minh liệu truyền lưu trữ mà khơng bị thay đổi • Kiểm tra lỗi: Checksum sử dụng để phát lỗi liệu • Tăng tốc độ truyền liệu: Checksum sử dụng để giảm thiểu số lượng gói liệu cần thiết để truyền tập liệu Ví dụ: cho dãy 16 bit: 1001 0001 1000 1100, 0001 0101 1001 0100 Thực phép cộng chuỗi bit trên: Giảng viên hướng dẫn: ThS Trần Mạnh Hùng IT005 - Nhập mơn Mạng máy tính 1001 0001 1000 1100 0001 0101 1001 0100 1010 0111 0010 0000 : sum 0101 1000 1101 1111 : checksum Câu Phân biệt Multiplexing vs Demultiplexing internet Multiplexing kỹ thuật sử dụng để kết hợp gửi nhiều luồng liệu qua phương tiện Quá trình kết hợp luồng liệu gọi Multiplexing phần cứng sử dụng để Multiplexing Demultiplexer hay mạch giải ghép kênh hay Demux phần tử, thường IC, bố trí cuối mạng nhận dịng tín hiệu ghép kênh trước (ví dụ Multiplexer) ngõ vào đơn chọn chuyển liệu tới ngõ chọn lựa theo mã địa So sánh Multiplexing Demultiplexing: Giống nhau: • Mục tiêu chung: Cả hai Multiplexing Demultiplexing liên quan đến việc truyền nhận liệu qua mạng • Liên quan đến đa truy cập: Cả hai trình liên quan đến việc xử lý nhiều luồng liệu từ nhiều nguồn khác Giảng viên hướng dẫn: ThS Trần Mạnh Hùng IT005 - Nhập mơn Mạng máy tính Khác nhau: Multiplexing Demultiplexing Chức Tổng hợp nhiều luồng liệu Tách luồng liệu đầu vào thành luồng để thành luồng riêng biệt truyền qua mạng định hướng chúng đến ứng dụng dịch vụ cụ thể Vị trí Xảy nguồn liệu Xảy điểm đích sau trình điểm trung gian trước liệu truyền đến tới truyền liệu liệu truyền máy chủ thiết bị đích Cấp độ tầng Xảy nhiều tầng khác Xảy tầng Transport (tầng mạng mơ hình OSI, thường 4) tầng Application (tầng xảy tầng Transport (tầng 4) 7) mơ hình OSI, tùy thuộc vào việc định hướng liệu đến ứng dụng cụ thể ➔ Tóm lại, Multiplexing Demultiplexing liên quan đến trình truyền xử lý liệu mạng, chúng có chức vị trí khác trình Multiplexing tổng hợp liệu thành luồng nhất, Demultiplexing tách luồng liệu đầu vào thành luồng riêng biệt định hướng chúng đến ứng dụng dịch vụ cụ thể Câu Vì phải dùng nguyên lý truyền tin tin cậy, so sánh khác nguyên lý rdt 1.0, rdt 2.0, rdt 2.1, 2.2 rdt 3.0 Các nguyên lý truyền tin tin cậy (reliable data transfer - RDT) áp dụng việc truyền liệu qua mạng để đảm bảo tính tin cậy đắn thông tin Việc sử dụng ngun lý RDT quan trọng giúp giải vấn đề xảy trình truyền liệu, mát liệu, lỗi bit, trễ việc truyền tải, thứ tự khơng gói tin Giảng viên hướng dẫn: ThS Trần Mạnh Hùng IT005 - Nhập mơn Mạng máy tính So sánh các ngun lý truyền tải: Tên Đặc điểm Bên gửi Bên nhận rtd 1.0 Truyền liệu tin Gửi gói tin Nhận gói tin cậy (Giả sử khơng có lỗi hay mát gì) rtd 2.0 Kênh truyền khơng Gửi gói, đợi phản Dùng checksum, làm gói (Nhưng hồi (Stop and Wait ACK gói tin truyền Protocol) (Acknowledgement) bị sai sót) NAK (Negative ACK) để check lỗi gói tin gửi sender rtd 2.1 Kênh truyền có ACK, Đánh số thứ tự 0, Có chế loại packet NAK bị lỗi (ACK, cho gói từ bị trùng NAK bị sai sender, gửi lại gói checksum) NAK ACK/NAK bị lỗi (nhận biết checksum gói), nhận ACK gởi gói đánh số rtd 2.2 Không dùng NAK, Gửi lại gói nhận Gửi ACK gói gần thay gửi ACK ACK trùng lặp thành cơng, đánh gói gần nhận số thứ tự 0,1 cho thành công ACK rtd 3.0 Xuất gói Chờ ACK => Hiệu khoảng thời gian suất “Hợp lí” Dùng thấp: Timeout (Bộ định Usender = thì) Gửi lại pckt hết thời gian - Các trường hợp gởi lại gói: Mất gói, Giảng viên hướng dẫn: ThS Trần Mạnh Hùng IT005 - Nhập mơn Mạng máy tính ACK, thời gian chờ ngắn/ delayed ACK (L/R)/(RT T+L/R) phải nhận ACK gửi gói tiếp Câu Vẽ lại mơ hình FSM rdt 3.0 bên nhận Reliable Data Transfer (3.0): Receiver FSM Review Question Describe why an application developer might choose to run an application over UDP rather than TCP Giảng viên hướng dẫn: ThS Trần Mạnh Hùng IT005 - Nhập môn Mạng máy tính Hãy mơ tả nhà phát triển ứng dụng chọn chạy ứng dụng qua UDP thay TCP Nhà phát triển ứng dụng khơng muốn ứng dụng sử dụng tính kiểm sốt tắc nghẽn TCP, điều làm giảm tốc độ gửi ứng dụng vào thời điểm bị tắc nghẽn Thông thường, nhà thiết kế ứng dụng điện thoại IP hội nghị truyền hình IP chọn chạy ứng dụng họ qua UDP họ muốn tránh kiểm sốt tắc nghẽn TCP Ngồi ra, số ứng dụng khơng cần truyền liệu đáng tin cậy TCP cung cấp Review Question Is it possible for an application to enjoy reliable data transfer even when the application runs over UDP? If so, how? Có khả cho ứng dụng thực truyền liệu đáng tin cậy ứng dụng chạy qua UDP khơng? Nếu có, làm nào? Có, nhà phát triển ứng dụng thêm tính truyền liệu đáng tin cậy vào giao thức tầng ứng dụng Tuy nhiên, điều địi hỏi lượng cơng việc đáng kể debug để thực Review Question Suppose a process in Host C has a UDP socket with port number 6789 Suppose both Host A and Host B each send a UDP segment to Host C with destination port number 6789 Will both of these segments be directed to the same socket at Host C? If so, how will the process at Host C know that these two segments originated from two different hosts Giả sử tiến trình Máy C có socket UDP với số cổng 6789 Giả sử Máy A Máy B đều gửi đoạn UDP đến Máy C với cổng đích 6789 Liệu hai đoạn có định tới socket Máy C khơng? Nếu có, làm tiến trình Máy C biết hai đoạn xuất phát từ hai máy khác Có Cả hai segments chuyển hướng tới socket Với segment, giao diện socket, hệ điều hành cung cấp process với địa IP để xác định xem nguồn gốc segments Giảng viên hướng dẫn: ThS Trần Mạnh Hùng IT005 - Nhập mơn Mạng máy tính Problem Suppose Client A initiates a Telnet session with Server S At about the same time, Client B also initiates a Telnet session with Server S Provide possible source and destination port numbers for: a The segments sent from A to S b The segments sent from B to S c The segments sent from S to A d The segments sent from S to B e If A and B are different hosts, is it possible that the source port number in the segments from A to S is the same as that from B to S? f How about if they are the same host? Giả sử Client A khởi tạo phiên Telnet với Server S Đồng thời, Client B khởi tạo phiên Telnet với Server S Cung cấp số cổng nguồn số cổng đích sử dụng cho: a Các đoạn gửi từ A tới S - Cổng nguồn: Một số cổng nguồn ngẫu nhiên có sẵn Client A, số ngẫu nhiên nằm khoảng từ 1024 đến 65535 - Cổng đích: Cổng Telnet (thường cổng 23) Server S b Các đoạn gửi từ B tới S - Cổng nguồn: Một số cổng nguồn ngẫu nhiên có sẵn Client B, số ngẫu nhiên nằm khoảng từ 1024 đến 65535 - Cổng đích: Cổng Telnet (thường cổng 23) Server S c Các đoạn gửi từ S tới A - Cổng nguồn: Cổng Telnet (thường cổng 23) Server S - Cổng đích: Cổng sử dụng Client A (cùng số cổng nhận từ A đến S) d Các đoạn gửi từ S tới B - Cổng nguồn: Cổng Telnet (thường cổng 23) Server S - Cổng đích: Cổng sử dụng Client B (cùng số cổng nhận từ B đến S) e Nếu A B hai máy khác nhau, có khả số cổng nguồn các đoạn từ A tới S giống so với B tới S không? Nếu A B máy khác nhau, xảy trường hợp số cổng nguồn đoạn tin từ A đến S giống số cổng từ B đến S Điều xảy số cổng nguồn gán độc lập máy khách tương ứng A B không phối hợp Nhưng điều Giảng viên hướng dẫn: ThS Trần Mạnh Hùng IT005 - Nhập môn Mạng máy tính khơng thường xảy bỏi xác suất chọn số cổng ngẫu nhiên từ khoảng 64512 giá trị có 1/64512, tương đương khoảng 0.0000155 f Còn chúng máy? Nếu A B máy, xảy trường hợp số cổng nguồn đoạn tin từ A đến S giống số cổng đoạn tin từ B đến S, TCP khơng cho phép hai kết nối có tứ (địa IP nguồn, số cổng nguồn, địa IP đích, số cổng đích) Nếu A B cố gắng sử dụng số cổng nguồn, hai thiết lập kết nối với S Problem a Suppose you have the following bytes: 01011100 and 01100101 What is the 1s complement of the sum of these bytes? b Suppose you have the following bytes: 11011010 and 01100101 What is the 1s complement of the sum of these bytes? c For the bytes in part (a), give an example where one bit is flipped in each of the bytes and yet the 1s complement doesn’t change a Giả sử bạn có byte sau: 01011100 01100101 Bù tổng byte gì? Cộng hai byte 11000001 Lấy số bù 00111110 b Giả sử bạn có byte sau: 11011010 01100101 Bù tổng byte gì? Cộng hai byte 01000000; phần bù 10111111 c Đối với byte phần (a), cung cấp ví dụ bit trong byte đảo giữ nguyên giá trị bù tổng Byte = 01010100; byte thứ hai = 01101101 Giảng viên hướng dẫn: ThS Trần Mạnh Hùng IT005 - Nhập môn Mạng máy tính III NHẬN XÉT Qua báo cáo tập này, chúng em học số kiến thức mạng máy tính như: - Bảng băm (Hash table) sử dụng để tìm kiếm truy xuất liệu hiệu Bảng băm dùng để tạo checksums kiểm tra tính tồn vẹn liệu - Checksum giá trị tính từ liệu để xác nhận tính tồn vẹn liệu Checksum detect lỗi truyền tin lưu trữ - Multiplexing Demultiplexing liên quan đến việc truyền xử lý nhiều luồng liệu mạng Multiplexing tổng hợp liệu thành luồng nhất, cịn Demultiplexing tách luồng ban đầu thành nhiều luồng định tuyến chúng - Các nguyên lý truyền tin tin cậy RDT đảm bảo tính xác đáng tin cậy liệu truyền qua mạng Bạn phân tích khác phiên RDT 1.0, 2.0, 2.1, 2.2 3.0 - Hiểu mơ hình trạng thái hữu hạn (FSM) giao thức RDT - Một số kiến thức cổng, giao thức UDP TCP mạng máy tính IV THẮC MẮC Nhóm chúng em có thắc mắc sau: Bài báo cáo có nêu ví dụ tính checksum 16 bit đơn giản Nhưng thực tế, gói tin có kích thước lớn nhiều Vậy làm để tính tốn checksum cho gói tin lớn cách hiệu quả? Giảng viên hướng dẫn: ThS Trần Mạnh Hùng 10 IT005 - Nhập môn Mạng máy tính V NGUỒN THAM KHẢO Slide giảng môn học Computer Networking: A Top-Down Approach, 6th Edition By Kurros and Ross https://vi.wikipedia.org/wiki/Demultiplexer researchgate.net https://www.geeksforgeeks.org/reliable-data-transfer-rdt-3-0/ - Hết - Giảng viên hướng dẫn: ThS Trần Mạnh Hùng 11

Ngày đăng: 28/02/2024, 14:37

Tài liệu cùng người dùng

Tài liệu liên quan