之前一直忙于项目的进度,终于有时间把网络知识系统的学习一下了,记下笔记,以备不时之需,网络大神请跳过
/*****************************我是华丽的分割线***************************/
网络可以分为四层(有的说是七层,具体内容请自行百度,这东西除了面试的时候可能会用到,其他时候根本没啥鸟用):
分别是应用层、运输层、网络层、链路层。
协议分层:
1)应用层:负责处理特定的应用程序细节。例如:Telnet FTP http 等,并且应用层的协议99%都是 TCP/UDP的上层封装而来的。
2)运输层:为两台主机上的应用程序提供端到端的通信,也就是服务于应用层的下一层协议。著名的TCP UDP 就是位于这一层。
A)TCP:Transmission Control Protocol(传输控制协议),TCP为两台主机提供可靠的数据通信。
B)UDP :User Datagram Protocol(用户数据报协议),它为两台主机提供一直快速的通信方式,并不能保证数据的可靠性。
3)网络层:运输层的下一层,用于处理分组在网络中的活动。这一层包括:IP协议,ICMP协议,IGMP协议。
A)IP : Internet Protocol(网际协议)。他是TCP UDP的下一层协议,主要负责将TCP/UDP数据添加上目标地址的IP地址。当然IP协议也可以被应用层直接调用。
B)ICMP:(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。当然ICMP也可以被应用程序直接调用。大家常用的Ping命令就是ICMP协议。
C)IGMP: (Internet Group Management Protocol)Internet组管理协议。它是用来把一个UDP的数据包多播到多个主机。
4)链路层:就是常说的以太网层或者MAC层。通常包含操作系统中的设备驱动和计算机中对应的网络接口。除此之外,它还包含ARP和RARP协议。
A)ARP:(Address Resolution Protocol)地址解析协议,是根据IP地址获取物理地址的一个协议。
B)RARP协议(Reverse Address Resolution Protocol),反向地址转换协议,也就是ARP的反向协议。