4D Internet Commands v16

Comandos UDP, Presentación

Inicio

 
4D Internet Commands v16
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 Internet Commands
Tema: IC UDP

 
HISTORIA 

 
ARTICLE USAGE

4D Internet Commands ( 4D Internet Commands v16)