1 / 25

Comunicación y Concurrencia

Comunicación y Concurrencia. Dr. Raúl Monroy Borja. Aplicaciones de bisimilaridad. Ejemplos de aplicación. Protocolo de comunicación Protocolo CSMA/CD. Protocolo de enlace de datos. Considere un protocolo de enlace de datos, modo simplex, enlace punto a punto, con reconocimiento positivo.

Télécharger la présentation

Comunicación y Concurrencia

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Comunicación y Concurrencia Dr. Raúl Monroy Borja Aplicaciones de bisimilaridad

  2. Ejemplos de aplicación • Protocolo de comunicación • Protocolo CSMA/CD

  3. Protocolo de enlace de datos • Considere un protocolo de enlace de datos, modo simplex, enlace punto a punto, con reconocimiento positivo. • El medio de transmisión tiene capacidad infinita pero puede perder mensajes. • Considere que el mensaje que contiene el reconocimiento de recepción jamás puede perderse

  4. deliver ack Los componentes accept ack Sender Receiver sm ms mr mr sm Medium ms L={ack,sm,ms,mr}

  5. El protocolo [Walker 87] • Especificación • Service = accept(x).deliver(x).Service • Desarrollo • Protocol = (Sender | Medium | Receiver)\ L • Donde L = {ack,sm,ms,mr} • Sender = accept(x). sm(x).Sender'(x) • Sender'(x) = ms.sm(x).Sender'(x)+ack.Sender def def def def

  6. Continúa def • Medium = sm(x).Medium’(x) • Medium’(x) = mr(x).Medium + t.ms.Medium • Receiver = mr(x).deliver(x).ack.Receiver • L (Protocol) = L (Service) = {accept,deliver} def def

  7. Sesión con CWB agent Service = accept.'deliver.Service; agent Protocol = (Sender | ...)\ L; set L = {ack,sm,ms,mr}; • Algunos comandos: • sort Protocol; (* accept,’deliver *) • size Protocol; (* 7 states *) • graph Protocol; • states Protocol; • eq(Protocol,Service); (* true *)

  8. Grafo de transición t Protocol E Service accept accept deliver deliver A t S´ C t t D t B

  9. Análisis del protocolo • ¿Son Protocol y Service observablemente equivalentes?

  10. Modelo y análisis del Protocolo CSMA/CD • Caso de estudio tomado de Parrow, J. Verifying a CSMA/CD-protocol with CCS. Protocol Specification, Testing and Verification VIII, Aggarwal, S. and Sabnam, K. (eds) Elsevier Science (North-Holland) IFIP, 1988.

  11. Generalidades • Especificación de servicio, capa n: comportamiento de capa, desde la perspectiva de capa n+1 • Conjunto de primitivas • Especificación de protocolo, capa n: conjunto de entidades, detallando el comportamiento e interconexión de cada una • Verificación: la especificación del protocolo implica la especificación del servicio, capa n

  12. Verificación de protocolos: una metodología • Defina Ln , cada acción corresponde a una primitiva de servicio, capa n. Similarmente, defina L n -1. • Defina los siguientes agentes: • SSn , especificación de servicio n, L (SSn ) = L n • SSn-1 , especificación de servicio n-1, L (SSn )= L n-1 • PE1, ..., PEk , entidad del protocolo

  13. Pruebe que • SSn≈(PE1 | ... | PEk | SSn -1 ) \ L n-1

  14. El protocolo CSMA/CD • Carrier Sense Multiple Access with Collision Detection (ISO 8802/03) • Varios computadores conectados a un medio compartido • Cada vez que es necesario, una terminal envía datos al medio. • Si ocurre una colisión, los mensajes se pierden. Las terminales en disputa esperan un tiempo aleatorio antes de intentar retransmitir.

  15. continúa • Estudiamos MAC (medium access control ), que se comunica con LLC (logical link control ) aceptando mensajes que MAC ha de enviar a PLS (physical signalling) repetidamente hasta que éste se entregue intacto

  16. Especificación del servicio(restricción: 2 computadores) • MAC provee comunicación virtual en dos direcciones • Usa un buffer unidireccional en cada dirección • En cada buffer pueden haber a lo más dos transmisiones pendientes • Los buffers comparten un recurso crítico, el canal • NB: Transmisión sólo si se posee el canal

  17. def SS = (B12| S | B21 ) \ {P,V} Diseño de la especificación del servicio B21 rec1 send2 P V S P V P V B12 rec2 send1

  18. Diseño (continúa) def • B12 = send1.B’12 B’12 = p.(send1.rec2.v.B’12 + rec2.v.B12) • B21 = send2. B’21 B’21 = p.(send2.rec1.v.B’21 + rec1.v.B21) • S = p.v.S def def def def

  19. Especificación del protocolo • Consiste de 2 entidades MAC, MAC1y MAC2,interconectadas por un medio, M • El comportamiento de MAC debe formularse en términos de las interacciones con LLC y M • Con LLC, tenemos sendi y reci • Con M, tenemos transmisión, recepción y detección en las colisiones de mensajes

  20. Diseño de la especificación del protocolo • Eventos: • b: comienza transmisión MAC a medio • e: termina transmisión MAC a medio • br:comienza transmisión medio a MAC • er: termina transmisión medio a MAC • c: notificación a MAC sobre colisión en medio

  21. send rec Diseño de ... Protocolo (continúa) MAC b br e er c c1 b1 br1 M e1 er1 b2 br2 e2 er2 c2

  22. Diseño (continúa) def • MAC = send.MAC’ + br. (er.(rec.MAC + send.rec.MAC’) + send.er.rec.MAC’) • MAC’ = b.(c.MAC’+ e.MAC) + br.er.rec.MAC’ • MACi = MAC[ fi ] • fi = li / l, para todal en L (P), i en {1,2} def def def

  23. Diseño (continúa) def M = b1.(b2.M’+br2 . (b2.M’+e1.(b2.M’+er2.M))) + b2.(b1.M’+br1 . (b1.M’+e2.(b1.M’+er1.M))) M’ = c1.c2.M + c2 .c1 .M P = (MAC1| MAC2 | M )\{bi,bri,ei,eri,ci}, con i en {1,2} def def

  24. Análisis • P tiene 35 estados • SS tiene 19 estados • P »SS

  25. Conclusiones • Una gran cantidad de sistemas de comunicación pueden modelarse mediante un conjunto de procesos, cada uno de ellos posee un espacio de estados finito.

More Related