我们从系统网络的角度分析在浏览器输入富贵论坛www.fgba.net访问后的过程:

1、客户端浏览器通过DNS解析到IP,IP地址是202.108.22.5,通过这个IP地址找到客户端到服务器的路径。客户端浏览器发起一个HTTP会话到202.108.22.5,然后通过TCP进行封装数据包,输入到网络层。
2、在客户端的传输层,把HTTP会话请求分成报文段,添加源和目的端口,如服务器使用80端口监听客户端的请求,客户端由系统随机选择一个端口如5000,与服务器进行交换,服务器把相应的请求返回给客户端的5000端口。然后使用IP层的IP地址查找目的端。
3、客户端的网络层不用关心应用层或者传输层的东西,主要做的是通过查找路由表确定如何到达服务器,期间可能经过多个路由器,这些都是由路由器来完成的工作,无非就是通过查找路由表决定通过那个路径到达服务器。
4、客户端的链路层,包通过链路层发送到路由器,通过邻居协议查找给定IP地址的MAC地址,然后发送ARP请求查找目的地址,如果得到回应后就可以使用ARP的请求应答交换的IP数据包现在就可以传输了,然后发送IP数据包到达服务器的地址。

事件顺序:
(1) 浏览器获取输入的域名网址
(2) 浏览器向DNS请求解析IP地址
(3) 域名系统DNS解析出百度服务器的IP地址 (详细介绍DNS)-通过网关出去
(4) 浏览器与该服务器建立TCP连接(默认端口号80)
(5) 浏览器发出HTTP请求,请求百度首页
(6) 服务器通过HTTP响应把首页文件发送给浏览器
(7) TCP连接释放
(8) 浏览器将首页文件进行解析,并将Web页显示给用户。

涉及到的协议:
(1) 应用层:HTTP(WWW访问协议),DNS(域名解析服务)
DNS解析域名为目的IP,通过IP找到服务器路径,客户端向服务器发起HTTP会话,然后通过运输层TCP协议封装数据包,在TCP协议基础上进行传输。
(2) 传输层:TCP(为HTTP提供可靠的数据传输),UDP(DNS使用UDP传输),HTTP会话会被分成报文段,添加源、目的端口;TCP协议进行主要工作。
(3)网络层:IP(IP数据数据包传输和路由选择),ICMP(提供网络传输过程中的差错检测),ARP(将本机的默认网关IP地址映射成物理MAC地址)为数据包选择路由,IP协议进行主要工作,相邻结点的可靠传输,ARP协议将IP地址转成MAC地址。

简单理解: 域名解析 --> 发起TCP的3次握手 --> 建立TCP连接后发起http请求 --> 服务器响应http请求,浏览器得到html代码 --> 浏览器解析html代码,并请求html代码中的资源(如js、css、图片等) --> 浏览器对页面进行渲染呈现给用户。


更多相关文章

  1. 服务器4块sas硬盘组成raid5扩容导致的数据丢失如何恢复
  2. 从0开始搭建云服务器,入门使用教程,搭建个人网站(上)
  3. 从0开始搭建云服务器,入门使用教程,搭建个人网站(下)
  4. 服务器如何有效防御DDOS攻击?可以配置香港高防吗?
  5. 小鸟云服务器 新增香港高防云服务器,抵御DDoS攻击
  6. 聊一聊如何把SSL证书安装到小鸟云服务器上
  7. 硬盘亮黄灯没有及时处理?服务器数据恢复案例
  8. 用小鸟云服务器搭建网站常用的伪静态设置规则
  9. 关于云平台,目前已售/已用的云服务器整理

随机推荐

  1. android需要看的书
  2. 编译android 源码
  3. Android 一个简单的登录界面
  4. android ndk 编译 ffmpeg
  5. Ant 命令行创建一个Android工程
  6. Android 内存笔记
  7. ch09 Android ListView
  8. android firstslide
  9. android:layout_weight
  10. [置顶] Android获取本地图片缩略图终极解