链路层 ARP协议(Address Resolution Protocol) 请求:广播 应答:单播 根据IP解析MAC地址 免费ARP (源:自己 目标:自己) 检测IP冲突 RARP协议(Reverse Address Resolution Protocol) 根据MAC解析IP,适用于无盘工作站 网络层 IP协议(Internet Protocol)网际协议----计算机之间通信 IP报文结构图
报头:20字节 版本:一般为 4 或 6 报头长度:IPv4不固定 20-60(选项40max) 服务类型:对特殊报文处理(0-7)优先级越大越高;配置传输服务类型:如吞吐量、时延、可靠性、费用 总长度:整个IP报文携带最大字节数(65535个字节) 标识符:表示为某一种IP数据包分配一个唯一标识,为保证数据被分段后可重新组合(正确) 标志:有三位 一位 保留 二位 不分片(1=DF) 三位 还有数据被分段至MF=0(1=MF) 片偏移:只产生在分段的情况下,两个分段之间的相对位置 生存时间:经过路由器减1 协议:用于标识OSI上层所携带的具体协议 ICMP协议(Internet Control Message Protocol)控制报文协议,是TCP/IP的子协议----针对错误和状态 用于IP主机、路由器之间传递可达性控制消息,确定信息源信宿是否可达,路由器是否可用。 ICMP协议帧结构
类型:标示ICMP报文类型 如:3 表示目标不可达 11 超时 0 回显应答 8 回显请求 30 路由跟踪 编码:每种ICMP报文类型中分派出256种子类型 校验和:为IcMP报文提供差错保护 报文体:被封装在ICMP报文中初始数据 传输层 TCP协议(Transmission Control Protocol)传输控制协议----应用程序之间通信 完成可靠性交付传输;双向触发过程 三次握手(为提高效率,2、3合为一次) 1.客户触发服务器,发出 syn=1 2.服务器发送确认信号,ack=1 3.服务器向客户机发送 syn=1,达到相互触发 4.客户机回应触发信号,ack=1 TCP确认窗口 1;滑动窗口 3 安全漏洞:伪造客户端IP发送消息给服务器 UDP协议(User Datagram Protocol)用户数据报协议----应用程序之间的简单通信 用户数据包协议;无连接的传输层协议
源端口:一般是随机生成的端口号 目标端口:通常是众所周知的端口号 长度:整个UDP报文长度 TCP与UDP TCP加强传输数据的可靠性 UDP传输即时数据(速度高)
TCP/IP 中包含一系列用于处理数据通信的协议 TCP(传输控制协议)、UDP(用户数据报协议)、IP(网际协议)、ICMP(因特网消息控制协议)、DACP(动态主机配置协议)
TCP/IP 意味着TCP和IP在一起协同工作 TCP 负责应用软件和网络软件之间的通信 IP 负责计算机之间的通信 TCP 负责将数据分割并装入IP包,然后在它们到达的时候重新组合它们 IP 负责将包发送至接受者 应用层 HTTP(Hyper Text Transfer Protocol) 超文本传输协议,默认端口80;现在不仅作为单纯的协议而是作为一种数据的封装方式 版本: 1.0 、1.1 无状态 有状态 三次握手----访问应答----切断连接----再次访问三次握手…… HTTP请求报文结构
HTTP版本号:1.0/1.1(微软通常使用) HTTP方法:GET:请求web页面信息 HEAD:申请web页面信息不返回信息体 POST:请求较大数据(代替GET) URL:被请求的网址 请求头:被请求的文件类型(*/*表示所有的文件类型) 实体头:包含被请求实体的原信息、编码类型 HTTP响应报文结构
HTTP版本号:1.0/1.1 状态码:帮助用户理解HTTP工作状态 1XX 提示信息 表示请求已被成功接收,继续处理 2XX 成功 表示请求已被成功接收,理解,接受 3XX 重定向 要完成请求必须进行更进一步的处理 4XX 客户端错误 请求有语法错误或请求无法实现 5XX 服务器端错误 服务器未能实现合法的请求 常见状态码 200 OK 请求被成功地完成,所请求的资源发送回客户端 302 Found 重定向,新的URL会在response中的Location中返回,浏览器将会自动使用新的URL发出新的Request 304 NOT Modified 代表上次的文档已经被缓存了,还可以继续使用(如果不想使用本地缓存,可以用Ctrl+F5强制刷新页面) 400 Bad Request 客户端请求与语法错误,不能被服务器所理解 403 Forbidden 服务器收到请求,但是拒绝提服务 404 NOT Found 请求资源不存在(输错了URL) 500 Internal Server Error 服务器发生了不可预知的错误 503 Server Unavailable 服务器当前不能处理客户端的请求,一段时间后,可能恢复正常 响应头:包括web回应的HTTP内容是否被加密认证,是否公开 实体头:包括HTTP响应编码形式、语言、内容长度、内容、文件类型、最后一次修改时间
HTTP申明封装媒体文件类型从MIME借鉴而来 语法:content-type:<类型>/<子类型>
HTTP内容缓存(不能被缓存)的注意事项 ● URL 中带? ● 具有 proxy-authenticate(代理认证)的内容 ● 具有 public/private 内容 ● 当 pragma = no - cache 的内容 ● 当生存时间(TTL)大于有效年龄(Age)的内容 MIME(Multipurpose Internet Mail Extentions)是一种多用途的邮件扩展(附件、功能) 使用特殊的技术将各种多媒体信息编码成ASCII格式 内容类型首部语法:内容类型:<类型>/<子类型> 常见格式:文本(Text)、图像(image)、音频(audio)、视频(video)、模型(model)、应用程序(application) FTP协议(File Transfer Protocol)文件传输协议 工作模式:主动FTP、被动FTP 端口:TCP20 连接 TCP21 传输 TCP21 连接 TCP1025-5000 任意端口传输 部分防火墙的ACL的故障常见处 主动FTP 首次TCP三次握手(21) 客户端 ——————————————> 服务器 <—————————————— 二次TCP三次握手(20) 问题:由服务器到客户端主动访问会被拦截 解决:采用被动FTP或用智能防火墙 被动FTP TCP三次握手(21)——>告诉使用端口(21)传数据 客户端 ——————————————> 服务器 ——————————————> TCP三次握手(随机)
|
|