网络是怎么连接的
举例 浏览器 <–> 服务器的交互
实现这样的交互,两者之间维护一个请求和响应的机制(很多协议栈),这种机制是由操作系统中的网络控制软件, 以及交换机、 路由器等设备分工合作来实现的, 它的基本思路是将数字信息分割成一个一个的小块,然后装入一些被称为“包”( Packet) 的容器中来运送。主要包括以下六个方面。
主要内容 | |
---|---|
Web浏览器 | 从URL生成完整的请求消息,封装数据,发送 |
协议栈、网卡 | 将从浏览器接收到的消息打包, 然后加上目的地址等控制信息,协议栈会将包交给网卡( 负责以太网或无线网络通信的硬件)。 然后, 网卡会将包转换为电信号并通过网线发送出去。 |
集线器、交换机、路由器 | 接入互联网,网卡发送的包会经过交换机等设备, 到达用来接入互联网的路由器。 路由器的后面就是互联网, 网络运营商会负责将包送到目的地, 就好像我们把信投到邮筒中之后, 邮递员会负责把信送给收件人一样。 |
接入网、网络运营商 | 接下来, 数据从用来接入互联网的路由器出发, 进入了互联网的内部。接入网连接到签约的网络运营商,接入点的实体是一台专为运营商设计的路由器, 我们可以把它理解为离你家最近的邮局。 连接到巨大的互联网络,直到找到请求的服务器位置 |
防火墙、缓存服务器 | 防火墙会对进入的包进行检查,看看有没有危险的包混在里面,之后网络包接下来可能还会遇到缓存服务器,对于可重复利用的资源 |
Web服务器 | 当网络包到达 Web 服务器后, 数据会被解包并还原为原始的请求消息, 然后交给 Web 服务器程序。 和客户端一样, 这个操作也是由操作系统中的协议栈( 网络控制软件) 来完成的。 接下来,Web 服务器程序分析请求消息的含义, 并按照其中的指示将数据装入响应消息中, 然后发回给客户端。 |