WEB开发网
开发学院软件开发VC TCP/IP学习笔记(6) 阅读

TCP/IP学习笔记(6)

 2010-04-03 20:34:33 来源:WEB开发网   
核心提示:(8)首部长度需要设置,因为任选字段的长度是可变的,TCP/IP学习笔记(6)(2),TCP首部最多60个字节,(9)6个标志位中的多个可同时设置为1◆ URG-紧急指针有效◆ ACK-确认序号有效◆ PSH-接收方应尽快将这个报文段交给应用层◆ RST-重建连接◆ SYN-同步序号用来发起一个连接◆ FIN-发送端完

(8)首部长度需要设置,因为任选字段的长度是可变的。TCP首部最多60个字节。

(9)6个标志位中的多个可同时设置为1

◆ URG-紧急指针有效

◆ ACK-确认序号有效

◆ PSH-接收方应尽快将这个报文段交给应用层

◆ RST-重建连接

◆ SYN-同步序号用来发起一个连接

◆ FIN-发送端完成发送任务

(10)TCP的流量控制由连接的每一端通过声明的窗口大小来提供。窗口大小为字节数,起始于确认序号字段指明的值,这个值是接收端期望接收的字节数。窗口大小是一个16为的字段,因而窗口大小最大为65535字节。

(11)检验和覆盖整个TCP报文端:TCP首部和TCP数据。这是一个强制性的字段,一定是由发送端计算和存储,并由接收端进行验证。TCP检验和的计算和UDP首部检验和的计算一样,也使用伪首部。

(12)紧急指针是一个正的偏移量,黄蓉序号字段中的值相加表示紧急数据最后一个字节的序号。TCP的紧急方式是发送端向另一端发送紧急数据的一种方式。

(13)最常见的可选字段是最长报文大小MMS,每个连接方通常都在通信的第一个报文段中指明这个选项。它指明本端所能接收的最大长度的报文段。

二、TCP连接的建立和终止

1、建立连接协议

(1) 请求端发送一个SYN段指明客户打算连接的服务器的端口,隐疾初始序号(ISN),这个SYN报文段为报文段1。

(2) 服务器端发回包含服务器的初始序号的SYN报文段(报文段2)作为应答。同时将确认序号设置为客户的ISN加1以对客户的SYN报文段进行确认。一个SYN将占用一个序号。

(3) 客户必须将确认序号设置为服务器的ISN加1以对服务器的SYN报文段进行确认(报文段3)。

这3个报文段完成连接的建立,称为三次握手。发送第一个SYN的一端将执行主动打开,接收这个SYN并发回下一个SYN的另一端执行被动打开。

2、连接终止协议

由于TCP连接是全双工的,因此每个方向都必须单独进行关闭。这原则是当一方完成它的数据发送任务后就能发送一个FIN来终止这个方向的连接。收到一个FIN只意味着这一方向上没有数据流动,一个TCP连接在收到一个FIN后仍能发送数据。首先进行关闭的一方将执行主动关闭,而另一方执行被动关闭。

(1) TCP客户端发送一个FIN,用来关闭客户到服务器的数据传送(报文段4)。

(2) 服务器收到这个FIN,它发回一个ACK,确认序号为收到的序号加1(报文段5)。和SYN一样,一个FIN将占用一个序号。

(3) 服务器关闭客户端的连接,发送一个FIN给客户端(报文段6)。

(4) 客户段发回确认,并将确认序号设置为收到序号加1(报文段7)。

3、连接建立的超时

如果与服务器无法建立连接,客户端就会三次向服务器发送连接请求。在规定的时间内服务器未应答,则连接失败。

上一页  1 2 3 4 5  下一页

Tags:TCP IP 学习

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接