Caractéristiques d'enregistrement du format de paquet
Le pilote dlpi prend en charge les interfaces réseau CDLI (Common Data Link Interface) génériques en permettant à l'utilisateur de spécifier le format de paquet particulier nécessaire pour le support de transmission sur lequel le flux est créé.
A l'aide du message Streams M_IOCTL ou M_CTL , l'utilisateur peut spécifier le format de paquet. Si aucun format de paquet n'est spécifié, la valeur par défaut est NS_PROTO.
L'utilisateur DLPI spécifie le format de paquet via l'ioctl STREAMS I_STR . L'utilisateur DLPI peut utiliser une spécification de format de paquet par flux. Ce format de paquet doit être spécifié après la liaison et avant la liaison. Sinon, une erreur est générée.
Les formats de paquet définis dans /usr/include/sys/cdli.h sont les suivants:
| Article | Descriptif |
|---|---|
| NS_PROTO | Supprimez tous les en-têtes de niveau lien. Le protocole SNAP (Sub-Network Access Protocol) n'est pas utilisé. |
| NS_PROTO_SNAP | Supprimez tous les en-têtes de niveau lien, y compris SNAP. |
| NS_INCLUDE_LLC | Laissez les en-têtes LLC en place. |
| NS_INCLUDE_MAC | Ne supprimez aucun en-tête. |
Les formats de paquet définis dans le fichier /usr/include/sys/dlpi_aix.h sont les suivants:
| Article | Descriptif |
|---|---|
| NS_PROTO_DL_COMPAT | Utilisez le format d'adresse DLPI AIX® 3.2.5 . |
| NS_PROTO_DL_DONTCARE | Aucune adresse n'est présente dans DL_UNITDATA_IND. Pour la primitive DL_UNITDATA_IND , DLPI fournit les informations d'en-tête dans la structure dl_unitdata_ind_t . |
mac_addr.dsap[.snap].
Individuellement, les formats de paquet ont les exigences suivantes:
| Article | Descriptif |
|---|---|
| NS_PROTO ou NS_PROTO_SNAP | Le contrôle d'accès moyen (MAC) et le contrôle de liaison logique (LLC) sont inclus dans l'en-tête DLPI, et la partie données du message ne contient que des données. L'en-tête NS_PROTO n'inclut pas SNAP, contrairement à l'en-tête NS_PROTO_SNAP . Les deux formats de paquet présentent les adresses de destination en tant quemac_addret les adresses source en tant quemac_addr.ssap.dsap.ctrl[.snap]. Pour la primitive DL_UNITDATA_REQ , l'utilisateur DLPI doit fournir l'adresse de destination et un point d'accès au service de destination (DSAP) facultatif dans l'en-tête DLPI. Si l'utilisateur DLPI n'indique pas le DSAP, le DSAP indiqué au moment de la liaison est utilisé. |
| NS_PROTO_DONTCARE | Le pilote dlpi ne place aucune adresse dans DL_UNITDATA_INDen amont. Les adresses sont toujours requises sur DL_UNITDATA_REQ. |
| NS_PROTO_DL_COMPAT | Le pilote dlpi utilise le format d'adresse utilisé dans le pilote dlpi AIX® 3.2.5 , qui est identique en amont et en aval. Les adresses source et de destination sont présentées commemac_addr.dsap[.snap]. |
| NS_INCLUDE_LLC | L'en-tête DLPI contient uniquement les adresses de destination et source. Seule la LLC est placée dans la partie M_DATA du message DL_UNITDATA_IND . Les adresses source et de destination sont présentées sous la formemac_addr. Pour la primitive DL_UNITDATA_REQ , l'utilisateur DLPI doit fournir l'adresse de destination et un DSAP facultatif dans l'en-tête DLPI. Si l'utilisateur DLPI n'indique pas le DSAP, le DSAP indiqué au moment de la liaison est utilisé. |
| NS_INCLUDE_MAC | Les adresses MAC et LLC sont toutes deux placées dans la partie données du message. Ainsi, l'utilisateur DLPI doit avoir connaissance de l'en-tête MAC et de l'architecture LLC pour une interface spécifique permettant de récupérer l'en-tête MAC et la LLC à partir de la partie de données du message. Ce format définit le flux en mode brut, qui ne traite pas les messages entrants ou sortants. Pour la primitive DL_UNITDATA_REQ , l'utilisateur DLPI doit fournir l'adresse de destination et un DSAP facultatif dans l'en-tête DLPI. Si l'utilisateur DLPI n'indique pas le DSAP, le DSAP indiqué au moment de la liaison est utilisé. Les messages en aval ne nécessitent pas l'en-tête DL_UNITDATA_REQ et doivent être reçus en tant que messages M_DATA . Les messages en aval doivent contenir un en-tête MAC complet, qui sera copié sur le support sans traduction supplémentaire. |