本文共 876 字,大约阅读时间需要 2 分钟。
例1:TCP建立连接的过程采用三次握手,已知第三次握手报文的发送序列号是1000,确认序列号为2000,那么第二次握手报文的发送序列和确认序列号分别为1999,1000
解释:
假如有2个序列号,客户端发送A,服务器发送B。三次握手分别是
客户端:发送A
服务端:发送B,确认A+1
客户端:发送A+1(1000),确认B+1(2000)
所以第二次为1999,确认1000
这不是同一端的数据包
例2:TCP连接建立过程描述可以是:当客户端处于ESTABLISHED状态时,服务端可能仍处于SYN_RCVD状态。
解释:
SYN_SENT:客户端SYN_SENT状态:在发送连接请求后等待匹配的连接请求:客户端通过应用程序调用connect进行active open。于是客户端TCP发送一个SYN以请求建立一个连接。之后状态置为SYN_SENT。
SYN_RECEIVED:服务器端状态SYN_RCVD在收到和发送一个连接请求后等待对方对连接请求的确认,当服务器收到客户端发送的同步信号时,将标志位ACK和SYN置1发送给客户端,此时服务器端处于SYN_RCVD状态,如果连接成功就变为ESTABLISHED,正常情况下SYN_RCVD状态非常短暂。
3.判断属于网络112.10.200.0/21的地址是112.10.206.0
解释:网络地址前21位是网络地址,后12位是主机地址。
112.10.200.0/21:112对应的是前8位,10对应第二个8位,200对应第三个8位。而且200的二进制表示为1100 1000
前面已经有16位,那么200中11001属于网络地址,000属于主机地址。所以最大的地址为【112(十进制)】【10(十进制)】【11001 111】【11111111】,即转为十进制
为112.10.207.255。所以其网络地址范围是112.10.200.0~112.10.207.255
4.TCP会发生发送RST的4种情况是:
1)端口未打开
2)请求超时
3)提前关闭
4)在一个已关闭的socket上收到数据
转载地址:http://parbn.baihongyu.com/