Ví dụ lập trình Socket (Client – Server) giao thức TCP

Sử dụng giao thức TCP giúp cho các ứng dụng có thể tạo kết nối lại với nhau nhằm có thể trao đổi dữ liệu hoặc các gói tin. Bài viết này mình sẽ giới thiệu các bạn ví dụ lập trình Socket (Client – Server) giao thức TCP trong Java IO.

Ví dụ đơn giản với lập trình Socket (Client – Server) giao thức TCP như sau:

Phần 1: Tạo Server

Ở phần Server bạn cần thiết kế giải thuật với lập trình mạng Socket trong Java như sau đây để có thể kết nối giữa Client và Server với nhau:

– Tạo và đăng ký Socket với hệ thống: ví dụ mình sẽ tạo ServerSocket và đăng ký với hệ thống với cổng 9540, Client muốn kết nối được với Server thì cần phải đúng theo địa chỉ Server và cổng kết nối.

– Tiếp theo Server chuyển sang trạng thái lắng nghe và chờ đợi Client kết nối đến:

– Trong Server bạn cần mở luồng, ở đây mình sử dụng DataInputStream và DataOutputStream:

– Client kết nối đến Server và gởi một tín hiệu nào đó, như ở đây mình sẽ gởi tín hiệu ping và Server khi nhận được chuỗi này sẽ trả về địa chỉ website kenhlaptrinh.net

– Sau đó Server trở lại trạng thái lắng nghe và chờ đợi Client khác kết nối đến và thực hiện lại quy trình tương tự các bước như trên.

Ví dụ lập trình Socket (Client – Server) giao thức TCP:

Phần 2: Tạo Client

Ở phần Client bạn sẽ viết theo giải thuật như sau thì mới có thể sử dụng lập trình Socket (Client – Server) giao thức TCP trong Java:

– Phía Client sẽ tạo Socket và kết nối đến Server, lưu ý bạn cần phải biết địa chỉ IP cũng như cổng của Server thì mới có thể kết nối được lại với nhau. Ở đây mình sẽ chạy trên cùng một máy nên địa chỉ IP của Server sẽ là 127.0.0.1 hoặc localhost, còn cổng (port) là trùng với cổng mà phần Server bạn mở ở trên.

– Cũng như Server thì Client cũng mở ra các luồng để nhận và gởi dữ liệu, chúng ta cũng nên sử dụng đúng với luồng mà Server đã tạo.

– Sau khi kết nối tới Server xong thì Client sẽ gởi một dữ liệu lên Server và sau đó nhận kết quả từ Server trả về, ở đây mình sẽ gởi ping

– Nếu đã nhận được kết quả chúng ta tiến hành đóng kết nối lại

Ví dụ lập trình Socket (Client – Server) giao thức TCP:

Như vậy với ví dụ trên mình đã hướng dẫn các bạn ví dụ lập trình Socket (Client – Server) giao thức TCP trong Java IO, ngoài ra bạn cũng nên sử dụng Thread khi sử dụng Client – Server nhằm tăng tính hiệu quả hơn.

(Tác giả: Tùng Dương)

Bình luận

Loading...