• Thứ Sáu, 15/12/2006 08:32 (GMT+7)

    Lập trình socket trong Linux

    Câu hỏi :
    Lập trình socket trong Linux, theo mô hình client-server, tôi đã thiết lập được kết nối từ client đến server nhưng không biết làm sao để cho client chat với client. Xin hướng dẫn. 
     

    Trả lời :

    Lập trình mạng dùng socket trên Windows và Linux (hay trên những hệ thống khác) tương tự nhau, sự khác biệt thường rất ít. Theo như bạn nói, có lẽ bạn đã lập trình được việc client nối kết với server và trao đổi thông tin lẫn nhau, cái mà bạn hỏi là ý tưởng làm việc của client và server. Trong 1 ứng dụng mạng dùng mô hình client-server, điều thiết yếu nhất là phải thiết kế được giao thức làm việc giữa client-server, đó là tập các thông báo request gửi từ client đến server cũng như tập các thông báo reply gửi từ server về client cùng định dạng cụ thể của từng thông báo đó. Trong mô hình client-server, ứng dụng client chỉ giao tiếp với server và ngược lại, không có việc client giao tiếp trực tiếp với client khác hay server giao tiếp với server khác. Trong ứng dụng Chat của bạn, mỗi khi người dùng nào đó gửi 1 thông báo đến các thành viên khác trong nhóm, thực sự client chỉ gửi thông báo đó về cho server chat. Server chat sẽ kiểm tra xem nhóm tương ứng có bao nhiêu client, địa chỉ cụ thể của từng máy rồi lập lại việc gửi thông báo đến từng máy cho từng client. Như vậy theo cảm nhận của người chat, họ tưởng họ đang gửi trực tiếp đến các thành viên trong nhóm của mình.
     

    Chuyên mục: Lập trình