TCP、HTTP、FTP

一、TCP

TCP属于传输层。 

(1)TCP协议的特性:TCP是面向连接的,提供全双工的服务,数据流可以双向传输。也是点对点的,即在单个发送放方和单个接收方之间的连接。

(2)TCP 报文段结构

序号:TCP 的序号是数据流中的字节数,不是分组的序号。表示该报文段数据字段首字节的序 号。

确认号:TCP 使用累积确认,确认号是第一个未收到的字节序号,表示希望接收到的下一个字 节。

首部长度:通常选项字段为空,所以一般 TCP 首部的长度是 20 字节。

选项字段(可选与变长的):用于发送方与接收方协商 MSS(最大报文段长),或在高速网络环境下用作窗口调节因子。

标志字段

        ACK:指示确认字段中的值是有效的

        RST,SYN,FIN:连接建立与拆除

        PSH:指示接收方应立即将数据交给上层

         URG:报文段中存在着(被发送方的上层实体置位)“紧急”的数据

        接收窗口:用于流量控制(表示接收方还有多少可用的缓存空间)。

         TCP RFC 并没有规定失序到达的分组应该如何处理,而是交给程序员。可以选择丢弃或保留。 如果发生超时,TCP 只重传第一个已发送而未确认的分组,超时时间间隔会设置为原来的 2 倍。

(3)流量控制:如果应用程序读取数据相当慢,而发送方发送数据太多、太快,会很容易使接收方的接收缓存溢出,流量控制就是用来进行发送速度和接收速度的匹配。发送方维护一个“接收窗口”变量,这个变量表示接收方当前可用的缓存空间。

二、HTTP(超文本传输协议)

HTTP属于应用层。 

(1)HTTP协议的特性 HTTP 协议一共有五大特点:a. 支持客户/服务器模式;b. 简单快速;c. 灵活;d. 无连接;e. 无 状态。

无连接含义:限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。

无状态含义:指协议对于事务处理没有记忆能力,服务器不知道客户端是什么状态。即我们给服务器发送 HTTP 请求之后,服务器根据请求,会给我们发送数据过来,但是,发送完不会记录任何信息。

(2)HTTP 客户机及服务器

HTTP 客户机:web 浏览器

HTTP 服务器:web 服务器,包含 web 对象(HTML 文件、JPEG 文件、java 小程序、视频片段 等)

(3)HTTP 方法字段:

GET:绝大部分 HTTP 请求报文使用 GET 方法

POST:用户提交表单时(如向搜索引擎提供关键字),但提交表单不一定要用 POST 方法

HEAD:类似于 GET,区别在于服务器返回的响应报文中不包含请求对象(常用于故障跟踪)

PUT:用于向服务器上传对象

DELETE:用于删除服务器上的对象

(4)HTTP 状态信息

301 Permanently Moved 被请求的资源已永久移动到新位置,新的URL在Location头中给出,浏览器应该自动地访问新的URL。

302 Found 请求的资源现在临时从不同的URL响应请求。301是永久重定向,而302是临时重定向。

200 OK 表示从客户端发来的请求在服务器端被正确处理。

304 Not Modified 304状态码是告诉浏览器可以从缓存中获取所请求的资源。

400 bad request 请求报文存在语法错误 。

403 forbidden 表示对请求资源的访问被服务器拒绝 。

404 not found 表示在服务器上没有找到请求的资源。

500 internal sever error 表示服务器端在执行请求时发生了错误 。

503 service unavailable 表明服务器暂时处于超负载或正在停机维护,无法处理请求。

(5)HTTP中常见的文件格式 text/html:

HTML格式 text/plain:纯文本格式

image/jpeg:jpg图片格式

application/json: JSON数据格式

application/x-www-form-urlencoded: form表单数据被编码为key/value格式发送到服务器 (表单默认的提交数据格式)

multipart/form-data: 在表单中进行文件上传时使用


三、FTP(文件传输协议)

FTP属于应用层。FTP 使用两个并行的 TCP 连接来传输文件:

(1)控制连接(持久):传输控制信息,如用户标识、口令、改变远程目录命令、文件获取上传 的命令;

(2)数据连接(非持久):传输实际文件。 FTP 客户机发起向 FTP 服务器的控制连接,然后在该连接上发送用户标识和口令、改变远程目录的命令。FTP服务器收到命令后,发起一个到客户机的数据连接,在该连接上准确地传送一个文件并关闭连接。

有状态的协议:FTP 服务器在整个会话期间保留用户的状态信息。服务器必须把特定的用户账号 和控制连接联系起来。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值