距离上一篇博客已经过去差不多半年的时间,虽然这半年一直有其他各种莫名其妙的事打断,但是工作内容始终还是围绕着linux打印系统在开展。虽然进度很慢,里边到现在还是有细节没有太弄懂,但是源码和介绍已经差不多都过了两遍,对CUPS也已经有了一个基本的认识。本节主要介绍CUPS的主要概念,通过各个不同的部分,在深入的去理解CUPS,从而达到实现特定需求的功能。闲话结束,下面开始本节重点。

1.什么是CUPS?

这个问题网上回答一搜一大堆,但是基本上都是复制和拷贝没有自己的理解,所以在这里从新一下自己对于CUPS的理解。CUPS是一种供Unix以及类Unix操作系统使用的打印系统。通过这种打印系统,能够使用几乎任何类型的打印机打印文件。

CUPS以互联网打印协议(IPP)为基础。IPP是一种网络打印协议,它使用户能够在办公室里或世界上任何地方通过网络打印机进行本地或远程打印。IPP定义了打印、管理打印作业以及打印机选项(如纸张大小、分辨率等)的标准协议。

和所有以IP为基础的协议一样,IPP既可以在本地使用,也可以通过互联网同数百或数千英里之外的打印机一起使用。但是与其他协议不同的是,IPP还支持“验证”(保护打印机的口令)以及“访问控制”(只允许特定的机器或人访问打印机)。此外,IPP还支持“加密”(就是打乱打印数据,使数据无法识别)。这使得IPP比传统的LPD协议呀健全和安全。

IPP是超文本传输协议(HTTP)的上层协议(虽然到现在为止我还是只知道HTTP名字而已转存失败重新上传取消转存失败重新上传取消转存失败重新上传取消,但是并不影响去分析IPP报文),HTTP是互联网上Web服务器的工作基础。用户可以查看文档、检查有关打印机或服务器的状态信息,以及使用Web浏览器(参见图1-1)。

图1-1 CUPS的Web界面

CUPS提供了完整的基于IPP/1.1的打印系统。该系统包括Basic、Digest和本地认证验证、用户、域、基于IP的访问控制、128位加密。

CUPS除了提供标准的打印命令,还提供了Berkeley(lpr)和System V(lp)打印命令。

CUPS学习二:CUPS概念介绍。相关推荐

  1. apache Storm学习之二-基本概念介绍

    2.1 Storm基本概念 在运行一个Storm任务之前,需要了解一些概念: Topologies Streams Spouts Bolts Stream groupings Reliability ...

  2. 变分推断(variational inference)学习笔记(1)——概念介绍

    ref:http://www.crescentmoon.info/?p=709#more-709 问题描述 变分推断是一类用于贝叶斯估计和机器学习领域中近似计算复杂(intractable)积分的技术 ...

  3. 蓝牙 BLE 协议学习: 有关概念介绍

    背景 在学校内就用过蓝牙技术参加过比赛(并拿了奖):而蓝牙作为物联网中比较常见的协议,有必要进行深入的学习.此后的文章会以 ble(v4.0) 进行学习. 介绍 蓝牙技术最初由电信巨头爱立信公司于 1 ...

  4. fusionjs 学习二 核心概念

    核心概念 middleware 类似express 的中间件模型(实际上是构建在koa中间件模型上的),但是和koa 的中间件有差异 fusionjs 的中间件同时可以运行在浏览器页面加载的时候 se ...

  5. 区块链教程(二):基础概念介绍

    注:本教程为技术教程,不谈论且不涉及炒作任何数字货币 本系列重点在于以太坊基础知识.以太坊客户端以及以太坊solidity编程,因此博客重点在于以太坊核心知识点的掌握,区块链部分的基础知识可以作为补充 ...

  6. 大白话5分钟带你走进人工智能-第二十八节集成学习之随机森林概念介绍(1)

                                                          第二十八节集成学习之随机森林概念介绍(1) 从本系列开始,我们讲解一个新的算法系列集成学习. ...

  7. 蓝牙音频双剑客(二)--高质量音频分布协议(A2DP) 概念介绍

    零. 概述 主要介绍下蓝牙协议栈(bluetooth stack)传统蓝牙音频协议之高质量音频分布协议(A2DP) 概念介绍,包括在协议栈中的架构,角色以及Source到Sink的发送Audio流程 ...

  8. HTML/CSS学习笔记01【概念介绍、基本标签】

    w3cschool菜鸟教程.CHM(腾讯微云):https://share.weiyun.com/c1FaX6ZD HTML/CSS学习笔记01[概念介绍.基本标签.表单标签][day01] HTML ...

  9. 二.激光SLAM框架学习之A-LOAM框架---介绍及其演示

    专栏系列文章如下: 一:Tixiao Shan最新力作LVI-SAM(Lio-SAM+Vins-Mono),基于视觉-激光-惯导里程计的SLAM框架,环境搭建和跑通过程_goldqiu的博客-CSDN ...

最新文章

  1. spark—3(Spark Scheduler)
  2. HDU 2189 悼念512汶川大地震遇难同胞——来生一起走
  3. 分析脚本文件AndroidInitProcess分析心得(1)
  4. Redis学习之复制(三)
  5. 《爆发》作者:大数据领域将有新赢家
  6. 怎么样解决小交换机引起的路由环路故障?
  7. 企业数字化转型过程中,如何真正把数据用起来、用的对、用的好?
  8. pytorch学习笔记(二十三):卷积神经网络(LeNet)
  9. SQL语法集锦一:SQL语句实现表的横向聚合
  10. dlib 怎么安装vs2017_VS2017+DLib_19.17详细配置教程
  11. 目前Java编程语言最流行的7个框架,你了解多少?
  12. springboot社区再生资源上门回收平台毕业设计-附源码072049
  13. robots文件对网站优化有哪些作用
  14. CAR-T研究最新进展(2022年10月第二期)
  15. 微信摇一摇linux,关于微信摇一摇iBeacon配置流程
  16. Hexo博客添加live2d卡通人物
  17. 《极客时间-技术管理实战》读书笔记
  18. 游戏c#脚本语言,C#作为脚本语言执行解密
  19. Oracle删表报错ora00054,【Oracle】ORA-00054 错误解决方法
  20. 案例:后台管理案例(VUE路由案例)

热门文章

  1. Element日期选择器带快捷选项切换日期类型
  2. PS CC2019安装
  3. linux防火墙reject,Iptables 扩展动作 Reject Mark
  4. 【NEO NEXT社区】高校区块链技术分享会——上海交通大学
  5. kali linux外网渗透指定ip,kali Linux局域网渗透之win10
  6. Blender软件使用Maps Models Importer插件导入Google地图3d模型(非常简单)
  7. blender改变物体中心位置
  8. c++ 统计英文文本中每个单词的词频并且按照词频对每行排序
  9. python牛顿法求方程的根_python计算方程式根的方法 如何用python计算三元方程
  10. 上项线体表位置_人体体表定位标志