深度剖析TCP IP协议栈的各个层次(1)


对于网络协议有所了解的朋友,相信都知道TCP IP网络协议这个大户,那么对于TCP IP协议来说,我们需要掌握的内容还真不少,这次我们则重点讲解一下协议栈的内容。我们知道,TCP IP网络协议栈分为应用层Application)、传输层Transport)、网络层Network)和链路层Link)四层.如下图所示

图 TCP IP协议栈

图 TCP IP协议栈

两台计算机通过TCP IP协议通讯的过程如下所示

图 TCP IP通讯过程

图 TCP IP通讯过程

传输层及其以下的机制由内核提供,应用层由用户进程提供后面将介绍如何使用socket API编写应用程序),应用程序对通讯数据的含义进行解释,而传输层及其以下处理通讯的细节,将数据从一台计算机通过一定的路径发送到另一台计算机.应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部header),称为封装Encapsulation),如下图所示

图 TCP IP数据包的封装

图 TCP IP数据包的封装

不同的协议层对数据包有不同的称谓,在传输层叫做段segment),在网络层叫做数据报datagram),在链路层叫做帧frame).数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部,最后将应用层数据交给应用程序处理.

上图对应两台计算机在同一网段中的情况,如果两台计算机在不同的网段中,那么数据从一台计算机到另一台计算机传输过程中要经过一个或多个路由器,如下图所示

图 跨路由器通讯过程

图 跨路由器通讯过程


相关内容