image.png 假设网络拓补如图所示,主机属于网络N1,web服务器属于网络N2,N1和N2通过路由器互连,我们使用主机中的浏览器来访问web浏览器,当输入网址后,主机会向web服务器发送请求,web服务器收到请求后,将其解析为具体的网页内容显示出来。 应用层按HTTP协议的规定,构建一个HTTP请求报文,应用层将HTTP报文交付给运输层处理,运输层给HTTP请求报文添加一个TCP首部,使之成为TCP报文段。首部作用就是为了区分应用进程,以及实现可靠传输。运输层将TCP报文段交付给网络层处理,网络层给TCP报文段添加一个IP首部,使之成为IP数据报,该首部的作用主要是为了使IP数据报可以在互联网上传输,也就是被路由器转发。网络层将IP数据报交付给数据链路层处理,数据链路层给IP数据报添加一个首部和一个尾部使之成为帧。数据链路层将帧交付给物理层,物理层将帧看作是比特流,由于网络N1是以太网,因此物理层还会给该比特流前面添加前导码。 物理层将信号变化为比特流,然后去掉前导码后,将其交付给数据链路层,这实际上交付的是帧。数据链路层将帧的首部和尾部去掉后,将其交付给网络层,这实际上交换的是IP数据报,网络层解析IP数据报的首部,从中提取出目的网络地址,然后查找自身的路由表,确定转发端口,以便进行转发,网络层和IP数据报交付给数据链路层,数据链路层给IP数据报添加一个首部和一个尾部使之成为帧,数据链路层将帧交付给物理层,物理层将帧看作是比特流。由于网络N2是以太网,因此物理层还会给该比特流前面添加前导码,物理层将添加前导码的比特流变换成相应的信号发送给传输媒体,信号通过传输媒体到达web服务器。