打开网页发生了什么?
浏览器输入http://www.baidu.com,回车
应用层
1、DNS(Domain Name System)解析出IP地址
2、HTTP(HyperText Transfer Protocol)生成针对目标Web服务器的http请求报文

传输层
3、TCP(Transmission Control Protocol)将HTTP请求报文按序号分割成多个报文段,把每个报文段可靠地传给对方

网络层
4、IP协议负责搜索对方的地址,一边中转一边传送ip包。

数据链路层
5、把ip包加上帧头部,封装起来。如果连的是wifi,就是手机和路由器点对点的传送帧。如果用的是流量,就是手机和基站点对点的传送帧。路由器还起到交换机的作用,甚至手机也有路由器的作用,不过只能小范围内构建局域网。网吧和学校机房,会用到集线器(广播形式)或者交换机来组建局域网。

物理层
6、不需要加头部了,网卡收到什么数据就发送什么,透明的传输比特流,电磁波充当传送媒介,发送给基站。基站能收到信号的范围也很有限,长距离传输还得靠埋在地下的光缆。

你的http请求报文经过十万八千里,来到了web服务器所在的城市。服务器通过双绞线和网卡收到了你的请求。

物理层
7、服务器网卡接收信号

数据链路层
8、去除帧头部,得到帧数据

网络层
9、去除ip头部,得到ip数据

传输层
10、去除tcp头部,得到tcp报文段的数据部分

应用层
11、去除http头部,解析请求,返回请求资源(html文件)。有专门的http服务器来处理http请求,如apache,tomcat、nginx。

顺着网线、基站,返回的数据被你的手机接收到了,手机浏览器解析出网页内容。你就看到五花八门的网页内容了。

打开网页发生了什么?相关推荐

  1. 在WPF程序中打开网页:使用代理服务器并可进行JS交互

    本项目环境:使用VS2010(C#)编写的WPF程序,通过CefSharp在程序的窗体中打开网页.需要能够实现网页后台JS代码中调用的方法,从网页接收数据,并能返回数据给网页.运行程序的电脑不允许上网 ...

  2. .bat是什么语言_简单说说当我们打开网页时,浏览器到底做了什么?

    前言:为什么我们需要掌握浏览器的原理 作为一名前端研发,平日里打交道最多的,就是各式各样的客户端. 不论你是针对pc端还是移动端,甚至是专门在微信端做前端研发,都需要跟一样东西接触--浏览器. 不知道 ...

  3. 从“在winform里打开网页功能”引发的问题探究

    今天有个同事问了一下我,怎么在winform里面打开网页啊?我们都是基于B/S的开发,很少接触winform,所以我当时就懵了,实在不知道怎么回答,所以索性说不知道.但是我又想了想,这个应该是个很简单 ...

  4. mac safari无法打开网页_苹果手机浏览器打不开网页怎么办?Safari无法打开网页的解决方法...

    苹果手机浏览器无法打开网页怎么办?估计有不少朋友在使用苹果手机过程中,可能会遇到各种各样的问题,比如在苹果手机上面打开Safari浏览器,却发现网页打不开无法上网的问题,这个实在是让人苦恼,该怎么解决 ...

  5. win10网页找不到服务器dns,教你win10打开网页提示无法解析服务器dns地址的解决教程。...

    最近有win10系统用户反馈,在win10系统中遇到了网页无法打开,提示无法解析服务器DNS,想必有很多用户都遇到过这样的问题吧,该怎么解决呢,下面小编教你win10打开网页提示无法解析服务器dns地 ...

  6. 如何解决浏览器无法打开网页问题

    今天下午,在公司安装一个小的工具软件后,出现了浏览器无法打开网页的问题,然后试了下我本机安装的所有浏览器发现都不能正常打开网页了,尝试了很多方法都无法解决,最后怒卸chrom浏览器然后重新安装以期望能 ...

  7. win10无法打开匿名级安全令牌_打开网页老提示来自网络的消息404 - 卡饭网

    电脑打开网页老提示内存不足,怎么解决? 电脑打开网页老提示内存不足,怎么解决? 电脑打开网页老提示内存不足,该怎么解决呢?到底是哪里的问题呢?具体解决步骤如下:1. 右击桌面上的"此电脑&q ...

  8. qq打开网页时提示用浏览器打开html,微信QQ打开网页时提示用浏览器打开

    微信QQ打开网页时提示用浏览器打开 一,需求分析 1.1,使用微信或QQ打开网址时,无法在微信或QQ内打开常用下载软件,手机APP等.故此需要在微信qq里提示 二,功能实现 2.1 html实现 请点 ...

  9. IE11无法打开网页,一片空白,Internet选项灰色无法点击的问题

    [2016年6月4日 星期六] [问题解决] 参考百度知道: http://zhidao.baidu.com/question/2201573055406154108.html?from=commen ...

最新文章

  1. 本田da屏怎么进wince系统_弥补小型车短板,东风本田全新LIFE“来福酱”上市
  2. 自定义html托管,10分钟搞定“傻瓜式”的静态网站搭建托管之旅
  3. 7个极具杀伤性的Linux命令
  4. 【工具分享】deepin v20.5桌面快捷方式编辑器:desktop-entry-editor
  5. 前端技术-调试工具(上)
  6. 用python做数据分析pdf_利用python进行数据分析pdf
  7. Could not find a version that satisfies the requirement Twisted=13.1.0 (from Scrapy)
  8. tar 解压到指定目录、去除前导目录
  9. HttpPrinter易桥网络打印机
  10. Ubuntu18.04解决Teamview检测为商用问题
  11. 学习双拼必看:双拼输入法的心得以及快速入门办法
  12. 结构体定义的几种方式
  13. win7系统老是弹窗怎么解决_Win7电脑右下角弹出广告如何解决?
  14. U-boot下编写代码对SPI flash进行操作
  15. linux离线安装jemalloc,jemalloc在linux上从安装到使用
  16. oracle 10g 新特性中文笔记
  17. 一分钟看懂微信服务号和订阅号到底哪个好?
  18. Interpreter(解释器模式)行为型
  19. 人工智能数学课高等数学线性微积分数学教程笔记(1. 数学内容概述)
  20. 机器学习算法优缺点总结

热门文章

  1. 如何设计数据库(2)?
  2. 【认知】反脆弱思维与框架思维
  3. CT多商户个人免签即时到账支付系统源码-thinkphp框架
  4. Redis 错误Please check the Redis logs for details about the RDB error解决
  5. android自定义颜色选择器,自定义View:Android 仿 PS 选色板
  6. Android APN的设置问题
  7. 在VIVADO下使用ILA(逻辑分析仪)引发的深思
  8. 2021CSP-J/S
  9. html中中波浪线怎么弄,css实现波浪线及立方体 (附代码)
  10. Nishang 学习笔记