当前位置:文档之家› TCPIP网络协议族简单的入门自学手册内有详细实验结果

TCPIP网络协议族简单的入门自学手册内有详细实验结果

By韩大卫@吉林师范大学主要学习TCP/IP协议族中传输层,网络层,链路层的协议。

总体思想:

网络间的数据传输是在链路层间实现的,用户层的数据如果想进入链路层,要经过逐层封装,最后封装成以太网帧格式进行发送,这样将不同的数据都包装成以太网帧,实现了在不同网络的数据互联和通信。

例如:一个用户层数据data

经过传输层TCP协议data

经过网络层IP协议TCP协议data

链路层以太网祯首部IP协议TCP协议data CRC

以太网帧格式:目的MAC地址(6字节源MAC地址(6字节帧类型(2字节

data(4 1500CRC(4 字节

常见帧类型:0800: IP协议

0806: ARP 协议

IP报文格式:

4bit协议格式4bit首部长度8bit TOS16bitlP报文总长度

16bitlP报文标志16bit分片信息

8bitTTL8bit上层协议16bit检验和

32bit源IP地址

32bit目的IP地址

data

上层协议:06: TCP协议

01: ICMP 协议

17:UDP协议

TCP段格式:

16bit源端口号16bit目的端口号

32bit序列号

32bit确认序号

4bitTCP首部长度6bit保留6bit标志位。ACK。。SYN FIN16bit窗口大小16bit检验和16bit紧急指针

可选项

data

UDP段格式:

16bit源端口号16bit目的端口号

16bitUDP长度16bit检验和

data

TCP是面向连接的协议,UDP是面向不连接的协议。

TCP:提供可靠的,有连接的传输

UDP:提供不可靠的,无连接的传输

TCP是面向连接的协议,所以在双方通信前要建立连接,建立连接的过程分为三部,简称三次握手:第一次:A发送SYN,1000(0,mss<1460>

第二次:B 发送SYN, 8000(0,ACK 1001, mss<1024>

第三此:A发送ACK 8001

从TCP状态迁移图中得知,这个过程中客户端的状态变化是:

CLOSED----SYS_SENT----ESTABLISHED

服务器端:

CLOSED----LISTEN----SYS_RCVD—ESTABLISHED

实例:

IP 192.168.10.50.50258 > 123.125.115.43.80: Flags [S], seq 2916403917, win 14600, optio ns [mss 1460,sackOK,TS val 1163706 ecr 0,no p,wscale 4], le ngth 0 0x0000: 0022 3f11 74b2 ac81 1250 b016 0800 4500 ."?.t....P....E.

0x0010: 003c 0b77 4000 4006 75c2 c0a8 0a32 7b7d .<.w@.@.u....2{}

0x0020: 732b c452 0050 add4 cacd 0000 0000 a002 s+.R.P ........ 〃a0 得

知,SYN置位

0x0030: 3908 b9b1 0000 0204 05b4 0402 080a 0011 9 .............

0x0040: c1ba 0000 0000 0103 0304 ........

本机向目的IP发送SYN

(注:如看不懂tcpdump的输出结果,请看文档尾部的解释

10:54:29.692916 IP 123.125.115.43.80 > 192.168.10.50.50258: Flags [S.], seq 3002973477, ack 2916403918, win 14600, optio ns [mss

1452,sackOK ,nop,nop,nop,nop,nop,nop,nop,nop,nop,nop,nop,nop,nop,no p], le ngth

0 0x0000: ac81 1250 b016 0022 3f11 74b2 0800 4500 ...P..."?.t...E.

0x0010: 003c 0b77 4000 3606 7fc2 7b7d 732b c0a8 .<.w@.6...{}s+..

0x0020: 0a32 0050 c452 b2fd bd25 add4 cace a012 .2.P.R...%......〃a012

ACK,SYN

0x0030: 3908 ad10 0000 0204 05ac 0402 0101 0101 9 ..............

0x0040: 0101 0101 0101 0101 0101 ........

服务器向本机发送ACK,同时发送SYN

10:54:29.692963 IP 192.168.10.50.50258 > 123.125.115.43.80: Flags [.], ack 1, win 14600, length 0

0x0000: 0022 3f11 74b2 ac81 1250 b016 0800 4500 ."?.t....P....E.

0x0010: 0028 0b78 4000 4006 75d5 c0a8 0a32 7b7d .(.x@.@.u....2{}

0x0020: 732b c452 0050 add4 cace b2fd bd26 5010 s+.R.P.......&P.//5010 A CK

0x0030: 3908 b99d 0000

本机向服务器发送ACK

至此,本机与服务器双方的连接就连立起来了。

关闭连接是分为四部,简称四次握手。

相关主题