SAP (Service Access Point): C'est l'équivalent du port en IP.
QoS (Quality of Service): C'est la qualité de service demandée. Elle permet de spécifier le débit moyen, le débit de crête et le nombre de cellules par burst. Le réseau ATM se base sur ces informations pour savoir s'il a les ressources nécessaires pour garantir la QoS demandée. Si le réseau ne possède pas les ressources, il peut ne pas accepter l'appel.
L'API permet de spécifier 6 champs :
Les débits sont exprimés en kilobits par sec (Kb/s), et le nombre
de cellules sont en milliers.
Lorsque qu'un paramètre est spécifié à 0, le réseau
fourni alors une connexion de type Best Effort. Il essaye de transmettre
au mieux les données que vous lui fournissez, mais sans garanties de
service.
Voici des valeurs typiques pour spécifier la QoS selon le type d'application utilisant la connexion ATM:
| Service | Débit moyen | Sporadicité |
|---|---|---|
| Voix | 32 KBit/s | 2 |
| Données interactives | 1 à 100 KBit/s |
1 à 50 |
| Données sporadiques | 1 à 10 MBit/s | 1 à 10 |
| TV | 20 à 50 MBit/s | 2 à 3 |
| TV Haute définition | 100 à 150 MBit/s | 1 à 2 |
| Vidéo Téléphonie (visio-conférence) | 2 MBit/s | 5 |
Note: Le débit minimal est 66 Ko/s. Si on spécifie un débit inférieur, il est arrondi à 66 Ko/s.
AAL (ATM Adaptation Layer): Ce sont les différentes couches de niveau 3. L'API de FORE Systems offre trois AAL:
Les types d'AAL à utiliser :
aal = aal_null;aal = aal_type_4;aal = aal_type5;Adresse ATM : c'est une adresse codée sur 20 octets. Les premiers octets désignent le sous-réseau auquel appartient la machine. Les derniers octets de l'adresse ATM son ceux de l'adresse MAC de la machine (et garantissent donc des adresses ATM uniques).
dataflow : le type de connexion utilisée : mono-directionnelle ( dataflow = simplex ) ou bi-directionnelle ( dataflow = duplex ).
PVC et SVC (Permanent Virtual Connection
et Switched Virtual Connection) : Ces deux types de connexions se distinguent
par leur durée de vie. Les PVC sont crées par l'administrateur
du réseau, et sont donc permanentes. Par contre, une SVC est crée
chaque fois qu'un connexion est ouverte entre deux programmes. Elle est détruite
quand la connexion se termine.
En dehors de leur mode de création, il n'y a pa de différences
entre PVC et SVC.
MTU (Maximum Transmission Unit) : nombre maximum d'octets que l'on peut transmettre en un seul bloc avec les AAL 3/4 et 5.
atm_errno et errno : Ces deux variables contiennent les codes de l'erreur qui vient de se produire.
atm_errno contient toujours la valeur renvoyée par la fonction
atm_* qui a échouée.
errno contient elle la raison pour laquelle la fonction a échouée
(un peu plus intéressant !)
Voici la liste des erreurs qui sont communes et qui doivent être traitées :
Voici un exemple de test (qui intercepte l'erreur non fatale "interrupted system call") :
octets = atm_recv(fd, buffer, taille);
if( octets < 0)
{ /* Erreur */
if( errno == 4) /* interrupted system call
: a ignorer */
else
{
atm_error("atm_recv");
exit(0);
}
}