Trong hoạt động của xã hội loài người, thông tin là một vấn đề không thể thiếu trong cuộc sống, ngày nay thông tin càng trở thành một tài nguyên vô giá. Xã hội phát triển ngày càng cao nhu cầu trao đổi thông tin giữa các thành phần trong xã hội ngày càng lớn. Mạng máy tính ra đời mang lại cho con ngời nhiều lợi ích trong việc trao đổi thông tin và xử lý thông tin một cách chính xác và nhanh chóng.
Với sự phát triển mạnh mẽ của mạnh máy tính đặc biệt là sự ra đời của mạng toàn cầu Internet đã giúp cho con ngời khắp trên thế giới có thể liên lạc trao đổi những thông tin chính xác cho nhau một cách dễ dàng trong một thời gian ngắn nhất.
Trong môi trường mạng, một lượng tin hay một khối dữ liệu khi được gửi đi từ người gửi đến người nhận thường phải qua nhiều nút, nhiều trạm với nhiều người sử dụng khác nhau, không ai dám bảo rằng thông tin đến ngời nhận không bị sao chép, không bị đánh cắp hay không bị xuyên tạc. Bạn cũng có thể nghe nhiều về máy tính và những mối đe doạ từ Internet đối với sự riêng tư của bạn. Và ở đâu lại chẳng nghe những chuyện về mạo nhận danh tiếng, hoặc những ông chủ muốn thọc vào mọi thông tin của nhân viện, hay những kẻ đánh cắp mật khẩu, những kẻ săn tin chuyên nghiệp, hay những kẻ quấy nhiễu,. Chúng sẽ không bao giờ buông tha bạn, việc tao đổi dứ liệu qua mạng Internet có thể gây nguy hiểm đến sự riêng tư của bạn, cứ như thể người ta đang theo dõi từng động tác nhấn chuột của bạn hay từng thông tin nhỏ nhất mà bạn có.
Mặt khắc với sự phát triển mạnh mẽ của công nghệ thông tin và đặc biệt là mạng Internet việc mọi người tham gia vào các cuộc hội thảo, hay tham gia vào các thí nghiệm trực tuyến ở các phong thí nghiệm khác nhau được đặt tại các vị trí khác nhau.
49 trang |
Chia sẻ: luyenbuizn | Lượt xem: 1134 | Lượt tải: 0
Bạn đang xem trước 20 trang nội dung tài liệu Thử nghiệm phát tán dữ liệu qua mạng tcp/ip sử dụng datasocket, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Môc lôc
Ch¬ng1: Hä giao thøc TCP/IP
Hä giao thøc TCP/IP 5
Líp truy nh©p m¹ng 7
Líp liªn m¹ng 7
1.3.1. Chøc n¨ng chÝnh cña - Giao thøc liªn m¹ng IP(v4) 8
1.3.2. §Þnh tuyÕn IP 8
1.4. Giao thøc ICMP 11
1.5. Giao thøc ARP vµ giao thøc RARP 12
1.5.1. Giao thøc ARP 13
1.5.2. Giao thøc RARP 14
1.6. Giao thøc líp chuyÓn t¶i (Transport Layer) 14
1.6.1. Giao thøc TCP ? 14
1.6.2. ThiÕt lËp kÕt nèi 16
1.6.3. KÕt thóc kÕt nèi 17
Ch¬ng 2: C«ng nghÖ DataSocket
2.1. Giíi thiÖu vÒ c«ng nghÖ DataSocket. 18
2.2. DataSocket lµ g× ? 18
C¸c ®Æc trng cña DataSocket ……………………………………………. 19
M« h×nh ph¸t t¸n d÷ liÖu dïng DataSocket……………………………….. 20
C¸c thµnh phÇn cña c«ng nghÖ DataSocket. 20
2.3.1. DataSocket API. 21
2.3.2. DataSocket Server. 21
2.4. Giao thøc DSTP 24
2.4.1. C¸c ®Æc ®iÓm cña giao thøc DSTP. 24
2.4.2. C¸ch sö dông. 25
Ch¬ng 3: Thö nghiÖm ph¸t t¸n d÷ liÖu qua m¹ng TCP/IP
sö dông DataSocket
M« h×nh hÖ thö nghiÖm 27
3.1.1. M« t¶ phÇn cøng 27
M« t¶ phÇn mÒm 29
3.2. KÕt qu¶ vµ thö nghiÖm 36
3.2.1. Cµi ®Æt hÖ thèng 37
3.2.2. KÕt qu¶ 38
Ch¬ng 4: Mét sè kÕt luËn ®èi víi viÖc khai th¸c c«ng nghÖ DataSocket
(39)
Lêi nãi ®Çu
Trong ho¹t ®éng cña x· héi loµi ngêi, th«ng tin lµ mét vÊn ®Ò kh«ng thÓ thiÕu trong cuéc sèng, ngµy nay th«ng tin cµng trë thµnh mét tµi nguyªn v« gi¸. X· héi ph¸t triÓn ngµy cµng cao nhu cÇu trao ®æi th«ng tin gi÷a c¸c thµnh phÇn trong x· héi ngµy cµng lín. M¹ng m¸y tÝnh ra ®êi mang l¹i cho con ngêi nhiÒu lîi Ých trong viÖc trao ®æi th«ng tin vµ xö lý th«ng tin mét c¸ch chÝnh x¸c vµ nhanh chãng.
Víi sù ph¸t triÓn m¹nh mÏ cña m¹nh m¸y tÝnh ®Æc biÖt lµ sù ra ®êi cña m¹ng toµn cÇu Internet ®· gióp cho con ngêi kh¾p trªn thÕ giíi cã thÓ liªn l¹c trao ®æi nh÷ng th«ng tin chÝnh x¸c cho nhau mét c¸ch dÔ dµng trong mét thêi gian ng¾n nhÊt.
Trong m«i trêng m¹ng, mét lîng tin hay mét khèi d÷ liÖu khi ®îc göi ®i tõ ngêi göi ®Õn ngêi nhËn thêng ph¶i qua nhiÒu nót, nhiÒu tr¹m víi nhiÒu ngêi sö dông kh¸c nhau, kh«ng ai d¸m b¶o r»ng th«ng tin ®Õn ngêi nhËn kh«ng bÞ sao chÐp, kh«ng bÞ ®¸nh c¾p hay kh«ng bÞ xuyªn t¹c.... B¹n còng cã thÓ nghe nhiÒu vÒ m¸y tÝnh vµ nh÷ng mèi ®e do¹ tõ Internet ®èi víi sù riªng t cña b¹n. Vµ ë ®©u l¹i ch¼ng nghe nh÷ng chuyÖn vÒ m¹o nhËn danh tiÕng, hoÆc nh÷ng «ng chñ muèn thäc vµo mäi th«ng tin cña nh©n viÖn, hay nh÷ng kÎ ®¸nh c¾p mËt khÈu, nh÷ng kÎ s¨n tin chuyªn nghiÖp, hay nh÷ng kÎ quÊy nhiÔu,.... Chóng sÏ kh«ng bao giê bu«ng tha b¹n, viÖc tao ®æi dø liÖu qua m¹ng Internet cã thÓ g©y nguy hiÓm ®Õn sù riªng t cña b¹n, cø nh thÓ ngêi ta ®ang theo dâi tõng ®éng t¸c nhÊn chuét cña b¹n hay tõng th«ng tin nhá nhÊt mµ b¹n cã.
MÆt kh¾c víi sù ph¸t triÓn m¹nh mÏ cña c«ng nghÖ th«ng tin vµ ®Æc biÖt lµ m¹ng Internet viÖc mäi ngêi tham gia vµo c¸c cuéc héi th¶o, hay tham gia vµo c¸c thÝ nghiÖm trùc tuyÕn ë c¸c phong thÝ nghiÖm kh¸c nhau ®îc ®Æt t¹i c¸c vÞ trÝ kh¸c nhau.
Trong ®å ¸n nµy chóng t«i ®Æt ra vÊn ®Ò sö dông c«ng nghÖ DataSocket cña h·ng National Instruments, lµ mét c«ng nghÖ cho phÐp dÔ dµng thùc hiÖn kÕt nèi vµ truyÒn d÷ liÖu tèc ®é cao qua m¹ng Internet(TCP/IP). C«ng nghÖ DataSocket , cho phÐp ph¸t triÓn c¸c phÇn mÒm hoµn chØnh ®Ó øng dông trong d¹y häc, øng dông trong liªn kÕt c¸c trung t©m thÝ nghiÖm, c¸c phßng thÝ nghiÖm nãi riªng vµ cho c¸c øng dông truyÒn d÷ liÖu qua m¹ng Internet víi tèc ®é cao nãi chung, nh»m t¨ng cêng hîp t¸c nghiªn cøu khoa häc, chia sÎ d÷ liÖu, chia sÎ thiÕt bÞ thÝ nghiÖm, më c¸c dÞch vô tiÕn hµnh cho thuª thiÕt bÞ thÝ nghiÖm tõ xa vµ kh¶ n¨ng tiÕn hµnh thÝ nghiªm tõ xa. Trªn c¬ së ®ã gi¶m ®îc chi phÝ thiÕt bÞ, n©ng cao hiÖu suÊt sö dông thiÕt bÞ. NhÊt lµ ë ®iÒu kiÖn ViÖt nam chóng ta, kinh phÝ ®Çu t thiÕt bÞ khoa häc cho nghiªn cøu khoa häc, cho c¸c trêng §¹i häc , c¸c trung t©m d¹y nghÒ cßn h¹n chÕ mµ c¸c trung t©m ®ã l¹i c¸ch xa nhau vÒ ®Þa lý.
Kh«ng nh÷ng vËy, c«ng nghÖ DataSocket cßn cho phÐp ph¸t triÓn c¸c hÖ thèng ®o lêng vµ ®iÒu khiÓn tõ xa trong c«ng nghiÖp qua m¹ng víi giao thøc TCP/IP mét c¸ch dÔ dµng, thuËn tiÖn víi mét sù ®a d¹ng c¸c kiÓu d÷ liÖu, kÓ c¶ d¹ng d÷ liÖu ¶nh vµ ©m thanh. §iÒu nµy cho phÐp nhiÒu ngêi, nhiÒu lÜnh vùc kh«ng chuyªn nghiÖp tin häc vÉn cã thÓ dÏ dµng ph¸t triÓn ®îc øng dông cña riªng m×nh qua m¹ng.
Trong ®Ò tµi chóng t«i nghiªn cøu tiep can thu nghiem congnghe DataSocket de truy du lieu tocdocao qua m¹ng Internet, tren co so do ung dung vao trong cac bai toan thuc te.
Ch¬ng 1:
Hä giao thøc TCP/IP
1.1. Hä giao thøc TCP/IP
TCP/IP lµ mét hä giao thøc ®Ó cung cÊp ph¬ng tiÖn truyÒn th«ng liªn m¹ng vµ nã ®îc cÊu tróc theo kiÓu ph©n cÊp.
Kh¸c víi m« h×nh OSI/ISO tÇng liªn m¹ng sö dông giao thøc kÕt nèi m¹ng "kh«ng liªn kÕt" (connectionless) IP, t¹o thµnh h¹t nh©n ho¹t ®éng cña Internet. Cïng víi c¸c thuËt to¸n ®Þnh tuyÕn RIP, OSPF, BGP, tÇng liªn m¹ng IP cho phÐp kÕt nèi mét c¸ch mÒm dÎo vµ linh ho¹t c¸c lo¹i m¹ng "vËt lý" kh¸c nhau nh: Ethernet, Token Ring , X.25...
Giao thøc trao ®æi d÷ liÖu "cã liªn kÕt" (connection - oriented) TCP ®îc sö dông ë tÇng vËn chuyÓn ®Ó ®¶m b¶o tÝnh chÝnh x¸c vµ tin cËy viÖc trao ®æi d÷ liÖu dùa trªn kiÕn tróc kÕt nèi "kh«ng liªn kÕt" ë tÇng liªn m¹ng IP.
OSI
Application
Presentation
Session
Transprort
Network
Data link
Physical
Application
SMTP
FTP
TELNET
DNS
TCP
UDP
IP
ICMP
ARP
IGMP
RARP
Protocols defined by the underlying networks
TCP/IP
H×nh 1. M« h×nh tham chiÕu TCP/IP víi chuÈn OSI 7 líp
C¸c giao thøc hç trî øng dông phæ biÕn nh truy nhËp tõ xa (telnet), chuyÓn tÖp (FTP), dÞch vô World Wide Web (HTTP), th ®iÖn tö (SMTP), dÞch vô tªn miÒn (DNS) ngµy cµng ®îc cµi ®Æt phæ biÕn nh nh÷ng bé phËn cÊu thµnh cña c¸c hÖ ®iÒu hµnh th«ng dông nh UNIX (vµ c¸c hÖ ®iÒu hµnh chuyªn dông cïng hä cña c¸c nhµ cung cÊp thiÕt bÞ tÝnh to¸n nh AIX cña IBM, SINIX cña Siemens, Digital UNIX cña DEC), Windows9x/NT, Novell Netware,...
Trong cÊu tróc bèn líp cña TCP/IP, khi d÷ liÖu truyÒn tõ líp øng dông cho ®Õn líp vËt lý, mçi líp ®Òu céng thªm vµo phÇn ®iÒu khiÓn cña m×nh ®Ó ®¶m b¶o cho viÖc truyÒn d÷ liÖu ®îc chÝnh x¸c. Mçi th«ng tin ®iÒu khiÓn nµy ®îc gäi lµ mét header vµ ®îc ®Æt ë tríc phÇn d÷ liÖu ®îc truyÒn. Mçi líp xem tÊt c¶ c¸c th«ng tin mµ nã nhËn ®îc tõ líp trªn lµ d÷ liÖu, vµ ®Æt phÇn th«ng tin ®iÒu khiÓn header cña nã vµo tríc phÇn th«ng tin nµy. ViÖc céng thªm vµo c¸c header ë mçi líp trong qu¸ tr×nh truyÒn tin ®îc gäi lµ encapsulation. Qu¸ tr×nh nhËn d÷ liÖu diÔn ra theo chiÒu ngîc l¹i: mçi líp sÏ t¸ch ra phÇn header tríc khi truyÒn d÷ liÖu lªn líp trªn.
Mçi líp cã mét cÊu tróc d÷ liÖu riªng, ®éc lËp víi cÊu tróc d÷ liÖu ®îc dïng ë líp trªn hay líp díi cña nã. Sau ®©y lµ gi¶i thÝch mét sè kh¸i niÖm thêng gÆp.
Stream lµ dßng sè liÖu ®îc truyÒn trªn c¬ së ®¬n vÞ sè liÖu lµ Byte.
Sè liÖu ®îc trao ®æi gi÷a c¸c øng dông dïng TCP ®îc gäi lµ stream, trong khi dïng UDP, chóng ®îc gäi lµ message.
Mçi gãi sè liÖu TCP ®îc gäi lµ segment cßn UDP ®Þnh nghÜa cÊu tróc d÷ liÖu cña nã lµ packet.
Líp Internet xem tÊt c¶ c¸c d÷ liÖu nh lµ c¸c khèi vµ gäi lµ datagram. Bé giao thøc TCP/IP cã thÓ dïng nhiÒu kiÓu kh¸c nhau cña líp m¹ng díi cïng, mçi lo¹i cã thÓ cã mét thuËt ng÷ kh¸c nhau ®Ó truyÒn d÷ liÖu.
PhÇn lín c¸c m¹ng kÕt cÊu phÇn d÷ liÖu truyÒn ®i díi d¹ng c¸c packets hay lµ c¸c frames.
Application
Stream
Transport
Segment/datagram
Internet
Datagram
Network Access
Frame
CÊu tróc d÷ liÖu t¹i c¸c líp cña TCP/IP
1.2. Líp truy nhËp m¹ng
Network Access Layer lµ líp thÊp nhÊt trong cÊu tróc ph©n bËc cña TCP/IP. Nh÷ng giao thøc ë líp nµy cung cÊp cho hÖ thèng ph¬ng thøc ®Ó truyÒn d÷ liÖu trªn c¸c tÇng vËt lý kh¸c nhau cña m¹ng. Nã ®Þnh nghÜa c¸ch thøc truyÒn c¸c khèi d÷ liÖu (datagram) IP. C¸c giao thøc ë líp nµy ph¶i biÕt chi tiÕt c¸c phÇn cÊu tróc vËt lý m¹ng ë díi nã (bao gåm cÊu tróc gãi sè liÖu, cÊu tróc ®Þa chØ...) ®Ó ®Þnh d¹ng ®îc chÝnh x¸c c¸c gãi d÷ liÖu sÏ ®îc truyÒn trong tõng lo¹i m¹ng cô thÓ.
So s¸nh víi cÊu tróc OSI/OSI, líp nµy cña TCP/IP t¬ng ®¬ng víi hai líp Datalink, vµ Physical.
Chøc n¨ng ®Þnh d¹ng d÷ liÖu sÏ ®îc truyÒn ë líp nµy bao gåm viÖc nhóng c¸c gãi d÷ liÖu IP vµo c¸c frame sÏ ®îc truyÒn trªn m¹ng vµ viÖc ¸nh x¹ c¸c ®Þa chØ IP vµo ®Þa chØ vËt lý ®îc dïng cho m¹ng.
1.3. Líp liªn m¹ng
Internet Layer lµ líp ë ngay trªn líp Network Access trong cÊu tróc ph©n líp cña TCP/IP. Internet Protocol lµ giao thøc trung t©m cña TCP/IP vµ lµ phÇn quan träng nhÊt cña líp Internet. IP cung cÊp c¸c gãi lu chuyÓn c¬ b¶n mµ th«ng qua ®ã c¸c m¹ng dïng TCP/IP ®îc x©y dùng.
1.3.1. Chøc n¨ng chÝnh cña - Giao thøc liªn m¹ng IP(v4)
Trong phÇn nµy tr×nh bµy vÒ giao thøc IPv4 (®Ó cho thuËn tiÖn ta viÕt IP cã nghÜa lµ ®Ò cËp ®Õn IPv4).
Môc ®Ých chÝnh cña IP lµ cung cÊp kh¶ n¨ng kÕt nèi c¸c m¹ng con thµnh liªn m¹ng ®Ó truyÒn d÷ liÖu. IP cung cÊp c¸c chøc n¨ng chÝnh sau:
§Þnh nghÜa cÊu tróc c¸c gãi d÷ liÖu lµ ®¬n vÞ c¬ së cho viÖc truyÒn d÷ liÖu trªn Internet.
§Þnh nghÜa ph¬ng thøc ®¸nh ®Þa chØ IP.
TruyÒn d÷ liÖu gi÷a tÇng vËn chuyÓn vµ tÇng m¹ng .
§Þnh tuyÕn ®Ó chuyÓn c¸c gãi d÷ liÖu trong m¹ng.
Thùc hiÖn viÖc ph©n m¶nh vµ hîp nhÊt (fragmentation -reassembly) c¸c gãi d÷ liÖu vµ nhóng / t¸ch chóng trong c¸c gãi d÷ liÖu ë tÇng liªn kÕt.
1.3.2. §Þnh tuyÕn IP
Cã hai lo¹i ®Þnh tuyÕn:
§Þnh tuyÕn trùc tiÕp: §Þnh tuyÕn trùc tiÕp lµ viÖc x¸c ®Þnh ®êng nèi gi÷a hai tr¹m lµm viÖc trong cïng mét m¹ng vËt lý.
§Þnh tuyÕn kh«ng trùc tiÕp: §Þnh tuyÕn kh«ng trùc tiÕp lµ viÖc x¸c ®Þnh ®êng nèi gi÷a hai tr¹m lµm viÖc kh«ng n»m trong cïng mét m¹ng vËt lý vµ v× vËy, viÖc truyÒn tin gi÷a chóng ph¶i ®îc thùc hiÖn th«ng qua c¸c tr¹m trung gian lµ c¸c gateway.
§Ó kiÓm tra xem tr¹m ®Ých cã n»m trªn cïng m¹ng vËt lý víi tr¹m nguån hay kh«ng, ngêi göi ph¶i t¸ch lÊy phÇn ®Þa chØ m¹ng trong phÇn ®Þa chØ IP. NÕu hai ®Þa chØ nµy cã ®Þa chØ m¹ng gièng nhau th× datagram sÏ ®îc truyÒn ®i trùc tiÕp; ngîc l¹i ph¶i x¸c ®Þnh mét gateway, th«ng qua gateway nµy chuyÓn tiÕp c¸c datagram.
Khi mét tr¹m muèn göi c¸c gãi d÷ liÖu ®Õn mét tr¹m kh¸c th× nã ph¶i ®ãng gãi datagram vµo mét khung (frame) vµ göi c¸c frame nµy ®Õn gateway gÇn nhÊt. Khi mét frame ®Õn mét gateway, phÇn datagram ®· ®îc ®ãng gãi sÏ ®îc t¸ch ra vµ IP routing sÏ chän gateway tiÕp däc theo ®êng dÉn ®Õn ®Ých. Datagram sau ®ã l¹i ®îc ®ãng gãi vµo mét frame kh¸c vµ göi ®Õn m¹ng vËt lý ®Ó göi ®Õn gateway tiÕp theo trªn ®êng truyÒn vµ tiÕp tôc nh thÕ cho ®Õn khi datagram ®îc truyÒn ®Õn tr¹m ®Ých.
ChiÕn lîc ®Þnh tuyÕn: Trong thuËt ng÷ truyÒn thèng cña TCP/IP chØ cã hai kiÓu thiÕt bÞ, ®ã lµ c¸c cæng truyÒn (gateway) vµ c¸c tr¹m (host). C¸c cæng truyÒn cã vai trß göi c¸c gãi d÷ liÖu, cßn c¸c tr¹m th× kh«ng. Tuy nhiªn khi mét tr¹m ®îc nèi víi nhiÒu m¹ng th× nã còng cã thÓ ®Þnh híng cho viÖc lu chuyÓn c¸c gãi d÷ liÖu gi÷a c¸c m¹ng vµ lóc nµy nã ®ãng vai trß hoµn toµn nh mét gateway.
C¸c tr¹m lµm viÖc lu chuyÓn c¸c gãi d÷ liÖu xuyªn suèt qua c¶ bèn líp, trong khi c¸c cæng truyÒn chØ chuyÓn c¸c gãi ®Õn líp Internet lµ n¬i quyÕt ®Þnh tuyÕn ®êng tiÕp theo ®Ó chuyÓn tiÕp c¸c gãi d÷ liÖu.
C¸c m¸y chØ cã thÓ truyÒn d÷ liÖu ®Õn c¸c m¸y kh¸c n»m trªn cïng mét m¹ng vËt lý. C¸c gãi tõ A1 cÇn chuyÓn cho C1 sÏ ®îc híng ®Õn gateway G1 vµ G2. Tr¹m A1 ®Çu tiªn sÏ truyÒn c¸c gãi ®Õn gateway G1 th«ng qua m¹ng A. Sau ®ã G1 truyÒn tiÕp ®Õn G2 th«ng qua m¹ng B vµ cuèi cïng G2 sÏ truyÒn c¸c gãi trùc tiÕp ®Õn tr¹m C1, bëi v× chóng ®îc nèi trùc tiÕp víi nhau th«ng qua m¹ng C. Tr¹m A1 kh«ng hÒ biÕt ®Õn c¸c gateway n»m ë sau G1. A1 göi c¸c gãi sè liÖu cho c¸c m¹ng B vµ C ®Õn gateway côc bé G1 vµ dùa vµo gateway nµy ®Ó ®Þnh híng tiÕp cho c¸c gãi d÷ liÖu ®i ®Õn ®Ých. Theo c¸ch nµy th× tr¹m C1 tríc tiªn sÏ göi c¸c gãi cña m×nh ®Õn cho G2 vµ G2 sÏ göi ®i tiÕp cho c¸c tr¹m ë trªn m¹ng A còng nh ë trªn m¹ng B.
Application
Transport
Internet
Network Access
Internet
Network
Application
Transport
Internet
Network Access
Internet
Network
Gateway
Gateway
Network A
Network B
Network C
Host A1
Host C1
H×nh vÏ sau m« t¶ viÖc dïng c¸c gateway ®Ó göi c¸c gãi d÷ liÖu:
H×nh 2. §Þnh tuyÕn gi÷a hai hÖ thèng
ViÖc ph©n m¶nh c¸c gãi d÷ liÖu: Trong qu¸ tr×nh truyÒn d÷ liÖu, mét gãi d÷ liÖu (datagram) cã thÓ ®îc truyÒn ®i th«ng qua nhiÒu m¹ng kh¸c nhau. Mét gãi d÷ liÖu (datagram) nhËn ®îc tõ mét m¹ng nµo ®ã cã thÓ qu¸ lín ®Ó truyÒn ®i trong gãi ®¬n ë trªn mét m¹ng kh¸c, bëi mçi lo¹i cÊu tróc m¹ng cho phÐp mét ®¬n vÞ truyÒn cùc ®¹i (Maximum Transmit Unit - MTU), kh¸c nhau. §©y chÝnh lµ kÝch thíc lín nhÊt cña mét gãi mµ chóng cã thÓ truyÒn. NÕu nh mét gãi d÷ liÖu nhËn ®îc tõ mét m¹ng nµo ®ã mµ lín h¬n MTU cña mét m¹ng kh¸c th× nã cÇn ®îc ph©n m¶nh ra thµnh c¸c gãi nhá h¬n, gäi lµ fragment. Qu¸ tr×nh nµy gäi lµ qu¸ tr×nh ph©n m¶nh. D¹ng cña mét fragment còng gièng nh d¹ng cña mét gãi d÷ liÖu th«ng thêng. Tõ thø hai trong phÇn header chøa c¸c th«ng tin ®Ó x¸c ®Þnh mçi fragment vµ cung cÊp c¸c th«ng tin ®Ó hîp nhÊt c¸c fragment nµy l¹i thµnh c¸c gãi nh ban ®Çu. Trêng identification dïng ®Ó x¸c ®Þnh fragment nµy lµ thuéc vÒ gãi d÷ liÖu nµo.
1.4. Giao thøc ICMP
ICMP ((Internet Control Message Protocol) lµ mét giao thøc ®iÒu khiÓn cña møc IP, ®îc dïng ®Ó trao ®æi c¸c th«ng tin ®iÒu khiÓn dßng sè liÖu, th«ng b¸o lçi vµ c¸c th«ng tin tr¹ng th¸i kh¸c cña bé giao thøc TCP/IP.
VÝ dô:
§iÒu khiÓn lu lîng d÷ liÖu (Flow control): khi c¸c gãi d÷ liÖu ®Õn qu¸ nhanh, thiÕt bÞ ®Ých hoÆc thiÕt bÞ ®Þnh tuyÕn ë gi÷a sÏ göi mét th«ng ®iÖp ICMP trë l¹i thiÕt bÞ göi, yªu cÇu thiÕt bÞ göi t¹m thêi ngõng viÖc göi d÷ liÖu.
Th«ng b¸o lçi: trong trêng hîp ®Þa chØ ®Ých kh«ng tíi ®îc th× hÖ thèng sÏ göi mét th«ng b¸o lçi "Destination Unreachable".
§Þnh híng l¹i c¸c tuyÕn ®êng: mét thiÕt bÞ ®Þnh tuyÕn sÏ göi mét th«ng ®iÖp ICMP "®Þnh tuyÕn l¹i" (Redirect Router) ®Ó th«ng b¸o víi mét tr¹m lµ nªn dïng thiÕt bÞ ®Þnh tuyÕn kh¸c ®Ó tíi thiÕt bÞ ®Ých. Th«ng ®iÖp nµy cã thÓ chØ ®îc dïng khi tr¹m nguån ë trªn cïng mét m¹ng víi c¶ hai thiÕt bÞ ®Þnh tuyÕn.
KiÓm tra c¸c tr¹m ë xa: mét tr¹m cã thÓ göi mét th«ng ®iÖp ICMP "Echo" ®Ó kiÓm tra xem mét tr¹m cã ho¹t ®éng hay kh«ng.
Sau ®©y lµ m« t¶ mét øng dông cña giao thøc ICMP thùc hiÖn viÖc ®Þnh tuyÕn l¹i (Redirect):
VÝ dô: Gi¶ sö host göi mét gãi d÷ liÖu IP tíi Router R1. Router R1 thùc hiÖn viÖc quyÕt ®Þnh tuyÕn v× R1 lµ router mÆc ®Þnh cña host ®ã. R1 nhËn gãi d÷ liÖu vµ t×m trong b¶ng ®Þnh tuyÕn vµ nã t×m thÊy mét tuyÕn tíi R2. Khi R1 göi gãi d÷ liÖu tíi R2 th× R1 ph¸t hiÖn ra r»ng nã ®ang göi gãi d÷ liÖu ®ã ra ngoµi trªn cïng mét giao diÖn mµ gãi d÷ liÖu ®ã ®· ®Õn (lµ giao diÖn m¹ng LAN mµ c¶ host vµ hai Router nèi ®Õn). Lóc nµy R1 sÏ göi mét th«ng b¸o ICMP Redirect Error tíi host, th«ng b¸o cho host nªn göi c¸c gãi d÷ liÖu tiÕp theo ®Õn R2 th× tèt h¬n.
Host
R2
(3) ICMP Redirect
(2) IP datagram
R1
Final destination
(1) IP datagram
Host
Hinh 3: M« t¶ mét øng dông cña giao thøc ICMP.
T¸c dông cña ICMP Redirect lµ ®Ó cho mät host víi nhËn biÕt tèi thiÓu vÒ ®Þnh tuyÕn x©y dùng lªn mét b¶ng ®Þnh tuyÕn tèt h¬n theo thêi gian. Host ®ã cã thÓ b¾t ®Çu víi mét tuyÕn mÆc ®Þnh (cã thÓ R1 hoÆc R2 nh vÝ dô trªn) vµ bÊt kú lÇn nµo tuyÕn mÆc ®Þnh nµy ®îc dïng víi host ®ã ®Õn R2 th× nã sÏ ®îc Router mÆc ®Þnh göi th«ng b¸o Redirect ®Ó cho phÐp host ®ã cËp nhËt b¶ng ®Þnh tuyÕn cña nã mét c¸ch phï hîp h¬n.
1.5. Giao thøc ARP vµ giao thøc RARP
§Þa chØ IP ®îc dïng ®Ó ®Þnh danh c¸c host vµ m¹ng ë tÇng m¹ng cña m« h×nh OSI, chóng kh«ng ph¶i lµ c¸c ®Þa chØ vËt lý (hay ®Þa chØ MAC) cña c¸c tr¹m ®ã trªn mét m¹ng côc bé (Ethernet, Token Ring,...). Trªn mét m¹ng côc bé hai tr¹m chØ cã thÓ liªn l¹c víi nhau nÕu chóng biÕt ®Þa chØ vËt lý cña nhau. Nh vËy vÊn ®Ò ®Æt ra lµ ph¶i thùc hiÖn ¸nh x¹ gi÷a ®Þa chØ IP (32 bits) vµ ®Þa chØ vËt lý (48 bits) cña mét tr¹m. Giao thøc ARP (Address Resolution Protocol) ®· ®îc x©y dùng ®Ó chuyÓn ®æi tõ ®Þa chØ IP sang ®Þa chØ vËt lý khi cÇn thiÕt. Ngîc l¹i, giao thøc RARP (Reverse Address Resolution Protocol) ®îc dïng ®Ó chuyÓn ®æi ®Þa chØ vËt lý sang ®Þa chØ IP. C¸c giao thøc ARP vµ RARP kh«ng ph¶i lµ bé phËn cña IP mµ IP sÏ dïng ®Õn chóng khi cÇn.
1.5.1. Giao thøc ARP
Giao thøc TCP/IP sö dông ARP ®Ó t×m ®Þa chØ vËt lý cña tr¹m ®Ých. VÝ dô khi cÇn göi mét gãi d÷ liÖu IP cho mét hÖ thèng kh¸c trªn cïng mét m¹ng vËt lý Ethernet, hÖ th«ng göi cÇn biÕt ®Þa chØ Ethernet cña hÖ thèng ®Ých ®Ó tÇng liªn kÕt d÷ liÖu x©y dùng khung gãi d÷ liÖu.
Th«ng thêng, mçi hÖ thèng lu gi÷ vµ cËp nhËt b¶ng thÝch øng ®Þa chØ IP-MAC t¹i chç (cßn ®îc gäi lµ b¶ng ARP cache). B¶ng thÝch øng ®Þa chØ ®îc cËp nhËt bëi ngêi qu¶n trÞ hÖ thèng hoÆc tù ®éng bëi giao thøc ARP sau mçi lÇn ¸nh x¹ ®îc mét ®Þa chØ thÝch øng míi.
Mçi khi cÇn t×m thÝch øng ®Þa chØ IP - MAC, cã thÓ t×m ®Þa chØ MAC t¬ng øng víi ®Þa IP ®ã tríc tiªn trong b¶ng ®Þa chØ IP - MAC ë mçi hÖ thèng. NÕu kh«ng t×m thÊy, cã thÓ sö dông giao thøc ARP ®Ó lµm viÖc nµy. Tr¹m lµm viÖc göi yªu cÇu ARP (ARP_Request) t×m thÝch øng ®Þa chØ IP -MAC ®Õn m¸y phôc vô ARP - server. M¸y phôc vô ARP t×m trong b¶ng thÝch øng ®Þa chØ IP - MAC cña m×nh vµ tr¶ lêi b»ng ARP_Response cho tr¹m lµm viÖc. NÕu kh«ng, m¸y phôc vô chuyÓn tiÕp yªu cÇu nhËn ®îc díi d¹ng qu¶ng b¸ cho tÊt c¶ c¸c tr¹m lµm viÖc trong m¹ng. Tr¹m nµo cã trïng ®Þa chØ IP ®îc yªu cÇu sÏ tr¶ lêi víi ®Þa chØ MAC cña m×nh. Tãm l¹i tiÕn tr×nh cña ARP ®îc m« t¶ nh sau
129.1.1.1
IP
ARP request
IP
ARP request
IP
ARP request
1
2,5
4
H×nh 4: TiÕn tr×nh ARP
TiÕn tr×nh ARP
IP yªu cÇu ®Þa chØ MAC.
T×m kiÕm trong b¶ng ARP.
NÕu t×m thÊy sÏ tr¶ l¹i ®Þa chØ MAC.
NÕu kh«ng t×m thÊy, t¹o gãi ARP yªu cÇu vµ göi tíi tÊt c¶ c¸c tr¹m.
Tuú theo gãi d÷ liÖu tr¶ lêi, ARP cËp nhËt vµo b¶ng ARP vµ göi ®Þa chØ MAC ®ã cho IP.
1.5.2. Giao thøc RARP
Reverse ARP (Reverse Address Resolution Protocol) lµ giao thøc gi¶i thÝch øng ®Þa chØ AMC - IP. Qu¸ tr×nh nµy ngîc l¹i víi qu¸ tr×nh gi¶i thÝch øng ®Þa chØ IP - MAC m« t¶ ë trªn, nghÜa lµ cho tríc ®Þa chØ møc liªn kÕt, t×m ®Þa chØ IP t¬ng øng.
1.6. Giao thøc líp chuyÓn t¶i (Transport Layer)
1.6.1. Giao thøc TCP ?
TCP (Transmission Control Protocol) lµ mét giao thøc “cã liªn kÕt” (connection - oriented), nghÜa lµ cÇn thiÕt lËp liªn kÕt (logic), gi÷a mét cÆp thùc thÓ TCP tríc khi chóng trao ®æi d÷ liÖu víi nhau.
TCP cung cÊp kh¶ n¨ng truyÒn d÷ liÖu mét c¸ch an toµn gi÷a c¸c m¸y tr¹m trong hÖ thèng c¸c m¹ng. Nã cung cÊp thªm c¸c chøc n¨ng nh»m kiÓm tra tÝnh chÝnh x¸c cña d÷ liÖu khi ®Õn vµ bao gåm c¶ viÖc göi l¹i d÷ liÖu khi cã lçi x¶y ra. TCP cung cÊp c¸c chøc n¨ng chÝnh sau:
ThiÕt lËp, duy tr×, kÕt thóc liªn kÕt gi÷a hai qu¸ tr×nh.
Ph©n ph¸t gãi tin mét c¸ch tin cËy.
§¸nh sè thø tù (sequencing) c¸c gãi d÷ liÖu nh»m truyÒn d÷ liÖu mét c¸ch tin cËy.
Cho phÐp ®iÒu khiÓn lçi.
Cung cÊp kh¶ n¨ng ®a kÕt nèi víi c¸c qu¸ tr×nh kh¸c nhau gi÷a tr¹m nguån vµ tr¹m ®Ých nhÊt ®Þnh th«ng qua viÖc sö dông c¸c cæng.
TruyÒn d÷ liÖu sö dông c¬ chÕ song c«ng (full-duplex).
Mét tiÕn tr×nh øng dông trong mét host truy nhËp vµo c¸c dÞch vô cña TCP cung cÊp th«ng qua mét cæng (port) nh sau:
Mét cæng kÕt hîp víi mét ®Þa chØ IP t¹o thµnh mét socket duy nhÊt trong liªn m¹ng. TCP ®îc cung cÊp nhê mét liªn kÕt logic gi÷a mét cÆp socket. Mét socket cã thÓ tham gia nhiÒu liªn kÕt víi c¸c socket ë xa kh¸c nhau. Tríc khi truyÒn d÷ liÖu gi÷a hai tr¹m cÇn ph¶i thiÕt lËp mét liªn kÕt TCP gi÷a chóng vµ khi kÕt thóc phiªn truyÒn d÷ liÖu th× liªn kÕt ®ã sÏ ®îc gi¶i phãng. Còng gièng nh ë c¸c giao thøc kh¸c, c¸c thùc thÓ ë tÇng trªn sö dông TCP th«ng qua c¸c hµm dÞch vô nguyªn thuû (service primitives), hay cßn gäi lµ c¸c lêi gäi hµm (function call).
ThiÕt lËp vµ kÕt thóc kÕt nèi TCP.
1 2 3
TCP
IP
NAP
Userprocess
1 2
TCP
IP
NAP
Userprocess
Host
Host
Internet
NAP: Network Access Protocol
H×nh 4: Cæng truy nhËp dÞch vô TCP
1.6.2. ThiÕt lËp kÕt nèi
ThiÕt lËp kÕt nèi TCP ®îc thùc hiÖn trªn c¬ së ph¬ng thøc b¾t tay ba bíc (Tree - way Handsake) h×nh 5 . Yªu cÇu kÕt nèi lu«n ®îc tiÕn tr×nh tr¹m khëi t¹o, b»ng c¸ch göi mét gãi TCP víi cê SYN=1 vµ chøa gi¸ trÞ khëi t¹o sè tuÇn tù ISN cña client. Gi¸ trÞ ISN nµy lµ mét sè 4 byte kh«ng dÊu vµ ®îc t¨ng mçi khi kÕt nèi ®îc yªu cÇu (gi¸ trÞ nµy quay vÒ 0 khi nã tíi gi¸ trÞ 232). Trong th«ng ®iÖp SYN nµy cßn chøa sè hiÖu cæng TCP cña phÇn mÒm dÞch vô mµ tiÕn tr×nh tr¹m muèn kÕt nèi (bíc 1).
Mçi thùc thÓ kÕt nèi TCP ®Òu cã mét gi¸ trÞ ISN míi sè nµy ®îc t¨ng theo thêi gian. V× mét kÕt nèi TCP cã cïng sè hiÖu cæng vµ cïng ®Þa chØ IP ®îc dïng l¹i nhiÒu lÇn, do ®ã viÖc thay ®æi gi¸ trÞ INS ng¨n kh«ng cho c¸c kÕt nèi dïng l¹i c¸c d÷ liÖu ®· cò (stale) vÉn cßn ®îc truyÒn tõ mét kÕt nèi cò vµ cã cïng mét ®Þa chØ kÕt nèi.
Khi thùc thÓ TCP cña phÇn mÒm dÞch vô nhËn ®îc th«ng ®iÖp SYN, nã göi l¹i gãi SYN cïng gi¸ trÞ ISN cña nã vµ ®Æt cê ACK=1 trong trêng hîp s½n sµng nhËn kÕt nèi. Th«ng ®iÖp nµy cßn chøa gi¸ trÞ ISN cña tiÕn tr×nh tr¹m trong trêng hîp sè tuÇn tù thu ®Ó b¸o r»ng thùc thÓ dÞch vô ®· nhËn ®îc gi¸ trÞ ISN cña tiÕn tr×nh tr¹m (bíc 2).
TiÕn tr×nh tr¹m tr¶ lêi l¹i gãi SYN cña thùc thÓ dÞch vô b»ng mét th«ng b¸o tr¶ lêi ACK cuèi cïng. B»ng c¸ch nµy, c¸c thùc thÓ TCP trao ®æi mét c¸ch tin cËy c¸c gi¸ trÞ ISN cña nhau vµ cã thÓ b¾t ®Çu trao ®æi d÷ liÖu. Kh«ng cã th«ng ®iÖp nµo trong ba bíc trªn chøa bÊt kú d÷ liÖu g×; tÊt c¶ th«ng tin trao ®æi ®Òu n»m trong phÇn tiªu ®Ò cña th«ng ®iÖp TCP (bíc 3).
TCP_A TCP_B
Syn, Seq=x
Syn, Seq=y
Ack(x+1)
Ack(y+1)
a) thiÕt lËp kÕt nèi
TCP_A TCP_B
Fin, Seq=x
Ack(x+1)
Fin, Seq=y,
Ack(x+1)
Ack(y+1)
b) KÕt thóc kÕt nèi
H×nh 5. Qu¸ tr×nh kÕt nèi theo 3 bíc
1.6.3. KÕt thóc kÕt nèi
Khi cã nhu cÇu kÕt thóc kÕt nèi, thùc thÓ TCP, vÝ dô cô thÓ A göi yªu cÇu kÕt thóc kÕt nèi víi FIN=1. V× kÕt nèi TCP lµ song c«ng (full-duplex) nªn mÆc dï nhËn ®îc yªu cÇu kÕt thóc kÕt nèi cña A (A th«ng b¸o hÕt sè liÖu göi) thùc thÓ B vÉn cã thÓ tiÕp tôc truyÒn sè liÖu cho ®Õn khi B kh«ng cßn sè liÖu ®Ó göi vµ th«ng b¸o cho A b»ng yªu cÇu kÕt thóc kÕt nèi víi FIN=1 cña m×nh. Khi thùc thÓ TCP ®· nhËn ®îc th«ng ®iÖp FIN vµ sau khi ®· göi th«ng ®iÖp FIN cña chÝnh m×nh, kÕt nèi TCP thùc sô kÕt thóc.
Ch¬ng 2:
C«ng nghÖ DataSocket
2.1. Giíi thiÖu vÒ c«ng nghÖ DataSocket.
X©y dùng hÖ thèng ®o lêng vµ chuyÓn d÷ liÖu ®o lêng cïng c¸c thuéc tÝnh cña chóng víi tèc ®é cao qua m¹ng Internet(TCP/IP) hiÖn lµ bµi to¸n ®uîc nhiÒu lÜnh vùc quan t©m. Ngay nay cac hÖ thèng ®îc x©y dùng víi c¸c thiÕt bÞ ®o ¶o(VI), c¸c hÖ thèng nµy thêng xö dông m« h×nh hÖ thèng ®o lêng ph©n t¸n kÕt hîp kh«ng chÆt. C¸c hÖ thèng ®o nµy cho phÐp dÔ dµng cÊu h×nh l¹i hÖ thèng, phèi hîp c¸c thµnh phÇn cña hÖ thèng ®Ó thùc hiÖn mét phÐp ®o yªu cÇu.
Sù ph¸t t¸n d÷ liÖu qua mang Internet(TCP/IP) cã thÓ thôc hiÖn theo c¸c ph¬ng ph¸p sau:
M¹ng LAN.
M¹ng ®iÖn tho¹i c«ng céng(PSTN).
xDSL.
Wireless.
Leased Line
Trªn thÕ giíi cã nhiÒu h·ng ph¸t triÓn vµ trî gióp c¸c hÖ thèng nµy, nhÊt lµ h·ng National Instruments, h·ng nµy ®· ph¸t triÓn c¸c ®iÒu khiÓn ActiveX dµnh cho thu thËp d÷ liÖu ®o lêng, ph¸t triÓn giao diÖn, xö lÝ d÷ liÖu vµ ph¸t t¸n d÷ liÖu ®o lêng víi tèc ®é cao qua m¹ng Internet dùa trªn c¬ së c«ng nghÖ DataSocket. Víi c¸c th viÖn ®ã ngêi sö dông dÔ dµng ph¸t triÓn c¸c øng dông ®o lêng vµ ®iÒu khiÓn qua m¹ng TCP/IP víi sù tÝch hîp m¹nh mÏ cña c«ng nghÖ WEB, nã cho phÐp ngêi sö dông truy cËp d÷ liÖu ®o lêng kh«ng kh¸c g× truy cËp c¸c trang Web th«ng thêng, ®ång thêi ®iÒu ®ã còng cho c¬ héi dÔ dµng tÝch hîp d÷ liÖu ®o lêng víi c¸c c«ng nghÖ kh¸c.
2.2. DataSocket lµ g× ?
DataSocket lµ mét c«ng nghÖ lËp tr×nh míi dùa trªn c¬ së chuÈn c«ng nghiÖp TCP/IP, ®Ó lµm ®¬n gi¶n hãa viÖc trao ®æi d÷ liÖu gi÷a c¸c øng dông kh¸c nhau trªn mét m¸y tÝnh hoÆc gi÷a nh÷ng m¸y tÝnh ®îc kÕt nèi víi nhau qua m¹ng. DataSocket thùc hiÖn mét giao diÖn lËp tr×nh cã hiÖu n¨ng cao vµ dÔ sö dông, cho phÐp thiÕt kÕ chia sÎ vµ ph¸t sinh d÷ liÖu Online trong c¸c hÖ thèng ®o lêng vµ tù ®éng hãa.
V× DataSocket lµ c«ng cô lËp tr×nh míi nªn nã ®îc sö dông trong nhiÒu øng dông kh¸c nhau nh x©y dùng m¹ng liªn kÕt mét c¸ch thèng nhÊt vµ hiÖu qu¶ gi÷a c¸c phßng thÝ nghiÖm cña c¸c c¬ quan nghiªn cøu, c¸c trêng ®¹i häc vµ c¸c trung t©m ®µo t¹o trong níc còng nh quèc tÕ víi nhau. Tõ ®ã t¨ng kh¶ n¨ng hîp t¸c nghiªn cøu khoa häc, chia sÎ tµi nguyªn, tiÕt kiÖm ®¸ng kÓ c¸c thiÕt bÞ khoa häc, hÖ thèng thÝ nghiÖm ®¾t tiÒn hiÖn nay. Khi ¸p dông c«ng nghÖ DataSocket chóng ta cã thÓ khai th¸c ®îc hÕt tÝnh n¨ng còng nh c«ng suÊt cña c¸c hÖ thèng thÝ nghiÖm ®a n¨ng nhng l¹i ®Æt ë c¸c trung t©m cã vÞ trÝ xa nhau.
C¸c ®Æc trng cña DataSocket:
§äc vµ viÕt d÷ liÖu gi÷a nhiÒu ®Ých vµ nhiÒu nguån d÷ liÖu kh¸c nhau.
C¸c nguån vµ ®Ých d÷ liÖu ®îc chØ ra th«ng qua c¸c URL gièng nh truy cËp trang WEB b»ng tr×nh duyÖt WEB.
Giao diÖn lËp tr×nh ®¬n gi¶n, ®éc lËp cho phÐp truy cËp tíi c¸c Server File, FTP, HTTP, OPC.
Giao thøc truyÒn DataSocket(DSTP) lµ giao thøc riªng cña DataSocket, cho phÐp trao ®æi d÷ liÖu víi mäi kiÓu d÷ liÖu th«ng qua c¸c DataSocket Server, thËm trÝ cho phÐp truyÒn c¶ c¸c Frame ¶nh Online(ChuyÓn ¶nh vÒ d¹ng m¶ng vµ truyÒn) vµ tiÕn nãi.
M« h×nh ph¸t t¸n d÷ liÖu dïng Data
Các file đính kèm theo tài liệu này:
- Do_an_new_new.doc