应用层

Web:遵循HTTP协议   

多个网页互连链接

每个网页包含多个对象

对象类型:HTML文件,图片,视频等

基本的HTML文件包含对其他对象的引用

 

 

HTTP:(无状态的)

HTTP协议:超文本传输协议,采用C/S结构(也可以说B/S)

客户-Browser-请求,接受,展示Web对象

服务器-Web Server:响应客户请求,发送对象。

HTTP的版本有1.0 1.1

 

 HTTP/1.0是非持久连接,在HTTP服务器发出响应报文后,会关闭TCP连接。每个对象都需要建立TCP连接,都要2个RTT

HTTP/1.1是持久连接,不会关闭TCP连接。

非流水方式的持久连接和流方式的持久连接。

 

HTTP传输过程: 客户端在80号端口发起一个到服务器的连接,请求建立TCP连接

          服务器在80号端口等待连接,同意建立TCP连接,并通知客户端

        客户端通过TCP连接的套接字发送HTTP请求报文,报文表示客户端需要的对象。

        服务端接受请求报文,并检索出所需对象,将其封装在一个响应报文中,通过套接字发给客户端。

        (HTTP关闭TCP连接)

        客户端接受包含HTML文件的响应报文,进行查找。

cookies

 

 

 

 web缓存

 

FTP:(有状态的)

 

 

 

 FTP数据连接为带内20号端口 控制连接为带外21号端口。

 

Email:

 

 

 

 

 

 SMTP协议是发送协议。pop3和IMAP 和HTTP是读取协议。

SMTP主要在邮件服务器之间,采用TCP连接。SMTP中多个的对象包含在一个报文中。

 

DNS:

 

 

主机向本地域名服务器的查询一般采用递归查询

本地域名服务器向根域名服务查询通常采用迭代查询。

 

posted @   NOE42  阅读(79)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示