Gi?i thích v? b?t tay ba chi?u qua TCP/IP

D?ch tiêu đ? D?ch tiêu đ?
ID c?a bài: 172983 - Xem s?n ph?m mà bài này áp d?ng vào.
Bung t?t c? | Thu g?n t?t c?

? Trang này

TÓM T?T

Bài vi?t này là dành cho khán gi? nh?ng ngư?i đ? quen thu?c v?i truy?n d?n Ki?m soát Protocol/Internet Protocol (TCP/IP) và th?o lu?n v? quá tr?nh b?t tay ba chi?u TCP x?y ra gi?a m?t khách hàng và server khi b?t đ?u ho?c k?t thúc m?t k?t n?i TCP.

Đ? thêm thông tin v? TCP/IP, xin vui l?ng xem gi?y tr?ng sau có s?n trên h? ph?c v? ftp chưa xác đ?nh ngư?i Microsoft:
File Name: Tcpipimp2.doc
Đ?a đi?m: FTP://FTP.Microsoft.com/bussys/WINNT/WINNT-Docs/Papers/ "Microsoft Windows NT 3.5/3.51/4.0: TCP/IP th?c hi?n chi ti?t giao th?c TCP/IP Stack và d?ch v?, phiên b?n 2.0"

THÔNG TIN THÊM

Transmission Control Protocol (TCP) m?c đ? v?n t?i TCP/IP giao th?c là k?t n?i theo đ?nh hư?ng. K?t n?i theo đ?nh hư?ng có ngh?a là, trư?c khi b?t k? d? li?u có th? đư?c truy?n, m?t k?t n?i đáng tin c?y ph?i đư?c thu đư?c và công nh?n. TCP c?p d? li?u đư?c truy?n đi, thi?t l?p k?t n?i, và ch?m d?t k?t n?i duy tr? các thông s? c? th? ki?m soát mà qu?n các toàn b? quá tr?nh. Bit ki?m soát đư?c li?t kê như sau:
URG: Urgent Pointer l?nh v?c quan tr?ng
ACK: Xác nh?n l?nh v?c quan tr?ng
PSH: Ch?c năng Push
RST: Thi?t l?p l?i k?t n?i
SYN: Đ?ng b? hóa s? th? t?
FIN: Không có thêm d? li?u t? ngư?i g?i
Có hai t?nh hu?ng nơi m?t b?t tay ba chi?u s? di?n ra:
  • Thi?t l?p k?t n?i (m?t ho?t đ?ng m?)
  • Ch?m d?t k?t n?i (m?t ho?t đ?ng đóng)
Các thông tin m?u sau nh?n đư?c t? m?t giám sát m?ng n?m b?t. M?ng lư?i giám sát là m?t phân tích giao th?c mà có th? đư?c l?y t? Microsoft h? th?ng qu?n l? máy ch?.

Thi?t l?p k?t n?i

Tr?nh t? sau đây cho th?y quá tr?nh c?a m?t đang k?t n?i TCP thành l?p:

Khung 1:

Như b?n th?y trong frame đ?u tiên, khách hàng, NTW3, s? g?i m?t phân đo?n SYN (TCP ....S.). đây là m?t yêu c?u đ?n máy ch? đ? đ?ng b? hóa tr?nh t? s? đi?n tho?i. Nó xác đ?nh tr?nh t? ban đ?u s? c?a nó (ISN), mà là incremented b?i 1, 8221821 + 1 = 8221822, và đó đư?c g?i đ?n h? ph?c v?. Đ? kh?i t?o k?t n?i, khách hàng và máy ch? ph?i đ?ng b? hóa m?i c?a các s? th? t?. Đó c?ng là m?t l?a ch?n cho các phân đo?n t?i đa Kích thư?c (MSS) đư?c thi?t l?p, đư?c xác đ?nh b?i đ? dài (len: 4). tuøy liên l?c kích thư?c t?i đa phân khúc ngư?i g?i mu?n nh?n đư?c. Các Xác nh?n l?nh v?c (ack: 0) đư?c thi?t l?p b?ng không, v? đây là l?n đ?u tiên m?t ph?n c?a b?t tay ba chi?u.
1    2.0785 NTW3 --> BDC3 TCP ....S., len: 4, seq: 8221822-8221825, ack: 0,
win: 8192, src: 1037  dst:  139 (NBT Session)  NTW3 -->  BDC3 IP

TCP: ....S., len: 4, seq: 8221822-8221825, ack: 0, win: 8192, src: 1037
dst:  139 (NBT Session)

   TCP: Source Port = 0x040D
   TCP: Destination Port = NETBIOS Session Service
   TCP: Sequence Number = 8221822 (0x7D747E)
   TCP: Acknowledgement Number = 0 (0x0)
   TCP: Data Offset = 24 (0x18)
   TCP: Reserved = 0 (0x0000)
   TCP: Flags = 0x02 : ....S.

      TCP: ..0..... = No urgent data
      TCP: ...0.... = Acknowledgement field not significant
      TCP: ....0... = No Push function
      TCP: .....0.. = No Reset
      TCP: ......1. = Synchronize sequence numbers
      TCP: .......0 = No Fin

   TCP: Window = 8192 (0x2000)
   TCP: Checksum = 0xF213
   TCP: Urgent Pointer = 0 (0x0)
   TCP: Options

         TCP: Option Kind (Maximum Segment Size) = 2 (0x2)
         TCP: Option Length = 4 (0x4)
         TCP: Option Value = 1460 (0x5B4)

   TCP: Frame Padding

00000:  02 60 8C 9E 18 8B 02 60 8C 3B 85 C1 08 00 45 00   .`.....`.;....E.
00010:  00 2C 0D 01 40 00 80 06 E1 4B 83 6B 02 D6 83 6B   .,..@....K.k...k
00020:  02 D3 04 0D 00 8B 00 7D 74 7E 00 00 00 00 60 02   .......}t~....`.
00030:  20 00 F2 13 00 00 02 04 05 B4 20 20                .........
				
Khung 2:

Trong khung th? hai, máy ch?, BDC3, g?i m?t ACK và m?t SYN v? đi?u này phân đo?n (TCP.A..S.). trong phân khúc này máy ch? th?a nh?n các yêu c?u c?a khách hàng cho đ?ng b? hóa. Cùng lúc đó, máy ch? c?ng g?i yêu c?u c?a m?nh đ? các khách hàng cho đ?ng b? hóa các tr?nh t? c?a nó s? đi?n tho?i. Đó là m?t s? khác bi?t l?n trong phân khúc này. H? ph?c v? truy?n m?t xác nh?n s? (8221823) cho khách hàng. Các ghi nh?n là ch? c?n ch?ng minh cho khách hàng ACK là c? th? cho các SYN khách hàng kh?i xư?ng. Quá tr?nh ghi nh?n yêu c?u c?a khách hàng cho phép các máy ch? đ? tăng s? lư?ng tr?nh t? c?a khách hàng b?ng m?t trong và s? d?ng nó là s? ghi nh?n c?a nó.
2   2.0786 BDC3 --> NTW3  TCP .A..S., len: 4, seq: 1109645-1109648, ack:
8221823, win: 8760, src: 139 (NBT Session)  dst: 1037 BDC3 --> NTW3  IP

TCP: .A..S., len:    4, seq:   1109645-1109648, ack:   8221823, win: 8760,
src:  139 (NBT Session)  dst: 1037

   TCP: Source Port = NETBIOS Session Service
   TCP: Destination Port = 0x040D
   TCP: Sequence Number = 1109645 (0x10EE8D)
   TCP: Acknowledgement Number = 8221823 (0x7D747F)
   TCP: Data Offset = 24 (0x18)
   TCP: Reserved = 0 (0x0000)
   TCP: Flags = 0x12 : .A..S.

      TCP: ..0..... = No urgent data
      TCP: ...1.... = Acknowledgement field significant
      TCP: ....0... = No Push function
      TCP: .....0.. = No Reset
      TCP: ......1. = Synchronize sequence numbers
      TCP: .......0 = No Fin

   TCP: Window = 8760 (0x2238)
   TCP: Checksum = 0x012D
   TCP: Urgent Pointer = 0 (0x0)
   TCP: Options

         TCP: Option Kind (Maximum Segment Size) = 2 (0x2)
         TCP: Option Length = 4 (0x4)
         TCP: Option Value = 1460 (0x5B4)

   TCP: Frame Padding

00000:  02 60 8C 3B 85 C1 02 60 8C 9E 18 8B 08 00 45 00   .`.;...`......E.
00010:  00 2C 5B 00 40 00 80 06 93 4C 83 6B 02 D3 83 6B   .,[.@....L.k...k
00020:  02 D6 00 8B 04 0D 00 10 EE 8D 00 7D 74 7F 60 12   ...........}t`.
00030:  22 38 01 2D 00 00 02 04 05 B4 20 20               "8.-......
				
Khung 3:

Trong khung th? ba, khách hàng s? g?i m?t ACK vào phân khúc này (TCP.A....). Trong phân khúc này, khách hàng th?a nh?n yêu c?u t? h? ph?c v? đ? đ?ng b? hóa. Khách hàng s? d?ng thu?t toán cùng m?t máy ch? th?c hi?n trong vi?c cung c?p m?t s? ghi nh?n. C?a khách hàng s? th?a nh?n c?a h? ph?c v? yêu c?u đ?ng b? hóa đ? hoàn t?t các các quá tr?nh thi?t l?p m?t k?t n?i đáng tin c?y, v? th? ba chi?u b?t tay.
3   2.787 NTW3 --> BDC3  TCP .A...., len: 0, seq: 8221823-8221823, ack:
1109646, win: 8760, src: 1037  dst:  139 (NBT Session)  NTW3 --> BDC3  IP

TCP: .A...., len:    0, seq:   8221823-8221823, ack:   1109646, win: 8760,
src: 1037  dst:  139 (NBT Session)

   TCP: Source Port = 0x040D
   TCP: Destination Port = NETBIOS Session Service
   TCP: Sequence Number = 8221823 (0x7D747F)
   TCP: Acknowledgement Number = 1109646 (0x10EE8E)
   TCP: Data Offset = 20 (0x14)
   TCP: Reserved = 0 (0x0000)
   TCP: Flags = 0x10 : .A....

      TCP: ..0..... = No urgent data
      TCP: ...1.... = Acknowledgement field significant
      TCP: ....0... = No Push function
      TCP: .....0.. = No Reset
      TCP: ......0. = No Synchronize
      TCP: .......0 = No Fin

   TCP: Window = 8760 (0x2238)
   TCP: Checksum = 0x18EA
   TCP: Urgent Pointer = 0 (0x0)
   TCP: Frame Padding

00000:  02 60 8C 9E 18 8B 02 60 8C 3B 85 C1 08 00 45 00   .`.....`.;....E.
00010:  00 28 0E 01 40 00 80 06 E0 4F 83 6B 02 D6 83 6B   .(..@....O.k...k
00020:  02 D3 04 0D 00 8B 00 7D 74 7F 00 10 EE 8E 50 10   .......}t....P.
00030:  22 38 18 EA 00 00 20 20 20 20 20 20               "8....
				

Ch?m d?t k?t n?i

M?c dù b?t tay ba chi?u ch? đ?i h?i ba gói đư?c truy?n qua phương ti?n truy?n thông trên m?ng c?a chúng tôi, vi?c ch?m d?t này đáng tin c?y k?t n?i s? necessitate truy?n d?n c?a các gói b?n. B?i v? m?t TCP k?t n?i là đ?y đ? song (có ngh?a là, d? li?u có th? ch?y m?i hư?ng đ?c l?p c?a các khác), m?i hư?ng ph?i đư?c ch?m d?t m?t cách đ?c l?p.

Khung 4:

Trong phiên giao d?ch này c?a khung, b?n th?y khách hàng g?i m?t VÂY là đi kèm v?i m?t ACK (TCP.A...F). phân khúc này có hai ch?c năng cơ b?n. Trư?c tiên, khi tham s? VÂY đư?c đ?t, nó s? thông báo cho h? ph?c v? nó có không có thêm d? li?u g?i. Th? hai, ACK là đi?u c?n thi?t trong vi?c xác đ?nh các c? th? k?t n?i h? đ? thi?t l?p.
4   16.0279 NTW3 --> BDC3 TCP .A...F, len: 0, seq: 8221823-8221823,
ack:3462835714, win: 8760, src: 2337  dst: 139 (NBT Session)  NTW3 --> BDC3
IP

TCP: .A...F, len:   0, seq: 8221823-8221823, ack:  1109646, win: 8760, src:
1037  dst:  139 (NBT Session)

   TCP: Source Port = 0x040D
   TCP: Destination Port = NETBIOS Session Service
   TCP: Sequence Number = 8221823 (0x7D747F)
   TCP: Acknowledgement Number = 1109646 (0x10EE8E)
   TCP: Data Offset = 20 (0x14)
   TCP: Reserved = 0 (0x0000)
   TCP: Flags = 0x11 : .A...F

      TCP: ..0..... = No urgent data
      TCP: ...1.... = Acknowledgement field significant
      TCP: ....0... = No Push function
      TCP: .....0.. = No Reset
      TCP: ......0. = No Synchronize
      TCP: .......1 = No more data from sender

   TCP: Window = 8760 (0x2238)
   TCP: Checksum = 0x236C
   TCP: Urgent Pointer = 0 (0x0)

00000:  00 20 AF 47 93 58 00 A0 C9 22 F5 39 08 00 45 00   . .G.X...".9..E.
00010:  00 28 9B F5 40 00 80 06 21 4A C0 5E DE 7B C0 5E   .(..@...!J.^.{.^
00020:  DE 57 09 21 05 48 0B 20 96 AC CE 66 AE 02 50 11   .W.!.H. ...f..P.
00030:  22 38 23 6C 00 00                                 "8#l..
				
Khung 5:

Trong khung này, b?n không nh?n th?y b?t c? đi?u g? đ?c bi?t ngo?i tr? cho các máy ch? ghi nh?n VÂY đư?c truy?n t? khách hàng.
5    16.0281 BDC3 --> NTW3 TCP .A...., len:    0, seq: 1109646-1109646,
ack: 8221824, win:28672, src: 139  dst: 2337 (NBT Session) BDC3 -->  NTW3
IP

TCP: .A...., len:    0, seq: 1109646-1109646, ack: 8221824, win:28672, src:
139  dst: 2337 (NBT Session)

   TCP: Source Port = 0x040D
   TCP: Destination Port = NETBIOS Session Service
   TCP: Sequence Number = 1109646 (0x10EE8E)
   TCP: Acknowledgement Number = 8221824 (0x7D7480)
   TCP: Data Offset = 20 (0x14)
   TCP: Reserved = 0 (0x0000)
   TCP: Flags = 0x10 : .A....

      TCP: ..0..... = No urgent data
      TCP: ...1.... = Acknowledgement field significant
      TCP: ....0... = No Push function
      TCP: .....0.. = No Reset
      TCP: ......0. = No Synchronize
      TCP: .......0 = No Fin

   TCP: Window = 28672 (0x7000)
   TCP: Checksum = 0xD5A3
   TCP: Urgent Pointer = 0 (0x0)
   TCP: Frame Padding

00000:  00 A0 C9 22 F5 39 08 00 02 03 BA 84 08 00 45 00   ...".9........E.
00010:  00 28 D2 82 00 00 3F 06 6B BD C0 5E DE 57 C0 5E   .(....?.k..^.W.^
00020:  DE 7B 05 48 09 21 CE 66 AE 02 0B 20 96 AD 50 10   .{.H.!.f... ..P.
00030:  70 00 D5 A3 00 00 90 00 01 00 86 00               p...........
				
Khung 6:

Sau khi nh?n đư?c VÂY t? máy khách, máy ch? s? ACK. Th?m chí M?c dù TCP đ? thành l?p các k?t n?i gi?a hai máy tính, các các k?t n?i đư?c v?n c?n đ?c l?p v?i nhau. Do đó, các máy ch? c?ng ph?i truy?n t?i m?t VÂY (TCP.A...F) cho khách hàng.
6   17.0085 BDC3 --> NTW3 TCP .A...F, len: 0, seq: 1109646-1109646, ack:
8221824, win:28672, src: 139 dst: 2337 (NBT Session) BDC3 -->  NTW3   IP

TCP: .A...F, len:  0, seq: 1109646-1109646, ack: 8221824, win:28672, src:
139  dst: 2337 (NBT Session)

   TCP: Source Port = 0x0548
   TCP: Destination Port = 0x0921
   TCP: Sequence Number = 1109646 (0x10EE8E)
   TCP: Acknowledgement Number = 8221824 (0x7D7480)
   TCP: Data Offset = 20 (0x14)
   TCP: Reserved = 0 (0x0000)
   TCP: Flags = 0x11 : .A...F

      TCP: ..0..... = No urgent data
      TCP: ...1.... = Acknowledgement field significant
      TCP: ....0... = No Push function
      TCP: .....0.. = No Reset
      TCP: ......0. = No Synchronize
      TCP: .......1 = No more data from sender

   TCP: Window = 28672 (0x7000)
   TCP: Checksum = 0xD5A2
   TCP: Urgent Pointer = 0 (0x0)
   TCP: Frame Padding

00000:  00 A0 C9 22 F5 39 08 00 02 03 BA 84 08 00 45 00   ...".9........E.
00010:  00 28 D2 94 00 00 3F 06 6B AB C0 5E DE 57 C0 5E   .(....?.k..^.W.^
00020:  DE 7B 05 48 09 21 CE 66 AE 02 0B 20 96 AD 50 11   .{.H.!.f... ..P.
00030:  70 00 D5 A2 00 00 02 04 05 B4 86 00               p...........
				
Khung 7:

Khách hàng đáp ?ng ? đ?nh d?ng tương t? như máy ch?, b?i ACKing các máy ch? c?a VÂY và incrementing chu?i s? 1.
7   17.0085 NTW3 --> BDC3 TCP .A...., len: 0, seq: 8221824-8221824, ack:
1109647, win: 8760, src: 2337  dst: 139 (NBT Session) NTW3 --> BDC3 IP

TCP: .A...., len:    0, seq: 8221824-8221824, ack: 1109647, win: 8760, src:
2337  dst: 139   (NBT Session)

   TCP: Source Port = 0x0921
   TCP: Destination Port = 0x0548
   TCP: Sequence Number = 8221824 (0x7D7480)
   TCP: Acknowledgement Number = 1109647 (0x10EE8F)
   TCP: Data Offset = 20 (0x14)
   TCP: Reserved = 0 (0x0000)
   TCP: Flags = 0x10 : .A....

      TCP: ..0..... = No urgent data
      TCP: ...1.... = Acknowledgement field significant
      TCP: ....0... = No Push function
      TCP: .....0.. = No Reset
      TCP: ......0. = No Synchronize
      TCP: .......0 = No Fin

   TCP: Window = 8760 (0x2238)
   TCP: Checksum = 0x236B
   TCP: Urgent Pointer = 0 (0x0)

00000:  00 20 AF 47 93 58 00 A0 C9 22 F5 39 08 00 45 00   . .G.X...".9..E.
00010:  00 28 BA F5 40 00 80 06 02 4A C0 5E DE 7B C0 5E   .(..@....J.^.{.^
00020:  DE 57 09 21 05 48 0B 20 96 AD CE 66 AE 03 50 10   .W.!.H. ...f..P.
00030:  22 38 23 6B 00 00                                 "8#k..
				
Khách hàng ACKing thông báo VÂY t? h? ph?c v? xác đ?nh m?t duyên dáng đóng c?a m?t k?t n?i TCP.

THAM KH?O

Đ? thêm thông tin v? ICMP:
Xin vui l?ng xem bài vi?t sau trong cơ s? ki?n th?c Microsoft:
170292 Internet ki?m soát tin nh?n Protocol (ICMP) khái ni?m cơ b?n
- hay -
Có đư?c RFC 793.
RFCs có th? đư?c thu đư?c thông qua Internet như sau:

B?n sao gi?y c?a t?t c? các RFCs có s?n t? NIC, ho?c là cá nhân ho?c trên m?t cơ s? thuê bao (cho bi?t thêm thông tin liên l?c NIC@NIC.DDN.TRI?U USD). B?n sao tr?c tuy?n có s?n thông qua FTP ho?c Kermit t? NIC.DDN.MIL như RFC/rfc #### txt ho?c rfc / rfc ####.PS (#### là s? RFC mà không có hàng đ?u Zero).

Thu?c tính

ID c?a bài: 172983 - L?n xem xét sau cùng: 27 Tháng Chín 2011 - Xem xét l?i: 3.0
Áp d?ng
  • Windows Server 2008 Standard
  • Windows Server 2008 Enterprise
  • Windows Server 2008 Datacenter
  • Windows Server 2008 for Itanium-Based Systems
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows XP Professional
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Tablet PC Edition
  • Microsoft Windows XP Media Center Edition 2005 Update Rollup 2
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows 2000 Server
  • Windows Vista Business
  • Windows Vista Business 64-bit edition
  • Windows Vista Enterprise
  • Windows Vista Enterprise 64-bit edition
  • Windows Vista Home Basic
  • Windows Vista Home Basic 64-bit edition
  • Windows Vista Home Premium
  • Windows Vista Home Premium 64-bit edition
  • Windows Vista Ultimate
  • Windows Server 2008 R2 Datacenter
  • Windows Server 2008 R2 Enterprise
  • Windows Server 2008 R2 Standard
  • Windows Web Server 2008 R2
  • Windows 7 Enterprise
  • Windows 7 Home Basic
  • Windows 7 Home Premium
  • Windows 7 Professional
  • Windows 7 Ultimate
T? khóa: 
kbinfo kbnetwork kbmt KB172983 KbMtvi
Máy d?ch
QUAN TRỌNG: Bài vi?t này đư?c d?ch b?ng ph?n m?m d?ch máy c?a Microsoft ch? không ph?i do con ngư?i d?ch. Microsoft cung c?p các bài vi?t do con ngư?i d?ch và c? các bài vi?t do máy d?ch đ? b?n có th? truy c?p vào t?t c? các bài vi?t trong Cơ s? Ki?n th?c c?a chúng tôi b?ng ngôn ng? c?a b?n. Tuy nhiên, bài vi?t do máy d?ch không ph?i lúc nào c?ng hoàn h?o. Lo?i bài vi?t này có th? ch?a các sai sót v? t? v?ng, cú pháp ho?c ng? pháp, gi?ng như m?t ngư?i nư?c ngoài có th? m?c sai sót khi nói ngôn ng? c?a b?n. Microsoft không ch?u trách nhi?m v? b?t k? s? thi?u chính xác, sai sót ho?c thi?t h?i nào do vi?c d?ch sai n?i dung ho?c do ho?t đ?ng s? d?ng c?a khách hàng gây ra. Microsoft c?ng thư?ng xuyên c?p nh?t ph?n m?m d?ch máy này.
Nh?p chu?t vào đây đ? xem b?n ti?ng Anh c?a bài vi?t này:172983

Cung cấp Phản hồi

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com