HTTP协议

几个基本的概念

  • 1.TCP/IP协议族

计算机与网络设备之间的信息传输需要基于相同的方法,不同设备通信之间的规则,称之为协议,而与互联网相关联的协议集合起来总称为TCP/IP,也就是说TCP/IP是互联网相关的协议集合;
此外还有说法认为TCP/IP就是指TCP/IP这两种协议,还有一种说法认为TCP/IP是 在IP协议的通信过程中,使用到的协议族的统称;

  • -----------2.TCP/IP的分层管理----------------

TCP/IP协议族按层次分别分为应用层,传输层,网络层以及数据链路层,称之为TCP/IP协议的四层网络模型:

  • 应用层

应用层决定了用户提供应用服务时通信的活动;
TCP/IP预存了各类通用的应用服务:
类似FTP(file transfer protocol 文件传输协议) ,DNS(Domain Name System)服务,HTTP协议等等;

  • 传输层

传输层对上层应用层,提供处于网络连接中的两台的计算机之间的数据传输.
个人理解传输层主要是提供各种控制,操作从应用层传输过来的数据的协议;
有两个协议TCP(Transmission Control Protocol,传输控制协议)和UDP(User Data Protocol ,用户数据报协议)

  • 网络层(网络互连层)

网络层用来处理在网络上流动的数据包,数据包是网络传输的最小数据单位.该层规定了通过怎样的路径/传输路线到达对方的计算机,并把数据包传送给对方.
与对方的计算机之间通过多态计算机或网络设备进行传输时,网络层所起的作用就是在众多的选项中选择一条作为传输路线;

  • 数据链路层(又称为链路层,网络接口层)

用来处理连接网络的硬件部分.包括控制操作系统,硬件的设备驱动,NIC(Network Interface Card,网络适配器,即网卡),及光纤等物理可见部分(还包括连接器等一切传输媒介).硬件上的范畴都在数据链路层的作用范围内.

  • -------------3.TCP/IP的通信流-----------------

在利用TCP/IP进行网络通信的时候,会通过分层的顺序与对方进行通信.发送端会从应用层往下走,而接收端则从应用层往上走;

客户端到服务器端

如上图所示:

  • 作为发送端的客户端在应用层按照HTTP协议的规定发送一个想要看某个web页面的HTTP请求;

  • 在传输层按照TCP(传输控制协议)的规定,把从应用层接收到的数据(HTTP请求报文)进行分割,并在各个报文上打上标记序号及端口号转发给网络层;

  • 在网络层按照IP协议的规定,增加作为通信目的地的MAC地址后转发给链路层;

  • 链路层实质上是硬件上的连接,通过各种硬件设备实现网络数据的交换;

  • 接收端的服务器在链路层接收到数据,按顺序向上层发送,一直发送至应用层,当传输至服务器端应用层,才算真正的接收到了客户端发送过来的HTTP请求;

  • ---------4.IP,TCP,和DNS--------------------

  • 负责传输的IP协议

IP协议(Internet Protocol,网际协议)位于网络层,其作用是搜索服务器端的地址,而为了准确无误的传输,则需要满足各种条件;其中最重要的两个条件则是IP地址和MAC地址,

  • IP地址指明了节点的分配位置;
  • MAC地址则是网卡的所属的固定地址;
    注意: IP地址是可以变换的,但是MAC地址则是网卡的固定地址,是无法变换的;

地址传输协议维基解释
当在同一局域网的一台主机希望和另一台主机直接通信的时候,这时候必须知道目的主机的MAC地址是什么?因此这时候需要ARP(Address Resolution Protocol)来将目的主机的IP地址转换为MAC地址.
但是当发送主机和目的主机不在同一个局域网的时候,这个时候即使知道目的主机的MAC地址,也无法直接发送过去,所以在这种情况下,发送主机通过ARP协议获取的MAC地址获取的将不是目的主机的真实目的地址,而是一台可以通向局域网外部的路由器的地址,当数据帧发送至这台路由器中转直至找到目的主机;

  • 确保可靠性的TCP协议

TCP协议位于传输层,,提供字节流(Byte Stream Service)服务.
所谓字节流服务,是指将大数据分割为报文段(segment)的数据包进行管理;
TCP协议通过三次握手策略(acknowledgement)来确保数据包能够准确的到达目标位置;

  • 负责域名解析的DNS服务

DNS(Domain Name System)服务是和HTTP协议一样位于应用层,提供域名到IP地址之间的解析服务;通过DNS服务可以实现:

  • 通过域名查找iP地址;

  • 通过IP地址反查域名;

  • -----------5.各种协议与HTTP协议间的关系图------------------;

从客户端到服务器端的简要过程

在这里要注意的是:

  • 最后网络层与数据链路层的搜寻目标服务器端的地址的操作时同时发生的,并不是搜寻了两次;
  • 客户端发出一个HTTP请求后,会在客户端本地的host文件中去找主机对应的ip地址,如果找不到,则会通过公网的DNS服务来解析请求的域名,将其转换为ip地址;
  • 从服务器端到客户端的流程与从客户端到服务器端的流程是一致的;

HTTP协议的基本结构

HTTP协议(Hypertext Transer Protocal ,超文本传输协议),同TCP/IP协议族的其他协议主要用于客户端到服务器端的通信;

  • ----------------1.HTTP请求报文--------------------

HTTP的请求报文主要由请求方法,请求URI,协议版本,可选的请求首部字段和内容实体构成;
在这里要注意get和post请求方法的区别在于:
(1)客户端给服务器端传输数据的方式不一样;

  • get方式通过URL地址栏传递数据;
  • post方式通过表单的方式来传递数据;

(2)安全性,GET方式在url上传递,可以被用户查看到,而post通过表单提交,相对比GET安全;

(3)传递数据的大小;GET通过URL地址栏传递数据,数据大小受浏览器和操作系统的影响,IE浏览器只能通过get传递2K左右的数据;而POST原则上不受限制,但是受服务器配置的影响,一般服务器默认允许2MB左右数据,这个可以自己设置;

(4)表单默认是通过GET提交到服务器,可以通过method属性设置提交的方式;

(5)超链接默认是GET方式请求:

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,123评论 6 490
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,031评论 2 384
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,723评论 0 345
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,357评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,412评论 5 384
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,760评论 1 289
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,904评论 3 405
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,672评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,118评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,456评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,599评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,264评论 4 328
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,857评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,731评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,956评论 1 264
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,286评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,465评论 2 348

推荐阅读更多精彩内容

  • 个人认为,Goodboy1881先生的TCP /IP 协议详解学习博客系列博客是一部非常精彩的学习笔记,这虽然只是...
    贰零壹柒_fc10阅读 5,051评论 0 8
  • 1.这篇文章不是本人原创的,只是个人为了对这部分知识做一个整理和系统的输出而编辑成的,在此郑重地向本文所引用文章的...
    SOMCENT阅读 13,049评论 6 174
  • 一、概念(载录于:http://www.cnblogs.com/EricaMIN1987_IT/p/3837436...
    yuantao123434阅读 8,333评论 6 152
  • Http协议详解 标签(空格分隔): Linux 声明:本片文章非原创,内容来源于博客园作者MIN飞翔的HTTP协...
    Sivin阅读 5,210评论 3 82
  • HTTP概述 超文本传输协议(HTTP,HyperText Transfer Protocol) 是互联网上应用最...
    曹渊说创业阅读 3,841评论 2 61