【北航计算机网络课程笔记】6. 应用层

基本定义

应用层协议
由于网络应用多样性, 所有协议很多种
许多协议基于客户/服务器方式

套接字(socket)编程接口
经典采用同步调用方式(阻塞式)
windows这种基于事件驱动方式系统中, 采用异步事件驱动式, 也支持阻塞式
将TCP/UDP各种功能封装成socket接口函数, 供应用程序调用
socket()创建SOCKET结构, bing()将本地地址与SOCKET绑定
SOCKET放在套接字描述符表中
在这里插入图片描述在这里插入图片描述

域名系统DNS

域名系统DNS(通过域名得到IP地址)
基于UDP协议
应用进程需要域名解析时, 调用域名解析程序, 作为DNS客户, 向本地域名服务器发送域名解析请求(UDP), 返回对应IP地址
域名服务器: 根域名服务器(13套, 分布在全球588地点), 顶级域名服务器, 权限域名服务器, 本地域名服务器
主机向本地域名服务器查询: 递归查询: 如果不知道就以DNS客户身份向根域名服务器查询
本地域名服务器向根域名服务器查询: 迭代查询–挨个问.

文件传送协议FTP

文件传送协议FTP
客户/服务器方式
一个主进程(接受新的请求,21端口号), 若干从属进程(处理单个请求)
2个TCP连接: 控制连接, 数据连接

万维网WWW

万维网WWW
分布式超媒体系统, 超文本系统的扩展
文档寻址–统一资源定位符URL:
<协议>(ftp/http/News)😕/<主机>:<端口>/<路径>, 不区分大小写
文档保存–超文本传送协议HTTP:
基于TCP, 面向事务的客户/服务器协议, 不记录客户端的访问状态(信息只好放在了URL里, 比如token值)
端口号80
HTTP/1.0一个文件建立一次TCP连接, 太费时, HTTP/1.1使用持续连接
HTTP报文: 请求报文/响应报文, 开始行+首部行+实体主体
文档格式–HTML:
定义了许多标签(用于排版的命令), 文本格式
安全的HTTP协议: HTTPS
基于SSL/TLS(加密的TCP)
端口号443
协商加密算法, 并使用公钥,证书等安全措施

邮件发送\接收协议

电子邮件
发送邮件协议SMTP(基于TCP协议, 客户/服务器协议), 读取邮件协议POP3和IMAP
两种实体: 用户代理UA, 即电子邮件客户端软件; 邮件服务器即可以作为客户, 也可以作为服务器
信息格式: 信封+内容
MIME: 增加首部字段, 对二进制数据进行编码, 转换为7为ASCII码, 解决SMTP不能传送二进制数据(程序, 图片, 音乐, 东方语言)的问题

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章