当地址栏输入www.baidu.com后会发生什么?

www.baidu.com是百度的域名,一般的网址是由   http:协议(分为https和http)     www.baidu.com(域名)

1、首先DNS会将域名解析为IP地址,网站都是以IP区访问的,域名是为了让人们记住,(IP是四组数字组成,不好记)

2、通过IP地址找到相对应的服务器,然后经过TCP的三次握手(文章下有大白话讲解),与服务器建立了连接

3、在服务器内找到相对应的数据库,返回到对应的页面

4、浏览器会解析收到的css,js,html,img,然后返回给客户端,TCP四次挥手结束

TCP三次握手

所谓的三次握手是指客户端与服务端建立连接,客户端与服务器发3个包
第一次握手:
客户端发送一个数据,请求连接
第二次握手:
服务端确认可以连接,请求客户端的连接回应
第三次握手.
客户端确认连接,连接成功
TCP四次挥手
TCP的连接的拆除需要发送四个包,为四次挥手,相当于断开连接
第一次发出客户端发出无数据请求
第二次服务端发出确认是否有数据未请求完毕?
第三次服务端发送确认已无信息发送
第四次客户端确认断开连接

原文地址:https://www.cnblogs.com/dwxbk/p/10315962.html

时间: 2024-08-11 14:52:19

当地址栏输入www.baidu.com后会发生什么?的相关文章

访问www.baidu.com后会发生什么(一次完整的网络通讯过程)

1.在浏览器中输入www.baidu.com 这意味着浏览器要向百度发送一个网页数据包,要发送数据包,需要知道对方的IP地址,这里我们只知道网址为www.baidu.com,却不知道IP地址,此时应用层协议DNS协议会帮我们把网址解析为IP地址,此时会发送一个DNS数据包给DNS服务器,DNS服务器再做出响应来告诉我们百度的IP地址为220.181.111.147,这样我们就知道百度(我们需要通信的主机)的IP地址. DNS查找过程如下:(参考来源:DNS域名解析过程) 第1步,浏览器会检查缓存

在浏览器中输入 www.baidu.com 后执行的全部过程

现在假设如果我们在客户端(客户端)浏览器中输入http://www.baidu.com,而baidu.com为要访问的服务器(服务器),下面详细分析客户端为了访问服务器而执行的一系列关于协议的操作: 1.客户端浏览器通过DNS解析到www.baidu.com的IP地址220.181.27.48,通过这个IP地址找到客户端到服务器的路径.客户端浏览器发起一个HTTP会话到220.161.27.48,然后通过TCP进行封装数据包,输入到网络层. 2.在客户端的传输层,把HTTP会话请求分成报文段,添

从浏览器地址栏输入url到页面呈现

举个栗子,从浏览器地址栏输入https://www.baidu.com 到页面呈现百度页面呈现 1.从DNS中得到链接ip地址 ①从浏览器DNS缓存 ②从系统DNS缓存中去,本机系统hosts文件中如果有映射,就返回映射的ip地址 ③从局域网路由器中DNS缓存获取映射地址 ④从DNS服务器缓存获取映射地址 ⑤服务器中查找,com->baidu->www 2.TCP连接,三次握手 ①浏览器发起,询问服务器是否支持响应 ②服务器发起,回复浏览器已准备,可以响应,正在等待 ③浏览器接收到后,发起确认

iw14.0.50来了,终于可以直接在地址栏输入url打开iw功能页面了;可以自由使用EasyUI等js框架了;显示模式对话框也不再七绕八绕惹人烦了;

示例代码已经放出!请移步使用delphi+intraweb进行微信开发1~4代码示例进行下载,虽为示例代码但是是从我项目中移出来的,封装很完备适于自行扩展和修改. iw14.0.50来了,在新的版本中最吸引我的就是增加了完善的httphandler功能:终于可以直接在地址栏输入url打开iw功能页面了:可以自由使用EasyUI等js框架了:显示模式对话框也不再七绕八绕惹人烦了:呵呵,我感觉iw第一次接近主流web开发工具了! 兴奋过了,来尝试一下吧.其实iw的坑还是挺多的,虽然已经接近主流了,但

从浏览器地址栏输入网址,到网页彻底打开,中间都发生了什么?

这是一道经典面试题,以前我以为只有我喜欢出这道题,后来在微博上发现其他技术大牛也出这道题. 这道题其实测试的不是具体特定的技术,而是对整个上网这个概念以及背后流程的理解. 我先说一下我所理解或者说我所期待的大概的答题要点,后面再解释这道题的目的和意义,实际上所谓上网这个过程分为三个大的区块,一块是客户端,一块是网络传输层,一块是服务端. 从输入网址开始,这个网址在客户端就会有一个解析,首先浏览器如果有钩子,可能会直接对这个网址做出判断和反馈,比如国内大部分第三方浏览器(IE浏览器基础上加壳的那种

浏览器地址栏输入提示功能

要求当用户在浏览器的地址栏输入地址时,浏览器能够根据用户输入的历史记录对用户现在的输入进行匹配,提示用户可能要输入的字符.大概意思就是要实现和现在浏览器差不多的效果,比如用户之前输入过aaa,abcd,abcc(简化以下,不考虑前缀"www."和后缀".com"),当用户再次在浏览器地址栏输入a时,系统能够提示aaa,aaaa,abcd,abcc.输入ab时,系统能够提示abcd,abcc. 思路:感觉可以用树的结构解决该问题,解决过程如下: 1.数据结构选择 用户

地址栏输入url按回车之后发生了什么

地址栏输入url按回车之后发生了什么? 1.我们在浏览器中输入网址 2.浏览器到DNS查找域名对应的IP地址 3. 浏览器打开TCP连接(默认端口为80),向该IP的服务器发送一条HTTP请求,如果浏览器存储了该域名下的cookie,那么cookie也会放入http请求中 4. 服务器给浏览器进行一个301永久重定向响应.5. 浏览器根据重定向地址再次进行HTTP请求. 6. 服务器分析HTTP请求,生成HTTP响应,将响应发给客户端. 7. 浏览器收到响应内容之后,生成主页框架,同时向服务端继

PHP解决搜索时在URL地址栏输入中文字符搜索结果出现乱码

这 个问题的出现的前提是本站代码采用utf-8格式,php空间当页面停留在搜索页面时,在浏览器的地址栏输入中文的关键字进行搜索时会出现乱码,在网上查找资料说 明,是因为浏览器默认将url中的中文字符编码为gb2312格式,而我的程序中的文件编码是使用的utf-8的格式,所以才会出现这个问题,但是如果是 直接使用表单提交的数据就不会出现这种问题.解决办法如下,需要PHP开启mb_string支持. if (!mb_check_encoding($word, 'utf-8')){ $word = i

连接tomcat时,输入telnet localhost 8080后无法再次输入

初次接触服务器时,一般会在本地建立一个微型服务器,今天在使用Apache的tomcat时,为了在命令行下访问服务器中webapps下的自定义资源:首先打开命令行窗口,然后输入telnet localhost 8080,弹出另一个界面,但是却出现如下无法输入的现象, 刚开始以为是本地回显功能没有开启,然后根据网上提示,开打了回显功能,但问题仍然存在,后来,找到了解决方法: 在新建一个命令行窗口,输入telnet localhost 8080 后,按Ctrl+](英文输入下的两个键) ,再按回车,输