注:最后有面试挑战,看看自己掌握了吗
🌸I could be bounded in a nutshell and count myself a king of infinite space.
特别鸣谢:木芯工作室 、Ivan from Russia
应用层—网络层点到点----传输层端到端------应用层为应用提供多样服务---------功能:文件传输、访问、管理ftp—电子邮件smtp—虚拟终端http-让个人用户直接与大型计算机联系,不必使用专门的终端—查询服务和远程作业登录dns
应用服务模型----C/S、P2P
DNS-----获得IP门牌号-----再去找门
域名----标号–就是www com cs。。这些东西------------------根其实是默认的在最右面一个"."-----------------------注arpa—反向域名–用于反向解析ip到域名
.com.cn也可
域名服务器----树形很多台-----根域名服务器----顶级域名服务器-----权限域名服务器-----本地域名服务器-----------先找本地域名服务器-----本地的找不到就求助最高层 —根域名服务器-根域名服务器只知道顶级域名服务器位置---------根据顶级域名的地址去找再往下分找—直到找到ip-----------------------------根域名服务器一共有13个a.rootservers.net—m.rootservers.net
递归查询------靠别人-----------------------迭代查询-------------靠自己–更常用
TFTP----trivial 小文件------UDPP
FTP------提供不同主机系统文件传输能力
FTP--------匿名登陆Anonymous---------不用登记注册----------使用TCP可靠传输
FTP----服务器进程--------一个主进程n个从属进程-----------一个理发店很多tony老师----------
FTP工作原理----------控制连接21传请求—全程打开始终保持----------和数据连接20----传文件–保持一会
电子邮件系统 --------组成----用户代理(软件)+邮件服务器(报告给用户邮件传送结果)------------邮件服务器+用户代理
SMTP发------------POP3、IMAP收
SMTP-------14条命令+21种应答信息----------------TCP连接25号端口
SMTP连接建立----220我准备好了 hello命令------------回复250OK-------------------------------邮件发送------先说来自哪个邮箱-------然后说多少个RCPT命令-----------要开始传送内容了--------------Date-----------回复就是250OK---------连接释放---------客户说QUIT命令---------SMTP服务器回复221 释放TCP连接
SMTP缺点---------------MIME扩展—可以发更多样的声音、视频、语言---------逐步被用到浏览器—MIME类型 告诉浏览器用什么
POP3邮局协议----------端口号110-------------------升级到IMAP协议------更加强大
基于万维网的电子邮件--------通过浏览器使用-------------------使用HTTP发----SMTP发-------HTTP收读取
万维网WWW--------资料空间--------网页网站集合-----------通过URL获得资源
HTTP----服务器进程监听80端口看谁需要连接--------------HTTP使用TCP连接------------------------过程—浏览器分析URL-------------浏览器向DNS请求解析IP-------浏览器与服务器建立TCP连接-----------浏览器发出取文件命令---------服务器响应-----------------释放TCP连接------------浏览器显示--------------------------------所以可以先只下载文本部分 等到需要啥再重新建立连接下载啥—不必一次性下载
HTTP—无状态的--------记住身份Cookie----------比如淘宝购物车----------很舒服像小饼干--------------------HTTP连接方式------------持久连接Keep-alive--------------------非持久连接Close
HTTP协议的连接方式----------非持久连接-----第三次握手结束发送一次信息------耗时2倍RTT加上一个文档报文传输时间-----如果再需要,那就重新建立连接再来一次,缺点时间消耗长--------------------------持久连接----------再请求元素的时候不必再此链接-------可以保持连接-----非流水线–像停止-等待一样--------流水线式—可以连续发送,请求一次性一起发送出去,然后服务器依次返回------提高文档下载效率
HTTP报文结构-----两种报文-----请求报文-----------请求行+首部行+请求主体(一般不用)------------响应报文------状态行+首部行+相应主体(一般不用)
请求行-------方法+url+版本---------方法:-------------首部行(做一些说明----可以不用)-----可以用首部字段名:值---------------就像json-----------cookie----Connection:close非持续的连接----------------状态码2xx成功
CONNECT
要求用隧道协议连接代理。
这个方法要求在与代理服务器通信的时候建立隧道,并实现用隧道协议进行TCP通信。
主要使用SSL和TLS协议把通信内容加密后经网络隧道传输。