Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 180 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
180
Dung lượng
1,96 MB
Nội dung
TR NG Đ I H C ĐÀ L TƯỜ Ạ Ọ Ạ KHOA CÔNG NGH THÔNG TINỆ BÀI GI NG TÓM T TẢ Ắ L P TRÌNH M NGẬ Ạ Dành cho sinh viên ngành Công Ngh Thông Tin ệ (L u hành n i b )ư ộ ộ Đà L t 2009ạ Khoa Công Ngh Thông Tinệ Giáo trình L p Trìnhậ M ng ạ M C L CỤ Ụ ICH NG I: NH NG KI N TH C C B N V L P TRÌNH M NGƯƠ Ữ Ế Ứ Ơ Ả Ề Ậ Ạ 6 IIT NGỔ QUAN 6 IIIT ng Ethernetầ 6 IV a ch EthernetĐị ỉ 8 VEthernet Protocol Type 9 VIData payload 10 VIIChecksum 10 VIIIT NGẦ IP 10 IXTr ng a chườ đị ỉ 12 X Các c phân o nờ đ ạ 12 XITr ng Type of Service ườ 13 XIITr ng Protocolườ 13 XIIIT NGẦ TCP 14 XIV TCP port 15 XVC ch m b o tin c y truy n t i các gói tin ơ ế đả ả độ ậ ề ả 16 XVIQuá trình thành l p m t phiên làm vi c TCPậ ộ ệ 17 XVIIT NGẦ UDP 19 XVIIICH NG II: L P TRÌNH SOCKET H NG K T N IƯƠ Ậ ƯỚ Ế Ố 22 XIXSOCKET 22 XXIPADDRESS 25 XXIIPENDPOINT 26 XXIIL PẬ TRÌNH SOCKET H NGƯỚ K TẾ N IỐ 26 XXIIIL p trình phía Server ậ 27 XXIVL p trình phía Clientậ 31 XXVV n v i b m d li u ấ đề ớ ộ đệ ữ ệ 34 XXVIX lý v i các b m có kích th c nhử ớ ộ đệ ướ ỏ 34 XXVIIV n v i các thông i p TCPấ đề ớ đ ệ 36 XXVIIIGi i quy t các v n v i thông i p TCPả ế ấ đề ớ đ ệ 41 XXVIII.1.1.1.S d ng các thông i p v i kích th c c nhử ụ đ ệ ớ ướ ố đị 41 XXVIII.1.1.2.G i kèm kích th c thông i p cùng v i thông i p ở ướ đ ệ ớ đ ệ 46 XXVIII.1.1.3.S d ng các h th ng ánh d u phân bi t các thông i p ử ụ ệ ố đ ấ để ệ đ ệ . . . .52 XXIXS d ng C# Stream v i TCP ử ụ ớ 52 XXIX.1.1.1.L p NetworkStreamớ 53 XXIX.1.1.2.L p StreamReader và StreamWriterớ 56 XXXCH NG III: L P TRÌNH SOCKET PHI K T N IƯƠ Ậ Ế Ố 62 XXXIT NGỔ QUAN 62 Trang 2 Khoa Công Ngh Thông Tinệ Giáo trình L p Trìnhậ M ng ạ XXXIIL PẬ TRÌNH PHÍA SERVER 63 XXXIIIL PẬ TRÌNH PHÍA CLIENT 65 XXXI VSử dụng phương t hức Connect ( ) t r ong chương t r ì nh UDP Cl i ent . . . .67 XXXVPhân bi ệt các t hông đi ệp UDP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .68 XXXVINGĂN C NẢ M TẤ DỮ LI UỆ 70 XXXVIINGĂN C NẢ M TẤ GÓI TIN 74 XXXVI I . 1. 1. Sử dụng Soket Ti me- out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .74 XXXVIIIĐI UỀ KHI NỂ VI CỆ TRUY NỀ L IẠ CÁC GÓI TIN 77 XXXIXCH NG IV: S D NG CÁC L P HELPER C A C# SOCKETƯƠ Ử Ụ Ớ Ủ 82 XLL PỚ TCP CLIENT 82 XLIL PỚ TCPLISTENER 85 XLIIL PỚ UDPCLIENT 88 XLIIICH NG V: ĐA NHI M TI U TRÌNHƯƠ Ệ Ể 92 XLIVKHÁI NI MỆ TI NẾ TRÌNH VÀ TI UỂ TRÌNH C AỦ WINDOWS 92 XLVMÔ HÌNH 92 XLVICÁC KỸ THU TẬ TRONG .NET T OẠ TI UỂ TRÌNH 93 XLVI I Tạo t i ểu t r ì nh t rong Thr ead- pool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .93 XLVI I I Tạo t i ểu t r ì nh bất đồng bộ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .96 XLVIII .1.1 .1.Phương thức BlockingExample 99 XLVIII .1.1 .2.Phương thức PollingExample 100 XLVIII .1.1 .3 .Phương thức WaitingExample 101 XLVIII .1.1 .4 .Phương thức WaitAllExample 102 XLVIII .1.1 .5 .Phương thức CallbackExample 104 XLIXThực thi phương thức bằng Timer 105 LThực thi phương thức bằng tiểu tr ình mới 108 LIĐiều khiển quá tr ình thực thi của một tiểu trình 110 LIINhận biết khi nào một tiểu tr ình kết thúc 114 LII I Khởi chạy một tiến trình mới 115 LIVKết thúc một tiến tr ình 117 LVTH CỰ THI PH NGƯƠ TH CỨ B NGẰ CÁCH RA HI UỆ Đ IỐ T NGƯỢ WAITHANDLE 119 LVICH NG VI: Đ NG B HÓAƯƠ Ồ Ộ 120 LVIILÝ DO Đ NGỒ BỘ HÓA 120 LVIIICÁC PH NGƯƠ PHÁP Đ NGỒ BỘ HÓA 120 LIXPH NGƯƠ PHÁP SEMAPHORE 120 LXPH NGƯƠ PHÁP DÙNG L PỚ MONITOR 122 LXISYSTEM.THREADING.WAITHANDLE, BAO G MỒ AUTORESETEVENT, MANUALRESETEVENT 124 LXIIPH NGƯƠ PHÁP MUTEX 127 LXIIICH NG VII: L P TRÌNH SOCKET B T Đ NG BƯƠ Ậ Ấ Ồ Ộ 129 Trang 3 Khoa Công Ngh Thông Tinệ Giáo trình L p Trìnhậ M ng ạ LXIVL PẬ TRÌNH SỰ KI NỆ TRONG WINDOWS 129 LXVSử dụng Event và Del egat e. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .130 LXVI Lớp AsyncCal l back t r ong l ập t r ì nh Wi ndows. . . . . . . . . . . . . . . . . . . . . . .132 LXVIISỬ D NGỤ SOCKET B TẤ Đ NGỒ BỘ 132 LXVI I I Thành l ập kết nối . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .133 LXVIII .1.1 .1 .Phương thức BeginAccept() và EndAccept() 133 LXVIII .1.1 .2 . Phương thức BeginConnect() và EndConnect() 135 LXIXGởi dữ liệu 136 LXIX.1.1.1.Phương thức BeginSend() và phương thức EndSend() 136 LXIX.1.1.2.Phương thức BeginSendTo() và EndSendTo() 137 LXXNhận dữ liệu 138 LXX.1.1.1.Phương thức BeginReceive(), EndReceive, BeginReceiveFrom(), EndReceiveFrom() 138 LXXIChương tr ình WinForm gởi và nhận dữ l iệu giữa Client và Server . 138 LXXI.1.1.1.Chương tr ình Server 138 LXXI.1.1.2.Mô hình chương trình Server 139 LXXI.1.1.3.Lớp ServerProgram 139 LXXI.1.1.4.Lớp ServerForm 143 LXXIIChương tr ình Client 144 LXXII.1.1.1.Mô hình chương trình Client 144 LXXII.1.1.2.Lớp ClientProgram 145 LXXII.1.1.3.Lớp ClientForm 148 LXXIIIL PẬ TRÌNH SOCKET B TẤ Đ NGỒ BỘ SỬ D NGỤ TI UỂ TRÌNH 149 LXXIVLập trình sử dụng hàng đợi gởi và hàng đợi nhận thông điệp 149 LXXVLập tr ình ứng dụng nhiều Client 155 LXXVICH NG VIII: L P TRÌNH V I CÁC GIAO TH CƯƠ Ậ Ớ Ứ 158 LXXVIIL P TRÌNH V I GIAO TH C ICMPẬ Ớ Ứ 158 LXXVII IGiao thức ICMP 158 LXXVII I .1.1 .1 .Định dạng của gói tin ICMP 158 LXXVII I .1.1 .2 .Các tường Type của gói tin ICMP 159 LXXVII I .1.1 .3 .Echo Request and Echo Reply Packets 159 LXXVII I .1.1 .4 .Gói tin Destinat ion Unreachable 160 LXXVII I .1.1 .5 .Gói tin Time Exceeded 161 LXXIXSử dụng Raw Socket 161 LXXIX.1.1.1.Định dạng của Raw Socket 161 LXXIX.1.1.2.Gởi các gói tin Raw 162 LXXIX.1.1.3.Nhận các gói tin Raw 162 LXXXTạo ra một lớp ICMP 163 LXXXITạo gói tin ICMP 164 LXXXIITạo phương thức Checksum 164 LXXXII ILớp ICMP hoàn chỉnh 165 LXXXIVChương trình ping đơn giản 167 LXXXVChương tr ình TraceRoute đơn giản 169 LXXXVIL P TRÌNH V I GIAO TH C SMTPẬ Ớ Ứ 171 LXXXVIICơ bản về Email 171 LXXXVII.1.1.1.Hoạt động của MTA 171 LXXXVII.1.1.2.Gởi mail ra ngoài 172 LXXXVII.1.1.3.Nhận mail 172 Trang 4 Khoa Công Ngh Thông Tinệ Giáo trình L p Trìnhậ M ng ạ LXXXVII.1.1.4.Hoạt động của MDA 173 LXXXVII.1.1.5.Hoạt động của MUA 174 LXXXVI I I SMTP và Wi ndows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .176 LXXXVIII.1.1.1.Collaboration Data Objects (CDO) 176 LXXXVIII.1.1.2.Dịch vụ mail SMTP 177 LXXXIXLớp SmtpMail 178 XCCác phương thức và thuộc tính của lớp SmtpMail 178 XC.1.1.1.Sử dụng lớp SmtpMail 180 Trang 5 Khoa Công Ngh Thông Tinệ Giáo trình L p Trìnhậ M ng ạ ICH NG I: NH NG KI N TH C ƯƠ Ữ Ế Ứ CƠ B N VẢ Ề L P TRÌNH M NGẬ Ạ IIT ng quanổ Internet Protocol (IP) là n n t ng c a l p trình m ng. IP là ph ng ti n truy nề ả ủ ậ ạ ươ ệ ề t i d li u gi a các h th ng b t k đó là h th ng m ng c c b (LAN) hay hả ữ ệ ữ ệ ố ấ ể ệ ố ạ ụ ộ ệ th ng m ng di n r ng (WAN). M c dù l p trình viên m ng có th ch n các giaoố ạ ệ ộ ặ ậ ạ ể ọ th c khác đ l p trình nh ng IP cung c p các k thu t m nh nh t đ g i d li uứ ể ậ ư ấ ỹ ậ ạ ấ ể ở ữ ệ gi a các thi t b , đ c bi t là thông qua m ng Internet.ữ ế ị ặ ệ ạ Đ hi u rõ các khái ni m bên d i l p trình m ng, chúng ta ph i hi u rõ giaoể ể ệ ướ ậ ạ ả ể th c IP, hi u cách nó chuy n d li u gi a các thi t b m ng. L p trình m ng dùngứ ể ể ữ ệ ữ ế ị ạ ậ ạ giao th c IP th ng r t ph c t p. Có nhi u y u t c n quan tâm liên quan đ n cáchứ ườ ấ ứ ạ ề ế ố ầ ế d li u đ c g i qua m ng: s l ng Client và Server, ki u m ng, t c ngh n m ng,ữ ệ ượ ở ạ ố ượ ể ạ ắ ẽ ạ l i m ng,… B i vì các y u t này nh h ng đ n vi c truy n d li u t thi t b nàyỗ ạ ở ế ố ả ưở ế ệ ề ữ ệ ừ ế ị đ n thi t b khác trên m ng do đó vi c hi u rõ chúng là v n đ r t quan tr ng đ l pế ế ị ạ ệ ể ấ ề ấ ọ ể ậ trình m ng đ c thành công.ạ ượ M t gói d li u m ng g m nhi u t ng thông tin. M i t ng thông tin ch a m tộ ữ ệ ạ ồ ề ầ ỗ ầ ứ ộ dãy các byte đ c s p đ t theo m t tr t t đã đ c đ nh s n. H u h t các gói dượ ắ ặ ộ ậ ự ượ ị ẵ ầ ế ữ li u dùng trong l p trình m ng đ u ch a ba t ng thông tin cùng v i d li u đ cệ ậ ạ ề ứ ầ ớ ữ ệ ượ dùng đ truy n t i gi a các thi t b m ng. Hình sau mô t h th ng th b c c a m tể ề ả ữ ế ị ạ ả ệ ố ứ ậ ủ ộ gói IP: Hình I.1: Các t ng giao th c m ng trong các gói d li uầ ứ ạ ữ ệ IIIT ng Ethernetầ T ng đ u tiên c a gói d li u m ng đ c g i là Ethernet Header, trong t ngầ ầ ủ ữ ệ ạ ượ ọ ầ này có ba gói giao th c Ethernet: Ethernet 802.2, Ethernet 802.3, và Ethernet phiên b nứ ả 2. Các giao th c Ethernet 802.2 và Ethernet 802.3 là các giao th c chu n c a IEEE.ứ ứ ẩ ủ Trang 6 Khoa Công Ngh Thông Tinệ Giáo trình L p Trìnhậ M ng ạ Ethernet phiên b n 2 tuy không ph i là giao th c chu n nh ng nó đ c s d ng r ngả ả ứ ẩ ư ượ ử ụ ộ rãi trong m ng Ethernet. H u h t các thi t b m ng k c h đi u hành Windowsạ ầ ế ế ị ạ ể ả ệ ề m c đ nh dùng giao th c Ethernet phiên b n 2 đ truy n t i các gói IP.ặ ị ứ ả ể ề ả Hình I.2: Ethernet Header Ph n đ u c a Ethernet phiên b n 2 là đ a ch MAC (Media Access Card) dùngầ ầ ủ ả ị ỉ đ xác đ nh các thi t b trên m ng cùng v i s giao th c Ethernet xác đ nh giao th cể ị ế ị ạ ớ ố ứ ị ứ t ng ti p theo ch a trong gói Ethernet. M i gói Ethernet bao g m:ầ ế ứ ỗ ồ Trang 7 Khoa Công Ngh Thông Tinệ Giáo trình L p Trìnhậ M ng ạ • 6 byte đ a ch MAC đíchị ỉ • 6 byte đ a ch MAC ngu nị ỉ ồ • 2 byte xác đ nh giao th c t ng k ti pị ứ ầ ế ế • Data payload t 46 đ n 1500 byteừ ế • 4-byte checksum IVĐ a ch Ethernetị ỉ Đ a ch Ethernet (đ a ch MAC) là đ a ch c a các thi t b , đ a ch này đ c gánị ỉ ị ỉ ị ỉ ủ ế ị ị ỉ ượ b i các nhà s n xu t thi t b m ng và nó không thay đ i đ c. M i thi t b trênở ả ấ ế ị ạ ổ ượ ỗ ế ị m ng Ethernet ph i có 1 đ a ch MAC duy nh t. Đ a ch MAC g m 2 ph n:ạ ả ị ỉ ấ ị ỉ ồ ầ • 3 byte xác đ nh nhà s n xu tị ả ấ • 3 byte xác đ nh s serial duy nh t c a nhà s n xu tị ố ấ ủ ả ấ Gi n đ đ a ch Ethernet cho phép các đ a ch broadcast và multicast. Đ i v iả ồ ị ỉ ị ỉ ố ớ đ a ch broadcast thì t t c các bit c a đ a ch đích đ c gán b ng 1ị ỉ ấ ả ủ ị ỉ ượ ằ (FFFFFFFFFFFF). M i thi t b m ng s ch p nh n các gói có đ a ch broadcast. Đ aỗ ế ị ạ ẽ ấ ậ ị ỉ ị ch này h u ích cho các giao th c ph i g i các gói truy v n đ n t t c các thi t bỉ ữ ứ ả ở ấ ế ấ ả ế ị m ng. Đ a ch multicast cũng là m t lo i đ a ch đ c bi t c a đ a ch Ethernet, các đ aạ ị ỉ ộ ạ ị ỉ ặ ệ ủ ị ỉ ị ch multicast ch cho phép m t s các thi t b ch p nh n gói tin. M t s đ a chỉ ỉ ộ ố ế ị ấ ậ ộ ố ị ỉ Ethernet multicast: Đ a Chị ỉ Mô Tả 01-80-C2-00-00-00 Spanning tree (for bridges) 09-00-09-00-00-01 HP Probe 09-00-09-00-00-01 HP Probe 09-00-09-00-00-04 HP DTC 09-00-2B-00-00-00 DEC MUMPS 09-00-2B-00-00-01 DEC DSM/DTP 09-00-2B-00-00-02 DEC VAXELN 09-00-2B-00-00-03 DEC Lanbridge Traffic Monitor (LTM) 09-00-2B-00-00-04 DEC MAP End System Hello 09-00-2B-00-00-05 DEC MAP Intermediate System Hello 09-00-2B-00-00-06 DEC CSMA/CD Encryption 09-00-2B-00-00-07 DEC NetBios Emulator Trang 8 Khoa Công Ngh Thông Tinệ Giáo trình L p Trìnhậ M ng ạ Đ a Chị ỉ Mô Tả 09-00-2B-00-00-0F DEC Local Area Transport (LAT) 09-00-2B-00-00-1x DEC Experimental 09-00-2B-01-00-00 DEC LanBridge Copy packets (all bridges) 09-00-2B-02-00-00 DEC DNA Lev. 2 Routing Layer Routers 09-00-2B-02-01-00 DEC DNA Naming Service Advertisement 09-00-2B-02-01-01 DEC DNA Naming Service Solicitation 09-00-2B-02-01-02 DEC DNA Time Service 09-00-2B-03-xx-xx DEC default filtering by bridges 09-00-2B-04-00-00 DEC Local Area System Transport (LAST) 09-00-2B-23-00-00 DEC Argonaut Console 09-00-4E-00-00-02 Novell IPX 09-00-77-00-00-01 Retix spanning tree bridges 09-00-7C-02-00-05 Vitalink diagnostics 09-00-7C-05-00-01 Vitalink gateway 0D-1E-15-BA-DD-06 HP CF-00-00-00-00-00 Ethernet Configuration Test protocol (Loopback) VEthernet Protocol Type M t ph n khác r t quan tr ng c a Ethernet Header là tr ng Protocol Type,ộ ầ ấ ọ ủ ườ tr ng này có kích th c hai byte. S khác nhau gi a gói tin Ethernet phiên b n 2 vàườ ướ ự ữ ả Ethernet 802.2 và 802.3 x y ra tr ng này. Các gói tin Ethernet 802.2 và 802.3 sả ở ườ ử d ng tr ng này đ cho bi t kích th c c a m t gói tin Ethernet. Ethernet phiên b nụ ườ ể ế ướ ủ ộ ả 2 dùng tr ng này đ đ nh nghĩa giao th c t ng k ti p trong gói tin Ethernet. M t sườ ể ị ứ ầ ế ế ộ ố giá tr c a tr ng này:ị ủ ườ Giá Trị Giao Th cứ 0800 IP 0806 ARP 0BAD Banyan VINES 8005 HP Probe 8035 Reverse ARP 809B AppleTalk 80D5 IBM SNA 8137 Novell Trang 9 Khoa Công Ngh Thông Tinệ Giáo trình L p Trìnhậ M ng ạ Giá Trị Giao Th cứ 8138 Novell 814C Raw SNMP 86DD IPv6 876B TCP/IP compression VIData payload Data payload ph i ch a t i thi u 46 byte đ đ m b o gói Ethernet có chi u dàiả ứ ố ể ể ả ả ề t i thi u 64 byte. N u ph n data ch a đ 46 byte thì các ký t đ m đ c thêm vàoố ể ế ầ ư ủ ự ệ ượ cho đ . Kích th c c a tr ng này t 46 đ n 1500 byte.ủ ướ ủ ườ ừ ế VIIChecksum Giá tr checksum cung c p c ch ki m tra l i cho d li u, kích th c c aị ấ ơ ế ể ỗ ữ ệ ướ ủ tr ng này là 4 byte . N u gói tin b h ng trong lúc truy n, giá tr checksum s b tínhườ ế ị ỏ ề ị ẽ ị toán sai và gói tin đó đ c đánh d u là gói tin x u.ượ ấ ấ VIIIT ng IPầ T ng IP đ nh nghĩa thêm nhi u tr ng thông tin c a c a giao th c Ethernetẩ ị ề ườ ủ ủ ứ Trang 10 [...]... Tin Mạng Port 138 161 Giáo trình Lập Trình Mô Tả NetBIOS datagram Simple Network Management Protocol Trang 21 Khoa Công Nghệ Thông Tin Mạng Giáo trình Lập Trình CHƯƠNG II: LẬP TRÌNH SOCKET XVIII HƯỚNG KẾT NỐI XIXSocket Trong lập trình mạng dùng Socket, chúng ta không trực tiếp truy cập vào các thiết bị mạng để gởi và nhận dữ liệu Thay vì vậy, một file mô tả trung gian được tạo ra để điều khiển việc lập. .. server.Close(); } } Để kiểm tra thử chương trình ta có thể dùng chương trình Telnet của Windows để kiểm tra Dùng lệnh telnet 127.0.0.1 5000 Trang 30 Khoa Công Nghệ Thông Tin Mạng Giáo trình Lập Trình Hình II.2: Kết quả trả về sau khi telnet vào Server local tại port 5000 Sau khi dùng lệnh telnet, kết quả trả về như trên hình là đã kết nối thành công XXIVLập trình phía Client Lập trình Socket hướng kết nối phía... 17 User Datagram (UDP) 88 Cisco EIGRP Hai giao thức được dùng nhiều nhất trong lập trình mạng là TCP và UDP Trang 13 Khoa Công Nghệ Thông Tin Mạng Giáo trình Lập Trình XIIITầng TCP Giao thức TCP (Transmission Control Protocol) là giao thức hướng kết nối, nó cho phép tạo ra kết nối điểm tới điểm giữa hai thiết bị mạng, thiết lập một đường nhất quán để truyền tải dữ liệu TCP đảm bảo dữ liệu sẽ được chuyển... tưởng Để lập trình Socket hướng kết nối ta phải thực hiện một loạt các thao tác giữa clien và Server như trong mô hình bên dưới Trang 26 Khoa Công Nghệ Thông Tin Mạng Giáo trình Lập Trình Hình II.1: Mô hình lập trình Socket hướng kết nối XXIIILập trình phía Server Đầu tiên Server sẽ tạo một Socket, Socket này sẽ được gắn vào một địa chỉ ip và một port cục bộ, hàm để thực hiện việc này là hàm Bind() Hàm... trên hệ thống là MinPort và MaxPort XXIILập trình Socket hướng kết nối Trong lập trình Socket hướng kết nối, giao thức TCP được dùng để thành lập phiên làm việc giữa hai endpoint Khi sử dụng giao thức TCP để thành lập kết nối ta phải đàm phán kết nối trước nhưng khi kết nối đã được thành lập dữ liệu có thể truyền đi giữa các thiết bị một cách tin tưởng Để lập trình Socket hướng kết nối ta phải thực... tin Cho biết dữ liệu được đẩy vào ứng dụng ngay lập tức Thiết lập lại tình trạng khởi đầu kết nối TCP Bắt đầu một phiên làm việc Kết thúc một phiên làm việc Trang 17 Khoa Công Nghệ Thông Tin Mạng Giáo trình Lập Trình TCP sử dụng các tình trạng kết nối để quyết định tình trạng kết nối giữa các thiết bị Một giao thức bắt tay đặc biệt được dùng để thành lập những kết nối này và theo dõi tình trạng kết... thành lập, cờ ACK sẽ được thiết lập trong các gói tin Để đóng phiên làm việc, một quá trình bắt tay khác được thực hiện dùng cờ FIN: • Thiết bị khởi đầu đóng kết nối gởi cờ FIN • Thiết bị bên kia gởi cờ FIN và ACK trong cùng một gói tin cho biết nó chấp nhận đóng kết nối • Thiết bị khởi đầu đóng kết nối gởi cờ ACK để đóng kết nối Trang 18 Khoa Công Nghệ Thông Tin Mạng Hình I.6: Giáo trình Lập Trình. .. port 8000 và một ứng dụng được gán port 9000 Thiết bị mạng B muốn kết nối đến thiết bị mạng A thì nó phải được gán một TCP port còn trống từ hệ điều hành và port này sẽ được mở trong suốt phiên làm việc Các port ở Client thường không quan trọng và có thể gán bất kỳ một port nào hợp lệ trên thiết bị Trang 15 Khoa Công Nghệ Thông Tin Mạng Giáo trình Lập Trình Tổ hợp của một địa chỉ IP và một port là một... (HTTPS) Secure IMAP Secure POP3 Các port từ 0->1023 được gán cho các ứng dụng thông dụng do đó với các ứng dụng mà các lập trình viên tạo ra thì các port được gán phải từ 1024->65535 XVCơ chế đảm bảo độ tin cậy truyền tải các gói tin Trang 16 Khoa Công Nghệ Thông Tin Mạng Giáo trình Lập Trình Trường tiếp theo trong TCP Header sau port là số sequence và acknowledgement Những giá trị này cho phép TCP theo... được phép ở lại trên mạng (được tính bằng giây) Kiểu giao thức của tầng dữ liệu kế tiếp Checksum của dữ liệu gói IP header Địa chỉ IP của thiết bị gởi Địa chỉ IP của thiết bị nhận Trang 11 Khoa Công Nghệ Thông Tin Mạng Trường Options Bit Giáo trình Lập Trình Mô Tả Định nghĩa các đặc điểm của gói IP trong tươnglai IXTrường địa chỉ Địa chỉ Ethernet dùng để xác định các thiết bị trên mạng LAN nhưng nó không