Chương 12: Lập trình mạng
lượt xem 44
download
Tham khảo tài liệu 'chương 12: lập trình mạng', Lập trình mạng với các lớp InetAddress, URL và URLConnection 1. Lớp InetAddress Các thiết bị được kết nối với mạng LAN có địa chỉ vật lý duy nhất. Điều này giúp cho các máy khác trên mạng trong việc truyền các gói tin đến đúng vị trí...
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Chương 12: Lập trình mạng
- Chương 12. L p trình m ng GVLT: Tr n Anh Dũng 1
- N i dung M ng máy tính Các giao th c m ng Giao th c TCP, UDP Mô hình client/server L p trình m ng thông qua socket L p trình socket v i TCP L p trình socket v i UDP 2
- M ng máy tính T ng ng d ng Standard apps: HTTP, FTP, Telnet User apps Application T ng v n chuy n (http,ftp,telnet,…) Transport TCP (TCP, UDP,...) UDP Network (IP,…) Programming Interface: Sockets Link (device driver,...) T ng m ng: IP T ng k t n i: Device drivers 3
- Các giao th c m ng Trên internet, hai máy có th trao ñ i ñư c v i nhau ña s ñ u d a theo quy ư c hay giao th c c t lõi là TCP/IP (Transmission Control Protocol/Internet Protocol) Theo giao th c này m i máy s ñư c ñ t cho m t s riêng bi t g i là ñ a ch IP (IP address) Ví d máy tính có tên www.microsoft.com s có ñ a ch IP là 207.46.230.219 Các s IP này là duy nh t (không máy nào ñư c trùng) Do NIC cung c p 4
- Các giao th c m ng T i sao v a có ñ a ch IP v a có tên riêng cho t ng máy? Cách bi u di n: Chi u dài 32 bits 172.28.16.5 172 28 16 5 10101100 00011100 00010000 00000101 5
- Giao th c TCP và UDP Quá trình chuy n d li u trên m ng là khá ph c t p. Chi ti t quá trình này di n ra tương t như trong th c t ta g i thư hay bưu ph m Trư c h t ph i ghi rõ ñ a ch nơi ñ n (trư ng h p này là ñ a ch IP c a máy ch ) Sau ñó có th g i thông thư ng ho c g i b o ñ m. Cách chuy n d li u b o ñ m d a vào giao th c TCP (Transmission Control Protocol) Cách truy n không b o ñ m d a vào giao th c UDP (User Datagram Protocol) 6
- Giao th c TCP TCP – Transmission Control Protocol Giao th c ph bi n t ng v n chuy n ð c ñi m: Tin c y Hư ng k t n i (Connection oriented) Ho t ñ ng hai chi u ñ ng th i Phân m nh thông ñi p thành t ng gói và send TCP chi m d ng tài nguyên và ch m Áp d ng cho các d ch v như truy n t p tin, các d ch v tr c tuy n trên internet ñòi h i ñ tin c y cao,… 7
- Giao th c TCP 8
- Giao th c UDP UDP – User Datagram Protocol Giao th c không k t n i (Connectionless protocol) Phân ph i thông ñi p không tin c y Không c n ki m tra ñư ng truy n, không thông tin ph n h i Ít chi m d ng tài nguyên, nhanh Ch ng h n: Thông báo gi , t giá, g i tin nh n,… 9
- Giao th c UDP 10
- D ch v máy ch & Port Khi k t n i vào máy ch ta có th yêu c u máy ch nhi u d ch v khác nhau. TCP và UDP ch ch u trách nhi m ñưa d li u t m t máy tính này sang m t máy tính khác, còn d li u ñó ñư c g i cho d ch v nào thì ph i thông qua m t d ch v g i là c ng (port). M i chương trình d ch v s s d ng m t port ñ truy xu t thông tin. Như v y, TCP và UDP s d ng port ñ xác ñ nh chương trình s nh n d li u khi ñ n m t máy tính. 11
- D ch v máy ch & Port Port là m t s nguyên M t s port ñã ñư c dành riêng cho các d ch v m ng ph bi n: FTP 21 HTTP 80 Telnet 23 SMTP 25 … Nên dùng giá tr l n hơn 1024 12
- Mô hình Client/Server a client, a server, and network Client Server Network Client machine Server machine 13
- Mô hình Client/Server Server: Là ph n t th ñ ng Ch yêu c u t client X lý và tr k t qu cho client Client: Là ph n t ch ñ ng K t n i ñ n server ñ g i yêu c u Ch nh n k t qu tr v và x lý k t qu 14
- L p trình m ng thông qua socket Trư c khi yêu c u m t d ch v trên máy ch th c hi n ñi u gì ñó, client ph i có kh năng k t n i ñư c v i máy ch . Quá trình k t n i này ñư c java hi n th c thông qua m t cơ ch tr u tư ng hóa g i là socket (“cơ ch c m”) Vi c k t n i theo cơ ch socket c n hai thông tin chính: ð a ch c a máy c n k t n i S hi u c ng c a chương trình d ch v 15
- L p trình m ng thông qua socket Sockets ði m giao ti p gi a máy tính và m ng ðư c dùng ñ g i và nh n d li u ðư c h tr b i nhi u h th ng và ngôn ng l p trình Có hai lo i socket: TCP (Transmission Control Protocol) UDP (User Datagram Protocol) sockets (end points) logical connection 16
- L p trình m ng thông qua socket Gói java.net ch a t t c các l p c n thi t cho vi c l p trình m ng. ð s d ng chúng ta c n khai báo: import java.net.*; Các l p cơ b n: InetAddress Socket ServerSocket DatagramSocket DatagramPacket 17
- InetAddress class L p InetAddress Qu n lý ñ a ch theo tên và theo s Không có phương th c kh i t o Cung c p các phương th c static ñ chuy n ñ i và truy xu t ñ a ch IP public static InetAddress getByName(String host) public static InetAddress[ ] getAllByName(String host) public static InetAddress getLocalHost() 18
- InetAddress class – Ví d Ví import java.net.*; public class IDemoInetAddress { public static void main(String args[]){ try{ InetAddress A = InetAddress.getLocalHost(); //InetAddress A = InetAddress.getByName("www.uit.edu.vn"); System.out.println("Host Name is: " + A.getHostName()); System.out.println("IP Address is:" + A.getHostAddress()); } catch (UnknownHostException m) { System.out.println("Address not found "); System.exit(1); } } } 19
- L p trình socket v i TCP Client ph i k t n i ñ n server Server process ph i ch y trư c (ph n t th ñ ng) Server ph i t o m t socket ñ l ng nghe và ch p nh n các k t n i t client Client k t n i ñ n server b ng cách: Kh i t o TCP socket local Xác ñ nh IP address, port number c a server process và k t n i ñ n 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Giáo trình HTML và Javascript
236 p | 342 | 132
-
Lập trình với Java (P8)
45 p | 183 | 78
-
Giáo trình C - Nhiều tác giả
119 p | 169 | 56
-
Kỹ thuật lập trình trên Visual Basic 2005
148 p | 181 | 55
-
Kiến trúc máy tính P11
12 p | 132 | 50
-
Cấu trúc máy tính và lập trình Assembly : :LẬP TRÌNH XỬ LÝ MẢNG & CHUỔI part 9
5 p | 370 | 43
-
CCNA LAB tiếng việt phần 7
20 p | 142 | 36
-
CHỨNG CHỈ QUẢN TRỊ MẠNG LINUX - BÀI 12
7 p | 123 | 26
-
triển khai cấu hình ISA Server Firewall 2004 phần 7
23 p | 100 | 19
-
Giáo trình Lập trình C/C++ - CĐ Giao thông Vận tải TP.HCM
98 p | 61 | 12
-
12.CÁC CÔNG CỤ
3 p | 105 | 10
-
Giáo trình Visual foxpro6.0 - ĐH Kinh doanh & Công nghệ Hà Nội
146 p | 65 | 8
-
Session 12 - Mảng
10 p | 64 | 8
-
Kỹ thuật điện tử và lập trình C: Phần 2
256 p | 11 | 8
-
Giáo Trình Java phần 12
5 p | 67 | 6
-
Bài giảng Lập trình mạng: Chương 12 - ThS. Trần Bá Nhiệm
33 p | 41 | 5
-
Bài giảng Hệ thống máy tính và ngôn ngữ lập trình - Chương 12: Pointer
83 p | 34 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn