# Datacommunicatie in informatica/Frame relay
### Inleiding

Frame Relay is een performant WAN protocol dat zich bevindt op de physical en datalink layers van het OSI model. Het gaat om een packet-switched technologie (maakt gebruik van variable-length packets en statistical multiplexing). Frame Relay beperkt zich tot layer 2 (datalink layer) terwijl X.25 tot layer 3 (network layer) reikt.

### Devices in een Frame Relay netwerk

Mogelijke devices binnen een Frame Relay netwerk zijn:
* Data terminal equipment (DTE)
* Data circuit-terminating equipment (DCE)
DTE's bevinden zich bij de klant zelf. Bvb. terminal, personal computer, router, enz. DCE's zijn internetworking devices die door de provider worden beheerd. Zij zorgen voor het eigenlijke transport van data door het WAN heen. Het zijn packet switches.
De verbinding tussen een DTE en een DCE bestaat uit een physical layer component (bvb. RS-232) en een link layer component (het Frame Relay protocol).

### Frame Relay virtual circuits

Een Frame Relay virtual circuit is een logische connectie tussen twee DTE's door een Frame Relay packet-switched netwerk heen. Virtual circuits worden uniek geïdentificeerd door middel van een data-link connection identifier (DLCI).
Er bestaan twee soorten virtual circuits:
* Switched virtual circuits (SVC's)
* Permanent virtual circuits (PVC's)
Switched virtual circuits zijn tijdelijke connecties tussen DTE's door een Frame Relay netwerk heen. Deze worden gebruikt wanneer er sporadisch data wordt getransfereerd.
Er zijn vier mogelijk statussen:
* Call setup: Virtual circuit tussen de DTE's wordt opgezet.
* Data transfer: Er wordt data getransfereerd tussen de DTE's.
* Idle: De connectie is nog actief, maar er wordt geen data getransfereerd. Wanneer een SVC gedurende een bepaalde tijd idle blijft, wordt het verbroken.
* Call termination: Virtual circuit tussen de DTE's wordt verbroken.
Permanent virtual circuits zijn permanente connecties tussen DTE's door een Frame Relay netwerk heen. Deze worden gebruikt wanneer er frequent data moet worden doorgestuurd.
PVC's kennen slechts twee statussen (omdat de connectie altijd open ligt):
* Data transfer: Er wordt data getransfereerd tussen de DTE's.
* Idle: De connectie is nog actief, maar er wordt geen data getransfereerd. In tegenstelling tot SVC's worden PVC's nooit verbroken zelfs niet wanneer ze lange tijd idle blijven.
De data-link connection identifier (DLCI) identificeert een virtual circuit en wordt typisch toegekend door de Frame Relay service provider (bvb. de telefoonmaatschappij). DLCI's hebben een lokale significantie wat betekent dat ze uniek moeten zijn binnen het LAN, maar niet uniek hoeven te zijn binnen het Frame Relay WAN.

### Congestion-control mechanismen

Er bestaan twee mechanismen om opstoppingen op het netwerk te behandelen:
* Forward-explicit congestion notification (FECN)
* Backward-explicit congestion notification (BECN)
FECN en BECN worden gecontroleerd door 1 bit in de Frame Relay frame header.
FECN: Wanneer een DTE frames in het netwerk stuurt en er is vertraging/opstopping in het netwerk, dan zullen de DCE's de FECN bit in het frame op 1 zetten. Wanneer het frame aankomt bij de destination DTE, zal deze zien dat het frame met problemen heeft te maken gehad tijdens zijn weg door het netwerk. De DTE kan deze informatie dan doorgeven aan een hoger protocol voor verwerking waardoor eventueel een flow control mechanisme in gang kan worden gezet.
BECN: DCE's zetten de BECN bit op 1 in frames die in tegenovergestelde richting reizen van frames waarvan de FECN bit op 1 stond.
Tot slot vinden we in de Frame Relay frame header ook nog een Discard Eligibility (DE) bit terug. Deze geeft aan dat een frame van minder belang is dan andere frames. Wanneer een DTE de DE bit op 1 zet en er treedt netwerkopstopping op, dan zullen DCE's eerst deze frames laten vallen.