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

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Stream_star/article/details/73148809

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

<1> 客户浏览器通过DNS解析到www.baidu.com的IP地址220.181.27.48,通过这个IP地址找到客户端到服务器的路径。客户端浏览发起一个HTTP会话到220.161.27.48,然后通过TCP进行封装数据包,输入到网络层。

    <2>在客户端的传输层,把HTTP会话请求分为报文段,添加源和目的端口,如服务器使用80端口监听客户端的请求,客户端由系统随机选择一个端口如5000,与服务器进行交换,服务器把相应的请求返回给客户端的5000端口,然后使用IP层的IP地址查找目的端。

    <3>客户端的网络层不用关心应用层或者传输层的内容,主要做的是通过查找路由表确定如何到达服务器,期间可能经过多个路由器,这些都是由路由器来完成的工作。<就是通过查找路由表决定通过哪个路径到达服务器>

<4>客户端的链路层,包通过链路层发送到路由器,通过邻居协议查找给定IP地址的MAC地址,然后发送ARP请求查找目的地址,如果得到回应后就可以使用ARP的请求应答交换的IP数据包现在就可以传输了,然后发送IP数据包到达服务器的地址。

DNS域名系统,其工作原理:

<1>当DNS客户机需要在程序中使用名称时,它会查询DNS服务器来解析该名称。客户机发送的每条查询信息包括三条信息:包括指定的DNS域名,制定的查询类型,DNS域名的指定类别。基于UDP服务,端口53,该应用一般不直接用用户使用,而是为其他应用服务,如果HTTP、SMTP等在其中需要完成主机名到IP地址的转换。

<2>面向连接和非面向连接的服务的特点:

    ①面向连接的服务,不需要预先建立一个联络两个通信之前,要先在双方建立起一个完整的可以彼此沟通的通道,在通信过程中,整个连接的情况一直可以被实时地监控和管理。

            ②非面向连接的服务,不需要预先建立一个联络网络两个通信节点的连接,需要通信的时候,发送节点就可以往网络上发送信息,让信息自主地在网络上传,一般在传输的过程中不再加以监控。

没有更多推荐了,返回首页