1、TCPTransmission Control Protocol(传输控制协议)---应用程序之间的通信(传输----重组)
在数据传送之间将它们分割成IP包,然后再它们到达的时候将它们重组。
双方“握手”后,将两个应用程序之间建立的一种端对端的一种协议。
2、IP:计算机之间的通信---将数据分割成小包(打包)
3、UDP User Datagram Protocol(用户数据包协议)----应用程序之间的简单通信
UDP是一种“端对多”的广播式协议,只管广播并不管数据,会产生丢包,所以不安全。
TCP和UDP的区别
TCP(Transmission Control Protocol,传输控制协议)是基于连接的协议,也就是说,在正式收发数据前,必须和对方建立可靠的连接。一个TCP连接必须要经过三次“对话”才能建立起来
UDP(User Data Protocol,用户数据报协议)是与TCP相对应的协议。它是面向非连接的协议,它不与对方建立连接,而是直接就把数据包发送过去! UDP适用于一次只传送少量数据、对可靠性要求不高的应用环境。
服务器
4、HTTP:超文本传输协议
HTTP负责web服务器与web浏览器之间的通信;规定了数据的传输方式、数据格式。
5、HTTPS:比HTTP更加安全,一般用于登录验证、转账等敏感操作。
File:本地文件
非持续性连接:服务器做出响应后立刻断开连接,节省性能和数据的传输速度,可以传输任何格式的数据,比较告诉简洁。
--------------------------------------------------------------------------------------------------------------------
二、HTTP过程
1、URL
也叫地址,是一个资源(图片、音视频、网页等)的唯一标识;
完整URL包括 协议头 域名 端口号 路径
比如:http: //www.baidu.com / 80 / img/windows
http默认端口是80。
1kb=1024bit字节(1000)
B 比特bit
1 kB = 1024 B (kB - kilobajt) 千
1 MB = 1024 kB (MB - megabajt) 兆
1 GB = 1024 MB (GB - gigabajt) 吉
1 TB = 1024 GB (TB - terabajt) 太
B是一个电脑存储的基本单位(字节),1个英文字符是1个字节,也就是1B,1个汉字为2个字符,也就是2B。
200:请求成功
404:请求数据失败
500:服务器有问题
1、基础常识
1、互联网的发展历程
PC时代-->互联网时代-->移动互联网
PC时代:之前的计算机并不能联网,因为没有网络的概念,那个时候应都是单机的应用程序。
PC互联网时代:有了网络之后,应用程序逐渐可以访问网络。最常见的就是我们通过浏览器访问各个网站提供的服务。
移动互联网时代:10年开始移动端Android和iOS兴起,移动互联网到来。Android程序员逐步发展,现在已经基本平稳。12年以后iOS尤其是13、14、15年iOS暴增。15年H5标准制定,推出移动先行,跨平台,可以节省大量的成本。H5来了。。。
2、网络相关常识
网络专业名词因特网Internet。讲每台计算机联系在一起,通过网络可以即时获取最新的信息,进行通讯。
1、什么是协议
既然大家都可以访问网络,那么必须有一定的标准和规范,不然网络就乱套了。这些规范规则用"协议"去制定。
2、什么是TCP/IP 协议
TCP/IP 指传输控制协议/网际协议 (Transmission Control Protocol / Internet Protocol)
TCP/IP是针对因特网的通信协议 通信协议是对计算机必须遵守的规则的描述,只有遵守这些规则,计算机之间才能进行通信。浏览器和服务器都在使用 TCP/IP协议。
TCP/IP扩展
在 TCP/IP 中包含一系列用于处理数据通信的协议
IP (网际协议) - 计算机之间的通信
IP 是无连接的通信协议 用于计算机之间的通信。不会占用两个正在通信的计算机之间的通信线路
通过IP,消息(或者其他数据)被分割为小的独立的包,并通过因特网在计算机之间传送。IP负责将每个包路由至它的目的地
负责在因特网上发送和接收数据包
TCP (传输控制协议) - 应用程序之间通信
应用程序希望通过 TCP 与另一个应用程序通信时,它会发送一个通信请求。这个请求必须被送到一个确切的地址。在双方“握手”之后,TCP 将在两个应用程序之间建立一个的通信通道。所以TCP是端对端的一种协议,更加的安全。
TCP负责在数据传送之前将它们分割为 IP 包,然后在它们到达的时候将它们重组
UDP (用户数据包协议) - 应用程序之间的简单通信
UDP 和 TCP 相似 由于UDP是一种"端对多"的广播式协议,只管广播并不管有没有收到广播数据,会产生丢包的现象,所以不安全。
ICMP (因特网消息控制协议) - 针对错误和状态进行处理
3、什么是服务器
给前台(客户端)提供服务的设备,一般是高性能计算机。提供服务的指的是文件下载、网页浏览、查找并返回数据等。这些服务都是有服务器中的应用程序提供。
根据提供服务的不同,服务器分为
DNS服务器(域名服务器):把域名解析为计算机的IP地址
Web服务器:提供Web页面服务
数据库服务器:提供数据增删改查
FTP服务器:文件上传和下载服务
等等。。
为了向客户端提供服务,服务器必须安装能够监听特定端口,并接收客户端请求的应用程序
端口号:一台服务器上可能提供多种服务,不同服务使用不同端口
比如花费查询请按1、流量查询请按2、人工服务请按3、特殊服务请按0。。。
4、什么是域名和IP地址
每一个服务器都对应一个IP地址192.168.10.10,唯一标识,用于区分服务器。
IP地址比较难记,所以使用一个名称来代替IP地址,这个名字就是域名。www.baidu.com就是域名
输入 http://www.baidu.com域名,会被 DNS 服务器程序翻译为数字,也就是IP地址。
5、HTTP - 超文本传输协议
HTTP 负责 web 服务器与 web 浏览器之间的通信
用于从 web 客户端(浏览器)向 web 服务器发送请求,并从 web 服务器向 浏览器返回内容
HTTPS 比HTTP更加的安全 一般用于登录验证、转账交易、等一些敏感操作。
开发中一般使用的就是HTTP协议。其他协议不多介绍比如FTP File等协议
HTTP规定了数据的传输方式,数据的格式等
非持续性连接:服务器做出响应后立刻断开连接 ,节省性能和数据的传输速度
可以传输任何格式的数据,比较高效灵活
2、详解HTTP过程
0、URL
URL也叫作地址。是一个资源(图片、音视频、网页等)的唯一标识。
一个完整的URL包括协议头、域名、端口号、路径 比如 http://www.baidu.com/80/img/logo.png
端口号,可选,省略时使用默认端口,http的默认端口为80
1、请求
客户端向服务器获取数据的操作就是一个请求。
请求包括以下部分
请求头
GET / minion.png HTTP/1.1 // 请求方法、资源路径、HTTP协议版本号
Host: 120.25.226.186:32812 // 客户端想访问的服务器主机地址
Accept: text/html, */* // 客户端能接收处理的数据类型
Accept-Language: zh-cn // 客户端的语言环境
Accept-Encoding: gzip // 客户端支持的数据压缩格式
请求正文
客户端发给服务器的具体数据内容
2、响应
服务器对客户端做出的回应就是响应。
响应包括以下部分
响应头
对服务器的描述和返回数据的描述
HTTP/1.1 200 OK // HTTP协议版本、状态码
Server: Apache-Coyote/1.1 // 服务器的类型
Content-Type: image/jpeg // 返回数据的类型
Content-Length: 56811 // 返回数据的长度
Date: Mon, 23 Jun 2014 12:54:52 GMT // 响应的时间
响应正文
服务器返回给客户端的具体内容
3、常见的响应状态码
400 错误请求 — 请求中有语法问题,或不能满足请求。
403 禁止 — 即使有授权也不需要访问。
404 找不到 — 服务器找不到给定的资源;文件不存在
500 内部错误 — 因为意外情况,服务器不能完成请求 或者出问题了
200 正常;请求已完成。
201 正常;紧接 POST 命令。
202 正常;已接受用于处理,但处理尚未完成。
203 正常;部分信息 — 返回的信息只是一部分。
204 正常;无响应 — 已接收请求,但不存在要回送的信息。
301 已移动 — 请求的数据具有新的位置且更改是永久的。
302 已找到 — 请求的数据临时具有不同 URI。