Đề 5 – Đề thi, câu hỏi trắc nghiệm online Lập trình mạng

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Lập trình mạng

Đề 5 - Đề thi, câu hỏi trắc nghiệm online Lập trình mạng

1. Khi thiết kế một API RESTful, phương pháp HTTP nào được sử dụng để cập nhật một phần tài nguyên?

A. GET.
B. POST.
C. PUT.
D. PATCH.

2. Giao thức TCP đảm bảo điều gì mà UDP không cung cấp?

A. Truyền dữ liệu nhanh hơn.
B. Truyền dữ liệu không cần thiết lập kết nối.
C. Truyền dữ liệu đáng tin cậy, có thứ tự và không bị mất.
D. Truyền dữ liệu broadcast đến tất cả các thiết bị trong mạng.

3. Trong lập trình mạng, thuật ngữ `endianness` đề cập đến điều gì?

A. Kích thước của gói tin mạng.
B. Thứ tự các byte trong một số nguyên được lưu trữ trong bộ nhớ.
C. Tốc độ truyền dữ liệu trên mạng.
D. Phương pháp mã hóa dữ liệu.

4. Khi lập trình mạng, lỗi `connection refused` thường chỉ ra điều gì?

A. Địa chỉ IP của server không hợp lệ.
B. Không có server nào đang lắng nghe trên cổng được chỉ định.
C. Client không có quyền truy cập vào server.
D. Kết nối đã bị chặn bởi firewall.

5. Trong lập trình mạng, thuật ngữ `race condition` có nghĩa là gì?

A. Một lỗi xảy ra khi hai hoặc nhiều luồng truy cập và sửa đổi cùng một dữ liệu chia sẻ đồng thời.
B. Một lỗi xảy ra khi một socket cố gắng gửi dữ liệu đến một địa chỉ không hợp lệ.
C. Một lỗi xảy ra khi một server không thể xử lý đồng thời nhiều kết nối.
D. Một lỗi xảy ra khi một client cố gắng kết nối đến một server không tồn tại.

6. Sự khác biệt chính giữa TCP và UDP socket là gì?

A. TCP socket nhanh hơn UDP socket.
B. TCP socket cung cấp giao tiếp hướng kết nối và đảm bảo độ tin cậy, trong khi UDP socket là giao thức không kết nối và không đảm bảo độ tin cậy.
C. TCP socket được sử dụng cho các ứng dụng thời gian thực, trong khi UDP socket được sử dụng cho các ứng dụng không yêu cầu độ trễ thấp.
D. TCP socket có thể truyền dữ liệu broadcast, trong khi UDP socket thì không.

7. Để đảm bảo an toàn khi truyền dữ liệu nhạy cảm qua mạng, phương pháp nào sau đây nên được sử dụng?

A. Sử dụng giao thức HTTP.
B. Sử dụng giao thức FTP.
C. Sử dụng mã hóa SSL/TLS (HTTPS).
D. Sử dụng giao thức DNS.

8. Trong mô hình client-server, ai là người chủ động khởi tạo kết nối?

A. Server.
B. Client.
C. Cả client và server cùng khởi tạo.
D. Router.

9. Trong lập trình mạng, kỹ thuật nào sau đây được sử dụng để phân phối lưu lượng mạng đến nhiều server khác nhau để cải thiện hiệu suất và khả năng chịu lỗi?

A. Firewall.
B. Load balancing.
C. Caching.
D. Routing.

10. Trong lập trình mạng, phương pháp nào sau đây giúp giảm thiểu tác động của việc mất gói tin (packet loss) trong giao thức UDP?

A. Sử dụng TCP thay vì UDP.
B. Triển khai cơ chế báo nhận (acknowledgement) và gửi lại (retransmission) ở tầng ứng dụng.
C. Tăng kích thước bộ đệm socket.
D. Giảm tốc độ truyền dữ liệu.

11. SNMP (Simple Network Management Protocol) được sử dụng để làm gì?

A. Truyền tải file qua mạng.
B. Quản lý và giám sát các thiết bị mạng.
C. Định tuyến các gói tin mạng.
D. Cung cấp địa chỉ IP cho các thiết bị trong mạng.

12. Trong lập trình mạng, kỹ thuật `multiplexing` được sử dụng để làm gì?

A. Mã hóa dữ liệu.
B. Gửi nhiều luồng dữ liệu khác nhau qua cùng một kết nối vật lý.
C. Nén dữ liệu để giảm băng thông.
D. Kiểm tra lỗi trong quá trình truyền dữ liệu.

13. Trong lập trình mạng, socket được sử dụng để làm gì?

A. Cung cấp một giao diện cho phép các ứng dụng giao tiếp với nhau qua mạng.
B. Mã hóa dữ liệu trước khi truyền đi.
C. Quản lý địa chỉ IP của các thiết bị trong mạng.
D. Tạo ra các gói tin để truyền dữ liệu.

14. Trong lập trình mạng, thuật ngữ `blocking socket` có nghĩa là gì?

A. Socket không thể gửi hoặc nhận dữ liệu.
B. Socket sẽ chờ (block) cho đến khi một hoạt động (ví dụ: đọc hoặc ghi) có thể hoàn thành.
C. Socket chỉ có thể gửi dữ liệu đến một địa chỉ cụ thể.
D. Socket chỉ có thể nhận dữ liệu từ một địa chỉ cụ thể.

15. Khi thiết kế một hệ thống phân tán, CAP theorem chỉ ra rằng bạn phải đánh đổi giữa những yếu tố nào?

A. CPU, RAM và Disk.
B. Tính nhất quán (Consistency), tính sẵn sàng (Availability) và khả năng chịu phân vùng (Partition tolerance).
C. Bảo mật, hiệu suất và khả năng mở rộng.
D. Chi phí, thời gian phát triển và chất lượng sản phẩm.

16. Trong lập trình mạng, kỹ thuật `heartbeat` thường được sử dụng để làm gì?

A. Tăng tốc độ truyền dữ liệu.
B. Kiểm tra xem một kết nối có còn hoạt động hay không.
C. Mã hóa dữ liệu trước khi truyền.
D. Nén dữ liệu để giảm băng thông sử dụng.

17. Trong lập trình mạng, thuật ngữ `port forwarding` dùng để chỉ điều gì?

A. Tăng tốc độ truyền dữ liệu qua mạng.
B. Chuyển hướng lưu lượng mạng từ một cổng trên router đến một thiết bị cụ thể trong mạng LAN.
C. Mã hóa dữ liệu trước khi truyền đi.
D. Chia sẻ kết nối internet cho nhiều thiết bị.

18. Giao thức nào sau đây được sử dụng để phân giải tên miền (ví dụ: google.com) thành địa chỉ IP?

A. HTTP.
B. SMTP.
C. DNS.
D. FTP.

19. NAT (Network Address Translation) có chức năng chính là gì?

A. Cung cấp thêm địa chỉ IP cho các thiết bị trong mạng LAN.
B. Ẩn địa chỉ IP riêng của các thiết bị trong mạng LAN đằng sau một địa chỉ IP công cộng duy nhất.
C. Tăng tốc độ truyền dữ liệu trong mạng.
D. Bảo vệ mạng khỏi các cuộc tấn công từ bên ngoài.

20. Giao thức nào sau đây được sử dụng để truyền file qua mạng?

A. HTTP.
B. SMTP.
C. DNS.
D. FTP.

21. Trong lập trình socket, hàm `listen()` được sử dụng để làm gì?

A. Kết nối socket đến một địa chỉ cụ thể.
B. Đóng socket.
C. Bắt đầu lắng nghe các kết nối đến trên một socket.
D. Gửi dữ liệu qua socket.

22. Trong lập trình mạng, thuật ngữ `socket buffer` đề cập đến điều gì?

A. Bộ nhớ được sử dụng để lưu trữ địa chỉ IP của socket.
B. Bộ nhớ được sử dụng để lưu trữ dữ liệu tạm thời trong quá trình gửi và nhận dữ liệu qua socket.
C. Bộ nhớ được sử dụng để lưu trữ các tham số cấu hình của socket.
D. Bộ nhớ được sử dụng để lưu trữ mã chương trình của socket.

23. Trong lập trình mạng, thuật ngữ `deadlock` có nghĩa là gì?

A. Một tình huống mà hai hoặc nhiều tiến trình hoặc luồng bị chặn vĩnh viễn, chờ đợi lẫn nhau để giải phóng tài nguyên.
B. Một tình huống mà một socket không thể kết nối đến server.
C. Một tình huống mà một server bị quá tải và không thể xử lý thêm kết nối.
D. Một tình huống mà dữ liệu bị mất trong quá trình truyền tải.

24. Công cụ nào sau đây thường được sử dụng để kiểm tra và gỡ lỗi các yêu cầu HTTP?

A. Ping.
B. Traceroute.
C. Wireshark hoặc Fiddler.
D. Netstat.

25. Phương pháp nào sau đây thường được sử dụng để xử lý đồng thời nhiều kết nối trong một ứng dụng server?

A. Sử dụng một thread duy nhất để xử lý tất cả các kết nối.
B. Sử dụng đa luồng (multithreading) hoặc đa tiến trình (multiprocessing).
C. Chặn tất cả các kết nối mới cho đến khi kết nối hiện tại hoàn tất.
D. Sử dụng một hàng đợi để xử lý tuần tự các kết nối.

26. Khi sử dụng WebSocket, lợi ích chính so với HTTP polling là gì?

A. WebSocket bảo mật hơn HTTP polling.
B. WebSocket cung cấp giao tiếp song công (full-duplex) liên tục, giảm độ trễ và tiêu thụ tài nguyên so với HTTP polling.
C. WebSocket dễ dàng triển khai hơn HTTP polling.
D. WebSocket hỗ trợ nhiều loại dữ liệu hơn HTTP polling.

27. Sự khác biệt chính giữa giao thức HTTP và HTTPS là gì?

A. HTTP nhanh hơn HTTPS.
B. HTTPS sử dụng mã hóa SSL/TLS để bảo mật dữ liệu truyền tải, trong khi HTTP thì không.
C. HTTP chỉ được sử dụng cho các trang web tĩnh, còn HTTPS cho các trang web động.
D. HTTPS có thể truyền tải dữ liệu lớn hơn HTTP.

28. Sự khác biệt chính giữa giao thức IPv4 và IPv6 là gì?

A. IPv6 nhanh hơn IPv4.
B. IPv6 sử dụng địa chỉ 128-bit, trong khi IPv4 sử dụng địa chỉ 32-bit.
C. IPv4 hỗ trợ nhiều loại thiết bị hơn IPv6.
D. IPv4 bảo mật hơn IPv6.

29. Giao thức nào sau đây thường được sử dụng để gửi email?

A. HTTP.
B. FTP.
C. SMTP.
D. DNS.

30. Trong lập trình mạng, thuật ngữ `backpressure` đề cập đến điều gì?

A. Áp lực mà firewall tạo ra lên các gói tin mạng.
B. Khả năng của một hệ thống nhận để báo cho hệ thống gửi biết rằng nó đang bị quá tải và cần giảm tốc độ gửi dữ liệu.
C. Áp lực mà người dùng tạo ra lên server khi truy cập quá nhiều.
D. Áp lực mà các gói tin mạng tạo ra lên router.

1 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

1. Khi thiết kế một API RESTful, phương pháp HTTP nào được sử dụng để cập nhật một phần tài nguyên?

2 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

2. Giao thức TCP đảm bảo điều gì mà UDP không cung cấp?

3 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

3. Trong lập trình mạng, thuật ngữ 'endianness' đề cập đến điều gì?

4 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

4. Khi lập trình mạng, lỗi 'connection refused' thường chỉ ra điều gì?

5 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

5. Trong lập trình mạng, thuật ngữ 'race condition' có nghĩa là gì?

6 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

6. Sự khác biệt chính giữa TCP và UDP socket là gì?

7 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

7. Để đảm bảo an toàn khi truyền dữ liệu nhạy cảm qua mạng, phương pháp nào sau đây nên được sử dụng?

8 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

8. Trong mô hình client-server, ai là người chủ động khởi tạo kết nối?

9 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

9. Trong lập trình mạng, kỹ thuật nào sau đây được sử dụng để phân phối lưu lượng mạng đến nhiều server khác nhau để cải thiện hiệu suất và khả năng chịu lỗi?

10 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

10. Trong lập trình mạng, phương pháp nào sau đây giúp giảm thiểu tác động của việc mất gói tin (packet loss) trong giao thức UDP?

11 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

11. SNMP (Simple Network Management Protocol) được sử dụng để làm gì?

12 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

12. Trong lập trình mạng, kỹ thuật 'multiplexing' được sử dụng để làm gì?

13 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

13. Trong lập trình mạng, socket được sử dụng để làm gì?

14 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

14. Trong lập trình mạng, thuật ngữ 'blocking socket' có nghĩa là gì?

15 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

15. Khi thiết kế một hệ thống phân tán, CAP theorem chỉ ra rằng bạn phải đánh đổi giữa những yếu tố nào?

16 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

16. Trong lập trình mạng, kỹ thuật 'heartbeat' thường được sử dụng để làm gì?

17 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

17. Trong lập trình mạng, thuật ngữ 'port forwarding' dùng để chỉ điều gì?

18 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

18. Giao thức nào sau đây được sử dụng để phân giải tên miền (ví dụ: google.com) thành địa chỉ IP?

19 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

19. NAT (Network Address Translation) có chức năng chính là gì?

20 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

20. Giao thức nào sau đây được sử dụng để truyền file qua mạng?

21 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

21. Trong lập trình socket, hàm `listen()` được sử dụng để làm gì?

22 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

22. Trong lập trình mạng, thuật ngữ 'socket buffer' đề cập đến điều gì?

23 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

23. Trong lập trình mạng, thuật ngữ 'deadlock' có nghĩa là gì?

24 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

24. Công cụ nào sau đây thường được sử dụng để kiểm tra và gỡ lỗi các yêu cầu HTTP?

25 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

25. Phương pháp nào sau đây thường được sử dụng để xử lý đồng thời nhiều kết nối trong một ứng dụng server?

26 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

26. Khi sử dụng WebSocket, lợi ích chính so với HTTP polling là gì?

27 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

27. Sự khác biệt chính giữa giao thức HTTP và HTTPS là gì?

28 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

28. Sự khác biệt chính giữa giao thức IPv4 và IPv6 là gì?

29 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

29. Giao thức nào sau đây thường được sử dụng để gửi email?

30 / 30

Category: Lập trình mạng

Tags: Bộ đề 5

30. Trong lập trình mạng, thuật ngữ 'backpressure' đề cập đến điều gì?