1 应用层:ping,telent,OSPF,DNS,用户空间
2 传输层: tcp,UDP
3 网络层: ICMP,IP
4 数据链路层:ARP,data link,RAPP
数据链路层:网卡接口的网络驱动程序,处理数据在物理传输到媒介质的传输驱动程序,网卡和系统交流。
ARP(address resovle protocol,地址解析协议)
ARP的作用机制:实现任意网络层地址到任意物理层地址的转换,ARP主机想自己所在网络广播一个ARP请求,请求中包含目标机器网络地址,这个网络上的其他所有机器都会收到这个请求,但只有目标机器会应答。
硬件类型 | 协议类型 | 硬件类型 | 协议地址段 | 操作类型 | 发送端以太网地址 | 发送端的IP地址 | 目的端的以太网地址 | 目的端以太网地址 |
其中:操作类型:ARP请求,ARP应答,PARP请求,PARP应答
硬件类型:定义了物理地址类型
协议类型:表示要映射的协议地址。
ARP的效率:维护一个高效的缓存,其中包含经常访问的机器地址IP到物理地址的映射。
路由器和ARP是同级的,也能接收到ARP的请求。
PARP(reverse address resolve protocol;逆地址解析协议)
作用:网络层【IP地址】不直接连接主机【机器物理地址】,所以需要翻译【地址解析协议,ARP】。
【网络层】:数据包的选路和转发,【WAN(wide area network)广域网】——>路由器——>lan(local area networf)【局域网】
or——> 主机;
【网络层任务】:选择中间节点确定两台主机之间的通讯通讯路径。
【网络层的核心】:IP:根据数据包的目的IP地址决定投递信息,ip协议为数据包寻找合适的下一跳路由器。
方式:通过逐条方式(hop by hop)确定路径,或者有发送失败而被丢弃。
ICMP【internet control message protocol】因特网控制报文协议:检测网络连接;作为IP的补充
ICMP的报文区分:1)差错报文:回应网络错误。2)查询报文:查询网络信息。
【传输层】:为两台主机提供的应用程序提供端对端的通信:
端对端:只关心通信的起始端和目的端,并不关心数据包的中转过程。
(1)TCP:(transmission control protocal)为应用层提供可靠的【超时重传数据确认的方式】的面向连接,基于流的服务。
(2)UDP(user control transmission protocol):为应用层提供不可靠的,无连接的基于数据包的服务。
(3)SCTP(stream control transmission protocol):流控制传输协议,为因特网上传输电话信号而设置的服务。
【应用层】
ping :利用ICMP报文检测网络
Telnet:远程登录协议,在本地远程分配任务
OSPF(open shortest path first)开放最短的路径优先,动态更新协议,用于路由器之间的通信
DNS(domain name service)域名服务协议。提供机器域名到IP 地址的功能转换。
【注意】应用层能跳过IP,也就是传输层到,网络层的的。
DNS是一套分布式的域名服务系统,每个DNS服务器上存在大龄的机器域名和IP地址映射,并且动态更新的DNS标志字段。DNS:标记查询和应答。
QR | Opcode | AA | TC | RD | RA | ZERO | Rcode |
其中:QR查询/应答标志(0;查询标志,1 应答报文)
Opcode:定义查询和应答的类型,标准查询0,反向查询1,请求服务器状态2
AA: 授权应答标志; TC:截断标志,RD递归查询,RA,允许递归标志,仅仅由应答报文使用,DNS服务器,支持递归查询。1;zero, Rcode:应答状态,无错误。
封装:应用数据发送到物理网络协议之前,将沿着协议栈从上往下依次传递,每一层都在协议上层协议的基础上加上自己的头部信息。
比如:以太网头部+IP头部+TCP/UDP+APdata+以太网尾部
TCP+APdata:tcp协议为通信双方维持一个链接,并且在内核中存储相关数据。TCP头部信息和tcp内核缓存器
UDP:不需要为应用层数据保存副本,当一个UDP数据报备发送成功后,UDP内核缓冲区中该数据报被丢弃了。
常用的势力:帧
【分用】【demultiplexing】
通过分用(demultiplexing)使帧到达目的主机沿自底向上依次传递时候,各层协议依次处理帧中本层负责头部信息。以获取所需要信息,并最终将处理后帧交给目标的应用程序。