Protocollo AMQP e protocolli in generale

0

Recentemente stavo leggendo le specifiche del protocollo AMQP dal sito web ufficiale, comunque, perché questo è il mio primo protocollo che sto cercando di studiare in profondità, così mi vengono in mente un paio di domande generiche sui protocolli che mi piacerebbe trovare una risposta.

  • In che modo un protocollo contiene sistema di tipi, metodi, costruttori e così via? Dove sono definite queste cose?
  • Come fa il sistema operativo a sapere quale porta TCP è per AMQP e altri protocolli basati su TCP / IP? Esiste una sorta di mappatura nel sistema operativo?
  • In che modo il mio sistema operativo è a conoscenza del protocollo? Installo qualcosa senza saperlo?
posta kuskmen 21.06.2017 - 17:42
fonte

1 risposta

3
  • How does a protocol contain type system, methods, constructors and etc? Where are these things defined?

Tutti questi devono essere definiti nelle specifiche del protocollo stesso. Non tutti i protocolli hanno un sistema di tipi, metodi o costruttori e non esiste un consenso generale su come dovrebbero apparire (specialmente il sistema dei tipi) nel contesto dei protocolli di comunicazione.

  • How does my OS system knows which tcp port is for AMQP and other protocols based on TCP/IP? Is there some sort of mapping in the OS?

In linea di principio, ogni protocollo può essere associato a qualsiasi porta esistente. Esiste solo una convenzione sulla possibilità di raggiungere determinati protocolli su una porta specifica, come la porta 80 per il protocollo HTTP.
Il programma che fornisce un server per un particolare protocollo (come HTTP, AMQP o un protocollo che si trova sopra quello) in genere indica al sistema operativo su quale porta vuole ricevere i dati del protocollo.

  • How does my OS even know about protocol? Do I install something without knowing?

Dipende dal protocollo in questione. Alcuni protocolli (come IP, TCP e UDP) sono visti come così basilari e onnipresenti che ogni SO viene di default con un'implementazione per loro.
Alcuni altri protocolli (come HTTP o SMTP) sono in genere implementati nei programmi dello spazio utente e non sono noti al sistema operativo.
Altri protocolli che devono essere utilizzati come blocchi di base per la creazione di altri protocolli potrebbero essere forniti come librerie che è necessario installare separatamente (e potrebbero diventare una parte installata predefinita del sistema operativo se diventano abbastanza popolari). AMQP sembra essere in quest'ultima categoria.

    
risposta data 21.06.2017 - 19:28
fonte

Leggi altre domande sui tag