Protocole

From aldeid
Jump to navigation Jump to search

Qu'est-ce qu'un protocole ?

Définition

Un protocole est un ensemble de procédures commun qui permet de faire dialoguer des machines entre elles, indépendamment de leurs spécificités (OS, support, etc.). Chaque protocole a sa spécialité. Par exemple, le protocole ICMP permet de transmettre des messages relatifs à la gestion des erreurs. Quelques uns d'entre eux sont détaillés dans les paragraphes qui suivent.
Chaque protocole est référencé par un numéro.
Le tableau suivant en liste quelques-uns :

Num. binaire (8bits) Num. décimale Protocole Description
00000001 1 ICMP Internet Control Message Protocol : Messages de contrôles Internet
00000100 4 IP Internet Protocol : IP dans IP (encapsulation)
00000110 6 TCP Transport Control Protocol : Contrôle de transmission
00010001 17 UDP User Datagram Protocol : Datagramme utilisateur
00101001 41 IPv6 IP version 6

Pour retrouver l'ensemble des numéros de protocoles, référez-vous à la RFC1700.

Spécificités des protocoles

A chaque protocole correspond un langage. L'outil Netcat permet de simuler des communications :

HTTP

Par exemple, les commandes suivantes :

$ nc aldeid.com 80
GET /index.php HTTP/1.1
<<ENTER>>

permettent d'obtenir les résultats suivants :

HTTP/1.1 400 Bad Request
Date: Tue, 03 Feb 2009 05:39:21 GMT
Server: Apache
Content-Length: 226
Connection: close
Content-Type: text/html; charset=iso-8859-1

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>400 Bad Request</title>
</head><body>
<h1>Bad Request</h1>
<p>Your browser sent a request that this server could not understand.<br />
</p>
</body></html>

FTP

INCOMPLETE SECTION OR ARTICLE
This section/article is being written and is therefore not complete.
Thank you for your comprehension.

SSH

Certains protocoles, comme SSH par exemple, renvoient directement une information lors de la connexion avec Netcat :

$ nc 192.168.182.129 22
SSH-2.0-OpenSSH_4.3p2 Debian-9etch3

Il est ensuite possible de dialoguer avec le serveur distant :

INCOMPLETE SECTION OR ARTICLE
This section/article is being written and is therefore not complete.
Thank you for your comprehension.

Principe d'encapsulation

Lorsque des données sont transmises par une application, celles-ci sont transmises d'une couche à une autre. A chacune de ces étapes, les données de la couche N-1 sont encapsulées dans la couche N. Ce principe consiste en l'ajout d'en-têtes spécifiques à chaque couche. Lors de la réception, l'inverse se produit, les en-têtes sont lus puis supprimés.

Image:protocole-001.png        Image:protocole-002.png


En fonction de la couche sur laquelle se trouvent les données, on parle de :

  • message si les données se situent au niveau de la couche application;
  • segment lorsqu'elles se trouvent sur la couche transport;
  • datagramme lorsqu'elles sont transmises à la couche Internet;
  • trame (voir interprétation des trames réseau) lorsqu'elles se situent sur la couche réseau.

Le principe d'encapsulation est souvent associé au masquage d'informations (encapsulation d'informations dans un protocole crypté afin de les masquer).
Le protocole SSH permet par exemple de créer un tunnel d'informations cryptées. Une fois le tunnel créé, il est possible de lui transmettre des informations issues de divers protocoles (FTP, HTTP, etc.).

Par ailleurs, on parle également d'encapsulation pour des protocoles comme HTTPS (encapsulation du protocole HTTP dans un protocole sécurisé HTTPS).

Les protocoles non numérotés

Les protocoles numérotés

Num Nom Description
0 Réservé
1 ICMP Internet Control Message
2 IGMP Internet Group Management
3 GGP Gateway-to-Gateway
4 IP IP in IP (encasulation)
5 ST Stream
6 TCP Transmission Control
7 UCL UCL
8 EGP Exterior Gateway Protocol
9 IGP any private interior gateway
10 BBN-RCC-MON BBN RCC Monitoring
11 NVP-II Network Voice Protocol
12 PUP PUP
13 ARGUS ARGUS
14 EMCON EMCON
15 XNET Cross Net Debugger
16 CHAOS Chaos
17 UDP User Datagram Protocol
18 MUX Multiplexing
19 DCN-MEAS DCN Measurement Subsystems
20 HMP Host Monitoring
21 PRM Packet Radio Measurement
22 XNS-IDP XEROX NS IDP
23 TRUNK-1 Trunk-1
24 TRUNK-2 Trunk-2
25 LEAF-1 Leaf-1
26 LEAF-2 Leaf-2
27 RDP Reliable Data Protocol
28 IRTP Internet Reliable Transaction
29 ISO-TP4 ISO Transport Protocol Class 4
30 NETBLT Bulk Data Transfer Protocol
31 MFE-NSP MFE Network Services Protocol
32 MERIT-INP MERIT Internodal Protocol
33 SEP Sequential Exchange Protocol
34 3PC Third Party Connect Protocol
35 IDPR Inter-Domain Policy Routing Protocol
36 XTP XTP
37 DDP Datagram Delivery Protocol
38 IDPR-CMTP IDPR Control Message Transport Proto
39 TP++ TP++ Transport Protocol
40 IL IL Transport Protocol
41 SIP Simple Internet Protocol
42 SDRP Source Demand Routing Protocol
43 SIP-SR SIP Source Route
44 SIP-FRAG SIP Fragment
45 IDRP Inter-Domain Routing Protocol
46 RSVP Reservation Protocol
47 GRE General Routing Encapsulation
48 MHRP Mobile Host Routing Protocol
49 BNA BNA
50 SIPP-ESP SIPP Encap Security Payload
51 SIPP-AH SIPP Authentication Header
52 I-NLSP Integrated Net Layer Security
53 SWIPE IP with Encryption
54 NHRP NBMA Next Hop Resolution Protocol
55-60 Non assigné
61 any host internal protocol
62 CFTP CFTP
63 any local network
64 SAT-EXPAK SATNET and Backroom EXPAK
65 KRYPTOLAN Kryptolan
66 RVD MIT Remote Virtual Disk Protocol
67 IPPC Internet Pluribus Packet Core
68 any distributed file system
69 SAT-MON SATNET Monitoring
70 VISA VISA Protocol
71 IPCV Internet Packet Core Utility
72 CPNX Computer Protocol Network Executive
73 CPHB Computer Protocol Heart Beat
74 WSN Wang Span Network
75 PVP Packet Video Protocol
76 BR-SAT-MON Backroom SATNET Monitoring
77 SUN-ND SUN ND PROTOCOL-Temporary
78 WB-MON WIDEBAND Monitoring
79 WB-EXPAK WIDEBAND EXPAK
80 ISO-IP ISO Internet Protocol
81 VMTP VMTP
82 SECURE-VMTP SECURE-VMTP
83 VINES VINES
84 TTP TTP
85 NSFNET-IGP NSFNET-IGP
86 DGP Dissimilar Gateway Protocol
87 TCF TCF
88 IGRP IGRP
89 OSPFIGP OSPFIGP
90 Sprite-RPC Sprite RPC Protocol
91 LARP Locus Address Resolution Protocol
92 MTP Multicast Transport Protocol
93 AX.25 AX.25 Frames
94 IPIP IP-within-IP Encapsulation Protocol
95 MICP Mobile Internetworking Control Pro.
96 SCC-SP Semaphore Communications Sec. Pro.
97 ETHERIP Ethernet-within-IP Encapsulation
98 ENCAP Encapsulation Header
99 any private encryption scheme
100 GMTP GMTP
101-254 Non assigné
255 Réservé