你目前正处于脱机状态,正在等待 Internet 重新连接

通过 TCP/IP 三方握手的说明

针对 Windows XP 的支持已终止

Microsoft 已于 2014 年 4 月 8 日终止了针对 Windows XP 的支持。该更改已影响到您的软件更新和安全选项。 了解这一措施对于您的含义以及如何继续保持受保护状态。

针对 Windows Server 2003 的支持已于 2015 年 7 月 14 日终止。

Microsoft 已于 2015 年 7 月 14 日终止了对于 Windows Server 2003 的支持。该更改已影响到您的软件更新和安全选项。 了解这一措施对于您的含义以及如何继续保持受保护状态。

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 172983
概要
这篇文章被针对用户熟悉传输控制协议/网际协议 (TCP/IP) 和讨论的过程在客户端和服务器之间发生在 TCP 三向握手时启动或终止 TCP 连接。

在 TCP/IP 上的其他信息,请参阅下面的白皮书Microsoft 匿名 ftp 服务器上的可用:
文件名: Tcpipimp2.doc
位置: ftp://ftp.microsoft.com/bussys/winnt/winnt-docs/papers/ "Microsoft Windows NT 3.5/3.51/4.0: TCP/IP 实现详细介绍了 TCP/IP 协议栈和服务,版本 2.0"
更多信息
TCP/IP 传输的传输控制协议 (TCP) 级别面向连接的协议。面向连接的意味着,任何前可以传输数据、 必须获得可靠的连接和确认。连接建立的 TCP 级别的数据传输和连接终止维护特定控件参数控制整个过程。控制位如下所列:
紧急指针字段的重要性了 URG:
ACK: 确认字段有效位
PSH: 推函数
RST: 重置连接
SYN: 同步序列号
FIN: 来自发件人没有更多数据
有三方握手会发生两种情况:
  • 建立连接 (活动开放)
  • 终止某个连接 (活动收盘)
下面的示例信息获取从网络监视器捕获。网络监视器是一种协议分析程序,可以从获得的Microsoft 系统管理服务器。

建立连接

下面的系列显示的 TCP 连接的过程建立:

第 1 帧:

正如您看到的第一帧中,客户端,NTW3,发送 (TCP SYN 段....S。)。 这是对服务器请求进行同步序列数字。它指定其初始序列号 (ISN),这是增加 1,8221821 + 1 = 8221822,并且发送到服务器中。到初始化连接、 在客户端和服务器必须将每个同步对方的序列号。还有一个选项的最大段大小 (MSS) 设置,由长度 (len: 4)。 此选项发件人希望接收的最大段大小进行通信。"确认字段 (ack: 0) 被设置为零,因为这是第一个三向握手的一部分。
1    2.0785 NTW3 --> BDC3 TCP ....S., len: 4, seq: 8221822-8221825, ack: 0,win: 8192, src: 1037  dst:  139 (NBT Session)  NTW3 -->  BDC3 IPTCP: ....S., len: 4, seq: 8221822-8221825, ack: 0, win: 8192, src: 1037dst:  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 Padding00000:  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...k00020:  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                .........				
第 2 帧:

在第二个框架中,服务器,BDC3,将发送 ACK 和 SYN 对此段 (TCP。答:。S。)。 这一段中确认该服务器同步的客户端的请求。同时,该服务器是此外向其序列的同步的客户端发送其请求数字。没有在此领域中的一个主要区别。服务器将传输到客户端确认号 (8221823)。"确认是到 ACK 到特定的客户端只需证据SYN 由客户机启动。确认客户端请求的过程允许客户端的序列号增加 1 的服务器,并使用它作为其确认号码。
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  IPTCP: .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 Padding00000:  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...k00020:  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.-......				
帧 3:

在第三个框架中,客户端发送 ACK 上这一段 (TCP。A....).在此段中,在客户端被确认来自服务器的请求为同步。客户端使用相同的算法的服务器实现提供的确认号码。在客户端完成的同步的服务器的请求确认建立可靠的连接,因此三向的过程握手。
3   2.787 NTW3 --> BDC3  TCP .A...., len: 0, seq: 8221823-8221823, ack:1109646, win: 8760, src: 1037  dst:  139 (NBT Session)  NTW3 --> BDC3  IPTCP: .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 Padding00000:  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...k00020:  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....				

终止连接

尽管三方握手只需要三个数据包为通过我们的网络媒体,此终止传输可靠连接将导致四个数据包的传输。由于 TCP连接是全双工 (即数据可以流动在每个方向独立于其他),每个方向必须终止独立。

帧 4:

在此会话中的帧,您可以看到客户端发送的 FIN伴随的 ACK (TCP。答:..F)。 这一段有两个基本功能。首先,当 FIN 参数设置,则会通知其所具有的服务器没有要发送更多数据。第二,将确认在识别至关重要它们已建立的特定连接。
4   16.0279 NTW3 --> BDC3 TCP .A...F, len: 0, seq: 8221823-8221823,ack:3462835714, win: 8760, src: 2337  dst: 139 (NBT Session)  NTW3 --> BDC3IPTCP: .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..				
框 5:

在此框架中,看不到任何特殊的服务器除外确认已被从客户端传输 FIN。
5    16.0281 BDC3 --> NTW3 TCP .A...., len:    0, seq: 1109646-1109646,ack: 8221824, win:28672, src: 139  dst: 2337 (NBT Session) BDC3 -->  NTW3IPTCP: .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 Padding00000:  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...........				
框 6:

收到后 FIN 从该客户机,服务器将确认即使虽然 TCP 已经建立了在两台计算机之间的连接连接仍然相互独立。因此,服务器此外必须传播 FIN (TCP。答:..F) 到客户端。
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   IPTCP: .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 Padding00000:  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...........				
Framework 7:

客户端会在服务器上,通过过程与相同的格式服务器的翼片和序号递增 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 IPTCP: .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..				
客户端从服务器 FIN 通知标识的过程端正常关闭 TCP 连接。
参考
ICMP 的其他信息:
请参阅下面 Microsoft 知识库中相应的文章:
170292 Internet 控制消息协议 (ICMP) 基本知识
-或者-
获得 RFC 793。
Rfc 可获得通过 Internet,如下所示:

所有 Rfc 的书面副本中有 NIC,要么单独或订阅按 (有关详细信息,请联系 NIC@NIC。DDN.MIL)。联机副本都可以通过 FTP 或 Kermit 从网卡。作为 DDN.MILrfc/rfc ###.txt 或 rfc/rfc ###.PS (# # # 是不领先的情况下的 RFC 编号零)。
注意:本篇“快速发布”文章是从 Microsoft 支持组织直接创建的。 文中包含的信息按原样提供,用于响应紧急问题。 由于发布仓促,材料可能包含印刷错误,并且可能随时修订,恕不另行通知。 有关其他注意事项,请参阅使用条款

警告:本文已自动翻译

属性

文章 ID:172983 - 上次审阅时间:01/27/2013 09:12:00 - 修订版本: 3.0

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, Microsoft Windows Server 2003 Enterprise Edition, Microsoft Windows Server 2003 Standard Edition, Microsoft Windows XP Professional Edition, 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

  • kbinfo kbnetwork kbmt KB172983 KbMtzh
反馈