名词解释:

协议:

HTTP:HyperText Transfer Protocol,超文本传输协议,属于应用层的协议

FTP:File Transfer Protocol,文件传输协议,相比于HTTP协议更加复杂,控制文件双向传输,比如:上传,下载都用到了这个协议

IP协议:Internet Protocol,网际协议,位于网络层。作用是把各种数据包传送给对方,要保证传送到对方那里需要满足两个重要条件,IP地址和Mac地址(Media Access Control Address)

ARP:Address Resolution Protocol,一种用以解析地址的协议,根据通信方的IP地址可以反查出对应的MAC地址

TCP:Transmission Control Protocol,传输控制协议,将应用层发向传输层的数据流,TCP将数据流分割成适当长度的报文段

UDP:User Data Protocol,用户数据报协议,不可靠的数据报协议,为网络层以上和应用层以下提供接口,它一旦把应用程序发送给网络层的数据发送出去就不保存数据备份,所以说它不可靠。

URI:Uniform Resource Identifier,统一资源标识符

URL:Uniform Resource Locator,统一资源定位符,就是使用浏览器访问web页面时需要输入的网页地址

URI和URL的区别:URI是个纯粹的句法结构,用于指定标识Web资源的字符串的各个不同部分。URL是URI的一个特例,它包含了定位Web资源的足够信息

RFC:Request for Comments,征求修正意见书,用来制定HTTP协议技术标准的文档,可以看做是互联网的设计文档,如果不按照RFC标准执行则可能导致无法通信

路由器:router,是连接因特网中各局域网、广域网的设备,它会根据信道的情况自动选择和设定路由,以最佳路径,按前后顺序发送信号。 路由器是互联网络的枢纽

路由选择:IP协议发送数据时会经过路由选择,具体解释见下

IP地址:节点被分配到的地址,与域名相对应

Mac地址:网卡所属的固定地址,通常一台PC机对应一个Mac地址,且不再改变

DNS:Domain Name System,域名系统,因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。比如:www.baidu.com 对应IP为 183.232.231.173,在地址栏中输入这两个内容都可以访问到百度页面,域名是www.baidu.com,方便用户记忆

TCP/IP协议族:

不同的硬件、操作系统之间的通信,所有的这一切都需要一种规则,从电缆的规格到IP地址的选定方法、寻找异地用户的方法、双方建立通信的顺序,以及web页面显示需要处理的步骤,等等。这样把与互联网相关联的协议集合起来总称为TCP/IP是在IP协议的通信过程中,使用到的协议族的统称。

TCP/IP的分层管理

  应用层:决定向用户提供应用服务时通信的活动,TCP/IP协议族内预存了各类通用的应用服务。比如FTP和DNS服务就是其中两类。

  传输层:传输层对上层应用层,提供处于网络连接中的两台计算机之间的数据传输,在传输层中还有两个性质不同的协议,TCP和UDP

  网络层(网络互连层):用来处理在网络上流动的数据包。数据包是网络传输的最小数据单位。该层规定了通过怎样的路径(所谓的传输路线)到达对方计算机,并把数据包传送给对方。与对方计算机之间通过多台计算机或网络设备进行传输时,网络层所起的作用就是在众多的选项内选择一条传输路线,IP协议

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

发送信息时:

  (发送端)应用层  ——>   传输层  ——>   网络层  ——>   链路层(添加通信目的地地址(Mac地址))

                               |  

                               |

  (接收端)应用层  <——   传输层  <——   网络层  <——   链路层

发送端在层与层之间传输数据时,每经过一层时会被打上一个该层所属的首部信息,在接收端的层与层传输数据时,每经过一层时会把对应的首部去掉。(封装)

注:有的书上在应用层和传输层中间还有一个  会话层

IP协议所属的网络层在传送信息时需要经过路由选择,不论哪一台计算机,哪一台网路设备都无法全面掌握互联网中的细节,发送端使用ARP协议解析后发现未解析成功则会先发给某一MAC地址的路由器,再由该路由器解析后中转给下一个路由器,直到最后发往正确的地址

TCP协议所属传输层,提供可靠的字节流服务,即将大块数据分割成报文段为单位的数据包进行管理,之所以说TCP“可靠”,是因为TCP协议中采用的“三次握手”策略

发送端发送一个带有SYN标识的数据包给对方,接收端收到后回传一个带有SYN/ACK标识的数据包告诉发送端自己已经收到了,发送端再发送一个带有ACK标识的数据包,代表“握手”结束

发送端发送数据到接收端的具体过程:

URI格式:

不区分大小写,也可以使用data:或javascript:这类指定数据或脚本程序的方案名

服务器地址可以是DNS可解析的名称,或者IPv4地址名(192.168.1.1),或者IPv6地址名([0:0:0:0:0:0:0:1])

服务器端口号,可选项,省略则使用默认端口号

带层次的文件路径是指在服务器上该文件的路径

查询字符串,为可选项

片段标识符,在该页面的某一位置,可选项

HTTP——学习笔记(1)的更多相关文章

  1. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  2. PHP-自定义模板-学习笔记

    1.  开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2.  整体架构图 ...

  3. PHP-会员登录与注册例子解析-学习笔记

    1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...

  4. 2014年暑假c#学习笔记目录

    2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...

  5. JAVA GUI编程学习笔记目录

    2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...

  6. seaJs学习笔记2 – seaJs组建库的使用

    原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...

  7. CSS学习笔记

    CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...

  8. HTML学习笔记

    HTML学习笔记 2016年12月15日整理 Chapter1 URL(scheme://host.domain:port/path/filename) scheme: 定义因特网服务的类型,常见的为 ...

  9. DirectX Graphics Infrastructure(DXGI):最佳范例 学习笔记

    今天要学习的这篇文章写的算是比较早的了,大概在DX11时代就写好了,当时龙书11版看得很潦草,并没有注意这篇文章,现在看12,觉得是跳不过去的一篇文章,地址如下: https://msdn.micro ...

  10. ucos实时操作系统学习笔记——任务间通信(消息)

    ucos另一种任务间通信的机制是消息(mbox),个人感觉是它是queue中只有一个信息的特殊情况,从代码中可以很清楚的看到,因为之前有关于queue的学习笔记,所以一并讲一下mbox.为什么有了qu ...

随机推荐

  1. 郑晔谈 Moco 框架的开发:写一个好的内部 DSL ,写一个表达性好的程序

    作者:张龙 出处:http://www.infoq.com/cn/news/2013/07/zhengye-on-moco 郑晔谈Moco框架的开发:写一个好的内部DSL,写一个表达性好的程序 作者  ...

  2. BZOJ 1009 [HNOI2008]GT考试 (KMP+矩阵乘法)

    ---恢复内容开始--- 题目大意:给定一个由数字构成的字符串A(len<=20),让你选择一个长度为n(n是给定的)字符串X,一个合法的字符串X被定义为,字符串X中不存在任何一段子串与A完全相 ...

  3. cf掉分记——Avito Code Challenge 2018

    再次作死的打了一次cf的修仙比赛感觉有点迷.. 还好掉的分不多(原本就太低没法掉了QAQ) 把会做的前三道水题记录在这.. A: Antipalindrome emmmm...直接暴力枚举 code: ...

  4. STM32 HAL库使用中断实现串口接收不定长数据

    以前用DMA实现接收不定长数据,DMA的方法接收串口助手的数据,全部没问题,不过如果接收模块返回的数据,而这些数据如果包含回车换行的话就会停止接收,例如接收:AT\r\nOK\r\n,就只能接收到AT ...

  5. a.WHERE使用中单行子查询(适用于>,<,=,>=,<=等条件)

    a.单行子查询(适用于>,<,=,>=,<=等条件)    //查询工资最高的员工编号和员工名   select empno,ename   from emp   where ...

  6. ASP.NET-HTTP响应标头

    Reponse Headers 理论上所有的响应头信息都应该是回应请求头的.但是服务端为了效率,安全,还有其他方面的考虑,会添加相对应的响应头信息,从上图可以看到: Cache-Control:mus ...

  7. Java线程演示样例 - 继承Thread类和实现Runnable接口

    进程(Process)和线程(Thread)是程序执行的两个基本单元. Java并发编程很多其它的是和线程相关. 进程 进程是一个独立的执行单元,可将其视为一个程序或应用.然而,一个程序内部同事还包括 ...

  8. iOS 自己主动登录,登录过程中一直显示载入页

    iOS开发中 假设client做的人性化一点肯定会考虑自己主动登录 事实上原理非常easy,就是再首次登录成功之后将username和password存入userdefault 下次登录的时候推断us ...

  9. [jzoj 5177] [NOIP2017提高组模拟6.28] TRAVEL 解题报告 (二分)

    题目链接: https://jzoj.net/senior/#main/show/5177 题目: 题解: 首先选出的泡泡怪一定是连续的一段 L,R 然后 L 一定属于虫洞左边界中的某一个 R 也同样 ...

  10. POJ 1275 差分约束

    一堆化不等式,,,,,, 懒得写了... 请看mars_ch的blog-.. 戳戳戳戳戳 还是她给我找的错---. //By SiriusRen #include <queue> #inc ...