ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

2021-05-08

2021-05-09 00:00:09  阅读:128  来源: 互联网

标签:HTTP 05 08 TCP 2021 服务器 接字 报文 邮件


计网——chapter 2 应用层

协议栈(从上至下):
application-layer message
transport-layer segment
network-layer datagram
link-layer frame
结构:首部字段+payload field
协议栈应用层的2种结构(application architecture):client-server architecture, P2P architecture
客户服务器进程:即使是P2P architecture,也能认为其中一个是服务进程另一个是客户进程
套接字(socket):也称应用程序编程接口(application programming interface)

套接字的另一侧是运输层,运输层协议负责接收进程的套接字得到该报文。我们可以从四个方面对应用程序服务要求进行分类:可靠数据传输(reliable data transfer),吞吐量,定时和安全性
因特网提供的运输服务有TCP和UDP两种。
1.TCP服务
TCP服务模型包括面向连接服务和可靠数据传输服务
2.UDP服务
UDP是无连接的,因此在两个进程通信之前没有握手过程。UDP是不可靠的,不能保证报文段会到达接收进程,也不能保证按需到达。

应用层协议(appilcation-layer protocol)定义了:
1.交换的报文类型,例如请求报文和响应报文;
2.各种报文的语法,如报文中的各个字段以及这些字段是如何描述的;
3.字段的语义,即这些字段中的信息的含义;
4.确定一个进程何时以及如何发送报文,对报文的响应规则。

Web是一个因特网应用,HTTP是它的应用层协议,HTTP全程HyperText Transfer Protocol.HTTP使用TCP作为它的运输层支撑应用。
HTTP是无状态协议(stateless protocol)
非持续连接和持续连接:每个请求/响应对如果是经一个单独的TCP发送方就是非持续连接,经相同的TCP发送就是持续连接。
往返时间RTT(Round-Trip Time)
HTTP请求报文的通用格式:请求行+首部行+空行+实体行
HTTP响应报文的通用格式:状态行+首部行+空行+实体行
cookie技术有4个组件:
1.HTTP响应报文中的一个cookie首部行;
2.HTTP请求报文中的一个cookie首部行;
3.在用户端系统中保留一个cookie文件,并用用户浏览器进行管理;
4.位于Web站点的一个后端数据库。
热知识:cookie是一个文本而非程序
Web缓存
Web缓存器(Web cache)也叫代理服务器(proxy server)。客户端向缓存器发送HTTP请求,如果缓存器里面有该请求对象则通过HTTP响应发给客户端,否则向初始服务器发送HTTP请求,服务器再想缓存器发HTTP响应,Web缓存器收到以后,在本地存储器存一个副本,并向客户发送该副本。

因特网的电子邮件
电子邮件系统的组成:用户代理user agent,邮件服务器mail server, 简单邮件传输协议 Simple Mail Transfer Protocol
SMTP:当邮件服务器发邮件时就是SMTP的客户,当邮件服务器收邮件时就是SMTP的服务器
第三版邮局协议(Post Office Protocol-Version 3)POP3
因特网邮件访问协议(Internet Mail Access Protocol)IMAP
SMTP负责将邮件从用户代理发送到用户的邮件服务器,从用户的邮件服务器传送到接收方的邮件服务器
POP3这样的邮件访问协议用来将邮件从接收方的邮件服务器传送到接收方的用户代理
POP3:极为简单的邮件访问协议,三个阶段:1.特许——用户代理发送用户名和口令以鉴别用户;2.事务处理阶段——用户代理取回报文;3.第三个阶段是更新阶段,结束该POP3会话。
IMAP:IMAP服务器把每个报文与远程文件夹相关联,IMAP服务维护了会话的用户状态信息。
基于Web的电子邮件:用户代理就是普通的浏览器,用户与远程信箱之间是HTTP协议,但是信箱之间是SMTP。

DNS:因特网的目录服务
主机名提供的关于主机的位置信息非常有限,因此需要引入IP address的概念。
主机名到IP地址转换的目录服务——域名系统(Domain Name System)DNS
DNS是:1.一个由分层的DNS服务器实现的分布式数据库;
2.一个使得主机能够查询分布式数据库的应用层协议。
DNS是一个在因特网上实现分布式数据库的精彩范例:
1.分布式、层次数据库。DNS服务器有3种类型:根DNS服务器,顶级域(Top-Level Domain)DNS服务器,权威DNS服务器。
DNS有递归查询和迭代查询

P2P文件分发
BitTorrent是一种关于文件分发的流行P2P协议 tit-for-tat
一个新的对等方Alice加入洪流时向追踪器注册自己,tracker给Alice对等方列表并试图创建TCP连接。Alice根据rarest first原则向邻居请求块。Alice同时unlock4的对等方,并每过30秒,另选一个邻居并向其发送块。

套接字编程:生成网络应用
UDP套接字编程
目的地址由目的主机的IP地址和目的套接字的端口号组成的。发送方的源地址也是由源主机的IP地址和源套接字的端口号组成。然而将源地址附在分组上并不是UDP应用程序所为,而是由底层操作系统自动完成的。
TCP套接字编程
TCP与UDP不同,发送数据前要握手,TCP连接的一端与服务器套接字相关联,另一端与客户端套接字相关联,使用时只需要将数据直接丢进TCP连接。
欢迎套接字和连接套接字不同。

标签:HTTP,05,08,TCP,2021,服务器,接字,报文,邮件
来源: https://blog.csdn.net/Shakira12138/article/details/116534842

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有