Đề thi giữa kỳ môn Lập trình mạng - Mã đề 247
ĐỀ THI GIỮA KỲ MÔN LẬP TRÌNH MẠNG
Thời gian: 90 phút – Không được phép dùng tài liệu
Phần 1. Trắc nghiệm
(6đ – tô kết quả vào phiếu trả lời trắc nghiệm)
1. Thư viện liên kết động của Windows Socket có tên là:
b. IP
a. WinSock.DLL
b. WinSock2.DLL
c. ICMP
d. UDP
c. WS2.DLL
11. Dịch vụ phân giải tên miền chạy ở tầng nào trong các
d. WS2_32.DLL
tầng sau đây
2. Công cụ nào sử dụng để kiểm tra hoạt động của một máy
chủ phân giải tên miền
a. Application
b. Transport
a. Ping
c. Internetwork
b. Nslookup
d. Datalink
c. Netstat
12. Giao thức nào được sử dụng để chia sẻ một địa chỉ toàn
d. Ipconfig
cục cho một nhóm các máy tính trong mạng LAN.
3. Biên của thông điệp trong các giao thức hướng dòng có
được bảo toàn hay không ?
a. Có
a. VLAN
b. MAC
c. NAT
b. Không
d. Không đáp án nào đúng
c. Tùy từng trường hợp, nếu được tổ chức hợp lý.
4. Công cụ dùng để theo dõi tài nguyên sử dụng của máy
tính trên hệ điều hành Windows là
a. Task Manager
13. Trong một mạng máy tính được chia sẻ chung một địa
chỉ IP toàn cục. Thiết lập nào sau đây sẽ cho phép một
máy tính từ Internet chủ động kết nối đến một máy chủ
trong mạng.
b. Resource Monitor
a. DMZ
c. Wireshark
d. Phương án a và b.
b. Virtual Server
c. Port Forwarding
5. Nếu cần phát triển thêm trình điều khiển cho một loại
thiết bị mới. Ứng dụng sẽ phải viết ở tầng nào của
Windows Socket
d. Cả ba phương án trên.
14. Để có thể sử dụng dụng thư viện Windows Socket, tệp
thư viện cần khai báo cho quá trình liên kết là.
a. Winsock.lib
a. Application
b. Provider
b. WS2_32.LIB
c. Transport Protocol
c. WS2_32.DLL
d. Không tầng nào đúng
6. Công cụ dùng để bắt các gói tin gửi ra và vào một giao
diện mạng của máy tính là
a. Netcat
d. Winsock2.dll
15. Nếu cần phải thiết kế một giao thức mới, ứng dụng sẽ
phải tích hợp vào tầng nào của Windows Socket API
a. Application
b. Network Monitor
b. Provider
c. Cain
c. Transport Protocol
d. Không phương án nào đúng.
7. Công cụ đa năng, vừa có thể đóng vai trò client, vừa
server, chạy trên giao thức TCP, UDP là.
a. Netcat
d. Không tầng nào đúng.
16. Công cụ chuẩn đoán mạng dùng để hiển thị các kết nối
hiện có trên máy tính là
a. Wireshark
b. TCPDump
b. TCPView
c. Netstat
c. Netcat
d. Network Monitor
d. Tất cả các công cụ trên
17. Trình điều khiển cho một thiết bị mạng sẽ được chạy ở
chế độ
8. WSADATA là cấu trúc dùng để
a. Truyền thông tin về phiên bản WinSock mà ứng
dụng muốn khởi tạo
a. User Mode
b. Nhận thông tin về phiên bản WinSock có trên
hệ thống.
b. Kernel Mode
c. System Mode
c. Cả hai đáp án đều sai.
9. Để có thể sử dụng thư viện Windows Socket, tệp tiêu đề
cần khai báo là:
d. Không phương án nào đúng.
18. Hàm nào sau đây thực hiện công việc khởi tạo Windows
Socket
a. Winsock.h
b. Winsock2.h
c. Ws2_32.h
a. WSStartup
b. WinsockStartup
c. SocketStartup
247
d. Ws2.h
d. WSAStartup
10. Nếu cần phải viết một ứng dụng cần tính đáp ứng nhanh
và chấp nhận sai sót. Giao thức lựa chọn sẽ là
a. TCP
19. Hàm nào sau đây sử dụng để giải phóng Windows Socket API.
a. WSACleanup
b. WSCleanup
c. Cleanup
d. Phương án khác:…
20. Lệnh nào sau đây dùng để tạo một socket TCP
a. socket(AF_INET,SOCK_STREAM,IPPROTO_TCP).
b. socket(AF_INET,SOCK_DGRAM,IPROTO_TCP).
c. Socket(AF_INET,SOCK_STREAM,IPPROTO_UDP)
d. socket(AF_INET,SOCKSTREAM,IPPROTOTCP).
21. Cấu trúc nào được sử dụng để khai báo địa chỉ socket
internet:
if (ret ==SOCKET_ERROR) {
printf(“Loi ket noi: %d”, <A>);
<B>;
<C>;
};
a. <A>: GetLastError, <B>: closesocket (s), <C>:
WSACleanup().
a. sock_addr
b. sockaddr
b. <A>: WSAGetLastError(), <B> close(s), <C>:
Cleanup().
c. sockaddr_in
d. sock_addr_in
c. <A>: WSALastError(), <B>: closesocket(s),
<C>: để trống.
22. Các giá trị lớn hơn 01 byte trong cấu trúc lưu trữ địa chỉ
của socket được tổ chức theo kiểu:
a. Đầu to
d. Không phương án nào đúng.
27. Để chuyển đổi một địa chỉ IP lưu trong biến serverAddr
lưu trữ địa chỉ socket sang dạng xâu ký tự, lệnh nào sau
đây là đúng
b. Đầu nhỏ
c. Tùy trường hợp
23. Để lấy mã lỗi của thao tác ngay trước đó. Hàm nào sau
đây sẽ được sử dụng
a. inet_ntos(serverAddr.sin_addr);
b. inet_ntoa(serverAddr.s_addr);
c. inet_itos(serverAddr.sin_addr);
d. inet_ntoa(serverAddr.sin_addr);
28. Lệnh nào sau đây dùng để tạo một socket UDP
a. socket(AF_INET,SOCK_UDP, IPPROTO_TCP).
b. socket(AF_INET,SOCK_DGRAM,IPROTO_TCP).
c. Socket(AF_INET,SOCK_STREAM,IPPROTO_UDP)
d. Không lệnh nào đúng.
a. GetLastError
b. WSAGetError
c. WSAGetLastError
d. WSALastError
24. Để chuyển đổi một xâu sang địa chỉ IP, lệnh nào sau đây
là đúng
a. inet_ntoa(“192.168.1.1”);
b. inet_aton(“192.168.1.1”);
c. inet_addr(“192.168.1.1”);
d. inet_stoi(“192.168.1.1”);
29. Để chuyển đổi giá trị cổng từ đầu nhỏ sang đầu to, lệnh
nào sau đây sẽ được sử dụng
a. ntohl
b. ntohs
25. Trong Windows Socket, với các hàm không có tiền tố
WSA thì mã lỗi trả về là 0 có nghĩa là:
a. Thành công
c. htonl
d. htons
30. Để thực hiện phân giải tên miền bằng WinSock, cần bổ
sung tệp tiêu đề nào
b. Thất bại
c. Tùy trường hợp
a. Winsock2.h
26. Đoạn chương trình sau thực hiện kết nối đến một
server, điền vào vị trí <A>, <B>, <C> các lệnh còn thiếu.
ret = connect(s,
b. Ws2_32.h
c. Ws2ip.h
d. Ws2tcpip.
(sockaddr*)&serverAddr,sizeof(serverAddr));
Phần 2. Tự luận
(4đ – viết ra giấy tự chuẩn bị)
Viết chương trình FileClient sử dụng mô hình blocking làm nhiệm vụ sau:
1. Kết nối đến server có địa chỉ/tên miền được nhập từ bàn phím.
2. Nhận tên file từ bàn phím và gửi yêu cầu tải file đến server, cú phảp có dạng “GET <TenFile>\n”.
3. Xử lý kết quả từ server
a. Nếu server báo lỗi, thì dữ liệu gửi trả có dạng “FAILED\n<ThongBaoLoi>\n\n”.
b. Nếu server báo thành công thì dữ liệu gửi trả có dạng “OK\n<FileSize>\n<NoiDungFile>\n\n”. Phân tích kết quả
từ server và ghi nội dung file nhận được ra đĩa.
4. Chương trình có thể tải nhiều file cùng một lúc, từ nhiều server.
Bạn đang xem tài liệu "Đề thi giữa kỳ môn Lập trình mạng - Mã đề 247", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
de_thi_giua_ky_mon_lap_trinh_mang_ma_de_247.docx

