1. Trong lập trình mạng, thuật ngữ `endianness` đề cập đến điều gì?
A. Phương pháp mã hóa dữ liệu
B. Thứ tự byte trong biểu diễn số nguyên
C. Kích thước tối đa của gói tin
D. Giao thức bảo mật
2. Phương pháp nào sau đây thường được sử dụng để xác thực người dùng trong các ứng dụng web?
A. ARP
B. DNS
C. OAuth
D. ICMP
3. Địa chỉ IP nào sau đây là địa chỉ loopback?
A. 192.168.1.1
B. 10.0.0.1
C. 127.0.0.1
D. 172.16.0.1
4. Trong lập trình mạng, thuật ngữ `serialization` đề cập đến quá trình nào?
A. Mã hóa dữ liệu để bảo mật
B. Chuyển đổi dữ liệu thành định dạng có thể truyền qua mạng
C. Nén dữ liệu để giảm kích thước
D. Kiểm tra lỗi dữ liệu
5. Trong lập trình mạng, thuật ngữ `socket` thường được hiểu là gì?
A. Một loại cáp mạng
B. Một điểm cuối của một kết nối mạng
C. Một thiết bị định tuyến mạng
D. Một giao thức truyền thông
6. Giao thức nào sau đây được sử dụng để cấp phát địa chỉ IP động cho các thiết bị trong mạng?
A. DNS
B. DHCP
C. NAT
D. ARP
7. Giao thức nào sau đây được sử dụng để truyền file giữa máy khách và máy chủ?
A. HTTP
B. SMTP
C. FTP
D. SNMP
8. Giao thức nào thường được sử dụng để truyền tải email giữa các máy chủ?
A. HTTP
B. FTP
C. SMTP
D. DNS
9. Trong mô hình TCP/IP, tầng nào chịu trách nhiệm cho việc chia nhỏ dữ liệu thành các gói tin?
A. Tầng Ứng dụng (Application Layer)
B. Tầng Vận tải (Transport Layer)
C. Tầng Mạng (Network Layer)
D. Tầng Liên kết dữ liệu (Data Link Layer)
10. Trong lập trình mạng, thuật ngữ `multiplexing` (đa hợp) đề cập đến quá trình nào?
A. Mã hóa dữ liệu
B. Kết hợp nhiều luồng dữ liệu vào một kênh duy nhất
C. Chia nhỏ dữ liệu thành các gói tin
D. Kiểm tra lỗi dữ liệu
11. Trong lập trình mạng, hàm `recv()` được sử dụng để làm gì?
A. Gửi dữ liệu qua socket
B. Nhận dữ liệu từ socket
C. Thiết lập một kết nối
D. Đóng một socket
12. Trong mô hình TCP/IP, tầng nào chịu trách nhiệm cho việc định tuyến dữ liệu giữa các mạng khác nhau?
A. Tầng Vận tải (Transport Layer)
B. Tầng Liên kết dữ liệu (Data Link Layer)
C. Tầng Mạng (Network Layer)
D. Tầng Ứng dụng (Application Layer)
13. Trong lập trình socket, hàm `accept()` được sử dụng để làm gì?
A. Gửi dữ liệu qua socket
B. Nhận dữ liệu từ socket
C. Chấp nhận một kết nối đến từ một máy khách
D. Đóng một socket
14. Giao thức nào sau đây hoạt động ở tầng ứng dụng và được sử dụng để truy vấn thông tin về tên miền?
A. TCP
B. IP
C. DNS
D. ARP
15. Trong lập trình socket, hàm `bind()` được sử dụng để làm gì?
A. Thiết lập một kết nối đến một socket khác
B. Đóng một socket
C. Gán một địa chỉ IP và số cổng cho một socket
D. Lắng nghe các kết nối đến
16. Trong mô hình OSI, tầng nào chịu trách nhiệm cho việc đảm bảo truyền dữ liệu tin cậy giữa hai hệ thống?
A. Tầng Mạng (Network Layer)
B. Tầng Vận tải (Transport Layer)
C. Tầng Liên kết dữ liệu (Data Link Layer)
D. Tầng Vật lý (Physical Layer)
17. Trong ngữ cảnh của bảo mật mạng, thuật ngữ `man-in-the-middle attack` (tấn công xen giữa) mô tả điều gì?
A. Một cuộc tấn công từ chối dịch vụ (DoS)
B. Một kẻ tấn công bí mật nghe lén và có thể thay đổi thông tin liên lạc giữa hai bên
C. Một cuộc tấn công bằng cách gửi lượng lớn dữ liệu đến một máy chủ
D. Một cuộc tấn công bằng cách khai thác lỗ hổng phần mềm
18. Trong lập trình mạng, phương pháp nào sau đây giúp giải quyết vấn đề `blocking I/O` (I/O chặn) trong các ứng dụng máy chủ?
A. Sử dụng đa luồng (multithreading) hoặc đa tiến trình (multiprocessing)
B. Sử dụng giao thức TCP
C. Sử dụng địa chỉ IP tĩnh
D. Sử dụng tường lửa
19. Giao thức nào sau đây được sử dụng để đồng bộ hóa thời gian giữa các hệ thống máy tính qua mạng?
A. SNMP
B. SMTP
C. NTP
D. FTP
20. Trong lập trình socket, hàm `listen()` được sử dụng để làm gì?
A. Chấp nhận một kết nối đến
B. Đóng một socket
C. Gửi dữ liệu qua socket
D. Lắng nghe các kết nối đến trên một socket
21. Phương pháp nào sau đây thường được sử dụng để bảo vệ dữ liệu truyền qua mạng không dây (Wi-Fi)?
A. WEP/WPA/WPA2/WPA3
B. ARP
C. DNS
D. ICMP
22. Phương pháp nào sau đây giúp cải thiện hiệu suất của ứng dụng web bằng cách giảm số lượng yêu cầu đến máy chủ?
A. Sử dụng CDN (Content Delivery Network)
B. Tăng băng thông mạng
C. Sử dụng giao thức UDP
D. Giảm kích thước gói tin TCP
23. Địa chỉ MAC (Media Access Control) được sử dụng ở tầng nào trong mô hình OSI?
A. Tầng Mạng (Network Layer)
B. Tầng Vận tải (Transport Layer)
C. Tầng Liên kết dữ liệu (Data Link Layer)
D. Tầng Vật lý (Physical Layer)
24. Địa chỉ IP phiên bản 6 (IPv6) có độ dài bao nhiêu bit?
A. 32 bits
B. 64 bits
C. 128 bits
D. 256 bits
25. Cơ chế nào cho phép một địa chỉ IP công cộng duy nhất được chia sẻ bởi nhiều thiết bị trong một mạng riêng?
A. DNS
B. DHCP
C. NAT
D. ARP
26. Phương pháp nào sau đây giúp ngăn chặn tấn công SYN flood?
A. Tăng kích thước cửa sổ TCP
B. Sử dụng tường lửa để lọc các gói tin SYN
C. Giảm thời gian timeout của kết nối TCP
D. Sử dụng cookie SYN
27. Giao thức nào sau đây được sử dụng để quản lý và giám sát các thiết bị mạng?
A. HTTP
B. FTP
C. SMTP
D. SNMP
28. Trong bảo mật mạng, thuật ngữ `firewall` (tường lửa) mô tả điều gì?
A. Một hệ thống phát hiện xâm nhập
B. Một hệ thống ngăn chặn truy cập trái phép vào hoặc ra khỏi mạng
C. Một giao thức mã hóa dữ liệu
D. Một công cụ kiểm tra lỗ hổng bảo mật
29. Trong lập trình mạng, thuật ngữ `deadlock` (bế tắc) có nghĩa là gì?
A. Một lỗi trong giao thức truyền thông
B. Một tình huống mà hai hoặc nhiều tiến trình bị chặn vĩnh viễn, chờ đợi lẫn nhau
C. Một cuộc tấn công từ chối dịch vụ
D. Một lỗi trong phần cứng mạng
30. Giao thức nào sau đây KHÔNG sử dụng TCP làm giao thức vận chuyển?
A. HTTP
B. FTP
C. SMTP
D. UDP