LPD | |
---|---|
Nume | Protocolul Line Printer Daemon |
Nivel (conform modelului OSI ) | Aplicat |
Familie | TCP/IP |
Creat în | 1990 |
Port/ID | 515/ TCP |
Scopul protocolului | Imprimare în rețea |
Specificație | RFC 1179 |
Principalele implementări (clienți) | componente ale sistemului de operare (drivere de imprimare de rețea) |
Implementări de bază ( servere ) | LPRng , sistem comun de imprimare UNIX |
LPD (din engleză Line Printer Daemon - un demon de imprimare care implementează protocolul cu același nume ( English Line Printer Daemon Protocol - "protocol of the line printing daemon") LPR Acest protocol este cunoscut și sub numele. . / LPD - un protocol de rețea la nivel de aplicație pentru transferul documentelor pentru imprimare, este un standard de facto pentru sistemele UNIX care oferă capabilități de imprimare de bază. În afara lumii Unix, partea client a LPR este susținută de toate sistemele de operare moderne, partea de server este acceptat de unele imprimante, routere și microservere (nu în vrac).
Spre deosebire de imprimarea Windows, nu funcționează cu „imprimante”, ci cu „cozi” - în cel mai simplu caz, coada este identificată cu numele portului imprimantei: de exemplu, coada lpt2 va desemna o imprimantă conectată la portul LPT2 pe serverul de imprimare.
Din punct de vedere istoric, au existat două sisteme de imprimare pentru imprimarea pe sisteme UNIX: LPD, dezvoltat pentru Berkeley UNIX și sistemul AT&T Line Printer. Aceste sisteme de imprimare au fost create în anii 70 pentru tipărirea textelor pe imprimante de tipărire în linie (liniare). Având în vedere că hardware-ul de imprimare a evoluat semnificativ de atunci, s-ar presupune că și software-ul de management al imprimării a suferit o revizuire semnificativă. Cu toate acestea, acest lucru nu s-a întâmplat. Deși au fost create diverse sisteme de imprimare îmbunătățite, cum ar fi LPRng , niciuna dintre aceste noi dezvoltări nu a schimbat capacitățile fundamentale ale acestor sisteme.
Datorită faptului că imprimantele sunt dispozitive relativ lente, sistemul de imprimare utilizează imprimarea în fundal cu memorarea în cache a datelor pentru a elimina întârzierile în programe. Un fișier de date care urmează să fie tipărit pe o imprimantă este mai întâi plasat într-o zonă temporară (director temporar pe disc) numită zonă spool sau director spool. Un proces de fundal, demonul de imprimare, scanează periodic zona spool pentru fișiere care urmează să fie tipărite. Fiecare imprimantă conectată la sistem are propriul său subdirector în zona de spooling. Astfel, o zonă de spooling este un set de cozi de lucrări de imprimare care așteaptă momentul în care imprimanta corespunzătoare devine liberă și demonul de imprimare trimite lucrarea de imprimare dată (în fundal ).
O implementare modernă a LPD/LPR este pachetul software LPRng . Fiecare program al pachetului LPRng oferă o funcție separată a subsistemului de imprimare:
O implementare a LPR este, de asemenea, inclusă în pachetul CUPS , dar CUPS acceptă și alte protocoale de imprimare.
Comenzile de protocol încep cu un cod de funcție de un octet, urmat imediat de numele cozii de imprimare la care se aplică funcția. Dacă funcția are operanzi suplimentari, aceștia sunt separați de numele cozii printr-un caracter spațiu, filă orizontală, filă verticală sau flux de pagină. Sfârșitul unei comenzi este indicat de un caracter de linie nouă . Se deschide o nouă conexiune pentru a trimite fiecare comandă. Subcomenzile și datele sunt transmise după comandă prin aceeași conexiune. Serverul va procesa subcomenzile până când conexiunea este închisă.
Codul | Opțiuni | Date | Răspuns | Descriere | |
---|---|---|---|---|---|
01 | Întoarce-te | Începeți să imprimați orice lucrare în așteptare | |||
02 | Întoarce-te | Subcomenzi | Obțineți o lucrare de imprimare | ||
+ | 01 | — | Ștergeți toate fișierele acceptate în această comandă | ||
02 | Lungime, Nume | Fișier, 0x00 | 0x00 - succes, alt - eroare | Obțineți fișierul de control | |
03 | Lungime, Nume | Obțineți fișierul de date | |||
03 | Coadă, listă | Descrierea unei cozi care se termină cu o deconectare | Starea cozii de trimitere (formular scurt) | ||
04 | Coadă, listă | Starea cozii de trimitere (formular lung) | |||
05 | Coadă, agent, listă | Ștergeți lucrarea de imprimare |
În tabel sunt utilizate următoarele denumiri de parametri:
Fișierul de control este un fișier text , fiecare linie începe cu un caracter de comandă urmat de operanzii săi. Șirul se termină cu un caracter newline.
Echipă | Opțiuni | Descriere |
---|---|---|
C | numele clasei | Numele clasei paginii de separare. |
H | Un calculator | Numele computerului care va fi considerat sursa jobului |
eu | indentare | Indentare orizontală pentru fișierele tipărite cu comanda f |
J | numele documentului | Numele documentului care urmează să fie tipărit pe pagina de separare |
L | Utilizator | Imprimați pagina de separare |
M | Utilizator | Trimiteți un e-mail după terminarea tipăririi |
N | Fişier | Numele fișierului sursă din care a fost creat fișierul de date |
P | Utilizator | Identifică utilizatorul care a creat jobul |
S | nodul dispozitivului | Scrie un symbolmink pentru a preveni retipărirea fișierului |
T | antet | Titlul care urmează să fie tipărit prin comanda p |
U | Fişier | Ștergeți fișierul de date inutile |
W | Lăţime | Lățimea foii pentru comenzile f, l, p |
unu | Font | Nume fișier pentru sistemul de fonturi R troff (implicit Times Roman) |
2 | Font | Nume fișier pentru fontul I sistem troff (implicit Times Italic) |
3 | Font | Nume fișier pentru fontul B sistem troff (implicit Times Bold) |
patru | Font | Nume fișier pentru fontul troff S (font matematic special implicit) |
c | Fişier | Fișier de date de ieșire pe plotter , procesat ca format CIF |
d | Fişier | Imprimare fișier de date, procesare ca format DVI |
f | Fişier | Imprimați fișierul de date ca text ASCII |
g | Fişier | Ieșiți un fișier de date către un plotter, procesându-l ca ieșire din biblioteca de grafice Berkeley Unix |
l | Fişier | Imprimați fișierul de date ca text fără a elimina niciun caracter de control |
n | Fişier | tipăriți fișierul de date ca urmare a ditroff-ului |
o | Fişier | Imprimați ca fișier PostScript |
p | Fişier | Imprimați un fișier de date paginat cu numere de pagină și anteturi |
r | Fişier | Imprimați fișierul de date, tratând primul caracter al fiecărei linii ca un control în stil Fortran |
t | Fişier | Imprimați fișierul de date ca urmare a troff-ului |
v | Fişier | Imprimați fișierul în format Sun bitmap |
TCP /IP pe straturi ale modelului OSI | Protocoale de bază|
---|---|
Fizic | |
canalizat | |
reţea | |
Transport | |
sesiune | |
Reprezentare | |
Aplicat | |
Altele aplicate | |
Lista de porturi TCP și UDP |
Imprimantă și scaner | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||
| |||||||||||||||||||
|