# NetWare Core Protocol

El NetWare Core Protocol (NCP) és un protocol de xarxa que s'utilitza en alguns productes de Novell, Inc. Normalment s'associa amb el sistema operatiu client-servidor Novell NetWare que originalment suportava principalment estacions de client MS-DOS, però posteriorment suportava altres plataformes com ara com Microsoft Windows, es va afegir el clàssic Mac OS, Linux, Windows NT, Mac OS X i diversos sabors d'Unix.
El NCP s'utilitza per accedir a fitxers, impressió, directoris, sincronització del rellotge, missatgeria, execució de comandaments remots i altres funcions de servei de xarxa. Originalment va aprofitar una configuració de xarxa senzilla i una petita empremta de memòria de la pila de protocols IPX/SPX. Des de 1991 la implementació TCP/IP està disponible.
Novell eDirectory utilitza NCP per sincronitzar els canvis de dades entre els servidors d'un arbre de serveis de directori.

## Informació tècnica

La implementació IPX/SPX original es va proporcionar només per a la plataforma Novell NetWare i ara està obsoleta. La implementació TCP/IP utilitza el port TCP / UDP 524 i es basa en SLP per a la resolució de noms.
Per a l'operació NCP a xarxes IPX/SPX, es va utilitzar el protocol IPX nu amb el camp Tipus de paquet establert a 17. A l'estació de treball (estació client) es va utilitzar el número de sòcol IPX de 0x4003, al costat del servidor el número de sòcol de 0x0451.
La PDU NCP té la següent estructura:
| Octets | Camp |
| 2 | tipus NCP |
| 1 | Número de seqüència |
| 1 | Número de connexió, octet inferior |
| 1 | Número de tasca |
| 1 | Número de connexió, octet superior |
| 1 | Codi de finalització (només al paquet de resposta) |
| 1 | Estat de connexió (només al paquet de resposta) |
| var | Dades |
El camp NCP Type determina el tipus d'operació:
| Valor | Significat |
| 0x1111 | Creeu una connexió de servei |
| 0x2222 | Sol·licitud de servei |
| 0x3333 | Resposta del servei |
| 0x5555 | Destrueix la connexió del servei |
| 0x7777 | Transferència en mode ràfega |
| 0x9999 | Sol·licitud que s'està processant (servidor ocupat) |
Les sol·licituds individuals s'identifiquen amb el número de seqüència (mòdul 256). El número de connexió identifica una connexió individual d'estació client al servidor. Els servidors de Novell Netware de la versió fins a 2.x suportaven fins a 255 connexions i el número de connexió només ocupava 1 octet. Més tard es va ampliar a 2 octets. El número de tasca té un valor 3 a les sol·licituds i 1 a les respostes. El camp Dades comença amb l'octet de número de funció NCP que distingeix els serveis individuals.
El contingut i la longitud de la resta del camp Dades depèn de la funció NCP.

## Implementacions del costat del client

* Client Novell per a Windows Vista de Novell.
* Client Novell per a Windows 2000/XP/2003 de Novell.
* Client Novell per a Windows 95/98 de Novell.
* Client Novell per a Linux de Novell.
* Clients NetWare per a DOS Arxivat 7-2008. Wayback Machine de Novell ja no és compatible.
* Client NetWare per a Mac OS X de Prosoft Engineering.
* ncpfs, una implementació de client NCP de codi obert per a Linux.
* Servei de client per a NetWare de Microsoft.

## Referències

* ↑ «NetWare Core Protocols - Documentation | Micro Focus» (en anglès). [Consulta: 15 novembre 2023].
* ↑ «Netware Core Protocol» (en anglès americà). [Consulta: 15 novembre 2023].
* ↑ «Wireshark · Display Filter Reference: NetWare Core Protocol» (en anglès). [Consulta: 15 novembre 2023].
* ↑ «How to quickly identify error conditions with Ethereal» (en anglès), 15-07-2003. [Consulta: 8 febrer 2023].