1.1使用HTTP协议访问Web
通过发送请求获取服务器资源的Web浏览器等,都可称为客户端(client);
Web使用一种名为HTTP(HyperText Transfer Protocol,超文本传输协议)的协议作为规范,完成从客户端到服务器端等一系列运作流程。
而协议是指规则的约定。Web是建立在HTTP协议上通信的。
1.2HTTP的诞生
最初的设想是:借助多文档之间相互关联形成的超文本(HyperText),连成可相互参阅的WWW(World Wide Web,万维网)。
现在已提出3项WWW构建技术,分别是:
-
把SGML作为页面的文本标记语言的HTML; -
作为文档传输协议的HTTP; -
指定文档所在地址的URL(Uniform Resource Locator,统一资源定位符)。
www这一名称,是Web浏览器当年用来浏览超文本的客户端应用程序的名称。现在则用来表示这一系列的集合。
1.3网络基础TCP/IP
通常使用的网络是在TCP/IP协议族的基础上运作的。而HTTP属于他内部的一个子集。
计算机和网络设备要相互通信,双方就必须基于相同的方法。比如,如何探测到通信目标、由那一边先发起通信、使用哪种语言进行通信、怎样结束通信等规则都需要事先确定。
TCP/IP的分层
TCP/IP协议族中最重要的就是分层。
TCP/IP协议族按层次分别分为以下4层:应用层、传输层、网络层和数据链路层。
分层是有好处的:
-
如果互联网只由一个协议统筹,某个地方需要改变设计时,就必须把整个部分整体替换掉。 而分层之后只需把变动的层替换掉即可。把各层之间的接口部分规划好之后,每个层次内部的设计就能够自由改动了。 -
分层之后设计也变得更简单,每一层只需要考虑分派给自己的任务就可以了,而不需要考虑其他的层次。
TCP/IP协议族各层的作用如下:
物理层
把电脑连接起来的物理手段,常见的方式有光缆、电缆、双绞线等。传输0、1电信号
数据链路层
单纯的电信号0和1计算机是无法直接解读的,于是需要规定一种协议表示每个信号的意义,占据主导地位的是以太网协议,它规定了一组电信号构成一个数据包(叫做帧)。每一帧都包含标头和数据两部分,标头包含数据的发送者、接收者、数据类型等,“数据”这是数据包的具体内容。
有了数据包,还需要知道接收者的地址。以太网规定,接入网络的所有设备都必须有网卡接口,每个网卡都有一个mac地址,数据包就是从一块网卡传递到另一块网卡。
有了mac地址,如果计算机在子网内,可以通过ARP协议得到对方的MAC地址,然后通过广播的形式把数据包发送给子网内的所有计算机。计算机通过对比MAC地址决定是否接受数据包。
ARP协议
arp协议功能:广播的方式发送数据包,获取目标主机的mac地址。
在以太网环境,为了正确的向目的主机传送报文,必须把目的主机的32位IP地址装换成目的主机的48位以太网的地址(MAC地址)。也就需要在互联层有一个服务或功能将IP地址转换成相应的物理地址(MAC地址),这个服务或者功能就是ARP协议。
ARP会存放目标mac和目标IP,这个数据包会以广播的方式在发送端所处的子网内传输,所有主机接收后拆开包,发现目标ip为自己的,就响应并返回自己的mac,否则丢弃。
网络层
世界大网络私有一个个彼此隔离的局域网组成,以太网报只能在局域网内发送,一个局域网是一个广播域。
以太网的广播包只能在一个广播域内发送,跨广播域通信只能通过路由转发。
于是网络层又引入了一套地址叫做网络地址,规定网络地址的协议叫做IP协议。
这样一个计算机就有两个地址,MAC地址和IP地址。这两个地址是没有任何联系的,MAC地址是绑定在网卡上的,而IP地址是管理员分配的。
IP协议:
IP协议概念:规定网络地址的协议叫IP协议,他定义的地址称之为IP地址,它规定网络地址由32位2进制表示。
子网掩码
所谓子网掩码,就是表示子网络特征的一个参数。他在形式上等同于IP地址,也是一个32位二进制数字,它的网络部分全部为1,主机部分全部为0.比如,IP地址172.16.10.1,如果已知网络部分是前24位,主机部分是后8位,那么子网掩码就是255.255.255.0.
知道了子网掩码,我们就能判断,任意两个IP地址是否处在同一个子网络。
如何判断是否在同一个子网络判断方法:
A的IP地址&子网掩码是否等于B的IP地址&子网掩码
如果相同就在同一个子网络,否则就不在。
现在每台计算机都有两个地址,一个MAC地址,一个IP地址。
IP地址
IP地址范围:0.0.0.-255.255.255.255
ip地址分为2个部分,
IP地址分类:
A类IP地址:一个A类IP地址由1字节的网络地址和3字节主机地址组成,网络地址的最高位必须是“0”,地址范围从1.0.0.0-126.0.0.0.可用的A类网络有126个,每个网络能容纳1亿多个主机。
B类IP地址:一个B类IP地址由2个字节的网络地址和2个字节的主机地址组成,网络地址的最高位必须是“10”,地址范围从128.0.0.0到191.255.255.255。可用的B类网络有16382个。
每个网络能容纳6万多个主机。
C类IP地址:一个C类IP地址由3字节的网络地址和1字节的主机地址组成,网络地址的最高位必须是:“110”。范围从192.0.0.0到223.255.255.255。C类地址每个网络可容纳254个主机。(* .* .* .0是保留IP,是一个网络地址,用来标识网络本身,也就是人们常说的网段(但是必须将子网掩码设为255.255.255.0)。 * .* .* .255作为广播地址,用于向网络中所有的设备广播分组。)
D类IP地址:D类地址第一个字节以“1110”开始,它是一个专门保留的地址。他并不指向特定的网络,目前这一类地址被用在多点广播中。多点广播地址用来一次寻址一组计算机,他表示共享同一协议的一组计算机。
E类IP地址:以“11110”开始,为将来使用保留。
ICMP协议
ICMP(网络控制报文)协议一般用来检测网络是否通畅,基于ICMP协议的工具主要有Ping(检测目标是否可达)和traceroute(从当前主机到某地址一共经过多少跳路由)。
传输层:
网络层的IP帮我们区分子网,以太网层(数据链路层)的mac帮我们找到主机,还需要通过端口来标识主机上的应用程序,这就是运输层的由来。
端口即应用程序与网卡关联的编号。
在传输层中有两个性质不同的协议:
TCP(Transmission Control Protocol)传输控制协议和
UDP(User Data Protocol)用户数据报协议
TCP可靠的缘故:只要得不到确认,就重新发送数据包,直到得到对方的确认为止。
应用层:
应用层决定了向客户提供应用服务时通信的活动。
TCP/IP协议族内预存了各类通用的应用服务。
比如,FTP(FIle Transfer Protocol)文件传输协议
和DNS(Domain Name System)域名系统。HTTP协议也在该层。
|