• 408计网应用层总结


    网络应用模型

        ■客户/服务器模型(C/S):客户是服务请求方,服务器是服务提供方
        ■P2P模型:各主机都是客户,也都是服务器(任意一对计算机成称为对等方)

    C/S:

    • 服务器:永久服务、永久域名 
    • 客户机:间歇、动态IP、使用服务器的服务、不域其他用户机直接通信

    P2P:

    • 减轻了服务器的计算压力。
    • 多个客户机之间可以直接共享文档。
    • 可扩展性好,传统服务器有响应和带宽的限制,因此只能接受一定数量的请求。
    • 网络健壮性强,单个结点的失效不会影响其他部分的结点。

    注:
        1.客户端必须提前知道服务器的地址 ,而服务器不需要提前知道客户端的地址
        2.客户端主要实现如何显示信息与收集用户的输入,而服务器主要实现数据的处理 
        3.浏览器显示的内容来自服务器 
        4.客户端是请求方,连接建立后,服务器可以主动发送数据(如:错误通知)
        5.P2P网络是指在互联网中由对等结点组成的一种覆盖网络( Overlay Network ),是一种动态的逻辑网络,不是物理网络。
        6.在向多个用户发送一个文件的时候,P2P模型通常比C/S模型所需时间短
     

    域名系统DNS

    域名系统(Domain Name System,DNS)是因特网使用的命名系统,用来把便于人们记忆的具有特定含义的主机名转换为便于机器处理的IP地址。DNS 系统采用客户/服务器模型,其协议运行在UDP之上,使用53号端口。

    从概念上可将DNS分为3部分:层次域名空间、域名服务器和解析器。

    多个IP映射到一个域名(一个主机多个网卡)

    一个主机也可以映射到多个域名(如虚拟主机)

    层次域名空间
        ●顶级域名(.com)
        ●二级域名(baidu)
        ●三级域名(www)

    域名服务器
        1.根域名服务器(所有的根域名服务器都知道顶级域名服务器的IP地址)
        2.顶级域名服务器
        3.权限(授权)域名服务器(可以将其管辖的主机名转换为主机的IP地址)
        4.本地域名服务器

    域名系统(DNS)的组成不包括(B)。

    A.域名空间

    B.分布式数据库

    C.域名服务器

    D.从内部IP地址到外部IP地址的翻译程序

    域名解析过程
        ●递归查询(实际中几乎不用)
        ●递归与迭代相结合的查询

    【2016统考真题】假设所有域名服务器均采用迭代查询方式进行域名解析。当主机访问规范域名为Www.abc.xyz.com的网站时,域名服务器在完成该域名解析的过程中,可能发出DNS查询的最少和最多次数分别是(C)。

    A.0,3

    B.1,3 

    C.0,4

    D.1,4

    最少情况:当本地域名服务器中有该域名的DNS信息时,不需要查询任何其他域名服务器,最少发出0次DNS查询。最多情况:因为均采用迭代查询方式,在最坏情况下,本地域名服务器需要依次迭代地向根域名服务器、顶级域名服务器(.com)、权限域名服务器(xyz.com)、权限域名服务器(abc.xyz.com)发出DNS查询请求,因此最多发出4次DNS查询。

    小注:
        1.多个MAC地址,IP地址,主机都可以对应一个域名
        2.Internet上提供的主机一定要有IP地址,不一定要有域名
        3.在域名解析过程中,主机上请求域名解析的软件需要知道本地域名服务器的 IP。(正常情况下,客户机只需把域名解析请求发往本地域名服务器,其他事情都由本地域名服务器完成,并把最后结果返回给客户机。所以主机只需要知道本地服务器的IP)
        4.每台主机都必须在授权域名服务器处注册登记,授权域名服务器一定能够将其管辖的主机名转换为该主机的 IP 地址。
        5.DNS采用UDP来传输数据, UDP 是一种面向无连接的协议

    文本传输协议(FTP)

    FTP
        ●控制连接(21)

    • 服务器监听21号端口
    • 控制连接用来传输控制信息(如连接请求、传送请求等),并且控制信息都以7位 ASCII格式传送。
    • FTP客户发出的传送请求,通过控制连接发送给服务器端的控制进程,但控制连接并不用来传送文件
    • 在传输文件时还可以使用控制连接(如客户在传输中途发一个中止传输的命令),因此控制连接在整个会话期间一直保持打开状态


        ●数据连接(20)

    • 默认情况(PORT模式)下FTP服务器使用TCP20端口进行数据连接,使用TCP21端口进行控制连接,这里的端口号是指FTP服务器的端口号,客户端随机开放一个端口。
    • 但是FTP服务器是否使用TCP20端口建立数据连接与传输模式有关,PORT模式使用TCP 20端口,PASV模式由服务器和客户端协商决定。

    小注:

    1. 控制连接使用 TCP 的21号端口,数据连接使用 TCP 的20号端口
    2. 客户进程的端口号是客户进程自己提供的
    3. http使用80端口号,SMTP使用25端口号
    4. 允许客户指名文件的类型与格式
    5. FTP 服务器的数据要经过应用层、传输层、网络层、数据链路层及物理层,对应的就是数据、数据段、数据报、数据帧、比特。
    6. FTP 客户和服务器间传递 FTP 命令时,使用的连接是:建立在 TCP 之上的控制连接
    7. 控制连接存在于整个 FTP 会话过程中,数据连接在每次文件传输时才建立,传输结束就关闭。
    8. 匿名FTP访问通常使用(anonymous)作为用户名。

    电子邮件

    电子邮件的格式:用户名@邮箱所在主机的域名(5211314@163.com)

    SMTP:C/S处理方式,使用的是TCP连接,端口号是25
        ●连接建立
        ●邮件传送
        ●连接释放

    SMTP的缺点: 

    • 不能传送可执行文件,或其他二进制对象
    • 仅限于传送7位ASCII码,不能传送其他非英文字符
    • 服务器会拒绝超过一定长度的邮件

    POP3和IMAP:
        ●POP3是C/S,TCP,端口号为110
        ●POP3是有连接可靠的数据传输

    小注:
        1.随着万维网的流行,用户浏览器与 Hotmail 或 Gmail 的邮件服务器之间的邮件发送或接收使用的是 HTTP (如aba@163.com),而仅在不同邮件服务器之间传送邮件时才使用 SMTP 。
        2.SMTP只能传输一定长度的ASCII码邮件,只支持传输7比特的ASCII码内容
        3.POP3协议基于 ASCII 码,如果要传输非 ACSII 码的数据,那么要使用 MIME 将数据转换成 ASCII 码形式。
        4.MIME(多用途网际邮件扩充)可以传输文字,语音,图像和视频等多种信息
        5.POP3协议在传输层是使用明文来传输密码的,并不对密码进行加密
     

    万维网

    万维网的内核由三个部分:
        ●统一资源定位符(URL)
        ●超文本传输协议(HTTP)
        ●超文本标记语言(HTML)

    URL:
    URL格式:<协议>://<主机>:<端口>/<路径>
    如:https://yzb.cust.edu.cn/ssszs/index.htm

    HTTP的特点:
        ●HTTP 使用 TCP 作为传输层协议,保证了数据的可靠传输。
        ● HTTP 不必考虑数据在传输过程中被丢弃后又怎样被重传。
        ●HTTP 本身是无连接的。
        ●虽然 HTTP 使用了 TCP 连接,但通信的双方在交换 HTTP 报文之前不需要先建立 HTTP 连接。 
        ●HTTP 是无状态的。服务器并不记得曾经访问过的这个客户,也不记得为该客户曾经服务过多少次。
        ●即可以非持久连接,也可以持久连接
     

    1. import requests # 导入requests模块
    2. url = 'http://www.baidu.com/s?wd=你是我的神'
    3. headers = {
    4. 'Content-Type': 'text/html;charset=utf-8',
    5. 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.96 Safari/537.36'
    6. }
    7. r = requests.get(url,headers=headers)
    8. print(r.headers)

    HTTP的报文结构
        ●请求报文
        ●响应报文

    小注:
        1.可以在 HTTP 中使用 Cookie 保存 HTTP 服务器和客户之间传递的状态信息
        2.Cookie由服务器产生,储存在用户主机中的文本文件
        3.Connection :连接方式, Close 表明为非持续连接方式, keep-alive 表示持续连接方式。

  • 相关阅读:
    希尔排序和直接插入排序代码对比
    前端怎么debugger排查线上问题
    二叉树的顺序结构及实现
    20221128-1Spring_day02(资料来自黑马程序)
    云安全解决方案安全保障体系框架
    PDF文件怎么解密?教你三种解密的方法
    2022全网最全最细的jmeter接口测试教程以及接口测试流程详解— 使用JMeter发送一个请求
    OceanBase 来参加外滩大会了(内附干货PPT)
    【脑肿瘤分割】Deep learning based brain tumor segmentation: a survey
    解决外网404:清除DNS缓存并配置host主机使用知名公共DNS服务
  • 原文地址:https://blog.csdn.net/weixin_53197693/article/details/133563079