1. Trang chủ
  2. » Công Nghệ Thông Tin

LẬP TRÌNH MẠNG DÙNG SOCKET

38 274 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 38
Dung lượng 499,28 KB

Nội dung

Khoa Hc v K Thut Mỏy Tớnh Trang 1 Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM Bi Ging 2 LP TRèNH MNG DNG SOCKET Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 2 KHI NIM V SOCKET Socket API éc gii thiu BSD4.1 UNIX, 1981 éc ng dng khi to, s dng v hy b. Dựng c ch client/server Cung cp hai dch v chuyn d liu thụng qua socket API: unreliable datagram reliable, byte stream-oriented Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 3 KHI NIM V SOCKET Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 4 THIT K GII THUT CLIENT/SERVER Thi t k gi i thu t cho client Gii thut cho chng trỡnh client dựng UDP Xỏc nh a ch server. To socket. Gi/nhn d liu theo giao thc lp ng dng ó thit k. úng socket. Gii thut cho chng trỡnh client dựng TCP Xỏc nh a ch server To socket. Kt ni n server. Gi/nhn d liu theo giao thc lp ng dng ó thit k. úng kt ni. Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 5 THIT K GII THUT CLIENT/SERVER Thit k gii thut cho Server Chng trỡnh server cú hai loi: L p(iterative) ng th i (concurrent). Hai dng giao thc chng trỡnh server: Connection-oriented Connectionless. Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 6 THIT K GII THUT CLIENT/SERVER Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 7 THIT K GII THUT CLIENT/SERVER Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 8 THIT K GII THUT CLIENT/SERVER Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 9 THIT K GII THUT CLIENT/SERVER Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 10 THIT K GII THUT CLIENT/SERVER [...]... TRèNH MNG TRấN JAVA Socket class Class mụ t v socket To mt socket Socket(InetAddress address, int port) Socket( String host, int port) Socket( InetAddress address, int port, InetAddress, localAddr, int localPort) Socket( String host, int port, InetAddress, localAddr, int localPort) Socket( ) Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 18 Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM LP TRèNH MNG TRấN JAVA Socket class (tip... System.err.println(e); } } // end for } // end main } // end getSocketInfo Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 21 Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM LP TRèNH MNG TRấN JAVA ServerSocket class Class mụ t v ServerSocket To mt ServerSocket ServerSocket(int port) throws IOException ServerSocket(int port, int backlog) throws IOException ServerSocket(int port, int backlog, InetAddress bindAddr) throws IOException... Khoa Tp.HCM LP TRèNH MNG TRấN JAVA ServerSocket class Cỏc phng thc trong ServerSocket Socket accept() throws IOException : Lng nghe mt kt ni n socket ny v chp nhn nú void close() throws IOException : úng socket InetAddress getInetAddress() : tr v a ch cc b ca socket int getLocalPort() : Tr v port m server ang lng nghe void setSoTimeout(int timeout) throws SocketException Enable/disable SO_TIMEOUT... vic c cỏc byte t socket ny Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 19 Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM LP TRèNH MNG TRấN JAVA Kt ni ờn 1 s webserver import java.net.*; import java.io.*; public class getSocketInfo { public static void main(String[] args) { for (int i = 0; i < args.length; i++) { try { Socket theSocket = new Socket( args[i], 80); System.out.println("Connected to " + theSocket.getInetAddress()... JAVA Socket class (tip theo) Ly thụng tin v mt socket InetAddress getInetAddress() : tr v a ch m socket kt ni n int getPort() : tr v a ch m socket kt ni n InetAddress getLocalAddress() : tr v a ch cc b int getLocalPort() : tr v a ch cc b S dng Streams public OutputStream getOutputStream() throws IOException Tr v mt output stream cho vic vit cỏc byte n socket ny public InputStream getInputStream() throws... theSocket.getInetAddress() + " on port " + theSocket.getPort() + " from port " + theSocket.getLocalPort() + " of " + theSocket.getLocalAddress()); Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 20 Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM LP TRèNH MNG TRấN JAVA Kt ni ờn 1 s webserver (tip theo) } catch (UnknownHostException e) { System.err.println("I can't find " + args[i]); } catch (SocketException e) { System.err.println("Could... K Thut Mỏy Tớnh Trang 31 Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM LP TRèNH SOCKET VI TCP Server Server process phi chy trc Server phi to mt socket lng nghe v chp nhn cỏc kt ni t client Client Khi to TCP socket Xỏc nh IP address, port number ca server Thit lp kt ni n server Khi server nhn yờu cu kt ni, nú s chp nhn yờu cu v khi to socket mi giao tip vi client Cú th server chp nhn nhiu client ti mt... import java.io.*; import java.util.Date; public class DayTimeServer { public final static int daytimePort = 5000; public static void main(String[] args) { ServerSocket theServer; Socket theConnection; PrintStream p; try { theServer = new ServerSocket(daytimePort); Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 24 Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM LP TRèNH MNG TRấN JAVA DateTime Server (tip theo) while (true)... Baựch Khoa Tp.HCM THIT K GII THUT CLIENT/SERVER Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 11 Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM LP TRèNH MNG TRấN JAVA Gúi java.net InetAddress ServerSocket Socket URL URLConnection DatagramSocket Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 12 Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM LP TRèNH MNG TRấN JAVA InetAddress class Class mụ t v a ch IP (Internet Protocol) Cỏc phng thc getLocalHost,... Tp.HCM LP TRèNH SOCKET VI UDP Cung cp c ch truyn khụng tin cy gia cỏc nhúm cỏc byte (datagrams) gia client v server Khụng cn thit lp kt ni gia client v server Sender phi gi kốm a ch IP v port ớch Server khi nhn d liu s phõn tớch a ch ca sender truyn li Cú th server chp nhn nhiu client ti mt thi im Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 26 Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM LP TRèNH SOCKET VI UDP Khoa . TRấN JAVA Gúi java. net InetAddress ServerSocket Socket URL URLConnection DatagramSocket Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 13 LP TRèNH MNG TRấN JAVA InetAddress. TRèNH MNG TRấN JAVA Trửụứng ẹaùi Hoùc Baựch Khoa Tp.HCM Khoa Khoa Hc v K Thut Mỏy Tớnh Trang 18 LP TRèNH MNG TRấN JAVA Socket class Class mụ t v socket T o m t socket Socket( InetAddress. 19 LP TRèNH MNG TRấN JAVA Socket class (ti p theo) Ly thụng tin v mt socket InetAddress getInetAddress() : tr v a ch m socket kt ni n. int getPort() : tr v a ch m socket kt ni n. InetAddress

Ngày đăng: 08/05/2014, 16:22

TỪ KHÓA LIÊN QUAN

w