NetWare Core Protocol
# NetWare Core Protocol

NCP im TCP/IP-Protokollstapel: :
| Anwendung | NCP | NCP | NCP | NCP | NCP |
| Transport | TCP | TCP | TCP | TCP | TCP |
| Internet | IP (IPv4, IPv6) | IP (IPv4, IPv6) | IP (IPv4, IPv6) | IP (IPv4, IPv6) | IP (IPv4, IPv6) |
| Netzzugang | Ethernet | Token Bus | Token Ring | FDDI | … |
Das NetWare Core Protocol (NCP) ist ein von Novell entwickeltes Netzwerkprotokoll.
Es wurde für das Netzbetriebssystem NetWare entwickelt und ist ein verbindungsorientiertes, proprietäres Protokoll, das auf SPX/IPX aufbaut. Im OSI-Modell reicht es von der Transportschicht bis zur Anwendungsschicht. Es dient dem Datenaustausch zwischen Betriebssystem-Netware-Client und Netware-Server. Mit der Socket-Nummer 0x0451 überträgt es die Daten der Datei-, Druck- und Verbindungsdienste. Ab Netware 5 konnte NCP auch über TCP/IP transportiert werden; IPX war nicht mehr nötig. Im Gegensatz zu TCP/IP besitzt es keine Fenstergröße – das heißt, jedes Paket muss einzeln bestätigt werden. Mit der Einführung des Burst Mode Protocol (BMP) als speziellen NCP-Pakettyp hat Novell den Durchsatz vom NCP gesteigert. Seitdem können bis 64 kB ohne weitere Anforderung empfangen werden.

## Aufbau eines Anforderungspaketes

Typischer Aufbau eines Anforderungspaketes:
* Request Type
* Sequence Number
* Connection Number Low
* Task Number
* Connection Number High
* Request Code
* Data (Variable Length)
Request Type zur Paket-Identifikation:
* 0x1111 Allocate slot request
* 0x2222 File server request
* 0x3333 File server reply
* 0x5555 Deallocate slot request
* 0x7777 Burst mode packet (BMP)
* 0x9999 Positive acknowledge
Sequence Number: Ein Byte fortlaufende Nummer der Pakete.
Connection Number Low: Unteres Byte der Verbindungsnummer des Clients.
Task Number: Nummer des Prozesses, zu dem das Paket gehört.
Connection Number High: Oberes Byte der Verbindungsnummer des Clients.
Request Code: Funktionsnummer des Pakets.
Der Aufbau des Antwortpakets gleicht dem Anforderungspaket mit Ausnahme der beiden Bytes hinter Connection Number High:
* Completion Code
* Connection Status
Completion Code: Ergebnis der Anforderung. Null heißt SUCCESSFUL und die Werte ungleich Null geben die Fehlernummer an.
Connection Status: Das vierte Bit ist eins, wenn der Server gerade heruntergefahren wird.

## Das Protokoll im OSI-Modell

| OSI-Schicht | OSI-Schicht | Englisch | Einordnung | TCP/IP-Schicht | Einordnung | IPX/SPX/NCP |
| 7 | Anwendung | Application | Anwendungs- orientiert | Anwendung | Ende zu Ende (Multihop) | NCP |
| 6 | Darstellung | Presentation | Anwendungs- orientiert | Anwendung | Ende zu Ende (Multihop) | NCP |
| 5 | Sitzung | Session | Anwendungs- orientiert | Anwendung | Ende zu Ende (Multihop) | NCP |
| 4 | Transport | Transport | Transport- orientiert | Host to Host | Ende zu Ende (Multihop) | SPX |
| 3 | Vermittlung | Network | Transport- orientiert | Internet | Punkt zu Punkt | IPX |
| 2 | Sicherung | Data Link | Transport- orientiert | Netzwerk | Punkt zu Punkt | Ethernet Token Ring FDDI ARCNET |
| 1 | Bitübertragung | Physical | Transport- orientiert | Netzwerk | Punkt zu Punkt | Ethernet Token Ring FDDI ARCNET |