网络协议分两个标准,一个是OSI标准(国家标准化组织定的标准),一个是TCP/IP标准(实际网络中的协议)。
TCP/IP 对应 OSI | |
TCP/IP | OSI |
应用层 | 应用层 表示层 会话层 |
主机到主机层(TCP)(又称传输层) | 传输层 |
网络层(IP)(又称互联层) | 网络层 |
网络接口层(又称链路层) | 数据链路层 |
物理层 |
上表格,来自百度百科:TCP/IP协议
以下来自《TCP/IP详解.卷一》
TCP/IP通常被认为是一个四层协议系统,每一层负责不同的功能:
1) 链路层,有时也称作数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。
2)网络层,有时也称作互联网层,处理分组在网络中的活动,例如分组的选路。在TCP/IP协议族中,网络层协议包括IP协议(网际协议),ICMP协议(Internet互联网控制报文协议),以及IGMP协议(Internet组管理协议)。
3 ) 运输层主要为两台主机上的应用程序提供端到端的通信。在TCP/IP协议族中,有两个互不相同的传输协议: TCP(传输控制协议)和 UDP(用户数据报协议)。TCP为两台主机提供高可靠性的数据通信。它所做的工作包括把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟等。由于运输层提供了高可靠性的端到端的通信,因此应用层可以忽略所有这些细节。而另一方面,UDP则为应用层提供一种非常简单的服务。它只是把称作数据报的分组从一台主机发送到另一台主机,但并不保证该数据报能到达另一端。任何必需的可靠性必须由应用层来提供。这两种运输层协议分别在不同的应用程序中有不同的用途,这一点将在后面看到。
4 ) 应用层负责处理特定的应用程序细节。几乎各种不同的TCP/IP实现都会提供这些通用的应用程序:Telnet 远程登录, FTP 文件传输协议,SMTP 简单邮件传送协议,SNMP 简单网络管理协议。
通常在工作中,我们往往会这么划分,即把物理层作为第一层,这个不和tcpip模型冲突。
名称 | 协议 | 功能 | |
---|---|---|---|
应用层 | HTTP、Telnet、FTP、TFTP | 提供应用程序网络接口 | |
传输层 | TCP、UDP | 建立端到端的连接 | |
网络层 | IP | 寻址和路由 | |
数据链路层 | Ethernet、802.3、PPP | 物理介质访问 | |
物理层 | 接口和电缆 | 二进制数据流传输 |
以下以QQ传输数据为例:
主要如下几个部分:
物理层
光纤、双绞线、wifi
数据链路层(2层)
vlan(mac地址)、qinq、stp/rstp/mstp、ARP,RARP
网络层(3层/ip层)
路由转发、ip、icmp、igmp、arp/rarp
传输层
TCP
UDP
应用层
HTTP
HTTPS
SNMP
telnet