http协议入门(一)

下午闲来没事,看了看关于http协议的一些资料,就想着写一些东西。。。。。。

我自己写的随笔一般是偏学习笔记性质的,或者一点个人理解,适合新人,大牛可以忽略这个。。。。。。

顺便说一句,这本书个人感觉不错,想了解的大家可以搜来看看——《图解http》

当我们在浏览器的地址栏中输入网址,然后点击回车,接着,浏览器就会呈现出我们需要的web界面,那么,这个界面是怎么产生的?

web的界面是根据我们输入的URL(网址、地址),浏览器从服务器端获取对应的文件资源等信息,然后显示在浏览器上面。

像这种通过发送请求获取服务器资源的web浏览器等,都可以称之为客户端(client)

web使用http(超文本传输协议)协议作为规范,来完成从客户端到服务端等一系列的运作流程,而协议指的就是规则的约定,可以说,web是建立在http协议上进行通信的

关于http的产生和发展,这里就不赘述了,有兴趣的童鞋可以百度。。。。。。

为了理解http,有必要简单介绍下tcp/ip协议族

计算机与网络设备之间互相通信,双方就必须基于同样的方法。比如,如何发现通信目标,由谁发起通信,使用什么语言通信,怎么结束通信都需要事先确定,所有的这些都需要一种规则,这种规则就叫做协议

协议中存在多种的内容。从电缆的规格到ip地址的选定方法,寻找异地用户的方法,建立通信的顺序,以及web页面显示需要处理的步骤等等

像这样把与互联网相关联的协议集合起来统称为tcp/ip

tcp/ip的分层

tcp/ip很重要的一个特点就是分层。按照层次分为以下四层:应用层,传输层,网络层和数据链路层

分层的好处:如果互联网只由一个协议统筹,那么某一地方出问题,整体都会出现问题,无法使用;分层后,只需要替换出现问题的或者需要修改的即可,而且分层后,针对具体的设计也变得更为简单

应用层:体系的最高层,应用进程间通信交互的规则

tcp/ip协议族预存了各类通用的应用服务,比如:

ftp:文件传输协议

dns:域名系统协议

http:万维网应用协议

smtp:电子邮件协议

以上几种是常用的几种,还有很多其他的协议,感兴趣的可以找找其他专业的书籍看看

传输层:提供处于网络连接中的两台计算机间的数据传输,其中包括tcp和udp两种性质不同的协议

tcp:传输控制协议,传输的单位为报文段,提供面向连接的,可靠的数据传输服务

udp:传输单位为用户数据报,它是尽最大努力的提供数据传输服务,不保证可靠性

网络层:又名网络连接层

用来处理在网络上流动的数据包(封装)。数据包是网络传输的最小数据单位。该层规定了通过怎样的路径到达大对方计算机并把数据包传给对方

链路层:又名数据链路层,网络接口层

处理连接网络的硬件部分。比如控制操作系统、硬件的驱动、网络适配器、光钎等

数据的封装

用户端发送一个请求,从应用层开始,一直到链路层,每一层都会被打上该层所属的首部信息;反之,接收端在层与层之间传输时,没经过一层会去掉该层的首部信息,这种做法叫做封装

与http密切相关的协议

IP协议:位于应用层,作用是把各种数据包传送给对方,而要准确的把数据传送给对方,就需要满足两个各类条件,其中有2个很重要的条件:ip地址和mac地址

ip地址相信有点基础的人都知道,就是节点被分配到的地址,mac地址则是指网卡所属的固定地址,ip和mac地址可以进行配对

ip间的通信依赖于mac地址,在信息传输中,有时候由于中转太多,因此会采用ARP协议,这是个用来解析地址的协议,通过ip地址就可以反查出对应的mac地址

tcp协议:位于传输层,确保传输传输的可靠性

数据传输中为了传输方便,会将大块数据分割成报文段,而tcp协议能确认数据最终是否传送给对方

为了准确传输,传输中采用了三次握手策略(这种手段可以理解多多次确认,来确保数据传输的可靠性)

dns协议:负责域名解析,位于应用层,提供域名到ip地址见的解析

通过域名查找ip地址,或者逆向从ip地址反查域名

URL和URL

URL:统一资源定位符:表示资源的地点,具体指向(门牌号)

URI:统一资源标识符:用字符串标识某些互联网资源(该门牌号的地方具体有什么资源)

URL是URI的子集

这篇随笔主要内容是一些http相关的基础的东西,下一篇开始介绍http协议的构成,报文的格式,发送的数据类型等等。。。

时间: 2024-10-14 05:26:51

http协议入门(一)的相关文章

互联网协议入门(一)

转:http://www.ruanyifeng.com/blog/2012/05/internet_protocol_suite_part_i.html 我们每天使用互联网,你是否想过,它是如何实现的? 全世界几十亿台电脑,连接在一起,两两通信.上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗? 互联网的核心是一系列协议,总称为"互联网协议"(Internet Protocol Suite).它们对电脑如何连接和组

互联网协议入门详解(转)

我们每天使用互联网,你是否想过,它是如何实现的? 全世界几十亿台电脑,连接在一起,两两通信.上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗? 互联网的核心是一系列协议,总称为"互联网协议"(Internet Protocol Suite).它们对电脑如何连接和组网,做出了详尽的规定.理解了这些协议,就理解了互联网的原理. 下面就是我的学习笔记.因为这些协议实在太复杂.太庞大,我想整理一个简洁的框架,帮助自己从总体

互联网协议入门(一) (转)

来自http://www.ruanyifeng.com/blog/2012/05/internet_protocol_suite_part_i.html 我们每天使用互联网,你是否想过,它是如何实现的? 全世界几十亿台电脑,连接在一起,两两通信.上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗? 互联网的核心是一系列协议,总称为"互联网协议"(Internet Protocol Suite).它们对电脑如何连接和组

阮一峰:互联网协议入门

阮一峰:互联网协议入门 2015-12-29 阮一峰 程序员之家 作者:阮一峰 原文:http://www.ruanyifeng.com/blog/2012/06/internet_protocol_suite_part_ii.html 我们每天使用互联网,你是否想过,它是如何实现的? 全世界几十亿台电脑,连接在一起,两两通信.上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗? 互联网的核心是一系列协议,总称为”互联网协议”

互联网协议入门(二)【转】

原文地址:点击前往 上一篇文章分析了互联网的总体构思,从下至上,每一层协议的设计思想. 这是从设计者的角度看问题,今天我想切换到用户的角度,看看用户是如何从上至下,与这些协议互动的. ============================================================== 互联网协议入门(二) 作者:阮一峰 (接上文) 七.一个小结 先对前面的内容,做一个小结. 我们已经知道,网络通信就是交换数据包.电脑A向电脑B发送一个数据包,后者收到了,回复一个数据包,从

互联网协议入门(一)转载

我们每天使用互联网,你是否想过,它是如何实现的? 全世界几十亿台电脑,连接在一起,两两通信.上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗? 互联网的核心是一系列协议,总称为"互联网协议"(Internet Protocol Suite).它们对电脑如何连接和组网,做出了详尽的规定.理解了这些协议,就理解了互联网的原理. 下面就是我的学习笔记.因为这些协议实在太复杂.太庞大,我想整理一个简洁的框架,帮助自己从总体

互联网协议入门(二)转载

上一篇文章分析了互联网的总体构思,从下至上,每一层协议的设计思想. 这是从设计者的角度看问题,今天我想切换到用户的角度,看看用户是如何从上至下,与这些协议互动的. ============================================================== 互联网协议入门(二) 作者:阮一峰 (接上文) 七.一个小结 先对前面的内容,做一个小结. 我们已经知道,网络通信就是交换数据包.电脑A向电脑B发送一个数据包,后者收到了,回复一个数据包,从而实现两台电脑之间的

互联网协议入门(一)【转】

原文地址:点击前往 我们每天使用互联网,你是否想过,它是如何实现的? 全世界几十亿台电脑,连接在一起,两两通信.上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗? 互联网的核心是一系列协议,总称为”互联网协议”(Internet Protocol Suite).它们对电脑如何连接和组网,做出了详尽的规定.理解了这些协议,就理解了互联网的原理. 下面就是我的学习笔记.因为这些协议实在太复杂.太庞大,我想整理一个简洁的框架,帮助

互联网协议入门(一)(转)

我们每天使用互联网,你是否想过,它是如何实现的? 全世界几十亿台电脑,连接在一起,两两通信.上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗? 互联网的核心是一系列协议,总称为"互联网协议"(Internet Protocol Suite).它们对电脑如何连接和组网,做出了详尽的规定.理解了这些协议,就理解了互联网的原理. 下面就是我的学习笔记.因为这些协议实在太复杂.太庞大,我想整理一个简洁的框架,帮助自己从总体

互联网协议入门(二)(转)

(接上文) 七.一个小结 先对前面的内容,做一个小结. 我们已经知道,网络通信就是交换数据包.电脑A向电脑B发送一个数据包,后者收到了,回复一个数据包,从而实现两台电脑之间的通信.数据包的结构,基本上是下面这样: 发送这个包,需要知道两个地址: 对方的 MAC 地址 对方的 IP 地址 有了这两个地址,数据包才能准确送到接收者手中.但是,前面说过,MAC 地址有局限性,如果两台电脑不在同一个子网络,就无法知道对方的 MAC 地址,必须通过网关(gateway)转发. 上图中,1号电脑要向 4 号