计算机网络第六章应用层
6.1网络应用模型
应用层对应用程序的通信提供服务应用层协议定义:
应用进程交换的报文类型,请求或响应
各种报文类型的语法,如报文中的各个字段及其详细的描述
字段的语义,包含在字段中的信息的含义
进程何时,如何发送报文,以及对报文进行响应的规则
应用层的功能:
文件传输,访问和管理
电子邮件
虚拟终端
查询服务和远程作业登录
应用层的重要协议:FTP,SMTP,POP3,HTTP,DNS
网络应用模型
客户/服务器模型(Client/Server):
服务器:提供计算服务的设备,1.永久提供服务,2.永久性访问地址/域名
客户机:请求计算服务的主机,2.与服务器通信,使用服务器提供的服务,2.间歇性接入网络,3.可能使用动态IP地址,4.不与其他客户机直接通信
应用:Web,文件传输FTP,远程登录,电子邮件
P2P模型(Peer-to-Peer):
对等模型,不存在永远在线的服务器
每个主机都可以提供服务,也可以请求服务
任意端系统/节点之间可以直接通讯
节点间歇性接入网络,可能改变IP地址
可扩展性好
网络健壮性强
6.2DNS系统
域名顶级域名:国家顶级域名cn,us,uk,通用顶级域名com,net,org,gov,mil,net,org,基础结构域名/反 向域名arpa
二级域名:类别域名(ac,com,edu,gov,mil,net,org),行政区域名用于我国各省,自治区,直辖市 bj,js
三级域名
四级域名
域名服务器:
根域名服务器;管理所有顶级域名服务器的IP地址[org,101][com,102][edu,103]
顶级域名服务器:管理该顶级域名服务器注册的所有二级域名
权限域名服务器:负责一个区的域名服务器
本地域名服务器:当一台主机发出DNS查询请求,这个查询请求报文就发给本地域名服务器
域名解析过程:
递归查询与迭代查询
6.3文件传送协议FTP
提供不同种类主机系统(硬,软件体系都可以不同)之间的文件传输能力 拷贝--->上传与下载 FTP是基于客户/服务器(C/S)的协议 用户通过一个客户机程序连接到在远程计算机上运行的服务器程序 依照FTP协议提供服务,进行文件传送的计算机就是FTP服务器 连接FTP服务器,遵循FTP协议与服务器传送文件的电脑就是FTP客户端登录 ftp地址 用户名&密码
FTP使用TCP协议使用可靠传输
FTP服务器包含一个主进程和n个从属进程
进制进程与数据传送进程,控制连接始终保持,数据连接保持一会
FTP传输模式:
文本模式:ASCLL模式,以文本序列传输数据
二进制模式:Binary模式,以二进制序列传输数据
6.4电子邮件
电子邮件格式用户代理:撰写,显示,处理,通信
邮件服务器:发送&接收邮件,向发送人报告邮件传送结果
协议:SMTP(发),POP3(收),IMAP(收)
简单邮件传送协议:SMTP
SMTP规定了在两个互相通信的SMTP进程之间应如何交换信息
负责发送的SMTP进程是SMTP客户,负责接收邮件的进程是SMTP服务器
SMTP规定了14条命令(几个字母)和21种应答信息(三位数字代码+简单文字说明)
TCP连接,端口号25,C/S
SMTP缺点:
1.SMTP不能传送可执行文件或其他二进制对象
2.SMTP仅限于传送7位ACSLL码,不能传送其他非英语国家的文字
3.SMTP服务器会拒绝超过一定长度的邮件
通过因特网邮件扩充MIME:MIME可以将非ASCLL码和7位ASCLL码进行转化,使得电子邮件系统可以支持声音,图像,视频,多种国家语言等等
邮局协议POP3,TCP连接 端口号110 C/S
网际报文存取协议:
当用户pc上的IMAP客户程序打开IMAP服务器的邮箱时,用户可以看到邮箱的首部,若用户需要打开某个邮件,该邮件才上传到用户的计算机上
IMAP允许用户在不同的地方使用不同的计算机随时上网阅读处理邮件,还允许只读取邮件的某一个部分,先看正文,有WIFI再看附件
基于万维网的电子邮件:方便,用户方到邮件服务器使用了HTTP协议
6.5万维网和HTTP协议
万维网WWW(World Wide Web)是一个大规模的,联机式的信息储藏所/资料空间,是无数个网络站点和网页的集合,统一资源定位符URL唯一标识资源URL一般形式:<协议>://<主机>:<端口>/<路径>
用户点击超链接获取资源,资源通过超文本传输协议(HTTP)传送给使用者
万维网以C/S方式工作,用户使用的浏览器就是万维网客户程序,万维网文档所驻留的主机运行服务器程序
万维网使用超文本标记语言HTML,使得万维网页面设计者可以很方便的进行页面跳转,并能够在自己的屏幕上显示出来
超文本传输协议HTTP:
HTTP协议定义了浏览器(万维网客户进程)怎样向万维网服务器请求万维网文档,以及服务器怎样把文档传送给浏览器
HTTP协议特点:
本身无状态,但实际生活中需要所以有Cookie
Cookie是存储在主机中的文本文件,记录一段时间内某用户的访问记录
采用TCP作为运输层协议,但HTTP协议本身是无连接
HTTP报文是面向文本的,在报文中每一个子段都是一些ASCLL码串
状态码:
1XX表示通知信息,请求收到了正在处理
2XX表示成功,202Accpted
3XX表示重定向 301 Moved Permanently
4XX表示客户的查错,请求中有错误的语法或不能完成 404 NotFound
5XX表示服务器的查错,服务器失效无法完成请求
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)