2-4小时突击计算机网络(1)
本节内容:生成HTTP请求消息、向DNS服务器查询Web服务器的IP地址、DNS服务器的作用、委托协议栈发送消息
生成HTTP请求消息
网址,URL。根据访问目标的不同,URL的写法也会不同,但它们有一个共同点,那就是URL开头的文字,即“http:”“ftp:”“file:”“mailto:”这部分文字都表示浏览器应当使用的访问方法。比如当访问Web服务器时应该使用HTTP协议。
解析URL:
web浏览器解析URL的过程
省略文件名的情况:
(a) http://www.lab.glasscom/dir/。以“/”结尾代表后面本来应该有的文件名被省略了。其实我们会在服务器上事先设置好文件名省略时要访问的默认文件名。大多数情况下是index.html或者defaul.html,这样服务器就会访问/dir/index.html或者/dir/defaul.html。
(b) http://www.lab.glasscom/。也是访问/index.html或者/ defaul.html。
(c) http://www.lab.glasscom代表访问根目录下事先设置的默认文件,跟上述一样。
(d) http://www.lab.glasscom/whatisthis whatisthis 应该理解为文件名才对,或许不应该总是将whatisthis作为文件名处理。一般:如果Web服务器上存在名为whatisthis的文件,则将whatisthis作为文件名处理;如果存在名为whatisthis的目录,则将whatisthis作为目录名来处理。
HTTP的基本思路:
请求消息保护的内容是“对什么”和“进行怎样的操作”两个部分。对于“对什么”的部分称为URI。URI的内容是一个存放网页数据的文件名或者一个CGI程序(Web服务器程序调用其它程序)。
进行怎样的操作,典型的例子包括读取URI表示的数据、将客户端输入的数据发送给URI表示的程序等。
例如,GET方法:当Web服务器收到消息后,会打开/dir1/file1.html文件并读取出里面的数据,然后将读出的数据存放到响应消息中,并返回给客户端。POST方法:数据是用户在输入框里填写的信息,当服务器收到消息后,Web服务器会将请求消息中的数据发送给URI指定的应用程序。
HTTP的主要方法:
生成HTTP请求消息:
第一行的末尾需要写上HTTP的版本号,表示该消息是基于哪个版本的HTTP规格编写的。
第二行为消息头。有些情况下还需要一些额外的详细信息,而消息头的功能就是用来存放这些消息。
发送请求后会收到响应:
响应消息的格式以及基本思路和请求消息是相同的,差别只在第一行,在响应消息中,第一行的内容为状态码和响应短语,用来表示请求的执行结果是成功还是出错。状态码是一个数字,它主要用来向程序告知执行的结果(表1.3);相对地,响应短语则是一段文字,用来向人们告知执行的结果。
HTTP状态码概要
1条请求消息中只能写1个URI。如果需要获取多个文件,必须对每个文件单独发送1条请求。
HTTP消息示例
向DNS服务器查询Web服务器的IP地址
IP地址的基本知识
生成HTTP消息之后,接下来需要委托操作系统将消息发送给Web服务器。在委托操作系统发送消息时,必须要提供的不是通信对象的域名,而是查询网址中服务器域名对应的IP地址。
TCP/IP网络是由小的子网通过路由器连接起来组成的。由一些子网通过路由器连接起来组成一个大的网络。子网可以理解为用集线器连接起来的几台计算机。
在网络中,所有的设备都会被分配一个地址。这个地址就相当于现实中某条路上的“××号××室”。其中“号”对应的号码是分配给整个子网的,而“室”对应的号码是分配给子网中的计算机的,这就是网络中的地址。“号”对应的号码称为网络号,“室”对应的号码称为主机号,这个地址的整体称为 IP 地址。
实际的 IP 地址是一串32 比特的数字,按照 8 比特(1 字节)为一组分成 4 组,分别用十进制表示然后再用圆点隔开。在 IP 地址的规则中,网络号和主机号连起来总共是 32 比特,但这两部分的具体结构是不固定的。
IP地址的表示方法
主机号部分全部为0代表整个子网而不是子网中的某台设备。主机号部分全部为1代表向子网上所有的设备发送包,即广播。
IP地址的结
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
本专栏主要是介绍嵌入式软件开发岗位的相关知识和学习攻略,为大家提供一份笔试与面试手册。包括有嵌入式软件开发岗位介绍与学习攻略;校园招聘和offer疑惑问题的介绍;在笔试方面,如何刷题为笔试作准备,提供往年笔试真题;在面试方面,提供相关知识的复习重点,提供面试真题。包括有:华为、蔚来、文远、大疆、三一、深信服、亚马逊、Intel、百度、科大讯飞、OPPO、京东、中兴、比特大陆|算能、美团等等