Chương 5.3 TCP Client

Một phần của tài liệu Bài giảng lập trình mạng Đại học Bách Khoa Hà Nội (Trang 173 - 177)

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  

Một phần của tài liệu Bài giảng lập trình mạng Đại học Bách Khoa Hà Nội (Trang 173 - 177)