1、IP报文
(1)IP VERSION:IP版本号
(2)HEAD LEN:报文首部长度
(3)TYPE OF SERVICE(TOS):服务类型(在现实生活中比如快递中的加急快件等)
(4)TOTAL LEN:整个数据报文的长度
(5)FRAGMENT ID:标识分片之后的报文;FRAGMENT OFFSET:标识分片之后的报文组合 #其中MF(MORE FRAGMENT)值为1表示报文分片;DF值为1表示报文没有分片
(6)TTL:定义最大跳数
(7)PROTOCOL:定义IP网络层上一层的协议
(8)HEADER CHECKSUM:校验和,判断数据前后是否一致
(9)源IP
(10)目的IP
(11)OPTION:可选选项
(12)要传输的数据
2、TCP报文
(1)TCP HEADER:TCP首部
(2)SOURCE PORT:源端口
(3)DESTINATION PORT:目标端口
(4)SEQUENCE NUMBER:序列号
(5)ACKNOWLEDGEMENT NUMBER:确认号
(6)HEADER LENGTH:首部长度
(7)URG:紧急位
(8)URGENT POINTER:紧急指针(URG值为1表示指针有效,否则指针无效)
(9)ACK:确认位(确认位为1,确认号有效;确认位为0,确认号无效)
(10)PUSH值为1表示有优先传输的特权(因为数据传输都是通过网卡来传输的,不同的进程数据,在发送之前,会放置发送缓冲区当中再逐个的往外发送;同样的接收数据也会先保存到接收缓冲区当中。PUSH为1表示不再先保存至缓冲区当中,而是直接往外发送或者接收)
(11)RST:重置位
(12)SYN:三次握手发的包
(13)FIN:四次关闭发的包
(14)WINDOW SIZE:窗口大小(当发送方发送数据的速率和接收方接收数据的速率不一致的时候需要用到,其实发送速率和接收速率取决于发送缓冲区和接收缓冲区可容纳的数据)
(15)TCP CHECKSUM:TCP校验和
(16)OPTION:可选选项
(17)DATA:数据
3、TCP与UDP的区别:
TCP,transmission control protocol,传输控制协议(相当于打电话,特点是可靠,但是效率低)
UDP,user datagram protocol,用户数据报协议(相当于发短信,特点是不靠谱,但是速度快)
备注:对于即时通讯都是采用UDP协议,比如QQ,它是在应用层来保证通讯的可靠性
4、三次握手和四次关闭:
(1)三次握手
A:SYN=1,sn=100(sn即seq num,序列号,随机生成)
B:SYN=1,ACK=1,an=101(an即ack num,确认号,序列号加1),sn=300(随机生成)
A:ACK=1,an=301
(2)四次关闭
A:FIN=1
B:ACK=1
B:FIN=1
A:ACK=1