类型 | 面向连接 | 传输可靠性 | 传输形式 | 传输效率 | 所需资源 | 应用场景 | 首部字节 |
---|---|---|---|---|---|---|---|
TCP | 面向连接 | 可靠 | 字节流 | 慢 | 快 | 要求通讯数据可靠(文件传输、邮件传输) | 20-60 |
UDP | 无连接 | 不可靠 | 数据报文段 | 快 | 少 | 要求通信速度快(域名转换) | 8个字节 |
TCP提供面向连接的服务。数据传送之前必须先建立连接,数据传送结束后要释放连接。TCP不提供广播或者多播服务。
TCP的可靠性体现在传递数据之前,会有三次握手来建立连接,数据传递时,有确认、窗口、重传、拥塞控制机制,数据传送完毕后,还有断开链接。
ARQ协议:也是为了实现可靠传输,基本原理时每发完一个分组就停止发送,等待对方确认。收到确认后再发下一个分组。
⾃动重传请求(Automatic Repeat-reQuest,ARQ)是OSI模型中数据链路层和传输层的错误纠正协议之⼀。它通过使⽤确认和超时这两个机制,在不可靠服务的基础上实现可靠的信息传输。如果发送⽅在发送后⼀段时间之内没有收到确认帧,它通常会重新发送。ARQ包括停止等待ARQ协议和连续ARQ协议。
2-5 包含协议: TCP:与服务器建立连接 IP:建立TCP协议时,需要发送数据,在网络层使用IP协议 OSPF:IP数据包在路由器之间,路由器选择使用OSPF协议(类似协议有RIP协议、IGRP(cisco私有)、EIGRP(cisco私有) ARP:路由器在与服务器通信时,需要将IP地址转化为MAC地址,该过程使用ARP协议 HTTP:TCP连接建立完成后,使用HTTP协议访问网页
有些公司会问的很细,比如505是什么意思?
状态码 | 类别 | 原因短语 |
---|---|---|
1xx | Information(信息性状态码) | 接收的请求正在处理 |
2xx | Success(成功状态码) | 请求正常处理完毕 |
3xx | Redirection(重定向状态码) | 需要附加操作以完成请求 |
4xx | Clien Error(客户端错误状态码) | 服务器无法处理请求 |
5xx | Server Error(服务器错误状态码) | 服务器处理请求出错 |
使用Session和Cookies。
Cookies和Session都是用来跟踪浏览器用户身份的会话方式,应用场景不太一样。
Cookies一般用来保存用户信息: (1)保存上次登录信息,下次自动填充; (2)下次访问不需要重新登陆; (3)登录一次网站后访问同网站其他页面不需要重新登录。
Session主要作用通过服务端记录用户的状态(典型场景购物车)。
Cookie 数据保存在客户端(浏览器端),Session 数据保存在服务器端。 Cookie 存储在客户端中,⽽Session存储在服务器上,相对来说 Session 安全性更⾼。如果要在Cookie 中存储⼀些敏感信息,不要直接写⼊ Cookie 中,最好能将 Cookie 信息加密然后使⽤到的时候再去服务器端解密。
Conection: keep-alive
。持续连接分为流水线方式和非流水线方式。流水线是指,客户端在收到HTTP响应报文前就能接着发送新的请求报文;非流水线则是指客户端收到响应之后才能发送下一个请求。