ES2587012T3 - Procedimiento de cambio de estado del protocolo de transmisión de control de flujo - Google Patents

Procedimiento de cambio de estado del protocolo de transmisión de control de flujo Download PDF

Info

Publication number
ES2587012T3
ES2587012T3 ES08873907.3T ES08873907T ES2587012T3 ES 2587012 T3 ES2587012 T3 ES 2587012T3 ES 08873907 T ES08873907 T ES 08873907T ES 2587012 T3 ES2587012 T3 ES 2587012T3
Authority
ES
Spain
Prior art keywords
sctp
end sctp
data
opposite end
sent
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES08873907.3T
Other languages
English (en)
Inventor
Kunzuo Zhang
Qingyong Liang
Ke Wang
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Application granted granted Critical
Publication of ES2587012T3 publication Critical patent/ES2587012T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/27Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Procedimiento para el cambio de estado del protocolo de transmisión de control de flujo, consistiendo dicho procedimiento en las siguientes etapas de: si un protocolo de transmisión de control de flujo (SCTP) de extremo local determina que actualmente no existen datos sin enviar en una memoria temporal de envío, y que una ventana de recepción de un SCTP de extremo opuesto es mayor o igual que la longitud de los primeros datos no enviados actualmente después que una asociación del SCTP de extremo local entra en un estado de PARADA-EN CURSO, entonces el SCTP de extremo local envía los primeros datos no enviados al SCTP de extremo opuesto, y cierra la asociación del SCTP si no se recibe ninguna respuesta del SCTP de extremo opuesto; el procedimiento consiste además en las siguientes etapas cuando el SCTP de extremo local determina que existen datos sin enviar en una memoria temporal de envío, y que la ventana de recepción del SCTP de extremo opuesto es menor que la longitud de los primeros datos no enviados actualmente; el SCTP de extremo local envía un mensaje de prueba al SCTP de extremo opuesto, siendo el mensaje de prueba los primeros datos marcados como no enviados en la memoria temporal de envío; inicia un temporizador de espera de transmisión Tw del mensaje de prueba, si el SCTP de extremo local recibe un mensaje de respuesta del SCTP de extremo opuesto antes que el temporizador de espera de transmisión Tw del mensaje de prueba expira, el SCTP de extremo local determina un Número de secuencia de transmisión (TSN) y una ventana de recepción en el Acuse de recibo selectivo (SACK) en el mensaje de prueba; y determina que el TSN recibido del SCTP de extremo opuesto es mayor o igual que el TSN de los primeros datos marcados como no enviados en la memoria temporal de envío y la ventana de recepción en el mensaje de respuesta es mayor o igual que la longitud de los primeros datos marcados como no enviados en la memoria temporal de envío, a continuación borra los datos cuyo TSN es igual al TSN del SACK y todos los datos antes de dichos datos de la memoria temporal de envío, y ajusta todos los datos de la memoria temporal de envío como no enviados; en el que dicha ventana de recepción se refiere a un tamaño del espacio restante en una memoria temporal de recepción del SCTP de extremo opuesto, que está contenida en los datos de respuesta del SCTP de extremo opuesto; dicho mensaje de prueba se refiere a un mensaje transmitido del SCTP de extremo local al SCTP de extremo opuesto para detectar datos recibidos por el SCTP de extremo opuesto y la longitud de la ventana de recepción.

Description

5
10
15
20
25
30
35
40
45
50
55
60
65
DESCRIPCION
Procedimiento de cambio de estado del protocolo de transmision de control de flujo Sector tecnico
La presente invencion pertenece al sector tecnico de la integracion de una red de conmutacion de circuitos de comunicacion y una red IP y, en concreto, a un procedimiento para el cambio de estado del protocolo de transmision de control de flujo (SCTP, Stream Control Transmission Protocol)
Antecedentes de la invencion
Con la gradual madurez de la tecnologia de la red IP, surge la necesidad de un protocolo de senalizacion de conmutacion de circuitos de transmision, tal como el sistema de senalizacion Numero 7. Con el fin de satisfacer la necesidad de un protocolo de senalizacion de transmision en una red IP, el equipo de trabajo de red IETF (Grupo de trabajo de ingenieria de Internet) establecio un grupo especial de transmision de senalizacion, y el protocolo de transmision de senalizacion de red IP (protocolo SIGTRAN) formulado por ellos soporta la transmision de senalizacion tradicional de conmutacion de circuitos a traves de una red IP. En 2000, el equipo de trabajo IETF emitio oficialmente el protocolo SCTP (vease RFC (Solicitud de comentarios, Request For Comments) 4960 para el ultimo protocolo), de esta manera, los flujos de servicios tanto en el plano de usuario como en el plano de control pueden ser transmitidos en una sola red IP mediante la utilizacion de SCTP. El SCTP es un protocolo de capa de transporte orientado a la conexion, que adopta algoritmos de control del trafico y de control de la congestion similares al TCP y asegura una transmision fiable de los datos del usuario entre dos extremos de SCTP mediante su propio mecanismo de confirmacion y retransmision. En comparacion con otros protocolos de transmision tales como TCP, el SCTP tiene un menor retardo de transmision, puede impedir que cierta cantidad grande de datos bloquee otros datos, y tiene mayor fiabilidad y seguridad.
Tal como se puede ver haciendo referencia a la figura 1, el SCTP esta disenado originalmente para su utilizacion en la transmision de sistema de senalizacion numero 7 (SS7) en IP, que incorpora ciertas propiedades de fiabilidad de una red de senalizacion SS7 en IP. Las pilas de protocolo de capa inferior son todas SCTP/IP, para proporcionar servicios tales como comprobacion y retransmision para la senalizacion de capa superior, y reducir en lo posible el impacto de la red IP de capa inferior en la senalizacion de capa superior. En la figura 1, M2PA [donde M2PA es una capa de adaptacion equivalente de MTP2 (Transferencia de mensajes Part de nivel 2)], M2UA [donde M2UA es una capa de adaptacion de usuario MTP2 (Transferencia de mensajes Part de nivel 2)], M3UA [donde M3UA es una capa de adaptacion de usuario MTP3 (Transferencia de mensajes Part de nivel 3)], SUA [donde SUA es una capa de adaptacion de usuario SCCP (Parte de control de la conexion de senalizacion)], IUA [donde IUA es una capa de adaptacion de usuario ISDN (Red digital de servicios integrados)] y V5UA (donde V5UA es una capa de adaptacion de usuario V5.2), todos son usuarios de capa superior servidos mediante SCTP, que son precisamente los usuarios de capa superior servidos por el SCTP que se describiran en la presente invencion. Esta figura solo muestra la posicion del SCTP en la pila de protocolo SIGTRAN.
La figura 2 es un diagrama de flujo de PARADA (SHUTDOWN) (mensaje de parada), (en el que, PARADA es una senal primitiva de cierre de una asociacion en SCTP, y los usuarios de capa superior servidos por el SCTP utilizan esta senal primitiva para cerrar facilmente una asociacion). El usuario SCTP en esta figura representa un usuario de capa superior servido por SCTP en un extremo A. Cuando el SCTP en el extremo A recibe una solicitud de PARADA enviada desde un usuario de capa superior servido, inmediatamente cambia el estado de asociacion del SCTP a estado PARADA EN CURSO (en el que el estado PARADA EN CURSO es un estado durante el proceso de cerrar facilmente el SCTP y, cuando el SCTP recibe un mensaje de PARADA enviado del usuario de capa superior servido por SCTP, el SCTP en primer lugar cambia el estado de asociacion a este estado, y este estado no cambiara hasta que todos los datos en el extremo local han sido transmitidos completamente al extremo opuesto), a continuacion comprueba si aun existen datos en la memoria temporal de envio del extremo local, envia los datos si existen. Estos datos seran retransmitidos si no se recibe a tiempo ninguna respuesta del extremo B hasta que todos los datos se han transmitido con exito al extremo opuesto (extremo B en la figura) (se reciben respuestas para todos los datos transmitidos), en cuyo momento se envia un mensaje de PARADA al extremo B y el estado cambia a estado PARADA-eNvIADO (donde PARADA-ENVIADO es un estado durante el proceso de cerrar facilmente el SCTP, y el estado cambia a dicho estado despues que el SCTP envia un mensaje de PARADA al extremo opuesto de SCTP, esperando que el extremo opuesto de SCTP de una respuesta a esta senal primitiva).
Tal como se puede ver haciendo referencia a la figura 2 y a la especificacion de protocolo RFC4960, si el SCTP de extremo local recibe una senal primitiva de PARADA enviada del usuario de capa superior para solicitar la parada de una asociacion, el SCTP de extremo local entra en un estado de PARADA-EN CURSO. Segun lo previsto en el protocolo actual, cuando existen datos en una memoria temporal de envio, todos estos datos necesitan ser transmitidos correctamente al extremo opuesto, y el SCTP de extremo local mantendra este estado PARADA-EN CURSO indefinidamente siempre que existan datos que no se han enviado correctamente, por lo tanto, la asociacion del SCTP de extremo local no se puede utilizar una vez que se produce el caso en que no se transmiten datos
5
10
15
20
25
30
35
40
45
50
55
60
65
correctamente durante un periodo largo de tiempo (por ejemplo, cuando la ventana de recepcion del extremo opuesto es demasiado pequena).
El documento WO 2006/069 605 describe un procedimiento del estado de la tecnica anterior para el control de un caso de SCTP.
Caracteristicas de la invencion
El problema tecnico que se debe resolver en la presente invencion es proporcionar un procedimiento para el cambio de estado del protocolo de transmision de control de flujo, mediante el que cuando el SCTP de extremo local recibe una solicitud de PARADA del usuario de capa superior para cerrar una asociacion, si existen datos para enviar al SCTP de extremo opuesto, y los datos no se pueden enviar correctamente durante un periodo largo de tiempo, debido a que la memoria temporal de recepcion del SCTP de extremo opuesto es pequena o por otras razones, la asociacion se puede utilizar de nuevo rapidamente.
Con el fin de resolver el problema tecnico anterior, la presente invencion preve un procedimiento para el cambio de estado del protocolo de transmision de control de flujo, que consiste en:
si un protocolo de transmision de control de flujo (SCTP) de extremo local determina que existen datos no enviados en una memoria temporal de envio y una ventana de recepcion de un SCTP de extremo opuesto es mayor o igual que la longitud de unos primeros datos no enviados actualmente despues que el SCTP de extremo local entra en un estado de PARADA-EN CURSO, entonces el SCTP de extremo local envia los primeros datos no enviados al SCTP de extremo opuesto, y cierra la asociacion de SCTP si no se recibe ninguna respuesta del SCTP de extremo opuesto.
Ademas, la dicha no recepcion de respuesta del SCTP de extremo opuesto significa que no se recibe ninguna respuesta del SCTP de extremo opuesto en un tiempo limite establecido por el sistema.
Ademas, dicha no recepcion de respuesta del SCTP de extremo opuesto significa especificamente que:
el SCTP de extremo local establece un numero maximo de retransmisiones de datos, y retransmite los primeros datos no enviados al SCTP de extremo opuesto si no se recibe ninguna respuesta desde el SCTP de extremo opuesto en un tiempo limite despues que los primeros datos no enviados son transmitidos al SCTP de extremo opuesto; y
el SCTP de extremo local determina que no se recibe ninguna respuesta del SCTP de extremo opuesto cuando el numero de retransmisiones de datos es igual al numero maximo de retransmisiones de datos y no se recibe ninguna respuesta del SCTP de extremo opuesto en el limite de tiempo establecido por el sistema.
Ademas, cuando se cierra la asociacion, el SCTP de extremo local informa asimismo de la rotura de asociacion a un usuario de capa superior y envia un mensaje de ABORTAR al SCTP de extremo opuesto y, mientras, transmite el estado del SCTP de extremo local a un estado cerrado.
Ademas, cuando el SCTP de extremo local determina que existen datos sin enviar en una memoria temporal de envio, y que la ventana de recepcion del SCTP de extremo opuesto es menor que la longitud de los primeros datos no enviados, el procedimiento consiste ademas en las siguientes etapas de:
el SCTP de extremo local envia un mensaje de prueba al SCTP de extremo opuesto, siendo el mensaje de prueba los primeros datos marcados como no enviados en la memoria temporal de envio;
inicia un temporizador de espera de transmision Tw de un mensaje de prueba, si el SCTP de extremo local recibe un mensaje de respuesta del SCTP de extremo opuesto antes que el temporizador de espera Tw del mensaje de prueba expire, el extremo local determina un Numero de secuencia de transmision (TSN) y una ventana de recepcion en el Acuse de recibo selectivo (SACK, Selective Acknowledgement) en el mensaje de respuesta; y determina que el TSN recibido del SCTP de extremo opuesto es mayor o igual que el TSN de los primeros datos marcados como no enviados en la memoria temporal de envio y que la ventana de recepcion en el mensaje de respuesta es mayor o igual que la longitud de los primeros datos marcados como no enviados en la memoria temporal de envio y, a continuacion borra los datos cuyo TSN es igual al TSN en el SACK y todos los datos antes de dichos datos en la memoria temporal de envio, y define todos los datos restantes en la memoria temporal de envio como no enviados.
Ademas, si el SCTP de extremo local no recibe el mensaje de respuesta del SCTP de extremo opuesto aun despues que el temporizador de espera Tw de la transmision del mensaje de respuesta expira, el SCTP de extremo local para la asociacion, informa de la rotura de la asociacion al usuario de capa superior, y envia un mensaje de ABORTAR al SCTP de extremo opuesto, mientras hace pasar el estado del SCTP de extremo local a un estado cerrado.
5
10
15
20
25
30
35
40
45
50
55
60
65
Ademas, si el SCTP de extremo local no recibe el mensaje de respuesta del SCTP de extremo opuesto incluso despues que el temporizador de espera Tw de la transmision del mensaje de prueba expira, el ScTp de extremo local decide si el numero de transmisiones del mensaje de prueba son menos de un numero maximo de transmisiones del mensaje de prueba; en caso afirmativo, el SCTP de extremo local retransmite el mensaje de prueba y suma 1 al numero de transmisiones del mensaje de prueba; si no, el SCTP de extremo local cierra la asociacion, informa de la rotura de la asociacion al usuario de capa superior, y envia un mensaje de ABORTAR al SCTP de extremo opuesto, mientras hace pasar el estado del SCTP de extremo local a un estado cerrado.
Ademas, si el SCTP de extremo local determina que no existen datos sin enviar en la memoria temporal de envio, entonces el SCTP de extremo local comprueba si existen datos marcados como enviados; si no, el SCTP de extremo local envia un mensaje de PARADA al SCTP de extremo opuesto, mientras tanto, transmite al extremo local el estado del SCTP a PARADA-ENVIADO; sin existen datos marcados como enviados, entonces el SCTP de extremo local decide si se ha recibido una respuesta del SCTP de extremo opuesto en el limite de tiempo establecido por el sistema.
Ademas, despues que el SCTP de extremo local envia los primeros datos no enviados al SCTP de extremo opuesto, el SCTP de extremo local marca los datos como enviados, ajusta la ventana de recepcion del SCTP de extremo opuesto como restado de la longitud de los datos transmitidos esta vez, y si se recibe una respuesta del SCTP de extremo opuesto en el limite de tiempo establecido por el sistema, el SCTP de extremo local borra los datos para los que se ha recibido una respuesta del SCTP de extremo opuesto de la memoria temporal de envio; despues que todos los datos de la memoria temporal de envio del SCTP de extremo local han sido enviados correctamente, y que se ha recibido una respuesta del SCTP de extremo opuesto, el SCTP de extremo local envia un mensaje de PARADA al SCTP de extremo opuesto, y hace pasar el estado el SCTP de extremo local a un estado de PARADA-ENVIADO.
Ademas, dicha ventana de recepcion se refiere a un tamano del espacio restante en una memoria temporal de recepcion del SCTP de extremo opuesto, que esta contenido en los datos de respuesta del SCTP de extremo opuesto; dicho mensaje de prueba se refiere a un mensaje transmitido del SCTP de extremo local al SCTP de extremo opuesto, para detectar datos recibidos por el ScTp de extremo opuesto y la longitud de la ventana de recepcion.
En comparacion con la tecnica anterior, en la presente invencion, cuando el SCTP de extremo local recibe una solicitud de PARADA del usuario de capa superior para cerrar una asociacion, si existen datos para enviar al SCTP de extremo opuesto y los datos no se pueden enviar correctamente durante un periodo largo de tiempo, debido a que la memoria temporal de recepcion del SCTP de extremo opuesto es menor o por otras razones, la asociacion se puede utilizar de nuevo rapidamente.
Breve descripcion de los dibujos
La figura 1 es una ilustracion estructural para la posicion SIGTRAN;
la figura 2 muestra el estado cuando el SCTP de extremo mensaje de PARADA desde un usuario de capa superior; y
la figura 3 es un diagrama de flujo del procedimiento para control de flujo segun la presente invencion.
Realizaciones preferentes de la invencion.
Con el procedimiento de la presente invencion, despues que el SCTP de extremo local entra en estado PARADA-EN CURSO, si no hay datos para enviar en la memoria temporal de envio, entonces los datos son enviados secuencialmente, y estos datos son retransmitidos si no se recibe ninguna respuesta del SCTP de extremo opuesto en un limite de tiempo especificados. La asociacion se termina cuando el numero de transmisiones supera el numero maximo de retransmisiones con el fin de asegurar que el SCTP de extremo local pueda entrar en el estado de servicio siempre que sea posible, resolviendo por ello de manera eficiente el problema de la no disponibilidad de la asociacion durante un largo periodo de tiempo.
En la figura 1, la capa de adaptacion de par a par de usuario MTP2 (Transferencia de mensajes Part de nivel 2) M2PA, la capa de adaptacion de usuario MTP2 (Transferencia de mensajes Part de nivel 2), M2UA, la capa de adaptacion de usuario MTP3 (Transferencia de mensajes Part de nivel 3), M3UA, la capa de adaptacion de usuario de SCCP (Parte de control de conexion de senalizacion), SUA, la capa de adaptacion de usuario de ISDN (Red digital de servicios integrados), IUA y la capa de adaptacion de usuario V5.2, V5UA, son todos usuarios de capa superior servidos por el SCTP.
La presente invencion se describira mas haciendo referencia a los dibujos y a las realizaciones especificas.
del SCTP de extremo local en la pila de protocolo local detiene una asociacion tras la recepcion de un el cambio de estado del protocolo de transmision de
5
10
15
20
25
30
35
40
45
50
55
60
65
Tal como se muestra en la figura 3, el procedimiento para el cambio de estado del protocolo de transmision de control de flujo de la presente invencion consiste en las etapas siguientes:
Etapa 100, despues que el SCTP de extremo local recibe una senal primitiva PARADA de un usuario de capa superior, la asociacion entra en estado PARADA-EN CURSO;
Etapa 110, el SCTP de extremo local comprueba si existen datos no enviados en la memoria temporal de envio, si es asi, se ejecuta la etapa 120; si no, se ejecuta la etapa 170;
Etapa 120, el SCTP de extremo local decide si la ventana de recepcion del SCTP de extremo opuesto es mayor o igual que la longitud de los primeros datos enviados en la memoria temporal de envio actual, si es asi, se ejecuta la etapa 130; si no, se ejecuta la etapa 150;
en la que la ventana de recepcion se refiere al tamano del espacio que queda en la memoria temporal de recepcion del SCTP de extremo opuesto, que esta transportado por una respuesta de datos;
Etapa 130, el SCTP de extremo local envia al SCTP de extremo opuesto los primeros datos no enviados en la memoria temporal de envio, y mientras marca los datos como enviados, ajusta la ventana de recepcion del SCTP de extremo opuesto como restada de la longitud de los datos transmitidos esta vez, lleva a cero el numero de transmisiones del mensaje de prueba, e inicia un temporizador de respuesta Ta de respuesta;
El temporizador de respuesta Ta se utiliza para determinar si una respuesta es recibida a tiempo para los datos enviados al SCTP de extremo opuesto en un limite de tiempo especificado, el temporizador Ta se inicia despues que los datos son enviados y se cancela despues que se recibe una respuesta, la duracion se puede configurar y ajustar dinamicamente en un rango de 500 ms-2000 ms.
El medio de un temporizador se utiliza en este ejemplo para decidir que no se recibe ninguna respuesta del SCTP de extremo opuesto en un limite de tiempo establecido por el sistema, y se puede asimismo utilizar un contador u otro medio en otros ejemplos. La presente invencion no esta limitada a esto.
Etapa 131, si el temporizador Ta no expira, entonces se ejecuta la etapa 132; si no, se ejecuta la etapa 140;
Etapa 132, si el SCTP de extremo local recibe una respuesta del SCTP de extremo opuesto, entonces se ejecuta la etapa 135; si no, se ejecuta la etapa 110;
Etapa 135, el SCTP de extremo local borra los datos para los que se ha recibido una respuesta del SCTP de extremo opuesto desde la memoria temporal de envio, y se lleva a cero el numero de retransmisiones de datos, mientras que se cancela la operacion del temporizador Ta, y se ejecuta la etapa 136;
Etapa 136, el SCTP de extremo local decide si todos los datos en la memoria temporal han sido transmitidos; si es asi, se continua a la etapa 171; si no, se vuelve a la etapa 110, continuando con la transmision de datos;
Etapa 140, el SCTP de extremo local decide si el numero de retransmisiones de datos es menor o igual que el numero maximo de retransmisiones de datos (en que el numero maximo de retransmisiones de datos puede ser Max.Data.Retran), ejecuta la etapa 145 si es menor que el numero maximo de retransmisiones de datos; ejecuta la etapa 160 si es igual al numero maximo de retransmisiones de datos;
El numero maximo de retransmisiones de datos significa que los datos son retransmitidos despues que el temporizador de espera de respuesta Ta expira, y si el numero de transmisiones supera el numero maximo de retransmisiones de datos, es necesario cerrar la asociacion. El numero maximo de retransmisiones de datos se puede configurar y ajustar dinamicamente, por ejemplo, puede ser 5.
Etapa 145, el SCTP de extremo local ajusta todos los datos en la memoria temporal de envio como no enviados, mientras, suma 1 al numero de retransmisiones de datos, y ejecuta la etapa 110;
Etapa 150, el SCTP de extremo local envia un mensaje de prueba, que son los primeros datos marcados como no enviados en la memoria temporal de envio o un mensaje en blanco, inicia un temporizador de espera Tw de transmision de mensaje de prueba, mientras suma 1 al numero de transmisiones del mensaje de prueba, cancela Ta si se ha operado, ejecuta la etapa 152 si el SCTP de extremo local recibe un mensaje de prueba del SCTP de extremo opuesto antes que el temporizador Tw ha expirado; si no, ejecuta la etapa 155.
El mensaje de prueba se refiere a un mensaje transmitido del SCTP de extremo local al SCTP de extremo opuesto para detectar datos recibidos por el SCTP de extremo opuesto y la longitud de la ventana de recepcion.
5
10
15
20
25
30
35
40
45
50
55
60
65
Despues que el SCTP de extremo opuesto recibe este mensaje de prueba, devolvera SACK (Acuse de recibo selectivo), que contiene TSN y la longitud de la ventana de recepcion del SCTP de extremo opuesto.
El temporizador de espera Tw de transmision del mensaje de prueba pretende ser iniciado cuando la ventana de recepcion del SCTP de extremo opuesto se hace demasiado pequena para el envio de datos, y es cancelada cuando los datos pueden ser enviados; la duracion del Tw puede ser configurada y ajustada dinamicamente en un rango de 100 ms-500 ms.
Etapa 152, si SCTP de extremo local determina segun un Numero de secuencia de transmision (TSN) y un a_rwnd en SACK que el TSN recibido del SCTP de extremo opuesto es mayor o igual que el TSN de los primeros datos marcados como no enviados en la memoria temporal de envio y la ventana de recepcion en el mensaje de respuesta (a_rwnd) es mayor o igual que la longitud de los primeros datos marcados como no enviados en la memoria temporal de envio, entonces borra los datos cuyo TSN es igual al TSN en el SACK recibido y la totalidad de dichos datos de la memoria temporal de envio, mientras define todos los datos restantes en la memoria temporal de envio como no enviados, cancela la operacion de Tw y lleva a cero el numero de transmisiones del mensaje de prueba, y transmite la etapa 120;
Etapa 155, si el SCTP de extremo local no recibe ningun mensaje de respuesta del SCTP de extremo opuesto despues que el temporizador (TW) expira, o recibe una respuesta erronea, entonces el SCTP de extremo local decide si el numero de transmisiones del mensaje de prueba es menor que el numero maximo de transmisiones del mensaje de prueba (en el que el numero maximo de transmisiones del mensaje de prueba puede ser Max.Probe.Retran), si es asi, se ejecuta la etapa 150, si no, se ejecuta la etapa 160;
El numero maximo de veces para el medio de transmision del mensaje de prueba cuando el numero de transmisiones de un mensaje de prueba es igual al numero maximo de transmisiones del mensaje de prueba, sugiere que el SCTP de extremo opuesto tiene un fallo y por ello es incapaz de recibir datos, y es necesario cerrar la asociacion. El numero maximo de veces para la transmision del mensaje de prueba se puede configurar y ajustar dinamicamente, por ejemplo, puede ser 5.
Etapa 160, el SCTP de extremo local cierra la asociacion, reportando la rotura de asociacion al usuario de capa superior y envia un mensaje de ABORTAR al extremo opuesto SCTP, mientras cambia el estado del SCTP de extremo local al estado CERRADO; finalizando esta secuencia;
Etapa 170, el SCTP de extremo local comprueba si existen datos marcados como enviados; si no, se ejecuta la etapa 171; si la respuesta es si, se ejecuta la etapa 131;
Etapa 171, el SCTP de extremo local envia un mensaje de PARADA al SCTP de extremo opuesto, mientras cambia el estado del SCTP de extremo local a PARADA-ENVIADO, finalizando esta secuencia.
El presente procedimiento puede asegurar en lo posible que los datos pueden ser transmitidos al SCTP de extremo opuesto de manera segura, cuando la asociacion se cierra mediante PARADA y, si se desea utilizar la asociacion del SCTP de nuevo rapidamente, el presente procedimiento puede evolucionar de esta manera: no lleva a cero el numero de retransmisiones de datos y el numero de transmisiones del mensaje de prueba, o el numero de retransmisiones de datos y el numero de transmisiones del mensaje de prueba son acumulados; o no retransmite el numero de retransmisiones de datos y el numero de transmisiones del mensaje de prueba, el SCTP de extremo local cierra la asociacion del SCTP siempre que el extremo local no recibe ninguna respuesta del SCTP de extremo opuesto cuando el temporizador de espera de respuesta Ta y/o el temporizador de espera de transmision Tw del mensaje de prueba expira, en el que esto se puede ajustar segun el entorno practico.
La presente invencion se describe ademas con referencia a los ejemplos especificos.
En el procedimiento para el cambio de estado del protocolo de transmision de flujo, la secuencia del procedimiento para el procesamiento de datos es como sigue:
Etapa 1: el SCTP de extremo local cierra la asociacion tras la recepcion de PARADA enviado desde un usuario de capa superior servido por el SCTP;
Etapa 2: el SCTP de extremo local en primer lugar cambia el estado de PARADA-EN CURSO;
Etapa 3: el SCTP de extremo local decide si existen datos para enviar en su memoria temporal de envio;
Etapa 4: si no existen datos en la etapa 3, y no existen datos marcados como enviados, el SCTP de extremo local envia una senal primitiva de PARADA al SCTP de extremo opuesto, mientras cambia su estado a PARADA- ENVIADO; si existen datos marcados como enviados, entonces espera a que el Ta expire, decide si el numero de retransmisiones de datos DataRetranNum es mayor o igual que el numero maximo de retransmisiones de datos Max-Data.Retran despues que el Ta expira; el SCTP de extremo local envia ABORTAR al SCTP de extremo opuesto
5
10
15
20
25
30
35
40
45
50
55
si es mayor o igual que Max.Data.Retran, envia ACUSE DE RECIBO DE PARADA al usuario de capa superior y cierra la asociacion, si es menor que Max.Data.Retran; a continuacion se ejecuta la etapa 3;
Etapa 5: si existen datos en la memoria temporal de envio en la etapa 3, asume que existen datos D1 (TSN=1, longitud=100), D2 (TSN=2, longitud=200), D3 (TSN=3, longitud=300), para enviar, y despues decide si la ventana de recepcion del SCTP de extremo opuesto es mayor que la longitud 100 de los datos para enviar esta vez;
Etapa 6: si la ventana de recepcion del SCTP de extremo opuesto es mayor o igual que la longitud de los datos para enviar esta vez en la etapa 5, entonces se asume que los datos para enviar esta vez son D1, envia los datos D1 y marca D1 como enviados, iniciar el temporizador Ta (que se asume tal como un 1 s), mientras se continua con la etapa 3;
Etapa 7: si la ventana de recepcion del SCTP de extremo opuesto es menor que la longitud de los datos para enviar esta vez en la etapa 5, asumir que D1 es los datos de prueba para ser enviados esta vez, enviar los datos D1, iniciar el temporizador Tw (que se asume tal como 200 ms), y ajustar el numero de transmitir el mensaje de prueba tal como ProbeNum incrementado en 1;
Etapa 8: si el temporizador Ta ajustado en la etapa 6 expira, decide si se recibe una respuesta del SCTP de extremo opuesto en el plazo de 1 s;
Etapa 9: segun el resultado de la etapa 8, si no se recibe ninguna respuesta del SCTP de extremo opuesto, decide si DataRetranNum es mayor o igual que Max.Data.Retran;
Etapa 10: segun el resultado de la etapa 9, si DataRetranNum es mayor o igual que Max.Data.Retran, el SCTP de extremo local envia ABORTAR al SCTP de extremo opuesto, envia aCuSE DE RECIBO DE PARADA (ACUSE DE RECIBO DE PARADA es una senal primitiva para responder al usuario de capa superior despues que el SCTP de extremo local facilmente cierra la asociacion, y el SCTP de extremo local utiliza esta senal primitiva para responder a la PARADA iniciada por el usuario de capa superior servido por el SCTP) al usuario de capa superior, y cierra la asociacion; si DataRetranNum es menor que Max.Data:Retran, a continuacion suma 1 a DataRetranNum, y continua con la etapa 3;
Etapa 11: segun el resultado de la etapa 8, si se recibe un SACK del SCTP de extremo opuesto, asume que TSN Ack=1, a_rwnd=300, y ajusta DataRetranNum=0, borra D1 de la memoria temporal de envio y continua con la etapa 3;
Etapa 12: segun las condiciones de funcionamiento de Tw en la etapa 7, si se recibe un SACK de respuesta del SCTP de extremo opuesto cuando el Tw expira, asume TSN ack=1, a_rwnd=300, ajusta ProbeNum=0, borra D1 de la memoria temporal de envio y continua con la etapa 3; si se recibe un SACK de respuesta del SCTP de extremo opuesto, asume TSN Ack=0, a_rwnd=50 o, si no se recibe ninguna respuesta del SCTP de extremo opuesto despues que el Tw expira, decide si ProbeNum es mayor o igual que Max.Probe.Retran;
Etapa 13: si ProbeNum es mayor o igual que Max.Probe.Retran en la etapa 12, el SCTP de extremo opuesto envia AbOrTAR al SCTP de extremo opuesto, envia ACUSE DE RECIBO DE PaRaDA al usuario de capa superior y cierra la asociacion; si ProbeNum es menor que Max.Probe.Retran, entonces continua con la etapa 7.
Las anteriores son solo realizaciones preferentes especificas de la presente invencion, pero el alcance de la proteccion de la presente invencion no esta limitado a las mismas, y todas las variaciones o sustituciones realizadas facilmente dentro del alcance tecnico dadas a conocer por la presente invencion, por una persona de habilidades normales en el sector, se encontrarian dentro del alcance de la proteccion de la presente invencion. Por lo tanto, el alcance de la presente invencion se debe definir mediante las reivindicaciones adjuntas.
Aplicacion industrial
Con la presente invencion, cuando el SCTP de extremo local recibe una solicitud de PARADA del usuario de capa superior para cerrar una asociacion, si existen datos para enviar al SCTP de extremo opuesto y los datos no pueden ser enviados con exito durante un tiempo prolongado, debido a que la memoria temporal de recepcion del SCTP de extremo opuesto es pequena o por otras razones, la asociacion se puede utilizar de nuevo rapidamente.

Claims (8)

  1. 5
    10
    15
    20
    25
    30
    35
    40
    45
    50
    55
    60
    65
    REIVINDICACIONES
    1. Procedimiento para el cambio de estado del protocolo de transmision de control de flujo, consistiendo dicho procedimiento en las siguientes etapas de:
    si un protocolo de transmision de control de flujo (SCTP) de extremo local determina que actualmente no existen datos sin enviar en una memoria temporal de envio, y que una ventana de recepcion de un SCTP de extremo opuesto es mayor o igual que la longitud de los primeros datos no enviados actualmente despues que una asociacion del SCTP de extremo local entra en un estado de PARADA-EN CURSO, entonces el SCTP de extremo local envia los primeros datos no enviados al SCTP de extremo opuesto, y cierra la asociacion del SCTP si no se recibe ninguna respuesta del SCTP de extremo opuesto;
    el procedimiento consiste ademas en las siguientes etapas cuando el SCTP de extremo local determina que existen datos sin enviar en una memoria temporal de envio, y que la ventana de recepcion del SCTP de extremo opuesto es menor que la longitud de los primeros datos no enviados actualmente;
    el SCTP de extremo local envia un mensaje de prueba al SCTP de extremo opuesto, siendo el mensaje de prueba los primeros datos marcados como no enviados en la memoria temporal de envio; inicia un temporizador de espera de transmision Tw del mensaje de prueba, si el SCTP de extremo local recibe un mensaje de respuesta del SCTP de extremo opuesto antes que el temporizador de espera de transmision Tw del mensaje de prueba expira, el SCTP de extremo local determina un Numero de secuencia de transmision (TSN) y una ventana de recepcion en el Acuse de recibo selectivo (SACK) en el mensaje de prueba; y determina que el tSN recibido del SCTP de extremo opuesto es mayor o igual que el tSn de los primeros datos marcados como no enviados en la memoria temporal de envio y la ventana de recepcion en el mensaje de respuesta es mayor o igual que la longitud de los primeros datos marcados como no enviados en la memoria temporal de envio, a continuacion borra los datos cuyo TSN es igual al TSN del SACK y todos los datos antes de dichos datos de la memoria temporal de envio, y ajusta todos los datos de la memoria temporal de envio como no enviados; en el que
    dicha ventana de recepcion se refiere a un tamano del espacio restante en una memoria temporal de recepcion del SCTP de extremo opuesto, que esta contenida en los datos de respuesta del SCTP de extremo opuesto; dicho mensaje de prueba se refiere a un mensaje transmitido del SCTP de extremo local al SCTP de extremo opuesto para detectar datos recibidos por el SCTP de extremo opuesto y la longitud de la ventana de recepcion.
  2. 2. Procedimiento, segun la reivindicacion 1, en el que,
    dicha no recepcion de respuesta del SCTP de extremo opuesto significa que no se recibe ninguna respuesta del SCTP de extremo opuesto en un limite de tiempo mediante un sistema.
  3. 3. Procedimiento, segun la reivindicacion 1, en el que,
    dicha no recepcion de respuesta del SCTP de extremo opuesto significa especificamente que, el SCTP de extremo local define un numero maximo de retransmisiones de datos, y retransmite los primeros datos no enviados al SCTP de extremo opuesto si no se recibe ninguna respuesta del SCTP de extremo opuesto en un limite de tiempo definido por el sistema, despues que se han transmitido los primeros datos no enviados al SCTP de extremo opuesto; y
    el SCTP de extremo local determina que no se ha recibido ninguna respuesta del SCTP de extremo opuesto cuando el numero de retransmisiones de datos es igual al numero maximo de retransmisiones de datos, y no se ha recibido ninguna respuesta del SCTP de extremo opuesto en el limite de tiempo definido por el sistema.
  4. 4. Procedimiento, segun la reivindicacion 1 o 2, que consiste ademas en que:
    durante el cierre de la asociacion, el SCTP de extremo local informa asimismo de la rotura de asociacion a un usuario de capa superior y envia un mensaje de ABORTAR al extremo opuesto y, mientras hace pasar el estado del SCTP de extremo local a un estado cerrado.
  5. 5. Procedimiento, segun la reivindicacion 1, que consiste ademas en:
    si el SCTP de extremo local no recibe el mensaje de respuesta del SCTP de extremo opuesto despues que el temporizador de espera de transmision Tw del mensaje de prueba expira, el SCTP de extremo local cierra la asociacion, informa de la rotura de la asociacion al usuario de capa superior, y envia un mensaje de ABORTAR al SCTP de extremo opuesto, mientras transmite el estado del SCTP de extremo local a un estado cerrado.
  6. 6. Procedimiento, segun la reivindicacion 1, que consiste ademas en:
    si el SCTP de extremo local no recibe el mensaje de respuesta del SCTP de extremo opuesto despues que el temporizador de espera de transmision Tw del mensaje de prueba expira, el SCTP de extremo local decide si el numero de transmisiones del mensaje de prueba es menor que un numero maximo de transmisiones del mensaje de prueba, en caso afirmativo, el SCTP de extremo local retransmite el mensaje de prueba y suma 1 a las transmisiones del mensaje de prueba; si no, el SCTP de extremo local cierra la asociacion, informa de la rotura de la
    asociacion al usuario de capa superior, y envia un mensaje de ABORTAR al SCTP de extremo opuesto, mientras hace pasar el estado del SCTP de extremo local a un estado cerrado.
  7. 7. Procedimiento, segun la reivindicacion 1 o 2, que comprende ademas:
    5
    si el SCTP de extremo local determina que no existen datos no enviados en la memoria temporal de envio, entonces el SCTP de extremo local comprueba si existen datos marcados como enviados; si no, el SCTP de extremo local envia un mensaje de PARADA al SCTP de extremo opuesto, mientras, hace pasar el estado del SCTP de extremo local a PARADA-ENVIADO; si existen datos marcados como enviados, entonces el SCTP de extremo local decide si 10 se recibe una respuesta del SCTP de extremo opuesto en el limite de tiempo definido por el sistema.
  8. 8. Procedimiento, segun la reivindicacion 1,2, o 3, que consiste ademas en:
    despues que el SCTP de extremo local envia los primeros datos no enviados al SCTP de extremo opuesto, el SCTP 15 de extremo local marca los datos como enviados, ajustando la ventana de recepcion del SCTP de extremo opuesto como restada de la longitud de los datos transmitidos esta vez y, si se recibe una respuesta del SCTP de extremo opuesto en el limite de tiempo definido por el sistema, el SCTP de extremo local borra los datos para los cuales se ha recibido una respuesta del SCTP de extremo opuesto desde la memoria temporal de envio; despues que todos los datos de la memoria temporal de envio del SCTP de extremo local han sido enviados con 20 exito y que se ha recibido una respuesta del SCTP de extremo opuesto, el SCTP de extremo local envia un mensaje de PARADA al SCTP de extremo opuesto, y hace pasar el estado del SCTP de extremo local al estado de PARADA- ENVIADO.
    25
ES08873907.3T 2008-04-17 2008-12-26 Procedimiento de cambio de estado del protocolo de transmisión de control de flujo Active ES2587012T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN200810090293 2008-04-17
CN200810090293.1A CN101262437B (zh) 2008-04-17 2008-04-17 一种流控制传输协议状态迁移的方法
PCT/CN2008/073773 WO2009127112A1 (zh) 2008-04-17 2008-12-26 一种流控制传输协议状态迁移的方法

Publications (1)

Publication Number Publication Date
ES2587012T3 true ES2587012T3 (es) 2016-10-20

Family

ID=39962647

Family Applications (1)

Application Number Title Priority Date Filing Date
ES08873907.3T Active ES2587012T3 (es) 2008-04-17 2008-12-26 Procedimiento de cambio de estado del protocolo de transmisión de control de flujo

Country Status (5)

Country Link
EP (1) EP2276214B1 (es)
CN (1) CN101262437B (es)
ES (1) ES2587012T3 (es)
RU (1) RU2455782C1 (es)
WO (1) WO2009127112A1 (es)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101262437B (zh) * 2008-04-17 2011-07-13 中兴通讯股份有限公司 一种流控制传输协议状态迁移的方法
CN101997763B (zh) * 2009-08-21 2014-04-09 中兴通讯股份有限公司 业务数据传输方法及装置
CN102006301B (zh) * 2010-12-01 2013-10-30 南京邮电大学 一种多终端之间流控传输协议偶联的移动控制方法
CN102546626B (zh) * 2011-12-31 2014-11-05 华为技术有限公司 一种数据处理方法、装置及系统
US11271985B2 (en) 2016-06-02 2022-03-08 Telefonaktiebolaget Lm Ericsson (Publ) Method and network node for handling SCTP packets
CN106406328B (zh) * 2016-11-05 2020-04-03 杭州畅动智能科技有限公司 一种基于机器人开发平台的运动控制方法
CN108092908B (zh) * 2016-11-23 2020-06-26 华为技术有限公司 控制流量的方法和发送端设备
CN109429220B (zh) * 2017-06-20 2022-03-22 中兴通讯股份有限公司 一种多制式共偶联的方法及装置
CN109039535B (zh) * 2018-06-26 2021-06-18 浙江工业大学 一种面向能量捕获电磁纳米网络的差错控制方法
CN109981397B (zh) * 2019-02-13 2020-12-01 烽火通信科技股份有限公司 网络性能获取方法及系统
CN112398921A (zh) * 2020-11-02 2021-02-23 北京左江科技股份有限公司 一种带内流控的设计方法
CN113259490B (zh) * 2021-06-29 2021-09-24 北京华云安信息技术有限公司 基于udp传输协议的多级节点网络数据传输方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7283469B2 (en) * 2002-04-30 2007-10-16 Nokia Corporation Method and system for throughput and efficiency enhancement of a packet based protocol in a wireless network
CN1248465C (zh) * 2002-11-01 2006-03-29 华为技术有限公司 网络通信中数据发送/接收缓冲区的管理方法
CN100388721C (zh) * 2003-03-18 2008-05-14 中兴通讯股份有限公司 对基于流控制传送协议的偶联进行保护的方法
CN100388731C (zh) * 2003-06-24 2008-05-14 华为技术有限公司 V5二层用户适配协议的实现方法
KR100735225B1 (ko) * 2003-07-12 2007-07-03 삼성전자주식회사 이동통신 시스템에서 보코더 자원 관리 방법
CN100571192C (zh) * 2004-09-04 2009-12-16 华为技术有限公司 一种sctp端点控制接收数据块的方法
WO2006069605A1 (en) * 2004-12-30 2006-07-06 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for controlling an sctp protocol instance
US7929422B2 (en) * 2005-01-06 2011-04-19 Cisco Technology, Inc. Method of moving a transport connection among network hosts
JP4759389B2 (ja) * 2006-01-10 2011-08-31 アラクサラネットワークス株式会社 パケット通信装置
CN101262437B (zh) * 2008-04-17 2011-07-13 中兴通讯股份有限公司 一种流控制传输协议状态迁移的方法

Also Published As

Publication number Publication date
EP2276214B1 (en) 2016-06-22
EP2276214A4 (en) 2014-01-15
RU2455782C1 (ru) 2012-07-10
CN101262437A (zh) 2008-09-10
WO2009127112A1 (zh) 2009-10-22
CN101262437B (zh) 2011-07-13
EP2276214A1 (en) 2011-01-19
RU2010146681A (ru) 2012-05-27

Similar Documents

Publication Publication Date Title
ES2587012T3 (es) Procedimiento de cambio de estado del protocolo de transmisión de control de flujo
ES2221473T3 (es) Metodo y dispositivo de comunicacion.
KR100787294B1 (ko) 이동 통신 기지국의 티씨피 성능 향상 장치
US7839858B2 (en) Data unit sender and data unit relay device
US6629285B1 (en) Data transmission
US7864799B2 (en) Communication device
TWI260884B (en) Method for handling a triggered reset when an RLC is stopped in a wireless communications system
CN108270682A (zh) 一种报文传输方法、终端、网络设备及通信系统
CY1113350T1 (el) Συστημα ραδιοεπικοινωνιας
DE60220978D1 (de) Drahtloses Kommunikationssystem
US8068439B2 (en) Method of concurrent multipath transfer based on relational paths
RU2007101718A (ru) Протоколы линий радиосвязи для системы беспроводной связи
EP1180869A3 (en) A TCP aware local retransmission scheme for unreliable transmission network
CN107204834A (zh) 一种基于udt协议的高速网络可靠传输的控制方法
US20070280107A1 (en) Data Unit Sender Control Method
WO2014194806A1 (zh) 在多路传输控制协议中的链路处理方法和移动终端
CN104618007B (zh) 一种同步卫星tcp协议分段连接优化方法
CN102769520A (zh) 基于sctp协议的无线网络拥塞控制方法
CN101421965A (zh) 使用传输窗口的通信系统中的优化分组数据传输协议
US9510242B2 (en) Reducing superfluous traffic in a network
JP3727198B2 (ja) ゲートウェイ装置
CN100550891C (zh) 提高无线网络传输性能的方法
CN113791901A (zh) 一种高效的负载均衡设备tcp重传实现方法
KR100913897B1 (ko) 재전송 타임아웃 수를 줄이기 위한 전송 제어 프로토콜혼잡제어방법
KR101511225B1 (ko) 패킷 송수신을 제어하는 망연동장치 및 방법