Đề thi, bài tập trắc nghiệm online Lập trình mạng – Đề 5

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é!!!


Đề thi, bài tập trắc nghiệm online Lập trình mạng

Đề 5 - Bài tập, đề thi trắc nghiệm online Lập trình mạng

1. IPv6 có ưu điểm gì nổi bật so với IPv4?

A. Tốc độ truyền dữ liệu nhanh hơn.
B. Bảo mật cao hơn.
C. Không gian địa chỉ lớn hơn nhiều, giải quyết vấn đề cạn kiệt địa chỉ IPv4.
D. Dễ dàng cấu hình hơn.

2. Trong mô hình client-server, client thường chủ động thực hiện hành động gì?

A. Cung cấp dịch vụ cho server.
B. Lắng nghe kết nối từ server.
C. Gửi yêu cầu dịch vụ đến server.
D. Quản lý tài nguyên của server.

3. DNS (Domain Name System) có vai trò gì trong mạng Internet?

A. Định tuyến gói tin trên Internet.
B. Cấp phát địa chỉ IP cho thiết bị.
C. Chuyển đổi tên miền (domain name) thành địa chỉ IP.
D. Mã hóa dữ liệu truyền trên Internet.

4. Để kiểm tra xem một cổng (port) trên một máy chủ từ xa có đang mở hay không, công cụ dòng lệnh phổ biến nào thường được sử dụng?

A. ping
B. traceroute
C. netstat
D. telnet hoặc nmap

5. Khi thiết kế một giao thức ứng dụng tầng ứng dụng, việc lựa chọn giao thức truyền tải TCP hay UDP phụ thuộc vào yếu tố nào?

A. Tốc độ đường truyền mạng.
B. Số lượng người dùng.
C. Yêu cầu về độ tin cậy và thứ tự dữ liệu.
D. Kích thước dữ liệu cần truyền.

6. Trong mô hình OSI, tầng nào chịu trách nhiệm chính cho việc đảm bảo dữ liệu đến đúng ứng dụng trên máy đích?

A. Tầng Mạng (Network Layer)
B. Tầng Giao vận (Transport Layer)
C. Tầng Phiên (Session Layer)
D. Tầng Ứng dụng (Application Layer)

7. Khái niệm `port forwarding` (chuyển tiếp cổng) thường được sử dụng trong trường hợp nào?

A. Tăng tốc độ internet.
B. Truy cập một dịch vụ bên trong mạng LAN từ bên ngoài internet.
C. Bảo mật mạng LAN.
D. Chia sẻ kết nối internet cho nhiều thiết bị.

8. Phương thức `listen()` được sử dụng trong lập trình socket phía server với mục đích gì?

A. Gửi dữ liệu đến client.
B. Đóng kết nối với client.
C. Chấp nhận kết nối từ client.
D. Đặt socket vào trạng thái lắng nghe kết nối đến.

9. Trong lập trình mạng, `serialization` (tuần tự hóa) dữ liệu có nghĩa là gì?

A. Mã hóa dữ liệu để bảo mật.
B. Nén dữ liệu để giảm kích thước.
C. Chuyển đổi cấu trúc dữ liệu phức tạp thành một chuỗi byte để truyền qua mạng hoặc lưu trữ.
D. Phân chia dữ liệu thành các gói tin nhỏ hơn.

10. Trong lập trình mạng, thuật ngữ `daemon` thường được dùng để chỉ loại chương trình nào?

A. Chương trình client.
B. Chương trình server chạy nền, thường không tương tác trực tiếp với người dùng.
C. Chương trình kiểm tra lỗi mạng.
D. Chương trình mã hóa dữ liệu.

11. Trong lập trình mạng, `blocking socket` và `non-blocking socket` khác nhau cơ bản như thế nào?

A. Blocking socket nhanh hơn non-blocking socket.
B. Blocking socket chỉ dùng cho TCP, non-blocking socket chỉ dùng cho UDP.
C. Blocking socket sẽ tạm dừng chương trình cho đến khi thao tác mạng hoàn thành, non-blocking socket trả về ngay lập tức.
D. Blocking socket an toàn hơn non-blocking socket.

12. Khái niệm `Network Address Translation` (NAT) giải quyết vấn đề gì chính trong mạng IPv4?

A. Tăng tốc độ truyền dữ liệu.
B. Cải thiện bảo mật mạng.
C. Thiếu hụt địa chỉ IPv4 công cộng.
D. Phân giải tên miền.

13. Sự khác biệt chính giữa `GET` và `POST` request trong HTTP là gì?

A. `GET` nhanh hơn `POST`.
B. `GET` dùng để lấy dữ liệu, `POST` dùng để gửi dữ liệu lên server (thường là tạo mới hoặc cập nhật).
C. `GET` an toàn hơn `POST`.
D. `GET` chỉ dùng cho text, `POST` dùng cho binary data.

14. Giao thức HTTP hoạt động ở tầng nào trong mô hình TCP/IP?

A. Tầng Liên kết dữ liệu (Data Link Layer)
B. Tầng Mạng (Network Layer)
C. Tầng Giao vận (Transport Layer)
D. Tầng Ứng dụng (Application Layer)

15. Socket trong lập trình mạng đóng vai trò gì?

A. Là địa chỉ IP của máy tính.
B. Là một điểm cuối giao tiếp mạng, cho phép ứng dụng gửi và nhận dữ liệu qua mạng.
C. Là tên miền của trang web.
D. Là một loại tường lửa bảo vệ mạng.

16. Trong lập trình mạng, `backlog` queue (hàng đợi backlog) trong hàm `listen()` có vai trò gì?

A. Lưu trữ dữ liệu đã nhận được.
B. Lưu trữ các kết nối đã được chấp nhận.
C. Lưu trữ các yêu cầu kết nối đang chờ được chấp nhận.
D. Kiểm soát tốc độ truyền dữ liệu.

17. Khi một client gửi dữ liệu đến server qua TCP, quá trình `handshake` (bắt tay) 3 bước diễn ra để làm gì?

A. Mã hóa dữ liệu.
B. Xác thực client.
C. Thiết lập kết nối TCP đáng tin cậy.
D. Phân chia dữ liệu thành gói tin.

18. Phương thức `accept()` trong lập trình socket phía server trả về giá trị gì?

A. Số byte đã nhận được.
B. Một socket mới đại diện cho kết nối với client.
C. Địa chỉ IP của client.
D. Trạng thái kết nối (thành công/thất bại).

19. Phương thức `shutdown()` socket khác với `close()` socket ở điểm nào?

A. `shutdown()` đóng socket nhanh hơn `close()`.
B. `shutdown()` chỉ đóng kết nối gửi, `close()` đóng cả gửi và nhận.
C. `shutdown()` chỉ đóng kết nối nhận, `close()` đóng cả gửi và nhận.
D. `shutdown()` có thể đóng một phần kết nối (gửi hoặc nhận), trong khi `close()` đóng hoàn toàn socket.

20. Giao thức UDP khác biệt so với TCP chủ yếu ở điểm nào?

A. UDP cung cấp kết nối tin cậy, còn TCP thì không.
B. UDP là giao thức hướng kết nối, TCP là giao thức không kết nối.
C. UDP không đảm bảo thứ tự và độ tin cậy của gói tin, TCP thì có.
D. UDP sử dụng địa chỉ MAC, TCP sử dụng địa chỉ IP.

21. Khi lập trình socket, lỗi `Address already in use` thường xảy ra khi nào?

A. Cổng (port) mà server muốn sử dụng đã được một ứng dụng khác chiếm giữ.
B. Địa chỉ IP của server không hợp lệ.
C. Client gửi yêu cầu kết nối quá nhanh.
D. Kết nối mạng bị gián đoạn.

22. Mục đích chính của việc sử dụng `đa luồng` (multi-threading) hoặc `đa tiến trình` (multi-processing) trong lập trình server là gì?

A. Giảm độ trễ mạng.
B. Tăng cường bảo mật mạng.
C. Xử lý đồng thời nhiều kết nối client, tăng khả năng phục vụ.
D. Đơn giản hóa code server.

23. Trong lập trình mạng, `byte order` (thứ tự byte) có ý nghĩa gì và tại sao cần quan tâm đến nó?

A. Thứ tự byte chỉ định tốc độ truyền dữ liệu.
B. Thứ tự byte liên quan đến việc mã hóa dữ liệu.
C. Thứ tự byte là cách các byte của một số nguyên được sắp xếp trong bộ nhớ, và cần thống nhất giữa các hệ thống khác nhau khi truyền dữ liệu.
D. Thứ tự byte xác định kích thước tối đa của gói tin.

24. Trong lập trình mạng, `congestion control` (kiểm soát tắc nghẽn) là cơ chế quan trọng của giao thức nào?

A. UDP
B. IP
C. TCP
D. DNS

25. Firewall (tường lửa) hoạt động chủ yếu ở tầng nào trong mô hình OSI để kiểm soát lưu lượng mạng?

A. Tầng Vật lý (Physical Layer)
B. Tầng Liên kết dữ liệu (Data Link Layer)
C. Tầng Mạng (Network Layer) và Tầng Giao vận (Transport Layer)
D. Tầng Ứng dụng (Application Layer)

26. Phương thức `select`, `poll`, và `epoll` trong lập trình socket được dùng để giải quyết vấn đề gì?

A. Bảo mật kết nối.
B. Quản lý đồng thời nhiều socket (I/O multiplexing).
C. Tăng tốc độ truyền dữ liệu.
D. Kiểm tra lỗi kết nối.

27. Khái niệm `socket timeout` (thời gian chờ socket) được sử dụng để làm gì?

A. Tăng tốc độ truyền dữ liệu.
B. Giảm dung lượng bộ nhớ sử dụng bởi socket.
C. Ngăn chặn chương trình bị treo vô thời hạn khi chờ thao tác socket (ví dụ: nhận dữ liệu).
D. Mã hóa dữ liệu socket.

28. Ưu điểm chính của việc sử dụng UDP so với TCP trong các ứng dụng thời gian thực (real-time) như video streaming hoặc game online là gì?

A. UDP đảm bảo dữ liệu đến nơi an toàn hơn TCP.
B. UDP cung cấp cơ chế kiểm soát tắc nghẽn tốt hơn TCP.
C. UDP có độ trễ thấp hơn TCP do không có cơ chế thiết lập kết nối và đảm bảo độ tin cậy.
D. UDP hỗ trợ truyền dữ liệu đa hướng (multicast) tốt hơn TCP.

29. SSL/TLS được sử dụng để cung cấp bảo mật cho giao thức nào phổ biến nhất?

A. UDP
B. IP
C. HTTP
D. DNS

30. Trong lập trình socket, hàm `bind()` có chức năng gì?

A. Tạo một socket mới.
B. Đóng một socket.
C. Gán địa chỉ IP và cổng cho socket.
D. Gửi dữ liệu qua socket.

1 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

1. IPv6 có ưu điểm gì nổi bật so với IPv4?

2 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

2. Trong mô hình client-server, client thường chủ động thực hiện hành động gì?

3 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

3. DNS (Domain Name System) có vai trò gì trong mạng Internet?

4 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

4. Để kiểm tra xem một cổng (port) trên một máy chủ từ xa có đang mở hay không, công cụ dòng lệnh phổ biến nào thường được sử dụng?

5 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

5. Khi thiết kế một giao thức ứng dụng tầng ứng dụng, việc lựa chọn giao thức truyền tải TCP hay UDP phụ thuộc vào yếu tố nào?

6 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

6. Trong mô hình OSI, tầng nào chịu trách nhiệm chính cho việc đảm bảo dữ liệu đến đúng ứng dụng trên máy đích?

7 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

7. Khái niệm 'port forwarding' (chuyển tiếp cổng) thường được sử dụng trong trường hợp nào?

8 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

8. Phương thức `listen()` được sử dụng trong lập trình socket phía server với mục đích gì?

9 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

9. Trong lập trình mạng, 'serialization' (tuần tự hóa) dữ liệu có nghĩa là gì?

10 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

10. Trong lập trình mạng, thuật ngữ 'daemon' thường được dùng để chỉ loại chương trình nào?

11 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

11. Trong lập trình mạng, 'blocking socket' và 'non-blocking socket' khác nhau cơ bản như thế nào?

12 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

12. Khái niệm 'Network Address Translation' (NAT) giải quyết vấn đề gì chính trong mạng IPv4?

13 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

13. Sự khác biệt chính giữa `GET` và `POST` request trong HTTP là gì?

14 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

14. Giao thức HTTP hoạt động ở tầng nào trong mô hình TCP/IP?

15 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

15. Socket trong lập trình mạng đóng vai trò gì?

16 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

16. Trong lập trình mạng, 'backlog' queue (hàng đợi backlog) trong hàm `listen()` có vai trò gì?

17 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

17. Khi một client gửi dữ liệu đến server qua TCP, quá trình 'handshake' (bắt tay) 3 bước diễn ra để làm gì?

18 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

18. Phương thức `accept()` trong lập trình socket phía server trả về giá trị gì?

19 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

19. Phương thức `shutdown()` socket khác với `close()` socket ở điểm nào?

20 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

20. Giao thức UDP khác biệt so với TCP chủ yếu ở điểm nào?

21 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

21. Khi lập trình socket, lỗi 'Address already in use' thường xảy ra khi nào?

22 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

22. Mục đích chính của việc sử dụng 'đa luồng' (multi-threading) hoặc 'đa tiến trình' (multi-processing) trong lập trình server là gì?

23 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

23. Trong lập trình mạng, 'byte order' (thứ tự byte) có ý nghĩa gì và tại sao cần quan tâm đến nó?

24 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

24. Trong lập trình mạng, 'congestion control' (kiểm soát tắc nghẽn) là cơ chế quan trọng của giao thức nào?

25 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

25. Firewall (tường lửa) hoạt động chủ yếu ở tầng nào trong mô hình OSI để kiểm soát lưu lượng mạng?

26 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

26. Phương thức `select`, `poll`, và `epoll` trong lập trình socket được dùng để giải quyết vấn đề gì?

27 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

27. Khái niệm 'socket timeout' (thời gian chờ socket) được sử dụng để làm gì?

28 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

28. Ưu điểm chính của việc sử dụng UDP so với TCP trong các ứng dụng thời gian thực (real-time) như video streaming hoặc game online là gì?

29 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

29. SSL/TLS được sử dụng để cung cấp bảo mật cho giao thức nào phổ biến nhất?

30 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình mạng

Tags: Bộ đề 5

30. Trong lập trình socket, hàm `bind()` có chức năng gì?