Entry type: FAQ, Entry ID: 24271223, Entry date: 12/15/2006
(0)
Rate

What are the different data block lengths for the various protocols of Send/Receive communication?

  • Entry
  • Associated product(s)

Configuration Notes:
This entry is designed to explain a comment in the CP443-1EX40 device manual. Section 5.3 "Characteristic data for SEND/RECEIVE interface" provides information about data block lengths for the various protocols of Send/Receive communication.
 

LAN interface - data block length generated by the CP per protocol unit
For sending ISO Transport, ISO-on-TCP,
TCP: 400 bytes / TPDU
For receiving ISO Transport: 512 bytes /
ISO-on-TCP: 1024 bytes /
TCP: 1460 bytes / TPDU

The CP443-1EX40 device manual is available in Entry ID: 19308871

The values specified there are the number of user data bytes that are sent or received simultaneously by the module. It might well happen that the user sends/receives jobs to/from the communication blocks with longer user data lengths. These are divided into segments of appropriate length by the transport layer of the CP. These values are valid for the LAN interface of the module (local area network).

Values for sending user data blocks
The block size is limited to 400 bytes. But this doesn't depend on the protocol used. The buffer sizes are organized in the firmware so that always data blocks of a maximum length of 400 bytes are sent.
This means that a user data package of 401 bytes is sent in 2 separate messages. The first message has a length of 400 bytes and the second a length of one byte. The behavior described here applies for all 3 protocols of the Send/Receive interface used:

  • ISO transport protocol
  • ISO-on-TCP protocol
  • TCP protocol

Values for receiving user data blocks
The maximum data block length here cannot be considered as a generic absolute value. A distinction between cases of the 3 protocols is necessary here.
An explanation of the different cases is given below and illustrated by LAN recordings in the sniffer format.

  • ISO transport protocol
    The maximum number of bytes to be received is determined by the "Maximum TPDU Size" parameter. This is negotiated in a handshake procedure when the connection is set up. The active partner proposes a value and the passive partner accepts it or reduces it to a lower value.
    In the example below a "Maximum TPDU Size" of 512 bytes has been negotiated.


    ( 38 KB )
    Fig. 01: Maximum TPDU Size for ISO Transport

    LAN recording in the sniffer format:

    ISO_Connection.zip ( 388 bytes )  

     
  • ISO-on-TCP protocol
    Here, there is not just one parameter that could represent a limit, but there are two relevant parameters:

    -
    MaximumSegmentSize = 1460
    -
    Maximum TPDU Size = 1024

    The "MaximumSegmentSize" is negotiated as 1460 bytes when the connection is set up. You can see this clearly in the following figure.


    ( 37 KB )
    Fig. 02: MaximumSegmentSize ISO-on-TCP

    Since with the ISO-on-TCP protocol it is a matter of porting the mechanisms of the ISO transport protocol to TCP, there is also a "Maximum TPDU Size" parameter for the ISO-on-TCP protocol. This is set to 1024 bytes in the example below.


    ( 38 KB )
    Fig. 03: Maximum TPDU Size ISO-on-TCP

    Note:
    The smaller of the two values must be considered as the relevant limit. Consequently the maximum size of a data package that can be received with the ISO-on-TCP protocol is 1024 bytes. Here too please note that the user can also receive larger data blocks. The CPs do the segmenting automatically themselves.

    LAN recording in the sniffer format:

    ISO-on-TCP_Connection.zip ( 584 bytes )

     
  • TCP Protocol
    The TCP protocol doesn't have the "Maximum TPDU Size" parameter. The maximum number of bytes to be received is determined by the "MaximumSegmentSize" parameter. It is set to 1460 bytes.


    ( 38 KB )
    Fig. 04: MaximumSegmentSize TCP Protocol

    TCP_Connection.zip ( 443 bytes )

Error details
Detailed error description
Help us to improve Online Support.
The page requested cannot be displayed. Please contact the webmaster.
Contact to webmaster