计算机网络应用层-计网(2)

前言

接着学习计算机网络

正文

主要学习应用层涉及到的几个协议。

基本概念

  • 通信双方在应用层交换的协议数据单元是报文(Message).
  • client-server架构:中央服务器一直在线,并且有永久的ip地址。
  • p2p架构:没有一直在线的中央服务器,任意两个用户之间可以进行通信。
  • 混合架构:client-server和p2p混合架构,集合二者的特点。

协议定义

  • 交换的报文类型
  • 报文的语法格式
  • 报文中字段的语意
  • 各种类型的报文的发送规则

http协议

万维网

万维网是一个超媒体系统。web文档分布在各个主机上,采用超链接的方法,讲一个web文档链接到另一个web文档,甚至是其他主机上的web文档。使用超文本标记语言(html)来组织web文档信息,使用超文本传输协议(http)来传输web文档。

超文本标记语言

html语言用来编写web文档,由特定标签定义内容。
html标签

统一资源定位符

URL是一种统一格式的信息资源地址的标识方法。最常见的就是http协议的url了。
其格式如下

<协议>://<主机>:<端口>/<路径>

url不分大小写
常见url

超文本传输协议

http是用来传输web信息的协议。广泛用来浏览器-服务器传输内容。其在运输层的协议是tcp。
RTT的定义:client端发送数据报至接收到server端回应的时间。

分类
  • 非持久连接
    http1.0,一个tcp连接发送一个object
  • 持久连接
    http2.0,一个tcp连接发送多个object
连接过程

http在传输层是基于tcp的,所以必定要进行tcp连接,而http连接几次就要看一次可以发送接收多少个object。

  • 非持久连接
    client首先发送tcp数据报至server—>server accept了client的连接,并发出回应—>client得到server的tcp回应发送http请求报文—>server收到请求报文并且发送响应报文—>server关闭tcp连接—>client接收响应报文并做响应解析。
    一个object传输总时间为:2RTT+object传输时间

  • 持久连接
    持久连接的不同之处在于,发送了响应报文,server并不马上关闭tcp连接,之后可以再次发送object

报文

报文分为请求报文和响应报文。

  • 请求报文
    格式
请求行: 方法 路径 httpversion
首部行: Host:value
		·
		·
		·

GET /test/test http1.1
Host:www.host.com
User-agent: Mozilla/4.0
Connection:close
Accept-language:fr
  • 响应报文
    比如
HTTP1.1 200 OK
Connection:close
Date:
服务器:Apache/1.3.0 (Unix)
Last-Modified:
Content-Length:
Content-Type:
data....

一些状态码和状态短语

  • 200 OK
    请求成功,请求对象在报文后面
  • 301 moved permanently
    资源已经转移,新的url的location在首部行指定
  • 400 Bad Request
    不符合请求报文规则,请求报文不为服务器理解
  • 404 Not found
    资源不存在
  • 500 Http version not supported
    服务器错误

ftp协议

ftp使用20和21端口,可以在自己服务器配置ftp。详情
ftp常用的命令行

命令作用
查看所有命令使用帮助
open打开一个ftp服务器
user切换ftp用户
put上传本地文件至ftp服务器
get下载ftp服务器文件至本地

邮件协议

电子邮件由四部门组成

  • 用户代理
  • 邮件服务器
  • 邮件传输协议
  • 邮件访问协议
    邮件过程
  • smtp
    标准文本格式为
    文本格式
    终端smtp交互实例,可以看这个smtp交互
  • pop3
    分为两个阶段
  1. 认证阶段
    用户密码的验证
  2. 事物阶段
    对一些邮件的基本操作
    终端pop3交互实例,可以看这个pop3交互

dns系统

dns系统完成域名-ip地址的映射。

域名服务器

  • 跟域名服务器
    是最高层次的域名服务器,internet上有13套跟域名服务器。跟域名服务器上面存储了顶级域名服务器的IP。
  • 顶级域名服务器
    跟域名之下是顶级域名,负责管理的是在该顶级域名注册的所有权威域名。存储着下一步要查询的域名服务器的ip地址。
  • 权威域名服务器
    权威域名服务器中存储着具体要访问服务器ip
  • 本地域名服务器
    本地域名服务器存在域名缓存,如果有要找的记录,则直接返回给本地电脑。

域名解析过程

以访问www.amazon.com为例

  1. 访问本地域名服务器,查询本地的域名缓存,存在直接返回,不存在就转为查询跟域名服务器。
  2. 查询跟域名服务器,得到.com的顶级域名的IP地址。
  3. 查询得到的顶级域名服务器,获得amazon.com的IP地址。
  4. 查询amazon.com域名服务器,得到IP地址。
  5. 本地域名服务器将查询到的IP地址返回给电脑。

dns记录格式

Name Value Type TTL

Name一般是节点主机的域名,Value是对应Name的名字,Type指出记录的类型,TTL是本记录的生存时间,一般是24hours。

TypeNameValue
A主机域名对应的IP地址
NS本域的服务器名称
CNAME别名对应的规范主机名域名
MX邮件服务器的规范主机名对应邮件服务器的名称
TXT文本未解释的ASCII码文本

dns报文

报文

  1. 首部区
    标识该次域名解析是查询还是应答。
  2. 询问区
    包括被查询的主机域名以及查询类型
  3. 应答区
    对域名查询报文解析出的域名和资源记录
  4. 管理机构区
    其他权威域名服务器的记录
  5. 附加记录区
    另外包含一些其他有用的记录来配合资源记录的使用
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值