TCP的报文结构
-
源端口号、目标端口号
-
序列号、确认应答号:发送数据的位置
-
数据偏移:表示TCP所传输的数据部分应该从TCP包的哪个位开始计算。
-
保留位
-
控制位
ACK:该位为1时,确认应答的字段变为有效。
RST:该位为1时表示TCP连接中出现异常必须强制断开连接。例如第三次握手没有收到时服务器端就会将RST置1。
SYN:用于建立连接。SYN为1表示希望建立连接。
FIN:该位为1时,表示今后不会再有数据发送,希望断开连接。
-
窗口大小
-
校验和:用于验证收到的数据是否正确。
-
紧急指针
-
选项
HTTP的报文结构
报文首部
请求行:包含用于请求的方法(如GET,POST),请求URI和HTTP版本。
状态行:包含表明响应结果的状态码,原因短语和HTTP版本。
首部字段:包含表示请求和响应的各种条件和属性的各类首部。一般由4种首部,分别是:通用首部、请求首部、响应首部和实体首部。
其他:可能包含HTTP里的RFC里未定义的首部(Cookie等)。