Web网络基础概述

Web是website(网站)的简称,你知道我们平时在网站上地址栏中输入网址时,web界面是如何呈现的吗,你知道你的每一次点击都会传递出什么信息吗?

web页面上的内容当然不能凭空产生,简单来说,在地址栏中输入指定的URL后,浏览器从web的服务器端获取到文件资源等信息,进而把信息呈现在网站页面上。通常我们把用户使用的能够发出请求命令的web浏览器称作客户端,客户端把请求命令发送给服务器,服务器将传递过来的命令转存到数据库,我们在大学学习的通常都是Mysql,但现在在互联网公司使用的大都是Nosql,但本质上语言都是大同小异的。服务器通常将HTTP协议(HyperText Transfer Protocol )作为网络通信的规范,所以可以说web就是建立在HTTp协议上进行通信的。

在这里插入图片描述

我也仍然在学习的过程中,对于Mysql、HTTP、TCP/IP等了解还有待进一步提高,在这里就把我自己浅显的认识写下来,供大家谈论、批评。

在HTTP诞生之前,互联网还是属于少数人的概念,直到超文本的概念被提出来,形成了所谓的WWW万维网后, 互联网才开始逐渐走进大众的事业。HTTP问世于1990年,当时还没有被作为正式的标准建立,因此被称为HTTP/0.9,在1996年5月被正式建立,命名为HTTP/1.0,该版本的HTTP至今仍广泛应用于服务器端,1997年发布的HTTP/1.1版本就是目前主流的最新版本。

在了解HTTP之前,有必要先了解下TCP/IP协议族。我们日常使用的绝大多数网络(包括互联网)都是在TCP/IP族协议的基础上运作的,HTTP也是TCP/IP内部的一个子集。

计算机及相关设备要进行工作,就一定要基于相同的方法,在所有方面比如,由哪一边发起通信、使用哪种语言进行信息传递、如何结束通信等都要事先确定,不同的硬件、操作系统之间都要遵循这种规则,这种规则就称为协议(Protocol)。广义的来说,TCP/IP协议族就是互联网上所有相关各类协议族的总称;狭义的说,TCP/IP也可以指TCP和IP两种协议本身。

TCP/IP协议的一个重要的特征就是分层管理,按照层次分为了4层:应用层、传输层、网络层、数据链路层。这种分层的操作能带来不少好处,如果互联网只由一个协议统筹管理,那么某个地方需要修改时,就必须要把整体都替换掉,会加大工作量;但是分层之后就只需将所在层替换掉就好了,极大的方便了互联网协议的修改;将各层之间的接口规划好以后,每个层次内部就可以随意改动了。分层之后,各个层之间的工作也相对变得容易,一个层只需要考虑给他分配的任务就ok,不用去理会其他层是怎样工作的。这里有点类似我们计算机编程语言中的封装处理。

下面分别介绍下TCP/IP协议族各层的作用。

应用层:

直接面向用户,为用户提供通信服务,其中典型的服务就是HTTP、FTP和DNS,

传输层:

对接上层应用层,提供处于网络连接中的两台计算机之间的数据传输,主要有两个协议,TCP和UDP。

网络层:

用来处理网络上流动的数据包,该层规定了通过怎样的路径传输数据包的。

链路层:

用来处理网络连接的硬件部分,包括底层基础的架构,比如操作系统、硬件光驱、甚至架设的光纤光缆,以及一切物质的传输媒介。
这个实在网上找到的TCP/IP通信的传输流:

在这里插入图片描述
在利用TCP/IP进行网络通信时,会逐层按顺序与对方进行通信,发送端从应用层到链路层,接收端从链路层到应用层。

这里按照命令处理的逻辑顺序走一遍。当用户在网站上输入地址后,客户端就发出了浏览某个web界面的HTTP请求;为了便于传输,在传输层通过TCP协议把从应用层接收到的数据进行分割,在各个报文上做好标记序号后发给网络层;网络层给数据附加作为通信地址的MAC地址后转发给链路层,这样就贯穿了整个TCP/IP层接收端的服务器在链路层接收到数据后,按照原路进行返回发送,当数据传输到链路层后,才算真正接收到客户端发过来的HTTP请求。
在这里插入图片描述

发送端在发送信息的过程中,每经过一层就会把该层的首部信息附加到相关数据上;相反,接收端接受到数据信息时,也经过一层层而脱去带着的首部信息

下面简单介绍几个重要的协议:

IP协议——负责进行传输

IP协议位于网络层,从TCP/IP的名字就能看出来,IP的重要性占到了多大的分量。但是这里要做一个区分,我们这里说的IP不是指IP地址,IP地址仅仅指明了节点被分配到的地址,而IP协议是确保将数据传输到对方那里的协议,其中重要的条件就是IP地址和MAC地址,因此,IP协议包括IP地址。

IP地址指明了节点被分配到的地址,而MAC地址则是网卡所属的固定地址,IP地址可以和MAC地址进行配对,IP地址可以更换,但是MAC地址是不能更换的。
IP之间的通信发生子啊同一个局域网内的概率很小的,通常都需要多台计算机进行转接才能进行通信。在中转过程中,会利用下一站中转设备的MAC地址来搜索他的下一个中转目标,此时就会采用ARP协议(ARP是一种解析地址的协议,通过ARP解析后,根据对方的IP地址就能反查出该IP对应的MAC地址)。

TCP协议——确保数据到达

TCP位于传输层,主要提供可靠的字节流服务,就是在传输过程中,为了方便传输,将大块的数据分割成小的方面分开进行传输,这种分割传输较为精准。一句话概括,就是TCP为了能传输大数据才将数据进行分割,同时TCP协议能够确保数据是否准确到达了对方那里。
为了确定传输的准确性,TCP协议采取了三次握手的策略:TCP将数据传输出去后,他回向对方发送带SYN标志的数据包给接收端,接收端接收到后,回传一个带有SYN/ACK的数据包,用来传达确认信息,然后发送端再次发送ACK数据包给接收端,此时代表握手结束。

DNS——负责解析域名和IP地址

DNS和HTTP一样位于应用层,他主要提供域名和IP地址之间的解析服务。计算机既可以被赋予IP地址,也可以被赋予域名和主机名,IP地址通常都是一串带点的数字,比如“192.163.65.168”;而域名则是我们通常看到的网址,比如“www.baidu.com”。人们通常不喜欢使用数字来进行IP访问,相比之下,大家都更偏向于使用域名,但是计算机不能识别出域名。为了协调解决上面这个问题,DNS服务诞生了,DNS可以提供从IP到域名、和从域名到IP的双向查询服务。

最后再简单介绍下URI和URL:
URI:统一资源标识符
URL:统一资源定位符
我们日常使用浏览器访问web页面时需要输入的就是URL,比如"http:/baidu.com"。

相关参考书籍:图解HTTP协议 [上野宣] 人民邮电出版社

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值