173
• Trình tự
– Xác định địa chỉ của Server – Tạo Socket
– Kết nối đến Server
– Gửi nhận dữ liệu theo giao thức đã thiết kế – Đóng Socket
Chương 5.3 TCP Client
174
• Thí dụ
// Thiết lập địa chỉ
IPEndPoint iep = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 8888);
// Tạo socket client
Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
// Kết nối đến server
client.Connect(iep);
byte[] data = new byte[1024];
int recv = client.Receive(data); // Nhận câu chào từ server
string s = Encoding.ASCII.GetString(data, 0, recv); Console.WriteLine("Server gui:{0}", s);
string input; while (true) {
input = Console.ReadLine();
//Chuyen input thanh mang byte gui len cho server
data = Encoding.ASCII.GetBytes(input);
Chương 5.3 TCP Client
175
• Thí dụ (tiếp)
if (input.ToUpper().Equals("QUIT")) break;
}
client.Disconnect(true); client.Close();
• Yêu cầu
– Giải thích được cặn kẽ hoạt động của một giao thức (mô tả được đặc tả gói tin, kịch bản gửi nhận giữa server ó client)
– Viết chương trình minh họa (hoặc sử dụng) một chức năng cơ bản nhất của môt giao thức. Chương trình chỉ được phép sử dụng một trong các thư viện: Winsock, MFC Socket, .NetSocket.
– Slide khoảng 10 trang. • Kịch bản giao thức
• Khuôn dạng dữ liệu của giao thức – Khung điểm: 0 => 10.
– Sử dụng Wireshark
• Các giao thức cần trình bày
– 1.FTP: Cần minh họa được việc tải »ile.
– 2.HTTP: Cần minh họa được việc lấy một trang web. – 3.SMTP: Cần minh họa được việc gửi thư.
– 4.POP3: Minh họa được việc nhận thư
Semina