一、TCP/IP协议族简介
TCP/IP不单单指的是TCP和IP这两个协议,而是指与其相关的各种协议。比如,HTTP(80),FTP(21),DNS(53),TCP,UDP,IP,SMTP(25)、Telnet(23)、SNMP(161)等等都是属于TCP/IP协议族的范畴。(注:协议后面的数字是它的端口号)
1、TCP/IP协议族的分层
TCP/IP协议族是分层管理的,在OSI标准中可以分为七层(应用层、表示层、会话层、传输层、网络层、数据链路层、物理层;可记为:应表会传网数物),本篇博客采用的是TCP/IP协议族中的四层(应用层、传输层、网络层、链路层)
①. 网络接口层
TCP/IP协议模型的基层,负责数据帧的发送和接收。对应OSI模型中的物理层和数据链路层,是TCP/IP的最底层,不过通常在描述TCP/IP模型时还是会划分具体为物理层(PHY)和数据链路层(MAC)。
②. 网络层
通过互联网协议将数据包封装成互联网数据包,并允许必要的路由算法。这里有4种互联协议:
- 网际协议IP:负责在主机和网络之间的路径寻址和数据包路由
- 地址解析协议ARP:获得同一物理网路中的主机硬件地址
- 网际控制消息协议ICMP:发送消息,并报告有关数据包的传送错误
- 互联组管理协议IGMP:用来实现本地多路广播路由器报告
③. 传输层
传输协议在主机之间提供通信会话,传输协议的选择根据数据传输方式而定,主要有以下2种方式:
- 传输控制协议TCP(Transmission Control Prococol):为应用程序提供可靠的通信连接,适用于要求得到响应的应用程序
- 用户数据包协议UDP(User Data Protocol):提供无连接通信,且不对传输包进行可靠性确认
④. 应用层
该层是面向用户的一层,也就是说用户可以直接操作该层,该层决定了向用户提供应用服务时的通信活动。本篇博客要聊的HTTP(HyperText Transfer Protocol:超文本传输协议)就位于该层。我们经常使用的FTP(File Transfer Protocol: 文件传输协议)和DNS (Domain Name System: 域名系统)都位于该层。FTP简单的说就是用来文件传输的。而DNS则负责域名解析的,通过DNS可以将域名(比如:www.cnblogs.com)与IP地址&#