|
OpenPgmCritique
IntroductionThis section covers the points which might be considered negatives about this PGM implementation. Is could also conversely be considered a collection of goals for future development. Complicated ParametersOpenPGM does not provide PGM default parameters, this is necessary to introduce that the parameters need tuning to the destination environment. With very high speed messaging, which means from 100,000 to millions of packets-per-second (pps), it is not practical to have a reliability buffer many seconds in length. Conversely low data rate messaging, such as system monitoring, it is superfluous trying to ensure microsecond latencies. "Advance with Time" onlyThe transmit window advances with time but with a fixed window size, i.e. TXW_BYTES bytes of data. "Advance with Data" as per the specification means new transmissions are halted until no NAKs have been seen for TXW_ADV_IVL seconds. No Adaptive NAK ImplosionLarge communication environments can see a significant generation of NAKs. When across multiple networks it can be difficult to fix and determine optimum PGM parameters. Appendix E of the PGM specification introduces a mechanism of adapting the NAK back-off interval to the current network conditions. No Congestion ControlAn extra draft proposal was created for congestion control: draft-ietf-rmt-bb-pgmcc-03. This was not incorporated into the main RFC for PGM, for which OpenPGM just covers the basic functionality. OpenPGM does include rate regulation using a leaky bucket scheme. No RDMA SupportNew technologies like 10 GigE and InfiniBand provide user-space transports through the RDMA protocol. This alleviates the biggest performance problem of system call overhead. Alternatives to RDMA are more invasive to the operating environment such as multi-packet variants of sendmsg() and recvmsg(), and simply moving the core PGM logic inside kernel space as part of the core networking set. Both still need context switches and do not scale well on the faster networking fabrics. User-space Protocol DisadvantagesNot integrated with an operating system kernel gives OpenPGM some advantages and disadvantages.
General PGM DisadvantagesOpenPGM inherits all the issues fundamental to PGM as a network protocol compared with regular unreliable UDP, or connection orientated TCP.
General IP Multicast DisadvantagesOpenPGM inherits all the issues common with IP multicast.
|