“Tecnologías de Transporte”
Parte I
Prof. Dr. Ing. Gustavo Hirchoren
Material basado en “Data and Computer Communications”, Sixth Edition, William Stallings
Bibliografía
“Data and Computer Communications”, Sixth Edition, William Stallings. Upper Saddle River, NJ: Prentice Hall, 2000.
“Voice over Frame Relay Implementation Agreement”, FRF. 11.1, Frame Relay Forum Technical Committee, December 1998.
Bibliografía
“Frame Relay Fragmentation Implementation Agreement”, FRF.12, Frame Relay Forum Technical Committee, December 1997.
“Voice Over IP”, Uyless Black. Upper Saddle River, NJ: Prentice Hall PTR, 2000.
Ejemplo de una RED
Multiplexor/FRAD
RED
128 Kbps.-
128 Kbps.-
Terminal
Terminal
Router
Router
Multiplexor/FRAD
Central TelefónicaPlaca E1 Digital
Router
Modem (Radio, satelital, fibra, etc)
Modem (Radio, satelital, fibra, etc)
Modem (Radio, satelital, fibra, etc)
Multiplexor/FRAD
CIUDAD 3
CIUDAD 1
CIUDAD 2
NODOCIUDAD 1
NODOCIUDAD 2
NODOCIUDAD 3
NODOCIUDAD 4
Swithces
Detalle de un punto remoto
Multiplexor/FRAD
Central TelefónicaPlaca E1
Router
Modem (Radio, satelital, fibra, etc)
FXO-FXSG.703
V.35, RS232, X21, etc
V.35, RS232, X21, E&M
Conversor de interfaz
G.703 PSK, FSK,
2B1Q
INTERFACES
SERIALES
Descripción de equipamientoMULTIPLEXOR: si hablamos de una red de
paquetes, realiza multiplexación estadística, si fuese una red de conmutación de circuitos realiza multiplexación determinística en el tiempo.
FRAD (Frame Relay Assembler - Disassembler): dispositivo que recibe la información de niveles superiores de la capa OSI le agrega el header de nivel 2, la transmite y viceversa (se los suele llamar así a los equipos de Frame Relay que también realizan multiplexación estadística)
Descripción de equipamientoPAD (Packet Assembler - Disassembler):
dispositivo que recibe la información de niveles superiores de la capa OSI le agrega el header de niveles 3 y 2, la transmite y viceversa (se los suele llamar así a los equipos de X.25 que se encuentran en el cliente)
CONVERSOR DE INTERFAZ: se utiliza en el caso de que por ejemplo el modem no posea el mismo interfaz serial que el FRAD.
MODEM: recibe la información y la modula para hacerla compatible con el canal y viceversa
Principios de las redes de “packet switching”
“Circuit switching” diseñado para voz Recursos dedicados a cada llamada particular Mayoría del tiempo una conexión de datos
está inactiva Tasa de datos es fija
Ambos extremos deben operar a la misma tasa
Operación básicaDatos transmitidos en pequeños paquetes
Tipicamente 1000 octetos Mensajes más largos fragmentados en una serie
de paquetes Cada paquete contiene info de datos más control
Información de control Información de ruteo
Paquetes son recibidos, almacenados brevemente (“buffered”) y pasados al próximo nodo “Store and forward”
Uso de Paquetes
Ventajas de “packet switching”Mayor eficienciaConversión de tasa de datos
Cada estación se conecta al nodo local a su propia velocidad
Nodos almacenan datos si se requiere adaptar tasas
Paquetes se aceptan cuando la red está cargada Aumenta retardo de entrega de paquetes
Se pueden usar prioridades
Redes con Datagramas
Cada paquete tratado en forma independiente
Paquetes pueden tomar cualquier rutaPaquetes pueden llegar fuera de ordenSe pueden perder paquetesReceptor debe reordenar los paquetes y
recuperar los paquetes perdidos
Redes con Circuitos VirtualesHay una ruta establecida para cada
comunicación por la cual circulan todos los paquetes
“Call request” y “Call accept” packets establecen el circuito virtual
Cada paquete contiene un identificador del circuito virtual en lugar de la dirección de destino
No se requieren decisiones de ruteo para cada paquete
El camino no es dedicado
Circuitos Virtuales vs DatagramasCircuitos virtuales
Red puede proveer secuenciamiento y control de error
Paquetes son enrutados más rapidamente Menos confiable
Pérdida de un nodo produce caída de todos los circuitos a través de ese nodo
Datagramas No requiere fase de “call setup” Más flexible
Virtual Circuit andDatagram Operation
X.251976 Interface entre “host” y red de “packet
switching”Soporta PVC y SVC
“Switched virtual circuit”: dinamicamente establecido
“Permanent virtual circuit”: fijo, configurado cuando se contrata
Usa tres layers del modelo OSI: Physical Data Link Network
X.25 Uso de “Virtual Circuits”
X.25 - PhysicalDefine las características de la interface entre el
“Data terminal equipment” (DTE) y el “Data circuit terminating equipment” (DCE)
X.25 - Data LinkUsa “Link Access Protocol Balanced (LAPB)”
Subconjunto de HDLC
X.25 - NetworkPermite establecer conexiones lógicas (circuitos
virtuales) entre terminales
Control de flujo “Sliding Window” Permite que múltiples tramas estén en
tránsitoReceptor tiene buffer de tamaño W Transmisor puede enviar hasta W tramas sin
esperar ACKCada trama se numeraACK incluye el número de la próxima trama
esperadaTramas se numeran módulo 2k (k es la
cantidad de bits del campo número de secuencia)
Ejemplo de “Sliding Window”
X.25 nivel 2: trama LAP-B
Banderas (“Flags”)Delimitan los extremos de la trama01111110Puede cerrar una trama y abrir otra“Bit stuffing” se usa para evitar confusión con el
patrón de datos 01111110 0 se inserta después de cada secuencia de cinco 1’s Si el receptor detecta cinco 1’s chequea el próximo bit Si es 0, es eliminado Si es 1 y el sétimo bit es 0, se acepta como bandera Si el sexto y séptimo bits son 1’s, se aborta la trama
“Bit Stuffing”Patrón original: 11111111111011111101111110 ……..Después de “bit stuffing”: 1111101111101101111101011111010 …….
Patrón original: 111110 ……….Después de “bit stuffing”: 1111100 ……..
Ejemplos de operación (1)
Ejemplos de operación (2)
SVC
Formato de paquete
Multiplexación de circuitos virtuales
Paquetes contienen un identificador de circuito virtual (VCN) de 12 bits
DTE puede establecer hasta 4095 circuitos virtuales simultáneos con otros DTEs sobre un simple enlace DTC-DCE
Numeración de circuitos virtuales
“Reset” y “Restart”Reset
Reinicializa un circuito virtual. Números de secuencia son seteados a cero
Se pierden los paquetes en tránsito. Protocolo de nivel superior debe recuperar los paquetes perdidos
Originado por pérdida de paquete, error de número de secuencia, congestión, pérdida del circuito virtual interno en la red
Restart Equivale a “Clear request” sobre todos los SVC ‘s y
“Reset request” sobre todos los PVC’s Originado, por ej., debido a la pérdida temporaria de
acceso a la red
Frame Relay1988Diseñado para ser más eficiente que X.25Para ser utilizado en redes modernas de
“fast packet switching” con transmisión digital Enlaces con menores tasas de error y mayor
confiabilidad
Frame Relay soporta: PVC: generalmente usado actualmente SVC: señalización Frame Relay ITU-T Q.933
Características de X.251) Paquetes de control de llamadas
transportados en el mismo circuito virtual que paquetes de datos
2) Multiplexado de circuitos virtuales en capa 3 (VCN)
3) Realiza control de error en capa 2, y control de flujo en capas 2 y 3
Considerable overheadNo apropiado para redes digitales
modernas con alta confiabilidad
Frame Relay - Diferencias1) Señalización de control de llamadas
transportada en una conexión lógica separada de los datos
2) Multiplexado y conmutación de conexiones lógicas en capa 2 (DLCI) Elimina una capa de procesamiento
3) No realiza control de flujo ni control de error “hop by hop”. Control de error y de flujo “end to end” (si se usa) es realizado por capas más altas
Ventajas de Frame Relay
Reducido overheadApropiado para redes digitales modernas con
alta confiabilidadMenor retardo Voz sobre Frame Relay
(VoFR) Más alto throughput (Rb N x 64 kbps, hasta
2 Mbps). - Usa LAPF-Core (Link Access Procedure for
Frame Mode Bearer Services - Core functions Q.922)
LAPF Core Formato
Transferencia de datos de usuario
Sólo un tipo de trama Datos de usuario No tramas de control
No números de secuencia No es posible realizar control de flujo o control
de error
Colas de un Nodo
Efectos de la CongestiónPaquetes recibidos son colocados en los
buffers de entradaSe hace una decisión de ruteoPaquete se mueve a buffer de salidaPaquetes de buffers de salida son transmitidos
tan rápido como sea posible Multiplexado por división de tiempo estadístico
Si llegan paquetes más rápido de lo que pueden ser enrutados o transmitidos los buffers se llenarán
Buffer overflow descarte de paquetes
Interacción de colas•La congestión se propaga en la red
Mecanismos de Control de Congestión
Notificación de congestión explícitaRed alerta a los sistemas terminales de
aumento de congestiónSistemas terminales toman medidas para
reducir la carga ofrecidaBECN (“Backward”)
Evitar congestión para el tráfico en la dirección opuesta a la notificación recibida
FECN (“Forward”) Evitar congestión para el tráfico en la misma
dirección a la notificación recibida
Manejo de Tasa de tráfico
“Committed information rate”: CIR = Bc/T Tasa de información en [bps] asignada a cada
conexión lógica frame relay “Committed burst size”(Bc): [bits] Intervalo de medición (T): [seg]
“Maximum Rate”: (Bc + Be) / T “Excess burst size” (Be): [bits]
Operación del CIR
Access Rate,CIR,Maxim. Rate
Voz sobre Frame Relay (VoFR)
VoFR Service
Sub-channel
1(Voice)
Sub-channel
2(Voice)
Sub-channel
3(Data)
Sub-channel
N
Voice/DataSub-channel Multiplexing
VoFR Service User
Frame RelayData Link Connection 16
Frame Relay Physical Interface
Frame RelayData Link Connection
17
FRF.3.1Multiprotocol
Encapsulation
Data User
Frame RelayData Link Connection
N
FRF.3.1Multiprotocol
Encapsulation
Data User
VoFR - FRF.11.1El servicio de VoFR soporta múltiples canales
de voz y datos sobre una simple conexión frame relay
El servicio de VoFR entrega tramas sobre cada subcanal en el orden en que enviadas
Cada payload se empaqueta como una subtrama dentro del campo de información de una trama
Cada subtrama contiene un header y payloadEl header identifica el subcanal de voz/datos y,
cuando se requiere, tipo de payload y longitud
Relación entre tramas y subtramas Ej.: un simple DLCI soporta 3 canales de voz y 1
canal de datos. En la primera trama se empaquetan 3 payloads de voz y en la segunda 1 payload de datos
Voice Payload Voice Payload Voice Payload Data Payload
Frame
DLCI Information Field CRC
Sub-frame3
Voice Payload3
Sub-frame2
Voice Payload2
Sub-frame1
Voice Payload1
Frame
DLCI Information Field CRC
Sub-frame 1
Data Payload4
PayloadsCada subcanal transporta un payload primario
que contiene tráfico que es fundamental para la operación del subcanal
Otros payloads se pueden enviar para soportar el payload primario (ej. dígitos marcados). Se diferencian del payload primario por la codificación del campo tipo de payload de la subtrama. Un tipo de payload de todos ceros siempre indica un payload primario
Hay 3 tipos de payloads primarios: de voz, de fax y de datos
Formato de subtrama Cada subtrama consiste de un header de longitud
variable y un payload
Bits8 7 6 5 4 3 2 1 OctetsEI LI Sub-channel Identification (CID) 1
(Least significant 6 bits)CID 0 0 Payload Type 1a
(msb) Spare Spare (Note 1)Payload Length 1b
(Note 2)Payload p
NOTES:1. When the EI bit is set, the structure of Octet 1a given in Table 3-1 applies.2. When the LI bit is set, the structure of Octet 1b given in Table 3-1 applies.3. When both the EI bit and the LI bit are set to 1 both Octet 1a and 1b are used.
Formato de subtrama Extension indication (EI)(octeto 1): es seteado para
indicar la presencia del octeto 1a, cuando un valor de identificación de subcanal es > 63 o cuando se indica un payload type. Si EI = 0 el payload type implícito es cero
Length indication (LI) (octeto 1): es seteado para indicar la presencia del octeto 1b. El bit LI de la última subtrama dentro de una trama es siempre 0. Para cada una de las subtramas anteriores LI = 1
Sub-channel identification (octetos 1 and 1a): si EI=0 se supone un valor de cero en los dos bits más significativos. Identificadores de subcanales desde 0000 0000 a 0000 0011 están reservados
Formato de subtrama Payload type (octeto 1a):
Bits:4 3 2 10 0 0 0 Primary payload transfer syntax 0 0 0 1 Dialed digit transfer syntax (Annex A)
0 0 1 0 Signalling bit transfer syntax (Annex B)0 0 1 1 Fax relay transfer syntax (Annex D)0 1 0 0 Silence Information Descriptor
Payload length (octeto 1b): indica el número de octetos de payload siguiendo al header
Payload (octeto p)
EI 1 LI 0 CID CID CS-ACELP Voice PayloadDLCI PT 0
Octet 1aOctet 1
Ejemplos de subtramas Trama que contiene un simple payload de voz para un subcanal de
número bajo
Trama que contiene un simple payload de voz para un subcanal de número alto (> 63)
EI 0 LI 0 CID 5 CS-ACELP Voice PayloadDLCI
Octet 1
Ejemplos de subtramas Trama que contiene múltiples subtramas para subcanales 5 y 6. En este
caso se requiere el octeto 1a para codificar el payload type y el octeto 1b indicando la longitud del payload para la primera subtrama
Trama que contiene múltiples subtramas para subcanales 5 y 6. En este caso el payload type es cero
EI 1 LI 1 CID 5 PT 1PL128
Dial DigitsDLCI EI 1 LI 0 CID 6 PT 1 Dial Digits
Octet 1bOctet 1aOctet 1
EI 0 LI 1 CID 5PL128
CS-ACELP Voice PayloadDLCI EI 0 LI 0 CID 6CS-ACELP Voice
Payload
Octet 1 Octet 1b
Requerimientos mínimos Dispositivos de VoFR se clasifican de acuerdo
al soporte provisto para las definiciones de sintaxis de transferencia común
Dispositivos “Class 1 compliant” soportan capacidades adecuadas para interfaces de alta tasa de bits. Para el payload primario soporte de G.727 es obligatorio
Dispositivos “Class 2 compliant” soportan capacidades adecuadas para interfaces de baja tasa de bits. Para el payload primario soporte de G.729 o G.729A es obligatorio
Fragmentación Frame Relay -FRF.12Para soportar adecuadamente tráfico de
tiempo real (sensible al retardo) tal como voz sobre enlaces UNI o NNI de baja velocidad, es necesario fragmentar tramas largas de datos que comparten el mismo enlace tal que las tramas cortas no sufran un retardo excesivo
Fragmentación permite entrelazar tráfico sensible al retardo sobre una VC con fragmentos de una trama larga sobre otra VC utilizando la misma interface
Fragmentación Frame Relay -FRF.12Fragmentación de tramas es necesaria
entonces para controlar retardo y variación de retardo del tráfico de tiempo real
FRF.12 soporta tres aplicaciones de fragmentación: Localmente sobre una interface UNI Frame Relay
entre DTE y DCE Localmente sobre una interface NNI Frame Relay
entre DCEs End to end entre dos DTEs Frame Relay
interconectados por una o más redes Frame Relay
Fragmentación UNI Es realizada sobre una base de interface Cuando se usa sobre una interface, todas las
tramas sobre todos los DLCIs (incluyendo DLCI 0, PVCs y SVCs) son precedidas por el header de fragmentación
FrameRelay PVC
Frame RelayDTE
Frame RelayDTE
DCEInterface
DCEInterface
Fragmentation Peers
Frame RelayNetwork
LogicalFragmentation
Function
LogicalFragmentation
Function
Fragmentación NNI Sobre enlaces NNI lentos Es realizada sobre una base de interface Cuando se usa sobre una interface, todas las
tramas sobre todos los DLCIs (incluyendo DLCI 0, PVCs y SVCs) son precedidas por el header de fragmentación
Frame RelayDTE
Frame RelayDTE
FrameRelay PVC
NNIInterface
DCEInterface
Frame RelayNetwork
Fragmentation Peers
LogicalFragmentation
Function
LogicalFragmentation
Function
FrameRelay PVC
DCEInterface
NNIInterface
Frame RelayNetwork
Fragmentación end to end A diferencia de fragmentación UNI o NNI, está
limitada a fragmentar tramas sobre PVCs seleccionados
Es útil cuando se requiere fragmentación debido a interface(s) lenta(s) UNI o NNI y no es soportada sobre la(s) UNI o NNI
FrameRelay PVC
Frame RelayDTE
Frame RelayDTE
DCEInterface
DCEInterface
Fragmentation Peers
Frame RelayNetwork
LogicalFragmentation
Function
LogicalFragmentation
Function
Formato de fragmentación para interface UNI o NNI
Un header de fragmentación de dos octetos precede al header Frame Relay
El bit “(B)eginning fragment” se coloca en ‘1’ en el primer fragmento de datos y en ‘0’ en todos los demás fragmentos de la misma trama original
El bit “(E)nding fragment” se coloca en ‘1’ en el último fragmento de datos y en ‘0’ en todos los demás
El bit “(C)ontrol” se coloca en ‘0’ y está reservado
8 7 6 5 4 3 2 1Fragmentation B E C Seq. # high 4 bits 1
header Sequence # low 8 bitsFrame Relay DLCI high six bits C/R 0
header DLCI low 4 bits F B DE 1
Fragment Payload
FCS(two octets)
Formato de fragmentación para interface UNI o NNIEl número de secuencia se incrementa módulo
212 con cada fragmento de datos transmitido sobre una VC. Se mantiene un número de secuencia separado para cada DLCI
El bit de bajo orden del primer octeto del header de fragmentación es ‘1’. Permite distinguir el header de fragmentación del header Frame Relay Esto permite a una entidad de fragmentación (UNI o
NNI) detectar la incorrecta configuración de su par, dado que ambas se deben configurar identicamente para usar o no fragmentación sobre una interface
Formato de fragmentación end to end
Un header de fragmentación de dos octetos sigue al header de encapsulación multiprotocolo FRF.3.1
Se ha asignado el Network Layer Protocol ID (NLPID) 0xB1 para identificar a este header de fragmentación
El número de secuencia se incrementa módulo 212 con cada fragmento de datos transmitido sobre una PVC. Se mantiene un número de secuencia separado para cada PVC fragmentado entre DTEs pares
8 7 6 5 4 3 2 1Frame Relay DLCI high six bits C/R 0
header DLCI low 4 bits F B DE 1UI (0x03) 0 0 0 0 0 0 1 1
NLPID (0xB1) 1 0 1 1 0 0 0 1Fragmentation B E C Seq. # high 4 bits 0
header Sequence # low 8 bits
Fragment Payload
FCS(two octets)
Ejemplo de fragmentación para interface UNI o NNI
B(1) E(0) C(0) 1
B(0) E(0) C(0) 1
B(0) E(1) C(0) 1
(Variable length)
Frame CheckSequence (two octets)
Q.922 Address(two octets)
Final Data Fragment
SequenceNumber = 42
SequenceNumber = 44
Frame CheckSequence (two octets)
Q.922 Address(two octets)
Q.922 ControlOptional Pad (0x00)
NLPID to identify data contents
First Data Fragment
Frame CheckSequence (two octets)
SequenceNumber = 43
Q.922 Address(two octets)
Middle Data Fragment(Variable length)
NLPID to identify data contents
Data(Variable length)
Q.922 Address(two octets)
Q.922 ControlOptional Pad (0x00)
(Variable length)
Frame CheckSequence (two octets)
Ejemplo de fragmentación end to end
B(1) E(0) C(0) 0
B(0) E(0) C(0) 0
B(0) E(1) C(0) 0
Frame CheckSequence (two octets)
UI (0x03)NLPID (0xB1)
Q.922 Address(two octets)UI (0x03)
NLPID (0xB1)
Q.922 Address
Final Data Fragment(Variable length)
(two octets)UI (0x03)
NLPID (0xB1)
Sequence (two octets)
SequenceNumber = 44
Frame CheckFrame CheckSequence (two octets)
Data(Variable length)(Variable length)
NLPID to identify data contents
Middle Data Fragment
Q.922 ControlOptional Pad (0x00)
Sequence (two octets)
Q.922 Address
Sequence
(two octets)
Number = 43
First Data Fragment(Variable length)
Frame Check
Q.922 ControlOptional Pad (0x00)
NLPID to identify data contents
SequenceNumber = 42
Q.922 Address(two octets)
Ejemplo de fragmentaciónFRF.11
B(1) E(0) 0
B(0) E(0) 0
B(0) E(1) 0
(Variable length)
Frame CheckSequence (two octets)
SequenceNumber = 44
Final Data Fragment
Q.922 Address(two octets)
VoFR Sub-frame Header(1-3 octets; see FRF.11 for details)
Frame Check Frame CheckSequence (two octets) Sequence (two octets)
Data Middle Data Fragment(Variable length) (Variable length)
(1-3 octets; see FRF.11 for details)Optional Pad (0x00) Sequence
NLPID to identify data contents Number = 43
Q.922 AddressQ.922 Address (two octets)
(two octets) VoFR Sub-frame HeaderQ.922 Control
Q.922 Address(two octets)
VoFR Sub-frame Header(1-3 octets; see FRF.11 for details)
SequenceNumber = 42Q.922 Control
Optional Pad (0x00)NLPID to identify data contents
First Data Fragment(Variable length)
Frame CheckSequence (two octets)