Este es el sitio web histórico de la documentación de 4D. La documentación se está trasladando progresivamente a developer.4d.com

Inicio

 
4D v20 R7
Comandos UDP, Presentación

Comandos UDP, Presentación  


 

 

UDP (User Datagram Protocol) es un protocolo de comunicaciones que permite la transmisión de datos por paquetes. Es más fácil de implementar y más rápido que el protocolo TCP (el encabezado UDP tiene 8 bytes, en comparación con mínimo 20 bytes del encabezado TCP), pero no el mismo nivel de confiabilidad. Es útil para aplicaciones donde la velocidad de transmisión de datos es importante. Sin embargo, no verifica que los paquetes lleguen a su destino y no ofrece el sistema de control de errores ni del sistema de recuperación.

Ejemplo  

El siguiente ejemplo utiliza el protocolo UDP para recuperar en los arrays la lista de servidores 4D activos en la red local:

 ARRAY TEXT(255;asHost;0)
 ARRAY TEXT(32;asMachineName;0)
 ARRAY TEXT(32;asService;0)
 ARRAY TEXT(32;asDBName;0)
 C_BLOB($Blob)
 
 $Addr:="255.255.255.255"
 $Port:=19813
 $Offset:=32
 SET BLOB SIZE($Blob;96;0)
 TEXT TO BLOB("4D Server II";$Blob;Mac text without length;$Offset)
 
 $Err:=UDP_New(0;$udpID)
 $Err:=UDP_SendBLOBTo($udpID;$Addr;$Port;$Blob)
 $Secs:=5
 $Timeout:=Milliseconds+($Secs*1000)
 Repeat
    DELAY PROCESS(Current process;6) `... en tics
    SET BLOB SIZE($Blob;0;0)
    $PeerAddr:=$Addr
    $Err:=UDP_ReceiveBLOBFrom($udpID;$PeerAddr;$Port;$Blob)
 
    If(BLOB size($Blob)>0)
       $Offset:=0
       $Host:=BLOB to text($Blob;Mac C string;$Offset;32)
       $Offset:=32
       $Service:=BLOB to text($Blob;Mac C string;$Offset;32)
       $Offset:=64
       $DBName:=BLOB to text($Blob, C string;$Offset;32)
       $Pos:=Find in array(asMachineName;$Host)
       If($Pos=-1)
          APPEND TO ARRAY(asHost;$PeerAddr)
          APPEND TO ARRAY(asMachineName;$Host)
          APPEND TO ARRAY(asService;$Service)
          APPEND TO ARRAY(asDBName;$DBName)
       End if
    End if
 Until((Milliseconds>$Timeout)|($Err#0))
 $Err:=UDP_Delete($udpID)



Ver también 

Rutinas de bajo nivel, Presentación

 
PROPIEDADES 

Producto: 4D
Tema: IC UDP

 
CONTENIDO DE LA PÁGINA 
 
HISTORIA 

 
ARTICLE USAGE

4D Internet Commands ( 4D v20 R7)