一、网络协议
国际标准化组织(International Standard Organization,ISO)公布了开放系统互连参考模型(OSI/RM)。OSI/RM是一种分层的体系结构,参考模型共有7层。
TCP/IP(Transmission Control Protocol/Internet Protocol)作为Internet的核心协议。它是个协议族,包含多种协议。
-
1.链路层(数据链路层/网络接口层):包括操作系统中的设备驱动程序、计算机中对应的网络接口卡
-
2.网络层(互联网层):处理分组在网络中的活动,比如分组的选路。
-
3.运输层:主要为两台主机上的应用提供端到端的通信。
-
4.应用层:负责处理特定的应用程序细节。
二、TCP(Transmission Control Protocol,传输控制协议)
1、TCP头格式
2、TCP协议中的三次握手和四次挥手
3、TCP报文抓取工具:Wireshark
捕获过滤器中填入表达式:host www.cnblogs.com and port 80(80等效于http)
有多个TCP流时在显示过滤器中填入表达式:tcp.stream eq 0 筛选出第一个TCP流(包含完整的一次TCP连接:三次握手和四次挥手)
TIME_WAIT
等待两个时辰,确定 确认帧 已经发送到 服务器中。
三、HTTP(HyperText Transfer Protocol,超文本传输协议)
HTTP是一个应用层协议,虽然在2015年已推出HTTP/2版本,并被主要的web浏览器和web服务器支持。但目前使用最广泛的还是HTTP/1.1版本。有关历史请查阅这里。
1、请求报文结构
2、请求报文样例
POST /search HTTP/1.1 Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-silverlight, application/x-shockwave-flash, */* Referer: http://www.google.cn/ Accept-Language: zh-cn Accept-Encoding: gzip, deflate User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; TheWorld) Host: www.google.cn Connection: Keep-Alive Cookie: PREF=ID=80a06da87be9ae3c:U=f7167333e2c3b714:NW=1:TM=1261551909:LM=1261551917:S=ybYcq2wpfefs4V9g; NID=31=ojj8d-IygaEtSxLgaJmqSjVhCspkviJrB6omjamNrSm8lZhKy_yMfO2M4QMRKcH1g0iQv9u-2hfBW7bUFwVh7pGaRUb0RnHcJU37y-FxlRugatx63JLv7CWMD6UB_O_r hl=zh-CN&source=hp&q=domety
3、请求报文参数详解
所有请求方法名称全为大写,目前有9种:
请求报头域
4、响应报文结构
响应报头域
7、HTTP报文抓取工具
Wireshark、Fiddler、HttpWatch(需结合IE)、Telnet